Providing feedback when searching takes longer than roughly half a second.
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@5767 35c25a1d-7b9e-4130-9fde-d3aeb78583b8master
parent
38b74e6993
commit
108fe330d3
|
@ -2,6 +2,8 @@
|
||||||
* src/winio.c (statusbar): Don't bother putting back the cursor in
|
* src/winio.c (statusbar): Don't bother putting back the cursor in
|
||||||
the edit window, as it is off anyway, and will be placed back in the
|
the edit window, as it is off anyway, and will be placed back in the
|
||||||
main loop. This prevents a segfault when trying to open a directory.
|
main loop. This prevents a segfault when trying to open a directory.
|
||||||
|
* src/search.c (findnextstr): Provide feedback when searching takes
|
||||||
|
longer than roughly half a second (on average).
|
||||||
|
|
||||||
2016-03-23 Benno Schulenberg <bensberg@justemail.net>
|
2016-03-23 Benno Schulenberg <bensberg@justemail.net>
|
||||||
* src/search.c (findnextstr): Prevent the internal spell checker from
|
* src/search.c (findnextstr): Prevent the internal spell checker from
|
||||||
|
|
10
src/search.c
10
src/search.c
|
@ -260,6 +260,8 @@ bool findnextstr(
|
||||||
{
|
{
|
||||||
size_t found_len;
|
size_t found_len;
|
||||||
/* The length of the match we find. */
|
/* The length of the match we find. */
|
||||||
|
int feedback = 0;
|
||||||
|
/* When bigger than zero, show and wipe the "Searching..." message. */
|
||||||
ssize_t current_y_find = openfile->current_y;
|
ssize_t current_y_find = openfile->current_y;
|
||||||
filestruct *fileptr = openfile->current;
|
filestruct *fileptr = openfile->current;
|
||||||
const char *rev_start = fileptr->data, *found = NULL;
|
const char *rev_start = fileptr->data, *found = NULL;
|
||||||
|
@ -291,6 +293,9 @@ bool findnextstr(
|
||||||
statusbar(_("Cancelled"));
|
statusbar(_("Cancelled"));
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (++feedback > 0)
|
||||||
|
statusbar(_("Searching..."));
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Search for the needle in the current line. */
|
/* Search for the needle in the current line. */
|
||||||
|
@ -366,6 +371,8 @@ bool findnextstr(
|
||||||
current_y_find = 0;
|
current_y_find = 0;
|
||||||
}
|
}
|
||||||
statusbar(_("Search Wrapped"));
|
statusbar(_("Search Wrapped"));
|
||||||
|
/* Delay the "Searching..." message for at least two seconds. */
|
||||||
|
feedback = -2;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* If we've reached the original starting line, take note. */
|
/* If we've reached the original starting line, take note. */
|
||||||
|
@ -392,6 +399,9 @@ bool findnextstr(
|
||||||
if (match_len != NULL)
|
if (match_len != NULL)
|
||||||
*match_len = found_len;
|
*match_len = found_len;
|
||||||
|
|
||||||
|
if (feedback > 0)
|
||||||
|
blank_statusbar();
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue