Closed Bug 1356911 Opened 4 years ago Closed 4 years ago
UI .unregister Build Window is slow when closing windows
59 bytes, text/x-review-board-request
It's strange/unfortunate that the way listeners are implemented in CustomizableUI.jsm causes all windows to receive notifications when one window is closed, and to have lots of listeners check if the notification is relevant to the window they care about. But specifically, when looking at a profile, a third of the time is spent in the onWidgetInstanceRemoved handler in FullZoomUI.jsm, because it loops over all windows and updates UI in them at http://searchfox.org/mozilla-central/rev/d8496d0a1f6ebef57fe39b9b204475b0eccfb94c/browser/modules/FullZoomUI.jsm#104 A quick look at the history seems to indicate this loop was added recently in bug 1348122. See this profile of closing several windows: http://perfht.ml/2pr1SDW
Maybe the onWidgetRemoved listener is enough. Not sure what else onWidgetInstanceRemoved is good for.
Assignee: nobody → dao+bmo
Flags: qe-verify? → qe-verify-
Comment on attachment 8860060 [details] Bug 1356911 - Remove unnecessary onWidgetInstanceRemoved listener. https://reviewboard.mozilla.org/r/132098/#review135010 ::: commit-message-ef8d1:1 (Diff revision 1) > +Bug 1356911 - Stop using a onWidgetInstanceRemoved listener to update the full zoom UI. r?jaws Please explain in your commit message *why* we are changing event listeners. As-is the commit message tells nothing more than the literal code change.
Attachment #8860060 - Flags: review?(jaws) → review+
Pushed by email@example.com: https://hg.mozilla.org/integration/autoland/rev/9a8c26fc0120 Remove unnecessary onWidgetInstanceRemoved listener. r=jaws
You need to log in before you can comment on or make changes to this bug.