forked from mirrors/gecko-dev
		
	
		
			
				
	
	
		
			87 lines
		
	
	
	
		
			2.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			87 lines
		
	
	
	
		
			2.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| "use strict";
 | |
| 
 | |
| const Cc = Components.classes;
 | |
| const Ci = Components.interfaces;
 | |
| const Cu = Components.utils;
 | |
| const Cr = Components.results;
 | |
| 
 | |
| Cu.import("resource:///modules/tabview/utils.jsm");
 | |
| Cu.import("resource://gre/modules/Services.jsm");
 | |
| Cu.import("resource://gre/modules/XPCOMUtils.jsm");
 | |
| 
 | |
| XPCOMUtils.defineLazyGetter(this, "tabviewBundle", function() {
 | |
|   return Services.strings.
 | |
|     createBundle("chrome://browser/locale/tabview.properties");
 | |
| });
 | |
| XPCOMUtils.defineLazyGetter(this, "tabbrowserBundle", function() {
 | |
|   return Services.strings.
 | |
|     createBundle("chrome://browser/locale/tabbrowser.properties");
 | |
| });
 | |
| 
 | |
| function tabviewString(name) tabviewBundle.GetStringFromName('tabview.' + name);
 | |
| function tabbrowserString(name) tabbrowserBundle.GetStringFromName(name);
 | |
| 
 | |
| XPCOMUtils.defineLazyGetter(this, "gPrefBranch", function() {
 | |
|   return Services.prefs.getBranch("browser.panorama.");
 | |
| });
 | |
| 
 | |
| XPCOMUtils.defineLazyGetter(this, "gPrivateBrowsing", function() {
 | |
|   return Cc["@mozilla.org/privatebrowsing;1"].
 | |
|            getService(Ci.nsIPrivateBrowsingService);
 | |
| });
 | |
| 
 | |
| XPCOMUtils.defineLazyGetter(this, "gFavIconService", function() {
 | |
|   return Cc["@mozilla.org/browser/favicon-service;1"].
 | |
|            getService(Ci.nsIFaviconService);
 | |
| });
 | |
| 
 | |
| XPCOMUtils.defineLazyGetter(this, "gNetUtil", function() {
 | |
|   var obj = {};
 | |
|   Cu.import("resource://gre/modules/NetUtil.jsm", obj);
 | |
|   return obj.NetUtil;
 | |
| });
 | |
| 
 | |
| var gWindow = window.parent;
 | |
| var gBrowser = gWindow.gBrowser;
 | |
| var gTabView = gWindow.TabView;
 | |
| var gTabViewDeck = gWindow.document.getElementById("tab-view-deck");
 | |
| var gBrowserPanel = gWindow.document.getElementById("browser-panel");
 | |
| var gTabViewFrame = gWindow.document.getElementById("tab-view");
 | |
| 
 | |
| let AllTabs = {
 | |
|   _events: {
 | |
|     attrModified: "TabAttrModified",
 | |
|     close:        "TabClose",
 | |
|     move:         "TabMove",
 | |
|     open:         "TabOpen",
 | |
|     select:       "TabSelect",
 | |
|     pinned:       "TabPinned",
 | |
|     unpinned:     "TabUnpinned"
 | |
|   },
 | |
| 
 | |
|   get tabs() {
 | |
|     return Array.filter(gBrowser.tabs, function (tab) !tab.closing);
 | |
|   },
 | |
| 
 | |
|   register: function AllTabs_register(eventName, callback) {
 | |
|     gBrowser.tabContainer.addEventListener(this._events[eventName], callback, false);
 | |
|   },
 | |
| 
 | |
|   unregister: function AllTabs_unregister(eventName, callback) {
 | |
|     gBrowser.tabContainer.removeEventListener(this._events[eventName], callback, false);
 | |
|   }
 | |
| };
 | |
| 
 | |
| # NB: Certain files need to evaluate before others
 | |
| 
 | |
| #include iq.js
 | |
| #include storage.js
 | |
| #include storagePolicy.js
 | |
| #include items.js
 | |
| #include groupitems.js
 | |
| #include tabitems.js
 | |
| #include drag.js
 | |
| #include trench.js
 | |
| #include thumbnailStorage.js
 | |
| #include search.js
 | |
| #include ui.js
 | 
