Wayland touch doubt?

zhangyang zhangyang-0206 at 163.com
Thu Dec 14 21:21:22 EST 2017

Hi Emre:
Thanks for your answer. But I still doubt that my  app 3 is a simple opengl demo, and I remove all touch listener in my code, also I did not set any input region in code. Why the touch events can't go through it to app 1(hmi) ?

Could you please check the code? Thank you!

At 2017-12-14 15:09:54, "Ucan, Emre (ADITG/ESB)" <eucan at de.adit-jv.com> wrote:
>Compositor do not know if applications add touch listener or not. Compositor picks the foremost surface on the touch coordination. Compositor also check input region of the surface.
>If the coordinates are in the input region of the picked surface, compositor sends touch event to the application. If an application does not set any input region for its surface, the input region is as big as the surface.
>Therefore, it is normal that application 2,3 captures touch events. It might be that application 4 is setting its input region as NULL. Therefore, it is not getting any touch events. Then, compositor picks the next surface which is the hmi surface.
>All these behavior is not related to ivi-input protocol. It is standard behavior of wayland protocol.
>Best regards
>Emre Ucan
>Engineering Software Base (ADITG/ESB)
>Tel. +49 5121 49 6937
>> -----Original Message-----
>> From: genivi-ivi-layer-management [mailto:genivi-ivi-layer-management-
>> bounces at lists.genivi.org] On Behalf Of zhangyang
>> Sent: Donnerstag, 14. Dezember 2017 07:12
>> To: genivi-layer
>> Subject: Wayland touch doubt?
>> Hi team:
>>   I study wayland IVI extension, and have a question about ivi input, as the IVI
>> Extension Design said:
>> ivi-input is enabled when ivi-input.so is added after ivi-controll.so in
>> weston.ini. Without ivi-input, input handling is the same as normal desktop
>> style; a top focused surface will be received when input event.
>> I don't overwrite any input logic, just use the default input.  I have 4 program
>> here:
>> 1. program 1,  HMI(full screen),  runs in surface id= 100
>> 2. program 2, a qt demo(not full screen),  runs in surface id=101
>> 3. program 3, a simple opengl demo(not full screen), does not add any
>> wayland touch listener, runs in surface id=102
>> 4. program 4, a video demo(not full screen), use gst launch it : gst-launch-1.0
>> filesrc location=/data/hmi/data/media/video/video3.mp4 ! decodebin !
>> videoconvert ! waylandsink, and it's surface id=103
>> The render order is 100,101,102,103, surface 101~103 are not full screen, they
>> don't overlap each other. And surface 101~103 are over HMI. The touch logic
>> result seems strange:
>> program 2,3 can capture touch events so that HMI area under them don't get
>> any touch events,  but the gst video demo(surface 103) do not capture touch
>> events, and influence the HMI area under it.
>> Could any one explain this result? Thank you!
>> Best Regards!
>> Zhang, yang
>> Yanfeng Visteon Electronics Technology (Shanghai) Co. Ltd.
>> _______________________________________________
>> genivi-ivi-layer-management mailing list
>> genivi-ivi-layer-management at lists.genivi.org
>> https://lists.genivi.org/mailman/listinfo/genivi-ivi-layer-management
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: vwayland.cpp
URL: <http://lists.genivi.org/pipermail/genivi-ivi-layer-management_lists.genivi.org/attachments/20171215/25eb795f/attachment.cpp>

More information about the genivi-ivi-layer-management mailing list