diff --git a/apps/lang/english.lang b/apps/lang/english.lang
index d5222de4b7..27faa38cf8 100644
--- a/apps/lang/english.lang
+++ b/apps/lang/english.lang
@@ -12754,20 +12754,6 @@
*: "Average bit rate"
-
- id: LANG_PLAYTIME_ERROR
- desc: playing time screen
- user: core
-
- *: "Error while gathering info"
-
-
- *: "Error while gathering info"
-
-
- *: "Error while gathering info"
-
-
id: LANG_PLAYING_TIME
desc: onplay menu
diff --git a/apps/plugin.c b/apps/plugin.c
index c35491f788..972fd2568d 100644
--- a/apps/plugin.c
+++ b/apps/plugin.c
@@ -886,6 +886,7 @@ int plugin_load(const char* plugin, const void* parameter)
/* for some plugins, the SBS can be left enabled */
const char *sepch = strrchr(plugin, PATH_SEPCH);
bool theme_enabled = sepch && (!strcmp("properties.rock", sepch + 1) ||
+ !strcmp("playing_time.rock", sepch + 1) ||
!strcmp("main_menu_config.rock", sepch + 1) ||
!strcmp("disktidy.rock", sepch + 1));
diff --git a/apps/plugins/playing_time.c b/apps/plugins/playing_time.c
index ae4d97555c..6a63c3dd8d 100644
--- a/apps/plugins/playing_time.c
+++ b/apps/plugins/playing_time.c
@@ -55,6 +55,7 @@ enum ePT_SUM {
struct playing_time_info {
char single_mode_tag[MAX_PATH]; /* Relevant tag when single mode enabled */
+ char error_str[16]; /* Error message to display to user */
unsigned long long size[ePT_COUNT]; /* File size of tracks */
unsigned long long length[ePT_COUNT]; /* Length of tracks */
unsigned long curr_track_length[ePT_COUNT]; /* Current track length */
@@ -529,7 +530,19 @@ static bool playing_time(void)
if (!success)
return false;
if (pti.error_count > 0)
- rb->splash(HZ, ID2P(LANG_PLAYTIME_ERROR));
+ {
+ rb->snprintf(pti.error_str, sizeof pti.error_str,
+ "%d %s", pti.error_count, rb->str(LANG_TRACKS));
+ if (rb->global_settings->talk_menu)
+ {
+ rb->talk_id(LANG_ERROR_FORMATSTR, false);
+ rb->talk_number(pti.error_count, true);
+ rb->talk_id(LANG_TRACKS, true);
+ rb->talk_force_enqueue_next();
+ }
+ /* (voiced above) */
+ rb->splashf(HZ, rb->str(LANG_ERROR_FORMATSTR), pti.error_str);
+ }
pt_store_converted_totals(&pti);
return pt_display_stats(&pti);
@@ -547,6 +560,8 @@ enum plugin_status plugin_start(const void* parameter)
return status;
}
+ /* Only relevant if launched using hotkey from the
+ WPS. Otherwise theme should be enabled already. */
FOR_NB_SCREENS(i)
rb->viewportmanager_theme_enable(i, true, NULL);