Closed Riksu9000 closed 6 months ago
Build size and comparison to main: | Section | Size | Difference |
---|---|---|---|
text | 406652B | 16B | |
data | 940B | 0B | |
bss | 53568B | 0B |
A major issue I noticed is that the full gesture must happen on a single object. If I drag a sufficient distance, but the drag passes multiple objects, a gesture event will not happen. This happens even if the objects' gesture parent is set to true, which means the object ignores gestures and the parent (screen) should handle them. If we can't find a solution to this issue, we need to keep another gesture handler besides LVGL.
I was investigating issue #1685 and found that it can be fixed by using LVGL gestures.
Communicating hardware gestures to LVGL is tricky, because there's no built in support for it. Using LVGL gestures, we only need the touch coordinates from the touch panel. Following up, OnTouchEvent functions can be replaced by LVGL event handlers.
TODO:
Fix ScreenList swipe behaviorFind a solution to dragging past multiple objects. https://github.com/InfiniTimeOrg/InfiniTime/pull/1686#issuecomment-1465172083lv_conf.h
Relates to #1011 Fixes #1685