Only report focused workspace as active to EWMH

I think this patch improves EWMH + xinerama. What do you think?

Hi, Am Samstag, den 10.10.2009, 17:52 -0600 schrieb Justin Bogner:
Currently, when using xinerama and the EwmhLayoutHook, we report all visible windows as being on the active workspace. This causes panels' workspace switchers and the like to think windows are shifting to new workspaces every time we change workspace.
This patch changes the behaviour so that only the focused workspace is reported, which fixes this behaviour at the cost of panels' window lists only reporting the focused windows, rather than all visible windows (which is a little strange, but makes more sense given xmonad's workspace model.)
I didn’t try it, because at the moment I don’t have a second screen, but from what I read, I’m unsure if it’s a good idea. Not having windows that are not on the current workspace show up in window lists is a bad idea, as more than just a workspace switcher relies on that (window lists, and even unrelated tools like my arbtt, need to have all windows in _NET_CLIENT_LIST). (but maybe I’m misunderstanding your patch) Greetings, Joachim -- Joachim "nomeata" Breitner mail: mail@joachim-breitner.de | ICQ# 74513189 | GPG-Key: 4743206C JID: nomeata@joachim-breitner.de | http://www.joachim-breitner.de/ Debian Developer: nomeata@debian.org

Joachim Breitner writes:
I didn’t try it, because at the moment I don’t have a second screen, but from what I read, I’m unsure if it’s a good idea.
Not having windows that are not on the current workspace show up in window lists is a bad idea, as more than just a workspace switcher relies on that (window lists, and even unrelated tools like my arbtt, need to have all windows in _NET_CLIENT_LIST).
(but maybe I’m misunderstanding your patch)
I don't mess with _NET_CLIENT_LIST, it still reports all windows. If you have two monitors, and they're pointing at workspaces 1 and 2, with 1 being active and 2 merely visible, my patch reports the windows on 1 as belonging to workspace 1 (the active workspace) and the windows on 2 as belonging to workspace 2. The previous behaviour had all visible windows (those from both 1 and 2) reported as being on workspace 1, so that they'd all be on the active workspace (since EWMH has no concept of two workspaces being visible at once)

Hi, Am Sonntag, den 11.10.2009, 11:59 -0600 schrieb Justin Bogner:
Joachim Breitner writes:
I didn’t try it, because at the moment I don’t have a second screen, but from what I read, I’m unsure if it’s a good idea.
Not having windows that are not on the current workspace show up in window lists is a bad idea, as more than just a workspace switcher relies on that (window lists, and even unrelated tools like my arbtt, need to have all windows in _NET_CLIENT_LIST).
(but maybe I’m misunderstanding your patch)
I don't mess with _NET_CLIENT_LIST, it still reports all windows.
If you have two monitors, and they're pointing at workspaces 1 and 2, with 1 being active and 2 merely visible, my patch reports the windows on 1 as belonging to workspace 1 (the active workspace) and the windows on 2 as belonging to workspace 2.
The previous behaviour had all visible windows (those from both 1 and 2) reported as being on workspace 1, so that they'd all be on the active workspace (since EWMH has no concept of two workspaces being visible at once)
I vaguely remember fighting with this issue when writing the EWMH module. I think I had a reason for choosing this variant, but I don’t remember it any more. Given that I don’t use multiple screens at the moment, I won’t object this patch and leave the discussions to those who do have several monitors. Greetings, Joachim -- Joachim "nomeata" Breitner mail: mail@joachim-breitner.de | ICQ# 74513189 | GPG-Key: 4743206C JID: nomeata@joachim-breitner.de | http://www.joachim-breitner.de/ Debian Developer: nomeata@debian.org

* On Saturday, October 10 2009, Justin Bogner wrote:
I think this patch improves EWMH + xinerama. What do you think?
I think the current behavior is marginally more useful since it makes the other visible workspace easily found for moving windows around. With your patch, it looks like gnome-panel never displays the windows on two xmonad workspaces in one pager workspace. Would it be posible to convince the pager not to waste that space? -- Adam

Adam Vogt
* On Saturday, October 10 2009, Justin Bogner wrote:
I think this patch improves EWMH + xinerama. What do you think?
I think the current behavior is marginally more useful since it makes the other visible workspace easily found for moving windows around.
With your patch, it looks like gnome-panel never displays the windows on two xmonad workspaces in one pager workspace. Would it be posible to convince the pager not to waste that space?
I haven't managed to get that to work yet. It might be possible, but it's not easy.
participants (3)
-
Adam Vogt
-
Joachim Breitner
-
Justin Bogner