desktop 'tape'

Benjamin Rich benxor at
Sat Mar 27 12:48:29 CET 2004

I was thinking of making this a feature request but it seemed too large
to put in xfce-bugs, so here it is.

Situation: I use lots of desktops. Usually, in my multiple desktop
pager, I have 7 desktops, 5 or 6 of which I end up using. I do this
mainly because a) I use a lot of different applications and b) every
major application needs a full screen to itself. GIMP, gFTP, Quanta,
Evolution, etc. all require pretty much an entire screen to themselves
for you to use them properly - hence, a desktop for each major app

Problem: In XFCE4, there seems to be no way of getting a window to load
in the desktop it was spawned in. If I click the icon for firefox, and
it takes 12seconds to load and display (being that it's firefox =P ),
then I have to make sure I'm in a blank desktop when that moment arrives
- or at least that I am where I want the app to load. Likewise, when I
save a session with a copy of Evolution running in desktop1, when I load
up XFCE4 again, Evolution will load only in desktop1 if I'm there at the

(note: I'm using xfce4-session 1.4 from code, I know it isn't officially
out yet)

Solution: This could be solved if XFCE4 just remembered where a window
was spawned from, or where it was running in when a session was saved
and closed. But - I had a slightly more radical idea =)

Wouldn't it be useful, also, to be able to load windows in the
background? That is, click the browser icon on the panel, and have the
browser load somewhere a few desktops down, with a desktop all to
itself? Wouldn't it likewise be awesome to not have to manage desktops
yourself? Such as, if you load apps in desktops 1, 2, 3 and 4, and then
later close apps in 2 and 3, not have to move the app in 4 down to 2, or
navigate through two blank desktops to get to 4, etc?

My idea then is a sideways desktop stack, or a 'tape'.
	Rather than having 7 (or however many) desktops in a pager, just have
one long space (7 desktop-lengths long). You slide up and down the
desaktop space with ctrl+right and ctrl+left, and you can also click in
the pager to navigate up and down (and also use the mouse at the screen
borders with a mofidier key or something).
	When you open an app, you set preferences in either the app launcher,
or general prefs in XFCE4, to have that app load it's window where you
are in this desktop space; or next to the last app opened, towards the
right of the desktop space. When apps down at the left end of the tape
close, the space they inhabited is eaten up, and apps on the right move
back down - like blocks falling, but of course from right to left
instead of from top to bottom.

Also, this space should be seen as specifically a 'tape'. You don't jump
along the tape, you slide; apps don't just jump down to fill up blank
space on the left, they drop. Everything should give the user the
impression they're moving horizontally along an 'infinite' area of space
into which to put apps.

Extra ideas:
-each window could have two additional buttons replacing the standard
'minimise' button (nothing would need to be minimised in this setup,
because windows don't need to be arranged by the user) -> a 'make
primary window' button and a 'go away' button. the 'make primary window'
button would move the target window instantly to it's own bit of
real-estate on the right of the tape - all other windows behind it or
around it would stay where they are, thus making this window the only
window in front of th user. the 'go away' button would do the same,
relegating the window to a new bit of tape on the right, except the user
would stay where they are currently, so banishing the go-away-ed window.

-alt+tab cycles through windows currently in front of the user,
alt+shift+tab cycles through all windows down the tape. this
functionality could also be made 'sticky', so that if a person was
constantly cycling through three specific windows (say, they were
editing a web-page with an editor, uploading it with an ftp client, and
test-viewing with a browser), these windows would be clumped together in
the global window cycle list, making it easier for them to get at them
in succession.

-ctrl+shift+right/left, for jumping from window to window right-wards or
left-wards along the tape. the jump would bring the next left/right-most
border of the next window alongside with the left/right border of the

Tell me what you think.



More information about the Xfce4-dev mailing list