diff --git a/extensions/chromium/preferences_schema.json b/extensions/chromium/preferences_schema.json
index 03ea76a53..c8500a0e1 100644
--- a/extensions/chromium/preferences_schema.json
+++ b/extensions/chromium/preferences_schema.json
@@ -72,6 +72,10 @@
"type": "string",
"default": "yellow=#FFFF98,green=#53FFBC,blue=#80EBFF,pink=#FFCBE6,red=#FF4F5F"
},
+ "enableStampEditor": {
+ "type": "boolean",
+ "default": true
+ },
"disableRange": {
"title": "Disable range requests",
"description": "Whether to disable range requests (not recommended).",
diff --git a/web/app.js b/web/app.js
index 39d73a096..64e3e86c2 100644
--- a/web/app.js
+++ b/web/app.js
@@ -454,8 +454,8 @@ const PDFViewerApplication = {
if (appConfig.annotationEditorParams) {
if (annotationEditorMode !== AnnotationEditorType.DISABLE) {
- if (!isOffscreenCanvasSupported) {
- appConfig.toolbar?.editorStampButton?.classList.add("hidden");
+ if (AppOptions.get("enableStampEditor") && isOffscreenCanvasSupported) {
+ appConfig.toolbar?.editorStampButton?.classList.remove("hidden");
}
const editorHighlightButton = appConfig.toolbar?.editorHighlightButton;
diff --git a/web/app_options.js b/web/app_options.js
index 7a16d8d66..998a6ed2c 100644
--- a/web/app_options.js
+++ b/web/app_options.js
@@ -158,6 +158,14 @@ const defaultOptions = {
value: typeof PDFJSDev === "undefined" || !PDFJSDev.test("CHROME"),
kind: OptionKind.VIEWER + OptionKind.PREFERENCE,
},
+ enableStampEditor: {
+ // We'll probably want to make some experiments before enabling this
+ // in Firefox release, but it has to be temporary.
+ // TODO: remove it when unnecessary.
+ /** @type {boolean} */
+ value: true,
+ kind: OptionKind.VIEWER + OptionKind.PREFERENCE,
+ },
externalLinkRel: {
/** @type {string} */
value: "noopener noreferrer nofollow",
diff --git a/web/viewer.html b/web/viewer.html
index d5545f4ae..b81f0cc8c 100644
--- a/web/viewer.html
+++ b/web/viewer.html
@@ -359,7 +359,7 @@ See https://github.com/adobe-type-tools/cmap-resources
-