|
@@ -1,569 +0,0 @@
|
|
-# HG changeset patch
|
|
|
|
-# User Ian Neal <iann_cvs@blueyonder.co.uk>
|
|
|
|
-# Date 1579738200 -3600
|
|
|
|
-# Parent 0a3a7c8d42accfdb20558afb67e8d43d70d3a019
|
|
|
|
-Bug 1611010 - Port |Bug 1453345 part 5 - Remove pointless JS implementaions of QI to nsIDOMEventListener| and |Bug 1453487 part 2 - Remove useless implements="nsIDOMEventListener" from XBL bindings| to SeaMonkey. r=frg
|
|
|
|
-
|
|
|
|
-diff --git a/suite/base/content/viewZoomOverlay.js b/suite/base/content/viewZoomOverlay.js
|
|
|
|
---- a/suite/base/content/viewZoomOverlay.js
|
|
|
|
-+++ b/suite/base/content/viewZoomOverlay.js
|
|
|
|
-@@ -29,18 +29,17 @@ var FullZoom = FullZoom || {
|
|
|
|
- get siteSpecific() {
|
|
|
|
- return this._siteSpecificPref;
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
- //**************************************************************************//
|
|
|
|
- // nsISupports
|
|
|
|
-
|
|
|
|
- QueryInterface:
|
|
|
|
-- XPCOMUtils.generateQI([Ci.nsIDOMEventListener,
|
|
|
|
-- Ci.nsIObserver,
|
|
|
|
-+ XPCOMUtils.generateQI([Ci.nsIObserver,
|
|
|
|
- Ci.nsIContentPrefObserver,
|
|
|
|
- Ci.nsIContentPrefCallback2,
|
|
|
|
- Ci.nsISupportsWeakReference]),
|
|
|
|
-
|
|
|
|
- //**************************************************************************//
|
|
|
|
- // Initialization & Destruction
|
|
|
|
-
|
|
|
|
- init: function FullZoom_init() {
|
|
|
|
-@@ -67,17 +66,17 @@ var FullZoom = FullZoom || {
|
|
|
|
- Services.contentPrefs2.removeObserverForName(this.name, this);
|
|
|
|
- window.removeEventListener("wheel", this, true);
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- //**************************************************************************//
|
|
|
|
- // Event Handlers
|
|
|
|
-
|
|
|
|
-- // nsIDOMEventListener
|
|
|
|
-+ // EventListener
|
|
|
|
-
|
|
|
|
- handleEvent: function FullZoom_handleEvent(event) {
|
|
|
|
- switch (event.type) {
|
|
|
|
- case "wheel":
|
|
|
|
- this._handleMouseScrolled(event);
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
-diff --git a/suite/browser/browser-places.js b/suite/browser/browser-places.js
|
|
|
|
---- a/suite/browser/browser-places.js
|
|
|
|
-+++ b/suite/browser/browser-places.js
|
|
|
|
-@@ -62,17 +62,17 @@ var StarUI = {
|
|
|
|
- _restoreCommandsState: function SU__restoreCommandsState() {
|
|
|
|
- this._blockedCommands.forEach(function (elt) {
|
|
|
|
- if (elt.getAttribute("wasDisabled") != "true")
|
|
|
|
- elt.removeAttribute("disabled");
|
|
|
|
- elt.removeAttribute("wasDisabled");
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
-- // nsIDOMEventListener
|
|
|
|
-+ // EventListener
|
|
|
|
- handleEvent: function SU_handleEvent(aEvent) {
|
|
|
|
- switch (aEvent.type) {
|
|
|
|
- case "popuphidden":
|
|
|
|
- if (aEvent.originalTarget == this.panel) {
|
|
|
|
- if (!this._element("editBookmarkPanelContent").hidden)
|
|
|
|
- this.quitEditMode();
|
|
|
|
-
|
|
|
|
- this._restoreCommandsState();
|
|
|
|
-diff --git a/suite/browser/nsTypeAheadFind.js b/suite/browser/nsTypeAheadFind.js
|
|
|
|
---- a/suite/browser/nsTypeAheadFind.js
|
|
|
|
-+++ b/suite/browser/nsTypeAheadFind.js
|
|
|
|
-@@ -64,17 +64,16 @@ typeAheadFind.prototype = {
|
|
|
|
- mTimer: null,
|
|
|
|
- mXULBrowserWindow: null,
|
|
|
|
-
|
|
|
|
- /* nsISupports */
|
|
|
|
- QueryInterface: XPCOMUtils.generateQI([
|
|
|
|
- Ci.nsISupportsWeakReference,
|
|
|
|
- Ci.nsIObserver,
|
|
|
|
- Ci.nsITimerCallback,
|
|
|
|
-- Ci.nsIDOMEventListener,
|
|
|
|
- Ci.nsISelectionListener]),
|
|
|
|
-
|
|
|
|
- /* nsIObserver */
|
|
|
|
- observe: function(aSubject, aTopic, aData) {
|
|
|
|
- if (aTopic == "app-startup") {
|
|
|
|
- // It's now safe to get our pref branch.
|
|
|
|
- this.mPrefs = Services.prefs.getBranch("accessibility.typeaheadfind.");
|
|
|
|
- // We need to add our event listeners to all windows.
|
|
|
|
-@@ -111,17 +110,17 @@ typeAheadFind.prototype = {
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
- /* nsITimerCallback */
|
|
|
|
- notify: function(aTimer) {
|
|
|
|
- this.stopFind(false);
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
-- /* nsIDOMEventListener */
|
|
|
|
-+ /* EventListener */
|
|
|
|
- handleEvent: function(aEvent) {
|
|
|
|
- if (!aEvent.type.startsWith("key")) {
|
|
|
|
- this.stopFind(false);
|
|
|
|
- return true;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- // We don't care about these keys.
|
|
|
|
- if (aEvent.altKey || aEvent.ctrlKey || aEvent.metaKey)
|
|
|
|
-diff --git a/suite/browser/tabbrowser.xml b/suite/browser/tabbrowser.xml
|
|
|
|
---- a/suite/browser/tabbrowser.xml
|
|
|
|
-+++ b/suite/browser/tabbrowser.xml
|
|
|
|
-@@ -3382,17 +3382,17 @@
|
|
|
|
- </xul:hbox>
|
|
|
|
- </xul:stack>
|
|
|
|
- </xul:hbox>
|
|
|
|
- <xul:spacer class="tabs-bottom-spacer"/>
|
|
|
|
- </xul:vbox>
|
|
|
|
- </xul:stack>
|
|
|
|
- </content>
|
|
|
|
-
|
|
|
|
-- <implementation implements="nsIDOMEventListener">
|
|
|
|
-+ <implementation>
|
|
|
|
- <constructor>
|
|
|
|
- <![CDATA[
|
|
|
|
- var tab = this.firstChild;
|
|
|
|
- // set the tabstrip's minWidth too, otherwise it immediately overflows
|
|
|
|
- this.arrowScrollbox.style.minWidth =
|
|
|
|
- tab.style.minWidth = Services.prefs.getIntPref("browser.tabs.tabMinWidth") + "px";
|
|
|
|
- tab.style.maxWidth = Services.prefs.getIntPref("browser.tabs.tabMaxWidth") + "px";
|
|
|
|
- window.addEventListener("resize", this);
|
|
|
|
-@@ -3541,17 +3541,17 @@
|
|
|
|
- this._handleMouseScroll(event);
|
|
|
|
- ]]>
|
|
|
|
- </handler>
|
|
|
|
- </handlers>
|
|
|
|
- </binding>
|
|
|
|
-
|
|
|
|
- <binding id="tabbrowser-alltabs-popup"
|
|
|
|
- extends="chrome://global/content/bindings/popup.xml#popup">
|
|
|
|
-- <implementation implements="nsIDOMEventListener">
|
|
|
|
-+ <implementation>
|
|
|
|
- <method name="_tabOnTabClose">
|
|
|
|
- <parameter name="aEvent"/>
|
|
|
|
- <body>
|
|
|
|
- <![CDATA[
|
|
|
|
- let menuItem = aEvent.target.mCorrespondingMenuitem;
|
|
|
|
- if (menuItem)
|
|
|
|
- menuItem.remove();
|
|
|
|
- ]]>
|
|
|
|
-diff --git a/suite/browser/urlbarBindings.xml b/suite/browser/urlbarBindings.xml
|
|
|
|
---- a/suite/browser/urlbarBindings.xml
|
|
|
|
-+++ b/suite/browser/urlbarBindings.xml
|
|
|
|
-@@ -44,17 +44,17 @@
|
|
|
|
- <xul:panel type="autocomplete" anonid="popup"
|
|
|
|
- ignorekeys="true" noautofocus="true" level="top"
|
|
|
|
- xbl:inherits="for=id,nomatch"/>
|
|
|
|
- </xul:popupset>
|
|
|
|
-
|
|
|
|
- <children includes="menupopup"/>
|
|
|
|
- </content>
|
|
|
|
-
|
|
|
|
-- <implementation implements="nsIObserver, nsIDOMEventListener">
|
|
|
|
-+ <implementation implements="nsIObserver">
|
|
|
|
- <constructor><![CDATA[
|
|
|
|
- this._prefs = Services.prefs.getBranch("browser.urlbar.");
|
|
|
|
- this._prefs.addObserver("", this);
|
|
|
|
-
|
|
|
|
- this.updatePref("showPopup");
|
|
|
|
- this.updatePref("autoFill");
|
|
|
|
- this.updatePref("showSearch");
|
|
|
|
- this.updatePref("formatting.enabled");
|
|
|
|
-diff --git a/suite/components/bindings/notification.xml b/suite/components/bindings/notification.xml
|
|
|
|
---- a/suite/components/bindings/notification.xml
|
|
|
|
-+++ b/suite/components/bindings/notification.xml
|
|
|
|
-@@ -13,17 +13,17 @@
|
|
|
|
-
|
|
|
|
- <bindings id="browserNotificationBindings"
|
|
|
|
- xmlns="http://www.mozilla.org/xbl"
|
|
|
|
- xmlns:xbl="http://www.mozilla.org/xbl"
|
|
|
|
- xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
|
|
|
-
|
|
|
|
- <binding id="browser-notificationbox"
|
|
|
|
- extends="chrome://global/content/bindings/notification.xml#notificationbox">
|
|
|
|
-- <implementation implements="nsIObserver, nsIFormSubmitObserver, nsIWebProgressListener, nsIWebProgressListener2, nsIDOMEventListener">
|
|
|
|
-+ <implementation implements="nsIObserver, nsIFormSubmitObserver, nsIWebProgressListener, nsIWebProgressListener2">
|
|
|
|
- <field name="_stringBundle" readonly="true">
|
|
|
|
- <![CDATA[
|
|
|
|
- Services.strings.createBundle("chrome://communicator/locale/notification.properties");
|
|
|
|
- ]]>
|
|
|
|
- </field>
|
|
|
|
-
|
|
|
|
- <field name="_brandStringBundle" readonly="true">
|
|
|
|
- <![CDATA[
|
|
|
|
-diff --git a/suite/components/feeds/FeedWriter.js b/suite/components/feeds/FeedWriter.js
|
|
|
|
---- a/suite/components/feeds/FeedWriter.js
|
|
|
|
-+++ b/suite/components/feeds/FeedWriter.js
|
|
|
|
-@@ -700,17 +700,17 @@ FeedWriter.prototype = {
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- checkbox.setAttribute("label", this._getFormattedString(stringLabel, [handlerName]));
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
-- // nsIDOMEventListener
|
|
|
|
-+ // EventListener
|
|
|
|
- handleEvent: function(event) {
|
|
|
|
- if (event.target != this._document &&
|
|
|
|
- event.target.ownerDocument != this._document) {
|
|
|
|
- LOG("FeedWriter.handleEvent: Someone passed the feed writer as a listener to the events of another document!");
|
|
|
|
- return;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- if (event.type == "load")
|
|
|
|
-@@ -1197,14 +1197,13 @@ FeedWriter.prototype = {
|
|
|
|
- case PREF_AUDIO_SELECTED_ACTION:
|
|
|
|
- this._setAlwaysUseCheckedState(feedType);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
- classID: FEEDWRITER_CID,
|
|
|
|
- QueryInterface: XPCOMUtils.generateQI([ Ci.nsIDOMGlobalPropertyInitializer,
|
|
|
|
-- Ci.nsIDOMEventListener,
|
|
|
|
- Ci.nsIObserver])
|
|
|
|
-
|
|
|
|
- };
|
|
|
|
-
|
|
|
|
- var NSGetFactory = XPCOMUtils.generateNSGetFactory([FeedWriter]);
|
|
|
|
-diff --git a/suite/components/places/content/bookmarkProperties.js b/suite/components/places/content/bookmarkProperties.js
|
|
|
|
---- a/suite/components/places/content/bookmarkProperties.js
|
|
|
|
-+++ b/suite/components/places/content/bookmarkProperties.js
|
|
|
|
-@@ -344,17 +344,17 @@ var BookmarkPropertiesPanel = {
|
|
|
|
- .addEventListener("input", this);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- // Only enable the accept button once we've finished everything.
|
|
|
|
- acceptButton.disabled = acceptButtonDisabled;
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
-- // nsIDOMEventListener
|
|
|
|
-+ // EventListener
|
|
|
|
- handleEvent: function BPP_handleEvent(aEvent) {
|
|
|
|
- var target = aEvent.target;
|
|
|
|
- switch (aEvent.type) {
|
|
|
|
- case "input":
|
|
|
|
- if (target.id == "editBMPanel_locationField" ||
|
|
|
|
- target.id == "editBMPanel_keywordField") {
|
|
|
|
- // Check uri fields to enable accept button if input is valid
|
|
|
|
- document.documentElement
|
|
|
|
-@@ -368,18 +368,17 @@ var BookmarkPropertiesPanel = {
|
|
|
|
- elementsHeight.set(id, newHeight);
|
|
|
|
- }
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
- // nsISupports
|
|
|
|
- QueryInterface: function BPP_QueryInterface(aIID) {
|
|
|
|
-- if (aIID.equals(Ci.nsIDOMEventListener) ||
|
|
|
|
-- aIID.equals(Ci.nsISupports))
|
|
|
|
-+ if (aIID.equals(Ci.nsISupports))
|
|
|
|
- return this;
|
|
|
|
-
|
|
|
|
- throw Cr.NS_NOINTERFACE;
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
- _element: function BPP__element(aID) {
|
|
|
|
- return document.getElementById("editBMPanel_" + aID);
|
|
|
|
- },
|
|
|
|
-diff --git a/suite/components/places/content/browserPlacesViews.js b/suite/components/places/content/browserPlacesViews.js
|
|
|
|
---- a/suite/components/places/content/browserPlacesViews.js
|
|
|
|
-+++ b/suite/components/places/content/browserPlacesViews.js
|
|
|
|
-@@ -998,18 +998,17 @@ function PlacesToolbar(aPlace) {
|
|
|
|
-
|
|
|
|
- PlacesToolbar.prototype = {
|
|
|
|
- __proto__: PlacesViewBase.prototype,
|
|
|
|
-
|
|
|
|
- _cbEvents: ["dragstart", "dragover", "dragexit", "dragend", "drop",
|
|
|
|
- "mousemove", "mouseover", "mouseout"],
|
|
|
|
-
|
|
|
|
- QueryInterface: function PT_QueryInterface(aIID) {
|
|
|
|
-- if (aIID.equals(Ci.nsIDOMEventListener) ||
|
|
|
|
-- aIID.equals(Ci.nsITimerCallback))
|
|
|
|
-+ if (aIID.equals(Ci.nsITimerCallback))
|
|
|
|
- return this;
|
|
|
|
-
|
|
|
|
- return PlacesViewBase.prototype.QueryInterface.apply(this, arguments);
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
- uninit: function PT_uninit() {
|
|
|
|
- this._removeEventListeners(this._viewElt, this._cbEvents, false);
|
|
|
|
- this._removeEventListeners(this._rootElt, ["popupshowing", "popuphidden"],
|
|
|
|
-@@ -1881,23 +1880,16 @@ function PlacesMenu(aPopupShowingEvent,
|
|
|
|
-
|
|
|
|
- PlacesViewBase.call(this, aPlace, aOptions);
|
|
|
|
- this._onPopupShowing(aPopupShowingEvent);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- PlacesMenu.prototype = {
|
|
|
|
- __proto__: PlacesViewBase.prototype,
|
|
|
|
-
|
|
|
|
-- QueryInterface: function PM_QueryInterface(aIID) {
|
|
|
|
-- if (aIID.equals(Ci.nsIDOMEventListener))
|
|
|
|
-- return this;
|
|
|
|
--
|
|
|
|
-- return PlacesViewBase.prototype.QueryInterface.apply(this, arguments);
|
|
|
|
-- },
|
|
|
|
--
|
|
|
|
- _removeChild: function PM_removeChild(aChild) {
|
|
|
|
- PlacesViewBase.prototype._removeChild.apply(this, arguments);
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
- uninit: function PM_uninit() {
|
|
|
|
- this._removeEventListeners(this._rootElt, ["popupshowing", "popuphidden"],
|
|
|
|
- true);
|
|
|
|
- this._removeEventListeners(window, ["unload"], false);
|
|
|
|
-diff --git a/suite/components/places/content/editBookmarkOverlay.js b/suite/components/places/content/editBookmarkOverlay.js
|
|
|
|
---- a/suite/components/places/content/editBookmarkOverlay.js
|
|
|
|
-+++ b/suite/components/places/content/editBookmarkOverlay.js
|
|
|
|
-@@ -454,18 +454,17 @@ var gEditItemOverlay = {
|
|
|
|
- this._folderMenuList.selectedIndex);
|
|
|
|
-
|
|
|
|
- // Hide the folders-separator if no folder is annotated as recently-used
|
|
|
|
- this._element("foldersSeparator").hidden = (menupopup.childNodes.length <= 6);
|
|
|
|
- this._folderMenuList.disabled = this.readOnly;
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
- QueryInterface:
|
|
|
|
-- XPCOMUtils.generateQI([Ci.nsIDOMEventListener,
|
|
|
|
-- Ci.nsINavBookmarkObserver]),
|
|
|
|
-+ XPCOMUtils.generateQI([Ci.nsINavBookmarkObserver]),
|
|
|
|
-
|
|
|
|
- _element(aID) {
|
|
|
|
- return document.getElementById("editBMPanel_" + aID);
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
- uninitPanel(aHideCollapsibleElements) {
|
|
|
|
- if (aHideCollapsibleElements) {
|
|
|
|
- // Hide the folder tree if it was previously visible.
|
|
|
|
-@@ -934,17 +933,17 @@ var gEditItemOverlay = {
|
|
|
|
- this._folderTree.focus();
|
|
|
|
- this._folderTree.selectItems([ip.itemId]);
|
|
|
|
- PlacesUtils.asContainer(this._folderTree.selectedNode).containerOpen = true;
|
|
|
|
- this._folderTree.selectItems([this._lastNewItem]);
|
|
|
|
- this._folderTree.startEditing(this._folderTree.view.selection.currentIndex,
|
|
|
|
- this._folderTree.columns.getFirstColumn());
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
-- // nsIDOMEventListener
|
|
|
|
-+ // EventListener
|
|
|
|
- handleEvent(aEvent) {
|
|
|
|
- switch (aEvent.type) {
|
|
|
|
- case "CheckboxStateChange":
|
|
|
|
- // Update the tags field when items are checked/unchecked in the listbox
|
|
|
|
- let tags = this._getTagsArrayFromTagsInputField();
|
|
|
|
- let tagCheckbox = aEvent.target;
|
|
|
|
-
|
|
|
|
- let curTagIndex = tags.indexOf(tagCheckbox.label);
|
|
|
|
-diff --git a/suite/components/places/content/places.js b/suite/components/places/content/places.js
|
|
|
|
---- a/suite/components/places/content/places.js
|
|
|
|
-+++ b/suite/components/places/content/places.js
|
|
|
|
-@@ -157,18 +157,17 @@ var PlacesOrganizer = {
|
|
|
|
- // remove the "Properties" context-menu item, we've our own details pane
|
|
|
|
- document.getElementById("placesContext")
|
|
|
|
- .removeChild(document.getElementById("placesContext_show:info"));
|
|
|
|
-
|
|
|
|
- ContentArea.focus();
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
- QueryInterface: function PO_QueryInterface(aIID) {
|
|
|
|
-- if (aIID.equals(Ci.nsIDOMEventListener) ||
|
|
|
|
-- aIID.equals(Ci.nsISupports))
|
|
|
|
-+ if (aIID.equals(Ci.nsISupports))
|
|
|
|
- return this;
|
|
|
|
-
|
|
|
|
- throw Cr.NS_NOINTERFACE;
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
- handleEvent: function PO_handleEvent(aEvent) {
|
|
|
|
- if (aEvent.type != "AppCommand")
|
|
|
|
- return;
|
|
|
|
-diff --git a/suite/components/pref/content/pref-applications.js b/suite/components/pref/content/pref-applications.js
|
|
|
|
---- a/suite/components/pref/content/pref-applications.js
|
|
|
|
-+++ b/suite/components/pref/content/pref-applications.js
|
|
|
|
-@@ -759,35 +759,34 @@ var gApplicationsPane = {
|
|
|
|
- Services.prefs.removeObserver(PREF_AUDIO_FEED_SELECTED_WEB, this);
|
|
|
|
- Services.prefs.removeObserver(PREF_AUDIO_FEED_SELECTED_ACTION, this);
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- //**************************************************************************//
|
|
|
|
- // nsISupports
|
|
|
|
-
|
|
|
|
-- QueryInterface: XPCOMUtils.generateQI([Ci.nsIObserver,
|
|
|
|
-- Ci.nsIDOMEventListener]),
|
|
|
|
-+ QueryInterface: XPCOMUtils.generateQI([Ci.nsIObserver]),
|
|
|
|
-
|
|
|
|
- //**************************************************************************//
|
|
|
|
- // nsIObserver
|
|
|
|
-
|
|
|
|
- observe(aSubject, aTopic, aData) {
|
|
|
|
- // Rebuild the list when there are changes to preferences that influence
|
|
|
|
- // whether or not to show certain entries in the list.
|
|
|
|
- if (aTopic == "nsPref:changed" && !this._storingAction) {
|
|
|
|
- // All the prefs we observe can affect what we display, so we rebuild
|
|
|
|
- // the view when any of them changes.
|
|
|
|
- this._rebuildView();
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
-
|
|
|
|
- //**************************************************************************//
|
|
|
|
-- // nsIDOMEventListener
|
|
|
|
-+ // EventListener
|
|
|
|
-
|
|
|
|
- handleEvent(aEvent) {
|
|
|
|
- switch (aEvent.type) {
|
|
|
|
- case "unload":
|
|
|
|
- this.destroy();
|
|
|
|
- break;
|
|
|
|
- case "select":
|
|
|
|
- if (this._list.selectedItem)
|
|
|
|
-diff --git a/suite/components/sessionstore/nsSessionStore.js b/suite/components/sessionstore/nsSessionStore.js
|
|
|
|
---- a/suite/components/sessionstore/nsSessionStore.js
|
|
|
|
-+++ b/suite/components/sessionstore/nsSessionStore.js
|
|
|
|
-@@ -118,17 +118,16 @@ function SessionStoreService() {
|
|
|
|
- this._prefBranch.addObserver("sessionstore.resume_from_crash", this, true);
|
|
|
|
- return this._prefBranch.getBoolPref("sessionstore.resume_from_crash");
|
|
|
|
- });
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- SessionStoreService.prototype = {
|
|
|
|
- classID: Components.ID("{d37ccdf1-496f-4135-9575-037180af010d}"),
|
|
|
|
- QueryInterface: XPCOMUtils.generateQI([Ci.nsISessionStore,
|
|
|
|
-- Ci.nsIDOMEventListener,
|
|
|
|
- Ci.nsIObserver,
|
|
|
|
- Ci.nsISupportsWeakReference]),
|
|
|
|
-
|
|
|
|
- // xul:tab attributes to (re)store (extensions might want to hook in here);
|
|
|
|
- // the favicon is always saved for the about:sessionrestore page
|
|
|
|
- xulAttributes: {"image": true},
|
|
|
|
-
|
|
|
|
- // set default load state
|
|
|
|
-@@ -487,17 +486,17 @@ SessionStoreService.prototype = {
|
|
|
|
- this.saveState();
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
- /* ........ Window Event Handlers .............. */
|
|
|
|
-
|
|
|
|
- /**
|
|
|
|
-- * Implement nsIDOMEventListener for handling various window and tab events
|
|
|
|
-+ * Implement EventListener for handling various window and tab events
|
|
|
|
- */
|
|
|
|
- handleEvent: function sss_handleEvent(aEvent) {
|
|
|
|
- var win = aEvent.currentTarget.ownerDocument.defaultView;
|
|
|
|
- switch (aEvent.type) {
|
|
|
|
- case "load":
|
|
|
|
- // If __SS_restore_data is set, then we need to restore the document
|
|
|
|
- // (form data, scrolling, etc.). This will only happen when a tab is
|
|
|
|
- // first restored.
|
|
|
|
-diff --git a/suite/mailnews/content/tabmail.xml b/suite/mailnews/content/tabmail.xml
|
|
|
|
---- a/suite/mailnews/content/tabmail.xml
|
|
|
|
-+++ b/suite/mailnews/content/tabmail.xml
|
|
|
|
-@@ -1051,17 +1051,17 @@
|
|
|
|
- position="after_end"/>
|
|
|
|
- </xul:toolbarbutton>
|
|
|
|
- </xul:stack>
|
|
|
|
- </xul:hbox>
|
|
|
|
- </xul:stack>
|
|
|
|
- </xul:stack>
|
|
|
|
- </content>
|
|
|
|
-
|
|
|
|
-- <implementation implements="nsITimerCallback, nsIDOMEventListener, nsIObserver">
|
|
|
|
-+ <implementation implements="nsITimerCallback, nsIObserver">
|
|
|
|
- <constructor>
|
|
|
|
- <![CDATA[
|
|
|
|
- this.mTabMinWidth = Services.prefs.getIntPref ("browser.tabs.tabMinWidth");
|
|
|
|
- this.mTabMaxWidth = Services.prefs.getIntPref ("browser.tabs.tabMaxWidth");
|
|
|
|
- this.mTabClipWidth = Services.prefs.getIntPref ("browser.tabs.tabClipWidth");
|
|
|
|
- this.mCloseButtons = Services.prefs.getIntPref ("browser.tabs.closeButtons");
|
|
|
|
- this.firstChild.minWidth = this.mTabMinWidth;
|
|
|
|
- this.firstChild.maxWidth = this.mTabMaxWidth;
|
|
|
|
-@@ -1319,17 +1319,17 @@
|
|
|
|
- This binding relies on the structure of the tabbrowser binding.
|
|
|
|
- Therefore it should only be used as a child of the tabs element.
|
|
|
|
- This binding is exposed as a pseudo-public-API so themes can customize
|
|
|
|
- the tabbar appearance without having to be scriptable
|
|
|
|
- (see globalBindings.xml in osx for example).
|
|
|
|
- -->
|
|
|
|
- <binding id="tabmail-alltabs-popup"
|
|
|
|
- extends="chrome://global/content/bindings/popup.xml#popup">
|
|
|
|
-- <implementation implements="nsIDOMEventListener">
|
|
|
|
-+ <implementation>
|
|
|
|
- <method name="_tabOnTabClose">
|
|
|
|
- <parameter name="aEvent"/>
|
|
|
|
- <body>
|
|
|
|
- <![CDATA[
|
|
|
|
- let menuItem = aEvent.target.mCorrespondingMenuitem;
|
|
|
|
- if (menuItem)
|
|
|
|
- menuItem.remove();
|
|
|
|
- ]]>
|
|
|
|
-diff --git a/suite/modules/WindowsPreviewPerTab.jsm b/suite/modules/WindowsPreviewPerTab.jsm
|
|
|
|
---- a/suite/modules/WindowsPreviewPerTab.jsm
|
|
|
|
-+++ b/suite/modules/WindowsPreviewPerTab.jsm
|
|
|
|
-@@ -154,18 +154,17 @@ function PreviewController(win, tab) {
|
|
|
|
- XPCOMUtils.defineLazyGetter(this, "canvasPreview", function () {
|
|
|
|
- let canvas = PageThumbs.createCanvas();
|
|
|
|
- canvas.mozOpaque = true;
|
|
|
|
- return canvas;
|
|
|
|
- });
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- PreviewController.prototype = {
|
|
|
|
-- QueryInterface: XPCOMUtils.generateQI([Ci.nsITaskbarPreviewController,
|
|
|
|
-- Ci.nsIDOMEventListener]),
|
|
|
|
-+ QueryInterface: XPCOMUtils.generateQI([Ci.nsITaskbarPreviewController]),
|
|
|
|
-
|
|
|
|
- _cachedWidth: 0,
|
|
|
|
- _cachedHeight: 0,
|
|
|
|
-
|
|
|
|
- destroy: function () {
|
|
|
|
- this.tab.removeEventListener("TabAttrModified", this);
|
|
|
|
-
|
|
|
|
- // Break cycles, otherwise we end up leaking the window with everything
|
|
|
|
-@@ -332,17 +331,17 @@ PreviewController.prototype = {
|
|
|
|
- onActivate: function () {
|
|
|
|
- this.win.tabbrowser.selectedTab = this.tab;
|
|
|
|
-
|
|
|
|
- // Accept activation - this will restore the browser window
|
|
|
|
- // if it's minimized.
|
|
|
|
- return true;
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
-- // nsIDOMEventListener
|
|
|
|
-+ // EventListener
|
|
|
|
- handleEvent: function (evt) {
|
|
|
|
- switch (evt.type) {
|
|
|
|
- case "TabAttrModified":
|
|
|
|
- this.updateTitleAndTooltip();
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- };
|
|
|
|
-@@ -497,17 +496,17 @@ TabWindow.prototype = {
|
|
|
|
- // on it the sorting order of our local array. To do so we must walk
|
|
|
|
- // the local array backwards, otherwise we would send move requests in the
|
|
|
|
- // wrong order. See bug 522610 for details.
|
|
|
|
- for (let i = inorder.length - 1; i >= 0; i--) {
|
|
|
|
- inorder[i].move(inorder[i + 1] || null);
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
-
|
|
|
|
-- //// nsIDOMEventListener
|
|
|
|
-+ // EventListener
|
|
|
|
- handleEvent: function (evt) {
|
|
|
|
- let tab = evt.originalTarget;
|
|
|
|
- switch (evt.type) {
|
|
|
|
- case "TabOpen":
|
|
|
|
- this.newTab(tab);
|
|
|
|
- this.updateTabOrdering();
|
|
|
|
- break;
|
|
|
|
- case "TabClose":
|
|
|