[mutter/wip/carlosg/crossings: 5/11] wayland: Avoid repick_for_event() call
- From: Marge Bot <marge-bot src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter/wip/carlosg/crossings: 5/11] wayland: Avoid repick_for_event() call
- Date: Wed, 23 Dec 2020 12:13:00 +0000 (UTC)
commit 717e5d969a301fafd0eada640371dc260da70cc2
Author: Carlos Garnacho <carlosg gnome org>
Date: Tue Dec 22 17:41:09 2020 +0100
wayland: Avoid repick_for_event() call
We can also tell the stage to emit crossing events, which will be
handled in place (i.e. not queued), and yield the same result.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1654>
src/wayland/meta-wayland-pointer.c | 12 +++---------
1 file changed, 3 insertions(+), 9 deletions(-)
---
diff --git a/src/wayland/meta-wayland-pointer.c b/src/wayland/meta-wayland-pointer.c
index 1f671829fd..71b3dbb150 100644
--- a/src/wayland/meta-wayland-pointer.c
+++ b/src/wayland/meta-wayland-pointer.c
@@ -581,17 +581,13 @@ static void
repick_for_event (MetaWaylandPointer *pointer,
const ClutterEvent *for_event)
{
- MetaBackend *backend = meta_get_backend ();
- ClutterStage *stage = CLUTTER_STAGE (meta_backend_get_stage (backend));
ClutterActor *actor;
MetaWaylandSurface *surface;
- if (for_event && clutter_event_type (for_event) == CLUTTER_LEAVE)
+ if (clutter_event_type (for_event) == CLUTTER_LEAVE)
actor = clutter_event_get_related (for_event);
- else if (for_event)
- actor = clutter_event_get_source (for_event);
else
- actor = clutter_stage_get_device_actor (stage, pointer->device, NULL);
+ actor = clutter_event_get_source (for_event);
if (META_IS_SURFACE_ACTOR_WAYLAND (actor))
{
@@ -1031,9 +1027,7 @@ meta_wayland_pointer_repick (MetaWaylandPointer *pointer)
point,
CLUTTER_CURRENT_TIME,
new_actor,
- FALSE);
-
- repick_for_event (pointer, NULL);
+ TRUE);
}
void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]