Different wallpapers in multimonitor screen

Asked by Ftarkin on 2014-07-29

Hi folks

I wonder if Variety is able to display at the same time different wallpaper on a multimonitor screen ?

I mean, I am under xubuntu 14.04 using 3 screens (all the same resolution), and I cannot have 3 different wallpapers, one per screen, using Variety (a wonderful soft however), as I could do using the basic screen manager from xfce4.

Do you have an idea ?

Cheers

Francois

Question information

Language:
English Edit question
Status:
Solved
For:
Variety Edit question
Assignee:
No assignee Edit question
Solved by:
Ftarkin
Solved:
2014-07-29
Last query:
2014-07-29
Last reply:
2014-07-29
Peter Levi (peterlevi) said : #1

Most desktop environments do not support this, so there is no dedicated support in Variety for this.
However, XFCE does support it and Variety can be hacked to use it.

The key is editing the XFCE-related portion in ~/.config/variety/scripts/set_wallpaper to set the wallpaper of a different monitor on every wallpaper change instead of to set all of them at once.

This has been done, but the instructions are somewhat outdated, but can be adapted to the current state of things: http://peterlevi.com/variety/wiki/Script_xfce_dual_monitor

If you manage to get it working, please write here and/or in the Wiki.

Ftarkin (francois-sabot) said : #2

Hi folks, I succeeded in fact ^^

Here is the code I used (I will put the complete script in the wiki), working for my displays, based on what exists on the wiki

#Adding multimonitor support
CMFILE=~/.config/variety/.changedmonitor #File for the monitor to be changed
CM=$(cat $CMFILE)

if [[ $rc = 0 ]] ; then
 for i in $(xfconf-query -c xfce4-desktop -p /backdrop -l|egrep -e "screen.*/monitor$CM.*/last-image"); do
          xfconf-query -c xfce4-desktop -p $i -n -t string -s "" 2> /dev/null
          xfconf-query -c xfce4-desktop -p $i -s "" 2> /dev/null
          xfconf-query -c xfce4-desktop -p $i -s "$WP" 2> /dev/null
        done
fi

#Configuring the next monitor to
DP0="DisplayPort-0"
DP1="DisplayPort-1"
DVI="DVI-0"
if [[ $CM = $DP0 ]]; then
 NM="DisplayPort-1"
 rm $CMFILE
 echo $NM > $CMFILE
elif [[ $CM = $DP1 ]]; then
 NM="DVI-0"
 rm $CMFILE
 echo $NM > $CMFILE
elif [[ $CM = $DVI ]];then
 NM="DisplayPort-0"
 rm $CMFILE
 echo $NM > $CMFILE
else
 notify-send "Not the good monitor to be configured"
fi