From a1e853bb9270a7ab4d49fb981c73f74e3e87a169 Mon Sep 17 00:00:00 2001 From: trickypr Date: Tue, 29 Nov 2022 19:48:34 +1100 Subject: [PATCH 01/19] =?UTF-8?q?=F0=9F=9A=A7=20Initial=20vertical=20tabs?= =?UTF-8?q?=20prototype?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 5 +- src/browser/base/content/browser-js.patch | 12 +++ .../base/content/browser-verticaltabs.js | 96 +++++++++++++++++++ src/browser/base/content/browser-xhtml.patch | 20 ++++ src/browser/base/jar-mn.patch | 12 +++ src/browser/themes/pulse/jar.inc.mn | 1 + src/browser/themes/pulse/vertical_tabs.css | 26 +++++ .../themes/shared/browser-shared-css.patch | 5 +- yarn.lock | 8 +- 9 files changed, 177 insertions(+), 8 deletions(-) create mode 100644 src/browser/base/content/browser-js.patch create mode 100644 src/browser/base/content/browser-verticaltabs.js create mode 100644 src/browser/base/content/browser-xhtml.patch create mode 100644 src/browser/base/jar-mn.patch create mode 100644 src/browser/themes/pulse/vertical_tabs.css diff --git a/package.json b/package.json index 4ed18ae2..e3b6c454 100644 --- a/package.json +++ b/package.json @@ -7,17 +7,18 @@ "license": "MPL-2.0", "private": true, "dependencies": { - "gluon-build": "^1.0.0-rc.2" + "gluon-build": "^1.0.0-rc.4" }, "scripts": { "build": "gluon build", "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/browser-js.patch b/src/browser/base/content/browser-js.patch new file mode 100644 index 00000000..1cd9150c --- /dev/null +++ b/src/browser/base/content/browser-js.patch @@ -0,0 +1,12 @@ +diff --git a/browser/base/content/browser.js b/browser/base/content/browser.js +index a9d4fc4abe1d3b5d5213d3afd90fd0128ee0d032..f2eb4888521deefa7da2b7666ec6012af2a27a4e 100644 +--- a/browser/base/content/browser.js ++++ b/browser/base/content/browser.js +@@ -1841,6 +1841,7 @@ var gBrowserInit = { + gPrivateBrowsingUI.init(); + BrowserSearch.init(); + BrowserPageActions.init(); ++ VerticalTabs.init(); + if (gToolbarKeyNavEnabled) { + ToolbarKeyboardNavigator.init(); + } diff --git a/src/browser/base/content/browser-verticaltabs.js b/src/browser/base/content/browser-verticaltabs.js new file mode 100644 index 00000000..ae0fdc0d --- /dev/null +++ b/src/browser/base/content/browser-verticaltabs.js @@ -0,0 +1,96 @@ +/* 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/. */ + +const VERTICAL_TABS_POSITION = 'browser.tabs.verticalPosition' + +var VerticalTabs = { + /** + * @return {Boolean} true if the vertical tabs feature is enabled. + */ + get verticalTabsEnabled() { + return Services.prefs.getBoolPref(VERTICAL_TABS_POSITION, false) + }, + + /** + * @return {HTMLElement} + */ + get tabsToolbar() { + return document.getElementById('TabsToolbar') + }, + + /** + * @return {HTMLElement} + */ + get titlebarContainer() { + return document.getElementById('titlebar') + }, + + /** + * @return {HTMLElement} + */ + get browserContainer() { + return document.getElementById('browser') + }, + + arrowScrollbox: null, + tabBrowserTabs: null, + + init() { + this.arrowScrollbox = document.getElementById('tabbrowser-arrowscrollbox') + this.tabBrowserTabs = document.getElementById('tabbrowser-tabs') + + Services.prefs.addObserver(VERTICAL_TABS_POSITION, this) + + if (this.verticalTabsEnabled) { + this.enableVerticalTabs() + } + }, + + enableVerticalTabs() { + console.log('enableVerticalTabs') + + this.browserContainer.prepend(this.tabsToolbar) + + setTimeout(() => { + this.arrowScrollbox.setAttribute('orient', 'vertical') + this.tabBrowserTabs.setAttribute('orient', 'vertical') + }, 50) + + this.resetTabBrowser() + }, + + disableVerticalTabs() { + console.log('disableVerticalTabs') + + this.titlebarContainer.prepend(this.tabsToolbar) + + setTimeout(() => { + this.arrowScrollbox.setAttribute('orient', 'horizontal') + this.tabBrowserTabs.setAttribute('orient', 'horizontal') + }, 50) + + this.resetTabBrowser() + }, + + resetTabBrowser() { + delete window.gBrowser._tabs + }, + + /** + * The handler for `Services.prefs.addObserver`. + */ + observe(_subject, topic, data) { + switch (topic) { + case 'nsPref:changed': + if (data === VERTICAL_TABS_POSITION) { + if (this.verticalTabsEnabled) { + this.enableVerticalTabs() + } else { + this.disableVerticalTabs() + } + } + break + } + }, +} diff --git a/src/browser/base/content/browser-xhtml.patch b/src/browser/base/content/browser-xhtml.patch new file mode 100644 index 00000000..384156d0 --- /dev/null +++ b/src/browser/base/content/browser-xhtml.patch @@ -0,0 +1,20 @@ +diff --git a/browser/base/content/browser.xhtml b/browser/base/content/browser.xhtml +index 8dfb7b3c787661b5541d77c0eddf408ee90c513f..2a8c13598f5d047bb2fbcbae0b1ee6032a50e9da 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); + 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-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 new file mode 100644 index 00000000..ec667ba7 --- /dev/null +++ b/src/browser/base/jar-mn.patch @@ -0,0 +1,12 @@ +diff --git a/browser/base/jar.mn b/browser/base/jar.mn +index 4239a2af4952c0c7ceafaae1d614925a960402bc..f53ab91867941b7282d71b4687ae8af7df47e621 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) + content/browser/browser-thumbnails.js (content/browser-thumbnails.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) + * content/browser/pageinfo/pageInfo.xhtml (content/pageinfo/pageInfo.xhtml) + content/browser/pageinfo/pageInfo.js (content/pageinfo/pageInfo.js) diff --git a/src/browser/themes/pulse/jar.inc.mn b/src/browser/themes/pulse/jar.inc.mn index f1dd059d..c1923250 100644 --- a/src/browser/themes/pulse/jar.inc.mn +++ b/src/browser/themes/pulse/jar.inc.mn @@ -8,5 +8,6 @@ # to the location of the actual manifest. * skin/classic/browser/pulse/sidebar_tabs.css (../pulse/sidebar_tabs.css) + skin/classic/browser/pulse/vertical_tabs.css (../pulse/vertical_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/vertical_tabs.css b/src/browser/themes/pulse/vertical_tabs.css new file mode 100644 index 00000000..aeeae181 --- /dev/null +++ b/src/browser/themes/pulse/vertical_tabs.css @@ -0,0 +1,26 @@ +#browser #TabsToolbar .titlebar-spacer, +#browser #TabsToolbar .titlebar-buttonbox-container, +#browser #TabsToolbar #alltabs-button { + display: none; +} + +#browser #TabsToolbar { + background-color: var(--lwt-accent-color-inactive, var(--lwt-accent-color)); +} + +#browser #TabsToolbar .tabbrowser-tab { + max-width: initial; + width: 100%; +} + +/* Work around for tab closing animation whilst in vertical tabs. Without this + the clean up code (created by 608589) will not work correctly */ +/* TODO: This means the old tabs stick around for 3 seconds rather than + disappearing instantly. Need to find the root cause of this */ +#browser #TabsToolbar .tabbrowser-tab:not([pinned], [fadein]) { + max-width: 0.1px; +} + +#browser #TabsToolbar tab.tabbrowser-tab:nth-child(1) { + margin-left: 0; +} diff --git a/src/browser/themes/shared/browser-shared-css.patch b/src/browser/themes/shared/browser-shared-css.patch index 9cf002a9..2cec70c8 100644 --- a/src/browser/themes/shared/browser-shared-css.patch +++ b/src/browser/themes/shared/browser-shared-css.patch @@ -1,12 +1,13 @@ diff --git a/browser/themes/shared/browser-shared.css b/browser/themes/shared/browser-shared.css -index b3f83092c310fe2378f79d5a07726ad8c215e2a3..c4b32e71b153a02c8505a2f879321c7006fd76a2 100644 +index b3f83092c310fe2378f79d5a07726ad8c215e2a3..d54dba549d4d3808671e03cc7747248186b1abdf 100644 --- a/browser/themes/shared/browser-shared.css +++ b/browser/themes/shared/browser-shared.css -@@ -23,6 +23,8 @@ +@@ -23,6 +23,9 @@ @import url("chrome://browser/skin/customizableui/customizeMode.css"); @import url("chrome://browser/skin/UITour.css"); +@import url("chrome://browser/skin/pulse/sidebar_tabs.css"); ++@import url("chrome://browser/skin/pulse/vertical_tabs.css"); + @namespace html url("http://www.w3.org/1999/xhtml"); diff --git a/yarn.lock b/yarn.lock index 138ab251..62c4484d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -339,10 +339,10 @@ globrex@^0.1.2: resolved "https://registry.yarnpkg.com/globrex/-/globrex-0.1.2.tgz#dd5d9ec826232730cd6793a5e33a9302985e6098" integrity sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg== -gluon-build@^1.0.0-rc.2: - version "1.0.0-rc.2" - resolved "https://registry.yarnpkg.com/gluon-build/-/gluon-build-1.0.0-rc.2.tgz#f2c1a45508df858885823bdb75137afa4755d067" - integrity sha512-BR5Y91tC1NE0RthLYZFYks0FwRMI1p3cK9iVOCHJ1WUflf1lTvtNoHiD9efEsGnhpvAH4uXx1gE2RQovfdG5fw== +gluon-build@^1.0.0-rc.4: + version "1.0.0-rc.4" + resolved "https://registry.yarnpkg.com/gluon-build/-/gluon-build-1.0.0-rc.4.tgz#4f8f5372029932f70a26b4b06110215126f65489" + integrity sha512-vcpbfouLHYqDRC0yyil2baOhSAxYB/XhMXq0FZH7QD6dAoKBj8wVP2Moc3WDyvneED4HxgXoiupGxtbNFdUTog== dependencies: "@resvg/resvg-js" "^1.4.0" async-icns "^1.0.2" From 08f513258a3ae9e5c4de01c274483bd25e14fe4c Mon Sep 17 00:00:00 2001 From: trickypr Date: Tue, 29 Nov 2022 20:50:36 +1100 Subject: [PATCH 02/19] =?UTF-8?q?=F0=9F=92=84=20Better=20UI=20for=20newtab?= =?UTF-8?q?=20button=20etc?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/content/browser-verticaltabs.js | 45 ++++++++++--------- src/browser/themes/pulse/vertical_tabs.css | 9 ++++ 2 files changed, 34 insertions(+), 20 deletions(-) diff --git a/src/browser/base/content/browser-verticaltabs.js b/src/browser/base/content/browser-verticaltabs.js index ae0fdc0d..04b58ed2 100644 --- a/src/browser/base/content/browser-verticaltabs.js +++ b/src/browser/base/content/browser-verticaltabs.js @@ -1,8 +1,9 @@ /* 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/. */ +// @ts-check -const VERTICAL_TABS_POSITION = 'browser.tabs.verticalPosition' +const VERTICAL_TABS_POSITION = 'pulse.tabs.vertical' var VerticalTabs = { /** @@ -13,27 +14,29 @@ var VerticalTabs = { }, /** - * @return {HTMLElement} + * @return {HTMLElement?} */ get tabsToolbar() { return document.getElementById('TabsToolbar') }, /** - * @return {HTMLElement} + * @return {HTMLElement?} */ get titlebarContainer() { return document.getElementById('titlebar') }, /** - * @return {HTMLElement} + * @return {HTMLElement?} */ get browserContainer() { return document.getElementById('browser') }, + /** @type {HTMLElement?} */ arrowScrollbox: null, + /** @type {HTMLElement?} */ tabBrowserTabs: null, init() { @@ -50,31 +53,33 @@ var VerticalTabs = { enableVerticalTabs() { console.log('enableVerticalTabs') - this.browserContainer.prepend(this.tabsToolbar) + this.browserContainer?.prepend(this.tabsToolbar || '') - setTimeout(() => { - this.arrowScrollbox.setAttribute('orient', 'vertical') - this.tabBrowserTabs.setAttribute('orient', 'vertical') - }, 50) + this.arrowScrollbox?.setAttribute('orient', 'vertical') + this.tabBrowserTabs?.setAttribute('orient', 'vertical') - this.resetTabBrowser() + document + .getElementById('navigator-toolbox-background') + ?.setAttribute('verticaltabs', 'true') + document + .querySelector('#TabsToolbar .toolbar-items') + ?.setAttribute('align', 'start') }, disableVerticalTabs() { console.log('disableVerticalTabs') - this.titlebarContainer.prepend(this.tabsToolbar) + this.titlebarContainer?.prepend(this.tabsToolbar || '') - setTimeout(() => { - this.arrowScrollbox.setAttribute('orient', 'horizontal') - this.tabBrowserTabs.setAttribute('orient', 'horizontal') - }, 50) + this.arrowScrollbox?.setAttribute('orient', 'horizontal') + this.tabBrowserTabs?.setAttribute('orient', 'horizontal') - this.resetTabBrowser() - }, - - resetTabBrowser() { - delete window.gBrowser._tabs + document + .getElementById('navigator-toolbox-background') + ?.removeAttribute('verticaltabs') + document + .querySelector('#TabsToolbar .toolbar-items') + ?.setAttribute('align', 'end') }, /** diff --git a/src/browser/themes/pulse/vertical_tabs.css b/src/browser/themes/pulse/vertical_tabs.css index aeeae181..1f680883 100644 --- a/src/browser/themes/pulse/vertical_tabs.css +++ b/src/browser/themes/pulse/vertical_tabs.css @@ -13,6 +13,15 @@ width: 100%; } +/* Put the new tab button on the bottom */ +#browser #TabsToolbar #TabsToolbar-customization-target { + -moz-box-orient: vertical; +} + +#browser #TabsToolbar #new-tab-button { + margin: 8px; +} + /* Work around for tab closing animation whilst in vertical tabs. Without this the clean up code (created by 608589) will not work correctly */ /* TODO: This means the old tabs stick around for 3 seconds rather than From d8fafbc2e1bd2cbdbf80636be822c7f37d344d47 Mon Sep 17 00:00:00 2001 From: trickypr Date: Tue, 29 Nov 2022 20:52:23 +1100 Subject: [PATCH 03/19] =?UTF-8?q?=F0=9F=92=84=20Bring=20back=20client=20si?= =?UTF-8?q?de=20close=20button?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../content/navigator-toolbox-inc-xhtml.patch | 15 +++++++++++++++ src/browser/themes/pulse/vertical_tabs.css | 17 +++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 src/browser/base/content/navigator-toolbox-inc-xhtml.patch diff --git a/src/browser/base/content/navigator-toolbox-inc-xhtml.patch b/src/browser/base/content/navigator-toolbox-inc-xhtml.patch new file mode 100644 index 00000000..a5e1cbba --- /dev/null +++ b/src/browser/base/content/navigator-toolbox-inc-xhtml.patch @@ -0,0 +1,15 @@ +diff --git a/browser/base/content/navigator-toolbox.inc.xhtml b/browser/base/content/navigator-toolbox.inc.xhtml +index 8071a5fa5e1f3ba3dfd0345fa1e3284082eb2e39..c6d6d3b08f033ff207daa44074f8422e51b52640 100644 +--- a/browser/base/content/navigator-toolbox.inc.xhtml ++++ b/browser/base/content/navigator-toolbox.inc.xhtml +@@ -475,6 +475,10 @@ + consumeanchor="PanelUI-button" + data-l10n-id="appmenu-menu-button-closed2"/> + ++ ++# Intended for the vertical tabs view, should be hidden by default ++#include titlebar-items.inc.xhtml ++ + + + Date: Tue, 29 Nov 2022 21:21:53 +1100 Subject: [PATCH 04/19] =?UTF-8?q?=F0=9F=92=84=20Assorted=20cleanup=20for?= =?UTF-8?q?=20mozilla=20dark?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/browser/themes/pulse/addons/shared.css | 10 +++++----- src/browser/themes/pulse/vertical_tabs.css | 13 +++++++++---- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/src/browser/themes/pulse/addons/shared.css b/src/browser/themes/pulse/addons/shared.css index ac843daa..add84f9d 100644 --- a/src/browser/themes/pulse/addons/shared.css +++ b/src/browser/themes/pulse/addons/shared.css @@ -90,11 +90,6 @@ tab.tabbrowser-tab:nth-child(1) { overflow-clip-margin: 8px !important; } -/* #tabbrowser-tabs:not([movingtab]) > #tabbrowser-arrowscrollbox > .tabbrowser-tab > .tab-stack > .tab-background[multiselected="true"]:-moz-lwtheme, #tabbrowser-tabs:not([movingtab]) > #tabbrowser-arrowscrollbox > .tabbrowser-tab > .tab-stack > .tab-background[selected="true"]:-moz-lwtheme { - -moz-context-properties: fill; - fill: var(--lwt-selected-tab-background-color); -} */ - .tab-background[selected='true']::before, .tab-background[selected='true']::after { content: ''; @@ -135,6 +130,11 @@ tab.tabbrowser-tab:nth-child(1) { border-radius: var(--toolbarbutton-border-radius) !important; } +/* Vertical tab new button stuff */ +#browser #TabsToolbar #new-tab-button { + margin: 8px; +} + /* ========================================================================== */ /* Sidebar tabs */ .sidebar-item-background[checked='true']::before, diff --git a/src/browser/themes/pulse/vertical_tabs.css b/src/browser/themes/pulse/vertical_tabs.css index bb560aa5..e85a076c 100644 --- a/src/browser/themes/pulse/vertical_tabs.css +++ b/src/browser/themes/pulse/vertical_tabs.css @@ -19,10 +19,6 @@ -moz-box-orient: vertical; } -#browser #TabsToolbar #new-tab-button { - margin: 8px; -} - /* Work around for tab closing animation whilst in vertical tabs. Without this the clean up code (created by 608589) will not work correctly */ /* TODO: This means the old tabs stick around for 3 seconds rather than @@ -50,3 +46,12 @@ .titlebar-buttonbox-container { display: none; } + +/* This fixes some consistencies with which buttons should be visible */ +#browser #tabbrowser-arrowscrollbox-periphery { + display: none; +} + +#browser #new-tab-button { + display: inherit !important; +} From 2c0ec4425f3c70992deb196902bdd332e4fbd60d Mon Sep 17 00:00:00 2001 From: trickypr Date: Tue, 29 Nov 2022 21:25:28 +1100 Subject: [PATCH 05/19] =?UTF-8?q?=F0=9F=92=84=20Fix=20colors=20in=20system?= =?UTF-8?q?=20theme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/browser/themes/pulse/vertical_tabs.css | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/browser/themes/pulse/vertical_tabs.css b/src/browser/themes/pulse/vertical_tabs.css index e85a076c..604f15e0 100644 --- a/src/browser/themes/pulse/vertical_tabs.css +++ b/src/browser/themes/pulse/vertical_tabs.css @@ -5,10 +5,14 @@ } #browser #TabsToolbar { - background-color: var(--lwt-accent-color-inactive, var(--lwt-accent-color)); + background-color: -moz-Dialog; max-width: 350px; } +#browser #TabsToolbar:-moz-lwtheme { + background-color: var(--lwt-accent-color-inactive, var(--lwt-accent-color)); +} + #browser #TabsToolbar .tabbrowser-tab { max-width: initial; width: 100%; @@ -34,7 +38,7 @@ /* Border radius up at the top left of the browser when vertical tabs are enabled */ @media (-moz-gtk-csd-available) { :root[tabsintitlebar][sizemode='normal']:not([gtktiledwindow='true']) - #navigator-toolbox-background[verticaltabs='true']:-moz-lwtheme + #navigator-toolbox-background[verticaltabs='true'] #nav-bar { border-top-left-radius: env(-moz-gtk-csd-titlebar-radius); border-top-right-radius: env(-moz-gtk-csd-titlebar-radius); From 30493b8532bfe87ca8fb0a20a48c23b1935b688a Mon Sep 17 00:00:00 2001 From: trickypr Date: Tue, 29 Nov 2022 21:33:04 +1100 Subject: [PATCH 06/19] =?UTF-8?q?=F0=9F=92=84=20Fix=20Alpenglow=20theme=20?= =?UTF-8?q?for=20tabs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/browser/themes/pulse/vertical_tabs.css | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/browser/themes/pulse/vertical_tabs.css b/src/browser/themes/pulse/vertical_tabs.css index 604f15e0..b7e446b7 100644 --- a/src/browser/themes/pulse/vertical_tabs.css +++ b/src/browser/themes/pulse/vertical_tabs.css @@ -10,6 +10,11 @@ } #browser #TabsToolbar:-moz-lwtheme { + background-image: var(--lwt-additional-images); + background-repeat: no-repeat, no-repeat, no-repeat; + background-position: center; + background-size: cover; + background-color: var(--lwt-accent-color-inactive, var(--lwt-accent-color)); } From 6a55c84d624633626d4efb51e3c88443a6619e6e Mon Sep 17 00:00:00 2001 From: trickypr Date: Tue, 29 Nov 2022 21:43:42 +1100 Subject: [PATCH 07/19] =?UTF-8?q?=E2=9C=A8=20Add=20vertical=20tab=20prefer?= =?UTF-8?q?ence=20page?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/preferences/main-inc-xhtml.patch | 13 +++++++++++-- src/browser/components/preferences/main-js.patch | 6 +++--- .../en-US/browser/preferences/preferences-ftl.patch | 11 ++++++----- 3 files changed, 20 insertions(+), 10 deletions(-) diff --git a/src/browser/components/preferences/main-inc-xhtml.patch b/src/browser/components/preferences/main-inc-xhtml.patch index 683438b3..0ccbb7de 100644 --- a/src/browser/components/preferences/main-inc-xhtml.patch +++ b/src/browser/components/preferences/main-inc-xhtml.patch @@ -1,8 +1,8 @@ diff --git a/browser/components/preferences/main.inc.xhtml b/browser/components/preferences/main.inc.xhtml -index 3d4035690d38f4d851cc86749ebeec7b7ca9aaf2..e9136a52427d7f3ada87803373f16c20a25b066a 100644 +index fdf515554d67c5082b0d9c73b72533e06a085030..8ebf00f65ab6d662110a0ce211f05958364cedcb 100644 --- a/browser/components/preferences/main.inc.xhtml +++ b/browser/components/preferences/main.inc.xhtml -@@ -125,6 +125,15 @@ +@@ -122,6 +122,24 @@ @@ -14,6 +14,15 @@ index 3d4035690d38f4d851cc86749ebeec7b7ca9aaf2..e9136a52427d7f3ada87803373f16c20 + preference="pulse.sidebar.enabled" + data-l10n-id="preferences-sidebar-visible"/> + ++ ++ ++ + -+ -+ -+ +