diff --git a/src/assets/breeze-close-active-symbolic.svg b/src/assets/breeze-close-active-symbolic.svg new file mode 100644 --- /dev/null +++ b/src/assets/breeze-close-active-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/breeze-close-hover-symbolic.svg b/src/assets/breeze-close-hover-symbolic.svg new file mode 100644 --- /dev/null +++ b/src/assets/breeze-close-hover-symbolic.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/breeze-close-symbolic.svg b/src/assets/breeze-close-symbolic.svg new file mode 100644 --- /dev/null +++ b/src/assets/breeze-close-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/breeze-maximize-active-symbolic.svg b/src/assets/breeze-maximize-active-symbolic.svg new file mode 100644 --- /dev/null +++ b/src/assets/breeze-maximize-active-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/breeze-maximize-hover-symbolic.svg b/src/assets/breeze-maximize-hover-symbolic.svg new file mode 100644 --- /dev/null +++ b/src/assets/breeze-maximize-hover-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/breeze-maximize-symbolic.svg b/src/assets/breeze-maximize-symbolic.svg new file mode 100644 --- /dev/null +++ b/src/assets/breeze-maximize-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/breeze-maximized-active-symbolic.svg b/src/assets/breeze-maximized-active-symbolic.svg new file mode 100644 --- /dev/null +++ b/src/assets/breeze-maximized-active-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/breeze-maximized-hover-symbolic.svg b/src/assets/breeze-maximized-hover-symbolic.svg new file mode 100644 --- /dev/null +++ b/src/assets/breeze-maximized-hover-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/breeze-maximized-symbolic.svg b/src/assets/breeze-maximized-symbolic.svg new file mode 100644 --- /dev/null +++ b/src/assets/breeze-maximized-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/breeze-minimize-active-symbolic.svg b/src/assets/breeze-minimize-active-symbolic.svg new file mode 100644 --- /dev/null +++ b/src/assets/breeze-minimize-active-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/breeze-minimize-hover-symbolic.svg b/src/assets/breeze-minimize-hover-symbolic.svg new file mode 100644 --- /dev/null +++ b/src/assets/breeze-minimize-hover-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/breeze-minimize-symbolic.svg b/src/assets/breeze-minimize-symbolic.svg new file mode 100644 --- /dev/null +++ b/src/assets/breeze-minimize-symbolic.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/build_theme.sh b/src/build_theme.sh --- a/src/build_theme.sh +++ b/src/build_theme.sh @@ -107,4 +107,5 @@ fi fi -render_theme "${COLOR_SCHEME}" "${THEME_NAME}" "${INSTALL_TARGET}" "${COLOR_SCHEME_ROOT}/Breeze.colors" \ No newline at end of file +render_theme "${COLOR_SCHEME}" "${THEME_NAME}" "${INSTALL_TARGET}" "${COLOR_SCHEME_ROOT}/Breeze.colors" +cp -r assets/ "${INSTALL_TARGET}" \ No newline at end of file diff --git a/src/gtk3/applications/_chromium.scss b/src/gtk3/applications/_chromium.scss --- a/src/gtk3/applications/_chromium.scss +++ b/src/gtk3/applications/_chromium.scss @@ -20,4 +20,68 @@ } } } + + headerbar, + .titlebar { + button.titlebutton { + &.close { + color: transparent; + background-image: -gtk-scaled(url('../assets/titlebutton-close.png'),url('../assets/titlebutton-close@2.png')); + &:hover { + background-image: -gtk-scaled(url('../assets/titlebutton-close-hover.png'),url('../assets/titlebutton-close-hover@2.png')); + } + &:active { + background-image: -gtk-scaled(url('../assets/titlebutton-close-active.png'),url('../assets/titlebutton-close-active@2.png')); + } + &:backdrop { + background-image: -gtk-scaled(url('../assets/titlebutton-close-backdrop.png'),url('../assets/titlebutton-close-backdrop@2.png')); + } + } + + &.maximize { + color: transparent; + background-image: -gtk-scaled(url('../assets/titlebutton-maximize.png'),url('../assets/titlebutton-maximize@2.png')); + &:hover { + background-image: -gtk-scaled(url('../assets/titlebutton-maximize-hover.png'),url('../assets/titlebutton-maximize-hover@2.png')); + } + &:active { + background-image: -gtk-scaled(url('../assets/titlebutton-maximize-active.png'),url('../assets/titlebutton-maximize-active@2.png')); + } + &:backdrop { + background-image: -gtk-scaled(url('../assets/titlebutton-maximize-backdrop.png'),url('../assets/titlebutton-maximize-backdrop@2.png')); + } + } + &.minimize { + color: transparent; + background-image: -gtk-scaled(url('../assets/titlebutton-minimize.png'),url('../assets/titlebutton-minimize@2.png')); + &:hover { + background-image: -gtk-scaled(url('../assets/titlebutton-minimize-hover.png'),url('../assets/titlebutton-minimize-hover@2.png')); + } + &:active { + background-image: -gtk-scaled(url('../assets/titlebutton-minimize-active.png'),url('../assets/titlebutton-minimize-active@2.png')); + } + &:backdrop { + background-image: -gtk-scaled(url('../assets/titlebutton-minimize-backdrop.png'),url('../assets/titlebutton-minimize-backdrop@2.png')); + } + } + } + + .maximized & { + button.titlebutton { + &.maximize { + color: transparent; + background-image: -gtk-scaled(url('../assets/titlebutton-maximize-maximized.png'),url('../assets/titlebutton-maximize-maximized@2.png')); + &:hover { + background-image: -gtk-scaled(url('../assets/titlebutton-maximize-maximized-hover.png'),url('../assets/titlebutton-maximize-maximized-hover@2.png')); + } + &:active { + background-image: -gtk-scaled(url('../assets/titlebutton-maximize-maximized-active.png'),url('../assets/titlebutton-maximize-maximized-active@2.png')); + } + &:backdrop { + background-image: -gtk-scaled(url('../assets/titlebutton-maximize-maximized-backdrop.png'),url('../assets/titlebutton-maximize-maximized-backdrop@2.png')); + } + } + } + } + } } \ No newline at end of file diff --git a/src/gtk3/widgets/_window_decorations.scss b/src/gtk3/widgets/_window_decorations.scss --- a/src/gtk3/widgets/_window_decorations.scss +++ b/src/gtk3/widgets/_window_decorations.scss @@ -57,6 +57,7 @@ min-width: 18px; margin: 0; } + $titlebutton-size: 16px 16px; button.titlebutton { padding: 1px; &:hover, @@ -69,105 +70,119 @@ &.close { padding: 1px; - color: transparent; border-image: none; box-shadow: none; background-position: center; background-repeat: no-repeat; - background-image: -gtk-scaled(url('../assets/titlebutton-close.png'),url('../assets/titlebutton-close@2.png')); + background-size: $titlebutton-size; + background-image: -gtk-recolor(url('../assets/breeze-close-symbolic.svg'), color gtk("@theme_text_color")); + -gtk-icon-source: none; + image { + color: transparent; + } } &.close:hover { border-color: transparent; background-color: transparent; - background-image: -gtk-scaled(url('../assets/titlebutton-close-hover.png'),url('../assets/titlebutton-close-hover@2.png')); + background-image: -gtk-recolor(url('../assets/breeze-close-hover-symbolic.svg')); } &.close:active { border-color: transparent; background-color: transparent; - background-image: -gtk-scaled(url('../assets/titlebutton-close-active.png'),url('../assets/titlebutton-close-active@2.png')); + background-image: -gtk-recolor(url('../assets/breeze-close-active-symbolic.svg')); } &.close:backdrop { border-color: transparent; background-color: transparent; - background-image: -gtk-scaled(url('../assets/titlebutton-close-backdrop.png'),url('../assets/titlebutton-close-backdrop@2.png')); + background-image: -gtk-recolor(url('../assets/breeze-close-symbolic.svg')); } &.maximize { padding: 1px; - color: transparent; border-image: none; box-shadow: none; background-position: center; background-repeat: no-repeat; - background-image: -gtk-scaled(url('../assets/titlebutton-maximize.png'),url('../assets/titlebutton-maximize@2.png')); + background-size: $titlebutton-size; + background-image: -gtk-recolor(url('../assets/breeze-maximize-symbolic.svg')); + image { + color: transparent; + } } &.maximize:hover { border-color: transparent; background-color: transparent; - background-image: -gtk-scaled(url('../assets/titlebutton-maximize-hover.png'),url('../assets/titlebutton-maximize-hover@2.png')); + background-size: contain; + background-image: -gtk-recolor(url('../assets/breeze-maximize-hover-symbolic.svg')); } &.maximize:active { border-color: transparent; background-color: transparent; - background-image: -gtk-scaled(url('../assets/titlebutton-maximize-active.png'),url('../assets/titlebutton-maximize-active@2.png')); + background-image: -gtk-recolor(url('../assets/breeze-maximize-active-symbolic.svg')); } &.maximize:backdrop { border-color: transparent; background-color: transparent; - background-image: -gtk-scaled(url('../assets/titlebutton-maximize-backdrop.png'),url('../assets/titlebutton-maximize-backdrop@2.png')); + background-image: -gtk-recolor(url('../assets/breeze-maximize-symbolic.svg')); } &.minimize { padding: 1px; - color: transparent; border-image: none; box-shadow: none; background-position: center; background-repeat: no-repeat; - background-image: -gtk-scaled(url('../assets/titlebutton-minimize.png'),url('../assets/titlebutton-minimize@2.png')); + background-size: $titlebutton-size; + background-image: -gtk-recolor(url('../assets/breeze-minimize-symbolic.svg')); + image { + color: transparent; + } } &.minimize:hover { border-color: transparent; background-color: transparent; - background-image: -gtk-scaled(url('../assets/titlebutton-minimize-hover.png'),url('../assets/titlebutton-minimize-hover@2.png')); + background-image: -gtk-recolor(url('../assets/breeze-minimize-hover-symbolic.svg')); } &.minimize:active { border-color: transparent; background-color: transparent; - background-image: -gtk-scaled(url('../assets/titlebutton-minimize-active.png'),url('../assets/titlebutton-minimize-active@2.png')); + background-image: -gtk-recolor(url('../assets/breeze-minimize-active-symbolic.svg')); } &.minimize:backdrop { border-color: transparent; background-color: transparent; - background-image: -gtk-scaled(url('../assets/titlebutton-minimize-backdrop.png'),url('../assets/titlebutton-minimize-backdrop@2.png')); + background-image: -gtk-recolor(url('../assets/breeze-minimize-symbolic.svg')); } } .maximized & { button.titlebutton { &.maximize { padding: 1px; - color: transparent; border-image: none; box-shadow: none; background-position: center; + background-size: $titlebutton-size; background-repeat: no-repeat; - background-image: -gtk-scaled(url('../assets/titlebutton-maximize-maximized.png'),url('../assets/titlebutton-maximize-maximized@2.png')); + background-image: -gtk-recolor(url('../assets/breeze-maximized-symbolic.svg')); + image { + color: transparent; + } } &.maximize:hover { border-color: transparent; background-color: transparent; - background-image: -gtk-scaled(url('../assets/titlebutton-maximize-maximized-hover.png'),url('../assets/titlebutton-maximize-maximized-hover@2.png')); + background-image: -gtk-recolor(url('../assets/breeze-maximized-hover-symbolic.svg')); } &.maximize:active { border-color: transparent; background-color: transparent; - background-image: -gtk-scaled(url('../assets/titlebutton-maximize-maximized-active.png'),url('../assets/titlebutton-maximize-maximized-active@2.png')); + background-image: -gtk-recolor(url('../assets/breeze-maximized-active-symbolic.svg')); } &.maximize:backdrop { border-color: transparent; background-color: transparent; - background-image: -gtk-scaled(url('../assets/titlebutton-maximize-maximized-backdrop.png'),url('../assets/titlebutton-maximize-maximized-backdrop@2.png')); + background-image: -gtk-recolor(url('../assets/breeze-maximized-symbolic.svg')); } } }