mirror of
https://github.com/tstack/lnav
synced 2024-11-03 23:15:38 +00:00
[looper] increase rescan/rebuild delay when a prompt is open
This commit is contained in:
parent
b2d296b5d3
commit
ace63947df
39
src/lnav.cc
39
src/lnav.cc
@ -1682,12 +1682,10 @@ static void looper()
|
||||
}
|
||||
}
|
||||
else {
|
||||
bool got_user_input = false;
|
||||
if (pollfd_ready(pollfds, STDIN_FILENO)) {
|
||||
int ch;
|
||||
|
||||
next_status_update_time = ui_clock::now();
|
||||
next_rescan_time = next_status_update_time + 1s;
|
||||
next_rebuild_time = next_rescan_time;
|
||||
while ((ch = getch()) != ERR) {
|
||||
alerter::singleton().new_input(ch);
|
||||
|
||||
@ -1704,6 +1702,27 @@ static void looper()
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
got_user_input = true;
|
||||
next_status_update_time = ui_clock::now();
|
||||
switch (lnav_data.ld_mode) {
|
||||
case LNM_PAGING:
|
||||
case LNM_FILTER:
|
||||
case LNM_FILES:
|
||||
next_rescan_time = next_status_update_time + 1s;
|
||||
break;
|
||||
case LNM_COMMAND:
|
||||
case LNM_SEARCH:
|
||||
case LNM_SEARCH_FILTERS:
|
||||
case LNM_SEARCH_FILES:
|
||||
case LNM_CAPTURE:
|
||||
case LNM_SQL:
|
||||
case LNM_EXEC:
|
||||
case LNM_USER:
|
||||
next_rescan_time = next_status_update_time + 1min;
|
||||
break;
|
||||
}
|
||||
next_rebuild_time = next_rescan_time;
|
||||
}
|
||||
|
||||
for (auto &tc : lnav_data.ld_views) {
|
||||
@ -1714,10 +1733,24 @@ static void looper()
|
||||
lnav_data.ld_bottom_source.update_hits(tc);
|
||||
};
|
||||
|
||||
auto old_mode = lnav_data.ld_mode;
|
||||
rlc.check_poll_set(pollfds);
|
||||
lnav_data.ld_filter_source.fss_editor.check_poll_set(pollfds);
|
||||
lnav_data.ld_filter_view.check_poll_set(pollfds);
|
||||
lnav_data.ld_files_view.check_poll_set(pollfds);
|
||||
|
||||
if (lnav_data.ld_mode != old_mode) {
|
||||
switch (lnav_data.ld_mode) {
|
||||
case LNM_PAGING:
|
||||
case LNM_FILTER:
|
||||
case LNM_FILES:
|
||||
next_rescan_time = next_status_update_time + 1s;
|
||||
next_rebuild_time = next_rescan_time;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (timer.time_to_update(overlay_counter)) {
|
||||
|
Loading…
Reference in New Issue
Block a user