Rockbox open source high quality audio player as a Music Player Daemon
mpris rockbox mpd libadwaita audio rust zig deno
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

plugins: main_menu_config misc addendum 5efb6d7fac

handle USB or shutdown events, exit for ACTION_STD_MENU,
and eliminate unnecessary list redraws

Change-Id: Ieedf75805f3a859d1aeb85ef51253636d8870fb6

+14 -2
+14 -2
apps/plugins/main_menu_config.c
··· 178 178 bool done = false; 179 179 bool changed = false; 180 180 int action, cur_sel; 181 + int ret = PLUGIN_OK; 181 182 182 183 menu_table = rb->root_menu_get_options(&menu_item_count); 183 184 load_from_cfg(); ··· 188 189 rb->gui_synclist_set_icon_callback(&list, menu_get_icon); 189 190 rb->gui_synclist_set_nb_items(&list, menu_item_count); 190 191 rb->gui_synclist_set_title(&list, rb->str(LANG_MAIN_MENU), Icon_Rockbox); 192 + rb->gui_synclist_draw(&list); 191 193 rb->gui_synclist_speak_item(&list); 192 194 193 195 while (!done) 194 196 { 195 - rb->gui_synclist_draw(&list); 196 197 cur_sel = rb->gui_synclist_get_sel_pos(&list); 197 198 action = rb->get_action(CONTEXT_LIST, HZ/10); 198 199 if (rb->gui_synclist_do_button(&list, &action)) ··· 256 257 break; 257 258 } 258 259 case ACTION_STD_CANCEL: 260 + case ACTION_STD_MENU: 259 261 done = true; 260 262 break; 263 + default: 264 + if (rb->default_event_handler(action) == SYS_USB_CONNECTED) 265 + { 266 + ret = PLUGIN_USB_CONNECTED; 267 + done = true; 268 + } 269 + continue; 261 270 } 271 + 272 + if (!done) 273 + rb->gui_synclist_draw(&list); 262 274 } 263 275 264 276 if (changed) ··· 269 281 } 270 282 rb->global_settings->show_icons = show_icons; 271 283 272 - return PLUGIN_OK; 284 + return ret; 273 285 }