Use Map.prototype.getOrInsert() in the _getPageAdvance method

Also, change the method to an actually private one.
This commit is contained in:
Jonas Jenwald 2026-02-21 11:29:29 +01:00
parent f548a159d6
commit 3940855511

View File

@ -2270,10 +2270,7 @@ class PDFViewer {
this.update();
}
/**
* @private
*/
_getPageAdvance(currentPageNumber, previous = false) {
#getPageAdvance(currentPageNumber, previous = false) {
switch (this._scrollMode) {
case ScrollMode.WRAPPED: {
const { views } = this._getVisiblePages(),
@ -2284,11 +2281,7 @@ class PDFViewer {
if (percent === 0 || widthPercent < 100) {
continue;
}
let yArray = pageLayout.get(y);
if (!yArray) {
pageLayout.set(y, (yArray ||= []));
}
yArray.push(id);
pageLayout.getOrInsert(y, []).push(id);
}
// Find the row of the current page.
for (const yArray of pageLayout.values()) {
@ -2379,7 +2372,7 @@ class PDFViewer {
return false;
}
const advance =
this._getPageAdvance(currentPageNumber, /* previous = */ false) || 1;
this.#getPageAdvance(currentPageNumber, /* previous = */ false) || 1;
this.currentPageNumber = Math.min(currentPageNumber + advance, pagesCount);
return true;
@ -2396,7 +2389,7 @@ class PDFViewer {
return false;
}
const advance =
this._getPageAdvance(currentPageNumber, /* previous = */ true) || 1;
this.#getPageAdvance(currentPageNumber, /* previous = */ true) || 1;
this.currentPageNumber = Math.max(currentPageNumber - advance, 1);
return true;