diff --git a/apps/tree.c b/apps/tree.c index b482682e67..07a0928db1 100644 --- a/apps/tree.c +++ b/apps/tree.c @@ -1075,6 +1075,17 @@ static bool dirbrowse(void) status_draw(false); break; +#ifdef HAVE_HOTSWAP + case SYS_FS_CHANGED: + if (!id3db) /* file browsing */ + { + /* FixMe: skip this if not in root + and our path is still valid */ + reload_root = true; /* the dumb way */ + } + break; +#endif + default: if(default_event_handler(button) == SYS_USB_CONNECTED) { diff --git a/firmware/export/config-ondiofm.h b/firmware/export/config-ondiofm.h index 7e72921a36..b6f105221a 100644 --- a/firmware/export/config-ondiofm.h +++ b/firmware/export/config-ondiofm.h @@ -82,6 +82,9 @@ /* define this if more than one device/partition can be used */ #define HAVE_MULTIVOLUME +/* define this if media can be exchanged on the fly */ +#define HAVE_HOTSWAP + #define CONFIG_LCD LCD_SSD1815 #endif /* SIMULATOR */ diff --git a/firmware/export/config-ondiosp.h b/firmware/export/config-ondiosp.h index 1118c54a1e..59184a4dee 100644 --- a/firmware/export/config-ondiosp.h +++ b/firmware/export/config-ondiosp.h @@ -70,6 +70,9 @@ /* define this if more than one device/partition can be used */ #define HAVE_MULTIVOLUME +/* define this if media can be exchanged on the fly */ +#define HAVE_HOTSWAP + #define CONFIG_LCD LCD_SSD1815 #endif /* SIMULATOR */