File gtktextview.c.diff of Package gtk2

Index: gtk/gtktextview.c
===================================================================
--- gtk/gtktextview.c.orig
+++ gtk/gtktextview.c
@@ -6043,29 +6043,6 @@ gtk_text_view_ensure_layout (GtkTextView
 			G_CALLBACK (gtk_text_view_child_allocated),
 			text_view);
       
-      if (get_buffer (text_view))
-        gtk_text_layout_set_buffer (text_view->layout, get_buffer (text_view));
-
-      if ((GTK_WIDGET_HAS_FOCUS (text_view) && text_view->cursor_visible))
-        gtk_text_view_pend_cursor_blink (text_view);
-      else
-        gtk_text_layout_set_cursor_visible (text_view->layout, FALSE);
-
-      gtk_text_layout_set_overwrite_mode (text_view->layout,
-					  text_view->overwrite_mode && text_view->editable);
-
-      ltr_context = gtk_widget_create_pango_context (GTK_WIDGET (text_view));
-      pango_context_set_base_dir (ltr_context, PANGO_DIRECTION_LTR);
-      rtl_context = gtk_widget_create_pango_context (GTK_WIDGET (text_view));
-      pango_context_set_base_dir (rtl_context, PANGO_DIRECTION_RTL);
-
-      gtk_text_layout_set_contexts (text_view->layout, ltr_context, rtl_context);
-
-      g_object_unref (ltr_context);
-      g_object_unref (rtl_context);
-
-      gtk_text_view_check_keymap_direction (text_view);
-
       style = gtk_text_attributes_new ();
 
       gtk_widget_ensure_style (widget);
@@ -6088,6 +6065,26 @@ gtk_text_view_ensure_layout (GtkTextView
 
       gtk_text_attributes_unref (style);
 
+      if (get_buffer (text_view))
+        gtk_text_layout_set_buffer (text_view->layout, get_buffer (text_view));
+
+      if ((GTK_WIDGET_HAS_FOCUS (text_view) && text_view->cursor_visible))
+        gtk_text_view_pend_cursor_blink (text_view);
+      else
+        gtk_text_layout_set_cursor_visible (text_view->layout, FALSE);
+
+      ltr_context = gtk_widget_create_pango_context (GTK_WIDGET (text_view));
+      pango_context_set_base_dir (ltr_context, PANGO_DIRECTION_LTR);
+      rtl_context = gtk_widget_create_pango_context (GTK_WIDGET (text_view));
+      pango_context_set_base_dir (rtl_context, PANGO_DIRECTION_RTL);
+
+      gtk_text_layout_set_contexts (text_view->layout, ltr_context, rtl_context);
+
+      g_object_unref (ltr_context);
+      g_object_unref (rtl_context);
+
+      gtk_text_view_check_keymap_direction (text_view);
+
       /* Set layout for all anchored children */
 
       tmp_list = text_view->children;
openSUSE Build Service is sponsored by