--===============0848076649568392245== Content-Type: multipart/alternative; boundary="===============7895093748124819814==" --===============7895093748124819814== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable > On Feb. 29, 2012, 6:01 p.m., Stefano Avallone wrote: > > kwin/tabbox/tabbox.cpp, line 216 > > > > > > Shall I remove this line, too? no, I think this one can stay as it's the last major rule to throw out all = windows which don't want to be shown in the switcher. It's not a check cont= rolled by a config option like the other ones. - Martin ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://git.reviewboard.kde.org/r/104025/#review11029 ----------------------------------------------------------- On Feb. 21, 2012, 3:42 p.m., Stefano Avallone wrote: > = > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://git.reviewboard.kde.org/r/104025/ > ----------------------------------------------------------- > = > (Updated Feb. 21, 2012, 3:42 p.m.) > = > = > Review request for kwin and Martin Gr=C3=A4=C3=9Flin. > = > = > Description > ------- > = > This patch refactors the checks for inclusion of TabBox clients in the cl= ient list. All the checks have been implemented as dropdowns. Quoting Marti= n, the checks are: > = > * Desktop: Windows From All Desktops, Windows From Current Desktop > * Activities: Windows From All Activities, Windows From Current Activity > * Applications: All Windows From All Applications, Only one Window per > Application, Only all Windows of Current Application > * Minimized: Ignore, Minimized windows only, Exclude Minimized Windows > * Desktop: Don't Show Desktop, Show Desktop to minimize all windows > * Multi Screen: Ignore, Only Windows from current screen, Exclude windows= from > current screen > = > Each of such checks has been implemented as a private method of TabBoxHan= dlerImpl. They are called by TabBoxHandlerImpl::clientToAddToList, while Cl= ientModel::createClientList only handles the switching mode (FocusChain/Sta= ckingOrder) and whether a desktop client should be added to the list to min= imize all the clients. In TabBoxHandlerImpl::clientToAddToList, I left the = following line: > = > addClient =3D addClient && current->wantsTabFocus() && !current->skipSwit= cher(); > = > as I am not sure if it is needed or not. > = > The UI is a bit crowded now, but I would leave a UI refactor for a future= commit. > = > = > Diffs > ----- > = > kwin/kcmkwin/kwintabbox/main.cpp 3f047d1 = > kwin/kcmkwin/kwintabbox/main.ui a316b28 = > kwin/tabbox/clientmodel.cpp 4ca7fef = > kwin/tabbox/declarative.cpp dd4f242 = > kwin/tabbox/tabbox.h 6d4e2b2 = > kwin/tabbox/tabbox.cpp 3f26397 = > kwin/tabbox/tabboxconfig.h 32facde = > kwin/tabbox/tabboxconfig.cpp 9feaa16 = > kwin/tabbox/tabboxhandler.h 27b475a = > = > Diff: http://git.reviewboard.kde.org/r/104025/diff/ > = > = > Testing > ------- > = > Desktop, Minimized, Show desktop: work fine > = > Multi Screen: could not test, as I do not have a multi screen configurati= on > = > Activities: works fine. However, when using the present windows effect as= task switcher, the previews of the windows on other activities are not vis= ible. They are actually there, because moving the mouse to the area where t= hey (presumably) are makes the close button appear and allows to activate t= hem. When using a layout based switcher, thumbnails of windows on other act= ivities are correctly shown. So, I guess, it is something unrelated to the = checks I made. > = > Applications: the new case I implemented is "Only all Windows of Current = Application" (others work fine). I tested it with KDevelop+About KDE+About = Kdevelop, and it works fine. It doesn't work with the three windows opened = by Gimp, in the sense that only one window (instead of all of them) is show= n. Not sure if my check is incorrect, here. > = > = > Screenshots > ----------- > = > Modified UI > http://git.reviewboard.kde.org/r/104025/s/438/ > = > = > Thanks, > = > Stefano Avallone > = > --===============7895093748124819814== Content-Type: text/html; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable
This is an automatically generated e-mail. To reply, visit: http://git.revie= wboard.kde.org/r/104025/

On February 29th, 2012, 6:01 p.m., Stefano = Avallone wrote:

= = =
kwin/tabbox/tabbox.cpp (Diff revision 1)
TabBoxClient* TabBoxHandlerImpl::activeClient() const
137
    addClient =3D addClient =
&& current->wantsTabFocus() && !current->skipSwitcher=
();
214
    addClient =3D addClient =
&& current->wantsTabFocus() && !current->skipSwitcher=
();
Shall I r=
emove this line, too?
no, I think this one can stay as it's the last major rule to thr=
ow out all windows which don't want to be shown in the switcher. It'=
;s not a check controlled by a config option like the other ones.

- Martin


On February 21st, 2012, 3:42 p.m., Stefano Avallone wrote:

Review request for kwin and Martin Gr=C3=A4=C3=9Flin.
By Stefano Avallone.

Updated Feb. 21, 2012, 3:42 p.m.

Descripti= on

This patch refactors the checks for inclusion of TabBox clie=
nts in the client list. All the checks have been implemented as dropdowns. =
Quoting Martin, the checks are:

* Desktop: Windows From All Desktops, Windows From Current Desktop
* Activities: Windows From All Activities, Windows From Current Activity
* Applications: All Windows From All Applications, Only one Window per
Application, Only all Windows of Current Application
* Minimized: Ignore, Minimized windows only, Exclude Minimized Windows
* Desktop: Don't Show Desktop, Show Desktop to minimize all windows
* Multi Screen: Ignore, Only Windows from current screen, Exclude windows f=
rom
current screen

Each of such checks has been implemented as a private method of TabBoxHandl=
erImpl. They are called by TabBoxHandlerImpl::clientToAddToList, while Clie=
ntModel::createClientList only handles the switching mode (FocusChain/Stack=
ingOrder) and whether a desktop client should be added to the list to minim=
ize all the clients. In TabBoxHandlerImpl::clientToAddToList, I left the fo=
llowing line:

addClient =3D addClient && current->wantsTabFocus() && !=
current->skipSwitcher();

as I am not sure if it is needed or not.

The UI is a bit crowded now, but I would leave a UI refactor for a future c=
ommit.

Testing <= /h1>
Desktop, Minimized, Show desktop: work fine

Multi Screen: could not test, as I do not have a multi screen configuration

Activities: works fine. However, when using the present windows effect as t=
ask switcher, the previews of the windows on other activities are not visib=
le. They are actually there, because moving the mouse to the area where the=
y (presumably) are makes the close button appear and allows to activate the=
m. When using a layout based switcher, thumbnails of windows on other activ=
ities are correctly shown. So, I guess, it is something unrelated to the ch=
ecks I made.

Applications: the new case I implemented is "Only all Windows of Curre=
nt Application" (others work fine). I tested it with KDevelop+About KD=
E+About Kdevelop, and it works fine. It doesn't work with the three win=
dows opened by Gimp, in the sense that only one window (instead of all of t=
hem) is shown. Not sure if my check is incorrect, here.

Diffs=

  • kwin/kcmkwin/kwintabbox/main.cpp (3f047d1)=
  • kwin/kcmkwin/kwintabbox/main.ui (a316b28)<= /span>
  • kwin/tabbox/clientmodel.cpp (4ca7fef)
  • kwin/tabbox/declarative.cpp (dd4f242)
  • kwin/tabbox/tabbox.h (6d4e2b2)
  • kwin/tabbox/tabbox.cpp (3f26397)
  • kwin/tabbox/tabboxconfig.h (32facde)
  • kwin/tabbox/tabboxconfig.cpp (9feaa16)
  • kwin/tabbox/tabboxhandler.h (27b475a)

View Diff

Screensho= ts

3D"Modified
--===============7895093748124819814==-- --===============0848076649568392245== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ kwin mailing list kwin@kde.org https://mail.kde.org/mailman/listinfo/kwin --===============0848076649568392245==--