diff options
author | Nalin Dahyabhai <nalin@src.gnome.org> | 2002-09-02 23:25:28 +0000 |
---|---|---|
committer | Nalin Dahyabhai <nalin@src.gnome.org> | 2002-09-02 23:25:28 +0000 |
commit | da6d49171075c60a7c81f94317651e9230eb58c3 (patch) | |
tree | 582537193590c64606e297df11463d76d3f981d1 | |
parent | 15258667b28664dd603e2a7fa2a8861eb14645e8 (diff) |
- cleanups - don't invalidate subwindowsvte_0_8_15vte_0_8_14
- cleanups
- don't invalidate subwindows
-rw-r--r-- | src/vte.c | 31 | ||||
-rw-r--r-- | vte.spec | 5 |
2 files changed, 23 insertions, 13 deletions
@@ -267,6 +267,7 @@ struct _VteTerminalPrivate { /* Cursor blinking. */ gboolean cursor_blinks; gint cursor_blink_tag; + gint cursor_blink_timeout; gboolean cursor_visible; /* Input device options. */ @@ -587,7 +588,7 @@ vte_invalidate_cells(VteTerminal *terminal, rect.height = row_count * terminal->char_height; /* Invalidate the rectangle. */ - gdk_window_invalidate_rect(widget->window, &rect, TRUE); + gdk_window_invalidate_rect(widget->window, &rect, FALSE); } /* Redraw the entire visible portion of the window. */ @@ -612,7 +613,7 @@ vte_invalidate_all(VteTerminal *terminal) 2 * VTE_PAD_WIDTH; rect.height = terminal->row_count * terminal->char_height + 2 * VTE_PAD_WIDTH; - gdk_window_invalidate_rect((GTK_WIDGET(terminal))->window, &rect, TRUE); + gdk_window_invalidate_rect((GTK_WIDGET(terminal))->window, &rect, FALSE); } /* Scroll a rectangular region up or down by a fixed number of lines. */ @@ -741,12 +742,18 @@ vte_invalidate_cursor_periodic(gpointer data) g_object_get(G_OBJECT(settings), "gtk-cursor-blink-time", &blink_cycle, NULL); } - terminal->pvt->cursor_blink_tag = g_timeout_add_full(G_PRIORITY_LOW, - blink_cycle / 2, - vte_invalidate_cursor_periodic, - terminal, - NULL); - return FALSE; + + if (terminal->pvt->cursor_blink_timeout != blink_cycle) { + terminal->pvt->cursor_blink_tag = g_timeout_add_full(G_PRIORITY_LOW, + blink_cycle / 2, + vte_invalidate_cursor_periodic, + terminal, + NULL); + terminal->pvt->cursor_blink_timeout = blink_cycle; + return FALSE; + } else { + return TRUE; + } } /* Emit a "selection_changed" signal. */ @@ -9845,6 +9852,7 @@ vte_terminal_init(VteTerminal *terminal, gpointer *klass) pvt->cursor_blinks = FALSE; pvt->cursor_blink_tag = -1; pvt->cursor_visible = TRUE; + pvt->cursor_blink_timeout = 1000; /* Input options. */ if (gettimeofday(&tv, &tz) == 0) { @@ -12105,10 +12113,9 @@ vte_terminal_expose(GtkWidget *widget, GdkEventExpose *event) { g_return_val_if_fail(VTE_IS_TERMINAL(widget), 0); if (event->window == widget->window) { - if ((GTK_WIDGET_REALIZED(widget) && - (GTK_WIDGET_DRAWABLE(widget) && - (gdk_window_get_state(widget->window) != - GDK_VISIBILITY_FULLY_OBSCURED)))) { + if (GTK_WIDGET_REALIZED(widget) && + GTK_WIDGET_VISIBLE(widget) && + GTK_WIDGET_MAPPED(widget)) { vte_terminal_paint(widget, &event->area); } } else { @@ -1,5 +1,5 @@ Name: vte -Version: 0.8.14 +Version: 0.8.15 Release: 1 Summary: An experimental terminal emulator. License: LGPL @@ -61,6 +61,9 @@ rm $RPM_BUILD_ROOT/%{_libdir}/lib%{name}.la %{_libdir}/pkgconfig/* %changelog +* Mon Sep 2 2002 Nalin Dahyabhai <nalin@redhat.com> 0.8.15-1 +- cleanups + * Fri Aug 30 2002 Nalin Dahyabhai <nalin@redhat.com> 0.8.14-1 - get smarter about adjusting our adjustments (#73091) |