Skip to content

Commit 1ac5dfe

Browse files
committed
Remove the sidebar resize observer when killing the UI
1 parent 4d0709c commit 1ac5dfe

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
@@ -531,7 +531,8 @@ const PDFViewerApplication = {
531531
linkService,
532532
overlayManager,
533533
/* ltr = */ l10n.getDirection() === "ltr",
534-
hasForcedColors
534+
hasForcedColors,
535+
abortSignal
535536
)
536537
: null;
537538

@@ -763,6 +764,7 @@ const PDFViewerApplication = {
763764
eventBus,
764765
l10n,
765766
enableSplitMerge,
767+
globalAbortSignal: abortSignal,
766768
});
767769
this.viewsManager.onToggled = this.forceRendering.bind(this);
768770
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)