mirror of
https://github.com/zen-browser/desktop.git
synced 2026-01-05 12:57:51 +00:00
feat: Lazy load database for omnibox resultsç, b=no-bug, c=no-component
This commit is contained in:
@@ -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) {
|
||||
|
||||
Reference in New Issue
Block a user