Files
SweetTokyoNight/gtk-3.0/widgets/_header-bars.scss
2021-02-02 13:57:27 -06:00

283 lines
6.1 KiB
SCSS

/***************
* Header bars *
***************/
%titlebar,
headerbar {
padding: 0px 13px;
min-height: 34px;
background: $headerbar_color;
color: $headerbar_fg_color;
border-radius: 0;
&:backdrop {
border-color: $backdrop_borders_color;
// background-image: none;
transition: $backdrop_transition;
}
.title {
font-weight: bold;
padding-left: 12px;
padding-right: 12px;
}
.subtitle {
font-size: smaller;
padding-left: 12px;
padding-right: 12px;
@extend .dim-label;
}
entry { min-height: 24px;}
button {
@include button(normal-header);
min-height: 14px;
margin-top: 5px;
margin-bottom: 5px;
box-shadow: none;
&.image-button{
padding: 3px 4px;
}
&.suggested-action{
box-shadow: none;
border: none;
background-image: $suggested_bg_color;
&:disabled, &:disabled:backdrop, &:backdrop {
border: none;
background-image: $suggested_bg_color;
&:hover,
&:active,
&:checked {
border: none;
background-image: $suggested_bg_color;
}
}
}
&.appmenu{
background: transparent;
&:backdrop{background: transparent;}
}
&:hover,
&:active,
&:checked {
background-color: transparent;
color: $selected_bg_color;
box-shadow: none;
border: none;
//@include button(hover-header);
}
&:backdrop,
&:disabled,
&:backdrop:disabled {
@include button(backdrop-header,red,transparentize($fg_color,0.8));
border: none;
}
&:backdrop {
&:hover,
&:active,
&:checked {
background-color: transparent;
color: $selected_bg_color;
label {color: $selected_bg_color;}
box-shadow: none;
}
}
@each $b_type, $b_color in (suggested-action, $cyan),
(destructive-action, $destructive_color) {
&.#{$b_type} {
font-weight: bold;
min-height: 24px;
margin-top: 5px;
margin-bottom: 5px;
border-radius: 4px;
@include button(normal, $b_color, white);
box-shadow: none;
&:hover { @include button(hover, $b_color, white); }
&:active { @include button(active, $b_color, white); }
&:disabled {
@include button(insensitive, $b_color, white);
label {color: transparentize(white,0.5);}
}
&:backdrop {
@include button(backdrop, $b_color, white);
border-radius: 3px;
}
&:backdrop:disabled { @include button(backdrop-insensitive, $b_color, white); }
}
}
//Reset style
&.titlebutton {
color: transparent;
box-shadow: none;
border: none;
background-color: transparent;
background-image: none;
background-repeat: no-repeat;
&:hover,
&:active,
&:checked,
&:backdrop,
&:backdrop:hover,* {
color: transparent;
box-shadow: none;
background-color: transparent;
}
}
}
%linked-header {
border-radius: 23px;
border-right-style: none;
border: none;
box-shadow: none;
margin: 10px 0px;
min-height: 20px;
&:first-child {
}
&:last-child {
}
&:only-child {
border-radius: 13px;
border-style: none;
}
transition: all .1s ease-in;
}
.linked > button {
@extend %linked-header;
}
.linked > button:active{
@extend %linked-header;
background: #00e8b7;
color: rgb(255, 250, 250);
}
.linked > button:checked{
@extend %linked-header;
border-radius: 23px;
background: #00e8b7;
box-shadow: 0px 2px 4px rgba(177, 177, 177, 0.753);
color: rgb(255, 250, 250);
&:backdrop{
color: darken(rgb(255, 250, 250), 4%);
label{
color: darken(rgb(255, 250, 250), 4%);;
}
}
}
.linked > button:hover,
.linked > button:backdrop {
@extend %linked-header;
}
// End reset style
&.selection-mode {
button {
&:backdrop {
&.flat, & {
&:active,
&:checked {
//@include button(backdrop-active, $selected_bg_color, $selected_fg_color);
label{
color:$backdrop_selected_bg_color;
}
border-color: $selected_borders_color;
}
}
}
}
}
.tiled &,
.maximized & {
&.titlebar {
@if $variant == 'light' { box-shadow: none; }
@else { box-shadow: inset 0 -1px $bottom_highlight; }
}
&:backdrop, & { border-radius: 0; }
} // squared corners when the window is maximized or tiled
&.default-decoration {
padding: 5px 4px;
min-height: 20px;
button.titlebutton {
min-height: 20px;
min-width: 20px;
margin: 0;
padding: 0;
}
}
}
headerbar {
// add vertical margins to common widget on the headerbar to avoid them spanning the whole height
entry,
spinbutton,
separator {
margin-top: 5px;
margin-bottom: 5px;
}
switch {
margin-top: 10px;
margin-bottom: 10px;
}
separator { background: transparent; }
}
.background:not(.tiled):not(.maximized) .titlebar {
@if $variant == 'light' { box-shadow: inset 0 1px $top_highlight; }
@else { box-shadow: inset 0 1px $top_highlight,inset 0 -1px $bottom_highlight; }
&:backdrop, & {
border-top-left-radius: 4px;
border-top-right-radius: 4px;
}
}
headerbar {
window:not(.tiled):not(.maximized) separator:first-child + &, // tackles the paned container case
window:not(.tiled):not(.maximized) &:first-child { &:backdrop, & { border-top-left-radius: 4px; }}
window:not(.tiled):not(.maximized) &:last-child { &:backdrop, & { border-top-right-radius: 4px; }}
}
.titlebar:not(headerbar) {
window.csd > & {
// in csd we assume every titlebar is a headerbar so reset anything, this is needed for split toolbars cases
padding: 0;
background-color: transparent;
background-image: none;
border-style: none;
border-color: transparent;
box-shadow: none;
}
> separator {
&, &:backdrop {
background: $headerbar_color;
}
}
@extend %titlebar;
}
.titlebar{
@extend %titlebar;
}