Summary:
The original code created an edje object temporarily for index calculation
and didn't delete it which caused memory leak. fixed it.
Test Plan: None
Reviewers: Hermet, seoz
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D246
I splited ELM_SAFE_FREE refactoring patches. One commit per each file as recommended.
For the detail, please refer 3072dab12f12fe83fb5a628d15efd5cded11787f.
1. Do not need to print the same error message from all the widget codes.
2. Even though elm_widget_sub_object_add() can be used internally, there should be no error message at all.
Elm devs should fix it beforehand.
So it looks ok to print the error message in elm_widget_sub_object_add() to force elm devs to fix it.
3. Got additional code cleanups.
If you enable omit mode when having too many items,
some items in the middle are omitted and the index can be displayed
from the top to the bottom.
* not support horizontal mode
* enabled when at least 3 items can be displayed (first and last items
are not omitted)
* not work when having too many items
Subject: [E-devel] [PATCH] elm_index: removed unnecessary lines
I removed some unnecessary lines from elm_index.c
1. in _index_box_auto_fill
_index_box_clear(line 178) does nothing:
if _index_box_clear is called, it means sd->level_active[level] is
false (line 116).
if sd->level_active[level] is false, _index_box_clear returns
immediately (line 60).
2. in _on_mouse_down
3. in _on_mouse_in_access
4. in _autohide_disabled_set
Signal emit is enough.
Filling the box and displaying the box are separated jobs.
I think it's logically consistent to fill the box only when
1) elm_index_level_go is called
2) theme is changed
5. in _level_go
Always clear the box before fill the box.
SVN revision: 82864
Smart data is already initialized so we do not need to re-initialize them if the value equals to 0, NULL, or EINA_FALSE.
Sometimes re-initializing smart data explicitly is needed for readability. So there are left overs.
SVN revision: 82228
+ elm_access_object_register();
+ elm_access_object_unregister();
+ elm_access_text_set();
+ elm_access_text_get();
+ elm_access_cb_set();
These APIs are to use edje part, evas object as an accessible object.
and do not create access object, because access object would be created at run time.
This is different with internal API _elm_access_object_register();
SVN revision: 81659
Subject: [E-devel] [patch][elementary] index - add access feature
the attachment has access features for the index. and this patch is
depends
on the previous patch which has
_elm_access_edje_object_part_object_unregister();
to find the previous patch, please refer to the following
http://sourceforge.net/mailarchive/forum.php?thread_name=CAP-c0nG8NkMx3J-YkSJnWdB23cWOPrtk1Rx10Lae0Zwxst1eeQ%40mail.gmail.com&forum_name=enlightenment-devel
the index could have two levels, one is level 0, the other is level 1.
the
patch supports only level 0 because we have no style for the level 1..
(just a cowardly excuse, i will keep up with this.. and update..)
SVN revision: 76532
Hello all,
In elm_index.c, _item_del_pre_hook calls _item_free, where it->letter
is not set to NULL after eina_stringshare_del.
This will cause invalid access later on. The attached patch fixes the
problem, which is reproducible in my code before the fix.
Please check if this makes sense.
I am sorry that I was unable come up with a simple test app to
demonstrate the problem.
Thanks in advance.
Brian
Signed-Off-By:Brian Wang<brian.wang.0721@gmail.com>
SVN revision: 75723