Due to Eolian auto-generation, legacy parameters are directly
transferred to Eo functions without conversion.
In this case, is_next was Eina_Bool in legacy and Eina_Bool * in Eo.
The logic code was expecting a pointer but was receiving a Eina_Bool.
The fix consists in giving the logic code the Eina_Bool instead of the
pointer.
@fix
On a list that have not received focus yet a mouse down gives the focus
for the list (that gives the focus for the first item) and the mouse
up the item is selected and receive the focus.
The problem: if the list is scrolled the focus given for the
first item makes the list scroll to the top and not for the item
selected by the user.
If the list is deleted/recteated the _elm_list_item_focused/unfocused() is
called and the sd pointer is null.
This unbreak all my apps that use elm_list
With the introduction of the patch 3628a8c4ea2485ee7ee5a81cfd4e0f0fe62b10d6,
it is possible to highlight focused Elm_List and Elm_Genlistenlist items.
However, this feature does not work correctly if one wants to create a custom
highlight theme for Elm_List items.
The whole problem was happening, because the function
_elm_widget_item_highlight_in_theme() was being called in a incorrect
location. This function must be called at _items_fix(), because
there the Elm_List already set the item theme and then it's possible
to check if the one wants a custom highlight or not.
_list/genlist_item_focus_set --> _list/genlist_item_content_focus_set.
These internal functions set the focus to the item's content objects,
not the item itself. So the name was wrong and very confusing.
Summary:
Problem: list theme (elm/list/base/default) is an alias of scroller
base theme (elm/scroller/base/default) in which focus_highlight is set to "on".
Solution: Now focus highlight in_theme is set by list item theme.
Test Plan: elementary_test->"List Focus"
Reviewers: seoz, woohyun
Reviewed By: seoz
CC: nirajkr
Differential Revision: https://phab.enlightenment.org/D572
Summary:
# Added code to handle the case of disabled items.
# Code refractoring of _item_focused_next().
Test Plan: elementary_test->"list focus"
Reviewers: seoz, woohyun
CC: nirajkr
Differential Revision: https://phab.enlightenment.org/D571
@feature
Summary:
# Added "item,focused" and "item,unfocused" smart callbacks.
# Added elm_object_focused_item_get() in elm_widget
# Added elm_object_item_focus_set and elm_object_item_focus_get() APIs for
# Added one argument in existing _focus_highlight_geometry_get(...,is_next)
This is required to find out previous and current widget item.
# Added a elm_win function _focus_highlight_start() which starts the focus
Test Plan: elementary_test->List Focus , List Horizontal Focus
Reviewers: seoz, woohyun
Reviewers Comments: SeoZ - there are some known bugs. we will actively
fix them in a near future.
CC: nirajkr
Differential Revision: https://phab.enlightenment.org/D532
Some widgets override the widget translation but it didn't inherit the base widget's function.
Becuase of it,The language changed won't be properly called in the widget tree.
Now it fixed it.
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".
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.
This fixed T179 but introduced T286. T286 is bigger and more important issue than T179.
So temporarily disable these lines until it gets fixed correctly.