[gtksourceview/gnome-3-20] view: simplify code of update_style_scheme()



commit 6341beebc614528bf4a613063add6bc91bc97bfc
Author: Sébastien Wilmet <swilmet gnome org>
Date:   Sun Jun 12 14:33:57 2016 +0200

    view: simplify code of update_style_scheme()

 gtksourceview/gtksourceview.c |   47 +++++++++++++++++-----------------------
 1 files changed, 20 insertions(+), 27 deletions(-)
---
diff --git a/gtksourceview/gtksourceview.c b/gtksourceview/gtksourceview.c
index 97f95ff..2b0db3f 100644
--- a/gtksourceview/gtksourceview.c
+++ b/gtksourceview/gtksourceview.c
@@ -5186,8 +5186,8 @@ gtk_source_view_realize (GtkWidget *widget)
 static void
 gtk_source_view_update_style_scheme (GtkSourceView *view)
 {
-       GtkSourceStyleScheme *new_scheme;
        GtkTextBuffer *buffer;
+       GtkSourceStyleScheme *new_scheme = NULL;
 
        buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (view));
 
@@ -5195,38 +5195,31 @@ gtk_source_view_update_style_scheme (GtkSourceView *view)
        {
                new_scheme = gtk_source_buffer_get_style_scheme (GTK_SOURCE_BUFFER (buffer));
        }
-       else
+
+       if (view->priv->style_scheme == new_scheme)
        {
-               new_scheme = NULL;
+               return;
        }
 
-       if (view->priv->style_scheme != new_scheme)
+       if (view->priv->style_scheme != NULL)
        {
-               if (view->priv->style_scheme != NULL)
-               {
-                       _gtk_source_style_scheme_unapply (view->priv->style_scheme, view);
-                       g_object_unref (view->priv->style_scheme);
-               }
+               _gtk_source_style_scheme_unapply (view->priv->style_scheme, view);
+       }
 
-               view->priv->style_scheme = new_scheme;
-               if (new_scheme != NULL)
-               {
-                       g_object_ref (new_scheme);
-               }
+       g_set_object (&view->priv->style_scheme, new_scheme);
 
-               if (gtk_widget_get_realized (GTK_WIDGET (view)))
-               {
-                       _gtk_source_style_scheme_apply (new_scheme, view);
-                       update_background_pattern_color (view);
-                       update_current_line_color (view);
-                       update_right_margin_colors (view);
-                       update_spaces_color (view);
-                       view->priv->style_scheme_applied = TRUE;
-               }
-               else
-               {
-                       view->priv->style_scheme_applied = FALSE;
-               }
+       if (gtk_widget_get_realized (GTK_WIDGET (view)))
+       {
+               _gtk_source_style_scheme_apply (new_scheme, view);
+               update_background_pattern_color (view);
+               update_current_line_color (view);
+               update_right_margin_colors (view);
+               update_spaces_color (view);
+               view->priv->style_scheme_applied = TRUE;
+       }
+       else
+       {
+               view->priv->style_scheme_applied = FALSE;
        }
 }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]