summaryrefslogtreecommitdiffstats
path: root/chromium/chrome/browser/resources/pdf/viewport.js
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/chrome/browser/resources/pdf/viewport.js')
-rw-r--r--chromium/chrome/browser/resources/pdf/viewport.js22
1 files changed, 20 insertions, 2 deletions
diff --git a/chromium/chrome/browser/resources/pdf/viewport.js b/chromium/chrome/browser/resources/pdf/viewport.js
index 480664c014c..17986ae5d81 100644
--- a/chromium/chrome/browser/resources/pdf/viewport.js
+++ b/chromium/chrome/browser/resources/pdf/viewport.js
@@ -6,14 +6,21 @@
* @typedef {{
* width: number,
* height: number,
+ * layoutOptions: (!LayoutOptions|undefined),
* pageDimensions: Array<ViewportRect>,
* }}
*/
let DocumentDimensions;
+/** @typedef {{defaultPageOrientation: number}} */
+let LayoutOptions;
+
/** @typedef {{x: number, y: number}} */
let Point;
+/** @typedef {{x: (number|undefined), y: (number|undefined)}} */
+let PartialPoint;
+
/** @typedef {{width: number, height: number}} */
let Size;
@@ -279,6 +286,15 @@ class Viewport {
}
/**
+ * @return {!LayoutOptions|undefined} A dictionary carrying layout options
+ * from the plugin.
+ */
+ getLayoutOptions() {
+ return this.documentDimensions_ ? this.documentDimensions_.layoutOptions :
+ undefined;
+ }
+
+ /**
* @return {!ViewportRect} ViewportRect for the viewport given current zoom.
* @private
*/
@@ -605,7 +621,7 @@ class Viewport {
const bottom =
this.pageDimensions_[page].y + this.pageDimensions_[page].height;
- if (top <= y && bottom > y) {
+ if (top <= y && y <= bottom) {
return page;
}
@@ -1166,7 +1182,9 @@ class Viewport {
this.fittingType_ == FittingType.FIT_TO_HEIGHT);
}
- /** @param {!Point} point The position to which to scroll the viewport. */
+ /**
+ * @param {!PartialPoint} point The position to which to scroll the viewport.
+ */
scrollTo(point) {
let changed = false;
const newPosition = this.position;