wayland: do not explicitly focus xdg_popup

The keyboard focus semantics for non-grabbing xdg_shell v6 popups is
pretty undefined.

Same applies for subsurfaces, but in practice, subsurfaces never receive
keyboard focus, so it makes sense to do the same for non-grabbing
popups.

https://bugzilla.gnome.org/show_bug.cgi?id=773210
This commit is contained in:
Olivier Fourdan 2016-10-25 09:14:12 +02:00
parent 998d921d41
commit 4295fdb892

View File

@ -117,6 +117,20 @@ static void
meta_window_wayland_focus (MetaWindow *window,
guint32 timestamp)
{
MetaWaylandSurface *surface = window->surface;
MetaWaylandSurfaceRoleShellSurface *shell_surface_role =
META_WAYLAND_SURFACE_ROLE_SHELL_SURFACE (surface->role);
/* The keyboard focus semantics for non-grabbing zxdg_shell_v6 popups
* is pretty undefined. Same applies for subsurfaces, but in practice,
* subsurfaces never receive keyboard focus, so it makes sense to
* do the same for non-grabbing popups.
*
* See https://bugzilla.gnome.org/show_bug.cgi?id=771694#c24
*/
if (META_IS_WAYLAND_XDG_POPUP (shell_surface_role))
return;
meta_display_set_input_focus_window (window->display,
window,
FALSE,