I just ran my script (email to follow) to migrate all of the EFL
automatically. This commit is *only* the automatic conversion, so it can
be easily reverted and re-run.
Move declarations of types used in elm_widget.eo to elm_general.eot and
elm_widget.eo.
Give them a Eolian name and use it instead of the old ones.
Correct the type name of some other types used as method parameters, by
using the Eolian names instead of legacy/generated names.
Reorganize the positions of elm_widget.eo.h inclusion and
of callback type declarations in elm_widget.h.
This make a clearer distinction of the types in elm_widget.h that are
still required in elm_widget.eo.h.
We have to use void in a function declaration if we want no function
parameters. Using just empty parenthesis means the function takes an
unspecified number of parameters.
We had it correct for most declarations and this series fixes it for
the rest.
Thanks for the sparse semantic parser for pointing this out.
This patch moves some duplicated implementation from elm_widget
and elm_widget_item classes into atspi base mixin. It allows to
better share code and reduce maintainability.
Change-Id: I8d264661e7ffade7da72299f29075a536d71eaa3
When the focus is moved, it uses focus_direction instead of
focus_origin.
It can get the focus by using the geometry of previous focused object or item
@feature
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
In the widget code, focus origin is added. It can know
the focus movement is originated by which action.
The widgets can choose the item focus moves to last focused item
or geometrically nearby item by focus origin.
In gengrid, focus moves to last focused item if focus origin is
ELM_FOCUS_REVERT. It moves to nearby item if focus origin is from
ELM_FOCUS_UP to ELM_FOCUS_LEFT.
TODO: widgets have items should add the direction feature if it
want the focus to move to nearby item.
@feature
When the focus is move to the object in scroller, it is scrolled
to show the focus region as a widget.
If the focus region want to be shown as an item,
set the mode ELM_FOCUS_REGION_SHOW_ITEM.
If then, it will be scrolled as an item.
TODO: Widgets have items are added on_focus_region function.
@feature
Summary:
Elementary widgets have different behavior of using the mouse, they need to be unified.
- swipe : without checking on hold, just checking drag state.
- longpress : after longpress, _item_unhighlight(), _item_unselect() are called.
- select : when the mouse pointer leaves item area, _item_unhighlight(), _item_unselect() are called.
First, apply this commit https://phab.enlightenment.org/D2550
Test Plan: elementary_test -> list
Reviewers: seoz, Hermet, CHAN, woohyun, kimcinoo, jaehwan, SanghyeonLee, cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D2622
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
New focus move policy, ELM_FOCUS_MOVE_POLICY_KEY_ONLY, is added.
If you set this policy as base focus move policy, objects cannot steal
focus by using mouse click or mouse in. Only keyboard input (such as Left,
Right, Up, Down, ...) can make focus be moved.
Additaionally, an object can have its own focus move policy by using
elm_object_focus_move_policy_set API.
@feature
elm_interface_atspi_widget object was previously used to implement
atspi features on top of elm_widget object. However such inheritance
obfuscates a design, so atspi features implementation was moved directly
into elm_widget code.
this adds logic in elm widget and elm win to figure out how to
automatically show a focus hilight when switching focus, or to hide
it. this really should be the default mode, thus in all default
profiles (default, standard, mobile) it's turned on. this means if you
tab or shif+tab or use arrow keys to switch focus, the focus hilight
will magicallly appear. click with a mouse to change focus and it'll
disappear assuming you want to use the mouse to do things. If focus is
explicitly turned on in config or in the window by api, then this has
no effect and focus will remain on all the time. this adds apis to
change these config values and options in the default elm config tool
to swizzle them as well as config upgrade handling for existing configs.
@feature
delete genlist item directly.
instead, remove the bunch of code that was related to lazy deletion.
we can success, if we clean up the resources and callback calls properly.
here i only found item focus callback that (may) required the lazy deletion.
Summary: This is required to support the animation of focus highlight object in case of item looping (genlist/gengrid/list).
Reviewers: seoz, woohyun, raster
Reviewed By: raster
Subscribers: anand.km, seoz
Differential Revision: https://phab.enlightenment.org/D1136
As widget and widget item can have different in_theme value (since
30cada369), we need to update in_theme value whenever the widget or
widget item get the focus.
Applied this logic to genlist, gengrid, toolbar first.
List focus is not working well at the moment.
This fixes small focus highlight on the left top corner of genlist
when the genlist scroller is clicked before the genlist is focused.
Special thanks to zmike for the report.
Summary: Name of that function is not proper in my opinion. Please consider that revision.
Reviewers: raster, seoz, bluezery, stanluk, jaehwan, kimcinoo
Reviewed By: seoz
Differential Revision: https://phab.enlightenment.org/D827
This reverts commit b8549f3e83a8592145a50085182583adead2c74e.
this build system is bad and whoever did the eo integration should not feel pleased with themselves.
This reverts commit f8d46bfca2a9285b45ec76062cd85b69dc86a7db.
don't push any change except bug fix in window merge step 2
this patch will be pushed again.
Summary:
This patch makes func of Elm_Action struct return a Eina_Bool value.
The function had a return type of void,
so could not check if the function succeeds or fails.
Test Plan: None
Reviewers: Hermet
Reviewed By: Hermet
Differential Revision: https://phab.enlightenment.org/D666
Summary:
If item loop feature is enabled, item is moved infinitely.
1. add new widget api - item_loop_enabled
2. add smart event using new config - elm_list.c
3. add demo - test_list.c/list_focus
Reviewers: seoz, woohyun, raster, jaehwan, Hermet
CC: singh.amitesh, c
Differential Revision: https://phab.enlightenment.org/D619
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