summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2008-07-15 14:25:16 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2008-07-15 14:25:16 +0000
commitd3cb2aca444ab7006dba9379ee0fff1195a7baff (patch)
treeaa805b2111c019a96635a5d55ee25f9782e6a2de /apps
parentc893affeefa35975c916a222d20a989f31555646 (diff)
downloadrockbox-d3cb2aca444ab7006dba9379ee0fff1195a7baff.zip
rockbox-d3cb2aca444ab7006dba9379ee0fff1195a7baff.tar.gz
rockbox-d3cb2aca444ab7006dba9379ee0fff1195a7baff.tar.bz2
rockbox-d3cb2aca444ab7006dba9379ee0fff1195a7baff.tar.xz
dont show the "cancelled" splash if the setting wasnt changed (only affects settings which have the F_TEMPVAR flag set)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18047 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r--apps/gui/option_select.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/apps/gui/option_select.c b/apps/gui/option_select.c
index f6b1546..4b7ee60 100644
--- a/apps/gui/option_select.c
+++ b/apps/gui/option_select.c
@@ -526,15 +526,14 @@ bool option_screen(const struct settings_list *setting,
continue;
else if (action == ACTION_STD_CANCEL)
{
- bool show_cancel = false;
- if (use_temp_var)
- show_cancel = true;
- else if (var_type == F_T_INT || var_type == F_T_UINT)
+ bool show_cancel = false, changed = false;
+ if (var_type == F_T_INT || var_type == F_T_UINT)
{
if (*variable != oldvalue)
{
show_cancel = true;
*variable = oldvalue;
+ changed = true;
}
}
else
@@ -545,8 +544,11 @@ bool option_screen(const struct settings_list *setting,
if (!use_temp_var)
*(bool*)setting->setting = oldvalue==1?true:false;
*variable = oldvalue;
+ changed = true;
}
}
+ if (use_temp_var && changed)
+ show_cancel = true;
if (show_cancel)
gui_syncsplash(HZ/2, ID2P(LANG_CANCEL));
done = true;