summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@samsung.com>2019-03-04 13:37:42 -0500
committerMike Blumenkrantz <zmike@samsung.com>2019-03-04 13:37:42 -0500
commit7b6878bb288d8464cd76482159a03a24968f21c4 (patch)
treecd1576947bce29fdd0d27e862eacc375569d720b /src
parenta6adae99433c676c12b9403aa372f70b7444479b (diff)
efl_ui_win: fix position,changed eventing
Summary: the eo event needs to send position data and manually call the old smart callback Depends on D8086 Reviewers: cedric Reviewed By: cedric Subscribers: cedric, #reviewers, #committers Tags: #efl_api Differential Revision: https://phab.enlightenment.org/D8087
Diffstat (limited to 'src')
-rw-r--r--src/lib/elementary/efl_ui_win.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index 0b6fafd966..3c705531e3 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -989,14 +989,16 @@ _elm_win_move(Ecore_Evas *ee)
989 Efl_Ui_Win_Data *sd = _elm_win_associate_get(ee); 989 Efl_Ui_Win_Data *sd = _elm_win_associate_get(ee);
990 int x, y; 990 int x, y;
991 Eo *obj; 991 Eo *obj;
992 Eina_Position2D pos;
992 993
993 if (!sd) return; 994 if (!sd) return;
994 obj = sd->obj; 995 obj = sd->obj;
995 996
996 ecore_evas_geometry_get(ee, &x, &y, NULL, NULL); 997 ecore_evas_geometry_get(ee, &x, &y, NULL, NULL);
997 sd->screen.x = x; 998 pos.x = sd->screen.x = x;
998 sd->screen.y = y; 999 pos.y = sd->screen.y = y;
999 efl_event_callback_legacy_call(sd->obj, EFL_GFX_ENTITY_EVENT_POSITION_CHANGED, NULL); 1000 efl_event_callback_call(sd->obj, EFL_GFX_ENTITY_EVENT_POSITION_CHANGED, &pos);
1001 evas_object_smart_callback_call(sd->obj, "move", NULL);
1000 ELM_WIN_DATA_ALIVE_CHECK(obj, sd); 1002 ELM_WIN_DATA_ALIVE_CHECK(obj, sd);
1001 evas_nochange_push(evas_object_evas_get(sd->obj)); 1003 evas_nochange_push(evas_object_evas_get(sd->obj));
1002 sd->response++; 1004 sd->response++;
@@ -3134,7 +3136,8 @@ _efl_ui_win_efl_gfx_entity_position_set(Eo *obj, Efl_Ui_Win_Data *sd, Eina_Posit
3134 { 3136 {
3135 sd->screen.x = pos.x; 3137 sd->screen.x = pos.x;
3136 sd->screen.y = pos.y; 3138 sd->screen.y = pos.y;
3137 efl_event_callback_legacy_call(obj, EFL_GFX_ENTITY_EVENT_POSITION_CHANGED, NULL); 3139 efl_event_callback_call(obj, EFL_GFX_ENTITY_EVENT_POSITION_CHANGED, &pos);
3140 evas_object_smart_callback_call(obj, "move", NULL);
3138 } 3141 }
3139 goto super_skip; 3142 goto super_skip;
3140 } 3143 }
@@ -3156,7 +3159,8 @@ _efl_ui_win_efl_gfx_entity_position_set(Eo *obj, Efl_Ui_Win_Data *sd, Eina_Posit
3156 { 3159 {
3157 sd->screen.x = pos.x; 3160 sd->screen.x = pos.x;
3158 sd->screen.y = pos.y; 3161 sd->screen.y = pos.y;
3159 efl_event_callback_legacy_call(obj, EFL_GFX_ENTITY_EVENT_POSITION_CHANGED, NULL); 3162 efl_event_callback_call(obj, EFL_GFX_ENTITY_EVENT_POSITION_CHANGED, &pos);
3163 evas_object_smart_callback_call(obj, "move", NULL);
3160 } 3164 }
3161 if (sd->frame_obj) 3165 if (sd->frame_obj)
3162 { 3166 {