diff --git a/protocol/xdg-shell.xml b/protocol/xdg-shell.xml index ef755b720..4a1d08aba 100644 --- a/protocol/xdg-shell.xml +++ b/protocol/xdg-shell.xml @@ -249,12 +249,6 @@ ignore it if it doesn't resize, pick a smaller size (to satisfy aspect ratio or resize in steps of NxM pixels). - The edges parameter provides a hint about how the surface - was resized. The client may use this information to decide - how to adjust its content to the new size (e.g. a scrolling - area might adjust its content position to leave the viewable - content unmoved). Valid edge values are from resize_edge enum. - The client is free to dismiss all but the last configure event it received. @@ -391,18 +385,25 @@ - - - The focused_set event is sent when this surface has been - activated. Window decorations should be updated accordingly. + + + The activated_set event is sent when this surface has been + activated, which means that the surface has user attention. + Window decorations should be updated accordingly. You should + not use this event for anything but the style of decorations + you display, use wl_keyboard.enter and wl_keyboard.leave for + determining keyboard focus. - - - The focused_unset event is sent when this surface has been - deactivated, because another surface has been activated. Window - decorations should be updated accordingly. + + + The deactivate event is sent when this surface has been + deactivated, which means that the surface lost user attention. + Window decorations should be updated accordingly. You should + not use this event for anything but the style of decorations + you display, use wl_keyboard.enter and wl_keyboard.leave for + determining keyboard focus. diff --git a/src/wayland/meta-wayland-keyboard.c b/src/wayland/meta-wayland-keyboard.c index 1a02f45c3..963ad2909 100644 --- a/src/wayland/meta-wayland-keyboard.c +++ b/src/wayland/meta-wayland-keyboard.c @@ -543,7 +543,7 @@ meta_wayland_keyboard_set_focus (MetaWaylandKeyboard *keyboard, serial = wl_display_next_serial (display); wl_keyboard_send_leave (resource, serial, keyboard->focus_surface->resource); - meta_wayland_surface_focused_unset (keyboard->focus_surface); + meta_wayland_surface_deactivated (keyboard->focus_surface); } wl_list_remove (&keyboard->focus_resource_listener.link); @@ -584,7 +584,7 @@ meta_wayland_keyboard_set_focus (MetaWaylandKeyboard *keyboard, &keyboard->keys); } - meta_wayland_surface_focused_set (surface); + meta_wayland_surface_activated (surface); keyboard->focus_resource = resource; keyboard->focus_surface = surface; diff --git a/src/wayland/meta-wayland-surface.c b/src/wayland/meta-wayland-surface.c index 62b7d924f..2ae212d9c 100644 --- a/src/wayland/meta-wayland-surface.c +++ b/src/wayland/meta-wayland-surface.c @@ -1508,17 +1508,17 @@ meta_wayland_surface_configure_notify (MetaWaylandSurface *surface, } void -meta_wayland_surface_focused_set (MetaWaylandSurface *surface) +meta_wayland_surface_activated (MetaWaylandSurface *surface) { if (surface->xdg_surface.resource) - xdg_surface_send_focused_set (surface->xdg_surface.resource); + xdg_surface_send_activated (surface->xdg_surface.resource); } void -meta_wayland_surface_focused_unset (MetaWaylandSurface *surface) +meta_wayland_surface_deactivated (MetaWaylandSurface *surface) { if (surface->xdg_surface.resource) - xdg_surface_send_focused_unset (surface->xdg_surface.resource); + xdg_surface_send_deactivated (surface->xdg_surface.resource); } void diff --git a/src/wayland/meta-wayland-surface.h b/src/wayland/meta-wayland-surface.h index 0fafb8c57..8b10b31fb 100644 --- a/src/wayland/meta-wayland-surface.h +++ b/src/wayland/meta-wayland-surface.h @@ -125,8 +125,8 @@ void meta_wayland_surface_configure_notify (MetaWaylandSurface *s int width, int height); -void meta_wayland_surface_focused_set (MetaWaylandSurface *surface); -void meta_wayland_surface_focused_unset (MetaWaylandSurface *surface); +void meta_wayland_surface_activated (MetaWaylandSurface *surface); +void meta_wayland_surface_deactivated (MetaWaylandSurface *surface); void meta_wayland_surface_ping (MetaWaylandSurface *surface, guint32 serial);