diff options
author | Mike Blumenkrantz <zmike@osg.samsung.com> | 2016-06-22 11:17:36 -0400 |
---|---|---|
committer | Mike Blumenkrantz <zmike@osg.samsung.com> | 2016-06-22 11:17:36 -0400 |
commit | 2119a74a5d5e9222ebaaca89a3f546e28bee22b2 (patch) | |
tree | 588449224b6298c784ae029490b3d5906464967c | |
parent | 95b5533f73c32867f259dbcfd3f9e5c1ac659133 (diff) | |
download | efl-2119a74a5d5e9222ebaaca89a3f546e28bee22b2.tar.gz |
elm win: only set wl cursors on mouse in to the window area
in the case of csd regions, canvas mouse in != window mouse in
ref T3819
-rw-r--r-- | src/lib/elementary/efl_ui_win.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c index 320be9a0a2..26876e4d15 100644 --- a/src/lib/elementary/efl_ui_win.c +++ b/src/lib/elementary/efl_ui_win.c @@ -908,7 +908,7 @@ _elm_win_mouse_in(Ecore_Evas *ee) _elm_win_throttle_ok = EINA_TRUE; if (sd->resizing) sd->resizing = EINA_FALSE; #ifdef HAVE_ELEMENTARY_WL2 - if (sd->wl.win) + if (sd->wl.win && (!sd->frame_obj)) ecore_wl2_window_cursor_from_name_set(sd->wl.win, NULL); #endif } @@ -3374,6 +3374,19 @@ static struct _resize_info _border_corner[4] = #endif static void +_elm_win_frame_obj_mouse_in(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) +{ +#ifdef HAVE_ELEMENTARY_WL2 + Efl_Ui_Win_Data *sd = data; + + if (sd->wl.win) + ecore_wl2_window_cursor_from_name_set(sd->wl.win, NULL); +#else + (void)data; +#endif +} + +static void _elm_win_frame_obj_move(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, @@ -3647,6 +3660,8 @@ _elm_win_frame_add(Efl_Ui_Win_Data *sd, const char *style) sd->icon); evas_object_event_callback_add + (sd->frame_obj, EVAS_CALLBACK_MOUSE_IN, _elm_win_frame_obj_mouse_in, sd); + evas_object_event_callback_add (sd->frame_obj, EVAS_CALLBACK_MOVE, _elm_win_frame_obj_move, sd); evas_object_event_callback_add (sd->frame_obj, EVAS_CALLBACK_RESIZE, _elm_win_frame_obj_resize, sd); |