зеркало из https://github.com/mozilla/gecko-dev.git
Bug 821741: Load update prefs more dynamically to support automation in B2G. r=fabrice
--HG-- extra : rebase_source : ca7f9ef99fe96051d915ec5b8a87fb22a00d3d6d
This commit is contained in:
Родитель
1d309d528d
Коммит
7bf0c9c466
|
@ -461,9 +461,6 @@ pref("shutdown.watchdog.timeoutSecs", 5);
|
|||
pref("b2g.update.apply-prompt-timeout", 60000); // milliseconds
|
||||
// Amount of time to wait after the user is idle before prompting to apply an update
|
||||
pref("b2g.update.apply-idle-timeout", 600000); // milliseconds
|
||||
// Amount of time the updater waits for the process to exit cleanly before
|
||||
// forcefully exiting the process
|
||||
pref("b2g.update.self-destruct-timeout", 5000); // milliseconds
|
||||
|
||||
pref("app.update.enabled", true);
|
||||
pref("app.update.auto", false);
|
||||
|
|
|
@ -18,14 +18,9 @@ let log =
|
|||
function log_dump(msg) { dump("UpdatePrompt: "+ msg +"\n"); } :
|
||||
function log_noop(msg) { };
|
||||
|
||||
const APPLY_PROMPT_TIMEOUT =
|
||||
Services.prefs.getIntPref("b2g.update.apply-prompt-timeout");
|
||||
const APPLY_IDLE_TIMEOUT =
|
||||
Services.prefs.getIntPref("b2g.update.apply-idle-timeout");
|
||||
const SELF_DESTRUCT_TIMEOUT =
|
||||
Services.prefs.getIntPref("b2g.update.self-destruct-timeout");
|
||||
const PREF_APPLY_PROMPT_TIMEOUT = "b2g.update.apply-prompt-timeout";
|
||||
const PREF_APPLY_IDLE_TIMEOUT = "b2g.update.apply-idle-timeout";
|
||||
|
||||
const APPLY_IDLE_TIMEOUT_SECONDS = APPLY_IDLE_TIMEOUT / 1000;
|
||||
const NETWORK_ERROR_OFFLINE = 111;
|
||||
|
||||
XPCOMUtils.defineLazyServiceGetter(Services, "aus",
|
||||
|
@ -108,6 +103,14 @@ UpdatePrompt.prototype = {
|
|||
_waitingForIdle: false,
|
||||
_updateCheckListner: null,
|
||||
|
||||
get applyPromptTimeout() {
|
||||
return Services.prefs.getIntPref(PREF_APPLY_PROMPT_TIMEOUT);
|
||||
},
|
||||
|
||||
get applyIdleTimeout() {
|
||||
return Services.prefs.getIntPref(PREF_APPLY_IDLE_TIMEOUT);
|
||||
},
|
||||
|
||||
// nsIUpdatePrompt
|
||||
|
||||
// FIXME/bug 737601: we should have users opt-in to downloading
|
||||
|
@ -130,14 +133,15 @@ UpdatePrompt.prototype = {
|
|||
// update quietly without user intervention.
|
||||
this.sendUpdateEvent("update-downloaded", aUpdate);
|
||||
|
||||
if (Services.idle.idleTime >= APPLY_IDLE_TIMEOUT) {
|
||||
if (Services.idle.idleTime >= this.applyIdleTimeout) {
|
||||
this.showApplyPrompt(aUpdate);
|
||||
return;
|
||||
}
|
||||
|
||||
let applyIdleTimeoutSeconds = this.applyIdleTimeout / 1000;
|
||||
// We haven't been idle long enough, so register an observer
|
||||
log("Update is ready to apply, registering idle timeout of " +
|
||||
APPLY_IDLE_TIMEOUT_SECONDS + " seconds before prompting.");
|
||||
applyIdleTimeoutSeconds + " seconds before prompting.");
|
||||
|
||||
this._update = aUpdate;
|
||||
this.waitForIdle();
|
||||
|
@ -165,7 +169,7 @@ UpdatePrompt.prototype = {
|
|||
}
|
||||
|
||||
this._waitingForIdle = true;
|
||||
Services.idle.addIdleObserver(this, APPLY_IDLE_TIMEOUT_SECONDS);
|
||||
Services.idle.addIdleObserver(this, this.applyIdleTimeout / 1000);
|
||||
Services.obs.addObserver(this, "quit-application", false);
|
||||
},
|
||||
|
||||
|
@ -185,7 +189,7 @@ UpdatePrompt.prototype = {
|
|||
|
||||
// Schedule a fallback timeout in case the UI is unable to respond or show
|
||||
// a prompt for some reason.
|
||||
this._applyPromptTimer = this.createTimer(APPLY_PROMPT_TIMEOUT);
|
||||
this._applyPromptTimer = this.createTimer(this.applyPromptTimeout);
|
||||
},
|
||||
|
||||
sendUpdateEvent: function UP_sendUpdateEvent(aType, aUpdate) {
|
||||
|
@ -429,7 +433,7 @@ UpdatePrompt.prototype = {
|
|||
this.showApplyPrompt(this._update);
|
||||
// Fall through
|
||||
case "quit-application":
|
||||
Services.idle.removeIdleObserver(this, APPLY_IDLE_TIMEOUT_SECONDS);
|
||||
Services.idle.removeIdleObserver(this, this.applyIdleTimeout / 1000);
|
||||
Services.obs.removeObserver(this, "quit-application");
|
||||
break;
|
||||
case "update-check-start":
|
||||
|
|
Загрузка…
Ссылка в новой задаче