diff --git a/css/leptonChrome.css b/css/leptonChrome.css
index fae941e..7a8482c 100644
--- a/css/leptonChrome.css
+++ b/css/leptonChrome.css
@@ -395,6 +395,14 @@
/* -moz-default-appearance: -moz-window-titlebar */
appearance: none !important;
}
+ @media (-moz-os-version: windows-win7),
+ (-moz-platform: windows-win7),
+ (-moz-os-version: windows-win8),
+ (-moz-platform: windows-win8) {
+ :root[tabsintitlebar][sizemode="maximized"] #titlebar {
+ padding-top: 8px;
+ }
+ }
}
@supports -moz-bool-pref("userChrome.compatibility.os.windows_maximized") {
:root[tabsintitlebar][sizemode="maximized"] #titlebar {
@@ -3640,7 +3648,25 @@
}
}
}
+ :root {
+ /* Works with TabMixPlus */
+ --tab-min-height_mlt: calc(
+ var(--tab-min-height) + 2 * (var(--tab-block-margin, var(--proton-tab-block-margin, 0px)))
+ ) !important;
+ }
+
+ #TabsToolbar[multibar] .tabbrowser-tab {
+ height: unset !important;
+ /* Original: var(--tab-min-height_mlt) */
+ }
+
@supports -moz-bool-pref("userChrome.tab.connect_to_window") {
+ :root {
+ --tab-min-height_mlt: calc(
+ var(--tab-min-height) + var(--tab-block-margin, var(--proton-tab-block-margin, 0px))
+ ) !important;
+ }
+
#TabsToolbar {
--toolbarbutton-inner-padding: calc((var(--tab-min-height) - 18px) / 2) !important;
/* Prevent overflow pinned tab bottom margin */
@@ -3666,12 +3692,6 @@
}
}
}
- /* Works with TabMixPlus */
- #TabsToolbar[multibar] .tabbrowser-tab {
- height: unset !important;
- /* Original: var(--tab-min-height_mlt) */
- }
-
/* Scroll Button - Size Fix */
:root #tabbrowser-arrowscrollbox {
--scrollbtn-vertical-padding: 3px;
@@ -7732,8 +7752,16 @@
overflow: hidden;
}
+ #sidebar-header {
+ font-size: unset !important;
+ }
+ #sidebar-header > #sidebar-switcher-target {
+ font-size: 1.333em;
+ }
+
@supports not -moz-bool-pref("userChrome.autohide.sidebar") {
#sidebar-box,
+ #sidebar-header,
#sidebar {
min-width: var(--uc-sidebar-activate-width) !important;
max-width: var(--uc-sidebar-activate-width) !important;
@@ -7744,7 +7772,7 @@
will-change: padding-inline;
}
#sidebar-box:not([hidden="true"]) {
- padding-inline-start: var(--uc-sidebar-activate-width);
+ padding-inline-start: var(--uc-sidebar-activate-width) !important;
}
@media (prefers-reduced-motion: no-preference) {
#sidebar-box {
@@ -8841,12 +8869,14 @@
}
@supports -moz-bool-pref("userChrome.sidebar.overlap") {
+ #sidebar-header,
#sidebar {
min-width: var(--uc-sidebar-width) !important;
max-width: var(--uc-sidebar-width) !important;
will-change: min-width, max-width;
}
+ #sidebar-box:is(:hover, :focus-within) > #sidebar-header,
#sidebar-box:is(:hover, :focus-within) > #sidebar {
min-width: var(--uc-sidebar-activate-width) !important;
max-width: var(--uc-sidebar-activate-width) !important;
@@ -8868,11 +8898,13 @@
}
@media (prefers-reduced-motion: no-preference) {
+ #sidebar-header,
#sidebar {
transition: min-width var(--uc-autohide-sidebar-speed) var(--animation-easing-function)
var(--uc-autohide-sidebar-delay) !important;
}
+ #sidebar-box:is(:hover, :focus-within) > #sidebar-header,
#sidebar-box:is(:hover, :focus-within) > #sidebar {
transition-delay: 0ms !important;
}
@@ -9959,6 +9991,11 @@
background-image: var(--menuitem-image);
}
+ #tabContextMenu > .tabmix-newtab-menu-icon {
+ -moz-context-properties: fill, fill-opacity !important;
+ fill: currentColor !important;
+ }
+
/* For native context menus */
@supports -moz-bool-pref("widget.macos.native-context-menus") or -moz-bool-pref("widget.gtk.native-context-menus") {
:not(menu, #ContentSelectDropdown)
@@ -10308,7 +10345,11 @@
#treestyletab_piro_sakura_ne_jp-menuitem-_context_duplicateTab,
#tabcenter-reborn_ariasuni-menuitem-_contextMenuDuplicateTab,
#sidebartabs_asamuzak_jp-menuitem-_dupeTab {
- --menuitem-image: url("../icons/notebook-subsection.svg");
+ --menuitem-image: url("../icons/tab-copy.svg");
+ }
+
+ #tabcenter-reborn_ariasuni-menuitem-_contextMenuUnloadTab {
+ --menuitem-image: url("../icons/tab-unload.svg");
}
#context_bookmarkTab,
@@ -10368,6 +10409,15 @@
--menuitem-image: url("chrome://global/skin/icons/close.svg");
}
+ @supports -moz-bool-pref("userChrome.icon.menu.full") {
+ #context_closeTabOptions,
+ #treestyletab_piro_sakura_ne_jp-menuitem-_context_closeMultipleTabs,
+ #tabcenter-reborn_ariasuni-menuitem-_contextMenuCloseTabs,
+ #sidebartabs_asamuzak_jp-menuitem-_closeMultipleTabs {
+ --menuitem-image: url("../icons/filter-dismiss.svg");
+ }
+ }
+
#context_undoCloseTab,
#treestyletab_piro_sakura_ne_jp-menuitem-_context_undoCloseTab,
#treestyletab_piro_sakura_ne_jp-menuitem-_noContextTab\:context_undoCloseTab,
@@ -10463,6 +10513,45 @@
--menuitem-image: url("chrome://browser/skin/fullscreen-exit.svg");
}
+ /*= Tab Mix Plus =============================================================*/
+ #context_openANewTab.tabmix-newtab-menu-icon {
+ list-style-image: var(--menuitem-image) !important;
+ }
+
+ #tm-copyTabUrl {
+ --menuitem-image: url("../icons/link.svg");
+ }
+
+ #context_reloadTabOptions {
+ --menuitem-image: url("../icons/reload.svg");
+ }
+ @supports -moz-bool-pref("userChrome.icon.menu.full") {
+ #context_reloadTabOptions {
+ --menuitem-image: url("../icons/filter-reload.svg");
+ }
+ }
+ @supports not -moz-bool-pref("userChrome.icon.menu.full") {
+ #context_reloadTabOptions + #context_reloadTab {
+ --menuitem-image: url("../icons/blank.svg");
+ }
+ }
+
+ #tm-protectTab {
+ --menuitem-image: url("../icons/shield-task.svg");
+ }
+
+ @supports -moz-bool-pref("userChrome.icon.menu.full") {
+ #tm-lockTab {
+ --menuitem-image: url("../icons/lock-closed.svg");
+ }
+ }
+
+ @supports -moz-bool-pref("userChrome.icon.menu.full") {
+ #context_bookmarkAllTabs {
+ --menuitem-image: url("../icons/bookmark-multiple.svg");
+ }
+ }
+
/*= contentAreaContextMenu ===================================================*/
#context-viewsource-goToLine {
--menuitem-image: url("../icons/text-number-format.svg");
@@ -10782,6 +10871,19 @@
--menuitem-image: url("chrome://browser/skin/bookmark.svg");
}
}
+ /*= Tab Mix Plus =============================================================*/
+ #tm-autoreload_menu {
+ --menuitem-image: url("../icons/reload-auto.svg");
+ }
+
+ #tm-openAllLinks {
+ --menuitem-image: url("../icons/new-tab-multiple.svg");
+ }
+
+ #tm-content-undoCloseTab {
+ --menuitem-image: url("../icons/undo.svg");
+ }
+
/*= downloadsContextMenu =====================================================*/
.downloadPauseMenuItem {
--menuitem-image: url("chrome://global/skin/media/pause-fill.svg");
@@ -11096,6 +11198,12 @@
--menuitem-image: url("chrome://browser/skin/edit-paste.svg");
}
+ @supports -moz-bool-pref("userChrome.icon.menu.full") {
+ #paste-and-go {
+ --menuitem-image: url("../icons/edit-paste-go.svg");
+ }
+ }
+
#urlbar-input-container .textbox-contextmenu menuitem[cmd="cmd_delete"] {
--menuitem-image: url("chrome://global/skin/icons/delete.svg");
}
@@ -11137,6 +11245,12 @@
}
/* Only searchbar */
+ @supports -moz-bool-pref("userChrome.icon.menu.full") {
+ menuitem.searchbar-paste-and-search {
+ --menuitem-image: url("../icons/edit-paste-search.svg");
+ }
+ }
+
menuitem.searchbar-clear-history {
--menuitem-image: url("chrome://browser/skin/forget.svg");
}
@@ -11431,6 +11545,10 @@
--menuitem-image: url("chrome://browser/skin/sync.svg");
}
+ #menu_openFirefoxView {
+ --menuitem-image: url("chrome://branding/content/icon32.png");
+ }
+
#webDeveloperMenu,
#browserToolsMenu {
--menuitem-image: url("../icons/developer.svg");
diff --git a/icons/bookmark-multiple.svg b/icons/bookmark-multiple.svg
new file mode 100644
index 0000000..14dcee9
--- /dev/null
+++ b/icons/bookmark-multiple.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/edit-paste-go.svg b/icons/edit-paste-go.svg
new file mode 100644
index 0000000..f7abda4
--- /dev/null
+++ b/icons/edit-paste-go.svg
@@ -0,0 +1,4 @@
+
diff --git a/icons/edit-paste-search.svg b/icons/edit-paste-search.svg
new file mode 100644
index 0000000..c2ab698
--- /dev/null
+++ b/icons/edit-paste-search.svg
@@ -0,0 +1,4 @@
+
diff --git a/icons/filter-dismiss.svg b/icons/filter-dismiss.svg
new file mode 100644
index 0000000..bb9ce9b
--- /dev/null
+++ b/icons/filter-dismiss.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/filter-reload.svg b/icons/filter-reload.svg
new file mode 100644
index 0000000..71b4c68
--- /dev/null
+++ b/icons/filter-reload.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/lock-closed.svg b/icons/lock-closed.svg
new file mode 100644
index 0000000..528e69f
--- /dev/null
+++ b/icons/lock-closed.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/new-tab-multiple.svg b/icons/new-tab-multiple.svg
new file mode 100644
index 0000000..9007367
--- /dev/null
+++ b/icons/new-tab-multiple.svg
@@ -0,0 +1,4 @@
+
diff --git a/icons/notebook-subsection.svg b/icons/notebook-subsection.svg
deleted file mode 100644
index d85c15a..0000000
--- a/icons/notebook-subsection.svg
+++ /dev/null
@@ -1,4 +0,0 @@
-
\ No newline at end of file
diff --git a/icons/reload-auto.svg b/icons/reload-auto.svg
new file mode 100644
index 0000000..c55fc24
--- /dev/null
+++ b/icons/reload-auto.svg
@@ -0,0 +1,4 @@
+
diff --git a/icons/shield-task.svg b/icons/shield-task.svg
new file mode 100644
index 0000000..662087e
--- /dev/null
+++ b/icons/shield-task.svg
@@ -0,0 +1,3 @@
+
diff --git a/icons/tab-copy.svg b/icons/tab-copy.svg
new file mode 100644
index 0000000..3d3bad5
--- /dev/null
+++ b/icons/tab-copy.svg
@@ -0,0 +1,4 @@
+
diff --git a/icons/tab-unload.svg b/icons/tab-unload.svg
new file mode 100644
index 0000000..8907267
--- /dev/null
+++ b/icons/tab-unload.svg
@@ -0,0 +1,4 @@
+
diff --git a/src/autohide/sidebar/_overlap.scss b/src/autohide/sidebar/_overlap.scss
index 40b720b..4a20e52 100644
--- a/src/autohide/sidebar/_overlap.scss
+++ b/src/autohide/sidebar/_overlap.scss
@@ -1,3 +1,4 @@
+#sidebar-header,
#sidebar {
min-width: var(--uc-sidebar-width) !important;
max-width: var(--uc-sidebar-width) !important;
@@ -5,9 +6,12 @@
will-change: min-width, max-width;
}
-#sidebar-box:is(:hover, :focus-within) > #sidebar {
- min-width: var(--uc-sidebar-activate-width) !important;
- max-width: var(--uc-sidebar-activate-width) !important;
+#sidebar-box:is(:hover, :focus-within) > {
+ #sidebar-header,
+ #sidebar {
+ min-width: var(--uc-sidebar-activate-width) !important;
+ max-width: var(--uc-sidebar-activate-width) !important;
+ }
}
:root[inFullscreen="true"] #sidebar-box {
@@ -29,12 +33,16 @@
}
@include Animate {
+ #sidebar-header,
#sidebar {
transition: min-width var(--uc-autohide-sidebar-speed) var(--animation-easing-function) var(--uc-autohide-sidebar-delay) !important;
}
- #sidebar-box:is(:hover, :focus-within) > #sidebar {
- transition-delay: 0ms !important;
+ #sidebar-box:is(:hover, :focus-within) > {
+ #sidebar-header,
+ #sidebar {
+ transition-delay: 0ms !important;
+ }
}
:root[inFullscreen="true"] #sidebar-box {
diff --git a/src/compatibility/_os.scss b/src/compatibility/_os.scss
index ffaa84d..30072d8 100644
--- a/src/compatibility/_os.scss
+++ b/src/compatibility/_os.scss
@@ -191,6 +191,12 @@ $_os_linuxDefaultShadow: 0 0 4px rgba(128, 128, 142, 0.5);
/* -moz-default-appearance: -moz-window-titlebar */
appearance: none !important;
}
+ @include OS($win7, $win8) {
+ &[sizemode="maximized"] #titlebar {
+ // Only win7, win8 #480
+ padding-top: 8px; // Don't use margin-top for reserved fullscreen animation
+ }
+ }
}
@include Option("userChrome.compatibility.os.windows_maximized") {
&[sizemode="maximized"] #titlebar {
diff --git a/src/icons/_global_menu.scss b/src/icons/_global_menu.scss
index be303a1..fc6d034 100644
--- a/src/icons/_global_menu.scss
+++ b/src/icons/_global_menu.scss
@@ -230,6 +230,9 @@ menu.share-tab-url-item {
#sync-reauthitem {
}
+#menu_openFirefoxView {
+ --menuitem-image: url("chrome://branding/content/icon32.png");
+}
#webDeveloperMenu, /* Legacy */
#browserToolsMenu {
--menuitem-image: url("../icons/developer.svg");
diff --git a/src/icons/context_menu/_content_area.scss b/src/icons/context_menu/_content_area.scss
index 416a09e..c74e829 100644
--- a/src/icons/context_menu/_content_area.scss
+++ b/src/icons/context_menu/_content_area.scss
@@ -261,3 +261,43 @@
--menuitem-image: url("chrome://browser/skin/bookmark.svg");
}
}
+
+/*= Tab Mix Plus =============================================================*/
+#tm-autoreload_menu {
+ --menuitem-image: url("../icons/reload-auto.svg");
+}
+
+#tm-linkWithhistory {
+}
+#tm-openAllLinks {
+ --menuitem-image: url("../icons/new-tab-multiple.svg");
+}
+#tm-openinverselink {
+}
+#context-openlinkinusercontext-menu {
+}
+
+#tm-content-closetab {
+}
+#tm-duplicateTabContext {
+}
+#tm-duplicateinWinContext {
+}
+#tm-detachTabContext {
+}
+#tm-mergeWindows {
+}
+#tm-content-freezeTab {
+}
+#tm-content-protectTab {
+}
+#tm-content-lockTab {
+}
+#tm-tabsList {
+}
+
+#tm-content-undoCloseTab {
+ --menuitem-image: url("../icons/undo.svg");
+}
+#tm-content-undoCloseList {
+}
diff --git a/src/icons/context_menu/_others.scss b/src/icons/context_menu/_others.scss
index 69c256c..25f28d8 100644
--- a/src/icons/context_menu/_others.scss
+++ b/src/icons/context_menu/_others.scss
@@ -138,6 +138,9 @@
--menuitem-image: url("chrome://browser/skin/edit-paste.svg");
}
#paste-and-go {
+ @include Option("userChrome.icon.menu.full") {
+ --menuitem-image: url("../icons/edit-paste-go.svg");
+ }
}
#urlbar-input-container .textbox-contextmenu menuitem[cmd="cmd_delete"] {
--menuitem-image: url("chrome://global/skin/icons/delete.svg");
@@ -175,6 +178,9 @@
/* Only searchbar */
menuitem.searchbar-paste-and-search {
+ @include Option("userChrome.icon.menu.full") {
+ --menuitem-image: url("../icons/edit-paste-search.svg");
+ }
}
menuitem.searchbar-clear-history {
--menuitem-image: url("chrome://browser/skin/forget.svg");
diff --git a/src/icons/context_menu/_tab_toolbar.scss b/src/icons/context_menu/_tab_toolbar.scss
index 2a38cb3..d0b20be 100644
--- a/src/icons/context_menu/_tab_toolbar.scss
+++ b/src/icons/context_menu/_tab_toolbar.scss
@@ -55,9 +55,10 @@
#treestyletab_piro_sakura_ne_jp-menuitem-_context_duplicateTab,
#tabcenter-reborn_ariasuni-menuitem-_contextMenuDuplicateTab,
#sidebartabs_asamuzak_jp-menuitem-_dupeTab {
- --menuitem-image: url("../icons/notebook-subsection.svg");
+ --menuitem-image: url("../icons/tab-copy.svg");
}
#tabcenter-reborn_ariasuni-menuitem-_contextMenuUnloadTab {
+ --menuitem-image: url("../icons/tab-unload.svg");
}
#context_bookmarkTab,
@@ -119,10 +120,13 @@
#sidebartabs_asamuzak_jp-menuitem-_closeTab {
--menuitem-image: url("chrome://global/skin/icons/close.svg");
}
+#context_closeTabOptions,
+#treestyletab_piro_sakura_ne_jp-menuitem-_context_closeMultipleTabs,
#tabcenter-reborn_ariasuni-menuitem-_contextMenuCloseTabs,
#sidebartabs_asamuzak_jp-menuitem-_closeMultipleTabs {
-}
-#context_closeTabOptions {
+ @include Option("userChrome.icon.menu.full") {
+ --menuitem-image: url("../icons/filter-dismiss.svg");
+ }
}
#context_undoCloseTab,
#treestyletab_piro_sakura_ne_jp-menuitem-_context_undoCloseTab,
@@ -215,3 +219,53 @@ menuitem.viewCustomizeToolbar {
#toolbar-context-menu > menuitem[data-l10n-id="full-screen-exit"] {
--menuitem-image: url("chrome://browser/skin/fullscreen-exit.svg");
}
+
+/*= Tab Mix Plus =============================================================*/
+#context_openANewTab.tabmix-newtab-menu-icon {
+ list-style-image: var(--menuitem-image) !important;
+}
+#tm-duplicateinWin {
+}
+#tm-mergeWindowsTab {
+}
+#tm-renameTab {
+}
+#tm-copyTabUrl {
+ --menuitem-image: url("../icons/link.svg");
+}
+
+#tm-autoreloadTab_menu {
+}
+#context_reloadTabOptions {
+ --menuitem-image: url("../icons/reload.svg");
+ @include Option("userChrome.icon.menu.full") {
+ --menuitem-image: url("../icons/filter-reload.svg");
+ }
+ + #context_reloadTab {
+ @include NotOption("userChrome.icon.menu.full") {
+ --menuitem-image: url("../icons/blank.svg");
+ }
+ }
+}
+
+#tm-undoCloseList {
+}
+
+#tm-docShell {
+}
+#tm-freezeTab {
+}
+#tm-protectTab {
+ --menuitem-image: url("../icons/shield-task.svg");
+}
+#tm-lockTab {
+ @include Option("userChrome.icon.menu.full") {
+ --menuitem-image: url("../icons/lock-closed.svg");
+ }
+}
+
+#context_bookmarkAllTabs {
+ @include Option("userChrome.icon.menu.full") {
+ --menuitem-image: url("../icons/bookmark-multiple.svg");
+ }
+}
diff --git a/src/icons/layout/_menu.scss b/src/icons/layout/_menu.scss
index 074bb4a..c4d959f 100644
--- a/src/icons/layout/_menu.scss
+++ b/src/icons/layout/_menu.scss
@@ -41,6 +41,10 @@ $_layoutCommonMenus: (
@include _layoutInitIconMenus {
@include _layout_icon_menus;
}
+#tabContextMenu > .tabmix-newtab-menu-icon {
+ -moz-context-properties: fill, fill-opacity !important;
+ fill: currentColor !important;
+}
/* For native context menus */
#{$_nestedPopupIconMenus} {
diff --git a/src/padding/_tabbar_height.scss b/src/padding/_tabbar_height.scss
index c749494..8b0b6a9 100644
--- a/src/padding/_tabbar_height.scss
+++ b/src/padding/_tabbar_height.scss
@@ -43,7 +43,20 @@
}
}
}
+
+:root {
+ /* Works with TabMixPlus */
+ --tab-min-height_mlt: calc(var(--tab-min-height) + 2 * (var(--tab-block-margin, var(--proton-tab-block-margin, 0px)))) !important;
+}
+#TabsToolbar[multibar] .tabbrowser-tab {
+ height: unset !important; /* Original: var(--tab-min-height_mlt) */
+}
+
@include Option("userChrome.tab.connect_to_window") {
+ :root {
+ --tab-min-height_mlt: calc(var(--tab-min-height) + var(--tab-block-margin, var(--proton-tab-block-margin, 0px))) !important;
+ }
+
#TabsToolbar {
--toolbarbutton-inner-padding: calc((var(--tab-min-height) - 18px) / 2) !important; /* Prevent overflow pinned tab bottom margin */
}
@@ -61,11 +74,6 @@
}
}
-/* Works with TabMixPlus */
-#TabsToolbar[multibar] .tabbrowser-tab {
- height: unset !important; /* Original: var(--tab-min-height_mlt) */
-}
-
/* Scroll Button - Size Fix */
:root #tabbrowser-arrowscrollbox {
--scrollbtn-vertical-padding: 3px;
diff --git a/src/sidebar/_overlap.scss b/src/sidebar/_overlap.scss
index 75a4465..953cb48 100644
--- a/src/sidebar/_overlap.scss
+++ b/src/sidebar/_overlap.scss
@@ -46,8 +46,17 @@
overflow: hidden;
}
+ #sidebar-header {
+ font-size: unset !important;
+
+ > #sidebar-switcher-target {
+ font-size: 1.333em;
+ }
+ }
+
@include NotOption("userChrome.autohide.sidebar") {
#sidebar-box,
+ #sidebar-header,
#sidebar {
min-width: var(--uc-sidebar-activate-width) !important;
max-width: var(--uc-sidebar-activate-width) !important;
@@ -58,7 +67,7 @@
will-change: padding-inline;
&:not([hidden="true"]) {
- padding-inline-start: var(--uc-sidebar-activate-width);
+ padding-inline-start: var(--uc-sidebar-activate-width) !important;
}
@include Animate {