[mutter] wayland: do not explicitly focus xdg_popup
- From: Olivier Fourdan <ofourdan src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] wayland: do not explicitly focus xdg_popup
- Date: Thu, 27 Oct 2016 15:22:31 +0000 (UTC)
commit 4295fdb892d4474b68e98aa783b725f99c1a2d3a
Author: Olivier Fourdan <ofourdan redhat com>
Date: Tue Oct 25 09:14:12 2016 +0200
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
src/wayland/meta-window-wayland.c | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
---
diff --git a/src/wayland/meta-window-wayland.c b/src/wayland/meta-window-wayland.c
index a497dec..1e77692 100644
--- a/src/wayland/meta-window-wayland.c
+++ b/src/wayland/meta-window-wayland.c
@@ -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,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]