Other Expose-like behavior in window managers

Nasrudin

New Member

Reaction score: 1
Messages: 9

It seems the options for window managers are numerous.

Given that, just why is expose-like behavior in these window managers so uncommon? Is there anyone who has yet enumerated those window managers that can do this behavior properly? (When I say 'properly' I mean no more than a second before the button press tiles all the open windows?) I know of: compiz (extinct), KWin (crashes randomly). Any one care to list any others?

Thanks in advance.
 

Sevendogsbsd

Well-Known Member

Reaction score: 151
Messages: 340

Good question. I don't know why. If I had to guess, I would say because most window managers have virtual desktops, or some similar functionality, and perhaps the devs thought it wasn't needed. I have only ever seen expose like functionality on a desktop environment. I have also never used it because I alt-tab switch and virtual desktop, tag or group switch, all with the keyboard. For my use case, I don't need to see all of my windows because I know exactly where they are already, having put them on a specific virtual desktop, tag or group. That's just me though, I am sure some folks can use something like expose.
 

rufwoof

Active Member

Reaction score: 65
Messages: 202

skippy-xd with brightside or just a simple script to launch skippy-xd when you move the mouse into a corner works well IMO.
Code:
#!/bin/sh
#
# Script to monitor mouse position and run skippy-xd (assumed to already be installed)
# whenever the mouse is moved into the bottom left corner (like a hot corner)
#
# Requires xdotool
#
# if script is called /home/user/corner then run it in your .xinitrc as
# /home/user/corner >/dev/null 2>&1 &

# Retreive screen height
SCREEN_HEIGHT=`xwininfo -root|sed '/Height/!d;s/.* //'`
# subtract 1 as 0..899 for 900 xwininfo height screen
SCREEN_HEIGHT=`expr ${SCREEN_HEIGHT} - 1` 
BOTTOM_LEFT="0x${SCREEN_HEIGHT}"

while : ;do
   CURRENT_MOUSE_POSITION=`xdotool getmouselocation | sed 's/ sc.*//; s/.://g; s/ /x/'`
   if [ $CURRENT_MOUSE_POSITION = $BOTTOM_LEFT ]; then
    skippy-xd
   fi
   sleep 0.1
done
 
OP
OP
N

Nasrudin

New Member

Reaction score: 1
Messages: 9

For my use case, I don't need to see all of my windows because I know exactly where they are already, having put them on a specific virtual desktop, tag or group.
I would like to know more about how to do this kind of thing. It would be nice to pop up a set of windows (e.g. editor, shell, browser) in the same place with the same content each time via some hot key or command. I've tried this in the (distant) past but I've never seen these ideas work well. How do you know exactly where your windows are?

Maybe cause they are WMs and not DEs? But yo should take a look at x11-wm/skippy-xd to get exposé like behaviour.
I'm not understanding the relevance of the distinction. I have only found expose-like behavior to work as the result of using a specific window manager. I use the desktop environment Xfce currently with the window manager KWin (sigh) and I get the expose behavior I want. What am I missing?

Looking at the DE side, there's been an open bug about this for some years and this bug even got turned into a bounty at some point. If there was a DE other than Gnome or KDE that actually has this feature, I'd love to know about it. Otherwise, this might help illustrate why I resist the idea of looking at a DE for this feature (and why I'm crazy enough to use KWin and Xfce).

I did look at something called "skippy" several years ago and it wasn't usable, reliable, or fast for my use case. Looking at the github for skippy-xd, I see the last commit was almost 3 years ago. Looking at freshports it seems it was abandoned for 6 years but very recently someone has resurrected this port. So ... maybe? :) I think I'd much prefer this functionality to be built into the window manager for performance sake, but since I'm not coding anything I'll use what is available.
 

Sevendogsbsd

Well-Known Member

Reaction score: 151
Messages: 340

I would like to know more about how to do this kind of thing. It would be nice to pop up a set of windows (e.g. editor, shell, browser) in the same place with the same content each time via some hot key or command. I've tried this in the (distant) past but I've never seen these ideas work well. How do you know exactly where your windows are?
It's not software related, I only open certain windows on certain virtual desktops/groups and so I know which virtual desktop/group has the windows I put there. There is never a use case where I have to look at all my windows to find one. For example: I know I put a browser and my email on group 1, file manager on group 2, password database, and music player on group 3 and a bunch of xterms on group 4 for admin purposes. I never change this layout so I know exactly where everything is.

Make sense?

I do also have a very large monitor so I can minimize the number of virtual desktops/groups I use. Also, my window manager tells me which windows are open by left clicking on the "desktop" or root window. Expose` might be handy for a laptop or something with limited screen real estate but for me, it serves no purpose other than "eye candy".
 
OP
OP
N

Nasrudin

New Member

Reaction score: 1
Messages: 9

It's not software related, I only open certain windows on certain virtual desktops/groups and so I know which virtual desktop/group has the windows I put there. There is never a use case where I have to look at all my windows to find one.
There's the difference. I use virtual desktops to group windows for the same project together, since I swap between many different projects during a day. So each virtual desktop may have a browser window, an editor window, several terminal windows...etc. Additionally, sticky windows (those that are always there regardless of virtual desktop) are things I use over all projects (e.g. a mail reader).

Our use cases are sufficiently different that I suspect you cannot help me. :)

Just the same, thanks for the input.
 

Lanakus

Active Member

Reaction score: 100
Messages: 152

I'm not understanding the relevance of the distinction. I have only found expose-like behavior to work as the result of using a specific window manager. I use the desktop environment Xfce currently with the window manager KWin (sigh) and I get the expose behavior I want. What am I missing?
My point was that most of the windowmanagers (for X) outside are lightweight and by default lack a lot of features you expect from a DE. Exceedly few came with a dock or a panel or even a filemanager that characterizes a DE.

But all applications of a DE needs memory and running something like Gnome can take up a large amount of system memory. It can still be a problem for some users and they might prefer using lightweight WMs and add those apps and features they really need.
So most WMs lack something Expose like, maybe KWin does (Im not really familar with KDE). Even the gnome-dashboard is part of the gnome-shell and not of Mutter. Don't know exactly how macOS and Aqua handle things. Xfwm lacks that feature. x11-wm/openbox has a window-switcher but thats probably not what you are looking for, its more like a task list and its appearance might be not attractive although its a matter of taste.
As far as I know skippy-xd is one of few applications that bring you Expose like behaviour to WMs. You could take a look at xfdashboard which tries to bring a gnome like dashboard to Xfce. But it is not in the ports so you could try installing from source.
 
Top