Add a helper method for _getVisiblePages, in BaseViewer, for the case where only a single page is displayed in the viewer

This is relevant for e.g. `PDFSinglePageViewer`, and `PDFViewer` with Presentation Mode active.
By moving this code to a helper method in `BaseViewer`, it's thus possible to reduce the amount of duplicate code that currently needed in `PDFViewer` and `PDFSinglePageViewer`.
This commit is contained in:
Jonas Jenwald 2018-10-24 12:29:56 +02:00
parent dc98bf76eb
commit 2a79bcbe45
3 changed files with 27 additions and 19 deletions

View file

@ -855,6 +855,30 @@ class BaseViewer {
false : (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 in:
* - `PDFSinglePageViewer`.
* - `PDFViewer` with Presentation Mode 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,
};
return { first: view, last: view, views: [view], };
}
_getVisiblePages() {
throw new Error('Not implemented: _getVisiblePages');
}