From e5f59799ee5cc2cdcbc9f49abe26305734e8e215 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Wed, 7 Nov 2018 17:58:19 +0100 Subject: [PATCH] lv_list: use 'last_sel' with encoder too --- lv_objx/lv_list.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/lv_objx/lv_list.c b/lv_objx/lv_list.c index f4d165768..474fa3456 100644 --- a/lv_objx/lv_list.c +++ b/lv_objx/lv_list.c @@ -711,7 +711,15 @@ static lv_res_t lv_list_signal(lv_obj_t * list, lv_signal_t sign, void * param) if(indev_type == LV_INDEV_TYPE_ENCODER) { lv_group_t * g = lv_obj_get_group(list); if(lv_group_get_editing(g)) { - lv_list_set_btn_selected(list, lv_list_get_next_btn(list, NULL)); + lv_list_ext_t * ext = lv_obj_get_ext_attr(list); + if(NULL != ext->last_sel) { + /* Select the last used button */ + lv_list_set_btn_selected(list, ext->last_sel); + } + else { + /*Get the first button and mark it as selected*/ + lv_list_set_btn_selected(list, lv_list_get_next_btn(list, NULL)); + } } else { lv_list_set_btn_selected(list, NULL); }