Bug 171192 - Window specific settings to skip Alt+Tab
Summary: Window specific settings to skip Alt+Tab
Status: RESOLVED FIXED
Alias: None
Product: kwin
Classification: Plasma
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Unspecified
: LO normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
: 198356 225715 (view as bug list)
Depends on:
Blocks:
 
Reported: 2008-09-17 04:13 UTC by Michael Liddle
Modified: 2012-02-27 20:16 UTC (History)
8 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
Patch to correct (836 bytes, patch)
2010-06-12 09:29 UTC, Jonathan Marten
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Liddle 2008-09-17 04:13:24 UTC
Version:            (using Devel)
Installed from:    Compiled sources

In the old (3.5) behaviour was that having these two options set would also cause the window to not appear in the alt-tab list. (I'm not sure which of the two settings would have cased this, though I'd suspect that it was the "taskbar" one as the "pager" is the thing for switching desktops; but I've seen/heard mentions that it's other way around*, so...).

Anyway, this is no longer the case.

So I would request that either:

 1. the old behaviour is reinstated, or
 2. a new option to explicitly exclude from the alt-tab list be added.

I guess my preference would be for 2, as this adds flexibility :)

* If this is the case then I would recommend a renaming of this option, as it is confusing...
Comment 1 S 2008-10-30 08:54:39 UTC
Very annoying bug. 
Can not find a way to workaround it. 
Anyone know how to workaround this bug? 
All my widgets, eye candy apps are shown in task list. very ugly. 
Thanks a lot. 
Comment 2 Andre Woebbeking 2008-11-22 11:45:29 UTC
These windows should also be skipped while switching desktops (CTRL+Tab).
Comment 3 Martin Flöser 2009-06-30 00:16:03 UTC
*** Bug 198356 has been marked as a duplicate of this bug. ***
Comment 4 Sergey Stolyarov 2009-10-11 18:49:04 UTC
Bug is really annoying if you are using GIMP. All It's tool windows are shown in Alt+Tab list, that looks ugly.
Comment 5 Janet 2009-11-14 17:52:31 UTC
I am extremely glad that all GIMP windows appear in that list, would be horrible for me if they wouldn't! Please don't change that behaviour, it's a very helpful feature. An option would be a good idea.
Comment 6 Martin Flöser 2010-02-09 23:16:39 UTC
*** Bug 225715 has been marked as a duplicate of this bug. ***
Comment 7 Jonathan Marten 2010-02-10 09:49:12 UTC
Path to fix attached to bug 225715.
Comment 8 Martin Flöser 2010-05-03 22:00:17 UTC
SVN commit 1122404 by graesslin:

Window specific setting to skip window switchers (tabbox, present windows, desktop grid).
FEATURE: 171192
CCBUG: 179723

 M  +9 -0      client.cpp  
 M  +9 -0      client.h  
 M  +7 -0      effects.cpp  
 M  +2 -0      effects.h  
 M  +2 -2      effects/desktopgrid/desktopgrid.cpp  
 M  +2 -0      effects/presentwindows/presentwindows.cpp  
 M  +5 -0      kcmkwin/kwinrules/ruleswidget.cpp  
 M  +1 -0      kcmkwin/kwinrules/ruleswidget.h  
 M  +103 -80   kcmkwin/kwinrules/ruleswidgetbase.ui  
 M  +7 -1      lib/kwineffects.h  
 M  +2 -0      manage.cpp  
 M  +13 -0     rules.cpp  
 M  +4 -0      rules.h  
 M  +2 -0      sm.cpp  
 M  +1 -0      sm.h  
 M  +1 -1      tabbox.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1122404
Comment 9 Jonathan Marten 2010-06-12 09:28:27 UTC
The previous commit doesn't seem to fix the problem in bug 225715 (skip-pager window not ignored by Alt+Tab).  With current trunk (r1136602), a window with _NET_WM_STATE_SKIP_PAGER set is shown in the Alt+Tab list (have not tried the other window switchers).

This can be corrected by either reapplying the patch from bug 225715, or the following one attached.  Not sure whether setting skip_switcher by default from NET::SkipPager is the right thing to do, but it seems to accord with the intention of skip_pager.
Comment 10 Jonathan Marten 2010-06-12 09:29:33 UTC
Created attachment 47930 [details]
Patch to correct
Comment 11 Martin Flöser 2010-06-12 09:48:42 UTC
We will not add a patch which removes windows with Skip Pager. The TabBox and other Switchers (present windows, desktop grid) are not a pager.

My commit introduced a new window specific rule option which allows the user to create a rule to skip a window from tabbox without introducing a strange feature like hiding windows with skip pager.
Comment 12 Jonathan Marten 2010-06-12 14:42:53 UTC
Regarding comment #11: the tabbox and similar may well not strictly be a pager, but they act in the same way and the criteria for selecting windows to be included in them should therefore be the same.  Certainly according to http://standards.freedesktop.org/wm-spec/wm-spec-1.4.html#id2504750 the tabbox fits the definition of a pager there.

The problem with not considering the tabbox as a pager (in effect, inventing a new concept of a "switcher" only for KWin) is that there is no way for a client to specify by itself that it should be hidden, i.e. there is no _NET_WM_STATE_SKIP_SWITCHER defined or supported.  The user must manually create a KWin rule to match it.  In other words, there is no equivalent of 'kstart --skippager' which will cause the window to be hidden from the tabbox/present/grid.
Comment 13 Martin Flöser 2010-06-12 15:01:19 UTC
On Saturday 12 June 2010 14:42:55 Jonathan Marten wrote:
> Regarding comment #11: the tabbox and similar may well not
> strictly be a pager, but they act in the same way and the criteria for
> selecting windows to be included in them should therefore be the same. 
> Certainly according to
> http://standards.freedesktop.org/wm-spec/wm-spec-1.4.html#id2504750 the
> tabbox fits the definition of a pager there.
I totally disagree. The TabBox does not allow to
* move windows
* minimize
* maximize
* close
* change desktop
* move windows between desktops
The only mentioned functionality of a pager provided by TabBox is activation.

We cannot hide windows with skip pager as those are different concepts. 
Yakuake for example has skip pager set, but it would be wrong to hide it from 
TabBox.
> 
> The problem with not considering the tabbox as a pager (in effect,
> inventing a new concept of a "switcher" only for KWin) is that there is no
> way for a client to specify by itself that it should be hidden, i.e. there
> is no
> _NET_WM_STATE_SKIP_SWITCHER defined or supported.
Yes and that is totally fine. It's out of bound of the client to say that it 
should not be shown in tabbox. There is no valid use case for that. Only 
windows which can't get focus should be hidden from TabBox and that is already 
done. Please see also http://reviewboard.kde.org/r/3800/

This topic has been discussed several times and we provided an acceptable 
solution by making it possible to manually hide windows.
Comment 14 Martin Flöser 2012-02-27 20:16:36 UTC
For all users wanting skip taskbar to be honored by alt+tab: https://git.reviewboard.kde.org/r/104099/