hermet pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=4d7622537f92cbf820fcaf41b4f9360e8f27359c

commit 4d7622537f92cbf820fcaf41b4f9360e8f27359c
Author: ChunEon Park <her...@hermet.pe.kr>
Date:   Fri Aug 15 17:44:13 2014 +0900

    entry: fix clearing selection region problem while it's already selected.
    
    if entry has selection, it would be cleared if selection region set is 
requested again.
    because entry cancel the selection area after it reset the selection area.
    unfortunately, the selection area is new selection so selection area is 
gone.
    
    this patch prevent clearing selection and keep the new selection.
    
    @fix
---
 src/lib/elm_entry.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/lib/elm_entry.c b/src/lib/elm_entry.c
index 4a2cfaf..f0df346 100644
--- a/src/lib/elm_entry.c
+++ b/src/lib/elm_entry.c
@@ -3972,6 +3972,11 @@ _elm_entry_select_region_set(Eo *obj EINA_UNUSED, 
Elm_Entry_Data *sd, int start,
         edje_object_signal_emit(sd->entry_edje, "elm,state,select,off", "elm");
      }
 
+   /* Set have selection false to not be cleared handler in
+      selection_cleared_signal_cb() since that callback will be called while
+      resetting edje text. */
+   sd->have_selection = EINA_FALSE;
+
    edje_object_part_text_cursor_pos_set(sd->entry_edje, "elm.text", 
EDJE_CURSOR_MAIN, start);
    edje_object_part_text_select_begin(sd->entry_edje, "elm.text");
    edje_object_part_text_cursor_pos_set(sd->entry_edje, "elm.text", 
EDJE_CURSOR_MAIN, end);

-- 


Reply via email to