diff --git a/src/gtk-3.0/assets.svg b/src/gtk-3.0/assets.svg index 330ddc7..e51be13 100644 --- a/src/gtk-3.0/assets.svg +++ b/src/gtk-3.0/assets.svg @@ -522,6 +522,50 @@ y1="31.36219" x2="25" y2="45.36219" /> + + + + + + + + + + + + + + + + + + + + diff --git a/src/gtk-3.0/assets.txt b/src/gtk-3.0/assets.txt index 7c2fb02..a6d5fda 100644 --- a/src/gtk-3.0/assets.txt +++ b/src/gtk-3.0/assets.txt @@ -97,3 +97,8 @@ titlebutton-restore-alt titlebutton-restore-backdrop-alt titlebutton-restore-hover-alt titlebutton-restore-active-alt + +setting +setting-icon +setting-dark +setting-icon-dark diff --git a/src/gtk-3.0/assets/setting-dark.png b/src/gtk-3.0/assets/setting-dark.png new file mode 100644 index 0000000..555f86e Binary files /dev/null and b/src/gtk-3.0/assets/setting-dark.png differ diff --git a/src/gtk-3.0/assets/setting-dark@2.png b/src/gtk-3.0/assets/setting-dark@2.png new file mode 100644 index 0000000..c037b01 Binary files /dev/null and b/src/gtk-3.0/assets/setting-dark@2.png differ diff --git a/src/gtk-3.0/assets/setting-icon-dark.png b/src/gtk-3.0/assets/setting-icon-dark.png new file mode 100644 index 0000000..74eecf0 Binary files /dev/null and b/src/gtk-3.0/assets/setting-icon-dark.png differ diff --git a/src/gtk-3.0/assets/setting-icon-dark@2.png b/src/gtk-3.0/assets/setting-icon-dark@2.png new file mode 100644 index 0000000..c0cf299 Binary files /dev/null and b/src/gtk-3.0/assets/setting-icon-dark@2.png differ diff --git a/src/gtk-3.0/assets/setting-icon.png b/src/gtk-3.0/assets/setting-icon.png new file mode 100644 index 0000000..9ec1722 Binary files /dev/null and b/src/gtk-3.0/assets/setting-icon.png differ diff --git a/src/gtk-3.0/assets/setting-icon@2.png b/src/gtk-3.0/assets/setting-icon@2.png new file mode 100644 index 0000000..68eddf1 Binary files /dev/null and b/src/gtk-3.0/assets/setting-icon@2.png differ diff --git a/src/gtk-3.0/assets/setting.png b/src/gtk-3.0/assets/setting.png new file mode 100644 index 0000000..ac4ad26 Binary files /dev/null and b/src/gtk-3.0/assets/setting.png differ diff --git a/src/gtk-3.0/assets/setting@2.png b/src/gtk-3.0/assets/setting@2.png new file mode 100644 index 0000000..166fa15 Binary files /dev/null and b/src/gtk-3.0/assets/setting@2.png differ diff --git a/src/gtk-3.0/gtk-compact-dark-alt.css b/src/gtk-3.0/gtk-compact-dark-alt.css index 0882fc9..cd51ff8 100644 --- a/src/gtk-3.0/gtk-compact-dark-alt.css +++ b/src/gtk-3.0/gtk-compact-dark-alt.css @@ -1563,6 +1563,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4954,37 +4963,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(55, 55, 55, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting-dark.png"), url("assets/setting-dark@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - color: rgba(225, 219, 219, 0.8); - border: none; - background-color: rgba(119, 119, 119, 0.88); - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - border: none; - background-color: rgba(119, 119, 119, 0.98); - background-image: none; - text-shadow: none; - -gtk-icon-shadow: none; - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/gtk-compact-dark-solid-alt.css b/src/gtk-3.0/gtk-compact-dark-solid-alt.css index 82b6c82..57ff808 100644 --- a/src/gtk-3.0/gtk-compact-dark-solid-alt.css +++ b/src/gtk-3.0/gtk-compact-dark-solid-alt.css @@ -1563,6 +1563,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4954,37 +4963,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(55, 55, 55, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting-dark.png"), url("assets/setting-dark@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - color: rgba(225, 219, 219, 0.8); - border: none; - background-color: rgba(119, 119, 119, 0.9); - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - border: none; - background-color: #777777; - background-image: none; - text-shadow: none; - -gtk-icon-shadow: none; - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/gtk-compact-dark-solid.css b/src/gtk-3.0/gtk-compact-dark-solid.css index 8d7ffcb..5bda11d 100644 --- a/src/gtk-3.0/gtk-compact-dark-solid.css +++ b/src/gtk-3.0/gtk-compact-dark-solid.css @@ -1563,6 +1563,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4954,37 +4963,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(55, 55, 55, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting-dark.png"), url("assets/setting-dark@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - color: rgba(225, 219, 219, 0.8); - border: none; - background-color: rgba(119, 119, 119, 0.9); - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - border: none; - background-color: #777777; - background-image: none; - text-shadow: none; - -gtk-icon-shadow: none; - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/gtk-compact-dark.css b/src/gtk-3.0/gtk-compact-dark.css index d3f468f..89a19cd 100644 --- a/src/gtk-3.0/gtk-compact-dark.css +++ b/src/gtk-3.0/gtk-compact-dark.css @@ -1563,6 +1563,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4954,37 +4963,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(55, 55, 55, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting-dark.png"), url("assets/setting-dark@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - color: rgba(225, 219, 219, 0.8); - border: none; - background-color: rgba(119, 119, 119, 0.88); - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - border: none; - background-color: rgba(119, 119, 119, 0.98); - background-image: none; - text-shadow: none; - -gtk-icon-shadow: none; - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/gtk-compact-light-alt.css b/src/gtk-3.0/gtk-compact-light-alt.css index 4726c1c..0eeeb72 100644 --- a/src/gtk-3.0/gtk-compact-light-alt.css +++ b/src/gtk-3.0/gtk-compact-light-alt.css @@ -1565,6 +1565,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4964,37 +4973,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(229, 229, 229, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting.png"), url("assets/setting@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - color: rgba(40, 32, 32, 0.8); - border: none; - background-color: #fafafa; - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - border: none; - background-color: #afafaf; - background-image: none; - text-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - -gtk-icon-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/gtk-compact-light-solid-alt.css b/src/gtk-3.0/gtk-compact-light-solid-alt.css index ad1d1fe..20487c1 100644 --- a/src/gtk-3.0/gtk-compact-light-solid-alt.css +++ b/src/gtk-3.0/gtk-compact-light-solid-alt.css @@ -1565,6 +1565,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4964,37 +4973,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(229, 229, 229, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting.png"), url("assets/setting@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - color: rgba(40, 32, 32, 0.8); - border: none; - background-color: #fafafa; - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - border: none; - background-color: #afafaf; - background-image: none; - text-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - -gtk-icon-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/gtk-compact-light-solid.css b/src/gtk-3.0/gtk-compact-light-solid.css index a6c33a6..b7eea88 100644 --- a/src/gtk-3.0/gtk-compact-light-solid.css +++ b/src/gtk-3.0/gtk-compact-light-solid.css @@ -1565,6 +1565,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4964,37 +4973,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(229, 229, 229, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting.png"), url("assets/setting@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - color: rgba(40, 32, 32, 0.8); - border: none; - background-color: #fafafa; - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - border: none; - background-color: #afafaf; - background-image: none; - text-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - -gtk-icon-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/gtk-compact-light.css b/src/gtk-3.0/gtk-compact-light.css index db33b70..ff7a141 100644 --- a/src/gtk-3.0/gtk-compact-light.css +++ b/src/gtk-3.0/gtk-compact-light.css @@ -1565,6 +1565,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4964,37 +4973,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(229, 229, 229, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting.png"), url("assets/setting@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - color: rgba(40, 32, 32, 0.8); - border: none; - background-color: #fafafa; - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - border: none; - background-color: #afafaf; - background-image: none; - text-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - -gtk-icon-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - box-shadow: 0px 1px 1px 0px rgba(16, 16, 16, 0.12), 0px 1px 2px 0px rgba(16, 16, 16, 0.06); +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/gtk-dark-alt.css b/src/gtk-3.0/gtk-dark-alt.css index ff66b26..ab9e874 100644 --- a/src/gtk-3.0/gtk-dark-alt.css +++ b/src/gtk-3.0/gtk-dark-alt.css @@ -1565,6 +1565,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4952,38 +4961,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(55, 55, 55, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting-dark.png"), url("assets/setting-dark@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - border-color: rgba(255, 255, 255, 0.12); - color: rgba(221, 213, 213, 0.8); - background-color: rgba(119, 119, 119, 0.88); - background-image: none; - box-shadow: none; +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - background-color: rgba(119, 119, 119, 0.98); - background-image: none; - border-color: rgba(255, 255, 255, 0.12); - text-shadow: none; - -gtk-icon-shadow: none; - box-shadow: none; +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/gtk-dark-solid-alt.css b/src/gtk-3.0/gtk-dark-solid-alt.css index 0a047ce..2a3545b 100644 --- a/src/gtk-3.0/gtk-dark-solid-alt.css +++ b/src/gtk-3.0/gtk-dark-solid-alt.css @@ -1565,6 +1565,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4940,38 +4949,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(55, 55, 55, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting-dark.png"), url("assets/setting-dark@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - border-color: rgba(255, 255, 255, 0.12); - color: rgba(221, 213, 213, 0.8); - background-color: rgba(119, 119, 119, 0.9); - background-image: none; - box-shadow: none; +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - background-color: #777777; - background-image: none; - border-color: rgba(255, 255, 255, 0.12); - text-shadow: none; - -gtk-icon-shadow: none; - box-shadow: none; +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/gtk-dark-solid.css b/src/gtk-3.0/gtk-dark-solid.css index 7dbbb33..ee56809 100644 --- a/src/gtk-3.0/gtk-dark-solid.css +++ b/src/gtk-3.0/gtk-dark-solid.css @@ -1565,6 +1565,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4952,38 +4961,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(55, 55, 55, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting-dark.png"), url("assets/setting-dark@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - border-color: rgba(255, 255, 255, 0.12); - color: rgba(221, 213, 213, 0.8); - background-color: rgba(119, 119, 119, 0.9); - background-image: none; - box-shadow: none; +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - background-color: #777777; - background-image: none; - border-color: rgba(255, 255, 255, 0.12); - text-shadow: none; - -gtk-icon-shadow: none; - box-shadow: none; +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/gtk-dark.css b/src/gtk-3.0/gtk-dark.css index 4e151f6..0a9569d 100644 --- a/src/gtk-3.0/gtk-dark.css +++ b/src/gtk-3.0/gtk-dark.css @@ -1565,6 +1565,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4952,38 +4961,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(55, 55, 55, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting-dark.png"), url("assets/setting-dark@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - border-color: rgba(255, 255, 255, 0.12); - color: rgba(221, 213, 213, 0.8); - background-color: rgba(119, 119, 119, 0.88); - background-image: none; - box-shadow: none; +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - background-color: rgba(119, 119, 119, 0.98); - background-image: none; - border-color: rgba(255, 255, 255, 0.12); - text-shadow: none; - -gtk-icon-shadow: none; - box-shadow: none; +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/gtk-light-alt.css b/src/gtk-3.0/gtk-light-alt.css index 0b40e06..a5e1144 100644 --- a/src/gtk-3.0/gtk-light-alt.css +++ b/src/gtk-3.0/gtk-light-alt.css @@ -1567,6 +1567,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4980,38 +4989,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(229, 229, 229, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting.png"), url("assets/setting@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - border-color: rgba(0, 0, 0, 0.12); - color: rgba(34, 28, 28, 0.8); - background-color: #fafafa; - background-image: linear-gradient(0deg, #f8f8f8 0%, #ffffff 100%); - box-shadow: none; +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - background-color: #afafaf; - background-image: none; - border-color: rgba(0, 0, 0, 0.12); - text-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - -gtk-icon-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - box-shadow: none; +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/gtk-light-solid-alt.css b/src/gtk-3.0/gtk-light-solid-alt.css index 6b4d2fb..cacf7fc 100644 --- a/src/gtk-3.0/gtk-light-solid-alt.css +++ b/src/gtk-3.0/gtk-light-solid-alt.css @@ -1567,6 +1567,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4980,38 +4989,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(229, 229, 229, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting.png"), url("assets/setting@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - border-color: rgba(0, 0, 0, 0.12); - color: rgba(34, 28, 28, 0.8); - background-color: #fafafa; - background-image: linear-gradient(0deg, #f8f8f8 0%, #ffffff 100%); - box-shadow: none; +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - background-color: #afafaf; - background-image: none; - border-color: rgba(0, 0, 0, 0.12); - text-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - -gtk-icon-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - box-shadow: none; +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/gtk-light-solid.css b/src/gtk-3.0/gtk-light-solid.css index ab85c2f..07b2269 100644 --- a/src/gtk-3.0/gtk-light-solid.css +++ b/src/gtk-3.0/gtk-light-solid.css @@ -1567,6 +1567,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4980,38 +4989,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(229, 229, 229, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting.png"), url("assets/setting@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - border-color: rgba(0, 0, 0, 0.12); - color: rgba(34, 28, 28, 0.8); - background-color: #fafafa; - background-image: linear-gradient(0deg, #f8f8f8 0%, #ffffff 100%); - box-shadow: none; +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - background-color: #afafaf; - background-image: none; - border-color: rgba(0, 0, 0, 0.12); - text-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - -gtk-icon-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - box-shadow: none; +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/gtk-light.css b/src/gtk-3.0/gtk-light.css index e3618d1..ef672cf 100644 --- a/src/gtk-3.0/gtk-light.css +++ b/src/gtk-3.0/gtk-light.css @@ -1567,6 +1567,15 @@ headerbar.default-decoration button.titlebutton, padding: 0; } +headerbar.default-decoration button.titlebutton.appmenu, headerbar.default-decoration button.titlebutton.appmenu:active, headerbar.default-decoration button.titlebutton.appmenu:checked, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:active, +.default-decoration.titlebar:not(headerbar) button.titlebutton.appmenu:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); +} + headerbar.default-decoration, .csd headerbar.default-decoration, headerbar.default-decoration:backdrop, .csd headerbar.default-decoration:backdrop, @@ -4980,38 +4989,30 @@ messagedialog.csd decoration { box-shadow: none; } -headerbar button.titlebutton, -.titlebar button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - background-color: rgba(229, 229, 229, 0); +headerbar button.titlebutton.appmenu, +.titlebar button.titlebutton.appmenu { + transition: background-color 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + color: transparent; + background-image: -gtk-scaled(url("assets/setting.png"), url("assets/setting@2.png")); + background-repeat: no-repeat; + background-position: center; } -headerbar button.titlebutton:hover, -.titlebar button.titlebutton:hover { - border-color: rgba(0, 0, 0, 0.12); - color: rgba(34, 28, 28, 0.8); - background-color: #fafafa; - background-image: linear-gradient(0deg, #f8f8f8 0%, #ffffff 100%); - box-shadow: none; +headerbar button.titlebutton.appmenu image, +.titlebar button.titlebutton.appmenu image { + opacity: 0; } -headerbar button.titlebutton:active, headerbar button.titlebutton:checked, -.titlebar button.titlebutton:active, -.titlebar button.titlebutton:checked { - color: #ffffff; - background-color: #afafaf; - background-image: none; - border-color: rgba(0, 0, 0, 0.12); - text-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - -gtk-icon-shadow: 0 -1px rgba(255, 255, 255, 0.04), -1px 0px rgba(32, 32, 32, 0.05), 1px 0px rgba(32, 32, 32, 0.05), 0px 1px rgba(32, 32, 32, 0.3), 0px 2px rgba(32, 32, 32, 0.05); - box-shadow: none; +headerbar button.titlebutton.appmenu:active, headerbar button.titlebutton.appmenu:checked, +.titlebar button.titlebutton.appmenu:active, +.titlebar button.titlebutton.appmenu:checked { + transition: background-color 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-image 0, background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon.png"), url("assets/setting-icon@2.png")); +} + +headerbar button.titlebutton.appmenu:backdrop, +.titlebar button.titlebutton.appmenu:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon-dark.png"), url("assets/setting-icon-dark@2.png")); } headerbar button.titlebutton.close, headerbar button.titlebutton.maximize, headerbar button.titlebutton.minimize, headerbar button.titlebutton.restore, diff --git a/src/gtk-3.0/sass/_common.scss b/src/gtk-3.0/sass/_common.scss index 3b3825a..f2972ef 100644 --- a/src/gtk-3.0/sass/_common.scss +++ b/src/gtk-3.0/sass/_common.scss @@ -3,6 +3,7 @@ } $asset_suffix: if($variant=='dark', '-dark', ''); // use dark assets in dark variant +$con_asset_suffix: if($variant=='dark', '', '-dark'); $darker_asset_suffix: if($darker=='true', '-dark', $asset_suffix); $alt_suffix: if($titlebutton=='alt', '-alt', ''); $bt_radius: 5px; @@ -1226,6 +1227,15 @@ headerbar, min-height: 16px; margin: 0; padding: 0; + + &.appmenu { + &, &:active, &:checked { + background-color: transparent; + box-shadow: none; + background-image: -gtk-scaled(url("assets/setting-icon#{$con_asset_suffix}.png"), + url("assets/setting-icon#{$con_asset_suffix}@2.png")); + } + } } } @@ -3856,20 +3866,35 @@ headerbar, .titlebar { button.titlebutton { - min-width: 24px; - min-height: 24px; - margin: 0; - padding: 0; + &.appmenu { + transition: background-color 0.1s $ease-out-quad, + box-shadow 0.1s $ease-out-quad, + background-image 0, + background-size 0; - @include button(undecorated); - background-color: transparentize($header_bg, 1); + color: transparent; + background-image: -gtk-scaled(url("assets/setting#{$asset_suffix}.png"), + url("assets/setting#{$asset_suffix}@2.png")); + background-repeat: no-repeat; + background-position: center; - &:hover { - @include button(header-hover); - } - &:active, &:checked { - @include button(header-active); + image { opacity: 0; } // Make menu button default icon invisible + + &:active, &:checked { + transition: background-color 0.3s $ease-out-quad, + box-shadow 0.3s $ease-out-quad, + background-image 0, + background-size 0; + background-image: -gtk-scaled(url("assets/setting-icon#{$asset_suffix}.png"), + url("assets/setting-icon#{$asset_suffix}@2.png")); + } + + &:backdrop { + background-image: -gtk-scaled(url("assets/setting-icon#{$con_asset_suffix}.png"), + url("assets/setting-icon#{$con_asset_suffix}@2.png")); + } } + &.close, &.maximize, &.minimize, &.restore { min-width: 16px; min-height: 16px;