From 6eff3bdc1fd4a09c5510cd0d036258ed1f8b32c4 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sun, 6 Jul 2014 01:24:53 +0530 Subject: [PATCH 01/73] SASS port started --- .gitignore | 3 + gtk-3.0/apps/gnome-applications.css | 400 --- gtk-3.0/apps/granite-widgets.css | 670 ----- gtk-3.0/apps/lightdm-gtk-greeter.css | 250 -- gtk-3.0/apps/nemo.css | 76 - gtk-3.0/apps/synaptic.css | 11 - gtk-3.0/apps/unity.css | 79 - gtk-3.0/apps/xfce.css | 38 - gtk-3.0/gtk-dark.css | 85 - gtk-3.0/gtk-widgets-assets.css | 379 --- gtk-3.0/gtk-widgets.css | 3682 -------------------------- gtk-3.0/gtk.css | 85 +- gtk-3.0/scss/_base.scss | 119 + gtk-3.0/scss/_button.scss | 105 + gtk-3.0/scss/_entry.scss | 72 + gtk-3.0/scss/_functions.scss | 64 + gtk-3.0/scss/_global.scss | 43 + gtk-3.0/scss/_menu.scss | 152 ++ gtk-3.0/scss/_toolbar.scss | 120 + gtk-3.0/scss/widgets.scss | 5 + gtk-3.0/settings.ini | 3 - 21 files changed, 684 insertions(+), 5757 deletions(-) delete mode 100644 gtk-3.0/apps/gnome-applications.css delete mode 100644 gtk-3.0/apps/granite-widgets.css delete mode 100644 gtk-3.0/apps/lightdm-gtk-greeter.css delete mode 100644 gtk-3.0/apps/nemo.css delete mode 100644 gtk-3.0/apps/synaptic.css delete mode 100644 gtk-3.0/apps/unity.css delete mode 100644 gtk-3.0/apps/xfce.css delete mode 100644 gtk-3.0/gtk-dark.css delete mode 100644 gtk-3.0/gtk-widgets-assets.css delete mode 100644 gtk-3.0/gtk-widgets.css create mode 100644 gtk-3.0/scss/_base.scss create mode 100644 gtk-3.0/scss/_button.scss create mode 100644 gtk-3.0/scss/_entry.scss create mode 100644 gtk-3.0/scss/_functions.scss create mode 100644 gtk-3.0/scss/_global.scss create mode 100644 gtk-3.0/scss/_menu.scss create mode 100644 gtk-3.0/scss/_toolbar.scss create mode 100644 gtk-3.0/scss/widgets.scss delete mode 100644 gtk-3.0/settings.ini diff --git a/.gitignore b/.gitignore index be9493f..29d5568 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,5 @@ # Ignore Backup Copies from Text Editor *~ +# Ignore SASS files +.sass-cache +gen diff --git a/gtk-3.0/apps/gnome-applications.css b/gtk-3.0/apps/gnome-applications.css deleted file mode 100644 index 9158689..0000000 --- a/gtk-3.0/apps/gnome-applications.css +++ /dev/null @@ -1,400 +0,0 @@ -/*********************** - * fallback mode panel * - ***********************/ -PanelWidget, -PanelApplet, -PanelToplevel { - padding: 0; - background-color: @panel_bg_color; - background-image: none; - color: @panel_fg_color; -} - -PanelApplet { - border-width: 0; -} - -PanelSeparator { - border-width: 0; - background-color: @panel_bg_color; - background-image: none; - color: @panel_fg_color; -} - -.gnome-panel-menu-bar, -PanelApplet > GtkMenuBar.menubar, -PanelApplet > GtkMenuBar.menubar.menuitem, -PanelMenuBar.menubar, -PanelMenuBar.menubar.menuitem { - -PanelMenuBar-icon-visible: true; - - border-width: 0; - background-color: @panel_bg_color; - background-image: none; -} - -PanelAppletFrame { - border-width: 0; - background-color: @panel_bg_color; - background-image: none; -} - -PanelApplet .button { - -GtkButton-inner-border: 2; - - border-width: 0 1px; - border-radius: 0; - border-color: transparent; - background-color: @panel_bg_color; - background-image: none; - color: @panel_fg_color; -} - -PanelApplet .button:active { - border-width: 0 1px; - border-radius: 0; - border-color: mix(@panel_bg_color, @panel_fg_color, 0.21); - background-color: mix(@panel_bg_color, @panel_fg_color, 0.21); - background-image: none; - color: shade(@panel_fg_color, 1.08); -} - -PanelApplet .button:prelight { - border-color: mix(@panel_bg_color, @panel_fg_color, 0.11); - background-color: mix(@panel_bg_color, @panel_fg_color, 0.11); - background-image: none; - color: shade(@panel_fg_color, 1.08); -} - -PanelApplet .button:active:prelight { - border-color: mix(@panel_bg_color, @panel_fg_color, 0.31); - background-color: mix(@panel_bg_color, @panel_fg_color, 0.31); - background-image: none; - color: shade(@panel_fg_color, 1.08); -} - -WnckPager, WnckTasklist { - background-color: @panel_bg_color; -} - -/************ - * nautilus * - ************/ -.nautilus-canvas-item { - border-radius: 2px; -} - -.nautilus-desktop.nautilus-canvas-item { - color: white; - text-shadow: 1px 1px black; -} - -.nautilus-desktop.nautilus-canvas-item:active { - color: @theme_fg_color; -} - -.nautilus-desktop.nautilus-canvas-item:selected { - color: @theme_selected_fg_color; -} - -.nautilus-desktop.nautilus-canvas-item:active, -.nautilus-desktop.nautilus-canvas-item:prelight, -.nautilus-desktop.nautilus-canvas-item:selected { - text-shadow: none; -} - -NautilusWindow .toolbar { - border-width: 0 0 1px; - border-style: solid; - border-color: shade(@toolbar_bg_color, 0.8); -} - -NautilusWindow .sidebar .frame { - border-style: none; -} - -NautilusWindow > GtkGrid > .pane-separator, -NautilusWindow > GtkGrid > .pane-separator:hover { - border-width: 0 1px 0 0; - border-style: solid; - border-color: shade(@theme_bg_color, 0.8); - background-color: @theme_bg_color; -} - -NautilusNotebook.notebook { - border-right-width: 0; - border-left-width: 0; - border-bottom-width: 0; -} - -NautilusNotebook .frame { - border-width: 0; -} - -NautilusQueryEditor .search-bar.toolbar { - border-top-width: 0; - border-bottom-width: 0; -} - -NautilusQueryEditor .toolbar { - padding-top: 3px; - padding-bottom: 2px; - border-width: 1px 0 0 0; - border-style: solid; - border-color: @toolbar_bg_color; - background-color: shade(@toolbar_bg_color, 0.9); -} - -NautilusQueryEditor .toolbar:nth-child(2) { - border-color: shade(@toolbar_bg_color, 0.8); -} - -NautilusQueryEditor .toolbar:last-child, -NautilusQueryEditor .search-bar.toolbar:only-child { - border-bottom-width: 1px; - border-bottom-color: shade(@toolbar_bg_color, 0.8); -} - -/****************** - * gnome terminal * - ******************/ -VteTerminal { - background-color: @osd_base; - color: @osd_fg; -} - -TerminalWindow GtkNotebook.notebook { - border-right-width: 0; - border-bottom-width: 0; - border-left-width: 0; -} - -TerminalWindow .scrollbars-junction, -TerminalWindow .scrollbar.trough { - background-color: @osd_base; -} - -TerminalWindow .scrollbar.button, -TerminalWindow .scrollbar.button:active, -TerminalWindow .scrollbar.button:active:hover { - color: shade(@osd_base, 0.6); -} - -TerminalWindow .scrollbar.slider { - border-color: mix(shade(@osd_base, 0.87), @osd_fg, 0.21); - background-color: mix(@osd_base, @osd_fg, 0.21); -} - -TerminalWindow .scrollbar.slider:hover, -TerminalWindow .scrollbar.slider.vertical:hover { - border-color: mix(shade(@osd_base, 0.87), @osd_fg, 0.31); - background-color: mix(@osd_base, @osd_fg, 0.31); -} - -TerminalWindow .scrollbar.slider:active, -TerminalWindow .scrollbar.slider.vertical:active { - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: @theme_selected_bg_color; -} - -/********* - * gedit * - *********/ -GeditWindow .pane-separator, -GeditWindow .pane-separator:hover { - border-width: 0 1px 1px 1px; - border-style: solid; - border-color: shade(@theme_bg_color, 0.8); - background-color: @theme_bg_color; - color: shade(@theme_bg_color, 0.8); -} - -.gedit-document-panel { - background-color: @theme_bg_color; - color: mix(@theme_fg_color, @theme_bg_color, 0.1); -} - -.gedit-document-panel-group-row, -.gedit-document-panel-group-row:hover { - border-top: 1px solid shade(@theme_bg_color, 0.9); - background-color: @theme_bg_color; -} - -.gedit-document-panel-document-row:hover { - background-color: shade(@theme_bg_color, 1.05); -} - -.gedit-document-panel-document-row:selected, -.gedit-document-panel-document-row:selected:hover { - background-color: @theme_selected_bg_color; - color: @theme_selected_fg_color; -} - -.gedit-document-panel .list-row { - padding: 4px; -} - -.gedit-document-panel .list-row .button { - padding: 1px; - border-image: none; - border-radius: 2px; - border-style: solid; - border-color: transparent; - border-width: 1px; - background-color: transparent; - background-image: none; - color: transparent; - icon-shadow: none; -} - -.gedit-document-panel .prelight-row .button { - border-color: alpha(black, 0.1); - color: alpha(white, 0.8); -} - -.gedit-document-panel .list-row .button:hover, -.gedit-document-panel .prelight-row .button:hover { - border-color: alpha(black, 0.1); - color: white; -} - -.gedit-document-panel .prelight-row .button:active { - border-color: alpha(black, 0.2); - background-color: alpha(black, 0.08); - color: white; -} - -.gedit-document-panel-dragged-row { - border: 1px solid alpha(black, 0.1); - background-color: alpha(black, 0.5); - color: white; -} - -.gedit-document-panel-placeholder-row { - border: none; - background-color: alpha(black, 0.08); - transition: all 200ms ease-in; -} - -GeditStatusbar { - border-top: 1px solid shade(@theme_bg_color, 0.8); -} - -GeditStatusbar GeditSmallButton, -GeditStatusMenuButton { - text-shadow: none; -} - -GeditStatusbar GeditSmallButton.button, -GeditStatusbar GeditSmallButton.button:hover, -GeditStatusbar GeditSmallButton.button:active, -GeditStatusbar GeditSmallButton.button:active:hover, -GeditStatusMenuButton.button, -GeditStatusMenuButton.button:hover, -GeditStatusMenuButton.button:active, -GeditStatusMenuButton.button:active:hover { - border-image: none; - border-style: solid; - border-width: 0 1px; - border-radius: 0; - padding: 1px 6px 2px 4px; -} - -GeditStatusbar GeditSmallButton.button:hover, -GeditStatusbar GeditSmallButton.button:active, -GeditStatusbar GeditSmallButton.button:active:hover, -GeditStatusMenuButton.button:hover, -GeditStatusMenuButton.button:active, -GeditStatusMenuButton.button:active:hover { - border-color: shade(@theme_bg_color, 0.8); -} - -GeditStatusbar GeditSmallButton.button:active, -GeditStatusMenuButton.button:active { - background-color: shade(@theme_bg_color, 0.95); - color: @theme_fg_color; -} - -GeditViewFrame .gedit-search-slider { - padding: 4px; - border-radius: 0 0 2px 2px; - border-width: 0 1px 1px 1px; - border-style: solid; - border-color: shade(@theme_base_color, 0.8); - background-color: @theme_base_color; -} - -GeditViewFrame .gedit-search-slider .not-found { - background-color: @error_bg_color; - background-image: none; - color: @error_fg_color; -} - -GeditViewFrame .gedit-search-slider .not-found:selected { - background-color: @theme_selected_bg_color; - color: @theme_selected_fg_color; -} - -GeditFileBrowserWidget .toolbar { - padding: 2px; - border-top: none; - background-color: @theme_bg_color; - background-image: none; -} - -.gedit-search-entry-occurrences-tag { - margin: 2px; - padding: 2px; - color: mix(@theme_text_color, @theme_base_color, 0.5); -} - -/*************** - * font-viewer * - ***************/ -SushiFontWidget { - padding: 6px 12px; -} - -/************* - * gucharmap * - *************/ -GucharmapChartable { - background-color: @theme_base_color; - color: @theme_text_color; -} - -GucharmapChartable:active, -GucharmapChartable:focus, -GucharmapChartable:selected { - background-color: @theme_selected_bg_color; - color: @theme_selected_fg_color; -} - -/************* - * evolution * - *************/ -EPreviewPane .entry { - background-color: @theme_base_color; - color: @theme_text_color; -} - -/****************** - * gnome calendar * - ******************/ -.calendar-view { - background-color: shade(@theme_base_color, 0.95); - color: @theme_text_color; -} - -/******************* - * gnome-bluetooth * - *******************/ -GtkEntry.entry.pin-entry { - font: regular 50; - padding-left: 25px; - padding-right: 25px; -} - -GtkLabel.pin-label { - font: regular 50; -} diff --git a/gtk-3.0/apps/granite-widgets.css b/gtk-3.0/apps/granite-widgets.css deleted file mode 100644 index 777a30a..0000000 --- a/gtk-3.0/apps/granite-widgets.css +++ /dev/null @@ -1,670 +0,0 @@ -/******************** - * dynamic notebook * - ********************/ -.dynamic-notebook { - background-color: shade(@theme_bg_color, 1.08); - background-image: none; -} - -.dynamic-notebook GtkLabel, -.dynamic-notebook GtkImage { - color: alpha(@theme_fg_color, 0.5); -} - -.dynamic-notebook .notebook { - -GtkNotebook-tab-overlap: 3px; - -GtkNotebook-initial-gap: 12px; - - border-width: 1px 0 0 0; - border-color: shade(@theme_bg_color, 0.8); - border-radius: 0; - padding: 0; -} - -.dynamic-notebook .notebook tab { - padding: 3px; - border-width: 0 1px; - border-color: shade(@theme_bg_color, 0.85); - border-radius: 0; - background-color: shade(@theme_bg_color, 0.9); - background-image: none; - color: @theme_fg_color; -} - -.dynamic-notebook .notebook tab:nth-child(first) { -} - -.dynamic-notebook .notebook tab:active { - border-color: shade(@theme_bg_color, 0.8); - background-color: shade(@theme_base_color, 0.85); - background-image: none; - color: @theme_fg_color; - box-shadow:inset 0 -2px @theme_selected_bg_color; -} - -.dynamic-notebook .notebook tab .entry { - border-radius: 2px; - padding: 4px 3px; -} - -.dynamic-notebook .button:hover, -.dynamic-notebook .button:hover:active, -.dynamic-notebook .notebook .button, -.dynamic-notebook .notebook .button:hover, -.dynamic-notebook .notebook .button:hover:active { - border-color: shade(@theme_bg_color, 0.7); - background-color: shade(@theme_bg_color, 1.10); - background-image: none; -} - -.dynamic-notebook .button:hover:active, -.dynamic-notebook .notebook .button:hover:active { - border-color: shade(@theme_bg_color, 0.7); - color: shade(@theme_fg_color, 0.7); -} - -.dynamic-notebook .menu GtkLabel { - color: @menu_fg; -} - -/**************** - * content view * - ****************/ -.content-view-window { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_base_color, 0.8); - border-radius: 2px; - background-color:@theme_base_color; - background-image: none; - color: @theme_text_color; -} - -.content-view, -.content-view GtkViewport { - background-color: @theme_base_color; - background-image: none; -} - -.content-view * { - background-color: transparent; - background-image: none; -} - -.content-view .entry { - background-color: @theme_base_color; - background-image: none; - color: @theme_text_color; -} - -.content-view .button { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_base_color, 0.8); - border-radius: 2px; - background-color: shade(@theme_base_color, 1.08); - background-image: none; - color: @theme_text_color; -} - -.content-view .button:hover { - border-color: shade(@theme_base_color, 0.7); - background-color: shade(@theme_base_color, 1.10); - background-image: none; -} - -.content-view .button:active { - border-color: shade(@theme_base_color, 0.8); - background-color: shade(@theme_base_color, 0.95); - background-image: none; -} - -.content-view .button:active:hover { - border-color: shade(@theme_base_color, 0.7); - color: shade(@theme_text_color, 0.7); -} - -.content-view .button:insensitive { - background-color: shade(@theme_base_color, 0.9); - background-image: none; -} - -.content-view .help_button * { - color: @theme_text_color; -} - -.content-view .toolbar { - -GtkWidget-window-dragging: true; - - padding: 1px; - border-width: 0 0 1px 0; - border-style: solid; - border-color: shade(@theme_base_color, 0.8); - background-color: @theme_base_color; - background-image: none; -} - -.content-view .menu { - padding: 0; - border-radius: 0; - border-style: none; - background-color: @menu_bg_color; - background-image: none; - color: @menu_fg_color; -} - -/************** - * sourcelist * - **************/ -.source-list, -.source-list.view { - border-radius: 0; - background-color: @theme_bg_color; - background-image: none; - color: mix(@theme_fg_color, @theme_bg_color, 0.1); -} - -.source-list { - -GtkTreeView-horizontal-separator: 1; - -GtkTreeView-vertical-separator: 1; -} - -.source-list.view:selected, -.source-list.view:prelight:selected { - background-color: @theme_selected_bg_color; - background-image: none; - color: @theme_selected_fg_color; -} - -.source-list.view:prelight { - background-color: shade(@theme_bg_color, 1.08); - background-image: none; -} - -.source-list.badge, -.source-list.badge:prelight, -.source-list.badge:selected, -.source-list.badge:prelight:selected { - margin: 0 3px; - padding: 0 6px; - border-width: 0; - border-radius: 10px; - background-color: @theme_selected_bg_color; - background-image: none; - color: @theme_selected_fg_color; -} - -/****************** - * no undo button * - ******************/ -.button.noundo, -.content-view .button.noundo { - border-color: shade(@error_bg_color, 0.8); - background-color: shade(@error_bg_color, 1.08); - background-image: none; - color: @error_fg_color; -} - -.button.noundo:hover, -.content-view .button.noundo:hover { - border-color: shade(@error_bg_color, 0.7); - background-color: @error_bg_color; - background-image: none; -} - -.button.noundo:active, -.content-view .button.noundo:active { - border-color: shade(@error_bg_color, 0.8); - background-color: shade(@error_bg_color, 0.95); - background-image: none; -} - -.button.noundo:active:hover, -.content-view .button.noundo:active:hover { - border-color: shade(@error_bg_color, 0.7); - background-color: shade(@error_bg_color, 0.97); - background-image: none; -} - -.button.noundo GtkLabel, -.button.noundo Gtklabel:prelight { - color: @error_fg_color; -} - -/********************** - * affirmative button * - **********************/ -.button.affirmative, -.content-view .button.affirmative { - border-color: shade(@theme_selected_bg_color, 0.8); - background-color: shade(@theme_selected_bg_color, 1.08); - background-image: none; - color: @theme_selected_fg_color; -} - -.button.affirmative:hover, -.content-view .button.affirmative:hover { - border-color: shade(@theme_selected_bg_color, 0.7); - background-color: @theme_selected_bg_color; - background-image: none; -} - -.button.affirmative:active, -.content-view .button.affirmative:active { - border-color: shade(@theme_selected_bg_color, 0.8); - background-color: shade(@theme_selected_bg_color, 0.95); - background-image: none; -} - -.button.affirmative:active:hover, -.content-view .button.affirmative:active:hover { - border-color: shade(@theme_selected_bg_color, 0.7); - background-color: shade(@theme_selected_bg_color, 0.97); - background-image: none; -} - -.button.affirmative GtkLabel, -.button.affirmative Gtklabel:prelight { - color: @theme_selected_fg_color; -} - -/********************** - * secondary toolbars * - **********************/ -.secondary-toolbar.toolbar { - padding: 2px; - border-color: shade(@toolbar_bg_color, 0.8); - background-color: @toolbar_bg_color; - background-image: none; -} - -.secondary-toolbar.toolbar .button { - border-color: shade(@toolbar_bg_color, 0.8); - background-color: shade(@toolbar_bg_color, 1.08); - background-image: none; - color: @toolbar_fg_color; -} - -.secondary-toolbar.toolbar .button:hover { - border-color: shade(@toolbar_bg_color, 0.7); - background-color: shade(@toolbar_bg_color, 1.10); - background-image: none; -} - -.secondary-toolbar.toolbar .button:active { - border-color: shade(@toolbar_bg_color, 0.8); - background-color: shade(@toolbar_bg_color, 0.95); - background-image: none; -} - -.secondary-toolbar.toolbar .button:active:hover { - border-color: shade(@toolbar_bg_color, 0.7); -} - -.secondary-toolbar.toolbar .button:focus, -.secondary-toolbar.toolbar .button:hover:focus, -.secondary-toolbar.toolbar .button:active:focus, -.secondary-toolbar.toolbar .button:active:hover:focus { - border-color: shade(@toolbar_bg_color, 0.7); -} - -.secondary-toolbar.toolbar .button:insensitive { - border-color: shade(@toolbar_bg_color, 0.85); - background-color: shade(@toolbar_bg_color, 0.9); - background-image: none; -} - -.secondary-toolbar.toolbar .button:active *:insensitive { - border-color: shade(@toolbar_bg_color, 0.75); - background-color: shade(@toolbar_bg_color, 0.80); - background-image: none; -} - -/******************* - * bottom toolbars * - *******************/ -.bottom-toolbar.toolbar { - padding: 6px; - border-width: 1px 0 0 0; - border-color: shade(@theme_bg_color, 0.8); - background-color: @theme_bg_color; - background-image: none; -} - -.bottom-toolbar.toolbar .button { - border-color: shade(@theme_bg_color, 0.8); - background-color: shade(@theme_bg_color, 1.08); - background-image: none; - color: @theme_fg_color; -} - -.bottom-toolbar.toolbar .button:hover { - border-color: shade(@theme_bg_color, 0.7); - background-color: shade(@theme_bg_color, 1.10); - background-image: none; -} - -.bottom-toolbar.toolbar .button:active { - border-color: shade(@theme_bg_color, 0.8); - background-color: shade(@theme_bg_color, 0.95); - background-image: none; -} - -.bottom-toolbar.toolbar .button:active:hover { - border-color: shade(@theme_bg_color, 0.7); -} - -.bottom-toolbar.toolbar .button:focus, -.bottom-toolbar.toolbar .button:hover:focus, -.bottom-toolbar.toolbar .button:active:focus, -.bottom-toolbar.toolbar .button:active:hover:focus { - border-color: shade(@theme_bg_color, 0.7); -} - -.bottom-toolbar.toolbar .button:insensitive { - border-color: shade(@theme_bg_color, 0.85); - background-color: shade(@theme_bg_color, 0.9); - background-image: none; -} - -.bottom-toolbar.toolbar .button:active *:insensitive { - border-color: shade(@theme_bg_color, 0.75); - background-color: shade(@theme_bg_color, 0.80); - background-image: none; -} - -/************* - * statusbar * - *************/ -GraniteWidgetsStatusBar { - padding: 1px; - background-color: @theme_bg_color; - background-image: none; - box-shadow: inset 0 1px shade(@theme_bg_color, 0.8); -} - -/*********** - * popover * - ***********/ -GraniteWidgetsPopOver { - -GraniteWidgetsPopOver-arrow-width: 21; - -GraniteWidgetsPopOver-arrow-height: 12; - -GraniteWidgetsPopOver-border-radius: 2px; - -GraniteWidgetsPopOver-border-width: 1; - -GraniteWidgetsPopOver-shadow-size: 12; - - margin: 0; - border-style: solid; - border-color: shade(@menu_bg_color, 0.8); - color: @menu_fg_color; -} - -.popover_bg { - background-color: transparent; - background-image: linear-gradient(to bottom, - @menu_bg_color, - @menu_bg_color - ); -} - -GraniteWidgetsPopOver .sidebar.view, -GraniteWidgetsPopOver * { - background-color: transparent; - background-image: none; - color: @menu_fg_color; -} - -GraniteWidgetsPopOver .sidebar.view:selected, -GraniteWidgetsPopOver .sidebar.view:selected:focus, -GraniteWidgetsPopOver *:selected, -GraniteWidgetsPopOver *:selected:focus { - background-color: @theme_selected_bg_color; - background-image: none; - color: @theme_selected_fg_color; -} - -GraniteWidgetsPopOver .button { - border-color: shade(@menu_bg_color, 0.8); - background-color: shade(@menu_bg_color, 1.08); - background-image: none; - color: @menu_fg_color; - -} - -GraniteWidgetsPopOver .button:hover { - border-color: shade(@menu_bg_color, 0.7); - background-color: shade(@menu_bg_color, 1.10); - background-image: none; - color: shade(@menu_fg_color, 0.7); -} - -GraniteWidgetsPopOver .button:active { - border-color: shade(@menu_bg_color, 0.8); - background-color: shade(@menu_bg_color, 0.95); - background-image: none; -} - -GraniteWidgetsPopOver .button:active:hover { - border-color: shade(@menu_bg_color, 0.7); - color: shade(@menu_fg_color, 0.7); -} - -/* linked buttons */ -GraniteWidgetsPopOver .linked .button { - box-shadow: inset -1px 0 shade(@menu_bg_color, 0.9); -} - -GraniteWidgetsPopOver .linked .button:active { - box-shadow: inset -1px 0 shade(@menu_bg_color, 0.9), - inset 1px 0 alpha(@dark_shadow, 0.07), - inset 0 1px alpha(@dark_shadow, 0.08), - inset 0 -1px alpha(@dark_shadow, 0.05); -} - -GraniteWidgetsPopOver .linked .button:insensitive { - box-shadow: inset -1px 0 shade(@menu_bg_color, 0.9); -} - -/* remove box shadow from last-child and only-child */ -GraniteWidgetsPopOver .linked .button:last-child, -GraniteWidgetsPopOver .linked .button:only-child, -GraniteWidgetsPopOver .linked .button:insensitive:last-child, -GraniteWidgetsPopOver .linked .button:insensitive:only-child, -GraniteWidgetsPopOver .linked .button:active *:insensitive:last-child, -GraniteWidgetsPopOver .linked .button:active *:insensitive:only-child { - box-shadow: none; -} - -/* add back the inset shadow effect */ -GraniteWidgetsPopOver .linked .button:active:last-child, -GraniteWidgetsPopOver .linked .button:active:only-child { - box-shadow: inset 1px 0 alpha(@dark_shadow, 0.07), - inset 0 1px alpha(@dark_shadow, 0.08), - inset -1px 0 alpha(@dark_shadow, 0.07); -} - -GraniteWidgetsPopOver .entry { - border-color: shade(@menu_bg_color, 0.7); - background-color: @menu_bg_color; - background-image: none; - color: @menu_fg_color; -} - -GraniteWidgetsPopOver .entry:active, -GraniteWidgetsPopOver .entry:focus { - border-color: shade(@menu_bg_color, 0.7); -} - -GraniteWidgetsPopOver *.separator { - border-color: shade(@menu_bg_color, 0.9); - color: transparent; -} - -.button.app { - border-width: 0; - border-radius: 2px; - background-color: transparent; - background-image: none; -} - -.button.app:hover { - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: @theme_selected_bg_color; - background-image: none; - color: @theme_selected_fg_color; -} - -.button.app:focus { - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: @theme_selected_bg_color; - background-image: none; - color: @theme_selected_fg_color; -} - -/******** - * gala * - ********/ -.gala-workspaces-background { - border-width: 1px 0 0 0; - border-color: shade(@panel_bg_color, 0.8); - background-color: @panel_bg_color; - background-image: none; -} - -.gala-workspace-selected { - border-width: 1px; - border-radius: 2px; - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: @theme_selected_bg_color; - background-image: none; -} - -/********* - * files * - *********/ -.files-overlay-bar { - margin: 3px; - padding: 3px 6px; - border-width: 1px; - border-color: shade(@theme_base_color, 0.7); - border-radius: 2px; - background-color: @theme_base_color; - background-image: none; -} - -.files-overlay-bar GtkLabel { - color: @theme_text_color; -} - -/********* - * noise * - *********/ -.album-list-view, -.album-list-view * { - border-color: shade(@theme_base_color, 0.7); - border-radius: 0; - background-color: @theme_base_color; - background-image: none; - color: @theme_text_color; -} - -.album-list-view GtkTreeView { - -GtkTreeView-vertical-separator: 1; - -GtkTreeView-grid-line-width: 0; - - background-color: @theme_base_color; - background-image: none; - color: @theme_text_color; -} - -.album-list-view GtkTreeView row:nth-child(even) { - border-width: 0; - border-style: none; - background-color: shade(@theme_base_color, 0.97); - background-image: none; -} - - -.album-list-view GtkTreeView row:nth-child(odd) { - border-width: 0; - border-style: none; - background-color: shade(@theme_base_color, 1.0); - background-image: none; -} - -.album-list-view GtkTreeView row:selected { - background-color: @selected_bg_color; - background-image: none; - color: @selected_fg_color; -} - -/********** - * birdie * - **********/ -BirdieWidgetsTweetList * { - background-color: transparent; - background-image: none; -} - -/********* - * tweet * - *********/ -.tweet { - padding: 0; -} - -/********** - * notify * - **********/ -.notify { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_base_color, 0.7); - border-radius: 2px; - background-color: @theme_base_color; - background-image: none; - color: @theme_text_color; -} - -.notify .low { -} - -.notify .critical { -} - -/********* - * panel * - *********/ -.panel { - background-color: @panel_bg_color; - background-image: none; - color: @panel_fg_color; - font: bold; -} - -.panel .menubar .menuitem { - padding: 1px 3px; -} - -.shadow { - background-color: transparent; - background-image: linear-gradient(to bottom, - rgba(0, 0, 0, 0.3), - transparent - ); -} - -.composited-indicator, -.wingpanel-app-button, -.wingpanel-indicator-button { - padding: 0 2px; - background-color: transparent; - background-image: none; - color: @osd_fg; -} - -.composited-indicator.menuitem:active, -.composited-indicator.menuitem:prelight { - border-style: none; - background-image: none; -} diff --git a/gtk-3.0/apps/lightdm-gtk-greeter.css b/gtk-3.0/apps/lightdm-gtk-greeter.css deleted file mode 100644 index 874cdb3..0000000 --- a/gtk-3.0/apps/lightdm-gtk-greeter.css +++ /dev/null @@ -1,250 +0,0 @@ -/********* - * panel * - *********/ -#panel_window { - background-color: transparent; - background-image: none; - color: white; - font: bold; - text-shadow: 0 1px alpha(black, 0.5); - icon-shadow: 0 1px alpha(black, 0.5); -} - -#panel_window .menubar, -#panel_window .menubar > .menuitem { - background-color: transparent; - background-image: none; - color: white; - font: bold; - text-shadow: 0 1px alpha(black, 0.5); - icon-shadow: 0 1px alpha(black, 0.5); -} - -#panel_window .menubar > .menuitem:hover { - border-style: none; - background-color: alpha(white, 0.2); - background-image: none; - color: white; -} - -#panel_window .menubar > .menuitem *:hover { - color: white; -} - -#panel_window .menubar > .menuitem:insensitive { - color: alpha(white, 0.7); -} - -#panel_window .menubar .menu { - border-radius: 1px; -} - -#panel_window .menubar .menu .menuitem { - font: normal; - text-shadow: none; -} - -/**************** - * login window * - ****************/ -#login_window, -#shutdown_dialog, -#restart_dialog { - border-style: none; - border-radius: 2px; - background-color: @lightdm_bg_color; - color: @lightdm_fg_color; - - /* draw border using box-shadow */ - box-shadow: inset 1px 0 mix(shade(@lightdm_bg_color, 0.7), @lightdm_fg_color, 0.21), - inset -1px 0 mix(shade(@lightdm_bg_color, 0.7), @lightdm_fg_color, 0.21), - inset 0 1px mix(shade(@lightdm_bg_color, 0.7), @lightdm_fg_color, 0.21), - inset 0 -1px mix(shade(@lightdm_bg_color, 0.7), @lightdm_fg_color, 0.21); -} - -#content_frame { - padding-bottom: 14px; -} - -#login_window .menu { - border-radius: 1px; -} - -#login_window GtkComboBox .button, -#login_window GtkComboBox .button:hover, -#login_window GtkComboBox .button:active, -#login_window GtkComboBox .button:active:hover, -#login_window GtkComboBox .button:focus, -#login_window GtkComboBox .button:hover:focus, -#login_window GtkComboBox .button:active:focus, -#login_window GtkComboBox .button:active:hover:focus { - padding: 0; - background: none; - border-style: none; - box-shadow: none; -} - -#login_window GtkComboBox .button:focus, -#login_window GtkComboBox .button:hover:focus, -#login_window GtkComboBox .button:active:focus, -#login_window GtkComboBox .button:active:hover:focus { - background: none; - border-style: none; -} - -#login_window #user_combobox { - color: @lightdm_fg_color; - font: 18px; -} - -#login_window #user_combobox .menu { - font: normal; -} - -#login_window #user_combobox .arrow { - color: mix(@lightdm_fg_color, @lightdm_bg_color, 0.5); -} - -#login_window .entry { - padding: 3px 5px; - border-width: 1px; - border-style: solid; - border-color: shade(@lightdm_bg_color, 0.8); - border-radius: 2px; - background-color: shade(@lightdm_bg_color, 0.9); - background-image: none; - color: @lightdm_fg_color; - - box-shadow: none; - transition: all 150ms ease-out; -} - -#login_window .entry:focus, -#login_window .entry:hover { - border-color: shade(@lightdm_bg_color, 0.7); - - box-shadow: inset 1px 0 alpha(@dark_shadow, 0.10), - inset 0 1px alpha(@dark_shadow, 0.12), - inset -1px 0 alpha(@dark_shadow, 0.10), - inset 0 -1px alpha(@dark_shadow, 0.05); -} - -#login_window .button, -#shutdown_dialog .button, -#restart_dialog .button { - padding: 3px 15px; - border-width: 1px; - border-radius: 2px; - border-style: solid; - border-color: shade(@lightdm_bg_color, 0.8); - background-color: shade(@lightdm_bg_color, 1.08); - background-image: none; - color: @lightdm_fg_color; - - transition: all 150ms ease-out; -} - -#user_image { - padding: 3px; - border-radius: 2px; - - /* draw border using box-shadow */ - box-shadow: inset 1px 0 shade(@lightdm_bg_color, 0.7), - inset -1px 0 shade(@lightdm_bg_color, 0.7), - inset 0 1px shade(@lightdm_bg_color, 0.7), - inset 0 -1px shade(@lightdm_bg_color, 0.7); -} - -#user_image_border { - border-radius: 2px; - background-color: shade(@lightdm_bg_color, 0.9); - background-image: none; - - box-shadow: inset 1px 0 alpha(@dark_shadow, 0.07), - inset 0 1px alpha(@dark_shadow, 0.08), - inset -1px 0 alpha(@dark_shadow, 0.07), - inset 0 -1px alpha(@dark_shadow, 0.05); -} - -#buttonbox_frame { - padding-top: 10px; - padding-bottom: 0; - border-style: none; - border-bottom-left-radius: 2px; - border-bottom-right-radius: 2px; - background-color: transparent; - background-image: none; - box-shadow: none; -} - -/****************************** - * default and focused button * - ******************************/ -#login_window .button.default, -#shutdown_dialog .button.default, -#restart_dialog .button.default, -#login_window .button:focus, -#login_window .button:active:focus, -#shutdown_dialog .button:focus, -#shutdown_dialog .button:active:focus, -#restart_dialog .button:focus, -#restart_dialog .button:active:focus { - border-color: shade(@theme_selected_bg_color, 0.8); - background-color: shade(@theme_selected_bg_color, 1.08); - background-image: none; - color: @theme_selected_fg_color; -} - -#login_window .button.default:hover, -#shutdown_dialog .button.default:hover, -#restart_dialog .button.default:hover, -#login_window .button:hover:focus, -#login_window .button:active:hover:focus, -#shutdown_dialog .button:hover:focus, -#shutdown_dialog .button:active:hover:focus, -#restart_dialog .button:hover:focus, -#restart_dialog .button:active:hover:focus { - border-color: shade(@theme_selected_bg_color, 0.7); - background-color: @theme_selected_bg_color; -} - -/******************* - * shutdown button * - *******************/ -#shutdown_button.button { - border-color: shade(@error_bg_color, 0.8); - background-color: shade(@error_bg_color, 1.08); - background-image: none; - color: @error_fg_color; -} - -#shutdown_button.button:hover, -#shutdown_button.button:active, -#shutdown_button.button:active:hover { - border-color: shade(@error_bg_color, 0.7); - background-color: @error_bg_color; -} - -/****************** - * restart button * - ******************/ -#restart_button.button { - border-color: shade(@warning_bg_color, 0.8); - background-color: shade(@warning_bg_color, 1.08); - background-image: none; - color: @warning_fg_color; -} - -#restart_button.button:hover, -#restart_button.button:active, -#restart_button.button:active:hover { - border-color: shade(@warning_bg_color, 0.7); - background-color: @warning_bg_color; -} - -/******************** - * password warning * - ********************/ -#greeter_infobar { - font: bold; -} diff --git a/gtk-3.0/apps/nemo.css b/gtk-3.0/apps/nemo.css deleted file mode 100644 index fa09d03..0000000 --- a/gtk-3.0/apps/nemo.css +++ /dev/null @@ -1,76 +0,0 @@ -/***************** - * desktop icons * - *****************/ -.nemo-canvas-item { - border-radius: 2px; -} - -.nemo-desktop.nemo-canvas-item { - color: white; - text-shadow: 1px 1px black; -} - -.nemo-desktop.nemo-canvas-item:active { - color: @theme_fg_color; -} - -.nemo-desktop.nemo-canvas-item:selected { - color: @theme_selected_fg_color; -} - -.nemo-desktop.nemo-canvas-item:active, -.nemo-desktop.nemo-canvas-item:prelight, -.nemo-desktop.nemo-canvas-item:selected { - text-shadow: none; -} - -/*********************** - * pathbar breadcrumbs * - ***********************/ -NemoPathbarButton { - border-color: shade(@toolbar_bg_color, 0.8); - background-color: shade(@toolbar_bg_color, 1.08); - background-image: none; - color: @toolbar_fg_color; - - -NemoPathbarButton-border-radius: 2px; -} - -NemoPathbarButton:active { - border-color: shade(@toolbar_bg_color, 0.8); - background-color: shade(@toolbar_bg_color, 0.95); - background-image: none; -} - -NemoPathbarButton:hover { - border-color: shade(@toolbar_bg_color, 0.7); - background-color: shade(@toolbar_bg_color, 1.10); - background-image: none; -} - -NemoPathbarButton:active:hover { - border-color: shade(@toolbar_bg_color, 0.7); -} - -/********************************* - * sidebar disk space indicators * - *********************************/ -NemoPlacesTreeView { - -NemoPlacesTreeView-disk-full-bg-color: shade(@toolbar_bg_color, 0.8); - -NemoPlacesTreeView-disk-full-fg-color: @theme_selected_bg_color; - -NemoPlacesTreeView-disk-full-bar-width: 1px; - -NemoPlacesTreeView-disk-full-bar-radius: 1px; - -NemoPlacesTreeView-disk-full-bottom-padding: 2px; - -NemoPlacesTreeView-disk-full-max-length: 70px; -} - -NemoPlacesTreeView:selected { - -NemoPlacesTreeView-disk-full-bg-color: @theme_selected_fg_color; - -NemoPlacesTreeView-disk-full-fg-color: shade(@theme_selected_bg_color, 1.4); -} - -NemoPlacesTreeView:hover { -} - -NemoPlacesTreeView:selected:hover { -} diff --git a/gtk-3.0/apps/synaptic.css b/gtk-3.0/apps/synaptic.css deleted file mode 100644 index a8877d1..0000000 --- a/gtk-3.0/apps/synaptic.css +++ /dev/null @@ -1,11 +0,0 @@ -/************ - * synaptic * - ************/ -GtkWindow > GtkVBox > .dock, -GtkWindow > GtkVBox > .dock > GtkHBox > GtkToolbar { - padding: 4px; - border-style: none; - background-color: @toolbar_bg_color; - background-image: none; - color: @toolbar_fg_color; -} diff --git a/gtk-3.0/apps/unity.css b/gtk-3.0/apps/unity.css deleted file mode 100644 index 689e0ab..0000000 --- a/gtk-3.0/apps/unity.css +++ /dev/null @@ -1,79 +0,0 @@ -UnityDecoration { - -UnityDecoration-extents: 28px 1px 1px 1px; - -UnityDecoration-input-extents: 10px; - - -UnityDecoration-shadow-offset-x: 1px; - -UnityDecoration-shadow-offset-y: 1px; - -UnityDecoration-active-shadow-color: rgba(0,0,0,0.7); - -UnityDecoration-active-shadow-radius: 8px; - -UnityDecoration-inactive-shadow-color: rgba(0,0,0,0.5); - -UnityDecoration-inactive-shadow-radius: 5px; - - -UnityDecoration-glow-size: 10px; - -UnityDecoration-glow-color: @theme_selected_bg_color; - - -UnityDecoration-title-indent: 10px; - -UnityDecoration-title-fade: 35px; - -UnityDecoration-title-alignment: 0.0; -} - -UnityDecoration.top { - border: 1px solid mix(shade(@titlebar_bg_color, 0.7), @titlebar_fg_color, 0.21); - border-bottom-width: 0; - border-radius: 2px 2px 0 0; - padding: 1px 8px 0 8px; - background-color: @titlebar_bg_color; - color: mix(@titlebar_fg_color, @titlebar_bg_color, 0.1); - text-shadow: none; -} - -UnityDecoration.top:backdrop { - border: 1px solid mix(shade(@titlebar_bg_color, 0.7), @titlebar_fg_color, 0.12); - border-bottom-width: 0; - background-color: @titlebar_bg_color; - color: mix(@titlebar_fg_color, @titlebar_bg_color, 0.4); -} - -UnityDecoration.left, -UnityDecoration.right, -UnityDecoration.bottom { - background-color: mix(shade(@titlebar_bg_color, 0.7), @titlebar_fg_color, 0.21); -} - -UnityDecoration.left:backdrop, -UnityDecoration.right:backdrop, -UnityDecoration.bottom:backdrop { - background-color: mix(shade(@titlebar_bg_color, 0.7), @titlebar_fg_color, 0.12); -} - -UnityPanelWidget, -.unity-panel { - border-width: 0 0 1px 0; - border-style: solid; - border-color: @panel_bg_color; - background-color: @panel_bg_color; - background-image: none; - color: @panel_fg_color; -} - -.unity-panel.menubar, -.unity-panel .menubar { -} - -.unity-panel.menuitem, -.unity-panel .menuitem { - border-width: 0 1px; - color: @panel_fg_color; -} - -.unity-panel.menubar.menuitem:hover, -.unity-panel.menubar .menuitem *:hover { - border-color: mix(@panel_bg_color, @panel_fg_color, 0.21); - background-color: mix(@panel_bg_color, @panel_fg_color, 0.21); - background-image: none; - color: shade(@panel_fg_color, 1.08); -} - -SheetStyleDialog.unity-force-quit { - background-color: @theme_bg_color; -} diff --git a/gtk-3.0/apps/xfce.css b/gtk-3.0/apps/xfce.css deleted file mode 100644 index 03cfb20..0000000 --- a/gtk-3.0/apps/xfce.css +++ /dev/null @@ -1,38 +0,0 @@ -XfceHeading { - margin: 0; - padding: 0; - border-width: 0; - background-color: @theme_base_color; - background-image: none; - color: @theme_text_color; -} - -.xfce4-panel { - background-color: @panel_bg_color; - color: @panel_fg_color; - font: normal; -} - -.xfce4-panel .button { - padding: 0 2px; - border-radius: 0; - border-style: none; - color: @panel_fg_color; -} - -.xfce4-panel .button:active { - background-color: shade(@panel_bg_color, 0.8); - background-image: none; - color: @panel_fg_color; -} - -.xfce4-panel .button:hover, -.xfce4-panel .button:active:hover { - background-color: mix(@panel_bg_color, @panel_fg_color, 0.21); - background-image: none; - color: shade(@panel_fg_color, 1.08); -} - -.xfce4-panel .menu { - -gtk-image-effect: none; -} diff --git a/gtk-3.0/gtk-dark.css b/gtk-3.0/gtk-dark.css deleted file mode 100644 index 22f93ef..0000000 --- a/gtk-3.0/gtk-dark.css +++ /dev/null @@ -1,85 +0,0 @@ -/* default color scheme */ -@define-color base_color #333333; -@define-color bg_color #2d2d2d; -@define-color text_color #dedede; -@define-color fg_color #dcdcdc; -@define-color selected_bg_color #d64937; -@define-color selected_fg_color #f9f9f9; -@define-color tooltip_bg_color #2d2d2d; -@define-color tooltip_fg_color #dcdcdc; - -/* dark color scheme */ -@define-color dark_bg_color #2d2d2d; -@define-color dark_fg_color #dcdcdc; - -/* colormap actually used by the theme, to be overridden in other css files */ -@define-color theme_bg_color @bg_color; -@define-color theme_fg_color @fg_color; -@define-color theme_base_color @base_color; -@define-color theme_text_color @text_color; -@define-color theme_selected_bg_color @selected_bg_color; -@define-color theme_selected_fg_color @selected_fg_color; -@define-color theme_tooltip_bg_color @tooltip_bg_color; -@define-color theme_tooltip_fg_color @tooltip_fg_color; - -/* shadow effects */ -@define-color light_shadow #fff; -@define-color dark_shadow #000; - -/* misc colors used by gtk+ */ -@define-color info_fg_color rgb (58, 135, 173); -@define-color info_bg_color rgb (217, 237, 247); -@define-color warning_fg_color rgb (192, 152, 83); -@define-color warning_bg_color rgb (252, 248, 227); -@define-color question_fg_color rgb (214, 73, 55); -@define-color question_bg_color rgb (252, 229, 213); -@define-color error_fg_color rgb (185, 74, 72); -@define-color error_bg_color rgb (242, 222, 222); -@define-color link_color #fc6f5d; -@define-color success_color #53a93f; -@define-color warning_color #f57900; -@define-color error_color #cc0000; - -/* widget colors */ -@define-color titlebar_bg_color @dark_bg_color; -@define-color titlebar_fg_color @dark_fg_color; -@define-color menubar_bg_color @dark_bg_color; -@define-color menubar_fg_color @dark_fg_color; -@define-color toolbar_bg_color @theme_bg_color; -@define-color toolbar_fg_color @theme_fg_color; -@define-color menu_bg_color @dark_bg_color; -@define-color menu_fg_color @dark_fg_color; -@define-color panel_bg_color @dark_bg_color; -@define-color panel_fg_color @dark_fg_color; - -/* osd */ -@define-color osd_base @dark_bg_color; -@define-color osd_fg @dark_fg_color; -@define-color osd_bg alpha(@osd_base, 0.8); - -/* lightdm greeter colors */ -@define-color lightdm_bg_color @dark_bg_color; -@define-color lightdm_fg_color @dark_fg_color; - -/* window manager colors */ -@define-color wm_bg @titlebar_bg_color; -@define-color wm_border_focused mix(shade(@titlebar_bg_color, 0.7), @titlebar_fg_color, 0.21); -@define-color wm_border_unfocused mix(shade(@titlebar_bg_color, 0.7), @titlebar_fg_color, 0.12); -@define-color wm_title_focused mix(@titlebar_fg_color, @titlebar_bg_color, 0.1); -@define-color wm_title_unfocused mix(@titlebar_fg_color, @titlebar_bg_color, 0.4); -@define-color wm_icons_focused mix(@titlebar_fg_color, @titlebar_bg_color, 0.1); -@define-color wm_icons_focused_prelight @selected_bg_color; -@define-color wm_icons_focused_pressed shade(@selected_bg_color, 0.8); -@define-color wm_icons_unfocused mix(@titlebar_fg_color, @titlebar_bg_color, 0.4); -@define-color wm_icons_unfocused_prelight @selected_bg_color; -@define-color wm_icons_unfocused_pressed shade(@selected_bg_color, 0.8); - -@import url("gtk-widgets.css"); -@import url("gtk-widgets-assets.css"); -@import url("apps/gnome-applications.css"); -@import url("apps/granite-widgets.css"); -@import url("apps/unity.css"); -@import url("apps/xfce.css"); -@import url("apps/nemo.css"); -@import url("apps/synaptic.css"); -@import url("apps/lightdm-gtk-greeter.css"); diff --git a/gtk-3.0/gtk-widgets-assets.css b/gtk-3.0/gtk-widgets-assets.css deleted file mode 100644 index 6f878e1..0000000 --- a/gtk-3.0/gtk-widgets-assets.css +++ /dev/null @@ -1,379 +0,0 @@ -/******************* - * check and radio * - *******************/ -.check, -.check row:selected, -.check row:selected:focus { - background-image: linear-gradient(to bottom, @theme_base_color, @theme_base_color), - linear-gradient(to bottom, @theme_base_color, @theme_base_color), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)); - - background-position: center center, center center, center center, center center, 6% 6%, 6% 94%, 94% 94%, 94% 6%, 0% 0%, 0% 100%, 100% 100%, 100% 0%; - background-size: 80% 90%, 90% 80%, 80% 100%, 100% 80%, 10% 10%, 10% 10%, 10% 10%, 10% 10%, 20% 20%, 20% 20%, 20% 20%, 20% 20%; - background-repeat: no-repeat; -} - -.check:insensitive, -.check row:selected:insensitive, -.check row:selected:focus:insensitive { - background-image: linear-gradient(to bottom, shade(@theme_base_color, 0.85), shade(@theme_base_color, 0.85)), - linear-gradient(to bottom, shade(@theme_base_color, 0.85), shade(@theme_base_color, 0.85)), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.85)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.85)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.85)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.85)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)); - - background-position: center center, center center, center center, center center, 6% 6%, 6% 94%, 94% 94%, 94% 6%, 0% 0%, 0% 100%, 100% 100%, 100% 0%; - background-size: 80% 90%, 90% 80%, 80% 100%, 100% 80%, 10% 10%, 10% 10%, 10% 10%, 10% 10%, 20% 20%, 20% 20%, 20% 20%, 20% 20%; - background-repeat: no-repeat; -} - -.check:active, -.check row:selected:active, -.check row:selected:focus:active { - background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_selected_bg_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_selected_bg_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_selected_bg_color), to(transparent)), - linear-gradient(45deg, transparent, transparent 30%, @theme_selected_bg_color 30%, @theme_selected_bg_color 70%, transparent 70%, transparent), - linear-gradient(-45deg, transparent, transparent 37%, @theme_selected_bg_color 37%, @theme_selected_bg_color 62%, transparent 62%, transparent), - linear-gradient(to bottom, @theme_base_color, @theme_base_color), - linear-gradient(to bottom, @theme_base_color, @theme_base_color), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)); - - background-position: 17% 50%, 41% 73%, 90% 26%, 24% 64%, 76% 48%, center center, center center, center center, center center, 6% 6%, 6% 94%, 94% 94%, 94% 6%, 0% 0%, 0% 100%, 100% 100%, 100% 0%; - background-size: 17% 17%, 20% 20%, 18% 18%, 30% 30%, 50% 50%, 80% 90%, 90% 80%, 80% 100%, 100% 80%, 10% 10%, 10% 10%, 10% 10%, 10% 10%, 20% 20%, 20% 20%, 20% 20%, 20% 20%; - background-repeat: no-repeat; -} - -.check:active:insensitive, -.check row:selected:active:insensitive, -.check row:selected:focus:active:insensitive { - background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - linear-gradient(45deg, transparent, transparent 30%, shade(@theme_base_color, 0.6) 30%, shade(@theme_base_color, 0.6) 70%, transparent 70%, transparent), - linear-gradient(-45deg, transparent, transparent 37%, shade(@theme_base_color, 0.6) 37%, shade(@theme_base_color, 0.6) 62%, transparent 62%, transparent), - linear-gradient(to bottom, shade(@theme_base_color, 0.85), shade(@theme_base_color, 0.85)), - linear-gradient(to bottom, shade(@theme_base_color, 0.85), shade(@theme_base_color, 0.85)), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.85)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.85)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.85)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.85)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)); - - background-position: 17% 50%, 41% 73%, 90% 26%, 24% 64%, 76% 48%, center center, center center, center center, center center, 6% 6%, 6% 94%, 94% 94%, 94% 6%, 0% 0%, 0% 100%, 100% 100%, 100% 0%; - background-size: 17% 17%, 20% 20%, 18% 18%, 30% 30%, 50% 50%, 80% 90%, 90% 80%, 80% 100%, 100% 80%, 10% 10%, 10% 10%, 10% 10%, 10% 10%, 20% 20%, 20% 20%, 20% 20%, 20% 20%; - background-repeat: no-repeat; -} - -.check:inconsistent, -.check row:selected:inconsistent, -.check row:selected:focus:inconsistent { - background-image: linear-gradient(to bottom, @theme_selected_bg_color, @theme_selected_bg_color), - linear-gradient(to bottom, @theme_base_color, @theme_base_color), - linear-gradient(to bottom, @theme_base_color, @theme_base_color), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)); - - background-position: center center, center center, center center, center center, center center, 6% 6%, 6% 94%, 94% 94%, 94% 6%, 0% 0%, 0% 100%, 100% 100%, 100% 0%; - background-size: 50% 12%, 80% 90%, 90% 80%, 80% 100%, 100% 80%, 10% 10%, 10% 10%, 10% 10%, 10% 10%, 20% 20%, 20% 20%, 20% 20%, 20% 20%; - background-repeat: no-repeat; -} - -.check:inconsistent:insensitive, -.check row:selected:inconsistent:insensitive, -.check row:selected:focus:inconsistent:insensitive { - background-image: linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - linear-gradient(to bottom, shade(@theme_base_color, 0.85), shade(@theme_base_color, 0.85)), - linear-gradient(to bottom, shade(@theme_base_color, 0.85), shade(@theme_base_color, 0.85)), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.85)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.85)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.85)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.85)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)); - - background-position: center center, center center, center center, center center, center center, 6% 6%, 6% 94%, 94% 94%, 94% 6%, 0% 0%, 0% 100%, 100% 100%, 100% 0%; - background-size: 50% 12%, 80% 90%, 90% 80%, 80% 100%, 100% 80%, 10% 10%, 10% 10%, 10% 10%, 10% 10%, 20% 20%, 20% 20%, 20% 20%, 20% 20%; - background-repeat: no-repeat; -} - -.radio, -.radio row:selected, -.radio row:selected:focus { - background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)); - - background-position: center center, center center; - background-size: 90% 90%, 100% 100%; - background-repeat: no-repeat; -} - -.radio:insensitive, -.radio row:selected:insensitive, -.radio row:selected:focus:insensitive { - background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.85)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)); - - background-position: center center, center center; - background-size: 90% 90%, 100% 100%; - background-repeat: no-repeat; -} - -.radio:active, -.radio row:selected:active, -.radio row:selected:focus:active { - background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_selected_bg_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)); - - background-position: center center, center center, center center; - background-size: 40% 40%, 90% 90%, 100% 100%; - background-repeat: no-repeat; -} - -.radio:active:insensitive, -.radio row:selected:active:insensitive, -.radio row:selected:focus:active:insensitive { - background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.85)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)); - - background-position: center center, center center, center center; - background-size: 40% 40%, 90% 90%, 100% 100%; - background-repeat: no-repeat; -} - -.radio:inconsistent, -.radio row:selected:inconsistent, -.radio row:selected:focus:inconsistent { - background-image: linear-gradient(to bottom, @theme_selected_bg_color, @theme_selected_bg_color), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)); - - background-position: center center, center center, center center; - background-size: 50% 12%, 90% 90%, 100% 100%; - background-repeat: no-repeat; -} - -.radio:inconsistent:insensitive, -.radio row:selected:inconsistent:insensitive, -.radio row:selected:focus:inconsistent:insensitive { - background-image: linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.85)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)); - - background-position: center center, center center, center center; - background-size: 50% 12%, 90% 90%, 100% 100%; - background-repeat: no-repeat; -} - -.menuitem.check:active { - background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_selected_bg_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_selected_bg_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_selected_bg_color), to(transparent)), - linear-gradient(45deg, transparent, transparent 30%, @theme_selected_bg_color 30%, @theme_selected_bg_color 70%, transparent 70%, transparent), - linear-gradient(-45deg, transparent, transparent 37%, @theme_selected_bg_color 37%, @theme_selected_bg_color 62%, transparent 62%, transparent); - - background-position: 17% 50%, 41% 73%, 90% 26%, 24% 64%, 76% 48%; - background-size: 17% 17%, 20% 20%, 18% 18%, 30% 30%, 50% 50%; - background-repeat: no-repeat; -} - -.menuitem.check:active:hover { - background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_selected_fg_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_selected_fg_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_selected_fg_color), to(transparent)), - linear-gradient(45deg, transparent, transparent 30%, @theme_selected_fg_color 30%, @theme_selected_fg_color 70%, transparent 70%, transparent), - linear-gradient(-45deg, transparent, transparent 37%, @theme_selected_fg_color 37%, @theme_selected_fg_color 62%, transparent 62%, transparent); - - background-position: 17% 50%, 41% 73%, 90% 26%, 24% 64%, 76% 48%; - background-size: 17% 17%, 20% 20%, 18% 18%, 30% 30%, 50% 50%; - background-repeat: no-repeat; -} - -.menuitem.check:active:insensitive { - background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(mix(@menu_fg_color, @menu_bg_color, 0.5)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(mix(@menu_fg_color, @menu_bg_color, 0.5)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(mix(@menu_fg_color, @menu_bg_color, 0.5)), to(transparent)), - linear-gradient(45deg, transparent, transparent 30%, mix(@menu_fg_color, @menu_bg_color, 0.5) 30%, mix(@menu_fg_color, @menu_bg_color, 0.5) 70%, transparent 70%, transparent), - linear-gradient(-45deg, transparent, transparent 37%, mix(@menu_fg_color, @menu_bg_color, 0.5) 37%, mix(@menu_fg_color, @menu_bg_color, 0.5) 62%, transparent 62%, transparent); - - background-position: 17% 50%, 41% 73%, 90% 26%, 24% 64%, 76% 48%; - background-size: 17% 17%, 20% 20%, 18% 18%, 30% 30%, 50% 50%; - background-repeat: no-repeat; -} - -.menuitem.radio:active { - background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_selected_bg_color), to(transparent)); - background-position: center center; - background-size: 40% 40%; - background-repeat: no-repeat; -} - -.menuitem.radio:active:hover { - background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_selected_fg_color), to(transparent)); - background-position: center center; - background-size: 40% 40%; - background-repeat: no-repeat; -} - -.menuitem.radio:active:insensitive { - background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(mix(@menu_fg_color, @menu_bg_color, 0.5)), to(transparent)); - background-position: center center; - background-size: 40% 40%; - background-repeat: no-repeat; -} - -.menuitem.check:inconsistent, -.menuitem.radio:inconsistent { - background-image: linear-gradient(to bottom, @theme_selected_bg_color, @theme_selected_bg_color); - - background-position: center center; - background-size: 50% 12%; - background-repeat: no-repeat; -} - -.menuitem.check:inconsistent:hover, -.menuitem.radio:inconsistent:hover { - background-image: linear-gradient(to bottom, @theme_selected_fg_color, @theme_selected_fg_color); - - background-position: center center; - background-size: 50% 12%; - background-repeat: no-repeat; -} - -.menuitem.check:inconsistent:insensitive, -.menuitem.radio:inconsistent:insensitive { - background-image: linear-gradient(to bottom, mix(@menu_fg_color, @menu_bg_color, 0.5), mix(@menu_fg_color, @menu_bg_color, 0.5)); - - background-position: center center; - background-size: 50% 12%; - background-repeat: no-repeat; -} - -GtkIconView.content-view.cell.check { - background-image: linear-gradient(to bottom, @theme_base_color, @theme_base_color), - linear-gradient(to bottom, @theme_base_color, @theme_base_color), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)); - - background-position: center center, center center, center center, center center, 6% 6%, 6% 94%, 94% 94%, 94% 6%, 0% 0%, 0% 100%, 100% 100%, 100% 0%; - background-size: 80% 90%, 90% 80%, 80% 100%, 100% 80%, 10% 10%, 10% 10%, 10% 10%, 10% 10%, 20% 20%, 20% 20%, 20% 20%, 20% 20%; - background-repeat: no-repeat; -} - -GtkIconView.content-view.cell.check:active { - background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_selected_bg_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_selected_bg_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_selected_bg_color), to(transparent)), - linear-gradient(45deg, transparent, transparent 30%, @theme_selected_bg_color 30%, @theme_selected_bg_color 70%, transparent 70%, transparent), - linear-gradient(-45deg, transparent, transparent 37%, @theme_selected_bg_color 37%, @theme_selected_bg_color 62%, transparent 62%, transparent), - linear-gradient(to bottom, @theme_base_color, @theme_base_color), - linear-gradient(to bottom, @theme_base_color, @theme_base_color), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - linear-gradient(to bottom, shade(@theme_base_color, 0.6), shade(@theme_base_color, 0.6)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(@theme_base_color), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(shade(@theme_base_color, 0.6)), to(transparent)); - - background-position: 17% 50%, 41% 73%, 90% 26%, 24% 64%, 76% 48%, center center, center center, center center, center center, 6% 6%, 6% 94%, 94% 94%, 94% 6%, 0% 0%, 0% 100%, 100% 100%, 100% 0%; - background-size: 17% 17%, 20% 20%, 18% 18%, 30% 30%, 50% 50%, 80% 90%, 90% 80%, 80% 100%, 100% 80%, 10% 10%, 10% 10%, 10% 10%, 10% 10%, 20% 20%, 20% 20%, 20% 20%, 20% 20%; - background-repeat: no-repeat; -} - -/****************** - * pane separator * - ******************/ -.pane-separator, -.pane-separator.horizontal { - background-image: linear-gradient(to bottom, - shade(@theme_bg_color, 0.8) 0%, - shade(@theme_bg_color, 0.8) 20%, - transparent 20%, - transparent 45%, - shade(@theme_bg_color, 0.8) 45%, - shade(@theme_bg_color, 0.8) 55%, - transparent 55%, - transparent 80%, - shade(@theme_bg_color, 0.8) 80%, - shade(@theme_bg_color, 0.8) - ); - - background-size: 4px 10px; - background-repeat: no-repeat; - background-position: center center; -} - -.pane-separator.vertical { - background-image: linear-gradient(to right, - shade(@theme_bg_color, 0.8) 0%, - shade(@theme_bg_color, 0.8) 20%, - transparent 20%, - transparent 45%, - shade(@theme_bg_color, 0.8) 45%, - shade(@theme_bg_color, 0.8) 55%, - transparent 55%, - transparent 80%, - shade(@theme_bg_color, 0.8) 80%, - shade(@theme_bg_color, 0.8) - ); - - background-size: 10px 4px; - background-repeat: no-repeat; - background-position: center center; -} diff --git a/gtk-3.0/gtk-widgets.css b/gtk-3.0/gtk-widgets.css deleted file mode 100644 index 061ef57..0000000 --- a/gtk-3.0/gtk-widgets.css +++ /dev/null @@ -1,3682 +0,0 @@ -/* NOTES to contributors: - * use 4 spaces indents, and keep code ALIGNED and ORDERED */ - -/* default */ -* { - -GtkArrow-arrow-scaling: 0.5; - -GtkButton-child-displacement-x: 0; - -GtkButton-child-displacement-y: 0; - -GtkButton-default-border: 0; - -GtkButton-image-spacing: 0; - -GtkButton-inner-border: 1; - -GtkButton-interior-focus: true; - -GtkButtonBox-child-min-height: 24; - -GtkButtonBox-child-internal-pad-y: 1; - -GtkCheckButton-indicator-size: 16; - -GtkCheckMenuItem-indicator-size: 14; - -GtkExpander-expander-size: 8; - -GtkMenu-horizontal-padding: 0; - -GtkMenu-vertical-padding: 0; - -GtkPaned-handle-size: 4; - -GtkProgressBar-min-horizontal-bar-height: 12; - -GtkProgressBar-min-vertical-bar-width: 12; - -GtkRange-slider-width: 12; - -GtkRange-stepper-spacing: 0; - -GtkRange-trough-border: 0; - -GtkRange-trough-under-steppers: 1; - -GtkScrollbar-has-backward-stepper: false; - -GtkScrollbar-has-forward-stepper: false; - -GtkScrollbar-min-slider-length: 80; - -GtkScrolledWindow-scrollbar-spacing: 0; - -GtkScrolledWindow-scrollbars-within-bevel: 1; - -GtkStatusbar-shadow-type: none; - -GtkTextView-error-underline-color: @error_color; - -GtkToolButton-icon-spacing: 6; - -GtkToolItemGroup-expander-size: 8; - -GtkTreeView-expander-size: 8; - -GtkWindow-resize-grip-height: 0; - -GtkWindow-resize-grip-width: 0; - -WnckTasklist-fade-overlay-rect: 0; - - /* legacy only */ - -GtkWidget-focus-line-width: 1; - -GtkWidget-focus-padding: 0; - - background-clip: padding-box; - - /* - outline-color: alpha(@theme_selected_bg_color, 0.5); - outline-style: dashed; - outline-width: 1px; - outline-offset: -2px; - outline-radius: 2px; - */ -} - -/*************** - * base states * - ***************/ -.background { - background-color: @theme_bg_color; - color: @theme_fg_color; -} - -.background:backdrop { - text-shadow: none; - icon-shadow: none; -} - -*:selected, -*:selected:focus { - background-color: @theme_selected_bg_color; - color: @theme_selected_fg_color; -} - -*:insensitive, -*:insensitive:insensitive { - color: mix(@theme_fg_color, @theme_bg_color, 0.5); -} - -/* apply effects to insensitive and prelit images */ -*:insensitive { - -gtk-image-effect: dim; -} - -*:hover { - -gtk-image-effect: highlight; -} - -.gtkstyle-fallback { - background-color: @theme_bg_color; - color: @theme_fg_color; -} - -.gtkstyle-fallback:prelight { - background-color: shade(@theme_bg_color, 1.1); - color: @theme_fg_color; -} - -.gtkstyle-fallback:active { - background-color: shade(@theme_bg_color, 0.9); - color: @theme_fg_color; -} - -.gtkstyle-fallback:insensitive { - background-color: shade(shade(@theme_bg_color, 0.95), 1.05); - color: mix(@theme_fg_color, @theme_bg_color, 0.5); -} - -.gtkstyle-fallback:selected { - background-color: @theme_selected_bg_color; - color: @theme_selected_fg_color; -} - -GtkImage, -GtkImage:insensitive, -GtkLabel, -GtkLabel:insensitive, -GtkBox, -GtkBox:insensitive, -GtkGrid, -GtkGrid:insensitive { - background-color: transparent; -} - -/************** - * hyperlinks * - **************/ -* { - -GtkHTML-link-color: @link_color; - -GtkIMHtml-hyperlink-color: @link_color; - -GtkWidget-link-color: @link_color; - -GtkWidget-visited-link-color: @link_color; -} - -*:link, -*:visited { - color: @link_color; -} - -/****************** - * visual effects * - ******************/ -/* transitions */ -.button { - transition: border 100ms ease-in-out; -} - -.entry { - transition: border 100ms ease-out; -} - -.entry:focus { - transition: border 100ms ease-in; -} - -.entry.image.left { - padding-right: 4px; -} - -.notebook tab GtkLabel, -.notebook .prelight-page, -.notebook .prelight-page GtkLabel, -.notebook .active-page, -.notebook .active-page GtkLabel { - transition: all 200ms ease-in; -} - -/* inset shadows */ -.button:active, -.primary-toolbar .button:active, -.toolbar .button:active, -.header-bar .button:active, -.notebook.header { - box-shadow: inset 1px 0 alpha(@dark_shadow, 0.07), - inset 0 1px alpha(@dark_shadow, 0.08), - inset -1px 0 alpha(@dark_shadow, 0.07), - inset 0 -1px alpha(@dark_shadow, 0.05); -} - -.entry { - box-shadow: inset 1px 0 alpha(@dark_shadow, 0.10), - inset 0 1px alpha(@dark_shadow, 0.12), - inset -1px 0 alpha(@dark_shadow, 0.10), - inset 0 -1px alpha(@dark_shadow, 0.05); -} - -/* disable inset shadow */ -.button:active *:insensitive, -.primary-toolbar .button:active *:insensitive, -.toolbar .button:active *:insensitive, -.header-bar .button:active *:insensitive, -.entry:insensitive { - box-shadow: none; -} - -/************* - * assistant * - *************/ -GtkAssistant .sidebar .highlight { - font: bold; -} - -GtkAssistant .sidebar { - padding: 4px; - border-width: 0 1px 0 0; - border-style: solid; - border-right-color: shade(@theme_bg_color, 0.8); - border-radius: 0; - background-color: @theme_bg_color; - color: mix(@theme_fg_color, @theme_bg_color, 0.1); -} - -/********** - * button * - **********/ -.button { - -GtkWidget-focus-padding: 1; - -GtkWidget-focus-line-width: 0; - - padding: 3px; - border-width: 1px; - border-radius: 2px; - border-style: solid; - border-color: shade(@theme_bg_color, 0.8); - background-color: shade(@theme_bg_color, 1.08); - background-image: none; - color: @theme_fg_color; -} - -.button:hover { - border-color: shade(@theme_bg_color, 0.7); - background-color: shade(@theme_bg_color, 1.10); - background-image: none; -} - -.button:active { - border-color: shade(@theme_bg_color, 0.8); - background-color: shade(@theme_bg_color, 0.95); - background-image: none; -} - -.button:active:hover { - border-color: shade(@theme_bg_color, 0.7); -} - -.button:focus, -.button:hover:focus, -.button:active:focus, -.button:active:hover:focus { - border-color: shade(@theme_bg_color, 0.7); -} - -.button:insensitive { - border-color: shade(@theme_bg_color, 0.85); - background-color: shade(@theme_bg_color, 0.9); - background-image: none; -} - -.button:active *:insensitive { - border-color: shade(@theme_bg_color, 0.75); - background-color: shade(@theme_bg_color, 0.80); - background-image: none; -} - -/* default button */ -.button.default { - border-color: shade(@theme_selected_bg_color, 0.8); - background-color: shade(@theme_selected_bg_color, 1.08); - color: @theme_selected_fg_color; -} - -.button.default:hover { - border-color: shade(@theme_selected_bg_color, 0.7); - background-color: @theme_selected_bg_color; -} - -.button.default:active { - border-color: shade(@theme_selected_bg_color, 0.8); - background-color: shade(@theme_selected_bg_color, 0.95); -} - -.button.default:active:hover { - border-color: shade(@theme_selected_bg_color, 0.7); - background-color: shade(@theme_selected_bg_color, 0.97); -} - -/**************** - * cell and row * - ****************/ -.cell { - border-width: 0; - border-radius: 0; -} - -.cell:selected, -.cell:selected:focus { - background-color: @theme_selected_bg_color; - color: @theme_selected_fg_color; -} - -row:selected, -row:selected:hover, -row:selected:focus { - -GtkWidget-focus-padding: 1; - -GtkWidget-focus-line-width: 0; - - border-width: 1px 0; - border-style: solid; - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: @theme_selected_bg_color; - background-image: none; - color: @theme_selected_fg_color; -} - -/******************* - * check and radio * - *******************/ -.check, -.radio, -.check:insensitive, -.radio:insensitive { - border-style: none; - background-color: transparent; -} - -GtkCheckButton:hover, -GtkCheckButton:active:hover, -GtkCheckButton:selected, -GtkCheckButton:selected:focus { - background-color: transparent; -} - -GtkCheckButton { - outline-offset: 0; - padding: 3px; -} - -/***************** - * column-header * - *****************/ -column-header .button, -column-header .button:active { - border-width: 0 1px 1px 0; - border-radius: 0; -} - -column-header .button, -column-header .button:active, -column-header .button:focus, -column-header .button:active:focus { - border-color: shade(@theme_base_color, 0.9); - border-bottom-color: shade(@theme_base_color, 0.8); - background-color: shade(@theme_base_color, 0.97); - background-image: none; -} - -column-header .button:hover, -column-header .button:active:hover, -column-header .button:hover:focus, -column-header .button:active:hover:focus { - border-color: shade(@theme_base_color, 0.9); - border-bottom-color: shade(@theme_base_color, 0.8); - background-color: shade(@theme_base_color, 0.99); - background-image: none; -} - -column-header:last-child .button { - border-width: 0 0 1px 0; -} - -/**************** - * content view * - ****************/ -.content-view.subtitle { - font: smaller; - padding: 0 12px; -} - -.content-view.view { - background-color: @theme_base_color; -} - -.content-view.view:prelight { - background-color: alpha(@theme_selected_bg_color, 0.6); -} - -.content-view.view:selected, -.content-view.view:active { - background-color: @theme_selected_bg_color; -} - -.content-view.view:insensitive { - background-color: shade(@theme_base_color, 0.9); -} - -GdMainIconView.content-view { - -GdMainIconView-icon-size: 40; -} - -GtkIconView.content-view.check { - background-color: transparent; -} - -GtkIconView.content-view.check:active { - background-color: transparent; -} - -.content-view.view.check, -.content-view.view.check:active { - background-color: transparent; -} - -GtkIconView.content-view.check:prelight, -GtkIconView.content-view.check:insensitive, -GtkIconView.content-view.check:selected { - background-color: transparent; -} - -/**************** - * drawing area * - ****************/ -GtkDrawingArea { - background-color: @theme_base_color; -} - -GtkDrawingArea:insensitive { - background-color: shade(@theme_base_color, 0.9); -} - -/*********** - * gtkhtml * - ***********/ -GtkHTML { - background-color: @theme_base_color; - color: @theme_text_color; -} - -/*********** -* calendar * -************/ -GtkCalendar { - padding: 4px; - outline-offset: -1px; -} - -GtkCalendar:inconsistent { - color: mix(@theme_fg_color, @theme_bg_color, 0.5); -} - -GtkCalendar.view, -GtkCalendar.header, -GtkCalendar.button, -GtkCalendar.button:hover, -GtkCalendar.button:insensitive { - border-width: 0; - background-color: transparent; - background-image: none; -} - -.highlight, -GtkCalendar.highlight { - border-width: 0; - background-color: transparent; - color: @theme_selected_bg_color; -} - -/****************** - * combobox entry * - ******************/ -.primary-toolbar GtkComboBox.combobox-entry .entry, -.primary-toolbar GtkComboBox.combobox-entry .entry:active, -.primary-toolbar GtkComboBox.combobox-entry .entry:focus, -.primary-toolbar GtkComboBox.combobox-entry .entry:insensitive, -GtkComboBox.combobox-entry .entry, -GtkComboBox.combobox-entry .entry:active, -GtkComboBox.combobox-entry .entry:focus, -GtkComboBox.combobox-entry .entry:insensitive { - border-width: 1px 0 1px 1px; - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} - -.primary-toolbar GtkComboBox.combobox-entry .button, -.primary-toolbar GtkComboBox.combobox-entry .button:hover, -.primary-toolbar GtkComboBox.combobox-entry .button:active, -.primary-toolbar GtkComboBox.combobox-entry .button:insensitive, -GtkComboBox.combobox-entry .button, -GtkComboBox.combobox-entry .button:hover, -GtkComboBox.combobox-entry .button:active, -GtkComboBox.combobox-entry .button:insensitive { - border-width: 1px 1px 1px 1px; - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} - -/********* - * entry * - *********/ -.entry { - padding: 4px 3px; - border-width: 1px; - border-style: solid; - border-color: shade(@theme_bg_color, 0.8); - border-radius: 2px; - background-color: @theme_base_color; - background-image: none; - color: @theme_text_color; -} - -.entry:active, -.entry:focus { - border-color: shade(@theme_bg_color, 0.7); -} - -.entry:selected, -.entry:selected:focus { - background-color: @theme_selected_bg_color; - color: @theme_selected_fg_color; -} - -.entry:insensitive { - background-color: shade(@theme_bg_color, 0.95); - background-image: none; - color: mix(@theme_text_color, @theme_base_color, 0.5); -} - -.entry.progressbar { - border-width: 0; - border-radius: 2px; - background-color: @theme_selected_bg_color; - background-image: none; - color: @theme_selected_fg_color; -} - -/************ - * expander * -************/ -GtkExpander { - padding: 3px; - outline-offset: 1px; -} - -.expander { - color: alpha(currentColor, 0.7); - border: alpha(currentColor, 0.7); -} - -.expander:hover { - color: alpha(currentColor, 0.8); - border-color: alpha(currentColor, 0.8); -} - -.expander:active { - color: alpha(currentColor, 0.9); - border-color: alpha(currentColor, 0.9); -} - -/************** - * list boxes * - **************/ -.list { - background-color: shade(@theme_bg_color, 0.97); - color: @theme_fg_color; -} - -.list-row { - padding: 3px; -} - -.list-row:hover { - background-color: shade(@theme_bg_color, 1.02); -} - -.list-row:selected { - background-color: @theme_selected_bg_color; - color: @theme_selected_fg_color; -} - -/************** -* flow boxes * -**************/ - -.grid-child { - padding: 3px; -} - -/********* - * frame * - *********/ -.frame { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_bg_color, 0.8); - border-radius: 0; -} - -/******************* - * scrolled window * - *******************/ -GtkScrolledWindow.frame { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_bg_color, 0.8); - border-radius: 0; -} - -/* avoid double borders when a viewport is - * packed into a GtkScrolledWindow */ -GtkScrolledWindow GtkViewport.frame { - border-style: none; -} - -/************ - * iconview * - ************/ -GtkIconView.view.cell:selected, -GtkIconView.view.cell:selected:focus { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_selected_bg_color, 0.9); - border-radius: 2px; - background-color: @theme_selected_bg_color; - background-image: none; - color: @theme_selected_fg_color; -} - -.content-view.view.rubberband, -.view.rubberband, -.rubberband { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_selected_bg_color, 0.9); - border-radius: 0; - background-color: alpha(@theme_selected_bg_color, 0.3); -} - -/*********** - * infobar * - ***********/ -GtkInfoBar { - border-width: 0; - border-style: none; -} - -.info { - border-width: 1px; - border-style: solid; - border-color: shade(@info_bg_color, 0.8); - background-color: @info_bg_color; - background-image: none; - color: @info_fg_color; -} - -.info .button { - border-top-color: shade(@info_bg_color, 0.8); - border-right-color: shade(@info_bg_color, 0.72); - border-left-color: shade(@info_bg_color, 0.72); - border-bottom-color: shade(@info_bg_color, 0.7); - background-color: shade(@info_bg_color, 1.08); - color: @info_fg_color; -} - -.info .button:hover { - border-top-color: shade(@info_bg_color, 0.85); - border-right-color: shade(@info_bg_color, 0.78); - border-left-color: shade(@info_bg_color, 0.78); - border-bottom-color: shade(@info_bg_color, 0.7); - background-color: shade(@info_bg_color, 1.10); -} - -.info .button:active { - border-color: shade(@info_bg_color, 0.6); - background-color: shade(@info_bg_color, 0.95); -} - -.info .button:active:hover { - border-top-color: shade(@info_bg_color, 0.85); - border-right-color: shade(@info_bg_color, 0.78); - border-left-color: shade(@info_bg_color, 0.78); - border-bottom-color: shade(@info_bg_color, 0.7); -} - -.info .button.close { - color: @info_fg_color; -} - -.info .button.close:hover { - background-color: alpha(white, 0.2); -} - -.info .button.close:active { - color: @info_fg_color; - background-color: alpha(black, 0.1); -} - -.warning { - border-width: 1px; - border-style: solid; - border-color: shade(@warning_bg_color, 0.8); - background-color: @warning_bg_color; - background-image: none; - color: @warning_fg_color; -} - -.warning .button { - border-top-color: shade(@warning_bg_color, 0.8); - border-right-color: shade(@warning_bg_color, 0.72); - border-left-color: shade(@warning_bg_color, 0.72); - border-bottom-color: shade(@warning_bg_color, 0.7); - background-color: shade(@warning_bg_color, 1.08); - color: @warning_fg_color; -} - -.warning .button:hover { - border-top-color: shade(@warning_bg_color, 0.85); - border-right-color: shade(@warning_bg_color, 0.78); - border-left-color: shade(@warning_bg_color, 0.78); - border-bottom-color: shade(@warning_bg_color, 0.7); - background-color: shade(@warning_bg_color, 1.10); -} - -.warning .button:active { - border-color: shade(@warning_bg_color, 0.6); - background-color: shade(@warning_bg_color, 0.95); -} - -.warning .button:active:hover { - border-top-color: shade(@warning_bg_color, 0.85); - border-right-color: shade(@warning_bg_color, 0.78); - border-left-color: shade(@warning_bg_color, 0.78); - border-bottom-color: shade(@warning_bg_color, 0.7); -} - -.warning .button.close { - color: @warning_fg_color; -} - -.warning .button.close:hover { - background-color: alpha(white, 0.2); -} - -.warning .button.close:active { - color: @warning_fg_color; - background-color: alpha(black, 0.1); -} - -.question { - border-width: 1px; - border-style: solid; - border-color: shade(@question_bg_color, 0.8); - background-color: @question_bg_color; - background-image: none; - color: @question_fg_color; -} - -.question .button { - border-top-color: shade(@question_bg_color, 0.8); - border-right-color: shade(@question_bg_color, 0.72); - border-left-color: shade(@question_bg_color, 0.72); - border-bottom-color: shade(@question_bg_color, 0.7); - background-color: shade(@question_bg_color, 1.08); - color: @question_fg_color; -} - -.question .button:hover { - border-top-color: shade(@question_bg_color, 0.85); - border-right-color: shade(@question_bg_color, 0.78); - border-left-color: shade(@question_bg_color, 0.78); - border-bottom-color: shade(@question_bg_color, 0.7); - background-color: shade(@question_bg_color, 1.10); -} - -.question .button:active { - border-color: shade(@question_bg_color, 0.6); - background-color: shade(@question_bg_color, 0.95); -} - -.question .button:active:hover { - border-top-color: shade(@question_bg_color, 0.85); - border-right-color: shade(@question_bg_color, 0.78); - border-left-color: shade(@question_bg_color, 0.78); - border-bottom-color: shade(@question_bg_color, 0.7); -} - -.question .button.close { - color: @question_fg_color; -} - -.question .button.close:hover { - background-color: alpha(white, 0.2); -} - -.question .button.close:active { - color: @question_fg_color; - background-color: alpha(black, 0.1); -} - -.error { - border-width: 1px; - border-style: solid; - border-color: shade(@error_bg_color, 0.8); - background-color: @error_bg_color; - background-image: none; - color: @error_fg_color; -} - -.error .button { - border-top-color: shade(@error_bg_color, 0.8); - border-right-color: shade(@error_bg_color, 0.72); - border-left-color: shade(@error_bg_color, 0.72); - border-bottom-color: shade(@error_bg_color, 0.7); - background-color: shade(@error_bg_color, 1.08); - color: @error_fg_color; -} - -.error .button:hover { - border-top-color: shade(@error_bg_color, 0.85); - border-right-color: shade(@error_bg_color, 0.78); - border-left-color: shade(@error_bg_color, 0.78); - border-bottom-color: shade(@error_bg_color, 0.7); - background-color: shade(@error_bg_color, 1.10); -} - -.error .button:active { - border-color: shade(@error_bg_color, 0.6); - background-color: shade(@error_bg_color, 0.95); -} - -.error .button:active:hover { - border-top-color: shade(@error_bg_color, 0.85); - border-right-color: shade(@error_bg_color, 0.78); - border-left-color: shade(@error_bg_color, 0.78); - border-bottom-color: shade(@error_bg_color, 0.7); -} - -.error .button.close { - color: @error_fg_color; -} - -.error .button.close:hover { - background-color: alpha(white, 0.2); -} - -.error .button.close:active { - color: @error_fg_color; - background-color: alpha(black, 0.1); -} - -/******************* - * symbolic images * - *******************/ -.image { - color: alpha(currentColor, 0.5); -} - -.image:hover { - color: alpha(currentColor, 0.9); -} - -.image:selected, -.image:selected:hover { - color: @theme_selected_fg_color; -} - -.view.image, -.view.image:hover { - color: alpha(currentColor, 0.9); -} - -.view.image:selected, -.view.image:selected:hover { - color: @theme_selected_fg_color; -} - -/***************** - * miscellaneous * - *****************/ -.floating-bar { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_bg_color, 0.8); - border-radius: 2px; - background-color: @theme_bg_color; - background-image: none; - color: @theme_fg_color; -} - -.floating-bar.top { - border-top-width: 0; - border-top-right-radius: 0; - border-top-left-radius: 0; -} - -.floating-bar.right { - border-right-width: 0; - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} - -.floating-bar.bottom { - border-bottom-width: 0; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} - -.floating-bar.left { - border-left-width: 0; - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} - -.floating-bar .button { - -GtkButton-image-spacing: 0; - -GtkButton-inner-border: 0; - - border-style: none; - background-color: transparent; - background-image: none; -} - -.view.dim-label, -.dim-label { - color: alpha(currentColor, 0.5); -} - -.dnd { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_selected_bg_color, 0.9); -} - -.grip { - background-color: transparent; -} - -.arrow { - color: alpha(currentColor, 0.7); -} - -/******** - * menu * - ********/ -GtkTreeMenu.menu, -GtkMenuToolButton.menu, -GtkComboBox .menu { - background-color: @menu_bg_color; - margin: 3px; -} - -.primary-toolbar .menu, -.primary-toolbar .button .menu, -.toolbar .menu, -.toolbar .primary-toolbar .menu, -.header-bar .menu, -.header-bar .primary-toolbar .menu, -.menu { - padding: 0; - border-radius: 0; - border-style: none; - background-color: @menu_bg_color; - color: @menu_fg_color; -} - -/* Hover-effect on play-button in ubuntu soundmenu */ -.menu:selected { - background-color: @selected_bg_color; -} - -.menu.button:hover, -.menu.button:active, -.menu.button:active *:insensitive, -.menu.button:insensitive, -.menu.button { - border-width: 0; - background-color: @menu_bg_color; - background-image: none; -} - -.context-menu { - font: initial; -} - -/* ubuntu software center menu */ -#toolbar-popup { - background-color: @menu_bg_color; - color: @menu_fg_color; -} - -/*********** - * menubar * - ***********/ -.menubar { - -GtkWidget-window-dragging: true; - - border-style: none; - background-color: @menubar_bg_color; - background-image: none; - color: @menubar_fg_color; -} - -/*************** - * menubaritem * - ***************/ -.menubar.menuitem, -.menubar .menuitem { - padding: 3px 5px; - border-width: 1px; - border-style: solid; - border-color: transparent; - background-color: transparent; - background-image: none; - color: @menubar_fg_color; -} - -.menubar.menuitem:hover, -.menubar .menuitem:hover { - border-color: mix(@menubar_bg_color, @menubar_fg_color, 0.21); - background-color: mix(@menubar_bg_color, @menubar_fg_color, 0.21); - background-image: none; - color: shade(@menubar_fg_color, 1.08); -} - -.menubar .menuitem *:hover { - color: shade(@menubar_fg_color, 1.08); -} - -/************ - * menuitem * - ************/ -GtkTreeMenu .menuitem { - padding: 0; - border-width: 0; -} - -.menuitem, -.menu .menuitem { - -GtkMenuItem-arrow-scaling: 0.5; - - padding: 3px; - border-width: 1px; - border-style: solid; - border-color: transparent; - border-radius: 0; - background-color: transparent; - background-image: none; - color: @menu_fg_color; -} - -.menu .menuitem:active, -.menu .menuitem:hover { - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: @theme_selected_bg_color; - background-image: none; -} - -.menu .menuitem:active, -.menu .menuitem *:active, -.menu .menuitem:hover, -.menu .menuitem *:hover { - color: @theme_selected_fg_color; -} - -.menu .menuitem:insensitive, -.menu .menuitem *:insensitive { - color: mix(@menu_fg_color, @menu_bg_color, 0.5); -} - -.menuitem.check, -.menuitem.radio, -.menuitem.check:hover, -.menuitem.radio:hover, -.menuitem.check:insensitive, -.menuitem.radio:insensitive { - border-style: none; - background-color: transparent; - background-image: none; -} - -.menuitem.check:active, -.menuitem.radio:active { - border-style: none; - background-color: transparent; -} - -.menuitem GtkCalendar:inconsistent { - color: mix(@menu_fg_color, @menu_bg_color, 0.5); -} - -.menuitem GtkCalendar.button { - border-style: none; - background-color: transparent; - background-image: none; -} - -.menuitem .entry { - border-color: shade(@menu_bg_color, 0.7); - background-color: @menu_bg_color; - background-image: none; - color: @menu_fg_color; -} - -.menuitem .entry:active, -.menuitem .entry:focus { - border-color: shade(@menu_bg_color, 0.7); -} - -.menuitem .accelerator { - color: alpha(@menu_fg_color, 0.6); -} - -.menuitem .accelerator:hover { - color: alpha(@theme_selected_fg_color, 0.8); -} - -.menuitem .accelerator:insensitive { - color: alpha(mix(@menu_fg_color, @menu_bg_color, 0.5), 0.6); -} - -GtkModelMenuItem GtkBox GtkImage { - padding-right: 4px; -} - -/************ - * popovers * - ************/ -GtkPopover { - margin: 10px; - padding: 2px; - border-radius: 2px; - border-color: shade(@theme_bg_color, 0.8); - border-width: 1px; - border-style: solid; - background-clip: border-box; - background-color: @theme_bg_color; - color: @theme_fg_color; - box-shadow: 0 2px 3px alpha(black, 0.5); -} - -GtkPopover:backdrop { - box-shadow: none; -} - -GtkPopover.osd { - box-shadow: 0 2px 7px 3px alpha(black, 0.5); -} - -GtkPopover > .list, -GtkPopover > .view, -GtkPopover > .toolbar { - background-color: transparent; -} - -GtkPopover.osd > .toolbar .button { - border-radius: 0; - border-width: 0; - background-image: none; - background-color: transparent; -} - -GtkPopover .separator { - border: 0; - background-color: transparent; - color: alpha(currentColor, 0.5); - font-size: 80%; - font-weight: bold; -} - -.menuitem.button { - color: @theme_fg_color; -} - -.menuitem.button, -.menuitem.button:active, -.menuitem.button:insensitive, -.menuitem.button:active:insensitive { - background-color: transparent; - background-image: none; - border-color: transparent; - border-style: none; - box-shadow: none; - color: @theme_fg_color; -} - -.menuitem.button:active:hover, -.menuitem.button:hover, -.menuitem.button:selected { - border-width: 0; - border-color: transparent; - background-color: @theme_selected_bg_color; - background-image: none; - color: @theme_selected_fg_color; -} - -/************ - * notebook * - ************/ -.notebook { - padding: 0; - border-width: 1px 0 0 0; - border-style: solid; - border-color: shade(@theme_base_color, 0.7); - border-radius: 0; - background-color: @theme_base_color; - background-image: none; - background-clip: border-box; - - -GtkNotebook-initial-gap: 10; - -GtkNotebook-arrow-spacing: 5; - -GtkNotebook-tab-curvature: 0; - -GtkNotebook-tab-overlap: 1; - -GtkNotebook-has-tab-gap: false; -} - -.notebook.frame { - border-width: 1px; -} - -.notebook.header { - border-width: 0; - background-color: shade(@theme_base_color, 0.85); -} - -.notebook.header.frame { - border-color: shade(@theme_base_color, 0.75); -} - -.notebook.header.frame.top { - border-width: 1px 1px 0 1px; -} - -.notebook.header.frame.right { - border-width: 1px 1px 1px 0; -} - -.notebook.header.frame.bottom { - border-width: 0 1px 1px 1px; -} - -.notebook.header.frame.left { - border-width: 1px 0 1px 1px; -} - -.notebook GtkViewport { - border-width: 0; - background-color: @theme_base_color; - color: @theme_text_color; -} - -.notebook tab { - padding: 4px 6px; - border-style: solid; - border-width: 1px; - border-color: transparent; - background-color: transparent; - background-image: none; -} - -.notebook tab:active { - background-color: transparent; - background-image: none; -} - -.notebook tab.top { - border-bottom-width: 2px; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} - -.notebook tab.top:hover { - border-bottom-color: alpha(@theme_selected_bg_color, 0.3); -} - -.notebook tab.top:active { - border-bottom-color: @theme_selected_bg_color; -} - -.notebook tab.right { - border-left-width: 2px; - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} - -.notebook tab.right:hover { - border-left-color: alpha(@theme_selected_bg_color, 0.3); -} - -.notebook tab.right:active { - border-left-color: @theme_selected_bg_color; -} - -.notebook tab.bottom { - border-top-width: 2px; - border-top-right-radius: 0; - border-top-left-radius: 0; -} - -.notebook tab.bottom:hover { - border-top-color: alpha(@theme_selected_bg_color, 0.3); -} - -.notebook tab.bottom:active { - border-top-color: @theme_selected_bg_color; -} - -.notebook tab.left { - border-right-width: 2px; - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} - -.notebook tab.left:hover { - border-right-color: alpha(@theme_selected_bg_color, 0.3); -} - -.notebook tab.left:active { - border-right-color: @theme_selected_bg_color; -} - -.notebook tab GtkLabel { - color: mix(@theme_text_color, @theme_base_color, 0.3); -} - -.notebook .prelight-page, -.notebook .prelight-page GtkLabel { - color: mix (@theme_text_color, @theme_base_color, 0.15); -} - -.notebook .active-page, -.notebook .active-page GtkLabel { - color: @theme_text_color; -} - -.notebook tab.reorderable-page:hover { - background-color: shade(@theme_base_color, 0.85); - border-left: 0; - border-right: 0; - /* using box shadows instead of borders due to slanted edges */ - box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), - inset 1px 0 shade(@theme_base_color, 0.7), inset -1px 0 shade(@theme_base_color, 0.7); -} - -.notebook tab.reorderable-page:active { - background-color: shade(@theme_base_color, 0.90); - border-left: 0; - border-right: 0; - box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), - inset 1px 0 shade(@theme_base_color, 0.75), inset -1px 0 shade(@theme_base_color, 0.75); -} - -/* close button styling */ -.notebook tab .button, -.notebook tab .button:active, -.notebook tab .button:hover { - padding: 1px; - border-width: 1px; - border-radius: 2px; - border-style: solid; - border-color: transparent; - background-image: none; - background-color: transparent; - color: mix(@theme_text_color, @theme_base_color, 0.5); -} - -.notebook tab .button:hover { - color: @theme_text_color; - border-color: shade(@theme_base_color, 0.8); -} - -.notebook tab .button:active, -.notebook tab .button:active:hover { - border-color: shade(@theme_base_color, 0.7); - background-color: shade(@theme_base_color, 0.95); -} - -/****************** - * pane separator * - ******************/ -.pane-separator { - background-color: @theme_bg_color; - color: transparent; -} - -/************************* - * progressbar and scale * - *************************/ -GtkProgressBar { - padding: 0; - border-width: 1px; - border-radius: 2px; - font-size: smaller; - color: alpha(@theme_fg_color, 0.6); -} - -.progressbar, -.progressbar row, -.progressbar row:hover, -.progressbar row:selected, -.progressbar row:selected:focus { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: @theme_selected_bg_color; - background-image: linear-gradient(to bottom, - @theme_selected_bg_color, - @theme_selected_bg_color - ); -} - -.progressbar.vertical { - background-color: @theme_selected_bg_color; - background-image: linear-gradient(to right, - @theme_selected_bg_color, - @theme_selected_bg_color - ); -} - -.trough, -.trough row, -.trough row:hover, -.trough row:selected, -.trough row:selected:focus { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_bg_color, 0.8); - background-color: shade(@theme_bg_color, 1.08); - background-image: none; -} - -.trough.vertical { - background-color: shade(@theme_bg_color, 1.08); - background-image: none; -} - -/* level bars as used for password quality or remaining power */ -GtkLevelBar { - -GtkLevelBar-min-block-width: 34; - -GtkLevelBar-min-block-height: 2; -} - -GtkLevelBar.vertical { - -GtkLevelBar-min-block-width: 2; - -GtkLevelBar-min-block-height: 34; -} - -.level-bar.trough { - padding: 1px; - border-radius: 2px; -} - -.level-bar.fill-block { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: @theme_selected_bg_color; -} - -.level-bar.indicator-continuous.fill-block { - padding: 1px; - border-radius: 2px; -} - -.level-bar.indicator-discrete.fill-block.horizontal { - margin: 0 1px; -} - -.level-bar.indicator-discrete.fill-block.vertical { - margin: 1px 0; -} - -/* discrete indicator border rounding, - uncomment when :nth-child will be working - on the widget - -.level-bar.indicator-discrete.fill-block.horizontal:first-child { - border-radius: 2px 0 0 2px; -} - -.level-bar.indicator-discrete.fill-block.horizontal:last-child { - border-radius: 0 2px 2px 0; -} - -.level-bar.indicator-discrete.fill-block.vertical:first-child { - border-radius: 2px 2px 0 0; -} - -.level-bar.indicator-discrete.fill-block.vertical:last-child { - border-radius: 0 0 2px 2px; -} -*/ - -.level-bar.fill-block.level-high { - border-color: shade(@success_color, 0.85); - background-image: linear-gradient(to bottom, - shade(@success_color, 1.2), - @success_color 75%, - shade(@success_color, 0.95) - ); -} - -.level-bar.fill-block.level-low { - border-color: shade(@warning_color, 0.80); - background-image: linear-gradient(to bottom, - shade(@warning_color, 1.3), - @warning_color 75%, - shade(@warning_color, 0.9) - ); -} - -.level-bar.fill-block.empty-fill-block { - border-color: alpha(@theme_fg_color, 0.1); - background-color: transparent; - background-image: none; -} - -.scale { - -GtkRange-slider-width: 16; - -GtkRange-trough-border: 1; - -GtkScale-slider-length: 16; - - padding: 0; - border-width: 1px; - border-radius: 2px; - outline-offset: -1px; -} - -.scale.slider { - border-radius: 8px; - background-color: shade(@theme_bg_color, 1.08); - background-image: none; - /* we will draw the border using box shadow for now */ - box-shadow: inset 1px 0 shade(@theme_bg_color, 0.8), - inset 0 1px shade(@theme_bg_color, 0.8), - inset -1px 0 shade(@theme_bg_color, 0.8), - inset 0 -1px shade(@theme_bg_color, 0.8); -} - -.scale.slider:hover { - box-shadow: inset 1px 0 shade(@theme_bg_color, 0.7), - inset 0 1px shade(@theme_bg_color, 0.7), - inset -1px 0 shade(@theme_bg_color, 0.7), - inset 0 -1px shade(@theme_bg_color, 0.7); -} - -.scale.slider:insensitive { - background-color: shade(@theme_bg_color, 0.9); - background-image: none; - box-shadow: inset 1px 0 shade(@theme_bg_color, 0.85), - inset 0 1px shade(@theme_bg_color, 0.85), - inset -1px 0 shade(@theme_bg_color, 0.85), - inset 0 -1px shade(@theme_bg_color, 0.85); -} - -.scale.slider.fine-tune:active, -.scale.slider.fine-tune:active:hover, -.scale.slider.fine-tune.horizontal:active, -.scale.slider.fine-tune.horizontal:active:hover { - background-size: 50%; - background-repeat: no-repeat; - background-position: center; -} - -.scale.mark { - border-color: shade(@theme_bg_color, 0.8); -} - -.scale.trough { - margin: 7px 0; - border-color: shade(@theme_bg_color, 0.8); - border-radius: 2px; - background-color: shade(@theme_bg_color, 1.08); - background-image: none; -} - -.scale.trough.vertical { - margin: 0 7px; -} - -.menuitem .scale.highlight.left, -.scale.highlight.left { - border-color: @theme_selected_bg_color; - background-color: @theme_selected_bg_color; - background-image: none; -} - -.menuitem .scale.highlight.left:hover { - border-color: shade(@theme_selected_bg_color, 0.8); - background-color: shade(@theme_selected_bg_color, 0.8); -} - -.scale.highlight.bottom { - border-color: @theme_selected_bg_color; - background-color: @theme_selected_bg_color; - background-image: none; -} - -.scale.trough:insensitive, -.scale.highlight.left:insensitive { - border-color: shade(@theme_bg_color, 0.85); - background-color: shade(@theme_bg_color, 0.9); - background-image: none; -} - -/************* - * scrollbar * - *************/ -.scrollbar { - border-width: 1px; - border-style: solid; - padding: 0; -} - -.scrollbars-junction, -.scrollbar.trough { - border-width: 0; - border-radius: 0; - background-color: @theme_bg_color; - background-image: none; -} - -.scrollbar.button, -.scrollbar.button:active, -.scrollbar.button:active:hover { - border-width: 0; - border-radius: 0; - background-color: transparent; - background-image: none; - color: shade(@theme_bg_color, 0.6); -} - -.scrollbar.slider { - border-width: 1px; - border-color: mix(shade(@theme_bg_color, 0.87), @theme_fg_color, 0.21); - border-radius: 0; - background-color: mix(@theme_bg_color, @theme_fg_color, 0.21); -} - -.scrollbar.slider:hover, -.scrollbar.slider.vertical:hover { - border-color: mix(shade(@theme_bg_color, 0.87), @theme_fg_color, 0.31); - background-color: mix(@theme_bg_color, @theme_fg_color, 0.31); -} - -.scrollbar.slider:active, -.scrollbar.slider.vertical:active { - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: @theme_selected_bg_color; -} - -.scrollbar.slider.fine-tune:prelight:active { - border-width: 2px; - border-color: transparent; -} - -/* overlay scrollbar */ -OsThumb { - color: shade(@theme_bg_color, 0.7); -} - -OsThumb:selected, -OsScrollbar:selected { - background-color: @theme_selected_bg_color; -} - -OsThumb:active, -OsScrollbar:active { - background-color: @theme_selected_bg_color; -} - -OsThumb:insensitive, -OsScrollbar:insensitive { - background-color: shade(@theme_bg_color, 0.9); -} - -/************* - * separator * - *************/ -.sidebar.view.separator, -.view.separator, -.separator { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_bg_color, 0.9); - color: shade(@theme_bg_color, 0.9); -} - -.button .separator, -.button.separator { - border-color: shade(@theme_bg_color, 0.95); -} - -.button .separator:insensitive, -.button.separator:insensitive { - border-color: shade(@theme_bg_color, 0.85); -} - -.primary-toolbar GtkSeparatorToolItem, -.primary-toolbar .separator, -.primary-toolbar .separator:insensitive, -.toolbar GtkSeparatorToolItem, -.toolbar .separator, -.toolbar .separator:insensitive { - -GtkWidget-window-dragging: true; - - border-color: shade(@toolbar_bg_color, 0.95); - color: shade(@toolbar_bg_color, 0.95); -} - -.header-bar GtkSeparatorToolItem, -.header-bar .separator, -.header-bar .separator:insensitive, -.titlebar GtkSeparatorToolItem, -.titlebar .separator, -.titlebar .separator:insensitive { - -GtkWidget-window-dragging: true; - - border-color: shade(@titlebar_bg_color, 0.95); - color: shade(@titlebar_bg_color, 0.95); -} - -.primary-toolbar .button .separator, -.primary-toolbar .button.separator, -.toolbar .button .separator, -.toolbar .button.separator { - border-color: shade(@toolbar_bg_color, 0.95); -} - -.header-bar .button .separator, -.header-bar .button.separator, -.titlebar .button .separator, -.titlebar .button.separator { - border-color: shade(@titlebar_bg_color, 0.95); -} - -.primary-toolbar .button .separator:insensitive, -.primary-toolbar .button.separator:insensitive, -.toolbar .button .separator:insensitive, -.toolbar .button.separator:insensitive { - border-color: shade(@toolbar_bg_color, 0.85); -} - -.header-bar .button .separator:insensitive, -.header-bar .button.separator:insensitive, -.titlebar .button .separator:insensitive, -.titlebar .button.separator:insensitive { - border-color: shade(@titlebar_bg_color, 0.85); -} - -.menuitem.separator { - -GtkMenuItem-horizontal-padding: 0; - -GtkWidget-separator-height: 1; - - border-style: none; - color: shade(@menu_bg_color, 0.9); -} - -GtkComboBox .separator { - /* always disable separators */ - -GtkWidget-wide-separators: true; - -GtkWidget-horizontal-separator: 0; - -GtkWidget-vertical-separator: 0; - - border-style: none; -} - -/*********** - * sidebar * - ***********/ -.sidebar, -.sidebar.view, -.sidebar .view, -.sidebar GtkScrolledWindow { - background-color: @theme_bg_color; - color: mix(@theme_fg_color, @theme_bg_color, 0.1); -} - -.sidebar row:selected, -.sidebar row:selected:hover, -.sidebar row:selected:focus, -.sidebar .view row:selected, -.sidebar .view row:selected:hover, -.sidebar .view row:selected:focus { - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: @theme_selected_bg_color; - background-image: none; - color: @theme_selected_fg_color; -} - -.sidebar row:prelight, -.sidebar .view row:prelight { - border-color: shade(@theme_bg_color, 1.05); - background-color: shade(@theme_bg_color, 1.05); - background-image: none; - color: @theme_fg_color; -} - -.sidebar row:selected:prelight, -.sidebar .view row:selected:prelight { - border-color: shade(@theme_selected_bg_color, 1.05); - background-color: shade(@theme_selected_bg_color, 1.05); - background-image: none; - color: @theme_selected_fg_color; -} - -.sidebar .frame { - border-width: 0; -} - -/************** - * spinbutton * - **************/ -.spinbutton .button { - color: mix(@theme_text_color, @theme_base_color, 0.4); - padding: 2px 4px; - border-width: 0; - border-radius: 0; - border-style: none; - background-color: transparent; - background-image: none; - box-shadow: inset 1px 0 shade(@theme_base_color, 0.9); -} - -.spinbutton .button:insensitive { - color: mix(@theme_text_color, @theme_base_color, 0.7); - box-shadow: inset 1px 0 shade(@theme_bg_color, 0.95); -} - -.spinbutton .button:active, -.spinbutton .button:hover { - color: @theme_fg_color; -} - -.spinbutton .button:first-child { - border-radius: 2px 0 0 2px; - box-shadow: none; -} - -.spinbutton .button:last-child { - border-radius: 0 2px 2px 0; -} - -.spinbutton .button:dir(rtl) { - box-shadow: inset -1px 0 shade(@theme_base_color, 0.9); -} - -.spinbutton.vertical .button { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_bg_color, 0.8); - border-radius: 2px; - background-color: shade(@theme_bg_color, 1.08); - background-image: none; - color: @theme_fg_color; - box-shadow: none; -} - -.spinbutton.vertical .button:hover { - border-color: shade(@theme_bg_color, 0.7); - background-color: shade(@theme_bg_color, 1.10); - background-image: none; -} - -.spinbutton.vertical .button:active { - border-color: shade(@theme_bg_color, 0.8); - background-color: shade(@theme_bg_color, 0.95); - background-image: none; -} - -.spinbutton.vertical .button:active:hover { - border-color: shade(@theme_bg_color, 0.7); -} - -.spinbutton.vertical .button:focus, -.spinbutton.vertical .button:hover:focus, -.spinbutton.vertical .button:active:focus, -.spinbutton.vertical .button:active:hover:focus { - border-color: shade(@theme_bg_color, 0.7); -} - -.spinbutton.vertical .button:insensitive { - border-color: shade(@theme_bg_color, 0.85); - background-color: shade(@theme_bg_color, 0.9); - background-image: none; -} - -.spinbutton.vertical .button:first-child { - border-width: 1px; - border-bottom-width: 0; - border-radius: 2px; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} - -.spinbutton.vertical .button:last-child { - border-width: 1px; - border-top-width: 0; - border-radius: 2px; - border-top-left-radius: 0; - border-top-right-radius: 0; -} - -.spinbutton.vertical.entry { - border-width: 1px; - border-style: solid; - border-radius: 0; -} - -/*********** - * spinner * - ***********/ -@keyframes spinner { - 00.0% { background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(currentColor), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.70)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.40)), to(transparent)); } - - 10.0% { background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.80)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.90)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.60)), to(transparent)); } - - 20.0% { background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.60)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.90)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.80)), to(transparent)); } - - 30.0% { background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.40)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.70)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(currentColor), to(transparent)); } - - 40.0% { background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.20)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.50)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.80)), to(transparent)); } - - 50.0% { background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(transparent), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.30)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.60)), to(transparent)); } - - 60.0% { background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.20)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.10)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.40)), to(transparent)); } - - 70.0% { background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.40)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.10)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.20)), to(transparent)); } - - 80.0% { background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.60)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.30)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(transparent), to(transparent)); } - - 90.0% { background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.80)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.50)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.20)), to(transparent)); } - - 100% { background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(currentColor), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.70)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.40)), to(transparent)); } -} - -.spinner { - background-color: transparent; - background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(currentColor), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(currentColor), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(currentColor), to(transparent)); - - background-position: 0% 70%, 33% 70%, 70% 70%; - background-size: 30% 30%; - background-repeat: no-repeat; -} - -.spinner:active { - background-image: -gtk-gradient(radial, center center, 0, center center, 0.5, to(currentColor), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.70)), to(transparent)), - -gtk-gradient(radial, center center, 0, center center, 0.5, to(alpha(currentColor, 0.40)), to(transparent)); - - animation: spinner 1s infinite linear; -} - -.menu.spinner, -.menu .spinner, -.menu .spinner:hover, -.primary-toolbar .spinner { - color: @theme_selected_bg_color; - border: none; - box-shadow: none; -} - -/************* - * statusbar * - *************/ -GtkStatusbar { - padding: 4px; - color: @theme_fg_color; -} - -/********** - * switch * - **********/ -GtkSwitch { - padding: 0; - border-radius: 2px; - font: bold condensed; - outline-offset: -4px; -} - -GtkSwitch.slider { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_bg_color, 0.8); - background-color: shade(@theme_bg_color, 1.08); - background-image: none; -} - -GtkSwitch.slider:insensitive { - border-color: shade(@theme_bg_color, 0.85); - background-color: shade(@theme_bg_color, 0.9); - background-image: none; -} - -GtkSwitch.trough { - border-color: shade(@theme_bg_color, 0.8); - background-color: shade(@theme_bg_color, 0.95); - background-image: none; - color: @theme_fg_color; -} - -GtkSwitch.trough:active { - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: @theme_selected_bg_color; - background-image: none; - color: @theme_selected_fg_color; -} - -GtkSwitch.trough:insensitive { - border-color: shade(@theme_bg_color, 0.85); - background-color: shade(@theme_bg_color, 0.9); - background-image: none; - color: mix(@theme_fg_color, @theme_bg_color, 0.5); -} - -/************ - * textview * - ************/ -GtkTextView { - background-color: @theme_base_color; - color: @theme_text_color; -} - -/***************** - * color chooser * - *****************/ -GtkColorSwatch, -GtkColorSwatch:selected { - border-width: 1px; - border-style: solid; - border-color: alpha(black, 0.1); - border-radius: 1px; - background-color: transparent; - background-clip: border-box; -} - -GtkColorSwatch:hover, -GtkColorSwatch:selected:hover { - border-color: alpha(black, 0.3); -} - -GtkColorSwatch.color-dark:hover { -} - -GtkColorSwatch.color-light:hover { -} - -GtkColorSwatch.color-light:selected:hover, -GtkColorSwatch.color-dark:selected:hover { - background-image: none; -} - -GtkColorSwatch.left, -GtkColorSwatch:first-child { - border-top-left-radius: 2px; - border-bottom-left-radius: 2px; -} - -GtkColorSwatch.right, -GtkColorSwatch:last-child { - border-top-right-radius: 2px; - border-bottom-right-radius: 2px; -} - -GtkColorSwatch:only-child { - border-radius: 2px; -} - -GtkColorSwatch.top { - border-top-left-radius: 2px; - border-top-right-radius: 2px; -} - -GtkColorSwatch.bottom { - border-bottom-left-radius: 2px; - border-bottom-right-radius: 2px; -} - -GtkColorChooserWidget #add-color-button { - background-clip: padding-box; - border-color: alpha(black, 0.1); - background-color: shade(@theme_bg_color, 0.95); - color: @theme_fg_color; -} - -GtkColorChooserWidget #add-color-button:hover { - border-color: alpha(black, 0.3); - background-color: shade(@theme_bg_color, 0.90); - color: @theme_fg_color; -} - -.color-active-badge, -.color-active-badge:selected { - border-width: 1px; - border-style: solid; - border-width: 2px; - background-color: transparent; -} - -.color-active-badge.color-light, -.color-active-badge.color-light:hover { - border-color: alpha(black, 0.3); - color: alpha(black, 0.3); -} - -.color-active-badge.color-dark, -.color-active-badge.color-dark:hover { - border-color: alpha(white, 0.3); - color: alpha(white, 0.3); -} - -GtkColorEditor GtkColorSwatch { - border-radius: 2px; -} - -GtkColorEditor GtkColorSwatch.color-dark:hover, -GtkColorEditor GtkColorSwatch.color-light:hover { - background-image: none; - border-color: alpha(black, 0.3); -} - -GtkColorButton.button { - padding: 2px; -} - -/************** - * header-bar * - **************/ -.header-bar { - padding: 4px; - border-width: 0 0 1px 0; - border-style: solid; - border-color: shade(@titlebar_bg_color, 0.8); - background-color: @titlebar_bg_color; - background-image: none; - color: @titlebar_fg_color; -} - -.header-bar .button.text-button { - padding: 4px; -} - -.header-bar .button.image-button { - padding: 6px; -} - -.header-bar .title { - font: bold; - padding: 0 12px; -} - -.header-bar .subtitle { - font: smaller; - padding: 0 12px; -} - -.header-bar GtkComboBox, -.header-bar .button { - border-color: shade(@titlebar_bg_color, 0.8); - background-color: shade(@titlebar_bg_color, 1.08); - background-image: none; - color: @titlebar_fg_color; -} - -.header-bar .button:hover { - border-color: shade(@titlebar_bg_color, 0.7); - background-color: shade(@titlebar_bg_color, 1.10); - background-image: none; -} - -.header-bar .button:active { - border-color: shade(@titlebar_bg_color, 0.8); - background-color: shade(@titlebar_bg_color, 0.95); - background-image: none; -} - -.header-bar .button:active:hover { - border-color: shade(@titlebar_bg_color, 0.7); -} - -.header-bar .button:focus, -.header-bar .button:hover:focus, -.header-bar .button:active:focus, -.header-bar .button:active:hover:focus { - border-color: shade(@titlebar_bg_color, 0.7); -} - -.header-bar .button:insensitive { - border-color: shade(@titlebar_bg_color, 0.85); - background-color: shade(@titlebar_bg_color, 0.9); - background-image: none; -} - -.header-bar .button:active *:insensitive { - border-color: shade(@titlebar_bg_color, 0.75); - background-color: shade(@titlebar_bg_color, 0.80); - background-image: none; -} - -.header-bar .entry { - border-color: shade(@titlebar_bg_color, 0.8); -} - -.header-bar .entry:active, -.header-bar .entry:focus { - border-color: shade(@titlebar_bg_color, 0.7); -} - -/*********** - * toolbar * - ***********/ -.toolbar { - padding: 4px; - border-style: none; - background-color: @toolbar_bg_color; - background-image: none; - color: @toolbar_fg_color; -} - -.toolbar .button { - padding: 2px; -} - -.toolbar .button.text-button { - padding: 2px 4px; -} - -.toolbar .button.image-button { - padding: 4px 3px 3px 4px; -} - -.toolbar:insensitive { - background-color: shade(@toolbar_bg_color, 0.9); - color: mix(@toolbar_fg_color, @toolbar_bg_color, 0.5); -} - -/* menubar toolbars */ -.toolbar.menubar { - -GtkToolbar-button-relief: normal; -} - -/******************* - * primary-toolbar * - *******************/ -.primary-toolbar, -.primary-toolbar .toolbar, -.primary-toolbar.toolbar { - -GtkWidget-window-dragging: true; - - padding: 4px; - border-width: 0 0 1px 0; - border-style: solid; - border-color: shade(@toolbar_bg_color, 0.8); - background-color: @toolbar_bg_color; - background-image: none; - color: @toolbar_fg_color; -} - -.primary-toolbar GtkComboBox, -.primary-toolbar .button { - padding: 2px; - border-width: 1px; - border-color: transparent; - border-radius: 2px; - background-color: transparent; - background-image: none; - color: @toolbar_fg_color; -} - -.primary-toolbar .raised .button, -.primary-toolbar .raised.button, -.toolbar GtkComboBox, -.toolbar .button { - border-color: shade(@toolbar_bg_color, 0.8); - background-color: shade(@toolbar_bg_color, 1.08); - background-image: none; - color: @toolbar_fg_color; -} - -.primary-toolbar .button:hover, -.toolbar .button:hover { - border-color: shade(@toolbar_bg_color, 0.7); - background-color: shade(@toolbar_bg_color, 1.10); - background-image: none; -} - -.primary-toolbar .button:active, -.toolbar .button:active { - border-color: shade(@toolbar_bg_color, 0.8); - background-color: shade(@toolbar_bg_color, 0.95); - background-image: none; -} - -.primary-toolbar .button:active:hover, -.toolbar .button:active:hover { - border-color: shade(@toolbar_bg_color, 0.7); -} - -.primary-toolbar .button:focus, -.primary-toolbar .button:hover:focus, -.primary-toolbar .button:active:focus, -.primary-toolbar .button:active:hover:focus, -.toolbar .button:focus, -.toolbar .button:hover:focus, -.toolbar .button:active:focus, -.toolbar .button:active:hover:focus { - border-color: shade(@toolbar_bg_color, 0.7); -} - -.primary-toolbar .button:insensitive, -.toolbar .button:insensitive { - border-color: shade(@toolbar_bg_color, 0.85); - background-color: shade(@toolbar_bg_color, 0.9); - background-image: none; -} - -.primary-toolbar .button:active *:insensitive, -.toolbar .button:active *:insensitive { - border-color: shade(@toolbar_bg_color, 0.75); - background-color: shade(@toolbar_bg_color, 0.80); - background-image: none; -} - -.primary-toolbar .entry, -.toolbar .entry { - border-color: shade(@toolbar_bg_color, 0.8); -} - -.primary-toolbar .entry:active, -.primary-toolbar .entry:focus, -.toolbar .entry:active, -.toolbar .entry:focus { - border-color: shade(@toolbar_bg_color, 0.7); -} - -/* inline-toolbar */ -.inline-toolbar.toolbar { - -GtkToolbar-button-relief: normal; - - padding: 1px; - border-width: 1px; - border-style: solid; - border-color: shade(@theme_bg_color, 0.8); - border-radius: 0; - background-color: @theme_bg_color; - background-image: none; -} - -.inline-toolbar.toolbar:last-child { - border-width: 0 1px 1px 1px; - border-color: shade(@theme_bg_color, 0.8); - border-radius: 0; -} - -.inline-toolbar.toolbar .button { - padding: 1px; - border-width: 1px 0 1px 1px; - border-style: solid; - border-color: shade(@theme_bg_color, 0.8); - border-radius: 0; - background-color: shade(@theme_bg_color, 1.08); - background-image: none; - color: @theme_fg_color; -} - -.inline-toolbar.toolbar .button:hover { - border-color: shade(@theme_bg_color, 0.7); - background-color: shade(@theme_bg_color, 1.10); - background-image: none; -} - -.inline-toolbar.toolbar .button:active { - border-color: shade(@theme_bg_color, 0.8); - background-color: shade(@theme_bg_color, 0.95); - background-image: none; -} - -.inline-toolbar.toolbar .button:active:hover { - border-color: shade(@theme_bg_color, 0.7); -} - -.inline-toolbar.toolbar .button:focus, -.inline-toolbar.toolbar .button:hover:focus, -.inline-toolbar.toolbar .button:active:focus, -.inline-toolbar.toolbar .button:active:hover:focus { - border-color: shade(@theme_bg_color, 0.7); -} - -.inline-toolbar.toolbar .button:insensitive, -.inline-toolbar.toolbar GtkToolButton .button:insensitive { - border-color: shade(@theme_bg_color, 0.85); - background-color: shade(@theme_bg_color, 0.9); - background-image: none; -} - -.inline-toolbar.toolbar .button:active *:insensitive -.inline-toolbar.toolbar GtkToolButton .button:active *:insensitive { - border-color: shade(@theme_bg_color, 0.75); - background-color: shade(@theme_bg_color, 0.80); - background-image: none; -} - -/****************** - * linked buttons * - *****************/ -/* set up shadows for visual separation */ -.linked .button, -.inline-toolbar.toolbar .button, -.inline-toolbar.toolbar GtkToolButton .button, -.inline-toolbar.toolbar GtkToolButton > .button { - box-shadow: inset -1px 0 shade(@theme_bg_color, 0.9); -} - -.linked .button:active, -.inline-toolbar.toolbar .button:active, -.inline-toolbar.toolbar GtkToolButton .button:active, -.inline-toolbar.toolbar GtkToolButton > .button:active { - box-shadow: inset -1px 0 shade(@theme_bg_color, 0.9), - inset 1px 0 alpha(@dark_shadow, 0.07), - inset 0 1px alpha(@dark_shadow, 0.08), - inset 0 -1px alpha(@dark_shadow, 0.05); -} - -.linked .button:insensitive, -.inline-toolbar.toolbar .button:insensitive, -.inline-toolbar.toolbar GtkToolButton .button:insensitive, -.inline-toolbar.toolbar GtkToolButton > .button:insensitive { - box-shadow: inset -1px 0 shade(@theme_bg_color, 0.85); -} - -/* remove box shadow from last-child and only-child */ -.linked .button:last-child, -.linked .button:only-child, -.linked .button:insensitive:last-child, -.linked .button:insensitive:only-child, -.linked .button:active *:insensitive:last-child, -.linked .button:active *:insensitive:only-child, -.inline-toolbar.toolbar .button:last-child, -.inline-toolbar.toolbar .button:only-child, -.inline-toolbar.toolbar .button:insensitive:last-child, -.inline-toolbar.toolbar .button:insensitive:only-child, -.inline-toolbar.toolbar .button:active *:insensitive:last-child, -.inline-toolbar.toolbar .button:active *:insensitive:only-child, -.inline-toolbar.toolbar GtkToolButton:last-child > .button, -.inline-toolbar.toolbar GtkToolButton:only-child > .button, -.inline-toolbar.toolbar GtkToolButton:last-child > .button:insensitive, -.inline-toolbar.toolbar GtkToolButton:only-child > .button:insensitive, -.inline-toolbar.toolbar GtkToolButton:last-child > .button:active *:insensitive, -.inline-toolbar.toolbar GtkToolButton:only-child > .button:active *:insensitive { - box-shadow: none; -} - -/* add back the inset shadow effect */ -.linked .button:active:last-child, -.linked .button:active:only-child, -.inline-toolbar.toolbar .button:active:last-child, -.inline-toolbar.toolbar .button:active:only-child, -.inline-toolbar.toolbar GtkToolButton:last-child > .button:active, -.inline-toolbar.toolbar GtkToolButton:only-child > .button:active { - box-shadow: inset 1px 0 alpha(@dark_shadow, 0.07), - inset 0 1px alpha(@dark_shadow, 0.08), - inset -1px 0 alpha(@dark_shadow, 0.07); -} - -/* middle button */ -.linked .entry, -.linked .button, -.linked .button:active, -.linked .button:active:hover, -.linked .button:insensitive, -.inline-toolbar.toolbar .button, -.inline-toolbar.toolbar .button:active, -.inline-toolbar.toolbar .button:insensitive, -.inline-toolbar.toolbar GtkToolButton .button, -.inline-toolbar.toolbar GtkToolButton .button:active, -.inline-toolbar.toolbar GtkToolButton .button:insensitive { - border-width: 1px; - border-radius: 0; - border-right-width: 0; - border-left-width: 0; -} - -/*leftmost button */ -.linked .entry:first-child, -.linked .button:first-child, -.linked .button:active:first-child, -.linked .button:active:hover:first-child, -.linked .button:insensitive:first-child, -.inline-toolbar.toolbar .button:first-child, -.inline-toolbar.toolbar .button:active:first-child, -.inline-toolbar.toolbar .button:insensitive:first-child, -.inline-toolbar.toolbar GtkToolButton:first-child .button, -.inline-toolbar.toolbar GtkToolButton:first-child .button:active, -.inline-toolbar.toolbar GtkToolButton:first-child .button:insensitive { - border-width: 1px; - border-radius: 2px; - border-right-width: 0; - border-bottom-right-radius: 0; - border-top-right-radius: 0; -} - -/* rightmost button */ -.linked .entry:last-child, -.linked .button:last-child, -.linked .button:active:last-child, -.linked .button:active:hover:last-child, -.linked .button:insensitive:last-child, -.inline-toolbar.toolbar .button:last-child, -.inline-toolbar.toolbar .button:active:last-child, -.inline-toolbar.toolbar .button:insensitive:last-child, -.inline-toolbar.toolbar GtkToolButton:last-child .button, -.inline-toolbar.toolbar GtkToolButton:last-child .button:active, -.inline-toolbar.toolbar GtkToolButton:last-child .button:insensitive { - border-width: 1px; - border-radius: 2px; - border-left-width: 0; - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} - -/* linked single button */ -.linked .entry:only-child, -.linked .button:only-child, -.linked .button:active:only-child, -.linked .button:active:hover:only-child, -.linked .button:insensitive:only-child, -.inline-toolbar.toolbar .button:only-child, -.inline-toolbar.toolbar .button:active:only-child, -.inline-toolbar.toolbar .button:insensitive:only-child, -.inline-toolbar.toolbar GtkToolButton:only-child .button, -.inline-toolbar.toolbar GtkToolButton:only-child .button:active, -.inline-toolbar.toolbar GtkToolButton:only-child .button:insensitive { - border-width: 1px; - border-radius: 2px; -} - -/* linked button shadows (vertical) */ -.linked.vertical .button, -.inline-toolbar.toolbar.vertical .button, -.inline-toolbar.toolbar.vertical GtkToolButton > .button { - box-shadow: inset 0 -1px shade(@theme_bg_color, 0.9); -} - -.linked.vertical .button:active, -.inline-toolbar.toolbar.vertical .button:active, -.inline-toolbar.toolbar.vertical GtkToolButton > .button:active { - box-shadow: inset 0 -1px shade(@theme_bg_color, 0.9), - inset 1px 0 alpha(@dark_shadow, 0.07), - inset 0 1px alpha(@dark_shadow, 0.08), - inset -1px 0 alpha(@dark_shadow, 0.07); -} - -.linked.vertical .button:insensitive, -.inline-toolbar.toolbar.vertical .button:insensitive, -.inline-toolbar.toolbar.vertical GtkToolButton > .button:insensitive { - box-shadow: inset 0 -1px shade(@theme_bg_color, 0.85); -} - -/* remove box shadow from last-child and only-child */ -.linked.vertical .button:last-child, -.linked.vertical .button:only-child, -.linked.vertical .button:insensitive:last-child, -.linked.vertical .button:insensitive:only-child, -.linked.vertical .button:active *:insensitive:last-child, -.linked.vertical .button:active *:insensitive:only-child, -.inline-toolbar.toolbar.vertical .button:last-child, -.inline-toolbar.toolbar.vertical .button:only-child, -.inline-toolbar.toolbar.vertical .button:insensitive:last-child, -.inline-toolbar.toolbar.vertical .button:insensitive:only-child, -.inline-toolbar.toolbar.vertical .button:active *:insensitive:last-child, -.inline-toolbar.toolbar.vertical .button:active *:insensitive:only-child, -.inline-toolbar.toolbar.vertical GtkToolButton:last-child > .button, -.inline-toolbar.toolbar.vertical GtkToolButton:only-child > .button, -.inline-toolbar.toolbar.vertical GtkToolButton:last-child > .button:insensitive, -.inline-toolbar.toolbar.vertical GtkToolButton:only-child > .button:insensitive, -.inline-toolbar.toolbar.vertical GtkToolButton:last-child > .button:active *:insensitive, -.inline-toolbar.toolbar.vertical GtkToolButton:only-child > .button:active *:insensitive { - box-shadow: none; -} - -/* add back the inset shadow effect */ -.linked.vertical .button:active:last-child, -.linked.vertical .button:active:only-child, -.inline-toolbar.toolbar.vertical .button:active:last-child, -.inline-toolbar.toolbar.vertical .button:active:only-child, -.inline-toolbar.toolbar.vertical GtkToolButton:last-child > .button:active, -.inline-toolbar.toolbar.vertical GtkToolButton:only-child > .button:active { - box-shadow: inset 1px 0 alpha(@dark_shadow, 0.07), - inset 0 1px alpha(@dark_shadow, 0.08), - inset -1px 0 alpha(@dark_shadow, 0.07); -} - -/* middle button (vertical) */ -.linked.vertical .entry, -.linked.vertical .button, -.linked.vertical .button:active, -.linked.vertical .button:active:hover, -.linked.vertical .button:insensitive { - border-width: 1px; - border-radius: 0; - border-top-width: 0; - border-bottom-width: 0; -} - -/* top button (vertical) */ -.linked.vertical .entry:first-child, -.linked.vertical .button:first-child, -.linked.vertical .button:active:first-child, -.linked.vertical .button:active:hover:first-child, -.linked.vertical .button:insensitive:first-child { - border-width: 1px; - border-radius: 2px; - border-bottom-width: 0; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} - -/* bottom button (vertical) */ -.linked.vertical .entry:last-child, -.linked.vertical .button:last-child, -.linked.vertical .button:active:last-child, -.linked.vertical .button:active:hover:last-child, -.linked.vertical .button:insensitive:last-child { - border-width: 1px; - border-radius: 2px; - border-top-width: 0; - border-top-left-radius: 0; - border-top-right-radius: 0; -} - -/* linked single button (vertical) */ -.linked.vertical .entry:only-child, -.linked.vertical .button:only-child, -.linked.vertical .button:active:only-child, -.linked.vertical .button:active:hover:only-child, -.linked.vertical .button:insensitive:only-child { - border-width: 1px; - border-radius: 2px; -} - -/* linked toolbar buttons */ -.primary-toolbar .button.raised.linked, -.primary-toolbar .raised.linked .button, -.toolbar .button.raised.linked, -.toolbar .raised.linked .button, -.toolbar .linked .button { - box-shadow: inset -1px 0 shade(@toolbar_bg_color, 0.9); -} - -.primary-toolbar .button.raised.linked:active, -.primary-toolbar .raised.linked .button:active, -.toolbar .button.raised.linked:active, -.toolbar .raised.linked .button:active, -.toolbar .linked .button:active { - box-shadow: inset -1px 0 shade(@toolbar_bg_color, 0.9), - inset 1px 0 alpha(@dark_shadow, 0.07), - inset 0 1px alpha(@dark_shadow, 0.08), - inset 0 -1px alpha(@dark_shadow, 0.05); -} - -.primary-toolbar .button.raised.linked:insensitive, -.primary-toolbar .raised.linked .button:insensitive, -.toolbar .button.raised.linked:insensitive, -.toolbar .raised.linked .button:insensitive, -.toolbar .linked .button:insensitive { - box-shadow: inset -1px 0 shade(@toolbar_bg_color, 0.85); -} - -/* remove box shadow from last-child and only-child */ -.primary-toolbar .button.raised.linked:last-child, -.primary-toolbar .button.raised.linked:only-child, -.primary-toolbar .button:insensitive.raised.linked:last-child, -.primary-toolbar .button:insensitive.raised.linked:only-child, -.primary-toolbar .button:active *:insensitive.raised.linked:last-child, -.primary-toolbar .button:active *:insensitive.raised.linked:only-child, -.primary-toolbar .raised.linked .button:last-child, -.primary-toolbar .raised.linked .button:only-child, -.primary-toolbar .raised.linked .button:insensitive:last-child, -.primary-toolbar .raised.linked .button:insensitive:only-child, -.primary-toolbar .raised.linked .button:active *:insensitive:last-child, -.primary-toolbar .raised.linked .button:active *:insensitive:only-child, -.toolbar .button.raised.linked:last-child, -.toolbar .button.raised.linked:only-child, -.toolbar .button:insensitive.raised.linked:last-child, -.toolbar .button:insensitive.raised.linked:only-child, -.toolbar .button:active *:insensitive.raised.linked:last-child, -.toolbar .button:active *:insensitive.raised.linked:only-child, -.toolbar .raised.linked .button:last-child, -.toolbar .raised.linked .button:only-child, -.toolbar .raised.linked .button:insensitive:last-child, -.toolbar .raised.linked .button:insensitive:only-child, -.toolbar .raised.linked .button:active *:insensitive:last-child, -.toolbar .raised.linked .button:active *:insensitive:only-child, -.toolbar .linked .button:last-child, -.toolbar .linked .button:only-child, -.toolbar .linked .button:insensitive:last-child, -.toolbar .linked .button:insensitive:only-child, -.toolbar .linked .button:active *:insensitive:last-child, -.toolbar .linked .button:active *:insensitive:only-child { - box-shadow: none; -} - -/* add back the inset shadow effect */ -.primary-toolbar .button:active.raised.linked:last-child, -.primary-toolbar .button:active.raised.linked:only-child, -.primary-toolbar .raised.linked .button:active:last-child, -.primary-toolbar .raised.linked .button:active:only-child, -.toolbar .button:active.raised.linked:last-child, -.toolbar .button:active.raised.linked:only-child, -.toolbar .raised.linked .button:active:last-child, -.toolbar .raised.linked .button:active:only-child, -.toolbar .linked .button:active:last-child, -.toolbar .linked .button:active:only-child { - box-shadow: inset 1px 0 alpha(@dark_shadow, 0.07), - inset 0 1px alpha(@dark_shadow, 0.08), - inset -1px 0 alpha(@dark_shadow, 0.07); -} - -/* middle button */ -.primary-toolbar .button.raised.linked, -.primary-toolbar .button.raised.linked:active, -.primary-toolbar .button.raised.linked:insensitive, -.primary-toolbar .raised.linked .button, -.primary-toolbar .raised.linked .button:active, -.primary-toolbar .raised.linked .button:insensitive, -.toolbar .button.raised.linked, -.toolbar .button.raised.linked:active, -.toolbar .button.raised.linked:insensitive, -.toolbar .raised.linked .button, -.toolbar .raised.linked .button:active, -.toolbar .raised.linked .button:insensitive, -.toolbar .linked .button, -.toolbar .linked .button:active, -.toolbar .linked .button:insensitive { - border-width: 1px; - border-radius: 0; - border-right-width: 0; - border-left-width: 0; -} - -/* leftmost button */ -.primary-toolbar .button.raised.linked:first-child, -.primary-toolbar .button.raised.linked:active:first-child, -.primary-toolbar .button.raised.linked:insensitive:first-child, -.primary-toolbar .raised.linked .button:first-child, -.primary-toolbar .raised.linked .button:active:first-child, -.primary-toolbar .raised.linked .button:insensitive:first-child, -.toolbar .button.raised.linked:first-child, -.toolbar .button.raised.linked:active:first-child, -.toolbar .button.raised.linked:insensitive:first-child, -.toolbar .raised.linked .button:first-child, -.toolbar .raised.linked .button:active:first-child, -.toolbar .raised.linked .button:insensitive:first-child, -.toolbar .linked .button:first-child, -.toolbar .linked .button:active:first-child { - border-width: 1px; - border-radius: 2px; - border-right-width: 0; - border-bottom-right-radius: 0; - border-top-right-radius: 0; -} - -/* rightmost button */ -.primary-toolbar .button.raised.linked:last-child, -.primary-toolbar .button.raised.linked:active:last-child, -.primary-toolbar .button.raised.linked:insensitive:last-child, -.primary-toolbar .raised.linked .button:last-child, -.primary-toolbar .raised.linked .button:active:last-child, -.primary-toolbar .raised.linked .button:insensitive:last-child, -.toolbar .button.raised.linked:last-child, -.toolbar .button.raised.linked:active:last-child, -.toolbar .button.raised.linked:insensitive:last-child, -.toolbar .raised.linked .button:last-child, -.toolbar .raised.linked .button:active:last-child, -.toolbar .raised.linked .button:insensitive:last-child, -.toolbar .linked .button:last-child, -.toolbar .linked .button:active:last-child, -.toolbar .linked .button:insensitive:last-child { - border-width: 1px; - border-radius: 2px; - border-left-width: 0; - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} - -/* linked single button */ -.primary-toolbar .button.raised.linked:only-child, -.primary-toolbar .button.raised.linked:active:only-child, -.primary-toolbar .button.raised.linked:insensitive:only-child, -.primary-toolbar .raised.linked .button:only-child, -.primary-toolbar .raised.linked .button:active:only-child, -.primary-toolbar .raised.linked .button:insensitive:only-child, -.toolbar .button.raised.linked:only-child, -.toolbar .button.raised.linked:active:only-child, -.toolbar .button.raised.linked:insensitive:only-child, -.toolbar .raised.linked .button:only-child, -.toolbar .raised.linked .button:active:only-child, -.toolbar .raised.linked .button:insensitive:only-child, -.toolbar .linked .button:only-child, -.toolbar .linked .button:active:only-child, -.toolbar .linked .button:insensitive:only-child { - border-width: 1px; - border-radius: 2px; -} - -/* linked titlebar buttons */ -.header-bar .button.raised.linked, -.header-bar .raised.linked .button, -.header-bar .linked .button { - box-shadow: inset -1px 0 shade(@titlebar_bg_color, 0.9); -} - -.header-bar .button.raised.linked:active, -.header-bar .raised.linked .button:active, -.header-bar .linked .button:active { - box-shadow: inset -1px 0 shade(@titlebar_bg_color, 0.9), - inset 1px 0 alpha(@dark_shadow, 0.07), - inset 0 1px alpha(@dark_shadow, 0.08), - inset 0 -1px alpha(@dark_shadow, 0.05); -} - -.header-bar .button.raised.linked:insensitive, -.header-bar .raised.linked .button:insensitive, -.header-bar .linked .button:insensitive { - box-shadow: inset -1px 0 shade(@titlebar_bg_color, 0.85); -} - -/* remove box shadow from last-child and only-child */ -.header-bar .button.raised.linked:last-child, -.header-bar .button.raised.linked:only-child, -.header-bar .button:insensitive.raised.linked:last-child, -.header-bar .button:insensitive.raised.linked:only-child, -.header-bar .button:active *:insensitive.raised.linked:last-child, -.header-bar .button:active *:insensitive.raised.linked:only-child, -.header-bar .raised.linked .button:last-child, -.header-bar .raised.linked .button:only-child, -.header-bar .raised.linked .button:insensitive:last-child, -.header-bar .raised.linked .button:insensitive:only-child, -.header-bar .raised.linked .button:active *:insensitive:last-child, -.header-bar .raised.linked .button:active *:insensitive:only-child, -.header-bar .linked .button:last-child, -.header-bar .linked .button:only-child, -.header-bar .linked .button:insensitive:last-child, -.header-bar .linked .button:insensitive:only-child, -.header-bar .linked .button:active *:insensitive:last-child, -.header-bar .linked .button:active *:insensitive:only-child { - box-shadow: none; -} - -/* add back the inset shadow effect */ -.header-bar .button:active.raised.linked:last-child, -.header-bar .button:active.raised.linked:only-child, -.header-bar .raised.linked .button:active:last-child, -.header-bar .raised.linked .button:active:only-child, -.header-bar .linked .button:active:last-child, -.header-bar .linked .button:active:only-child { - box-shadow: inset 1px 0 alpha(@dark_shadow, 0.07), - inset 0 1px alpha(@dark_shadow, 0.08), - inset -1px 0 alpha(@dark_shadow, 0.07); -} - -/* middle button */ -.header-bar .button.raised.linked, -.header-bar .button.raised.linked:active, -.header-bar .button.raised.linked:insensitive, -.header-bar .raised.linked .button, -.header-bar .raised.linked .button:active, -.header-bar .raised.linked .button:insensitive, -.header-bar .linked .button, -.header-bar .linked .button:active, -.header-bar .linked .button:insensitive { - border-width: 1px; - border-radius: 0; - border-right-width: 0; - border-left-width: 0; -} - -/* leftmost button */ -.header-bar .button.raised.linked:first-child, -.header-bar .button.raised.linked:active:first-child, -.header-bar .button.raised.linked:insensitive:first-child, -.header-bar .raised.linked .button:first-child, -.header-bar .raised.linked .button:active:first-child, -.header-bar .raised.linked .button:insensitive:first-child, -.header-bar .linked .button:first-child, -.header-bar .linked .button:active:first-child, -.header-bar .linked .button:insensitive:first-child { - border-width: 1px; - border-radius: 2px; - border-right-width: 0; - border-bottom-right-radius: 0; - border-top-right-radius: 0; -} - -/* rightmost button */ -.header-bar .button.raised.linked:last-child, -.header-bar .button.raised.linked:active:last-child, -.header-bar .button.raised.linked:insensitive:last-child, -.header-bar .raised.linked .button:last-child, -.header-bar .raised.linked .button:active:last-child, -.header-bar .raised.linked .button:insensitive:last-child, -.header-bar .linked .button:last-child, -.header-bar .linked .button:active:last-child, -.header-bar .linked .button:insensitive:last-child { - border-width: 1px; - border-radius: 2px; - border-left-width: 0; - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} - -/* linked single button */ -.header-bar .button.raised.linked:only-child, -.header-bar .button.raised.linked:active:only-child, -.header-bar .button.raised.linked:insensitive:only-child, -.header-bar .raised.linked .button:only-child, -.header-bar .raised.linked .button:active:only-child, -.header-bar .raised.linked .button:insensitive:only-child, -.header-bar .linked .button:only-child, -.header-bar .linked .button:active:only-child, -.header-bar .linked .button:insensitive:only-child { - border-width: 1px; - border-radius: 2px; -} - -/*********** - * tooltip * - ***********/ -.tooltip { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_tooltip_bg_color, 0.8); - border-radius: 2px; - background-color: @theme_tooltip_bg_color; - background-image: none; - color: @theme_tooltip_fg_color; -} - -.tooltip * { - background-color: transparent; -} - -/************ - * treeview * - ************/ -GtkTreeView { - -GtkTreeView-vertical-separator: 0; - - outline-offset: -1px; -} - -GtkTreeView.dnd { - border-width: 1px; - border-style: solid; - border-color: @theme_selected_bg_color; - border-radius: 0; -} - -GtkTreeView .entry { - border-radius: 0; - background-color: @theme_base_color; - background-image: none; -} - -/************ - * viewport * - ************/ -GtkViewport.frame { - border-width: 0; -} - -.view { - background-color: @theme_base_color; - color: @theme_text_color; -} - -.view:insensitive, -.view:insensitive:insensitive { - background-color: shade(@theme_base_color, 0.9); - color: mix(@theme_fg_color, @theme_bg_color, 0.5); -} - -.view:selected, -.view:selected:focus { - background-color: @theme_selected_bg_color; - color: @theme_selected_fg_color; -} - -/************** - * action-bar * - **************/ -.action-bar { - padding: 4px; - border-width: 1px 0 0 0; - border-style: solid; - border-color: shade(@theme_bg_color, 0.8); - background-color: @theme_bg_color; - background-image: none; - color: @theme_fg_color; -} - -.action-bar .button.text-button { - padding: 4px; -} - -.action-bar .button.image-button { - padding: 6px; -} - -.action-bar .title { - font: bold; - padding: 0 12px; -} - -.action-bar .subtitle { - font: smaller; - padding: 0 12px; -} - -/*************** - * search bars * - ***************/ -.search-bar { - border-width: 0 0 1px 0; - border-style: solid; - border-color: shade(@theme_bg_color, 0.8); - background-color: shade(@theme_bg_color, 0.98); -} - -.search-bar .button.close-button { - padding: 4px; -} - -/*********** - * dialogs * - ***********/ -GtkMessageDialog, -.prompt { - -GtkDialog-content-area-border: 0; - -GtkDialog-action-area-border: 0; - -GtkDialog-button-spacing: 0; - - margin: 0; - padding: 0; -} - -/******************** - * various choosers * - ********************/ -GtkFontButton .separator, -GtkFileChooserButton .separator { - /* always disable separators */ - -GtkWidget-wide-separators: true; - -GtkWidget-horizontal-separator: 0; - -GtkWidget-vertical-separator: 0; -} - -GtkFontButton GtkLabel:last-child { - color: alpha(currentColor, 0.7); -} - -GtkFileChooserButton GtkImage:last-child { - color: alpha(currentColor, 0.7); -} - -GtkFileChooser .pane-separator, -GtkFileChooser .pane-separator:hover { - border-width: 0 1px 0 0; - border-style: solid; - border-color: shade(@theme_bg_color, 0.8); - background-color: @theme_bg_color; - color: shade(@theme_bg_color, 0.9); -} - -/* for fallback when header bar not used */ -GtkFileChooser .dialog-action-box { - border-width: 1px 0 0; - border-style: solid; - border-color: shade(@theme_bg_color, 0.7); -} - -/********************* - * app notifications * - *********************/ -.app-notification { - border-style: solid; - border-color: shade(@theme_base_color, 0.8); - border-width: 0 1px 1px 1px; - border-radius: 0 0 2px 2px; - padding: 8px; - background-color: @theme_base_color; - background-image: none; - color: @theme_text_color; -} - -/******* - * osd * - *******/ -.background.osd { - color: @osd_fg; - background-color: @osd_bg; -} - -GtkOverlay.osd { - background-color: transparent; -} - -.osd.frame { - background-clip: border-box; - background-origin: border-box; -} - -.osd.button, -.osd .button { - padding: 4px; - border-width: 1px; - border-style: solid; - border-color: shade(@osd_bg, 0.8); - border-radius: 2px; - background-color: shade(@osd_bg, 1.08); - background-image: none; - color: @osd_fg; -} - -.osd.button:prelight, -.osd.button:hover, -.osd .button:hover { - border-color: shade(@osd_bg, 0.7); - background-color: shade(@osd_bg, 1.10); - background-image: none; -} - -.osd.button:active, -.osd .button:active, -.osd GtkMenuButton.button:active { - border-color: shade(@osd_bg, 0.8); - background-color: shade(@osd_bg, 0.95); - background-image: none; -} - -.osd.button:active:hover, -.osd .button:active:hover, -.osd GtkMenuButton.button:active:hover { - border-color: shade(@osd_bg, 0.7); -} - -.osd.button:insensitive, -.osd .button:insensitive { - border-color: shade(@osd_bg, 0.85); - background-color: shade(@osd_bg, 0.9); - background-image: none; -} - -.osd.button:active *:insensitive, -.osd .button:active *:insensitive { - background-color: shade(@osd_bg, 0.80); - background-image: none; -} - -.osd.toolbar { - -GtkToolbar-button-relief: normal; - - padding: 4px; - border-width: 1px; - border-style: solid; - border-radius: 2px; - border-color: shade(@osd_bg, 0.8); - background-color: @osd_bg; - background-image: none; - color: @osd_fg; -} - -.osd.toolbar .button { - padding: 4px; - border-width: 1px; - border-style: solid; - border-color: shade(@osd_bg, 0.8); - border-radius: 2px; - background-color: shade(@osd_bg, 1.08); - background-image: none; - color: @osd_fg; -} - -.osd.toolbar .button:hover { - border-color: shade(@osd_bg, 0.7); - background-color: shade(@osd_bg, 1.10); - background-image: none; -} - -.osd.toolbar .button:active { - border-color: shade(@osd_bg, 0.8); - background-color: shade(@osd_bg, 0.95); - background-image: none; -} - -.osd.toolbar .button:active:hover { - border-color: shade(@osd_bg, 0.7); -} - -.osd.toolbar .button:focus, -.osd.toolbar .button:hover:focus, -.osd.toolbar .button:active:focus, -.osd.toolbar .button:active:hover:focus { - border-color: shade(@osd_bg, 0.7); -} - -.osd.toolbar .button:insensitive { - border-color: shade(@osd_bg, 0.85); - background-color: shade(@osd_bg, 0.9); - background-image: none; -} - -.osd.toolbar .button:active *:insensitive { - border-color: shade(@osd_bg, 0.75); - background-color: shade(@osd_bg, 0.80); - background-image: none; -} - -.osd.toolbar .button:first-child { - border-radius: 2px 0 0 2px; - border-width: 1px 0 1px 1px; - box-shadow: inset -1px 0 shade(@osd_bg, 0.9); -} - -.osd.toolbar .button:last-child { - box-shadow: none; - border-radius: 0 2px 2px 0; - border-width: 1px 1px 1px 0; -} - -.osd.toolbar .button:only-child, -.osd.toolbar GtkToolButton .button, -.osd.toolbar GtkToolButton:only-child .button, -.osd.toolbar GtkToolButton:last-child .button, -.osd.toolbar GtkToolButton:first-child .button { - border-width: 1px; - border-radius: 2px; - border-style: solid; -} - -.osd.toolbar .separator { - color: shade(@osd_bg, 0.9); -} - -/* used by gnome-settings-daemon's media-keys OSD */ -.osd.trough { - background-color: shade(@osd_bg, 0.8); -} - -.osd.progressbar { - background-color: @osd_fg; -} - -.osd .scale.slider { - background-color: shade(@osd_bg, 1.08); - background-image: none; - /* we will draw the border using box shadow for now */ - box-shadow: inset 1px 0 shade(@osd_bg, 0.8), - inset 0 1px shade(@osd_bg, 0.8), - inset -1px 0 shade(@osd_bg, 0.8), - inset 0 -1px shade(@osd_bg, 0.8); -} - -.osd .scale.slider:hover { - box-shadow: inset 1px 0 shade(@osd_bg, 0.7), - inset 0 1px shade(@osd_bg, 0.7), - inset -1px 0 shade(@osd_bg, 0.7), - inset 0 -1px shade(@osd_bg, 0.7); -} - -.osd .scale.slider:insensitive { - background-color: shade(@osd_bg, 0.9); - background-image: none; - box-shadow: inset 1px 0 shade(@osd_bg, 0.85), - inset 0 1px shade(@osd_bg, 0.85), - inset -1px 0 shade(@osd_bg, 0.85), - inset 0 -1px shade(@osd_bg, 0.85); -} - -.osd .scale.trough { - border-color: shade(@osd_bg, 0.8); - background-color: shade(@osd_bg, 1.08); - background-image: none; -} - -.osd .scale.trough.highlight { - border-color: @theme_selected_bg_color; - background-color: @theme_selected_bg_color; - background-image: none; -} - -.osd .scale.trough:insensitive, -.osd .scale.trough.highlight:insensitive { - border-color: shade(@osd_bg, 0.85); - background-color: shade(@osd_bg, 0.9); - background-image: none; -} - -.osd GtkProgressBar, -GtkProgressBar.osd { - -GtkProgressBar-xspacing: 0; - -GtkProgressBar-yspacing: 2px; - -GtkProgressBar-min-horizontal-bar-height: 2px; - - padding: 0; -} - -.osd GtkProgressBar.trough, -GtkProgressBar.osd.trough { - padding: 0; - border-style: none; - border-radius: 0; - background-image: none; - background-color: transparent; -} - -.osd GtkProgressBar.progressbar, -GtkProgressBar.osd.progressbar { - border-style: none; - border-radius: 0; - background-color: @theme_selected_bg_color; - background-image: none; -} - -.osd .view, -.osd.view { - background-color: @osd_base; -} - -.osd .scrollbar.trough { - background-color: @osd_bg; -} - -.osd .scrollbar.slider { - border-width: 1px; - border-color: mix(shade(@osd_base, 0.87), @osd_fg, 0.21); - border-radius: 0; - background-color: mix(@osd_base, @osd_fg, 0.21); -} - -.osd .scrollbar.slider:hover { - border-color: mix(shade(@osd_base, 0.87), @osd_fg, 0.31); - background-color: mix(@osd_base, @osd_fg, 0.31); -} - -.osd .scrollbar.slider:active { - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: @theme_selected_bg_color; -} - -.osd GtkIconView.cell:selected, -.osd GtkIconView.cell:selected:focus { - background-color: transparent; - border-style: solid; - border-radius: 2px; - border-width: 3px; - border-color: @osd_fg; - outline-color: transparent; -} - -/* used by Documents */ -.osd .page-thumbnail { - border-style: solid; - border-width: 1px; - border-color: shade(@osd_bg, 0.9); - /* when there's no pixbuf yet */ - background-color: @osd_bg; -} - -/****************************** - * destructive action buttons * - ******************************/ -.destructive-action.button { - border-width: 1px; - border-style: solid; - border-color: shade(@error_color, 0.8); - border-radius: 2px; - background-color: @error_color; - background-image: none; - color: mix(@theme_selected_fg_color, @error_color, 0.1); -} - -.destructive-action.button:hover { - border-color: shade(@error_color, 0.7); - background-color: shade(@error_color, 1.12); - background-image: none; -} - -.destructive-action.button:active { - border-color: shade(@error_color, 0.8); - background-color: shade(@error_color, 0.87); - background-image: none; -} - -.destructive-action.button:hover:active { - border-color: shade(@error_color, 0.7); -} - -/****************************** - * suggested action buttons * - ******************************/ -.suggested-action.button { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_selected_bg_color, 0.9); - border-radius: 2px; - background-color: shade(@theme_selected_bg_color, 1.18); - background-image: none; - color: mix(@theme_selected_fg_color, @theme_selected_bg_color, 0.1); -} - -.suggested-action.button:hover { - border-color: shade(@theme_selected_bg_color, 0.8); - background-color: shade(@theme_selected_bg_color, 1.20); - background-image: none; -} - -.suggested-action.button:active { - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: shade(@theme_selected_bg_color, 1.05); - background-image: none; -} - -.suggested-action.button:hover:active { - border-color: shade(@theme_selected_bg_color, 0.8); -} - -/****************** - * selection mode * - ******************/ -.selection-mode.header-bar, -.selection-mode.toolbar { - border-style: solid; - border-color: @theme_selected_bg_color; - background-color: shade(@theme_selected_bg_color, 1.6); - background-image: none; - color: @theme_selected_bg_color; -} - -.selection-mode.header-bar { - border-top-color: shade(@theme_selected_bg_color, 1.6); - border-bottom-color: @theme_selected_bg_color; -} - -.selection-mode.toolbar { - padding: 4px; -} - -/* regular button */ -.selection-mode.header-bar .button, -.selection-mode.toolbar .button, -.selection-mode.toolbar GtkToolButton .button { - border-width: 1px; - border-style: solid; - border-color: @theme_selected_bg_color; - border-radius: 2px; - background-color: shade(@theme_selected_bg_color, 1.68); - background-image: none; - color: shade(@theme_selected_bg_color, 0.8); -} - -.selection-mode.header-bar .button:hover, -.selection-mode.toolbar .button:hover, -.selection-mode.toolbar GtkToolButton .button:hover { - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: shade(@theme_selected_bg_color, 1.70); - background-image: none; -} - -.selection-mode.header-bar .button:active, -.selection-mode.toolbar .button:active, -.selection-mode.toolbar GtkToolButton .button:active { - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: shade(@theme_selected_bg_color, 1.55); - background-image: none; -} - -.selection-mode.header-bar .button:hover:active, -.selection-mode.toolbar .button:hover:active, -.selection-mode.toolbar GtkToolButton .button:hover:active { - border-color: shade(@theme_selected_bg_color, 0.8); -} - -/* suggested button */ -.selection-mode.header-bar .suggested-action.button, -.selection-mode.toolbar .suggested-action.button, -.selection-mode.toolbar GtkToolButton.suggested-action .button { - border-width: 1px; - border-style: solid; - border-color: shade(@theme_selected_bg_color, 0.9); - border-radius: 2px; - background-color: shade(@theme_selected_bg_color, 1.18); - background-image: none; - color: mix(@theme_selected_fg_color, @theme_selected_bg_color, 0.1); -} - -.selection-mode.header-bar .suggested-action.button:hover, -.selection-mode.toolbar .suggested-action.button:hover, -.selection-mode.toolbar GtkToolButton.suggested-action .button:hover { - border-color: shade(@theme_selected_bg_color, 0.8); - background-color: shade(@theme_selected_bg_color, 1.20); - background-image: none; -} - -.selection-mode.header-bar .suggested-action.button:active, -.selection-mode.toolbar .suggested-action.button:active, -.selection-mode.toolbar GtkToolButton.suggested-action:active { - border-color: shade(@theme_selected_bg_color, 0.9); - background-color: shade(@theme_selected_bg_color, 1.05); - background-image: none; -} - -.selection-mode.header-bar .suggested-action.button:hover:active, -.selection-mode.toolbar .suggested-action.button:hover:active, -.selection-mode.toolbar GtkToolButton.suggested-action .button:hover:active { - border-color: shade(@theme_selected_bg_color, 0.8); -} - -/* menu button */ -.selection-mode.header-bar .selection-menu.button, -.selection-mode.toolbar .selection-menu.button { - border-style: none; - background-color: transparent; - background-image: none; - color: shade(@theme_selected_bg_color, 0.8); -} - -.selection-mode.toolbar .dim-label, -.selection-mode.toolbar .selection-menu.button .dim-label { - color: shade(@theme_selected_bg_color, 0.7); -} - -.selection-mode.header-bar .selection-menu.button:hover, -.selection-mode.toolbar .dim-label:hover, -.selection-mode.toolbar .selection-menu.button:hover, -.selection-mode.toolbar .selection-menu.button .dim-label:hover { - color: shade(@theme_selected_bg_color, 0.7); -} - -.selection-mode.header-bar .selection-menu.button:active, -.selection-mode.toolbar .selection-menu.button:active { - color: shade(@theme_selected_bg_color, 0.8); - box-shadow: none; -} - -/************************* - * touch text selections * - *************************/ -GtkBubbleWindow { - border-radius: 2px; - background-clip: border-box; -} - -GtkBubbleWindow.osd.background { - background-color: @osd_bg; -} - -GtkBubbleWindow .toolbar { - background-color: transparent; -} - -/******* - * CSD * - *******/ -.titlebar { - border-radius: 2px 2px 0 0; - background-image: none; - background-color: @titlebar_bg_color; - color: mix(@titlebar_fg_color, @titlebar_bg_color, 0.1); - text-shadow: none; -} - -.tiled .titlebar { - border-radius: 0; -} - -.maximized .titlebar { - border-radius: 0; -} - -/* this is the default titlebar that is added by GTK - * when client-side decorations are in use and the application - * did not set a custom titlebar. - */ -.titlebar.default-decoration { - border: none; - box-shadow: none; -} - -.titlebar .title { - font: bold; -} - -.titlebar:backdrop { - background-image: none; - background-color: @titlebar_bg_color; - color: mix(@titlebar_fg_color, @titlebar_bg_color, 0.4); - text-shadow: none; -} - -.titlebar .titlebutton { - padding: 4px; - border-style: none; - background: none; - color: mix(@titlebar_fg_color, @titlebar_bg_color, 0.1); - icon-shadow: none; -} - -.titlebar .titlebutton:hover, -.titlebar .titlebutton:hover:focus { - background: none; - color: @theme_selected_bg_color; -} - -.titlebar .titlebutton:active, -.titlebar .titlebutton:active:hover { - background: none; - color: shade(@theme_selected_bg_color, 0.9); - box-shadow: none; -} - -/* -.titlebar .right .titlebutton:first-child { - border-left: 1px solid shade(@titlebar_bg_color, 0.9); -} - -.titlebar .right .titlebutton:last-child { -} - -.titlebar .left .titlebutton:last-child { - border-right: 1px solid shade(@titlebar_bg_color, 0.9); -} - -.titlebar .left .titlebutton:first-child { -} -*/ - -.titlebar .titlebutton:backdrop { - background-image: none; - color: mix(@titlebar_fg_color, @titlebar_bg_color, 0.4); - icon-shadow: none; -} - -.window-frame { - border-style: none; - border-radius: 2px 2px 0 0; - box-shadow: 0 3px 7px 1px alpha(black, 0.7), - 0 0 0 1px mix(shade(@titlebar_bg_color, 0.7), @titlebar_fg_color, 0.21); - - /* this is used for the resize cursor area */ - margin: 10px; -} - -.window-frame.tiled { - border-radius: 0; -} - -.window-frame:backdrop { - box-shadow: 0 3px 5px 1px alpha(black, 0.5), - 0 0 0 1px mix(shade(@titlebar_bg_color, 0.7), @titlebar_fg_color, 0.12); -} diff --git a/gtk-3.0/gtk.css b/gtk-3.0/gtk.css index 72e9b19..fe669f9 100644 --- a/gtk-3.0/gtk.css +++ b/gtk-3.0/gtk.css @@ -1,85 +1,2 @@ -/* default color scheme */ -@define-color bg_color #dedede; -@define-color fg_color #555555; -@define-color base_color #f9f9f9; -@define-color text_color #333333; -@define-color selected_bg_color #d64937; -@define-color selected_fg_color #f9f9f9; -@define-color tooltip_bg_color #2d2d2d; -@define-color tooltip_fg_color #dcdcdc; -/* dark color scheme */ -@define-color dark_bg_color #2d2d2d; -@define-color dark_fg_color #dcdcdc; - -/* colormap actually used by the theme, to be overridden in other css files */ -@define-color theme_bg_color @bg_color; -@define-color theme_fg_color @fg_color; -@define-color theme_base_color @base_color; -@define-color theme_text_color @text_color; -@define-color theme_selected_bg_color @selected_bg_color; -@define-color theme_selected_fg_color @selected_fg_color; -@define-color theme_tooltip_bg_color @tooltip_bg_color; -@define-color theme_tooltip_fg_color @tooltip_fg_color; - -/* shadow effects */ -@define-color light_shadow #fff; -@define-color dark_shadow #000; - -/* misc colors used by gtk+ */ -@define-color info_fg_color rgb (58, 135, 173); -@define-color info_bg_color rgb (217, 237, 247); -@define-color warning_fg_color rgb (192, 152, 83); -@define-color warning_bg_color rgb (252, 248, 227); -@define-color question_fg_color rgb (214, 73, 55); -@define-color question_bg_color rgb (252, 229, 213); -@define-color error_fg_color rgb (185, 74, 72); -@define-color error_bg_color rgb (242, 222, 222); -@define-color link_color #fc6f5d; -@define-color success_color #53a93f; -@define-color warning_color #f57900; -@define-color error_color #cc0000; - -/* widget colors */ -@define-color titlebar_bg_color @dark_bg_color; -@define-color titlebar_fg_color @dark_fg_color; -@define-color menubar_bg_color @dark_bg_color; -@define-color menubar_fg_color @dark_fg_color; -@define-color toolbar_bg_color @theme_bg_color; -@define-color toolbar_fg_color @theme_fg_color; -@define-color menu_bg_color @dark_bg_color; -@define-color menu_fg_color @dark_fg_color; -@define-color panel_bg_color @dark_bg_color; -@define-color panel_fg_color @dark_fg_color; - -/* osd */ -@define-color osd_base @dark_bg_color; -@define-color osd_fg @dark_fg_color; -@define-color osd_bg alpha(@osd_base, 0.8); - -/* lightdm greeter colors */ -@define-color lightdm_bg_color @dark_bg_color; -@define-color lightdm_fg_color @dark_fg_color; - -/* window manager colors */ -@define-color wm_bg @titlebar_bg_color; -@define-color wm_border_focused mix(shade(@titlebar_bg_color, 0.7), @titlebar_fg_color, 0.21); -@define-color wm_border_unfocused mix(shade(@titlebar_bg_color, 0.7), @titlebar_fg_color, 0.12); -@define-color wm_title_focused mix(@titlebar_fg_color, @titlebar_bg_color, 0.1); -@define-color wm_title_unfocused mix(@titlebar_fg_color, @titlebar_bg_color, 0.4); -@define-color wm_icons_focused mix(@titlebar_fg_color, @titlebar_bg_color, 0.1); -@define-color wm_icons_focused_prelight @selected_bg_color; -@define-color wm_icons_focused_pressed shade(@selected_bg_color, 0.8); -@define-color wm_icons_unfocused mix(@titlebar_fg_color, @titlebar_bg_color, 0.4); -@define-color wm_icons_unfocused_prelight @selected_bg_color; -@define-color wm_icons_unfocused_pressed shade(@selected_bg_color, 0.8); - -@import url("gtk-widgets.css"); -@import url("gtk-widgets-assets.css"); -@import url("apps/gnome-applications.css"); -@import url("apps/granite-widgets.css"); -@import url("apps/unity.css"); -@import url("apps/xfce.css"); -@import url("apps/nemo.css"); -@import url("apps/synaptic.css"); -@import url("apps/lightdm-gtk-greeter.css"); +@import url("gen/widgets.css"); \ No newline at end of file diff --git a/gtk-3.0/scss/_base.scss b/gtk-3.0/scss/_base.scss new file mode 100644 index 0000000..95a1994 --- /dev/null +++ b/gtk-3.0/scss/_base.scss @@ -0,0 +1,119 @@ +@import "functions"; + +* { + -GtkArrow-arrow-scaling: 0.5; + -GtkButton-child-displacement-x: 0; + -GtkButton-child-displacement-y: 0; + -GtkButton-default-border: 0; + -GtkButton-image-spacing: 0; + -GtkButton-inner-border: 1; + -GtkButton-interior-focus: true; + -GtkButtonBox-child-min-height: 24; + -GtkButtonBox-child-internal-pad-y: 1; + -GtkCheckButton-indicator-size: 16; + -GtkCheckMenuItem-indicator-size: 14; + -GtkExpander-expander-size: 8; + -GtkMenu-horizontal-padding: 0; + -GtkMenu-vertical-padding: 0; + -GtkPaned-handle-size: 4; + -GtkProgressBar-min-horizontal-bar-height: 12; + -GtkProgressBar-min-vertical-bar-width: 12; + -GtkRange-slider-width: 12; + -GtkRange-stepper-spacing: 0; + -GtkRange-trough-border: 0; + -GtkRange-trough-under-steppers: 1; + -GtkScrollbar-has-backward-stepper: false; + -GtkScrollbar-has-forward-stepper: false; + -GtkScrollbar-min-slider-length: 80; + -GtkScrolledWindow-scrollbar-spacing: 0; + -GtkScrolledWindow-scrollbars-within-bevel: 1; + -GtkStatusbar-shadow-type: none; + -GtkTextView-error-underline-color: $error_color; + -GtkToolButton-icon-spacing: 6; + -GtkToolItemGroup-expander-size: 8; + -GtkTreeView-expander-size: 8; + -GtkWindow-resize-grip-height: 0; + -GtkWindow-resize-grip-width: 0; + -WnckTasklist-fade-overlay-rect: 0; + + /* legacy stuff */ + -GtkWidget-focus-line-width: 1; + -GtkWidget-focus-padding: 0; + + /* + outline-color: alpha($selected_bg_color, 0.5); + outline-style: dashed; + outline-width: 1px; + outline-offset: -2px; + outline-radius: 2px; + */ +} + +/*************** +* base states * +***************/ +* { + &:selected, + &:selected:focus { + background-color: $selected_bg_color; + color: $selected_fg_color; + } + + &:insensitive, + &:insensitive:insensitive { color: mix($fg_color, $bg_color, 50%); } + + &:insensitive { -gtk-image-effect: dim; } + + &:hover { -gtk-image-effect: highlight; } +} + +.background { + background-color: $bg_color; + color: $fg_color; + + &:backdrop { + text-shadow: none; + icon-shadow: none; + } +} + +.gtkstyle-fallback { + background-color: $bg_color; + color: $fg_color; + + &:prelight { + background-color: shade($bg_color, 1.1); + color: $fg_color; + } + + &:active { + background-color: shade($bg_color, 0.9); + color: $fg_color; + } + + &:insensitive { + background-color: shade(shade($bg_color, 0.95), 1.05); + color: mix($fg_color, $bg_color, 50%); + } + + &:selected { + background-color: $selected_bg_color; + color: $selected_fg_color; + } +} + +GtkImage, GtkLabel, GtkBox, GtkGrid { + &, &:insensitive { background-color: transparent; } +} + +/************** +* hyperlinks * +**************/ +* { + -GtkHTML-link-color: $link_color; + -GtkIMHtml-hyperlink-color: $link_color; + -GtkWidget-link-color: $link_color; + -GtkWidget-visited-link-color: $link_color; + + &:link, &:visited { color: $link_color; } +} \ No newline at end of file diff --git a/gtk-3.0/scss/_button.scss b/gtk-3.0/scss/_button.scss new file mode 100644 index 0000000..82f84e0 --- /dev/null +++ b/gtk-3.0/scss/_button.scss @@ -0,0 +1,105 @@ +@import "functions"; + +@mixin linked_button($bg, $shadow) { + border-width: 1px; + border-radius: 0; + border-right-width: 0; + border-left-width: 0; + box-shadow: inset -1px 0 border_normal($bg); + + &:first-child { + border-width: 1px; + border-radius: $roundness; + border-right-width: 0; + border-bottom-right-radius: 0; + border-top-right-radius: 0; + } + + &:last-child { + border-width: 1px; + border-radius: $roundness; + border-left-width: 0; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + } + + &:only-child { + border-width: 1px; + border-radius: $roundness; + } + + &:focus, &:hover { box-shadow: inset -1px 0 border_focus($bg); } + + &:active, &:active:hover, + &:active:focus, &:active:hover:focus { + box-shadow: inset -1px 0 border_active($bg), + inset 1px 0 alpha($shadow, .07), + inset 0 1px alpha($shadow, .08), + inset 0 -1px alpha($shadow, .05); + } + + &:insensitive { box-shadow: inset -1px 0 border_insensitive($bg); } + + &:last-child, &:only-child, + &:insensitive:last-child, &:insensitive:only-child, + &:active *:insensitive:last-child, &:active *:insensitive:only-child { box-shadow: none; } + + &:active:last-child, &:active:only-child { + box-shadow: inset 1px 0 alpha($shadow, .07), + inset 0 1px alpha($shadow, .08), + inset -1px 0 alpha($shadow, .07); + } +} + +@mixin button($bg, $fg) { + @include linear-gradient(shade($bg, 1.05)); + @include border(shade($bg, 1.05)); + + padding: ($spacing - 1px) ($spacing + 1px); + border-width: 1px; + border-radius: $roundness; + border-style: solid; + color: $fg; + transition: 100ms ease; + + -GtkWidget-focus-padding: 1; + -GtkWidget-focus-line-width: 0; + + &:focus, &:hover { @include linear-gradient(shade($bg, 1.1)); } + + &:active { + @include linear-gradient(shade($bg, .95)); + + box-shadow: inset 1px 0 alpha($dark_shadow, .07), + inset 0 1px alpha($dark_shadow, .08), + inset -1px 0 alpha($dark_shadow, .07), + inset 0 -1px alpha($dark_shadow, .05); + } + + &:insensitive { + @include linear-gradient(shade($bg, .95)); + + color: mix($bg, $fg, .5); + } + + &:active *:insensitive { + @include linear-gradient(shade($bg, .8)); + + box-shadow: none; + } + + &.separator, .separator { + color: shade($bg, .95); + border: 1px solid currentColor; + + &:insensitive { color: shade($bg, .85); } + } + + &.linked, &.raised.linked, .linked & { @include linked_button(shade($bg, 1.05), $dark_shadow); } +} + +.button { + @include button($bg_color, $fg_color); + + &.default { @include button($selected_bg_color, $selected_fg_color); } +} \ No newline at end of file diff --git a/gtk-3.0/scss/_entry.scss b/gtk-3.0/scss/_entry.scss new file mode 100644 index 0000000..dc9e658 --- /dev/null +++ b/gtk-3.0/scss/_entry.scss @@ -0,0 +1,72 @@ +@import "functions"; + +@mixin linked_entry($bg) { + border-width: 1px; + border-radius: 0; + border-right-width: 0; + border-left-width: 0; + + &:first-child { + border-width: 1px; + border-radius: $roundness; + border-right-width: 0; + border-bottom-right-radius: 0; + border-top-right-radius: 0; + } + + &:last-child { + border-width: 1px; + border-radius: $roundness; + border-left-width: 0; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + } + + &:only-child { + border-width: 1px; + border-radius: $roundness; + } +} + +@mixin entry($bg, $fg) { + @include linear-gradient($bg); + @include border(shade($bg, .9)); + + padding: ($spacing - 1px) ($spacing + 1px); + border-width: 1px; + border-style: solid; + border-radius: $roundness; + transition: border 100ms ease; + box-shadow: inset 1px 0 alpha($dark_shadow, .1), + inset 0 1px alpha($dark_shadow, .12), + inset -1px 0 alpha($dark_shadow, .1), + inset 0 -1px alpha($dark_shadow, .05); + + &:selected, &:selected:focus { + background-color: $selected_bg_color; + color: $selected_fg_color; + } + + &:insensitive { + @include linear-gradient(shade($bg, .9)); + + color: mix($bg, $fg, .5); + box-shadow: none; + } + + &.progressbar { + @include linear-gradient($selected_bg_color); + + border-width: 0; + border-radius: $roundness; + color: $selected_fg_color; + } + + &.image.left { padding-right: $spacing; } +} + +.entry { + @include entry($base_color, $text_color); + + .linked & { @include linked_entry($base_color); } +} \ No newline at end of file diff --git a/gtk-3.0/scss/_functions.scss b/gtk-3.0/scss/_functions.scss new file mode 100644 index 0000000..ab12059 --- /dev/null +++ b/gtk-3.0/scss/_functions.scss @@ -0,0 +1,64 @@ +@import "global"; + +@function alpha($color, $amount) { + @if type-of($color) == "color" { + @return fade-out($color, (1 - $amount)); + } @else { + @return unquote("alpha(#{$color},#{$amount})"); + } +} + +@function shade($color, $amount) { +// @if type-of($color) == "color" { +// @if $amount < 1 { +// @return darken($color, ((1 - $amount) * 100)); +// } @else { +// @return lighten($color, (($amount - 1) * 100)); +// } +// } @else { + @return unquote("shade(#{$color},#{$amount})"); +// } +} + +@function mix($color1, $color2, $amount) { + @return unquote("mix(#{$color1},#{$color2},#{$amount})"); +} + +@function border_normal($color) { + @return shade($color, $contrast); +} + +@function border_focus($color) { + @return shade($color, ($contrast - .1)); +} + +@function border_active($color) { + @return shade($color, ($contrast - .15)); +} + +@function border_insensitive($color) { + @return shade($color, ($contrast + .05)); +} + +@mixin linear-gradient($color, $direction: to bottom) { + $amount: $gradient / 2; + + background-color: $color; + background-image: linear-gradient($direction, + shade($color, (1 + $amount)), + shade($color, (1 - $amount)) + ); +} + +@mixin border($color) { + border-color: border_normal($color); + + &:focus, &:hover { border-color: border_focus($color); } + + &:active, &:active:hover, + &:active:focus, &:active:hover:focus { border-color: border_active($color); } + + &:insensitive { border-color: border_insensitive($color); } + + &:active *:insensitive { border-color: border_normal($color); } +} \ No newline at end of file diff --git a/gtk-3.0/scss/_global.scss b/gtk-3.0/scss/_global.scss new file mode 100644 index 0000000..eee1977 --- /dev/null +++ b/gtk-3.0/scss/_global.scss @@ -0,0 +1,43 @@ +/* default color scheme */ +$bg_color: #dedede; +$fg_color: #555555; +$base_color: #f9f9f9; +$text_color: #2d2d2d; +$selected_bg_color: #d64937; +$selected_fg_color: #f9f9f9; +$tooltip_bg_color: #2d2d2d; +$tooltip_fg_color: #dedede; + +/* dark colors */ +$dark_bg_color: #2d2d2d; +$dark_fg_color: #dedede; + +/* shadows */ +$dark_shadow: #000; +$light_shadow: #fff; + +/* misc colors used by gtk+ */ +$info_fg_color: rgb (58, 135, 173); +$info_bg_color: rgb (217, 237, 247); +$warning_fg_color: rgb (192, 152, 83); +$warning_bg_color: rgb (252, 248, 227); +$question_fg_color: rgb (214, 73, 55); +$question_bg_color: rgb (252, 229, 213); +$error_fg_color: rgb (185, 74, 72); +$error_bg_color: rgb (242, 222, 222); +$link_color: #fc6f5d; +$success_color: #53a93f; +$warning_color: #f57900; +$error_color: #cc0000; + +$titlebar_bg_color: $dark_bg_color; +$titlebar_fg_color: $dark_fg_color; + +$menu_bg_color: $dark_bg_color; +$menu_fg_color: $dark_fg_color; + +/* widget styles */ +$roundness: 2px; +$spacing: 5px; +$gradient: 0; +$contrast: .7; \ No newline at end of file diff --git a/gtk-3.0/scss/_menu.scss b/gtk-3.0/scss/_menu.scss new file mode 100644 index 0000000..905dc8a --- /dev/null +++ b/gtk-3.0/scss/_menu.scss @@ -0,0 +1,152 @@ +@import "functions"; +@import "entry"; + +GtkTreeMenu, GtkMenuToolButton, GtkComboBox { + &.menu, .menu { + background-color: $menu_bg_color; + margin: $spacing; + } +} + +#toolbar-popup, .menu { + padding: 0; + border-radius: 0; + border-style: none; + background-color: $menu_bg_color; + color: $menu_fg_color; + + &:selected { background-color: $selected_bg_color; } + + .button { + &, &:hover, &:active, &:active *:insensitive, &:insensitive { + border-width: 0; + background-color: transparent; + background-image: none; + } + } +} + +.context-menu { font: initial; } + +.menuitem { + GtkTreeMenu & { + padding: 0; + border-width: 0; + } + + &, .menu & { + padding: $spacing; + border-width: 1px; + border-style: solid; + border-color: transparent; + border-radius: 0; + background-color: transparent; + background-image: none; + + -GtkMenuItem-arrow-scaling: 0.5; + + &:active, &:hover { + border-color: shade($selected_bg_color, .9); + background-color: $selected_bg_color; + background-image: none; + color: $selected_fg_color; + } + + & *:active, & *:hover { color: $selected_fg_color; } + + &:insensitive, & *:insensitive { color: mix($menu_fg_color, $menu_bg_color, .5); } + } + + &.check, &.radio { + &, &:focus, &:hover, &:insensitive { background-image: none; } + + &, &:focus, &:hover, &:active, &:insensitive { + border-style: none; + background-color: transparent; + } + } + + &.separator { + -GtkMenuItem-horizontal-padding: 0; + -GtkWidget-separator-height: 1; + + border-style: none; + color: shade($menu_bg_color, .9); + } + + &.button { + &, &:active, &:insensitive, &:active:insensitive { + background-color: transparent; + background-image: none; + border-color: transparent; + border-style: none; + box-shadow: none; + color: currentColor; + } + + &:hover, &:active:hover, &:selected { + background-color: $selected_bg_color; + background-image: none; + color: $selected_fg_color; + } + } + + GtkCalendar { + &:inconsistent { color: mix($menu_fg_color, $menu_bg_color, .5); } + + .button { + border-style: none; + background-color: transparent; + background-image: none; + } + } + + .accelerator { + color: alpha($menu_fg_color, .6); + + &:hover { color: alpha($selected_fg_color, .8); } + + &:insensitive { color: alpha(mix($menu_fg_color, $menu_bg_color, .5), .4); } + } + + .entry { @include entry($menu_bg_color, $menu_fg_color); } +} + +GtkModelMenuItem GtkBox GtkImage { padding-right: $spacing; } + +GtkPopover { + @include border($menu_bg_color); + + margin: 10px; + padding: $spacing; + border-radius: $roundness; + border-width: 1px; + border-style: solid; + background-clip: border-box; + background-color: $menu_bg_color; + color: $menu_fg_color; + box-shadow: 0 2px 3px alpha(black, .5); + + &:backdrop { box-shadow: none; } + + &.osd { + box-shadow: 0 2px 7px 3px alpha(black, .5); + + > .toolbar .button { + border-radius: 0; + border-width: 0; + background-image: none; + background-color: transparent; + } + } + + > .list, > .view, > .toolbar { background-color: transparent; } + + .separator { + border: 0; + background-color: transparent; + color: alpha($menu_bg_color, .5); + font-size: 80%; + font-weight: bold; + } +} \ No newline at end of file diff --git a/gtk-3.0/scss/_toolbar.scss b/gtk-3.0/scss/_toolbar.scss new file mode 100644 index 0000000..e4f21ca --- /dev/null +++ b/gtk-3.0/scss/_toolbar.scss @@ -0,0 +1,120 @@ +@import "functions"; +@import "button"; + +@mixin toolbar($bg, $fg) { + @include linear-gradient($bg); + @include border($bg); + + padding: $spacing; + color: $fg; + + &:insensitive { + @include linear-gradient(darken($bg, 10%)); + + color: mix($fg, $bg, .5); + } + + .title { + font: bold; + padding: 0 12px; + } + + .subtitle { + font: smaller; + padding: 0 12px; + } + + .button { @include button($bg, $fg); } + + GtkComboBox, .button { + padding: 2px; + + &.text-button { padding: 4px; } + + &.image-button { padding: $spacing ($spacing - 1px) ($spacing - 1px) $spacing; } + } + + GtkSeparatorToolItem, .separator, .separator:insensitive { + color: border_normal($bg); + border-color: currentColor; + + -GtkWidget-window-dragging: true; + } + + .menubar { -GtkToolbar-button-relief: normal; } +} + +.toolbar { + @include toolbar($bg_color, $fg_color); + + border-style: none; +} + +.header-bar { + @include toolbar($titlebar_bg_color, $titlebar_fg_color); + + border-width: 0 0 1px 0; + border-style: solid; +} + +.titlebar { + @include linear-gradient($titlebar_bg_color); + + border-radius: $roundness $roundness 0 0; + color: mix($titlebar_fg_color, $titlebar_bg_color, .9); + + &:backdrop { + @include linear-gradient($titlebar_bg_color); + + color: mix($titlebar_fg_color, $titlebar_bg_color, .6); + text-shadow: none; + } + + &.default-decoration { + border: none; + box-shadow: none; + } + + .tiled &, .maximized & { border-radius: 0; } + + .title { font: bold; } + + .titlebutton { + padding: $spacing; + border: none; + background: none; + color: mix($titlebar_fg_color, $titlebar_bg_color, 90%); + + &:hover, &:hover:focus { + background: none; + color: $selected_bg_color; + } + + &:active, &:active:hover { + background: none; + color: darken($selected_bg_color, 10%); + box-shadow: none; + } + + &:backdrop { + background-image: none; + color: mix($titlebar_fg_color, $titlebar_bg_color, 60%); + icon-shadow: none; + } + } +} + +.window-frame { + margin: 10px; + border-style: none; + border-radius: $roundness $roundness 0 0; + box-shadow: 0 3px 7px 1px fade-out(black, .3), + 0 0 0 1px mix($titlebar_fg_color, $titlebar_bg_color, 21%); + + &:backdrop { + box-shadow: 0 3px 5px 1px fade-out(black, 0.5), + 0 0 0 1px mix($titlebar_fg_color, $titlebar_bg_color, 12%); + } + + &.tiled { border-radius: 0; } +} \ No newline at end of file diff --git a/gtk-3.0/scss/widgets.scss b/gtk-3.0/scss/widgets.scss new file mode 100644 index 0000000..178dccc --- /dev/null +++ b/gtk-3.0/scss/widgets.scss @@ -0,0 +1,5 @@ +@import "base"; +@import "button"; +@import "entry"; +@import "menu"; +@import "toolbar"; \ No newline at end of file diff --git a/gtk-3.0/settings.ini b/gtk-3.0/settings.ini deleted file mode 100644 index 9aa01e5..0000000 --- a/gtk-3.0/settings.ini +++ /dev/null @@ -1,3 +0,0 @@ -[Settings] -gtk-auto-mnemonics = 1 -gtk-visible-focus = automatic From 2267965321fa89b23f7558bd5e341432bc65d935 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 3 Oct 2014 23:22:52 +0530 Subject: [PATCH 02/73] Added a color defintion file so other apps can get color from theme --- gtk-3.0/scss/_button.scss | 46 ++++++++++++++++++------- gtk-3.0/scss/_colors.scss | 67 ++++++++++++++++++++++++++++++++++++ gtk-3.0/scss/_entry.scss | 9 ++--- gtk-3.0/scss/_functions.scss | 8 ++--- gtk-3.0/scss/_global.scss | 38 ++++++++++---------- gtk-3.0/scss/_toolbar.scss | 17 +-------- gtk-3.0/scss/_window.scss | 35 +++++++++++++++++++ gtk-3.0/scss/widgets.scss | 4 ++- 8 files changed, 165 insertions(+), 59 deletions(-) create mode 100644 gtk-3.0/scss/_colors.scss create mode 100644 gtk-3.0/scss/_window.scss diff --git a/gtk-3.0/scss/_button.scss b/gtk-3.0/scss/_button.scss index 82f84e0..fe017a6 100644 --- a/gtk-3.0/scss/_button.scss +++ b/gtk-3.0/scss/_button.scss @@ -1,26 +1,39 @@ @import "functions"; @mixin linked_button($bg, $shadow) { - border-width: 1px; + border: 1px solid border_normal($bg); border-radius: 0; - border-right-width: 0; - border-left-width: 0; - box-shadow: inset -1px 0 border_normal($bg); + border-right-style: none; + border-left-style: none; + box-shadow: inset -1px 0 border_normal($bg), + 0 1px 2px -1px alpha($dark_shadow, .3); &:first-child { border-width: 1px; border-radius: $roundness; - border-right-width: 0; - border-bottom-right-radius: 0; + border-left-style: solid; + border-right-style: none; border-top-right-radius: 0; + border-bottom-right-radius: 0; + + &:dir(rtl) { + border-left-style: none; + border-right-style: solid; + } } &:last-child { border-width: 1px; border-radius: $roundness; - border-left-width: 0; - border-bottom-left-radius: 0; + border-left-style: none; + border-right-style: solid; border-top-left-radius: 0; + border-bottom-left-radius: 0; + + &:dir(rtl) { + border-left-style: solid; + border-right-style: none; + } } &:only-child { @@ -28,7 +41,10 @@ border-radius: $roundness; } - &:focus, &:hover { box-shadow: inset -1px 0 border_focus($bg); } + &:focus, &:hover { + box-shadow: inset -1px 0 border_focus($bg), + 0 1px 2px -1px alpha($dark_shadow, .3); + } &:active, &:active:hover, &:active:focus, &:active:hover:focus { @@ -61,11 +77,16 @@ border-style: solid; color: $fg; transition: 100ms ease; + box-shadow: 0 1px 2px -1px alpha($dark_shadow, .3); -GtkWidget-focus-padding: 1; -GtkWidget-focus-line-width: 0; - &:focus, &:hover { @include linear-gradient(shade($bg, 1.1)); } + &:focus, &:hover { + @include linear-gradient(shade($bg, 1.1)); + + box-shadow: 0 1px 3px -1px alpha($dark_shadow, .5); + } &:active { @include linear-gradient(shade($bg, .95)); @@ -80,6 +101,7 @@ @include linear-gradient(shade($bg, .95)); color: mix($bg, $fg, .5); + box-shadow: none; } &:active *:insensitive { @@ -94,12 +116,10 @@ &:insensitive { color: shade($bg, .85); } } - - &.linked, &.raised.linked, .linked & { @include linked_button(shade($bg, 1.05), $dark_shadow); } } .button { @include button($bg_color, $fg_color); &.default { @include button($selected_bg_color, $selected_fg_color); } -} \ No newline at end of file +} diff --git a/gtk-3.0/scss/_colors.scss b/gtk-3.0/scss/_colors.scss new file mode 100644 index 0000000..37ab130 --- /dev/null +++ b/gtk-3.0/scss/_colors.scss @@ -0,0 +1,67 @@ +@import "global"; + +/* dark color scheme */ +@define-color dark_bg_color #{"" + $dark_bg_color}; +@define-color dark_fg_color #{"" + $dark_fg_color}; + +/* colormap actually used by the theme, to be overridden in other css files */ +@define-color theme_bg_color #{"" + $bg_color}; +@define-color theme_fg_color #{"" + $fg_color}; +@define-color theme_base_color #{"" + $base_color}; +@define-color theme_text_color #{"" + $text_color}; +@define-color theme_selected_bg_color #{"" + $selected_bg_color}; +@define-color theme_selected_fg_color #{"" + $selected_fg_color}; +@define-color theme_tooltip_bg_color #{"" + $tooltip_bg_color}; +@define-color theme_tooltip_fg_color #{"" + $tooltip_fg_color}; + +/* shadow effects */ +@define-color light_shadow #{"" + $light_shadow}; +@define-color dark_shadow #{"" + $dark_shadow}; + +/* misc colors used by gtk+ */ +@define-color info_fg_color #{"" + $info_fg_color}; +@define-color info_bg_color #{"" + $info_bg_color}; +@define-color warning_fg_color #{"" + $warning_fg_color}; +@define-color warning_bg_color #{"" + $warning_bg_color}; +@define-color question_fg_color #{"" + $question_fg_color}; +@define-color question_bg_color #{"" + $question_bg_color}; +@define-color error_fg_color #{"" + $error_fg_color}; +@define-color error_bg_color #{"" + $error_bg_color}; +@define-color link_color #{"" + $link_color}; +@define-color success_color #{"" + $success_color}; +@define-color warning_color #{"" + $warning_color}; +@define-color error_color #{"" + $error_color}; + +/* widget colors */ +@define-color titlebar_bg_color @dark_bg_color; +@define-color titlebar_fg_color @dark_fg_color; +@define-color menubar_bg_color @dark_bg_color; +@define-color menubar_fg_color @dark_fg_color; +@define-color toolbar_bg_color @theme_bg_color; +@define-color toolbar_fg_color @theme_fg_color; +@define-color menu_bg_color @dark_bg_color; +@define-color menu_fg_color @dark_fg_color; +@define-color panel_bg_color @dark_bg_color; +@define-color panel_fg_color @dark_fg_color; + +/* osd */ +@define-color osd_base @dark_bg_color; +@define-color osd_fg @dark_fg_color; +@define-color osd_bg alpha(@osd_base, 0.8); + +/* lightdm greeter colors */ +@define-color lightdm_bg_color @dark_bg_color; +@define-color lightdm_fg_color @dark_fg_color; + +/* window manager colors */ +@define-color wm_bg @titlebar_bg_color; +@define-color wm_border_focused mix(shade(@titlebar_bg_color, 0.7), @titlebar_fg_color, 0.21); +@define-color wm_border_unfocused mix(shade(@titlebar_bg_color, 0.7), @titlebar_fg_color, 0.12); +@define-color wm_title_focused mix(@titlebar_fg_color, @titlebar_bg_color, 0.1); +@define-color wm_title_unfocused mix(@titlebar_fg_color, @titlebar_bg_color, 0.4); +@define-color wm_icons_focused mix(@titlebar_fg_color, @titlebar_bg_color, 0.1); +@define-color wm_icons_focused_prelight @selected_bg_color; +@define-color wm_icons_focused_pressed shade(@selected_bg_color, 0.8); +@define-color wm_icons_unfocused mix(@titlebar_fg_color, @titlebar_bg_color, 0.4); +@define-color wm_icons_unfocused_prelight @selected_bg_color; +@define-color wm_icons_unfocused_pressed shade(@selected_bg_color, 0.8); diff --git a/gtk-3.0/scss/_entry.scss b/gtk-3.0/scss/_entry.scss index dc9e658..f86563b 100644 --- a/gtk-3.0/scss/_entry.scss +++ b/gtk-3.0/scss/_entry.scss @@ -40,7 +40,8 @@ box-shadow: inset 1px 0 alpha($dark_shadow, .1), inset 0 1px alpha($dark_shadow, .12), inset -1px 0 alpha($dark_shadow, .1), - inset 0 -1px alpha($dark_shadow, .05); + inset 0 -1px alpha($dark_shadow, .05), + 0 1px 2px -1px shade($bg_color, 1.4); &:selected, &:selected:focus { background-color: $selected_bg_color; @@ -65,8 +66,4 @@ &.image.left { padding-right: $spacing; } } -.entry { - @include entry($base_color, $text_color); - - .linked & { @include linked_entry($base_color); } -} \ No newline at end of file +.entry { @include entry($base_color, $text_color); } diff --git a/gtk-3.0/scss/_functions.scss b/gtk-3.0/scss/_functions.scss index ab12059..5d90e85 100644 --- a/gtk-3.0/scss/_functions.scss +++ b/gtk-3.0/scss/_functions.scss @@ -29,15 +29,15 @@ } @function border_focus($color) { - @return shade($color, ($contrast - .1)); + @return shade($color, ($contrast - .05)); } @function border_active($color) { - @return shade($color, ($contrast - .15)); + @return shade($color, ($contrast - .10)); } @function border_insensitive($color) { - @return shade($color, ($contrast + .05)); + @return shade($color, ($contrast + .1)); } @mixin linear-gradient($color, $direction: to bottom) { @@ -61,4 +61,4 @@ &:insensitive { border-color: border_insensitive($color); } &:active *:insensitive { border-color: border_normal($color); } -} \ No newline at end of file +} diff --git a/gtk-3.0/scss/_global.scss b/gtk-3.0/scss/_global.scss index eee1977..c19db09 100644 --- a/gtk-3.0/scss/_global.scss +++ b/gtk-3.0/scss/_global.scss @@ -1,30 +1,30 @@ /* default color scheme */ -$bg_color: #dedede; -$fg_color: #555555; -$base_color: #f9f9f9; -$text_color: #2d2d2d; -$selected_bg_color: #d64937; -$selected_fg_color: #f9f9f9; -$tooltip_bg_color: #2d2d2d; -$tooltip_fg_color: #dedede; +$bg_color: #eee; +$fg_color: #444; +$base_color: #fff; +$text_color: #444; +$selected_bg_color: #f06860; +$selected_fg_color: #fff; +$tooltip_bg_color: #444; +$tooltip_fg_color: #eee; /* dark colors */ -$dark_bg_color: #2d2d2d; -$dark_fg_color: #dedede; +$dark_bg_color: #444; +$dark_fg_color: #eee; /* shadows */ $dark_shadow: #000; $light_shadow: #fff; /* misc colors used by gtk+ */ -$info_fg_color: rgb (58, 135, 173); -$info_bg_color: rgb (217, 237, 247); -$warning_fg_color: rgb (192, 152, 83); -$warning_bg_color: rgb (252, 248, 227); -$question_fg_color: rgb (214, 73, 55); -$question_bg_color: rgb (252, 229, 213); -$error_fg_color: rgb (185, 74, 72); -$error_bg_color: rgb (242, 222, 222); +$info_fg_color: #3986ac; +$info_bg_color: #d9edf7; +$warning_fg_color: #c09853; +$warning_bg_color: #fcf8e3; +$question_fg_color: #d64937; +$question_bg_color: #fce5d5; +$error_fg_color: #b94a48; +$error_bg_color: #f2dede; $link_color: #fc6f5d; $success_color: #53a93f; $warning_color: #f57900; @@ -40,4 +40,4 @@ $menu_fg_color: $dark_fg_color; $roundness: 2px; $spacing: 5px; $gradient: 0; -$contrast: .7; \ No newline at end of file +$contrast: .7; diff --git a/gtk-3.0/scss/_toolbar.scss b/gtk-3.0/scss/_toolbar.scss index e4f21ca..fd96a69 100644 --- a/gtk-3.0/scss/_toolbar.scss +++ b/gtk-3.0/scss/_toolbar.scss @@ -61,7 +61,7 @@ @include linear-gradient($titlebar_bg_color); border-radius: $roundness $roundness 0 0; - color: mix($titlebar_fg_color, $titlebar_bg_color, .9); + color: mix($titlebar_fg_color, $titlebar_bg_color, .1); &:backdrop { @include linear-gradient($titlebar_bg_color); @@ -103,18 +103,3 @@ } } } - -.window-frame { - margin: 10px; - border-style: none; - border-radius: $roundness $roundness 0 0; - box-shadow: 0 3px 7px 1px fade-out(black, .3), - 0 0 0 1px mix($titlebar_fg_color, $titlebar_bg_color, 21%); - - &:backdrop { - box-shadow: 0 3px 5px 1px fade-out(black, 0.5), - 0 0 0 1px mix($titlebar_fg_color, $titlebar_bg_color, 12%); - } - - &.tiled { border-radius: 0; } -} \ No newline at end of file diff --git a/gtk-3.0/scss/_window.scss b/gtk-3.0/scss/_window.scss new file mode 100644 index 0000000..eb91653 --- /dev/null +++ b/gtk-3.0/scss/_window.scss @@ -0,0 +1,35 @@ +.window-frame { + border-style: none; + border-radius: 2px 2px 0 0; + box-shadow: 0 3px 7px 1px alpha(black, 0.7), + 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); + + /* this is used for the resize cursor area */ + margin: 10px; + + &:backdrop { + box-shadow: 0 3px 5px 1px alpha(black, 0.5), + 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.12); + } + + &.tiled { border-radius: 0; } + + &.csd { + &.popup { + border-radius: 0; + box-shadow: 0 1px 2px alpha(black, 0.8), + 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); + } + + &.tooltip { + border-radius: 2px; + box-shadow: none; + } + + &.message-dialog { + border-radius: 2px; + box-shadow: 0 1px 2px alpha(black, 0.8), + 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); + } + } +} diff --git a/gtk-3.0/scss/widgets.scss b/gtk-3.0/scss/widgets.scss index 178dccc..09c5ce7 100644 --- a/gtk-3.0/scss/widgets.scss +++ b/gtk-3.0/scss/widgets.scss @@ -1,5 +1,7 @@ +@import "colors"; @import "base"; @import "button"; @import "entry"; @import "menu"; -@import "toolbar"; \ No newline at end of file +@import "toolbar"; +@import "window"; From 5be05672307f03b76c6823eff154214c280b6ce1 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sun, 19 Oct 2014 02:27:23 +0530 Subject: [PATCH 03/73] Added more styles --- gtk-3.0/scss/_base.scss | 126 +++++++++++++++++++++++++++++++++------- 1 file changed, 105 insertions(+), 21 deletions(-) diff --git a/gtk-3.0/scss/_base.scss b/gtk-3.0/scss/_base.scss index 95a1994..224814b 100644 --- a/gtk-3.0/scss/_base.scss +++ b/gtk-3.0/scss/_base.scss @@ -1,4 +1,5 @@ @import "functions"; +@import "global"; * { -GtkArrow-arrow-scaling: 0.5; @@ -40,24 +41,25 @@ -GtkWidget-focus-line-width: 1; -GtkWidget-focus-padding: 0; - /* outline-color: alpha($selected_bg_color, 0.5); outline-style: dashed; outline-width: 1px; outline-offset: -2px; outline-radius: 2px; - */ } /*************** -* base states * -***************/ -* { - &:selected, - &:selected:focus { + * base states * + ***************/ +%selected_items { + &, &:focus { background-color: $selected_bg_color; color: $selected_fg_color; } +} + +* { + &:selected { @extend %selected_items; } &:insensitive, &:insensitive:insensitive { color: mix($fg_color, $bg_color, 50%); } @@ -65,6 +67,14 @@ &:insensitive { -gtk-image-effect: dim; } &:hover { -gtk-image-effect: highlight; } + + /* hyperlinks */ + -GtkHTML-link-color: $link_color; + -GtkIMHtml-hyperlink-color: $link_color; + -GtkWidget-link-color: $link_color; + -GtkWidget-visited-link-color: $link_color; + + &:link, &:visited { color: $link_color; } } .background { @@ -96,24 +106,98 @@ color: mix($fg_color, $bg_color, 50%); } - &:selected { - background-color: $selected_bg_color; - color: $selected_fg_color; - } + &:selected { @extend %selected_items; } } GtkImage, GtkLabel, GtkBox, GtkGrid { &, &:insensitive { background-color: transparent; } } -/************** -* hyperlinks * -**************/ -* { - -GtkHTML-link-color: $link_color; - -GtkIMHtml-hyperlink-color: $link_color; - -GtkWidget-link-color: $link_color; - -GtkWidget-visited-link-color: $link_color; +GtkLabel { + &.separator { + color: $fg_color; - &:link, &:visited { color: $link_color; } -} \ No newline at end of file + @extend .dim-label; + } + + &:selected { @extend %selected_items; } + + &:insensitive { color: mix($fg_color, $bg_color, 50%); } +} + +.dim-label { + opacity: 0.5; + text-shadow: none; +} + +.view { + color: $text_color; + background-color: $base_color; + + &:selected { @extend %selected_items; } +} + +.rubberband { + border: 1px solid $selected_bg_color; + background-color: alpha($selected_bg_color, 0.2); +} + +/* used by GtkScrolledWindow, shown when content is touch-dragged past boundaries. */ +.overshoot { background-color: alpha($selected_bg_color, 0.2); } + +GtkAssistant { + .sidebar { + background-color: $base_color; + border-top: 1px solid border_normal($base_color); + + &:dir(ltr) { border-right: 1px solid border_normal($base_color); } + &:dir(rtl) { border-left: 1px solid border_normal($base_color); } + + GtkLabel { + padding: $spacing ($spacing * 2); + + &.highlight { background-color: mix($bg_color, $fg_color, 80%); } + } + } + + &.csd .sidebar { border-top-style: none; } +} + +GtkTextView { + /* this will get overridden by .view, needed by gedit line numbers */ + background-color: mix($bg_color, $base_color, 50%); +} + + +GtkFlowBox .grid-child { + padding: 3px; + border-radius: 3px; + + &:selected { + @extend %selected_items; + + outline-offset: -2px; + } +} + +/********************* + * spinner animation * + *********************/ +@keyframes spin { + to { -gtk-icon-transform: rotate(1turn); } +} + +.spinner { + background-image: none; + background-color: blue; + opacity: 0; // non spinning spinner makes no sense + + -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); + + &:active { + opacity: 1; + animation: spin 1s linear infinite; + + &:insensitive { opacity: 0.5; } + } +} From e03e412f40a8d83df4c79fdcfc12c7a0f76bdf6b Mon Sep 17 00:00:00 2001 From: progandy Date: Mon, 20 Oct 2014 10:22:07 +0200 Subject: [PATCH 04/73] Essential support for radio and checkbox Supports sticky button, indeterminate radio and indeterminate checkbox. This requires the following icons in your icon theme. * checkbox-checked-symbolic.svg * checkbox-mixed-symbolic.svg * checkbox-symbolic.svg * radio-checked-symbolic.svg * radio-mixed-symbolic.svg * radio-symbolic.svg Fallback icons are available in the Adwaita icon theme. --- gtk-3.0/scss/_button.scss | 4 +++- gtk-3.0/scss/_toggle.scss | 40 +++++++++++++++++++++++++++++++++++++++ gtk-3.0/scss/widgets.scss | 1 + 3 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 gtk-3.0/scss/_toggle.scss diff --git a/gtk-3.0/scss/_button.scss b/gtk-3.0/scss/_button.scss index fe017a6..8efdfdc 100644 --- a/gtk-3.0/scss/_button.scss +++ b/gtk-3.0/scss/_button.scss @@ -88,9 +88,11 @@ box-shadow: 0 1px 3px -1px alpha($dark_shadow, .5); } - &:active { + &:checked, &:active { @include linear-gradient(shade($bg, .95)); + } + &:active { box-shadow: inset 1px 0 alpha($dark_shadow, .07), inset 0 1px alpha($dark_shadow, .08), inset -1px 0 alpha($dark_shadow, .07), diff --git a/gtk-3.0/scss/_toggle.scss b/gtk-3.0/scss/_toggle.scss new file mode 100644 index 0000000..a3af16a --- /dev/null +++ b/gtk-3.0/scss/_toggle.scss @@ -0,0 +1,40 @@ +/************************* + * Check and Radio items * + *************************/ +@mixin toggle($type, $bg, $fg) { + color: $fg; + background-image: none; + -gtk-icon-source: -gtk-icontheme('#{$type}-symbolic'); + + &:checked, &:active { + -gtk-icon-source: -gtk-icontheme('#{$type}-checked-symbolic'); + } + + &:inconsistent { + -gtk-icon-source: -gtk-icontheme('#{$type}-mixed-symbolic'); + } + + &:focus, &:hover { + color: shade($fg, 1.2); + } + + &:active { + color: shade($fg, 0.8); + } + + &:insensitive { + color: mix($bg, $fg, .5); + } + + &:active *:insensitive { + color: mix($bg, $fg, .8); + } + +} + +.radio { + @include toggle("radio", $bg_color, $fg_color); +} +.check { + @include toggle("checkbox", $bg_color, $fg_color); +} diff --git a/gtk-3.0/scss/widgets.scss b/gtk-3.0/scss/widgets.scss index 09c5ce7..1780fbc 100644 --- a/gtk-3.0/scss/widgets.scss +++ b/gtk-3.0/scss/widgets.scss @@ -1,6 +1,7 @@ @import "colors"; @import "base"; @import "button"; +@import "toggle"; @import "entry"; @import "menu"; @import "toolbar"; From cd54212f23f1d3d1e654a12aa75c12bff5965b44 Mon Sep 17 00:00:00 2001 From: progandy Date: Mon, 20 Oct 2014 10:23:51 +0200 Subject: [PATCH 05/73] Simplistic Makefile to call sass --- Makefile | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 Makefile diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..e5f44c6 --- /dev/null +++ b/Makefile @@ -0,0 +1,10 @@ +SASS=sass + +css: + $(SASS) --update gtk-3.0/scss:gtk-3.0/gen + +all: css + + +.PHONY: css +# vim: set ts=4 sw=4 tw=0 noet : From bc367f6471751b68dd68292daf7d4a89fd6d217b Mon Sep 17 00:00:00 2001 From: progandy Date: Mon, 20 Oct 2014 10:40:41 +0200 Subject: [PATCH 06/73] The mix command doesn't accept percent --- gtk-3.0/scss/_base.scss | 10 +++++----- gtk-3.0/scss/_toolbar.scss | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/gtk-3.0/scss/_base.scss b/gtk-3.0/scss/_base.scss index 224814b..521af8f 100644 --- a/gtk-3.0/scss/_base.scss +++ b/gtk-3.0/scss/_base.scss @@ -62,7 +62,7 @@ &:selected { @extend %selected_items; } &:insensitive, - &:insensitive:insensitive { color: mix($fg_color, $bg_color, 50%); } + &:insensitive:insensitive { color: mix($fg_color, $bg_color, 0.50); } &:insensitive { -gtk-image-effect: dim; } @@ -103,7 +103,7 @@ &:insensitive { background-color: shade(shade($bg_color, 0.95), 1.05); - color: mix($fg_color, $bg_color, 50%); + color: mix($fg_color, $bg_color, 0.50); } &:selected { @extend %selected_items; } @@ -122,7 +122,7 @@ GtkLabel { &:selected { @extend %selected_items; } - &:insensitive { color: mix($fg_color, $bg_color, 50%); } + &:insensitive { color: mix($fg_color, $bg_color, 0.50); } } .dim-label { @@ -156,7 +156,7 @@ GtkAssistant { GtkLabel { padding: $spacing ($spacing * 2); - &.highlight { background-color: mix($bg_color, $fg_color, 80%); } + &.highlight { background-color: mix($bg_color, $fg_color, 0.80); } } } @@ -165,7 +165,7 @@ GtkAssistant { GtkTextView { /* this will get overridden by .view, needed by gedit line numbers */ - background-color: mix($bg_color, $base_color, 50%); + background-color: mix($bg_color, $base_color, 0.50); } diff --git a/gtk-3.0/scss/_toolbar.scss b/gtk-3.0/scss/_toolbar.scss index fd96a69..491a507 100644 --- a/gtk-3.0/scss/_toolbar.scss +++ b/gtk-3.0/scss/_toolbar.scss @@ -83,7 +83,7 @@ padding: $spacing; border: none; background: none; - color: mix($titlebar_fg_color, $titlebar_bg_color, 90%); + color: mix($titlebar_fg_color, $titlebar_bg_color, 0.90); &:hover, &:hover:focus { background: none; @@ -98,7 +98,7 @@ &:backdrop { background-image: none; - color: mix($titlebar_fg_color, $titlebar_bg_color, 60%); + color: mix($titlebar_fg_color, $titlebar_bg_color, 0.60); icon-shadow: none; } } From e1b94f2602a8f3044252ade6cc82d3372b6a8ba2 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Tue, 21 Oct 2014 00:21:50 +0530 Subject: [PATCH 07/73] Added a clean task to Makefile --- .gitignore | 3 ++- Makefile | 10 +++++++--- gtk-3.0/gtk.css | 2 +- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 29d5568..c8a7d64 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ # Ignore Backup Copies from Text Editor *~ + # Ignore SASS files .sass-cache -gen +dist diff --git a/Makefile b/Makefile index e5f44c6..a3777f1 100644 --- a/Makefile +++ b/Makefile @@ -1,10 +1,14 @@ SASS=sass +SCSS_DIR=gtk-3.0/scss +DIST_DIR=gtk-3.0/dist -css: - $(SASS) --update gtk-3.0/scss:gtk-3.0/gen +css: + $(SASS) --sourcemap=none --update $(SCSS_DIR):$(DIST_DIR) all: css - +clean: + rm -rf $(DIST_DIR) + .PHONY: css # vim: set ts=4 sw=4 tw=0 noet : diff --git a/gtk-3.0/gtk.css b/gtk-3.0/gtk.css index fe669f9..27ebee0 100644 --- a/gtk-3.0/gtk.css +++ b/gtk-3.0/gtk.css @@ -1,2 +1,2 @@ -@import url("gen/widgets.css"); \ No newline at end of file +@import url("dist/widgets.css"); From ce39f0cf9c22f633d08bb8d249923d102ebc62d5 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Thu, 13 Nov 2014 23:45:48 +0530 Subject: [PATCH 08/73] Added sidebar styles --- CREDITS | 0 LICENSE | 0 Makefile | 0 README.md | 0 gtk-2.0/gtkrc | 0 gtk-3.0/gtk.css | 0 gtk-3.0/scss/_base.scss | 0 gtk-3.0/scss/_button.scss | 0 gtk-3.0/scss/_colors.scss | 0 gtk-3.0/scss/_entry.scss | 0 gtk-3.0/scss/_functions.scss | 0 gtk-3.0/scss/_global.scss | 6 +++ gtk-3.0/scss/_menu.scss | 0 gtk-3.0/scss/_sidebar.scss | 54 ++++++++++++++++++++++++++ gtk-3.0/scss/_toggle.scss | 0 gtk-3.0/scss/_toolbar.scss | 0 gtk-3.0/scss/_window.scss | 0 gtk-3.0/scss/widgets.scss | 1 + index.theme | 0 metacity-1/metacity-theme-2.xml | 0 metacity-1/metacity-theme-3.xml | 0 openbox-3/close.xbm | 0 openbox-3/desk.xbm | 0 openbox-3/desk_toggled.xbm | 0 openbox-3/iconify.xbm | 0 openbox-3/max.xbm | 0 openbox-3/max_toggled.xbm | 0 openbox-3/shade.xbm | 0 openbox-3/shade_toggled.xbm | 0 openbox-3/themerc | 0 unity/close.svg | 0 unity/close_focused_prelight.svg | 0 unity/close_focused_pressed.svg | 0 unity/close_unfocused.svg | 0 unity/maximize.svg | 0 unity/maximize_focused_prelight.svg | 0 unity/maximize_focused_pressed.svg | 0 unity/maximize_unfocused.svg | 0 unity/minimize.svg | 0 unity/minimize_focused_prelight.svg | 0 unity/minimize_focused_pressed.svg | 0 unity/minimize_unfocused.svg | 0 unity/minimized.svg | 0 unity/progress_bar_fill.svg | 0 unity/progress_bar_trough.svg | 0 unity/unmaximize.svg | 0 unity/unmaximize_focused_prelight.svg | 0 unity/unmaximize_focused_pressed.svg | 0 unity/unmaximize_unfocused.svg | 0 xfce-notify-4.0/gtkrc | 0 xfwm4/bottom-active.xpm | 0 xfwm4/bottom-inactive.xpm | 0 xfwm4/bottom-left-active.xpm | 0 xfwm4/bottom-left-inactive.xpm | 0 xfwm4/bottom-right-active.xpm | 0 xfwm4/bottom-right-inactive.xpm | 0 xfwm4/close-active.xpm | 0 xfwm4/close-inactive.xpm | 0 xfwm4/close-prelight.xpm | 0 xfwm4/close-pressed.png | Bin xfwm4/close-pressed.xpm | 0 xfwm4/hide-active.xpm | 0 xfwm4/hide-inactive.xpm | 0 xfwm4/hide-prelight.xpm | 0 xfwm4/hide-pressed.png | Bin xfwm4/hide-pressed.xpm | 0 xfwm4/left-active.xpm | 0 xfwm4/left-inactive.xpm | 0 xfwm4/maximize-active.xpm | 0 xfwm4/maximize-inactive.xpm | 0 xfwm4/maximize-prelight.xpm | 0 xfwm4/maximize-pressed.png | Bin xfwm4/maximize-pressed.xpm | 0 xfwm4/maximize-toggled-active.xpm | 0 xfwm4/maximize-toggled-inactive.xpm | 0 xfwm4/maximize-toggled-prelight.xpm | 0 xfwm4/maximize-toggled-pressed.png | Bin xfwm4/maximize-toggled-pressed.xpm | 0 xfwm4/menu-active.xpm | 0 xfwm4/menu-inactive.xpm | 0 xfwm4/menu-prelight.xpm | 0 xfwm4/menu-pressed.xpm | 0 xfwm4/right-active.xpm | 0 xfwm4/right-inactive.xpm | 0 xfwm4/shade-active.xpm | 0 xfwm4/shade-inactive.xpm | 0 xfwm4/shade-prelight.xpm | 0 xfwm4/shade-pressed.png | Bin xfwm4/shade-pressed.xpm | 0 xfwm4/shade-toggled-active.xpm | 0 xfwm4/shade-toggled-inactive.xpm | 0 xfwm4/shade-toggled-prelight.xpm | 0 xfwm4/shade-toggled-pressed.png | Bin xfwm4/shade-toggled-pressed.xpm | 0 xfwm4/stick-active.xpm | 0 xfwm4/stick-inactive.xpm | 0 xfwm4/stick-prelight.xpm | 0 xfwm4/stick-pressed.png | Bin xfwm4/stick-pressed.xpm | 0 xfwm4/stick-toggled-active.xpm | 0 xfwm4/stick-toggled-inactive.xpm | 0 xfwm4/stick-toggled-prelight.xpm | 0 xfwm4/stick-toggled-pressed.png | Bin xfwm4/stick-toggled-pressed.xpm | 0 xfwm4/themerc | 0 xfwm4/title-1-active.xpm | 0 xfwm4/title-1-inactive.xpm | 0 xfwm4/title-2-active.xpm | 0 xfwm4/title-2-inactive.xpm | 0 xfwm4/title-3-active.xpm | 0 xfwm4/title-3-inactive.xpm | 0 xfwm4/title-4-active.xpm | 0 xfwm4/title-4-inactive.xpm | 0 xfwm4/title-5-active.xpm | 0 xfwm4/title-5-inactive.xpm | 0 xfwm4/top-left-active.xpm | 0 xfwm4/top-left-inactive.xpm | 0 xfwm4/top-right-active.xpm | 0 xfwm4/top-right-inactive.xpm | 0 119 files changed, 61 insertions(+) mode change 100644 => 100755 CREDITS mode change 100644 => 100755 LICENSE mode change 100644 => 100755 Makefile mode change 100644 => 100755 README.md mode change 100644 => 100755 gtk-2.0/gtkrc mode change 100644 => 100755 gtk-3.0/gtk.css mode change 100644 => 100755 gtk-3.0/scss/_base.scss mode change 100644 => 100755 gtk-3.0/scss/_button.scss mode change 100644 => 100755 gtk-3.0/scss/_colors.scss mode change 100644 => 100755 gtk-3.0/scss/_entry.scss mode change 100644 => 100755 gtk-3.0/scss/_functions.scss mode change 100644 => 100755 gtk-3.0/scss/_global.scss mode change 100644 => 100755 gtk-3.0/scss/_menu.scss create mode 100755 gtk-3.0/scss/_sidebar.scss mode change 100644 => 100755 gtk-3.0/scss/_toggle.scss mode change 100644 => 100755 gtk-3.0/scss/_toolbar.scss mode change 100644 => 100755 gtk-3.0/scss/_window.scss mode change 100644 => 100755 gtk-3.0/scss/widgets.scss mode change 100644 => 100755 index.theme mode change 100644 => 100755 metacity-1/metacity-theme-2.xml mode change 100644 => 100755 metacity-1/metacity-theme-3.xml mode change 100644 => 100755 openbox-3/close.xbm mode change 100644 => 100755 openbox-3/desk.xbm mode change 100644 => 100755 openbox-3/desk_toggled.xbm mode change 100644 => 100755 openbox-3/iconify.xbm mode change 100644 => 100755 openbox-3/max.xbm mode change 100644 => 100755 openbox-3/max_toggled.xbm mode change 100644 => 100755 openbox-3/shade.xbm mode change 100644 => 100755 openbox-3/shade_toggled.xbm mode change 100644 => 100755 openbox-3/themerc mode change 100644 => 100755 unity/close.svg mode change 100644 => 100755 unity/close_focused_prelight.svg mode change 100644 => 100755 unity/close_focused_pressed.svg mode change 100644 => 100755 unity/close_unfocused.svg mode change 100644 => 100755 unity/maximize.svg mode change 100644 => 100755 unity/maximize_focused_prelight.svg mode change 100644 => 100755 unity/maximize_focused_pressed.svg mode change 100644 => 100755 unity/maximize_unfocused.svg mode change 100644 => 100755 unity/minimize.svg mode change 100644 => 100755 unity/minimize_focused_prelight.svg mode change 100644 => 100755 unity/minimize_focused_pressed.svg mode change 100644 => 100755 unity/minimize_unfocused.svg mode change 100644 => 100755 unity/minimized.svg mode change 100644 => 100755 unity/progress_bar_fill.svg mode change 100644 => 100755 unity/progress_bar_trough.svg mode change 100644 => 100755 unity/unmaximize.svg mode change 100644 => 100755 unity/unmaximize_focused_prelight.svg mode change 100644 => 100755 unity/unmaximize_focused_pressed.svg mode change 100644 => 100755 unity/unmaximize_unfocused.svg mode change 100644 => 100755 xfce-notify-4.0/gtkrc mode change 100644 => 100755 xfwm4/bottom-active.xpm mode change 100644 => 100755 xfwm4/bottom-inactive.xpm mode change 100644 => 100755 xfwm4/bottom-left-active.xpm mode change 100644 => 100755 xfwm4/bottom-left-inactive.xpm mode change 100644 => 100755 xfwm4/bottom-right-active.xpm mode change 100644 => 100755 xfwm4/bottom-right-inactive.xpm mode change 100644 => 100755 xfwm4/close-active.xpm mode change 100644 => 100755 xfwm4/close-inactive.xpm mode change 100644 => 100755 xfwm4/close-prelight.xpm mode change 100644 => 100755 xfwm4/close-pressed.png mode change 100644 => 100755 xfwm4/close-pressed.xpm mode change 100644 => 100755 xfwm4/hide-active.xpm mode change 100644 => 100755 xfwm4/hide-inactive.xpm mode change 100644 => 100755 xfwm4/hide-prelight.xpm mode change 100644 => 100755 xfwm4/hide-pressed.png mode change 100644 => 100755 xfwm4/hide-pressed.xpm mode change 100644 => 100755 xfwm4/left-active.xpm mode change 100644 => 100755 xfwm4/left-inactive.xpm mode change 100644 => 100755 xfwm4/maximize-active.xpm mode change 100644 => 100755 xfwm4/maximize-inactive.xpm mode change 100644 => 100755 xfwm4/maximize-prelight.xpm mode change 100644 => 100755 xfwm4/maximize-pressed.png mode change 100644 => 100755 xfwm4/maximize-pressed.xpm mode change 100644 => 100755 xfwm4/maximize-toggled-active.xpm mode change 100644 => 100755 xfwm4/maximize-toggled-inactive.xpm mode change 100644 => 100755 xfwm4/maximize-toggled-prelight.xpm mode change 100644 => 100755 xfwm4/maximize-toggled-pressed.png mode change 100644 => 100755 xfwm4/maximize-toggled-pressed.xpm mode change 100644 => 100755 xfwm4/menu-active.xpm mode change 100644 => 100755 xfwm4/menu-inactive.xpm mode change 100644 => 100755 xfwm4/menu-prelight.xpm mode change 100644 => 100755 xfwm4/menu-pressed.xpm mode change 100644 => 100755 xfwm4/right-active.xpm mode change 100644 => 100755 xfwm4/right-inactive.xpm mode change 100644 => 100755 xfwm4/shade-active.xpm mode change 100644 => 100755 xfwm4/shade-inactive.xpm mode change 100644 => 100755 xfwm4/shade-prelight.xpm mode change 100644 => 100755 xfwm4/shade-pressed.png mode change 100644 => 100755 xfwm4/shade-pressed.xpm mode change 100644 => 100755 xfwm4/shade-toggled-active.xpm mode change 100644 => 100755 xfwm4/shade-toggled-inactive.xpm mode change 100644 => 100755 xfwm4/shade-toggled-prelight.xpm mode change 100644 => 100755 xfwm4/shade-toggled-pressed.png mode change 100644 => 100755 xfwm4/shade-toggled-pressed.xpm mode change 100644 => 100755 xfwm4/stick-active.xpm mode change 100644 => 100755 xfwm4/stick-inactive.xpm mode change 100644 => 100755 xfwm4/stick-prelight.xpm mode change 100644 => 100755 xfwm4/stick-pressed.png mode change 100644 => 100755 xfwm4/stick-pressed.xpm mode change 100644 => 100755 xfwm4/stick-toggled-active.xpm mode change 100644 => 100755 xfwm4/stick-toggled-inactive.xpm mode change 100644 => 100755 xfwm4/stick-toggled-prelight.xpm mode change 100644 => 100755 xfwm4/stick-toggled-pressed.png mode change 100644 => 100755 xfwm4/stick-toggled-pressed.xpm mode change 100644 => 100755 xfwm4/themerc mode change 100644 => 100755 xfwm4/title-1-active.xpm mode change 100644 => 100755 xfwm4/title-1-inactive.xpm mode change 100644 => 100755 xfwm4/title-2-active.xpm mode change 100644 => 100755 xfwm4/title-2-inactive.xpm mode change 100644 => 100755 xfwm4/title-3-active.xpm mode change 100644 => 100755 xfwm4/title-3-inactive.xpm mode change 100644 => 100755 xfwm4/title-4-active.xpm mode change 100644 => 100755 xfwm4/title-4-inactive.xpm mode change 100644 => 100755 xfwm4/title-5-active.xpm mode change 100644 => 100755 xfwm4/title-5-inactive.xpm mode change 100644 => 100755 xfwm4/top-left-active.xpm mode change 100644 => 100755 xfwm4/top-left-inactive.xpm mode change 100644 => 100755 xfwm4/top-right-active.xpm mode change 100644 => 100755 xfwm4/top-right-inactive.xpm diff --git a/CREDITS b/CREDITS old mode 100644 new mode 100755 diff --git a/LICENSE b/LICENSE old mode 100644 new mode 100755 diff --git a/Makefile b/Makefile old mode 100644 new mode 100755 diff --git a/README.md b/README.md old mode 100644 new mode 100755 diff --git a/gtk-2.0/gtkrc b/gtk-2.0/gtkrc old mode 100644 new mode 100755 diff --git a/gtk-3.0/gtk.css b/gtk-3.0/gtk.css old mode 100644 new mode 100755 diff --git a/gtk-3.0/scss/_base.scss b/gtk-3.0/scss/_base.scss old mode 100644 new mode 100755 diff --git a/gtk-3.0/scss/_button.scss b/gtk-3.0/scss/_button.scss old mode 100644 new mode 100755 diff --git a/gtk-3.0/scss/_colors.scss b/gtk-3.0/scss/_colors.scss old mode 100644 new mode 100755 diff --git a/gtk-3.0/scss/_entry.scss b/gtk-3.0/scss/_entry.scss old mode 100644 new mode 100755 diff --git a/gtk-3.0/scss/_functions.scss b/gtk-3.0/scss/_functions.scss old mode 100644 new mode 100755 diff --git a/gtk-3.0/scss/_global.scss b/gtk-3.0/scss/_global.scss old mode 100644 new mode 100755 index c19db09..d6f6cf7 --- a/gtk-3.0/scss/_global.scss +++ b/gtk-3.0/scss/_global.scss @@ -30,12 +30,18 @@ $success_color: #53a93f; $warning_color: #f57900; $error_color: #cc0000; +$toolbar_bg_color: $bg_color; +$toolbar_fg_color: $fg_color; + $titlebar_bg_color: $dark_bg_color; $titlebar_fg_color: $dark_fg_color; $menu_bg_color: $dark_bg_color; $menu_fg_color: $dark_fg_color; +$menubar_bg_color: $dark_bg_color; +$menubar_fg_color: $dark_fg_color; + /* widget styles */ $roundness: 2px; $spacing: 5px; diff --git a/gtk-3.0/scss/_menu.scss b/gtk-3.0/scss/_menu.scss old mode 100644 new mode 100755 diff --git a/gtk-3.0/scss/_sidebar.scss b/gtk-3.0/scss/_sidebar.scss new file mode 100755 index 0000000..7584d2c --- /dev/null +++ b/gtk-3.0/scss/_sidebar.scss @@ -0,0 +1,54 @@ +@import "functions"; + +.sidebar { + &, &.view, & .view, & GtkScrolledWindow { + background-color: $bg_color; + color: mix($fg_color, $bg_color, 0.1); + + &.separator { + border-width: 1px; + border-style: solid; + border-color: shade($bg_color, 0.9); + color: shade($bg_color, 0.9); + } + } + + row, .view row { + &:selected { + &, &:hover, &:focus { + border-color: border_normal($selected_bg_color); + background-color: $selected_bg_color; + background-image: none; + color: $selected_fg_color; + } + + &:prelight { + border-color: border_focus($selected_bg_color); + background-color: shade($selected_bg_color, 1.05); + background-image: none; + color: $selected_fg_color; + } + } + + &:prelight { + border-color: shade($bg_color, 1.05); + background-color: shade($bg_color, 1.05); + background-image: none; + color: $fg_color; + } + } + + .frame { border-width: 0; } + + GtkAssistant & { + padding: 4px; + border-width: 0 1px 0 0; + border-style: solid; + border-right-color: border_normal($bg_color); + border-radius: 0; + background-color: $bg_color; + color: mix($fg_color, $bg_color, 0.1); + + .highlight { font: bold; } + } +} diff --git a/gtk-3.0/scss/_toggle.scss b/gtk-3.0/scss/_toggle.scss old mode 100644 new mode 100755 diff --git a/gtk-3.0/scss/_toolbar.scss b/gtk-3.0/scss/_toolbar.scss old mode 100644 new mode 100755 diff --git a/gtk-3.0/scss/_window.scss b/gtk-3.0/scss/_window.scss old mode 100644 new mode 100755 diff --git a/gtk-3.0/scss/widgets.scss b/gtk-3.0/scss/widgets.scss old mode 100644 new mode 100755 index 1780fbc..e1ca55a --- a/gtk-3.0/scss/widgets.scss +++ b/gtk-3.0/scss/widgets.scss @@ -5,4 +5,5 @@ @import "entry"; @import "menu"; @import "toolbar"; +@import "sidebar"; @import "window"; diff --git a/index.theme b/index.theme old mode 100644 new mode 100755 diff --git a/metacity-1/metacity-theme-2.xml b/metacity-1/metacity-theme-2.xml old mode 100644 new mode 100755 diff --git a/metacity-1/metacity-theme-3.xml b/metacity-1/metacity-theme-3.xml old mode 100644 new mode 100755 diff --git a/openbox-3/close.xbm b/openbox-3/close.xbm old mode 100644 new mode 100755 diff --git a/openbox-3/desk.xbm b/openbox-3/desk.xbm old mode 100644 new mode 100755 diff --git a/openbox-3/desk_toggled.xbm b/openbox-3/desk_toggled.xbm old mode 100644 new mode 100755 diff --git a/openbox-3/iconify.xbm b/openbox-3/iconify.xbm old mode 100644 new mode 100755 diff --git a/openbox-3/max.xbm b/openbox-3/max.xbm old mode 100644 new mode 100755 diff --git a/openbox-3/max_toggled.xbm b/openbox-3/max_toggled.xbm old mode 100644 new mode 100755 diff --git a/openbox-3/shade.xbm b/openbox-3/shade.xbm old mode 100644 new mode 100755 diff --git a/openbox-3/shade_toggled.xbm b/openbox-3/shade_toggled.xbm old mode 100644 new mode 100755 diff --git a/openbox-3/themerc b/openbox-3/themerc old mode 100644 new mode 100755 diff --git a/unity/close.svg b/unity/close.svg old mode 100644 new mode 100755 diff --git a/unity/close_focused_prelight.svg b/unity/close_focused_prelight.svg old mode 100644 new mode 100755 diff --git a/unity/close_focused_pressed.svg b/unity/close_focused_pressed.svg old mode 100644 new mode 100755 diff --git a/unity/close_unfocused.svg b/unity/close_unfocused.svg old mode 100644 new mode 100755 diff --git a/unity/maximize.svg b/unity/maximize.svg old mode 100644 new mode 100755 diff --git a/unity/maximize_focused_prelight.svg b/unity/maximize_focused_prelight.svg old mode 100644 new mode 100755 diff --git a/unity/maximize_focused_pressed.svg b/unity/maximize_focused_pressed.svg old mode 100644 new mode 100755 diff --git a/unity/maximize_unfocused.svg b/unity/maximize_unfocused.svg old mode 100644 new mode 100755 diff --git a/unity/minimize.svg b/unity/minimize.svg old mode 100644 new mode 100755 diff --git a/unity/minimize_focused_prelight.svg b/unity/minimize_focused_prelight.svg old mode 100644 new mode 100755 diff --git a/unity/minimize_focused_pressed.svg b/unity/minimize_focused_pressed.svg old mode 100644 new mode 100755 diff --git a/unity/minimize_unfocused.svg b/unity/minimize_unfocused.svg old mode 100644 new mode 100755 diff --git a/unity/minimized.svg b/unity/minimized.svg old mode 100644 new mode 100755 diff --git a/unity/progress_bar_fill.svg b/unity/progress_bar_fill.svg old mode 100644 new mode 100755 diff --git a/unity/progress_bar_trough.svg b/unity/progress_bar_trough.svg old mode 100644 new mode 100755 diff --git a/unity/unmaximize.svg b/unity/unmaximize.svg old mode 100644 new mode 100755 diff --git a/unity/unmaximize_focused_prelight.svg b/unity/unmaximize_focused_prelight.svg old mode 100644 new mode 100755 diff --git a/unity/unmaximize_focused_pressed.svg b/unity/unmaximize_focused_pressed.svg old mode 100644 new mode 100755 diff --git a/unity/unmaximize_unfocused.svg b/unity/unmaximize_unfocused.svg old mode 100644 new mode 100755 diff --git a/xfce-notify-4.0/gtkrc b/xfce-notify-4.0/gtkrc old mode 100644 new mode 100755 diff --git a/xfwm4/bottom-active.xpm b/xfwm4/bottom-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/bottom-inactive.xpm b/xfwm4/bottom-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/bottom-left-active.xpm b/xfwm4/bottom-left-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/bottom-left-inactive.xpm b/xfwm4/bottom-left-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/bottom-right-active.xpm b/xfwm4/bottom-right-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/bottom-right-inactive.xpm b/xfwm4/bottom-right-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/close-active.xpm b/xfwm4/close-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/close-inactive.xpm b/xfwm4/close-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/close-prelight.xpm b/xfwm4/close-prelight.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/close-pressed.png b/xfwm4/close-pressed.png old mode 100644 new mode 100755 diff --git a/xfwm4/close-pressed.xpm b/xfwm4/close-pressed.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/hide-active.xpm b/xfwm4/hide-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/hide-inactive.xpm b/xfwm4/hide-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/hide-prelight.xpm b/xfwm4/hide-prelight.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/hide-pressed.png b/xfwm4/hide-pressed.png old mode 100644 new mode 100755 diff --git a/xfwm4/hide-pressed.xpm b/xfwm4/hide-pressed.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/left-active.xpm b/xfwm4/left-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/left-inactive.xpm b/xfwm4/left-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/maximize-active.xpm b/xfwm4/maximize-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/maximize-inactive.xpm b/xfwm4/maximize-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/maximize-prelight.xpm b/xfwm4/maximize-prelight.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/maximize-pressed.png b/xfwm4/maximize-pressed.png old mode 100644 new mode 100755 diff --git a/xfwm4/maximize-pressed.xpm b/xfwm4/maximize-pressed.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/maximize-toggled-active.xpm b/xfwm4/maximize-toggled-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/maximize-toggled-inactive.xpm b/xfwm4/maximize-toggled-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/maximize-toggled-prelight.xpm b/xfwm4/maximize-toggled-prelight.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/maximize-toggled-pressed.png b/xfwm4/maximize-toggled-pressed.png old mode 100644 new mode 100755 diff --git a/xfwm4/maximize-toggled-pressed.xpm b/xfwm4/maximize-toggled-pressed.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/menu-active.xpm b/xfwm4/menu-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/menu-inactive.xpm b/xfwm4/menu-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/menu-prelight.xpm b/xfwm4/menu-prelight.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/menu-pressed.xpm b/xfwm4/menu-pressed.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/right-active.xpm b/xfwm4/right-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/right-inactive.xpm b/xfwm4/right-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/shade-active.xpm b/xfwm4/shade-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/shade-inactive.xpm b/xfwm4/shade-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/shade-prelight.xpm b/xfwm4/shade-prelight.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/shade-pressed.png b/xfwm4/shade-pressed.png old mode 100644 new mode 100755 diff --git a/xfwm4/shade-pressed.xpm b/xfwm4/shade-pressed.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/shade-toggled-active.xpm b/xfwm4/shade-toggled-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/shade-toggled-inactive.xpm b/xfwm4/shade-toggled-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/shade-toggled-prelight.xpm b/xfwm4/shade-toggled-prelight.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/shade-toggled-pressed.png b/xfwm4/shade-toggled-pressed.png old mode 100644 new mode 100755 diff --git a/xfwm4/shade-toggled-pressed.xpm b/xfwm4/shade-toggled-pressed.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/stick-active.xpm b/xfwm4/stick-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/stick-inactive.xpm b/xfwm4/stick-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/stick-prelight.xpm b/xfwm4/stick-prelight.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/stick-pressed.png b/xfwm4/stick-pressed.png old mode 100644 new mode 100755 diff --git a/xfwm4/stick-pressed.xpm b/xfwm4/stick-pressed.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/stick-toggled-active.xpm b/xfwm4/stick-toggled-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/stick-toggled-inactive.xpm b/xfwm4/stick-toggled-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/stick-toggled-prelight.xpm b/xfwm4/stick-toggled-prelight.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/stick-toggled-pressed.png b/xfwm4/stick-toggled-pressed.png old mode 100644 new mode 100755 diff --git a/xfwm4/stick-toggled-pressed.xpm b/xfwm4/stick-toggled-pressed.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/themerc b/xfwm4/themerc old mode 100644 new mode 100755 diff --git a/xfwm4/title-1-active.xpm b/xfwm4/title-1-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/title-1-inactive.xpm b/xfwm4/title-1-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/title-2-active.xpm b/xfwm4/title-2-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/title-2-inactive.xpm b/xfwm4/title-2-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/title-3-active.xpm b/xfwm4/title-3-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/title-3-inactive.xpm b/xfwm4/title-3-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/title-4-active.xpm b/xfwm4/title-4-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/title-4-inactive.xpm b/xfwm4/title-4-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/title-5-active.xpm b/xfwm4/title-5-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/title-5-inactive.xpm b/xfwm4/title-5-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/top-left-active.xpm b/xfwm4/top-left-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/top-left-inactive.xpm b/xfwm4/top-left-inactive.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/top-right-active.xpm b/xfwm4/top-right-active.xpm old mode 100644 new mode 100755 diff --git a/xfwm4/top-right-inactive.xpm b/xfwm4/top-right-inactive.xpm old mode 100644 new mode 100755 From 2d1661776f838dd4e2681a13214fb00a6d342091 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 14 Nov 2014 01:29:02 +0530 Subject: [PATCH 09/73] Add styles for grid and view --- gtk-3.0/scss/_grid.scss | 29 +++++++++++ gtk-3.0/scss/_toolbar.scss | 12 +++-- gtk-3.0/scss/_view.scss | 103 +++++++++++++++++++++++++++++++++++++ gtk-3.0/scss/_window.scss | 18 +++---- gtk-3.0/scss/widgets.scss | 2 + 5 files changed, 150 insertions(+), 14 deletions(-) create mode 100644 gtk-3.0/scss/_grid.scss create mode 100644 gtk-3.0/scss/_view.scss diff --git a/gtk-3.0/scss/_grid.scss b/gtk-3.0/scss/_grid.scss new file mode 100644 index 0000000..7975977 --- /dev/null +++ b/gtk-3.0/scss/_grid.scss @@ -0,0 +1,29 @@ +@import "functions"; + +.list { + background-color: shade($bg_color, 0.97); + color: $fg_color; + + &-row { + border: none; + border-radius: 0; + padding: 3px; + background-image: none; + background-color: transparent; + + &:hover { + background-image: none; + background-color: shade($bg_color, 1.02); + } + + &:selected { + &, &:hover, &:focus { + background-image: none; + background-color: $selected_bg_color; + color: $selected_fg_color; + } + } + } +} + +.grid-child { padding: $spacing; } diff --git a/gtk-3.0/scss/_toolbar.scss b/gtk-3.0/scss/_toolbar.scss index 491a507..600bd30 100755 --- a/gtk-3.0/scss/_toolbar.scss +++ b/gtk-3.0/scss/_toolbar.scss @@ -16,20 +16,20 @@ .title { font: bold; - padding: 0 12px; + padding: 0 ($spacing * 2); } .subtitle { font: smaller; - padding: 0 12px; + padding: 0 ($spacing * 2); } .button { @include button($bg, $fg); } GtkComboBox, .button { - padding: 2px; + padding: $spacing - 1px; - &.text-button { padding: 4px; } + &.text-button { padding: $spacing; } &.image-button { padding: $spacing ($spacing - 1px) ($spacing - 1px) $spacing; } } @@ -84,10 +84,12 @@ border: none; background: none; color: mix($titlebar_fg_color, $titlebar_bg_color, 0.90); + box-shadow: none; &:hover, &:hover:focus { background: none; color: $selected_bg_color; + box-shadow: none; } &:active, &:active:hover { @@ -97,7 +99,7 @@ } &:backdrop { - background-image: none; + background: none; color: mix($titlebar_fg_color, $titlebar_bg_color, 0.60); icon-shadow: none; } diff --git a/gtk-3.0/scss/_view.scss b/gtk-3.0/scss/_view.scss new file mode 100644 index 0000000..6c7b01c --- /dev/null +++ b/gtk-3.0/scss/_view.scss @@ -0,0 +1,103 @@ +@import "functions"; + +.cell { + border-width: 0; + border-radius: 0; + + &:selected, &:selected:focus { + background-color: $selected_bg_color; + color: $selected_fg_color; + } +} + +row { + &:selected { + &, &:hover, &:focus { + -GtkWidget-focus-padding: 1; + -GtkWidget-focus-line-width: 0; + + border-width: 1px 0; + border-style: solid; + border-color: border_normal($selected_bg_color); + background-color: $selected_bg_color; + background-image: none; + color: $selected_fg_color; + } + } +} + +column-header { + .button { + &, &:active { + border-width: 0 1px 1px 0; + border-radius: 0; + } + + &, &:active, &:focus, &:active:focus { + border-color: shade($base_color, 0.9); + border-bottom-color: shade($base_color, 0.8); + background-color: shade($base_color, 0.97); + background-image: none; + } + + &:hover, &:active:hover, &:hover:focus, &:active:hover:focus { + border-color: shade($base_color, 0.9); + border-bottom-color: shade($base_color, 0.8); + background-color: shade($base_color, 0.99); + background-image: none; + } + + &:last-child .button { border-width: 0 0 1px 0; } + } +} + +.content-view { + &.view { + background-color: $base_color; + + &:prelight { background-color: alpha($selected_bg_color, 0.6); } + + &:selected, &:active { background-color: $selected_bg_color; } + + &:insensitive { background-color: shade($base_color, 0.9); } + + &.check { + &, &:active, &:prelight, &:insensitive, &:selected { background-color: transparent; } + } + } + + .subtitle { + font: smaller; + padding: 0 12px; + } +} + +GtkIconView { + &.content-view.check { + &, &:active, &:prelight, &:insensitive, &:selected { background-color: transparent; } + } + + &.view.cell { + &:selected, &:selected:focus { + border-width: 1px; + border-style: solid; + border-color: border_normal($selected_bg_color); + border-radius: 2px; + background-color: $selected_bg_color; + background-image: none; + color: $selected_fg_color; + } + } +} + +.rubberband { + &, &.view, &.content-view.view { + border-width: 1px; + border-style: solid; + border-color: $selected_bg_color; + border-radius: 0; + background-color: alpha($selected_bg_color, 0.3); + } +} + +GdMainIconView.content-view { -GdMainIconView-icon-size: 40; } diff --git a/gtk-3.0/scss/_window.scss b/gtk-3.0/scss/_window.scss index eb91653..cad2ef9 100755 --- a/gtk-3.0/scss/_window.scss +++ b/gtk-3.0/scss/_window.scss @@ -1,14 +1,14 @@ .window-frame { - border-style: none; - border-radius: 2px 2px 0 0; - box-shadow: 0 3px 7px 1px alpha(black, 0.7), + border: none; + border-radius: $roundness $roundness 0 0; + box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23), 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); /* this is used for the resize cursor area */ - margin: 10px; + margin: $spacing * 3; &:backdrop { - box-shadow: 0 3px 5px 1px alpha(black, 0.5), + box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24), 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.12); } @@ -17,18 +17,18 @@ &.csd { &.popup { border-radius: 0; - box-shadow: 0 1px 2px alpha(black, 0.8), + box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23), 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); } &.tooltip { - border-radius: 2px; + border-radius: $roundness; box-shadow: none; } &.message-dialog { - border-radius: 2px; - box-shadow: 0 1px 2px alpha(black, 0.8), + border-radius: $roundness; + box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23), 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); } } diff --git a/gtk-3.0/scss/widgets.scss b/gtk-3.0/scss/widgets.scss index e1ca55a..a4912a2 100755 --- a/gtk-3.0/scss/widgets.scss +++ b/gtk-3.0/scss/widgets.scss @@ -6,4 +6,6 @@ @import "menu"; @import "toolbar"; @import "sidebar"; +@import "view"; +@import "grid"; @import "window"; From 608c5be890caa8677dc75a0621c68ac4c5db1a42 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 14 Nov 2014 21:43:25 +0530 Subject: [PATCH 10/73] Tweak sidebar --- gtk-3.0/scss/_sidebar.scss | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/gtk-3.0/scss/_sidebar.scss b/gtk-3.0/scss/_sidebar.scss index 7584d2c..78619cd 100755 --- a/gtk-3.0/scss/_sidebar.scss +++ b/gtk-3.0/scss/_sidebar.scss @@ -6,34 +6,36 @@ color: mix($fg_color, $bg_color, 0.1); &.separator { - border-width: 1px; - border-style: solid; - border-color: shade($bg_color, 0.9); - color: shade($bg_color, 0.9); + &, &:hover, &:focus { + border-width: 1px; + border-style: solid; + border-color: shade($bg_color, 0.9); + color: shade($bg_color, 0.9); + } } } row, .view row { &:selected { &, &:hover, &:focus { - border-color: border_normal($selected_bg_color); - background-color: $selected_bg_color; + border: none; background-image: none; + background-color: $selected_bg_color; color: $selected_fg_color; } &:prelight { - border-color: border_focus($selected_bg_color); - background-color: shade($selected_bg_color, 1.05); + border: none; background-image: none; + background-color: shade($selected_bg_color, 1.05); color: $selected_fg_color; } } &:prelight { - border-color: shade($bg_color, 1.05); - background-color: shade($bg_color, 1.05); + border: none; background-image: none; + background-color: shade($bg_color, 0.95); color: $fg_color; } } From e87a3b6f4177920ce019efda06d6624d7ff0f7fb Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 14 Nov 2014 22:08:08 +0530 Subject: [PATCH 11/73] Remove border from selections --- gtk-3.0/scss/_menu.scss | 9 ++++----- gtk-3.0/scss/_toolbar.scss | 13 ++++++++----- gtk-3.0/scss/_view.scss | 8 ++------ 3 files changed, 14 insertions(+), 16 deletions(-) diff --git a/gtk-3.0/scss/_menu.scss b/gtk-3.0/scss/_menu.scss index 905dc8a..3859a6f 100755 --- a/gtk-3.0/scss/_menu.scss +++ b/gtk-3.0/scss/_menu.scss @@ -35,10 +35,9 @@ GtkTreeMenu, GtkMenuToolButton, GtkComboBox { } &, .menu & { + margin: $spacing; padding: $spacing; - border-width: 1px; - border-style: solid; - border-color: transparent; + border: none; border-radius: 0; background-color: transparent; background-image: none; @@ -46,7 +45,7 @@ GtkTreeMenu, GtkMenuToolButton, GtkComboBox { -GtkMenuItem-arrow-scaling: 0.5; &:active, &:hover { - border-color: shade($selected_bg_color, .9); + border: none; background-color: $selected_bg_color; background-image: none; color: $selected_fg_color; @@ -149,4 +148,4 @@ GtkPopover { font-size: 80%; font-weight: bold; } -} \ No newline at end of file +} diff --git a/gtk-3.0/scss/_toolbar.scss b/gtk-3.0/scss/_toolbar.scss index 600bd30..0590dbd 100755 --- a/gtk-3.0/scss/_toolbar.scss +++ b/gtk-3.0/scss/_toolbar.scss @@ -82,25 +82,28 @@ .titlebutton { padding: $spacing; border: none; - background: none; - color: mix($titlebar_fg_color, $titlebar_bg_color, 0.90); + background-image: none; + background-color: transparent; + color: mix($titlebar_fg_color, $titlebar_bg_color, .1); box-shadow: none; &:hover, &:hover:focus { - background: none; + background-image: none; + background-color: transparent; color: $selected_bg_color; box-shadow: none; } &:active, &:active:hover { - background: none; + background-image: none; + background-color: transparent; color: darken($selected_bg_color, 10%); box-shadow: none; } &:backdrop { background: none; - color: mix($titlebar_fg_color, $titlebar_bg_color, 0.60); + color: mix($titlebar_fg_color, $titlebar_bg_color, .6); icon-shadow: none; } } diff --git a/gtk-3.0/scss/_view.scss b/gtk-3.0/scss/_view.scss index 6c7b01c..169e180 100644 --- a/gtk-3.0/scss/_view.scss +++ b/gtk-3.0/scss/_view.scss @@ -16,9 +16,7 @@ row { -GtkWidget-focus-padding: 1; -GtkWidget-focus-line-width: 0; - border-width: 1px 0; - border-style: solid; - border-color: border_normal($selected_bg_color); + border: none; background-color: $selected_bg_color; background-image: none; color: $selected_fg_color; @@ -79,9 +77,7 @@ GtkIconView { &.view.cell { &:selected, &:selected:focus { - border-width: 1px; - border-style: solid; - border-color: border_normal($selected_bg_color); + border: none; border-radius: 2px; background-color: $selected_bg_color; background-image: none; From c3bc33386c4e55617471e4fabab469dbd1701666 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sun, 23 Nov 2014 22:36:45 +0530 Subject: [PATCH 12/73] Fix linked buttons and other fixes --- gtk-3.0/scss/_base.scss | 93 ++++---------------------- gtk-3.0/scss/_button.scss | 21 ++++-- gtk-3.0/scss/_entry.scss | 6 ++ gtk-3.0/scss/_functions.scss | 9 +++ gtk-3.0/scss/_grid.scss | 19 +++++- gtk-3.0/scss/_menu.scss | 11 ++++ gtk-3.0/scss/_sidebar.scss | 17 +++++ gtk-3.0/scss/_spinner.scss | 26 ++++++++ gtk-3.0/scss/_toggle.scss | 63 +++++++++++++++--- gtk-3.0/scss/_toolbar.scss | 5 ++ gtk-3.0/scss/_view.scss | 124 +++++++++++++++++++++-------------- gtk-3.0/scss/_window.scss | 8 +++ 12 files changed, 256 insertions(+), 146 deletions(-) create mode 100644 gtk-3.0/scss/_spinner.scss diff --git a/gtk-3.0/scss/_base.scss b/gtk-3.0/scss/_base.scss index 521af8f..1407017 100755 --- a/gtk-3.0/scss/_base.scss +++ b/gtk-3.0/scss/_base.scss @@ -1,6 +1,11 @@ @import "functions"; @import "global"; + +/************** + ! GTK settings +***************/ + * { -GtkArrow-arrow-scaling: 0.5; -GtkButton-child-displacement-x: 0; @@ -11,8 +16,6 @@ -GtkButton-interior-focus: true; -GtkButtonBox-child-min-height: 24; -GtkButtonBox-child-internal-pad-y: 1; - -GtkCheckButton-indicator-size: 16; - -GtkCheckMenuItem-indicator-size: 14; -GtkExpander-expander-size: 8; -GtkMenu-horizontal-padding: 0; -GtkMenu-vertical-padding: 0; @@ -37,10 +40,6 @@ -GtkWindow-resize-grip-width: 0; -WnckTasklist-fade-overlay-rect: 0; - /* legacy stuff */ - -GtkWidget-focus-line-width: 1; - -GtkWidget-focus-padding: 0; - outline-color: alpha($selected_bg_color, 0.5); outline-style: dashed; outline-width: 1px; @@ -48,9 +47,11 @@ outline-radius: 2px; } -/*************** - * base states * - ***************/ + +/************* + ! Base states + *************/ + %selected_items { &, &:focus { background-color: $selected_bg_color; @@ -88,7 +89,7 @@ } .gtkstyle-fallback { - background-color: $bg_color; + background-color: alpha($bg_color, .5); color: $fg_color; &:prelight { @@ -129,75 +130,3 @@ GtkLabel { opacity: 0.5; text-shadow: none; } - -.view { - color: $text_color; - background-color: $base_color; - - &:selected { @extend %selected_items; } -} - -.rubberband { - border: 1px solid $selected_bg_color; - background-color: alpha($selected_bg_color, 0.2); -} - -/* used by GtkScrolledWindow, shown when content is touch-dragged past boundaries. */ -.overshoot { background-color: alpha($selected_bg_color, 0.2); } - -GtkAssistant { - .sidebar { - background-color: $base_color; - border-top: 1px solid border_normal($base_color); - - &:dir(ltr) { border-right: 1px solid border_normal($base_color); } - &:dir(rtl) { border-left: 1px solid border_normal($base_color); } - - GtkLabel { - padding: $spacing ($spacing * 2); - - &.highlight { background-color: mix($bg_color, $fg_color, 0.80); } - } - } - - &.csd .sidebar { border-top-style: none; } -} - -GtkTextView { - /* this will get overridden by .view, needed by gedit line numbers */ - background-color: mix($bg_color, $base_color, 0.50); -} - - -GtkFlowBox .grid-child { - padding: 3px; - border-radius: 3px; - - &:selected { - @extend %selected_items; - - outline-offset: -2px; - } -} - -/********************* - * spinner animation * - *********************/ -@keyframes spin { - to { -gtk-icon-transform: rotate(1turn); } -} - -.spinner { - background-image: none; - background-color: blue; - opacity: 0; // non spinning spinner makes no sense - - -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); - - &:active { - opacity: 1; - animation: spin 1s linear infinite; - - &:insensitive { opacity: 0.5; } - } -} diff --git a/gtk-3.0/scss/_button.scss b/gtk-3.0/scss/_button.scss index 8efdfdc..5546310 100755 --- a/gtk-3.0/scss/_button.scss +++ b/gtk-3.0/scss/_button.scss @@ -1,4 +1,10 @@ @import "functions"; +@import "global"; + + +/********* + ! Buttons +**********/ @mixin linked_button($bg, $shadow) { border: 1px solid border_normal($bg); @@ -47,7 +53,9 @@ } &:active, &:active:hover, - &:active:focus, &:active:hover:focus { + &:active:focus, &:active:hover:focus, + &:checked, &:checked:hover, + &:checked:focus, &:checked:hover:focus { box-shadow: inset -1px 0 border_active($bg), inset 1px 0 alpha($shadow, .07), inset 0 1px alpha($shadow, .08), @@ -58,9 +66,11 @@ &:last-child, &:only-child, &:insensitive:last-child, &:insensitive:only-child, - &:active *:insensitive:last-child, &:active *:insensitive:only-child { box-shadow: none; } + &:active *:insensitive:last-child, &:active *:insensitive:only-child, + &:checked *:insensitive:last-child, &:checked *:insensitive:only-child { box-shadow: none; } - &:active:last-child, &:active:only-child { + &:active:last-child, &:active:only-child, + &:checked:last-child, &:checked:only-child { box-shadow: inset 1px 0 alpha($shadow, .07), inset 0 1px alpha($shadow, .08), inset -1px 0 alpha($shadow, .07); @@ -90,9 +100,7 @@ &:checked, &:active { @include linear-gradient(shade($bg, .95)); - } - &:active { box-shadow: inset 1px 0 alpha($dark_shadow, .07), inset 0 1px alpha($dark_shadow, .08), inset -1px 0 alpha($dark_shadow, .07), @@ -106,7 +114,8 @@ box-shadow: none; } - &:active *:insensitive { + &:active *:insensitive, + &:checked *:insensitive { @include linear-gradient(shade($bg, .8)); box-shadow: none; diff --git a/gtk-3.0/scss/_entry.scss b/gtk-3.0/scss/_entry.scss index f86563b..ce11777 100755 --- a/gtk-3.0/scss/_entry.scss +++ b/gtk-3.0/scss/_entry.scss @@ -1,4 +1,10 @@ @import "functions"; +@import "global"; + + +/******* + ! Entry +********/ @mixin linked_entry($bg) { border-width: 1px; diff --git a/gtk-3.0/scss/_functions.scss b/gtk-3.0/scss/_functions.scss index 5d90e85..0c81dcd 100755 --- a/gtk-3.0/scss/_functions.scss +++ b/gtk-3.0/scss/_functions.scss @@ -1,5 +1,14 @@ @import "global"; +$modules: () !default; + +@mixin exports($name) { + @if (not index($modules, $name)) { + $modules: append($modules, $name) !global; + @content; + } +} + @function alpha($color, $amount) { @if type-of($color) == "color" { @return fade-out($color, (1 - $amount)); diff --git a/gtk-3.0/scss/_grid.scss b/gtk-3.0/scss/_grid.scss index 7975977..1f60beb 100644 --- a/gtk-3.0/scss/_grid.scss +++ b/gtk-3.0/scss/_grid.scss @@ -1,4 +1,10 @@ @import "functions"; +@import "global"; + + +/****************** + ! Grid and flowbox +*******************/ .list { background-color: shade($bg_color, 0.97); @@ -26,4 +32,15 @@ } } -.grid-child { padding: $spacing; } +.grid-child { + &, GtkFlowBox & { + padding: $spacing; + border-radius: $roundness; + + &:selected { + @extend %selected_items; + + outline-offset: -2px; + } + } +} diff --git a/gtk-3.0/scss/_menu.scss b/gtk-3.0/scss/_menu.scss index 3859a6f..94c7f6d 100755 --- a/gtk-3.0/scss/_menu.scss +++ b/gtk-3.0/scss/_menu.scss @@ -1,6 +1,12 @@ @import "functions"; +@import "global"; @import "entry"; + +/****** + ! Menu +*******/ + GtkTreeMenu, GtkMenuToolButton, GtkComboBox { &.menu, .menu { background-color: $menu_bg_color; @@ -113,6 +119,11 @@ GtkTreeMenu, GtkMenuToolButton, GtkComboBox { GtkModelMenuItem GtkBox GtkImage { padding-right: $spacing; } + +/********* + ! Popover +**********/ + GtkPopover { @include border($menu_bg_color); diff --git a/gtk-3.0/scss/_sidebar.scss b/gtk-3.0/scss/_sidebar.scss index 78619cd..4cb626d 100755 --- a/gtk-3.0/scss/_sidebar.scss +++ b/gtk-3.0/scss/_sidebar.scss @@ -1,4 +1,10 @@ @import "functions"; +@import "global"; + + +/********* + ! Sidebar +**********/ .sidebar { &, &.view, & .view, & GtkScrolledWindow { @@ -51,6 +57,17 @@ background-color: $bg_color; color: mix($fg_color, $bg_color, 0.1); + &:dir(ltr) { border-width: 0 1px 0 0; } + &:dir(rtl) { border-width: 0 0 0 1px; } + + GtkLabel { + padding: $spacing ($spacing * 2); + + &.highlight { background-color: mix($bg_color, $fg_color, 0.80); } + } + + &.csd .sidebar { border-top-style: none; } + .highlight { font: bold; } } } diff --git a/gtk-3.0/scss/_spinner.scss b/gtk-3.0/scss/_spinner.scss new file mode 100644 index 0000000..f8b00e7 --- /dev/null +++ b/gtk-3.0/scss/_spinner.scss @@ -0,0 +1,26 @@ +@import "functions"; +@import "global"; + + +/******************* + ! Spinner animation +********************/ + +@keyframes spin { + to { -gtk-icon-transform: rotate(1turn); } +} + +.spinner { + background-image: none; + background-color: $selected_bg_color; + opacity: 0; // non spinning spinner makes no sense + + -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); + + &:active { + opacity: 1; + animation: spin 1s linear infinite; + + &:insensitive { opacity: 0.5; } + } +} diff --git a/gtk-3.0/scss/_toggle.scss b/gtk-3.0/scss/_toggle.scss index a3af16a..4ef007a 100755 --- a/gtk-3.0/scss/_toggle.scss +++ b/gtk-3.0/scss/_toggle.scss @@ -1,6 +1,16 @@ -/************************* - * Check and Radio items * - *************************/ +@import "functions"; +@import "global"; + + +/*********************** + ! Check and Radio items +************************/ + +* { + -GtkCheckButton-indicator-size: 16; + -GtkCheckMenuItem-indicator-size: 14; +} + @mixin toggle($type, $bg, $fg) { color: $fg; background-image: none; @@ -32,9 +42,46 @@ } -.radio { - @include toggle("radio", $bg_color, $fg_color); -} -.check { - @include toggle("checkbox", $bg_color, $fg_color); +.radio { @include toggle("radio", $bg_color, $fg_color); } + +.check { @include toggle("checkbox", $bg_color, $fg_color); } + + +/******** + ! Switch +*********/ + +GtkSwitch { + padding: 0; + border-radius: $roundness; + font: bold condensed; + outline-offset: -4px; + + &.slider { + border: 1px solid shade($bg_color, 0.8); + background-color: shade($bg_color, 1.08); + + &:insensitive { + border-color: shade($bg_color, 0.85); + background-color: shade($bg_color, 0.9); + } + } + + &.trough { + border-color: shade($bg_color, 0.8); + background-color: shade($bg_color, 0.95); + color: $fg_color; + + &:active { + border-color: shade($selected_bg_color, 0.9); + background-color: $selected_bg_color; + color: $selected_fg_color; + } + + &:insensitive { + border-color: shade($bg_color, 0.85); + background-color: shade($bg_color, 0.9); + color: mix($fg_color, $bg_color, 0.5); + } + } } diff --git a/gtk-3.0/scss/_toolbar.scss b/gtk-3.0/scss/_toolbar.scss index 0590dbd..4721a6d 100755 --- a/gtk-3.0/scss/_toolbar.scss +++ b/gtk-3.0/scss/_toolbar.scss @@ -1,6 +1,11 @@ @import "functions"; +@import "global"; @import "button"; +/********* + ! Toolbar +**********/ + @mixin toolbar($bg, $fg) { @include linear-gradient($bg); @include border($bg); diff --git a/gtk-3.0/scss/_view.scss b/gtk-3.0/scss/_view.scss index 169e180..5ba4ad2 100644 --- a/gtk-3.0/scss/_view.scss +++ b/gtk-3.0/scss/_view.scss @@ -1,4 +1,17 @@ @import "functions"; +@import "global"; + + +/*************** + ! Generic views +****************/ + +.view { + color: $text_color; + background-color: $base_color; + + &:selected { @extend %selected_items; } +} .cell { border-width: 0; @@ -24,6 +37,68 @@ row { } } +.content-view { + &.view { + background-color: $base_color; + + &:prelight { background-color: alpha($selected_bg_color, 0.6); } + + &:selected, &:active { background-color: $selected_bg_color; } + + &:insensitive { background-color: shade($base_color, 0.9); } + + &.check { + &, &:active, &:prelight, &:insensitive, &:selected { background-color: transparent; } + } + } + + .subtitle { + font: smaller; + padding: 0 12px; + } +} + +GtkIconView { + &.content-view.check { @extend .content-view.check; } + + &.view.cell { + &:selected, &:selected:focus { + border: none; + border-radius: 2px; + background-image: none; + background-color: $selected_bg_color; + color: $selected_fg_color; + } + } +} + +.rubberband { + &, &.view, &.content-view.view { + border: 1px solid $selected_bg_color; + border-radius: 0; + background-color: alpha($selected_bg_color, 0.3); + } +} + +/* used by GtkScrolledWindow, shown when content is touch-dragged past boundaries. */ +.overshoot { background-color: alpha($selected_bg_color, 0.3); } + +GdMainIconView.content-view { -GdMainIconView-icon-size: 40; } + +/* this will get overridden by .view, needed by gedit line numbers */ +GtkTextView { background-color: mix($bg_color, $base_color, 0.50); } + +GtkDrawingArea, GtkHTML { + @extend .view; + + &:insensitive { background-color: shade($base_color, 0.9); } +} + + +/********************* + ! Column view headers +**********************/ + column-header { .button { &, &:active { @@ -48,52 +123,3 @@ column-header { &:last-child .button { border-width: 0 0 1px 0; } } } - -.content-view { - &.view { - background-color: $base_color; - - &:prelight { background-color: alpha($selected_bg_color, 0.6); } - - &:selected, &:active { background-color: $selected_bg_color; } - - &:insensitive { background-color: shade($base_color, 0.9); } - - &.check { - &, &:active, &:prelight, &:insensitive, &:selected { background-color: transparent; } - } - } - - .subtitle { - font: smaller; - padding: 0 12px; - } -} - -GtkIconView { - &.content-view.check { - &, &:active, &:prelight, &:insensitive, &:selected { background-color: transparent; } - } - - &.view.cell { - &:selected, &:selected:focus { - border: none; - border-radius: 2px; - background-color: $selected_bg_color; - background-image: none; - color: $selected_fg_color; - } - } -} - -.rubberband { - &, &.view, &.content-view.view { - border-width: 1px; - border-style: solid; - border-color: $selected_bg_color; - border-radius: 0; - background-color: alpha($selected_bg_color, 0.3); - } -} - -GdMainIconView.content-view { -GdMainIconView-icon-size: 40; } diff --git a/gtk-3.0/scss/_window.scss b/gtk-3.0/scss/_window.scss index cad2ef9..fc31783 100755 --- a/gtk-3.0/scss/_window.scss +++ b/gtk-3.0/scss/_window.scss @@ -1,3 +1,11 @@ +@import "functions"; +@import "global"; + + +/************** + ! Window frame +***************/ + .window-frame { border: none; border-radius: $roundness $roundness 0 0; From 9aa670d828e35187e57f48ff4096422c65876ca4 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 29 Nov 2014 18:32:31 +0530 Subject: [PATCH 13/73] Tweaked comboboxes and views --- gtk-3.0/scss/_entry.scss | 23 ++++++++++++++ gtk-3.0/scss/_menu.scss | 65 ++++++++++++++++++++++++++++++++++++++-- gtk-3.0/scss/_view.scss | 52 ++++++++++++++++++++++++++++++++ 3 files changed, 138 insertions(+), 2 deletions(-) diff --git a/gtk-3.0/scss/_entry.scss b/gtk-3.0/scss/_entry.scss index ce11777..d099aff 100755 --- a/gtk-3.0/scss/_entry.scss +++ b/gtk-3.0/scss/_entry.scss @@ -73,3 +73,26 @@ } .entry { @include entry($base_color, $text_color); } + + +/****************** + ! Combobox entry * +*******************/ + +GtkComboBox.combobox-entry { + .entry { + &, &:hover, &:focus, &:active, &:insensitive { + border-width: 1px 0 1px 1px; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + } + + .button { + &, &:hover, &:focus, &:active, &:insensitive { + border-width: 1px 1px 1px 1px; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + } + } +} diff --git a/gtk-3.0/scss/_menu.scss b/gtk-3.0/scss/_menu.scss index 94c7f6d..44fd1bf 100755 --- a/gtk-3.0/scss/_menu.scss +++ b/gtk-3.0/scss/_menu.scss @@ -3,6 +3,38 @@ @import "entry"; +/********* + ! Menubar +**********/ + +.menubar { + -GtkWidget-window-dragging: true; + + border: none; + background-color: $menubar_bg_color; + background-image: none; + color: $menubar_fg_color; + + + &.menuitem, .menuitem { + padding: $spacing ($spacing * 2); + border: 1px solid transparent; + background-color: transparent; + background-image: none; + color: $menubar_fg_color; + + &:hover { + border-color: mix($menubar_bg_color, $menubar_fg_color, 0.21); + background-color: mix($menubar_bg_color, $menubar_fg_color, 0.21); + background-image: none; + color: shade($menubar_fg_color, 1.08); + } + + & *:hover { color: shade($menubar_fg_color, 1.08); } + } +} + + /****** ! Menu *******/ @@ -80,7 +112,7 @@ GtkTreeMenu, GtkMenuToolButton, GtkComboBox { } &.button { - &, &:active, &:insensitive, &:active:insensitive { + &, &:focus, &:active, &:insensitive, &:active:insensitive { background-color: transparent; background-image: none; border-color: transparent; @@ -89,7 +121,7 @@ GtkTreeMenu, GtkMenuToolButton, GtkComboBox { color: currentColor; } - &:hover, &:active:hover, &:selected { + &:hover, &:focus:hover, &:active:hover, &:selected { background-color: $selected_bg_color; background-image: none; color: $selected_fg_color; @@ -134,9 +166,16 @@ GtkPopover { border-style: solid; background-clip: border-box; background-color: $menu_bg_color; + background-image: none; color: $menu_fg_color; box-shadow: 0 2px 3px alpha(black, .5); + &.background { + background-image: none; + background-color: $menu_bg_color; + color: $menu_fg_color; + } + &:backdrop { box-shadow: none; } &.osd { @@ -160,3 +199,25 @@ GtkPopover { font-weight: bold; } } + +GtkModelButton.button { + &, &:focus, &:active, &:insensitive, &:active:insensitive { + &, &:backdrop { + background-color: transparent; + background-image: none; + border-color: transparent; + border-image: none; + border-style: none; + box-shadow: none; + color: $menu_fg_color; + } + } + + &:focus:hover, &:active:hover, &:hover, &:selected { + background-image: none; + background-color: $selected_bg_color; + color: $selected_fg_color; + border: none; + border-radius: 2px; + } +} diff --git a/gtk-3.0/scss/_view.scss b/gtk-3.0/scss/_view.scss index 5ba4ad2..0acc213 100644 --- a/gtk-3.0/scss/_view.scss +++ b/gtk-3.0/scss/_view.scss @@ -123,3 +123,55 @@ column-header { &:last-child .button { border-width: 0 0 1px 0; } } } + + +/********** + ! Frames * +***********/ + +.frame { border: none; } + +GtkScrolledWindow { + &.frame { border: 1px solid border_normal($bg_color); } + + /* avoid double borders when a viewport is packed into a GtkScrolledWindow */ + GtkViewport.frame { border: none; } +} + + +/************* + ! Expanders * +**************/ + +GtkExpander { + padding: $spacing; + outline-offset: 1px; +} + +.expander { + color: alpha(currentColor, 0.7); + border: alpha(currentColor, 0.7); + + &:hover { + color: alpha(currentColor, 0.8); + border-color: alpha(currentColor, 0.8); + } + + &:active { + color: alpha(currentColor, 0.9); + border-color: alpha(currentColor, 0.9); + } +} + + +/******************* + ! Symbolic images * +********************/ + +.image { + color: alpha(currentColor, 0.5); + + &:hover { color: alpha(currentColor, 0.9); } + + &:selected, &:selected:hover { color: $selected_fg_color; } +} From ec000bba3fb61f4379e62506e701efbbebabb7b5 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 29 Nov 2014 18:43:30 +0530 Subject: [PATCH 14/73] More view related tweaks --- gtk-3.0/scss/_view.scss | 46 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) diff --git a/gtk-3.0/scss/_view.scss b/gtk-3.0/scss/_view.scss index 0acc213..ea99496 100644 --- a/gtk-3.0/scss/_view.scss +++ b/gtk-3.0/scss/_view.scss @@ -10,7 +10,12 @@ color: $text_color; background-color: $base_color; - &:selected { @extend %selected_items; } + &:insensitive, &:insensitive:insensitive { + background-color: shade($base_color, 0.9); + color: mix($text_color, $base_color, 0.5); + } + + &:selected, &:selected:focus { @extend %selected_items; } } .cell { @@ -72,6 +77,16 @@ GtkIconView { } } +.dim-label { + &, &.view { color: alpha(currentColor, 0.5); } +} + +.dnd { border: 1px solid $selected_bg_color; } + +.grip { background-color: transparent; } + +.arrow { color: alpha(currentColor, 0.7); } + .rubberband { &, &.view, &.content-view.view { border: 1px solid $selected_bg_color; @@ -95,6 +110,25 @@ GtkDrawingArea, GtkHTML { } +/************ + ! Treeview * +*************/ + +GtkTreeView { + -GtkTreeView-vertical-separator: 0; + + outline-offset: -1px; + + &.dnd { border: 1px solid $selected_bg_color; } + + .entry { + border-radius: 0; + background-color: $base_color; + background-image: none; + } +} + + /********************* ! Column view headers **********************/ @@ -175,3 +209,13 @@ GtkExpander { &:selected, &:selected:hover { color: $selected_fg_color; } } + + +/****************** + ! Pane separator * +*******************/ + +.pane-separator { + background-color: $bg_color; + color: transparent; +} From c0767cd305f6a7547a4c87c18c61a52baebcafe2 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 6 Dec 2014 15:29:35 +0530 Subject: [PATCH 15/73] Commit current progress --- gtk-3.0/scss/_button.scss | 20 +- gtk-3.0/scss/_global.scss | 10 +- gtk-3.0/scss/_progress.scss | 205 +++++ gtk-3.0/scss/widgets.scss | 1438 +++++++++++++++++++++++++++++++++++ 4 files changed, 1666 insertions(+), 7 deletions(-) create mode 100644 gtk-3.0/scss/_progress.scss diff --git a/gtk-3.0/scss/_button.scss b/gtk-3.0/scss/_button.scss index 5546310..e548bc7 100755 --- a/gtk-3.0/scss/_button.scss +++ b/gtk-3.0/scss/_button.scss @@ -12,7 +12,7 @@ border-right-style: none; border-left-style: none; box-shadow: inset -1px 0 border_normal($bg), - 0 1px 2px -1px alpha($dark_shadow, .3); + 0 1px 2px -1px alpha($shadow, .3); &:first-child { border-width: 1px; @@ -49,7 +49,7 @@ &:focus, &:hover { box-shadow: inset -1px 0 border_focus($bg), - 0 1px 2px -1px alpha($dark_shadow, .3); + 0 1px 2px -1px alpha($shadow, .3); } &:active, &:active:hover, @@ -121,12 +121,28 @@ box-shadow: none; } + &.flat { + color: inherit; + + &, &:hover, &:focus, + &:active, &:active:hover, &:active:focus, + &:checked, &:checked:hover, &:checked:focus { + border: none; + background-color: transparent; + background-image: none; + } + + // TODO + } + &.separator, .separator { color: shade($bg, .95); border: 1px solid currentColor; &:insensitive { color: shade($bg, .85); } } + + .linked & { @include linked_button($bg, $dark_shadow); } } .button { diff --git a/gtk-3.0/scss/_global.scss b/gtk-3.0/scss/_global.scss index d6f6cf7..f6bbff4 100755 --- a/gtk-3.0/scss/_global.scss +++ b/gtk-3.0/scss/_global.scss @@ -1,4 +1,4 @@ -/* default color scheme */ +// default color scheme $bg_color: #eee; $fg_color: #444; $base_color: #fff; @@ -8,15 +8,15 @@ $selected_fg_color: #fff; $tooltip_bg_color: #444; $tooltip_fg_color: #eee; -/* dark colors */ +// dark colors $dark_bg_color: #444; $dark_fg_color: #eee; -/* shadows */ +// shadows $dark_shadow: #000; $light_shadow: #fff; -/* misc colors used by gtk+ */ +// misc colors used by gtk+ $info_fg_color: #3986ac; $info_bg_color: #d9edf7; $warning_fg_color: #c09853; @@ -42,7 +42,7 @@ $menu_fg_color: $dark_fg_color; $menubar_bg_color: $dark_bg_color; $menubar_fg_color: $dark_fg_color; -/* widget styles */ +// widget styles $roundness: 2px; $spacing: 5px; $gradient: 0; diff --git a/gtk-3.0/scss/_progress.scss b/gtk-3.0/scss/_progress.scss new file mode 100644 index 0000000..7f3ba02 --- /dev/null +++ b/gtk-3.0/scss/_progress.scss @@ -0,0 +1,205 @@ +@import "functions"; +@import "global"; + + +/***************** + ! Progress bars * +******************/ + +* { + -GtkProgressBar-min-horizontal-bar-height: 12; + -GtkProgressBar-min-vertical-bar-width: 12; +} + +GtkProgressBar { + padding: 0; + border-radius: 2px; + font-size: smaller; + color: alpha($fg_color, 0.6); + + &.osd { + -GtkProgressBar-xspacing: 0; + -GtkProgressBar-yspacing: 0; + -GtkProgressBar-min-horizontal-bar-height: 3; + } + + &.trough { + border: 1px solid shade($bg_color, 0.8); + background-color: shade($bg_color, 1.08); + background-image: none; + } +} + +.progressbar { + background-image: none; + background-color: $selected_bg_color; + border-radius: 0; + box-shadow: none; + + &.left { + border-top-left-radius: $roundness; + border-bottom-left-radius: $roundness; + } + + &.right { + border-top-right-radius: $roundness; + border-bottom-right-radius: $roundness; + } + + &.left.right { box-shadow: none; } + + &.vertical { + background-image: none; + background-color: $selected_bg_color; + + &.bottom { + border-bottom-left-radius: $roundness; + border-bottom-right-radius: $roundness; + } + + &.top { + border-top-left-radius: $roundness; + border-top-right-radius: $roundness; + } + } +} + +GtkLevelBar { + -GtkLevelBar-min-block-width: 34; + -GtkLevelBar-min-block-height: 3; + + &.vertical { + -GtkLevelBar-min-block-width: 3; + -GtkLevelBar-min-block-height: 34; + } +} + +.level-bar { + &.trough { + border: 1px solid shade($bg_color, 0.8); + background-color: shade($bg_color, 1.08); + background-image: none; + } + + &.fill-block { + // FIXME: it would be nice to set make fill blocks bigger, but we'd need + // :nth-child working on discrete indicators + border: 1px shade($selected_bg_color, 5%)); + background-color: $selected_bg_color; + box-shadow: 0 1px transparentize(black, 0.9); + border-radius: 1px; + &:backdrop { + border-color: $selected_bg_color; + box-shadow: none; + } + &.indicator-discrete { + &.horizontal { margin: 0 1px; } + &.vertical { margin: 1px 0; } + } + &.level-high { + border-color: darken($success_color,10%); + background-color: $success_color; + &:backdrop { border-color: $success_color; } + } + &.level-low { + border-color: darken($warning_color,10%); + background-color: $warning_color; + &:backdrop { border-color: $warning_color; }; + } + &.empty-fill-block { + background-color: transparent; + border-color: if($variant=='light', transparentize($fg_color,0.8), + transparentize($fg_color,0.9)); + box-shadow: none; + &:backdrop { border-color: transparentize($backdrop_fg_color,0.85); } + } + } +} + +.scale { + -GtkRange-slider-width: 16; + -GtkRange-trough-border: 1; + -GtkScale-slider-length: 16; + + padding: 0; + border-width: 1px; + border-radius: 2px; + outline-offset: -1px; +} + +.scale.slider { + border-radius: 8px; + background-color: shade($bg_color, 1.08); + background-image: none; + /* we will draw the border using box shadow for now */ + box-shadow: inset 1px 0 shade($bg_color, 0.8), + inset 0 1px shade($bg_color, 0.8), + inset -1px 0 shade($bg_color, 0.8), + inset 0 -1px shade($bg_color, 0.8); +} + +.scale.slider:hover { + box-shadow: inset 1px 0 shade($bg_color, 0.7), + inset 0 1px shade($bg_color, 0.7), + inset -1px 0 shade($bg_color, 0.7), + inset 0 -1px shade($bg_color, 0.7); +} + +.scale.slider:insensitive { + background-color: shade($bg_color, 0.9); + background-image: none; + box-shadow: inset 1px 0 shade($bg_color, 0.85), + inset 0 1px shade($bg_color, 0.85), + inset -1px 0 shade($bg_color, 0.85), + inset 0 -1px shade($bg_color, 0.85); +} + +.scale.slider.fine-tune:active, +.scale.slider.fine-tune:active:hover, +.scale.slider.fine-tune.horizontal:active, +.scale.slider.fine-tune.horizontal:active:hover { + background-size: 50%; + background-repeat: no-repeat; + background-position: center; +} + +.scale.mark { + border-color: shade($bg_color, 0.8); +} + +.scale.trough { + margin: 7px 0; + border-color: shade($bg_color, 0.8); + border-radius: 2px; + background-color: shade($bg_color, 1.08); + background-image: none; +} + +.scale.trough.vertical { + margin: 0 7px; +} + +.menuitem .scale.highlight.left, +.scale.highlight.left { + border-color: $selected_bg_color; + background-color: $selected_bg_color; + background-image: none; +} + +.menuitem .scale.highlight.left:hover { + border-color: shade($selected_bg_color, 0.8); + background-color: shade($selected_bg_color, 0.8); +} + +.scale.highlight.bottom { + border-color: $selected_bg_color; + background-color: $selected_bg_color; + background-image: none; +} + +.scale.trough:insensitive, +.scale.highlight.left:insensitive { + border-color: shade($bg_color, 0.85); + background-color: shade($bg_color, 0.9); + background-image: none; +} diff --git a/gtk-3.0/scss/widgets.scss b/gtk-3.0/scss/widgets.scss index a4912a2..882f861 100755 --- a/gtk-3.0/scss/widgets.scss +++ b/gtk-3.0/scss/widgets.scss @@ -1,3 +1,4 @@ +@import "functions"; @import "colors"; @import "base"; @import "button"; @@ -8,4 +9,1441 @@ @import "sidebar"; @import "view"; @import "grid"; +@import "progress"; +@import "spinner"; @import "window"; + +/*********** +* calendar * +************/ +GtkCalendar { + padding: 4px; + outline-offset: -1px; +} + +GtkCalendar:inconsistent { + color: mix($fg_color, $bg_color, 0.5); +} + +GtkCalendar.view, +GtkCalendar.header, +GtkCalendar.button, +GtkCalendar.button:hover, +GtkCalendar.button:insensitive { + border-width: 0; + background-color: transparent; + background-image: none; +} + +.highlight, +GtkCalendar.highlight { + border-width: 0; + background-color: transparent; + color: $selected_bg_color; +} + +/*********** +* infobar * +***********/ +GtkInfoBar { + border-width: 0; + border-style: none; +} + +.info { + border-width: 1px; + border-style: solid; + border-color: shade($info_bg_color, 0.8); + background-color: $info_bg_color; + background-image: none; + color: $info_fg_color; +} + +.info .button { + border-top-color: shade($info_bg_color, 0.8); + border-right-color: shade($info_bg_color, 0.72); + border-left-color: shade($info_bg_color, 0.72); + border-bottom-color: shade($info_bg_color, 0.7); + background-color: shade($info_bg_color, 1.08); + color: $info_fg_color; +} + +.info .button:hover { + border-top-color: shade($info_bg_color, 0.85); + border-right-color: shade($info_bg_color, 0.78); + border-left-color: shade($info_bg_color, 0.78); + border-bottom-color: shade($info_bg_color, 0.7); + background-color: shade($info_bg_color, 1.10); +} + +.info .button:active { + border-color: shade($info_bg_color, 0.6); + background-color: shade($info_bg_color, 0.95); +} + +.info .button:active:hover { + border-top-color: shade($info_bg_color, 0.85); + border-right-color: shade($info_bg_color, 0.78); + border-left-color: shade($info_bg_color, 0.78); + border-bottom-color: shade($info_bg_color, 0.7); +} + +.info .button.close { + color: $info_fg_color; +} + +.info .button.close:hover { + background-color: alpha(white, 0.2); +} + +.info .button.close:active { + color: $info_fg_color; + background-color: alpha(black, 0.1); +} + +.warning { + border-width: 1px; + border-style: solid; + border-color: shade($warning_bg_color, 0.8); + background-color: $warning_bg_color; + background-image: none; + color: $warning_fg_color; +} + +.warning .button { + border-top-color: shade($warning_bg_color, 0.8); + border-right-color: shade($warning_bg_color, 0.72); + border-left-color: shade($warning_bg_color, 0.72); + border-bottom-color: shade($warning_bg_color, 0.7); + background-color: shade($warning_bg_color, 1.08); + color: $warning_fg_color; +} + +.warning .button:hover { + border-top-color: shade($warning_bg_color, 0.85); + border-right-color: shade($warning_bg_color, 0.78); + border-left-color: shade($warning_bg_color, 0.78); + border-bottom-color: shade($warning_bg_color, 0.7); + background-color: shade($warning_bg_color, 1.10); +} + +.warning .button:active { + border-color: shade($warning_bg_color, 0.6); + background-color: shade($warning_bg_color, 0.95); +} + +.warning .button:active:hover { + border-top-color: shade($warning_bg_color, 0.85); + border-right-color: shade($warning_bg_color, 0.78); + border-left-color: shade($warning_bg_color, 0.78); + border-bottom-color: shade($warning_bg_color, 0.7); +} + +.warning .button.close { + color: $warning_fg_color; +} + +.warning .button.close:hover { + background-color: alpha(white, 0.2); +} + +.warning .button.close:active { + color: $warning_fg_color; + background-color: alpha(black, 0.1); +} + +.question { + border-width: 1px; + border-style: solid; + border-color: shade($question_bg_color, 0.8); + background-color: $question_bg_color; + background-image: none; + color: $question_fg_color; +} + +.question .button { + border-top-color: shade($question_bg_color, 0.8); + border-right-color: shade($question_bg_color, 0.72); + border-left-color: shade($question_bg_color, 0.72); + border-bottom-color: shade($question_bg_color, 0.7); + background-color: shade($question_bg_color, 1.08); + color: $question_fg_color; +} + +.question .button:hover { + border-top-color: shade($question_bg_color, 0.85); + border-right-color: shade($question_bg_color, 0.78); + border-left-color: shade($question_bg_color, 0.78); + border-bottom-color: shade($question_bg_color, 0.7); + background-color: shade($question_bg_color, 1.10); +} + +.question .button:active { + border-color: shade($question_bg_color, 0.6); + background-color: shade($question_bg_color, 0.95); +} + +.question .button:active:hover { + border-top-color: shade($question_bg_color, 0.85); + border-right-color: shade($question_bg_color, 0.78); + border-left-color: shade($question_bg_color, 0.78); + border-bottom-color: shade($question_bg_color, 0.7); +} + +.question .button.close { + color: $question_fg_color; +} + +.question .button.close:hover { + background-color: alpha(white, 0.2); +} + +.question .button.close:active { + color: $question_fg_color; + background-color: alpha(black, 0.1); +} + +.error { + border-width: 1px; + border-style: solid; + border-color: shade($error_bg_color, 0.8); + background-color: $error_bg_color; + background-image: none; + color: $error_fg_color; +} + +.error .button { + border-top-color: shade($error_bg_color, 0.8); + border-right-color: shade($error_bg_color, 0.72); + border-left-color: shade($error_bg_color, 0.72); + border-bottom-color: shade($error_bg_color, 0.7); + background-color: shade($error_bg_color, 1.08); + color: $error_fg_color; +} + +.error .button:hover { + border-top-color: shade($error_bg_color, 0.85); + border-right-color: shade($error_bg_color, 0.78); + border-left-color: shade($error_bg_color, 0.78); + border-bottom-color: shade($error_bg_color, 0.7); + background-color: shade($error_bg_color, 1.10); +} + +.error .button:active { + border-color: shade($error_bg_color, 0.6); + background-color: shade($error_bg_color, 0.95); +} + +.error .button:active:hover { + border-top-color: shade($error_bg_color, 0.85); + border-right-color: shade($error_bg_color, 0.78); + border-left-color: shade($error_bg_color, 0.78); + border-bottom-color: shade($error_bg_color, 0.7); +} + +.error .button.close { + color: $error_fg_color; +} + +.error .button.close:hover { + background-color: alpha(white, 0.2); +} + +.error .button.close:active { + color: $error_fg_color; + background-color: alpha(black, 0.1); +} + +/***************** +* miscellaneous * +*****************/ +.floating-bar { + border-width: 1px; + border-style: solid; + border-color: shade($bg_color, 0.8); + border-radius: 2px; + background-color: $bg_color; + background-image: none; + color: $fg_color; +} + +.floating-bar.top { + border-top-width: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; +} + +.floating-bar.right { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.floating-bar.bottom { + border-bottom-width: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.floating-bar.left { + border-left-width: 0; + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} + +.floating-bar .button { + -GtkButton-image-spacing: 0; + -GtkButton-inner-border: 0; + + border-style: none; + background-color: transparent; + background-image: none; +} + + + +/************ +* notebook * +************/ +.notebook { + padding: 0; + border-width: 1px 0 0 0; + border-style: solid; + border-color: shade($base_color, 0.7); + border-radius: 0; + background-color: $base_color; + background-image: none; + background-clip: border-box; + + -GtkNotebook-initial-gap: 0; + -GtkNotebook-arrow-spacing: 5; + -GtkNotebook-tab-curvature: 0; + -GtkNotebook-tab-overlap: 1; + -GtkNotebook-has-tab-gap: false; +} + +.notebook.frame { + border-width: 1px; +} + +.notebook.header { + border-width: 0; + background-color: shade($base_color, 0.85); +} + +.notebook.header.frame { + border-color: shade($base_color, 0.75); +} + +.notebook.header.frame.top { + border-width: 1px 1px 0 1px; +} + +.notebook.header.frame.right { + border-width: 1px 1px 1px 0; +} + +.notebook.header.frame.bottom { + border-width: 0 1px 1px 1px; +} + +.notebook.header.frame.left { + border-width: 1px 0 1px 1px; +} + +.notebook GtkViewport { + border-width: 0; + background-color: $base_color; + color: $text_color; +} + +.notebook tab { + padding: 4px 6px; + border-style: solid; + border-width: 1px; + border-color: transparent; + background-color: transparent; + background-image: none; +} + +.notebook tab:active { + background-color: transparent; + background-image: none; +} + +.notebook tab.top { + border-bottom-width: 2px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.notebook tab.top:hover { + border-bottom-color: alpha($selected_bg_color, 0.3); +} + +.notebook tab.top:active { + border-bottom-color: $selected_bg_color; +} + +.notebook tab.right { + border-left-width: 2px; + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} + +.notebook tab.right:hover { + border-left-color: alpha($selected_bg_color, 0.3); +} + +.notebook tab.right:active { + border-left-color: $selected_bg_color; +} + +.notebook tab.bottom { + border-top-width: 2px; + border-top-right-radius: 0; + border-top-left-radius: 0; +} + +.notebook tab.bottom:hover { + border-top-color: alpha($selected_bg_color, 0.3); +} + +.notebook tab.bottom:active { + border-top-color: $selected_bg_color; +} + +.notebook tab.left { + border-right-width: 2px; + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.notebook tab.left:hover { + border-right-color: alpha($selected_bg_color, 0.3); +} + +.notebook tab.left:active { + border-right-color: $selected_bg_color; +} + +.notebook tab GtkLabel { + color: mix($text_color, $base_color, 0.3); +} + +.notebook .prelight-page, +.notebook .prelight-page GtkLabel { + color: mix($text_color, $base_color, 0.15); +} + +.notebook .active-page, +.notebook .active-page GtkLabel { + color: $text_color; +} + +.notebook tab.reorderable-page:hover { + background-color: shade($base_color, 0.85); + border-left: 0; + border-right: 0; + /* using box shadows instead of borders due to slanted edges */ + box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), + inset 1px 0 shade($base_color, 0.7), inset -1px 0 shade($base_color, 0.7); +} + +.notebook tab.reorderable-page:active { + background-color: shade($base_color, 0.90); + border-left: 0; + border-right: 0; + box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), + inset 1px 0 shade($base_color, 0.75), inset -1px 0 shade($base_color, 0.75); +} + +/* close button styling */ +.notebook tab .button, +.notebook tab .button:active, +.notebook tab .button:hover { + padding: 1px; + border-width: 1px; + border-radius: 2px; + border-style: solid; + border-color: transparent; + background-image: none; + background-color: transparent; + color: mix($text_color, $base_color, 0.5); +} + +.notebook tab .button:hover { + color: $text_color; + border-color: shade($base_color, 0.8); +} + +.notebook tab .button:active, +.notebook tab .button:active:hover { + border-color: shade($base_color, 0.7); + background-color: shade($base_color, 0.95); +} + + + +/************* +* scrollbar * +*************/ +.scrollbar { + border-width: 1px; + border-style: solid; + padding: 0; +} + +.scrollbars-junction, +.scrollbar.trough { + border-width: 0; + border-radius: 0; + background-color: $bg_color; + background-image: none; +} + +.scrollbar.button, +.scrollbar.button:active, +.scrollbar.button:active:hover { + border-width: 0; + border-radius: 0; + background-color: transparent; + background-image: none; + color: shade($bg_color, 0.6); +} + +.scrollbar.slider { + border-width: 1px; + border-color: mix(shade($bg_color, 0.87), $fg_color, 0.21); + border-radius: 0; + background-color: mix($bg_color, $fg_color, 0.21); +} + +.scrollbar.slider:hover, +.scrollbar.slider.vertical:hover { + border-color: mix(shade($bg_color, 0.87), $fg_color, 0.31); + background-color: mix($bg_color, $fg_color, 0.31); +} + +.scrollbar.slider:active, +.scrollbar.slider.vertical:active { + border-color: shade($selected_bg_color, 0.9); + background-color: $selected_bg_color; +} + +.scrollbar.slider.fine-tune:prelight:active { + border-width: 2px; + border-color: transparent; +} + +/* overlay scrollbar */ +OsThumb { + color: shade($bg_color, 0.7); +} + +OsThumb:selected, +OsScrollbar:selected { + background-color: $selected_bg_color; +} + +OsThumb:active, +OsScrollbar:active { + background-color: $selected_bg_color; +} + +OsThumb:insensitive, +OsScrollbar:insensitive { + background-color: shade($bg_color, 0.9); +} + +/************* +* separator * +*************/ +.view.separator, +.separator { + border-width: 1px; + border-style: solid; + border-color: shade($bg_color, 0.9); + color: shade($bg_color, 0.9); +} + +.button .separator, +.button.separator { + border-color: shade($bg_color, 0.95); +} + +.button .separator:insensitive, +.button.separator:insensitive { + border-color: shade($bg_color, 0.85); +} + +.primary-toolbar GtkSeparatorToolItem, +.primary-toolbar .separator, +.primary-toolbar .separator:insensitive, +.toolbar GtkSeparatorToolItem, +.toolbar .separator, +.toolbar .separator:insensitive { + -GtkWidget-window-dragging: true; + + border-color: shade($toolbar_bg_color, 0.95); + color: shade($toolbar_bg_color, 0.95); +} + +.header-bar GtkSeparatorToolItem, +.header-bar .separator, +.header-bar .separator:insensitive, +.titlebar GtkSeparatorToolItem, +.titlebar .separator, +.titlebar .separator:insensitive { + -GtkWidget-window-dragging: true; + + border-color: shade($titlebar_bg_color, 0.95); + color: shade($titlebar_bg_color, 0.95); +} + +.primary-toolbar .button .separator, +.primary-toolbar .button.separator, +.toolbar .button .separator, +.toolbar .button.separator { + border-color: shade($toolbar_bg_color, 0.95); +} + +.header-bar .button .separator, +.header-bar .button.separator, +.titlebar .button .separator, +.titlebar .button.separator { + border-color: shade($titlebar_bg_color, 0.95); +} + +.primary-toolbar .button .separator:insensitive, +.primary-toolbar .button.separator:insensitive, +.toolbar .button .separator:insensitive, +.toolbar .button.separator:insensitive { + border-color: shade($toolbar_bg_color, 0.85); +} + +.header-bar .button .separator:insensitive, +.header-bar .button.separator:insensitive, +.titlebar .button .separator:insensitive, +.titlebar .button.separator:insensitive { + border-color: shade($titlebar_bg_color, 0.85); +} + +.menuitem.separator { + -GtkMenuItem-horizontal-padding: 0; + -GtkWidget-separator-height: 1; + + border-style: none; + color: shade($menu_bg_color, 0.9); +} + +GtkComboBox .separator { + /* always disable separators */ + -GtkWidget-wide-separators: true; + -GtkWidget-horizontal-separator: 0; + -GtkWidget-vertical-separator: 0; + + border-style: none; +} + +/************** +* spinbutton * +**************/ +.spinbutton .button { + color: mix($text_color, $base_color, 0.4); + padding: 2px 4px; + border-width: 0; + border-radius: 0; + border-style: none; + background-color: transparent; + background-image: none; + box-shadow: inset 1px 0 shade($base_color, 0.9); +} + +.spinbutton .button:insensitive { + color: mix($text_color, $base_color, 0.7); + box-shadow: inset 1px 0 shade($bg_color, 0.95); +} + +.spinbutton .button:active, +.spinbutton .button:hover { + color: $fg_color; +} + +.spinbutton .button:first-child { + border-radius: 2px 0 0 2px; + box-shadow: none; +} + +.spinbutton .button:last-child { + border-radius: 0 2px 2px 0; +} + +.spinbutton .button:dir(rtl) { + box-shadow: inset -1px 0 shade($base_color, 0.9); +} + +.spinbutton.vertical .button { + border-width: 1px; + border-style: solid; + border-color: shade($bg_color, 0.8); + border-radius: 2px; + background-color: shade($bg_color, 1.08); + background-image: none; + color: $fg_color; + box-shadow: none; +} + +.spinbutton.vertical .button:hover { + border-color: shade($bg_color, 0.7); + background-color: shade($bg_color, 1.10); + background-image: none; +} + +.spinbutton.vertical .button:active { + border-color: shade($bg_color, 0.8); + background-color: shade($bg_color, 0.95); + background-image: none; +} + +.spinbutton.vertical .button:active:hover { + border-color: shade($bg_color, 0.7); +} + +.spinbutton.vertical .button:focus, +.spinbutton.vertical .button:hover:focus, +.spinbutton.vertical .button:active:focus, +.spinbutton.vertical .button:active:hover:focus { + border-color: shade($bg_color, 0.7); +} + +.spinbutton.vertical .button:insensitive { + border-color: shade($bg_color, 0.85); + background-color: shade($bg_color, 0.9); + background-image: none; +} + +.spinbutton.vertical .button:first-child { + border-width: 1px; + border-bottom-width: 0; + border-radius: 2px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.spinbutton.vertical .button:last-child { + border-width: 1px; + border-top-width: 0; + border-radius: 2px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.spinbutton.vertical.entry { + border-width: 1px; + border-style: solid; + border-radius: 0; +} + + +/************* +* statusbar * +*************/ +GtkStatusbar { + padding: 4px; + color: $fg_color; +} + +/***************** +* color chooser * +*****************/ +GtkColorSwatch, +GtkColorSwatch:selected { + border-width: 1px; + border-style: solid; + border-color: alpha(black, 0.1); + border-radius: 1px; + background-color: transparent; + background-clip: border-box; +} + +GtkColorSwatch:hover, +GtkColorSwatch:selected:hover { + border-color: alpha(black, 0.3); +} + +GtkColorSwatch.color-dark:hover { +} + +GtkColorSwatch.color-light:hover { +} + +GtkColorSwatch.color-light:selected:hover, +GtkColorSwatch.color-dark:selected:hover { + background-image: none; +} + +GtkColorSwatch.left, +GtkColorSwatch:first-child { + border-top-left-radius: 2px; + border-bottom-left-radius: 2px; +} + +GtkColorSwatch.right, +GtkColorSwatch:last-child { + border-top-right-radius: 2px; + border-bottom-right-radius: 2px; +} + +GtkColorSwatch:only-child { + border-radius: 2px; +} + +GtkColorSwatch.top { + border-top-left-radius: 2px; + border-top-right-radius: 2px; +} + +GtkColorSwatch.bottom { + border-bottom-left-radius: 2px; + border-bottom-right-radius: 2px; +} + +GtkColorChooserWidget #add-color-button { + background-clip: padding-box; + border-color: alpha(black, 0.1); + background-color: shade($bg_color, 0.95); + color: $fg_color; +} + +GtkColorChooserWidget #add-color-button:hover { + border-color: alpha(black, 0.3); + background-color: shade($bg_color, 0.90); + color: $fg_color; +} + +.color-active-badge, +.color-active-badge:selected { + border-width: 1px; + border-style: solid; + border-width: 2px; + background-color: transparent; +} + +.color-active-badge.color-light, +.color-active-badge.color-light:hover { + border-color: alpha(black, 0.3); + color: alpha(black, 0.3); +} + +.color-active-badge.color-dark, +.color-active-badge.color-dark:hover { + border-color: alpha(white, 0.3); + color: alpha(white, 0.3); +} + +GtkColorEditor GtkColorSwatch { + border-radius: 2px; +} + +GtkColorEditor GtkColorSwatch.color-dark:hover, +GtkColorEditor GtkColorSwatch.color-light:hover { + background-image: none; + border-color: alpha(black, 0.3); +} + +GtkColorButton.button { + padding: 2px; +} + +/*********** +* tooltip * +***********/ +.tooltip { + border-width: 1px; + border-style: solid; + border-color: shade($tooltip_bg_color, 0.8); + border-radius: 2px; + background-color: $tooltip_bg_color; + background-image: none; + color: $tooltip_fg_color; +} + +.tooltip * { + background-color: transparent; +} + + + +/************** +* action-bar * +**************/ +.action-bar { + padding: 4px; + border-width: 1px 0 0 0; + border-style: solid; + border-color: shade($bg_color, 0.8); + background-color: $bg_color; + background-image: none; + color: $fg_color; +} + +.action-bar .button.text-button { + padding: 4px; +} + +.action-bar .button.image-button { + padding: 6px; +} + +.action-bar .title { + font: bold; + padding: 0 12px; +} + +.action-bar .subtitle { + font: smaller; + padding: 0 12px; +} + +/*************** +* search bars * +***************/ +.search-bar { + border-width: 0 0 1px 0; + border-style: solid; + border-color: shade($bg_color, 0.8); + background-color: shade($bg_color, 0.98); +} + +.search-bar .button.close-button { + padding: 4px; +} + +/*********** +* dialogs * +***********/ +GtkMessageDialog, +.prompt { + -GtkDialog-content-area-border: 0; + -GtkDialog-action-area-border: 0; + -GtkDialog-button-spacing: 0; + + margin: 0; + padding: 0; +} + +/******************** +* various choosers * +********************/ +GtkFontButton .separator, +GtkFileChooserButton .separator { + /* always disable separators */ + -GtkWidget-wide-separators: true; + -GtkWidget-horizontal-separator: 0; + -GtkWidget-vertical-separator: 0; +} + +GtkFontButton GtkLabel:last-child { + color: alpha(currentColor, 0.7); +} + +GtkFileChooserButton GtkImage:last-child { + color: alpha(currentColor, 0.7); +} + +GtkFileChooser .pane-separator, +GtkFileChooser .pane-separator:hover { + border-width: 0 1px 0 0; + border-style: solid; + border-color: shade($bg_color, 0.8); + background-color: $bg_color; + color: shade($bg_color, 0.9); +} + +/* for fallback when header bar not used */ +GtkFileChooser .dialog-action-box { + border-width: 1px 0 0; + border-style: solid; + border-color: shade($bg_color, 0.7); +} + +/********************* +* app notifications * +*********************/ +.app-notification { + border-style: solid; + border-color: shade($base_color, 0.8); + border-width: 0 1px 1px 1px; + border-radius: 0 0 2px 2px; + padding: 8px; + background-color: $base_color; + background-image: none; + color: $text_color; +} + +/******* +* osd * +*******/ +//.background.osd { +// color: $osd_fg; +// background-color: $osd_bg; +//} +// +//GtkOverlay.osd { +// background-color: transparent; +//} +// +//.osd.frame { +// background-clip: border-box; +// background-origin: border-box; +//} +// +//.osd.button, +//.osd .button { +// padding: 4px; +// border-width: 1px; +// border-style: solid; +// border-color: shade($osd_bg, 0.8); +// border-radius: 2px; +// background-color: shade($osd_bg, 1.08); +// background-image: none; +// color: $osd_fg; +//} +// +//.osd.button:prelight, +//.osd.button:hover, +//.osd .button:hover { +// border-color: shade($osd_bg, 0.7); +// background-color: shade($osd_bg, 1.10); +// background-image: none; +//} +// +//.osd.button:active, +//.osd .button:active, +//.osd GtkMenuButton.button:active { +// border-color: shade($osd_bg, 0.8); +// background-color: shade($osd_bg, 0.95); +// background-image: none; +//} +// +//.osd.button:active:hover, +//.osd .button:active:hover, +//.osd GtkMenuButton.button:active:hover { +// border-color: shade($osd_bg, 0.7); +//} +// +//.osd.button:insensitive, +//.osd .button:insensitive { +// border-color: shade($osd_bg, 0.85); +// background-color: shade($osd_bg, 0.9); +// background-image: none; +//} +// +//.osd.button:active *:insensitive, +//.osd .button:active *:insensitive { +// background-color: shade($osd_bg, 0.80); +// background-image: none; +//} +// +//.osd.toolbar { +// -GtkToolbar-button-relief: normal; +// +// padding: 4px; +// border-width: 1px; +// border-style: solid; +// border-radius: 2px; +// border-color: shade($osd_bg, 0.8); +// background-color: $osd_bg; +// background-image: none; +// color: $osd_fg; +//} +// +//.osd.toolbar .button { +// padding: 4px; +// border-width: 1px; +// border-style: solid; +// border-color: shade($osd_bg, 0.8); +// border-radius: 2px; +// background-color: shade($osd_bg, 1.08); +// background-image: none; +// color: $osd_fg; +//} +// +//.osd.toolbar .button:hover { +// border-color: shade($osd_bg, 0.7); +// background-color: shade($osd_bg, 1.10); +// background-image: none; +//} +// +//.osd.toolbar .button:active { +// border-color: shade($osd_bg, 0.8); +// background-color: shade($osd_bg, 0.95); +// background-image: none; +//} +// +//.osd.toolbar .button:active:hover { +// border-color: shade($osd_bg, 0.7); +//} +// +//.osd.toolbar .button:focus, +//.osd.toolbar .button:hover:focus, +//.osd.toolbar .button:active:focus, +//.osd.toolbar .button:active:hover:focus { +// border-color: shade($osd_bg, 0.7); +//} +// +//.osd.toolbar .button:insensitive { +// border-color: shade($osd_bg, 0.85); +// background-color: shade($osd_bg, 0.9); +// background-image: none; +//} +// +//.osd.toolbar .button:active *:insensitive { +// border-color: shade($osd_bg, 0.75); +// background-color: shade($osd_bg, 0.80); +// background-image: none; +//} +// +//.osd.toolbar .button:first-child { +// border-radius: 2px 0 0 2px; +// border-width: 1px 0 1px 1px; +// box-shadow: inset -1px 0 shade($osd_bg, 0.9); +//} +// +//.osd.toolbar .button:last-child { +// box-shadow: none; +// border-radius: 0 2px 2px 0; +// border-width: 1px 1px 1px 0; +//} +// +//.osd.toolbar .button:only-child, +//.osd.toolbar GtkToolButton .button, +//.osd.toolbar GtkToolButton:only-child .button, +//.osd.toolbar GtkToolButton:last-child .button, +//.osd.toolbar GtkToolButton:first-child .button { +// border-width: 1px; +// border-radius: 2px; +// border-style: solid; +//} +// +//.osd.toolbar .separator { +// color: shade($osd_bg, 0.9); +//} +// +///* used by gnome-settings-daemon's media-keys OSD */ +//.osd.trough { +// background-color: shade($osd_bg, 0.8); +//} +// +//.osd.progressbar { +// background-color: $osd_fg; +//} +// +//.osd .scale.slider { +// background-color: shade($osd_bg, 1.08); +// background-image: none; +// /* we will draw the border using box shadow for now */ +// box-shadow: inset 1px 0 shade($osd_bg, 0.8), +// inset 0 1px shade($osd_bg, 0.8), +// inset -1px 0 shade($osd_bg, 0.8), +// inset 0 -1px shade($osd_bg, 0.8); +//} +// +//.osd .scale.slider:hover { +// box-shadow: inset 1px 0 shade($osd_bg, 0.7), +// inset 0 1px shade($osd_bg, 0.7), +// inset -1px 0 shade($osd_bg, 0.7), +// inset 0 -1px shade($osd_bg, 0.7); +//} +// +//.osd .scale.slider:insensitive { +// background-color: shade($osd_bg, 0.9); +// background-image: none; +// box-shadow: inset 1px 0 shade($osd_bg, 0.85), +// inset 0 1px shade($osd_bg, 0.85), +// inset -1px 0 shade($osd_bg, 0.85), +// inset 0 -1px shade($osd_bg, 0.85); +//} +// +//.osd .scale.trough { +// border-color: shade($osd_bg, 0.8); +// background-color: shade($osd_bg, 1.08); +// background-image: none; +//} +// +//.osd .scale.trough.highlight { +// border-color: $selected_bg_color; +// background-color: $selected_bg_color; +// background-image: none; +//} +// +//.osd .scale.trough:insensitive, +//.osd .scale.trough.highlight:insensitive { +// border-color: shade($osd_bg, 0.85); +// background-color: shade($osd_bg, 0.9); +// background-image: none; +//} +// +//.osd GtkProgressBar, +//GtkProgressBar.osd { +// -GtkProgressBar-xspacing: 0; +// -GtkProgressBar-yspacing: 2px; +// -GtkProgressBar-min-horizontal-bar-height: 2px; +// +// padding: 0; +//} +// +//.osd GtkProgressBar.trough, +//GtkProgressBar.osd.trough { +// padding: 0; +// border-style: none; +// border-radius: 0; +// background-image: none; +// background-color: transparent; +//} +// +//.osd GtkProgressBar.progressbar, +//GtkProgressBar.osd.progressbar { +// border-style: none; +// border-radius: 0; +// background-color: $selected_bg_color; +// background-image: none; +//} +// +//.osd .view, +//.osd.view { +// background-color: $osd_base; +//} +// +//.osd .scrollbar.trough { +// background-color: $osd_bg; +//} +// +//.osd .scrollbar.slider { +// border-width: 1px; +// border-color: mix(shade($osd_base, 0.87), $osd_fg, 0.21); +// border-radius: 0; +// background-color: mix($osd_base, $osd_fg, 0.21); +//} +// +//.osd .scrollbar.slider:hover { +// border-color: mix(shade($osd_base, 0.87), $osd_fg, 0.31); +// background-color: mix($osd_base, $osd_fg, 0.31); +//} +// +//.osd .scrollbar.slider:active { +// border-color: shade($selected_bg_color, 0.9); +// background-color: $selected_bg_color; +//} +// +//.osd GtkIconView.cell:selected, +//.osd GtkIconView.cell:selected:focus { +// background-color: transparent; +// border-style: solid; +// border-radius: 2px; +// border-width: 3px; +// border-color: $osd_fg; +// outline-color: transparent; +//} +// +///* used by Documents */ +//.osd .page-thumbnail { +// border-style: solid; +// border-width: 1px; +// border-color: shade($osd_bg, 0.9); +// /* when there's no pixbuf yet */ +// background-color: $osd_bg; +//} + +/****************************** +* destructive action buttons * +******************************/ +.destructive-action.button { + border-width: 1px; + border-style: solid; + border-color: shade($error_color, 0.8); + border-radius: 2px; + background-color: $error_color; + background-image: none; + color: mix($selected_fg_color, $error_color, 0.1); +} + +.destructive-action.button:hover { + border-color: shade($error_color, 0.7); + background-color: shade($error_color, 1.12); + background-image: none; +} + +.destructive-action.button:active { + border-color: shade($error_color, 0.8); + background-color: shade($error_color, 0.87); + background-image: none; +} + +.destructive-action.button:hover:active { + border-color: shade($error_color, 0.7); +} + +/****************************** +* suggested action buttons * +******************************/ +.suggested-action.button { + border-width: 1px; + border-style: solid; + border-color: shade($selected_bg_color, 0.9); + border-radius: 2px; + background-color: shade($selected_bg_color, 1.18); + background-image: none; + color: mix($selected_fg_color, $selected_bg_color, 0.1); +} + +.suggested-action.button:hover { + border-color: shade($selected_bg_color, 0.8); + background-color: shade($selected_bg_color, 1.20); + background-image: none; +} + +.suggested-action.button:active { + border-color: shade($selected_bg_color, 0.9); + background-color: shade($selected_bg_color, 1.05); + background-image: none; +} + +.suggested-action.button:hover:active { + border-color: shade($selected_bg_color, 0.8); +} + +/****************** +* selection mode * +******************/ +.selection-mode.header-bar, +.selection-mode.toolbar { + border-style: solid; + border-color: $selected_bg_color; + background-color: shade($selected_bg_color, 1.6); + background-image: none; + color: $selected_bg_color; +} + +.selection-mode.header-bar { + border-top-color: shade($selected_bg_color, 1.6); + border-bottom-color: $selected_bg_color; +} + +.selection-mode.toolbar { + padding: 4px; +} + +/* regular button */ +.selection-mode.header-bar .button, +.selection-mode.toolbar .button, +.selection-mode.toolbar GtkToolButton .button { + border-width: 1px; + border-style: solid; + border-color: $selected_bg_color; + border-radius: 2px; + background-color: shade($selected_bg_color, 1.68); + background-image: none; + color: shade($selected_bg_color, 0.8); +} + +.selection-mode.header-bar .button:hover, +.selection-mode.toolbar .button:hover, +.selection-mode.toolbar GtkToolButton .button:hover { + border-color: shade($selected_bg_color, 0.9); + background-color: shade($selected_bg_color, 1.70); + background-image: none; +} + +.selection-mode.header-bar .button:active, +.selection-mode.toolbar .button:active, +.selection-mode.toolbar GtkToolButton .button:active { + border-color: shade($selected_bg_color, 0.9); + background-color: shade($selected_bg_color, 1.55); + background-image: none; +} + +.selection-mode.header-bar .button:hover:active, +.selection-mode.toolbar .button:hover:active, +.selection-mode.toolbar GtkToolButton .button:hover:active { + border-color: shade($selected_bg_color, 0.8); +} + +/* suggested button */ +.selection-mode.header-bar .suggested-action.button, +.selection-mode.toolbar .suggested-action.button, +.selection-mode.toolbar GtkToolButton.suggested-action .button { + border-width: 1px; + border-style: solid; + border-color: shade($selected_bg_color, 0.9); + border-radius: 2px; + background-color: shade($selected_bg_color, 1.18); + background-image: none; + color: mix($selected_fg_color, $selected_bg_color, 0.1); +} + +.selection-mode.header-bar .suggested-action.button:hover, +.selection-mode.toolbar .suggested-action.button:hover, +.selection-mode.toolbar GtkToolButton.suggested-action .button:hover { + border-color: shade($selected_bg_color, 0.8); + background-color: shade($selected_bg_color, 1.20); + background-image: none; +} + +.selection-mode.header-bar .suggested-action.button:active, +.selection-mode.toolbar .suggested-action.button:active, +.selection-mode.toolbar GtkToolButton.suggested-action:active { + border-color: shade($selected_bg_color, 0.9); + background-color: shade($selected_bg_color, 1.05); + background-image: none; +} + +.selection-mode.header-bar .suggested-action.button:hover:active, +.selection-mode.toolbar .suggested-action.button:hover:active, +.selection-mode.toolbar GtkToolButton.suggested-action .button:hover:active { + border-color: shade($selected_bg_color, 0.8); +} + +/* menu button */ +.selection-mode.header-bar .selection-menu.button, +.selection-mode.toolbar .selection-menu.button { + border-style: none; + background-color: transparent; + background-image: none; + color: shade($selected_bg_color, 0.8); +} + +.selection-mode.toolbar .dim-label, +.selection-mode.toolbar .selection-menu.button .dim-label { + color: shade($selected_bg_color, 0.7); +} + +.selection-mode.header-bar .selection-menu.button:hover, +.selection-mode.toolbar .dim-label:hover, +.selection-mode.toolbar .selection-menu.button:hover, +.selection-mode.toolbar .selection-menu.button .dim-label:hover { + color: shade($selected_bg_color, 0.7); +} + +.selection-mode.header-bar .selection-menu.button:active, +.selection-mode.toolbar .selection-menu.button:active { + color: shade($selected_bg_color, 0.8); + box-shadow: none; +} + +/************************* +* touch text selections * +*************************/ +GtkBubbleWindow { + border-radius: 2px; + background-clip: border-box; +} + +GtkBubbleWindow.osd.background { + // background-color: $osd_bg; +} + +GtkBubbleWindow .toolbar { + background-color: transparent; +} From aaac3654c61ecd78920c273b3c9710b22b86eedc Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 6 Dec 2014 15:33:34 +0530 Subject: [PATCH 16/73] Commented out progressbar stuff --- gtk-3.0/scss/_progress.scss | 258 ++++++++++++++++++------------------ 1 file changed, 129 insertions(+), 129 deletions(-) diff --git a/gtk-3.0/scss/_progress.scss b/gtk-3.0/scss/_progress.scss index 7f3ba02..6b72a09 100644 --- a/gtk-3.0/scss/_progress.scss +++ b/gtk-3.0/scss/_progress.scss @@ -74,132 +74,132 @@ GtkLevelBar { } } -.level-bar { - &.trough { - border: 1px solid shade($bg_color, 0.8); - background-color: shade($bg_color, 1.08); - background-image: none; - } - - &.fill-block { - // FIXME: it would be nice to set make fill blocks bigger, but we'd need - // :nth-child working on discrete indicators - border: 1px shade($selected_bg_color, 5%)); - background-color: $selected_bg_color; - box-shadow: 0 1px transparentize(black, 0.9); - border-radius: 1px; - &:backdrop { - border-color: $selected_bg_color; - box-shadow: none; - } - &.indicator-discrete { - &.horizontal { margin: 0 1px; } - &.vertical { margin: 1px 0; } - } - &.level-high { - border-color: darken($success_color,10%); - background-color: $success_color; - &:backdrop { border-color: $success_color; } - } - &.level-low { - border-color: darken($warning_color,10%); - background-color: $warning_color; - &:backdrop { border-color: $warning_color; }; - } - &.empty-fill-block { - background-color: transparent; - border-color: if($variant=='light', transparentize($fg_color,0.8), - transparentize($fg_color,0.9)); - box-shadow: none; - &:backdrop { border-color: transparentize($backdrop_fg_color,0.85); } - } - } -} - -.scale { - -GtkRange-slider-width: 16; - -GtkRange-trough-border: 1; - -GtkScale-slider-length: 16; - - padding: 0; - border-width: 1px; - border-radius: 2px; - outline-offset: -1px; -} - -.scale.slider { - border-radius: 8px; - background-color: shade($bg_color, 1.08); - background-image: none; - /* we will draw the border using box shadow for now */ - box-shadow: inset 1px 0 shade($bg_color, 0.8), - inset 0 1px shade($bg_color, 0.8), - inset -1px 0 shade($bg_color, 0.8), - inset 0 -1px shade($bg_color, 0.8); -} - -.scale.slider:hover { - box-shadow: inset 1px 0 shade($bg_color, 0.7), - inset 0 1px shade($bg_color, 0.7), - inset -1px 0 shade($bg_color, 0.7), - inset 0 -1px shade($bg_color, 0.7); -} - -.scale.slider:insensitive { - background-color: shade($bg_color, 0.9); - background-image: none; - box-shadow: inset 1px 0 shade($bg_color, 0.85), - inset 0 1px shade($bg_color, 0.85), - inset -1px 0 shade($bg_color, 0.85), - inset 0 -1px shade($bg_color, 0.85); -} - -.scale.slider.fine-tune:active, -.scale.slider.fine-tune:active:hover, -.scale.slider.fine-tune.horizontal:active, -.scale.slider.fine-tune.horizontal:active:hover { - background-size: 50%; - background-repeat: no-repeat; - background-position: center; -} - -.scale.mark { - border-color: shade($bg_color, 0.8); -} - -.scale.trough { - margin: 7px 0; - border-color: shade($bg_color, 0.8); - border-radius: 2px; - background-color: shade($bg_color, 1.08); - background-image: none; -} - -.scale.trough.vertical { - margin: 0 7px; -} - -.menuitem .scale.highlight.left, -.scale.highlight.left { - border-color: $selected_bg_color; - background-color: $selected_bg_color; - background-image: none; -} - -.menuitem .scale.highlight.left:hover { - border-color: shade($selected_bg_color, 0.8); - background-color: shade($selected_bg_color, 0.8); -} - -.scale.highlight.bottom { - border-color: $selected_bg_color; - background-color: $selected_bg_color; - background-image: none; -} - -.scale.trough:insensitive, -.scale.highlight.left:insensitive { - border-color: shade($bg_color, 0.85); - background-color: shade($bg_color, 0.9); - background-image: none; -} +// TODO all stuff below +//.level-bar { +// &.trough { +// border: 1px solid shade($bg_color, 0.8); +// background-color: shade($bg_color, 1.08); +// background-image: none; +// } +// +// &.fill-block { +// // FIXME: it would be nice to set make fill blocks bigger, but we'd need +// // :nth-child working on discrete indicators +// border: 1px shade($selected_bg_color, 5%); +// background-color: $selected_bg_color; +// box-shadow: 0 1px transparentize(black, 0.9); +// border-radius: 1px; +// &:backdrop { +// border-color: $selected_bg_color; +// box-shadow: none; +// } +// &.indicator-discrete { +// &.horizontal { margin: 0 1px; } +// &.vertical { margin: 1px 0; } +// } +// &.level-high { +// border-color: darken($success_color,10%); +// background-color: $success_color; +// &:backdrop { border-color: $success_color; } +// } +// &.level-low { +// border-color: darken($warning_color,10%); +// background-color: $warning_color; +// &:backdrop { border-color: $warning_color; }; +// } +// &.empty-fill-block { +// background-color: transparent; +// border-color: transparentize($fg_color,0.9); +// box-shadow: none; +// &:backdrop { border-color: transparentize($backdrop_fg_color,0.85); } +// } +// } +//} +// +//.scale { +// -GtkRange-slider-width: 16; +// -GtkRange-trough-border: 1; +// -GtkScale-slider-length: 16; +// +// padding: 0; +// border-width: 1px; +// border-radius: 2px; +// outline-offset: -1px; +//} +// +//.scale.slider { +// border-radius: 8px; +// background-color: shade($bg_color, 1.08); +// background-image: none; +// /* we will draw the border using box shadow for now */ +// box-shadow: inset 1px 0 shade($bg_color, 0.8), +// inset 0 1px shade($bg_color, 0.8), +// inset -1px 0 shade($bg_color, 0.8), +// inset 0 -1px shade($bg_color, 0.8); +//} +// +//.scale.slider:hover { +// box-shadow: inset 1px 0 shade($bg_color, 0.7), +// inset 0 1px shade($bg_color, 0.7), +// inset -1px 0 shade($bg_color, 0.7), +// inset 0 -1px shade($bg_color, 0.7); +//} +// +//.scale.slider:insensitive { +// background-color: shade($bg_color, 0.9); +// background-image: none; +// box-shadow: inset 1px 0 shade($bg_color, 0.85), +// inset 0 1px shade($bg_color, 0.85), +// inset -1px 0 shade($bg_color, 0.85), +// inset 0 -1px shade($bg_color, 0.85); +//} +// +//.scale.slider.fine-tune:active, +//.scale.slider.fine-tune:active:hover, +//.scale.slider.fine-tune.horizontal:active, +//.scale.slider.fine-tune.horizontal:active:hover { +// background-size: 50%; +// background-repeat: no-repeat; +// background-position: center; +//} +// +//.scale.mark { +// border-color: shade($bg_color, 0.8); +//} +// +//.scale.trough { +// margin: 7px 0; +// border-color: shade($bg_color, 0.8); +// border-radius: 2px; +// background-color: shade($bg_color, 1.08); +// background-image: none; +//} +// +//.scale.trough.vertical { +// margin: 0 7px; +//} +// +//.menuitem .scale.highlight.left, +//.scale.highlight.left { +// border-color: $selected_bg_color; +// background-color: $selected_bg_color; +// background-image: none; +//} +// +//.menuitem .scale.highlight.left:hover { +// border-color: shade($selected_bg_color, 0.8); +// background-color: shade($selected_bg_color, 0.8); +//} +// +//.scale.highlight.bottom { +// border-color: $selected_bg_color; +// background-color: $selected_bg_color; +// background-image: none; +//} +// +//.scale.trough:insensitive, +//.scale.highlight.left:insensitive { +// border-color: shade($bg_color, 0.85); +// background-color: shade($bg_color, 0.9); +// background-image: none; +//} From cc6022e72d2c55d27eb01dbf78740ec11a62e242 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 6 Dec 2014 16:07:27 +0530 Subject: [PATCH 17/73] STyled progressbar and scale --- gtk-3.0/scss/_progress.scss | 262 +++++++++++++++++------------------- 1 file changed, 126 insertions(+), 136 deletions(-) diff --git a/gtk-3.0/scss/_progress.scss b/gtk-3.0/scss/_progress.scss index 6b72a09..f648f95 100644 --- a/gtk-3.0/scss/_progress.scss +++ b/gtk-3.0/scss/_progress.scss @@ -6,17 +6,15 @@ ! Progress bars * ******************/ -* { - -GtkProgressBar-min-horizontal-bar-height: 12; - -GtkProgressBar-min-vertical-bar-width: 12; -} - GtkProgressBar { padding: 0; - border-radius: 2px; + border-radius: $roundness; font-size: smaller; color: alpha($fg_color, 0.6); + -GtkProgressBar-min-horizontal-bar-height: 12; + -GtkProgressBar-min-vertical-bar-width: 12; + &.osd { -GtkProgressBar-xspacing: 0; -GtkProgressBar-yspacing: 0; @@ -24,7 +22,7 @@ GtkProgressBar { } &.trough { - border: 1px solid shade($bg_color, 0.8); + border: 1px solid alpha(border_normal($bg_color), 0.5); background-color: shade($bg_color, 1.08); background-image: none; } @@ -74,132 +72,124 @@ GtkLevelBar { } } -// TODO all stuff below -//.level-bar { -// &.trough { -// border: 1px solid shade($bg_color, 0.8); -// background-color: shade($bg_color, 1.08); -// background-image: none; -// } -// -// &.fill-block { -// // FIXME: it would be nice to set make fill blocks bigger, but we'd need -// // :nth-child working on discrete indicators -// border: 1px shade($selected_bg_color, 5%); -// background-color: $selected_bg_color; -// box-shadow: 0 1px transparentize(black, 0.9); -// border-radius: 1px; -// &:backdrop { -// border-color: $selected_bg_color; -// box-shadow: none; -// } -// &.indicator-discrete { -// &.horizontal { margin: 0 1px; } -// &.vertical { margin: 1px 0; } -// } -// &.level-high { -// border-color: darken($success_color,10%); -// background-color: $success_color; -// &:backdrop { border-color: $success_color; } -// } -// &.level-low { -// border-color: darken($warning_color,10%); -// background-color: $warning_color; -// &:backdrop { border-color: $warning_color; }; -// } -// &.empty-fill-block { -// background-color: transparent; -// border-color: transparentize($fg_color,0.9); -// box-shadow: none; -// &:backdrop { border-color: transparentize($backdrop_fg_color,0.85); } -// } -// } -//} -// -//.scale { -// -GtkRange-slider-width: 16; -// -GtkRange-trough-border: 1; -// -GtkScale-slider-length: 16; -// -// padding: 0; -// border-width: 1px; -// border-radius: 2px; -// outline-offset: -1px; -//} -// -//.scale.slider { -// border-radius: 8px; -// background-color: shade($bg_color, 1.08); -// background-image: none; -// /* we will draw the border using box shadow for now */ -// box-shadow: inset 1px 0 shade($bg_color, 0.8), -// inset 0 1px shade($bg_color, 0.8), -// inset -1px 0 shade($bg_color, 0.8), -// inset 0 -1px shade($bg_color, 0.8); -//} -// -//.scale.slider:hover { -// box-shadow: inset 1px 0 shade($bg_color, 0.7), -// inset 0 1px shade($bg_color, 0.7), -// inset -1px 0 shade($bg_color, 0.7), -// inset 0 -1px shade($bg_color, 0.7); -//} -// -//.scale.slider:insensitive { -// background-color: shade($bg_color, 0.9); -// background-image: none; -// box-shadow: inset 1px 0 shade($bg_color, 0.85), -// inset 0 1px shade($bg_color, 0.85), -// inset -1px 0 shade($bg_color, 0.85), -// inset 0 -1px shade($bg_color, 0.85); -//} -// -//.scale.slider.fine-tune:active, -//.scale.slider.fine-tune:active:hover, -//.scale.slider.fine-tune.horizontal:active, -//.scale.slider.fine-tune.horizontal:active:hover { -// background-size: 50%; -// background-repeat: no-repeat; -// background-position: center; -//} -// -//.scale.mark { -// border-color: shade($bg_color, 0.8); -//} -// -//.scale.trough { -// margin: 7px 0; -// border-color: shade($bg_color, 0.8); -// border-radius: 2px; -// background-color: shade($bg_color, 1.08); -// background-image: none; -//} -// -//.scale.trough.vertical { -// margin: 0 7px; -//} -// -//.menuitem .scale.highlight.left, -//.scale.highlight.left { -// border-color: $selected_bg_color; -// background-color: $selected_bg_color; -// background-image: none; -//} -// -//.menuitem .scale.highlight.left:hover { -// border-color: shade($selected_bg_color, 0.8); -// background-color: shade($selected_bg_color, 0.8); -//} -// -//.scale.highlight.bottom { -// border-color: $selected_bg_color; -// background-color: $selected_bg_color; -// background-image: none; -//} -// -//.scale.trough:insensitive, -//.scale.highlight.left:insensitive { -// border-color: shade($bg_color, 0.85); -// background-color: shade($bg_color, 0.9); -// background-image: none; -//} +.level-bar { + &.trough { + border: 1px solid alpha(border_normal($bg_color), 0.5); + background-color: shade($bg_color, 1.08); + background-image: none; + border-radius: $roundness; + } + + &.fill-block { + // FIXME: it would be nice to set make fill blocks bigger, but we'd need + // :nth-child working on discrete indicators + background-color: $selected_bg_color; + border-color: transparent; + border-radius: 0; + + &.indicator-discrete { + &.horizontal { margin-right: 1px; } + &.vertical { margin-bottom: 1px; } + } + + &.level-high { + background-color: $success_color; + border-color: transparent; + } + + &.level-low { + background-color: $warning_color; + border-color: transparent; + } + + &.empty-fill-block { + background-color: transparent; + border-color: transparent; + box-shadow: none; + } + } +} + +.scale { + -GtkRange-slider-width: 16; + -GtkRange-trough-border: 1; + -GtkScale-slider-length: 16; + + padding: 0; + border-width: 1px; + border-radius: $roundness; + outline-offset: -1px; + + + &.slider { + border-radius: 8px; + background-color: shade($bg_color, 1.08); + background-image: none; + /* we will draw the border using box shadow for now */ + box-shadow: inset 1px 0 border_normal($bg_color), + inset 0 1px border_normal($bg_color), + inset -1px 0 border_normal($bg_color), + inset 0 -1px border_normal($bg_color); + + &:hover, &:focus { + box-shadow: inset 1px 0 border_focus($bg_color), + inset 0 1px border_focus($bg_color), + inset -1px 0 border_focus($bg_color), + inset 0 -1px border_focus($bg_color); + } + + &:active { + box-shadow: inset 1px 0 border_active($bg_color), + inset 0 1px border_active($bg_color), + inset -1px 0 border_active($bg_color), + inset 0 -1px border_active($bg_color); + } + + &:insensitive { + background-color: shade($bg_color, 0.9); + background-image: none; + box-shadow: inset 1px 0 border_insensitive($bg_color), + inset 0 1px border_insensitive($bg_color), + inset -1px 0 border_insensitive($bg_color), + inset 0 -1px border_insensitive($bg_color); + } + } + + &.fine-tune { + &, &.horizontal { + &:active, &:active:hover { + background-size: 50%; + background-repeat: no-repeat; + background-position: center; + } + } + } + + &.mark { border-color: alpha(border_normal($bg_color), 0.5); } + + + &.trough { + margin: 7px 0; + border: 1px solid alpha(border_normal($bg_color), 0.5); + border-radius: $roundness; + background-color: shade($bg_color, 1.08); + background-image: none; + + &:insensitive { background-color: shade($bg_color, 0.9); } + + &.vertical { margin: 0 7px; } + } + + &.highlight { + &, &.left, &.bottom { + border-color: $selected_bg_color; + background-color: $selected_bg_color; + background-image: none; + + &:insensitive { + border-color: shade($bg_color, 0.7); + background-color: shade($bg_color, 0.8); + } + } + } +} From c7355235df9885822b6a1b130ab4fd6efd9c46e9 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 6 Dec 2014 17:27:06 +0530 Subject: [PATCH 18/73] Added check and radios --- gtk-3.0/assets/checkbox-checked-dark.svg | 7 +++ .../checkbox-checked-insensitive-dark.svg | 9 +++ .../assets/checkbox-checked-insensitive.svg | 9 +++ gtk-3.0/assets/checkbox-checked.svg | 7 +++ gtk-3.0/assets/checkbox-mixed-dark.svg | 7 +++ .../checkbox-mixed-insensitive-dark.svg | 9 +++ gtk-3.0/assets/checkbox-mixed-insensitive.svg | 9 +++ gtk-3.0/assets/checkbox-mixed.svg | 7 +++ gtk-3.0/assets/checkbox-unchecked-dark.svg | 6 ++ .../checkbox-unchecked-insensitive-dark.svg | 6 ++ .../assets/checkbox-unchecked-insensitive.svg | 6 ++ gtk-3.0/assets/checkbox-unchecked.svg | 6 ++ .../assets/grid-selection-checked-dark.svg | 7 +++ gtk-3.0/assets/grid-selection-checked.svg | 7 +++ .../assets/grid-selection-unchecked-dark.svg | 6 ++ gtk-3.0/assets/grid-selection-unchecked.svg | 6 ++ .../menuitem-checkbox-checked-hover.svg | 5 ++ .../menuitem-checkbox-checked-insensitive.svg | 5 ++ gtk-3.0/assets/menuitem-checkbox-checked.svg | 5 ++ .../assets/menuitem-checkbox-mixed-hover.svg | 5 ++ .../menuitem-checkbox-mixed-insensitive.svg | 5 ++ .../menuitem-checkbox-mixed-selected.svg | 5 ++ gtk-3.0/assets/menuitem-checkbox-mixed.svg | 11 ++++ .../assets/menuitem-radio-checked-hover.svg | 5 ++ .../menuitem-radio-checked-insensitive.svg | 5 ++ gtk-3.0/assets/menuitem-radio-checked.svg | 5 ++ gtk-3.0/assets/radio-checked-dark.svg | 7 +++ .../assets/radio-checked-insensitive-dark.svg | 9 +++ gtk-3.0/assets/radio-checked-insensitive.svg | 9 +++ gtk-3.0/assets/radio-checked.svg | 7 +++ gtk-3.0/assets/radio-mixed-dark.svg | 7 +++ .../assets/radio-mixed-insensitive-dark.svg | 9 +++ gtk-3.0/assets/radio-mixed-insensitive.svg | 9 +++ gtk-3.0/assets/radio-mixed.svg | 7 +++ gtk-3.0/assets/radio-unchecked-dark.svg | 6 ++ .../radio-unchecked-insensitive-dark.svg | 6 ++ .../assets/radio-unchecked-insensitive.svg | 6 ++ gtk-3.0/assets/radio-unchecked.svg | 6 ++ gtk-3.0/scss/_sidebar.scss | 45 +++++++++++++++ gtk-3.0/scss/_toggle.scss | 55 ++++++++++++------- 40 files changed, 339 insertions(+), 19 deletions(-) create mode 100644 gtk-3.0/assets/checkbox-checked-dark.svg create mode 100644 gtk-3.0/assets/checkbox-checked-insensitive-dark.svg create mode 100644 gtk-3.0/assets/checkbox-checked-insensitive.svg create mode 100644 gtk-3.0/assets/checkbox-checked.svg create mode 100644 gtk-3.0/assets/checkbox-mixed-dark.svg create mode 100644 gtk-3.0/assets/checkbox-mixed-insensitive-dark.svg create mode 100644 gtk-3.0/assets/checkbox-mixed-insensitive.svg create mode 100644 gtk-3.0/assets/checkbox-mixed.svg create mode 100644 gtk-3.0/assets/checkbox-unchecked-dark.svg create mode 100644 gtk-3.0/assets/checkbox-unchecked-insensitive-dark.svg create mode 100644 gtk-3.0/assets/checkbox-unchecked-insensitive.svg create mode 100644 gtk-3.0/assets/checkbox-unchecked.svg create mode 100644 gtk-3.0/assets/grid-selection-checked-dark.svg create mode 100644 gtk-3.0/assets/grid-selection-checked.svg create mode 100644 gtk-3.0/assets/grid-selection-unchecked-dark.svg create mode 100644 gtk-3.0/assets/grid-selection-unchecked.svg create mode 100644 gtk-3.0/assets/menuitem-checkbox-checked-hover.svg create mode 100644 gtk-3.0/assets/menuitem-checkbox-checked-insensitive.svg create mode 100644 gtk-3.0/assets/menuitem-checkbox-checked.svg create mode 100644 gtk-3.0/assets/menuitem-checkbox-mixed-hover.svg create mode 100644 gtk-3.0/assets/menuitem-checkbox-mixed-insensitive.svg create mode 100644 gtk-3.0/assets/menuitem-checkbox-mixed-selected.svg create mode 100644 gtk-3.0/assets/menuitem-checkbox-mixed.svg create mode 100644 gtk-3.0/assets/menuitem-radio-checked-hover.svg create mode 100644 gtk-3.0/assets/menuitem-radio-checked-insensitive.svg create mode 100644 gtk-3.0/assets/menuitem-radio-checked.svg create mode 100644 gtk-3.0/assets/radio-checked-dark.svg create mode 100644 gtk-3.0/assets/radio-checked-insensitive-dark.svg create mode 100644 gtk-3.0/assets/radio-checked-insensitive.svg create mode 100644 gtk-3.0/assets/radio-checked.svg create mode 100644 gtk-3.0/assets/radio-mixed-dark.svg create mode 100644 gtk-3.0/assets/radio-mixed-insensitive-dark.svg create mode 100644 gtk-3.0/assets/radio-mixed-insensitive.svg create mode 100644 gtk-3.0/assets/radio-mixed.svg create mode 100644 gtk-3.0/assets/radio-unchecked-dark.svg create mode 100644 gtk-3.0/assets/radio-unchecked-insensitive-dark.svg create mode 100644 gtk-3.0/assets/radio-unchecked-insensitive.svg create mode 100644 gtk-3.0/assets/radio-unchecked.svg diff --git a/gtk-3.0/assets/checkbox-checked-dark.svg b/gtk-3.0/assets/checkbox-checked-dark.svg new file mode 100644 index 0000000..ae01bea --- /dev/null +++ b/gtk-3.0/assets/checkbox-checked-dark.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/gtk-3.0/assets/checkbox-checked-insensitive-dark.svg b/gtk-3.0/assets/checkbox-checked-insensitive-dark.svg new file mode 100644 index 0000000..c3219e2 --- /dev/null +++ b/gtk-3.0/assets/checkbox-checked-insensitive-dark.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/gtk-3.0/assets/checkbox-checked-insensitive.svg b/gtk-3.0/assets/checkbox-checked-insensitive.svg new file mode 100644 index 0000000..4dbe967 --- /dev/null +++ b/gtk-3.0/assets/checkbox-checked-insensitive.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/gtk-3.0/assets/checkbox-checked.svg b/gtk-3.0/assets/checkbox-checked.svg new file mode 100644 index 0000000..0db2ab9 --- /dev/null +++ b/gtk-3.0/assets/checkbox-checked.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/gtk-3.0/assets/checkbox-mixed-dark.svg b/gtk-3.0/assets/checkbox-mixed-dark.svg new file mode 100644 index 0000000..a181bc8 --- /dev/null +++ b/gtk-3.0/assets/checkbox-mixed-dark.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/gtk-3.0/assets/checkbox-mixed-insensitive-dark.svg b/gtk-3.0/assets/checkbox-mixed-insensitive-dark.svg new file mode 100644 index 0000000..27e0ef1 --- /dev/null +++ b/gtk-3.0/assets/checkbox-mixed-insensitive-dark.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/gtk-3.0/assets/checkbox-mixed-insensitive.svg b/gtk-3.0/assets/checkbox-mixed-insensitive.svg new file mode 100644 index 0000000..d408465 --- /dev/null +++ b/gtk-3.0/assets/checkbox-mixed-insensitive.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/gtk-3.0/assets/checkbox-mixed.svg b/gtk-3.0/assets/checkbox-mixed.svg new file mode 100644 index 0000000..8921521 --- /dev/null +++ b/gtk-3.0/assets/checkbox-mixed.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/gtk-3.0/assets/checkbox-unchecked-dark.svg b/gtk-3.0/assets/checkbox-unchecked-dark.svg new file mode 100644 index 0000000..36eeb4d --- /dev/null +++ b/gtk-3.0/assets/checkbox-unchecked-dark.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/gtk-3.0/assets/checkbox-unchecked-insensitive-dark.svg b/gtk-3.0/assets/checkbox-unchecked-insensitive-dark.svg new file mode 100644 index 0000000..3488e66 --- /dev/null +++ b/gtk-3.0/assets/checkbox-unchecked-insensitive-dark.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/gtk-3.0/assets/checkbox-unchecked-insensitive.svg b/gtk-3.0/assets/checkbox-unchecked-insensitive.svg new file mode 100644 index 0000000..f90aa4c --- /dev/null +++ b/gtk-3.0/assets/checkbox-unchecked-insensitive.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/gtk-3.0/assets/checkbox-unchecked.svg b/gtk-3.0/assets/checkbox-unchecked.svg new file mode 100644 index 0000000..06176e3 --- /dev/null +++ b/gtk-3.0/assets/checkbox-unchecked.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/gtk-3.0/assets/grid-selection-checked-dark.svg b/gtk-3.0/assets/grid-selection-checked-dark.svg new file mode 100644 index 0000000..4f6efb5 --- /dev/null +++ b/gtk-3.0/assets/grid-selection-checked-dark.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/gtk-3.0/assets/grid-selection-checked.svg b/gtk-3.0/assets/grid-selection-checked.svg new file mode 100644 index 0000000..3b84ed6 --- /dev/null +++ b/gtk-3.0/assets/grid-selection-checked.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/gtk-3.0/assets/grid-selection-unchecked-dark.svg b/gtk-3.0/assets/grid-selection-unchecked-dark.svg new file mode 100644 index 0000000..f925043 --- /dev/null +++ b/gtk-3.0/assets/grid-selection-unchecked-dark.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/gtk-3.0/assets/grid-selection-unchecked.svg b/gtk-3.0/assets/grid-selection-unchecked.svg new file mode 100644 index 0000000..689da2d --- /dev/null +++ b/gtk-3.0/assets/grid-selection-unchecked.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/gtk-3.0/assets/menuitem-checkbox-checked-hover.svg b/gtk-3.0/assets/menuitem-checkbox-checked-hover.svg new file mode 100644 index 0000000..8ab7153 --- /dev/null +++ b/gtk-3.0/assets/menuitem-checkbox-checked-hover.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/gtk-3.0/assets/menuitem-checkbox-checked-insensitive.svg b/gtk-3.0/assets/menuitem-checkbox-checked-insensitive.svg new file mode 100644 index 0000000..f570a1c --- /dev/null +++ b/gtk-3.0/assets/menuitem-checkbox-checked-insensitive.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/gtk-3.0/assets/menuitem-checkbox-checked.svg b/gtk-3.0/assets/menuitem-checkbox-checked.svg new file mode 100644 index 0000000..66f6f59 --- /dev/null +++ b/gtk-3.0/assets/menuitem-checkbox-checked.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/gtk-3.0/assets/menuitem-checkbox-mixed-hover.svg b/gtk-3.0/assets/menuitem-checkbox-mixed-hover.svg new file mode 100644 index 0000000..d150f8f --- /dev/null +++ b/gtk-3.0/assets/menuitem-checkbox-mixed-hover.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/gtk-3.0/assets/menuitem-checkbox-mixed-insensitive.svg b/gtk-3.0/assets/menuitem-checkbox-mixed-insensitive.svg new file mode 100644 index 0000000..fd8b0d4 --- /dev/null +++ b/gtk-3.0/assets/menuitem-checkbox-mixed-insensitive.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/gtk-3.0/assets/menuitem-checkbox-mixed-selected.svg b/gtk-3.0/assets/menuitem-checkbox-mixed-selected.svg new file mode 100644 index 0000000..d150f8f --- /dev/null +++ b/gtk-3.0/assets/menuitem-checkbox-mixed-selected.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/gtk-3.0/assets/menuitem-checkbox-mixed.svg b/gtk-3.0/assets/menuitem-checkbox-mixed.svg new file mode 100644 index 0000000..2b7b0ea --- /dev/null +++ b/gtk-3.0/assets/menuitem-checkbox-mixed.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/gtk-3.0/assets/menuitem-radio-checked-hover.svg b/gtk-3.0/assets/menuitem-radio-checked-hover.svg new file mode 100644 index 0000000..afb9db2 --- /dev/null +++ b/gtk-3.0/assets/menuitem-radio-checked-hover.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/gtk-3.0/assets/menuitem-radio-checked-insensitive.svg b/gtk-3.0/assets/menuitem-radio-checked-insensitive.svg new file mode 100644 index 0000000..0bc947f --- /dev/null +++ b/gtk-3.0/assets/menuitem-radio-checked-insensitive.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/gtk-3.0/assets/menuitem-radio-checked.svg b/gtk-3.0/assets/menuitem-radio-checked.svg new file mode 100644 index 0000000..7005212 --- /dev/null +++ b/gtk-3.0/assets/menuitem-radio-checked.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/gtk-3.0/assets/radio-checked-dark.svg b/gtk-3.0/assets/radio-checked-dark.svg new file mode 100644 index 0000000..b91357c --- /dev/null +++ b/gtk-3.0/assets/radio-checked-dark.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/gtk-3.0/assets/radio-checked-insensitive-dark.svg b/gtk-3.0/assets/radio-checked-insensitive-dark.svg new file mode 100644 index 0000000..f5cfbe0 --- /dev/null +++ b/gtk-3.0/assets/radio-checked-insensitive-dark.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/gtk-3.0/assets/radio-checked-insensitive.svg b/gtk-3.0/assets/radio-checked-insensitive.svg new file mode 100644 index 0000000..e782ba6 --- /dev/null +++ b/gtk-3.0/assets/radio-checked-insensitive.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/gtk-3.0/assets/radio-checked.svg b/gtk-3.0/assets/radio-checked.svg new file mode 100644 index 0000000..a89c1aa --- /dev/null +++ b/gtk-3.0/assets/radio-checked.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/gtk-3.0/assets/radio-mixed-dark.svg b/gtk-3.0/assets/radio-mixed-dark.svg new file mode 100644 index 0000000..caf2123 --- /dev/null +++ b/gtk-3.0/assets/radio-mixed-dark.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/gtk-3.0/assets/radio-mixed-insensitive-dark.svg b/gtk-3.0/assets/radio-mixed-insensitive-dark.svg new file mode 100644 index 0000000..6b93fc4 --- /dev/null +++ b/gtk-3.0/assets/radio-mixed-insensitive-dark.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/gtk-3.0/assets/radio-mixed-insensitive.svg b/gtk-3.0/assets/radio-mixed-insensitive.svg new file mode 100644 index 0000000..9fa3659 --- /dev/null +++ b/gtk-3.0/assets/radio-mixed-insensitive.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/gtk-3.0/assets/radio-mixed.svg b/gtk-3.0/assets/radio-mixed.svg new file mode 100644 index 0000000..38c8a53 --- /dev/null +++ b/gtk-3.0/assets/radio-mixed.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/gtk-3.0/assets/radio-unchecked-dark.svg b/gtk-3.0/assets/radio-unchecked-dark.svg new file mode 100644 index 0000000..214ed94 --- /dev/null +++ b/gtk-3.0/assets/radio-unchecked-dark.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/gtk-3.0/assets/radio-unchecked-insensitive-dark.svg b/gtk-3.0/assets/radio-unchecked-insensitive-dark.svg new file mode 100644 index 0000000..0fdfaf4 --- /dev/null +++ b/gtk-3.0/assets/radio-unchecked-insensitive-dark.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/gtk-3.0/assets/radio-unchecked-insensitive.svg b/gtk-3.0/assets/radio-unchecked-insensitive.svg new file mode 100644 index 0000000..a0f2168 --- /dev/null +++ b/gtk-3.0/assets/radio-unchecked-insensitive.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/gtk-3.0/assets/radio-unchecked.svg b/gtk-3.0/assets/radio-unchecked.svg new file mode 100644 index 0000000..2f05a0d --- /dev/null +++ b/gtk-3.0/assets/radio-unchecked.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/gtk-3.0/scss/_sidebar.scss b/gtk-3.0/scss/_sidebar.scss index 4cb626d..b6658a9 100755 --- a/gtk-3.0/scss/_sidebar.scss +++ b/gtk-3.0/scss/_sidebar.scss @@ -71,3 +71,48 @@ .highlight { font: bold; } } } + + +/*************** +! Pane separator +****************/ + +.pane-separator { + &, &.horizontal { + background-image: linear-gradient(to bottom, + shade($bg_color, 0.8) 0%, + shade($bg_color, 0.8) 20%, + transparent 20%, + transparent 45%, + shade($bg_color, 0.8) 45%, + shade($bg_color, 0.8) 55%, + transparent 55%, + transparent 80%, + shade($bg_color, 0.8) 80%, + shade($bg_color, 0.8) + ); + + background-size: 4px 10px; + background-repeat: no-repeat; + background-position: center center; + } + + &.vertical { + background-image: linear-gradient(to right, + shade($bg_color, 0.8) 0%, + shade($bg_color, 0.8) 20%, + transparent 20%, + transparent 45%, + shade($bg_color, 0.8) 45%, + shade($bg_color, 0.8) 55%, + transparent 55%, + transparent 80%, + shade($bg_color, 0.8) 80%, + shade($bg_color, 0.8) + ); + + background-size: 10px 4px; + background-repeat: no-repeat; + background-position: center center; + } +} diff --git a/gtk-3.0/scss/_toggle.scss b/gtk-3.0/scss/_toggle.scss index 4ef007a..43e0fc1 100755 --- a/gtk-3.0/scss/_toggle.scss +++ b/gtk-3.0/scss/_toggle.scss @@ -11,40 +11,57 @@ -GtkCheckMenuItem-indicator-size: 14; } -@mixin toggle($type, $bg, $fg) { - color: $fg; +@mixin toggle($type) { background-image: none; - -gtk-icon-source: -gtk-icontheme('#{$type}-symbolic'); + + -gtk-icon-source: url('../assets/#{$type}-unchecked.svg'); + + &:insensitive { -gtk-icon-source: url('../assets/#{$type}-unchecked-insensitive.svg'); } &:checked, &:active { - -gtk-icon-source: -gtk-icontheme('#{$type}-checked-symbolic'); + -gtk-icon-source: url('../assets/#{$type}-checked.svg'); + + &:insensitive { -gtk-icon-source: url('../assets/#{$type}-checked-insensitive.svg'); } } &:inconsistent { - -gtk-icon-source: -gtk-icontheme('#{$type}-mixed-symbolic'); + -gtk-icon-source: url('../assets/#{$type}-mixed.svg'); + + &:insensitive { -gtk-icon-source: url('../assets/#{$type}-mixed-insensitive.svg'); } } - &:focus, &:hover { - color: shade($fg, 1.2); - } + &.menuitem { + -gtk-icon-source: none; - &:active { - color: shade($fg, 0.8); - } + &:insensitive { -gtk-icon-source: none; } - &:insensitive { - color: mix($bg, $fg, .5); - } + &:checked, &:active { + -gtk-icon-source: url('../assets/menuitem-#{$type}-checked.svg'); - &:active *:insensitive { - color: mix($bg, $fg, .8); - } + &:hover { -gtk-icon-source: url('../assets/menuitem-#{$type}-checked-hover.svg'); } + &:insensitive { -gtk-icon-source: url('../assets/menuitem-#{$type}-checked-insensitive.svg'); } + } + + &:inconsistent { + -gtk-icon-source: url('../assets/menuitem-#{$type}-mixed.svg'); + + &:hover { -gtk-icon-source: url('../assets/menuitem-#{$type}-mixed-hover.svg'); } + + &:insensitive { -gtk-icon-source: url('../assets/menuitem-#{$type}-mixed-insensitive.svg'); } + } + } } -.radio { @include toggle("radio", $bg_color, $fg_color); } +.radio { @include toggle("radio"); } -.check { @include toggle("checkbox", $bg_color, $fg_color); } +.check { @include toggle("checkbox"); } + +GtkIconView.content-view.cell.check { + -gtk-icon-source: url("assets/grid-selection-unchecked.svg"); + + &:active { -gtk-icon-source: url("assets/grid-selection-checked.svg"); } +} /******** From 005e5f8ee9b260e0cbf422e89247263958d2f47c Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 6 Dec 2014 20:44:21 +0530 Subject: [PATCH 19/73] Don't use * for insensitive active buttons --- gtk-3.0/scss/_button.scss | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gtk-3.0/scss/_button.scss b/gtk-3.0/scss/_button.scss index e548bc7..51c296f 100755 --- a/gtk-3.0/scss/_button.scss +++ b/gtk-3.0/scss/_button.scss @@ -66,8 +66,8 @@ &:last-child, &:only-child, &:insensitive:last-child, &:insensitive:only-child, - &:active *:insensitive:last-child, &:active *:insensitive:only-child, - &:checked *:insensitive:last-child, &:checked *:insensitive:only-child { box-shadow: none; } + &:active:insensitive:last-child, &:active:insensitive:only-child, + &:checked:insensitive:last-child, &:checked:insensitive:only-child { box-shadow: none; } &:active:last-child, &:active:only-child, &:checked:last-child, &:checked:only-child { @@ -114,8 +114,8 @@ box-shadow: none; } - &:active *:insensitive, - &:checked *:insensitive { + &:active:insensitive, + &:checked:insensitive { @include linear-gradient(shade($bg, .8)); box-shadow: none; From cceeb065f8e9ddcda4ab45a865c9024b9c55c974 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Mon, 8 Dec 2014 23:58:57 +0530 Subject: [PATCH 20/73] Style info bar and calendar --- gtk-3.0/scss/_calendar.scss | 24 ++++ gtk-3.0/scss/_infobar.scss | 56 +++++++++ gtk-3.0/scss/widgets.scss | 242 +----------------------------------- 3 files changed, 82 insertions(+), 240 deletions(-) create mode 100644 gtk-3.0/scss/_calendar.scss create mode 100644 gtk-3.0/scss/_infobar.scss diff --git a/gtk-3.0/scss/_calendar.scss b/gtk-3.0/scss/_calendar.scss new file mode 100644 index 0000000..a1be572 --- /dev/null +++ b/gtk-3.0/scss/_calendar.scss @@ -0,0 +1,24 @@ +@import "functions"; +@import "global"; + + +/********** + ! Calendar +***********/ + +GtkCalendar { + padding: $spacing; + outline-offset: -1px; + + &:inconsistent { color: mix($fg_color, $bg_color, 0.5); } + + &.view, &.highlight, &.header, &.button { + &, &:hover, &:insensitive { + border: none; + background-color: transparent; + background-image: none; + } + } + + &.highlight { color: $selected_bg_color; } +} diff --git a/gtk-3.0/scss/_infobar.scss b/gtk-3.0/scss/_infobar.scss new file mode 100644 index 0000000..168a1d7 --- /dev/null +++ b/gtk-3.0/scss/_infobar.scss @@ -0,0 +1,56 @@ +@import "functions"; +@import "global"; + + +/********* + ! Infobar +**********/ + +GtkInfoBar { + border: none; + + $types: ( + info: ( $info_fg_color, $info_bg_color ), + warning: ( $warning_fg_color, $warning_bg_color ), + question: ( $question_fg_color, $question_bg_color ), + error: ( $error_fg_color, $error_bg_color ), + ); + + + @each $type, $colors in $types { + $fg_color: nth($colors, 1); + $bg_color: nth($colors, 2); + + &.#{$type} { + border: 1px solid shade($bg_color, 0.8); + background-color: $bg_color; + background-image: none; + color: $fg_color; + + .button { + @include button($bg_color, $fg_color); + + &.close { + border: 1px solid transparent; + background-color: transparent; + background-image: none; + box-shadow: none; + + &:focus, &:hover { + border: 1px solid alpha(black, 0.3); + background-color: alpha(white, 0.2); + background-image: none; + box-shadow: none; + } + + &:active, &:checked, &:active:hover, &:checked:hover { + border: 1px solid alpha(black, 0.3); + background-color: alpha(black, 0.1); + background-image: none; + box-shadow: none; + } + } + } + } + } +} diff --git a/gtk-3.0/scss/widgets.scss b/gtk-3.0/scss/widgets.scss index 882f861..423bb4c 100755 --- a/gtk-3.0/scss/widgets.scss +++ b/gtk-3.0/scss/widgets.scss @@ -12,247 +12,9 @@ @import "progress"; @import "spinner"; @import "window"; +@import "calendar"; +@import "infobar"; -/*********** -* calendar * -************/ -GtkCalendar { - padding: 4px; - outline-offset: -1px; -} - -GtkCalendar:inconsistent { - color: mix($fg_color, $bg_color, 0.5); -} - -GtkCalendar.view, -GtkCalendar.header, -GtkCalendar.button, -GtkCalendar.button:hover, -GtkCalendar.button:insensitive { - border-width: 0; - background-color: transparent; - background-image: none; -} - -.highlight, -GtkCalendar.highlight { - border-width: 0; - background-color: transparent; - color: $selected_bg_color; -} - -/*********** -* infobar * -***********/ -GtkInfoBar { - border-width: 0; - border-style: none; -} - -.info { - border-width: 1px; - border-style: solid; - border-color: shade($info_bg_color, 0.8); - background-color: $info_bg_color; - background-image: none; - color: $info_fg_color; -} - -.info .button { - border-top-color: shade($info_bg_color, 0.8); - border-right-color: shade($info_bg_color, 0.72); - border-left-color: shade($info_bg_color, 0.72); - border-bottom-color: shade($info_bg_color, 0.7); - background-color: shade($info_bg_color, 1.08); - color: $info_fg_color; -} - -.info .button:hover { - border-top-color: shade($info_bg_color, 0.85); - border-right-color: shade($info_bg_color, 0.78); - border-left-color: shade($info_bg_color, 0.78); - border-bottom-color: shade($info_bg_color, 0.7); - background-color: shade($info_bg_color, 1.10); -} - -.info .button:active { - border-color: shade($info_bg_color, 0.6); - background-color: shade($info_bg_color, 0.95); -} - -.info .button:active:hover { - border-top-color: shade($info_bg_color, 0.85); - border-right-color: shade($info_bg_color, 0.78); - border-left-color: shade($info_bg_color, 0.78); - border-bottom-color: shade($info_bg_color, 0.7); -} - -.info .button.close { - color: $info_fg_color; -} - -.info .button.close:hover { - background-color: alpha(white, 0.2); -} - -.info .button.close:active { - color: $info_fg_color; - background-color: alpha(black, 0.1); -} - -.warning { - border-width: 1px; - border-style: solid; - border-color: shade($warning_bg_color, 0.8); - background-color: $warning_bg_color; - background-image: none; - color: $warning_fg_color; -} - -.warning .button { - border-top-color: shade($warning_bg_color, 0.8); - border-right-color: shade($warning_bg_color, 0.72); - border-left-color: shade($warning_bg_color, 0.72); - border-bottom-color: shade($warning_bg_color, 0.7); - background-color: shade($warning_bg_color, 1.08); - color: $warning_fg_color; -} - -.warning .button:hover { - border-top-color: shade($warning_bg_color, 0.85); - border-right-color: shade($warning_bg_color, 0.78); - border-left-color: shade($warning_bg_color, 0.78); - border-bottom-color: shade($warning_bg_color, 0.7); - background-color: shade($warning_bg_color, 1.10); -} - -.warning .button:active { - border-color: shade($warning_bg_color, 0.6); - background-color: shade($warning_bg_color, 0.95); -} - -.warning .button:active:hover { - border-top-color: shade($warning_bg_color, 0.85); - border-right-color: shade($warning_bg_color, 0.78); - border-left-color: shade($warning_bg_color, 0.78); - border-bottom-color: shade($warning_bg_color, 0.7); -} - -.warning .button.close { - color: $warning_fg_color; -} - -.warning .button.close:hover { - background-color: alpha(white, 0.2); -} - -.warning .button.close:active { - color: $warning_fg_color; - background-color: alpha(black, 0.1); -} - -.question { - border-width: 1px; - border-style: solid; - border-color: shade($question_bg_color, 0.8); - background-color: $question_bg_color; - background-image: none; - color: $question_fg_color; -} - -.question .button { - border-top-color: shade($question_bg_color, 0.8); - border-right-color: shade($question_bg_color, 0.72); - border-left-color: shade($question_bg_color, 0.72); - border-bottom-color: shade($question_bg_color, 0.7); - background-color: shade($question_bg_color, 1.08); - color: $question_fg_color; -} - -.question .button:hover { - border-top-color: shade($question_bg_color, 0.85); - border-right-color: shade($question_bg_color, 0.78); - border-left-color: shade($question_bg_color, 0.78); - border-bottom-color: shade($question_bg_color, 0.7); - background-color: shade($question_bg_color, 1.10); -} - -.question .button:active { - border-color: shade($question_bg_color, 0.6); - background-color: shade($question_bg_color, 0.95); -} - -.question .button:active:hover { - border-top-color: shade($question_bg_color, 0.85); - border-right-color: shade($question_bg_color, 0.78); - border-left-color: shade($question_bg_color, 0.78); - border-bottom-color: shade($question_bg_color, 0.7); -} - -.question .button.close { - color: $question_fg_color; -} - -.question .button.close:hover { - background-color: alpha(white, 0.2); -} - -.question .button.close:active { - color: $question_fg_color; - background-color: alpha(black, 0.1); -} - -.error { - border-width: 1px; - border-style: solid; - border-color: shade($error_bg_color, 0.8); - background-color: $error_bg_color; - background-image: none; - color: $error_fg_color; -} - -.error .button { - border-top-color: shade($error_bg_color, 0.8); - border-right-color: shade($error_bg_color, 0.72); - border-left-color: shade($error_bg_color, 0.72); - border-bottom-color: shade($error_bg_color, 0.7); - background-color: shade($error_bg_color, 1.08); - color: $error_fg_color; -} - -.error .button:hover { - border-top-color: shade($error_bg_color, 0.85); - border-right-color: shade($error_bg_color, 0.78); - border-left-color: shade($error_bg_color, 0.78); - border-bottom-color: shade($error_bg_color, 0.7); - background-color: shade($error_bg_color, 1.10); -} - -.error .button:active { - border-color: shade($error_bg_color, 0.6); - background-color: shade($error_bg_color, 0.95); -} - -.error .button:active:hover { - border-top-color: shade($error_bg_color, 0.85); - border-right-color: shade($error_bg_color, 0.78); - border-left-color: shade($error_bg_color, 0.78); - border-bottom-color: shade($error_bg_color, 0.7); -} - -.error .button.close { - color: $error_fg_color; -} - -.error .button.close:hover { - background-color: alpha(white, 0.2); -} - -.error .button.close:active { - color: $error_fg_color; - background-color: alpha(black, 0.1); -} /***************** * miscellaneous * From f34745f3da6bc65f328553ded0c0be2cd0e5e2d7 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Tue, 9 Dec 2014 00:42:07 +0530 Subject: [PATCH 21/73] Added styles for notebook and scrollbar --- gtk-3.0/scss/_button.scss | 21 ++++ gtk-3.0/scss/_infobar.scss | 22 +--- gtk-3.0/scss/_notebook.scss | 134 ++++++++++++++++++++ gtk-3.0/scss/_scrollbar.scss | 61 +++++++++ gtk-3.0/scss/_view.scss | 46 +++++++ gtk-3.0/scss/widgets.scss | 233 +---------------------------------- 6 files changed, 266 insertions(+), 251 deletions(-) create mode 100644 gtk-3.0/scss/_notebook.scss create mode 100644 gtk-3.0/scss/_scrollbar.scss diff --git a/gtk-3.0/scss/_button.scss b/gtk-3.0/scss/_button.scss index 51c296f..4baaf0f 100755 --- a/gtk-3.0/scss/_button.scss +++ b/gtk-3.0/scss/_button.scss @@ -145,6 +145,27 @@ .linked & { @include linked_button($bg, $dark_shadow); } } +%close_button { + border: 1px solid transparent; + background-color: transparent; + background-image: none; + box-shadow: none; + + &:focus, &:hover { + border: 1px solid alpha(black, 0.3); + background-color: alpha(white, 0.2); + background-image: none; + box-shadow: none; + } + + &:active, &:checked, &:active:hover, &:checked:hover { + border: 1px solid alpha(black, 0.3); + background-color: alpha(black, 0.1); + background-image: none; + box-shadow: none; + } +} + .button { @include button($bg_color, $fg_color); diff --git a/gtk-3.0/scss/_infobar.scss b/gtk-3.0/scss/_infobar.scss index 168a1d7..29a096b 100644 --- a/gtk-3.0/scss/_infobar.scss +++ b/gtk-3.0/scss/_infobar.scss @@ -1,5 +1,6 @@ @import "functions"; @import "global"; +@import "button"; /********* @@ -30,26 +31,7 @@ GtkInfoBar { .button { @include button($bg_color, $fg_color); - &.close { - border: 1px solid transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - - &:focus, &:hover { - border: 1px solid alpha(black, 0.3); - background-color: alpha(white, 0.2); - background-image: none; - box-shadow: none; - } - - &:active, &:checked, &:active:hover, &:checked:hover { - border: 1px solid alpha(black, 0.3); - background-color: alpha(black, 0.1); - background-image: none; - box-shadow: none; - } - } + &.close { @extend %close_button; } } } } diff --git a/gtk-3.0/scss/_notebook.scss b/gtk-3.0/scss/_notebook.scss new file mode 100644 index 0000000..b16b0d6 --- /dev/null +++ b/gtk-3.0/scss/_notebook.scss @@ -0,0 +1,134 @@ +@import "functions"; +@import "global"; + +/********** + ! Notebook +***********/ + +.notebook { + padding: 0; + border-width: 1px 0 0 0; + border-style: solid; + border-color: border_normal($base_color); + border-radius: 0; + background-color: $base_color; + background-image: none; + background-clip: border-box; + color: $text_color; + + -GtkNotebook-initial-gap: 0; + -GtkNotebook-arrow-spacing: 5; + -GtkNotebook-tab-curvature: 0; + -GtkNotebook-tab-overlap: 1; + -GtkNotebook-has-tab-gap: false; + + &.frame { border-width: 1px; } + + &.header { + border-width: 0; + background-color: shade($base_color, 0.85); + + &.frame { + border-color: shade($base_color, 0.75); + + &.top { border-width: 1px 1px 0 1px; } + + &.right { border-width: 1px 1px 1px 0; } + + &.bottom { border-width: 0 1px 1px 1px; } + + &.left { border-width: 1px 0 1px 1px; } + } + } + + GtkViewport { + border-width: 0; + background-color: $base_color; + color: $text_color; + } + + tab { + padding: $spacing ($spacing * 2); + border: 1px solid transparent; + background-color: transparent; + background-image: none; + + &:active { + background-color: transparent; + background-image: none; + } + + &.top { + border-bottom-width: 2px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; + + &:hover { border-bottom-color: alpha($selected_bg_color, 0.3); } + + &:active { border-bottom-color: $selected_bg_color; } + } + + &.right { + border-left-width: 2px; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + + &:hover { border-left-color: alpha($selected_bg_color, 0.3); } + + &:active { border-left-color: $selected_bg_color; } + } + + + &.bottom { + border-top-width: 2px; + border-top-right-radius: 0; + border-top-left-radius: 0; + + &:hover { border-top-color: alpha($selected_bg_color, 0.3); } + + &:active { border-top-color: $selected_bg_color; } + } + + &.left { + border-right-width: 2px; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + + &:hover { border-right-color: alpha($selected_bg_color, 0.3); } + + &:active { border-right-color: $selected_bg_color; } + } + + GtkLabel { color: mix($text_color, $base_color, 0.3); } + + /* close button styling */ + .button { @extend %close_button; } + } + + .prelight-page { + &, GtkLabel { color: mix($text_color, $base_color, 0.15); } + } + + .active-page { + &, GtkLabel { color: $text_color; } + } + + .reorderable-page { + &:hover { + background-color: shade($base_color, 0.85); + border-left: 0; + border-right: 0; + /* using box shadows instead of borders due to slanted edges */ + box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), + inset 1px 0 shade($base_color, 0.7), inset -1px 0 shade($base_color, 0.7); + } + + &:active { + background-color: shade($base_color, 0.90); + border-left: 0; + border-right: 0; + box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), + inset 1px 0 shade($base_color, 0.75), inset -1px 0 shade($base_color, 0.75); + } + } +} diff --git a/gtk-3.0/scss/_scrollbar.scss b/gtk-3.0/scss/_scrollbar.scss new file mode 100644 index 0000000..8412d5d --- /dev/null +++ b/gtk-3.0/scss/_scrollbar.scss @@ -0,0 +1,61 @@ +@import "functions"; +@import "global"; + +/*********** + ! Scrollbar +************/ + +.scrollbar { + border: none; + padding: 0; + + &.button { + &, &:active, &:active:hover { + border-width: 0; + border-radius: 0; + background-color: transparent; + background-image: none; + color: shade($bg_color, 0.6); + } + } + + &.slider, &.slider.vertical { + border: 1px solid mix(shade($bg_color, 0.87), $fg_color, 0.21); + border-radius: 0; + background-color: mix($bg_color, $fg_color, 0.21); + + &:hover { + border-color: mix(shade($bg_color, 0.87), $fg_color, 0.31); + background-color: mix($bg_color, $fg_color, 0.31); + } + + &:active { + border-color: shade($selected_bg_color, 0.9); + background-color: $selected_bg_color; + } + + &.fine-tune:prelight:active { + border-width: 2px; + border-color: transparent; + } + } +} + +.scrollbars-junction, +.scrollbar.trough { + border: none; + border-radius: 0; + background-color: $bg_color; + background-image: none; +} + +/* overlay scrollbar */ +OsThumb, OsScrollbar { + color: shade($bg_color, 0.7); + + &:selected { background-color: $selected_bg_color; } + + &:active { background-color: $selected_bg_color; } + + &:insensitive { background-color: shade($bg_color, 0.9); } +} diff --git a/gtk-3.0/scss/_view.scss b/gtk-3.0/scss/_view.scss index ea99496..e7c0155 100644 --- a/gtk-3.0/scss/_view.scss +++ b/gtk-3.0/scss/_view.scss @@ -219,3 +219,49 @@ GtkExpander { background-color: $bg_color; color: transparent; } + + +/**************** + ! Floating bar * +*****************/ + +.floating-bar { + border: 1px solid border_normal($bg_color); + border-radius: $roundness; + background-color: $bg_color; + background-image: none; + color: $fg_color; + + &.top { + border-top-width: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; + } + + &.right { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + + &.bottom { + border-bottom-width: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; + } + + &.left { + border-left-width: 0; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + } + + .button { + -GtkButton-image-spacing: 0; + -GtkButton-inner-border: 0; + + border: none; + background-color: transparent; + background-image: none; + } +} diff --git a/gtk-3.0/scss/widgets.scss b/gtk-3.0/scss/widgets.scss index 423bb4c..c74514b 100755 --- a/gtk-3.0/scss/widgets.scss +++ b/gtk-3.0/scss/widgets.scss @@ -14,237 +14,8 @@ @import "window"; @import "calendar"; @import "infobar"; - - -/***************** -* miscellaneous * -*****************/ -.floating-bar { - border-width: 1px; - border-style: solid; - border-color: shade($bg_color, 0.8); - border-radius: 2px; - background-color: $bg_color; - background-image: none; - color: $fg_color; -} - -.floating-bar.top { - border-top-width: 0; - border-top-right-radius: 0; - border-top-left-radius: 0; -} - -.floating-bar.right { - border-right-width: 0; - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} - -.floating-bar.bottom { - border-bottom-width: 0; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} - -.floating-bar.left { - border-left-width: 0; - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} - -.floating-bar .button { - -GtkButton-image-spacing: 0; - -GtkButton-inner-border: 0; - - border-style: none; - background-color: transparent; - background-image: none; -} - - - -/************ -* notebook * -************/ -.notebook { - padding: 0; - border-width: 1px 0 0 0; - border-style: solid; - border-color: shade($base_color, 0.7); - border-radius: 0; - background-color: $base_color; - background-image: none; - background-clip: border-box; - - -GtkNotebook-initial-gap: 0; - -GtkNotebook-arrow-spacing: 5; - -GtkNotebook-tab-curvature: 0; - -GtkNotebook-tab-overlap: 1; - -GtkNotebook-has-tab-gap: false; -} - -.notebook.frame { - border-width: 1px; -} - -.notebook.header { - border-width: 0; - background-color: shade($base_color, 0.85); -} - -.notebook.header.frame { - border-color: shade($base_color, 0.75); -} - -.notebook.header.frame.top { - border-width: 1px 1px 0 1px; -} - -.notebook.header.frame.right { - border-width: 1px 1px 1px 0; -} - -.notebook.header.frame.bottom { - border-width: 0 1px 1px 1px; -} - -.notebook.header.frame.left { - border-width: 1px 0 1px 1px; -} - -.notebook GtkViewport { - border-width: 0; - background-color: $base_color; - color: $text_color; -} - -.notebook tab { - padding: 4px 6px; - border-style: solid; - border-width: 1px; - border-color: transparent; - background-color: transparent; - background-image: none; -} - -.notebook tab:active { - background-color: transparent; - background-image: none; -} - -.notebook tab.top { - border-bottom-width: 2px; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} - -.notebook tab.top:hover { - border-bottom-color: alpha($selected_bg_color, 0.3); -} - -.notebook tab.top:active { - border-bottom-color: $selected_bg_color; -} - -.notebook tab.right { - border-left-width: 2px; - border-bottom-left-radius: 0; - border-top-left-radius: 0; -} - -.notebook tab.right:hover { - border-left-color: alpha($selected_bg_color, 0.3); -} - -.notebook tab.right:active { - border-left-color: $selected_bg_color; -} - -.notebook tab.bottom { - border-top-width: 2px; - border-top-right-radius: 0; - border-top-left-radius: 0; -} - -.notebook tab.bottom:hover { - border-top-color: alpha($selected_bg_color, 0.3); -} - -.notebook tab.bottom:active { - border-top-color: $selected_bg_color; -} - -.notebook tab.left { - border-right-width: 2px; - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} - -.notebook tab.left:hover { - border-right-color: alpha($selected_bg_color, 0.3); -} - -.notebook tab.left:active { - border-right-color: $selected_bg_color; -} - -.notebook tab GtkLabel { - color: mix($text_color, $base_color, 0.3); -} - -.notebook .prelight-page, -.notebook .prelight-page GtkLabel { - color: mix($text_color, $base_color, 0.15); -} - -.notebook .active-page, -.notebook .active-page GtkLabel { - color: $text_color; -} - -.notebook tab.reorderable-page:hover { - background-color: shade($base_color, 0.85); - border-left: 0; - border-right: 0; - /* using box shadows instead of borders due to slanted edges */ - box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), - inset 1px 0 shade($base_color, 0.7), inset -1px 0 shade($base_color, 0.7); -} - -.notebook tab.reorderable-page:active { - background-color: shade($base_color, 0.90); - border-left: 0; - border-right: 0; - box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), - inset 1px 0 shade($base_color, 0.75), inset -1px 0 shade($base_color, 0.75); -} - -/* close button styling */ -.notebook tab .button, -.notebook tab .button:active, -.notebook tab .button:hover { - padding: 1px; - border-width: 1px; - border-radius: 2px; - border-style: solid; - border-color: transparent; - background-image: none; - background-color: transparent; - color: mix($text_color, $base_color, 0.5); -} - -.notebook tab .button:hover { - color: $text_color; - border-color: shade($base_color, 0.8); -} - -.notebook tab .button:active, -.notebook tab .button:active:hover { - border-color: shade($base_color, 0.7); - background-color: shade($base_color, 0.95); -} - +@import "notebook"; +@import "scrollbar"; /************* From 0163f1997a9ca3a33dcf61950a6b03c1231a26c9 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Tue, 9 Dec 2014 01:05:19 +0530 Subject: [PATCH 22/73] Wrap modules in exports mixin so they are included only once --- gtk-3.0/scss/_button.scss | 42 ++-- gtk-3.0/scss/_calendar.scss | 25 +-- gtk-3.0/scss/_entry.scss | 31 +-- gtk-3.0/scss/_grid.scss | 2 +- gtk-3.0/scss/_infobar.scss | 40 ++-- gtk-3.0/scss/_menu.scss | 340 ++++++++++++++++---------------- gtk-3.0/scss/_notebook.scss | 227 ++++++++++----------- gtk-3.0/scss/_progress.scss | 320 +++++++++++++++--------------- gtk-3.0/scss/_scrollbar.scss | 88 +++++---- gtk-3.0/scss/_sidebar.scss | 183 ++++++++--------- gtk-3.0/scss/_spinner.scss | 26 +-- gtk-3.0/scss/_toggle.scss | 78 ++++---- gtk-3.0/scss/_toolbar.scss | 104 +++++----- gtk-3.0/scss/_view.scss | 369 ++++++++++++++++++----------------- gtk-3.0/scss/_window.scss | 56 +++--- gtk-3.0/scss/widgets.scss | 72 ------- 16 files changed, 988 insertions(+), 1015 deletions(-) diff --git a/gtk-3.0/scss/_button.scss b/gtk-3.0/scss/_button.scss index 4baaf0f..44cbcd2 100755 --- a/gtk-3.0/scss/_button.scss +++ b/gtk-3.0/scss/_button.scss @@ -145,29 +145,31 @@ .linked & { @include linked_button($bg, $dark_shadow); } } -%close_button { - border: 1px solid transparent; - background-color: transparent; - background-image: none; - box-shadow: none; - - &:focus, &:hover { - border: 1px solid alpha(black, 0.3); - background-color: alpha(white, 0.2); +@include exports("button") { + %close_button { + border: 1px solid transparent; + background-color: transparent; background-image: none; box-shadow: none; + + &:focus, &:hover { + border: 1px solid alpha(black, 0.3); + background-color: alpha(white, 0.2); + background-image: none; + box-shadow: none; + } + + &:active, &:checked, &:active:hover, &:checked:hover { + border: 1px solid alpha(black, 0.3); + background-color: alpha(black, 0.1); + background-image: none; + box-shadow: none; + } } - &:active, &:checked, &:active:hover, &:checked:hover { - border: 1px solid alpha(black, 0.3); - background-color: alpha(black, 0.1); - background-image: none; - box-shadow: none; + .button { + @include button($bg_color, $fg_color); + + &.default { @include button($selected_bg_color, $selected_fg_color); } } } - -.button { - @include button($bg_color, $fg_color); - - &.default { @include button($selected_bg_color, $selected_fg_color); } -} diff --git a/gtk-3.0/scss/_calendar.scss b/gtk-3.0/scss/_calendar.scss index a1be572..6eacde0 100644 --- a/gtk-3.0/scss/_calendar.scss +++ b/gtk-3.0/scss/_calendar.scss @@ -6,19 +6,22 @@ ! Calendar ***********/ -GtkCalendar { - padding: $spacing; - outline-offset: -1px; +@include exports("calendar") { + GtkCalendar { + padding: $spacing; + outline-offset: -1px; - &:inconsistent { color: mix($fg_color, $bg_color, 0.5); } + &:inconsistent { color: mix($fg_color, $bg_color, 0.5); } - &.view, &.highlight, &.header, &.button { - &, &:hover, &:insensitive { - border: none; - background-color: transparent; - background-image: none; + &.view, &.highlight, &.header, &.button { + &, &:hover, &:insensitive { + border: none; + background-color: transparent; + background-image: none; + } } - } - &.highlight { color: $selected_bg_color; } + &.highlight { color: $selected_bg_color; } + } } + diff --git a/gtk-3.0/scss/_entry.scss b/gtk-3.0/scss/_entry.scss index d099aff..7720308 100755 --- a/gtk-3.0/scss/_entry.scss +++ b/gtk-3.0/scss/_entry.scss @@ -72,27 +72,32 @@ &.image.left { padding-right: $spacing; } } -.entry { @include entry($base_color, $text_color); } +@include exports("entry") { + .entry { @include entry($base_color, $text_color); } +} /****************** ! Combobox entry * *******************/ -GtkComboBox.combobox-entry { - .entry { - &, &:hover, &:focus, &:active, &:insensitive { - border-width: 1px 0 1px 1px; - border-top-right-radius: 0; - border-bottom-right-radius: 0; +@include exports("comboboxentry") { + GtkComboBox.combobox-entry { + .entry { + &, &:hover, &:focus, &:active, &:insensitive { + border-width: 1px 0 1px 1px; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } } - } - .button { - &, &:hover, &:focus, &:active, &:insensitive { - border-width: 1px 1px 1px 1px; - border-bottom-left-radius: 0; - border-top-left-radius: 0; + .button { + &, &:hover, &:focus, &:active, &:insensitive { + border-width: 1px 1px 1px 1px; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + } } } } + diff --git a/gtk-3.0/scss/_grid.scss b/gtk-3.0/scss/_grid.scss index 1f60beb..a92ba9a 100644 --- a/gtk-3.0/scss/_grid.scss +++ b/gtk-3.0/scss/_grid.scss @@ -13,7 +13,7 @@ &-row { border: none; border-radius: 0; - padding: 3px; + padding: $spacing; background-image: none; background-color: transparent; diff --git a/gtk-3.0/scss/_infobar.scss b/gtk-3.0/scss/_infobar.scss index 29a096b..848c247 100644 --- a/gtk-3.0/scss/_infobar.scss +++ b/gtk-3.0/scss/_infobar.scss @@ -7,31 +7,33 @@ ! Infobar **********/ -GtkInfoBar { - border: none; +@include exports("infobar") { + GtkInfoBar { + border: none; - $types: ( - info: ( $info_fg_color, $info_bg_color ), - warning: ( $warning_fg_color, $warning_bg_color ), - question: ( $question_fg_color, $question_bg_color ), - error: ( $error_fg_color, $error_bg_color ), - ); + $types: ( + info: ( $info_fg_color, $info_bg_color ), + warning: ( $warning_fg_color, $warning_bg_color ), + question: ( $question_fg_color, $question_bg_color ), + error: ( $error_fg_color, $error_bg_color ), + ); - @each $type, $colors in $types { - $fg_color: nth($colors, 1); - $bg_color: nth($colors, 2); + @each $type, $colors in $types { + $fg_color: nth($colors, 1); + $bg_color: nth($colors, 2); - &.#{$type} { - border: 1px solid shade($bg_color, 0.8); - background-color: $bg_color; - background-image: none; - color: $fg_color; + &.#{$type} { + border: 1px solid shade($bg_color, 0.8); + background-color: $bg_color; + background-image: none; + color: $fg_color; - .button { - @include button($bg_color, $fg_color); + .button { + @include button($bg_color, $fg_color); - &.close { @extend %close_button; } + &.close { @extend %close_button; } + } } } } diff --git a/gtk-3.0/scss/_menu.scss b/gtk-3.0/scss/_menu.scss index 44fd1bf..6fa1a44 100755 --- a/gtk-3.0/scss/_menu.scss +++ b/gtk-3.0/scss/_menu.scss @@ -7,30 +7,32 @@ ! Menubar **********/ -.menubar { - -GtkWidget-window-dragging: true; +@include exports("menubar") { + .menubar { + -GtkWidget-window-dragging: true; - border: none; - background-color: $menubar_bg_color; - background-image: none; - color: $menubar_fg_color; - - - &.menuitem, .menuitem { - padding: $spacing ($spacing * 2); - border: 1px solid transparent; - background-color: transparent; + border: none; + background-color: $menubar_bg_color; background-image: none; color: $menubar_fg_color; - &:hover { - border-color: mix($menubar_bg_color, $menubar_fg_color, 0.21); - background-color: mix($menubar_bg_color, $menubar_fg_color, 0.21); - background-image: none; - color: shade($menubar_fg_color, 1.08); - } - & *:hover { color: shade($menubar_fg_color, 1.08); } + &.menuitem, .menuitem { + padding: $spacing ($spacing * 2); + border: 1px solid transparent; + background-color: transparent; + background-image: none; + color: $menubar_fg_color; + + &:hover { + border-color: mix($menubar_bg_color, $menubar_fg_color, 0.21); + background-color: mix($menubar_bg_color, $menubar_fg_color, 0.21); + background-image: none; + color: shade($menubar_fg_color, 1.08); + } + + & *:hover { color: shade($menubar_fg_color, 1.08); } + } } } @@ -39,185 +41,189 @@ ! Menu *******/ -GtkTreeMenu, GtkMenuToolButton, GtkComboBox { - &.menu, .menu { - background-color: $menu_bg_color; - margin: $spacing; - } -} - -#toolbar-popup, .menu { - padding: 0; - border-radius: 0; - border-style: none; - background-color: $menu_bg_color; - color: $menu_fg_color; - - &:selected { background-color: $selected_bg_color; } - - .button { - &, &:hover, &:active, &:active *:insensitive, &:insensitive { - border-width: 0; - background-color: transparent; - background-image: none; +@include exports("menu") { + GtkTreeMenu, GtkMenuToolButton, GtkComboBox { + &.menu, .menu { + background-color: $menu_bg_color; + margin: $spacing; } } -} -.context-menu { font: initial; } - -.menuitem { - GtkTreeMenu & { + #toolbar-popup, .menu { padding: 0; - border-width: 0; - } - - &, .menu & { - margin: $spacing; - padding: $spacing; - border: none; border-radius: 0; - background-color: transparent; - background-image: none; - - -GtkMenuItem-arrow-scaling: 0.5; - - &:active, &:hover { - border: none; - background-color: $selected_bg_color; - background-image: none; - color: $selected_fg_color; - } - - & *:active, & *:hover { color: $selected_fg_color; } - - &:insensitive, & *:insensitive { color: mix($menu_fg_color, $menu_bg_color, .5); } - } - - &.check, &.radio { - &, &:focus, &:hover, &:insensitive { background-image: none; } - - &, &:focus, &:hover, &:active, &:insensitive { - border-style: none; - background-color: transparent; - } - } - - &.separator { - -GtkMenuItem-horizontal-padding: 0; - -GtkWidget-separator-height: 1; - border-style: none; - color: shade($menu_bg_color, .9); - } + background-color: $menu_bg_color; + color: $menu_fg_color; - &.button { - &, &:focus, &:active, &:insensitive, &:active:insensitive { - background-color: transparent; - background-image: none; - border-color: transparent; - border-style: none; - box-shadow: none; - color: currentColor; - } - - &:hover, &:focus:hover, &:active:hover, &:selected { - background-color: $selected_bg_color; - background-image: none; - color: $selected_fg_color; - } - } - - GtkCalendar { - &:inconsistent { color: mix($menu_fg_color, $menu_bg_color, .5); } + &:selected { background-color: $selected_bg_color; } .button { - border-style: none; - background-color: transparent; - background-image: none; + &, &:hover, &:active, &:active *:insensitive, &:insensitive { + border-width: 0; + background-color: transparent; + background-image: none; + } } } - .accelerator { - color: alpha($menu_fg_color, .6); + .context-menu { font: initial; } - &:hover { color: alpha($selected_fg_color, .8); } + .menuitem { + GtkTreeMenu & { + padding: 0; + border-width: 0; + } - &:insensitive { color: alpha(mix($menu_fg_color, $menu_bg_color, .5), .4); } + &, .menu & { + margin: $spacing; + padding: $spacing; + border: none; + border-radius: 0; + background-color: transparent; + background-image: none; + + -GtkMenuItem-arrow-scaling: 0.5; + + &:active, &:hover { + border: none; + background-color: $selected_bg_color; + background-image: none; + color: $selected_fg_color; + } + + & *:active, & *:hover { color: $selected_fg_color; } + + &:insensitive, & *:insensitive { color: mix($menu_fg_color, $menu_bg_color, .5); } + } + + &.check, &.radio { + &, &:focus, &:hover, &:insensitive { background-image: none; } + + &, &:focus, &:hover, &:active, &:insensitive { + border-style: none; + background-color: transparent; + } + } + + &.separator { + -GtkMenuItem-horizontal-padding: 0; + -GtkWidget-separator-height: 1; + + border-style: none; + color: shade($menu_bg_color, .9); + } + + &.button { + &, &:focus, &:active, &:insensitive, &:active:insensitive { + background-color: transparent; + background-image: none; + border-color: transparent; + border-style: none; + box-shadow: none; + color: currentColor; + } + + &:hover, &:focus:hover, &:active:hover, &:selected { + background-color: $selected_bg_color; + background-image: none; + color: $selected_fg_color; + } + } + + GtkCalendar { + &:inconsistent { color: mix($menu_fg_color, $menu_bg_color, .5); } + + .button { + border-style: none; + background-color: transparent; + background-image: none; + } + } + + .accelerator { + color: alpha($menu_fg_color, .6); + + &:hover { color: alpha($selected_fg_color, .8); } + + &:insensitive { color: alpha(mix($menu_fg_color, $menu_bg_color, .5), .4); } + } + + .entry { @include entry($menu_bg_color, $menu_fg_color); } } - .entry { @include entry($menu_bg_color, $menu_fg_color); } + GtkModelMenuItem GtkBox GtkImage { padding-right: $spacing; } } -GtkModelMenuItem GtkBox GtkImage { padding-right: $spacing; } - /********* ! Popover **********/ -GtkPopover { - @include border($menu_bg_color); +@include exports("popover") { + GtkPopover { + @include border($menu_bg_color); - margin: 10px; - padding: $spacing; - border-radius: $roundness; - border-width: 1px; - border-style: solid; - background-clip: border-box; - background-color: $menu_bg_color; - background-image: none; - color: $menu_fg_color; - box-shadow: 0 2px 3px alpha(black, .5); - - &.background { - background-image: none; + margin: 10px; + padding: $spacing; + border-radius: $roundness; + border-width: 1px; + border-style: solid; + background-clip: border-box; background-color: $menu_bg_color; + background-image: none; color: $menu_fg_color; - } + box-shadow: 0 2px 3px alpha(black, .5); - &:backdrop { box-shadow: none; } - - &.osd { - box-shadow: 0 2px 7px 3px alpha(black, .5); - - > .toolbar .button { - border-radius: 0; - border-width: 0; + &.background { background-image: none; - background-color: transparent; - } - } - - > .list, > .view, > .toolbar { background-color: transparent; } - - .separator { - border: 0; - background-color: transparent; - color: alpha($menu_bg_color, .5); - font-size: 80%; - font-weight: bold; - } -} - -GtkModelButton.button { - &, &:focus, &:active, &:insensitive, &:active:insensitive { - &, &:backdrop { - background-color: transparent; - background-image: none; - border-color: transparent; - border-image: none; - border-style: none; - box-shadow: none; + background-color: $menu_bg_color; color: $menu_fg_color; } + + &:backdrop { box-shadow: none; } + + &.osd { + box-shadow: 0 2px 7px 3px alpha(black, .5); + + > .toolbar .button { + border-radius: 0; + border-width: 0; + background-image: none; + background-color: transparent; + } + } + + > .list, > .view, > .toolbar { background-color: transparent; } + + .separator { + border: 0; + background-color: transparent; + color: alpha($menu_bg_color, .5); + font-size: 80%; + font-weight: bold; + } } - &:focus:hover, &:active:hover, &:hover, &:selected { - background-image: none; - background-color: $selected_bg_color; - color: $selected_fg_color; - border: none; - border-radius: 2px; + GtkModelButton.button { + &, &:focus, &:active, &:insensitive, &:active:insensitive { + &, &:backdrop { + background-color: transparent; + background-image: none; + border-color: transparent; + border-image: none; + border-style: none; + box-shadow: none; + color: $menu_fg_color; + } + } + + &:focus:hover, &:active:hover, &:hover, &:selected { + background-image: none; + background-color: $selected_bg_color; + color: $selected_fg_color; + border: none; + border-radius: 2px; + } } } diff --git a/gtk-3.0/scss/_notebook.scss b/gtk-3.0/scss/_notebook.scss index b16b0d6..defac44 100644 --- a/gtk-3.0/scss/_notebook.scss +++ b/gtk-3.0/scss/_notebook.scss @@ -1,134 +1,137 @@ @import "functions"; @import "global"; + /********** ! Notebook ***********/ -.notebook { - padding: 0; - border-width: 1px 0 0 0; - border-style: solid; - border-color: border_normal($base_color); - border-radius: 0; - background-color: $base_color; - background-image: none; - background-clip: border-box; - color: $text_color; - - -GtkNotebook-initial-gap: 0; - -GtkNotebook-arrow-spacing: 5; - -GtkNotebook-tab-curvature: 0; - -GtkNotebook-tab-overlap: 1; - -GtkNotebook-has-tab-gap: false; - - &.frame { border-width: 1px; } - - &.header { - border-width: 0; - background-color: shade($base_color, 0.85); - - &.frame { - border-color: shade($base_color, 0.75); - - &.top { border-width: 1px 1px 0 1px; } - - &.right { border-width: 1px 1px 1px 0; } - - &.bottom { border-width: 0 1px 1px 1px; } - - &.left { border-width: 1px 0 1px 1px; } - } - } - - GtkViewport { - border-width: 0; +@include exports("notebook") { + .notebook { + padding: 0; + border-width: 1px 0 0 0; + border-style: solid; + border-color: border_normal($base_color); + border-radius: 0; background-color: $base_color; - color: $text_color; - } - - tab { - padding: $spacing ($spacing * 2); - border: 1px solid transparent; - background-color: transparent; background-image: none; + background-clip: border-box; + color: $text_color; - &:active { + -GtkNotebook-initial-gap: 0; + -GtkNotebook-arrow-spacing: 5; + -GtkNotebook-tab-curvature: 0; + -GtkNotebook-tab-overlap: 1; + -GtkNotebook-has-tab-gap: false; + + &.frame { border-width: 1px; } + + &.header { + border-width: 0; + background-color: shade($base_color, 0.85); + + &.frame { + border-color: shade($base_color, 0.75); + + &.top { border-width: 1px 1px 0 1px; } + + &.right { border-width: 1px 1px 1px 0; } + + &.bottom { border-width: 0 1px 1px 1px; } + + &.left { border-width: 1px 0 1px 1px; } + } + } + + GtkViewport { + border-width: 0; + background-color: $base_color; + color: $text_color; + } + + tab { + padding: $spacing ($spacing * 2); + border: 1px solid transparent; background-color: transparent; background-image: none; + + &:active { + background-color: transparent; + background-image: none; + } + + &.top { + border-bottom-width: 2px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; + + &:hover { border-bottom-color: alpha($selected_bg_color, 0.3); } + + &:active { border-bottom-color: $selected_bg_color; } + } + + &.right { + border-left-width: 2px; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + + &:hover { border-left-color: alpha($selected_bg_color, 0.3); } + + &:active { border-left-color: $selected_bg_color; } + } + + + &.bottom { + border-top-width: 2px; + border-top-right-radius: 0; + border-top-left-radius: 0; + + &:hover { border-top-color: alpha($selected_bg_color, 0.3); } + + &:active { border-top-color: $selected_bg_color; } + } + + &.left { + border-right-width: 2px; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + + &:hover { border-right-color: alpha($selected_bg_color, 0.3); } + + &:active { border-right-color: $selected_bg_color; } + } + + GtkLabel { color: mix($text_color, $base_color, 0.3); } + + /* close button styling */ + .button { @extend %close_button; } } - &.top { - border-bottom-width: 2px; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; - - &:hover { border-bottom-color: alpha($selected_bg_color, 0.3); } - - &:active { border-bottom-color: $selected_bg_color; } + .prelight-page { + &, GtkLabel { color: mix($text_color, $base_color, 0.15); } } - &.right { - border-left-width: 2px; - border-bottom-left-radius: 0; - border-top-left-radius: 0; - - &:hover { border-left-color: alpha($selected_bg_color, 0.3); } - - &:active { border-left-color: $selected_bg_color; } + .active-page { + &, GtkLabel { color: $text_color; } } + .reorderable-page { + &:hover { + background-color: shade($base_color, 0.85); + border-left: 0; + border-right: 0; + /* using box shadows instead of borders due to slanted edges */ + box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), + inset 1px 0 shade($base_color, 0.7), inset -1px 0 shade($base_color, 0.7); + } - &.bottom { - border-top-width: 2px; - border-top-right-radius: 0; - border-top-left-radius: 0; - - &:hover { border-top-color: alpha($selected_bg_color, 0.3); } - - &:active { border-top-color: $selected_bg_color; } - } - - &.left { - border-right-width: 2px; - border-top-right-radius: 0; - border-bottom-right-radius: 0; - - &:hover { border-right-color: alpha($selected_bg_color, 0.3); } - - &:active { border-right-color: $selected_bg_color; } - } - - GtkLabel { color: mix($text_color, $base_color, 0.3); } - - /* close button styling */ - .button { @extend %close_button; } - } - - .prelight-page { - &, GtkLabel { color: mix($text_color, $base_color, 0.15); } - } - - .active-page { - &, GtkLabel { color: $text_color; } - } - - .reorderable-page { - &:hover { - background-color: shade($base_color, 0.85); - border-left: 0; - border-right: 0; - /* using box shadows instead of borders due to slanted edges */ - box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), - inset 1px 0 shade($base_color, 0.7), inset -1px 0 shade($base_color, 0.7); - } - - &:active { - background-color: shade($base_color, 0.90); - border-left: 0; - border-right: 0; - box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), - inset 1px 0 shade($base_color, 0.75), inset -1px 0 shade($base_color, 0.75); + &:active { + background-color: shade($base_color, 0.90); + border-left: 0; + border-right: 0; + box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), + inset 1px 0 shade($base_color, 0.75), inset -1px 0 shade($base_color, 0.75); + } } } } diff --git a/gtk-3.0/scss/_progress.scss b/gtk-3.0/scss/_progress.scss index f648f95..b5ccb30 100644 --- a/gtk-3.0/scss/_progress.scss +++ b/gtk-3.0/scss/_progress.scss @@ -6,189 +6,191 @@ ! Progress bars * ******************/ -GtkProgressBar { - padding: 0; - border-radius: $roundness; - font-size: smaller; - color: alpha($fg_color, 0.6); +@include exports("progressbar") { + GtkProgressBar { + padding: 0; + border-radius: $roundness; + font-size: smaller; + color: alpha($fg_color, 0.6); - -GtkProgressBar-min-horizontal-bar-height: 12; - -GtkProgressBar-min-vertical-bar-width: 12; + -GtkProgressBar-min-horizontal-bar-height: 12; + -GtkProgressBar-min-vertical-bar-width: 12; - &.osd { - -GtkProgressBar-xspacing: 0; - -GtkProgressBar-yspacing: 0; - -GtkProgressBar-min-horizontal-bar-height: 3; + &.osd { + -GtkProgressBar-xspacing: 0; + -GtkProgressBar-yspacing: 0; + -GtkProgressBar-min-horizontal-bar-height: 3; + } + + &.trough { + border: 1px solid alpha(border_normal($bg_color), 0.5); + background-color: shade($bg_color, 1.08); + background-image: none; + } } - &.trough { - border: 1px solid alpha(border_normal($bg_color), 0.5); - background-color: shade($bg_color, 1.08); - background-image: none; - } -} - -.progressbar { - background-image: none; - background-color: $selected_bg_color; - border-radius: 0; - box-shadow: none; - - &.left { - border-top-left-radius: $roundness; - border-bottom-left-radius: $roundness; - } - - &.right { - border-top-right-radius: $roundness; - border-bottom-right-radius: $roundness; - } - - &.left.right { box-shadow: none; } - - &.vertical { + .progressbar { background-image: none; background-color: $selected_bg_color; + border-radius: 0; + box-shadow: none; - &.bottom { + &.left { + border-top-left-radius: $roundness; border-bottom-left-radius: $roundness; + } + + &.right { + border-top-right-radius: $roundness; border-bottom-right-radius: $roundness; } - &.top { - border-top-left-radius: $roundness; - border-top-right-radius: $roundness; - } - } -} + &.left.right { box-shadow: none; } -GtkLevelBar { - -GtkLevelBar-min-block-width: 34; - -GtkLevelBar-min-block-height: 3; - - &.vertical { - -GtkLevelBar-min-block-width: 3; - -GtkLevelBar-min-block-height: 34; - } -} - -.level-bar { - &.trough { - border: 1px solid alpha(border_normal($bg_color), 0.5); - background-color: shade($bg_color, 1.08); - background-image: none; - border-radius: $roundness; - } - - &.fill-block { - // FIXME: it would be nice to set make fill blocks bigger, but we'd need - // :nth-child working on discrete indicators - background-color: $selected_bg_color; - border-color: transparent; - border-radius: 0; - - &.indicator-discrete { - &.horizontal { margin-right: 1px; } - &.vertical { margin-bottom: 1px; } - } - - &.level-high { - background-color: $success_color; - border-color: transparent; - } - - &.level-low { - background-color: $warning_color; - border-color: transparent; - } - - &.empty-fill-block { - background-color: transparent; - border-color: transparent; - box-shadow: none; - } - } -} - -.scale { - -GtkRange-slider-width: 16; - -GtkRange-trough-border: 1; - -GtkScale-slider-length: 16; - - padding: 0; - border-width: 1px; - border-radius: $roundness; - outline-offset: -1px; - - - &.slider { - border-radius: 8px; - background-color: shade($bg_color, 1.08); - background-image: none; - /* we will draw the border using box shadow for now */ - box-shadow: inset 1px 0 border_normal($bg_color), - inset 0 1px border_normal($bg_color), - inset -1px 0 border_normal($bg_color), - inset 0 -1px border_normal($bg_color); - - &:hover, &:focus { - box-shadow: inset 1px 0 border_focus($bg_color), - inset 0 1px border_focus($bg_color), - inset -1px 0 border_focus($bg_color), - inset 0 -1px border_focus($bg_color); - } - - &:active { - box-shadow: inset 1px 0 border_active($bg_color), - inset 0 1px border_active($bg_color), - inset -1px 0 border_active($bg_color), - inset 0 -1px border_active($bg_color); - } - - &:insensitive { - background-color: shade($bg_color, 0.9); + &.vertical { background-image: none; - box-shadow: inset 1px 0 border_insensitive($bg_color), - inset 0 1px border_insensitive($bg_color), - inset -1px 0 border_insensitive($bg_color), - inset 0 -1px border_insensitive($bg_color); - } - } + background-color: $selected_bg_color; - &.fine-tune { - &, &.horizontal { - &:active, &:active:hover { - background-size: 50%; - background-repeat: no-repeat; - background-position: center; + &.bottom { + border-bottom-left-radius: $roundness; + border-bottom-right-radius: $roundness; + } + + &.top { + border-top-left-radius: $roundness; + border-top-right-radius: $roundness; } } } - &.mark { border-color: alpha(border_normal($bg_color), 0.5); } + GtkLevelBar { + -GtkLevelBar-min-block-width: 34; + -GtkLevelBar-min-block-height: 3; - - &.trough { - margin: 7px 0; - border: 1px solid alpha(border_normal($bg_color), 0.5); - border-radius: $roundness; - background-color: shade($bg_color, 1.08); - background-image: none; - - &:insensitive { background-color: shade($bg_color, 0.9); } - - &.vertical { margin: 0 7px; } + &.vertical { + -GtkLevelBar-min-block-width: 3; + -GtkLevelBar-min-block-height: 34; + } } - &.highlight { - &, &.left, &.bottom { - border-color: $selected_bg_color; - background-color: $selected_bg_color; + .level-bar { + &.trough { + border: 1px solid alpha(border_normal($bg_color), 0.5); + background-color: shade($bg_color, 1.08); background-image: none; + border-radius: $roundness; + } + + &.fill-block { + // FIXME: it would be nice to set make fill blocks bigger, but we'd need + // :nth-child working on discrete indicators + background-color: $selected_bg_color; + border-color: transparent; + border-radius: 0; + + &.indicator-discrete { + &.horizontal { margin-right: 1px; } + &.vertical { margin-bottom: 1px; } + } + + &.level-high { + background-color: $success_color; + border-color: transparent; + } + + &.level-low { + background-color: $warning_color; + border-color: transparent; + } + + &.empty-fill-block { + background-color: transparent; + border-color: transparent; + box-shadow: none; + } + } + } + + .scale { + -GtkRange-slider-width: 16; + -GtkRange-trough-border: 1; + -GtkScale-slider-length: 16; + + padding: 0; + border-width: 1px; + border-radius: $roundness; + outline-offset: -1px; + + + &.slider { + border-radius: 8px; + background-color: shade($bg_color, 1.08); + background-image: none; + /* we will draw the border using box shadow for now */ + box-shadow: inset 1px 0 border_normal($bg_color), + inset 0 1px border_normal($bg_color), + inset -1px 0 border_normal($bg_color), + inset 0 -1px border_normal($bg_color); + + &:hover, &:focus { + box-shadow: inset 1px 0 border_focus($bg_color), + inset 0 1px border_focus($bg_color), + inset -1px 0 border_focus($bg_color), + inset 0 -1px border_focus($bg_color); + } + + &:active { + box-shadow: inset 1px 0 border_active($bg_color), + inset 0 1px border_active($bg_color), + inset -1px 0 border_active($bg_color), + inset 0 -1px border_active($bg_color); + } &:insensitive { - border-color: shade($bg_color, 0.7); - background-color: shade($bg_color, 0.8); + background-color: shade($bg_color, 0.9); + background-image: none; + box-shadow: inset 1px 0 border_insensitive($bg_color), + inset 0 1px border_insensitive($bg_color), + inset -1px 0 border_insensitive($bg_color), + inset 0 -1px border_insensitive($bg_color); + } + } + + &.fine-tune { + &, &.horizontal { + &:active, &:active:hover { + background-size: 50%; + background-repeat: no-repeat; + background-position: center; + } + } + } + + &.mark { border-color: alpha(border_normal($bg_color), 0.5); } + + + &.trough { + margin: 7px 0; + border: 1px solid alpha(border_normal($bg_color), 0.5); + border-radius: $roundness; + background-color: shade($bg_color, 1.08); + background-image: none; + + &:insensitive { background-color: shade($bg_color, 0.9); } + + &.vertical { margin: 0 7px; } + } + + &.highlight { + &, &.left, &.bottom { + border-color: $selected_bg_color; + background-color: $selected_bg_color; + background-image: none; + + &:insensitive { + border-color: shade($bg_color, 0.7); + background-color: shade($bg_color, 0.8); + } } } } diff --git a/gtk-3.0/scss/_scrollbar.scss b/gtk-3.0/scss/_scrollbar.scss index 8412d5d..7777280 100644 --- a/gtk-3.0/scss/_scrollbar.scss +++ b/gtk-3.0/scss/_scrollbar.scss @@ -5,57 +5,59 @@ ! Scrollbar ************/ -.scrollbar { - border: none; - padding: 0; +@include exports("scrollbar") { + .scrollbar { + border: none; + padding: 0; - &.button { - &, &:active, &:active:hover { - border-width: 0; + &.button { + &, &:active, &:active:hover { + border-width: 0; + border-radius: 0; + background-color: transparent; + background-image: none; + color: shade($bg_color, 0.6); + } + } + + &.slider, &.slider.vertical { + border: 1px solid mix(shade($bg_color, 0.87), $fg_color, 0.21); border-radius: 0; - background-color: transparent; - background-image: none; - color: shade($bg_color, 0.6); + background-color: mix($bg_color, $fg_color, 0.21); + + &:hover { + border-color: mix(shade($bg_color, 0.87), $fg_color, 0.31); + background-color: mix($bg_color, $fg_color, 0.31); + } + + &:active { + border-color: shade($selected_bg_color, 0.9); + background-color: $selected_bg_color; + } + + &.fine-tune:prelight:active { + border-width: 2px; + border-color: transparent; + } } } - &.slider, &.slider.vertical { - border: 1px solid mix(shade($bg_color, 0.87), $fg_color, 0.21); + .scrollbars-junction, + .scrollbar.trough { + border: none; border-radius: 0; - background-color: mix($bg_color, $fg_color, 0.21); + background-color: $bg_color; + background-image: none; + } - &:hover { - border-color: mix(shade($bg_color, 0.87), $fg_color, 0.31); - background-color: mix($bg_color, $fg_color, 0.31); - } + /* overlay scrollbar */ + OsThumb, OsScrollbar { + color: shade($bg_color, 0.7); - &:active { - border-color: shade($selected_bg_color, 0.9); - background-color: $selected_bg_color; - } + &:selected { background-color: $selected_bg_color; } - &.fine-tune:prelight:active { - border-width: 2px; - border-color: transparent; - } + &:active { background-color: $selected_bg_color; } + + &:insensitive { background-color: shade($bg_color, 0.9); } } } - -.scrollbars-junction, -.scrollbar.trough { - border: none; - border-radius: 0; - background-color: $bg_color; - background-image: none; -} - -/* overlay scrollbar */ -OsThumb, OsScrollbar { - color: shade($bg_color, 0.7); - - &:selected { background-color: $selected_bg_color; } - - &:active { background-color: $selected_bg_color; } - - &:insensitive { background-color: shade($bg_color, 0.9); } -} diff --git a/gtk-3.0/scss/_sidebar.scss b/gtk-3.0/scss/_sidebar.scss index b6658a9..78e1b89 100755 --- a/gtk-3.0/scss/_sidebar.scss +++ b/gtk-3.0/scss/_sidebar.scss @@ -6,69 +6,71 @@ ! Sidebar **********/ -.sidebar { - &, &.view, & .view, & GtkScrolledWindow { - background-color: $bg_color; - color: mix($fg_color, $bg_color, 0.1); +@include exports("sidebar") { + .sidebar { + &, &.view, & .view, & GtkScrolledWindow { + background-color: $bg_color; + color: mix($fg_color, $bg_color, 0.1); - &.separator { - &, &:hover, &:focus { - border-width: 1px; - border-style: solid; - border-color: shade($bg_color, 0.9); - color: shade($bg_color, 0.9); + &.separator { + &, &:hover, &:focus { + border-width: 1px; + border-style: solid; + border-color: shade($bg_color, 0.9); + color: shade($bg_color, 0.9); + } } } - } - row, .view row { - &:selected { - &, &:hover, &:focus { - border: none; - background-image: none; - background-color: $selected_bg_color; - color: $selected_fg_color; + row, .view row { + &:selected { + &, &:hover, &:focus { + border: none; + background-image: none; + background-color: $selected_bg_color; + color: $selected_fg_color; + } + + &:prelight { + border: none; + background-image: none; + background-color: shade($selected_bg_color, 1.05); + color: $selected_fg_color; + } } - &:prelight { - border: none; - background-image: none; - background-color: shade($selected_bg_color, 1.05); - color: $selected_fg_color; - } - } - - &:prelight { - border: none; - background-image: none; - background-color: shade($bg_color, 0.95); - color: $fg_color; - } - } - - .frame { border-width: 0; } - - GtkAssistant & { - padding: 4px; - border-width: 0 1px 0 0; - border-style: solid; - border-right-color: border_normal($bg_color); - border-radius: 0; - background-color: $bg_color; - color: mix($fg_color, $bg_color, 0.1); - - &:dir(ltr) { border-width: 0 1px 0 0; } - &:dir(rtl) { border-width: 0 0 0 1px; } - - GtkLabel { - padding: $spacing ($spacing * 2); - - &.highlight { background-color: mix($bg_color, $fg_color, 0.80); } + &:prelight { + border: none; + background-image: none; + background-color: shade($bg_color, 0.95); + color: $fg_color; + } } - &.csd .sidebar { border-top-style: none; } + .frame { border-width: 0; } - .highlight { font: bold; } + GtkAssistant & { + padding: 4px; + border-width: 0 1px 0 0; + border-style: solid; + border-right-color: border_normal($bg_color); + border-radius: 0; + background-color: $bg_color; + color: mix($fg_color, $bg_color, 0.1); + + &:dir(ltr) { border-width: 0 1px 0 0; } + &:dir(rtl) { border-width: 0 0 0 1px; } + + GtkLabel { + padding: $spacing ($spacing * 2); + + &.highlight { background-color: mix($bg_color, $fg_color, 0.80); } + } + + &.csd .sidebar { border-top-style: none; } + + .highlight { font: bold; } + } } } @@ -77,42 +79,47 @@ ! Pane separator ****************/ -.pane-separator { - &, &.horizontal { - background-image: linear-gradient(to bottom, - shade($bg_color, 0.8) 0%, - shade($bg_color, 0.8) 20%, - transparent 20%, - transparent 45%, - shade($bg_color, 0.8) 45%, - shade($bg_color, 0.8) 55%, - transparent 55%, - transparent 80%, - shade($bg_color, 0.8) 80%, - shade($bg_color, 0.8) - ); +@include exports("paneseparator") { + .pane-separator { + background-color: $bg_color; + color: transparent; - background-size: 4px 10px; - background-repeat: no-repeat; - background-position: center center; - } + &, &.horizontal { + background-image: linear-gradient(to bottom, + shade($bg_color, 0.8) 0%, + shade($bg_color, 0.8) 20%, + transparent 20%, + transparent 45%, + shade($bg_color, 0.8) 45%, + shade($bg_color, 0.8) 55%, + transparent 55%, + transparent 80%, + shade($bg_color, 0.8) 80%, + shade($bg_color, 0.8) + ); - &.vertical { - background-image: linear-gradient(to right, - shade($bg_color, 0.8) 0%, - shade($bg_color, 0.8) 20%, - transparent 20%, - transparent 45%, - shade($bg_color, 0.8) 45%, - shade($bg_color, 0.8) 55%, - transparent 55%, - transparent 80%, - shade($bg_color, 0.8) 80%, - shade($bg_color, 0.8) - ); + background-size: 4px 10px; + background-repeat: no-repeat; + background-position: center center; + } - background-size: 10px 4px; - background-repeat: no-repeat; - background-position: center center; + &.vertical { + background-image: linear-gradient(to right, + shade($bg_color, 0.8) 0%, + shade($bg_color, 0.8) 20%, + transparent 20%, + transparent 45%, + shade($bg_color, 0.8) 45%, + shade($bg_color, 0.8) 55%, + transparent 55%, + transparent 80%, + shade($bg_color, 0.8) 80%, + shade($bg_color, 0.8) + ); + + background-size: 10px 4px; + background-repeat: no-repeat; + background-position: center center; + } } } diff --git a/gtk-3.0/scss/_spinner.scss b/gtk-3.0/scss/_spinner.scss index f8b00e7..ee50103 100644 --- a/gtk-3.0/scss/_spinner.scss +++ b/gtk-3.0/scss/_spinner.scss @@ -6,21 +6,23 @@ ! Spinner animation ********************/ -@keyframes spin { - to { -gtk-icon-transform: rotate(1turn); } -} +@include exports("spinner") { + @keyframes spin { + to { -gtk-icon-transform: rotate(1turn); } + } -.spinner { - background-image: none; - background-color: $selected_bg_color; - opacity: 0; // non spinning spinner makes no sense + .spinner { + background-image: none; + background-color: $selected_bg_color; + opacity: 0; // non spinning spinner makes no sense - -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); + -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); - &:active { - opacity: 1; - animation: spin 1s linear infinite; + &:active { + opacity: 1; + animation: spin 1s linear infinite; - &:insensitive { opacity: 0.5; } + &:insensitive { opacity: 0.5; } + } } } diff --git a/gtk-3.0/scss/_toggle.scss b/gtk-3.0/scss/_toggle.scss index 43e0fc1..4e0199a 100755 --- a/gtk-3.0/scss/_toggle.scss +++ b/gtk-3.0/scss/_toggle.scss @@ -6,11 +6,6 @@ ! Check and Radio items ************************/ -* { - -GtkCheckButton-indicator-size: 16; - -GtkCheckMenuItem-indicator-size: 14; -} - @mixin toggle($type) { background-image: none; @@ -53,14 +48,21 @@ } } -.radio { @include toggle("radio"); } +@include exports("checkradio") { + * { + -GtkCheckButton-indicator-size: 16; + -GtkCheckMenuItem-indicator-size: 14; + } -.check { @include toggle("checkbox"); } + .radio { @include toggle("radio"); } -GtkIconView.content-view.cell.check { - -gtk-icon-source: url("assets/grid-selection-unchecked.svg"); + .check { @include toggle("checkbox"); } - &:active { -gtk-icon-source: url("assets/grid-selection-checked.svg"); } + GtkIconView.content-view.cell.check { + -gtk-icon-source: url("assets/grid-selection-unchecked.svg"); + + &:active { -gtk-icon-source: url("assets/grid-selection-checked.svg"); } + } } @@ -68,37 +70,39 @@ GtkIconView.content-view.cell.check { ! Switch *********/ -GtkSwitch { - padding: 0; - border-radius: $roundness; - font: bold condensed; - outline-offset: -4px; +@include exports("switch") { + GtkSwitch { + padding: 0; + border-radius: $roundness; + font: bold condensed; + outline-offset: -4px; - &.slider { - border: 1px solid shade($bg_color, 0.8); - background-color: shade($bg_color, 1.08); + &.slider { + border: 1px solid shade($bg_color, 0.8); + background-color: shade($bg_color, 1.08); - &:insensitive { - border-color: shade($bg_color, 0.85); - background-color: shade($bg_color, 0.9); - } - } - - &.trough { - border-color: shade($bg_color, 0.8); - background-color: shade($bg_color, 0.95); - color: $fg_color; - - &:active { - border-color: shade($selected_bg_color, 0.9); - background-color: $selected_bg_color; - color: $selected_fg_color; + &:insensitive { + border-color: shade($bg_color, 0.85); + background-color: shade($bg_color, 0.9); + } } - &:insensitive { - border-color: shade($bg_color, 0.85); - background-color: shade($bg_color, 0.9); - color: mix($fg_color, $bg_color, 0.5); + &.trough { + border-color: shade($bg_color, 0.8); + background-color: shade($bg_color, 0.95); + color: $fg_color; + + &:active { + border-color: shade($selected_bg_color, 0.9); + background-color: $selected_bg_color; + color: $selected_fg_color; + } + + &:insensitive { + border-color: shade($bg_color, 0.85); + background-color: shade($bg_color, 0.9); + color: mix($fg_color, $bg_color, 0.5); + } } } } diff --git a/gtk-3.0/scss/_toolbar.scss b/gtk-3.0/scss/_toolbar.scss index 4721a6d..79ca6c1 100755 --- a/gtk-3.0/scss/_toolbar.scss +++ b/gtk-3.0/scss/_toolbar.scss @@ -49,67 +49,69 @@ .menubar { -GtkToolbar-button-relief: normal; } } -.toolbar { - @include toolbar($bg_color, $fg_color); +@include exports("toolbar") { + .toolbar { + @include toolbar($bg_color, $fg_color); - border-style: none; -} + border-style: none; + } -.header-bar { - @include toolbar($titlebar_bg_color, $titlebar_fg_color); + .header-bar { + @include toolbar($titlebar_bg_color, $titlebar_fg_color); - border-width: 0 0 1px 0; - border-style: solid; -} + border-width: 0 0 1px 0; + border-style: solid; + } -.titlebar { - @include linear-gradient($titlebar_bg_color); - - border-radius: $roundness $roundness 0 0; - color: mix($titlebar_fg_color, $titlebar_bg_color, .1); - - &:backdrop { + .titlebar { @include linear-gradient($titlebar_bg_color); - color: mix($titlebar_fg_color, $titlebar_bg_color, .6); - text-shadow: none; - } - - &.default-decoration { - border: none; - box-shadow: none; - } - - .tiled &, .maximized & { border-radius: 0; } - - .title { font: bold; } - - .titlebutton { - padding: $spacing; - border: none; - background-image: none; - background-color: transparent; + border-radius: $roundness $roundness 0 0; color: mix($titlebar_fg_color, $titlebar_bg_color, .1); - box-shadow: none; - - &:hover, &:hover:focus { - background-image: none; - background-color: transparent; - color: $selected_bg_color; - box-shadow: none; - } - - &:active, &:active:hover { - background-image: none; - background-color: transparent; - color: darken($selected_bg_color, 10%); - box-shadow: none; - } &:backdrop { - background: none; + @include linear-gradient($titlebar_bg_color); + color: mix($titlebar_fg_color, $titlebar_bg_color, .6); - icon-shadow: none; + text-shadow: none; + } + + &.default-decoration { + border: none; + box-shadow: none; + } + + .tiled &, .maximized & { border-radius: 0; } + + .title { font: bold; } + + .titlebutton { + padding: $spacing; + border: none; + background-image: none; + background-color: transparent; + color: mix($titlebar_fg_color, $titlebar_bg_color, .1); + box-shadow: none; + + &:hover, &:hover:focus { + background-image: none; + background-color: transparent; + color: $selected_bg_color; + box-shadow: none; + } + + &:active, &:active:hover { + background-image: none; + background-color: transparent; + color: darken($selected_bg_color, 10%); + box-shadow: none; + } + + &:backdrop { + background: none; + color: mix($titlebar_fg_color, $titlebar_bg_color, .6); + icon-shadow: none; + } } } } diff --git a/gtk-3.0/scss/_view.scss b/gtk-3.0/scss/_view.scss index e7c0155..cf5e5d9 100644 --- a/gtk-3.0/scss/_view.scss +++ b/gtk-3.0/scss/_view.scss @@ -6,125 +6,128 @@ ! Generic views ****************/ -.view { - color: $text_color; - background-color: $base_color; - - &:insensitive, &:insensitive:insensitive { - background-color: shade($base_color, 0.9); - color: mix($text_color, $base_color, 0.5); - } - - &:selected, &:selected:focus { @extend %selected_items; } -} - -.cell { - border-width: 0; - border-radius: 0; - - &:selected, &:selected:focus { - background-color: $selected_bg_color; - color: $selected_fg_color; - } -} - -row { - &:selected { - &, &:hover, &:focus { - -GtkWidget-focus-padding: 1; - -GtkWidget-focus-line-width: 0; - - border: none; - background-color: $selected_bg_color; - background-image: none; - color: $selected_fg_color; - } - } -} - -.content-view { - &.view { +@include exports("view") { + .view { + color: $text_color; background-color: $base_color; - &:prelight { background-color: alpha($selected_bg_color, 0.6); } - - &:selected, &:active { background-color: $selected_bg_color; } - - &:insensitive { background-color: shade($base_color, 0.9); } - - &.check { - &, &:active, &:prelight, &:insensitive, &:selected { background-color: transparent; } + &:insensitive, &:insensitive:insensitive { + background-color: shade($base_color, 0.9); + color: mix($text_color, $base_color, 0.5); } + + &:selected, &:selected:focus { @extend %selected_items; } } - .subtitle { - font: smaller; - padding: 0 12px; - } -} + .cell { + border-width: 0; + border-radius: 0; -GtkIconView { - &.content-view.check { @extend .content-view.check; } - - &.view.cell { &:selected, &:selected:focus { - border: none; - border-radius: 2px; - background-image: none; background-color: $selected_bg_color; color: $selected_fg_color; } } -} -.dim-label { - &, &.view { color: alpha(currentColor, 0.5); } -} + row { + &:selected { + &, &:hover, &:focus { + -GtkWidget-focus-padding: 1; + -GtkWidget-focus-line-width: 0; -.dnd { border: 1px solid $selected_bg_color; } + border: none; + background-color: $selected_bg_color; + background-image: none; + color: $selected_fg_color; + } + } + } -.grip { background-color: transparent; } + .content-view { + &.view { + background-color: $base_color; -.arrow { color: alpha(currentColor, 0.7); } + &:prelight { background-color: alpha($selected_bg_color, 0.6); } -.rubberband { - &, &.view, &.content-view.view { - border: 1px solid $selected_bg_color; - border-radius: 0; - background-color: alpha($selected_bg_color, 0.3); + &:selected, &:active { background-color: $selected_bg_color; } + + &:insensitive { background-color: shade($base_color, 0.9); } + + &.check { + &, &:active, &:prelight, &:insensitive, &:selected { background-color: transparent; } + } + } + + .subtitle { + font: smaller; + padding: 0 12px; + } + } + + GtkIconView { + &.content-view.check { @extend .content-view.check; } + + &.view.cell { + &:selected, &:selected:focus { + border: none; + border-radius: 2px; + background-image: none; + background-color: $selected_bg_color; + color: $selected_fg_color; + } + } + } + + .dim-label { + &, &.view { color: alpha(currentColor, 0.5); } + } + + .dnd { border: 1px solid $selected_bg_color; } + + .grip { background-color: transparent; } + + .arrow { color: alpha(currentColor, 0.7); } + + .rubberband { + &, &.view, &.content-view.view { + border: 1px solid $selected_bg_color; + border-radius: 0; + background-color: alpha($selected_bg_color, 0.3); + } + } + + /* used by GtkScrolledWindow, shown when content is touch-dragged past boundaries. */ + .overshoot { background-color: alpha($selected_bg_color, 0.3); } + + GdMainIconView.content-view { -GdMainIconView-icon-size: 40; } + + /* this will get overridden by .view, needed by gedit line numbers */ + GtkTextView { background-color: mix($bg_color, $base_color, 0.50); } + + GtkDrawingArea, GtkHTML { + @extend .view; + + &:insensitive { background-color: shade($base_color, 0.9); } } } -/* used by GtkScrolledWindow, shown when content is touch-dragged past boundaries. */ -.overshoot { background-color: alpha($selected_bg_color, 0.3); } - -GdMainIconView.content-view { -GdMainIconView-icon-size: 40; } - -/* this will get overridden by .view, needed by gedit line numbers */ -GtkTextView { background-color: mix($bg_color, $base_color, 0.50); } - -GtkDrawingArea, GtkHTML { - @extend .view; - - &:insensitive { background-color: shade($base_color, 0.9); } -} - - /************ ! Treeview * *************/ -GtkTreeView { - -GtkTreeView-vertical-separator: 0; +@include exports("treeview") { + GtkTreeView { + -GtkTreeView-vertical-separator: 0; - outline-offset: -1px; + outline-offset: -1px; - &.dnd { border: 1px solid $selected_bg_color; } + &.dnd { border: 1px solid $selected_bg_color; } - .entry { - border-radius: 0; - background-color: $base_color; - background-image: none; + .entry { + border-radius: 0; + background-color: $base_color; + background-image: none; + } } } @@ -133,28 +136,30 @@ GtkTreeView { ! Column view headers **********************/ -column-header { - .button { - &, &:active { - border-width: 0 1px 1px 0; - border-radius: 0; - } +@include exports("columnheader") { + column-header { + .button { + &, &:active { + border-width: 0 1px 1px 0; + border-radius: 0; + } - &, &:active, &:focus, &:active:focus { - border-color: shade($base_color, 0.9); - border-bottom-color: shade($base_color, 0.8); - background-color: shade($base_color, 0.97); - background-image: none; - } + &, &:active, &:focus, &:active:focus { + border-color: shade($base_color, 0.9); + border-bottom-color: shade($base_color, 0.8); + background-color: shade($base_color, 0.97); + background-image: none; + } - &:hover, &:active:hover, &:hover:focus, &:active:hover:focus { - border-color: shade($base_color, 0.9); - border-bottom-color: shade($base_color, 0.8); - background-color: shade($base_color, 0.99); - background-image: none; - } + &:hover, &:active:hover, &:hover:focus, &:active:hover:focus { + border-color: shade($base_color, 0.9); + border-bottom-color: shade($base_color, 0.8); + background-color: shade($base_color, 0.99); + background-image: none; + } - &:last-child .button { border-width: 0 0 1px 0; } + &:last-child .button { border-width: 0 0 1px 0; } + } } } @@ -163,13 +168,15 @@ column-header { ! Frames * ***********/ -.frame { border: none; } +@include exports("frame") { + .frame { border: none; } -GtkScrolledWindow { - &.frame { border: 1px solid border_normal($bg_color); } + GtkScrolledWindow { + &.frame { border: 1px solid border_normal($bg_color); } - /* avoid double borders when a viewport is packed into a GtkScrolledWindow */ - GtkViewport.frame { border: none; } + /* avoid double borders when a viewport is packed into a GtkScrolledWindow */ + GtkViewport.frame { border: none; } + } } @@ -177,23 +184,25 @@ GtkScrolledWindow { ! Expanders * **************/ -GtkExpander { - padding: $spacing; - outline-offset: 1px; -} - -.expander { - color: alpha(currentColor, 0.7); - border: alpha(currentColor, 0.7); - - &:hover { - color: alpha(currentColor, 0.8); - border-color: alpha(currentColor, 0.8); +@include exports("expander") { + GtkExpander { + padding: $spacing; + outline-offset: 1px; } - &:active { - color: alpha(currentColor, 0.9); - border-color: alpha(currentColor, 0.9); + .expander { + color: alpha(currentColor, 0.7); + border: alpha(currentColor, 0.7); + + &:hover { + color: alpha(currentColor, 0.8); + border-color: alpha(currentColor, 0.8); + } + + &:active { + color: alpha(currentColor, 0.9); + border-color: alpha(currentColor, 0.9); + } } } @@ -202,22 +211,14 @@ GtkExpander { ! Symbolic images * ********************/ -.image { - color: alpha(currentColor, 0.5); +@include exports("symbolicimage") { + .image { + color: alpha(currentColor, 0.5); - &:hover { color: alpha(currentColor, 0.9); } + &:hover { color: alpha(currentColor, 0.9); } - &:selected, &:selected:hover { color: $selected_fg_color; } -} - - -/****************** - ! Pane separator * -*******************/ - -.pane-separator { - background-color: $bg_color; - color: transparent; + &:selected, &:selected:hover { color: $selected_fg_color; } + } } @@ -225,43 +226,45 @@ GtkExpander { ! Floating bar * *****************/ -.floating-bar { - border: 1px solid border_normal($bg_color); - border-radius: $roundness; - background-color: $bg_color; - background-image: none; - color: $fg_color; - - &.top { - border-top-width: 0; - border-top-right-radius: 0; - border-top-left-radius: 0; - } - - &.right { - border-right-width: 0; - border-top-right-radius: 0; - border-bottom-right-radius: 0; - } - - &.bottom { - border-bottom-width: 0; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; - } - - &.left { - border-left-width: 0; - border-bottom-left-radius: 0; - border-top-left-radius: 0; - } - - .button { - -GtkButton-image-spacing: 0; - -GtkButton-inner-border: 0; - - border: none; - background-color: transparent; +@include exports("floatingbar") { + .floating-bar { + border: 1px solid border_normal($bg_color); + border-radius: $roundness; + background-color: $bg_color; background-image: none; + color: $fg_color; + + &.top { + border-top-width: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; + } + + &.right { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + + &.bottom { + border-bottom-width: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; + } + + &.left { + border-left-width: 0; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + } + + .button { + -GtkButton-image-spacing: 0; + -GtkButton-inner-border: 0; + + border: none; + background-color: transparent; + background-image: none; + } } } diff --git a/gtk-3.0/scss/_window.scss b/gtk-3.0/scss/_window.scss index fc31783..0be7a63 100755 --- a/gtk-3.0/scss/_window.scss +++ b/gtk-3.0/scss/_window.scss @@ -6,38 +6,40 @@ ! Window frame ***************/ -.window-frame { - border: none; - border-radius: $roundness $roundness 0 0; - box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23), - 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); +@include exports("window") { + .window-frame { + border: none; + border-radius: $roundness $roundness 0 0; + box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23), + 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); - /* this is used for the resize cursor area */ - margin: $spacing * 3; + /* this is used for the resize cursor area */ + margin: $spacing * 3; - &:backdrop { - box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24), - 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.12); - } - - &.tiled { border-radius: 0; } - - &.csd { - &.popup { - border-radius: 0; - box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23), - 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); + &:backdrop { + box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24), + 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.12); } - &.tooltip { - border-radius: $roundness; - box-shadow: none; - } + &.tiled { border-radius: 0; } - &.message-dialog { - border-radius: $roundness; - box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23), - 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); + &.csd { + &.popup { + border-radius: 0; + box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23), + 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); + } + + &.tooltip { + border-radius: $roundness; + box-shadow: none; + } + + &.message-dialog { + border-radius: $roundness; + box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23), + 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); + } } } } diff --git a/gtk-3.0/scss/widgets.scss b/gtk-3.0/scss/widgets.scss index c74514b..81844c9 100755 --- a/gtk-3.0/scss/widgets.scss +++ b/gtk-3.0/scss/widgets.scss @@ -17,78 +17,6 @@ @import "notebook"; @import "scrollbar"; - -/************* -* scrollbar * -*************/ -.scrollbar { - border-width: 1px; - border-style: solid; - padding: 0; -} - -.scrollbars-junction, -.scrollbar.trough { - border-width: 0; - border-radius: 0; - background-color: $bg_color; - background-image: none; -} - -.scrollbar.button, -.scrollbar.button:active, -.scrollbar.button:active:hover { - border-width: 0; - border-radius: 0; - background-color: transparent; - background-image: none; - color: shade($bg_color, 0.6); -} - -.scrollbar.slider { - border-width: 1px; - border-color: mix(shade($bg_color, 0.87), $fg_color, 0.21); - border-radius: 0; - background-color: mix($bg_color, $fg_color, 0.21); -} - -.scrollbar.slider:hover, -.scrollbar.slider.vertical:hover { - border-color: mix(shade($bg_color, 0.87), $fg_color, 0.31); - background-color: mix($bg_color, $fg_color, 0.31); -} - -.scrollbar.slider:active, -.scrollbar.slider.vertical:active { - border-color: shade($selected_bg_color, 0.9); - background-color: $selected_bg_color; -} - -.scrollbar.slider.fine-tune:prelight:active { - border-width: 2px; - border-color: transparent; -} - -/* overlay scrollbar */ -OsThumb { - color: shade($bg_color, 0.7); -} - -OsThumb:selected, -OsScrollbar:selected { - background-color: $selected_bg_color; -} - -OsThumb:active, -OsScrollbar:active { - background-color: $selected_bg_color; -} - -OsThumb:insensitive, -OsScrollbar:insensitive { - background-color: shade($bg_color, 0.9); -} - /************* * separator * *************/ From 4680d4f189640f88ec7ce64d8bb5a46d8a5e4392 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Tue, 9 Dec 2014 01:17:23 +0530 Subject: [PATCH 23/73] Tweaks --- gtk-3.0/scss/_button.scss | 3 +- gtk-3.0/scss/_entry.scss | 37 ++++++++----- gtk-3.0/scss/_view.scss | 12 +++++ gtk-3.0/scss/widgets.scss | 107 ++++---------------------------------- 4 files changed, 47 insertions(+), 112 deletions(-) diff --git a/gtk-3.0/scss/_button.scss b/gtk-3.0/scss/_button.scss index 44cbcd2..caae335 100755 --- a/gtk-3.0/scss/_button.scss +++ b/gtk-3.0/scss/_button.scss @@ -130,13 +130,14 @@ border: none; background-color: transparent; background-image: none; + box-shadow: none; } // TODO } &.separator, .separator { - color: shade($bg, .95); + color: shade($bg, ($contrast + .05)); border: 1px solid currentColor; &:insensitive { color: shade($bg, .85); } diff --git a/gtk-3.0/scss/_entry.scss b/gtk-3.0/scss/_entry.scss index 7720308..bd00cf1 100755 --- a/gtk-3.0/scss/_entry.scss +++ b/gtk-3.0/scss/_entry.scss @@ -81,22 +81,33 @@ ! Combobox entry * *******************/ -@include exports("comboboxentry") { - GtkComboBox.combobox-entry { - .entry { - &, &:hover, &:focus, &:active, &:insensitive { - border-width: 1px 0 1px 1px; - border-top-right-radius: 0; - border-bottom-right-radius: 0; +@include exports("combobox") { + GtkComboBox { + &.combobox-entry { + .entry { + &, &:hover, &:focus, &:active, &:insensitive { + border-width: 1px 0 1px 1px; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + } + + .button { + &, &:hover, &:focus, &:active, &:insensitive { + border-width: 1px 1px 1px 1px; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + } } } - .button { - &, &:hover, &:focus, &:active, &:insensitive { - border-width: 1px 1px 1px 1px; - border-bottom-left-radius: 0; - border-top-left-radius: 0; - } + .separator { + /* always disable separators */ + -GtkWidget-wide-separators: true; + -GtkWidget-horizontal-separator: 0; + -GtkWidget-vertical-separator: 0; + + border-style: none; } } } diff --git a/gtk-3.0/scss/_view.scss b/gtk-3.0/scss/_view.scss index cf5e5d9..e2e0c4c 100644 --- a/gtk-3.0/scss/_view.scss +++ b/gtk-3.0/scss/_view.scss @@ -132,6 +132,18 @@ } +/*********** + ! Separator +************/ + +@include exports("separator") { + .view.separator, .separator { + color: shade($bg_color, ($contrast + .10)); + border: 1px solid currentColor; + } +} + + /********************* ! Column view headers **********************/ diff --git a/gtk-3.0/scss/widgets.scss b/gtk-3.0/scss/widgets.scss index 81844c9..a357096 100755 --- a/gtk-3.0/scss/widgets.scss +++ b/gtk-3.0/scss/widgets.scss @@ -2,110 +2,21 @@ @import "colors"; @import "base"; @import "button"; -@import "toggle"; @import "entry"; -@import "menu"; -@import "toolbar"; -@import "sidebar"; -@import "view"; -@import "grid"; -@import "progress"; -@import "spinner"; -@import "window"; @import "calendar"; +@import "grid"; @import "infobar"; +@import "menu"; @import "notebook"; +@import "progress"; @import "scrollbar"; +@import "sidebar"; +@import "spinner"; +@import "toggle"; +@import "toolbar"; +@import "view"; +@import "window"; -/************* -* separator * -*************/ -.view.separator, -.separator { - border-width: 1px; - border-style: solid; - border-color: shade($bg_color, 0.9); - color: shade($bg_color, 0.9); -} - -.button .separator, -.button.separator { - border-color: shade($bg_color, 0.95); -} - -.button .separator:insensitive, -.button.separator:insensitive { - border-color: shade($bg_color, 0.85); -} - -.primary-toolbar GtkSeparatorToolItem, -.primary-toolbar .separator, -.primary-toolbar .separator:insensitive, -.toolbar GtkSeparatorToolItem, -.toolbar .separator, -.toolbar .separator:insensitive { - -GtkWidget-window-dragging: true; - - border-color: shade($toolbar_bg_color, 0.95); - color: shade($toolbar_bg_color, 0.95); -} - -.header-bar GtkSeparatorToolItem, -.header-bar .separator, -.header-bar .separator:insensitive, -.titlebar GtkSeparatorToolItem, -.titlebar .separator, -.titlebar .separator:insensitive { - -GtkWidget-window-dragging: true; - - border-color: shade($titlebar_bg_color, 0.95); - color: shade($titlebar_bg_color, 0.95); -} - -.primary-toolbar .button .separator, -.primary-toolbar .button.separator, -.toolbar .button .separator, -.toolbar .button.separator { - border-color: shade($toolbar_bg_color, 0.95); -} - -.header-bar .button .separator, -.header-bar .button.separator, -.titlebar .button .separator, -.titlebar .button.separator { - border-color: shade($titlebar_bg_color, 0.95); -} - -.primary-toolbar .button .separator:insensitive, -.primary-toolbar .button.separator:insensitive, -.toolbar .button .separator:insensitive, -.toolbar .button.separator:insensitive { - border-color: shade($toolbar_bg_color, 0.85); -} - -.header-bar .button .separator:insensitive, -.header-bar .button.separator:insensitive, -.titlebar .button .separator:insensitive, -.titlebar .button.separator:insensitive { - border-color: shade($titlebar_bg_color, 0.85); -} - -.menuitem.separator { - -GtkMenuItem-horizontal-padding: 0; - -GtkWidget-separator-height: 1; - - border-style: none; - color: shade($menu_bg_color, 0.9); -} - -GtkComboBox .separator { - /* always disable separators */ - -GtkWidget-wide-separators: true; - -GtkWidget-horizontal-separator: 0; - -GtkWidget-vertical-separator: 0; - - border-style: none; -} /************** * spinbutton * From fbca03b4a169b618fd8112731c3729ae4452b6a5 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Tue, 9 Dec 2014 01:38:40 +0530 Subject: [PATCH 24/73] Spin button styling --- gtk-3.0/scss/_button.scss | 82 +++++++++++++++++++++++++++++ gtk-3.0/scss/widgets.scss | 108 -------------------------------------- 2 files changed, 82 insertions(+), 108 deletions(-) diff --git a/gtk-3.0/scss/_button.scss b/gtk-3.0/scss/_button.scss index caae335..606ca80 100755 --- a/gtk-3.0/scss/_button.scss +++ b/gtk-3.0/scss/_button.scss @@ -172,5 +172,87 @@ @include button($bg_color, $fg_color); &.default { @include button($selected_bg_color, $selected_fg_color); } + + .spinbutton & { + color: mix($text_color, $base_color, 0.4); + padding: 2px 4px; + border-width: 0; + border-radius: 0; + border-style: none; + background-color: transparent; + background-image: none; + box-shadow: inset 1px 0 shade($base_color, 0.9); + + &:insensitive { + color: mix($text_color, $base_color, 0.7); + box-shadow: inset 1px 0 shade($base_color, 0.95); + } + + &:active, &:checked, &:hover { color: $text_color; } + + &:first-child { + border-radius: $roundness 0 0 $roundness; + box-shadow: none; + } + + &:last-child { border-radius: 0 $roundness $roundness 0; } + + &:dir(rtl) { box-shadow: inset -1px 0 shade($base_color, 0.9); } + } + + .spinbutton.vertical & { + border: 1px solid shade($bg_color, 0.8); + border-radius: $roundness; + background-color: shade($bg_color, 1.08); + background-image: none; + color: $fg_color; + box-shadow: none; + + &:hover { + border-color: shade($bg_color, 0.7); + background-color: shade($bg_color, 1.10); + background-image: none; + } + + &:active, &:checked { + border-color: shade($bg_color, 0.8); + background-color: shade($bg_color, 0.95); + background-image: none; + } + + &:active:hover, &:checked:hover { + border-color: shade($bg_color, 0.7); + } + + &:focus, &:hover:focus, &:active:focus, &:active:hover:focus { border-color: shade($bg_color, 0.7); } + + &:insensitive { + border-color: shade($bg_color, 0.85); + background-color: shade($bg_color, 0.9); + background-image: none; + } + + &:first-child { + border-width: 1px; + border-bottom-width: 0; + border-radius: $roundness; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; + } + + &:last-child { + border-width: 1px; + border-top-width: 0; + border-radius: $roundness; + border-top-left-radius: 0; + border-top-right-radius: 0; + } + } + + .spinbutton.vertical.entry { + border-width: 1px; + border-style: solid; + border-radius: 0; + } } } diff --git a/gtk-3.0/scss/widgets.scss b/gtk-3.0/scss/widgets.scss index a357096..c0159c9 100755 --- a/gtk-3.0/scss/widgets.scss +++ b/gtk-3.0/scss/widgets.scss @@ -18,114 +18,6 @@ @import "window"; -/************** -* spinbutton * -**************/ -.spinbutton .button { - color: mix($text_color, $base_color, 0.4); - padding: 2px 4px; - border-width: 0; - border-radius: 0; - border-style: none; - background-color: transparent; - background-image: none; - box-shadow: inset 1px 0 shade($base_color, 0.9); -} - -.spinbutton .button:insensitive { - color: mix($text_color, $base_color, 0.7); - box-shadow: inset 1px 0 shade($bg_color, 0.95); -} - -.spinbutton .button:active, -.spinbutton .button:hover { - color: $fg_color; -} - -.spinbutton .button:first-child { - border-radius: 2px 0 0 2px; - box-shadow: none; -} - -.spinbutton .button:last-child { - border-radius: 0 2px 2px 0; -} - -.spinbutton .button:dir(rtl) { - box-shadow: inset -1px 0 shade($base_color, 0.9); -} - -.spinbutton.vertical .button { - border-width: 1px; - border-style: solid; - border-color: shade($bg_color, 0.8); - border-radius: 2px; - background-color: shade($bg_color, 1.08); - background-image: none; - color: $fg_color; - box-shadow: none; -} - -.spinbutton.vertical .button:hover { - border-color: shade($bg_color, 0.7); - background-color: shade($bg_color, 1.10); - background-image: none; -} - -.spinbutton.vertical .button:active { - border-color: shade($bg_color, 0.8); - background-color: shade($bg_color, 0.95); - background-image: none; -} - -.spinbutton.vertical .button:active:hover { - border-color: shade($bg_color, 0.7); -} - -.spinbutton.vertical .button:focus, -.spinbutton.vertical .button:hover:focus, -.spinbutton.vertical .button:active:focus, -.spinbutton.vertical .button:active:hover:focus { - border-color: shade($bg_color, 0.7); -} - -.spinbutton.vertical .button:insensitive { - border-color: shade($bg_color, 0.85); - background-color: shade($bg_color, 0.9); - background-image: none; -} - -.spinbutton.vertical .button:first-child { - border-width: 1px; - border-bottom-width: 0; - border-radius: 2px; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} - -.spinbutton.vertical .button:last-child { - border-width: 1px; - border-top-width: 0; - border-radius: 2px; - border-top-left-radius: 0; - border-top-right-radius: 0; -} - -.spinbutton.vertical.entry { - border-width: 1px; - border-style: solid; - border-radius: 0; -} - - -/************* -* statusbar * -*************/ -GtkStatusbar { - padding: 4px; - color: $fg_color; -} - /***************** * color chooser * *****************/ From dd5eb36ecf04dc4a755d96725c7f4316b0224267 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 13 Dec 2014 17:36:16 +0530 Subject: [PATCH 25/73] Add choosers and other styles --- gtk-3.0/scss/_choosers.scss | 129 +++++++++++++++++++++++ gtk-3.0/scss/_colors.scss | 10 +- gtk-3.0/scss/_global.scss | 7 ++ gtk-3.0/scss/_misc.scss | 159 ++++++++++++++++++++++++++++ gtk-3.0/scss/_toggle.scss | 8 +- gtk-3.0/scss/_view.scss | 89 ---------------- gtk-3.0/scss/widgets.scss | 201 +----------------------------------- 7 files changed, 306 insertions(+), 297 deletions(-) create mode 100644 gtk-3.0/scss/_choosers.scss create mode 100644 gtk-3.0/scss/_misc.scss diff --git a/gtk-3.0/scss/_choosers.scss b/gtk-3.0/scss/_choosers.scss new file mode 100644 index 0000000..2d1a1cf --- /dev/null +++ b/gtk-3.0/scss/_choosers.scss @@ -0,0 +1,129 @@ +@import "functions"; +@import "global"; + + +/*************** + ! Color chooser +****************/ + +@include exports("colorchooser") { + GtkColorSwatch { + &, &:selected { + border: 1px solid alpha(black, 0.1); + border-radius: $roundness - 1px; + background-color: transparent; + background-clip: border-box; + + &:hover { border-color: alpha(black, 0.3); } + } + + &.color-light:selected:hover, &.color-dark:selected:hover { background-image: none; } + + &.left, &:first-child { + border-top-left-radius: $roundness; + border-bottom-left-radius: $roundness; + } + + &.right, &:last-child { + border-top-right-radius: $roundness; + border-bottom-right-radius: $roundness; + } + + &:only-child { border-radius: $roundness; } + + &.top { + border-top-left-radius: $roundness; + border-top-right-radius: $roundness; + } + + &.bottom { + border-bottom-left-radius: $roundness; + border-bottom-right-radius: $roundness; + } + + GtkColorEditor & { + border-radius: $roundness; + + &.color-dark:hover, &.color-light:hover { + background-image: none; + border-color: alpha(black, 0.3); + } + } + } + + GtkColorChooserWidget #add-color-button { + background-clip: padding-box; + border-color: alpha(black, 0.1); + background-color: shade($bg_color, 0.95); + color: $fg_color; + + &:hover { + border-color: alpha(black, 0.3); + background-color: shade($bg_color, 0.90); + color: $fg_color; + } + } + + .color-active-badge { + &, &:selected { + border-width: 2px; + border-style: solid; + background-color: transparent; + } + + &.color-light { + &, &:hover { + border-color: alpha(black, 0.3); + color: alpha(black, 0.3); + } + } + + &.color-dark { + &, &:hover { + border-color: alpha(white, 0.3); + color: alpha(white, 0.3); + } + } + } + + GtkColorButton.button { padding: $spacing; } +} + + +/*********************** +! Font and file choosers +************************/ + +@include exports("miscchoosers") { + GtkFontButton, GtkFileChooserButton { + .separator { + /* always disable separators */ + -GtkWidget-wide-separators: true; + -GtkWidget-horizontal-separator: 0; + -GtkWidget-vertical-separator: 0; + } + + GtkLabel:last-child { color: alpha(currentColor, 0.7); } + + GtkImage:last-child { color: alpha(currentColor, 0.7); } + } + + GtkFileChooser { + .pane-separator { + &, &:hover { + border-width: 0 1px 0 0; + border-style: solid; + border-color: currentColor; + background-color: $bg_color; + color: border_normal($bg_color); + } + } + + /* for fallback when header bar not used */ + .dialog-action-box { + border-width: 1px 0 0; + border-style: solid; + border-color: shade($bg_color, 0.7); + } + } +} diff --git a/gtk-3.0/scss/_colors.scss b/gtk-3.0/scss/_colors.scss index 37ab130..f00aaba 100755 --- a/gtk-3.0/scss/_colors.scss +++ b/gtk-3.0/scss/_colors.scss @@ -45,13 +45,13 @@ @define-color panel_fg_color @dark_fg_color; /* osd */ -@define-color osd_base @dark_bg_color; -@define-color osd_fg @dark_fg_color; -@define-color osd_bg alpha(@osd_base, 0.8); +@define-color osd_base #{"" + $osd_base}; +@define-color osd_fg #{"" + $osd_fg}; +@define-color osd_bg #{"" + $osd_bg}; /* lightdm greeter colors */ -@define-color lightdm_bg_color @dark_bg_color; -@define-color lightdm_fg_color @dark_fg_color; +@define-color lightdm_bg_color #{"" + $lightdm_bg_color}; +@define-color lightdm_fg_color #{"" + $lightdm_fg_color}; /* window manager colors */ @define-color wm_bg @titlebar_bg_color; diff --git a/gtk-3.0/scss/_global.scss b/gtk-3.0/scss/_global.scss index f6bbff4..bbb300f 100755 --- a/gtk-3.0/scss/_global.scss +++ b/gtk-3.0/scss/_global.scss @@ -42,6 +42,13 @@ $menu_fg_color: $dark_fg_color; $menubar_bg_color: $dark_bg_color; $menubar_fg_color: $dark_fg_color; +$osd_base: $dark_bg_color; +$osd_fg: $dark_fg_color; +$osd_bg: fade-out($dark_fg_color, 0.8); + +$lightdm_bg_color: $dark_bg_color; +$lightdm_fg_color: $dark_fg_color; + // widget styles $roundness: 2px; $spacing: 5px; diff --git a/gtk-3.0/scss/_misc.scss b/gtk-3.0/scss/_misc.scss new file mode 100644 index 0000000..35a271c --- /dev/null +++ b/gtk-3.0/scss/_misc.scss @@ -0,0 +1,159 @@ +@import "functions"; +@import "global"; + + +/*********** + ! Tooltip * +************/ + +@include exports("tooltip") { + .tooltip { + border: none; + border-radius: $roundness; + background-color: $tooltip_bg_color; + background-image: none; + color: $tooltip_fg_color; + + * { background-color: transparent; } + } +} + + +/*********** + ! Dialogs * +************/ + +@include exports("dialogs") { + GtkMessageDialog, .prompt { + -GtkDialog-content-area-border: 0; + -GtkDialog-action-area-border: 0; + -GtkDialog-button-spacing: 0; + + margin: 0; + padding: 0; + } +} + + +/********************* + ! App notifications * +**********************/ + +@include exports("notifications") { + .app-notification { + border-style: solid; + border-color: border_normal($base_color); + border-width: 0 1px 1px 1px; + border-radius: 0 0 $roundness $roundness; + padding: $spacing * 3; + background-color: $base_color; + background-image: none; + color: $text_color; + } +} + + +/************* + ! Expanders * +**************/ + +@include exports("expander") { + GtkExpander { + padding: $spacing; + outline-offset: 1px; + } + + .expander { + color: alpha(currentColor, 0.7); + border: alpha(currentColor, 0.7); + + &:hover { + color: alpha(currentColor, 0.8); + border-color: alpha(currentColor, 0.8); + } + + &:active { + color: alpha(currentColor, 0.9); + border-color: alpha(currentColor, 0.9); + } + } +} + + +/******************* + ! Symbolic images * +********************/ + +@include exports("symbolicimage") { + .image { + color: alpha(currentColor, 0.5); + + &:hover { color: alpha(currentColor, 0.9); } + + &:selected, &:selected:hover { color: $selected_fg_color; } + } +} + + +/**************** + ! Floating bar * +*****************/ + +@include exports("floatingbar") { + .floating-bar { + border: 1px solid border_normal($bg_color); + border-radius: $roundness; + background-color: $bg_color; + background-image: none; + color: $fg_color; + + &.top { + border-top-width: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; + } + + &.right { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + + &.bottom { + border-bottom-width: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; + } + + &.left { + border-left-width: 0; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + } + + .button { + -GtkButton-image-spacing: 0; + -GtkButton-inner-border: 0; + + border: none; + background-color: transparent; + background-image: none; + } + } +} + + +/************************* + ! Touch text selections * +**************************/ + +@include exports("touchbubble") { + GtkBubbleWindow { + border-radius: $roundness; + background-clip: border-box; + + &.osd.background { background-color: $osd_bg; } + + .toolbar { background-color: transparent; } + } +} diff --git a/gtk-3.0/scss/_toggle.scss b/gtk-3.0/scss/_toggle.scss index 4e0199a..70c1f39 100755 --- a/gtk-3.0/scss/_toggle.scss +++ b/gtk-3.0/scss/_toggle.scss @@ -78,17 +78,17 @@ outline-offset: -4px; &.slider { - border: 1px solid shade($bg_color, 0.8); + border: 1px solid border_normal($bg_color); background-color: shade($bg_color, 1.08); &:insensitive { - border-color: shade($bg_color, 0.85); + border-color: border_insensitive($bg_color); background-color: shade($bg_color, 0.9); } } &.trough { - border-color: shade($bg_color, 0.8); + border: 1px solid border_normal($bg_color); background-color: shade($bg_color, 0.95); color: $fg_color; @@ -99,7 +99,7 @@ } &:insensitive { - border-color: shade($bg_color, 0.85); + border-color: border_insensitive($bg_color); background-color: shade($bg_color, 0.9); color: mix($fg_color, $bg_color, 0.5); } diff --git a/gtk-3.0/scss/_view.scss b/gtk-3.0/scss/_view.scss index e2e0c4c..aee0d6b 100644 --- a/gtk-3.0/scss/_view.scss +++ b/gtk-3.0/scss/_view.scss @@ -191,92 +191,3 @@ } } - -/************* - ! Expanders * -**************/ - -@include exports("expander") { - GtkExpander { - padding: $spacing; - outline-offset: 1px; - } - - .expander { - color: alpha(currentColor, 0.7); - border: alpha(currentColor, 0.7); - - &:hover { - color: alpha(currentColor, 0.8); - border-color: alpha(currentColor, 0.8); - } - - &:active { - color: alpha(currentColor, 0.9); - border-color: alpha(currentColor, 0.9); - } - } -} - - -/******************* - ! Symbolic images * -********************/ - -@include exports("symbolicimage") { - .image { - color: alpha(currentColor, 0.5); - - &:hover { color: alpha(currentColor, 0.9); } - - &:selected, &:selected:hover { color: $selected_fg_color; } - } -} - - -/**************** - ! Floating bar * -*****************/ - -@include exports("floatingbar") { - .floating-bar { - border: 1px solid border_normal($bg_color); - border-radius: $roundness; - background-color: $bg_color; - background-image: none; - color: $fg_color; - - &.top { - border-top-width: 0; - border-top-right-radius: 0; - border-top-left-radius: 0; - } - - &.right { - border-right-width: 0; - border-top-right-radius: 0; - border-bottom-right-radius: 0; - } - - &.bottom { - border-bottom-width: 0; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; - } - - &.left { - border-left-width: 0; - border-bottom-left-radius: 0; - border-top-left-radius: 0; - } - - .button { - -GtkButton-image-spacing: 0; - -GtkButton-inner-border: 0; - - border: none; - background-color: transparent; - background-image: none; - } - } -} diff --git a/gtk-3.0/scss/widgets.scss b/gtk-3.0/scss/widgets.scss index c0159c9..562273c 100755 --- a/gtk-3.0/scss/widgets.scss +++ b/gtk-3.0/scss/widgets.scss @@ -4,9 +4,11 @@ @import "button"; @import "entry"; @import "calendar"; +@import "choosers"; @import "grid"; @import "infobar"; @import "menu"; +@import "misc"; @import "notebook"; @import "progress"; @import "scrollbar"; @@ -18,127 +20,6 @@ @import "window"; -/***************** -* color chooser * -*****************/ -GtkColorSwatch, -GtkColorSwatch:selected { - border-width: 1px; - border-style: solid; - border-color: alpha(black, 0.1); - border-radius: 1px; - background-color: transparent; - background-clip: border-box; -} - -GtkColorSwatch:hover, -GtkColorSwatch:selected:hover { - border-color: alpha(black, 0.3); -} - -GtkColorSwatch.color-dark:hover { -} - -GtkColorSwatch.color-light:hover { -} - -GtkColorSwatch.color-light:selected:hover, -GtkColorSwatch.color-dark:selected:hover { - background-image: none; -} - -GtkColorSwatch.left, -GtkColorSwatch:first-child { - border-top-left-radius: 2px; - border-bottom-left-radius: 2px; -} - -GtkColorSwatch.right, -GtkColorSwatch:last-child { - border-top-right-radius: 2px; - border-bottom-right-radius: 2px; -} - -GtkColorSwatch:only-child { - border-radius: 2px; -} - -GtkColorSwatch.top { - border-top-left-radius: 2px; - border-top-right-radius: 2px; -} - -GtkColorSwatch.bottom { - border-bottom-left-radius: 2px; - border-bottom-right-radius: 2px; -} - -GtkColorChooserWidget #add-color-button { - background-clip: padding-box; - border-color: alpha(black, 0.1); - background-color: shade($bg_color, 0.95); - color: $fg_color; -} - -GtkColorChooserWidget #add-color-button:hover { - border-color: alpha(black, 0.3); - background-color: shade($bg_color, 0.90); - color: $fg_color; -} - -.color-active-badge, -.color-active-badge:selected { - border-width: 1px; - border-style: solid; - border-width: 2px; - background-color: transparent; -} - -.color-active-badge.color-light, -.color-active-badge.color-light:hover { - border-color: alpha(black, 0.3); - color: alpha(black, 0.3); -} - -.color-active-badge.color-dark, -.color-active-badge.color-dark:hover { - border-color: alpha(white, 0.3); - color: alpha(white, 0.3); -} - -GtkColorEditor GtkColorSwatch { - border-radius: 2px; -} - -GtkColorEditor GtkColorSwatch.color-dark:hover, -GtkColorEditor GtkColorSwatch.color-light:hover { - background-image: none; - border-color: alpha(black, 0.3); -} - -GtkColorButton.button { - padding: 2px; -} - -/*********** -* tooltip * -***********/ -.tooltip { - border-width: 1px; - border-style: solid; - border-color: shade($tooltip_bg_color, 0.8); - border-radius: 2px; - background-color: $tooltip_bg_color; - background-image: none; - color: $tooltip_fg_color; -} - -.tooltip * { - background-color: transparent; -} - - - /************** * action-bar * **************/ @@ -184,68 +65,6 @@ GtkColorButton.button { padding: 4px; } -/*********** -* dialogs * -***********/ -GtkMessageDialog, -.prompt { - -GtkDialog-content-area-border: 0; - -GtkDialog-action-area-border: 0; - -GtkDialog-button-spacing: 0; - - margin: 0; - padding: 0; -} - -/******************** -* various choosers * -********************/ -GtkFontButton .separator, -GtkFileChooserButton .separator { - /* always disable separators */ - -GtkWidget-wide-separators: true; - -GtkWidget-horizontal-separator: 0; - -GtkWidget-vertical-separator: 0; -} - -GtkFontButton GtkLabel:last-child { - color: alpha(currentColor, 0.7); -} - -GtkFileChooserButton GtkImage:last-child { - color: alpha(currentColor, 0.7); -} - -GtkFileChooser .pane-separator, -GtkFileChooser .pane-separator:hover { - border-width: 0 1px 0 0; - border-style: solid; - border-color: shade($bg_color, 0.8); - background-color: $bg_color; - color: shade($bg_color, 0.9); -} - -/* for fallback when header bar not used */ -GtkFileChooser .dialog-action-box { - border-width: 1px 0 0; - border-style: solid; - border-color: shade($bg_color, 0.7); -} - -/********************* -* app notifications * -*********************/ -.app-notification { - border-style: solid; - border-color: shade($base_color, 0.8); - border-width: 0 1px 1px 1px; - border-radius: 0 0 2px 2px; - padding: 8px; - background-color: $base_color; - background-image: none; - color: $text_color; -} - /******* * osd * *******/ @@ -695,19 +514,3 @@ GtkFileChooser .dialog-action-box { color: shade($selected_bg_color, 0.8); box-shadow: none; } - -/************************* -* touch text selections * -*************************/ -GtkBubbleWindow { - border-radius: 2px; - background-clip: border-box; -} - -GtkBubbleWindow.osd.background { - // background-color: $osd_bg; -} - -GtkBubbleWindow .toolbar { - background-color: transparent; -} From fd2a390954ec287bf794c99efe6f78c18e6e5cd2 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 13 Dec 2014 18:23:59 +0530 Subject: [PATCH 26/73] Added OSD styles --- gtk-3.0/scss/_colors.scss | 3 +- gtk-3.0/scss/_global.scss | 3 +- gtk-3.0/scss/_osd.scss | 152 +++++++++++++++++++++ gtk-3.0/scss/widgets.scss | 275 +------------------------------------- 4 files changed, 156 insertions(+), 277 deletions(-) create mode 100644 gtk-3.0/scss/_osd.scss diff --git a/gtk-3.0/scss/_colors.scss b/gtk-3.0/scss/_colors.scss index f00aaba..dcb562c 100755 --- a/gtk-3.0/scss/_colors.scss +++ b/gtk-3.0/scss/_colors.scss @@ -45,9 +45,8 @@ @define-color panel_fg_color @dark_fg_color; /* osd */ -@define-color osd_base #{"" + $osd_base}; -@define-color osd_fg #{"" + $osd_fg}; @define-color osd_bg #{"" + $osd_bg}; +@define-color osd_fg #{"" + $osd_fg}; /* lightdm greeter colors */ @define-color lightdm_bg_color #{"" + $lightdm_bg_color}; diff --git a/gtk-3.0/scss/_global.scss b/gtk-3.0/scss/_global.scss index bbb300f..844731c 100755 --- a/gtk-3.0/scss/_global.scss +++ b/gtk-3.0/scss/_global.scss @@ -42,9 +42,8 @@ $menu_fg_color: $dark_fg_color; $menubar_bg_color: $dark_bg_color; $menubar_fg_color: $dark_fg_color; -$osd_base: $dark_bg_color; +$osd_bg: $dark_bg_color; $osd_fg: $dark_fg_color; -$osd_bg: fade-out($dark_fg_color, 0.8); $lightdm_bg_color: $dark_bg_color; $lightdm_fg_color: $dark_fg_color; diff --git a/gtk-3.0/scss/_osd.scss b/gtk-3.0/scss/_osd.scss new file mode 100644 index 0000000..a2d3e5a --- /dev/null +++ b/gtk-3.0/scss/_osd.scss @@ -0,0 +1,152 @@ +@import "functions"; +@import "global"; +@import "button"; + + +/******* + ! OSD * +********/ + +GtkOverlay.osd { + background-color: transparent; +} + +.osd { + &.background { + background-color: alpha($osd_bg, 0.8); + color: $osd_fg; + } + + &.frame { + background-clip: border-box; + background-origin: border-box; + } + + &.button, .button { @include button($osd_bg, $osd_fg); } + + + &.toolbar { + -GtkToolbar-button-relief: normal; + + padding: $spacing; + border-width: 1px solid border_normal($osd_bg); + border-radius: $roundness; + background-color: $osd_bg; + background-image: none; + color: $osd_fg; + + .separator { color: shade($osd_bg, 0.9); } + } + + /* used by gnome-settings-daemon's media-keys OSD */ + &.trough { background-color: shade($osd_bg, 0.8); } + + &.progressbar { background-color: $osd_fg; } + + .scale { + &.slider { + background-color: shade($osd_bg, 1.08); + background-image: none; + /* we will draw the border using box shadow for now */ + box-shadow: inset 1px 0 shade($osd_bg, 0.8), + inset 0 1px shade($osd_bg, 0.8), + inset -1px 0 shade($osd_bg, 0.8), + inset 0 -1px shade($osd_bg, 0.8); + + &:hover { + box-shadow: inset 1px 0 shade($osd_bg, 0.7), + inset 0 1px shade($osd_bg, 0.7), + inset -1px 0 shade($osd_bg, 0.7), + inset 0 -1px shade($osd_bg, 0.7); + } + + &:insensitive { + background-color: shade($osd_bg, 0.9); + background-image: none; + box-shadow: inset 1px 0 shade($osd_bg, 0.85), + inset 0 1px shade($osd_bg, 0.85), + inset -1px 0 shade($osd_bg, 0.85), + inset 0 -1px shade($osd_bg, 0.85); + } + } + + &.trough { + border-color: shade($osd_bg, 0.8); + background-color: shade($osd_bg, 1.08); + background-image: none; + + &.highlight { + border-color: $selected_bg_color; + background-color: $selected_bg_color; + background-image: none; + } + + &:insensitive, &.highlight:insensitive { + border-color: shade($osd_bg, 0.85); + background-color: shade($osd_bg, 0.9); + background-image: none; + } + } + } + + &.view, .view { background-color: $osd_bg; } + + .scrollbar { + .trough { background-color: $osd_bg; } + + .slider { + border: 1px solid mix(shade($osd_bg, 0.87), $osd_fg, 0.21); + border-radius: 0; + background-color: mix($osd_bg, $osd_fg, 0.21); + + &:hover { + border-color: mix(shade($osd_bg, 0.87), $osd_fg, 0.31); + background-color: mix($osd_bg, $osd_fg, 0.31); + } + + &:active { + border-color: shade($selected_bg_color, 0.9); + background-color: $selected_bg_color; + } + } + } + + GtkIconView.cell { + &:selected, &:selected:focus { + background-color: transparent; + border: 3px solid solid mix(shade($osd_bg, 0.87), $osd_fg, 0.21); + border-radius: $roundness; + outline-color: transparent; + } + } + + /* used by Documents */ + .page-thumbnail { + border: 1px solid shade($osd_bg, 0.9); + /* when there's no pixbuf yet */ + background-color: $osd_bg; + } +} + +.osd GtkProgressBar, GtkProgressBar.osd { + -GtkProgressBar-xspacing: 0; + -GtkProgressBar-yspacing: 2px; + -GtkProgressBar-min-horizontal-bar-height: 2px; + + padding: 0; + + &.trough { + padding: 0; + border-style: none; + border-radius: 0; + background-image: none; + background-color: transparent; + } + + &.progressbar { + border-style: none; + border-radius: 0; + background-color: $selected_bg_color; + background-image: none; + } +} diff --git a/gtk-3.0/scss/widgets.scss b/gtk-3.0/scss/widgets.scss index 562273c..e5613bf 100755 --- a/gtk-3.0/scss/widgets.scss +++ b/gtk-3.0/scss/widgets.scss @@ -10,6 +10,7 @@ @import "menu"; @import "misc"; @import "notebook"; +@import "osd"; @import "progress"; @import "scrollbar"; @import "sidebar"; @@ -65,279 +66,7 @@ padding: 4px; } -/******* -* osd * -*******/ -//.background.osd { -// color: $osd_fg; -// background-color: $osd_bg; -//} -// -//GtkOverlay.osd { -// background-color: transparent; -//} -// -//.osd.frame { -// background-clip: border-box; -// background-origin: border-box; -//} -// -//.osd.button, -//.osd .button { -// padding: 4px; -// border-width: 1px; -// border-style: solid; -// border-color: shade($osd_bg, 0.8); -// border-radius: 2px; -// background-color: shade($osd_bg, 1.08); -// background-image: none; -// color: $osd_fg; -//} -// -//.osd.button:prelight, -//.osd.button:hover, -//.osd .button:hover { -// border-color: shade($osd_bg, 0.7); -// background-color: shade($osd_bg, 1.10); -// background-image: none; -//} -// -//.osd.button:active, -//.osd .button:active, -//.osd GtkMenuButton.button:active { -// border-color: shade($osd_bg, 0.8); -// background-color: shade($osd_bg, 0.95); -// background-image: none; -//} -// -//.osd.button:active:hover, -//.osd .button:active:hover, -//.osd GtkMenuButton.button:active:hover { -// border-color: shade($osd_bg, 0.7); -//} -// -//.osd.button:insensitive, -//.osd .button:insensitive { -// border-color: shade($osd_bg, 0.85); -// background-color: shade($osd_bg, 0.9); -// background-image: none; -//} -// -//.osd.button:active *:insensitive, -//.osd .button:active *:insensitive { -// background-color: shade($osd_bg, 0.80); -// background-image: none; -//} -// -//.osd.toolbar { -// -GtkToolbar-button-relief: normal; -// -// padding: 4px; -// border-width: 1px; -// border-style: solid; -// border-radius: 2px; -// border-color: shade($osd_bg, 0.8); -// background-color: $osd_bg; -// background-image: none; -// color: $osd_fg; -//} -// -//.osd.toolbar .button { -// padding: 4px; -// border-width: 1px; -// border-style: solid; -// border-color: shade($osd_bg, 0.8); -// border-radius: 2px; -// background-color: shade($osd_bg, 1.08); -// background-image: none; -// color: $osd_fg; -//} -// -//.osd.toolbar .button:hover { -// border-color: shade($osd_bg, 0.7); -// background-color: shade($osd_bg, 1.10); -// background-image: none; -//} -// -//.osd.toolbar .button:active { -// border-color: shade($osd_bg, 0.8); -// background-color: shade($osd_bg, 0.95); -// background-image: none; -//} -// -//.osd.toolbar .button:active:hover { -// border-color: shade($osd_bg, 0.7); -//} -// -//.osd.toolbar .button:focus, -//.osd.toolbar .button:hover:focus, -//.osd.toolbar .button:active:focus, -//.osd.toolbar .button:active:hover:focus { -// border-color: shade($osd_bg, 0.7); -//} -// -//.osd.toolbar .button:insensitive { -// border-color: shade($osd_bg, 0.85); -// background-color: shade($osd_bg, 0.9); -// background-image: none; -//} -// -//.osd.toolbar .button:active *:insensitive { -// border-color: shade($osd_bg, 0.75); -// background-color: shade($osd_bg, 0.80); -// background-image: none; -//} -// -//.osd.toolbar .button:first-child { -// border-radius: 2px 0 0 2px; -// border-width: 1px 0 1px 1px; -// box-shadow: inset -1px 0 shade($osd_bg, 0.9); -//} -// -//.osd.toolbar .button:last-child { -// box-shadow: none; -// border-radius: 0 2px 2px 0; -// border-width: 1px 1px 1px 0; -//} -// -//.osd.toolbar .button:only-child, -//.osd.toolbar GtkToolButton .button, -//.osd.toolbar GtkToolButton:only-child .button, -//.osd.toolbar GtkToolButton:last-child .button, -//.osd.toolbar GtkToolButton:first-child .button { -// border-width: 1px; -// border-radius: 2px; -// border-style: solid; -//} -// -//.osd.toolbar .separator { -// color: shade($osd_bg, 0.9); -//} -// -///* used by gnome-settings-daemon's media-keys OSD */ -//.osd.trough { -// background-color: shade($osd_bg, 0.8); -//} -// -//.osd.progressbar { -// background-color: $osd_fg; -//} -// -//.osd .scale.slider { -// background-color: shade($osd_bg, 1.08); -// background-image: none; -// /* we will draw the border using box shadow for now */ -// box-shadow: inset 1px 0 shade($osd_bg, 0.8), -// inset 0 1px shade($osd_bg, 0.8), -// inset -1px 0 shade($osd_bg, 0.8), -// inset 0 -1px shade($osd_bg, 0.8); -//} -// -//.osd .scale.slider:hover { -// box-shadow: inset 1px 0 shade($osd_bg, 0.7), -// inset 0 1px shade($osd_bg, 0.7), -// inset -1px 0 shade($osd_bg, 0.7), -// inset 0 -1px shade($osd_bg, 0.7); -//} -// -//.osd .scale.slider:insensitive { -// background-color: shade($osd_bg, 0.9); -// background-image: none; -// box-shadow: inset 1px 0 shade($osd_bg, 0.85), -// inset 0 1px shade($osd_bg, 0.85), -// inset -1px 0 shade($osd_bg, 0.85), -// inset 0 -1px shade($osd_bg, 0.85); -//} -// -//.osd .scale.trough { -// border-color: shade($osd_bg, 0.8); -// background-color: shade($osd_bg, 1.08); -// background-image: none; -//} -// -//.osd .scale.trough.highlight { -// border-color: $selected_bg_color; -// background-color: $selected_bg_color; -// background-image: none; -//} -// -//.osd .scale.trough:insensitive, -//.osd .scale.trough.highlight:insensitive { -// border-color: shade($osd_bg, 0.85); -// background-color: shade($osd_bg, 0.9); -// background-image: none; -//} -// -//.osd GtkProgressBar, -//GtkProgressBar.osd { -// -GtkProgressBar-xspacing: 0; -// -GtkProgressBar-yspacing: 2px; -// -GtkProgressBar-min-horizontal-bar-height: 2px; -// -// padding: 0; -//} -// -//.osd GtkProgressBar.trough, -//GtkProgressBar.osd.trough { -// padding: 0; -// border-style: none; -// border-radius: 0; -// background-image: none; -// background-color: transparent; -//} -// -//.osd GtkProgressBar.progressbar, -//GtkProgressBar.osd.progressbar { -// border-style: none; -// border-radius: 0; -// background-color: $selected_bg_color; -// background-image: none; -//} -// -//.osd .view, -//.osd.view { -// background-color: $osd_base; -//} -// -//.osd .scrollbar.trough { -// background-color: $osd_bg; -//} -// -//.osd .scrollbar.slider { -// border-width: 1px; -// border-color: mix(shade($osd_base, 0.87), $osd_fg, 0.21); -// border-radius: 0; -// background-color: mix($osd_base, $osd_fg, 0.21); -//} -// -//.osd .scrollbar.slider:hover { -// border-color: mix(shade($osd_base, 0.87), $osd_fg, 0.31); -// background-color: mix($osd_base, $osd_fg, 0.31); -//} -// -//.osd .scrollbar.slider:active { -// border-color: shade($selected_bg_color, 0.9); -// background-color: $selected_bg_color; -//} -// -//.osd GtkIconView.cell:selected, -//.osd GtkIconView.cell:selected:focus { -// background-color: transparent; -// border-style: solid; -// border-radius: 2px; -// border-width: 3px; -// border-color: $osd_fg; -// outline-color: transparent; -//} -// -///* used by Documents */ -//.osd .page-thumbnail { -// border-style: solid; -// border-width: 1px; -// border-color: shade($osd_bg, 0.9); -// /* when there's no pixbuf yet */ -// background-color: $osd_bg; -//} + /****************************** * destructive action buttons * From 1bd02efcdaf76a661111a00e7a9cb86e3bbfbea0 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 13 Dec 2014 19:47:53 +0530 Subject: [PATCH 27/73] Fix linked button issues --- gtk-3.0/scss/_base.scss | 5 -- gtk-3.0/scss/_button.scss | 97 ++++++++++++++++++++++---------------- gtk-3.0/scss/_misc.scss | 10 ++++ gtk-3.0/scss/_osd.scss | 4 +- gtk-3.0/scss/_toolbar.scss | 2 + 5 files changed, 70 insertions(+), 48 deletions(-) diff --git a/gtk-3.0/scss/_base.scss b/gtk-3.0/scss/_base.scss index 1407017..0080480 100755 --- a/gtk-3.0/scss/_base.scss +++ b/gtk-3.0/scss/_base.scss @@ -125,8 +125,3 @@ GtkLabel { &:insensitive { color: mix($fg_color, $bg_color, 0.50); } } - -.dim-label { - opacity: 0.5; - text-shadow: none; -} diff --git a/gtk-3.0/scss/_button.scss b/gtk-3.0/scss/_button.scss index 606ca80..d8900a2 100755 --- a/gtk-3.0/scss/_button.scss +++ b/gtk-3.0/scss/_button.scss @@ -6,13 +6,33 @@ ! Buttons **********/ -@mixin linked_button($bg, $shadow) { - border: 1px solid border_normal($bg); +%button { + padding: ($spacing - 1px) ($spacing + 1px); + border-width: 1px; + border-style: solid; + border-radius: $roundness; + transition: 100ms ease; + + -GtkWidget-focus-padding: 1; + -GtkWidget-focus-line-width: 0; + + &.flat { + color: inherit; + border: none; + background-color: transparent; + background-image: none; + box-shadow: none; + } + + &.separator, .separator { border: 1px solid currentColor; } +} + +%linked_button { + border-width: 1px; + border-style: solid; border-radius: 0; border-right-style: none; border-left-style: none; - box-shadow: inset -1px 0 border_normal($bg), - 0 1px 2px -1px alpha($shadow, .3); &:first-child { border-width: 1px; @@ -42,14 +62,22 @@ } } - &:only-child { + &:only-child, &:first-child:only-child { border-width: 1px; + border-style: solid; border-radius: $roundness; } +} + +@mixin linked_button($bg) { + @extend %linked_button; + + box-shadow: inset -1px 0 border_normal($bg), + 0 1px 2px -1px alpha($dark_shadow, .3); &:focus, &:hover { box-shadow: inset -1px 0 border_focus($bg), - 0 1px 2px -1px alpha($shadow, .3); + 0 1px 2px -1px alpha($dark_shadow, .3); } &:active, &:active:hover, @@ -57,9 +85,9 @@ &:checked, &:checked:hover, &:checked:focus, &:checked:hover:focus { box-shadow: inset -1px 0 border_active($bg), - inset 1px 0 alpha($shadow, .07), - inset 0 1px alpha($shadow, .08), - inset 0 -1px alpha($shadow, .05); + inset 1px 0 alpha($dark_shadow, .07), + inset 0 1px alpha($dark_shadow, .08), + inset 0 -1px alpha($dark_shadow, .05); } &:insensitive { box-shadow: inset -1px 0 border_insensitive($bg); } @@ -70,37 +98,39 @@ &:checked:insensitive:last-child, &:checked:insensitive:only-child { box-shadow: none; } &:active:last-child, &:active:only-child, - &:checked:last-child, &:checked:only-child { - box-shadow: inset 1px 0 alpha($shadow, .07), - inset 0 1px alpha($shadow, .08), - inset -1px 0 alpha($shadow, .07); + &:active:last-child:focus, &:active:only-child:focus, + &:active:last-child:hover, &:active:only-child:hover, + &:active:last-child:hover:focus, &:active:only-child:hover:focus, + &:checked:last-child, &:checked:only-child, + &:checked:last-child:focus, &:checked:only-child:focus, + &:checked:last-child:hover, &:checked:only-child:hover, + &:checked:last-child:hover:focus, &:checked:only-child:hover:focus { + box-shadow: inset 1px 0 alpha($dark_shadow, .07), + inset 0 1px alpha($dark_shadow, .08), + inset -1px 0 alpha($dark_shadow, .07); } } @mixin button($bg, $fg) { @include linear-gradient(shade($bg, 1.05)); @include border(shade($bg, 1.05)); + @extend %button; - padding: ($spacing - 1px) ($spacing + 1px); - border-width: 1px; - border-radius: $roundness; - border-style: solid; + border-color: border_normal($bg); color: $fg; - transition: 100ms ease; box-shadow: 0 1px 2px -1px alpha($dark_shadow, .3); - -GtkWidget-focus-padding: 1; - -GtkWidget-focus-line-width: 0; - &:focus, &:hover { @include linear-gradient(shade($bg, 1.1)); + border-color: border_focus($bg); box-shadow: 0 1px 3px -1px alpha($dark_shadow, .5); } &:checked, &:active { @include linear-gradient(shade($bg, .95)); + border-color: border_active($bg); box-shadow: inset 1px 0 alpha($dark_shadow, .07), inset 0 1px alpha($dark_shadow, .08), inset -1px 0 alpha($dark_shadow, .07), @@ -110,6 +140,7 @@ &:insensitive { @include linear-gradient(shade($bg, .95)); + border-color: border_insensitive($bg); color: mix($bg, $fg, .5); box-shadow: none; } @@ -121,29 +152,11 @@ box-shadow: none; } - &.flat { - color: inherit; - - &, &:hover, &:focus, - &:active, &:active:hover, &:active:focus, - &:checked, &:checked:hover, &:checked:focus { - border: none; - background-color: transparent; - background-image: none; - box-shadow: none; - } - - // TODO - } - &.separator, .separator { color: shade($bg, ($contrast + .05)); - border: 1px solid currentColor; &:insensitive { color: shade($bg, .85); } } - - .linked & { @include linked_button($bg, $dark_shadow); } } @include exports("button") { @@ -173,10 +186,12 @@ &.default { @include button($selected_bg_color, $selected_fg_color); } + .linked & { @include linked_button($bg_color); } + .spinbutton & { color: mix($text_color, $base_color, 0.4); - padding: 2px 4px; - border-width: 0; + padding: $spacing ($spacing * 2); + border: none; border-radius: 0; border-style: none; background-color: transparent; diff --git a/gtk-3.0/scss/_misc.scss b/gtk-3.0/scss/_misc.scss index 35a271c..ee3644f 100644 --- a/gtk-3.0/scss/_misc.scss +++ b/gtk-3.0/scss/_misc.scss @@ -2,6 +2,16 @@ @import "global"; +/*************** +! Dimmed label * +****************/ + +.dim-label { + opacity: 0.5; + text-shadow: none; +} + + /*********** ! Tooltip * ************/ diff --git a/gtk-3.0/scss/_osd.scss b/gtk-3.0/scss/_osd.scss index a2d3e5a..673a262 100644 --- a/gtk-3.0/scss/_osd.scss +++ b/gtk-3.0/scss/_osd.scss @@ -29,7 +29,7 @@ GtkOverlay.osd { -GtkToolbar-button-relief: normal; padding: $spacing; - border-width: 1px solid border_normal($osd_bg); + border: 1px solid border_normal($osd_bg); border-radius: $roundness; background-color: $osd_bg; background-image: none; @@ -114,7 +114,7 @@ GtkOverlay.osd { GtkIconView.cell { &:selected, &:selected:focus { background-color: transparent; - border: 3px solid solid mix(shade($osd_bg, 0.87), $osd_fg, 0.21); + border: 3px solid mix(shade($osd_bg, 0.87), $osd_fg, 0.21); border-radius: $roundness; outline-color: transparent; } diff --git a/gtk-3.0/scss/_toolbar.scss b/gtk-3.0/scss/_toolbar.scss index 79ca6c1..cea024a 100755 --- a/gtk-3.0/scss/_toolbar.scss +++ b/gtk-3.0/scss/_toolbar.scss @@ -31,6 +31,8 @@ .button { @include button($bg, $fg); } + .linked .button { @include linked_button($bg); } + GtkComboBox, .button { padding: $spacing - 1px; From e8f4bef04cd2f0c5e0ad8562458bb439e05c04bc Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 13 Dec 2014 20:05:09 +0530 Subject: [PATCH 28/73] Fix flat buttons --- gtk-3.0/scss/_button.scss | 64 +++++++++++++++++++-------------------- 1 file changed, 31 insertions(+), 33 deletions(-) diff --git a/gtk-3.0/scss/_button.scss b/gtk-3.0/scss/_button.scss index d8900a2..c834f43 100755 --- a/gtk-3.0/scss/_button.scss +++ b/gtk-3.0/scss/_button.scss @@ -15,16 +15,6 @@ -GtkWidget-focus-padding: 1; -GtkWidget-focus-line-width: 0; - - &.flat { - color: inherit; - border: none; - background-color: transparent; - background-image: none; - box-shadow: none; - } - - &.separator, .separator { border: 1px solid currentColor; } } %linked_button { @@ -113,46 +103,54 @@ @mixin button($bg, $fg) { @include linear-gradient(shade($bg, 1.05)); - @include border(shade($bg, 1.05)); @extend %button; - border-color: border_normal($bg); color: $fg; box-shadow: 0 1px 2px -1px alpha($dark_shadow, .3); - &:focus, &:hover { - @include linear-gradient(shade($bg, 1.1)); - - border-color: border_focus($bg); - box-shadow: 0 1px 3px -1px alpha($dark_shadow, .5); - } - - &:checked, &:active { - @include linear-gradient(shade($bg, .95)); - - border-color: border_active($bg); - box-shadow: inset 1px 0 alpha($dark_shadow, .07), - inset 0 1px alpha($dark_shadow, .08), - inset -1px 0 alpha($dark_shadow, .07), - inset 0 -1px alpha($dark_shadow, .05); - } - &:insensitive { @include linear-gradient(shade($bg, .95)); - border-color: border_insensitive($bg); color: mix($bg, $fg, .5); box-shadow: none; } - &:active:insensitive, - &:checked:insensitive { - @include linear-gradient(shade($bg, .8)); + &, &.flat { + @include border(shade($bg, 1.05)); + &:focus, &:hover { + @include linear-gradient(shade($bg, 1.1)); + + box-shadow: 0 1px 3px -1px alpha($dark_shadow, .5); + } + + &:checked, &:active { + @include linear-gradient(shade($bg, .95)); + + box-shadow: inset 1px 0 alpha($dark_shadow, .07), + inset 0 1px alpha($dark_shadow, .08), + inset -1px 0 alpha($dark_shadow, .07), + inset 0 -1px alpha($dark_shadow, .05); + } + + &:active:insensitive, + &:checked:insensitive { + @include linear-gradient(shade($bg, .8)); + + box-shadow: none; + } + } + + &.flat { + color: inherit; + border-color: transparent; + background-color: transparent; + background-image: none; box-shadow: none; } &.separator, .separator { + border: 1px solid currentColor; color: shade($bg, ($contrast + .05)); &:insensitive { color: shade($bg, .85); } From da340ddb79b33b380ae51d5471f37a5ab5ee58d1 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 13 Dec 2014 20:09:58 +0530 Subject: [PATCH 29/73] Fix list-row --- gtk-3.0/scss/_grid.scss | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/gtk-3.0/scss/_grid.scss b/gtk-3.0/scss/_grid.scss index a92ba9a..403e592 100644 --- a/gtk-3.0/scss/_grid.scss +++ b/gtk-3.0/scss/_grid.scss @@ -11,22 +11,25 @@ color: $fg_color; &-row { - border: none; - border-radius: 0; - padding: $spacing; - background-image: none; - background-color: transparent; - - &:hover { + &, &.button { + border: none; + border-radius: 0; + padding: $spacing; background-image: none; - background-color: shade($bg_color, 1.02); - } + background-color: transparent; + box-shadow: none; - &:selected { - &, &:hover, &:focus { + &:hover { background-image: none; - background-color: $selected_bg_color; - color: $selected_fg_color; + background-color: shade($bg_color, 1.02); + } + + &:selected { + &, &:hover, &:focus { + background-image: none; + background-color: $selected_bg_color; + color: $selected_fg_color; + } } } } From 63b89ba1f0e18c3d8df42190f2f3872b13070b03 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sun, 14 Dec 2014 17:17:14 +0530 Subject: [PATCH 30/73] Fix frame borders --- gtk-3.0/scss/_base.scss | 4 +- gtk-3.0/scss/_button.scss | 115 ++++++++++++++++++----------------- gtk-3.0/scss/_functions.scss | 6 +- gtk-3.0/scss/_toolbar.scss | 2 +- gtk-3.0/scss/_view.scss | 12 ++-- 5 files changed, 71 insertions(+), 68 deletions(-) diff --git a/gtk-3.0/scss/_base.scss b/gtk-3.0/scss/_base.scss index 0080480..e9afca8 100755 --- a/gtk-3.0/scss/_base.scss +++ b/gtk-3.0/scss/_base.scss @@ -43,8 +43,8 @@ outline-color: alpha($selected_bg_color, 0.5); outline-style: dashed; outline-width: 1px; - outline-offset: -2px; - outline-radius: 2px; + outline-offset: -1px; + outline-radius: $roundness; } diff --git a/gtk-3.0/scss/_button.scss b/gtk-3.0/scss/_button.scss index c834f43..f5ff5c6 100755 --- a/gtk-3.0/scss/_button.scss +++ b/gtk-3.0/scss/_button.scss @@ -6,56 +6,59 @@ ! Buttons **********/ -%button { - padding: ($spacing - 1px) ($spacing + 1px); - border-width: 1px; - border-style: solid; - border-radius: $roundness; - transition: 100ms ease; - - -GtkWidget-focus-padding: 1; - -GtkWidget-focus-line-width: 0; -} - -%linked_button { - border-width: 1px; - border-style: solid; - border-radius: 0; - border-right-style: none; - border-left-style: none; - - &:first-child { - border-width: 1px; - border-radius: $roundness; - border-left-style: solid; - border-right-style: none; - border-top-right-radius: 0; - border-bottom-right-radius: 0; - - &:dir(rtl) { - border-left-style: none; - border-right-style: solid; - } - } - - &:last-child { - border-width: 1px; - border-radius: $roundness; - border-left-style: none; - border-right-style: solid; - border-top-left-radius: 0; - border-bottom-left-radius: 0; - - &:dir(rtl) { - border-left-style: solid; - border-right-style: none; - } - } - - &:only-child, &:first-child:only-child { +@include exports("button_extends") { + %button { + padding: ($spacing - 1px) ($spacing + 1px); border-width: 1px; border-style: solid; border-radius: $roundness; + transition: 100ms ease; + outline-color: transparent; + + -GtkWidget-focus-padding: 1; + -GtkWidget-focus-line-width: 0; + } + + %linked_button { + border-width: 1px; + border-style: solid; + border-radius: 0; + border-right-style: none; + border-left-style: none; + + &:first-child { + border-width: 1px; + border-radius: $roundness; + border-left-style: solid; + border-right-style: none; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + + &:dir(rtl) { + border-left-style: none; + border-right-style: solid; + } + } + + &:last-child { + border-width: 1px; + border-radius: $roundness; + border-left-style: none; + border-right-style: solid; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + + &:dir(rtl) { + border-left-style: solid; + border-right-style: none; + } + } + + &:only-child, &:first-child:only-child { + border-width: 1px; + border-style: solid; + border-radius: $roundness; + } } } @@ -184,7 +187,7 @@ &.default { @include button($selected_bg_color, $selected_fg_color); } - .linked & { @include linked_button($bg_color); } + &.linked, .linked & { @include linked_button($bg_color); } .spinbutton & { color: mix($text_color, $base_color, 0.4); @@ -198,7 +201,7 @@ &:insensitive { color: mix($text_color, $base_color, 0.7); - box-shadow: inset 1px 0 shade($base_color, 0.95); + box-shadow: inset 1px 0 shade($base_color, 0.85); } &:active, &:checked, &:hover { color: $text_color; } @@ -214,12 +217,12 @@ } .spinbutton.vertical & { - border: 1px solid shade($bg_color, 0.8); - border-radius: $roundness; - background-color: shade($bg_color, 1.08); - background-image: none; - color: $fg_color; - box-shadow: none; + border: 1px solid shade($bg_color, 0.8); + border-radius: $roundness; + background-color: shade($bg_color, 1.08); + background-image: none; + color: $fg_color; + box-shadow: none; &:hover { border-color: shade($bg_color, 0.7); @@ -248,7 +251,6 @@ &:first-child { border-width: 1px; border-bottom-width: 0; - border-radius: $roundness; border-bottom-right-radius: 0; border-bottom-left-radius: 0; } @@ -256,7 +258,6 @@ &:last-child { border-width: 1px; border-top-width: 0; - border-radius: $roundness; border-top-left-radius: 0; border-top-right-radius: 0; } diff --git a/gtk-3.0/scss/_functions.scss b/gtk-3.0/scss/_functions.scss index 0c81dcd..a072ca0 100755 --- a/gtk-3.0/scss/_functions.scss +++ b/gtk-3.0/scss/_functions.scss @@ -65,9 +65,11 @@ $modules: () !default; &:focus, &:hover { border-color: border_focus($color); } &:active, &:active:hover, - &:active:focus, &:active:hover:focus { border-color: border_active($color); } + &:active:focus, &:active:hover:focus, + &:checked, &:checked:hover, + &:checked:focus, &:checked:hover:focus { border-color: border_active($color); } &:insensitive { border-color: border_insensitive($color); } - &:active *:insensitive { border-color: border_normal($color); } + &:active:insensitive, &:checked:insensitive { border-color: border_normal($color); } } diff --git a/gtk-3.0/scss/_toolbar.scss b/gtk-3.0/scss/_toolbar.scss index cea024a..96b44b7 100755 --- a/gtk-3.0/scss/_toolbar.scss +++ b/gtk-3.0/scss/_toolbar.scss @@ -31,7 +31,7 @@ .button { @include button($bg, $fg); } - .linked .button { @include linked_button($bg); } + .button.linked, .linked .button { @include linked_button($bg); } GtkComboBox, .button { padding: $spacing - 1px; diff --git a/gtk-3.0/scss/_view.scss b/gtk-3.0/scss/_view.scss index aee0d6b..a8cf5b4 100644 --- a/gtk-3.0/scss/_view.scss +++ b/gtk-3.0/scss/_view.scss @@ -181,13 +181,13 @@ ***********/ @include exports("frame") { - .frame { border: none; } + .frame { + border: 1px solid border_normal($bg_color); - GtkScrolledWindow { - &.frame { border: 1px solid border_normal($bg_color); } - - /* avoid double borders when a viewport is packed into a GtkScrolledWindow */ - GtkViewport.frame { border: none; } + &.flat { border: none; } } + + /* avoid double borders when a viewport is packed into a GtkScrolledWindow */ + GtkScrolledWindow GtkViewport.frame { border: none; } } From e2dc6ca7cc02d410c65bc265944805343f58524b Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sun, 14 Dec 2014 17:52:13 +0530 Subject: [PATCH 31/73] Tweak things --- gtk-3.0/scss/_entry.scss | 11 ++++++----- gtk-3.0/scss/_functions.scss | 28 +++++++++++++--------------- gtk-3.0/scss/_global.scss | 10 +++++----- gtk-3.0/scss/_infobar.scss | 4 ++-- gtk-3.0/scss/_misc.scss | 8 ++++---- gtk-3.0/scss/_progress.scss | 36 +++++++++++++++++++----------------- gtk-3.0/scss/_toolbar.scss | 4 ++-- 7 files changed, 51 insertions(+), 50 deletions(-) diff --git a/gtk-3.0/scss/_entry.scss b/gtk-3.0/scss/_entry.scss index bd00cf1..445fd55 100755 --- a/gtk-3.0/scss/_entry.scss +++ b/gtk-3.0/scss/_entry.scss @@ -35,13 +35,14 @@ } @mixin entry($bg, $fg) { - @include linear-gradient($bg); @include border(shade($bg, .9)); - padding: ($spacing - 1px) ($spacing + 1px); + padding: ($spacing - 1px) $spacing; border-width: 1px; border-style: solid; border-radius: $roundness; + background-color: $bg; + background-image: none; transition: border 100ms ease; box-shadow: inset 1px 0 alpha($dark_shadow, .1), inset 0 1px alpha($dark_shadow, .12), @@ -55,8 +56,8 @@ } &:insensitive { - @include linear-gradient(shade($bg, .9)); - + background-color: shade($bg, .9); + background-image: none; color: mix($bg, $fg, .5); box-shadow: none; } @@ -69,7 +70,7 @@ color: $selected_fg_color; } - &.image.left { padding-right: $spacing; } + &.image.left { padding-right: ($spacing / 2); } } @include exports("entry") { diff --git a/gtk-3.0/scss/_functions.scss b/gtk-3.0/scss/_functions.scss index a072ca0..6abc15c 100755 --- a/gtk-3.0/scss/_functions.scss +++ b/gtk-3.0/scss/_functions.scss @@ -5,6 +5,7 @@ $modules: () !default; @mixin exports($name) { @if (not index($modules, $name)) { $modules: append($modules, $name) !global; + @content; } } @@ -18,15 +19,7 @@ $modules: () !default; } @function shade($color, $amount) { -// @if type-of($color) == "color" { -// @if $amount < 1 { -// @return darken($color, ((1 - $amount) * 100)); -// } @else { -// @return lighten($color, (($amount - 1) * 100)); -// } -// } @else { - @return unquote("shade(#{$color},#{$amount})"); -// } + @return unquote("shade(#{$color},#{$amount})"); } @function mix($color1, $color2, $amount) { @@ -50,13 +43,18 @@ $modules: () !default; } @mixin linear-gradient($color, $direction: to bottom) { - $amount: $gradient / 2; + @if $gradient == 0 { + background-color: $color; + background-image: none; + } @else { + $amount: $gradient / 2; - background-color: $color; - background-image: linear-gradient($direction, - shade($color, (1 + $amount)), - shade($color, (1 - $amount)) - ); + background-color: $color; + background-image: linear-gradient($direction, + shade($color, (1 + $amount)), + shade($color, (1 - $amount)) + ); + } } @mixin border($color) { diff --git a/gtk-3.0/scss/_global.scss b/gtk-3.0/scss/_global.scss index 844731c..c1d6911 100755 --- a/gtk-3.0/scss/_global.scss +++ b/gtk-3.0/scss/_global.scss @@ -1,15 +1,15 @@ // default color scheme $bg_color: #eee; -$fg_color: #444; +$fg_color: #333; $base_color: #fff; -$text_color: #444; +$text_color: #333; $selected_bg_color: #f06860; $selected_fg_color: #fff; -$tooltip_bg_color: #444; +$tooltip_bg_color: #333; $tooltip_fg_color: #eee; // dark colors -$dark_bg_color: #444; +$dark_bg_color: #333; $dark_fg_color: #eee; // shadows @@ -50,6 +50,6 @@ $lightdm_fg_color: $dark_fg_color; // widget styles $roundness: 2px; -$spacing: 5px; +$spacing: 6px; $gradient: 0; $contrast: .7; diff --git a/gtk-3.0/scss/_infobar.scss b/gtk-3.0/scss/_infobar.scss index 848c247..c5cec55 100644 --- a/gtk-3.0/scss/_infobar.scss +++ b/gtk-3.0/scss/_infobar.scss @@ -24,9 +24,9 @@ $bg_color: nth($colors, 2); &.#{$type} { + @include linear-gradient($bg_color); + border: 1px solid shade($bg_color, 0.8); - background-color: $bg_color; - background-image: none; color: $fg_color; .button { diff --git a/gtk-3.0/scss/_misc.scss b/gtk-3.0/scss/_misc.scss index ee3644f..73ac894 100644 --- a/gtk-3.0/scss/_misc.scss +++ b/gtk-3.0/scss/_misc.scss @@ -18,10 +18,10 @@ @include exports("tooltip") { .tooltip { + @include linear-gradient($tooltip_bg_color); + border: none; border-radius: $roundness; - background-color: $tooltip_bg_color; - background-image: none; color: $tooltip_fg_color; * { background-color: transparent; } @@ -111,10 +111,10 @@ @include exports("floatingbar") { .floating-bar { + @include linear-gradient($bg_color); + border: 1px solid border_normal($bg_color); border-radius: $roundness; - background-color: $bg_color; - background-image: none; color: $fg_color; &.top { diff --git a/gtk-3.0/scss/_progress.scss b/gtk-3.0/scss/_progress.scss index b5ccb30..1bb9636 100644 --- a/gtk-3.0/scss/_progress.scss +++ b/gtk-3.0/scss/_progress.scss @@ -30,8 +30,8 @@ } .progressbar { - background-image: none; - background-color: $selected_bg_color; + @include linear-gradient($selected_bg_color); + border-radius: 0; box-shadow: none; @@ -48,8 +48,7 @@ &.left.right { box-shadow: none; } &.vertical { - background-image: none; - background-color: $selected_bg_color; + @include linear-gradient($selected_bg_color, to right); &.bottom { border-bottom-left-radius: $roundness; @@ -75,16 +74,17 @@ .level-bar { &.trough { + @include linear-gradient(shade($bg_color, 1.08), to top); + border: 1px solid alpha(border_normal($bg_color), 0.5); - background-color: shade($bg_color, 1.08); - background-image: none; border-radius: $roundness; } &.fill-block { + @include linear-gradient($selected_bg_color); + // FIXME: it would be nice to set make fill blocks bigger, but we'd need // :nth-child working on discrete indicators - background-color: $selected_bg_color; border-color: transparent; border-radius: 0; @@ -123,9 +123,10 @@ &.slider { + @include linear-gradient(shade($bg_color, 1.08)); + border-radius: 8px; - background-color: shade($bg_color, 1.08); - background-image: none; + /* we will draw the border using box shadow for now */ box-shadow: inset 1px 0 border_normal($bg_color), inset 0 1px border_normal($bg_color), @@ -147,8 +148,8 @@ } &:insensitive { - background-color: shade($bg_color, 0.9); - background-image: none; + @include linear-gradient(shade($bg_color, 0.9)); + box-shadow: inset 1px 0 border_insensitive($bg_color), inset 0 1px border_insensitive($bg_color), inset -1px 0 border_insensitive($bg_color), @@ -170,26 +171,27 @@ &.trough { + @include linear-gradient(shade($bg_color, 1.08)); + margin: 7px 0; border: 1px solid alpha(border_normal($bg_color), 0.5); border-radius: $roundness; - background-color: shade($bg_color, 1.08); - background-image: none; - &:insensitive { background-color: shade($bg_color, 0.9); } + &:insensitive { @include linear-gradient(shade($bg_color, 0.9)); } &.vertical { margin: 0 7px; } } &.highlight { &, &.left, &.bottom { + @include linear-gradient($selected_bg_color); + border-color: $selected_bg_color; - background-color: $selected_bg_color; - background-image: none; &:insensitive { + @include linear-gradient(shade($bg_color, 0.8)); + border-color: shade($bg_color, 0.7); - background-color: shade($bg_color, 0.8); } } } diff --git a/gtk-3.0/scss/_toolbar.scss b/gtk-3.0/scss/_toolbar.scss index 96b44b7..094d398 100755 --- a/gtk-3.0/scss/_toolbar.scss +++ b/gtk-3.0/scss/_toolbar.scss @@ -14,7 +14,7 @@ color: $fg; &:insensitive { - @include linear-gradient(darken($bg, 10%)); + @include linear-gradient(shade($bg, .9)); color: mix($fg, $bg, .5); } @@ -105,7 +105,7 @@ &:active, &:active:hover { background-image: none; background-color: transparent; - color: darken($selected_bg_color, 10%); + color: shade($selected_bg_color, .9); box-shadow: none; } From bd613155754e1b8be42934cd75d3268637afb3b3 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sun, 14 Dec 2014 18:16:10 +0530 Subject: [PATCH 32/73] Popover fixes --- gtk-3.0/scss/_entry.scss | 4 +-- gtk-3.0/scss/_menu.scss | 57 ++++++++++++++++++++++++++-------------- 2 files changed, 39 insertions(+), 22 deletions(-) diff --git a/gtk-3.0/scss/_entry.scss b/gtk-3.0/scss/_entry.scss index 445fd55..b0a3474 100755 --- a/gtk-3.0/scss/_entry.scss +++ b/gtk-3.0/scss/_entry.scss @@ -48,7 +48,7 @@ inset 0 1px alpha($dark_shadow, .12), inset -1px 0 alpha($dark_shadow, .1), inset 0 -1px alpha($dark_shadow, .05), - 0 1px 2px -1px shade($bg_color, 1.4); + 0 1px 2px -1px shade($bg, 1.4); &:selected, &:selected:focus { background-color: $selected_bg_color; @@ -70,7 +70,7 @@ color: $selected_fg_color; } - &.image.left { padding-right: ($spacing / 2); } + &.image.left { padding-right: $spacing; } } @include exports("entry") { diff --git a/gtk-3.0/scss/_menu.scss b/gtk-3.0/scss/_menu.scss index 6fa1a44..49aae6c 100755 --- a/gtk-3.0/scss/_menu.scss +++ b/gtk-3.0/scss/_menu.scss @@ -118,8 +118,7 @@ &, &:focus, &:active, &:insensitive, &:active:insensitive { background-color: transparent; background-image: none; - border-color: transparent; - border-style: none; + border: none; box-shadow: none; color: currentColor; } @@ -189,11 +188,39 @@ > .toolbar .button { border-radius: 0; border-width: 0; - background-image: none; background-color: transparent; + background-image: none; } } + .list { + background-color: transparent; + background-image: none; + } + + .list-row { + &, &.button { + background-color: transparent; + background-image: none; + color: $menu_fg_color; + + &:focus, &:hover, &:active { + background-image: none; + background-color: $selected_bg_color; + color: $selected_fg_color; + } + } + } + + .frame { + border-color: border_normal($menu_bg_color); + border-radius: $roundness; + } + + .entry { @include entry($menu_bg_color, $menu_fg_color); } + + .button { @include button($menu_bg_color, $menu_fg_color); } + > .list, > .view, > .toolbar { background-color: transparent; } .separator { @@ -206,24 +233,14 @@ } GtkModelButton.button { - &, &:focus, &:active, &:insensitive, &:active:insensitive { - &, &:backdrop { - background-color: transparent; - background-image: none; - border-color: transparent; - border-image: none; - border-style: none; - box-shadow: none; - color: $menu_fg_color; - } - } + &, &:backdrop { + @include button(transparent, currentColor); - &:focus:hover, &:active:hover, &:hover, &:selected { - background-image: none; - background-color: $selected_bg_color; - color: $selected_fg_color; - border: none; - border-radius: 2px; + &:focus:hover, &:active:hover, &:hover, &:selected { + background-image: none; + background-color: $selected_bg_color; + color: $selected_fg_color; + } } } } From 9613c83bdc8455ffbe33da0152468b805a9756a0 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 20 Dec 2014 00:58:35 +0530 Subject: [PATCH 33/73] Consistent colors througout --- gtk-2.0/gtkrc | 4 ++-- metacity-1/metacity-theme-2.xml | 20 ++++++++++---------- metacity-1/metacity-theme-3.xml | 20 ++++++++++---------- 3 files changed, 22 insertions(+), 22 deletions(-) diff --git a/gtk-2.0/gtkrc b/gtk-2.0/gtkrc index 830ae2d..0f86d59 100755 --- a/gtk-2.0/gtkrc +++ b/gtk-2.0/gtkrc @@ -1,6 +1,6 @@ # Numix GTK Theme -gtk-color-scheme = "bg_color:#dedede\nfg_color:#555555\nbase_color:#f9f9f9\ntext_color:#333333\nselected_bg_color:#d64937\nselected_fg_color:#f9f9f9\ntooltip_bg_color:#2d2d2d\ntooltip_fg_color:#dedede\ntitlebar_bg_color:#2d2d2d\ntitlebar_fg_color:#dcdcdc\nmenubar_bg_color:#2d2d2d\nmenubar_fg_color:#dcdcdc\ntoolbar_bg_color:#dedede\ntoolbar_fg_color:#555555\nmenu_bg_color:#2d2d2d\nmenu_fg_color:#dcdcdc\npanel_bg_color:#2d2d2d\npanel_fg_color:#dcdcdc\nlink_color:#fc6f5d" +gtk-color-scheme = "bg_color:#eeeeee\nfg_color:#333333\nbase_color:#ffffff\ntext_color:#333333\nselected_bg_color:#d64937\nselected_fg_color:#ffffff\ntooltip_bg_color:#333333\ntooltip_fg_color:#eeeeee\ntitlebar_bg_color:#333333\ntitlebar_fg_color:#eeeeee\nmenubar_bg_color:#333333\nmenubar_fg_color:#eeeeee\ntoolbar_bg_color:#eeeeee\ntoolbar_fg_color:#333333\nmenu_bg_color:#333333\nmenu_fg_color:#eeeeee\npanel_bg_color:#333333\npanel_fg_color:#eeeeee\nlink_color:#f06860" # Default Style @@ -470,7 +470,7 @@ class "PanelToplevel*" style "murrine-panel" widget_class "*PanelToplevel*" style "murrine-panel" widget_class "*notif*" style "murrine-panel" widget_class "*Notif*" style "murrine-panel" -widget_class "*Tray*" style "murrine-panel" +widget_class "*Tray*" style "murrine-panel" widget_class "*tray*" style "murrine-panel" widget_class "*computertemp*" style "murrine-panel" widget_class "*Applet*Tomboy*" style "murrine-panel" diff --git a/metacity-1/metacity-theme-2.xml b/metacity-1/metacity-theme-2.xml index 8d8f3c8..93b3861 100755 --- a/metacity-1/metacity-theme-2.xml +++ b/metacity-1/metacity-theme-2.xml @@ -9,12 +9,12 @@ - + - + - + @@ -721,15 +721,15 @@ - - - @@ -737,16 +737,16 @@ x1="(width-width%3)/3+3" y1="(height-height%3)/3+1" x2="width-(width-width%3)/3-3" y2="height-(height-height%3)/3-5" color="C_icons_focused_pressed" /> - - + diff --git a/metacity-1/metacity-theme-3.xml b/metacity-1/metacity-theme-3.xml index 3ec1eb3..a5fbae8 100755 --- a/metacity-1/metacity-theme-3.xml +++ b/metacity-1/metacity-theme-3.xml @@ -9,12 +9,12 @@ - + - + - + @@ -733,15 +733,15 @@ - - - @@ -749,16 +749,16 @@ x1="(width-width%3)/3+3" y1="(height-height%3)/3+1" x2="width-(width-width%3)/3-3" y2="height-(height-height%3)/3-5" color="C_icons_focused_pressed" /> - - + From aab802efc32d0405de2b1488f718111f0fe8aa12 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 20 Dec 2014 01:00:29 +0530 Subject: [PATCH 34/73] Recolor openbox theme --- openbox-3/themerc | 60 +++++++++++++++++++++++------------------------ 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/openbox-3/themerc b/openbox-3/themerc index 7d5663f..b29bd09 100755 --- a/openbox-3/themerc +++ b/openbox-3/themerc @@ -4,21 +4,21 @@ # Menu -menu.border.color: #2d2d2d +menu.border.color: #333333 menu.title.bg: flat solid -menu.title.bg.color: #2d2d2d -menu.title.text.color: #dcdcdc +menu.title.bg.color: #333333 +menu.title.text.color: #eeeeee menu.title.text.justify: center menu.items.bg: flat solid -menu.items.bg.color: #2d2d2d -menu.items.text.color: #dcdcdc +menu.items.bg.color: #333333 +menu.items.text.color: #eeeeee menu.items.disabled.text.color: #888888 menu.items.active.bg: flat solid -menu.items.active.bg.color: #d64937 -menu.items.active.text.color: #f9f9f9 +menu.items.active.bg.color: #f06860 +menu.items.active.text.color: #ffffff menu.separator.color: #262626 menu.separator.width: 1 @@ -30,29 +30,29 @@ menu.separator.padding.height: 4 window.active.border.color: #484848 window.active.title.bg: flat solid -window.active.title.bg.color: #2d2d2d -window.active.title.separator.color: #2d2d2d +window.active.title.bg.color: #333333 +window.active.title.separator.color: #333333 window.active.text.justify: center window.active.label.bg: parentrelative -window.active.label.text.color: #dcdcdc +window.active.label.text.color: #eeeeee window.active.handle.bg: flat solid -window.active.handle.bg.color: #2d2d2d +window.active.handle.bg.color: #333333 window.active.grip.bg: flat solid -window.active.grip.bg.color: #2d2d2d +window.active.grip.bg.color: #333333 window.active.button.unpressed.bg: flat solid -window.active.button.unpressed.bg.color: #2d2d2d -window.active.button.unpressed.image.color: #dcdcdc +window.active.button.unpressed.bg.color: #333333 +window.active.button.unpressed.image.color: #eeeeee window.active.button.pressed.bg: flat solid -window.active.button.pressed.bg.color: #2d2d2d -window.active.button.pressed.image.color: #d64937 +window.active.button.pressed.bg.color: #333333 +window.active.button.pressed.image.color: #f06860 window.active.button.disabled.bg: flat solid -window.active.button.disabled.bg.color: #2d2d2d +window.active.button.disabled.bg.color: #333333 window.active.button.disabled.image.color: #888888 @@ -60,29 +60,29 @@ window.active.button.disabled.image.color: #888888 window.inactive.border.color: #393939 window.inactive.title.bg: flat solid -window.inactive.title.bg.color: #2d2d2d -window.inactive.title.separator.color: #2d2d2d +window.inactive.title.bg.color: #333333 +window.inactive.title.separator.color: #333333 window.inactive.text.justify: center window.inactive.label.bg: parentrelative window.inactive.label.text.color: #888888 window.inactive.handle.bg: flat solid -window.inactive.handle.bg.color: #2d2d2d +window.inactive.handle.bg.color: #333333 window.inactive.grip.bg: flat solid -window.inactive.grip.bg.color: #2d2d2d +window.inactive.grip.bg.color: #333333 window.inactive.button.unpressed.bg: flat solid -window.inactive.button.unpressed.bg.color: #2d2d2d +window.inactive.button.unpressed.bg.color: #333333 window.inactive.button.unpressed.image.color: #888888 window.inactive.button.pressed.bg: flat solid -window.inactive.button.pressed.bg.color: #2d2d2d -window.inactive.button.pressed.image.color: #d64937 +window.inactive.button.pressed.bg.color: #333333 +window.inactive.button.pressed.image.color: #f06860 window.inactive.button.disabled.bg: flat solid -window.inactive.button.disabled.bg.color: #2d2d2d +window.inactive.button.disabled.bg.color: #333333 window.inactive.button.disabled.image.color: #888888 @@ -91,13 +91,13 @@ osd.border.width: 1 osd.border.color: #484848 osd.bg: flat solid -osd.bg.color: #2d2d2d +osd.bg.color: #333333 osd.label.bg: flat solid -osd.label.bg.color: #2d2d2d -osd.label.text.color: #dcdcdc +osd.label.bg.color: #333333 +osd.label.text.color: #eeeeee osd.hilight.bg: flat solid -osd.hilight.bg.color: #d64937 +osd.hilight.bg.color: #f06860 osd.unhilight.bg: flat solid osd.unhilight.bg.color: #888888 @@ -114,7 +114,7 @@ osd.button.focused.bg: flat solid border osd.button.focused.bg.color: #303030 osd.button.focused.*.border.color: #1e1e1e -osd.button.focused.box.color: #d64937 +osd.button.focused.box.color: #f06860 # Fonts From 585d4e491db6176f502b0f67ec6a00f4712d34c0 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 20 Dec 2014 01:14:22 +0530 Subject: [PATCH 35/73] Move widgets to separate folder --- gtk-3.0/scss/widgets.scss | 40 ++++++++++++---------- gtk-3.0/scss/{ => widgets}/_base.scss | 4 --- gtk-3.0/scss/{ => widgets}/_button.scss | 4 --- gtk-3.0/scss/{ => widgets}/_calendar.scss | 4 --- gtk-3.0/scss/{ => widgets}/_choosers.scss | 4 --- gtk-3.0/scss/{ => widgets}/_entry.scss | 4 --- gtk-3.0/scss/{ => widgets}/_grid.scss | 4 --- gtk-3.0/scss/{ => widgets}/_infobar.scss | 2 -- gtk-3.0/scss/{ => widgets}/_menu.scss | 2 -- gtk-3.0/scss/{ => widgets}/_misc.scss | 4 --- gtk-3.0/scss/{ => widgets}/_notebook.scss | 3 +- gtk-3.0/scss/{ => widgets}/_osd.scss | 2 -- gtk-3.0/scss/{ => widgets}/_progress.scss | 4 --- gtk-3.0/scss/{ => widgets}/_scrollbar.scss | 3 -- gtk-3.0/scss/{ => widgets}/_sidebar.scss | 4 --- gtk-3.0/scss/{ => widgets}/_spinner.scss | 4 --- gtk-3.0/scss/{ => widgets}/_toggle.scss | 4 --- gtk-3.0/scss/{ => widgets}/_toolbar.scss | 3 +- gtk-3.0/scss/{ => widgets}/_view.scss | 4 --- gtk-3.0/scss/{ => widgets}/_window.scss | 4 --- 20 files changed, 23 insertions(+), 84 deletions(-) rename gtk-3.0/scss/{ => widgets}/_base.scss (98%) rename gtk-3.0/scss/{ => widgets}/_button.scss (99%) rename gtk-3.0/scss/{ => widgets}/_calendar.scss (90%) rename gtk-3.0/scss/{ => widgets}/_choosers.scss (98%) rename gtk-3.0/scss/{ => widgets}/_entry.scss (98%) rename gtk-3.0/scss/{ => widgets}/_grid.scss (95%) rename gtk-3.0/scss/{ => widgets}/_infobar.scss (94%) rename gtk-3.0/scss/{ => widgets}/_menu.scss (99%) rename gtk-3.0/scss/{ => widgets}/_misc.scss (98%) rename gtk-3.0/scss/{ => widgets}/_notebook.scss (98%) rename gtk-3.0/scss/{ => widgets}/_osd.scss (99%) rename gtk-3.0/scss/{ => widgets}/_progress.scss (99%) rename gtk-3.0/scss/{ => widgets}/_scrollbar.scss (96%) rename gtk-3.0/scss/{ => widgets}/_sidebar.scss (98%) rename gtk-3.0/scss/{ => widgets}/_spinner.scss (93%) rename gtk-3.0/scss/{ => widgets}/_toggle.scss (98%) rename gtk-3.0/scss/{ => widgets}/_toolbar.scss (98%) rename gtk-3.0/scss/{ => widgets}/_view.scss (99%) rename gtk-3.0/scss/{ => widgets}/_window.scss (96%) diff --git a/gtk-3.0/scss/widgets.scss b/gtk-3.0/scss/widgets.scss index e5613bf..3dfd4ff 100755 --- a/gtk-3.0/scss/widgets.scss +++ b/gtk-3.0/scss/widgets.scss @@ -1,24 +1,26 @@ @import "functions"; +@import "global"; @import "colors"; -@import "base"; -@import "button"; -@import "entry"; -@import "calendar"; -@import "choosers"; -@import "grid"; -@import "infobar"; -@import "menu"; -@import "misc"; -@import "notebook"; -@import "osd"; -@import "progress"; -@import "scrollbar"; -@import "sidebar"; -@import "spinner"; -@import "toggle"; -@import "toolbar"; -@import "view"; -@import "window"; + +@import "widgets/base"; +@import "widgets/button"; +@import "widgets/entry"; +@import "widgets/calendar"; +@import "widgets/choosers"; +@import "widgets/grid"; +@import "widgets/infobar"; +@import "widgets/menu"; +@import "widgets/misc"; +@import "widgets/notebook"; +@import "widgets/osd"; +@import "widgets/progress"; +@import "widgets/scrollbar"; +@import "widgets/sidebar"; +@import "widgets/spinner"; +@import "widgets/toggle"; +@import "widgets/toolbar"; +@import "widgets/view"; +@import "widgets/window"; /************** diff --git a/gtk-3.0/scss/_base.scss b/gtk-3.0/scss/widgets/_base.scss similarity index 98% rename from gtk-3.0/scss/_base.scss rename to gtk-3.0/scss/widgets/_base.scss index e9afca8..d2f95c7 100755 --- a/gtk-3.0/scss/_base.scss +++ b/gtk-3.0/scss/widgets/_base.scss @@ -1,7 +1,3 @@ -@import "functions"; -@import "global"; - - /************** ! GTK settings ***************/ diff --git a/gtk-3.0/scss/_button.scss b/gtk-3.0/scss/widgets/_button.scss similarity index 99% rename from gtk-3.0/scss/_button.scss rename to gtk-3.0/scss/widgets/_button.scss index f5ff5c6..5ddeb6c 100755 --- a/gtk-3.0/scss/_button.scss +++ b/gtk-3.0/scss/widgets/_button.scss @@ -1,7 +1,3 @@ -@import "functions"; -@import "global"; - - /********* ! Buttons **********/ diff --git a/gtk-3.0/scss/_calendar.scss b/gtk-3.0/scss/widgets/_calendar.scss similarity index 90% rename from gtk-3.0/scss/_calendar.scss rename to gtk-3.0/scss/widgets/_calendar.scss index 6eacde0..6f2a34b 100644 --- a/gtk-3.0/scss/_calendar.scss +++ b/gtk-3.0/scss/widgets/_calendar.scss @@ -1,7 +1,3 @@ -@import "functions"; -@import "global"; - - /********** ! Calendar ***********/ diff --git a/gtk-3.0/scss/_choosers.scss b/gtk-3.0/scss/widgets/_choosers.scss similarity index 98% rename from gtk-3.0/scss/_choosers.scss rename to gtk-3.0/scss/widgets/_choosers.scss index 2d1a1cf..82c1283 100644 --- a/gtk-3.0/scss/_choosers.scss +++ b/gtk-3.0/scss/widgets/_choosers.scss @@ -1,7 +1,3 @@ -@import "functions"; -@import "global"; - - /*************** ! Color chooser ****************/ diff --git a/gtk-3.0/scss/_entry.scss b/gtk-3.0/scss/widgets/_entry.scss similarity index 98% rename from gtk-3.0/scss/_entry.scss rename to gtk-3.0/scss/widgets/_entry.scss index b0a3474..184dac5 100755 --- a/gtk-3.0/scss/_entry.scss +++ b/gtk-3.0/scss/widgets/_entry.scss @@ -1,7 +1,3 @@ -@import "functions"; -@import "global"; - - /******* ! Entry ********/ diff --git a/gtk-3.0/scss/_grid.scss b/gtk-3.0/scss/widgets/_grid.scss similarity index 95% rename from gtk-3.0/scss/_grid.scss rename to gtk-3.0/scss/widgets/_grid.scss index 403e592..fbbfd56 100644 --- a/gtk-3.0/scss/_grid.scss +++ b/gtk-3.0/scss/widgets/_grid.scss @@ -1,7 +1,3 @@ -@import "functions"; -@import "global"; - - /****************** ! Grid and flowbox *******************/ diff --git a/gtk-3.0/scss/_infobar.scss b/gtk-3.0/scss/widgets/_infobar.scss similarity index 94% rename from gtk-3.0/scss/_infobar.scss rename to gtk-3.0/scss/widgets/_infobar.scss index c5cec55..faf4e5c 100644 --- a/gtk-3.0/scss/_infobar.scss +++ b/gtk-3.0/scss/widgets/_infobar.scss @@ -1,5 +1,3 @@ -@import "functions"; -@import "global"; @import "button"; diff --git a/gtk-3.0/scss/_menu.scss b/gtk-3.0/scss/widgets/_menu.scss similarity index 99% rename from gtk-3.0/scss/_menu.scss rename to gtk-3.0/scss/widgets/_menu.scss index 49aae6c..e5f6cfb 100755 --- a/gtk-3.0/scss/_menu.scss +++ b/gtk-3.0/scss/widgets/_menu.scss @@ -1,5 +1,3 @@ -@import "functions"; -@import "global"; @import "entry"; diff --git a/gtk-3.0/scss/_misc.scss b/gtk-3.0/scss/widgets/_misc.scss similarity index 98% rename from gtk-3.0/scss/_misc.scss rename to gtk-3.0/scss/widgets/_misc.scss index 73ac894..73e64b5 100644 --- a/gtk-3.0/scss/_misc.scss +++ b/gtk-3.0/scss/widgets/_misc.scss @@ -1,7 +1,3 @@ -@import "functions"; -@import "global"; - - /*************** ! Dimmed label * ****************/ diff --git a/gtk-3.0/scss/_notebook.scss b/gtk-3.0/scss/widgets/_notebook.scss similarity index 98% rename from gtk-3.0/scss/_notebook.scss rename to gtk-3.0/scss/widgets/_notebook.scss index defac44..7d5c1ef 100644 --- a/gtk-3.0/scss/_notebook.scss +++ b/gtk-3.0/scss/widgets/_notebook.scss @@ -1,5 +1,4 @@ -@import "functions"; -@import "global"; +@import "button"; /********** diff --git a/gtk-3.0/scss/_osd.scss b/gtk-3.0/scss/widgets/_osd.scss similarity index 99% rename from gtk-3.0/scss/_osd.scss rename to gtk-3.0/scss/widgets/_osd.scss index 673a262..c1cc404 100644 --- a/gtk-3.0/scss/_osd.scss +++ b/gtk-3.0/scss/widgets/_osd.scss @@ -1,5 +1,3 @@ -@import "functions"; -@import "global"; @import "button"; diff --git a/gtk-3.0/scss/_progress.scss b/gtk-3.0/scss/widgets/_progress.scss similarity index 99% rename from gtk-3.0/scss/_progress.scss rename to gtk-3.0/scss/widgets/_progress.scss index 1bb9636..94ec533 100644 --- a/gtk-3.0/scss/_progress.scss +++ b/gtk-3.0/scss/widgets/_progress.scss @@ -1,7 +1,3 @@ -@import "functions"; -@import "global"; - - /***************** ! Progress bars * ******************/ diff --git a/gtk-3.0/scss/_scrollbar.scss b/gtk-3.0/scss/widgets/_scrollbar.scss similarity index 96% rename from gtk-3.0/scss/_scrollbar.scss rename to gtk-3.0/scss/widgets/_scrollbar.scss index 7777280..b2548ed 100644 --- a/gtk-3.0/scss/_scrollbar.scss +++ b/gtk-3.0/scss/widgets/_scrollbar.scss @@ -1,6 +1,3 @@ -@import "functions"; -@import "global"; - /*********** ! Scrollbar ************/ diff --git a/gtk-3.0/scss/_sidebar.scss b/gtk-3.0/scss/widgets/_sidebar.scss similarity index 98% rename from gtk-3.0/scss/_sidebar.scss rename to gtk-3.0/scss/widgets/_sidebar.scss index 78e1b89..af417ff 100755 --- a/gtk-3.0/scss/_sidebar.scss +++ b/gtk-3.0/scss/widgets/_sidebar.scss @@ -1,7 +1,3 @@ -@import "functions"; -@import "global"; - - /********* ! Sidebar **********/ diff --git a/gtk-3.0/scss/_spinner.scss b/gtk-3.0/scss/widgets/_spinner.scss similarity index 93% rename from gtk-3.0/scss/_spinner.scss rename to gtk-3.0/scss/widgets/_spinner.scss index ee50103..395c21c 100644 --- a/gtk-3.0/scss/_spinner.scss +++ b/gtk-3.0/scss/widgets/_spinner.scss @@ -1,7 +1,3 @@ -@import "functions"; -@import "global"; - - /******************* ! Spinner animation ********************/ diff --git a/gtk-3.0/scss/_toggle.scss b/gtk-3.0/scss/widgets/_toggle.scss similarity index 98% rename from gtk-3.0/scss/_toggle.scss rename to gtk-3.0/scss/widgets/_toggle.scss index 70c1f39..cf4936c 100755 --- a/gtk-3.0/scss/_toggle.scss +++ b/gtk-3.0/scss/widgets/_toggle.scss @@ -1,7 +1,3 @@ -@import "functions"; -@import "global"; - - /*********************** ! Check and Radio items ************************/ diff --git a/gtk-3.0/scss/_toolbar.scss b/gtk-3.0/scss/widgets/_toolbar.scss similarity index 98% rename from gtk-3.0/scss/_toolbar.scss rename to gtk-3.0/scss/widgets/_toolbar.scss index 094d398..057f817 100755 --- a/gtk-3.0/scss/_toolbar.scss +++ b/gtk-3.0/scss/widgets/_toolbar.scss @@ -1,7 +1,6 @@ -@import "functions"; -@import "global"; @import "button"; + /********* ! Toolbar **********/ diff --git a/gtk-3.0/scss/_view.scss b/gtk-3.0/scss/widgets/_view.scss similarity index 99% rename from gtk-3.0/scss/_view.scss rename to gtk-3.0/scss/widgets/_view.scss index a8cf5b4..bda6711 100644 --- a/gtk-3.0/scss/_view.scss +++ b/gtk-3.0/scss/widgets/_view.scss @@ -1,7 +1,3 @@ -@import "functions"; -@import "global"; - - /*************** ! Generic views ****************/ diff --git a/gtk-3.0/scss/_window.scss b/gtk-3.0/scss/widgets/_window.scss similarity index 96% rename from gtk-3.0/scss/_window.scss rename to gtk-3.0/scss/widgets/_window.scss index 0be7a63..8f354c8 100755 --- a/gtk-3.0/scss/_window.scss +++ b/gtk-3.0/scss/widgets/_window.scss @@ -1,7 +1,3 @@ -@import "functions"; -@import "global"; - - /************** ! Window frame ***************/ From 4f7284529cd1725293c52ea4fd5da0d6b7643d4d Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 20 Dec 2014 02:48:47 +0530 Subject: [PATCH 36/73] Style GNOME apps --- gtk-3.0/gtk.css | 2 +- gtk-3.0/scss/_global.scss | 3 + gtk-3.0/scss/apps/_gnome-applications.scss | 350 +++++++++++++++++++++ 3 files changed, 354 insertions(+), 1 deletion(-) create mode 100644 gtk-3.0/scss/apps/_gnome-applications.scss diff --git a/gtk-3.0/gtk.css b/gtk-3.0/gtk.css index 27ebee0..a245e70 100755 --- a/gtk-3.0/gtk.css +++ b/gtk-3.0/gtk.css @@ -1,2 +1,2 @@ -@import url("dist/widgets.css"); +@import url("dist/gtk.css"); diff --git a/gtk-3.0/scss/_global.scss b/gtk-3.0/scss/_global.scss index c1d6911..86f89e7 100755 --- a/gtk-3.0/scss/_global.scss +++ b/gtk-3.0/scss/_global.scss @@ -42,6 +42,9 @@ $menu_fg_color: $dark_fg_color; $menubar_bg_color: $dark_bg_color; $menubar_fg_color: $dark_fg_color; +$panel_bg_color: $dark_bg_color; +$panel_fg_color: $dark_fg_color; + $osd_bg: $dark_bg_color; $osd_fg: $dark_fg_color; diff --git a/gtk-3.0/scss/apps/_gnome-applications.scss b/gtk-3.0/scss/apps/_gnome-applications.scss new file mode 100644 index 0000000..2c46b88 --- /dev/null +++ b/gtk-3.0/scss/apps/_gnome-applications.scss @@ -0,0 +1,350 @@ +/*********************** + ! Fallback mode panel * +************************/ + +@include exports("panel") { + %panel { + @include linear-gradient($panel_bg_color); + + color: $panel_fg_color; + } + + PanelWidget, PanelApplet, PanelToplevel { + @extend %panel; + + padding: 0; + } + + PanelApplet { + border: none; + + .button { + -GtkButton-inner-border: 2; + + border-width: 0 1px; + border-radius: 0; + border-color: transparent; + background-color: transparent; + background-image: none; + color: $panel_fg_color; + + &:hover, &:prelight { + @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.11)); + + border-color: mix($panel_bg_color, $panel_fg_color, 0.11); + color: shade($panel_fg_color, 1.08); + } + + &:active, &:checked { + @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.21), to top); + + border-color: mix($panel_bg_color, $panel_fg_color, 0.21); + color: shade($panel_fg_color, 1.08); + + &:prelight { + @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.31), to top); + + border-color: mix($panel_bg_color, $panel_fg_color, 0.31); + } + } + } + } + + PanelSeparator { + @extend %panel; + + border: none; + } + + PanelApplet > GtkMenuBar.menubar, PanelMenuBar.menubar, .gnome-panel-menu-bar { + &.menuitem { + @extend %panel; + + border: none; + + -PanelMenuBar-icon-visible: true; + } + } + + PanelAppletFrame { + @extend %panel; + + border: none; + } + + WnckPager, WnckTasklist { @extend %panel; } +} + + +/************ + ! Nautilus * +*************/ + +@include exports("nautilus") { + .nautilus-desktop.nautilus-canvas-item { + color: white; + text-shadow: 1px 1px black; + + &:active { color: $fg_color; } + + &:selected { color: $selected_fg_color; } + + &:active, &:prelight, &:selected { text-shadow: none; } + } + + NautilusWindow { + .toolbar { + border-width: 0 0 1px; + border-style: solid; + border-color: shade($toolbar_bg_color, 0.8); + } + + .sidebar .frame { border: none; } + + > GtkGrid > .pane-separator { + border-width: 0 1px 0 0; + border-style: solid; + + &, &:hover { + border-color: shade($bg_color, 0.8); + background-color: $bg_color; + } + } + } + + NautilusNotebook { + &.notebook { + border-right-width: 0; + border-left-width: 0; + border-bottom-width: 0; + } + + .frame { border: none; } + } + + NautilusQueryEditor { + .search-bar.toolbar { + border-top-width: 0; + border-bottom-width: 0; + } + + .toolbar { + padding-top: $spacing - 1px; + padding-bottom: $spacing - 2px; + border-width: 1px 0 0 0; + border-style: solid; + border-color: $toolbar_bg_color; + background-color: shade($toolbar_bg_color, 0.9); + + &:nth-child(2) { border-color: shade($toolbar_bg_color, 0.8); } + + &.search-bar { + border-top-width: 0; + border-bottom-width: 0; + } + + &, &.search-bar { + &:only-child { + border-bottom-width: 1px; + border-bottom-color: shade($toolbar_bg_color, 0.8); + } + } + + } + } +} + + +/********* + ! Gedit * +**********/ + +@include exports("gedit") { + GeditWindow .pane-separator { + border-width: 0 1px 0 0; + border-style: solid; + + &, &:hover { + border-color: shade($bg_color, 0.8); + background-color: $bg_color; + } + } + + .gedit-document-panel { + background-color: $bg_color; + color: mix($fg_color, $bg_color, 0.1); + + .list-row { + padding: $spacing; + + .button { + padding: 1px; + border-radius: $roundness; + border-style: solid; + border-color: transparent; + border-width: 1px; + background-color: transparent; + background-image: none; + color: transparent; + icon-shadow: none; + } + } + + .prelight-row .button { + border-color: alpha(black, 0.1); + color: alpha(white, 0.8); + + &:active { + border-color: alpha(black, 0.2); + background-color: alpha(black, 0.08); + color: white; + } + } + + list-row, .prelight-row { + .button:hover { + border-color: alpha(black, 0.1); + color: white; + } + } + } + + .gedit-document-panel-group-row { + &, &:hover { + border-top: 1px solid shade($bg_color, 0.9); + background-color: $bg_color; + } + } + + .gedit-document-panel-document-row { + &:hover { background-color: shade($bg_color, 1.05); } + + &:selected { + &, &:hover { + background-color: $selected_bg_color; + color: $selected_fg_color; + } + } + } + + .gedit-document-panel-dragged-row { + border: 1px solid alpha(black, 0.1); + background-color: alpha(black, 0.5); + color: white; + } + + .gedit-document-panel-placeholder-row { + border: none; + background-color: alpha(black, 0.08); + transition: all 200ms ease-in; + } + + GeditStatusbar { border-top: 1px solid shade($bg_color, 0.8); } + + GeditStatusbar GeditSmallButton, GeditStatusMenuButton { + text-shadow: none; + + .button { + border-style: solid; + border-width: 0 1px; + border-color: transparent; + border-radius: 0; + padding: 1px 6px 2px 4px; + + &:hover, &:active, &:active:hover { border-color: shade($bg_color, 0.8); } + + &:active { + background-color: shade($bg_color, 0.95); + color: $fg_color; + } + } + } + + GeditViewFrame .gedit-search-slider { + padding: $spacing; + border-radius: 0 0 $roundness $roundness; + border-width: 0 1px 1px 1px; + border-style: solid; + border-color: shade($base_color, 0.8); + background-color: $base_color; + + .not-found { + background-color: $error_bg_color; + background-image: none; + color: $error_fg_color; + + &:selected { + background-color: $selected_bg_color; + color: $selected_fg_color; + } + } + } + + GeditFileBrowserWidget .toolbar { + padding: $spacing / 2; + border-top: none; + background-color: $bg_color; + background-image: none; + } + + .gedit-search-entry-occurrences-tag { + margin: $spacing / 2; + padding: $spacing / 2; + color: mix($text_color, $base_color, 0.5); + } +} + + +/*************** + ! Font-viewer * +****************/ + +@include exports("fontviewer") { + SushiFontWidget { + padding: $spacing ($spacing * 2); + } +} + + +/************* + ! Gucharmap * +**************/ + +@include exports("charmap") { + GucharmapChartable { + background-color: $base_color; + color: $text_color; + + &:focus, &:hover, &:active, &:selected { + background-color: $selected_bg_color; + color: $selected_fg_color; + } + } +} + + +/************* + ! Evolution * +**************/ + +@include exports("evolution") { + EPreviewPane .entry { + background-color: $base_color; + color: $text_color; + } +} + + +/******************* + * Gnome Bluetooth * +********************/ + +@include exports("gnome-bluetooth") { + GtkEntry.entry.pin-entry { + font: regular 50; + padding-left: 25px; + padding-right: 25px; + } + + GtkLabel.pin-label { font: regular 50; } +} From e42253e9976fc4fab07d47396c2cddef5cf4fa28 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 20 Dec 2014 03:11:02 +0530 Subject: [PATCH 37/73] Style more widgets --- gtk-3.0/scss/_functions.scss | 2 +- gtk-3.0/scss/_global.scss | 2 +- gtk-3.0/scss/apps/_gnome-applications.scss | 33 ++++++++------------ gtk-3.0/scss/apps/_nemo.scss | 36 ++++++++++++++++++++++ gtk-3.0/scss/apps/_synaptic.scss | 15 +++++++++ gtk-3.0/scss/{widgets.scss => gtk.scss} | 6 ++++ gtk-3.0/scss/widgets/_base.scss | 8 ++--- gtk-3.0/scss/widgets/_calendar.scss | 6 ++++ gtk-3.0/scss/widgets/_grid.scss | 2 +- gtk-3.0/scss/widgets/_view.scss | 2 +- 10 files changed, 83 insertions(+), 29 deletions(-) create mode 100644 gtk-3.0/scss/apps/_nemo.scss create mode 100644 gtk-3.0/scss/apps/_synaptic.scss rename gtk-3.0/scss/{widgets.scss => gtk.scss} (98%) diff --git a/gtk-3.0/scss/_functions.scss b/gtk-3.0/scss/_functions.scss index 6abc15c..1986d84 100755 --- a/gtk-3.0/scss/_functions.scss +++ b/gtk-3.0/scss/_functions.scss @@ -39,7 +39,7 @@ $modules: () !default; } @function border_insensitive($color) { - @return shade($color, ($contrast + .1)); + @return shade($color, ($contrast + .10)); } @mixin linear-gradient($color, $direction: to bottom) { diff --git a/gtk-3.0/scss/_global.scss b/gtk-3.0/scss/_global.scss index 86f89e7..3c51646 100755 --- a/gtk-3.0/scss/_global.scss +++ b/gtk-3.0/scss/_global.scss @@ -53,6 +53,6 @@ $lightdm_fg_color: $dark_fg_color; // widget styles $roundness: 2px; -$spacing: 6px; +$spacing: 5px; $gradient: 0; $contrast: .7; diff --git a/gtk-3.0/scss/apps/_gnome-applications.scss b/gtk-3.0/scss/apps/_gnome-applications.scss index 2c46b88..91c4f34 100644 --- a/gtk-3.0/scss/apps/_gnome-applications.scss +++ b/gtk-3.0/scss/apps/_gnome-applications.scss @@ -96,7 +96,7 @@ .toolbar { border-width: 0 0 1px; border-style: solid; - border-color: shade($toolbar_bg_color, 0.8); + border-color: border_normal($toolbar_bg_color); } .sidebar .frame { border: none; } @@ -106,7 +106,7 @@ border-style: solid; &, &:hover { - border-color: shade($bg_color, 0.8); + border-color: shade($bg_color, ($contrast + .10)); background-color: $bg_color; } } @@ -136,7 +136,7 @@ border-color: $toolbar_bg_color; background-color: shade($toolbar_bg_color, 0.9); - &:nth-child(2) { border-color: shade($toolbar_bg_color, 0.8); } + &:nth-child(2) { border-color: border_normal($toolbar_bg_color); } &.search-bar { border-top-width: 0; @@ -146,7 +146,7 @@ &, &.search-bar { &:only-child { border-bottom-width: 1px; - border-bottom-color: shade($toolbar_bg_color, 0.8); + border-bottom-color: border_normal($toolbar_bg_color); } } @@ -165,7 +165,7 @@ border-style: solid; &, &:hover { - border-color: shade($bg_color, 0.8); + border-color: shade($bg_color, ($contrast + .10)); background-color: $bg_color; } } @@ -211,7 +211,7 @@ .gedit-document-panel-group-row { &, &:hover { - border-top: 1px solid shade($bg_color, 0.9); + border-top: 1px solid shade($bg_color, ($contrast + .10)); background-color: $bg_color; } } @@ -220,10 +220,7 @@ &:hover { background-color: shade($bg_color, 1.05); } &:selected { - &, &:hover { - background-color: $selected_bg_color; - color: $selected_fg_color; - } + &, &:hover { @extend %selected; } } } @@ -239,7 +236,7 @@ transition: all 200ms ease-in; } - GeditStatusbar { border-top: 1px solid shade($bg_color, 0.8); } + GeditStatusbar { border-top: 1px solid border_normal($bg_color); } GeditStatusbar GeditSmallButton, GeditStatusMenuButton { text-shadow: none; @@ -251,7 +248,7 @@ border-radius: 0; padding: 1px 6px 2px 4px; - &:hover, &:active, &:active:hover { border-color: shade($bg_color, 0.8); } + &:hover, &:active, &:active:hover { border-color: border_normal($bg_color); } &:active { background-color: shade($bg_color, 0.95); @@ -265,7 +262,7 @@ border-radius: 0 0 $roundness $roundness; border-width: 0 1px 1px 1px; border-style: solid; - border-color: shade($base_color, 0.8); + border-color: border_normal($base_color); background-color: $base_color; .not-found { @@ -273,10 +270,7 @@ background-image: none; color: $error_fg_color; - &:selected { - background-color: $selected_bg_color; - color: $selected_fg_color; - } + &:selected { @extend %selected; } } } @@ -315,10 +309,7 @@ background-color: $base_color; color: $text_color; - &:focus, &:hover, &:active, &:selected { - background-color: $selected_bg_color; - color: $selected_fg_color; - } + &:focus, &:hover, &:active, &:selected { @extend %selected; } } } diff --git a/gtk-3.0/scss/apps/_nemo.scss b/gtk-3.0/scss/apps/_nemo.scss new file mode 100644 index 0000000..63518aa --- /dev/null +++ b/gtk-3.0/scss/apps/_nemo.scss @@ -0,0 +1,36 @@ +/******** + ! Nemo * +*********/ + +@include exports("nemo") { + .nemo-desktop.nemo-canvas-item { + color: white; + text-shadow: 1px 1px black; + + &:active { color: $fg_color; } + + &:selected { color: $selected_fg_color; } + + &:active, &:prelight, &:selected { text-shadow: none; } + } + + NemoPathbarButton { + @include button($toolbar_bg_color, $toolbar_fg_color); + + -NemoPathbarButton-border-radius: $roundness; + } + + NemoPlacesTreeView { + -NemoPlacesTreeView-disk-full-bg-color: shade($toolbar_bg_color, 0.8); + -NemoPlacesTreeView-disk-full-fg-color: $selected_bg_color; + -NemoPlacesTreeView-disk-full-bar-width: 1px; + -NemoPlacesTreeView-disk-full-bar-radius: 1px; + -NemoPlacesTreeView-disk-full-bottom-padding: 2px; + -NemoPlacesTreeView-disk-full-max-length: 70px; + + &:selected { + -NemoPlacesTreeView-disk-full-bg-color: $selected_fg_color; + -NemoPlacesTreeView-disk-full-fg-color: shade($selected_bg_color, 1.2); + } + } +} diff --git a/gtk-3.0/scss/apps/_synaptic.scss b/gtk-3.0/scss/apps/_synaptic.scss new file mode 100644 index 0000000..ca67412 --- /dev/null +++ b/gtk-3.0/scss/apps/_synaptic.scss @@ -0,0 +1,15 @@ +/************ + ! Synaptic * +*************/ + +@include exports("synaptic") { + GtkWindow > GtkVBox > .dock { + &, > GtkHBox > GtkToolbar { + @include linear-gradient($toolbar-bg-color); + + padding: $spacing; + border: none; + color: $toolbar_fg_color; + } + } +} diff --git a/gtk-3.0/scss/widgets.scss b/gtk-3.0/scss/gtk.scss similarity index 98% rename from gtk-3.0/scss/widgets.scss rename to gtk-3.0/scss/gtk.scss index 3dfd4ff..e191304 100755 --- a/gtk-3.0/scss/widgets.scss +++ b/gtk-3.0/scss/gtk.scss @@ -2,6 +2,7 @@ @import "global"; @import "colors"; + @import "widgets/base"; @import "widgets/button"; @import "widgets/entry"; @@ -23,6 +24,11 @@ @import "widgets/window"; +@import "apps/gnome-applications"; +@import "apps/nemo"; +@import "apps/synaptic"; + + /************** * action-bar * **************/ diff --git a/gtk-3.0/scss/widgets/_base.scss b/gtk-3.0/scss/widgets/_base.scss index d2f95c7..a1916f6 100755 --- a/gtk-3.0/scss/widgets/_base.scss +++ b/gtk-3.0/scss/widgets/_base.scss @@ -48,7 +48,7 @@ ! Base states *************/ -%selected_items { +%selected { &, &:focus { background-color: $selected_bg_color; color: $selected_fg_color; @@ -56,7 +56,7 @@ } * { - &:selected { @extend %selected_items; } + &:selected { @extend %selected; } &:insensitive, &:insensitive:insensitive { color: mix($fg_color, $bg_color, 0.50); } @@ -103,7 +103,7 @@ color: mix($fg_color, $bg_color, 0.50); } - &:selected { @extend %selected_items; } + &:selected { @extend %selected; } } GtkImage, GtkLabel, GtkBox, GtkGrid { @@ -117,7 +117,7 @@ GtkLabel { @extend .dim-label; } - &:selected { @extend %selected_items; } + &:selected { @extend %selected; } &:insensitive { color: mix($fg_color, $bg_color, 0.50); } } diff --git a/gtk-3.0/scss/widgets/_calendar.scss b/gtk-3.0/scss/widgets/_calendar.scss index 6f2a34b..ee88e64 100644 --- a/gtk-3.0/scss/widgets/_calendar.scss +++ b/gtk-3.0/scss/widgets/_calendar.scss @@ -19,5 +19,11 @@ &.highlight { color: $selected_bg_color; } } + + /* gnome-calendar */ + .calendar-view { + background-color: $base_color; + color: $text_color; + } } diff --git a/gtk-3.0/scss/widgets/_grid.scss b/gtk-3.0/scss/widgets/_grid.scss index fbbfd56..877707c 100644 --- a/gtk-3.0/scss/widgets/_grid.scss +++ b/gtk-3.0/scss/widgets/_grid.scss @@ -37,7 +37,7 @@ border-radius: $roundness; &:selected { - @extend %selected_items; + @extend %selected; outline-offset: -2px; } diff --git a/gtk-3.0/scss/widgets/_view.scss b/gtk-3.0/scss/widgets/_view.scss index bda6711..6a96596 100644 --- a/gtk-3.0/scss/widgets/_view.scss +++ b/gtk-3.0/scss/widgets/_view.scss @@ -12,7 +12,7 @@ color: mix($text_color, $base_color, 0.5); } - &:selected, &:selected:focus { @extend %selected_items; } + &:selected, &:selected:focus { @extend %selected; } } .cell { From 04b7d110accf668451f0173ffec6ccdc9612a7a4 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 20 Dec 2014 03:23:56 +0530 Subject: [PATCH 38/73] Lighter separators --- gtk-3.0/scss/_functions.scss | 4 ++-- gtk-3.0/scss/apps/_gnome-applications.scss | 6 +++--- gtk-3.0/scss/widgets/_button.scss | 4 ++-- gtk-3.0/scss/widgets/_choosers.scss | 2 +- gtk-3.0/scss/widgets/_menu.scss | 2 +- gtk-3.0/scss/widgets/_osd.scss | 2 +- gtk-3.0/scss/widgets/_toolbar.scss | 2 +- gtk-3.0/scss/widgets/_view.scss | 2 +- 8 files changed, 12 insertions(+), 12 deletions(-) diff --git a/gtk-3.0/scss/_functions.scss b/gtk-3.0/scss/_functions.scss index 1986d84..9ea3a1b 100755 --- a/gtk-3.0/scss/_functions.scss +++ b/gtk-3.0/scss/_functions.scss @@ -35,11 +35,11 @@ $modules: () !default; } @function border_active($color) { - @return shade($color, ($contrast - .10)); + @return shade($color, ($contrast - .1)); } @function border_insensitive($color) { - @return shade($color, ($contrast + .10)); + @return shade($color, ($contrast + .1)); } @mixin linear-gradient($color, $direction: to bottom) { diff --git a/gtk-3.0/scss/apps/_gnome-applications.scss b/gtk-3.0/scss/apps/_gnome-applications.scss index 91c4f34..f2679f6 100644 --- a/gtk-3.0/scss/apps/_gnome-applications.scss +++ b/gtk-3.0/scss/apps/_gnome-applications.scss @@ -106,7 +106,7 @@ border-style: solid; &, &:hover { - border-color: shade($bg_color, ($contrast + .10)); + border-color: shade($bg_color, ($contrast + .1)); background-color: $bg_color; } } @@ -165,7 +165,7 @@ border-style: solid; &, &:hover { - border-color: shade($bg_color, ($contrast + .10)); + border-color: shade($bg_color, ($contrast + .1)); background-color: $bg_color; } } @@ -211,7 +211,7 @@ .gedit-document-panel-group-row { &, &:hover { - border-top: 1px solid shade($bg_color, ($contrast + .10)); + border-top: 1px solid shade($bg_color, ($contrast + .1)); background-color: $bg_color; } } diff --git a/gtk-3.0/scss/widgets/_button.scss b/gtk-3.0/scss/widgets/_button.scss index 5ddeb6c..1b353b4 100755 --- a/gtk-3.0/scss/widgets/_button.scss +++ b/gtk-3.0/scss/widgets/_button.scss @@ -150,7 +150,7 @@ &.separator, .separator { border: 1px solid currentColor; - color: shade($bg, ($contrast + .05)); + color: shade($bg, ($contrast + .1)); &:insensitive { color: shade($bg, .85); } } @@ -222,7 +222,7 @@ &:hover { border-color: shade($bg_color, 0.7); - background-color: shade($bg_color, 1.10); + background-color: shade($bg_color, 1.1); background-image: none; } diff --git a/gtk-3.0/scss/widgets/_choosers.scss b/gtk-3.0/scss/widgets/_choosers.scss index 82c1283..6b00d52 100644 --- a/gtk-3.0/scss/widgets/_choosers.scss +++ b/gtk-3.0/scss/widgets/_choosers.scss @@ -111,7 +111,7 @@ border-style: solid; border-color: currentColor; background-color: $bg_color; - color: border_normal($bg_color); + color: shade($bg_color, ($contrast + .1)); } } diff --git a/gtk-3.0/scss/widgets/_menu.scss b/gtk-3.0/scss/widgets/_menu.scss index e5f6cfb..8d0bdf7 100755 --- a/gtk-3.0/scss/widgets/_menu.scss +++ b/gtk-3.0/scss/widgets/_menu.scss @@ -109,7 +109,7 @@ -GtkWidget-separator-height: 1; border-style: none; - color: shade($menu_bg_color, .9); + color: shade($menu_bg_color, ($contrast + .1)); } &.button { diff --git a/gtk-3.0/scss/widgets/_osd.scss b/gtk-3.0/scss/widgets/_osd.scss index c1cc404..178283d 100644 --- a/gtk-3.0/scss/widgets/_osd.scss +++ b/gtk-3.0/scss/widgets/_osd.scss @@ -33,7 +33,7 @@ GtkOverlay.osd { background-image: none; color: $osd_fg; - .separator { color: shade($osd_bg, 0.9); } + .separator { color: shade($osd_bg, ($contrast + .1)); } } /* used by gnome-settings-daemon's media-keys OSD */ diff --git a/gtk-3.0/scss/widgets/_toolbar.scss b/gtk-3.0/scss/widgets/_toolbar.scss index 057f817..c9d37c2 100755 --- a/gtk-3.0/scss/widgets/_toolbar.scss +++ b/gtk-3.0/scss/widgets/_toolbar.scss @@ -41,7 +41,7 @@ } GtkSeparatorToolItem, .separator, .separator:insensitive { - color: border_normal($bg); + color: shade($bg, ($contrast + .1)); border-color: currentColor; -GtkWidget-window-dragging: true; diff --git a/gtk-3.0/scss/widgets/_view.scss b/gtk-3.0/scss/widgets/_view.scss index 6a96596..2febe0a 100644 --- a/gtk-3.0/scss/widgets/_view.scss +++ b/gtk-3.0/scss/widgets/_view.scss @@ -134,7 +134,7 @@ @include exports("separator") { .view.separator, .separator { - color: shade($bg_color, ($contrast + .10)); + color: shade($bg_color, ($contrast + .1)); border: 1px solid currentColor; } } From 249f86d8643314b5873018e7446d9a302a1c3845 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 20 Dec 2014 16:11:38 +0530 Subject: [PATCH 39/73] Split gnome-applications to different files --- gtk-3.0/scss/apps/_gedit.scss | 132 ++++++++ gtk-3.0/scss/apps/_gnome-applications.scss | 341 --------------------- gtk-3.0/scss/apps/_nautilus.scss | 77 +++++ gtk-3.0/scss/apps/_panel.scss | 76 +++++ gtk-3.0/scss/gtk.scss | 4 +- gtk-3.0/scss/widgets/_misc.scss | 51 +++ 6 files changed, 339 insertions(+), 342 deletions(-) create mode 100644 gtk-3.0/scss/apps/_gedit.scss delete mode 100644 gtk-3.0/scss/apps/_gnome-applications.scss create mode 100644 gtk-3.0/scss/apps/_nautilus.scss create mode 100644 gtk-3.0/scss/apps/_panel.scss diff --git a/gtk-3.0/scss/apps/_gedit.scss b/gtk-3.0/scss/apps/_gedit.scss new file mode 100644 index 0000000..86ec7a5 --- /dev/null +++ b/gtk-3.0/scss/apps/_gedit.scss @@ -0,0 +1,132 @@ +/********* + ! Gedit * +**********/ + +@include exports("gedit") { + GeditWindow .pane-separator { + border-width: 0 1px 0 0; + border-style: solid; + + &, &:hover { + border-color: shade($bg_color, ($contrast + .1)); + background-color: $bg_color; + } + } + + .gedit-document-panel { + background-color: $bg_color; + color: mix($fg_color, $bg_color, 0.1); + + .list-row { + padding: $spacing; + + .button { + padding: 1px; + border-radius: $roundness; + border-style: solid; + border-color: transparent; + border-width: 1px; + background-color: transparent; + background-image: none; + color: transparent; + icon-shadow: none; + } + } + + .prelight-row .button { + border-color: alpha(black, 0.1); + color: alpha(white, 0.8); + + &:active { + border-color: alpha(black, 0.2); + background-color: alpha(black, 0.08); + color: white; + } + } + + list-row, .prelight-row { + .button:hover { + border-color: alpha(black, 0.1); + color: white; + } + } + } + + .gedit-document-panel-group-row { + &, &:hover { + border-top: 1px solid shade($bg_color, ($contrast + .1)); + background-color: $bg_color; + } + } + + .gedit-document-panel-document-row { + &:hover { background-color: shade($bg_color, 1.05); } + + &:selected { + &, &:hover { @extend %selected; } + } + } + + .gedit-document-panel-dragged-row { + border: 1px solid alpha(black, 0.1); + background-color: alpha(black, 0.5); + color: white; + } + + .gedit-document-panel-placeholder-row { + border: none; + background-color: alpha(black, 0.08); + transition: all 200ms ease-in; + } + + GeditStatusbar { border-top: 1px solid border_normal($bg_color); } + + GeditStatusbar GeditSmallButton, GeditStatusMenuButton { + text-shadow: none; + + .button { + border-style: solid; + border-width: 0 1px; + border-color: transparent; + border-radius: 0; + padding: 1px 6px 2px 4px; + + &:hover, &:active, &:active:hover { border-color: border_normal($bg_color); } + + &:active { + background-color: shade($bg_color, 0.95); + color: $fg_color; + } + } + } + + GeditViewFrame .gedit-search-slider { + padding: $spacing; + border-radius: 0 0 $roundness $roundness; + border-width: 0 1px 1px 1px; + border-style: solid; + border-color: border_normal($base_color); + background-color: $base_color; + + .not-found { + background-color: $error_bg_color; + background-image: none; + color: $error_fg_color; + + &:selected { @extend %selected; } + } + } + + GeditFileBrowserWidget .toolbar { + padding: $spacing / 2; + border-top: none; + background-color: $bg_color; + background-image: none; + } + + .gedit-search-entry-occurrences-tag { + margin: $spacing / 2; + padding: $spacing / 2; + color: mix($text_color, $base_color, 0.5); + } +} diff --git a/gtk-3.0/scss/apps/_gnome-applications.scss b/gtk-3.0/scss/apps/_gnome-applications.scss deleted file mode 100644 index f2679f6..0000000 --- a/gtk-3.0/scss/apps/_gnome-applications.scss +++ /dev/null @@ -1,341 +0,0 @@ -/*********************** - ! Fallback mode panel * -************************/ - -@include exports("panel") { - %panel { - @include linear-gradient($panel_bg_color); - - color: $panel_fg_color; - } - - PanelWidget, PanelApplet, PanelToplevel { - @extend %panel; - - padding: 0; - } - - PanelApplet { - border: none; - - .button { - -GtkButton-inner-border: 2; - - border-width: 0 1px; - border-radius: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - color: $panel_fg_color; - - &:hover, &:prelight { - @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.11)); - - border-color: mix($panel_bg_color, $panel_fg_color, 0.11); - color: shade($panel_fg_color, 1.08); - } - - &:active, &:checked { - @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.21), to top); - - border-color: mix($panel_bg_color, $panel_fg_color, 0.21); - color: shade($panel_fg_color, 1.08); - - &:prelight { - @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.31), to top); - - border-color: mix($panel_bg_color, $panel_fg_color, 0.31); - } - } - } - } - - PanelSeparator { - @extend %panel; - - border: none; - } - - PanelApplet > GtkMenuBar.menubar, PanelMenuBar.menubar, .gnome-panel-menu-bar { - &.menuitem { - @extend %panel; - - border: none; - - -PanelMenuBar-icon-visible: true; - } - } - - PanelAppletFrame { - @extend %panel; - - border: none; - } - - WnckPager, WnckTasklist { @extend %panel; } -} - - -/************ - ! Nautilus * -*************/ - -@include exports("nautilus") { - .nautilus-desktop.nautilus-canvas-item { - color: white; - text-shadow: 1px 1px black; - - &:active { color: $fg_color; } - - &:selected { color: $selected_fg_color; } - - &:active, &:prelight, &:selected { text-shadow: none; } - } - - NautilusWindow { - .toolbar { - border-width: 0 0 1px; - border-style: solid; - border-color: border_normal($toolbar_bg_color); - } - - .sidebar .frame { border: none; } - - > GtkGrid > .pane-separator { - border-width: 0 1px 0 0; - border-style: solid; - - &, &:hover { - border-color: shade($bg_color, ($contrast + .1)); - background-color: $bg_color; - } - } - } - - NautilusNotebook { - &.notebook { - border-right-width: 0; - border-left-width: 0; - border-bottom-width: 0; - } - - .frame { border: none; } - } - - NautilusQueryEditor { - .search-bar.toolbar { - border-top-width: 0; - border-bottom-width: 0; - } - - .toolbar { - padding-top: $spacing - 1px; - padding-bottom: $spacing - 2px; - border-width: 1px 0 0 0; - border-style: solid; - border-color: $toolbar_bg_color; - background-color: shade($toolbar_bg_color, 0.9); - - &:nth-child(2) { border-color: border_normal($toolbar_bg_color); } - - &.search-bar { - border-top-width: 0; - border-bottom-width: 0; - } - - &, &.search-bar { - &:only-child { - border-bottom-width: 1px; - border-bottom-color: border_normal($toolbar_bg_color); - } - } - - } - } -} - - -/********* - ! Gedit * -**********/ - -@include exports("gedit") { - GeditWindow .pane-separator { - border-width: 0 1px 0 0; - border-style: solid; - - &, &:hover { - border-color: shade($bg_color, ($contrast + .1)); - background-color: $bg_color; - } - } - - .gedit-document-panel { - background-color: $bg_color; - color: mix($fg_color, $bg_color, 0.1); - - .list-row { - padding: $spacing; - - .button { - padding: 1px; - border-radius: $roundness; - border-style: solid; - border-color: transparent; - border-width: 1px; - background-color: transparent; - background-image: none; - color: transparent; - icon-shadow: none; - } - } - - .prelight-row .button { - border-color: alpha(black, 0.1); - color: alpha(white, 0.8); - - &:active { - border-color: alpha(black, 0.2); - background-color: alpha(black, 0.08); - color: white; - } - } - - list-row, .prelight-row { - .button:hover { - border-color: alpha(black, 0.1); - color: white; - } - } - } - - .gedit-document-panel-group-row { - &, &:hover { - border-top: 1px solid shade($bg_color, ($contrast + .1)); - background-color: $bg_color; - } - } - - .gedit-document-panel-document-row { - &:hover { background-color: shade($bg_color, 1.05); } - - &:selected { - &, &:hover { @extend %selected; } - } - } - - .gedit-document-panel-dragged-row { - border: 1px solid alpha(black, 0.1); - background-color: alpha(black, 0.5); - color: white; - } - - .gedit-document-panel-placeholder-row { - border: none; - background-color: alpha(black, 0.08); - transition: all 200ms ease-in; - } - - GeditStatusbar { border-top: 1px solid border_normal($bg_color); } - - GeditStatusbar GeditSmallButton, GeditStatusMenuButton { - text-shadow: none; - - .button { - border-style: solid; - border-width: 0 1px; - border-color: transparent; - border-radius: 0; - padding: 1px 6px 2px 4px; - - &:hover, &:active, &:active:hover { border-color: border_normal($bg_color); } - - &:active { - background-color: shade($bg_color, 0.95); - color: $fg_color; - } - } - } - - GeditViewFrame .gedit-search-slider { - padding: $spacing; - border-radius: 0 0 $roundness $roundness; - border-width: 0 1px 1px 1px; - border-style: solid; - border-color: border_normal($base_color); - background-color: $base_color; - - .not-found { - background-color: $error_bg_color; - background-image: none; - color: $error_fg_color; - - &:selected { @extend %selected; } - } - } - - GeditFileBrowserWidget .toolbar { - padding: $spacing / 2; - border-top: none; - background-color: $bg_color; - background-image: none; - } - - .gedit-search-entry-occurrences-tag { - margin: $spacing / 2; - padding: $spacing / 2; - color: mix($text_color, $base_color, 0.5); - } -} - - -/*************** - ! Font-viewer * -****************/ - -@include exports("fontviewer") { - SushiFontWidget { - padding: $spacing ($spacing * 2); - } -} - - -/************* - ! Gucharmap * -**************/ - -@include exports("charmap") { - GucharmapChartable { - background-color: $base_color; - color: $text_color; - - &:focus, &:hover, &:active, &:selected { @extend %selected; } - } -} - - -/************* - ! Evolution * -**************/ - -@include exports("evolution") { - EPreviewPane .entry { - background-color: $base_color; - color: $text_color; - } -} - - -/******************* - * Gnome Bluetooth * -********************/ - -@include exports("gnome-bluetooth") { - GtkEntry.entry.pin-entry { - font: regular 50; - padding-left: 25px; - padding-right: 25px; - } - - GtkLabel.pin-label { font: regular 50; } -} diff --git a/gtk-3.0/scss/apps/_nautilus.scss b/gtk-3.0/scss/apps/_nautilus.scss new file mode 100644 index 0000000..d31a25e --- /dev/null +++ b/gtk-3.0/scss/apps/_nautilus.scss @@ -0,0 +1,77 @@ +/************ + ! Nautilus * +*************/ + +@include exports("nautilus") { + .nautilus-desktop.nautilus-canvas-item { + color: white; + text-shadow: 1px 1px black; + + &:active { color: $fg_color; } + + &:selected { color: $selected_fg_color; } + + &:active, &:prelight, &:selected { text-shadow: none; } + } + + NautilusWindow { + .toolbar { + border-width: 0 0 1px; + border-style: solid; + border-color: border_normal($toolbar_bg_color); + } + + .sidebar .frame { border: none; } + + > GtkGrid > .pane-separator { + border-width: 0 1px 0 0; + border-style: solid; + + &, &:hover { + border-color: shade($bg_color, ($contrast + .1)); + background-color: $bg_color; + } + } + } + + NautilusNotebook { + &.notebook { + border-right-width: 0; + border-left-width: 0; + border-bottom-width: 0; + } + + .frame { border: none; } + } + + NautilusQueryEditor { + .search-bar.toolbar { + border-top-width: 0; + border-bottom-width: 0; + } + + .toolbar { + padding-top: $spacing - 1px; + padding-bottom: $spacing - 2px; + border-width: 1px 0 0 0; + border-style: solid; + border-color: $toolbar_bg_color; + background-color: shade($toolbar_bg_color, 0.9); + + &:nth-child(2) { border-color: border_normal($toolbar_bg_color); } + + &.search-bar { + border-top-width: 0; + border-bottom-width: 0; + } + + &, &.search-bar { + &:only-child { + border-bottom-width: 1px; + border-bottom-color: border_normal($toolbar_bg_color); + } + } + + } + } +} diff --git a/gtk-3.0/scss/apps/_panel.scss b/gtk-3.0/scss/apps/_panel.scss new file mode 100644 index 0000000..adc096e --- /dev/null +++ b/gtk-3.0/scss/apps/_panel.scss @@ -0,0 +1,76 @@ +/*********************** + ! Fallback mode panel * +************************/ + +@include exports("panel") { + %panel { + @include linear-gradient($panel_bg_color); + + color: $panel_fg_color; + } + + PanelWidget, PanelApplet, PanelToplevel { + @extend %panel; + + padding: 0; + } + + PanelApplet { + border: none; + + .button { + -GtkButton-inner-border: 2; + + border-width: 0 1px; + border-radius: 0; + border-color: transparent; + background-color: transparent; + background-image: none; + color: $panel_fg_color; + + &:hover, &:prelight { + @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.11)); + + border-color: mix($panel_bg_color, $panel_fg_color, 0.11); + color: shade($panel_fg_color, 1.08); + } + + &:active, &:checked { + @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.21), to top); + + border-color: mix($panel_bg_color, $panel_fg_color, 0.21); + color: shade($panel_fg_color, 1.08); + + &:prelight { + @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.31), to top); + + border-color: mix($panel_bg_color, $panel_fg_color, 0.31); + } + } + } + } + + PanelSeparator { + @extend %panel; + + border: none; + } + + PanelApplet > GtkMenuBar.menubar, PanelMenuBar.menubar, .gnome-panel-menu-bar { + &.menuitem { + @extend %panel; + + border: none; + + -PanelMenuBar-icon-visible: true; + } + } + + PanelAppletFrame { + @extend %panel; + + border: none; + } + + WnckPager, WnckTasklist { @extend %panel; } +} diff --git a/gtk-3.0/scss/gtk.scss b/gtk-3.0/scss/gtk.scss index e191304..4b0d533 100755 --- a/gtk-3.0/scss/gtk.scss +++ b/gtk-3.0/scss/gtk.scss @@ -24,8 +24,10 @@ @import "widgets/window"; -@import "apps/gnome-applications"; +@import "apps/gedit"; +@import "apps/nautilus"; @import "apps/nemo"; +@import "apps/panel"; @import "apps/synaptic"; diff --git a/gtk-3.0/scss/widgets/_misc.scss b/gtk-3.0/scss/widgets/_misc.scss index 73e64b5..1d5a510 100644 --- a/gtk-3.0/scss/widgets/_misc.scss +++ b/gtk-3.0/scss/widgets/_misc.scss @@ -163,3 +163,54 @@ .toolbar { background-color: transparent; } } } + +/*************** + ! Font-viewer * +****************/ + +@include exports("fontviewer") { + SushiFontWidget { + padding: $spacing ($spacing * 2); + } +} + + +/************* + ! Gucharmap * +**************/ + +@include exports("charmap") { + GucharmapChartable { + background-color: $base_color; + color: $text_color; + + &:focus, &:hover, &:active, &:selected { @extend %selected; } + } +} + + +/************* + ! Evolution * +**************/ + +@include exports("evolution") { + EPreviewPane .entry { + background-color: $base_color; + color: $text_color; + } +} + + +/******************* + ! Gnome Bluetooth * +********************/ + +@include exports("gnome-bluetooth") { + GtkEntry.entry.pin-entry { + font: regular 50; + padding-left: 25px; + padding-right: 25px; + } + + GtkLabel.pin-label { font: regular 50; } +} From 7dccf6b479382b132ecb66052fd5ccc23e8b4c1d Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 20 Dec 2014 16:42:58 +0530 Subject: [PATCH 40/73] Added actionbar styles --- gtk-3.0/scss/gtk.scss | 225 +-------------------------- gtk-3.0/scss/widgets/_actionbar.scss | 106 +++++++++++++ gtk-3.0/scss/widgets/_entry.scss | 14 +- 3 files changed, 116 insertions(+), 229 deletions(-) create mode 100644 gtk-3.0/scss/widgets/_actionbar.scss diff --git a/gtk-3.0/scss/gtk.scss b/gtk-3.0/scss/gtk.scss index 4b0d533..26eeaa5 100755 --- a/gtk-3.0/scss/gtk.scss +++ b/gtk-3.0/scss/gtk.scss @@ -6,6 +6,7 @@ @import "widgets/base"; @import "widgets/button"; @import "widgets/entry"; +@import "widgets/actionbar"; @import "widgets/calendar"; @import "widgets/choosers"; @import "widgets/grid"; @@ -29,227 +30,3 @@ @import "apps/nemo"; @import "apps/panel"; @import "apps/synaptic"; - - -/************** -* action-bar * -**************/ -.action-bar { - padding: 4px; - border-width: 1px 0 0 0; - border-style: solid; - border-color: shade($bg_color, 0.8); - background-color: $bg_color; - background-image: none; - color: $fg_color; -} - -.action-bar .button.text-button { - padding: 4px; -} - -.action-bar .button.image-button { - padding: 6px; -} - -.action-bar .title { - font: bold; - padding: 0 12px; -} - -.action-bar .subtitle { - font: smaller; - padding: 0 12px; -} - -/*************** -* search bars * -***************/ -.search-bar { - border-width: 0 0 1px 0; - border-style: solid; - border-color: shade($bg_color, 0.8); - background-color: shade($bg_color, 0.98); -} - -.search-bar .button.close-button { - padding: 4px; -} - - - -/****************************** -* destructive action buttons * -******************************/ -.destructive-action.button { - border-width: 1px; - border-style: solid; - border-color: shade($error_color, 0.8); - border-radius: 2px; - background-color: $error_color; - background-image: none; - color: mix($selected_fg_color, $error_color, 0.1); -} - -.destructive-action.button:hover { - border-color: shade($error_color, 0.7); - background-color: shade($error_color, 1.12); - background-image: none; -} - -.destructive-action.button:active { - border-color: shade($error_color, 0.8); - background-color: shade($error_color, 0.87); - background-image: none; -} - -.destructive-action.button:hover:active { - border-color: shade($error_color, 0.7); -} - -/****************************** -* suggested action buttons * -******************************/ -.suggested-action.button { - border-width: 1px; - border-style: solid; - border-color: shade($selected_bg_color, 0.9); - border-radius: 2px; - background-color: shade($selected_bg_color, 1.18); - background-image: none; - color: mix($selected_fg_color, $selected_bg_color, 0.1); -} - -.suggested-action.button:hover { - border-color: shade($selected_bg_color, 0.8); - background-color: shade($selected_bg_color, 1.20); - background-image: none; -} - -.suggested-action.button:active { - border-color: shade($selected_bg_color, 0.9); - background-color: shade($selected_bg_color, 1.05); - background-image: none; -} - -.suggested-action.button:hover:active { - border-color: shade($selected_bg_color, 0.8); -} - -/****************** -* selection mode * -******************/ -.selection-mode.header-bar, -.selection-mode.toolbar { - border-style: solid; - border-color: $selected_bg_color; - background-color: shade($selected_bg_color, 1.6); - background-image: none; - color: $selected_bg_color; -} - -.selection-mode.header-bar { - border-top-color: shade($selected_bg_color, 1.6); - border-bottom-color: $selected_bg_color; -} - -.selection-mode.toolbar { - padding: 4px; -} - -/* regular button */ -.selection-mode.header-bar .button, -.selection-mode.toolbar .button, -.selection-mode.toolbar GtkToolButton .button { - border-width: 1px; - border-style: solid; - border-color: $selected_bg_color; - border-radius: 2px; - background-color: shade($selected_bg_color, 1.68); - background-image: none; - color: shade($selected_bg_color, 0.8); -} - -.selection-mode.header-bar .button:hover, -.selection-mode.toolbar .button:hover, -.selection-mode.toolbar GtkToolButton .button:hover { - border-color: shade($selected_bg_color, 0.9); - background-color: shade($selected_bg_color, 1.70); - background-image: none; -} - -.selection-mode.header-bar .button:active, -.selection-mode.toolbar .button:active, -.selection-mode.toolbar GtkToolButton .button:active { - border-color: shade($selected_bg_color, 0.9); - background-color: shade($selected_bg_color, 1.55); - background-image: none; -} - -.selection-mode.header-bar .button:hover:active, -.selection-mode.toolbar .button:hover:active, -.selection-mode.toolbar GtkToolButton .button:hover:active { - border-color: shade($selected_bg_color, 0.8); -} - -/* suggested button */ -.selection-mode.header-bar .suggested-action.button, -.selection-mode.toolbar .suggested-action.button, -.selection-mode.toolbar GtkToolButton.suggested-action .button { - border-width: 1px; - border-style: solid; - border-color: shade($selected_bg_color, 0.9); - border-radius: 2px; - background-color: shade($selected_bg_color, 1.18); - background-image: none; - color: mix($selected_fg_color, $selected_bg_color, 0.1); -} - -.selection-mode.header-bar .suggested-action.button:hover, -.selection-mode.toolbar .suggested-action.button:hover, -.selection-mode.toolbar GtkToolButton.suggested-action .button:hover { - border-color: shade($selected_bg_color, 0.8); - background-color: shade($selected_bg_color, 1.20); - background-image: none; -} - -.selection-mode.header-bar .suggested-action.button:active, -.selection-mode.toolbar .suggested-action.button:active, -.selection-mode.toolbar GtkToolButton.suggested-action:active { - border-color: shade($selected_bg_color, 0.9); - background-color: shade($selected_bg_color, 1.05); - background-image: none; -} - -.selection-mode.header-bar .suggested-action.button:hover:active, -.selection-mode.toolbar .suggested-action.button:hover:active, -.selection-mode.toolbar GtkToolButton.suggested-action .button:hover:active { - border-color: shade($selected_bg_color, 0.8); -} - -/* menu button */ -.selection-mode.header-bar .selection-menu.button, -.selection-mode.toolbar .selection-menu.button { - border-style: none; - background-color: transparent; - background-image: none; - color: shade($selected_bg_color, 0.8); -} - -.selection-mode.toolbar .dim-label, -.selection-mode.toolbar .selection-menu.button .dim-label { - color: shade($selected_bg_color, 0.7); -} - -.selection-mode.header-bar .selection-menu.button:hover, -.selection-mode.toolbar .dim-label:hover, -.selection-mode.toolbar .selection-menu.button:hover, -.selection-mode.toolbar .selection-menu.button .dim-label:hover { - color: shade($selected_bg_color, 0.7); -} - -.selection-mode.header-bar .selection-menu.button:active, -.selection-mode.toolbar .selection-menu.button:active { - color: shade($selected_bg_color, 0.8); - box-shadow: none; -} diff --git a/gtk-3.0/scss/widgets/_actionbar.scss b/gtk-3.0/scss/widgets/_actionbar.scss new file mode 100644 index 0000000..4f1280a --- /dev/null +++ b/gtk-3.0/scss/widgets/_actionbar.scss @@ -0,0 +1,106 @@ +@import "button"; +@import "toolbar"; + +/************** + ! Action-bar * +***************/ + +@include exports("actionbar") { + .action-bar { + @include linear-gradient($bg_color); + + padding: $spacing; + border-width: 1px 0 0 0; + border-style: solid; + border-color: border_normal($bg_color); + color: $fg_color; + + .button { + &.text-button { padding: $spacing - 1px; } + + &.image-button { padding: $spacing + 1px; } + } + + .title { + font: bold; + padding: 0 ($spacing * 2); + } + + .subtitle { + font: smaller; + padding: 0 ($spacing * 2); + } + } +} + + +/*************** + ! Search bars * +****************/ + +@include exports("searchbar") { + .search-bar { + @include linear-gradient(shade($bg_color, 0.98)); + + border-width: 0 0 1px 0; + border-style: solid; + border-color: border_normal($bg_color); + color: $fg_color; + + .button.close-button { padding: $spacing; } + } +} + + +/****************** + ! Action buttons * +*******************/ + +@include exports("actionbuttons") { + $types: ( + suggested: $selected_bg_color, + destructive: $error-color + ); + + @each $type, $color in $types { + .#{$type}-action.button { + @include button($color, $selected_fg_color); + } + } +} + + +/****************** +* selection mode * +******************/ + +@include exports("selectionmode") { + .selection-mode { + &.header-bar, &.toolbar { + @include toolbar($selected_bg_color, $selected_fg_color); + + .button { + @include button(shade($selected_bg_color, 1.68), shade($selected_bg_color, 0.8)); + + &.suggested-action { @extend .suggested-action.button; } + } + + .selection-menu.button { + border: none; + background-color: transparent; + background-image: none; + color: shade($selected_bg_color, $contrast); + + &:hover { color: shade($selected_bg_color, ($contrast - .1)); } + + &:active { color: shade($selected_bg_color, ($contrast - .05)); } + } + + .dim-label, { + &, .selection-menu.button & { color: shade($selected_bg_color, ($contrast - .1)); } + } + } + + &.toolbar { padding: $spacing; } + } +} diff --git a/gtk-3.0/scss/widgets/_entry.scss b/gtk-3.0/scss/widgets/_entry.scss index 184dac5..b3c4264 100755 --- a/gtk-3.0/scss/widgets/_entry.scss +++ b/gtk-3.0/scss/widgets/_entry.scss @@ -1,8 +1,8 @@ -/******* - ! Entry -********/ +/********* + ! Entry * +**********/ -@mixin linked_entry($bg) { +%linked_entry { border-width: 1px; border-radius: 0; border-right-width: 0; @@ -70,7 +70,11 @@ } @include exports("entry") { - .entry { @include entry($base_color, $text_color); } + .entry { + @include entry($base_color, $text_color); + + &.linked, .linked & { @extend %linked_entry; } + } } From 1b99e55e916e98c5703117f744ed215eb1aa7ce7 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 20 Dec 2014 17:08:26 +0530 Subject: [PATCH 41/73] Improve combobox styling --- gtk-3.0/scss/widgets/_button.scss | 57 +++++++++++++++++++++++++++++++ gtk-3.0/scss/widgets/_entry.scss | 37 -------------------- 2 files changed, 57 insertions(+), 37 deletions(-) diff --git a/gtk-3.0/scss/widgets/_button.scss b/gtk-3.0/scss/widgets/_button.scss index 1b353b4..9310af9 100755 --- a/gtk-3.0/scss/widgets/_button.scss +++ b/gtk-3.0/scss/widgets/_button.scss @@ -15,6 +15,18 @@ -GtkWidget-focus-line-width: 0; } + %linked_middle { + border-radius: 0; + border-left-style: none; + border-right-style: solid; + + &:dir(rtl) { + border-radius: 0; // needed when including %linked_middle:dir(rtl) + border-right-style: none; + border-left-style: solid + } + } + %linked_button { border-width: 1px; border-style: solid; @@ -266,3 +278,48 @@ } } } + + +/****************** +! ComboBoxes * +*******************/ + +@include exports("combobox") { + GtkComboBox { + > .button { + padding: ($spacing - 2px) ($spacing + 1px); + + -GtkComboBox-arrow-scaling: 0.5; + -GtkComboBox-shadow-type: none; + } + + &.combobox-entry { + .entry, .button { @extend %linked_button; } + } + + .separator { + /* always disable separators */ + -GtkWidget-wide-separators: true; + -GtkWidget-horizontal-separator: 0; + -GtkWidget-vertical-separator: 0; + + border-style: none; + } + } + + .linked > GtkComboBox { + > .button { + // the combo is a composite widget so the way we do button linked doesn't + // work, special case needed. See + // https://bugzilla.gnome.org/show_bug.cgi?id=733979 + &:dir(ltr) { @extend %linked_middle; } // specificity bump + &:dir(rtl) { @extend %linked_middle:dir(rtl); } + } + + &:first-child > .button { @extend %linked_button:first-child; } + + &:last-child > .button { @extend %linked_button:last-child; } + + &:only-child > .button { @extend %linked_button:only-child; } + } +} diff --git a/gtk-3.0/scss/widgets/_entry.scss b/gtk-3.0/scss/widgets/_entry.scss index b3c4264..0015dee 100755 --- a/gtk-3.0/scss/widgets/_entry.scss +++ b/gtk-3.0/scss/widgets/_entry.scss @@ -76,40 +76,3 @@ &.linked, .linked & { @extend %linked_entry; } } } - - -/****************** - ! Combobox entry * -*******************/ - -@include exports("combobox") { - GtkComboBox { - &.combobox-entry { - .entry { - &, &:hover, &:focus, &:active, &:insensitive { - border-width: 1px 0 1px 1px; - border-top-right-radius: 0; - border-bottom-right-radius: 0; - } - } - - .button { - &, &:hover, &:focus, &:active, &:insensitive { - border-width: 1px 1px 1px 1px; - border-bottom-left-radius: 0; - border-top-left-radius: 0; - } - } - } - - .separator { - /* always disable separators */ - -GtkWidget-wide-separators: true; - -GtkWidget-horizontal-separator: 0; - -GtkWidget-vertical-separator: 0; - - border-style: none; - } - } -} - From 7a4b108791854634204d61bc5aed74fd23769fc0 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sun, 28 Dec 2014 20:24:48 +0530 Subject: [PATCH 42/73] Wrap code in exports mixin --- gtk-3.0/scss/widgets/_grid.scss | 57 +++---- gtk-3.0/scss/widgets/_misc.scss | 8 +- gtk-3.0/scss/widgets/_osd.scss | 227 +++++++++++++--------------- gtk-3.0/scss/widgets/_progress.scss | 33 +--- gtk-3.0/scss/widgets/_sidebar.scss | 30 ++-- 5 files changed, 159 insertions(+), 196 deletions(-) diff --git a/gtk-3.0/scss/widgets/_grid.scss b/gtk-3.0/scss/widgets/_grid.scss index 877707c..573e5c2 100644 --- a/gtk-3.0/scss/widgets/_grid.scss +++ b/gtk-3.0/scss/widgets/_grid.scss @@ -2,44 +2,47 @@ ! Grid and flowbox *******************/ -.list { - background-color: shade($bg_color, 0.97); - color: $fg_color; +@include exports("grid") { + .list { + background-color: shade($bg_color, 0.97); + color: $fg_color; - &-row { - &, &.button { - border: none; - border-radius: 0; - padding: $spacing; - background-image: none; - background-color: transparent; - box-shadow: none; - - &:hover { + &-row { + &, &.button { + border: none; + border-radius: 0; + padding: $spacing; background-image: none; - background-color: shade($bg_color, 1.02); - } + background-color: transparent; + box-shadow: none; - &:selected { - &, &:hover, &:focus { + &:hover { background-image: none; - background-color: $selected_bg_color; - color: $selected_fg_color; + background-color: shade($bg_color, 1.02); + } + + &:selected { + &, &:hover, &:focus { + background-image: none; + background-color: $selected_bg_color; + color: $selected_fg_color; + } } } } } -} -.grid-child { - &, GtkFlowBox & { - padding: $spacing; - border-radius: $roundness; + .grid-child { + &, GtkFlowBox & { + padding: $spacing; + border-radius: $roundness; - &:selected { - @extend %selected; + &:selected { + @extend %selected; - outline-offset: -2px; + outline-offset: -2px; + } } } } + diff --git a/gtk-3.0/scss/widgets/_misc.scss b/gtk-3.0/scss/widgets/_misc.scss index 1d5a510..f7a5c94 100644 --- a/gtk-3.0/scss/widgets/_misc.scss +++ b/gtk-3.0/scss/widgets/_misc.scss @@ -2,9 +2,11 @@ ! Dimmed label * ****************/ -.dim-label { - opacity: 0.5; - text-shadow: none; +@include exports("dimlabel") { + .dim-label { + opacity: 0.5; + text-shadow: none; + } } diff --git a/gtk-3.0/scss/widgets/_osd.scss b/gtk-3.0/scss/widgets/_osd.scss index 178283d..87be1e5 100644 --- a/gtk-3.0/scss/widgets/_osd.scss +++ b/gtk-3.0/scss/widgets/_osd.scss @@ -5,146 +5,127 @@ ! OSD * ********/ -GtkOverlay.osd { - background-color: transparent; -} +@include exports("osd") { + GtkOverlay.osd { background-color: transparent; } -.osd { - &.background { - background-color: alpha($osd_bg, 0.8); - color: $osd_fg; - } + .osd { + &.background { + background-color: alpha($osd_bg, 0.8); + color: $osd_fg; + } - &.frame { - background-clip: border-box; - background-origin: border-box; - } + &.frame { + background-clip: border-box; + background-origin: border-box; + } - &.button, .button { @include button($osd_bg, $osd_fg); } + &.button, .button { @include button($osd_bg, $osd_fg); } - &.toolbar { - -GtkToolbar-button-relief: normal; + &.toolbar { + -GtkToolbar-button-relief: normal; - padding: $spacing; - border: 1px solid border_normal($osd_bg); - border-radius: $roundness; - background-color: $osd_bg; - background-image: none; - color: $osd_fg; - - .separator { color: shade($osd_bg, ($contrast + .1)); } - } - - /* used by gnome-settings-daemon's media-keys OSD */ - &.trough { background-color: shade($osd_bg, 0.8); } - - &.progressbar { background-color: $osd_fg; } - - .scale { - &.slider { - background-color: shade($osd_bg, 1.08); + padding: $spacing; + border: 1px solid border_normal($osd_bg); + border-radius: $roundness; + background-color: $osd_bg; background-image: none; - /* we will draw the border using box shadow for now */ - box-shadow: inset 1px 0 shade($osd_bg, 0.8), - inset 0 1px shade($osd_bg, 0.8), - inset -1px 0 shade($osd_bg, 0.8), - inset 0 -1px shade($osd_bg, 0.8); + color: $osd_fg; - &:hover { - box-shadow: inset 1px 0 shade($osd_bg, 0.7), - inset 0 1px shade($osd_bg, 0.7), - inset -1px 0 shade($osd_bg, 0.7), - inset 0 -1px shade($osd_bg, 0.7); + .separator { color: shade($osd_bg, ($contrast + .1)); } + } + + /* used by gnome-settings-daemon's media-keys OSD */ + &.trough { background-color: shade($osd_bg, 0.8); } + + &.progressbar { background-color: $osd_fg; } + + .scale { + &.slider { + @include linear-gradient(shade($osd_bg, 1.08)); + @include border($osd_bg); + + &:insensitive { @include linear-gradient(shade($osd_bg, 0.9)); } } - &:insensitive { - background-color: shade($osd_bg, 0.9); + &.trough { + border-color: shade($osd_bg, 0.8); + background-color: shade($osd_bg, 1.08); background-image: none; - box-shadow: inset 1px 0 shade($osd_bg, 0.85), - inset 0 1px shade($osd_bg, 0.85), - inset -1px 0 shade($osd_bg, 0.85), - inset 0 -1px shade($osd_bg, 0.85); + + &.highlight { + border-color: $selected_bg_color; + background-color: $selected_bg_color; + background-image: none; + } + + &:insensitive, &.highlight:insensitive { + border-color: shade($osd_bg, 0.85); + background-color: shade($osd_bg, 0.9); + background-image: none; + } } } + &.view, .view { background-color: $osd_bg; } + + .scrollbar { + .trough { background-color: $osd_bg; } + + .slider { + border: 1px solid mix(shade($osd_bg, 0.87), $osd_fg, 0.21); + border-radius: 0; + background-color: mix($osd_bg, $osd_fg, 0.21); + + &:hover { + border-color: mix(shade($osd_bg, 0.87), $osd_fg, 0.31); + background-color: mix($osd_bg, $osd_fg, 0.31); + } + + &:active { + border-color: shade($selected_bg_color, 0.9); + background-color: $selected_bg_color; + } + } + } + + GtkIconView.cell { + &:selected, &:selected:focus { + background-color: transparent; + border: 3px solid mix(shade($osd_bg, 0.87), $osd_fg, 0.21); + border-radius: $roundness; + outline-color: transparent; + } + } + + /* used by Documents */ + .page-thumbnail { + border: 1px solid shade($osd_bg, 0.9); + /* when there's no pixbuf yet */ + background-color: $osd_bg; + } + } + + .osd GtkProgressBar, GtkProgressBar.osd { + -GtkProgressBar-xspacing: 0; + -GtkProgressBar-yspacing: 2px; + -GtkProgressBar-min-horizontal-bar-height: 2px; + + padding: 0; + &.trough { - border-color: shade($osd_bg, 0.8); - background-color: shade($osd_bg, 1.08); - background-image: none; - - &.highlight { - border-color: $selected_bg_color; - background-color: $selected_bg_color; - background-image: none; - } - - &:insensitive, &.highlight:insensitive { - border-color: shade($osd_bg, 0.85); - background-color: shade($osd_bg, 0.9); - background-image: none; - } - } - } - - &.view, .view { background-color: $osd_bg; } - - .scrollbar { - .trough { background-color: $osd_bg; } - - .slider { - border: 1px solid mix(shade($osd_bg, 0.87), $osd_fg, 0.21); + padding: 0; + border-style: none; border-radius: 0; - background-color: mix($osd_bg, $osd_fg, 0.21); - - &:hover { - border-color: mix(shade($osd_bg, 0.87), $osd_fg, 0.31); - background-color: mix($osd_bg, $osd_fg, 0.31); - } - - &:active { - border-color: shade($selected_bg_color, 0.9); - background-color: $selected_bg_color; - } - } - } - - GtkIconView.cell { - &:selected, &:selected:focus { + background-image: none; background-color: transparent; - border: 3px solid mix(shade($osd_bg, 0.87), $osd_fg, 0.21); - border-radius: $roundness; - outline-color: transparent; + } + + &.progressbar { + border-style: none; + border-radius: 0; + background-color: $selected_bg_color; + background-image: none; } } - - /* used by Documents */ - .page-thumbnail { - border: 1px solid shade($osd_bg, 0.9); - /* when there's no pixbuf yet */ - background-color: $osd_bg; - } -} - -.osd GtkProgressBar, GtkProgressBar.osd { - -GtkProgressBar-xspacing: 0; - -GtkProgressBar-yspacing: 2px; - -GtkProgressBar-min-horizontal-bar-height: 2px; - - padding: 0; - - &.trough { - padding: 0; - border-style: none; - border-radius: 0; - background-image: none; - background-color: transparent; - } - - &.progressbar { - border-style: none; - border-radius: 0; - background-color: $selected_bg_color; - background-image: none; - } } diff --git a/gtk-3.0/scss/widgets/_progress.scss b/gtk-3.0/scss/widgets/_progress.scss index 94ec533..c09ff40 100644 --- a/gtk-3.0/scss/widgets/_progress.scss +++ b/gtk-3.0/scss/widgets/_progress.scss @@ -120,37 +120,14 @@ &.slider { @include linear-gradient(shade($bg_color, 1.08)); + @include border($bg_color); border-radius: 8px; + border-width: 1px; + border-style: solid; + box-shadow: 0 1px 2px -1px alpha($dark_shadow, .3); - /* we will draw the border using box shadow for now */ - box-shadow: inset 1px 0 border_normal($bg_color), - inset 0 1px border_normal($bg_color), - inset -1px 0 border_normal($bg_color), - inset 0 -1px border_normal($bg_color); - - &:hover, &:focus { - box-shadow: inset 1px 0 border_focus($bg_color), - inset 0 1px border_focus($bg_color), - inset -1px 0 border_focus($bg_color), - inset 0 -1px border_focus($bg_color); - } - - &:active { - box-shadow: inset 1px 0 border_active($bg_color), - inset 0 1px border_active($bg_color), - inset -1px 0 border_active($bg_color), - inset 0 -1px border_active($bg_color); - } - - &:insensitive { - @include linear-gradient(shade($bg_color, 0.9)); - - box-shadow: inset 1px 0 border_insensitive($bg_color), - inset 0 1px border_insensitive($bg_color), - inset -1px 0 border_insensitive($bg_color), - inset 0 -1px border_insensitive($bg_color); - } + &:insensitive { @include linear-gradient(shade($bg_color, 0.9)); } } &.fine-tune { diff --git a/gtk-3.0/scss/widgets/_sidebar.scss b/gtk-3.0/scss/widgets/_sidebar.scss index af417ff..b3185d5 100755 --- a/gtk-3.0/scss/widgets/_sidebar.scss +++ b/gtk-3.0/scss/widgets/_sidebar.scss @@ -19,21 +19,21 @@ } row, .view row { - &:selected { - &, &:hover, &:focus { - border: none; - background-image: none; - background-color: $selected_bg_color; - color: $selected_fg_color; - } + &:selected { + &, &:hover, &:focus { + border: none; + background-image: none; + background-color: $selected_bg_color; + color: $selected_fg_color; + } - &:prelight { - border: none; - background-image: none; - background-color: shade($selected_bg_color, 1.05); - color: $selected_fg_color; - } - } + &:prelight { + border: none; + background-image: none; + background-color: shade($selected_bg_color, 1.05); + color: $selected_fg_color; + } + } &:prelight { border: none; @@ -46,7 +46,7 @@ .frame { border-width: 0; } GtkAssistant & { - padding: 4px; + padding: $spacing; border-width: 0 1px 0 0; border-style: solid; border-right-color: border_normal($bg_color); From c0bfa7f0139f640eb189ddd96cf12ce41f5ce745 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sun, 28 Dec 2014 20:59:37 +0530 Subject: [PATCH 43/73] Remove button spacing from message-dialog Fixes #179 --- gtk-3.0/scss/widgets/_misc.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gtk-3.0/scss/widgets/_misc.scss b/gtk-3.0/scss/widgets/_misc.scss index f7a5c94..b6fa512 100644 --- a/gtk-3.0/scss/widgets/_misc.scss +++ b/gtk-3.0/scss/widgets/_misc.scss @@ -32,7 +32,7 @@ ************/ @include exports("dialogs") { - GtkMessageDialog, .prompt { + GtkMessageDialog, .message-dialog, .prompt { -GtkDialog-content-area-border: 0; -GtkDialog-action-area-border: 0; -GtkDialog-button-spacing: 0; From 14f1db1e01fdd9226c761effc4b736ce48cfb5f5 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sun, 28 Dec 2014 21:09:36 +0530 Subject: [PATCH 44/73] Make GtkDrawingArea transparent #156 --- gtk-3.0/scss/widgets/_view.scss | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gtk-3.0/scss/widgets/_view.scss b/gtk-3.0/scss/widgets/_view.scss index 2febe0a..c7a6998 100644 --- a/gtk-3.0/scss/widgets/_view.scss +++ b/gtk-3.0/scss/widgets/_view.scss @@ -100,11 +100,13 @@ /* this will get overridden by .view, needed by gedit line numbers */ GtkTextView { background-color: mix($bg_color, $base_color, 0.50); } - GtkDrawingArea, GtkHTML { + GtkHTML { @extend .view; &:insensitive { background-color: shade($base_color, 0.9); } } + + GtkDrawingArea { background-color: transparent; } } /************ From f0b8fa3ac8ac0fc39b7e5cf524aa48d64419e25d Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sat, 24 Jan 2015 00:24:03 +0530 Subject: [PATCH 45/73] Added xfce and lightdm styles --- gtk-3.0/scss/_colors.scss | 22 ++-- gtk-3.0/scss/_functions.scss | 2 - gtk-3.0/scss/_global.scss | 16 ++- gtk-3.0/scss/apps/_lightdm.scss | 193 ++++++++++++++++++++++++++++++ gtk-3.0/scss/apps/_panel.scss | 58 ++++----- gtk-3.0/scss/apps/_unity.scss | 70 +++++++++++ gtk-3.0/scss/apps/_xfce.scss | 26 ++++ gtk-3.0/scss/gtk.scss | 3 + gtk-3.0/scss/widgets/_window.scss | 29 +++-- 9 files changed, 366 insertions(+), 53 deletions(-) create mode 100644 gtk-3.0/scss/apps/_lightdm.scss create mode 100644 gtk-3.0/scss/apps/_unity.scss create mode 100644 gtk-3.0/scss/apps/_xfce.scss diff --git a/gtk-3.0/scss/_colors.scss b/gtk-3.0/scss/_colors.scss index dcb562c..86dd590 100755 --- a/gtk-3.0/scss/_colors.scss +++ b/gtk-3.0/scss/_colors.scss @@ -53,14 +53,14 @@ @define-color lightdm_fg_color #{"" + $lightdm_fg_color}; /* window manager colors */ -@define-color wm_bg @titlebar_bg_color; -@define-color wm_border_focused mix(shade(@titlebar_bg_color, 0.7), @titlebar_fg_color, 0.21); -@define-color wm_border_unfocused mix(shade(@titlebar_bg_color, 0.7), @titlebar_fg_color, 0.12); -@define-color wm_title_focused mix(@titlebar_fg_color, @titlebar_bg_color, 0.1); -@define-color wm_title_unfocused mix(@titlebar_fg_color, @titlebar_bg_color, 0.4); -@define-color wm_icons_focused mix(@titlebar_fg_color, @titlebar_bg_color, 0.1); -@define-color wm_icons_focused_prelight @selected_bg_color; -@define-color wm_icons_focused_pressed shade(@selected_bg_color, 0.8); -@define-color wm_icons_unfocused mix(@titlebar_fg_color, @titlebar_bg_color, 0.4); -@define-color wm_icons_unfocused_prelight @selected_bg_color; -@define-color wm_icons_unfocused_pressed shade(@selected_bg_color, 0.8); +@define-color wm_bg #{"" + $wm_bg}; +@define-color wm_border_focused #{"" + $wm_border_focused}; +@define-color wm_border_unfocused #{"" + $wm_border_unfocused}; +@define-color wm_title_focused #{"" + $wm_title_focused}; +@define-color wm_title_unfocused #{"" + $wm_title_unfocused}; +@define-color wm_icons_focused #{"" + $wm_icons_focused}; +@define-color wm_icons_focused_prelight #{"" + $wm_icons_focused_prelight}; +@define-color wm_icons_focused_pressed #{"" + $wm_icons_unfocused_pressed}; +@define-color wm_icons_unfocused #{"" + $wm_icons_unfocused}; +@define-color wm_icons_unfocused_prelight #{"" + $wm_icons_unfocused_prelight}; +@define-color wm_icons_unfocused_pressed #{"" + $wm_icons_unfocused_pressed}; diff --git a/gtk-3.0/scss/_functions.scss b/gtk-3.0/scss/_functions.scss index 9ea3a1b..6216dc2 100755 --- a/gtk-3.0/scss/_functions.scss +++ b/gtk-3.0/scss/_functions.scss @@ -1,5 +1,3 @@ -@import "global"; - $modules: () !default; @mixin exports($name) { diff --git a/gtk-3.0/scss/_global.scss b/gtk-3.0/scss/_global.scss index 3c51646..d2b1c51 100755 --- a/gtk-3.0/scss/_global.scss +++ b/gtk-3.0/scss/_global.scss @@ -1,3 +1,5 @@ +@import "functions"; + // default color scheme $bg_color: #eee; $fg_color: #333; @@ -51,8 +53,20 @@ $osd_fg: $dark_fg_color; $lightdm_bg_color: $dark_bg_color; $lightdm_fg_color: $dark_fg_color; +$wm_bg: $titlebar_bg_color; +$wm_border_focused: mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); +$wm_border_unfocused: mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.12); +$wm_title_focused: mix($titlebar_fg_color, $titlebar_bg_color, 0.1); +$wm_title_unfocused: mix($titlebar_fg_color, $titlebar_bg_color, 0.4); +$wm_icons_focused: mix($titlebar_fg_color, $titlebar_bg_color, 0.1); +$wm_icons_focused_prelight: $selected_bg_color; +$wm_icons_focused_pressed: shade($selected_bg_color, 0.8); +$wm_icons_unfocused: mix($titlebar_fg_color, $titlebar_bg_color, 0.4); +$wm_icons_unfocused_prelight: $selected_bg_color; +$wm_icons_unfocused_pressed: shade($selected_bg_color, 0.8); + // widget styles $roundness: 2px; -$spacing: 5px; +$spacing: 4px; $gradient: 0; $contrast: .7; diff --git a/gtk-3.0/scss/apps/_lightdm.scss b/gtk-3.0/scss/apps/_lightdm.scss new file mode 100644 index 0000000..333d6af --- /dev/null +++ b/gtk-3.0/scss/apps/_lightdm.scss @@ -0,0 +1,193 @@ +/*********************** + ! LightDM GTK Greeter * + ***********************/ + +@include exports("lightdm") { + #panel_window { + background-color: transparent; + background-image: none; + color: white; + font: bold; + text-shadow: 0 1px alpha(black, 0.5); + icon-shadow: 0 1px alpha(black, 0.5); + + .menubar { + &, > .menuitem { + background-color: transparent; + background-image: none; + color: white; + font: bold; + text-shadow: 0 1px alpha(black, 0.5); + icon-shadow: 0 1px alpha(black, 0.5); + + *:hover { color: white; } + + &:hover { + border-style: none; + background-color: alpha(white, 0.2); + background-image: none; + color: white; + } + + &:insensitive { color: alpha(white, 0.7); } + + .menu { + border-radius: 1px; + + .menuitem { + font: normal; + text-shadow: none; + } + } + } + } + } + + #content_frame { padding-bottom: 14px; } + + #login_window, #shutdown_dialog, #restart_dialog { + border-style: none; + border-radius: $roundness; + background-color: $lightdm_bg_color; + color: $lightdm_fg_color; + + /* draw border using box-shadow */ + box-shadow: inset 1px 0 mix(shade($lightdm_bg_color, 0.7), $lightdm_fg_color, 0.21), + inset -1px 0 mix(shade($lightdm_bg_color, 0.7), $lightdm_fg_color, 0.21), + inset 0 1px mix(shade($lightdm_bg_color, 0.7), $lightdm_fg_color, 0.21), + inset 0 -1px mix(shade($lightdm_bg_color, 0.7), $lightdm_fg_color, 0.21); + + .button { + padding: 3px 15px; + border-width: 1px; + border-radius: $roundness; + border-style: solid; + border-color: shade($lightdm_bg_color, 0.8); + background-color: shade($lightdm_bg_color, 1.08); + background-image: none; + color: $lightdm_fg_color; + transition: all 150ms ease-out; + + &.default, &:focus, &:active:focus { + border-color: shade($selected_bg_color, 0.8); + background-color: shade($selected_bg_color, 1.08); + background-image: none; + color: $selected_fg_color; + + &:hover { + border-color: shade($selected_bg_color, 0.7); + background-color: $selected_bg_color; + } + } + } + } + + + #login_window { + .menu { border-radius: 1px; } + + GtkComboBox .button { + &, &:hover, &:active, &:active:hover, + &:focus, &:hover:focus, &:active:focus, &:active:hover:focus { + padding: 0; + background: none; + border-style: none; + box-shadow: none; + } + } + + .entry { + padding: 3px 5px; + border-width: 1px; + border-style: solid; + border-color: shade($lightdm_bg_color, 0.8); + border-radius: $roundness; + background-color: shade($lightdm_bg_color, 0.9); + background-image: none; + color: $lightdm_fg_color; + box-shadow: none; + transition: all 150ms ease-out; + + &:focus, &:hover { + border-color: shade($lightdm_bg_color, 0.7); + + box-shadow: inset 1px 0 alpha($dark_shadow, 0.10), + inset 0 1px alpha($dark_shadow, 0.12), + inset -1px 0 alpha($dark_shadow, 0.10), + inset 0 -1px alpha($dark_shadow, 0.05); + } + } + } + + #user_combobox { + color: $lightdm_fg_color; + font: 18px; + + .menu { font: normal; } + + .arrow { olor: mix($lightdm_fg_color, $lightdm_bg_color, 0.5); } + } + + #user_image { + padding: 3px; + border-radius: $roundness; + + /* draw border using box-shadow */ + box-shadow: inset 1px 0 shade($lightdm_bg_color, 0.7), + inset -1px 0 shade($lightdm_bg_color, 0.7), + inset 0 1px shade($lightdm_bg_color, 0.7), + inset 0 -1px shade($lightdm_bg_color, 0.7); + } + + #user_image_border { + border-radius: $roundness; + background-color: shade($lightdm_bg_color, 0.9); + background-image: none; + box-shadow: inset 1px 0 alpha($dark_shadow, 0.07), + inset 0 1px alpha($dark_shadow, 0.08), + inset -1px 0 alpha($dark_shadow, 0.07), + inset 0 -1px alpha($dark_shadow, 0.05); + } + + #buttonbox_frame { + padding-top: 10px; + padding-bottom: 0; + border-style: none; + border-bottom-left-radius: $roundness; + border-bottom-right-radius: $roundness; + background-color: transparent; + background-image: none; + box-shadow: none; + } + + + + /* shutdown button */ + #shutdown_button { + border-color: shade($error_bg_color, 0.8); + background-color: shade($error_bg_color, 1.08); + background-image: none; + color: $error_fg_color; + + &:hover, &:active, &:active:hover { + border-color: shade($error_bg_color, 0.7); + background-color: $error_bg_color; + } + } + + /* restart button */ + #restart_button { + border-color: shade($warning_bg_color, 0.8); + background-color: shade($warning_bg_color, 1.08); + background-image: none; + color: $warning_fg_color; + + &:hover, &:active, &:active:hover { + border-color: shade($warning_bg_color, 0.7); + background-color: $warning_bg_color; + } + } + + /* password warning */ + #greeter_infobar { font: bold; } +} diff --git a/gtk-3.0/scss/apps/_panel.scss b/gtk-3.0/scss/apps/_panel.scss index adc096e..c84c98b 100644 --- a/gtk-3.0/scss/apps/_panel.scss +++ b/gtk-3.0/scss/apps/_panel.scss @@ -9,6 +9,35 @@ color: $panel_fg_color; } + %panelbutton { + border-width: 0 1px; + border-radius: 0; + border-color: transparent; + background-color: transparent; + background-image: none; + color: $panel_fg_color; + + &:hover, &:prelight { + @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.11)); + + border-color: mix($panel_bg_color, $panel_fg_color, 0.11); + color: shade($panel_fg_color, 1.08); + } + + &:active, &:checked { + @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.21), to top); + + border-color: mix($panel_bg_color, $panel_fg_color, 0.21); + color: shade($panel_fg_color, 1.08); + + &:prelight { + @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.31), to top); + + border-color: mix($panel_bg_color, $panel_fg_color, 0.31); + } + } + } + PanelWidget, PanelApplet, PanelToplevel { @extend %panel; @@ -19,34 +48,9 @@ border: none; .button { + @extend %panelbutton; + -GtkButton-inner-border: 2; - - border-width: 0 1px; - border-radius: 0; - border-color: transparent; - background-color: transparent; - background-image: none; - color: $panel_fg_color; - - &:hover, &:prelight { - @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.11)); - - border-color: mix($panel_bg_color, $panel_fg_color, 0.11); - color: shade($panel_fg_color, 1.08); - } - - &:active, &:checked { - @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.21), to top); - - border-color: mix($panel_bg_color, $panel_fg_color, 0.21); - color: shade($panel_fg_color, 1.08); - - &:prelight { - @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.31), to top); - - border-color: mix($panel_bg_color, $panel_fg_color, 0.31); - } - } } } diff --git a/gtk-3.0/scss/apps/_unity.scss b/gtk-3.0/scss/apps/_unity.scss new file mode 100644 index 0000000..5cea4ad --- /dev/null +++ b/gtk-3.0/scss/apps/_unity.scss @@ -0,0 +1,70 @@ +@import "panel"; + +/**************** + ! Unity styles * +*****************/ + +@include exports("unity") { + UnityDecoration { + -UnityDecoration-extents: 28px 1px 1px 1px; + -UnityDecoration-input-extents: 10px; + + -UnityDecoration-shadow-offset-x: 1px; + -UnityDecoration-shadow-offset-y: 1px; + -UnityDecoration-active-shadow-color: rgba(0,0,0,0.7); + -UnityDecoration-active-shadow-radius: 8px; + -UnityDecoration-inactive-shadow-color: rgba(0,0,0,0.5); + -UnityDecoration-inactive-shadow-radius: 5px; + + -UnityDecoration-glow-size: 10px; + -UnityDecoration-glow-color: $selected_bg_color; + + -UnityDecoration-title-indent: 10px; + -UnityDecoration-title-fade: 35px; + -UnityDecoration-title-alignment: 0.0; + + + &.top { + border: 1px solid $wm_border_focused; + border-bottom: none; + border-radius: 2px 2px 0 0; + padding: 1px ($spacing * 2) 0 ($spacing * 2); + background-color: $titlebar_bg_color; + color: mix($titlebar_fg_color, $titlebar_bg_color, 0.1); + text-shadow: none; + + &:backdrop { + border: 1px solid $wm_border_unfocused; + color: mix($titlebar_fg_color, $titlebar_bg_color, 0.4); + } + } + + &.left, &.right, &.bottom { + background-color: $wm_border_focused; + + &:backdrop { background-color: $wm_border_unfocused; } + } + } + + UnityPanelWidget, .unity-panel { + @extend %panel; + + border: none; + } + + .unity-panel { + &.menuitem, .menuitem { + border-width: 0 1px; + color: $panel_fg_color; + + &:hover, *:hover { + border-color: mix($panel_bg_color, $panel_fg_color, 0.21); + background-color: mix($panel_bg_color, $panel_fg_color, 0.21); + background-image: none; + color: shade($panel_fg_color, 1.08); + } + } + } + + SheetStyleDialog.unity-force-quit { background-color: $bg_color; } +} diff --git a/gtk-3.0/scss/apps/_xfce.scss b/gtk-3.0/scss/apps/_xfce.scss new file mode 100644 index 0000000..20dd546 --- /dev/null +++ b/gtk-3.0/scss/apps/_xfce.scss @@ -0,0 +1,26 @@ +@import "panel"; + +/*************** + ! Xfce styles * +****************/ + +@include exports("xfce") { + XfceHeading { + margin: 0; + padding: 0; + border: none; + background-image: none; + background-color: $base_color; + color: $text_color; + } + + .xfce4-panel { + @extend %panel; + + font: normal; + + .button { @extend %panelbutton; } + + .menu { -gtk-image-effect: none; } + } +} diff --git a/gtk-3.0/scss/gtk.scss b/gtk-3.0/scss/gtk.scss index 26eeaa5..e593bcb 100755 --- a/gtk-3.0/scss/gtk.scss +++ b/gtk-3.0/scss/gtk.scss @@ -30,3 +30,6 @@ @import "apps/nemo"; @import "apps/panel"; @import "apps/synaptic"; +@import "apps/xfce"; +@import "apps/unity"; +@import "apps/lightdm"; diff --git a/gtk-3.0/scss/widgets/_window.scss b/gtk-3.0/scss/widgets/_window.scss index 8f354c8..8d60778 100755 --- a/gtk-3.0/scss/widgets/_window.scss +++ b/gtk-3.0/scss/widgets/_window.scss @@ -3,27 +3,32 @@ ***************/ @include exports("window") { - .window-frame { - border: none; - border-radius: $roundness $roundness 0 0; + %window { box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23), - 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); - - /* this is used for the resize cursor area */ - margin: $spacing * 3; + 0 0 0 1px $wm_border_focused; &:backdrop { box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24), - 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.12); + 0 0 0 1px $wm_border_unfocused; } + } + + .window-frame { + @extend %window; + + border: none; + border-radius: $roundness $roundness 0 0; + + /* this is used for the resize cursor area */ + margin: $spacing * 3; &.tiled { border-radius: 0; } &.csd { &.popup { + @extend %window; + border-radius: 0; - box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23), - 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); } &.tooltip { @@ -32,9 +37,9 @@ } &.message-dialog { + @extend %window; + border-radius: $roundness; - box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23), - 0 0 0 1px mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); } } } From 7bdd234dd93753398711ff20588f37002259c678 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 22 May 2015 20:26:20 +0530 Subject: [PATCH 46/73] Change theme color --- gtk-2.0/gtkrc | 2 +- unity/close_focused_prelight.svg | 2 +- unity/close_focused_pressed.svg | 2 +- unity/maximize_focused_prelight.svg | 2 +- unity/maximize_focused_pressed.svg | 2 +- unity/minimize_focused_prelight.svg | 2 +- unity/minimize_focused_pressed.svg | 2 +- unity/progress_bar_fill.svg | 2 +- unity/unmaximize_focused_prelight.svg | 2 +- unity/unmaximize_focused_pressed.svg | 2 +- xfce-notify-4.0/gtkrc | 2 +- xfwm4/close-prelight.xpm | 2 +- xfwm4/close-pressed.xpm | 2 +- xfwm4/hide-prelight.xpm | 2 +- xfwm4/hide-pressed.xpm | 2 +- xfwm4/maximize-prelight.xpm | 2 +- xfwm4/maximize-pressed.xpm | 2 +- xfwm4/maximize-toggled-prelight.xpm | 2 +- xfwm4/maximize-toggled-pressed.xpm | 2 +- xfwm4/shade-prelight.xpm | 2 +- xfwm4/shade-pressed.xpm | 2 +- xfwm4/shade-toggled-prelight.xpm | 2 +- xfwm4/shade-toggled-pressed.xpm | 2 +- xfwm4/stick-prelight.xpm | 2 +- xfwm4/stick-pressed.xpm | 2 +- xfwm4/stick-toggled-prelight.xpm | 2 +- xfwm4/stick-toggled-pressed.xpm | 2 +- 27 files changed, 27 insertions(+), 27 deletions(-) diff --git a/gtk-2.0/gtkrc b/gtk-2.0/gtkrc index 0f86d59..790890a 100755 --- a/gtk-2.0/gtkrc +++ b/gtk-2.0/gtkrc @@ -1,6 +1,6 @@ # Numix GTK Theme -gtk-color-scheme = "bg_color:#eeeeee\nfg_color:#333333\nbase_color:#ffffff\ntext_color:#333333\nselected_bg_color:#d64937\nselected_fg_color:#ffffff\ntooltip_bg_color:#333333\ntooltip_fg_color:#eeeeee\ntitlebar_bg_color:#333333\ntitlebar_fg_color:#eeeeee\nmenubar_bg_color:#333333\nmenubar_fg_color:#eeeeee\ntoolbar_bg_color:#eeeeee\ntoolbar_fg_color:#333333\nmenu_bg_color:#333333\nmenu_fg_color:#eeeeee\npanel_bg_color:#333333\npanel_fg_color:#eeeeee\nlink_color:#f06860" +gtk-color-scheme = "bg_color:#eeeeee\nfg_color:#333333\nbase_color:#ffffff\ntext_color:#333333\nselected_bg_color:#f0544c\nselected_fg_color:#ffffff\ntooltip_bg_color:#333333\ntooltip_fg_color:#eeeeee\ntitlebar_bg_color:#333333\ntitlebar_fg_color:#eeeeee\nmenubar_bg_color:#333333\nmenubar_fg_color:#eeeeee\ntoolbar_bg_color:#eeeeee\ntoolbar_fg_color:#333333\nmenu_bg_color:#333333\nmenu_fg_color:#eeeeee\npanel_bg_color:#333333\npanel_fg_color:#eeeeee\nlink_color:#f06860" # Default Style diff --git a/unity/close_focused_prelight.svg b/unity/close_focused_prelight.svg index 46d998c..9c4611b 100755 --- a/unity/close_focused_prelight.svg +++ b/unity/close_focused_prelight.svg @@ -1 +1 @@ - + diff --git a/unity/close_focused_pressed.svg b/unity/close_focused_pressed.svg index abecba9..fb119c6 100755 --- a/unity/close_focused_pressed.svg +++ b/unity/close_focused_pressed.svg @@ -1 +1 @@ - + diff --git a/unity/maximize_focused_prelight.svg b/unity/maximize_focused_prelight.svg index 7c1cffd..b1d4bc2 100755 --- a/unity/maximize_focused_prelight.svg +++ b/unity/maximize_focused_prelight.svg @@ -1 +1 @@ - + diff --git a/unity/maximize_focused_pressed.svg b/unity/maximize_focused_pressed.svg index 38dbcc4..0e35a70 100755 --- a/unity/maximize_focused_pressed.svg +++ b/unity/maximize_focused_pressed.svg @@ -1 +1 @@ - + diff --git a/unity/minimize_focused_prelight.svg b/unity/minimize_focused_prelight.svg index 29699c2..56801e1 100755 --- a/unity/minimize_focused_prelight.svg +++ b/unity/minimize_focused_prelight.svg @@ -1 +1 @@ - + diff --git a/unity/minimize_focused_pressed.svg b/unity/minimize_focused_pressed.svg index a713426..253a310 100755 --- a/unity/minimize_focused_pressed.svg +++ b/unity/minimize_focused_pressed.svg @@ -1 +1 @@ - + diff --git a/unity/progress_bar_fill.svg b/unity/progress_bar_fill.svg index aef847c..dc9cfec 100755 --- a/unity/progress_bar_fill.svg +++ b/unity/progress_bar_fill.svg @@ -1,5 +1,5 @@ - + diff --git a/unity/unmaximize_focused_prelight.svg b/unity/unmaximize_focused_prelight.svg index a71bdea..90f33e7 100755 --- a/unity/unmaximize_focused_prelight.svg +++ b/unity/unmaximize_focused_prelight.svg @@ -1 +1 @@ - + diff --git a/unity/unmaximize_focused_pressed.svg b/unity/unmaximize_focused_pressed.svg index 11173a6..2b21194 100755 --- a/unity/unmaximize_focused_pressed.svg +++ b/unity/unmaximize_focused_pressed.svg @@ -1 +1 @@ - + diff --git a/xfce-notify-4.0/gtkrc b/xfce-notify-4.0/gtkrc index 52a62ca..274b046 100755 --- a/xfce-notify-4.0/gtkrc +++ b/xfce-notify-4.0/gtkrc @@ -27,7 +27,7 @@ style "notify-button" { } style "notify-text" { - GtkWidget::link-color = "#d64937" + GtkWidget::link-color = "#f0544c" fg[NORMAL] = "#f9f9f9" fg[PRELIGHT] = "#f9f9f9" diff --git a/xfwm4/close-prelight.xpm b/xfwm4/close-prelight.xpm index e3bd443..e8916bd 100755 --- a/xfwm4/close-prelight.xpm +++ b/xfwm4/close-prelight.xpm @@ -3,7 +3,7 @@ static char * close_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", diff --git a/xfwm4/close-pressed.xpm b/xfwm4/close-pressed.xpm index e3bd443..e8916bd 100755 --- a/xfwm4/close-pressed.xpm +++ b/xfwm4/close-pressed.xpm @@ -3,7 +3,7 @@ static char * close_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", diff --git a/xfwm4/hide-prelight.xpm b/xfwm4/hide-prelight.xpm index d2470bf..040ece7 100755 --- a/xfwm4/hide-prelight.xpm +++ b/xfwm4/hide-prelight.xpm @@ -3,7 +3,7 @@ static char * hide_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", diff --git a/xfwm4/hide-pressed.xpm b/xfwm4/hide-pressed.xpm index d2470bf..040ece7 100755 --- a/xfwm4/hide-pressed.xpm +++ b/xfwm4/hide-pressed.xpm @@ -3,7 +3,7 @@ static char * hide_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", diff --git a/xfwm4/maximize-prelight.xpm b/xfwm4/maximize-prelight.xpm index eec4b49..6a73981 100755 --- a/xfwm4/maximize-prelight.xpm +++ b/xfwm4/maximize-prelight.xpm @@ -3,7 +3,7 @@ static char * maximize_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", diff --git a/xfwm4/maximize-pressed.xpm b/xfwm4/maximize-pressed.xpm index eec4b49..6a73981 100755 --- a/xfwm4/maximize-pressed.xpm +++ b/xfwm4/maximize-pressed.xpm @@ -3,7 +3,7 @@ static char * maximize_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", diff --git a/xfwm4/maximize-toggled-prelight.xpm b/xfwm4/maximize-toggled-prelight.xpm index 2dda206..0c7ed43 100755 --- a/xfwm4/maximize-toggled-prelight.xpm +++ b/xfwm4/maximize-toggled-prelight.xpm @@ -3,7 +3,7 @@ static char * maximize_toggled_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", diff --git a/xfwm4/maximize-toggled-pressed.xpm b/xfwm4/maximize-toggled-pressed.xpm index 2dda206..0c7ed43 100755 --- a/xfwm4/maximize-toggled-pressed.xpm +++ b/xfwm4/maximize-toggled-pressed.xpm @@ -3,7 +3,7 @@ static char * maximize_toggled_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", diff --git a/xfwm4/shade-prelight.xpm b/xfwm4/shade-prelight.xpm index 4aa3b7a..e50b07a 100755 --- a/xfwm4/shade-prelight.xpm +++ b/xfwm4/shade-prelight.xpm @@ -3,7 +3,7 @@ static char * shade_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", diff --git a/xfwm4/shade-pressed.xpm b/xfwm4/shade-pressed.xpm index 4aa3b7a..e50b07a 100755 --- a/xfwm4/shade-pressed.xpm +++ b/xfwm4/shade-pressed.xpm @@ -3,7 +3,7 @@ static char * shade_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", diff --git a/xfwm4/shade-toggled-prelight.xpm b/xfwm4/shade-toggled-prelight.xpm index e3109e5..0cecaba 100755 --- a/xfwm4/shade-toggled-prelight.xpm +++ b/xfwm4/shade-toggled-prelight.xpm @@ -3,7 +3,7 @@ static char * shade_toggled_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", diff --git a/xfwm4/shade-toggled-pressed.xpm b/xfwm4/shade-toggled-pressed.xpm index e3109e5..0cecaba 100755 --- a/xfwm4/shade-toggled-pressed.xpm +++ b/xfwm4/shade-toggled-pressed.xpm @@ -3,7 +3,7 @@ static char * shade_toggled_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", diff --git a/xfwm4/stick-prelight.xpm b/xfwm4/stick-prelight.xpm index 725c314..ea2a259 100755 --- a/xfwm4/stick-prelight.xpm +++ b/xfwm4/stick-prelight.xpm @@ -3,7 +3,7 @@ static char * stick_toggled_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", diff --git a/xfwm4/stick-pressed.xpm b/xfwm4/stick-pressed.xpm index 725c314..ea2a259 100755 --- a/xfwm4/stick-pressed.xpm +++ b/xfwm4/stick-pressed.xpm @@ -3,7 +3,7 @@ static char * stick_toggled_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", diff --git a/xfwm4/stick-toggled-prelight.xpm b/xfwm4/stick-toggled-prelight.xpm index d56f353..5763b9b 100755 --- a/xfwm4/stick-toggled-prelight.xpm +++ b/xfwm4/stick-toggled-prelight.xpm @@ -3,7 +3,7 @@ static char * stick_toggled_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", diff --git a/xfwm4/stick-toggled-pressed.xpm b/xfwm4/stick-toggled-pressed.xpm index d56f353..5763b9b 100755 --- a/xfwm4/stick-toggled-pressed.xpm +++ b/xfwm4/stick-toggled-pressed.xpm @@ -3,7 +3,7 @@ static char * stick_toggled_prelight_xpm[] = { "24 24 3 1", " c None", ". c #2D2D2D", -"+ c #D64937 s active_color_1", +"+ c #f0544c s active_color_1", "........................", "........................", "........................", From 3b736963fb292eefb04102360383bf16ff30554c Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sun, 31 May 2015 21:50:35 +0530 Subject: [PATCH 47/73] Start redesign --- gtk-3.0/assets/assets.sketch | Bin 0 -> 335872 bytes gtk-3.0/assets/checkbox-checked-dark.png | Bin 0 -> 469 bytes .../checkbox-checked-insensitive-dark.png | Bin 0 -> 298 bytes .../assets/checkbox-checked-insensitive.png | Bin 0 -> 282 bytes gtk-3.0/assets/checkbox-checked.png | Bin 0 -> 522 bytes gtk-3.0/assets/checkbox-mixed-dark.png | Bin 0 -> 349 bytes .../checkbox-mixed-insensitive-dark.png | Bin 0 -> 202 bytes gtk-3.0/assets/checkbox-mixed-insensitive.png | Bin 0 -> 182 bytes gtk-3.0/assets/checkbox-mixed.png | Bin 0 -> 382 bytes gtk-3.0/assets/checkbox-unchecked-dark.png | Bin 0 -> 233 bytes .../checkbox-unchecked-insensitive-dark.png | Bin 0 -> 172 bytes .../assets/checkbox-unchecked-insensitive.png | Bin 0 -> 153 bytes gtk-3.0/assets/checkbox-unchecked.png | Bin 0 -> 252 bytes .../assets/grid-selection-checked-dark.png | Bin 0 -> 813 bytes gtk-3.0/assets/grid-selection-checked.png | Bin 0 -> 883 bytes .../assets/grid-selection-unchecked-dark.png | Bin 0 -> 306 bytes gtk-3.0/assets/grid-selection-unchecked.png | Bin 0 -> 347 bytes .../menuitem-checkbox-checked-hover.png | Bin 0 -> 212 bytes .../menuitem-checkbox-checked-insensitive.png | Bin 0 -> 215 bytes gtk-3.0/assets/menuitem-checkbox-checked.png | Bin 0 -> 426 bytes .../assets/menuitem-checkbox-mixed-hover.png | Bin 0 -> 114 bytes .../menuitem-checkbox-mixed-insensitive.png | Bin 0 -> 109 bytes gtk-3.0/assets/menuitem-checkbox-mixed.png | Bin 0 -> 228 bytes .../assets/menuitem-radio-checked-hover.png | Bin 0 -> 171 bytes .../menuitem-radio-checked-insensitive.png | Bin 0 -> 181 bytes gtk-3.0/assets/menuitem-radio-checked.png | Bin 0 -> 319 bytes gtk-3.0/assets/radio-checked-dark.png | Bin 0 -> 593 bytes .../assets/radio-checked-insensitive-dark.png | Bin 0 -> 473 bytes gtk-3.0/assets/radio-checked-insensitive.png | Bin 0 -> 389 bytes gtk-3.0/assets/radio-checked.png | Bin 0 -> 637 bytes gtk-3.0/assets/radio-mixed-dark.png | Bin 0 -> 529 bytes .../assets/radio-mixed-insensitive-dark.png | Bin 0 -> 449 bytes gtk-3.0/assets/radio-mixed-insensitive.png | Bin 0 -> 349 bytes gtk-3.0/assets/radio-mixed.png | Bin 0 -> 603 bytes gtk-3.0/assets/radio-unchecked-dark.png | Bin 0 -> 485 bytes .../radio-unchecked-insensitive-dark.png | Bin 0 -> 420 bytes .../assets/radio-unchecked-insensitive.png | Bin 0 -> 335 bytes gtk-3.0/assets/radio-unchecked.png | Bin 0 -> 517 bytes gtk-3.0/gtk-dark.css | 1 + gtk-3.0/gtk.css | 1 - gtk-3.0/scss/_functions.scss | 12 +- gtk-3.0/scss/_global.scss | 50 ++--- gtk-3.0/scss/_widgets.scss | 36 ++++ gtk-3.0/scss/apps/_lightdm.scss | 2 +- gtk-3.0/scss/apps/_nautilus.scss | 9 +- gtk-3.0/scss/gtk-dark.scss | 3 + gtk-3.0/scss/gtk.scss | 36 +--- gtk-3.0/scss/widgets/_actionbar.scss | 2 +- gtk-3.0/scss/widgets/_base.scss | 27 +-- gtk-3.0/scss/widgets/_button.scss | 180 ++++++++++-------- gtk-3.0/scss/widgets/_calendar.scss | 2 +- gtk-3.0/scss/widgets/_entry.scss | 40 ++-- gtk-3.0/scss/widgets/_grid.scss | 2 +- gtk-3.0/scss/widgets/_menu.scss | 10 +- gtk-3.0/scss/widgets/_misc.scss | 2 +- gtk-3.0/scss/widgets/_notebook.scss | 38 ++-- gtk-3.0/scss/widgets/_overshoot.scss | 123 ++++++++++++ gtk-3.0/scss/widgets/_progress.scss | 16 +- gtk-3.0/scss/widgets/_scrollbar.scss | 31 +-- gtk-3.0/scss/widgets/_sidebar.scss | 80 ++++---- gtk-3.0/scss/widgets/_toggle.scss | 54 ++++-- gtk-3.0/scss/widgets/_toolbar.scss | 12 +- gtk-3.0/scss/widgets/_view.scss | 6 +- gtk-3.0/scss/widgets/_window.scss | 8 +- unity/close.svg | 2 +- unity/maximize.svg | 2 +- unity/minimize.svg | 2 +- unity/minimized.svg | 2 +- unity/progress_bar_trough.svg | 2 +- unity/unmaximize.svg | 2 +- xfce-notify-4.0/gtkrc | 20 +- xfwm4/close-active.xpm | 4 +- xfwm4/close-inactive.xpm | 2 +- xfwm4/close-prelight.xpm | 4 +- xfwm4/close-pressed.xpm | 2 +- xfwm4/hide-active.xpm | 4 +- xfwm4/hide-inactive.xpm | 2 +- xfwm4/hide-prelight.xpm | 2 +- xfwm4/hide-pressed.xpm | 2 +- xfwm4/maximize-active.xpm | 4 +- xfwm4/maximize-inactive.xpm | 2 +- xfwm4/maximize-prelight.xpm | 2 +- xfwm4/maximize-pressed.xpm | 2 +- xfwm4/maximize-toggled-active.xpm | 4 +- xfwm4/maximize-toggled-inactive.xpm | 2 +- xfwm4/maximize-toggled-prelight.xpm | 2 +- xfwm4/maximize-toggled-pressed.xpm | 2 +- xfwm4/menu-active.xpm | 2 +- xfwm4/menu-inactive.xpm | 2 +- xfwm4/menu-prelight.xpm | 2 +- xfwm4/menu-pressed.xpm | 2 +- xfwm4/shade-active.xpm | 4 +- xfwm4/shade-inactive.xpm | 2 +- xfwm4/shade-prelight.xpm | 2 +- xfwm4/shade-pressed.xpm | 2 +- xfwm4/shade-toggled-active.xpm | 4 +- xfwm4/shade-toggled-inactive.xpm | 2 +- xfwm4/shade-toggled-prelight.xpm | 2 +- xfwm4/shade-toggled-pressed.xpm | 2 +- xfwm4/stick-active.xpm | 4 +- xfwm4/stick-inactive.xpm | 2 +- xfwm4/stick-prelight.xpm | 2 +- xfwm4/stick-pressed.xpm | 2 +- xfwm4/stick-toggled-active.xpm | 4 +- xfwm4/stick-toggled-inactive.xpm | 2 +- xfwm4/stick-toggled-prelight.xpm | 2 +- xfwm4/stick-toggled-pressed.xpm | 2 +- xfwm4/themerc | 2 +- xfwm4/title-1-active.xpm | 2 +- xfwm4/title-1-inactive.xpm | 2 +- xfwm4/title-2-active.xpm | 2 +- xfwm4/title-2-inactive.xpm | 2 +- xfwm4/title-3-active.xpm | 2 +- xfwm4/title-3-inactive.xpm | 2 +- xfwm4/title-4-active.xpm | 2 +- xfwm4/title-4-inactive.xpm | 2 +- xfwm4/title-5-active.xpm | 2 +- xfwm4/title-5-inactive.xpm | 2 +- xfwm4/top-left-active.xpm | 2 +- xfwm4/top-left-inactive.xpm | 2 +- xfwm4/top-right-active.xpm | 2 +- xfwm4/top-right-inactive.xpm | 2 +- 122 files changed, 538 insertions(+), 397 deletions(-) create mode 100644 gtk-3.0/assets/assets.sketch create mode 100644 gtk-3.0/assets/checkbox-checked-dark.png create mode 100644 gtk-3.0/assets/checkbox-checked-insensitive-dark.png create mode 100644 gtk-3.0/assets/checkbox-checked-insensitive.png create mode 100644 gtk-3.0/assets/checkbox-checked.png create mode 100644 gtk-3.0/assets/checkbox-mixed-dark.png create mode 100644 gtk-3.0/assets/checkbox-mixed-insensitive-dark.png create mode 100644 gtk-3.0/assets/checkbox-mixed-insensitive.png create mode 100644 gtk-3.0/assets/checkbox-mixed.png create mode 100644 gtk-3.0/assets/checkbox-unchecked-dark.png create mode 100644 gtk-3.0/assets/checkbox-unchecked-insensitive-dark.png create mode 100644 gtk-3.0/assets/checkbox-unchecked-insensitive.png create mode 100644 gtk-3.0/assets/checkbox-unchecked.png create mode 100644 gtk-3.0/assets/grid-selection-checked-dark.png create mode 100644 gtk-3.0/assets/grid-selection-checked.png create mode 100644 gtk-3.0/assets/grid-selection-unchecked-dark.png create mode 100644 gtk-3.0/assets/grid-selection-unchecked.png create mode 100644 gtk-3.0/assets/menuitem-checkbox-checked-hover.png create mode 100644 gtk-3.0/assets/menuitem-checkbox-checked-insensitive.png create mode 100644 gtk-3.0/assets/menuitem-checkbox-checked.png create mode 100644 gtk-3.0/assets/menuitem-checkbox-mixed-hover.png create mode 100644 gtk-3.0/assets/menuitem-checkbox-mixed-insensitive.png create mode 100644 gtk-3.0/assets/menuitem-checkbox-mixed.png create mode 100644 gtk-3.0/assets/menuitem-radio-checked-hover.png create mode 100644 gtk-3.0/assets/menuitem-radio-checked-insensitive.png create mode 100644 gtk-3.0/assets/menuitem-radio-checked.png create mode 100644 gtk-3.0/assets/radio-checked-dark.png create mode 100644 gtk-3.0/assets/radio-checked-insensitive-dark.png create mode 100644 gtk-3.0/assets/radio-checked-insensitive.png create mode 100644 gtk-3.0/assets/radio-checked.png create mode 100644 gtk-3.0/assets/radio-mixed-dark.png create mode 100644 gtk-3.0/assets/radio-mixed-insensitive-dark.png create mode 100644 gtk-3.0/assets/radio-mixed-insensitive.png create mode 100644 gtk-3.0/assets/radio-mixed.png create mode 100644 gtk-3.0/assets/radio-unchecked-dark.png create mode 100644 gtk-3.0/assets/radio-unchecked-insensitive-dark.png create mode 100644 gtk-3.0/assets/radio-unchecked-insensitive.png create mode 100644 gtk-3.0/assets/radio-unchecked.png create mode 100755 gtk-3.0/gtk-dark.css create mode 100755 gtk-3.0/scss/_widgets.scss create mode 100644 gtk-3.0/scss/gtk-dark.scss mode change 100755 => 100644 gtk-3.0/scss/gtk.scss create mode 100644 gtk-3.0/scss/widgets/_overshoot.scss diff --git a/gtk-3.0/assets/assets.sketch b/gtk-3.0/assets/assets.sketch new file mode 100644 index 0000000000000000000000000000000000000000..aa048c3efd9dea2b415b3bf69efd6ad79d06da6f GIT binary patch literal 335872 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�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 C;-xwO literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/checkbox-checked-dark.png b/gtk-3.0/assets/checkbox-checked-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..36128053386c11438b9b60777cdf67dae127d235 GIT binary patch literal 469 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z}WBU z;uvBfI5l{;ACsfVUTf=aoi}dHib6}31UY5}T)1>8!#(w}xPWhsk&7SsraiYiXZihH&ana+b@Be=+RHN2UdWqC@JPKa+nuu{ zXyvTj+mV{8l5K_)Tb@^5dH;Ro?YGyK3MgeqUOSRf;-FkmwKpzI>A~0N>Jnb53MP3o zF|Kzjl&8;$UAFa+-qPpYK8h>%%FDdlBM`kPsIJ*3aiWM~?=>c#E28rstH+!0zx?#g zBb?PnZThF#TcU0()O@MI@X7I$=VOP-4>cGq7}}TkcFuH-(##1w(Nm`^fBie-)n)Ir z=K57n^l(u6TzFZsPtD=u-^Wu|EwBFaqsaa8 zL`zq@{gUd;&&`|FA29VbS!+DI_VVFQ&-Ck|cV`+3Fz^X$G-jBra$$5}?C$maH`h?$ z!v2f=35p#Bb}x#V4Q2SU7f(OB@z!5qmfF69jMocd%_n=PXf1Z1Djob&Sz_Y)sI_4~ ah4+dq+`&7iIgWvWfx*+&&t;ucLK6ToiN&J; literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/checkbox-checked-insensitive-dark.png b/gtk-3.0/assets/checkbox-checked-insensitive-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..ab056cbde35513718df74a3ed6f53e8c5d5c3f0c GIT binary patch literal 298 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&!0^P= z#WBP}aPH)2u4V%P*X4nN@;{!l{aTy-GHUnqcZc)?Sw4pPuSnVwbh$CX%+vao?g)*7rk1WoqN-!!nhW+U<@m<{7q>%7)3m;R7 zo~Pf+vuz)_XMa5%e024rExFum*PeQw`*8pKPhLaK?49D@XY?>IFfe$!`njxgN@xNA D)4zLe literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/checkbox-checked-insensitive.png b/gtk-3.0/assets/checkbox-checked-insensitive.png new file mode 100644 index 0000000000000000000000000000000000000000..09c66155f4e0a6c9349ea307b76291d74421ac6e GIT binary patch literal 282 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z;MOW z#WBP}aOvc|T!#!qT7yMf7cJAt|cbV)n*&>kk8UE`D4+61?P4qnNC_Z#c}-!(;1g?xw-F`K2eul zClr05dbRX*;Ylkwj+%>ciEnIF-QBiubzNIT4QJN=wKbE4UahW}yd+{)1-p8Y|BM4{ zIxl8!eY*eLo!uS0aVh-@lMPjlUh%yg{y|Oq75|0!TT;GkQ96^0S8Hh;=@*!?%QtmF m@Y3dq(w9Q2Jool}mTp=oe?H!B!9)fI1_n=8KbLh*2~7Y$_i#c0 literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/checkbox-checked.png b/gtk-3.0/assets/checkbox-checked.png new file mode 100644 index 0000000000000000000000000000000000000000..6b118323904b0edb65801e1e364fbc1537cbac9d GIT binary patch literal 522 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z<9*d z#WBP}uy?YrH&dWQ>-iqzv_;F7Ox%)jdASGo#%Y0BJI=W_{$=~`UhkA4DB`%5$=q*C z`P^&AoEEvp`vokylu@jA_n^)N@pXNl&sCnA`8{r`(?S97<(Jd*wpRxRiu45SjpLu| z_xzYa&zxx|Q~Vx({E?&~(zI%o1lz(Lx8E+hnRDqw$mgoP-V;4ocCF(+pux#;!G!lp zmfm#lj&{ZuXO1R$#RX?C4{P1rbN<G{~_lD29FcR z{6vHkW%K=Ir*!eg%(LmZA#!=9^-)#EE0zrJ4(;%F&(iN|;H@-&>v;419sOxI_br2+Fq53O7nrak@i?QMr=9)H{!XyYY# hA#3ZZZD!wjL;5eTyTRJ3!oa}5;OXk;vd$@?2>{%5?xFwy literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/checkbox-mixed-dark.png b/gtk-3.0/assets/checkbox-mixed-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..7b5ee7a0926afc53f4d84683df15fa7ea2f55c2a GIT binary patch literal 349 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z$otN z;uvBfI5pTiuh~FgYj31NLbys;qS>p2RDL}e>3E!iY-Jg_8I zeb%y_SxZA6{@%A)LfC*~*0x;k-lo3G6>d#=W((w`^cqD4HXoeSz+tw{#G&|7zSAR} zhsPKc)b_l)cjQ&7_pJ6mKTCy<_m>~+6-hsH;C$7d+Wr2{J0u#;e6Ha+d|^U|!%T)- z^NoI$#&U0Fl9F*b+iZ}Mm&aql=(K7l=iQwr58E?*n1A8eS@8+hn|vS5s0}}C5VLH$ z>GzGZPcuqNWu(d+e{JH+e|hn(8}I6`PW}-y?dd;hmX$Sm@@B%O3=9kmp00i_>zopr E0E9}E9{>OV literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/checkbox-mixed-insensitive-dark.png b/gtk-3.0/assets/checkbox-mixed-insensitive-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..654d78a45f7e2ee73d7d9b1c997362d918032eaa GIT binary patch literal 202 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z|i99 z;uvBfn0)2x)leZ((Yq&(99eSMf$7Kh_xGn>UmyQ_bA!p}j~`!d*tBWVg1LD^lW_AO-J0zMLafnBck44ofy`glX=O&z);}n z;uvBfn4FT3Ai$6mtMH5|Dd>Rtf=8!&91e+f#4~J>>%XZX;>8}Hw^>jnb@1B0ilpUXO@geCyQoH&O7 literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/checkbox-mixed.png b/gtk-3.0/assets/checkbox-mixed.png new file mode 100644 index 0000000000000000000000000000000000000000..5cd581fa2d04549f82410cac3ec5c984c2490083 GIT binary patch literal 382 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z-Zy= z;uvBfICZjZUbBNhD|>{1Q>Mm?n57-M-O&zH_3|!1VY;I!zTtF8L9dJ7L@iqpO@T-1 zHjB11wIthI+Vtklp8PbiYaWwQe-GkyVc1y zX|B&J+~#|4o07ovfH85Nv%)clYa25ej^?kA|Md5#ao@%Fv)ipJYj)0eFzIVp7po^P zB5Rx#7=FOy<7c;5yQVG6ERoizwfOk&@>$>N8}j?~S#8+gF*X?=m}SPOkf4{Q@Q3AM zdnEIQ9V*Aj_jT|5nCo}X n*H7}^$*6Jq)86ZHb&LnsELgs4-k44ofy`glX=O&z_8fU z#WBP}@a<$@t|JOOt$$-hUTu1C%XjJVmyXqQUY_CQvTfk_*W<5IVw&=e*TrDZdsfwl zk1g~ro8$(an)z4I^7;A7dD`XY-X1onSSs>(&SagewK_|WIC12wwtR@nHtONaU{O2v zLR2q&(yjY04|W|4b#4@@U}CCrWUR}SWByi?BrOo=b@O)G*T{n{fkH_J2|Eqbwq481 mT{-QYla16LtG?vFOfuTO&)y$tiC|!0VDNPHb6Mw<&;$S;ep_w; literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/checkbox-unchecked-insensitive-dark.png b/gtk-3.0/assets/checkbox-unchecked-insensitive-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..e98cc68f54be28e447226892d0b6cfc1722602f0 GIT binary patch literal 172 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z>wzY z;uvBfn0)2x)leZ((Yq&(99eSMf$7Kh_xGn>UmyQ_bA!p}j~`!d*tBWVg1L600000 literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/checkbox-unchecked-insensitive.png b/gtk-3.0/assets/checkbox-unchecked-insensitive.png new file mode 100644 index 0000000000000000000000000000000000000000..80c76dce46f8dc82e4a7d7333f1d42299ff440ef GIT binary patch literal 153 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z!2=| z;uvBfn4FT3Ai$6mtMH5|Dd>Rtf=8!&91e+f#4~k44ofy`glX=O&z_88J z#WBP}@a^P-oGk_duIeW>9-VDA-O&-7!JI9x>8pLgtn8-Nq{UAJzOomYy)L}js3`F1 zU(KPKg!zWh6Q@jC=fY6^{-i{6qww_9 zpDSL^+N8tHq{*jn;0(*OsX>hY!Wfzl808$_w@Lo)(eDp?rkDFyiuc@!Z+Id8?}5+N z+fmX?O$(NoY+_*3(Lepkro2k8YthlHWg;xwa;xXQsbH9WE_SNoeJ=$D1_lOCS3j3^ HP6V0!N9 z;usRac{KcNwy>i}{qKnxW~**X?rd1>c=zqNH|R5qAc6x$%i z#(731O0dkK;X0cgQ?$IrDy9sr&o`E>__kn~+a7%u37fsT&dd8_7WLFl5VN;i_;Wjd zA>WURqw|>97=HZhT)ibfym3-m*Rjv(n%U259?Ur6<-mG>;;pyLDfc7w!kBWV*oGgR zK5hQRSKq(eIc*fY!L#SfOIF+3TJ;Yz_;sAjR$L0zmiVo6`)qN8eO+m^%;);^(l-+K z@-gk%SfA0;m2Ax9w0OGr_Z53~DNNm?5@E(;@ny$mIT;QeCk_$!^b_~yiP|~`A76K2 z;X}_8-a-kfWqhhWp<&8LnTxxYbw971_NiL!_JIkVTaC#o{;yd{~W^GyiIm;&oLM(ly%Cpa&dl-E{yQlYSuV~copEEyItKT{` z;UvHO@>}b*=1T4L*xU5@uuHMb@|k|iZ?jlzmyqslJM;I-k5oxUf!Eg-Rh%;oSs7y0 zJ;C{?VCDDHd2+gUzASZC6=aRM%DaY9?cn^3|4J9REl#iq9dMHn+S}wUvz2Ybi`*FD z73_bG-+ueygy*kskDF_bKFWMr;@IC=ox9@yUegPOLaPoLaIh|6emwoF`Ib%3wmB?r zUj5Bnm4Q|5;JuZ~r&k<1e8yQYfx)HW;LROY&%bV1%(*x*dVPXcpU>JKg^MQy^yZZE z`CRmF%e}3VAl0? zaSVyzJUZRiU)WLR*!*d4xmA>wTye<=ap6*1B&hs|{ex1~B;)v|$(` z*?8Cp3V*niU?Z{k(ZWSbnYJov%y_%{chAqs3-2xsD0{4OdG6eEXWswZe`d?$=1?nZ z>u5DKwRf&c6RjH^6yAOQdE;%>$`CCL5iakYG4Edf`0?YfkJ{$P$~F@{bV|$1%Uu@- zwm2zXKlrO@S*FtLvr1FF*7o%F9<7}`c`|=nTid&1Nron-rU&1DfBiT%fBNavDPF2e zE@!GtKH1*(^jlz*pT+9yt`aFmPwKRv?Je1TecJ1`iLPp&&%O^m^wMFu+0A=wcRJU6 zm5#c7Rc-s6kjNS9)_>cf&cu_cpA#`fqx``9ELGYbyTA{;c_TVcPA3noEu`%bc*7Z&%M# zxw+xVo3>NTe9Jn*jaT2eXY#SI@HAIo=iS{;4W^w|iDvW>d%avJoxN{$OH9qio$g0w zTY86tX0n`9&0)R3EONkN{_ZR50(Nz1nMt+Y=1N$eWBM+3+Pv=ESDEUMGz#>h9y7Xb zvRmbPqw>*;54EfxysZUw*D~ttzwLIrQ{ho~lptTbtiR>D!1WeY4r;HIb~yWemFoDq zW!2)D?cE`L#kaCHO}o2!9fO~cAd7&8yXNnm$v5tE%*mGbXy{OIIkMrsM#8yt!y~im z*Z;2H#dw7?<@eg%x76dNU-`Md{&nJP9ivMBFVW&hHSb;har&57Xk6IC2`9Z@{og<5 w(&bxUYo>&6bu-=-cjZN7+nl)RuYbmGk$uxY&-e2p1_lNOPgg&ebxsLQ0OJ6paR2}S literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/grid-selection-unchecked-dark.png b/gtk-3.0/assets/grid-selection-unchecked-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..2f40f868a21f966375013f046a47d7ba8d7e0357 GIT binary patch literal 306 zcmeAS@N?(olHy`uVBq!ia0y~yU{C;I4mJh`hT^KKFANL}jKx9jP7LeL$-HD>V0h!{ z;usRa`F6T3*C7Xi*6;d_ItSxgN>1wTX;>?F-0g$NJV*U0Z<*o_Is_f5+;ur(_v|#W zwpQIwdw&MmuHARs+_zZo^rsbD-(@`dT)#dwQpDHZ_j0mCn|AGA)=Bxdx2gYFr@=Lq z>)dLEBR1!|oNSyq<}N*}fA2RlYrwG?{tPW1me-=5+zbg#m1*?fQ~B!cO{P49kEeMZ zZ_i2K6XY%DIFNrce}iw?EB*kc4n{)-wj&J^0?bJcJROY9%QjtOlx936rFdY;%iP%O z(a-PLU0bSS#Nci(bNu7BD$A!)N51}X$yJRE?Y_lq`q=vVXLI((SgGfGX16miFfe$! L`njxgN@xNA;ii5P literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/grid-selection-unchecked.png b/gtk-3.0/assets/grid-selection-unchecked.png new file mode 100644 index 0000000000000000000000000000000000000000..f2b67fa6aec42b5a66da66ac72edd03e9e93eca2 GIT binary patch literal 347 zcmeAS@N?(olHy`uVBq!ia0y~yU{C;I4mJh`hT^KKFANL}jKx9jP7LeL$-HD>U=;Oq zaSVyzd^_EcugO59Exx0-7n6l&hU}x^^0k0b=5y4Sd!owI&Gbwqb51sv58xFYmP0`Z0H{q(l^bG~t zle3>SbWZs7zkus)l#RW@s+nHi2Hg`6|B^Xxze4()#Pa*UelRdFFnGH9xvXk44ofy`glX=O&z|iOE z;uvBfn4BQNs?vJk|NsBGjTPJizYm*iIv~-KF(GZitT=@<<|IC+SAkC!n#nU?N^jV~ z;wm(gdCDAyBgG970&09I&2xMsj6Ik`j89CP>Y&4MgvHeOP)?JS0>hGYhK*bT_H0Ro z3T!_sS(TNO`6sCHG;HHy_{gQewv%Q5{6a}~(k44ofy`glX=O&z%bF% z#WBP}@a+Uc?n4Fwt&68NDU`l?aI5S8fBT&`7h1dwdimWc>QeKR9nTL=pKxdIo!B|r ztN#6IYWu_P^I_umC91(j-wSvuX7gEgoz>?#oU}>#4(FB+ZSfwPo~7^jKKrc$f1E>c z)}C17!tx73o@z7Ce`u8oammfsD*m=fdBt17bqm}>6f)JOO|g3UVA>gt#;@#YW`TmQ V?>~63ih+TF!PC{xWt~$(6964=TrB_q literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/menuitem-checkbox-checked.png b/gtk-3.0/assets/menuitem-checkbox-checked.png new file mode 100644 index 0000000000000000000000000000000000000000..4f609d66c9bdb6af0fbc41c794fd0c43bae31cb0 GIT binary patch literal 426 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z?kCc z;uvBfn4BQ-sbM0Ee8Ux`)&KdQ{7+ZB#GtmoYT3O%f8}J>?73X`_wUu98~LW}OQuUO zJItDCU0hbVY4fMGOuHKY-v7VfMuEBUhyEtU8*?~>lHZ-U_weXh#XXY*SNy!b{=IRx z`mJ*eUCn!$jTw$4&I&535oMy;!`Hv8kLn%%%$M|N zV7S3hSobn^(ju)q2j?v+tfGG{ZvGUyX!4(J6>H)QMxGOF25~!zAE@(NpBJ;_)D2fl zOEX=NCZ;mmQL0`sn{CrWwuT!C1#b^_%EzpUiB3^55v~98XVbcpu4Lr^rdVSQo&yX| zN+cMnnNKjX>TonK;$(5CbNgr>A>ySV%^<||@n9#LSMw2vM%GWpHcuRz3>xwnHd*-a gt#+H?)RoDwF{nt5_g_W}0|Nttr>mdKI;Vst07?|I9RL6T literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/menuitem-checkbox-mixed-hover.png b/gtk-3.0/assets/menuitem-checkbox-mixed-hover.png new file mode 100644 index 0000000000000000000000000000000000000000..8b11a27eb1d5d19cfddd4ebf6e7b0e488530a561 GIT binary patch literal 114 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z@X#l z;uvBfn4BQNdRT!);^N;A|NsBzbTE`IDb)DSp{$(DxJgFXD1C};k~0ItS9?|#>sk|D Q1_lNOPgg&ebxsLQ0RGY)>Hq)$ literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/menuitem-checkbox-mixed-insensitive.png b/gtk-3.0/assets/menuitem-checkbox-mixed-insensitive.png new file mode 100644 index 0000000000000000000000000000000000000000..b49cb300e4b84ff258ac7daf222a2a070852a897 GIT binary patch literal 109 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z@YBw z;uvBfn4BQNdRT!)V&e}-R*hr*t}-fL1UudCN%fxa;sk44ofy`glX=O&z%b9# z#WBP}@NK|B!Da&)w7Ck44ofy`glX=O&z>wrNY$p8g|Nrw$BIg;Bk44ofy`glX=O&z>x3h z;uvBfn4BQND$>rN%qQ&dD9AyFXKFq7lKG4u>ow&43=c=H;K@`7XXk44ofy`glX=O&!0^-4 z#WBP}FgZbjwa21~LFF9F5rd!q9lqHsuwB$(SjG@J;pBCT-or=jR!(f~RFzWs`27C- zrPX}rR^P8FyT-2|o+2RAkmJavz&vwq&g0pUGa|huBqUWGC62IlHa=;PI2u&K>`;>y zCbmsOp_gevk^*zUmjwk4lM=)iyl{CcP{J7T^ZWex@P)6E6Aq}c1u+{5N;bqCsQ7>J z=;U2lWpf<%pZ@><|Nqz5<>!l?i3+~+=iO=U0EK_7NfkK@SU5b41vWDnN(*duy6MpM zkYC_G+oSjZGe72rPY)cJcJf#ra0q1IB-s+UNboMJL!|*jXET$8TEDTP;}m`sPKGn{ XtQV+Wni9dlz`)??>gTe~DWM4fQ4@Hv literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/radio-checked-dark.png b/gtk-3.0/assets/radio-checked-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..be4856c74d8709123bda2b08f753dd99b00bf257 GIT binary patch literal 593 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z{Kt8 z;uvBfSQ_l>FB~Yc_w&6k$+s?qWdB*<8|}H_pak=qFYG%mw61dz`petYne&6yt=Ilw zs~SuAC+0h=I44fkxSA1t*~z1zWA(O|KJCS9_b%{MOg4YJ_xqgU_qD~xCrvI}7ov4m zU8vJ??N^b@``*{f^RTUcTUO2b?w-a`snV{aj}|?)IPZ9ETW)u%?6PJBf%BhPlzKSbXJX>4X0V?X*8|ulS`j)5k3#tXn$SttX=B#MXfh<~1()H!MH z-?bdhsWES6Fn!cYU$)V;D@Jm^b&t=6s=QJPPdDz-u+uOWE8C}cgdwBND%lY?HA--;}``^Jw5P``*}OF> zSKK;b_VpvJo#jVmp4+X`x#6)sZhicNw>t~w6&&VRBv^4Pu}>oDWaI0$+T_L8KL4zd zoSJ?{W0~~lY^}w)b;9eVdyg5hE1tdo>3N}T+m6nWG6>G8HRe+*A8 za6K2Y`s(i;H!3?~k|mhp1520Q%-PqxyPikXk|F>5)7Xsaf;S8d3=E#GelF{r5}E*{ CLKb2G literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/radio-checked-insensitive-dark.png b/gtk-3.0/assets/radio-checked-insensitive-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..24403ff4f59e8cbff97f52caea68a8388e063a1c GIT binary patch literal 473 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z&P2{ z#WBP}aPH*YUd(|4ZRh9Za<@~vMShAeC~|>b^CcIJ=TVC&pP|eb7O?fSDW_?pVKy1 zM(c?AHy?aZX(Q*ZccfVVZQ1WlF?#o>da3RY(2&T^P3n7mLub0T@%;1Qn{U3^b^rZ+ zZ9U!#FH7WDD&kg#1TC<7Io;v%%P9{1ck{kCeV4IM5qsdfHOe%|%zr{=f1&6El z{k44ofy`glX=O&z-aI3 z;uvBfxO8%~H?yIDTXepzD9hGcO&yH2AFlrYuUvCUePR<=RE~Dss*1zKPMdk6TbtzP z_?B%lp6Qb|ySH+y;oF0HC26OFk15_caQn=(_OzPBIu_1%4+ZZzu06#AP&>{Ov+yL{*O zG5%9!zM&Fka?0y^==PV!TiJ9scqUDp^IXX=YJ=b%$0^tC3=e2WoM7*;O*r_*qx0zF zt$|Xn&M<`CUwq^LR};g(t6IKFwXp?Q!z uQf)iaw{5&*X>I(BUv_cM+t&K$@;kRUwcML@Sc`#yfx*+&&t;ucLK6VvN2Z$q literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/radio-checked.png b/gtk-3.0/assets/radio-checked.png new file mode 100644 index 0000000000000000000000000000000000000000..f2da6f65808972251f6a0c27251366f62991e1b8 GIT binary patch literal 637 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z+~>} z;uvBf7(4m=YN0@pG{*#)wz&ArEV)cTW3#*Ra<`i<;_3mexkREr|#dH4`xUMdn z*x@(>C8UJQ5%vm2q%E$1D$(FC|ug^~Aajx4bFZ=@BUMXwGdm#pIrl z(5aUD@B1%Wz58$7|JGUOpUZPt=-SO{Q8WuvE4}w;$+4IGzy8#@d|v4ozAkggyOm`N z-n|J4?djGK{2i?#7;=a(t=zTKfQ_$v{CeJ_b{PVso z@x($wCOwu*50WQL5O#lZp@~sDT6g;C{#|$1*;)uB{ZeQ-xIICnL9FNV9Iw4`^_?t7 z1lC^9?t9sM(4EIJV?pVmZTfk)5Bn`o?&4OC-o~|{_Q-_hV{9#(i=`)eEDbuCV^$r{ zb86%5w{{LbTk6f^`u)9@UV0t1*39utR6S$C)q{k44ofy`glX=O&zEHU4>Y{ZfdOWGIyWh4fvzX_5 z)!y%U+pB}uhJ7x09oO}!^wGy3bs8d8jFFd1V>M1G-Due|@h{Gf=eTGjUs)%FB$7|#>#m&IoIgC<4~R^yE1s?{;uECi#t`_i}rd%9$cdIhRa6A+jIG4 z{)rwbGrLSQA4NV@Tek4?>G)eYX7ZsXCrqt;A94ITuP{TV=%&ZznLf{$>z&F^1m&JN z!ex13V%oxh8L4-9E!f{|*v~S@V&jtu+SY=yUuAmTc(=T|v_mh&F(-A4;r%178zXF< z%@cXxzWCyf!>M(TibZF#nRB&2opj=O%NaGJ_f{#N?i_bHzHMcQ*4DmrXB;ycs|6~Z muhpy!+12_x_3@KW%t?8ti(@|ay=7ovVDNPHb6Mw<&;$S>oa?Uu literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/radio-mixed-insensitive-dark.png b/gtk-3.0/assets/radio-mixed-insensitive-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..d20db95f0ba9a34b317aedac66151ec3c6582bf0 GIT binary patch literal 449 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z*z0+ z;uvBfICb(~KPE?k zb95wA(xba71>3DZ&%Sx{=lsQWkxPSauD+V3{nR- z)?YW@e~&k@EzZ$WH%&@Rxa+pKP;F}eOUspO{Z_XAzHp~Z>V{Zj<5>f(>f09WhZoK| z|J*F^^~|$rp({g-stwxic6sa+s68U-qO`s0#jZ4k*IfUfCM`*NFV(6zX$u?k>WS)H z(WyRD+9M<)dbdqf=km@va_GRUW3GYg_q~7b{mjaI@2t;$c3Q@&OJrCM@-o_+tLyKL zdoNk(7FeRk44ofy`glX=O&z$otN z;uvBfxO8%?HkrP*gElVD%!Ci?tsj;)c7@0SNU%_b8Kkgt!d0UC~M=uC)}|r?}O8M zUZ027eRAU0OKcCS_sHzq;xMmL<>i%paJ;wXr%&j(_%bL!>z`)??>gTe~DWM4f D&-##S literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/radio-mixed.png b/gtk-3.0/assets/radio-mixed.png new file mode 100644 index 0000000000000000000000000000000000000000..54f75103a15bd24be5e7769885584aa648e6eb81 GIT binary patch literal 603 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z$EJF z;uvBfm^;}zJIhhv_;;HcA;;u^mV}9q4(+{nUVufoC1b9{C65h03YvM(&3Cx2Dk&0W za=V;8`Iy_4TQ&-=T%8Cnph@jaPV$P2yp3iQMy-QQzy^WnzAKlW5f)d(}z?&lib{8s;8emx?=U; zvfZ_7mt1}s-1OMQMAmF;`i&a#0Fl-gRHrQ=USyBg4HiH zF|NM#_FKH)^5Be>TH4R!Zr(n9;>4@hZ{?-mDC|`JmT=(I{d5-*)*oH35By@9>&X23 z(GIW6wM)7;bw51#&2QVyq>UH)nXsGU^3H;!>SOPiu&OH$bCt4}~) z;^B!9>vc0sJke(}$LoPYj#=Se|lzVFOY1_`cPYwYUp<(RonI(PErod2ay z0vMtUnEw5mc`Ncc$#I6kaHOE3IMLt7ier{pP++Pd~3=E#G KelF{r5}E+w9~Axo literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/radio-unchecked-dark.png b/gtk-3.0/assets/radio-unchecked-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..535c85caaf7f38ee2deed5d22a44a89e5cbd33a3 GIT binary patch literal 485 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z&PL2 z#WBP}aO&jKUWXk-+SDh1*|$=>;NqmRa1p^8&hT|poAPQH^%qFXJ05f|Sa{*px$OdX zsur%^c1e$=cSn}@<3OE34eFd3R4fTUBiR zTzl#%X}?30KF?ov>{O0M$&%X{CewCQ^UYB%yHVe}Gvx%^+>XAg6VE@JO}U;by6Lu( z*3^r~_6ScuoA!CiMu!IGk44ofy`glX=O&z!>N0 z;uvBfICb(~zZM69L?em|* z+ia6>uCTc(z|HpN(D%Q_t7>{|{kMMAk}RChv)qk44ofy`glX=O&z{u(8 z;uvBfxODREEG9z{*X(X_w+{=u?4~3+)F1f&pX2_o5SI;2JWHLj**~^rvuZOd`MhYG znlfq5+~BezK?D%JCPp0oB8d^ z!zP}gme*%2wYF&J{IXwd<)Q;i_)qvQ;Ca);cl&^?`K}^{{@-lj+PC8x#f_PK7wufv rw(#xDzx*+lY{ADnucfN~J(pgUYaDlD<;k-Q3=9mOu6{1-oD!M<1C5az literal 0 HcmV?d00001 diff --git a/gtk-3.0/assets/radio-unchecked.png b/gtk-3.0/assets/radio-unchecked.png new file mode 100644 index 0000000000000000000000000000000000000000..ada911bfd8ab78b984f3598f5991a61583b9137f GIT binary patch literal 517 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s77>k44ofy`glX=O&z_{Pj z#WBP}uy?X`Hj|@BYkK-e&Zg6BM~~SV+B;1M$(x&@e$c3KiN|w$kBM4yT@)AXe!0~% zdHJzhwW8x=0UoWj%YeA?t}d(y@q zDn;M!8T4HDTYmV5Z;su3W4?_~i!#~2omj}myTzJqs@KzXx8H8MnUlsm`)pg}w5`G? z4hl$R96aE1F2!iovds4@L%J5F&Oh(2v9!!%lFJbXx#u1#P8H$e%?BSu>P_{!E_3aN zdvRjN9&eLLsWWr7M@#j(`AYR4Ump^x>LJI(FX_n5ro+qDoc^%jM($Pait~Qz2?v7I z3(vgmn|Z+C)c$ws@*>O2zUWJwtGoEIVokD#M6&zg3r&pP*;{8FRDUDhcYKBev#!L3 zZ)?9+{oQu|{q5$%tpD|RB(@|RnYJ`+_17k*W7Ga0uT}$lN9oPGpV_-#eyx)Jm+N{K(1y?5g2w9Q@%19m)Vp7j0q-{%7BufOg;nR01G*y{YVX~kMne;5O{ X#eV(F`TjTq0|SGntDnm{r-UW|?;7dP literal 0 HcmV?d00001 diff --git a/gtk-3.0/gtk-dark.css b/gtk-3.0/gtk-dark.css new file mode 100755 index 0000000..3c469d4 --- /dev/null +++ b/gtk-3.0/gtk-dark.css @@ -0,0 +1 @@ +@import url("dist/gtk-dark.css"); diff --git a/gtk-3.0/gtk.css b/gtk-3.0/gtk.css index a245e70..415ea7b 100755 --- a/gtk-3.0/gtk.css +++ b/gtk-3.0/gtk.css @@ -1,2 +1 @@ - @import url("dist/gtk.css"); diff --git a/gtk-3.0/scss/_functions.scss b/gtk-3.0/scss/_functions.scss index 6216dc2..a1e33cf 100755 --- a/gtk-3.0/scss/_functions.scss +++ b/gtk-3.0/scss/_functions.scss @@ -17,7 +17,15 @@ $modules: () !default; } @function shade($color, $amount) { - @return unquote("shade(#{$color},#{$amount})"); + @if type-of($color) == "color" { + @if ($amount > 1) { + @return lighten($color, ($amount - 1) * lightness($color)) + } @else { + @return darken($color, (1 - $amount) * lightness($color)) + } + } @else { + @return unquote("shade(#{$color},#{$amount})"); + } } @function mix($color1, $color2, $amount) { @@ -37,7 +45,7 @@ $modules: () !default; } @function border_insensitive($color) { - @return shade($color, ($contrast + .1)); + @return shade($color, ($contrast + .05)); } @mixin linear-gradient($color, $direction: to bottom) { diff --git a/gtk-3.0/scss/_global.scss b/gtk-3.0/scss/_global.scss index d2b1c51..1110ace 100755 --- a/gtk-3.0/scss/_global.scss +++ b/gtk-3.0/scss/_global.scss @@ -1,17 +1,17 @@ @import "functions"; // default color scheme -$bg_color: #eee; -$fg_color: #333; -$base_color: #fff; -$text_color: #333; -$selected_bg_color: #f06860; +$bg_color: if($variant == "dark", #444, #eee); +$fg_color: if($variant == "dark", #ccc, #555); +$base_color: if($variant == "dark", #333, #fff); +$text_color: if($variant == "dark", #eee, #333); +$selected_bg_color: #f0544c; $selected_fg_color: #fff; -$tooltip_bg_color: #333; +$tooltip_bg_color: #444; $tooltip_fg_color: #eee; // dark colors -$dark_bg_color: #333; +$dark_bg_color: #444; $dark_fg_color: #eee; // shadows @@ -19,18 +19,18 @@ $dark_shadow: #000; $light_shadow: #fff; // misc colors used by gtk+ -$info_fg_color: #3986ac; -$info_bg_color: #d9edf7; -$warning_fg_color: #c09853; -$warning_bg_color: #fcf8e3; -$question_fg_color: #d64937; -$question_bg_color: #fce5d5; -$error_fg_color: #b94a48; -$error_bg_color: #f2dede; -$link_color: #fc6f5d; -$success_color: #53a93f; -$warning_color: #f57900; -$error_color: #cc0000; +$info_fg_color: #fff; +$info_bg_color: #03a9f4; +$warning_fg_color: #fff; +$warning_bg_color: #ef6c00; +$question_fg_color: #fff; +$question_bg_color: #673ab7; +$error_fg_color: #fff; +$error_bg_color: #f44336; +$link_color: #3f51b5; +$success_color: #4caf50; +$warning_color: #ef6c00; +$error_color: #f44336; $toolbar_bg_color: $bg_color; $toolbar_fg_color: $fg_color; @@ -41,8 +41,8 @@ $titlebar_fg_color: $dark_fg_color; $menu_bg_color: $dark_bg_color; $menu_fg_color: $dark_fg_color; -$menubar_bg_color: $dark_bg_color; -$menubar_fg_color: $dark_fg_color; +$menubar_bg_color: $bg_color; +$menubar_fg_color: $fg_color; $panel_bg_color: $dark_bg_color; $panel_fg_color: $dark_fg_color; @@ -54,8 +54,8 @@ $lightdm_bg_color: $dark_bg_color; $lightdm_fg_color: $dark_fg_color; $wm_bg: $titlebar_bg_color; -$wm_border_focused: mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.21); -$wm_border_unfocused: mix(shade($titlebar_bg_color, 0.7), $titlebar_fg_color, 0.12); +$wm_border_focused: transparent; +$wm_border_unfocused: transparent; $wm_title_focused: mix($titlebar_fg_color, $titlebar_bg_color, 0.1); $wm_title_unfocused: mix($titlebar_fg_color, $titlebar_bg_color, 0.4); $wm_icons_focused: mix($titlebar_fg_color, $titlebar_bg_color, 0.1); @@ -67,6 +67,6 @@ $wm_icons_unfocused_pressed: shade($selected_bg_color, 0.8); // widget styles $roundness: 2px; -$spacing: 4px; +$spacing: 5px; $gradient: 0; -$contrast: .7; +$contrast: .8; diff --git a/gtk-3.0/scss/_widgets.scss b/gtk-3.0/scss/_widgets.scss new file mode 100755 index 0000000..62de316 --- /dev/null +++ b/gtk-3.0/scss/_widgets.scss @@ -0,0 +1,36 @@ +@import "functions"; +@import "global"; +@import "colors"; + + +@import "widgets/base"; +@import "widgets/button"; +@import "widgets/entry"; +@import "widgets/actionbar"; +@import "widgets/calendar"; +@import "widgets/choosers"; +@import "widgets/grid"; +@import "widgets/infobar"; +@import "widgets/menu"; +@import "widgets/misc"; +@import "widgets/notebook"; +@import "widgets/osd"; +@import "widgets/overshoot"; +@import "widgets/progress"; +@import "widgets/scrollbar"; +@import "widgets/sidebar"; +@import "widgets/spinner"; +@import "widgets/toggle"; +@import "widgets/toolbar"; +@import "widgets/view"; +@import "widgets/window"; + + +@import "apps/gedit"; +@import "apps/nautilus"; +@import "apps/nemo"; +@import "apps/panel"; +@import "apps/synaptic"; +@import "apps/xfce"; +@import "apps/unity"; +@import "apps/lightdm"; diff --git a/gtk-3.0/scss/apps/_lightdm.scss b/gtk-3.0/scss/apps/_lightdm.scss index 333d6af..453434e 100644 --- a/gtk-3.0/scss/apps/_lightdm.scss +++ b/gtk-3.0/scss/apps/_lightdm.scss @@ -125,7 +125,7 @@ .menu { font: normal; } - .arrow { olor: mix($lightdm_fg_color, $lightdm_bg_color, 0.5); } + .arrow { color: mix($lightdm_fg_color, $lightdm_bg_color, 0.5); } } #user_image { diff --git a/gtk-3.0/scss/apps/_nautilus.scss b/gtk-3.0/scss/apps/_nautilus.scss index d31a25e..9a9f754 100644 --- a/gtk-3.0/scss/apps/_nautilus.scss +++ b/gtk-3.0/scss/apps/_nautilus.scss @@ -23,7 +23,7 @@ .sidebar .frame { border: none; } - > GtkGrid > .pane-separator { + GtkPaned { border-width: 0 1px 0 0; border-style: solid; @@ -45,11 +45,6 @@ } NautilusQueryEditor { - .search-bar.toolbar { - border-top-width: 0; - border-bottom-width: 0; - } - .toolbar { padding-top: $spacing - 1px; padding-bottom: $spacing - 2px; @@ -66,7 +61,7 @@ } &, &.search-bar { - &:only-child { + &:last-child, &:only-child { border-bottom-width: 1px; border-bottom-color: border_normal($toolbar_bg_color); } diff --git a/gtk-3.0/scss/gtk-dark.scss b/gtk-3.0/scss/gtk-dark.scss new file mode 100644 index 0000000..fd46aa1 --- /dev/null +++ b/gtk-3.0/scss/gtk-dark.scss @@ -0,0 +1,3 @@ +$variant: "dark"; + +@import "widgets"; diff --git a/gtk-3.0/scss/gtk.scss b/gtk-3.0/scss/gtk.scss old mode 100755 new mode 100644 index e593bcb..4455669 --- a/gtk-3.0/scss/gtk.scss +++ b/gtk-3.0/scss/gtk.scss @@ -1,35 +1,3 @@ -@import "functions"; -@import "global"; -@import "colors"; +$variant: "light"; - -@import "widgets/base"; -@import "widgets/button"; -@import "widgets/entry"; -@import "widgets/actionbar"; -@import "widgets/calendar"; -@import "widgets/choosers"; -@import "widgets/grid"; -@import "widgets/infobar"; -@import "widgets/menu"; -@import "widgets/misc"; -@import "widgets/notebook"; -@import "widgets/osd"; -@import "widgets/progress"; -@import "widgets/scrollbar"; -@import "widgets/sidebar"; -@import "widgets/spinner"; -@import "widgets/toggle"; -@import "widgets/toolbar"; -@import "widgets/view"; -@import "widgets/window"; - - -@import "apps/gedit"; -@import "apps/nautilus"; -@import "apps/nemo"; -@import "apps/panel"; -@import "apps/synaptic"; -@import "apps/xfce"; -@import "apps/unity"; -@import "apps/lightdm"; +@import "widgets"; diff --git a/gtk-3.0/scss/widgets/_actionbar.scss b/gtk-3.0/scss/widgets/_actionbar.scss index 4f1280a..6745b23 100644 --- a/gtk-3.0/scss/widgets/_actionbar.scss +++ b/gtk-3.0/scss/widgets/_actionbar.scss @@ -58,7 +58,7 @@ @include exports("actionbuttons") { $types: ( - suggested: $selected_bg_color, + suggested: $success_color, destructive: $error-color ); diff --git a/gtk-3.0/scss/widgets/_base.scss b/gtk-3.0/scss/widgets/_base.scss index a1916f6..bad015d 100755 --- a/gtk-3.0/scss/widgets/_base.scss +++ b/gtk-3.0/scss/widgets/_base.scss @@ -4,34 +4,9 @@ * { -GtkArrow-arrow-scaling: 0.5; - -GtkButton-child-displacement-x: 0; - -GtkButton-child-displacement-y: 0; - -GtkButton-default-border: 0; - -GtkButton-image-spacing: 0; - -GtkButton-inner-border: 1; - -GtkButton-interior-focus: true; - -GtkButtonBox-child-min-height: 24; - -GtkButtonBox-child-internal-pad-y: 1; -GtkExpander-expander-size: 8; - -GtkMenu-horizontal-padding: 0; - -GtkMenu-vertical-padding: 0; - -GtkPaned-handle-size: 4; - -GtkProgressBar-min-horizontal-bar-height: 12; - -GtkProgressBar-min-vertical-bar-width: 12; - -GtkRange-slider-width: 12; - -GtkRange-stepper-spacing: 0; - -GtkRange-trough-border: 0; - -GtkRange-trough-under-steppers: 1; - -GtkScrollbar-has-backward-stepper: false; - -GtkScrollbar-has-forward-stepper: false; - -GtkScrollbar-min-slider-length: 80; - -GtkScrolledWindow-scrollbar-spacing: 0; - -GtkScrolledWindow-scrollbars-within-bevel: 1; -GtkStatusbar-shadow-type: none; - -GtkTextView-error-underline-color: $error_color; - -GtkToolButton-icon-spacing: 6; -GtkToolItemGroup-expander-size: 8; - -GtkTreeView-expander-size: 8; -GtkWindow-resize-grip-height: 0; -GtkWindow-resize-grip-width: 0; -WnckTasklist-fade-overlay-rect: 0; @@ -82,6 +57,8 @@ text-shadow: none; icon-shadow: none; } + + &.csd { background-color: $bg_color; } } .gtkstyle-fallback { diff --git a/gtk-3.0/scss/widgets/_button.scss b/gtk-3.0/scss/widgets/_button.scss index 9310af9..f54d96b 100755 --- a/gtk-3.0/scss/widgets/_button.scss +++ b/gtk-3.0/scss/widgets/_button.scss @@ -4,15 +4,17 @@ @include exports("button_extends") { %button { - padding: ($spacing - 1px) ($spacing + 1px); + padding: $spacing ($spacing + 2px); border-width: 1px; border-style: solid; border-radius: $roundness; - transition: 100ms ease; + transition: 150ms ease; outline-color: transparent; -GtkWidget-focus-padding: 1; -GtkWidget-focus-line-width: 0; + + &:focus, &:hover, &:active { transition: none; } } %linked_middle { @@ -71,95 +73,107 @@ } @mixin linked_button($bg) { + $border_strength: if(lightness($bg) > 50, 0, .1); + $shadow_strength: if(lightness($bg) > 50, 0, .1); + @extend %linked_button; - box-shadow: inset -1px 0 border_normal($bg), - 0 1px 2px -1px alpha($dark_shadow, .3); + box-shadow: inset -1px 0 border_normal(rgba(0,0,0,.12 + $border_strength)), + 0 1px 2px -1px alpha($dark_shadow, .12 + $shadow_strength); &:focus, &:hover { - box-shadow: inset -1px 0 border_focus($bg), - 0 1px 2px -1px alpha($dark_shadow, .3); + box-shadow: inset -1px 0 border_focus(rgba(0,0,0,.12 + $border_strength)), + 0 1px 2px -1px alpha($dark_shadow, .32 + $shadow_strength); } &:active, &:active:hover, &:active:focus, &:active:hover:focus, &:checked, &:checked:hover, &:checked:focus, &:checked:hover:focus { - box-shadow: inset -1px 0 border_active($bg), - inset 1px 0 alpha($dark_shadow, .07), - inset 0 1px alpha($dark_shadow, .08), + box-shadow: inset -1px 0 border_active(rgba(0,0,0,.12 + $border_strength)), + inset 0 1px alpha($dark_shadow, .07), inset 0 -1px alpha($dark_shadow, .05); } - &:insensitive { box-shadow: inset -1px 0 border_insensitive($bg); } + &:insensitive { box-shadow: inset -1px 0 shade($bg, .8); } + + &:last-child, &:only-child { box-shadow: 0 1px 2px -1px alpha($dark_shadow, .12 + $shadow_strength); } + + &:last-child:hover, &:only-child:hover { box-shadow: 0 1px 2px -1px alpha($dark_shadow, .32 + $shadow_strength); } - &:last-child, &:only-child, &:insensitive:last-child, &:insensitive:only-child, &:active:insensitive:last-child, &:active:insensitive:only-child, &:checked:insensitive:last-child, &:checked:insensitive:only-child { box-shadow: none; } - &:active:last-child, &:active:only-child, - &:active:last-child:focus, &:active:only-child:focus, - &:active:last-child:hover, &:active:only-child:hover, - &:active:last-child:hover:focus, &:active:only-child:hover:focus, - &:checked:last-child, &:checked:only-child, - &:checked:last-child:focus, &:checked:only-child:focus, - &:checked:last-child:hover, &:checked:only-child:hover, - &:checked:last-child:hover:focus, &:checked:only-child:hover:focus { - box-shadow: inset 1px 0 alpha($dark_shadow, .07), - inset 0 1px alpha($dark_shadow, .08), - inset -1px 0 alpha($dark_shadow, .07); + &:active:last-child, &:active:last-child:focus, &:active:last-child:hover, &:active:last-child:hover:focus, + &:checked:last-child, &:checked:last-child:focus, &:checked:last-child:hover, &:checked:last-child:hover:focus, { + box-shadow: inset 0 1px alpha($dark_shadow, .07), + inset -1px 0 alpha($dark_shadow, .06); + } + + &:active:only-child, &:active:only-child:focus, &:active:only-child:hover, &:active:only-child:hover:focus, + &:checked:only-child, &:checked:only-child:focus, &:checked:only-child:hover, &:checked:only-child:hover:focus { + box-shadow: inset 1px 0 alpha($dark_shadow, .06), + inset 0 1px alpha($dark_shadow, .07), + inset -1px 0 alpha($dark_shadow, .06); } } @mixin button($bg, $fg) { - @include linear-gradient(shade($bg, 1.05)); + $border_strength: if(lightness($bg) > 50, 0, .1); + $shadow_strength: if(lightness($bg) > 50, 0, .1); + @extend %button; + @include linear-gradient(shade($bg, 1.2)); + @include border(rgba(0,0,0,.12 + $border_strength)); color: $fg; - box-shadow: 0 1px 2px -1px alpha($dark_shadow, .3); - - &:insensitive { - @include linear-gradient(shade($bg, .95)); - - color: mix($bg, $fg, .5); - box-shadow: none; - } - - &, &.flat { - @include border(shade($bg, 1.05)); - - &:focus, &:hover { - @include linear-gradient(shade($bg, 1.1)); - - box-shadow: 0 1px 3px -1px alpha($dark_shadow, .5); - } - - &:checked, &:active { - @include linear-gradient(shade($bg, .95)); - - box-shadow: inset 1px 0 alpha($dark_shadow, .07), - inset 0 1px alpha($dark_shadow, .08), - inset -1px 0 alpha($dark_shadow, .07), - inset 0 -1px alpha($dark_shadow, .05); - } - - &:active:insensitive, - &:checked:insensitive { - @include linear-gradient(shade($bg, .8)); - - box-shadow: none; - } - } + box-shadow: 0 1px 2px -1px alpha($dark_shadow, .12 + $shadow_strength); &.flat { - color: inherit; border-color: transparent; background-color: transparent; background-image: none; box-shadow: none; } + &, &.flat { + &:focus, &:hover { + @include linear-gradient(shade($bg, 1.2)); + @include border(rgba(0,0,0,.2 + $border_strength)); + + box-shadow: 0 1px 2px -1px alpha($dark_shadow, .32 + $shadow_strength); + } + + &:active, &:checked { + @include linear-gradient(shade($bg, .9), to top); + + color: $fg; + box-shadow: inset 1px 0 alpha($dark_shadow, .06), + inset 0 1px alpha($dark_shadow, .07), + inset -1px 0 alpha($dark_shadow, .06), + inset 0 -1px alpha($dark_shadow, .05); + } + + &:active:insensitive, &:checked:insensitive { + @include linear-gradient(shade($bg, .8)); + + color: $fg; + box-shadow: none; + } + + &:insensitive:insensitive { + @if (lightness($bg) > 50) { + @include linear-gradient(shade($bg, .95)); + } @else { + @include linear-gradient(alpha($bg, .3)); + } + + color: mix($bg, $fg, .5); + box-shadow: none; + } + } + &.separator, .separator { border: 1px solid currentColor; color: shade($bg, ($contrast + .1)); @@ -169,6 +183,18 @@ } @include exports("button") { + * { + -GtkButton-child-displacement-x: 0; + -GtkButton-child-displacement-y: 0; + -GtkButton-default-border: 0; + -GtkButton-image-spacing: 0; + -GtkButton-inner-border: 1; + -GtkButton-interior-focus: true; + -GtkButtonBox-child-min-height: 24; + -GtkButtonBox-child-internal-pad-y: 1; + -GtkToolButton-icon-spacing: 6; + } + %close_button { border: 1px solid transparent; background-color: transparent; @@ -176,15 +202,15 @@ box-shadow: none; &:focus, &:hover { - border: 1px solid alpha(black, 0.3); - background-color: alpha(white, 0.2); + border: 1px solid alpha(black, .3); + background-color: alpha(white, .2); background-image: none; box-shadow: none; } &:active, &:checked, &:active:hover, &:checked:hover { - border: 1px solid alpha(black, 0.3); - background-color: alpha(black, 0.1); + border: 1px solid alpha(black, .3); + background-color: alpha(black, .1); background-image: none; box-shadow: none; } @@ -195,21 +221,21 @@ &.default { @include button($selected_bg_color, $selected_fg_color); } - &.linked, .linked & { @include linked_button($bg_color); } + &.linked, .linked & { @include linked_button(shade($bg_color, 1.2)); } .spinbutton & { - color: mix($text_color, $base_color, 0.4); + color: mix($text_color, $base_color, .4); padding: $spacing ($spacing * 2); border: none; border-radius: 0; border-style: none; background-color: transparent; background-image: none; - box-shadow: inset 1px 0 shade($base_color, 0.9); + box-shadow: inset 1px 0 shade($base_color, .9); &:insensitive { - color: mix($text_color, $base_color, 0.7); - box-shadow: inset 1px 0 shade($base_color, 0.85); + color: mix($text_color, $base_color, .7); + box-shadow: inset 1px 0 shade($base_color, .85); } &:active, &:checked, &:hover { color: $text_color; } @@ -221,11 +247,11 @@ &:last-child { border-radius: 0 $roundness $roundness 0; } - &:dir(rtl) { box-shadow: inset -1px 0 shade($base_color, 0.9); } + &:dir(rtl) { box-shadow: inset -1px 0 shade($base_color, .9); } } .spinbutton.vertical & { - border: 1px solid shade($bg_color, 0.8); + border: 1px solid shade($bg_color, .8); border-radius: $roundness; background-color: shade($bg_color, 1.08); background-image: none; @@ -233,26 +259,26 @@ box-shadow: none; &:hover { - border-color: shade($bg_color, 0.7); + border-color: shade($bg_color, .7); background-color: shade($bg_color, 1.1); background-image: none; } &:active, &:checked { - border-color: shade($bg_color, 0.8); - background-color: shade($bg_color, 0.95); + border-color: shade($bg_color, .8); + background-color: shade($bg_color, .95); background-image: none; } &:active:hover, &:checked:hover { - border-color: shade($bg_color, 0.7); + border-color: shade($bg_color, .7); } - &:focus, &:hover:focus, &:active:focus, &:active:hover:focus { border-color: shade($bg_color, 0.7); } + &:focus, &:hover:focus, &:active:focus, &:active:hover:focus { border-color: shade($bg_color, .7); } &:insensitive { - border-color: shade($bg_color, 0.85); - background-color: shade($bg_color, 0.9); + border-color: shade($bg_color, .85); + background-color: shade($bg_color, .9); background-image: none; } @@ -289,7 +315,7 @@ > .button { padding: ($spacing - 2px) ($spacing + 1px); - -GtkComboBox-arrow-scaling: 0.5; + -GtkComboBox-arrow-scaling: .5; -GtkComboBox-shadow-type: none; } diff --git a/gtk-3.0/scss/widgets/_calendar.scss b/gtk-3.0/scss/widgets/_calendar.scss index ee88e64..909ea9c 100644 --- a/gtk-3.0/scss/widgets/_calendar.scss +++ b/gtk-3.0/scss/widgets/_calendar.scss @@ -10,7 +10,7 @@ &:inconsistent { color: mix($fg_color, $bg_color, 0.5); } &.view, &.highlight, &.header, &.button { - &, &:hover, &:insensitive { + &, &:focus, &:hover, &:insensitive { border: none; background-color: transparent; background-image: none; diff --git a/gtk-3.0/scss/widgets/_entry.scss b/gtk-3.0/scss/widgets/_entry.scss index 0015dee..6605f01 100755 --- a/gtk-3.0/scss/widgets/_entry.scss +++ b/gtk-3.0/scss/widgets/_entry.scss @@ -30,33 +30,23 @@ } } -@mixin entry($bg, $fg) { - @include border(shade($bg, .9)); - +%entry { padding: ($spacing - 1px) $spacing; border-width: 1px; border-style: solid; border-radius: $roundness; - background-color: $bg; - background-image: none; - transition: border 100ms ease; - box-shadow: inset 1px 0 alpha($dark_shadow, .1), - inset 0 1px alpha($dark_shadow, .12), - inset -1px 0 alpha($dark_shadow, .1), - inset 0 -1px alpha($dark_shadow, .05), - 0 1px 2px -1px shade($bg, 1.4); + transition: border 150ms ease; + box-shadow: inset 1px 1px alpha($dark_shadow, .06), + inset -1px 0 alpha($dark_shadow, .06); + + &:focus, &:hover, &:active { transition: none; } &:selected, &:selected:focus { background-color: $selected_bg_color; color: $selected_fg_color; } - &:insensitive { - background-color: shade($bg, .9); - background-image: none; - color: mix($bg, $fg, .5); - box-shadow: none; - } + &:insensitive { box-shadow: none; } &.progressbar { @include linear-gradient($selected_bg_color); @@ -69,6 +59,22 @@ &.image.left { padding-right: $spacing; } } +@mixin entry($bg, $fg) { + @extend %entry; + @include linear-gradient($bg, to top); + @include border($bg); + + color: $fg; + + &:focus, &:active { border-color: $selected_bg_color; } + + &:insensitive { + @include linear-gradient(shade($bg, .9), to top); + + color: mix($bg, $fg, .5); + } +} + @include exports("entry") { .entry { @include entry($base_color, $text_color); diff --git a/gtk-3.0/scss/widgets/_grid.scss b/gtk-3.0/scss/widgets/_grid.scss index 573e5c2..13016da 100644 --- a/gtk-3.0/scss/widgets/_grid.scss +++ b/gtk-3.0/scss/widgets/_grid.scss @@ -13,7 +13,7 @@ border-radius: 0; padding: $spacing; background-image: none; - background-color: transparent; + background-color: alpha($bg_color, 0); box-shadow: none; &:hover { diff --git a/gtk-3.0/scss/widgets/_menu.scss b/gtk-3.0/scss/widgets/_menu.scss index 8d0bdf7..35a2581 100755 --- a/gtk-3.0/scss/widgets/_menu.scss +++ b/gtk-3.0/scss/widgets/_menu.scss @@ -40,6 +40,11 @@ *******/ @include exports("menu") { + * { + -GtkMenu-horizontal-padding: 0; + -GtkMenu-vertical-padding: 0; + } + GtkTreeMenu, GtkMenuToolButton, GtkComboBox { &.menu, .menu { background-color: $menu_bg_color; @@ -50,7 +55,7 @@ #toolbar-popup, .menu { padding: 0; border-radius: 0; - border-style: none; + border: none; background-color: $menu_bg_color; color: $menu_fg_color; @@ -191,9 +196,10 @@ } } - .list { + .view, .list { background-color: transparent; background-image: none; + color: $menu_fg_color; } .list-row { diff --git a/gtk-3.0/scss/widgets/_misc.scss b/gtk-3.0/scss/widgets/_misc.scss index b6fa512..8eb1de3 100644 --- a/gtk-3.0/scss/widgets/_misc.scss +++ b/gtk-3.0/scss/widgets/_misc.scss @@ -34,7 +34,7 @@ @include exports("dialogs") { GtkMessageDialog, .message-dialog, .prompt { -GtkDialog-content-area-border: 0; - -GtkDialog-action-area-border: 0; + -GtkDialog-action-area-border: $spacing; -GtkDialog-button-spacing: 0; margin: 0; diff --git a/gtk-3.0/scss/widgets/_notebook.scss b/gtk-3.0/scss/widgets/_notebook.scss index 7d5c1ef..e3c155e 100644 --- a/gtk-3.0/scss/widgets/_notebook.scss +++ b/gtk-3.0/scss/widgets/_notebook.scss @@ -27,10 +27,10 @@ &.header { border-width: 0; - background-color: shade($base_color, 0.85); + background-color: shade($base_color, .9); &.frame { - border-color: shade($base_color, 0.75); + border-color: border_normal($base_color); &.top { border-width: 1px 1px 0 1px; } @@ -49,55 +49,45 @@ } tab { - padding: $spacing ($spacing * 2); + padding: ($spacing + 1px) ($spacing * 2); border: 1px solid transparent; background-color: transparent; background-image: none; + &:hover { + background-color: shade($base_color, .95); + border-color: shade($base_color, .8); + } + &:active { - background-color: transparent; + background-color: $base_color; background-image: none; + border-color: shade($base_color, .85); } &.top { - border-bottom-width: 2px; + border-bottom-width: 0; border-bottom-right-radius: 0; border-bottom-left-radius: 0; - - &:hover { border-bottom-color: alpha($selected_bg_color, 0.3); } - - &:active { border-bottom-color: $selected_bg_color; } } &.right { - border-left-width: 2px; + border-left-width: 0; border-bottom-left-radius: 0; border-top-left-radius: 0; - - &:hover { border-left-color: alpha($selected_bg_color, 0.3); } - - &:active { border-left-color: $selected_bg_color; } } &.bottom { - border-top-width: 2px; + border-top-width: 0; border-top-right-radius: 0; border-top-left-radius: 0; - - &:hover { border-top-color: alpha($selected_bg_color, 0.3); } - - &:active { border-top-color: $selected_bg_color; } } &.left { - border-right-width: 2px; + border-right-width: 0; border-top-right-radius: 0; border-bottom-right-radius: 0; - - &:hover { border-right-color: alpha($selected_bg_color, 0.3); } - - &:active { border-right-color: $selected_bg_color; } } GtkLabel { color: mix($text_color, $base_color, 0.3); } diff --git a/gtk-3.0/scss/widgets/_overshoot.scss b/gtk-3.0/scss/widgets/_overshoot.scss new file mode 100644 index 0000000..fa5fe1b --- /dev/null +++ b/gtk-3.0/scss/widgets/_overshoot.scss @@ -0,0 +1,123 @@ +@mixin overshoot($position, $type: normal, $color: $selected_bg_color) { + $_small_gradient_length: 5%; + $_big_gradient_length: 100%; + + $_position: center top; + $_small_gradient_size: 100% $_small_gradient_length; + $_big_gradient_size: 100% $_big_gradient_length; + + @if $position == bottom { + $_position: center bottom; + $_linear_gradient_direction: to top; + } + + @else if $position == right { + $_position: right center; + $_small_gradient_size: $_small_gradient_length 100%; + $_big_gradient_size: $_big_gradient_length 100%; + } + + @else if $position == left { + $_position: left center; + $_small_gradient_size: $_small_gradient_length 100%; + $_big_gradient_size: $_big_gradient_length 100%; + } + + $_small_gradient_color: $color; + $_big_gradient_color: $color; + + $_small_gradient: -gtk-gradient(radial, + $_position, 0, + $_position, 0.5, + to(alpha($_small_gradient_color, .35)), + to(alpha($_small_gradient_color, .25))); + + $_big_gradient: -gtk-gradient(radial, + $_position, 0, + $_position, 0.6, + from(alpha($_big_gradient_color, .2)), + to(alpha($_big_gradient_color, 0))); + + @if $type == normal { + background-image: $_small_gradient, $_big_gradient; + background-size: $_small_gradient_size, $_big_gradient_size; + } @else if $type == backdrop { + background-image: $_small_gradient; + background-size: $_small_gradient_size; + } + + background-repeat: no-repeat; + background-position: $_position; + + background-color: transparent; // reset some properties to be sure to not inherit them somehow + border: none; + box-shadow: none; +} + +@mixin undershoot($position) { + $_undershoot_color_dark: alpha(black, .2); + $_undershoot_color_light: alpha(white, .2); + + $_gradient_dir: left; + $_dash_bg_size: 10px 1px; + $_gradient_repeat: repeat-x; + $_bg_pos: center $position; + + background-color: transparent; // shouldn't be needed, but better to be sure; + + @if ($position == left) or ($position == right) { + $_gradient_dir: top; + $_dash_bg_size: 1px 10px; + $_gradient_repeat: repeat-y; + $_bg_pos: $position center; + } + + background-image: linear-gradient(to $_gradient_dir, // this is the dashed line + $_undershoot_color_light 50%, + $_undershoot_color_dark 50%); + + padding-#{$position}: 1px; + background-size: $_dash_bg_size; + background-repeat: $_gradient_repeat; + background-origin: content-box; + background-position: $_bg_pos; +} + +// This is used by GtkScrolledWindow, when content is touch-dragged past boundaries. +// This draws a box on top of the content, the size changes programmatically. +.overshoot { + &.top { + @include overshoot(top); + + &:backdrop { @include overshoot(top, backdrop); } + } + + &.bottom { + @include overshoot(bottom); + + &:backdrop { @include overshoot(bottom, backdrop); } + } + + &.left { + @include overshoot(left); + + &:backdrop { @include overshoot(left, backdrop); } + } + + &.right { + @include overshoot(right); + + &:backdrop { @include overshoot(right, backdrop); } + } +} + +// Overflow indication, works similarly to the overshoot, the size if fixed tho. +.undershoot { + &.top { @include undershoot(top); } + + &.bottom { @include undershoot(bottom); } + + &.left { @include undershoot(left); } + + &.right { @include undershoot(right); } +} diff --git a/gtk-3.0/scss/widgets/_progress.scss b/gtk-3.0/scss/widgets/_progress.scss index c09ff40..f6943df 100644 --- a/gtk-3.0/scss/widgets/_progress.scss +++ b/gtk-3.0/scss/widgets/_progress.scss @@ -9,13 +9,13 @@ font-size: smaller; color: alpha($fg_color, 0.6); - -GtkProgressBar-min-horizontal-bar-height: 12; - -GtkProgressBar-min-vertical-bar-width: 12; + -GtkProgressBar-min-horizontal-bar-height: 6; + -GtkProgressBar-min-vertical-bar-width: 6; &.osd { -GtkProgressBar-xspacing: 0; -GtkProgressBar-yspacing: 0; - -GtkProgressBar-min-horizontal-bar-height: 3; + -GtkProgressBar-min-horizontal-bar-height: 4; } &.trough { @@ -119,8 +119,8 @@ &.slider { - @include linear-gradient(shade($bg_color, 1.08)); - @include border($bg_color); + @include linear-gradient($base_color); + @include border($base_color); border-radius: 8px; border-width: 1px; @@ -146,13 +146,13 @@ &.trough { @include linear-gradient(shade($bg_color, 1.08)); - margin: 7px 0; - border: 1px solid alpha(border_normal($bg_color), 0.5); + margin: 8px 0; + border: 0; border-radius: $roundness; &:insensitive { @include linear-gradient(shade($bg_color, 0.9)); } - &.vertical { margin: 0 7px; } + &.vertical { margin: 0 8px; } } &.highlight { diff --git a/gtk-3.0/scss/widgets/_scrollbar.scss b/gtk-3.0/scss/widgets/_scrollbar.scss index b2548ed..969ece6 100644 --- a/gtk-3.0/scss/widgets/_scrollbar.scss +++ b/gtk-3.0/scss/widgets/_scrollbar.scss @@ -3,6 +3,18 @@ ************/ @include exports("scrollbar") { + * { + -GtkRange-slider-width: 8; + -GtkRange-stepper-spacing: 0; + -GtkRange-trough-border: $spacing; + -GtkRange-trough-under-steppers: 1; + -GtkScrollbar-has-backward-stepper: false; + -GtkScrollbar-has-forward-stepper: false; + -GtkScrollbar-min-slider-length: 80; + -GtkScrolledWindow-scrollbar-spacing: 0; + -GtkScrolledWindow-scrollbars-within-bevel: 1; + } + .scrollbar { border: none; padding: 0; @@ -18,24 +30,15 @@ } &.slider, &.slider.vertical { - border: 1px solid mix(shade($bg_color, 0.87), $fg_color, 0.21); - border-radius: 0; + border: none; + border-radius: $roundness; background-color: mix($bg_color, $fg_color, 0.21); - &:hover { - border-color: mix(shade($bg_color, 0.87), $fg_color, 0.31); - background-color: mix($bg_color, $fg_color, 0.31); - } + &:hover { background-color: $selected_bg_color; } - &:active { - border-color: shade($selected_bg_color, 0.9); - background-color: $selected_bg_color; - } + &:active { background-color: shade($selected_bg_color, .9); } - &.fine-tune:prelight:active { - border-width: 2px; - border-color: transparent; - } + &.fine-tune:prelight:active { border: 2px solid transparent; } } } diff --git a/gtk-3.0/scss/widgets/_sidebar.scss b/gtk-3.0/scss/widgets/_sidebar.scss index b3185d5..7d5d9f1 100755 --- a/gtk-3.0/scss/widgets/_sidebar.scss +++ b/gtk-3.0/scss/widgets/_sidebar.scss @@ -38,8 +38,7 @@ &:prelight { border: none; background-image: none; - background-color: shade($bg_color, 0.95); - color: $fg_color; + background-color: shade($bg_color, 1.05); } } @@ -57,7 +56,7 @@ &:dir(ltr) { border-width: 0 1px 0 0; } &:dir(rtl) { border-width: 0 0 0 1px; } - GtkLabel { + .label { padding: $spacing ($spacing * 2); &.highlight { background-color: mix($bg_color, $fg_color, 0.80); } @@ -71,51 +70,38 @@ } -/*************** -! Pane separator -****************/ +/****** +! Paned +*******/ -@include exports("paneseparator") { - .pane-separator { - background-color: $bg_color; - color: transparent; +@include exports("paned") { + GtkPaned { + -GtkPaned-handle-size: 1; + -gtk-icon-source: none; - &, &.horizontal { - background-image: linear-gradient(to bottom, - shade($bg_color, 0.8) 0%, - shade($bg_color, 0.8) 20%, - transparent 20%, - transparent 45%, - shade($bg_color, 0.8) 45%, - shade($bg_color, 0.8) 55%, - transparent 55%, - transparent 80%, - shade($bg_color, 0.8) 80%, - shade($bg_color, 0.8) - ); - - background-size: 4px 10px; - background-repeat: no-repeat; - background-position: center center; - } - - &.vertical { - background-image: linear-gradient(to right, - shade($bg_color, 0.8) 0%, - shade($bg_color, 0.8) 20%, - transparent 20%, - transparent 45%, - shade($bg_color, 0.8) 45%, - shade($bg_color, 0.8) 55%, - transparent 55%, - transparent 80%, - shade($bg_color, 0.8) 80%, - shade($bg_color, 0.8) - ); - - background-size: 10px 4px; - background-repeat: no-repeat; - background-position: center center; - } + margin: 0 $spacing; } + + + GtkPaned:dir(rtl) { + margin-right: 0; + margin-left: $spacing; + } + + GtkPaned .pane-separator { background-color: shade($bg_color, 0.9); } + + GtkPaned.wide { + -GtkPaned-handle-size: 4; + + margin: 0; + } + + GtkPaned.wide .pane-separator { + background-color: transparent; + border-style: none solid; + border-color: shade($bg_color, 0.9); + border-width: 1px; + } + + GtkPaned.wide.vertical .pane-separator { border-style: solid none; } } diff --git a/gtk-3.0/scss/widgets/_toggle.scss b/gtk-3.0/scss/widgets/_toggle.scss index cf4936c..c9e40f0 100755 --- a/gtk-3.0/scss/widgets/_toggle.scss +++ b/gtk-3.0/scss/widgets/_toggle.scss @@ -2,23 +2,25 @@ ! Check and Radio items ************************/ +$suffix: if($variant == "dark", "-dark", ""); + @mixin toggle($type) { background-image: none; - -gtk-icon-source: url('../assets/#{$type}-unchecked.svg'); + -gtk-icon-source: url("../assets/#{$type}-unchecked#{$suffix}.png"); - &:insensitive { -gtk-icon-source: url('../assets/#{$type}-unchecked-insensitive.svg'); } + &:insensitive { -gtk-icon-source: url("../assets/#{$type}-unchecked-insensitive#{$suffix}.png"); } &:checked, &:active { - -gtk-icon-source: url('../assets/#{$type}-checked.svg'); + -gtk-icon-source: url("../assets/#{$type}-checked#{$suffix}.png"); - &:insensitive { -gtk-icon-source: url('../assets/#{$type}-checked-insensitive.svg'); } + &:insensitive { -gtk-icon-source: url("../assets/#{$type}-checked-insensitive#{$suffix}.png"); } } &:inconsistent { - -gtk-icon-source: url('../assets/#{$type}-mixed.svg'); + -gtk-icon-source: url("../assets/#{$type}-mixed#{$suffix}.png"); - &:insensitive { -gtk-icon-source: url('../assets/#{$type}-mixed-insensitive.svg'); } + &:insensitive { -gtk-icon-source: url("../assets/#{$type}-mixed-insensitive#{$suffix}.png"); } } &.menuitem { @@ -27,19 +29,19 @@ &:insensitive { -gtk-icon-source: none; } &:checked, &:active { - -gtk-icon-source: url('../assets/menuitem-#{$type}-checked.svg'); + -gtk-icon-source: url("../assets/menuitem-#{$type}-checked.png"); - &:hover { -gtk-icon-source: url('../assets/menuitem-#{$type}-checked-hover.svg'); } + &:hover { -gtk-icon-source: url("../assets/menuitem-#{$type}-checked-hover.png"); } - &:insensitive { -gtk-icon-source: url('../assets/menuitem-#{$type}-checked-insensitive.svg'); } + &:insensitive { -gtk-icon-source: url("../assets/menuitem-#{$type}-checked-insensitive.png"); } } &:inconsistent { - -gtk-icon-source: url('../assets/menuitem-#{$type}-mixed.svg'); + -gtk-icon-source: url("../assets/menuitem-#{$type}-mixed.png"); - &:hover { -gtk-icon-source: url('../assets/menuitem-#{$type}-mixed-hover.svg'); } + &:hover { -gtk-icon-source: url("../assets/menuitem-#{$type}-mixed-hover.png"); } - &:insensitive { -gtk-icon-source: url('../assets/menuitem-#{$type}-mixed-insensitive.svg'); } + &:insensitive { -gtk-icon-source: url("../assets/menuitem-#{$type}-mixed-insensitive.png"); } } } } @@ -47,7 +49,7 @@ @include exports("checkradio") { * { -GtkCheckButton-indicator-size: 16; - -GtkCheckMenuItem-indicator-size: 14; + -GtkCheckMenuItem-indicator-size: 16; } .radio { @include toggle("radio"); } @@ -55,9 +57,9 @@ .check { @include toggle("checkbox"); } GtkIconView.content-view.cell.check { - -gtk-icon-source: url("assets/grid-selection-unchecked.svg"); + -gtk-icon-source: url("assets/grid-selection-unchecked#{$suffix}.png"); - &:active { -gtk-icon-source: url("assets/grid-selection-checked.svg"); } + &:active { -gtk-icon-source: url("assets/grid-selection-checked#{$suffix}.png"); } } } @@ -74,29 +76,39 @@ outline-offset: -4px; &.slider { - border: 1px solid border_normal($bg_color); - background-color: shade($bg_color, 1.08); + @include linear-gradient(shade($bg_color, 1.2)); + + border: 1px solid rgba(0,0,0,0.2); + box-shadow: 0 1px 2px -1px alpha($dark_shadow, .12); &:insensitive { - border-color: border_insensitive($bg_color); + border-color: rgba(0,0,0,0.1); background-color: shade($bg_color, 0.9); + box-shadow: none; } } &.trough { + @include linear-gradient(shade($bg_color, .95), to top); + border: 1px solid border_normal($bg_color); - background-color: shade($bg_color, 0.95); color: $fg_color; + box-shadow: inset 1px 0 alpha($dark_shadow, .07), + inset 0 1px alpha($dark_shadow, .08), + inset -1px 0 alpha($dark_shadow, .07), + inset 0 -1px alpha($dark_shadow, .05); &:active { + @include linear-gradient($selected_bg_color, to top); + border-color: shade($selected_bg_color, 0.9); - background-color: $selected_bg_color; color: $selected_fg_color; } &:insensitive { + @include linear-gradient(shade($bg_color, .9), to top); + border-color: border_insensitive($bg_color); - background-color: shade($bg_color, 0.9); color: mix($fg_color, $bg_color, 0.5); } } diff --git a/gtk-3.0/scss/widgets/_toolbar.scss b/gtk-3.0/scss/widgets/_toolbar.scss index c9d37c2..ab8d98f 100755 --- a/gtk-3.0/scss/widgets/_toolbar.scss +++ b/gtk-3.0/scss/widgets/_toolbar.scss @@ -9,7 +9,7 @@ @include linear-gradient($bg); @include border($bg); - padding: $spacing; + padding: $spacing * 2; color: $fg; &:insensitive { @@ -37,7 +37,7 @@ &.text-button { padding: $spacing; } - &.image-button { padding: $spacing ($spacing - 1px) ($spacing - 1px) $spacing; } + &.image-button { padding: ($spacing + 1px) ($spacing - 1px) ($spacing + 1px) $spacing; } } GtkSeparatorToolItem, .separator, .separator:insensitive { @@ -55,6 +55,11 @@ @include toolbar($bg_color, $fg_color); border-style: none; + + &.inline-toolbar { + background-image: none; + background-color: transparent; + } } .header-bar { @@ -97,20 +102,17 @@ &:hover, &:hover:focus { background-image: none; background-color: transparent; - color: $selected_bg_color; box-shadow: none; } &:active, &:active:hover { background-image: none; background-color: transparent; - color: shade($selected_bg_color, .9); box-shadow: none; } &:backdrop { background: none; - color: mix($titlebar_fg_color, $titlebar_bg_color, .6); icon-shadow: none; } } diff --git a/gtk-3.0/scss/widgets/_view.scss b/gtk-3.0/scss/widgets/_view.scss index c7a6998..e077972 100644 --- a/gtk-3.0/scss/widgets/_view.scss +++ b/gtk-3.0/scss/widgets/_view.scss @@ -3,6 +3,8 @@ ****************/ @include exports("view") { + * { -GtkTextView-error-underline-color: $error_color; } + .view { color: $text_color; background-color: $base_color; @@ -92,9 +94,6 @@ } } - /* used by GtkScrolledWindow, shown when content is touch-dragged past boundaries. */ - .overshoot { background-color: alpha($selected_bg_color, 0.3); } - GdMainIconView.content-view { -GdMainIconView-icon-size: 40; } /* this will get overridden by .view, needed by gedit line numbers */ @@ -115,6 +114,7 @@ @include exports("treeview") { GtkTreeView { + -GtkTreeView-expander-size: 8; -GtkTreeView-vertical-separator: 0; outline-offset: -1px; diff --git a/gtk-3.0/scss/widgets/_window.scss b/gtk-3.0/scss/widgets/_window.scss index 8d60778..0b8f88b 100755 --- a/gtk-3.0/scss/widgets/_window.scss +++ b/gtk-3.0/scss/widgets/_window.scss @@ -4,11 +4,11 @@ @include exports("window") { %window { - box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23), + box-shadow: 0 19px 38px rgba(0,0,0,0.30), 0 15px 12px rgba(0,0,0,0.22), 0 0 0 1px $wm_border_focused; &:backdrop { - box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24), + box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23), 0 0 0 1px $wm_border_unfocused; } } @@ -16,8 +16,8 @@ .window-frame { @extend %window; - border: none; - border-radius: $roundness $roundness 0 0; + border: 0; + border-radius: $roundness + 1; /* this is used for the resize cursor area */ margin: $spacing * 3; diff --git a/unity/close.svg b/unity/close.svg index 4a4ca0b..1d739f2 100755 --- a/unity/close.svg +++ b/unity/close.svg @@ -1 +1 @@ - + diff --git a/unity/maximize.svg b/unity/maximize.svg index d62a015..a84ce25 100755 --- a/unity/maximize.svg +++ b/unity/maximize.svg @@ -1 +1 @@ - + diff --git a/unity/minimize.svg b/unity/minimize.svg index 09e7c2e..a7075cc 100755 --- a/unity/minimize.svg +++ b/unity/minimize.svg @@ -1 +1 @@ - + diff --git a/unity/minimized.svg b/unity/minimized.svg index 09e7c2e..a7075cc 100755 --- a/unity/minimized.svg +++ b/unity/minimized.svg @@ -1 +1 @@ - + diff --git a/unity/progress_bar_trough.svg b/unity/progress_bar_trough.svg index 8082c32..4d4b209 100755 --- a/unity/progress_bar_trough.svg +++ b/unity/progress_bar_trough.svg @@ -59,7 +59,7 @@ id="image6" /> diff --git a/unity/unmaximize.svg b/unity/unmaximize.svg index eee6717..9f6d305 100755 --- a/unity/unmaximize.svg +++ b/unity/unmaximize.svg @@ -1 +1 @@ - + diff --git a/xfce-notify-4.0/gtkrc b/xfce-notify-4.0/gtkrc index 274b046..b4ea119 100755 --- a/xfce-notify-4.0/gtkrc +++ b/xfce-notify-4.0/gtkrc @@ -1,6 +1,6 @@ style "notify-window" { XfceNotifyWindow::summary-bold = 1 - XfceNotifyWindow::border-color = "#2d2d2d" + XfceNotifyWindow::border-color = "#444444" XfceNotifyWindow::border-color-hover = "#333333" XfceNotifyWindow::border-radius = 2.0 XfceNotifyWindow::border-width = 1.0 @@ -10,13 +10,13 @@ style "notify-window" { } style "notify-button" { - bg[NORMAL] = "#2d2d2d" - bg[PRELIGHT] = "#333333" - bg[ACTIVE] = "#2d2d2d" + bg[NORMAL] = "#444444" + bg[PRELIGHT] = "#555555" + bg[ACTIVE] = "#444444" - fg[NORMAL] = "#dcdcdc" - fg[PRELIGHT] = "#dedede" - fg[ACTIVE] = "#dedede" + fg[NORMAL] = "#eeeeee" + fg[PRELIGHT] = "#eeeeee" + fg[ACTIVE] = "#eeeeee" engine "murrine" { gradient_shades = { 1.0, 1.0, 1.0, 1.0 } @@ -46,9 +46,9 @@ style "notify-progressbar" { xthickness = 1 ythickness = 1 - bg[NORMAL] = "#dcdcdc" - bg[ACTIVE] = "#2d2d2d" - bg[SELECTED] = "#dedede" + bg[NORMAL] = "#eeeeee" + bg[ACTIVE] = "#444444" + bg[SELECTED] = "#eeeeee" fg[PRELIGHT] = "#333333" fg[ACTIVE] = "#f9f9f9" diff --git a/xfwm4/close-active.xpm b/xfwm4/close-active.xpm index 3424b7c..73ee20b 100755 --- a/xfwm4/close-active.xpm +++ b/xfwm4/close-active.xpm @@ -2,8 +2,8 @@ static char * close_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", -"+ c #DCDCDC", +". c #444444", +"+ c #eeeeee", "........................", "........................", "........................", diff --git a/xfwm4/close-inactive.xpm b/xfwm4/close-inactive.xpm index 9201e50..eb5514e 100755 --- a/xfwm4/close-inactive.xpm +++ b/xfwm4/close-inactive.xpm @@ -2,7 +2,7 @@ static char * close_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #888888", "........................", "........................", diff --git a/xfwm4/close-prelight.xpm b/xfwm4/close-prelight.xpm index e8916bd..f7ebf57 100755 --- a/xfwm4/close-prelight.xpm +++ b/xfwm4/close-prelight.xpm @@ -1,8 +1,8 @@ -/* XPM */ +s/* XPM */ static char * close_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/close-pressed.xpm b/xfwm4/close-pressed.xpm index e8916bd..644cedb 100755 --- a/xfwm4/close-pressed.xpm +++ b/xfwm4/close-pressed.xpm @@ -2,7 +2,7 @@ static char * close_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/hide-active.xpm b/xfwm4/hide-active.xpm index 4a01c16..0f4de57 100755 --- a/xfwm4/hide-active.xpm +++ b/xfwm4/hide-active.xpm @@ -2,8 +2,8 @@ static char * hide_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", -"+ c #DCDCDC", +". c #444444", +"+ c #eeeeee", "........................", "........................", "........................", diff --git a/xfwm4/hide-inactive.xpm b/xfwm4/hide-inactive.xpm index 3da4487..6e210d2 100755 --- a/xfwm4/hide-inactive.xpm +++ b/xfwm4/hide-inactive.xpm @@ -2,7 +2,7 @@ static char * hide_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #888888", "........................", "........................", diff --git a/xfwm4/hide-prelight.xpm b/xfwm4/hide-prelight.xpm index 040ece7..be53c73 100755 --- a/xfwm4/hide-prelight.xpm +++ b/xfwm4/hide-prelight.xpm @@ -2,7 +2,7 @@ static char * hide_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/hide-pressed.xpm b/xfwm4/hide-pressed.xpm index 040ece7..be53c73 100755 --- a/xfwm4/hide-pressed.xpm +++ b/xfwm4/hide-pressed.xpm @@ -2,7 +2,7 @@ static char * hide_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/maximize-active.xpm b/xfwm4/maximize-active.xpm index ce44a5f..e56f28e 100755 --- a/xfwm4/maximize-active.xpm +++ b/xfwm4/maximize-active.xpm @@ -2,8 +2,8 @@ static char * maximize_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", -"+ c #DCDCDC", +". c #444444", +"+ c #eeeeee", "........................", "........................", "........................", diff --git a/xfwm4/maximize-inactive.xpm b/xfwm4/maximize-inactive.xpm index 153b4d2..7983fe3 100755 --- a/xfwm4/maximize-inactive.xpm +++ b/xfwm4/maximize-inactive.xpm @@ -2,7 +2,7 @@ static char * maximize_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #888888", "........................", "........................", diff --git a/xfwm4/maximize-prelight.xpm b/xfwm4/maximize-prelight.xpm index 6a73981..342bddb 100755 --- a/xfwm4/maximize-prelight.xpm +++ b/xfwm4/maximize-prelight.xpm @@ -2,7 +2,7 @@ static char * maximize_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/maximize-pressed.xpm b/xfwm4/maximize-pressed.xpm index 6a73981..342bddb 100755 --- a/xfwm4/maximize-pressed.xpm +++ b/xfwm4/maximize-pressed.xpm @@ -2,7 +2,7 @@ static char * maximize_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/maximize-toggled-active.xpm b/xfwm4/maximize-toggled-active.xpm index a34f44a..fa463e7 100755 --- a/xfwm4/maximize-toggled-active.xpm +++ b/xfwm4/maximize-toggled-active.xpm @@ -2,8 +2,8 @@ static char * maximize_toggled_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", -"+ c #DCDCDC", +". c #444444", +"+ c #eeeeee", "........................", "........................", "........................", diff --git a/xfwm4/maximize-toggled-inactive.xpm b/xfwm4/maximize-toggled-inactive.xpm index 914eed8..962e5e3 100755 --- a/xfwm4/maximize-toggled-inactive.xpm +++ b/xfwm4/maximize-toggled-inactive.xpm @@ -2,7 +2,7 @@ static char * maximize_toggled_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #888888", "........................", "........................", diff --git a/xfwm4/maximize-toggled-prelight.xpm b/xfwm4/maximize-toggled-prelight.xpm index 0c7ed43..c4c45a2 100755 --- a/xfwm4/maximize-toggled-prelight.xpm +++ b/xfwm4/maximize-toggled-prelight.xpm @@ -2,7 +2,7 @@ static char * maximize_toggled_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/maximize-toggled-pressed.xpm b/xfwm4/maximize-toggled-pressed.xpm index 0c7ed43..c4c45a2 100755 --- a/xfwm4/maximize-toggled-pressed.xpm +++ b/xfwm4/maximize-toggled-pressed.xpm @@ -2,7 +2,7 @@ static char * maximize_toggled_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/menu-active.xpm b/xfwm4/menu-active.xpm index 3ec59e2..89a9597 100755 --- a/xfwm4/menu-active.xpm +++ b/xfwm4/menu-active.xpm @@ -2,7 +2,7 @@ static char * menu_active_xpm[] = { "24 16 2 1", " c None", -". c #2D2D2D", +". c #444444", "........................", "........................", "........................", diff --git a/xfwm4/menu-inactive.xpm b/xfwm4/menu-inactive.xpm index bd7c7e4..e1cba46 100755 --- a/xfwm4/menu-inactive.xpm +++ b/xfwm4/menu-inactive.xpm @@ -2,7 +2,7 @@ static char * menu_inactive_xpm[] = { "24 16 2 1", " c None", -". c #2D2D2D", +". c #444444", "........................", "........................", "........................", diff --git a/xfwm4/menu-prelight.xpm b/xfwm4/menu-prelight.xpm index 958dbb6..c1ca9ae 100755 --- a/xfwm4/menu-prelight.xpm +++ b/xfwm4/menu-prelight.xpm @@ -2,7 +2,7 @@ static char * menu_prelight_xpm[] = { "24 24 2 1", " c None", -". c #2D2D2D", +". c #444444", "........................", "........................", "........................", diff --git a/xfwm4/menu-pressed.xpm b/xfwm4/menu-pressed.xpm index d546a2c..cfa77c9 100755 --- a/xfwm4/menu-pressed.xpm +++ b/xfwm4/menu-pressed.xpm @@ -2,7 +2,7 @@ static char * menu_pressed_xpm[] = { "24 24 2 1", " c None", -". c #2D2D2D", +". c #444444", "........................", "........................", "........................", diff --git a/xfwm4/shade-active.xpm b/xfwm4/shade-active.xpm index 4dac8e8..4caf24e 100755 --- a/xfwm4/shade-active.xpm +++ b/xfwm4/shade-active.xpm @@ -2,8 +2,8 @@ static char * shade_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", -"+ c #DCDCDC", +". c #444444", +"+ c #eeeeee", "........................", "........................", "........................", diff --git a/xfwm4/shade-inactive.xpm b/xfwm4/shade-inactive.xpm index 9751094..3b42c60 100755 --- a/xfwm4/shade-inactive.xpm +++ b/xfwm4/shade-inactive.xpm @@ -2,7 +2,7 @@ static char * shade_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #888888", "........................", "........................", diff --git a/xfwm4/shade-prelight.xpm b/xfwm4/shade-prelight.xpm index e50b07a..69ce622 100755 --- a/xfwm4/shade-prelight.xpm +++ b/xfwm4/shade-prelight.xpm @@ -2,7 +2,7 @@ static char * shade_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/shade-pressed.xpm b/xfwm4/shade-pressed.xpm index e50b07a..69ce622 100755 --- a/xfwm4/shade-pressed.xpm +++ b/xfwm4/shade-pressed.xpm @@ -2,7 +2,7 @@ static char * shade_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/shade-toggled-active.xpm b/xfwm4/shade-toggled-active.xpm index 1421f70..7464780 100755 --- a/xfwm4/shade-toggled-active.xpm +++ b/xfwm4/shade-toggled-active.xpm @@ -2,8 +2,8 @@ static char * shade_toggled_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", -"+ c #DCDCDC", +". c #444444", +"+ c #eeeeee", "........................", "........................", "........................", diff --git a/xfwm4/shade-toggled-inactive.xpm b/xfwm4/shade-toggled-inactive.xpm index 1e3e4bf..847bb3b 100755 --- a/xfwm4/shade-toggled-inactive.xpm +++ b/xfwm4/shade-toggled-inactive.xpm @@ -2,7 +2,7 @@ static char * shade_toggled_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #888888", "........................", "........................", diff --git a/xfwm4/shade-toggled-prelight.xpm b/xfwm4/shade-toggled-prelight.xpm index 0cecaba..8af2d64 100755 --- a/xfwm4/shade-toggled-prelight.xpm +++ b/xfwm4/shade-toggled-prelight.xpm @@ -2,7 +2,7 @@ static char * shade_toggled_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/shade-toggled-pressed.xpm b/xfwm4/shade-toggled-pressed.xpm index 0cecaba..8af2d64 100755 --- a/xfwm4/shade-toggled-pressed.xpm +++ b/xfwm4/shade-toggled-pressed.xpm @@ -2,7 +2,7 @@ static char * shade_toggled_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/stick-active.xpm b/xfwm4/stick-active.xpm index c8610f8..c7fc821 100755 --- a/xfwm4/stick-active.xpm +++ b/xfwm4/stick-active.xpm @@ -2,8 +2,8 @@ static char * stick_active_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", -"+ c #DCDCDC", +". c #444444", +"+ c #eeeeee", "........................", "........................", "........................", diff --git a/xfwm4/stick-inactive.xpm b/xfwm4/stick-inactive.xpm index d4cc7fe..41fac3d 100755 --- a/xfwm4/stick-inactive.xpm +++ b/xfwm4/stick-inactive.xpm @@ -2,7 +2,7 @@ static char * stick_toggled_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #888888", "........................", "........................", diff --git a/xfwm4/stick-prelight.xpm b/xfwm4/stick-prelight.xpm index ea2a259..0d1418e 100755 --- a/xfwm4/stick-prelight.xpm +++ b/xfwm4/stick-prelight.xpm @@ -2,7 +2,7 @@ static char * stick_toggled_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/stick-pressed.xpm b/xfwm4/stick-pressed.xpm index ea2a259..0d1418e 100755 --- a/xfwm4/stick-pressed.xpm +++ b/xfwm4/stick-pressed.xpm @@ -2,7 +2,7 @@ static char * stick_toggled_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/stick-toggled-active.xpm b/xfwm4/stick-toggled-active.xpm index 25de32c..ee04ce3 100755 --- a/xfwm4/stick-toggled-active.xpm +++ b/xfwm4/stick-toggled-active.xpm @@ -2,8 +2,8 @@ static char * stick_toggled_active_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", -"+ c #DCDCDC", +". c #444444", +"+ c #eeeeee", "........................", "........................", "........................", diff --git a/xfwm4/stick-toggled-inactive.xpm b/xfwm4/stick-toggled-inactive.xpm index c33b36e..9dec10a 100755 --- a/xfwm4/stick-toggled-inactive.xpm +++ b/xfwm4/stick-toggled-inactive.xpm @@ -2,7 +2,7 @@ static char * stick_toggled_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #888888", "........................", "........................", diff --git a/xfwm4/stick-toggled-prelight.xpm b/xfwm4/stick-toggled-prelight.xpm index 5763b9b..1575562 100755 --- a/xfwm4/stick-toggled-prelight.xpm +++ b/xfwm4/stick-toggled-prelight.xpm @@ -2,7 +2,7 @@ static char * stick_toggled_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/stick-toggled-pressed.xpm b/xfwm4/stick-toggled-pressed.xpm index 5763b9b..1575562 100755 --- a/xfwm4/stick-toggled-pressed.xpm +++ b/xfwm4/stick-toggled-pressed.xpm @@ -2,7 +2,7 @@ static char * stick_toggled_prelight_xpm[] = { "24 24 3 1", " c None", -". c #2D2D2D", +". c #444444", "+ c #f0544c s active_color_1", "........................", "........................", diff --git a/xfwm4/themerc b/xfwm4/themerc index e345ddd..740d09c 100755 --- a/xfwm4/themerc +++ b/xfwm4/themerc @@ -2,7 +2,7 @@ # Author: Satyajit Sahoo # License: GPL-3.0+ -active_text_color=#dcdcdc +active_text_color=#eeeeee inactive_text_color=#888888 button_offset=3 button_spacing=0 diff --git a/xfwm4/title-1-active.xpm b/xfwm4/title-1-active.xpm index 0dbc3ab..52fb899 100755 --- a/xfwm4/title-1-active.xpm +++ b/xfwm4/title-1-active.xpm @@ -3,7 +3,7 @@ static char * title_1_active_xpm[] = { "2 26 3 1", " c None", ". c #484848", -"+ c #2D2D2D", +"+ c #444444", "..", "++", "++", diff --git a/xfwm4/title-1-inactive.xpm b/xfwm4/title-1-inactive.xpm index e8a927a..212d7aa 100755 --- a/xfwm4/title-1-inactive.xpm +++ b/xfwm4/title-1-inactive.xpm @@ -3,7 +3,7 @@ static char * title_1_inactive_xpm[] = { "2 26 3 1", " c None", ". c #393939", -"+ c #2D2D2D", +"+ c #444444", "..", "++", "++", diff --git a/xfwm4/title-2-active.xpm b/xfwm4/title-2-active.xpm index 4c7fd81..7f234ff 100755 --- a/xfwm4/title-2-active.xpm +++ b/xfwm4/title-2-active.xpm @@ -3,7 +3,7 @@ static char * title_2_active_xpm[] = { "2 26 3 1", " c None", ". c #484848", -"+ c #2D2D2D", +"+ c #444444", "..", "++", "++", diff --git a/xfwm4/title-2-inactive.xpm b/xfwm4/title-2-inactive.xpm index 9a165cc..e5cabe3 100755 --- a/xfwm4/title-2-inactive.xpm +++ b/xfwm4/title-2-inactive.xpm @@ -3,7 +3,7 @@ static char * title_2_inactive_xpm[] = { "2 26 3 1", " c None", ". c #393939", -"+ c #2D2D2D", +"+ c #444444", "..", "++", "++", diff --git a/xfwm4/title-3-active.xpm b/xfwm4/title-3-active.xpm index 372d7af..b2829b9 100755 --- a/xfwm4/title-3-active.xpm +++ b/xfwm4/title-3-active.xpm @@ -3,7 +3,7 @@ static char * title_3_active_xpm[] = { "2 26 3 1", " c None", ". c #484848", -"+ c #2D2D2D", +"+ c #444444", "..", "++", "++", diff --git a/xfwm4/title-3-inactive.xpm b/xfwm4/title-3-inactive.xpm index 81157b1..1eacd85 100755 --- a/xfwm4/title-3-inactive.xpm +++ b/xfwm4/title-3-inactive.xpm @@ -3,7 +3,7 @@ static char * title_3_inactive_xpm[] = { "2 26 3 1", " c None", ". c #393939", -"+ c #2D2D2D", +"+ c #444444", "..", "++", "++", diff --git a/xfwm4/title-4-active.xpm b/xfwm4/title-4-active.xpm index 85aa732..707d2a5 100755 --- a/xfwm4/title-4-active.xpm +++ b/xfwm4/title-4-active.xpm @@ -3,7 +3,7 @@ static char * title_4_active_xpm[] = { "2 26 3 1", " c None", ". c #484848", -"+ c #2D2D2D", +"+ c #444444", "..", "++", "++", diff --git a/xfwm4/title-4-inactive.xpm b/xfwm4/title-4-inactive.xpm index cd1e555..4a86d59 100755 --- a/xfwm4/title-4-inactive.xpm +++ b/xfwm4/title-4-inactive.xpm @@ -3,7 +3,7 @@ static char * title_4_inactive_xpm[] = { "2 26 3 1", " c None", ". c #393939", -"+ c #2D2D2D", +"+ c #444444", "..", "++", "++", diff --git a/xfwm4/title-5-active.xpm b/xfwm4/title-5-active.xpm index c88372c..31316b8 100755 --- a/xfwm4/title-5-active.xpm +++ b/xfwm4/title-5-active.xpm @@ -3,7 +3,7 @@ static char * title_5_active_xpm[] = { "2 26 3 1", " c None", ". c #484848", -"+ c #2D2D2D", +"+ c #444444", "..", "++", "++", diff --git a/xfwm4/title-5-inactive.xpm b/xfwm4/title-5-inactive.xpm index e1385ff..aa33f4c 100755 --- a/xfwm4/title-5-inactive.xpm +++ b/xfwm4/title-5-inactive.xpm @@ -3,7 +3,7 @@ static char * title_5_inactive_xpm[] = { "2 26 3 1", " c None", ". c #393939", -"+ c #2D2D2D", +"+ c #444444", "..", "++", "++", diff --git a/xfwm4/top-left-active.xpm b/xfwm4/top-left-active.xpm index 4dc55d6..675afd3 100755 --- a/xfwm4/top-left-active.xpm +++ b/xfwm4/top-left-active.xpm @@ -4,7 +4,7 @@ static char * top_left_active_xpm[] = { " c None", ". c #484848", "+ c #343434", -"@ c #2D2D2D", +"@ c #444444", " .", ".+", ".@", diff --git a/xfwm4/top-left-inactive.xpm b/xfwm4/top-left-inactive.xpm index 834acf1..0a922d8 100755 --- a/xfwm4/top-left-inactive.xpm +++ b/xfwm4/top-left-inactive.xpm @@ -4,7 +4,7 @@ static char * top_left_inactive_xpm[] = { " c None", ". c #393939", "+ c #303030", -"@ c #2D2D2D", +"@ c #444444", " .", ".+", ".@", diff --git a/xfwm4/top-right-active.xpm b/xfwm4/top-right-active.xpm index 9558840..3ed6265 100755 --- a/xfwm4/top-right-active.xpm +++ b/xfwm4/top-right-active.xpm @@ -4,7 +4,7 @@ static char * top_right_active_xpm[] = { " c None", ". c #484848", "+ c #343434", -"@ c #2D2D2D", +"@ c #444444", ". ", "+.", "@.", diff --git a/xfwm4/top-right-inactive.xpm b/xfwm4/top-right-inactive.xpm index 5776746..e847a56 100755 --- a/xfwm4/top-right-inactive.xpm +++ b/xfwm4/top-right-inactive.xpm @@ -4,7 +4,7 @@ static char * top_right_inactive_xpm[] = { " c None", ". c #393939", "+ c #303030", -"@ c #2D2D2D", +"@ c #444444", ". ", "+.", "@.", From 0edb0d13e4a8478165b80150dfa3fd6239333334 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sun, 31 May 2015 21:54:13 +0530 Subject: [PATCH 48/73] Style headerbar close button --- gtk-3.0/scss/widgets/_toolbar.scss | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gtk-3.0/scss/widgets/_toolbar.scss b/gtk-3.0/scss/widgets/_toolbar.scss index ab8d98f..f8866ea 100755 --- a/gtk-3.0/scss/widgets/_toolbar.scss +++ b/gtk-3.0/scss/widgets/_toolbar.scss @@ -102,17 +102,20 @@ &:hover, &:hover:focus { background-image: none; background-color: transparent; + color: $selected_bg-color; box-shadow: none; } &:active, &:active:hover { background-image: none; background-color: transparent; + color: shade($selected_bg_color, .9); box-shadow: none; } &:backdrop { background: none; + color: mix($titlebar_fg_color, $titlebar_bg_color, .6); icon-shadow: none; } } From f30b5ec971d67c631f8b33fc5dd38f2ad6c8d7b1 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Sun, 31 May 2015 22:26:05 +0530 Subject: [PATCH 49/73] Fix scrollbars --- gtk-3.0/scss/widgets/_button.scss | 27 +++---- gtk-3.0/scss/widgets/_scrollbar.scss | 115 ++++++++++++++++----------- 2 files changed, 81 insertions(+), 61 deletions(-) diff --git a/gtk-3.0/scss/widgets/_button.scss b/gtk-3.0/scss/widgets/_button.scss index f54d96b..60c81cd 100755 --- a/gtk-3.0/scss/widgets/_button.scss +++ b/gtk-3.0/scss/widgets/_button.scss @@ -2,6 +2,8 @@ ! Buttons **********/ +$shadow_strength: .3; + @include exports("button_extends") { %button { padding: $spacing ($spacing + 2px); @@ -73,16 +75,13 @@ } @mixin linked_button($bg) { - $border_strength: if(lightness($bg) > 50, 0, .1); - $shadow_strength: if(lightness($bg) > 50, 0, .1); - @extend %linked_button; - box-shadow: inset -1px 0 border_normal(rgba(0,0,0,.12 + $border_strength)), + box-shadow: inset -1px 0 border_normal(rgba(0,0,0,.12)), 0 1px 2px -1px alpha($dark_shadow, .12 + $shadow_strength); &:focus, &:hover { - box-shadow: inset -1px 0 border_focus(rgba(0,0,0,.12 + $border_strength)), + box-shadow: inset -1px 0 border_focus(rgba(0,0,0,.12)), 0 1px 2px -1px alpha($dark_shadow, .32 + $shadow_strength); } @@ -90,7 +89,7 @@ &:active:focus, &:active:hover:focus, &:checked, &:checked:hover, &:checked:focus, &:checked:hover:focus { - box-shadow: inset -1px 0 border_active(rgba(0,0,0,.12 + $border_strength)), + box-shadow: inset -1px 0 border_active(rgba(0,0,0,.12)), inset 0 1px alpha($dark_shadow, .07), inset 0 -1px alpha($dark_shadow, .05); } @@ -120,28 +119,26 @@ } @mixin button($bg, $fg) { - $border_strength: if(lightness($bg) > 50, 0, .1); - $shadow_strength: if(lightness($bg) > 50, 0, .1); - @extend %button; - @include linear-gradient(shade($bg, 1.2)); - @include border(rgba(0,0,0,.12 + $border_strength)); + @include linear-gradient(shade($bg, 1.3)); + @include border(rgba(0,0,0,.12)); color: $fg; box-shadow: 0 1px 2px -1px alpha($dark_shadow, .12 + $shadow_strength); + border-color: alpha($bg, 0); &.flat { - border-color: transparent; - background-color: transparent; + border-color: alpha($bg, 0); + background-color: alpha($bg, 0); background-image: none; box-shadow: none; } &, &.flat { &:focus, &:hover { - @include linear-gradient(shade($bg, 1.2)); - @include border(rgba(0,0,0,.2 + $border_strength)); + @include linear-gradient(shade($bg, 1.4)); + border-color: alpha($bg, 0); box-shadow: 0 1px 2px -1px alpha($dark_shadow, .32 + $shadow_strength); } diff --git a/gtk-3.0/scss/widgets/_scrollbar.scss b/gtk-3.0/scss/widgets/_scrollbar.scss index 969ece6..bfc210e 100644 --- a/gtk-3.0/scss/widgets/_scrollbar.scss +++ b/gtk-3.0/scss/widgets/_scrollbar.scss @@ -3,61 +3,84 @@ ************/ @include exports("scrollbar") { - * { - -GtkRange-slider-width: 8; - -GtkRange-stepper-spacing: 0; - -GtkRange-trough-border: $spacing; - -GtkRange-trough-under-steppers: 1; - -GtkScrollbar-has-backward-stepper: false; - -GtkScrollbar-has-forward-stepper: false; - -GtkScrollbar-min-slider-length: 80; - -GtkScrolledWindow-scrollbar-spacing: 0; - -GtkScrolledWindow-scrollbars-within-bevel: 1; - } + * { + -GtkRange-slider-width: 8; + -GtkRange-stepper-spacing: 0; + -GtkRange-trough-border: 2; + -GtkRange-trough-under-steppers: 1; + -GtkScrollbar-has-backward-stepper: false; + -GtkScrollbar-has-forward-stepper: false; + -GtkScrollbar-min-slider-length: 80; + -GtkScrolledWindow-scrollbar-spacing: 0; + -GtkScrolledWindow-scrollbars-within-bevel: 1; + } - .scrollbar { - border: none; - padding: 0; + .scrollbar { + border: 0; + padding: 0; - &.button { - &, &:active, &:active:hover { - border-width: 0; - border-radius: 0; - background-color: transparent; - background-image: none; - color: shade($bg_color, 0.6); - } - } + &.button { + &, &:active, &:active:hover { + border-width: 0; + border-radius: 0; + background-color: transparent; + background-image: none; + color: alpha($fg_color, 0.5); + } + } - &.slider, &.slider.vertical { - border: none; - border-radius: $roundness; - background-color: mix($bg_color, $fg_color, 0.21); + &.slider, &.slider.vertical { + border: 0; + border-radius: $roundness; + background-color: shade($bg_color, 0.5); - &:hover { background-color: $selected_bg_color; } + &:hover { background-color: shade($bg_color, 0.3); } - &:active { background-color: shade($selected_bg_color, .9); } + &:active { background-color: $selected_bg_color; } - &.fine-tune:prelight:active { border: 2px solid transparent; } - } - } + &.fine-tune:prelight:active { border: 2px solid transparent; } + } - .scrollbars-junction, - .scrollbar.trough { - border: none; - border-radius: 0; - background-color: $bg_color; - background-image: none; - } + // overlay scrolling indicator + &.overlay-indicator { + &:not(.dragging):not(.hovering) { + opacity: 0.5; - /* overlay scrollbar */ - OsThumb, OsScrollbar { - color: shade($bg_color, 0.7); + -GtkRange-slider-width: 4px; - &:selected { background-color: $selected_bg_color; } + .slider { + margin: 0; + background-color: $fg_color; + background-clip: padding-box; + } - &:active { background-color: $selected_bg_color; } + .trough { + border-style: none; + background-color: transparent; + } + } - &:insensitive { background-color: shade($bg_color, 0.9); } - } + &.dragging, &.hovering { opacity: 0.7; } + } + } + + .scrollbars-junction, + .scrollbars-junction.frame, + .scrollbar.trough { + border: 0; + border-radius: 0; + background-color: $bg_color; + background-image: none; + } + + // ubuntu overlay scrollbars + OsThumb, OsScrollbar { + color: shade($bg_color, 0.7); + + &:selected { background-color: $selected_bg_color; } + + &:active { background-color: $selected_bg_color; } + + &:insensitive { background-color: shade($bg_color, 0.9); } + } } From bf32925cb7efe1f17887ada902ae5919d52440ce Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Thu, 4 Jun 2015 21:49:45 +0530 Subject: [PATCH 50/73] New assets! --- gtk-3.0/assets/assets.sketch | Bin 335872 -> 0 bytes gtk-3.0/assets/checkbox-checked-dark.png | Bin 469 -> 280 bytes gtk-3.0/assets/checkbox-checked-dark.svg | 7 ------- .../checkbox-checked-insensitive-dark.png | Bin 298 -> 168 bytes .../checkbox-checked-insensitive-dark.svg | 9 --------- .../assets/checkbox-checked-insensitive.png | Bin 282 -> 163 bytes .../assets/checkbox-checked-insensitive.svg | 9 --------- gtk-3.0/assets/checkbox-checked.png | Bin 522 -> 280 bytes gtk-3.0/assets/checkbox-checked.svg | 7 ------- gtk-3.0/assets/checkbox-mixed-dark.png | Bin 349 -> 197 bytes gtk-3.0/assets/checkbox-mixed-dark.svg | 7 ------- .../assets/checkbox-mixed-insensitive-dark.png | Bin 202 -> 109 bytes .../assets/checkbox-mixed-insensitive-dark.svg | 9 --------- gtk-3.0/assets/checkbox-mixed-insensitive.png | Bin 182 -> 106 bytes gtk-3.0/assets/checkbox-mixed-insensitive.svg | 9 --------- gtk-3.0/assets/checkbox-mixed.png | Bin 382 -> 197 bytes gtk-3.0/assets/checkbox-mixed.svg | 7 ------- gtk-3.0/assets/checkbox-unchecked-dark.png | Bin 233 -> 136 bytes gtk-3.0/assets/checkbox-unchecked-dark.svg | 6 ------ .../checkbox-unchecked-insensitive-dark.png | Bin 172 -> 94 bytes .../checkbox-unchecked-insensitive-dark.svg | 6 ------ .../assets/checkbox-unchecked-insensitive.png | Bin 153 -> 97 bytes .../assets/checkbox-unchecked-insensitive.svg | 6 ------ gtk-3.0/assets/checkbox-unchecked.png | Bin 252 -> 157 bytes gtk-3.0/assets/checkbox-unchecked.svg | 6 ------ gtk-3.0/assets/grid-selection-checked-dark.png | Bin 813 -> 362 bytes gtk-3.0/assets/grid-selection-checked-dark.svg | 7 ------- gtk-3.0/assets/grid-selection-checked.png | Bin 883 -> 361 bytes gtk-3.0/assets/grid-selection-checked.svg | 7 ------- .../assets/grid-selection-unchecked-dark.png | Bin 306 -> 157 bytes .../assets/grid-selection-unchecked-dark.svg | 6 ------ gtk-3.0/assets/grid-selection-unchecked.png | Bin 347 -> 168 bytes gtk-3.0/assets/grid-selection-unchecked.svg | 6 ------ .../assets/menuitem-checkbox-checked-hover.png | Bin 212 -> 128 bytes .../assets/menuitem-checkbox-checked-hover.svg | 5 ----- .../menuitem-checkbox-checked-insensitive.png | Bin 215 -> 126 bytes .../menuitem-checkbox-checked-insensitive.svg | 5 ----- gtk-3.0/assets/menuitem-checkbox-checked.png | Bin 426 -> 168 bytes gtk-3.0/assets/menuitem-checkbox-checked.svg | 5 ----- .../assets/menuitem-checkbox-mixed-hover.png | Bin 114 -> 81 bytes .../assets/menuitem-checkbox-mixed-hover.svg | 5 ----- .../menuitem-checkbox-mixed-insensitive.png | Bin 109 -> 79 bytes .../menuitem-checkbox-mixed-insensitive.svg | 5 ----- .../menuitem-checkbox-mixed-selected.svg | 5 ----- gtk-3.0/assets/menuitem-checkbox-mixed.png | Bin 228 -> 92 bytes gtk-3.0/assets/menuitem-checkbox-mixed.svg | 11 ----------- .../assets/menuitem-radio-checked-hover.png | Bin 171 -> 102 bytes .../assets/menuitem-radio-checked-hover.svg | 5 ----- .../menuitem-radio-checked-insensitive.png | Bin 181 -> 102 bytes .../menuitem-radio-checked-insensitive.svg | 5 ----- gtk-3.0/assets/menuitem-radio-checked.png | Bin 319 -> 118 bytes gtk-3.0/assets/menuitem-radio-checked.svg | 5 ----- gtk-3.0/assets/radio-checked-dark.png | Bin 593 -> 388 bytes gtk-3.0/assets/radio-checked-dark.svg | 7 ------- .../assets/radio-checked-insensitive-dark.png | Bin 473 -> 175 bytes .../assets/radio-checked-insensitive-dark.svg | 9 --------- gtk-3.0/assets/radio-checked-insensitive.png | Bin 389 -> 188 bytes gtk-3.0/assets/radio-checked-insensitive.svg | 9 --------- gtk-3.0/assets/radio-checked.png | Bin 637 -> 388 bytes gtk-3.0/assets/radio-checked.svg | 7 ------- gtk-3.0/assets/radio-mixed-dark.png | Bin 529 -> 370 bytes gtk-3.0/assets/radio-mixed-dark.svg | 7 ------- .../assets/radio-mixed-insensitive-dark.png | Bin 449 -> 160 bytes .../assets/radio-mixed-insensitive-dark.svg | 9 --------- gtk-3.0/assets/radio-mixed-insensitive.png | Bin 349 -> 179 bytes gtk-3.0/assets/radio-mixed-insensitive.svg | 9 --------- gtk-3.0/assets/radio-mixed.png | Bin 603 -> 370 bytes gtk-3.0/assets/radio-mixed.svg | 7 ------- gtk-3.0/assets/radio-unchecked-dark.png | Bin 485 -> 234 bytes gtk-3.0/assets/radio-unchecked-dark.svg | 6 ------ .../radio-unchecked-insensitive-dark.png | Bin 420 -> 143 bytes .../radio-unchecked-insensitive-dark.svg | 6 ------ gtk-3.0/assets/radio-unchecked-insensitive.png | Bin 335 -> 170 bytes gtk-3.0/assets/radio-unchecked-insensitive.svg | 6 ------ gtk-3.0/assets/radio-unchecked.png | Bin 517 -> 289 bytes gtk-3.0/assets/radio-unchecked.svg | 6 ------ 76 files changed, 258 deletions(-) delete mode 100644 gtk-3.0/assets/assets.sketch delete mode 100644 gtk-3.0/assets/checkbox-checked-dark.svg delete mode 100644 gtk-3.0/assets/checkbox-checked-insensitive-dark.svg delete mode 100644 gtk-3.0/assets/checkbox-checked-insensitive.svg delete mode 100644 gtk-3.0/assets/checkbox-checked.svg delete mode 100644 gtk-3.0/assets/checkbox-mixed-dark.svg delete mode 100644 gtk-3.0/assets/checkbox-mixed-insensitive-dark.svg delete mode 100644 gtk-3.0/assets/checkbox-mixed-insensitive.svg delete mode 100644 gtk-3.0/assets/checkbox-mixed.svg delete mode 100644 gtk-3.0/assets/checkbox-unchecked-dark.svg delete mode 100644 gtk-3.0/assets/checkbox-unchecked-insensitive-dark.svg delete mode 100644 gtk-3.0/assets/checkbox-unchecked-insensitive.svg delete mode 100644 gtk-3.0/assets/checkbox-unchecked.svg delete mode 100644 gtk-3.0/assets/grid-selection-checked-dark.svg delete mode 100644 gtk-3.0/assets/grid-selection-checked.svg delete mode 100644 gtk-3.0/assets/grid-selection-unchecked-dark.svg delete mode 100644 gtk-3.0/assets/grid-selection-unchecked.svg delete mode 100644 gtk-3.0/assets/menuitem-checkbox-checked-hover.svg delete mode 100644 gtk-3.0/assets/menuitem-checkbox-checked-insensitive.svg delete mode 100644 gtk-3.0/assets/menuitem-checkbox-checked.svg delete mode 100644 gtk-3.0/assets/menuitem-checkbox-mixed-hover.svg delete mode 100644 gtk-3.0/assets/menuitem-checkbox-mixed-insensitive.svg delete mode 100644 gtk-3.0/assets/menuitem-checkbox-mixed-selected.svg delete mode 100644 gtk-3.0/assets/menuitem-checkbox-mixed.svg delete mode 100644 gtk-3.0/assets/menuitem-radio-checked-hover.svg delete mode 100644 gtk-3.0/assets/menuitem-radio-checked-insensitive.svg delete mode 100644 gtk-3.0/assets/menuitem-radio-checked.svg delete mode 100644 gtk-3.0/assets/radio-checked-dark.svg delete mode 100644 gtk-3.0/assets/radio-checked-insensitive-dark.svg delete mode 100644 gtk-3.0/assets/radio-checked-insensitive.svg delete mode 100644 gtk-3.0/assets/radio-checked.svg delete mode 100644 gtk-3.0/assets/radio-mixed-dark.svg delete mode 100644 gtk-3.0/assets/radio-mixed-insensitive-dark.svg delete mode 100644 gtk-3.0/assets/radio-mixed-insensitive.svg delete mode 100644 gtk-3.0/assets/radio-mixed.svg delete mode 100644 gtk-3.0/assets/radio-unchecked-dark.svg delete mode 100644 gtk-3.0/assets/radio-unchecked-insensitive-dark.svg delete mode 100644 gtk-3.0/assets/radio-unchecked-insensitive.svg delete mode 100644 gtk-3.0/assets/radio-unchecked.svg diff --git a/gtk-3.0/assets/assets.sketch b/gtk-3.0/assets/assets.sketch deleted file mode 100644 index aa048c3efd9dea2b415b3bf69efd6ad79d06da6f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 335872 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�y4IiB}S@L3NPCJBjy@mr*`4UTJ0x=k&Ue3@W}oP3gifQ zyn-WJk_jY;Sb21vfuALcftMwmC4wcAC7LBxl0%YHl8a%vB#$I-!w+SLcu2H1vc@Po zL_*jc$_@n(7F;M^K*hwx)WzA=%~{vf#SC-;r=_c|rI{P(5*u?DV+QKAB&}1?zVqp?yBsfSqN;)wtmvoVI1x128B)A({Gn5^iAZ!k0 zhY$!$*#Ua5H)w{_($&J)7O<1M%J1}*1Sg63UI3t60M+Iw!V?I3OQN}Bnx5DTG+^%56fGUplwa8h}*Xy zd8-N(T1DV0NwSu~L9!mnci<|i_?l!RsQO{>l5CP}mTZx1m28u2XAqX`2rW)d%t?(G z5Gczm&P>Wl4F+*TDhpD>((;RP6HDN&^+wjRM%MC1*3w4SlHh{8^Z?MhNDB)WCucJ! zT}va-E`BEqV_hd>10!8mS92pXHxmoc#Zur_gJiE{UyN@sq~ruLnP4a>zy*U`YuN!P;2$=Jlg!ob+s!Ug$gl+rwK!c9%Vn_?G&;-D512TK?nB$uJb zK^^f)YNg~V$<>l;B-etf08qit!UZlVKuKyjix>+xMyBO-4y1E#fTbP*`7@6R$!6iW}!&o~Y z;e3<9LGm_wICqk~fD{zMlJ_MaNInErzmktZgA9^SU`tXYpF@TjSlS@N44{?|>jbzr z8(I4~8drq8W@?;1{x$kNW!k{VC`*W?S_Xw=*kY(9(X`Q@-yhl4%R-n zAWFkX5`1Nc6q6LQ6xx*?u%wQW=0TT4@H0$g;APyxFo|I@!xV<8Qf%N0q!vqYNpVZ@ zfaZJ}Sto-pkn(S2o!Q7bt&w#i+9eTE{0vK_1VJGrC5-(7Db`8omqbX3fyN-FfX5)D zBpDo}q|sw*D#{pylq`4*0@rarQc9pPi0R-l2q{$t2Pt)Q<7QwPgJ2Yu(q<5r(t(XZ zG~m2IN=l#cNh9kl@GeFvBL)X4F01{Evw8e}gq@JqQdI7oS*`*{9+0b%TyBcL7k!^^N-%3I1u$`?|o zfW|hYf*6)dg&>b@NJSxyVz4e~WL*j=R9Kf`Ie(y$buCf>BNZbR3oBq2H?l5-C2^@l zkQWxgQ!_Y;OQnGXm%s&4lDJehsO>M6CzUUSI8P7U_Q#pTp#vOJMUVlG<(!R->JW>{ zKo+e4xA>(hrK+T=rD_-)r0S&Vr5dCfkpdIBrGVTzKyEdFcFD1>YGhs6$hxMHbv2#= z4yksu0S;(WiGjcXhg3h>00%-J-T@A&>1YES2z_`5IHcyI4R9dzfd@Do&D|_rjV;V| z%?+ImbxmB2+(7r!x#_wYI=i^II6FF7n1fFJv2=AaG&3=D(=~H6aMd+&bFtKQv^00r zb#bzAc6Bv$HaBqrosVZ}Xz6C+X5yslYT)XoYhnr-syDQ-&^0qLH8pcGbv86LwIsTh zlv*yeLTaVdDyh|w1kJD&8Y_$XY0P!;4L=k#!exD&8Tr z6PAj%G_r1jr{cY!bhH_sU?GX?5J+$pm8q$bnVGq+g^81ku8F0qp{}E;rHihck%^(Xi@BkhqXB3K8fxcB>Y~&osmlz@ zrLIa{L#d8;!u^j_9V4~djg1^Z=Q^3_8k)M8=$e?jn(10t7@O-FyEvJfnYuZd8koBx z+U?-IE%;hNQujasvbRC@veZKceyK-Nj~N`Kp5n@7jjZoLU8sG;NBIk>mr}2!UQ4}! zMLDct1X>8gA_{I8A+2I!J=Vy&zmfF_qzr>MjNYO&jHG@_{es2#p+?pN@EHFG^2Jjnin4K_{%MPfhjEvvI}yBmb4gygEaCj7U0xH`W0HB zrjE3Xw5+ros3MnE05x@_6=6*sX%#F@9i*d-SkG}ZvYu>YeG6&o+`-z^k=B)l4|Jbt zWQE_LB@G_vMjTuO&Oy@Pfo>c(Xi0+yx~1)<9i)*4x)~T4ctJPl;H(Rm!&LwbjC!mq_MkDLhM%D{x%^hhUhNaSe;7|&{(cHO+-rSK61~qpsgPS|j zVGIt^5lBfN9Aj5dnmf`_c$+)Y@u23;HE?rBI*GwS8hJ7pY}|FM%^m3s24U$;!p$A& z98h!TCb+pHozLJPU5M`7TUeSq(#4D+(xuX6pyrNrrF0cZ&7Iq@=8kkNw&spBc*yxK zxImR|W^j;3Kg*i+9tq7I=?>{m=`Ki70c!3@_cJV)o`~Gsk)Dp++_~S#`UFx`us+4w z+mkjZXYl5Z^k$Gn&%w21>6rFTg0WN?t)Exkv2uk=2o=q0+j^RkikMI-C$M%Gt& znmf`*$ZPIMpCPZgBYlOu=8p6o{LLK$3o|1FGiPI6H*+Uv=!r#cj^?^XPA1Wc< zAt{w%Ico=^x6eAAwUeWf73uIH*6)q1?;BaaKvF7W0i?Iz$Y|8aXpWpdzesqmG}grrY!UH2I-cpZIoR)$4}RfdgWxeSL4C#Zn|83ANyWc{k_AOqnb zc5Ev<2tb5DSC6~6Sz0(680i`rfVR#$o4V>+I2*g_T9~^!S(uqQIhmVS;;RH@1V9NI za#)d!FoT1PC{iLe05u;-KdgxL3d3?4Nf{{_X;ASlBMYhoW#nL$po}7<5@dY@>F+l( zdT}(eF~DD+Hjs&7c+$uQIkre9p20yT5#2Zrtjk0hKFFjp2+O1~2+O2{ zM%NoG8+04lIN`wuZ+zpr6;dXLkxeE~CSRriG~C0+)nL)c#@)!q4>y7IWuh{mBc0iJ z8e}ialriwjl*?2wILK5X`3I#)Ze-&F4NLRFmx;>M;#wvu(@60$QJGdo_eM5B@U4(C z9SjaKT}bW%x%vKAC>dt&lR4WG17v1n}Mp$tDbI3CK*t))J7J$zayV zCJJr|$jo7IkU_o$0_-9&5?TT>3uP9`EQXY?pq7Bl3Wnt}tB_j)G8>Ru0&L=qY|!;s zY_b?j3K^vu*;J59TA58Uu#216q#D`ai?d`v7dNq?EzXhw?f+rJu{cWxd~uV^5t*Yh zXcsr(%<9mVfDGi~CN?>EOF#y6aTA+7xFsNSUgm<#MVU(s4l-9{uF71KA?M;IHpNCZ zg+?~zMm8lpEdd$yi<=NTM&&th>9b?ClR>|@384?~z=sU_#Z3r(cn3aY&@XO6=mQUY z7+IRSIk|y$wt|i@HnA`>(6w}Pa?y3MFfq3Wf^1{Aqg6F;6s*MmWQK}%?MsnHL@8uvS~E3>4O^#h=GqajckTU zsaTdzmLFPSv1vE5X~NnIvY=iln-;uj0B$eHN`P{w4mfwpN;5df%A%JSx+nu5vhuPD zm;)bdddLGG7H(!{rY2@ax|U8RuAoz*+;km5^SI7##!jwg=ElzE2B2LFr~@Ce>arTL znheWjwPkfc?Gk9Gu#wFG?tkQgj{tbP#LUse+05C^RoBuSbfvkGp@FWGiJPUan~8~u zg`26fp`)Qmynq0B<_B~K1DJt-3P=`Ii?f+D$X=E;XW*B$khNrRkhMk%7_vEF+OQz3jhy%$R1^IkVPN2Wedd8+>t%W z7$SRG_6%s?L-xGv1+?Z4-fJD$f?&-Z*~{3PJF=i@O|}q7a=*#oAd5b&$regNb4T`` z?0wk>kYWPV+>w3Cuw3>za&t%aEpl@wtdT7mQcSSLU>o>gOGd6J-phV~CGp5cHu$n1 z*)O0Zj<)Pa7S!8hLoEA2Ei(RrlDHhB9FrU~kx3ld+>v7i4}7r2!kasCoFLodz|9>w z9ywk)J~@5{2RT7GAvs|=5v1gUQV1i7qtElOB{Z_dH?k!)vL)hbw&=6!%Sn+p@FAx} z-oS^P7I_07az^+EK8y{FP0cKfKvMvwprfW8O?90t&CPU;oh{s)EX|B848Rv0nHd{d zT3R@p>zX*4IqRBOx|l$3cQAD|GBa{>G&D3bC%QtDvy`)vvzD`wvxTHohUIK~5Cb1< zC)oCKG_vKw6GkIjUL#vtBU?5kr84e^4SbX~GFBj^PdP6+Z&>=wY-CG^6~S`;pcIk; zFKxj^upGFa%YqAH41CB%$wkY>Ff5mglZyv6FrW?bMz$RICg9?-6`))RtOArPhg5*<0+4|ZaL*TUWKttr8Al^qVI$jWNCnsp zt^m8x#y#X3ZCr6<}2(TYH0Zg9vEcqqdQ)0<8j+o6oRRZXq~? z7ULNAs6?*-<(7dez-n*>D7TWqL2fmAY}KGtfO4RF2lg}I8uyUf1gZe*z!jj}Rt5*T z?dZnU;~4jl+sz;>w}(MkZZBfoqX8a#1jjw(4l%OH9g#aKcMKf+ji7OlrbafzVk6SW zJ>)lBZB$lV5w zdvt)uJ>>2&ILJLfau+z0bz*4<$UR~Vk$WQd6g2K3_d@O^T0;Q;xJMVPAt3h#TSGwZ zJt#}`fI{mN1Has7xi1V3a^H|#g%(ypXja2r^bIEhVa{t6eHu!aB^86rQp z`{gA;xnEvJURGX?v^~4>3XrzJRCwD!UIk>)G;rHMUR_>8UQ=F+!9iX}URPdEULRN3 zB8g+P4Q4d5O>bnI)yOszPuoD=6s>K57-GOX6e4en);2)s!#flr?~2woK6(BJgLbkoGuJgTH#Idib#ifXb#@{l0m=uNZb4xQ_Co?lMOD9VsOIHifB_U3huBPTj zpo`R@(QeV{ZIQhNu`#2ie5Swiq*>*Ovt!rf4 z3Qp9B@wjJ=Y}=7j@&WmSu#~*9k!?LZB_9PP+70kT3rWeRK!TgVjYavh3=Z<=krEHM z9@~sE9w&cM{t}k)xGl)zaV8e7Zia4#hPp1spsVX$49!7peFI$!17|~1Gb3|D3rACo z=Cb@v`CIb08J5f6mA?mSEw9 z6IakeBooj=BqK*-Hzy}EM>ALFcmX-^FdS$+4!$T`7wN2ceC=s@&`FPMyC6aIlEFd# zHF^;3CO*dB$-kHXApcSR6Q~&D2w+&w;ezP7a0GCGhKi7GTVp%Y$hN1E?I37R=n;-a z#xJn0%aKOLVCAmu`Z7KK(=F1*#qb^})ODs+Opa1*uURpXnSK%HUO)=oegH3JCbsRM$OZ~C&?#DqoDBSmT#DQb4vM@;L4=a$8rc;=opR_Y zT14y&RTNMZR1{JaRuqAhXeiAI2@Zcnd5%W5fA9jNk?nsY+qXtG=vi9O)&yrG@Oq38{2X(;-@S{jP}SXvtFNOcW6J4YisQzN?q zxTV3)kF}+t7@-&mjT&~=Ms{Xc=2VOY`G*BHb1Ei*1QDlGp;R%7>7Xh`F-tL9F$W$I z_^TLl!@T8HQ7u?cNY+-OvY(tMTKCCSb#V!V6#cska4Mk9m%q{>)6B8L66w$Ak zXBQ-)rJ*=Yak?V(94F9lnc`fA<%;u>TN;W>kz-$|kzE{IFgLPGU~6fx%OmH|<%%m{ z$w0J`T^ODW)_`IhaS9c<1*NzVBq#q=(8#o#4RNSSwo5*AUZD}a(1-CTVCE+a% z#e*P=q`)l=#UqMG6^|(%XK+wFsd!59wBi}0$U-Ugki^kPE7)Zk*`*uV*#@w7A) zFOk>MP`pK6OGEJyc`XgaSNK~RmL{%F=5CG#x<-zUuAocNTy!l=-Ar{YEe%Xv-Ha^V zEWvlbnHrf{nmHL-=(?J?y6BoXf=WaK6GL4$6H{YHV@pGG6I0@cAQV3;ep39b_(kz6 ztOntFlrDbAthlY5r*YTVoKtm8U)(=Z)DdXu!h*o$=K4;2y`v1 z323>srIVSig@KE)u7$aU3+VhEOEXgwd|iJfIgrb=!6kx{B7=jHGE!m%7hpOh*Ak$O zG)n498cLd=T0%)1R7)u7z-kF4eMl|AIR(-m1x==~8zY6k5l17tZX^w1RT4~s zXx&jI3nfcf=o>V$>%mF~C0mep^x*{oxO7l*0tp(z1yM=|C3jHipyZ|Gt>goD1h|rb zPG`cG-oj-uDhVZjrUIr=r65=(VbW0BFsqT>99l^zg@P&xQ*b4r6v5!26onqfW+;_} zQVh6~fJ}hF2AmNKf0YtJm4pSjl2A%va8OD^H_j641Q_Evr7Q+vrECUar5xx4SX3js z72I3!?kTQ?zeIJ0iBXk@o(WJlb6MEV4n66j_-cH0Ko%SzP@{7N-S zwG0kQ$VW7wl%tL8_6;(P>~`=8Fr_A36JSbh6i2*~pcp(n93Q(xs8z6H)}RdtnakOEt0wA{R!Bm6pJ=gL@;p zD?B@_0Hu87W2#IT_?6az1U+zMhfUz@uvKZB(sp>tz@HtUm8H^7NM-2_uPl{7`$E}$ zz?G%a0i}aVhm;O8I4B)eI;M17=>$?>qC_&1I7VgZ*U0YM$R5zh?vJOkR62)NS;Ddq zf&Ilw*U&0Ugg(68a;1A{l_f$S-fp?lGqlPQp%2_GcQQ6NH340DYVPc8scYhFXrk-r z>|~;AU~Fz^=xAYBN^8ta-k8kp)j85lV0TDrKHnz%X}8JfD9 zgZ9pvxthD085rrh85kLXZc%m7wKQ;Y)wMKmF?X{tbu%}2CVsu8(mSR1N*|OyDuD-i zLFGO2{$iy+N`E;T+2i5qr;$COkv+7LJ%$5vSQ5BO*T^1+oQnS|!-ja-BO2Mm zV5wM{1(aaJ;RzO8s4Ihpc-bStxl@^k!9kf1DdB)Ct|*jlxw3$=AZE9mJsP=NZsKfe z>}F_Ys%vZlx>VlPz*yH3bk&}tftjBuJb>_+zFM)nMF5`Yc!b2c&_Yh*l+lm?U?lpSFuSz04|3Oo(C zf_#&TmIk~)g6VKU%(w|q4pa_eSgstR9EuV*neeoUy<_fX>f&T!VQi`E1|AYKb^^`q zSeok^n_0M77?~Rz5ZIcf90PJ$4kUHPGdL)tZ_Z)QCAnDz8s=9{RZde*2Q{mdGeONN zfxtB?biCcLBtX);wkOk^| zS3uiU%9BCusxol9N_iTCgEIQPJnZEt?JDJ2;C2WtmcD|KYFbFHJB;5H{2KQWRAZcPfgM%{iwL4(*Ye{HNC~r~Ts=N)-r2%!mm3K2N zSKf=8A8C(G;gX_vSlo9uE;7;P!;_Bjv}+Pn4fBI4D0? zexdwQ`4v)Rp_FV$;u!6Tjz;$OM)s~o_D($Q3FQxH?Fq#2Io@G@oad1+(>w<%m)jU3I*ER1!HjX}3<8GwfR z9Sw|iT?|c4Oq@+Ycf)}0k##mObTo1UttxOab<{O6aCXxL^}2N(U5yMaEF2vzP0fk# zfUEGU2&f3E2&o8zQY%+9!*VWvcn4g9D_TX4qmg|oyo_jMpVr9U*T_DZgR_yzl%tWU z8roc7GHqm^f|N*A6jT&piF9HkJA6Tv3b^7!TTrE<1xh;%2~`P$h4h?8_F1svKqU&~pV{!74=xT=;z5FQ;esf|fl3NEq|;S0R1j4#IHYkd zT*asrRC1WInL<_aVYR}7h89q7doi?DP$>e{3Jbxtf=VfagGxDiATL6x6;vw0wF0i* zwn`nSR#*bA6;v7-98{Xoja!PNx2@97Agt2CAgt1f=xr~9hdjaFwn`r(o5}>0i7J!8 zz3t_o-u8+{_BC)5NbhZ{Oa(>F$_ClXDl-`PRc5NpVsKEIgXABSg0qo*HK<9r3f|jR znUAZtt+JTn-nPneklWUQ+_s8=UuCt*8U_ayemuV@t}LLdGL^DkP3 ziO`3)!c=9&-vKu;v~YBFv2fHiHgI+ZO?aE@T39-}=$e=qnm9Q-8=4z}YC)n;m{a9e zTC|$_G_Z+WME`w;pS{&WNK&%I!DC7(!|li z)k)XF%?z}I+Sypw(ahXg*TBTm#L3yj($vioq|Cz5+}X{{)kN3G!pHzL+EK3A8h->>W1_@LmwM@tjS zSa1Uov??90_M^H&b*1Vm)zzwN&|($Th>}p>LR(GoIf)!y88rk8u1*(G1!e>XjEl~9^D6}4e zo6@Ss7#viQ$CJTL=|?ETf2yZcPh%PWdyG8%=j`faYHDF=qU&M-Uioa`s%zooVyNrl z>SSW+YU*ZbX<>*`SF3{SYSk;MS5>dUn`PkEEOZbMb17rIfH*uwl)?^A)+LxWKzHu2 zzkvAm0fU3;BcyZy_U%jJBk!r|Gu7v+FH~QGB2Pe(VYz@Pq&o&WC{RFAK#Zf2{R7-P zjqD#A*3!((88Y`#7&m{M{1fm(1 zt4XR!sezA4QUf28qy|4GNey~Tl0YV8inEb)bna&|J~ryFt1^2BL`C>`#)&s zOU(n+`T7Iye5rXeIH>ueC)B?voi8`QUNkWsn*7@T&)AqKxO%@)`v8t2r9z)z!h~P2S2tUMGi5f;z4bK+C*saz`@hV z!39svQ$b$fMoZ1JK!Ut*LDbYdA6z^vQd_LH1Rjz2iwEeCqS`WW1C>Jn-au6YU5Cyg z2yURNtyNp6wq9)mgM->8wasc<)V3l8Cb11v4&g=)p+*kTMh+1?4OF$=Xbn`v5Fg$i zlG6oxVr1f~YXLgo z*u}!a(Zbc#&BetW)bcbnG%zqTHFeQ7Gjny+HF2?Y)3vlPa?v$*bv7|GwQx0e0&h@q zHnTJ|1f8Yq>cR~C>LTi*3=ZnzxUx?pM_7YQBZnH%aj7n)F0C%3E~^eYnHRhY9M)uEILII& zprEeF(a52X6qg2#9O{i6I^ej3wOBYCnHw58^pGM`U0YoT7MWU&92&65R5t*{nx zs)H_#;n0Q)VssMxcAC zEnIb-OpQ!+jV%pa+#Jn~EnH1Zknh|`N-Rz#*kV-o0QtcXoc7ec864EnD`E~KvKl?= zf$Bl(!JwgL^-$1Ivw9e8s98M{GSrOH=;5%0d%lswf}@ecxRE0i(&%x)+UQYFQcs4( ziCH6u2|P~HLH;p?2R}H2spo(M5%&Y4Cj3Hh!Y@%TRWE}(0(-)TuC`;qX!NL8FwA7S z%XD15M!go?=;5$xaA}wiYVg{+N zJ?cFSPZ~Mwz>OaDeg+5iiAWg<)Y#{+$1)Ge%%wh+L0EknqQQfuwF3#YnV@EjBe)r( zK8L|U9sT$~4ks+l81)5=A?l0N7lWEH>dVxZlhllHhBafjnk~ z^-btLb|aw~qrO#roBDQ0sSg_HRo}y~TzwyMGe-Rgax=!gk;4a4QgHZUZN`Kkml?;@ zkHgZZS0jf9Jbj)9B}GrP^mzd!=nWS{O`li6>GOvAP4!zurcY=yM*R+?8RG|U#;894 zS>z9H#;8A5f1>_W{TYLU`U~}!>aWz1H**r*j0tSy2x#O8ZsZ8U(~MF7NM18W{U>?N z7!5}9nlT!j_?t1#rpAs2MownOU0S!S7Aq`;-_{J8Lqm5^RjyC2% zx`U1*zL6umkpr@Xsu6Ltu?gzY#u|zmu#GJoQH>lCu=J?`8uI0cgeOICNuUAR*uoJF z7sRO3Gz>M2G>jRRYnW<)H?}|v%0`Y@0?U#OU7QRITns=1kxrnsYmO$mPEO7ix@L|> z<`yRAE{0|XF8KQF8lZK&90}kOLBoN;LBk2XL`WpL`T`wotl_5NuHgZyzBIf*)t81h ztoqXMgH&HAM;miwz;k9JXh9Q4QX@w%r247>RbPzgM;mK|Yec|`htx(6_?2@Sp!Gl; zXjjf@fNp=`KwLS8Qaos+frOpPp!Y`7!9)fap!8X6mL*_$8%fqn+GV}3MpHS!pI z844I?Y7}V{L#natMvjUG=LY@;mqw1fMvhFhV}3Ns7?x^OfP<+D`!PQpS?I_7Xw-sg z!5nZcsL{aSpwWaLWw|J|phgS076c6$VmsbgqZ3pM=7VcNjUEOEjXrea3LstoSJ00C zTS(WR;e*B`24RiK48j^yp!2S}jU0vWK!VqbxK=r9%w%NKn5{8KV{QWjMzT{RYfiszCB*~=P>8Td7pXe?!L&{&S-ACzLbk)sUMJT8ULyK1b$HSemi zj^cS&jZKX1jU1KWV}3NYGB{|UAE(4og{3v1v6C@GW4Fd0&@n$6`!x=rwFdAW^TSaM zYYk`|#?~6pI0gzW$aQfVCm9?xP9udBxcyT{LTfB7DQzHlb;y8^bATOX@9H;RTB#5{;4mG>K z184V-8lN;i!_zAM><(=WXncjV2HN1Q0S(Z>f*kGO)_}$zjlUZIH2yOAYG_KKwFVIS z@D6HdDxtLo5cLt zVP>Z5;%w+-V&GzCYT-ouQYuX?O>IpbO?C;e0NiHK1TDnnm;$buH9Z&{ zG`)}#4mfvCMH$r4^wIRiGN>^PWl+P#$<@)-%|O@4&D2cS#KqK1*U`w(OxM!Q*wVn+ z(9p=))deNDXa<9Fi)NT+xMl?0x8U3Y?R6t2UL4>Hu0`R48em3h3c*gaCTJ-W$Lt2# z%bH0H{F=#{DGUyp$h&P&GEgJO8Bn=Bhv;Dq%}mWK&1}sa&0JV)q6}*&X;yGFax8`W zuaRR}BgfoE4(N$b(1{q%M&`ywjwQ&^S*2MGi_Qg&9Po3VH0wdpiFVGDW(!CVan2J) z6Hv2Dvs<%=VYz0XWtaj8jv9vVMwRANy*EKLUbaF9v zGcj^CG$eUgLvuRFxyvD`Zx(}tCi3bfaOzt@a=Q>Tm!r8rbD`!UP=iNv38-DDxfIqe z)La2+7orYptcQEPkz*Z4Bge`{j?<8K;Vw|SkQse0M{}d*CRm)TY2;Yd@QnkKo3?@c zvl=an?FI?1g$tr4{R7~ne^~Q~CgL_P>`5Qg90XyEVGYgW3^SQ-Fdf%Ct$7C09^BC2 z(y#zDtg)?;V>5JEL-RbSLAMdypwqm>;GlU0J*RI%Y0zn212^b!&E;s`1~urmfE#q0 z_ZS>B(a#g)*ot*nL-PrPu;x?3!y1||K*Ji_!NVGwuNfRP-=aHr2bPA6=6l8v&5xR& zK*JiEUp2p>HDvJ5&g_IWWHf(bYshH+0mb8PNMilZ;Go5b?xH;;G-R|`v{<#+ASDH8 zSVN1OVYwDBazjQ-7`Y*{w~^xzxZH2#IE-~z;}lYvp(Uy%21}m@8aejC(x;Xb$P4@7 zNfDfAwd6s9h&4qh=~GJuls>i8wKTL4n`-f=PiR9%OB>RVIRbCUXn|%rIgWxGGFnDj z##$y?rVI{R=2{k7mReRwfr(NMBZ*@)WR5p-9Bbq_*~oDMPeVq_0j(i}nDxNhkkRr$ zYset<;cduh1)w!#5c=>oWV9mC8Zrod;D(Hgg`0`7p@pNap_?(NS~YakwXgtfC9`lg zbpj1}SQ>+FY;tvRvoJL@bk;R?v$W7Pv9K`KwRALb(X}+QaI`QqHFh;MCVpp_R=ie% zR-#st7W~R@l!J?pv+d<*}F`HYvODH9^e37e_`(EW?^pZWajLIZ&*XC2jtvq;1WTrpTR*3V`%p}$<-HV z>y_42t!Y}*LDiSmOi=ZuH49dKY0ZUHU&sd+bKFA;|GONG95)&{g&?)pCs6Ihh<40Ei@uZRCKH7+e)=`F~TF1d5bP~si#sl;b z4Xrbv3h)uQ0@OOs;GlI8sb~Q=HXfr?fLfQq6(Ft=4XqoX3h*ho0@S+A;GlIE-MD8s zMl`e@G6-uuVi4APj2O{)4i7$pBN|#S7}>O5X}#8Z10KEnHljOf5)BfR)-++SQN*$RNzH zT)Tl`xposG0kVJ9?m$}G&dJiq$q7k-oLra*a9bm%AaVli((Z;PKu-2XPF8pV>}N1* z05YumLKfD<4mHzENp0a?TYNr20>S7@))Ud7;` zy+(Vj_B!qLNC}PD1jxzP$jRHtDbUEtk1qjkB{Ko;B{KmYB{Kn@#h(BTTnrtJ%*~v1 zoh(5o+Zq`=>ROn%ndln3SeUw4Sb|pKf({)ta5Z;zb~Ccjbu@Bz)itp+Hqv!8Ff!0J za56V@GIw<}b2I=A#+iarE$CiSM+* zeO>#8_DyJlhAmnL)$9`5kF}q0G;+$pYtKeb`9@CBMo!4Bc!*Ip-$qVZTP&yKaCs;@-{s0n`1UD45KQlOJe?>}Apr!|>6v`-@_IK?cn4@f*(#WH1 zrsf6~u8vM7x|U9sj=Cl$pi_dJoeXuIoy`o4%#Ga43@w~di)-*5G&+nrOghZ)vkbtE zHH=X<&@clC#|tQf2iHIg-Vw{2k&YoIIOe9q1@gH9*ylRD3=TT{=ss5@dVozwNJm&l zL`PId3>J}s^6;h35`sE{P8^M#h+b+Vr&c4UQX?ny=qKi9;FZptjm$e6nGYewq>i$V z3M?j78#&=eKj~tICI;ITEb z88|yzT7V{1ja`jFx6T-t>N+}Gxaqn&JGxm|S~@uzxLM%qjOc()>E(nR{iNf>;GpAz z9@3;A{Un&iuw2JO$5Y1()YR7T0d+=nd|{mtod8H@M6ejPF8UltBPY_?Pn<>^jhwoT zoIc>*2&XluH^O`tZC$iZq)rqp_zfC4;b%YT#DPK@?d&I=WRM_^v!8S_K-GaxwoZ-? z;w~Nh2^?cLs!jp36SIyEcwV)^rIFL5VQ0gsMo!q-Pda4`TN*hbXFuswGC1f|qX#nT z*-tvP;64PdK{TBvh9`}jkh7n3S{WR4+R=@(g!CcM7er_1bnEmm2({(mAcQiLPGk0@zas!uAIuk*GYXixv zQy3g{rlGsWmV`Eh&P<(II{xqqA3MA3WIbCmQGg zm(Br58^RUdhR`_zvd9hGhR`{#b3*5&&M5{5oijRTbL9mh2qmk3S zk<+V@(-TiSLgy-4I|4CygtsB9a~G{0fzXGyA*=HgtsQ~ThqocC^A@cgfzStT$U0dX zxw@J;I_a8OT3G0s7`vJ3IvQHI>6#fhIXgNVxjH$zI>ig9m^+&rnmC&~=^DC#&TV(K z05v=u4RoE%joeHuOiT=n9YJGZ&K3rShM;zYg(3JjJrhe^M>hjQT@y1?Gb2|sH#c(= zL*lESuR7m!zU%zZ`3XtXsIzst%(^Tbjhu-2t47YqMo#}m&MjhyWbGL4+kM8~VH ziLR-xnXb961uR}+%?i-)jG&gTGe;w53cPG+~6iTn!wJ zEDfCvbj@9iopnvjj0`{{!A`oMrUq!4o13AfE4gP9>w=E!$Q3Rd0)13)wauhUZUSivk+z2Qg;E~CWr1)P?Mt= zJZ!1Eg26#|6?&YNV4Jtg&|SwMth*l3+`!V-fCSejP;iw&(!^E<2VL|9NSx&)G$M3& z>F(Cu1Id@5MuhG`hUL14ksA@ZCy^Tw6^)#=kbKEmhqV#Wid^)b);+@@%;LhZypglI zk+Tw>3_$CAIji6?4)NDjkiTl+f~d*h7C0H))xD>CpU7kYZA9okgft@R;f)Ag(5dyD z4d6zE?hD8+G0inl6UIRjp4}Sx~&CSrj$;H@M*Uin;RoBGS$W_po(*bQ9GnHhl21_X^)SejZI=o*?DnVDHQyIB|-8WCNC=!xoy>51z}=t)9SD#LP= zGl{)HXA*Pv!4pO!XMZDSMs(hCb6EHo;oajb~kc%!qTT6Xq_)-7d$C~ z)2AM2mkVbPTo5IF>Y0Mlr=EqLrJfahsV}&gg3gt}50-+@nBnVc>N$Y&!US+0*K=lY z&~rsfe&FGZi6oc%pm{GnPdzU^Z%|iL&lgng>-oXTeZ4?PxsQCxFel=okw(tx9F3fl z8acN^iv4AvVjts_VZA85XjphoZRDKX0A01A2U-`zIRzecknl_a`EeRt5H&nA!Qq*s zm#c@Ud$5NmsKXD!7{$I`AyW}ks9p)I*q_-@*D$M*a}KoF*DD7V`?J8szFrlBgC6=` zP|n#X#lBu0xY!4cX&r)>&4^Qm^_oG&{#k;&sOPy zwv%!$YLLCGHkGOK{Cr>8+r6wn`6lDj+9h zMU&oo1_wR#Qvo?wkWl^UZPDARhjc2S-fo8FdMKv?>LH&B$hoqSa~-5m;arb74lmWn zxeclM(>tmMI~9;~O(Q3K5tAP1R6tI&MNE32Qvo?~EMn3Fp9-jVUGIh-;_wgr*#TPp z=|N5f+ke*QK&$=``oR5X10!P#XEPHwT?-3y zOI;IV3s+r7S2Gh`M;8MFLjxmc7iR-d^=IhnXl&_da%wv$LDCg@J{EfrW(uO68#sKE6TUM&DN7 zj!^#@zS>n0-hT!&P|pn}I0~;1TII`mv_bZ=z6S%pzNfwygM+>glHbuv%nzUv^BB?X zAANuQ0R2GyApKxa`$tflVL4I{dbyyspaMrDC(;#loaY)jk2i9j0i8jzodec|=4fQz z-pITQsf5x`&`*R_*rysf;kVT3r-JHcv|H-*vp|A4ZmHAH2UXbmMf%11h%T(;*Po(46&9dZ8ad%7E$Pn$g&o>S zOZuQ|*f6z%0~DhLq`#WknpsDG9jpa(qhU9w<9i$00@B|I zY60B@w}AAwFgWOMLl5LzC@moU9pDxauCaFgy`UD*9dHXs{{Vx7{vmYZ?qcou>K|he z);~_Tu zByo(6@9Rd+SB;!+8#&+Lsre1~$m{qTh>_RvHIO5(<7=RXR`Wy0RvDmY0ULlW1h90m z)HO9Qas=H7;Hqok>}srQX>Md`XklRB=S(NMVdP{0I_1n<*V59| zRM*7V#Ms2m$=S)s(V6Ii-$2(u&p_Y6z`zicQZdc~jsl$p%!x=CjhsIkIX^aXe#1Bm z*bMb7U;{e?dsqVf(#ZJ28jkq2B0;z!Un0Jg5Mww zR`45SLJEGABY(LV;hC+Gi-Dt&^LHbcKDglL0^h=hapbQ-kwGymK>syz{(%Q5=)@t; zzwoew1ZWM&lmFp@r~%pt4$u~ZR)aRUBftTQbIB)0!EeyXl*1Hi&;u>_xtJPS8)h|f zu|f-egMNlBja+maT<{yrV{kB7 zfNmT+j;^o45(Z&|r3}Ib%ivvKE<~YAu zNbmX@fJRrjxEo|I8*F9ZH`r#dox#CiCz5|q%Em@6-UgXQE*^N-*I*B>uCKuXio3oB zpxI9@0g&5{Gw>UnFgVHJV1T^Y6U}W3Ah(fnL7l-lgYyPRdp`}XGAuVh+52g57in1} zmrx@Y^nyAr32eP#F60a94DK7i_I`4SHgXBWa|mefCl}fUbq1ilpIkUDs51cX{WSP! z@X6paY0DxFAbUT#5Es-LfcAcJK`y8>_+#+b;Ge;N1_wh%LncFJLvr?ha>+DuNjGxI zHFDv*pw5uYy`P3;?)@|*bML1ifxVxmmL@KS#?FqqMh0#sx+Z2$ZlLPWP1n@a+{n?; zz{JAL%!PzTnW2WErlA(7s)HQ)YpBn#+|UrwDC5pCG)Gz%$)(uHr3Pt~aj9b@K&GNb zF685j3@r_suEGaN9KB)2 zrQOJ-)ySpW$fbj)VP=?u)-Xd1b>JP6G0Z`0m?8Ax9g;CDL2H;H^x++nF|0vrm?89m zhhz-h%q$F@olSJz+}zA{O+ZU;ESxRfblsd?ot#XaosArgKuaUdOiWx&ja*E0O-RPy%TI!mc7#SK{n420Jx`0+bxS3fR8JU|}>Y7*@IqRAj893=$I69l^TDZ9x z85^0In!B01#tW#pIGQ^;nz)*SECroH*#7|YG`O?X6kHdaoMoNu$6(I zLD;a(ussBH4pmrsX=X}laU+*;BbO;8k%4Xk=Q4pOvP%rg3@V0whW*jL!9k@tsYNb{ zC5cN6Cm2pNoW!7kEEp4yq$1Wg*f&2VHOD_GD>b^8e4$wxpH!H(X}+UFw-@6c5||{G&FZ{HF1WxX|CbCcmaOjV8^18r2NF9 z6!)V1(t=fn^9>gmE;L+ZxY%$BYbtA+;Zg<-Ol9!`0`X`%V|;^s5-U@Sz{bSJqwsu# zgG(xNQd7VR;^I-bs6M?fAjzW2qRs-k8d-@&O=230qQo5*O$J_xyA1piGgy>av>3ct z6j)RwX0m8V%w~~gm?&`%G!n7)2#s8G;YIH{52podJAq z8b~F>90mz+`@#j@u4v?PouXyg}aFmB|sYUJnV;B4e_Zsc->T-wFaz`%*r zB{V!>co0_l*f(<7!m2;RqoBNR2agg+q5ySuxe%+YFjgxVUNF39c!^=T;T6NHpw$ZT zpaB&IhDI(YWrsq@loN-tLjgoo*&!0b09|WlVPI)!WMH6cX<*=@Yhq+!sp|+jGtk-8 z(8Acz*wo0y(J-_qF(oq}Un|`ZbiOW^TZ8On!v_rfh7S!NF*q1LK`M|?TOvFgK`jw? zqI*4t&kbJ~zBGJg_!?Rjz!nsPPr)|)YWR(#kt+ZxHUb;DJQ}%t!BqidAd{1`k!M3A zmp^h0{4o3pivjOOE>Cz2fV#z8UZ^o(!~}{KAGjb!3>a}3aT;+kEH~mY;swP3>=bM+ zKV=7}25@+DC_99J84St}ju0Wx0S7Lo=8l$*Cb|ZOCKkFTPHu*}j?Qk5x~^uX=0>J& zrjDjgM$zCH(9OwA&nUqc4@RJkGF(C6Gq8;$j3kYujHHcZjAR)cjO2|Jj1-NOjFgR3 zkm7~XGqAaN8o5t3a!qRFp4iA0+{i=xB5@;iBMl=>BP}Csv^WLzDkO|djm$V2xsc9p z;)-wN3TfnuMv7BV{+igx6^j(7Mixe}dri5*8@WPZacTrQ4~Z)b9(~|kWdyp{lq&+< zw={BPa4>R53K>w}k}DEraN5Yz$P06Dnkx!z~OxH%e`n!D*b z8##eat~a;TwRARi)pfKmb~Sc%bTV)@HH#PEhom0(dUCueC=Qg)AqPhpB{Db|C8LK) zBGK8_D9tF{D8nezC<_$D+{YM}bMJyLA79RWjC(gnBUc98i;Y~Fja*5MTVX|G#@rtVYCP`Si!>wT@lVSm7|fX2=13gu0oDRuAD}$36Q~xdeA5}6Z+{2Myrk1 zzydVCkt-LTYd~93x$@v)2gx;CK`8`rl^tq;?g9tsUZZ_R`{9njAE2Q9sr(ER8F;}b zWlv_9!Z6k7Aj3??9>!%xM~#jd9S03sG;)7A(69&O z{yU=w3=T%+a@BwjXfS%q;9&F~ z-MO_l8GRY{GWs$4Gw?G8Fa|OPF)TFt$QWYu+2{-CfCi)QMnBN@W#T=cfvXO-FVpBZ zwtbmK|3FEh0i52A85tamnbBR;NJ3}Nn9Z2om;+Q)Kt|w=c^Q@)^CLQYEWeFK5raXE zTuqH!?cmy=kqfjp4${hDXk^sj;NWazlxpPaN2(Z%#f>FkNxZd@s~MKWjb%VyXhBWl z#-K}IxZ2=?C`sH{4V1)F-RfeXYvN>VpzCDd3fhzDWMJy* zY~5@xh6Mq%>pNANRyR=vyq#-k!uceDlRrIfu-VUja*aUskj1^j;6vBEV#Td zt_2A~Zp$-nU~n)-KTwcs21@hBxW%{?OY>$Xa`VQ*+{Dtr*vwVe+11im*TluhQP;xB z*htsZ%-qe?)z!t(z|0V%d1KsT+-uy&u-tfp@kEs7&1|^;k(xJ%CG08|mgXjojz+G! z&X!Jwx+X5p=DHRZZYH{xj!u?N297RHCQfe9rZIStJHEQv7&PO`HNQdjvhf@Se&e~u z^B5eAkq4$xvREV6Wl$Go0rBy@*m#NYQsZUD%VF_tyav+NVK~Sj!F|+t6GtQ0O1OU; zxmGoDEo|gk29EDWu1nyi4re1%LnGG;8>HGjbwbw__pyKPy@jD z9;l6Ed>__EGJb@ujkFo=>mxE69@@;ex0Y$S;;yhULb8jsF>gF6@Q`GyVz$OB>0A5!^;vWWs8~X2K3>BW(k> zk-QqY_B3+sY~|qe6G2cLX*+mo$V7y}!9)zH_5t^i zcA!iRnSi?F`x$Vp2{4fbwUKs#r-n=v7#vKL(2d)TwT)z=#vp8>PPmO^q6KOr?FF}y zOmrC>O!U#s--o4*WMaq|Vq$D!0%{|fn44IT)JED5Ya^LhV{0RsfJc%Kg44T+BZGs9 zGrEfok&@kq$R*(leplfPm?qXzUXzA!?Xbu|X zc6K&)GIw*;HFX3Hh8s9p=sG#NxavB)m>9X4I$4++8ygc{XPPWBS!}YzWU0wASe=P- zg!fd?5#C(4k;>^ija*k6xo$!dG~x(vW7H$OO*WfsftA$P8@aB+lkpBvLb?V|v5;iE z7bJKCE{IWQnjAJcVseyWxyf;p6QDX1Qd~1Ma@~Tj>qlfP_<{$}*bL~7dka?sU1KNE zEQG0(fv%;Ashh5afs2KyrGcS~lM~+U{&@%wX-M#Y1_>e-K%tf*KR^|w$#0WCCV%0M09TaI?h0ZP1vFL|Kouq0 z@!cl>O&J(`8L}8=nzER(LMqA^ja*+FoEvx=TpGDvH*!5gt0+x57?zrHfr7}C2m4`H zT+h)fN>hGNMfnn3QJM-dIGBnc6+z&N@)b%&X(|RDOaP5`VmrRuR2o!Kz5!R1rg97p zrV8lBy~VnQg5iUy3WKnzDub}88gvbXZX?$_c<{jo7dUS){9*XZ@Q>j?13x1JBO@ad zcy2@3RGX2_RM%9`R3ALY@gB5>;zJ|X7q|(euc0tC0!8x22HDG|rVRY1W~Sy04yKk! z{y{0Z8@WD%n%6qQ$NsQSEhlcL1+yIyoX(J{eU$XOhd6X7)(Jcp16L2^Sx;_gM%shiYKn$Bs3UI z6HF6LlOW|QXj!9aI>U0)OymZGX+Cm;;ZGwsBcy!gX2O_3XOwE>MxMhmEi^5HW%d7! zTz_F%-Lwo8;r~#xx@k3oStBK*5x@og%i)kx7rQy%&&<2BPJGjBX%?xia zn0A9KVgWZ8O#4jxO(&R6WN_)pgD`l)R1dw;z|Gdk&DzM# z(a6n?r_o?K2d&Y7n3={quwuFdt4V>v_=C$A9!HJ)XmJ% z$iUo0*TTinOxMKGz+BhT$iht5)xyXTG?i`OY7W}%@91LS>TGQ3qHAF6YOHHwXzHTt zWN2xr>u6x$XlmkQ;o@utS^;TlYU1ML=4!6%VruLLzWrI((#YIU*WALu+{wkj)WXS} z_<1AKJ*In2_nGcDJpf76r~@mer%X?CG;)i>(@-O~L?btEBew_#WEK|M&*q-c$c=ov zp6OZBbI_E`Ezro#2T#eDKxv5|o@l|9mg#knpdciN-ePbty#r1>kc0y&Gq{CN23Ab( zncl}7Sm72%9#}DOHgj@xv2fG1Ff}s3=f@Ge%g9qYSMaH{;=G9evh0P=->u!w0q>tKnFK)BkqwysYc8~K-Gv@xLJf*Bs|=~ z)d)0eV9w`(T8wDZPiE2Jp_RF2@n#8TiQpC^w*h!)#k-N)tdZNeky{U~#b}nou+$7R z)GKV3fqiI&TOYl}XqL^erIFhZ++sA#V{kAlK*}=UV#Elg#b{OpZZYB-S}`kUc+$vi z0&X#yRWUf2A@_~J#+hOrS}|*25H@QhJhWog!uX_-+Z;T!V%E;!VAhH5Tnj8MC9`hE z5VKyhKG4vL*+jERXe}kY(@)%%u$Ge9RBSCJvl*aFX$?v5vl$%B=AygEhJ==q*#fhL zW}qYNp+hTX%NdrNtwe4qnXN}^DRJ92ayvna7;a}o4-hf^#O;MNv|_f=40e7!w?iYh z9lWpsonOyw4=-21^@|zk{CaLjxFBj02cKVWcG&EQ8L{WrLt9E_$002x7kEp_40P!l zw=1}%WOmN%yx9e_iwq8Cm(8x2T{S}TWN;3O`)=EO?1GkdQjf^eb%-u|MT`UaUbWIG6 zopc?|%nfx73|yTJ+>A{f9i2gYI?X`G`nb3n>l#})n&_GsTA1lNI=Q&&x|kcgIGQ;+ z8kiaqe_5w;wEhnhS!mm_Ixzg43tD7)TItQW8dGXf9(eYc9vI z++4w25mXsUKp%fLM-3?ubV2en<^i1g-(kqaDd-?qu!^3;yUv?nrp> zyMz1_g%$H0nHN`mYRb%)R?DYA2Z=jK(7JKGe9+961WC5 z&t`Bi&qa@}WRx1vJRe*G;uhgHGjB6*H}3$AnQ&(`STu5HHgY4*L?nI8#2nm-&1#UnY~IJfZ{BY{ zfx*Fi5|V#VisVM_98jA&8$M=YJ{8xPiTO-M@dh)vml{kUZZkA7GchqUGq5x62LoV!d(b!37D_L))Fw^2+9)0kbJ*|!NDAT=PGx}eE~rh zSr&N~MHVF%Wfm0{RhDNg&skous59`hXs~FqXfg0Icrh$D-)X+fd^e{{1l;t;a3!t=-y9!dSa#wRSGBa{;G;;SfGD;zrt0&A)!ZLP6BX=1*W1j^% zxE!8`A>j({Y*xYrQ8V^+aK^r6e%t&GJZ0j~*wA|4{2rvA6%!&80b2=I63ONfbMxUH#aeLbuo$; zP;oMLb#rrbG}Co80-d7n=w__z1iJFd&CSr&(8Acs*~r9#=y3uIc?$&#MGGYhWk~i# z9T~FFwb0{eQc)l0@sx~|5~PA(>{j%F@~mKZHC3r`C#3vY(y7QPmKpcWXk``gGp3w{6w(#R03 zB>-BD?q=v{?q+VJ>uh2PIuzN|T-Var$w}AM&DF@!)y2`s$;>5QKpHYO1Yc3Ci*&jq zzV?|#7^vWx2MM1@1_z61^zfNae00ZI#9Jg-BwBz+xB0{wmh*8#Tf)K&%lX9lK*K`I zkfM8eBlm(v?xmnJFxWX7nN6WhVP^J5W-jCi&$lRm71@g$xfjBUY>N_*+ZVx0XK;~i zQ3(=U0vALnvMuUBMYctwMUw@h&;b|O(CEM%jldgtoglkbKmxCa!NCIkMpy2YBsXqB zb3PW6EGAn_0X1$drhyu_7SmykTZ>tc#w}kQq;U&w-E2S#()ApT+^ZV7Pe9tX+d*wx zW*M}$t;J%CC9v>Z+sM5d9-b>e-dO_=I!JheZZhXy2Ny&Q&rRU)+-kASVmsUs_`~x$ z13yDQ124lwhDo4>#SAkob}`8^aa-&KwP`^u*^Lc34V8`DTN)T3_8$PXNH>97q!x!6 z94wBaC(z9(Em8~6ITg5*P^3@lkJSuNS%;ekIHKwCnV9FUgKL3m5Zk_Tk_A#h8`lHXFmQqWR}!NF3*Qq)q+ zQXDBTiEarUY2-fK$bGDl`zU7HU^&AQ)Y)9u(A3z{(9zV<(b2#J)cdz^H8ZhrGuCx6w{!&^rDdpVX<}}oYi?p-Xlm%> z>SAtSLUi?DX=`a`X>aLZ=?F>CsI37@Z%ZGJM((Td^wY?Ft&#h5BRAwCHF#@)$E=b2 z3Q{Vz^t1GbrQ&mq+-G2gnI&k)F85h@f&~{QmY|tjZpfiUmeC9jmgqCN+!s(<1D5fY z30PVK7m-^7#!imrj&6=_y2d6J=DH@}nF13-CtV{WQzJJwb4y1@OU%}QWx8dCWhTRN z%WTUWl-9syY^?#L1-O<5#^$ajCN7|b(1xI9oVl)(g{gtAv!St@vyp+Zfw7Zeynr~Q zH2_|MOKeNP5?q^JZ;-ugS1$wANzHd^_C5mjh0QY z*hgv{NbreS_Hs0GKSYZCM~&P!8@ca6iZf{2fU}XAqmlaoa`g9GPJl)Koks3k@aP9! zn!|k?E&4$#j=Ar`1u+_Fmh&waST1B(Zn@ZU2}-mejGSzjpG&0sT zF#(;jZeeby>t<|bXlQ0=VQJ><8ZRIQi5Ad;T%uzIbeJOdV{m<9xt_tn68$hm?k8k5 zF)X)QZnNADYGPRK1T`@%cfpz%mV2=@Fx%KQTC1enB_xBi3ey<2jYGzn*Gc314xro&Y`65>CuZ`T$%htGmV{2ycAYZm-C29q`h?VfUPC8W zT}uN~6J19WM;Av&Gh-KLQ&W6>Q7h0ztUP?+62YpU!NCgsB32%LvMLIzsaDghz!$Mv zfiGgUf?vdH1-*!s6Vy{(&M*hm7v&K{3V%_KMjnAi9#e2d!J`7|i((u|ZMDn_b`dL& za3hZ(JoG^qvGNGP0~!+gpxv)Lh=YibD~f2Vt)NQ6YKPTME3}JPp-C5WZ7N13VYQd3 zgelbO0JM_e5pSq(nAON51+65k4l`_NlArJ4H z;#yH^b)S*V>Y>#mtHI1IX5vwm0&yHCA0J#ma3diaV_sOmGto5x8tPL3)tc|TrtWB-WkOC8>i-07KK0Co<*vMnh$Yb2dV}z$q zZf%2BS;DeVBO~5b3Dz!XeR708yp^T34_cobp$~6mX&r*rCr9W5SC+;`E}&kutFDna8ZYxGr8Jhmu(a_c(lddxmKj~#NK+|kU^*v-+|MAzBU z(n#0D*~nDa(#6qO*VNq6*~Hn@$iUIU7^CX8ZnJK;?qFDM-DTYks=A>=!i_u*So`Gg zbE#EKP2HT0!54J8g07)7FgMn9axpR2HFhy_baHeub~SZ1j2DoEbpD{LH;L{4Sx*K9 znM;H0W$S4S{MOU0XD~Qe&qB&tC|RzNrw~-Gx)R+hx1MV~&w9S~0_%ma_($oLOIWYr zXyoxjihut`9=ApwZ*cs>M(jBonK>JIe328tI_veY1mM}o;|@;%n?b(uKuZ9iT|hjD z(|s@_W}o$b>jMnStq)lrMu`|7xWlmb%1wXlpH zg!Rg;?_l=Id5~^e;|b?z^aAV7cmBGP=9X*VrQ5st|oZ!Y5t{%A!AE>bv3vO)L2r@X>2%{SphqXs; zBhDaf1KL7MVBp^dTp2@->9LVxaIit&9>kMKLL zRgks-<85Tvl%q8=5ca8YfcAm9I6E0yIGgIaIl7pFHi&@wkA^O~Ze}KCuI6qo&Q4CC zBQ*>Som>o^ot<TMcq8f}_D zDV3j-VL9Jl#Dp(DC*MDgMxIJ|!f52FYUC+u9U;5Tp9AnQybeW+B6Jo5eQZL0#x-yGEW0W&CR& zO%0t~O^l4qbPZiy&2&u+EG%^`EX|#DEsULA4UEjp%#Ga)@pZ{)2Qk&% z$kW8p$WzCOaxaG{%G^VHb-ra!ODk*MxHu&@Pp1g$8hN_lX`f)9+~yx6n=OMaqb(D-Pu>mcllL_8Ag)v-y-#k-3W}QE2HDHD91Q%n zoVHvH4z@f<{y`~88+rOcZO1-%pWK!oSD)NgnBqRUtvJYSlfZeyR*J#FRtCvk;Jh)J z$n}A?^0o@Lil71rasY#^8e)B*tv1T~K%Oa$JdnjjjXblU>jQb#HlnN#wAHiKhb8{$ zjXYCfiQm>3*P4lC_J$)`Hji zVJ?dUt(XH#VJ@a4v_8-_*EY{K-?ji|?TSVoq?JlM%fZ%Ce|?~Bg>9v6m2EZ5+BJ_q8cm#ULR=bZ0u&_>TId&2%42PF*P*TwJ>mU(=~8$ zG&gZ^G&3{@?;Le;HZpZ}wJ_8*G;;-=+~s7fYiVKOsO#oxWM*pOY~W&GVHPi-Vq|D& zXl`s^uIp$7+7)SHY_4lz=47mE;b`t;q-$`4 zk!L%&K@1tB;N)!N=WgWLiPXrjoo+h=meIF1@@$4@^f{nBy#=19AsKxkNN^im5TlV{ zyWDn#?MjB_wySN|fcmJg!)AGQU_ER$2{H%=TE1y&;bP`&VW4Yj3<@bTXD3}p(27DA zV^u`NWUn*u+ithrVY}0Im+fxbJq!-E`)v2y z9p>u7FZYGLGTXz1ckfsW;+%;Ry#I3c2LX-$ule$5=ON7h2(`qI2w5_BE{ULMxN7+ zJQqN1{?{ChEOM|m|LaC( zpMf8=(i41)>=cHnc5w_dnQk*3w@b212DRoJdG0j0G%RY^+Q{>$k>@_NL2s7^YS7;W zH|Xs$8651g(G%-Elm@+BF1SIDYuv}K2-Ki|0B+FRl`=Tkm7^Q?5X-m^GnZX8gRor< zd?m&Pcmp0D1&{@wcJ+);8hIXrH{sefF*w+@pqu{$%hnsaHpURU4!cg!CS1E7yI!=d zH+VPU@;rrYy|J6Xn8qLscUgl2Bp$&-#?K*%bsB?%-3)XWy&z#E%5JvZ9J{%oybftz z+bv>PZnp$^B+70T@<`OnMxJ-zQo51nJ=T$^Z%75U-5R^Ku=M$+k>?dWeS&rm@w|p7 zMToyZJ9By7!Ua*&=WcNN+-JAn?f^W7@TX5`W83Z!q_O=0-q^M~2FeH@8)UCC@Y|iV zJ7ss;?hJ#2-8sASb{FiB*9#Nf*#6we^Qn>NYa`DW%*Hl+398+7@UdO^uyFH_o_#nw}=6p!?X24J-`Jj2&GZ;{{Y)4UJ3;Ovc&&tur z%LGptjl9f_JU<(G8NewO(nRFoY~;;t6)3kxLO(*Ihs0}p8=2oU^710bq?^4vG$wgD8+qB`G3m`<*2v3& z7Lx%WK`yu;Mq}ST%s$*cf?>IRlzlX)u@7ylHS!`>A7P)6GIn-xHg`5K)pa&=anv=j zbT-qqurPJfb#pdxG&cjS76$d6ptl2nmx&ULj%1Kq1t6&|jlsb_1Ff*<6(p-=VxME5 zYo7;dnb;SAS|;{|u$GB^36_=#uLL}`HS&scH1Y~H@|u8KCcMg6TPF6k_I0ob5pCp! z-!*361o97Ji4P=ewSxq4+%;z315Wb&_7m(U!X1G<$-~ANF%!NDH+uwqavkXIU|Wn#YwZ_C7f zIm44iURiL<#C{cngZ&!xsFTCmGO^#lAZ)*paLdGg3*(bUUIlQ=#C|)2gFW&kd0^)% zVriM!?`90K-)p}Q)H1O@Xn%;5mI<#CtYu<<6kE&0{sbr_m`g{%Ymlj+QrDbCO0h~TR+kdhDN@V(kwoL55gIgxNy6~2XJ*Xqc zs|RkG*#EQt@4(=|$l&0>?7-r{>cEB+m?(uXk~ng|#Rya~8#MCjH}V=a@*3i4nKCM{*U{Xnl-1QF|QFe)?$9|vCtKZfNF0SbVzal ztrHe@0AD8SkOr&19H5uUq8zEp>y8uwZXAugj*YxIkm@TMRDEF_sp?SV0J}_<*QJry z2_F2Q#Z0`;@R9%${GeNKcwOOwD8+*V_%d0C7Kc^`w98~6Lxc>N%T_@LWK96w&%(gZ zFo^+tKZ`?$LnnhTLlMJFhhB$1NEPPQ$Q$0^+#t~4(#Y%E$m@Z2Jcz?YhNTXZK{dR? zRP4ut@Oq*j58^NbR0Dd0Ye0wD3=R(H=R5KGpwxg4^T9PBs1c6sNL7a=pc>E*Tmw2R zXK-*>iBwd9YbbxLlWhzi9M&=jJFH_6c32Nx0IS=`i@0tK-Xq4f0M=m(Bb&oEhwTnK zK$C5}fejXoyg`k;i1S%UpKNmg9TCMF+#q||VIKp(!+wVY3=R&+_p756$&I|Bpwc%4 zKH27Q6xU>%!%2!K+Z@g^x;OGhfR6`pxWM4xa0xw}BeApu9Ih~iI9zkM4muvh;g-W~ zw3Yzg<3V_%U@ZZMd)Qh64xqtT-WW)}f5PD4fIj%j8%sh5^z*SYY8Bhy5e0e6C)#YLpNPZBSUjt6LS|gT}KNSCtWiGXIBGD3u9wr@P+bj#wKotjxNr+ zu7;q4#f_cJbS)iCopp`OObyK(U0jTvO^6@LaCCKab98s~aP)*V7#QY22iOlXNH_*N zhHy0URv^_^m5sdljl5;x1l_;@9$x2cMVX3&Nk+%SriXEdt>8KE% zU?HhE0VD`HyvH$_!ND;VDdB+2tKwbXTVadotGG&D6Zbuxipbx71;h9l@|ciuK|t>Czo!NGAmQdEG`T|3FGL7@nS z<&L`@_c-naHFX^Kg9bAk55QW3j)$=gX7s^*-pJd_(a77;$h!*C8k`Ag4Ps2QIG%Al z3yYBMM&3?%gn(|=;q8KlJtT8o14T#=To5(U-v%f8dye-VAHW@fJ<&tk=nNQx8IF$_ zW-{GmI_~()@j0X=*x%sNuoN_yF}0C*5_B-b@fD~kHv!y~b9~F-;D~;A9q&YxrkvwP za8nM~G>hXmP*ZL)xGCrOlfl99H+s}f!8(}X_@6=8iGlE7h7&VrFk>2cFvE$B!NG|G z-TdiTnlMgWj3G`uPQ0MO3?~66K?cMyRfCF>+-WjkajFSkqCX5qk1rzTqaAI|m zVsLOmU%|vXn}jBelf09H6VfUsCpCuUP8!Hf7$-gCCd`~h-i452f_D+t!Hkti1%{J> z6YRt!-uaEZb7ASz33Or-?>u-?1gB3Y(1}UB3*dq%>C?#`ls=uDoSdBycP-;jpU@_Z zlN+Q7vl!llaRMDC%)12KgmLn9@^kWc3Se+>3UUf|3ULZWie8jL7)czX3A3z`cWEQ< zibme$c$zRy(P&K=#6nuUO&F(Sv?dHfAKoU6Q#M)?2B8mc6UM0+tqFtB2X4YRnV1?o znwmK3T3VW#>Y5n3I_g>&I=kq)nY$Ug8Jn0H85n??FfL}Mj!qU97P`((POiEpmafja zPN2iBot>P_-OQa$9GzW>zaPe_%Bk9^#;Mk+4pyO|oOOB~bk->^(mh_hTN-)SH1ckQ zq*TONr@K(kI(6!H>VcJ?>l=C3!qevjP$4H~*2s%Ee+ZIBr-I7R4e&IIQK>o2cADcf zmtncne5VDVN)5W=u90^Wfi=INlRTVU%q(=xoh%%6O`OdPbS(^w-E`e7EsYER9MB};Dj-#yN%>340PV9(*~!FPMbhgn9~+e73Q=RR)sn3fK*{9 z=biHIh1VX9yn8qrdAB$6zJpX@7eQ4R6Z(0lP6wS1!J=SSBkvA)6oBSJd3VA?8WQ}V z?JvB$;ex0|#078>aoOpL6XGxza1jBG1k5$RSOzqlt~=de@MS1unCW!K=`N%iJJ85` zw!yhU3N)Z`xRG}s+JJ`B1BRtekHA6n1jm5Je)Itir{|zr@F2Jrbb7_$;PeKmd;zyO z4x!Y7PVd0AAg%!or_Z2T@CdjTbo$2N;PeCCxT81*G@Sl02s`~{5O(^97|=Kdk3)h3 z8qUm&Y|gCCY|iZ90gdCJ0gV%lyl3DhkUpT{%mqrxCmUohJM%K|JM%g7GdMU4BKZfU zSZ?G!4Qd;of)8joi{Kj2aF(EWK*L!EG@x+~JfPt$&*0#!h~zGCw4KM&8gN!-3~^R< zRs#)aIBPmzSS1ojqU~ z`+6fU{O&Dh(3!=&Xm@Wp2ZDTY1AE4H4g+Ou=Sb%$=V(MA{Xjl98kWN$fyTf9t^1v0 zA$9+4c-`*|x~q=&4!G`jPH|3kPIFFYaB$9a&T`In&Or(~lthLkj#2kNY~;P$$osO9 z_bF!G4_?pgT;N>jT;yB~U24nwppo|;+#8L&_aRGdslJ}sx!SqLxz@Q3X6=(k-bYB* zJ_cJ0UbKw4j2E=R7c7Oj_?OUnX6H8NcIOV~PMEbX8hM`~S^FGpE%nzkJ5O|;@P8hL*rwcefAJ8yvH;4h85pI}w9GibRl?`L>s z1y{|^J3%@4E2JFS!{Fe&4=K}tOU7>~LpRO`oDX6dy7`VgbmQV;Vr=GS;i_xmYyeuR z<7BMsWN6{4>um03VPIxpY2@hUgwh0XJ`OG^PC1`;J_Fx74Q>KJ2Nw`SH?Wc-UO)jd zbc0ycigbdhE}?-O=gS~(|ABb>8iRxL4Rmk+C3@7x`L^>N=ey4LobQ7QVPSQK<-*d? z0XSiX<-+R1G8~P3EQna-V{PR9*T~1r!P&^7#L>tS2p)ptXk<}pWKl(q$2ZPzq4CJa z*vR`I9*-Xx%o_O+*Kk4N@f%2x2_Ctq;rkmLzW<#6yC79pppqD8_~L7`y0C%lVgm=B z3nznv3pZNe@v)QKW))6gSnk5_BH$tjYLK}IgW9aZ39vS+i#VjsDhyg-0$$x}!O_Tv z7!+^h;dYc4+>BhBNt;A6L`epPp}yK)LhJ&?U;33tUztm2A4)Y{)W8`ryBW$pyMqrwhUVu z`2-p?FEQ}DI50T4IH3o!AWBQq#Rc5b#5LaH;>qx&kxv-h(sc1*aB%TMH%lxgAX}hx#YVPz>@o!@vWRWr@F_L&DK_${H1a89ws7E!NL^-;H@e}nh}90ZEm^6NQ3+{V zGTzY*msRAAZn$j1Kf2*;VQOmVYGA4BW@=%fYvOEbplj)DV4~|}YUt{0TF_eYG&#NY6qCQ>6$nhS?XFiIa}(Qo0}OKTe=z=xw#U5T)E3mmt8KqUG}(uhKj*! z50PhHT#mb(;ArGCglCjSKBGoHjYd9wa7sl~-;)~o43LU_ms2jMVaZdwkxvtzJV6_0 z`4EeSAj$IzD9!3XvfXtC2bY^jDFsx0^XZ~g-!8XZ?qF8me0s>$x1qU#nW3=-Xwn5V zq~Yr9qHAes;-c&9Vrp(=4jL{paz@PtkHDqjQ}Co^3WS5p^V3lkGJT}L+)Lkm{}Qv)+6BlzL);5islqQ+GXIuKu8`;2Pu_?25R;34e`%(J*ig zXLexLagBmC3_Ke4gBk|j(1w9)EU01N32qp;CNMa-CZPwi7fQpxH3e_Oz%>)pFz^94 z3|w;<99;9zjq}CYFmNqm5Oysl+%Rwj-6YHB4=$lxD;XSIk&g%lr-=X(8V0U)uJx`B zkemr>7`V1FEO%{3ZWy@sA~y^I8~MT@Ig>9OYr`N8spNI-cZD4z!57lV7X;6vpkpNX zg5lW_l1D+uNbrTi1yM>w*LmP%u+Vjp>tcA0#GeeH4FlJukcL47ykX$F5|jud!3_h~ zHLh!2*SW4|aB$t|y2*93>lUQQLMiu<#Lx}J;H+w z%Q?M3Cy(-Fz!OFzUuGj;Vk2J~B&8xw9{q!Q@~G=8*VnLODy5Mx37$SdCol0O!;>N; zeSQHYn^d?UW*zd&^|$LEhUKpRT>pdW5J*+c(8!mLbq%KzL_S_X#lQ))WYft>*Vx3= zT-U_H6?7Y(tBJ0$vzd{RfvKyhqme7V?xP#H`b!ZfIzj z)yP){tt8yQy~h%8CE@14;NXVQdn`q%B-|jqN60({Z0!@`ZmA3oZs|znB}zHk$X5qyKi0zMDcrJf%~QDL zQ9MuK20HMNuMv_pN*Ns7&^Mp*HIYzRx>dPVyVXF7AW&uL*2u8jtr@wpbn8T}ESnqo zIv_<5UnjO@j(ii4DoeL+H`p93Ut1$z3p_ha0F^tf@RSe94xss0zIM1EYIc|fsw~~+ zy3KQ&506)HWr;I8Kr2hPg^|$VP;pA+tYi#UdscYhDZU)+82|m2Tz|FwT!qU_Nbfl=WnW2lZ z0ch=jp|QEHiJOa~u9K^)i>|4Qo28qnv#FbjlR>7#ime5Y{aRU#&&Vc05FANTD z-;fdyxH&r$rNiy^!|f-Q4)?4^*78Qy(ni)2&;{a_mX3~2Mkcz3M$V?XCdQ@)x=zLx zj=Ijqt`?3)E=FcX#>S{Q=07OMxHGvkyR)EnxS<_EM28!()KL!7;f5`BB&A>H&J7BQ z`3dS?q=@h?iLKo-L2fMLCqy-NH_8=hdT_Z%MErY0|Nti-?FK(i>0%Z zu8|q&v{yGXXI&>pCre#tHy2Yw7Yk!^Gf-xM-p59Am)qSLz0W=oxUd!O%UXLEg+fZ6l?x4%q zao;KC-UjM&?*O-^+&dW@+`G|@+ljTy?cUEI>^^~Tm)jk5pab7-NSc_&;NXsapab6? z5?T@Nv)$*o&xPbnP%FZH5yNtKlmi{yS0T3|_BQezg5*rT!&tlAr;zjL8h6-%4txh1 z`S!t+0q8&nzWwkRha>~gfew5J;ex2i0DPc>`#$&m?j#=Q;0`&^f$s>s72ytA#Kd3+)nwEGzb2lsRC=iM*3lXIX0-|h!+}w-}bj{3Mopnu&oZWOSo!p#t4J|FroJ=g73@t4|mxZ}Gx*8apI6LZ^ zI5~l?#WZu)wKOv{)^%~Sv;+-LnpwIT5nqRVbN}xC!~Lf__&^7YqeVGDM~m`ZftL@B zd{-O!&NlL00v$7iad~Se>>jWq9r!LZ@|}YvP!G_N4t$8ygun^Z19YSV-$i%= z#i&F)#62WDBpH@_NPEbDDiP@VmqxzJ1eO^ZxVf1aJ2_eEx;i^q>YA9F8tOWlnOW)@ zSeRIt7#W!uIGf|W?ZZPERDxau7YQC}3=SR|=ta(TlB)^O(V`wY9=aZSplZUy08~wQ z7{aOv4--f=fpWAcAJPgMzPlWad^Z~TIU&`=8&EaDjDEDJhpmSlteUvp$afPS{7xYM z+=7QRB=|vht@GW13!;<{9zLLI!o%Mqz#|Zz48YX{G!ihE8Ddlu9wAJHOraj(uxjFd zLno-y{Rmo3ctnA!i3i|n!XuW!!6P0$kRPH{6CR1+ky%`wZjUrjHSri+O?YH7IC!8R zY{d5jN2l8(pF!B8fI--!5Yg#=3imX@PPa!HBb!HsN2Ny_h|HJVsP+4KKTf(1^Eipf_w?@bbGYp>U4W_Q{3tH=m)v&EhKMD zVsP+4o^1s;q23X>6whP2#|)2|h^o?K9%3n;$6}PFczo|0`MyA_$*&xctH=2{P?zF) zEc1Zfb;I|mk?#XM@q^9@=KBaw=a9q?y6c7yvAPE}@q_QW@z~+9(*tqtA^yYL05_K{chw#oFd=I_Y1O0jOt7AJZ^d1_PFD57iR7MM!vuB zT-3<-4{R-Xy&dKXG|=KSuoULHH9|}AJf3GbddWR|^AOM@v^1T?=CqLqk&| z0~Z%(mv{jcb0=d<7b8PgU1LkoIogiqj=GixPDZ+}#wJd#rY7dDZqA^&d`lM>Q!__X z(9Pveu!}UEoK18MOdO3YOx+ADoy#5=P0cIKEJ@A13O?;%BEwXMDGW0`9YJ+A z!<+_}Mt<1_255!t>B{h=kzWp6!+Lr!ICy#?6;q&+pI;tQ!}2n`W!TN|n&Az@JBEb} z?-@ls{XG2{ggpbmow4N&mJP;@{0i`j6&}=}F*R2w6Gu}cBLiJi0~63-nT4CKr2*&$ zRwq+)3s*B2OD8uANVtW7!cD0`_6h^PXSipCXC#AzXS8RGC-NB=xC&L!;Vc4+8u^tQ zg}mGK&g}DvKJ!L(iiJnQG$(|{o zgab-g&;=~ugK|CdJo7mk`E}sFY2?>!~54x!+L!N8&H z5DZ}{J0Pa1%#2Lj+$@X?be)||oOMmyoD6gw4ULR-&5aEW&0Ne3j4Tbz;|0WF$we1D zFqV{Gp$lG;f^P!Lvk&BEJ@C1?o)bMMc~176;yKlG8iRx949}UKvpi>e&hbP(=>qw< zGZUmFh8&s5wW0x%8qj%Y{2q<`CmQ)}8u>#S`SlwGOzsN^u*kB=BVt$LuEZUT*j?bc z&=b0{m{F8rx#tS-A^*Y*5}s>3*CKV<`3)NR%|UV6V9e3TZ_NQJ3alFWEs^7Ny(er< zF~4ymzaczML2HWnjo{G-iBr&;Vtx~FgUWLcgM%mfnqq!alrd7z1D;sc6!V)QkC7U< zxfokmm^kVho4bKJi!PR+;?zyo)x^-;#LUUq+}PLzGwq!4Jn4CgVY%lS&$B3L#{!go*x3oR&s^8d*%7pl-^4=K(Za$~*TB`p+1T08*xb>=EnYwtN7~WN z$S+GR0v`w9YG7&%N`g)qjhvGK_2Vts>s^HWlD{FAa$lS_z87B@X_dESO( zc(i2k)bkl~vaoIBcR@=Q?v4Cz$jRb`=Sx^tcWC6dgC~o(pd4b4mMlJj1RWvC;wyuL z=Xa!J4lZq-P?N<^&tI5B=lssd$->;w#m&&t)m7Kn*v&%M#N5eA*U`+-RM*(p%-qD$ z#Kq9f$Ot1@crki0c`-9A_hR*8LrE5{Sd)bvJXu(pm>N5Sni$S5pkWIWV>4X~S7*?5 zQBIC7rp`v@W@hH`0?N3O1=5f^sDWT&;9_KG;il{CWD44kX=tKrY35|4YwBoVY3yoj zZf4-(OjLw=@p$oi@nMTlF9|P6$mnxnC)v9X~eW`vq}nR=NqEcdeTvP6kcL{A?npF^S(JT`A;X5{8(=4Phr z=4NROX^=WO8yM@l8M->TSUQ@TIlCF)t|Q_FR9p;Aon4%bTtH1&6I~O~opBasZkD>H zuFfU~21Z84uFg(GSI1uVUJhQ4UQS-lkjMnJ-r&ndB)ojR{5TrqT+Iy}jf|blTyO_9zUtU3 z7v$#n2HDGA1q}RNg)qoT$ ztzK;$jr^HNv69uupV-I`UChJZ1K!=i*~s79$e)26EgfE+uxLqX?al{@O8XEcG_gHxgfg&93 z9xHFqaUT3Q?y>Tg0i^dL`8)7TMtNJHEop&On*^4$csrmi zX+h}2yQIb218qqQLLc5GE#3iWOIi^6z)M<8jGSFeEiD~&U0e(dK|4M`2Vj^u>pD9b zIy<=bhDQfaa{+%ylg-olSKOoeiA~&D>1P-HbrWOikQO z+(5fW%`8AieYzRA={g!%n&_H=hL{Y^oQ;eickUV*Iy<^KIqRC4SeWaY7@E83S~|K} z>KePcfjTip<}Rkh??~{D^p5h5_Kxw6g`|Cy6G0_dr+H^^H1bb}C$mQW8IAn?jr>y} z=^lC_C}$(1StI{6tgHz8Xhq=*R^mqaMd+4a5A%S zHnebdb}^31O)SbL+%NYA9sA5b6I}avcQH74_aNm0aP2dTmo?}^@%K(&we z6j1HsJr!2_c+Y^;J}8HS@-IY+iv=8w{IeVRk3njmt)SY6(G#uq@m}b?2o@9b8u{nI zV`3R7Cg#Ee9o!V~1`Yo6&xZ@5)IQ!Dz~#0@IDTz z&6a{|Gw)Lj4&Gi?)-{%s6T`7LoBE05>sw+h8taU=f)1Q9oRVMftepL0Iv8J7E8 z^tpr*MTiT=kfI1$HA5D^nwVKQ8yV?Zni+#Gq%jBG*JEa+>ullTZ0>6A>}F!zS`MicS@KA>r zo+CxaGmb|7hmHLIAq~8Dpaves@Pf}5pRcgUc+$xK2%cYlg8cIsEx-H&2|k4jqLli+ z%%D==m(7>m7f}a+OMPgrflrXZorpHP;LGjHgBV_T(a8TAKD^*70BVrE1UJZhg&7=t zG3wD*C=D`Saij(rtV~2S$b4l$4YD`j2AQusgM%;npva!J^Lcl7SyG70U98!Ha>HVY#oN zuaU1Yq?iN^FZfz8EcdlSuJ?T%5MkcP|FMz(8#EJsM-oR2E&M~uj=oO5&af2lrI8wVvN-vr-8-y{YH-xS|e-!xyGTcVHx8Kd6+-N^r|k^gTa{~uiSus*B4Z!TKB4=XST z3@!MUqSgBdeR%7A-&(YKAE6I#z3a}!r5b0-r^XJgQA z8AlU0GhKv56aK!3dEv`@X%teZKv^6MQE^5;Ozy z4pa$F56&cxMgdNE8PO=f)hNK!D8LR$(9j*IoQ;fs8=2UUlkq&?`Osu6z}hIl3@gZd z7c-bO3b4RaEF>AP012|e1u<$B-*vw0eK#;H_ub^X8C0u4gSSzDgTR=9p`)>-lYyJ7 zu89$7fsnJ4sjj7krLnG|sgbdhi;<&?iL)`jD&2P%$YtD+f@3d(gYSN%G!3dp1b9fU zM?kA5d=L8`@jVKvM|_Wi>Ji@)uzJMzG^8Fu-hnD0j1>Mt9E}3JjRHpCYD7R0RE=Ql zK=r-idleS?0*wNE@X)^r@(w>dpdq1u4-(CioGH}z9cX-@!KG0^q@l54R-=G8bZw3AM}{qp0-})0M_wM~bcQFXaHppJ~6KCM}lkk&daPX5x@()^zQocc^ zQ9usfyZ4jB)w}moqPTbO2Rgz-Kna{R{4^OH{Lqi^5KtzePW99C)Auug6hWXm)z6e+ zxt}?5o$6FN*}=~blpXv6{et|0;qi(;J3#AHzff?UDxeLoQ~e@A7U_WNRKFO%Sid;Gcm@Z* zM871zWWN+#k&GmcUZ)D^H45l93K%pB=;NtV{j$*NR9JhAK%MGWgjS~_^x>^j{i@LF zRD?dfb*f(zTAhl}2d+~s3@t3pO$?lMjon;8t0Ej-b)C%IOmxkiU5(wGK!;Ep7=vy> zH*qyFu`n{zbu%({1RcX@pzCOCY^G~uY2s{XY2;?^YGevpfMe=vVFX%)X#^UxHvye= zW9j1LqHAtw?q*?PZeU>ULi`R?zb?OSzaGC{zdlHUMxCDbo8dQ;qfr1c7SkwT*C=4x zC;&Mb2+@~b&?ta>Fp%GDzd5i}Y|$tHKN!ew0Vo}z9Sr0LnqL*bb1;zKYQHspYZ;dN zt@qmis#2l7f<^)C2LmBiJb~IKrj9O7p!+q9bxkad%ypd{jh%E29i1#p9Zj8#oXrWY zc*0lZ`t1OD#~xJX?PlQj+vB&F!NCu?+C?k#azSOD1JS)`ze9e9{f_t@^*aWO8}UxW zB)#7S@kJbs0v_>8cS!I!nn9F`wV3Fg}C;&eg$nOTo zH)sa~`P~HxA`S+^Xz%zv_Iu*@lwrBwbH5iTk%Ks|2zxKu+0fJybS%5Bu?y%76DL;# zT?=zF6J2uy3riy-BPSPUBWJvU4>}-3zzb5Se`0X(`+`*7fZIFXB)4}!{bs)(en0&{ z8?J=?{(#y$et%)@9e)N$dk3Z8ED(eg0f8Ki0zQob*^mZL6sW<2(Qo$W^oJdqCE(vE z;0tT;_=67367WN9@c4rc%@PQJ3!;?p{t}=P-e1~Z#$Oih2yh7x%^?K)&Hf7hitv83 zKyaf#7`)%?uL^4Fgn*km{u&Gp{^;wV1VT}oI{rF%n>zl6pr%eZxT)iB!rZ)W3E`KY3YX)I|8>GH-qd+9Qi39gIC#Yz2v2?X?H8#~XG;?;*H8HX@)pazp zbka38b8)dSv^2MLHifK#_jdp#>u7M|@poo$@OMRbP7Dbx0)G#GPk%2+CIz(!{QVi0 z`v)So2>ip5TLiI<0!ffeDv*pM4)0|PWFci&|44rZ1_sF}Se8v_6o_m1#sO{*`^SO2 z5f4uu5JAvwxB`iALDV#p0Zud7{yF}+@Sww=W}vMC|9nWRAO+qk@Gl10o(gUi_?P*Y z`&al^GC25G``7r_`qv=^C`vJiB#zN4NN*HKYZSs$=pcS2(*Ai3|x|*08 z8yFc{xSF|w&Tuw#Hg|C`adp#ma{>*-n_D{TS~|I!=$g4&nz_1~7`r)wk9szCbuzSc zb28I4v@kFM^&u^FEnMAPbY0y{o!wmAOq?9eh;J46FY#aMzs!HR{|Zo|77=GyF2V<| zd6tWai|}(a3Y5arPoqFtqd;DxKr!fm+E9*0mQHZh!_mkR+Q<@yoR+uxZ-b@d!bX97 zcsd66T@fb>LDKPlQ1U8*r(=w&$N#ARG5_NX%l%LKp8{1q(C}>(C?U|*HZ^l|aWrvu z(KRr&Fa)&=Ty&jG%pG-IoGeU@OgiRXzR}K`twYlpa?Y9Q>~#C2DZhQ$cdo zBjU@j-2ayUZT~x&Ac13YhzyenXJ-~*N4mxOKf}^vElevMpuDK=XFndr^a5ORjZ8CE-a<#N{ zvoNzX0Vl}-(7nC_6TtZ{z=gpfzzsc;Cz4QW2Y3c}1$cuBILMrMKmfz?fFR^rJ0Jq7 zb{3e_C@>vbYtO*ikDrfJ(gj2XM8mS$)JB2Hu&fpk56V?j;JFIouN06V;!qxx8ap5p zRAUF^1mp(f!J{8sW8)mwg4Wmp1&|thCcMTD0Ihfum<6t}1Ihy`0xAQl7#sp>0%`;5 z0+7%DKuHTofs9dO&uJ8x-6$}xQD82f8atpBt;R<5kMYil2lS%V*a&@iYwUojXf-xM zAKn@}U@lsXjnD_Ku??Io3=K^{GkvaRCZGS*3Dl2wHgPdC za<#P3H8gUw&^0kJanZGObv4#CHghsIG<7v~GXibWQZaXNGB$T{GtqUlFak}TgLkgJ4ok($8U>cXQ!(hCUjf9yLXcDp+Cwd{9G zDvW?*0mlPQFf0!^6>u6~|B`*(k6BIX1rpz-DX(HZ=-tfX60i##R7v5)mXeK{K`j zo55vmAR~iAATv@}fNQ`lDEnXnSp(TH_rVBkZA3m3%*@Te+0xKO*UZhx0yJr4sq1K9 zXs+vIWMOP(?CNZ4?&yS(Y65u!`2zVFmIn$33ZbN$?eNr$G{Atg-_6w7*xba`*-h8U z$O#L>lA*U{P1P1o4m)x_1@(b?J3$T?m>9wXI2Hch6cz<0cvxw*QUnY)?kx`3MJ zCMJ$fx=sd`7P@YhZjOeQ1}2V}wR*1B=W+(C%e{z3^NJj?6$qPzAFe5}76p4uKfG?*pijX%T3N zB{B~pN2Z&rg@v)PrLnHDkuhiuvY91l7mTH@nX!qnfw`rjg}I>xW@I`9ItDs1EDv-E zbVZ5G!&oB|u`I^i+|At3(#%lT#njAF*TlutSl7bH#aP$U($K`s*vQn#+1WT=Koxgn zqV7{OGqJFAHFvetbv1A_1D&kzr0ZyIX|8MFW^QI|XliI|YGg)SlzIpH1o~pjpMl|l zD9wlCjRN2mNJvq7u~7hd1yW#CAiT|Rs!`wsJW9cBhLdPf3T`u;hD2#PgF|2@dj33v z8l~BRIas3fEOL}u8ag|hS(v-%I+}w*#m&q`*U`kpNY}v9*~Qt}(ACk!1=KKSiDKYo z31^95iDZdpi480cED0=SSRPm&Sb-9ySXVkhig^amG8)k0FmppQ3tbme6AN7vOGigt zM{{FWT~{*$6E_PBQ)hE0^LPPCoKYGtpkiuh>TKy~ZlLR80dla5xw)>Rp`(SarHPp- zD6d;O8W4Z4V_;oiePBaiV_*{`I^k6)Xj$3vz@ETfjz$5*+Mq^(JBz$(cI7wUtr^_N(0w` zN|(D0vX=wbGw=s)2;9iv5V#pBIij>C8wGhlJ&SupH*Es91#S=A5x6sO7c5=^_rnJx zBm$2F9_45hKw7;d@S;)Rextw>aJ)1Ma)HMpI2#4I8wH*rN6hiS6R@_;qeg)T@Q67B z^36lEhynNb5sR8IBj$SGjli1>%L8u*-a(0&rvxI#*x1O)z|hoG*TvM>Sl7hS*j(4i z&C(5goQHvnvw^v*s~ho)$pW8%9RCthDm-U!2z-eY4d7b)70DwLph5A#w}I~h--AXb z0zZOACIUafMkWHkLPjP~2gN_aecdSVfum92b)z8UNGyRLppglTLGi$Uf&XEV@vc$e z4Jq?h>@QNpMg+NHj8G4ys4% zFeCKg?Jx(mqji`O`tWv`gZj}r%m{tp4zrvEndfL^Y;I=a=4xsIn)oJipPGTC zsiB#Xi@C0wF=%wx$Pm;@baK&kF*bE_GBkEJH8muDBs^$F(9ED&L9>JAK+-+Ka<)B) z%7^V_&~lDOK~Z=zYZMe~6y$9b6oRCC#{JOBhq1g-Py{)(uMAoRP3?jLje_u1PeJQI z=?!hwQ_yCRAY#=MM&%Q;P@|x*vIBHe8i%rj8YFU*Vb{5W z&K@#1cQOWzJ~*4YfL0tB8|YeEIy&jPxSALnyE<7|n3@CR#08B(6%S(<+K_nAgP@17h>&R%l!6yKPeEZW4KHCJ#SUl(lb|eI z5VhEO4=#2-1$_?s0(S(s*ijAmX!2RYP1!*{$fGv8n+qix1jF~z6==*GlPBy z{Q(VjHwr2>3hFmFH;6U3GzzLV3M!y&Qw#dfur!zv6hgtw*te+(Dxz;w3ua^3(kQ45 zuE>Hp861Mqud5JLL8-`sd66nI%x!AHLJUtD1=YY6S+FRBL$Ekf5eSZab;#^4+F&`u zhhS+2;b0jC;b2+lP`PfSpawjE;Po1=aq?g#Mz&y;VAWtXaO`U~STqW1H45s%O(1=o zJXjMH^V$uvmxFZ}_=9zW^%xw2kq<9IDe4;qbsJs=tDH$gRC%|B9 zM)yWRg9fKd4E(`%3=Y8#=;3ULWt&>C6JtoQORy_wn_93(uqP?o)C7$F5Mah%^C%*A%(A?4YpBwL1(05I5;a9wq01zvQf|+mivQ2+l2)! z;29kf_@KdaK`Xc*O70J?1m*tVn&8^tI%NmJRl4?(MhC#TUjpnf24z^TQQrS(*;a$! z8ycXEj^GAJqr(>7=m>5Bg{d95(GlDp+yOcVOsX@ui@_ndC%8AbFSs99_#%m8G&~#{ z1??LJof-ul@iaVwr=m4H5F_AtN9u#;qBT4a`tUY9f|sH-JP`WuHavpYqBT4a`oIkj zb0snfv8M|1RfEp!Eq$I-4!CQj2LR$dB49kOeF)R<> zgGhwzUxN>EC_BItp=+a{7c>!iV69pd$J_@UXJQ@Yv;E51)B!{3oJiS2@ z;W<#+@PrGZCc?|$M0hRudhiWp2eu_EH-2Jn04G8f^h9X?*Vp+RWAXu5BD@7jgg%Hw z2wG|_=nF}N4}%{CKMsDv;1K*Q_<8V)VB}sUN(RT50R0;U{Tc-W8wCUKCBXM&Ccy7x zCcyvXCBP7N{0Y#-$jQXO$-+X{%oNn51s(k9;{?}a(2@-adb1+b+R-89kJl(W?|vx;%sUHI-$Y9(8ST)$<$2O(9*?3*Te~Y-GYg^ zuBEf1v4Nqbp_7R@@#9<}{2>A%f+0d7!q5c09BKRH@(|e&P`fD(UV}CY#y1LvH3~+9 z6EtM1h=Ze1@O-0SEK*S#q7VYRNlGxXQ7{~qibFu>X$eNa6D&9thk$O95{!ZiVzg*O z3_=V;j2M=On1q;uTC~uU@|Br_z7VR=YSNG?hwA#Q;~iX=!01RnWy zHZun83v$&pF)%aMH8HU;)3q>iGtzZ+H8XT_F*PtWGA7}CrjSyQ<8#10kB|xmhmb0y zXaF}pb4l)bfX2K+>O$&6K-V$~hctnD9wE)Jo<~RcNf<2I~ zM>VMHfidP4(jNjF85S&T6ofB^3IUA_3!*KC3IUA_3nCUnp_Ka};F}pk7KSVeA@*j* zYpCZlg)9qM4j=OpENv95fRA~FtOj)z%D`QPkaY|WA;>pQfrGakrK=FK38||9tCkTP zC_}b`x(b!xu0qHz28WP6=&@CWb<8W|0E2MIK_bSyLO{n`3D!W8!*K?Okdx>Z)RIv1 zhnxvH8*&a(P=dz1LM}5b54nn{`B{F4+(sJP60BB42x90JT=PRqPRvnHXw4t;8B+7N z!fXDJ?;wlXz%_r!uaMs%e?tB;IE4HUWe8;qMc$!=Qp6zzvM~}HbT*SNl=7$v+1jf8V1<-1Kgg(4Y&rk`pnjfJLZ__hW0j=go=mR%Boh=MpT?~y3 zb1{kBa;JCG7hy2 zwSpz%NsWT=LzhDBKnV%$(4|n&u^fVU4qXcM4D|~2W>_BT8|nwDRp5hJQwa=aIXRnv zj=nV4bu={t4K_NP={h+Yg6d?*J+0KfNGOP;Myd# zpTQw?B6=V%MyX9gC*!S6LT7+#lcnI=By=`|Ln!hI)!;Z=hIQbH@m%Oa2I0^}48oy{ zp#x7*je>|<&j=1Yg|1*^3tbhuI&@6~14pCa3edpQ%0|Jp@L(f-;3;%HC~8(U$X*WJ z#K0fAIdltyL+Cc7;6W*G8wJ;ZhEi6;2cANA;u?4g-AnPnQ|LjE+t!2Jc7%aH^l0cY z28YlSxZSoNuraB*|9Fmy38At3>VsfMYAsY4PVgD}JLFdc^FVS0!J z$ej~rf;_}?pi%HB2k2gjM!{nk36QC%QSdBM0t_!;OLmVF@tI8k7VM!P6Qz z0fsq%1dqT4Q4(O7D<}bmd4zd}d67266XpX+fXCqpFf0IM(Ft$@3=0km2@4GiV{izI z2#XAh3X4WcXhbK#Q;mWr8wJla3ZBN7029effSF__z(O(;U?u(p2)gUl#lpx<*VxrBU!w z19TT!*mO`jx(rXSkW@SeB#2nwgfV&$wkT|I*b;{2VavjngW7q}j!L88b$A_$GCc%t_b6z}!UF#LU!0*TTfbMc2T@(AeD2!p*|O&4lo}PJAuFFmO$LyFvDH z*d_-4u+3px7#zZI*Th1cpxW*Z@v*ZrY**OsusvaWVX=cexD$3f>;y-nAY$E6qu{ef z!MlxukHE2m7~B!!XcT;c96hJPPQ#+-L8IV3c=VhH#l(HI=(z$CM67bcjGkLzx5Mr* zEDyUEb{{2r9%G9hSRV+q2h-BP+1S$5OxM8G*j3lW!o@(>(a6|R*Tv1q&B)lm(bUw! zl=uZrVc=fxb8w?P>=lDU82WL}f-gvJl!FF$!ajt34EqFXl!tu*HOj-j!W!jaKOl{A z)WMzia9=kHzT;>VeAy_(4r!Es12xJq26w_4!35XZYYwxGbnS{t?_9 z4_9Dt2vjg-gj+H=gj=J#_Xi1eez;w@eYgW86M`C@;jRqJ!`%^eKFjZLq!Y;+1%EaQ z{)1-1|JVk1gpiLF3il5WfTe&xje@`6DFAdMlHhN&6aYG4LlCjb2{i@8fm1+Ycv5&W zJQ?Co0novn@KkV}FT?<^^TRV4%o>Fl!F7IkPIzv3UU)u(LwI3$QFw7U&ie(B0vWy0 zDa70;#MCIn+9BHa7s>3uj_N z{IpK^tnk_4bHe9_&jTfBF++ysVjA$lo#kSNVwxO{LW1!0(RAR4d`T!}o;m zWmq1*Kl}iwT7ix32ni4v-ElNFbTzdwFx53Mb^t6p}`Y0V$3~A<;&bC*X=iNE1|%uslW^-3fmf{)mBrK^hhX5{*J)@F)Ov zRfWXSqTn?s3MAozs71*Ka8dF({7d*(xI@523GpL5;Xjz$najd|Lq~XoWEw6uJZTh? zhmP=s|6|zFC?pH6QX&``93s#+4hhL!W7x&8n}MHUA;TVqy%DTXh9`|e3g9Xw zf|tP|0)1nzkRsL*9_BR>!VJO@A`HS2qRn0a8DB);fau9WQ&lAkd2T7jqnI5 zH&`?ZsWb{97AKKD!V{qgiW=1h*~<|s4EzzQ5o!z$5y+Poqja zxJGy)^eG9C}aq!Y=w+4I@pX-jY5`4g;a!Jgg-2Y=r;=K!g5GNFet?J z;F$s3HHnA-2^zo!QF2H`EGUOWBt#@eB#}146OjU`Y>nZSZA1phA`@_B8<8E66OkK{ z$KViA5K$OW6j6*TY>~tR7&(#0d6cvrt6fART4jsS zhqtng=tQe*5&G~}whFi|S4BnMx3c5DS*;3cZz}!XG(%I0+!qL>g zz{1j!lms|EVnzh?B4f}9PsBWi6 zB4Q;h0opYR*}xOvT2K#Z=eL+0YVnxVe$8rIV$puBD@;fq}83nUkvl=rUesBWF_= zbI_eAmWD>UCQfce4S?;Xh)$;8np6aug98ihg| zg?t)?0>KFyGQz{j*(jXeC=`s8iX&MfSz)QzzflN&HdQ1iD8ZtgO%(|`uu2GVHWfx& zFH$5@G*XOVd89<7B&e+i?XNZp1t~jtLmJlD_j{X|JDORTx?1QOJAy8xF)}mKwXkq; z)&#{NVQ1yNR3EM28T%PNS#RC zNWDn?NaPj1ly3DF%5M}p*C>?SC{*1j6y7K-P1IJ>NaIM8NK;63qV5ikw2wqSrCBJV zQ79f1k%+CNLP?E6iO3P@6bU<;StzYHWCBWpLG0tfJ|t*v;c8;!YUHTvYHAJ|igk0=wRAHv z*EMu?Hgq&MaCLS8oklE!nq)Bcc^kO78k@M8n(I0l8oKG4I5|7(I=UEH>N=XZSy~uc zx)``Q6L(2%WLji;WCqrlEQ%~f8aWV3X%xyvi^;r3p}G7F>*{D}pljl6X0B`L z>g1|xW@7H>W@2LE?CglS&pWa&vOjVH!}7>Uk&{tkG6!BHA;%rH&#FeDO62%l5eaW76gLVL z!s8R%P(Up3g2X4dp-=*e&#ep&k=xPZvlKNxcSi2Q5}#$r@o8daY3kx^<^)<%0=mY_ z*hSaT#no8X+0@0&*~!S&+`!TmGiM%*JQR7DVR_`y$YUt+S%ED+A!R#wsh_K*fun_q zo1?C)rLmc=iJ3DfHcZTQja*HQEzJ#0T%28<;|0X9$7j5Nij%REv8A)Qlddy(d#t$` zXfv0Ysjj)9vw@+Bfw`NxEAfYg-RPF5&mUxi2RS92-}IC`iNqRVvb^oVvS;h z#Q@J4_#l-8&rP0p9F0Q#NHH*>QK+L)s23aqjm*s8F)GeRrrnK9$cJG>2}g;*3d!z9 zp-xy7L`i_0-h~q5u*n;KUBPPTSnl z(plHo7<9{xqoawgrIC@Nu9=amiHW6?g|mSP-Xq+j^g%A02oC8eBL;^kmDqM{j=N5w|Pp#=X- zxU;Yazp0Uhp`(+tfv%f{o1?CYv7xE1rKN$9u8V=WxuvmzrJ;d~>rIA!h6xN4LE*(P ziD5Fs6o#o$iBU-mz6`|-Go#X?(m|tIjY4x9g;q5BZY6~e_ z?u6FDw%kQ+$F}7z3UpYe(0WKIv6sOi3i-rou!}a_7ZAjLLk#SG7zSPjFNWn&hoTNg z9f6d@p!u(;lMKswmxGcu!}6$eEWeRkHX9p-pbM^qc5pN@Gjeb=3Y~6bltQWqqb^2W zf)xW>8inA?tfH=giUG7`R#CS>f{0~Sn8m=us7Fzc8J0&qje3Ss44|C*1gi*q^V_joIQxjbiS7$R_3n%a$-KLhtZWc~v&aO_-`LU>%kP(xe@DY=!w;*Tj0*{zP zeTe!P^(pEzgG1EUsBcl962}-Z+21I%yHV(PqY#!`<0M!tS@oj+ME#BW z7xkY(g0qoPp;2gGqtG6BW@;4L%NZ{qQEi}SZf<61Vq|P?Vrc*dCOQg+wGb&IBV!9w zb2B4TL$Hj2AxJ8s+Ca|~#K0V=0b3i*9?cQW8O;T=_E4kH0VHb=f~_^wQ83WMFdl3z zSPH{YwGq`|3Da6!)(S-nM~g&@!mK^kD0BqL+M{4=vDm4jU;wrjYd{#(LVat1(^}bR zxoG)l1(>y`8ih_ES$h&IRw*1Rvk;X5#2tLlZMyGiL(}T@yzO3tbCKGc#RNHzy}cS7$dj7iS})n_bab(b~~E(Yn!k zkj#$S@Qt>Jw&Z9OLae)K6uQwUbiPsO3b@$?87<=AXcU%e6uO3#-=nRgZD9HRQlroX zShXMR0Lnub;Wa$C+K+Yx2_hB=VdVE{?`WTBUxww;{?P#_`TZ)qm5WsEJ2*l%{KgBY z7?`;^xfq$5=o-6$ZhLnH9Wnu`_MHt)jhtN_4M1~)@d8A28SyoOqrr0qH^GH&bTorQ zbSzSy2N$}xh>wkg=)~xx=;Y`WSZwh9g*JkP86^0*_~khog&rZL&c}^Hw;P2XfMcVP z8MX|c*}9S01vxqjql;kCaj#M6P6Kp#R&*ICR+gu_y>LIvS&!qMI3(N4G|| zp+v_+xWka51F850ZL%|TaW>L*vH64D6%4VtKB_D5?3M=y_F0So?@jY7}i!4EneOXvk!@NWcp@)cYV zGx)bh?}*;XusnKq^d6Mpe*0!;ezu3u2b893^jV~)D{N8+(R7Wz1Zui|0ykZwuQE79Uq_GO&sdwTjOU_n zGYCiDVGxeK3vIeaH3}gP+aTCH4iv=odUlNpHGFzXV0( z_XgR^(Qg>|qu)lqV{nN6faD*Pc0!}jPf*kK2fXPT{h3j`!5D6Tg9%JVHTpYB(^ZCn zfuX?!;yyzYGZPatGXqN#12c0YGb3|Q6$CoD+|=0E(!kWx*vQ=2(zF&*?EVJ1?++w5 z{bO*5VL);lxZL_nWMeUgIff;M6;fh>8jCSph{j?JKWby~U!yQHq_h%dg*Fz2B~TlS zF+wrI(Ci}2*eLWLmR(}R8O$1m8Q?hs?28x~kRTIW5F@+9D8(qps4y&#QHxPW&Mv|% z@UX?6T`WyZTwKj8%yeChOpJ6*j0_!hoy=XFbzRNP%*_l;-HeS*jG&Fh7%gyPQJ4+h zSd7sFIg1_KSd1}@F^VycF=23sF^e&ev52um3TTu>fFzFISQO@I6y|6Y7HJd~z|nk) zv5m2dv5#?pwqu038-+RHUThTRg0y3(-dK$Bi1Cc^it&b7%ik!>i)1Yy*jjMI53`K~ zYCeIbFk4oH8jCT(F(EObF<~%kg&T#DRxk+*fvu%}V=*Q!CO#%1CJ|<>c%v|4>1Cs^ z7{ppouEX>a$hY7&A!a}zHx^A@jU0_!OdWNNT|nFaj4T~>Eu36kblpr0T%0UiOf4K; z!S^ScIUAc;IJ@XNS~!{Oniv}x=sKC280wmv8C$qHyEvH}S%Rh(T}=$lEL_}-bd60c zK_edqhM+?P&2$Y-Oq@(DO)Q;^jEG-69+MrD6O$X07n2Xk>?n;ziI~cmDvm~B6{Of# zZ4{Pi6jlUhcxYphvr#y$QCJzNbrMq(Qwz)Q@{Pi>@ciBg%0qJStPRQUZ6HAfxFBYJ z?}_P+>0?+PGa+UoN`6h}Z)X)PW0PM#Q0*!!bt~md6~6IgSz$h$EP=7rc%x#-@g*Zce&p zhOU;nCe8+?x}aMwb=_Rd9bH{rj9i@z&G3da=pYnfLr6$pWN?VNj2_ZPBsUX9!x)yw zT#vaCa}(4|jJXYJCW?l^nu#&@Aq zGf~*O;X=ccMqxW>GclH(VN0X14Y-*Y%f;Xj%Yz;zwkXZSSU$YX#8_d5Cym1P;AUd1 z7=uHs1iEn!SeuE=Yhq;>gkxnHgk$BP&BQy6!jA9&A=pfeRc2(1RgG1PRR=W_g`FBK z8ik!3h27yMK$>A_EiQ9oP=#QK-Zq0Y!(z2S5$Vz(dpTB@fj?F+R-eHk7P(b`%raENt84`(kTn~1S4v97Uh zkkSg&M2z)DG!bJ1P@0Is-i^WmkdjI`2-ZYQMQtL+2FHfLvWj1$un#P&#DeHc*UMo%ne;!oQz%FbPY`{Ep$x`3{7>N zoJ`$xEgcQroGeX^ObnbHp-sftY)BI^7~VvT1)U@&90G14#umjE$CkvFGC0JR$5zBv z#v&h7f|3A`A^@X_7}+Qs+9;gZC>)EUi5OcKTOZpH+X!pDL^KK`F4b-n4u`Z}sNO`3 z?Tqb;?T+n%SsT+R90d>AM&W3%wcvIjX3GfFXaY-Nwx>`-8DUHHONWM*mSPLohOG?z z48pOi4ci-qGaI=ex8=oxP9+u2g6A!Sy3HVUIdFB`KqW~oTwT0?ijk=$Xk64#*U=bs z2?O|^a5pzgU1K*#0}BHKBU2+YgZl!K$a9(!(^wQG?yzVw@Jife;Fp-eq70tRRA5n& zn8~6cF&i|iDRB>UHfZd=*!{5w7$jm3#U5r@&SDvRlu=aTRqP2+2^4!e_6&mrNEHl& z3v{ znJK!(sX3|1C7JnoR~h&jCNWH8n94APVP@=mPzBB~r@^IBxDvh~x~+m#x8E2X zVv%P%z)ja`NOg;LLnEVT?4Q`b48pPh!27qBH&`|pHwxFlt0Z`?-~c5DCv(skg_Ewc zG3X{2BV!9)M^|$bT~jk>Hz#8YM>9t=3vkOPjtLZcb>MO{jx~-gjy;Zp!6A+-jysMg zju)wXB)Z%@*eG1zDALd<;!Si5JWe1^Fit2=I8FqVq9ExA+ya+iILIIoCl@Er(J0&n z_h6%NU!!nCqi{R8UW4?6K#MF7GzxbjHNfK(vSer!?to8#b0|ANMU@?_z=@Rs zbVq}QsgtRbi;J$M3+Vnr6C*=i3l~#YT?<1e11DE!R})iblXw9M)by%bng>2{I5p)e z!(?c><&SfQq+5oWjl$iablc!^onbx$KLanrVul3_ix?Khc`z)E^NRD1^8qdJhC8f5 zsZqGMQMd;lQyfT>^Pr2DO`RQ$o!wkPb1mkeW2%jHEnQt)Kvy>zyO=tgIGZ>cL1H5i z6dV1J*a%^8h(kW<6dW59NbYoil2u$(Ty$IvsM8S_2kLah#lt!saY>L)M_d}D(*Z8T z5DOt1g{N^e3Quel-Vf<>tOWHrglC}jIpVV8a$qTLN~7>3c#10kc?WS855$k432jSXF0O)ZVhOUmcwwXPtOf@3bkWPOG_F5xLfk}1x^RKG3Y0G9Gz!l~xEnQH zxVah|IJ%e`>6)52y6Bo1o0;f3nt+NdQ#a6Px|y+&r6nZHrh$4skhL9gGZ`G>kQXn2 z)5UyHXKD`vFT-B&-lv5O`xy?#&0{l&GW z4g@eXH`KK>baK`;HncQxb9OXwg56~sw**vhF9H|bamyJT;#MLRk6_CeW7%}eC>pnx zK{#$5xX_jW720sy;lTm9L?CV>t0BErbA7C9aOHCI-f!t2;rZn1z$8uA`ZerLMV)i>ZZyxtoinlK~`hKs*10S3xrE zDF%l)^qqggt4Y{J5_dlCLLBHka_D))an~4@$K62eB4PO*cMoaZgz%b1;f>(>piy`; zhcfIq_D1-DaKgw3)xN*)3gD&Vaan`i}4GvhC8oHU7xEh!l znVCU*JaIoDJ)SM_9#7mKkh8WzYVQB>4DpQdObib3Eb*-IZ1L@tmy^&EKj1-VUTprv2 zaWOG+baOS+H8V6a(={=1wA6JnHgVB4G%z+XHga}xGBP#5Ws3-_9jhIyUc3Zkmx}Pt zMn)wtLbgQ-WQ(Pfqp5+jnVGJei-{ZPhze6(CnE!6T@%pd=4LKNpd;OI*&@g4&g#yp z7q0}_(;~dPkx>PVkZn-`+2UwmVd!XLWUg!E;%2IA;%wv!y3@x^*VxV6%+dm9Rx;a~b4!kusvoLmc zGPck)2JNdcadS4&buw^u)^&EVa5ey42XE{Q+8OO^;${dM0@rmhbTZO4aW!z#b+j~a z)wM8pGBY-_a5Z-{Fd(`a7jGJG7H=MJ5pRjD85i#y@50e2d@G)>16d%ms z5Fd(^5x`~Wag=6Ue0Y2WmS)@uEsTtebWIE_ zz?a||=(<>%xj7kHnmM~Vo5l->p*7>cwK+;7E zkqaa)K+LA?>>OUZi&2ZMfeWg>P^)3SVv%{s(E-y#TlCZlSg7;wQz!4&)KO)+h|W zTPz-QAdfKO>>Y@=K?m{(9oJ~y}3AXFvSA*Mi3*y(uZ;0OrN+XTJ z_rUEs-$vmljlvHbh3}xP!j0d;urz)fICOU?JGekx)PUIH&Cw`)7pXx935DIDmfC&r z7y&i$vUh$_G9O5zB z7LT#Ez2Yx02*+O}-1dsU0&06PFfhnI1-HNAuQNEr-$ZxvGb}4m<8L#D#NUm-2Wor8 zKa77wpzYOw((rl?Yk0*!MQeCLeEkAc#6fNui+|1F5dRk4MXyL`QN@3V{}>NCiU-=F zivP~AJpLzgiz*)Zv=!mkjlv(mMRTL@C#)^1zeuHY0%HQ~93J6!jl%GY#S%d0@CYN0 z+yVP50dx+JFydk{jM6hfFhM9mm|=N>Xo46@>4`XW7kd_Qa&|FtF}5_*wKOv|&^0kJ zHP^MUaJJNSHF9xsGBR~BGBbCBwx|*$AuX!U@D^19Xv2c=mj>CZ4EzZS35p3y3Cau( z391Qd3F-+rj}JhK5{xnA?~TG=8-;&23jf5>K1k4pw5SsFS@ju~b2JKn12?DS8yS(? z2jCW!v5TvziK~&3uA8f~sji8cn=5D{&k$6j8@rern!8z;o8Yp=6w;zfu!Od#et?@( zN~pGgTU0Iv#!gP=CKkFzE}*`ni8II+LrYypM<+KU149c}b2n35w%9{jR0+<|7S%6s zb4mr(7I2Ho+{FlVBeRpPo23QlN@fFNT}u}iM_m_7CsQYL3quP_GecaqctToK3BJ%4 z)gN$kN)6Q(aErmIg+aMlKevMy>{+Td^!0%^gjQ&0KU{3=K_nP23C&bRC^s z%ymsI%?*uQjm=%nEnLZ}yb{6^!V@Au#cM(osPamPhE-k(agfR@Aqi1=i6C`)L|8c* zMHm`IJi(Qhh&-tB5@AQHyb{tAGNA1z5#~k_Mp*kPA&0@NQ3SEp2a+=jL4qu}`#K5b z2^9&I49gR$6KX&?Q$GlN)l#Dfo3aCBER}&n*})Wc6BBgVICyx<#N64$$w1f89JE^8 z*vVDb(#70J*UZhp)Wpcd+}X^`0_h4Y(1^qY(1-+hKoz`yB%vXpk-?WCm0@N=YeE~i z<`Us)6p?ChZV+y8X%rD?6ya<@ACXAtWLTQeozRoei{8i);cgT`ToHxV$T2subTf5w zHqkXUu>cLB7@6uifwG;8g{g&^sk5t-sVijsG+`3MmPQd?a6OkWmBArlI#PK6s^>)b zu#89~%wjl{FbCwK28~7${suMptu>(jhM}XmsezH1v96&3s8{0#s`1U7+;ojh%-oC( zU5qWv3=AQ$wSeJCqlh55R!msT;E=Es-EtwwP%_4KPzfs;gcDXV2q&xt4~tkf=r)Q7 z!&^o03K-XQPzf6t*%CG-Y);q$8YdGGX|QM%5p5KagquM6%xwZ_S%ipKgY4ymT@3sQ zyA$>>I3(;t@(*fjQADCarcp#3K69IJ5ZBCY!cmk3e&o#DCY)q+ZxoRR?@dWK!{Cr` z4#{2MNS47mGLvwDF(lzq!sUc3p#3Qc*As4_wGKW&+EVafYZQ@da6}rJ5s`&85E5>q zH4s1x;Xw;d-JA?`EiK$EbxjPN4RkF{TrG4hj4jMvoGeT&jV#?D=>#-IBBB5a+eZxi z36B$=FgPSUL-GS!*qVaER*{6JMZ(L3R|&5ny*|){bixOQe9 zO5{%DVOXBXm&gw)z@Yc`HHv5`J19b~lj2Zz(11qF{!frQq(D1lElr$Ujm;f(9bG}w zgeIVFpqr(Eu7$Iisk5bvxv`s(Ikah!CHhQ3cYpNYsEdEktyYnidf6F@R2mix*I_ zaCI}av~+RQb#(?WQn4`BwJ>u6&2Jhyn>(8s8krb6;i!%i^&m})L?cMkLPQ^_X#uwd z+_W$@Ft#u^GIGuBn-^v#yD=r3I*e1X@L4YG&!^9SkID!UiOif)K4M3wXCdQ!2 zU=uf2T}Nj_H(e)l7Z*2IS64?z7gDarO7u>EHW_{7@8y2Sd#1_p=3ro`sNmc&-1?1WO_ zA&FyTGp9xohei>%MiCcW8K482&3d5O%n@fcGc|NIH#2i~(seNc9Zciu1UgXH*-Y2m z#N5Ty($LYx)WrywEt8`QU|_22Xy9b3YYA$)7(2Q+8#>~& zWf?S^t%7DVcbwVG#mv;u)YaKY*VFMimnz)&pI=bqbTbP3`vvM-iwQ#WjE#fwEGdHm?G4s6&?c z9$rSFjCYAdppSPYf>w}bu-^n(`_Oa#w5Phpsv zq{J|j=?>HJB()@UP!u(aBsaJ;EN|G_D3aMIk_KJ=nxqBla;1Q~TuHhN4oUjxL7j>+ zw3uXwcW5!m4AhBA2X~^9EEybop{Wp!FIc z@fZ$@+&pkvO^RZ0NQyysQ9cQ6|D^b&grr1B=>}^1C#5kgPs%_vN?3j;QXwpT7B`B(SAr#h7Eg$vtprN~*Zzo=V5sS{9-Ka#lA4oR z;4y?heL|ZVNo|m3MmfBhk<A7Qb`aqMNNczByXLBcKQ)5dvH(k()SGp$PT_Vm-#=53X zM#dI~W@e6Nj-a_oSI`a|SMY8zGXq@{b4zDk@D-D$E~X~NMy|$A<_4ezmzIVuhHj=t zpi8Jgqa_BQ2EUWBldidosfmk;p^K4`6YaCzDQb zG>UY?(@&#FU!zE4qeurhK_jZ`4~-&S$f@{D(pgw4ZfO*0f|s%vLFuR&UZ6s9C+HLh zkyc3Vyvg8@bQ>u_foqaBlfOa96fSOPy z&MuC+j+SOlx~8B#Acl?xPR_=dQJt={t_fx);5&P6C~@B+}m?dpYSZ1Ao%Lr2h;K$vAHUY82T58V@0F#aS|I zGFvh`$a%?}p!z$R3s!$8^Fr!xoCk@dcbr% z*&x{v6l;wlGa6hPmVxT;d5t2oq4jsN38?;_39i4B%^4h$k#}%{6ZkBY`a9VgZ~dL@ z0II*|fa~vMX9kC4SM>Zc7i;~U?8zXU>_xc#PWA=W-}AxscX9xOLvj$h`3tbr-^n42 zA<1FM;h_3EIVw4tr22ayto}}p!&ZMMCxYT}F}Q?CPGN9JPD6Lm5)$g~TQDimN`g;>n$(LM}Tn$T~D;hvfk|}zy}nUoU8BgxMv)D;>S29W{p6+O)!)f$$*aGUw~|+X zC-22ye;YfQSQt2&xayi4Sy<|tSQuLBS{Q-4=4P&DF3u(vMn-0a@d7I5E(T^6CZH=B zoZKvQO)N}YbuF9>&2$}|%`8luL1*!rxscT-N zDT!={CsA;Xo%{flA9un9QPb^HaJqew{4)6!e2NU5ZsC(;&^a{tX@gkizLMW0zh&@c z$Yz+C{4x0xq-@>SC~~^Nxj_On_jRyQWDnY^jpVNkOOrvT77Hi;#8ENsMXwl>|A30- z{g9&hKZ8RGa-|3^nh&59%_+>_q8W6o<01GkeuD-_gBmzsQaC_G^C582oWjlEkb=CS z0Bqc09P?8tf(*hbLJYzw!if1P#PLP&W)80TsT2uDwiKxp=@c38{M1p<{M4~VkyG%L zK>GYtiaaQik2lC(PElguPf<=$VQ@%M!&O!^ikt+s8BW0Gr&2U=%}=H1QanGEVhEa_ zIs=}cN-<$@NHIfl7dV{HVyU81EEq#ltWvB&b5kjHDfVbp6#Cp0>crGJSQVAxgsqB7 z0i8l5asd=t9t`{`o+(}o4k#HHzFvs)`IK9 z+v`l3jb3ZP_2KPxrYuIUwcz@|y-qV{b5|EjR~KCuSI{7$iyL@Ftf8*4o1v?LnX|dG zv#Sd!32nm9Qbm|E(Z7?>G>E>bnqwKO#~(lvK6 zazY`&8tGcN8M^Aam>F1@8ygwASb|RGRxvO# zG;nmWbkcP*05!ru{d!9aV`p6#b4Md*HzQYLHz#NK{?Swx!}dmzPq6)?sqCO+^ckLF z5bAh9>b}C&@q^TTgR2AW1~D=-b2T&u-!*8gYvSZ&tm|m#WT9(dU}$XM>S*fZ>Vnwb znkou1?kC(h&?&(pzu?A2RGXOSC|Fw5BJ7s~Y4{7*0J=~>7Aseys6u?y&G2Qw#U6Jw)G49W~Dsp_d3VZOluiRr1UQq@y6Q?*jHQ*}~x zSyNflQuP=#!s8*5F}}e*iIu5E?nU{f1+nocJm28plFFRa6tIH0coc4|Z?JEEN@|XO zQdVkm3HZblOBV}c3j27O9pYMfv$94U7y7 z3>*v$43Z2C3`z_P4B89~45kbW44}P&_6!VKo(v3H{tOIS6$}ho-3$y`lNcDZ<}om6 zEn#5L+Q7h|b&`QW>jDFV)*}W6t=|j`+8hiF+FT3_+B^&l+I$QQ+JX!W+9C`L+M)~$ z+7b*5+R_XR+A<6b+HwpG+Ug7p+L{au+S&{Z+6D{^+C~fv+SUvV+HMRC+Wrg-+Nlf- z+Bpmi+La6p+D!}$+T9Ec+VdG0v{x`NXzyWQ(7wpPpnac#LHh**gZ2jo2JKG_4BB59 z7_|Q~FzB!`Fz9eFFz9eGFz9GAFzA>wFz7flFzEO*Fz7@xFzBQ+Fz6IBFzD1XFz7Tg zFz7ThFzB>0FzB>1Fz9qLFz9qMFzEC$FzEC%Fz75{V9;5|z@W2*fk9^{1B1?P1_qtI z3=BH^85nd9GBD^IW?;}c!@!_(j)6hv0t17tI0J*OG6RFIJ_CcUH3NgLI|GAm2m^y| zA_IeNE(3#Z6$68A8v}#xBnAfE`3wxYs~H${cQ7#M9${e61?j)bz@U4dfkF2n1B32k z1_s@y3=F!@85ne5GBD`AW?;~L%fO)fo`FI4BLjo(X9fn{uM7;j-x(Nme=;!W{$^m% z{ma0h`=5b9PmO^=&zFHguY`d?Z#Dyi-XR7Cy_XCO`T`6L`sNG_`f&^l`mGEM`fC^% z^e;0o=>KA1Fi>P*Fz{etFvw?MFsNW)Flc9BFz91oFqp=`U@)J7!C*N9gTXom27^5e z3c85j&NFfbV2VPG(P$-rRvoq@rKfq}t@ ziGjh0g@M6{mw~}Zl7YcUnt{PcmVv>@jDf+(fq}uulYzk~h=IWjk%7Ueoq@rqhk?Op5(9(L6b1&PxeN?O%NQ7p)-x~|?O^9abdrI==n?~i(QO6>qn8W}MxPiMj2Rdhj0G7OjO7^^jP)28j2#&mj6)e1j1w6c zjPn>6jB6Mej9VEPjOQ~j7_VYrFh0V-V0?#x!T1#egYjnu2IH>`494FX7(kV-2@eB< z2_FN4i2wtGi75kvi5&xji7x|#Njw9CNf85sNi73|Nj(FDNh1S;Nize3Ne=^q$y5dg zlW7bLCaW13Ox7|mm~3NUFxk(*U~+(XgUKfb29uu*45oq%45o4n45rEq45pe4 z45m5^45pS045ro$45l^=45oGr45khY45m&D45ls&45q#e45n2K45rNt45qCN45sZ2 z45m{U7)%#1Fqp1kU@%?Bz+k$8fx&bW1B2;)1_slE3=F2H7#K{?Fff=tWMD9T%)ns! zhJnHKD+7b+KL!Rfb_NDB0R{#$c?JeE4F(1?a|Q-8PX-3Fa0Ujm6b1&fGzJE4h9CZi3|*8vltl67BeuItzlp=yUD;{_K1PO>@5R>**69Tb4CURb6y4p zb7=+!a}@>#a{~qjb4LaSb6*Aq^C$)e^IQf7^F{^+^Iir9^H~fG<|`N&%r`PHn4e@| zFu%gUVE%@I!GeW>!9s|E!9tpW!9tdS!9t#a!9s(9!NP=r!NQDz!NP)p!6KG{!6Jo$ z!6Ju&!J>qL!J>|V!J?Ca!D2Q8gT)dC28(433>NDd7%X-$Fj(wjV6fQDz+iENfx+S! z1B1nJ1_p~e3=9_c7#J*`GcZ_uU|_KL$-rRA#K2(5&%j_Q&cI-)$iQH!#lT>x!@yu^ z%D`Y5$iQG3#lT=$#=u}XnSsG_Ap?WuDh3A29SjVXM;RC_FEcP$K4M_7e8<3G`I~{k zij#rCN{E5MN{4~L%AA40Dv*J}DwBc1s+@trY90fF)p7;~tMv>FRy!CNtPV0TSe<8J zu)4v(VD*-P!Ri+SgEc<`gS9FHgS80*gS8t2gLMc4gLNhYgLO6ogLN(ggLOUwgLNST zgLN?jgLMr9gLNGPgLMM~gY{Yl2J4*+4Aw^(7_2WcFj(JZV6cA4z+nBAfx(86fx(8C zfx$+Sfx$+Vfx$+dfx$+Tfx$+bfx$+Xfx$+ffx*U*fx*U@fx*UzFQw9b*GX@4b z3kC)|X9fm49|i_HKL!T700suTNCpPGR0amSbOr{yOa=zKCI$w(ZUzRsUIqrcJ_ZK6 z2@DK&OBopKmNPKeZD3%q+sVLScZh+(?lc2~-4zA~yK4*#b~hLp>>e^O*u7<7uzSzI zVE2)M!Cr`g!Cr)c!Cs7k!Csz$!Cr%b!CsSr!QP00!QO;{!QPC4!QP&M!QPvJ!QPjF z!QP*N!M=on!M>J(!M>h>!M=lm!G0nGgZ*R%2Ky-t4EA#w80_aWFxW3(V6b1yz+k_P zfx&(U1B3lR1_t|U3=HF))DEUOVVBFgREsepmOX*vUg z(>?|Ur>6`I&O8hZ&hiWl&K3*|&Q=Tz&Nd7T&UOq8&JGL=&Q1&r&fW|R&b|x`&i)Jx z&Jhd@&M6EG&S?w`&KV30&W#KV&Rq-)&OHna&bfx#t%fx#tVPJ4w&A{M#iGjiOCj*0<0t17aI|GAT9s`5hR0amOJq!$Pj~N); zxfmGS4H+2RBN!Om>lql_moYH7?_^+bzr?`ceuaU-{Tc&<`wa#L_gf4M?spg%+@CTq zxIbrLaDU0b;Qon$!Tlctg9ifxg9j4>gNHN&gNF(OgNGUegNHf;gNG&qgNG3VgNF$N zgNGRdgNHo>gNHW*gNH8zgNHu@gGUJigGU(ygGU7egGUtugGVz1gGUbogGVm|gU31s z29FI43?3U97(6yJFnDZbVDQ+^z~Hfyfx+Vt1B1tV1_qBG3=AH>7#KYMFfe#>GB9|G zGB9{5GB9{5Gcb6nGB9|mGcb6XFfe$UF)(=AGcb5MGB9}hF)(-rFfe#VGB9{XGcb5| zFfe$oXJGI=!oc8pjDf-P1OtQTDFz15GYkx#=NK3~uQM=s-eh3#yv@Mi#lgVfCBneq zrNF@8rNhABWx>GU<-)+=6~MsY6~n;bmBGN^Rl>mF)xf~u)x^Ny)xyBw)yBZ!)xp5v z)y2Tz)x*Hx)yKf#HGzS_YZ3#4*AxZ@uW1YnUV9lByq+*Hcylu_cpEV=ct!AFLH!AFgO!N-|_!N-+>!N;9}!N-$T-y;kRzONY= z{1_M*{FoRR{8$(m{MZ;6{5TjG{J0nx{Dc`8{6rZT{KOd;{A?H){5%*K{6ZKQ{1O-# z{Bjr={3;k2{8|_o{3b9k_|0Kp@SDfL;J1K*!EX@*gWnPc2ESzt41OyZ82nZ-F!-%u zVDMYVz~Fb4fx+(&1B1UZ1B1U81A~7d1B3qz1_uBA3=ICy7#RHjGcW{5Ffas2F)#$k zFfatjF)#!uFfartF)##ZGcW|`GB5<_GcW{LFfatTFfatTF)##pFfarpGB5;WF)#$= zFfatGcW{HFfasEF)#$wFfatPGB5;8WMBxG%)k&Zm4P8(8v{eY4hDvRT?`BX zhZz_G&M+_poMm7Lc*MXE@PvUO;4K3~z&8elfd32(fgB7Bf%*&#fi4UTfo=>8fgTJD zfnE#@fj$fjfqo1Of#D1cfsqUhfzb>MffWo4fh`OSffE=Q0_QL=1g>CU2;9QJ5O{!r zA@C3bL*NkxhQMPC41p&Y7y?f*Fa(}qUb!pBWf}{xC2Eb1*Oj zb1^Uk^Dr<3t1>VI>oG6{8!#{g8!|8i8#6Ej+b}Q$+c7W%J1{T=donNthcYk(hchq) zM=~%3*D){zH!v^+H!&~-w=ggS_cAa9Ph(&Rp3cA!yoP}xcpU>n@OB1<-~$W{!6z9Q zf-f;J1b=2=2>!~z5d4jSA@~OaL+~#KhG398{xL9wurn}(m@qJe*fKDL*fTJMI5IGV z_%SeqL@_Xgq%kmrWH2yVFoZ2SE zH5nKpwHO#8br={TO&J&>%^4UXEg2Xhtr-|1Z5S9LZ5bFM?HL#%9T*rQof#M+-53}m z-5D4nJs21wy%-oGy%`uH{TLV`0~i=0QyCZ{vl$p7>lhd!yBQcFr!g=@&R}4OoW;Np zIfsEEaxMcyk*gROBG)r8L~dkYh}^}%5V?neA#xuBL*!uwhRCA~43Xy; z7$P4qFhss&V2J$9z!1g9zz`+Fzz}81zz}85z!2rfzz`L}zz`M9zz`M7zz~(jzz~(e zzz~(mzz|i$zz|i28QSt3=Gk)85pA9GB8BHXJCj1+4+-!A^JB1 zL-bz;h8QLWh8PwGh8SK3h8O_`h8Q6Rh8S@Mh8Rf(h8QCTh8SxGh8SB0h8Q~rh8TAS zhL`{bhL}hOhM05)hL|1(hM0Z^hM0*A3^9`#7-FU}FvQGYV2GK`zz{Q!fgxrA14GPC z28NhJ3=ApBWfp{xdMdGBPm4 zvM?~j$}%v-sxdIcYA`UwYBDgyYBMmznlLcLnlmuOS~4)iIx#TB`Y|xX1~4$h1~V|k zmM}2HmN78IRxmKcHZm~8b}=x-b~7-^cU9*bNK}v6~qf zVs9`o#6DzTh<(h!5c`IKA@(Z+L+p13hS(nr3~`JM3~?+B3~{Us3~@pX3~|y73~{my z3~_1<3~`za3~|~F3~?q53~>$&3~^2j3~{au3~>_}7~&Q)FvP85V2E4Kz!0~afg$cT z14G;$28Ot&3=DBE7#QMSGcd%xVPJ@R%fJx#o`E3_WY}GB6}8U|>jC$-t1Xje#LyKLbO; z83u-gTMP^dFBljSIT;udxfmD{c^McI1sE6-g&7zUWf&L|qkPfgy1z14H6E28P643=D~f85k1JGcY9HVPHsn#lVpGnSmjRje#La znt>rnkAWe{iGd+0oPi-Jmw_Rvfq@}u3IjvZ90rD@r3?&7n;96AZZR+so>fg$Au14GIe28L7y z28L7~28L7#28L8A28L8w28L7x28L8+28L8M28L8k28PrC28Psf28Psm3=FA985mOE zFfgQkXJANkVqi#fW?)EjV_-=0XJAMRVqi!MWnf5)U|>j#WMD{(Vqi#%VPHs$Wnf54 zU|>i~W?)E5VPHs0Wnf54V_-c9tz}?H+r+?-wuONq?JNUB+BF7-v>OZzX*U@d z(jGA|q`hWfNc+OTkj~1$kj~D)kj}}#kj~A(kS@Z&kS@-^kS@uX4C#v)7}A$AFr+VIU`Sudz>vO%fgyc814H@-28Q&_ z3=HX87#PyGGBBiXV_-<%$-t1li-941Hv>cZUIvErOAHL@R~Z=6Z!j>V-(p}$zsnK97&2BcFl4M| zV8~du+lfg$5014G6o28N6)3=A1}85lC|F)(C2WMIg6!@!X7m4PAS2LnUKF9wE8 zW(I~#eg=k2K?a6Q5e9}#T?U3sGX{oC3kHTvO9qBaYX*i)7Y2q*cLs(`PX>m}AO?oa zI0lBy1O|r8WCn)J4hDwIE(V6o9tMWYeg=lj84L`W3mF(P7cnqo9%f+3Jj%e3d5nP} z^CSa9=4l3o%ySG3nHL!tGH)?3WU(_aWC<`ZWC=4cWQj5`WGOK)Wa%+5WLYsVWZ5z> zWZ5$?WH~V~Wcf2NWCb!XWJNJBWW_KrWMwiiWMwljWR);5WR)>6WG!Z3$Xdg|khPwH zA!{Q8L)I<^hOA=@3|S`_7_v??Fl2pTV95H(z>xKufgziPfgzihfgzipfgxLffgxLx zfgxLlfgxL#fgxLqfg#(Nfg#(Jfg#(Dfg#(Gfg#(Ofg#(6fgwABfgwAJfgwAVfgyVZ z14H&o28QfS3=G*@85pv6Ffe5AWMIhN#lVoghk+q`F9SpN0S1QbgA5GWrx+Nr&oVG% zpJQOiKF`3AeSv`?`!WMV_6r7v?AHto+3y$_vOh2|WPfB}$o|E^ko}i|A^SfALkR!LyiywLyiaoLyjZ^Lyj~9LyidpLyj#2LykQILyiLjLyji{LrxF_LrydU zLrw+*LryjWLrx9@Lry*eLrw()LrygVLryINL(U`yhMai}3^}V97;?5TFytI!V8}Vb zz>ssCfg$G<14GVP28Nsq3=BCR85nXtF)-wOWnjqp!N8F7n}H#hg@GZLoq-{jgMlGe zlYt>ui-93mmw_SIfPo>`n1LbJhJhj1o`E6Pfq@}6k%1vMiGd+Em4P8QgMlG8n}H#> zgn=QqoPi;?f`K7-CIdt6ECz<$xeN@s3m6!37c(&Au3=!vUC+RfyMcir_c{YZ?mq^G zJXHpUJSzr7bJZA=mJU0f0JWmFOydVaKyif*)yl@7FybK10yb=b6yaon_ zydDOIygmkoyon49c~ck|@}@H|vR}fgyiC14I4^28R68 z3=H{a85r^}F)-v`VPMFA%fOKTje#Nm2LnU?PX>kpCI*HAZU%+|5e9|=RR)Fvbq0n4 zO$LSnZ3cz{69$F?a|VV2O9qAlCkBQBKL&<^00xGFU|kIh zILN?IaD;)O;3xw_!3hS2g3}BP1?LzT3eGby6kK9pD7ehPP;iBTq2MY5L%|IOhJu?6 z3DQCg&qtHg`Nxyg+UAqh0zQQg((aSh4~B&g;N+9 z3a2wL6wYE`D4fHP2ML*ZfuhQehG423Hg7zz(EFch9*U?@Dpz)*OVfuZmk z14H3W28O~X3=D;D85jybFfbH;Vqhrz&A?E^&cIN_$-q#=!@y9a%D_;h$G}izz`#&s z$iPr!%)n4&!@y8v&%jXR$iPtK#lTP$#=uY%!N5=y&A?F9z`#({#K2J0!oX0}&cIMK zfq|iDCIds!ECz<6-3$yxdl?vt_AxLN9b{lAI?TXObc}(a=p+L}(Ip0kqW=sG#T*O_ z#oP=G#k>p*#Zn9m#cB);#YPMa#ik4l#pVnQ#a0Xq#qJCY#hwfd#X$@V#UTs~#fc0I z#mNi|#W@TN#d!=2#j_b0ikC1j6fb9BC|=3HP`rtOp?DtyL-7FyhT_8v48<=P7>YkK zFcg1gU?~2>z)-@z)&K}z)+&Zz)+&iz)+&gz))hwz))hz zz))h%z)<4Bz)%vxz)+IFz)+IRz)+IPz)+IGz)-T8fuUpz14GGP28NOY3=AcQ85l~A zFff!HWnd^d&cIM|f`OsrGy_A)83u-us|*Y!Hy9X7ZZa^G++tuTxy`^(a*u(bl-e^elzK2QlzK5RlzKBTl!h=cl*TeJl%_E-lom5El$J3tl$J9vlvXh?lr}Rk zl(sQ2ly)#Ml+I;fC|$|GP`Z_Yq4XdFL+M!thSKv445gPC7)q})FqGb4U?{!Kz)%Wu z%U=eDG6n{QGG+#bGByT=GJXbzG9dy28QxW3=HL085qj1F))cEKL&;>Mh1o|4F-lP ze+GuCG6sgKNem2CcNrL}?lCY_J!D|0dd0v{^_GF5>H`Bq)n^8VsxJ%-RbLqxs=hNY zRQ+IJsQS&oPz5sQKLbNG0|P@fBLhP<3j;$nI|D8JOe|u5(7iE3Ijv6Dg#5c z9s@(QAp=9TF#|)j1p`C16$3-HGXq1l8v{eN2LnU3F9SohKLbN`1_MKNAp=8oF#|(& z2?IlQEdxV!8v{diKLbPcY6gbtJq!%h`xqFi4=^xPA7WsrKFz>TeU5>l`T_$(^-Ttb z>Zc40)z29is$VfM)Oa#5)c7zk)c7(m)C4dv)I>5c)Wk3_)Wk9{)Fd!4)Fd-7)TA*m z)TA>o)MPO*)MPU-)Z{QQ)Z{WS)D$o<)D$u>)D$r=)RZtV)O0d1)bubg)bukj)J$Yx zsF}pTP&1o>p=KTfL(KvPhMJ`e3^mIc7-}{!Fw|^jV5r&3z)-V`fuUv(14GSK28Nn@ z3=B077#M0EGBDJD-1eD)q2><*L#+e@L#;gnLv0KLLv0)bLv11hLv1nxLv1PpLv02F zLv0oVLv1kwLv0xYLu~~ELv14iLv1euLv23;L+vC6hT7E(47FPr7;3jMFw|~mV5r^6 zz)*XLfuZ&&14Hd`28P-T3=Fk*7#M2rF)-9VWMHUcVqmCaVPL3ZV_>M`XJDw4U|^_| zWMHUMVqmCKWnidNXJDu^U|^`TVPL4UV_>LrWMHW4VPL51WnieA#=uZFlYyab4g*8o zTn2`^c?=A73m6#c7BVo@En#4&Tgt#tw~m3KZX*Lj-6jTxy3Gs>bz2x1>b5g5)SY2q zs5{TVPi#n@)Jrfh)GIPD)GISE)T=Ns)ax=Z)SEFd)Y~&K)cY_n)cZ3q)CVvy)CV&#)WR4E0+W80xPw zFw|dTV5q;zz)*jOfua6B14I1_28R0A3=H*e7#JFO85kP)7#JD^85kNw7#JGF85kNA z7#JFq85kN=7#JE{85kPe7#JEn85kOT7#JG-85kNO7#JF&85kO37#JFA85kPs7#JEF z85kN`7#JGb85kNSFfcSsW?*QT!obk5n}MO>5d%XbCj&#H90Nn6A_GIC3IjuxR8ON@dN`y<9h~%CNTzvCR+xErW6K-rdkGurXvgtO-C6Rnock< zG+kt1Xu86{&~%-Fq3IR_L(^>rhNe3V3{CeK7@F=gFf=`4U}$>Ez|i!JfuZR+14Gjb z28O2B3=GW-3=GZ83=GX|3=GX23=GYj3=GXe3=GYp3=GZU3=GXO3=GY33=GZc3=GX$ z3=GXW3=GYN3=GZ23=GXa3=GYo3=GZT3=GW?3=GYQ3=GX#3=GZ13=GXZ3=GY485o-9 zGcYtSWMF7s%)rpRhJm4ZJp)7YMh1rFT?`D(#~2uzPcSevpJrfa(PCg|(P3a{(Pdz0 zF<@Y5v1DLqv0-3nv1MRrabRF*ab{p>absX;ac5v?@nT?T@n&FX@nK+S@nv9W31DDo z31nbs31VPq31MJp$z)(?$zfn<$!B0_DP&-1DPmw~sb*kksbgShX<%SzX=Pw&X=h+) znZUr%GMRy)Whw(h%PaaeyXgSEh&~l1_q2)3IL(3fohL*1k z46Q;846Pyz46Wh}46Tw346V`(46Sku46OmzFb0OUBnF1IJO+lgLI#GmVg`n`G6sgW zW(J0~RtAQ)J_d%i2@DKva~T-g<})y~tzckiTgAZ8cAbHt?EwQr+hYcXwx+(C*E^&>q6T&>qgf&>qFW&>qde&>q9U&>qLY&>qjg(4NG= z(4Ne|(4ND<(4No0&|bj6&|b*E&|bvA&|b>G(B8$s(B8|y&_02Ip?wkqL;GX~hW0rO z4DIt77}^&yFtjgYU}#^#z|g*tfuVg114H{Z28QXJBZ5$iUG4 zh=HN~H3LKY7Y2s*zYGi=Tnr2yybKH-d<+a7f(#5DQVa|ovJ4Cz@(c_eCJYQ64h#$( zJ`4;U5ey6+DGUr9X$%YI?gaKbev~k=(xnd&~cT4q2nF{L&rk~hK@%J44upj44o_t z44v!@44qsI44u3T44q;O44sk;44qO844u{t44pO%44w8244qC444tkF44r-q44r`t z44pv?44st>44n%Y7&^ByFm&!DspMjxEh=HNYl7XQsfq|i`oq?fi5(7imO$LUp zTMP_ccNrMEo-r_Vy<}kMdc(lb^`3#D>jMKr*GC41uFnh%U0)a&y1p|obp2vr=mMGj zhk>E%F9Sn20|P_1C<8;c1Or32Gy_AoECWNg90NnQIs-$u76U`K4g*8CAp=9VF#|)l z4Ff~BJp)6xBLhRX8v{eP2LnTQA_GHr76U_f4g*7XE(1e%83RLiJp)5`2LnU*LI#HJ zO$-d(TNoI+w=pnu?_gl)KFGk(eT0Fb`xpa5_jv|}?%NCu-FF!nx*sqw^w={n^f)mv z^f)sx^tdrF^!PI{^aL?5^aL|7^n@`m^h7c+^u#bQ^u#hS^dvAa^dvGc^dvDb^dvJd z^rSH`^rSN|^kgtF^kgwG^wcvj^fWOr^t3WC^t3ZD^mH&V^h{)6=$XR6&@+vJp=UM& zL(g0WhMr{%3_U9u728N#N3=BOWx4mRw==sFJ z(96xh&}+oN(Cg2@&>P6W&>OP0U&>O+P&>PLb&>PFZ(3{4<(3{D?(3{P`&|AX5 z(A&Vk(A&ho(A&zu&^wQTp?5h0L+?rkhTc^S483a@7<#udF!b(VVCdb&z|eb`fuZ+2 z14Hjc28P}%3=F+L85nwhGcff2Wnk!IU|{IuWMJqMVqoYKW?<+uVPNPpV_@hrXJF{F zVqoaAVPNR9XJF`aVqoa=W?<;6U|{HLWMJrPVPNQMV_@i;%)rn$pMjxoH3LK6ItGTm z4Gau@n;97T4lpqE9b#bUJI%n*cb0*n?-m0?-yH^qzNZWfea{&f`b8KR`ehjy`V|-$ z`jr?M`t=zY`mGrl`rR2A`n?z!`h6G}`u!Og`e!jP^v`Bs=wHIX(7&94p??(vL;q?9 zhW<4S4E^gE82Z;UF!XO?VCdh>z|g;kfuVmt14I7-28RBF3=I8;7#RAGGBEVtVqoaM z%fQh8fPta^5d%a2V+Mx)Hw+B@?->~SKQb`%e`8?i|G~g8fsuh>0t*Af1U3eS3ET_} z6L=XICa5tmOweawm|)1jFu{m{VS+US!vq%wh6%n53=^Ul7$(FrFiePJV3?4|z%U_; zfnh=}1H*)T28IbO3=9({FfdG*!@w|M1p~u`Ees43wlOeF*vY^!VGjetg#8Q*6Am#j zOnA(|FyRRU!-VGy3=>{4Fid#Mz%bz(1H*)$3=9)~F)&P&W?+~o!@w|6o`GSa5(C3T zRR)HMdJGH`4H+0F8Zj_T3}#@M7{b6XF`R*6ViW_z#8?J~iD?WB6EhhYCT1}(OzdW0 znApR>FtMM3Vd5kPhKW-d7$(kRV3@d&fnnkz28M}m85kzMV_=y0oq=H@$iBY}3={t` zFiiZ3=ETYGB8Zq!@w|UF9XA* z0}Kq4PBJh|I>W#)=^O*Yq{j>llio8hO#02hFqxf!VX`m-!(>qghRG5P43ni97$(ax zFicitV3_R0z%bdFfnl;61H)ub28PK#3=ES)85kxT8 zfnoA128PM685kzNV_=y4k%3|I7Y2sOe;F92FfcGoVPs&KqQSs0#h-y;N(uwRlynA$ zDOn5*Q*s#?rW7zROetnym{P;QFr}V>VM-$d!<0!33{&PYFics+z%XSS1H+UZ3=C6t zGcZiq$G|Ycm>I4RcsWTZErp{qtm^z<< zVd^3VhN+7g7^W^^V3@j`fnn+j28OAt85pLnV_=xNo`GTN1_p+y8yOg;Zed`Ux}AYx z>KO)xsplCOre0!Tn0keQVd_-|hN<@$7^XgCV3_)tfnh4h-d79^Q$I5>O#Q~dF!cum z!_>bF3{(FzFiewRV3?-Jz%Wgjfnk~o1H&|328L;73=Grk85pJoFfdFDVqlmS!oV;s zjDcZVJOjhDBnF0QDGUtLav2z=RWdM4t7c%BR>#0F?JfhuvFzqb^ z!?X_!4AVX`FiiWxz%cDQ1H-gm3=GqLGcZj1$G|Y{KLf*b1_p-dj0_CZSr{0mvobJD zXJcTP&cVPiU6z4ix&i|O=zN0dstgR%)fgD2>oYJ+H)3FzZoFx{+(>)m&ru#84Ob=jSn4ZbNFujO@VR{Jz!}L-HhUs+-4Aa{g7^Y8PV3e`a8q{*8fQ`cDRi>Ax8mW{5B_%#dYZm?6)= zFhhfZVTL9H!wek;h8gAz3^N=U7-l##FwAgeV3^^@z%V0Cj-MwZU%;#d<+aTjTsnb z+AuK8v}0hH>CV6~Gk}3%W)K6z%wPtFnK29uGvgT;W+pH&%*2hM8>)3^V%~7-r69V3;|VfnnwX28Nlh85m~1VPKf~m4RXA4+e&rzZn>2{$XI4 z39|P;1H&u^28LP83=Fea7#L>pGBC^%U|^Uf$iOg5h=F02FayIZF$RWN+6)Y{^cWas z88R@;GG<_yWx~KP%a(y*mIDLBEGGtrS?&xBvpg9XW(6@Y%nD^-m=(^zFe`?EVOAUi z!>n=!hFJ{^46~XT7-lsyFwE*28LOy85m}*V_=xIo`GT3CI*ICyBQc} z?PFk=b%23k)>Q_ESq~W)X1!%#nDvu^VKyrR!)$g2hS^*U46}I|7-kDFFw7QaV3=*f zz%bjCfnl}<1H)`<28P*o3=Ff~85m}JF)+;bW?-0|!@w{*mw{n+0RzMAVg`oUWeg0n z>lqkkH!(2GZf0PZy@Y{b_EH9h*((?rX0K*on7xjHVfJV}fnoMt z28P)W7#LkJHYZZR;-Wn^HOtHHo9*Pnr5ZWIH<+=UDba~Cl%%w5XBFn1jT!`zJw40E?IFwEV~ zz%X|Q1H;^%3=DI3Gce5E!@w|iKLf+uLktXa4>K^#J;J~+_b3Cy+!G88bMG=R%zePX zF!wP7!`!C~40E3`FwA|=z%cg{1H;@e3=DIBGBC{j&A>2^g@IunI|IW!P6mc~d<+cp z1Q;0RX)-X(Gh$$vXTrcR&y;~-o*e_jJa-0$c>xRz^P(9T=H)Oj%*$h7m{-8SFt3P# zVO})@!@N2MhItJP4D&h}80Jl7V3;?ZfnnY(28MY*85rjMVPKf|mw{nE0|Uc+P6meg zJPZu;c^Mey3otOu7iM6XFUG(yUz~wqz7zw)d}#)T`7#U)^JN(r<|{BT%vWS!n6JdZ zFkgj%VZJ2;!+aYChWYjk4D%fs80I@MFwFO6V3_a6z%W06fnk0q1H=4q28Q_w3=H#= z85riLGBC`~Vqln`!@w}Vm4RV?9|Obu2@DMLCo(Y1pT)p1e=!5Y{51>=^S3iF%)iIL zuz;C?VF4Qh!vanQh6UUV3=4P}7#8p|Ff0&aU|1l^z_37^fnk9G1H%GK28IRJ3=9ig z7#J3~GB7OgU|?7f%)r2)z`(E|hJj&0JOjgmLw7#3_`U|6t|fnmW>28IR485kCvVqjSCo`GS( zM+SxkpBWeyd}Cl(@SlNUAqNA)LQV#Tg<1>@3w0P67V0uEEHq$XSZKt+u+Wr&VW9;B z!$L;}hJ|?y3=7K{7#3DBFf6QLU|876z_4&C1H;0F3=9jGFfc4!#=x*}B?H64Z43+x zcQ7z4JjlSX@Gt|z!V3%x3okJ+EWFLYu<$Me!y+yQhDE{*42#4V7#2w|Ff3AJU|6Kf zz_3W4fnkvm1H+Vw)?i>* zY|Fr~*nxpzu`>h1Vpj%+#cm7?i~SiG76&mfEDm8{SRBc~usE85VQ~rr!{T%XhQ*l- z42$y^7#0^WFf8t5U|2kffno6!28P8`85kDNV_;akoPlBS1_p-3dl?uOA7Efue2{@* zG02T)85kB{U|?8$iGgA9a|VXRpBWey|7T!W!p*?2M4W+Pi6jHV5*Y@DCGrdmOOzNG zmZ&l?EOBFCSmMsWu*8djVTmsT!;%07h9!{<3`=4d7?#8`Ff6HHU|2GlfnmuU28Jbj z85oxAV_;Zvkbz;z5e9}O#~B!wTwq{Wa+!f)$rT2MCGQy+mU1yLEEQ&8SZcz+u+)@+ zVW|ZJ!%}MohNX543`^Y^7?yf5Ff8?EU|5>Qz_7HDfnjME1H;nQ3=B)xFfc4#&%m&B z69dE2tqcrH_c1UmJ;=bY^biBX(z^@{OMfshEMsI~SjNS`uuP1BVVODu!!lzAhGh;6 z49kKU7?!0oFf1!&U|2SXfnnKU28Lxf7#Nn_W?)!$kAY#?Lk5OrPZ$`MJ!fE8_JM(6 z*=GiZWnUQ>ma{Q1EEi&6ST4uFuw09QVYvK49iU!7?#H{Ff4CoU|7D2 zfnoV!28I<}3=Au{85maZF)*wUXJA+%#lWyamVse~0t3SeMFxfyN(>AuR2Udms4_6D z&|qL#q0PXsLWhB2g)Rfb3Oxpf6^0B9E8G|uR(LWntnguASmDROu)?2#VMPQ3!-{AI zh83|43@eft7*?b(Fs#UBU|3PWz_6l-fnh~C1H+0+28I=r7#LQ}W?)z`mw{o$JO+jp z%NZC}Y+ztmv6F#e#VH1c6=xV2R-9vCSaE@YVZ}`bh81@h7*^b4U|8{-fnmjG28I=1 z85malU|?7o&cLuTl7V4m6a&M`SO$ibX$%Z2GZ`3GW-&0V%w=F$S-`-svY3HkWeEer z%5nyVl@$yOD=QfoR#q`EtgK~VSXsxwu(FTz9 z46BwhFsxd^z_4l+1H-D#3=FIGGcc?=$iT4b2m`~arwk0Mo-;74dda}B>JtOQs^1I@ ztNt)BtY&3kSk1w}u$qg3VYM&=!)kd3hSiD;469Wb7*^*qFsv?MU|3zrz_7Z8fnjw$ z1HRAj7 ztJgCytlq@HuzD*4!|Lq}46AoAFswevz_9uV1Hfa0uYgiZ<*03=!tYK$hSR=r|utt)BVT}?4!y0`ChBZbE3~P)T z7}l6EFs!j>U|8eCz_7-JfniM~1H+nB28K0-3=C^(85q`dGBB*^W?)#;$H1^=A_K#k zDGUs2rZX_C*}=fDW+wx~nmr5*YxXlRtU1KMu;w%a!M$^@)n{N>YsA2?)|!D~tsMiy zT6+eDwFwLiYZDn5)}}BptW9TNSewPbu(p_iVQm=$!`gBNhPCq;7}g$TU|4&Lfnn`k z28Oi{7#P+*W?)$RjDcb8O9qCupBNa{eq~@-`<;Pd9R~x$IuQnjbqWj&>vR|x*6A@Y ztTSX_SZBh(u+E%;VO<;p!@5=mhIMNg7}gzSU|7$?z_6Z|fnmJ>1H*br28Q)A3=He# z85q_pF)*xGW?)#a!oaXzje%jkIs?OcEe3}5x(p2K^%xk|>oYK{H(+2`Z_L23-h+W* zy*C5HdOrq+^#KeF>jN1W)<-cgtdC`2SRc>8us(%>VSO3{!}@#%hV?}Z4C_l67}i%Z zFs!d;U|2tefnohz28Q+X85q_tU|?9kl7V6UCI*J}yBQePUtwTa|CE7Y{c{F}^)DG1 z*1u+8SpS8AVf}XohV?%g7&b65Fl^vsVAvqQz_3A>fnh@)1H*7#KDjVqn;CoPlA(Nd|@umlzl} zTxDR`aGil+!yN{O4fhxrHhgDb*vP=Zu#t&@VIwmG!$uwkhK-^O3>)Pb7&e+SFl>xt zVAxpAz_78Ffnj3<1H;B928N9-3=A9F85lNpGB9kM#K5p|Dg(pD=?n}T7cekvT*JVy zaUBE0#*GXN8&5GXY`o0Cu<$ASFl>Ctz_9TN1H;B=3=A9JGcauY&A_nn zF9X9S1_p*rstgR9)EO8yX)-Wu(qUlOWXiy>$&P_xlRX2&rUV9tO-T$4o01tAHl;Bz zY|3C@*p$t{uqls$VN*E+!=@z+44c+6Fl^euz_4i(1H-2M3=Er2Gcatr&cLwg76Zek zI}8k)?lUlKdc(l5=^X>Zrtb_4n|?AdY-VF%*v!Geuvw6SVY4s;!)6BthRvP~44Zuz z7&iMcFl-KIVA!0@z_2-$fnjq71HV_?|Q z&A_l_Is?O&#S9Ev)-y0{+0DSPWiJE6mIDk7TMjcYY&piju;nBJ!3p zz_8^b1H+at3=CWTGB9jqU|`tF$iT2whJj(LIRnF12L^_%i3|)|lNcDbrZO;W&0t{I zn$5tlwS<9TYdHhM)(QrOt&py^D{7Pmu6ttuFk-)-I#%4yD0<1b_)iE?bZwo+wB+_wx=>MZ0})U*uI&8 zVfzUNh8@BT3_C;^7=+n!1T!$~2xDN_5y`-?BbtF>M+^hQj#LJQ z9T^M^JF*xUcH}cK>?mYl*ips6u%niNVMjd!!;TgPh8=AT3_IpCFzi^tz_4Q#1H+Eh z3=BKAFfi=c%fPVX7z4wO>kJG#ZZa_JxXr+@<1Pckj%N%EJ69SjURyBQdE_AoH)>}6os+0VeRa|r{(&gBdYJ6AC<>|DdZ zuyZW~!_I9C3_Eu+FznpTz_9ZG1H;Zk3=BI@GcfEt$H1`j0t3U&s|*Y~uQM?0{J_Al z^Cttt&fg3SJO3~+>|$kL*u}@duuGhQVV4dA!>(WkhFv8L47lg#WuJa5G zyDl;??7GCju+pw47(mMFzkB7z_9Bz1H-QG3=F$|GBE7=!@#gxmVsfnJOjgS zMFxi5S_}-kjTsnrn=ml!wq;=0?ZCjW+lhf;w>JaB?r;W%-H{9oyJHv_b~iFG?CxS< z*xkdxuzM;4!|r(u47(RFFzjB)z_5E21HOyI(Re?0(I_u=^bY!yZcphCNmc411gz81}d^FzoSUVA$iuz_7=g zfnkp?1H&Fa28KO>3=DgM7#Q|MGcfFlV_?`5&%m%Jfq`L9A_K#o6b6Ppl?)7fY8V*y z)H5*bX=Gs7)5O5Ar<;LcPagxro(T*Ld!{ll?3vEMux9}S!=A+q411O`Fzi{yz_4cx z1H+!93=DhDF)-}8z`(HQA_K#oTMP_)9y2iPdBec4=O+Who<9r>d;T&o>}6nJ*vrYl zu$PB{VJ{y8!(L?uhQ0a>4128^81}j|FzgLxVAvbVz_2%hfnjen1H;}p28O+f3=Dgl z7#Q|8GcfFJV_?|Z$-uC;hk;@5R0f8)RXUM>?&xCN z;XoM!!-0MVh66Jg7!J&0U^p-eF)k_?3a-;6Db2LktWIhZq?c4skIs91><=I3&ZsaL9sz;ZQsS z!=V}mhC_7>42K#S7!EZvFdS-SU^vvlz;LLGf#J|(28Kh^7#I%CU|=}3kb&XQS_Xzg z>lqjhZDL?Jbee(T&=m%TL)RD>4qazpICPVN;m{)nhC@#o7!EyWU^w)Ff#J{}28Kib z7#I#SGB6xgVqiF|!oYA?je+5?J_EyH3kHV6mJAGsofsGnyD~5wc4uHX9KgVEIEI1Y za2x}};Y0?8!)q8A4zFckIJ}L4;qXodhQoUp7!L1cU^u*wf#L8028P2285j;9VPH6X zl!4*!IR=Kq7a151Ut(Z5e3^ma@D&Dz!`B%Y4!>bwIQ*W0;qWI0hQnVN7!H4BU^x7b zf#C=v1H%z!28JUX3=BuO7#NNSGcX(xV_-NU!N71tmVx1jJOjfK3kHTGjtmS(oEaF7 zxG*pr@nv8*62`!AB%XocNDc$Tk$eV*BLxf$M~WF3j?^$P9I0nuIMT?#aAX<-!;wV{ z3`f>6FdW&%z;NUk1H+LM3=Bt3GcX)E$G~vpA_K#bD+~-rzA`Wz`NqI-=4VFdTJYU^wc`z;M)sf#GN> z1H;iY28N@V3=Bte7#NP`GcX*jU|={}&A@Q9hJoSeTn2`t^B5S8E@WUhx`ct@=yC>z zqZ=3)j&5dPIJ$*_;plA!hGR?&49CP77>-FXFdUO*U^u40z;H~Nf#H}M1H&b6 zW4{>~jyo|h9Cv15IPS*4aNM7P;dl@O!|_lChT{-9VFdUC%U^pJfz;HZ~ zf#G-x1HhT|I;7>;jZU^sr7f#LWS28QF;7#NOUXJ9z~ zfPvxoO9qDHpBNZUFf%ZmU}a!9!Op;Nf|G&agb)M62~h@y6XFaEClnYMPUtW&oX}%n zIAO@ZaAE=j!->fZ3@4^AFr1jqz;I##1H*~M3=AihFfg20&cJYD6$8VGwG0d=)-f=g z*vPC5aAF4o!-<^?3@3IoFr2u+z;NO+1H*}H3=Ai3Ffg3B z$-r>p5d*`Crwj}yo-;6Tz;M!;f#GB*1H;K028NS!85mA3U|=}8h=Jkc5(b8o%NQ6= zu4G_1xrTw^PVQo0IJt*`;p9;UhLaZ=7*1YhU^sb=f#KwP28NSA7#L3e zVqiG=n}OlvUj~L#Yzz#iI2jmDaWgQS5@BFCrNF>&N{NBtlqv(mDK`d&QyvTqr@R;# zP6abCoQh#!I2Fsla4L;~;Z!CA!>McrhEpXB45u0x7)~`YFq~>-U^umkf#K9<28L5x z85mCOV_-OSoPpugNd|^frx+McU1nf7b&Y}H)O7}iQ%@KePQ7JdIQ5=^;nWWXhEu;8 z7*73VU^vajz;IfKf#I|W1H)-?28Po~3=F4}85mCIFfg3XXJ9y8#K3U6n1SJR2?N9F zG6sgz30kar@u2Woc_tcaQYVm!x?4(`Qr=>=T9;)oIlOLaQ+Gd!};qB4Cik$ zFr0tHz;ON@1H<_b3=HQ#Gca5TVqmxs%D`|TjDg`oBm={RBnE~HsSFGk(ij*nWHK;Z z$YEf(kk7zyp@4zmLNNowg%Spa3#AMU7s?nIE>towT&QATxKPc&aG{og;ld;ah6_^} z7%t3UV7M@gf#Jez28Ihu7#J=rXJELnl7ZpEItGRd8yFZa>||iLu!n)+!afFu3x^pP zE*xcGxNwhw;lgtUh6^tl7%seGV7LHs+aCsoi>wR`7nKQlo7%tW^FkEb8V7S=Kz;LmLf#Ko|28N5X7#J?jWnj3tje+6f zeg=k%2N@VH9%5j)c!YuB;#mfUix(IeE?#0_xOkg^;o@@!hKny57%skHV7SD~z;KD5 zf#H%M1H&aL28K(@3=Ef47#J?;GB8{+U|_gp#K3ULnt|bxI|IWdPX>ldJ`4<(rZX^H zn!&(uX(0o{r6mjumzFayTw1}vaA_q2!==>>442k0FkD*Cz;I~;1H+}A3=Eg{Ffd%& z%fN7H9|Oas{R|A34lyuXy3W9G=@tXSrMnCam+mt#TzbI3aOouj!zGZL-Z3y-`pm#^ z=_>=nrGE?zml+utE;BPQT;^b4xXi`Ca9Npw;j#_`!(}}NhRga443{k!7%n?9FkJRx zV7MI4z;HQ=f#GsA1H z-ps&oc^d=6<(&)+m-jF*T;9*XaQOiP!{vtz440oUFkF7lz;O8$1HI z&cJX*f`Q?RBm=`083u+c@(c`Dlo%MUXfrTe(PLn^qR+r^C4hn9N+1Knl@JDoE8z?b zSE3jgt|T)sTuEbKxRTDmaHWHR;Yue1!<8NehAaIH3|A&GFkG3|28OE_7#OZzWMH^@ ziGktjRR)Hu*BBVC-eh37dWV7G>RkqgtM?cfuHI*0xcZ2J;p%q=hO56A7_RFUuGKRzTx(=txYotMaIKet;aWcf z!?hU<4A+)0FkD;4z;JCP1H*L=28Qe03=G$K7#ObeGca72U|_f|&A@P7hJoR_JOjgZ zB?gA;stgR*)fgDAYceog*J5C}uFb%3U5A0;x;_KLbpr;5>xK*r*Nqt%u6r;rT=!;R zxbDZma6N#5;d&qg!}TZzhU>8m4Ap~t{*!<>QPhBE`h4Oa$+8y*Y{Hxd~bZe%eq z+{j^IxRJ}ia3i0A;YI}m!;NYNh8wjE3^&>s7;a2rV7M`bf#Jq<28J7Z7#MEsV_>*( zfPvx0VFrd9XBZf6TxDRmagBlD#&-sW8$THsZv0|kxbc^P;l_UkhMPy<_ZReo2wWYZeC|#xcPvA;pSrohMP|r7;e5}V7U2vgS47VmTFx;BMz;J6m z1H-L_3=FrHF)-X(!N729BLl;&Ees5|wlOf=+RealYcB)Ct!oSnx9&4A+!j047a{8Fx>jfz;K(3f#EhU1H)}T28P>$3=FrW7#MELGBDhhXJEK(!oYCbfq~(+ z4+F#P2nL4RDGUs^(-;_TXEHF{&S7A+7;dj*V7R@Cf#LRP28P>b7#MD!XJEK}iGktvRR)IJ_ZS#%KV)FI{fL3#4l@J8 z9ToHD zV7L>=z;Gvsf#FUi1H+vK3=DU+GBDiP!N725Hv_|+eGCkD4l*#@Il{nj=PU!moeK;M zcP=q7+_}xbaOXJ#!=0B540qlzFx(YpV7RNsz;HL0f#Gf*1H;`y28O#;3=DT`85r(1 zFfiP0W?;D6!oYC1m4V@II|IYr4hDw1-3$zO`xqGR_A@Ztoxs3wcOnDB-6;$VcULkn z++D-KaCbce!`+Px40ks%Fx=hEz;JgT1H;_|3=DUVGBDgd&cJZ@0t3U{%M1*6uQD*) zy~V(A_YMQY-LDJ`cmFXk++$#1xW~xAaF2_D;hr!9!#x=WhI_gU3=E144EOXI815M| zFx)d{V7O<)z;Mr=f#IGb1H(Np28MfK3=H=o7#QwFGcerS#=vlICj-O1T?`EO_A)Ts zJI26p?<51my;BSf_s%jf+`GWQaPJ}m!@VmE4EL@wFxfGceq{ z!@zLw9s|R@&kPLrzA-S|`^ms??>7U(y*~^L_gNVj?sG6O+~;CoxX;hPa9@yt;l30D z!+lu>hWqji4EI$S81AbvFx2&@Kf=Ip{}=g?6*fKCY zuxDU+;Kac2Af18XK_&ykgKP$d2YCz(56T%B9yBm8JZNNKc(90p;lUCHh6hU-7#^%( zV0f^Kf#Jbg28IV47#JSxWMFvkjDg|7dj^IFpBNY(d|_aC$jHF(ke7ksp(F#tLm38! zhjI)I4;2|09_leLJTzcncxcJM@X(rp;h_fu!$U6yhKIon3=cyY7#=n;Fg)yLV0hTa z!0>Pa1H;3a3=9vKGB7+`&cN_+6$8V=w+svq-!U*e{LaAe@D~Ha!@mp+5C1VRJp9kV z@Q9It;Sm!9!y{G(hDU4+439V&7#?vkFg)UBV0gsG!0o61HLV0eDy1H-cg3=Gc} zF)%z^&A{+%9RtI&4Gav=b}}$LJIcWD>^K9%vr`NV&s7;1o@+2LJlAAkc&@|1@Z6Mv z;kg9^!*fdphUYd64A1Qu7@j*YFg$l=V0iAr!0_Caf#JCu1H*Gq28QQe3=Ge`85o}X zGB7+(Vqkcl%E0hEgMs0B76ZfcYzBtsB@7JD%NZD+S28d>uVY|%-oU`{ypw_9c@G1_ z^F9WK=aU&2o=;_9c)pH-;rVt3hUYsO7@qH9V0eC*f#LZX28QQX85o|wU|@K`&%p3P zhk@aR9s|P*Lk5Ny#taNEOc@wnSTHcWuwr0%;mpAB!i|C9g$Dz}i$Dg37qJWsFX9;( zUL-Lvyr^bic+tYZ@S=@@;YB+G!;4M^h8L3<7+y?eV0bZ|f#Jmh28I`F7#LoxV_FE7+%UVFuc@YV0anI!0P%fRq* z0t3U#xeN?1=QA+8T*1Kbauox^%k2ydFLyF9ygbCf@bU-)!^@8h3@?8%FueTB!0_@v z1H&sG28LG>3=FSS7#LouGcdf;WMFuu!@%&WoPpt01p~vYMh1pgEes5=+8G#Lbuciz z>SSPe)y=^0s)vE$RX+p6s|gGYuVykZyqd$n@Mf4=46o)hFuYpC!0>821H-Fb z3=FUKGBCW_&%p5N00YCTlMD>6&M+{%I>*59>M{evtE&tQukJB0yn4vM@ai!G!>bnz z46j}>FuZ1FV0g{L!0?)nf#Eej1H)?x28P#)3=FTe7#LogGcdfiVqkb}&A{;5j)CE| zI|IXOF9wF!J`4=66B!s@=Q1$7u4G_%-O9l5dLjeE>&XlZuct9Eyq?Lx@Olmd!|VAB z46hF`FuXpkJI9e=sn-{>i}b`VRxc>;DW4 zZR-S?3ts(=%TQvrTw;Bu#Zw(n3-kLBlyftHB zcx%nT@Ya@r;cXZL!`pZUhPR0f3~!Sd7~W9up;q4m+hPUq- z7~XzjV0b6Y!0=9lf#IDv1H(Hh28MUC3=Hqo7#QAZGBCW;VqkdZ&A{-^hk@apKLf+N zAO?nap$rV~;usj-B{DF)OJZPn*UZ51u7!c&T{{EAyDkQXcfAY@@1`*@yqn3u@NO0Z z!@J!K4Da?ZFudE(!0_%61H-$c3=HqiF)+Nl$iVRK5(C4#p9~D|`4|}93o1z_nHh0@3k2i-WxD5yf9I;r%fNhW95K7~Y>|V0eFqf#LmC28Q=H7#QB)VqkcGpMl~1Lk5QTuNWBK zzhz)}|DJ*2{TBv?_um*8KJYUze2`#Z_#nl=@Ijh^;e!eT!v|dkh7V>83?Ez=7(RqD zFnkDSVE7Qp!0;iOf#E|61H*@O28Iur3=AKN7#Kd(F)(~+U|{&r%)s#B9s|RNhYSoK z9x*U{c*?-=;T;3RhmQ;lA3iZKeE7=1@Zkpo!-t;?3?Ke5FnsvS!0_Q81H*^^3=AKc z7#Kb>GcbH)VPN>k#=!7Vnt|b?90S8gMFxhC$_xx2RTvmP>M}5VG+-Vqo~x%E0ickAdOSbOwe`GZ+{?tz}^Nw4QP+IgWwhb36mX=L`mh&)EzNpK}-(KIbwpe9mKF z_*}@q@VSkF;d3Vg!{;6bhR=Nr44?ZM7(UNnVE8YmVx2( z1_p-Dn-~~AZ)afmypw_9^Cbp`&$k&EKHp_v_D+2?=S7ru=uWSqqUpW~Vz6vog zd=+J2_$tQ0@YS4w;j0A$!&hqthOc%E3|}1?7`}QjFnsl8VEF3C!0@${f#GW%1H;$p z3=ChFFfe@G%fRsUIs?Pkj|>doco-PINii^dQ)XcJrpCbVO_PD)n-K%UH&X_NZ{`dP z-)tBdzS%J_d~;`D_?F4Q@U4o0;oBSrhHv{B7{1+QVEFcjf#JIt1H*Si28QqU3=H2r z7#O~LGcbJjWnlOo#=!7BiGksJ3IoIUbOwg+rx+N%KVV?^{)&O&`#%PTAIuC4KLi*U zeuy(L{E%c|_#wr>@I#h?;fERn!w*dch96oC3_o-k7=9QqF#ND&VEAFf!0^MKf#HV} z1H%tz28JIl3=BWq85n+eF);k_W?=Z?%fRr%kAdMwAOpjXU6*eyK4q{L*A#_@&Lj@Jo+@;g=x;!!IKShF``E48P167=BqYF#NJ&VEARj!0^kK zf#H`u1H&%|28Lfw3=F@V85n*=FfjazW?=Xg$H4F_fq~&yA_K#(ECz;OxeN@y@);O@ zl`t^;Dq~>yRnNfitBHZ(R|^BfuTBPrU)>B0zg93X{947p@M|*z!>?@&48Qg>F#I~e z!0_uN1H-RN3=F@1GBEsRVqo|!%)szll!4*5I0M6PNd|`BN(>CYRT&t5t1~eCHeq1+ z?ZCkB+lPVSw?6~J??48I-ysYPzvnYB{9eGo@Ov=>!|yc=48PYiF#O)c!0>x31HzmGC7{64|J@cS+U!|w+S z48I>UF#LYX!0`JS1HoPps_9RtIkUIvCg^B5TZEMQ>x zvxtG=&k_cPKWiBn{%l}i__K+D;m>&nhCjC%82&tGVEFTyf#J`828O@f3=Dt885sUb zGBEs=VPN;okxVhJWiA82;^HVEA{Ff#Kh628Mr6 z7#RLNXJGjEfq~)QM+Sy}zZe+)Gcz#!*J5D!Z_mK+KY)SZe-H!1{}2X-|6vRa|Kk}L z{wFao{7+$E_@B$b@V}CQ;eRy)!~Z%4hW{rS82+DPVEBKQf#Lr(28RDP85sWGVPN=w zpMl~30|tiw4;dK#KW1R~|Ac|z|8oY0|F0Mr{=a5m`2U81;s09(hX3yw82*1`U}Rup zU}WHAU}WH7U}WH9U}WHDU}TVBU}TVHU}TVGU}R8YU}R8XU}Vr`U}P|0U}P|2U}P|7 zU}UglU}OkmU}T73U}Q*SU}Q*PU}VT;U}VT+U}Pv~U}R`uU}RX%z{s$JfstVs10%y8 z21bT`42%rN85kK(F)%WmVPIsq%D~9*kb#lmF#{vRGX_RRR|ZB#cLqjA4+cg?Zw5xj z5C%rZa0W)k2nI&RXa+{cI0i<>LzmWJzaWWXWP+WXWYWGP@^WT|9e zWT|0bWT|6dWNBt#WNBq!Wa(pIWSPjo$TFFMk!1!0Bg-rXMwZPCj4XQ?7+Ll)FtY4t zU}QPLz{qlufsy4F10&0G21b@w42&$V85mjKF)*@xXJBOc#lXn&hk=n*kb#j^mVuE~ zlYx=dl!1}ek%5ubnSqhjje(KXlYx=dhk=pRpMjCJfPs;^c1p_1NN(M&OH4Kcb>lqkXH!(1>?q*q7=c z)+Y>%tj`%3Szj?QvVLY@Wc|j#$oidukxhbukxi0;kxhnykxia~kxhw#kxiR{kxh?* zkxie0ku8jYk*$`2k!=YBBinlhMz#+OjBKA77}@?XFtYt;U}R@vU}R@yU}R@wU}R@! zU}WcHU}WcFU}WcEU}WcKU}P6yU}P6$U}P6!U}P6%U}TqIU}V>2U}QI7U}QIDU}QIC zU}QIAU}U#vU}SefsuVS10(x921fRU42rxeg;MkGX_QuR|ZCoFa}1B2nI%uCk+Y0}k+YnEk+Xq;k+YM5k#iCQBj;iUM$V-SjGW6E7&%umFmi5UVC3A&z{t6s zfsyk710&}d21d?v42+x?85p??7#O*X7#O*X85p_D7#O+i85p^o7#O*n85p_T7#O)c z85p^I7#O*H85p?&7#O(%85p^O7#O*N85p_37#O+285p@D7#O*t7#O+o85p^W7#O)q z85p_B85p@L7#O)485p@*7#O+Q7#O*_85p^G85p^yF)(t?WMJf)&A`aDfPs-~5d$OF zZU#oKBMgjO#~2v7jx#WFU0`73y2-%E^@xFyo1KA?n~Q;wn}>msn~#B!TY!O)TbO~7 zTa1B`Tatm1TbhB9+k}CU+m?Zm+n#}u+k=6T+mnHj+lPUXJDh=$JAr|bJDGuzJC%Wv zJCA{pyNZF4yM}?0yPkoOdjfssd#fsrSefsrSMfsrSUfsrSjfsv)6ayn~Gy@}V3Iii=Is+qbCIcgH9s?t90Rtm% zB?BXG4Fe-@9Rnk8GXo=UD+43%JO)PIk#8~sBi|GT zM!x9`jC`{g82RQhF!C*9VB}lLz{t0XfsyYt10&xV21dT~42*o27#R7kGBEPpV_@Wa z$iT?=h=GxxnSqg?g@KWuoq>^`i-D1!mw}OAjDe9~l7W$5ih+^ek%5svgMpEMGXo?4 z76wNC?F@|k2N)Rn4>K_GA7fzTKgqzze~N*T|1<+5|5*k`{&NhB{1+J*`L8fA@?T|O zjQn3282NuNF!KLmVC4VJz$n1Nz$n1Zz$n1Uz$n1S zz$hTVz$hTez$hTYz$hTcz$l>1z$l=~z$oCvz$oCtz$oC$z$g&Fz$g&Oz$g&Kz$lQ+ zz$lQzz$h@8fl*)y1Eat)21bDu42%M+7#IaMGcXElV_+26!N4eRkbzO)ECZv!c?L#- zOAL&Hh762?CJc;%rVNaN77UDnjtq=~E)0xOoAqB@B#$p^&}jxnp|cE(LKheqg}yQ{ z3Vml_6#B`)DD;PcQJ9s1QJ9Z`QJ9~BQP_ZiQP_xqQP`M)QP_-uQP_fkQP`S+QP_@w zQP`bG*1EcUY21el<42;4L85o5hGcbw>FffWpGBAqBFffY9F))g#Gcbx6Gcbyn zGBAo*FffY5GBApyF))f`FffV~GBAo%F))hMFffYLGBAp?F))gBGBApCF))fuXJ8ar zz`!W7h=EaLH3Or_ItE6O4GfGTI~f>7jxsQc9A{t@ImN&zD#^eoD#gGks?5MBs>Z-5 zs>#48s>Q%4s?ESCs>{GAs>i@6YRJGSYQ(@OYR$kXYRAARYR|wZ>cGG#>d3$->cYS% z>dwF@8pFUS8qdHen#8~;n!>;+n##Z^n#aH>TFAgCTFk>EW05TE)O9+RVTx+Qz^r z+QGmm+RMNw+Rwl!x`KgGbRz?!=w=2+(Jc&&qI($_MUOEsik@d+6ura1D0-iPQS<== zqv&G>M$tD6jH2%u7)3uaFp9A;Fp3E=Fp9}BFp6n0Fp8NmFp60)Fp60-FpAkRFp4=c zFp9Y_Fp8xzFp8xyFp6a|FpA|cFpA|fFp5<$Fp5<(FpAYMFpAA(U=*9jz$mtmfl+J; z1Ebh-21cE>Pt1vK%dowVK7cnr3&tzZ}f5N~h{*-}H z`~?G}_(ujt@h=RF;@=q<#eXp{ivMO{6#v7(DE^OuQT#sxqXZ)ZqXY{BqXa7hqXZiR zqXatxqXZWNqXaJlql6Lzql790ql5+nql6X%ql7jCql5_qql7sFql6^`ql6s;ql5zk zql6~|ql6Cwql6y=qeM6ZqeLHFiPBFV3fGSz$o#Qfl=ZG1Ea)821bcb42%-L85kv57#JnB85kw)7#Jn}85ku4 z85kvl85ku)85kww7#JlJ85kv#85kuC7#JmM7#Jlx7#JnH85kvd85kueFfdBqW?+=O z!@wwcpMg>G1p}kxYX(NicMOb@9~l@WKQS;$er8~l{K~*6`Hg{5@+SkM!@wvtkAYEY0RyAdA_hjO)eMYM>lhfNHZU+s?POq-I?BK(b)11w>J$T`v?c?i zv^E2yvOAXv?l|jv=;-Tv^N8z zv=0NLv_Au*bN~aRbRYwxbT9*>bOr;XbT$K{bRGkvbO8gSbRh$ybQJ@mbS(p;bUg#3 zbPEHcbQ=SsbUy>5^dtsG=_w41(lZ$trDroRN^fCcl-|q0D7~M7QThM_qx4AzM(Ilo zjMBFm7-bk37-g6l7-d))7-iTQ7-cva7-e`E7-jew7-fVQ7-d8l7-e)B7-h^D7-cLN z7-bw87-gIo7-d`;7-a$&7-b?E7-eD@7-ixZ7-iBK7-fnX7-dQs7-cFL7-c3hFv`qg zV3e7|z$i19fl+2Y1Eb6e21c3H42&{s85m`@F)+#;Vqlax!oVnVoPkm11p}kZD+WfH zHw=t2Ul|x>{xLAh{AXa4> z?0g1B*%b_ovRfD!Ww$Xf%I;)fl;dDvl;dPzloMiLloMrOl#^g!l#^s&l#^m$l#^j# zl#^v(lv7|}lv8A2l+$8hl+$Hkl+$Bil+$Nmlrvyplrv^vlrv*sl=Eg_l=EX?lnZ2F zlnZ8HlnY^Cl#69xluKY>luKe@luKt|l*?pblq+Ijlq+Rmlq+Xol&fK2l&fQ4l$*}L zD7S!tQEm|fqugQ!M!7W%jB;BU80GdcFv^`~V3a$@z$kZ~fl=-f1Ebt+21dDi42*IQ z7#QWgGBCXGBCF)+%fGcd|$F)+$!Gcd~cFfhvZGBCe~y7s{yGDr{4EAX`P&SP@_!f@<^M7;DljlGDljuJ zDzGsyD)2KfDhM$!DhM+$Dp)ZvDkL&6Dy(5(R9MTvsIY;7QDG+oqrx5rMuq(hj0%Ss z7!?jPFe)5jU{pB9z^HJXfl=WU1Ea!O21bQ*42%lr85k8VFfb}yW?)pf#=xlXnt@T_ z9Rs7nM+QcP&kT$TUl+dNMF71~D)y1~V`!#xO7{rZO-p_AoFi&ShX!oX^0hxR8NS zaWMm<;u;1<#q|t~iW?ai6?ZW(Djs8CR6N1JsCb%zQAvw|QAvk^QAwA9QOSUTQOS~l zQOSmZQOTBpQOSXUQOTKsQOS*gQOTWwQOS#eQOTQuQOSpaQOTEqQ7M3dQ7MptQ7MRl zQ7MFhQ7MywQ7MOkQ7NB+QK^uDQK^W5QK_1NQK^oBQK^A}QK^-IQK_AQQE37Lqtavs zMy06?j7qZ@7?tKQFe+_jU{u=2z^HV9fl=uo1EbO@21cdJ42(*57#Niq85osW7#Nk= z85os085oth85os$85orX7#Nj>85osC85ouI7#Nk!85or<85otF7#NkE85ot_7#NiU z85otL7#Njf85ou085or_7#NjH7#Nky7#Ni+85or(F)%96W?)pF%fP5SkAYEn0RyA* zN(M&dH4Kc(>lhf7w=*y*A7)@wKFYwTe1d^d`7HyZ@_PnG<&O-E%3l~5mH#p@s<1II zs<1OKs%S7Us%SAVs%SGXs^~E=su(aZsu(jcs+ch_s@O9ys^l;*s+2M?s#GvAs#GyB zs21eBx42-I?7#LL-Gcc+yV_;NW!N91x zm4Q+9AOoZ7Sq4Vc3k-~^mlzmTuQD*IsW33AsWLFC=`k>>88R@cnJ_S_nKCe{nK3Y` zSuilFSu!xH*)TAw*)lMyxiK)Rc``7nc`-1mc{4Do`7ki5`71p}jI zH3Oq&Ed!(GBnC#!c?^u2s~8wHw=pnk9%5kBJi@@Jd7Ob!^ArQ4=2-?t%?k{SnjaY$ zH9s*hYJO#4)cnD~sQH_LQHzCvQHz~{QHz6tQA?A7QA>+~QA?MBQOkgVQOlTtQOkyb zQOllzQOkjWQ7e&wQ7egoQ7e^!Q7eOiQ7fB)QLBW3QLCJRQLBQ1QEMgxqt+}2Myfl=!^1EbbI21adF21e}y21e~d21e}?21e~#21e}$ z21e~>21e~R21f0621e};21e~J21e~}21e~(21e}(42;?n85p%EF)(URW?+ZY(Nw=*zmA7EhAKFq+VeUyPw`xFDC_8A67?W+uo+BX;& zwQn&nYCmRR)PB#vsQrmqs{~dMxE^pj5;?M7b_Pb>oeYe+`xqE?4=^z5o@8LuJ;T7Ldyauo z_c8;c?o|dx-A@dRx?dO=b^kIj>M<}d>TxnK>TxkJ>IpM2>d7!L>Nzto>V+^c>V+{d z>P0Xx>P0ay>LoKU>ZLI->SZu6>J>6D>eVtZ>eVwa>NPPi>OEv&)O*6fsP~kCQSSu< zquxgbM!hc#jCx-g81;TIFzWqgVAT7^z^M11fl;4{fl;5Cfl;4@fl;58fl;4>fl;56 zfl;4}fl;4_fl*(Pfl*(Dfl*(bfl*(Rfl*(Jfl=R>fl=R#fl=Rrfl=RT1Oub~X$D69vkZ*-*BBV}A2BfMKVe|hf6l;Y zz`($0z{$X9z|FvDz{9|3z{kL7AkM&OAjQCFAj80Dpvu5#V93B|V9da1V8*~`5YE78 z5Xr!35Y517kix)dkjubmkjKDiP|m<;P{qJ#P{Y7z(8|DQFp+`LU@`-v!88U&gQpCP z2G1B64c;>_8hm14H2BKEXz-1J(cn7+qrp!GMuT4rj0S%h7!Ce0FdDKmFdA|(FdA|* zFdFhOFdFhQFd7OlFd7OoFdAwwFdAwzFdFJHFd7;#Fd7;%FdAAhFdEu2FdEu3FdDir zFdDisFdF(ZFd7CiFdBw1Fd9ZOFd9ZPFdCLHFdEh}FdEh~Fd8;6FdB9;Fd9x`U^JY~ zz-YLFfzfa^1Eb*@21dj642*_57#IzAGcX$NWneVC#K35HkAczf6$7K;HwH!{CI&_$ z76wKmb_PZxE(S&;UIs=Z0R~1RLk318BL+qzQwByO3kF6bYX(Lm7Y0TncLqiy4+ch~ zOa?}yECxoSTn0v?0tQB-Vg^Q|8U{wAdImg$#^Fix?P&0uFdFY=U^G6!z-WA!fzkLF1EcYA21er(42;I77#NLDGcX#T zWneVEz`$sHk%7_p5(A_0Wd=s$YYdFWHyId>-!U*6e`H`Z{=&d${EdOp_&Wom2?GP8 z2{Qwu2`dAm2^RyS2@eCKi6{f3i39_qi4+5)i82GDi9Q3Pi6H}{i3tOvi7x}ANf-m8 zNhAZKNely{Njw9iNfHC2NhbrN$ub5;lNAh%CL0+TO|~#Fn(Sp@G}*_%XmXr^(c}UH zqsey$MpF?6MpIP=MpJbLMpI1&MpJDDMpF|8MpJVJMpH`$MpHKiM$;e$M$lM$s(`h$Vd^d|$O z850Ae87l*$89M``84m-a86N|qnK%QZnG^$~nG6G?nIZ$DnKA>TnF9l(nG*w}nKuKY znI8kASvUiuSp);4St0|YSr!AM*+d3Lv$YJ2X8RZz%?>aynjK!U|_U3$iQfEn1RvaCkNz* zHy9W#9x^amJYit8c*ekJ@t%Rv;x_}M#a{+SO9lo;OMeDN%K!#O%SZ-B%NPbm%XkJx z%LE2S%R~l7%VY*d%M=Di%X9`t%M1oa%R&Z5%Mu1g%TfkL%Q6N=%W?)r%PIy&%UT9T z%SjB3mQxuREoU$=TFzo%w4BYrXt{)e(Q-Khqvc8lM$2^!jFuZ17%g`)Fk0?mV6@!F zz-W1xfzk3P1Eb|V21d*042+g985k{JF)&(wW?;1Z!@y|8%D`wP#K34J%D`wP#=vML z$-ro(#K35!%D`x)&cJA8!@y|e!N6!0!oX;iz`$sg!@y{j$G~V+$iQe-!oX-%&cJ9@ z#lUDan}N}44g;grdIws+)pZ6&t6L0= zR(BZ~t)4M3TD@dow0gzBXwA*QXwAdGXwA>SXf4FRXf4XXXf4OUXsyV=XsyJ+Xzk3v zXzjwlXzk9xXzj(oXzk0uXdTADXdTJGXdT7CXx+%bXuX1g(fTt3qxBaCM(ghkj5Z7m zj5f>+j5cfxj5eGMj5b^hj5gd1j5fRsj5d4>j5dM{j5Z<+j5eYSj5cBnj5gv7j5bmX zj5e|ij5bCLj5ekWj5Zbwj5bybj5gK`j5aO|j5h8Jj5eMOj5dA@j5Yxbj5d)Bj5aY0 zj5cu$j5f&(j5etZj5bXSj5aL{j5fUtj5ZS(7;R=UFxt#wV6<7xz-Y6EfzjqN1Eb9o z21c7_42(7}7#M9{F)-SEW?;1W#=vOvgMrbOk%7^cmx0lipMlX+ieVtwmTRYZFe#-+8$zHv^~neXnUN2(e?}j zqwP5cM%(KQjJCHJ7;Wz`Fxoz3V6=VAz-ar2fzghYfzghgfzghGfzeKofzeKifzeKx zfzi%^fzi&1fzi&Dfzi&Lfzi&Bfzi%~fzi&7fzd9Ufzd9Cfzd98fzd9Nfzhszfzhs* zfzhsvfzhs?fzfUT1Ebw621dKt42*Vj85r%BF)-S#WMH&g&A@24g@MuT00X1lAqGaf zqYR98uNWBZ-Y_uQy<=ds`^dm(_ltqio|%Eso`r$YUX_8-UY&u_UW0+rUYmi@UYCK< z-hhG8-k5>W-iCqEK9hmbzKDU*zLbH{zMO&4zJ-C&egXrd{Tv2H`}quv_6r#p?Uyhx z+HYiFwBO9YXupSn(S9ETqy1?HM*Fi2jP}3Fgj>4FgoZmFgnyQFgnySFgmm`FgkQHFgo-wFgo-yFgo-xFgi?NV04(s!00fA zfze?q1Ea${21bX442%wo7#JNEGcY=%~QJ=%~rS=xD^i=xEQt=;*}2=;+MA=;+44=;+VD=orMn=orGl=$OgC z=vd0Y=-9}>=-A7^=s1&s(Q!5dqvJdVM#qH=jE+kf7#){0Fgl)KV01jm!032}fzk0i z1Eb?521du*42+KV7#JPzGcY&F)%v$GcY<8Ffck5GB7%oFfclmGcY<;F)%tc zGcY=}F)%u{GcY=>V_EgECxpBISh=>3mF)l7c($AuVG+xUeCbjype&?c^3nt^DzcS z=MxN!&Zij|ou4o;I=^LLbpF7===_<1(fJz#qw`M&Mi&JJMi*NKMi+YqMi&nTMi*}e zMwbusAIv*If*Z zu6r05U2ifly544BbbZ3W==z+2(e(oZqw7ZoM%P~qjBd;fjBZ*CjBeHpjBd6JjBfS} zjBbt$jBZ{GjBdURjBfr6jBXJOjBY6mjBaTRjBc3>jBY0w7~M`YFuI*#V01gr!02{^ zfzjE=U`xT=VoAZ=VM@W7hqs?7i3^`mttUamt|mdmuFyfS7BguS7Tsw*JogK zH)3FPH(_9Ow`5>+w`O2;4`E<*k7ZzVk7raN9%mRBJ-yqsKi4Mvn&!j2;ge7(JdaFnT;?VDxy$!07Rjfzjg=1Ea@h z21buB42&M%85li&F)(`aGcbAzF)(_HGBA3IGcbBeFfe*5GBA3oFfe+mF)(^+GcbDU zGBA3YF)(^sGBA2tGcbBOFfe*LF)(^YGcbClFfe+iF)(_jGcbAQ&yNg@o?jRkJ-;(BdPy)adPy=cddV;_ddV{|dMPn5dTBE-dg(DRdg(JTdIc~r zdId5tdWA4BdWADEdPOlXdL=V3dZjTidZjZkdUY@`dUY}|di5|cdi66fdQDO z`wRo4_c;be@9PYV-nSSSz3(tEdOu`f^nT31=>3O*(TA0R(TAOZ(T9V9(MOPh(MO7b z(MOqq(Z_~?(Z`p8(Z`>G(I=3B(I=RJ(IBy^!dlY=*!5!=*z^w=*!H&=*!B$=qts*=qt;>=&QiM=&QuQ=&Q`Y=&QrP=&R4b z=xfNp=xfHn=xf2i=x{`m}y{uK<2{?!bO z{x#sFRh#sEGB#sEPE#sDD(#sFys#sE16#sGN+#sCEd#sEbI#sC!t#sGB&#sC`z z#sGT;#sDV<#sC)v#sF6a#sEJC#(+Qu#(-c3#()S0#(*dW#(-o7#(*>i#()e4#(-P~ z#(;bV#()k6#(;?oi~*Aw7z3s-Fb2$JU<_Esz!f>7zW0`S_a0zItIqTMh3>f76!(^b_T}4 z2@H&ZlNlHTr!X)EZe?H$+{VBdxRZe~a1R4x;C=?iz!MCNfu|W51J5up2EJur41CAH z82FKaG4KlmW8ilN#vld;#vo<}#vm33#vpA5#-J(&#-M5j#-J7k#-Mfv#-J_+#-MHn z#-JVs#-Kh1#-M%%#-K?Ij6stb7=z|8Fb2(MU<_Koz!63) zU|$Bt-~a~3;2;LZ;B*GY;9>^G;Ccqe;BE%S;OPvE!7~{cgXb_X2G3_;3|_>*7`&8$ zG58n*WAJeX#^6&7jKOCa7=te`Fb3abU<|&)z`&r)z!-d&fid_W17q-i2F4I32F4Ip z2F4H$2F4IU2F4H(2F4Ik2F4IG2F4I`2F4I82F4Iu2F4Hv2F4Ii2F4H{2F4Iy2F8#) z2F8$l2F8#g2F8$52F8#I2F8#^2F8#U2F8$92F8#z42&U{85l!;F))TIGBAebFffMZ zGBAb~FffKzGBAeLFffMJGcblWF))TUGcbm>FffL;F))U~on;95G_b@Pq?q^^OJ;=ZqdW?ZF z^aKNA=tTy`&?^j#q1PA~LvJ%MhTdgh3Bm-ku76W5g4g+IY9s^@o0Rv-LB?Dtv4Fh9X9Rp+7YzD@#?s3d*b4^6u-6QXVec3i!#*-FhJ9gR4ExT&81BTt81Br# z81BZv81B!&7#_sH7#_;N7#_jE7#_*M7#_vI7#_pG7#_>O7#`2S7@owy7@o|)7@oqw z7@o?&7@onv7@p0*7~a6Z7~agl7~aOf7~a9a7~aXi7(R)CF?=cmWB7Ci#_%}|jN$Vb z7{iw{Fov&UU<_Zwz!<)jfie6b17rAM2FCDX42Gy`LV2?Jwksq&ov+qz40IWFP}$WC#OeWEcZuWHbX~WGn+?WEulwWF`Y+WHtk1 zWB~(XWDx^nWH$q2kTl zjFFcZ7$dJTFh*WyV2pggz!>?4fidzO17qYz2F9oW2F9ph2F9om2F9px2F9oa2F9pl z2F9oq2F9p#2F9o?2F9pd2F9p72F9pD2F9o&2F9pj2F9oo2F9pz2F9og2F9pL2F9pr z2F9of42)5e85pCcF)&8WU|@`z$-o%3h=DO`DFb8Fat6kzH4KbV>lhfLwlgqB?P6ez z+QYyYb&!EE>M#Ri)Ex%KsHY5!QO_9|qh2sDMuFV+i-9qknSn7{g@G|zoq;i0lYuc> zn}IP}mw_?bfPpdEn1M0clz}nYj)5`Sk%2MVnSn9dhk-FVf`KtQih(gYmVq(4jDaz_ zo`EsCk%2L~iGeY?g@G};mw_>Q0s~|8BnHOl*$j-)%NZD>S28e0uVG+}zR18BeVKtV z`YHos^bH2a=!Xo9(XSX7qhB*H#t1Pm#z-?T#>g=+#wai_#%MAy#+WiN#+WlO##k{h z#>6u)#$+%s#$+)t#uPI!#?&w{#?&z|#?&(~#&j?+#&k0<#`G{S#>`}3j9J9M7_)?d zF=j0TW6TBy#+XeEj4`_z7-NnzFvgr@V2nA#z!)pdz!)pTz!Ymz!>Yuz!>Yqz!>Yyz!>Ysz!>Yvz!)3H zz!;mzz!;mtz!;mxz!;m(z!+P=z!+Q1z!+P~z!+P_z!+P@z!=-gz!=-Xz!=-bz!=-l zz!*D`fiZR!17qxF2FBQ}42-ec7#L&sGcd-UU|@{B$iNtTkAX4vAp>LVBL>FUrwoj- z?-&?kKQb`Jer8~d<6vNn6JcPCQ($0>(_vtYvtVG1vtnS3vt?k6b6{YMb7o+Sb7NqP zOJ`t=%V1!P%VuDV%VS`SD`a4dt72e`t7Tw}t7Bk{o6o=)w}62$ZZQL6+%g8nxRnfy zahn(ziGeY}n}IRG zkAX2EfPpa~l7TTHm4PuKoq;hSi-9qrnSn8(hk-GnpMf!95(8txR0hU`84QdG`xzJ$ zZZI$=JY--@c+9|<@PvUe;VlDW!Z!xSg#QeTiJ}aQiE0dti5d)yiCPSdi8>67iKYyU zi53iuiB=4ZiS7)HiNOqviSZ1KiAfBMi75<>iRlcCiJKT06E`z3CT?S3Ox(}Fn0SbR zG4Ut^W8w)0#>A5hjESch7!%JhFeaX5U`)Kgz?gWMfidw417qS<2FAo|42+3485k4q zFfb;5WMEAE!oZmLoq;j&Cj(>RF9yaWW(LM2HU`Ed4hF^~UIxY_eg?)Q2?oX_X$Hn5 zSq8==B?iVM6$Zv6M+U|uX9mV39|p!Ge+I^+2nNQaNCw8FBnHN$YzD@pNeqlh%NZDx zb}%p|?P6d|+QYz@w2y%?={N&p(kTYUq%#bRNmm&dlO8fKCOu|gOnSz^nC!~HnC!v8 znC!{GnC!#Am>kN$m>j{tm>kK#m>k2vm>kc*n4HAGn4HYOn4HGIn4HeQn4H1Dn4HPL zn4H7Fn4HVNn4HJJm|VcXnB2<1nB2j@nB2|4nB2?2nB2#}m^__V~QgKV~Q^W zV~RfmV@ePMV@fsyV@e4FV@eqVV@f##V@f3hV@eYPV@fLnV@f*%W6A^u#*{e>j4AUN z7*iH9Fs2-0U`#o}z?gE3fidMg17pe!2F8?|42&s{7#LHYGBBn*XJAbEz`&UDhk-HW z9|L15BLicq8UtghJ_BQ_Ap>Ko6$4|cGXrC)D+6Py8v|piKLcZG5CdasFau+10s~`e zCIe$?HUnd72?JwlIRj&AB?Dt>69Z#v9|L3R1O~>`$qbCCj~EzJA2TqfzF}ZYeb2y{ z`iX%t^)mxw>K6va)Nc%osoxnGQ-3iqrv7GNOk-hSOk-zYOygi+Oygu=Oygo;Oygx> zOcP*WOjBiGOw(XsOw(pyOw(mxOw(gvOfzR-OtWHOOtWENOmk#lOmk*nO!Hx2O!H@8 zObcXSObcUROp9P(OeLn6{LGF>M6{W7gL7}ItzFsAKdU`#vDz?gQMfidkl17q4}2FA4i42P%D|Yuf`Ku8BLidl76!)jtqhFm z*BBVnuQM>F-(p})zstaw{(ylo{Urlq`Wptu^tTL*86pgf8P*Jp8Ep)V8SM;=8C?vF z8Iu_pGo~>xX3S(@%$UQ#m@$`uF=HMBW5xmo#*Bpwj2TN97&DeLFlMY^V9Z#_z?iX$ zfiYt(17pSp2F8q|42&5k7#K57GcabHWnj!W$H16zoq;jq76W6(9R|jXhYXAvj~N&< z-Y_s`yk}s{_{hMR@r{8o;|Bv{rYHkrrZ@v*rUC4M3V;0D5>lhfb zwlgqh-Cj?v6)-wjitQQQ7S+5xwv)(ZW?;CS~4)^S~D=_x-c;2`Z6%)`ZF-*1~4$@Mlvww#xOAE#xgMGW-&147BevBmNGEr z)-f>VHZm~gHZw5h_AoH!&R}57oyEYIJC}hm_YDJM?pp@N+;0qwxjz{gbN?_f=Kf`1 z%>Bo}n8(1tn8(P#n8(7vn8(V%n8(M!m?y}0&tm>0>wm>12!n3ur7 zn3u%Bm{-lfnAgIfXVW8NYL#=P|mjCq?F81ptWFy?JzV9eXk zz?gT4fidq017qGz2FARn42*dn85r~aGBD; zW5IC-#)4A}j0I;I7z@rZFczF=U@W-Ez*umJfwABU17pE;2F8LL42%Ug85j$0F)$X~ zWne6Lz`$7Wm4UI~2LoflZwAJKzYL58{}>nx*%=rMxfmD=c^DWA1sNC%g&7zNWf&L> zlA#-gbV zj72jT7>i~zFc!^WU@V%;z*sb&fw5=-17p!*2F9Xg42(s~85oOJFfbOaWMC{>!@yXy zo`JFG2m@o$aR$bsQw)qnXBZfZ&N46-U1MM@y2-#;ben;(=m7&`(IW=NqSp+JMei6G zi#{+g7JX%4Ec(vCSS-T8SS-fCSS-)LSggdrSgg&!SggaqSZvC`SZv3@Se(khSX{-x zSlrFPSlr9NSlrLRSUiz|v3M2(WAR)D#^U)5jKwP$7>lz*yqIz*yqQz*yqUz*rK&z*rK^z*rK;z*v&Nz*v&Vz*v&Sz*v&Yz*v&cz*thk zz*thoz*thxz*y46z*y44z*y4Bz*y4Fz*w?`fw5#Q17pd02F8*N42&fpw;f_&EIG}< zSn`H}vE)4iW64Jb#*)trj3r+g7)yRIFqZsgU@ZB|z*x%0z*x%3z*x%7z*s86z*wrl zz*wrpz*wrvz*uU>z*y?ez*y?Zz*y?Vz*y?Tz*ri}z*ri=z*ri^z*w5hz*w5kz*t(y zz*t(sz*st!fw6Qt17qn-2FB7w42-3#85m2~Fff*GWne7b!N6F$i-EE9Fau-hc?QPP ziwumVR~Q&ee=;zZF)=Wfu`n=}@iH)$i7_yiNiZ;$Nir~&DKRjXsWLE@sWC8?88a}J z*)TAc*)cGdxic`9c`-1S`7kh+g)%UfB{DFUB{MLVr7<|NE z*--|@vSSR4Wycv9%T6*dmYrf?EIZ43uL$=#2FYXBp4VgEEyOptQZ(8Y#A6U z92giYoEaD^d>9xj{23T40vH%83Kt7S{N8B+8G!tIv5x$ zRx&VFtYToSSj)gzv4MfHVlx9{#U2L6iv0|X6$cm?E1okjR`M}0Rz@-~Rz@)}R>m?g zR;Dp9R%S9VR^~7;R^~G>Ru(WYRu(caRu(fbR+ca@R+cj`R#q`ER#r1GR@N{uR@O2w zRyHs&RyH#*R?c8xtenljSUHb@v2p!O;jFoE{7%SH^Fjj71V65E6z*xDT zfwA%s17qb82FA*h42+eh85k>HFfdlWVqmQN%)nUrje)W9KLcYG0|R3fCj(=Z5CdbC zB?DuX7XxFJ4+CSB9|L1m00U!HBm-kr3F#}^&DFb6w1p{N%bq2<& zn+%Lqw-^|!?lLe|J!4?3dda|8^@@S9>Ma9f)dvQ~s?Q9JRbLnwtG+WZR{daLtoq5o zSoMp6vFa}aW7R(f#;X4ejMa<`jMZWcjMb71jMXv>jMZ`sjMefCjMW+pjMdr7#OQ>GcZ;^VPLF& z#=uzpo`JFY0|R6AX9mXVe+-N@>X%$iP_lh=H;0F#}`WQwGMmXAF#WFBur?UNJD%eP&>+`^Lan_nm>U?gs;7-A@L_ zx<3qzb^jR{>qQtC>%|!u>!lbN>tz@i>tz`j>(v+->opk|>$Mpe>kSwf>x~!~>#Z3W z>+KjA>m3*v>s=Wb>)ja`>k}9l>oXY`>$4dc>vI?w>q{9J>+2X8>)RO^>!&a<)=y_( zte?TaSU;PAv3>~yWBqal#`={EjP?5%80$|lFxFpVV61<{z*zr|fwBGr17rPX2FCht z42<jpYoCjTH=xjg<_Hja3Yc zjkOGnjSUQpjZ+yI8)q;uHqK^XY@Ex$*f@`Yv2i&AW8*3Y#>O=ajEx%^7#lY;FgEUC zU~Jsaz}R?@fwA!z17qU}2FAvR42+Gh7#JJhFfca0WngUl#=zM4pMkN7gMqP0l!38H zf`PF~l7X>FhJmq3m4UHIgMqP0i-EDpo`JE+n}M+@oPn_^nSrq>pMkNdkb$wOgn_ZC zoPn{aih;4ImVvQp9s^_3dM zrdte*O?Md>n;tMQHoatEY#uifs#ujr1#uf_(#uh6E#ui%!#uhsU z#uj@9#uf(##ujG=#uhgQ#+GOX#+En+#+F0|#+GCT#+DQY#+FF)+6BGcdMFFfg`CF)+4DGcdNQFfg|2GBCE9F)+5qFfg{}GBCF0GcdLm zGBCClGcdN+Ffg{(GcdL`GBCDwF)+4HV_lhf@8yOhen;00|TNxPJ+ZY(z+ZhwjW|( zY(LGw*nWz}S(_z}S(+ zz}V5uz}V5lz}V5pz}V5xz}PX7fw5y217pWr2F8y042&Hs7#KUYFfev(V_@vq$-vlg zkAbn{0Rv;lBL>Efrwoi8?-&?6zB4d({9s`0lxJY<)L>xj)MjAp)Ma4oG-F`wbYfua zbYWoZbZ21foW{V|Ih}#Aa{&Wm=VAuN&SeaYoy!>*J6A9;cCKPz>|D*j*tw2@v2#5G zW9JSA#?IXgjGcQJ7(4eeFm~=^VC+1|z}R_&fwA)@17qhM2FA|&42+!*85lbsF)((% zW?<}m$H3V6fq}8}D+6QacLv5T1_s71W(LMCRtCl{E(XRf9tOrPRR+c`JqE@u0|v$} zLk7k!D+b0cX9mVD9|p#*NCw8P7zW0!SO&(f1O~>gOa{iT90ta&JO;+DW(LNteg?*_ z*$j+b%NZEEHZw4GZDnBW+QGoswVQ#lYaat+*Fgrxu15@vU5^h`#%^5(#%==!#%@Cf#_k{n#_nJS z#_li%#_mW4#_kvf#_m)G#_kLT#_mi8#_lc##_nzg#_m1_#_ov>jNMZh7`x{(Fm^9s zVC-JVz}S6)fwB8N17nXE17lAj17lAT17lAr17lAf17lAi17lAK17lA)17lAG17lAm z17lA$17lAO17lAe17lAk17lAU17lA!17lAM17lA+17lAY17pv82F9L642(TX85nz( zGcfk7U|{Uo$iUdMg@LhW8v|p{ZU)Aly$p;!#~2uUPBJj|oMvF`xx&EM^MHY|=Me*A z&r=4*o_`FCz3dE(y<7~8y}S&Jy#fr3y}}HPy;cm2y}=BOy)g`oy>SeTz3~i;y%`LQ zy@d>ny;Tg1y>l2Cd)G2B_O54O?A^$~*t?m5v3CyxWAASrjJ@X=7<+FqF!nxU zVC;R#z}WkmfwA`;17n{h17n{R17n{p17n{X17n{j17n{L17n{*17lwR17lwx17lw> z17lwZ17lw}17lwl17lw_17lwd17lw-17lwT17lw@17lwW17lw`17lwu17lwU0|V%M zxV}aP#=b5F#=c$##=d?A#=a>GjD6D>82jckF!n8CVC-AMz}UBvfw6Bj17qI_2FAWq z42*r385sMnF);SsXJG7mz`)q|l7X@B69Z$vBm-l=DFb7_8v|p%2Lofj7XxFz4+CR= zC<9}E1OsD#6a!;_G6Q3OJ_BQaAp>K72?JyQWd_FnYYdG2*BKc5Z!s|TKW1R;f5yPr z|D1ub{}lsc|62ye{tpa{{T~?^`@b+S_J3ty?El8V*#Dh@vHuqXWB+dk#{NGHjQ#%@ z7$*obFisF-V4NVyz&JsgfpLNi1LFi$2F3{*42%=B7#Jt$GcZmtWMG_N#lSehmVt4C zJpY}V4Sd#fpNkv2F3|{85k$*XJDLgf`M_u6$Zu$*BBTl++<*!@QHzO z!fyt~34a+FC;VezoXEhyIFXZqaUu@`<3v6N#);w#j1!d^7$>SSFizB9V4Ud5z&O#H zfpMZQ1LMRn2F8i;42%;K7#JsJGB8feVPKq?$G|wToPlv-GXvwqRtCn29Sn>UuQM=C zyurXY@gW1_#3u}l6Q46MPJF?@IPoO|42%>1FfdO1 z%fL7hnZFiw(UV4Nh&z&J^PfpL-&1LGuR2F6J`42+ZX85k!SGB8du zV_=+Q!N54lk%4iN3j^aMHwMN@-VBVBd>I%gr7tip zjFYVx7$-+FFiwtPV4NJ!z&JUHfpKyw1LNd82FA&S42+YD7#Jr{W?-B=g@JMMbOy%B zvltjB&t+hoyo`Zy@=6BA$*UL`C!c0uoP36Xaq@Wv#>tl$7$;w4V4Qr9fpPLf2FA&c z7#OE;GB8dtU|^h5&A>RNhJkTPJp<#E4hF_4-3*LV`WP6eOk`l3GKqn4%47z{DN`93 zr%YpDoHCPvampM9#wl|d7^lo*V4O0afpN+r2F58%85pPRVql!Imw|E00S3k?hZq>A z9A;pga)yC%%6SIHDHjQSg@JLZE(7CKI|jz74h)P_ofsIWx-c+K^<`k38o7^mK1V4QlFfpO|R2F9rm85pNN zVPKs4oPlxb3kJriuNfGpzF}aT3bOwl1LM?>42)AhF)&X3%)mJHD+A*+E(XSFybO%f z1Q-~n2{ABE6J}tXCd0ruO`d^qnj!<^G&KgsX&MZS(+n9HrA7^k~1Fiv-4V4Uv3z&PETfpK~W z1LO2q2FB@e42;w385pNGGB8eWVql!!%D_0ioq=(B7X#z;UIxbL(-;`1A7)^jeujZ@ z`gsP%=@%Ior{7~>oc@Y|ar!p~#_2y97^nYcV4VJsfpG>m1LF){2F4j;42&}*7#L@$ zGBD0iXJDLRz`!`eh=FlNJOks53QXkuWT(Zawuqn&|q#x(}U z8P^#YXFOnFobi}}amF(S#u?8U7-zg-V4U%afpNxb2F4lh7#L@~XJDN1gMo3zZwAI0 ze;62N{AFOA@sELVCL;smOcn;lnUV~QGi4YUXUa1$&QxSzoT#FwS&lV4Ug7z&O*3fpMk}1LMq82F96r42&}i7#L?3GBD1pVql!v z%)mIahk$_$LN)EF3NX)-X*(qUknWy-)f z%YuP%mL&t@tSAP?S*2`>mmc=tSbzRv+go5&U(PW zIO`z;<7^HF#@YG|jI+ZS7-uhJV4S^(fpPXy2FBUz7#L@7WMG`Vg@JMQb_T}TI~W*e z?_^+{y_oPCIaarR*b#@R<07-t`6V4Qu5fpPYI2FBTs7#L?i zWni5BoPlxn3kJs79~l^De_>#p{f&Wf_HPEp*?$=r=ddv_&f#QWoWsq)I7ftmagG85 z;~XUh#yP4CjC1T580WY%FwXH}V4UO2z&Iy>fpJbS1LK@32F5v)85rlxVPKpykAZQ{ zdGBD2j z&cHaIhkC z7#FxPFfQe+-NZg&7zZiZL)Qlw@FBD9ymQP=F)%Ki&cL{E76aqL#SDxKmoYFdT*1J&a4!Sn!jlY)3$HRTE_}$q zxbQ6lDr#te*$LKqkqg)%TMieO+|6wSc6D2{<~Q91+TqAUi+McE9Di+UIs7xgkQE}Fo= zxM(s1L$XjEj317#H_5 zFfN|Jz_@ra1LNXp42+AXGcYcm!N9n9CIjQ*ISh=8=QA)a-on7Rcsm2*;#~}ki}x@v zF5b()xcC?YO-Qaq)8o#w834j7vBf z7?*G}FfQR?U|b@~z_>(?fpLjC1LG142F4{;42(-`7#Nq>F)%K1XJB07#lX14hkyrC1)5Imt19FTylefamh^v#wB+c7?<2< zU|jNufpN)W2F4}N7#Np;?0&((xa1`RN7AdHDq91YR160)PjL= zX&?jR(kKSTr7;YQOJf-rm!>f=F3o3PTw1}vxO6H5E`7_uxb!^(<5H0O zJ~1#Z{msC*^dAG`G6n|5Wt#^r1bjLSI~7?%q&FfJEnU|g=i zz_?tAfpNJu1LJaC2FB%442;W@85ozRF)%LAU|?Kc%D}k1k%4h}F9YN92@H(OCowQC zpUS|v{0Rf&@}~@p%il3DF8|2DxcmzPSkbE)x*HJs+WOr)dU8{Rg)PQSFK=RT(z2kan(8o##I{_ z7*}m%U|h9}fpOJd2F6wU85ma`VPIT!jDd00c?QN+mlzmVU14Bcb(4W{)oljGRbLnw zSN&yRT=k!UaWw-2<7!R@#??X$jH{&?7*}gBFs{~SU|g-kz_?nUfpN731LJCI2FBI4 z42-LT7#LT_F)*&qVqjcd#=y9`iGgu-3j^cob_T}PT?~w?dl?v4PhenNy^(=&^(F?! z)ms@DSMOk8T)mrtarF@f#?{9e7+0TQU|ju@fpPUK2FBHI85mc8U|?MRnSpWj9|p$N z{}~w9FfcH#QDk6Tqr||tMwNkajRphb8f^x~H6{#xF(i? zaZLgP&d{lHk5&JZ5#vR+AIdfwdD+qYg-u@ z*G^(!TsxJ4aqSES#7}qXgU|hS5fpP6>2FA5(85q}IVPIT)mw|EZdj`gJEDVh6 z#26UYX)-XbGh<*}=fc3aE{K6~T_OYHx_k!4b=Mde*WF-XTz8X!aorsT#&u5_7}vdE zU|jc-fpOg%2F7(DGd?gduKUcuxb7HF)*%YXJA~<$-uati-B=H4+Gz%5>m3*v*LyNBuJ>VJT<^!gxIUPHaeXKQ)$ajuK&%zxPhI4af2`e;|4JX#tjk-j2omG7&oLbFm6a^VBCcIvE%@^e`}P=x1Qu zu!Mne!*T}34XYR!H>_b`+_08`al3z__uDfpOzx2F8u^85lRNW?ejF$|2GVi_1W zB``2Y<& zHw!Z`ZZ=?G+-$_axY?S4akCu*<7RgT#?2lKjGF@)7&k{TFm7&SVB9>JfpPN^2FA_H z7#KINU|`(5ih*(SW(LO1+ZY%(?_glue2{^0^H~PQ&F2{yH(z34+#<`sxJ8bEaf>1Y z;}$Ij#x1%Gj9UyC7`GTRFm5qnVBBKLz_`VNfpLo^1LGDO2F5M+42)YG7#O!WGB9p& zVqo0j%D}kAgMo2NECb_~1O~<}$qbBJQW+Sxq%kmV$!B2PQpCWxrG$ZTOCr zNeqlzr!p{ZoyNepbvgs%)|m{9Th}o#Zr#YhxOEEy|1LL+R2F7j042;`q z7#O$JF)(gxXJFjc!N9n!n}KoLGzP|P^BEYoEn;BYwuFIk+gb+3Z95qlx9w(N+_sN_ zaocqU#%&K67`HuQVBGeYfpObY2F7jg7#O#GWMJI(nSpWJ9|p$l91M)xxfmF?^D;1Q z*JEJZZot5}-H3s4yEOyjb{7W5?XC=r+x-|Aw+AvXZVzT)+#bWgxIKe`aeEd6ar;vS#_jJI7`OjoVB8LJ%YO#O9exaqJNy|KcSJBS?uce!+!4pX zxFeo{aYq6J$-=<6Q;>mirw9Y% zPEiKNoe~U;I~5ricd9Tj?o?x7+-c3gxYM11ac3|Cn#+}&=j5~7~7Cxsic!=OqTlotGIH zcV1&)+ z2FBf142-+285nolFfi`6XJFjz#K5>aoPlw76a(Y#SO&)3@eGW+6BrnGXEHGE&S7BO zoyWkqyO@D-cPRto?m7m>-Hi;4yPFvpclR(b?w-NGxO)}@S-fpKp<1LNKl2FAT<42*m885s8#F);2eVPM=_$-ua`nt^fe3F);4i$-ua87X#zI-3*NT z_A)T;yTrh_?$H2IsnSpUXD+A+xIR?i4>I{tgH5nN9YcVkHH)demZ^OX2-<5%Je-;Dd{#*ve z{rL=x`wJNu_ZKrT?k{6t++WGSxW9&haeo~HA(lY#NTZwAJLEDVeX*%=rQaxyR; z6k=dJD96BfP=SH*pfUsF!6F96gT)Mt2WuD@57sj<9&BP@JlM>@c(8?m@n9PRfV_-b^f`Rc6 zBLm|hE(XR!JPeG7co`TEi7_x9l4oE%q`|;=$drNckOc$dAxj3vLpBVIhg=yL4|y;! z9`a&fJQUBscqp5J@lZJfEqr=pqB-p(_lGhpsX(9{R?>c<4I=A#$iR5mg@N&~D+A-@)nFdhkJU_27Sz<4B-f$>N<1LKhh2F4@N42(zO7#NSlGcX=WU|>9w$iR3c zg@N%%Is@a88V1HA^$d(hniv?5v@kFpX=PwM(#ODfWFiCOk;x2~v76!&+ybO%T z1Q-~P2{AAp6K7yNCdt5fOo@T%3s$MhH&kGV529t&V#JQl>jcr2KK z@mLH4?8x@vC|BU$F49i9=poGcA4k%55$WX@g&#uNJ)7*8BxU_9}hf$_u#2F4Sg7#L6dW?($Y!oYZvje+qbI|JiM z0S3mC!VHWjMHm=QDl#yh)M8*fsl&i{(v*Smqy+=xNh=1%lg86 za^qhH##2lTjHg%_7*FvsFrE@%U_2$nz<5fWf$@|i1LG+p2F6p?42-9285mF5F)*HT zXJ9-Pz`%Gal7aD58Uy30Oa{hNSqzM)av2y;l`$}$s$^h1Rn5S7Y61h}sW}Xcr&cg9 zp4!5|cZPa85Yp0;9OJZ;Osc-oGE@pL=`AN(|;Hk&nPo6p2=fiJd@ABc&3Pf@k})XZ?1LK)K2F5e}42)+cFfg8($iR4J3IpSr=?si#)-W)hS9Zi-Ga%V+O{v z&lnibzF=TH`;~$593uncIbH_Fa{>&E=Y$v-&xtZHo=ae0JeSD8crJy3@mwwg}&1LL_y2F7zu42A|lY#O49|p$re;F7rFfcG)U}j*vz{bFMft`Wz0v7}01#Sk$ z3p@;r7kC*MF9NQOlDxbFo%Kh!a)Yc3r83jFC1fFyl{en@xmzv#tUZ|7%yC4V7zddf$_ps2F45T z7#J^nXJEYWlY#Lf69eN#W(LNKYz&MS1sNDGN-;2Alx1MND9^xnQG-j^jF*iW z7%!VKFkZG`V7zS0z{o&%k)Ohk@~O zKLg|C2@H&vCo?c!p2NU+c|HT<<%JB4m$xx6UOvRYc=;RyuOu)qUP)$PypqDec%_wr@k$#552F5FU85pnZV_>{;kb&{a5eCL9#~B!}Twq|la+!hg$`uC2E58{SuPQMx zUd?4-yqd?rc(ss$@oE(VQ)h!H+SGO`SUfsvQc=aFy zK#R zO_+i4ng|2qHCYD6YibOP*L)cmuf;JiUQ1wLyq3hkcrAs2@mekeh763? zjTsoPn=mk5w`E|w?!dr!-HCzmx;q2obx#Jy>p={R*FzZ?uZJ@*UXNj5ydKBEc)gr~ z@p=OTmL{xum5CVy#AYk@dgV6;|*2@#v2?Aj5mZC7;nfhFy4@7V7#Ho zz<5K8f$@eJ1LF+~2F4rK42(BI7#MHFGBDnVXJEXMz`%GTiGlG(HUs00JO;)a1q_Tg zDj67Wv@$T>XlG!&(Z#@cV?6`ojg1V9H#Rdc-q^;#cw;{Ug z1LKXi42(BEFfiWu#K3stD+A+=9}J8)85tOF>M=0hG-qJEX~n>J(}scZrY8gA%}@r$ zn~4mJH&YlGZ>BLY-ppiRyjjM;c(a0m@n$0fC2F9DG z7#MF}W?;N|je+sz4F<-W4;dJ5zGYy%`JRFC<|hWmTjC6iw-gu{Zz(Y_-qL1Zyk)|` zc*~4|@s>FQ<1GgU##_z|jJI4E7;gnKFy4w{V7wK>z<4W_f$>%b1LLhM2F6>(42-wx z85nOhGBDn1VPL#Jq7;imiV7&E$f$`Q$2F6=&7#MH8XJEX|!oYZ&oq_Q-7X#yM9tOtSybO%D#TXcG zOENItmS$kQt-!!|TZw`3wl)LfZ9N9Y+Xf7bw@n!sZ<{kP-VR`3ydBBFcsrVb@pcRY zQFy3xwV7%SIz<9fxf${bf2FBad85nQRWMI6#j)C#^E(XTi z#~2uIUt(aqeUE|h_5%jS+m9I-Z$D#Ty#11a@%9@A#yh+WjCc4L81D!&Fy0YiV7w#F zz<5W2f$@$q1LGYP2F5$~42*Z87#Qy)Gcew1VPL$|%D{N1gMsl*Hv{9HJ_g1+(-|1= z%wk}?Gn;|&&Nc?dI~N%k@7!Wwyz`rZ@y;Ix#ykHR81FJMFy3WlV7$x6z<5`Xf$^>o z1LIv?2FAM{42*XJ85r*tF)-dOW?;Nq#=v;Dl7aDV4FludRtCnq9Sn?jI~f@7E@5E2 zyPtva?g<9QyYCqo?};%m-m_(3yw}0Nc(0Rz@m>!D?-K*#z26Ls z_t_a3?{hLR-sfRpysyf@cwdi!@xCDg<9!nb#{1?BjQ6b=81E-CFy60YV7%YJz<9rt zf$@G11LOUv42<`uF)-er&%k(p1q0*#^9+pl-!d@X|Hr`ifPsPW0TTn`0~Q9x2fPf7 z4+Iz(9|$opK9FW$e4x(2_&}3^@qrEl2f1LK2!2F3@I7#JT+W?+0Uje+sOOa{gWvltj3%w}MGFo%Kh!F&eB2a6aOA8cn} ze6Wjw@xfjO#s~Wu7#|#9V0>_rf$_l^2F3^H7#JU1W?+19m4WfWJqE@H4;dIAJZ4~g z@PdKy!7B#Fhs+F&4|y0EAM!CUKICU$d?>-d_)w97@u3z2<3no(#)q~Hj1TP@7#}(^ zFh2BRV0`Gy!1&Ogf$?Dk1LMOK2F8bJ42%ym85kd)U|@WBih=RrX$HoJ=NK3tUT0u@ zc#DDY;cW)ShxZs5A3kJYeE5Wc@!?Yj#)mH$7$3f5V0;L&|1|^S!*>jf58pE|KK#JI z`0x`0<0Ezk#z$NXjE{I37$5O7Fg_AsV0vfXgUMqqnQkh zkLEBiKAOkC_-FwG*pY$pu@?j5<6s8H#~}=ik7F4aA15#{K2Bm_e4Nd|__&;b@o^;sb}_ z7$2WuV0?U)f${MT2FAy?85kemVPJfGmx1x|eFnzI4;UC9KW1Qj{Dgt=@mmJQ#~&CN zAAe+EeEf-l@$qK{#>d|n7$5&+V0^;I!1zRvf$@n51LG4h2F54i42(|{7#N=@GcZ0; zWng@w#lZMPhk@~lDFfpZ3kJp~Rt$_!>=_uJI5IFkiDF=UlFY#PB$a{jNg4y=lY9oo zClw5gPZ}8*pY$;>KAFhC_+%0T<$Ctv%3t8&z>|z#uuv@7+}Ftm zv5$fA#bpM@7uOgVU)*G1d~utB@x>hm#urZ+7+<_#V0`h4f$_zA2F4d385m#uVqkpn zmx1xce+I^vEDVe<*%%mKDl;&?RApd%smH+h(vX4ir4<9?OKS$kmo5y9FMSypUzRX1 zzU*aSd^wMS@#O*r#+Qp27+)@7V0^ijf$`-A2F9107#LsfW?+1IoPqJ>Ne0H3XBZe? zX)`ds(q&+LrN_Yd%8-Hal@$ZyD_aJ}S9T1HuN)Z|U%4!?1LLa#2F6!K42-Xe85m#HFfhKV zXJCBQ$iVojje+r12Lt1)i42UdrZ6zRn#RERYBmGotGNt}ueLETzS_^g`05}7zif_&R}s@pUo-gFuty5V0^uRf${Ys2FBM*7#Lr#Wng^0je+s?b_T}R2N)P%A7)^D zeUyRm^*IK{*S8oLU*BP1e0`sR@r@n>;~RYj#y1uWjBl(N7~j}2Fut*8V0`1i!1%_A zf$@zq1LGSv2F5q;42*9A7#QCKGcdjhVPJd{%E0(0jDhh@Bm?7{7zV~Sg$#^uN*Ea5 zlru2CsbpY$Q^mmerkR29O&bH_n+^uXH@ysuZ~7S+-^^fOd^4MY@y%QY#y5)?7~d>m zV0^Qef$_~T2F5oh7#QE2WMF)AiGlIWZ3f0SPZ${Ad}LsJ^M!%&%~uA-H$NB{-!d{V zzGY!xe9Okb_*R;M@vS-o<6C0}#<%tijBmXe7~lFbFuo07V0;_Q!1y+df$?o51LNB& z2FAD542*B<7#QC+GBCbvVPJgQ%fR?{0t4gQi42TyH!(22-ORxFb{hlZ+no%IZ}%`T zzCFso`1S+?85rL?F)+S&VPJfp$iVnMnSt?r4g=%+dju#u_1LLO&42+*9F))6b&A|9+E(7DIRSb-u)-W)B+RDKAX*&bs zrzZ@IpWZSse)_<`_~{b^GVEm%T!1%?Gf$@tm1LGGD2F5QT42)kA7#P3gFfe|pU|{@G#lZNbmVxn0 z0|VoiW(LMDZ48WGmNPJZS;4^gWi8x0EFn)Q! z!1(1c1LK!x42)l1GBAGm#K8FFD+A+~Zw!oI#TgjCN-!{fm1bc4D#yV1Rgr=5s}=*} zS6v3iuX+rOU;P;vzXmWcehp?|{2Io<_%)J&@oN$TmVxn`9RuSx2L{G(jtq?7oEaFu zxiK()b7x@u=E1=D&69!gn-2ryH-84kZz&9n-_jWvzhyBne#>EC{FckW_^phA@mnPW z&cOJ?gMsmfCj;XTF9yaRz6^{%0vH&7q%tu6$Y5ank5^M{%B@k{L#a}_@keJ@yA34#vjud7=O%QVEnO_f$_(7 z2F4!;7#M#XW?=krhJo?NSq8=**BBUo+-G3?$;QC=Q=WnGrvU@wPa_7#pC$~9Kg}2z zf7&xJ{&Zqs{OQ8L_|unx@n<9hF#g=n!1(h31LM!b42(a|Ffjf+ z&%pTe0t4gE%M6S^uQ4$Gyve}$^A-c+&$|qaKkqRx{sh_efPwMnV+O{bPZ$_~K4oD1 z`J93A=N|^fpZ^&ce=#vI{$gQZ{Kd+^_=}H$@s}V2<1b+b#$OT)jK8E97=I}6U$Yn(e=TNU{I!gM@z)9l#$Ov57=P_$VEnb8f$`TN2F72v z85n;(VPO3AjDhjja|Xs=FBuqrePUqz^_79~*LMcS-wX_lzj+uKfAcXg{uX3l{B6X* z_}hem@wXWR<8ONg#@`+cjK4h@7=H&bF#Zl@VEi4XUS8w2AXP6oz5+zgC=co-P}h%zw#kzio_ zBgMe@N1lQ4k0Jx(A1wyPKe`NzfAkp`|Clf^{xM@<{NvBS_$Pva@lO;3il1LL2`42*xKF);p_!NB-uEd%49oeYeBjxsR* zxyZoy=Pm=|pZg4qe;zR~{&~v4_~!)!84Qg73K+b|C$*X|FtnN{%dDo{MW(2_^*?J@m~)EG2VEng=f$`rO z2F8DD85sXD2FCw#42=I>85sYEF);p*U|{?o#lZMKhJo>a zDg)#H3m>9n^FflPRFfs8nFfj=+FfoZRFfoZUFfpkxFfpkyFfr*fFfkc2 zFfrLNFflnWFfn;DFfn;EFfmmyFflbUFfp|-Ffp|;FfsKrFfq+$U}Bofz{IqGfr;rk z0~6B=1}3JD3`|U47?_wq_WWRAV*1Iz#PpkiiRljm6VrbNCT0c(CT3;^CT11}CT3O! zCT0!>CT4C1CT0Z&CT3*@CT2ATCT0x=CT2|rCT1fBCT3FxCT4R6CT1H3CT2SZCT4dA zCT1@NCT1T7Cgwl}CgxxUCgvOlCgxHGCgySmCgutTCgw&4Cgv^%Cg#ZuOw0=yn3xwc zFflJ-U;w27=H(1b%o`Y(m^U*pF>hsHVm`&d#C(l`iTM!&6Z1O;CgxuZOw4~6n3(@F zFtIQ(FtM;QFtKnjFtKPdFtKPcFtO+|FtHdgFtHdjFtOM$FtOM(FtIo=FtJ24FtL;| zFtOA#FtIFPU}9Owz{IkIfr(`~0~5s6We13Cbp*xOl;2>nAl!0FtNR6 zU}Ag2z{K{Jfr;%M0~6av1}3&I3{32t3{31i3{33&3{32T3{31o3{33O3{32D3{30_ z3{32*3{33m3{30>3{33C3{32%3{31+3{31c3{32i3{33N3{31P3{33l3{30=3{32W z3{31*3{33J3{32+7?{|%GBB|pV_;%G!NA0Rih+s!3_%bkY1TZjh1T!#k z%wu5Un9sn(v50|*V>JU4$2tZkj*SdV99tNeIJPn{acpB?;@H8!#IcisiDNed6UROV zCXW3KOdJOom^cnHFmW7VVB$E=z{GKffr;Zj0~5z11}2Ut3``tP8JIZUF)(p_WMJa> z%)rF)gMo?T7XuR~GXoPR8v_$32LltQAOjPpECUm#JOdM_5(5*bH3Ji;3j-6UI|CD^ z7XuTgF9Q>200R?eIRg{t1O_I~nG8&vvl*B;=P)pFE@fciT*tt~xt)QD^Be;c=Y0ky z&W8+4oR1lpIG-{walT_<;{3?K#QB+liSrKw6Bh>q6Bic)6BjQ76ITQS6IUby6IToa z6IUt&6ITWU6IV6^6IUJs6IVV16ITHP6IU?<6ITfX6IVF{6IT@j6IV3@6ITrb6IU$* z6ITNR6IU|>6W0s|Ca&2GOkDFAn79@&FmWwpVB%WEz{Itdfr)E90~6O41}3g;3`|`6 z8JM^ZF)(o*VPN7q$-u;Qnt_Sy2?GoG8K8!#|&TQV?lyD~6wyE8CxdoeI^uVi52UcK%)rDW%D}`U#lXZP!@$I2%D}{9$H2tnz`(@g$iT$o#lXZ9%)rDG!@$H- z%fQ6bz`(@Q#K6SU!obAS#=ykW$-usG76TK{90n$yr3_3w8yT2* zHZw5sY-3>JInThvbAy42=N1DK&us=Kp1TZ8JkJ=IcwRCv@w{eW;`zeB#LK|I#LL9M z#LLRS#H+@@#H+!;#H+=?#B0pJ#B0OA#B0mI#Oubu#Oukx#Ouw##2doE#GAmt#GAyx z#GA^%#M{Nd#5qB0@D~G<5HkalkQf7#kU9gCkR}6@kTwI8kS+t0kQoD$ zkR=0?kTnC7kOu>kPzVE)Pyz#!P%;CPP$~nHPzD2&&}IfEp)CwdLfaXbgbpw;2_0r& z5<14fBy^I2N$3;3plQ0VdlQ262lQ1U(lQ16xldu2-ldvQMlduc}ldv2E zldv)aldviSlduy5lduZ|ldvxXlW+h7lW-&hlW-IRlW;NvlW-0Llkj8)CgG(FOv2k3 zn1pvQFbVHsU=rTLz$AQ>fl2rT1C#J61}5Rl3{1lJ8JL70GB620VPFz*W?&L=V_*_- zXJ8WXVqg*pW?&KtV_*^qXJ8VEVqg-9WndCXU|)-o`OtY=^n*}}jivWnSn`Eje$v2gMmrZkbz0mgn>!ajDbnio`Ff!n}JEx zmw`z%fPqOglYvRJh=ED8gn>!4lz~aKoPkNSfq_Z1nSn{Pm4QjLkAX>a76X&$90n%Q z`3y{=2N;+{4>2%_9${b-Ju-qE8u^MBgzmiT+|>68*!# zB>JC$Nlb--Nlcf4Nlc%CNz8(QNz9RfNz9pnNz8?TNz9jlNi2YYNi2|oNi2?mNi3a# zNi36rNvw#0NvxECNvxcKNvwf^Nvwx~Nvw~7No*nmlh^|WCb5SMOk%GXn8e;PFo}I& zU=sVtz$EsGfl2HO1C!WS1}3o|3`}A_8JNVG7?{La8JNV`7?{M_8JNU57?{Ml8JNWR z7?{MB8JNV?7?{L08JNVi8JNU%7?{LO8JNT^7?{MZ7?{NE8JNT!8JNVq7?{L;8JNWV z8JNUF7?{Mv7?{NK8JNT?7?{MX7?{MX8JNUd7?{L+8JNVUF))cQW?&Lu#=s=LoPkMv z6$6v_W(FqlZ46A}I~bV6&oVHH-(+ACf6Bll{*i%6{4WEO_Nn#TNlf-5QCW$Ky zOcGZam?Um6FiG5IV3N4Uz$EdUfl1;O1CzvS1|~@%1|~^M1}4cC1}4c?1}4c41}4dg z3`~+!7?>odGcZZcVqlV-&A=o%hk;3Q9s`r)dn{ zm?YmaFiE~=V3Pd8z$E#Nfk{f3fk{e~fk{e^fk{e{fk{e>fk{f6fl11Qfl11ifk`Tb zfk~>Afk~>Ifk~>8fk~>Gfk~=`fk~>Jfk~>9fk|o-1C!J|1}3Qm3`|ms8JMJ*7?`A4 z8JMKm7?`9v8JMJn7?`9*8JMKS7?`9b8JMJH7?`Bx8JMIM7?`A$8JMJ17?`A08JMKi z7?`9r8JMKC7?`BB8JMJX8JMJ<7?`A88JMI!7?`BJ7?`BJ8JMI)7?`BP8JMIa8JMKw z7?`9J7?`9p8JMJV7?`B<7?`As8JMI?8JMK|7?`A|GcZZdWMGn>#lR#Da@!gPCh4sV zOwzX)n56GAFiAgPV3K~sz$E>Ifl2xq1C#Vi1}5n@3{2AR7?@<(8JJ`Q7?@;)7?@&n0+ z>&L((8_2*U8_d8Yo4~*%o5R2)Tfx92Tg|{ETg$*C+rYpi+snWt+t0uxJA;8qb`}GZ z>~aPs*_8}TvYQx~WVbLd$v$LYl6}R%B>R?uN%lPhlk5)$COH-cCOI|+COJ+9COJI@ zCOLBkCOJz6COIbtCOK~gCOKaQCOJO_Cb@71Cb=jECb?(^CbceCb?n;Cb=30 zCb@bBCb>oiCb=#KCb?-0OmZ_AnB-yz$EvDfl2N=1C!h@1}3@R3`}x= z7?|Y#F)+#fXJC?NVqlVIW?+)%VPKNyXJC>SU|^CLWMGmPVqlUNWnhw*U|^EhWnhvw zU|^CrW?+&xWnhvwV_=fEXJC?dVqlVYVPKN?WMGo_W?+&JVPKLEXJC?#WMGnyV_=d` zU|^E3WMGnSVqlVQVPKMPWnhx;V_=e>&cGzUfPqPVEd!JM1_mbijSNikTNs$+_cAca zA7EgTKg7T!f1QCz{xJiS{Cfr_`QHpo3hWF_3Y-i~3Oo!<3j7RA3PKD_3Ze{53T6yU z3g!$<3RVnE3bqVP3JwfR3Z4v13O)=>3cd_X3V94n3i%973PlV|3Z)E83Ka}Y3XKd* z3M~vw3at!G3dz@+ekfl1*b1CzoR1}25C3`~kL3`~m73`~ky3`~k!8JHBeF)%6aWMEP}#K5F@ zlz~a{1Ot=eX$B_6GYm|MXBn6j&oeM7USMESyu`qyc$I-k@frh@;&lcl#TyJvinke< z6z?%GDSl>PQvAlir1+D8N%1!Wlj0u+CM8w|CM6CACM7NgCMA9bCM7`zCM78bCM8)0 zCM9_WCM699CM6RFCM7clCM8P-CZ!+-CZ%WwCZ#wACZ$9MCZ!YxCZ%)+CZ#?GCZ**J zOiCLVn3Og#Fez=fWnfZPWMER(WnfY^U|>=WnfZnU|>>iWMEQmVPI13WnfaCz`&$D znSn`p8UvH^bOt8n84OIyvly6^XEQJ<&tqUxUdX_tyoiBGc`*Z%@)8Cn<>d@a%BvWd zl=m|*DIa2BQa;MSqjVFo5u z5e6nzaRw$;1qLQnWdQBL*f_V+JNw69y(# za|R|=3kD`tO9m!YYX&CO00t)2Uo2nHtANCqa=BnBqcR0by1bOt8X90n%U zJO(D!at0>VDh4Li8U`lSMg}I;W(FqJISfpyOBt9{moqS_u3%tN1-We(1C#1u1}4=f z3{0xe8JJXGGBByWW?)i%%fO`ifq_Z&GXs_=Lz#g|!-j!L!g6kuS|G-P1XG-6=VG-Y7Yv|wP; zv}Rz^bYWo9bZ21F^k87p%w%BF%wk~D%w=HGEMQ>LEM{QRtYKi%tY=`-Y+zv0T*$zr zxrl*Db14Ip<_ZQT&D9J{np+r{G`BM_Y3^WP(!9^Wq{YU-q!q}(q!q-#q!r4*q!q`& zq?O3Pq?N+Jq?OLVq?N(Iq?O6Qq?OIUq?N@KNy&_85x+gxfqzV4H=lU zofw$3T^N|O-58j(Js6m@0~wgKLl~H}!x)&f;~AK=vl*DQa~YVl3mBNR&oeM-Ut(a= zzRbX+eT{)h`#uAc_9F%+?Z*sE+Rqr6v|lnXX}@7$(tgXpr2T<`N&6!MllCVDChgA* zOxoWVn6$q$FlmGA|HZ(h!_UB^BgDX@Bg(*}BhJ92Bf-F=qsYLdqr$+XqsG9bqs_pi zqszdgW5&RwW68jzW6i*%1<t;FzLKuVAA={z@*E-z@*E}z@*E{z@*E^z@#h1z@#g~z@#hBz@%%zz@+QQz@+QU zz@+QKz@+QOz@+QXz@!_*z@!_(z@!_?z@(eWz@(eaz@(eUz@$5wfk}5N1C#D_1}5EE z3{1L<8JKj}Ffi$^Wnj`h$H1g}fq_Z)A_J4|6$U2VYYa@fHyN08?=UdwK4oCi6JlV} zlV)JjlVf1gQ($1y(`8`Nvt(e>b7f%C^I%}o^I~Aq^JQSti(+8Xi(z2WOJ!ivOJ`ux zD`8;LD`Q~Nt7l-+Yh+;3TgSkpx1E7WZx;iT-W~=fy`v0FdKVd(^e!_n>0M)B()-Q8 zq|d^@q|e5{q|eX5q%Xn1q%Xz5q%Y0Dq_4ujq_57vq_4riq;JZ=q;JQ-r0>AMr0>bV zr0>JPr0>VTq#w?}q@T>dq@T*bq@TgSq`#hlNq++alm1QyCjC7OO#1s7nDh@YFzFv; zVA4O#z@&eKfl2>31C#y<1}6Q}3{3iG7?||WGBD|1U|`a}%)q4of`Li@H3O6WI|e5G z4-8ED9~qeRe=#uW|7Bp(|Iff=z{0>}z{bF2z|X*BAjH6AAi}_8Aj!aFAkDyJV8Xy; zV9UT{V9&s0;K0CS;K{&b5X8V_5Y513kio!Ykj=nkki)=akk7zmP{F`tP|d((P|Lt% zFo}W5U>*aL!72tOgKZ2<28S4!4301`860O|GC0M+WN?;&$>0J5lfg#@CWB85Oa@;W zm<)a}Fd6)2U@~N3U@~N9U^3)jU@}x@U^290U@~-PU^2{LU^2{PU^2{MU^2{SU@|OX zU^1*`U^1*@U^1*{U^1M=z+||Ufyr1}4J?3`~ZP8JG;8F)$gvWMDG<#K2_u zm4V6d8v~P(AOn+;4g-^sDFc&H7z2}0I0KVW6a$k{ECZ8K0t1s#CIgdE4g-@>E(4QM z2LqGQVg@FoH4IEfml>Fhelai^D>5({=P)oC=Q1!E7cejxS28de*Dx>{*E28~H!(07 zH#0C9w=ggnw=pmow=*yqcQP;;_b@OS_cAaU_c1UT_cJgVPhwy)p31;vyo!Ozcr62y z@dgGa<4p`q#+wV;PuCix`+pOBt9y=~4zJ(|rs~rpFnWOiwZ} znVw=`GQG^eWO|2z$@D1$lj%1GCet4bOs2mWm`wjLFqyG3Fqv^MFqv^NFqsK6Fqz3S zFqtVbFqx?^Fqt(oFqyS6FqyS8Fqw5RFquteU^1J=z+^U^fyrzZ1C!ZY1}3uw3`}MV z8JNtLFff@dWneN}#=vB@oPo(~6$6vmY6d2=H4IE<>lm2K4l^*B9b;fJJITOgcAA07 z>LyOy&{{ zOy*JyOy<%IOy(*KOy;@_Oy*_`OyCvOy(5~Oy(^NOy+G2Oy->oOy-Lin9Nr*FqyAqU@~9Fz+}FGfysO)1C#k4 z1}5`;3{2+78JNs3GccK7WnePD!N6qxlYzmrZX^E%wS-$n90Co zF`I$OVh#h7#e4=PivhES*&GXvRKE!WU-!s$zl@&lf_mBCW})HOcrMu zm@FnS$%==8$%>zW$x4WU$x4)g$x4oa z$x4xd$x4ZV$;z35$;yR+$;zF9$;yj?$;y|3$tsM2$tse8$tsG0$*P)x$*P8d$*P`# z$*PHg$*Prs$*PZm$!a14lhq^!CaawcOjZvVn5?xKn5=aen5^{~n5-=rn5?ZCn5^v> zn5-Qcn5>-`n5>-{n5n5;7y zn5=Ucn5^>|n5+vKn5>H!n5?TAn5^pplECZ8`8UvG! z1_P6gCIgd=5d)KrH3O543j>o)G6R!M2?LW&83U6|1p|{!6$6t^GXs-N8v~O~2LqGM zR0bxSg$ztKYZ;hqHZU;RY+_)t*~-9V%fP^7%gDfF%fi59%gexIE5N{HE6l)TE5^WN zE6%`VE5X2IE5*QME6u=UE62cOtH{7)tHi)$tIWV;tHQu!tIoh=tHr=%YtO)B>%_oh z>&n1n>(0Pr>%qWe8_2+98^XY38^*w78_mFE8_U3Co5sLoo5{dro6W#vTfo3%Tg1R* z+t0vcJCT9Ob`}GZ?OX;X+hq()w#ylqY&S44+3sXuvVFk7Wc!bS$&R0a$xe`g$xfJo z$xf7k$xe=e$xe}h$xfMp$xerX$SInC#Xt zFxjnVV6xl5z+|_Xfyr(g1C!lO1}3{*3`}-=8JO($F)-QfXJE2Bz`$g8n1RXe2m_Pd zQ3fWv;|xr8cNm!L?lUmiJz`+8d&0nE_mqLj?i~XIgE|9~-A4u{yUz?vc0U-H?0zvY z*)uaR*|RY)*>f;3+4C|m+4D0n*=sN`*&8x2*&8!3*_$vh+1oNO*}E|?+50mv+2=4Y z+2=7Z*%vY}*%vb~*_Sdf*;g^B7*-vC(vY*SqWIvyQ$$k+7 zll^W6Ci^1{O!mhZnCy=;Fxj7EV6wl&z+``wfyw?l1C#v&1}6JA3{3X#7?|uoGB7y^ zF)%rZFfciYF)%sEGcY-5Ffci2GB7z9F)%rpGB7!qGcY+gFfcjzFfcjzF)%pVih;>tEd!Io1_maFjSNfA9Tlfz2}CWqGyOb%}tm>j+`Fgg5SU~>4y zz~u0sfyt4Pfyt4Jfyt4Vfyt4dfyq&Xfyq&ffyq&yfyvQ=fyvQ|fyvRDfyvQ@fyvRA zfypt9fyptMfyptAfyptQfypt8fyuF$fyuFqfyuFgfyuF#fyr?u1C!%Y1}4Xi3`~xD z8JHaRGcY+GVqkJS%E07!f`Q5LGy{|48wMuFw+u{<9~hV%KQk~neq&&A{LjGT#Kgel z#LU3tq{6`Dq{_hLq`|=Cq|LzOq{qPIWX{0kWW~VbWX-_j6vM#e6wAQml)%8`l+3{7 zl*Yj1l+VEARK&pKRLsESG=+i5X(|Jg(+mbCr`ZflPV*R;oR%{%Ijv$~a$3#6}Epld}s0ld~%Wld}f{lXD;glXD0IlXEx&lXDaUlXEl!lXDCMlXDyclXE-+lXDUS zlXEHqlXDsalXE%)lXC_GlXEr$lXD&elXEizlXDvblXE8nlXEu%lXDLPlk-#tCg&Lp zOwO|yn4IS`FgY(|U~*o?z~sD^fysG21C#R>1}5ii3{1|K8JL`}GB7#cV_a*=__j+Hlgm>ECYKisOfD}Om|R{lFuA;8U~*+-U~*+)U~*+=U~=VT zU~=VRU~&~^U~&~>U~-jUU~-jZU~-jbU~<)9U~<)FU~<)EU~)BLU~)BKU~=_kU~&y( zU~-LMU~-LQU~)}jU~GcdWX zU|@1x&A{ZkmVwE28v~Q;AqFPbBMeNg#~GMhA22YvzGPr>ea*n+3Uc2&1}4|<3{0-S z7?@oDFfh5XGBCLbGBCLbGcdV{F)+DVGcdW?GBCN>GcdV1F)+D#GcdV@Ffh4=GBCN7 zF)+DRFfh4QGBCN-Ffh5*F)+C`GBCNdFfh6GGBCOAVqkJR%)sP!jDgAR1Ot=XRR$)v zhYU<^ZyA`}J}@x3ePUp8`^v!N&cwjv&ceXt&db2$&d&1r9?!t!p2Wc9p2EQ7p3A`GUdh1ZUd_PdUdO=XewKmB{Tu_6`*j8;_gf51?splO z-0v|kx!-4Ca(~Fc}&hY|ymhbjY;hdKk3hYkaihaLlyhdBe2hZO^phYbUh zha&@%hcg3{M+^g#M=Ar8M>+$OM+O6vMB;M>7MH#{>o@kI4*79#a^YJf<@+ zc`RUH@>tBk<8hS&%osMf`Q5FH3O5^TLvbtPYg_6Ul^FY z{xUFmGcYiDGchoEb2Bh`i!(5JOENHd%P=r`n=&wY+c7YCJ2EhNyD%_$yE8C(doeJ1 z7cww;cQG(|PiA29p31=FJ&l3Mdp-k`_X-9k?~M#h-j^7dydN_#c|T=f@_x?1!nllNB!ChzYIOg=0OOg;h(Og=IUOg{1qOg@SXOg<_MOg{MxOg;q+Og_a7Og=RX zOg{AtOg>EvOg^m)Og?Q4Og`-lOg^0qOg>!1}2}43`{;-7?^yvF);aTXJGOO#TZQnEaP8F!?WIVDewjz~sN1fysX_ z1C##&2BrXh2BrW32BrW>2BrWR2BrXc2BrW72BrW-2BrXI2BrWN2BrXY2BrWF2BrW* z2BrWL2BrX02BrWr2BrXW2BrWj2BrX82Bv@@2Bv^e2Bv@r2Bv^02Bv^$2Bv@%2Bv^? z2Bv^a2Bv^K2Bv@l2Bv^Y2Bv@-2Bv^I2Bv^!2Bv^k2Bv^{3`_yb8JGfAGB5?KVqgl` z%)k_|hk+^JC<9Z#B?hK|s|-v5*BF=rZZa?hJYrx9c*?*O@SK4u;12^+AO{0epa=s~ zpaKI^pbi65pdJHLpdkZOpa}z0pg99mpcMmCU^D|$U*Zg zU?BrjU=agT;A94-z$pw&fzuh70%tKW1G4Q}9v-rr_laOu;J|n1WX`Fa>X6U<%&Oz!bcb zfhqV915@xh2BzQ(3{1h78JI$h7??s#8JI%M7??sV8JI$x7??s_8JI%c7??sl8JI$R z7??u*8JI!>7??tW8JI#s7??sr8JI%C7??sL8JI$%7??t$8JI$18JI$f7??sz8JI#U z7??t;7??t;8JI#^7??uZ8JI#k8JI%)7??sPFffJ8WMB%J!@v|WkAW#2BuJM2BuIx2BuH} z2BuI+2BuIM2BuIs2BuJT2BuJB2BuI`2BuI82By$J2By#`2By#$2By$h2By$>2By#q z2By$#2By$l2By$52By#^2By#!2By$<2By$83{0Wx7??sgFffH~W?%~4!@v}Jlz}Pq z7z0!2a|Wi+mkdmyuNas@-!d?TzGq+x{lvf&`jvqx^dAFLm^K4bmUCASP%nKSR4aWSRw;cSTX}sSQ-OUSTO@rSSbTjSRDgXSOWu7ST6%pSU&?(*bD}y zuvrXDVaFMm!Y(i{gOyTAXOyLd;OySN9 zOyO<}OyTYfOyM33OyOP(OyS-POyPbEOyT|vOyNNcOyR){OyMC6OyS`SOyN-sOyT(q zOyNZgOyQ*rOyT7WOyLy_OyP|TOyMmIOyO+|OyS)OOyRu@OyScQn8If=Fon-%Uh{GB8ClF)&54GB8E5F)&3cGB8EjFfc{BGB8D^F)&4@GcZMFF)&5uGB8CJ zFfc_{GB8EfFfc{dGB8EXU|@>e%)k`6hk+^bE(25KJqD)8hYU=SPZ*dYpEEE;eqdmV z{LH`<`GtWgil2cgN{fLh%9w#EDvE(As*!;yY6SyR)OiM`s5=ZyQTG{`q8>3YMZIQV zih9Su6!n3DDe5Z&Q`C0`rf3!hrf7Bsrf4n(rf6XXrf4w+rf3NUrf69Prf7Kvrf4?? zrs%Z{OwsEZn4&i@Fhy@>V2a+uz!bfofhqa`15@;22Bzp^3{26-8JMC^F)&4+VPJ|r z&%hLYiGeBlG6Pfe6$Ym0>kLfMw-}hBZ!<7O-(_HmzQ@26{eXcf`XK{T^kW95=qC(J z(LWiOqW>^3MgM1DieY46ieX}4is5Epis55miVY8JJ@87?@(K7?@()7?@%w zF)+nWVPJ}#&cGBqi-9S2E(25S3kIfGkeP27m}0*&Fvb30V2b_Cz!dwBfhqPs15+FW z15+Fm15+F`15+F;15+Fa15+F)15+Fq15+F~15+Fy15=zJ15=zD15=zP15=z115=zH z15=zn15=y@15=ze15=zW15=z615=y}15=zY15;c815;cO15;c$15;ci15;cX15;cD z15;ch15;cJ15;ct15;cd15?~|2Bx?L3`}vy8JOZ8GBCw`Vql8wje#ld2Ln?) zBLh=B3jQ{0#=C z_?rw&@pl-Q;_osr#ouFKioegm6#s~UDgG$~Q~WOmrue@MObHAOObJX3ObN^kObI*; zObPr9ObLPvObKEPObHSUObLn%ObIFsObKcXObPl7ObONuObNCOObHGQObL+;ObJO0 zObMwBObHnbObOWxObK}mObJsNm=ZQIFePkZU`p7_z?5)+fhpl615?5&2Bw6|3`_}k z7?={78JH548JH5i7?=`+8JH3i7?=`s8JH5Q7?=_}7?={LF)$_GWME3X#lV#Kn1Lzr z83R+|O9rOIR}4&vuNjyU-!d>IzGq-c{J_AJ_?dwz@e2b};#UTy#BU5ti9Z>b68|tT zB?&SxC5bRFC5baIB}pyoCDkx6CDk)9B{eZHCABgzC9Pp#N;=8FlysVb zDd`FWQ_^(?rlbc9Oi2$Jn37&GFeQCvU`m!^U`lpiU`kGBU`k%az?8h2fhl5m#~GNCPcbkhpJiZ5 ze#F3({FH$y`2_=0@+$_Wdl)}Kkl)}ltl)}Tnl)}fr zlp@Z+l%mYQl%mSOl%m1Fl;X(1l;Xv}l;X?4loG(eloHIqloH0klv2yUlroEfDP;}= zQ_4~Xrj!*7Oeq@~m{K+|Fs1BfU`jc{z?AZufhm=hfhkpofho0|fho0ufho0`fho0x zfho0}fho0%fho0@fho0*fho10fhlz&15@fG2By?03{0uh8JJRMFfgUgWME32#lVz0 zmw_pD0RvO&RtBcj9SlsVyBU~L_cAc0?qgs|JO}^o)XNM^sdpHd zQtvY`r9Na}N`1z_l=^~!DUFqZDUF?hDNTTZDNUGxDNTlfDNUAvDNT)mDNUb&DJ_hF zDXoBkDXo!#DXp1-DXo=(DXpD>DQyA+Q`%$(rnIRHOlgZ4n9|lUFs1EcU`pG|z?8P1 zfhp|}15-LL15-L515>&n15>&b15>&z15>&J15>&(15>&R15>&x15>&>15>&N15>&- z15>&l15>&_15>&I15>&o15>&Q15>&=15>&W15>&`15GHl%>ePl%>VM zl%>nSl%>zWlx4xdl;y&}l;y_2l;z35lr@8aDQhMJQ`RB|rmUq5Oj#=!n6g$fFlDV` zV9HvS zdkjoj4;h%U9y2gyJz-$Vddt9+^?`vY>k|W0)^`S`te*@_*-Q*f*{lpq+3XBV**pwP z*?bI4+3E~T*#-Ma^+3^fa*+~pc+1U(C z*?A01*#!(t*{uvr*%KL8JKdi7?^Uh8JKc<7?^T;8JKb= zFfipzW?;&h#=w*_pMfc75d%}sVg{z1Qw&Tw9~qc(B^a1;?HQPIyBL^qyBU~r`xuyV zr!z3+&SGH7oy)+KyMTcycOe5)?ji=J+$9W5xl0+Ca#t`g<*sI6%3Z_2l)ILJDR&(M zQ|?9vrra$IOt~i+m~ziBFy)?SV9LG7z?6H5fhqSk15@rj2BzEx3{1IC8JKdPGce_T zU|`Dq%)pfUm4PYu7Xwr79|op8Nd~4oX$Gb|6$Yj}bq1z90|ur%Lk6ZiD+Z=KX9lLc zEC!~$QU<2HHU_4=4hE*YE(WH&9tNhosSHecGZ>iiW-&13EoNZKThG9hw~>JeiZ{#ek}u2emw(IehULrej5W*{(J_e{1psL`KuV1@>er3<%8U| zmw_q&7z0!OYX+wLcMMGV9~qePKQl1pe`R3G|IWaa|BHbs|1Sem{(lCh0tp7D0!0R< z0%ZoK0v!gX0$m2C0s{u70&51Q0v86R0(SPpf@B7!f*J;< zf>s8mf_4U`f({0zf-VN8g2@a_1=ARq3T7}c6)a?6DpNfvK>TfvK>QfvK>EfvK>MfvIpJ15@EV2ByLV3`~V9 z8JG%JGcXnIU|=fT#lTc}n1QMAC<9aBCkCd%-waHJ{}`Bx7#Ns}I2o9VL>ZWh#2J{1 zq!^fr>=~GfJQ$dYycn2@f*F{KVi=f;;ux5U;u)BVG8mYOvKg3)au}G3DjArHni!ah zS{Rs$dKs9CCNMA+O=4gwn$5sew48ydXe9$v(HaJ(qTdWmMSmEWidh+$ia8jVin$q> zig_5Aig_8BiuoCsiUk;$iiH`NibWWhie(v?iWL}`iWM1{ij^3cij^6diq#mHiZvOS zitQMfiX9o4id`6(irpBPirpEQiUSy!ih~)LibENgilZ2qieng3``|$3``}R z3``}H7??_?GBA})V_+)T&cIZ%gMq1JHv?12J_e?egA7b1rx=(@&N48SoMT`rdC$O9 z@_~V=2By-N z3{0hO7??`mGcc90Fff&|Gcc8LF))?!Fff(zGBA~iF))=$GBA}%Gcc7YFff%VF))>B zGcc9uF))=GFff&wGBA~yGcc8fFff&cF))?IGcc7UF))>7Gcc9qFff&sGBB0ZF))=a zWnd~h&A?Q4hk>c=9s^U^0|utDM+{75uNj!i-Z3zhePCcJ`^&&o&dI=3F3P}EF2TT5 zF2%r9F3Z4Fp25IWp2@&ep2NUYUdq5!UctarUd_N%UdO;xUeCZ(-oU_A-o(IE-ps&M z-p0UG-pRmJ-o?OF-p#;N-owCD-p{~PK8b;;d^rPC`6>pc^0f?1-gn_BjoPnv* zih-%phJmTlmVv3#je)7slYyzyn}Mk^fPtwph=Hjxnt`b@j)AE%fq|(qm4T@;oq?&c zfq|*AlYyzSn}Mmahk>bbDg#sHJO-x92%R9%W#vJi)+Jd5VFl@(cr0 zCscJFTL{6)jJuOs&_FkRqthBsy@cR zRDF_xsrobnQ}qJ|rs_8gOw~Uam}*!Um}&$Vm}-O=m}*2Bm}(>#m};aMm}=x0m}=}9 zm}(ptm};CEm}=Y@m})#3m}-I;m}){9m}eMm}=HDFx6~eV5-^7z*Mu1fvILE15?c*2Bw;$3`{l07?^6FGceV>U|_0w z&A?Rij)AG>BLh>-F9xQXzYI(@{}`BRRT-FSeHfT(iy4?|_c1Wl?q^`CJ;cCNdzyi% z_8bFK?L`Kr+A9o9wO1LKYOgUc)!txWs=dj;RC|YksrEhtQ|$u=rrL)LOtp^~m};Lg zFx9?bV51_M*wEe58#y9`YAHVjPlb_`7Q z_6$t*P7F---V99jehf_Y{tQg@K@3dwp$ts*5e!WAkqk`rF$_%gu?$T0aSTlL@eEA$ zNeoQ&$qY>ODGW^YX$(yD)eKDabqq}PjSNin%?wQSEeuTcy$nqC6BwB4CowS9PiJ7N zpUJ>fzledUeklV}{c;AT`ZWwp_3Idz>W?!p)n8y>s=vg*RDYR)ss0WFQ~gs0ruugb zOby%&ObxsYObr4IObtQ|ObsFoOby};ObwC@Obtp5Obx0GObzM`ObrGMObs>+ObvDn zObw0RY+Fg0vvU~1UOz|^pZfvMpr15?8}2BwDd3``9l7?>J9F)%fJW?*Xg#=z9@gMq2x zHv?0{KL(~ob_S+K69%S6TLz{^2L`4_CkCcQe+H(;Xa=UnbOxrzEC!~=90sPwdf}7cww4E@ohAyuiTJc$0yt@eTu1<2?qZ#^(%7 zjh`8q8ox3yHU3~=YI0{_YVu%UY6@gvY6@XsY6@pyYKmZBYKmlFYKmrHYKmcCYKmuI zYD!>WYRY6_YRX|?YRY9`YRY3^YRYF|YARx2YAR)5YU*NOYU*WRYMQ{n)HI2KscA9; zQ_~y{K?bH~DF&uySq7$Nc?PCt69%Sc z2L`5Q9|or82nMF+6b7c|GzO;TOa`Xr90sQ5dxn$I&ZHD6+2YQDm|9gCm|8U$m|8U% zm|C?Mm|Arhm|Arim|FE2m|Be(m|Be)m|9I3m|9I4m|86um|CqFm|6oEm|BAwm|DXa zm|7zkm|7zlm|Bwz|^{qfvI&n15@h`2By}73{0)37?@f=GBC9XGBC9%F)+2MFfg^LF)+1h zFfg?lGBCB7Ffg^5F)+0`GcdLJGcdJ9GcdKqF)+0yFfg?xGcdKSV_<4q&%o5SiGitY zHv?1KJ_e??gA7bJHf!zc9Maq?F<7`+j$12whIhQZ5J7s+Ac9L zwOwUkYP-R})b^HvsqF&;Q`=_-rnavPOl{v7nA-j`Ftsx=FtxKVFtu|sFtu|tFtv*? zFtv*_FttlEFty7uFtsZ%Ftyta> zpMj~vfPtyQn1QLohJmTWo`I>ufq|*RnSrUpje)7dlYyzji-D=bmw~CnkAbPfpMj|( zfPtwan1QJygn_9el!2)uoPnt$hk>ahpMj~Ph=Hl2gn_A}l!2+Ej)AG8k%6hBnSrUJ zgMq1|i-D|kK(ILN@%ahQRr;|K#&2gq&L7??Wl zGca}hU|{O_#lY0@mw~C1fq|)$iGit;g@LJ)mw~BMfPtw~h=Hk7nt`cPoq?%SlYyyI zhk>cnm4T_#kAbN(fPtwqkb$W)n1QJ?hJmRwo`I<|k%6f*i-D=LjDe}Mf`O^Cnt`cv z0RvO#A_k_;r3_4+D;StMH!?7F?qXo-+|9t$`G|q3^ECrg=Q{?b&JPSsoj)0vx>y;Q zy4V?*y0{pax*{2vx}q4Ex{?`~y3!b!x-uD zx~dtNy6PC1y6PF2x*8amx*8dnx>^{Ry4o3-y5=x2bRQCW)U||xscR_%Q`b5M zrml?)OkJB9n7Vc_Fm>%>VCp)|z|?h&fvM{R15?*o2Bxm_3`|`w7?`>~GB9<0W?<_2 z!obw^mw~C9je)6~pMj}chJmSDo`I=bfq|)8nSrTWhk>bEpMj~{kb$Y&je)5px}P&Jb$?)B>i*2Y)cu8lsYjH7sYi@~ zsYjB5sYix^sYjlHsYio>sYjcEsYi!_smGUrsmG6jsV9(usV9VisVAI)sV9MfsVA9% zsV9Yjsi&KPsb>=dQ_oEXrd|~Wre0MBrd|yOrd~q^rd|^Ure1Rfrd}%sre13Xrd}Hc zre1pnrd|gIre0?Trd~G&re1djrd|&Qre045rd}Tgre1#rrrs0=rrvZ0rrsrrrhyrrst7rrvG_rrtgVrrrq*OubVXn0lu(F!gR>VCvn* zz|^~+fvNWp15@v52BzLK3{1UO8JK$SF);P9GBEXtF);N>FfjE=F);PXFfjG0GBEXN zFfjFLF);NRGcfhpGcffzGBEYIFfjEkW?<@D#=z9KoPnut6$4Y>W(KCdZ469(+ZmYp zb}=yZ?PXxN~^0)OU`7sqZlZ zQ{OWNroNX9Ont8znEKu@F!g<9VCwt9z|{APfvN9515-aE15-a215-aQ15-ag15>{U z15>{k15>{-15>{#15>{p15>{v15>{j15>{@15uiF)&RuW?-6V%D^g&ShYlxPXCa;vxp7 ziK`iyCT?e7nz)mJY2qFRrb*lkOp|yRm?nubFinzRV45V&z%)sQfoYN~1JfjV2Bt|0 z3`~=h8JH%iFfdKhWnh|Qz`!)gkb!BE5d+gCV+N*4W(-V|EE$+4`7tm}3S?lK6vDtX zDU5+>QaA(Cqyz@0Ny!XMlTsO&CS@@&P0C?lnpDcbG^v7tX;Kvf)1-O^rb&$qOp|6Y zFil#_z%*$o1Jk5s3`~>OGcZls!N4@>AOq8+a|}$AE;2Apy2QXV=_&)$qfOp|38m?mp5FiqBCV4AGUz%tUGcZk#V_=$`$iOr?i-Bo!E(6o#JO-x8{R~W#ConKgp3J~Bc^U)L)`NqIBb7tzlrA+RDH*wU2>m z>Q)A(sV5njrru&;ntF$UY3e-&rl}7Yn5MpDV4C`dfobYH2BvA;3{2C+8JMOiGcZll zXJDFU&A>Fxoq=guFay)HPzI)H5e!Vzq8XT`#W65VOJrc0mcqa^EuDdB+A0R7X{#BS zrfp$hnzo&RY1%FZrfItwn5OMvV4Aj%foa+S2Bv8T8JMOWVPKkel!0m5F$Sh-#~GNW zonl~`c9wx@+9L+0X-^rLroCWbn)Zr;Y1(TBrfFXon5KPaV4C)mfoa-52Bzr@3{2BG z8JMQ?FfdK$V_=#t&cHNXnSp7#Dg)DW4F;y^jtorGy%?CL`!X<14`5)L9?ZZrJ&b{A zdMyLf^jQo{)8{ZSO<&5uG<^jF)AWrDOw%_pFiqdhz%=~`1Jm@^3`{e48JK36Ffh$1 zXJDF9!N4@5k%4JO3j@=Pb_S*y9Slq}IvJQ|bTcr`=w)D<(Z|3vV3)PBSpg zILp8^;~E3gjGGKhGj205&3MAVG~)vU(~M6HOf$YRFwNv+V45k;z%)~efoY~J1Jg_e z2Bw+H3`{e<7?@_JGce7}WMGEk3Io%u=?qM>W->6% zn#aI2YXJk(td$H*v(_*$&05F6G;2Ep)2zb`OtX$MFwHu_z%=V21JkTm3{11$GBC~h zz`!)?GXvACZwyScWf_=eTQM-rwqanJ?aIJ3+k=5=b|3@O>>viF+0hJ4vr`zDW_L3% z&0fyHH2WL_(;P_#ra4j!Omk!znC7T4FwN0qV49=Dz%)mnfoYBb1JfKs2Bta23`}!O z7?|dmF)+=sWMGoE!$GIe83BbBY<5=9Drp&8cHxn$yU@G^d$?X-)?N)0{2_ra8+QnC7fxV4Aau zfoaZG2Btat7?|elXJDFhf`MtyMFyrhKNy(iiZC$ERb^nBtIohQSCfHht~LYHToVSS zx#kQ^b1fN|=DIO3%?)B;nj6Q!G&hlfX>KwD)7&%$rnws#nC5O`V4Ay?fobkO2Bx_O z8JOlCVPKkjoPlZX2?nOQCmERLo@QX0dxn8&?s*2LxtAE2=3ZuCntO$TY3@}9rnxs5 znC9MQV4C}Zfobk%2Bx{+7?|dQ-1C!xX&w^;(>zuNrg`iPO!IgcnC9^@FwGNZV45ez zz%);WfoYy11JgWZ2Bvuq3{3N!7?|dHGce8bV_=#W&cHM;f`MsXA_LRBEC!}|6B(H1 z&1Ybmw}F9a-X;d7d0QBm=51qOnzx^UY2G0Qrg=vgnC6{jV48Q6foa}t2BvxU7?|eU zGBC||U|^c>$iOt;g@I|lF9Xy300yS{fecLZLl~ImhchtEk78h&AI-otKaPQEemn!y z`~(K3`H2in^HUg@=BF|+%}--snxDbIG{2UCX?_C()BI)zrunT5O!M0qnCAC0FwLLD zz%+jf1JnGO3{3N9Gce6x!oW0tIRn%Dl?+Vt*D)~7-@w2$|0Dy`{7Vc>^RF;4&A-aP zG#}))=L}5qKQJ&Y;ACK0z|Fw4fRBM`fgl6Z0$~QG1)>a03*;D>7AP_>El_4)TA;(g zw7`OaX@M03(*j!trUhXPObg-}m=+{5FfB-8U|NvEz_cKjfoVYj1Ji;c2Brno3``5! z8JHGyGB7RZVPIOYmVs%(dIqKin;4iD>}FtEaD;(r!BGaL1?L!;7F=XtT5y?xX~7)^ zrUfq;m=?TZU|R5&foY))1JgoV2Bw8>3``3>8JHIOFfc9jWnfz9$H25OfPraYAOq9F z5C*1&p$tq5;~1D0CNeNBOk!YKn9RVmFol6>VLAiT!Yl@+h4lS177)X%`QXc7a{qS*{gi{>#fEt=23wCDf>)1re6OpA^%FfBUHz_jQT1Jk0*3`~oz zF)%H<&cL+j2LschpA1Zk{xC2t`p>|$n2CXDF*gI#Vm=0@#rzCRiwzi<78^1!EjD3b zT5Qh1wAhM)X|Xc{(_%LUrp4|IOpEgvm=;fEU|PI~fobt$2Bsx?3`|S(8JLzBF)%H$ zW?))k$H272k%4K63j@;FfBD;U|MR)z_iqcfoZ871JhD>2BxLK3`|Qy8JLzv zFfc9M&cL*ECj-;cT?|Z1_cAaoJ;uPa^dtk*(o+mfOV2VeExo|NwDd9q)6y#pOiQmb zFfF~oz_j!x1Jlx53`|S!GB7Q@$H27oJ_FOzhYU$H25~A_LR1DGW@@rZF%ro58@eY!(C4vbhXQ%N8&& zEnCFEv}`v6)3PHBOv{cjFfBXJz_jcF1Jkn03{1=JF)%HA&cL+n6$8_F%g-<{E&s{Dw1SC&X$30-(+YM5rWGO#Oe+)^m{#a8Fs;yM zU|M0wz_h}IfoX*!1Jep;2BsB03`{Hh7?@T>Gcc`)Wnfy7#=x{9gMn$qR0gIM^B9;` zEM#C>v6z8r#To{t6+0N1R_tP6TCtabX~iQ3rWLOlm{z=HU|R8wfoa8m2Bwva3`{GT z7?@UaGcc{>V_;gz&%m@&hJk6NDg)C>bq1!D1`JFqjTx9$nldo0bYfsy>BqpdGKzs| zWh?{J%6JB*l}QXtD>pJQt=z=Gv~o8C)5?7eOe+sEFs(eqz_ju(1JlZ*3`{GJF)*z> z$-uPo6a&-B%M45_uQ4#Kyw1S1@&*Ib%9{*KEAKEct-Q~`wDJoB)5`A*Oe=peFs=N< zz_ju&1Jf!t2BuY<3{0!I8JJcHFfgqWVqjV&&A_xuj)7^F0t3@3RR*S2>I_V)92l5Z zc``7q@@8OK<-@?VDwKg~RU8A;s&odXRV55etI8ReR#h-Ct*T~VTGhh9w5pwfX;mi! z)2ew4OsiHgFs<6gz_jWR1JkN=3{0yoFfgsU%)qqj8Uxd+n+!~=?l3T|0=eZM1Ji0o z2By_43{0!p8JJcJFfgqaW?)(^!oalJl!0lr83WU5O9rOZHVjOw?HQO>doVDq_GVyO z?Zd#dI+uZIbshuL>Ouyl)g=r}tIHXfRyQy(t!`#uTHV6Hw0bE6)9PgmOsiKiFs)w0 zz_fZj1Jmjq3{0zcGcc{*!@#uqF$2>YBL=25#tckrY#5l<*fTJ#abjRv(9WnHjsg7Z3qL?+HeM@wNVUAYhxLh z*48mFt*vKZTHD0Hw6>LjX>A7s)7ps)OlzkwFs+@+z_fN71Jl~=3`}cxF)*#&%fPhu z00Yz7lMGC2&oD5pJ1hYdg{5rgba~OzT(~nAWK= zFs)N(U|Ofez_d=6foYuq1JgQ72Bvj33{2~68JO0kFfgs_W?)*kiGgX|Uk0Xi{}`Co zGcqu(=VD-5&&$BHUVwpVy)XmQdJzVu^`Z<+>%|$E)=Mxjt(Rh8S})7Mv|f&ZX}vrH z(|QF4ruE7UOzYJcnATe}Fs-*^U|R3Uz_i|(foZ)91Jin62B!4^3{2~T7?{?FGcc`> zWMEpK#K5#Zm4Rt}Is?=C90sQKc??YJyBV0)_cAc8pT@wnekKFc`b7*(>lZUHtzW~y zw0$bz_dY{foX#Z1Jed|2Br;~3``r$7??IVF)(fL zV_@14$iTEAn1N|S7z5LWg$zs^7BMhwSjxb(VI2e0hK&qN8@4boZP?Dhv|$GW(}tZ4 zOdEDHFm2ewz_ejM1Ji~>3``piGcav9!oalQChjACHg*vP=Nv7doy;{pbzjf)tVHZEac z+PI8?Y2$hZrj45zm^N-wxOq<;p zm^S+}Fl`QGVA>qSz_dApfoXFr1JmXN2BytP3{0D|8JISgGcawgWMJA{!@#t8E(6o% z`3y{(7cnqxUd_O?c?$#6=B*4&oA)s=Z9d4rwD~Xt)8;b_Oq*{oFm1lYz_j@;1Jf2A z2Bs~#3`|?h7?`$LGB9niVPM)~%fPh7j)7^50|V0*M+T-XE(}atTp5_Q_%SeT31nc} z62!o?C76L}O9%tgmT(59El~_iTk;v0wiGciZ7F47+EUKIw55W9X-gvm)0P$nrY&s@ zOk27cn6~sXFm0K}z_ev11Jjn-3`|=VFfeUd#K5#=Hv`j_BMeMijxjK8InKbe#u)7I?_Oj~y`Fl{}|z_j%k1Jl;y3`|>JFfeU>$-uPr z4Fl8G_Y6#1KQSwka|&ZBt=j+NRFHv`veFX`3+v(>5~( zrfud7OxxlZn6|YtFl}4Iz_jf<1Jkx23{2a8GcavuVPM+M&cL*ti-Bo7F9XwdJ_e@k z{0vOn1sRyO3o$Tl7iD1DF2TUGU6O%myA%V{c4-Et?Q#rE+Z7p@wwp09ZMS4#+HS+Z zwB3$@X}diG({>LArtRJgOxt}Kn6?KoFl`TEVA>wbzyP}cVS54t)Al3=rtRqrOxrUV zn6|euFm3N(VA?*Bfob~`2Bz(E8JM=uV_@38oPlZk1_q|>*BO|$zhGe6{)&NV`x^$P z?e7?vwtr_}+Ww1yY5N}rrX8#dOgjV_n05#=FzpayVA@g2z_g=+foVr21JjNg2BsaY z3`{#Z7?^f+GBEAvVPM+P&%m@}5(CqY$qY<8rZF(>n9jhoV+I4$j+qQhJLWJj?U>8J zv|}Cv(~boUOgpwRFzwjEz_epG1JjPZ3`{%rF)-~o&cL+e6a&+aGYm{SE;2CfxXi$` z;|>GUj{6KuJ03DH?Rdt(wBrQ>(@sVPrkz|2OgniPn0E3qFzpm$VA?6qz_e3?foZ2J z1Jh1-2Bw`}3`{$H7?^hYF)-~6WMJAE%)qoWhJk5kJOk6tLgVA|Emz_e>B1JkaB3{1P0Ffi>}#=x{| zB?Hs0Z46Aib}%sQI>^AZ>o5b;t_uuIyDl*>?YhmtwCgSd({3&Xrrp8}OuNMxn08Ar zFzr@lVA^fSz_i`M?iCD7yH_$W?Owycw0kWB)9!5yOuKh7Fzw#Oz_fce1Jmw33{1QCGcfHw#K5%s zIs?=0TMSIQL3ZC~VA}nFfob|tQq zv!8)!&jSXgJr5a}_B>%=+Vh-&Y0oPLrahk-nD%^QVA}JYfoZP<1Jhnf2By6-3`~3F z8JPAeF);1bW?3{3mhGcfJjz`(R`Cj-;ILkvv&PBSp=yTQP; z?=}O|zB>#|`|dL^?R&w%wC^;WMJB##K5#am4Ru01_RUnYzC(NB@9ga%NdyVS1>T`pUJ?q ze-;DN{<#cH`xh`U?O)8mw0{i))Bg1gO#3%5Fzvs{z_kAo1JnMi3{3lPFfi@E&A_z( z2?Nvq=L}5yUobEo;ACJrz{S9HfR};kfB*y20bvHF12POu2jm%;4k$1%9dKu0I*`Y} zbYLn2(}4#JOa~q^FdcZpz;xg(1Ji*I3`_?;GcX^bubWo0g>7XJ5(?Jymrh{q>Ob68&m<}2+ zFdZ~zU^-~Zz;w`xf$5+P1JglQ2Bw1^3`_^T7?=+FGcX+tWMDd&$G~*3fPv{?B?HsJ z8V06=tqe>D+ZdP*_A@XYoWa0!a6bdn!G{b?2R|_|9sI(;bnqJk)4?AMOotd5m=3Wp zFdbrJU^*nsz;sBSf$5Mo1JfZr2Bt#>3`~cN8JG^$F)$sfXJ9(i#K3f@n}O+29|O~& zi407KrZ6xan##a*Xc`04p&1NJhh{P`9h$?ybZ9;U)1d_nOotXSFdbUNz;tLS1Jj`u z3`~diGB6!Fz`%6qFay(}qYO-kjxjJDI?up#=n@0dp(_kbhi)=39lFiHbm$2K)1l`K zOov`FFdcfwz;x&X1Jhw%2ByRO3`~b57?=)AGcX-iVPHC}%D{A3kAdm1IRn$-I0mM} zISfpPYZ;gh*E293Ze(CO+|0mqxQBu1a6bdn;fV}Phi5S`9bU%3ba({=)8W+&Oh>pF zn2zu=FdgAzU^*hmz;r~4f$4}W1Je;X2Bss53`|E<7?_TzGcX;|U|>3;&A@a-hk@yc zE(6mMJqD&Dh73$cj2M`X7&9;(F=b#n;>Eyp#Fv5TNB{%Vkst=9Bf$(zM`9S5j>I!C z9Z6(hI+Dh~bR>g;=|~|1(~%MerXytxOh>92n2yvkFddo3z;t9j1JjX(3`|EBF)$qg zxoryr(~-RlOh>LUFdezUz;xs`1JjXv3`|EJFfbi?#K3gqH3QR;cMMENJ}@vH`N_a^ zl$C+$C_4kwQ7#6iqsk0SM|BvOj_NTm9o1)GI%>$kbkvH0>8LFO(@}c{rlTGVOh-c) zn2v@qFddC#U^-gGz;v{Rf$3;H1JltC2BxDE8JLbvVqiKtn}O-*JO-wt3mBM=u4G_3 zx|M6jz~(=jOqreo3!Ovhvyn2yOYFdb85 zU^=G6z;sNTf$5kY1Jf~m2Bu>M3{1xi8JLclFfbi6XJ9(!!@zXRpMmLE5ChY(5C*1W zp$tsN;ux5YB{DD_OJ-m?mchVuEQ^8ZSTO_Bu`&jxV-*Zc$7&gvj@2_T9h>&fw zv2P4a$C((Ij`J}v9hYKYI9{rn({ViprsIYTOvg6b7c_(;1kKFJNFgzLG&B2rsL-sn2z6IU^;%Af$8`i2BzbG8JLd$V_-VL$iQ@h zg@Ne=I|I`R0S2ZM!VF9&L>QP(STiu4NMc|*(aFGc;tB)PiK`4uCvGq>op{K=bm9pE z(~0K{OebD3Fr9eKz;xmb1JjB33`{3JFfg6?%)oTw8w1mc?+i>QelRed_{qR@;tvDU ziT?~tCq)>TPKq-yos?o=Iw`}zbW)aq>7*J1(@9MRrjyzXOeYN(m`)loFrBn!U^;2X zz;x1qf$5|x1Jg-&2BwoK3`{4}7?@7xGccVjVqiL1&A@cBhJop1D+ANXJ_e?fTN#*6 z9%EoSd4hrIEta2rjw5um`=WDU^@Acf$8KI2BuTN3{0oO z7?@6lGccWsVqiLz%)oRije+S@Is?IehVsbdUGr|vT_oqEB*bm|oY)2Y`COs7C@ z`^&&|nvH?!v@!$JX;lWM(;5s+r?nWEPU|o*oz`byI&H|nblQr6>9j2a(`kDKrqdn_ zOs7K_m`;Z=FrAKMU^-pIz;wErf$4ND1Jmg`2By;u3{0mx8JJG@Ffg6&V_-Txoq_4} zVg{zuOBt9>uV7$0eU^dg^mzuR(-#?-PG4bQI(?Uc>GU%OrqjIi zz;uR>f$59@1JfB{2BtG&3`}R_8JN!aFfg47WnelJ!N7DTih=1&Is?<0Vg{x&^$bjB zni!bQv@kH8X=h+MGlhZa%rpk3GxHgk&MahLIC6TOrZYPkn9l5GU^?@Hf$7Xg z2BtG#7?{p{V_-VV%)oS(pMmMDGy~IFIR>V)3JgqVl^K}M7BMiLEoNXkTf@L~ww{6M zY!d_1*=7c&vn>ovXWJN<&bBi!o$X>^I@`^_ban~@)7j|^OlM~>FrA&rz;t#N1Jl{L z3`}PiFfg6n%D{AX2LsdD-3&};_cAb@-N(Rm_BaF6*;5QmXU{M&oxRAwboMd>)7d)= zOlR*iFr9tKz;yN*1Jl_T3{2-38JNy-F)*FuVPHDP%fNI_jDhK#JOk4?4F;xjrVLEy zEEt&1Su!x4vteL5=gPoz&VzyJoEHPrxp)SqbJ+|`=gJwF&NVYIo$F^{IyaGl>D&|s zrgPI7n9j{&U^+LKf$7{n2BvfS8JNx;VqiLVl!58o2?nNf7a5q&U14B4ca?$Z+&2cM zbKe=5&i!IwI`@}>={y4i(|Jw?rt>@uOy_wSn9l1lFrC+DU^;Kaz;xb}f$6*j1Jij& z2Bz~a3{2-;8JNzeF)*D^XJ9&?#lUnvmx1Yg0Rz+dN(QF$H4IGWYZ;i%FJWLh|Cxd5 z{1*nM^M4tbE-)}KU0`Nly1>G~bb*zD=>j_g(*+I&rVHE*Oc!_1f$4%Y1JeaL2Br&&3``fy7?>_tGB91RVPLvo$G~*Ko`LCt2LsauZw96dz6?wk zf*6=CgfK8&h-F~9kifunA&G(MLOKJ}g-iyf3r!467rGgkF7z@mUFc(Ax-gxA>B0gA zrVA?>m@aH%V7joAf$7372Br&p8JI2{V_>>)l7Z>MX$GbX4;Yv(ykTIv@PmQrA`1i4 zMF9q;i$V-c7eyJEE=n*kU6f{Ex+urMbkUxH>7oMz(?w?nri*S2Ocy;Fm@Wn}FkK8~ zV7eH_z;v;kf$3re1JlK72BwR33``dr8JI41F)&^1WnjA4$G~)PJpFkO7dz;y8=1JlJ{3``gQGB92I z$G~(+m4WG!4+GPsVg{y5`xuxm?Pp-RbcliJ(rE^!OXnDvE?s0`x^#ts>C#mOrc2it zm@eI5V7hdZf$7q12Bu5*7?>{IXJESYfPv}KLk6ZxPZ*dkJ!fFL^oN1z(tie~%S;SR zmsuE?F0(Q)UFKt8x-7`RbXk~z>9Pa^(`6|Jrpw9|#WiA8Lm3a(ISLQP? zU0KM$bY(FE)0HI*OjnjOFkM-}z;tCL1JjjN3`|$nGB91)z`%6nC2BvH23{2ND z7?`eQGB91sW?;IO%fNIkkAdl0Ap_I3A_k^w#SBc>N*I`~l`}A1t72ff*3ZCnZ4v|1 zwW$nD*QPTtU7NwcbZsF6)3qfGOxKn%FkM^Cz;tab1Jku_3{2N{GB91+&A@c+2m{l# z3k*!xE-^4&yUM_H?HvQtweJi}*M2cDUHi+xbe(~L={hq5({(Kdrt9tuOxHabn63vg zFkKI2V7ea1z;r#Hf$4e%1Jm_F2BzyX7?`f_WnjAggn{XXIs?-U4F;wgh73$MOcgYOgGXQm~Lb+Fx@C*V7gJlz;vUGf$2sy1JjLK2BsTr3`{pV8JKQ#Gcetl z!oYN60Rz*GMGQi3`{pO7?^H0GBDj-!N7F$GXvAjFAPjKzcVo1 zVqjpp#mvBTi;aQl7AFJKEiMM8Tigsxw|E(tZt*cN-4bA6x+ToObW4PR>6R!1(=9Ou zrdyH>Ot)khm~I&|Fx@g?V7g__z;w%!f$5eN1Jf;M2BuqX3{1B?7?^JPGBDlpXJEP& z!N7DYnt|z7ECbW6BnGBiDGW@v8X1^wH8U{X>S18I)z83mYX$?;t(go=w-zxl-CE7S zbn6lW)2-JGOt=0pFx~pcz;v5|f$26A1JiA82BzD53{1BL7?^HLGBDj%Wnj9k&cJkA zi-GBODFf5(G6tsGl?+U`n;4jGw=yu@?qFcL-Oa#syN7}4b}s|d?S2NP+Y=a=Zck=l zx;>47>GpI6rrR?Zm~PKxV7fhrf$8>q2BzCv7?^HvXJER$i-GC(9tNh{dl{H+A7fy; zeUgFc_Gt#D+ZPy^ZeLGnMarrQq~m~KC1V7mRBf$0tl1JfNg2Btgw3`}=~ z7?|!zGceteVPLwW%D{9-kAdk@~Q^CM=r;35; zPBR13oqh(UI};h0?o44|y7QTV>CQI>raRvmnC|>yV7kl9z;u_5f$1(g1JhkD2By2b z3`}253o)7^Lmrn@N&On1{5 znC><+Fx_osV7lAKz;t&a1Jm7E3`}=tGces_gER2?r|_M-Q#9py2s1FbWe?e>7G6V(>+55rh8TlO!urAnC{szFx~TH zV7eE?z;rK^f$3g21Jk_(2Bv#C3{3a(7?|!AGBDliVqm&AnStrvR0gJd(-@fU&0t`< zw~&G9-Vz3;d&?M@?yYBFy0@Ew>E2!jrh5k%nC?AgV7m95f$82$2Bv#&7?|#TWnjAZ zkAdmle+H)e3Jgs5l^B@rD>E?NS7Tthuff1{Uz>sHz8(Y9eRBq;`zZ`e_j4JT?iVmH z-7jKbx?j)0bibQ{>Hc&Eru(xPnC{PEV7fn_f$9Dl2B!P#7?|#FXJER&lY!~}F$Sjl zCm5LSUu0mqf0=>l0Rscm15O5}2RsZ+5BM0E9*8qAJy2#~dZ5a{^gx4w>47f;(}OSu zrUwxWOb-$nm>y&?Fg?g&V0w_t!1SPuf$2dd1Ji>l2Brt?3``FuFfcus#K81mHUrax zc??Vs7BDb9SjoWjU@HUDgY67V4|XvyJ!E8HddS4U^pKl@=^-Bj(?dZ9riVfdOb>+_ zm>!BUFg+AwV0tLY!1Pdxf$5WaGB7=~Vqkh`%fR%|fr06v z69dyjX9lK+J`79`{TY}Z1~M=`3}aw=7{S2wFp+`jVG0A&!!!n_huI8F4|5rq9(FM> zJ?vp%dN`GV>ER3priTj|m>w=-V0yTkf$8BE2BwF%8JHfvU|@Rqnt|!z8wRF_?-`gL z{$OBw_?v<0;a>)(M?wrtkK`Db9%(T!Ju+ipdgR2w^vH#Q>5)4F(<3hirboUEOpgK> zm>v}}Fg+?_V0u)_!1Snsf$32-1Jk1x2Bt^t3`~zY7?>U{W?*`>kAdmYaR#PGFBq5} zy<}i|^oD`y(R&7_N1qs&9{pxudi0Nh>Ct}%rpHnYOpi?&m>%0PFg=cEV0xUu!1Oqo zf$4D?1JmP72BybF3`~zp8JHfIF)%%z$iVb?4Fl8Ttqe?$uQ4z^zRtk(_!a}xV0seF!1Sbwf$7OY2Bs%(7?_@bE(6n30|ut2Mhr|(jTxAp+AuIZwP#>@>d3(K)Qy4ZsRsko z(?ABMry&eXPs13Po<=h;J&k2xdRoQ6^t6V7>1iti)6)(Hrl%7bn4V5zV0t>6f$8ZI z2BxQ{8JM1aU|@R2$iVcBnStpUD+ALrb_S+r0t`&ggc+Egi83%flVf0drp3VYOoxH# znLY#4vnmFrXVnZ$&*~VMp0zVDJ?mm%de+Op^lSnH)3b>TOwT4UFg=^X!1Qb?1Jkn^ z3{1~vGcY}y!@%@xE(6oEc??X?7BVnBTf)HfY$pTLvpoz<&-ODgJv+$2^z0A=)3ehI zOwZ0SFg?4#!1U}Y1JkqX3{1}+FfcuP%)s>QDFf59R}4(g-Y_sd=VV}d&dtE|T!ew? zxi|yUa|H&b=ZXwW&$Sqso*OeTJ&$5wdY;X|^gNe=>3Kc_)AK?Grsq`*OwVf>n4Z@& zFg@>JV0u14gFV(+fogrWeW#OfM`Lm|j>j zFuky2V0z)e!1ThAf$4=81Jes%2BsJO3`{RV7?@s!F)+P|XJC4f#K80-g@NfsCIi!p zYzC$m9Slq_x)_*VOlDwuF^z%g#e4>)7Yi7eUaVwbda;Rt>BUV3rWfBBm|px~V0!VJ zf$7Cx2BsJP8JJ!&F)+PkVPJa6%fR$ffPv|y5ChXoX$Gd3>I_UTH5r&*>M$_9bY)BqqIGJt{UWgr97%U}kkmoW@XFXI`QUM4ayz06`@dRfN6^s<71>18zo)5`@6OfMHP zFuh#D!1QuC1Jlb53`{R~GBCZ|#lZCPHUrbky9`V(?=djFe8|A`@-YL`%V!KsFJCe+ zz5K+$^h%zA>6Hcp(<^NTrdPTQOs}jMm|nRtFue+5V0snG!1OAdf$3Eg1JkQ?2Bue; z3{0Ldfxt4j<_ukJB0 zy?VgF^y)DK(`zjTrq|jGOs`ECm|mMRFuk^7V0vxM!1UUNf$6m!1Ji4J2Bz0e3{0<` z8JJ$XF)+P$XJC5m!NBy|n}O-I9|P0tWCo_!X$(xSGZ~m(XEQLp&S7ABUCO}px`Kh} zbrl2C>v{&J*NqHJue%tSUiUIEz3yjVdOd}K>Gd=Qrq`Ppm|kyXV0yief$8-@2Bz1i z7?@t4W?*`Kg@NhyT?VE%EDTI<1R0p#h%hj{5oKU{Bf-G*Mv;N(jS2(P8#M-|H`WYH zZ`>J}-UKr+y@_XFdXvq-^d^^q=}iFx)0<)jrZ;5_Om8X~nBL4{V0tr~f$7aW2BtR) z8JONIVPJZ*mVxQb1_q`#8yT41oMB*k^PGX{%?Adiw}K2zZ-p3`-ik6Xy_H~KdMnMq z^j3v|>8&~g(_0M&rnk-vOmE{DnBJx{Fum75}1(>osqrgxzXOz&zKnBFaBV0w3of$6;{1Jipk2B!Ct3{3Bp7?|FxGBCZ@U|@Q$ z&A{|thk@z6E(6nheFmoY1`JH^jTo5Tn=&xHH)CLWZ_dE<-hzSYy)^^VdpicE_rVNI z@530F-bXSpy^m&KdLP5U^gfk=>3s$R)B7w2ruX>_Oz#UBnBG@0Fukv3V0vHA!1TU_ zf$4o41JnD(3{3BrGBCYg$H4S{BLma>T?|a`cQY`(Kf=KD{wxF2`!5VkAA}j0KBzD- zeNbay`k=wU^g)Y(>4Px?(+4vKrVkbjOdlK>m_GP2Fn#c6VEPcm!1Q4*1Jj3j3``#u zGBABu#lZAoEd$es4Gc^lHZw4N*uuc{VJidEhwThZA9gS>eb~*w^kE+Z(}(>GOdk#~ zFnu`4!1Un=1Jj4&3``&HFfe_%&%pHI5d+hQCk#v;UfdnhtCX5AAT?} zefY(|^pTl?=_4Bh(?<>lrjNV~Odt6fm_F(-Fn!cxVESmz!1U3If$5_&1Jg$r2Bwd` z3``%x7??iRGBADYV_^C?fr07cBnGCBQy7>&&ShZwxPXD_<01y8kEEj*-rccrgOrPW!m_ErfFnv;DVEUxZ!1PIvf$5Vz1JfrX2BuG@3{0Oa7??g;GBACz zVPN`X%fR%>j)CcuJpxiK((ie_N?6vx2yDUpHcQ!)e7rxXUJ zPq_?Cp9&b5J{2)AeJW>Q`c%ol^r?w~=~F8M)2DU@rcXT#OrQD~m_Ds$VEVL{f$7sW z2BuFt8JIpDVqp4on1Sij83v|LR~eW-{b6AGEXlz1S(<_Avm67{X9WhP&q@qTpH&%{ zKC3e@eKufV`fSX=^x2ew>9ZXJ(`PRRrq4bMOrQN3m_BDPFnum$VESCl!1TFK@*KFYxK`8Wg9=Ti(!pD!~o zeZIrM^!Y9W)8~H-OkWrnn7%MFFnwWRVEV$w!1RTaf$0km1Jf5#2Bt4g3`}3V8JNEK zF))1zU|{+Z%fR#{lY!|=DFf4&3I?VxRSZmDY8jZmbTKe}>0w~{GL?bp%X9{&FH0Dh zzAR&4`m&yZ>B~k2rZ4vxn7%w`VEXckf$7T|2Bt4x8JNB@GBAB*W?=ft#sC6LUws*v zzWOmReGO+|`WnT+^fi`&>1!MV)7N+grmu+%Oka~2n7*bmFnvv9VEUTL!1OhXf$3{D z1Jl<$2Bxot3`}3!7?{3xGBADZVPN{&$H4TppMmM?3kFag|rms60n7&?PVETH4f$8f*2Bxo17?{4kWnlXHj)CdxcLt_! z3=B-))ESt*nJ_SYGiPA>X2HPp&6DvSbrf-uOn7&P8VEQ(bf$7^E2BvR&8JNE9V_^Drkb&vj5eBAj#~GNuU0`7P zcA0_c+Z6_;Z|@nHzH>1!eHUh6`fkF&^xc$!>AM93(|2nIrtfwPOyAuZn7(^4Fn#xC zVEUfM!1TS5f$4h}1Jn1_3{2nGFfe^z&%pG369d!ttqe@x_c1ViKghuJ{SX7w_qz;C z-+wSL{a|EZ`k}4zEv(+^DsrXM;COg~H+n0{C=F#WJ(VEPfl!1N=Zf$2vD z1JjTB3`{?cF);mj%fR&G7X#CezYI)285o#;axyUe8C9N)6WzJrk|%7n0}sRVETEEf$8T(2Bx34 z7?^(EWnlVwkAdmuLk6awPZ*efK4oC~`GSGz=PL%LpKlqMetuwJ`uUN8>E|Z~rk`IK zn123XVEXx!f$8UO2Bx2X7?^(kV_^FEpMmKYBLmYfCI+To;tWi`q!^ff$ucngl4oH0 zrNF@SOOt`=mktBdFFgjPU&ahfzf2jJe%UcF{c>br`sK{P^vi>R>6aG+)30;}reB#1 zOuvd4n0}QqF#W1yVER?h!1Swwf$7&o2Bu#-7?^$?XJGnuhk@zWJqD&<4;h$#J!W9~ z^^}3>*Elm1R?_yy3eT;$W_X!53 z-=`UvexGAt`hAgs>Gu@|ra$rwOn(#@nEog;F#XYCVEUua!1Tw6f$5Ja1JfTf2Btse z3`~D48JPZ9F);nHVPN`W&%pG@fr06dBLmYPCkCcJt_)0nJQ$e%#4<4bNnl|5lgz;M zCzXNePZ|T$pL_GvF#TD; z!1QM^1Jj>93`~EHGBEu)!NBzAGy~J0a|}#>E;2Cv`N6>SSCoP2uQ&tKUj+uHzsd|u ze{~p`{^~L?{WW7?`fJa?^f!%x>2D(g)8A7Nb* z(?2~1rhkSEO#db@F#Vgv!1Ql21Jl203{3y#Gcf&I#K81#F$2@TWeiOJRx&XCTf@Ng zZ!H7UzYPpb|28r({oBOA^lvi*)4y#DO#iksF#X%X!1Qky1Jl3r3{3wnF);nR%E0vR zIs?Krzt;>*|K2h%{rkqi^zSDF)4$&gO#c}enEo>{F#VTj zVEV7f!1P~>f$6_41Ji#q2B!b!3{3wW7?}QhGBEuwU|{-R$H4S|F$2^8WeiOJS1>UB zU&X-me+>iE|Md(^|2Hu({ol&K^nW`8)Bh_BO#kmPF#W&J!1VtS1JnPf3{3yuF);mq z&%pHm7XvecA_Fsn76UVbE(0@zJ_9p@1p_mK3j;HQ8v`?gCj&D>8Ur&!1_LugHUl$5 zE(0?|83QvzIRi7pJO*ZlX86az%*f8b%*e&S%*eyQ%qYsh%&5q~%&5%3%&5k|%;?X+%oxGI z%oxSM%$Ur;%$UQ#%$U!>%vi|4%vi+0%vjC9%vi_3%vjIB%-F-g%s7>SnQ=M;Gvhu6 zX2#JJ7Ff(3dU}k*Cz|8oVftm3c12dB;12dBu12dC712dBo12dB=12dBw z12dC512dB+12dBs12dB^12dB!12a=N12a<;12a=J12a<$12a=B12a12a=E12a=U12fYU24<#d49raP8JL+CF)%YNVPIxj z$-vCCnt_?=1OqeEDF$Yy%M8p+*BF?Y?lUkmJz!vFdda}d^ofC)S(1U7S&f02S(Aa8 zS&M<0S(kyC*^Ggi*^+^o*_wfwIe>wgIfj9mIfH?jxrBk4xq*S1xru?9xs`#Lxr2e3 zxtoERxsQRFc{2ku^A-kX=Isp3%)1zvnfEd+1W)@inW)=koW)@`zW)?LDW)^)0W)>p`W)@=xW|k-hW|n#eW|js9W|n3KW|lSv zW|mF{W|kfXW|pZ8%q%k)m|12rFtZ$BU}kyBz|8WDftlqc12fAT24&3^&bN>8v_F~8zTcV8#4nl8yf>N8#@Ct8wUe38z%!Z8xI3B8$Saxn+gLn zn>qtCn-&8zn+^jrn=S)0n;8Q$n7P7n*#$gn-c>wn>Pb9n;!!+TL1$yTOTR#Ic+av~Nwy6xvY%>^`+4eIqv)y4}X1mA0%=Vmt zne7z=GuvkdX0|U3%xr%dnAzDFnAvq1nAzPJnAxKlnAzhPnAsB;nAwvUnAuYpnAsZ{ znAy7+nAv+6nA!UonAs;WFtg8QU}m4gz|6j!ftmdr12g+|24?nK49x6z7?{~#GBC4$ zWnkuDWMJlCVPNK9V_@dsWMJmVU|{CRVqoUTW?<&XV_@beXJF>2VqoT|W?<&1V_@cJ zWMJlKVPNKHWnkv$U|{CxWMJm#VqoUzW?<&%V_@d!XJF=-z`)EgiGi78IRi7tDh6hb zwG7N0>lv6iHZU-A>||i(*u%igv5$e7<1hm=$594mj&lsm92XgwIW99WbKGEH=D5Yc z%<-Lpnd2t|Gba-RGbbwpGbbMdGbcX-Gp7UtGp8a0Gp7dwGiMkBGiNmeGiMzGGiL(> zGiMV6GiM6}GiN&kGiMhAGiNUYGiN^oGv^8hX3mWa%$%DUm^t?_Fmvu@VCFo)z|47? zftm9P12gA!24>Ei49uL57??TVF)(v}U|{C_%)rdW!@$fX%D~Je&cMti!NANV#lXy^ z%)rd0#=y*_!NAOA$iU2H%fQTK&%n&(#K6pz%)rc*%D~K(&cMu7z`)E^$-vB2#lXzf z%)rdm#=y+g!NANlk%5_OE(0^ydlp(x z*K-DDt`7{%Tp)LRVPNKFWMJmzVqoUxVPNJKWnku(U|{B!VqoT0W?<&lXJFz`)EsnSq&m3Ij9uR0d}5=?u)=GZ>h;XEQK!&tYKZUdq7C zy@G+6dnE%i_bLWv?$r#;-0K*axi>N}b01@1=03^5%zcJ|nfn|AGxvE0X6_pd%-pvb zn7QvVFmpd*VCH_pz|8%YftmXQ12gw024?Q>49wg=8JKy*7?^n^7?^n!8JKxg7?^o< z8JKzW7?^p?8JKw-7?^p|8JKxW7?^p=8JKx07?^pg8JKxm7?^q58JKxG8JKzIF);J2 zVqoUk#=y*Th=G~s90N1Y1qNoG%M8ps*BF?2ZZa_Q++kqmWn^IHWny6FWo2OI0uXnE5v_F!OI>VCLV=z|6moftmj}12g{# z24?Fpz;+Foc0wu#$mUu$qBcu$F;Yuz`VDu#%tCq$%t8hX%tFQt%t8(f%tB5K%tGD_%tF2l%tBEN%tA2?%tEOQ%tGl5%tBKb zn1$vtFbgeUU=~`$z$~49r4L8JLCMF)#~#U|<&d$-pek#K0`f z%D^nl&cH0p!N4pm$iOTt!oVyn%D^nF#K0`9&A=?I%fKug!oVyX%fKw0z`!h=#K0_^ z&%i8P&A=?&&cH0(#lS4w!@w-u&%i8vkAYeEJ_EDx3kGK4*9^?U?--bc-!m`^e_&u1 z{=~p6{F#AS_!|SW@OK7g5e5ck5oQKv5f%n!5mp9f5jF;95l#kX5grC+5k&@O5fuhz z5p@P;5lseW5iJI05n~2s5izf6 zv&el0W|2n>%py-1m_>dvFpIJ>FpCN@FpJ7EFpFw3FpFw4FpKIjFpC;8FpHWnFpHWq zFpI`8FpI`AFpDNIFpDNLFpH)!FpFj~FpCy3FpHKlFpHKkFpJJ*U=}^Zz$|*0fm!qz z1GDH!24>MS49ueE8JIL=*+@FD2Jcxl=Jd}Z1JdA-^Je+}9Jd%M~Jc@x?JeGl3 zJdS}`Je`4AJd1%@Jez@8Jcof1MO zz%2fZfm!@L1GD%C24?Y}49pTt49pUm49pT{49pUi49pT%49pU?49pU449pUq49pVV z49pS<49pTa49pT049pTO49pS}7?>p{F)&L^Wnh+=!N4prn}Jzk9s{$)VFqT2BMi(E z#~GL1fmw==fmw>5fmzCofmte+ zfmy1Bfmv!b1GCgO24<=649rr$7?`D*8JMNn7?`Cw8JMMc7?`Db8JMN{7?`C67?`C6 z8JMMo8JMNT7?`ES8JMLd7?`Cc8JMMI7?`Ey8JML_7?`Ea8JMN57?`DP7?`DP8JMNr z7?`C!8JMNL8JML57?`Dl7?`D_8JMNx7?`CK7?`Cq8JML@8JMNZ8JMN37?`CeGcZff zVPKY?&%i9bh=EypDFd_g3I=BB^9;<=Zy1=R-!U*te`jEp{>8v7!_2@e!@|HU!^^-d zBgViiW6QuS6U)FXQ^de5Q_8?BQ_jFFQ^~+AQ_a9EGlhX!W-bG>%zOrBnH3DoGAkLF zW!5k-%WP+0mN~${EOVHFS>`AMv&=aLW|>Fv}(|Fv}(~Fw3SeFw3Sg zFw3SfFw15zFw535Fv~VDFv~VGFw3?wFw3?vFw6EcFw0J2V3wW2z$`nHfmwDo1GDTB z24>mi49v1C8JK0)F)+(+U|^O#$-pdoiGf-63Int3RR(6+dkoC7&l#9yKQJ)M2{JIt zi7+tBi7_zCNiZp5%#iRR(4SH3nt{eFkO)BL-##69#4lO9o~IYX)Wo7Y1epcLrt!PX=ZM zKL%!n00w4-Oa^9!A_iuK5(Z|4QU+#)ItFHib_QmJ2@K2%a~YTw7BDa?EM#C-Si-=p zu$F;YVFLrR!X^f0h2sp&3YQs}749=IE4*f4R`|}qtnib8S>X=@v%-G{W<@3jW<^#8 zW<@myW<_-dW<@OqW<^~FW<>)AW<^T|W z8JHC>F)%A$Wnfmk!N9Eekbzn82?Mj@QwC-w9tLJ5V+LlWCjDcBsB?GhaCI)8Z%?!-Sdl;CNk1{YTzhPij;bLG`k!N65QDR_L zQDI1JS7na;qhGK+y(Wex+g%6tZ9m46J(stgRws*DWGsw@o5s=N%$ssaqms)7v6 zsv-=`s^SdHs!|Nhs?rS1s&Wj>s`3oXstOFus)`KEswxc3s;Ugks%i|(su~Q;sZF49uz@7?@RmGBB&LGBB&LGcc=hF)*tsGcc>^Ffgm> zF)*v?GccNi-B2fE(5dLdG6z^uNRfmwYI1GD;m24?jG49w~W8JN`%F)*tiWnfl6!N9D3mw{RR0Ryx8V+LmR zrwq*M&ls51-!m|)e_~)(|H8nm{*!@O{Wk-%1`7kT20H_@1}6iv1|I{nh5!Szh9(2E zh7kj^h6w|+hA9KHh8+X5hC2hZMgRk|Ml1ufMgjw~Mj`{VMhXM7MlJ)hMgaq}MiB$E zMmqzu#$*O&jrk1B8mk$YHMTP_YwToT*4V?qtg)YgS>q4`v&K;dW{qbI%o@)bm^EH8 zFl)SJVAlA+z^w6;fm!1Z1GC0o24+n;24+op24+nq24+oF24+nS24+n|24+nY24+oD z24>AL24>B024>AD24>Az24>9!24>An24>A124>A%24>AZ24>BE24>Ak49uES8JIO^ zFfeN_WMI}@!oaM#l!00E3cw5C&$gPzGkL2nJ@YLl|lb);Yz%taFBeS?4?hv(6m`W}SNs%sS5*m~~zz^v=ez^oh0z^og}z^og=z^q%#z^vQGz^vQBz^prwfmwGJ1GDZN z24>y449vRA7?^ceGBE3|Vqn(Y&cLjDfPq=}5CgOBX$EH9a}3P77Z{jz?=mp!zGPt5 z{mQ_s3$phY1GDa524+1U24+2924=l524=lT24=k&24=lj24=lD24=kk24=lP24=k! z24=lf24=lH24=lN24=k?24=lt24=ky24=l-24=k~24=l}24=lU49t2{8JP8^GcfDT zU|`l;$iS?(gn?Oa83VK4Y6fP#wG7O9+ZdSjb}}&Q?Pg%sJHWuKcZh*m?=}Oo-V+99 zy=M%}de0e{^*%5#>-}V4)@Nd1*5_wn))!)6))!`A))!-7)|Y2s)>mR+)>mO**0*F} z)^}xK)(>Q0){kXi*3V>M*3V{O*3V;L)-PmW)-PdT)-PvZ)}O(^tUr^1S$_@#v;KSr zX8lDB%=)VtnDy5&Fzc^pVAj9Dz^s3ffm#0w1GD~h24?+R49xnE8JP8-F)-^tXJ9tq zU|=@jWMDSnVPH1kXJ9rEVqi9qW?(juV_-IrXJ9sPU|=?IWMDRMVPH0JXJ9t)Vqi81 zW?(i5V_-H2XJ9s{V_-Ho%fM`Kj)B?WIs>!8Ee2+Ty9~?*_ZXNB?lUkOJY--tc*MYL z@RWhs;28t6!FvW~gHH_12A>(24Zbii8+>J8Hu%B7Z19_b*-(Ii*-)5)*-(su*-(Ok z*-(;!*-(jr*-({%*-)K<*-(dp*-(#x+0dMU+0crC+0cf8+0c=J+0dDR*)WEI*)WxX z*)W}f*)W5F*|3m-*|3U%*|3>`*>C~_v*Bb0X2U5A%!bn$m<<;&FdHsrU^ZOJz-+jS zf!XjF1GC{J24=&149teF7?=&;FfbdwXJ9t`#K3I$m4Vst2LrQ_Bm=XN6a%x7ECaKV z0t2&=G6S=b4g<51J_ECn0Ryv9AOo{e5CgMOCy&1_QHE zCj+xl7X!0VF9WmD1O{fK$qdX!a~PP7<})xGEnr|aI>^9mbcli3=qLlT(Fq1-qtgt` zMpqb^jjl5=8{J@FHu}%NY^=t>Z0yUxY#hbFY#htLY@EQrY@Er!Y@EZuY@ElyY+TI1 zY+TB~Y}~}aY~0GgY}~=XY&?;H*?0;Av+*@@49v!_7?_RUFfbc`Wnea8Vqi95WnebpU|=>8WMDQCVPG~9V_-Is zW?(jvWneaOVPH1#WneZ5VPH1NWMDQaWMDR_V_-JvVPH0y#lUQ`l7ZP|I|H-HJqBiz z=M2my-x!!p{xdL}@-Z-*Dljmc>M<~zS~4)3+A%PjI)kS785mfYAatq~gocvLrmg_~ C;-xwO diff --git a/gtk-3.0/assets/checkbox-checked-dark.png b/gtk-3.0/assets/checkbox-checked-dark.png index 36128053386c11438b9b60777cdf67dae127d235..8d3df52a685bd04767e96bea32a14624491ab9cb 100644 GIT binary patch delta 252 zcmcc0JcDV1O8tFL7srqa#=VzaotP3Oj(vQeRkqzawo>3XQ`!18TT7XvcbS)zm+$%T zW`*Yg#%1;YJ!j;W)#z<8dE2-4Oi;`d{@;fV7@hw!gf%Xt1{==owrE}Tgn{SH ze>S7v(ILF;8s$|QwhS@aQ#qX9J#(@+(Au4U{?7D(pg%!3bCz5wJ!U2UjE^CC#SWQ{ zf`oSt%xeRWzEt1|oj;wqnEjTr%na)bLYlSp0slVw{jmL@<1_J2xa2g;XX+YzY@Ch$ z`LLYUFGZx^prw85kJ*JzX3_ECi=cIPa= zpUXK`Afqnce_VT6X4(sRGYKB4w`IF?mISSwm3uoOSM^Z{0lnbi%#)T<8_!?bZ!Yft5ByT3h^=^go^f|H1wm#BZ`n=mmaphilnRj~x zq8A0#HTxt^6jAKG#>8_)bpB)YcoY7YpT2p7v)ZUl|1^6`)QyFjFEtoGIezkd>@fME z2BQT-`x4*InXXZqIe{m7>g$x{uYYH}y6m0ST)*mx9xkefry0*mn4Oe2Y2LkeCpnK_ znQ3TtqGsos3olFdsX2W7`*`ZA<<(z)6uDoXXz6OVUs9dBA{DoadUAGJ2@r|@2pg*$lXG{-S8Ffe$!`njxgN@xNA DTp7dt diff --git a/gtk-3.0/assets/checkbox-checked-dark.svg b/gtk-3.0/assets/checkbox-checked-dark.svg deleted file mode 100644 index ae01bea..0000000 --- a/gtk-3.0/assets/checkbox-checked-dark.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/gtk-3.0/assets/checkbox-checked-insensitive-dark.png b/gtk-3.0/assets/checkbox-checked-insensitive-dark.png index ab056cbde35513718df74a3ed6f53e8c5d5c3f0c..bd03ec9ca06bffa204c6eee5fa5428de5994cd71 100644 GIT binary patch delta 151 zcmZ3*w1RPhWIYQ51H;x|=C2qS81g+`978G?lM@os1=1%RVm#WoNg&h4tAQoXV_lQn z)X2MP7!Cr4GIV^EVZ*Vqjok@O1TaS?83{ F1OP|gJZAs^ delta 282 zcmZ3%xQc0lWIY=L1B3kM|A`C?42;D=?oJHr&dI!FU|@LS>Eak-Avkw(G*`2Mfa~%= zLHQrg*?z6fei^lU`nyB=fh-?G{Z}My3A)^v;PLEEweJbt^Pj6{E%RR*q9$hA_jt8N zS3CC{70+jt^H}vRmCCkBXlF~P^CV84`gVGncBAFCDXE&dx7XDNy|eml$hhwHuM4G` z2gSbC#!Glhau&>3=DA4YQA5djIljXMiC?dKFx>gRx6kUnaro9_$4dDZC#W2lDRS7r zBQ&&$qm*rPx{5-X%<)GS=Ts#al^etUbeQ-qZf#OX__>9TsYK7yZ{^vxkKD7ro(?{` q`q7qLZnkSrJ - - - - - - - - diff --git a/gtk-3.0/assets/checkbox-checked-insensitive.png b/gtk-3.0/assets/checkbox-checked-insensitive.png index 09c66155f4e0a6c9349ea307b76291d74421ac6e..e73b148d0987f3399da239c045ce71da691a794e 100644 GIT binary patch delta 146 zcmbQmw3u;%WIYQ51H;x|=C2qS7_vNF978G?lOtYkef4qGe~Sl?r^fLJWZv5t?FVL>7dc*u~^$d!}3SH_)*4IPEI$mgD=<^{+(U%rcuS8fq|QWfx*+&&t;ucLK6Tt C{5b^x delta 266 zcmZ3?IE!h5WIY=L1B3kM|A`C?42;D=?oJHr&dI!FU|_i7>Eak-A-Ht%Uamt1BCWxq zt&0|PPj+@-7neWyy`G``;!(!}p;g@v$``FP+_G??_&$@p=FjhZQExR&l^jRS z#kj;bHmdG!Te!NeEuw}qYyaAs$wIGIS4>_KF{^@Iy~uyY0XCf%Gq*n7f9}ri4&Jzw zeuc?~Do3yQUJn1Dru~ZlLi{Z$U$!Wn$;GR+G>-HOOxfj|x*&LI^F--OAyuAx`#wuI ZEtEeWZ?|9~0|Nttr>mdKI%cPYCIDQIa3=r& diff --git a/gtk-3.0/assets/checkbox-checked-insensitive.svg b/gtk-3.0/assets/checkbox-checked-insensitive.svg deleted file mode 100644 index 4dbe967..0000000 --- a/gtk-3.0/assets/checkbox-checked-insensitive.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/gtk-3.0/assets/checkbox-checked.png b/gtk-3.0/assets/checkbox-checked.png index 6b118323904b0edb65801e1e364fbc1537cbac9d..8d3df52a685bd04767e96bea32a14624491ab9cb 100644 GIT binary patch delta 252 zcmeBTnZYzcrT)IBi(^OyQLbGnVuwse zLBcx+=Cy%GUn=l~&Y#X)%zjH*W`^|zA zd{|EF7%z@Hv*1~*$oIqh3^w=}TkcshU*@Caa`%%epW15^6JGyUS$*W)k!Qad7#J8l MUHx3vIVCg!03s!KhyVZp delta 496 zcmbQi)WtGErJk`k$lZxy-8q?;3=E7%JY5_^EChQe`+744O0=HuF-}{wY{|qe8JCxP zaBrLzn6=}aYvW(G|L*lp8G<5?Ynjabwv^AkcFbv!YrJ2;l1mxIdUp@%To7N^_xW7q zxtZVNraCPY@Lqm7J#Tw;V4z4((B3%yxqi=&8T8DVb~459@y8$aNg5(et5!*{E!=VY z?V_7Gmp+7iuG;H8(Sv2zI_?7+oE#TSc&}vXP516-XMAzyXp&c4aQ5=B*3CWVpFNng z@qLyW-}lu!*6p!4pK(~pcwK7bf*TgQ+^@e{c=w-B@q%lNU))oik1hGJ?beZ_hDQ%L z88tlJI^nYwlY;UzzE>IBb#k88r$7Aq`jMiQ_s5z;{a15b4rCq*`sv6p_ttzdIqCTp z`qvWo)h(#|`l{o(ke$lrM8m)HA97A$@HlbIPeeFTHs4=%N*8a;Je!UiB9~`cA5~?% zV#)CC&<=n1Ed8zq-b(YgjyK=m(ck9(THlZ{iA_d=(MD$90g0fWnIT^1Is9HmL}tzx zS@*y5KSM>cAhRRu?A^wHG#9X(zEM=}GP$<$Ae;Q8`*-TaCZGKMhId-l|J7N`GOgI1 zxn5|^T^cY?^w7$MVcOGA-`;k3=JCg!fi_-(7qYgl+Gh5hH>Cgax*M#mDhvz^44$rj JF6*2UngCjt?B@Ug diff --git a/gtk-3.0/assets/checkbox-checked.svg b/gtk-3.0/assets/checkbox-checked.svg deleted file mode 100644 index 0db2ab9..0000000 --- a/gtk-3.0/assets/checkbox-checked.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/gtk-3.0/assets/checkbox-mixed-dark.png b/gtk-3.0/assets/checkbox-mixed-dark.png index 7b5ee7a0926afc53f4d84683df15fa7ea2f55c2a..080fdfaee77696b865f5239e7fd8a32fdca35903 100644 GIT binary patch delta 169 zcmcc1bd+&|N_~%~i(^OyES1TA zcVXoj`v~=>U6r2~>+`JPIlNC%ba%>$3+&9=i&yZkPGsbH6JOw7a3b|f;DWQW6lVWB zll4vOu$TFpi>@{c)auk)r=}gSRBGGZx^prw85kJFJzX3_ECiB)o2dr>xm zwfFC@T6OER&S^bI0giB#sA`#H!C)wliyK$iv_JHcQkC8*t3pmdoAS)OWeU zttroJft-|Hqo}~1Pg{ui8_)-`{zMM8lcSH9UteOz3c!$#84F(XY~2?#)b6GA?JE4N~&*cq|y5R_)}x zyYu8>dxj75FC057KEZmEul1uDwc&>iVwO!e{l0PbX+}w@j8vK9uT6aUFE74z<6ZsL g$v - - - - - - diff --git a/gtk-3.0/assets/checkbox-mixed-insensitive-dark.png b/gtk-3.0/assets/checkbox-mixed-insensitive-dark.png index 654d78a45f7e2ee73d7d9b1c997362d918032eaa..3646c7db7b52b3e247e1fa0997bdd8ef3d81da32 100644 GIT binary patch delta 90 zcmX@bm^(o-goS~DVe2pRR}2gcCY~;iAsWHS2?^-}=@Sky9&OxIu|(19gIDu|grEYg wUvZjD^Saa)Jn#{D8OF1MscE9C!Y;-uvvtb0?vP1lU|?YIboFyt=akR{0Mr~IUjP6A delta 184 zcmc~j#W+E-o{fQlLH_gqL{r#!e*T?_f++gzgkf(L sMjYbNW4Xk9=`_=+Ne+RVHXAd1+omdKI;Vst05GOdmH+?% diff --git a/gtk-3.0/assets/checkbox-mixed-insensitive-dark.svg b/gtk-3.0/assets/checkbox-mixed-insensitive-dark.svg deleted file mode 100644 index 27e0ef1..0000000 --- a/gtk-3.0/assets/checkbox-mixed-insensitive-dark.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/gtk-3.0/assets/checkbox-mixed-insensitive.png b/gtk-3.0/assets/checkbox-mixed-insensitive.png index 1f73901bba0ec6fb81f8282e57e38f9c5823bf0c..f6ef803e3abdda172f75f836dc82eac4f075e5d3 100644 GIT binary patch delta 87 zcmdnSm^DE%kcEMPVe2pRR}2gchMq2tAr*|t5ihsC`nc-9#e>IF<9Gxz?|4Zxu*6xc t5Rv&+&&DaI6nAjK2epGIlqBvlGICBhyCjP(lI7B2R-*gTe~DWM4fRN6P` diff --git a/gtk-3.0/assets/checkbox-mixed-insensitive.svg b/gtk-3.0/assets/checkbox-mixed-insensitive.svg deleted file mode 100644 index d408465..0000000 --- a/gtk-3.0/assets/checkbox-mixed-insensitive.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/gtk-3.0/assets/checkbox-mixed.png b/gtk-3.0/assets/checkbox-mixed.png index 5cd581fa2d04549f82410cac3ec5c984c2490083..080fdfaee77696b865f5239e7fd8a32fdca35903 100644 GIT binary patch delta 169 zcmeyzbd+&|N_~%~i(^OyES1TA zcVXoj`v~=>U6r2~>+`JPIlNC%ba%>$3+&9=i&yZkPGsbH6JOw7a3b|f;DWQW6lVWB zll4vOu$TFpi>@{c)auk)r=}gSRBGXCVNGZx^prw85kHXJY5_^ECi=cw#{pH5NKtO5OB)WcoDO-L$^EH zVX9u<w!LNC zu#AaeN)Xf9O*+{E_qiODGDJ^3+Yx5BI@u=8^?8NceD7^j5||z^CeCwKIOcF|Vsx(8exE+84f{LBCgTIM%wiZ767gTe~DWM4f0Q{Y+ diff --git a/gtk-3.0/assets/checkbox-mixed.svg b/gtk-3.0/assets/checkbox-mixed.svg deleted file mode 100644 index 8921521..0000000 --- a/gtk-3.0/assets/checkbox-mixed.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/gtk-3.0/assets/checkbox-unchecked-dark.png b/gtk-3.0/assets/checkbox-unchecked-dark.png index 3e0cafcdcd04d763e7ea09e097823cce046b0cee..439d96e7cebd01dc13b577a702be91328126150b 100644 GIT binary patch delta 118 zcmaFK*ugkKGM|Nkfnn<}^H&TE4E~-jjv*T7-=5mZ+n~U}aNzaIIj#mOKTJA0*ZzM0 zh-rdF!_IFUV(oh$Z{QHQX){68uTWyqXa4!lliL(C?`%>jQ@QCIntQF!H*{vqyvEaC am|QQLM=p4DJ(huifx*+&&t;ucLK6UPi84n3 delta 216 zcmeBRe91ULvYw5BfkFQB|3n4`2FBtbcPEB*=VV?oFfc6kba4!^5PUn?m+OcEPwU@U zkyo1@-11#|{H0^{oR?>KxojIa{`L54l$fS`<8?9E^PW}p;bRNE%O<%&r)K^Yw0wTP za-MeixwnT6Dwc{oo- - - - - - diff --git a/gtk-3.0/assets/checkbox-unchecked-insensitive-dark.png b/gtk-3.0/assets/checkbox-unchecked-insensitive-dark.png index e98cc68f54be28e447226892d0b6cfc1722602f0..123b3c168d3a548887fe5a1f4bff8636d91e37da 100644 GIT binary patch delta 75 zcmZ3(7&k%Em4$(UVe2pRR}2gcs-7;6AsXkC6B5z|(kC2ZJleRaVu_;H2e0M_E0}(1 gDo8}KERtr3Um-a+Q2%uu0|Nttr>mdKI;Vst0N89AGXMYp delta 154 zcma!B!#F{*o{fQlLH_gqL{r#!e*T?_f++gzg^gvIe>cmIlOfMN3=9km Mp00i_>zopr040+`LI3~& diff --git a/gtk-3.0/assets/checkbox-unchecked-insensitive-dark.svg b/gtk-3.0/assets/checkbox-unchecked-insensitive-dark.svg deleted file mode 100644 index 3488e66..0000000 --- a/gtk-3.0/assets/checkbox-unchecked-insensitive-dark.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/gtk-3.0/assets/checkbox-unchecked-insensitive.png b/gtk-3.0/assets/checkbox-unchecked-insensitive.png index 80c76dce46f8dc82e4a7d7333f1d42299ff440ef..b3f42cf4dc690e73a32fdae8375ec8d83c5d5753 100644 GIT binary patch delta 78 zcmbQqm^eYwgN1>CVe2pRR}2gc8lEnWAsWHS5ihsC`nc-9#e>IF<9I5T9Q2YfXu0rU k1(TJQf=Fb`B58(Hv853V%-0kc7#J8lUHx3vIVCg!0D+YpKL7v# delta 135 zcmYeC$v8o>o{fQlLH_gqLGICBhyCjP(lI7B2R-* - - - - - diff --git a/gtk-3.0/assets/checkbox-unchecked.png b/gtk-3.0/assets/checkbox-unchecked.png index 8fa69726930c8f5cbf3ef1a72676d6b31bb81096..6a03e258f2feafde46e8d0151166c6d7352f2f0e 100644 GIT binary patch delta 140 zcmeyvIG1sPWIYQ51H;x|=C2qS7*af4978nDzddEh)u15Z@bJHy?%k{2C3D1b1tzvM zO_RFQyTG9`)?p#@mwjJPUdSzbzT(EsHy1n$#MkOIO`dv5hD-bZhth}>XB9Uq81v5z xnz(bO;9KR+%}Rn7<3jAK4u>R4?0prl#rn3ld9!vB0|Nttr>h^U%Q~loCIHV_Jk0Eak-A^3LkLCzKf0ax{t z8jsF4o9^g{&0x-!*YwrCU{-chYtrH;0$~+)7(1}wft#e_het%M;xlwp}>dzG^uV-!2;bzk0Q#f#j zW!lsr#(!Z9%?FHfj_=zffA{G3hdtBF{VTbXy5<< diff --git a/gtk-3.0/assets/checkbox-unchecked.svg b/gtk-3.0/assets/checkbox-unchecked.svg deleted file mode 100644 index 06176e3..0000000 --- a/gtk-3.0/assets/checkbox-unchecked.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/gtk-3.0/assets/grid-selection-checked-dark.png b/gtk-3.0/assets/grid-selection-checked-dark.png index 6b9603656ab9c27844b4100aa147b5a3cf362e30..036b9de11b1274c006df7ef6dd4332873c43527d 100644 GIT binary patch delta 346 zcmZ3>_KInOWIZzj1B1(wu44=g3^@TlA+8Jz3|C!j?)kbu^7nY?=kdtT*`!vAweX!4`%;XQjJ|9E<{=Rzk_w}oPfBt+fEBstu_;cUxp9lB-`}*}u zbKQ^itN*@w`L(m<_qD5E`@6n&w0!OB{62s7m)eS-yLWt>J#DeGNPQ9m0|Q%0kY6x^ z+^T2qo*#(0w1a_xVY#P^V@O5Z-plTMhYfgK0=u@YeDvpOkM#jQ%$n!WQb`1BUeoY|E#oq6t3GyYrm8~^RGe&SFsGEvlF z%V{ZvTjmu?x3()gY+`=1{HMsvV1~&jihjOh*jyo4*6{ifYZb?xv)$HJ40}E}vo|>K zGqPAQuvCfcIR4r6-&=P^k^QwF3%Ztv+r9f_I$6~|9#_TYpK7PVS4q`cTe+C)6baotm9r( zUwMYvY?Z2&VXJL5rk^%%`O2#h+3K`VdTJ+#+1oArxt+g|??=Vac}#2!KYn(u z-jW~QI4P~`*ynW3?B_KPW*qTyV7))_)?4P3`;mHKOgU3*!w*iMHvi(Q@89j5HVWS0 z+4JQkt8Hzq`iB|(I!Hx}R50`&6xV`@n=wu6Mn1pI>-A`1vR{%S2koU7_&Vi!~ibI6V(} z@tu4gv$ib%oaGY(A(p;U<=JP?J&Zn}-BaKDwO2Ii_s^N1s?~3unsAa|e)+BST63lL zdhBg_eAuN}X8BCN<+oWZwo6F&ww?KVYm_yRIu`U={z~z zJ71PMs|vElT;*NEsCICE#($-Y+!iNTgbuh#2<>h1mf6a-;YDtY@Cx=n$8W#=aKiJ~ zx5v#jN9!MDJ}q(V@2t*U@qe%Bg+ifKhYUDamoPt`{?&ZTrf1t67B{c{X0FP>s&??+ zO6AiljvYSZESSLH(s1zR4y)&1H!S8{oEW`6L95Sa?T^C669Rg3O8I;)dbj1?R$i7V z7JYr`+FRXA*b8J1U(Nb@t$zQUPw8Co=a;+A`&|~A-FjElT_;bdM*F} diff --git a/gtk-3.0/assets/grid-selection-checked-dark.svg b/gtk-3.0/assets/grid-selection-checked-dark.svg deleted file mode 100644 index 4f6efb5..0000000 --- a/gtk-3.0/assets/grid-selection-checked-dark.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/gtk-3.0/assets/grid-selection-checked.png b/gtk-3.0/assets/grid-selection-checked.png index bb975c1bd54d2e7a7601b25dbbc4ccd6042095b6..53ea861967c5de1fa9bc18329c92e198b7c89342 100644 GIT binary patch delta 345 zcmey&_L6CWWIZzj1B1(wu44=g3^@TlA+8Jz3|C!j?)kbu^7nY?=kdtT*`##v`L$J@M%;cv5o_}Ax`uqCTzdwIImlb{t_4{02_;cUxp9lB-`}*}u zbKQ^itN*@w`L(m<_qD5E`@6n&w0!OB{62s7m)eS-yLWt>J?(&tM|~p$0|Q%0kY6x^ z+^T2qo*#(0w1a_xVVS3kV@O5Z*30HXhYfgK0tJK)E_gHN@!$6u{j~>x=$b45;#b0`;@DC)4~ zG@HV$?G;M5%Cj3%*e!S-TV7%eVw?E#*L_B}nXWe&^DgULaDMQ9bH#%HOdO8<3@la* zEL98&7Z@MRUvF-8;8Og$A8)(cgKhSH`Zy_Ru2ucnF1z~G+JYXvXCoOH7#KWV{an^L HB{Ts5*gUV} delta 871 zcmaFK^qFmfWIY=L14D6D)fWZ^2FBtbcPEB*=VV?oFfi+Sx;TbJa2}oR>o4pmb8P;! zx7;d9ORl(Ngt&02EfQ3I#Qs64YLan$)8tO~#p-rVa#aVJg={=*1cg6bO0bbw{Al5# zrA%9uG-kYA{k!MqSEY&8jSdR$ zKL5P&wrXXFmWBwI_s*DiFMs^_@z+Of^J8V3i5@zo<>lqBivwGn6t5rr)wC>AY4%yA zsa|V)dV7!7PM$oOzpbt9-LWJ?6I0WJ@4vr(9GgG=bm|l@)g_lRRVJToZ+rSJFv`zj z^>tT?6r(3~+Ryfu?7lwjbzA*JSGCV)--jN0>9E}F<~_DMool{IN8P@vwtY@WeG0y85J%5;kF7N5DZjq;5KTu-~Yd} zHC@|*RYK0Pb6#VaX{5a&Kg)hu*W%*MLJIp$=cpeIbJ!ShUpa;QXI2<~0?6Wq;QEyD;tcLCqz{m}O2_%(tuOsodP~6*D7YNi@LnS!;as}mky-WYf7kC~yuz9C zd+qL9>T%Pr{9IrEI&rp+QKkQvXz`<(_pbgpeatH~F6`lilisiX@1Jw&@~y8mQ^L2p n8Sjd_@*=WrPTcg@KjXK^zUiOm`*{%q0|SGntDnm{r-UW|KW?Wp diff --git a/gtk-3.0/assets/grid-selection-checked.svg b/gtk-3.0/assets/grid-selection-checked.svg deleted file mode 100644 index 3b84ed6..0000000 --- a/gtk-3.0/assets/grid-selection-checked.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/gtk-3.0/assets/grid-selection-unchecked-dark.png b/gtk-3.0/assets/grid-selection-unchecked-dark.png index 2f40f868a21f966375013f046a47d7ba8d7e0357..b0abbfdf7373c31edb306badc371aa380565adf0 100644 GIT binary patch delta 140 zcmdnQG?#ILWIYQ51H;YYP4x^63@M&2jv*C{Z?A5jdf0%$<)EeKUIq0Sm;7J)FQXQ4 ze>9t4VE>0@@8P<{_P7tt^CQ=vy40E)n*UAth3dy+lj0VHADz9ritne{1lc#2ause$ xUua-6S-`lSsXza3VT9cBw}mnC&;H7D?!4G3(o-nGz`(%Z>FUSovd$@?2>_6JJh%V= delta 290 zcmbQsxQS_kWIY=L14D6D)fWZ^2FBtbcPEB*=VV?oFfhFFba4!c;CwsXmg|s%K zp4Gqio0&D>*bIM$77xp7QBQ7$gr>?g`tPZH_4X!Hp25e{ypFf$B=8CHmUA4)znQN+IeTNQ)bl;F+Zh-b7(8A5T-G@yGywqlXMO - - - - - diff --git a/gtk-3.0/assets/grid-selection-unchecked.png b/gtk-3.0/assets/grid-selection-unchecked.png index f2b67fa6aec42b5a66da66ac72edd03e9e93eca2..675ed592eee4b1c273cd15209a50883487905d94 100644 GIT binary patch delta 151 zcmcc3w1RPhWIYQ51H;YYP4x^64Edfejv*e$-(FqF$e_sMe9_}r!iBu!Tx%KH(-~Qw zun0T&Z~N%~jrqjNj;z$(5lgcs&S7|xQd>|In^$z9%1^^+$IqhK&8`V%KdUCMS`l;p zK$7Y#?hHm20S5-gKU_QR@3Pi;w`J$!s!w@kv&%P6{?31&>qMV`O~=_u3=9kmp00i_ I>zopr0B80x$k${b(iY#{ za%AcT1@30K#_ktqRA>0e^!mj#wYusb5-dq@6g!mV#F6m7aY?uI)u(%xcwQFRx9@%F zPu7*6YU}4NdwH_-?%v$n)`~2B;_EYKt$6?2{r0x+DxT*`WB1pyK8T!Vd&uBU#XR@E z$2xr1>Ti_Fn)*7YM(%rLaj(|FsFQJ*YHM7zYSAK%b=ph+ zHk@NTZWL?G?9&soYG(ezyCu)7k`o#`zpMG$TFCy$<==L*v0gd*c@3l40k#_q(h1Bt z4ZIr|%@hQu{|im82VDH7XldM=a8+RXh63%$+0Pm}C;a+f!1XrD p#$I97OfPSP?umzg$(*-eA$?9_`Tbu%7#J8BJYD@<);T3K0RUBDlh6PF diff --git a/gtk-3.0/assets/grid-selection-unchecked.svg b/gtk-3.0/assets/grid-selection-unchecked.svg deleted file mode 100644 index 689da2d..0000000 --- a/gtk-3.0/assets/grid-selection-unchecked.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/gtk-3.0/assets/menuitem-checkbox-checked-hover.png b/gtk-3.0/assets/menuitem-checkbox-checked-hover.png index 7a27aa2834d7a67aa996df90cada52d45d55bb52..a9a4586c17e14dc20c4f969f45188821e58f5776 100644 GIT binary patch delta 110 zcmcb@*uXeJGM$Bifnn<}^H&TE4DOyTjv*C{$r5`W>_7hB{r}{Tp8tRR|6i|H_tJAk zQ}jRipZaZ@y#WO*8Wm6XOE^izHoo|O+M)9{N2ZKd!lfNk*8GjPmSC1;P*rz6=(2Oy RaRvqk22WQ%mvv4FO#pP!FJu4! delta 195 zcmZo*yuvs^vYw5BfkFQB|3n4`2FBtbcPEB*=VV?oFfjCax;Tbd2qq^;u&T5k`2YXE zZes)K}`Sv diff --git a/gtk-3.0/assets/menuitem-checkbox-checked-hover.svg b/gtk-3.0/assets/menuitem-checkbox-checked-hover.svg deleted file mode 100644 index 8ab7153..0000000 --- a/gtk-3.0/assets/menuitem-checkbox-checked-hover.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/gtk-3.0/assets/menuitem-checkbox-checked-insensitive.png b/gtk-3.0/assets/menuitem-checkbox-checked-insensitive.png index b3ab5ce500d30ca204267cd96bee222b6d3e56e0..c0c78f9d5092d142c625b4372c7c0ace1b8cdf94 100644 GIT binary patch delta 107 zcmcc4ST{j3m4$(UVe2pRR}2gcuAVNAAr*|t5_=x(Kl6XZ|5rbjO#Z+8@AYH)xvg3+ zKHh(C&%VsWsZl<_;E6qZjFc?HQl|!?ha8zQUI~|WOxf|zT&ky$kKskSac^$+gK`E2 O1_n=8KbLh*2~7Y5JT2@1 delta 197 zcmb=s&NxA`o{fQlLH_gqL*A?R z3Z<_e-0J%O-+t%Kg%&S^UVe9qy3{;n$Mb{JC*0Y4Cw7kZs(*i)+WxTne3&wlH`ALme^aNPp;5QR*&X;Z9TKA3h!qwy-!HLtYTnbVDNPHb6Mw< G&;$V8O - - - - diff --git a/gtk-3.0/assets/menuitem-checkbox-checked.png b/gtk-3.0/assets/menuitem-checkbox-checked.png index 4f609d66c9bdb6af0fbc41c794fd0c43bae31cb0..6483d991d664053a91547df782ea888f9c3f442c 100644 GIT binary patch delta 140 zcmZ3*yn=CpN`1bki(^OyW3mEoPg8$moSb}9t$Z!VCqFgs&&Lzy%ga00{IBQvbWSz; z^KXIso))4^qB%b$-c&zvT`*gMbCw{(63Hb39`THlO$%oVRJ?ns`AhM}b0d$#?E?32 wvzQ2*vBVm8w*6T5SK?8ucf?l>28MQxs0q~<|5-9HFfe$!`mwsKb4q9e0D6Ep9smFU delta 400 zcmZ3%xQcm#NGZx^prw85kH-JY5_^ECiDiBtA7vWRY*UqO|%y|C9geikBGF z7FaF2_vf#i%$hxy>;C?|8gwJylzqu`31){`Gp&ouDmQKZw3caC}hwIrIcduXH z`c=QHo;8T&%A1piHMy?+d3^l(&7+gwo@#uQ@Sizzhxh@rzyJToPw4Et8RY4cUGC(t zdwN$(pJKr0q6ud`X8mXQ`j_=ly~CgRk{%5VHy8@*UdB#Zq?PC3yhVjo^smLupF$T+ z{qV<3NY+6^+m8=}V6l<)(bAaJVi3CG6^9e>)9ggNjoGcD?ZXeAfM7$KF z8HAWV9_(cEYChu7$ok3H=80pIK|>zHCJP_F)owGKx-uCy1{JCC{>x}#U|`^6@O1Ta JS?83{1OTRou`mDt diff --git a/gtk-3.0/assets/menuitem-checkbox-checked.svg b/gtk-3.0/assets/menuitem-checkbox-checked.svg deleted file mode 100644 index 66f6f59..0000000 --- a/gtk-3.0/assets/menuitem-checkbox-checked.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/gtk-3.0/assets/menuitem-checkbox-mixed-hover.png b/gtk-3.0/assets/menuitem-checkbox-mixed-hover.png index 8b11a27eb1d5d19cfddd4ebf6e7b0e488530a561..34f1d0e54a5303717a8df973ad9fdf623d2f2d81 100644 GIT binary patch delta 61 zcmXR4oFHkz!oa|=^_Tf81_lNRPZ!6K3dUrK#0USc{XdbQt;ibf7V(3DVWX?u4xZQq RX$A%c22WQ%mvv4FO#o>I6UYDn delta 94 zcmWG6njjg;#=yWJ|M`C+0|NtNage(c!@6@aFBupZbUa-gLo5W76C_vgTe~DWM4fU@IJ| diff --git a/gtk-3.0/assets/menuitem-checkbox-mixed-hover.svg b/gtk-3.0/assets/menuitem-checkbox-mixed-hover.svg deleted file mode 100644 index d150f8f..0000000 --- a/gtk-3.0/assets/menuitem-checkbox-mixed-hover.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/gtk-3.0/assets/menuitem-checkbox-mixed-insensitive.png b/gtk-3.0/assets/menuitem-checkbox-mixed-insensitive.png index b49cb300e4b84ff258ac7daf222a2a070852a897..63d71935b239223210ac900a21c4db59b1039b74 100644 GIT binary patch delta 59 zcmd1xpCD<*!oa|=^_Tf81_lN(PZ!6K3dUrK#0UG2|2I*2;TUo71QSEQoajx<&iM)q P3=9mOu6{1-oD!MnPSguHwmNPIgFnGH9xvX - - - - diff --git a/gtk-3.0/assets/menuitem-checkbox-mixed-selected.svg b/gtk-3.0/assets/menuitem-checkbox-mixed-selected.svg deleted file mode 100644 index d150f8f..0000000 --- a/gtk-3.0/assets/menuitem-checkbox-mixed-selected.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/gtk-3.0/assets/menuitem-checkbox-mixed.png b/gtk-3.0/assets/menuitem-checkbox-mixed.png index 1081f3a5101fbf2f2391977706e3dfadf491c37d..a69e7532668c83a118e0f5bc217a6c11e7c7e169 100644 GIT binary patch delta 62 zcmaFD7&Ae|LfO;BF{FYqSz=m(NDa@oo4*W?e785_nWTK4f#sf&j&rUE0|S?z`lG|r Te^MA27#KWV{an^LB{Ts5wJQ}! delta 199 zcma!f!Z<;tp0PN{-HBn{IhmIX3=H!;T^vI!1m6Z66l^x&VP?`cWS+n7l6dlmS6Vez z&f!^?6?O*p{nC^F_4=XpVvA`ykCs_Je$KmPD(BYUPkzojvCCPgwm<2aweo}6E{;3S z_M2`=+_diZ5s~-TQ};ZuQhJ;JV%d)!%b(1>+FpK9#Lu$fXrirS(Fuu$SHYgw#XrrQ z=x@k4apCugDhKNrSY?9lGFCmSsOXegFky4nLS4tB^B=IK_^bbE+n}Amz`(%Z>FVdQ I&MBb@0EUEIGXMYp diff --git a/gtk-3.0/assets/menuitem-checkbox-mixed.svg b/gtk-3.0/assets/menuitem-checkbox-mixed.svg deleted file mode 100644 index 2b7b0ea..0000000 --- a/gtk-3.0/assets/menuitem-checkbox-mixed.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/gtk-3.0/assets/menuitem-radio-checked-hover.png b/gtk-3.0/assets/menuitem-radio-checked-hover.png index bfb97eafbb2b72366bc889cd5c63efd6696a411a..46a45783285afd8185f9247fae6a653440570966 100644 GIT binary patch delta 83 zcmZ3@m^MMumxY0WVe2pRR}2gcx}GkMAr*|t5=js2Z~yQ6f4*VEV|(c^RtHXr7YEio pkc>HK+{DEZ<#=PFGdBZ6#76s2oi!I9GcYhPc)I$ztaD0e0ssK<9-sgK delta 153 zcmYdW%{W1_o{fQlLH_gqL z|NlIb$a#h&`4xY}6l|L(PW;F}g@3sN*G9$(&sbDAC91h5Nz6FeqQ~&`aE{xwV`|45 zPBWzRR@~gd!|+p5HbFS~fGC^sf?bK{*w~eJbuO;aYGq*fAY91(XTA83rwj}X44$rj JF6*2UngGo2H%$Nl diff --git a/gtk-3.0/assets/menuitem-radio-checked-hover.svg b/gtk-3.0/assets/menuitem-radio-checked-hover.svg deleted file mode 100644 index afb9db2..0000000 --- a/gtk-3.0/assets/menuitem-radio-checked-hover.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/gtk-3.0/assets/menuitem-radio-checked-insensitive.png b/gtk-3.0/assets/menuitem-radio-checked-insensitive.png index 9bbb22a31c67cc50ff688a90b2cecd1e511c0d79..04e72d4f1276beeaca4f7cda29d14ff5bab8c412 100644 GIT binary patch delta 83 zcmdnWm^MMumxY0WVe2pRR}2gcx}GkMAr*|t5=js2FV}DWZ|IQmZ9eB}rUfoiBC`_1 o1(?GHoC6pgwK=SdG8h@6Kj~ey`0b~|z`(%Z>FVdQ&MBb@0C)2mz5oCK delta 163 zcmYe>$~Zx?o{fQlLH_gqLIEGjVCMQU+inKE*^9egV z3UbilnOe`iWIp4^dJTC$!^4p)crq2jnK~RlDV$+GqTp=LY{-@1^ia{lV78zV$908n z!v{tTu7Y-addv=WZtORX9QfxP&he<8F=@j5n~gu@1@^PaCIu+;F-5g7Ff{gX32i$i S|DS<@fx*+&&t;ucLK6TJDl~fl diff --git a/gtk-3.0/assets/menuitem-radio-checked-insensitive.svg b/gtk-3.0/assets/menuitem-radio-checked-insensitive.svg deleted file mode 100644 index 0bc947f..0000000 --- a/gtk-3.0/assets/menuitem-radio-checked-insensitive.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/gtk-3.0/assets/menuitem-radio-checked.png b/gtk-3.0/assets/menuitem-radio-checked.png index 067e6e8b3eb657337424c932b3c3fe0668e1e58d..4affb3e7f0f801f627273627ebcd9af3b476a613 100644 GIT binary patch delta 88 zcmdnbR5n2+$kx-vF{FYqd4Zq=Yxvf!H|Y=skSYZso+*PE{$DkI(PVUs}y~ZuR||vTOVb;wb_$4LOc%3d}R-<~*Jq zIU~|rLPAp2QQ`<&XXBFwiK9U!%nmhaVPe}f6ndE!Bq=Zl)PGq}&@d@Me8CHsrvfF6 z5kJ4rj}Kq?DmmeR8e0&vk)UKl%z=vk7mrTfl~p#!VgKp>|NsAgeO-RO*qNx{JAdAt z<_=K!$C^};vw(%e!&qQ5gQ2v*W~ZADT@U#M{0p%Zus=TfoUg? - - - - diff --git a/gtk-3.0/assets/radio-checked-dark.png b/gtk-3.0/assets/radio-checked-dark.png index be4856c74d8709123bda2b08f753dd99b00bf257..36c150d75f4fc58de58c2c82c5ed6f347a52638b 100644 GIT binary patch delta 362 zcmcb}(!xAJxt`J6)5S5Qf^q8P=DsvX0k`U(2H7sz@3*?=n|_n#nV%q$o-;eU_wMty z=|8tm(tjCJyZn}t-0NevtK)6=KH8n{^Pl5PeTSiCmXbExe7n6{AHUja&;0pMc|zPj z%}q*5?!5f>RNkz(yMI!GQ^g0jSvj}7?w*&JqrS(WDdJN6{pr8!yLGMOD-siqwk;0( z`=NKm$}_udUghky`TvvIP)+>ffdi+Wt~UPol=(<=OpWx0q|1T-k4hV4+nhKmeW0t< z{pazbf7=<)%v$?T^z^mol9dWFJ_n-@a5HN^>*?Pbz3$i~E<2Y!1{;!sDt{K-3_7>} zL|?0&${vFaO*5|8nXSFy6|o?>`dl!dZABuBqtD&F)zw~qFX(?ia_NSAJ4=H^yJc3z zhh_iTIltC^Ui0sx(=3a`N?)lYnWifrjy&|}sj2#x;Zz-Ozp{SD^jpq7Cj+~GuV>hO X*h#;2Zc_{c0|SGntDnm{r-UW|s?@ar delta 569 zcmZo+zQ{5`xt@WsILO_JVcj{ImkbO{+@3CuAr^wA!M^^&fg*c9-}{n$>q1EOp9Q|r zo*NEIFu(c2zT-mcIv1h8yiJ`sKUm#*?GLu9v4nqOzO#yR;#7^R8PS)WJPJBiZ+q#} zUd(py0#C(c^S67y&nbRiTYP-d*LnP zKX|*dU|zvtjzxkMw-Wm#l1?_hZmUgReC_kk8p)~YXEc^cf6mrgoLeWnUb^>~5$ocE zvDafyr){nm+|4>k>7vBRA4-uoou3|WJM+iT=+pw&b0Mp*{@!t;vLhy0f+;?*bm`5U hea*Y;c|>ru6(Rrt diff --git a/gtk-3.0/assets/radio-checked-dark.svg b/gtk-3.0/assets/radio-checked-dark.svg deleted file mode 100644 index b91357c..0000000 --- a/gtk-3.0/assets/radio-checked-dark.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/gtk-3.0/assets/radio-checked-insensitive-dark.png b/gtk-3.0/assets/radio-checked-insensitive-dark.png index 24403ff4f59e8cbff97f52caea68a8388e063a1c..b89373993d64a30c1c2e58fcd8c8daece86fb417 100644 GIT binary patch delta 158 zcmcb~yq2TEak-AvkyPZZGCQfwuGW za`IX>u(XIg;|z+JVdU%O&26nK>R7{8%PD>F+PQP$94%9_6(^linsCgCgPU{bgq%6~ zCw1DdDp?h5Dn56{{<{6VlOAisxM!Vx=D9J#=Bv$nhRBJ=d~8jSC{mUM4j9jWUx*C$p6>(e@f?jU2ch= TdBli;fq}u()z4*}Q$iB}d2r9y diff --git a/gtk-3.0/assets/radio-checked-insensitive-dark.svg b/gtk-3.0/assets/radio-checked-insensitive-dark.svg deleted file mode 100644 index f5cfbe0..0000000 --- a/gtk-3.0/assets/radio-checked-insensitive-dark.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/gtk-3.0/assets/radio-checked-insensitive.png b/gtk-3.0/assets/radio-checked-insensitive.png index bb07e1c93aa4b9eee20158ae63da1e497c1cc8e1..f95b5f54d96a169bec903ff6e783d3144a0ac6eb 100644 GIT binary patch delta 171 zcmZo=-orRSvYv&3fnn<}^H&TE49%V{jv*T7TLTUG8WecmESmpuBactbftFvbb`1xo z_P_A?(8Fu6;;nAXJE!%!6R+)ZIX=^0!F{`)N!W}V#}92~KGVMPv{4uDBC&7lKk@$m zq8Hy5F@g2sl)TU^CYJSSg)L9Kmb~M7xj*GlgjbO9k~|CD!-?Bf44h{r&+2YUGz-g> ed;R~8_^L;77Z2}QqRYU*z~JfX=d#Wzp$Pz$txb6V delta 373 zcmdnP*vdRXvYw5BfkFQB|3n4`2FBtbcPEB*=VV?oFfiJCx;Tbd2riu*?agc`;1->) zE6TFN;A4t+4%|L7tv#(Kv5tlF-9y29j%yFHl_WBVPY`9ElTaVouKnZ0>d*b5KEFRO zE!Wfk?eK07>+}!2^(VJ-emSt_n755hF;jV5NZsrOxoqqoSp5T@T>O==%X$OTve*>0 zy30lf40|35ca>bb$aD18iw``mdAEu$uGYG$*F8H`=-4jb`F)K4RGDw6gqfW3x*ody zrSVoa-3^{e6X!fvGK|_Fn0Lo<%5^)#1KJTM*gI?!4!-f|Jod-}wL4 z#PIK`makH6Yynnz&9cw(429#gcNR1CSMY^uTkmJ(F6Nkbzj~ci+s^cD8}C?J8$aWh hU7Yi_wf?#M&Mi(Y_a+_IVqjok@O1TaS?83{1OPBzrtkm& diff --git a/gtk-3.0/assets/radio-checked-insensitive.svg b/gtk-3.0/assets/radio-checked-insensitive.svg deleted file mode 100644 index e782ba6..0000000 --- a/gtk-3.0/assets/radio-checked-insensitive.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/gtk-3.0/assets/radio-checked.png b/gtk-3.0/assets/radio-checked.png index f2da6f65808972251f6a0c27251366f62991e1b8..36c150d75f4fc58de58c2c82c5ed6f347a52638b 100644 GIT binary patch delta 362 zcmey%(!xAJxt`J6)5S5Qf^q8P=DsvX0k`U(2H7sz@3*?=n|_n#nV%q$o-;eU_wMty z=|8tm(tjCJyZn}t-0NevtK)6=KH8n{^Pl5PeTSiCmXbExe7n6{AHUja&;0pMc|zPj z%}q*5?!5f>RNkz(yMI!GQ^g0jSvj}7?w*&JqrS(WDdJN6{pr8!yLGMOD-siqwk;0( z`=NKm$}_udUghky`TvvIP)+>ffdi+Wt~UPol=(<=OpWx0q|1T-k4hV4+nhKmeW0t< z{pazbf7=<)%v$?T^z^mol9dWFJ_n-@a5HN^>*?Pbz3$i~E<2Y!1{;!sDt{K-3_7>} zL|?0&${vFaO*5|8nXSFy6|o?>`dl!dZABuBqtD&F)zw~qFX(?ia_NSAJ4=H^yJc3z zhh_iTIltC^Ui0sx(=3a`N?)lYnWifrjy&|}sj2#x;Zz-Ozp{SD^jpq7Cj+~GuV>hO X*h#;2Zc_{c0|SGntDnm{r-UW|=?t|j delta 613 zcmZo+{>w5!xt@WsILO_JVcj{ImkbO{=AJH&Ar^wMlh3af3KThh{!ZmTsd)>0GlU{m zFQ~b&>ga7wA*WsMewGR8ac5mT_kV%w>as~r4=&$}>b%9Fnzi~wcy5%WT87%fMdwy* z|Gn4r^Re=W2G8ex{yWFA{8>z^-kJ)VI?Kr?W!jws^-m{{e&;9&!#2aBJ_pVRs<|DjLKUHznhbESuN*KOFp`S`OWo}PsLn=WRA9Gnm_wQ%3O^n_rQ$7W4zG?FO^Ugo-+Y(PK6lBt4x%41;!USRWCl{I+wWD>X zpYGpvcb%<;K+-RTmV?_9L>k0;KF{&m8&}`Sazr3*?e*-wm(2&=c`P#)lpflqpLhGP z-}2-xZsq80TnlQCOlUsF*0Q-+dZNeDpo2MP)$u&1Hr{?~=isxY-b}9F-)rfm*HLTD e9M446GZtJu*l6i|^Bw~O1B0ilpUXO@geCwa&NjIK diff --git a/gtk-3.0/assets/radio-checked.svg b/gtk-3.0/assets/radio-checked.svg deleted file mode 100644 index a89c1aa..0000000 --- a/gtk-3.0/assets/radio-checked.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/gtk-3.0/assets/radio-mixed-dark.png b/gtk-3.0/assets/radio-mixed-dark.png index 6fced71380018bae50730302ff30acd72a3c8a7f..044085f9f004426765bce3d13927fbf1594b14a6 100644 GIT binary patch delta 344 zcmbQp@`-7Jay_G^r;B4q1>@Yw%|$tZ0(3{Kc_P)H6uM@{|Ci+Nz(G{0968c)d%AdS?JDu_KPpyQi>yFwk zPgXoUD9ve|_5Z(s!LAPvcr!QUYs*ewSP=8DRq#k#+(hN;;&yNAcO2qo*8V25_35Gf z01r=t4Mo3R1-G=ID}LG{gzSG_m3 zNKJdvR*{*rh+R9ZXV*98@XtZEZW0lO>!&=;jXL$Y^UaJmt{~GpD%Y+{KOLsAr?kI# z>V2Dv#3SiCDXFPCE4Cgk3iS2q{kqYUq2vCOds!79+-muYvwYugiuk} zYVN%L95QmjUsZn=NBKVA6SrHdwEc%~U(}BOqPkWFhF5Oxea67Rz~JfX=d#Wzp$Py1 CBBsIs delta 504 zcmeywG?8V3ayW<~ zXYTEMKBqeUTc1*0w9Z72CpC8W+m>Y(^L($``#o=ab@1A-&jt0b5l^zd44=H>ZWU{$H3=0rrlvOjZ?j$b;Jm`?mG|G59~6;QtNPxd z+8)EZG++6%)Va5lIOI~#)z7`Lx=TyTDsR?y-IF%YRg&j4Gd-E$-B>yACg&QRcO1&o zWLE~S+~4(kdU2 - - - - - - diff --git a/gtk-3.0/assets/radio-mixed-insensitive-dark.png b/gtk-3.0/assets/radio-mixed-insensitive-dark.png index d20db95f0ba9a34b317aedac66151ec3c6582bf0..ff19d99d2e6ee9d8ea5917b21c8ccf6cd00c3e26 100644 GIT binary patch delta 143 zcmX@eynu0nWIYQ51H;x|=C2qS7}7mm978G?lN*@D*zDK>**FzMQXepX3SbQInB>UC z>BZzap}`=4Lzqjs#QR}GO~UR#UiZx%tgGbbOD_5$!jLMdqHreo;&(5>45CG$IHDXcOk~;Xsjz^9-SpuJC5gKX#y)EQn3AmKGcYhPaCo}{gRu<*u({p}-eq!>Lt(!lydgz5`CGt#V - - - - - - - - diff --git a/gtk-3.0/assets/radio-mixed-insensitive.png b/gtk-3.0/assets/radio-mixed-insensitive.png index 9b962722b17dfb9d0e7ee32786fd95b01d1f5a3f..7ab9561d92f903ece1408a785fb9c02635f13fa8 100644 GIT binary patch delta 162 zcmcc1w3%^&WIYQ51H;x|=C2qS7^*y7978nDw@%#6dq9E5Q`?S1^V4n=n%N)iJMjM&Q)B+# z*IW;zbT&p`<8F~ve9w^Ll$kjxJE*F05##oIPO?FS8^kFG`0R|1kgkFaL0ExDdBiOGndHrP_y7?ggsfI;E$4f1a%E9oL!The1Mz!`p>B`9-gZma<{J^ab6L6T z!{E1@->Na@<<6N9_$+mQwvqCW={*jUXI$LtSaeIX$Tv~w_5#nE+g6`$UXOFEer4c0 zN$dHpv^*C32X4ROCoj=3aLZ)lHV@Ey)5Q0?p*Zi$6Nb2Q9(L{9b - - - - - - - - diff --git a/gtk-3.0/assets/radio-mixed.png b/gtk-3.0/assets/radio-mixed.png index 54f75103a15bd24be5e7769885584aa648e6eb81..044085f9f004426765bce3d13927fbf1594b14a6 100644 GIT binary patch delta 344 zcmcc3@`-7Jay_G^r;B4q1>@Yw%|$tZ0(3{Kc_P)H6uM@{|Ci+Nz(G{0968c)d%AdS?JDu_KPpyQi>yFwk zPgXoUD9ve|_5Z(s!LAPvcr!QUYs*ewSP=8DRq#k#+(hN;;&yNAcO2qo*8V25_35Gf z01r=t4Mo3R1-G=ID}LG{gzSG_m3 zNKJdvR*{*rh+R9ZXV*98@XtZEZW0lO>!&=;jXL$Y^UaJmt{~GpD%Y+{KOLsAr?kI# z>V2Dv#3SiCDXFPCE4Cgk3iS2q{kqYUq2vCOds!79+-muYvwYugiuk} zYVN%L95QmjUsZn=NBKVA6SrHdwEc%~U(}BOqPkWFhF5Oxea67Rz~JfX=d#Wzp$PzF ClBWy+ delta 579 zcmeywbem;@aykfOF!9l$ zz4y)wun4zg%$2z0vB5_{Gw-?i4%byBMWRe@m$N4ybGvfOM!}VS%S$Vhd|NC=p7KSHfi}AH@7wSB+@%(e^O*eDwC(b*YcK&XC-u4I$kv#3Gr*;cY z?3wMORxHWG_MeT3@#y1^2JMFxFHJt#!pp{d?PbZdwPCOQwWjVeDoTpg5zEioDz#ky zg2gvQ?}%6jF_Qw`jDz;QoWnIO!f5BM^~)=TeiD)?UKtcgPR_kn8=!KO}|ki9w5@X zHcb2G+p_H;`|sC3`C28}WRNwt@La2OM6mjWCdSpb-hPYsTOORTQcL@J+|ApkPn>x5 z`mMb58-<<9-x3a-x}WYM!uq4@^?_eZa~+v~Kic7SxpqnSrtXIazxi#unY8gje|?k0 zk&Nij(41Dm!yUDgs`th*PG@OTbZkiqTYdEj$WuH#5n{b==Bux+GL!2+`rj}9`H%C@ zKkqy#=*;(>Im#fxb!&}X{ka109%Ir8N1MgWTMYKPsU&Tjp+3_`?vktJGRJ>zJg`Wc;}til_9_8SO}%aXQ<52ElipFi-CcG!PC{xWt~$(698W%6h8m} diff --git a/gtk-3.0/assets/radio-mixed.svg b/gtk-3.0/assets/radio-mixed.svg deleted file mode 100644 index 38c8a53..0000000 --- a/gtk-3.0/assets/radio-mixed.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/gtk-3.0/assets/radio-unchecked-dark.png b/gtk-3.0/assets/radio-unchecked-dark.png index 535c85caaf7f38ee2deed5d22a44a89e5cbd33a3..84bcdbe15ebe004bd04dde37ba87a69ebd833239 100644 GIT binary patch delta 217 zcmaFL{EBgcWIYQ51H;x|=C2qS7&dykIEGX(miDsd9dTe_UVi7_gHt?ty}AaT&xCU}oR;OSTz=~T|F?`_^$#k|t8zavn{TOj_Hy>FX)oFNO#C^w3htRvkPG{3bt7`Rj8zXxisX!u&Zm(>#q0 zIhT1y7oO~CJNW(L=5>ixC)t^}t^T<-^{ndie89d=bH=5`%GIk5J>f6w`6aSx{jHxp b@eFd3+7_#_xArqIFfe$!`njxgN@xNArK)6! delta 470 zcmaFG_>_5qWIY=L1B3kM|A`C?42;D=?oJHr&dI!FU|^i@>Eak-AvksNX|KZ$B5mrE zzwBEnUT|?zS-6N`4QKeesZDt`jQR_tY7c9K+>fCmLJ5>u;Z@Z+&(z_$ed-AdW z{>4sf0^T;N6hE8u-hT2-lfwaJ#uIZ@M=@+8ZAtBv2eZneUruT^^==WVZ6j8O^Dn!4`N%P)RfQ-h*jb4+vT z>Ty#xmEZ~4e}8}8_S?IAX4c%?Ry*Nrnty<8gKLBKjG9AJ*DC(!E?a+4f5EFtqnSOE zG_5#~J)hy-wx)CG`-Pv>{{60JcTvbwI$_zDD7Cuc>W$2I+kA{ZEDvnpiR4=IVSeVq zPa%va6@@nhZ~o8sOX~RNBg(U`o_J7sEn|X}Rc_e4yCcwMwgr}cP`#i;e zqeBDp@xpgSJMXZ!NjDsS&gJe9rxsEcSQ(#CbTM_2@U57gG54I(!xXoivh1)~l(qJ1 i*4;yYc|JFtH@CU8{%o4M%nAku1_n=8KbLh*2~7YN>gDbL diff --git a/gtk-3.0/assets/radio-unchecked-dark.svg b/gtk-3.0/assets/radio-unchecked-dark.svg deleted file mode 100644 index 214ed94..0000000 --- a/gtk-3.0/assets/radio-unchecked-dark.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/gtk-3.0/assets/radio-unchecked-insensitive-dark.png b/gtk-3.0/assets/radio-unchecked-insensitive-dark.png index 6c8f7c870b7bc10d9afa92806b432e3e897e39c6..b3bcec8de1a0e726ce5d6d1662935b7189eca507 100644 GIT binary patch delta 125 zcmZ3&+|M{cvW$g+fnn<}^H&TE3}K!wjv*C{trN|eS_}k^lsLSd^Z$QP;s6S4+vL7oO!aLHWs~Pct6{ h{JQdM^ON%R`@BR{_oOhcV_;xl@O1TaS?83{1OQg7G?xGX delta 405 zcmeBYT*5p-vYw5BfkFQB|3n4`2FBtbcPEB*=VV?oFfhh>x;Tbd2u_{6*RRDv;CQ0{ zKBta_izcWq*kIu$<>k$7t!t`wEd9dt4TiUF-TcX<(h|g-yh6t#<4p%=OTWy6Kjzz~ zcUN)xFr7B~Jp1O|pX+u08r|OZ-S)ioMU%H7)1Er-I9^zjfBRd#rtjtFi!}Ca7p$xn zVmY`pQKEd;y7wzrX&D~dQ7yr?^0n2<%vqta*ROj{y2G6}S%K#;JJWgJ%Xb=-JbFAr zLPdpa-2zJ*|8wsNn0Y|@^d^-kv%0_8A1+=~@!C=%^IZG<=kPY$@=JMm{}V Q1_lNOPgg&ebxsLQ0RCCL8UO$Q diff --git a/gtk-3.0/assets/radio-unchecked-insensitive-dark.svg b/gtk-3.0/assets/radio-unchecked-insensitive-dark.svg deleted file mode 100644 index 0fdfaf4..0000000 --- a/gtk-3.0/assets/radio-unchecked-insensitive-dark.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/gtk-3.0/assets/radio-unchecked-insensitive.png b/gtk-3.0/assets/radio-unchecked-insensitive.png index cd409f7ef235ec5fffe17438c0158af2cdd2e290..4ea0649d0f12efc0e3ee5ba1c9082e5556a50048 100644 GIT binary patch delta 153 zcmX@lw2E}z3EG~G|$Vk@2nlF zI#u?(HJ@SN=+7|aLZ8FuhTHuG?IqVs_+490TWb{3PNh--GY zxZ8(?U3OEF9O@7J|Icy%SBT4oCZ45E+3X+NvRSp6m3&^bO--3JXY%cNw+^q3D%tBG zzv*;=QA!FIwI{m)v$H?4Hn-=x0jtrkKfJwcI9Cc&rr+jGnQIgG<1I1 zueNg0fhGJWd>8P%Y2v$mz}DPiR}n-1Z? - - - - - diff --git a/gtk-3.0/assets/radio-unchecked.png b/gtk-3.0/assets/radio-unchecked.png index ada911bfd8ab78b984f3598f5991a61583b9137f..896e45f96c59bac73bd4f054ad07a35366c69f54 100644 GIT binary patch delta 273 zcmZo=S;#a&vYv&3fnn<}^H&TE3@``KejWe- delta 502 zcmZ3;)XFkJvYw5BfkFQB|3n4`2FBtbcPEB*=VV?oFfi`-ba4!^5bT|7oz3JZ(wd(B zk+bPE+tFiohW1VqLh|Njs2?E4TZ+v{Ci zg!rEp{j{6uW2Yv>85t-d#MS!dQ_@C-%P*(!v^$?RIoqDJ@rO#$w|fRX*Zr0s{^6Tr zH{Y0VIf(oY=9)+hkJe%$)7f zQoU}zQvJu*hlHwn$T9ItI&!n=@Uk_hKP#MD--!1epW(o)E3x6*+OJiAx82Wwf4liG z>wi5Si7g37rY#Ly{k4hd*tGx0tJT0BQhM|5XZG%wU#q15CA_(L{D;y9z6s8}QsNJ0 z@11x$ZL`3@_qo9O>#zGyrd(PPwmSc8TCtYYAI5-fv0p!PzCX^uz`)?? L>gTe~DWM4fAvNlY diff --git a/gtk-3.0/assets/radio-unchecked.svg b/gtk-3.0/assets/radio-unchecked.svg deleted file mode 100644 index 2f05a0d..0000000 --- a/gtk-3.0/assets/radio-unchecked.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - From 2eb7b32c85c9a5aa434b1ae4cb37f85626775df9 Mon Sep 17 00:00:00 2001 From: Test User Date: Sat, 6 Jun 2015 09:57:00 +0200 Subject: [PATCH 51/73] Adds unity icons --- unity/close_dash.svg | 1 + unity/close_dash_disabled.svg | 1 + unity/close_dash_prelight.svg | 1 + unity/close_dash_pressed.svg | 1 + unity/icons/close_dash.svg | 1 - unity/icons/close_dash_disabled.svg | 1 - unity/icons/close_dash_prelight.svg | 1 - unity/icons/close_dash_pressed.svg | 1 - unity/icons/maximize_dash.svg | 1 - unity/icons/maximize_dash_disabled.svg | 1 - unity/icons/maximize_dash_prelight.svg | 1 - unity/icons/maximize_dash_pressed.svg | 1 - unity/icons/minimize_dash.svg | 1 - unity/icons/minimize_dash_disabled.svg | 1 - unity/icons/minimize_dash_prelight.svg | 1 - unity/icons/minimize_dash_pressed.svg | 1 - unity/icons/sheet_style_close_focused.svg | 1 - unity/icons/sheet_style_close_focused_prelight.svg | 1 - unity/icons/sheet_style_close_focused_pressed.svg | 1 - unity/icons/unmaximize_dash.svg | 1 - unity/icons/unmaximize_dash_disabled.svg | 1 - unity/icons/unmaximize_dash_prelight.svg | 1 - unity/icons/unmaximize_dash_pressed.svg | 1 - unity/maximize_dash.svg | 1 + unity/maximize_dash_disabled.svg | 1 + unity/maximize_dash_prelight.svg | 1 + unity/maximize_dash_pressed.svg | 1 + unity/minimize_dash.svg | 1 + unity/minimize_dash_disabled.svg | 1 + unity/minimize_dash_prelight.svg | 1 + unity/minimize_dash_pressed.svg | 1 + unity/sheet_style_close_focused.svg | 1 + unity/sheet_style_close_focused_prelight.svg | 1 + unity/sheet_style_close_focused_pressed.svg | 1 + unity/unmaximize_dash.svg | 1 + unity/unmaximize_dash_disabled.svg | 1 + unity/unmaximize_dash_prelight.svg | 1 + unity/unmaximize_dash_pressed.svg | 1 + 38 files changed, 19 insertions(+), 19 deletions(-) create mode 100644 unity/close_dash.svg create mode 120000 unity/close_dash_disabled.svg create mode 120000 unity/close_dash_prelight.svg create mode 120000 unity/close_dash_pressed.svg delete mode 120000 unity/icons/close_dash.svg delete mode 120000 unity/icons/close_dash_disabled.svg delete mode 120000 unity/icons/close_dash_prelight.svg delete mode 120000 unity/icons/close_dash_pressed.svg delete mode 120000 unity/icons/maximize_dash.svg delete mode 120000 unity/icons/maximize_dash_disabled.svg delete mode 120000 unity/icons/maximize_dash_prelight.svg delete mode 120000 unity/icons/maximize_dash_pressed.svg delete mode 120000 unity/icons/minimize_dash.svg delete mode 120000 unity/icons/minimize_dash_disabled.svg delete mode 120000 unity/icons/minimize_dash_prelight.svg delete mode 120000 unity/icons/minimize_dash_pressed.svg delete mode 120000 unity/icons/sheet_style_close_focused.svg delete mode 120000 unity/icons/sheet_style_close_focused_prelight.svg delete mode 120000 unity/icons/sheet_style_close_focused_pressed.svg delete mode 120000 unity/icons/unmaximize_dash.svg delete mode 120000 unity/icons/unmaximize_dash_disabled.svg delete mode 120000 unity/icons/unmaximize_dash_prelight.svg delete mode 120000 unity/icons/unmaximize_dash_pressed.svg create mode 100644 unity/maximize_dash.svg create mode 120000 unity/maximize_dash_disabled.svg create mode 120000 unity/maximize_dash_prelight.svg create mode 120000 unity/maximize_dash_pressed.svg create mode 100644 unity/minimize_dash.svg create mode 120000 unity/minimize_dash_disabled.svg create mode 120000 unity/minimize_dash_prelight.svg create mode 120000 unity/minimize_dash_pressed.svg create mode 120000 unity/sheet_style_close_focused.svg create mode 120000 unity/sheet_style_close_focused_prelight.svg create mode 120000 unity/sheet_style_close_focused_pressed.svg create mode 100644 unity/unmaximize_dash.svg create mode 120000 unity/unmaximize_dash_disabled.svg create mode 120000 unity/unmaximize_dash_prelight.svg create mode 120000 unity/unmaximize_dash_pressed.svg diff --git a/unity/close_dash.svg b/unity/close_dash.svg new file mode 100644 index 0000000..752e8a0 --- /dev/null +++ b/unity/close_dash.svg @@ -0,0 +1 @@ + diff --git a/unity/close_dash_disabled.svg b/unity/close_dash_disabled.svg new file mode 120000 index 0000000..0749829 --- /dev/null +++ b/unity/close_dash_disabled.svg @@ -0,0 +1 @@ +close_unfocused.svg \ No newline at end of file diff --git a/unity/close_dash_prelight.svg b/unity/close_dash_prelight.svg new file mode 120000 index 0000000..64b2bff --- /dev/null +++ b/unity/close_dash_prelight.svg @@ -0,0 +1 @@ +close_focused_prelight.svg \ No newline at end of file diff --git a/unity/close_dash_pressed.svg b/unity/close_dash_pressed.svg new file mode 120000 index 0000000..ba6d4fe --- /dev/null +++ b/unity/close_dash_pressed.svg @@ -0,0 +1 @@ +close_unfocused_pressed.svg \ No newline at end of file diff --git a/unity/icons/close_dash.svg b/unity/icons/close_dash.svg deleted file mode 120000 index c20c766..0000000 --- a/unity/icons/close_dash.svg +++ /dev/null @@ -1 +0,0 @@ -./../close.svg \ No newline at end of file diff --git a/unity/icons/close_dash_disabled.svg b/unity/icons/close_dash_disabled.svg deleted file mode 120000 index 2775794..0000000 --- a/unity/icons/close_dash_disabled.svg +++ /dev/null @@ -1 +0,0 @@ -./../close_unfocused.svg \ No newline at end of file diff --git a/unity/icons/close_dash_prelight.svg b/unity/icons/close_dash_prelight.svg deleted file mode 120000 index 247f20b..0000000 --- a/unity/icons/close_dash_prelight.svg +++ /dev/null @@ -1 +0,0 @@ -./../close_focused_prelight.svg \ No newline at end of file diff --git a/unity/icons/close_dash_pressed.svg b/unity/icons/close_dash_pressed.svg deleted file mode 120000 index 5f40ad1..0000000 --- a/unity/icons/close_dash_pressed.svg +++ /dev/null @@ -1 +0,0 @@ -./../close_focused_pressed.svg \ No newline at end of file diff --git a/unity/icons/maximize_dash.svg b/unity/icons/maximize_dash.svg deleted file mode 120000 index 4c8ea97..0000000 --- a/unity/icons/maximize_dash.svg +++ /dev/null @@ -1 +0,0 @@ -./../maximize.svg \ No newline at end of file diff --git a/unity/icons/maximize_dash_disabled.svg b/unity/icons/maximize_dash_disabled.svg deleted file mode 120000 index ae51f77..0000000 --- a/unity/icons/maximize_dash_disabled.svg +++ /dev/null @@ -1 +0,0 @@ -./../maximize_unfocused.svg \ No newline at end of file diff --git a/unity/icons/maximize_dash_prelight.svg b/unity/icons/maximize_dash_prelight.svg deleted file mode 120000 index 4c8ea97..0000000 --- a/unity/icons/maximize_dash_prelight.svg +++ /dev/null @@ -1 +0,0 @@ -./../maximize.svg \ No newline at end of file diff --git a/unity/icons/maximize_dash_pressed.svg b/unity/icons/maximize_dash_pressed.svg deleted file mode 120000 index 4c8ea97..0000000 --- a/unity/icons/maximize_dash_pressed.svg +++ /dev/null @@ -1 +0,0 @@ -./../maximize.svg \ No newline at end of file diff --git a/unity/icons/minimize_dash.svg b/unity/icons/minimize_dash.svg deleted file mode 120000 index dc045ff..0000000 --- a/unity/icons/minimize_dash.svg +++ /dev/null @@ -1 +0,0 @@ -./../minimize.svg \ No newline at end of file diff --git a/unity/icons/minimize_dash_disabled.svg b/unity/icons/minimize_dash_disabled.svg deleted file mode 120000 index bfdfa65..0000000 --- a/unity/icons/minimize_dash_disabled.svg +++ /dev/null @@ -1 +0,0 @@ -./../minimize_unfocused.svg \ No newline at end of file diff --git a/unity/icons/minimize_dash_prelight.svg b/unity/icons/minimize_dash_prelight.svg deleted file mode 120000 index 7777dbd..0000000 --- a/unity/icons/minimize_dash_prelight.svg +++ /dev/null @@ -1 +0,0 @@ -./../minimize_focused_prelight.svg \ No newline at end of file diff --git a/unity/icons/minimize_dash_pressed.svg b/unity/icons/minimize_dash_pressed.svg deleted file mode 120000 index 523611a..0000000 --- a/unity/icons/minimize_dash_pressed.svg +++ /dev/null @@ -1 +0,0 @@ -./../minimize_focused_pressed.svg \ No newline at end of file diff --git a/unity/icons/sheet_style_close_focused.svg b/unity/icons/sheet_style_close_focused.svg deleted file mode 120000 index 2775794..0000000 --- a/unity/icons/sheet_style_close_focused.svg +++ /dev/null @@ -1 +0,0 @@ -./../close_unfocused.svg \ No newline at end of file diff --git a/unity/icons/sheet_style_close_focused_prelight.svg b/unity/icons/sheet_style_close_focused_prelight.svg deleted file mode 120000 index 247f20b..0000000 --- a/unity/icons/sheet_style_close_focused_prelight.svg +++ /dev/null @@ -1 +0,0 @@ -./../close_focused_prelight.svg \ No newline at end of file diff --git a/unity/icons/sheet_style_close_focused_pressed.svg b/unity/icons/sheet_style_close_focused_pressed.svg deleted file mode 120000 index 5f40ad1..0000000 --- a/unity/icons/sheet_style_close_focused_pressed.svg +++ /dev/null @@ -1 +0,0 @@ -./../close_focused_pressed.svg \ No newline at end of file diff --git a/unity/icons/unmaximize_dash.svg b/unity/icons/unmaximize_dash.svg deleted file mode 120000 index d96076c..0000000 --- a/unity/icons/unmaximize_dash.svg +++ /dev/null @@ -1 +0,0 @@ -./../unmaximize.svg \ No newline at end of file diff --git a/unity/icons/unmaximize_dash_disabled.svg b/unity/icons/unmaximize_dash_disabled.svg deleted file mode 120000 index 9832785..0000000 --- a/unity/icons/unmaximize_dash_disabled.svg +++ /dev/null @@ -1 +0,0 @@ -./../unmaximize_unfocused.svg \ No newline at end of file diff --git a/unity/icons/unmaximize_dash_prelight.svg b/unity/icons/unmaximize_dash_prelight.svg deleted file mode 120000 index d96076c..0000000 --- a/unity/icons/unmaximize_dash_prelight.svg +++ /dev/null @@ -1 +0,0 @@ -./../unmaximize.svg \ No newline at end of file diff --git a/unity/icons/unmaximize_dash_pressed.svg b/unity/icons/unmaximize_dash_pressed.svg deleted file mode 120000 index d96076c..0000000 --- a/unity/icons/unmaximize_dash_pressed.svg +++ /dev/null @@ -1 +0,0 @@ -./../unmaximize.svg \ No newline at end of file diff --git a/unity/maximize_dash.svg b/unity/maximize_dash.svg new file mode 100644 index 0000000..bfd992c --- /dev/null +++ b/unity/maximize_dash.svg @@ -0,0 +1 @@ + diff --git a/unity/maximize_dash_disabled.svg b/unity/maximize_dash_disabled.svg new file mode 120000 index 0000000..a933b39 --- /dev/null +++ b/unity/maximize_dash_disabled.svg @@ -0,0 +1 @@ +maximize_unfocused.svg \ No newline at end of file diff --git a/unity/maximize_dash_prelight.svg b/unity/maximize_dash_prelight.svg new file mode 120000 index 0000000..3efa75f --- /dev/null +++ b/unity/maximize_dash_prelight.svg @@ -0,0 +1 @@ +maximize_dash.svg \ No newline at end of file diff --git a/unity/maximize_dash_pressed.svg b/unity/maximize_dash_pressed.svg new file mode 120000 index 0000000..3efa75f --- /dev/null +++ b/unity/maximize_dash_pressed.svg @@ -0,0 +1 @@ +maximize_dash.svg \ No newline at end of file diff --git a/unity/minimize_dash.svg b/unity/minimize_dash.svg new file mode 100644 index 0000000..c838c2b --- /dev/null +++ b/unity/minimize_dash.svg @@ -0,0 +1 @@ + diff --git a/unity/minimize_dash_disabled.svg b/unity/minimize_dash_disabled.svg new file mode 120000 index 0000000..ac8c42d --- /dev/null +++ b/unity/minimize_dash_disabled.svg @@ -0,0 +1 @@ +minimize_unfocused.svg \ No newline at end of file diff --git a/unity/minimize_dash_prelight.svg b/unity/minimize_dash_prelight.svg new file mode 120000 index 0000000..752db6d --- /dev/null +++ b/unity/minimize_dash_prelight.svg @@ -0,0 +1 @@ +minimize_focused_prelight.svg \ No newline at end of file diff --git a/unity/minimize_dash_pressed.svg b/unity/minimize_dash_pressed.svg new file mode 120000 index 0000000..d2b384b --- /dev/null +++ b/unity/minimize_dash_pressed.svg @@ -0,0 +1 @@ +minimize_focused_pressed.svg \ No newline at end of file diff --git a/unity/sheet_style_close_focused.svg b/unity/sheet_style_close_focused.svg new file mode 120000 index 0000000..0749829 --- /dev/null +++ b/unity/sheet_style_close_focused.svg @@ -0,0 +1 @@ +close_unfocused.svg \ No newline at end of file diff --git a/unity/sheet_style_close_focused_prelight.svg b/unity/sheet_style_close_focused_prelight.svg new file mode 120000 index 0000000..64b2bff --- /dev/null +++ b/unity/sheet_style_close_focused_prelight.svg @@ -0,0 +1 @@ +close_focused_prelight.svg \ No newline at end of file diff --git a/unity/sheet_style_close_focused_pressed.svg b/unity/sheet_style_close_focused_pressed.svg new file mode 120000 index 0000000..ba6d4fe --- /dev/null +++ b/unity/sheet_style_close_focused_pressed.svg @@ -0,0 +1 @@ +close_unfocused_pressed.svg \ No newline at end of file diff --git a/unity/unmaximize_dash.svg b/unity/unmaximize_dash.svg new file mode 100644 index 0000000..74a1d70 --- /dev/null +++ b/unity/unmaximize_dash.svg @@ -0,0 +1 @@ + diff --git a/unity/unmaximize_dash_disabled.svg b/unity/unmaximize_dash_disabled.svg new file mode 120000 index 0000000..8340f67 --- /dev/null +++ b/unity/unmaximize_dash_disabled.svg @@ -0,0 +1 @@ +unmaximize_unfocused.svg \ No newline at end of file diff --git a/unity/unmaximize_dash_prelight.svg b/unity/unmaximize_dash_prelight.svg new file mode 120000 index 0000000..945a9f8 --- /dev/null +++ b/unity/unmaximize_dash_prelight.svg @@ -0,0 +1 @@ +unmaximize_dash.svg \ No newline at end of file diff --git a/unity/unmaximize_dash_pressed.svg b/unity/unmaximize_dash_pressed.svg new file mode 120000 index 0000000..945a9f8 --- /dev/null +++ b/unity/unmaximize_dash_pressed.svg @@ -0,0 +1 @@ +unmaximize_dash.svg \ No newline at end of file From 7f0f008de08c33ef5e0a65d7c67d5a45d9b83e7e Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 7 Aug 2015 01:09:22 +0530 Subject: [PATCH 52/73] Various tweaks --- gtk-3.0/scss/widgets/_actionbar.scss | 2 +- gtk-3.0/scss/widgets/_base.scss | 112 +++--- gtk-3.0/scss/widgets/_button.scss | 529 ++++++++++++++------------- gtk-3.0/scss/widgets/_calendar.scss | 36 +- gtk-3.0/scss/widgets/_choosers.scss | 184 +++++----- gtk-3.0/scss/widgets/_entry.scss | 108 +++--- gtk-3.0/scss/widgets/_infobar.scss | 44 +-- gtk-3.0/scss/widgets/_menu.scss | 10 +- gtk-3.0/scss/widgets/_misc.scss | 216 +++++------ gtk-3.0/scss/widgets/_notebook.scss | 188 +++++----- gtk-3.0/scss/widgets/_progress.scss | 256 ++++++------- gtk-3.0/scss/widgets/_toggle.scss | 140 +++---- gtk-3.0/scss/widgets/_toolbar.scss | 2 +- gtk-3.0/scss/widgets/_window.scss | 60 +-- 14 files changed, 952 insertions(+), 935 deletions(-) diff --git a/gtk-3.0/scss/widgets/_actionbar.scss b/gtk-3.0/scss/widgets/_actionbar.scss index 6745b23..cfae302 100644 --- a/gtk-3.0/scss/widgets/_actionbar.scss +++ b/gtk-3.0/scss/widgets/_actionbar.scss @@ -80,7 +80,7 @@ @include toolbar($selected_bg_color, $selected_fg_color); .button { - @include button(shade($selected_bg_color, 1.68), shade($selected_bg_color, 0.8)); + @include button($selected_bg_color, $selected_fg_color); &.suggested-action { @extend .suggested-action.button; } } diff --git a/gtk-3.0/scss/widgets/_base.scss b/gtk-3.0/scss/widgets/_base.scss index bad015d..9897e50 100755 --- a/gtk-3.0/scss/widgets/_base.scss +++ b/gtk-3.0/scss/widgets/_base.scss @@ -3,19 +3,19 @@ ***************/ * { - -GtkArrow-arrow-scaling: 0.5; - -GtkExpander-expander-size: 8; - -GtkStatusbar-shadow-type: none; - -GtkToolItemGroup-expander-size: 8; - -GtkWindow-resize-grip-height: 0; - -GtkWindow-resize-grip-width: 0; - -WnckTasklist-fade-overlay-rect: 0; + -GtkArrow-arrow-scaling: 0.5; + -GtkExpander-expander-size: 8; + -GtkStatusbar-shadow-type: none; + -GtkToolItemGroup-expander-size: 8; + -GtkWindow-resize-grip-height: 0; + -GtkWindow-resize-grip-width: 0; + -WnckTasklist-fade-overlay-rect: 0; - outline-color: alpha($selected_bg_color, 0.5); - outline-style: dashed; - outline-width: 1px; - outline-offset: -1px; - outline-radius: $roundness; + outline-color: alpha($selected_bg_color, 0.5); + outline-style: dashed; + outline-width: 1px; + outline-offset: -1px; + outline-radius: $roundness; } @@ -24,77 +24,77 @@ *************/ %selected { - &, &:focus { - background-color: $selected_bg_color; - color: $selected_fg_color; - } + &, &:focus { + background-color: $selected_bg_color; + color: $selected_fg_color; + } } * { - &:selected { @extend %selected; } + &:selected { @extend %selected; } - &:insensitive, - &:insensitive:insensitive { color: mix($fg_color, $bg_color, 0.50); } + &:insensitive, + &:insensitive:insensitive { color: mix($fg_color, $bg_color, 0.50); } - &:insensitive { -gtk-image-effect: dim; } + &:insensitive { -gtk-image-effect: dim; } - &:hover { -gtk-image-effect: highlight; } + &:hover { -gtk-image-effect: highlight; } - /* hyperlinks */ - -GtkHTML-link-color: $link_color; - -GtkIMHtml-hyperlink-color: $link_color; - -GtkWidget-link-color: $link_color; - -GtkWidget-visited-link-color: $link_color; + /* hyperlinks */ + -GtkHTML-link-color: $link_color; + -GtkIMHtml-hyperlink-color: $link_color; + -GtkWidget-link-color: $link_color; + -GtkWidget-visited-link-color: $link_color; - &:link, &:visited { color: $link_color; } + &:link, &:visited { color: $link_color; } } .background { - background-color: $bg_color; - color: $fg_color; + background-color: $bg_color; + color: $fg_color; - &:backdrop { - text-shadow: none; - icon-shadow: none; - } + &:backdrop { + text-shadow: none; + icon-shadow: none; + } - &.csd { background-color: $bg_color; } + &.csd { background-color: $bg_color; } } .gtkstyle-fallback { - background-color: alpha($bg_color, .5); - color: $fg_color; + background-color: alpha($bg_color, .5); + color: $fg_color; - &:prelight { - background-color: shade($bg_color, 1.1); - color: $fg_color; - } + &:prelight { + background-color: shade($bg_color, 1.1); + color: $fg_color; + } - &:active { - background-color: shade($bg_color, 0.9); - color: $fg_color; - } + &:active { + background-color: shade($bg_color, 0.9); + color: $fg_color; + } - &:insensitive { - background-color: shade(shade($bg_color, 0.95), 1.05); - color: mix($fg_color, $bg_color, 0.50); - } + &:insensitive { + background-color: shade(shade($bg_color, 0.95), 1.05); + color: mix($fg_color, $bg_color, 0.50); + } - &:selected { @extend %selected; } + &:selected { @extend %selected; } } GtkImage, GtkLabel, GtkBox, GtkGrid { - &, &:insensitive { background-color: transparent; } + &, &:insensitive { background-color: transparent; } } GtkLabel { - &.separator { - color: $fg_color; + &.separator { + color: $fg_color; - @extend .dim-label; - } + @extend .dim-label; + } - &:selected { @extend %selected; } + &:selected { @extend %selected; } - &:insensitive { color: mix($fg_color, $bg_color, 0.50); } + &:insensitive { color: mix($fg_color, $bg_color, 0.50); } } diff --git a/gtk-3.0/scss/widgets/_button.scss b/gtk-3.0/scss/widgets/_button.scss index 60c81cd..e62bf60 100755 --- a/gtk-3.0/scss/widgets/_button.scss +++ b/gtk-3.0/scss/widgets/_button.scss @@ -2,304 +2,317 @@ ! Buttons **********/ -$shadow_strength: .3; - @include exports("button_extends") { - %button { - padding: $spacing ($spacing + 2px); - border-width: 1px; - border-style: solid; - border-radius: $roundness; - transition: 150ms ease; - outline-color: transparent; + %button { + padding: $spacing ($spacing + 2px); + border-width: 1px; + border-style: solid; + border-radius: $roundness; + transition: 150ms ease; + outline-color: transparent; - -GtkWidget-focus-padding: 1; - -GtkWidget-focus-line-width: 0; + -GtkWidget-focus-padding: 1; + -GtkWidget-focus-line-width: 0; &:focus, &:hover, &:active { transition: none; } - } + } - %linked_middle { - border-radius: 0; - border-left-style: none; - border-right-style: solid; + %linked_middle { + border-radius: 0; + border-left-style: none; + border-right-style: solid; - &:dir(rtl) { - border-radius: 0; // needed when including %linked_middle:dir(rtl) - border-right-style: none; - border-left-style: solid - } - } + &:dir(rtl) { + border-radius: 0; // needed when including %linked_middle:dir(rtl) + border-right-style: none; + border-left-style: solid + } + } - %linked_button { - border-width: 1px; - border-style: solid; - border-radius: 0; - border-right-style: none; - border-left-style: none; + %linked_button { + border-width: 1px; + border-style: solid; + border-radius: 0; + border-right-style: none; + border-left-style: none; - &:first-child { - border-width: 1px; - border-radius: $roundness; - border-left-style: solid; - border-right-style: none; - border-top-right-radius: 0; - border-bottom-right-radius: 0; + &:first-child { + border-width: 1px; + border-radius: $roundness; + border-left-style: solid; + border-right-style: none; + border-top-right-radius: 0; + border-bottom-right-radius: 0; - &:dir(rtl) { - border-left-style: none; - border-right-style: solid; - } - } + &:dir(rtl) { + border-left-style: none; + border-right-style: solid; + } + } - &:last-child { - border-width: 1px; - border-radius: $roundness; - border-left-style: none; - border-right-style: solid; - border-top-left-radius: 0; - border-bottom-left-radius: 0; + &:last-child { + border-width: 1px; + border-radius: $roundness; + border-left-style: none; + border-right-style: solid; + border-top-left-radius: 0; + border-bottom-left-radius: 0; - &:dir(rtl) { - border-left-style: solid; - border-right-style: none; - } - } + &:dir(rtl) { + border-left-style: solid; + border-right-style: none; + } + } - &:only-child, &:first-child:only-child { - border-width: 1px; - border-style: solid; - border-radius: $roundness; - } - } + &:only-child, &:first-child:only-child { + border-width: 1px; + border-style: solid; + border-radius: $roundness; + } + } } @mixin linked_button($bg) { - @extend %linked_button; + $border_strength: if(lightness($bg) > 50, 0, .1); + $shadow_strength: if(lightness($bg) > 50, 0, .1); - box-shadow: inset -1px 0 border_normal(rgba(0,0,0,.12)), - 0 1px 2px -1px alpha($dark_shadow, .12 + $shadow_strength); + @extend %linked_button; - &:focus, &:hover { - box-shadow: inset -1px 0 border_focus(rgba(0,0,0,.12)), - 0 1px 2px -1px alpha($dark_shadow, .32 + $shadow_strength); - } + box-shadow: inset -1px 0 border_normal(rgba(0,0,0,.12 + $border_strength)), + 0 1px 2px -1px alpha($dark_shadow, .12 + $shadow_strength); - &:active, &:active:hover, - &:active:focus, &:active:hover:focus, - &:checked, &:checked:hover, - &:checked:focus, &:checked:hover:focus { - box-shadow: inset -1px 0 border_active(rgba(0,0,0,.12)), - inset 0 1px alpha($dark_shadow, .07), - inset 0 -1px alpha($dark_shadow, .05); - } + &:focus, &:hover { + box-shadow: inset -1px 0 border_focus(rgba(0,0,0,.12 + $border_strength)), + 0 1px 2px -1px alpha($dark_shadow, .32 + $shadow_strength); + } - &:insensitive { box-shadow: inset -1px 0 shade($bg, .8); } + &:active, &:active:hover, + &:active:focus, &:active:hover:focus, + &:checked, &:checked:hover, + &:checked:focus, &:checked:hover:focus { + box-shadow: inset -1px 0 border_active(rgba(0,0,0,.12 + $border_strength)), + inset 0 1px alpha($dark_shadow, .07), + inset 0 -1px alpha($dark_shadow, .05); + } - &:last-child, &:only-child { box-shadow: 0 1px 2px -1px alpha($dark_shadow, .12 + $shadow_strength); } + &:insensitive { box-shadow: inset -1px 0 shade($bg, .8); } - &:last-child:hover, &:only-child:hover { box-shadow: 0 1px 2px -1px alpha($dark_shadow, .32 + $shadow_strength); } + &:last-child, &:only-child { box-shadow: 0 1px 2px -1px alpha($dark_shadow, .12 + $shadow_strength); } - &:insensitive:last-child, &:insensitive:only-child, - &:active:insensitive:last-child, &:active:insensitive:only-child, - &:checked:insensitive:last-child, &:checked:insensitive:only-child { box-shadow: none; } + &:last-child:hover, &:only-child:hover { box-shadow: 0 1px 2px -1px alpha($dark_shadow, .32 + $shadow_strength); } - &:active:last-child, &:active:last-child:focus, &:active:last-child:hover, &:active:last-child:hover:focus, - &:checked:last-child, &:checked:last-child:focus, &:checked:last-child:hover, &:checked:last-child:hover:focus, { - box-shadow: inset 0 1px alpha($dark_shadow, .07), - inset -1px 0 alpha($dark_shadow, .06); - } + &:insensitive:last-child, &:insensitive:only-child, + &:active:insensitive:last-child, &:active:insensitive:only-child, + &:checked:insensitive:last-child, &:checked:insensitive:only-child { box-shadow: none; } - &:active:only-child, &:active:only-child:focus, &:active:only-child:hover, &:active:only-child:hover:focus, - &:checked:only-child, &:checked:only-child:focus, &:checked:only-child:hover, &:checked:only-child:hover:focus { - box-shadow: inset 1px 0 alpha($dark_shadow, .06), - inset 0 1px alpha($dark_shadow, .07), - inset -1px 0 alpha($dark_shadow, .06); - } + &:active:last-child, &:active:last-child:focus, &:active:last-child:hover, &:active:last-child:hover:focus, + &:checked:last-child, &:checked:last-child:focus, &:checked:last-child:hover, &:checked:last-child:hover:focus, { + box-shadow: inset 0 1px alpha($dark_shadow, .07), + inset -1px 0 alpha($dark_shadow, .06); + } + + &:active:only-child, &:active:only-child:focus, &:active:only-child:hover, &:active:only-child:hover:focus, + &:checked:only-child, &:checked:only-child:focus, &:checked:only-child:hover, &:checked:only-child:hover:focus { + box-shadow: inset 1px 0 alpha($dark_shadow, .06), + inset 0 1px alpha($dark_shadow, .07), + inset -1px 0 alpha($dark_shadow, .06); + } } @mixin button($bg, $fg) { - @extend %button; - @include linear-gradient(shade($bg, 1.3)); - @include border(rgba(0,0,0,.12)); + $border_strength: if(lightness($bg) > 50, 0, .1); + $shadow_strength: if(lightness($bg) > 50, 0, .1); - color: $fg; - box-shadow: 0 1px 2px -1px alpha($dark_shadow, .12 + $shadow_strength); - border-color: alpha($bg, 0); + $button_bg: if(hue($bg) == 0deg, shade($bg, 1.2), $bg); - &.flat { - border-color: alpha($bg, 0); - background-color: alpha($bg, 0); - background-image: none; - box-shadow: none; - } + @extend %button; + @include linear-gradient($button_bg); + @include border(rgba(0,0,0,.12 + $border_strength)); - &, &.flat { - &:focus, &:hover { - @include linear-gradient(shade($bg, 1.4)); + color: $fg; + box-shadow: 0 1px 2px -1px alpha($dark_shadow, .12 + $shadow_strength); - border-color: alpha($bg, 0); - box-shadow: 0 1px 2px -1px alpha($dark_shadow, .32 + $shadow_strength); - } + &.flat { + border-color: alpha($button_bg, 0); + background-color: alpha($button_bg, 0); + background-image: none; + box-shadow: none; + } - &:active, &:checked { - @include linear-gradient(shade($bg, .9), to top); + &, &.flat { + &:focus, &:hover { + @include linear-gradient(shade($button_bg, 1.2)); + @include border(rgba(0,0,0,.2 + $border_strength)); - color: $fg; - box-shadow: inset 1px 0 alpha($dark_shadow, .06), - inset 0 1px alpha($dark_shadow, .07), - inset -1px 0 alpha($dark_shadow, .06), - inset 0 -1px alpha($dark_shadow, .05); - } + box-shadow: 0 1px 2px -1px alpha($dark_shadow, .32 + $shadow_strength); + } - &:active:insensitive, &:checked:insensitive { - @include linear-gradient(shade($bg, .8)); + &:active, &:checked { + @include linear-gradient(shade($button_bg, .7), to top); - color: $fg; - box-shadow: none; - } + color: white; + box-shadow: inset 1px 0 alpha($dark_shadow, .06), + inset 0 1px alpha($dark_shadow, .07), + inset -1px 0 alpha($dark_shadow, .06), + inset 0 -1px alpha($dark_shadow, .05); + + &:focus, &:hover { + @include linear-gradient(shade($button_bg, .65), to top); + + color: white; + } + } + + &:focus, &:hover { color: $fg; } + + &:active:insensitive, &:checked:insensitive { + @include linear-gradient(shade($button_bg, .9)); + + color: $fg; + box-shadow: none; + } &:insensitive:insensitive { - @if (lightness($bg) > 50) { - @include linear-gradient(shade($bg, .95)); + @if (lightness($button_bg) > 50) { + @include linear-gradient(shade($button_bg, .95)); } @else { - @include linear-gradient(alpha($bg, .3)); + @include linear-gradient(alpha($button_bg, .3)); } color: mix($bg, $fg, .5); box-shadow: none; } - } + } - &.separator, .separator { - border: 1px solid currentColor; - color: shade($bg, ($contrast + .1)); + &.separator, .separator { + border: 1px solid currentColor; + color: shade($bg, ($contrast + .1)); - &:insensitive { color: shade($bg, .85); } - } + &:insensitive { color: shade($button_bg, .85); } + } } @include exports("button") { - * { - -GtkButton-child-displacement-x: 0; - -GtkButton-child-displacement-y: 0; - -GtkButton-default-border: 0; - -GtkButton-image-spacing: 0; - -GtkButton-inner-border: 1; - -GtkButton-interior-focus: true; - -GtkButtonBox-child-min-height: 24; - -GtkButtonBox-child-internal-pad-y: 1; - -GtkToolButton-icon-spacing: 6; - } + * { + -GtkButton-child-displacement-x: 0; + -GtkButton-child-displacement-y: 0; + -GtkButton-default-border: 0; + -GtkButton-image-spacing: 0; + -GtkButton-inner-border: 1; + -GtkButton-interior-focus: true; + -GtkButtonBox-child-min-height: 24; + -GtkButtonBox-child-internal-pad-y: 1; + -GtkToolButton-icon-spacing: 6; + } - %close_button { - border: 1px solid transparent; - background-color: transparent; - background-image: none; - box-shadow: none; + %close_button { + border: 1px solid transparent; + background-color: transparent; + background-image: none; + box-shadow: none; - &:focus, &:hover { - border: 1px solid alpha(black, .3); - background-color: alpha(white, .2); - background-image: none; - box-shadow: none; - } + &:focus, &:hover { + border: 1px solid alpha(black, .3); + background-color: alpha(white, .2); + background-image: none; + box-shadow: none; + } - &:active, &:checked, &:active:hover, &:checked:hover { - border: 1px solid alpha(black, .3); - background-color: alpha(black, .1); - background-image: none; - box-shadow: none; - } - } + &:active, &:checked, &:active:hover, &:checked:hover { + border: 1px solid alpha(black, .3); + background-color: alpha(black, .1); + background-image: none; + box-shadow: none; + } + } - .button { - @include button($bg_color, $fg_color); + .button { + @include button(shade($bg_color, 1.2), $fg_color); - &.default { @include button($selected_bg_color, $selected_fg_color); } + &.default { @include button($selected_bg_color, $selected_fg_color); } - &.linked, .linked & { @include linked_button(shade($bg_color, 1.2)); } + &.linked, .linked & { @include linked_button(shade($bg_color, 1.2)); } - .spinbutton & { - color: mix($text_color, $base_color, .4); - padding: $spacing ($spacing * 2); - border: none; - border-radius: 0; - border-style: none; - background-color: transparent; - background-image: none; - box-shadow: inset 1px 0 shade($base_color, .9); + .spinbutton & { + color: mix($text_color, $base_color, .4); + padding: $spacing ($spacing * 2); + border: none; + border-radius: 0; + border-style: none; + background-color: transparent; + background-image: none; + box-shadow: inset 1px 0 shade($base_color, .9); - &:insensitive { - color: mix($text_color, $base_color, .7); - box-shadow: inset 1px 0 shade($base_color, .85); - } + &:insensitive { + color: mix($text_color, $base_color, .7); + box-shadow: inset 1px 0 shade($base_color, .85); + } - &:active, &:checked, &:hover { color: $text_color; } + &:active, &:checked, &:hover { color: $text_color; } - &:first-child { - border-radius: $roundness 0 0 $roundness; - box-shadow: none; - } + &:first-child { + border-radius: $roundness 0 0 $roundness; + box-shadow: none; + } - &:last-child { border-radius: 0 $roundness $roundness 0; } + &:last-child { border-radius: 0 $roundness $roundness 0; } - &:dir(rtl) { box-shadow: inset -1px 0 shade($base_color, .9); } - } + &:dir(rtl) { box-shadow: inset -1px 0 shade($base_color, .9); } + } - .spinbutton.vertical & { - border: 1px solid shade($bg_color, .8); - border-radius: $roundness; - background-color: shade($bg_color, 1.08); - background-image: none; - color: $fg_color; - box-shadow: none; + .spinbutton.vertical & { + border: 1px solid shade($bg_color, .8); + border-radius: $roundness; + background-color: shade($bg_color, 1.08); + background-image: none; + color: $fg_color; + box-shadow: none; - &:hover { - border-color: shade($bg_color, .7); - background-color: shade($bg_color, 1.1); - background-image: none; - } + &:hover { + border-color: shade($bg_color, .7); + background-color: shade($bg_color, 1.1); + background-image: none; + } - &:active, &:checked { - border-color: shade($bg_color, .8); - background-color: shade($bg_color, .95); - background-image: none; - } + &:active, &:checked { + border-color: shade($bg_color, .8); + background-color: shade($bg_color, .95); + background-image: none; + } - &:active:hover, &:checked:hover { - border-color: shade($bg_color, .7); - } + &:active:hover, &:checked:hover { + border-color: shade($bg_color, .7); + } - &:focus, &:hover:focus, &:active:focus, &:active:hover:focus { border-color: shade($bg_color, .7); } + &:focus, &:hover:focus, &:active:focus, &:active:hover:focus { border-color: shade($bg_color, .7); } - &:insensitive { - border-color: shade($bg_color, .85); - background-color: shade($bg_color, .9); - background-image: none; - } + &:insensitive { + border-color: shade($bg_color, .85); + background-color: shade($bg_color, .9); + background-image: none; + } - &:first-child { - border-width: 1px; - border-bottom-width: 0; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; - } + &:first-child { + border-width: 1px; + border-bottom-width: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; + } - &:last-child { - border-width: 1px; - border-top-width: 0; - border-top-left-radius: 0; - border-top-right-radius: 0; - } - } + &:last-child { + border-width: 1px; + border-top-width: 0; + border-top-left-radius: 0; + border-top-right-radius: 0; + } + } - .spinbutton.vertical.entry { - border-width: 1px; - border-style: solid; - border-radius: 0; - } - } + .spinbutton.vertical.entry { + border-width: 1px; + border-style: solid; + border-radius: 0; + } + } } @@ -308,41 +321,41 @@ $shadow_strength: .3; *******************/ @include exports("combobox") { - GtkComboBox { - > .button { - padding: ($spacing - 2px) ($spacing + 1px); + GtkComboBox { + > .button { + padding: ($spacing - 2px) ($spacing + 1px); - -GtkComboBox-arrow-scaling: .5; - -GtkComboBox-shadow-type: none; - } + -GtkComboBox-arrow-scaling: .5; + -GtkComboBox-shadow-type: none; + } - &.combobox-entry { - .entry, .button { @extend %linked_button; } - } + &.combobox-entry { + .entry, .button { @extend %linked_button; } + } - .separator { - /* always disable separators */ - -GtkWidget-wide-separators: true; - -GtkWidget-horizontal-separator: 0; - -GtkWidget-vertical-separator: 0; + .separator { + /* always disable separators */ + -GtkWidget-wide-separators: true; + -GtkWidget-horizontal-separator: 0; + -GtkWidget-vertical-separator: 0; - border-style: none; - } - } + border-style: none; + } + } - .linked > GtkComboBox { - > .button { - // the combo is a composite widget so the way we do button linked doesn't - // work, special case needed. See - // https://bugzilla.gnome.org/show_bug.cgi?id=733979 - &:dir(ltr) { @extend %linked_middle; } // specificity bump - &:dir(rtl) { @extend %linked_middle:dir(rtl); } - } + .linked > GtkComboBox { + > .button { + // the combo is a composite widget so the way we do button linked doesn't + // work, special case needed. See + // https://bugzilla.gnome.org/show_bug.cgi?id=733979 + &:dir(ltr) { @extend %linked_middle; } // specificity bump + &:dir(rtl) { @extend %linked_middle:dir(rtl); } + } - &:first-child > .button { @extend %linked_button:first-child; } + &:first-child > .button { @extend %linked_button:first-child; } - &:last-child > .button { @extend %linked_button:last-child; } + &:last-child > .button { @extend %linked_button:last-child; } - &:only-child > .button { @extend %linked_button:only-child; } - } + &:only-child > .button { @extend %linked_button:only-child; } + } } diff --git a/gtk-3.0/scss/widgets/_calendar.scss b/gtk-3.0/scss/widgets/_calendar.scss index 909ea9c..d9705f4 100644 --- a/gtk-3.0/scss/widgets/_calendar.scss +++ b/gtk-3.0/scss/widgets/_calendar.scss @@ -3,27 +3,27 @@ ***********/ @include exports("calendar") { - GtkCalendar { - padding: $spacing; - outline-offset: -1px; + GtkCalendar { + padding: $spacing; + outline-offset: -1px; - &:inconsistent { color: mix($fg_color, $bg_color, 0.5); } + &:inconsistent { color: mix($fg_color, $bg_color, 0.5); } - &.view, &.highlight, &.header, &.button { - &, &:focus, &:hover, &:insensitive { - border: none; - background-color: transparent; - background-image: none; - } - } + &.view, &.highlight, &.header, &.button { + &, &:focus, &:hover, &:insensitive { + border: none; + background-color: transparent; + background-image: none; + } + } - &.highlight { color: $selected_bg_color; } - } + &.highlight { color: $selected_bg_color; } + } - /* gnome-calendar */ - .calendar-view { - background-color: $base_color; - color: $text_color; - } + /* gnome-calendar */ + .calendar-view { + background-color: $base_color; + color: $text_color; + } } diff --git a/gtk-3.0/scss/widgets/_choosers.scss b/gtk-3.0/scss/widgets/_choosers.scss index 6b00d52..53f1de2 100644 --- a/gtk-3.0/scss/widgets/_choosers.scss +++ b/gtk-3.0/scss/widgets/_choosers.scss @@ -3,86 +3,86 @@ ****************/ @include exports("colorchooser") { - GtkColorSwatch { - &, &:selected { - border: 1px solid alpha(black, 0.1); - border-radius: $roundness - 1px; - background-color: transparent; - background-clip: border-box; + GtkColorSwatch { + &, &:selected { + border: 1px solid alpha(black, 0.1); + border-radius: $roundness - 1px; + background-color: transparent; + background-clip: border-box; - &:hover { border-color: alpha(black, 0.3); } - } + &:hover { border-color: alpha(black, 0.3); } + } - &.color-light:selected:hover, &.color-dark:selected:hover { background-image: none; } + &.color-light:selected:hover, &.color-dark:selected:hover { background-image: none; } - &.left, &:first-child { - border-top-left-radius: $roundness; - border-bottom-left-radius: $roundness; - } + &.left, &:first-child { + border-top-left-radius: $roundness; + border-bottom-left-radius: $roundness; + } - &.right, &:last-child { - border-top-right-radius: $roundness; - border-bottom-right-radius: $roundness; - } + &.right, &:last-child { + border-top-right-radius: $roundness; + border-bottom-right-radius: $roundness; + } - &:only-child { border-radius: $roundness; } + &:only-child { border-radius: $roundness; } - &.top { - border-top-left-radius: $roundness; - border-top-right-radius: $roundness; - } + &.top { + border-top-left-radius: $roundness; + border-top-right-radius: $roundness; + } - &.bottom { - border-bottom-left-radius: $roundness; - border-bottom-right-radius: $roundness; - } + &.bottom { + border-bottom-left-radius: $roundness; + border-bottom-right-radius: $roundness; + } - GtkColorEditor & { - border-radius: $roundness; + GtkColorEditor & { + border-radius: $roundness; - &.color-dark:hover, &.color-light:hover { - background-image: none; - border-color: alpha(black, 0.3); - } - } - } + &.color-dark:hover, &.color-light:hover { + background-image: none; + border-color: alpha(black, 0.3); + } + } + } - GtkColorChooserWidget #add-color-button { - background-clip: padding-box; - border-color: alpha(black, 0.1); - background-color: shade($bg_color, 0.95); - color: $fg_color; + GtkColorChooserWidget #add-color-button { + background-clip: padding-box; + border-color: alpha(black, 0.1); + background-color: shade($bg_color, 0.95); + color: $fg_color; - &:hover { - border-color: alpha(black, 0.3); - background-color: shade($bg_color, 0.90); - color: $fg_color; - } - } + &:hover { + border-color: alpha(black, 0.3); + background-color: shade($bg_color, 0.90); + color: $fg_color; + } + } - .color-active-badge { - &, &:selected { - border-width: 2px; - border-style: solid; - background-color: transparent; - } + .color-active-badge { + &, &:selected { + border-width: 2px; + border-style: solid; + background-color: transparent; + } - &.color-light { - &, &:hover { - border-color: alpha(black, 0.3); - color: alpha(black, 0.3); - } - } + &.color-light { + &, &:hover { + border-color: alpha(black, 0.3); + color: alpha(black, 0.3); + } + } - &.color-dark { - &, &:hover { - border-color: alpha(white, 0.3); - color: alpha(white, 0.3); - } - } - } + &.color-dark { + &, &:hover { + border-color: alpha(white, 0.3); + color: alpha(white, 0.3); + } + } + } - GtkColorButton.button { padding: $spacing; } + GtkColorButton.button { padding: $spacing; } } @@ -91,35 +91,35 @@ ************************/ @include exports("miscchoosers") { - GtkFontButton, GtkFileChooserButton { - .separator { - /* always disable separators */ - -GtkWidget-wide-separators: true; - -GtkWidget-horizontal-separator: 0; - -GtkWidget-vertical-separator: 0; - } + GtkFontButton, GtkFileChooserButton { + .separator { + /* always disable separators */ + -GtkWidget-wide-separators: true; + -GtkWidget-horizontal-separator: 0; + -GtkWidget-vertical-separator: 0; + } - GtkLabel:last-child { color: alpha(currentColor, 0.7); } + GtkLabel:last-child { color: alpha(currentColor, 0.7); } - GtkImage:last-child { color: alpha(currentColor, 0.7); } - } + GtkImage:last-child { color: alpha(currentColor, 0.7); } + } - GtkFileChooser { - .pane-separator { - &, &:hover { - border-width: 0 1px 0 0; - border-style: solid; - border-color: currentColor; - background-color: $bg_color; - color: shade($bg_color, ($contrast + .1)); - } - } + GtkFileChooser { + .pane-separator { + &, &:hover { + border-width: 0 1px 0 0; + border-style: solid; + border-color: currentColor; + background-color: $bg_color; + color: shade($bg_color, ($contrast + .1)); + } + } - /* for fallback when header bar not used */ - .dialog-action-box { - border-width: 1px 0 0; - border-style: solid; - border-color: shade($bg_color, 0.7); - } - } + /* for fallback when header bar not used */ + .dialog-action-box { + border-width: 1px 0 0; + border-style: solid; + border-color: shade($bg_color, 0.7); + } + } } diff --git a/gtk-3.0/scss/widgets/_entry.scss b/gtk-3.0/scss/widgets/_entry.scss index 6605f01..e8d7562 100755 --- a/gtk-3.0/scss/widgets/_entry.scss +++ b/gtk-3.0/scss/widgets/_entry.scss @@ -3,82 +3,82 @@ **********/ %linked_entry { - border-width: 1px; - border-radius: 0; - border-right-width: 0; - border-left-width: 0; + border-width: 1px; + border-radius: 0; + border-right-width: 0; + border-left-width: 0; - &:first-child { - border-width: 1px; - border-radius: $roundness; - border-right-width: 0; - border-bottom-right-radius: 0; - border-top-right-radius: 0; - } + &:first-child { + border-width: 1px; + border-radius: $roundness; + border-right-width: 0; + border-bottom-right-radius: 0; + border-top-right-radius: 0; + } - &:last-child { - border-width: 1px; - border-radius: $roundness; - border-left-width: 0; - border-bottom-left-radius: 0; - border-top-left-radius: 0; - } + &:last-child { + border-width: 1px; + border-radius: $roundness; + border-left-width: 0; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + } - &:only-child { - border-width: 1px; - border-radius: $roundness; - } + &:only-child { + border-width: 1px; + border-radius: $roundness; + } } %entry { - padding: ($spacing - 1px) $spacing; - border-width: 1px; - border-style: solid; - border-radius: $roundness; - transition: border 150ms ease; - box-shadow: inset 1px 1px alpha($dark_shadow, .06), - inset -1px 0 alpha($dark_shadow, .06); + padding: ($spacing - 1px) $spacing; + border-width: 1px; + border-style: solid; + border-radius: $roundness; + transition: border 150ms ease; + box-shadow: inset 1px 1px alpha($dark_shadow, .06), + inset -1px 0 alpha($dark_shadow, .06); &:focus, &:hover, &:active { transition: none; } - &:selected, &:selected:focus { - background-color: $selected_bg_color; - color: $selected_fg_color; - } + &:selected, &:selected:focus { + background-color: $selected_bg_color; + color: $selected_fg_color; + } - &:insensitive { box-shadow: none; } + &:insensitive { box-shadow: none; } - &.progressbar { - @include linear-gradient($selected_bg_color); + &.progressbar { + @include linear-gradient($selected_bg_color); - border-width: 0; - border-radius: $roundness; - color: $selected_fg_color; - } + border-width: 0; + border-radius: $roundness; + color: $selected_fg_color; + } - &.image.left { padding-right: $spacing; } + &.image.left { padding-right: $spacing; } } @mixin entry($bg, $fg) { - @extend %entry; - @include linear-gradient($bg, to top); - @include border($bg); + @extend %entry; + @include linear-gradient($bg, to top); + @include border($bg); - color: $fg; + color: $fg; - &:focus, &:active { border-color: $selected_bg_color; } + &:focus, &:active { border-color: $selected_bg_color; } - &:insensitive { - @include linear-gradient(shade($bg, .9), to top); + &:insensitive { + @include linear-gradient(shade($bg, .9), to top); - color: mix($bg, $fg, .5); - } + color: mix($bg, $fg, .5); + } } @include exports("entry") { - .entry { - @include entry($base_color, $text_color); + .entry { + @include entry($base_color, $text_color); - &.linked, .linked & { @extend %linked_entry; } - } + &.linked, .linked & { @extend %linked_entry; } + } } diff --git a/gtk-3.0/scss/widgets/_infobar.scss b/gtk-3.0/scss/widgets/_infobar.scss index faf4e5c..1579c01 100644 --- a/gtk-3.0/scss/widgets/_infobar.scss +++ b/gtk-3.0/scss/widgets/_infobar.scss @@ -6,33 +6,33 @@ **********/ @include exports("infobar") { - GtkInfoBar { - border: none; + GtkInfoBar { + border: none; - $types: ( - info: ( $info_fg_color, $info_bg_color ), - warning: ( $warning_fg_color, $warning_bg_color ), - question: ( $question_fg_color, $question_bg_color ), - error: ( $error_fg_color, $error_bg_color ), - ); + $types: ( + info: ( $info_fg_color, $info_bg_color ), + warning: ( $warning_fg_color, $warning_bg_color ), + question: ( $question_fg_color, $question_bg_color ), + error: ( $error_fg_color, $error_bg_color ), + ); - @each $type, $colors in $types { - $fg_color: nth($colors, 1); - $bg_color: nth($colors, 2); + @each $type, $colors in $types { + $fg_color: nth($colors, 1); + $bg_color: nth($colors, 2); - &.#{$type} { - @include linear-gradient($bg_color); + &.#{$type} { + @include linear-gradient($bg_color); - border: 1px solid shade($bg_color, 0.8); - color: $fg_color; + border: 1px solid shade($bg_color, 0.8); + color: $fg_color; - .button { - @include button($bg_color, $fg_color); + .button { + @include button($bg_color, $fg_color); - &.close { @extend %close_button; } - } - } - } - } + &.close { @extend %close_button; } + } + } + } + } } diff --git a/gtk-3.0/scss/widgets/_menu.scss b/gtk-3.0/scss/widgets/_menu.scss index 35a2581..8b08c5c 100755 --- a/gtk-3.0/scss/widgets/_menu.scss +++ b/gtk-3.0/scss/widgets/_menu.scss @@ -117,18 +117,18 @@ color: shade($menu_bg_color, ($contrast + .1)); } - &.button { + &.button, &.button.flat { &, &:focus, &:active, &:insensitive, &:active:insensitive { background-color: transparent; background-image: none; - border: none; + border: 0; box-shadow: none; color: currentColor; } &:hover, &:focus:hover, &:active:hover, &:selected { - background-color: $selected_bg_color; background-image: none; + background-color: $selected_bg_color; color: $selected_fg_color; } } @@ -175,7 +175,7 @@ background-color: $menu_bg_color; background-image: none; color: $menu_fg_color; - box-shadow: 0 2px 3px alpha(black, .5); + box-shadow: 0 3px 6px alpha(black, .16); &.background { background-image: none; @@ -199,7 +199,7 @@ .view, .list { background-color: transparent; background-image: none; - color: $menu_fg_color; + color: $menu_fg_color; } .list-row { diff --git a/gtk-3.0/scss/widgets/_misc.scss b/gtk-3.0/scss/widgets/_misc.scss index 8eb1de3..177f8de 100644 --- a/gtk-3.0/scss/widgets/_misc.scss +++ b/gtk-3.0/scss/widgets/_misc.scss @@ -3,10 +3,10 @@ ****************/ @include exports("dimlabel") { - .dim-label { - opacity: 0.5; - text-shadow: none; - } + .dim-label { + opacity: 0.5; + text-shadow: none; + } } @@ -15,15 +15,15 @@ ************/ @include exports("tooltip") { - .tooltip { - @include linear-gradient($tooltip_bg_color); + .tooltip { + @include linear-gradient($tooltip_bg_color); - border: none; - border-radius: $roundness; - color: $tooltip_fg_color; + border: none; + border-radius: $roundness; + color: $tooltip_fg_color; - * { background-color: transparent; } - } + * { background-color: transparent; } + } } @@ -32,14 +32,14 @@ ************/ @include exports("dialogs") { - GtkMessageDialog, .message-dialog, .prompt { - -GtkDialog-content-area-border: 0; - -GtkDialog-action-area-border: $spacing; - -GtkDialog-button-spacing: 0; + GtkMessageDialog, .message-dialog, .prompt { + -GtkDialog-content-area-border: 0; + -GtkDialog-action-area-border: $spacing; + -GtkDialog-button-spacing: 0; - margin: 0; - padding: 0; - } + margin: 0; + padding: 0; + } } @@ -48,16 +48,20 @@ **********************/ @include exports("notifications") { - .app-notification { - border-style: solid; - border-color: border_normal($base_color); - border-width: 0 1px 1px 1px; - border-radius: 0 0 $roundness $roundness; - padding: $spacing * 3; - background-color: $base_color; - background-image: none; - color: $text_color; - } + .app-notification { + &, &.frame { + border-style: solid; + border-color: border_normal($osd_bg); + border-width: 0 1px 1px 1px; + border-radius: 0 0 $roundness $roundness; + padding: $spacing * 2; + background-color: $osd_bg; + background-image: none; + color: $osd_fg; + + .button { @include button($osd_bg, $osd_fg); } + } + } } @@ -66,25 +70,25 @@ **************/ @include exports("expander") { - GtkExpander { - padding: $spacing; - outline-offset: 1px; - } + GtkExpander { + padding: $spacing; + outline-offset: 1px; + } - .expander { - color: alpha(currentColor, 0.7); - border: alpha(currentColor, 0.7); + .expander { + color: alpha(currentColor, 0.7); + border: alpha(currentColor, 0.7); - &:hover { - color: alpha(currentColor, 0.8); - border-color: alpha(currentColor, 0.8); - } + &:hover { + color: alpha(currentColor, 0.8); + border-color: alpha(currentColor, 0.8); + } - &:active { - color: alpha(currentColor, 0.9); - border-color: alpha(currentColor, 0.9); - } - } + &:active { + color: alpha(currentColor, 0.9); + border-color: alpha(currentColor, 0.9); + } + } } @@ -93,13 +97,13 @@ ********************/ @include exports("symbolicimage") { - .image { - color: alpha(currentColor, 0.5); + .image { + color: alpha(currentColor, 0.5); - &:hover { color: alpha(currentColor, 0.9); } + &:hover { color: alpha(currentColor, 0.9); } - &:selected, &:selected:hover { color: $selected_fg_color; } - } + &:selected, &:selected:hover { color: $selected_fg_color; } + } } @@ -108,46 +112,46 @@ *****************/ @include exports("floatingbar") { - .floating-bar { - @include linear-gradient($bg_color); + .floating-bar { + @include linear-gradient($bg_color); - border: 1px solid border_normal($bg_color); - border-radius: $roundness; - color: $fg_color; + border: 1px solid border_normal($bg_color); + border-radius: $roundness; + color: $fg_color; - &.top { - border-top-width: 0; - border-top-right-radius: 0; - border-top-left-radius: 0; - } + &.top { + border-top-width: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; + } - &.right { - border-right-width: 0; - border-top-right-radius: 0; - border-bottom-right-radius: 0; - } + &.right { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } - &.bottom { - border-bottom-width: 0; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; - } + &.bottom { + border-bottom-width: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; + } - &.left { - border-left-width: 0; - border-bottom-left-radius: 0; - border-top-left-radius: 0; - } + &.left { + border-left-width: 0; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + } - .button { - -GtkButton-image-spacing: 0; - -GtkButton-inner-border: 0; + .button { + -GtkButton-image-spacing: 0; + -GtkButton-inner-border: 0; - border: none; - background-color: transparent; - background-image: none; - } - } + border: none; + background-color: transparent; + background-image: none; + } + } } @@ -156,14 +160,14 @@ **************************/ @include exports("touchbubble") { - GtkBubbleWindow { - border-radius: $roundness; - background-clip: border-box; + GtkBubbleWindow { + border-radius: $roundness; + background-clip: border-box; - &.osd.background { background-color: $osd_bg; } + &.osd.background { background-color: $osd_bg; } - .toolbar { background-color: transparent; } - } + .toolbar { background-color: transparent; } + } } /*************** @@ -171,9 +175,9 @@ ****************/ @include exports("fontviewer") { - SushiFontWidget { - padding: $spacing ($spacing * 2); - } + SushiFontWidget { + padding: $spacing ($spacing * 2); + } } @@ -182,12 +186,12 @@ **************/ @include exports("charmap") { - GucharmapChartable { - background-color: $base_color; - color: $text_color; + GucharmapChartable { + background-color: $base_color; + color: $text_color; - &:focus, &:hover, &:active, &:selected { @extend %selected; } - } + &:focus, &:hover, &:active, &:selected { @extend %selected; } + } } @@ -196,10 +200,10 @@ **************/ @include exports("evolution") { - EPreviewPane .entry { - background-color: $base_color; - color: $text_color; - } + EPreviewPane .entry { + background-color: $base_color; + color: $text_color; + } } @@ -208,11 +212,11 @@ ********************/ @include exports("gnome-bluetooth") { - GtkEntry.entry.pin-entry { - font: regular 50; - padding-left: 25px; - padding-right: 25px; - } + GtkEntry.entry.pin-entry { + font: regular 50; + padding-left: 25px; + padding-right: 25px; + } - GtkLabel.pin-label { font: regular 50; } + GtkLabel.pin-label { font: regular 50; } } diff --git a/gtk-3.0/scss/widgets/_notebook.scss b/gtk-3.0/scss/widgets/_notebook.scss index e3c155e..b0ecfbb 100644 --- a/gtk-3.0/scss/widgets/_notebook.scss +++ b/gtk-3.0/scss/widgets/_notebook.scss @@ -6,121 +6,121 @@ ***********/ @include exports("notebook") { - .notebook { - padding: 0; - border-width: 1px 0 0 0; - border-style: solid; - border-color: border_normal($base_color); - border-radius: 0; - background-color: $base_color; - background-image: none; - background-clip: border-box; - color: $text_color; + .notebook { + padding: 0; + border-width: 1px 0 0 0; + border-style: solid; + border-color: border_normal($base_color); + border-radius: 0; + background-color: $base_color; + background-image: none; + background-clip: border-box; + color: $text_color; - -GtkNotebook-initial-gap: 0; - -GtkNotebook-arrow-spacing: 5; - -GtkNotebook-tab-curvature: 0; - -GtkNotebook-tab-overlap: 1; - -GtkNotebook-has-tab-gap: false; + -GtkNotebook-initial-gap: 0; + -GtkNotebook-arrow-spacing: 5; + -GtkNotebook-tab-curvature: 0; + -GtkNotebook-tab-overlap: 1; + -GtkNotebook-has-tab-gap: false; - &.frame { border-width: 1px; } + &.frame { border-width: 1px; } - &.header { - border-width: 0; - background-color: shade($base_color, .9); + &.header { + border-width: 0; + background-color: shade($base_color, .9); - &.frame { - border-color: border_normal($base_color); + &.frame { + border-color: border_normal($base_color); - &.top { border-width: 1px 1px 0 1px; } + &.top { border-width: 1px 1px 0 1px; } - &.right { border-width: 1px 1px 1px 0; } + &.right { border-width: 1px 1px 1px 0; } - &.bottom { border-width: 0 1px 1px 1px; } + &.bottom { border-width: 0 1px 1px 1px; } - &.left { border-width: 1px 0 1px 1px; } - } - } + &.left { border-width: 1px 0 1px 1px; } + } + } - GtkViewport { - border-width: 0; - background-color: $base_color; - color: $text_color; - } + GtkViewport { + border-width: 0; + background-color: $base_color; + color: $text_color; + } - tab { - padding: ($spacing + 1px) ($spacing * 2); - border: 1px solid transparent; - background-color: transparent; - background-image: none; + tab { + padding: ($spacing + 1px) ($spacing * 2); + border: 1px solid transparent; + background-color: transparent; + background-image: none; - &:hover { - background-color: shade($base_color, .95); - border-color: shade($base_color, .8); - } + &:hover { + background-color: shade($base_color, .95); + border-color: shade($base_color, .8); + } - &:active { - background-color: $base_color; - background-image: none; - border-color: shade($base_color, .85); - } + &:active { + background-color: $base_color; + background-image: none; + border-color: shade($base_color, .85); + } - &.top { - border-bottom-width: 0; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; - } + &.top { + border-bottom-width: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; + } - &.right { - border-left-width: 0; - border-bottom-left-radius: 0; - border-top-left-radius: 0; - } + &.right { + border-left-width: 0; + border-bottom-left-radius: 0; + border-top-left-radius: 0; + } - &.bottom { - border-top-width: 0; - border-top-right-radius: 0; - border-top-left-radius: 0; - } + &.bottom { + border-top-width: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; + } - &.left { - border-right-width: 0; - border-top-right-radius: 0; - border-bottom-right-radius: 0; - } + &.left { + border-right-width: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } - GtkLabel { color: mix($text_color, $base_color, 0.3); } + GtkLabel { color: mix($text_color, $base_color, 0.3); } - /* close button styling */ - .button { @extend %close_button; } - } + /* close button styling */ + .button { @extend %close_button; } + } - .prelight-page { - &, GtkLabel { color: mix($text_color, $base_color, 0.15); } - } + .prelight-page { + &, GtkLabel { color: mix($text_color, $base_color, 0.15); } + } - .active-page { - &, GtkLabel { color: $text_color; } - } + .active-page { + &, GtkLabel { color: $text_color; } + } - .reorderable-page { - &:hover { - background-color: shade($base_color, 0.85); - border-left: 0; - border-right: 0; - /* using box shadows instead of borders due to slanted edges */ - box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), - inset 1px 0 shade($base_color, 0.7), inset -1px 0 shade($base_color, 0.7); - } + .reorderable-page { + &:hover { + background-color: shade($base_color, 0.85); + border-left: 0; + border-right: 0; + /* using box shadows instead of borders due to slanted edges */ + box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), + inset 1px 0 shade($base_color, 0.7), inset -1px 0 shade($base_color, 0.7); + } - &:active { - background-color: shade($base_color, 0.90); - border-left: 0; - border-right: 0; - box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), - inset 1px 0 shade($base_color, 0.75), inset -1px 0 shade($base_color, 0.75); - } - } - } + &:active { + background-color: shade($base_color, 0.90); + border-left: 0; + border-right: 0; + box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), + inset 1px 0 shade($base_color, 0.75), inset -1px 0 shade($base_color, 0.75); + } + } + } } diff --git a/gtk-3.0/scss/widgets/_progress.scss b/gtk-3.0/scss/widgets/_progress.scss index f6943df..25064a9 100644 --- a/gtk-3.0/scss/widgets/_progress.scss +++ b/gtk-3.0/scss/widgets/_progress.scss @@ -3,170 +3,170 @@ ******************/ @include exports("progressbar") { - GtkProgressBar { - padding: 0; - border-radius: $roundness; - font-size: smaller; - color: alpha($fg_color, 0.6); + GtkProgressBar { + padding: 0; + border-radius: $roundness; + font-size: smaller; + color: alpha($fg_color, 0.6); - -GtkProgressBar-min-horizontal-bar-height: 6; - -GtkProgressBar-min-vertical-bar-width: 6; + -GtkProgressBar-min-horizontal-bar-height: 6; + -GtkProgressBar-min-vertical-bar-width: 6; - &.osd { - -GtkProgressBar-xspacing: 0; - -GtkProgressBar-yspacing: 0; - -GtkProgressBar-min-horizontal-bar-height: 4; - } + &.osd { + -GtkProgressBar-xspacing: 0; + -GtkProgressBar-yspacing: 0; + -GtkProgressBar-min-horizontal-bar-height: 3; + } - &.trough { - border: 1px solid alpha(border_normal($bg_color), 0.5); - background-color: shade($bg_color, 1.08); - background-image: none; - } - } + &.trough { + border: 1px solid alpha(border_normal($bg_color), 0.5); + background-color: shade($bg_color, 1.08); + background-image: none; + } + } - .progressbar { - @include linear-gradient($selected_bg_color); + .progressbar { + @include linear-gradient($selected_bg_color); - border-radius: 0; - box-shadow: none; + border-radius: 0; + box-shadow: none; - &.left { - border-top-left-radius: $roundness; - border-bottom-left-radius: $roundness; - } + &.left { + border-top-left-radius: $roundness; + border-bottom-left-radius: $roundness; + } - &.right { - border-top-right-radius: $roundness; - border-bottom-right-radius: $roundness; - } + &.right { + border-top-right-radius: $roundness; + border-bottom-right-radius: $roundness; + } - &.left.right { box-shadow: none; } + &.left.right { box-shadow: none; } - &.vertical { - @include linear-gradient($selected_bg_color, to right); + &.vertical { + @include linear-gradient($selected_bg_color, to right); - &.bottom { - border-bottom-left-radius: $roundness; - border-bottom-right-radius: $roundness; - } + &.bottom { + border-bottom-left-radius: $roundness; + border-bottom-right-radius: $roundness; + } - &.top { - border-top-left-radius: $roundness; - border-top-right-radius: $roundness; - } - } - } + &.top { + border-top-left-radius: $roundness; + border-top-right-radius: $roundness; + } + } + } - GtkLevelBar { - -GtkLevelBar-min-block-width: 34; - -GtkLevelBar-min-block-height: 3; + GtkLevelBar { + -GtkLevelBar-min-block-width: 34; + -GtkLevelBar-min-block-height: 3; - &.vertical { - -GtkLevelBar-min-block-width: 3; - -GtkLevelBar-min-block-height: 34; - } - } + &.vertical { + -GtkLevelBar-min-block-width: 3; + -GtkLevelBar-min-block-height: 34; + } + } - .level-bar { - &.trough { - @include linear-gradient(shade($bg_color, 1.08), to top); + .level-bar { + &.trough { + @include linear-gradient(shade($bg_color, 1.08), to top); - border: 1px solid alpha(border_normal($bg_color), 0.5); - border-radius: $roundness; - } + border: 1px solid alpha(border_normal($bg_color), 0.5); + border-radius: $roundness; + } - &.fill-block { - @include linear-gradient($selected_bg_color); + &.fill-block { + @include linear-gradient($selected_bg_color); - // FIXME: it would be nice to set make fill blocks bigger, but we'd need - // :nth-child working on discrete indicators - border-color: transparent; - border-radius: 0; + // FIXME: it would be nice to set make fill blocks bigger, but we'd need + // :nth-child working on discrete indicators + border-color: transparent; + border-radius: 0; - &.indicator-discrete { - &.horizontal { margin-right: 1px; } - &.vertical { margin-bottom: 1px; } - } + &.indicator-discrete { + &.horizontal { margin-right: 1px; } + &.vertical { margin-bottom: 1px; } + } - &.level-high { - background-color: $success_color; - border-color: transparent; - } + &.level-high { + background-color: $success_color; + border-color: transparent; + } - &.level-low { - background-color: $warning_color; - border-color: transparent; - } + &.level-low { + background-color: $warning_color; + border-color: transparent; + } - &.empty-fill-block { - background-color: transparent; - border-color: transparent; - box-shadow: none; - } - } - } + &.empty-fill-block { + background-color: transparent; + border-color: transparent; + box-shadow: none; + } + } + } - .scale { - -GtkRange-slider-width: 16; - -GtkRange-trough-border: 1; - -GtkScale-slider-length: 16; + .scale { + -GtkRange-slider-width: 16; + -GtkRange-trough-border: 1; + -GtkScale-slider-length: 16; - padding: 0; - border-width: 1px; - border-radius: $roundness; - outline-offset: -1px; + padding: 0; + border-width: 1px; + border-radius: $roundness; + outline-offset: -1px; - &.slider { - @include linear-gradient($base_color); - @include border($base_color); + &.slider { + @include linear-gradient(shade($bg_color, 1.08)); + @include border($bg_color); - border-radius: 8px; - border-width: 1px; - border-style: solid; - box-shadow: 0 1px 2px -1px alpha($dark_shadow, .3); + border-radius: 8px; + border-width: 1px; + border-style: solid; + box-shadow: 0 1px 2px -1px alpha($dark_shadow, .3); - &:insensitive { @include linear-gradient(shade($bg_color, 0.9)); } - } + &:insensitive { @include linear-gradient(shade($bg_color, 0.9)); } + } - &.fine-tune { - &, &.horizontal { - &:active, &:active:hover { - background-size: 50%; - background-repeat: no-repeat; - background-position: center; - } - } - } + &.fine-tune { + &, &.horizontal { + &:active, &:active:hover { + background-size: 50%; + background-repeat: no-repeat; + background-position: center; + } + } + } - &.mark { border-color: alpha(border_normal($bg_color), 0.5); } + &.mark { border-color: alpha(border_normal($bg_color), 0.5); } - &.trough { - @include linear-gradient(shade($bg_color, 1.08)); + &.trough { + @include linear-gradient(shade($bg_color, 1.08)); - margin: 8px 0; - border: 0; - border-radius: $roundness; + margin: 7px 0; + border: 1px solid alpha(border_normal($bg_color), 0.5); + border-radius: $roundness; - &:insensitive { @include linear-gradient(shade($bg_color, 0.9)); } + &:insensitive { @include linear-gradient(shade($bg_color, 0.9)); } - &.vertical { margin: 0 8px; } - } + &.vertical { margin: 0 7px; } + } - &.highlight { - &, &.left, &.bottom { - @include linear-gradient($selected_bg_color); + &.highlight { + &, &.left, &.bottom { + @include linear-gradient($selected_bg_color); - border-color: $selected_bg_color; + border-color: $selected_bg_color; - &:insensitive { - @include linear-gradient(shade($bg_color, 0.8)); + &:insensitive { + @include linear-gradient(shade($bg_color, 0.8)); - border-color: shade($bg_color, 0.7); - } - } - } - } + border-color: shade($bg_color, 0.7); + } + } + } + } } diff --git a/gtk-3.0/scss/widgets/_toggle.scss b/gtk-3.0/scss/widgets/_toggle.scss index c9e40f0..a13a427 100755 --- a/gtk-3.0/scss/widgets/_toggle.scss +++ b/gtk-3.0/scss/widgets/_toggle.scss @@ -5,62 +5,62 @@ $suffix: if($variant == "dark", "-dark", ""); @mixin toggle($type) { - background-image: none; + background-image: none; - -gtk-icon-source: url("../assets/#{$type}-unchecked#{$suffix}.png"); + -gtk-icon-source: url("../assets/#{$type}-unchecked#{$suffix}.png"); - &:insensitive { -gtk-icon-source: url("../assets/#{$type}-unchecked-insensitive#{$suffix}.png"); } + &:insensitive { -gtk-icon-source: url("../assets/#{$type}-unchecked-insensitive#{$suffix}.png"); } - &:checked, &:active { - -gtk-icon-source: url("../assets/#{$type}-checked#{$suffix}.png"); + &:checked, &:active { + -gtk-icon-source: url("../assets/#{$type}-checked#{$suffix}.png"); - &:insensitive { -gtk-icon-source: url("../assets/#{$type}-checked-insensitive#{$suffix}.png"); } - } + &:insensitive { -gtk-icon-source: url("../assets/#{$type}-checked-insensitive#{$suffix}.png"); } + } - &:inconsistent { - -gtk-icon-source: url("../assets/#{$type}-mixed#{$suffix}.png"); + &:inconsistent { + -gtk-icon-source: url("../assets/#{$type}-mixed#{$suffix}.png"); - &:insensitive { -gtk-icon-source: url("../assets/#{$type}-mixed-insensitive#{$suffix}.png"); } - } + &:insensitive { -gtk-icon-source: url("../assets/#{$type}-mixed-insensitive#{$suffix}.png"); } + } - &.menuitem { - -gtk-icon-source: none; + &.menuitem { + -gtk-icon-source: none; - &:insensitive { -gtk-icon-source: none; } + &:insensitive { -gtk-icon-source: none; } - &:checked, &:active { - -gtk-icon-source: url("../assets/menuitem-#{$type}-checked.png"); + &:checked, &:active { + -gtk-icon-source: url("../assets/menuitem-#{$type}-checked.png"); - &:hover { -gtk-icon-source: url("../assets/menuitem-#{$type}-checked-hover.png"); } + &:hover { -gtk-icon-source: url("../assets/menuitem-#{$type}-checked-hover.png"); } - &:insensitive { -gtk-icon-source: url("../assets/menuitem-#{$type}-checked-insensitive.png"); } - } + &:insensitive { -gtk-icon-source: url("../assets/menuitem-#{$type}-checked-insensitive.png"); } + } - &:inconsistent { - -gtk-icon-source: url("../assets/menuitem-#{$type}-mixed.png"); + &:inconsistent { + -gtk-icon-source: url("../assets/menuitem-#{$type}-mixed.png"); - &:hover { -gtk-icon-source: url("../assets/menuitem-#{$type}-mixed-hover.png"); } + &:hover { -gtk-icon-source: url("../assets/menuitem-#{$type}-mixed-hover.png"); } - &:insensitive { -gtk-icon-source: url("../assets/menuitem-#{$type}-mixed-insensitive.png"); } - } - } + &:insensitive { -gtk-icon-source: url("../assets/menuitem-#{$type}-mixed-insensitive.png"); } + } + } } @include exports("checkradio") { - * { - -GtkCheckButton-indicator-size: 16; - -GtkCheckMenuItem-indicator-size: 16; - } + * { + -GtkCheckButton-indicator-size: 16; + -GtkCheckMenuItem-indicator-size: 16; + } - .radio { @include toggle("radio"); } + .radio { @include toggle("radio"); } - .check { @include toggle("checkbox"); } + .check { @include toggle("checkbox"); } - GtkIconView.content-view.cell.check { - -gtk-icon-source: url("assets/grid-selection-unchecked#{$suffix}.png"); + GtkIconView.content-view.cell.check { + -gtk-icon-source: url("assets/grid-selection-unchecked#{$suffix}.png"); - &:active { -gtk-icon-source: url("assets/grid-selection-checked#{$suffix}.png"); } - } + &:active { -gtk-icon-source: url("assets/grid-selection-checked#{$suffix}.png"); } + } } @@ -69,48 +69,48 @@ $suffix: if($variant == "dark", "-dark", ""); *********/ @include exports("switch") { - GtkSwitch { - padding: 0; - border-radius: $roundness; - font: bold condensed; - outline-offset: -4px; + GtkSwitch { + padding: 0; + border-radius: $roundness; + font: bold condensed; + outline-offset: -4px; - &.slider { - @include linear-gradient(shade($bg_color, 1.2)); + &.slider { + @include linear-gradient(shade($bg_color, 1.2)); - border: 1px solid rgba(0,0,0,0.2); - box-shadow: 0 1px 2px -1px alpha($dark_shadow, .12); + border: 1px solid rgba(0,0,0,0.2); + box-shadow: 0 1px 2px -1px alpha($dark_shadow, .12); - &:insensitive { - border-color: rgba(0,0,0,0.1); - background-color: shade($bg_color, 0.9); - box-shadow: none; - } - } + &:insensitive { + border-color: rgba(0,0,0,0.1); + background-color: shade($bg_color, 0.9); + box-shadow: none; + } + } - &.trough { - @include linear-gradient(shade($bg_color, .95), to top); + &.trough { + @include linear-gradient(shade($bg_color, .95), to top); - border: 1px solid border_normal($bg_color); - color: $fg_color; - box-shadow: inset 1px 0 alpha($dark_shadow, .07), - inset 0 1px alpha($dark_shadow, .08), - inset -1px 0 alpha($dark_shadow, .07), - inset 0 -1px alpha($dark_shadow, .05); + border: 1px solid border_normal($bg_color); + color: $fg_color; + box-shadow: inset 1px 0 alpha($dark_shadow, .07), + inset 0 1px alpha($dark_shadow, .08), + inset -1px 0 alpha($dark_shadow, .07), + inset 0 -1px alpha($dark_shadow, .05); - &:active { - @include linear-gradient($selected_bg_color, to top); + &:active { + @include linear-gradient($selected_bg_color, to top); - border-color: shade($selected_bg_color, 0.9); - color: $selected_fg_color; - } + border-color: shade($selected_bg_color, 0.9); + color: $selected_fg_color; + } - &:insensitive { - @include linear-gradient(shade($bg_color, .9), to top); + &:insensitive { + @include linear-gradient(shade($bg_color, .9), to top); - border-color: border_insensitive($bg_color); - color: mix($fg_color, $bg_color, 0.5); - } - } - } + border-color: border_insensitive($bg_color); + color: mix($fg_color, $bg_color, 0.5); + } + } + } } diff --git a/gtk-3.0/scss/widgets/_toolbar.scss b/gtk-3.0/scss/widgets/_toolbar.scss index f8866ea..e391f3d 100755 --- a/gtk-3.0/scss/widgets/_toolbar.scss +++ b/gtk-3.0/scss/widgets/_toolbar.scss @@ -102,7 +102,7 @@ &:hover, &:hover:focus { background-image: none; background-color: transparent; - color: $selected_bg-color; + color: $selected_bg_color; box-shadow: none; } diff --git a/gtk-3.0/scss/widgets/_window.scss b/gtk-3.0/scss/widgets/_window.scss index 0b8f88b..0921bd8 100755 --- a/gtk-3.0/scss/widgets/_window.scss +++ b/gtk-3.0/scss/widgets/_window.scss @@ -3,44 +3,44 @@ ***************/ @include exports("window") { - %window { - box-shadow: 0 19px 38px rgba(0,0,0,0.30), 0 15px 12px rgba(0,0,0,0.22), - 0 0 0 1px $wm_border_focused; + %window { + box-shadow: 0 19px 38px rgba(0,0,0,0.30), 0 15px 12px rgba(0,0,0,0.22), + 0 0 0 1px $wm_border_focused; - &:backdrop { - box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23), - 0 0 0 1px $wm_border_unfocused; - } - } + &:backdrop { + box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23), + 0 0 0 1px $wm_border_unfocused; + } + } - .window-frame { - @extend %window; + .window-frame { + @extend %window; - border: 0; - border-radius: $roundness + 1; + border: none; + border-radius: $roundness $roundness 0 0; - /* this is used for the resize cursor area */ - margin: $spacing * 3; + /* this is used for the resize cursor area */ + margin: $spacing * 3; - &.tiled { border-radius: 0; } + &.tiled { border-radius: 0; } - &.csd { - &.popup { - @extend %window; + &.csd { + &.popup { + @extend %window; - border-radius: 0; - } + border-radius: 0; + } - &.tooltip { - border-radius: $roundness; - box-shadow: none; - } + &.tooltip { + border-radius: $roundness; + box-shadow: none; + } - &.message-dialog { - @extend %window; + &.message-dialog { + @extend %window; - border-radius: $roundness; - } - } - } + border-radius: $roundness; + } + } + } } From 5ef83db45e44ae51dfbb16148bd2c53692b4940f Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 7 Aug 2015 01:37:34 +0530 Subject: [PATCH 53/73] Use gresource --- .gitignore | 1 + gtk-3.0/gtk-dark.css | 2 +- gtk-3.0/gtk.css | 2 +- gtk-3.0/gtk.gresource.xml | 46 +++++++++++++++++++++++++++++++++ gtk-3.0/scss/widgets/_misc.scss | 15 +++++++---- 5 files changed, 59 insertions(+), 7 deletions(-) create mode 100644 gtk-3.0/gtk.gresource.xml diff --git a/.gitignore b/.gitignore index c8a7d64..e1c2565 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,5 @@ # Ignore SASS files .sass-cache +gtk.gresource dist diff --git a/gtk-3.0/gtk-dark.css b/gtk-3.0/gtk-dark.css index 3c469d4..b00626d 100755 --- a/gtk-3.0/gtk-dark.css +++ b/gtk-3.0/gtk-dark.css @@ -1 +1 @@ -@import url("dist/gtk-dark.css"); +@import url("resource:///org/numixproject/gtk/dist/gtk-dark.css"); diff --git a/gtk-3.0/gtk.css b/gtk-3.0/gtk.css index 415ea7b..c6eab95 100755 --- a/gtk-3.0/gtk.css +++ b/gtk-3.0/gtk.css @@ -1 +1 @@ -@import url("dist/gtk.css"); +@import url("resource:///org/numixproject/gtk/dist/gtk.css"); diff --git a/gtk-3.0/gtk.gresource.xml b/gtk-3.0/gtk.gresource.xml new file mode 100644 index 0000000..47bc2ea --- /dev/null +++ b/gtk-3.0/gtk.gresource.xml @@ -0,0 +1,46 @@ + + + + assets/checkbox-checked-dark.png + assets/checkbox-checked-insensitive-dark.png + assets/checkbox-checked-insensitive.png + assets/checkbox-checked.png + assets/checkbox-mixed-dark.png + assets/checkbox-mixed-insensitive-dark.png + assets/checkbox-mixed-insensitive.png + assets/checkbox-mixed.png + assets/checkbox-unchecked-dark.png + assets/checkbox-unchecked-insensitive-dark.png + assets/checkbox-unchecked-insensitive.png + assets/checkbox-unchecked.png + assets/grid-selection-checked-dark.png + assets/grid-selection-checked.png + assets/grid-selection-unchecked-dark.png + assets/grid-selection-unchecked.png + assets/menuitem-checkbox-checked-hover.png + assets/menuitem-checkbox-checked-insensitive.png + assets/menuitem-checkbox-checked.png + assets/menuitem-checkbox-mixed-hover.png + assets/menuitem-checkbox-mixed-insensitive.png + assets/menuitem-checkbox-mixed.png + assets/menuitem-radio-checked-hover.png + assets/menuitem-radio-checked-insensitive.png + assets/menuitem-radio-checked.png + assets/radio-checked-dark.png + assets/radio-checked-insensitive-dark.png + assets/radio-checked-insensitive.png + assets/radio-checked.png + assets/radio-mixed-dark.png + assets/radio-mixed-insensitive-dark.png + assets/radio-mixed-insensitive.png + assets/radio-mixed.png + assets/radio-unchecked-dark.png + assets/radio-unchecked-insensitive-dark.png + assets/radio-unchecked-insensitive.png + assets/radio-unchecked.png + dist/gtk.css + dist/gtk.css.map + dist/gtk-dark.css + dist/gtk-dark.css.map + + diff --git a/gtk-3.0/scss/widgets/_misc.scss b/gtk-3.0/scss/widgets/_misc.scss index 177f8de..3436192 100644 --- a/gtk-3.0/scss/widgets/_misc.scss +++ b/gtk-3.0/scss/widgets/_misc.scss @@ -16,13 +16,18 @@ @include exports("tooltip") { .tooltip { - @include linear-gradient($tooltip_bg_color); + &.background { + @include linear-gradient($tooltip_bg_color); - border: none; - border-radius: $roundness; - color: $tooltip_fg_color; + border: none; + border-radius: $roundness; + color: $tooltip_fg_color; + } - * { background-color: transparent; } + * { + background-color: transparent; + color: inherit; + } } } From 8ef0df096fe6668134f266338533829bda5e3190 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 7 Aug 2015 01:37:58 +0530 Subject: [PATCH 54/73] All new Makefile --- Makefile | 41 ++++++++++++++++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index a3777f1..7b56e49 100755 --- a/Makefile +++ b/Makefile @@ -1,14 +1,45 @@ -SASS=sass -SCSS_DIR=gtk-3.0/scss -DIST_DIR=gtk-3.0/dist +SASS=scss +SASSFLAGS=--sourcemap=none +GLIB_COMPILE_RESOURCES=glib-compile-resources +RES_DIR=gtk-3.0 +SCSS_DIR=$(RES_DIR)/scss +DIST_DIR=$(RES_DIR)/dist +INSTALL_DIR=$(DESTDIR)/usr/share/themes/Ozon + +all: gresource css: - $(SASS) --sourcemap=none --update $(SCSS_DIR):$(DIST_DIR) + $(SASS) --update $(SASSFLAGS) $(SCSS_DIR):$(DIST_DIR) -all: css +gresource: css + $(GLIB_COMPILE_RESOURCES) --sourcedir=$(RES_DIR) $(RES_DIR)/gtk.gresource.xml + +watch: + while true; do \ + make gresource; \ + inotifywait @gtk.gresource -qr -e modify -e create -e delete $(RES_DIR); \ + done clean: rm -rf $(DIST_DIR) + rm -f $(RES_DIR)/gtk.gresource +install: all + install -d -m755 $(INSTALL_DIR) + + for f in *; do cp -pr $$f $(INSTALL_DIR)/; done + +uninstall: + rm -rf $(INSTALL_DIR) + +.PHONY: all .PHONY: css +.PHONY: watch +.PHONY: gresource +.PHONY: clean +.PHONY: install +.PHONY: uninstall + +.DEFAULT_GOAL := all + # vim: set ts=4 sw=4 tw=0 noet : From 9a1b4be82d3d065479002f7e43b50d2748e566ad Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 7 Aug 2015 01:56:02 +0530 Subject: [PATCH 55/73] Run clean by default --- Makefile | 4 ++-- gtk-3.0/gtk.gresource.xml | 2 -- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index 7b56e49..cc651b5 100755 --- a/Makefile +++ b/Makefile @@ -6,7 +6,7 @@ SCSS_DIR=$(RES_DIR)/scss DIST_DIR=$(RES_DIR)/dist INSTALL_DIR=$(DESTDIR)/usr/share/themes/Ozon -all: gresource +all: clean gresource css: $(SASS) --update $(SASSFLAGS) $(SCSS_DIR):$(DIST_DIR) @@ -14,7 +14,7 @@ css: gresource: css $(GLIB_COMPILE_RESOURCES) --sourcedir=$(RES_DIR) $(RES_DIR)/gtk.gresource.xml -watch: +watch: clean while true; do \ make gresource; \ inotifywait @gtk.gresource -qr -e modify -e create -e delete $(RES_DIR); \ diff --git a/gtk-3.0/gtk.gresource.xml b/gtk-3.0/gtk.gresource.xml index 47bc2ea..7bba375 100644 --- a/gtk-3.0/gtk.gresource.xml +++ b/gtk-3.0/gtk.gresource.xml @@ -39,8 +39,6 @@ assets/radio-unchecked-insensitive.png assets/radio-unchecked.png dist/gtk.css - dist/gtk.css.map dist/gtk-dark.css - dist/gtk-dark.css.map From 4e71a5a5811ff3531c5b51b127a8da7a808620e4 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 7 Aug 2015 02:19:29 +0530 Subject: [PATCH 56/73] Fix install directory --- Makefile | 2 +- README.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index cc651b5..4f666d9 100755 --- a/Makefile +++ b/Makefile @@ -4,7 +4,7 @@ GLIB_COMPILE_RESOURCES=glib-compile-resources RES_DIR=gtk-3.0 SCSS_DIR=$(RES_DIR)/scss DIST_DIR=$(RES_DIR)/dist -INSTALL_DIR=$(DESTDIR)/usr/share/themes/Ozon +INSTALL_DIR=$(DESTDIR)/usr/share/themes/Numix all: clean gresource diff --git a/README.md b/README.md index d6d1756..4155081 100755 --- a/README.md +++ b/README.md @@ -22,7 +22,7 @@ xfconf-query -c xfwm4 -p /general/theme -s "Numix" ### Requirements -GTK+ 3.6 or above +GTK+ 3.16 or above Murrine theme engine From c5d460c4d2898d0dd71845187288a6a890113c13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?La=C3=A9rcio=20de=20Sousa?= Date: Thu, 18 Jun 2015 08:31:57 -0300 Subject: [PATCH 57/73] Fix LXDE panel window buttons' style --- gtk-2.0/gtkrc | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gtk-2.0/gtkrc b/gtk-2.0/gtkrc index 790890a..3ddb9a6 100755 --- a/gtk-2.0/gtkrc +++ b/gtk-2.0/gtkrc @@ -477,6 +477,11 @@ widget_class "*Applet*Tomboy*" style "murrine-panel" widget_class "*Applet*Netstatus*" style "murrine-panel" widget "*gdm-user-switch-menubar*" style "murrine-panel" +# LXPanel (code based on Lubuntu-default theme's gtkrc file) +widget "*.tclock.*" style "murrine-panel" +widget "*.taskbar.*" style "murrine-panel" +widget_class "*GtkBgbox*" style "murrine-panel" + style "bold-panel-item" { font_name = "Bold" From ec5a26c9875398c6d40f80cd8085e6aa7bedc972 Mon Sep 17 00:00:00 2001 From: Test User Date: Wed, 20 May 2015 09:16:27 +0200 Subject: [PATCH 58/73] Deletes unnecessary folder icons --- unity/icons/close_dash.svg | 1 - unity/icons/close_dash_disabled.svg | 1 - unity/icons/close_dash_prelight.svg | 1 - unity/icons/close_dash_pressed.svg | 1 - unity/icons/maximize_dash.svg | 1 - unity/icons/maximize_dash_disabled.svg | 1 - unity/icons/maximize_dash_prelight.svg | 1 - unity/icons/maximize_dash_pressed.svg | 1 - unity/icons/minimize_dash.svg | 1 - unity/icons/minimize_dash_disabled.svg | 1 - unity/icons/minimize_dash_prelight.svg | 1 - unity/icons/minimize_dash_pressed.svg | 1 - unity/icons/sheet_style_close_focused.svg | 1 - unity/icons/sheet_style_close_focused_prelight.svg | 1 - unity/icons/sheet_style_close_focused_pressed.svg | 1 - unity/icons/unmaximize_dash.svg | 1 - unity/icons/unmaximize_dash_disabled.svg | 1 - unity/icons/unmaximize_dash_prelight.svg | 1 - unity/icons/unmaximize_dash_pressed.svg | 1 - 19 files changed, 19 deletions(-) delete mode 120000 unity/icons/close_dash.svg delete mode 120000 unity/icons/close_dash_disabled.svg delete mode 120000 unity/icons/close_dash_prelight.svg delete mode 120000 unity/icons/close_dash_pressed.svg delete mode 120000 unity/icons/maximize_dash.svg delete mode 120000 unity/icons/maximize_dash_disabled.svg delete mode 120000 unity/icons/maximize_dash_prelight.svg delete mode 120000 unity/icons/maximize_dash_pressed.svg delete mode 120000 unity/icons/minimize_dash.svg delete mode 120000 unity/icons/minimize_dash_disabled.svg delete mode 120000 unity/icons/minimize_dash_prelight.svg delete mode 120000 unity/icons/minimize_dash_pressed.svg delete mode 120000 unity/icons/sheet_style_close_focused.svg delete mode 120000 unity/icons/sheet_style_close_focused_prelight.svg delete mode 120000 unity/icons/sheet_style_close_focused_pressed.svg delete mode 120000 unity/icons/unmaximize_dash.svg delete mode 120000 unity/icons/unmaximize_dash_disabled.svg delete mode 120000 unity/icons/unmaximize_dash_prelight.svg delete mode 120000 unity/icons/unmaximize_dash_pressed.svg diff --git a/unity/icons/close_dash.svg b/unity/icons/close_dash.svg deleted file mode 120000 index c20c766..0000000 --- a/unity/icons/close_dash.svg +++ /dev/null @@ -1 +0,0 @@ -./../close.svg \ No newline at end of file diff --git a/unity/icons/close_dash_disabled.svg b/unity/icons/close_dash_disabled.svg deleted file mode 120000 index 2775794..0000000 --- a/unity/icons/close_dash_disabled.svg +++ /dev/null @@ -1 +0,0 @@ -./../close_unfocused.svg \ No newline at end of file diff --git a/unity/icons/close_dash_prelight.svg b/unity/icons/close_dash_prelight.svg deleted file mode 120000 index 247f20b..0000000 --- a/unity/icons/close_dash_prelight.svg +++ /dev/null @@ -1 +0,0 @@ -./../close_focused_prelight.svg \ No newline at end of file diff --git a/unity/icons/close_dash_pressed.svg b/unity/icons/close_dash_pressed.svg deleted file mode 120000 index 5f40ad1..0000000 --- a/unity/icons/close_dash_pressed.svg +++ /dev/null @@ -1 +0,0 @@ -./../close_focused_pressed.svg \ No newline at end of file diff --git a/unity/icons/maximize_dash.svg b/unity/icons/maximize_dash.svg deleted file mode 120000 index 4c8ea97..0000000 --- a/unity/icons/maximize_dash.svg +++ /dev/null @@ -1 +0,0 @@ -./../maximize.svg \ No newline at end of file diff --git a/unity/icons/maximize_dash_disabled.svg b/unity/icons/maximize_dash_disabled.svg deleted file mode 120000 index ae51f77..0000000 --- a/unity/icons/maximize_dash_disabled.svg +++ /dev/null @@ -1 +0,0 @@ -./../maximize_unfocused.svg \ No newline at end of file diff --git a/unity/icons/maximize_dash_prelight.svg b/unity/icons/maximize_dash_prelight.svg deleted file mode 120000 index 4c8ea97..0000000 --- a/unity/icons/maximize_dash_prelight.svg +++ /dev/null @@ -1 +0,0 @@ -./../maximize.svg \ No newline at end of file diff --git a/unity/icons/maximize_dash_pressed.svg b/unity/icons/maximize_dash_pressed.svg deleted file mode 120000 index 4c8ea97..0000000 --- a/unity/icons/maximize_dash_pressed.svg +++ /dev/null @@ -1 +0,0 @@ -./../maximize.svg \ No newline at end of file diff --git a/unity/icons/minimize_dash.svg b/unity/icons/minimize_dash.svg deleted file mode 120000 index dc045ff..0000000 --- a/unity/icons/minimize_dash.svg +++ /dev/null @@ -1 +0,0 @@ -./../minimize.svg \ No newline at end of file diff --git a/unity/icons/minimize_dash_disabled.svg b/unity/icons/minimize_dash_disabled.svg deleted file mode 120000 index bfdfa65..0000000 --- a/unity/icons/minimize_dash_disabled.svg +++ /dev/null @@ -1 +0,0 @@ -./../minimize_unfocused.svg \ No newline at end of file diff --git a/unity/icons/minimize_dash_prelight.svg b/unity/icons/minimize_dash_prelight.svg deleted file mode 120000 index 7777dbd..0000000 --- a/unity/icons/minimize_dash_prelight.svg +++ /dev/null @@ -1 +0,0 @@ -./../minimize_focused_prelight.svg \ No newline at end of file diff --git a/unity/icons/minimize_dash_pressed.svg b/unity/icons/minimize_dash_pressed.svg deleted file mode 120000 index 523611a..0000000 --- a/unity/icons/minimize_dash_pressed.svg +++ /dev/null @@ -1 +0,0 @@ -./../minimize_focused_pressed.svg \ No newline at end of file diff --git a/unity/icons/sheet_style_close_focused.svg b/unity/icons/sheet_style_close_focused.svg deleted file mode 120000 index 2775794..0000000 --- a/unity/icons/sheet_style_close_focused.svg +++ /dev/null @@ -1 +0,0 @@ -./../close_unfocused.svg \ No newline at end of file diff --git a/unity/icons/sheet_style_close_focused_prelight.svg b/unity/icons/sheet_style_close_focused_prelight.svg deleted file mode 120000 index 247f20b..0000000 --- a/unity/icons/sheet_style_close_focused_prelight.svg +++ /dev/null @@ -1 +0,0 @@ -./../close_focused_prelight.svg \ No newline at end of file diff --git a/unity/icons/sheet_style_close_focused_pressed.svg b/unity/icons/sheet_style_close_focused_pressed.svg deleted file mode 120000 index 5f40ad1..0000000 --- a/unity/icons/sheet_style_close_focused_pressed.svg +++ /dev/null @@ -1 +0,0 @@ -./../close_focused_pressed.svg \ No newline at end of file diff --git a/unity/icons/unmaximize_dash.svg b/unity/icons/unmaximize_dash.svg deleted file mode 120000 index d96076c..0000000 --- a/unity/icons/unmaximize_dash.svg +++ /dev/null @@ -1 +0,0 @@ -./../unmaximize.svg \ No newline at end of file diff --git a/unity/icons/unmaximize_dash_disabled.svg b/unity/icons/unmaximize_dash_disabled.svg deleted file mode 120000 index 9832785..0000000 --- a/unity/icons/unmaximize_dash_disabled.svg +++ /dev/null @@ -1 +0,0 @@ -./../unmaximize_unfocused.svg \ No newline at end of file diff --git a/unity/icons/unmaximize_dash_prelight.svg b/unity/icons/unmaximize_dash_prelight.svg deleted file mode 120000 index d96076c..0000000 --- a/unity/icons/unmaximize_dash_prelight.svg +++ /dev/null @@ -1 +0,0 @@ -./../unmaximize.svg \ No newline at end of file diff --git a/unity/icons/unmaximize_dash_pressed.svg b/unity/icons/unmaximize_dash_pressed.svg deleted file mode 120000 index d96076c..0000000 --- a/unity/icons/unmaximize_dash_pressed.svg +++ /dev/null @@ -1 +0,0 @@ -./../unmaximize.svg \ No newline at end of file From 59b110a0e0b57302db2d7227830695aeb316e890 Mon Sep 17 00:00:00 2001 From: Test User Date: Wed, 20 May 2015 09:13:41 +0200 Subject: [PATCH 59/73] Moves unity icons to correct location --- unity/close_dash.svg | 1 + unity/close_dash_disabled.svg | 1 + unity/close_dash_prelight.svg | 1 + unity/close_dash_pressed.svg | 1 + unity/maximize_dash.svg | 1 + unity/maximize_dash_disabled.svg | 1 + unity/maximize_dash_prelight.svg | 1 + unity/maximize_dash_pressed.svg | 1 + unity/minimize_dash.svg | 1 + unity/minimize_dash_disabled.svg | 1 + unity/minimize_dash_prelight.svg | 1 + unity/minimize_dash_pressed.svg | 1 + unity/sheet_style_close_focused.svg | 1 + unity/sheet_style_close_focused_prelight.svg | 1 + unity/sheet_style_close_focused_pressed.svg | 1 + unity/unmaximize_dash.svg | 1 + unity/unmaximize_dash_disabled.svg | 1 + unity/unmaximize_dash_prelight.svg | 1 + unity/unmaximize_dash_pressed.svg | 1 + 19 files changed, 19 insertions(+) create mode 100644 unity/close_dash.svg create mode 120000 unity/close_dash_disabled.svg create mode 120000 unity/close_dash_prelight.svg create mode 120000 unity/close_dash_pressed.svg create mode 100644 unity/maximize_dash.svg create mode 120000 unity/maximize_dash_disabled.svg create mode 120000 unity/maximize_dash_prelight.svg create mode 120000 unity/maximize_dash_pressed.svg create mode 100644 unity/minimize_dash.svg create mode 120000 unity/minimize_dash_disabled.svg create mode 120000 unity/minimize_dash_prelight.svg create mode 120000 unity/minimize_dash_pressed.svg create mode 120000 unity/sheet_style_close_focused.svg create mode 120000 unity/sheet_style_close_focused_prelight.svg create mode 120000 unity/sheet_style_close_focused_pressed.svg create mode 100644 unity/unmaximize_dash.svg create mode 120000 unity/unmaximize_dash_disabled.svg create mode 120000 unity/unmaximize_dash_prelight.svg create mode 120000 unity/unmaximize_dash_pressed.svg diff --git a/unity/close_dash.svg b/unity/close_dash.svg new file mode 100644 index 0000000..752e8a0 --- /dev/null +++ b/unity/close_dash.svg @@ -0,0 +1 @@ + diff --git a/unity/close_dash_disabled.svg b/unity/close_dash_disabled.svg new file mode 120000 index 0000000..0749829 --- /dev/null +++ b/unity/close_dash_disabled.svg @@ -0,0 +1 @@ +close_unfocused.svg \ No newline at end of file diff --git a/unity/close_dash_prelight.svg b/unity/close_dash_prelight.svg new file mode 120000 index 0000000..64b2bff --- /dev/null +++ b/unity/close_dash_prelight.svg @@ -0,0 +1 @@ +close_focused_prelight.svg \ No newline at end of file diff --git a/unity/close_dash_pressed.svg b/unity/close_dash_pressed.svg new file mode 120000 index 0000000..ba6d4fe --- /dev/null +++ b/unity/close_dash_pressed.svg @@ -0,0 +1 @@ +close_unfocused_pressed.svg \ No newline at end of file diff --git a/unity/maximize_dash.svg b/unity/maximize_dash.svg new file mode 100644 index 0000000..bfd992c --- /dev/null +++ b/unity/maximize_dash.svg @@ -0,0 +1 @@ + diff --git a/unity/maximize_dash_disabled.svg b/unity/maximize_dash_disabled.svg new file mode 120000 index 0000000..a933b39 --- /dev/null +++ b/unity/maximize_dash_disabled.svg @@ -0,0 +1 @@ +maximize_unfocused.svg \ No newline at end of file diff --git a/unity/maximize_dash_prelight.svg b/unity/maximize_dash_prelight.svg new file mode 120000 index 0000000..3efa75f --- /dev/null +++ b/unity/maximize_dash_prelight.svg @@ -0,0 +1 @@ +maximize_dash.svg \ No newline at end of file diff --git a/unity/maximize_dash_pressed.svg b/unity/maximize_dash_pressed.svg new file mode 120000 index 0000000..3efa75f --- /dev/null +++ b/unity/maximize_dash_pressed.svg @@ -0,0 +1 @@ +maximize_dash.svg \ No newline at end of file diff --git a/unity/minimize_dash.svg b/unity/minimize_dash.svg new file mode 100644 index 0000000..c838c2b --- /dev/null +++ b/unity/minimize_dash.svg @@ -0,0 +1 @@ + diff --git a/unity/minimize_dash_disabled.svg b/unity/minimize_dash_disabled.svg new file mode 120000 index 0000000..ac8c42d --- /dev/null +++ b/unity/minimize_dash_disabled.svg @@ -0,0 +1 @@ +minimize_unfocused.svg \ No newline at end of file diff --git a/unity/minimize_dash_prelight.svg b/unity/minimize_dash_prelight.svg new file mode 120000 index 0000000..752db6d --- /dev/null +++ b/unity/minimize_dash_prelight.svg @@ -0,0 +1 @@ +minimize_focused_prelight.svg \ No newline at end of file diff --git a/unity/minimize_dash_pressed.svg b/unity/minimize_dash_pressed.svg new file mode 120000 index 0000000..d2b384b --- /dev/null +++ b/unity/minimize_dash_pressed.svg @@ -0,0 +1 @@ +minimize_focused_pressed.svg \ No newline at end of file diff --git a/unity/sheet_style_close_focused.svg b/unity/sheet_style_close_focused.svg new file mode 120000 index 0000000..0749829 --- /dev/null +++ b/unity/sheet_style_close_focused.svg @@ -0,0 +1 @@ +close_unfocused.svg \ No newline at end of file diff --git a/unity/sheet_style_close_focused_prelight.svg b/unity/sheet_style_close_focused_prelight.svg new file mode 120000 index 0000000..64b2bff --- /dev/null +++ b/unity/sheet_style_close_focused_prelight.svg @@ -0,0 +1 @@ +close_focused_prelight.svg \ No newline at end of file diff --git a/unity/sheet_style_close_focused_pressed.svg b/unity/sheet_style_close_focused_pressed.svg new file mode 120000 index 0000000..ba6d4fe --- /dev/null +++ b/unity/sheet_style_close_focused_pressed.svg @@ -0,0 +1 @@ +close_unfocused_pressed.svg \ No newline at end of file diff --git a/unity/unmaximize_dash.svg b/unity/unmaximize_dash.svg new file mode 100644 index 0000000..74a1d70 --- /dev/null +++ b/unity/unmaximize_dash.svg @@ -0,0 +1 @@ + diff --git a/unity/unmaximize_dash_disabled.svg b/unity/unmaximize_dash_disabled.svg new file mode 120000 index 0000000..8340f67 --- /dev/null +++ b/unity/unmaximize_dash_disabled.svg @@ -0,0 +1 @@ +unmaximize_unfocused.svg \ No newline at end of file diff --git a/unity/unmaximize_dash_prelight.svg b/unity/unmaximize_dash_prelight.svg new file mode 120000 index 0000000..945a9f8 --- /dev/null +++ b/unity/unmaximize_dash_prelight.svg @@ -0,0 +1 @@ +unmaximize_dash.svg \ No newline at end of file diff --git a/unity/unmaximize_dash_pressed.svg b/unity/unmaximize_dash_pressed.svg new file mode 120000 index 0000000..945a9f8 --- /dev/null +++ b/unity/unmaximize_dash_pressed.svg @@ -0,0 +1 @@ +unmaximize_dash.svg \ No newline at end of file From b452bf4a6b171d74da9e66ec0c76f6adf56f898a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hajo=20M=C3=B6ller?= Date: Fri, 15 May 2015 20:42:50 +0200 Subject: [PATCH 60/73] Fix Workspace Switcher styling Fixes #217 --- gtk-2.0/gtkrc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gtk-2.0/gtkrc b/gtk-2.0/gtkrc index 3ddb9a6..cad7702 100755 --- a/gtk-2.0/gtkrc +++ b/gtk-2.0/gtkrc @@ -499,6 +499,7 @@ widget "*gimmie*" style "bold-panel-item" # XFCE Styles style "workspace-switcher" = "murrine-panel" { + bg[ACTIVE] = @selected_bg_color bg[SELECTED] = @selected_bg_color } @@ -568,7 +569,7 @@ style "xfsm-logout-button" { } } -widget "*WnckPager*" style "workspace-switcher" +widget "*Pager*" style "workspace-switcher" widget "*Xfce*Panel*" style "murrine-panel" class "*Xfce*Panel*" style "murrine-panel" From 27fa75eed62c989fe56164b4a5cf24bfa4396b56 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 7 Aug 2015 02:52:27 +0530 Subject: [PATCH 61/73] Update installation instructions --- README.md | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 4155081..33cd6a9 100755 --- a/README.md +++ b/README.md @@ -4,7 +4,23 @@ Numix is a part of the [Numix Project](http://numixproject.org). ### Manual installation -Extract the zip file to the themes directory i.e. `/usr/share/themes/` +First, you need to compile the theme using the [Sass](http://sass-lang.com/) compiler. + +To install Sass, install ruby and the gem command using your distro's package manager. Then install `sass` with the `gem` command, + +`gem install sass` + +You'll also need the following commands in your path to generate the gresource binary. Install them using your distro's package manager. + +* `glib-compile-schemas` +* `gdk-pixbuf-pixdata` + +After installing all the dependencies, switch to the cloned directory and, run the following in Terminal, + +``` +make +sudo make install +``` To set the theme in Gnome, run the following commands in Terminal, From 39beccc205d1e24ad57f9e12e9decd7b8b8ccae4 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 7 Aug 2015 03:06:51 +0530 Subject: [PATCH 62/73] Consistent colors for GTK2 --- gtk-2.0/gtkrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gtk-2.0/gtkrc b/gtk-2.0/gtkrc index cad7702..a25991f 100755 --- a/gtk-2.0/gtkrc +++ b/gtk-2.0/gtkrc @@ -1,6 +1,6 @@ # Numix GTK Theme -gtk-color-scheme = "bg_color:#eeeeee\nfg_color:#333333\nbase_color:#ffffff\ntext_color:#333333\nselected_bg_color:#f0544c\nselected_fg_color:#ffffff\ntooltip_bg_color:#333333\ntooltip_fg_color:#eeeeee\ntitlebar_bg_color:#333333\ntitlebar_fg_color:#eeeeee\nmenubar_bg_color:#333333\nmenubar_fg_color:#eeeeee\ntoolbar_bg_color:#eeeeee\ntoolbar_fg_color:#333333\nmenu_bg_color:#333333\nmenu_fg_color:#eeeeee\npanel_bg_color:#333333\npanel_fg_color:#eeeeee\nlink_color:#f06860" +gtk-color-scheme = "bg_color:#eeeeee\nfg_color:#555555\nbase_color:#ffffff\ntext_color:#333333\nselected_bg_color:#f0544c\nselected_fg_color:#ffffff\ntooltip_bg_color:#444444\ntooltip_fg_color:#eeeeee\ntitlebar_bg_color:#444444\ntitlebar_fg_color:#cccccc\nmenubar_bg_color:#444444\nmenubar_fg_color:#eeeeee\ntoolbar_bg_color:#eeeeee\ntoolbar_fg_color:#555555\nmenu_bg_color:#444444\nmenu_fg_color:#cccccc\npanel_bg_color:#444444\npanel_fg_color:#eeeeee\nlink_color:#f06860" # Default Style From 0799234903e315884877e1cc9cf46c6c69db1837 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 7 Aug 2015 03:09:54 +0530 Subject: [PATCH 63/73] Lighter text color for dark theme --- gtk-2.0/gtkrc | 2 +- gtk-3.0/scss/_global.scss | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/gtk-2.0/gtkrc b/gtk-2.0/gtkrc index a25991f..815d6e8 100755 --- a/gtk-2.0/gtkrc +++ b/gtk-2.0/gtkrc @@ -1,6 +1,6 @@ # Numix GTK Theme -gtk-color-scheme = "bg_color:#eeeeee\nfg_color:#555555\nbase_color:#ffffff\ntext_color:#333333\nselected_bg_color:#f0544c\nselected_fg_color:#ffffff\ntooltip_bg_color:#444444\ntooltip_fg_color:#eeeeee\ntitlebar_bg_color:#444444\ntitlebar_fg_color:#cccccc\nmenubar_bg_color:#444444\nmenubar_fg_color:#eeeeee\ntoolbar_bg_color:#eeeeee\ntoolbar_fg_color:#555555\nmenu_bg_color:#444444\nmenu_fg_color:#cccccc\npanel_bg_color:#444444\npanel_fg_color:#eeeeee\nlink_color:#f06860" +gtk-color-scheme = "bg_color:#eeeeee\nfg_color:#555555\nbase_color:#ffffff\ntext_color:#333333\nselected_bg_color:#f0544c\nselected_fg_color:#ffffff\ntooltip_bg_color:#444444\ntooltip_fg_color:#eeeeee\ntitlebar_bg_color:#444444\ntitlebar_fg_color:#dddddd\nmenubar_bg_color:#444444\nmenubar_fg_color:#dddddd\ntoolbar_bg_color:#eeeeee\ntoolbar_fg_color:#555555\nmenu_bg_color:#444444\nmenu_fg_color:#dddddd\npanel_bg_color:#444444\npanel_fg_color:#dddddd\nlink_color:#f06860" # Default Style diff --git a/gtk-3.0/scss/_global.scss b/gtk-3.0/scss/_global.scss index 1110ace..6f78913 100755 --- a/gtk-3.0/scss/_global.scss +++ b/gtk-3.0/scss/_global.scss @@ -2,7 +2,7 @@ // default color scheme $bg_color: if($variant == "dark", #444, #eee); -$fg_color: if($variant == "dark", #ccc, #555); +$fg_color: if($variant == "dark", #ddd, #555); $base_color: if($variant == "dark", #333, #fff); $text_color: if($variant == "dark", #eee, #333); $selected_bg_color: #f0544c; From e1a476689ab8e770428ce5f181ddd40a78a20135 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 7 Aug 2015 03:23:14 +0530 Subject: [PATCH 64/73] Add SSD style --- gtk-3.0/scss/widgets/_toolbar.scss | 2 +- gtk-3.0/scss/widgets/_window.scss | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/gtk-3.0/scss/widgets/_toolbar.scss b/gtk-3.0/scss/widgets/_toolbar.scss index e391f3d..91fe30c 100755 --- a/gtk-3.0/scss/widgets/_toolbar.scss +++ b/gtk-3.0/scss/widgets/_toolbar.scss @@ -6,7 +6,7 @@ **********/ @mixin toolbar($bg, $fg) { - @include linear-gradient($bg); + @incluee linear-gradient($bg); @include border($bg); padding: $spacing * 2; diff --git a/gtk-3.0/scss/widgets/_window.scss b/gtk-3.0/scss/widgets/_window.scss index 0921bd8..4ffb165 100755 --- a/gtk-3.0/scss/widgets/_window.scss +++ b/gtk-3.0/scss/widgets/_window.scss @@ -24,6 +24,13 @@ &.tiled { border-radius: 0; } + &.solid-csd { + border-radius: 0; + margin: 1px; + background-color: $bg_color; + box-shadow: none; + } + &.csd { &.popup { @extend %window; @@ -42,5 +49,9 @@ border-radius: $roundness; } } + + &.ssd { + &.maximized { border-radius: 0; } + } } } From 13ad69d5bd75c92cb18608bb3f3ded5c2b6b1e3d Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 7 Aug 2015 03:44:57 +0530 Subject: [PATCH 65/73] Fix typo --- gtk-3.0/scss/widgets/_toolbar.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gtk-3.0/scss/widgets/_toolbar.scss b/gtk-3.0/scss/widgets/_toolbar.scss index 91fe30c..e391f3d 100755 --- a/gtk-3.0/scss/widgets/_toolbar.scss +++ b/gtk-3.0/scss/widgets/_toolbar.scss @@ -6,7 +6,7 @@ **********/ @mixin toolbar($bg, $fg) { - @incluee linear-gradient($bg); + @include linear-gradient($bg); @include border($bg); padding: $spacing * 2; From db7105d372aa102481d6c048dcdd8724e07ef856 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 7 Aug 2015 03:56:01 +0530 Subject: [PATCH 66/73] Added editor config --- .editorconfig | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 .editorconfig diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..169cf9a --- /dev/null +++ b/.editorconfig @@ -0,0 +1,29 @@ +# EditorConfig helps developers define and maintain consistent +# coding styles between different editors and IDEs +# editorconfig.org + +root = true + + +[*] + +# change these settings to your own preference +indent_style = space +indent_size = 4 + +# we recommend you to keep these unchanged +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true + +[*.md] +trim_trailing_whitespace = false + +[*.yml] +indent_style = space +indent_size = 2 + +[Makefile] +indent_style = tab +indent_size = 4 From 3f97e72aea2e2aae747b7d73883d899fb4aab8a8 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 7 Aug 2015 04:03:39 +0530 Subject: [PATCH 67/73] Added SCSS lint config --- .scss-lint.yml | 177 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 177 insertions(+) create mode 100644 .scss-lint.yml diff --git a/.scss-lint.yml b/.scss-lint.yml new file mode 100644 index 0000000..6868be1 --- /dev/null +++ b/.scss-lint.yml @@ -0,0 +1,177 @@ +linters: + + BangFormat: + enabled: true + space_before_bang: true + space_after_bang: false + + BorderZero: + enabled: true + + ColorKeyword: + enabled: true + + ColorVariable: + enabled: false + + Comment: + enabled: false + + DebugStatement: + enabled: true + + DeclarationOrder: + enabled: true + + DuplicateProperty: + enabled: true + + ElsePlacement: + enabled: true + style: same_line + + EmptyLineBetweenBlocks: + enabled: true + ignore_single_line_blocks: false + + EmptyRule: + enabled: true + + FinalNewline: + enabled: true + present: true + + HexLength: + enabled: true + style: short + + HexNotation: + enabled: true + style: lowercase + + HexValidation: + enabled: true + + IdSelector: + enabled: true + + ImportantRule: + enabled: true + + ImportPath: + enabled: true + leading_underscore: false + filename_extension: false + + Indentation: + enabled: true + character: space + width: 4 + + LeadingZero: + enabled: true + style: exclude_zero + + MergeableSelector: + enabled: true + + NameFormat: + enabled: true + convention: snake_case + + NestingDepth: + enabled: true + max_depth: 4 + + PlaceholderInExtend: + enabled: true + + PropertyCount: + enabled: false + + PropertySortOrder: + enabled: false + + PropertySpelling: + enabled: true + extra_properties: [] + + QualifyingElement: + enabled: false + allow_element_with_attribute: false + allow_element_with_class: false + allow_element_with_id: false + + SelectorDepth: + enabled: true + max_depth: 3 + + SelectorFormat: + enabled: true + convention: hyphenated_lowercase + + Shorthand: + enabled: true + + SingleLinePerProperty: + enabled: true + allow_single_line_rule_sets: true + + SingleLinePerSelector: + enabled: false + + SpaceAfterComma: + enabled: true + + SpaceAfterPropertyColon: + enabled: true + style: one_space + + SpaceAfterPropertyName: + enabled: true + + SpaceBeforeBrace: + enabled: true + style: space + allow_single_line_padding: true + + SpaceBetweenParens: + enabled: false + spaces: 0 + + StringQuotes: + enabled: true + style: double_quotes + + TrailingSemicolon: + enabled: true + + TrailingZero: + enabled: true + + UnnecessaryMantissa: + enabled: true + + UnnecessaryParentReference: + enabled: true + + UrlFormat: + enabled: false + + UrlQuotes: + enabled: true + + VariableForProperty: + enabled: false + + VendorPrefixes: + enabled: false + identifier_list: base + include: [] + exclude: [] + + ZeroUnit: + enabled: true + + Compass::*: + enabled: false From e94d0f274ad56076343d5304a872d36bdf095b5e Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 7 Aug 2015 04:40:12 +0530 Subject: [PATCH 68/73] Update linter config --- .scss-lint.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.scss-lint.yml b/.scss-lint.yml index 6868be1..e9477d5 100644 --- a/.scss-lint.yml +++ b/.scss-lint.yml @@ -53,7 +53,7 @@ linters: enabled: true IdSelector: - enabled: true + enabled: false ImportantRule: enabled: true @@ -73,18 +73,18 @@ linters: style: exclude_zero MergeableSelector: - enabled: true + enabled: false NameFormat: - enabled: true - convention: snake_case + enabled: false + convention: hyphenated_lowercase NestingDepth: enabled: true - max_depth: 4 + max_depth: 5 PlaceholderInExtend: - enabled: true + enabled: false PropertyCount: enabled: false @@ -94,7 +94,7 @@ linters: PropertySpelling: enabled: true - extra_properties: [] + extra_properties: ["icon-shadow","outline-radius"] QualifyingElement: enabled: false @@ -104,10 +104,10 @@ linters: SelectorDepth: enabled: true - max_depth: 3 + max_depth: 5 SelectorFormat: - enabled: true + enabled: false convention: hyphenated_lowercase Shorthand: @@ -164,7 +164,7 @@ linters: VariableForProperty: enabled: false - VendorPrefixes: + VendorPrefix: enabled: false identifier_list: base include: [] From b753394e535d69debb2af75b3fd609bb7729f3aa Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 7 Aug 2015 04:40:35 +0530 Subject: [PATCH 69/73] Fix linting issues --- gtk-3.0/scss/_functions.scss | 84 ++++++++++++++-------------- gtk-3.0/scss/_global.scss | 16 ++++-- gtk-3.0/scss/apps/_gedit.scss | 36 ++++++------ gtk-3.0/scss/apps/_lightdm.scss | 76 ++++++++++++------------- gtk-3.0/scss/apps/_nautilus.scss | 12 ++-- gtk-3.0/scss/apps/_nemo.scss | 6 +- gtk-3.0/scss/apps/_panel.scss | 20 +++---- gtk-3.0/scss/apps/_synaptic.scss | 2 +- gtk-3.0/scss/apps/_unity.scss | 20 +++---- gtk-3.0/scss/apps/_xfce.scss | 2 +- gtk-3.0/scss/widgets/_actionbar.scss | 8 +-- gtk-3.0/scss/widgets/_base.scss | 34 +++++------ gtk-3.0/scss/widgets/_button.scss | 28 +++++----- gtk-3.0/scss/widgets/_calendar.scss | 4 +- gtk-3.0/scss/widgets/_choosers.scss | 28 +++++----- gtk-3.0/scss/widgets/_grid.scss | 4 +- gtk-3.0/scss/widgets/_infobar.scss | 4 +- gtk-3.0/scss/widgets/_menu.scss | 24 ++++---- gtk-3.0/scss/widgets/_misc.scss | 24 ++++---- gtk-3.0/scss/widgets/_notebook.scss | 22 ++++---- gtk-3.0/scss/widgets/_osd.scss | 26 ++++----- gtk-3.0/scss/widgets/_overshoot.scss | 18 +++--- gtk-3.0/scss/widgets/_progress.scss | 19 ++++--- gtk-3.0/scss/widgets/_scrollbar.scss | 14 ++--- gtk-3.0/scss/widgets/_sidebar.scss | 23 ++++---- gtk-3.0/scss/widgets/_spinner.scss | 2 +- gtk-3.0/scss/widgets/_toggle.scss | 10 ++-- gtk-3.0/scss/widgets/_toolbar.scss | 8 +-- gtk-3.0/scss/widgets/_view.scss | 40 ++++++------- gtk-3.0/scss/widgets/_window.scss | 6 +- 30 files changed, 311 insertions(+), 309 deletions(-) diff --git a/gtk-3.0/scss/_functions.scss b/gtk-3.0/scss/_functions.scss index a1e33cf..0de71b6 100755 --- a/gtk-3.0/scss/_functions.scss +++ b/gtk-3.0/scss/_functions.scss @@ -1,79 +1,79 @@ $modules: () !default; @mixin exports($name) { - @if (not index($modules, $name)) { - $modules: append($modules, $name) !global; + @if (not index($modules, $name)) { + $modules: append($modules, $name) !global; - @content; - } + @content; + } } @function alpha($color, $amount) { - @if type-of($color) == "color" { - @return fade-out($color, (1 - $amount)); - } @else { - @return unquote("alpha(#{$color},#{$amount})"); - } + @if type-of($color) == "color" { + @return fade-out($color, (1 - $amount)); + } @else { + @return unquote("alpha(#{$color},#{$amount})"); + } } @function shade($color, $amount) { - @if type-of($color) == "color" { - @if ($amount > 1) { - @return lighten($color, ($amount - 1) * lightness($color)) - } @else { - @return darken($color, (1 - $amount) * lightness($color)) - } - } @else { - @return unquote("shade(#{$color},#{$amount})"); - } + @if type-of($color) == "color" { + @if ($amount > 1) { + @return lighten($color, ($amount - 1) * lightness($color)) + } @else { + @return darken($color, (1 - $amount) * lightness($color)) + } + } @else { + @return unquote("shade(#{$color},#{$amount})"); + } } @function mix($color1, $color2, $amount) { - @return unquote("mix(#{$color1},#{$color2},#{$amount})"); + @return unquote("mix(#{$color1},#{$color2},#{$amount})"); } @function border_normal($color) { - @return shade($color, $contrast); + @return shade($color, $contrast); } @function border_focus($color) { - @return shade($color, ($contrast - .05)); + @return shade($color, ($contrast - .05)); } @function border_active($color) { - @return shade($color, ($contrast - .1)); + @return shade($color, ($contrast - .1)); } @function border_insensitive($color) { - @return shade($color, ($contrast + .05)); + @return shade($color, ($contrast + .05)); } @mixin linear-gradient($color, $direction: to bottom) { - @if $gradient == 0 { - background-color: $color; - background-image: none; - } @else { - $amount: $gradient / 2; + @if $gradient == 0 { + background-color: $color; + background-image: none; + } @else { + $amount: $gradient / 2; - background-color: $color; - background-image: linear-gradient($direction, - shade($color, (1 + $amount)), - shade($color, (1 - $amount)) - ); - } + background-color: $color; + background-image: linear-gradient($direction, + shade($color, (1 + $amount)), + shade($color, (1 - $amount)) + ); + } } @mixin border($color) { - border-color: border_normal($color); + border-color: border_normal($color); - &:focus, &:hover { border-color: border_focus($color); } + &:focus, &:hover { border-color: border_focus($color); } - &:active, &:active:hover, - &:active:focus, &:active:hover:focus, - &:checked, &:checked:hover, - &:checked:focus, &:checked:hover:focus { border-color: border_active($color); } + &:active, &:active:hover, + &:active:focus, &:active:hover:focus, + &:checked, &:checked:hover, + &:checked:focus, &:checked:hover:focus { border-color: border_active($color); } - &:insensitive { border-color: border_insensitive($color); } + &:insensitive { border-color: border_insensitive($color); } - &:active:insensitive, &:checked:insensitive { border-color: border_normal($color); } + &:active:insensitive, &:checked:insensitive { border-color: border_normal($color); } } diff --git a/gtk-3.0/scss/_global.scss b/gtk-3.0/scss/_global.scss index 6f78913..e2b70ee 100755 --- a/gtk-3.0/scss/_global.scss +++ b/gtk-3.0/scss/_global.scss @@ -18,6 +18,10 @@ $dark_fg_color: #eee; $dark_shadow: #000; $light_shadow: #fff; +// white and black +$black: #000; +$white: #fff; + // misc colors used by gtk+ $info_fg_color: #fff; $info_bg_color: #03a9f4; @@ -56,14 +60,14 @@ $lightdm_fg_color: $dark_fg_color; $wm_bg: $titlebar_bg_color; $wm_border_focused: transparent; $wm_border_unfocused: transparent; -$wm_title_focused: mix($titlebar_fg_color, $titlebar_bg_color, 0.1); -$wm_title_unfocused: mix($titlebar_fg_color, $titlebar_bg_color, 0.4); -$wm_icons_focused: mix($titlebar_fg_color, $titlebar_bg_color, 0.1); +$wm_title_focused: mix($titlebar_fg_color, $titlebar_bg_color, .1); +$wm_title_unfocused: mix($titlebar_fg_color, $titlebar_bg_color, .4); +$wm_icons_focused: mix($titlebar_fg_color, $titlebar_bg_color, .1); $wm_icons_focused_prelight: $selected_bg_color; -$wm_icons_focused_pressed: shade($selected_bg_color, 0.8); -$wm_icons_unfocused: mix($titlebar_fg_color, $titlebar_bg_color, 0.4); +$wm_icons_focused_pressed: shade($selected_bg_color, .8); +$wm_icons_unfocused: mix($titlebar_fg_color, $titlebar_bg_color, .4); $wm_icons_unfocused_prelight: $selected_bg_color; -$wm_icons_unfocused_pressed: shade($selected_bg_color, 0.8); +$wm_icons_unfocused_pressed: shade($selected_bg_color, .8); // widget styles $roundness: 2px; diff --git a/gtk-3.0/scss/apps/_gedit.scss b/gtk-3.0/scss/apps/_gedit.scss index 86ec7a5..f1614a6 100644 --- a/gtk-3.0/scss/apps/_gedit.scss +++ b/gtk-3.0/scss/apps/_gedit.scss @@ -15,7 +15,7 @@ .gedit-document-panel { background-color: $bg_color; - color: mix($fg_color, $bg_color, 0.1); + color: mix($fg_color, $bg_color, .1); .list-row { padding: $spacing; @@ -33,21 +33,21 @@ } } - .prelight-row .button { - border-color: alpha(black, 0.1); - color: alpha(white, 0.8); + .prelight-row .button { + border-color: alpha($black, .1); + color: alpha($white, .8); &:active { - border-color: alpha(black, 0.2); - background-color: alpha(black, 0.08); - color: white; + border-color: alpha($black, .2); + background-color: alpha($black, .08); + color: $white; } } list-row, .prelight-row { .button:hover { - border-color: alpha(black, 0.1); - color: white; + border-color: alpha($black, .1); + color: $white; } } } @@ -68,14 +68,14 @@ } .gedit-document-panel-dragged-row { - border: 1px solid alpha(black, 0.1); - background-color: alpha(black, 0.5); - color: white; + border: 1px solid alpha($black, .1); + background-color: alpha($black, .5); + color: $white; } .gedit-document-panel-placeholder-row { - border: none; - background-color: alpha(black, 0.08); + border: 0; + background-color: alpha($black, .08); transition: all 200ms ease-in; } @@ -94,7 +94,7 @@ &:hover, &:active, &:active:hover { border-color: border_normal($bg_color); } &:active { - background-color: shade($bg_color, 0.95); + background-color: shade($bg_color, .95); color: $fg_color; } } @@ -103,7 +103,7 @@ GeditViewFrame .gedit-search-slider { padding: $spacing; border-radius: 0 0 $roundness $roundness; - border-width: 0 1px 1px 1px; + border-width: 0 1px 1px; border-style: solid; border-color: border_normal($base_color); background-color: $base_color; @@ -119,7 +119,7 @@ GeditFileBrowserWidget .toolbar { padding: $spacing / 2; - border-top: none; + border-top: 0; background-color: $bg_color; background-image: none; } @@ -127,6 +127,6 @@ .gedit-search-entry-occurrences-tag { margin: $spacing / 2; padding: $spacing / 2; - color: mix($text_color, $base_color, 0.5); + color: mix($text_color, $base_color, .5); } } diff --git a/gtk-3.0/scss/apps/_lightdm.scss b/gtk-3.0/scss/apps/_lightdm.scss index 453434e..52eda61 100644 --- a/gtk-3.0/scss/apps/_lightdm.scss +++ b/gtk-3.0/scss/apps/_lightdm.scss @@ -6,30 +6,30 @@ #panel_window { background-color: transparent; background-image: none; - color: white; + color: $white; font: bold; - text-shadow: 0 1px alpha(black, 0.5); - icon-shadow: 0 1px alpha(black, 0.5); + text-shadow: 0 1px alpha($black, .5); + icon-shadow: 0 1px alpha($black, .5); .menubar { &, > .menuitem { background-color: transparent; background-image: none; - color: white; + color: $white; font: bold; - text-shadow: 0 1px alpha(black, 0.5); - icon-shadow: 0 1px alpha(black, 0.5); + text-shadow: 0 1px alpha($black, .5); + icon-shadow: 0 1px alpha($black, .5); - *:hover { color: white; } + *:hover { color: $white; } &:hover { border-style: none; - background-color: alpha(white, 0.2); + background-color: alpha($white, .2); background-image: none; - color: white; + color: $white; } - &:insensitive { color: alpha(white, 0.7); } + &:insensitive { color: alpha($white, .7); } .menu { border-radius: 1px; @@ -52,30 +52,30 @@ color: $lightdm_fg_color; /* draw border using box-shadow */ - box-shadow: inset 1px 0 mix(shade($lightdm_bg_color, 0.7), $lightdm_fg_color, 0.21), - inset -1px 0 mix(shade($lightdm_bg_color, 0.7), $lightdm_fg_color, 0.21), - inset 0 1px mix(shade($lightdm_bg_color, 0.7), $lightdm_fg_color, 0.21), - inset 0 -1px mix(shade($lightdm_bg_color, 0.7), $lightdm_fg_color, 0.21); + box-shadow: inset 1px 0 mix(shade($lightdm_bg_color, .7), $lightdm_fg_color, .21), + inset -1px 0 mix(shade($lightdm_bg_color, .7), $lightdm_fg_color, .21), + inset 0 1px mix(shade($lightdm_bg_color, .7), $lightdm_fg_color, .21), + inset 0 -1px mix(shade($lightdm_bg_color, .7), $lightdm_fg_color, .21); .button { padding: 3px 15px; border-width: 1px; border-radius: $roundness; border-style: solid; - border-color: shade($lightdm_bg_color, 0.8); + border-color: shade($lightdm_bg_color, .8); background-color: shade($lightdm_bg_color, 1.08); background-image: none; color: $lightdm_fg_color; transition: all 150ms ease-out; &.default, &:focus, &:active:focus { - border-color: shade($selected_bg_color, 0.8); + border-color: shade($selected_bg_color, .8); background-color: shade($selected_bg_color, 1.08); background-image: none; color: $selected_fg_color; &:hover { - border-color: shade($selected_bg_color, 0.7); + border-color: shade($selected_bg_color, .7); background-color: $selected_bg_color; } } @@ -100,21 +100,21 @@ padding: 3px 5px; border-width: 1px; border-style: solid; - border-color: shade($lightdm_bg_color, 0.8); + border-color: shade($lightdm_bg_color, .8); border-radius: $roundness; - background-color: shade($lightdm_bg_color, 0.9); + background-color: shade($lightdm_bg_color, .9); background-image: none; color: $lightdm_fg_color; box-shadow: none; transition: all 150ms ease-out; &:focus, &:hover { - border-color: shade($lightdm_bg_color, 0.7); + border-color: shade($lightdm_bg_color, .7); - box-shadow: inset 1px 0 alpha($dark_shadow, 0.10), - inset 0 1px alpha($dark_shadow, 0.12), - inset -1px 0 alpha($dark_shadow, 0.10), - inset 0 -1px alpha($dark_shadow, 0.05); + box-shadow: inset 1px 0 alpha($dark_shadow, .1), + inset 0 1px alpha($dark_shadow, .12), + inset -1px 0 alpha($dark_shadow, .1), + inset 0 -1px alpha($dark_shadow, .05); } } } @@ -125,7 +125,7 @@ .menu { font: normal; } - .arrow { color: mix($lightdm_fg_color, $lightdm_bg_color, 0.5); } + .arrow { color: mix($lightdm_fg_color, $lightdm_bg_color, .5); } } #user_image { @@ -133,20 +133,20 @@ border-radius: $roundness; /* draw border using box-shadow */ - box-shadow: inset 1px 0 shade($lightdm_bg_color, 0.7), - inset -1px 0 shade($lightdm_bg_color, 0.7), - inset 0 1px shade($lightdm_bg_color, 0.7), - inset 0 -1px shade($lightdm_bg_color, 0.7); + box-shadow: inset 1px 0 shade($lightdm_bg_color, .7), + inset -1px 0 shade($lightdm_bg_color, .7), + inset 0 1px shade($lightdm_bg_color, .7), + inset 0 -1px shade($lightdm_bg_color, .7); } #user_image_border { border-radius: $roundness; - background-color: shade($lightdm_bg_color, 0.9); + background-color: shade($lightdm_bg_color, .9); background-image: none; - box-shadow: inset 1px 0 alpha($dark_shadow, 0.07), - inset 0 1px alpha($dark_shadow, 0.08), - inset -1px 0 alpha($dark_shadow, 0.07), - inset 0 -1px alpha($dark_shadow, 0.05); + box-shadow: inset 1px 0 alpha($dark_shadow, .07), + inset 0 1px alpha($dark_shadow, .08), + inset -1px 0 alpha($dark_shadow, .07), + inset 0 -1px alpha($dark_shadow, .05); } #buttonbox_frame { @@ -164,26 +164,26 @@ /* shutdown button */ #shutdown_button { - border-color: shade($error_bg_color, 0.8); + border-color: shade($error_bg_color, .8); background-color: shade($error_bg_color, 1.08); background-image: none; color: $error_fg_color; &:hover, &:active, &:active:hover { - border-color: shade($error_bg_color, 0.7); + border-color: shade($error_bg_color, .7); background-color: $error_bg_color; } } /* restart button */ #restart_button { - border-color: shade($warning_bg_color, 0.8); + border-color: shade($warning_bg_color, .8); background-color: shade($warning_bg_color, 1.08); background-image: none; color: $warning_fg_color; &:hover, &:active, &:active:hover { - border-color: shade($warning_bg_color, 0.7); + border-color: shade($warning_bg_color, .7); background-color: $warning_bg_color; } } diff --git a/gtk-3.0/scss/apps/_nautilus.scss b/gtk-3.0/scss/apps/_nautilus.scss index 9a9f754..32cbae7 100644 --- a/gtk-3.0/scss/apps/_nautilus.scss +++ b/gtk-3.0/scss/apps/_nautilus.scss @@ -4,8 +4,8 @@ @include exports("nautilus") { .nautilus-desktop.nautilus-canvas-item { - color: white; - text-shadow: 1px 1px black; + color: $white; + text-shadow: 1px 1px $black; &:active { color: $fg_color; } @@ -21,7 +21,7 @@ border-color: border_normal($toolbar_bg_color); } - .sidebar .frame { border: none; } + .sidebar .frame { border: 0; } GtkPaned { border-width: 0 1px 0 0; @@ -41,17 +41,17 @@ border-bottom-width: 0; } - .frame { border: none; } + .frame { border: 0; } } NautilusQueryEditor { .toolbar { padding-top: $spacing - 1px; padding-bottom: $spacing - 2px; - border-width: 1px 0 0 0; + border-width: 1px 0 0; border-style: solid; border-color: $toolbar_bg_color; - background-color: shade($toolbar_bg_color, 0.9); + background-color: shade($toolbar_bg_color, .9); &:nth-child(2) { border-color: border_normal($toolbar_bg_color); } diff --git a/gtk-3.0/scss/apps/_nemo.scss b/gtk-3.0/scss/apps/_nemo.scss index 63518aa..b7e0041 100644 --- a/gtk-3.0/scss/apps/_nemo.scss +++ b/gtk-3.0/scss/apps/_nemo.scss @@ -4,8 +4,8 @@ @include exports("nemo") { .nemo-desktop.nemo-canvas-item { - color: white; - text-shadow: 1px 1px black; + color: $white; + text-shadow: 1px 1px $black; &:active { color: $fg_color; } @@ -21,7 +21,7 @@ } NemoPlacesTreeView { - -NemoPlacesTreeView-disk-full-bg-color: shade($toolbar_bg_color, 0.8); + -NemoPlacesTreeView-disk-full-bg-color: shade($toolbar_bg_color, .8); -NemoPlacesTreeView-disk-full-fg-color: $selected_bg_color; -NemoPlacesTreeView-disk-full-bar-width: 1px; -NemoPlacesTreeView-disk-full-bar-radius: 1px; diff --git a/gtk-3.0/scss/apps/_panel.scss b/gtk-3.0/scss/apps/_panel.scss index c84c98b..d9513f8 100644 --- a/gtk-3.0/scss/apps/_panel.scss +++ b/gtk-3.0/scss/apps/_panel.scss @@ -18,22 +18,22 @@ color: $panel_fg_color; &:hover, &:prelight { - @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.11)); + @include linear-gradient(mix($panel_bg_color, $panel_fg_color, .11)); - border-color: mix($panel_bg_color, $panel_fg_color, 0.11); + border-color: mix($panel_bg_color, $panel_fg_color, .11); color: shade($panel_fg_color, 1.08); } &:active, &:checked { - @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.21), to top); + @include linear-gradient(mix($panel_bg_color, $panel_fg_color, .21), to top); - border-color: mix($panel_bg_color, $panel_fg_color, 0.21); + border-color: mix($panel_bg_color, $panel_fg_color, .21); color: shade($panel_fg_color, 1.08); &:prelight { - @include linear-gradient(mix($panel_bg_color, $panel_fg_color, 0.31), to top); + @include linear-gradient(mix($panel_bg_color, $panel_fg_color, .31), to top); - border-color: mix($panel_bg_color, $panel_fg_color, 0.31); + border-color: mix($panel_bg_color, $panel_fg_color, .31); } } } @@ -45,7 +45,7 @@ } PanelApplet { - border: none; + border: 0; .button { @extend %panelbutton; @@ -57,14 +57,14 @@ PanelSeparator { @extend %panel; - border: none; + border: 0; } PanelApplet > GtkMenuBar.menubar, PanelMenuBar.menubar, .gnome-panel-menu-bar { &.menuitem { @extend %panel; - border: none; + border: 0; -PanelMenuBar-icon-visible: true; } @@ -73,7 +73,7 @@ PanelAppletFrame { @extend %panel; - border: none; + border: 0; } WnckPager, WnckTasklist { @extend %panel; } diff --git a/gtk-3.0/scss/apps/_synaptic.scss b/gtk-3.0/scss/apps/_synaptic.scss index ca67412..c19b78e 100644 --- a/gtk-3.0/scss/apps/_synaptic.scss +++ b/gtk-3.0/scss/apps/_synaptic.scss @@ -8,7 +8,7 @@ @include linear-gradient($toolbar-bg-color); padding: $spacing; - border: none; + border: 0; color: $toolbar_fg_color; } } diff --git a/gtk-3.0/scss/apps/_unity.scss b/gtk-3.0/scss/apps/_unity.scss index 5cea4ad..e463223 100644 --- a/gtk-3.0/scss/apps/_unity.scss +++ b/gtk-3.0/scss/apps/_unity.scss @@ -11,9 +11,9 @@ -UnityDecoration-shadow-offset-x: 1px; -UnityDecoration-shadow-offset-y: 1px; - -UnityDecoration-active-shadow-color: rgba(0,0,0,0.7); + -UnityDecoration-active-shadow-color: rgba(0, 0, 0, .7); -UnityDecoration-active-shadow-radius: 8px; - -UnityDecoration-inactive-shadow-color: rgba(0,0,0,0.5); + -UnityDecoration-inactive-shadow-color: rgba(0, 0, 0, .5); -UnityDecoration-inactive-shadow-radius: 5px; -UnityDecoration-glow-size: 10px; @@ -21,21 +21,21 @@ -UnityDecoration-title-indent: 10px; -UnityDecoration-title-fade: 35px; - -UnityDecoration-title-alignment: 0.0; + -UnityDecoration-title-alignment: 0; &.top { border: 1px solid $wm_border_focused; - border-bottom: none; + border-bottom: 0; border-radius: 2px 2px 0 0; - padding: 1px ($spacing * 2) 0 ($spacing * 2); + padding: 1px ($spacing * 2) 0; background-color: $titlebar_bg_color; - color: mix($titlebar_fg_color, $titlebar_bg_color, 0.1); + color: mix($titlebar_fg_color, $titlebar_bg_color, .1); text-shadow: none; &:backdrop { border: 1px solid $wm_border_unfocused; - color: mix($titlebar_fg_color, $titlebar_bg_color, 0.4); + color: mix($titlebar_fg_color, $titlebar_bg_color, .4); } } @@ -49,7 +49,7 @@ UnityPanelWidget, .unity-panel { @extend %panel; - border: none; + border: 0; } .unity-panel { @@ -58,8 +58,8 @@ color: $panel_fg_color; &:hover, *:hover { - border-color: mix($panel_bg_color, $panel_fg_color, 0.21); - background-color: mix($panel_bg_color, $panel_fg_color, 0.21); + border-color: mix($panel_bg_color, $panel_fg_color, .21); + background-color: mix($panel_bg_color, $panel_fg_color, .21); background-image: none; color: shade($panel_fg_color, 1.08); } diff --git a/gtk-3.0/scss/apps/_xfce.scss b/gtk-3.0/scss/apps/_xfce.scss index 20dd546..dc38a86 100644 --- a/gtk-3.0/scss/apps/_xfce.scss +++ b/gtk-3.0/scss/apps/_xfce.scss @@ -8,7 +8,7 @@ XfceHeading { margin: 0; padding: 0; - border: none; + border: 0; background-image: none; background-color: $base_color; color: $text_color; diff --git a/gtk-3.0/scss/widgets/_actionbar.scss b/gtk-3.0/scss/widgets/_actionbar.scss index cfae302..749f549 100644 --- a/gtk-3.0/scss/widgets/_actionbar.scss +++ b/gtk-3.0/scss/widgets/_actionbar.scss @@ -10,7 +10,7 @@ @include linear-gradient($bg_color); padding: $spacing; - border-width: 1px 0 0 0; + border-width: 1px 0 0; border-style: solid; border-color: border_normal($bg_color); color: $fg_color; @@ -40,9 +40,9 @@ @include exports("searchbar") { .search-bar { - @include linear-gradient(shade($bg_color, 0.98)); + @include linear-gradient(shade($bg_color, .98)); - border-width: 0 0 1px 0; + border-width: 0 0 1px; border-style: solid; border-color: border_normal($bg_color); color: $fg_color; @@ -86,7 +86,7 @@ } .selection-menu.button { - border: none; + border: 0; background-color: transparent; background-image: none; color: shade($selected_bg_color, $contrast); diff --git a/gtk-3.0/scss/widgets/_base.scss b/gtk-3.0/scss/widgets/_base.scss index 9897e50..eddb5be 100755 --- a/gtk-3.0/scss/widgets/_base.scss +++ b/gtk-3.0/scss/widgets/_base.scss @@ -3,7 +3,7 @@ ***************/ * { - -GtkArrow-arrow-scaling: 0.5; + -GtkArrow-arrow-scaling: .5; -GtkExpander-expander-size: 8; -GtkStatusbar-shadow-type: none; -GtkToolItemGroup-expander-size: 8; @@ -11,7 +11,7 @@ -GtkWindow-resize-grip-width: 0; -WnckTasklist-fade-overlay-rect: 0; - outline-color: alpha($selected_bg_color, 0.5); + outline-color: alpha($selected_bg_color, .5); outline-style: dashed; outline-width: 1px; outline-offset: -1px; @@ -31,21 +31,21 @@ } * { - &:selected { @extend %selected; } - - &:insensitive, - &:insensitive:insensitive { color: mix($fg_color, $bg_color, 0.50); } - - &:insensitive { -gtk-image-effect: dim; } - - &:hover { -gtk-image-effect: highlight; } - /* hyperlinks */ -GtkHTML-link-color: $link_color; -GtkIMHtml-hyperlink-color: $link_color; -GtkWidget-link-color: $link_color; -GtkWidget-visited-link-color: $link_color; + &:selected { @extend %selected; } + + &:insensitive, + &:insensitive:insensitive { color: mix($fg_color, $bg_color, .5); } + + &:insensitive { -gtk-image-effect: dim; } + + &:hover { -gtk-image-effect: highlight; } + &:link, &:visited { color: $link_color; } } @@ -71,13 +71,13 @@ } &:active { - background-color: shade($bg_color, 0.9); + background-color: shade($bg_color, .9); color: $fg_color; } &:insensitive { - background-color: shade(shade($bg_color, 0.95), 1.05); - color: mix($fg_color, $bg_color, 0.50); + background-color: shade(shade($bg_color, .95), 1.05); + color: mix($fg_color, $bg_color, .5); } &:selected { @extend %selected; } @@ -89,12 +89,12 @@ GtkImage, GtkLabel, GtkBox, GtkGrid { GtkLabel { &.separator { - color: $fg_color; - @extend .dim-label; + + color: $fg_color; } &:selected { @extend %selected; } - &:insensitive { color: mix($fg_color, $bg_color, 0.50); } + &:insensitive { color: mix($fg_color, $bg_color, .5); } } diff --git a/gtk-3.0/scss/widgets/_button.scss b/gtk-3.0/scss/widgets/_button.scss index e62bf60..c1b92aa 100755 --- a/gtk-3.0/scss/widgets/_button.scss +++ b/gtk-3.0/scss/widgets/_button.scss @@ -25,7 +25,7 @@ &:dir(rtl) { border-radius: 0; // needed when including %linked_middle:dir(rtl) border-right-style: none; - border-left-style: solid + border-left-style: solid; } } @@ -78,11 +78,11 @@ @extend %linked_button; - box-shadow: inset -1px 0 border_normal(rgba(0,0,0,.12 + $border_strength)), + box-shadow: inset -1px 0 border_normal(rgba(0, 0, 0, .12 + $border_strength)), 0 1px 2px -1px alpha($dark_shadow, .12 + $shadow_strength); &:focus, &:hover { - box-shadow: inset -1px 0 border_focus(rgba(0,0,0,.12 + $border_strength)), + box-shadow: inset -1px 0 border_focus(rgba(0, 0, 0, .12 + $border_strength)), 0 1px 2px -1px alpha($dark_shadow, .32 + $shadow_strength); } @@ -90,7 +90,7 @@ &:active:focus, &:active:hover:focus, &:checked, &:checked:hover, &:checked:focus, &:checked:hover:focus { - box-shadow: inset -1px 0 border_active(rgba(0,0,0,.12 + $border_strength)), + box-shadow: inset -1px 0 border_active(rgba(0, 0, 0, .12 + $border_strength)), inset 0 1px alpha($dark_shadow, .07), inset 0 -1px alpha($dark_shadow, .05); } @@ -127,7 +127,7 @@ @extend %button; @include linear-gradient($button_bg); - @include border(rgba(0,0,0,.12 + $border_strength)); + @include border(rgba(0, 0, 0, .12 + $border_strength)); color: $fg; box-shadow: 0 1px 2px -1px alpha($dark_shadow, .12 + $shadow_strength); @@ -142,7 +142,7 @@ &, &.flat { &:focus, &:hover { @include linear-gradient(shade($button_bg, 1.2)); - @include border(rgba(0,0,0,.2 + $border_strength)); + @include border(rgba(0, 0, 0, .2 + $border_strength)); box-shadow: 0 1px 2px -1px alpha($dark_shadow, .32 + $shadow_strength); } @@ -150,7 +150,7 @@ &:active, &:checked { @include linear-gradient(shade($button_bg, .7), to top); - color: white; + color: $white; box-shadow: inset 1px 0 alpha($dark_shadow, .06), inset 0 1px alpha($dark_shadow, .07), inset -1px 0 alpha($dark_shadow, .06), @@ -159,7 +159,7 @@ &:focus, &:hover { @include linear-gradient(shade($button_bg, .65), to top); - color: white; + color: $white; } } @@ -212,15 +212,15 @@ box-shadow: none; &:focus, &:hover { - border: 1px solid alpha(black, .3); - background-color: alpha(white, .2); + border: 1px solid alpha($black, .3); + background-color: alpha($white, .2); background-image: none; box-shadow: none; } - &:active, &:checked, &:active:hover, &:checked:hover { - border: 1px solid alpha(black, .3); - background-color: alpha(black, .1); + &:active, &:checked, &:active:hover, &:checked:hover { + border: 1px solid alpha($black, .3); + background-color: alpha($black, .1); background-image: none; box-shadow: none; } @@ -236,7 +236,7 @@ .spinbutton & { color: mix($text_color, $base_color, .4); padding: $spacing ($spacing * 2); - border: none; + border: 0; border-radius: 0; border-style: none; background-color: transparent; diff --git a/gtk-3.0/scss/widgets/_calendar.scss b/gtk-3.0/scss/widgets/_calendar.scss index d9705f4..409eb5b 100644 --- a/gtk-3.0/scss/widgets/_calendar.scss +++ b/gtk-3.0/scss/widgets/_calendar.scss @@ -7,11 +7,11 @@ padding: $spacing; outline-offset: -1px; - &:inconsistent { color: mix($fg_color, $bg_color, 0.5); } + &:inconsistent { color: mix($fg_color, $bg_color, .5); } &.view, &.highlight, &.header, &.button { &, &:focus, &:hover, &:insensitive { - border: none; + border: 0; background-color: transparent; background-image: none; } diff --git a/gtk-3.0/scss/widgets/_choosers.scss b/gtk-3.0/scss/widgets/_choosers.scss index 53f1de2..b650c47 100644 --- a/gtk-3.0/scss/widgets/_choosers.scss +++ b/gtk-3.0/scss/widgets/_choosers.scss @@ -5,12 +5,12 @@ @include exports("colorchooser") { GtkColorSwatch { &, &:selected { - border: 1px solid alpha(black, 0.1); + border: 1px solid alpha($black, .1); border-radius: $roundness - 1px; background-color: transparent; background-clip: border-box; - &:hover { border-color: alpha(black, 0.3); } + &:hover { border-color: alpha($black, .3); } } &.color-light:selected:hover, &.color-dark:selected:hover { background-image: none; } @@ -42,20 +42,20 @@ &.color-dark:hover, &.color-light:hover { background-image: none; - border-color: alpha(black, 0.3); + border-color: alpha($black, .3); } } } GtkColorChooserWidget #add-color-button { background-clip: padding-box; - border-color: alpha(black, 0.1); - background-color: shade($bg_color, 0.95); + border-color: alpha($black, .1); + background-color: shade($bg_color, .95); color: $fg_color; &:hover { - border-color: alpha(black, 0.3); - background-color: shade($bg_color, 0.90); + border-color: alpha($black, .3); + background-color: shade($bg_color, .9); color: $fg_color; } } @@ -69,15 +69,15 @@ &.color-light { &, &:hover { - border-color: alpha(black, 0.3); - color: alpha(black, 0.3); + border-color: alpha($black, .3); + color: alpha($black, .3); } } &.color-dark { &, &:hover { - border-color: alpha(white, 0.3); - color: alpha(white, 0.3); + border-color: alpha($white, .3); + color: alpha($white, .3); } } } @@ -99,9 +99,9 @@ -GtkWidget-vertical-separator: 0; } - GtkLabel:last-child { color: alpha(currentColor, 0.7); } + GtkLabel:last-child { color: alpha(currentColor, .7); } - GtkImage:last-child { color: alpha(currentColor, 0.7); } + GtkImage:last-child { color: alpha(currentColor, .7); } } GtkFileChooser { @@ -119,7 +119,7 @@ .dialog-action-box { border-width: 1px 0 0; border-style: solid; - border-color: shade($bg_color, 0.7); + border-color: shade($bg_color, .7); } } } diff --git a/gtk-3.0/scss/widgets/_grid.scss b/gtk-3.0/scss/widgets/_grid.scss index 13016da..e4b9e8f 100644 --- a/gtk-3.0/scss/widgets/_grid.scss +++ b/gtk-3.0/scss/widgets/_grid.scss @@ -4,12 +4,12 @@ @include exports("grid") { .list { - background-color: shade($bg_color, 0.97); + background-color: shade($bg_color, .97); color: $fg_color; &-row { &, &.button { - border: none; + border: 0; border-radius: 0; padding: $spacing; background-image: none; diff --git a/gtk-3.0/scss/widgets/_infobar.scss b/gtk-3.0/scss/widgets/_infobar.scss index 1579c01..9b5a679 100644 --- a/gtk-3.0/scss/widgets/_infobar.scss +++ b/gtk-3.0/scss/widgets/_infobar.scss @@ -7,7 +7,7 @@ @include exports("infobar") { GtkInfoBar { - border: none; + border: 0; $types: ( info: ( $info_fg_color, $info_bg_color ), @@ -24,7 +24,7 @@ &.#{$type} { @include linear-gradient($bg_color); - border: 1px solid shade($bg_color, 0.8); + border: 1px solid shade($bg_color, .8); color: $fg_color; .button { diff --git a/gtk-3.0/scss/widgets/_menu.scss b/gtk-3.0/scss/widgets/_menu.scss index 8b08c5c..1973351 100755 --- a/gtk-3.0/scss/widgets/_menu.scss +++ b/gtk-3.0/scss/widgets/_menu.scss @@ -9,7 +9,7 @@ .menubar { -GtkWidget-window-dragging: true; - border: none; + border: 0; background-color: $menubar_bg_color; background-image: none; color: $menubar_fg_color; @@ -23,13 +23,13 @@ color: $menubar_fg_color; &:hover { - border-color: mix($menubar_bg_color, $menubar_fg_color, 0.21); - background-color: mix($menubar_bg_color, $menubar_fg_color, 0.21); + border-color: mix($menubar_bg_color, $menubar_fg_color, .21); + background-color: mix($menubar_bg_color, $menubar_fg_color, .21); background-image: none; color: shade($menubar_fg_color, 1.08); } - & *:hover { color: shade($menubar_fg_color, 1.08); } + *:hover { color: shade($menubar_fg_color, 1.08); } } } } @@ -55,7 +55,7 @@ #toolbar-popup, .menu { padding: 0; border-radius: 0; - border: none; + border: 0; background-color: $menu_bg_color; color: $menu_fg_color; @@ -81,23 +81,23 @@ &, .menu & { margin: $spacing; padding: $spacing; - border: none; + border: 0; border-radius: 0; background-color: transparent; background-image: none; - -GtkMenuItem-arrow-scaling: 0.5; + -GtkMenuItem-arrow-scaling: .5; &:active, &:hover { - border: none; + border: 0; background-color: $selected_bg_color; background-image: none; color: $selected_fg_color; } - & *:active, & *:hover { color: $selected_fg_color; } + *:active, *:hover { color: $selected_fg_color; } - &:insensitive, & *:insensitive { color: mix($menu_fg_color, $menu_bg_color, .5); } + &:insensitive, *:insensitive { color: mix($menu_fg_color, $menu_bg_color, .5); } } &.check, &.radio { @@ -175,7 +175,7 @@ background-color: $menu_bg_color; background-image: none; color: $menu_fg_color; - box-shadow: 0 3px 6px alpha(black, .16); + box-shadow: 0 3px 6px alpha($black, .16); &.background { background-image: none; @@ -186,7 +186,7 @@ &:backdrop { box-shadow: none; } &.osd { - box-shadow: 0 2px 7px 3px alpha(black, .5); + box-shadow: 0 2px 7px 3px alpha($black, .5); > .toolbar .button { border-radius: 0; diff --git a/gtk-3.0/scss/widgets/_misc.scss b/gtk-3.0/scss/widgets/_misc.scss index 3436192..b5a6cc9 100644 --- a/gtk-3.0/scss/widgets/_misc.scss +++ b/gtk-3.0/scss/widgets/_misc.scss @@ -4,7 +4,7 @@ @include exports("dimlabel") { .dim-label { - opacity: 0.5; + opacity: .5; text-shadow: none; } } @@ -19,7 +19,7 @@ &.background { @include linear-gradient($tooltip_bg_color); - border: none; + border: 0; border-radius: $roundness; color: $tooltip_fg_color; } @@ -57,7 +57,7 @@ &, &.frame { border-style: solid; border-color: border_normal($osd_bg); - border-width: 0 1px 1px 1px; + border-width: 0 1px 1px; border-radius: 0 0 $roundness $roundness; padding: $spacing * 2; background-color: $osd_bg; @@ -81,17 +81,17 @@ } .expander { - color: alpha(currentColor, 0.7); - border: alpha(currentColor, 0.7); + color: alpha(currentColor, .7); + border: alpha(currentColor, .7); &:hover { - color: alpha(currentColor, 0.8); - border-color: alpha(currentColor, 0.8); + color: alpha(currentColor, .8); + border-color: alpha(currentColor, .8); } &:active { - color: alpha(currentColor, 0.9); - border-color: alpha(currentColor, 0.9); + color: alpha(currentColor, .9); + border-color: alpha(currentColor, .9); } } } @@ -103,9 +103,9 @@ @include exports("symbolicimage") { .image { - color: alpha(currentColor, 0.5); + color: alpha(currentColor, .5); - &:hover { color: alpha(currentColor, 0.9); } + &:hover { color: alpha(currentColor, .9); } &:selected, &:selected:hover { color: $selected_fg_color; } } @@ -152,7 +152,7 @@ -GtkButton-image-spacing: 0; -GtkButton-inner-border: 0; - border: none; + border: 0; background-color: transparent; background-image: none; } diff --git a/gtk-3.0/scss/widgets/_notebook.scss b/gtk-3.0/scss/widgets/_notebook.scss index b0ecfbb..9447d30 100644 --- a/gtk-3.0/scss/widgets/_notebook.scss +++ b/gtk-3.0/scss/widgets/_notebook.scss @@ -8,7 +8,7 @@ @include exports("notebook") { .notebook { padding: 0; - border-width: 1px 0 0 0; + border-width: 1px 0 0; border-style: solid; border-color: border_normal($base_color); border-radius: 0; @@ -32,11 +32,11 @@ &.frame { border-color: border_normal($base_color); - &.top { border-width: 1px 1px 0 1px; } + &.top { border-width: 1px 1px 0; } &.right { border-width: 1px 1px 1px 0; } - &.bottom { border-width: 0 1px 1px 1px; } + &.bottom { border-width: 0 1px 1px; } &.left { border-width: 1px 0 1px 1px; } } @@ -90,14 +90,14 @@ border-bottom-right-radius: 0; } - GtkLabel { color: mix($text_color, $base_color, 0.3); } + GtkLabel { color: mix($text_color, $base_color, .3); } /* close button styling */ .button { @extend %close_button; } } .prelight-page { - &, GtkLabel { color: mix($text_color, $base_color, 0.15); } + &, GtkLabel { color: mix($text_color, $base_color, .15); } } .active-page { @@ -106,20 +106,20 @@ .reorderable-page { &:hover { - background-color: shade($base_color, 0.85); + background-color: shade($base_color, .85); border-left: 0; border-right: 0; /* using box shadows instead of borders due to slanted edges */ - box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), - inset 1px 0 shade($base_color, 0.7), inset -1px 0 shade($base_color, 0.7); + box-shadow: inset 0 3px alpha($black, .03), inset 0 2px alpha($black, .03), inset 0 1px alpha($black, .03), + inset 1px 0 shade($base_color, .7), inset -1px 0 shade($base_color, .7); } &:active { - background-color: shade($base_color, 0.90); + background-color: shade($base_color, .9); border-left: 0; border-right: 0; - box-shadow: inset 0 3px alpha(black, 0.03), inset 0 2px alpha(black, 0.03), inset 0 1px alpha(black, 0.03), - inset 1px 0 shade($base_color, 0.75), inset -1px 0 shade($base_color, 0.75); + box-shadow: inset 0 3px alpha($black, .03), inset 0 2px alpha($black, .03), inset 0 1px alpha($black, .03), + inset 1px 0 shade($base_color, .75), inset -1px 0 shade($base_color, .75); } } } diff --git a/gtk-3.0/scss/widgets/_osd.scss b/gtk-3.0/scss/widgets/_osd.scss index 87be1e5..dbf1d16 100644 --- a/gtk-3.0/scss/widgets/_osd.scss +++ b/gtk-3.0/scss/widgets/_osd.scss @@ -10,7 +10,7 @@ .osd { &.background { - background-color: alpha($osd_bg, 0.8); + background-color: alpha($osd_bg, .8); color: $osd_fg; } @@ -36,7 +36,7 @@ } /* used by gnome-settings-daemon's media-keys OSD */ - &.trough { background-color: shade($osd_bg, 0.8); } + &.trough { background-color: shade($osd_bg, .8); } &.progressbar { background-color: $osd_fg; } @@ -45,11 +45,11 @@ @include linear-gradient(shade($osd_bg, 1.08)); @include border($osd_bg); - &:insensitive { @include linear-gradient(shade($osd_bg, 0.9)); } + &:insensitive { @include linear-gradient(shade($osd_bg, .9)); } } &.trough { - border-color: shade($osd_bg, 0.8); + border-color: shade($osd_bg, .8); background-color: shade($osd_bg, 1.08); background-image: none; @@ -60,8 +60,8 @@ } &:insensitive, &.highlight:insensitive { - border-color: shade($osd_bg, 0.85); - background-color: shade($osd_bg, 0.9); + border-color: shade($osd_bg, .85); + background-color: shade($osd_bg, .9); background-image: none; } } @@ -73,17 +73,17 @@ .trough { background-color: $osd_bg; } .slider { - border: 1px solid mix(shade($osd_bg, 0.87), $osd_fg, 0.21); + border: 1px solid mix(shade($osd_bg, .87), $osd_fg, .21); border-radius: 0; - background-color: mix($osd_bg, $osd_fg, 0.21); + background-color: mix($osd_bg, $osd_fg, .21); &:hover { - border-color: mix(shade($osd_bg, 0.87), $osd_fg, 0.31); - background-color: mix($osd_bg, $osd_fg, 0.31); + border-color: mix(shade($osd_bg, .87), $osd_fg, .31); + background-color: mix($osd_bg, $osd_fg, .31); } &:active { - border-color: shade($selected_bg_color, 0.9); + border-color: shade($selected_bg_color, .9); background-color: $selected_bg_color; } } @@ -92,7 +92,7 @@ GtkIconView.cell { &:selected, &:selected:focus { background-color: transparent; - border: 3px solid mix(shade($osd_bg, 0.87), $osd_fg, 0.21); + border: 3px solid mix(shade($osd_bg, .87), $osd_fg, .21); border-radius: $roundness; outline-color: transparent; } @@ -100,7 +100,7 @@ /* used by Documents */ .page-thumbnail { - border: 1px solid shade($osd_bg, 0.9); + border: 1px solid shade($osd_bg, .9); /* when there's no pixbuf yet */ background-color: $osd_bg; } diff --git a/gtk-3.0/scss/widgets/_overshoot.scss b/gtk-3.0/scss/widgets/_overshoot.scss index fa5fe1b..bc3d1fd 100644 --- a/gtk-3.0/scss/widgets/_overshoot.scss +++ b/gtk-3.0/scss/widgets/_overshoot.scss @@ -9,15 +9,11 @@ @if $position == bottom { $_position: center bottom; $_linear_gradient_direction: to top; - } - - @else if $position == right { + } @else if $position == right { $_position: right center; $_small_gradient_size: $_small_gradient_length 100%; $_big_gradient_size: $_big_gradient_length 100%; - } - - @else if $position == left { + } @else if $position == left { $_position: left center; $_small_gradient_size: $_small_gradient_length 100%; $_big_gradient_size: $_big_gradient_length 100%; @@ -28,13 +24,13 @@ $_small_gradient: -gtk-gradient(radial, $_position, 0, - $_position, 0.5, + $_position, .5, to(alpha($_small_gradient_color, .35)), to(alpha($_small_gradient_color, .25))); $_big_gradient: -gtk-gradient(radial, $_position, 0, - $_position, 0.6, + $_position, .6, from(alpha($_big_gradient_color, .2)), to(alpha($_big_gradient_color, 0))); @@ -50,13 +46,13 @@ background-position: $_position; background-color: transparent; // reset some properties to be sure to not inherit them somehow - border: none; + border: 0; box-shadow: none; } @mixin undershoot($position) { - $_undershoot_color_dark: alpha(black, .2); - $_undershoot_color_light: alpha(white, .2); + $_undershoot_color_dark: alpha($black, .2); + $_undershoot_color_light: alpha($white, .2); $_gradient_dir: left; $_dash_bg_size: 10px 1px; diff --git a/gtk-3.0/scss/widgets/_progress.scss b/gtk-3.0/scss/widgets/_progress.scss index 25064a9..28df150 100644 --- a/gtk-3.0/scss/widgets/_progress.scss +++ b/gtk-3.0/scss/widgets/_progress.scss @@ -7,7 +7,7 @@ padding: 0; border-radius: $roundness; font-size: smaller; - color: alpha($fg_color, 0.6); + color: alpha($fg_color, .6); -GtkProgressBar-min-horizontal-bar-height: 6; -GtkProgressBar-min-vertical-bar-width: 6; @@ -19,7 +19,7 @@ } &.trough { - border: 1px solid alpha(border_normal($bg_color), 0.5); + border: 1px solid alpha(border_normal($bg_color), .5); background-color: shade($bg_color, 1.08); background-image: none; } @@ -72,7 +72,7 @@ &.trough { @include linear-gradient(shade($bg_color, 1.08), to top); - border: 1px solid alpha(border_normal($bg_color), 0.5); + border: 1px solid alpha(border_normal($bg_color), .5); border-radius: $roundness; } @@ -86,6 +86,7 @@ &.indicator-discrete { &.horizontal { margin-right: 1px; } + &.vertical { margin-bottom: 1px; } } @@ -127,7 +128,7 @@ border-style: solid; box-shadow: 0 1px 2px -1px alpha($dark_shadow, .3); - &:insensitive { @include linear-gradient(shade($bg_color, 0.9)); } + &:insensitive { @include linear-gradient(shade($bg_color, .9)); } } &.fine-tune { @@ -140,17 +141,17 @@ } } - &.mark { border-color: alpha(border_normal($bg_color), 0.5); } + &.mark { border-color: alpha(border_normal($bg_color), .5); } &.trough { @include linear-gradient(shade($bg_color, 1.08)); margin: 7px 0; - border: 1px solid alpha(border_normal($bg_color), 0.5); + border: 1px solid alpha(border_normal($bg_color), .5); border-radius: $roundness; - &:insensitive { @include linear-gradient(shade($bg_color, 0.9)); } + &:insensitive { @include linear-gradient(shade($bg_color, .9)); } &.vertical { margin: 0 7px; } } @@ -162,9 +163,9 @@ border-color: $selected_bg_color; &:insensitive { - @include linear-gradient(shade($bg_color, 0.8)); + @include linear-gradient(shade($bg_color, .8)); - border-color: shade($bg_color, 0.7); + border-color: shade($bg_color, .7); } } } diff --git a/gtk-3.0/scss/widgets/_scrollbar.scss b/gtk-3.0/scss/widgets/_scrollbar.scss index bfc210e..56156d4 100644 --- a/gtk-3.0/scss/widgets/_scrollbar.scss +++ b/gtk-3.0/scss/widgets/_scrollbar.scss @@ -25,16 +25,16 @@ border-radius: 0; background-color: transparent; background-image: none; - color: alpha($fg_color, 0.5); + color: alpha($fg_color, .5); } } &.slider, &.slider.vertical { border: 0; border-radius: $roundness; - background-color: shade($bg_color, 0.5); + background-color: shade($bg_color, .5); - &:hover { background-color: shade($bg_color, 0.3); } + &:hover { background-color: shade($bg_color, .3); } &:active { background-color: $selected_bg_color; } @@ -44,7 +44,7 @@ // overlay scrolling indicator &.overlay-indicator { &:not(.dragging):not(.hovering) { - opacity: 0.5; + opacity: .5; -GtkRange-slider-width: 4px; @@ -60,7 +60,7 @@ } } - &.dragging, &.hovering { opacity: 0.7; } + &.dragging, &.hovering { opacity: .7; } } } @@ -75,12 +75,12 @@ // ubuntu overlay scrollbars OsThumb, OsScrollbar { - color: shade($bg_color, 0.7); + color: shade($bg_color, .7); &:selected { background-color: $selected_bg_color; } &:active { background-color: $selected_bg_color; } - &:insensitive { background-color: shade($bg_color, 0.9); } + &:insensitive { background-color: shade($bg_color, .9); } } } diff --git a/gtk-3.0/scss/widgets/_sidebar.scss b/gtk-3.0/scss/widgets/_sidebar.scss index 7d5d9f1..16583d7 100755 --- a/gtk-3.0/scss/widgets/_sidebar.scss +++ b/gtk-3.0/scss/widgets/_sidebar.scss @@ -4,16 +4,16 @@ @include exports("sidebar") { .sidebar { - &, &.view, & .view, & GtkScrolledWindow { + &, &.view, .view, GtkScrolledWindow { background-color: $bg_color; - color: mix($fg_color, $bg_color, 0.1); + color: mix($fg_color, $bg_color, .1); &.separator { &, &:hover, &:focus { border-width: 1px; border-style: solid; - border-color: shade($bg_color, 0.9); - color: shade($bg_color, 0.9); + border-color: shade($bg_color, .9); + color: shade($bg_color, .9); } } } @@ -21,14 +21,14 @@ row, .view row { &:selected { &, &:hover, &:focus { - border: none; + border: 0; background-image: none; background-color: $selected_bg_color; color: $selected_fg_color; } &:prelight { - border: none; + border: 0; background-image: none; background-color: shade($selected_bg_color, 1.05); color: $selected_fg_color; @@ -36,7 +36,7 @@ } &:prelight { - border: none; + border: 0; background-image: none; background-color: shade($bg_color, 1.05); } @@ -51,15 +51,16 @@ border-right-color: border_normal($bg_color); border-radius: 0; background-color: $bg_color; - color: mix($fg_color, $bg_color, 0.1); + color: mix($fg_color, $bg_color, .1); &:dir(ltr) { border-width: 0 1px 0 0; } + &:dir(rtl) { border-width: 0 0 0 1px; } .label { padding: $spacing ($spacing * 2); - &.highlight { background-color: mix($bg_color, $fg_color, 0.80); } + &.highlight { background-color: mix($bg_color, $fg_color, .8); } } &.csd .sidebar { border-top-style: none; } @@ -88,7 +89,7 @@ margin-left: $spacing; } - GtkPaned .pane-separator { background-color: shade($bg_color, 0.9); } + GtkPaned .pane-separator { background-color: shade($bg_color, .9); } GtkPaned.wide { -GtkPaned-handle-size: 4; @@ -99,7 +100,7 @@ GtkPaned.wide .pane-separator { background-color: transparent; border-style: none solid; - border-color: shade($bg_color, 0.9); + border-color: shade($bg_color, .9); border-width: 1px; } diff --git a/gtk-3.0/scss/widgets/_spinner.scss b/gtk-3.0/scss/widgets/_spinner.scss index 395c21c..9c753f7 100644 --- a/gtk-3.0/scss/widgets/_spinner.scss +++ b/gtk-3.0/scss/widgets/_spinner.scss @@ -18,7 +18,7 @@ opacity: 1; animation: spin 1s linear infinite; - &:insensitive { opacity: 0.5; } + &:insensitive { opacity: .5; } } } } diff --git a/gtk-3.0/scss/widgets/_toggle.scss b/gtk-3.0/scss/widgets/_toggle.scss index a13a427..52bdee3 100755 --- a/gtk-3.0/scss/widgets/_toggle.scss +++ b/gtk-3.0/scss/widgets/_toggle.scss @@ -78,12 +78,12 @@ $suffix: if($variant == "dark", "-dark", ""); &.slider { @include linear-gradient(shade($bg_color, 1.2)); - border: 1px solid rgba(0,0,0,0.2); + border: 1px solid rgba(0, 0, 0, .2); box-shadow: 0 1px 2px -1px alpha($dark_shadow, .12); &:insensitive { - border-color: rgba(0,0,0,0.1); - background-color: shade($bg_color, 0.9); + border-color: rgba(0, 0, 0, .1); + background-color: shade($bg_color, .9); box-shadow: none; } } @@ -101,7 +101,7 @@ $suffix: if($variant == "dark", "-dark", ""); &:active { @include linear-gradient($selected_bg_color, to top); - border-color: shade($selected_bg_color, 0.9); + border-color: shade($selected_bg_color, .9); color: $selected_fg_color; } @@ -109,7 +109,7 @@ $suffix: if($variant == "dark", "-dark", ""); @include linear-gradient(shade($bg_color, .9), to top); border-color: border_insensitive($bg_color); - color: mix($fg_color, $bg_color, 0.5); + color: mix($fg_color, $bg_color, .5); } } } diff --git a/gtk-3.0/scss/widgets/_toolbar.scss b/gtk-3.0/scss/widgets/_toolbar.scss index e391f3d..019e79b 100755 --- a/gtk-3.0/scss/widgets/_toolbar.scss +++ b/gtk-3.0/scss/widgets/_toolbar.scss @@ -35,7 +35,7 @@ GtkComboBox, .button { padding: $spacing - 1px; - &.text-button { padding: $spacing; } + &.text-button { padding: $spacing; } &.image-button { padding: ($spacing + 1px) ($spacing - 1px) ($spacing + 1px) $spacing; } } @@ -65,7 +65,7 @@ .header-bar { @include toolbar($titlebar_bg_color, $titlebar_fg_color); - border-width: 0 0 1px 0; + border-width: 0 0 1px; border-style: solid; } @@ -83,7 +83,7 @@ } &.default-decoration { - border: none; + border: 0; box-shadow: none; } @@ -93,7 +93,7 @@ .titlebutton { padding: $spacing; - border: none; + border: 0; background-image: none; background-color: transparent; color: mix($titlebar_fg_color, $titlebar_bg_color, .1); diff --git a/gtk-3.0/scss/widgets/_view.scss b/gtk-3.0/scss/widgets/_view.scss index e077972..d868914 100644 --- a/gtk-3.0/scss/widgets/_view.scss +++ b/gtk-3.0/scss/widgets/_view.scss @@ -10,8 +10,8 @@ background-color: $base_color; &:insensitive, &:insensitive:insensitive { - background-color: shade($base_color, 0.9); - color: mix($text_color, $base_color, 0.5); + background-color: shade($base_color, .9); + color: mix($text_color, $base_color, .5); } &:selected, &:selected:focus { @extend %selected; } @@ -33,7 +33,7 @@ -GtkWidget-focus-padding: 1; -GtkWidget-focus-line-width: 0; - border: none; + border: 0; background-color: $selected_bg_color; background-image: none; color: $selected_fg_color; @@ -45,11 +45,11 @@ &.view { background-color: $base_color; - &:prelight { background-color: alpha($selected_bg_color, 0.6); } + &:prelight { background-color: alpha($selected_bg_color, .6); } &:selected, &:active { background-color: $selected_bg_color; } - &:insensitive { background-color: shade($base_color, 0.9); } + &:insensitive { background-color: shade($base_color, .9); } &.check { &, &:active, &:prelight, &:insensitive, &:selected { background-color: transparent; } @@ -67,7 +67,7 @@ &.view.cell { &:selected, &:selected:focus { - border: none; + border: 0; border-radius: 2px; background-image: none; background-color: $selected_bg_color; @@ -77,32 +77,32 @@ } .dim-label { - &, &.view { color: alpha(currentColor, 0.5); } + &, &.view { color: alpha(currentColor, .5); } } .dnd { border: 1px solid $selected_bg_color; } .grip { background-color: transparent; } - .arrow { color: alpha(currentColor, 0.7); } + .arrow { color: alpha(currentColor, .7); } .rubberband { &, &.view, &.content-view.view { border: 1px solid $selected_bg_color; border-radius: 0; - background-color: alpha($selected_bg_color, 0.3); + background-color: alpha($selected_bg_color, .3); } } GdMainIconView.content-view { -GdMainIconView-icon-size: 40; } /* this will get overridden by .view, needed by gedit line numbers */ - GtkTextView { background-color: mix($bg_color, $base_color, 0.50); } + GtkTextView { background-color: mix($bg_color, $base_color, .5); } GtkHTML { @extend .view; - &:insensitive { background-color: shade($base_color, 0.9); } + &:insensitive { background-color: shade($base_color, .9); } } GtkDrawingArea { background-color: transparent; } @@ -155,20 +155,20 @@ } &, &:active, &:focus, &:active:focus { - border-color: shade($base_color, 0.9); - border-bottom-color: shade($base_color, 0.8); - background-color: shade($base_color, 0.97); + border-color: shade($base_color, .9); + border-bottom-color: shade($base_color, .8); + background-color: shade($base_color, .97); background-image: none; } &:hover, &:active:hover, &:hover:focus, &:active:hover:focus { - border-color: shade($base_color, 0.9); - border-bottom-color: shade($base_color, 0.8); - background-color: shade($base_color, 0.99); + border-color: shade($base_color, .9); + border-bottom-color: shade($base_color, .8); + background-color: shade($base_color, .99); background-image: none; } - &:last-child .button { border-width: 0 0 1px 0; } + &:last-child .button { border-width: 0 0 1px; } } } } @@ -182,10 +182,10 @@ .frame { border: 1px solid border_normal($bg_color); - &.flat { border: none; } + &.flat { border: 0; } } /* avoid double borders when a viewport is packed into a GtkScrolledWindow */ - GtkScrolledWindow GtkViewport.frame { border: none; } + GtkScrolledWindow GtkViewport.frame { border: 0; } } diff --git a/gtk-3.0/scss/widgets/_window.scss b/gtk-3.0/scss/widgets/_window.scss index 4ffb165..f609010 100755 --- a/gtk-3.0/scss/widgets/_window.scss +++ b/gtk-3.0/scss/widgets/_window.scss @@ -4,11 +4,11 @@ @include exports("window") { %window { - box-shadow: 0 19px 38px rgba(0,0,0,0.30), 0 15px 12px rgba(0,0,0,0.22), + box-shadow: 0 19px 38px rgba(0, 0, 0, .3), 0 15px 12px rgba(0, 0, 0, .22), 0 0 0 1px $wm_border_focused; &:backdrop { - box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23), + box-shadow: 0 10px 20px rgba(0, 0, 0, .19), 0 6px 6px rgba(0, 0, 0, .23), 0 0 0 1px $wm_border_unfocused; } } @@ -16,7 +16,7 @@ .window-frame { @extend %window; - border: none; + border: 0; border-radius: $roundness $roundness 0 0; /* this is used for the resize cursor area */ From 5b925be14ed411faddb88f8e78be4ae460b59735 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Fri, 7 Aug 2015 04:59:32 +0530 Subject: [PATCH 70/73] Update scss lint config --- .scss-lint.yml | 22 +++++++++++++++++++--- gtk-3.0/scss/_global.scss | 2 ++ gtk-3.0/scss/widgets/_infobar.scss | 8 ++++---- 3 files changed, 25 insertions(+), 7 deletions(-) diff --git a/.scss-lint.yml b/.scss-lint.yml index e9477d5..a981c3b 100644 --- a/.scss-lint.yml +++ b/.scss-lint.yml @@ -12,7 +12,7 @@ linters: enabled: true ColorVariable: - enabled: false + enabled: true Comment: enabled: false @@ -23,6 +23,9 @@ linters: DeclarationOrder: enabled: true + DisableLinterReason: + enabled: true + DuplicateProperty: enabled: true @@ -37,6 +40,9 @@ linters: EmptyRule: enabled: true + ExtendDirective: + enabled: false + FinalNewline: enabled: true present: true @@ -94,7 +100,11 @@ linters: PropertySpelling: enabled: true - extra_properties: ["icon-shadow","outline-radius"] + extra_properties: [ "icon-shadow", "outline-radius" ] + + PropertyUnits: + enabled: true + global: [ "px", "%", "s", "ms" ] QualifyingElement: enabled: false @@ -130,13 +140,19 @@ linters: SpaceAfterPropertyName: enabled: true + SpaceAfterVariableName: + enabled: true + + SpaceAroundOperator: + enabled: true + SpaceBeforeBrace: enabled: true style: space allow_single_line_padding: true SpaceBetweenParens: - enabled: false + enabled: true spaces: 0 StringQuotes: diff --git a/gtk-3.0/scss/_global.scss b/gtk-3.0/scss/_global.scss index e2b70ee..3dfab07 100755 --- a/gtk-3.0/scss/_global.scss +++ b/gtk-3.0/scss/_global.scss @@ -1,3 +1,5 @@ +// scss-lint:disable ColorVariable + @import "functions"; // default color scheme diff --git a/gtk-3.0/scss/widgets/_infobar.scss b/gtk-3.0/scss/widgets/_infobar.scss index 9b5a679..4351c9b 100644 --- a/gtk-3.0/scss/widgets/_infobar.scss +++ b/gtk-3.0/scss/widgets/_infobar.scss @@ -10,10 +10,10 @@ border: 0; $types: ( - info: ( $info_fg_color, $info_bg_color ), - warning: ( $warning_fg_color, $warning_bg_color ), - question: ( $question_fg_color, $question_bg_color ), - error: ( $error_fg_color, $error_bg_color ), + info: ($info_fg_color, $info_bg_color), + warning: ($warning_fg_color, $warning_bg_color), + question: ($question_fg_color, $question_bg_color), + error: ($error_fg_color, $error_bg_color), ); From 5b76a3bedd84eded5c21ea601ba77ae3899e673c Mon Sep 17 00:00:00 2001 From: Test User Date: Mon, 10 Aug 2015 12:49:19 +0200 Subject: [PATCH 71/73] Initial commit for unity-greeter --- gtk-3.0/scss/_widgets.scss | 2 +- gtk-3.0/scss/apps/_unity-greeter.scss | 96 +++++++++++++++++++++++++++ 2 files changed, 97 insertions(+), 1 deletion(-) create mode 100644 gtk-3.0/scss/apps/_unity-greeter.scss diff --git a/gtk-3.0/scss/_widgets.scss b/gtk-3.0/scss/_widgets.scss index 62de316..e8ac3b8 100755 --- a/gtk-3.0/scss/_widgets.scss +++ b/gtk-3.0/scss/_widgets.scss @@ -25,7 +25,7 @@ @import "widgets/view"; @import "widgets/window"; - +@import "apps/unity-greeter"; @import "apps/gedit"; @import "apps/nautilus"; @import "apps/nemo"; diff --git a/gtk-3.0/scss/apps/_unity-greeter.scss b/gtk-3.0/scss/apps/_unity-greeter.scss new file mode 100644 index 0000000..3a3798b --- /dev/null +++ b/gtk-3.0/scss/apps/_unity-greeter.scss @@ -0,0 +1,96 @@ +/*********************** + ! Unity Greeter * + ***********************/ + +@include exports("unity-greeter") { + .lightdm.menu { + background-image: none; + background-color: #00ff00; + border-color: #00ff00; + border-radius: 4px; + padding: 1px; + color: #00ff00; + } + + .lightdm-combo .menu { + background-color: #00ff00; + border-radius: 0px; + padding: 0px; + color: #00ff00; + } + + .lightdm.menu .menuitem *, + .lightdm.menu .menuitem.check:active, + .lightdm.menu .menuitem.radio:active { + color: #00ff00; + } + + .lightdm.menubar { + background-image: none; + background-color: #00ff00; + } + + .lightdm-combo.combobox-entry .button, + .lightdm-combo .cell, + .lightdm-combo .button, + .lightdm-combo .entry, + .lightdm.button, + .lightdm.entry { + background-image: none; + background-color: alpha (black, 0.3); + border-color: alpha (white, 0.6); + border-radius: 5px; + padding: 7px; + color: white; + text-shadow: none; + } + + .lightdm.button, + .lightdm.button:hover, + .lightdm.button:active, + .lightdm.button:active:focused, + .lightdm.entry, + .lightdm.entry:hover, + .lightdm.entry:active, + .lightdm.entry:active:focused { + background-image: none; + border-image: none; + } + + .lightdm.button:focused, + .lightdm.entry:focused { + border-color: alpha (white, 0.9); + border-width: 1px; + border-style: solid; + color: white; + } + + .lightdm.entry:selected { + background-color: alpha (white, 0.2); + } + + @keyframes dashentry_spinner { + to { -gtk-icon-transform: rotate(1turn); } + } + + .lightdm.entry:active { + -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); + animation: dashentry_spinner 1s infinite linear; + } + + .lightdm.option-button { + padding: 2px; + background: none; + border: 0; + } + + .lightdm.toggle-button { + background: none; + border-width: 0; + } + + .lightdm.toggle-button.selected { + background-color: alpha (black, 0.3); + border-width: 1px; + } +} From 19d3846d97adaeedef3de9e86ab6097cce324548 Mon Sep 17 00:00:00 2001 From: Test User Date: Mon, 10 Aug 2015 19:24:38 +0200 Subject: [PATCH 72/73] Adds updated _unity-greeter.scss --- gtk-3.0/scss/apps/_unity-greeter.scss | 108 ++++++++++++++++---------- 1 file changed, 65 insertions(+), 43 deletions(-) diff --git a/gtk-3.0/scss/apps/_unity-greeter.scss b/gtk-3.0/scss/apps/_unity-greeter.scss index 3a3798b..eb60d2a 100644 --- a/gtk-3.0/scss/apps/_unity-greeter.scss +++ b/gtk-3.0/scss/apps/_unity-greeter.scss @@ -3,70 +3,87 @@ ***********************/ @include exports("unity-greeter") { - .lightdm.menu { - background-image: none; - background-color: #00ff00; - border-color: #00ff00; - border-radius: 4px; - padding: 1px; - color: #00ff00; - } - .lightdm-combo .menu { - background-color: #00ff00; - border-radius: 0px; - padding: 0px; - color: #00ff00; - } - .lightdm.menu .menuitem *, - .lightdm.menu .menuitem.check:active, - .lightdm.menu .menuitem.radio:active { - color: #00ff00; - } +.lightdm.menu { + background-image: none; + background-color: alpha($black, 0.6); + border-color: alpha($white, 0.2); + border-radius: 4px; + padding: 1px; + + color: $white; +} + +.lightdm-combo .menu { + background-color: shade($dark_bg_color, 1.08); + border-radius: 0px; + padding: 0px; + + color: $white; +} + +.lightdm.menu .menuitem *, +.lightdm.menu .menuitem.check:active, +.lightdm.menu .menuitem.radio:active { + color: $white; +} + +.lightdm.menubar { + background-image: none; + background-color: alpha(#00ff00, 0.5); +} - .lightdm.menubar { - background-image: none; - background-color: #00ff00; - } .lightdm-combo.combobox-entry .button, .lightdm-combo .cell, .lightdm-combo .button, .lightdm-combo .entry, - .lightdm.button, - .lightdm.entry { + + .lightdm.button{ background-image: none; - background-color: alpha (black, 0.3); - border-color: alpha (white, 0.6); + background-color: alpha($black, 0.3); + border-color: alpha($white, 0.9); border-radius: 5px; - padding: 7px; - color: white; + padding: 5px; + color: $white; + } + .lightdm.button:hover { + background-image: none; + background-color: alpha($white, 0.3); + border-color: alpha($white, 0.6); + border-radius: 5px; + padding: 5px; + color: $white; text-shadow: none; - } - - .lightdm.button, - .lightdm.button:hover, + } .lightdm.button:active, .lightdm.button:active:focused, - .lightdm.entry, + .lightdm.button:focused, + + .lightdm.entry { + background-image: none; + background-color: alpha($black, 0.3); + border-color: alpha($white, 0.6); + border-radius: 5px; + padding: 7px; + color: $white; + text-shadow: none; + } .lightdm.entry:hover, .lightdm.entry:active, .lightdm.entry:active:focused { background-image: none; border-image: none; } - - .lightdm.button:focused, .lightdm.entry:focused { - border-color: alpha (white, 0.9); + border-color: alpha($white, 0.6); border-width: 1px; border-style: solid; - color: white; + color: $white; } - .lightdm.entry:selected { - background-color: alpha (white, 0.2); + background-color: alpha($white, 0.2); } @keyframes dashentry_spinner { @@ -79,7 +96,7 @@ } .lightdm.option-button { - padding: 2px; + padding: 5px; background: none; border: 0; } @@ -88,9 +105,14 @@ background: none; border-width: 0; } - + .lightdm.toggle-button.selected:hover { + background-color: alpha($white, 0.3); + border-color: alpha($white, 0.3); + border-width: 1px; + } .lightdm.toggle-button.selected { - background-color: alpha (black, 0.3); + background-color: alpha($black, 0.3); + border-color: alpha($white, 0.3); border-width: 1px; } } From 3467848945c344f43ec6ae0e9e4c3d748d83a2c6 Mon Sep 17 00:00:00 2001 From: Satyajit Sahoo Date: Tue, 11 Aug 2015 22:40:53 +0530 Subject: [PATCH 73/73] Create .hound.yml --- .hound.yml | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 .hound.yml diff --git a/.hound.yml b/.hound.yml new file mode 100644 index 0000000..35b1a94 --- /dev/null +++ b/.hound.yml @@ -0,0 +1,2 @@ +scss: + config_file: .scss-lint.yml