Merge pull request #19622 from nicolo-ribaudo/zoom-detail-view-constant-redraw
Do not constantly render the detail canvas on zoom (bug 1952496)
This commit is contained in:
commit
cef4fcf025
@ -1868,14 +1868,18 @@ class PDFViewer {
|
|||||||
this._spreadMode !== SpreadMode.NONE &&
|
this._spreadMode !== SpreadMode.NONE &&
|
||||||
this._scrollMode !== ScrollMode.HORIZONTAL;
|
this._scrollMode !== ScrollMode.HORIZONTAL;
|
||||||
|
|
||||||
// If we are scrolling and the rendering of a detail view was just
|
|
||||||
// cancelled, it's because the user is scrolling too quickly and so
|
|
||||||
// we constantly need to re-render a different area.
|
|
||||||
// Don't attempt to re-render it: this will be done once the user
|
|
||||||
// stops scrolling.
|
|
||||||
const ignoreDetailViews =
|
const ignoreDetailViews =
|
||||||
this.#scrollTimeoutId !== null &&
|
// If we are zooming, do not re-render the detail views. Re-renders on
|
||||||
visiblePages.views.some(page => page.detailView?.renderingCancelled);
|
// zoom happen with a delay, and once the rendering happens it will also
|
||||||
|
// trigger rendering of the detail views.
|
||||||
|
this.#scaleTimeoutId !== null ||
|
||||||
|
// If we are scrolling and the rendering of a detail view was just
|
||||||
|
// cancelled, it's because the user is scrolling too quickly and so
|
||||||
|
// we constantly need to re-render a different area.
|
||||||
|
// Don't attempt to re-render it: this will be done once the user
|
||||||
|
// stops scrolling.
|
||||||
|
(this.#scrollTimeoutId !== null &&
|
||||||
|
visiblePages.views.some(page => page.detailView?.renderingCancelled));
|
||||||
|
|
||||||
const pageView = this.renderingQueue.getHighestPriority(
|
const pageView = this.renderingQueue.getHighestPriority(
|
||||||
visiblePages,
|
visiblePages,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user