Commit Graph

489 Commits

Author SHA1 Message Date
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
Amitesh Singh 38ac88d9d5 list: focus highlight is handled by item theme.
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
2014-02-26 01:27:05 +09:00
Amitesh Singh 069a3de27d list: implemented widget item focus feature.
@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
2014-02-26 01:26:22 +09:00
Yakov Goldberg d95f67d9c9 widget: remove OP_ID ELM_WIDGET_SUB_ID_DISPLAY_MODE_GET
elm_widget_display_mode_get() was removed in
   2aca940f040df01364301fe7b024be1f6d89a9d6.
   So OP_ID is not needed.
2014-02-20 09:56:26 +02:00
Amitesh Singh 431b15cd48 focus: Added focus_highlight_geometry_get() into elm_widget.
Summary:
Currently, elm_win was handling focus_highlight geometry of widgets.
Removed elm_win_focus_highlight_geometry_get() from elm_win and now elm_widget handles focus highlight geometry.
This is required to support the focus highlight on elm widget items.

Test Plan: elementary_test -> focus

Reviewers: seoz, raster, woohyun

CC: nirajkr

Differential Revision: https://phab.enlightenment.org/D530
2014-02-09 19:56:07 +09:00
Jaehwan Kim db23689614 access: Add smart signal "access,changed"
It occurs that access mode is changed.
Application can add this callback for each widget.
2014-02-08 14:05:14 +09:00
Jaehwan Kim 9d4a9dae02 access: Add elm_widget_access_highlight_in_theme_set/get.
This is for widget to draw the access highlight itself in theme.
2014-02-08 12:27:41 +09:00
Carsten Haitzler 36a373ce1c Revert "Revert "atspi: event broadcast added. Orca screen reader now ables to read UI.""
This reverts commit 803553c253bc4ee140a4b447c29ffe35c31288ab.

This also removes the unused enum typedef in the header. only c++
seems to care (or -ansi or -pedantic or something)
2014-02-08 11:28:58 +09:00
U. Artie Eoff 2ac7caba96 Revert "atspi: event broadcast added. Orca screen reader now ables to read UI."
Breaks elementary applications compilation

See https://phab.enlightenment.org/T917

This reverts commit 71cd5a1a077807bc32a67d309fba9e1474fffa4d.
2014-02-07 10:49:10 -08:00
Lukasz Stanislawski 74fbb2c8ea atspi: event broadcast added. Orca screen reader now ables to read UI.
Summary:
added broadcast of focus, window activate/deactivate events on a11y bus
Orca screen reader is now able to read elementary application.

Reviewers: raster, seoz, z.kosinski, kimcinoo

Reviewed By: raster

Differential Revision: https://phab.enlightenment.org/D508
2014-02-07 23:03:07 +09:00
Tae-Hwan Kim a9aec7a43e [Widget] Prevent widget item API calls while item is deleting except data_get API call. The data by data_set is user_data. So it can be needed inside deleting function trace.
Reviewers: raster, cedric, Hermet, seoz

Reviewed By: raster

Differential Revision: https://phab.enlightenment.org/D525
2014-02-07 18:09:46 +09:00
nirajkr 2a8c2f1b53 focus: Added elm_object_focus_highlight_style_get/set() to support custom focus highlight on widget
Summary: This new API will allow widget to have its own focus highlight style

Reviewers: seoz

CC: woohyun, singh.amitesh

Differential Revision: https://phab.enlightenment.org/D501
2014-02-05 19:23:34 +09:00
ChunEon Park dbacb2fef9 elementary - send signal "language,changed" with one way in the widget.
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.
2014-01-23 19:30:34 +09:00
ChunEon Park aebdcff513 elementary - use the focused/unfocused string in widget defined.
Now, it will share the strings so that reduce the binary size also user uses it in one way.
2014-01-23 17:27:17 +09:00
WooHyun Jung cbb946ee99 elm_widget: Fixed some codes about focus custom chain.
- When appending an object to the focus custom chain,
  event callback about deletion should be added.
- When a widget is deleted, its focus custom chain should be
  managed correctly.
2014-01-22 16:24:25 +09:00
Daniel Juyung Seo 5353aa863c elm: Removed unnecessary null check for free. 2014-01-22 11:13:11 +09:00
Daniel Juyung Seo db5fe2581d elm: Removed unnecessary null check for evas_object_del. 2014-01-22 10:54:52 +09:00
Daniel Juyung Seo 43533a2fb9 elm: Removed unnecessary null check for eina_stringshare_del. 2014-01-22 10:54:45 +09:00
Yakov Goldberg 3379c124df all widgets: change Eo API for "elm_widget_theme()" to "theme_apply"
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".
2014-01-21 11:08:29 +02:00
Carsten Haitzler 939313e194 elm widget - skip null list entires in focus list 2014-01-14 22:48:28 +09:00
Tom Hacohen b01433ff47 Widget: Don't check if it's the correct class everywhere.
ELM_WIDGET_DATA_GET was checking it was the correct class. This is
stupid and wrong (and makes tools rightfully complain) because these
functions are implementations of that class anyway, so that would never
be false.
Functions that outside facing (that is, not called from eo_do) should
use API_ENTRY.
2014-01-06 15:07:16 +00:00
Daniel Juyung Seo fd5c046dfe elm: Changed __UNUSED__ to EINA_UNUSED. 2014-01-06 23:33:57 +09:00
WooHyun Jung fa8ca01128 widget: Fix a bug in elm_widget_newest_focus_order_get.
When elm_widget_newest_focus_order_get is called with can_focus_only,
only focusable objects should be the candidates for newest focused object.
But there are cases that unfocusable object add +1 to newest_focus_order.
2014-01-03 20:02:30 +09:00
ChunEon Park 8b6ef9aaac elementary/widget - don't call theme_set() until base widget is not created yet.
On the widget creation time, we should not set the theme in the widget infra.
This will cause the corruption of the theme_hook working since the widget is not setup yet.
Also the theme_set() will be applied twice each widget will set the themes right after base widget is created.
2014-01-03 14:38:27 +09:00
Jaehyun Cho 432a018916 [elm_widget] Fix not to load theme for mirroring if smart data is not set
Summary: Do not load widget theme for mirroring if smart data creation is not finished.

Reviewers: Hermet, raster

Reviewed By: raster

CC: seoz

Differential Revision: https://phab.enlightenment.org/D428
2013-12-31 20:33:51 +09:00