[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