[gnome-builder/wip/libide] libide: add exclusivity to paragraph start/end



commit baadc91a77087479fdd99c4c2edc6dcf7cb0afb2
Author: Christian Hergert <christian hergert me>
Date:   Fri Mar 6 13:05:18 2015 -0800

    libide: add exclusivity to paragraph start/end

 libide/ide-source-view-movements.c |   25 ++++++++++++++++++++++++-
 1 files changed, 24 insertions(+), 1 deletions(-)
---
diff --git a/libide/ide-source-view-movements.c b/libide/ide-source-view-movements.c
index ebc7c4f..84d5b85 100644
--- a/libide/ide-source-view-movements.c
+++ b/libide/ide-source-view-movements.c
@@ -794,13 +794,36 @@ static void
 ide_source_view_movements_paragraph_start (Movement *mv)
 {
   _ide_vim_iter_backward_paragraph_start (&mv->insert);
+
+  if (mv->exclusive)
+    {
+      while (g_unichar_isspace (gtk_text_iter_get_char (&mv->insert)))
+        {
+          if (!gtk_text_iter_forward_char (&mv->insert))
+            break;
+        }
+    }
 }
 
 static void
 ide_source_view_movements_paragraph_end (Movement *mv)
 {
-
   _ide_vim_iter_forward_paragraph_end (&mv->insert);
+
+  if (mv->exclusive)
+    {
+      gboolean adjust = FALSE;
+
+      while (g_unichar_isspace (gtk_text_iter_get_char (&mv->insert)))
+        {
+          adjust = TRUE;
+          if (!gtk_text_iter_backward_char (&mv->insert))
+            break;
+        }
+
+      if (adjust)
+        gtk_text_iter_forward_char (&mv->insert);
+    }
 }
 
 static void


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