From c4ac25b2e8ef8fb56e4bd18b67e10d8bc045c215 Mon Sep 17 00:00:00 2001 From: PressJump <40802367+PressJump@users.noreply.github.com> Date: Mon, 14 Nov 2022 13:11:39 +1100 Subject: [PATCH 1/5] =?UTF-8?q?=E2=9C=A8=20Downloads=20Tab?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/content/browser-sidebar-js.patch | 27 ++++++++++++------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/src/browser/base/content/browser-sidebar-js.patch b/src/browser/base/content/browser-sidebar-js.patch index f837a538..e51299a7 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 f09e37fc42f7754f7f3687884ead25124c1b2076..3148bad1c6c65207064bd650eef9bafcf1d66f5a 100644 +index f09e37fc42f7754f7f3687884ead25124c1b2076..5c75aaac3396ee8a837458942fc9bfc949f6d8df 100644 --- a/browser/base/content/browser-sidebar.js +++ b/browser/base/content/browser-sidebar.js @@ -11,6 +11,10 @@ var SidebarUI = { @@ -37,7 +37,7 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..3148bad1c6c65207064bd650eef9bafc }), ], [ -@@ -47,8 +54,27 @@ var SidebarUI = { +@@ -47,8 +54,36 @@ var SidebarUI = { elementId: "sidebar-switcher-tabs", url: "chrome://browser/content/syncedtabs/sidebar.xhtml", menuId: "menu_tabsSidebar", @@ -45,6 +45,15 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..3148bad1c6c65207064bd650eef9bafc }), ], + [ ++ "sidebar-downloads", ++ { ++ title: "Downloads", ++ url: "about:downloads", ++ iconurl: "chrome://browser/skin/downloads/downloads.svg", ++ isBottom: false, ++ }, ++ ], ++ [ + "sidebar-view-addons", + { + title: "Add-ons", @@ -65,7 +74,7 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..3148bad1c6c65207064bd650eef9bafc ])); }, -@@ -61,6 +87,8 @@ var SidebarUI = { +@@ -61,6 +96,8 @@ var SidebarUI = { return (this._browser = document.getElementById("sidebar")); }, POSITION_START_PREF: "sidebar.position_start", @@ -74,7 +83,7 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..3148bad1c6c65207064bd650eef9bafc DEFAULT_SIDEBAR_ID: "viewBookmarksSidebar", // lastOpenedId is set in show() but unlike currentID it's not cleared out on hide -@@ -78,6 +106,8 @@ var SidebarUI = { +@@ -78,6 +115,8 @@ var SidebarUI = { }, _splitter: null, _icon: null, @@ -83,7 +92,7 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..3148bad1c6c65207064bd650eef9bafc _reversePositionButton: null, _switcherPanel: null, _switcherTarget: null, -@@ -110,10 +140,40 @@ var SidebarUI = { +@@ -110,10 +149,40 @@ var SidebarUI = { this._switcherTarget = document.getElementById("sidebar-switcher-target"); this._switcherArrow = document.getElementById("sidebar-switcher-arrow"); @@ -124,7 +133,7 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..3148bad1c6c65207064bd650eef9bafc this._inited = true; Services.obs.addObserver(this, "intl:app-locales-changed"); -@@ -159,17 +219,26 @@ var SidebarUI = { +@@ -159,17 +228,26 @@ var SidebarUI = { /** * The handler for Services.obs.addObserver. **/ @@ -155,7 +164,7 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..3148bad1c6c65207064bd650eef9bafc } } }, -@@ -573,6 +642,10 @@ var SidebarUI = { +@@ -573,6 +651,10 @@ var SidebarUI = { this._box.setAttribute("sidebarcommand", commandID); this.lastOpenedId = commandID; @@ -166,7 +175,7 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..3148bad1c6c65207064bd650eef9bafc let { url, title, sourceL10nEl } = this.sidebars.get(commandID); this.title = title; // Keep the title element in sync with any l10n changes. -@@ -618,6 +691,26 @@ var SidebarUI = { +@@ -618,6 +700,26 @@ var SidebarUI = { this.selectMenuItem(""); @@ -193,7 +202,7 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..3148bad1c6c65207064bd650eef9bafc // Replace the document currently displayed in the sidebar with about:blank // so that we can free memory by unloading the page. We need to explicitly // create a new content viewer because the old one doesn't get destroyed -@@ -641,25 +734,112 @@ var SidebarUI = { +@@ -641,25 +743,112 @@ var SidebarUI = { * none if the argument is an empty string. */ selectMenuItem(commandID) { From a39cc1cf4dce72d2b5dd0005a89f0b0d17d937aa Mon Sep 17 00:00:00 2001 From: trickypr Date: Mon, 14 Nov 2022 19:16:20 +1100 Subject: [PATCH 2/5] =?UTF-8?q?=F0=9F=94=A7=20Hide=20`.gluon`=20temp=20dir?= =?UTF-8?q?ectory?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/settings.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 18ad11e1..d800add1 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -15,7 +15,8 @@ }, "javascript.updateImportsOnFileMove.enabled": "always", "files.exclude": { - "**/node_modules": true + "**/node_modules": true, + "**/.gluon": true }, "[html]": { "editor.formatOnSave": false From eb05bbb8de83750dd8fe2211cd24e2a89c855323 Mon Sep 17 00:00:00 2001 From: trickypr Date: Mon, 14 Nov 2022 19:17:56 +1100 Subject: [PATCH 3/5] =?UTF-8?q?=F0=9F=90=9B=20Allow=20for=20signed=20&=20u?= =?UTF-8?q?nsigned=20ublock=20releases?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit uBlock seems to flip-flop between having signed and unsigned releases, so we should allow both. Maybe there is something that I am missing here? --- gluon.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gluon.json b/gluon.json index 8490d1c4..439fc9ab 100644 --- a/gluon.json +++ b/gluon.json @@ -16,7 +16,7 @@ "id": "uBlock0@raymondhill.net", "repo": "gorhill/uBlock", "version": "1.44.4", - "fileGlob": "uBlock0_*.firefox.xpi" + "fileGlob": "uBlock0_*.firefox(.signed)?.xpi" }, "tabliss": { "platform": "amo", @@ -99,4 +99,4 @@ "licenseType": "MPL-2.0" }, "updateHostname": "updates.pulsebrowser.app" -} +} \ No newline at end of file From b330a9280c2615c4ca44e49f02942ebe8357f77b Mon Sep 17 00:00:00 2001 From: trickypr Date: Tue, 15 Nov 2022 13:28:45 +1100 Subject: [PATCH 4/5] =?UTF-8?q?=F0=9F=92=84=20Restyle=20downloads=20sideba?= =?UTF-8?q?r?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This includes some slight refactoring to make things work better --- .../themes/pulse/content/downloads.css | 33 +++++++++++++++++++ src/browser/themes/pulse/jar.inc.mn | 3 +- src/browser/themes/pulse/sidebar_tabs.css | 2 +- .../downloads/allDownloadsView-inc-css.patch | 12 +++++++ 4 files changed, 48 insertions(+), 2 deletions(-) create mode 100644 src/browser/themes/pulse/content/downloads.css create mode 100644 src/browser/themes/shared/downloads/allDownloadsView-inc-css.patch diff --git a/src/browser/themes/pulse/content/downloads.css b/src/browser/themes/pulse/content/downloads.css new file mode 100644 index 00000000..fdb694b4 --- /dev/null +++ b/src/browser/themes/pulse/content/downloads.css @@ -0,0 +1,33 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +/* ========================================================================== */ +/* about:downloads */ + +#contentAreaDownloadsView { + background: var(--tab-selected-bgcolor, var(--toolbar-bgcolor)); +} + +#downloadsListBox { + border: none; + border-radius: 0; + background: none; +} + +#downloadsListBox > richlistitem { + border-radius: 4px; + transition: background-color 0.2s ease-in-out; + + margin-bottom: 8px; +} + +#downloadsListBox > richlistitem:not([selected]):hover { + background-color: var(--in-content-box-background); +} + +@media (prefers-reduced-motion) { + #downloadsListBox > richlistitem { + transition: none; + } +} diff --git a/src/browser/themes/pulse/jar.inc.mn b/src/browser/themes/pulse/jar.inc.mn index cc536668..f1dd059d 100644 --- a/src/browser/themes/pulse/jar.inc.mn +++ b/src/browser/themes/pulse/jar.inc.mn @@ -7,5 +7,6 @@ # be specified once. As a result, the source file paths are relative # to the location of the actual manifest. -* skin/classic/browser/sidebar_tabs.css (../pulse/sidebar_tabs.css) +* skin/classic/browser/pulse/sidebar_tabs.css (../pulse/sidebar_tabs.css) + skin/classic/browser/pulse/downloads.css (../pulse/content/downloads.css) skin/classic/browser/addons/shared.css (../pulse/addons/shared.css) diff --git a/src/browser/themes/pulse/sidebar_tabs.css b/src/browser/themes/pulse/sidebar_tabs.css index 79b5babc..0d876ff6 100644 --- a/src/browser/themes/pulse/sidebar_tabs.css +++ b/src/browser/themes/pulse/sidebar_tabs.css @@ -3,7 +3,7 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ /* ========================================================================== */ -/* SIDE BAR STYLES */ +/* SIDEBAR TABS STYLES */ :root { --sidebar-inside-padding: 8px; diff --git a/src/browser/themes/shared/downloads/allDownloadsView-inc-css.patch b/src/browser/themes/shared/downloads/allDownloadsView-inc-css.patch new file mode 100644 index 00000000..99364b87 --- /dev/null +++ b/src/browser/themes/shared/downloads/allDownloadsView-inc-css.patch @@ -0,0 +1,12 @@ +diff --git a/browser/themes/shared/downloads/allDownloadsView.inc.css b/browser/themes/shared/downloads/allDownloadsView.inc.css +index 204e6a95a17a58789c5992983196542104f6cf84..43f7cae36b9b60d27d2442efe3f48f7cbea8bcaa 100644 +--- a/browser/themes/shared/downloads/allDownloadsView.inc.css ++++ b/browser/themes/shared/downloads/allDownloadsView.inc.css +@@ -4,6 +4,7 @@ + + @import "chrome://browser/skin/downloads/progressmeter.css"; + @import "chrome://browser/skin/downloads/download-blockedStates.css"; ++@import "chrome://browser/skin/pulse/downloads.css"; + + /*** View and outer controls ***/ + From 78f8630fb825a01688d56ed22fa4c66ae11b6dc1 Mon Sep 17 00:00:00 2001 From: trickypr Date: Tue, 15 Nov 2022 15:51:35 +1100 Subject: [PATCH 5/5] =?UTF-8?q?=F0=9F=90=9B=20Fix=20the=20sidebar=20creati?= =?UTF-8?q?on?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 3 +- .../base/content/browser-menubar-inc.patch | 14 ++++++++ .../base/content/browser-sidebar-js.patch | 35 ++++++++++--------- 3 files changed, 34 insertions(+), 18 deletions(-) create mode 100644 src/browser/base/content/browser-menubar-inc.patch diff --git a/package.json b/package.json index 2467c985..4ed18ae2 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,7 @@ "package": "gluon package", "ff-version": "gluon ff-version", "licenseCheck": "gluon license-check", - "gluon": "gluon" + "gluon": "gluon", + "reset": "gluon reset" } } diff --git a/src/browser/base/content/browser-menubar-inc.patch b/src/browser/base/content/browser-menubar-inc.patch new file mode 100644 index 00000000..f1c75636 --- /dev/null +++ b/src/browser/base/content/browser-menubar-inc.patch @@ -0,0 +1,14 @@ +diff --git a/browser/base/content/browser-menubar.inc b/browser/base/content/browser-menubar.inc +index f3134d5a9a01b7965eede5695def5afef4a66d6b..626fba18a7e9341731f6b71a98197695d63d7c6c 100644 +--- a/browser/base/content/browser-menubar.inc ++++ b/browser/base/content/browser-menubar.inc +@@ -153,6 +153,9 @@ + type="checkbox" + class="sync-ui-item" + oncommand="SidebarUI.toggle('viewTabsSidebar');" data-l10n-id="menu-view-synced-tabs-sidebar"/> ++ + + + diff --git a/src/browser/base/content/browser-sidebar-js.patch b/src/browser/base/content/browser-sidebar-js.patch index e51299a7..219af6c2 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 f09e37fc42f7754f7f3687884ead25124c1b2076..5c75aaac3396ee8a837458942fc9bfc949f6d8df 100644 +index f09e37fc42f7754f7f3687884ead25124c1b2076..e1833bbfd8a8ed7da767349f886d554f3dd795f3 100644 --- a/browser/base/content/browser-sidebar.js +++ b/browser/base/content/browser-sidebar.js @@ -11,6 +11,10 @@ var SidebarUI = { @@ -37,22 +37,23 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..5c75aaac3396ee8a837458942fc9bfc9 }), ], [ -@@ -47,8 +54,36 @@ var SidebarUI = { +@@ -47,8 +54,37 @@ var SidebarUI = { elementId: "sidebar-switcher-tabs", url: "chrome://browser/content/syncedtabs/sidebar.xhtml", menuId: "menu_tabsSidebar", + iconurl: "chrome://browser/skin/tab.svg", - }), - ], ++ }), ++ ], + [ -+ "sidebar-downloads", -+ { ++ "viewDownloadsSidebar", ++ makeSidebar({ ++ elementId: "sidebar-switcher-downloads", + title: "Downloads", + url: "about:downloads", -+ iconurl: "chrome://browser/skin/downloads/downloads.svg", -+ isBottom: false, -+ }, -+ ], ++ menuId: "menu_downloadsSidebar", ++ iconurl: "chrome://browser/skin/downloads/downloads.svg" + }), + ], + [ + "sidebar-view-addons", + { @@ -74,7 +75,7 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..5c75aaac3396ee8a837458942fc9bfc9 ])); }, -@@ -61,6 +96,8 @@ var SidebarUI = { +@@ -61,6 +97,8 @@ var SidebarUI = { return (this._browser = document.getElementById("sidebar")); }, POSITION_START_PREF: "sidebar.position_start", @@ -83,7 +84,7 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..5c75aaac3396ee8a837458942fc9bfc9 DEFAULT_SIDEBAR_ID: "viewBookmarksSidebar", // lastOpenedId is set in show() but unlike currentID it's not cleared out on hide -@@ -78,6 +115,8 @@ var SidebarUI = { +@@ -78,6 +116,8 @@ var SidebarUI = { }, _splitter: null, _icon: null, @@ -92,7 +93,7 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..5c75aaac3396ee8a837458942fc9bfc9 _reversePositionButton: null, _switcherPanel: null, _switcherTarget: null, -@@ -110,10 +149,40 @@ var SidebarUI = { +@@ -110,10 +150,40 @@ var SidebarUI = { this._switcherTarget = document.getElementById("sidebar-switcher-target"); this._switcherArrow = document.getElementById("sidebar-switcher-arrow"); @@ -133,7 +134,7 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..5c75aaac3396ee8a837458942fc9bfc9 this._inited = true; Services.obs.addObserver(this, "intl:app-locales-changed"); -@@ -159,17 +228,26 @@ var SidebarUI = { +@@ -159,17 +229,26 @@ var SidebarUI = { /** * The handler for Services.obs.addObserver. **/ @@ -164,7 +165,7 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..5c75aaac3396ee8a837458942fc9bfc9 } } }, -@@ -573,6 +651,10 @@ var SidebarUI = { +@@ -573,6 +652,10 @@ var SidebarUI = { this._box.setAttribute("sidebarcommand", commandID); this.lastOpenedId = commandID; @@ -175,7 +176,7 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..5c75aaac3396ee8a837458942fc9bfc9 let { url, title, sourceL10nEl } = this.sidebars.get(commandID); this.title = title; // Keep the title element in sync with any l10n changes. -@@ -618,6 +700,26 @@ var SidebarUI = { +@@ -618,6 +701,26 @@ var SidebarUI = { this.selectMenuItem(""); @@ -202,7 +203,7 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..5c75aaac3396ee8a837458942fc9bfc9 // Replace the document currently displayed in the sidebar with about:blank // so that we can free memory by unloading the page. We need to explicitly // create a new content viewer because the old one doesn't get destroyed -@@ -641,25 +743,112 @@ var SidebarUI = { +@@ -641,25 +744,112 @@ var SidebarUI = { * none if the argument is an empty string. */ selectMenuItem(commandID) {