diff --git a/.github/workflows/alpha.yml b/.github/workflows/alpha.yml index 87161542..81411966 100644 --- a/.github/workflows/alpha.yml +++ b/.github/workflows/alpha.yml @@ -350,6 +350,8 @@ jobs: name: Release needs: [build-data, linux, source, mac, windows] runs-on: ubuntu-latest + if: ${{ github.ref == 'refs/heads/alpha' }} + steps: - uses: actions/download-artifact@v2 @@ -397,6 +399,7 @@ jobs: name: Build flatpak repos needs: [build-data, release] runs-on: ubuntu-latest + if: ${{ github.ref == 'refs/heads/alpha' }} steps: - uses: actions/checkout@v3 diff --git a/.vscode/settings.json b/.vscode/settings.json index d800add1..f11b2011 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -5,7 +5,8 @@ "moz.configure": "python", "app.mozbuild": "python", "Makefile.in": "makefile", - "mozconfig": "shellscript" + "mozconfig": "shellscript", + "src/browser/themes/**.json": "jsonc" }, "files.watcherExclude": { "**/.git/objects/**": true, diff --git a/package.json b/package.json index 4ed18ae2..6fdbd626 100644 --- a/package.json +++ b/package.json @@ -14,10 +14,11 @@ "build:ui": "gluon build --ui", "bs": "yarn build && yarn start", "bus": "yarn build:ui && yarn start", - "start": "gluon run", + "start": "yarn clearStartupCache && gluon run", "export": "gluon export-file", "imp": "gluon import", "clearProfile": "rm -rf engine/obj-x86_64-pc-linux-gnu/tmp/profile-default", + "clearStartupCache": "rm -rf engine/obj-x86_64-pc-linux-gnu/tmp/profile-default/startupCache", "download": "gluon download", "package": "gluon package", "ff-version": "gluon ff-version", diff --git a/src/browser/base/content/aboutRobots-xhtml.patch b/src/browser/base/content/aboutRobots-xhtml.patch new file mode 100644 index 00000000..466c1549 --- /dev/null +++ b/src/browser/base/content/aboutRobots-xhtml.patch @@ -0,0 +1,12 @@ +diff --git a/browser/base/content/aboutRobots.xhtml b/browser/base/content/aboutRobots.xhtml +index 767b31067d6d82c1ddfdbf633ececc459c6480ae..21d09dfb758477930096b6c1b070642464a09e69 100644 +--- a/browser/base/content/aboutRobots.xhtml ++++ b/browser/base/content/aboutRobots.xhtml +@@ -14,6 +14,7 @@ + + + ++ + + + diff --git a/src/browser/base/content/browser-sidebar-js.patch b/src/browser/base/content/browser-sidebar-js.patch index 219af6c2..2673a7dc 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..e1833bbfd8a8ed7da767349f886d554f3dd795f3 100644 +index c5ac301416d2d820ba95e21c0ce1fe305e63b554..ef82cb7bf931d7601c2116ee0d1828d6aa593cae 100644 --- a/browser/base/content/browser-sidebar.js +++ b/browser/base/content/browser-sidebar.js @@ -11,6 +11,10 @@ var SidebarUI = { @@ -165,18 +165,21 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..e1833bbfd8a8ed7da767349f886d554f } } }, -@@ -573,6 +652,10 @@ var SidebarUI = { +@@ -570,6 +649,13 @@ var SidebarUI = { this._box.setAttribute("sidebarcommand", commandID); this.lastOpenedId = commandID; + // Pulse: Reset sidebar margin to zero to allow for correct animations to + // take place (adapted from dot browser, se below) + this._box.style.marginLeft = "0px"; ++ ++ // Pulse: Add checked to the sidebar-icons class to enable more css latter ++ this._sidebarIcons.setAttribute("checked", "true"); + let { url, title, sourceL10nEl } = this.sidebars.get(commandID); this.title = title; // Keep the title element in sync with any l10n changes. -@@ -618,6 +701,26 @@ var SidebarUI = { +@@ -615,6 +701,27 @@ var SidebarUI = { this.selectMenuItem(""); @@ -198,12 +201,21 @@ index f09e37fc42f7754f7f3687884ead25124c1b2076..e1833bbfd8a8ed7da767349f886d554f + this._splitter.hidden = true; + + this._box.removeAttribute("checked"); ++ this._sidebarIcons.removeAttribute("checked"); + }, 170); + // 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 +744,112 @@ var SidebarUI = { +@@ -625,6 +732,7 @@ var SidebarUI = { + + this._box.removeAttribute("checked"); + this._box.hidden = this._splitter.hidden = true; ++ this._sidebarIcons.removeAttribute("checked"); + + let selBrowser = gBrowser.selectedBrowser; + selBrowser.focus(); +@@ -638,25 +746,112 @@ var SidebarUI = { * none if the argument is an empty string. */ selectMenuItem(commandID) { diff --git a/src/browser/base/content/contentTheme-js.patch b/src/browser/base/content/contentTheme-js.patch new file mode 100644 index 00000000..e67df583 --- /dev/null +++ b/src/browser/base/content/contentTheme-js.patch @@ -0,0 +1,110 @@ +diff --git a/browser/base/content/contentTheme.js b/browser/base/content/contentTheme.js +index d634a17c2633dc2ead40082c71622fe1b7a491a2..042c8120729f6c35ad0b49b91443a88ec6ed4fe8 100644 +--- a/browser/base/content/contentTheme.js ++++ b/browser/base/content/contentTheme.js +@@ -135,6 +135,105 @@ + lwtProperty: "sidebar_highlight_text", + }, + ], ++ ++ // Pulse: Force content styles to use the current css theme! ++ // Remember to add your keys to browser/themes/ThemeVariableMap.sys.mjs ++ [ ++ "--in-content-primary-button-background", ++ { ++ lwtProperty: "button_primary", ++ } ++ ], ++ [ ++ "--primary-button-background-color", ++ { ++ lwtProperty: "button_primary", ++ } ++ ], ++ ++ [ ++ "--in-content-primary-button-background-hover", ++ { ++ lwtProperty: "button_primary_hover", ++ } ++ ], ++ [ ++ "--primary-button-hover-background-color", ++ { ++ lwtProperty: "button_primary_hover", ++ } ++ ], ++ ++ [ ++ "--in-content-primary-button-background-active", ++ { ++ lwtProperty: "button_primary_active", ++ } ++ ], ++ [ ++ "--primary-button-active-background-color", ++ { ++ lwtProperty: "button_primary_active", ++ } ++ ], ++ ++ [ ++ "--in-content-primary-button-text-color", ++ { ++ lwtProperty: "button_primary_color", ++ } ++ ], ++ [ ++ "--primary-button-color", ++ { ++ lwtProperty: "button_primary_color", ++ } ++ ], ++ ++ [ ++ "--in-content-primary-button-text-color-hover", ++ { ++ lwtProperty: "button_primary_color", ++ } ++ ], ++ [ ++ "--newtab-primary-action-background", ++ { ++ lwtProperty: "button_primary", ++ } ++ ], ++ [ ++ "--newtab-primary-element-text-color", ++ { ++ lwtProperty: "button_primary_color", ++ } ++ ], ++ ++ [ ++ "--in-content-page-background", ++ { ++ lwtProperty: "ntp_background", ++ } ++ ], ++ [ ++ "--bg-color", ++ { ++ lwtProperty: "ntp_background", ++ } ++ ], ++ ++ [ ++ "--card-background-color", ++ { ++ lwtProperty: "ntp_card_background", ++ } ++ ], ++ [ ++ "--in-content-box-background", ++ { ++ lwtProperty: "ntp_card_background", ++ } ++ ], + ]; + + /** diff --git a/src/browser/components/BrowserGlue-jsm.patch b/src/browser/components/BrowserGlue-jsm.patch index 8ef65748..4b4dca22 100644 --- a/src/browser/components/BrowserGlue-jsm.patch +++ b/src/browser/components/BrowserGlue-jsm.patch @@ -1,8 +1,24 @@ diff --git a/browser/components/BrowserGlue.jsm b/browser/components/BrowserGlue.jsm -index cee46e6341f98441df743f4f5abccc380a67f74b..1102e374a8a93f2ae6142ff0bffaea71fdceb59c 100644 +index 43fbae6024d491379965937246c4900179d924eb..cbf5c219feeab92a3ecfcc991c605394ef29b8de 100644 --- a/browser/components/BrowserGlue.jsm +++ b/browser/components/BrowserGlue.jsm -@@ -4343,6 +4343,24 @@ BrowserGlue.prototype = { +@@ -562,13 +562,8 @@ let JSWINDOWACTORS = { + includeChrome: true, + allFrames: true, + matches: [ +- "about:home", +- "about:newtab", +- "about:welcome", +- "chrome://browser/content/syncedtabs/sidebar.xhtml", +- "chrome://browser/content/places/historySidebar.xhtml", +- "chrome://browser/content/places/bookmarksSidebar.xhtml", +- "about:firefoxview", ++ "about:*", ++ "chrome://*" + ], + }, + +@@ -4361,6 +4356,24 @@ BrowserGlue.prototype = { }, async _maybeShowDefaultBrowserPrompt() { @@ -27,7 +43,7 @@ index cee46e6341f98441df743f4f5abccc380a67f74b..1102e374a8a93f2ae6142ff0bffaea71 // Highest priority is the upgrade dialog, which can include a "primary // browser" request and is limited in various ways, e.g., major upgrades. const dialogVersion = 106; -@@ -4809,6 +4827,17 @@ BrowserGlue.prototype = { +@@ -4827,6 +4840,17 @@ BrowserGlue.prototype = { "nsIObserver", "nsISupportsWeakReference", ]), diff --git a/src/browser/components/aboutlogins/content/aboutLogins-html.patch b/src/browser/components/aboutlogins/content/aboutLogins-html.patch new file mode 100644 index 00000000..ba78ed2b --- /dev/null +++ b/src/browser/components/aboutlogins/content/aboutLogins-html.patch @@ -0,0 +1,12 @@ +diff --git a/browser/components/aboutlogins/content/aboutLogins.html b/browser/components/aboutlogins/content/aboutLogins.html +index d53bc804177d414928dae9a2cb8e42a0a0dae9ac..b5190e9d556ab8b40840214fac15eed17a5fae25 100644 +--- a/browser/components/aboutlogins/content/aboutLogins.html ++++ b/browser/components/aboutlogins/content/aboutLogins.html +@@ -31,6 +31,7 @@ + + + ++ + + +
diff --git a/src/browser/components/aboutlogins/content/aboutLoginsImportReport-html.patch b/src/browser/components/aboutlogins/content/aboutLoginsImportReport-html.patch new file mode 100644 index 00000000..e5ef2c9a --- /dev/null +++ b/src/browser/components/aboutlogins/content/aboutLoginsImportReport-html.patch @@ -0,0 +1,12 @@ +diff --git a/browser/components/aboutlogins/content/aboutLoginsImportReport.html b/browser/components/aboutlogins/content/aboutLoginsImportReport.html +index c8a768c7d867464771b2a37e3fb7361e17370a59..2d770c8ad36febd9fc02dadca4ba88caa31c77db 100644 +--- a/browser/components/aboutlogins/content/aboutLoginsImportReport.html ++++ b/browser/components/aboutlogins/content/aboutLoginsImportReport.html +@@ -19,6 +19,7 @@ + + + ++ + + +
diff --git a/src/browser/components/enterprisepolicies/content/aboutPolicies-html.patch b/src/browser/components/enterprisepolicies/content/aboutPolicies-html.patch new file mode 100644 index 00000000..28da5367 --- /dev/null +++ b/src/browser/components/enterprisepolicies/content/aboutPolicies-html.patch @@ -0,0 +1,12 @@ +diff --git a/browser/components/enterprisepolicies/content/aboutPolicies.html b/browser/components/enterprisepolicies/content/aboutPolicies.html +index 83ae157605f1009588b1d6c87e5eff26a2e5d594..d470b3ab00d87bb43e088290693b7d74d4c354ef 100644 +--- a/browser/components/enterprisepolicies/content/aboutPolicies.html ++++ b/browser/components/enterprisepolicies/content/aboutPolicies.html +@@ -18,6 +18,7 @@ + + + ++ + + +
diff --git a/src/browser/components/preferences/preferences-xhtml.patch b/src/browser/components/preferences/preferences-xhtml.patch new file mode 100644 index 00000000..788b6451 --- /dev/null +++ b/src/browser/components/preferences/preferences-xhtml.patch @@ -0,0 +1,12 @@ +diff --git a/browser/components/preferences/preferences.xhtml b/browser/components/preferences/preferences.xhtml +index 9921e0307b4af54bbb6fa4d85e1a5d1d0fbf07a7..2c5db086f1320d2e334ed2c1988f515dc5cace3c 100644 +--- a/browser/components/preferences/preferences.xhtml ++++ b/browser/components/preferences/preferences.xhtml +@@ -63,6 +63,7 @@ + + + +