Minefield 4.0b2preで、アドオンマネージャのタブを開いていると起動後のセッション復元が中途半端なところで止まってしまう問題を修正
git-svn-id: http://www.cozmixng.org/repos/piro/treestyletab/trunk@6801 599a83e7-65a4-db11-8015-0010dcdd6dc2
This commit is contained in:
parent
10555d3140
commit
e7d8cfc98e
@ -693,11 +693,11 @@ TreeStyleTabService.overrideExtensionsOnInitAfter = function TSTService_override
|
|||||||
|
|
||||||
// Focus Last Selected Tab 0.9.5.x
|
// Focus Last Selected Tab 0.9.5.x
|
||||||
// http://www.gozer.org/mozilla/extensions/
|
// http://www.gozer.org/mozilla/extensions/
|
||||||
if (this.extensions.isAvailable('focuslastselectedtab@gozer.org')) {
|
this.extensions.checkAvailable('focuslastselectedtab@gozer.org', { ok : function() {
|
||||||
TreeStyleTabService.registerTabFocusAllowance(function(aTabBrowser) {
|
TreeStyleTabService.registerTabFocusAllowance(function(aTabBrowser) {
|
||||||
return !aTabBrowser.selectedTab.hasAttribute('lastselected');
|
return !aTabBrowser.selectedTab.hasAttribute('lastselected');
|
||||||
});
|
});
|
||||||
}
|
}});
|
||||||
|
|
||||||
// LastTab
|
// LastTab
|
||||||
// https://addons.mozilla.org/firefox/addon/112
|
// https://addons.mozilla.org/firefox/addon/112
|
||||||
@ -1099,9 +1099,9 @@ TreeStyleTabService.overrideExtensionsOnInitAfter = function TSTService_override
|
|||||||
|
|
||||||
// Remove New Tab Button
|
// Remove New Tab Button
|
||||||
// https://addons.mozilla.org/firefox/addon/10535
|
// https://addons.mozilla.org/firefox/addon/10535
|
||||||
if (this.extensions.isAvailable('remove-new-tab-button@forerunnerdesigns.com')) {
|
this.extensions.checkAvailable('remove-new-tab-button@forerunnerdesigns.com', { ok : function() {
|
||||||
document.documentElement.setAttribute(TreeStyleTabService.kHIDE_NEWTAB, true);
|
document.documentElement.setAttribute(TreeStyleTabService.kHIDE_NEWTAB, true);
|
||||||
}
|
}});
|
||||||
|
|
||||||
|
|
||||||
window.setTimeout(function(aSelf) {
|
window.setTimeout(function(aSelf) {
|
||||||
|
@ -692,7 +692,7 @@ TreeStyleTabBrowser.prototype = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
this.onPrefChange('extensions.treestyletab.tabbar.style');
|
this.onPrefChange('extensions.treestyletab.tabbar.style');
|
||||||
this.onPrefChange('extensions.treestyletab.twisty.style');
|
// this.onPrefChange('extensions.treestyletab.twisty.style');
|
||||||
this.onPrefChange('extensions.treestyletab.showBorderForFirstTab');
|
this.onPrefChange('extensions.treestyletab.showBorderForFirstTab');
|
||||||
this.onPrefChange('extensions.treestyletab.tabbar.invertTabContents');
|
this.onPrefChange('extensions.treestyletab.tabbar.invertTabContents');
|
||||||
this.onPrefChange('extensions.treestyletab.tabbar.invertClosebox');
|
this.onPrefChange('extensions.treestyletab.tabbar.invertClosebox');
|
||||||
@ -1781,21 +1781,33 @@ TreeStyleTabBrowser.prototype = {
|
|||||||
},
|
},
|
||||||
setTwistyStyle : function TSTBrowser_setTwistyStyle(aStyle)
|
setTwistyStyle : function TSTBrowser_setTwistyStyle(aStyle)
|
||||||
{
|
{
|
||||||
if (aStyle == 'auto') {
|
if (aStyle != 'auto') {
|
||||||
if (this.getTreePref('tabbar.style') == 'sidebar') {
|
this.setTabbrowserAttribute(this.kTWISTY_STYLE, aStyle);
|
||||||
aStyle = 'osx';
|
return;
|
||||||
}
|
|
||||||
else if (
|
|
||||||
this.extensions.isAvailable('informationaltab@piro.sakura.ne.jp') &&
|
|
||||||
this.getPref('extensions.informationaltab.thumbnail.enabled') &&
|
|
||||||
this.getPref('extensions.informationaltab.thumbnail.position') < 100
|
|
||||||
) {
|
|
||||||
aStyle = 'retro';
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
aStyle = 'modern-black';
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
aStyle = 'modern-black';
|
||||||
|
|
||||||
|
if (this.getTreePref('tabbar.style') == 'sidebar') {
|
||||||
|
aStyle = 'osx';
|
||||||
|
}
|
||||||
|
else if (
|
||||||
|
this.getPref('extensions.informationaltab.thumbnail.enabled') &&
|
||||||
|
this.getPref('extensions.informationaltab.thumbnail.position') < 100
|
||||||
|
) {
|
||||||
|
let self = this;
|
||||||
|
this.extensions.checkAvailable('informationaltab@piro.sakura.ne.jp', {
|
||||||
|
ok : function() {
|
||||||
|
aStyle = 'retro';
|
||||||
|
self.setTabbrowserAttribute(self.kTWISTY_STYLE, aStyle);
|
||||||
|
},
|
||||||
|
ng : function() {
|
||||||
|
self.setTabbrowserAttribute(self.kTWISTY_STYLE, aStyle);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
this.setTabbrowserAttribute(this.kTWISTY_STYLE, aStyle);
|
this.setTabbrowserAttribute(this.kTWISTY_STYLE, aStyle);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -2,13 +2,34 @@
|
|||||||
Extensions Compatibility Library
|
Extensions Compatibility Library
|
||||||
|
|
||||||
Usage:
|
Usage:
|
||||||
if (window['piro.sakura.ne.jp'].extensions.isAvailable('my.extension.id@example.com'))
|
Asynchronus:
|
||||||
window['piro.sakura.ne.jp'].extensions.goToOptions('my.extension.id@example.com');
|
var extensions = window['piro.sakura.ne.jp'].extensions;
|
||||||
// just same to:
|
extensions.isAvailable('my.extension.id@example.com', {
|
||||||
// if (window['piro.sakura.ne.jp'].extensions.isInstalled('my.extension.id@example.com') &&
|
ok : function() { extensions.goToOptions('my.extension.id@example.com'); },
|
||||||
// window['piro.sakura.ne.jp'].extensions.isEnabled('my.extension.id@example.com'))
|
ng : function() { alert('NOT INSTALLED'); }
|
||||||
// window['piro.sakura.ne.jp'].extensions.goToOptions('my.extension.id@example.com');
|
});
|
||||||
var dir = window['piro.sakura.ne.jp'].extensions.getInstalledLocation('my.extension.id@example.com');
|
// just same to:
|
||||||
|
// extensions.isInstalled('my.extension.id@example.com', {
|
||||||
|
// ok : function() {
|
||||||
|
// extensions.isEnabled('my.extension.id@example.com', {
|
||||||
|
// ok : function() { extensions.goToOptions('my.extension.id@example.com'); }
|
||||||
|
// });
|
||||||
|
// }
|
||||||
|
// });
|
||||||
|
extensions.isInstalled('my.extension.id@example.com', {
|
||||||
|
ok : function(aDir) {
|
||||||
|
var dir = aDir; // nsILocalFile
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
Synchronus: (DEPRECATED)
|
||||||
|
if (extensions.isAvailable('my.extension.id@example.com'))
|
||||||
|
extensions.goToOptions('my.extension.id@example.com');
|
||||||
|
// just same to:
|
||||||
|
// if (extensions.isInstalled('my.extension.id@example.com') &&
|
||||||
|
// extensions.isEnabled('my.extension.id@example.com'))
|
||||||
|
// extensions.goToOptions('my.extension.id@example.com');
|
||||||
|
var dir = extensions.getInstalledLocation('my.extension.id@example.com'); // nsILocalFile
|
||||||
|
|
||||||
lisence: The MIT License, Copyright (c) 2009-2010 SHIMODA "Piro" Hiroshi
|
lisence: The MIT License, Copyright (c) 2009-2010 SHIMODA "Piro" Hiroshi
|
||||||
http://www.cozmixng.org/repos/piro/fx3-compatibility-lib/trunk/license.txt
|
http://www.cozmixng.org/repos/piro/fx3-compatibility-lib/trunk/license.txt
|
||||||
@ -16,8 +37,7 @@
|
|||||||
http://www.cozmixng.org/repos/piro/fx3-compatibility-lib/trunk/extensions.js
|
http://www.cozmixng.org/repos/piro/fx3-compatibility-lib/trunk/extensions.js
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* To work as a JS Code Module (*require namespace.jsm)
|
/* To work as a JS Code Module */
|
||||||
http://www.cozmixng.org/repos/piro/fx3-compatibility-lib/trunk/namespace.jsm */
|
|
||||||
if (typeof window == 'undefined') {
|
if (typeof window == 'undefined') {
|
||||||
this.EXPORTED_SYMBOLS = ['extensions'];
|
this.EXPORTED_SYMBOLS = ['extensions'];
|
||||||
|
|
||||||
@ -34,7 +54,7 @@ if (typeof window == 'undefined') {
|
|||||||
}
|
}
|
||||||
|
|
||||||
(function() {
|
(function() {
|
||||||
const currentRevision = 6;
|
const currentRevision = 7;
|
||||||
|
|
||||||
if (!('piro.sakura.ne.jp' in window)) window['piro.sakura.ne.jp'] = {};
|
if (!('piro.sakura.ne.jp' in window)) window['piro.sakura.ne.jp'] = {};
|
||||||
|
|
||||||
@ -57,7 +77,7 @@ if (typeof window == 'undefined') {
|
|||||||
revision : currentRevision,
|
revision : currentRevision,
|
||||||
|
|
||||||
// Firefox 3.7 or later
|
// Firefox 3.7 or later
|
||||||
getInstalledAddon : function(aId)
|
_getInstalledAddon : function(aId)
|
||||||
{
|
{
|
||||||
var addon;
|
var addon;
|
||||||
AM.AddonManager.getAddonByID(aId, function(aAddon) {
|
AM.AddonManager.getAddonByID(aId, function(aAddon) {
|
||||||
@ -72,58 +92,118 @@ if (typeof window == 'undefined') {
|
|||||||
return addon;
|
return addon;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_formatCallbacks : function()
|
||||||
|
{
|
||||||
|
var callbacks = {
|
||||||
|
ok : aOKCallback,
|
||||||
|
ng : aNGCallback
|
||||||
|
};
|
||||||
|
if (typeof aOKCallback != 'function')
|
||||||
|
callbacks = aOKCallback;
|
||||||
|
return callbacks;
|
||||||
|
},
|
||||||
|
|
||||||
// Firefox 3.6 or older
|
// Firefox 3.6 or older
|
||||||
ExtensionManager : ('@mozilla.org/extensions/manager;1' in Cc) ?
|
_ExtensionManager : ('@mozilla.org/extensions/manager;1' in Cc) ?
|
||||||
Cc['@mozilla.org/extensions/manager;1']
|
Cc['@mozilla.org/extensions/manager;1']
|
||||||
.getService(Ci.nsIExtensionManager) :
|
.getService(Ci.nsIExtensionManager) :
|
||||||
null,
|
null,
|
||||||
RDF : Cc['@mozilla.org/rdf/rdf-service;1']
|
_RDF : Cc['@mozilla.org/rdf/rdf-service;1']
|
||||||
.getService(Ci.nsIRDFService),
|
.getService(Ci.nsIRDFService),
|
||||||
WindowMediator : Cc['@mozilla.org/appshell/window-mediator;1']
|
_WindowMediator : Cc['@mozilla.org/appshell/window-mediator;1']
|
||||||
.getService(Ci.nsIWindowMediator),
|
.getService(Ci.nsIWindowMediator),
|
||||||
Prefs : Cc['@mozilla.org/preferences;1']
|
_Prefs : Cc['@mozilla.org/preferences;1']
|
||||||
.getService(Ci.nsIPrefBranch),
|
.getService(Ci.nsIPrefBranch),
|
||||||
|
|
||||||
isAvailable : function(aId)
|
|
||||||
|
isAvailable : function(aId, aOKCallback, aNGCallback)
|
||||||
{
|
{
|
||||||
return this.ExtensionManager ? this.isAvailable_EM(aId) : this.isAvailable_AM(aId) ;
|
if (!aOKCallback)
|
||||||
|
return this._ExtensionManager ? this._isAvailable_EM(aId) : this._isAvailable_AM(aId) ;
|
||||||
|
|
||||||
|
var callbacks = this._formatCallbacks(aOKCallback, aNGCallback);
|
||||||
|
if (this._ExtensionManager) {
|
||||||
|
if (this._isAvailable_EM(aId))
|
||||||
|
callbacks.ok();
|
||||||
|
else
|
||||||
|
callbacks.ng();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
AM.AddonManager.getAddonByID(aId, function(aAddon) {
|
||||||
|
if (aAddon && aAddon.isActive)
|
||||||
|
callbacks.ok();
|
||||||
|
else
|
||||||
|
callbacks.ng();
|
||||||
|
});
|
||||||
|
}
|
||||||
},
|
},
|
||||||
isAvailable_EM : function(aId)
|
_isAvailable_EM : function(aId)
|
||||||
{
|
{
|
||||||
return (this.isInstalled_EM(aId) && this.isEnabled_EM(aId)) ? true : false ;
|
return (this._isInstalled_EM(aId) && this._isEnabled_EM(aId)) ? true : false ;
|
||||||
},
|
},
|
||||||
isAvailable_AM : function(aId)
|
_isAvailable_AM : function(aId)
|
||||||
{
|
{
|
||||||
var addon = this.getInstalledAddon(aId);
|
var addon = this._getInstalledAddon(aId);
|
||||||
if (!addon) return false;
|
if (!addon) return false;
|
||||||
return addon.isActive;
|
return addon.isActive;
|
||||||
},
|
},
|
||||||
|
|
||||||
isInstalled : function(aId)
|
|
||||||
|
isInstalled : function(aId, aOKCallback, aNGCallback)
|
||||||
{
|
{
|
||||||
return this.ExtensionManager ? this.isInstalled_EM(aId) : this.isInstalled_AM(aId) ;
|
if (!aOKCallback)
|
||||||
|
return this._ExtensionManager ? this._isInstalled_EM(aId) : this._isInstalled_AM(aId) ;
|
||||||
|
|
||||||
|
var callbacks = this._formatCallbacks(aOKCallback, aNGCallback);
|
||||||
|
if (this._ExtensionManager) {
|
||||||
|
if (this._isInstalled_EM(aId))
|
||||||
|
callbacks.ok(this._getInstalledLocation_EM(aId));
|
||||||
|
else
|
||||||
|
callbacks.ng(null);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
AM.AddonManager.getAddonByID(aId, function(aAddon) {
|
||||||
|
if (aAddon)
|
||||||
|
callbacks.ok(null);
|
||||||
|
else
|
||||||
|
callbacks.ng(null);
|
||||||
|
});
|
||||||
|
}
|
||||||
},
|
},
|
||||||
isInstalled_EM : function(aId)
|
_isInstalled_EM : function(aId)
|
||||||
{
|
{
|
||||||
return this.ExtensionManager.getInstallLocation(aId) ? true : false ;
|
return this._ExtensionManager.getInstallLocation(aId) ? true : false ;
|
||||||
},
|
},
|
||||||
isInstalled_AM : function(aId)
|
_isInstalled_AM : function(aId)
|
||||||
{
|
{
|
||||||
return this.getInstalledAddon(aId) ? true : false ;
|
return this._getInstalledAddon(aId) ? true : false ;
|
||||||
},
|
},
|
||||||
|
|
||||||
isEnabled : function(aId)
|
|
||||||
|
isEnabled : function(aId, aOKCallback, aNGCallback)
|
||||||
{
|
{
|
||||||
return this.ExtensionManager ? this.isEnabled_EM(aId) : this.isEnabled_AM(aId) ;
|
if (!aOKCallback)
|
||||||
|
return this._ExtensionManager ? this._isEnabled_EM(aId) : this._isEnabled_AM(aId) ;
|
||||||
|
|
||||||
|
var callbacks = this._formatCallbacks(aOKCallback, aNGCallback);
|
||||||
|
if (this._ExtensionManager) {
|
||||||
|
if (this._isInstalled_EM(aId))
|
||||||
|
callbacks.ok();
|
||||||
|
else
|
||||||
|
callbacks.ng();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
this.isAvailable(aId, callbacks);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
isEnabled_EM : function(aId)
|
_isEnabled_EM : function(aId)
|
||||||
{
|
{
|
||||||
var res = this.RDF.GetResource('urn:mozilla:item:'+aId);
|
var res = this._RDF.GetResource('urn:mozilla:item:'+aId);
|
||||||
var appDisabled = false;
|
var appDisabled = false;
|
||||||
try {
|
try {
|
||||||
appDisabled = this.ExtensionManager.datasource.GetTarget(
|
appDisabled = this._ExtensionManager.datasource.GetTarget(
|
||||||
res,
|
res,
|
||||||
this.RDF.GetResource('http://www.mozilla.org/2004/em-rdf#appDisabled'),
|
this._RDF.GetResource('http://www.mozilla.org/2004/em-rdf#appDisabled'),
|
||||||
true
|
true
|
||||||
).QueryInterface(Ci.nsIRDFLiteral)
|
).QueryInterface(Ci.nsIRDFLiteral)
|
||||||
.Value == 'true';
|
.Value == 'true';
|
||||||
@ -132,9 +212,9 @@ if (typeof window == 'undefined') {
|
|||||||
}
|
}
|
||||||
var userDisabled = false;
|
var userDisabled = false;
|
||||||
try {
|
try {
|
||||||
userDisabled = this.ExtensionManager.datasource.GetTarget(
|
userDisabled = this._ExtensionManager.datasource.GetTarget(
|
||||||
res,
|
res,
|
||||||
this.RDF.GetResource('http://www.mozilla.org/2004/em-rdf#userDisabled'),
|
this._RDF.GetResource('http://www.mozilla.org/2004/em-rdf#userDisabled'),
|
||||||
true
|
true
|
||||||
).QueryInterface(Ci.nsIRDFLiteral)
|
).QueryInterface(Ci.nsIRDFLiteral)
|
||||||
.Value == 'true';
|
.Value == 'true';
|
||||||
@ -144,17 +224,101 @@ if (typeof window == 'undefined') {
|
|||||||
|
|
||||||
return !appDisabled && !userDisabled;
|
return !appDisabled && !userDisabled;
|
||||||
},
|
},
|
||||||
isEnabled_AM : function(aId)
|
_isEnabled_AM : function(aId)
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
|
getInstalledLocation : function(aId, aCallback)
|
||||||
|
{
|
||||||
|
if (!aCallback)
|
||||||
|
return this._ExtensionManager ? this._getInstalledLocation_EM(aId) : this._getInstalledLocation_AM(aId) ;
|
||||||
|
|
||||||
|
if (this._ExtensionManager) {
|
||||||
|
aCallback(this._getInstalledLocation_EM(aId));
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
AM.AddonManager.getAddonByID(aId, function(aAddon) {
|
||||||
|
var location = null;
|
||||||
|
if (aAddon && aAddon.isActive) {
|
||||||
|
location = aAddon.getResourceURI('/').QueryInterface(Ci.nsIFileURL).file.clone();
|
||||||
|
}
|
||||||
|
aCallback(location);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
_getInstalledLocation_EM : function(aId)
|
||||||
|
{
|
||||||
|
var addon = this._ExtensionManager.getInstallLocation(aId);
|
||||||
|
if (!addon) return;
|
||||||
|
var dir = addon.location.clone();
|
||||||
|
dir.append(aId);
|
||||||
|
return dir;
|
||||||
|
},
|
||||||
|
_getInstalledLocation_AM : function(aId)
|
||||||
|
{
|
||||||
|
var addon = this._getInstalledAddon(aId);
|
||||||
|
if (!addon || !addon.isActive) return null;
|
||||||
|
return aAddon.getResourceURI('/').QueryInterface(Ci.nsIFileURL).file.clone();
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
goToOptions : function(aId, aOwnerWindow)
|
goToOptions : function(aId, aOwnerWindow)
|
||||||
{
|
{
|
||||||
var uri = this.ExtensionManager ? this.getOptionsURI_EM(aId) : this.getOptionsURI_AM(aId) ;
|
var self = this;
|
||||||
if (!uri) return;
|
var callback = function(aURI) {
|
||||||
|
self.goToOptionsInternal(aURI, aOwnerWindow);
|
||||||
|
};
|
||||||
|
|
||||||
var windows = this.WindowMediator.getEnumerator(null);
|
if (this._ExtensionManager)
|
||||||
|
this._getOptionsURI_EM(aId, callback);
|
||||||
|
else
|
||||||
|
this._getOptionsURI_AM(aId, callback);
|
||||||
|
},
|
||||||
|
_getOptionsURI_EM : function(aId, aCallback)
|
||||||
|
{
|
||||||
|
var res = this._RDF.GetResource('urn:mozilla:item:'+aId);
|
||||||
|
var uri = null;
|
||||||
|
try {
|
||||||
|
uri = this._ExtensionManager.datasource.GetTarget(
|
||||||
|
res,
|
||||||
|
this._RDF.GetResource('http://www.mozilla.org/2004/em-rdf#optionsURL'),
|
||||||
|
true
|
||||||
|
).QueryInterface(Ci.nsIRDFLiteral)
|
||||||
|
.Value;
|
||||||
|
}
|
||||||
|
catch(e) {
|
||||||
|
}
|
||||||
|
return aCallback ? aCallback(uri) : uri ;
|
||||||
|
},
|
||||||
|
_getOptionsURI_AM : function(aId, aCallback)
|
||||||
|
{
|
||||||
|
if (aCallback) {
|
||||||
|
AM.AddonManager.getAddonByID(aId, function(aAddon) {
|
||||||
|
aCallback(aAddon && aAddon.isActive ? aAddon.optionsURL : null );
|
||||||
|
});
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
var addon = this._getInstalledAddon(aId);
|
||||||
|
return (addon && addon.isActive) ? addon.optionsURL : null ;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
goToOptionsNow : function(aId, aOwnerWindow)
|
||||||
|
{
|
||||||
|
this.goToOptionsInternal(
|
||||||
|
(this._ExtensionManager ? this._getOptionsURI_EM(aId) : this._getOptionsURI_AM(aId) ),
|
||||||
|
aOwnerWindow
|
||||||
|
);
|
||||||
|
},
|
||||||
|
|
||||||
|
goToOptionsInternal : function(aURI, aOwnerWindow)
|
||||||
|
{
|
||||||
|
if (!aURI) return;
|
||||||
|
|
||||||
|
var windows = this._WindowMediator.getEnumerator(null);
|
||||||
while (windows.hasMoreElements())
|
while (windows.hasMoreElements())
|
||||||
{
|
{
|
||||||
let win = windows.getNext();
|
let win = windows.getNext();
|
||||||
@ -165,7 +329,7 @@ if (typeof window == 'undefined') {
|
|||||||
}
|
}
|
||||||
var instantApply = false;
|
var instantApply = false;
|
||||||
try {
|
try {
|
||||||
instantApply = this.Prefs.getBoolPref('browser.preferences.instantApply');
|
instantApply = this._Prefs.getBoolPref('browser.preferences.instantApply');
|
||||||
}
|
}
|
||||||
catch(e) {
|
catch(e) {
|
||||||
}
|
}
|
||||||
@ -174,28 +338,6 @@ if (typeof window == 'undefined') {
|
|||||||
'',
|
'',
|
||||||
'chrome,titlebar,toolbar,centerscreen,' + (instantApply ? 'dialog=no' : 'modal' )
|
'chrome,titlebar,toolbar,centerscreen,' + (instantApply ? 'dialog=no' : 'modal' )
|
||||||
);
|
);
|
||||||
},
|
|
||||||
getOptionsURI_EM : function(aId)
|
|
||||||
{
|
|
||||||
var res = this.RDF.GetResource('urn:mozilla:item:'+aId);
|
|
||||||
var uri;
|
|
||||||
try {
|
|
||||||
uri = this.ExtensionManager.datasource.GetTarget(
|
|
||||||
res,
|
|
||||||
this.RDF.GetResource('http://www.mozilla.org/2004/em-rdf#optionsURL'),
|
|
||||||
true
|
|
||||||
).QueryInterface(Ci.nsIRDFLiteral)
|
|
||||||
.Value;
|
|
||||||
}
|
|
||||||
catch(e) {
|
|
||||||
}
|
|
||||||
return uri;
|
|
||||||
},
|
|
||||||
getOptionsURI_AM : function(aId)
|
|
||||||
{
|
|
||||||
var addon = this.getInstalledAddon(aId);
|
|
||||||
if (!addon || !addon.isActive) return null;
|
|
||||||
return addon.optionsURL;
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
})();
|
})();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user