diff --git a/src/extra/themes/default/lv_theme_default.c b/src/extra/themes/default/lv_theme_default.c index a481b3d5d8..7fb9d531f0 100644 --- a/src/extra/themes/default/lv_theme_default.c +++ b/src/extra/themes/default/lv_theme_default.c @@ -1079,11 +1079,11 @@ static void theme_apply(lv_theme_t * th, lv_obj_t * obj) lv_obj_add_style(obj, &styles->menu_pressed, LV_STATE_PRESSED); lv_obj_add_style(obj, &styles->bg_color_primary_muted, LV_STATE_PRESSED | LV_STATE_CHECKED); lv_obj_add_style(obj, &styles->bg_color_primary_muted, LV_STATE_CHECKED); + lv_obj_add_style(obj, &styles->bg_color_primary, LV_STATE_FOCUS_KEY); } else if(lv_obj_check_type(obj, &lv_menu_sidebar_header_cont_class) || lv_obj_check_type(obj, &lv_menu_main_header_cont_class)) { lv_obj_add_style(obj, &styles->menu_header_cont, 0); - lv_obj_add_style(obj, &styles->menu_pressed, LV_STATE_PRESSED); } else if(lv_obj_check_type(obj, &lv_menu_page_class)) { lv_obj_add_style(obj, &styles->menu_page, 0); diff --git a/src/extra/widgets/menu/lv_menu.c b/src/extra/widgets/menu/lv_menu.c index e9e3634c08..5067d84476 100644 --- a/src/extra/widgets/menu/lv_menu.c +++ b/src/extra/widgets/menu/lv_menu.c @@ -360,8 +360,9 @@ void lv_menu_set_load_page_event(lv_obj_t * menu, lv_obj_t * obj, lv_obj_t * pag { LV_ASSERT_OBJ(menu, MY_CLASS); - /* Make the object clickable */ lv_obj_add_flag(obj, LV_OBJ_FLAG_CLICKABLE); + lv_obj_clear_flag(obj, LV_OBJ_FLAG_SCROLLABLE); + lv_obj_add_flag(obj, LV_OBJ_FLAG_SCROLL_ON_FOCUS); /* Remove old event */ if(lv_obj_remove_event_cb(obj, lv_menu_load_page_event_cb)) { @@ -683,6 +684,11 @@ static void lv_menu_load_page_event_cb(lv_event_t * e) } lv_menu_set_page((lv_obj_t *)menu, page); + + if(lv_group_get_default() != NULL && menu->sidebar_page == NULL) { + /* Sidebar is not supported for now*/ + lv_group_focus_next(lv_group_get_default()); + } } static void lv_menu_obj_del_event_cb(lv_event_t * e)