MCPcopy
hub / github.com/zen-browser/desktop / init

Function init

src/browser/components/preferences/zen-settings.js:19–83  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

17
18var gZenMarketplaceManager = {
19 async init() {
20 const checkForUpdates = document.getElementById("zenThemeMarketplaceCheckForUpdates");
21 const header = document.getElementById("zenMarketplaceHeader");
22
23 if (!checkForUpdates || !header) {
24 return; // We haven't entered the settings page yet.
25 }
26
27 if (this.__hasInitializedEvents) {
28 return;
29 }
30
31 if (!window.gZenMods) {
32 window.gZenMods = nsZenMultiWindowFeature.currentBrowser.gZenMods;
33 }
34
35 header.appendChild(this._initDisableAll());
36
37 this._initImportExport();
38
39 this.__hasInitializedEvents = true;
40
41 await this._buildModsList();
42
43 Services.prefs.addObserver(gZenMods.updatePref, this);
44
45 const checkForUpdateClick = (event) => {
46 if (event.target === checkForUpdates) {
47 event.preventDefault();
48
49 this._checkForThemeUpdates(event);
50 }
51 };
52
53 checkForUpdates.addEventListener("click", checkForUpdateClick);
54
55 document.addEventListener("ZenModsMarketplace:CheckForUpdatesFinished", (event) => {
56 checkForUpdates.disabled = false;
57
58 const updates = event.detail.updates;
59 const success = document.getElementById("zenThemeMarketplaceUpdatesSuccess");
60 const error = document.getElementById("zenThemeMarketplaceUpdatesFailure");
61
62 if (updates) {
63 success.hidden = false;
64 error.hidden = true;
65 } else {
66 success.hidden = true;
67 error.hidden = false;
68 }
69 });
70
71 window.addEventListener("unload", () => {
72 Services.prefs.removeObserver(gZenMods.updatePref, this);
73 this.__hasInitializedEvents = false;
74
75 document.removeEventListener("ZenModsMarketplace:CheckForUpdatesFinished", this);
76 document.removeEventListener("ZenCheckForModUpdates", this);

Callers

nothing calls this directly

Calls 8

appendChildMethod · 0.80
getElementByIdMethod · 0.65
addObserverMethod · 0.65
addEventListenerMethod · 0.65
removeObserverMethod · 0.65
removeEventListenerMethod · 0.65
initMethod · 0.65
observeMethod · 0.65

Tested by

no test coverage detected