diff options
author | Pale Moon <git-repo@palemoon.org> | 2020-02-07 11:55:48 +0100 |
---|---|---|
committer | Pale Moon <git-repo@palemoon.org> | 2020-02-07 11:55:48 +0100 |
commit | 4dcd54c87c08bb9cd8a74a97c1b33f3f4721b1f9 (patch) | |
tree | ad29b97ed0f56da31d43d213e5807cda02b64527 | |
parent | adde7f836487243cc92d614bed0803a5e3dbc3f3 (diff) | |
download | palemoon-4dcd54c87c08bb9cd8a74a97c1b33f3f4721b1f9.tar.gz |
Issue #1721 - Add pref to control smart bookmarks size.
This adds `browser.places.smartBookmarks.max` as a hidden pref to
control the maximum number of results returned by application-generated
smart bookmarks.
Resolves #1721
-rw-r--r-- | palemoon/components/nsBrowserGlue.js | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/palemoon/components/nsBrowserGlue.js b/palemoon/components/nsBrowserGlue.js index d8bc5be7e..df63513df 100644 --- a/palemoon/components/nsBrowserGlue.js +++ b/palemoon/components/nsBrowserGlue.js @@ -1585,18 +1585,29 @@ BrowserGlue.prototype = { const SMART_BOOKMARKS_VERSION = 4; const SMART_BOOKMARKS_ANNO = "Places/SmartBookmark"; const SMART_BOOKMARKS_PREF = "browser.places.smartBookmarksVersion"; + const SMART_BOOKMARKS_MAX_PREF = "browser.places.smartBookmarks.max"; + const SMART_BOOKMARKS_OLDMAX_PREF = "browser.places.smartBookmarks.old-max"; - // TODO bug 399268: should this be a pref? - const MAX_RESULTS = 10; + const MAX_RESULTS = Services.prefs.getIntPref(SMART_BOOKMARKS_MAX_PREF, 10); + let OLD_MAX_RESULTS = Services.prefs.getIntPref(SMART_BOOKMARKS_OLDMAX_PREF, 10); // Get current smart bookmarks version. If not set, create them. let smartBookmarksCurrentVersion = Services.prefs.getIntPref(SMART_BOOKMARKS_PREF, 0); - // If version is current or smart bookmarks are disabled, just bail out. + // If version is current and max hasn't changed or smart bookmarks are disabled, just bail out. if (smartBookmarksCurrentVersion == -1 || - smartBookmarksCurrentVersion >= SMART_BOOKMARKS_VERSION) { + (smartBookmarksCurrentVersion >= SMART_BOOKMARKS_VERSION && + OLD_MAX_RESULTS == MAX_RESULTS)) { return; } + + // We're going to recreate the smart bookmarks and set the current max, so store it. + if (Services.prefs.prefHasUserValue(SMART_BOOKMARKS_MAX_PREF)) { + Services.prefs.setIntPref(SMART_BOOKMARKS_OLDMAX_PREF, MAX_RESULTS); + } else { + // The max value is default, no need to track the temp value. + Services.prefs.clearUserPref(SMART_BOOKMARKS_OLDMAX_PREF); + } let batch = { runBatched: function BG_EPDQI_runBatched() { |