billiob pushed a commit to branch master.

http://git.enlightenment.org/apps/terminology.git/commit/?id=03802df2a95fb2391c0508c5e47d3563ec4cb4f2

commit 03802df2a95fb2391c0508c5e47d3563ec4cb4f2
Author: Boris Faure <bill...@gmail.com>
Date:   Fri Nov 15 22:21:11 2013 +0100

    simple click doesn't create one-char selection
    
    (for real…)
---
 src/bin/termio.c | 33 ++++++++++-----------------------
 1 file changed, 10 insertions(+), 23 deletions(-)

diff --git a/src/bin/termio.c b/src/bin/termio.c
index 466c254..3895d61 100644
--- a/src/bin/termio.c
+++ b/src/bin/termio.c
@@ -3083,7 +3083,6 @@ _smart_cb_mouse_down(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_UNUS
                   start_y = sd->pty->selection.start.y;
                   end_x   = sd->pty->selection.end.x;
                   end_y   = sd->pty->selection.end.y;
-                  _sel_set(data, EINA_TRUE);
                   sd->pty->selection.makesel = EINA_TRUE;
                   if (sd->pty->selection.is_box)
                     {
@@ -3140,29 +3139,16 @@ _smart_cb_mouse_down(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_UNUS
                   else
                     {
                        sd->moved = EINA_FALSE;
-                       _sel_set(data, EINA_TRUE);
-                       if (evas_key_modifier_is_set(ev->modifiers, "Shift") ||
+                       sd->pty->selection.is_box =
+                          (evas_key_modifier_is_set(ev->modifiers, "Shift") ||
                            evas_key_modifier_is_set(ev->modifiers, "Control") 
||
-                           evas_key_modifier_is_set(ev->modifiers, "Alt"))
-                         {
-                            sd->pty->selection.start.x = cx;
-                            sd->pty->selection.start.y = cy - sd->scroll;
-                            sd->pty->selection.end.x = cx;
-                            sd->pty->selection.end.y = cy - sd->scroll;
-                            sd->pty->selection.makesel = EINA_TRUE;
-                            sd->pty->selection.is_box = EINA_TRUE;
-                            _selection_dbl_fix(data);
-                         }
-                       else
-                         {
-                            sd->pty->selection.makesel = EINA_TRUE;
-                            sd->pty->selection.start.x = cx;
-                            sd->pty->selection.start.y = cy - sd->scroll;
-                            sd->pty->selection.end.x = cx;
-                            sd->pty->selection.end.y = cy - sd->scroll;
-                            sd->pty->selection.is_box = EINA_FALSE;
-                            _selection_dbl_fix(data);
-                         }
+                           evas_key_modifier_is_set(ev->modifiers, "Alt"));
+                       sd->pty->selection.start.x = cx;
+                       sd->pty->selection.start.y = cy - sd->scroll;
+                       sd->pty->selection.end.x = cx;
+                       sd->pty->selection.end.y = cy - sd->scroll;
+                       sd->pty->selection.makesel = EINA_TRUE;
+                       _selection_dbl_fix(data);
                     }
                }
           }
@@ -3329,6 +3315,7 @@ _smart_cb_mouse_move(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_UNUS
    if (sd->pty->selection.makesel)
      {
         int start_x, start_y, end_x, end_y;
+        _sel_set(data, EINA_TRUE);
 
         if (!sd->pty->selection.is_active)
           {

-- 


Reply via email to