skippy-xd
skippy-xd copied to clipboard
Show minimized windows too (Now: Keep thumbnails of unmapped windows)
I like to see all my windows in an overview.
It's not possible to display content of minimized windows right now. X does not retain the content of unmapped windows. We may only display an icon, or cache the window content (which would require skippy-xd to run as a daemon and take a certain amount of resources). Regardless of which approach is preferred, I won't have time to work on this before I finish my exam on Oct 20th.
I like to see the daemon approach.
I think it would be useful to cache only the minimized windows. (When window get minimized, take a snapshot.)
I don't think caching is a good idea. We want Skippy-XD to be as lightweight as possible, and it is for this reason that we recently dropped the daemon approach.
But I agree that displaying the icons of minimized windows would be very useful. I think there is a different report discussing this, but I forget.
I would definitely try to implement the icon approach firstly, after my exam. Actually most code is ready.
Caching window contents would generate some extra load when it's enabled, but it shouldn't be much a problem for those who disabled it. Might be tricky to implement since unlike a WM we may not be able to know when a window is going to be iconified and take a screenshot on time, however.
@landroni: I suppose the daemon code is still there, but it has a few bugs.
I found this nice article.
Two sections are pretty interesting:
"Intercepting X events as they're received" "Preventing the backing pixmap from being freed when the window is hidden/destroyed"
@ikem-krueger:
"Preventing the backing pixmap from being freed when the window is hidden/destroyed"
I can't believe I forgot about XCompositePIxmap()
! Yes, that should work. Thanks!
afaik, this is another one, such a #11 and #8 so, there is a hope, that we will see iconified and "out-of-current-desktop" windows? :)
so, there is a hope, that we will see iconified and "out-of-current-desktop" windows? :)
It's not my top priority now, because unfortunately there are a few more important bugs present, heh...
Skippy works like a charm!
It's not my top priority now
But you didn't answered no. I'll be waiting!
Displaying unmapped windows (including those on other desktops) as icons/filled boxes has been implemented. Build from the git repo to test. :-)
There's no schedule for caching window content right now, though.
Is there any chance we will be able to click these windows from other desktops and have it switch to that desktop?
@jasonwert:
Is there any chance we will be able to click these windows from other desktops and have it switch to that desktop?
I suppose the WM should take care of this... Anyway, if your WM doesn't, try the switchDesktopOnActivate
switch added with cbc8f4b. It won't work if your WM is not EWMH-compliant, though.
I'm using Openbox (Crunchbang specifically). I've downloaded the current daily from the ppa.
I have these enabled:
switchDesktopOnActivate = true showAllDesktops = true
When I run skippy-xd I get this error (Not sure if it means anything):
wert@heinlein:~$ skippy-xd wm_check(): Your WM looks EWMH compliant. running once then quitting... wm_get_stack_sub(): Retrieved window stack from _NET_CLIENT_LIST. [ 0.04 ] error 8 (BadMatch) request 42 minor 0 serial 404 ("BadMatch (invalid parameter attributes)") clientwin_handle(): KeyRelease 36 (Return) ignored. clientwin_handle(): Quitting. wert@heinlein:~$
If i click a window not on my current desktop it still dumps to the current desktop.
Any idea?
Thanks
@jasonwert:
I tested with fvwm last night. Openbox probably doesn't quite the follow the EWMH standard if I didn't misunderstand it: EWMH didn't state what the window parameter should be in _NET_CURRENT_DESKTOP
client message but Openbox works only if I set it to root window ID.
And I've made another big mistake last night: I forgot to re-enable window activation code after I disabled it for debugging... Anyway, they should be fixed now. You could build from the git repo or wait until the PPA updates.
[ 0.04 ] error 8 (BadMatch) request 42 minor 0 serial 404 ("BadMatch (invalid parameter attributes)")
It's mostly harmless. It occurs when you activate an unmapped window. Probably I will try to silence it later.
The new update did it. All works correctly on Openbox for me now.
Thank you for your work!
-jason