From b3d981c585252efcbe3acee28e1f36736db38e0b Mon Sep 17 00:00:00 2001 From: "mr. m" Date: Sat, 27 Sep 2025 11:45:50 +0200 Subject: [PATCH] =?UTF-8?q?feat:=20Lazy=20load=20database=20for=20omnibox?= =?UTF-8?q?=20results=C3=A7,=20b=3Dno-bug,=20c=3Dno-component?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/zen/urlbar/ZenUBResultsLearner.sys.mjs | 25 +++++++++++++++------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/src/zen/urlbar/ZenUBResultsLearner.sys.mjs b/src/zen/urlbar/ZenUBResultsLearner.sys.mjs index 99165f85f..6df19367d 100644 --- a/src/zen/urlbar/ZenUBResultsLearner.sys.mjs +++ b/src/zen/urlbar/ZenUBResultsLearner.sys.mjs @@ -10,11 +10,22 @@ const DEFAULT_DB_DATA = '{}'; const DEPRIORITIZE_MAX = -4; const PRIORITIZE_MAX = 5; +function addDataToLazy(data) { + try { + lazy.databaseData = JSON.parse(data); + } catch { + lazy.databaseData = {}; + } +} + XPCOMUtils.defineLazyPreferenceGetter( lazy, - 'database', + 'rawDatabase', 'zen.urlbar.suggestions-learner', - 'DEFAULT_DB_DATA' + DEFAULT_DB_DATA, + (_aPreference, _previousValue, newValue) => { + addDataToLazy(newValue); + } ); /** @@ -33,14 +44,12 @@ XPCOMUtils.defineLazyPreferenceGetter( * The priority number is incremented each time the command is executed. */ class ZenUrlbarResultsLearner { - constructor() {} + constructor() { + addDataToLazy(lazy.rawDatabase); + } get database() { - try { - return JSON.parse(lazy.database); - } catch { - return {}; - } + return lazy.databaseData; } saveDatabase(db) {