[gtksourceview] gutter-text: avoid iter location lookups when wrapping is disabled



commit 1d32725c3c6adcf2bead412e0b0b544d27b9d9f8
Author: Christian Hergert <christian hergert me>
Date:   Mon Apr 18 15:41:30 2016 -0700

    gutter-text: avoid iter location lookups when wrapping is disabled
    
    If wrapping is disabled, then we can avoid calculating any iter locations
    (which is quite expensive) since we only have a single row. The alignment
    calculation will still take effect just fine.

 gtksourceview/gtksourcegutterrenderertext.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)
---
diff --git a/gtksourceview/gtksourcegutterrenderertext.c b/gtksourceview/gtksourcegutterrenderertext.c
index 796957d..99f63ad 100644
--- a/gtksourceview/gtksourcegutterrenderertext.c
+++ b/gtksourceview/gtksourcegutterrenderertext.c
@@ -153,7 +153,11 @@ gutter_renderer_text_draw (GtkSourceGutterRenderer      *renderer,
                                                  &xalign,
                                                  &yalign);
 
-       mode = gtk_source_gutter_renderer_get_alignment_mode (renderer);
+       /* Avoid calculations if we don't wrap text */
+       if (gtk_text_view_get_wrap_mode (view) == GTK_WRAP_NONE)
+               mode = GTK_SOURCE_GUTTER_RENDERER_ALIGNMENT_MODE_CELL;
+       else
+               mode = gtk_source_gutter_renderer_get_alignment_mode (renderer);
 
        switch (mode)
        {


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