[gnome-text-editor] sourceview: move gutter tweaks to sourceview subclass



commit 6fef747d0bd3373dd6dfe8fd59aad2cc06a18a08
Author: Christian Hergert <chergert redhat com>
Date:   Tue Jun 29 15:24:08 2021 -0700

    sourceview: move gutter tweaks to sourceview subclass

 src/editor-page.c        | 24 ------------------------
 src/editor-source-view.c | 25 +++++++++++++++++++++++++
 2 files changed, 25 insertions(+), 24 deletions(-)
---
diff --git a/src/editor-page.c b/src/editor-page.c
index ae24544..7be7640 100644
--- a/src/editor-page.c
+++ b/src/editor-page.c
@@ -49,29 +49,6 @@ G_DEFINE_TYPE (EditorPage, editor_page, GTK_TYPE_WIDGET)
 
 static GParamSpec *properties [N_PROPS];
 
-static void
-editor_page_tweak_gutter_spacing (EditorPage *self)
-{
-  GtkSourceGutter *gutter;
-  GtkWidget *child;
-  guint n = 0;
-
-  g_assert (EDITOR_IS_PAGE (self));
-
-  /* Ensure we have a line gutter renderer to tweak */
-  gutter = gtk_source_view_get_gutter (self->view, GTK_TEXT_WINDOW_LEFT);
-  gtk_source_view_set_show_line_numbers (self->view, TRUE);
-
-  /* Add margin to first gutter renderer */
-  for (child = gtk_widget_get_first_child (GTK_WIDGET (gutter));
-       child != NULL;
-       child = gtk_widget_get_next_sibling (child), n++)
-    {
-      if (GTK_SOURCE_IS_GUTTER_RENDERER (child))
-        gtk_widget_set_margin_start (child, n == 0 ? 4 : 0);
-    }
-}
-
 static void
 editor_page_set_settings (EditorPage         *self,
                           EditorPageSettings *settings)
@@ -610,7 +587,6 @@ editor_page_init (EditorPage *self)
   GtkDropTarget *dest;
 
   gtk_widget_init_template (GTK_WIDGET (self));
-  editor_page_tweak_gutter_spacing (self);
 
   joined = editor_joined_menu_new ();
   extra_menu = gtk_text_view_get_extra_menu (GTK_TEXT_VIEW (self->view));
diff --git a/src/editor-source-view.c b/src/editor-source-view.c
index 07ad7ac..4e8c26b 100644
--- a/src/editor-source-view.c
+++ b/src/editor-source-view.c
@@ -72,6 +72,29 @@ on_key_pressed_cb (GtkEventControllerKey *key,
   return FALSE;
 }
 
+static void
+tweak_gutter_spacing (GtkSourceView *view)
+{
+  GtkSourceGutter *gutter;
+  GtkWidget *child;
+  guint n = 0;
+
+  g_assert (GTK_SOURCE_IS_VIEW (view));
+
+  /* Ensure we have a line gutter renderer to tweak */
+  gutter = gtk_source_view_get_gutter (view, GTK_TEXT_WINDOW_LEFT);
+  gtk_source_view_set_show_line_numbers (view, TRUE);
+
+  /* Add margin to first gutter renderer */
+  for (child = gtk_widget_get_first_child (GTK_WIDGET (gutter));
+       child != NULL;
+       child = gtk_widget_get_next_sibling (child), n++)
+    {
+      if (GTK_SOURCE_IS_GUTTER_RENDERER (child))
+        gtk_widget_set_margin_start (child, n == 0 ? 4 : 0);
+    }
+}
+
 static void
 editor_source_view_class_init (EditorSourceViewClass *klass)
 {
@@ -88,4 +111,6 @@ editor_source_view_init (EditorSourceView *self)
                     G_CALLBACK (on_key_pressed_cb),
                     self);
   gtk_widget_add_controller (GTK_WIDGET (self), controller);
+
+  tweak_gutter_spacing (GTK_SOURCE_VIEW (self));
 }


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