Skip to content

Commit 874ba23

Browse files
Merge pull request #20802 from calixteman/rm_sidebar_resize_observer
Remove the sidebar resize observer when killing the UI
2 parents f18f1ca + 1ac5dfe commit 874ba23

4 files changed

Lines changed: 21 additions & 8 deletions

File tree

web/app.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -529,7 +529,8 @@ const PDFViewerApplication = {
529529
linkService,
530530
overlayManager,
531531
/* ltr = */ l10n.getDirection() === "ltr",
532-
hasForcedColors
532+
hasForcedColors,
533+
abortSignal
533534
)
534535
: null;
535536

@@ -761,6 +762,7 @@ const PDFViewerApplication = {
761762
eventBus,
762763
l10n,
763764
enableSplitMerge,
765+
globalAbortSignal: abortSignal,
764766
});
765767
this.viewsManager.onToggled = this.forceRendering.bind(this);
766768
this.viewsManager.onUpdateThumbnails = () => {

web/comment_manager.js

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,8 @@ class CommentManager {
4545
linkService,
4646
overlayManager,
4747
ltr,
48-
hasForcedColors
48+
hasForcedColors,
49+
globalAbortSignal
4950
) {
5051
const dateFormat = new Intl.DateTimeFormat(undefined, {
5152
dateStyle: "long",
@@ -69,7 +70,8 @@ class CommentManager {
6970
linkService,
7071
this.#popup,
7172
dateFormat,
72-
ltr
73+
ltr,
74+
globalAbortSignal
7375
);
7476
this.#popup.sidebar = this.#sidebar;
7577
CommentManager.#hasForcedColors = hasForcedColors;
@@ -188,12 +190,14 @@ class CommentSidebar extends Sidebar {
188190
linkService,
189191
popup,
190192
dateFormat,
191-
ltr
193+
ltr,
194+
globalAbortSignal
192195
) {
193196
super(
194197
{ sidebar, resizer: sidebarResizer, toggleButton: commentToolbarButton },
195198
ltr,
196-
/* isResizerOnTheLeft = */ true
199+
/* isResizerOnTheLeft = */ true,
200+
globalAbortSignal
197201
);
198202
this.#sidebarTitle = sidebarTitle;
199203
this.#commentsList = commentsList;

web/sidebar.js

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,12 @@ class Sidebar {
5454
* @param {boolean} ltr
5555
* @param {boolean} isResizerOnTheLeft
5656
*/
57-
constructor({ sidebar, resizer, toggleButton }, ltr, isResizerOnTheLeft) {
57+
constructor(
58+
{ sidebar, resizer, toggleButton },
59+
ltr,
60+
isResizerOnTheLeft,
61+
globalAbortSignal
62+
) {
5863
this._sidebar = sidebar;
5964
this.#coefficient = ltr === isResizerOnTheLeft ? -1 : 1;
6065
this.#resizer = resizer;
@@ -74,7 +79,7 @@ class Sidebar {
7479
toggleButton.addEventListener("click", this.toggle.bind(this));
7580
this._isOpen = false;
7681
sidebar.hidden = true;
77-
82+
globalAbortSignal?.addEventListener("abort", this.destroy.bind(this));
7883
this.#resizeObserver = new ResizeObserver(
7984
([
8085
{

web/views_manager.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ class ViewsManager extends Sidebar {
9999
eventBus,
100100
l10n,
101101
enableSplitMerge = false,
102+
globalAbortSignal,
102103
}) {
103104
super(
104105
{
@@ -107,7 +108,8 @@ class ViewsManager extends Sidebar {
107108
toggleButton,
108109
},
109110
l10n.getDirection() === "ltr",
110-
/* isResizerOnTheLeft = */ false
111+
/* isResizerOnTheLeft = */ false,
112+
globalAbortSignal
111113
);
112114
this.isOpen = false;
113115
this.active = SidebarView.THUMBS;

0 commit comments

Comments
 (0)