term: disable cursor blink on unfocus, and re-enable on focus

This commit is contained in:
Daniel Eklöf 2019-12-16 21:33:22 +01:00
parent dac31dd9c0
commit f4e5baa123
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F

View file

@ -1326,17 +1326,25 @@ term_restore_cursor(struct terminal *term)
void void
term_focus_in(struct terminal *term) term_focus_in(struct terminal *term)
{ {
if (!term->focus_events) if (term->cursor_blink.active)
return; cursor_blink_start_timer(term);
term_to_slave(term, "\033[I", 3);
if (term->focus_events)
term_to_slave(term, "\033[I", 3);
cursor_refresh(term);
} }
void void
term_focus_out(struct terminal *term) term_focus_out(struct terminal *term)
{ {
if (!term->focus_events) if (term->cursor_blink.active)
return; cursor_blink_stop_timer(term);
term_to_slave(term, "\033[O", 3);
if (term->focus_events)
term_to_slave(term, "\033[O", 3);
cursor_refresh(term);
} }
static int static int