summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSolomon Peachy <pizza@shaftnet.org>2019-08-04 22:42:46 -0400
committerSolomon Peachy <pizza@shaftnet.org>2019-08-05 05:01:29 +0200
commit8143e4437bdcb1c2b25013cc285834b224d8d93c (patch)
tree1ada1f35996b144314c03478c8fb0a6d19026e7b
parent3b7ae5e06b39deb083b1a0f2e5452841fe59acbb (diff)
downloadrockbox-8143e4437bdcb1c2b25013cc285834b224d8d93c.tar.gz
rockbox-8143e4437bdcb1c2b25013cc285834b224d8d93c.tar.bz2
rockbox-8143e4437bdcb1c2b25013cc285834b224d8d93c.zip
Speech Feedback improvements on the Quickscreen
Patch by Igor Poretsky Change-Id: I1bb94965cb18efaa0787d7780f6cf22814231144
-rw-r--r--apps/gui/option_select.c2
-rw-r--r--apps/gui/quickscreen.c13
2 files changed, 8 insertions, 7 deletions
diff --git a/apps/gui/option_select.c b/apps/gui/option_select.c
index 9cdd79cce6..ec8b474191 100644
--- a/apps/gui/option_select.c
+++ b/apps/gui/option_select.c
@@ -188,7 +188,7 @@ void option_talk_value(const struct settings_list *setting, int value, bool enqu
talkunit = UNIT_PERCENT;
else if (!strcmp(unit, "Hz"))
talkunit = UNIT_HERTZ;
- talk_value_decimal(phys, talkunit, decimals, false);
+ talk_value_decimal(phys, talkunit, decimals, enqueue);
}
else if ((setting->flags & F_CHOICE_SETTING) == F_CHOICE_SETTING)
{
diff --git a/apps/gui/quickscreen.c b/apps/gui/quickscreen.c
index 406d969b37..87eb134c78 100644
--- a/apps/gui/quickscreen.c
+++ b/apps/gui/quickscreen.c
@@ -233,10 +233,9 @@ static void talk_qs_option(const struct settings_list *opt, bool enqueue)
if (!global_settings.talk_menu || !opt)
return;
- if (!enqueue)
- talk_shutup();
- talk_id(opt->lang_id, true);
- option_talk_value(opt, option_value_as_int(opt), true);
+ if (enqueue)
+ talk_id(opt->lang_id, enqueue);
+ option_talk_value(opt, option_value_as_int(opt), enqueue);
}
/*
@@ -334,9 +333,11 @@ static bool gui_syncquickscreen_run(struct gui_quickscreen * qs, int button_ente
changed. */
cond_talk_ids(VOICE_QUICKSCREEN);
talk_qs_option(qs->items[QUICKSCREEN_TOP], true);
+ if (qs->items[QUICKSCREEN_TOP] != qs->items[QUICKSCREEN_BOTTOM])
+ talk_qs_option(qs->items[QUICKSCREEN_BOTTOM], true);
talk_qs_option(qs->items[QUICKSCREEN_LEFT], true);
- talk_qs_option(qs->items[QUICKSCREEN_BOTTOM], true);
- talk_qs_option(qs->items[QUICKSCREEN_RIGHT], true);
+ if (qs->items[QUICKSCREEN_LEFT] != qs->items[QUICKSCREEN_RIGHT])
+ talk_qs_option(qs->items[QUICKSCREEN_RIGHT], true);
while (true) {
button = get_action(CONTEXT_QUICKSCREEN, HZ/5);
#ifdef HAVE_TOUCHSCREEN