Reorganize View
menu, add checkmarks, introduce Go
menu
Fixes #2037 Fixes #1997
This commit is contained in:
parent
39b56a66dc
commit
eb085f2bbe
7 changed files with 267 additions and 50 deletions
|
@ -39,6 +39,11 @@
|
|||
oncommand="document.getElementById('zotero-tb-search').select()"/>
|
||||
</commandset>
|
||||
|
||||
<keyset id="mainKeyset">
|
||||
<key id="key_back"/>
|
||||
<key id="key_forward"/>
|
||||
</keyset>
|
||||
|
||||
<!-- TODO: Localize -->
|
||||
<tooltip id="iframeTooltip" onpopupshowing="if (tooltipTitleNode = document.tooltipNode.closest('*[title]')) {this.setAttribute('label', tooltipTitleNode.getAttribute('title')); return true; } return false"/>
|
||||
<menubar>
|
||||
|
@ -65,7 +70,7 @@
|
|||
<menuitem id="menu_delete"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menu label="View">
|
||||
<menu label="View" onpopupshowing="onViewMenuOpen()">
|
||||
<menupopup>
|
||||
<!--
|
||||
To make presentation mode work it's necessary to set
|
||||
|
@ -75,29 +80,88 @@
|
|||
-->
|
||||
<!-- <menuitem label="Switch to Presentation Mode" oncommand="menuCmd('presentationmode')"/>-->
|
||||
<!-- <menuseparator/>-->
|
||||
<menuitem label="&zotero.pdfReader.goToFirstPage;" oncommand="menuCmd('firstpage')"/>
|
||||
<menuitem label="&zotero.pdfReader.goToLastPage;" oncommand="menuCmd('lastpage')"/>
|
||||
<menuitem
|
||||
label="&zotero.pdfReader.rotateClockwise;"
|
||||
oncommand="menuCmd('rotatecw')"
|
||||
/>
|
||||
<menuitem
|
||||
label="&zotero.pdfReader.rotateCounterclockwise;"
|
||||
oncommand="menuCmd('rotateccw')"
|
||||
/>
|
||||
<menuseparator/>
|
||||
<menuitem label="&zotero.pdfReader.rotateClockwise;" oncommand="menuCmd('rotatecw')"/>
|
||||
<menuitem label="&zotero.pdfReader.rotateCounterclockwise;" oncommand="menuCmd('rotateccw')"/>
|
||||
<menuitem
|
||||
id="view-menuitem-hand-tool"
|
||||
label="&zotero.pdfReader.handTool;"
|
||||
oncommand="menuCmd('switchcursortool_hand')"
|
||||
/>
|
||||
<menuseparator/>
|
||||
<menuitem label="&zotero.pdfReader.textSelectionTool;" oncommand="menuCmd('switchcursortool_select')"/>
|
||||
<menuitem label="&zotero.pdfReader.handTool;" oncommand="menuCmd('switchcursortool_hand')"/>
|
||||
<menuitem
|
||||
id="view-menuitem-vertical-scrolling"
|
||||
label="&zotero.pdfReader.verticalScrolling;"
|
||||
oncommand="menuCmd('switchscrollmode_vertical')"
|
||||
/>
|
||||
<menuitem
|
||||
id="view-menuitem-horizontal-scrolling"
|
||||
label="&zotero.pdfReader.horizontalScrolling;"
|
||||
oncommand="menuCmd('switchscrollmode_horizontal')"
|
||||
/>
|
||||
<menuitem
|
||||
id="view-menuitem-wrapped-scrolling"
|
||||
label="&zotero.pdfReader.wrappedScrolling;"
|
||||
oncommand="menuCmd('switchscrollmode_wrapped')"
|
||||
/>
|
||||
<menuseparator/>
|
||||
<menuitem label="&zotero.pdfReader.verticalScrolling;" oncommand="menuCmd('switchscrollmode_vertical')"/>
|
||||
<menuitem label="&zotero.pdfReader.horizontalScrolling;" oncommand="menuCmd('switchscrollmode_horizontal')"/>
|
||||
<menuitem label="&zotero.pdfReader.wrappedScrolling;" oncommand="menuCmd('switchscrollmode_wrapped')"/>
|
||||
<menuseparator/>
|
||||
<menuitem label="&zotero.pdfReader.noSpreads;" oncommand="menuCmd('switchspreadmode_none')"/>
|
||||
<menuitem label="&zotero.pdfReader.oddSpreads;" oncommand="menuCmd('switchspreadmode_odd')"/>
|
||||
<menuitem label="&zotero.pdfReader.evenSpreads;" oncommand="menuCmd('switchspreadmode_even')"/>
|
||||
<menuitem
|
||||
id="view-menuitem-no-spreads"
|
||||
label="&zotero.pdfReader.noSpreads;"
|
||||
oncommand="menuCmd('switchspreadmode_none')"
|
||||
/>
|
||||
<menuitem
|
||||
id="view-menuitem-odd-spreads"
|
||||
label="&zotero.pdfReader.oddSpreads;"
|
||||
oncommand="menuCmd('switchspreadmode_odd')"
|
||||
/>
|
||||
<menuitem
|
||||
id="view-menuitem-even-spreads"
|
||||
label="&zotero.pdfReader.evenSpreads;"
|
||||
oncommand="menuCmd('switchspreadmode_even')"
|
||||
/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menu
|
||||
id="go-menu"
|
||||
class="menu-type-reader"
|
||||
label="&goMenu.label;"
|
||||
onpopupshowing="onGoMenuOpen()"
|
||||
>
|
||||
<menupopup id="menu_goPopup">
|
||||
<menuitem
|
||||
id="go-menuitem-first-page"
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.firstPage;"
|
||||
oncommand="menuCmd('firstpage')"
|
||||
/>
|
||||
<menuitem
|
||||
id="go-menuitem-last-page"
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.lastPage;"
|
||||
oncommand="menuCmd('lastpage')"
|
||||
/>
|
||||
<menuseparator class="menu-type-reader"/>
|
||||
<menuitem
|
||||
id="go-menuitem-back"
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.back;"
|
||||
oncommand="menuCmd('back')"
|
||||
/>
|
||||
<menuitem
|
||||
id="go-menuitem-forward"
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.forward;"
|
||||
oncommand="menuCmd('forward')"
|
||||
/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<!-- <menu label="Tools">-->
|
||||
<!-- <menupopup>-->
|
||||
<!-- <menuitem label="Remove password (not implemented)" oncommand="menuCmd('remove_password')"/>-->
|
||||
<!-- </menupopup>-->
|
||||
<!-- </menu>-->
|
||||
<menu id="windowMenu"
|
||||
label="&windowMenu.label;"
|
||||
onpopupshowing="macWindowMenuDidShow();"
|
||||
|
|
|
@ -310,7 +310,54 @@ const ZoteroStandalone = new function() {
|
|||
};
|
||||
|
||||
|
||||
this.onGoMenuOpen = function () {
|
||||
var keyBack = document.getElementById('key_back');
|
||||
var keyForward = document.getElementById('key_forward');
|
||||
|
||||
if (Zotero.isMac) {
|
||||
keyBack.setAttribute('key', '[');
|
||||
keyBack.setAttribute('modifiers', 'meta');
|
||||
keyForward.setAttribute('key', ']');
|
||||
keyForward.setAttribute('modifiers', 'meta');
|
||||
}
|
||||
else {
|
||||
keyBack.setAttribute('keycode', 'VK_LEFT');
|
||||
keyBack.setAttribute('modifiers', 'alt');
|
||||
keyForward.setAttribute('keycode', 'VK_RIGHT');
|
||||
keyForward.setAttribute('modifiers', 'alt');
|
||||
}
|
||||
|
||||
// `key` attribute needs to be dynamically set for `menuitem` when
|
||||
// the key changes after DOM initialization
|
||||
var menuItemBack = document.getElementById('go-menuitem-back');
|
||||
var menuItemForward = document.getElementById('go-menuitem-forward');
|
||||
menuItemBack.setAttribute('key', 'key_back');
|
||||
menuItemForward.setAttribute('key', 'key_forward');
|
||||
|
||||
var reader = Zotero.Reader.getByTabID(Zotero_Tabs.selectedID);
|
||||
if (reader) {
|
||||
this.updateMenuItemEnabled('go-menuitem-first-page', reader.allowNavigateFirstPage());
|
||||
this.updateMenuItemEnabled('go-menuitem-last-page', reader.allowNavigateLastPage());
|
||||
this.updateMenuItemEnabled('go-menuitem-back', reader.allowNavigateBack());
|
||||
this.updateMenuItemEnabled('go-menuitem-forward', reader.allowNavigateForward());
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
this.onViewMenuOpen = function () {
|
||||
// PDF Reader
|
||||
var reader = Zotero.Reader.getByTabID(Zotero_Tabs.selectedID);
|
||||
if (reader) {
|
||||
var { state } = reader;
|
||||
this.updateMenuItemCheckmark('view-menuitem-vertical-scrolling', state.scrollMode == 0);
|
||||
this.updateMenuItemCheckmark('view-menuitem-horizontal-scrolling', state.scrollMode == 1);
|
||||
this.updateMenuItemCheckmark('view-menuitem-wrapped-scrolling', state.scrollMode == 2);
|
||||
this.updateMenuItemCheckmark('view-menuitem-no-spreads', state.spreadMode == 0);
|
||||
this.updateMenuItemCheckmark('view-menuitem-odd-spreads', state.spreadMode == 1);
|
||||
this.updateMenuItemCheckmark('view-menuitem-even-spreads', state.spreadMode == 2);
|
||||
this.updateMenuItemCheckmark('view-menuitem-hand-tool', reader.isHandToolActive());
|
||||
}
|
||||
|
||||
// Layout mode
|
||||
var mode = Zotero.Prefs.get('layout');
|
||||
this.updateMenuItemCheckmark('view-menuitem-standard', mode != 'stacked');
|
||||
|
|
|
@ -81,6 +81,8 @@
|
|||
<key id="key_copyBibliography"
|
||||
command="cmd_zotero_copyBibliography"
|
||||
modifiers="accel shift"/>
|
||||
<key id="key_back"/>
|
||||
<key id="key_forward"/>
|
||||
</keyset>
|
||||
<keyset id="editMenuKeys"/>
|
||||
|
||||
|
@ -216,28 +218,11 @@
|
|||
hidden="true"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
|
||||
<menu id="view-menu"
|
||||
label="&viewMenu.label;"
|
||||
onpopupshowing="ZoteroStandalone.onViewMenuOpen()">
|
||||
<menupopup id="menu_viewPopup">
|
||||
<!-- <menuitem-->
|
||||
<!-- class="menu-type-reader"-->
|
||||
<!-- label="Switch to Presentation Mode"-->
|
||||
<!-- oncommand="ZoteroStandalone.onReaderCmd('presentationmode')"-->
|
||||
<!-- />-->
|
||||
<menuseparator class="menu-type-reader"/>
|
||||
<menuitem
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.goToFirstPage;"
|
||||
oncommand="ZoteroStandalone.onReaderCmd('firstpage')"
|
||||
/>
|
||||
<menuitem
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.goToLastPage;"
|
||||
oncommand="ZoteroStandalone.onReaderCmd('lastpage')"
|
||||
/>
|
||||
<menuseparator class="menu-type-reader"/>
|
||||
<menuitem
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.rotateClockwise;"
|
||||
|
@ -250,43 +235,45 @@
|
|||
/>
|
||||
<menuseparator class="menu-type-reader"/>
|
||||
<menuitem
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.textSelectionTool;"
|
||||
oncommand="ZoteroStandalone.onReaderCmd('switchcursortool_select')"
|
||||
/>
|
||||
<menuitem
|
||||
id="view-menuitem-hand-tool"
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.handTool;"
|
||||
oncommand="ZoteroStandalone.onReaderCmd('switchcursortool_hand')"
|
||||
/>
|
||||
<menuseparator class="menu-type-reader"/>
|
||||
<menuitem
|
||||
id="view-menuitem-vertical-scrolling"
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.verticalScrolling;"
|
||||
oncommand="ZoteroStandalone.onReaderCmd('switchscrollmode_vertical')"
|
||||
/>
|
||||
<menuitem
|
||||
id="view-menuitem-horizontal-scrolling"
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.horizontalScrolling;"
|
||||
oncommand="ZoteroStandalone.onReaderCmd('switchscrollmode_horizontal')"
|
||||
/>
|
||||
<menuitem
|
||||
<menuitem
|
||||
id="view-menuitem-wrapped-scrolling"
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.wrappedScrolling;"
|
||||
oncommand="ZoteroStandalone.onReaderCmd('switchscrollmode_wrapped')"
|
||||
/>
|
||||
<menuseparator class="menu-type-reader"/>
|
||||
<menuitem
|
||||
id="view-menuitem-no-spreads"
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.noSpreads;"
|
||||
oncommand="ZoteroStandalone.onReaderCmd('switchspreadmode_none')"
|
||||
/>
|
||||
<menuitem
|
||||
id="view-menuitem-odd-spreads"
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.oddSpreads;"
|
||||
oncommand="ZoteroStandalone.onReaderCmd('switchspreadmode_odd')"
|
||||
/>
|
||||
<menuitem
|
||||
id="view-menuitem-even-spreads"
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.evenSpreads;"
|
||||
oncommand="ZoteroStandalone.onReaderCmd('switchspreadmode_even')"
|
||||
|
@ -369,6 +356,41 @@
|
|||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<menu
|
||||
id="go-menu"
|
||||
class="menu-type-reader"
|
||||
label="&goMenu.label;"
|
||||
onpopupshowing="ZoteroStandalone.onGoMenuOpen()"
|
||||
>
|
||||
<menupopup id="menu_goPopup">
|
||||
<menuitem
|
||||
id="go-menuitem-first-page"
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.firstPage;"
|
||||
oncommand="ZoteroStandalone.onReaderCmd('firstpage')"
|
||||
/>
|
||||
<menuitem
|
||||
id="go-menuitem-last-page"
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.lastPage;"
|
||||
oncommand="ZoteroStandalone.onReaderCmd('lastpage')"
|
||||
/>
|
||||
<menuseparator class="menu-type-reader"/>
|
||||
<menuitem
|
||||
id="go-menuitem-back"
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.back;"
|
||||
oncommand="ZoteroStandalone.onReaderCmd('back')"
|
||||
/>
|
||||
<menuitem
|
||||
id="go-menuitem-forward"
|
||||
class="menu-type-reader"
|
||||
label="&zotero.pdfReader.forward;"
|
||||
oncommand="ZoteroStandalone.onReaderCmd('forward')"
|
||||
/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
|
||||
<menu id="toolsMenu" label="&toolsMenu.label;" accesskey="&toolsMenu.accesskey;">
|
||||
<menupopup id="menu_ToolsPopup">
|
||||
<menuitem id="menu_createTimeline" class="menu-type-library" label="&zotero.toolbar.timeline.label;"
|
||||
|
|
|
@ -28,6 +28,7 @@ class ReaderInstance {
|
|||
this.pdfStateFileName = '.zotero-pdf-state';
|
||||
this.annotationItemIDs = [];
|
||||
this.onChangeSidebarWidth = null;
|
||||
this.state = null;
|
||||
this._instanceID = Zotero.Utilities.randomString();
|
||||
this._window = null;
|
||||
this._iframeWindow = null;
|
||||
|
@ -53,6 +54,7 @@ class ReaderInstance {
|
|||
if (!item) {
|
||||
return false;
|
||||
}
|
||||
this.state = state;
|
||||
this._itemID = item.id;
|
||||
this.updateTitle();
|
||||
let path = await item.getFilePathAsync();
|
||||
|
@ -140,6 +142,43 @@ class ReaderInstance {
|
|||
this._postMessage({ action: 'setToolbarPlaceholderWidth', width });
|
||||
}
|
||||
|
||||
isHandToolActive() {
|
||||
return this._iframeWindow.eval('PDFViewerApplication.pdfCursorTools.handTool.active');
|
||||
}
|
||||
|
||||
allowNavigateFirstPage() {
|
||||
return this._iframeWindow.eval('PDFViewerApplication.pdfViewer.currentPageNumber > 1');
|
||||
}
|
||||
|
||||
allowNavigateLastPage() {
|
||||
return this._iframeWindow.eval('PDFViewerApplication.pdfViewer.currentPageNumber < PDFViewerApplication.pdfViewer.pagesCount');
|
||||
}
|
||||
|
||||
allowNavigateBack() {
|
||||
try {
|
||||
let { uid } = this._iframeWindow.history.state;
|
||||
if (uid == 0) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
catch (e) {
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
allowNavigateForward() {
|
||||
try {
|
||||
let { uid } = this._iframeWindow.history.state;
|
||||
let length = this._iframeWindow.history.length;
|
||||
if (uid == length - 1) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
catch (e) {
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
menuCmd(cmd) {
|
||||
if (cmd === 'export') {
|
||||
let zp = Zotero.getActiveZoteroPane();
|
||||
|
@ -169,6 +208,7 @@ class ReaderInstance {
|
|||
}
|
||||
|
||||
async _setState(state) {
|
||||
this.state = state;
|
||||
let item = Zotero.Items.get(this._itemID);
|
||||
if (item) {
|
||||
item.setAttachmentLastPageIndex(state.pageIndex);
|
||||
|
@ -322,7 +362,7 @@ class ReaderInstance {
|
|||
// Add to note
|
||||
menuitem = this._window.document.createElement('menuitem');
|
||||
menuitem.setAttribute('label', Zotero.getString('pdfReader.addToNote'));
|
||||
let hasActiveEditor = this._window.ZoteroContextPane.getActiveEditor();
|
||||
let hasActiveEditor = this._window.ZoteroContextPane && this._window.ZoteroContextPane.getActiveEditor();
|
||||
menuitem.setAttribute('disabled', !hasActiveEditor);
|
||||
menuitem.addEventListener('command', () => {
|
||||
let data = {
|
||||
|
@ -643,7 +683,7 @@ class ReaderTab extends ReaderInstance {
|
|||
}
|
||||
|
||||
_addToNote(annotations) {
|
||||
let noteEditor = this._window.ZoteroContextPane.getActiveEditor();
|
||||
let noteEditor = this._window.ZoteroContextPane && this._window.ZoteroContextPane.getActiveEditor();
|
||||
if (!noteEditor) {
|
||||
return;
|
||||
}
|
||||
|
@ -661,7 +701,7 @@ class ReaderWindow extends ReaderInstance {
|
|||
super();
|
||||
this._sidebarWidth = sidebarWidth;
|
||||
this._sidebarOpen = sidebarOpen;
|
||||
this._bottomPlaceholderHeight = bottomPlaceholderHeight;
|
||||
this._bottomPlaceholderHeight = 0;
|
||||
this.init();
|
||||
}
|
||||
|
||||
|
@ -678,6 +718,8 @@ class ReaderWindow extends ReaderInstance {
|
|||
this._window.addEventListener('keypress', this._handleKeyPress);
|
||||
this._popupset = this._window.document.getElementById('zotero-reader-popupset');
|
||||
this._window.menuCmd = this.menuCmd.bind(this);
|
||||
this._window.onGoMenuOpen = this._onGoMenuOpen.bind(this);
|
||||
this._window.onViewMenuOpen = this._onViewMenuOpen.bind(this);
|
||||
this._iframe = this._window.document.getElementById('reader');
|
||||
}
|
||||
|
||||
|
@ -702,6 +744,44 @@ class ReaderWindow extends ReaderInstance {
|
|||
this._window.close();
|
||||
}
|
||||
}
|
||||
|
||||
_onViewMenuOpen() {
|
||||
this._window.document.getElementById('view-menuitem-vertical-scrolling').setAttribute('checked', this.state.scrollMode == 0);
|
||||
this._window.document.getElementById('view-menuitem-horizontal-scrolling').setAttribute('checked', this.state.scrollMode == 1);
|
||||
this._window.document.getElementById('view-menuitem-wrapped-scrolling').setAttribute('checked', this.state.scrollMode == 2);
|
||||
this._window.document.getElementById('view-menuitem-no-spreads').setAttribute('checked', this.state.spreadMode == 0);
|
||||
this._window.document.getElementById('view-menuitem-odd-spreads').setAttribute('checked', this.state.spreadMode == 1);
|
||||
this._window.document.getElementById('view-menuitem-even-spreads').setAttribute('checked', this.state.spreadMode == 2);
|
||||
this._window.document.getElementById('view-menuitem-hand-tool').setAttribute('checked', this.isHandToolActive());
|
||||
}
|
||||
|
||||
_onGoMenuOpen() {
|
||||
let keyBack = this._window.document.getElementById('key_back');
|
||||
let keyForward = this._window.document.getElementById('key_forward');
|
||||
|
||||
if (Zotero.isMac) {
|
||||
keyBack.setAttribute('key', '[');
|
||||
keyBack.setAttribute('modifiers', 'meta');
|
||||
keyForward.setAttribute('key', ']');
|
||||
keyForward.setAttribute('modifiers', 'meta');
|
||||
}
|
||||
else {
|
||||
keyBack.setAttribute('keycode', 'VK_LEFT');
|
||||
keyBack.setAttribute('modifiers', 'alt');
|
||||
keyForward.setAttribute('keycode', 'VK_RIGHT');
|
||||
keyForward.setAttribute('modifiers', 'alt');
|
||||
}
|
||||
|
||||
let menuItemBack = this._window.document.getElementById('go-menuitem-back');
|
||||
let menuItemForward = this._window.document.getElementById('go-menuitem-forward');
|
||||
menuItemBack.setAttribute('key', 'key_back');
|
||||
menuItemForward.setAttribute('key', 'key_forward');
|
||||
|
||||
this._window.document.getElementById('go-menuitem-first-page').setAttribute('disabled', !this.allowNavigateFirstPage());
|
||||
this._window.document.getElementById('go-menuitem-last-page').setAttribute('disabled', !this.allowNavigateLastPage());
|
||||
this._window.document.getElementById('go-menuitem-back').setAttribute('disabled', !this.allowNavigateBack());
|
||||
this._window.document.getElementById('go-menuitem-forward').setAttribute('disabled', !this.allowNavigateForward());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -44,6 +44,9 @@
|
|||
<!ENTITY bidiSwitchTextDirectionItem.accesskey "w">
|
||||
<!ENTITY bidiSwitchTextDirectionItem.commandkey "X">
|
||||
|
||||
<!--GO MENU-->
|
||||
<!ENTITY goMenu.label "Go">
|
||||
|
||||
<!--VIEW MENU-->
|
||||
<!ENTITY viewMenu.label "View">
|
||||
<!ENTITY layout.label "Layout">
|
||||
|
|
|
@ -336,11 +336,12 @@
|
|||
<!ENTITY zotero.context.addStandaloneNoteFromAnnotations "Add Standalone Note from Annotations">
|
||||
<!ENTITY zotero.context.editInWindow "Edit in a Separate Window">
|
||||
|
||||
<!ENTITY zotero.pdfReader.goToFirstPage "Go to First Page">
|
||||
<!ENTITY zotero.pdfReader.goToLastPage "Go to Last Page">
|
||||
<!ENTITY zotero.pdfReader.firstPage "First Page">
|
||||
<!ENTITY zotero.pdfReader.lastPage "Last Page">
|
||||
<!ENTITY zotero.pdfReader.back "Back">
|
||||
<!ENTITY zotero.pdfReader.forward "Forward">
|
||||
<!ENTITY zotero.pdfReader.rotateClockwise "Rotate Clockwise">
|
||||
<!ENTITY zotero.pdfReader.rotateCounterclockwise "Rotate Counterclockwise">
|
||||
<!ENTITY zotero.pdfReader.textSelectionTool "Text Selection Tool">
|
||||
<!ENTITY zotero.pdfReader.handTool "Hand Tool">
|
||||
<!ENTITY zotero.pdfReader.verticalScrolling "Vertical Scrolling">
|
||||
<!ENTITY zotero.pdfReader.horizontalScrolling "Horizontal Scrolling">
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit 521570fba3302b35ce9984469c579c21c1eace86
|
||||
Subproject commit dc81445206934f78c98a6d27e09fcd631d559988
|
Loading…
Add table
Reference in a new issue