diff --git a/CHANGELOG.md b/CHANGELOG.md index 08d27f215..23431e2df 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ ### Bugfixes - fix(btnmatrix) handle arabic texts in button matrices +- fix(indev) disabled object shouldn't absorb clicks but let the parent to be clicked ## v7.7.2 (Planned to 17.11.2020) ### Bugfixes diff --git a/src/lv_core/lv_indev.c b/src/lv_core/lv_indev.c index 16aa34529..217e712e4 100644 --- a/src/lv_core/lv_indev.c +++ b/src/lv_core/lv_indev.c @@ -868,11 +868,6 @@ static void indev_proc_press(lv_indev_proc_t * proc) indev_drag_throw(proc); } - /*Do not use disabled objects*/ - if(indev_obj_act && (lv_obj_get_state(indev_obj_act, LV_OBJ_PART_MAIN) & LV_STATE_DISABLED)) { - indev_obj_act = proc->types.pointer.act_obj; - } - /*If a new object was found reset some variables and send a pressed signal*/ if(indev_obj_act != proc->types.pointer.act_obj) { proc->types.pointer.last_point.x = proc->types.pointer.act_point.x; @@ -1144,7 +1139,7 @@ lv_obj_t * lv_indev_search_obj(lv_obj_t * obj, lv_point_t * point) hidden_i = lv_obj_get_parent(hidden_i); } /*No parent found with hidden == true*/ - if(hidden_i == NULL) found_p = obj; + if(hidden_i == NULL && (lv_obj_get_state(obj, LV_OBJ_PART_MAIN) & LV_STATE_DISABLED) == false) found_p = obj; } }