From a99a3eee7a91f237559aaa8f5f5f18db004a5d72 Mon Sep 17 00:00:00 2001 From: j Date: Fri, 27 Oct 2023 15:54:01 +0200 Subject: [PATCH] secondary menu --- static/pdf.js/index.html | 2 +- static/pdf.js/pandora.css | 4 ++- static/pdf.js/pandora.js | 62 ++++++++++++++++++++++++++++----------- 3 files changed, 49 insertions(+), 19 deletions(-) diff --git a/static/pdf.js/index.html b/static/pdf.js/index.html index c9958918..38fe9f3d 100644 --- a/static/pdf.js/index.html +++ b/static/pdf.js/index.html @@ -33,9 +33,9 @@ See https://github.com/adobe-type-tools/cmap-resources - + diff --git a/static/pdf.js/pandora.css b/static/pdf.js/pandora.css index 406ff73b..d146cdc3 100644 --- a/static/pdf.js/pandora.css +++ b/static/pdf.js/pandora.css @@ -20,9 +20,11 @@ .verticalToolbarSeparator.hiddenMediumView, #print, +#secondaryPrint, #openFile, +#secondaryOpenFile, #editorModeButtons { - display: none; + display: none !important; } .page .crop-overlay { diff --git a/static/pdf.js/pandora.js b/static/pdf.js/pandora.js index a54148d8..27f73ccb 100644 --- a/static/pdf.js/pandora.js +++ b/static/pdf.js/pandora.js @@ -29,6 +29,35 @@ embedPage.addEventListener("click", event => { }); }) +// secondary menu +div.innerHTML = ` + +` +var secondaryCropFile = div.querySelector("#secondaryCropFile") +document.querySelector('#secondaryToolbarButtonContainer').insertBefore( + secondaryCropFile, + document.querySelector('#secondaryToolbarButtonContainer').firstChild +) + +div.innerHTML = ` + +` +var secondaryEmbedPage = div.querySelector("#secondaryEmbedPage") +document.querySelector('#secondaryToolbarButtonContainer').insertBefore( + secondaryEmbedPage, + document.querySelector('#secondaryToolbarButtonContainer').firstChild +) +secondaryEmbedPage.addEventListener("click", event => { + Ox.$parent.postMessage('embed', { + page: PDFViewerApplication.page + }); +}) + + async function archiveAPI(action, data) { var url = baseUrl + '/api/' var key = JSON.stringify([action, data]) @@ -180,20 +209,22 @@ const addToRecent = obj => { } function initOverlay() { - document.querySelector('#cropFile').addEventListener('click', event=> { - if (cropInactive) { - event.target.style.background = 'red' - cropInactive = false - document.querySelectorAll('.crop-overlay.inactive').forEach(element => { - element.classList.remove('inactive') - }) - } else { - event.target.style.background = '' - cropInactive = true - document.querySelectorAll('.crop-overlay').forEach(element => { - element.classList.add('inactive') - }) - } + document.querySelectorAll('#cropFile,.secondaryToolbarButton.cropFile').forEach(btn => { + btn.addEventListener('click', event=> { + if (cropInactive) { + event.target.style.background = 'red' + cropInactive = false + document.querySelectorAll('.crop-overlay.inactive').forEach(element => { + element.classList.remove('inactive') + }) + } else { + event.target.style.background = '' + cropInactive = true + document.querySelectorAll('.crop-overlay').forEach(element => { + element.classList.add('inactive') + }) + } + }) }) var first = true PDFViewerApplication.initializedPromise.then(function() { @@ -222,9 +253,6 @@ function initOverlay() { div.appendChild(overlay) renderCropOverlay(overlay, documentId, page) }) - PDFViewerApplication.pdfViewer.eventBus.on("pagechanging", function(event) { - console.log("pagechanging", event, event.pageNumber.toString()) - }) }) }