]> git.deb.at Git - pkg/abook.git/blobdiff - ui.c
minor ui_find updates
[pkg/abook.git] / ui.c
diff --git a/ui.c b/ui.c
index 3d7e01a8f7469ae640e014509808b1802a371167..d99397d4085a33747bc8ccd39e3a1f82c921a786 100644 (file)
--- a/ui.c
+++ b/ui.c
@@ -489,27 +489,30 @@ ui_clear_database()
 void
 ui_find(int next)
 {
-       int item;
+       int item = -1;
        static char findstr[MAX_FIELD_LEN];
        int search_fields[] = {NAME, EMAIL, NICK, -1};
 
+       clear_statusline();
+
        if(next) {
                if( !*findstr )
                        return;
        } else {
                char *s;
-               clear_statusline();
                s = ui_readline("/", findstr, MAX_FIELD_LEN - 1, 0);
                strncpy(findstr, s, MAX_FIELD_LEN);
                refresh_screen();
        }
 
-       if( (item = find_item(findstr, curitem + !!next,
-                                       search_fields )) >= 0 ) {
+       if( (item = find_item(findstr, curitem + !!next, search_fields)) < 0 &&
+                       (item = find_item(findstr, 0, search_fields)) >= 0)
+               statusline_addstr("Search hit bottom, continuing at top");
+
+       if(item >= 0) {
                curitem = item;
                refresh_list();
        }
-
 }