Commit Graph

513 Commits

Author SHA1 Message Date
Lukasz Stanislawski 2ca1f8a75a atspi: properly include at-spi headers.
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
2014-10-17 16:57:26 +01:00
Amitesh Singh d6f308d1d6 focus: Added internal widget APIs of focus highlight object of elm window.
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
2014-07-21 19:04:27 +09:00
Amitesh Singh 6de233cfdb widget item: replaced eo_class_name_get call with eo_isa.
Reviewers: seoz, raster, Hermet

Reviewed By: Hermet

Subscribers: seoz

Differential Revision: https://phab.enlightenment.org/D1170
2014-07-15 12:11:51 +09:00
Cedric BAIL 81cff04884 widget: move some callback infrastructure tu use Eo directly.
This save some serious amount of memory quite easily.
2014-07-06 19:08:56 +02:00
Daniel Juyung Seo db701ac9a0 elm_widget: do not need to set the scale to 0.0 if it is already 0.0. 2014-07-03 02:25:25 +09:00
Lukasz Stanislawski f56f430abd atspi: simplify key event handling
Keyboard events are now directly handled by atspi_bridge instead of
elm_widget.
2014-07-01 15:38:53 +02:00
Daniel Kolesa 20525deb55 update according to latest efl changes: _CLASS -> _CLASS/INTERFACE/MIXIN 2014-06-30 21:37:04 +01:00
Tom Hacohen 1bcdadb52e Eolian classes: Fix according to namespace changes in efl. 2014-06-30 17:52:16 +01:00
Amitesh Singh cb4b6cd099 elm object item: fix the comparison of eo class name in case of edje object.
Summary:
eo_class_name_get(edje) returns "Edje".
@fix

Reviewers: raster, seoz

Reviewed By: seoz

CC: seoz

Differential Revision: https://phab.enlightenment.org/D1097
2014-06-28 15:47:27 +09:00
Jaeun Choi e2db16a8af Revert "bug fix: _elm_widget_focus_region_show"
This reverts commit 1574f59fd88c53b380ab83317106164ae1c84652.

This breaks focus move in scroller
2014-06-25 13:49:44 +09:00
Lukasz Stanislawski 0975fd37e0 atspi: notify registry daemon about keyboard events.
Test Plan: elemeentary_test with Orca Screen reader 3.10.1

Reviewers: raster, z.kosinski

Reviewed By: raster

Differential Revision: https://phab.enlightenment.org/D1025
2014-06-16 15:16:39 +09:00
Jaeun Choi 636bb88170 bug fix: _elm_widget_focus_region_show
Summary: should do scrollable_content_set according to focus_region_get

Test Plan: None

Reviewers: woohyun

Differential Revision: https://phab.enlightenment.org/D981
2014-06-11 15:29:31 +09:00
Tom Hacohen efa41c7d75 Elm: Update code to use the new class names generated by eolian. 2014-06-03 11:54:44 +01:00
Carsten Haitzler c567a27a82 fix 0 size focus region
@fix - this fixes T1205 ... or should fix it... in theory.
2014-05-20 15:34:01 +09:00
Daniel Juyung Seo 5c82d2d652 widget: updated internal documentation for elm_widget_item_del. 2014-05-20 00:55:27 +09:00
Daniel Juyung Seo 4f056651ac focus: apply the focus API change during the development phase.
This fixes the commit 422b8717 which was pushed to master without
considering the API change.
2014-05-17 20:20:52 +09:00
Daniel Juyung Seo c3acc8d0db Revert "Revert "focus: Fixed the animation issue related to bring_in.""
This reverts commit e4ae67535672d04eec9eb368b71c72932cc0f757.

This will be fixed in a next commit.
2014-05-17 20:20:07 +09:00
Carsten Haitzler 52dacc461f Revert "focus: Fixed the animation issue related to bring_in."
This reverts commit 422b8717660853ff099359dc3cd926e56f1b1665.
2014-05-13 11:32:00 +09:00
Anand 94bc3ce471 focus: Fixed the animation issue related to bring_in.
Summary:
Calculating the coordinate of the object to retain the focus with in view port.
Earlier focus was moving out of view port.

Test Plan:
elementary_test-> "Focus 3". Enable the Focus Auto scroll bring in and use
keys to move focused item.

Reviewers: raster, seoz, singh.amitesh, nirajkr

Differential Revision: https://phab.enlightenment.org/D822
2014-05-13 11:24:20 +09:00
Daniel Juyung Seo a64e8eed91 focus: update the focus in_theme status on each item's focus set.
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.
2014-05-12 01:25:43 +09:00
Daniel Juyung Seo 45e8b4c82e focus: Change new API names related to focus auto scrolling.
elm_config_focus_auto_scroll_bring_in_enabled_get/set()
 ->
elm_config_focus_autoscroll_mode_get/set()

The main reason is that bring_in_enabled_get/set() APIs are too restricted
and thus not flexible. I got more requirements for the focus autoscrolling
such as none, wholely visible not just bring_in and show. So it is correct
to add mode_set/get() APIs for the focus auto scrolling.

Thanks god, we've found this before the release :)

@feature
2014-05-11 22:46:16 +09:00
Daniel Juyung Seo 8ffbf246f4 elm: fixed trivial formattings.
Just found them while reading codes.
2014-05-10 23:44:27 +09:00
Daniel Juyung Seo 44a67054de elm: fixed wrong internal variable name.
Unified the local variable name to ret if the ret is a return value of
another content_unset calls.
- Evas_Object *int_ret --> Evas_Object *ret
- Evas_Object *int_content --> Evas_Object *ret
- Evas_Object *content --> Evas_Object *ret
2014-05-10 14:13:57 +09:00
ChunEon Park e312e34652 widget - use eo call. 2014-05-09 15:24:18 +09:00
ChunEon Park 1a99f9274c widgets - propagate current parent orientation to sub object.
If object is unset then set to parent again, the current orientation signals
should be emitted so as to be latest state.

@fix
2014-05-09 15:18:49 +09:00
zmike fe4fae4954 Revert "Revert "focus: Removed unused parameter from an internal focus function.""
This reverts commit b8549f3e83a8592145a50085182583adead2c74e.

this build system is bad and whoever did the eo integration should not feel pleased with themselves.
2014-05-07 01:13:19 -04:00
zmike 54eabd94e2 Revert "focus: Removed unused parameter from an internal focus function."
This reverts commit 5832b692aa5f68a2924bd7886390d489eb13aefb.

broke build
2014-05-07 01:08:04 -04:00
Daniel Juyung Seo d0380e3342 focus: Removed unused parameter from an internal focus function.
is_next parameter is not used for
elm_widget_focus_highlight_geometry_get() function.
But this parameter was not cleaned up in the commit 5320cca.
2014-05-07 00:05:07 +09:00
Daniel Juyung Seo 3b20add9a6 focus: Fixed focus_region_show to consider bring_in_enable configuration.
focus_auto_scroll_bring_in_enable feature is new in 1.10, this would
not be backported.
2014-05-01 22:27:05 +09:00
Lukasz Stanislawski c3b541bcda atspi: refactor atspi_object class into mixins.
Summary:
Allow to create ATSPI aware objects only by attaching Atspi interface to
Eo object. Apply protected rule to all methods, properties which should
not be available to app developer. Remove public atspi header from Elementary.h.
Make Elm_Widget inherit from Atspi interfaces, Elm_Win inherits additional
Atspi_Window interface.
Unified file names - all atspi related objects/interfaces can be found under
elm_atspi_*
and elm_interface_atspi_*.

Test Plan:
build&install, out-off tree example compilation with gcc and g++,
Orca screen reader tests on Ubuntu 12.04.

Reviewers: raster, seoz, tasn, JackDanielZ

Differential Revision: https://phab.enlightenment.org/D718
2014-04-21 12:46:12 +09:00
ChunEon Park 5ab6a7739f widgets - don't handle the events(key,mouse) if the object is disabled.
we can prevent to handle the widget events from the widget infra,
if the object is disabled.

conceptually, disabled object should not be interacted to user input(key, mouse)
2014-04-16 10:59:43 +09:00
Daniel Juyung Seo a3a3766845 widget: Initialized internal variables.
This fixes coverity CID 1199625 and 1199626.

@fix
2014-04-13 01:44:22 +09:00
Tom Hacohen 3737cf6140 widget: Adjusted to Eo2. 2014-04-10 09:39:31 +01:00
Carsten Haitzler e2599a6d4a elm widget - dont get focus if object is not an elm widget
this islences lots of missing method complaints from eo (yes - we
wantmixed elm + non elm widgets to work, thus this has to be handled)
2014-04-01 09:26:24 +09:00
Carsten Haitzler 7cdd1d52ea silence complaints getting top widget if object is not an elm widget 2014-03-28 18:22:49 +09:00
Hosang Kim 7b4a539e9e list: Add item loop feature
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
2014-03-24 17:35:07 +09:00
Daniel Juyung Seo 46506cf22e focus: Added optional focus feature - focus movement by mouse_in.
Focus is moved by mouse click by default. This patch makes moving focus
by mouse_in optionally by configuration and API. Widget item focus
movement is not applied yet. Need to do that as well.

- configuration: "focus_move_policy"
- API: elm_config_focus_move_policy_set/get
- enum
  ELM_FOCUS_MOVE_POLICY_CLICK
  ELM_FOCUS_MOVE_POLICY_IN

@feature
2014-03-23 02:04:16 +09:00
Daniel Zaoui 11cf9cb7c5 Eolian: Integration of Atspi Object 2014-03-20 07:33:56 +02:00
WooHyun Jung aeebc942af elm_widget: Restore removed codes while eolian work. 2014-03-20 12:55:28 +09:00
Daniel Juyung Seo 90024102fd elm_widget: Call widget APIs only for widgets.
'cur' object can be non-widget object when calling
elm_widget_focus_direction_get and elm_widget_parent_get.
2014-03-20 04:04:12 +09:00
Daniel Zaoui 45dc4cd461 Eolian: Fix ctor/dtor generation 2014-03-19 07:04:34 +02:00
Daniel Juyung Seo 5b3908a454 elm_widget: Removed unnecessary if statement. 2014-03-18 19:05:24 +09:00
Daniel Juyung Seo d596a0768f elm_widget: Call elm_widget functions only for widgets. 2014-03-18 19:05:24 +09:00
Daniel Zaoui 7460467419 Eolian: Integration of Scrollable Interface 2014-03-18 08:14:44 +02:00
Daniel Zaoui e2206a1a22 Eolian: Integration of Elm Widget 2014-03-17 09:03:56 +02:00
Tom Hacohen b2250c568d Remove silencing of errors when called on non elm widgets.
There was code to silence errors. Removing that exposed a lot of errors.
I fixed them as well. In general, elm_widget functions should only be called
on elm_widgets...

More of commit 5ac398b156e8fb0aa44c6cfe8a2b113eb7229fbf
2014-03-13 15:14:59 +00:00
Tom Hacohen f6fa1ef612 Remove silencing of errors when called on non elm widgets.
There was code to silence errors. Removing that exposed a lot of errors.
I fixed them as well. In general, elm_widget functions should only be called
on elm_widgets...

@fix.
2014-03-13 13:46:53 +00:00
Daniel Juyung Seo 7284e448f4 focus: Added comments for recently introduced internal functions.
elm_widget_focus_highlight_geometry_get
elm_widget_focus_highlight_focus_part_geometry_get
2014-03-09 19:17:30 +09:00
Gustavo Sverzut Barbieri 85f1474b6e elm_widget: @fix use of uninitialized values.
Valgrind reports n and weight could be read before they were written to.
2014-03-06 11:08:48 -03:00
Daniel Juyung Seo 5f3fedeff5 focus: Refactor mouse tracking code for focus.
- Reduced the if statement depth.
- Introduced new macro ELM_RECTS_POINT_OUT that checks if the point(xx,
yy) stays out of the rectangle(x, y, w, h) area.
2014-03-01 15:55:03 +09:00