<div dir="ltr">Martin, Thomas,<div><br></div><div>Is the implementation of InputGuard at <a href="https://github.com/luebking/qarma/commit/b568dd14d6e1f661791c4d67245c614f1dc1986f">https://github.com/luebking/qarma/commit/b568dd14d6e1f661791c4d67245c614f1dc1986f</a> with <a href="https://github.com/luebking/qarma/commit/3199c0a9810ed8f792b415e890425be8f2e8034a">https://github.com/luebking/qarma/commit/3199c0a9810ed8f792b415e890425be8f2e8034a</a> complete then? should we copy that into kwidgetsaddons and use it in kpassworddialog? If so I'll do that and post a review request, I don't quite follow all the discussion on this thread so wanted to be sure that implementation is complete before doing so.</div><div><br></div><div>thanks,</div><div>Jeremy</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Dec 12, 2014 at 2:56 PM, Martin Gräßlin <span dir="ltr"><<a href="mailto:mgraesslin@kde.org" target="_blank">mgraesslin@kde.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Friday 12 December 2014 16:11:25 Thomas Lübking wrote:<br>
> On Freitag, 12. Dezember 2014 08:00:45 CEST, Martin Gräßlin wrote:<br>
> > I'd suggest to do a platform check as on Wayland it cannot work<br>
> > (grab keyboard fails).<br>
><br>
> You're certainly right in that the guarding is entirely superfluous on<br>
> wayland, but grabbing still "works". Despite the platform window<br>
> ::setKeyboardGrabEnabled() returns false for wayland, QWidget simply<br>
> ignores that and assigns the grabber.<br>
<br>
</span>oh that's much better than I thought. I only knew that the QPA prints out<br>
warnings like "not supported" so I expected that code would just break.<br>
<span class=""><br>
><br>
> What's worse: looking up the Qt code, QWidget only maintains the grabber as<br>
> static variable, the grabbing state is never re-tested.<br>
><br>
> Eeeewww... this is gonna be more complex, I fear.<br>
<br>
</span>Maybe one could say that misconfiguring the X-Server is out of scope. So if<br>
it's grabbed it's assumed to stay grabbed.<br>
<span class=""><br>
><br>
> I wonder whether the grabbing state can actually be tested except by<br>
> approaching a grab from a sidearm process. In doubt, the only possible<br>
> hardening would be to continuously - and the only test whether it worked<br>
> would be to invoke QWindow::setMouseGrabEnabled(bool grab) as well.<br>
<br>
</span>QWindow::setMouseGrabEnabled should be fine. The QXcbWindow implementation<br>
looks properly to me, like actually checking whether the grab succeeded.<br>
<div class="HOEnZb"><div class="h5"><br>
><br>
> Stay tuned ;-)<br>
><br>
> Cheers,<br>
> Thomas<br>
</div></div></blockquote></div><br></div>