<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - When I launching the game "A Story of a Band" mouse control stop working in all XWayland applications"
href="https://bugs.freedesktop.org/show_bug.cgi?id=107358#c10">Comment # 10</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - When I launching the game "A Story of a Band" mouse control stop working in all XWayland applications"
href="https://bugs.freedesktop.org/show_bug.cgi?id=107358">bug 107358</a>
from <span class="vcard"><a class="email" href="mailto:fourdan@xfce.org" title="Olivier Fourdan <fourdan@xfce.org>"> <span class="fn">Olivier Fourdan</span></a>
</span></b>
<pre>(In reply to mikhail.v.gavrilov from <a href="show_bug.cgi?id=107358#c7">comment #7</a>)
<span class="quote">> (In reply to Olivier Fourdan from <a href="show_bug.cgi?id=107358#c6">comment #6</a>)
> > To demonstrate that, I attached a very simple reproducer written in gtk2.
> >
> > If you compile and run that reproducer on Wayland/Xwayland, it will bejave
> > the same, no other X11 client wil lreceive pointer events as long as the
> > client is running, whereas other Wayland native clients will remain
> > unaffected.
> >
> > In other words, this is normal.
>
> You even overdid it, the game did not block the keyboard.
> But I admit you were able to recreate the same effect.</span >
I did not overdo it, I just reused an existing bit of code I use elsewhere to
demonstate the effects of a active grab on a device on X11 (either keyboard or
pointer).
<span class="quote">> I do not understand why you think this behavior is normal.</span >
It is normal because this is how X11 is designed, this is part of the protocol,
applications can issue an active grab on input devices and block other clients
from receiving input events:
$ man XGrabPointer
The XGrabPointer function actively grabs control of the pointer and
returns GrabSuccess if the grab was successful. Further pointer events
are reported only to the grabbing client. XGrabPointer overrides any
active pointer grab by this client. If owner_events is False, all gen‐
erated pointer events are reported with respect to grab_window and are
reported only if selected by event_mask. If owner_events is True and
if a generated pointer event would normally be reported to this client,
it is reported as usual. Otherwise, the event is reported with respect
to the grab_window and is reported only if selected by event_mask. For
either value of owner_events, unreported events are discarded.
<span class="quote">> In a multitasking environment, when one application can influence another it
> is perceived as a system vulnerability.</span >
That's why we came up with Wayland.
<span class="quote">> It also opens up a large field of activity of extortionists software and
> simply poorly written software, which will create the illusion that the
> computer is frozen.</span >
Again, works as designed/intended.
<span class="quote">> When I studing several year ago Wayland architecture I thought that for each
> X11 application would used separate XWayland client this allow fix all
> XServer problems in modern systems. At that time it was a problem with
> Remmina which sometimes did not want to give away control of mouse and
> keyboard and I had to kill XServer every time through the console.</span >
No, we do not spawn an Xwayland server per X11 client, that would break
inter-client communication between X11 clients, things like copy/paste, drag
and drop etc. would not work with such a design.
<span class="quote">> I think this should be fixed in Wayland environment for all type of
> applications.</span >
Sure, this is why we have Wayland, but these applcations you mention are not
using Wayland, thery are still using X11.
If you want this to be fixed, please ask the developers of all these
applications to port their application to Wayland instead.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>