[Pkg-mozext-commits] [tabmixplus] 128/147: Eslint indent rule is more strict in version 4.0
David Prévot
taffit at moszumanska.debian.org
Sat Aug 5 15:27:44 UTC 2017
This is an automated email from the git hooks/post-receive script.
taffit pushed a commit to branch master
in repository tabmixplus.
commit daa901513a09fa14b95fdad533c6740419069918
Author: onemen <tabmix.onemen at gmail.com>
Date: Tue Apr 11 19:30:29 2017 +0300
Eslint indent rule is more strict in version 4.0
---
.eslintrc.js | 10 +-
chrome/content/click/click.js | 18 +-
chrome/content/extensions/extensions.js | 4 +-
chrome/content/flst/lasttab.js | 12 +-
chrome/content/links/setup.js | 14 +-
chrome/content/links/userInterface.js | 6 +-
chrome/content/minit/minit.js | 28 +-
chrome/content/minit/tabView.js | 1084 ++++++++++----------
chrome/content/minit/tablib.js | 52 +-
chrome/content/overlay/removeBlankTab.js | 10 +-
chrome/content/places/places.js | 16 +-
.../preferences/overlay/preferencesOverlay.js | 4 +-
chrome/content/preferences/preferences.js | 6 +-
chrome/content/preferences/shortcuts.js | 4 +-
chrome/content/preferences/shortcuts.xml | 2 +-
.../preferences/subdialogs/pref-appearance.js | 2 +-
.../preferences/subdialogs/pref-appearance.xml | 3 +-
chrome/content/scripts/content.js | 10 +-
chrome/content/session/session.js | 116 +--
chrome/content/session/sessionStore.js | 148 +--
chrome/content/tab/scrollbox.xml | 3 +-
chrome/content/tab/tab.js | 86 +-
chrome/content/tab/tabbrowser_4.xml | 3 +-
chrome/content/tabmix.js | 26 +-
chrome/content/utils.js | 6 +-
modules/AboutNewTab.jsm | 6 +-
modules/AutoReload.jsm | 28 +-
modules/ContentClick.jsm | 64 +-
modules/Decode.jsm | 4 +-
modules/DynamicRules.jsm | 10 +-
modules/MergeWindows.jsm | 2 +-
modules/Places.jsm | 4 +-
modules/RenameTab.jsm | 4 +-
modules/Shortcuts.jsm | 4 +-
modules/SingleWindowModeUtils.jsm | 20 +-
modules/SyncedTabs.jsm | 2 +-
modules/TabGroupsMigrator.jsm | 8 +-
modules/TabRestoreQueue.jsm | 2 +-
modules/TabmixSvc.jsm | 3 +-
modules/Utils.jsm | 2 +-
modules/extensions/CompatibilityCheck.jsm | 14 +-
modules/log.jsm | 20 +-
42 files changed, 935 insertions(+), 935 deletions(-)
diff --git a/.eslintrc.js b/.eslintrc.js
index 0e4d327..a9ab9a4 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -194,11 +194,15 @@ module.exports = {
"id-length": 0,
"id-match": 0,
"indent": [2, 2, {
- "CallExpression": {"arguments": 1},
+ "SwitchCase": 1,
+ "VariableDeclarator": {"var": 2, "let": 2, "const": 3},
+ "outerIIFEBody": 1,
+ "MemberExpression": 2,
"FunctionDeclaration": {"body": 1, "parameters": "first"},
"FunctionExpression": {"body": 1, "parameters": "first"},
- "SwitchCase": 1,
- "VariableDeclarator": {"var": 2, "let": 2, "const": 3}
+ "CallExpression": {"arguments": 1},
+ "ArrayExpression": 1,
+ "ObjectExpression": 1
}],
"init-declarations": 0,
"jsx-quotes": 0,
diff --git a/chrome/content/click/click.js b/chrome/content/click/click.js
index d4286cc..a0f870f 100644
--- a/chrome/content/click/click.js
+++ b/chrome/content/click/click.js
@@ -140,8 +140,8 @@ var TabmixTabClickOptions = {
}
},
-/// add option to open new tab after current one
-/// convert this switch to object
+ /// add option to open new tab after current one
+ /// convert this switch to object
doCommand: function TMP_doCommand(command, aTab, clickOutTabs, event) {
gBrowser.selectedBrowser.focus();
switch (command) {
@@ -631,11 +631,11 @@ var TabmixContext = {
var protectedTab = tab.hasAttribute("protected");
var lockedTab = tab.hasAttribute("locked");
- /**
- * from Firefox 4.0 2009-09-11 there is gContextMenu.openLinkInCurrent
- * Firefox only show this menu when the selection text is url see Bug 454518
- * we check if gContextMenu.linkURL contain URL
- */
+ /**
+ * from Firefox 4.0 2009-09-11 there is gContextMenu.openLinkInCurrent
+ * Firefox only show this menu when the selection text is url see Bug 454518
+ * we check if gContextMenu.linkURL contain URL
+ */
var onLink = gContextMenu.onLink || gContextMenu.linkURL;
Tabmix.showItem("context-openlinkincurrent", Tabmix.prefs.getBoolPref("openLinkHere") && onLink);
var inverseLink = document.getElementById("tm-openinverselink");
@@ -745,7 +745,7 @@ var TabmixContext = {
openMultipleLinks: function TMP_openMultipleLinks(check) {
let urls = Tabmix.isVersion(420) ? gContextMenu.tabmixLinks :
- Tabmix.ContextMenu.getSelectedLinks(window.content, check);
+ Tabmix.ContextMenu.getSelectedLinks(window.content, check);
if (!check && urls.length) {
Tabmix.loadTabs(urls, false);
@@ -1023,7 +1023,7 @@ var TabmixAllTabs = {
let tabClr = TabmixSessionData.getTabValue(tab, "tabClr");
if (tabClr)
rule = "linear-gradient(rgba(255,255,255,.7),rgba(#1,.5),rgb(#1)),linear-gradient(rgb(#1),rgb(#1))"
- .replace(/#1/g, tabClr);
+ .replace(/#1/g, tabClr);
}
mi.style.setProperty('background-image', rule, 'important');
}
diff --git a/chrome/content/extensions/extensions.js b/chrome/content/extensions/extensions.js
index 4fa96a0..d812584 100644
--- a/chrome/content/extensions/extensions.js
+++ b/chrome/content/extensions/extensions.js
@@ -829,8 +829,8 @@ TMP_extensionsCompatibility.treeStyleTab = {
let props = "TreeStyleTabWindowHelper" in window &&
TreeStyleTabWindowHelper.extraProperties || [];
props = props.filter(prop => tab.hasAttribute(prop))
- .map(prop => `${prop}=${encodeURI(tab.getAttribute(prop))}`)
- .join(" ");
+ .map(prop => `${prop}=${encodeURI(tab.getAttribute(prop))}`)
+ .join(" ");
return props.length ? ` ${props}` : "";
},
};
diff --git a/chrome/content/flst/lasttab.js b/chrome/content/flst/lasttab.js
index 2f05213..a7c93e8 100644
--- a/chrome/content/flst/lasttab.js
+++ b/chrome/content/flst/lasttab.js
@@ -51,7 +51,7 @@ var TMP_LastTab = {
let tabBox = gBrowser.mTabBox;
let els = Cc["@mozilla.org/eventlistenerservice;1"]
- .getService(Ci.nsIEventListenerService);
+ .getService(Ci.nsIEventListenerService);
if (Tabmix.isVersion(320, 270)) {
els.removeSystemEventListener(tabBox._eventNode, "keydown", tabBox, false);
} else {
@@ -82,7 +82,7 @@ var TMP_LastTab = {
let tabBox = gBrowser.mTabBox;
let els = Cc["@mozilla.org/eventlistenerservice;1"]
- .getService(Ci.nsIEventListenerService);
+ .getService(Ci.nsIEventListenerService);
els.removeSystemEventListener(tabBox._eventNode, "keydown", this, false);
els.removeSystemEventListener(tabBox._eventNode, "keyup", this, false);
if (!Tabmix.isVersion(320, 270))
@@ -122,10 +122,10 @@ var TMP_LastTab = {
}
},
- /**
- * disallow mouse down on TabsToolbar to start dragging the window when one
- * of the key modifiers is down
- */
+ /**
+ * disallow mouse down on TabsToolbar to start dragging the window when one
+ * of the key modifiers is down
+ */
disallowDragwindow(keyDown) {
if (!Tabmix.isVersion(470)) {
return;
diff --git a/chrome/content/links/setup.js b/chrome/content/links/setup.js
index c3cddb3..161ca88 100644
--- a/chrome/content/links/setup.js
+++ b/chrome/content/links/setup.js
@@ -24,7 +24,7 @@ Tabmix.linkHandling_init = function TMP_TBP_init() {
if (autoComplete) {
// https://addons.mozilla.org/en-US/firefox/addon/quieturl/
let fn = typeof autoComplete._QuietUrlPopupClickOld == "function" ?
- "_QuietUrlPopupClickOld" : "PopupAutoCompleteRichResult.onPopupClick";
+ "_QuietUrlPopupClickOld" : "PopupAutoCompleteRichResult.onPopupClick";
let n = '\n ';
this.changeCode(autoComplete, fn)._replace(
/openUILink\(url, aEvent.*\);/,
@@ -101,7 +101,7 @@ Tabmix.beforeBrowserInitOnLoad = function() {
let hasFirstArgument = window.arguments && window.arguments[0];
if (hasFirstArgument) {
let defaultArgs = Cc["@mozilla.org/browser/clh;1"]
- .getService(Ci.nsIBrowserHandler).defaultArgs;
+ .getService(Ci.nsIBrowserHandler).defaultArgs;
if (window.arguments[0] == defaultArgs) {
SM.overrideHomepage = window.arguments[0];
window.arguments[0] = null;
@@ -200,7 +200,7 @@ Tabmix.beforeStartup = function TMP_beforeStartup(tabBrowser, aTabContainer) {
if (aBrowser.canGoForward || aBrowser.canGoBack)
return false;
return aboutBlank ? aBrowser.currentURI.spec == TabmixSvc.aboutBlank :
- Tabmix.isNewTabUrls(aBrowser.currentURI.spec);
+ Tabmix.isNewTabUrls(aBrowser.currentURI.spec);
} catch (ex) {
Tabmix.assert(ex);
return true;
@@ -325,10 +325,10 @@ Tabmix.adjustTabstrip = function tabContainer_adjustTabstrip(skipUpdateScrollSta
break;
}
- /**
- * Don't use return in this function
- * TreeStyleTab add some code at the end
- */
+ /**
+ * Don't use return in this function
+ * TreeStyleTab add some code at the end
+ */
let transitionend = Tabmix.callerTrace("onxbltransitionend");
if (tabsCount == 1) {
let tab = this.selectedItem;
diff --git a/chrome/content/links/userInterface.js b/chrome/content/links/userInterface.js
index 163f536..ddac4cf 100644
--- a/chrome/content/links/userInterface.js
+++ b/chrome/content/links/userInterface.js
@@ -36,7 +36,7 @@ Tabmix.openOptionsDialog = function TMP_openDialog(panel) {
// Speed-Dial, Fast-Dial, TabGroupManager
function TMP_BrowserOpenTab(aEvent, aTab, replaceLastTab) {
var newTabContent = replaceLastTab ? Tabmix.prefs.getIntPref("replaceLastTabWith.type") :
- Tabmix.prefs.getIntPref("loadOnNewTab.type");
+ Tabmix.prefs.getIntPref("loadOnNewTab.type");
var url;
var newTabUrl = BROWSER_NEW_TAB_URL;
var selectedTab = gBrowser.selectedTab;
@@ -60,7 +60,7 @@ function TMP_BrowserOpenTab(aEvent, aTab, replaceLastTab) {
case 4 : {// user url
if (replaceLastTab || !Tabmix.isVersion(410) || TabmixSvc.isCyberfox) {
let prefName = replaceLastTab ? "extensions.tabmix.replaceLastTabWith.newtab.url" :
- TabmixSvc.newtabUrl;
+ TabmixSvc.newtabUrl;
try {
url = Services.prefs.getComplexValue(prefName, Ci.nsISupportsString).data;
if (newTabUrl == "about:privatebrowsing" && url == TabmixSvc.aboutNewtab)
@@ -99,7 +99,7 @@ function TMP_BrowserOpenTab(aEvent, aTab, replaceLastTab) {
// always select new tab when replacing last tab
var loadInBackground = replaceLastTab ? false :
- Tabmix.prefs.getBoolPref("loadNewInBackground");
+ Tabmix.prefs.getBoolPref("loadNewInBackground");
let baseTab = aTab && aTab.localName == "tab" ? aTab : null;
let openTabNext = baseTab || !replaceLastTab && Tabmix.prefs.getBoolPref("openNewTabNext");
// Let accel-click and middle-click on the new tab button toggle openTabNext preference
diff --git a/chrome/content/minit/minit.js b/chrome/content/minit/minit.js
index 2b82ff6..2b0bfe9 100644
--- a/chrome/content/minit/minit.js
+++ b/chrome/content/minit/minit.js
@@ -68,7 +68,7 @@ var TMP_tabDNDObserver = {
'let tabCenter = tabScreenX + translateX + (tabmixHandleMove ? draggingRight * tabWidth : tabWidth / 2);'
)._replace(
tabsDragUtils ? /screenX = boxObject\[TDUContext.*;/ :
- /screenX = boxObject.*;/,
+ /screenX = boxObject.*;/,
'$&\n ' +
`let halfWidth;
if (tabmixHandleMove) {
@@ -77,7 +77,7 @@ var TMP_tabDNDObserver = {
}`
)._replace(
tabsDragUtils ? /screenX \+ boxObject\[TDUContext.* < tabCenter/ :
- /screenX \+ boxObject.* < tabCenter/,
+ /screenX \+ boxObject.* < tabCenter/,
'tabmixHandleMove ? screenX + halfWidth < tabCenter : $&'
)._replace(
'screenX > TDUContext.lastTabCenter',
@@ -270,14 +270,14 @@ var TMP_tabDNDObserver = {
var newIndex = this._getDNDIndex(event);
var oldIndex = dragType != this.DRAG_LINK ? sourceNode._tPos : -1;
var left_right; // 1:right, 0: left, -1: drop link on tab to replace tab
-///XXX check if we need here visibleTabs insteadof gBrowser.tabs
-/// check with groups with or without pinned tabs
+ ///XXX check if we need here visibleTabs insteadof gBrowser.tabs
+ /// check with groups with or without pinned tabs
if (newIndex < gBrowser.tabs.length)
left_right = this.getLeft_Right(event, newIndex, oldIndex, dragType);
else {
newIndex = dragType != this.DRAG_TAB_IN_SAME_WINDOW &&
Tabmix.getOpenTabNextPref(dragType == this.DRAG_LINK) ?
- tabBar.selectedIndex : gBrowser.tabs.length - 1;
+ tabBar.selectedIndex : gBrowser.tabs.length - 1;
left_right = 1;
}
@@ -335,7 +335,7 @@ var TMP_tabDNDObserver = {
// show Drag & Drop message
if (dragType == this.DRAG_LINK) {
this.gMsg = event.originalTarget.getAttribute("command") == "cmd_newNavigatorTab" ?
- this.gBackupLabel : this.draglink;
+ this.gBackupLabel : this.draglink;
if (event.target.localName != "tab" && event.target.localName != "tabs")
this.gMsg = this.gBackupLabel;
var statusTextFld = document.getElementById("statusbar-display");
@@ -378,7 +378,7 @@ var TMP_tabDNDObserver = {
}
if (_scroll) {
let scrollIncrement = TabmixTabbar.isMultiRow ?
- Math.round(tabStrip._singleRowHeight / 6) : tabStrip.scrollIncrement;
+ Math.round(tabStrip._singleRowHeight / 6) : tabStrip.scrollIncrement;
tabStrip.scrollByPixels((ltr ? _scroll : -_scroll) * scrollIncrement, true);
hideIndicator = true;
}
@@ -433,7 +433,7 @@ var TMP_tabDNDObserver = {
else {
newIndex = dragType != this.DRAG_TAB_IN_SAME_WINDOW &&
Tabmix.getOpenTabNextPref(dragType == this.DRAG_LINK) ?
- gBrowser.tabContainer.selectedIndex : gBrowser.tabs.length - 1;
+ gBrowser.tabContainer.selectedIndex : gBrowser.tabs.length - 1;
left_right = 1;
}
@@ -636,8 +636,8 @@ var TMP_tabDNDObserver = {
// screen.availLeft et. al. only check the screen that this window is on,
// but we want to look at the screen the tab is being dropped onto.
var screen = Cc["@mozilla.org/gfx/screenmanager;1"]
- .getService(Ci.nsIScreenManager)
- .screenForRect(eX, eY, 1, 1);
+ .getService(Ci.nsIScreenManager)
+ .screenForRect(eX, eY, 1, 1);
var fullX = {}, fullY = {}, fullWidth = {}, fullHeight = {};
var availX = {}, availY = {}, availWidth = {}, availHeight = {};
// get full screen rect and available rect, both in desktop pix
@@ -736,7 +736,7 @@ var TMP_tabDNDObserver = {
var numTabs = tabs.length;
if (!tabBar.hasAttribute("multibar")) {
let i = event.target.localName == "tab" ?
- Tabmix.visibleTabs.indexOf(event.target) : 0;
+ Tabmix.visibleTabs.indexOf(event.target) : 0;
for (; i < numTabs; i++) {
let tab = tabs[i];
if (Tabmix.compare(mX, Tabmix.itemEnd(tab, Tabmix.ltr), Tabmix.ltr))
@@ -1420,12 +1420,12 @@ Tabmix.navToolbox = {
})(window.esteban_torres || window);
let _handleSearchCommand = searchLoadExt ? searchLoadExt.MOZhandleSearch.toString() :
- searchbar.handleSearchCommand.toString();
+ searchbar.handleSearchCommand.toString();
// we check browser.search.openintab also for search button click
if (_handleSearchCommand.indexOf("whereToOpenLink") > -1 &&
_handleSearchCommand.indexOf("forceNewTab") == -1) {
[obj, fn] = searchLoadExt ? [searchLoadExt, "MOZhandleSearch"] :
- [searchbar, "handleSearchCommand"];
+ [searchbar, "handleSearchCommand"];
$LF = '\n ';
Tabmix.changeCode(obj, "searchbar." + fn)._replace(
'where = whereToOpenLink(aEvent, false, true);',
@@ -1439,7 +1439,7 @@ Tabmix.navToolbox = {
let organizeSE = "organizeSE" in window && "doSearch" in window.organizeSE;
[obj, fn] = searchLoadExt ? [searchLoadExt, "MOZdoSearch"] :
- [organizeSE ? window.organizeSE : searchbar, "doSearch"];
+ [organizeSE ? window.organizeSE : searchbar, "doSearch"];
if ("__treestyletab__original_doSearch" in searchbar)
[obj, fn] = [searchbar, "__treestyletab__original_doSearch"];
let fnString = obj[fn].toString();
diff --git a/chrome/content/minit/tabView.js b/chrome/content/minit/tabView.js
index ea02296..2e279ee 100644
--- a/chrome/content/minit/tabView.js
+++ b/chrome/content/minit/tabView.js
@@ -1,581 +1,581 @@
- "use strict";
-
- TMP_TabView.subScriptLoaded = true;
-
- TMP_TabView.handleEvent = function(aEvent) {
- switch (aEvent.type) {
- case "tabviewshown":
- TabmixSessionManager.saveTabViewData(TabmixSessionManager.gThisWin, true);
- break;
- case "tabviewhidden":
- TabmixSessionManager.saveTabViewData(TabmixSessionManager.gThisWin, true);
- TMP_LastTab.tabs = null;
- if (TabmixTabbar.hideMode != 2)
- setTimeout(() => gBrowser.tabContainer.adjustTabstrip(), 0);
- break;
- case "TabShow":
- if (!gBrowser.tabContainer._onDelayTabShow) {
- // pass aEvent to this function for use in TGM
- gBrowser.tabContainer._onDelayTabShow = window.setTimeout(event => {
- gBrowser.tabContainer._onDelayTabShow = null;
- TMP_eventListener.onTabOpen_delayUpdateTabBar(event.target);
- }, 0, aEvent);
- }
- break;
- case "TabHide":
- if (!gBrowser.tabContainer._onDelayTabHide) {
- // pass aEvent to this function for use in TGM
- gBrowser.tabContainer._onDelayTabHide = window.setTimeout(event => {
- gBrowser.tabContainer._onDelayTabHide = null;
- let tab = event.target;
- TMP_eventListener.onTabClose_updateTabBar(tab);
- }, 0, aEvent);
- }
- break;
- case "willshowtabview":
- Tabmix.slideshow.cancel();
- break;
- }
- };
-
- /* ............... TabView Code Fix ............... */
-
- /*
- * this code is fixes some bugs in Panorama code when restoring sessions
- *
- */
-
- TMP_TabView._patchBrowserTabview = function SM__patchBrowserTabview() {
- if (TabView.hasOwnProperty("tabmixInitialized")) {
- return;
- }
- TabView.tabmixInitialized = true;
-
- var tabView = document.getElementById("tab-view-deck");
- if (tabView) {
- tabView.addEventListener("tabviewhidden", this, true);
- tabView.addEventListener("tabviewshown", this, true);
- gBrowser.tabContainer.addEventListener("TabShow", this, true);
- gBrowser.tabContainer.addEventListener("TabHide", this, true);
- }
-
- // we need to stop tabs slideShow before Tabview starts
- if (window.hasOwnProperty("tabGroups")) {
- // Tab Groups extension by Quicksaver
- // https://addons.mozilla.org/en-US/firefox/addon/tab-groups-panorama/
- window.addEventListener("willshowtabview", this, true);
- } else {
- let $LF = '\n ';
- Tabmix.changeCode(TabView, "TabView.toggle")._replace(
- 'this.show();',
- '{' + $LF +
+"use strict";
+
+TMP_TabView.subScriptLoaded = true;
+
+TMP_TabView.handleEvent = function(aEvent) {
+ switch (aEvent.type) {
+ case "tabviewshown":
+ TabmixSessionManager.saveTabViewData(TabmixSessionManager.gThisWin, true);
+ break;
+ case "tabviewhidden":
+ TabmixSessionManager.saveTabViewData(TabmixSessionManager.gThisWin, true);
+ TMP_LastTab.tabs = null;
+ if (TabmixTabbar.hideMode != 2)
+ setTimeout(() => gBrowser.tabContainer.adjustTabstrip(), 0);
+ break;
+ case "TabShow":
+ if (!gBrowser.tabContainer._onDelayTabShow) {
+ // pass aEvent to this function for use in TGM
+ gBrowser.tabContainer._onDelayTabShow = window.setTimeout(event => {
+ gBrowser.tabContainer._onDelayTabShow = null;
+ TMP_eventListener.onTabOpen_delayUpdateTabBar(event.target);
+ }, 0, aEvent);
+ }
+ break;
+ case "TabHide":
+ if (!gBrowser.tabContainer._onDelayTabHide) {
+ // pass aEvent to this function for use in TGM
+ gBrowser.tabContainer._onDelayTabHide = window.setTimeout(event => {
+ gBrowser.tabContainer._onDelayTabHide = null;
+ let tab = event.target;
+ TMP_eventListener.onTabClose_updateTabBar(tab);
+ }, 0, aEvent);
+ }
+ break;
+ case "willshowtabview":
+ Tabmix.slideshow.cancel();
+ break;
+ }
+};
+
+/* ............... TabView Code Fix ............... */
+
+/**
+ * this code is fixes some bugs in Panorama code when restoring sessions
+ *
+ */
+
+TMP_TabView._patchBrowserTabview = function SM__patchBrowserTabview() {
+ if (TabView.hasOwnProperty("tabmixInitialized")) {
+ return;
+ }
+ TabView.tabmixInitialized = true;
+
+ var tabView = document.getElementById("tab-view-deck");
+ if (tabView) {
+ tabView.addEventListener("tabviewhidden", this, true);
+ tabView.addEventListener("tabviewshown", this, true);
+ gBrowser.tabContainer.addEventListener("TabShow", this, true);
+ gBrowser.tabContainer.addEventListener("TabHide", this, true);
+ }
+
+ // we need to stop tabs slideShow before Tabview starts
+ if (window.hasOwnProperty("tabGroups")) {
+ // Tab Groups extension by Quicksaver
+ // https://addons.mozilla.org/en-US/firefox/addon/tab-groups-panorama/
+ window.addEventListener("willshowtabview", this, true);
+ } else {
+ let $LF = '\n ';
+ Tabmix.changeCode(TabView, "TabView.toggle")._replace(
+ 'this.show();',
+ '{' + $LF +
' Tabmix.slideshow.cancel();' + $LF +
' $&' + $LF +
'}'
- ).toCode();
- }
-
- // don't do anything if Session Manager extension installed
- if (Tabmix.extensions.sessionManager)
- return;
-
- // add our function to the TabView initFrameCallbacks
- // we don't need our patch for the first run
- var callback = () => {
- try {
- TabmixSessionManager._groupItemPushAway();
- this._patchTabviewFrame();
- } catch (ex) {
- Tabmix.assert(ex);
- }
- };
+ ).toCode();
+ }
- if (TabView._window)
- callback();
- else
- TabView._initFrameCallbacks.push(callback);
- };
+ // don't do anything if Session Manager extension installed
+ if (Tabmix.extensions.sessionManager)
+ return;
- TMP_TabView._patchInitialized = false;
- TMP_TabView._patchTabviewFrame = function SM__patchTabviewFrame() {
- // Tab Groups extension by Quicksaver includes these changes in its code
- if (window.hasOwnProperty("tabGroups")) {
- return;
+ // add our function to the TabView initFrameCallbacks
+ // we don't need our patch for the first run
+ var callback = () => {
+ try {
+ TabmixSessionManager._groupItemPushAway();
+ this._patchTabviewFrame();
+ } catch (ex) {
+ Tabmix.assert(ex);
}
+ };
- this._patchInitialized = true;
- TabView._window.GroupItems._original_reconstitute = TabView._window.GroupItems.reconstitute;
- TabView._window.GroupItems.reconstitute = function(groupItemsData, groupItemData) {
- let validate = function(groupItem, data) {
- // This group is re-used by session restore
- // make sure all of its children still belong to this group.
- // Do it before setBounds trigger data save that will overwrite
- // session restore data.
- // TabView will use TabItems.resumeReconnecting or UI.reset to reconnect the tabItem.
- groupItem.getChildren().forEach(tabItem => {
- let tabData = TabmixSessionData.getTabValue(tabItem.tab, "tabview-tab", true);
- if (!tabData || tabData.groupID != data.id) {
- tabItem._reconnected = false;
- }
- });
- };
- if (groupItemData) {
- let storageSanity = this.groupItemStorageSanity || this.storageSanityGroupItem;
- let ids = Object.keys(groupItemData);
- for (let id of ids) {
- let data = groupItemData[id];
- if (storageSanity(data)) {
- let groupItem = this.groupItem(data.id);
- if (groupItem && !groupItem.hidden) {
- validate(groupItem, data);
- }
+ if (TabView._window)
+ callback();
+ else
+ TabView._initFrameCallbacks.push(callback);
+};
+
+TMP_TabView._patchInitialized = false;
+TMP_TabView._patchTabviewFrame = function SM__patchTabviewFrame() {
+ // Tab Groups extension by Quicksaver includes these changes in its code
+ if (window.hasOwnProperty("tabGroups")) {
+ return;
+ }
+
+ this._patchInitialized = true;
+ TabView._window.GroupItems._original_reconstitute = TabView._window.GroupItems.reconstitute;
+ TabView._window.GroupItems.reconstitute = function(groupItemsData, groupItemData) {
+ let validate = function(groupItem, data) {
+ // This group is re-used by session restore
+ // make sure all of its children still belong to this group.
+ // Do it before setBounds trigger data save that will overwrite
+ // session restore data.
+ // TabView will use TabItems.resumeReconnecting or UI.reset to reconnect the tabItem.
+ groupItem.getChildren().forEach(tabItem => {
+ let tabData = TabmixSessionData.getTabValue(tabItem.tab, "tabview-tab", true);
+ if (!tabData || tabData.groupID != data.id) {
+ tabItem._reconnected = false;
+ }
+ });
+ };
+ if (groupItemData) {
+ let storageSanity = this.groupItemStorageSanity || this.storageSanityGroupItem;
+ let ids = Object.keys(groupItemData);
+ for (let id of ids) {
+ let data = groupItemData[id];
+ if (storageSanity(data)) {
+ let groupItem = this.groupItem(data.id);
+ if (groupItem && !groupItem.hidden) {
+ validate(groupItem, data);
}
}
}
- this._original_reconstitute.apply(this, arguments);
- };
-
- if (window.hasOwnProperty("tabGroups")) {
- // reconnect tabs that we disconnected in reconstitute
- TabView._window.UI.reset = function() {
- TabItems.resumeReconnecting();
- this._original_reset.apply(this, arguments);
- };
- return;
}
+ this._original_reconstitute.apply(this, arguments);
+ };
- // add tab to the new group on tabs order not tabItem order
- Tabmix.changeCode(TabView._window.UI, "TabView._window.UI.reset")._replace(
- '{',
- '$&' +
- 'let win = TabView._window;' +
- 'let Trenches = win.Trenches;' +
- 'let Items = win.Items;' +
- 'let iQ = win.iQ;' +
- 'let Rect = win.Rect;' +
- 'let GroupItems = win.GroupItems;' +
- 'let GroupItem = win.GroupItem;' +
- 'let TabItems = win.TabItems;' +
- 'let UI = win.UI;', {silent: true}
- )._replace(
- 'this.',
- 'UI.', {flags: "g", silent: true}
- )._replace(
- /items\.forEach\(function\s*\(item\)\s*\{/,
- 'Array.prototype.forEach.call(gBrowser.tabs, function(tab) { \
+ if (window.hasOwnProperty("tabGroups")) {
+ // reconnect tabs that we disconnected in reconstitute
+ TabView._window.UI.reset = function() {
+ TabItems.resumeReconnecting();
+ this._original_reset.apply(this, arguments);
+ };
+ return;
+ }
+
+ // add tab to the new group on tabs order not tabItem order
+ Tabmix.changeCode(TabView._window.UI, "TabView._window.UI.reset")._replace(
+ '{',
+ '$&' +
+ 'let win = TabView._window;' +
+ 'let Trenches = win.Trenches;' +
+ 'let Items = win.Items;' +
+ 'let iQ = win.iQ;' +
+ 'let Rect = win.Rect;' +
+ 'let GroupItems = win.GroupItems;' +
+ 'let GroupItem = win.GroupItem;' +
+ 'let TabItems = win.TabItems;' +
+ 'let UI = win.UI;', {silent: true}
+ )._replace(
+ 'this.',
+ 'UI.', {flags: "g", silent: true}
+ )._replace(
+ /items\.forEach\(function\s*\(item\)\s*\{/,
+ 'Array.prototype.forEach.call(gBrowser.tabs, function(tab) { \
if (tab.pinned) return;\
let item = tab._tabViewTabItem;'
- )._replace(
- /groupItem.add\(.*\);/,
- 'item._reconnected = true; \
+ )._replace(
+ /groupItem.add\(.*\);/,
+ 'item._reconnected = true; \
$&'
- ).toCode();
- };
-
- TMP_TabView._resetTabviewFrame = function SM__resetTabviewFrame() {
- var tabView = document.getElementById("tab-view-deck");
- if (tabView) {
- tabView.removeEventListener("tabviewhidden", this, true);
- tabView.removeEventListener("tabviewshown", this, true);
- gBrowser.tabContainer.removeEventListener("TabShow", this, true);
- gBrowser.tabContainer.removeEventListener("TabHide", this, true);
- }
- window.removeEventListener("willshowtabview", this, true);
+ ).toCode();
+};
+
+TMP_TabView._resetTabviewFrame = function SM__resetTabviewFrame() {
+ var tabView = document.getElementById("tab-view-deck");
+ if (tabView) {
+ tabView.removeEventListener("tabviewhidden", this, true);
+ tabView.removeEventListener("tabviewshown", this, true);
+ gBrowser.tabContainer.removeEventListener("TabShow", this, true);
+ gBrowser.tabContainer.removeEventListener("TabHide", this, true);
+ }
+ window.removeEventListener("willshowtabview", this, true);
+
+ if (this._patchInitialized && TabView._window) {
+ TabView._window.GroupItems.reconstitute = TabView._window.GroupItems._original_reconstitute;
+ delete TabView._window.GroupItems._original_reconstitute;
+ TabView._window.UI.reset = TabView._window.UI._original_reset;
+ delete TabView._window.UI._original_reset;
+ }
+};
+
+/* ............... TabmixSessionManager TabView Data ............... */
+
+// winData: SessionStore window state
+TabmixSessionManager._setWindowStateBusy = function(winData) {
+ this._beforeRestore(winData);
+ if (!this.tabViewInstalled) {
+ return;
+ }
+
+ this._getSessionTabviewData(winData);
+ this._updateUIpageBounds = false;
+};
+
+TabmixSessionManager._setWindowStateReady = function(aOverwriteTabs, showNotification, tabsRemoved) {
+ if (Tabmix.isVersion(350)) {
+ TabmixSvc.SessionStore._setWindowStateReady(window);
+ }
+ if (!this.tabViewInstalled) {
+ this.notifyAboutMissingTabView(tabsRemoved);
+ return;
+ }
+
+ if (!aOverwriteTabs)
+ this._groupItems = this._tabviewData["tabview-group"];
+
+ var parsedData = TabmixSessionData.getWindowValue(window, "tabview-groups", true);
+ var groupCount = parsedData.totalNumber || 1;
+ TabView.updateGroupNumberBroadcaster(groupCount);
+
+ // show notification
+ ///XXX make sure that we have hidden tabs
+ if (showNotification && (aOverwriteTabs && groupCount > 1 || groupCount > this._groupCount))
+ this.showNotification();
- if (this._patchInitialized && TabView._window) {
- TabView._window.GroupItems.reconstitute = TabView._window.GroupItems._original_reconstitute;
- delete TabView._window.GroupItems._original_reconstitute;
- TabView._window.UI.reset = TabView._window.UI._original_reset;
- delete TabView._window.UI._original_reset;
- }
- };
-
- /* ............... TabmixSessionManager TabView Data ............... */
-
- // winData: SessionStore window state
- TabmixSessionManager._setWindowStateBusy = function(winData) {
- this._beforeRestore(winData);
- if (!this.tabViewInstalled) {
- return;
- }
-
- this._getSessionTabviewData(winData);
- this._updateUIpageBounds = false;
- };
-
- TabmixSessionManager._setWindowStateReady = function(aOverwriteTabs, showNotification, tabsRemoved) {
- if (Tabmix.isVersion(350)) {
- TabmixSvc.SessionStore._setWindowStateReady(window);
- }
- if (!this.tabViewInstalled) {
- this.notifyAboutMissingTabView(tabsRemoved);
- return;
- }
-
- if (!aOverwriteTabs)
- this._groupItems = this._tabviewData["tabview-group"];
-
- var parsedData = TabmixSessionData.getWindowValue(window, "tabview-groups", true);
- var groupCount = parsedData.totalNumber || 1;
- TabView.updateGroupNumberBroadcaster(groupCount);
-
- // show notification
-///XXX make sure that we have hidden tabs
- if (showNotification && (aOverwriteTabs && groupCount > 1 || groupCount > this._groupCount))
- this.showNotification();
-
- // update page bounds when we overwrite tabs
- if (aOverwriteTabs || this._updateUIpageBounds)
- this._setPageBounds();
-
- if (TabView._window && !aOverwriteTabs) {
- // when we don't overwriting tabs try to rearrange the groupItems
- // when TabView._window is false we call this function after tabviewframeinitialized event
- this._groupItemPushAway();
- }
-
- this.groupUpdates = {};
- this._tabviewData = {};
- };
-
- TabmixSessionManager.groupUpdates = {};
- TabmixSessionManager._tabviewData = {};
- TabmixSessionManager._groupItems = null;
-
- // winData: SessionStore window state
- TabmixSessionManager._getSessionTabviewData = function(winData) {
- let extData = winData.extData || {};
- function _fixData(id, parse, def) {
- let data = extData[id] || null;
- if (data) {
- return parse ? TabmixSvc.JSON.parse(data) : data;
- }
- return def;
- }
-
- let groupItems = _fixData("tabview-group", true, {});
- let groupsData = _fixData("tabview-groups", true, {});
- this._validateGroupsData(groupItems, groupsData);
- this._tabviewData["tabview-group"] = groupItems;
- this._tabviewData["tabview-groups"] = groupsData;
- this.groupUpdates.lastActiveGroupId = groupsData.activeGroupId;
-
- this._tabviewData["tabview-ui"] = _fixData("tabview-ui", false, TabmixSvc.JSON.stringify({}));
- this._tabviewData["tabview-visibility"] = _fixData("tabview-visibility", false, "false");
- };
-
- TabmixSessionManager._saveTabviewData = function SM__saveTabviewData() {
- if (!this.tabViewInstalled) {
- return;
- }
-
- for (let id of Object.keys(this._tabviewData)) {
- this._setTabviewData(id, this._tabviewData[id]);
- }
- };
-
- TabmixSessionManager._setTabviewData = function SM__setTabviewData(id, data) {
- if (typeof (data) != "string")
- data = TabmixSvc.JSON.stringify(data);
- TabmixSvc.ss.setWindowValue(window, id, data);
- if (!this.enableBackup)
- return;
- if (data !== "" && data != "{}")
- this.setLiteral(this.gThisWin, id, data);
- else
- this.removeAttribute(this.gThisWin, id);
- };
-
- TabmixSessionManager._setTabviewTab = function SM__setTabviewTab(aTab, tabdata, activeGroupId) {
- if (!this.tabViewInstalled || tabdata.pinned)
- return;
-
- let parsedData;
- function setData(groupID) {
- let data = {groupID};
- parsedData = data;
- return TabmixSvc.JSON.stringify(data);
+ // update page bounds when we overwrite tabs
+ if (aOverwriteTabs || this._updateUIpageBounds)
+ this._setPageBounds();
+
+ if (TabView._window && !aOverwriteTabs) {
+ // when we don't overwriting tabs try to rearrange the groupItems
+ // when TabView._window is false we call this function after tabviewframeinitialized event
+ this._groupItemPushAway();
+ }
+
+ this.groupUpdates = {};
+ this._tabviewData = {};
+};
+
+TabmixSessionManager.groupUpdates = {};
+TabmixSessionManager._tabviewData = {};
+TabmixSessionManager._groupItems = null;
+
+// winData: SessionStore window state
+TabmixSessionManager._getSessionTabviewData = function(winData) {
+ let extData = winData.extData || {};
+ function _fixData(id, parse, def) {
+ let data = extData[id] || null;
+ if (data) {
+ return parse ? TabmixSvc.JSON.parse(data) : data;
}
-
- var update = this.groupUpdates;
- var id = "tabview-tab";
- var tabviewData;
- if (update.newGroupID) {
- // We are here only when the restored session did not have tabview data
- // we create new group and fill all the data
- tabviewData = setData(update.newGroupID);
- } else {
- tabviewData = tabdata.extData && tabdata.extData["tabview-tab"] || null;
- // make sure data is not "null"
- if (!tabviewData || tabviewData == "null") {
- if (update.lastActiveGroupId)
- tabviewData = setData(update.lastActiveGroupId);
- else {
- // force Panorama to reconnect all reused tabs
- if (aTab._tabViewTabItem) {
- // remove any old data
- aTab._tabViewTabItem._reconnected = false;
- try {
- TabmixSvc.ss.deleteTabValue(aTab, id);
- } catch (ex) { }
- if (tabdata.extData)
- delete tabdata.extData["tabview-tab"];
- }
- return;
- }
- }
-
- if (update.IDs) {
- parsedData = TabmixSvc.JSON.parse(tabviewData);
- if (parsedData.groupID in update.IDs) {
- parsedData.groupID = update.IDs[parsedData.groupID];
- tabviewData = TabmixSvc.JSON.stringify(parsedData);
+ return def;
+ }
+
+ let groupItems = _fixData("tabview-group", true, {});
+ let groupsData = _fixData("tabview-groups", true, {});
+ this._validateGroupsData(groupItems, groupsData);
+ this._tabviewData["tabview-group"] = groupItems;
+ this._tabviewData["tabview-groups"] = groupsData;
+ this.groupUpdates.lastActiveGroupId = groupsData.activeGroupId;
+
+ this._tabviewData["tabview-ui"] = _fixData("tabview-ui", false, TabmixSvc.JSON.stringify({}));
+ this._tabviewData["tabview-visibility"] = _fixData("tabview-visibility", false, "false");
+};
+
+TabmixSessionManager._saveTabviewData = function SM__saveTabviewData() {
+ if (!this.tabViewInstalled) {
+ return;
+ }
+
+ for (let id of Object.keys(this._tabviewData)) {
+ this._setTabviewData(id, this._tabviewData[id]);
+ }
+};
+
+TabmixSessionManager._setTabviewData = function SM__setTabviewData(id, data) {
+ if (typeof (data) != "string")
+ data = TabmixSvc.JSON.stringify(data);
+ TabmixSvc.ss.setWindowValue(window, id, data);
+ if (!this.enableBackup)
+ return;
+ if (data !== "" && data != "{}")
+ this.setLiteral(this.gThisWin, id, data);
+ else
+ this.removeAttribute(this.gThisWin, id);
+};
+
+TabmixSessionManager._setTabviewTab = function SM__setTabviewTab(aTab, tabdata, activeGroupId) {
+ if (!this.tabViewInstalled || tabdata.pinned)
+ return;
+
+ let parsedData;
+ function setData(groupID) {
+ let data = {groupID};
+ parsedData = data;
+ return TabmixSvc.JSON.stringify(data);
+ }
+
+ var update = this.groupUpdates;
+ var id = "tabview-tab";
+ var tabviewData;
+ if (update.newGroupID) {
+ // We are here only when the restored session did not have tabview data
+ // we create new group and fill all the data
+ tabviewData = setData(update.newGroupID);
+ } else {
+ tabviewData = tabdata.extData && tabdata.extData["tabview-tab"] || null;
+ // make sure data is not "null"
+ if (!tabviewData || tabviewData == "null") {
+ if (update.lastActiveGroupId)
+ tabviewData = setData(update.lastActiveGroupId);
+ else {
+ // force Panorama to reconnect all reused tabs
+ if (aTab._tabViewTabItem) {
+ // remove any old data
+ aTab._tabViewTabItem._reconnected = false;
+ try {
+ TabmixSvc.ss.deleteTabValue(aTab, id);
+ } catch (ex) { }
+ if (tabdata.extData)
+ delete tabdata.extData["tabview-tab"];
}
+ return;
}
}
- if (tabviewData) {
- if (!tabdata.extData)
- tabdata.extData = {};
- tabdata.extData["tabview-tab"] = tabviewData;
- // we did not saved hidden attribute when we use TGM
- // hide all tabs that are not in the active group
- if (!Tabmix.extensions.tabGroupManager && activeGroupId !== null) {
- if (!parsedData)
- parsedData = TabmixSvc.JSON.parse(tabviewData);
- if (parsedData.groupID != activeGroupId)
- tabdata.hidden = true;
+ if (update.IDs) {
+ parsedData = TabmixSvc.JSON.parse(tabviewData);
+ if (parsedData.groupID in update.IDs) {
+ parsedData.groupID = update.IDs[parsedData.groupID];
+ tabviewData = TabmixSvc.JSON.stringify(parsedData);
}
- } else if (tabdata.extData) {
- delete tabdata.extData["tabview-tab"];
}
- };
-
- TabmixSessionManager.isEmptyObject = function SM_isEmptyObject(obj) {
- return Object.keys(obj).length === 0;
- };
-
- // return true if there are no visible tabs that are not in the exclude array
- TabmixSessionManager._noNormalTabs = function SM__noNormalTabs(excludeTabs) {
- if (!excludeTabs)
- excludeTabs = [];
-
- return !Array.prototype.some.call(gBrowser.tabs, tab => {
- return !tab.pinned && !tab.hidden && !tab.closing &&
- excludeTabs.indexOf(tab) == -1;
- });
- };
-
- TabmixSessionManager._addGroupItem = function SM__addGroupItem(aGroupItems, aGroupsData, setAsActive) {
- let groupID = aGroupsData.nextID++;
- if (setAsActive) {
- aGroupsData.activeGroupId = groupID;
- this._lastSessionGroupName = "";
+ }
+
+ if (tabviewData) {
+ if (!tabdata.extData)
+ tabdata.extData = {};
+ tabdata.extData["tabview-tab"] = tabviewData;
+ // we did not saved hidden attribute when we use TGM
+ // hide all tabs that are not in the active group
+ if (!Tabmix.extensions.tabGroupManager && activeGroupId !== null) {
+ if (!parsedData)
+ parsedData = TabmixSvc.JSON.parse(tabviewData);
+ if (parsedData.groupID != activeGroupId)
+ tabdata.hidden = true;
}
- let bounds = {left: 0, top: 0, width: 350, height: 300};
- aGroupItems[groupID] = {bounds, userSize: null, title: "", id: groupID, newItem: true};
- aGroupsData.totalNumber = Object.keys(aGroupItems).length;
+ } else if (tabdata.extData) {
+ delete tabdata.extData["tabview-tab"];
+ }
+};
+
+TabmixSessionManager.isEmptyObject = function SM_isEmptyObject(obj) {
+ return Object.keys(obj).length === 0;
+};
+
+// return true if there are no visible tabs that are not in the exclude array
+TabmixSessionManager._noNormalTabs = function SM__noNormalTabs(excludeTabs) {
+ if (!excludeTabs)
+ excludeTabs = [];
+
+ return !Array.prototype.some.call(gBrowser.tabs, tab => {
+ return !tab.pinned && !tab.hidden && !tab.closing &&
+ excludeTabs.indexOf(tab) == -1;
+ });
+};
+
+TabmixSessionManager._addGroupItem = function SM__addGroupItem(aGroupItems, aGroupsData, setAsActive) {
+ let groupID = aGroupsData.nextID++;
+ if (setAsActive) {
+ aGroupsData.activeGroupId = groupID;
+ this._lastSessionGroupName = "";
+ }
+ let bounds = {left: 0, top: 0, width: 350, height: 300};
+ aGroupItems[groupID] = {bounds, userSize: null, title: "", id: groupID, newItem: true};
+ aGroupsData.totalNumber = Object.keys(aGroupItems).length;
+ this._tabviewData["tabview-group"] = aGroupItems;
+ this._tabviewData["tabview-groups"] = aGroupsData;
+};
+
+// Remove current active group only when it's empty and have no title
+TabmixSessionManager._deleteActiveGroup = function SM__deleteActiveGroup(aGroupItems, activeGroupId) {
+ let activeGroup = aGroupItems[activeGroupId];
+ if (activeGroup && activeGroup.title === "") {
+ delete aGroupItems[activeGroupId];
this._tabviewData["tabview-group"] = aGroupItems;
- this._tabviewData["tabview-groups"] = aGroupsData;
- };
-
- // Remove current active group only when it's empty and have no title
- TabmixSessionManager._deleteActiveGroup = function SM__deleteActiveGroup(aGroupItems, activeGroupId) {
- let activeGroup = aGroupItems[activeGroupId];
- if (activeGroup && activeGroup.title === "") {
- delete aGroupItems[activeGroupId];
- this._tabviewData["tabview-group"] = aGroupItems;
- }
- };
-
- // just in case.... and add totalNumber to firefox 4.0 - 5.0.x
- TabmixSessionManager._validateGroupsData = function SM__validateGroupsData(aGroupItems, aGroupsData) {
- if (this.isEmptyObject(aGroupItems))
- return;
-
- if (aGroupsData.nextID && aGroupsData.activeGroupId && aGroupsData.totalNumber)
- return;
- let keys = Object.keys(aGroupItems);
- if (!aGroupsData.nextID) {
- let nextID = 0;
- keys.forEach(key => {
- nextID = Math.max(aGroupItems[key].id, nextID);
- });
- aGroupsData.nextID = nextID++;
- }
- if (!aGroupsData.activeGroupId)
- aGroupsData.activeGroupId = aGroupItems[keys[0]].id;
- if (!aGroupsData.totalNumber)
- aGroupsData.totalNumber = keys.length;
- };
-
- /**
- * when we append tab to this window we merge group data from the session into the current group data
- * loadOnStartup: array of tabs that load on startup from application
- * blankTabs: remaining blank tabs in this windows
- */
- TabmixSessionManager._prepareTabviewData = function SM__prepareTabviewData(loadOnStartup, blankTabs) {
- if (!this.tabViewInstalled) {
- return;
- }
-
- let newGroupItems = this._tabviewData["tabview-group"];
- let groupItems = TabmixSessionData.getWindowValue(window, "tabview-group", true);
- let newGroupItemsIsEmpty = this.isEmptyObject(newGroupItems);
- let groupItemsIsEmpty = this.isEmptyObject(groupItems);
-
- if (newGroupItemsIsEmpty && groupItemsIsEmpty) {
- // just to be on the safe side
- // Tabview will force to add all tabs in one group
- this._tabviewData["tabview-group"] = {};
- this._tabviewData["tabview-groups"] = {};
- return;
- }
-
- var noNormalVisibleTabs = this._noNormalTabs(blankTabs.concat(loadOnStartup));
- if (!noNormalVisibleTabs)
- this.groupUpdates.hideSessionActiveGroup = true;
-
- // newGroupItems is not empty
- if (groupItemsIsEmpty) {
- // we can get here also on startup before we set any data to current window
-
- if (noNormalVisibleTabs)
- // nothing else to do we use this._tabviewData as is.
- this._updateUIpageBounds = true;
- else {
- // Tabview did not started
- // add all normal tabs to new group with the proper id
- let newGroupsData = this._tabviewData["tabview-groups"];
- this._addGroupItem(newGroupItems, newGroupsData, true);
-
- // update tabs data
- let groupID = newGroupsData.activeGroupId;
- for (let tab of gBrowser.tabs) {
- if (tab.pinned || tab.hidden || tab.closing || blankTabs.indexOf(tab) > -1)
- return;
- let data = {groupID};
- data = TabmixSvc.JSON.stringify(data);
- TabmixSvc.ss.setTabValue(tab, "tabview-tab", data);
- if (this.enableBackup)
- this.setLiteral(this.getNodeForTab(tab), "tabview-tab", data);
- }
- }
- return;
- }
-
- // groupItems is not empty
- let groupsData = TabmixSessionData.getWindowValue(window, "tabview-groups", true);
- // just in case data was corrupted
- this._validateGroupsData(groupItems, groupsData);
-
- if (newGroupItemsIsEmpty) {
- let createNewGroup = true;
- if (noNormalVisibleTabs) {
- // if active group is empty without title reuse it for
- // the tabs from the session.
- let activeGroup = groupItems[groupsData.activeGroupId];
- if (activeGroup && activeGroup.title === "") {
- createNewGroup = false;
- this.groupUpdates.newGroupID = groupsData.activeGroupId;
- this._tabviewData["tabview-group"] = groupItems;
- this._tabviewData["tabview-groups"] = groupsData;
- }
- }
-
- if (createNewGroup) {
- // We create new group here, and set it as active if there is no normal
- // tabs in this window, later we will create "tabview-tab" data in
- // SM__setTabviewTab for each normal tab.
- this.groupUpdates.newGroupID = groupsData.nextID;
- this._addGroupItem(groupItems, groupsData, noNormalVisibleTabs);
+ }
+};
+
+// just in case.... and add totalNumber to firefox 4.0 - 5.0.x
+TabmixSessionManager._validateGroupsData = function SM__validateGroupsData(aGroupItems, aGroupsData) {
+ if (this.isEmptyObject(aGroupItems))
+ return;
+
+ if (aGroupsData.nextID && aGroupsData.activeGroupId && aGroupsData.totalNumber)
+ return;
+ let keys = Object.keys(aGroupItems);
+ if (!aGroupsData.nextID) {
+ let nextID = 0;
+ keys.forEach(key => {
+ nextID = Math.max(aGroupItems[key].id, nextID);
+ });
+ aGroupsData.nextID = nextID++;
+ }
+ if (!aGroupsData.activeGroupId)
+ aGroupsData.activeGroupId = aGroupItems[keys[0]].id;
+ if (!aGroupsData.totalNumber)
+ aGroupsData.totalNumber = keys.length;
+};
+
+/**
+ * when we append tab to this window we merge group data from the session into the current group data
+ * loadOnStartup: array of tabs that load on startup from application
+ * blankTabs: remaining blank tabs in this windows
+ */
+TabmixSessionManager._prepareTabviewData = function SM__prepareTabviewData(loadOnStartup, blankTabs) {
+ if (!this.tabViewInstalled) {
+ return;
+ }
+
+ let newGroupItems = this._tabviewData["tabview-group"];
+ let groupItems = TabmixSessionData.getWindowValue(window, "tabview-group", true);
+ let newGroupItemsIsEmpty = this.isEmptyObject(newGroupItems);
+ let groupItemsIsEmpty = this.isEmptyObject(groupItems);
+
+ if (newGroupItemsIsEmpty && groupItemsIsEmpty) {
+ // just to be on the safe side
+ // Tabview will force to add all tabs in one group
+ this._tabviewData["tabview-group"] = {};
+ this._tabviewData["tabview-groups"] = {};
+ return;
+ }
+
+ var noNormalVisibleTabs = this._noNormalTabs(blankTabs.concat(loadOnStartup));
+ if (!noNormalVisibleTabs)
+ this.groupUpdates.hideSessionActiveGroup = true;
+
+ // newGroupItems is not empty
+ if (groupItemsIsEmpty) {
+ // we can get here also on startup before we set any data to current window
+
+ if (noNormalVisibleTabs)
+ // nothing else to do we use this._tabviewData as is.
+ this._updateUIpageBounds = true;
+ else {
+ // Tabview did not started
+ // add all normal tabs to new group with the proper id
+ let newGroupsData = this._tabviewData["tabview-groups"];
+ this._addGroupItem(newGroupItems, newGroupsData, true);
+
+ // update tabs data
+ let groupID = newGroupsData.activeGroupId;
+ for (let tab of gBrowser.tabs) {
+ if (tab.pinned || tab.hidden || tab.closing || blankTabs.indexOf(tab) > -1)
+ return;
+ let data = {groupID};
+ data = TabmixSvc.JSON.stringify(data);
+ TabmixSvc.ss.setTabValue(tab, "tabview-tab", data);
+ if (this.enableBackup)
+ this.setLiteral(this.getNodeForTab(tab), "tabview-tab", data);
}
-
- this._tabviewData["tabview-ui"] = TabmixSessionData.getWindowValue(window, "tabview-ui");
- return;
}
+ return;
+ }
- // both current window and the session that we are restoring have group data
-
- let IDs = {};
- for (let id of Object.keys(newGroupItems)) {
- newGroupItems[id].newItem = true;
- // change group id if already used in this window
- if (id in groupItems) {
- let newID = groupsData.nextID++;
- groupItems[newID] = newGroupItems[id];
- groupItems[newID].id = newID;
- // we will update tabview-tab data later
- IDs[id] = newID;
- } else {
- groupItems[id] = newGroupItems[id];
- if (id > groupsData.nextID)
- groupsData.nextID = id;
- }
- }
+ // groupItems is not empty
+ let groupsData = TabmixSessionData.getWindowValue(window, "tabview-groups", true);
+ // just in case data was corrupted
+ this._validateGroupsData(groupItems, groupsData);
- // When current active group is empty,
- // change active group to the active group from the session we are restoring.
+ if (newGroupItemsIsEmpty) {
+ let createNewGroup = true;
if (noNormalVisibleTabs) {
- this._deleteActiveGroup(groupItems, groupsData.activeGroupId);
- // set new activeGroupId
- let activeID = this._tabviewData["tabview-groups"].activeGroupId;
- groupsData.activeGroupId = activeID in IDs ? IDs[activeID] : activeID;
- this._updateUIpageBounds = true;
+ // if active group is empty without title reuse it for
+ // the tabs from the session.
+ let activeGroup = groupItems[groupsData.activeGroupId];
+ if (activeGroup && activeGroup.title === "") {
+ createNewGroup = false;
+ this.groupUpdates.newGroupID = groupsData.activeGroupId;
+ this._tabviewData["tabview-group"] = groupItems;
+ this._tabviewData["tabview-groups"] = groupsData;
+ }
}
- if (Object.keys(IDs).length > 0) {
- let id = this.groupUpdates.lastActiveGroupId;
- this.groupUpdates.lastActiveGroupId = IDs[id] || id;
- this.groupUpdates.IDs = IDs;
+ if (createNewGroup) {
+ // We create new group here, and set it as active if there is no normal
+ // tabs in this window, later we will create "tabview-tab" data in
+ // SM__setTabviewTab for each normal tab.
+ this.groupUpdates.newGroupID = groupsData.nextID;
+ this._addGroupItem(groupItems, groupsData, noNormalVisibleTabs);
}
- // update totalNumber
- groupsData.totalNumber = Object.keys(groupItems).length;
- // save data
- this._tabviewData["tabview-group"] = groupItems;
- this._tabviewData["tabview-groups"] = groupsData;
- };
-
- TabmixSessionManager.showNotification = function SM_showNotification() {
- var msg = TabmixSvc.getSMString("sm.tabview.hiddengroups");
- try {
- let alerts = Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService);
- alerts.showAlertNotification("chrome://tabmixplus/skin/tmp.png", "Tab Mix Plus", msg, false, "", null);
- } catch (e) { }
- };
-
- /* ............... TabView Code Fix ............... */
-
- // update page bounds when we overwrite tabs
- TabmixSessionManager._setPageBounds = function SM__setPageBounds() {
- if (TabView._window) {
- let data = TabmixSessionData.getWindowValue(window, "tabview-ui", true);
- if (this.isEmptyObject(data))
- return;
-
- let UI = TabView._window.UI;
- let storageSanity = UI._storageSanity || UI.storageSanity;
- if (storageSanity(data) && data.pageBounds) {
- TabView._window.UI._pageBounds = data.pageBounds;
- }
+ this._tabviewData["tabview-ui"] = TabmixSessionData.getWindowValue(window, "tabview-ui");
+ return;
+ }
+
+ // both current window and the session that we are restoring have group data
+
+ let IDs = {};
+ for (let id of Object.keys(newGroupItems)) {
+ newGroupItems[id].newItem = true;
+ // change group id if already used in this window
+ if (id in groupItems) {
+ let newID = groupsData.nextID++;
+ groupItems[newID] = newGroupItems[id];
+ groupItems[newID].id = newID;
+ // we will update tabview-tab data later
+ IDs[id] = newID;
+ } else {
+ groupItems[id] = newGroupItems[id];
+ if (id > groupsData.nextID)
+ groupsData.nextID = id;
}
- };
-
- // when not overwriting tabs try to rearrange the groupItems
- TabmixSessionManager._groupItemPushAway = function SM__groupItemPushAway() {
- if (!this._groupItems)
+ }
+
+ // When current active group is empty,
+ // change active group to the active group from the session we are restoring.
+ if (noNormalVisibleTabs) {
+ this._deleteActiveGroup(groupItems, groupsData.activeGroupId);
+ // set new activeGroupId
+ let activeID = this._tabviewData["tabview-groups"].activeGroupId;
+ groupsData.activeGroupId = activeID in IDs ? IDs[activeID] : activeID;
+ this._updateUIpageBounds = true;
+ }
+
+ if (Object.keys(IDs).length > 0) {
+ let id = this.groupUpdates.lastActiveGroupId;
+ this.groupUpdates.lastActiveGroupId = IDs[id] || id;
+ this.groupUpdates.IDs = IDs;
+ }
+
+ // update totalNumber
+ groupsData.totalNumber = Object.keys(groupItems).length;
+ // save data
+ this._tabviewData["tabview-group"] = groupItems;
+ this._tabviewData["tabview-groups"] = groupsData;
+};
+
+TabmixSessionManager.showNotification = function SM_showNotification() {
+ var msg = TabmixSvc.getSMString("sm.tabview.hiddengroups");
+ try {
+ let alerts = Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService);
+ alerts.showAlertNotification("chrome://tabmixplus/skin/tmp.png", "Tab Mix Plus", msg, false, "", null);
+ } catch (e) { }
+};
+
+/* ............... TabView Code Fix ............... */
+
+// update page bounds when we overwrite tabs
+TabmixSessionManager._setPageBounds = function SM__setPageBounds() {
+ if (TabView._window) {
+ let data = TabmixSessionData.getWindowValue(window, "tabview-ui", true);
+ if (this.isEmptyObject(data))
return;
- let GroupItems = TabView._window.GroupItems;
- for (let key of Object.keys(this._groupItems)) {
- let data = this._groupItems[key];
- if (data.newItem) {
- let group = GroupItems.groupItem(data.id);
- if (group && GroupItems.groupItemStorageSanity(data)) {
- group.pushAway(true);
- }
+ let UI = TabView._window.UI;
+ let storageSanity = UI._storageSanity || UI.storageSanity;
+ if (storageSanity(data) && data.pageBounds) {
+ TabView._window.UI._pageBounds = data.pageBounds;
+ }
+ }
+};
+
+// when not overwriting tabs try to rearrange the groupItems
+TabmixSessionManager._groupItemPushAway = function SM__groupItemPushAway() {
+ if (!this._groupItems)
+ return;
+
+ let GroupItems = TabView._window.GroupItems;
+ for (let key of Object.keys(this._groupItems)) {
+ let data = this._groupItems[key];
+ if (data.newItem) {
+ let group = GroupItems.groupItem(data.id);
+ if (group && GroupItems.groupItemStorageSanity(data)) {
+ group.pushAway(true);
}
}
- this._groupItems = null;
- };
+ }
+ this._groupItems = null;
+};
diff --git a/chrome/content/minit/tablib.js b/chrome/content/minit/tablib.js
index 2d30f54..1396475 100644
--- a/chrome/content/minit/tablib.js
+++ b/chrome/content/minit/tablib.js
@@ -260,7 +260,7 @@ Tabmix.tablib = {
let aboutBlank = 'this.addTab("about:blank", {skipAnimation: true})';
let aboutNewtab = 'this.addTab(BROWSER_NEW_TAB_URL, {skipAnimation: true})';
let code = gBrowser._beginRemoveTab.toString().indexOf(aboutNewtab) > -1 ?
- aboutNewtab : aboutBlank;
+ aboutNewtab : aboutBlank;
Tabmix.changeCode(gBrowser, "gBrowser._beginRemoveTab")._replace(
code, 'TMP_BrowserOpenTab(null, null, true)'
).toCode();
@@ -607,7 +607,7 @@ Tabmix.tablib = {
}
let pref = Tabmix.callerTrace("gotoHistoryIndex", "BrowserForward", "BrowserBack") ?
- "openTabNext" : "openDuplicateNext";
+ "openTabNext" : "openDuplicateNext";
let openTabNext = Tabmix.prefs.getBoolPref(pref);
TMP_extensionsCompatibility.treeStyleTab.openNewTabNext(aTab, openTabNext, true);
@@ -669,19 +669,19 @@ Tabmix.tablib = {
let TSTopenURI = Tabmix.extensions.treeStyleTab &&
typeof fnObj.__treestyletab__openURI == "function" ? "__treestyletab__openURI" : "";
[fnName, arg] = Tabmix.isVersion(260) ? ["_openURIInNewTab", "aIsExternal"] :
- [TSTopenURI || "openURI", "isExternal"];
+ [TSTopenURI || "openURI", "isExternal"];
var _openURI = Tabmix.changeCode(fnObj, "nsBrowserAccess.prototype." + fnName);
var loadURIWithFlags = Tabmix.isVersion(380) ?
- ' gBrowser.loadURIWithFlags(aURI.spec, {\n' +
- ' triggeringPrincipal: typeof aTriggeringPrincipal == "undefined" ? 0 : aTriggeringPrincipal,\n' +
- ' flags: loadflags,\n' +
- ' referrerURI: aReferrer,\n' +
- ' referrerPolicy: aReferrerPolicy,\n' +
- ' userContextId: typeof aUserContextId == "undefined" ? 0 : aUserContextId,\n' +
- ' });' :
- ' browser.loadURIWithFlags(aURI.spec, loadflags, referrer, null, null);'
- .replace("referrer", (Tabmix.isVersion(360) ? "aReferrer" : "referrer"));
+ ' gBrowser.loadURIWithFlags(aURI.spec, {\n' +
+ ' triggeringPrincipal: typeof aTriggeringPrincipal == "undefined" ? 0 : aTriggeringPrincipal,\n' +
+ ' flags: loadflags,\n' +
+ ' referrerURI: aReferrer,\n' +
+ ' referrerPolicy: aReferrerPolicy,\n' +
+ ' userContextId: typeof aUserContextId == "undefined" ? 0 : aUserContextId,\n' +
+ ' });' :
+ ' browser.loadURIWithFlags(aURI.spec, loadflags, referrer, null, null);'
+ .replace("referrer", (Tabmix.isVersion(360) ? "aReferrer" : "referrer"));
_openURI = _openURI._replace(
'if (#1 && (!aURI || aURI.spec == "'.replace("#1", arg) + TabmixSvc.aboutBlank + '")) {',
@@ -837,7 +837,7 @@ Tabmix.tablib = {
// make sure that undoCloseWindow will open the closed window in the most recent non-private window
Tabmix.changeCode(window, "undoCloseWindow")._replace(
'window = #1.undoCloseWindow(aIndex || 0);'
- .replace("#1", Tabmix.isVersion(260) ? "SessionStore" : "ss"),
+ .replace("#1", Tabmix.isVersion(260) ? "SessionStore" : "ss"),
'{if (Tabmix.singleWindowMode) {\
window = Tabmix.RecentWindow.getMostRecentBrowserWindow({private: false});\
}\
@@ -874,7 +874,7 @@ Tabmix.tablib = {
'$& \
let SM = TabmixSessionManager;\
Tabmix.setItem("Browser:RestoreLastSession", "disabled", !SM.canRestoreLastSession || SM.isPrivateWindow);',
- {check: Tabmix.prefs.getBoolPref("sessions.manager")}
+ {check: Tabmix.prefs.getBoolPref("sessions.manager")}
).toCode();
Tabmix.changeCode(HistoryMenu.prototype, "HistoryMenu.prototype.populateUndoWindowSubmenu")._replace(
@@ -940,10 +940,10 @@ Tabmix.tablib = {
if (undoItem && m.hasAttribute("targetURI")) {
let otherTabsCount = undoItem.tabs.length - 1;
let label = (otherTabsCount === 0) ?
- menuLabelStringSingleTab : PluralForm.get(otherTabsCount, menuLabelString);
+ menuLabelStringSingleTab : PluralForm.get(otherTabsCount, menuLabelString);
TMP_SessionStore.getTitleForClosedWindow(undoItem);
let menuLabel = label.replace("#1", undoItem.title)
- .replace("#2", otherTabsCount);
+ .replace("#2", otherTabsCount);
m.setAttribute("label", menuLabel);
m.setAttribute("value", i);
m.fileName = "closedwindow";
@@ -1405,12 +1405,12 @@ Tabmix.tablib = {
if (aTab.localName != "tab")
aTab = this.mCurrentTab;
var clipboard = Components.classes["@mozilla.org/widget/clipboardhelper;1"]
- .getService(Components.interfaces.nsIClipboardHelper);
+ .getService(Components.interfaces.nsIClipboardHelper);
clipboard.copyString(this.getBrowserForTab(aTab).currentURI.spec);
};
- /** XXX need to fix this functions:
+ /** XXX need to fix this functions:
previousTabIndex
previousTab
selectIndexAfterRemove
@@ -1445,7 +1445,7 @@ Tabmix.tablib = {
// if no tabmix_selectedID go to previous tab, from first tab go to the next tab
if (tempIndex == -1)
this.selectedTab = aTab == tabs[0] ? Tabmix.visibleTabs.next(aTab) :
- Tabmix.visibleTabs.previous(aTab);
+ Tabmix.visibleTabs.previous(aTab);
else
this.selectedTab = tabs[tempIndex];
@@ -1490,7 +1490,7 @@ Tabmix.tablib = {
if (tempIndex > -1)
return tempIndex;
}
- /* falls through */
+ /* falls through */
case 2: // opener / right (default )
case 5: // right tab
/* falls through */
@@ -1659,11 +1659,11 @@ Tabmix.tablib = {
if (shouldPrompt == 1 || numProtected === 0) {
if (Tabmix.isVersion(290))
message = PluralForm.get(tabsToClose, bundle.getString("tabs.closeWarningMultiple"))
- .replace("#1", tabsToClose);
+ .replace("#1", tabsToClose);
else
message = bundle.getFormattedString("tabs.closeWarningMultipleTabs", [tabsToClose]);
chkBoxLabel = shouldPrompt == 1 ? bundle.getString("tabs.closeWarningPromptMe") :
- TabmixSvc.getString("window.closeWarning.2");
+ TabmixSvc.getString("window.closeWarning.2");
} else {
let messageKey = "protectedtabs.closeWarning.";
messageKey += (numProtected < tabsToClose) ? "3" : (numProtected == 1) ? "1" : "2";
@@ -1673,7 +1673,7 @@ Tabmix.tablib = {
}
var buttonLabel = shouldPrompt == 1 ? bundle.getString("tabs.closeButtonMultiple") :
- TabmixSvc.getString("closeWindow.label");
+ TabmixSvc.getString("closeWindow.label");
window.focus();
var promptService = Services.prompt;
@@ -1698,7 +1698,7 @@ Tabmix.tablib = {
gBrowser.TMP_selectNewForegroundTab = function(aTab, aLoadInBackground, aUrl, addOwner) {
var bgLoad = typeof aLoadInBackground == "boolean" ? aLoadInBackground :
- Services.prefs.getBoolPref("browser.tabs.loadInBackground");
+ Services.prefs.getBoolPref("browser.tabs.loadInBackground");
if (!bgLoad) {
// set new tab owner
addOwner = typeof addOwner == "boolean" ? addOwner : true;
@@ -1936,8 +1936,8 @@ Tabmix.tablib = {
if (aUri != browser.currentURI.spec) {
let tab = gBrowser.mCurrentTab;
let isCopy = "dataTransfer" in aEvent ?
- TMP_tabDNDObserver.isCopyDropEffect(aEvent.dataTransfer, aEvent, 0) :
- (aEvent.ctrlKey || aEvent.metaKey);
+ TMP_tabDNDObserver.isCopyDropEffect(aEvent.dataTransfer, aEvent, 0) :
+ (aEvent.ctrlKey || aEvent.metaKey);
if (!isCopy && tab.getAttribute("locked") &&
!gBrowser.isBlankNotBusyTab(tab) &&
!Tabmix.ContentClick.isUrlForDownload(aUri)) {
diff --git a/chrome/content/overlay/removeBlankTab.js b/chrome/content/overlay/removeBlankTab.js
index 28ec0ec..9247d41 100644
--- a/chrome/content/overlay/removeBlankTab.js
+++ b/chrome/content/overlay/removeBlankTab.js
@@ -67,7 +67,7 @@ var TabmixRemoveBlankTab = {
let result = {win: null, b: null};
if (aContext) {
let nav = aContext.QueryInterface(Ci.nsIInterfaceRequestor)
- .getInterface(Ci.nsIWebNavigation);
+ .getInterface(Ci.nsIWebNavigation);
let doc;
try {
doc = nav.document;
@@ -75,10 +75,10 @@ var TabmixRemoveBlankTab = {
return result;
}
result.win = nav.QueryInterface(Ci.nsIDocShellTreeItem)
- .rootTreeItem
- .QueryInterface(Ci.nsIInterfaceRequestor)
- .getInterface(Ci.nsIDOMWindow)
- .wrappedJSObject;
+ .rootTreeItem
+ .QueryInterface(Ci.nsIInterfaceRequestor)
+ .getInterface(Ci.nsIDOMWindow)
+ .wrappedJSObject;
let tabBrowser = result.win.gBrowser;
result.b = tabBrowser.getBrowserForDocument(doc);
if (!result.b) {
diff --git a/chrome/content/places/places.js b/chrome/content/places/places.js
index 988ad47..8b03fd8 100644
--- a/chrome/content/places/places.js
+++ b/chrome/content/places/places.js
@@ -119,7 +119,7 @@ var TMP_Places = {
openMenuItem(aUri, aEvent, aParams, aPref) {
let pref = "extensions.tabmix.opentabfor." + aPref;
let where = this.isBookmarklet(aUri) ? "current" :
- this.fixWhereToOpen(aEvent, whereToOpenLink(aEvent, false, true), pref);
+ this.fixWhereToOpen(aEvent, whereToOpenLink(aEvent, false, true), pref);
if (where == "current")
Tabmix.getTopWin().gBrowser.selectedBrowser.tabmix_allowLoad = true;
aParams.inBackground = Services.prefs.getBoolPref("browser.tabs.loadBookmarksInBackground");
@@ -217,7 +217,7 @@ var TMP_Places = {
if (!historySelected)
return this.prefBookmark;
}
- /* falls through */
+ /* falls through */
case "chrome://browser/content/history/history-panel.xul":
return this.prefHistory;
case "chrome://browser/content/browser.xul":
@@ -238,10 +238,10 @@ var TMP_Places = {
var openTabs = gBrowser.visibleTabs;
var doReplace = (/^tab/).test(aWhere) ? false :
- Tabmix.prefs.getBoolPref("loadBookmarksAndReplace");
+ Tabmix.prefs.getBoolPref("loadBookmarksAndReplace");
var loadInBackground = bmGroup.length > 1 ?
- Tabmix.prefs.getBoolPref("loadBookmarksGroupInBackground") :
- Services.prefs.getBoolPref("browser.tabs.loadBookmarksInBackground");
+ Tabmix.prefs.getBoolPref("loadBookmarksGroupInBackground") :
+ Services.prefs.getBoolPref("browser.tabs.loadBookmarksInBackground");
var openTabNext = Tabmix.getOpenTabNextPref();
// catch tab for reuse
@@ -277,7 +277,7 @@ var TMP_Places = {
var tabToSelect = null;
var prevTab = (!doReplace && openTabNext && gBrowser.mCurrentTab._tPos < openTabs.length - 1) ?
- gBrowser.mCurrentTab : Tabmix.visibleTabs.last;
+ gBrowser.mCurrentTab : Tabmix.visibleTabs.last;
var tabPos, index;
var multiple = bmGroup.length > 1;
let tabs = [], tabsData = [];
@@ -379,7 +379,7 @@ var TMP_Places = {
this.restoringTabs.push(...tabs);
this.bookmarksOnDemand = restoreOnDemand;
let fnName = Tabmix.isVersion(280) ? "restoreTabs" :
- "restoreHistoryPrecursor";
+ "restoreHistoryPrecursor";
TabmixSvc.SessionStore[fnName](window, tabs, tabsData, 0);
// set icon on pending tabs
const pendingData = tabs.map(tab => ({tab, url: tabsData.shift().entries[0].url}))
@@ -839,7 +839,7 @@ Tabmix.onContentLoaded = {
' var bookMarkId = params.bookMarkId;'
)._replace(
'where == "current" && #1.pinned'
- .replace("#1", Tabmix.isVersion(520) ? "tab" : "w.gBrowser.selectedTab"),
+ .replace("#1", Tabmix.isVersion(520) ? "tab" : "w.gBrowser.selectedTab"),
'$& && !params.suppressTabsOnFileDownload',
{check: !Tabmix.isVersion(530)}
)._replace(
diff --git a/chrome/content/preferences/overlay/preferencesOverlay.js b/chrome/content/preferences/overlay/preferencesOverlay.js
index 6b878a7..a86c41f 100644
--- a/chrome/content/preferences/overlay/preferencesOverlay.js
+++ b/chrome/content/preferences/overlay/preferencesOverlay.js
@@ -41,7 +41,7 @@ var gTabMix_preferencesOverlay = {
setTimeout(() => this.initPaneTabsOptions(), 0);
},
-/* ........ paneTabs .............. */
+ /* ........ paneTabs .............. */
initPaneTabsOptions() {
this.id("_hideTabbar").value = this.id("extensions.tabmix.hideTabbar").value;
this.id("generalWindowOpen").value = this.id("browser.link.open_newwindow").value;
@@ -77,7 +77,7 @@ var gTabMix_preferencesOverlay = {
}
},
-/* ........ paneMain .............. */
+ /* ........ paneMain .............. */
initMainPane() {
var menuList = this.id("browserStartupPage");
var hBox = menuList.parentNode;
diff --git a/chrome/content/preferences/preferences.js b/chrome/content/preferences/preferences.js
index 30096bd..07702b3 100644
--- a/chrome/content/preferences/preferences.js
+++ b/chrome/content/preferences/preferences.js
@@ -202,7 +202,7 @@ var gPrefWindow = {
$(aPreference.id.replace("pref_", "obs_"));
if (broadcaster) {
let disable = aPreference.type == "bool" ? !aPreference.value :
- aPreference.value == parseInt(aPreference.getAttribute("notChecked"));
+ aPreference.value == parseInt(aPreference.getAttribute("notChecked"));
this.setDisabled(broadcaster, disable);
}
},
@@ -326,7 +326,7 @@ function setPrefAfterImport(aPref) {
if (aPref.type == Services.prefs.PREF_INVALID) {
let val = parseInt(aPref.value);
aPref.type = typeof val == "number" && !isNaN(val) ?
- 64 : /true|false/i.test(aPref.value) ? 128 : 32;
+ 64 : /true|false/i.test(aPref.value) ? 128 : 32;
if (aPref.type == 128)
aPref.value = /true/i.test(aPref.value);
let prefsUtil = Tabmix.getTopWin().gTMPprefObserver;
@@ -391,7 +391,7 @@ function defaultSetting() {
Shortcuts.prefsChangedByTabmix = true;
let SMinstalled = _sminstalled;
let prefs = !SMinstalled ? gPreferenceList :
- gPreferenceList.map(pref => sessionPrefs.indexOf(pref) == -1);
+ gPreferenceList.map(pref => sessionPrefs.indexOf(pref) == -1);
prefs.forEach(pref => {
Services.prefs.clearUserPref(pref);
});
diff --git a/chrome/content/preferences/shortcuts.js b/chrome/content/preferences/shortcuts.js
index 88a4c7a..2b9962d 100644
--- a/chrome/content/preferences/shortcuts.js
+++ b/chrome/content/preferences/shortcuts.js
@@ -66,10 +66,10 @@ function _getKeyName(win, aKey) {
return aKey.getAttribute("label");
let id = command && command.indexOf(":") > -1 ? command :
- aKey.id.replace(/xxx_key.+?_/, "") || // keyconfig format
+ aKey.id.replace(/xxx_key.+?_/, "") || // keyconfig format
command || aKey.getAttribute("oncommand");
let gUnicodeConverter = Cc['@mozilla.org/intl/scriptableunicodeconverter']
- .createInstance(Ci.nsIScriptableUnicodeConverter);
+ .createInstance(Ci.nsIScriptableUnicodeConverter);
gUnicodeConverter.charset = "UTF-8";
try {
id = gUnicodeConverter.ConvertToUnicode(id);
diff --git a/chrome/content/preferences/shortcuts.xml b/chrome/content/preferences/shortcuts.xml
index b5dffc5..1f5afb7 100644
--- a/chrome/content/preferences/shortcuts.xml
+++ b/chrome/content/preferences/shortcuts.xml
@@ -138,7 +138,7 @@
var key = {modifiers: "", key: "", keycode: ""};
let modifiers = ["ctrl", "meta", "alt", "shift"];
key.modifiers = modifiers.filter(mod => event[mod + "Key"])
- .join(",").replace("ctrl", "control");
+ .join(",").replace("ctrl", "control");
if (!key.modifiers) {
let ns = Ci.nsIDOMKeyEvent;
diff --git a/chrome/content/preferences/subdialogs/pref-appearance.js b/chrome/content/preferences/subdialogs/pref-appearance.js
index 3d10d83..715bef5 100644
--- a/chrome/content/preferences/subdialogs/pref-appearance.js
+++ b/chrome/content/preferences/subdialogs/pref-appearance.js
@@ -7,7 +7,7 @@ var tabstyles = {
pref: "appearance_tab",
init() {
$("stylestabs").selectedIndex = Tabmix.prefs.prefHasUserValue(this.pref) ?
- Tabmix.prefs.getIntPref(this.pref) : 0;
+ Tabmix.prefs.getIntPref(this.pref) : 0;
/* Chromifox theme force button height to 25px */
var skin = Services.prefs.getCharPref("general.skins.selectedSkin");
diff --git a/chrome/content/preferences/subdialogs/pref-appearance.xml b/chrome/content/preferences/subdialogs/pref-appearance.xml
index 3c4582f..21a7789 100644
--- a/chrome/content/preferences/subdialogs/pref-appearance.xml
+++ b/chrome/content/preferences/subdialogs/pref-appearance.xml
@@ -249,8 +249,7 @@
<body><![CDATA[
var rgba = this.rgba;
if (format) {
- rgba[3] = this.getAttribute("disabled") ? 0.2 :
- Math.max(0.2, rgba[3]);
+ rgba[3] = this.getAttribute("disabled") ? 0.2 : Math.max(0.2, rgba[3]);
}
return "rgba(#1)".replace("#1", rgba.join(","));
]]></body>
diff --git a/chrome/content/scripts/content.js b/chrome/content/scripts/content.js
index a2dbbdf..2519c3a 100644
--- a/chrome/content/scripts/content.js
+++ b/chrome/content/scripts/content.js
@@ -118,7 +118,7 @@ var TabmixContentHandler = {
postData: null
};
let sh = docShell.QueryInterface(Ci.nsIWebNavigation).sessionHistory
- .QueryInterface(Ci.nsISHistoryInternal);
+ .QueryInterface(Ci.nsISHistoryInternal);
if (sh) {
let entry = sh.getEntryAtIndex(sh.index, false);
let postData = entry.postData;
@@ -154,7 +154,7 @@ var TabmixContentHandler = {
let links;
const linkName = { };
const linkHandler = Cc["@mozilla.org/content/dropped-link-handler;1"]
- .getService(Ci.nsIDroppedLinkHandler);
+ .getService(Ci.nsIDroppedLinkHandler);
try {
// Pass true to prevent the dropping of javascript:/data: URIs
if (TabmixSvc.version(520)) {
@@ -272,7 +272,7 @@ TabmixClickEventHandler = {
}
let result = sendSyncMessage("TabmixContent:Click",
- {json, href, node: linkNode});
+ {json, href, node: linkNode});
let data = result[0];
if (data.where == "default")
return;
@@ -430,8 +430,8 @@ var AboutNewTabHandler = {
var ContextMenuHandler = {
init(global) {
Cc["@mozilla.org/eventlistenerservice;1"]
- .getService(Ci.nsIEventListenerService)
- .addSystemEventListener(global, "contextmenu", this.prepareContextMenu, true);
+ .getService(Ci.nsIEventListenerService)
+ .addSystemEventListener(global, "contextmenu", this.prepareContextMenu, true);
},
prepareContextMenu(event) {
diff --git a/chrome/content/session/session.js b/chrome/content/session/session.js
index b83c378..96cfed2 100644
--- a/chrome/content/session/session.js
+++ b/chrome/content/session/session.js
@@ -52,7 +52,7 @@ Tabmix.Sanitizer = {
return false;
},
-// XXX need to add test if we fail to delete then alert the user or ....?
+ // XXX need to add test if we fail to delete then alert the user or ....?
sanitize: function TMP_SN_sanitize() {
// get file references
var sessionFile = TabmixSvc.FileUtils.getDir("ProfD", []);
@@ -293,10 +293,10 @@ TabmixSessionManager = {
};
TabmixSvc.ss.promiseInitialized
- .then(() => TMP_TabView.init())
- .then(initializeSM)
- .then(() => Tabmix.sessionInitialized())
- .catch(Tabmix.reportError);
+ .then(() => TMP_TabView.init())
+ .then(initializeSM)
+ .then(() => Tabmix.sessionInitialized())
+ .catch(Tabmix.reportError);
},
_init: function SM__init() {
@@ -447,7 +447,7 @@ TabmixSessionManager = {
// initialize closed window list broadcaster
var status = this.isPrivateWindow ? isFirstWindow || this.isPrivateSession : Tabmix.firstWindowInSession;
var disabled = this.enableManager ? status || this.isClosedWindowsEmpty() :
- TabmixSvc.ss.getClosedWindowCount() === 0;
+ TabmixSvc.ss.getClosedWindowCount() === 0;
Tabmix.setItem("tmp_closedwindows", "disabled", disabled || null);
if (!this.isPrivateWindow)
@@ -564,7 +564,7 @@ TabmixSessionManager = {
TabmixSvc.getDialogStrings("Cancel") + "\n" +
TabmixSvc.setLabel("sm.askBeforeSave.button1");
return Tabmix.promptService([Tabmix.BUTTON_OK, Tabmix.HIDE_MENUANDTEXT, chkBoxState],
- [title, msg, "", chkBoxLabel, buttons]);
+ [title, msg, "", chkBoxLabel, buttons]);
},
windowIsClosing: function SM_WindowIsClosing(aCanClose, aLastWindow,
@@ -841,9 +841,9 @@ TabmixSessionManager = {
// init common services
initService() {
this.RDFService = Components.classes["@mozilla.org/rdf/rdf-service;1"]
- .getService(Components.interfaces.nsIRDFService);
+ .getService(Components.interfaces.nsIRDFService);
this.CONUtils = Components.classes["@mozilla.org/rdf/container-utils;1"]
- .getService(Components.interfaces.nsIRDFContainerUtils);
+ .getService(Components.interfaces.nsIRDFContainerUtils);
this.initDATASource();
},
@@ -859,7 +859,7 @@ TabmixSessionManager = {
TabmixSvc.getSMString("sm.corrupted.msg1");
var buttons = ["", TabmixSvc.setLabel("sm.button.continue")].join("\n");
this.promptService([Tabmix.BUTTON_CANCEL, Tabmix.HIDE_MENUANDTEXT, Tabmix.HIDE_CHECKBOX],
- [title, msg, "", "", buttons], window, () => {});
+ [title, msg, "", "", buttons], window, () => {});
Tabmix.assert(e);
file.moveTo(this.profileDir, "session.old");
this.DATASource = this.RDFService.GetDataSourceBlocking(uri);
@@ -987,11 +987,11 @@ TabmixSessionManager = {
return this.getValue(node, arc, "nsIRDFLiteral", def);
},
- /*
- * The escape and unescape functions are deprecated we use encodeURI and decodeURI instead.
- * we use this code only for the case that old escape string was left unused after
- * unescape was removed.
- */
+ /**
+ * The escape and unescape functions are deprecated we use encodeURI and decodeURI instead.
+ * we use this code only for the case that old escape string was left unused after
+ * unescape was removed.
+ */
getDecodedLiteralValue(node, key) {
let encodedString = node ? this.getLiteralValue(node, key) : key;
// in the past we use escape for encoding, we try first to decode with decodeURI
@@ -1189,13 +1189,13 @@ TabmixSessionManager = {
}
},
- /**
- * @brief catch middle click from closed windows list,
- * delete window from the list or restore according to the pref
- * @param aEvent a valid event union.
- * @returns noting.
- *
- */
+ /**
+ * @brief catch middle click from closed windows list,
+ * delete window from the list or restore according to the pref
+ * @param aEvent a valid event union.
+ * @returns noting.
+ *
+ */
checkForMiddleClick: function SM_checkForMiddleClick(aEvent) {
if (aEvent.button != 1)
return;
@@ -1295,7 +1295,7 @@ TabmixSessionManager = {
break;
}
return Tabmix.promptService([Tabmix.BUTTON_OK, Tabmix.SHOW_MENULIST, Tabmix.HIDE_CHECKBOX, selectionFlag],
- [title, msg, "", "", buttons]);
+ [title, msg, "", "", buttons]);
},
addWinToSession: function SM_addWinToSession(action, path) {
@@ -1514,7 +1514,7 @@ TabmixSessionManager = {
}
label = label + "\n" + sessionList.list.join("\n");
var result = Tabmix.promptService([Tabmix.BUTTON_OK, Tabmix.SHOW_TEXTBOX, showCheckbox, actionFlag],
- [title, msg, label, closedtabMsg, buttons]);
+ [title, msg, label, closedtabMsg, buttons]);
switch (result.button) {
case Tabmix.BUTTON_CANCEL: return {button: result.button};
case Tabmix.BUTTON_OK:
@@ -1765,7 +1765,7 @@ TabmixSessionManager = {
if (this.prefBranch.getIntPref("onStart.loadsession") > -1)
msg += TabmixSvc.getSMString("sm.removeAll.msg1");
result = Tabmix.promptService([Tabmix.BUTTON_CANCEL, Tabmix.HIDE_MENUANDTEXT, Tabmix.HIDE_CHECKBOX],
- [title, msg, "", "", buttons]);
+ [title, msg, "", "", buttons]);
if (result.button == Tabmix.BUTTON_OK) {
this.deleteSubtree(this.gSessionPath[1]);
this.deleteSubtree(this.gSessionPath[2]);
@@ -1780,7 +1780,7 @@ TabmixSessionManager = {
title = TabmixSvc.getSMString("sm.removeAll.title.closedwindow");
msg = TabmixSvc.getSMString("sm.removeAll.msg2");
result = Tabmix.promptService([Tabmix.BUTTON_CANCEL, Tabmix.HIDE_MENUANDTEXT, Tabmix.HIDE_CHECKBOX],
- [title, msg, "", "", buttons]);
+ [title, msg, "", "", buttons]);
if (result.button == Tabmix.BUTTON_OK)
this.removeAllClosedWindows();
}
@@ -2189,7 +2189,7 @@ TabmixSessionManager = {
buttons = [TabmixSvc.setLabel("sm.afterCrash.button0"),
TabmixSvc.setLabel("sm.afterCrash.button1")].join("\n");
this.promptService([Tabmix.BUTTON_OK, Tabmix.SHOW_MENULIST, Tabmix.HIDE_CHECKBOX, Tabmix.SELECT_CRASH],
- [title, msg, "", "", buttons], window, callBack);
+ [title, msg, "", "", buttons], window, callBack);
} else {
msg += " " + TabmixSvc.getSMString("sm.afterCrash.msg2") + ".....";
if (!this.enableManager)
@@ -2199,7 +2199,7 @@ TabmixSessionManager = {
buttons = [TabmixSvc.setLabel("sm.afterCrash.button0.crashed"),
TabmixSvc.setLabel("sm.afterCrash.button1")].join("\n");
this.promptService([Tabmix.BUTTON_OK, Tabmix.HIDE_MENUANDTEXT, chkBoxState],
- [title, msg, "", chkBoxLabel, buttons], window, callBack);
+ [title, msg, "", chkBoxLabel, buttons], window, callBack);
this.callBackData.label = this.gSessionPath[3];
}
} else if (this.enableManager && !isAllEmpty) {
@@ -2208,7 +2208,7 @@ TabmixSessionManager = {
buttons = [TabmixSvc.setLabel("sm.afterCrash.button0"),
TabmixSvc.setLabel("sm.afterCrash.button1")].join("\n");
this.promptService([Tabmix.BUTTON_OK, Tabmix.SHOW_MENULIST, Tabmix.HIDE_CHECKBOX, Tabmix.SELECT_DEFAULT],
- [title, msg, "", "", buttons], window, callBack);
+ [title, msg, "", "", buttons], window, callBack);
} else if (closedWinList !== 0) {
msg += " " + TabmixSvc.getSMString("sm.afterCrash.msg6");
if (!this.enableManager)
@@ -2220,7 +2220,7 @@ TabmixSessionManager = {
buttons = [TabmixSvc.setLabel("sm.afterCrash.button0"),
TabmixSvc.setLabel("sm.afterCrash.button1")].join("\n");
this.promptService([Tabmix.BUTTON_OK, Tabmix.SHOW_MENULIST, chkBoxState, Tabmix.SHOW_CLOSED_WINDOW_LIST],
- [title, msg, "", chkBoxLabel, buttons], window, callBack);
+ [title, msg, "", chkBoxLabel, buttons], window, callBack);
this.callBackData.whatToLoad = "closedwindow";
} else {// nothing to restore
msg = TabmixSvc.getSMString("sm.afterCrash.msg9") + "\n" + TabmixSvc.getSMString("sm.afterCrash.msg10");
@@ -2228,7 +2228,7 @@ TabmixSessionManager = {
msg += "\n\n" + TabmixSvc.getSMString("sm.afterCrash.msg3");
buttons = ["", TabmixSvc.setLabel("sm.button.continue")].join("\n");
this.promptService([Tabmix.BUTTON_CANCEL, Tabmix.HIDE_MENUANDTEXT, chkBoxState],
- [title, msg, "", chkBoxLabel, buttons], window, callBack);
+ [title, msg, "", chkBoxLabel, buttons], window, callBack);
}
},
@@ -2341,7 +2341,7 @@ TabmixSessionManager = {
};
this.waitForCallBack = true;
this.promptService([Tabmix.BUTTON_CANCEL, Tabmix.HIDE_MENUANDTEXT, chkBoxState],
- [title, msg, "", chkBoxLabel, buttons], window, callBack);
+ [title, msg, "", chkBoxLabel, buttons], window, callBack);
}
this.loadHomePage();
return;
@@ -2400,7 +2400,7 @@ TabmixSessionManager = {
};
this.waitForCallBack = true;
this.promptService([Tabmix.BUTTON_OK, Tabmix.SHOW_MENULIST, chkBoxState, Tabmix.SELECT_DEFAULT],
- [title, msg, "", chkBoxLabel, buttons], window, callBack);
+ [title, msg, "", chkBoxLabel, buttons], window, callBack);
} catch (ex) {
Tabmix.assert(ex);
}
@@ -2444,10 +2444,10 @@ TabmixSessionManager = {
}, 0);
},
- /**
- * user wants to restore only pinned tabs
- * use SessionStore functions to prepare and restore
- */
+ /**
+ * user wants to restore only pinned tabs
+ * use SessionStore functions to prepare and restore
+ */
deferredRestore(afterCrash) {
if (!this.prefBranch.getBoolPref("onStart.restorePinned"))
return;
@@ -2481,10 +2481,10 @@ TabmixSessionManager = {
this.loadHomePage(pinnedExist);
},
- /**
- * move all tabs & closed tabs into one window
- * (original code by Session Manager extension)
- */
+ /**
+ * move all tabs & closed tabs into one window
+ * (original code by Session Manager extension)
+ */
mergeWindows(state) {
if (state.windows.length < 2)
return;
@@ -2571,11 +2571,11 @@ TabmixSessionManager = {
return {win: savedWin, tab: savedTabs};
},
- /*
- * update closed window list flag 'dontLoad'
- * all window that where closed more then 10 sec ago will mark 'dontLoad'
- * return true if we left out with windows to load
- */
+ /**
+ * update closed window list flag 'dontLoad'
+ * all window that where closed more then 10 sec ago will mark 'dontLoad'
+ * return true if we left out with windows to load
+ */
updateClosedWindowList: function SM_updateClosedWindowList(aPopUp) {
var thisSession = this.RDFService.GetResource(this.gSessionPath[0]);
var container = this.initContainer(thisSession);
@@ -2977,14 +2977,14 @@ TabmixSessionManager = {
this.setLiteral(aNode, "closedAt", aData.closedAt);
},
- /**
- * Convert SessionStore tab history state object
- *
- * @param state
- * SessionStore tab state object
- * @return object containing history entries, current history index and
- * current history scroll position
- */
+ /**
+ * Convert SessionStore tab history state object
+ *
+ * @param state
+ * SessionStore tab state object
+ * @return object containing history entries, current history index and
+ * current history scroll position
+ */
serializeHistory(state) {
if (!state)
return null;
@@ -3030,7 +3030,7 @@ TabmixSessionManager = {
get canRestoreLastSession() {
return this.enableManager ? TabmixSvc.sm.lastSessionPath && !this.containerEmpty(TabmixSvc.sm.lastSessionPath) :
- TabmixSvc.ss.canRestoreLastSession;
+ TabmixSvc.ss.canRestoreLastSession;
},
restoreLastSession: function SM_restoreLastSession() {
@@ -3173,7 +3173,7 @@ TabmixSessionManager = {
openNewWindow: function SM_openNewWindow(aState, aPrivate) {
var argString = Cc["@mozilla.org/supports-string;1"]
- .createInstance(Ci.nsISupportsString);
+ .createInstance(Ci.nsISupportsString);
argString.data = "";
let features = "chrome,dialog=no,macsuppressanimation,all";
@@ -3464,7 +3464,7 @@ TabmixSessionManager = {
}
}
let fnName = Tabmix.isVersion(280) ? "restoreTabs" :
- "restoreHistoryPrecursor";
+ "restoreHistoryPrecursor";
TabmixSvc.SessionStore[fnName](window, tabs, tabsData, 0);
// show notification and clean up our data
@@ -3606,7 +3606,7 @@ TabmixSessionManager = {
var ctabs = TMP_ClosedTabs.getClosedTabData;
var maxTabsUndo = Services.prefs.getIntPref("browser.sessionstore.max_tabs_undo");
ctabs = ctabs.map(data => this.getSessionStoreDataForRDF(data))
- .filter(data => data);
+ .filter(data => data);
ctabs.reverse().forEach(data => {
let uniqueId, rdfLabelSession, newNode;
uniqueId = "panel" + Date.now() + Math.random();
diff --git a/chrome/content/session/sessionStore.js b/chrome/content/session/sessionStore.js
index b7dfe36..ed16b12 100644
--- a/chrome/content/session/sessionStore.js
+++ b/chrome/content/session/sessionStore.js
@@ -51,15 +51,15 @@ var TMP_SessionStore = {
return !entries[0] || entries[0].url == "about:blank";
},
- /**
- * @brief - Add attribute to nsSessionStore persistTabAttribute.
- *
- * we call this after nsSessionStore.init
- * we add this also when we use TMP session manager.
- * we use Firefox SessionStore closed tab service and for restore after restart
- *
- * @returns Nothing.
- */
+ /**
+ * @brief - Add attribute to nsSessionStore persistTabAttribute.
+ *
+ * we call this after nsSessionStore.init
+ * we add this also when we use TMP session manager.
+ * we use Firefox SessionStore closed tab service and for restore after restart
+ *
+ * @returns Nothing.
+ */
persistTabAttribute: function TMP_ss_persistTabAttribute() {
if (TabmixSvc.sm.persistTabAttributeSet)
return;
@@ -85,29 +85,29 @@ var TMP_SessionStore = {
}
},
- /**
- * @brief make sure that we don't enable both sessionStore and session manager
- *
- * @param msgNo a Integer value - msg no. to show.
- * -1 when session manager extension enabled (see SessionManagerExtension.jsm)
- *
- * @param start a Boolean value - true if we call this function before startup.
- *
- * @returns Nothing.
- */
+ /**
+ * @brief make sure that we don't enable both sessionStore and session manager
+ *
+ * @param msgNo a Integer value - msg no. to show.
+ * -1 when session manager extension enabled (see SessionManagerExtension.jsm)
+ *
+ * @param start a Boolean value - true if we call this function before startup.
+ *
+ * @returns Nothing.
+ */
setService: function TMP_ss_setSessionService(msgNo, start) {
if (TabmixSvc.sm.settingPreference || Tabmix.prefs.prefHasUserValue("setDefault"))
return;
- /*
- * From 2008-03-10 we don't set browser.sessionstore.enabled to false anymore
- * we use nsISessionStore service in TMP.
- * if we use TMP session manager we set all other sessionstore pref to false to disable SessionRestore
- *
- * Bug 449596 - remove the browser.sessionstore.enabled pref
- * so here we don't set it to true, we just clear user pref to the default
- * if the pref exist in firefox this set the pref to true
- * if the pref don't exist this will remove the pref
- */
+ /*
+ * From 2008-03-10 we don't set browser.sessionstore.enabled to false anymore
+ * we use nsISessionStore service in TMP.
+ * if we use TMP session manager we set all other sessionstore pref to false to disable SessionRestore
+ *
+ * Bug 449596 - remove the browser.sessionstore.enabled pref
+ * so here we don't set it to true, we just clear user pref to the default
+ * if the pref exist in firefox this set the pref to true
+ * if the pref don't exist this will remove the pref
+ */
const TMP_SS_MANAGER = "extensions.tabmix.sessions.manager";
const TMP_SS_CRASHRECOVERY = "extensions.tabmix.sessions.crashRecovery";
var TMP_manager_enabled = Services.prefs.getBoolPref(TMP_SS_MANAGER);
@@ -176,7 +176,7 @@ var TMP_SessionStore = {
TabmixSvc.sm.settingPreference = false;
};
let result = Tabmix.promptService([Tabmix.BUTTON_OK, Tabmix.HIDE_MENUANDTEXT, Tabmix.HIDE_CHECKBOX],
- [title, msg, "", "", buttons], window, start ? callBack : null);
+ [title, msg, "", "", buttons], window, start ? callBack : null);
if (!start)
callBack(result);
} else if (!Services.prefs.prefHasUserValue("browser.warnOnQuit ")) {
@@ -220,7 +220,7 @@ var TMP_SessionStore = {
// syncRead in Firefox 25-27
XPCOMUtils.defineLazyGetter(Tabmix, "isWindowAfterSessionRestore", () => {
let ss = Cc["@mozilla.org/browser/sessionstartup;1"]
- .getService(Ci.nsISessionStartup);
+ .getService(Ci.nsISessionStartup);
// when TMP session manager is enabled ss.doRestore is true only after restart
ss.onceInitialized.then(() => {
Tabmix.isWindowAfterSessionRestore = ss.doRestore();
@@ -241,17 +241,17 @@ var TMP_SessionStore = {
Services.prefs.setIntPref("browser.startup.page", 1);
},
- /**
- * @brief update tab title from user name or bookmark.
- *
- * @param aTabData an object value - tabData from nsSessionStore
- *
- * @param aUri string value - url address
- *
- * @param aTitle string value - title
- *
- * @returns tab title - string.
- */
+ /**
+ * @brief update tab title from user name or bookmark.
+ *
+ * @param aTabData an object value - tabData from nsSessionStore
+ *
+ * @param aUri string value - url address
+ *
+ * @param aTitle string value - title
+ *
+ * @returns tab title - string.
+ */
_getTitle: function ct_getTitle(aData, aUri, aTitle) {
var fixedLabelUri = this._getAttribute(aData, "label-uri");
if (fixedLabelUri == aUri || fixedLabelUri == "*")
@@ -260,15 +260,15 @@ var TMP_SessionStore = {
return TMP_Places.getTitleFromBookmark(aUri, aTitle, this._getAttribute(aData, "tabmix_bookmarkId"));
},
- /**
- * @brief get attribute xultab data
- *
- * @param aTabData an object value - tabData from nsSessionStore
- *
- * @param attrib attribute name as string
- *
- * @returns attribute value as string or empty string.
- */
+ /**
+ * @brief get attribute xultab data
+ *
+ * @param aTabData an object value - tabData from nsSessionStore
+ *
+ * @param attrib attribute name as string
+ *
+ * @returns attribute value as string or empty string.
+ */
_getAttribute: function TMP_ss__getAttribute(aTabData, attrib) {
if (aTabData.attributes && attrib in aTabData.attributes)
return aTabData.attributes[attrib];
@@ -307,16 +307,16 @@ var TMP_ClosedTabs = {
Tabmix.setItem(this.buttonBroadcaster, "disabled", aState || null);
},
- /**
- * Get closed tabs count
- */
+ /**
+ * Get closed tabs count
+ */
get count() {
return window.__SSi ? TabmixSvc.ss.getClosedTabCount(window) : 0;
},
- /**
- * Get closed tabs data
- */
+ /**
+ * Get closed tabs data
+ */
get getClosedTabData() {
return window.__SSi ? TabmixSvc.JSON.parse(TabmixSvc.ss.getClosedTabData(window)) : {};
},
@@ -364,11 +364,11 @@ var TMP_ClosedTabs = {
if (_uri.scheme == "about" && title === "")
url = title = "about:blank";
else try {
- url = _uri.scheme == "about" ? _uri.spec :
- _uri.scheme + "://" + _uri.hostPort + _uri.path;
- } catch (e) {
- url = title;
- }
+ url = _uri.scheme == "about" ? _uri.spec :
+ _uri.scheme + "://" + _uri.hostPort + _uri.path;
+ } catch (e) {
+ url = title;
+ }
var label = title ? title : url;
let count = "";
if (ltr) {
@@ -505,7 +505,7 @@ var TMP_ClosedTabs = {
var tabData = this.getClosedTabData[index];
var url = this.getUrl(tabData);
var clipboard = Components.classes["@mozilla.org/widget/clipboardhelper;1"]
- .getService(Components.interfaces.nsIClipboardHelper);
+ .getService(Components.interfaces.nsIClipboardHelper);
clipboard.copyString(url);
},
@@ -543,11 +543,11 @@ var TMP_ClosedTabs = {
this.setButtonDisableState(true);
},
- /**
- * @brief fetch the data of closed tab, while removing it from the array
- * @param aIndex a Integer value - 0 or grater index to remove
- * @returns closed tab data at aIndex.
- */
+ /**
+ * @brief fetch the data of closed tab, while removing it from the array
+ * @param aIndex a Integer value - 0 or grater index to remove
+ * @returns closed tab data at aIndex.
+ */
getClosedTabAtIndex: function ct_getClosedTabAtIndex(aIndex) {
if (aIndex < 0 || aIndex >= this.count)
return null;
@@ -627,11 +627,11 @@ var TMP_ClosedTabs = {
(!Tabmix.isVersion(490) ||
aBlankTabToReuse.getAttribute("usercontextid") == (userContextId || ""));
let newTab = reuseExisting ? aBlankTabToReuse :
- gBrowser.addTab("about:blank", {
- skipAnimation: tabToRemove || skipAnimation,
- dontMove: true,
- userContextId,
- });
+ gBrowser.addTab("about:blank", {
+ skipAnimation: tabToRemove || skipAnimation,
+ dontMove: true,
+ userContextId,
+ });
if (!reuseExisting && aBlankTabToReuse) {
gBrowser.removeTab(aBlankTabToReuse, {animate: false});
}
@@ -742,7 +742,7 @@ var TabmixConvertSession = {
confirm: function cs_confirm(aMsg, aCallBack) {
let buttons = TabmixSvc.getDialogStrings("Yes", "No").join("\n");
return Tabmix.promptService([Tabmix.BUTTON_OK, Tabmix.HIDE_MENUANDTEXT, Tabmix.HIDE_CHECKBOX],
- [this.getTitle, aMsg, "", "", buttons], window, aCallBack);
+ [this.getTitle, aMsg, "", "", buttons], window, aCallBack);
},
getSessionState: function cs_getSessionState(aPath, internal) {
diff --git a/chrome/content/tab/scrollbox.xml b/chrome/content/tab/scrollbox.xml
index 132b5a7..99ea832 100644
--- a/chrome/content/tab/scrollbox.xml
+++ b/chrome/content/tab/scrollbox.xml
@@ -424,8 +424,7 @@
var index, current = 0;
for (let i = 0; i < tabs.length; i++) {
let tab = tabs[i];
- let row = tab.closing ? -1 :
- Tabmix.tabsUtils.getTabRowNumber(tab, topY);
+ let row = tab.closing ? -1 : Tabmix.tabsUtils.getTabRowNumber(tab, topY);
if (row > current) {
current = row;
if (!tab.hasAttribute("tabmix-firstTabInRow"))
diff --git a/chrome/content/tab/tab.js b/chrome/content/tab/tab.js
index 74ab81b..d55d6d7 100644
--- a/chrome/content/tab/tab.js
+++ b/chrome/content/tab/tab.js
@@ -144,8 +144,8 @@ var TabmixTabbar = {
// show on tabbar
let tabstripClosebutton = Tabmix.isVersion(310) ?
- document.getElementById("tabmix-tabs-closebutton") :
- document.getElementById("tabs-closebutton");
+ document.getElementById("tabmix-tabs-closebutton") :
+ document.getElementById("tabs-closebutton");
if (this.isButtonOnTabsToolBar(tabstripClosebutton))
tabstripClosebutton.collapsed = Tabmix.prefs.getBoolPref("hideTabBarButton");
let allTabsButton = document.getElementById("alltabs-button");
@@ -461,7 +461,7 @@ var TabmixTabbar = {
return;
let selected = Tabmix.isVersion(390) && gBrowser._switcher ?
- gBrowser._switcher.visibleTab : tabBar.selectedItem;
+ gBrowser._switcher.visibleTab : tabBar.selectedItem;
let prev = null, next = null;
if (!selected.closing) {
let visibleTabs = gBrowser.visibleTabs;
@@ -925,11 +925,11 @@ Tabmix.tabsUtils = {
let width = 0, privateTabButton = TabmixTabbar.newPrivateTabButton();
if (privateTabButton) {
width += aOnSide ? privateTabButton.boxObject.width :
- Tabmix.afterTabsButtonsWidth[1];
+ Tabmix.afterTabsButtonsWidth[1];
}
if (Tabmix.sideNewTabButton) {
width += aOnSide ? Tabmix.sideNewTabButton.boxObject.width :
- Tabmix.afterTabsButtonsWidth[0];
+ Tabmix.afterTabsButtonsWidth[0];
}
return width;
};
@@ -1142,7 +1142,7 @@ Tabmix.bottomToolbarUtils = {
// remember to fix background css rules for all platform
let referenceNode = document.getElementById("content-deck");
referenceNode = referenceNode ? referenceNode.nextSibling :
- document.getElementById("browser-bottombox");
+ document.getElementById("browser-bottombox");
referenceNode.parentNode.insertBefore(bottomToolbox, referenceNode);
updateFullScreen = window.fullScreen;
}
@@ -1267,11 +1267,11 @@ gTMPprefObserver = {
prefSvc.removeObserver(this.OBSERVING[i], this);
},
- /**
- * Observer-function
- * subject: [wrapped nsISupports :: nsIPrefBranch], nsIPrefBranch Internal
- * topic: "changed"
- */
+ /**
+ * Observer-function
+ * subject: [wrapped nsISupports :: nsIPrefBranch], nsIPrefBranch Internal
+ * topic: "changed"
+ */
observe: function TMP_pref_observer(subject, topic, prefName) {
if (this.preventUpdate)
return;
@@ -1459,8 +1459,8 @@ gTMPprefObserver = {
if (Tabmix.extensions.ctr &&
Services.prefs.getCharPref("general.skins.selectedSkin") == "classic/1.0") {
let otherPref = prefName == "extensions.tabmix.tabs.closeButtons.onLeft" ?
- "extensions.classicthemerestorer.closeonleft" :
- "extensions.tabmix.tabs.closeButtons.onLeft";
+ "extensions.classicthemerestorer.closeonleft" :
+ "extensions.tabmix.tabs.closeButtons.onLeft";
value = Services.prefs.getBoolPref(prefName);
if (Services.prefs.getBoolPref(otherPref) != value)
Services.prefs.setBoolPref(otherPref, Services.prefs.getBoolPref(prefName));
@@ -1676,12 +1676,12 @@ gTMPprefObserver = {
if (!icon)
return; // nothing to do....
- /**
- * from Firefox 3 tab-icon-image class have -moz-margin-start: value;
- * -margin-end-value: value;
- * we apply these value dynamically here to our tab-protect-icon tab-lock-icon class
- * since each theme can use different values
- */
+ /**
+ * from Firefox 3 tab-icon-image class have -moz-margin-start: value;
+ * -margin-end-value: value;
+ * we apply these value dynamically here to our tab-protect-icon tab-lock-icon class
+ * since each theme can use different values
+ */
let style = window.getComputedStyle(icon);
let pinned;
pinned = icon.hasAttribute("pinned");
@@ -1695,7 +1695,7 @@ gTMPprefObserver = {
selector + '.tab-reload-icon,' +
selector + '.tab-lock-icon {' +
'-moz-margin-start: %S; -moz-margin-end: %S;}'
- .replace("%S", marginStart).replace("%S", marginEnd);
+ .replace("%S", marginStart).replace("%S", marginEnd);
this.insertRule(iconRule);
/** at the moment we move the button over the title - see setCloseButtonMargin
@@ -1718,15 +1718,15 @@ gTMPprefObserver = {
_selector + '.tab-reload-icon,' +
_selector + '.tab-lock-icon {' +
'-moz-margin-start: %S; -moz-margin-end: %S;}'
- .replace("%S", _marginStart).replace("%S", _marginEnd);
+ .replace("%S", _marginStart).replace("%S", _marginEnd);
this.insertRule(_iconRule);
if (!pinned)
icon.removeAttribute("pinned");
- /**
- * set smaller left margin for the tab icon when the close button is on the left side
- * only do it if start margin is bigger then end margin
- */
+ /**
+ * set smaller left margin for the tab icon when the close button is on the left side
+ * only do it if start margin is bigger then end margin
+ */
if (parseInt(marginStart) < parseInt(marginEnd))
return;
@@ -1745,7 +1745,7 @@ gTMPprefObserver = {
let newRule = iconRule.replace(/%favhideclose%/g, ':not([favhideclose="true"])').replace(/%faviconized%/g, '');
tabmix_setRule(newRule);
newRule = iconRule.replace(/%favhideclose%/g, '[favhideclose="true"]')
- .replace(/%faviconized%/g, ':not([faviconized="true"])');
+ .replace(/%faviconized%/g, ':not([faviconized="true"])');
tabmix_setRule(newRule);
} else {
let newRule = iconRule.replace(/%favhideclose%/g, '').replace(/%faviconized%/g, '');
@@ -1790,18 +1790,18 @@ gTMPprefObserver = {
'-moz-margin-end: %PX !important;}'.replace("%PX", textMarginEnd);
if ("faviconize" in window) {
let newRule = iconRule.replace(/%favhideclose%/g, ':not([favhideclose="true"])')
- .replace(/%faviconized%/g, '')
- .replace(/%faviconized1%/g, ':not([faviconized="true"])');
+ .replace(/%faviconized%/g, '')
+ .replace(/%faviconized1%/g, ':not([faviconized="true"])');
this.insertRule(newRule);
newRule = iconRule.replace(/%favhideclose%/g, '[favhideclose="true"]')
- .replace(/%faviconized%/g, ':not([faviconized="true"])')
- .replace(/%faviconized1%/g, ':not([faviconized="true"])');
+ .replace(/%faviconized%/g, ':not([faviconized="true"])')
+ .replace(/%faviconized1%/g, ':not([faviconized="true"])');
this.insertRule(newRule);
newRule = '.tabbrowser-tab[faviconized="true"][protected]:not([pinned]) {max-width: 36px !important;}';
this.insertRule(newRule);
} else {
let newRule = iconRule.replace(/%favhideclose%/g, '')
- .replace(/%faviconized%/g, '').replace(/%faviconized1%/g, '');
+ .replace(/%faviconized%/g, '').replace(/%faviconized1%/g, '');
this.insertRule(newRule);
}
},
@@ -1839,7 +1839,7 @@ gTMPprefObserver = {
let newRule = '#TabsToolbar[tabmix-show-newtabbutton*="aftertabs"] >' +
'#tabbrowser-tabs:not([overflow="true"]) > .tabbrowser-arrowscrollbox[flowing="multibar"]' +
' > .tabs-newtab-button[command="cmd_newNavigatorTab"] {height: #px;}'
- .replace("#", Tabmix._buttonsHeight);
+ .replace("#", Tabmix._buttonsHeight);
this.insertRule(newRule, "new-tab-height");
if (TabmixSvc.australis && !Tabmix.isVersion(310) && !TabmixSvc.isLinux && !TabmixSvc.isMac) {
@@ -1886,10 +1886,10 @@ gTMPprefObserver = {
if (skin == "classic/1.0") {
if (TabmixSvc.isLinux)
region = TabmixSvc.australis ? "rect(0px, 360px, 18px, 342px)" :
- "rect(0px, 96px, 24px, 72px)";
+ "rect(0px, 96px, 24px, 72px)";
else
region = TabmixSvc.australis ? "rect(0px, 360px, 18px, 342px)" :
- "rect(0pt, 180px, 18px, 162px)";
+ "rect(0pt, 180px, 18px, 162px)";
} else {
[url, region] = ["newtab.png", "auto"];
}
@@ -2194,14 +2194,14 @@ gTMPprefObserver = {
Tabmix.tabsUtils.checkNewtabButtonVisibility = TabmixTabbar.isMultiRow &&
((aShow && aPosition == 2) || Boolean(TabmixTabbar.newPrivateTabButton()));
- /** values for tabmix-show-newtabbutton to show tabs-newtab-button are:
- * aftertabs - show the button after tabs
- * temporary-right-side
- * - show the button on right side when there is no place
- * for the button aftertabs in multi-row mode
- * right-side - show the button on right side
- * left-side - show the button on left side
- */
+ /** values for tabmix-show-newtabbutton to show tabs-newtab-button are:
+ * aftertabs - show the button after tabs
+ * temporary-right-side
+ * - show the button on right side when there is no place
+ * for the button aftertabs in multi-row mode
+ * right-side - show the button on right side
+ * left-side - show the button on left side
+ */
let attrValue;
if (!aShow)
attrValue = null;
@@ -2304,7 +2304,7 @@ gTMPprefObserver = {
// when we here after many tabs closed fast mTabstrip height can larger
// then one row.
let newHeight = TabmixTabbar.visibleRows == 1 ? TabmixTabbar.singleRowHeight :
- gBrowser.tabContainer.mTabstrip.scrollClientRect.height;
+ gBrowser.tabContainer.mTabstrip.scrollClientRect.height;
if (this._bottomRect.height != newHeight) {
this._bottomRect.height = newHeight;
bottomToolbox.style.setProperty("height", newHeight + "px", "important");
diff --git a/chrome/content/tab/tabbrowser_4.xml b/chrome/content/tab/tabbrowser_4.xml
index ca0911d..24fc984 100644
--- a/chrome/content/tab/tabbrowser_4.xml
+++ b/chrome/content/tab/tabbrowser_4.xml
@@ -415,8 +415,7 @@
this.mTabstrip._smoothScrollByPixels(selected.top - scrollRect.top);
else
this.mTabstrip._smoothScrollByPixels(this.mTabstrip._isRTLScrollbox ?
- selected.right - scrollRect.right :
- selected.left - scrollRect.left);
+ selected.right - scrollRect.right : selected.left - scrollRect.left);
}
if (Tabmix.isVersion(540)) {
diff --git a/chrome/content/tabmix.js b/chrome/content/tabmix.js
index 4296488..d66883f 100644
--- a/chrome/content/tabmix.js
+++ b/chrome/content/tabmix.js
@@ -476,7 +476,7 @@ var TMP_eventListener = {
tabBar.setAttribute("classic", "v4Mac");
else if (TabmixSvc.isLinux) {
tabBar.setAttribute("classic", "v3Linux");
-///XXX test if this is still the case
+ ///XXX test if this is still the case
TMP_tabDNDObserver.LinuxMarginEnd = -2;
Tabmix.setItem(tabsToolbar, "tabmix_skin", "classic");
} else {
@@ -543,12 +543,12 @@ var TMP_eventListener = {
TMP_ClosedTabs.setButtonType(Tabmix.prefs.getBoolPref("undoCloseButton.menuonly"));
TabmixTabbar.hideMode = Tabmix.prefs.getIntPref("hideTabbar");
- /*
- * In the first time TMP is running we need to match extensions.tabmix.hideTabbar to browser.tabs.autoHide.
- * extensions.tabmix.hideTabbar default is 0 "Never Hide tabbar"
- * if browser.tabs.autoHide is true we need to make sure extensions.tabmix.hideTabbar
- * is set to 1 "Hide tabbar when i have only one tab":
- */
+ /**
+ * In the first time TMP is running we need to match extensions.tabmix.hideTabbar to browser.tabs.autoHide.
+ * extensions.tabmix.hideTabbar default is 0 "Never Hide tabbar"
+ * if browser.tabs.autoHide is true we need to make sure extensions.tabmix.hideTabbar
+ * is set to 1 "Hide tabbar when i have only one tab":
+ */
gTMPprefObserver.setAutoHidePref();
if (TabmixTabbar.hideMode == 2)
@@ -658,7 +658,7 @@ var TMP_eventListener = {
}
}
let fullScreen = Tabmix.isVersion(470) ?
- document.fullscreenElement : document.mozFullScreen;
+ document.fullscreenElement : document.mozFullScreen;
if (!fullScreen) {
fullScrToggler.hidden = false;
}
@@ -684,11 +684,11 @@ var TMP_eventListener = {
gBrowser.ensureTabIsVisible(gBrowser.selectedTab, false);
},
- /**
- * for use in Firefox 40+.
- * update FullScreen._mouseTargetRect when in full screen and the tabbar is
- * visible. we call this function from tabBarHeightModified and showNavToolbox
- */
+ /**
+ * for use in Firefox 40+.
+ * update FullScreen._mouseTargetRect when in full screen and the tabbar is
+ * visible. we call this function from tabBarHeightModified and showNavToolbox
+ */
updateMouseTargetRect() {
if (!Tabmix.isVersion(400)) {
return;
diff --git a/chrome/content/utils.js b/chrome/content/utils.js
index f1228f9..ae34a72 100644
--- a/chrome/content/utils.js
+++ b/chrome/content/utils.js
@@ -122,7 +122,7 @@ var Tabmix = {
let [path, line] = stackData[1].replace("chrome://", "").split(":");
let index = path.indexOf("/") - 1;
let extensionName = index > -1 ?
- path.charAt(0).toUpperCase() + path.substr(1, index) + " " : "";
+ path.charAt(0).toUpperCase() + path.substr(1, index) + " " : "";
this.clog(err.message + "\n\n" + extensionName + "extension call " + aOldName +
" from:\nfile: chrome://" + path + "\nline: " + line +
"\n\nPlease inform Tabmix Plus developer" +
@@ -134,13 +134,13 @@ var Tabmix = {
promptService(intParam, strParam, aWindow, aCallBack) {
var dpb = Cc["@mozilla.org/embedcomp/dialogparam;1"]
- .createInstance(Ci.nsIDialogParamBlock);
+ .createInstance(Ci.nsIDialogParamBlock);
// intParam[0] - default button accept=0, cancel=1, extra1=2
// intParam[1] - show menuList= 1 , show textBox= 0, hide_both= 2
// intParam[2] - set checkbox checked true=1 , false=0, hide=2
// intParam[3] - flag - for menuList contents: flag to set menu selected item
// - for textBox rename: 1 , save: 0
-///XXX temp fix
+ ///XXX temp fix
// intParam[4] - flag - 1 - use Tabmix.Sessions.createMenuForDialog
// we use non modal dialog when we call for prompt on startup
diff --git a/modules/AboutNewTab.jsm b/modules/AboutNewTab.jsm
index 02e544c..ecdaa8f 100644
--- a/modules/AboutNewTab.jsm
+++ b/modules/AboutNewTab.jsm
@@ -43,7 +43,7 @@ AboutNewTabInternal = {
let tabBrowser = window.gBrowser;
let tabPanels = tabBrowser.mPanelContainer.childNodes;
let browsers = Array.prototype.map.call(tabPanels, tabPanel => tabBrowser.getBrowserForTabPanel(tabPanel))
- .filter(browser => browser.currentURI.spec == TabmixSvc.aboutNewtab);
+ .filter(browser => browser.currentURI.spec == TabmixSvc.aboutNewtab);
browsers.forEach(browser => this.updateBrowser(browser));
},
@@ -79,8 +79,8 @@ AboutNewTabInternal = {
if (TabmixSvc.version(400)) {
let tabmixTitle = TabmixPlacesUtils.getTitleFromBookmark(url, site.title);
title = enhancedTitle ? enhancedTitle :
- site.link.type == "history" ? site.link.baseDomain :
- tabmixTitle;
+ site.link.type == "history" ? site.link.baseDomain :
+ tabmixTitle;
tooltip = (tabmixTitle == url ? tabmixTitle : tabmixTitle + "\n" + url);
} else {
title = enhancedTitle ||
diff --git a/modules/AutoReload.jsm b/modules/AutoReload.jsm
index b8ef2e4..ea20b2f 100644
--- a/modules/AutoReload.jsm
+++ b/modules/AutoReload.jsm
@@ -22,9 +22,9 @@ this.AutoReload = {
aTab.postDataAcceptedByUser = false;
},
- /**
- * Popup command
- */
+ /**
+ * Popup command
+ */
addClonePopup(aPopup, aTab) {
var win = aTab.ownerGlobal;
let popup = win.document.getElementById("autoreload_popup");
@@ -169,9 +169,9 @@ this.AutoReload = {
}
},
- /**
- * called from popup and from tabclick options
- */
+ /**
+ * called from popup and from tabclick options
+ */
toggle(aTab) {
if (aTab.localName != "tab")
aTab = this._currentTab(aTab);
@@ -222,10 +222,10 @@ this.AutoReload = {
throw new Error("Tabmix: unexpected argument");
},
- /**
- * called by TabmixProgressListener.listener and Tabmix.restoreTabState
- * for pending tabs
- */
+ /**
+ * called by TabmixProgressListener.listener and Tabmix.restoreTabState
+ * for pending tabs
+ */
onTabReloaded(aTab, aBrowser) {
var win = aTab.ownerGlobal;
if (aTab.autoReloadTimerID)
@@ -236,8 +236,8 @@ this.AutoReload = {
if (aBrowser.__tabmixScrollPosition || null) {
if (TabmixSvc.version(330)) {
aBrowser.messageManager
- .sendAsyncMessage("Tabmix:setScrollPosition",
- aBrowser.__tabmixScrollPosition);
+ .sendAsyncMessage("Tabmix:setScrollPosition",
+ aBrowser.__tabmixScrollPosition);
} else {
let {x, y} = aBrowser.__tabmixScrollPosition;
aBrowser.contentWindow.scrollTo(x, y);
@@ -340,13 +340,13 @@ function doReloadTab(window, browser, data) {
if (!TabmixSvc.version(330)) {
let webNav = browser.webNavigation.sessionHistory
- .QueryInterface(Ci.nsIWebNavigation);
+ .QueryInterface(Ci.nsIWebNavigation);
webNav.reload(loadFlags);
return;
}
let windowUtils = window.QueryInterface(Ci.nsIInterfaceRequestor)
- .getInterface(Ci.nsIDOMWindowUtils);
+ .getInterface(Ci.nsIDOMWindowUtils);
browser.messageManager.sendAsyncMessage("Browser:Reload", {
flags: loadFlags,
diff --git a/modules/ContentClick.jsm b/modules/ContentClick.jsm
index 5405a8e..574c691 100644
--- a/modules/ContentClick.jsm
+++ b/modules/ContentClick.jsm
@@ -328,11 +328,11 @@ ContentClickInternal = {
return self.getHrefFromOnClick(event, href, this.wrappedNode, this.onclick);
});
XPCOMUtils.defineLazyGetter(this, "isLinkToExternalDomain", function() {
- /*
- * Check if link refers to external domain.
- * Get current page url
- * if user click a link while the page is reloading node.ownerDocument.location can be null
- */
+ /**
+ * Check if link refers to external domain.
+ * Get current page url
+ * if user click a link while the page is reloading node.ownerDocument.location can be null
+ */
let youtube = /www\.youtube\.com\/watch\?v=/;
let curpage = this.currentURL;
if (!youtube.test(curpage)) {
@@ -354,7 +354,7 @@ ContentClickInternal = {
return where == "tabshifted" ? "tabshifted" : "tab";
};
- ///XXX check again how SubmitToTab work
+ ///XXX check again how SubmitToTab work
if (typeof (this._window.SubmitToTab) != 'undefined') {
let target = event.target;
if (target instanceof HTMLButtonElement ||
@@ -437,7 +437,7 @@ ContentClickInternal = {
// catch other middle & right click
if (event.button !== 0) {
return event.button == 1 && this._data.hrefFromOnClick ?
- [TMP_tabshifted(event) + "@12"] : ["default at 12"];
+ [TMP_tabshifted(event) + "@12"] : ["default at 12"];
}
// the rest of the code if for left-click only
@@ -753,7 +753,7 @@ ContentClickInternal = {
if (TabmixSvc.prefBranch.getBoolPref("enablefiletype")) {
let types = TabmixSvc.prefBranch.getCharPref("filetype");
types = types.toLowerCase().split(" ")
- .filter(t => filetype.indexOf(t) == -1);
+ .filter(t => filetype.indexOf(t) == -1);
filetype = [...filetype, ...types];
}
@@ -1066,7 +1066,7 @@ ContentClickInternal = {
let browser = tab.linkedBrowser;
if (browser.getAttribute("remote") == "true") {
browser.messageManager
- .sendAsyncMessage("Tabmix:isFrameInContent", this.frameData);
+ .sendAsyncMessage("Tabmix:isFrameInContent", this.frameData);
} else {
let result = LinkNodeUtils.isFrameInContent(browser.contentWindow,
this.frameData.href, this.frameData.name);
@@ -1086,14 +1086,14 @@ ContentClickInternal = {
frameSearch.start(newEpoch);
},
- /**
- * @brief Check for certain JavaScript strings inside an attribute.
- *
- * @param attr The attribute to check.
- * @param string The string to check for.
- * @returns true if the strings are present, false if they aren't.
- *
- */
+ /**
+ * @brief Check for certain JavaScript strings inside an attribute.
+ *
+ * @param attr The attribute to check.
+ * @param string The string to check for.
+ * @returns true if the strings are present, false if they aren't.
+ *
+ */
checkAttr: function TMP_checkAttr(attr, string) {
if (typeof (attr) == "string")
return attr.startsWith(string);
@@ -1105,14 +1105,14 @@ ContentClickInternal = {
return (this.uriFixup = Cc["@mozilla.org/docshell/urifixup;1"].getService(Ci.nsIURIFixup));
},
- /**
- * @brief Check if link refers to external domain.
- *
- * @param target The target link.
- * @param curpage The current page url
- * @returns true when curpage and target are in different domains
- *
- */
+ /**
+ * @brief Check if link refers to external domain.
+ *
+ * @param target The target link.
+ * @param curpage The current page url
+ * @returns true when curpage and target are in different domains
+ *
+ */
isLinkToExternalDomain: function TMP_isLinkToExternalDomain(curpage, target) {
const fixupURI = url => {
try {
@@ -1150,13 +1150,13 @@ ContentClickInternal = {
if (!url) {
return null;
}
- /* DONT DELETE
- var host = url.hostPort.split(".");
- //XXX while (host.length > 3) <---- this make problem to site like yahoo mail.yahoo.com ard.yahoo.com need
- while (host.length > 2)
- host.shift();
- return host.join(".");
- */
+ /* DONT DELETE
+ var host = url.hostPort.split(".");
+ //XXX while (host.length > 3) <---- this make problem to site like yahoo mail.yahoo.com ard.yahoo.com need
+ while (host.length > 2)
+ host.shift();
+ return host.join(".");
+ */
let level;
try {
var publicSuffix = Services.eTLD.getPublicSuffixFromHost(url.hostPort);
diff --git a/modules/Decode.jsm b/modules/Decode.jsm
index fafbe95..40664ad 100644
--- a/modules/Decode.jsm
+++ b/modules/Decode.jsm
@@ -21,8 +21,8 @@ this.Decode = {
if (typeof unescape == "function")
return unescape(str);
- // let self = this;
- // return str.replace(/%(u[\da-f]{4}|[\da-f]{2})/gi, function(seq) {return self._(seq);});
+ // let self = this;
+ // return str.replace(/%(u[\da-f]{4}|[\da-f]{2})/gi, function(seq) {return self._(seq);});
return str.replace(/%(u[\da-f]{4}|[\da-f]{2})/gi, getReturnValue);
}
};
diff --git a/modules/DynamicRules.jsm b/modules/DynamicRules.jsm
index 51b8bd9..6eeb089 100644
--- a/modules/DynamicRules.jsm
+++ b/modules/DynamicRules.jsm
@@ -19,7 +19,7 @@ XPCOMUtils.defineLazyGetter(this, "Prefs", () => {
var TYPE;
XPCOMUtils.defineLazyGetter(this, "SSS", () => {
let sss = Cc['@mozilla.org/content/style-sheet-service;1']
- .getService(Ci.nsIStyleSheetService);
+ .getService(Ci.nsIStyleSheetService);
TYPE = sss.AGENT_SHEET;
return sss;
});
@@ -141,7 +141,7 @@ this.DynamicRules = {
bgImage.body = "linear-gradient(#topColor, #bottomColor)";
let bottomBorder = "linear-gradient(to top, rgba(10%,10%,10%,.4) 1px, transparent 1px),\n";
bgImage.bg = isMac ? bgImage.body : (bottomBorder + space20 + bgImage.body);
-///XXX move -moz-appearance: to general rule when style have bg
+ ///XXX move -moz-appearance: to general rule when style have bg
let backgroundRule = " {\n -moz-appearance: none;\n background-image: " + bgImage.bg + " !important;\n}\n";
if (isMac) {
backgroundRule = ' > .tab-stack > .tab-background >\n' +
@@ -199,7 +199,7 @@ this.DynamicRules = {
delete style.bg;
let styleName = rule.replace("Tab", "");
let ruleSelector = _selector.replace("#RULE", styleName)
- .replace("#STATE", tabState[styleName]);
+ .replace("#STATE", tabState[styleName]);
let hover = rule == "currentTab" ? "" : ":hover";
let selector = ruleSelector.replace("#HOVER", hover);
let type = hover.replace(":", "") || "selected";
@@ -266,7 +266,7 @@ this.DynamicRules = {
style[rule] = cssText.replace(/#textColor/g, prefObj.textColor);
} else if (prefObj.bg) {
style[rule] = cssText.replace(/#bottomColor/g, prefObj.bgColor)
- .replace(/#topColor/g, prefObj.bgTopColor);
+ .replace(/#topColor/g, prefObj.bgTopColor);
}
}
this.styles[name] = Object.keys(style).length ? style : null;
@@ -399,7 +399,7 @@ this.DynamicRules = {
}
if (value === undefined) {
prefValues[item] = item == "bgTopColor" ? prefValues.bgColor :
- defaultPrefValues[item];
+ defaultPrefValues[item];
} else {
prefValues[item] = value;
}
diff --git a/modules/MergeWindows.jsm b/modules/MergeWindows.jsm
index d3a7121..4acb3d2 100644
--- a/modules/MergeWindows.jsm
+++ b/modules/MergeWindows.jsm
@@ -266,7 +266,7 @@ this.MergeWindows = {
// recent suitable window
let fn = isWINNT ? "push" : "unshift";
let windowList = !isWINNT ? Services.wm.getEnumerator("navigator:browser") :
- Services.wm.getZOrderDOMWindowEnumerator("navigator:browser", true);
+ Services.wm.getZOrderDOMWindowEnumerator("navigator:browser", true);
while (more() && windowList.hasMoreElements()) {
let nextWin = windowList.getNext();
if (isSuitableBrowserWindow(nextWin)) {
diff --git a/modules/Places.jsm b/modules/Places.jsm
index d53ff0a..56a6206 100644
--- a/modules/Places.jsm
+++ b/modules/Places.jsm
@@ -159,7 +159,7 @@ PlacesUtilsInternal = {
}
let fnName = treeStyleTabInstalled && PlacesUIUtils.__treestyletab__openNodeWithEvent ?
- "__treestyletab__openNodeWithEvent" : "openNodeWithEvent";
+ "__treestyletab__openNodeWithEvent" : "openNodeWithEvent";
Tabmix.changeCode(PlacesUIUtils, "PlacesUIUtils." + fnName)._replace(
/window.whereToOpenLink\(aEvent[,\s\w]*\)/, '{where: $&, event: aEvent}'
).toCode();
@@ -240,7 +240,7 @@ PlacesUtilsInternal = {
let prefix = "chrome://" + ietab.folder + "/content/reloaded.html?url=";
if (aUrl != prefix) {
let url = aUrl.startsWith(prefix) ?
- aUrl.replace(prefix, "") : prefix + aUrl;
+ aUrl.replace(prefix, "") : prefix + aUrl;
result = aCallBack.apply(this, [url]) ||
hasHref && aCallBack.apply(this, url.split("#"));
}
diff --git a/modules/RenameTab.jsm b/modules/RenameTab.jsm
index 4747853..a2836a4 100644
--- a/modules/RenameTab.jsm
+++ b/modules/RenameTab.jsm
@@ -28,8 +28,8 @@ this.RenameTab = {
this.data.tab = aTab = aTab.localName == "tab" ? aTab : gBrowser.mCurrentTab;
var browser = gBrowser.getBrowserForTab(aTab);
let docTitle = aTab.hasAttribute("pending") ?
- this.window.TMP_SessionStore.getTitleFromTabState(aTab) :
- browser.contentTitle;
+ this.window.TMP_SessionStore.getTitleFromTabState(aTab) :
+ browser.contentTitle;
this.data.url = browser.currentURI.spec;
this.data.docTitle = TabmixPlacesUtils.getTitleFromBookmark(this.data.url,
docTitle, null, aTab);
diff --git a/modules/Shortcuts.jsm b/modules/Shortcuts.jsm
index 9b42edd..8131f79 100644
--- a/modules/Shortcuts.jsm
+++ b/modules/Shortcuts.jsm
@@ -293,7 +293,7 @@ this.Shortcuts = {
let newValue = shortcuts[key] || _default;
let updateBlockState = keyData.sessionKey && !/^d&/.test(newValue) &&
(onOpen ? disableSessionKeys :
- disableSessionKeys != keyData.blocked);
+ disableSessionKeys != keyData.blocked);
if (keyData.sessionKey)
keyData.blocked = disableSessionKeys;
// on start report disabled by default shortcut as changed so _updateKey
@@ -353,7 +353,7 @@ this.Shortcuts = {
if (!key)
return "";
let modifiers = key.modifiers.replace(/^[\s,]+|[\s,]+$/g, "")
- .replace("ctrl", "control").split(",");
+ .replace("ctrl", "control").split(",");
key.modifiers = ["control", "meta", "accel", "alt", "shift"].filter(mod => {
return new RegExp(mod).test(modifiers);
}).join(",");
diff --git a/modules/SingleWindowModeUtils.jsm b/modules/SingleWindowModeUtils.jsm
index e225b4c..bfdd782 100644
--- a/modules/SingleWindowModeUtils.jsm
+++ b/modules/SingleWindowModeUtils.jsm
@@ -10,15 +10,15 @@ Cu.import("resource://tabmixplus/TabmixSvc.jsm", this);
Cu.import("resource://gre/modules/PrivateBrowsingUtils.jsm", this);
this.SingleWindowModeUtils = {
- /**
- * @brief Locate a browser window.
- *
- * @param aExclude A scripted window object that we do not want to use.
- *
- * @returns A scripted window object representing a browser
- * window that is not the same as aExclude, and is
- * additionally not a popup window.
- */
+ /**
+ * @brief Locate a browser window.
+ *
+ * @param aExclude A scripted window object that we do not want to use.
+ *
+ * @returns A scripted window object representing a browser
+ * window that is not the same as aExclude, and is
+ * additionally not a popup window.
+ */
getBrowserWindow(aExclude) {
// on per-window private browsing mode,
// allow to open one normal window and one private window in single window mode
@@ -167,7 +167,7 @@ this.SingleWindowModeUtils = {
params.allowThirdPartyFixup = args[4] || false;
if (TabmixSvc.version(500)) {
params.userContextId = args[6] != undefined ? args[6] :
- Ci.nsIScriptSecurityManager.DEFAULT_USER_CONTEXT_ID;
+ Ci.nsIScriptSecurityManager.DEFAULT_USER_CONTEXT_ID;
}
urls = [uriToLoad];
} else {
diff --git a/modules/SyncedTabs.jsm b/modules/SyncedTabs.jsm
index 98d3762..213cd22 100644
--- a/modules/SyncedTabs.jsm
+++ b/modules/SyncedTabs.jsm
@@ -71,7 +71,7 @@ this.SyncedTabs = {
if (TabmixSvc.version(510)) {
const fnName = typeof TabListView.prototype._openAllClientTabs == "function" ?
- "TabListView.prototype._openAllClientTabs" : "TabListView.prototype.onClick";
+ "TabListView.prototype._openAllClientTabs" : "TabListView.prototype.onClick";
Tabmix.changeCode(TabListView.prototype, fnName)._replace(
'this.props.onOpenTabs(urls, where);',
`if (/^tab/.test(where)) {
diff --git a/modules/TabGroupsMigrator.jsm b/modules/TabGroupsMigrator.jsm
index 0299ca5..0003dfd 100644
--- a/modules/TabGroupsMigrator.jsm
+++ b/modules/TabGroupsMigrator.jsm
@@ -153,8 +153,8 @@ this.TabmixGroupsMigrator = {
accessKey: string("install.accesskey"),
callback() {
let link = TabmixSvc.isPaleMoon ?
- "http://www.palemoon.org/tabgroups.shtml" :
- "https://addons.mozilla.org/en-US/firefox/addon/tab-groups-panorama/";
+ "http://www.palemoon.org/tabgroups.shtml" :
+ "https://addons.mozilla.org/en-US/firefox/addon/tab-groups-panorama/";
win.openUILinkIn(link, "tab");
}
}];
@@ -231,7 +231,7 @@ this.TabmixGroupsMigrator = {
} else {
for (let group of windowGroups) {
let title = group.anonGroupID ?
- getTitle(++anonGroupCount) : group.tabGroupsMigrationTitle;
+ getTitle(++anonGroupCount) : group.tabGroupsMigrationTitle;
group.tabGroupsMigrationTitle = winTitle + " " + title;
}
}
@@ -276,7 +276,7 @@ this.TabmixGroupsMigrator = {
index: 0,
title: TabmixSvc.getSMString("sm.bookmarks.sessionFolder"),
}).then(this.promiseItemId)
- .catch(TabmixSvc.console.reportError);
+ .catch(TabmixSvc.console.reportError);
},
getSessionsFolder(folder) {
diff --git a/modules/TabRestoreQueue.jsm b/modules/TabRestoreQueue.jsm
index 0dc4fe3..1346457 100644
--- a/modules/TabRestoreQueue.jsm
+++ b/modules/TabRestoreQueue.jsm
@@ -55,7 +55,7 @@ let internal = {
willRestoreSoon(tab) {
let {priority, hidden, visible} = this.tabs;
let {restoreOnDemand, restorePinnedTabsOnDemand,
- restoreHiddenTabs} = this.prefs;
+ restoreHiddenTabs} = this.prefs;
let restorePinned = !(restoreOnDemand && restorePinnedTabsOnDemand);
let candidateSet = [];
diff --git a/modules/TabmixSvc.jsm b/modules/TabmixSvc.jsm
index e7f3800..da5f5e2 100644
--- a/modules/TabmixSvc.jsm
+++ b/modules/TabmixSvc.jsm
@@ -34,8 +34,7 @@ function isVersion(aVersionNo) {
this.TabmixSvc = {
get selectedAtt() {
delete this.selectedAtt;
- return (this.selectedAtt = isVersion(390) ?
- "visuallyselected" : "selected");
+ return (this.selectedAtt = isVersion(390) ? "visuallyselected" : "selected");
},
aboutBlank: "about:blank",
diff --git a/modules/Utils.jsm b/modules/Utils.jsm
index 46e89bb..874bc2c 100644
--- a/modules/Utils.jsm
+++ b/modules/Utils.jsm
@@ -120,7 +120,7 @@ this.TabmixUtils = {
makeInputStream(aString) {
let stream = Cc["@mozilla.org/io/string-input-stream;1"]
- .createInstance(Ci.nsISupportsCString);
+ .createInstance(Ci.nsISupportsCString);
stream.data = aString;
return stream;
},
diff --git a/modules/extensions/CompatibilityCheck.jsm b/modules/extensions/CompatibilityCheck.jsm
index edec7d4..a16e671 100644
--- a/modules/extensions/CompatibilityCheck.jsm
+++ b/modules/extensions/CompatibilityCheck.jsm
@@ -121,12 +121,12 @@ CompatibilityCheck.prototype = {
// make promptService non modal on startup
var self = this;
var callBack = this.callbackDialog ? null :
- function(aResult) {
- aResult.showatStart = showatStart;
- self.promptCallBack(aResult);
- };
+ function(aResult) {
+ aResult.showatStart = showatStart;
+ self.promptCallBack(aResult);
+ };
var result = this.window.Tabmix.promptService([TMP_BUTTON_EXTRA1, TMP_HIDE_MENUANDTEXT, chkBoxState],
- [title, msg, "", chkBoxLabel, buttons.join("\n")], this.window, callBack);
+ [title, msg, "", chkBoxLabel, buttons.join("\n")], this.window, callBack);
if (!callBack)
this.promptCallBack(result);
},
@@ -158,7 +158,7 @@ CompatibilityCheck.prototype = {
if (aRestart && TabmixSvc.topWin().canQuitApplication()) {
var appStartup = Ci.nsIAppStartup;
Cc["@mozilla.org/toolkit/app-startup;1"]
- .getService(appStartup).quit(appStartup.eRestart | appStartup.eAttemptQuit);
+ .getService(appStartup).quit(appStartup.eRestart | appStartup.eAttemptQuit);
} else {
let title = TabmixSvc.getString("incompatible.title");
let msg = TabmixSvc.getString("incompatible.msg2");
@@ -167,7 +167,7 @@ CompatibilityCheck.prototype = {
// make it not modal on startup
let callBack = this.callbackDialog ? null : function() {/* nothing to do */};
this.window.Tabmix.promptService([TMP_BUTTON_CANCEL, TMP_HIDE_MENUANDTEXT, TMP_HIDE_CHECKBOX],
- [title, msg, "", "", buttons], this.window, callBack);
+ [title, msg, "", "", buttons], this.window, callBack);
}
},
diff --git a/modules/log.jsm b/modules/log.jsm
index 5d704af..444ac5d 100644
--- a/modules/log.jsm
+++ b/modules/log.jsm
@@ -51,7 +51,7 @@ this.console = {
let result = "", isObj = typeof aMethod == "object";
if (typeof aMethod != "function") {
result = isObj ? aMethod.obj[aMethod.name] :
- this.getObject(aWindow, aMethod);
+ this.getObject(aWindow, aMethod);
result = " = " + result.toString();
}
this.clog((isObj ? aMethod.fullName : aMethod) + result, this.caller);
@@ -181,15 +181,15 @@ this.console = {
return stackUtil;
},
-/*
-options = {
- msg: msg
- log: true / false; default true
- function: true / false default false
- deep: true / false default false
- offset; for internal use only true / false default false
-}
-*/
+ /*
+ options = {
+ msg: msg
+ log: true / false; default true
+ function: true / false default false
+ deep: true / false default false
+ offset; for internal use only true / false default false
+ }
+ */
obj: function TMP_console_obj(aObj, aMessage, aDisallowLog, level) {
if (!aObj || typeof aObj != "object") {
let msg = "log.obj was called with non-object argument\n";
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-mozext/tabmixplus.git
More information about the Pkg-mozext-commits
mailing list