diff options
Diffstat (limited to 'apps')
-rw-r--r-- | apps/menu.c | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/apps/menu.c b/apps/menu.c index 79919f19af..1f04ef2249 100644 --- a/apps/menu.c +++ b/apps/menu.c | |||
@@ -22,6 +22,7 @@ | |||
22 | #include "button.h" | 22 | #include "button.h" |
23 | #include "kernel.h" | 23 | #include "kernel.h" |
24 | #include "debug.h" | 24 | #include "debug.h" |
25 | #include "usb.h" | ||
25 | #include "panic.h" | 26 | #include "panic.h" |
26 | #include "settings.h" | 27 | #include "settings.h" |
27 | #include "status.h" | 28 | #include "status.h" |
@@ -213,8 +214,10 @@ void menu_exit(int m) | |||
213 | 214 | ||
214 | void menu_run(int m) | 215 | void menu_run(int m) |
215 | { | 216 | { |
217 | bool laststate; | ||
218 | |||
216 | menu_draw(m); | 219 | menu_draw(m); |
217 | 220 | ||
218 | while(1) { | 221 | while(1) { |
219 | switch( button_get_w_tmo(HZ/2) ) { | 222 | switch( button_get_w_tmo(HZ/2) ) { |
220 | #ifdef HAVE_RECORDER_KEYPAD | 223 | #ifdef HAVE_RECORDER_KEYPAD |
@@ -278,6 +281,22 @@ void menu_run(int m) | |||
278 | break; | 281 | break; |
279 | #endif | 282 | #endif |
280 | 283 | ||
284 | #ifndef SIMULATOR | ||
285 | case SYS_USB_CONNECTED: | ||
286 | #ifdef HAVE_LCD_BITMAP | ||
287 | laststate = statusbar(false); | ||
288 | #endif | ||
289 | usb_acknowledge(SYS_USB_CONNECTED_ACK); | ||
290 | usb_wait_for_disconnect(&button_queue); | ||
291 | menu_draw(m); | ||
292 | #ifdef HAVE_LCD_BITMAP | ||
293 | statusbar(laststate); | ||
294 | #else | ||
295 | lcd_icon(ICON_PARAM, true); | ||
296 | #endif | ||
297 | break; | ||
298 | #endif | ||
299 | |||
281 | default: | 300 | default: |
282 | break; | 301 | break; |
283 | } | 302 | } |