diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 541c511..91eea31 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -15,4 +15,4 @@ # custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] github: [black7375] -ko_fi: [black7375] +ko_fi: black7375 diff --git a/CREDITS b/CREDITS index 24c1a9c..faa6602 100644 --- a/CREDITS +++ b/CREDITS @@ -28,7 +28,8 @@ W: https://github.com/zapSNH ---------- Sponsors -N: Private sponsors - 4 +N: Private sponsors - 5 +- https://ko-fi.com/home/coffeeshop?txid=be854d98-0856-48a6-8ec2-3f2a42f0b9d0 N: Alessandro Rubino W: https://github.com/Babbiorsetto @@ -40,6 +41,9 @@ W: https://github.com/Cyberax N: AuRiMaS666 W: https://github.com/AuRiMaS666 +N: BrowserWorks +W: https://github.com/BrowserWorks + N: Duncanyoyo1 W: https://ko-fi.com/duncanyoyo1 @@ -134,6 +138,10 @@ N: hellojaccc E: kim@taekyeong.me W: https://github.com/hellojaccc +N: irhdevel +E: irihi.design@gmail.com +W: https://github.com/irhdevel + N: James Upjohn E: jammehcow@jammehcow.co.nz W: https://github.com/jammehcow diff --git a/README.org b/README.org index 59925a2..b9c181b 100644 --- a/README.org +++ b/README.org @@ -192,13 +192,14 @@ Thanks to all sponsors & contributors to this project for providing help and dev *Sponsors* [[https://www.oss.kr/][https://user-images.githubusercontent.com/25581533/203210367-9f2eed69-666a-4218-acde-128892aa09d8.png]] -[[https://github.com/ojaha065][@@html:@@]] -[[https://github.com/DPS0340][@@html:@@]] +[[https://github.com/BrowserWorks][@@html:@@]] +[[https://github.com/ojaha065][@@html:@@]] +[[https://github.com/DPS0340][@@html:@@]] [[https://github.com/ZachKnife1][@@html:@@]] -[[https://github.com/kanlukasz][@@html:@@]] -[[https://github.com/nikkehtine][@@html:@@]] -[[https://github.com/Babbiorsetto][@@html:@@]] -[[https://github.com/Mike-Kennelly][@@html:@@]] +[[https://github.com/kanlukasz][@@html:@@]] +[[https://github.com/nikkehtine][@@html:@@]] +[[https://github.com/Babbiorsetto][@@html:@@]] +[[https://github.com/Mike-Kennelly][@@html:@@]] [[https://github.com/Cyberax][@@html:@@]] [[https://github.com/AuRiMaS666][@@html:@@]] [[https://github.com/firefox9067][@@html:@@]] @@ -207,8 +208,8 @@ Thanks to all sponsors & contributors to this project for providing help and dev - A donation was received on [[https://ko-fi.com/black7375][Ko-Fi]] - [[https://ko-fi.com/home/coffeeshop?txid=97e5fa0d-c73e-4308-a2fd-6b44b08cd828][Safira]] - - [[https://ko-fi.com/duncanyoyo1][https://ko-fi.com/duncanyoyo1]] -- Private sponsors: 4 + - [[https://ko-fi.com/duncanyoyo1][duncanyoyo1]] +- Private sponsors: 5 *Contributors* diff --git a/css/leptonChrome.css b/css/leptonChrome.css index dac3290..de754de 100644 --- a/css/leptonChrome.css +++ b/css/leptonChrome.css @@ -133,9 +133,18 @@ --tabs-border-color: rgba(0, 0, 0, 0.4); /* Legacy: v96, (0, 0, 0, 0.3) -> (0, 0, 0, 0.4) */ --lwt-tabs-border-color: rgba(0, 0, 0, 0.4); } + #main-window { + background-color: WindowFrame !important; + } + :root[lwtheme][lwtheme-image] #customization-container { + background-image: none !important; + } #customization-container { background-color: transparent !important; /* Original: color-mix(in srgb, -moz-dialog 85%, white) */ } + :root:not([lwtheme]) #customization-container { + background-color: var(--toolbar-non-lwt-bgcolor) !important; + } /*= Findbar Border Color =====================================================*/ html|input.findbar-textbox { border: 1px solid var(--input-border-color, var(--toolbar-field-border-color, ThreeDShadow)) !important; /* Original: 1px solid var(--input-border-color, var(--toolbar-field-border-color)) */ @@ -1987,6 +1996,15 @@ .notification-button:hover:active { background-color: var(--button-active-bgcolor) !important; } + .notification-button.primary { + background-color: var(--button-primary-bgcolor) !important; + } + .notification-button.primary:hover { + background-color: var(--button-primary-hover-bgcolor) !important; + } + .notification-button.primary:hover:active { + background-color: var(--button-primary-active-bgcolor) !important; + } html|button.ghost-button:not(.semi-transparent):enabled:hover { background-color: var(--button-hover-bgcolor) !important; } @@ -2023,8 +2041,8 @@ #editBMPanel_tagsSelector > richlistitem[selected="true"] { background-color: var(--button-active-bgcolor, color-mix(in srgb, currentColor 30%, transparent)) !important; } - #editBMPanel_namePicker, - #editBMPanel_tagsField { + #editBookmarkPanel #editBMPanel_namePicker, + #editBookmarkPanel #editBMPanel_tagsField { --input-bgcolor: var(--arrowpanel-background, Field); --input-color: var(--arrowpanel-color, FieldText); } @@ -7460,6 +7478,117 @@ margin: unset !important; } } +@supports not -moz-bool-pref("userChrome.tab.photon_like_contextline") { + @supports -moz-bool-pref("userChrome.tab.supernova_like_contextline") { + .tab-context-line { + display: inline-flex !important; + display: -moz-inline-box !important; + height: 1px !important; + border-radius: 9999px !important; + margin-top: 3px; + margin-left: 5px; + margin-right: 5px; + } + /* Override container tab style */ + tabs tab.tabbrowser-tab[usercontextid] > .tab-stack > .tab-background > .tab-context-line { + margin-top: 3px !important; + margin-left: 5px !important; + margin-right: 5px !important; + } + tab.tabbrowser-tab[usercontextid]:not([selected="true"], [multiselected]) + > .tab-stack + > .tab-background + > .tab-context-line { + opacity: 0; + transition: all 0.2s cubic-bezier(0, 0.9, 0.15, 1) !important; + } + :root[lwtheme-mozlightdark]:not([lwthemetextcolor="bright"]), + :root[style*="--lwt-accent-color: rgb(240, 240, 244); --lwt-text-color: rgba(21, 20, 26);"] .tab-context-line, + :root[lwtheme-mozlightdark][lwthemetextcolor="bright"], + :root[style*="--lwt-accent-color: rgb(28, 27, 34); --lwt-text-color: rgba(251, 251, 254);"] .tab-context-line { + --tab-line-color: #45a1ff; + } + .tabbrowser-tab:is([selected], [multiselected]) .tab-context-line { + background-color: var(--tab-line-color, #45a1ff) !important; + } + /* Set the active effect */ + tabs tab.tabbrowser-tab[usercontextid]:active > .tab-stack > .tab-background > .tab-context-line { + margin-left: 6px !important; + margin-right: 6px !important; + } + .tabbrowser-tab:active > .tab-stack > .tab-background > .tab-context-line { + background: #217ddb !important; + margin-left: 6px; + margin-right: 6px; + } + /* Set the hover effect */ + .tabbrowser-tab:hover:not([selected="true"], [multiselected]) > .tab-stack > .tab-background > .tab-context-line { + background-color: rgba(0, 0, 0, 0.2) !important; + opacity: 1 !important; + transform: none !important; + } + #TabsToolbar[brighttext] + .tabbrowser-tab:hover:not([selected="true"], [multiselected]) + > .tab-stack + > .tab-background + > .tab-context-line { + background-color: rgba(255, 255, 255, 0.3137254902) !important; + } + /* Animation */ + @media (prefers-reduced-motion: no-preference) { + .tabbrowser-tab:hover:not([selected="true"], [multiselected]) > .tab-stack > .tab-background > .tab-context-line { + animation: toWide 0.2s cubic-bezier(0, 0.9, 0.15, 1); + } + /* Animation for container tab can't have width change... */ + tab.tabbrowser-tab[usercontextid]:hover:not([selected="true"], [multiselected]) + > .tab-stack + > .tab-background + > .tab-context-line { + opacity: 1; + } + } + /* Animation for hover effect */ + @keyframes toWide { + 0% { + opacity: 0.8; + margin-left: 40%; + margin-right: 40%; + } + 100% { + opacity: 1; + margin-left: 5px; + margin-right: 5px; + } + } + /* --- copied (not modified) from _photon_like_contextline.scss --- */ + /* Prevent identity color flashing */ + .tabbrowser-tab[usercontextid] .tab-context-line { + --identity-icon-color: none; + } + :root:not([customizing="true"]) #TabsToolbar[brighttext] tab[visuallyselected] > stack::before, + :root:not([customizing="true"]) #TabsToolbar[brighttext] tab[visuallyselected] > stack::after { + /* As Selected Tab - Box Shadow */ + stroke: var(--toolbar-color) !important; + } + /* Remove side's background color border */ + :root:is(:-moz-lwtheme, [lwtheme]) + #TabsToolbar[brighttext] + #tabbrowser-tabs:not([noshadowfortests]) + .tabbrowser-tab:is([visuallyselected], [multiselected]) + > .tab-stack + > .tab-background { + --tabs-border-color: rgba(0, 0, 0, 0.3) !important; + box-shadow: 0 0 1px var(--tabs-border-color) !important; /* Original: 0 0 1px var(--tab-line-color, rgba(128,128,142,0.9)) */ + } + #TabsToolbar:not([brighttext]) + #tabbrowser-tabs:not([noshadowfortests]) + .tabbrowser-tab:is([visuallyselected], [multiselected]) + > .tab-stack + > .tab-background { + box-shadow: 0 0 1px var(--tabs-border-color), 0 0 4px rgba(128, 128, 142, 0.5) !important; /* Original: 0 0 1px var(--tab-line-color, rgba(128,128,142,0.9)), 0 0 4px rgba(128,128,142,0.5) */ + } + } +} /*= Unselected Tab - Divide line =============================================*/ /*= Unselected Tab - Dynamic Separator =======================================*/ @supports -moz-bool-pref("userChrome.tab.dynamic_separator") { @@ -9706,6 +9835,9 @@ position: fixed !important; /* Needed for content to take up entire height */ z-index: 1000 !important; /* Puts the UI above the content */ } + :root[sizemode="fullscreen"] #navigator-toolbox:is(:hover, :focus-within) { + margin-top: 0 !important; + } :root[sizemode="fullscreen"] :-moz-any(#navigator-toolbox, #titlebar, #nav-bar, #PersonalToolbar) { width: 100%; /* Makes the UI take up the entire width */ } @@ -9718,8 +9850,8 @@ } } @supports -moz-bool-pref("userChrome.fullscreen.show_bookmarkbar") { - :root:not([sizemode="fullscreen"]) #PersonalToolbar[initialized="true"]:not([collapsed="true"]), - :root[sizemode="fullscreen"] #PersonalToolbar[initialized="true"] { + :root:not([sizemode="fullscreen"]) #PersonalToolbar[initialized]:not([collapsed="true"]), + :root[sizemode="fullscreen"] #PersonalToolbar[initialized] { visibility: unset !important; /* Makes the bookmarks toolbar visible if enabled */ } } @@ -11330,6 +11462,21 @@ .sendToDevice-device.subviewbutton.sync-menuitem.sendtab-target:not([clientType]) { list-style-image: url("chrome://global/skin/icons/settings.svg"); } + .sendToDevice-device[clientType="phone"] { + list-style-image: url("../icons/device-phone.svg") !important; + } + .sendToDevice-device[clientType="tablet"] { + list-style-image: url("../icons/device-tablet.svg") !important; + } + .sendToDevice-device[clientType="desktop"] { + list-style-image: url("../icons/device-desktop.svg") !important; + } + .sendToDevice-device[clientType="tv"] { + list-style-image: url("../icons/device-tv.svg") !important; + } + .sendToDevice-device[clientType="vr"] { + list-style-image: url("../icons/device-vr.svg") !important; + } /*= Panel - Bookmark =========================================================*/ #panelMenuBookmarkThisPage { list-style-image: url("chrome://browser/skin/bookmark-hollow.svg"); @@ -11536,6 +11683,9 @@ fill: currentColor; margin-inline-end: 1em; } + #protections-popup-report-broken-site-button { + list-style-image: url("chrome://global/skin/icons/lightbulb.svg"); + } #protections-popup-settings-button > .protections-popup-settings-icon, #protections-popup-multiView .panel-subview-footer-button { list-style-image: url("chrome://global/skin/icons/settings.svg"); @@ -11580,6 +11730,12 @@ #sidebar-switcher-tabs:is(menuitem) { --menuitem-image: url("../icons/synced-tabs.svg"); } + #sidebar-switcher-genai-chat.subviewbutton { + list-style-image: url("chrome://mozapps/skin/extensions/category-discover.svg"); + } + #sidebar-switcher-genai-chat:is(menuitem) { + --menuitem-image: url("chrome://mozapps/skin/extensions/category-discover.svg"); + } #sidebar-reverse-position.subviewbutton { list-style-image: var(--uc-sidebar-icon-reverse); } @@ -11659,7 +11815,8 @@ #context-sendpagetodevice-popup, #context-sendlinktodevice-popup, #frame > menupopup, - #spell-dictionaries-menu + #spell-dictionaries-menu, + #context-ask-chat > menupopup ) > menuitem:not([type="checkbox"][checked="true"], [type="radio"]), .openintabs-menuitem, @@ -11744,7 +11901,8 @@ #context-sendpagetodevice-popup, #context-sendlinktodevice-popup, #frame > menupopup, - #spell-dictionaries-menu + #spell-dictionaries-menu, + #context-ask-chat > menupopup ) > menuitem:not([type="checkbox"][checked="true"], [type="radio"]), .openintabs-menuitem, @@ -11838,7 +11996,8 @@ #context-sendpagetodevice-popup, #context-sendlinktodevice-popup, #frame > menupopup, - #spell-dictionaries-menu + #spell-dictionaries-menu, + #context-ask-chat > menupopup ) > menuitem:not([type="checkbox"][checked="true"], [type="radio"]), .openintabs-menuitem, @@ -11907,7 +12066,8 @@ #context-sendpagetodevice-popup, #context-sendlinktodevice-popup, #frame > menupopup, - #spell-dictionaries-menu + #spell-dictionaries-menu, + #context-ask-chat > menupopup ) > menuitem:not([type="checkbox"][checked="true"], [type="radio"]), .openintabs-menuitem, @@ -12140,8 +12300,13 @@ #sidebartabs_asamuzak_jp-menuitem-_reloadAllTabs { --menuitem-image: url("../icons/reload.svg"); } + #context_playTab, + #context_playSelectedTabs { + --menuitem-image: url("../icons/play-fill.svg"); + } #context_toggleMuteTab, #context_toggleMuteSelectedTabs, + #treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab[label="Mute Tab"], #treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab-mute, #tabcenter-reborn_ariasuni-menuitem-_contextMenuMuteTab, #sidebartabs_asamuzak_jp-menuitem-_muteTab { @@ -12150,6 +12315,7 @@ } #context_toggleMuteTab[muted], #context_toggleMuteSelectedTabs[muted], + #treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab[label="Unmute Tab"], #treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab-unmute, #tabcenter-reborn_ariasuni-menuitem-_contextMenuMuteTab[label="Unmute Tab"], #sidebartabs_asamuzak_jp-menuitem-_muteTab[label="Unmute Tab"] { @@ -12169,6 +12335,12 @@ #sidebartabs_asamuzak_jp-menuitem-_pinTab[label="Unpin Tab"] { --menuitem-image: url("../icons/unpin-tab.svg"); } + #treestyletab_piro_sakura_ne_jp-menuitem-_context_topLevel_toggleSticky[label="Stick Tab to Edges"] { + --menuitem-image: url("../icons/align-distribute-top.svg"); + } + #treestyletab_piro_sakura_ne_jp-menuitem-_context_topLevel_toggleSticky[label="Unstick Tab to Edges"] { + --menuitem-image: url("../icons/align-space-evenly-vertical.svg"); + } #context_duplicateTab, #context_duplicateTabs, #treestyletab_piro_sakura_ne_jp-menuitem-_context_duplicateTab, @@ -12230,6 +12402,7 @@ --menuitem-image: url("chrome://global/skin/icons/close.svg"); } @supports -moz-bool-pref("userChrome.icon.menu.full") { + #treestyletab_piro_sakura_ne_jp-menuitem-_context_closeDuplicatedTabs, #context_closeDuplicateTabs { --menuitem-image: var(--uc-tab-close-duplicate-icon); } @@ -12332,7 +12505,7 @@ } } #tm-renameTab { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #tm-copyTabUrl { --menuitem-image: url("../icons/link.svg"); @@ -12591,6 +12764,9 @@ #context-translate-selection { --menuitem-image: url("../icons/translations.svg"); } + #context-ask-chat { + --menuitem-image: url("../icons/chat-sparkle.svg"); + } #frame { --menuitem-image: url("../icons/command-frames.svg"); } @@ -12640,6 +12816,35 @@ --menuitem-image: url("chrome://browser/skin/bookmark.svg"); } } + /*= context-ask-chat =========================================================*/ + #ask-chat-shortcuts .toolbarbutton-icon { + order: -1; + margin-inline-end: var(--arrowpanel-menuitem-margin-inline) !important; + } + #ask-chat-shortcuts .subviewbutton:nth-child(1) { + list-style-image: url("../icons/apps-list-detail.svg"); + } + #ask-chat-shortcuts .subviewbutton:nth-child(2) { + list-style-image: url("../icons/code-text.svg"); + } + #ask-chat-shortcuts .subviewbutton:nth-child(3) { + list-style-image: url("../icons/tetris-app.svg"); + } + #ask-chat-shortcuts .subviewbutton:nth-child(4) { + list-style-image: url("../icons/arrow-up-exclamation.svg"); + } + #context-ask-chat menuitem:nth-child(1) { + --menuitem-image: url("../icons/apps-list-detail.svg"); + } + #context-ask-chat menuitem:nth-child(2) { + --menuitem-image: url("../icons/code-text.svg"); + } + #context-ask-chat menuitem:nth-child(3) { + --menuitem-image: url("../icons/tetris-app.svg"); + } + #context-ask-chat menuitem:nth-child(4) { + --menuitem-image: url("../icons/arrow-up-exclamation.svg"); + } /*= main-context-menu-frame ==================================================*/ #context-showonlythisframe { --menuitem-image: url("../icons/eye-show.svg"); @@ -12778,7 +12983,7 @@ #placesContext_show_bookmark\:info, #placesContext_show\:info, #placesContext_show_folder\:info { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #placesContext_deleteBookmark, #placesContext_deleteFolder, @@ -12842,7 +13047,7 @@ --menuitem-image: url("chrome://global/skin/icons/check.svg"); } #blockedPopupOptions > menuitem[oncommand="gPopupBlockerObserver.editPopupSettings();"] { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #blockedPopupDontShowMessage { /* checkbox */ @@ -13057,6 +13262,9 @@ --menuitem-image: url("../icons/send.svg"); } /*= urlbarView-result-menu ===================================================*/ + .urlbarView-result-menuitem[data-command="trendingblock"] { + --menuitem-image: url("../icons/eye-hide.svg"); + } .urlbarView-result-menuitem[data-command="dismiss"] { --menuitem-image: url("chrome://global/skin/icons/delete.svg"); } @@ -13084,7 +13292,7 @@ --menuitem-image: url("../icons/mail-inbox-all.svg"); } #edit-menu { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #view-menu { --menuitem-image: url("../icons/content-view.svg"); @@ -13500,6 +13708,9 @@ menuitem.privatetab-icon { --menuitem-image: url("../icons/private-favicon.svg"); } + #sidebar_waterfox_net-menuitem-_openAllBookmarksWithStructure { + --menuitem-image: url("../icons/organization-horizontal.svg"); + } } /*= Tor Browser ==============================================================*/ @supports -moz-bool-pref("userChrome.icon.panel") { @@ -13562,7 +13773,7 @@ --menuitem-image: url("chrome://global/skin/icons/reload.svg"); } #usercssloader-submenupopup > menuitem[data-l10n-id="make-browsercss-file"] { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #usercssloader-submenupopup > menuitem[data-l10n-id="open-css-folder"] { --menuitem-image: var(--uc-folder-icon); @@ -13753,11 +13964,26 @@ --lwt-tabs-border-color: rgba(0, 0, 0, 0.4); } } +@media (-moz-bool-pref: "userChrome.compatibility.theme") { + #main-window { + background-color: WindowFrame !important; + } +} +@media (-moz-bool-pref: "userChrome.compatibility.theme") { + :root[lwtheme][lwtheme-image] #customization-container { + background-image: none !important; + } +} @media (-moz-bool-pref: "userChrome.compatibility.theme") { #customization-container { background-color: transparent !important; /* Original: color-mix(in srgb, -moz-dialog 85%, white) */ } } +@media (-moz-bool-pref: "userChrome.compatibility.theme") { + :root:not([lwtheme]) #customization-container { + background-color: var(--toolbar-non-lwt-bgcolor) !important; + } +} @media (-moz-bool-pref: "userChrome.compatibility.theme") { html|input.findbar-textbox { border: 1px solid var(--input-border-color, var(--toolbar-field-border-color, ThreeDShadow)) !important; /* Original: 1px solid var(--input-border-color, var(--toolbar-field-border-color)) */ @@ -15626,6 +15852,17 @@ background-color: var(--button-active-bgcolor) !important; } } +@media (-moz-bool-pref: "userChrome.theme.fully_color") { + .notification-button.primary { + background-color: var(--button-primary-bgcolor) !important; + } + .notification-button.primary:hover { + background-color: var(--button-primary-hover-bgcolor) !important; + } + .notification-button.primary:hover:active { + background-color: var(--button-primary-active-bgcolor) !important; + } +} @media (-moz-bool-pref: "userChrome.theme.fully_color") { html|button.ghost-button:not(.semi-transparent):enabled:hover { background-color: var(--button-hover-bgcolor) !important; @@ -15672,8 +15909,8 @@ } } @media (-moz-bool-pref: "userChrome.theme.fully_color") { - #editBMPanel_namePicker, - #editBMPanel_tagsField { + #editBookmarkPanel #editBMPanel_namePicker, + #editBookmarkPanel #editBMPanel_tagsField { --input-bgcolor: var(--arrowpanel-background, Field); --input-color: var(--arrowpanel-color, FieldText); } @@ -21783,6 +22020,125 @@ margin: unset !important; } } +@media (not (-moz-bool-pref: "userChrome.tab.photon_like_contextline")) and (-moz-bool-pref: "userChrome.tab.supernova_like_contextline") { + .tab-context-line { + display: inline-flex !important; + display: -moz-inline-box !important; + height: 1px !important; + border-radius: 9999px !important; + margin-top: 3px; + margin-left: 5px; + margin-right: 5px; + } + /* Override container tab style */ + tabs tab.tabbrowser-tab[usercontextid] > .tab-stack > .tab-background > .tab-context-line { + margin-top: 3px !important; + margin-left: 5px !important; + margin-right: 5px !important; + } + tab.tabbrowser-tab[usercontextid]:not([selected="true"], [multiselected]) + > .tab-stack + > .tab-background + > .tab-context-line { + opacity: 0; + transition: all 0.2s cubic-bezier(0, 0.9, 0.15, 1) !important; + } + :root[lwtheme-mozlightdark]:not([lwthemetextcolor="bright"]), + :root[style*="--lwt-accent-color: rgb(240, 240, 244); --lwt-text-color: rgba(21, 20, 26);"] .tab-context-line, + :root[lwtheme-mozlightdark][lwthemetextcolor="bright"], + :root[style*="--lwt-accent-color: rgb(28, 27, 34); --lwt-text-color: rgba(251, 251, 254);"] .tab-context-line { + --tab-line-color: #45a1ff; + } + .tabbrowser-tab:is([selected], [multiselected]) .tab-context-line { + background-color: var(--tab-line-color, #45a1ff) !important; + } + /* Set the active effect */ + tabs tab.tabbrowser-tab[usercontextid]:active > .tab-stack > .tab-background > .tab-context-line { + margin-left: 6px !important; + margin-right: 6px !important; + } + .tabbrowser-tab:active > .tab-stack > .tab-background > .tab-context-line { + background: #217ddb !important; + margin-left: 6px; + margin-right: 6px; + } + /* Set the hover effect */ + .tabbrowser-tab:hover:not([selected="true"], [multiselected]) > .tab-stack > .tab-background > .tab-context-line { + background-color: rgba(0, 0, 0, 0.2) !important; + opacity: 1 !important; + transform: none !important; + } + #TabsToolbar[brighttext] + .tabbrowser-tab:hover:not([selected="true"], [multiselected]) + > .tab-stack + > .tab-background + > .tab-context-line { + background-color: rgba(255, 255, 255, 0.3137254902) !important; + } + /* Animation */ + /* Animation for hover effect */ + /* --- copied (not modified) from _photon_like_contextline.scss --- */ + /* Prevent identity color flashing */ + /* Remove side's background color border */ +} +@media (not (-moz-bool-pref: "userChrome.tab.photon_like_contextline")) and (-moz-bool-pref: "userChrome.tab.supernova_like_contextline") and (prefers-reduced-motion: no-preference) { + .tabbrowser-tab:hover:not([selected="true"], [multiselected]) > .tab-stack > .tab-background > .tab-context-line { + animation: toWide 0.2s cubic-bezier(0, 0.9, 0.15, 1); + } + /* Animation for container tab can't have width change... */ + tab.tabbrowser-tab[usercontextid]:hover:not([selected="true"], [multiselected]) + > .tab-stack + > .tab-background + > .tab-context-line { + opacity: 1; + } +} +@media (not (-moz-bool-pref: "userChrome.tab.photon_like_contextline")) and (-moz-bool-pref: "userChrome.tab.supernova_like_contextline") { + @keyframes toWide { + 0% { + opacity: 0.8; + margin-left: 40%; + margin-right: 40%; + } + 100% { + opacity: 1; + margin-left: 5px; + margin-right: 5px; + } + } +} +@media (not (-moz-bool-pref: "userChrome.tab.photon_like_contextline")) and (-moz-bool-pref: "userChrome.tab.supernova_like_contextline") { + .tabbrowser-tab[usercontextid] .tab-context-line { + --identity-icon-color: none; + } +} +@media (not (-moz-bool-pref: "userChrome.tab.photon_like_contextline")) and (-moz-bool-pref: "userChrome.tab.supernova_like_contextline") { + :root:not([customizing="true"]) #TabsToolbar[brighttext] tab[visuallyselected] > stack::before, + :root:not([customizing="true"]) #TabsToolbar[brighttext] tab[visuallyselected] > stack::after { + /* As Selected Tab - Box Shadow */ + stroke: var(--toolbar-color) !important; + } +} +@media (not (-moz-bool-pref: "userChrome.tab.photon_like_contextline")) and (-moz-bool-pref: "userChrome.tab.supernova_like_contextline") { + :root:is(:-moz-lwtheme, [lwtheme]) + #TabsToolbar[brighttext] + #tabbrowser-tabs:not([noshadowfortests]) + .tabbrowser-tab:is([visuallyselected], [multiselected]) + > .tab-stack + > .tab-background { + --tabs-border-color: rgba(0, 0, 0, 0.3) !important; + box-shadow: 0 0 1px var(--tabs-border-color) !important; /* Original: 0 0 1px var(--tab-line-color, rgba(128,128,142,0.9)) */ + } +} +@media (not (-moz-bool-pref: "userChrome.tab.photon_like_contextline")) and (-moz-bool-pref: "userChrome.tab.supernova_like_contextline") { + #TabsToolbar:not([brighttext]) + #tabbrowser-tabs:not([noshadowfortests]) + .tabbrowser-tab:is([visuallyselected], [multiselected]) + > .tab-stack + > .tab-background { + box-shadow: 0 0 1px var(--tabs-border-color), 0 0 4px rgba(128, 128, 142, 0.5) !important; /* Original: 0 0 1px var(--tab-line-color, rgba(128,128,142,0.9)), 0 0 4px rgba(128,128,142,0.5) */ + } +} /*= Unselected Tab - Divide line =============================================*/ /*= Unselected Tab - Dynamic Separator =======================================*/ @media (-moz-bool-pref: "userChrome.tab.dynamic_separator") { @@ -24165,6 +24521,9 @@ position: fixed !important; /* Needed for content to take up entire height */ z-index: 1000 !important; /* Puts the UI above the content */ } + :root[sizemode="fullscreen"] #navigator-toolbox:is(:hover, :focus-within) { + margin-top: 0 !important; + } :root[sizemode="fullscreen"] :-moz-any(#navigator-toolbox, #titlebar, #nav-bar, #PersonalToolbar) { width: 100%; /* Makes the UI take up the entire width */ } @@ -24176,8 +24535,8 @@ } } @media (-moz-bool-pref: "userChrome.fullscreen.show_bookmarkbar") { - :root:not([sizemode="fullscreen"]) #PersonalToolbar[initialized="true"]:not([collapsed="true"]), - :root[sizemode="fullscreen"] #PersonalToolbar[initialized="true"] { + :root:not([sizemode="fullscreen"]) #PersonalToolbar[initialized]:not([collapsed="true"]), + :root[sizemode="fullscreen"] #PersonalToolbar[initialized] { visibility: unset !important; /* Makes the bookmarks toolbar visible if enabled */ } } @@ -26131,6 +26490,23 @@ list-style-image: url("chrome://global/skin/icons/settings.svg"); } } +@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.panel") { + .sendToDevice-device[clientType="phone"] { + list-style-image: url("../icons/device-phone.svg") !important; + } + .sendToDevice-device[clientType="tablet"] { + list-style-image: url("../icons/device-tablet.svg") !important; + } + .sendToDevice-device[clientType="desktop"] { + list-style-image: url("../icons/device-desktop.svg") !important; + } + .sendToDevice-device[clientType="tv"] { + list-style-image: url("../icons/device-tv.svg") !important; + } + .sendToDevice-device[clientType="vr"] { + list-style-image: url("../icons/device-vr.svg") !important; + } +} @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.panel") { #panelMenuBookmarkThisPage { list-style-image: url("chrome://browser/skin/bookmark-hollow.svg"); @@ -26418,6 +26794,11 @@ margin-inline-end: 1em; } } +@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.panel") { + #protections-popup-report-broken-site-button { + list-style-image: url("chrome://global/skin/icons/lightbulb.svg"); + } +} @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.panel") { #protections-popup-settings-button > .protections-popup-settings-icon, #protections-popup-multiView .panel-subview-footer-button { @@ -26478,6 +26859,14 @@ --menuitem-image: url("../icons/synced-tabs.svg"); } } +@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.panel") { + #sidebar-switcher-genai-chat.subviewbutton { + list-style-image: url("chrome://mozapps/skin/extensions/category-discover.svg"); + } + #sidebar-switcher-genai-chat:is(menuitem) { + --menuitem-image: url("chrome://mozapps/skin/extensions/category-discover.svg"); + } +} @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.panel") { #sidebar-reverse-position.subviewbutton { list-style-image: var(--uc-sidebar-icon-reverse); @@ -26562,7 +26951,8 @@ #context-sendpagetodevice-popup, #context-sendlinktodevice-popup, #frame > menupopup, - #spell-dictionaries-menu + #spell-dictionaries-menu, + #context-ask-chat > menupopup ) > menuitem:not([type="checkbox"][checked="true"], [type="radio"]), .openintabs-menuitem, @@ -26666,7 +27056,8 @@ #context-sendpagetodevice-popup, #context-sendlinktodevice-popup, #frame > menupopup, - #spell-dictionaries-menu + #spell-dictionaries-menu, + #context-ask-chat > menupopup ) > menuitem:not([type="checkbox"][checked="true"], [type="radio"]), .openintabs-menuitem, @@ -26759,7 +27150,8 @@ #context-sendpagetodevice-popup, #context-sendlinktodevice-popup, #frame > menupopup, - #spell-dictionaries-menu + #spell-dictionaries-menu, + #context-ask-chat > menupopup ) > menuitem:not([type="checkbox"][checked="true"], [type="radio"]), .openintabs-menuitem, @@ -26823,7 +27215,8 @@ #context-sendpagetodevice-popup, #context-sendlinktodevice-popup, #frame > menupopup, - #spell-dictionaries-menu + #spell-dictionaries-menu, + #context-ask-chat > menupopup ) > menuitem:not([type="checkbox"][checked="true"], [type="radio"]), .openintabs-menuitem, @@ -27046,8 +27439,13 @@ #sidebartabs_asamuzak_jp-menuitem-_reloadAllTabs { --menuitem-image: url("../icons/reload.svg"); } + #context_playTab, + #context_playSelectedTabs { + --menuitem-image: url("../icons/play-fill.svg"); + } #context_toggleMuteTab, #context_toggleMuteSelectedTabs, + #treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab[label="Mute Tab"], #treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab-mute, #tabcenter-reborn_ariasuni-menuitem-_contextMenuMuteTab, #sidebartabs_asamuzak_jp-menuitem-_muteTab { @@ -27056,6 +27454,7 @@ } #context_toggleMuteTab[muted], #context_toggleMuteSelectedTabs[muted], + #treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab[label="Unmute Tab"], #treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab-unmute, #tabcenter-reborn_ariasuni-menuitem-_contextMenuMuteTab[label="Unmute Tab"], #sidebartabs_asamuzak_jp-menuitem-_muteTab[label="Unmute Tab"] { @@ -27075,6 +27474,12 @@ #sidebartabs_asamuzak_jp-menuitem-_pinTab[label="Unpin Tab"] { --menuitem-image: url("../icons/unpin-tab.svg"); } + #treestyletab_piro_sakura_ne_jp-menuitem-_context_topLevel_toggleSticky[label="Stick Tab to Edges"] { + --menuitem-image: url("../icons/align-distribute-top.svg"); + } + #treestyletab_piro_sakura_ne_jp-menuitem-_context_topLevel_toggleSticky[label="Unstick Tab to Edges"] { + --menuitem-image: url("../icons/align-space-evenly-vertical.svg"); + } #context_duplicateTab, #context_duplicateTabs, #treestyletab_piro_sakura_ne_jp-menuitem-_context_duplicateTab, @@ -27113,6 +27518,7 @@ /*= toolbar-context-menu =====================================================*/ /*= Tab Mix Plus =============================================================*/ /*= contentAreaContextMenu ===================================================*/ + /*= context-ask-chat =========================================================*/ /*= main-context-menu-frame ==================================================*/ /*= Tab Mix Plus =============================================================*/ /*= downloadsContextMenu =====================================================*/ /*= placeContext =============================================================*/ /*= Notification =============================================================*/ @@ -27169,6 +27575,7 @@ } } @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") and (-moz-bool-pref: "userChrome.icon.menu.full") { + #treestyletab_piro_sakura_ne_jp-menuitem-_context_closeDuplicatedTabs, #context_closeDuplicateTabs { --menuitem-image: var(--uc-tab-close-duplicate-icon); } @@ -27309,7 +27716,7 @@ } @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { #tm-renameTab { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } } @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { @@ -27710,6 +28117,11 @@ --menuitem-image: url("../icons/translations.svg"); } } +@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { + #context-ask-chat { + --menuitem-image: url("../icons/chat-sparkle.svg"); + } +} @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { #frame { --menuitem-image: url("../icons/command-frames.svg"); @@ -27779,6 +28191,52 @@ --menuitem-image: url("chrome://browser/skin/bookmark.svg"); } } +@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { + #ask-chat-shortcuts .toolbarbutton-icon { + order: -1; + margin-inline-end: var(--arrowpanel-menuitem-margin-inline) !important; + } +} +@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { + #ask-chat-shortcuts .subviewbutton:nth-child(1) { + list-style-image: url("../icons/apps-list-detail.svg"); + } +} +@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { + #ask-chat-shortcuts .subviewbutton:nth-child(2) { + list-style-image: url("../icons/code-text.svg"); + } +} +@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { + #ask-chat-shortcuts .subviewbutton:nth-child(3) { + list-style-image: url("../icons/tetris-app.svg"); + } +} +@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { + #ask-chat-shortcuts .subviewbutton:nth-child(4) { + list-style-image: url("../icons/arrow-up-exclamation.svg"); + } +} +@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { + #context-ask-chat menuitem:nth-child(1) { + --menuitem-image: url("../icons/apps-list-detail.svg"); + } +} +@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { + #context-ask-chat menuitem:nth-child(2) { + --menuitem-image: url("../icons/code-text.svg"); + } +} +@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { + #context-ask-chat menuitem:nth-child(3) { + --menuitem-image: url("../icons/tetris-app.svg"); + } +} +@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { + #context-ask-chat menuitem:nth-child(4) { + --menuitem-image: url("../icons/arrow-up-exclamation.svg"); + } +} @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { #context-showonlythisframe { --menuitem-image: url("../icons/eye-show.svg"); @@ -27994,7 +28452,7 @@ #placesContext_show_bookmark\:info, #placesContext_show\:info, #placesContext_show_folder\:info { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } } @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { @@ -28094,7 +28552,7 @@ } @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { #blockedPopupOptions > menuitem[oncommand="gPopupBlockerObserver.editPopupSettings();"] { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } } @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { @@ -28393,6 +28851,9 @@ } } @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { + .urlbarView-result-menuitem[data-command="trendingblock"] { + --menuitem-image: url("../icons/eye-hide.svg"); + } .urlbarView-result-menuitem[data-command="dismiss"] { --menuitem-image: url("chrome://global/skin/icons/delete.svg"); } @@ -28426,7 +28887,7 @@ --menuitem-image: url("../icons/mail-inbox-all.svg"); } #edit-menu { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #view-menu { --menuitem-image: url("../icons/content-view.svg"); @@ -29016,6 +29477,9 @@ menuitem.privatetab-icon { --menuitem-image: url("../icons/private-favicon.svg"); } + #sidebar_waterfox_net-menuitem-_openAllBookmarksWithStructure { + --menuitem-image: url("../icons/organization-horizontal.svg"); + } } @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.panel") { #appMenuNewIdentity { @@ -29078,7 +29542,7 @@ --menuitem-image: url("chrome://global/skin/icons/reload.svg"); } #usercssloader-submenupopup > menuitem[data-l10n-id="make-browsercss-file"] { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #usercssloader-submenupopup > menuitem[data-l10n-id="open-css-folder"] { --menuitem-image: var(--uc-folder-icon); diff --git a/css/leptonChromeESR.css b/css/leptonChromeESR.css index 699c3e0..284a4ed 100644 --- a/css/leptonChromeESR.css +++ b/css/leptonChromeESR.css @@ -133,9 +133,18 @@ --tabs-border-color: rgba(0, 0, 0, 0.4); /* Legacy: v96, (0, 0, 0, 0.3) -> (0, 0, 0, 0.4) */ --lwt-tabs-border-color: rgba(0, 0, 0, 0.4); } + #main-window { + background-color: WindowFrame !important; + } + :root[lwtheme][lwtheme-image] #customization-container { + background-image: none !important; + } #customization-container { background-color: transparent !important; /* Original: color-mix(in srgb, -moz-dialog 85%, white) */ } + :root:not([lwtheme]) #customization-container { + background-color: var(--toolbar-non-lwt-bgcolor) !important; + } /*= Findbar Border Color =====================================================*/ html|input.findbar-textbox { border: 1px solid var(--input-border-color, var(--toolbar-field-border-color, ThreeDShadow)) !important; /* Original: 1px solid var(--input-border-color, var(--toolbar-field-border-color)) */ @@ -2214,6 +2223,15 @@ .notification-button:hover:active { background-color: var(--button-active-bgcolor) !important; } + .notification-button.primary { + background-color: var(--button-primary-bgcolor) !important; + } + .notification-button.primary:hover { + background-color: var(--button-primary-hover-bgcolor) !important; + } + .notification-button.primary:hover:active { + background-color: var(--button-primary-active-bgcolor) !important; + } html|button.ghost-button:not(.semi-transparent):enabled:hover { background-color: var(--button-hover-bgcolor) !important; } @@ -2250,8 +2268,8 @@ #editBMPanel_tagsSelector > richlistitem[selected="true"] { background-color: var(--button-active-bgcolor, color-mix(in srgb, currentColor 30%, transparent)) !important; } - #editBMPanel_namePicker, - #editBMPanel_tagsField { + #editBookmarkPanel #editBMPanel_namePicker, + #editBookmarkPanel #editBMPanel_tagsField { --input-bgcolor: var(--arrowpanel-background, Field); --input-color: var(--arrowpanel-color, FieldText); } @@ -7890,6 +7908,117 @@ margin: unset !important; } } +@supports not -moz-bool-pref("userChrome.tab.photon_like_contextline") { + @supports -moz-bool-pref("userChrome.tab.supernova_like_contextline") { + .tab-context-line { + display: inline-flex !important; + display: -moz-inline-box !important; + height: 1px !important; + border-radius: 9999px !important; + margin-top: 3px; + margin-left: 5px; + margin-right: 5px; + } + /* Override container tab style */ + tabs tab.tabbrowser-tab[usercontextid] > .tab-stack > .tab-background > .tab-context-line { + margin-top: 3px !important; + margin-left: 5px !important; + margin-right: 5px !important; + } + tab.tabbrowser-tab[usercontextid]:not([selected="true"], [multiselected]) + > .tab-stack + > .tab-background + > .tab-context-line { + opacity: 0; + transition: all 0.2s cubic-bezier(0, 0.9, 0.15, 1) !important; + } + :root[lwtheme-mozlightdark]:not([lwthemetextcolor="bright"]), + :root[style*="--lwt-accent-color: rgb(240, 240, 244); --lwt-text-color: rgba(21, 20, 26);"] .tab-context-line, + :root[lwtheme-mozlightdark][lwthemetextcolor="bright"], + :root[style*="--lwt-accent-color: rgb(28, 27, 34); --lwt-text-color: rgba(251, 251, 254);"] .tab-context-line { + --tab-line-color: #45a1ff; + } + .tabbrowser-tab:is([selected], [multiselected]) .tab-context-line { + background-color: var(--tab-line-color, #45a1ff) !important; + } + /* Set the active effect */ + tabs tab.tabbrowser-tab[usercontextid]:active > .tab-stack > .tab-background > .tab-context-line { + margin-left: 6px !important; + margin-right: 6px !important; + } + .tabbrowser-tab:active > .tab-stack > .tab-background > .tab-context-line { + background: #217ddb !important; + margin-left: 6px; + margin-right: 6px; + } + /* Set the hover effect */ + .tabbrowser-tab:hover:not([selected="true"], [multiselected]) > .tab-stack > .tab-background > .tab-context-line { + background-color: rgba(0, 0, 0, 0.2) !important; + opacity: 1 !important; + transform: none !important; + } + #TabsToolbar[brighttext] + .tabbrowser-tab:hover:not([selected="true"], [multiselected]) + > .tab-stack + > .tab-background + > .tab-context-line { + background-color: rgba(255, 255, 255, 0.3137254902) !important; + } + /* Animation */ + @media (prefers-reduced-motion: no-preference) { + .tabbrowser-tab:hover:not([selected="true"], [multiselected]) > .tab-stack > .tab-background > .tab-context-line { + animation: toWide 0.2s cubic-bezier(0, 0.9, 0.15, 1); + } + /* Animation for container tab can't have width change... */ + tab.tabbrowser-tab[usercontextid]:hover:not([selected="true"], [multiselected]) + > .tab-stack + > .tab-background + > .tab-context-line { + opacity: 1; + } + } + /* Animation for hover effect */ + @keyframes toWide { + 0% { + opacity: 0.8; + margin-left: 40%; + margin-right: 40%; + } + 100% { + opacity: 1; + margin-left: 5px; + margin-right: 5px; + } + } + /* --- copied (not modified) from _photon_like_contextline.scss --- */ + /* Prevent identity color flashing */ + .tabbrowser-tab[usercontextid] .tab-context-line { + --identity-icon-color: none; + } + :root:not([customizing="true"]) #TabsToolbar[brighttext] tab[visuallyselected] > stack::before, + :root:not([customizing="true"]) #TabsToolbar[brighttext] tab[visuallyselected] > stack::after { + /* As Selected Tab - Box Shadow */ + stroke: var(--toolbar-color) !important; + } + /* Remove side's background color border */ + :root:is(:-moz-lwtheme, [lwtheme]) + #TabsToolbar[brighttext] + #tabbrowser-tabs:not([noshadowfortests]) + .tabbrowser-tab:is([visuallyselected], [multiselected]) + > .tab-stack + > .tab-background { + --tabs-border-color: rgba(0, 0, 0, 0.3) !important; + box-shadow: 0 0 1px var(--tabs-border-color) !important; /* Original: 0 0 1px var(--tab-line-color, rgba(128,128,142,0.9)) */ + } + #TabsToolbar:not([brighttext]) + #tabbrowser-tabs:not([noshadowfortests]) + .tabbrowser-tab:is([visuallyselected], [multiselected]) + > .tab-stack + > .tab-background { + box-shadow: 0 0 1px var(--tabs-border-color), 0 0 4px rgba(128, 128, 142, 0.5) !important; /* Original: 0 0 1px var(--tab-line-color, rgba(128,128,142,0.9)), 0 0 4px rgba(128,128,142,0.5) */ + } + } +} /*= Unselected Tab - Divide line =============================================*/ /*= Unselected Tab - Dynamic Separator =======================================*/ @supports -moz-bool-pref("userChrome.tab.dynamic_separator") { @@ -10136,6 +10265,9 @@ position: fixed !important; /* Needed for content to take up entire height */ z-index: 1000 !important; /* Puts the UI above the content */ } + :root[sizemode="fullscreen"] #navigator-toolbox:is(:hover, :focus-within) { + margin-top: 0 !important; + } :root[sizemode="fullscreen"] :-moz-any(#navigator-toolbox, #titlebar, #nav-bar, #PersonalToolbar) { width: 100%; /* Makes the UI take up the entire width */ } @@ -10148,8 +10280,8 @@ } } @supports -moz-bool-pref("userChrome.fullscreen.show_bookmarkbar") { - :root:not([sizemode="fullscreen"]) #PersonalToolbar[initialized="true"]:not([collapsed="true"]), - :root[sizemode="fullscreen"] #PersonalToolbar[initialized="true"] { + :root:not([sizemode="fullscreen"]) #PersonalToolbar[initialized]:not([collapsed="true"]), + :root[sizemode="fullscreen"] #PersonalToolbar[initialized] { visibility: unset !important; /* Makes the bookmarks toolbar visible if enabled */ } } @@ -11768,6 +11900,21 @@ .sendToDevice-device.subviewbutton.sync-menuitem.sendtab-target:not([clientType]) { list-style-image: url("chrome://global/skin/icons/settings.svg"); } + .sendToDevice-device[clientType="phone"] { + list-style-image: url("../icons/device-phone.svg") !important; + } + .sendToDevice-device[clientType="tablet"] { + list-style-image: url("../icons/device-tablet.svg") !important; + } + .sendToDevice-device[clientType="desktop"] { + list-style-image: url("../icons/device-desktop.svg") !important; + } + .sendToDevice-device[clientType="tv"] { + list-style-image: url("../icons/device-tv.svg") !important; + } + .sendToDevice-device[clientType="vr"] { + list-style-image: url("../icons/device-vr.svg") !important; + } /*= Panel - Bookmark =========================================================*/ #panelMenuBookmarkThisPage { list-style-image: url("chrome://browser/skin/bookmark-hollow.svg"); @@ -11974,6 +12121,9 @@ fill: currentColor; margin-inline-end: 1em; } + #protections-popup-report-broken-site-button { + list-style-image: url("chrome://global/skin/icons/lightbulb.svg"); + } #protections-popup-settings-button > .protections-popup-settings-icon, #protections-popup-multiView .panel-subview-footer-button { list-style-image: url("chrome://global/skin/icons/settings.svg"); @@ -12018,6 +12168,12 @@ #sidebar-switcher-tabs:is(menuitem) { --menuitem-image: url("../icons/synced-tabs.svg"); } + #sidebar-switcher-genai-chat.subviewbutton { + list-style-image: url("chrome://mozapps/skin/extensions/category-discover.svg"); + } + #sidebar-switcher-genai-chat:is(menuitem) { + --menuitem-image: url("chrome://mozapps/skin/extensions/category-discover.svg"); + } #sidebar-reverse-position.subviewbutton { list-style-image: var(--uc-sidebar-icon-reverse); } @@ -12097,7 +12253,8 @@ #context-sendpagetodevice-popup, #context-sendlinktodevice-popup, #frame > menupopup, - #spell-dictionaries-menu + #spell-dictionaries-menu, + #context-ask-chat > menupopup ) > menuitem:not([type="checkbox"][checked="true"], [type="radio"]), .openintabs-menuitem, @@ -12182,7 +12339,8 @@ #context-sendpagetodevice-popup, #context-sendlinktodevice-popup, #frame > menupopup, - #spell-dictionaries-menu + #spell-dictionaries-menu, + #context-ask-chat > menupopup ) > menuitem:not([type="checkbox"][checked="true"], [type="radio"]), .openintabs-menuitem, @@ -12279,7 +12437,8 @@ #context-sendpagetodevice-popup, #context-sendlinktodevice-popup, #frame > menupopup, - #spell-dictionaries-menu + #spell-dictionaries-menu, + #context-ask-chat > menupopup ) > menuitem:not([type="checkbox"][checked="true"], [type="radio"]), .openintabs-menuitem, @@ -12355,7 +12514,8 @@ #context-sendpagetodevice-popup, #context-sendlinktodevice-popup, #frame > menupopup, - #spell-dictionaries-menu + #spell-dictionaries-menu, + #context-ask-chat > menupopup ) > menuitem:not([type="checkbox"][checked="true"], [type="radio"]), .openintabs-menuitem, @@ -12539,7 +12699,8 @@ #context-sendpagetodevice-popup, #context-sendlinktodevice-popup, #frame > menupopup, - #spell-dictionaries-menu + #spell-dictionaries-menu, + #context-ask-chat > menupopup ) > menuitem:not([type="checkbox"][checked="true"], [type="radio"]), .openintabs-menuitem, @@ -12768,8 +12929,13 @@ #sidebartabs_asamuzak_jp-menuitem-_reloadAllTabs { --menuitem-image: url("../icons/reload.svg"); } + #context_playTab, + #context_playSelectedTabs { + --menuitem-image: url("../icons/play-fill.svg"); + } #context_toggleMuteTab, #context_toggleMuteSelectedTabs, + #treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab[label="Mute Tab"], #treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab-mute, #tabcenter-reborn_ariasuni-menuitem-_contextMenuMuteTab, #sidebartabs_asamuzak_jp-menuitem-_muteTab { @@ -12778,6 +12944,7 @@ } #context_toggleMuteTab[muted], #context_toggleMuteSelectedTabs[muted], + #treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab[label="Unmute Tab"], #treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab-unmute, #tabcenter-reborn_ariasuni-menuitem-_contextMenuMuteTab[label="Unmute Tab"], #sidebartabs_asamuzak_jp-menuitem-_muteTab[label="Unmute Tab"] { @@ -12797,6 +12964,12 @@ #sidebartabs_asamuzak_jp-menuitem-_pinTab[label="Unpin Tab"] { --menuitem-image: url("../icons/unpin-tab.svg"); } + #treestyletab_piro_sakura_ne_jp-menuitem-_context_topLevel_toggleSticky[label="Stick Tab to Edges"] { + --menuitem-image: url("../icons/align-distribute-top.svg"); + } + #treestyletab_piro_sakura_ne_jp-menuitem-_context_topLevel_toggleSticky[label="Unstick Tab to Edges"] { + --menuitem-image: url("../icons/align-space-evenly-vertical.svg"); + } #context_duplicateTab, #context_duplicateTabs, #treestyletab_piro_sakura_ne_jp-menuitem-_context_duplicateTab, @@ -12858,6 +13031,7 @@ --menuitem-image: url("chrome://global/skin/icons/close.svg"); } @supports -moz-bool-pref("userChrome.icon.menu.full") { + #treestyletab_piro_sakura_ne_jp-menuitem-_context_closeDuplicatedTabs, #context_closeDuplicateTabs { --menuitem-image: var(--uc-tab-close-duplicate-icon); } @@ -12963,7 +13137,7 @@ } } #tm-renameTab { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #tm-copyTabUrl { --menuitem-image: url("../icons/link.svg"); @@ -13222,6 +13396,9 @@ #context-translate-selection { --menuitem-image: url("../icons/translations.svg"); } + #context-ask-chat { + --menuitem-image: url("../icons/chat-sparkle.svg"); + } #frame { --menuitem-image: url("../icons/command-frames.svg"); } @@ -13271,6 +13448,35 @@ --menuitem-image: url("chrome://browser/skin/bookmark.svg"); } } + /*= context-ask-chat =========================================================*/ + #ask-chat-shortcuts .toolbarbutton-icon { + order: -1; + margin-inline-end: var(--arrowpanel-menuitem-margin-inline) !important; + } + #ask-chat-shortcuts .subviewbutton:nth-child(1) { + list-style-image: url("../icons/apps-list-detail.svg"); + } + #ask-chat-shortcuts .subviewbutton:nth-child(2) { + list-style-image: url("../icons/code-text.svg"); + } + #ask-chat-shortcuts .subviewbutton:nth-child(3) { + list-style-image: url("../icons/tetris-app.svg"); + } + #ask-chat-shortcuts .subviewbutton:nth-child(4) { + list-style-image: url("../icons/arrow-up-exclamation.svg"); + } + #context-ask-chat menuitem:nth-child(1) { + --menuitem-image: url("../icons/apps-list-detail.svg"); + } + #context-ask-chat menuitem:nth-child(2) { + --menuitem-image: url("../icons/code-text.svg"); + } + #context-ask-chat menuitem:nth-child(3) { + --menuitem-image: url("../icons/tetris-app.svg"); + } + #context-ask-chat menuitem:nth-child(4) { + --menuitem-image: url("../icons/arrow-up-exclamation.svg"); + } /*= main-context-menu-frame ==================================================*/ #context-showonlythisframe { --menuitem-image: url("../icons/eye-show.svg"); @@ -13409,7 +13615,7 @@ #placesContext_show_bookmark\:info, #placesContext_show\:info, #placesContext_show_folder\:info { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #placesContext_deleteBookmark, #placesContext_deleteFolder, @@ -13473,7 +13679,7 @@ --menuitem-image: url("chrome://global/skin/icons/check.svg"); } #blockedPopupOptions > menuitem[oncommand="gPopupBlockerObserver.editPopupSettings();"] { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #blockedPopupDontShowMessage { /* checkbox */ @@ -13688,6 +13894,9 @@ --menuitem-image: url("../icons/send.svg"); } /*= urlbarView-result-menu ===================================================*/ + .urlbarView-result-menuitem[data-command="trendingblock"] { + --menuitem-image: url("../icons/eye-hide.svg"); + } .urlbarView-result-menuitem[data-command="dismiss"] { --menuitem-image: url("chrome://global/skin/icons/delete.svg"); } @@ -13715,7 +13924,7 @@ --menuitem-image: url("../icons/mail-inbox-all.svg"); } #edit-menu { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #view-menu { --menuitem-image: url("../icons/content-view.svg"); @@ -14131,6 +14340,9 @@ menuitem.privatetab-icon { --menuitem-image: url("../icons/private-favicon.svg"); } + #sidebar_waterfox_net-menuitem-_openAllBookmarksWithStructure { + --menuitem-image: url("../icons/organization-horizontal.svg"); + } } /*= Tor Browser ==============================================================*/ @supports -moz-bool-pref("userChrome.icon.panel") { @@ -14193,7 +14405,7 @@ --menuitem-image: url("chrome://global/skin/icons/reload.svg"); } #usercssloader-submenupopup > menuitem[data-l10n-id="make-browsercss-file"] { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #usercssloader-submenupopup > menuitem[data-l10n-id="open-css-folder"] { --menuitem-image: var(--uc-folder-icon); diff --git a/css/leptonContent.css b/css/leptonContent.css index 7e5a57a..ee807bb 100644 --- a/css/leptonContent.css +++ b/css/leptonContent.css @@ -42,6 +42,9 @@ box-sizing: content-box; padding: 0 !important; } + button[data-l10n-id="addon-updates-manual-updates-found"] { + height: 100%; + } #categories { padding-inline-end: 1px !important; /* Original: 4px */ } @@ -321,7 +324,7 @@ --menuitem-image: url("../icons/unpin-tab.svg"); } .context-menu-item span[data-l10n-id="newtab-menu-edit-topsites"] { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } .context-menu-item span[data-l10n-id="newtab-menu-bookmark"] { --menuitem-image: url("chrome://browser/skin/bookmark.svg"); @@ -371,6 +374,9 @@ } .top-site-outer .context-menu-button { top: 0px !important; /* Original: -20px */ + right: 0px !important; + width: 22px !important; + height: 22px !important; } .top-site-outer .context-menu { top: 16.75px !important; /* Original: 6.75px */ @@ -2251,14 +2257,31 @@ background-color: var(--in-content-box-background-odd); } } + @-moz-document url-prefix("about:preferences") { + .privacy-extra-information > .custom-option:not(:first-child) { + margin-block: 2px !important; /* Original: 10px */ + } + .extra-information-label:not(:first-child) { + margin-top: 4px !important; /* Original: 19px */ + } + } /*= about:processes ==========================================================*/ - @-moz-document url-prefix("about:processes") { + @-moz-document url-prefix("about:processes"), url-prefix("about:performance") { td.type.favicon[style*='background-image: url("chrome://global/skin/icons/link.svg");'] { background-image: url("../icons/link.svg") !important; } .profiler-icon { - background: url("../icons/performance.svg") no-repeat center !important; + cursor: pointer; + background-image: url("../icons/performance.svg") !important; + background-repeat: no-repeat !important; + background-position: center !important; + color: inherit !important; + } + @supports not -moz-bool-pref("userChrome.rounding.square_button") { + .profiler-icon { + border-radius: 8px !important; + } } } @-moz-document url-prefix("about:profiling") { @@ -2266,6 +2289,25 @@ background-image: url("../icons/performance.svg") !important; } } + /*= about:processes ==========================================================*/ + @-moz-document url-prefix("about:support") { + #reset-box-button { + --in-content-focus-outline-color: var(--in-content-danger-button-background) !important; + background-color: var(--in-content-danger-button-background) !important; + color: var(--in-content-primary-button-text-color) !important; + border-color: var(--in-content-primary-button-border-color) !important; + } + #reset-box-button:enabled:hover { + background-color: var(--in-content-danger-button-background-hover) !important; + color: var(--in-content-primary-button-text-color-hover) !important; + border-color: var(--in-content-primary-button-border-hover) !important; + } + #reset-box-button:enabled:hover:active { + background-color: var(--in-content-danger-button-background-active) !important; + color: var(--in-content-primary-button-text-color-active) !important; + border-color: var(--in-content-primary-button-border-active) !important; + } + } /*= chrome://browser/content/places/places.xhtml =============================*/ @-moz-document url("chrome://browser/content/places/places.xhtml") { @@ -3246,12 +3288,15 @@ /** Menu - Icons Layout *******************************************************/ @supports not -moz-bool-pref("userChrome.icon.disabled") { @supports -moz-bool-pref("userChrome.icon.menu") { - :root { - --uc-folder-icon: url("chrome://global/skin/icons/folder.svg"); - } - @supports -moz-bool-pref("userChrome.icon.library") { + @-moz-document url-prefix("about:"), url-prefix("chrome://"), regexp("^((jar:)?file:///).*/$") + { :root { - --uc-folder-icon: url("../icons/folder.svg"); + --uc-folder-icon: url("chrome://global/skin/icons/folder.svg"); + } + @supports -moz-bool-pref("userChrome.icon.library") { + :root { + --uc-folder-icon: url("../icons/folder.svg"); + } } } @-moz-document url("chrome://browser/content/places/places.xhtml"), url("about:downloads") @@ -3493,7 +3538,7 @@ #placesContext_show_bookmark\:info, #placesContext_show\:info, #placesContext_show_folder\:info { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #placesContext_deleteBookmark, #placesContext_deleteFolder, @@ -3714,6 +3759,9 @@ box-sizing: content-box; padding: 0 !important; } + button[data-l10n-id="addon-updates-manual-updates-found"] { + height: 100%; + } #categories { padding-inline-end: 1px !important; /* Original: 4px */ } @@ -3993,7 +4041,7 @@ --menuitem-image: url("../icons/unpin-tab.svg"); } .context-menu-item span[data-l10n-id="newtab-menu-edit-topsites"] { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } .context-menu-item span[data-l10n-id="newtab-menu-bookmark"] { --menuitem-image: url("chrome://browser/skin/bookmark.svg"); @@ -4051,6 +4099,9 @@ } .top-site-outer .context-menu-button { top: 0px !important; /* Original: -20px */ + right: 0px !important; + width: 22px !important; + height: 22px !important; } .top-site-outer .context-menu { top: 16.75px !important; /* Original: 6.75px */ @@ -5786,6 +5837,7 @@ /*= about:memory =============================================================*/ /*= about:preferences ========================================================*/ /*= about:processes ==========================================================*/ + /*= about:processes ==========================================================*/ /*= chrome://browser/content/places/places.xhtml =============================*/ } @media (-moz-bool-pref: "userContent.page.proton") and (-moz-bool-pref: "userContent.page.field_border") and (prefers-reduced-motion: no-preference) { @@ -5950,13 +6002,32 @@ } } @media (-moz-bool-pref: "userContent.page.proton") { - @-moz-document url-prefix("about:processes") { + @-moz-document url-prefix("about:preferences") { + .privacy-extra-information > .custom-option:not(:first-child) { + margin-block: 2px !important; /* Original: 10px */ + } + .extra-information-label:not(:first-child) { + margin-top: 4px !important; /* Original: 19px */ + } + } +} +@media (-moz-bool-pref: "userContent.page.proton") { + @-moz-document url-prefix("about:processes"), url-prefix("about:performance") { td.type.favicon[style*='background-image: url("chrome://global/skin/icons/link.svg");'] { background-image: url("../icons/link.svg") !important; } .profiler-icon { - background: url("../icons/performance.svg") no-repeat center !important; + cursor: pointer; + background-image: url("../icons/performance.svg") !important; + background-repeat: no-repeat !important; + background-position: center !important; + color: inherit !important; + } + @media (-moz-bool-pref: "userContent.page.proton") and (not (-moz-bool-pref: "userChrome.rounding.square_button")) { + .profiler-icon { + border-radius: 8px !important; + } } } } @@ -5967,6 +6038,26 @@ } } } +@media (-moz-bool-pref: "userContent.page.proton") { + @-moz-document url-prefix("about:support") { + #reset-box-button { + --in-content-focus-outline-color: var(--in-content-danger-button-background) !important; + background-color: var(--in-content-danger-button-background) !important; + color: var(--in-content-primary-button-text-color) !important; + border-color: var(--in-content-primary-button-border-color) !important; + } + #reset-box-button:enabled:hover { + background-color: var(--in-content-danger-button-background-hover) !important; + color: var(--in-content-primary-button-text-color-hover) !important; + border-color: var(--in-content-primary-button-border-hover) !important; + } + #reset-box-button:enabled:hover:active { + background-color: var(--in-content-danger-button-background-active) !important; + color: var(--in-content-primary-button-text-color-active) !important; + border-color: var(--in-content-primary-button-border-active) !important; + } + } +} @media (-moz-bool-pref: "userContent.page.proton") { @-moz-document url("chrome://browser/content/places/places.xhtml") { @@ -7031,16 +7122,17 @@ } /** Menu - Icons Layout *******************************************************/ @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") { - :root { - --uc-folder-icon: url("chrome://global/skin/icons/folder.svg"); + @-moz-document url-prefix("about:"), url-prefix("chrome://"), regexp("^((jar:)?file:///).*/$") + { + :root { + --uc-folder-icon: url("chrome://global/skin/icons/folder.svg"); + } + @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.library") { + :root { + --uc-folder-icon: url("../icons/folder.svg"); + } + } } -} -@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.library") { - :root { - --uc-folder-icon: url("../icons/folder.svg"); - } -} -@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") { @-moz-document url("chrome://browser/content/places/places.xhtml"), url("about:downloads") { menupopup menuitem:not([type="checkbox"][checked="true"], [type="radio"]), @@ -7274,7 +7366,7 @@ #placesContext_show_bookmark\:info, #placesContext_show\:info, #placesContext_show_folder\:info { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #placesContext_deleteBookmark, #placesContext_deleteFolder, @@ -7412,8 +7504,6 @@ } } } -} -@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") { @-moz-document url-prefix("about:addons") { @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { button[role="menuitem"] { @@ -7444,8 +7534,6 @@ } } } -} -@media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") { @-moz-document url-prefix("about:logins") { @media (not (-moz-bool-pref: "userChrome.icon.disabled")) and (-moz-bool-pref: "userChrome.icon.menu") and (-moz-bool-pref: "userChrome.icon.context_menu") { .menuitem-export { diff --git a/css/leptonContentESR.css b/css/leptonContentESR.css index 40ab7f0..a0def8e 100644 --- a/css/leptonContentESR.css +++ b/css/leptonContentESR.css @@ -42,6 +42,9 @@ box-sizing: content-box; padding: 0 !important; } + button[data-l10n-id="addon-updates-manual-updates-found"] { + height: 100%; + } #categories { padding-inline-end: 1px !important; /* Original: 4px */ } @@ -321,7 +324,7 @@ --menuitem-image: url("../icons/unpin-tab.svg"); } .context-menu-item span[data-l10n-id="newtab-menu-edit-topsites"] { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } .context-menu-item span[data-l10n-id="newtab-menu-bookmark"] { --menuitem-image: url("chrome://browser/skin/bookmark.svg"); @@ -371,6 +374,9 @@ } .top-site-outer .context-menu-button { top: 0px !important; /* Original: -20px */ + right: 0px !important; + width: 22px !important; + height: 22px !important; } .top-site-outer .context-menu { top: 16.75px !important; /* Original: 6.75px */ @@ -2254,14 +2260,31 @@ background-color: var(--in-content-box-background-odd); } } + @-moz-document url-prefix("about:preferences") { + .privacy-extra-information > .custom-option:not(:first-child) { + margin-block: 2px !important; /* Original: 10px */ + } + .extra-information-label:not(:first-child) { + margin-top: 4px !important; /* Original: 19px */ + } + } /*= about:processes ==========================================================*/ - @-moz-document url-prefix("about:processes") { + @-moz-document url-prefix("about:processes"), url-prefix("about:performance") { td.type.favicon[style*='background-image: url("chrome://global/skin/icons/link.svg");'] { background-image: url("../icons/link.svg") !important; } .profiler-icon { - background: url("../icons/performance.svg") no-repeat center !important; + cursor: pointer; + background-image: url("../icons/performance.svg") !important; + background-repeat: no-repeat !important; + background-position: center !important; + color: inherit !important; + } + @supports not -moz-bool-pref("userChrome.rounding.square_button") { + .profiler-icon { + border-radius: 8px !important; + } } } @-moz-document url-prefix("about:profiling") { @@ -2269,6 +2292,25 @@ background-image: url("../icons/performance.svg") !important; } } + /*= about:processes ==========================================================*/ + @-moz-document url-prefix("about:support") { + #reset-box-button { + --in-content-focus-outline-color: var(--in-content-danger-button-background) !important; + background-color: var(--in-content-danger-button-background) !important; + color: var(--in-content-primary-button-text-color) !important; + border-color: var(--in-content-primary-button-border-color) !important; + } + #reset-box-button:enabled:hover { + background-color: var(--in-content-danger-button-background-hover) !important; + color: var(--in-content-primary-button-text-color-hover) !important; + border-color: var(--in-content-primary-button-border-hover) !important; + } + #reset-box-button:enabled:hover:active { + background-color: var(--in-content-danger-button-background-active) !important; + color: var(--in-content-primary-button-text-color-active) !important; + border-color: var(--in-content-primary-button-border-active) !important; + } + } /*= chrome://browser/content/places/places.xhtml =============================*/ @-moz-document url("chrome://browser/content/places/places.xhtml") { @@ -3249,12 +3291,15 @@ /** Menu - Icons Layout *******************************************************/ @supports not -moz-bool-pref("userChrome.icon.disabled") { @supports -moz-bool-pref("userChrome.icon.menu") { - :root { - --uc-folder-icon: url("chrome://global/skin/icons/folder.svg"); - } - @supports -moz-bool-pref("userChrome.icon.library") { + @-moz-document url-prefix("about:"), url-prefix("chrome://"), regexp("^((jar:)?file:///).*/$") + { :root { - --uc-folder-icon: url("../icons/folder.svg"); + --uc-folder-icon: url("chrome://global/skin/icons/folder.svg"); + } + @supports -moz-bool-pref("userChrome.icon.library") { + :root { + --uc-folder-icon: url("../icons/folder.svg"); + } } } @-moz-document url("chrome://browser/content/places/places.xhtml"), url("about:downloads") @@ -3632,7 +3677,7 @@ #placesContext_show_bookmark\:info, #placesContext_show\:info, #placesContext_show_folder\:info { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #placesContext_deleteBookmark, #placesContext_deleteFolder, diff --git a/icons/align-distribute-top.svg b/icons/align-distribute-top.svg new file mode 100644 index 0000000..7347d7d --- /dev/null +++ b/icons/align-distribute-top.svg @@ -0,0 +1,3 @@ + + + diff --git a/icons/align-space-evenly-vertical.svg b/icons/align-space-evenly-vertical.svg new file mode 100644 index 0000000..9a3318a --- /dev/null +++ b/icons/align-space-evenly-vertical.svg @@ -0,0 +1,3 @@ + + + diff --git a/icons/apps-list-detail.svg b/icons/apps-list-detail.svg new file mode 100644 index 0000000..39a1bea --- /dev/null +++ b/icons/apps-list-detail.svg @@ -0,0 +1,3 @@ + + + diff --git a/icons/arrow-between-up.svg b/icons/arrow-between-up.svg new file mode 100644 index 0000000..24a77e9 --- /dev/null +++ b/icons/arrow-between-up.svg @@ -0,0 +1,3 @@ + + + diff --git a/icons/arrow-up-exclamation.svg b/icons/arrow-up-exclamation.svg new file mode 100644 index 0000000..e5c57bf --- /dev/null +++ b/icons/arrow-up-exclamation.svg @@ -0,0 +1,3 @@ + + + diff --git a/icons/chat-sparkle.svg b/icons/chat-sparkle.svg new file mode 100644 index 0000000..94ab3ef --- /dev/null +++ b/icons/chat-sparkle.svg @@ -0,0 +1,3 @@ + + + diff --git a/icons/code-text.svg b/icons/code-text.svg new file mode 100644 index 0000000..f55df35 --- /dev/null +++ b/icons/code-text.svg @@ -0,0 +1,3 @@ + + + diff --git a/icons/edit-active.svg b/icons/edit-active.svg new file mode 100644 index 0000000..2a43922 --- /dev/null +++ b/icons/edit-active.svg @@ -0,0 +1,3 @@ + + + diff --git a/icons/import.svg b/icons/import.svg new file mode 100644 index 0000000..1746970 --- /dev/null +++ b/icons/import.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/organization-horizontal.svg b/icons/organization-horizontal.svg new file mode 100644 index 0000000..73a2630 --- /dev/null +++ b/icons/organization-horizontal.svg @@ -0,0 +1,3 @@ + + + diff --git a/icons/play-fill.svg b/icons/play-fill.svg new file mode 100644 index 0000000..59192b0 --- /dev/null +++ b/icons/play-fill.svg @@ -0,0 +1,3 @@ + + + diff --git a/icons/profiler-stopwatch.svg b/icons/profiler-stopwatch.svg new file mode 100644 index 0000000..70de076 --- /dev/null +++ b/icons/profiler-stopwatch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icons/refresh-cw.svg b/icons/refresh-cw.svg index 8d41f1c..15497e5 100644 --- a/icons/refresh-cw.svg +++ b/icons/refresh-cw.svg @@ -1,9 +1 @@ - - - - - - - - - + diff --git a/icons/tetris-app.svg b/icons/tetris-app.svg new file mode 100644 index 0000000..ab0ef1b --- /dev/null +++ b/icons/tetris-app.svg @@ -0,0 +1,3 @@ + + + diff --git a/icons/update-circle.svg b/icons/update-circle.svg new file mode 100644 index 0000000..5a216bd --- /dev/null +++ b/icons/update-circle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/compatibility/_theme.scss b/src/compatibility/_theme.scss index 2cb8861..1da19d6 100644 --- a/src/compatibility/_theme.scss +++ b/src/compatibility/_theme.scss @@ -135,9 +135,18 @@ menu { } } +#main-window { + background-color: WindowFrame !important; +} +:root[lwtheme][lwtheme-image] #customization-container { + background-image: none !important; +} #customization-container { background-color: transparent !important; /* Original: color-mix(in srgb, -moz-dialog 85%, white) */ } +:root:not([lwtheme]) #customization-container { + background-color: var(--toolbar-non-lwt-bgcolor) !important; +} /*= Findbar Border Color =====================================================*/ html|input.findbar-textbox { diff --git a/src/contents/_activity_stream.scss b/src/contents/_activity_stream.scss index 221d1cc..3d8542f 100644 --- a/src/contents/_activity_stream.scss +++ b/src/contents/_activity_stream.scss @@ -51,6 +51,9 @@ .context-menu-button { top: 0px !important; /* Original: -20px */ + right: 0px !important; + width: 22px !important; + height: 22px !important; } .context-menu { top: 16.75px !important; /* Original: 6.75px */ diff --git a/src/contents/_compatibility.scss b/src/contents/_compatibility.scss index 3a205d2..031a73d 100644 --- a/src/contents/_compatibility.scss +++ b/src/contents/_compatibility.scss @@ -50,6 +50,9 @@ box-sizing: content-box; padding: 0 !important; } + button[data-l10n-id="addon-updates-manual-updates-found"] { + height: 100%; + } // #911 #categories { diff --git a/src/contents/_context_menu.scss b/src/contents/_context_menu.scss index daec5c7..c4a2e7e 100644 --- a/src/contents/_context_menu.scss +++ b/src/contents/_context_menu.scss @@ -1,6 +1,13 @@ @import "../icons/shared"; -:root { - @include initIcons; + +@include moz-document( + url-prefix "about:", + url-prefix "chrome://", + regexp "^((jar:)?file:\/\/\/).*\/$" +) { + :root { + @include initIcons; + } } @include moz-document( diff --git a/src/contents/_proton_contents.scss b/src/contents/_proton_contents.scss index 2a06c7a..ca094dd 100644 --- a/src/contents/_proton_contents.scss +++ b/src/contents/_proton_contents.scss @@ -32,5 +32,8 @@ /*= about:processes ==========================================================*/ @import "proton_contents/about_processes"; +/*= about:processes ==========================================================*/ +@import "proton_contents/about_others"; + /*= chrome://browser/content/places/places.xhtml =============================*/ @import "../library/contents"; diff --git a/src/contents/proton_contents/_about_others.scss b/src/contents/proton_contents/_about_others.scss new file mode 100644 index 0000000..e55a476 --- /dev/null +++ b/src/contents/proton_contents/_about_others.scss @@ -0,0 +1,19 @@ +@include moz-document(url-prefix "about:support") { + #reset-box-button { + --in-content-focus-outline-color: var(--in-content-danger-button-background) !important; + background-color: var(--in-content-danger-button-background) !important; + color: var(--in-content-primary-button-text-color) !important; + border-color: var(--in-content-primary-button-border-color) !important; + + &:enabled:hover { + background-color: var(--in-content-danger-button-background-hover) !important; + color: var(--in-content-primary-button-text-color-hover) !important; + border-color: var(--in-content-primary-button-border-hover) !important; + } + &:enabled:hover:active { + background-color: var(--in-content-danger-button-background-active) !important; + color: var(--in-content-primary-button-text-color-active) !important; + border-color: var(--in-content-primary-button-border-active) !important; + } + } +} diff --git a/src/contents/proton_contents/_about_preferences.scss b/src/contents/proton_contents/_about_preferences.scss index d8a43f1..4ef7326 100644 --- a/src/contents/proton_contents/_about_preferences.scss +++ b/src/contents/proton_contents/_about_preferences.scss @@ -23,3 +23,12 @@ } } } +@include moz-document(url-prefix "about:preferences") { + // #952 + .privacy-extra-information > .custom-option:not(:first-child) { + margin-block: 2px !important; /* Original: 10px */ + } + .extra-information-label:not(:first-child) { + margin-top: 4px !important; /* Original: 19px */ + } +} diff --git a/src/contents/proton_contents/_about_processes.scss b/src/contents/proton_contents/_about_processes.scss index 7d52b32..5a05cdc 100644 --- a/src/contents/proton_contents/_about_processes.scss +++ b/src/contents/proton_contents/_about_processes.scss @@ -1,10 +1,22 @@ -@include moz-document(url-prefix "about:processes") { +@include moz-document( + url-prefix "about:processes", + url-prefix "about:performance" +) { td.type.favicon[style*='background-image: url("chrome://global/skin/icons/link.svg");'] { background-image: url("../icons/link.svg") !important; } .profiler-icon { - background: url("../icons/performance.svg") no-repeat center !important; + cursor: pointer; + background-image: url("../icons/performance.svg") !important; + background-repeat: no-repeat !important; + background-position: center !important; + @include NotOption("userChrome.rounding.square_button") { + border-radius: 8px !important; + } + + // #960 + color: inherit !important; } } diff --git a/src/fullscreen/_overlap.scss b/src/fullscreen/_overlap.scss index 4838ed3..8f0ff5d 100644 --- a/src/fullscreen/_overlap.scss +++ b/src/fullscreen/_overlap.scss @@ -1,6 +1,10 @@ :root[sizemode="fullscreen"] #navigator-toolbox { position: fixed !important; /* Needed for content to take up entire height */ z-index: 1000 !important; /* Puts the UI above the content */ + + &:is(:hover, :focus-within) { + margin-top: 0 !important; + } } :root[sizemode="fullscreen"] :-moz-any(#navigator-toolbox, #titlebar, #nav-bar, #PersonalToolbar) { diff --git a/src/fullscreen/_show_bookmarkbar.scss b/src/fullscreen/_show_bookmarkbar.scss index a91348e..d787a8d 100644 --- a/src/fullscreen/_show_bookmarkbar.scss +++ b/src/fullscreen/_show_bookmarkbar.scss @@ -1,4 +1,4 @@ -:root:not([sizemode="fullscreen"]) #PersonalToolbar[initialized="true"]:not([collapsed="true"]), -:root[sizemode="fullscreen"] #PersonalToolbar[initialized="true"] { +:root:not([sizemode="fullscreen"]) #PersonalToolbar[initialized]:not([collapsed="true"]), +:root[sizemode="fullscreen"] #PersonalToolbar[initialized] { visibility: unset !important; /* Makes the bookmarks toolbar visible if enabled */ } diff --git a/src/icons/_activity_stream.scss b/src/icons/_activity_stream.scss index b916a3e..bfc362b 100644 --- a/src/icons/_activity_stream.scss +++ b/src/icons/_activity_stream.scss @@ -5,7 +5,7 @@ --menuitem-image: url("../icons/unpin-tab.svg"); } .context-menu-item span[data-l10n-id="newtab-menu-edit-topsites"] { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } .context-menu-item span[data-l10n-id="newtab-menu-bookmark"] { --menuitem-image: url("chrome://browser/skin/bookmark.svg"); diff --git a/src/icons/_global_menubar.scss b/src/icons/_global_menubar.scss index e477397..9801021 100644 --- a/src/icons/_global_menubar.scss +++ b/src/icons/_global_menubar.scss @@ -3,7 +3,7 @@ --menuitem-image: url("../icons/mail-inbox-all.svg"); } #edit-menu { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #view-menu { --menuitem-image: url("../icons/content-view.svg"); diff --git a/src/icons/_panel.scss b/src/icons/_panel.scss index e276e4b..f981196 100644 --- a/src/icons/_panel.scss +++ b/src/icons/_panel.scss @@ -274,6 +274,28 @@ list-style-image: url("chrome://global/skin/icons/settings.svg"); } +.sendToDevice-device { + &[clientType="phone"] { + list-style-image: url("../icons/device-phone.svg") !important; + } + + &[clientType="tablet"] { + list-style-image: url("../icons/device-tablet.svg") !important; + } + + &[clientType="desktop"] { + list-style-image: url("../icons/device-desktop.svg") !important; + } + + &[clientType="tv"] { + list-style-image: url("../icons/device-tv.svg") !important; + } + + &[clientType="vr"] { + list-style-image: url("../icons/device-vr.svg") !important; + } +} + /*= Panel - Bookmark =========================================================*/ #panelMenuBookmarkThisPage { list-style-image: url("chrome://browser/skin/bookmark-hollow.svg"); @@ -500,6 +522,10 @@ panelMenuBookmarkThisPage[starred] { margin-inline-end: 1em; } +#protections-popup-report-broken-site-button { + list-style-image: url("chrome://global/skin/icons/lightbulb.svg"); +} + #protections-popup-settings-button > .protections-popup-settings-icon, #protections-popup-multiView .panel-subview-footer-button { list-style-image: url("chrome://global/skin/icons/settings.svg"); @@ -550,6 +576,10 @@ panelMenuBookmarkThisPage[starred] { @include _subviewMenuitem(url("../icons/synced-tabs.svg")); } +#sidebar-switcher-genai-chat { + @include _subviewMenuitem(url("chrome://mozapps/skin/extensions/category-discover.svg")); +} + #sidebar-reverse-position { @include _subviewMenuitem(var(--uc-sidebar-icon-reverse)); } diff --git a/src/icons/context_menu/_content_area.scss b/src/icons/context_menu/_content_area.scss index 7cad874..06fcdd3 100644 --- a/src/icons/context_menu/_content_area.scss +++ b/src/icons/context_menu/_content_area.scss @@ -232,6 +232,9 @@ #context-translate-selection { --menuitem-image: url("../icons/translations.svg"); } +#context-ask-chat { + --menuitem-image: url("../icons/chat-sparkle.svg"); +} #frame { --menuitem-image: url("../icons/command-frames.svg"); @@ -289,6 +292,38 @@ } } +/*= context-ask-chat =========================================================*/ +#ask-chat-shortcuts .toolbarbutton-icon { + order: -1; + margin-inline-end: var(--arrowpanel-menuitem-margin-inline) !important; +} +#ask-chat-shortcuts .subviewbutton:nth-child(1) { + list-style-image: url("../icons/apps-list-detail.svg"); +} +#ask-chat-shortcuts .subviewbutton:nth-child(2) { + list-style-image: url("../icons/code-text.svg"); +} +#ask-chat-shortcuts .subviewbutton:nth-child(3) { + list-style-image: url("../icons/tetris-app.svg"); +} +#ask-chat-shortcuts .subviewbutton:nth-child(4) { + list-style-image: url("../icons/arrow-up-exclamation.svg"); +} + + +#context-ask-chat menuitem:nth-child(1) { + --menuitem-image: url("../icons/apps-list-detail.svg"); +} +#context-ask-chat menuitem:nth-child(2) { + --menuitem-image: url("../icons/code-text.svg"); +} +#context-ask-chat menuitem:nth-child(3) { + --menuitem-image: url("../icons/tetris-app.svg"); +} +#context-ask-chat menuitem:nth-child(4) { + --menuitem-image: url("../icons/arrow-up-exclamation.svg"); +} + /*= main-context-menu-frame ==================================================*/ #context-showonlythisframe { --menuitem-image: url("../icons/eye-show.svg"); diff --git a/src/icons/context_menu/_others.scss b/src/icons/context_menu/_others.scss index 98f40ae..63c5401 100644 --- a/src/icons/context_menu/_others.scss +++ b/src/icons/context_menu/_others.scss @@ -15,7 +15,7 @@ --menuitem-image: url("chrome://global/skin/icons/check.svg"); } #blockedPopupOptions > menuitem[oncommand="gPopupBlockerObserver.editPopupSettings();"] { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #blockedPopupDontShowMessage { /* checkbox */ @@ -260,6 +260,9 @@ menuitem.searchbar-clear-history { /*= urlbarView-result-menu ===================================================*/ .urlbarView-result-menuitem { + &[data-command="trendingblock"] { + --menuitem-image: url("../icons/eye-hide.svg"); + } &[data-command="dismiss"] { --menuitem-image: url("chrome://global/skin/icons/delete.svg"); } diff --git a/src/icons/context_menu/_place.scss b/src/icons/context_menu/_place.scss index ff23f51..4764c72 100644 --- a/src/icons/context_menu/_place.scss +++ b/src/icons/context_menu/_place.scss @@ -24,7 +24,7 @@ #placesContext_show_bookmark\:info, #placesContext_show\:info, #placesContext_show_folder\:info { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #placesContext_deleteBookmark, #placesContext_deleteFolder, diff --git a/src/icons/context_menu/_tab_toolbar.scss b/src/icons/context_menu/_tab_toolbar.scss index 2488d3b..c8204ea 100644 --- a/src/icons/context_menu/_tab_toolbar.scss +++ b/src/icons/context_menu/_tab_toolbar.scss @@ -22,8 +22,13 @@ #sidebartabs_asamuzak_jp-menuitem-_reloadAllTabs { --menuitem-image: url("../icons/reload.svg"); } +#context_playTab, +#context_playSelectedTabs { + --menuitem-image: url("../icons/play-fill.svg"); +} #context_toggleMuteTab, #context_toggleMuteSelectedTabs, +#treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab[label="Mute Tab"], #treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab-mute, #tabcenter-reborn_ariasuni-menuitem-_contextMenuMuteTab, #sidebartabs_asamuzak_jp-menuitem-_muteTab { @@ -32,6 +37,7 @@ } #context_toggleMuteTab[muted], #context_toggleMuteSelectedTabs[muted], +#treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab[label="Unmute Tab"], #treestyletab_piro_sakura_ne_jp-menuitem-_context_toggleMuteTab-unmute, #tabcenter-reborn_ariasuni-menuitem-_contextMenuMuteTab[label="Unmute Tab"], #sidebartabs_asamuzak_jp-menuitem-_muteTab[label="Unmute Tab"] { @@ -51,6 +57,12 @@ #sidebartabs_asamuzak_jp-menuitem-_pinTab[label="Unpin Tab"] { --menuitem-image: url("../icons/unpin-tab.svg"); } +#treestyletab_piro_sakura_ne_jp-menuitem-_context_topLevel_toggleSticky[label="Stick Tab to Edges"] { + --menuitem-image: url("../icons/align-distribute-top.svg"); +} +#treestyletab_piro_sakura_ne_jp-menuitem-_context_topLevel_toggleSticky[label="Unstick Tab to Edges"] { + --menuitem-image: url("../icons/align-space-evenly-vertical.svg"); +} #context_duplicateTab, #context_duplicateTabs, #treestyletab_piro_sakura_ne_jp-menuitem-_context_duplicateTab, @@ -121,6 +133,7 @@ #sidebartabs_asamuzak_jp-menuitem-_closeTab { --menuitem-image: url("chrome://global/skin/icons/close.svg"); } +#treestyletab_piro_sakura_ne_jp-menuitem-_context_closeDuplicatedTabs, #context_closeDuplicateTabs { @include Option("userChrome.icon.menu.full") { --menuitem-image: var(--uc-tab-close-duplicate-icon); @@ -243,7 +256,7 @@ menuitem.viewCustomizeToolbar { } } #tm-renameTab { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } #tm-copyTabUrl { --menuitem-image: url("../icons/link.svg"); diff --git a/src/icons/fork_browsers/_floorp.scss b/src/icons/fork_browsers/_floorp.scss index 67c3947..7947326 100644 --- a/src/icons/fork_browsers/_floorp.scss +++ b/src/icons/fork_browsers/_floorp.scss @@ -47,7 +47,7 @@ } &[data-l10n-id="make-browsercss-file"] { - --menuitem-image: url("chrome://global/skin/icons/edit.svg"); + --menuitem-image: url("../icons/edit-active.svg"); } &[data-l10n-id="open-css-folder"] { --menuitem-image: var(--uc-folder-icon); diff --git a/src/icons/fork_browsers/_waterfox.scss b/src/icons/fork_browsers/_waterfox.scss index 95164e0..3d53d71 100644 --- a/src/icons/fork_browsers/_waterfox.scss +++ b/src/icons/fork_browsers/_waterfox.scss @@ -15,4 +15,8 @@ menuitem.privatetab-icon { --menuitem-image: url("../icons/private-favicon.svg"); } + + #sidebar_waterfox_net-menuitem-_openAllBookmarksWithStructure { + --menuitem-image: url("../icons/organization-horizontal.svg"); + } } diff --git a/src/icons/layout/_menu_common.scss b/src/icons/layout/_menu_common.scss index 3885026..ffa5d98 100644 --- a/src/icons/layout/_menu_common.scss +++ b/src/icons/layout/_menu_common.scss @@ -31,7 +31,7 @@ $_globalMenus: "#main-menubar > menu"; $_libraryMenuitem: "menupopup:is(#organizeButtonPopup, #maintenanceButtonPopup) > #{$_iconMenuitem}"; $_libraryMenu: "menupopup:is(#viewMenuPopup, #maintenanceButtonPopup) > #{$_iconMenu}"; $_sendTabMenuPopup: "#context_sendTabToDevicePopupMenu, #context-sendpagetodevice-popup, #context-sendlinktodevice-popup"; -$_otherPopupMenuitem: "menupopup:is(#{$_sendTabMenuPopup}, #frame > menupopup, #spell-dictionaries-menu) > menuitem#{$_checkMenu}"; +$_otherPopupMenuitem: "menupopup:is(#{$_sendTabMenuPopup}, #frame > menupopup, #spell-dictionaries-menu, #context-ask-chat > menupopup) > menuitem#{$_checkMenu}"; $_otherIconMenu: ".openintabs-menuitem, #blockedPopupDontShowMessage, #BMB_viewBookmarksToolbar, #sidebarMenu-popup:is(menupopup)"; //-- Mixin --------------------------------------------------------------------- diff --git a/src/tab/_selected_tab.scss b/src/tab/_selected_tab.scss index c2c3592..774b474 100644 --- a/src/tab/_selected_tab.scss +++ b/src/tab/_selected_tab.scss @@ -67,3 +67,9 @@ @include Option("userChrome.tab.photon_like_contextline") { @import "selected_tab/photon_like_contextline"; } + +@include NotOption("userChrome.tab.photon_like_contextline") { + @include Option("userChrome.tab.supernova_like_contextline") { + @import "selected_tab/supernova_like_contextline"; + } +} diff --git a/src/tab/selected_tab/_supernova_like_contextline.scss b/src/tab/selected_tab/_supernova_like_contextline.scss new file mode 100644 index 0000000..b769a39 --- /dev/null +++ b/src/tab/selected_tab/_supernova_like_contextline.scss @@ -0,0 +1,117 @@ +.tab-context-line { + @include InlineBox(true); + height: 1px !important; + border-radius: 9999px !important; + margin-top: 3px; + margin-left: 5px; + margin-right: 5px; +} + +/* Override container tab style */ +tabs tab.tabbrowser-tab[usercontextid] > .tab-stack > .tab-background > .tab-context-line { + margin-top: 3px !important; + margin-left: 5px !important; + margin-right: 5px !important; +} + +tab.tabbrowser-tab[usercontextid]:not([selected="true"], [multiselected]) + > .tab-stack + > .tab-background + > .tab-context-line { + opacity: 0; + transition: all 0.2s cubic-bezier(0, 0.9, 0.15, 1) !important; +} + +#{built-in-light-theme()} .tab-context-line, +#{built-in-dark-theme()} .tab-context-line { + --tab-line-color: #45a1ff; +} +.tabbrowser-tab:is([selected], [multiselected]) .tab-context-line { + background-color: var(--tab-line-color, #45a1ff) !important; +} + +/* Set the active effect */ +tabs tab.tabbrowser-tab[usercontextid]:active > .tab-stack > .tab-background > .tab-context-line { + margin-left: 6px !important; + margin-right: 6px !important; +} + +.tabbrowser-tab:active > .tab-stack > .tab-background > .tab-context-line { + background: #217ddb !important; + margin-left: 6px; + margin-right: 6px; +} + +/* Set the hover effect */ +.tabbrowser-tab:hover:not([selected="true"], [multiselected]) > .tab-stack > .tab-background > .tab-context-line { + background-color: rgba(0, 0, 0, 0.2) !important; + opacity: 1 !important; + transform: none !important; +} + +#TabsToolbar[brighttext] + .tabbrowser-tab:hover:not([selected="true"], [multiselected]) + > .tab-stack + > .tab-background + > .tab-context-line { + background-color: #ffffff50 !important; +} + +/* Animation */ +@media (prefers-reduced-motion: no-preference) { + .tabbrowser-tab:hover:not([selected="true"], [multiselected]) > .tab-stack > .tab-background > .tab-context-line { + animation: toWide 0.2s cubic-bezier(0, 0.9, 0.15, 1); + } + + /* Animation for container tab can't have width change... */ + tab.tabbrowser-tab[usercontextid]:hover:not([selected="true"], [multiselected]) + > .tab-stack + > .tab-background + > .tab-context-line { + opacity: 1; + } +} + +/* Animation for hover effect */ +@keyframes toWide { + 0% { + opacity: 0.8; + margin-left: 40%; + margin-right: 40%; + } + 100% { + opacity: 1; + margin-left: 5px; + margin-right: 5px; + } +} + +/* --- copied (not modified) from _photon_like_contextline.scss --- */ + +/* Prevent identity color flashing */ +.tabbrowser-tab[usercontextid] .tab-context-line { + --identity-icon-color: none; +} +:root:not([customizing="true"]) #TabsToolbar[brighttext] tab[visuallyselected] > stack::before, +:root:not([customizing="true"]) #TabsToolbar[brighttext] tab[visuallyselected] > stack::after { + /* As Selected Tab - Box Shadow */ + stroke: var(--toolbar-color) !important; +} + +/* Remove side's background color border */ +:root#{$lwtheme} + #TabsToolbar[brighttext] + #tabbrowser-tabs:not([noshadowfortests]) + .tabbrowser-tab:is([visuallyselected], [multiselected]) + > .tab-stack + > .tab-background { + --tabs-border-color: rgba(0, 0, 0, 0.3) !important; + box-shadow: 0 0 1px var(--tabs-border-color) !important; /* Original: 0 0 1px var(--tab-line-color, rgba(128,128,142,0.9)) */ +} +#TabsToolbar:not([brighttext]) + #tabbrowser-tabs:not([noshadowfortests]) + .tabbrowser-tab:is([visuallyselected], [multiselected]) + > .tab-stack + > .tab-background { + box-shadow: 0 0 1px var(--tabs-border-color), 0 0 4px rgba(128, 128, 142, 0.5) !important; /* Original: 0 0 1px var(--tab-line-color, rgba(128,128,142,0.9)), 0 0 4px rgba(128,128,142,0.5) */ +} diff --git a/src/theme/_fully_color.scss b/src/theme/_fully_color.scss index 54e5449..799faf1 100644 --- a/src/theme/_fully_color.scss +++ b/src/theme/_fully_color.scss @@ -134,6 +134,16 @@ html#main-window menupopup:not(.in-menulist) { background-color: var(--button-active-bgcolor) !important; } } +.notification-button.primary { + background-color: var(--button-primary-bgcolor) !important; + + &:hover { + background-color: var(--button-primary-hover-bgcolor) !important; + } + &:hover:active { + background-color: var(--button-primary-active-bgcolor) !important; + } +} html|button.ghost-button:not(.semi-transparent):enabled:hover { background-color: var(--button-hover-bgcolor) !important; @@ -177,8 +187,8 @@ html|button.ghost-button:not(.semi-transparent):enabled:hover:active { background-color: var(--button-active-bgcolor, color-mix(in srgb, currentColor 30%, transparent)) !important; } -#editBMPanel_namePicker, -#editBMPanel_tagsField { +#editBookmarkPanel #editBMPanel_namePicker, +#editBookmarkPanel #editBMPanel_tagsField { --input-bgcolor: var(--arrowpanel-background, Field); --input-color: var(--arrowpanel-color, FieldText); } diff --git a/user.js b/user.js index 5b84b1a..94f0d5f 100644 --- a/user.js +++ b/user.js @@ -47,6 +47,9 @@ user_pref("userChrome.tab.bottom_rounded_corner", false); user_pref("userChrome.tab.photon_like_contextline", false); user_pref("userChrome.rounding.square_tab", false); +// Proton Only +// user_pref("userChrome.tab.supernova_like_contextline", true); + // == Theme Compatibility Settings ============================================= // user_pref("userChrome.compatibility.accent_color", true); // Firefox v103 Below // user_pref("userChrome.compatibility.covered_header_image", true); @@ -283,7 +286,7 @@ user_pref("userContent.page.proton", true); // Need proton_color // ** Useful Options *********************************************************** // Tab preview // https://blog.nightly.mozilla.org/2024/02/06/a-preview-of-tab-previews-these-weeks-in-firefox-issue-153/ -user_pref("browser.tabs.cardPreview.enabled", true); +user_pref("browser.tabs.hoverPreview.enabled", true); // Paste suggestion at urlbar // https://blog.nightly.mozilla.org/2023/12/04/url-gonna-want-to-check-this-out-these-weeks-in-firefox-issue-150/