From 1cd60b163e9e1e34627f5f473b90383bf3268d17 Mon Sep 17 00:00:00 2001 From: Tio TROM Date: Sun, 6 Aug 2023 15:11:51 +0200 Subject: [PATCH] gpt --- theme-switcher | 133 +++++++++++++++++++++++++++++++------------------ 1 file changed, 84 insertions(+), 49 deletions(-) diff --git a/theme-switcher b/theme-switcher index 90b64ed..c02a028 100644 --- a/theme-switcher +++ b/theme-switcher @@ -6,55 +6,90 @@ set_icon_theme() { xfconf-query -c xsettings -p /Net/IconThemeName -n -t string -s "$1" } -set_theme() { - if [ "${1##*-}" = 'Light' ]; then - yad --image "dialog-question" --title '' --buttons-layout=center --text-align=center --button='DARK':1 --button='LIGHT':0 --text "Select the panels theme\n\nNote: dark panels may result in light icons over a light theme" - case $? in - 1) - # Enable dark panels - xfconf-query -c xfce4-panel -p /panels/dark-mode -n -t bool -s true - # Use the dark icon theme - set_icon_theme zafiro-dark - ;; - 0) - # Disable dark panels - xfconf-query -c xfce4-panel -p /panels/dark-mode -n -t bool -s false - # Use the light icon theme - set_icon_theme zafiro - ;; - *) exit ;; - esac - else - # Use the dark icon theme - set_icon_theme zafiro-dark - fi - # Change the main theme to the chosen one - xfconf-query -c xsettings -p /Net/ThemeName -n -t string -s "Skeuos-$1" - xfconf-query -c xfwm4 -p /general/theme -n -t string -s "Skeuos-$1-XFWM" - gsettings set org.gnome.desktop.interface gtk-theme "Skeuos-$1" - notify-send "Skeuos-$1 theme was enabled" +enable_dark_panels() { + # Enable dark panels + xfconf-query -c xfce4-panel -p /panels/dark-mode -n -t bool -s true } -export -f set_icon_theme set_theme +disable_dark_panels() { + # Disable dark panels + xfconf-query -c xfce4-panel -p /panels/dark-mode -n -t bool -s false +} -yad --no-buttons --center --keep-icon-size --use-interp --title 'TROMjaro Theme Switcher' --text-align=center --text "A Theme Switcher for TROMjaro's default theme-set (Skeuos) and icon-set (Zafiro)." --form --columns 5 \ ---field=!"$icons/Blue-Dark.png"!'Blue-Dark':FBTN "set_theme 'Blue-Dark'" \ ---field=!"$icons/Violet-Dark.png"!'Violet-Dark':FBTN "set_theme 'Violet-Dark'" \ ---field=!"$icons/Blue-Light.png"!'Blue-Light':FBTN "set_theme 'Blue-Light'" \ ---field=!"$icons/Violet-Light.png"!'Violet-Light':FBTN "set_theme 'Violet-Light'" \ ---field=!"$icons/Teal-Dark.png"!'Teal-Dark':FBTN "set_theme 'Teal-Dark'" \ ---field=!"$icons/Orange-Dark.png"!'Orange-Dark':FBTN "set_theme 'Orange-Dark'" \ ---field=!"$icons/Teal-Light.png"!'Teal-Light':FBTN "set_theme 'Teal-Light'" \ ---field=!"$icons/Orange-Light.png"!'Orange-Light':FBTN "set_theme 'Orange-Light'" \ ---field=!"$icons/Green-Dark.png"!'Green-Dark (default)':FBTN "set_theme 'Green-Dark'" \ ---field=!"$icons/Brown-Dark.png"!'Brown-Dark':FBTN "set_theme 'Brown-Dark'" \ ---field=!"$icons/Green-Light.png"!'Green-Light':FBTN "set_theme 'Green-Light'" \ ---field=!"$icons/Brown-Light.png"!'Brown-Light':FBTN "set_theme 'Brown-Light'" \ ---field=!"$icons/Magenta-Dark.png"!'Magenta-Dark':FBTN "set_theme 'Magenta-Dark'" \ ---field=!"$icons/Yellow-Dark.png"!'Yellow-Dark':FBTN "set_theme 'Yellow-Dark'" \ ---field=!"$icons/Magenta-Light.png"!'Magenta-Light':FBTN "set_theme 'Magenta-Light'" \ ---field=!"$icons/Yellow-Light.png"!'Yellow-Light':FBTN "set_theme 'Yellow-Light'" \ ---field=!"$icons/Red-Dark.png"!'Red-Dark':FBTN "set_theme 'Red-Dark'" \ ---field=!"$icons/Grey-Dark.png"!'Grey-Dark':FBTN "set_theme 'Grey-Dark'" \ ---field=!"$icons/Red-Light.png"!'Red-Light':FBTN "set_theme 'Red-Light'" \ ---field=!"$icons/Grey-Light.png"!'Grey-Light':FBTN "set_theme 'Grey-Light'" +show_icon_dialog() { + local icon_path=$1 + yad --image "$icon_path" --title "Theme Icon" --window-icon=gtk-dialog-info --no-buttons --timeout=2 +} + +set_theme() { + local theme=$1 + local icon_theme + local enable_dark + + case "$theme" in + Colloid-Grey-Dark-Nord | Colloid-Grey | Colloid-Pink | Colloid-Green | Colloid-Orange | Colloid-Purple | Colloid-Teal | Colloid-Yellow | Colloid-Pink-Dark-Nord | Colloid-Green-Dark-Nord | Colloid-Orange-Dark-Nord | Colloid-Purple-Dark-Nord | Colloid-Teal-Dark-Nord | Colloid-Yellow-Dark-Nord | Colloid-Dark-Nord) + icon_theme='zafiro-dark' + enable_dark=true + ;; + *) + icon_theme='zafiro' + enable_dark=false + ;; + esac + + if [ "$enable_dark" = true ]; then + enable_dark_panels + set_icon_theme "$icon_theme" + else + disable_dark_panels + set_icon_theme "$icon_theme" + fi + + # Change the main theme to the chosen one + xfconf-query -c xsettings -p /Net/ThemeName -n -t string -s "$theme" + xfconf-query -c xfwm4 -p /general/theme -n -t string -s "$theme" + notify-send "$theme theme was enabled" +} + +export -f set_icon_theme set_theme enable_dark_panels disable_dark_panels show_icon_dialog + +yad --no-buttons --center --keep-icon-size --use-interp --title 'TROMjaro Theme Switcher' --text-align=center --text "A Theme Switcher for TROMjaro's default theme-set (Colloid) and icon-set (Zafiro)." --form --columns 8 --width=1000 --height=400 \ +--field=!"$icons/Colloid-Grey.png"!'Colloid-Grey':FBTN "set_theme 'Colloid-Grey'" \ +--field=!"$icons/Colloid-Grey-Light.png"!'Colloid-Grey-Light':FBTN "set_theme 'Colloid-Grey-Light'" \ +--field=!"$icons/Colloid-Grey-Dark-Nord.png"!'Colloid-Grey-Dark-Nord':FBTN "set_theme 'Colloid-Grey-Dark-Nord'" \ +--field=!"$icons/Colloid-Grey-Dark-Gruvbox.png"!'Colloid-Grey-Dark-Gruvbox':FBTN "set_theme 'Colloid-Grey-Dark-Gruvbox'" \ +\ +--field=!"$icons/Colloid-Pink.png"!'Colloid-Pink':FBTN "set_theme 'Colloid-Pink'" \ +--field=!"$icons/Colloid-Pink-Light.png"!'Colloid-Pink-Light':FBTN "set_theme 'Colloid-Pink-Light'" \ +--field=!"$icons/Colloid-Pink-Dark-Nord.png"!'Colloid-Pink-Dark-Nord':FBTN "set_theme 'Colloid-Pink-Dark-Nord'" \ +--field=!"$icons/Colloid-Pink-Dark-Gruvbox.png"!'Colloid-Pink-Dark-Gruvbox':FBTN "set_theme 'Colloid-Pink-Dark-Gruvbox'" \ +\ +--field=!"$icons/Colloid-Green.png"!'Colloid-Green':FBTN "set_theme 'Colloid-Green'" \ +--field=!"$icons/Colloid-Green-Light.png"!'Colloid-Green-Light':FBTN "set_theme 'Colloid-Green-Light'" \ +--field=!"$icons/Colloid-Green-Dark-Nord.png"!'Colloid-Green-Dark-Nord':FBTN "set_theme 'Colloid-Green-Dark-Nord'" \ +\ +--field=!"$icons/Colloid-Orange.png"!'Colloid-Orange':FBTN "set_theme 'Colloid-Orange'" \ +--field=!"$icons/Colloid-Orange-Light.png"!'Colloid-Orange-Light':FBTN "set_theme 'Colloid-Orange-Light'" \ +--field=!"$icons/Colloid-Orange-Dark-Nord.png"!'Colloid-Orange-Dark-Nord':FBTN "set_theme 'Colloid-Orange-Dark-Nord'" \ +\ +--field=!"$icons/Colloid-Purple.png"!'Colloid-Purple':FBTN "set_theme 'Colloid-Purple'" \ +--field=!"$icons/Colloid-Purple-Light.png"!'Colloid-Purple-Light':FBTN "set_theme 'Colloid-Purple-Light'" \ +--field=!"$icons/Colloid-Purple-Dark-Nord.png"!'Colloid-Purple-Dark-Nord':FBTN "set_theme 'Colloid-Purple-Dark-Nord'" \ +\ +--field=!"$icons/Colloid-Teal.png"!'Colloid-Teal':FBTN "set_theme 'Colloid-Teal'" \ +--field=!"$icons/Colloid-Teal-Light.png"!'Colloid-Teal-Light':FBTN "set_theme 'Colloid-Teal-Light'" \ +--field=!"$icons/Colloid-Teal-Dark-Nord.png"!'Colloid-Teal-Dark-Nord':FBTN "set_theme 'Colloid-Teal-Dark-Nord'" \ +\ +--field=!"$icons/Colloid-Yellow.png"!'Colloid-Yellow':FBTN "set_theme 'Colloid-Yellow'" \ +--field=!"$icons/Colloid-Yellow-Light.png"!'Colloid-Yellow-Light':FBTN "set_theme 'Colloid-Yellow-Light'" \ +--field=!"$icons/Colloid-Yellow-Dark-Nord.png"!'Colloid-Yellow-Dark-Nord':FBTN "set_theme 'Colloid-Yellow-Dark-Nord'" \ +--field=!"$icons/Colloid-Yellow-Dark-Gruvbox.png"!'Colloid-Yellow-Dark-Gruvbox':FBTN "set_theme 'Colloid-Yellow-Dark-Gruvbox'" \ +\ +--field=!"$icons/Colloid-Dark-Nord.png"!'Colloid-Dark-Nord':FBTN "set_theme 'Colloid-Dark-Nord'" \ +--field=!"$icons/Colloid-Pink-Dark-Nord.png"!'Colloid-Pink-Dark-Nord':FBTN "set_theme 'Colloid-Pink-Dark-Nord'" \ +--field=!"$icons/Colloid-Green-Dark-Nord.png"!'Colloid-Green-Dark-Nord':FBTN "set_theme 'Colloid-Green-Dark-Nord'" \ +--field=!"$icons/Colloid-Orange-Dark-Nord.png"!'Colloid-Orange-Dark-Nord':FBTN "set_theme 'Colloid-Orange-Dark-Nord'" \ +--field=!"$icons/Colloid-Purple-Dark-Nord.png"!'Colloid-Purple-Dark-Nord':FBTN "set_theme 'Colloid-Purple-Dark-Nord'" \ +--field=!"$icons/Colloid-Teal-Dark-Nord.png"!'Colloid-Teal-Dark-Nord':FBTN "set_theme 'Colloid-Teal-Dark-Nord'" \ +--field=!"$icons/Colloid-Yellow-Dark-Nord.png"!'Colloid-Yellow-Dark-Nord':FBTN "set_theme 'Colloid-Yellow-Dark-Nord'" \ +--field=!"$icons/Colloid-Dark-Nord.png"!'Colloid-Dark-Nord':FBTN "set_theme 'Colloid-Dark-Nord'"