diff --git a/extensions/chromium/preferences_schema.json b/extensions/chromium/preferences_schema.json index de2ae62df..b88a5dc4b 100644 --- a/extensions/chromium/preferences_schema.json +++ b/extensions/chromium/preferences_schema.json @@ -173,7 +173,7 @@ "title": "Automatically rotate printed pages", "description": "When enabled, landscape pages are rotated when printed.", "type": "boolean", - "default": false + "default": true }, "scrollModeOnLoad": { "title": "Scroll mode on load", diff --git a/web/app_options.js b/web/app_options.js index 72ad6d091..9a91ab697 100644 --- a/web/app_options.js +++ b/web/app_options.js @@ -62,7 +62,7 @@ const defaultOptions = { }, enablePrintAutoRotate: { /** @type {boolean} */ - value: false, + value: true, kind: OptionKind.VIEWER + OptionKind.PREFERENCE, }, enableScripting: { diff --git a/web/base_viewer.js b/web/base_viewer.js index a57bd50c5..9d77e8bbb 100644 --- a/web/base_viewer.js +++ b/web/base_viewer.js @@ -1347,25 +1347,21 @@ class BaseViewer { * @returns {Array} Array of objects with width/height/rotation fields. */ getPagesOverview() { - const pagesOverview = this._pages.map(function (pageView) { + return this._pages.map(pageView => { const viewport = pageView.pdfPage.getViewport({ scale: 1 }); - return { - width: viewport.width, - height: viewport.height, - rotation: viewport.rotation, - }; - }); - if (!this.enablePrintAutoRotate) { - return pagesOverview; - } - return pagesOverview.map(function (size) { - if (isPortraitOrientation(size)) { - return size; + + if (!this.enablePrintAutoRotate || isPortraitOrientation(viewport)) { + return { + width: viewport.width, + height: viewport.height, + rotation: viewport.rotation, + }; } + // Landscape orientation. return { - width: size.height, - height: size.width, - rotation: (size.rotation + 90) % 360, + width: viewport.height, + height: viewport.width, + rotation: (viewport.rotation - 90) % 360, }; }); }