summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2012-09-02 19:56:28 -0400
committerMatthias Clasen <mclasen@redhat.com>2012-09-02 19:56:28 -0400
commit39c8db124dab01ba09851a28ed720dafbd0148d0 (patch)
treea2f7d06e6e869b2be1af5ad58b93cf89e67c8599
parent1c11f6ed1afdca39d332927b55e56d016b2ad568 (diff)
downloadgtk+-touch-text-selection.tar.gz
Don't show cursor handles without a cursortouch-text-selection
A non-editable textview may or may not have a cursor. Take that into account when showing handles.
-rw-r--r--gtk/gtktextview.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/gtk/gtktextview.c b/gtk/gtktextview.c
index 853d977489..3256e79f39 100644
--- a/gtk/gtktextview.c
+++ b/gtk/gtktextview.c
@@ -4585,8 +4585,13 @@ _gtk_text_view_update_handles (GtkTextView *text_view,
if (mode == GTK_TEXT_HANDLE_MODE_SELECTION &&
gtk_text_iter_compare (&cursor, &bound) == 0)
{
- mode = gtk_widget_is_sensitive (GTK_WIDGET (text_view)) ? GTK_TEXT_HANDLE_MODE_CURSOR :
- GTK_TEXT_HANDLE_MODE_NONE;
+ mode = GTK_TEXT_HANDLE_MODE_CURSOR;
+ }
+
+ if (mode == GTK_TEXT_HANDLE_MODE_CURSOR &&
+ (!gtk_widget_is_sensitive (GTK_WIDGET (text_view)) || !priv->cursor_visible))
+ {
+ mode = GTK_TEXT_HANDLE_MODE_NONE;
}
_gtk_text_handle_set_mode (priv->text_handle, mode);