From d485a116d34ac03adee360f4cddea5f99a969e12 Mon Sep 17 00:00:00 2001 From: Chris Michael Date: Mon, 30 Jan 2017 12:37:44 -0500 Subject: [PATCH] elementary: Don't hide pointer window on mouse out This patch fixes an issue where pointers would occasionally disappear when running EFL apps in a Wayland compositor. This was occuring because we would hide the pointer window on mouse_out (and thus attach a NULL buffer to the pointer surface), but then when we mouse_in again on the window, it still have a NULL buffer attached to that pointer surface. This patch fixes the issue. ref T4987 @fix Signed-off-by: Chris Michael --- src/lib/elementary/efl_ui_win.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c index f4a7076c25..1d06584e9a 100644 --- a/src/lib/elementary/efl_ui_win.c +++ b/src/lib/elementary/efl_ui_win.c @@ -952,6 +952,9 @@ _elm_win_mouse_in(Ecore_Evas *ee) #ifdef HAVE_ELEMENTARY_WL2 if ((sd->wl.win) && (sd->pointer.ee)) { + _elm_theme_object_set(sd->obj, sd->pointer.obj, + "pointer", "base", "default"); + sd->pointer.visible = EINA_TRUE; ecore_evas_show(sd->pointer.ee); sd->pointer.surf = ecore_wl2_window_surface_get(sd->pointer.win); @@ -969,10 +972,7 @@ _elm_win_mouse_out(Ecore_Evas *ee) #ifdef HAVE_ELEMENTARY_WL2 if ((sd->wl.win) && (sd->pointer.ee)) - { - sd->pointer.visible = EINA_FALSE; - ecore_evas_hide(sd->pointer.ee); - } + sd->pointer.visible = EINA_FALSE; #endif }