Merge pull request #14750 from Snuffleupagus/rm-_getCurrentVisiblePage
Remove the `BaseViewer._getCurrentVisiblePage` helper method
This commit is contained in:
commit
2b673a6941
@ -1321,8 +1321,6 @@ class BaseViewer {
|
||||
: currentScaleValue;
|
||||
|
||||
const pageNumber = firstPage.id;
|
||||
let pdfOpenParams = "#page=" + pageNumber;
|
||||
pdfOpenParams += "&zoom=" + normalizedScaleValue;
|
||||
const currentPageView = this._pages[pageNumber - 1];
|
||||
const container = this.container;
|
||||
const topLeft = currentPageView.getPagePoint(
|
||||
@ -1331,7 +1329,11 @@ class BaseViewer {
|
||||
);
|
||||
const intLeft = Math.round(topLeft[0]);
|
||||
const intTop = Math.round(topLeft[1]);
|
||||
pdfOpenParams += "," + intLeft + "," + intTop;
|
||||
|
||||
let pdfOpenParams = `#page=${pageNumber}`;
|
||||
if (!this.isInPresentationMode) {
|
||||
pdfOpenParams += `&zoom=${normalizedScaleValue},${intLeft},${intTop}`;
|
||||
}
|
||||
|
||||
this._location = {
|
||||
pageNumber,
|
||||
@ -1418,37 +1420,7 @@ class BaseViewer {
|
||||
: this.container.scrollHeight > this.container.clientHeight;
|
||||
}
|
||||
|
||||
/**
|
||||
* Helper method for `this._getVisiblePages`. Should only ever be used when
|
||||
* the viewer can only display a single page at a time, for example:
|
||||
* - When PresentationMode is active.
|
||||
*/
|
||||
_getCurrentVisiblePage() {
|
||||
if (!this.pagesCount) {
|
||||
return { views: [] };
|
||||
}
|
||||
const pageView = this._pages[this._currentPageNumber - 1];
|
||||
// NOTE: Compute the `x` and `y` properties of the current view,
|
||||
// since `this._updateLocation` depends of them being available.
|
||||
const element = pageView.div;
|
||||
|
||||
const view = {
|
||||
id: pageView.id,
|
||||
x: element.offsetLeft + element.clientLeft,
|
||||
y: element.offsetTop + element.clientTop,
|
||||
view: pageView,
|
||||
};
|
||||
const ids = new Set([pageView.id]);
|
||||
|
||||
return { first: view, last: view, views: [view], ids };
|
||||
}
|
||||
|
||||
_getVisiblePages() {
|
||||
if (this.isInPresentationMode) {
|
||||
// The algorithm in `getVisibleElements` doesn't work in all browsers and
|
||||
// configurations (e.g. Chrome) when PresentationMode is active.
|
||||
return this._getCurrentVisiblePage();
|
||||
}
|
||||
const views =
|
||||
this._scrollMode === ScrollMode.PAGE
|
||||
? this.#scrollModePageState.pages
|
||||
|
@ -16,11 +16,7 @@
|
||||
/** @typedef {import("./event_utils").EventBus} EventBus */
|
||||
/** @typedef {import("./interfaces").IPDFLinkService} IPDFLinkService */
|
||||
|
||||
import {
|
||||
isValidRotation,
|
||||
parseQueryString,
|
||||
PresentationModeState,
|
||||
} from "./ui_utils.js";
|
||||
import { isValidRotation, parseQueryString } from "./ui_utils.js";
|
||||
import { waitOnEventOrTimeout } from "./event_utils.js";
|
||||
|
||||
// Heuristic value used when force-resetting `this._blockHashChange`.
|
||||
@ -69,13 +65,8 @@ class PDFHistory {
|
||||
this.reset();
|
||||
|
||||
this._boundEvents = null;
|
||||
this._isViewerInPresentationMode = false;
|
||||
// Ensure that we don't miss either a 'presentationmodechanged' or a
|
||||
// 'pagesinit' event, by registering the listeners immediately.
|
||||
this.eventBus._on("presentationmodechanged", evt => {
|
||||
this._isViewerInPresentationMode =
|
||||
evt.state !== PresentationModeState.NORMAL;
|
||||
});
|
||||
// Ensure that we don't miss a "pagesinit" event,
|
||||
// by registering the listener immediately.
|
||||
this.eventBus._on("pagesinit", () => {
|
||||
this._isPagesLoaded = false;
|
||||
|
||||
@ -566,9 +557,7 @@ class PDFHistory {
|
||||
}
|
||||
|
||||
this._position = {
|
||||
hash: this._isViewerInPresentationMode
|
||||
? `page=${location.pageNumber}`
|
||||
: location.pdfOpenParams.substring(1),
|
||||
hash: location.pdfOpenParams.substring(1),
|
||||
page: this.linkService.page,
|
||||
first: location.pageNumber,
|
||||
rotation: location.rotation,
|
||||
|
Loading…
x
Reference in New Issue
Block a user