Merge pull request #15123 from Snuffleupagus/editor-presentation-disable

[editor] Disable editing while PresentationMode is active
This commit is contained in:
Jonas Jenwald 2022-07-02 16:39:38 +02:00 committed by GitHub
commit 845b7f06f9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 16 additions and 1 deletions

View File

@ -2156,7 +2156,9 @@ class BaseViewer {
* @type {number}
*/
get annotationEditorMode() {
return this.#annotationEditorMode;
return this.#annotationEditorUIManager
? this.#annotationEditorMode
: AnnotationEditorType.DISABLE;
}
/**

View File

@ -19,6 +19,7 @@ import {
ScrollMode,
SpreadMode,
} from "./ui_utils.js";
import { AnnotationEditorType } from "pdfjs-lib";
const DELAY_BEFORE_HIDING_CONTROLS = 3000; // in ms
const ACTIVE_SELECTOR = "pdfPresentationMode";
@ -79,6 +80,7 @@ class PDFPresentationMode {
scaleValue: pdfViewer.currentScaleValue,
scrollMode: pdfViewer.scrollMode,
spreadMode: null,
annotationEditorMode: null,
};
if (
@ -91,6 +93,9 @@ class PDFPresentationMode {
);
this.#args.spreadMode = pdfViewer.spreadMode;
}
if (pdfViewer.annotationEditorMode !== AnnotationEditorType.DISABLE) {
this.#args.annotationEditorMode = pdfViewer.annotationEditorMode;
}
try {
await promise;
@ -167,6 +172,10 @@ class PDFPresentationMode {
}
this.pdfViewer.currentPageNumber = this.#args.pageNumber;
this.pdfViewer.currentScaleValue = "page-fit";
if (this.#args.annotationEditorMode !== null) {
this.pdfViewer.annotationEditorMode = AnnotationEditorType.NONE;
}
}, 0);
this.#addWindowListeners();
@ -195,6 +204,10 @@ class PDFPresentationMode {
}
this.pdfViewer.currentScaleValue = this.#args.scaleValue;
this.pdfViewer.currentPageNumber = pageNumber;
if (this.#args.annotationEditorMode !== null) {
this.pdfViewer.annotationEditorMode = this.#args.annotationEditorMode;
}
this.#args = null;
}, 0);