summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEgmont Koblinger <egmont@gmail.com>2016-03-02 12:42:08 +0100
committerEgmont Koblinger <egmont@gmail.com>2016-03-02 12:47:07 +0100
commit8d3fb14d16094b1f5310967a5f897d733877ec48 (patch)
tree00e0e2d60deb40d62532de2e1af55acc40b1616f
parent08d68ed84a88377a776ef403d7814c9c1792e573 (diff)
downloadvte-8d3fb14d16094b1f5310967a5f897d733877ec48.tar.gz
widget: Invalidate cursor on style change0.42.5
https://bugzilla.gnome.org/show_bug.cgi?id=762963 (cherry picked from commit a633f57e05dc30f444c5407ecb30b1bd67754ff4)
-rw-r--r--src/vte.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/vte.cc b/src/vte.cc
index 701891ba..2a31853f 100644
--- a/src/vte.cc
+++ b/src/vte.cc
@@ -3701,6 +3701,7 @@ vte_terminal_process_incoming(VteTerminal *terminal)
VteScreen *screen;
VteVisualPosition cursor;
gboolean cursor_visible;
+ VteCursorStyle cursor_style;
GdkPoint bbox_topleft, bbox_bottomright;
gunichar *wbuf, c;
long wcount, start, delta;
@@ -3725,6 +3726,7 @@ vte_terminal_process_incoming(VteTerminal *terminal)
/* Save the current cursor position. */
cursor = screen->cursor;
cursor_visible = terminal->pvt->cursor_visible;
+ cursor_style = terminal->pvt->cursor_style;
in_scroll_region = terminal->pvt->scrolling_restricted
&& (screen->cursor.row >= (screen->insert_delta + terminal->pvt->scrolling_region.start))
@@ -4085,7 +4087,8 @@ next_match:
_vte_check_cursor_blink(terminal);
/* Signal that the cursor moved. */
vte_terminal_queue_cursor_moved(terminal);
- } else if (cursor_visible != terminal->pvt->cursor_visible) {
+ } else if ((cursor_visible != terminal->pvt->cursor_visible) ||
+ (cursor_style != terminal->pvt->cursor_style)) {
_vte_invalidate_cell(terminal, cursor.col, cursor.row);
_vte_check_cursor_blink(terminal);
}