[Pkg-mozext-commits] [tabmixplus] 01/107: Add shortcut to 'Clear Closed Tabs List'

David Prévot taffit at moszumanska.debian.org
Tue Dec 29 19:02:43 UTC 2015


This is an automated email from the git hooks/post-receive script.

taffit pushed a commit to branch master
in repository tabmixplus.

commit d3c2aa80a683a012078c6b2b1bfd012561de6d2f
Author: onemen <tabmix.onemen at gmail.com>
Date:   Mon Aug 24 18:33:21 2015 +0300

    Add shortcut to 'Clear Closed Tabs List'
---
 chrome/content/preferences/menu.js             |  1 +
 chrome/content/preferences/menu.xul            |  1 +
 chrome/content/preferences/shortcutsLabels.xml |  7 ++++++-
 chrome/content/session/sessionStore.js         |  7 +++++++
 modules/Shortcuts.jsm                          | 19 ++++++++++++++-----
 5 files changed, 29 insertions(+), 6 deletions(-)

diff --git a/chrome/content/preferences/menu.js b/chrome/content/preferences/menu.js
index ee53553..3f2c8ce 100644
--- a/chrome/content/preferences/menu.js
+++ b/chrome/content/preferences/menu.js
@@ -4,6 +4,7 @@ var gMenuPane = { // jshint ignore:line
   init: function () {
     $("pinTab").label = gPrefWindow.pinTabLabel;
     $("togglePinTab").setAttribute("label", gPrefWindow.pinTabLabel);
+    $("clearClosedTabs").setAttribute("label", TabmixSvc.getString("undoclosetab.clear.label"));
 
     var browserWindow = Tabmix.getTopWin();
     // if Tabview exist copy its menu label
diff --git a/chrome/content/preferences/menu.xul b/chrome/content/preferences/menu.xul
index 4ca4527..2a3c090 100644
--- a/chrome/content/preferences/menu.xul
+++ b/chrome/content/preferences/menu.xul
@@ -312,6 +312,7 @@
             <shortcut id="removeright"     label="&clicktab.removetoRight;"/>
             <shortcut id="undoClose"       label="&clicktab.uctab;"/>
             <shortcut id="undoCloseTab"    label="&clicktab.uctab;*"/>
+            <shortcut id="clearClosedTabs"/>
             <shortcut id="ucatab"          label="&clicktab.ucatab;"/>
             <shortcut id="saveWindow"      label="&saveWindow.label;"/>
             <shortcut id="saveSession"     label="&saveAllWindows.label;"/>
diff --git a/chrome/content/preferences/shortcutsLabels.xml b/chrome/content/preferences/shortcutsLabels.xml
index 645d83f..8d1c1e8 100644
--- a/chrome/content/preferences/shortcutsLabels.xml
+++ b/chrome/content/preferences/shortcutsLabels.xml
@@ -3,6 +3,8 @@
 <!DOCTYPE bindings [
 <!ENTITY % pref-tabmixDTD SYSTEM "chrome://tabmixplus/locale/pref-tabmix.dtd">
 %pref-tabmixDTD;
+<!ENTITY % shortcutsDTD SYSTEM "chrome://tabmixplus/locale/shortcuts.dtd">
+%shortcutsDTD;
 ]>
 
 <bindings id="tmp_shortcuts_labels"
@@ -31,7 +33,10 @@
              removeother="&clicktab.removeother;"
              removeleft="&clicktab.removetoLeft;"
              removeright="&clicktab.removetoRight;"
-             undoClose="&clicktab.uctab;">
+             undoClose="&clicktab.uctab;"
+             ucatab="&clicktab.ucatab;"
+             switchToLast="&shortcuts.switchToLast;"
+             >
     </content>
   </binding>
 
diff --git a/chrome/content/session/sessionStore.js b/chrome/content/session/sessionStore.js
index 1855767..fc29293 100644
--- a/chrome/content/session/sessionStore.js
+++ b/chrome/content/session/sessionStore.js
@@ -413,11 +413,17 @@ var TMP_ClosedTabs = { // jshint ignore:line
       }
 
       aPopup.appendChild(document.createElement("menuseparator"));
+      function addKey(item, id) {
+        if (document.getElementById("key_tm_" + id)) {
+          item.setAttribute("key", "key_tm_" + id);
+        }
+      }
       // "Clear Closed Tabs List"
       m = aPopup.appendChild(document.createElement("menuitem"));
       m.setAttribute("id", "clearClosedTabsList");
       m.setAttribute("label", TabmixSvc.getString("undoclosetab.clear.label"));
       m.setAttribute("value", -1);
+      addKey(m, "clearClosedTabs");
       m.addEventListener("command", function() {
          TMP_ClosedTabs.restoreTab('original', -1);
       });
@@ -427,6 +433,7 @@ var TMP_ClosedTabs = { // jshint ignore:line
       m.setAttribute("id", "restoreAllClosedTabs");
       m.setAttribute("label", gNavigatorBundle.getString("menuRestoreAllTabs.label"));
       m.setAttribute("value", -2);
+      addKey(m, "ucatab");
       m.addEventListener("command", function() {
          TMP_ClosedTabs.restoreTab('original', -2);
       });
diff --git a/modules/Shortcuts.jsm b/modules/Shortcuts.jsm
index b5e21cd..2db707b 100644
--- a/modules/Shortcuts.jsm
+++ b/modules/Shortcuts.jsm
@@ -40,6 +40,9 @@ this.Shortcuts = {
     removeright: {command: 18},
     undoClose: {default: "VK_F12 accel"},
     undoCloseTab: {id: "key_undoCloseTab", default: "T accel,shift"},
+    clearClosedTabs: {
+      command: function() {this.TMP_ClosedTabs.restoreTab('original', -1);}
+    },
     ucatab: {command: 13},
     saveWindow: {id: "key_tm-sm-saveone", default: "VK_F1 accel", sessionKey: true},
     saveSession: {id: "key_tm-sm-saveall", default: "VK_F9 accel", sessionKey: true},
@@ -89,6 +92,8 @@ this.Shortcuts = {
     labels.togglePinTab =
       $("context_pinTab").getAttribute("label") + "/" +
       $("context_unpinTab").getAttribute("label");
+    labels.clearClosedTabs =
+      TabmixSvc.getString("undoclosetab.clear.label");
     for (let key of Object.keys(this.keys)) {
       let keyData = this.keys[key];
       keyData.value = keyData.default || "";
@@ -165,11 +170,15 @@ this.Shortcuts = {
   },
 
   onCommand: function TMP_SC_onCommand(aKey) {
-   try {
-    let win = aKey.ownerDocument.defaultView;
-    let command = this.keys[aKey._id].command;
-    win.TabmixTabClickOptions.doCommand(command, win.gBrowser.selectedTab);
-   } catch (ex) {TabmixSvc.console.assert(ex);}
+    try {
+      let win = aKey.ownerDocument.defaultView;
+      let command = this.keys[aKey._id].command;
+      if (typeof command == "function") {
+        command.apply(win, [win.gBrowser.selectedTab]);
+      } else {
+        win.TabmixTabClickOptions.doCommand(command, win.gBrowser.selectedTab);
+      }
+    } catch (ex) {TabmixSvc.console.assert(ex);}
   },
 
   onUnload: function TMP_SC_onUnload(aWindow) {

-- 
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