e_comp_wl: send touch cancel event when touch is pressed before map apply 21/217821/3
authorjeon <jhyuni.kang@samsung.com>
Tue, 18 Dec 2018 08:11:26 +0000 (17:11 +0900)
committerSooChan Lim <sc1.lim@samsung.com>
Wed, 20 Nov 2019 10:32:37 +0000 (10:32 +0000)
evas_object which is received touch event is changed when map is applied.
(frame -> map_input_obj)
but if touch is pressed, evas can't change evas_object which is recevied
touch event. so need touch cancel event.

Change-Id: Ic2e023e7dd4a8213a4a0333893377a05eab2cf09

src/bin/e_comp_wl.c

index 9c09c5d720ec136f732ee836a4371dfff4d1e33f..12ff69e696c7dcc4c94ce1c6ea9ea28e917bf6f2 100644 (file)
@@ -2422,7 +2422,12 @@ _e_comp_wl_surface_state_commit(E_Client *ec, E_Comp_Wl_Surface_State *state)
      }
 
    if (ec->comp_data->scaler.buffer_viewport.changed)
-     e_comp_wl_map_apply(ec);
+     {
+        if (e_comp_wl->touch.pressed)
+          e_comp_wl_touch_cancel();
+
+        e_comp_wl_map_apply(ec);
+     }
 
    /* resize transform object */
    if (ec->transformed)