fix(obj, switch) do not send LV_EVENT_VALUE_CHANGED twice

fixes #2330
This commit is contained in:
Gabor Kiss-Vamosi
2021-06-22 10:05:47 +02:00
parent edb23d2640
commit de1f6e978e
2 changed files with 6 additions and 6 deletions

View File

@@ -618,8 +618,12 @@ static void lv_obj_event(const lv_obj_class_t * class_p, lv_event_t * e)
else if(c == LV_KEY_LEFT || c == LV_KEY_DOWN) { else if(c == LV_KEY_LEFT || c == LV_KEY_DOWN) {
lv_obj_clear_state(obj, LV_STATE_CHECKED); lv_obj_clear_state(obj, LV_STATE_CHECKED);
} }
lv_res_t res = lv_event_send(obj, LV_EVENT_VALUE_CHANGED, NULL);
if(res != LV_RES_OK) return; /*With Enter LV_EVENT_RELEASED will send VALUE_CHANGE event*/
if(c != LV_KEY_ENTER) {
lv_res_t res = lv_event_send(obj, LV_EVENT_VALUE_CHANGED, NULL);
if(res != LV_RES_OK) return;
}
} }
} }
else if(code == LV_EVENT_FOCUSED) { else if(code == LV_EVENT_FOCUSED) {

View File

@@ -112,10 +112,6 @@ static void lv_switch_event(const lv_obj_class_t * class_p, lv_event_t * e)
*s = LV_MAX(*s, lv_obj_calculate_ext_draw_size(obj, LV_PART_INDICATOR)); *s = LV_MAX(*s, lv_obj_calculate_ext_draw_size(obj, LV_PART_INDICATOR));
} }
else if(code == LV_EVENT_CLICKED) { else if(code == LV_EVENT_CLICKED) {
uint32_t v = lv_obj_get_state(obj) & LV_STATE_CHECKED ? 1 : 0;
res = lv_event_send(obj, LV_EVENT_VALUE_CHANGED, &v);
if(res != LV_RES_OK) return;
lv_obj_invalidate(obj); lv_obj_invalidate(obj);
} }
else if(code == LV_EVENT_DRAW_MAIN) { else if(code == LV_EVENT_DRAW_MAIN) {