diff --git a/CREDITS b/CREDITS
index 0a4527e..6c59f6d 100644
--- a/CREDITS
+++ b/CREDITS
@@ -19,6 +19,17 @@ N: Yunsup Sim
E: pedogunu@gmail.com
W: https://ethansup.net
+----------
+ Sponsors
+
+N: Jani Haiko
+E: haiko.jani@gmail.com
+W: https://github.com/ojaha065
+
+N: nikkehtine
+E: nikkehtine@int.pl
+W: https://github.com/nikkehtine
+
----------
Contributors
diff --git a/css/leptonChrome.css b/css/leptonChrome.css
index cd9eb72..bd3c231 100644
--- a/css/leptonChrome.css
+++ b/css/leptonChrome.css
@@ -1422,6 +1422,7 @@
/* or var(--lwt-sidebar-highlight-background-color)
If this value is used, unset is required in the default theme.
*/
+ background-color: var(--menuitem-hover-background-color) !important;
}
/* Fallback background - Set to Legacy. It will be removed Next update
@@ -1452,17 +1453,17 @@
}
/*== Info Bar Color ==========================================================*/
.container.infobar {
- background-color: var(--urlbar-box-bgcolor);
+ background-color: var(--urlbar-box-bgcolor) !important;
}
.notification-button {
- background-color: var(--button-bgcolor);
+ background-color: var(--button-bgcolor) !important;
}
.notification-button:hover {
- background-color: var(--button-hover-bgcolor);
+ background-color: var(--button-hover-bgcolor) !important;
}
.notification-button:hover:active {
- background-color: var(--button-active-bgcolor);
+ background-color: var(--button-active-bgcolor) !important;
}
html|button.ghost-button:not(.semi-transparent):enabled:hover {
@@ -2940,7 +2941,9 @@
#protections-popup-footer .protections-popup-footer-button,
#protections-popup-multiView .panel-subview-footer-button,
#identity-popup-clear-sitedata-button,
- #identity-popup-more-info {
+ #identity-popup-more-info,
+ #unified-extensions-manage-extensions,
+ .unified-extensions-item-open-menu {
cursor: pointer !important;
}
@@ -3270,21 +3273,34 @@
}
@supports -moz-bool-pref("userChrome.rounding.square_button") {
:root {
- --toolbarbutton-border-radius: 0 !important;
+ --urlbar-icon-border-radius: 0 !important;
+ /* Original: calc(var(--toolbarbutton-border-radius) - 1px); */
+ }
+
+ .toolbarbutton-1,
+ .toolbarbutton-icon,
+ .panel-info-button,
+ .searchbar-engine-one-off-item,
+ .urlbarView-button,
+ .urlbarView-tip-button,
+ .urlbarView-action,
+ toolbarbutton.bookmark-item:not(.subviewbutton),
+ #sidebar-switcher-target {
+ --toolbarbutton-border-radius: 0;
/* Original: 4px */
}
- button {
+ button,
+ findbar toolbarbutton,
+ .notification-button {
border-radius: 0 !important;
}
}
-@supports -moz-bool-pref("userChrome.rounding.square_tab") or -moz-bool-pref("userChrome.round.square_button") {
+@supports -moz-bool-pref("userChrome.rounding.square_tab") or -moz-bool-pref("userChrome.rounding.square_button") {
/* Fix Tab bar button radius */
- #TabsToolbar .toolbarbutton-1:not(#tabs-newtab-button) > .toolbarbutton-icon,
- #TabsToolbar .toolbarbutton-1:not(#tabs-newtab-button) > .toolbarbutton-text,
- #TabsToolbar .toolbarbutton-1:not(#tabs-newtab-button) > .toolbarbutton-badge-stack,
+ #TabsToolbar .toolbarbutton-1:not(#tabs-newtab-button),
.tab-close-button {
- --tab-border-radius: var(--toolbarbutton-border-radius) !important;
+ --tab-border-radius: var(--toolbarbutton-border-radius);
}
}
@supports -moz-bool-pref("userChrome.rounding.square_panel") {
@@ -3318,6 +3334,17 @@
html|input {
border-radius: 0 !important;
}
+
+ #urlbar-input-container,
+ #urlbar-background,
+ #searchbar {
+ --toolbarbutton-border-radius: 0;
+ }
+}
+@supports -moz-bool-pref("userChrome.rounding.square_urlView_item") {
+ .urlbarView-row-inner {
+ --toolbarbutton-border-radius: 0;
+ }
}
@supports -moz-bool-pref("userChrome.rounding.square_checklabel") {
.checkbox-check,
@@ -3775,7 +3802,7 @@
#urlbar[breakout][breakout-extend] > #urlbar-input-container {
height: var(--urlbar-height) !important;
padding-block: 0 !important;
- padding-inline: 0 !important;
+ padding-inline: var(--urlbar-container-padding, 0px) !important;
}
#urlbar[breakout][breakout-extend] > #urlbar-background {
@@ -3796,7 +3823,7 @@
/*= BookMark Bar - Reduce Height =============================================*/
@supports -moz-bool-pref("userChrome.padding.bookmarkbar") {
:root[uidensity="compact"] #PersonalToolbar toolbarbutton {
- margin-top: 0px;
+ margin-top: 0px !important;
/* Original: 2px */
}
}
@@ -4018,7 +4045,7 @@
/*= Panel - Reduce padding ===================================================*/
@supports -moz-bool-pref("userChrome.padding.panel") {
:root {
- --arrowpanel-menuitem-margin: 0 var(--arrowpanel-menuicon-padding) !important;
+ --arrowpanel-menuitem-margin: 0 var(--arrowpanel-menuicon-padding, 8px) !important;
/* Original: 0 8px */
--arrowpanel-menuitem-padding-block: 5px !important;
/* Original: 8px */
@@ -4082,7 +4109,7 @@
/* not cut off for Protection popup Footer on windows */
:root[uidensity="compact"] #protections-popup-multiView #protections-popup-footer {
- padding: 3px 0 10px !important;
+ padding: 0 !important;
}
/* Button and disabled category in Protection popup */
@@ -6331,7 +6358,7 @@
@supports not -moz-bool-pref("userChrome.tabbar.multi_row") {
#TabsToolbar:not([multibar]) {
- overflow: hidden;
+ overflow: clip;
/* Prevent toolbar area over */
}
}
@@ -6868,7 +6895,9 @@
}
}
/*= Selected Tab - Photon like contextline ===================================*/
-@supports -moz-bool-pref("userChrome.tab.photon_like_contextline") {
+@supports -moz-bool-pref("userChrome.tab.photon_like_contextline") or -moz-bool-pref("userChrome.tab.static_separator") or -moz-bool-pref(
+ "userChrome.tab.bar_separator"
+ ) {
:root[lwtheme-mozlightdark] #tabbrowser-tabs,
:root[style*="--lwt-accent-color: rgb(240, 240, 244); --lwt-text-color: rgba(21, 20, 26);"],
:root[style*="--lwt-accent-color: rgb(28, 27, 34); --lwt-text-color: rgba(251, 251, 254);"] {
@@ -6881,6 +6910,8 @@
/* -moz-accent-color */
}
}
+}
+@supports -moz-bool-pref("userChrome.tab.photon_like_contextline") {
.tab-context-line {
display: -moz-inline-box !important;
height: 2px !important;
@@ -7108,6 +7139,14 @@
.tab-stack::before {
opacity: 0 !important;
}
+
+ :root:not([uidensity="compact"]) #tabs-newtab-button > .toolbarbutton-icon {
+ margin-left: 2px;
+ }
+
+ :root[uidensity="compact"] #tabs-newtab-button > .toolbarbutton-icon {
+ margin-left: 1px;
+ }
}
/* Animate */
@media (prefers-reduced-motion: no-preference) {
@@ -7188,6 +7227,53 @@
}
}
}
+/*= Unselected Tab - Bar Separator ===========================================*/
+@supports -moz-bool-pref("userChrome.tab.bar_separator") {
+ .tab-stack::before {
+ /* Box Model */
+ content: "";
+ display: block;
+ position: absolute;
+ /* Position */
+ top: 50%;
+ left: 0%;
+ transform: translateX(calc((var(--inline-tab-padding) - 5px) / 2)) translateY(calc(-50% + var(--tab-block-margin)));
+ z-index: 1;
+ /* Bar shape */
+ width: 3px;
+ height: 20px;
+ /* Bar Color */
+ background-color: var(--uc-bar-separator-color, var(--tab-line-color, var(--lwt-tab-line-color, #0a84ff)));
+ }
+ @media (prefers-reduced-motion: no-preference) {
+ .tab-stack::before {
+ transition-property: opacity, background-color;
+ transition-duration: 0.2s;
+ transition-timing-function: var(--animation-easing-function);
+ /* cubic-bezier(.07, .95, 0, 1) */
+ }
+ }
+
+ :root[sessionrestored] .tabbrowser-tab[busy] .tab-stack::before {
+ --uc-bar-separator-color: currentColor;
+ opacity: 0.7;
+ }
+ :root[sessionrestored] .tabbrowser-tab[busy][progress] .tab-stack::before {
+ --uc-bar-separator-color: var(--tab-loading-fill);
+ opacity: 1;
+ }
+ :root[sessionrestored]
+ #TabsToolbar[brighttext]
+ .tabbrowser-tab[busy][progress]:not([selected="true"])
+ .tab-stack::before {
+ --uc-bar-separator-color: var(--lwt-tab-loading-fill-inactive, #84c1ff);
+ }
+ @supports -moz-bool-pref("userChrome.tab.unloaded") {
+ :root[sessionrestored] .tabbrowser-tab[pending] .tab-stack::before {
+ opacity: 0.7;
+ }
+ }
+}
/*= New tab button ============================================================*/
/*= New tab button - Looks like tab ==========================================*/
@supports -moz-bool-pref("userChrome.tab.newtab_button_like_tab") {
@@ -7323,18 +7409,10 @@
:root:not([uidensity="touch"]) #tabs-newtab-button > .toolbarbutton-icon {
--toolbarbutton-inner-padding: calc((var(--tab-min-height) - 16px) / 2 - 1px);
}
-
- :root:not([uidensity="compact"]) #tabs-newtab-button > .toolbarbutton-icon {
- margin-left: 2px;
- }
-
- :root[uidensity="compact"] #tabs-newtab-button > .toolbarbutton-icon {
- margin-left: 1px;
- }
}
/*= Unloaded Tab - Contents Opacity ===========================================*/
@supports -moz-bool-pref("userChrome.tab.unloaded") {
- #tabbrowser-tabs .tabbrowser-tab[pending] .tab-content {
+ .tabbrowser-tab[pending] .tab-content {
opacity: 0.7;
}
}
@@ -7629,8 +7707,7 @@
.tabbrowser-tab:not([pinned], [sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])
.tab-label-container[labeldirection="rtl"],
.tabbrowser-tab:not([pinned], [sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])
- .tab-label-container
- :not([labeldirection]):-moz-locale-dir(rtl) {
+ .tab-label-container:not([labeldirection]):-moz-locale-dir(rtl) {
--uc-sound-tab-label-position-x: -4px;
}
.tabbrowser-tab:not([pinned], [sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])
@@ -7650,8 +7727,7 @@
.tabbrowser-tab:not([pinned], [sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])
.tab-label-container[labeldirection="rtl"],
.tabbrowser-tab:not([pinned], [sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])
- .tab-label-container
- :not([labeldirection]):-moz-locale-dir(rtl) {
+ .tab-label-container:not([labeldirection]):-moz-locale-dir(rtl) {
--uc-sound-tab-label-position-x: -4px;
}
.tabbrowser-tab:not([pinned], [sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])
@@ -7680,7 +7756,7 @@
--uc-sound-tab-no-icon-label-position-x: 3px;
}
.tabbrowser-tab .tab-label-container[labeldirection="rtl"],
- .tabbrowser-tab .tab-label-container :not([labeldirection]):-moz-locale-dir(rtl) {
+ .tabbrowser-tab .tab-label-container:not([labeldirection]):-moz-locale-dir(rtl) {
--uc-sound-tab-no-icon-position-x: 0.5px;
--uc-sound-tab-no-icon-label-position-x: -3px;
}
@@ -7988,6 +8064,13 @@
display: block !important;
}
}
+/*= Url View - Item Focus Border =============================================*/
+@supports -moz-bool-pref("userChrome.urlView.focus_item_border") {
+ .urlbarView-row:not([type="tip"], [type="dynamic"])[selected] > .urlbarView-row-inner,
+ .urlbarView-row-inner[selected] {
+ box-shadow: 3px 0 var(--toolbar-field-focus-border-color) inset !important;
+ }
+}
/** Panel UI ******************************************************************/
@supports -moz-bool-pref("userChrome.panel.remove_strip") {
#appMenu-fxa-separator {
@@ -8476,6 +8559,50 @@
.tab-secondary-label {
overflow: hidden;
}
+
+ @supports -moz-bool-pref("userChrome.tab.sound_with_favicons") {
+ @supports not -moz-bool-pref("userChrome.hidden.tab_icon") {
+ .tabbrowser-tab:not([sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])[pinned]
+ .tab-label-container[labeldirection="ltr"],
+ .tabbrowser-tab:not([sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])[pinned]
+ .tab-label-container:not([labeldirection]):-moz-locale-dir(ltr) {
+ --uc-sound-tab-label-position-x: 2px;
+ }
+ .tabbrowser-tab:not([sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])[pinned]
+ .tab-label-container[labeldirection="rtl"],
+ .tabbrowser-tab:not([sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])[pinned]
+ .tab-label-container:not([labeldirection]):-moz-locale-dir(rtl) {
+ --uc-sound-tab-label-position-x: -2px;
+ }
+ .tabbrowser-tab:not([sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])
+ .tab-label-container::before {
+ transform: translateX(var(--uc-sound-tab-label-position-x, 0px));
+ }
+ }
+ @supports -moz-bool-pref("userChrome.hidden.tab_icon") {
+ @supports not -moz-bool-pref("userChrome.hidden.tab_icon.always") {
+ .tabbrowser-tab:not([sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])[pinned]
+ .tab-label-container[labeldirection="ltr"],
+ .tabbrowser-tab:not([sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])[pinned]
+ .tab-label-container:not([labeldirection]):-moz-locale-dir(ltr) {
+ --uc-sound-tab-label-position-x: 2px;
+ }
+ .tabbrowser-tab:not([sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])[pinned]
+ .tab-label-container[labeldirection="rtl"],
+ .tabbrowser-tab:not([sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])[pinned]
+ .tab-label-container:not([labeldirection]):-moz-locale-dir(rtl) {
+ --uc-sound-tab-label-position-x: -2px;
+ }
+ .tabbrowser-tab:not([sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])
+ .tab-label-container::before {
+ transform: translateX(var(--uc-sound-tab-label-position-x, 0px));
+ }
+ }
+ }
+ .tab-label-container::beforee {
+ transition: transform 0.25s var(--animation-easing-function);
+ }
+ }
}
/*= Counter for Bookmark menu ================================================*/
@supports -moz-bool-pref("userChrome.counter.bookmark_menu") {
@@ -8756,10 +8883,15 @@
or -moz-bool-pref("userChrome.autohide.infobar") {
#navigator-toolbox {
position: relative;
+ }
+ #navigator-toolbox:is(:hover, :focus-within) {
z-index: 2;
}
+ #navigator-toolbox:is(:hover, :focus-within) #PersonalToolbar {
+ z-index: -1;
+ }
- #navigator-toolbox:not(:hover) {
+ #navigator-toolbox:not(:hover):not(:focus-within) {
animation: 1s keepfront;
}
@@ -8902,16 +9034,18 @@
will-change: margin-bottom;
}
+ #TabsToolbar:not([customizing]) {
+ will-change: opacity;
+ }
@supports not -moz-bool-pref("userChrome.tabbar.on_bottom") {
- #TabsToolbar:not([customizing]) {
+ #TabsToolbar:not([customizing]),
+ #TabsToolbar:not([customizing]) .titlebar-buttonbox-container {
opacity: 0;
- will-change: opacity;
}
}
@supports -moz-bool-pref("userChrome.tabbar.on_bottom") {
#TabsToolbar:not([customizing]) > *:not(.titlebar-buttonbox-container) {
opacity: 0;
- will-change: opacity;
}
}
@@ -8919,7 +9053,8 @@
margin-bottom: 0px;
}
@supports not -moz-bool-pref("userChrome.tabbar.on_bottom") {
- #navigator-toolbox:is(:hover, :focus-within) #TabsToolbar {
+ #navigator-toolbox:is(:hover, :focus-within) #TabsToolbar,
+ #navigator-toolbox:is(:hover, :focus-within) #TabsToolbar .titlebar-buttonbox-container {
opacity: 1;
}
}
@@ -8936,16 +9071,18 @@
will-change: margin-bottom;
}
+ #TabsToolbar:not([customizing]) {
+ will-change: opacity;
+ }
@supports not -moz-bool-pref("userChrome.tabbar.on_bottom") {
- #TabsToolbar:not([customizing]) {
+ #TabsToolbar:not([customizing]),
+ #TabsToolbar:not([customizing]) .titlebar-buttonbox-container {
opacity: 0;
- will-change: opacity;
}
}
@supports -moz-bool-pref("userChrome.tabbar.on_bottom") {
#TabsToolbar:not([customizing]) > *:not(.titlebar-buttonbox-container) {
opacity: 0;
- will-change: opacity;
}
}
@@ -8953,7 +9090,8 @@
margin-bottom: 0px;
}
@supports not -moz-bool-pref("userChrome.tabbar.on_bottom") {
- #navigator-toolbox:is(:hover, :focus-within) #TabsToolbar {
+ #navigator-toolbox:is(:hover, :focus-within) #TabsToolbar,
+ #navigator-toolbox:is(:hover, :focus-within) #TabsToolbar .titlebar-buttonbox-container {
opacity: 1;
}
}
@@ -8969,16 +9107,18 @@
will-change: margin-bottom;
}
+ #TabsToolbar:not([customizing]) {
+ will-change: opacity;
+ }
@supports not -moz-bool-pref("userChrome.tabbar.on_bottom") {
- #TabsToolbar:not([customizing]) {
+ #TabsToolbar:not([customizing]),
+ #TabsToolbar:not([customizing]) .titlebar-buttonbox-container {
opacity: 0;
- will-change: opacity;
}
}
@supports -moz-bool-pref("userChrome.tabbar.on_bottom") {
#TabsToolbar:not([customizing]) > *:not(.titlebar-buttonbox-container) {
opacity: 0;
- will-change: opacity;
}
}
@@ -8986,7 +9126,8 @@
margin-bottom: 0px;
}
@supports not -moz-bool-pref("userChrome.tabbar.on_bottom") {
- #navigator-toolbox:is(:hover, :focus-within) #TabsToolbar {
+ #navigator-toolbox:is(:hover, :focus-within) #TabsToolbar,
+ #navigator-toolbox:is(:hover, :focus-within) #TabsToolbar .titlebar-buttonbox-container {
opacity: 1;
}
}
@@ -9005,7 +9146,8 @@
}
@supports not -moz-bool-pref("userChrome.tabbar.on_bottom") {
- #TabsToolbar:not([customizing]) {
+ #TabsToolbar:not([customizing]),
+ #TabsToolbar:not([customizing]) .titlebar-buttonbox-container {
transition: opacity var(--uc-autohide-toolbar-speed) var(--animation-easing-function)
var(--uc-autohide-toolbar-delay) !important;
}
@@ -9024,7 +9166,8 @@
transition-delay: 0s !important;
}
@supports not -moz-bool-pref("userChrome.tabbar.on_bottom") {
- #navigator-toolbox:is(:hover, :focus-within) #TabsToolbar:not([customizing]) {
+ #navigator-toolbox:is(:hover, :focus-within) #TabsToolbar:not([customizing]),
+ #navigator-toolbox:is(:hover, :focus-within) #TabsToolbar:not([customizing]) .titlebar-buttonbox-container {
transition-delay: 0s !important;
}
}
@@ -9587,7 +9730,7 @@
#forward-button,
#clearDownloadsButton {
fill: currentColor !important;
- -moz-context-properties: fill !important;
+ -moz-context-properties: fill, fill-opacity, stroke !important;
}
/* Add */
@@ -9725,13 +9868,12 @@
.subviewbutton:not(#appMenu-proton-update-banner) > image {
fill: currentColor !important;
fill-opacity: var(--toolbarbutton-icon-fill-opacity) !important;
- -moz-context-properties: fill !important;
+ -moz-context-properties: fill, fill-opacity, stroke !important;
}
#appMenu-zoomReduce-button2 > .toolbarbutton-icon,
#appMenu-zoomEnlarge-button2 > .toolbarbutton-icon {
stroke: var(--zoom-controls-bgcolor, var(--button-bgcolor, ButtonFace)) !important;
- -moz-context-properties: fill, stroke !important;
}
#appMenu-zoomReduce-button2:not([disabled], [open], :active):is(:hover) > .toolbarbutton-icon,
@@ -9844,7 +9986,7 @@
@supports -moz-bool-pref("userChrome.icon.panel_full") {
#appMenu-save-file-button2 {
- list-style-image: url("chrome://browser/skin/save.svg");
+ list-style-image: url("../icons/toolbarButton-download.svg");
}
#appMenu-find-button2 {
@@ -9939,7 +10081,7 @@
/* Color */
fill: currentColor;
fill-opacity: var(--toolbarbutton-icon-fill-opacity);
- -moz-context-properties: fill;
+ -moz-context-properties: fill, fill-opacity, stroke;
background-size: 16px;
background-repeat: no-repeat;
background-position: left center;
@@ -10207,7 +10349,7 @@
/*= protections-popup ========================================================*/
#protections-popup-settings-button > .protections-popup-settings-icon,
#protections-popup-show-report-button > .protections-popup-show-report-icon {
- -moz-context-properties: fill;
+ -moz-context-properties: fill, fill-opacity, stroke;
fill: currentColor;
margin-inline-end: 1em;
}
@@ -10266,6 +10408,11 @@
#sidebarMenu-popup > .subviewbutton[data-l10n-id="sidebar-menu-close"] {
list-style-image: url("chrome://global/skin/icons/close.svg");
}
+
+ /*= unified-extensions-view ===================================================*/
+ #unified-extensions-manage-extensions {
+ list-style-image: url("chrome://mozapps/skin/extensions/extension.svg");
+ }
}
/** Menu - Icons Layout *******************************************************/
@supports -moz-bool-pref("userChrome.icon.menu") {
@@ -10293,9 +10440,10 @@
> menuitem,
.openintabs-menuitem,
#blockedPopupDontShowMessage,
- #BMB_viewBookmarksToolbar {
+ #BMB_viewBookmarksToolbar,
+ #context_openANewTab.tabmix-newtab-menu-icon {
/* Color */
- -moz-context-properties: fill, fill-opacity !important;
+ -moz-context-properties: fill, fill-opacity, stroke !important;
fill: currentColor !important;
/* Layout */
background-size: 16px !important;
@@ -10304,7 +10452,7 @@
}
#tabContextMenu > .tabmix-newtab-menu-icon {
- -moz-context-properties: fill, fill-opacity !important;
+ -moz-context-properties: fill, fill-opacity, stroke !important;
fill: currentColor !important;
}
@@ -10347,7 +10495,8 @@
> menuitem,
.openintabs-menuitem,
#blockedPopupDontShowMessage,
- #BMB_viewBookmarksToolbar {
+ #BMB_viewBookmarksToolbar,
+ #context_openANewTab.tabmix-newtab-menu-icon {
background-position: var(--uc-menu-background-position) var(--context-menu-background-padding) center !important;
padding-inline-start: var(--context-menu-background-padding) !important;
}
@@ -10406,7 +10555,8 @@
> menuitem,
.openintabs-menuitem,
#blockedPopupDontShowMessage,
- #BMB_viewBookmarksToolbar {
+ #BMB_viewBookmarksToolbar,
+ #context_openANewTab.tabmix-newtab-menu-icon {
background-position: left var(--context-menu-background-padding) center !important;
padding-inline-start: 0 !important;
}
@@ -10438,7 +10588,8 @@
> menuitem,
.openintabs-menuitem,
#blockedPopupDontShowMessage,
- #BMB_viewBookmarksToolbar {
+ #BMB_viewBookmarksToolbar,
+ #context_openANewTab.tabmix-newtab-menu-icon {
padding-inline-start: var(--menu-background-padding-default) !important;
margin-left: 0 !important;
}
@@ -10825,14 +10976,38 @@
}
/*= Tab Mix Plus =============================================================*/
- #context_openANewTab.tabmix-newtab-menu-icon {
- list-style-image: var(--menuitem-image) !important;
+ @media (-moz-os-version: windows-win7),
+ (-moz-platform: windows-win7),
+ (-moz-os-version: windows-win8),
+ (-moz-platform: windows-win8),
+ (-moz-os-version: windows-win10),
+ (-moz-platform: windows-win10) {
+ #context_openANewTab.tabmix-newtab-menu-icon .menu-iconic-left {
+ display: none;
+ }
+ }
+
+ @supports -moz-bool-pref("userChrome.icon.menu.full") {
+ #tm-duplicateinWin {
+ --menuitem-image: url("../icons/tab-desktop-multiple-bottom.svg");
+ }
+
+ #tm-mergeWindowsTab {
+ --menuitem-image: url("../icons/merge.svg");
+ }
+ }
+ #tm-renameTab {
+ --menuitem-image: url("chrome://global/skin/icons/edit.svg");
}
#tm-copyTabUrl {
--menuitem-image: url("../icons/link.svg");
}
+ #tm-autoreloadTab_menu {
+ --menuitem-image: url("../icons/timer10.svg");
+ }
+
#context_reloadTabOptions {
--menuitem-image: url("../icons/reload.svg");
}
@@ -10847,6 +11022,14 @@
}
}
+ #tm-docShell {
+ --menuitem-image: url("chrome://browser/skin/permissions.svg");
+ }
+
+ #tm-freezeTab {
+ --menuitem-image: url("../icons/weather-snowflake.svg");
+ }
+
#tm-protectTab {
--menuitem-image: url("../icons/shield-task.svg");
}
@@ -10919,7 +11102,7 @@
}
#context-savelink {
- --menuitem-image: url("chrome://browser/skin/save.svg");
+ --menuitem-image: url("../icons/toolbarButton-download.svg");
}
#context-savelinktopocket {
@@ -11049,7 +11232,7 @@
}
#context-savepage {
- --menuitem-image: url("chrome://browser/skin/save.svg");
+ --menuitem-image: url("../icons/toolbarButton-download.svg");
}
#context-pocket {
@@ -11161,7 +11344,7 @@
/* iconic */
}
- @supports -moz-bool-pref("widget.macos.native-context-menus") or -moz-bool-pref("widget.gtk.native-context-menus") {
+ @supports -moz-bool-pref("layout.css.osx-font-smoothing.enabled") {
#context-back {
--menuitem-image: url("chrome://browser/skin/back.svg");
}
@@ -11184,13 +11367,53 @@
}
/*= Tab Mix Plus =============================================================*/
#tm-autoreload_menu {
- --menuitem-image: url("../icons/reload-auto.svg");
+ --menuitem-image: url("../icons/timer10.svg");
+ }
+
+ #tm-linkWithhistory {
+ --menuitem-image: url("../icons/new-tab-skip-forward.svg");
}
#tm-openAllLinks {
--menuitem-image: url("../icons/new-tab-multiple.svg");
}
+ #tm-openinverselink {
+ --menuitem-image: url("../icons/new-tab-forward.svg");
+ }
+
+ #tm-content-closetab {
+ --menuitem-image: url("../icons/dismiss-filled.svg");
+ }
+
+ #tm-duplicateTabContext {
+ --menuitem-image: url("../icons/tab-copy.svg");
+ }
+
+ #tm-duplicateinWinContext {
+ --menuitem-image: url("../icons/tab-desktop-multiple-bottom.svg");
+ }
+
+ #tm-detachTabContext {
+ --menuitem-image: url("../icons/convert-range.svg");
+ }
+
+ #tm-mergeWindows {
+ --menuitem-image: url("../icons/merge.svg");
+ }
+
+ #tm-content-freezeTab {
+ --menuitem-image: url("../icons/weather-snowflake.svg");
+ }
+
+ #tm-content-protectTab {
+ --menuitem-image: url("../icons/shield-task.svg");
+ }
+
+ #tm-content-lockTab {
+ --menuitem-image: url("../icons/lock-closed.svg");
+ }
+
#tm-content-undoCloseTab {
--menuitem-image: url("../icons/undo.svg");
}
@@ -11354,6 +11577,19 @@
--menuitem-image: url("../icons/movetowindow-16.svg");
}
+ /*= Notification =============================================================*/
+ #doNotDisturbMenuItem {
+ --menuitem-image: url(chrome://global/skin/media/pause-fill.svg);
+ }
+
+ #disableForOriginMenuItem {
+ --menuitem-image: url("chrome://global/skin/icons/blocked.svg");
+ }
+
+ #openSettingsMenuItem {
+ --menuitem-image: url("chrome://global/skin/icons/settings.svg");
+ }
+
/*= blockedPopupOptions ======================================================*/
#blockedPopupAllowSite {
--menuitem-image: url("chrome://global/skin/icons/check.svg");
@@ -11592,6 +11828,19 @@
#treestyletab_piro_sakura_ne_jp-menuitem-_context_sendTabsToDevice\:manage {
--menuitem-image: url("chrome://global/skin/icons/settings.svg");
}
+
+ /*= unified-extensions-context-menu ==========================================*/
+ .unified-extensions-context-menu-manage-extension {
+ --menuitem-image: url("chrome://global/skin/icons/settings.svg");
+ }
+
+ .unified-extensions-context-menu-remove-extension {
+ --menuitem-image: url("chrome://global/skin/icons/delete.svg");
+ }
+
+ .unified-extensions-context-menu-report-extension {
+ --menuitem-image: url("../icons/send.svg");
+ }
}
@supports -moz-bool-pref("userChrome.icon.global_menubar") {
/*= main-menubar =============================================================*/
@@ -11647,7 +11896,7 @@
}
#menu_savePage {
- --menuitem-image: url("chrome://browser/skin/save.svg");
+ --menuitem-image: url("../icons/toolbarButton-download.svg");
}
#menu_sendLink {
@@ -11950,10 +12199,7 @@
--menuitem-image: url("chrome://global/skin/icons/info.svg");
}
}
- }
- /** Library Menu **************************************************************/
- @supports -moz-bool-pref("userChrome.icon.library") {
- @supports -moz-bool-pref("userChrome.icon.menu") {
+ @supports -moz-bool-pref("userChrome.icon.library") {
/*= organizeButtonPopup ======================================================*/
#newbookmark {
--menuitem-image: url("chrome://browser/skin/bookmark.svg");
@@ -12015,7 +12261,7 @@
}
#fileImport {
- --menuitem-image: url("chrome://browser/skin/save.svg");
+ --menuitem-image: url("../icons/toolbarButton-download.svg");
}
#fileExport {
diff --git a/css/leptonContent.css b/css/leptonContent.css
index 03b4729..c1e82c0 100644
--- a/css/leptonContent.css
+++ b/css/leptonContent.css
@@ -280,7 +280,7 @@
.context-menu-list .context-menu-item button span {
/* Color */
- -moz-context-properties: fill, fill-opacity !important;
+ -moz-context-properties: fill, fill-opacity, stroke !important;
fill: currentColor !important;
/* Layout */
background-size: 16px !important;
@@ -417,7 +417,7 @@
}
}
/** Activity Stream - Home Search Bar looks like proton *********************/
- @supports -moz-bool-pref("userContent.newTab.animate") {
+ @supports -moz-bool-pref("userContent.newTab.searchbar") {
/* Dropdown Colors */
#root {
--newtab-search-background-color: rgba(255, 255, 255, 1);
@@ -1680,6 +1680,7 @@
.input-row input[type="tel"],
.input-row input[type="text"],
.input-row input::placeholder,
+ .input-text,
.firefox-family-services > ul > .firefox-service,
.faint,
.faint a,
@@ -1704,7 +1705,9 @@
.input-row input[type="password"],
.input-row input[type="tel"],
.input-row input[type="text"],
+ .input-text,
header,
+ .card,
.bg-white:not(nav) {
background: var(--in-content-box-background) !important;
}
@@ -2362,7 +2365,7 @@
#forward-button,
#clearDownloadsButton {
fill: currentColor !important;
- -moz-context-properties: fill !important;
+ -moz-context-properties: fill, fill-opacity, stroke !important;
}
/* Add */
@@ -3037,7 +3040,7 @@
> menuitem:not(.menuitem-iconic, .bookmark-item, .in-menulist, [checked="true"]),
menupopup:is(#viewMenuPopup, #maintenanceButtonPopup) > menu:not(.menu-iconic, .in-menulist, [checked="true"]) {
/* Color */
- -moz-context-properties: fill, fill-opacity !important;
+ -moz-context-properties: fill, fill-opacity, stroke !important;
fill: currentColor !important;
/* Layout */
background-size: 16px !important;
@@ -3403,7 +3406,7 @@
}
#fileImport {
- --menuitem-image: url("chrome://browser/skin/save.svg");
+ --menuitem-image: url("../icons/toolbarButton-download.svg");
}
#fileExport {
diff --git a/icons/merge.svg b/icons/merge.svg
new file mode 100644
index 0000000..e6060cd
--- /dev/null
+++ b/icons/merge.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/new-tab-forward.svg b/icons/new-tab-forward.svg
new file mode 100644
index 0000000..6c87642
--- /dev/null
+++ b/icons/new-tab-forward.svg
@@ -0,0 +1,4 @@
+
diff --git a/icons/new-tab-skip-forward.svg b/icons/new-tab-skip-forward.svg
new file mode 100644
index 0000000..9ab9e8a
--- /dev/null
+++ b/icons/new-tab-skip-forward.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/tab-desktop-multiple-bottom.svg b/icons/tab-desktop-multiple-bottom.svg
new file mode 100644
index 0000000..97457b4
--- /dev/null
+++ b/icons/tab-desktop-multiple-bottom.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/timer10.svg b/icons/timer10.svg
new file mode 100644
index 0000000..e6311bb
--- /dev/null
+++ b/icons/timer10.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/toolbarButton-download.svg b/icons/toolbarButton-download.svg
new file mode 100644
index 0000000..6d64757
--- /dev/null
+++ b/icons/toolbarButton-download.svg
@@ -0,0 +1,4 @@
+
diff --git a/icons/weather-snowflake.svg b/icons/weather-snowflake.svg
new file mode 100644
index 0000000..fe7c53f
--- /dev/null
+++ b/icons/weather-snowflake.svg
@@ -0,0 +1,3 @@
+
diff --git a/src/autohide/_common.scss b/src/autohide/_common.scss
index a34b0f8..1fde6d6 100644
--- a/src/autohide/_common.scss
+++ b/src/autohide/_common.scss
@@ -31,9 +31,15 @@
@include Option("userChrome.autohide.tabbar", "userChrome.autohide.navbar", "userChrome.autohide.bookmarkbar", "userChrome.autohide.infobar") {
#navigator-toolbox {
position: relative;
- z-index: 2;
+ &:is(:hover, :focus-within) {
+ z-index: 2;
+
+ #PersonalToolbar {
+ z-index: -1;
+ }
+ }
}
- #navigator-toolbox:not(:hover) {
+ #navigator-toolbox:not(:hover):not(:focus-within) {
animation: 1s keepfront;
}
@keyframes keepfront {
diff --git a/src/autohide/_tabbar.scss b/src/autohide/_tabbar.scss
index 3f2bda9..fe377cb 100644
--- a/src/autohide/_tabbar.scss
+++ b/src/autohide/_tabbar.scss
@@ -1,7 +1,10 @@
//-- Mixin ---------------------------------------------------------------------
@mixin _autohide_tabbar() {
@include NotOption("userChrome.tabbar.on_bottom") {
- @content;
+ &,
+ & .titlebar-buttonbox-container {
+ @content;
+ }
}
@include Option("userChrome.tabbar.on_bottom") {
> *:not(.titlebar-buttonbox-container) {
@@ -20,8 +23,8 @@
#TabsToolbar:not([customizing]) {
@include _autohide_tabbar {
opacity: 0;
- will-change: opacity;
}
+ will-change: opacity;
}
#navigator-toolbox:is(:hover, :focus-within) {
diff --git a/src/contents/_activity_stream.scss b/src/contents/_activity_stream.scss
index acc839e..9fe952b 100644
--- a/src/contents/_activity_stream.scss
+++ b/src/contents/_activity_stream.scss
@@ -101,7 +101,7 @@
}
/** Activity Stream - Home Search Bar looks like proton *********************/
- @include Option("userContent.newTab.animate") {
+ @include Option("userContent.newTab.searchbar") {
/* Dropdown Colors */
#root {
--newtab-search-background-color: rgba(255, 255, 255, 1); /* Same as light theme's --panel-background */
diff --git a/src/contents/dark_mode/_accounts_com.scss b/src/contents/dark_mode/_accounts_com.scss
index 7fef1fd..9796370 100644
--- a/src/contents/dark_mode/_accounts_com.scss
+++ b/src/contents/dark_mode/_accounts_com.scss
@@ -46,6 +46,7 @@
.input-row input[type="tel"],
.input-row input[type="text"],
.input-row input::placeholder,
+ .input-text,
.firefox-family-services > ul > .firefox-service,
.faint,
.faint a,
@@ -68,7 +69,9 @@
.input-row input[type="password"],
.input-row input[type="tel"],
.input-row input[type="text"],
+ .input-text,
header,
+ .card,
.bg-white:not(nav) {
background: var(--in-content-box-background) !important;
}
diff --git a/src/counter/_tab.scss b/src/counter/_tab.scss
index 108793c..baeae33 100644
--- a/src/counter/_tab.scss
+++ b/src/counter/_tab.scss
@@ -10,6 +10,18 @@
}
}
+// Copy from "../tab/sound_tab/show_with_favicons"
+@mixin _hidden_tabIcon_soundTabLabel() {
+ @include NotOption("userChrome.hidden.tab_icon") {
+ @content;
+ }
+ @include Option("userChrome.hidden.tab_icon") {
+ @include NotOption("userChrome.hidden.tab_icon.always") {
+ @content;
+ }
+ }
+}
+
//------------------------------------------------------------------------------
#tabbrowser-tabs {
@@ -61,3 +73,28 @@
.tab-secondary-label {
overflow: hidden;
}
+
+// Compatibility with sound tab
+@include Option("userChrome.tab.sound_with_favicons") {
+ @include _hidden_tabIcon_soundTabLabel {
+ .tabbrowser-tab:not([sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked]) {
+ &[pinned] .tab-label-container {
+ &[labeldirection=ltr],
+ &:not([labeldirection]):-moz-locale-dir(ltr) {
+ --uc-sound-tab-label-position-x: 2px;
+ }
+ &[labeldirection=rtl],
+ &:not([labeldirection]):-moz-locale-dir(rtl) {
+ --uc-sound-tab-label-position-x: -2px;
+ }
+ }
+ .tab-label-container::before {
+ transform: translateX(var(--uc-sound-tab-label-position-x, 0px));
+ }
+ }
+ }
+
+ .tab-label-container::beforee {
+ transition: transform 0.25s var(--animation-easing-function);
+ }
+}
diff --git a/src/decoration/_cursor.scss b/src/decoration/_cursor.scss
index 7166ca9..74aec7c 100644
--- a/src/decoration/_cursor.scss
+++ b/src/decoration/_cursor.scss
@@ -21,7 +21,9 @@ menuitem.openintabs-menuitem,
#protections-popup-footer .protections-popup-footer-button,
#protections-popup-multiView .panel-subview-footer-button,
#identity-popup-clear-sitedata-button,
-#identity-popup-more-info {
+#identity-popup-more-info,
+#unified-extensions-manage-extensions,
+.unified-extensions-item-open-menu {
cursor: pointer !important;
}
diff --git a/src/icons/_global_menu.scss b/src/icons/_global_menu.scss
index fc6d034..0c20225 100644
--- a/src/icons/_global_menu.scss
+++ b/src/icons/_global_menu.scss
@@ -27,7 +27,7 @@
}
#menu_savePage {
- --menuitem-image: url("chrome://browser/skin/save.svg");
+ --menuitem-image: url("../icons/toolbarButton-download.svg");
}
#menu_sendLink {
--menuitem-image: url("chrome://browser/skin/mail.svg");
diff --git a/src/icons/_index.scss b/src/icons/_index.scss
index 06fe4fe..ee4a326 100644
--- a/src/icons/_index.scss
+++ b/src/icons/_index.scss
@@ -23,11 +23,7 @@
@include Option("userChrome.icon.global_menu") {
@import "global_menu";
}
-}
-
-/** Library Menu **************************************************************/
-@include Option("userChrome.icon.library") {
- @include Option("userChrome.icon.menu") {
+ @include Option("userChrome.icon.library") {
@import "library";
}
}
diff --git a/src/icons/_library.scss b/src/icons/_library.scss
index fc2b57b..a65d505 100644
--- a/src/icons/_library.scss
+++ b/src/icons/_library.scss
@@ -55,7 +55,7 @@
}
#fileImport {
- --menuitem-image: url("chrome://browser/skin/save.svg");
+ --menuitem-image: url("../icons/toolbarButton-download.svg");
}
#fileExport {
--menuitem-image: url("chrome://browser/skin/open.svg");
diff --git a/src/icons/_panel.scss b/src/icons/_panel.scss
index cad45e4..5d1aca0 100644
--- a/src/icons/_panel.scss
+++ b/src/icons/_panel.scss
@@ -88,7 +88,7 @@
}
@include Option("userChrome.icon.panel_full") {
#appMenu-save-file-button2 {
- list-style-image: url("chrome://browser/skin/save.svg");
+ list-style-image: url("../icons/toolbarButton-download.svg");
}
#appMenu-find-button2 {
list-style-image: url("chrome://global/skin/icons/search-glass.svg");
@@ -176,7 +176,7 @@
/* Color */
fill: currentColor;
fill-opacity: var(--toolbarbutton-icon-fill-opacity);
- -moz-context-properties: fill;
+ -moz-context-properties: fill, fill-opacity, stroke;
background-size: 16px;
background-repeat: no-repeat;
@@ -416,7 +416,7 @@ panelMenuBookmarkThisPage[starred] {
/*= protections-popup ========================================================*/
#protections-popup-settings-button > .protections-popup-settings-icon,
#protections-popup-show-report-button > .protections-popup-show-report-icon {
- -moz-context-properties: fill;
+ -moz-context-properties: fill, fill-opacity, stroke;
fill: currentColor;
margin-inline-end: 1em;
}
@@ -473,3 +473,8 @@ panelMenuBookmarkThisPage[starred] {
#sidebarMenu-popup > .subviewbutton[data-l10n-id="sidebar-menu-close"] {
list-style-image: url("chrome://global/skin/icons/close.svg");
}
+
+/*= unified-extensions-view ===================================================*/
+#unified-extensions-manage-extensions {
+ list-style-image: url("chrome://mozapps/skin/extensions/extension.svg");
+}
diff --git a/src/icons/context_menu/_content_area.scss b/src/icons/context_menu/_content_area.scss
index c74e829..7821478 100644
--- a/src/icons/context_menu/_content_area.scss
+++ b/src/icons/context_menu/_content_area.scss
@@ -45,7 +45,7 @@
--menuitem-image: url("chrome://browser/skin/bookmark.svg");
}
#context-savelink {
- --menuitem-image: url("chrome://browser/skin/save.svg");
+ --menuitem-image: url("../icons/toolbarButton-download.svg");
}
#context-savelinktopocket {
--menuitem-image: url("../icons/pocket-outline.svg");
@@ -148,7 +148,7 @@
}
#context-savepage {
- --menuitem-image: url("chrome://browser/skin/save.svg");
+ --menuitem-image: url("../icons/toolbarButton-download.svg");
}
#context-pocket {
--menuitem-image: url("../icons/pocket-outline.svg");
@@ -243,7 +243,7 @@
/* iconic */
}
-@include NativeMenu {
+@include OS($mac) {
#context-back {
--menuitem-image: url("chrome://browser/skin/back.svg");
}
@@ -264,34 +264,44 @@
/*= Tab Mix Plus =============================================================*/
#tm-autoreload_menu {
- --menuitem-image: url("../icons/reload-auto.svg");
+ // --menuitem-image: url("../icons/reload-auto.svg");
+ --menuitem-image: url("../icons/timer10.svg");
}
#tm-linkWithhistory {
+ // ic_fluent_skip_forward_tab_24_regular
+ --menuitem-image: url("../icons/new-tab-skip-forward.svg");
}
#tm-openAllLinks {
--menuitem-image: url("../icons/new-tab-multiple.svg");
}
#tm-openinverselink {
-}
-#context-openlinkinusercontext-menu {
+ --menuitem-image: url("../icons/new-tab-forward.svg");
}
#tm-content-closetab {
+ --menuitem-image: url("../icons/dismiss-filled.svg");
}
#tm-duplicateTabContext {
+ --menuitem-image: url("../icons/tab-copy.svg");
}
#tm-duplicateinWinContext {
+ --menuitem-image: url("../icons/tab-desktop-multiple-bottom.svg");
}
#tm-detachTabContext {
+ --menuitem-image: url("../icons/convert-range.svg");
}
#tm-mergeWindows {
+ --menuitem-image: url("../icons/merge.svg");
}
#tm-content-freezeTab {
+ --menuitem-image: url("../icons/weather-snowflake.svg");
}
#tm-content-protectTab {
+ --menuitem-image: url("../icons/shield-task.svg");
}
#tm-content-lockTab {
+ --menuitem-image: url("../icons/lock-closed.svg");
}
#tm-tabsList {
}
diff --git a/src/icons/context_menu/_others.scss b/src/icons/context_menu/_others.scss
index 25f28d8..bb37ded 100644
--- a/src/icons/context_menu/_others.scss
+++ b/src/icons/context_menu/_others.scss
@@ -1,3 +1,15 @@
+/*= Notification =============================================================*/
+// https://github.com/mozilla/gecko-dev/blob/master/toolkit/components/alerts/alert.xhtml
+#doNotDisturbMenuItem {
+ --menuitem-image: url(chrome://global/skin/media/pause-fill.svg);
+}
+#disableForOriginMenuItem {
+ --menuitem-image: url("chrome://global/skin/icons/blocked.svg");
+}
+#openSettingsMenuItem {
+ --menuitem-image: url("chrome://global/skin/icons/settings.svg");
+}
+
/*= blockedPopupOptions ======================================================*/
#blockedPopupAllowSite {
--menuitem-image: url("chrome://global/skin/icons/check.svg");
@@ -213,3 +225,14 @@ menuitem.searchbar-clear-history {
#treestyletab_piro_sakura_ne_jp-menuitem-_context_sendTabsToDevice\:manage {
--menuitem-image: url("chrome://global/skin/icons/settings.svg");
}
+
+/*= unified-extensions-context-menu ==========================================*/
+.unified-extensions-context-menu-manage-extension {
+ --menuitem-image: url("chrome://global/skin/icons/settings.svg");
+}
+.unified-extensions-context-menu-remove-extension {
+ --menuitem-image: url("chrome://global/skin/icons/delete.svg");
+}
+.unified-extensions-context-menu-report-extension {
+ --menuitem-image: url("../icons/send.svg");
+}
diff --git a/src/icons/context_menu/_tab_toolbar.scss b/src/icons/context_menu/_tab_toolbar.scss
index d0b20be..b704859 100644
--- a/src/icons/context_menu/_tab_toolbar.scss
+++ b/src/icons/context_menu/_tab_toolbar.scss
@@ -222,19 +222,30 @@ menuitem.viewCustomizeToolbar {
/*= Tab Mix Plus =============================================================*/
#context_openANewTab.tabmix-newtab-menu-icon {
- list-style-image: var(--menuitem-image) !important;
+ .menu-iconic-left {
+ @include OS($win) {
+ display: none;
+ }
+ }
}
-#tm-duplicateinWin {
-}
-#tm-mergeWindowsTab {
+@include Option("userChrome.icon.menu.full") {
+ #tm-duplicateinWin {
+ --menuitem-image: url("../icons/tab-desktop-multiple-bottom.svg");
+ }
+ #tm-mergeWindowsTab {
+ --menuitem-image: url("../icons/merge.svg");
+ }
}
#tm-renameTab {
+ --menuitem-image: url("chrome://global/skin/icons/edit.svg");
}
#tm-copyTabUrl {
--menuitem-image: url("../icons/link.svg");
}
#tm-autoreloadTab_menu {
+ // --menuitem-image: url("../icons/reload-auto.svg");
+ --menuitem-image: url("../icons/timer10.svg");
}
#context_reloadTabOptions {
--menuitem-image: url("../icons/reload.svg");
@@ -252,8 +263,10 @@ menuitem.viewCustomizeToolbar {
}
#tm-docShell {
+ --menuitem-image: url("chrome://browser/skin/permissions.svg");
}
#tm-freezeTab {
+ --menuitem-image: url("../icons/weather-snowflake.svg");
}
#tm-protectTab {
--menuitem-image: url("../icons/shield-task.svg");
diff --git a/src/icons/layout/_menu.scss b/src/icons/layout/_menu.scss
index 894bef4..b0b8baf 100644
--- a/src/icons/layout/_menu.scss
+++ b/src/icons/layout/_menu.scss
@@ -7,7 +7,8 @@ $_layoutCommonMenus: (
$_libraryMenuitem,
$_libraryMenu,
$_sendTabMenuitem,
- $_otherIconMenu
+ $_otherIconMenu,
+ "#context_openANewTab.tabmix-newtab-menu-icon"
);
@mixin _layoutInitIconMenus() {
#{$_globalMenus},
@@ -42,7 +43,7 @@ $_layoutCommonMenus: (
@include _layout_icon_menus;
}
#tabContextMenu > .tabmix-newtab-menu-icon {
- -moz-context-properties: fill, fill-opacity !important;
+ -moz-context-properties: fill, fill-opacity, stroke !important;
fill: currentColor !important;
}
diff --git a/src/icons/layout/_menu_common.scss b/src/icons/layout/_menu_common.scss
index bfe3cc5..079960a 100644
--- a/src/icons/layout/_menu_common.scss
+++ b/src/icons/layout/_menu_common.scss
@@ -44,7 +44,7 @@ $_initialMenus: selector.append(
// Icon
@mixin _layout_icon_menus() {
/* Color */
- -moz-context-properties: fill, fill-opacity !important;
+ -moz-context-properties: fill, fill-opacity, stroke !important;
fill: currentColor !important;
/* Layout */
diff --git a/src/icons/layout/_panel.scss b/src/icons/layout/_panel.scss
index bce5576..d15a78e 100644
--- a/src/icons/layout/_panel.scss
+++ b/src/icons/layout/_panel.scss
@@ -82,12 +82,11 @@
.subviewbutton:not(#appMenu-proton-update-banner) > image {
fill: currentColor !important;
fill-opacity: var(--toolbarbutton-icon-fill-opacity) !important;
- -moz-context-properties: fill !important;
+ -moz-context-properties: fill, fill-opacity, stroke !important;
}
#appMenu-zoomReduce-button2 > .toolbarbutton-icon,
#appMenu-zoomEnlarge-button2 > .toolbarbutton-icon {
stroke: var(--zoom-controls-bgcolor, var(--button-bgcolor, ButtonFace)) !important;
- -moz-context-properties: fill, stroke !important;
}
#appMenu-zoomReduce-button2:not([disabled], [open], :active):is(:hover) > .toolbarbutton-icon,
#appMenu-zoomEnlarge-button2:not([disabled], [open], :active):is(:hover) > .toolbarbutton-icon {
diff --git a/src/library/_menubar.scss b/src/library/_menubar.scss
index c9624a5..9fd615f 100644
--- a/src/library/_menubar.scss
+++ b/src/library/_menubar.scss
@@ -6,7 +6,7 @@
#forward-button,
#clearDownloadsButton {
fill: currentColor !important;
- -moz-context-properties: fill !important;
+ -moz-context-properties: fill, fill-opacity, stroke !important;
}
/* Add */
diff --git a/src/padding/_bookmarkbar.scss b/src/padding/_bookmarkbar.scss
index aee9f5e..39e4d5b 100644
--- a/src/padding/_bookmarkbar.scss
+++ b/src/padding/_bookmarkbar.scss
@@ -1,3 +1,3 @@
:root[uidensity="compact"] #PersonalToolbar toolbarbutton {
- margin-top: 0px; /* Original: 2px */
+ margin-top: 0px !important; /* Original: 2px */
}
diff --git a/src/padding/_panel.scss b/src/padding/_panel.scss
index f8c4e76..e2caed7 100644
--- a/src/padding/_panel.scss
+++ b/src/padding/_panel.scss
@@ -1,5 +1,5 @@
:root {
- --arrowpanel-menuitem-margin: 0 var(--arrowpanel-menuicon-padding) !important; /* Original: 0 8px */
+ --arrowpanel-menuitem-margin: 0 var(--arrowpanel-menuicon-padding, 8px) !important; /* Original: 0 8px */
--arrowpanel-menuitem-padding-block: 5px !important; /* Original: 8px */
--arrowpanel-menuitem-padding-inline: 5px !important; /* Original: 8px */
--arrowpanel-menuitem-padding: var(--arrowpanel-menuitem-padding-block) var(--arrowpanel-menuitem-padding-inline) !important; /* Compatibility */
diff --git a/src/padding/_popup_panel.scss b/src/padding/_popup_panel.scss
index 00b4447..8725396 100644
--- a/src/padding/_popup_panel.scss
+++ b/src/padding/_popup_panel.scss
@@ -25,7 +25,7 @@
}
/* not cut off for Protection popup Footer on windows */
:root[uidensity="compact"] #protections-popup-multiView #protections-popup-footer {
- padding: 3px 0 10px !important;
+ padding: 0 !important;
}
/* Button and disabled category in Protection popup */
:root[uidensity="compact"] #protections-popup-multiView .protections-popup-footer-button,
diff --git a/src/padding/_urlview_expanding.scss b/src/padding/_urlview_expanding.scss
index b2481eb..0af7884 100644
--- a/src/padding/_urlview_expanding.scss
+++ b/src/padding/_urlview_expanding.scss
@@ -7,7 +7,7 @@
#urlbar[breakout][breakout-extend] > #urlbar-input-container {
height: var(--urlbar-height) !important;
padding-block: 0 !important;
- padding-inline: 0 !important;
+ padding-inline: var(--urlbar-container-padding, 0px) !important;
}
#urlbar[breakout][breakout-extend] > #urlbar-background {
diff --git a/src/rounding/_square.scss b/src/rounding/_square.scss
index 139f7bb..9c86f15 100644
--- a/src/rounding/_square.scss
+++ b/src/rounding/_square.scss
@@ -5,19 +5,32 @@
}
@include Option("userChrome.rounding.square_button") {
:root {
- --toolbarbutton-border-radius: 0 !important; /* Original: 4px */
+ --urlbar-icon-border-radius: 0 !important; /* Original: calc(var(--toolbarbutton-border-radius) - 1px); */
}
- button {
+
+ .toolbarbutton-1,
+ .toolbarbutton-icon,
+ .panel-info-button,
+ .searchbar-engine-one-off-item,
+ .urlbarView-button,
+ .urlbarView-tip-button,
+ .urlbarView-action,
+ toolbarbutton.bookmark-item:not(.subviewbutton),
+ #sidebar-switcher-target {
+ --toolbarbutton-border-radius: 0; /* Original: 4px */
+ }
+
+ button,
+ findbar toolbarbutton,
+ .notification-button {
border-radius: 0 !important;
}
}
-@include Option("userChrome.rounding.square_tab", "userChrome.round.square_button") {
+@include Option("userChrome.rounding.square_tab", "userChrome.rounding.square_button") {
/* Fix Tab bar button radius */
- #TabsToolbar .toolbarbutton-1:not(#tabs-newtab-button) > .toolbarbutton-icon,
- #TabsToolbar .toolbarbutton-1:not(#tabs-newtab-button) > .toolbarbutton-text,
- #TabsToolbar .toolbarbutton-1:not(#tabs-newtab-button) > .toolbarbutton-badge-stack,
+ #TabsToolbar .toolbarbutton-1:not(#tabs-newtab-button),
.tab-close-button {
- --tab-border-radius: var(--toolbarbutton-border-radius) !important;
+ --tab-border-radius: var(--toolbarbutton-border-radius);
}
}
@@ -54,6 +67,18 @@
html|input {
border-radius: 0 !important;
}
+
+ #urlbar-input-container,
+ #urlbar-background,
+ #searchbar {
+ --toolbarbutton-border-radius: 0;
+ }
+}
+
+@include Option("userChrome.rounding.square_urlView_item") {
+ .urlbarView-row-inner {
+ --toolbarbutton-border-radius: 0;
+ }
}
@include Option("userChrome.rounding.square_checklabel") {
diff --git a/src/tab/_connect_to_window.scss b/src/tab/_connect_to_window.scss
index a7ebe5c..24ed9a4 100644
--- a/src/tab/_connect_to_window.scss
+++ b/src/tab/_connect_to_window.scss
@@ -18,7 +18,7 @@
}
@include NotOption("userChrome.tabbar.multi_row") {
#TabsToolbar:not([multibar]) {
- overflow: hidden; /* Prevent toolbar area over */
+ overflow: clip; /* Prevent toolbar area over */
}
}
diff --git a/src/tab/_selected_tab.scss b/src/tab/_selected_tab.scss
index 86403cb..fc23332 100644
--- a/src/tab/_selected_tab.scss
+++ b/src/tab/_selected_tab.scss
@@ -38,6 +38,22 @@
}
/*= Selected Tab - Photon like contextline ===================================*/
+@include Option(
+ "userChrome.tab.photon_like_contextline",
+ "userChrome.tab.static_separator",
+ "userChrome.tab.bar_separator") {
+ :root[lwtheme-mozlightdark] #tabbrowser-tabs, /* Legacy: v96 */
+ :root[style*="--lwt-accent-color: rgb(240, 240, 244); --lwt-text-color: rgba(21, 20, 26);"],
+ :root[style*="--lwt-accent-color: rgb(28, 27, 34); --lwt-text-color: rgba(251, 251, 254);"] {
+ --tab-line-color: rgb(10, 132, 255) !important;
+ }
+ @media (-moz-gtk-csd-available) {
+ :root:not(:-moz-lwtheme) #tabbrowser-tabs {
+ --tab-line-color: Highlight !important; /* -moz-accent-color */
+ }
+ }
+}
+
@include Option("userChrome.tab.photon_like_contextline") {
@import "selected_tab/photon_like_contextline";
}
diff --git a/src/tab/_unload_tab.scss b/src/tab/_unload_tab.scss
index 8b918f2..fbf5541 100644
--- a/src/tab/_unload_tab.scss
+++ b/src/tab/_unload_tab.scss
@@ -1,3 +1,3 @@
-#tabbrowser-tabs .tabbrowser-tab[pending] .tab-content {
+.tabbrowser-tab[pending] .tab-content {
opacity: 0.7;
}
diff --git a/src/tab/_unselected_tab.scss b/src/tab/_unselected_tab.scss
index 6332380..b0e4b4d 100644
--- a/src/tab/_unselected_tab.scss
+++ b/src/tab/_unselected_tab.scss
@@ -7,3 +7,8 @@
@include Option("userChrome.tab.static_separator") {
@import "unselected_tab/static_separator";
}
+
+/*= Unselected Tab - Bar Separator ===========================================*/
+@include Option("userChrome.tab.bar_separator") {
+ @import "unselected_tab/bar_separator";
+}
diff --git a/src/tab/newtab_button/_proton_like_button.scss b/src/tab/newtab_button/_proton_like_button.scss
index 3fd1017..1e24617 100644
--- a/src/tab/newtab_button/_proton_like_button.scss
+++ b/src/tab/newtab_button/_proton_like_button.scss
@@ -1,10 +1,3 @@
:root:not([uidensity="touch"]) #tabs-newtab-button > .toolbarbutton-icon {
--toolbarbutton-inner-padding: calc((var(--tab-min-height) - 16px) / 2 - 1px);
}
-
-:root:not([uidensity="compact"]) #tabs-newtab-button > .toolbarbutton-icon {
- margin-left: 2px;
-}
-:root[uidensity="compact"] #tabs-newtab-button > .toolbarbutton-icon {
- margin-left: 1px;
-}
diff --git a/src/tab/selected_tab/_photon_like_contextline.scss b/src/tab/selected_tab/_photon_like_contextline.scss
index fd1d26b..13d7644 100644
--- a/src/tab/selected_tab/_photon_like_contextline.scss
+++ b/src/tab/selected_tab/_photon_like_contextline.scss
@@ -1,14 +1,3 @@
-:root[lwtheme-mozlightdark] #tabbrowser-tabs, /* Legacy: v96 */
-:root[style*="--lwt-accent-color: rgb(240, 240, 244); --lwt-text-color: rgba(21, 20, 26);"],
-:root[style*="--lwt-accent-color: rgb(28, 27, 34); --lwt-text-color: rgba(251, 251, 254);"] {
- --tab-line-color: rgb(10, 132, 255) !important;
-}
-@media (-moz-gtk-csd-available) {
- :root:not(:-moz-lwtheme) #tabbrowser-tabs {
- --tab-line-color: Highlight !important; /* -moz-accent-color */
- }
-}
-
.tab-context-line {
display: -moz-inline-box !important;
height: 2px !important;
diff --git a/src/tab/sound_tab/_show_with_favicons.scss b/src/tab/sound_tab/_show_with_favicons.scss
index a521b62..1b4ac30 100644
--- a/src/tab/sound_tab/_show_with_favicons.scss
+++ b/src/tab/sound_tab/_show_with_favicons.scss
@@ -69,7 +69,7 @@
--uc-sound-tab-label-position-x: 4px;
}
&[labeldirection=rtl],
- :not([labeldirection]):-moz-locale-dir(rtl) {
+ &:not([labeldirection]):-moz-locale-dir(rtl) {
--uc-sound-tab-label-position-x: -4px;
}
@@ -102,7 +102,7 @@
--uc-sound-tab-no-icon-label-position-x: 3px;
}
&[labeldirection=rtl],
- :not([labeldirection]):-moz-locale-dir(rtl) {
+ &:not([labeldirection]):-moz-locale-dir(rtl) {
--uc-sound-tab-no-icon-position-x: 0.5px;
--uc-sound-tab-no-icon-label-position-x: -3px;
}
diff --git a/src/tab/unselected_tab/_bar_separator.scss b/src/tab/unselected_tab/_bar_separator.scss
new file mode 100644
index 0000000..ebd2b52
--- /dev/null
+++ b/src/tab/unselected_tab/_bar_separator.scss
@@ -0,0 +1,55 @@
+// Using --tab-line-color at photon_line_contextline
+
+.tab-stack::before {
+ $barWidth: 3px;
+ $barMargin: $barWidth + 2px;
+
+ /* Box Model */
+ content: "";
+ display: block;
+ position: absolute;
+
+ /* Position */
+ top: 50%;
+ left: 0%;
+ transform: translateX(calc((var(--inline-tab-padding) - #{ $barMargin }) / 2)) translateY(calc(-50% + var(--tab-block-margin)));
+ z-index: 1;
+
+ /* Bar shape */
+ width: $barWidth;
+ height: 20px;
+
+ /* Bar Color */
+ background-color: var(--uc-bar-separator-color, var(--tab-line-color, var(--lwt-tab-line-color, rgb(10, 132, 255))));
+
+ @include Animate {
+ transition-property: opacity, background-color;
+ transition-duration: 0.2s;
+ transition-timing-function: var(--animation-easing-function); /* cubic-bezier(.07, .95, 0, 1) */
+ }
+}
+
+:root[sessionrestored] {
+ .tabbrowser-tab[busy] {
+ .tab-stack::before {
+ --uc-bar-separator-color: currentColor;
+ opacity: 0.7;
+ }
+
+ &[progress] .tab-stack::before {
+ --uc-bar-separator-color: var(--tab-loading-fill);
+ opacity: 1;
+ }
+ }
+ #TabsToolbar[brighttext] .tabbrowser-tab[busy] {
+ &[progress]:not([selected=true]) .tab-stack::before {
+ --uc-bar-separator-color: var(--lwt-tab-loading-fill-inactive, #84c1ff);
+ }
+ }
+
+ @include Option("userChrome.tab.unloaded") {
+ .tabbrowser-tab[pending] .tab-stack::before {
+ opacity: 0.7;
+ }
+ }
+}
diff --git a/src/tab/unselected_tab/_dynamic_separator.scss b/src/tab/unselected_tab/_dynamic_separator.scss
index 7d9f7bf..321437d 100644
--- a/src/tab/unselected_tab/_dynamic_separator.scss
+++ b/src/tab/unselected_tab/_dynamic_separator.scss
@@ -126,6 +126,13 @@
.tab-stack::before {
opacity: 0 !important;
}
+
+ :root:not([uidensity="compact"]) #tabs-newtab-button > .toolbarbutton-icon {
+ margin-left: 2px;
+ }
+ :root[uidensity="compact"] #tabs-newtab-button > .toolbarbutton-icon {
+ margin-left: 1px;
+ }
}
/* Animate */
diff --git a/src/theme/_fully_color.scss b/src/theme/_fully_color.scss
index 3f230c7..192df25 100644
--- a/src/theme/_fully_color.scss
+++ b/src/theme/_fully_color.scss
@@ -84,6 +84,8 @@ html#main-window menupopup:not(.in-menulist) {
/* or var(--lwt-sidebar-highlight-background-color)
If this value is used, unset is required in the default theme.
*/
+
+ background-color: var(--menuitem-hover-background-color) !important;
}
/* Fallback background - Set to Legacy. It will be removed Next update
@@ -115,16 +117,16 @@ html#main-window menupopup:not(.in-menulist) {
/*== Info Bar Color ==========================================================*/
.container.infobar {
- background-color: var(--urlbar-box-bgcolor);
+ background-color: var(--urlbar-box-bgcolor) !important;
}
.notification-button {
- background-color: var(--button-bgcolor);
+ background-color: var(--button-bgcolor) !important;
&:hover {
- background-color: var(--button-hover-bgcolor);
+ background-color: var(--button-hover-bgcolor) !important;
}
&:hover:active {
- background-color: var(--button-active-bgcolor);
+ background-color: var(--button-active-bgcolor) !important;
}
}
diff --git a/src/urlview/_focus_item_border.scss b/src/urlview/_focus_item_border.scss
new file mode 100644
index 0000000..0d608ba
--- /dev/null
+++ b/src/urlview/_focus_item_border.scss
@@ -0,0 +1,4 @@
+.urlbarView-row:not([type="tip"], [type="dynamic"])[selected] > .urlbarView-row-inner,
+.urlbarView-row-inner[selected] {
+ box-shadow: 3px 0 var(--toolbar-field-focus-border-color) inset !important;
+}
diff --git a/src/urlview/_index.scss b/src/urlview/_index.scss
index 229704b..2f19fb1 100644
--- a/src/urlview/_index.scss
+++ b/src/urlview/_index.scss
@@ -12,3 +12,8 @@
@include Option("userChrome.urlView.go_button_when_typing") {
@import "go_button_when_typing";
}
+
+/*= Url View - Item Focus Border =============================================*/
+@include Option("userChrome.urlView.focus_item_border") {
+ @import "focus_item_border";
+}
diff --git a/user.js b/user.js
index 6082a5a..b9ea595 100644
--- a/user.js
+++ b/user.js
@@ -5,9 +5,6 @@ user_pref("toolkit.legacyUserProfileCustomizations.stylesheets", true);
// Proton Enabled #127 || Removed at 97 #328 (Maintained for compatibility with ESR)
user_pref("browser.proton.enabled", true);
-// Proton Tooltip
-user_pref("browser.proton.places-tooltip.enabled", true);
-
// Fill SVG Color
user_pref("svg.context-properties.content.enabled", true);
@@ -42,6 +39,7 @@ user_pref("userChrome.tab.photon_like_padding", false); // Photon
user_pref("userChrome.tab.dynamic_separator", true); // Original, Proton
user_pref("userChrome.tab.static_separator", false); // Photon
user_pref("userChrome.tab.static_separator.selected_accent", false); // Just option
+user_pref("userChrome.tab.bar_separator", false); // Just option
user_pref("userChrome.tab.newtab_button_like_tab", true); // Original
user_pref("userChrome.tab.newtab_button_smaller", false); // Photon
@@ -125,6 +123,7 @@ user_pref("userChrome.rounding.square_tab", false);
// user_pref("userChrome.rounding.square_menupopup", true);
// user_pref("userChrome.rounding.square_menuitem", true);
// user_pref("userChrome.rounding.square_field", true);
+// user_pref("userChrome.rounding.square_urlView_item", true);
// user_pref("userChrome.rounding.square_checklabel", true);
// user_pref("userChrome.padding.first_tab", true);
@@ -141,6 +140,7 @@ user_pref("userChrome.rounding.square_tab", false);
// user_pref("userChrome.urlView.always_show_page_actions", true);
// user_pref("userChrome.urlView.move_icon_to_left", true);
// user_pref("userChrome.urlView.go_button_when_typing", true);
+// user_pref("userChrome.urlView.focus_item_border", true);
// user_pref("userChrome.tabbar.as_titlebar", true);
// user_pref("userChrome.tabbar.fill_width", true);