├── screenshot.png ├── src ├── firefox-proton │ ├── check.png │ ├── entry.png │ ├── button-hover.png │ ├── check-checked.png │ ├── notebook-tab.png │ ├── button-pressed.png │ ├── separator-vertical.png │ ├── notebook-background.png │ ├── notebook-tab-active.png │ └── userChrome.css ├── gtk-3.0 │ ├── assets │ │ ├── button.png │ │ ├── check.png │ │ ├── entry.png │ │ ├── menu.png │ │ ├── radio.png │ │ ├── notebook.png │ │ ├── progress.png │ │ ├── button-focus.png │ │ ├── button-hover.png │ │ ├── check-checked.png │ │ ├── radio-checked.png │ │ ├── button-disabled.png │ │ ├── button-pressed.png │ │ ├── check-disabled.png │ │ ├── frame-etched-in.png │ │ ├── frame-etched-out.png │ │ ├── notebook-tab-top.png │ │ ├── radio-disabled.png │ │ ├── statusbar-frame.png │ │ ├── notebook-tab-left.png │ │ ├── notebook-tab-right.png │ │ ├── separator-vertical.png │ │ ├── check-indeterminate.png │ │ ├── mate-panel-background.png │ │ ├── notebook-header-left.png │ │ ├── notebook-header-right.png │ │ ├── notebook-header-top.png │ │ ├── notebook-tab-bottom.png │ │ ├── radio-indeterminate.png │ │ ├── scale-slider-border.png │ │ ├── scale-slider-vertical.png │ │ ├── scrollbar-button-left.png │ │ ├── scrollbar-button-top.png │ │ ├── separator-horizontal.png │ │ ├── check-checked-disabled.png │ │ ├── notebook-header-bottom.png │ │ ├── radio-checked-disabled.png │ │ ├── scale-slider-horizontal.png │ │ ├── scrollbar-button-bottom.png │ │ ├── scrollbar-button-right.png │ │ ├── combobox-arrow-separator.png │ │ ├── pan-down-symbolic-fallback.png │ │ ├── pan-end-symbolic-fallback.png │ │ ├── pan-up-symbolic-fallback.png │ │ ├── paned-separator-horizontal.png │ │ ├── paned-separator-vertical.png │ │ ├── check-indeterminate-disabled.png │ │ ├── color-scale-slider-vertical.png │ │ ├── pan-start-symbolic-fallback.png │ │ ├── radio-indeterminate-disabled.png │ │ ├── color-scale-slider-horizontal.png │ │ ├── scrollbar-button-disabled-left.png │ │ ├── scrollbar-button-disabled-right.png │ │ ├── scrollbar-button-disabled-top.png │ │ ├── pan-up-symbolic-disabled-fallback.png │ │ ├── scrollbar-button-disabled-bottom.png │ │ ├── pan-down-symbolic-disabled-fallback.png │ │ ├── pan-end-symbolic-disabled-fallback.png │ │ └── pan-start-symbolic-disabled-fallback.png │ ├── xfce-applications.css │ ├── gtk.css │ ├── gtk-dark.css │ ├── other-applications.css │ ├── mate-applications.css │ └── gtk-widgets.css ├── index.theme └── gtk-2.0 │ └── gtkrc ├── Makefile ├── doc ├── firefox-proton.txt └── eclipse.txt ├── watch ├── README.md └── LICENSE.md /screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/screenshot.png -------------------------------------------------------------------------------- /src/firefox-proton/check.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/firefox-proton/check.png -------------------------------------------------------------------------------- /src/firefox-proton/entry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/firefox-proton/entry.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/button.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/check.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/check.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/entry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/entry.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/menu.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/radio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/radio.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/notebook.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/notebook.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/progress.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/progress.png -------------------------------------------------------------------------------- /src/firefox-proton/button-hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/firefox-proton/button-hover.png -------------------------------------------------------------------------------- /src/firefox-proton/check-checked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/firefox-proton/check-checked.png -------------------------------------------------------------------------------- /src/firefox-proton/notebook-tab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/firefox-proton/notebook-tab.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/button-focus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/button-focus.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/button-hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/button-hover.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/check-checked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/check-checked.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/radio-checked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/radio-checked.png -------------------------------------------------------------------------------- /src/firefox-proton/button-pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/firefox-proton/button-pressed.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/button-disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/button-disabled.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/button-pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/button-pressed.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/check-disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/check-disabled.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/frame-etched-in.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/frame-etched-in.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/frame-etched-out.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/frame-etched-out.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/notebook-tab-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/notebook-tab-top.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/radio-disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/radio-disabled.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/statusbar-frame.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/statusbar-frame.png -------------------------------------------------------------------------------- /src/firefox-proton/separator-vertical.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/firefox-proton/separator-vertical.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/notebook-tab-left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/notebook-tab-left.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/notebook-tab-right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/notebook-tab-right.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/separator-vertical.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/separator-vertical.png -------------------------------------------------------------------------------- /src/firefox-proton/notebook-background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/firefox-proton/notebook-background.png -------------------------------------------------------------------------------- /src/firefox-proton/notebook-tab-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/firefox-proton/notebook-tab-active.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/check-indeterminate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/check-indeterminate.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/mate-panel-background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/mate-panel-background.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/notebook-header-left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/notebook-header-left.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/notebook-header-right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/notebook-header-right.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/notebook-header-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/notebook-header-top.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/notebook-tab-bottom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/notebook-tab-bottom.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/radio-indeterminate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/radio-indeterminate.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/scale-slider-border.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/scale-slider-border.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/scale-slider-vertical.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/scale-slider-vertical.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/scrollbar-button-left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/scrollbar-button-left.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/scrollbar-button-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/scrollbar-button-top.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/separator-horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/separator-horizontal.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/check-checked-disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/check-checked-disabled.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/notebook-header-bottom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/notebook-header-bottom.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/radio-checked-disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/radio-checked-disabled.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/scale-slider-horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/scale-slider-horizontal.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/scrollbar-button-bottom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/scrollbar-button-bottom.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/scrollbar-button-right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/scrollbar-button-right.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/combobox-arrow-separator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/combobox-arrow-separator.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/pan-down-symbolic-fallback.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/pan-down-symbolic-fallback.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/pan-end-symbolic-fallback.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/pan-end-symbolic-fallback.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/pan-up-symbolic-fallback.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/pan-up-symbolic-fallback.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/paned-separator-horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/paned-separator-horizontal.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/paned-separator-vertical.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/paned-separator-vertical.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/check-indeterminate-disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/check-indeterminate-disabled.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/color-scale-slider-vertical.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/color-scale-slider-vertical.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/pan-start-symbolic-fallback.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/pan-start-symbolic-fallback.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/radio-indeterminate-disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/radio-indeterminate-disabled.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/color-scale-slider-horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/color-scale-slider-horizontal.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/scrollbar-button-disabled-left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/scrollbar-button-disabled-left.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/scrollbar-button-disabled-right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/scrollbar-button-disabled-right.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/scrollbar-button-disabled-top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/scrollbar-button-disabled-top.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/pan-up-symbolic-disabled-fallback.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/pan-up-symbolic-disabled-fallback.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/scrollbar-button-disabled-bottom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/scrollbar-button-disabled-bottom.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/pan-down-symbolic-disabled-fallback.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/pan-down-symbolic-disabled-fallback.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/pan-end-symbolic-disabled-fallback.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/pan-end-symbolic-disabled-fallback.png -------------------------------------------------------------------------------- /src/gtk-3.0/assets/pan-start-symbolic-disabled-fallback.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vlastavesely/raleigh-reloaded/HEAD/src/gtk-3.0/assets/pan-start-symbolic-disabled-fallback.png -------------------------------------------------------------------------------- /src/index.theme: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Type=X-GNOME-Metatheme 3 | Name=Raleigh Reloaded 4 | Version=v1.0 5 | Encoding=UTF-8 6 | 7 | [X-GNOME-Metatheme] 8 | GtkTheme=Raleigh-Reloaded 9 | ButtonLayout=:minimize,maximize,close 10 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | SHELL = /bin/sh 2 | PREFIX = /usr 3 | THEMENAME = Raleigh-Reloaded 4 | 5 | .PHONY: install uninstall watch 6 | 7 | install: 8 | mkdir -p $(PREFIX)/share/themes/$(THEMENAME)/ 9 | cp -rf src/* $(PREFIX)/share/themes/$(THEMENAME)/ 10 | 11 | uninstall: 12 | rm -rf $(PREFIX)/share/themes/$(THEMENAME) 13 | 14 | watch: 15 | sh watch 16 | -------------------------------------------------------------------------------- /doc/firefox-proton.txt: -------------------------------------------------------------------------------- 1 | To enable CSS fixes in Firefox with the Proton UI, create a new directory 2 | called ‘chrome’ in your Firefox profile directory and copy the files from 3 | the ‘src/firefox-proton’ into it. 4 | 5 | Once copied, you need to enable the stylesheet in your preferences: 6 | 7 | toolkit.legacyUserProfileCustomizations.stylesheets = true 8 | 9 | After that, Firefox requires restart to reload the styles. 10 | -------------------------------------------------------------------------------- /doc/eclipse.txt: -------------------------------------------------------------------------------- 1 | The Eclipse IDE needs some extra hacks to improve its appearance. As there are 2 | no CSS classes on the UI elements in question, the problem must be solved with 3 | an external stylesheet. To apply the styles, add the following two directives 4 | into your ‘eclipse.ini’: 5 | 6 | -Dorg.eclipse.swt.internal.gtk.noThemingFixes 7 | -Dorg.eclipse.swt.internal.gtk.cssFile=/eclipse.css 8 | 9 | And then create the stylesheet with the following content: 10 | 11 | toolbar { 12 | border: 0; 13 | } 14 | toolbar button { 15 | background: none; 16 | } 17 | toolbar button.flat:hover { 18 | background: #eeebe7; 19 | } 20 | toolbar button.flat:active, 21 | toolbar button.flat:checked { 22 | background: #c4c2bd; 23 | } 24 | scrolledwindow { 25 | border: 0; 26 | } 27 | frame { 28 | border: 0; 29 | } 30 | -------------------------------------------------------------------------------- /src/gtk-2.0/gtkrc: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2017 Vlasta Vesely 3 | # 4 | # This file is part of Raleigh Reloaded GTK theme. 5 | # 6 | # This is free software; you can redistribute it and/or modify 7 | # it under the terms of the GNU General Public License version 2 8 | # as published by the Free Software Foundation. 9 | # 10 | # This program is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | # GNU General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU General Public License 16 | # along with this program. If not, see . 17 | # 18 | 19 | # Raleigh theme is the default theme in GTK 2.0 if no other theme is selected. 20 | -------------------------------------------------------------------------------- /src/gtk-3.0/xfce-applications.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2017 Vlasta Vesely 3 | * 4 | * This file is part of Raleigh Reloaded GTK theme. 5 | * 6 | * This is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License version 2 8 | * as published by the Free Software Foundation. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | /******** 20 | * Panel * 21 | ********/ 22 | .xfce4-panel frame { 23 | border: 0; 24 | padding: 0; 25 | } 26 | -------------------------------------------------------------------------------- /watch: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # This is a helper script for development of the theme. It watches 4 | # changes in the ‘src’ directory and refreshes GTK theme setup when 5 | # any change occurred. 6 | # 7 | # Notes: 8 | # - Works only for MATE Desktop. 9 | # - Requires ‘inotifywait’ (the Debian ‘inotify-tools’ package). 10 | 11 | ORIG_THEME=$(gsettings get org.mate.interface "gtk-theme") 12 | WATCH_NAME=xxx-raleigh-reloaded 13 | 14 | cleanup() 15 | { 16 | echo >&2 "\nInterrupted." 17 | unlink "$HOME/.themes/$WATCH_NAME" 18 | gsettings set org.mate.interface "gtk-theme" "$ORIG_THEME" 19 | exit 0 20 | } 21 | 22 | cat >&2 <&2 "fatal: executable ‘inotifywait’ not found." 32 | exit 1 33 | } 34 | 35 | trap cleanup 2 36 | 37 | while true 38 | do 39 | date +'%H:%M:%S - %d %b %Y - Reloading GTK theme ...' 40 | gsettings set org.mate.interface "gtk-theme" "Adwaita" 41 | gsettings set org.mate.interface "gtk-theme" "$WATCH_NAME" 42 | inotifywait -qr -e modify -e create -e delete src 43 | done 44 | -------------------------------------------------------------------------------- /src/gtk-3.0/gtk.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2017 Vlasta Vesely 3 | * 4 | * This file is part of Raleigh Reloaded GTK theme. 5 | * 6 | * This is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License version 2 8 | * as published by the Free Software Foundation. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | /* Default color scheme */ 20 | 21 | @define-color theme_base_color #ffffff; 22 | 23 | @define-color theme_bg_color #dcdad5; 24 | @define-color theme_fg_color #000000; 25 | 26 | @define-color theme_selected_bg_color #4b6983; 27 | @define-color theme_selected_fg_color #ffffff; 28 | 29 | @define-color theme_tooltip_bg_color #ffffbf; 30 | @define-color theme_tooltip_fg_color #000000; 31 | 32 | @define-color theme_text_color #000000; 33 | 34 | @define-color theme_unfocused_fg_color #555555; 35 | @define-color insensitive_fg_color #555555; 36 | 37 | @define-color link_color #0022ff; 38 | 39 | @define-color theme_info_bg_color #a7c6e1; 40 | @define-color theme_warning_bg_color #fcaf3e; 41 | @define-color theme_error_bg_color #f03838; 42 | 43 | @import url("gtk-widgets.css"); 44 | @import url("mate-applications.css"); 45 | @import url("xfce-applications.css"); 46 | @import url("other-applications.css"); 47 | -------------------------------------------------------------------------------- /src/gtk-3.0/gtk-dark.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2025 Vlasta Vesely 3 | * 4 | * This file is part of Raleigh Reloaded GTK theme. 5 | * 6 | * This is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License version 2 8 | * as published by the Free Software Foundation. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | /* Default color scheme */ 20 | 21 | @define-color theme_base_color #222222; 22 | 23 | @define-color theme_bg_color #444444; 24 | @define-color theme_fg_color #ffffff; 25 | 26 | @define-color theme_selected_bg_color #4b6983; 27 | @define-color theme_selected_fg_color #ffffff; 28 | 29 | @define-color theme_tooltip_bg_color #ffffbf; 30 | @define-color theme_tooltip_fg_color #000000; 31 | 32 | @define-color theme_text_color #000000; 33 | 34 | @define-color theme_unfocused_fg_color #555555; 35 | @define-color insensitive_fg_color #555555; 36 | 37 | @define-color link_color #0022ff; 38 | 39 | @define-color theme_info_bg_color #a7c6e1; 40 | @define-color theme_warning_bg_color #fcaf3e; 41 | @define-color theme_error_bg_color #f03838; 42 | 43 | @import url("gtk-widgets.css"); 44 | @import url("mate-applications.css"); 45 | @import url("xfce-applications.css"); 46 | @import url("other-applications.css"); 47 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Raleigh Reloaded GTK Theme 2 | ========================== 3 | This is a `GTK-3.20` theme aiming to revive the classic `Raleigh` theme. It is a minimal theme written from scratch completely. For that reason, some elements may be unstyled and therefore look ugly. 4 | 5 | This theme has been developed on `Debian` with `Mate Desktop` and tested on most of the default-installed applications and on `gtk3-widget-factory` and the [`A Widget Factory`](https://github.com/valr/awf) as well. On the contrary, this theme was not tested on another desktop environments. If you are interested in extending support to any other desktop environment, do not create a feature request but implement it and send me a pull request to merge. 6 | 7 | 8 | Preview 9 | ------- 10 | [](screenshot.png) 11 | 12 | 13 | Notes on Compatibility 14 | ---------------------- 15 | * The theme does support `GTK-2.0` and `GTK-3.20` but not the older `GTK-3.*` versions. 16 | * The same widgets are rendered in different ways in `GTK-2.0` and `GTK-3.0`. Therefore, it is not possible to tune all the `GTK-3.0` elements to be absolutely the same like corresponding elements from `GTK-2.0`. 17 | * Some programs require additional hacks that cannot be integrated into the main stylesheet. In those cases, the user must use a program-specific stylesheet, if the program supports it. For more information about some known cases, see the [doc](doc) directory. 18 | 19 | 20 | Donations 21 | --------- 22 | If you like this project and it is useful to you, consider sending a donation to the following Bitcoin address: **1LXAkkvKodKB237yayzCTYAsb8tYawGfHz** 23 | 24 | 25 | Licensing Notice 26 | ---------------- 27 | This software is released under the terms of the GPL license version 2 as published by the Free Software Foundation. You can freely redistribute and/or modify the software under the terms of the license. 28 | 29 | This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. 30 | 31 | For more information on details of the license, see the file [LICENSE.md](LICENSE.md). 32 | -------------------------------------------------------------------------------- /src/gtk-3.0/other-applications.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2017 Vlasta Vesely 3 | * 4 | * This file is part of Raleigh Reloaded GTK theme. 5 | * 6 | * This is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License version 2 8 | * as published by the Free Software Foundation. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | /*************** 20 | * Firefox ESR * 21 | ***************/ 22 | scrollbar.vertical .button.top { 23 | background: @theme_bg_color center url("assets/pan-up-symbolic-fallback.png") no-repeat; 24 | color: transparent; 25 | } 26 | scrollbar.vertical .button.bottom { 27 | background: @theme_bg_color center url("assets/pan-down-symbolic-fallback.png") no-repeat; 28 | color: transparent; 29 | } 30 | scrollbar.horizontal .button.left { 31 | background: @theme_bg_color center url("assets/pan-start-symbolic-fallback.png") no-repeat; 32 | color: transparent; 33 | } 34 | scrollbar.horizontal .button.right { 35 | background: @theme_bg_color center url("assets/pan-end-symbolic-fallback.png") no-repeat; 36 | color: transparent; 37 | } 38 | scrollbar.vertical .button.top:disabled { 39 | background-image: url("assets/pan-up-symbolic-disabled-fallback.png"); 40 | } 41 | scrollbar.vertical .button.bottom:disabled { 42 | background-image: url("assets/pan-down-symbolic-disabled-fallback.png"); 43 | } 44 | scrollbar.horizontal .button.left:disabled { 45 | background-image: url("assets/pan-start-symbolic-disabled-fallback.png"); 46 | } 47 | scrollbar.horizontal .button.right:disabled { 48 | background-image: url("assets/pan-end-symbolic-disabled-fallback.png"); 49 | } 50 | menu separator { 51 | padding-top: 1px; 52 | } 53 | 54 | /*********** 55 | * LightDM * 56 | ***********/ 57 | .lightdm-gtk-greeter button { 58 | padding: .7rem; 59 | } 60 | .lightdm-gtk-greeter entry { 61 | padding: .7rem; 62 | } 63 | 64 | /* 2. 0 */ 65 | .lightdm-gtk-greeter #login_window.background, 66 | /* 1.8.5 */ 67 | #login_window.background.lightdm-gtk-greeter, 68 | #login_window.background.lightdm-gtk-greeter box.vertical { 69 | border-image: url("assets/frame-etched-out.png") 2 / 2px stretch; 70 | } 71 | 72 | /* 2.0. */ 73 | .lightdm-gtk-greeter #login_window.background #buttonbox_frame, 74 | /* 1.8.5 */ 75 | #login_window.background.lightdm-gtk-greeter #buttonbox_frame { 76 | padding-top: 1rem; 77 | } 78 | -------------------------------------------------------------------------------- /src/gtk-3.0/mate-applications.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2017 Vlasta Vesely 3 | * 4 | * This file is part of Raleigh Reloaded GTK theme. 5 | * 6 | * This is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License version 2 8 | * as published by the Free Software Foundation. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | /******** 20 | * Caja * 21 | ********/ 22 | .caja-navigation-window toolbar combobox button:not(:hover):not(:checked) { 23 | border-image: url("assets/button.png") 3 / 3px stretch; 24 | } 25 | .caja-navigation-window tab button, 26 | .caja-navigation-window tab button:active:hover { 27 | padding: 0px; 28 | } 29 | .caja-side-pane notebook > stack { 30 | border-image: url("assets/entry.png") 3 / 3px stretch; 31 | padding: 2px; 32 | } 33 | .caja-side-pane treeview { 34 | padding: .2em 0; 35 | } 36 | .caja-navigation-window statusbar border { 37 | border: 0; 38 | } 39 | .caja-navigation-window notebook > stack { 40 | border-image: url("assets/notebook.png") 3 / 3px stretch; 41 | padding: 2px; 42 | } 43 | .caja-navigation-window notebook .view { 44 | background: @theme_base_color; 45 | } 46 | .caja-navigation-window notebook *:selected { 47 | background: @theme_bg_color; 48 | color: @theme_fg_color; 49 | } 50 | .caja-navigation-window notebook *:focus .view:selected { 51 | background-color: @theme_selected_bg_color; 52 | color: @theme_selected_fg_color; 53 | } 54 | .caja-navigation-window notebook .view.rubberband { 55 | background-color: alpha(@theme_selected_bg_color, 0.3); 56 | border: 1px solid @theme_selected_bg_color; 57 | } 58 | .caja-notebook stack > box > frame > border { 59 | background: @theme_info_bg_color; 60 | } 61 | .caja-side-pane notebook scrolledwindow, 62 | .caja-notebook scrolledwindow { 63 | border: 0; 64 | padding: 0; 65 | } 66 | .caja-desktop-window box, 67 | .caja-desktop-window scrolledwindow, 68 | .caja-navigation-window statusbar frame { 69 | border: 0; 70 | } 71 | #caja-extra-view-widget button.flat { 72 | border-image: url("assets/button.png") 3 / 3px stretch; 73 | } 74 | 75 | /********* 76 | * Pluma * 77 | *********/ 78 | .pluma-window notebook header tabs { 79 | min-height: 2.2em; 80 | min-width: 2.2em; 81 | } 82 | .pluma-window statusbar > *:last-child { 83 | padding-right: 5px; 84 | } 85 | 86 | /********* 87 | * Marco * 88 | *********/ 89 | /* this may cause problems in the future, but there are no selectors 90 | * in the alt+tab dialogue... */ 91 | window > frame > box > grid image:selected { 92 | background-color: @theme_selected_bg_color; 93 | color: @theme_selected_fg_color 94 | } 95 | 96 | /************** 97 | * Mate Panel * 98 | **************/ 99 | PanelToplevel > grid { 100 | border-image: url("assets/button.png") 2 / 2px stretch; 101 | padding: 2px; 102 | } 103 | #clock-applet-button { 104 | border: 0; 105 | } 106 | #clock-applet-button label { 107 | padding: 0 .75rem; 108 | } 109 | MatePanelAppletFrameDBus { 110 | background: transparent url("assets/mate-panel-background.png") left bottom; 111 | border: solid 1px white; 112 | border-bottom-color: black; 113 | } 114 | PanelToplevel menubar { 115 | border: 0; 116 | margin: -1px; 117 | } 118 | wnck-tasklist button.flat:not(:hover):not(:checked) { 119 | border-image: url("assets/button.png") 2 / 2px stretch; 120 | } 121 | .mate-panel-menu-bar { 122 | color: @theme_fg_color; 123 | } 124 | 125 | /***************** 126 | * Mate Terminal * 127 | *****************/ 128 | .mate-terminal notebook stack { 129 | padding: 0; 130 | } 131 | .mate-terminal notebook header { 132 | padding-bottom: 2px; 133 | } 134 | 135 | /****************** 136 | * GvcMixerDialog * 137 | ******************/ 138 | GvcMixerDialog border { 139 | padding: 10px; 140 | } 141 | GvcMixerDialog gvc-level-bar * { 142 | background: shade(@theme_bg_color, 0.9); 143 | } 144 | GvcMixerDialog gvc-level-bar *:selected { 145 | background: @theme_selected_bg_color; 146 | } 147 | 148 | /*************** 149 | * Lock Screen * 150 | ***************/ 151 | .lock-dialog notebook > stack { 152 | border: 0; 153 | } 154 | -------------------------------------------------------------------------------- /src/firefox-proton/userChrome.css: -------------------------------------------------------------------------------- 1 | :root { 2 | --toolbar-field-background-color: white !important; 3 | --input-bgcolor: white !important; 4 | --input-color: black !important; 5 | } 6 | :root { 7 | &[lwtheme] { 8 | --tab-selected-bgcolor: #dcdad5 !important; 9 | --tab-selected-textcolor: black !important; 10 | --toolbar-bgcolor: #dcdad5 !important; 11 | --toolbar-color: black !important; 12 | --toolbarbutton-icon-fill: black !important; 13 | --toolbar-field-background-color: #222 !important; 14 | } 15 | } 16 | 17 | .titlebar-buttonbox toolbarbutton:not([disabled]):not([open]):hover { 18 | background: transparent !important; 19 | border-image: none !important; 20 | } 21 | 22 | /******** 23 | * Tabs * 24 | ********/ 25 | #titlebar { 26 | background: #dcdad5 url("notebook-background.png") repeat-x bottom !important; 27 | } 28 | #TabsToolbar { 29 | color: black !important; 30 | } 31 | #TabsToolbar-customization-target > *:not(#tabbrowser-tabs) { 32 | margin-bottom: 1px !important; 33 | } 34 | #tabbrowser-tabs { 35 | border: none !important; 36 | height: 3.2rem; 37 | margin: 0 !important; 38 | padding: 3px 0 0 3px !important; 39 | } 40 | .tabbrowser-tab { 41 | padding-inline: 0 !important; 42 | } 43 | tab .tab-content { 44 | border-image: url("notebook-tab.png") 2 / 2px stretch; 45 | } 46 | tab[selected] .tab-content { 47 | border-image: url("notebook-tab-active.png") 2 / 2px stretch; 48 | } 49 | tab.tabbrowser-tab { 50 | margin-top: 2px !important; 51 | } 52 | tab.tabbrowser-tab[selected] { 53 | margin-top: 0 !important; 54 | } 55 | .tab-background { 56 | background: #c8c5be; 57 | box-shadow: none !important; 58 | margin-block: 0 !important; 59 | } 60 | .tab-context-line { 61 | height: 3px !important; 62 | margin: 0 !important; 63 | } 64 | #nav-bar:not([tabs-hidden="true"]) { 65 | border: 0 !important; 66 | box-shadow: 0 calc(-1 * var(--tabs-navbar-shadow-size)) 0 white !important; 67 | } 68 | .tab-close-button { 69 | margin-inline-end: 0 !important; 70 | width: 16px !important; 71 | height: 16px !important; 72 | padding: 3px !important; 73 | } 74 | .close-icon:hover { 75 | background: #e6e5e1 !important; 76 | fill-opacity: 1 !important; 77 | border-radius: 0 !important; 78 | } 79 | #scrollbutton-up, 80 | #scrollbutton-down { 81 | padding: 0 !important; 82 | } 83 | #alltabs-button > stack { 84 | background: transparent !important; 85 | } 86 | #nav-bar #allTabsMenu-allTabsView toolbarbutton { 87 | border: 0 !important; 88 | padding: .4rem .6rem !important; 89 | } 90 | #allTabsMenu-allTabsViewTabs toolbarbutton { 91 | margin: 0 !important; 92 | } 93 | 94 | /*********** 95 | * Toolbar * 96 | ***********/ 97 | #nav-bar { 98 | padding: 3px !important; 99 | } 100 | #nav-bar toolbarbutton, 101 | #nav-bar toolbaritem { 102 | padding: 0 !important; 103 | } 104 | #nav-bar toolbarbutton:not([disabled]):not([open]):hover, 105 | toolbar toolbarbutton:not([disabled]):not([open]):hover, 106 | findbar toolbarbutton:not([disabled]):not([open]):hover { 107 | background: #e6e5e1 !important; 108 | border-image: url("button-hover.png") 2 / 2px stretch; 109 | } 110 | toolbarbutton:not([disabled])[open] { 111 | background: #c8c5be !important; 112 | border-image: url("button-pressed.png") 2 / 2px stretch; 113 | } 114 | toolbarbutton > .toolbarbutton-icon, 115 | #nav-bar toolbarbutton > .toolbarbutton-badge-stack { 116 | background: transparent !important; 117 | } 118 | 119 | /*********** 120 | * URL Bar * 121 | ***********/ 122 | #urlbar { 123 | top: 0 !important; 124 | } 125 | #urlbar > #urlbar-background, #searchbar { 126 | animation-duration: 0ms !important; 127 | border-image: url("entry.png") 2 / 2px stretch !important; 128 | box-shadow: none !important; 129 | outline: none !important; 130 | } 131 | #urlbar[breakout][breakout-extend] { 132 | left: 0 !important; 133 | width: 100% !important; 134 | } 135 | #urlbar-input-container { 136 | height: calc(var(--urlbar-height)) !important; 137 | padding: 0 !important; 138 | } 139 | #urlbar .urlbar-input-container { 140 | padding: 0 !important; 141 | } 142 | 143 | /************* 144 | * Bookmarks * 145 | *************/ 146 | toolbarseparator::before { 147 | border-image: url("separator-vertical.png") 1 / 1px stretch !important; 148 | border-style: solid; 149 | border-width: 1px; 150 | margin: 3px 0; 151 | width: 0px; 152 | } 153 | 154 | /************ 155 | * Find Bar * 156 | ************/ 157 | .findbar-textbox { 158 | border-image: url("entry.png") 2 / 2px stretch !important; 159 | box-shadow: none !important; 160 | } 161 | .findbar-textbox { 162 | &:focus { 163 | background: white !important; 164 | color: black !important; 165 | } 166 | } 167 | .findbar-textbox[status="notfound"] { 168 | background: #f03838 !important; 169 | color: white !important; 170 | outline: none !important; 171 | } 172 | .findbar-textbox:focus { 173 | outline: none !important; 174 | } 175 | .checkbox-check { 176 | -moz-default-appearance: none !important; /* junk that forces the native checkboxes */ 177 | background: url(check.png) no-repeat center !important; 178 | border: none !important; 179 | height: 15px !important; 180 | width: 15px !important; 181 | } 182 | .checkbox-check[checked=true] { 183 | background: url(check-checked.png) no-repeat center !important; 184 | } 185 | .findbar-find-status[status="notfound"] { 186 | color: #f03838 !important; 187 | opacity: 1 !important; 188 | } 189 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | GNU General Public License 2 | ========================== 3 | 4 | _Version 2, June 1991_ 5 | _Copyright © 1989, 1991 Free Software Foundation, Inc.,_ 6 | _51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA_ 7 | 8 | Everyone is permitted to copy and distribute verbatim copies 9 | of this license document, but changing it is not allowed. 10 | 11 | ### Preamble 12 | 13 | The licenses for most software are designed to take away your 14 | freedom to share and change it. By contrast, the GNU General Public 15 | License is intended to guarantee your freedom to share and change free 16 | software--to make sure the software is free for all its users. This 17 | General Public License applies to most of the Free Software 18 | Foundation's software and to any other program whose authors commit to 19 | using it. (Some other Free Software Foundation software is covered by 20 | the GNU Lesser General Public License instead.) You can apply it to 21 | your programs, too. 22 | 23 | When we speak of free software, we are referring to freedom, not 24 | price. Our General Public Licenses are designed to make sure that you 25 | have the freedom to distribute copies of free software (and charge for 26 | this service if you wish), that you receive source code or can get it 27 | if you want it, that you can change the software or use pieces of it 28 | in new free programs; and that you know you can do these things. 29 | 30 | To protect your rights, we need to make restrictions that forbid 31 | anyone to deny you these rights or to ask you to surrender the rights. 32 | These restrictions translate to certain responsibilities for you if you 33 | distribute copies of the software, or if you modify it. 34 | 35 | For example, if you distribute copies of such a program, whether 36 | gratis or for a fee, you must give the recipients all the rights that 37 | you have. You must make sure that they, too, receive or can get the 38 | source code. And you must show them these terms so they know their 39 | rights. 40 | 41 | We protect your rights with two steps: **(1)** copyright the software, and 42 | **(2)** offer you this license which gives you legal permission to copy, 43 | distribute and/or modify the software. 44 | 45 | Also, for each author's protection and ours, we want to make certain 46 | that everyone understands that there is no warranty for this free 47 | software. If the software is modified by someone else and passed on, we 48 | want its recipients to know that what they have is not the original, so 49 | that any problems introduced by others will not reflect on the original 50 | authors' reputations. 51 | 52 | Finally, any free program is threatened constantly by software 53 | patents. We wish to avoid the danger that redistributors of a free 54 | program will individually obtain patent licenses, in effect making the 55 | program proprietary. To prevent this, we have made it clear that any 56 | patent must be licensed for everyone's free use or not licensed at all. 57 | 58 | The precise terms and conditions for copying, distribution and 59 | modification follow. 60 | 61 | ### TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 62 | 63 | **0.** This License applies to any program or other work which contains 64 | a notice placed by the copyright holder saying it may be distributed 65 | under the terms of this General Public License. The “Program”, below, 66 | refers to any such program or work, and a “work based on the Program” 67 | means either the Program or any derivative work under copyright law: 68 | that is to say, a work containing the Program or a portion of it, 69 | either verbatim or with modifications and/or translated into another 70 | language. (Hereinafter, translation is included without limitation in 71 | the term “modification”.) Each licensee is addressed as “you”. 72 | 73 | Activities other than copying, distribution and modification are not 74 | covered by this License; they are outside its scope. The act of 75 | running the Program is not restricted, and the output from the Program 76 | is covered only if its contents constitute a work based on the 77 | Program (independent of having been made by running the Program). 78 | Whether that is true depends on what the Program does. 79 | 80 | **1.** You may copy and distribute verbatim copies of the Program's 81 | source code as you receive it, in any medium, provided that you 82 | conspicuously and appropriately publish on each copy an appropriate 83 | copyright notice and disclaimer of warranty; keep intact all the 84 | notices that refer to this License and to the absence of any warranty; 85 | and give any other recipients of the Program a copy of this License 86 | along with the Program. 87 | 88 | You may charge a fee for the physical act of transferring a copy, and 89 | you may at your option offer warranty protection in exchange for a fee. 90 | 91 | **2.** You may modify your copy or copies of the Program or any portion 92 | of it, thus forming a work based on the Program, and copy and 93 | distribute such modifications or work under the terms of Section 1 94 | above, provided that you also meet all of these conditions: 95 | 96 | * **a)** You must cause the modified files to carry prominent notices 97 | stating that you changed the files and the date of any change. 98 | * **b)** You must cause any work that you distribute or publish, that in 99 | whole or in part contains or is derived from the Program or any 100 | part thereof, to be licensed as a whole at no charge to all third 101 | parties under the terms of this License. 102 | * **c)** If the modified program normally reads commands interactively 103 | when run, you must cause it, when started running for such 104 | interactive use in the most ordinary way, to print or display an 105 | announcement including an appropriate copyright notice and a 106 | notice that there is no warranty (or else, saying that you provide 107 | a warranty) and that users may redistribute the program under 108 | these conditions, and telling the user how to view a copy of this 109 | License. (Exception: if the Program itself is interactive but 110 | does not normally print such an announcement, your work based on 111 | the Program is not required to print an announcement.) 112 | 113 | These requirements apply to the modified work as a whole. If 114 | identifiable sections of that work are not derived from the Program, 115 | and can be reasonably considered independent and separate works in 116 | themselves, then this License, and its terms, do not apply to those 117 | sections when you distribute them as separate works. But when you 118 | distribute the same sections as part of a whole which is a work based 119 | on the Program, the distribution of the whole must be on the terms of 120 | this License, whose permissions for other licensees extend to the 121 | entire whole, and thus to each and every part regardless of who wrote it. 122 | 123 | Thus, it is not the intent of this section to claim rights or contest 124 | your rights to work written entirely by you; rather, the intent is to 125 | exercise the right to control the distribution of derivative or 126 | collective works based on the Program. 127 | 128 | In addition, mere aggregation of another work not based on the Program 129 | with the Program (or with a work based on the Program) on a volume of 130 | a storage or distribution medium does not bring the other work under 131 | the scope of this License. 132 | 133 | **3.** You may copy and distribute the Program (or a work based on it, 134 | under Section 2) in object code or executable form under the terms of 135 | Sections 1 and 2 above provided that you also do one of the following: 136 | 137 | * **a)** Accompany it with the complete corresponding machine-readable 138 | source code, which must be distributed under the terms of Sections 139 | 1 and 2 above on a medium customarily used for software interchange; or, 140 | * **b)** Accompany it with a written offer, valid for at least three 141 | years, to give any third party, for a charge no more than your 142 | cost of physically performing source distribution, a complete 143 | machine-readable copy of the corresponding source code, to be 144 | distributed under the terms of Sections 1 and 2 above on a medium 145 | customarily used for software interchange; or, 146 | * **c)** Accompany it with the information you received as to the offer 147 | to distribute corresponding source code. (This alternative is 148 | allowed only for noncommercial distribution and only if you 149 | received the program in object code or executable form with such 150 | an offer, in accord with Subsection b above.) 151 | 152 | The source code for a work means the preferred form of the work for 153 | making modifications to it. For an executable work, complete source 154 | code means all the source code for all modules it contains, plus any 155 | associated interface definition files, plus the scripts used to 156 | control compilation and installation of the executable. However, as a 157 | special exception, the source code distributed need not include 158 | anything that is normally distributed (in either source or binary 159 | form) with the major components (compiler, kernel, and so on) of the 160 | operating system on which the executable runs, unless that component 161 | itself accompanies the executable. 162 | 163 | If distribution of executable or object code is made by offering 164 | access to copy from a designated place, then offering equivalent 165 | access to copy the source code from the same place counts as 166 | distribution of the source code, even though third parties are not 167 | compelled to copy the source along with the object code. 168 | 169 | **4.** You may not copy, modify, sublicense, or distribute the Program 170 | except as expressly provided under this License. Any attempt 171 | otherwise to copy, modify, sublicense or distribute the Program is 172 | void, and will automatically terminate your rights under this License. 173 | However, parties who have received copies, or rights, from you under 174 | this License will not have their licenses terminated so long as such 175 | parties remain in full compliance. 176 | 177 | **5.** You are not required to accept this License, since you have not 178 | signed it. However, nothing else grants you permission to modify or 179 | distribute the Program or its derivative works. These actions are 180 | prohibited by law if you do not accept this License. Therefore, by 181 | modifying or distributing the Program (or any work based on the 182 | Program), you indicate your acceptance of this License to do so, and 183 | all its terms and conditions for copying, distributing or modifying 184 | the Program or works based on it. 185 | 186 | **6.** Each time you redistribute the Program (or any work based on the 187 | Program), the recipient automatically receives a license from the 188 | original licensor to copy, distribute or modify the Program subject to 189 | these terms and conditions. You may not impose any further 190 | restrictions on the recipients' exercise of the rights granted herein. 191 | You are not responsible for enforcing compliance by third parties to 192 | this License. 193 | 194 | **7.** If, as a consequence of a court judgment or allegation of patent 195 | infringement or for any other reason (not limited to patent issues), 196 | conditions are imposed on you (whether by court order, agreement or 197 | otherwise) that contradict the conditions of this License, they do not 198 | excuse you from the conditions of this License. If you cannot 199 | distribute so as to satisfy simultaneously your obligations under this 200 | License and any other pertinent obligations, then as a consequence you 201 | may not distribute the Program at all. For example, if a patent 202 | license would not permit royalty-free redistribution of the Program by 203 | all those who receive copies directly or indirectly through you, then 204 | the only way you could satisfy both it and this License would be to 205 | refrain entirely from distribution of the Program. 206 | 207 | If any portion of this section is held invalid or unenforceable under 208 | any particular circumstance, the balance of the section is intended to 209 | apply and the section as a whole is intended to apply in other 210 | circumstances. 211 | 212 | It is not the purpose of this section to induce you to infringe any 213 | patents or other property right claims or to contest validity of any 214 | such claims; this section has the sole purpose of protecting the 215 | integrity of the free software distribution system, which is 216 | implemented by public license practices. Many people have made 217 | generous contributions to the wide range of software distributed 218 | through that system in reliance on consistent application of that 219 | system; it is up to the author/donor to decide if he or she is willing 220 | to distribute software through any other system and a licensee cannot 221 | impose that choice. 222 | 223 | This section is intended to make thoroughly clear what is believed to 224 | be a consequence of the rest of this License. 225 | 226 | **8.** If the distribution and/or use of the Program is restricted in 227 | certain countries either by patents or by copyrighted interfaces, the 228 | original copyright holder who places the Program under this License 229 | may add an explicit geographical distribution limitation excluding 230 | those countries, so that distribution is permitted only in or among 231 | countries not thus excluded. In such case, this License incorporates 232 | the limitation as if written in the body of this License. 233 | 234 | **9.** The Free Software Foundation may publish revised and/or new versions 235 | of the General Public License from time to time. Such new versions will 236 | be similar in spirit to the present version, but may differ in detail to 237 | address new problems or concerns. 238 | 239 | Each version is given a distinguishing version number. If the Program 240 | specifies a version number of this License which applies to it and “any 241 | later version”, you have the option of following the terms and conditions 242 | either of that version or of any later version published by the Free 243 | Software Foundation. If the Program does not specify a version number of 244 | this License, you may choose any version ever published by the Free Software 245 | Foundation. 246 | 247 | **10.** If you wish to incorporate parts of the Program into other free 248 | programs whose distribution conditions are different, write to the author 249 | to ask for permission. For software which is copyrighted by the Free 250 | Software Foundation, write to the Free Software Foundation; we sometimes 251 | make exceptions for this. Our decision will be guided by the two goals 252 | of preserving the free status of all derivatives of our free software and 253 | of promoting the sharing and reuse of software generally. 254 | 255 | ### NO WARRANTY 256 | 257 | **11.** BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY 258 | FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN 259 | OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES 260 | PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED 261 | OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 262 | MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS 263 | TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE 264 | PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, 265 | REPAIR OR CORRECTION. 266 | 267 | **12.** IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 268 | WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR 269 | REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, 270 | INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING 271 | OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED 272 | TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY 273 | YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER 274 | PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE 275 | POSSIBILITY OF SUCH DAMAGES. 276 | 277 | END OF TERMS AND CONDITIONS 278 | 279 | ### How to Apply These Terms to Your New Programs 280 | 281 | If you develop a new program, and you want it to be of the greatest 282 | possible use to the public, the best way to achieve this is to make it 283 | free software which everyone can redistribute and change under these terms. 284 | 285 | To do so, attach the following notices to the program. It is safest 286 | to attach them to the start of each source file to most effectively 287 | convey the exclusion of warranty; and each file should have at least 288 | the “copyright” line and a pointer to where the full notice is found. 289 | 290 | 291 | Copyright (C) 292 | 293 | This program is free software; you can redistribute it and/or modify 294 | it under the terms of the GNU General Public License as published by 295 | the Free Software Foundation; either version 2 of the License, or 296 | (at your option) any later version. 297 | 298 | This program is distributed in the hope that it will be useful, 299 | but WITHOUT ANY WARRANTY; without even the implied warranty of 300 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 301 | GNU General Public License for more details. 302 | 303 | You should have received a copy of the GNU General Public License along 304 | with this program; if not, write to the Free Software Foundation, Inc., 305 | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 306 | 307 | Also add information on how to contact you by electronic and paper mail. 308 | 309 | If the program is interactive, make it output a short notice like this 310 | when it starts in an interactive mode: 311 | 312 | Gnomovision version 69, Copyright (C) year name of author 313 | Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. 314 | This is free software, and you are welcome to redistribute it 315 | under certain conditions; type `show c' for details. 316 | 317 | The hypothetical commands `show w` and `show c` should show the appropriate 318 | parts of the General Public License. Of course, the commands you use may 319 | be called something other than `show w` and `show c`; they could even be 320 | mouse-clicks or menu items--whatever suits your program. 321 | 322 | You should also get your employer (if you work as a programmer) or your 323 | school, if any, to sign a “copyright disclaimer” for the program, if 324 | necessary. Here is a sample; alter the names: 325 | 326 | Yoyodyne, Inc., hereby disclaims all copyright interest in the program 327 | `Gnomovision' (which makes passes at compilers) written by James Hacker. 328 | 329 | , 1 April 1989 330 | Ty Coon, President of Vice 331 | 332 | This General Public License does not permit incorporating your program into 333 | proprietary programs. If your program is a subroutine library, you may 334 | consider it more useful to permit linking proprietary applications with the 335 | library. If this is what you want to do, use the GNU Lesser General 336 | Public License instead of this License. 337 | -------------------------------------------------------------------------------- /src/gtk-3.0/gtk-widgets.css: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2017 Vlasta Vesely 3 | * 4 | * This file is part of Raleigh Reloaded GTK theme. 5 | * 6 | * This is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License version 2 8 | * as published by the Free Software Foundation. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | /*********** 20 | * general * 21 | ***********/ 22 | * { 23 | -gtk-icon-style: regular; /* disable symbolic icons */ 24 | } 25 | .background { 26 | background-color: @theme_bg_color; 27 | color: @theme_fg_color; 28 | } 29 | *:disabled { 30 | color: shade(@theme_bg_color, .6); 31 | text-shadow: 1px 1px @theme_base_color; 32 | -gtk-icon-effect: dim; 33 | } 34 | .flat:not(:hover):not(:checked) { 35 | border: 0; 36 | } 37 | 38 | /************* 39 | * selection * 40 | *************/ 41 | selection, 42 | *:selected, 43 | .view:selected { 44 | background: @theme_bg_color; 45 | color: @theme_fg_color; 46 | } 47 | selection:focus, 48 | *:selected:focus, 49 | .view:selected:focus, 50 | *:focus *:selected { 51 | background-color: @theme_selected_bg_color; 52 | color: @theme_selected_fg_color; 53 | } 54 | .rubberband, 55 | .view.rubberband, 56 | rubberband { 57 | background-color: alpha(@theme_selected_bg_color, 0.3); 58 | border: 1px solid @theme_selected_bg_color; 59 | } 60 | 61 | /*********** 62 | * buttons * 63 | ***********/ 64 | button, .button { 65 | background: @theme_bg_color; 66 | border-image: url("assets/button.png") 3 / 3px stretch; 67 | color: @theme_fg_color; 68 | padding: .35em; 69 | } 70 | button:hover, .button:hover { 71 | background-color: shade(@theme_bg_color, 1.05); 72 | } 73 | button:active, .button:active, 74 | button:active:hover, .button:active:hover, 75 | button.toggle:checked, 76 | button.toggle:active:hover, 77 | stackswitcher button:checked { 78 | background-color: shade(@theme_bg_color, .9); 79 | border-image-source: url("assets/button-pressed.png"); 80 | } 81 | button:focus, .button:focus { 82 | border-image-source: url("assets/button-focus.png"); 83 | } 84 | button:disabled, .button:disabled { 85 | border-image-source: url("assets/button-disabled.png"); 86 | } 87 | button.link { 88 | color: @link_color; 89 | } 90 | button.link > label { 91 | text-decoration-line: underline; 92 | } 93 | button.color * { 94 | border-image: url("assets/frame-etched-out.png") 2 / 2px stretch; 95 | margin: 0 .3em; 96 | min-height: 1.2em; 97 | } 98 | 99 | /************** 100 | * scrollbars * 101 | **************/ 102 | scrollbar button, 103 | scrollbar button:hover, 104 | scrollbar button:active, 105 | scrollbar button:active:hover, 106 | scrollbar button:disabled { 107 | background: @theme_bg_color no-repeat; 108 | color: black; 109 | font-size: .8em; 110 | min-height: .8rem; 111 | min-width: .8rem; 112 | padding: 2px; 113 | } 114 | scrollbar button:disabled { 115 | color: shade(@theme_bg_color, .6); 116 | } 117 | scrollbar slider { 118 | background: @theme_bg_color; 119 | border-image: url("assets/button.png") 2 / 2px stretch; 120 | } 121 | scrollbar slider:hover { 122 | background-color: shade(@theme_bg_color, 1.05); 123 | } 124 | scrollbar.vertical slider { 125 | min-height: .5rem; 126 | min-width: .8rem; 127 | padding: 2px; 128 | } 129 | scrollbar.horizontal slider { 130 | min-height: .8rem; 131 | min-width: .5rem; 132 | padding: 2px; 133 | } 134 | scrollbar.vertical button.up { 135 | -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); 136 | } 137 | scrollbar.vertical button.down { 138 | -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); 139 | } 140 | scrollbar.horizontal button.up { 141 | -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); 142 | } 143 | scrollbar.horizontal button.down { 144 | -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); 145 | } 146 | 147 | /********************* 148 | * checks and radios * 149 | *********************/ 150 | check, radio, .view.cellradio { 151 | margin: .3em .4em .3em .3em; 152 | min-height: 13px; 153 | min-width: 13px; 154 | } 155 | checkbutton:hover, radiobutton:hover { 156 | background-color: shade(@theme_bg_color, 1.05); 157 | } 158 | checkbutton label, radiobutton label { 159 | padding-right: .5em; 160 | } 161 | check { 162 | -gtk-icon-source: url("assets/check.png"); 163 | } 164 | check:checked { 165 | -gtk-icon-source: url("assets/check-checked.png"); 166 | } 167 | check:checked:disabled { 168 | -gtk-icon-source: url("assets/check-checked-disabled.png"); 169 | } 170 | check:disabled { 171 | -gtk-icon-source: url("assets/check-disabled.png"); 172 | } 173 | check:indeterminate { 174 | -gtk-icon-source: url("assets/check-indeterminate.png"); 175 | } 176 | check:indeterminate:disabled { 177 | -gtk-icon-source: url("assets/check-indeterminate-disabled.png"); 178 | } 179 | radio, .view.cellradio { 180 | -gtk-icon-source: url("assets/radio.png"); 181 | } 182 | radio:checked { 183 | -gtk-icon-source: url("assets/radio-checked.png"); 184 | } 185 | radio:disabled { 186 | -gtk-icon-source: url("assets/radio-disabled.png"); 187 | } 188 | radio:checked:disabled { 189 | -gtk-icon-source: url("assets/radio-checked-disabled.png"); 190 | } 191 | radio:indeterminate { 192 | -gtk-icon-source: url("assets/radio-indeterminate.png"); 193 | } 194 | radio:indeterminate:disabled { 195 | -gtk-icon-source: url("assets/radio-indeterminate-disabled.png"); 196 | } 197 | 198 | /**************** 199 | * text entries * 200 | ****************/ 201 | entry { 202 | background: @theme_base_color; 203 | border-image: url("assets/entry.png") 2 / 2px stretch; 204 | padding: .35em; 205 | } 206 | entry:disabled { 207 | background-color: shade(@theme_bg_color, 1.05); 208 | } 209 | 210 | /**************** 211 | * spin buttons * 212 | ****************/ 213 | spinbutton { 214 | background: @theme_bg_color; 215 | border-image: url("assets/entry.png") 2 / 2px stretch; 216 | } 217 | spinbutton * { 218 | background: @theme_base_color; 219 | } 220 | spinbutton button { 221 | background: @theme_bg_color; 222 | } 223 | 224 | /************** 225 | * comboboxes * 226 | **************/ 227 | combobox arrow { 228 | -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); 229 | color: @theme_fg_color; 230 | margin: -2px; 231 | } 232 | combobox button:first-child arrow { 233 | border-image: url("assets/combobox-arrow-separator.png") 2 / 2px stretch; 234 | padding: 3px; 235 | padding-left: 5px; 236 | } 237 | 238 | /********* 239 | * menus * 240 | *********/ 241 | menubar { 242 | border-image: url("assets/button.png") 2 / 2px stretch; 243 | -GtkWidget-window-dragging: true; 244 | padding: 1px; 245 | } 246 | menubar decoration, 247 | .popup decoration { 248 | border: 0; 249 | } 250 | menu { 251 | background: @theme_bg_color; 252 | border: solid 2px; 253 | border-image: url("assets/menu.png") 3 / 3px stretch; 254 | padding: 1px; 255 | } 256 | menubar > menuitem { 257 | margin: 0; 258 | padding: .3em .4em; 259 | } 260 | menubar > menuitem:hover { 261 | background: @theme_selected_bg_color; 262 | color: @theme_selected_fg_color; 263 | } 264 | menuitem { 265 | margin: 1px; 266 | padding: 3px; 267 | } 268 | menuitem:hover { 269 | background-color: @theme_selected_bg_color; 270 | color: @theme_selected_fg_color; 271 | } 272 | menu separator { 273 | border-image: url("assets/separator-horizontal.png") 1 / 1px stretch; 274 | min-height: 1px; 275 | margin: .2em .4em; 276 | } 277 | menuitem > image { 278 | min-height: 1em; 279 | min-width: 1em; 280 | } 281 | menuitem > arrow { 282 | font-size: 1.2em; 283 | margin: -.2em 0 -.2em 1em; 284 | -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); 285 | } 286 | menu arrow.top, 287 | .menu arrow.top { 288 | -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); 289 | } 290 | menu arrow.bottom, 291 | .menu arrow.bottom { 292 | -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); 293 | } 294 | 295 | /************* 296 | * notebooks * 297 | *************/ 298 | notebook { 299 | padding: 0; 300 | } 301 | notebook.frame { 302 | border-image: url("assets/notebook.png") 3 / 3px stretch; 303 | } 304 | notebook header { 305 | background: @theme_bg_color; 306 | } 307 | notebook header.top { 308 | border-image: url("assets/notebook-header-top.png") 2 / 2px stretch; 309 | padding-bottom: 2px; 310 | } 311 | notebook header.bottom { 312 | border-image: url("assets/notebook-header-bottom.png") 2 / 2px stretch; 313 | padding-top: 2px; 314 | } 315 | notebook header.left { 316 | border-image: url("assets/notebook-header-left.png") 2 / 2px stretch; 317 | padding-right: 2px; 318 | } 319 | notebook header.right { 320 | border-image: url("assets/notebook-header-right.png") 2 / 2px stretch; 321 | padding-left: 2px; 322 | } 323 | notebook header.top tabs { 324 | margin-top: 2px; 325 | } 326 | notebook header.bottom tabs { 327 | margin-bottom: 2px; 328 | } 329 | notebook header.left tabs { 330 | margin-left: 2px; 331 | } 332 | notebook header.right tabs { 333 | margin-right: 2px; 334 | } 335 | notebook tab, 336 | notebook.frame > .frame { 337 | background: shade(@theme_bg_color, .9); 338 | padding: .3em .4em; 339 | } 340 | notebook header.top tab, 341 | notebook.frame > .frame.top { 342 | border-image: url("assets/notebook-tab-top.png") 2 / 2px stretch; 343 | } 344 | notebook header.bottom tab, 345 | notebook.frame > .frame.bottom { 346 | border-image: url("assets/notebook-tab-bottom.png") 2 / 2px stretch; 347 | } 348 | notebook header.left tab, 349 | notebook.frame > .frame.left { 350 | border-image: url("assets/notebook-tab-left.png") 2 / 2px stretch; 351 | } 352 | notebook header.right tab, 353 | notebook.frame > .frame.right { 354 | border-image: url("assets/notebook-tab-right.png") 2 / 2px stretch; 355 | } 356 | notebook header tab:checked, 357 | notebook.frame > .frame:active { 358 | background: @theme_bg_color; 359 | } 360 | notebook header.top tab:checked { 361 | margin-bottom: -1px; 362 | margin-top: -2px; 363 | } 364 | notebook header.bottom tab:checked { 365 | margin-bottom: -2px; 366 | margin-top: -2px; 367 | } 368 | notebook header.left tab:checked { 369 | margin-left: -2px; 370 | margin-right: -1px; 371 | } 372 | notebook header.right tab:checked { 373 | margin-left: -2px; 374 | margin-right: -2px; 375 | } 376 | notebook tab button { 377 | background-color: transparent; 378 | border: 0; 379 | } 380 | notebook.frame > .frame { 381 | padding: .15rem; 382 | } 383 | 384 | /********** 385 | * Arrows * 386 | **********/ 387 | arrow { 388 | min-width: 1.2rem; 389 | min-height: 1.2rem; 390 | } 391 | 392 | /************ 393 | * expander * 394 | ************/ 395 | expander arrow { 396 | -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); 397 | } 398 | expander arrow:checked { 399 | -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); 400 | } 401 | 402 | /******************************** 403 | * CSD header and window border * 404 | ********************************/ 405 | headerbar { 406 | background-color: @theme_bg_color; 407 | border-bottom: solid 1px shade(@theme_bg_color, .8); 408 | padding: 7px; 409 | } 410 | decoration { 411 | background-color: @theme_bg_color; 412 | border: solid 3px @theme_bg_color; 413 | border-image: url("assets/button.png") 3 / 3px stretch; 414 | } 415 | 416 | /**************************** 417 | * application notification * 418 | ****************************/ 419 | .app-notification { 420 | background-color: @theme_info_bg_color; 421 | border-image: url("assets/frame-etched-out.png") 3 / 3px stretch; 422 | padding: 7px; 423 | } 424 | .app-notification border { 425 | border: 0; 426 | } 427 | 428 | /************ 429 | * popovers * 430 | ************/ 431 | popover { 432 | border: solid 1px shade(@theme_bg_color, 0.5); 433 | } 434 | popover .flat { 435 | padding: 5px; 436 | } 437 | 438 | /*********** 439 | * toolbar * 440 | ***********/ 441 | toolbar { 442 | background: @theme_bg_color; 443 | border-image: url("assets/button.png") 3 / 3px stretch; 444 | padding: 3px; 445 | } 446 | toolbar separator { 447 | border-image: url("assets/separator-vertical.png") 1 / 1px stretch; 448 | margin: 5px; 449 | padding: 1px; 450 | } 451 | 452 | /************* 453 | * statusbar * 454 | *************/ 455 | statusbar button { 456 | padding: 2px; 457 | } 458 | statusbar button:active:hover, 459 | statusbar button.toggle:checked, 460 | statusbar button.toggle:active:hover { 461 | padding: 3px 1px 1px 3px; 462 | } 463 | statusbar frame, 464 | statusbar > label { 465 | border-image: url("assets/statusbar-frame.png") 2 / 2px stretch; 466 | } 467 | statusbar frame { 468 | padding: 0; 469 | } 470 | statusbar frame > border { 471 | border: 0; 472 | } 473 | statusbar { 474 | margin: 0 -9px; 475 | } 476 | 477 | /************* 478 | * listboxes * 479 | *************/ 480 | list row { 481 | padding: 5px; 482 | } 483 | list row:hover { 484 | background-color: shade(@theme_bg_color, 1.05); 485 | } 486 | 487 | /************** 488 | * separators * 489 | **************/ 490 | separator.horizontal { 491 | border-image: url("assets/separator-horizontal.png") 1 / 1px stretch; 492 | padding: 1px; 493 | } 494 | separator.vertical { 495 | border-image: url("assets/separator-vertical.png") 1 / 1px stretch; 496 | padding: 1px; 497 | } 498 | 499 | /********* 500 | * paned * 501 | *********/ 502 | paned > separator { 503 | background: url("assets/paned-separator-vertical.png") no-repeat center; 504 | -gtk-icon-source: none; 505 | padding: 1px; 506 | } 507 | paned > separator:hover { 508 | background-color: shade(@theme_bg_color, 1.05); 509 | } 510 | paned.vertical > separator { 511 | background-image: url("assets/paned-separator-horizontal.png"); 512 | } 513 | 514 | /********** 515 | * frames * 516 | **********/ 517 | frame > border { 518 | border-image: url("assets/frame-etched-out.png") 2 / 2px stretch; 519 | padding: 2px; 520 | } 521 | frame { /* LibreOffice combobox's dropdown */ 522 | border-image: url("assets/menu.png") 3 / 3px stretch; 523 | padding: 3px; 524 | } 525 | box > frame, 526 | grid > frame { 527 | border: 0; 528 | padding: 0; 529 | } 530 | viewport.frame { 531 | border-image: url("assets/frame-etched-out.png") 3 / 3px stretch; 532 | } 533 | scrolledwindow > viewport, 534 | scrolledwindow > viewport.frame { 535 | border: 0; 536 | } 537 | 538 | /************** 539 | * button box * 540 | **************/ 541 | buttonbox.horizontal button { 542 | margin: .2em .4em; 543 | } 544 | buttonbox.horizontal button:first-child { 545 | margin-left: 0; 546 | } 547 | buttonbox.horizontal button:last-child { 548 | margin-right: 0; 549 | } 550 | progressbar trough, 551 | levelbar trough, 552 | scale trough, 553 | treeview.view.trough, 554 | treeview.view.trough:selected, 555 | scrollbar { 556 | background-color: shade(@theme_bg_color, .9); 557 | border: solid 1px shade(@theme_bg_color, .6); 558 | border-bottom-color: white; 559 | border-right-color: white; 560 | color: @theme_fg_color; 561 | } 562 | 563 | /********* 564 | * scale * 565 | *********/ 566 | scale { 567 | margin: 1px; 568 | } 569 | scale slider { 570 | background: @theme_bg_color no-repeat center; 571 | border-image: url("assets/scale-slider-border.png") 2 / 2px stretch; 572 | } 573 | scale slider:hover { 574 | background-color: shade(@theme_bg_color, 1.05); 575 | } 576 | scale trough:disabled { 577 | background-color: @theme_bg_color; 578 | } 579 | scale.horizontal trough { 580 | padding: 0 1.2em; 581 | } 582 | scale.vertical trough { 583 | padding: 1.2em 0; 584 | } 585 | scale.horizontal slider { 586 | background-image: url("assets/scale-slider-horizontal.png"); 587 | min-height: 1em; 588 | min-width: 2.4em; 589 | } 590 | scale.vertical slider { 591 | background-image: url("assets/scale-slider-vertical.png"); 592 | min-height: 2.4em; 593 | min-width: 1em; 594 | } 595 | scale.horizontal mark indicator { 596 | background-color: shade(@theme_bg_color, 0.56); 597 | min-height: 8px; 598 | min-width: 1px; 599 | } 600 | scale.vertical mark indicator { 601 | background-color: shade(@theme_bg_color, 0.56); 602 | min-height: 1px; 603 | min-width: 8px; 604 | } 605 | 606 | /*************** 607 | * color scale * 608 | ***************/ 609 | scale.color trough { 610 | padding: 0; 611 | } 612 | scale.color slider { 613 | background-color: transparent; 614 | border: 0; 615 | } 616 | scale.color.horizontal slider { 617 | background-image: url("assets/color-scale-slider-horizontal.png"); 618 | min-height: 14px; 619 | min-width: 16px; 620 | } 621 | scale.color.vertical slider { 622 | background-image: url("assets/color-scale-slider-vertical.png"); 623 | min-height: 16px; 624 | min-width: 14px; 625 | } 626 | 627 | /*************** 628 | * progressbar * 629 | ***************/ 630 | progressbar { 631 | font-size: .8em; 632 | } 633 | progressbar trough { 634 | padding: 1px; 635 | } 636 | progressbar progress, 637 | treeview.view.progressbar { 638 | background: @theme_selected_bg_color; 639 | border-image: url("assets/progress.png") 2 / 2px stretch; 640 | color: @theme_selected_fg_color; 641 | } 642 | progressbar.horizontal, 643 | progressbar.horizontal progress, 644 | progressbar.horizontal trough { 645 | min-height: 1.3em; 646 | } 647 | progressbar.vertical, 648 | progressbar.vertical progress, 649 | progressbar.vertical trough { 650 | min-width: 1.3em; 651 | } 652 | treeview.view.trough { 653 | padding: 2px; 654 | } 655 | 656 | /************ 657 | * levelbar * 658 | ************/ 659 | levelbar block { 660 | margin: 1px; 661 | padding: 3px; 662 | } 663 | levelbar block.filled { 664 | background: @theme_selected_bg_color; 665 | border-image: url("assets/progress.png") 2 / 2px stretch; 666 | } 667 | 668 | /********** 669 | * switch * 670 | **********/ 671 | switch { 672 | background-color: shade(@theme_bg_color, .9); 673 | border-image: url("assets/button-pressed.png") 3 / 3px stretch; 674 | min-height: 2em; 675 | } 676 | switch slider { 677 | background-color: @theme_bg_color; 678 | border-image: url("assets/button.png") 3 / 3px stretch; 679 | margin: 2px; 680 | padding: .3em; 681 | } 682 | switch:checked { 683 | background: @theme_selected_bg_color; 684 | color: @theme_selected_fg_color; 685 | } 686 | 687 | /************ 688 | * treeview * 689 | ************/ 690 | .view { 691 | background: @theme_base_color; 692 | } 693 | .sidebar, 694 | scrolledwindow, 695 | scrolledwindow.frame { 696 | border-image: url("assets/frame-etched-out.png") 3 / 3px stretch; 697 | padding: 2px; 698 | } 699 | 700 | /************ 701 | * tooltips * 702 | ************/ 703 | tooltip, 704 | tooltip.background { 705 | background-color: @theme_tooltip_bg_color; 706 | border: solid 1px alpha(@theme_tooltip_fg_color, .3); 707 | color: alpha(@theme_tooltip_fg_color, .8); 708 | } 709 | tooltip *, .tooltip * { 710 | background-color: transparent; 711 | } 712 | tooltip decoration { 713 | border: 0; 714 | } 715 | 716 | /************* 717 | * calendars * 718 | *************/ 719 | calendar { 720 | padding: 2px; 721 | } 722 | calendar.header { 723 | background: @theme_bg_color; 724 | } 725 | calendar.view { 726 | border-image: url("assets/frame-etched-out.png") 2 / 2px stretch; 727 | } 728 | calendar:indeterminate { 729 | color: alpha(@theme_fg_color, 0.4); 730 | } 731 | calendar.highlight { 732 | background-color: @theme_selected_bg_color; 733 | color: @theme_selected_fg_color; 734 | } 735 | 736 | /************ 737 | * infobars * 738 | ************/ 739 | .info { 740 | background-color: @theme_info_bg_color; 741 | } 742 | .warning { 743 | background-color: @theme_warning_bg_color; 744 | } 745 | .error { 746 | background-color: @theme_error_bg_color; 747 | } 748 | .info, .warning, .error { 749 | border-image: url("assets/frame-etched-out.png") 3 / 3px stretch; 750 | } 751 | 752 | /************** 753 | * actionbars * 754 | **************/ 755 | actionbar { 756 | border-top: solid 1px shade(@theme_bg_color, .8); 757 | padding: 7px; 758 | } 759 | 760 | /*********** 761 | * sidebar * 762 | ***********/ 763 | .sidebar { 764 | background: @theme_base_color; 765 | } 766 | .sidebar label { 767 | padding: .3em 1em; 768 | } 769 | .sidebar label.highlight { 770 | font-weight: bold; 771 | } 772 | .sidebar.frame > .frame { 773 | padding: 2px; 774 | } 775 | 776 | /*********************** 777 | * file chooser dialog * 778 | ***********************/ 779 | dialog filechooser placessidebar.sidebar { 780 | background: @theme_bg_color; 781 | } 782 | dialog filechooser placessidebar.sidebar.frame { 783 | padding: 1px; 784 | } 785 | dialog filechooser placessidebar.sidebar.frame .sidebar-row { 786 | padding: .3em 1em; 787 | } 788 | dialog filechooser .frame.sidebar .sidebar-row label { 789 | padding: 0; 790 | padding-left: .8em; 791 | } 792 | dialog filechooser placessidebar button { 793 | background: transparent; 794 | border: 0; 795 | padding: 0; 796 | } 797 | dialog filechooser placessidebar.sidebar viewport { 798 | border: none; 799 | } 800 | dialog filechooser placessidebar *:hover button { 801 | background-color: transparent; 802 | } 803 | dialog filechooser stack { 804 | background: @theme_bg_color; 805 | } 806 | dialog filechooser .path-bar .slider-button, 807 | dialog filechooser .path-bar .slider-button:active { 808 | padding: 5px 0; 809 | } 810 | dialog filechooser .path-bar image { 811 | margin-right: 5px; 812 | } 813 | dialog filechooser .frame.sidebar separator { 814 | border-image: url("assets/separator-horizontal.png") 1 / 1px stretch; 815 | margin: 3px 5px; 816 | padding: 1px; 817 | } 818 | dialog filechooser actionbar { 819 | border: solid 1px shade(@theme_bg_color, .6); 820 | margin-top: 5px; 821 | padding: 7px; 822 | } 823 | dialog filechooser frame { 824 | padding: 0; 825 | } 826 | dialog filechooser frame border { 827 | border: 0; 828 | } 829 | 830 | /***************** 831 | * color chooser * 832 | *****************/ 833 | dialog colorchooser colorswatch { 834 | border-image: url("assets/frame-etched-out.png") 2 / 2px stretch; 835 | padding: 2px; 836 | } 837 | dialog colorchooser colorswatch.dark * { 838 | color: white; 839 | } 840 | dialog colorchooser colorswatch.light * { 841 | color: black; 842 | } 843 | dialog colorchooser #add-color-button { 844 | border-image: url("assets/button.png") 3 / 3px stretch; 845 | } 846 | dialog colorchooser colorswatch:selected * { 847 | background: transparent; 848 | } 849 | colorchooser .popover { 850 | background: @theme_bg_color; 851 | border-image: url("assets/button.png") 3 / 3px stretch; 852 | } 853 | *:disabled colorswatch { 854 | opacity: .4; 855 | } 856 | 857 | /**************** 858 | * print dialog * 859 | ****************/ 860 | printdialog > box > box { 861 | padding: 5px; 862 | } 863 | printdialog box { 864 | background: @theme_bg_color; 865 | } 866 | printdialog notebook stack { 867 | border-image: url("assets/notebook.png") 3 / 3px stretch; 868 | padding: 2px; 869 | } 870 | printdialog paper { 871 | background-color: @theme_base_color; 872 | border: solid 1px shade(@theme_bg_color, .6); 873 | } 874 | 875 | /********************* 876 | * Spinner Animation * 877 | *********************/ 878 | @keyframes spin { 879 | to { -gtk-icon-transform: rotate(1turn); } 880 | } 881 | spinner { 882 | background-color: transparent; 883 | opacity: 0; 884 | } 885 | spinner:checked { 886 | opacity: 1; 887 | animation: spin 1s linear infinite; 888 | } 889 | 890 | /******* 891 | * OSD * 892 | *******/ 893 | .background.osd { 894 | background: rgba(0,0,0,.5); 895 | border-radius: 1rem; 896 | } 897 | .osd .trough { 898 | background: rgba(255,255,255,.5); 899 | border-radius: 6px; 900 | } 901 | .osd .progressbar { 902 | background: white; 903 | border-radius: 6px; 904 | } 905 | --------------------------------------------------------------------------------