#! /bin/bash data=/usr/share/tromjaro-layout-switcher icons=$data/icons profiles=$data/profiles enable-top-bar-integration() { # Enable global menus pacman -Qq vala-panel-appmenu-registrar-git || zensu SKIP_AUTOSNAP= pacman -S --noconfirm vala-panel-appmenu-registrar-git || { notify-send 'Error' 'failed installing vala-panel-appmenu-registrar-git !\nmake sure you type the correct password\nEnabling the internet connection might solve the issue'; exit; } pacman -Qq vala-panel-appmenu-registrar-git || exit # Hide window borders when maximized xfconf-query -c xfwm4 -p /general/borderless_maximize -n -t bool -s true & # Hide top bar of windows when maximized xfconf-query -c xfwm4 -p /general/titleless_maximize -n -t bool -s true & # Put window buttons on left side xfconf-query -c xfwm4 -p /general/button_layout -n -t string -s "CMH|" & } disable-top-bar-integration() { # Disable global menus ! pacman -Qq vala-panel-appmenu-registrar-git || zensu SKIP_AUTOSNAP= pacman -R --noconfirm vala-panel-appmenu-registrar-git || { notify-send 'Error' 'failed removing vala-panel-appmenu-registrar-git !\nmake sure you type the correct password'; exit; } pacman -Qq vala-panel-appmenu-registrar-git && exit killall appmenu-registrar & # Hide window borders when maximized xfconf-query -c xfwm4 -p /general/borderless_maximize -n -t bool -s true & # Don't hide top bar of windows when maximized xfconf-query -c xfwm4 -p /general/titleless_maximize -n -t bool -s false & # Put window buttons on right side xfconf-query -c xfwm4 -p /general/button_layout -n -t string -s "|HMC" & } choice=$( yad --no-buttons --center --keep-icon-size --separator='' --use-interp --title 'Layout Switcher' --text-align=center --text 'Changing to or from any layout that has global menus, will require your admin password' --form --columns 3 \ --field=!"$icons/windows.png"!'Windows-Like':BTN "kill -USR1 \$YAD_PID; echo -n 'Windows-Like'" \ --field=!"$icons/macos.png"!'MacOS-Like':BTN "kill -USR1 \$YAD_PID; echo -n 'MacOS-Like'" \ --field=!"$icons/mx.png"!'MX-Like':BTN "kill -USR1 \$YAD_PID; echo -n 'MX-Like'" \ --field=!"$icons/gnome.png"!'Gnome-Like':BTN "kill -USR1 \$YAD_PID; echo -n 'Gnome-Like'" \ --field=!"$icons/unity.png"!'Unity-Like (default)':BTN "kill -USR1 \$YAD_PID; echo -n 'Unity-Like (default)'" \ --field=!"$icons/topx.png"!'TopX-Like':BTN "kill -USR1 \$YAD_PID; echo -n 'TopX-Like'" ) case "$choice" in 'Windows-Like') disable-top-bar-integration xfce4-panel-profiles load "$profiles"/Windows-Like.tar.bz2 & ;; 'Unity-Like (default)') enable-top-bar-integration xfce4-panel-profiles load "$profiles"/Unity-Like.tar.bz2 & ;; 'MX-Like') disable-top-bar-integration xfce4-panel-profiles load "$profiles"/MX-Like.tar.bz2 & ;; 'MacOS-Like') enable-top-bar-integration xfce4-panel-profiles load "$profiles"/MacOS-Like.tar.bz2 & ;; 'Gnome-Like') disable-top-bar-integration xfce4-panel-profiles load "$profiles"/Gnome-Like.tar.bz2 & ;; 'TopX-Like') disable-top-bar-integration xfce4-panel-profiles load "$profiles"/TopX-Like.tar.bz2 & ;; *) exit ;; esac sleep 5 && notify-send "$choice layout was enabled"