Skip to content

Commit

Permalink
Merge pull request #15123 from Snuffleupagus/editor-presentation-disable
Browse files Browse the repository at this point in the history
[editor] Disable editing while PresentationMode is active
  • Loading branch information
Snuffleupagus authored Jul 2, 2022
2 parents ff0ff75 + 37b61f2 commit 845b7f0
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 1 deletion.
4 changes: 3 additions & 1 deletion web/base_viewer.js
Original file line number Diff line number Diff line change
Expand Up @@ -2156,7 +2156,9 @@ class BaseViewer {
* @type {number}
*/
get annotationEditorMode() {
return this.#annotationEditorMode;
return this.#annotationEditorUIManager
? this.#annotationEditorMode
: AnnotationEditorType.DISABLE;
}

/**
Expand Down
13 changes: 13 additions & 0 deletions web/pdf_presentation_mode.js
Original file line number Diff line number Diff line change
Expand Up @@ -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";
Expand Down Expand Up @@ -79,6 +80,7 @@ class PDFPresentationMode {
scaleValue: pdfViewer.currentScaleValue,
scrollMode: pdfViewer.scrollMode,
spreadMode: null,
annotationEditorMode: null,
};

if (
Expand All @@ -91,6 +93,9 @@ class PDFPresentationMode {
);
this.#args.spreadMode = pdfViewer.spreadMode;
}
if (pdfViewer.annotationEditorMode !== AnnotationEditorType.DISABLE) {
this.#args.annotationEditorMode = pdfViewer.annotationEditorMode;
}

try {
await promise;
Expand Down Expand Up @@ -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();
Expand Down Expand Up @@ -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);

Expand Down

0 comments on commit 845b7f0

Please sign in to comment.