Commit Graph

149 Commits

Author SHA1 Message Date
Carsten Haitzler 5641910ed2 edje entry - be clearer and more efficient on string appending
using strncpy with strlen of the string you append is pointless.
again... strcpy will do - but use memcpy to be exact and pre-compute
sizing etc. only once. fixes warnings.
2018-11-09 12:18:59 +00:00
Youngbok Shin 517018e008 evas textblock: add/apply cursor cluster APIs based on grapheme cluster
Summary:
Add a feature for moving cursor over a grapheme cluster.
It is applied to edje_entry.c and elm_entry.c for improving
cursor handling just like other modern text editors. ex) gedit
The patch on Evas needs to update libunibreak library.
So, the patch will update libunibreak, too.
@feature

Test Plan:
1. Put "ഹലോ" in your entry.
2. Your cursor can reach at the end of text from the beginning
   only in 2 right key event with this feature.

Reviewers: raster, cedric, jpeg, herdsman, zmike, devilhorns

Reviewed By: herdsman, zmike

Subscribers: #reviewers, #committers, zmike, bowonryu, woohyun

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5490
2018-08-20 10:29:32 -04:00
Jihoon Kim 379ee0d0db elm_entry: add elm_entry_prediction_hint_hash_set/del API
elm_entry_prediction_hint_hash_set API sets the prediction hint data at the specified key, and
elm_entry_prediction_hint_hash_del API is for deleting the prediction hint data identified by a key.

@feature

Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
2018-05-23 11:27:34 +09:00
Xavi Artigas 65ee277a66 Efl.Canvas.Scene (from Efl.Canvas)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:23 -07:00
Carsten Haitzler dc70d5cb55 edje - entry - fix empty item handling
tjhis should fix empty items which might have a null item string...
deal with it

fixes T6668

@fix
2018-02-11 19:20:46 +09:00
Jean-Philippe Andre 9cec14918c evas: Move evas_canvas.eo to legacy-only
This isn't meant to be installed. The canvas API in EO is based around
the interfaces Efl.Canvas and the widget Efl.Ui.Win. Anything else is
not EO (eg: ecore_evas, evas, ...)

Note: evas_canvas3d is the last remaining thing that is installed along
EO files, but those are all beta APIs.
2017-11-01 11:22:33 +09:00
Youngbok Shin d7a2993d47 edje entry: fill content info when text is deleted by imf event
Summary:
There was missing info when text is deleted by _edje_entry_imf_event_delete_surrounding_cb().
@fix

Test Plan: N/A

Reviewers: kimcinoo, raster, cedric, jpeg, herdsman

Differential Revision: https://phab.enlightenment.org/D5240
2017-09-29 15:29:32 +09:00
Daniel Hirt 128130285a Entry: use _edje_seat_name_get to get the seat
The "default" name doesn't mean a lot to edje. Use the helper function
to get the proper seat name.
This fixes IMF for the Entry widget, that did not get triggered on the
hotkey combination.

@fix
2017-09-18 19:47:52 +03:00
Jean-Philippe Andre 46001cde38 edje: Remove use of smart clipped data
This removes dependency on a legacy structure.
Edje object does not change the smart data, unlike evas box and grid.
2017-09-13 09:57:05 +09:00
Carsten Haitzler fe781b284c edje entry - remove extra else and free as sdtring is null there
string is null so no need to free. not a bug but cleaner and analysers
dont like it.

found by PVS studio
2017-07-29 11:08:46 +09:00
Daniel Hirt d5f781da2b Efl text: replace all usages of cursor handle to same type
Changes cursor handle name from 'Efl.Text.Cursor.Cursor_Data' to
'Efl.Text.Cursor.Cursor'.
Also, replace all usages of Efl_Canvas_Text_Cursor
with Efl_Text_Cursor_Cursor as the handle for the cursor.
2017-07-17 16:51:45 +03:00
Youngbok Shin e81be3a664 edje: give proper width to entry's cursor according to its theme
Summary:
evas_object_textblock_cursor_geometry_get() always return 0 as cursor's width
for BEFORE type cursor. It casued different cursor width when cursor_fg2 was shown.
The cursor_fg and cursor_fg2 must have same width according to its min width.

Also, the patch will enclose code for cursor_fg2 by cursor_fg code.
It is used when only there is cursor_fg.
@fix

Test Plan:
1. Give bigger width to entry's cursor by changing its theme.
2. See the width cursor_fg, cursor_fg2 when there is [LTR text + RTL text].

Reviewers: raster, herdsman, cedric, jpeg

Subscribers: stefan_schmidt

Differential Revision: https://phab.enlightenment.org/D4798
2017-07-12 18:37:50 +09:00
Jihoon Kim 1dcf2c814c elm_entry: Add prediction hint API
prediction hint can be used to provide an intelligent reply suggestion.

@feature
2017-06-26 13:44:58 +09:00
Jean-Philippe Andre e8f9f109a6 evas: Rename device Class to Type, remove Sub_Class
1. The word "class" is a pain point with many languages where
   it's a keyword. Type is a little better. Also, the property
   was already named "device_type" and not "device_class".

2. Remove Efl.Input.Device.Sub_Class
   It's not used inside EFL upstream codebase, and unlikely to
   be used anywhere else (even in Tizen).

Hopefully no one used the Efl_ enum types. So far only the Evas_
types should be in used.

Ref T5540
2017-06-12 15:21:55 +09:00
Jean-Philippe Andre 83d18617b4 evas: Remove device "parent", "name" and "description" properties
Those are now merged with Efl.Object parent, name and comment.
The reasoning is that only seats can be parent devices; And name
and description are not only name clashes but also not extremely
useful anyway.

Tested with VNC.

Fixes T5540
2017-06-12 15:17:50 +09:00
Daniel Hirt 98dad1a52b Canvas layout: port 'part_text' to Efl.Text.*
The following API is now supported with efl_part:

  - Efl.Text.text { set; get; }
  - Efl.Text.Cursor.cursor { get; }
  - Efl.Text.Cursor.cursor_paragraph_first;
  - Efl.Text.Cursor.cursor_paragraph_last;
  - Efl.Text.Cursor.cursor_position { set; get; }
  - Efl.Text.Cursor.cursor_coord_set;
  - Efl.Text.Cursor.cursor_line_char_first;
  - Efl.Text.Cursor.cursor_line_char_last;
  - Efl.Text.Cursor.cursor_char_next;
  - Efl.Text.Cursor.cursor_char_prev;
  - Efl.Text.Cursor.cursor_line_jump_by;
  - Efl.Text.Cursor.cursor_copy;
  - Efl.Text.Cursor.cursor_content { get; }
  - Efl.Text.Cursor.cursor_geometry { get; }
  - Efl.Text.Cursor.cursor_text_insert;

Many of the 'part_text' functionality was moved to legacy, too.
See the edje_object.eo to see which ones are still supported.
2017-06-12 00:10:05 +03:00
Jihoon Kim 4519a8f923 edje: pass whole text to IMF in case of selection
Summary:
This patch partially reverts D2951.
_edje_entry_imf_retrieve_surrounding_cb() function has to pass
whole text nearby the entry's cursor. If IMF needs to ignore
selected text when the entry has selection, IMF can check
selected text by calling _edje_entry_imf_retrieve_selection_cb().
So, we don't need remove selected text before passing it to IMF.
@fix

Test Plan: N/A

Reviewers: woohyun, jihoon, subodh6129

Reviewed By: subodh6129

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4321
2017-06-08 17:02:35 +09:00
Guilherme Iscaro 347c75fbe3 Efl.Canvas.Object: Multi-seat API should not be exposed to legacy.
Summary: This new kind of APIs should be EO only.

Reviewers: jpeg, cedric, barbieri, bdilly, stefan_schmidt

Reviewed By: cedric, barbieri

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4696

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-03-02 11:06:20 -08:00
Jee-Yong Um 57c14f1c55 edje: fix cached edje modification issue
Summary:
_edje_part_***_set/get (for mouse_events, repeat_events, ignore_flags, mask_flags)
overwrite cached edje value. These behaviors affect all edje object added after
these changes, and result in not intended.

@fix

Reviewers: jpeg, cedric

Subscribers: akanad, woohyun

Differential Revision: https://phab.enlightenment.org/D4362

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2017-02-07 15:14:54 -08:00
Vyacheslav Reutskiy 13541f0054 edje_entry: don't send a 'changed' signal if Control is lock
This patch is avoid extra 'change' signals from edje_entry to
elm_entry.
Basically the entry fields does not react to keys pressed with
modificator 'Ctrl'. I was test on Windows 7, MacOS 10.12 and Unity
(GTK+) and they all have similar behavior - keys with 'Ctrl' are
ignored. So this patch make expected beharior for elm_entry
(edje_entry).
2017-01-25 16:27:23 +02:00
Cedric BAIL 48fb9856c0 edje: fix float comparison warning in edje text logic. 2016-12-20 16:39:30 -08:00
Bruno Dilly bb3fd015de edje: add names for seats following an incremental pattern
This way it'll be possible to write EDC with seat names that
will work no matter how seats are named by each ecore_evas
backend or users.
2016-12-19 14:58:35 -02:00
Bruno Dilly 5cfdf3ec3a edje: support seat on focus action and signals
Seat goes as an optional parameter for FOCUS_SET (if not
provided, act over default seat), and emit signals
with seat suffix:
 * focus,in,$SEAT
 * focus,out,$SEAT
 * focus,part,in,$SEAT
 * focus,part,out,$SEAT
2016-12-19 14:58:35 -02:00
Youngbok Shin 29ec0aa194 edje entry: fix crash issue due to improper callback handling
Summary:
If there were multiple elm_entry objects and some of them were deleted,
the callback function would cause crash problem.
The callback function only for specific data should be deleted when
a entry object is deleted.
@fix

Test Plan: N/A

Reviewers: raster, cedric, herdsman, woohyun, subodh6129

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D4435
2016-11-29 14:39:01 +09:00
Thiep Ha cc7dbde840 text/entry: add more key controls for os x
In OS X, cmd-c,v, ... keys are used instead of ctrl-c,v...,
this patch adapts these key handlings.
2016-09-23 17:51:37 +09:00
Daniel Hirt 2e53068907 Edje entry: fix selection start with shift + mouse_down
Fixes T3043.

Starting a selection should be possible with shift + mouse_down. No need to
check the "have_selection" flag.

@fix
2016-09-05 14:32:34 +03:00
Subodh Kumar 0f4cdf7a48 Edje entry: Pass correct cursor position and text to imf in case of selection
Summary:
When selection is there we are passing the whole text and position to imf
which sees that next character like matras (eg .Hindi) should be inserted
(if pressed) and when matra comes the selected text is gone and only matra
remains in the entry.

eg:  we have text in hindi like मानक, select all and hit matra in keyboard
selected text is gone, only matra is there.

@fix

Test Plan: Tested in Tizen device

Reviewers: jihoon, tasn, herdsman, thiepha

Subscribers: Hermet, shilpasingh, raster, subodh, jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D2951
2016-08-29 17:26:40 +09:00
Jihoon Kim 0e35f8454e edje_entry: Make a result of retrieve_surrounding_cb secure
Summary:
Regardless of the password mode of Entry,
_edje_entry_imf_retrieve_surrounding_cb alwalys passes plain_text
to any callers who register that callback.

This commit replace plain text with '*'
because current behavior could be a security hole in some case.

Reviewers: woohyun, id213sin, jihoon

Reviewed By: jihoon

Subscribers: cedric, jsuya, z-wony, jpeg

Differential Revision: https://phab.enlightenment.org/D4238
2016-08-18 10:40:24 +09:00
Carsten Haitzler b146b60974 edje entry - handle insanely low lemory if list_append fails
this fixes coverity CID 1357752
2016-08-08 17:47:14 +09:00
Carsten Haitzler dd584b9f79 efl - edje entry - dont emit changed on markup set unless text changed
if the text didnt actually change we generat a lot of noise in changed
signals for no change at all in text. shortcut this and check the new
and old text and compare ptrs, 0 length and strings etc.

this fixes T4045

@fix
2016-08-08 14:27:26 +09:00
Carsten Haitzler 1c7663e311 edje entry - check all minor struct callocs and on fail report + unwind
lots of unchecked malloc/calloc returns, so check these, unwind safely
and complain (highly unlikely to happen unless the system is about to
fall over). this should fix T4230
2016-07-28 11:00:35 +09:00
Carsten Haitzler 35e39f4145 edje entry - fix coverity CID 1357752
fix potential crash if calloc fails and sel is NULL

@fix
2016-07-24 18:44:15 +09:00
Subodh Kumar e0251ad46f Edje entry: Do not update anchors outside viewport.
Summary:
Do not update anchors outside viewport.

Problem is that when entry contains large number of anchors,
scrolling and launch performance is degraded due to lots of objects
being created and maintained, so to enhance the performance of
entry with anchors,  anchors is not  updated outside the viewport.

Test Plan:
1. Should have large number of anchors in entry
2. Observe the launch and scrolling performance.

Reviewers: tasn, raster, herdsman

Subscribers: thiepha, raster, cedric, jpeg

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D3543
2016-07-12 10:50:53 +00:00
Subodh Kumar 4aa0590ebd Edje entry: Add link press effect
Summary:
Add link press effect

Custom tag (linked_pressed) has to be supplied in entry tb style
with color value for press effect to be applied on link text.

Reviewers: tasn

Subscribers: shilpasingh, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3629
2016-07-11 18:26:29 +09:00
Youngbok Shin df40586f65 Edje entry: Skip codes for updating cursor when cursor position is not changed
Summary:
When ever a Edje's cursor function is called, "cursor,changed" signal is
emitted. Even if the position is not changed. And, in Elementary, the signal
will trigger evas_smart_objects_calculate() from elm_widget_show_region_set().
It causes bad performace.
@fix

Test Plan: N/A

Reviewers: tasn, herdsman, cedric, woohyun

Subscribers: jpeg, z-wony, Blackmole

Differential Revision: https://phab.enlightenment.org/D3902
2016-07-11 17:09:36 +09:00
Shilpa Singh 5b791420ea Accessibility: Read pre-edit text.
Summary:
Edje_entry:  In order to read pre-edit characters as well,
send entry_change_info with preedit,changed
Elm_entry: In order to read pre-edit characters as well,
send text to screen reader on preedit,changed.

Test Plan:
1. Change keyboard language to korean/enable prediction
2. Check the reading, text should be read even before committing

Signed-off-by: Shilpa Singh <shilpa.singh@samsung.com>

Reviewers: thiepha, jihoon, cedric, raster

Reviewed By: raster

Subscribers: raster, kimcinoo, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4145
2016-07-11 10:36:39 +09:00
Youngbok Shin 14cbd23d29 Edje, Elementary: Remove <password=off> tag when password mode is disabled
Summary:
When edje_password_show_last option is enabled, the edje_entry uses <password=off>
for showing last character. But, when password mode is disabled by the elm_entry,
<password=off> is remained in the text. It can cause some problems.

Because, there is no way to control password mode by API for the edje_entry.
The elm_entry can't remove <password=off> tag before getting text from the edje_entry.
So, the patch adds edje_object_part_text_hide_visible_password() function and
the elm_entry will use this when elm_layout_theme_apply() is called.
@fix

Test Plan:
1. Run "elementary_test".
2. Show "Entry Password" demo. (Newly added by this patch)
3. Password mode is enabled. Put some text.
4. Click "Show Password" check box to disable password mode.
5. Put more text.
6. Click "Hide Password" check box to enable password mode again.
7. See a character among the text is visible. (without this patch)

Reviewers: tasn, herdsman, cedric, jpeg, thiepha, raster

Reviewed By: raster

Subscribers: Blackmole, z-wony, woohyun

Differential Revision: https://phab.enlightenment.org/D3988
2016-06-20 21:11:25 +09:00
Jihoon Kim 2b8d93a5d1 ecore_imf: Add multiline hint in input hint
@feature
2016-05-18 15:21:12 +09:00
Jihoon Kim fa344ea0be edje_entry: fix crash issue in case of no selection text
@fix
2016-04-27 21:30:42 +09:00
Jihoon Kim 0876135260 edje entry: fix bug not to call ecore_imf_context_cursor_position_set when deleteing surrounding text 2016-03-31 11:34:01 +09:00
Mike Blumenkrantz 08d72bf85f edje: do not emit selection,start twice when running select all
@fix
2016-03-17 14:18:29 -04:00
Carsten Haitzler 9d3391e350 edje entry: fix gcc warnings about possibly uninitialized variables
this fixes warnings from gcc specifically:

lib/edje/edje_entry.c: In function ‘_edje_entry_imf_cursor_info_set’:
lib/edje/edje_entry.c:4104:4: warning: ‘dir’ may be used uninitialized
in this function [-Wmaybe-uninitialized]
    ecore_imf_context_bidi_direction_set(en->imf_context,
(Ecore_IMF_BiDi_Direction)dir);
    ^
    lib/edje/edje_entry.c:4099:24: note: ‘dir’ was declared here
        Evas_BiDi_Direction dir;
                                ^
                                lib/edje/edje_entry.c:4103:4: warning:
‘ch’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:27: note: ‘ch’ was declared here
        Evas_Coord cx, cy, cw, ch;
                                   ^
                                   lib/edje/edje_entry.c:4103:4:
warning: ‘cw’ may be used uninitialized in this function
[-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:23: note: ‘cw’ was declared here
        Evas_Coord cx, cy, cw, ch;
                               ^
                               lib/edje/edje_entry.c:4103:4: warning:
‘cy’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:19: note: ‘cy’ was declared here
        Evas_Coord cx, cy, cw, ch;
                           ^
                           lib/edje/edje_entry.c:4103:4: warning:
‘cx’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:15: note: ‘cx’ was declared here
        Evas_Coord cx, cy, cw, ch;
                       ^
                       lib/edje/edje_entry.c: In function
‘_edje_part_move_cb’:
lib/edje/edje_entry.c:4104:4: warning: ‘dir’ may be used uninitialized
in this function [-Wmaybe-uninitialized]
    ecore_imf_context_bidi_direction_set(en->imf_context,
(Ecore_IMF_BiDi_Direction)dir);
    ^
    lib/edje/edje_entry.c:4099:24: note: ‘dir’ was declared here
        Evas_BiDi_Direction dir;
                                ^
                                lib/edje/edje_entry.c:4103:4: warning:
‘ch’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:27: note: ‘ch’ was declared here
        Evas_Coord cx, cy, cw, ch;
                                   ^
                                   lib/edje/edje_entry.c:4103:4:
warning: ‘cw’ may be used uninitialized in this function
[-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:23: note: ‘cw’ was declared here
        Evas_Coord cx, cy, cw, ch;
                               ^
                               lib/edje/edje_entry.c:4103:4: warning:
‘cy’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:19: note: ‘cy’ was declared here
        Evas_Coord cx, cy, cw, ch;
                           ^
                           lib/edje/edje_entry.c:4103:4: warning:
‘cx’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    ecore_imf_context_cursor_location_set(en->imf_context, cx, cy, cw,
ch);
    ^
    lib/edje/edje_entry.c:4098:15: note: ‘cx’ was declared here
        Evas_Coord cx, cy, cw, ch;
                       ^

and the likes...
2016-03-01 13:25:40 +09:00
Youngbok Shin 6b12ae1e03 edje: Reduce duplicated item obj creations and deletions.
Summary:
When text is changed, all of objects for item tag are deleted
and recreated. It is unnecessary work and can cause performance
issues. Actually, many of application developers wonder why
item provider callback functions are called every text changes.
@fix

Test Plan:
Run elementary_test -to "entry emoticon"
When you make a very little change on text,
36 emoticon objects are recreated.

Reviewers: woohyun, jaehwan, herdsman, tasn

Reviewed By: tasn

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3537
2016-02-02 10:22:09 +00:00
Carsten Haitzler 6b8351a0a0 efl: edje: make comments for something we need to break for efl2 not now
make notes about https://phab.enlightenment.org/D2980
2016-01-13 18:12:33 +09:00
Subodh Kumar 97b7964e8c Edje entry: Fix memory leak.
Summary:
Fix memory leak

If user or extra cursor is used, these should be free on
shutdown.

@fix

Test Plan: NA

Reviewers: tasn, herdsman

Subscribers: shilpasingh, cedric, jpeg

Projects: #efl

Differential Revision: https://phab.enlightenment.org/D3550
2016-01-08 16:17:29 +00:00
Subodh Kumar 593c7eac02 Edje entry: Do not update cursor for non editable entry.
Summary:
Do not update cursor for non editable entry.

If entry is not editable there must not be any need to query tb cursor
geometry and run other codes related to it. This may improve some
performance of non-editable entry.

Test Plan: NA

Reviewers: tasn, herdsman, thiepha

Subscribers: shilpasingh, cedric, jpeg

Projects: #efl

Differential Revision: https://phab.enlightenment.org/D3532
2016-01-05 14:30:21 +00:00
Subodh Kumar 7684cea226 Edje entry: Fix cursor position on mouse up and down
Summary:
Fix cursor position on mouse up/down

When mouse down/up over top and bottom  part textblock is not able to set the
char coordinate as it is not inside actual text, edje entry tries to manage it
but textblock has that handling. As a result the cursor jump to first char for
single line and at the last in the multiline last line.

So this patch fixes this and manage to keep the  the mouse coordinate inside
the textblock.

In mobile device this is not really acceptable when user taps over the entry
at some position and cursor jumps to  some arbitrary position.

@fix

Test Plan:
1. Elementary Test
2. Entry 3 (any entry)
3. Try to click little below or above the text in first entry
     single line.Observe cursor jumps to first position
4. Do as above for multiline entry (try to click at the last line little below)
observe cursor jumps to last char.

Reviewers: thiepha, herdsman, tasn

Subscribers: jpeg, tasn, cedric

Differential Revision: https://phab.enlightenment.org/D3257
2015-12-21 14:29:03 +00:00
Subodh Kumar 320733ecd7 Edje entry: Use markup text for password in preedit mode
Summary:
Use markup text for password in preedit mode

Problem is that when text comes in preedit mode
it is always markup text and when it is committed
to entry it got committed with markup tags along with
the original string, so for preedit mode password
should be filtered all markup to set the proper text.

@fix

Test Plan:
In preedit mode, enter any character say 'A'
preedit markup like <preedit>A</preedit>
will come in preedit changed callback

Result: Text is set as plain text like below
&lt;preedit&gt;A&lt;/preedit&gt;

Reviewers: thiepha, jihoon, herdsman, shilpasingh, tasn

Reviewed By: shilpasingh, tasn

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2929
2015-12-03 16:04:08 +00:00
Shilpa Singh 648cef1db1 edje_entry: Fix crash on selection
Summary:
When text is selected, crash happens due to double free as rectangles are freed both in _sel_update
and _evas_textblock_selection_iterator_free hence removing free from _sel_update.

@fix T2910

Test Plan:
1. Launch elementary test
2. launch entry demo
3. select text

Reviewers: cedric, herdsman

Subscribers: jpeg

Maniphest Tasks: T2910

Differential Revision: https://phab.enlightenment.org/D3401
2015-12-03 12:53:00 +02:00
Daniel Hirt 5322575ba6 Edje entry: emit "selection,reset"
Adding a check for the selection range on extend/preextend.
If there is no range, then emit "selection,reset".
Expected handling on the theme end for this signal is to show the
cursor.

This improves cursor visuals, as it will show the cursor again once the
selection range ends up being 0.
2015-12-03 10:31:43 +02:00