mirror of
https://github.com/zen-browser/pdf.js.git
synced 2025-07-08 01:10:08 +02:00
[Firefox] Fetch browser preferences/options together with the viewer preferences (bug 1862192)
Currently we *synchronously* fetch a number of browser preferences/options, from the platform code, during the viewer respectively PDF document initialization paths. This seems unnecessary, and we can re-factor the code to instead include the relevant data when fetching the regular viewer preferences.
This commit is contained in:
parent
50c0fccda6
commit
eebc230cf1
7 changed files with 109 additions and 81 deletions
21
gulpfile.mjs
21
gulpfile.mjs
|
@ -188,6 +188,9 @@ function createWebpackConfig(
|
|||
BUNDLE_VERSION: versionInfo.version,
|
||||
BUNDLE_BUILD: versionInfo.commit,
|
||||
TESTING: defines.TESTING ?? process.env.TESTING === "true",
|
||||
BROWSER_PREFERENCES: defaultPreferencesDir
|
||||
? getBrowserPreferences(defaultPreferencesDir)
|
||||
: {},
|
||||
DEFAULT_PREFERENCES: defaultPreferencesDir
|
||||
? getDefaultPreferences(defaultPreferencesDir)
|
||||
: {},
|
||||
|
@ -811,17 +814,32 @@ async function parseDefaultPreferences(dir) {
|
|||
"./" + DEFAULT_PREFERENCES_DIR + dir + "app_options.mjs"
|
||||
);
|
||||
|
||||
const browserPrefs = AppOptions.getAll(OptionKind.BROWSER);
|
||||
if (Object.keys(browserPrefs).length === 0) {
|
||||
throw new Error("No browser preferences found.");
|
||||
}
|
||||
const prefs = AppOptions.getAll(OptionKind.PREFERENCE);
|
||||
if (Object.keys(prefs).length === 0) {
|
||||
throw new Error("No default preferences found.");
|
||||
}
|
||||
|
||||
fs.writeFileSync(
|
||||
DEFAULT_PREFERENCES_DIR + dir + "browser_preferences.json",
|
||||
JSON.stringify(browserPrefs)
|
||||
);
|
||||
fs.writeFileSync(
|
||||
DEFAULT_PREFERENCES_DIR + dir + "default_preferences.json",
|
||||
JSON.stringify(prefs)
|
||||
);
|
||||
}
|
||||
|
||||
function getBrowserPreferences(dir) {
|
||||
const str = fs
|
||||
.readFileSync(DEFAULT_PREFERENCES_DIR + dir + "browser_preferences.json")
|
||||
.toString();
|
||||
return JSON.parse(str);
|
||||
}
|
||||
|
||||
function getDefaultPreferences(dir) {
|
||||
const str = fs
|
||||
.readFileSync(DEFAULT_PREFERENCES_DIR + dir + "default_preferences.json")
|
||||
|
@ -1581,6 +1599,9 @@ function buildLib(defines, dir) {
|
|||
BUNDLE_VERSION: versionInfo.version,
|
||||
BUNDLE_BUILD: versionInfo.commit,
|
||||
TESTING: defines.TESTING ?? process.env.TESTING === "true",
|
||||
BROWSER_PREFERENCES: getBrowserPreferences(
|
||||
defines.SKIP_BABEL ? "lib/" : "lib-legacy/"
|
||||
),
|
||||
DEFAULT_PREFERENCES: getDefaultPreferences(
|
||||
defines.SKIP_BABEL ? "lib/" : "lib-legacy/"
|
||||
),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue