Index: apps/gui/quickscreen.c =================================================================== --- apps/gui/quickscreen.c (Revision 19853) +++ apps/gui/quickscreen.c (Arbeitskopie) @@ -291,10 +291,14 @@ /* Announce current selection on entering this screen. This is all queued up, but can be interrupted as soon as a setting is changed. */ + int old[QUICKSCREEN_ITEM_COUNT]; cond_talk_ids(VOICE_QUICKSCREEN); - talk_qs_option((struct settings_list *)qs->items[QUICKSCREEN_LEFT], true); - talk_qs_option((struct settings_list *)qs->items[QUICKSCREEN_BOTTOM], true); - talk_qs_option((struct settings_list *)qs->items[QUICKSCREEN_RIGHT], true); + for (i = 0; i < QUICKSCREEN_ITEM_COUNT; i++) + { + old[i] = *(int*)(qs->items[i]->setting); + talk_qs_option((struct settings_list *)qs->items[i], true); + } + while (true) { button = get_action(CONTEXT_QUICKSCREEN,HZ/5); if(default_event_handler(button) == SYS_USB_CONNECTED) @@ -310,15 +314,32 @@ } else if(button==button_enter) can_quit=true; - + if((button == button_enter) && can_quit) break; - + if(button==ACTION_STD_CANCEL) + { + if(changed) + { + splash(HZ/4, ID2P(LANG_CANCEL)); + changed = false; + } break; + } + if (button==ACTION_STD_OK) + break; } /* Notify that we're exiting this screen */ cond_talk_ids_fq(VOICE_OK); + if (!changed) + { + for (i = 0; i < QUICKSCREEN_ITEM_COUNT; i++) + { + *(int*)qs->items[i]->setting = old[i]; + } + } + return changed; } Index: apps/keymaps/keymap-m200.c =================================================================== --- apps/keymaps/keymap-m200.c (Revision 19853) +++ apps/keymaps/keymap-m200.c (Arbeitskopie) @@ -162,6 +162,7 @@ static const struct button_mapping button_context_quickscreen[] = { { ACTION_NONE, BUTTON_LEFT, BUTTON_NONE }, + { ACTION_NONE, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_STD_CANCEL, BUTTON_POWER|BUTTON_REL, BUTTON_NONE }, { ACTION_QS_DOWNINV, BUTTON_UP|BUTTON_REL, BUTTON_NONE }, Index: apps/keymaps/keymap-sa9200.c =================================================================== --- apps/keymaps/keymap-sa9200.c (Revision 19853) +++ apps/keymaps/keymap-sa9200.c (Arbeitskopie) @@ -223,7 +223,7 @@ { ACTION_QS_LEFT, BUTTON_REW|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_FFWD, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_FFWD|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_MENU, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_MENU, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) }; /* button_context_quickscreen */ Index: apps/keymaps/keymap-m3.c =================================================================== --- apps/keymaps/keymap-m3.c (Revision 19853) +++ apps/keymaps/keymap-m3.c (Arbeitskopie) @@ -192,7 +192,7 @@ { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_REC, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_REC, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) }; /* button_context_quickscreen */ Index: apps/keymaps/keymap-h1x0_h3x0.c =================================================================== --- apps/keymaps/keymap-h1x0_h3x0.c (Revision 19853) +++ apps/keymaps/keymap-h1x0_h3x0.c (Arbeitskopie) @@ -212,7 +212,7 @@ { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_MODE, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_MODE, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) }; /* button_context_quickscreen */ Index: apps/keymaps/keymap-creativezv.c =================================================================== --- apps/keymaps/keymap-creativezv.c (Revision 19853) +++ apps/keymaps/keymap-creativezv.c (Arbeitskopie) @@ -185,7 +185,7 @@ { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_MENU, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_MENU, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) }; /* button_context_quickscreen */ Index: apps/keymaps/keymap-touchscreen.c =================================================================== --- apps/keymaps/keymap-touchscreen.c (Revision 19853) +++ apps/keymaps/keymap-touchscreen.c (Arbeitskopie) @@ -171,7 +171,10 @@ static const struct button_mapping button_context_quickscreen[] = { - { ACTION_STD_CANCEL, BUTTON_CENTER|BUTTON_REL, BUTTON_NONE }, + { ACTION_NONE, BUTTON_MIDLEFT, BUTTON_NONE }, + { ACTION_NONE, BUTTON_MIDRIGHT, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_TOPLEFT, BUTTON_NONE }, + { ACTION_STD_CANCEL, BUTTON_BOTTOMLEFT, BUTTON_NONE }, { ACTION_QS_DOWNINV, BUTTON_TOPMIDDLE|BUTTON_REL, BUTTON_NONE }, { ACTION_QS_DOWNINV, BUTTON_TOPMIDDLE|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_DOWN, BUTTON_BOTTOMMIDDLE|BUTTON_REL, BUTTON_NONE }, Index: apps/keymaps/keymap-clip.c =================================================================== --- apps/keymaps/keymap-clip.c (Revision 19853) +++ apps/keymaps/keymap-clip.c (Arbeitskopie) @@ -157,7 +157,7 @@ static const struct button_mapping button_context_quickscreen[] = { { ACTION_NONE, BUTTON_LEFT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_POWER|BUTTON_REL, BUTTON_NONE }, + { ACTION_NONE, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_QS_DOWNINV, BUTTON_UP|BUTTON_REL, BUTTON_NONE }, { ACTION_QS_DOWNINV, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_DOWN, BUTTON_DOWN|BUTTON_REL, BUTTON_NONE }, Index: apps/keymaps/keymap-av300.c =================================================================== --- apps/keymaps/keymap-av300.c (Revision 19853) +++ apps/keymaps/keymap-av300.c (Arbeitskopie) @@ -142,7 +142,6 @@ { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_SELECT, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) }; /* button_context_quickscreen */ Index: apps/keymaps/keymap-ipod.c =================================================================== --- apps/keymaps/keymap-ipod.c (Revision 19853) +++ apps/keymaps/keymap-ipod.c (Arbeitskopie) @@ -129,7 +129,7 @@ { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_MENU, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_MENU, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) }; /* button_context_quickscreen */ Index: apps/keymaps/keymap-x5.c =================================================================== --- apps/keymaps/keymap-x5.c (Revision 19853) +++ apps/keymaps/keymap-x5.c (Arbeitskopie) @@ -180,7 +180,7 @@ { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_REC, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_REC, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) }; /* button_context_quickscreen */ Index: apps/keymaps/keymap-creativezvm.c =================================================================== --- apps/keymaps/keymap-creativezvm.c (Revision 19853) +++ apps/keymaps/keymap-creativezvm.c (Arbeitskopie) @@ -184,7 +184,7 @@ { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_MENU, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_MENU, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) }; /* button_context_quickscreen */ Index: apps/keymaps/keymap-mr100.c =================================================================== --- apps/keymaps/keymap-mr100.c (Revision 19853) +++ apps/keymaps/keymap-mr100.c (Arbeitskopie) @@ -220,7 +220,7 @@ { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_MENU, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_MENU, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) }; /* button_context_quickscreen */ Index: apps/keymaps/keymap-logikdax.c =================================================================== --- apps/keymaps/keymap-logikdax.c (Revision 19853) +++ apps/keymaps/keymap-logikdax.c (Arbeitskopie) @@ -144,8 +144,9 @@ }; /* button_context_settings_yesno */ static const struct button_mapping button_context_quickscreen[] = { - { ACTION_NONE, BUTTON_LEFT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_MODE|BUTTON_REL, BUTTON_NONE }, + { ACTION_NONE, BUTTON_LEFT, BUTTON_NONE }, + { ACTION_NONE, BUTTON_RIGHT, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_MODE|BUTTON_REL, BUTTON_NONE }, { ACTION_QS_DOWNINV, BUTTON_UP|BUTTON_REL, BUTTON_NONE }, { ACTION_QS_DOWNINV, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, Index: apps/keymaps/keymap-gigabeat.c =================================================================== --- apps/keymaps/keymap-gigabeat.c (Revision 19853) +++ apps/keymaps/keymap-gigabeat.c (Arbeitskopie) @@ -223,7 +223,7 @@ { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_MENU, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_MENU, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) }; /* button_context_quickscreen */ Index: apps/keymaps/keymap-gigabeat-s.c =================================================================== --- apps/keymaps/keymap-gigabeat-s.c (Revision 19853) +++ apps/keymaps/keymap-gigabeat-s.c (Arbeitskopie) @@ -230,7 +230,7 @@ { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_MENU, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_MENU, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) }; /* button_context_quickscreen */ Index: apps/keymaps/keymap-c100.c =================================================================== --- apps/keymaps/keymap-c100.c (Revision 19853) +++ apps/keymaps/keymap-c100.c (Arbeitskopie) @@ -150,7 +150,8 @@ }; /* button_context_settings_yesno */ static const struct button_mapping button_context_quickscreen[] = { - { ACTION_NONE, BUTTON_LEFT, BUTTON_NONE }, + { ACTION_NONE, BUTTON_LEFT, BUTTON_NONE }, + { ACTION_NONE, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_STD_CANCEL, BUTTON_MENU|BUTTON_REL, BUTTON_NONE }, { ACTION_QS_DOWNINV, BUTTON_VOLUP|BUTTON_REL, BUTTON_NONE }, Index: apps/keymaps/keymap-c200.c =================================================================== --- apps/keymaps/keymap-c200.c (Revision 19853) +++ apps/keymaps/keymap-c200.c (Arbeitskopie) @@ -162,6 +162,8 @@ static const struct button_mapping button_context_quickscreen[] = { { ACTION_NONE, BUTTON_LEFT, BUTTON_NONE }, + { ACTION_NONE, BUTTON_RIGHT, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_REC|BUTTON_REL, BUTTON_NONE }, { ACTION_STD_CANCEL, BUTTON_POWER|BUTTON_REL, BUTTON_NONE }, { ACTION_QS_DOWNINV, BUTTON_UP|BUTTON_REL, BUTTON_NONE }, Index: apps/keymaps/keymap-recorder.c =================================================================== --- apps/keymaps/keymap-recorder.c (Revision 19853) +++ apps/keymaps/keymap-recorder.c (Arbeitskopie) @@ -144,7 +144,7 @@ { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_PLAY, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_PLAY, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) }; /* button_context_quickscreen */ Index: apps/keymaps/keymap-e200.c =================================================================== --- apps/keymaps/keymap-e200.c (Revision 19853) +++ apps/keymaps/keymap-e200.c (Arbeitskopie) @@ -150,6 +150,7 @@ static const struct button_mapping button_context_quickscreen[] = { { ACTION_NONE, BUTTON_LEFT, BUTTON_NONE }, + { ACTION_NONE, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_STD_CANCEL, BUTTON_POWER|BUTTON_REL, BUTTON_NONE }, { ACTION_QS_DOWNINV, BUTTON_UP|BUTTON_REL, BUTTON_NONE }, { ACTION_QS_DOWNINV, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, Index: apps/keymaps/keymap-meizu-m6sl.c =================================================================== --- apps/keymaps/keymap-meizu-m6sl.c (Revision 19853) +++ apps/keymaps/keymap-meizu-m6sl.c (Arbeitskopie) @@ -210,7 +210,7 @@ { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_MENU, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_MENU, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) }; /* button_context_quickscreen */ Index: apps/keymaps/keymap-hdd1630.c =================================================================== --- apps/keymaps/keymap-hdd1630.c (Revision 19853) +++ apps/keymaps/keymap-hdd1630.c (Arbeitskopie) @@ -223,7 +223,7 @@ { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_CANCEL, BUTTON_MENU, BUTTON_NONE }, + { ACTION_STD_OK, BUTTON_MENU, BUTTON_NONE }, LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) }; /* button_context_quickscreen */ Index: apps/keymaps/keymap-fuze.c =================================================================== --- apps/keymaps/keymap-fuze.c (Revision 19853) +++ apps/keymaps/keymap-fuze.c (Arbeitskopie) @@ -152,6 +152,7 @@ static const struct button_mapping button_context_quickscreen[] = { { ACTION_NONE, BUTTON_LEFT, BUTTON_NONE }, + { ACTION_NONE, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_STD_CANCEL, BUTTON_POWER|BUTTON_REL, BUTTON_NONE }, { ACTION_QS_DOWNINV, BUTTON_UP|BUTTON_REL, BUTTON_NONE }, { ACTION_QS_DOWNINV, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },