e_comp_object: defaultly use evas_object for input event instead image object 55/256355/3 accepted/tizen/6.0/unified/20210406.145104 submit/tizen_6.0/20210406.034501
authorChangyeon Lee <cyeon.lee@samsung.com>
Tue, 30 Mar 2021 09:40:18 +0000 (18:40 +0900)
committerDoyoun Kang <doyoun.kang@samsung.com>
Fri, 2 Apr 2021 03:24:52 +0000 (03:24 +0000)
commit9f6f836ba20b0632e9589c9887c540927765f24b
treeb9c3d9ae0f8feffb3cb23d7fc6bc05c7c0d366fa
parent6c2f657e6df9b8227a044dfa9c7d00b8e9b06885
e_comp_object: defaultly use evas_object for input event instead image object

map_input_object is shown for avoiding the event transform by evas_map
which is applied at effect object.

when comp_object is set by unredirect, map_input_object is
hidden even if buffer of client is rotated acoording to screen rotation.

so if client is set by redirect, map_input_object receive input event
and if client is set by unredirect, cw->obj receive input event.

it doesn't have a problem in normal cases because the size of
map_input_object(redirect) and cw->obj(unredirect) are the same size
of window(ec size).

but it has a problem in case of down/up input event

1. down event is signaled and cw->obj receive event
   comp_object is unredirect and size of cw->obj is same window size
   ex) widow size (1080x1920), cw->obj (1080x1920)

2. comp_object is redirect and map_input_object is shown and
   cw->obj is resized according to buffer size(rotated).
   ex) window size (1080x1920) cw->obj (1920x1080)
       map_input_object(1080x1920)

3. up event is signaled but cw->obj receive event
   so evas send input coordinate with current cw->obj size
   because evas can't change evas_object which is received between down
   and up event

it causes the wrong coordinate of input event is sent to the client.
so map_input_object is renamed default_input_object and
default_input_object use for input event instead image object(cw->obj).

Change-Id: Ia2b74fbfd8b891a24b875b3dae7a2c6318deac74
src/bin/e_comp_object.c