summaryrefslogtreecommitdiff
path: root/apps/player/keyboard.c
diff options
context:
space:
mode:
authorMats Lidell <matsl@rockbox.org>2003-03-11 15:05:04 +0000
committerMats Lidell <matsl@rockbox.org>2003-03-11 15:05:04 +0000
commitcad6f24a50284d08aa2e4d6f5f5cc438396c6ef7 (patch)
treec633a4c3ff89ed639db2693a42cae285bb0b47ac /apps/player/keyboard.c
parent42f261eebef6ddbec6f9d8d1c4a1999cc72f588b (diff)
downloadrockbox-cad6f24a50284d08aa2e4d6f5f5cc438396c6ef7.tar.gz
rockbox-cad6f24a50284d08aa2e4d6f5f5cc438396c6ef7.zip
Synched with recorder: Starts editing at the end of the string.
Bug with long strings fixed (Strings longer than newchars was truncated.) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3431 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/player/keyboard.c')
-rw-r--r--apps/player/keyboard.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/apps/player/keyboard.c b/apps/player/keyboard.c
index aee6eb5de9..70084f8612 100644
--- a/apps/player/keyboard.c
+++ b/apps/player/keyboard.c
@@ -97,6 +97,10 @@ int kbd_input(char* text, int buflen)
97 97
98 lcd_clear_display(); 98 lcd_clear_display();
99 99
100 old_cursor_pos=cursor_pos=strlen(text);
101 if (9<cursor_pos)
102 left_pos=cursor_pos-9;
103
100 while (!done) { 104 while (!done) {
101 int i, p; 105 int i, p;
102 int len = strlen(text); 106 int len = strlen(text);
@@ -109,8 +113,8 @@ int kbd_input(char* text, int buflen)
109 left_pos--; 113 left_pos--;
110 p=0; 114 p=0;
111 i = left_pos; 115 i = left_pos;
112 while (p<10 && line[i]) { 116 while (p<10 && text[i]) {
113 temptext[p++]=text[i++]; 117 temptext[p++]=text[i++];
114 } 118 }
115 temptext[p]=0; 119 temptext[p]=0;
116 lcd_remove_cursor(); 120 lcd_remove_cursor();
@@ -128,7 +132,7 @@ int kbd_input(char* text, int buflen)
128 for (i=1; i < 8; i++) { 132 for (i=1; i < 8; i++) {
129 temptext[i+2]=line[(i+x)%linelen]; 133 temptext[i+2]=line[(i+x)%linelen];
130 } 134 }
131 temptext[p]=0; 135 temptext[i+2]=0;
132 lcd_puts(1, 1, temptext); 136 lcd_puts(1, 1, temptext);
133 break; 137 break;
134 case MENU_LINE_BACKSPACE: 138 case MENU_LINE_BACKSPACE: