Once implemented you can for instance go to desktop 3, right click and use wall paper setter to allocate a wallpaper to that desktop, add/remove/rearrange the icons on that desktop, and then switch to another desktop and do similar there ... and end up with a varied range of desktop backgrounds, icons and icon arrangements across the 5 desktops.
Here are the notes of how I implemented that
Code: Select all
Used jwm config to define 1 row 5 column desktops
and jwm restarted
/usr/local/jwmconfig2/
files changed to remove the desktop background
and number of virtual desktops options as they
would conflict with our hard-coding
~/Choices/ROX-Filer PuppyPin initially copied
repeatedly to PuppyPin1 PuppyPin2 ... PuppyPin5
so each of the 5 desktops have their own associated
PuppyPin
~/.jwm/jwm-personal
Commented out the former desktops defition
<!--
<Desktops width="5" height="1"/>
-->
and replaced with
<Desktops width="5" height="1">
<Desktop><Background type="command">/usr/sbin/desktoppin 1</Background></Desktop>
<Desktop><Background type="command">/usr/sbin/desktoppin 2</Background></Desktop>
<Desktop><Background type="command">/usr/sbin/desktoppin 3</Background></Desktop>
<Desktop><Background type="command">/usr/sbin/desktoppin 4</Background></Desktop>
<Desktop><Background type="command">/usr/sbin/desktoppin 5</Background></Desktop>
</Desktops>
Which fires off /usr/sbin/desktoppin each time
a desktop is switched
/usr/sbin/desktoppin created and made executable containing
#!/bin/bash
# Rufwoof Nov 2015
# Different icon arrangements on different desktops
# Very limited at present i.e. doesn't support
# changes of number of desktops etc.
#
if [ "$1" = "" ]; then
exit
fi
cd ~/Choices/ROX-Filer
previous=`cat ~/.currentdesktop`
echo $1 > ~/.currentdesktop
# Sanity check
sane=`cat PuppyPin | grep PuppyPin$previous`
if [ "$sane" = "" ]; then
# Hmm!!! Doesn't seem to match so don't bother 'preserving'
echo
else
cp -f PuppyPin PuppyPin$previous # Save any changes on old desktop
fi
cp PuppyPin$1 PuppyPin # Swap in the new desktops background/icons
rox -p $HOME/Choices/ROX-Filer/PuppyPin
Create a image using mtpaint of just 1 pixel and saved
that to /usr/share/icons as a file called dot.png
For each of the PuppyPin1, PuppyPin2 ... PuppyPin5 files
in ~/Choices/ROX-Filer the files icon was set to be that dot.png
Opening up each of the 5 desktops I dragged the respective
~/Choices/ROX-Filer/PuppyPin1....etc to the desktop, such
that desktop 1 had a ~/Choices/ROX-Filer/PuppyPin1 icon, desktop
2 had a ~/Choices/ROX-Filer/PuppyPin2 icon ...etc As the icon is
just a 1 pixel image it was pretty much hidden, only the icons
comment (text) was visible. By right clicking and Editing the
deskop icon and deleting the 'comment below icon' text, thereafter
the icon more of less became totally invisible.
Having a PuppyPin1 'invisible' icon on desktop1, PuppyPin2 icon on
desktop2 .... etc means that each of the PuppyPin files can be
identified by a grep. I couldn't figure out a way to add comments
to PuppyPin so having a 'invisible' entry in each was the next best choice.
With all that set (don't think I've missed anything), you have a
setup that is fixed at 5 desktops (as switching to other arrangements
could lead to problems) and where each desktop has its own PuppyPin.
As the desktop background, icons and icon locations are stored in
PuppyPin (excepting the drive and other fixed icons such as Trash etc)
then each desktop can have its own background (wallpaper) and
icons/icon position arrangements.
I've seen examples for different wallpapers on different desktops, but not one for different icons/icon arrangements so I decided to post this guide of how I did it here.
I've used a Cosmos theme for my 5 desktops, theme'ing each desktop with different desktop icons and backgrounds in reflection of a typical session.
Desktop 1 - Dark Years - initial boot and creation
Desktop 2 - Nebula - downloading and/or installing other SFS's
Desktop 3 - Fruitful - main work desktop for use when browsing, editing ...etc.
Desktop 4 Twilight - Used as a store of work files in readiness for saving to the Cloud or USB or wherever prior to shutdown
Desktop 5 Closure - Shutdown preparation and activation
The above images are early snapshots and with the exception of the first are spartan of icons. More or less just a example of what sort of arrangements can be created.
EDIT : When on the desktop the scroll wheel scrolls through the desktops. More often that's a annoyance and in the case of the above it can screw up the desktops. Whilst there's no disable desktop scrollwheel action there is a trick/workaround, simply add
<RootMenu onroot="4"/>
<RootMenu onroot="5"/>
to /root/.jwm/jwmrc-personal