diff options
author | Egmont Koblinger <egmont@gmail.com> | 2016-03-02 12:42:08 +0100 |
---|---|---|
committer | Egmont Koblinger <egmont@gmail.com> | 2016-03-02 12:45:17 +0100 |
commit | d950c5df7e2905b5897cc30160e20cf605af1d6a (patch) | |
tree | 14ec06ddb6889610839e029533d4e062e1dc2b34 | |
parent | ca5d9e6a905241dd6667fc3df4057ca1c6d8899f (diff) | |
download | vte-d950c5df7e2905b5897cc30160e20cf605af1d6a.tar.gz |
widget: Invalidate cursor on style change
https://bugzilla.gnome.org/show_bug.cgi?id=762963
(cherry picked from commit a633f57e05dc30f444c5407ecb30b1bd67754ff4)
-rw-r--r-- | src/vte.cc | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -3672,6 +3672,7 @@ VteTerminalPrivate::process_incoming() { VteVisualPosition saved_cursor; gboolean saved_cursor_visible; + VteCursorStyle saved_cursor_style; GdkPoint bbox_topleft, bbox_bottomright; gunichar *wbuf, c; long wcount, start; @@ -3698,6 +3699,7 @@ VteTerminalPrivate::process_incoming() /* Save the current cursor position. */ saved_cursor = m_screen->cursor; saved_cursor_visible = m_cursor_visible; + saved_cursor_style = m_cursor_style; in_scroll_region = m_scrolling_restricted && (m_screen->cursor.row >= (m_screen->insert_delta + m_scrolling_region.start)) @@ -4060,7 +4062,8 @@ next_match: check_cursor_blink(); /* Signal that the cursor moved. */ queue_cursor_moved(); - } else if (saved_cursor_visible != m_cursor_visible) { + } else if ((saved_cursor_visible != m_cursor_visible) || + (saved_cursor_style != m_cursor_style)) { // FIXMEchpe need to invalidate like invalidate_cursor_once() just for the saved_cursor coords! invalidate_cell(saved_cursor.col, saved_cursor.row); check_cursor_blink(); |