From 0625d7caafb175dcf28a26c430cb7d94dbeaf7f0 Mon Sep 17 00:00:00 2001 From: TrickyPR <23250792+trickypr@users.noreply.github.com> Date: Wed, 18 Jan 2023 13:52:26 +1100 Subject: [PATCH 1/4] =?UTF-8?q?=E2=AC=86=EF=B8=8F=20Upgrade=20firefox=20+?= =?UTF-8?q?=20ublock?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gluon.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gluon.json b/gluon.json index 2afc5dcc..4a91ea6c 100644 --- a/gluon.json +++ b/gluon.json @@ -5,7 +5,7 @@ "binaryName": "pulse-browser", "version": { "product": "firefox", - "version": "108.0.1" + "version": "109.0" }, "buildOptions": { "generateBranding": true @@ -15,7 +15,7 @@ "platform": "github", "id": "uBlock0@raymondhill.net", "repo": "gorhill/uBlock", - "version": "1.45.2", + "version": "1.46.0", "fileGlob": "uBlock0_*.firefox(.signed)?.xpi" }, "tabliss": { From 1a1c6c66a4d4c3a77b3a88ab5b73e271fa356a7e Mon Sep 17 00:00:00 2001 From: TrickyPR <23250792+trickypr@users.noreply.github.com> Date: Wed, 18 Jan 2023 14:03:37 +1100 Subject: [PATCH 2/4] =?UTF-8?q?=F0=9F=91=BD=EF=B8=8F=20Update=20patches=20?= =?UTF-8?q?for=20109.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/browser/app/profile/firefox-js.patch | 40 ++++--------------- src/browser/base/content/browser-xhtml.patch | 14 ++----- src/browser/base/jar-mn.patch | 6 +-- .../content/aboutSessionRestore-xhtml.patch | 4 +- .../locales/en-US/browser/browser-ftl.patch | 12 +++--- 5 files changed, 23 insertions(+), 53 deletions(-) diff --git a/src/browser/app/profile/firefox-js.patch b/src/browser/app/profile/firefox-js.patch index 6c96ec44..018baf01 100644 --- a/src/browser/app/profile/firefox-js.patch +++ b/src/browser/app/profile/firefox-js.patch @@ -1,5 +1,5 @@ diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js -index 14ecab77149f5645e24c8bffff57c223f64730bb..875b78dbd027dc18debf10281733cd8c37b23031 100644 +index 9b56ba74cff12f029b6d8910ff487a216a15194f..ff91ce488ddd65c148633eb3e8e65044da47bf37 100644 --- a/browser/app/profile/firefox.js +++ b/browser/app/profile/firefox.js @@ -19,6 +19,8 @@ @@ -19,7 +19,7 @@ index 14ecab77149f5645e24c8bffff57c223f64730bb..875b78dbd027dc18debf10281733cd8c pref("xpinstall.signatures.devInfoURL", "https://wiki.mozilla.org/Addons/Extension_Signing"); // Enable extensionStorage storage actor by default -@@ -774,7 +775,7 @@ pref("browser.tabs.tooltipsShowPidAndActiveness", true); +@@ -802,7 +803,7 @@ pref("browser.tabs.tooltipsShowPidAndActiveness", true); pref("browser.tabs.tooltipsShowPidAndActiveness", false); #endif @@ -28,16 +28,7 @@ index 14ecab77149f5645e24c8bffff57c223f64730bb..875b78dbd027dc18debf10281733cd8c pref("browser.tabs.firefox-view.logLevel", "Warn"); pref("browser.tabs.firefox-view.notify-for-tabs", false); -@@ -1945,7 +1946,7 @@ pref("browser.send_to_device_locales", "de,en-GB,en-US,es-AR,es-CL,es-ES,es-MX,f - pref("browser.vpn_promo.disallowed_regions", "ae,by,cn,cu,iq,ir,kp,om,ru,sd,sy,tm,tr,ua"); - - // Default to enabling VPN promo messages to be shown when specified and allowed --pref("browser.vpn_promo.enabled", true); -+pref("browser.vpn_promo.enabled", false); - // Only show vpn card to certain regions. Comma separated string of two letter ISO 3166-1 country codes. - // The most recent list of supported countries can be found at https://support.mozilla.org/en-US/kb/mozilla-vpn-countries-available-subscribe - // The full list of supported country codes can also be found at https://github.com/mozilla/bedrock/search?q=VPN_COUNTRY_CODES -@@ -2066,10 +2067,6 @@ pref("browser.tabs.remote.warmup.unloadDelayMs", 2000); +@@ -2082,10 +2083,6 @@ pref("browser.tabs.remote.warmup.unloadDelayMs", 2000); pref("browser.tabs.crashReporting.sendReport", true); pref("browser.tabs.crashReporting.includeURL", false); @@ -48,8 +39,8 @@ index 14ecab77149f5645e24c8bffff57c223f64730bb..875b78dbd027dc18debf10281733cd8c #if defined(XP_LINUX) || defined(XP_WIN) // Allows us to adjust the priority of child processes at the OS level pref("dom.ipc.processPriorityManager.enabled", true); -@@ -2117,10 +2114,10 @@ pref("browser.migrate.chrome.history.maxAgeInDays", 180); - pref("browser.migrate.showBookmarksToolbarAfterMigration", true); +@@ -2156,10 +2153,10 @@ pref("browser.migrate.opera-gx.enabled", false); + pref("browser.migrate.content-modal.enabled", false); pref("extensions.pocket.api", "api.getpocket.com"); -pref("extensions.pocket.enabled", true); @@ -61,30 +52,15 @@ index 14ecab77149f5645e24c8bffff57c223f64730bb..875b78dbd027dc18debf10281733cd8c pref("extensions.pocket.onSaveRecs.locales", "en-US,en-GB,en-CA"); // Enable Pocket button home panel for non link pages. -@@ -2251,9 +2248,10 @@ pref("toolkit.coverage.enabled", false); +@@ -2290,8 +2287,9 @@ pref("toolkit.coverage.enabled", false); pref("toolkit.coverage.endpoint.base", "https://coverage.mozilla.org"); // Discovery prefs -pref("browser.discovery.enabled", true); -pref("browser.discovery.containers.enabled", true); --pref("browser.discovery.sites", "addons.mozilla.org"); -+// -+// From memory, these connect to Google Analytics, so they are a no go -+pref("browser.discovery.enabled", false); -+pref("browser.discovery.containers.enabled", false); - - pref("browser.engagement.recent_visited_origins.expiry", 86400); // 24 * 60 * 60 (24 hours in seconds) - pref("browser.engagement.downloads-button.has-used", false); -.mozilla.org"); - - // Discovery prefs --pref("browser.discovery.enabled", true); --pref("browser.discovery.containers.enabled", true); --pref("browser.discovery.sites", "addons.mozilla.org"); -+// -+// From memory, these connect to Google Analytics, so they are a no go ++// From memory, this uses google analytics +pref("browser.discovery.enabled", false); +pref("browser.discovery.containers.enabled", false); + pref("browser.discovery.sites", "addons.mozilla.org"); pref("browser.engagement.recent_visited_origins.expiry", 86400); // 24 * 60 * 60 (24 hours in seconds) - pref("browser.engagement.downloads-button.has-used", false); diff --git a/src/browser/base/content/browser-xhtml.patch b/src/browser/base/content/browser-xhtml.patch index 384156d0..29c7eb90 100644 --- a/src/browser/base/content/browser-xhtml.patch +++ b/src/browser/base/content/browser-xhtml.patch @@ -1,20 +1,12 @@ diff --git a/browser/base/content/browser.xhtml b/browser/base/content/browser.xhtml -index 8dfb7b3c787661b5541d77c0eddf408ee90c513f..2a8c13598f5d047bb2fbcbae0b1ee6032a50e9da 100644 +index a775f71d5ca17dfbba4e84ea602c17ee669ab7e4..36f2d1fab395a7a2f3e299b39dfc15187aa9f28a 100644 --- a/browser/base/content/browser.xhtml +++ b/browser/base/content/browser.xhtml -@@ -105,6 +105,7 @@ - Services.scriptloader.loadSubScript("chrome://browser/content/browser-pageActions.js", this); +@@ -110,6 +110,7 @@ Services.scriptloader.loadSubScript("chrome://browser/content/browser-sidebar.js", this); Services.scriptloader.loadSubScript("chrome://browser/content/browser-tabsintitlebar.js", this); + Services.scriptloader.loadSubScript("chrome://browser/content/browser-unified-extensions.js", this); + Services.scriptloader.loadSubScript("chrome://browser/content/browser-verticaltabs.js", this); Services.scriptloader.loadSubScript("chrome://browser/content/tabbrowser.js", this); Services.scriptloader.loadSubScript("chrome://browser/content/tabbrowser-tab.js", this); Services.scriptloader.loadSubScript("chrome://browser/content/tabbrowser-tabs.js", this); -@@ -112,6 +113,7 @@ - Services.scriptloader.loadSubScript("chrome://browser/content/search/autocomplete-popup.js", this); - Services.scriptloader.loadSubScript("chrome://browser/content/search/searchbar.js", this); - -+ - window.onload = gBrowserInit.onLoad.bind(gBrowserInit); - window.onunload = gBrowserInit.onUnload.bind(gBrowserInit); - window.onclose = WindowIsClosing; diff --git a/src/browser/base/jar-mn.patch b/src/browser/base/jar-mn.patch index ec667ba7..e3a5e922 100644 --- a/src/browser/base/jar-mn.patch +++ b/src/browser/base/jar-mn.patch @@ -1,10 +1,10 @@ diff --git a/browser/base/jar.mn b/browser/base/jar.mn -index 4239a2af4952c0c7ceafaae1d614925a960402bc..f53ab91867941b7282d71b4687ae8af7df47e621 100644 +index a0e9585076a16f46f0b100f3fdd71896b75d165b..9c8a3abcdb97a968e00c9727c82e2644f9aaf921 100644 --- a/browser/base/jar.mn +++ b/browser/base/jar.mn -@@ -58,6 +58,7 @@ browser.jar: - content/browser/browser-toolbarKeyNav.js (content/browser-toolbarKeyNav.js) +@@ -60,6 +60,7 @@ browser.jar: content/browser/browser-thumbnails.js (content/browser-thumbnails.js) + content/browser/browser-unified-extensions.js (content/browser-unified-extensions.js) content/browser/browser-graphics-utils.js (content/browser-graphics-utils.js) + content/browser/browser-verticaltabs.js (content/browser-verticaltabs.js) content/browser/browser-webrtc.js (content/browser-webrtc.js) diff --git a/src/browser/components/sessionstore/content/aboutSessionRestore-xhtml.patch b/src/browser/components/sessionstore/content/aboutSessionRestore-xhtml.patch index cca70702..b2a9b854 100644 --- a/src/browser/components/sessionstore/content/aboutSessionRestore-xhtml.patch +++ b/src/browser/components/sessionstore/content/aboutSessionRestore-xhtml.patch @@ -1,5 +1,5 @@ diff --git a/browser/components/sessionstore/content/aboutSessionRestore.xhtml b/browser/components/sessionstore/content/aboutSessionRestore.xhtml -index bb0aff1b9e25cce2c8f9c95d73c5be4f63bbe46f..f8d68e0cbe198ca9010884c2e9add5a640e3013b 100644 +index 05538be5d95492903e44076dc43e195cbc76c10d..44819694a95e5064078e48a704fa53d46b134c50 100644 --- a/browser/components/sessionstore/content/aboutSessionRestore.xhtml +++ b/browser/components/sessionstore/content/aboutSessionRestore.xhtml @@ -20,6 +20,7 @@ @@ -9,4 +9,4 @@ index bb0aff1b9e25cce2c8f9c95d73c5be4f63bbe46f..f8d68e0cbe198ca9010884c2e9add5a6 + - + diff --git a/src/browser/locales/en-US/browser/browser-ftl.patch b/src/browser/locales/en-US/browser/browser-ftl.patch index 36044cae..307b673d 100644 --- a/src/browser/locales/en-US/browser/browser-ftl.patch +++ b/src/browser/locales/en-US/browser/browser-ftl.patch @@ -1,11 +1,13 @@ diff --git a/browser/locales/en-US/browser/browser.ftl b/browser/locales/en-US/browser/browser.ftl -index 9dde80d165f5815e557c5a050b6edd6568617b95..6778abd79a9c68ff8c457393df1e04c81c29d9b8 100644 +index ca4bfcb81b852966a4486d8ec238345f18971f85..738fbe237412aacb4f24c84986c97bac0cf674b4 100644 --- a/browser/locales/en-US/browser/browser.ftl +++ b/browser/locales/en-US/browser/browser.ftl -@@ -919,3 +919,6 @@ private-browsing-indicator-label = Private browsing - unified-extensions-button = - .label = Extensions - .tooltiptext = Extensions +@@ -950,3 +950,8 @@ refresh-blocked-redirect-label = { -brand-short-name } prevented this page from + refresh-blocked-allow = + .label = Allow + .accesskey = A ++ + +sidebar-context-delete = + .label = Delete ++ From bbdb0eec493e80dde9f506b757663524c154d362 Mon Sep 17 00:00:00 2001 From: TrickyPR <23250792+trickypr@users.noreply.github.com> Date: Wed, 18 Jan 2023 19:46:26 +1100 Subject: [PATCH 3/4] =?UTF-8?q?=E2=9C=A8=20Vivaldi=20(and=20probibly=20Ope?= =?UTF-8?q?ra)=20importer?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes #186 --- ...D164372 - Fix vivaldi linux importer.patch | 19 +++++++++++++++++++ src/browser/app/profile/firefox-js.patch | 14 +++++++++++--- src/browser/app/profile/pulse-browser.js | 12 +++++------- 3 files changed, 35 insertions(+), 10 deletions(-) create mode 100644 src/D164372 - Fix vivaldi linux importer.patch diff --git a/src/D164372 - Fix vivaldi linux importer.patch b/src/D164372 - Fix vivaldi linux importer.patch new file mode 100644 index 00000000..cbf7941b --- /dev/null +++ b/src/D164372 - Fix vivaldi linux importer.patch @@ -0,0 +1,19 @@ +diff --git a/browser/components/migration/ChromeMigrationUtils.sys.mjs b/browser/components/migration/ChromeMigrationUtils.sys.mjs +--- a/browser/components/migration/ChromeMigrationUtils.sys.mjs ++++ b/browser/components/migration/ChromeMigrationUtils.sys.mjs +@@ -297,12 +297,12 @@ + "Chrome Dev": ["google-chrome-unstable"], + Chromium: ["chromium"], + "Opera GX": ["Opera-GX"], + // Canary is not available on Linux. + // Edge is not available on Linux. +- Opera: ["Opera"], +- Vivaldi: ["Vivaldi"], ++ Opera: ["opera"], ++ Vivaldi: ["vivaldi"], + }, + }; + let subfolders = SUB_DIRECTORIES[AppConstants.platform][chromeProjectName]; + if (!subfolders) { + return null; + diff --git a/src/browser/app/profile/firefox-js.patch b/src/browser/app/profile/firefox-js.patch index 018baf01..42c7a42f 100644 --- a/src/browser/app/profile/firefox-js.patch +++ b/src/browser/app/profile/firefox-js.patch @@ -1,5 +1,5 @@ diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js -index 9b56ba74cff12f029b6d8910ff487a216a15194f..ff91ce488ddd65c148633eb3e8e65044da47bf37 100644 +index 9b56ba74cff12f029b6d8910ff487a216a15194f..603a2b90f800b8f702ab2c1c61ce922c11459ce6 100644 --- a/browser/app/profile/firefox.js +++ b/browser/app/profile/firefox.js @@ -19,6 +19,8 @@ @@ -39,7 +39,15 @@ index 9b56ba74cff12f029b6d8910ff487a216a15194f..ff91ce488ddd65c148633eb3e8e65044 #if defined(XP_LINUX) || defined(XP_WIN) // Allows us to adjust the priority of child processes at the OS level pref("dom.ipc.processPriorityManager.enabled", true); -@@ -2156,10 +2153,10 @@ pref("browser.migrate.opera-gx.enabled", false); +@@ -2149,17 +2146,15 @@ pref("browser.migrate.edge.enabled", true); + pref("browser.migrate.firefox.enabled", true); + pref("browser.migrate.ie.enabled", true); + pref("browser.migrate.safari.enabled", true); +-pref("browser.migrate.opera.enabled", false); +-pref("browser.migrate.vivaldi.enabled", false); +-pref("browser.migrate.opera-gx.enabled", false); ++// Temporarily override browser.migrate for opera and vivaldi + pref("browser.migrate.content-modal.enabled", false); pref("extensions.pocket.api", "api.getpocket.com"); @@ -52,7 +60,7 @@ index 9b56ba74cff12f029b6d8910ff487a216a15194f..ff91ce488ddd65c148633eb3e8e65044 pref("extensions.pocket.onSaveRecs.locales", "en-US,en-GB,en-CA"); // Enable Pocket button home panel for non link pages. -@@ -2290,8 +2287,9 @@ pref("toolkit.coverage.enabled", false); +@@ -2290,8 +2285,9 @@ pref("toolkit.coverage.enabled", false); pref("toolkit.coverage.endpoint.base", "https://coverage.mozilla.org"); // Discovery prefs diff --git a/src/browser/app/profile/pulse-browser.js b/src/browser/app/profile/pulse-browser.js index a9144fc6..0f0f771a 100644 --- a/src/browser/app/profile/pulse-browser.js +++ b/src/browser/app/profile/pulse-browser.js @@ -4,6 +4,11 @@ // // Note: You must have semicolons at the end of each line in user setting files +// Enable importers for other browsers +pref('browser.migrate.vivaldi.enabled', true); +pref('browser.migrate.opera-gx.enabled', true); +pref('browser.migrate.opera.enabled', true); + // Enable downloading DRM. pref('media.eme.enabled', true); @@ -57,10 +62,3 @@ pref("app.releaseNotesURL.aboutDialog", "https://discord.gg/Y3khyEtAgS"); pref("extensions.pocket.enabled", false); #include better-fox.js -RL", "https://discord.gg/Y3khyEtAgS"); -pref("app.releaseNotesURL.aboutDialog", "https://discord.gg/Y3khyEtAgS"); - -// This pref needs to be here to not break context menus (GH#169) -pref("extensions.pocket.enabled", false); - -#include better-fox.js From e063f2d8f922875a0d2f9c2d34575b08eaa1ca9c Mon Sep 17 00:00:00 2001 From: TrickyPR <23250792+trickypr@users.noreply.github.com> Date: Wed, 18 Jan 2023 20:08:42 +1100 Subject: [PATCH 4/4] =?UTF-8?q?=F0=9F=90=9B=20Fix=20browser=20de-init=20in?= =?UTF-8?q?=20the=20sidebar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/content/browser-sidebar-js.patch | 49 +++++++++++++------ 1 file changed, 35 insertions(+), 14 deletions(-) diff --git a/src/browser/base/content/browser-sidebar-js.patch b/src/browser/base/content/browser-sidebar-js.patch index 7c38a3f6..3861608c 100644 --- a/src/browser/base/content/browser-sidebar-js.patch +++ b/src/browser/base/content/browser-sidebar-js.patch @@ -1,5 +1,5 @@ diff --git a/browser/base/content/browser-sidebar.js b/browser/base/content/browser-sidebar.js -index c5ac301416d2d820ba95e21c0ce1fe305e63b554..4d824259fd611e5531e35bb3d3da85f587815197 100644 +index c5ac301416d2d820ba95e21c0ce1fe305e63b554..fa3cd3184cce8759c834fa0fadc645afde674dd8 100644 --- a/browser/base/content/browser-sidebar.js +++ b/browser/base/content/browser-sidebar.js @@ -11,6 +11,10 @@ var SidebarUI = { @@ -75,7 +75,7 @@ index c5ac301416d2d820ba95e21c0ce1fe305e63b554..4d824259fd611e5531e35bb3d3da85f5 ])); }, -@@ -61,7 +97,10 @@ var SidebarUI = { +@@ -61,12 +97,16 @@ var SidebarUI = { return (this._browser = document.getElementById("sidebar")); }, POSITION_START_PREF: "sidebar.position_start", @@ -86,7 +86,13 @@ index c5ac301416d2d820ba95e21c0ce1fe305e63b554..4d824259fd611e5531e35bb3d3da85f5 // lastOpenedId is set in show() but unlike currentID it's not cleared out on hide // and isn't persisted across windows -@@ -76,8 +115,13 @@ var SidebarUI = { + lastOpenedId: null, + ++ /** @type {HTMLElement?} */ + _box: null, + // The constructor of this label accesses the browser element due to the + // control="sidebar" attribute, so avoid getting this label during startup. +@@ -76,8 +116,13 @@ var SidebarUI = { } return (this.__title = document.getElementById("sidebar-title")); }, @@ -100,7 +106,7 @@ index c5ac301416d2d820ba95e21c0ce1fe305e63b554..4d824259fd611e5531e35bb3d3da85f5 _reversePositionButton: null, _switcherPanel: null, _switcherTarget: null, -@@ -110,15 +154,59 @@ var SidebarUI = { +@@ -110,15 +155,59 @@ var SidebarUI = { this._switcherTarget = document.getElementById("sidebar-switcher-target"); this._switcherArrow = document.getElementById("sidebar-switcher-arrow"); @@ -160,7 +166,7 @@ index c5ac301416d2d820ba95e21c0ce1fe305e63b554..4d824259fd611e5531e35bb3d3da85f5 }, uninit() { -@@ -127,7 +215,10 @@ var SidebarUI = { +@@ -127,7 +216,10 @@ var SidebarUI = { let enumerator = Services.wm.getEnumerator("navigator:browser"); if (!enumerator.hasMoreElements()) { let xulStore = Services.xulStore; @@ -172,7 +178,7 @@ index c5ac301416d2d820ba95e21c0ce1fe305e63b554..4d824259fd611e5531e35bb3d3da85f5 if (this._box.hasAttribute("positionend")) { xulStore.persist(this._box, "positionend"); -@@ -148,6 +239,12 @@ var SidebarUI = { +@@ -148,6 +240,12 @@ var SidebarUI = { xulStore.persist(this._title, "value"); } @@ -185,7 +191,7 @@ index c5ac301416d2d820ba95e21c0ce1fe305e63b554..4d824259fd611e5531e35bb3d3da85f5 Services.obs.removeObserver(this, "intl:app-locales-changed"); if (this._observer) { -@@ -159,17 +256,47 @@ var SidebarUI = { +@@ -159,17 +257,62 @@ var SidebarUI = { /** * The handler for Services.obs.addObserver. **/ @@ -230,6 +236,21 @@ index c5ac301416d2d820ba95e21c0ce1fe305e63b554..4d824259fd611e5531e35bb3d3da85f5 + } + } + ++ // The sidebar depends on a browse existing. If this has been ++ // destroyed, we need to re-init it. Although, first we need to ++ // remove any possible cached value ++ this._browser = null ++ if (!this.browser) { ++ /** @type {HTMLElement} */ ++ const browser = document.createXULElement('browser') ++ browser.setAttribute('id', 'sidebar') ++ browser.setAttribute('autoscroll', 'false') ++ browser.setAttribute('disablehistory', 'true') ++ browser.setAttribute('disablefullscreen', 'true') ++ browser.setAttribute('tooltip', 'aHTMLTooltip') ++ this._box.appendChild(browser) ++ } ++ + this.init(); + break; + } @@ -237,7 +258,7 @@ index c5ac301416d2d820ba95e21c0ce1fe305e63b554..4d824259fd611e5531e35bb3d3da85f5 } } }, -@@ -485,6 +612,9 @@ var SidebarUI = { +@@ -485,6 +628,9 @@ var SidebarUI = { }, _loadSidebarExtension(commandID) { @@ -247,7 +268,7 @@ index c5ac301416d2d820ba95e21c0ce1fe305e63b554..4d824259fd611e5531e35bb3d3da85f5 let sidebar = this.sidebars.get(commandID); let { extensionId } = sidebar; if (extensionId) { -@@ -523,6 +653,7 @@ var SidebarUI = { +@@ -523,6 +669,7 @@ var SidebarUI = { } this._fireFocusedEvent(); @@ -255,7 +276,7 @@ index c5ac301416d2d820ba95e21c0ce1fe305e63b554..4d824259fd611e5531e35bb3d3da85f5 return true; }); }, -@@ -546,10 +677,28 @@ var SidebarUI = { +@@ -546,10 +693,28 @@ var SidebarUI = { } return this._show(commandID).then(() => { this._loadSidebarExtension(commandID); @@ -284,7 +305,7 @@ index c5ac301416d2d820ba95e21c0ce1fe305e63b554..4d824259fd611e5531e35bb3d3da85f5 /** * Implementation for show. Also used internally for sidebars that are shown * when a window is opened and we don't want to ping telemetry. -@@ -559,6 +708,29 @@ var SidebarUI = { +@@ -559,6 +724,29 @@ var SidebarUI = { */ _show(commandID) { return new Promise(resolve => { @@ -314,7 +335,7 @@ index c5ac301416d2d820ba95e21c0ce1fe305e63b554..4d824259fd611e5531e35bb3d3da85f5 this.selectMenuItem(commandID); this._box.hidden = this._splitter.hidden = false; -@@ -570,13 +742,21 @@ var SidebarUI = { +@@ -570,13 +758,21 @@ var SidebarUI = { this._box.setAttribute("sidebarcommand", commandID); this.lastOpenedId = commandID; @@ -338,7 +359,7 @@ index c5ac301416d2d820ba95e21c0ce1fe305e63b554..4d824259fd611e5531e35bb3d3da85f5 this.browser.addEventListener( "load", event => { -@@ -615,22 +795,46 @@ var SidebarUI = { +@@ -615,22 +811,46 @@ var SidebarUI = { this.selectMenuItem(""); @@ -392,7 +413,7 @@ index c5ac301416d2d820ba95e21c0ce1fe305e63b554..4d824259fd611e5531e35bb3d3da85f5 }, /** -@@ -638,25 +842,121 @@ var SidebarUI = { +@@ -638,25 +858,121 @@ var SidebarUI = { * none if the argument is an empty string. */ selectMenuItem(commandID) {