mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-06 15:58:39 +09:00
[PALEMOON] Replace tabs with 2 spaces in statusbar component
This commit is contained in:
parent
f0780e4052
commit
1f12910aa2
15 changed files with 3814 additions and 3816 deletions
File diff suppressed because it is too large
Load diff
|
|
@ -12,172 +12,172 @@ const CU = Components.utils;
|
|||
CU.import("resource://gre/modules/XPCOMUtils.jsm");
|
||||
|
||||
function S4EProgressService(gBrowser, service, getters, statusService) {
|
||||
this._gBrowser = gBrowser;
|
||||
this._service = service;
|
||||
this._getters = getters;
|
||||
this._statusService = statusService;
|
||||
this._gBrowser = gBrowser;
|
||||
this._service = service;
|
||||
this._getters = getters;
|
||||
this._statusService = statusService;
|
||||
|
||||
this._gBrowser.addProgressListener(this);
|
||||
this._gBrowser.addProgressListener(this);
|
||||
}
|
||||
|
||||
S4EProgressService.prototype =
|
||||
{
|
||||
_gBrowser: null,
|
||||
_service: null,
|
||||
_getters: null,
|
||||
_statusService: null,
|
||||
_gBrowser: null,
|
||||
_service: null,
|
||||
_getters: null,
|
||||
_statusService: null,
|
||||
|
||||
_busyUI: false,
|
||||
_busyUI: false,
|
||||
|
||||
set value(val)
|
||||
{
|
||||
let toolbar_progress = this._getters.toolbarProgress;
|
||||
if(toolbar_progress)
|
||||
{
|
||||
toolbar_progress.value = val;
|
||||
}
|
||||
set value(val)
|
||||
{
|
||||
let toolbar_progress = this._getters.toolbarProgress;
|
||||
if(toolbar_progress)
|
||||
{
|
||||
toolbar_progress.value = val;
|
||||
}
|
||||
|
||||
let throbber_progress = this._getters.throbberProgress;
|
||||
if(throbber_progress)
|
||||
{
|
||||
if(val)
|
||||
{
|
||||
throbber_progress.setAttribute("progress", val);
|
||||
}
|
||||
else
|
||||
{
|
||||
throbber_progress.removeAttribute("progress");
|
||||
}
|
||||
}
|
||||
},
|
||||
let throbber_progress = this._getters.throbberProgress;
|
||||
if(throbber_progress)
|
||||
{
|
||||
if(val)
|
||||
{
|
||||
throbber_progress.setAttribute("progress", val);
|
||||
}
|
||||
else
|
||||
{
|
||||
throbber_progress.removeAttribute("progress");
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
set collapsed(val)
|
||||
{
|
||||
let toolbar_progress = this._getters.toolbarProgress;
|
||||
if(toolbar_progress)
|
||||
{
|
||||
toolbar_progress.collapsed = val;
|
||||
}
|
||||
set collapsed(val)
|
||||
{
|
||||
let toolbar_progress = this._getters.toolbarProgress;
|
||||
if(toolbar_progress)
|
||||
{
|
||||
toolbar_progress.collapsed = val;
|
||||
}
|
||||
|
||||
let throbber_progress = this._getters.throbberProgress;
|
||||
if(throbber_progress)
|
||||
{
|
||||
if(val)
|
||||
{
|
||||
throbber_progress.removeAttribute("busy");
|
||||
}
|
||||
else
|
||||
{
|
||||
throbber_progress.setAttribute("busy", true);
|
||||
}
|
||||
}
|
||||
},
|
||||
let throbber_progress = this._getters.throbberProgress;
|
||||
if(throbber_progress)
|
||||
{
|
||||
if(val)
|
||||
{
|
||||
throbber_progress.removeAttribute("busy");
|
||||
}
|
||||
else
|
||||
{
|
||||
throbber_progress.setAttribute("busy", true);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
destroy: function()
|
||||
{
|
||||
this._gBrowser.removeProgressListener(this);
|
||||
destroy: function()
|
||||
{
|
||||
this._gBrowser.removeProgressListener(this);
|
||||
|
||||
["_gBrowser", "_service", "_getters", "_statusService"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
},
|
||||
["_gBrowser", "_service", "_getters", "_statusService"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
},
|
||||
|
||||
onStatusChange: function(aWebProgress, aRequest, aStatus, aMessage)
|
||||
{
|
||||
this._statusService.setNetworkStatus(aMessage, this._busyUI);
|
||||
},
|
||||
onStatusChange: function(aWebProgress, aRequest, aStatus, aMessage)
|
||||
{
|
||||
this._statusService.setNetworkStatus(aMessage, this._busyUI);
|
||||
},
|
||||
|
||||
onStateChange: function(aWebProgress, aRequest, aStateFlags, aStatus)
|
||||
{
|
||||
let nsIWPL = CI.nsIWebProgressListener;
|
||||
onStateChange: function(aWebProgress, aRequest, aStateFlags, aStatus)
|
||||
{
|
||||
let nsIWPL = CI.nsIWebProgressListener;
|
||||
|
||||
if(!this._busyUI
|
||||
&& aStateFlags & nsIWPL.STATE_START
|
||||
&& aStateFlags & nsIWPL.STATE_IS_NETWORK
|
||||
&& !(aStateFlags & nsIWPL.STATE_RESTORING))
|
||||
{
|
||||
this._busyUI = true;
|
||||
this.value = 0;
|
||||
this.collapsed = false;
|
||||
}
|
||||
else if(aStateFlags & nsIWPL.STATE_STOP)
|
||||
{
|
||||
if(aRequest)
|
||||
{
|
||||
let msg = "";
|
||||
let location;
|
||||
if(aRequest instanceof CI.nsIChannel || "URI" in aRequest)
|
||||
{
|
||||
location = aRequest.URI;
|
||||
if(location.spec != "about:blank")
|
||||
{
|
||||
switch (aStatus)
|
||||
{
|
||||
case Components.results.NS_BINDING_ABORTED:
|
||||
msg = this._getters.strings.getString("nv_stopped");
|
||||
break;
|
||||
case Components.results.NS_ERROR_NET_TIMEOUT:
|
||||
msg = this._getters.strings.getString("nv_timeout");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(!this._busyUI
|
||||
&& aStateFlags & nsIWPL.STATE_START
|
||||
&& aStateFlags & nsIWPL.STATE_IS_NETWORK
|
||||
&& !(aStateFlags & nsIWPL.STATE_RESTORING))
|
||||
{
|
||||
this._busyUI = true;
|
||||
this.value = 0;
|
||||
this.collapsed = false;
|
||||
}
|
||||
else if(aStateFlags & nsIWPL.STATE_STOP)
|
||||
{
|
||||
if(aRequest)
|
||||
{
|
||||
let msg = "";
|
||||
let location;
|
||||
if(aRequest instanceof CI.nsIChannel || "URI" in aRequest)
|
||||
{
|
||||
location = aRequest.URI;
|
||||
if(location.spec != "about:blank")
|
||||
{
|
||||
switch (aStatus)
|
||||
{
|
||||
case Components.results.NS_BINDING_ABORTED:
|
||||
msg = this._getters.strings.getString("nv_stopped");
|
||||
break;
|
||||
case Components.results.NS_ERROR_NET_TIMEOUT:
|
||||
msg = this._getters.strings.getString("nv_timeout");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(!msg && (!location || location.spec != "about:blank"))
|
||||
{
|
||||
msg = this._getters.strings.getString("nv_done");
|
||||
}
|
||||
if(!msg && (!location || location.spec != "about:blank"))
|
||||
{
|
||||
msg = this._getters.strings.getString("nv_done");
|
||||
}
|
||||
|
||||
this._statusService.setDefaultStatus(msg);
|
||||
this._statusService.setNetworkStatus("", this._busyUI);
|
||||
}
|
||||
this._statusService.setDefaultStatus(msg);
|
||||
this._statusService.setNetworkStatus("", this._busyUI);
|
||||
}
|
||||
|
||||
if(this._busyUI)
|
||||
{
|
||||
this._busyUI = false;
|
||||
this.collapsed = true;
|
||||
this.value = 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
if(this._busyUI)
|
||||
{
|
||||
this._busyUI = false;
|
||||
this.collapsed = true;
|
||||
this.value = 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
onUpdateCurrentBrowser: function(aStateFlags, aStatus, aMessage, aTotalProgress)
|
||||
{
|
||||
let nsIWPL = CI.nsIWebProgressListener;
|
||||
let loadingDone = aStateFlags & nsIWPL.STATE_STOP;
|
||||
onUpdateCurrentBrowser: function(aStateFlags, aStatus, aMessage, aTotalProgress)
|
||||
{
|
||||
let nsIWPL = CI.nsIWebProgressListener;
|
||||
let loadingDone = aStateFlags & nsIWPL.STATE_STOP;
|
||||
|
||||
this.onStateChange(
|
||||
this._gBrowser.webProgress,
|
||||
{ URI: this._gBrowser.currentURI },
|
||||
((loadingDone ? nsIWPL.STATE_STOP : nsIWPL.STATE_START) | (aStateFlags & nsIWPL.STATE_IS_NETWORK)),
|
||||
aStatus
|
||||
);
|
||||
this.onStateChange(
|
||||
this._gBrowser.webProgress,
|
||||
{ URI: this._gBrowser.currentURI },
|
||||
((loadingDone ? nsIWPL.STATE_STOP : nsIWPL.STATE_START) | (aStateFlags & nsIWPL.STATE_IS_NETWORK)),
|
||||
aStatus
|
||||
);
|
||||
|
||||
if(!loadingDone)
|
||||
{
|
||||
this.onProgressChange(this._gBrowser.webProgress, null, 0, 0, aTotalProgress, 1);
|
||||
this.onStatusChange(this._gBrowser.webProgress, null, 0, aMessage);
|
||||
}
|
||||
},
|
||||
if(!loadingDone)
|
||||
{
|
||||
this.onProgressChange(this._gBrowser.webProgress, null, 0, 0, aTotalProgress, 1);
|
||||
this.onStatusChange(this._gBrowser.webProgress, null, 0, aMessage);
|
||||
}
|
||||
},
|
||||
|
||||
onProgressChange: function(aWebProgress, aRequest, aCurSelfProgress, aMaxSelfProgress, aCurTotalProgress, aMaxTotalProgress)
|
||||
{
|
||||
if (aMaxTotalProgress > 0 && this._busyUI)
|
||||
{
|
||||
// This is highly optimized. Don't touch this code unless
|
||||
// you are intimately familiar with the cost of setting
|
||||
// attrs on XUL elements. -- hyatt
|
||||
let percentage = (aCurTotalProgress * 100) / aMaxTotalProgress;
|
||||
this.value = percentage;
|
||||
}
|
||||
},
|
||||
onProgressChange: function(aWebProgress, aRequest, aCurSelfProgress, aMaxSelfProgress, aCurTotalProgress, aMaxTotalProgress)
|
||||
{
|
||||
if (aMaxTotalProgress > 0 && this._busyUI)
|
||||
{
|
||||
// This is highly optimized. Don't touch this code unless
|
||||
// you are intimately familiar with the cost of setting
|
||||
// attrs on XUL elements. -- hyatt
|
||||
let percentage = (aCurTotalProgress * 100) / aMaxTotalProgress;
|
||||
this.value = percentage;
|
||||
}
|
||||
},
|
||||
|
||||
onProgressChange64: function(aWebProgress, aRequest, aCurSelfProgress, aMaxSelfProgress, aCurTotalProgress, aMaxTotalProgress)
|
||||
{
|
||||
return this.onProgressChange(aWebProgress, aRequest, aCurSelfProgress, aMaxSelfProgress, aCurTotalProgress, aMaxTotalProgress);
|
||||
},
|
||||
onProgressChange64: function(aWebProgress, aRequest, aCurSelfProgress, aMaxSelfProgress, aCurTotalProgress, aMaxTotalProgress)
|
||||
{
|
||||
return this.onProgressChange(aWebProgress, aRequest, aCurSelfProgress, aMaxSelfProgress, aCurTotalProgress, aMaxTotalProgress);
|
||||
},
|
||||
|
||||
QueryInterface: XPCOMUtils.generateQI([ CI.nsIWebProgressListener, CI.nsIWebProgressListener2 ])
|
||||
QueryInterface: XPCOMUtils.generateQI([ CI.nsIWebProgressListener, CI.nsIWebProgressListener2 ])
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -13,452 +13,452 @@ CU.import("resource://gre/modules/XPCOMUtils.jsm");
|
|||
|
||||
function S4EStatusService(window, service, getters)
|
||||
{
|
||||
this._window = window;
|
||||
this._service = service;
|
||||
this._getters = getters;
|
||||
this._window = window;
|
||||
this._service = service;
|
||||
this._getters = getters;
|
||||
|
||||
this._overLinkService = new S4EOverlinkService(this._window, this._service, this);
|
||||
this._overLinkService = new S4EOverlinkService(this._window, this._service, this);
|
||||
}
|
||||
|
||||
S4EStatusService.prototype =
|
||||
{
|
||||
_window: null,
|
||||
_service: null,
|
||||
_getters: null,
|
||||
_overLinkService: null,
|
||||
_window: null,
|
||||
_service: null,
|
||||
_getters: null,
|
||||
_overLinkService: null,
|
||||
|
||||
_overLink: { val: "", type: "" },
|
||||
_network: { val: "", type: "" },
|
||||
_networkXHR: { val: "", type: "" },
|
||||
_status: { val: "", type: "" },
|
||||
_jsStatus: { val: "", type: "" },
|
||||
_defaultStatus: { val: "", type: "" },
|
||||
_overLink: { val: "", type: "" },
|
||||
_network: { val: "", type: "" },
|
||||
_networkXHR: { val: "", type: "" },
|
||||
_status: { val: "", type: "" },
|
||||
_jsStatus: { val: "", type: "" },
|
||||
_defaultStatus: { val: "", type: "" },
|
||||
|
||||
_isFullScreen: false,
|
||||
_isFullScreenVideo: false,
|
||||
_isFullScreen: false,
|
||||
_isFullScreenVideo: false,
|
||||
|
||||
_statusText: { val: "", type: "" },
|
||||
_noUpdate: false,
|
||||
_statusChromeTimeoutID: 0,
|
||||
_statusContentTimeoutID: 0,
|
||||
_statusText: { val: "", type: "" },
|
||||
_noUpdate: false,
|
||||
_statusChromeTimeoutID: 0,
|
||||
_statusContentTimeoutID: 0,
|
||||
|
||||
getCompositeStatusText: function()
|
||||
{
|
||||
return this._statusText.val;
|
||||
},
|
||||
getCompositeStatusText: function()
|
||||
{
|
||||
return this._statusText.val;
|
||||
},
|
||||
|
||||
getStatusText: function()
|
||||
{
|
||||
return this._status.val;
|
||||
},
|
||||
getStatusText: function()
|
||||
{
|
||||
return this._status.val;
|
||||
},
|
||||
|
||||
setNetworkStatus: function(status, busy)
|
||||
{
|
||||
if(busy)
|
||||
{
|
||||
this._network = { val: status, type: "network" };
|
||||
this._networkXHR = { val: "", type: "network xhr" };
|
||||
}
|
||||
else
|
||||
{
|
||||
this._networkXHR = { val: status, type: "network xhr" };
|
||||
}
|
||||
this.updateStatusField();
|
||||
},
|
||||
setNetworkStatus: function(status, busy)
|
||||
{
|
||||
if(busy)
|
||||
{
|
||||
this._network = { val: status, type: "network" };
|
||||
this._networkXHR = { val: "", type: "network xhr" };
|
||||
}
|
||||
else
|
||||
{
|
||||
this._networkXHR = { val: status, type: "network xhr" };
|
||||
}
|
||||
this.updateStatusField();
|
||||
},
|
||||
|
||||
setStatusText: function(status)
|
||||
{
|
||||
this._status = { val: status, type: "status chrome" };
|
||||
this.updateStatusField();
|
||||
},
|
||||
setStatusText: function(status)
|
||||
{
|
||||
this._status = { val: status, type: "status chrome" };
|
||||
this.updateStatusField();
|
||||
},
|
||||
|
||||
setJSStatus: function(status)
|
||||
{
|
||||
this._jsStatus = { val: status, type: "status content" };
|
||||
this.updateStatusField();
|
||||
},
|
||||
setJSStatus: function(status)
|
||||
{
|
||||
this._jsStatus = { val: status, type: "status content" };
|
||||
this.updateStatusField();
|
||||
},
|
||||
|
||||
setJSDefaultStatus: function(status)
|
||||
{
|
||||
// This was removed from Firefox in Bug 862917
|
||||
},
|
||||
setJSDefaultStatus: function(status)
|
||||
{
|
||||
// This was removed from Firefox in Bug 862917
|
||||
},
|
||||
|
||||
setDefaultStatus: function(status)
|
||||
{
|
||||
this._defaultStatus = { val: status, type: "status chrome default" };
|
||||
this.updateStatusField();
|
||||
},
|
||||
setDefaultStatus: function(status)
|
||||
{
|
||||
this._defaultStatus = { val: status, type: "status chrome default" };
|
||||
this.updateStatusField();
|
||||
},
|
||||
|
||||
setOverLink: function(link, aAnchor)
|
||||
{
|
||||
this._overLinkService.update(link, aAnchor);
|
||||
},
|
||||
setOverLink: function(link, aAnchor)
|
||||
{
|
||||
this._overLinkService.update(link, aAnchor);
|
||||
},
|
||||
|
||||
setOverLinkInternal: function(link, aAnchor)
|
||||
{
|
||||
let status = this._service.status;
|
||||
let statusLinkOver = this._service.statusLinkOver;
|
||||
setOverLinkInternal: function(link, aAnchor)
|
||||
{
|
||||
let status = this._service.status;
|
||||
let statusLinkOver = this._service.statusLinkOver;
|
||||
|
||||
if(statusLinkOver)
|
||||
{
|
||||
link = link.replace(/[\u200e\u200f\u202a\u202b\u202c\u202d\u202e]/g, encodeURIComponent);
|
||||
if(status == statusLinkOver)
|
||||
{
|
||||
this._overLink = { val: link, type: "overLink", anchor: aAnchor };
|
||||
this.updateStatusField();
|
||||
}
|
||||
else
|
||||
{
|
||||
this.setStatusField(statusLinkOver, { val: link, type: "overLink", anchor: aAnchor }, true);
|
||||
}
|
||||
}
|
||||
},
|
||||
if(statusLinkOver)
|
||||
{
|
||||
link = link.replace(/[\u200e\u200f\u202a\u202b\u202c\u202d\u202e]/g, encodeURIComponent);
|
||||
if(status == statusLinkOver)
|
||||
{
|
||||
this._overLink = { val: link, type: "overLink", anchor: aAnchor };
|
||||
this.updateStatusField();
|
||||
}
|
||||
else
|
||||
{
|
||||
this.setStatusField(statusLinkOver, { val: link, type: "overLink", anchor: aAnchor }, true);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
setNoUpdate: function(nu)
|
||||
{
|
||||
this._noUpdate = nu;
|
||||
},
|
||||
setNoUpdate: function(nu)
|
||||
{
|
||||
this._noUpdate = nu;
|
||||
},
|
||||
|
||||
buildBinding: function() {
|
||||
let XULBWPropHandler = function(prop, oldval, newval) {
|
||||
CU.reportError("Attempt to modify XULBrowserWindow." + prop);
|
||||
return oldval;
|
||||
};
|
||||
buildBinding: function() {
|
||||
let XULBWPropHandler = function(prop, oldval, newval) {
|
||||
CU.reportError("Attempt to modify XULBrowserWindow." + prop);
|
||||
return oldval;
|
||||
};
|
||||
|
||||
["updateStatusField", "onStatusChange"].forEach(function(prop)
|
||||
{
|
||||
this._window.XULBrowserWindow.unwatch(prop);
|
||||
this._window.XULBrowserWindow[prop] = function() {};
|
||||
this._window.XULBrowserWindow.watch(prop, XULBWPropHandler);
|
||||
}, this);
|
||||
["updateStatusField", "onStatusChange"].forEach(function(prop)
|
||||
{
|
||||
this._window.XULBrowserWindow.unwatch(prop);
|
||||
this._window.XULBrowserWindow[prop] = function() {};
|
||||
this._window.XULBrowserWindow.watch(prop, XULBWPropHandler);
|
||||
}, this);
|
||||
|
||||
["getCompositeStatusText", "getStatusText", "setStatusText", "setJSStatus",
|
||||
"setJSDefaultStatus", "setDefaultStatus", "setOverLink"].forEach(function(prop)
|
||||
{
|
||||
this._window.XULBrowserWindow.unwatch(prop);
|
||||
this._window.XULBrowserWindow[prop] = this[prop].bind(this);
|
||||
this._window.XULBrowserWindow.watch(prop, XULBWPropHandler);
|
||||
}, this);
|
||||
["getCompositeStatusText", "getStatusText", "setStatusText", "setJSStatus",
|
||||
"setJSDefaultStatus", "setDefaultStatus", "setOverLink"].forEach(function(prop)
|
||||
{
|
||||
this._window.XULBrowserWindow.unwatch(prop);
|
||||
this._window.XULBrowserWindow[prop] = this[prop].bind(this);
|
||||
this._window.XULBrowserWindow.watch(prop, XULBWPropHandler);
|
||||
}, this);
|
||||
|
||||
let XULBWHandler = function(prop, oldval, newval) {
|
||||
if(!newval)
|
||||
{
|
||||
return newval;
|
||||
}
|
||||
CU.reportError("XULBrowserWindow changed. Updating S4E bindings.");
|
||||
this._window.setTimeout(function(self)
|
||||
{
|
||||
self.buildBinding();
|
||||
}, 0, this);
|
||||
return newval;
|
||||
};
|
||||
let XULBWHandler = function(prop, oldval, newval) {
|
||||
if(!newval)
|
||||
{
|
||||
return newval;
|
||||
}
|
||||
CU.reportError("XULBrowserWindow changed. Updating S4E bindings.");
|
||||
this._window.setTimeout(function(self)
|
||||
{
|
||||
self.buildBinding();
|
||||
}, 0, this);
|
||||
return newval;
|
||||
};
|
||||
|
||||
this._window.watch("XULBrowserWindow", XULBWHandler);
|
||||
},
|
||||
this._window.watch("XULBrowserWindow", XULBWHandler);
|
||||
},
|
||||
|
||||
destroy: function()
|
||||
{
|
||||
// No need to unbind from the XULBrowserWindow, it's already null at this point
|
||||
destroy: function()
|
||||
{
|
||||
// No need to unbind from the XULBrowserWindow, it's already null at this point
|
||||
|
||||
this.clearTimer("_statusChromeTimeoutID");
|
||||
this.clearTimer("_statusContentTimeoutID");
|
||||
this.clearTimer("_statusChromeTimeoutID");
|
||||
this.clearTimer("_statusContentTimeoutID");
|
||||
|
||||
this._overLinkService.destroy();
|
||||
this._overLinkService.destroy();
|
||||
|
||||
["_overLink", "_network", "_networkXHR", "_status", "_jsStatus", "_defaultStatus",
|
||||
"_statusText", "_window", "_service", "_getters", "_overLinkService"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
},
|
||||
["_overLink", "_network", "_networkXHR", "_status", "_jsStatus", "_defaultStatus",
|
||||
"_statusText", "_window", "_service", "_getters", "_overLinkService"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
},
|
||||
|
||||
buildTextOrder: function()
|
||||
{
|
||||
this.__defineGetter__("_textOrder", function()
|
||||
{
|
||||
let textOrder = ["_overLink"];
|
||||
if(this._service.statusNetwork)
|
||||
{
|
||||
textOrder.push("_network");
|
||||
if(this._service.statusNetworkXHR)
|
||||
{
|
||||
textOrder.push("_networkXHR");
|
||||
}
|
||||
}
|
||||
textOrder.push("_status", "_jsStatus");
|
||||
if(this._service.statusDefault)
|
||||
{
|
||||
textOrder.push("_defaultStatus");
|
||||
}
|
||||
buildTextOrder: function()
|
||||
{
|
||||
this.__defineGetter__("_textOrder", function()
|
||||
{
|
||||
let textOrder = ["_overLink"];
|
||||
if(this._service.statusNetwork)
|
||||
{
|
||||
textOrder.push("_network");
|
||||
if(this._service.statusNetworkXHR)
|
||||
{
|
||||
textOrder.push("_networkXHR");
|
||||
}
|
||||
}
|
||||
textOrder.push("_status", "_jsStatus");
|
||||
if(this._service.statusDefault)
|
||||
{
|
||||
textOrder.push("_defaultStatus");
|
||||
}
|
||||
|
||||
delete this._textOrder;
|
||||
return this._textOrder = textOrder;
|
||||
});
|
||||
},
|
||||
delete this._textOrder;
|
||||
return this._textOrder = textOrder;
|
||||
});
|
||||
},
|
||||
|
||||
updateStatusField: function(force)
|
||||
{
|
||||
let text = { val: "", type: "" };
|
||||
for(let i = 0; !text.val && i < this._textOrder.length; i++)
|
||||
{
|
||||
text = this[this._textOrder[i]];
|
||||
}
|
||||
updateStatusField: function(force)
|
||||
{
|
||||
let text = { val: "", type: "" };
|
||||
for(let i = 0; !text.val && i < this._textOrder.length; i++)
|
||||
{
|
||||
text = this[this._textOrder[i]];
|
||||
}
|
||||
|
||||
if(this._statusText.val != text.val || force)
|
||||
{
|
||||
if(this._noUpdate)
|
||||
{
|
||||
return;
|
||||
}
|
||||
if(this._statusText.val != text.val || force)
|
||||
{
|
||||
if(this._noUpdate)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
this._statusText = text;
|
||||
this._statusText = text;
|
||||
|
||||
this.setStatusField(this._service.status, text, false);
|
||||
this.setStatusField(this._service.status, text, false);
|
||||
|
||||
if(text.val && this._service.statusTimeout)
|
||||
{
|
||||
this.setTimer(text.type);
|
||||
}
|
||||
}
|
||||
},
|
||||
if(text.val && this._service.statusTimeout)
|
||||
{
|
||||
this.setTimer(text.type);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
updateFullScreen: function()
|
||||
{
|
||||
this._isFullScreen = this._window.fullScreen;
|
||||
this._isFullScreenVideo = false;
|
||||
if(this._isFullScreen)
|
||||
{
|
||||
let fsEl = this._window.content.document.mozFullScreenElement;
|
||||
if(fsEl && (fsEl.nodeName == "VIDEO" || fsEl.getElementsByTagName("VIDEO").length > 0))
|
||||
{
|
||||
this._isFullScreenVideo = true;
|
||||
}
|
||||
}
|
||||
updateFullScreen: function()
|
||||
{
|
||||
this._isFullScreen = this._window.fullScreen;
|
||||
this._isFullScreenVideo = false;
|
||||
if(this._isFullScreen)
|
||||
{
|
||||
let fsEl = this._window.content.document.mozFullScreenElement;
|
||||
if(fsEl && (fsEl.nodeName == "VIDEO" || fsEl.getElementsByTagName("VIDEO").length > 0))
|
||||
{
|
||||
this._isFullScreenVideo = true;
|
||||
}
|
||||
}
|
||||
|
||||
this.clearStatusField();
|
||||
this.updateStatusField(true);
|
||||
},
|
||||
this.clearStatusField();
|
||||
this.updateStatusField(true);
|
||||
},
|
||||
|
||||
setTimer: function(type)
|
||||
{
|
||||
let typeArgs = type.split(" ", 3);
|
||||
setTimer: function(type)
|
||||
{
|
||||
let typeArgs = type.split(" ", 3);
|
||||
|
||||
if(typeArgs.length < 2 || typeArgs[0] != "status")
|
||||
{
|
||||
return;
|
||||
}
|
||||
if(typeArgs.length < 2 || typeArgs[0] != "status")
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if(typeArgs[1] == "chrome")
|
||||
{
|
||||
this.clearTimer("_statusChromeTimeoutID");
|
||||
this._statusChromeTimeoutID = this._window.setTimeout(function(self, isDefault)
|
||||
{
|
||||
self._statusChromeTimeoutID = 0;
|
||||
if(isDefault)
|
||||
{
|
||||
self.setDefaultStatus("");
|
||||
}
|
||||
else
|
||||
{
|
||||
self.setStatusText("");
|
||||
}
|
||||
}, this._service.statusTimeout, this, (typeArgs.length == 3 && typeArgs[2] == "default"));
|
||||
}
|
||||
else
|
||||
{
|
||||
this.clearTimer("_statusContentTimeoutID");
|
||||
this._statusContentTimeoutID = this._window.setTimeout(function(self)
|
||||
{
|
||||
self._statusContentTimeoutID = 0;
|
||||
self.setJSStatus("");
|
||||
}, this._service.statusTimeout, this);
|
||||
}
|
||||
},
|
||||
if(typeArgs[1] == "chrome")
|
||||
{
|
||||
this.clearTimer("_statusChromeTimeoutID");
|
||||
this._statusChromeTimeoutID = this._window.setTimeout(function(self, isDefault)
|
||||
{
|
||||
self._statusChromeTimeoutID = 0;
|
||||
if(isDefault)
|
||||
{
|
||||
self.setDefaultStatus("");
|
||||
}
|
||||
else
|
||||
{
|
||||
self.setStatusText("");
|
||||
}
|
||||
}, this._service.statusTimeout, this, (typeArgs.length == 3 && typeArgs[2] == "default"));
|
||||
}
|
||||
else
|
||||
{
|
||||
this.clearTimer("_statusContentTimeoutID");
|
||||
this._statusContentTimeoutID = this._window.setTimeout(function(self)
|
||||
{
|
||||
self._statusContentTimeoutID = 0;
|
||||
self.setJSStatus("");
|
||||
}, this._service.statusTimeout, this);
|
||||
}
|
||||
},
|
||||
|
||||
clearTimer: function(timerName)
|
||||
{
|
||||
if(this[timerName] != 0)
|
||||
{
|
||||
this._window.clearTimeout(this[timerName]);
|
||||
this[timerName] = 0;
|
||||
}
|
||||
},
|
||||
clearTimer: function(timerName)
|
||||
{
|
||||
if(this[timerName] != 0)
|
||||
{
|
||||
this._window.clearTimeout(this[timerName]);
|
||||
this[timerName] = 0;
|
||||
}
|
||||
},
|
||||
|
||||
clearStatusField: function()
|
||||
{
|
||||
this._getters.statusOverlay.value = "";
|
||||
clearStatusField: function()
|
||||
{
|
||||
this._getters.statusOverlay.value = "";
|
||||
|
||||
let status_label = this._getters.statusWidgetLabel;
|
||||
if(status_label)
|
||||
{
|
||||
status_label.value = "";
|
||||
}
|
||||
let status_label = this._getters.statusWidgetLabel;
|
||||
if(status_label)
|
||||
{
|
||||
status_label.value = "";
|
||||
}
|
||||
|
||||
},
|
||||
},
|
||||
|
||||
setStatusField: function(location, text, allowTooltip)
|
||||
{
|
||||
if(!location)
|
||||
{
|
||||
return;
|
||||
}
|
||||
setStatusField: function(location, text, allowTooltip)
|
||||
{
|
||||
if(!location)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
let label = null;
|
||||
let label = null;
|
||||
|
||||
if(this._isFullScreen && this._service.advancedStatusDetectFullScreen)
|
||||
{
|
||||
switch(location)
|
||||
{
|
||||
case 1: // Toolbar
|
||||
location = 3
|
||||
break;
|
||||
case 2: // URL bar
|
||||
if(Services.prefs.getBoolPref("browser.fullscreen.autohide"))
|
||||
{
|
||||
location = 3
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(this._isFullScreen && this._service.advancedStatusDetectFullScreen)
|
||||
{
|
||||
switch(location)
|
||||
{
|
||||
case 1: // Toolbar
|
||||
location = 3
|
||||
break;
|
||||
case 2: // URL bar
|
||||
if(Services.prefs.getBoolPref("browser.fullscreen.autohide"))
|
||||
{
|
||||
location = 3
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
switch(location)
|
||||
{
|
||||
case 1: // Toolbar
|
||||
label = this._getters.statusWidgetLabel;
|
||||
break;
|
||||
case 2: // URL Bar
|
||||
break;
|
||||
case 3: // Popup
|
||||
default:
|
||||
if(this._isFullScreenVideo && this._service.advancedStatusDetectVideo)
|
||||
{
|
||||
return;
|
||||
}
|
||||
label = this._getters.statusOverlay;
|
||||
break;
|
||||
}
|
||||
switch(location)
|
||||
{
|
||||
case 1: // Toolbar
|
||||
label = this._getters.statusWidgetLabel;
|
||||
break;
|
||||
case 2: // URL Bar
|
||||
break;
|
||||
case 3: // Popup
|
||||
default:
|
||||
if(this._isFullScreenVideo && this._service.advancedStatusDetectVideo)
|
||||
{
|
||||
return;
|
||||
}
|
||||
label = this._getters.statusOverlay;
|
||||
break;
|
||||
}
|
||||
|
||||
if(label)
|
||||
{
|
||||
label.setAttribute("previoustype", label.getAttribute("type"));
|
||||
label.setAttribute("type", text.type);
|
||||
label.value = text.val;
|
||||
label.setAttribute("crop", text.type == "overLink" ? "center" : "end");
|
||||
}
|
||||
}
|
||||
if(label)
|
||||
{
|
||||
label.setAttribute("previoustype", label.getAttribute("type"));
|
||||
label.setAttribute("type", text.type);
|
||||
label.value = text.val;
|
||||
label.setAttribute("crop", text.type == "overLink" ? "center" : "end");
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
function S4EOverlinkService(window, service, statusService) {
|
||||
this._window = window;
|
||||
this._service = service;
|
||||
this._statusService = statusService;
|
||||
this._window = window;
|
||||
this._service = service;
|
||||
this._statusService = statusService;
|
||||
}
|
||||
|
||||
S4EOverlinkService.prototype =
|
||||
{
|
||||
_window: null,
|
||||
_service: null,
|
||||
_statusService: null,
|
||||
_window: null,
|
||||
_service: null,
|
||||
_statusService: null,
|
||||
|
||||
_timer: 0,
|
||||
_currentLink: { link: "", anchor: null },
|
||||
_pendingLink: { link: "", anchor: null },
|
||||
_listening: false,
|
||||
_timer: 0,
|
||||
_currentLink: { link: "", anchor: null },
|
||||
_pendingLink: { link: "", anchor: null },
|
||||
_listening: false,
|
||||
|
||||
update: function(aLink, aAnchor)
|
||||
{
|
||||
this.clearTimer();
|
||||
this.stopListen();
|
||||
this._pendingLink = { link: aLink, anchor: aAnchor };
|
||||
update: function(aLink, aAnchor)
|
||||
{
|
||||
this.clearTimer();
|
||||
this.stopListen();
|
||||
this._pendingLink = { link: aLink, anchor: aAnchor };
|
||||
|
||||
if(!aLink)
|
||||
{
|
||||
if(this._window.XULBrowserWindow.hideOverLinkImmediately || !this._service.statusLinkOverDelayHide)
|
||||
{
|
||||
this._show();
|
||||
}
|
||||
else
|
||||
{
|
||||
this._showDelayed();
|
||||
}
|
||||
}
|
||||
else if(this._currentLink.link || !this._service.statusLinkOverDelayShow)
|
||||
{
|
||||
this._show();
|
||||
}
|
||||
else
|
||||
{
|
||||
this._showDelayed();
|
||||
this.startListen();
|
||||
}
|
||||
},
|
||||
if(!aLink)
|
||||
{
|
||||
if(this._window.XULBrowserWindow.hideOverLinkImmediately || !this._service.statusLinkOverDelayHide)
|
||||
{
|
||||
this._show();
|
||||
}
|
||||
else
|
||||
{
|
||||
this._showDelayed();
|
||||
}
|
||||
}
|
||||
else if(this._currentLink.link || !this._service.statusLinkOverDelayShow)
|
||||
{
|
||||
this._show();
|
||||
}
|
||||
else
|
||||
{
|
||||
this._showDelayed();
|
||||
this.startListen();
|
||||
}
|
||||
},
|
||||
|
||||
destroy: function()
|
||||
{
|
||||
this.clearTimer();
|
||||
this.stopListen();
|
||||
destroy: function()
|
||||
{
|
||||
this.clearTimer();
|
||||
this.stopListen();
|
||||
|
||||
["_currentLink", "_pendingLink", "_statusService", "_window"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
},
|
||||
["_currentLink", "_pendingLink", "_statusService", "_window"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
},
|
||||
|
||||
startListen: function()
|
||||
{
|
||||
if(!this._listening)
|
||||
{
|
||||
this._window.addEventListener("mousemove", this, true);
|
||||
this._listening = true;
|
||||
}
|
||||
},
|
||||
startListen: function()
|
||||
{
|
||||
if(!this._listening)
|
||||
{
|
||||
this._window.addEventListener("mousemove", this, true);
|
||||
this._listening = true;
|
||||
}
|
||||
},
|
||||
|
||||
stopListen: function()
|
||||
{
|
||||
if(this._listening)
|
||||
{
|
||||
this._window.removeEventListener("mousemove", this, true);
|
||||
this._listening = false;
|
||||
}
|
||||
},
|
||||
stopListen: function()
|
||||
{
|
||||
if(this._listening)
|
||||
{
|
||||
this._window.removeEventListener("mousemove", this, true);
|
||||
this._listening = false;
|
||||
}
|
||||
},
|
||||
|
||||
clearTimer: function()
|
||||
{
|
||||
if(this._timer != 0)
|
||||
{
|
||||
this._window.clearTimeout(this._timer);
|
||||
this._timer = 0;
|
||||
}
|
||||
},
|
||||
clearTimer: function()
|
||||
{
|
||||
if(this._timer != 0)
|
||||
{
|
||||
this._window.clearTimeout(this._timer);
|
||||
this._timer = 0;
|
||||
}
|
||||
},
|
||||
|
||||
handleEvent: function(event)
|
||||
{
|
||||
switch(event.type)
|
||||
{
|
||||
case "mousemove":
|
||||
this.clearTimer();
|
||||
this._showDelayed();
|
||||
}
|
||||
},
|
||||
handleEvent: function(event)
|
||||
{
|
||||
switch(event.type)
|
||||
{
|
||||
case "mousemove":
|
||||
this.clearTimer();
|
||||
this._showDelayed();
|
||||
}
|
||||
},
|
||||
|
||||
_showDelayed: function()
|
||||
{
|
||||
let delay = ((this._pendingLink.link)
|
||||
? this._service.statusLinkOverDelayShow
|
||||
: this._service.statusLinkOverDelayHide);
|
||||
_showDelayed: function()
|
||||
{
|
||||
let delay = ((this._pendingLink.link)
|
||||
? this._service.statusLinkOverDelayShow
|
||||
: this._service.statusLinkOverDelayHide);
|
||||
|
||||
this._timer = this._window.setTimeout(function(self)
|
||||
{
|
||||
self._timer = 0;
|
||||
self._show();
|
||||
self.stopListen();
|
||||
}, delay, this);
|
||||
},
|
||||
this._timer = this._window.setTimeout(function(self)
|
||||
{
|
||||
self._timer = 0;
|
||||
self._show();
|
||||
self.stopListen();
|
||||
}, delay, this);
|
||||
},
|
||||
|
||||
_show: function()
|
||||
{
|
||||
this._currentLink = this._pendingLink;
|
||||
this._statusService.setOverLinkInternal(this._currentLink.link, this._currentLink.anchor);
|
||||
}
|
||||
_show: function()
|
||||
{
|
||||
this._currentLink = this._pendingLink;
|
||||
this._statusService.setOverLinkInternal(this._currentLink.link, this._currentLink.anchor);
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -23,257 +23,257 @@ CU.import("resource:///modules/statusbar/Toolbars.jsm");
|
|||
|
||||
function Status4Evar(window, gBrowser, toolbox)
|
||||
{
|
||||
this._window = window;
|
||||
this._toolbox = toolbox;
|
||||
this._window = window;
|
||||
this._toolbox = toolbox;
|
||||
|
||||
this.getters = new S4EWindowGetters(this._window);
|
||||
this.toolbars = new S4EToolbars(this._window, gBrowser, this._toolbox, s4e_service, this.getters);
|
||||
this.statusService = new S4EStatusService(this._window, s4e_service, this.getters);
|
||||
this.progressMeter = new S4EProgressService(gBrowser, s4e_service, this.getters, this.statusService);
|
||||
this.downloadStatus = new S4EDownloadService(this._window, gBrowser, s4e_service, this.getters);
|
||||
this.sizeModeService = new SizeModeService(this._window, this);
|
||||
this.getters = new S4EWindowGetters(this._window);
|
||||
this.toolbars = new S4EToolbars(this._window, gBrowser, this._toolbox, s4e_service, this.getters);
|
||||
this.statusService = new S4EStatusService(this._window, s4e_service, this.getters);
|
||||
this.progressMeter = new S4EProgressService(gBrowser, s4e_service, this.getters, this.statusService);
|
||||
this.downloadStatus = new S4EDownloadService(this._window, gBrowser, s4e_service, this.getters);
|
||||
this.sizeModeService = new SizeModeService(this._window, this);
|
||||
|
||||
this._window.addEventListener("unload", this, false);
|
||||
this._window.addEventListener("unload", this, false);
|
||||
}
|
||||
|
||||
Status4Evar.prototype =
|
||||
{
|
||||
_window: null,
|
||||
_toolbox: null,
|
||||
_window: null,
|
||||
_toolbox: null,
|
||||
|
||||
getters: null,
|
||||
toolbars: null,
|
||||
statusService: null,
|
||||
progressMeter: null,
|
||||
downloadStatus: null,
|
||||
sizeModeService: null,
|
||||
getters: null,
|
||||
toolbars: null,
|
||||
statusService: null,
|
||||
progressMeter: null,
|
||||
downloadStatus: null,
|
||||
sizeModeService: null,
|
||||
|
||||
setup: function()
|
||||
{
|
||||
this._toolbox.addEventListener("beforecustomization", this, false);
|
||||
this._toolbox.addEventListener("aftercustomization", this, false);
|
||||
setup: function()
|
||||
{
|
||||
this._toolbox.addEventListener("beforecustomization", this, false);
|
||||
this._toolbox.addEventListener("aftercustomization", this, false);
|
||||
|
||||
this.toolbars.setup();
|
||||
this.updateWindow();
|
||||
this.toolbars.setup();
|
||||
this.updateWindow();
|
||||
|
||||
// OMFG HAX! If a page is already loading, fake a network start event
|
||||
if(this._window.XULBrowserWindow._busyUI)
|
||||
{
|
||||
let nsIWPL = CI.nsIWebProgressListener;
|
||||
this.progressMeter.onStateChange(0, null, nsIWPL.STATE_START | nsIWPL.STATE_IS_NETWORK, 0);
|
||||
}
|
||||
},
|
||||
// OMFG HAX! If a page is already loading, fake a network start event
|
||||
if(this._window.XULBrowserWindow._busyUI)
|
||||
{
|
||||
let nsIWPL = CI.nsIWebProgressListener;
|
||||
this.progressMeter.onStateChange(0, null, nsIWPL.STATE_START | nsIWPL.STATE_IS_NETWORK, 0);
|
||||
}
|
||||
},
|
||||
|
||||
destroy: function()
|
||||
{
|
||||
this._window.removeEventListener("unload", this, false);
|
||||
this._toolbox.removeEventListener("aftercustomization", this, false);
|
||||
this._toolbox.removeEventListener("beforecustomization", this, false);
|
||||
destroy: function()
|
||||
{
|
||||
this._window.removeEventListener("unload", this, false);
|
||||
this._toolbox.removeEventListener("aftercustomization", this, false);
|
||||
this._toolbox.removeEventListener("beforecustomization", this, false);
|
||||
|
||||
this.getters.destroy();
|
||||
this.statusService.destroy();
|
||||
this.downloadStatus.destroy();
|
||||
this.progressMeter.destroy();
|
||||
this.toolbars.destroy();
|
||||
this.sizeModeService.destroy();
|
||||
this.getters.destroy();
|
||||
this.statusService.destroy();
|
||||
this.downloadStatus.destroy();
|
||||
this.progressMeter.destroy();
|
||||
this.toolbars.destroy();
|
||||
this.sizeModeService.destroy();
|
||||
|
||||
["_window", "_toolbox", "getters", "statusService", "downloadStatus",
|
||||
"progressMeter", "toolbars", "sizeModeService"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
},
|
||||
["_window", "_toolbox", "getters", "statusService", "downloadStatus",
|
||||
"progressMeter", "toolbars", "sizeModeService"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
},
|
||||
|
||||
handleEvent: function(aEvent)
|
||||
{
|
||||
switch(aEvent.type)
|
||||
{
|
||||
case "unload":
|
||||
this.destroy();
|
||||
break;
|
||||
case "beforecustomization":
|
||||
this.beforeCustomization();
|
||||
break;
|
||||
case "aftercustomization":
|
||||
this.updateWindow();
|
||||
break;
|
||||
}
|
||||
},
|
||||
handleEvent: function(aEvent)
|
||||
{
|
||||
switch(aEvent.type)
|
||||
{
|
||||
case "unload":
|
||||
this.destroy();
|
||||
break;
|
||||
case "beforecustomization":
|
||||
this.beforeCustomization();
|
||||
break;
|
||||
case "aftercustomization":
|
||||
this.updateWindow();
|
||||
break;
|
||||
}
|
||||
},
|
||||
|
||||
beforeCustomization: function()
|
||||
{
|
||||
this.toolbars.updateSplitters(false);
|
||||
this.toolbars.updateWindowGripper(false);
|
||||
beforeCustomization: function()
|
||||
{
|
||||
this.toolbars.updateSplitters(false);
|
||||
this.toolbars.updateWindowGripper(false);
|
||||
|
||||
this.statusService.setNoUpdate(true);
|
||||
let status_label = this.getters.statusWidgetLabel;
|
||||
if(status_label)
|
||||
{
|
||||
status_label.value = this.getters.strings.getString("statusText");
|
||||
}
|
||||
this.statusService.setNoUpdate(true);
|
||||
let status_label = this.getters.statusWidgetLabel;
|
||||
if(status_label)
|
||||
{
|
||||
status_label.value = this.getters.strings.getString("statusText");
|
||||
}
|
||||
|
||||
this.downloadStatus.customizing(true);
|
||||
},
|
||||
this.downloadStatus.customizing(true);
|
||||
},
|
||||
|
||||
updateWindow: function()
|
||||
{
|
||||
this.statusService.setNoUpdate(false);
|
||||
this.getters.resetGetters();
|
||||
this.statusService.buildTextOrder();
|
||||
this.statusService.buildBinding();
|
||||
this.downloadStatus.init();
|
||||
this.downloadStatus.customizing(false);
|
||||
this.toolbars.updateSplitters(true);
|
||||
updateWindow: function()
|
||||
{
|
||||
this.statusService.setNoUpdate(false);
|
||||
this.getters.resetGetters();
|
||||
this.statusService.buildTextOrder();
|
||||
this.statusService.buildBinding();
|
||||
this.downloadStatus.init();
|
||||
this.downloadStatus.customizing(false);
|
||||
this.toolbars.updateSplitters(true);
|
||||
|
||||
s4e_service.updateWindow(this._window);
|
||||
// This also handles the following:
|
||||
// * buildTextOrder()
|
||||
// * updateStatusField(true)
|
||||
// * updateWindowGripper(true)
|
||||
},
|
||||
s4e_service.updateWindow(this._window);
|
||||
// This also handles the following:
|
||||
// * buildTextOrder()
|
||||
// * updateStatusField(true)
|
||||
// * updateWindowGripper(true)
|
||||
},
|
||||
|
||||
launchOptions: function(currentWindow)
|
||||
{
|
||||
let optionsURL = "chrome://browser/content/statusbar/prefs.xul";
|
||||
let windows = Services.wm.getEnumerator(null);
|
||||
while (windows.hasMoreElements())
|
||||
{
|
||||
let win = windows.getNext();
|
||||
if (win.document.documentURI == optionsURL)
|
||||
{
|
||||
win.focus();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
let features = "chrome,titlebar,toolbar,centerscreen";
|
||||
try
|
||||
{
|
||||
let instantApply = Services.prefs.getBoolPref("browser.preferences.instantApply");
|
||||
features += instantApply ? ",dialog=no" : ",modal";
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
features += ",modal";
|
||||
}
|
||||
currentWindow.openDialog(optionsURL, "", features);
|
||||
}
|
||||
launchOptions: function(currentWindow)
|
||||
{
|
||||
let optionsURL = "chrome://browser/content/statusbar/prefs.xul";
|
||||
let windows = Services.wm.getEnumerator(null);
|
||||
while (windows.hasMoreElements())
|
||||
{
|
||||
let win = windows.getNext();
|
||||
if (win.document.documentURI == optionsURL)
|
||||
{
|
||||
win.focus();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
let features = "chrome,titlebar,toolbar,centerscreen";
|
||||
try
|
||||
{
|
||||
let instantApply = Services.prefs.getBoolPref("browser.preferences.instantApply");
|
||||
features += instantApply ? ",dialog=no" : ",modal";
|
||||
}
|
||||
catch(e)
|
||||
{
|
||||
features += ",modal";
|
||||
}
|
||||
currentWindow.openDialog(optionsURL, "", features);
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
function S4EWindowGetters(window)
|
||||
{
|
||||
this._window = window;
|
||||
this._window = window;
|
||||
}
|
||||
|
||||
S4EWindowGetters.prototype =
|
||||
{
|
||||
_window: null,
|
||||
_getterMap:
|
||||
[
|
||||
["addonbar", "addon-bar"],
|
||||
["addonbarCloseButton", "addonbar-closebutton"],
|
||||
["browserBottomBox", "browser-bottombox"],
|
||||
["downloadButton", "status4evar-download-button"],
|
||||
["downloadButtonTooltip", "status4evar-download-tooltip"],
|
||||
["downloadButtonProgress", "status4evar-download-progress-bar"],
|
||||
["downloadButtonLabel", "status4evar-download-label"],
|
||||
["downloadButtonAnchor", "status4evar-download-anchor"],
|
||||
["downloadNotifyAnchor", "status4evar-download-notification-anchor"],
|
||||
["statusBar", "status4evar-status-bar"],
|
||||
["statusWidget", "status4evar-status-widget"],
|
||||
["statusWidgetLabel", "status4evar-status-text"],
|
||||
["strings", "bundle_status4evar"],
|
||||
["throbberProgress", "status4evar-throbber-widget"],
|
||||
["toolbarProgress", "status4evar-progress-bar"]
|
||||
],
|
||||
_window: null,
|
||||
_getterMap:
|
||||
[
|
||||
["addonbar", "addon-bar"],
|
||||
["addonbarCloseButton", "addonbar-closebutton"],
|
||||
["browserBottomBox", "browser-bottombox"],
|
||||
["downloadButton", "status4evar-download-button"],
|
||||
["downloadButtonTooltip", "status4evar-download-tooltip"],
|
||||
["downloadButtonProgress", "status4evar-download-progress-bar"],
|
||||
["downloadButtonLabel", "status4evar-download-label"],
|
||||
["downloadButtonAnchor", "status4evar-download-anchor"],
|
||||
["downloadNotifyAnchor", "status4evar-download-notification-anchor"],
|
||||
["statusBar", "status4evar-status-bar"],
|
||||
["statusWidget", "status4evar-status-widget"],
|
||||
["statusWidgetLabel", "status4evar-status-text"],
|
||||
["strings", "bundle_status4evar"],
|
||||
["throbberProgress", "status4evar-throbber-widget"],
|
||||
["toolbarProgress", "status4evar-progress-bar"]
|
||||
],
|
||||
|
||||
resetGetters: function()
|
||||
{
|
||||
let document = this._window.document;
|
||||
resetGetters: function()
|
||||
{
|
||||
let document = this._window.document;
|
||||
|
||||
this._getterMap.forEach(function(getter)
|
||||
{
|
||||
let [prop, id] = getter;
|
||||
delete this[prop];
|
||||
this.__defineGetter__(prop, function()
|
||||
{
|
||||
delete this[prop];
|
||||
return this[prop] = document.getElementById(id);
|
||||
});
|
||||
}, this);
|
||||
this._getterMap.forEach(function(getter)
|
||||
{
|
||||
let [prop, id] = getter;
|
||||
delete this[prop];
|
||||
this.__defineGetter__(prop, function()
|
||||
{
|
||||
delete this[prop];
|
||||
return this[prop] = document.getElementById(id);
|
||||
});
|
||||
}, this);
|
||||
|
||||
delete this.statusOverlay;
|
||||
this.__defineGetter__("statusOverlay", function()
|
||||
{
|
||||
let so = this._window.XULBrowserWindow.statusTextField;
|
||||
if(!so)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
delete this.statusOverlay;
|
||||
this.__defineGetter__("statusOverlay", function()
|
||||
{
|
||||
let so = this._window.XULBrowserWindow.statusTextField;
|
||||
if(!so)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
delete this.statusOverlay;
|
||||
return this.statusOverlay = so;
|
||||
});
|
||||
},
|
||||
delete this.statusOverlay;
|
||||
return this.statusOverlay = so;
|
||||
});
|
||||
},
|
||||
|
||||
destroy: function()
|
||||
{
|
||||
this._getterMap.forEach(function(getter)
|
||||
{
|
||||
let [prop, id] = getter;
|
||||
delete this[prop];
|
||||
}, this);
|
||||
destroy: function()
|
||||
{
|
||||
this._getterMap.forEach(function(getter)
|
||||
{
|
||||
let [prop, id] = getter;
|
||||
delete this[prop];
|
||||
}, this);
|
||||
|
||||
["statusOverlay", "statusOverlay", "_window"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
}
|
||||
["statusOverlay", "statusOverlay", "_window"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
}
|
||||
};
|
||||
|
||||
function SizeModeService(window, s4e)
|
||||
{
|
||||
this._window = window;
|
||||
this._s4e = s4e;
|
||||
this._window = window;
|
||||
this._s4e = s4e;
|
||||
|
||||
this.lastFullScreen = this._window.fullScreen;
|
||||
this.lastwindowState = this._window.windowState;
|
||||
this._window.addEventListener("sizemodechange", this, false);
|
||||
this.lastFullScreen = this._window.fullScreen;
|
||||
this.lastwindowState = this._window.windowState;
|
||||
this._window.addEventListener("sizemodechange", this, false);
|
||||
}
|
||||
|
||||
SizeModeService.prototype =
|
||||
{
|
||||
_window: null,
|
||||
_s4e: null,
|
||||
_window: null,
|
||||
_s4e: null,
|
||||
|
||||
lastFullScreen: null,
|
||||
lastwindowState: null,
|
||||
lastFullScreen: null,
|
||||
lastwindowState: null,
|
||||
|
||||
destroy: function()
|
||||
{
|
||||
this._window.removeEventListener("sizemodechange", this, false);
|
||||
destroy: function()
|
||||
{
|
||||
this._window.removeEventListener("sizemodechange", this, false);
|
||||
|
||||
["_window", "_s4e"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
},
|
||||
["_window", "_s4e"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
},
|
||||
|
||||
handleEvent: function(e)
|
||||
{
|
||||
if(this._window.fullScreen != this.lastFullScreen)
|
||||
{
|
||||
this.lastFullScreen = this._window.fullScreen;
|
||||
this._s4e.statusService.updateFullScreen();
|
||||
}
|
||||
handleEvent: function(e)
|
||||
{
|
||||
if(this._window.fullScreen != this.lastFullScreen)
|
||||
{
|
||||
this.lastFullScreen = this._window.fullScreen;
|
||||
this._s4e.statusService.updateFullScreen();
|
||||
}
|
||||
|
||||
if(this._window.windowState != this.lastwindowState)
|
||||
{
|
||||
this.lastwindowState = this._window.windowState;
|
||||
this._s4e.toolbars.updateWindowGripper(true);
|
||||
}
|
||||
},
|
||||
if(this._window.windowState != this.lastwindowState)
|
||||
{
|
||||
this.lastwindowState = this._window.windowState;
|
||||
this._s4e.toolbars.updateWindowGripper(true);
|
||||
}
|
||||
},
|
||||
|
||||
QueryInterface: XPCOMUtils.generateQI([ CI.nsIDOMEventListener ])
|
||||
QueryInterface: XPCOMUtils.generateQI([ CI.nsIDOMEventListener ])
|
||||
};
|
||||
|
|
|
|||
|
|
@ -13,209 +13,209 @@ CU.import("resource://gre/modules/Services.jsm");
|
|||
|
||||
function S4EToolbars(window, gBrowser, toolbox, service, getters)
|
||||
{
|
||||
this._window = window;
|
||||
this._toolbox = toolbox;
|
||||
this._service = service;
|
||||
this._getters = getters;
|
||||
this._handler = new ClassicS4EToolbars(this._window, this._toolbox);
|
||||
this._window = window;
|
||||
this._toolbox = toolbox;
|
||||
this._service = service;
|
||||
this._getters = getters;
|
||||
this._handler = new ClassicS4EToolbars(this._window, this._toolbox);
|
||||
}
|
||||
|
||||
S4EToolbars.prototype =
|
||||
{
|
||||
_window: null,
|
||||
_toolbox: null,
|
||||
_service: null,
|
||||
_getters: null,
|
||||
_window: null,
|
||||
_toolbox: null,
|
||||
_service: null,
|
||||
_getters: null,
|
||||
|
||||
_handler: null,
|
||||
_handler: null,
|
||||
|
||||
setup: function()
|
||||
{
|
||||
this.updateSplitters(false);
|
||||
this.updateWindowGripper(false);
|
||||
this._handler.setup(this._service.firstRun);
|
||||
},
|
||||
setup: function()
|
||||
{
|
||||
this.updateSplitters(false);
|
||||
this.updateWindowGripper(false);
|
||||
this._handler.setup(this._service.firstRun);
|
||||
},
|
||||
|
||||
destroy: function()
|
||||
{
|
||||
this._handler.destroy();
|
||||
destroy: function()
|
||||
{
|
||||
this._handler.destroy();
|
||||
|
||||
["_window", "_toolbox", "_service", "_getters", "_handler"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
},
|
||||
["_window", "_toolbox", "_service", "_getters", "_handler"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
},
|
||||
|
||||
updateSplitters: function(action)
|
||||
{
|
||||
let document = this._window.document;
|
||||
updateSplitters: function(action)
|
||||
{
|
||||
let document = this._window.document;
|
||||
|
||||
let splitter_before = document.getElementById("status4evar-status-splitter-before");
|
||||
if(splitter_before)
|
||||
{
|
||||
splitter_before.parentNode.removeChild(splitter_before);
|
||||
}
|
||||
let splitter_before = document.getElementById("status4evar-status-splitter-before");
|
||||
if(splitter_before)
|
||||
{
|
||||
splitter_before.parentNode.removeChild(splitter_before);
|
||||
}
|
||||
|
||||
let splitter_after = document.getElementById("status4evar-status-splitter-after");
|
||||
if(splitter_after)
|
||||
{
|
||||
splitter_after.parentNode.removeChild(splitter_after);
|
||||
}
|
||||
let splitter_after = document.getElementById("status4evar-status-splitter-after");
|
||||
if(splitter_after)
|
||||
{
|
||||
splitter_after.parentNode.removeChild(splitter_after);
|
||||
}
|
||||
|
||||
let status = this._getters.statusWidget;
|
||||
if(!action || !status)
|
||||
{
|
||||
return;
|
||||
}
|
||||
let status = this._getters.statusWidget;
|
||||
if(!action || !status)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
let urlbar = document.getElementById("urlbar-container");
|
||||
let stop = document.getElementById("stop-button");
|
||||
let fullscreenflex = document.getElementById("fullscreenflex");
|
||||
let urlbar = document.getElementById("urlbar-container");
|
||||
let stop = document.getElementById("stop-button");
|
||||
let fullscreenflex = document.getElementById("fullscreenflex");
|
||||
|
||||
let nextSibling = status.nextSibling;
|
||||
let previousSibling = status.previousSibling;
|
||||
let nextSibling = status.nextSibling;
|
||||
let previousSibling = status.previousSibling;
|
||||
|
||||
function getSplitter(splitter, suffix)
|
||||
{
|
||||
if(!splitter)
|
||||
{
|
||||
splitter = document.createElement("splitter");
|
||||
splitter.id = "status4evar-status-splitter-" + suffix;
|
||||
splitter.setAttribute("resizebefore", "flex");
|
||||
splitter.setAttribute("resizeafter", "flex");
|
||||
splitter.className = "chromeclass-toolbar-additional status4evar-status-splitter";
|
||||
}
|
||||
return splitter;
|
||||
}
|
||||
function getSplitter(splitter, suffix)
|
||||
{
|
||||
if(!splitter)
|
||||
{
|
||||
splitter = document.createElement("splitter");
|
||||
splitter.id = "status4evar-status-splitter-" + suffix;
|
||||
splitter.setAttribute("resizebefore", "flex");
|
||||
splitter.setAttribute("resizeafter", "flex");
|
||||
splitter.className = "chromeclass-toolbar-additional status4evar-status-splitter";
|
||||
}
|
||||
return splitter;
|
||||
}
|
||||
|
||||
if((previousSibling && previousSibling.flex > 0)
|
||||
|| (urlbar && stop && urlbar.getAttribute("combined") && stop == previousSibling))
|
||||
{
|
||||
status.parentNode.insertBefore(getSplitter(splitter_before, "before"), status);
|
||||
}
|
||||
if((previousSibling && previousSibling.flex > 0)
|
||||
|| (urlbar && stop && urlbar.getAttribute("combined") && stop == previousSibling))
|
||||
{
|
||||
status.parentNode.insertBefore(getSplitter(splitter_before, "before"), status);
|
||||
}
|
||||
|
||||
if(nextSibling && nextSibling.flex > 0 && nextSibling != fullscreenflex)
|
||||
{
|
||||
status.parentNode.insertBefore(getSplitter(splitter_after, "after"), nextSibling);
|
||||
}
|
||||
},
|
||||
if(nextSibling && nextSibling.flex > 0 && nextSibling != fullscreenflex)
|
||||
{
|
||||
status.parentNode.insertBefore(getSplitter(splitter_after, "after"), nextSibling);
|
||||
}
|
||||
},
|
||||
|
||||
updateWindowGripper: function(action)
|
||||
{
|
||||
let document = this._window.document;
|
||||
updateWindowGripper: function(action)
|
||||
{
|
||||
let document = this._window.document;
|
||||
|
||||
let gripper = document.getElementById("status4evar-window-gripper");
|
||||
let toolbar = this._getters.statusBar || this._getters.addonbar;
|
||||
let gripper = document.getElementById("status4evar-window-gripper");
|
||||
let toolbar = this._getters.statusBar || this._getters.addonbar;
|
||||
|
||||
if(!action || !toolbar || !this._service.addonbarWindowGripper
|
||||
|| this._window.windowState != CI.nsIDOMChromeWindow.STATE_NORMAL || toolbar.toolbox.customizing)
|
||||
{
|
||||
if(gripper)
|
||||
{
|
||||
gripper.parentNode.removeChild(gripper);
|
||||
}
|
||||
return;
|
||||
}
|
||||
if(!action || !toolbar || !this._service.addonbarWindowGripper
|
||||
|| this._window.windowState != CI.nsIDOMChromeWindow.STATE_NORMAL || toolbar.toolbox.customizing)
|
||||
{
|
||||
if(gripper)
|
||||
{
|
||||
gripper.parentNode.removeChild(gripper);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
gripper = this._handler.buildGripper(toolbar, gripper, "status4evar-window-gripper");
|
||||
gripper = this._handler.buildGripper(toolbar, gripper, "status4evar-window-gripper");
|
||||
|
||||
toolbar.appendChild(gripper);
|
||||
}
|
||||
toolbar.appendChild(gripper);
|
||||
}
|
||||
};
|
||||
|
||||
function ClassicS4EToolbars(window, toolbox)
|
||||
{
|
||||
this._window = window;
|
||||
this._toolbox = toolbox;
|
||||
this._window = window;
|
||||
this._toolbox = toolbox;
|
||||
}
|
||||
|
||||
ClassicS4EToolbars.prototype =
|
||||
{
|
||||
_window: null,
|
||||
_toolbox: null,
|
||||
_window: null,
|
||||
_toolbox: null,
|
||||
|
||||
setup: function(firstRun)
|
||||
{
|
||||
let document = this._window.document;
|
||||
setup: function(firstRun)
|
||||
{
|
||||
let document = this._window.document;
|
||||
|
||||
let addon_bar = document.getElementById("addon-bar");
|
||||
if(addon_bar)
|
||||
{
|
||||
let baseSet = "addonbar-closebutton"
|
||||
+ ",status4evar-status-widget"
|
||||
+ ",status4evar-progress-widget";
|
||||
let addon_bar = document.getElementById("addon-bar");
|
||||
if(addon_bar)
|
||||
{
|
||||
let baseSet = "addonbar-closebutton"
|
||||
+ ",status4evar-status-widget"
|
||||
+ ",status4evar-progress-widget";
|
||||
|
||||
// Update the defaultSet
|
||||
let defaultSet = baseSet;
|
||||
let defaultSetIgnore = ["addonbar-closebutton", "spring", "status-bar"];
|
||||
addon_bar.getAttribute("defaultset").split(",").forEach(function(item)
|
||||
{
|
||||
if(defaultSetIgnore.indexOf(item) == -1)
|
||||
{
|
||||
defaultSet += "," + item;
|
||||
}
|
||||
});
|
||||
defaultSet += ",status-bar"
|
||||
addon_bar.setAttribute("defaultset", defaultSet);
|
||||
// Update the defaultSet
|
||||
let defaultSet = baseSet;
|
||||
let defaultSetIgnore = ["addonbar-closebutton", "spring", "status-bar"];
|
||||
addon_bar.getAttribute("defaultset").split(",").forEach(function(item)
|
||||
{
|
||||
if(defaultSetIgnore.indexOf(item) == -1)
|
||||
{
|
||||
defaultSet += "," + item;
|
||||
}
|
||||
});
|
||||
defaultSet += ",status-bar"
|
||||
addon_bar.setAttribute("defaultset", defaultSet);
|
||||
|
||||
// Update the currentSet
|
||||
if(firstRun)
|
||||
{
|
||||
let isCustomizableToolbar = function(aElt)
|
||||
{
|
||||
return aElt.localName == "toolbar" && aElt.getAttribute("customizable") == "true";
|
||||
}
|
||||
// Update the currentSet
|
||||
if(firstRun)
|
||||
{
|
||||
let isCustomizableToolbar = function(aElt)
|
||||
{
|
||||
return aElt.localName == "toolbar" && aElt.getAttribute("customizable") == "true";
|
||||
}
|
||||
|
||||
let isCustomizedAlready = false;
|
||||
let toolbars = Array.filter(this._toolbox.childNodes, isCustomizableToolbar).concat(
|
||||
Array.filter(this._toolbox.externalToolbars, isCustomizableToolbar));
|
||||
toolbars.forEach(function(toolbar)
|
||||
{
|
||||
if(toolbar.currentSet.indexOf("status4evar") > -1)
|
||||
{
|
||||
isCustomizedAlready = true;
|
||||
}
|
||||
});
|
||||
let isCustomizedAlready = false;
|
||||
let toolbars = Array.filter(this._toolbox.childNodes, isCustomizableToolbar).concat(
|
||||
Array.filter(this._toolbox.externalToolbars, isCustomizableToolbar));
|
||||
toolbars.forEach(function(toolbar)
|
||||
{
|
||||
if(toolbar.currentSet.indexOf("status4evar") > -1)
|
||||
{
|
||||
isCustomizedAlready = true;
|
||||
}
|
||||
});
|
||||
|
||||
if(!isCustomizedAlready)
|
||||
{
|
||||
let currentSet = baseSet;
|
||||
let currentSetIgnore = ["addonbar-closebutton", "spring"];
|
||||
addon_bar.currentSet.split(",").forEach(function(item)
|
||||
{
|
||||
if(currentSetIgnore.indexOf(item) == -1)
|
||||
{
|
||||
currentSet += "," + item;
|
||||
}
|
||||
});
|
||||
addon_bar.currentSet = currentSet;
|
||||
addon_bar.setAttribute("currentset", currentSet);
|
||||
document.persist(addon_bar.id, "currentset");
|
||||
this._window.setToolbarVisibility(addon_bar, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
if(!isCustomizedAlready)
|
||||
{
|
||||
let currentSet = baseSet;
|
||||
let currentSetIgnore = ["addonbar-closebutton", "spring"];
|
||||
addon_bar.currentSet.split(",").forEach(function(item)
|
||||
{
|
||||
if(currentSetIgnore.indexOf(item) == -1)
|
||||
{
|
||||
currentSet += "," + item;
|
||||
}
|
||||
});
|
||||
addon_bar.currentSet = currentSet;
|
||||
addon_bar.setAttribute("currentset", currentSet);
|
||||
document.persist(addon_bar.id, "currentset");
|
||||
this._window.setToolbarVisibility(addon_bar, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
destroy: function()
|
||||
{
|
||||
["_window", "_toolbox"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
},
|
||||
destroy: function()
|
||||
{
|
||||
["_window", "_toolbox"].forEach(function(prop)
|
||||
{
|
||||
delete this[prop];
|
||||
}, this);
|
||||
},
|
||||
|
||||
buildGripper: function(toolbar, gripper, id)
|
||||
{
|
||||
if(!gripper)
|
||||
{
|
||||
let document = this._window.document;
|
||||
buildGripper: function(toolbar, gripper, id)
|
||||
{
|
||||
if(!gripper)
|
||||
{
|
||||
let document = this._window.document;
|
||||
|
||||
gripper = document.createElement("resizer");
|
||||
gripper.id = id;
|
||||
gripper.dir = "bottomend";
|
||||
}
|
||||
gripper = document.createElement("resizer");
|
||||
gripper.id = id;
|
||||
gripper.dir = "bottomend";
|
||||
}
|
||||
|
||||
return gripper;
|
||||
}
|
||||
return gripper;
|
||||
}
|
||||
};
|
||||
|
|
|
|||
|
|
@ -8,8 +8,7 @@
|
|||
* Status Popup
|
||||
*/
|
||||
|
||||
statuspanel
|
||||
{
|
||||
-moz-binding: url("chrome://browser/content/statusbar/tabbrowser.xml#statuspanel");
|
||||
statuspanel {
|
||||
-moz-binding: url("chrome://browser/content/statusbar/tabbrowser.xml#statuspanel");
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6,11 +6,11 @@ if(!caligon) var caligon = {};
|
|||
|
||||
window.addEventListener("load", function buildS4E()
|
||||
{
|
||||
window.removeEventListener("load", buildS4E, false);
|
||||
window.removeEventListener("load", buildS4E, false);
|
||||
|
||||
Components.utils.import("resource:///modules/statusbar/Status4Evar.jsm");
|
||||
Components.utils.import("resource:///modules/statusbar/Status4Evar.jsm");
|
||||
|
||||
caligon.status4evar = new Status4Evar(window, gBrowser, gNavToolbox);
|
||||
caligon.status4evar.setup();
|
||||
caligon.status4evar = new Status4Evar(window, gBrowser, gNavToolbox);
|
||||
caligon.status4evar.setup();
|
||||
}, false);
|
||||
|
||||
|
|
|
|||
|
|
@ -13,23 +13,23 @@
|
|||
<overlay id="status4evar-overlay"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
|
||||
<stringbundleset id="stringbundleset">
|
||||
<stringbundle id="bundle_status4evar" src="chrome://browser/locale/statusbar/overlay.properties" />
|
||||
</stringbundleset>
|
||||
<stringbundleset id="stringbundleset">
|
||||
<stringbundle id="bundle_status4evar" src="chrome://browser/locale/statusbar/overlay.properties" />
|
||||
</stringbundleset>
|
||||
|
||||
<script type="application/javascript" src="chrome://browser/content/statusbar/overlay.js" />
|
||||
<script type="application/javascript" src="chrome://browser/content/statusbar/overlay.js" />
|
||||
|
||||
<commandset>
|
||||
<command id="S4E:Options" oncommand="caligon.status4evar.launchOptions(window);"/>
|
||||
</commandset>
|
||||
<commandset>
|
||||
<command id="S4E:Options" oncommand="caligon.status4evar.launchOptions(window);"/>
|
||||
</commandset>
|
||||
|
||||
<popupset id="mainPopupSet">
|
||||
<hbox id="status4evar-download-notification-container" mousethrough="always">
|
||||
<vbox id="status4evar-download-notification-anchor">
|
||||
<vbox id="status4evar-download-notification-icon" />
|
||||
</vbox>
|
||||
</hbox>
|
||||
</popupset>
|
||||
<popupset id="mainPopupSet">
|
||||
<hbox id="status4evar-download-notification-container" mousethrough="always">
|
||||
<vbox id="status4evar-download-notification-anchor">
|
||||
<vbox id="status4evar-download-notification-icon" />
|
||||
</vbox>
|
||||
</hbox>
|
||||
</popupset>
|
||||
|
||||
<menupopup id="menu_ToolsPopup">
|
||||
<menuitem id="statusbar-options-fx" command="S4E:Options"
|
||||
|
|
@ -41,41 +41,41 @@
|
|||
label="&status4evar.menu.options.label;"/>
|
||||
</menupopup>
|
||||
|
||||
<toolbarpalette id="BrowserToolbarPalette">
|
||||
<toolbaritem id="status4evar-status-widget"
|
||||
title="&status4evar.status.widget.title;"
|
||||
removable="true" flex="1" persist="width" width="100">
|
||||
<label id="status4evar-status-text" flex="1" crop="end" value="&status4evar.status.widget.title;" />
|
||||
</toolbaritem>
|
||||
<toolbarpalette id="BrowserToolbarPalette">
|
||||
<toolbaritem id="status4evar-status-widget"
|
||||
title="&status4evar.status.widget.title;"
|
||||
removable="true" flex="1" persist="width" width="100">
|
||||
<label id="status4evar-status-text" flex="1" crop="end" value="&status4evar.status.widget.title;" />
|
||||
</toolbaritem>
|
||||
|
||||
<toolbarbutton id="status4evar-download-button"
|
||||
title="&status4evar.download.widget.title;"
|
||||
class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
removable="true" collapsed="true" tooltip="_child"
|
||||
oncommand="caligon.status4evar.downloadStatus.openUI(event)">
|
||||
<stack id="status4evar-download-anchor" class="toolbarbutton-icon">
|
||||
<vbox id="status4evar-download-icon" />
|
||||
<vbox pack="end">
|
||||
<progressmeter id="status4evar-download-progress-bar" mode="normal" value="0" collapsed="true" min="0" max="100" />
|
||||
</vbox>
|
||||
</stack>
|
||||
<tooltip id="status4evar-download-tooltip" />
|
||||
<label id="status4evar-download-label" value="&status4evar.download.widget.title;" class="toolbarbutton-text" crop="right" flex="1" />
|
||||
</toolbarbutton>
|
||||
<toolbarbutton id="status4evar-download-button"
|
||||
title="&status4evar.download.widget.title;"
|
||||
class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
removable="true" collapsed="true" tooltip="_child"
|
||||
oncommand="caligon.status4evar.downloadStatus.openUI(event)">
|
||||
<stack id="status4evar-download-anchor" class="toolbarbutton-icon">
|
||||
<vbox id="status4evar-download-icon" />
|
||||
<vbox pack="end">
|
||||
<progressmeter id="status4evar-download-progress-bar" mode="normal" value="0" collapsed="true" min="0" max="100" />
|
||||
</vbox>
|
||||
</stack>
|
||||
<tooltip id="status4evar-download-tooltip" />
|
||||
<label id="status4evar-download-label" value="&status4evar.download.widget.title;" class="toolbarbutton-text" crop="right" flex="1" />
|
||||
</toolbarbutton>
|
||||
|
||||
<toolbaritem id="status4evar-progress-widget"
|
||||
title="&status4evar.progress.widget.title;"
|
||||
removable="true">
|
||||
<progressmeter id="status4evar-progress-bar" class="progressmeter-statusbar"
|
||||
mode="normal" value="0" collapsed="true" min="0" max="100" />
|
||||
</toolbaritem>
|
||||
<toolbaritem id="status4evar-progress-widget"
|
||||
title="&status4evar.progress.widget.title;"
|
||||
removable="true">
|
||||
<progressmeter id="status4evar-progress-bar" class="progressmeter-statusbar"
|
||||
mode="normal" value="0" collapsed="true" min="0" max="100" />
|
||||
</toolbaritem>
|
||||
|
||||
<toolbarbutton id="status4evar-options-button"
|
||||
title="&status4evar.options.widget.title;"
|
||||
class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
label="&status4evar.options.widget.label;"
|
||||
removable="true" command="S4E:Options" tooltiptext="&status4evar.options.widget.title;" />
|
||||
</toolbarpalette>
|
||||
<toolbarbutton id="status4evar-options-button"
|
||||
title="&status4evar.options.widget.title;"
|
||||
class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
label="&status4evar.options.widget.label;"
|
||||
removable="true" command="S4E:Options" tooltiptext="&status4evar.options.widget.title;" />
|
||||
</toolbarpalette>
|
||||
|
||||
<statusbar id="status-bar" ordinal="1" />
|
||||
</overlay>
|
||||
|
|
|
|||
|
|
@ -4,8 +4,7 @@
|
|||
|
||||
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
|
||||
|
||||
.css-bg-editor
|
||||
{
|
||||
-moz-binding: url("chrome://browser/content/statusbar/prefs.xml#css-bg-editor");
|
||||
.css-bg-editor {
|
||||
-moz-binding: url("chrome://browser/content/statusbar/prefs.xml#css-bg-editor");
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6,267 +6,267 @@ Components.utils.import("resource://gre/modules/Services.jsm");
|
|||
|
||||
var status4evarPrefs =
|
||||
{
|
||||
get dynamicProgressStyle()
|
||||
{
|
||||
let styleSheets = window.document.styleSheets;
|
||||
for(let i = 0; i < styleSheets.length; i++)
|
||||
{
|
||||
let styleSheet = styleSheets[i];
|
||||
if(styleSheet.href == "chrome://browser/skin/statusbar/dynamic.css")
|
||||
{
|
||||
delete this.dynamicProgressStyle;
|
||||
return this.dynamicProgressStyle = styleSheet;
|
||||
}
|
||||
}
|
||||
get dynamicProgressStyle()
|
||||
{
|
||||
let styleSheets = window.document.styleSheets;
|
||||
for(let i = 0; i < styleSheets.length; i++)
|
||||
{
|
||||
let styleSheet = styleSheets[i];
|
||||
if(styleSheet.href == "chrome://browser/skin/statusbar/dynamic.css")
|
||||
{
|
||||
delete this.dynamicProgressStyle;
|
||||
return this.dynamicProgressStyle = styleSheet;
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
},
|
||||
return null;
|
||||
},
|
||||
|
||||
//
|
||||
// Status timeout management
|
||||
//
|
||||
get statusTimeoutPref()
|
||||
{
|
||||
delete this.statusTimeoutPref;
|
||||
return this.statusTimeoutPref = document.getElementById("status4evar-pref-status-timeout");
|
||||
},
|
||||
get statusTimeoutPref()
|
||||
{
|
||||
delete this.statusTimeoutPref;
|
||||
return this.statusTimeoutPref = document.getElementById("status4evar-pref-status-timeout");
|
||||
},
|
||||
|
||||
get statusTimeoutCheckbox()
|
||||
{
|
||||
delete this.statusTimeoutCheckbox;
|
||||
return this.statusTimeoutCheckbox = document.getElementById("status4evar-status-timeout-check");
|
||||
},
|
||||
get statusTimeoutCheckbox()
|
||||
{
|
||||
delete this.statusTimeoutCheckbox;
|
||||
return this.statusTimeoutCheckbox = document.getElementById("status4evar-status-timeout-check");
|
||||
},
|
||||
|
||||
statusTimeoutChanged: function()
|
||||
{
|
||||
if(this.statusTimeoutPref.value > 0)
|
||||
{
|
||||
this.statusTimeoutPref.disabled = false;
|
||||
this.statusTimeoutCheckbox.checked = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.statusTimeoutPref.disabled = true;
|
||||
this.statusTimeoutCheckbox.checked = false;
|
||||
}
|
||||
},
|
||||
statusTimeoutChanged: function()
|
||||
{
|
||||
if(this.statusTimeoutPref.value > 0)
|
||||
{
|
||||
this.statusTimeoutPref.disabled = false;
|
||||
this.statusTimeoutCheckbox.checked = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.statusTimeoutPref.disabled = true;
|
||||
this.statusTimeoutCheckbox.checked = false;
|
||||
}
|
||||
},
|
||||
|
||||
statusTimeoutSync: function()
|
||||
{
|
||||
this.statusTimeoutChanged();
|
||||
return undefined;
|
||||
},
|
||||
statusTimeoutSync: function()
|
||||
{
|
||||
this.statusTimeoutChanged();
|
||||
return undefined;
|
||||
},
|
||||
|
||||
statusTimeoutToggle: function()
|
||||
{
|
||||
if(this.statusTimeoutPref.disabled == this.statusTimeoutCheckbox.checked)
|
||||
{
|
||||
if(this.statusTimeoutCheckbox.checked)
|
||||
{
|
||||
this.statusTimeoutPref.value = 10;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.statusTimeoutPref.value = 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
statusTimeoutToggle: function()
|
||||
{
|
||||
if(this.statusTimeoutPref.disabled == this.statusTimeoutCheckbox.checked)
|
||||
{
|
||||
if(this.statusTimeoutCheckbox.checked)
|
||||
{
|
||||
this.statusTimeoutPref.value = 10;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.statusTimeoutPref.value = 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
//
|
||||
// Status network management
|
||||
//
|
||||
get statusNetworkPref()
|
||||
{
|
||||
delete this.statusNetworkPref;
|
||||
return this.statusNetworkPref = document.getElementById("status4evar-pref-status-network");
|
||||
},
|
||||
get statusNetworkPref()
|
||||
{
|
||||
delete this.statusNetworkPref;
|
||||
return this.statusNetworkPref = document.getElementById("status4evar-pref-status-network");
|
||||
},
|
||||
|
||||
get statusNetworkXHRPref()
|
||||
{
|
||||
delete this.statusNetworkXHRPref;
|
||||
return this.statusNetworkXHRPref = document.getElementById("status4evar-pref-status-network-xhr");
|
||||
},
|
||||
get statusNetworkXHRPref()
|
||||
{
|
||||
delete this.statusNetworkXHRPref;
|
||||
return this.statusNetworkXHRPref = document.getElementById("status4evar-pref-status-network-xhr");
|
||||
},
|
||||
|
||||
statusNetworkChanged: function()
|
||||
{
|
||||
this.statusNetworkXHRPref.disabled = ! this.statusNetworkPref.value;
|
||||
},
|
||||
statusNetworkChanged: function()
|
||||
{
|
||||
this.statusNetworkXHRPref.disabled = ! this.statusNetworkPref.value;
|
||||
},
|
||||
|
||||
statusNetworkSync: function()
|
||||
{
|
||||
this.statusNetworkChanged();
|
||||
return undefined;
|
||||
},
|
||||
statusNetworkSync: function()
|
||||
{
|
||||
this.statusNetworkChanged();
|
||||
return undefined;
|
||||
},
|
||||
|
||||
//
|
||||
// Status Text langth managment
|
||||
//
|
||||
get textMaxLengthPref()
|
||||
{
|
||||
delete this.textMaxLengthPref;
|
||||
return this.textMaxLengthPref = document.getElementById("status4evar-pref-status-toolbar-maxLength");
|
||||
},
|
||||
get textMaxLengthPref()
|
||||
{
|
||||
delete this.textMaxLengthPref;
|
||||
return this.textMaxLengthPref = document.getElementById("status4evar-pref-status-toolbar-maxLength");
|
||||
},
|
||||
|
||||
get textMaxLengthCheckbox()
|
||||
{
|
||||
delete this.textMaxLengthCheckbox;
|
||||
return this.textMaxLengthCheckbox = document.getElementById("status4evar-status-toolbar-maxLength-check");
|
||||
},
|
||||
get textMaxLengthCheckbox()
|
||||
{
|
||||
delete this.textMaxLengthCheckbox;
|
||||
return this.textMaxLengthCheckbox = document.getElementById("status4evar-status-toolbar-maxLength-check");
|
||||
},
|
||||
|
||||
textLengthChanged: function()
|
||||
{
|
||||
if(this.textMaxLengthPref.value > 0)
|
||||
{
|
||||
this.textMaxLengthPref.disabled = false;
|
||||
this.textMaxLengthCheckbox.checked = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.textMaxLengthPref.disabled = true;
|
||||
this.textMaxLengthCheckbox.checked = false;
|
||||
}
|
||||
},
|
||||
textLengthChanged: function()
|
||||
{
|
||||
if(this.textMaxLengthPref.value > 0)
|
||||
{
|
||||
this.textMaxLengthPref.disabled = false;
|
||||
this.textMaxLengthCheckbox.checked = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.textMaxLengthPref.disabled = true;
|
||||
this.textMaxLengthCheckbox.checked = false;
|
||||
}
|
||||
},
|
||||
|
||||
textLengthSync: function()
|
||||
{
|
||||
this.textLengthChanged();
|
||||
return undefined;
|
||||
},
|
||||
textLengthSync: function()
|
||||
{
|
||||
this.textLengthChanged();
|
||||
return undefined;
|
||||
},
|
||||
|
||||
textLengthToggle: function()
|
||||
{
|
||||
if(this.textMaxLengthPref.disabled == this.textMaxLengthCheckbox.checked)
|
||||
{
|
||||
if(this.textMaxLengthCheckbox.checked)
|
||||
{
|
||||
this.textMaxLengthPref.value = 800;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.textMaxLengthPref.value = 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
textLengthToggle: function()
|
||||
{
|
||||
if(this.textMaxLengthPref.disabled == this.textMaxLengthCheckbox.checked)
|
||||
{
|
||||
if(this.textMaxLengthCheckbox.checked)
|
||||
{
|
||||
this.textMaxLengthPref.value = 800;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.textMaxLengthPref.value = 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
//
|
||||
// Toolbar progress style management
|
||||
//
|
||||
get progressToolbarStylePref()
|
||||
{
|
||||
delete this.progressToolbarStylePref;
|
||||
return this.progressToolbarStylePref = document.getElementById("status4evar-pref-progress-toolbar-style");
|
||||
},
|
||||
get progressToolbarStylePref()
|
||||
{
|
||||
delete this.progressToolbarStylePref;
|
||||
return this.progressToolbarStylePref = document.getElementById("status4evar-pref-progress-toolbar-style");
|
||||
},
|
||||
|
||||
get progressToolbarCSSPref()
|
||||
{
|
||||
delete this.progressToolbarCSSPref;
|
||||
return this.progressToolbarCSSPref = document.getElementById("status4evar-pref-progress-toolbar-css");
|
||||
},
|
||||
get progressToolbarCSSPref()
|
||||
{
|
||||
delete this.progressToolbarCSSPref;
|
||||
return this.progressToolbarCSSPref = document.getElementById("status4evar-pref-progress-toolbar-css");
|
||||
},
|
||||
|
||||
get progressToolbarProgress()
|
||||
{
|
||||
delete this.progressToolbarProgress;
|
||||
return this.progressToolbarProgress = document.getElementById("status4evar-progress-bar");
|
||||
},
|
||||
get progressToolbarProgress()
|
||||
{
|
||||
delete this.progressToolbarProgress;
|
||||
return this.progressToolbarProgress = document.getElementById("status4evar-progress-bar");
|
||||
},
|
||||
|
||||
progressToolbarCSSChanged: function()
|
||||
{
|
||||
if(!this.progressToolbarCSSPref.value)
|
||||
{
|
||||
this.progressToolbarCSSPref.value = "#33FF33";
|
||||
}
|
||||
this.dynamicProgressStyle.cssRules[1].style.background = this.progressToolbarCSSPref.value;
|
||||
},
|
||||
progressToolbarCSSChanged: function()
|
||||
{
|
||||
if(!this.progressToolbarCSSPref.value)
|
||||
{
|
||||
this.progressToolbarCSSPref.value = "#33FF33";
|
||||
}
|
||||
this.dynamicProgressStyle.cssRules[1].style.background = this.progressToolbarCSSPref.value;
|
||||
},
|
||||
|
||||
progressToolbarStyleChanged: function()
|
||||
{
|
||||
this.progressToolbarCSSChanged();
|
||||
this.progressToolbarCSSPref.disabled = !this.progressToolbarStylePref.value;
|
||||
if(this.progressToolbarStylePref.value)
|
||||
{
|
||||
this.progressToolbarProgress.setAttribute("s4estyle", true);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.progressToolbarProgress.removeAttribute("s4estyle");
|
||||
}
|
||||
},
|
||||
progressToolbarStyleChanged: function()
|
||||
{
|
||||
this.progressToolbarCSSChanged();
|
||||
this.progressToolbarCSSPref.disabled = !this.progressToolbarStylePref.value;
|
||||
if(this.progressToolbarStylePref.value)
|
||||
{
|
||||
this.progressToolbarProgress.setAttribute("s4estyle", true);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.progressToolbarProgress.removeAttribute("s4estyle");
|
||||
}
|
||||
},
|
||||
|
||||
progressToolbarStyleSync: function()
|
||||
{
|
||||
this.progressToolbarStyleChanged();
|
||||
return undefined;
|
||||
},
|
||||
progressToolbarStyleSync: function()
|
||||
{
|
||||
this.progressToolbarStyleChanged();
|
||||
return undefined;
|
||||
},
|
||||
|
||||
//
|
||||
// Download progress management
|
||||
//
|
||||
get downloadProgressCheck()
|
||||
{
|
||||
delete this.downloadProgressCheck;
|
||||
return this.downloadProgressCheck = document.getElementById("status4evar-download-progress-check");
|
||||
},
|
||||
get downloadProgressCheck()
|
||||
{
|
||||
delete this.downloadProgressCheck;
|
||||
return this.downloadProgressCheck = document.getElementById("status4evar-download-progress-check");
|
||||
},
|
||||
|
||||
get downloadProgressPref()
|
||||
{
|
||||
delete this.downloadProgressPref;
|
||||
return this.downloadProgressPref = document.getElementById("status4evar-pref-download-progress");
|
||||
},
|
||||
get downloadProgressPref()
|
||||
{
|
||||
delete this.downloadProgressPref;
|
||||
return this.downloadProgressPref = document.getElementById("status4evar-pref-download-progress");
|
||||
},
|
||||
|
||||
get downloadProgressColorActivePref()
|
||||
{
|
||||
delete this.downloadProgressActiveColorPref;
|
||||
return this.downloadProgressActiveColorPref = document.getElementById("status4evar-pref-download-color-active");
|
||||
},
|
||||
get downloadProgressColorActivePref()
|
||||
{
|
||||
delete this.downloadProgressActiveColorPref;
|
||||
return this.downloadProgressActiveColorPref = document.getElementById("status4evar-pref-download-color-active");
|
||||
},
|
||||
|
||||
get downloadProgressColorPausedPref()
|
||||
{
|
||||
delete this.downloadProgressPausedColorPref;
|
||||
return this.downloadProgressPausedColorPref = document.getElementById("status4evar-pref-download-color-paused");
|
||||
},
|
||||
get downloadProgressColorPausedPref()
|
||||
{
|
||||
delete this.downloadProgressPausedColorPref;
|
||||
return this.downloadProgressPausedColorPref = document.getElementById("status4evar-pref-download-color-paused");
|
||||
},
|
||||
|
||||
downloadProgressSync: function()
|
||||
{
|
||||
let val = this.downloadProgressPref.value;
|
||||
this.downloadProgressColorActivePref.disabled = (val == 0);
|
||||
this.downloadProgressColorPausedPref.disabled = (val == 0);
|
||||
this.downloadProgressPref.disabled = (val == 0);
|
||||
this.downloadProgressCheck.checked = (val != 0);
|
||||
return ((val == 0) ? 1 : val);
|
||||
},
|
||||
downloadProgressSync: function()
|
||||
{
|
||||
let val = this.downloadProgressPref.value;
|
||||
this.downloadProgressColorActivePref.disabled = (val == 0);
|
||||
this.downloadProgressColorPausedPref.disabled = (val == 0);
|
||||
this.downloadProgressPref.disabled = (val == 0);
|
||||
this.downloadProgressCheck.checked = (val != 0);
|
||||
return ((val == 0) ? 1 : val);
|
||||
},
|
||||
|
||||
downloadProgressToggle: function()
|
||||
{
|
||||
let enabled = this.downloadProgressCheck.checked;
|
||||
this.downloadProgressPref.value = ((enabled) ? 1 : 0);
|
||||
},
|
||||
downloadProgressToggle: function()
|
||||
{
|
||||
let enabled = this.downloadProgressCheck.checked;
|
||||
this.downloadProgressPref.value = ((enabled) ? 1 : 0);
|
||||
},
|
||||
|
||||
//
|
||||
// Pref Window load
|
||||
//
|
||||
get downloadButtonActionCommandPref()
|
||||
{
|
||||
delete this.downloadButtonActionCommandPref;
|
||||
return this.downloadButtonActionCommandPref = document.getElementById("status4evar-pref-download-button-action-command");
|
||||
},
|
||||
get downloadButtonActionCommandPref()
|
||||
{
|
||||
delete this.downloadButtonActionCommandPref;
|
||||
return this.downloadButtonActionCommandPref = document.getElementById("status4evar-pref-download-button-action-command");
|
||||
},
|
||||
|
||||
get downloadButtonActionThirdPartyItem()
|
||||
{
|
||||
delete this.downloadButtonActionThirdPartyItem;
|
||||
return this.downloadButtonActionThirdPartyItem = document.getElementById("status4evar-download-button-action-menu-thirdparty");
|
||||
},
|
||||
get downloadButtonActionThirdPartyItem()
|
||||
{
|
||||
delete this.downloadButtonActionThirdPartyItem;
|
||||
return this.downloadButtonActionThirdPartyItem = document.getElementById("status4evar-download-button-action-menu-thirdparty");
|
||||
},
|
||||
|
||||
onPrefWindowLoad: function()
|
||||
{
|
||||
if(!this.downloadButtonActionCommandPref.value)
|
||||
{
|
||||
this.downloadButtonActionThirdPartyItem.disabled = true;
|
||||
}
|
||||
},
|
||||
onPrefWindowLoad: function()
|
||||
{
|
||||
if(!this.downloadButtonActionCommandPref.value)
|
||||
{
|
||||
this.downloadButtonActionThirdPartyItem.disabled = true;
|
||||
}
|
||||
},
|
||||
|
||||
onPrefWindowUnLoad: function()
|
||||
{
|
||||
}
|
||||
onPrefWindowUnLoad: function()
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
var XULBrowserWindow = {
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -5,8 +5,8 @@
|
|||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
|
||||
|
||||
<!DOCTYPE prefwindow [
|
||||
<!ENTITY % prefsDTD SYSTEM "chrome://browser/locale/statusbar/statusbar-prefs.dtd">
|
||||
%prefsDTD;
|
||||
<!ENTITY % prefsDTD SYSTEM "chrome://browser/locale/statusbar/statusbar-prefs.dtd">
|
||||
%prefsDTD;
|
||||
]>
|
||||
|
||||
<?xml-stylesheet href="chrome://global/skin/config.css" type="text/css" ?>
|
||||
|
|
@ -23,275 +23,275 @@
|
|||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
onload="status4evarPrefs.onPrefWindowLoad();" onunload="status4evarPrefs.onPrefWindowUnLoad();">
|
||||
|
||||
<stringbundleset id="stringbundleset">
|
||||
<stringbundle id="bundle_status4evar" src="chrome://browser/locale/statusbar/prefs.properties" />
|
||||
</stringbundleset>
|
||||
<script type="application/javascript" src="chrome://browser/content/statusbar/prefs.js" />
|
||||
<stringbundleset id="stringbundleset">
|
||||
<stringbundle id="bundle_status4evar" src="chrome://browser/locale/statusbar/prefs.properties" />
|
||||
</stringbundleset>
|
||||
<script type="application/javascript" src="chrome://browser/content/statusbar/prefs.js" />
|
||||
|
||||
<prefpane id="status4evar-pane-status" label="&status4evar.pane.status;">
|
||||
<preferences>
|
||||
<preference id="status4evar-pref-status" name="status4evar.status" type="int" />
|
||||
<preference id="status4evar-pref-status-default" name="status4evar.status.default" type="bool" />
|
||||
<preference id="status4evar-pref-status-network" name="status4evar.status.network" type="bool"
|
||||
onchange="status4evarPrefs.statusNetworkChanged();" />
|
||||
<preference id="status4evar-pref-status-network-xhr" name="status4evar.status.network.xhr" type="bool" />
|
||||
<preference id="status4evar-pref-status-timeout" name="status4evar.status.timeout" type="int"
|
||||
onchange="status4evarPrefs.statusTimeoutChanged();" />
|
||||
<preference id="status4evar-pref-status-linkOver" name="status4evar.status.linkOver" type="int" />
|
||||
<preference id="status4evar-pref-status-linkOver-delay-show" name="status4evar.status.linkOver.delay.show" type="int" />
|
||||
<preference id="status4evar-pref-status-linkOver-delay-hide" name="status4evar.status.linkOver.delay.hide" type="int" />
|
||||
<preference id="status4evar-pref-status-toolbar-maxLength" name="status4evar.status.toolbar.maxLength" type="int"
|
||||
onchange="status4evarPrefs.textLengthChanged();" />
|
||||
<preference id="status4evar-pref-status-popup-invertMirror" name="status4evar.status.popup.invertMirror" type="bool" />
|
||||
<preference id="status4evar-pref-status-popup-mouseMirror" name="status4evar.status.popup.mouseMirror" type="bool" />
|
||||
<preference id="toolkit-pref-dom-status-change" name="dom.disable_window_status_change" type="bool" inverted="true" />
|
||||
</preferences>
|
||||
<prefpane id="status4evar-pane-status" label="&status4evar.pane.status;">
|
||||
<preferences>
|
||||
<preference id="status4evar-pref-status" name="status4evar.status" type="int" />
|
||||
<preference id="status4evar-pref-status-default" name="status4evar.status.default" type="bool" />
|
||||
<preference id="status4evar-pref-status-network" name="status4evar.status.network" type="bool"
|
||||
onchange="status4evarPrefs.statusNetworkChanged();" />
|
||||
<preference id="status4evar-pref-status-network-xhr" name="status4evar.status.network.xhr" type="bool" />
|
||||
<preference id="status4evar-pref-status-timeout" name="status4evar.status.timeout" type="int"
|
||||
onchange="status4evarPrefs.statusTimeoutChanged();" />
|
||||
<preference id="status4evar-pref-status-linkOver" name="status4evar.status.linkOver" type="int" />
|
||||
<preference id="status4evar-pref-status-linkOver-delay-show" name="status4evar.status.linkOver.delay.show" type="int" />
|
||||
<preference id="status4evar-pref-status-linkOver-delay-hide" name="status4evar.status.linkOver.delay.hide" type="int" />
|
||||
<preference id="status4evar-pref-status-toolbar-maxLength" name="status4evar.status.toolbar.maxLength" type="int"
|
||||
onchange="status4evarPrefs.textLengthChanged();" />
|
||||
<preference id="status4evar-pref-status-popup-invertMirror" name="status4evar.status.popup.invertMirror" type="bool" />
|
||||
<preference id="status4evar-pref-status-popup-mouseMirror" name="status4evar.status.popup.mouseMirror" type="bool" />
|
||||
<preference id="toolkit-pref-dom-status-change" name="dom.disable_window_status_change" type="bool" inverted="true" />
|
||||
</preferences>
|
||||
|
||||
<commandset id="status4evar-commandset-status">
|
||||
<command id="status4evar-command-status-timeout" oncommand="status4evarPrefs.statusTimeoutToggle();" />
|
||||
<command id="status4evar-command-status-toolbar-maxLength" oncommand="status4evarPrefs.textLengthToggle();" />
|
||||
</commandset>
|
||||
<commandset id="status4evar-commandset-status">
|
||||
<command id="status4evar-command-status-timeout" oncommand="status4evarPrefs.statusTimeoutToggle();" />
|
||||
<command id="status4evar-command-status-toolbar-maxLength" oncommand="status4evarPrefs.textLengthToggle();" />
|
||||
</commandset>
|
||||
|
||||
<tabbox id="status4evar-tabbox-status" flex="1">
|
||||
<tabs id="status4evar-tabs-status">
|
||||
<tab id="status4evar-tab-status-general" label="&status4evar.tab.general;" />
|
||||
<tab id="status4evar-tab-status-toolbar" label="&status4evar.tab.toolbar;" />
|
||||
<tab id="status4evar-tab-status-popup" label="&status4evar.tab.popup;" />
|
||||
</tabs>
|
||||
<tabbox id="status4evar-tabbox-status" flex="1">
|
||||
<tabs id="status4evar-tabs-status">
|
||||
<tab id="status4evar-tab-status-general" label="&status4evar.tab.general;" />
|
||||
<tab id="status4evar-tab-status-toolbar" label="&status4evar.tab.toolbar;" />
|
||||
<tab id="status4evar-tab-status-popup" label="&status4evar.tab.popup;" />
|
||||
</tabs>
|
||||
|
||||
<tabpanels id="status4evar-tabpanels-status" flex="1">
|
||||
<tabpanel id="status4evar-tabpanel-status-general" orient="vertical">
|
||||
<groupbox id="status4evar-status-general-status">
|
||||
<caption label="&status4evar.status.general.status.caption;" />
|
||||
<tabpanels id="status4evar-tabpanels-status" flex="1">
|
||||
<tabpanel id="status4evar-tabpanel-status-general" orient="vertical">
|
||||
<groupbox id="status4evar-status-general-status">
|
||||
<caption label="&status4evar.status.general.status.caption;" />
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-status-label" control="status4evar-status-menu">&status4evar.status.label;</label>
|
||||
<menulist id="status4evar-status-menu" preference="status4evar-pref-status" sizetopopup="always">
|
||||
<menupopup>
|
||||
<menuitem label="&status4evar.option.none;" value="0" />
|
||||
<menuitem label="&status4evar.option.toolbar;" value="1" />
|
||||
<menuitem label="&status4evar.option.popup;" value="3" />
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
<hbox align="center">
|
||||
<label id="status4evar-status-label" control="status4evar-status-menu">&status4evar.status.label;</label>
|
||||
<menulist id="status4evar-status-menu" preference="status4evar-pref-status" sizetopopup="always">
|
||||
<menupopup>
|
||||
<menuitem label="&status4evar.option.none;" value="0" />
|
||||
<menuitem label="&status4evar.option.toolbar;" value="1" />
|
||||
<menuitem label="&status4evar.option.popup;" value="3" />
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<checkbox id="status4evar-status-timeout-check" label="&status4evar.status.timeout.label;"
|
||||
command="status4evar-command-status-timeout" />
|
||||
<textbox id="status4evar-status-timeout-value" preference="status4evar-pref-status-timeout" type="number" size="4"
|
||||
onsyncfrompreference="return status4evarPrefs.statusTimeoutSync();" />
|
||||
<label id="status4evar-status-timeout-unit">&status4evar.unit.seconds;</label>
|
||||
</hbox>
|
||||
<hbox align="center">
|
||||
<checkbox id="status4evar-status-timeout-check" label="&status4evar.status.timeout.label;"
|
||||
command="status4evar-command-status-timeout" />
|
||||
<textbox id="status4evar-status-timeout-value" preference="status4evar-pref-status-timeout" type="number" size="4"
|
||||
onsyncfrompreference="return status4evarPrefs.statusTimeoutSync();" />
|
||||
<label id="status4evar-status-timeout-unit">&status4evar.unit.seconds;</label>
|
||||
</hbox>
|
||||
|
||||
<checkbox id="status4evar-status-default-check" preference="status4evar-pref-status-default" label="&status4evar.status.default.label;" />
|
||||
<checkbox id="status4evar-status-default-check" preference="status4evar-pref-status-default" label="&status4evar.status.default.label;" />
|
||||
|
||||
<checkbox id="status4evar-status-network-check" preference="status4evar-pref-status-network" label="&status4evar.status.network.label;"
|
||||
onsyncfrompreference="return status4evarPrefs.statusNetworkSync();" />
|
||||
<checkbox id="status4evar-status-network-check" preference="status4evar-pref-status-network" label="&status4evar.status.network.label;"
|
||||
onsyncfrompreference="return status4evarPrefs.statusNetworkSync();" />
|
||||
|
||||
<hbox align="center" class="indent">
|
||||
<checkbox id="status4evar-status-network-xhr-check" preference="status4evar-pref-status-network-xhr" label="&status4evar.status.network.xhr.label;" />
|
||||
</hbox>
|
||||
<hbox align="center" class="indent">
|
||||
<checkbox id="status4evar-status-network-xhr-check" preference="status4evar-pref-status-network-xhr" label="&status4evar.status.network.xhr.label;" />
|
||||
</hbox>
|
||||
|
||||
<checkbox id="toolkit-dom-status-change-check" preference="toolkit-pref-dom-status-change" label="&toolkit.dom.status.change.label;" />
|
||||
</groupbox>
|
||||
<checkbox id="toolkit-dom-status-change-check" preference="toolkit-pref-dom-status-change" label="&toolkit.dom.status.change.label;" />
|
||||
</groupbox>
|
||||
|
||||
<groupbox id="status4evar-status-general-linkOver">
|
||||
<caption label="&status4evar.status.general.linkOver.caption;" />
|
||||
<groupbox id="status4evar-status-general-linkOver">
|
||||
<caption label="&status4evar.status.general.linkOver.caption;" />
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-status-linkOver-label" control="status4evar-status-linkOver-menu">&status4evar.status.linkOver.label;</label>
|
||||
<menulist id="status4evar-status-linkOver-menu" preference="status4evar-pref-status-linkOver" sizetopopup="always">
|
||||
<menupopup>
|
||||
<menuitem label="&status4evar.option.none;" value="0" />
|
||||
<menuitem label="&status4evar.option.toolbar;" value="1" />
|
||||
<menuitem label="&status4evar.option.popup;" value="3" />
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
<hbox align="center">
|
||||
<label id="status4evar-status-linkOver-label" control="status4evar-status-linkOver-menu">&status4evar.status.linkOver.label;</label>
|
||||
<menulist id="status4evar-status-linkOver-menu" preference="status4evar-pref-status-linkOver" sizetopopup="always">
|
||||
<menupopup>
|
||||
<menuitem label="&status4evar.option.none;" value="0" />
|
||||
<menuitem label="&status4evar.option.toolbar;" value="1" />
|
||||
<menuitem label="&status4evar.option.popup;" value="3" />
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-status-linkOver-delay-show-label" control="status4evar-status-linkOver-delay-show-value">&status4evar.status.linkOver.delay.show.label;</label>
|
||||
<textbox id="status4evar-status-linkOver-delay-show-value" preference="status4evar-pref-status-linkOver-delay-show" type="number" size="5" />
|
||||
<label id="status4evar-status-linkOver-delay-show-unit">&status4evar.unit.milliseconds;</label>
|
||||
</hbox>
|
||||
<hbox align="center">
|
||||
<label id="status4evar-status-linkOver-delay-show-label" control="status4evar-status-linkOver-delay-show-value">&status4evar.status.linkOver.delay.show.label;</label>
|
||||
<textbox id="status4evar-status-linkOver-delay-show-value" preference="status4evar-pref-status-linkOver-delay-show" type="number" size="5" />
|
||||
<label id="status4evar-status-linkOver-delay-show-unit">&status4evar.unit.milliseconds;</label>
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-status-linkOver-delay-hide-label" control="status4evar-status-linkOver-delay-hide-value">&status4evar.status.linkOver.delay.hide.label;</label>
|
||||
<textbox id="status4evar-status-linkOver-delay-hide-value" preference="status4evar-pref-status-linkOver-delay-hide" type="number" size="5" />
|
||||
<label id="status4evar-status-linkOver-delay-hide-unit">&status4evar.unit.milliseconds;</label>
|
||||
</hbox>
|
||||
</groupbox>
|
||||
<hbox align="center">
|
||||
<label id="status4evar-status-linkOver-delay-hide-label" control="status4evar-status-linkOver-delay-hide-value">&status4evar.status.linkOver.delay.hide.label;</label>
|
||||
<textbox id="status4evar-status-linkOver-delay-hide-value" preference="status4evar-pref-status-linkOver-delay-hide" type="number" size="5" />
|
||||
<label id="status4evar-status-linkOver-delay-hide-unit">&status4evar.unit.milliseconds;</label>
|
||||
</hbox>
|
||||
</groupbox>
|
||||
|
||||
</tabpanel>
|
||||
</tabpanel>
|
||||
|
||||
<tabpanel id="status4evar-tabpanel-status-toolbar" orient="vertical">
|
||||
<hbox align="center">
|
||||
<checkbox id="status4evar-status-toolbar-maxLength-check" label="&status4evar.status.toolbar.maxLength.label;"
|
||||
command="status4evar-command-status-toolbar-maxLength" />
|
||||
<textbox id="status4evar-status-toolbar-maxLength-value" preference="status4evar-pref-status-toolbar-maxLength" type="number" size="4"
|
||||
onsyncfrompreference="return status4evarPrefs.textLengthSync();" />
|
||||
<label id="status4evar-status-toolbar-maxLength-unit">&status4evar.unit.px;</label>
|
||||
</hbox>
|
||||
</tabpanel>
|
||||
<tabpanel id="status4evar-tabpanel-status-toolbar" orient="vertical">
|
||||
<hbox align="center">
|
||||
<checkbox id="status4evar-status-toolbar-maxLength-check" label="&status4evar.status.toolbar.maxLength.label;"
|
||||
command="status4evar-command-status-toolbar-maxLength" />
|
||||
<textbox id="status4evar-status-toolbar-maxLength-value" preference="status4evar-pref-status-toolbar-maxLength" type="number" size="4"
|
||||
onsyncfrompreference="return status4evarPrefs.textLengthSync();" />
|
||||
<label id="status4evar-status-toolbar-maxLength-unit">&status4evar.unit.px;</label>
|
||||
</hbox>
|
||||
</tabpanel>
|
||||
|
||||
<tabpanel id="status4evar-tabpanel-status-popup" orient="vertical">
|
||||
<checkbox id="status4evar-status-popup-invertMirror-check" preference="status4evar-pref-status-popup-invertMirror" label="&status4evar.status.popup.invertMirror.label;" />
|
||||
<tabpanel id="status4evar-tabpanel-status-popup" orient="vertical">
|
||||
<checkbox id="status4evar-status-popup-invertMirror-check" preference="status4evar-pref-status-popup-invertMirror" label="&status4evar.status.popup.invertMirror.label;" />
|
||||
|
||||
<checkbox id="status4evar-status-popup-mouseMirror-check" preference="status4evar-pref-status-popup-mouseMirror" label="&status4evar.status.popup.mouseMirror.label;" />
|
||||
</tabpanel>
|
||||
<checkbox id="status4evar-status-popup-mouseMirror-check" preference="status4evar-pref-status-popup-mouseMirror" label="&status4evar.status.popup.mouseMirror.label;" />
|
||||
</tabpanel>
|
||||
|
||||
</tabpanels>
|
||||
</tabbox>
|
||||
</prefpane>
|
||||
</tabpanels>
|
||||
</tabbox>
|
||||
</prefpane>
|
||||
|
||||
<prefpane id="status4evar-pane-progress" label="&status4evar.pane.progress;">
|
||||
<preferences>
|
||||
<preference id="status4evar-pref-progress-toolbar-force" name="status4evar.progress.toolbar.force" type="bool" />
|
||||
<preference id="status4evar-pref-progress-toolbar-style" name="status4evar.progress.toolbar.style" type="bool"
|
||||
onchange="status4evarPrefs.progressToolbarStyleChanged();" />
|
||||
<preference id="status4evar-pref-progress-toolbar-css" name="status4evar.progress.toolbar.css" type="string"
|
||||
onchange="status4evarPrefs.progressToolbarCSSChanged();" />
|
||||
</preferences>
|
||||
<prefpane id="status4evar-pane-progress" label="&status4evar.pane.progress;">
|
||||
<preferences>
|
||||
<preference id="status4evar-pref-progress-toolbar-force" name="status4evar.progress.toolbar.force" type="bool" />
|
||||
<preference id="status4evar-pref-progress-toolbar-style" name="status4evar.progress.toolbar.style" type="bool"
|
||||
onchange="status4evarPrefs.progressToolbarStyleChanged();" />
|
||||
<preference id="status4evar-pref-progress-toolbar-css" name="status4evar.progress.toolbar.css" type="string"
|
||||
onchange="status4evarPrefs.progressToolbarCSSChanged();" />
|
||||
</preferences>
|
||||
|
||||
<commandset id="status4evar-commandset-status">
|
||||
</commandset>
|
||||
<commandset id="status4evar-commandset-status">
|
||||
</commandset>
|
||||
|
||||
<checkbox id="status4evar-progress-toolbar-force-check" preference="status4evar-pref-progress-toolbar-force" label="&status4evar.progress.toolbar.force.label;" />
|
||||
<checkbox id="status4evar-progress-toolbar-force-check" preference="status4evar-pref-progress-toolbar-force" label="&status4evar.progress.toolbar.force.label;" />
|
||||
|
||||
<checkbox id="status4evar-progress-toolbar-style-check" preference="status4evar-pref-progress-toolbar-style" label="&status4evar.progress.style.label;"
|
||||
onsyncfrompreference="return status4evarPrefs.progressToolbarStyleSync();" />
|
||||
<checkbox id="status4evar-progress-toolbar-style-check" preference="status4evar-pref-progress-toolbar-style" label="&status4evar.progress.style.label;"
|
||||
onsyncfrompreference="return status4evarPrefs.progressToolbarStyleSync();" />
|
||||
|
||||
<vbox class="css-bg-editor" preference="status4evar-pref-progress-toolbar-css" preference-editable="true" flex="1">
|
||||
<progressmeter id="status4evar-progress-bar" value="75" flex="1" />
|
||||
</vbox>
|
||||
</prefpane>
|
||||
<vbox class="css-bg-editor" preference="status4evar-pref-progress-toolbar-css" preference-editable="true" flex="1">
|
||||
<progressmeter id="status4evar-progress-bar" value="75" flex="1" />
|
||||
</vbox>
|
||||
</prefpane>
|
||||
|
||||
<prefpane id="status4evar-pane-download" label="&status4evar.pane.download;">
|
||||
<preferences>
|
||||
<preference id="status4evar-pref-download-button-action" name="status4evar.download.button.action" type="int" />
|
||||
<preference id="status4evar-pref-download-color-active" name="status4evar.download.color.active" type="string" />
|
||||
<preference id="status4evar-pref-download-color-paused" name="status4evar.download.color.paused" type="string" />
|
||||
<preference id="status4evar-pref-download-force" name="status4evar.download.force" type="bool" />
|
||||
<preference id="status4evar-pref-download-label" name="status4evar.download.label" type="int" />
|
||||
<preference id="status4evar-pref-download-label-force" name="status4evar.download.label.force" type="bool" />
|
||||
<preference id="status4evar-pref-download-notify-animate" name="status4evar.download.notify.animate" type="bool" />
|
||||
<preference id="status4evar-pref-download-notify-timeout" name="status4evar.download.notify.timeout" type="int" />
|
||||
<preference id="status4evar-pref-download-progress" name="status4evar.download.progress" type="int" />
|
||||
<preference id="status4evar-pref-download-tooltip" name="status4evar.download.tooltip" type="int" />
|
||||
<prefpane id="status4evar-pane-download" label="&status4evar.pane.download;">
|
||||
<preferences>
|
||||
<preference id="status4evar-pref-download-button-action" name="status4evar.download.button.action" type="int" />
|
||||
<preference id="status4evar-pref-download-color-active" name="status4evar.download.color.active" type="string" />
|
||||
<preference id="status4evar-pref-download-color-paused" name="status4evar.download.color.paused" type="string" />
|
||||
<preference id="status4evar-pref-download-force" name="status4evar.download.force" type="bool" />
|
||||
<preference id="status4evar-pref-download-label" name="status4evar.download.label" type="int" />
|
||||
<preference id="status4evar-pref-download-label-force" name="status4evar.download.label.force" type="bool" />
|
||||
<preference id="status4evar-pref-download-notify-animate" name="status4evar.download.notify.animate" type="bool" />
|
||||
<preference id="status4evar-pref-download-notify-timeout" name="status4evar.download.notify.timeout" type="int" />
|
||||
<preference id="status4evar-pref-download-progress" name="status4evar.download.progress" type="int" />
|
||||
<preference id="status4evar-pref-download-tooltip" name="status4evar.download.tooltip" type="int" />
|
||||
|
||||
<preference id="status4evar-pref-download-button-action-command" name="status4evar.download.button.action.command" type="string"/>
|
||||
</preferences>
|
||||
<preference id="status4evar-pref-download-button-action-command" name="status4evar.download.button.action.command" type="string"/>
|
||||
</preferences>
|
||||
|
||||
<commandset id="status4evar-commandset-download">
|
||||
<command id="status4evar-command-download-progress" oncommand="status4evarPrefs.downloadProgressToggle();" />
|
||||
</commandset>
|
||||
<commandset id="status4evar-commandset-download">
|
||||
<command id="status4evar-command-download-progress" oncommand="status4evarPrefs.downloadProgressToggle();" />
|
||||
</commandset>
|
||||
|
||||
<checkbox id="status4evar-download-force-check" preference="status4evar-pref-download-force" label="&status4evar.download.force.label;" />
|
||||
<checkbox id="status4evar-download-force-check" preference="status4evar-pref-download-force" label="&status4evar.download.force.label;" />
|
||||
|
||||
<checkbox id="status4evar-download-label-force-check" preference="status4evar-pref-download-label-force" label="&status4evar.download.label.force.label;" />
|
||||
<checkbox id="status4evar-download-label-force-check" preference="status4evar-pref-download-label-force" label="&status4evar.download.label.force.label;" />
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-label-label" control="status4evar-download-label-menu">&status4evar.download.label.label;</label>
|
||||
<menulist id="status4evar-download-label-menu" preference="status4evar-pref-download-label" sizetopopup="always">
|
||||
<menupopup>
|
||||
<menuitem value="0" label="&status4evar.option.dlcount;" />
|
||||
<menuitem value="1" label="&status4evar.option.dltime;" />
|
||||
<menuitem value="2" label="&status4evar.option.both;" />
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-label-label" control="status4evar-download-label-menu">&status4evar.download.label.label;</label>
|
||||
<menulist id="status4evar-download-label-menu" preference="status4evar-pref-download-label" sizetopopup="always">
|
||||
<menupopup>
|
||||
<menuitem value="0" label="&status4evar.option.dlcount;" />
|
||||
<menuitem value="1" label="&status4evar.option.dltime;" />
|
||||
<menuitem value="2" label="&status4evar.option.both;" />
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-tooltip-label" control="status4evar-download-tooltip-menu">&status4evar.download.tooltip.label;</label>
|
||||
<menulist id="status4evar-download-tooltip-menu" preference="status4evar-pref-download-tooltip" sizetopopup="always">
|
||||
<menupopup>
|
||||
<menuitem value="0" label="&status4evar.option.dlcount;" />
|
||||
<menuitem value="1" label="&status4evar.option.dltime;" />
|
||||
<menuitem value="2" label="&status4evar.option.both;" />
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-tooltip-label" control="status4evar-download-tooltip-menu">&status4evar.download.tooltip.label;</label>
|
||||
<menulist id="status4evar-download-tooltip-menu" preference="status4evar-pref-download-tooltip" sizetopopup="always">
|
||||
<menupopup>
|
||||
<menuitem value="0" label="&status4evar.option.dlcount;" />
|
||||
<menuitem value="1" label="&status4evar.option.dltime;" />
|
||||
<menuitem value="2" label="&status4evar.option.both;" />
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-button-action-label" control="status4evar-download-button-action-menu">&status4evar.download.button.action.label;</label>
|
||||
<menulist id="status4evar-download-button-action-menu" preference="status4evar-pref-download-button-action" sizetopopup="always">
|
||||
<menupopup>
|
||||
<menuitem value="0" label="&status4evar.option.nothing;" />
|
||||
<menuitem value="1" label="&status4evar.option.firefoxdefault;" />
|
||||
<menuitem value="2" label="&status4evar.option.download.library;" />
|
||||
<menuitem value="3" label="&status4evar.option.download.tab;" />
|
||||
<menuitem value="4" label="&status4evar.option.download.thirdparty;" id="status4evar-download-button-action-menu-thirdparty" />
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-button-action-label" control="status4evar-download-button-action-menu">&status4evar.download.button.action.label;</label>
|
||||
<menulist id="status4evar-download-button-action-menu" preference="status4evar-pref-download-button-action" sizetopopup="always">
|
||||
<menupopup>
|
||||
<menuitem value="0" label="&status4evar.option.nothing;" />
|
||||
<menuitem value="1" label="&status4evar.option.firefoxdefault;" />
|
||||
<menuitem value="2" label="&status4evar.option.download.library;" />
|
||||
<menuitem value="3" label="&status4evar.option.download.tab;" />
|
||||
<menuitem value="4" label="&status4evar.option.download.thirdparty;" id="status4evar-download-button-action-menu-thirdparty" />
|
||||
</menupopup>
|
||||
</menulist>
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-notify-timeout-label" control="status4evar-download-notify-timeout-value">&status4evar.download.notify.timeout.label;</label>
|
||||
<textbox id="status4evar-download-notify-timeout-value" preference="status4evar-pref-download-notify-timeout" type="number" size="3" />
|
||||
<label id="status4evar-download-notify-timeout-unit">&status4evar.unit.seconds;</label>
|
||||
</hbox>
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-notify-timeout-label" control="status4evar-download-notify-timeout-value">&status4evar.download.notify.timeout.label;</label>
|
||||
<textbox id="status4evar-download-notify-timeout-value" preference="status4evar-pref-download-notify-timeout" type="number" size="3" />
|
||||
<label id="status4evar-download-notify-timeout-unit">&status4evar.unit.seconds;</label>
|
||||
</hbox>
|
||||
|
||||
<checkbox id="status4evar-download-notify-animate-check" preference="status4evar-pref-download-notify-animate" label="&status4evar.download.notify.animate.label;" />
|
||||
<checkbox id="status4evar-download-notify-animate-check" preference="status4evar-pref-download-notify-animate" label="&status4evar.download.notify.animate.label;" />
|
||||
|
||||
<checkbox id="status4evar-download-progress-check" command="status4evar-command-download-progress" label="&status4evar.download.progress.label;" />
|
||||
<checkbox id="status4evar-download-progress-check" command="status4evar-command-download-progress" label="&status4evar.download.progress.label;" />
|
||||
|
||||
<vbox class="indent">
|
||||
<hbox align="center">
|
||||
<radiogroup id="status4evar-download-progress-radiogroup" preference="status4evar-pref-download-progress"
|
||||
onsyncfrompreference="return status4evarPrefs.downloadProgressSync();">
|
||||
<radio value="1" label="&status4evar.download.progress.average.label;" />
|
||||
<radio value="2" label="&status4evar.download.progress.max.label;" />
|
||||
<radio value="3" label="&status4evar.download.progress.min.label;" />
|
||||
</radiogroup>
|
||||
</hbox>
|
||||
<vbox class="indent">
|
||||
<hbox align="center">
|
||||
<radiogroup id="status4evar-download-progress-radiogroup" preference="status4evar-pref-download-progress"
|
||||
onsyncfrompreference="return status4evarPrefs.downloadProgressSync();">
|
||||
<radio value="1" label="&status4evar.download.progress.average.label;" />
|
||||
<radio value="2" label="&status4evar.download.progress.max.label;" />
|
||||
<radio value="3" label="&status4evar.download.progress.min.label;" />
|
||||
</radiogroup>
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-color-active-label" control="status4evar-download-color-active-picker">&status4evar.download.color.active.label;</label>
|
||||
<colorpicker id="status4evar-download-color-active-picker" preference="status4evar-pref-download-color-active" type="button" />
|
||||
</hbox>
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-color-active-label" control="status4evar-download-color-active-picker">&status4evar.download.color.active.label;</label>
|
||||
<colorpicker id="status4evar-download-color-active-picker" preference="status4evar-pref-download-color-active" type="button" />
|
||||
</hbox>
|
||||
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-color-paused-label" control="status4evar-download-color-paused-picker">&status4evar.download.color.paused.label;</label>
|
||||
<colorpicker id="status4evar-download-color-paused-picker" preference="status4evar-pref-download-color-paused" type="button" />
|
||||
</hbox>
|
||||
</vbox>
|
||||
</prefpane>
|
||||
<hbox align="center">
|
||||
<label id="status4evar-download-color-paused-label" control="status4evar-download-color-paused-picker">&status4evar.download.color.paused.label;</label>
|
||||
<colorpicker id="status4evar-download-color-paused-picker" preference="status4evar-pref-download-color-paused" type="button" />
|
||||
</hbox>
|
||||
</vbox>
|
||||
</prefpane>
|
||||
|
||||
<prefpane id="status4evar-pane-addonbar" label="&status4evar.pane.statusbar;">
|
||||
<preferences>
|
||||
<preference id="status4evar-pref-addonbar-borderStyle" name="status4evar.addonbar.borderStyle" type="bool" />
|
||||
<preference id="status4evar-pref-addonbar-closeButton" name="status4evar.addonbar.closeButton" type="bool" />
|
||||
<preference id="status4evar-pref-addonbar-windowGripper" name="status4evar.addonbar.windowGripper" type="bool" />
|
||||
</preferences>
|
||||
<prefpane id="status4evar-pane-addonbar" label="&status4evar.pane.statusbar;">
|
||||
<preferences>
|
||||
<preference id="status4evar-pref-addonbar-borderStyle" name="status4evar.addonbar.borderStyle" type="bool" />
|
||||
<preference id="status4evar-pref-addonbar-closeButton" name="status4evar.addonbar.closeButton" type="bool" />
|
||||
<preference id="status4evar-pref-addonbar-windowGripper" name="status4evar.addonbar.windowGripper" type="bool" />
|
||||
</preferences>
|
||||
|
||||
<checkbox id="status4evar-addonbar-borderStyle-check" preference="status4evar-pref-addonbar-borderStyle" label="&status4evar.addonbar.borderStyle;" />
|
||||
<checkbox id="status4evar-addonbar-borderStyle-check" preference="status4evar-pref-addonbar-borderStyle" label="&status4evar.addonbar.borderStyle;" />
|
||||
|
||||
<checkbox id="status4evar-addonbar-closeButton-check" preference="status4evar-pref-addonbar-closeButton" label="&status4evar.addonbar.closeButton;" />
|
||||
<checkbox id="status4evar-addonbar-closeButton-check" preference="status4evar-pref-addonbar-closeButton" label="&status4evar.addonbar.closeButton;" />
|
||||
|
||||
<checkbox id="status4evar-addonbar-windowGripper-check" preference="status4evar-pref-addonbar-windowGripper" label="&status4evar.addonbar.windowGripper;" />
|
||||
</prefpane>
|
||||
<checkbox id="status4evar-addonbar-windowGripper-check" preference="status4evar-pref-addonbar-windowGripper" label="&status4evar.addonbar.windowGripper;" />
|
||||
</prefpane>
|
||||
|
||||
<prefpane id="status4evar-pane-advanced" label="&status4evar.pane.advanced;">
|
||||
<preferences>
|
||||
<preference id="status4evar-pref-advanced-status-detectFullScreen" name="status4evar.advanced.status.detectFullScreen" type="bool" />
|
||||
<preference id="status4evar-pref-advanced-status-detectVideo" name="status4evar.advanced.status.detectVideo" type="bool" />
|
||||
<preference id="browser-pref-urlbar-trimming-enabled" name="browser.urlbar.trimURLs" type="bool" />
|
||||
</preferences>
|
||||
<prefpane id="status4evar-pane-advanced" label="&status4evar.pane.advanced;">
|
||||
<preferences>
|
||||
<preference id="status4evar-pref-advanced-status-detectFullScreen" name="status4evar.advanced.status.detectFullScreen" type="bool" />
|
||||
<preference id="status4evar-pref-advanced-status-detectVideo" name="status4evar.advanced.status.detectVideo" type="bool" />
|
||||
<preference id="browser-pref-urlbar-trimming-enabled" name="browser.urlbar.trimURLs" type="bool" />
|
||||
</preferences>
|
||||
|
||||
<vbox flex="1">
|
||||
<groupbox id="status4evar-status-urlbar-builtin">
|
||||
<caption label="&status4evar.status.urlbar.firefox.builtin.caption;" />
|
||||
<vbox flex="1">
|
||||
<groupbox id="status4evar-status-urlbar-builtin">
|
||||
<caption label="&status4evar.status.urlbar.firefox.builtin.caption;" />
|
||||
|
||||
<checkbox id="browser-urlbar-trimming-enabled-ckeck" preference="browser-pref-urlbar-trimming-enabled" label="&browser.urlbar.trimming.enabled.label;" />
|
||||
</groupbox>
|
||||
<checkbox id="browser-urlbar-trimming-enabled-ckeck" preference="browser-pref-urlbar-trimming-enabled" label="&browser.urlbar.trimming.enabled.label;" />
|
||||
</groupbox>
|
||||
|
||||
<groupbox id="status4evar-advanced-status">
|
||||
<caption label="&status4evar.pane.status;" />
|
||||
<groupbox id="status4evar-advanced-status">
|
||||
<caption label="&status4evar.pane.status;" />
|
||||
|
||||
<checkbox id="status4evar-advanced-status-detectFullScreen-check" preference="status4evar-pref-advanced-status-detectFullScreen" label="&status4evar.advanced.status.detectFullScreen;" />
|
||||
<checkbox id="status4evar-advanced-status-detectVideo-check" preference="status4evar-pref-advanced-status-detectVideo" label="&status4evar.advanced.status.detectVideo;" />
|
||||
</groupbox>
|
||||
</vbox>
|
||||
</prefpane>
|
||||
<checkbox id="status4evar-advanced-status-detectFullScreen-check" preference="status4evar-pref-advanced-status-detectFullScreen" label="&status4evar.advanced.status.detectFullScreen;" />
|
||||
<checkbox id="status4evar-advanced-status-detectVideo-check" preference="status4evar-pref-advanced-status-detectVideo" label="&status4evar.advanced.status.detectVideo;" />
|
||||
</groupbox>
|
||||
</vbox>
|
||||
</prefpane>
|
||||
</prefwindow>
|
||||
|
||||
|
|
|
|||
|
|
@ -9,210 +9,210 @@
|
|||
xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
xmlns:xbl="http://www.mozilla.org/xbl">
|
||||
|
||||
<binding id="statuspanel" display="xul:hbox" extends="chrome://browser/content/tabbrowser.xml#statuspanel">
|
||||
<implementation>
|
||||
<!-- -->
|
||||
<!-- Inverted mirror handling -->
|
||||
<!-- -->
|
||||
<binding id="statuspanel" display="xul:hbox" extends="chrome://browser/content/tabbrowser.xml#statuspanel">
|
||||
<implementation>
|
||||
<!-- -->
|
||||
<!-- Inverted mirror handling -->
|
||||
<!-- -->
|
||||
|
||||
<field name="_invertMirror"><![CDATA[
|
||||
false
|
||||
]]></field>
|
||||
<field name="_invertMirror"><![CDATA[
|
||||
false
|
||||
]]></field>
|
||||
|
||||
<property name="invertMirror">
|
||||
<setter><![CDATA[
|
||||
this._invertMirror = val;
|
||||
this.mirror = this._isMirrored;
|
||||
return val;
|
||||
]]></setter>
|
||||
<getter><![CDATA[
|
||||
return this._invertMirror;
|
||||
]]></getter>
|
||||
</property>
|
||||
<property name="invertMirror">
|
||||
<setter><![CDATA[
|
||||
this._invertMirror = val;
|
||||
this.mirror = this._isMirrored;
|
||||
return val;
|
||||
]]></setter>
|
||||
<getter><![CDATA[
|
||||
return this._invertMirror;
|
||||
]]></getter>
|
||||
</property>
|
||||
|
||||
<!-- -->
|
||||
<!-- Mouse mirror handling -->
|
||||
<!-- -->
|
||||
<!-- -->
|
||||
<!-- Mouse mirror handling -->
|
||||
<!-- -->
|
||||
|
||||
<field name="_mouseMirror"><![CDATA[
|
||||
true
|
||||
]]></field>
|
||||
<field name="_mouseMirror"><![CDATA[
|
||||
true
|
||||
]]></field>
|
||||
|
||||
<field name="_mouseMirrorListen"><![CDATA[
|
||||
false
|
||||
]]></field>
|
||||
<field name="_mouseMirrorListen"><![CDATA[
|
||||
false
|
||||
]]></field>
|
||||
|
||||
<property name="mouseMirror">
|
||||
<setter><![CDATA[
|
||||
this._mouseMirror = val;
|
||||
this.setupMouseMirror(this.value);
|
||||
return val;
|
||||
]]></setter>
|
||||
<getter><![CDATA[
|
||||
return this._mouseMirror;
|
||||
]]></getter>
|
||||
</property>
|
||||
<property name="mouseMirror">
|
||||
<setter><![CDATA[
|
||||
this._mouseMirror = val;
|
||||
this.setupMouseMirror(this.value);
|
||||
return val;
|
||||
]]></setter>
|
||||
<getter><![CDATA[
|
||||
return this._mouseMirror;
|
||||
]]></getter>
|
||||
</property>
|
||||
|
||||
<method name="setupMouseMirror">
|
||||
<parameter name="val"/>
|
||||
<body><![CDATA[
|
||||
if(val && this._mouseMirror)
|
||||
{
|
||||
this._calcMouseTargetRect();
|
||||
if(!this._mouseMirrorListen)
|
||||
{
|
||||
MousePosTracker.addListener(this);
|
||||
this._mouseMirrorListen = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
this.mirror = false;
|
||||
if(this._mouseMirrorListen)
|
||||
{
|
||||
MousePosTracker.removeListener(this);
|
||||
this._mouseMirrorListen = false;
|
||||
}
|
||||
}
|
||||
]]></body>
|
||||
</method>
|
||||
<method name="setupMouseMirror">
|
||||
<parameter name="val"/>
|
||||
<body><![CDATA[
|
||||
if(val && this._mouseMirror)
|
||||
{
|
||||
this._calcMouseTargetRect();
|
||||
if(!this._mouseMirrorListen)
|
||||
{
|
||||
MousePosTracker.addListener(this);
|
||||
this._mouseMirrorListen = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
this.mirror = false;
|
||||
if(this._mouseMirrorListen)
|
||||
{
|
||||
MousePosTracker.removeListener(this);
|
||||
this._mouseMirrorListen = false;
|
||||
}
|
||||
}
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="_calcMouseTargetRect">
|
||||
<body><![CDATA[
|
||||
let alignRight = false;
|
||||
let isRTL = (getComputedStyle(document.documentElement).direction == "rtl");
|
||||
if((this._invertMirror && !isRTL) || (!this._invertMirror && isRTL))
|
||||
{
|
||||
alignRight = true;
|
||||
}
|
||||
<method name="_calcMouseTargetRect">
|
||||
<body><![CDATA[
|
||||
let alignRight = false;
|
||||
let isRTL = (getComputedStyle(document.documentElement).direction == "rtl");
|
||||
if((this._invertMirror && !isRTL) || (!this._invertMirror && isRTL))
|
||||
{
|
||||
alignRight = true;
|
||||
}
|
||||
|
||||
let rect = this.getBoundingClientRect();
|
||||
this._mouseTargetRect =
|
||||
{
|
||||
top: rect.top,
|
||||
bottom: rect.bottom,
|
||||
left: ((alignRight) ? window.innerWidth - rect.width : 0),
|
||||
right: ((alignRight) ? window.innerWidth : rect.width)
|
||||
};
|
||||
]]></body>
|
||||
</method>
|
||||
let rect = this.getBoundingClientRect();
|
||||
this._mouseTargetRect =
|
||||
{
|
||||
top: rect.top,
|
||||
bottom: rect.bottom,
|
||||
left: ((alignRight) ? window.innerWidth - rect.width : 0),
|
||||
right: ((alignRight) ? window.innerWidth : rect.width)
|
||||
};
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="onMouseEnter">
|
||||
<body><![CDATA[
|
||||
this.mirror = true;
|
||||
]]></body>
|
||||
</method>
|
||||
<method name="onMouseEnter">
|
||||
<body><![CDATA[
|
||||
this.mirror = true;
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<method name="onMouseLeave">
|
||||
<body><![CDATA[
|
||||
this.mirror = false;
|
||||
]]></body>
|
||||
</method>
|
||||
<method name="onMouseLeave">
|
||||
<body><![CDATA[
|
||||
this.mirror = false;
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<!-- -->
|
||||
<!-- Mirror handling -->
|
||||
<!-- -->
|
||||
<!-- -->
|
||||
<!-- Mirror handling -->
|
||||
<!-- -->
|
||||
|
||||
<field name="_isMirrored"><![CDATA[
|
||||
false
|
||||
]]></field>
|
||||
<field name="_isMirrored"><![CDATA[
|
||||
false
|
||||
]]></field>
|
||||
|
||||
<property name="mirror">
|
||||
<setter><![CDATA[
|
||||
this._isMirrored = val;
|
||||
if(this._invertMirror)
|
||||
{
|
||||
val = !val;
|
||||
}
|
||||
<property name="mirror">
|
||||
<setter><![CDATA[
|
||||
this._isMirrored = val;
|
||||
if(this._invertMirror)
|
||||
{
|
||||
val = !val;
|
||||
}
|
||||
|
||||
this.setBooleanAttr("mirror", val);
|
||||
]]></setter>
|
||||
<getter><![CDATA[
|
||||
return this._isMirrored;
|
||||
]]></getter>
|
||||
</property>
|
||||
this.setBooleanAttr("mirror", val);
|
||||
]]></setter>
|
||||
<getter><![CDATA[
|
||||
return this._isMirrored;
|
||||
]]></getter>
|
||||
</property>
|
||||
|
||||
<method name="_mirror">
|
||||
<body><![CDATA[
|
||||
this.mirror = !this._isMirrored;
|
||||
]]></body>
|
||||
</method>
|
||||
<method name="_mirror">
|
||||
<body><![CDATA[
|
||||
this.mirror = !this._isMirrored;
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<!-- -->
|
||||
<!-- Value handling -->
|
||||
<!-- -->
|
||||
<!-- -->
|
||||
<!-- Value handling -->
|
||||
<!-- -->
|
||||
|
||||
<property name="label">
|
||||
<setter><![CDATA[
|
||||
if(window.caligon && window.caligon.status4evar)
|
||||
{
|
||||
window.caligon.status4evar.statusService.setStatusText(val);
|
||||
}
|
||||
return undefined;
|
||||
]]></setter>
|
||||
<getter><![CDATA[
|
||||
if(window.caligon && window.caligon.status4evar)
|
||||
{
|
||||
return window.caligon.status4evar.statusService.getStatusText();
|
||||
}
|
||||
return "";
|
||||
]]></getter>
|
||||
</property>
|
||||
<property name="label">
|
||||
<setter><![CDATA[
|
||||
if(window.caligon && window.caligon.status4evar)
|
||||
{
|
||||
window.caligon.status4evar.statusService.setStatusText(val);
|
||||
}
|
||||
return undefined;
|
||||
]]></setter>
|
||||
<getter><![CDATA[
|
||||
if(window.caligon && window.caligon.status4evar)
|
||||
{
|
||||
return window.caligon.status4evar.statusService.getStatusText();
|
||||
}
|
||||
return "";
|
||||
]]></getter>
|
||||
</property>
|
||||
|
||||
<property name="value">
|
||||
<setter><![CDATA[
|
||||
this.setValue(val);
|
||||
this.setupMouseMirror(val);
|
||||
return val;
|
||||
]]></setter>
|
||||
<getter><![CDATA[
|
||||
return ((this.hasAttribute("inactive")) ? "" : this.getAttribute("label"));
|
||||
]]></getter>
|
||||
</property>
|
||||
<property name="value">
|
||||
<setter><![CDATA[
|
||||
this.setValue(val);
|
||||
this.setupMouseMirror(val);
|
||||
return val;
|
||||
]]></setter>
|
||||
<getter><![CDATA[
|
||||
return ((this.hasAttribute("inactive")) ? "" : this.getAttribute("label"));
|
||||
]]></getter>
|
||||
</property>
|
||||
|
||||
<method name="setValue">
|
||||
<parameter name="val"/>
|
||||
<body><![CDATA[
|
||||
if((this.getAttribute("type") || "").indexOf("network") > -1 && (this.getAttribute("previoustype") || "").indexOf("network") > -1)
|
||||
{
|
||||
this.style.minWidth = getComputedStyle(this).width;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.style.minWidth = "";
|
||||
}
|
||||
<method name="setValue">
|
||||
<parameter name="val"/>
|
||||
<body><![CDATA[
|
||||
if((this.getAttribute("type") || "").indexOf("network") > -1 && (this.getAttribute("previoustype") || "").indexOf("network") > -1)
|
||||
{
|
||||
this.style.minWidth = getComputedStyle(this).width;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.style.minWidth = "";
|
||||
}
|
||||
|
||||
if(val)
|
||||
{
|
||||
this.setAttribute("label", val);
|
||||
this.setBooleanAttr("inactive", false);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.setBooleanAttr("inactive", true);
|
||||
}
|
||||
]]></body>
|
||||
</method>
|
||||
if(val)
|
||||
{
|
||||
this.setAttribute("label", val);
|
||||
this.setBooleanAttr("inactive", false);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.setBooleanAttr("inactive", true);
|
||||
}
|
||||
]]></body>
|
||||
</method>
|
||||
|
||||
<!-- -->
|
||||
<!-- Helpers -->
|
||||
<!-- -->
|
||||
<!-- -->
|
||||
<!-- Helpers -->
|
||||
<!-- -->
|
||||
|
||||
<method name="setBooleanAttr">
|
||||
<parameter name="name"/>
|
||||
<parameter name="val"/>
|
||||
<body><![CDATA[
|
||||
if(val)
|
||||
{
|
||||
this.setAttribute(name, "true");
|
||||
}
|
||||
else
|
||||
{
|
||||
this.removeAttribute(name);
|
||||
}
|
||||
]]></body>
|
||||
</method>
|
||||
</implementation>
|
||||
</binding>
|
||||
<method name="setBooleanAttr">
|
||||
<parameter name="name"/>
|
||||
<parameter name="val"/>
|
||||
<body><![CDATA[
|
||||
if(val)
|
||||
{
|
||||
this.setAttribute(name, "true");
|
||||
}
|
||||
else
|
||||
{
|
||||
this.removeAttribute(name);
|
||||
}
|
||||
]]></body>
|
||||
</method>
|
||||
</implementation>
|
||||
</binding>
|
||||
</bindings>
|
||||
|
||||
|
|
|
|||
|
|
@ -9,49 +9,49 @@ interface nsIDOMWindow;
|
|||
[scriptable, uuid(33d0433d-07be-4dc4-87fd-954057310efd)]
|
||||
interface nsIStatus4Evar : nsISupports
|
||||
{
|
||||
readonly attribute boolean addonbarBorderStyle;
|
||||
readonly attribute boolean addonbarCloseButton;
|
||||
readonly attribute boolean addonbarLegacyShim;
|
||||
readonly attribute boolean addonbarWindowGripper;
|
||||
readonly attribute boolean addonbarBorderStyle;
|
||||
readonly attribute boolean addonbarCloseButton;
|
||||
readonly attribute boolean addonbarLegacyShim;
|
||||
readonly attribute boolean addonbarWindowGripper;
|
||||
|
||||
readonly attribute boolean advancedStatusDetectFullScreen;
|
||||
readonly attribute boolean advancedStatusDetectVideo;
|
||||
readonly attribute boolean advancedStatusDetectFullScreen;
|
||||
readonly attribute boolean advancedStatusDetectVideo;
|
||||
|
||||
readonly attribute long downloadButtonAction;
|
||||
readonly attribute ACString downloadButtonActionCommand;
|
||||
readonly attribute ACString downloadColorActive;
|
||||
readonly attribute ACString downloadColorPaused;
|
||||
readonly attribute boolean downloadForce;
|
||||
readonly attribute long downloadLabel;
|
||||
readonly attribute boolean downloadLabelForce;
|
||||
readonly attribute boolean downloadNotifyAnimate;
|
||||
readonly attribute long downloadNotifyTimeout;
|
||||
readonly attribute long downloadProgress;
|
||||
readonly attribute long downloadTooltip;
|
||||
readonly attribute long downloadButtonAction;
|
||||
readonly attribute ACString downloadButtonActionCommand;
|
||||
readonly attribute ACString downloadColorActive;
|
||||
readonly attribute ACString downloadColorPaused;
|
||||
readonly attribute boolean downloadForce;
|
||||
readonly attribute long downloadLabel;
|
||||
readonly attribute boolean downloadLabelForce;
|
||||
readonly attribute boolean downloadNotifyAnimate;
|
||||
readonly attribute long downloadNotifyTimeout;
|
||||
readonly attribute long downloadProgress;
|
||||
readonly attribute long downloadTooltip;
|
||||
|
||||
readonly attribute boolean firstRun;
|
||||
readonly attribute boolean firstRunAustralis;
|
||||
readonly attribute boolean firstRun;
|
||||
readonly attribute boolean firstRunAustralis;
|
||||
|
||||
readonly attribute ACString progressToolbarCSS;
|
||||
readonly attribute boolean progressToolbarForce;
|
||||
readonly attribute boolean progressToolbarStyle;
|
||||
readonly attribute boolean progressToolbarStyleAdvanced;
|
||||
readonly attribute ACString progressToolbarCSS;
|
||||
readonly attribute boolean progressToolbarForce;
|
||||
readonly attribute boolean progressToolbarStyle;
|
||||
readonly attribute boolean progressToolbarStyleAdvanced;
|
||||
|
||||
readonly attribute long status;
|
||||
readonly attribute boolean statusDefault;
|
||||
readonly attribute boolean statusNetwork;
|
||||
readonly attribute boolean statusNetworkXHR;
|
||||
readonly attribute long statusTimeout;
|
||||
readonly attribute long statusLinkOver;
|
||||
readonly attribute long statusLinkOverDelayShow;
|
||||
readonly attribute long statusLinkOverDelayHide;
|
||||
readonly attribute long status;
|
||||
readonly attribute boolean statusDefault;
|
||||
readonly attribute boolean statusNetwork;
|
||||
readonly attribute boolean statusNetworkXHR;
|
||||
readonly attribute long statusTimeout;
|
||||
readonly attribute long statusLinkOver;
|
||||
readonly attribute long statusLinkOverDelayShow;
|
||||
readonly attribute long statusLinkOverDelayHide;
|
||||
|
||||
readonly attribute long statusToolbarMaxLength;
|
||||
readonly attribute long statusToolbarMaxLength;
|
||||
|
||||
readonly attribute boolean statusToolbarInvertMirror;
|
||||
readonly attribute boolean statusToolbarMouseMirror;
|
||||
readonly attribute boolean statusToolbarInvertMirror;
|
||||
readonly attribute boolean statusToolbarMouseMirror;
|
||||
|
||||
void resetPrefs();
|
||||
void updateWindow(in nsIDOMWindow win);
|
||||
void resetPrefs();
|
||||
void updateWindow(in nsIDOMWindow win);
|
||||
};
|
||||
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue