From fac1f9207134e4dde4ea93a1053c7a2972961496 Mon Sep 17 00:00:00 2001 From: vinceliuice Date: Tue, 30 May 2023 11:01:33 +0800 Subject: [PATCH] Fixed #116 --- README.md | 10 ++-- install.sh | 22 ++++++-- src/sass/_tweaks.scss | 3 + src/sass/gnome-shell/common/_panel.scss | 73 ++++++++++++++++++------- 4 files changed, 79 insertions(+), 29 deletions(-) diff --git a/README.md b/README.md index 4e23d9f0..e4944c42 100644 --- a/README.md +++ b/README.md @@ -46,10 +46,12 @@ Run the following commands in the terminal: -u, --uninstall Uninstall/Remove installed themes or links --tweaks Specify versions for tweaks - 1. [nord|dracula|gruvbox]: Nord|Dracula|gruvbox ColorSchemes version - 2. black: Blackness color version - 3. rimless: Remove the 1px border about windows and menus - 4. normal: Normal windows button style (titlebuttons: max/min/close) + 1. [nord|dracula|gruvbox] Nord|Dracula|gruvbox ColorSchemes version + 2. black Blackness color version + 3. rimless Remove the 1px border about windows and menus + 4. normal Normal windows button style like gnome default theme (titlebuttons: max/min/close) + 5. float Floating gnome-shell panel style + -h, --help Show help ``` diff --git a/install.sh b/install.sh index b29c319b..e291be59 100755 --- a/install.sh +++ b/install.sh @@ -65,10 +65,11 @@ OPTIONS: -u, --uninstall Uninstall/Remove installed themes or links --tweaks Specify versions for tweaks - 1. [nord|dracula|gruvbox]: Nord|Dracula|gruvbox ColorSchemes version - 2. black: Blackness color version - 3. rimless: Remove the 1px border about windows and menus - 4. normal: Normal windows button style (titlebuttons: max/min/close) + 1. [nord|dracula|gruvbox] Nord|Dracula|gruvbox ColorSchemes version + 2. black Blackness color version + 3. rimless Remove the 1px border about windows and menus + 4. normal Normal windows button style like gnome default theme (titlebuttons: max/min/close) + 5. float Floating gnome-shell panel style -h, --help Show help EOF @@ -350,6 +351,11 @@ while [[ $# -gt 0 ]]; do echo -e "Normal window button version! ..." shift ;; + float) + float="true" + echo -e "Install Floating Gnome-Shell Panel version! ..." + shift + ;; -*) break ;; @@ -447,6 +453,10 @@ normal_winbutton() { sed -i "/\$window_button:/s/mac/normal/" "${SRC_DIR}/sass/_tweaks-temp.scss" } +float_panel() { + sed -i "/\$float:/s/false/true/" "${SRC_DIR}/sass/_tweaks-temp.scss" +} + gnome_shell_version() { cp -rf "${SRC_DIR}/sass/gnome-shell/_common.scss" "${SRC_DIR}/sass/gnome-shell/_common-temp.scss" @@ -522,6 +532,10 @@ theme_tweaks() { if [[ "$normal" = "true" ]] ; then normal_winbutton fi + + if [[ "$float" = "true" ]] ; then + float_panel + fi } uninstall_link() { diff --git a/src/sass/_tweaks.scss b/src/sass/_tweaks.scss index 04523e7e..dcd7d369 100644 --- a/src/sass/_tweaks.scss +++ b/src/sass/_tweaks.scss @@ -27,3 +27,6 @@ $rimless: 'false'; // Windows button style : mac/normal $window_button: 'mac'; + +// Gnome-Shell float panel version +$float: 'false'; diff --git a/src/sass/gnome-shell/common/_panel.scss b/src/sass/gnome-shell/common/_panel.scss index 06840612..2b7e2765 100644 --- a/src/sass/gnome-shell/common/_panel.scss +++ b/src/sass/gnome-shell/common/_panel.scss @@ -2,9 +2,7 @@ // a.k.a. the panel #panel { - background-color: $panel; font-weight: bold; - height: $item_size; color: $panel-text-secondary; font-feature-settings: "tnum"; transition-duration: 250ms; @@ -12,6 +10,14 @@ border: none; @include fontsize($font_size - 1); + @if $float == 'true' { + background-color: transparent; + height: $item_size + $base_margin * 2; + } @else { + background-color: $panel; + height: $item_size + 2px; + } + // the rounded outset corners .panel-corner { -panel-corner-radius: 0; @@ -25,26 +31,40 @@ // panel menus .panel-button { -natural-hpadding: 12px; - -minimum-hpadding: 6px; + -minimum-hpadding: 12px; font-weight: bold; color: $panel-text-secondary; transition-duration: 150ms; border-radius: $circular_radius; text-shadow: none; - border: 2px solid transparent; + + @if $float == 'true' { + border: $base_margin solid transparent; + box-shadow: inset 0 0 0 1000px $panel; + } @else { + border: $base_padding / 2 solid transparent; + } &.clock-display { + box-shadow: none; + .clock { transition-duration: 150ms; - border: 2px solid transparent; border-radius: $circular_radius; + + @if $float == 'true' { + border: $base_margin solid transparent; + box-shadow: inset 0 0 0 1000px $panel; + } @else { + border: $base_padding / 2 solid transparent; + } } } &:hover { color: $panel-text; background-color: transparent; - box-shadow: inset 0 0 0 1000px overlay($panel, hover); + box-shadow: inset 0 0 0 1000px mix($panel-text, $panel, 15%); &.clock-display { box-shadow: none; @@ -52,7 +72,7 @@ .clock { color: $panel-text; - box-shadow: inset 0 0 0 1000px overlay($panel, hover); + box-shadow: inset 0 0 0 1000px mix($panel-text, $panel, 15%); } } } @@ -61,7 +81,7 @@ &, &:hover { background-color: transparent; color: $panel-text; - box-shadow: inset 0 0 0 1000px overlay($panel, active); + box-shadow: inset 0 0 0 1000px mix($panel-text, $panel, 25%); } &.clock-display { @@ -69,7 +89,7 @@ color: $panel-text-secondary; .clock { - box-shadow: inset 0 0 0 1000px overlay($panel, active); + box-shadow: inset 0 0 0 1000px mix($panel-text, $panel, 25%); color: $panel-text; } } @@ -87,15 +107,29 @@ .system-status-icon { icon-size: $base_icon_size; padding: $base_padding; - margin: 0 $base_margin; + margin: 0; -st-icon-style: symbolic; } - .panel-status-indicators-box .system-status-icon, - .panel-status-menu-box .system-status-icon { - margin: 0; + .appindicator-trayicons-box { + margin: 0 $base_padding; } + // .panel-status-indicators-box .system-status-icon, + // .panel-status-menu-box .system-status-icon { + // margin: 0; + // } + + // .panel-status-indicators-box, + // .panel-status-menu-box { + // spacing: $base_padding / 2; + // } + + // // spacing between power icon and (optional) percentage label + // .power-status.panel-status-indicators-box { + // spacing: 0; + // } + // app menu icon .app-menu-icon { -st-icon-style: symbolic; @@ -158,14 +192,11 @@ } } - .panel-status-indicators-box, - .panel-status-menu-box { - spacing: 2px; - } - - // spacing between power icon and (optional) percentage label - .power-status.panel-status-indicators-box { - spacing: 0; + // Input indicators + Gjs_status_keyboard_InputSourceIndicator.panel-button, // Ibus + Gjs_appindicatorsupport_rgcjonas_gmail_com_indicatorStatusIcon_AppIndicatorsIndicatorStatusIcon.panel-button { // Fcitx + -natural-hpadding: 12px + $base_padding !important; + -minimum-hpadding: 12px + $base_padding !important; } // indicator for active