theme: Replace gnome-shell-sass submodule with subtree
As the style has grown bigger and more complex, generating the different
variants from a common source has been a good decision. However given how
intertwined the theme is with gnome-shell itself, relying on a submodule
has proven to be quite painful. And as things stand right now, it is going
to get worse:
- using either pre-generated CSS or generating it at build time is
odd, and violates meson's strict separation between source- and
build directories; we are therefore considering dropping the CSS
and depending on sassc to always generate it at build time
- with the migration to gitlab, our workflow shifts decisively towards
branches; however there is no support in either git or gitlab for
handling two brances of separate repositories consecutively, which
gets particularly awkward for branches in a private namespace
With those pain points in mind, we will adjust our setup as follows:
- remove the submodule from gnome-shell and instead import the
sass as subtree
- after that, the sass sources can be changed like any other files
in the repository, and regular contributors can forget that there
was ever anything special about them
- whenever we want to update the classic style, we can push the subtree
changes and bump gnome-shell-extension's sass submodule
In other words: Updating the classic styling will become slightly more
painful, but not much and only for me; in return, everyone else can
stop fiddling with submodules (and buy me a beer).
2018-02-09 13:22:55 -05:00
|
|
|
//This is the RIGHT PLACE to edit the stylesheet
|
|
|
|
|
|
|
|
//let's start by telling people not to edit the generated CSS:
|
|
|
|
$cakeisalie: "This stylesheet is generated, DO NOT EDIT";
|
|
|
|
/* #{$cakeisalie} */
|
|
|
|
|
|
|
|
/* Copyright 2009, 2015 Red Hat, Inc.
|
|
|
|
*
|
|
|
|
* Portions adapted from Mx's data/style/default.css
|
|
|
|
* Copyright 2009 Intel Corporation
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or modify it
|
|
|
|
* under the terms and conditions of the GNU Lesser General Public License,
|
|
|
|
* version 2.1, as published by the Free Software Foundation.
|
|
|
|
*
|
|
|
|
* This program is distributed in the hope it will be useful, but WITHOUT ANY
|
|
|
|
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
|
|
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
|
|
|
|
* more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Lesser General Public License
|
|
|
|
* along with this program; if not, write to the Free Software Foundation,
|
|
|
|
* Inc., 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
|
|
|
|
*/
|
|
|
|
|
2019-12-18 16:25:03 -05:00
|
|
|
/* Global Values */
|
2019-06-18 09:29:00 -04:00
|
|
|
|
2019-12-18 16:25:03 -05:00
|
|
|
// padding, margin and spacing
|
|
|
|
$base_padding: 6px;
|
|
|
|
$base_margin: 4px;
|
|
|
|
$base_spacing: 6px;
|
2019-07-02 14:29:40 -04:00
|
|
|
|
2019-12-18 16:25:03 -05:00
|
|
|
// border radii
|
|
|
|
$base_border_radius: 5px;
|
2019-06-18 09:29:00 -04:00
|
|
|
|
2019-12-18 16:25:03 -05:00
|
|
|
$modal_radius:$base_border_radius * 2;
|
2019-06-18 09:29:00 -04:00
|
|
|
|
2019-12-18 16:25:03 -05:00
|
|
|
// non-standard colors
|
|
|
|
$bubble_borders_color: lighten($borders_color, if($variant=='light', 0%, 5%));
|
|
|
|
// $bubble_borders_color: if($variant == 'light', rgba(255,255,255,0.1), rgba(0,0,0,0.3));
|
theme: Replace gnome-shell-sass submodule with subtree
As the style has grown bigger and more complex, generating the different
variants from a common source has been a good decision. However given how
intertwined the theme is with gnome-shell itself, relying on a submodule
has proven to be quite painful. And as things stand right now, it is going
to get worse:
- using either pre-generated CSS or generating it at build time is
odd, and violates meson's strict separation between source- and
build directories; we are therefore considering dropping the CSS
and depending on sassc to always generate it at build time
- with the migration to gitlab, our workflow shifts decisively towards
branches; however there is no support in either git or gitlab for
handling two brances of separate repositories consecutively, which
gets particularly awkward for branches in a private namespace
With those pain points in mind, we will adjust our setup as follows:
- remove the submodule from gnome-shell and instead import the
sass as subtree
- after that, the sass sources can be changed like any other files
in the repository, and regular contributors can forget that there
was ever anything special about them
- whenever we want to update the classic style, we can push the subtree
changes and bump gnome-shell-extension's sass submodule
In other words: Updating the classic styling will become slightly more
painful, but not much and only for me; in return, everyone else can
stop fiddling with submodules (and buy me a beer).
2018-02-09 13:22:55 -05:00
|
|
|
|
2019-12-18 16:25:03 -05:00
|
|
|
// hover
|
|
|
|
$hover_bg_color: if($variant=='light', darken($bg_color, 3%), lighten($bg_color, 5%));
|
|
|
|
$hover_fg_color: if($variant=='light', darken($fg_color, 5%), lighten($fg_color, 5%));
|
|
|
|
$hover_borders_color: lighten($borders_color,if($variant=='light', 5%, 3%));
|
2018-12-13 08:45:22 -05:00
|
|
|
|
2019-12-18 16:25:03 -05:00
|
|
|
// active
|
|
|
|
$active_bg_color: if($variant == 'light', darken($bg_color, 7%), darken($bg_color, 9%));
|
|
|
|
$active_fg_color: darken($fg_color,if($variant=='light', 5%, 3%));
|
|
|
|
$active_borders_color: darken($borders_color,if($variant=='light', 5%, 3%));
|
2018-12-13 08:45:22 -05:00
|
|
|
|
2019-12-18 16:25:03 -05:00
|
|
|
// fonts
|
|
|
|
$base_font_size: 11;
|
|
|
|
$text_shadow_color: if($variant == 'light', rgba(255,255,255,0.3), rgba(0,0,0,0.2));
|
theme: Replace gnome-shell-sass submodule with subtree
As the style has grown bigger and more complex, generating the different
variants from a common source has been a good decision. However given how
intertwined the theme is with gnome-shell itself, relying on a submodule
has proven to be quite painful. And as things stand right now, it is going
to get worse:
- using either pre-generated CSS or generating it at build time is
odd, and violates meson's strict separation between source- and
build directories; we are therefore considering dropping the CSS
and depending on sassc to always generate it at build time
- with the migration to gitlab, our workflow shifts decisively towards
branches; however there is no support in either git or gitlab for
handling two brances of separate repositories consecutively, which
gets particularly awkward for branches in a private namespace
With those pain points in mind, we will adjust our setup as follows:
- remove the submodule from gnome-shell and instead import the
sass as subtree
- after that, the sass sources can be changed like any other files
in the repository, and regular contributors can forget that there
was ever anything special about them
- whenever we want to update the classic style, we can push the subtree
changes and bump gnome-shell-extension's sass submodule
In other words: Updating the classic styling will become slightly more
painful, but not much and only for me; in return, everyone else can
stop fiddling with submodules (and buy me a beer).
2018-02-09 13:22:55 -05:00
|
|
|
|
2019-12-18 16:25:03 -05:00
|
|
|
// icons
|
2019-12-19 10:38:27 -05:00
|
|
|
// $base_icon_size: 1.09em;
|
|
|
|
$base_icon_size: 16px;
|
theme: Replace gnome-shell-sass submodule with subtree
As the style has grown bigger and more complex, generating the different
variants from a common source has been a good decision. However given how
intertwined the theme is with gnome-shell itself, relying on a submodule
has proven to be quite painful. And as things stand right now, it is going
to get worse:
- using either pre-generated CSS or generating it at build time is
odd, and violates meson's strict separation between source- and
build directories; we are therefore considering dropping the CSS
and depending on sassc to always generate it at build time
- with the migration to gitlab, our workflow shifts decisively towards
branches; however there is no support in either git or gitlab for
handling two brances of separate repositories consecutively, which
gets particularly awkward for branches in a private namespace
With those pain points in mind, we will adjust our setup as follows:
- remove the submodule from gnome-shell and instead import the
sass as subtree
- after that, the sass sources can be changed like any other files
in the repository, and regular contributors can forget that there
was ever anything special about them
- whenever we want to update the classic style, we can push the subtree
changes and bump gnome-shell-extension's sass submodule
In other words: Updating the classic styling will become slightly more
painful, but not much and only for me; in return, everyone else can
stop fiddling with submodules (and buy me a beer).
2018-02-09 13:22:55 -05:00
|
|
|
|
2019-12-18 16:25:03 -05:00
|
|
|
// Stage
|
|
|
|
stage {
|
2019-12-19 10:38:27 -05:00
|
|
|
@include fontsize($base_font_size);
|
|
|
|
color: $fg_color;
|
theme: Replace gnome-shell-sass submodule with subtree
As the style has grown bigger and more complex, generating the different
variants from a common source has been a good decision. However given how
intertwined the theme is with gnome-shell itself, relying on a submodule
has proven to be quite painful. And as things stand right now, it is going
to get worse:
- using either pre-generated CSS or generating it at build time is
odd, and violates meson's strict separation between source- and
build directories; we are therefore considering dropping the CSS
and depending on sassc to always generate it at build time
- with the migration to gitlab, our workflow shifts decisively towards
branches; however there is no support in either git or gitlab for
handling two brances of separate repositories consecutively, which
gets particularly awkward for branches in a private namespace
With those pain points in mind, we will adjust our setup as follows:
- remove the submodule from gnome-shell and instead import the
sass as subtree
- after that, the sass sources can be changed like any other files
in the repository, and regular contributors can forget that there
was ever anything special about them
- whenever we want to update the classic style, we can push the subtree
changes and bump gnome-shell-extension's sass submodule
In other words: Updating the classic styling will become slightly more
painful, but not much and only for me; in return, everyone else can
stop fiddling with submodules (and buy me a beer).
2018-02-09 13:22:55 -05:00
|
|
|
}
|
|
|
|
|
2019-12-18 16:25:03 -05:00
|
|
|
/* Common Stylings */
|
|
|
|
|
|
|
|
// Text
|
theme: Replace gnome-shell-sass submodule with subtree
As the style has grown bigger and more complex, generating the different
variants from a common source has been a good decision. However given how
intertwined the theme is with gnome-shell itself, relying on a submodule
has proven to be quite painful. And as things stand right now, it is going
to get worse:
- using either pre-generated CSS or generating it at build time is
odd, and violates meson's strict separation between source- and
build directories; we are therefore considering dropping the CSS
and depending on sassc to always generate it at build time
- with the migration to gitlab, our workflow shifts decisively towards
branches; however there is no support in either git or gitlab for
handling two brances of separate repositories consecutively, which
gets particularly awkward for branches in a private namespace
With those pain points in mind, we will adjust our setup as follows:
- remove the submodule from gnome-shell and instead import the
sass as subtree
- after that, the sass sources can be changed like any other files
in the repository, and regular contributors can forget that there
was ever anything special about them
- whenever we want to update the classic style, we can push the subtree
changes and bump gnome-shell-extension's sass submodule
In other words: Updating the classic styling will become slightly more
painful, but not much and only for me; in return, everyone else can
stop fiddling with submodules (and buy me a beer).
2018-02-09 13:22:55 -05:00
|
|
|
%status_text {
|
2019-12-19 10:38:27 -05:00
|
|
|
font-size: 2em;
|
|
|
|
font-weight: bold;
|
|
|
|
color: $osd_fg_color;
|
2019-12-18 16:25:03 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
// osd panels
|
|
|
|
%osd_panel {
|
2019-12-19 10:38:27 -05:00
|
|
|
color: $osd_fg_color;
|
|
|
|
background-color: $osd_bg_color;
|
|
|
|
border: 1px solid $osd_outer_borders_color;
|
|
|
|
border-radius: $base_border_radius * 2 + 4px;
|
|
|
|
padding: $base_padding * 2;
|
2019-12-18 16:25:03 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
// Overview panels
|
|
|
|
// for the dash and workspace switcher
|
|
|
|
%overview_panel {
|
2019-12-19 10:38:27 -05:00
|
|
|
color: $osd_fg_color;
|
|
|
|
background-color: transparentize($osd_bg_color, 0.2);
|
|
|
|
border: 1px solid $osd_outer_borders_color;
|
2019-12-18 16:25:03 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
// icon tiles
|
|
|
|
%icon_tile {
|
2019-12-19 10:38:27 -05:00
|
|
|
background-color: transparent; // no background
|
|
|
|
color: $osd_fg_color;
|
|
|
|
border-radius: $base_border_radius + 4px;
|
|
|
|
padding: $base_padding;
|
2019-12-19 13:05:28 -05:00
|
|
|
border-width: 2px;
|
|
|
|
border-style: solid;
|
|
|
|
border-color: transparent;
|
2019-12-19 10:38:27 -05:00
|
|
|
transition-duration: 100ms;
|
|
|
|
text-align: center;
|
2019-12-18 16:25:03 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
// dialogs
|
|
|
|
%bubble_panel {
|
2019-12-19 10:38:27 -05:00
|
|
|
color: $fg_color;
|
|
|
|
background-color: $bg_color;
|
|
|
|
border: 1px solid if($variant=='light', rgba(0,0,0, 0.6), $borders_color);
|
|
|
|
|
|
|
|
// entry
|
|
|
|
StEntry { @extend %bubble_entry;}
|
|
|
|
|
|
|
|
// button
|
|
|
|
.button {
|
|
|
|
background-color: $bg_color;
|
|
|
|
color: $fg_color;
|
|
|
|
box-shadow: none;
|
|
|
|
|
|
|
|
&, &:hover, &:focus, &:active, &:disabled {
|
|
|
|
border-color: $bubble_borders_color;
|
|
|
|
}
|
|
|
|
|
|
|
|
&:hover { background-color: $hover_bg_color;}
|
|
|
|
&:active {
|
|
|
|
background-color: $selected_bg_color;
|
|
|
|
color: $selected_fg_color;
|
|
|
|
}
|
|
|
|
&:disabled { color: $insensitive_fg_color;}
|
|
|
|
}
|
2019-12-18 16:25:03 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
// entries in dialogs
|
|
|
|
%bubble_entry {
|
2019-12-19 10:38:27 -05:00
|
|
|
color: $fg_color;
|
|
|
|
background-color: darken($bg_color, 2%);
|
|
|
|
border-color: $bubble_borders_color;
|
|
|
|
box-shadow: none;
|
|
|
|
&:focus { border: 2px solid $selected_bg_color;}
|
2019-12-18 16:25:03 -05:00
|
|
|
}
|
|
|
|
|
2020-01-14 13:09:03 -05:00
|
|
|
// button styling
|
|
|
|
%button {
|
|
|
|
border-radius: $base_border_radius;
|
|
|
|
border-style: solid;
|
|
|
|
border-width: 1px;
|
|
|
|
min-height: 22px;
|
|
|
|
padding: $base_padding * 0.5 $base_padding * 4;
|
|
|
|
|
|
|
|
@include button(normal);
|
|
|
|
&:focus { @include button(focus);}
|
|
|
|
&:hover { @include button(hover);}
|
|
|
|
&:insensitive { @include button(insensitive);}
|
|
|
|
&:active { @include button(active);}
|
|
|
|
}
|
|
|
|
|
2019-12-18 16:25:03 -05:00
|
|
|
// buttons in dialogs
|
|
|
|
%bubble_button {
|
2019-12-19 10:38:27 -05:00
|
|
|
@include button(normal);
|
|
|
|
padding: $base_padding * 2;
|
|
|
|
border-color: $bubble_borders_color;
|
|
|
|
border-style: solid;
|
2020-01-14 13:09:03 -05:00
|
|
|
border-width: 1px;
|
|
|
|
border-left-width: 0;
|
|
|
|
border-bottom-width: 0;
|
2019-12-19 10:38:27 -05:00
|
|
|
box-shadow:none !important;
|
|
|
|
|
|
|
|
&:insensitive { @include button(insensitive);}
|
|
|
|
&:hover { @include button(hover);}
|
|
|
|
&:focus { @include button(focus);}
|
|
|
|
&:active { @include button(active);}
|
|
|
|
|
|
|
|
// radius is 2 pixel less to fit in bubble
|
|
|
|
&:first-child {
|
2019-12-20 10:45:58 -05:00
|
|
|
border-radius: 0 0 0 $modal_radius - 2px;
|
2019-12-19 10:38:27 -05:00
|
|
|
}
|
2019-12-20 10:45:58 -05:00
|
|
|
|
2019-12-19 10:38:27 -05:00
|
|
|
&:last-child {
|
2020-01-14 13:09:03 -05:00
|
|
|
border-right-width: 0;
|
2019-12-20 10:45:58 -05:00
|
|
|
border-radius: 0 0 $modal_radius - 2px 0;
|
2019-12-19 10:38:27 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
&:first-child:last-child {
|
2019-12-20 10:45:58 -05:00
|
|
|
border-radius: 0 0 $modal_radius - 2px $modal_radius - 2px;
|
2019-12-19 10:38:27 -05:00
|
|
|
}
|
2019-12-18 16:25:03 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// notification styling
|
|
|
|
%notification_bubble {
|
2020-01-14 13:09:03 -05:00
|
|
|
border-width: 1px;
|
|
|
|
border-style: solid;
|
2019-12-19 10:38:27 -05:00
|
|
|
border-radius:$base_border_radius + 2px;
|
|
|
|
padding: 0;
|
|
|
|
margin: $base_margin;
|
|
|
|
|
|
|
|
@include button(normal);
|
|
|
|
|
2020-01-14 13:09:03 -05:00
|
|
|
&:focus {
|
|
|
|
@include button(focus);
|
|
|
|
}
|
|
|
|
|
2019-12-19 10:38:27 -05:00
|
|
|
&:hover {
|
|
|
|
@include button(hover);
|
|
|
|
}
|
|
|
|
|
|
|
|
&:active {
|
|
|
|
@include button(active);
|
|
|
|
}
|
2020-01-14 13:09:03 -05:00
|
|
|
}
|