[Wayland-bugs] [Bug 780820] [Wayland] Focused window under application first window
mutter (GNOME Bugzilla)
bugzilla at gnome.org
Wed May 3 09:04:18 UTC 2017
https://bugzilla.gnome.org/show_bug.cgi?id=780820
Olivier Fourdan <ofourdan at redhat.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Component|Backend: Wayland |wayland
Version|3.22.x |3.24.x
Assignee|gtk-bugs at gtk.org |mutter-maint at gnome.bugs
Product|gtk+ |mutter
QA Contact|gtk-bugs at gtk.org |mutter-maint at gnome.bugs
--- Comment #7 from Olivier Fourdan <ofourdan at redhat.com> ---
Moving to mutter.
The newly mapped window is not considered in get_default_focus_window() as
called from meta_stack_get_default_focus_window() because
meta_window_should_be_showing() return FALSE, and this is specific to Wayland
backend because the window has no buffer attached *yet*:
1598 gboolean
1599 meta_window_should_be_showing (MetaWindow *window)
1600 {
1601 #ifdef HAVE_WAYLAND
1602 if (window->client_type == META_WINDOW_CLIENT_TYPE_WAYLAND &&
1603 !meta_wayland_surface_get_buffer (window->surface))
1604 return FALSE;
1605 #endif
1606
1607 /* Windows should be showing if they're located on the
1608 * active workspace and they're showing on their own workspace. */
1609 return (meta_window_located_on_workspace (window,
window->screen->active_workspace) &&
1610 meta_window_showing_on_its_workspace (window));
1611 }
As a result, the old window is focused and raised instead, and when the new
window is eventually mapped, it is focused and not raised in
meta_focus_window().
So we end up with the focused window being placed underneath the non-focused
window.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/wayland-bugs/attachments/20170503/7f28273a/attachment.html>
More information about the wayland-bugs
mailing list