517 lines
16 KiB
CSS
517 lines
16 KiB
CSS
/* Edge-Frfox - tabbar.css */
|
|
|
|
:root {
|
|
--tab-block-margin: 8px !important;
|
|
|
|
& #titlebar {
|
|
--tab-min-height: 32px !important;
|
|
--inline-tab-padding: 11px !important;
|
|
--tab-border-radius: 4px !important;
|
|
|
|
--uc-toolbarbutton-inner-padding: 6px !important;
|
|
--toolbarbutton-border-radius: 4px !important;
|
|
--toolbarbutton-tabsline-border-radius: 8px !important;
|
|
--tabs-navbar-shadow-size: 0 !important;
|
|
--tab-shadow-max-size: 0 !important;
|
|
}
|
|
|
|
@media (-moz-bool-pref: "uc.tweak.floating-tabs.equal-margin") and (-moz-bool-pref: "uc.tweak.floating-tabs") {
|
|
--tab-block-margin: 5px !important;
|
|
}
|
|
}
|
|
|
|
/* tab open/close transition */
|
|
.tabbrowser-tab:not([pinned]) {
|
|
transition-property: min-width, max-width !important;
|
|
transition-duration: 150ms !important;
|
|
transition-timing-function: cubic-bezier(0, .75, .25, 1) !important;
|
|
}
|
|
|
|
#tabbrowser-tabs[movingtab]>#tabbrowser-arrowscrollbox>.tabbrowser-tab[fadein]:not([selected]):not([multiselected]),
|
|
.tabbrowser-tab[tab-grouping],
|
|
.tabbrowser-tab[tabdrop-samewindow] {
|
|
transition: transform 200ms cubic-bezier(0, .75, .25, 1) !important;
|
|
}
|
|
|
|
:root:is([inFullscreen], :not([tabsintitlebar])) {
|
|
--tab-block-margin: 0px !important;
|
|
}
|
|
|
|
/* hide space above tabs when maximised for non-macOS versions of Firefox */
|
|
@media not (-moz-platform: macos) {
|
|
:root:is([inFullscreen], :not([tabsintitlebar]), [sizemode="maximized"]),
|
|
#toolbar-menubar:not([inactive])+#TabsToolbar {
|
|
--tab-block-margin: 0px !important;
|
|
}
|
|
}
|
|
|
|
.tab-background {
|
|
border-radius: var(--tab-border-radius);
|
|
border-bottom-left-radius: 0 !important;
|
|
border-bottom-right-radius: 0 !important;
|
|
margin-block: 0 !important;
|
|
border: 0 !important;
|
|
position: relative !important;
|
|
--uc-tab-corner-bg: transparent;
|
|
|
|
/* Rounded bottom corners */
|
|
&::before,
|
|
&::after {
|
|
content: "" !important;
|
|
display: block !important;
|
|
position: absolute !important;
|
|
width: 8px !important;
|
|
height: 8px !important;
|
|
bottom: 0 !important;
|
|
pointer-events: none !important;
|
|
clip-path: inset(0);
|
|
}
|
|
|
|
&::before {
|
|
border-bottom-right-radius: var(--tab-border-radius) !important;
|
|
left: 0 !important;
|
|
transform: translateX(-8px) !important;
|
|
box-shadow: 4px 4px 0 4px var(--uc-tab-corner-bg) !important;
|
|
}
|
|
|
|
&::after {
|
|
border-bottom-left-radius: var(--tab-border-radius) !important;
|
|
right: 0 !important;
|
|
transform: translateX(8px) !important;
|
|
box-shadow: -4px 4px 0 4px var(--uc-tab-corner-bg) !important;
|
|
}
|
|
}
|
|
|
|
.tabbrowser-tab:where([selected], [multiselected], :hover) + .tabbrowser-tab:not([selected]) .tab-background {
|
|
border-bottom-left-radius: var(--tab-border-radius) !important;
|
|
|
|
&::before {
|
|
--uc-tab-corner-bg: transparent !important;
|
|
}
|
|
}
|
|
|
|
.tab-background:is([selected], [multiselected]) {
|
|
--uc-tab-corner-bg: var(--tab-selected-bgcolor, var(--lwt-selected-tab-background-color, var(--toolbar-bgcolor)));
|
|
}
|
|
|
|
.tabbrowser-tab:hover .tab-background:not([selected], [multiselected]) {
|
|
background-color: color-mix(in srgb, currentColor 8%, transparent) !important;
|
|
--uc-tab-corner-bg: color-mix(in srgb, currentColor 8%, transparent) !important;
|
|
}
|
|
|
|
@media not (-moz-bool-pref: "uc.tweak.floating-tabs") {
|
|
#Tabstoolbar:not([brighttext]) .tabbrowser-tab:hover .tab-background:not([selected], [multiselected]) {
|
|
background-color: color-mix(in srgb, white 30%, transparent) !important;
|
|
--uc-tab-corner-bg: color-mix(in srgb, white 30%, transparent) !important;
|
|
}
|
|
}
|
|
|
|
.tab-background:is([selected], [multiselected]) {
|
|
outline: none !important;
|
|
}
|
|
|
|
#tabbrowser-tabs .tab-background[multiselected]:not([selected]) {
|
|
box-shadow: none !important;
|
|
opacity: 0.7 !important;
|
|
}
|
|
|
|
#tabbrowser-tabs,
|
|
#TabsToolbar #TabsToolbar-customization-target>.toolbarbutton-1 {
|
|
margin-top: var(--tab-block-margin) !important;
|
|
}
|
|
|
|
#TabsToolbar .toolbarbutton-1 {
|
|
margin: 0 !important;
|
|
}
|
|
|
|
/* fix window background colours */
|
|
@media not (-moz-gtk-csd-available) {
|
|
:root:not(:-moz-lwtheme) #navigator-toolbox {
|
|
background-color: var(--lwt-accent-color) !important;
|
|
color: var(--lwt-text-color) !important;
|
|
}
|
|
|
|
:root:not(:-moz-lwtheme) #navigator-toolbox:-moz-window-inactive {
|
|
background-color: var(--lwt-accent-color-inactive, var(--lwt-accent-color)) !important;
|
|
}
|
|
}
|
|
|
|
.tab-label-container:not([selected="true"], [multiselected]) {
|
|
opacity: 1 !important;
|
|
}
|
|
|
|
#TabsToolbar .toolbarbutton-animatable-box,
|
|
#TabsToolbar .toolbarbutton-1 {
|
|
fill: currentColor !important;
|
|
}
|
|
|
|
.tabbrowser-tab[multiselected]:not(:-moz-lwtheme),
|
|
.tabbrowser-tab[visuallyselected="true"]:not(:-moz-lwtheme) {
|
|
color: var(--lwt-tab-text, var(--toolbar-color)) !important;
|
|
}
|
|
|
|
.tabbrowser-tab:is([selected], [multiselected]):-moz-lwtheme {
|
|
z-index: 1;
|
|
}
|
|
|
|
.tab-close-button {
|
|
margin-inline-end: 8px !important;
|
|
width: 17px !important;
|
|
height: 17px !important;
|
|
padding: 4px !important;
|
|
border-radius: 2px !important;
|
|
}
|
|
|
|
.tab-throbber:not([pinned]),
|
|
.tab-icon-pending:not([pinned]),
|
|
.tab-icon-image:not([pinned]),
|
|
.tab-sharing-icon-overlay:not([pinned]) {
|
|
margin-inline-end: 10px !important;
|
|
}
|
|
|
|
/* tab volume icon/text */
|
|
.tab-secondary-label {
|
|
display: none !important;
|
|
}
|
|
|
|
#tabbrowser-tabs:not([secondarytext-unsupported]) .tab-label-container {
|
|
height: var(--tab-min-height) !important;
|
|
}
|
|
|
|
.tab-icon-stack:is([soundplaying], [muted], [activemedia-blocked])>.tab-icon-overlay,
|
|
.tabbrowser-tab:hover .tab-icon-stack:not([pinned], [sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked])> :not(.tab-icon-overlay) {
|
|
opacity: 1 !important;
|
|
}
|
|
|
|
#tabbrowser-tabs:not([closebuttons="activetab"]) .tab-icon-overlay:not([pinned]) {
|
|
margin-inline: 22px 6px !important;
|
|
}
|
|
|
|
.tabbrowser-tab:not([image]) .tab-icon-overlay:not([pinned]) {
|
|
margin-inline: 0px 6px !important;
|
|
}
|
|
|
|
/* move sound playing icon on top of favicon when there isn't enough space */
|
|
.tab-icon-overlay:not([crashed]):is([pinned], [sharing]),
|
|
#tabbrowser-tabs[closebuttons="activetab"] .tab-icon-overlay:not([crashed]) {
|
|
top: -5.5px !important;
|
|
inset-inline-end: -6px !important;
|
|
}
|
|
|
|
#tabbrowser-tabs[closebuttons="activetab"] :is(.tab-icon-overlay[soundplaying]:not([crashed]),
|
|
.tab-icon-overlay[muted]:not([crashed]),
|
|
.tab-icon-overlay[activemedia-blocked]:not([crashed])) {
|
|
stroke: var(--tab-icon-overlay-stroke, white) !important;
|
|
color: var(--tab-icon-overlay-fill, black) !important;
|
|
fill-opacity: 1 !important;
|
|
}
|
|
|
|
#TabsToolbar[brighttext] #tabbrowser-tabs[closebuttons="activetab"] :is(.tab-icon-overlay[soundplaying]:not([crashed]),
|
|
.tab-icon-overlay[muted]:not([crashed]),
|
|
.tab-icon-overlay[activemedia-blocked]:not([crashed])) {
|
|
stroke: var(--tab-icon-overlay-stroke, black) !important;
|
|
color: var(--tab-icon-overlay-fill, white) !important;
|
|
}
|
|
|
|
#tabbrowser-tabs[closebuttons="activetab"] :is(.tab-icon-overlay:not([crashed])[soundplaying]:hover,
|
|
.tab-icon-overlay:not([crashed])[muted]:hover,
|
|
.tab-icon-overlay:not([crashed])[activemedia-blocked]:hover) {
|
|
background-color: var(--tab-icon-overlay-stroke, white) !important;
|
|
}
|
|
|
|
#TabsToolbar[brighttext] #tabbrowser-tabs[closebuttons="activetab"] :is(.tab-icon-overlay:not([crashed])[soundplaying]:hover,
|
|
.tab-icon-overlay:not([crashed])[muted]:hover,
|
|
.tab-icon-overlay:not([crashed])[activemedia-blocked]:hover) {
|
|
background-color: var(--tab-icon-overlay-stroke, black) !important;
|
|
}
|
|
|
|
.tab-icon-overlay[soundplaying]:not([crashed]),
|
|
.tab-icon-overlay[muted]:not([crashed]),
|
|
.tab-icon-overlay[activemedia-blocked]:not([crashed]) {
|
|
border-radius: 4px !important;
|
|
padding: 0 !important;
|
|
}
|
|
|
|
.tabbrowser-tab {
|
|
font-size: 12px !important;
|
|
padding-inline: 0 !important;
|
|
overflow-clip-margin: 8px !important;
|
|
}
|
|
|
|
#TabsToolbar .toolbarbutton-1>.toolbarbutton-icon,
|
|
#TabsToolbar .toolbarbutton-1>.toolbarbutton-badge-stack {
|
|
border-radius: var(--toolbarbutton-border-radius) !important;
|
|
padding: var(--uc-toolbarbutton-inner-padding) calc(var(--uc-toolbarbutton-inner-padding) + 2px) !important;
|
|
}
|
|
|
|
#tabbrowser-tabs .toolbarbutton-1>.toolbarbutton-icon,
|
|
#tabbrowser-tabs .toolbarbutton-1>.toolbarbutton-badge-stack {
|
|
border-radius: var(--toolbarbutton-tabsline-border-radius) !important;
|
|
}
|
|
|
|
#TabsToolbar .toolbarbutton-1>.toolbarbutton-icon {
|
|
width: calc(2 * (var(--uc-toolbarbutton-inner-padding) + 2px) + 16px) !important;
|
|
height: calc(2 * var(--uc-toolbarbutton-inner-padding) + 16px) !important;
|
|
}
|
|
|
|
#TabsToolbar #tabs-newtab-button>.toolbarbutton-icon,
|
|
#TabsToolbar #alltabs-button>.toolbarbutton-badge-stack,
|
|
#TabsToolbar #tabbrowser-tabs[hasadjacentnewtabbutton][overflow="true"]~#new-tab-button>.toolbarbutton-icon {
|
|
padding: var(--uc-toolbarbutton-inner-padding) !important;
|
|
width: calc(2 * var(--uc-toolbarbutton-inner-padding) + 16px) !important;
|
|
}
|
|
|
|
#tabbrowser-tabs #tabs-newtab-button {
|
|
margin-inline-start: 2px !important;
|
|
}
|
|
|
|
.tab-content[pinned] {
|
|
padding: 0 12px !important;
|
|
}
|
|
|
|
/* Tab container indicator */
|
|
.tabbrowser-tab[usercontextid] .tab-background .tab-context-line {
|
|
height: 2px !important;
|
|
border-radius: 2px !important;
|
|
margin: 2px 7px 0 !important;
|
|
}
|
|
|
|
.tabbrowser-tab[selected][usercontextid] .tab-background .tab-context-line {
|
|
margin-inline: 9px !important;
|
|
}
|
|
|
|
.titlebar-spacer[type="post-tabs"] {
|
|
display: flex !important;
|
|
}
|
|
|
|
.titlebar-spacer[type="pre-tabs"],
|
|
.private-browsing-indicator {
|
|
display: none !important;
|
|
}
|
|
|
|
toolbarbutton[part="scrollbutton-up"],
|
|
toolbarbutton[part="scrollbutton-down"] {
|
|
border-width: 2px !important;
|
|
border-radius: calc(var(--toolbarbutton-border-radius) + 2px) !important;
|
|
margin-inline: 2px !important;
|
|
}
|
|
|
|
.tabbrowser-tab:not([pinned], [style*="max-width"])[fadein] {
|
|
max-width: 240px !important;
|
|
}
|
|
|
|
/* Tab separators */
|
|
.tabbrowser-tab .tab-stack {
|
|
&::before,
|
|
&::after {
|
|
content: "";
|
|
position: absolute;
|
|
height: 20px;
|
|
inset: 0 auto;
|
|
margin-block: auto;
|
|
border-left: 1px solid transparent;
|
|
}
|
|
|
|
&::before {
|
|
left: 0;
|
|
}
|
|
|
|
&::after {
|
|
right: 0;
|
|
}
|
|
}
|
|
|
|
/* Set separator color */
|
|
.tabbrowser-tab:not([selected], [multiselected], :hover) {
|
|
& .tab-stack::before,
|
|
&:last-of-type .tab-stack::after {
|
|
border-color: color-mix(in srgb, currentColor 34%, transparent);
|
|
}
|
|
}
|
|
|
|
/* Hide separator when previous sibling is hovered or selected */
|
|
.tabbrowser-tab:where([selected], [multiselected], :hover) + .tabbrowser-tab:not([selected], [multiselected], :hover) .tab-stack::before {
|
|
border-color: transparent !important;
|
|
}
|
|
|
|
/* Hide first tab separator if there are no buttons before it (Such as Firefox View) */
|
|
#TabsToolbar-customization-target > #tabbrowser-tabs:not(toolbarbutton:not(#fxa-toolbar-menu-button) + #tabbrowser-tabs) .tabbrowser-tab:first-of-type .tab-stack::before {
|
|
border-color: transparent !important;
|
|
}
|
|
|
|
/* .tabbrowser-tab:not([last-visible-tab="true"]) {
|
|
margin-inline-end: -1px !important;
|
|
} */
|
|
|
|
#tabbrowser-tabs[haspinnedtabs]:not([positionpinnedtabs])>#tabbrowser-arrowscrollbox>.tabbrowser-tab[first-visible-unpinned-tab] {
|
|
margin-inline-start: 0 !important;
|
|
}
|
|
|
|
#scrollbutton-up[part="scrollbutton-up"]:not(.menupopup-scrollbutton),
|
|
#scrollbutton-down[part="scrollbutton-down"]:not(.menupopup-scrollbutton) {
|
|
border-block-width: 2px !important;
|
|
padding-inline: calc(var(--uc-toolbarbutton-inner-padding) - 4px) !important;
|
|
padding-block: calc(var(--uc-toolbarbutton-inner-padding) - 0px) !important;
|
|
}
|
|
|
|
/* mac titlebar buttons */
|
|
@media (-moz-platform: macos) {
|
|
.titlebar-buttonbox {
|
|
margin-inline: calc((var(--tab-min-height) + var(--tab-block-margin) - 14px) / 2) !important;
|
|
}
|
|
|
|
.titlebar-buttonbox-container {
|
|
margin-inline-start: -6px !important;
|
|
margin-inline-end: -2px !important;
|
|
}
|
|
}
|
|
|
|
/* Tab Shadows */
|
|
#TabsToolbar>.toolbar-items {
|
|
margin-top: -2px !important;
|
|
}
|
|
|
|
.tabbrowser-tab,
|
|
#TabsToolbar #tabs-newtab-button,
|
|
/* no ::part workaround - may have side effects */
|
|
#scrollbutton-up[part="scrollbutton-up"]:not(.menupopup-scrollbutton),
|
|
#scrollbutton-down[part="scrollbutton-down"]:not(.menupopup-scrollbutton) {
|
|
margin-top: 2px !important;
|
|
}
|
|
|
|
#TabsToolbar #TabsToolbar-customization-target> :not(#tabbrowser-tabs) {
|
|
margin-top: calc(2px + var(--tab-block-margin)) !important;
|
|
}
|
|
|
|
/* add margin to tabs if they are the first or last tab */
|
|
#tabbrowser-arrowscrollbox:not([overflowing]) .tabbrowser-tab {
|
|
&:first-of-type {
|
|
margin-inline-start: 14px !important;
|
|
}
|
|
|
|
&:last-of-type {
|
|
margin-inline-end: 6px !important;
|
|
}
|
|
}
|
|
|
|
/* remove gap between pinned and unpinned tabs */
|
|
#tabbrowser-tabs[haspinnedtabs]:not([positionpinnedtabs]) > #tabbrowser-arrowscrollbox > .tabbrowser-tab:nth-child(1 of :not([pinned], [hidden])) {
|
|
margin-inline-start: 0 !important;
|
|
}
|
|
|
|
#tabbrowser-tabs {
|
|
margin-inline-start: -6px !important;
|
|
border-inline: none !important;
|
|
}
|
|
|
|
#TabsToolbar {
|
|
padding-inline-start: 6px !important;
|
|
}
|
|
|
|
#tabbrowser-tabs[positionpinnedtabs]>#tabbrowser-arrowscrollbox {
|
|
margin-inline-start: 8px !important;
|
|
}
|
|
|
|
#tabbrowser-tabs[positionpinnedtabs]>#tabbrowser-arrowscrollbox>.tabbrowser-tab[pinned] {
|
|
clip-path: inset(-8px -8px 0) !important;
|
|
}
|
|
|
|
:root {
|
|
--uc-titlebar-shadow: 0 -3px 2px -3px rgb(0 0 0 / .2) inset;
|
|
--uc-tab-shadow:
|
|
0 0 0 1px var(--lwt-tab-line-color, var(--lwt-tabs-border-color, transparent)),
|
|
0px 2px 4px rgb(0 0 0 / .2), 0 4px 8px rgb(0 0 0 / .1);
|
|
}
|
|
|
|
:root[lwtheme-brighttext="true"] {
|
|
--uc-titlebar-shadow: 0 -3px 2px -3px rgb(0 0 0 / .75) inset inset;
|
|
--uc-tab-shadow:
|
|
0 0 0 1px var(--lwt-tab-line-color, var(--lwt-tabs-border-color, transparent)),
|
|
0 2px 4px rgb(0 0 0 / .45), 0 0px 2px rgb(0 0 0 / .2);
|
|
}
|
|
|
|
#tabbrowser-tabs .tab-background:is([selected], [multiselected]),
|
|
#TabsToolbar #firefox-view-button[open] > .toolbarbutton-icon {
|
|
box-shadow: var(--uc-tab-shadow) !important;
|
|
}
|
|
|
|
#titlebar {
|
|
box-shadow: var(--uc-titlebar-shadow) !important;
|
|
}
|
|
|
|
#tabbrowser-tabs[closebuttons="activetab"] .tabbrowser-tab .tab-label-container {
|
|
--tab-label-mask-size: 1em !important;
|
|
}
|
|
|
|
#tabbrowser-tabs[closebuttons="activetab"] .tabbrowser-tab:not([pinned]) .tab-content {
|
|
padding-inline: calc(var(--inline-tab-padding) - 4px) 0 !important;
|
|
}
|
|
|
|
.tab-content {
|
|
padding-inline: var(--inline-tab-padding) 0 !important;
|
|
}
|
|
|
|
/* new private browsing indicator */
|
|
:root[privatebrowsingmode="temporary"] #TabsToolbar .toolbar-items,
|
|
:root[privatebrowsingmode="temporary"] #TabsToolbar .titlebar-buttonbox-container {
|
|
position: relative;
|
|
z-index: 1;
|
|
}
|
|
|
|
:root[privatebrowsingmode="temporary"] .titlebar-spacer[type="post-tabs"] {
|
|
display: none !important;
|
|
}
|
|
|
|
#private-browsing-indicator-with-label {
|
|
position: relative !important;
|
|
isolation: isolate;
|
|
margin-inline: -16px -16px !important;
|
|
padding-inline: 32px 24px !important;
|
|
font-size: 12px;
|
|
color: var(--uc-private-browsing-indicator-text, var(--toolbar-bgcolor)) !important;
|
|
--uc-bg-color: var(--uc-private-browsing-indicator, var(--lwt-toolbarbutton-icon-fill-attention, var(--toolbarbutton-icon-fill-attention)));
|
|
--uc-gradient: linear-gradient(to right, transparent, var(--uc-bg-color) 35%);
|
|
--uc-gradient-alt: linear-gradient(to right, transparent, var(--uc-bg-color) 25%, var(--uc-bg-color) 75%, transparent);
|
|
background: var(--uc-gradient);
|
|
}
|
|
|
|
@media (-moz-gtk-csd-available) {
|
|
:root[privatebrowsingmode] #fxa-toolbar-menu-button:not(:-moz-lwtheme) {
|
|
--uc-bg-color: -moz-accent-color !important;
|
|
color: -moz-accent-color-foreground !important;
|
|
}
|
|
}
|
|
|
|
@media (-moz-platform: windows),
|
|
(-moz-gtk-csd-available) {
|
|
@media not (-moz-gtk-csd-reversed-placement) {
|
|
:root[tabsintitlebar] #toolbar-menubar:not([autohide="false"])~#TabsToolbar #private-browsing-indicator-with-label {
|
|
background: var(--uc-gradient-alt);
|
|
}
|
|
}
|
|
}
|
|
|
|
#private-browsing-indicator-with-label .private-browsing-indicator-icon {
|
|
height: 24px !important;
|
|
width: 24px !important;
|
|
}
|
|
|
|
:root,
|
|
:root[lang^="en"] {
|
|
--uc-string-private: "Private";
|
|
}
|
|
|
|
/* Change "Private Browsing" text to "Private" (English locale only) */
|
|
:root:is([lang^="en"]) #private-browsing-indicator-with-label>label {
|
|
display: none !important;
|
|
}
|
|
|
|
:root:is([lang^="en"]) #private-browsing-indicator-with-label::after {
|
|
content: var(--uc-string-private);
|
|
margin-block: 1px 2px;
|
|
margin-inline: 6px 5px;
|
|
}
|
|
|
|
#tabbrowser-tabs[secondarytext-unsupported] .tab-icon-stack[indicator-replaces-favicon] > :not(.tab-icon-overlay) {
|
|
opacity: 1 !important;
|
|
}
|