Hi,
I’ve been using v5.3 for a while in a test project of mine, and have been using lv_indev_set_cursor
to set a cursor object to show the location of the touch for debugging purposed. This worked fine.
Now I upgraded to v6.0 and everything works, as long as I don’t show the cursor. With a cursor object set using lv_indev_set_cursor`, the UI gets completely unresponsive (no events of any kind on any object event handler) - but the cursor itself shows and moves as expected.
I have the same project with SDL2 on my Mac and on the actual target (a OpenWrt MIPS board), the behaviour is the same on both.
Here’s my cursor init code:
evdev_init();
pointer_indev_drv.read_cb = evdev_read;
pointer_indev = lv_indev_drv_register(&pointer_indev_drv);
#if SHOW_MOUSE_CURSOR
lv_obj_t *cursor;
cursor = lv_obj_create(lv_scr_act(), NULL);
lv_obj_set_size(cursor, 24, 24);
static lv_style_t style_round;
lv_style_copy(&style_round, &lv_style_plain);
style_round.body.radius = LV_RADIUS_CIRCLE;
style_round.body.main_color = LV_COLOR_RED;
style_round.body.opa = LV_OPA_COVER;
lv_obj_set_style(cursor, &style_round);
lv_indev_set_cursor(pointer_indev, cursor);
#endif
If I build with SHOW_MOUSE_CURSOR=1
, the cursor shows but the UI does not respond. Otherwise, everything is ok.
Any ideas what could be wrong?