From kwin Tue Mar 22 19:16:27 2011 From: =?utf-8?q?Thomas_L=C3=BCbking?= Date: Tue, 22 Mar 2011 19:16:27 +0000 To: kwin Subject: Re: Review Request: Add Rule/Property based composite blocking Message-Id: <20110322191627.29363.62284 () vidsolbach ! de> X-MARC-Message: https://marc.info/?l=kwin&m=130082152216721 MIME-Version: 1 Content-Type: multipart/mixed; boundary="--===============0355638546==" --===============0355638546== Content-Type: multipart/alternative; boundary="===============1021040845911531364==" --===============1021040845911531364== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://git.reviewboard.kde.org/r/100893/ ----------------------------------------------------------- (Updated March 22, 2011, 7:16 p.m.) Review request for kwin. Changes ------- - function rename - rebase upon netwm implementation in https://git.reviewboard.kde.org/r/100= 921/ - actually support property withdrawing ;-) - added !readProperty handling. remains unused until we find a way to handl= e this conditionally (eg. fullscreen config in the rules or whatever) Summary ------- Allows windows (or users via the rule system) to block compositing while th= ey're present. The user still can resume and re-suspend compositing at any time (but if it= has originally been suspended for a blocking client it will be resumed the= moment the last blocking client disappears) Outstanding issue is that the rules to not allow to apply by fullscreen mod= e. No real idea how we should handle this (add to rules globally or do some ru= le specific) Diffs (updated) ----- kwin/atoms.h 7d5752c = kwin/atoms.cpp 5e93b2a = kwin/client.h 0d479a0 = kwin/client.cpp ec60bde = kwin/composite.cpp 6783d32 = kwin/events.cpp 05cf864 = kwin/kcmkwin/kwinrules/ruleswidget.h ca44bf2 = kwin/kcmkwin/kwinrules/ruleswidget.cpp f9fc407 = kwin/kcmkwin/kwinrules/ruleswidgetbase.ui 74ac56b = kwin/manage.cpp 135a016 = kwin/rules.h 87b2055 = kwin/rules.cpp 9e4136a = kwin/workspace.h 3f6ad49 = kwin/workspace.cpp 3c77511 = Diff: http://git.reviewboard.kde.org/r/100893/diff Testing ------- Rule based & "xprop -f _KDE_NET_WM_BLOCK_COMPOSITING 32a -set _KDE_NET_WM_B= LOCK_COMPOSITING 1" No client internal property setting tested (so far) but it should work as w= ell... ;-) Thanks, Thomas --===============1021040845911531364== 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/100893/

Review request for kwin.
By Thomas L=C3=BCbking.

Updated March 22, 2011, 7:16 p.m.

Changes
- function rename
- rebase upon netwm implementation in https://git.reviewboard.kde.org/r/100=
921/
- actually support property withdrawing ;-)
- added !readProperty handling. remains unused until we find a way to handl=
e this conditionally (eg. fullscreen config in the rules or whatever)

Descripti= on

Allows windows (or users via the rule system) to block compo=
siting while they're present.
The user still can resume and re-suspend compositing at any time (but if it=
 has originally been suspended for a blocking client it will be resumed the=
 moment the last blocking client disappears)

Outstanding issue is that the rules to not allow to apply by fullscreen mod=
e.
No real idea how we should handle this (add to rules globally or do some ru=
le specific)

Testing <= /h1>
Rule based & "xprop -f _KDE_NET_WM_BLOCK_COMPOSITIN=
G 32a -set _KDE_NET_WM_BLOCK_COMPOSITING 1"
No client internal property setting tested (so far) but it should work as w=
ell... ;-)

Diffs= (updated)

  • kwin/atoms.h (7d5752c)
  • kwin/atoms.cpp (5e93b2a)
  • kwin/client.h (0d479a0)
  • kwin/client.cpp (ec60bde)
  • kwin/composite.cpp (6783d32)
  • kwin/events.cpp (05cf864)
  • kwin/kcmkwin/kwinrules/ruleswidget.h (ca44= bf2)
  • kwin/kcmkwin/kwinrules/ruleswidget.cpp (f9= fc407)
  • kwin/kcmkwin/kwinrules/ruleswidgetbase.ui = (74ac56b)
  • kwin/manage.cpp (135a016)
  • kwin/rules.h (87b2055)
  • kwin/rules.cpp (9e4136a)
  • kwin/workspace.h (3f6ad49)
  • kwin/workspace.cpp (3c77511)

View Diff

--===============1021040845911531364==-- --===============0355638546== 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 --===============0355638546==--