feat(obj) Backport keypad and encoder scrolling from v7 lv_page to v8 lv_obj (#2390)

* support scrolling scrollable but non-editable objects thru keypad / encoder

* update doc on `lv_obj` scrolling behavior by arrow keys
This commit is contained in:
Yin Zhong
2021-07-23 05:55:13 -07:00
committed by GitHub
parent 6d8799fbbf
commit 1f255b7a0c
4 changed files with 46 additions and 17 deletions

View File

@@ -166,7 +166,9 @@ By default, the objects can be clicked only on their coordinates, however, this
Learn more about [Events](/overview/event).
## Keys
If `LV_OBJ_FLAG_CHECKABLE` is enabled `LV_KEY_RIGHT` and `LV_KEY_UP` make the object checked, and `LV_KEY_LEFT` and `LV_KEY_DOWN` make it unchecked.
If `LV_OBJ_FLAG_CHECKABLE` is enabled, `LV_KEY_RIGHT` and `LV_KEY_UP` make the object checked, and `LV_KEY_LEFT` and `LV_KEY_DOWN` make it unchecked.
If `LV_OBJ_FLAG_SCROLLABLE` is enabled, but the object is not editable (as declared by the widget class), the arrow keys (`LV_KEY_UP`, `LV_KEY_DOWN`, `LV_KEY_LEFT`, `LV_KEY_RIGHT`) scroll the object. If the object can only scroll vertically, `LV_KEY_LEFT` and `LV_KEY_RIGHT` will scroll up/down instead, making it compatible with an encoder input device. See [Input devices overview](/overview/indev) for more on encoder behaviors and the edit mode.
Learn more about [Keys](/overview/indev).