Summary:
The box_clear, box_fill internal functions called when almost every internal chage happend.
(resize, theme apply, item append, item delete etc...)
Then those APIs delete/create item's edje object for all of the items.
It's very not good action for performance.
So, i changed this just edje object box unpack/pack instead of delete/create.
@fix
Test Plan:
Working test on elementary_test
and Call all of the index APIs for check this change.
Reviewers: Hermet, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D3268
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
I need to think more about item omitted case, horizontal case as well.
Now i'm working on this. It may need to refactoring internal logic.
Please revert this commit it break view when index item omitted.
@fix
This reverts commit 560338c5c31bda8912938074cb736eabdb9f1f31.
Reviewers: Hermet, cedric, woohyun
Differential Revision: https://phab.enlightenment.org/D3062
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Add elm_object_focus_next_item_set/get,
elm_object_item_focus_next_object_set/get and
elm_object_item_focus_next_item_set/get.
If the item and object is set at the same time,
the item is preference to object when the focus moves.
This feature is implemented about gengrid.
It will be implemented about ohter widgets.
@feature
Summary:
The evas box swallowed in "elm,swallow,index" part.
Then the each index item will be appended into evas_box when elm_index_go called.
If user make the line or dot for that swallow part for resize same as internall box.
edje_size_min_calc always give the '0'value for it.
Box will be swallowed the only on swllow part for desicion index layout size.
So the index min value should follow the box size.
Test Plan:
Run any index sample.
Get the index min size and check the value.
It gets always wrong before.
Reviewers: cedric, Hermet, woohyun
Differential Revision: https://phab.enlightenment.org/D2896
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Summary:
I add the APIs for supporting multi language on index.
"elm_index_item_priority_set()" API can give the priority value for each item.
it will be grouping with each priority items when index start to draw the item.
It can get a 0 or 1 (default : -1) -1 priority item show always even priority changed.
"elm_index_priority_set()" API can changed the current priority in manually.
priority will be up automatically when user send move event into last of priority 1 group item.
otherwise, priority will be down automatically when user send move event into first of priority 0 group item.
"elm_index_priority_get()" API can get a current index priority.
@feature
Test Plan:
I added the test application in test_index with give the name as "test_index3"
(It's for only show how to handle the priority APIs and show the how does it works for multi language
so it doesn't operate with genlist.)
You can check the how it works and how APIs works for it as well.
Reviewers: eunue, seoz, woohyun, Hermet
Subscribers: SanghyeonLee, eagleeye
Differential Revision: https://phab.enlightenment.org/D2729
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
This change is not simple because Elementary has not been built from the
first day to work with Eo. Code had to be adapted to fit the new design.
The del_pre that have not been replaced yet can return FALSE and
prevent deletion. For these classes, code modification has to be deeper
and will be done later.
Summary:
Change requested by TAsn. Previuosly AT-SPI headers were kept private
and included directly into elementary source code. From now on,
AT-SPI headers can be included from Elementary.h public header, however
will be marked as beta APIs.
Commit includes following changes:
* include all atspi headers into new elm_interfaces.h header.
* marking all at-spi interfaces methods/properties as @protected.
* wrap all common headers with EFL_BETA_API_SUPPORT.
* make some common APIs visible in lib, by adding EAPI attribute
(if someone decides to use beta APIs).
Test Plan: out-off tree build with gcc, g++
Reviewers: tasn
Reviewed By: tasn
Subscribers: seoz, q66, kuuko
Maniphest Tasks: T1721
Differential Revision: https://phab.enlightenment.org/D1528
Summary:
in current code, indicator is disabled only when mouse up event happens.
if the selected item is unselected through API before mouse up,
the indicator will remain active while no item is selected (highlighted).
Test Plan: None
Reviewers: Hermet, seoz, raster
Reviewed By: raster
Differential Revision: https://phab.enlightenment.org/D560
Summary:
when index box is cleared and refilled, selected item's status still remains as selected
but not highlighted. should send active signal to the selected item so that it is highlighted.
Test Plan: None
Reviewers: Hermet, seoz
Reviewed By: seoz
Differential Revision: https://phab.enlightenment.org/D559
Call the smart callback in the widget infra so that each widget don't need to hook the smart_translate only for the smart call.
This makes reducing duplicated code and supporting language,chagned from all widgets.
ecore_animator_del, and ecore_job_del.
As all efl public free apis get null as valid parameter, we do not need
to check null. I also removed some null check for other free apis which
were right next to timer/animator/job del. After this job code got
cleaner.
There are elm_widget_theme/theme_set/theme_get functions.
In Eolian these functions will be described as "theme" method and
"theme" property. There is clash here.
So add suffix "_apply" to Eo API for "elm_widget_theme".
and removed unnecessary local variable.
- Do not need to call the same function with same parameter many times.
Use local variable for them.
- Remove unnecessary local variable if it is not needed.
Being annoyed by different types of eina critical macros - CRI, CRIT,
CRITICAL -, I concluded to unify them to one. Discussed on IRC and
finally, CRI was chosen to meet the consistency with other macros -
ERR, WRN, INF, DBG - in terms of the number of characters.
If there is any missing bits, please let me know.
- removed unnecessary duplicated parameter passing.
- moved smart callback add to a proper place not to be confused with other object's smart callback addition.
- removed unnecessary sub object add. it's done automatically in elm_layout_content_set.
Summary:
In the original code, omit related information was cleared and recalculated
only when omit function was enabled. So dynamic omit mode change didn't work in elementary_test.
The information should be cleared everytime the index box is filled. fixed it.
Test Plan: None
Reviewers: seoz, Hermet, raster
CC: raster
Differential Revision: https://phab.enlightenment.org/D262