<html>
<head>
<base href="https://bugzilla.gnome.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - [Wayland] menus opened from access keys (mnemonic menu items) hide instantly"
href="https://bugzilla.gnome.org/show_bug.cgi?id=768017#c9">Comment # 9</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - [Wayland] menus opened from access keys (mnemonic menu items) hide instantly"
href="https://bugzilla.gnome.org/show_bug.cgi?id=768017">bug 768017</a>
from <span class="vcard"><a href="page.cgi?id=describeuser.html&login=ofourdan%40redhat.com" title="Olivier Fourdan <ofourdan@redhat.com>"> <span class="fn">Olivier Fourdan</span></a>
</span></b>
<pre>Created <span class=""><a href="attachment.cgi?id=330645&action=diff" name="attach_330645" title="[PATCH] wayland: Use keyboard serial for implicit grab">attachment 330645</a> <a href="attachment.cgi?id=330645&action=edit" title="[PATCH] wayland: Use keyboard serial for implicit grab">[details]</a></span> <a href='review?bug=768017&attachment=330645'>[review]</a>
[PATCH] wayland: Use keyboard serial for implicit grab
An xdg-popup requires a serial that the compositor will compare against
its own serial and will dismiss the popup if it doesn't match.
gtk+ uses either a pointer or touch serial for its helper function
_gdk_wayland_seat_get_last_implicit_grab_serial() but if the menu is
triggered before the user has had any pointer or touch interaction with
the client, using a keyboard shortcut, there is neither pointer nor
touch serial available, and gtk+ will use 0 as the default.
As a result, the compositor will instantly dismiss the xdg-popup. In
this case, gtk+ should use the keyboard serial instead.
Track keyboard serial as well and use the keyboard serial as the value
if there is no newer pointer or touch serial available.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are on the CC list for the bug.</li>
</ul>
</body>
</html>