|Submitter||Diff||Changes||Open Issues||Last Updated|
|Error loading review requests:|
59 bytes, text/x-review-board-request
|Details | Review|
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.
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.
Pushed by email@example.com: https://hg.mozilla.org/integration/autoland/rev/9a8c26fc0120 Remove unnecessary onWidgetInstanceRemoved listener. r=jaws