@@ -29,27 +29,29 @@ set_wallpaper_with_mode() {
2929 # Default xgifwallpaperMode values
3030 local xWallMode=" zoom" ; local fehMode=" fill" ; local nitrogenMode=" auto" ; local swayMode=" fill"
3131 local hsetrootMode=" -fill" ; local xfceMode=5; local gnomeMode=" zoom" ; local pcmanfmMode=" fit"
32- local xgifwallpaperMode=" FILL"
32+ local xgifwallpaperMode=" FILL" awwwMode= " crop "
3333
3434 # Mode mappings
3535 case " $wallpaper_mode " in
3636 " full" )
3737 xWallMode=" maximize" fehMode=" max" nitrogenMode=" scaled" swayMode=" fit"
3838 hsetrootMode=" -full" xfceMode=4 gnomeMode=" scaled" pcmanfmMode=" stretch"
39- xgifwallpaperMode=" MAX"
39+ xgifwallpaperMode=" MAX" awwwMode= " fit "
4040 ;;
4141 " tile" )
4242 xWallMode=" tile" fehMode=" tile" ; nitrogenMode=" tiled" ; swayMode=" tile"
4343 hsetrootMode=" -tile" xfceMode=1; gnomeMode=" wallpaper" ; pcmanfmMode=" tile"
44+ awwwMode=" tile"
4445 ;;
4546 " center" )
4647 xWallMode=" center" ; fehMode=" centered" ; nitrogenMode=" centered" ; swayMode=" center"
4748 hsetrootMode=" -center" ; xfceMode=2; gnomeMode=" centered" ; pcmanfmMode=" center"
49+ awwwMode=" crop"
4850 ;;
4951 " cover" )
5052 xWallMode=" stretch" ; fehMode=" scale" ; nitrogenMode=" zoom" ; swayMode=" stretch"
5153 hsetrootMode=" -full" ; xfceMode=5; gnomeMode=" zoom" ; pcmanfmMode=" stretch"
52- xgifwallpaperMode=" NONE"
54+ xgifwallpaperMode=" NONE" awwwMode= " stretch "
5355 ;;
5456 esac
5557
@@ -60,7 +62,7 @@ set_wallpaper_with_mode() {
6062 local WALL_SETTERS_STATIC;
6163 local WALL_SETTERS_ANIMATED;
6264
63- if [[ $XDG_SESSION_TYPE == " wayland " ]]; then
65+ if [[ ! -z $WAYLAND_DISPLAY ]]; then
6466 WALL_SETTERS_STATIC=(awww swaybg gnome-shell)
6567 WALL_SETTERS_ANIMATED=(awww)
6668 else
@@ -79,7 +81,7 @@ set_wallpaper_with_mode() {
7981 # Detect installed setters once
8082 choose_available_setter () {
8183 for installed_wallsetter in " ${WALL_SETTERS[@]} " ; do
82- command -v " $installed_wallsetter " > /dev/null 2>&1 && \
84+ command -v " $installed_wallsetter " > " $LOG_FILEPATH " 2>&1 && \
8385 AVAILABLE_SETTERS+=(" $installed_wallsetter " )
8486 done
8587 }
@@ -100,22 +102,22 @@ set_wallpaper_with_mode() {
100102 break
101103 fi
102104 done
103-
104- verbose info \
105- " Available wallpaper backends for $XDG_SESSION_TYPE are:
106- $( echo -e " ${AVAILABLE_SETTERS[@]} " | sed " s/$CH_WALLSETTER /-> \\ \033[1;36m${AVAILABLE_SETTERS[@]} /g" ) \033[1;97m\n"
107105
108106 # Kill running wallpaper deamon if running
109- pidof " ${CH_WALLSETTER} " & > /dev/null && killall " ${CH_WALLSETTER} " & > /dev/null
107+ pidof " ${CH_WALLSETTER} " & > " $LOG_FILEPATH " && killall " ${CH_WALLSETTER} " & > /dev/null
110108
111109 # Use the wallpaper backend first available
112110 case " $CH_WALLSETTER " in
113- " xgifwallpaper" ) nohup xgifwallpaper -s $xgifwallpaperMode " $image_path " > /dev/null 2>&1 & disown || wallsetERROR ;;
111+ " xgifwallpaper" ) nohup xgifwallpaper -s $xgifwallpaperMode " $image_path " > " $LOG_FILEPATH " 2>&1 & disown || wallsetERROR ;;
114112 " xwallpaper" ) xwallpaper " --$xWallMode " " $image_path " || wallsetERROR;;
115113 " hsetroot" ) hsetroot " $hsetrootMode " " $image_path " || wallsetERROR;;
116114 " feh" ) feh --bg-" $fehMode " " $image_path " || wallsetERROR;;
117115 " nitrogen" ) nitrogen --set-$nitrogenMode " $image_path " || wallsetERROR;;
118- " swaybg" ) swaybg -i " $image_path " --mode " $swayMode " > /dev/null 2>&1 & disown || wallsetERROR;;
116+ " swaybg" ) swaybg -i " $image_path " --mode " $swayMode " > " $LOG_FILEPATH " 2>&1 & disown || wallsetERROR;;
117+ " awww" )
118+ pidof " ${CH_WALLSETTER} -deamon" & > " $LOG_FILEPATH " || " ${CH_WALLSETTER} -deamon" & > " $LOG_FILEPATH "
119+ awww img " $image_path " --resize " $awwwMode " > " $LOG_FILEPATH " 2>&1 & disown || wallsetERROR
120+ ;;
119121 " xfconf-query" )
120122 if xfconf-query --channel xfce4-desktop --property /backdrop/screen0/monitor0/image-style --set $xfceMode ; then
121123 xfconf-query --channel xfce4-desktop --property /backdrop/screen0/monitor0/image-path --set " $image_path " ; else wallsetERROR; fi
@@ -134,9 +136,9 @@ setup_wallpaper() {
134136 verbose info " Changing the wallpaper"
135137 case " $wallpaper " in
136138 * .png) cp " $wallpaper " " $WALLPAPER_CACHE " ;;
137- * .gif) magick " $wallpaper " -coalesce -flatten " $WALLPAPER_CACHE " > /dev/null
139+ * .gif) magick " $wallpaper " -coalesce -flatten " $WALLPAPER_CACHE " > " $LOG_FILEPATH "
138140 $wallpaper_animated && cp " $wallpaper " " $WALLPAPER_CACHE .gif" ;;
139- * ) magick " $wallpaper " " $WALLPAPER_CACHE " > /dev/null
141+ * ) magick " $wallpaper " " $WALLPAPER_CACHE " > " $LOG_FILEPATH "
140142 esac
141143 case " $wallpaper_type " in
142144 " solid" ) magick -size 10x10 xc:" $color8 " " $WALLPAPER_CACHE "
0 commit comments