You are not logged in.
@aerosuidae,
simpleswitcher's now officially in portage, depending on how much time is needed for it in the future, I'll maintain it there.
As for pixelclock, this is what FVWM reports without special threatment
Name: pixelclock
Icon Name: pixelclock
Class: NoClass
Resource: NoResource
StickyPage: Yes
StickyDesk: Yes
StickyPageIcon: No
StickyDeskIcon: No
NoTitle: No
Transient: No
WindowListSkip: Yes
Focus Policy: Passive
- Input Field: XWMHints missing
- WM_TAKE-FOCUS: XGetWMProtocols failed
Edit, just to let you know, someone replied in the Gentoo thread that it's not working with dwm, tried it myself and it doesn't show up nor gives any output. Tried and working for me in fvwm, sawfish, awesome.
Last edited by avx (2012-08-28 15:53:57)
Offline
@avx, I did some digging. Seems dwm does not support _NET_CLIENT_LIST_STACKING which simpleswitcher uses to get the window list.
Offline
@aerosuidae, it looks like simpleswitcher does not live well with herbstluftwm as well ? Is it also related to the _NET_CLIENT_LIST_STACKING support ?
Offline
@Sirsurthur, I dug through herbstluftwm source and found it lists some invisible windows and it's own override_redirect frame windows in _NET_CLIENT_LIST_STACKING, but not in _NET_CLIENT_LIST. Based on my understanding of EWMH I suspect that's a bug in herb... maybe.
Anyway it's easy enough to filter out that noise on simpleswitcher's side. Fix committed Seems to work ok now on herb 0.4.1.
Offline
Great application!
Does have some rough edges with i3-wm, though.
1. With F11, the window list is empty. And with F12, only the windows in the current Workspace are displayed.
2. i3bar is displayed among the available windows.
xprop reports the following about i3bar:
WM_STATE(WM_STATE):
window state: Normal
icon window: 0x0
_NET_WM_STRUT_PARTIAL(CARDINAL) = 0, 0, 19, 0, 0, 0, 0, 0, 0, 1024, 0, 0
_NET_WM_WINDOW_TYPE(ATOM) = _NET_WM_WINDOW_TYPE_DOCK
WM_NAME(STRING) = "i3bar for output LVDS1"
WM_CLASS(STRING) = "i3bar", "i3bar"
For trouble-shooting, please use i3-git from AUR, as the 4.2 version will soon be depreciated.
Offline
I just got word from the i3-developers that certain EWM-Hints are not supported by i3, and that it is not trivial to implement this, as this would allow apps to steal focus.
For i3-users stumbling upon this thread: The winmenu example of i3-py is a working alternative (albeit a bit slower).
Offline
We can filter out _NET_WM_WINDOW_TYPE_DOCK on the fly. But not much more than that can be done where EWMH is simply lacking...
I just got word from the i3-developers that certain EWM-Hints are not supported by i3, and that it is not trivial to implement this, as this would allow apps to steal focus.
Fair enough; to each their own! IMO this is an odd choice, though, because it must block many useful panels/switchers/pagers.
Example: the _NET_ACTIVE_WINDOW request has a source indicator field to identify whether the request comes from an application or a pager, so the WM may handle appropriately. Obviously this field could be faked so apps raise themselves, but there is a simple for fix for such misbehaving apps... don't use them
Offline
@aerosuidae : Thanks for your fix for herbstluftwm. Still, if you have a workspace with only terminals, then you have to click on one of them, so that they got listed by simpleswitcher ? Simpleswitcher behaves well with clients like firefox, etc.
Offline
@Sirsurthur, I see the problem, but so far I can't find a simpleswitcher-side fix Seems to be some odd timing bug with herbstluftwm populating _NET_CLIENT_LIST_STACKING. I'll dig further when I get more spare time...
(edit: spelling!)
Last edited by aerosuidae (2012-09-23 14:08:26)
Offline
Nice job man
Usefull tool !
Offline
Very nice idea, thanks. I just tried it out on awesome, and while it does list windows on the current tag and switches to them when selected, I noticed the following issues:
it does not list windows on other tags, even with -now/F12
if a window has several tags, it will only be listed with -dnow/F11 if the current tag is the first tag it is tagged with (-now/F12 will however list all windows that have any of the currently visible tags, even if their first tag is not the current one)
with -now/F12, if a window is on several tags, simpleswitcher will switch to the first tag before raising instead of raising it in the current tag (accordingly, the desktop number listed in the simpleswitcher window is always the first tag a window is tagged with)
@avx: you mention that it worked for you in awesome, did you experience any of these issues? Anybody else?
@aerosuidae: is awesome supported with simpleswitcher?
Offline
@quigybo, #1 is a bug. Thanks for reporting it.
For #1, turns out I made an assumption about window states that isn't necessarily true for all window managers. Patch is committed.
However #2 and #3 are harder. Awesome appears to use a window's first tag as its desktop number and any other tags aren't exposed to EWMH. This choice makes sense because EWMH assumes one desktop per window or one window on all desktops, never one window on a subset of desktops (which would suit the concept of tags). So, need to think... ideas?
Offline
Confirmed #1 is fixed, thanks for the quick response. I was afraid #2 and #3 were not going to be simple fixes, but thanks for looking into them anyway.
And just to make things more fun, there is one more thing I noticed (let's call it #4): if a window is floating and is (partially) obscured by another window, simpleswitcher makes it active but doesn't raise it above the other window.
May I also suggest the following improvements:
shift-tab to moves to the previous item in the list
pressing F11 when the all-windows dialog is visible should switch immediately to the current-desktop dialog, and vice-versa when pressing F12 in the current-desktop dialog
Offline
To the best of my EWMH knowledge, #4 isn't a bug simpleswitcher can work around. It depends on how a WM handles a _NET_ACTIVE_WINDOW request. Many (most?) assume "active" implies both focus and raise. Looks like awesome only does focus. I suppose for a tiler, or for anything doing click-to-raise, that bahaviour makes sense. Perhaps someone more familiar with awesome can suggest a hack or config option.
I like a) and b) feature requests. Will have a look at them when I'm back in the vicinity of my dev environment in a few days...
Offline
Yep, you'll want to hook something up to the client focused signal in your rc.lua if you want things to be raised automatically when anything switches to them. For example, I have this, which does exactly that:
client.add_signal("focus", function(c) c:raise() end)
If you already have a function hooked up to that signal, you can just add the c:raise() into that, as well.
Offline
@Wibjarm, thank you!
May I also suggest the following improvements:
shift-tab to moves to the previous item in the list
pressing F11 when the all-windows dialog is visible should switch immediately to the current-desktop dialog, and vice-versa when pressing F12 in the current-desktop dialog
These have both been implemented.
Offline
@Wibjarm: thanks, I figured it was something like that (relatively new to awesome).
@aerosuidae: thanks for implementing those feature requests (and being open to my comments in general). Regarding b), when switching from the all-windows dialog to the current-desktop dialog, since the former is larger than the latter, an ugly grey background is left on screen from the larger window. Is this something you experience too?
Offline
@quigybo, I do indeed see the background redraw problem on one of my machines. Fix is committed. Thanks...
Offline
Fix confirmed, thanks again.
Offline
Hi aerosuidae, can you please implement a seperate dmenu version of the window selector you implemented in Musca wm, so that i can use it in openbox.
Using Openbox + Tint2 + Idesk
Offline
@Pranavg1890, why not just script something with wmctrl? Eg:
wmctrl -l | cut -d' ' -f 1,5- | dmenu -l 10 | cut -d' ' -f 1 | xargs wmctrl -i -a
Offline
Which tiling manager works completely properly with simpleswitcher? (I know that dwm and i3 doesn't completely cf previous post in this thread)
Offline
Awesome works fine here.
Offline
When using simpleswitch, is it possible to make awesomewm switch to the selected program when I select it (without having to press enter)?
I thought the code posted by Wibjarm would do exactly that but apparently not.
Or to ask it a different way: is it possible to make simpleswitch function like the alt-tab function of Windows and WMs like Openbox?
Last edited by anonymous_user (2013-01-15 05:32:10)
Offline
Works well on JWM but keepassx appears in the window list even when it has been minimized to the tray:
Also, I want to use the windows key as a modifier. What's the keycode for that? Thanks for your work on this!
Offline