summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
Diffstat (limited to 'apps')
-rw-r--r--apps/player/keyboard.c9
-rw-r--r--apps/playlist_viewer.c2
-rw-r--r--apps/plugins/calendar.c4
-rw-r--r--apps/plugins/keybox.c12
-rw-r--r--apps/plugins/rockboy/menu.c2
-rw-r--r--apps/plugins/text_editor.c3
-rw-r--r--apps/recorder/keyboard.c8
-rw-r--r--apps/settings.c1
-rw-r--r--apps/tagtree.c2
9 files changed, 24 insertions, 19 deletions
diff --git a/apps/player/keyboard.c b/apps/player/keyboard.c
index 114b3fd..4f8a8b0 100644
--- a/apps/player/keyboard.c
+++ b/apps/player/keyboard.c
@@ -112,6 +112,7 @@ int kbd_input(char* text, int buflen)
unsigned char *utf8;
int button, lastbutton = 0;
+ int ret;
editpos = utf8length(text);
@@ -185,7 +186,7 @@ int kbd_input(char* text, int buflen)
switch (button)
{
case BUTTON_STOP: /* abort */
- return -1;
+ ret = -1; done = true;
break;
case BUTTON_MENU: /* page flip */
@@ -245,7 +246,7 @@ int kbd_input(char* text, int buflen)
case BUTTON_PLAY | BUTTON_REPEAT:
/* accepts what was entered and continues */
- done = true;
+ ret = 0; done = true;
break;
case BUTTON_PLAY | BUTTON_REL:
@@ -304,6 +305,8 @@ int kbd_input(char* text, int buflen)
lastbutton = button;
}
- return 0;
+ if (ret < 0)
+ splash(HZ/2, ID2P(LANG_CANCEL));
+ return ret;
}
diff --git a/apps/playlist_viewer.c b/apps/playlist_viewer.c
index 1e1aab8..7d3ff4e 100644
--- a/apps/playlist_viewer.c
+++ b/apps/playlist_viewer.c
@@ -802,7 +802,7 @@ bool search_playlist(void)
if (!playlist_viewer_init(&viewer, 0, false))
return ret;
- if (kbd_input(search_str, sizeof(search_str)) == -1)
+ if (kbd_input(search_str, sizeof(search_str)) < 0)
return ret;
lcd_clear_display();
playlist_count = playlist_amount_ex(viewer.playlist);
diff --git a/apps/plugins/calendar.c b/apps/plugins/calendar.c
index e00afe1..cfb9290 100644
--- a/apps/plugins/calendar.c
+++ b/apps/plugins/calendar.c
@@ -568,7 +568,7 @@ static void add_memo(struct shown *shown, int type)
{
bool saved = false;
if (rb->kbd_input(memos[memos_in_memory].message,
- sizeof memos[memos_in_memory].message) != -1)
+ sizeof memos[memos_in_memory].message) == 0)
{
if (rb->strlen(memos[memos_in_memory].message))
{
@@ -634,7 +634,7 @@ static bool edit_memo(int change, struct shown *shown)
case 1: /* edit */
if(rb->kbd_input(memos[pointer_array[change]].message,
- sizeof memos[pointer_array[change]].message) != -1)
+ sizeof memos[pointer_array[change]].message) == 0)
save_memo(pointer_array[change],true,shown);
return false;
diff --git a/apps/plugins/keybox.c b/apps/plugins/keybox.c
index 6c59470..733c6e9 100644
--- a/apps/plugins/keybox.c
+++ b/apps/plugins/keybox.c
@@ -190,12 +190,12 @@ static void add_entry(int selected_item)
rb->splash(HZ, "Enter title");
pw_list.entries[i].title[0] = '\0';
- if (rb->kbd_input(pw_list.entries[i].title, FIELD_LEN))
+ if (rb->kbd_input(pw_list.entries[i].title, FIELD_LEN) < 0)
return;
rb->splash(HZ, "Enter name");
pw_list.entries[i].name[0] = '\0';
- if (rb->kbd_input(pw_list.entries[i].name, FIELD_LEN))
+ if (rb->kbd_input(pw_list.entries[i].name, FIELD_LEN) < 0)
{
pw_list.entries[i].title[0] = '\0';
return;
@@ -203,7 +203,7 @@ static void add_entry(int selected_item)
rb->splash(HZ, "Enter password");
pw_list.entries[i].password[0] = '\0';
- if (rb->kbd_input(pw_list.entries[i].password, FIELD_LEN))
+ if (rb->kbd_input(pw_list.entries[i].password, FIELD_LEN) < 0)
{
pw_list.entries[i].title[0] = '\0';
pw_list.entries[i].name[0] = '\0';
@@ -508,11 +508,11 @@ static int enter_pw(char *pw_buf, size_t buflen, bool new_pw)
if (new_pw)
{
rb->splash(HZ, "Enter new master password");
- if (rb->kbd_input(buf[0], sizeof(buf[0])))
+ if (rb->kbd_input(buf[0], sizeof(buf[0])) < 0)
return -1;
rb->splash(HZ, "Confirm master password");
- if (rb->kbd_input(buf[1], sizeof(buf[1])))
+ if (rb->kbd_input(buf[1], sizeof(buf[1])) < 0)
return -1;
if (rb->strcmp(buf[0], buf[1]))
@@ -529,7 +529,7 @@ static int enter_pw(char *pw_buf, size_t buflen, bool new_pw)
}
rb->splash(HZ, "Enter master password");
- if (rb->kbd_input(pw_buf, buflen))
+ if (rb->kbd_input(pw_buf, buflen) < 0)
return -1;
hash_pw(&pwhash);
return 0;
diff --git a/apps/plugins/rockboy/menu.c b/apps/plugins/rockboy/menu.c
index 0978da0..290cac9 100644
--- a/apps/plugins/rockboy/menu.c
+++ b/apps/plugins/rockboy/menu.c
@@ -227,7 +227,7 @@ static bool do_slot(size_t slot_id, bool is_load) {
/* if we're saving to a slot, then get a brief description */
if (!is_load)
- if (rb->kbd_input(desc_buf, 20) || !strlen(desc_buf))
+ if (rb->kbd_input(desc_buf, 20) || !strlen(desc_buf) < 0)
{
strlcpy(desc_buf, "Untitled", 20);
}
diff --git a/apps/plugins/text_editor.c b/apps/plugins/text_editor.c
index 06dc098..473bb68 100644
--- a/apps/plugins/text_editor.c
+++ b/apps/plugins/text_editor.c
@@ -182,10 +182,9 @@ bool save_changes(int overwrite)
if (newfile || !overwrite)
{
- if(rb->kbd_input(filename,MAX_PATH))
+ if(rb->kbd_input(filename,MAX_PATH) < 0)
{
newfile = true;
- rb->splash(HZ, "Cancelled");
return false;
}
}
diff --git a/apps/recorder/keyboard.c b/apps/recorder/keyboard.c
index 32933cd..7eb7981 100644
--- a/apps/recorder/keyboard.c
+++ b/apps/recorder/keyboard.c
@@ -297,6 +297,7 @@ int kbd_input(char* text, int buflen)
unsigned short ch;
unsigned char *utf8;
bool cur_blink = true; /* Cursor on/off flag */
+ int ret;
#ifdef KBD_MORSE_INPUT
bool morse_reading = false;
unsigned char morse_code = 0;
@@ -779,7 +780,7 @@ int kbd_input(char* text, int buflen)
global_settings.buttonbar=buttonbar_config;
#endif
viewportmanager_set_statusbar(oldbars);
- return -1;
+ ret = -1; done = true;
break;
case ACTION_KBD_PAGE_FLIP:
@@ -1000,6 +1001,7 @@ int kbd_input(char* text, int buflen)
case ACTION_KBD_DONE:
/* accepts what was entered and continues */
+ ret = 0;
done = true;
break;
@@ -1249,5 +1251,7 @@ int kbd_input(char* text, int buflen)
screens[l].setfont(FONT_UI);
viewportmanager_set_statusbar(oldbars);
- return 0;
+ if (ret < 0)
+ splash(HZ/2, ID2P(LANG_CANCEL));
+ return ret;
}
diff --git a/apps/settings.c b/apps/settings.c
index 6a761ec..bd2958e 100644
--- a/apps/settings.c
+++ b/apps/settings.c
@@ -652,7 +652,6 @@ bool settings_save_config(int options)
break;
}
else {
- splash(HZ, ID2P(LANG_CANCEL));
return false;
}
}
diff --git a/apps/tagtree.c b/apps/tagtree.c
index 5d61589..de75223 100644
--- a/apps/tagtree.c
+++ b/apps/tagtree.c
@@ -1483,7 +1483,7 @@ int tagtree_enter(struct tree_context* c)
else
{
rc = kbd_input(searchstring, SEARCHSTR_SIZE);
- if (rc == -1 || !searchstring[0])
+ if (rc < 0 || !searchstring[0])
{
tagtree_exit(c);
return 0;