fx115: Fix popupset display (#3998)

fixes #3979
This commit is contained in:
windingwind 2024-04-17 15:34:02 +08:00 committed by GitHub
parent 4fe0ebc63b
commit e2970f242c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -858,43 +858,10 @@
</toolbarbutton>
</hbox>
</hbox>
<hbox flex="1" id="browser">
<vbox id="appcontent" flex="1">
<stack id="zotero-pane-stack" flex="1">
<!-- A placeholder to persist pdf-reader sidebar collapse state to avoid introducing another pref -->
<box id="zotero-reader-sidebar-pane" hidden="true" collapsed="true" zotero-persist="collapsed width"/>
<tooltip id="html-tooltip" page="true"/>
<hbox>
<div id="zotero-tab-cover" class="hidden" xmlns="http://www.w3.org/1999/xhtml">
<label>&zotero.general.loading;</label>
</div>
<deck id="tabs-deck" flex="1">
<vbox id="zotero-pane"
onkeydown="ZoteroPane_Local.handleKeyDown(event, this.id)"
onkeyup="ZoteroPane_Local.handleKeyUp(event, this.id)"
onkeypress="ZoteroPane_Local.handleKeyPress(event)">
<vbox id="sync-reminder-container" collapsed="true" role="status">
<html:div id="sync-reminder-banner">
<html:div id="sync-reminder-message"/>
<html:a id="sync-reminder-action" class="sync-reminder-link"/>
<html:a id="sync-reminder-learn-more" class="sync-reminder-link"/>
<html:div id="sync-reminder-spacer"/>
<html:a id="sync-reminder-disable" class="sync-reminder-link"/>
<html:a id="sync-reminder-remind" class="sync-reminder-link"/>
<label is="text-link" id="sync-reminder-close">×</label>
</html:div>
</vbox>
<vbox id="retracted-items-container" collapsed="true" role="status">
<html:div id="retracted-items-banner">
<html:div id="retracted-items-message"/>
<label is="text-link" id="retracted-items-link"/>
<label is="text-link" id="retracted-items-close">×</label>
</html:div>
</vbox>
<!-- Global popupset for all context menus -->
<popupset>
<!-- Library -->
<menupopup id="zotero-collectionmenu"
oncommand="ZoteroPane.onCollectionContextMenuSelect(event)">
<!-- Keep order in sync with buildCollectionContextMenu, which adds additional attributes -->
@ -987,8 +954,121 @@
<menuitem class="menuitem-iconic zotero-menuitem-reindex" oncommand="ZoteroPane_Local.reindexItem();"/>
</menupopup>
<!-- Context pane -->
<menupopup id="context-pane-add-child-note-button-popup">
<menuitem id="context-pane-add-child-note" label="&zotero.context.addChildNote;"/>
<menuitem id="context-pane-add-child-note-from-annotations" label="&zotero.context.addChildNoteFromAnnotations;"/>
</menupopup>
<menupopup id="context-pane-add-standalone-note-button-popup">
<menuitem id="context-pane-add-standalone-note" label="&zotero.context.addStandaloneNote;"/>
<menuitem id="context-pane-add-standalone-note-from-annotations" label="&zotero.context.addStandaloneNoteFromAnnotations;"/>
</menupopup>
<menupopup id="context-pane-list-popup">
<menuitem id="context-pane-list-show-in-library" label="&zotero.items.menu.showInLibrary;"/>
<menuitem id="context-pane-list-edit-in-window" label="&zotero.context.editInWindow;"/>
<menuseparator/>
<menuitem id="context-pane-list-move-to-trash" label="&zotero.general.moveToTrash;"/>
</menupopup>
<!-- Tag Selector -->
<menupopup id="tag-menu">
<menuitem label="&zotero.tagSelector.assignColor;"
oncommand="ZoteroPane.tagSelector.openColorPickerWindow(); event.stopPropagation();"/>
<menuitem label="&zotero.tagSelector.renameTag;"
oncommand="ZoteroPane.tagSelector.openRenamePrompt(); event.stopPropagation();"/>
<menuitem id="split-tag" label="&zotero.tagSelector.splitTag;"
oncommand="ZoteroPane.tagSelector.openTagSplitterWindow(event)"/>
<menuitem label="&zotero.tagSelector.deleteTag;"
oncommand="ZoteroPane.tagSelector.openDeletePrompt(); event.stopPropagation();"/>
</menupopup>
<menupopup id="tag-selector-view-settings-menu"
onpopupshowing="
document.getElementById('show-automatic').setAttribute('checked', ZoteroPane.tagSelector.showAutomatic);
document.getElementById('display-all-tags').setAttribute('checked', ZoteroPane.tagSelector.displayAllTags);
document.getElementById('num-selected').label = ZoteroPane.tagSelector.label;
(async function () {
var libraryID = ZoteroPane.tagSelector.libraryID;
var library = Zotero.Libraries.get(libraryID);
var enabled = false;
if (library.editable) {
if ((await Zotero.Tags.getAutomaticInLibrary(libraryID)).length) {
enabled = true;
}
}
document.getElementById('delete-automatic-tags').disabled = !enabled;
})();">
<menuitem id="num-selected" disabled="true"/>
<menuitem id="deselect-all" label="&zotero.tagSelector.clearAll;"
oncommand="ZoteroPane.tagSelector.deselectAll();;"/>
<menuseparator/>
<menuitem id="show-automatic" label="&zotero.tagSelector.showAutomatic;" type="checkbox"
oncommand="ZoteroPane.tagSelector.toggleShowAutomatic();"/>
<menuitem
id="display-all-tags"
label="&zotero.tagSelector.displayAllInLibrary;"
type="checkbox"
oncommand="ZoteroPane.tagSelector.toggleDisplayAllTags();"
/>
<menuseparator/>
<menuitem id="delete-automatic-tags" label="&zotero.tagSelector.deleteAutomaticInLibrary;" type="checkbox"
oncommand="ZoteroPane.tagSelector.deleteAutomatic();
this.setAttribute('checked', false);"/>
</menupopup>
<!-- itemPane translateItem -->
<menupopup id="zotero-item-addTo-menu" onpopupshowing="ZoteroPane.itemPane.buildTranslateSelectContextMenu(event);"></menupopup>
<!-- Autocomplete -->
<panel
is="autocomplete-richlistbox-popup"
type="autocomplete-richlistbox"
id="PopupAutoComplete"
role="group"
noautofocus="true"
hidden="true"
overflowpadding="4"
norolluponanchor="true"
nomaxresults="true"
/>
</popupset>
<hbox flex="1" id="browser">
<vbox id="appcontent" flex="1">
<stack id="zotero-pane-stack" flex="1">
<!-- A placeholder to persist pdf-reader sidebar collapse state to avoid introducing another pref -->
<box id="zotero-reader-sidebar-pane" hidden="true" collapsed="true" zotero-persist="collapsed width"/>
<tooltip id="html-tooltip" page="true"/>
<hbox>
<div id="zotero-tab-cover" class="hidden" xmlns="http://www.w3.org/1999/xhtml">
<label>&zotero.general.loading;</label>
</div>
<deck id="tabs-deck" flex="1">
<vbox id="zotero-pane"
onkeydown="ZoteroPane_Local.handleKeyDown(event, this.id)"
onkeyup="ZoteroPane_Local.handleKeyUp(event, this.id)"
onkeypress="ZoteroPane_Local.handleKeyPress(event)">
<vbox id="sync-reminder-container" collapsed="true" role="status">
<html:div id="sync-reminder-banner">
<html:div id="sync-reminder-message"/>
<html:a id="sync-reminder-action" class="sync-reminder-link"/>
<html:a id="sync-reminder-learn-more" class="sync-reminder-link"/>
<html:div id="sync-reminder-spacer"/>
<html:a id="sync-reminder-disable" class="sync-reminder-link"/>
<html:a id="sync-reminder-remind" class="sync-reminder-link"/>
<label is="text-link" id="sync-reminder-close">×</label>
</html:div>
</vbox>
<vbox id="retracted-items-container" collapsed="true" role="status">
<html:div id="retracted-items-banner">
<html:div id="retracted-items-message"/>
<label is="text-link" id="retracted-items-link"/>
<label is="text-link" id="retracted-items-close">×</label>
</html:div>
</vbox>
<hbox id="zotero-trees" flex="1">
<vbox id="zotero-collections-pane" zotero-persist="width">
<toolbar id="zotero-toolbar-collection-tree" tabindex="-1" class="zotero-toolbar toolbar toolbar-primary">
@ -1202,71 +1282,6 @@
</vbox>
<item-pane-sidenav id="zotero-context-pane-sidenav" class="zotero-view-item-sidenav" hidden="true"/>
</box>
<popupset>
<menupopup id="context-pane-add-child-note-button-popup">
<menuitem id="context-pane-add-child-note" label="&zotero.context.addChildNote;"/>
<menuitem id="context-pane-add-child-note-from-annotations" label="&zotero.context.addChildNoteFromAnnotations;"/>
</menupopup>
<menupopup id="context-pane-add-standalone-note-button-popup">
<menuitem id="context-pane-add-standalone-note" label="&zotero.context.addStandaloneNote;"/>
<menuitem id="context-pane-add-standalone-note-from-annotations" label="&zotero.context.addStandaloneNoteFromAnnotations;"/>
</menupopup>
<menupopup id="context-pane-list-popup">
<menuitem id="context-pane-list-show-in-library" label="&zotero.items.menu.showInLibrary;"/>
<menuitem id="context-pane-list-edit-in-window" label="&zotero.context.editInWindow;"/>
<menuseparator/>
<menuitem id="context-pane-list-move-to-trash" label="&zotero.general.moveToTrash;"/>
</menupopup>
<!-- Tag Selector -->
<menupopup id="tag-menu">
<menuitem label="&zotero.tagSelector.assignColor;"
oncommand="ZoteroPane.tagSelector.openColorPickerWindow(); event.stopPropagation();"/>
<menuitem label="&zotero.tagSelector.renameTag;"
oncommand="ZoteroPane.tagSelector.openRenamePrompt(); event.stopPropagation();"/>
<menuitem id="split-tag" label="&zotero.tagSelector.splitTag;"
oncommand="ZoteroPane.tagSelector.openTagSplitterWindow(event)"/>
<menuitem label="&zotero.tagSelector.deleteTag;"
oncommand="ZoteroPane.tagSelector.openDeletePrompt(); event.stopPropagation();"/>
</menupopup>
<menupopup id="tag-selector-view-settings-menu"
onpopupshowing="
document.getElementById('show-automatic').setAttribute('checked', ZoteroPane.tagSelector.showAutomatic);
document.getElementById('display-all-tags').setAttribute('checked', ZoteroPane.tagSelector.displayAllTags);
document.getElementById('num-selected').label = ZoteroPane.tagSelector.label;
(async function () {
var libraryID = ZoteroPane.tagSelector.libraryID;
var library = Zotero.Libraries.get(libraryID);
var enabled = false;
if (library.editable) {
if ((await Zotero.Tags.getAutomaticInLibrary(libraryID)).length) {
enabled = true;
}
}
document.getElementById('delete-automatic-tags').disabled = !enabled;
})();">
<menuitem id="num-selected" disabled="true"/>
<menuitem id="deselect-all" label="&zotero.tagSelector.clearAll;"
oncommand="ZoteroPane.tagSelector.deselectAll();;"/>
<menuseparator/>
<menuitem id="show-automatic" label="&zotero.tagSelector.showAutomatic;" type="checkbox"
oncommand="ZoteroPane.tagSelector.toggleShowAutomatic();"/>
<menuitem
id="display-all-tags"
label="&zotero.tagSelector.displayAllInLibrary;"
type="checkbox"
oncommand="ZoteroPane.tagSelector.toggleDisplayAllTags();"
/>
<menuseparator/>
<menuitem id="delete-automatic-tags" label="&zotero.tagSelector.deleteAutomaticInLibrary;" type="checkbox"
oncommand="ZoteroPane.tagSelector.deleteAutomatic();
this.setAttribute('checked', false);"/>
</menupopup>
<!-- itemPane translateItem -->
<menupopup id="zotero-item-addTo-menu" onpopupshowing="ZoteroPane.itemPane.buildTranslateSelectContextMenu(event);"></menupopup>
</popupset>
</hbox>
<!-- Barrier to prevent tabbing into Zotero pane when busy -->
@ -1293,18 +1308,4 @@
</stack>
</vbox>
</hbox>
<!-- fx115: the popupset has to be here to properly display autocomplete popup -->
<popupset>
<panel
is="autocomplete-richlistbox-popup"
type="autocomplete-richlistbox"
id="PopupAutoComplete"
role="group"
noautofocus="true"
hidden="true"
overflowpadding="4"
norolluponanchor="true"
nomaxresults="true"
/>
</popupset>
</window>