From 1fa3f5906edadf2455a9f0c78390a6fcef9b28fb Mon Sep 17 00:00:00 2001 From: Roman Date: Fri, 5 Jul 2013 20:05:55 +0700 Subject: Swap over a position of cursor while reaching the end of filename in keyboard In sansa clip + with virtual keyboard you can write/rename a stuff and move your cursor in the filename field. But while your cursor reaches the end/start of filename it just blocks the movement of cursor and beeps if you enabled the "Voice Menu" feature. This patch swaps over cursor to the start/end of filename instead of just blocking movement. Change-Id: I37450df062df60ef4c0d747c13e448d0adbde05b Reviewed-on: http://gerrit.rockbox.org/503 Reviewed-by: Michael Giacomelli --- apps/recorder/keyboard.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/apps/recorder/keyboard.c b/apps/recorder/keyboard.c index a6c015aebf..0b51bc42c0 100644 --- a/apps/recorder/keyboard.c +++ b/apps/recorder/keyboard.c @@ -1226,13 +1226,19 @@ static void kbd_move_cursor(struct edit_state *state, int dir) { state->changed = CHANGED_CURSOR; } - else + else if (state->editpos > state->len_utf8) { - state->editpos -= dir; -#if CONFIG_CODEC == SWCODEC - if (global_settings.talk_menu) - beep_play(1000, 150, 1500); -#endif + state->editpos = 0; + #if CONFIG_CODEC == SWCODEC + if (global_settings.talk_menu) beep_play(1000, 150, 1500); + #endif + } + else if (state->editpos < 0) + { + state->editpos = state->len_utf8; + #if CONFIG_CODEC == SWCODEC + if (global_settings.talk_menu) beep_play(1000, 150, 1500); + #endif } } -- cgit v1.2.3