зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1522930, delay GMP initialization until after first point to improve perceived performance. r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D67165 --HG-- extra : moz-landing-system : lando
This commit is contained in:
Родитель
edf4e23c7d
Коммит
0faecc91b5
|
@ -48,6 +48,8 @@ const NS_GRE_DIR = "GreD";
|
|||
const CLEARKEY_PLUGIN_ID = "gmp-clearkey";
|
||||
const CLEARKEY_VERSION = "0.1";
|
||||
|
||||
const FIRST_CONTENT_PROCESS_TOPIC = "ipc:first-content-process-created";
|
||||
|
||||
const GMP_LICENSE_INFO = "gmp_license_info";
|
||||
const GMP_PRIVACY_INFO = "gmp_privacy_info";
|
||||
const GMP_LEARN_MORE = "learn_more_label";
|
||||
|
@ -880,15 +882,26 @@ var GMPProvider = {
|
|||
}
|
||||
}
|
||||
},
|
||||
|
||||
observe(subject, topic, data) {
|
||||
if (topic == FIRST_CONTENT_PROCESS_TOPIC) {
|
||||
AddonManagerPrivate.registerProvider(GMPProvider, [
|
||||
new AddonManagerPrivate.AddonType(
|
||||
"plugin",
|
||||
URI_EXTENSION_STRINGS,
|
||||
"type.plugin.name",
|
||||
AddonManager.VIEW_TYPE_LIST,
|
||||
6000,
|
||||
AddonManager.TYPE_SUPPORTS_ASK_TO_ACTIVATE
|
||||
),
|
||||
]);
|
||||
Services.obs.removeObserver(this, FIRST_CONTENT_PROCESS_TOPIC);
|
||||
}
|
||||
},
|
||||
|
||||
addObserver() {
|
||||
Services.obs.addObserver(this, FIRST_CONTENT_PROCESS_TOPIC);
|
||||
},
|
||||
};
|
||||
|
||||
AddonManagerPrivate.registerProvider(GMPProvider, [
|
||||
new AddonManagerPrivate.AddonType(
|
||||
"plugin",
|
||||
URI_EXTENSION_STRINGS,
|
||||
"type.plugin.name",
|
||||
AddonManager.VIEW_TYPE_LIST,
|
||||
6000,
|
||||
AddonManager.TYPE_SUPPORTS_ASK_TO_ACTIVATE
|
||||
),
|
||||
]);
|
||||
GMPProvider.addObserver();
|
||||
|
|
|
@ -58,6 +58,11 @@ MockGMPInstallManager.prototype = {
|
|||
|
||||
add_task(async function setup() {
|
||||
createAppInfo("xpcshell@tests.mozilla.org", "XPCShell", "1", "1.9.2");
|
||||
|
||||
// The GMPProvider does not register until the first content process
|
||||
// is launched, so we simulate that by firing this notification.
|
||||
Services.obs.notifyObservers(null, "ipc:first-content-process-created");
|
||||
|
||||
await promiseStartupManager();
|
||||
|
||||
gPrefs.setBoolPref(GMPScope.GMPPrefs.KEY_LOGGING_DUMP, true);
|
||||
|
|
Загрузка…
Ссылка в новой задаче