Use a base css (#186)

* Use a base CSS for styles

* Fix updater dialogs too close to buttons and updater too close to the edge

* Fix blurry Dropdown and dialog buttons

* minor tweaks and fixes

* Solarized restyle

* more vertical clearance between items

* workaround colorized bar at high res.

* colorized pressed state
This commit is contained in:
Alfredo Monclus 2021-09-16 21:02:36 -03:00 committed by GitHub
parent e9599a14c5
commit 67cc396ad9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 489 additions and 451 deletions

View File

@ -431,9 +431,11 @@ class KlipperScreen(Gtk.Window):
def init_style(self):
style_provider = Gtk.CssProvider()
css = open(klipperscreendir + "/styles/base.css")
css_base_data = css.read()
css.close()
css = open(klipperscreendir + "/styles/%s/style.css" % (self.theme))
css_data = css.read()
css_data = css_base_data + css.read()
css.close()
self.font_size = self.gtk.get_font_size()

367
styles/base.css Normal file
View File

@ -0,0 +1,367 @@
* {
color: white;
font-size: KS_FONT_SIZEpx;
-GtkComboBox-appears-as-list: 0;
text-shadow: none;
}
window {
background-color: #13181C;
-gtk-icon-shadow: none;
}
button {
background-image: none;
background-color: #13181C;
margin: .25em;
padding: 0 .5em;
border-radius: 0;
border: 0;
-gtk-icon-shadow: none;
}
button:active {
background-color: #304C62;
}
.button_active {
background-color: #20303D;
}
button.color1 {
border-bottom: .4em solid #ED6500;
margin: .3em;
}
button.color2 {
border-bottom: .4em solid #B10080;
margin: .3em;
}
button.color3 {
border-bottom: .4em solid #009384;
margin: .3em;
}
button.color4 {
border-bottom: .4em solid #A7E100;
margin: .3em;
}
button.active {
background-color: #20303D;
}
button.file-list {
margin: 0;
}
combobox box button {
border: .05em solid #cccccc;
padding: .5em 1em;
}
entry {
font-size: 1em;
background-color: #20292F;
border: 1em solid #13181C;
padding: .25em;
}
frame {
color: white;
border-bottom: 1px solid #444;
}
label {
color: white;
}
menu {
background-color: #13181C;
border: .1em solid #cccccc;
}
menuitem {
background-color: #13181C;
border: .1em solid #cccccc;
border-bottom: 0;
border-top: 0;
}
trough {
min-height: 2em;
background-color: #404E57;
color: white;
border: 1px solid black;
}
trough highlight, trough progress {
min-height: 2em;
background-color: #3584e4;
color: white;
border: 1px solid black;
}
trough progress.left {
border: 0px;
}
scale mark {
margin-top: 1em;
color: white;
}
scrollbar, scrollbar button, scrollbar trough {
border: none;
background-color: #13181C;
}
scrollbar slider {
min-width: 2.5em;
border-radius: .7em;
background-color: #404E57;
}
textview, textview text {
background: transparent;
font-family: Free Mono;
}
textview .time {
color: grey;
}
trough {
margin: .5em 1em;
}
.popup {
background-color: black;
}
.action_bar {
/*border-right: 2px solid #444;*/
}
.dialog {
border: .1em solid black;
padding: 2.5em;
background-color: black;
margin: 1em;
}
.dialog button {
padding: 1.5em 2.5em 1.5em 2.5em;
border-bottom: .4em solid #009384;
margin-top: 1em;
}
.distbutton_active {
background-color: #20303D;
}
.distbutton_top {
border: .15em solid white;
border-right: 0;
border-top-left-radius: .75em;
border-bottom-left-radius: .75em;
margin-right: 0;
}
.distbutton {
border: .15em solid white;
border-left: .15em solid #ccc;
border-right: 0;
margin-left: 0;
margin-right: 0;
}
.distbutton_bottom {
border: .15em solid white;
border-left: .15em solid #ccc;
border-top-right-radius: .7em;
border-bottom-right-radius: .7em;
margin-left: 0;
}
.fan_slider {
margin: 0 1em 0 1em;
color: white;
}
.frame-item {
min-height: 4.5em;
padding: .2em .3em;
}
.message_popup {
background-color: #367554;
border-bottom: .1em solid white;
}
.message_popup button {
background-color: #367554;
}
.numpad_tleft {
border: .15em solid white;
border-bottom: 0;
border-right: 0;
border-top-left-radius: .7em;
margin: .15em 0 0 .15em;
}
.numpad_top {
border: .15em solid white;
border-bottom: 0;
border-right: 0;
margin: .15em 0 0 0;
}
.numpad_tright {
border: .15em solid white;
border-bottom: 0;
border-top-right-radius: .7em;
margin: .15em .15em 0 0;
}
.numpad_left {
border: .15em solid white;
border-right: 0;
border-bottom: 0;
margin: 0 0 0 .15em;
}
.numpad_button {
border: .15em solid white;
border-right: 0;
border-bottom: 0;
margin: 0;
}
.numpad_right {
border: .15em solid white;
border-bottom: 0;
margin: 0 .15em 0 0;
}
.numpad_bleft {
border: .15em solid white;
border-right: 0;
border-bottom-left-radius: .7em;
margin: 0 0 .15em .15em;
}
.numpad_bottom {
border: .15em solid white;
border-right: 0;
margin: 0 0 .15em 0;
}
.numpad_bright {
border: .15em solid white;
border-bottom-right-radius: .7em;
margin: 0 .15em .15em 0;
}
.printing-filename {
font-size: 1.75em;
font-weight: bold;
margin: .25em .25em 0 0;
}
.printing-info {
font-size: 1.2em;
margin-left: .25em;
}
.printing-info-box {
padding-left: .25em;
}
.printing-info-box box {
margin-bottom: .25em;
}
.printing-status {
color: #f0f0f0;
font-style: italic;
margin: 0 0 0 0;
}
.printing-progress-bar {
color: #00C9B4;
}
.printing-progress-text {
font-size: 1.5em;
font-weight: bold;
color: white;
}
.printing-status-label {
padding-top: .25em;
padding-bottom: .15em;
color: #ccc;
font-size: 1.25em;
}
.tempbutton_top {
border: .15em solid white;
border-bottom: 0;
border-top-left-radius: .75em;
border-top-right-radius: .75em;
margin-bottom: 0;
}
.tempbutton {
border: .15em solid white;
border-top: .15em solid #ccc;
border-bottom: 0;
margin-top: 0;
margin-bottom: 0;
}
.tempbutton_bottom {
border: .15em solid white;
border-top: .15em solid #ccc;
border-bottom-left-radius: .7em;
border-bottom-right-radius: .7em;
margin-top: 0;
}
.message {
border: .1em solid #981E1F;
font-size: 1em;
padding: 2.5em;
color: white;
background-color: #981E1F;
}
.message button {
background-color: white;
color: black;
padding: 2em 2.5em 2em 2.5em;
}
.notification {
background-clip: padding-box;
padding: .25em;
border-radius: 0 0 .25em .25em;
opacity: 0.8;
}
.system-program-grid {
padding: 0.25em;
padding-right: 1em;
padding-bottom: 0;
}
.warning {
background-color: rgba(30, 204, 39, 0.7);
}
.error {
background-color: rgba(204, 30, 30, 0.7);
}

View File

@ -1,21 +1,13 @@
* {
color: #fdf6e3; /*base3*/
font-size: KS_FONT_SIZEpx;
-GtkComboBox-appears-as-list: 0;
}
window {
background-color: #002b36; /*base03*/
-gtk-icon-shadow: none;
}
button {
background-image: none;
background-color: #002b36; /*base03*/
margin: .25em;
border-radius: 0;
border: 0;
-gtk-icon-shadow: none;
}
button:active {
@ -23,48 +15,62 @@ button:active {
}
.button_active {
border-color: #073642; /*base02*/
border-style: solid;
border-radius: 1em;
border-width: .25em;
background-color: #073642; /*base02*/
}
button.color1 {
border-bottom: .4em solid #cb4b16; /*solarized-orange*/
background-color: #073642; /*base02*/
border-bottom-color: #cb4b16; /*solarized-orange*/
border-radius: 1em;
}
button.color2 {
border-bottom: .4em solid #d33682; /*solarized-magenta*/
background-color: #073642; /*base02*/
border-bottom-color: #d33682; /*solarized-magenta*/
border-radius: 1em;
}
button.color3 {
border-bottom: .4em solid #2aa198; /*solarized-cyan*/
background-color: #073642; /*base02*/
border-bottom-color: #2aa198; /*solarized-cyan*/
border-radius: 1em;
}
button.color4 {
border-bottom: .4em solid #859900; /*solarized-green*/
background-color: #073642; /*base02*/
border-bottom-color: #859900; /*solarized-green*/
border-radius: 1em;
}
button.color1:active, button.color2:active, button.color3:active, button.color4:active {
border-style: none;
}
button.active {
background-color: #cb4b16; /*solarized-orange*/
}
button.file-list {
margin: 0;
combobox box button {
background-color: #073642; /*base02*/
border-color: #002b36; /*base03*/
}
combobox box button {
border: .05em solid #eee8d5; /*base2*/
padding: .5em 1em;
switch {
/* background-color: #073642; base02 */
}
entry {
font-size: 1em;
background-color: #586e75; /*base01*/
border: 0;
padding: .25em;
background-color: #073642; /*base02*/
border-color: #002b36; /*base03*/
}
frame {
color: #fdf6e3; /*base3*/
border-bottom: 1px solid #073642; /*base02*/
border-bottom-color: #073642; /*base02*/
}
label {
@ -73,213 +79,86 @@ label {
menu {
background-color: #002b36; /*base03*/
border: .1em solid #cccccc;
border-color: #93a1a1; /*base1*/
}
menuitem {
background-color: #002b36; /*base03*/
border: .1em solid #93a1a1; /*base1*/
border-bottom: 0;
border-top: 0;
border-color: #93a1a1; /*base1*/
}
trough {
min-height: 2em;
background-color: #586e75; /*base01*/
background-color: #073642; /*base02*/
color: #fdf6e3; /*base3*/
border: 1px solid #002b36; /*base03*/
border-color: #002b36; /*base03*/
border-radius: 1em;
}
trough highlight, trough progress {
min-height: 2em;
background-color: #b58900; /*solarazed-yellow*/
background-color: #6c71c4; /*solarized-violet*/
color: #fdf6e3; /*base3*/
border: 1px solid #002b36; /*base03*/
border-color: #002b36; /*base03*/
border-radius: 1em;
}
trough progress.left {
border: 0px;
}
scale mark {
margin-top: 1em;
scale-mark {
color: #fdf6e3; /*base3*/
}
scrollbar, scrollbar button, scrollbar trough {
border: none;
background-color: #002b36; /*base03*/
}
scrollbar slider {
min-width: 3em;
border-radius: .7em;
background-color: #586e75; /*base01*/
}
textview, textview text {
background: transparent;
}
textview .time {
color: grey;
}
trough {
margin: .5em 1em;
color: #93a1a1; /*base1*/
}
.popup {
background-color: #268bd2; /*solarized-cyan*/
}
.action_bar {
/*border-right: 2px solid #444;*/
}
.dialog {
border: .1em solid #002b36; /*base03*/
padding: 2.5em;
border: #002b36; /*base03*/
background-color: #002b36; /*base03*/
margin: 1em;
}
.dialog button {
padding: 1.5em 2.5em 1.5em 2.5em;
border-bottom: .4em solid #009384;
border-bottom-color: #268bd2; /*solarized-cyan*/
}
.tempbutton_top, .tempbutton, .tempbutton_bottom, .distbutton_top, .distbutton, .distbutton_bottom {
border-color: #002b36; /*base03*/
background-color: #073642; /*base02*/
}
.distbutton_active {
background-color: #cb4b16; /*solarized-orange*/
}
.distbutton_top {
border: .15em solid #fdf6e3; /*base3*/
border-right: 0;
border-top-left-radius: .75em;
border-bottom-left-radius: .75em;
margin-right: 0;
}
.distbutton {
border: .15em solid #fdf6e3; /*base3*/
border-left: .15em solid #93a1a1; /*base1*/
border-right: 0;
margin-left: 0;
margin-right: 0;
}
.distbutton_bottom {
border: .15em solid #fdf6e3; /*base3*/
border-left: .15em solid #93a1a1; /*base1*/
border-top-right-radius: .7em;
border-bottom-right-radius: .7em;
margin-left: 0;
}
.fan_slider {
margin: 0 1em 0 1em;
color: #fdf6e3; /*base3*/
}
.frame-item {
min-height: 4.5em;
padding: .1em .75em;
}
.message_popup {
background-color: #dc322f; /*solarazed-red*/
border-bottom: .1em solid #fdf6e3; /*base3*/
border-bottom-color: #fdf6e3; /*base3*/
}
.message_popup button {
background-color: #dc322f; /*solarazed-red*/
}
.numpad_tleft {
border: .15em solid #fdf6e3; /*base3*/
border-bottom: 0;
border-right: 0;
border-top-left-radius: .7em;
margin: .15em 0 0 .15em;
}
.numpad_top {
border: .15em solid #fdf6e3; /*base3*/
border-bottom: 0;
border-right: 0;
margin: .15em 0 0 0;
}
.numpad_tright {
border: .15em solid #fdf6e3; /*base3*/
border-bottom: 0;
border-top-right-radius: .7em;
margin: .15em .15em 0 0;
}
.numpad_left {
border: .15em solid #fdf6e3; /*base3*/
border-right: 0;
border-bottom: 0;
margin: 0 0 0 .15em;
}
.numpad_button {
border: .15em solid #fdf6e3; /*base3*/
border-right: 0;
border-bottom: 0;
margin: 0;
}
.numpad_right {
border: .15em solid #fdf6e3; /*base3*/
border-bottom: 0;
margin: 0 .15em 0 0;
}
.numpad_bleft {
border: .15em solid #fdf6e3; /*base3*/
border-right: 0;
border-bottom-left-radius: .7em;
margin: 0 0 .15em .15em;
}
.numpad_bottom {
border: .15em solid #fdf6e3; /*base3*/
border-right: 0;
margin: 0 0 .15em 0;
}
.numpad_bright {
border: .15em solid #fdf6e3; /*base3*/
border-bottom-right-radius: .7em;
margin: 0 .15em .15em 0;
}
.printing-filename {
font-size: 1.75em;
font-weight: bold;
margin: .25em .25em 0 0;
}
.printing-info {
font-size: 1.2em;
margin-left: .25em;
}
.printing-info-box {
padding-left: .25em;
}
.printing-info-box box {
margin-bottom: .25em;
.numpad_tleft, .numpad_top, .numpad_tright, .numpad_left, .numpad_button, .numpad_right, .numpad_bleft, .numpad_bottom, .numpad_bright {
border-color: #002b36; /*base03*/
background-color: #073642; /*base02*/
}
.printing-status {
color: #fdf6e3; /*base3*/
font-style: italic;
margin: 0 0 0 0;
}
.printing-progress-bar {
@ -287,46 +166,15 @@ trough {
}
.printing-progress-text {
font-size: 1.5em;
font-weight: bold;
color: #fdf6e3; /*base3*/
}
.printing-status-label {
padding-top: .25em;
padding-bottom: .15em;
color: #93a1a1; /*base1*/
font-size: 1.25em;
}
.tempbutton_top {
border: .15em solid #fdf6e3; /*base3*/
border-bottom: 0;
border-top-left-radius: .75em;
border-top-right-radius: .75em;
margin-bottom: 0;
}
.tempbutton {
border: .15em solid #fdf6e3; /*base3*/
border-top: .15em solid #93a1a1; /*base1*/
border-bottom: 0;
margin-top: 0;
margin-bottom: 0;
}
.tempbutton_bottom {
border: .15em solid #fdf6e3; /*base3*/
border-top: .15em solid #93a1a1; /*base1*/
border-bottom-left-radius: .7em;
border-bottom-right-radius: .7em;
margin-top: 0;
}
.message {
border: .1em solid #dc322f; /*solarized-red*/
font-size: 1em;
padding: 2.5em;
border-color: #dc322f; /*solarized-red*/
color: #fdf6e3; /*base3*/
background-color: #dc322f; /*solarized-red*/
}
@ -334,14 +182,6 @@ trough {
.message button {
background-color: #fdf6e3; /*base3*/
color: #002b36; /*base03*/
padding: 2em 2.5em 2em 2.5em;
}
.notification {
background-clip: padding-box;
padding: .25em;
border-radius: 0 0 .25em .25em;
opacity: 0.8;
}
.warning {

View File

@ -1,22 +1,13 @@
* {
color: white;
font-size: KS_FONT_SIZEpx;
-GtkComboBox-appears-as-list: 0;
}
window {
background-color: #13181C;
-gtk-icon-shadow: none;
}
button {
background-image: none;
background-color: #13181C;
margin: .25em;
margin-bottom: .5em;
border-radius: 0;
border: 0;
-gtk-icon-shadow: none;
}
button:active {
@ -28,44 +19,36 @@ button:active {
}
button.color1 {
border-bottom: .4em solid #ED6500;
border-bottom-color: #ED6500;
}
button.color2 {
border-bottom: .4em solid #B10080;
border-bottom-color: #B10080;
}
button.color3 {
border-bottom: .4em solid #009384;
border-bottom-color: #009384;
}
button.color4 {
border-bottom: .4em solid #A7E100;
border-bottom-color: #A7E100;
}
button.active {
background-color: #20303D;
}
button.file-list {
margin: 0;
}
combobox box button {
border: .05em solid #cccccc;
padding: .5em 1em;
border-color: #cccccc;
}
entry {
font-size: 1em;
background-color: #20292F;
border: 0;
padding: .25em;
border-color: #13181C;
}
frame {
color: white;
border-bottom: 1px solid #444;
border-bottom-color: #444;
}
label {
@ -74,81 +57,53 @@ label {
menu {
background-color: #13181C;
border: .1em solid #cccccc;
border-color: #cccccc;
}
menuitem {
background-color: #13181C;
border: .1em solid #cccccc;
border-bottom: 0;
border-top: 0;
border-color: #cccccc;
}
trough {
min-height: 2em;
background-color: #404E57;
color: white;
border: 1px solid black;
border-color: black;
}
trough highlight, trough progress {
min-height: 2em;
background-color: #3584e4;
color: white;
border: 1px solid black;
border-color: black;
}
trough progress.left {
border: 0px;
}
scale mark {
margin-top: 1em;
scale-mark {
color: white;
}
scrollbar, scrollbar button, scrollbar trough {
border: none;
background-color: #13181C;
}
scrollbar slider {
min-width: 3em;
border-radius: .7em;
background-color: #404E57;
}
textview, textview text {
background: transparent;
font-family: Free Mono;
}
textview .time {
color: grey;
}
trough {
margin: .5em 1em;
}
.popup {
background-color: black;
}
.action_bar {
/*border-right: 2px solid #444;*/
}
.dialog {
border: .1em solid black;
padding: 2.5em;
border: black;
background-color: black;
margin: 1em;
}
.dialog button {
padding: 1.5em 2.5em 1.5em 2.5em;
border-bottom: .4em solid #009384;
border-bottom-color: #009384;
}
.distbutton_active {
@ -156,132 +111,38 @@ trough {
}
.distbutton_top {
border: .15em solid white;
border-right: 0;
border-top-left-radius: .75em;
border-bottom-left-radius: .75em;
margin-right: 0;
border-color: white;
}
.distbutton {
border: .15em solid white;
border-left: .15em solid #ccc;
border-right: 0;
margin-left: 0;
margin-right: 0;
border-color: white;
border-left-color: #ccc;
}
.distbutton_bottom {
border: .15em solid white;
border-left: .15em solid #ccc;
border-top-right-radius: .7em;
border-bottom-right-radius: .7em;
margin-left: 0;
border-color: white;
border-left-color: #ccc;
}
.fan_slider {
margin: 0 1em 0 1em;
color: white;
}
.frame-item {
min-height: 4.5em;
padding: .1em .75em;
}
.message_popup {
background-color: #367554;
border-bottom: .1em solid white;
border-bottom-color: white;
}
.message_popup button {
background-color: #367554;
}
.numpad_tleft {
border: .15em solid white;
border-bottom: 0;
border-right: 0;
border-top-left-radius: .7em;
margin: .15em 0 0 .15em;
}
.numpad_top {
border: .15em solid white;
border-bottom: 0;
border-right: 0;
margin: .15em 0 0 0;
}
.numpad_tright {
border: .15em solid white;
border-bottom: 0;
border-top-right-radius: .7em;
margin: .15em .15em 0 0;
}
.numpad_left {
border: .15em solid white;
border-right: 0;
border-bottom: 0;
margin: 0 0 0 .15em;
}
.numpad_button {
border: .15em solid white;
border-right: 0;
border-bottom: 0;
margin: 0;
}
.numpad_right {
border: .15em solid white;
border-bottom: 0;
margin: 0 .15em 0 0;
}
.numpad_bleft {
border: .15em solid white;
border-right: 0;
border-bottom-left-radius: .7em;
margin: 0 0 .15em .15em;
}
.numpad_bottom {
border: .15em solid white;
border-right: 0;
margin: 0 0 .15em 0;
}
.numpad_bright {
border: .15em solid white;
border-bottom-right-radius: .7em;
margin: 0 .15em .15em 0;
}
.printing-filename {
font-size: 1.75em;
font-weight: bold;
margin: .25em .25em 0 0;
}
.printing-info {
font-size: 1.2em;
margin-left: .25em;
}
.printing-info-box {
padding-left: .25em;
}
.printing-info-box box {
margin-bottom: .25em;
.numpad_tleft, .numpad_top, .numpad_tright, .numpad_left, .numpad_button, .numpad_right, .numpad_bleft, .numpad_bottom, .numpad_bright {
border-color: white;
}
.printing-status {
color: #f0f0f0;
font-style: italic;
margin: 0 0 0 0;
}
.printing-progress-bar {
@ -289,46 +150,24 @@ trough {
}
.printing-progress-text {
font-size: 1.5em;
font-weight: bold;
color: white;
}
.printing-status-label {
padding-top: .25em;
padding-bottom: .15em;
color: #ccc;
font-size: 1.25em;
}
.tempbutton_top {
border: .15em solid white;
border-bottom: 0;
border-top-left-radius: .75em;
border-top-right-radius: .75em;
margin-bottom: 0;
border-color: white;
}
.tempbutton {
border: .15em solid white;
border-top: .15em solid #ccc;
border-bottom: 0;
margin-top: 0;
margin-bottom: 0;
}
.tempbutton_bottom {
border: .15em solid white;
border-top: .15em solid #ccc;
border-bottom-left-radius: .7em;
border-bottom-right-radius: .7em;
margin-top: 0;
.tempbutton, .tempbutton_bottom {
border-color: white;
border-top-color: #ccc;
}
.message {
border: .1em solid #981E1F;
font-size: 1em;
padding: 2.5em;
border-color: #981E1F;
color: white;
background-color: #981E1F;
}
@ -336,18 +175,8 @@ trough {
.message button {
background-color: white;
color: black;
padding: 2em 2.5em 2em 2.5em;
}
.notification {
background-clip: padding-box;
padding: .25em;
border-radius: 0 0 .25em .25em;
opacity: 0.8;
}
.system-program-grid
.warning {
background-color: rgba(30, 204, 39, 0.7);
}