mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-09 01:08:39 +09:00
Replace explicit pref observer with lazy preference getters. Tag #361.
This commit is contained in:
parent
85caaf571c
commit
14aede3cc5
2 changed files with 11 additions and 33 deletions
|
|
@ -38,15 +38,6 @@ this.ReaderMode = {
|
|||
|
||||
DEBUG: 0,
|
||||
|
||||
// Don't try to parse the page if it has too many elements (for memory and
|
||||
// performance reasons)
|
||||
get maxElemsToParse() {
|
||||
delete this.parseNodeLimit;
|
||||
|
||||
Services.prefs.addObserver("reader.parse-node-limit", this, false);
|
||||
return this.parseNodeLimit = Services.prefs.getIntPref("reader.parse-node-limit");
|
||||
},
|
||||
|
||||
/**
|
||||
* Enter the reader mode by going forward one step in history if applicable,
|
||||
* if not, append the about:reader page in the history instead.
|
||||
|
|
@ -548,3 +539,8 @@ this.ReaderMode = {
|
|||
return readingSpeed.get(lang) || readingSpeed.get("en");
|
||||
},
|
||||
};
|
||||
|
||||
// Don't try to parse the page if it has too many elements (for memory and
|
||||
// performance reasons)
|
||||
XPCOMUtils.defineLazyPreferenceGetter(
|
||||
ReaderMode, "maxElemsToParse", "reader.parse-node-limit", 0);
|
||||
|
|
|
|||
|
|
@ -23,30 +23,7 @@ var Readerable = {
|
|||
DEBUG: 0,
|
||||
|
||||
get isEnabledForParseOnLoad() {
|
||||
delete this.isEnabledForParseOnLoad;
|
||||
|
||||
// Listen for future pref changes.
|
||||
Services.prefs.addObserver("reader.parse-on-load.", this, false);
|
||||
|
||||
return this.isEnabledForParseOnLoad = this._getStateForParseOnLoad();
|
||||
},
|
||||
|
||||
_getStateForParseOnLoad() {
|
||||
let isEnabled = Services.prefs.getBoolPref("reader.parse-on-load.enabled");
|
||||
let isForceEnabled = Services.prefs.getBoolPref("reader.parse-on-load.force-enabled");
|
||||
return isForceEnabled || isEnabled;
|
||||
},
|
||||
|
||||
observe(aMessage, aTopic, aData) {
|
||||
switch (aTopic) {
|
||||
case "nsPref:changed":
|
||||
if (aData.startsWith("reader.parse-on-load.")) {
|
||||
this.isEnabledForParseOnLoad = this._getStateForParseOnLoad();
|
||||
} else if (aData === "reader.parse-node-limit") {
|
||||
this.parseNodeLimit = Services.prefs.getIntPref(aData);
|
||||
}
|
||||
break;
|
||||
}
|
||||
return this.isEnabled || this.isForceEnabled;
|
||||
},
|
||||
|
||||
log(msg) {
|
||||
|
|
@ -112,3 +89,8 @@ var Readerable = {
|
|||
return true;
|
||||
},
|
||||
};
|
||||
|
||||
XPCOMUtils.defineLazyPreferenceGetter(
|
||||
Readerable, "isEnabled", "reader.parse-on-load.enabled", true);
|
||||
XPCOMUtils.defineLazyPreferenceGetter(
|
||||
Readerable, "isForceEnabled", "reader.parse-on-load.force-enabled", false);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue