[EGIT] [core/elementary] master 01/01: elm config: add key bindings for elm_actionslider

2014-11-28 Thread Lukasz Stanislawski
raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=96c80e7162aaa43ae53e0080c2610bbdd9312292

commit 96c80e7162aaa43ae53e0080c2610bbdd9312292
Author: Lukasz Stanislawski 
Date:   Sat Nov 29 15:31:25 2014 +0900

elm config: add key bindings for elm_actionslider

Allow changing value of actionslider with keyboard. Make actionslider
focusable widget.

@feature

Conflicts:
config/default/base.src.in
config/mobile/base.src.in
config/standard/base.src.in
---
 config/default/base.src.in  |   2 +-
 config/mobile/base.src.in   |   2 +-
 config/standard/base.src.in |   2 +-
 src/lib/elm_config.c| 117 +++-
 src/lib/elm_priv.h  |   3 +-
 5 files changed, 24 insertions(+), 102 deletions(-)

diff --git a/config/default/base.src.in b/config/default/base.src.in
index 0f4fcb3..64b2783 100644
--- a/config/default/base.src.in
+++ b/config/default/base.src.in
@@ -1,5 +1,5 @@
 group "Elm_Config" struct {
-  value "config_version" int: 65539;
+  value "config_version" int: 131073;
   value "engine" string: "";
   value "vsync" uchar: 0;
   value "thumbscroll_enable" uchar: 1;
diff --git a/config/mobile/base.src.in b/config/mobile/base.src.in
index 6a7f665..ff66243 100644
--- a/config/mobile/base.src.in
+++ b/config/mobile/base.src.in
@@ -1,5 +1,5 @@
 group "Elm_Config" struct {
-  value "config_version" int: 65539;
+  value "config_version" int: 131073;
   value "engine" string: "";
   value "vsync" uchar: 0;
   value "thumbscroll_enable" uchar: 1;
diff --git a/config/standard/base.src.in b/config/standard/base.src.in
index 91656a0..7df9437 100644
--- a/config/standard/base.src.in
+++ b/config/standard/base.src.in
@@ -1,5 +1,5 @@
 group "Elm_Config" struct {
-  value "config_version" int: 65539;
+  value "config_version" int: 131073;
   value "engine" string: "";
   value "vsync" uchar: 0;
   value "thumbscroll_enable" uchar: 0;
diff --git a/src/lib/elm_config.c b/src/lib/elm_config.c
index e4b72da..661aaf8 100644
--- a/src/lib/elm_config.c
+++ b/src/lib/elm_config.c
@@ -1477,19 +1477,18 @@ _config_load(void)
_elm_config = _config_user_load();
if (_elm_config)
  {
-if (_elm_config->config_version < ELM_CONFIG_VERSION)
-  _config_update();
-
-/* set the default value if the configuration was just added and the
- * value is zero which means it was not supported before and invalid. 
*/
-if (_elm_config->thumbscroll_min_friction == 0.0)
-  _elm_config->thumbscroll_min_friction = 0.5;
-if (_elm_config->thumbscroll_friction_standard == 0.0)
-  _elm_config->thumbscroll_friction_standard = 1000.0;
-if (_elm_config->thumbscroll_flick_distance_tolerance == 0)
-  _elm_config->thumbscroll_flick_distance_tolerance = 1000;
-
-return;
+if ((_elm_config->config_version >> ELM_CONFIG_VERSION_EPOCH_OFFSET) < 
ELM_CONFIG_EPOCH)
+   {
+  WRN("User's elementary config seems outdated and unusable. 
Fallback to load system config.");
+  _config_free(_elm_config);
+  _elm_config = NULL;
+   }
+else
+  {
+ if (_elm_config->config_version < ELM_CONFIG_VERSION)
+   _config_update();
+ return;
+  }
  }
 
/* no user config, fallback for system. No need to check version for
@@ -1813,8 +1812,6 @@ static void
 _config_update(void)
 {
Elm_Config *tcfg;
-   const char *s = NULL;
-
tcfg = _config_system_load();
if (!tcfg)
  {
@@ -1829,89 +1826,13 @@ _config_update(void)
 #define COPYPTR(x) do {_elm_config->x = tcfg->x; tcfg->x = NULL; } while (0)
 #define COPYSTR(x) COPYPTR(x)
 
- /* we also need to update for property changes in the root window
-  * if needed, but that will be dependent on new properties added
-  * with each version */
-
- IFCFG(0x0003);
- COPYVAL(longpress_timeout);
- IFCFGEND;
-
- IFCFG(0x0004);
-#define PREFS_IFACE_MODULE_STR "prefs>prefs_iface"
- if (!_elm_config->modules)
-   s = eina_stringshare_add(PREFS_IFACE_MODULE_STR);
- else
-   {
-  if (!strstr(_elm_config->modules, PREFS_IFACE_MODULE_STR))
-s = eina_stringshare_printf
-("%s:%s", _elm_config->modules, PREFS_IFACE_MODULE_STR);
-   }
- if (s)
-   {
-  eina_stringshare_del(_elm_config->modules);
-  _elm_config->modules = s;
-   }
- IFCFGEND;
-
- IFCFG(0x0005);
- COPYVAL(magnifier_scale);
- if (!_elm_conf

[EGIT] [core/elementary] master 01/01: config: do not use elm_config from previous epoch.

2014-11-28 Thread Lukasz Stanislawski
raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=7380d2674a7f338b0b6a1140c135863256ffef18

commit 7380d2674a7f338b0b6a1140c135863256ffef18
Author: Lukasz Stanislawski 
Date:   Sat Nov 29 15:40:35 2014 +0900

config: do not use elm_config from previous epoch.

Summary:
This commit fixes elm_config version mismatch occuring after b8606d93.
Config version in config source files has been set to proper values.
Patch deletes also previous code used to update config from previous epoch.

Current behavior when elm config is outdated:
1. if epoch is outdated - do not use user config - load system config 
instead.
   Leave it to user to recreate elm_config using elementary_config. Act 
like it
   was no config in user directory.
2. if generation is outdated and epoch is up-to-date - try to update user 
config.

Reviewers: raster, seoz, z.kosinski

Subscribers: seoz

Differential Revision: https://phab.enlightenment.org/D1223

Conflicts:
config/default/base.src.in
config/mobile/base.src.in
config/standard/base.src.in

-- 




[EGIT] [core/elementary] master 01/01: Do not explicite include atspi headers.

2015-01-14 Thread Lukasz Stanislawski
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=94b4002c3553ecaf822ce78995f0e4f85fae2ca1

commit 94b4002c3553ecaf822ce78995f0e4f85fae2ca1
Author: Lukasz Stanislawski 
Date:   Wed Jan 14 14:49:41 2015 +0100

Do not explicite include atspi headers.

Summary: fixes make check failures on atspi tests.

Reviewers: cedric

Subscribers: seoz

Maniphest Tasks: T2001

Differential Revision: https://phab.enlightenment.org/D1870
---
 src/tests/elm_test_actionslider.c|  6 +-
 src/tests/elm_test_atspi.c   |  7 +--
 src/tests/elm_test_bg.c  |  6 +-
 src/tests/elm_test_box.c |  6 +-
 src/tests/elm_test_bubble.c  |  6 +-
 src/tests/elm_test_button.c  | 12 ++--
 src/tests/elm_test_calendar.c|  6 +-
 src/tests/elm_test_check.c   |  5 +
 src/tests/elm_test_clock.c   |  6 +-
 src/tests/elm_test_colorselector.c   |  5 +
 src/tests/elm_test_conformant.c  |  6 +-
 src/tests/elm_test_ctxpopup.c|  6 +-
 src/tests/elm_test_datetime.c|  6 +-
 src/tests/elm_test_dayselector.c |  6 +-
 src/tests/elm_test_diskselector.c|  6 +-
 src/tests/elm_test_entry.c   |  9 ++---
 src/tests/elm_test_fileselector.c|  5 +
 src/tests/elm_test_fileselector_button.c |  6 +-
 src/tests/elm_test_fileselector_entry.c  |  6 +-
 src/tests/elm_test_flip.c|  5 +
 src/tests/elm_test_flipselector.c|  5 +
 src/tests/elm_test_frame.c   |  5 +
 src/tests/elm_test_gengrid.c |  5 +
 src/tests/elm_test_genlist.c |  5 +
 src/tests/elm_test_glview.c  |  5 +
 src/tests/elm_test_grid.c|  5 +
 src/tests/elm_test_hover.c   |  5 +
 src/tests/elm_test_hoversel.c|  5 +
 src/tests/elm_test_icon.c|  5 +
 src/tests/elm_test_image.c   |  5 +
 src/tests/elm_test_index.c   |  5 +
 src/tests/elm_test_inwin.c   |  5 +
 src/tests/elm_test_label.c   |  5 +
 src/tests/elm_test_layout.c  |  5 +
 src/tests/elm_test_list.c|  9 ++---
 src/tests/elm_test_map.c |  5 +
 src/tests/elm_test_mapbuf.c  |  5 +
 src/tests/elm_test_menu.c|  5 +
 src/tests/elm_test_multibuttonentry.c|  5 +
 src/tests/elm_test_naviframe.c   |  5 +
 src/tests/elm_test_notify.c  |  5 +
 src/tests/elm_test_panel.c   |  5 +
 src/tests/elm_test_panes.c   |  5 +
 src/tests/elm_test_photo.c   |  5 +
 src/tests/elm_test_photocam.c|  5 +
 src/tests/elm_test_player.c  |  5 +
 src/tests/elm_test_plug.c|  5 +
 src/tests/elm_test_popup.c   |  5 +
 src/tests/elm_test_prefs.c   |  5 +
 src/tests/elm_test_progressbar.c |  5 +
 src/tests/elm_test_radio.c   |  5 +
 src/tests/elm_test_scroller.c|  5 +
 src/tests/elm_test_segmentcontrol.c  |  5 +
 src/tests/elm_test_separator.c   |  5 +
 src/tests/elm_test_slider.c  |  5 +
 src/tests/elm_test_slideshow.c   |  5 +
 src/tests/elm_test_spinner.c |  5 +
 src/tests/elm_test_table.c   |  5 +
 src/tests/elm_test_thumb.c   |  5 +
 src/tests/elm_test_toolbar.c |  5 +
 src/tests/elm_test_video.c   |  5 +
 src/tests/elm_test_web.c |  5 +
 src/tests/elm_test_win.c |  9 ++---
 63 files changed, 67 insertions(+), 282 deletions(-)

diff --git a/src/tests/elm_test_actionslider.c 
b/src/tests/elm_test_actionslider.c
index 4974587..83c7bfc 100644
--- a/src/tests/elm_test_actionslider.c
+++ b/src/tests/elm_test_actionslider.c
@@ -2,14 +2,10 @@
 # include "elementary_config.h"
 #endif
 
+#define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #include 
 #include "elm_suite.h"
 
-#define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
-#include "elm_interface_atspi_accessible.h"
-#include "elm_interface_atspi_accessible.eo.h"
-
-
 START_TEST (elm_atspi_role_get)
 {
Evas_Object *win, *actionslider;
diff --git a/src/tests/elm_test_atspi.c b/src/tests/elm_test_atspi.c
index 1e6bb69..da616ff 100644
--- a/src/tests/elm_test_atspi.c
+++ b/src/tests/elm_test_atspi.c
@@ -3,17 +3,12 @@
 #endif
 
 #define ELM_INTERNAL_API_ARGESFSDFEFC
+#define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 
 #include 
 #include "elm_priv.h"
 #include "elm_suite.h"
 
-#include "elm_atspi_app_object.eo.h"
-
-#define ELM_INTERFACE_

Re: [E-devel] Elm_spinner focus UI, accessibility fix

2015-03-04 Thread Lukasz Stanislawski
This commit also removed keybinding feature from elm_spinner - I'm not 
sure if it is good or bad approach, but keybinding are used in almost 
every elm_widget.
What is more elm_config still contains keybindings for Elm_Spinner.

BR

On 04.03.2015 13:19, rimmed wrote:
> Raster, you commited thatadfe7fbcd3f4146d84219de7dbb5a273d89f396e  
> .
> Differential Revision:https://phab.enlightenment.org/D1911
>
> This commit brokebackward compatibility with Elemenatry 1.10. Maybe need to 
> change theme|version from "110" to "113"?
>
> Best regards
> Viacheslav Reutskiy (rimmed)
> |
>
> --
> Dive into the World of Parallel Programming The Go Parallel Website, sponsored
> by Intel and developed in partnership with Slashdot Media, is your hub for all
> things parallel software development, from weekly thought leadership blogs to
> news, videos, case studies, tutorials and more. Take a look and join the
> conversation now. http://goparallel.sourceforge.net/
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>

--
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 02/02: atspi: add AtspiText and AtspiEditableText interface support.

2014-08-07 Thread Lukasz Stanislawski
Hello Stefan,

W dniu 07.08.2014 16:13, Stefan Schmidt pisze:
> Hello.
>
> Looking through newly added API for 1.11 right now.
>
> On Tue, 2014-06-10 at 00:18, Lukasz Stanislawski wrote:
>> raster pushed a commit to branch master.
>>
>> http://git.enlightenment.org/core/elementary.git/commit/?id=0c5c00ee68bb0c4cf7f4ecea7912ff14025129c8
>>
>> commit 0c5c00ee68bb0c4cf7f4ecea7912ff14025129c8
>> Author: Lukasz Stanislawski 
>> Date:   Tue Jun 10 16:18:17 2014 +0900
>>
>>  atspi: add AtspiText and AtspiEditableText interface support.
>>
>>  Summary:
>>  Added reference interface implementation for elm_entry widget. Tests 
>> added.
>>  Updated at-spi-constants.h header to version 2.12.0.
>>
>>  Reviewers: raster, seoz
>>
>>  CC: raster
>>
>>  Differential Revision: https://phab.enlightenment.org/D806
>> ---
>
> [SNIP]
>
>> +
>> +/**
>> + * @brief Free Elm_Atspi_Text_Attribute structure
>> + */
>> +void elm_atspi_text_text_attribute_free(Elm_Atspi_Text_Attribute *attr);
>
> This one show up as a newly added symbol. It has no EAPI defined
> though. Should this be an internal or public symbol?
>
> If public we whould use EAPI here plus a bit more doxygen description
> and @since 1.11. If on the other hand this should be internal only we
> need to have a look why it shows up externally.

I would like to keep all atspi APIs internal for now (with two 
exceptions in elm_config), until atspi support will be finished. This, I 
assume, will happen after Elm_Object_Item migration to Eo.

Until then no public atspi symbols other then in elm_config.


Best regards,
LS

>
> regards
> Stefan Schmidt
>
> --
> Infragistics Professional
> Build stunning WinForms apps today!
> Reboot your WinForms applications with our WinForms controls.
> Build a bridge from your legacy apps to the future.
> http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>

--
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls. 
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: atspi: remove EAPI from elm_atspi_text_text_attribute_free

2014-08-08 Thread Lukasz Stanislawski
stanluk pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=8be5e9bba1a6f901b34e3a30c2e7caddaea7301f

commit 8be5e9bba1a6f901b34e3a30c2e7caddaea7301f
Author: Lukasz Stanislawski 
Date:   Fri Aug 8 11:05:18 2014 +0200

atspi: remove EAPI from elm_atspi_text_text_attribute_free

Issue reported by Stefan Schmidt. Above atspi function had EAPI attribute
defined in implementation file, however this symbol should not be public in
elementary 1.11.
---
 src/lib/elm_interface_atspi_text.c |  2 +-
 src/tests/elm_test_entry.c | 31 ---
 2 files changed, 1 insertion(+), 32 deletions(-)

diff --git a/src/lib/elm_interface_atspi_text.c 
b/src/lib/elm_interface_atspi_text.c
index afab4d5..39e0e77 100644
--- a/src/lib/elm_interface_atspi_text.c
+++ b/src/lib/elm_interface_atspi_text.c
@@ -11,7 +11,7 @@
 #include "elm_interface_atspi_text.h"
 #include "elm_interface_atspi_text.eo.h"
 
-EAPI void
+void
 elm_atspi_text_text_attribute_free(Elm_Atspi_Text_Attribute *attr)
 {
if (!attr) return;
diff --git a/src/tests/elm_test_entry.c b/src/tests/elm_test_entry.c
index 8c70c58..87e17e6 100644
--- a/src/tests/elm_test_entry.c
+++ b/src/tests/elm_test_entry.c
@@ -335,36 +335,6 @@ START_TEST (elm_entry_atspi_text_selections)
 }
 END_TEST
 
-START_TEST (elm_entry_atspi_text_attributes)
-{
-   Evas_Object *win, *entry;
-   Eina_List *formats;
-   const char txt[] = "Lorem ipśum  dolor sit\n amęt";
-   int start = 0, end = sizeof(txt);
-   Elm_Atspi_Text_Attribute *attr;
-
-   elm_init(1, NULL);
-   win = elm_win_add(NULL, "entry", ELM_WIN_BASIC);
-
-   entry = elm_entry_add(win);
-   elm_object_text_set(entry, txt);
-
-   eo_do(entry, formats = elm_interface_atspi_text_attributes_get(&start, 
&end));
-   EINA_LIST_FREE(formats, attr)
- {
-elm_atspi_text_text_attribute_free(attr);
- }
-
-   eo_do(entry, formats = elm_interface_atspi_text_default_attributes_get());
-   EINA_LIST_FREE(formats, attr)
- {
-elm_atspi_text_text_attribute_free(attr);
- }
-
-   elm_shutdown();
-}
-END_TEST
-
 START_TEST (elm_atspi_role_get)
 {
Evas_Object *win, *entry;
@@ -393,6 +363,5 @@ void elm_test_entry(TCase *tc)
tcase_add_test(tc, elm_entry_atspi_text_string_get_line);
tcase_add_test(tc, elm_entry_atspi_text_text_get);
tcase_add_test(tc, elm_entry_atspi_text_selections);
-   tcase_add_test(tc, elm_entry_atspi_text_attributes);
tcase_add_test(tc, elm_atspi_role_get);
 }

-- 




[EGIT] [core/elementary] master 01/01: atspi: properly include at-spi headers.

2014-10-17 Thread Lukasz Stanislawski
tasn pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=ed365503126a690e767f786dff24a06fbb77b72e

commit ed365503126a690e767f786dff24a06fbb77b72e
Author: Lukasz Stanislawski 
Date:   Fri Oct 17 16:56:11 2014 +0100

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
---
 src/lib/Elementary.h.in |  1 +
 src/lib/Makefile.am |  1 +
 src/lib/elc_ctxpopup.c  | 11 +++
 src/lib/elc_fileselector.c  | 11 +++
 src/lib/elc_fileselector_button.c   |  6 ++
 src/lib/elc_fileselector_entry.c|  7 ++-
 src/lib/elc_hoversel.c  | 12 +++-
 src/lib/elc_multibuttonentry.c  |  6 ++
 src/lib/elc_naviframe.c | 11 +++
 src/lib/elc_player.c| 11 +++
 src/lib/elc_popup.c | 11 +++
 src/lib/elm_actionslider.c  |  6 ++
 src/lib/elm_atspi_app_object.c  |  8 ++--
 src/lib/elm_atspi_app_object.h  |  6 ++
 src/lib/elm_atspi_bridge.c  | 14 --
 src/lib/elm_bg.c|  6 ++
 src/lib/elm_box.c   |  6 ++
 src/lib/elm_bubble.c|  6 ++
 src/lib/elm_button.c| 12 +++-
 src/lib/elm_calendar.c  | 11 +++
 src/lib/elm_check.c | 12 +++-
 src/lib/elm_clock.c |  6 ++
 src/lib/elm_colorselector.c | 11 +++
 src/lib/elm_conform.c   |  6 ++
 src/lib/elm_datetime.c  |  6 ++
 src/lib/elm_dayselector.c   |  6 ++
 src/lib/elm_diskselector.c  | 11 +++
 src/lib/elm_entry.c | 14 --
 src/lib/elm_flip.c  |  6 ++
 src/lib/elm_flipselector.c  | 12 +++-
 src/lib/elm_frame.c |  6 ++
 src/lib/elm_gengrid.c   | 11 +++
 src/lib/elm_genlist.c   | 11 +++
 src/lib/elm_glview.c|  6 ++
 src/lib/elm_grid.c  |  6 ++
 src/lib/elm_hover.c |  6 ++
 src/lib/elm_icon.c  |  6 ++
 src/lib/elm_image.c | 15 ---
 src/lib/elm_index.c |  6 ++
 src/lib/elm_interface_atspi_accessible.c| 10 +++---
 src/lib/elm_interface_atspi_accessible.eo   |  2 +-
 src/lib/elm_interface_atspi_accessible.h| 17 -
 src/lib/elm_interface_atspi_action.c|  6 ++
 src/lib/elm_interface_atspi_component.c |  4 
 src/lib/elm_interface_atspi_component.eo|  2 +-
 src/lib/elm_interface_atspi_editable_text.c |  5 ++---
 src/lib/elm_interface_atspi_image.c |  6 ++
 src/lib/elm_interface_atspi_image.eo|  2 +-
 src/lib/elm_interface_atspi_selection.c |  5 ++---
 src/lib/elm_interface_atspi_text.c  |  9 +++--
 src/lib/elm_interface_atspi_text.h  | 16 +++-
 src/lib/elm_interface_atspi_value.c |  5 ++---
 src/lib/elm_interface_atspi_widget.c| 11 +++
 src/lib/elm_interface_atspi_widget_action.c | 10 +++---
 src/lib/elm_interface_atspi_widget_action.h | 14 ++
 src/lib/elm_interface_atspi_window.c|  1 -
 src/lib/elm_interfaces.h| 24 
 src/lib/elm_inwin.c |  6 ++
 src/lib/elm_label.c |  6 ++
 src/lib/elm_layout.c|  6 ++
 src/lib/elm_list.c  | 11 +++
 src/lib/elm_map.c   | 11 +++
 src/lib/elm_mapbuf.c|  6 ++
 src/lib/elm_menu.c  |  6 ++
 src/lib/elm_notify.c

[EGIT] [core/elementary] master 01/01: Merge branch 'devs/stanluk/eo_object_items_atspi'

2015-04-06 Thread Lukasz Stanislawski
stanluk pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=8ab826d06965fe75e003a2596700702892fb1e11

commit 8ab826d06965fe75e003a2596700702892fb1e11
Merge: 7c22730 d043dc6
Author: Lukasz Stanislawski 
Date:   Mon Apr 6 10:54:57 2015 +0200

Merge branch 'devs/stanluk/eo_object_items_atspi'

Make elm object items atspi-aware objects. Implement atspi support
for elm_genlist, elm_gengrid and elm_toolbar items.

 src/lib/Makefile.am   |   3 -
 src/lib/elm_atspi_app_object.c|   6 +-
 src/lib/elm_atspi_bridge.c| 164 ++-
 src/lib/elm_entry.c   |  12 ++
 src/lib/elm_entry.eo  |   1 +
 src/lib/elm_gengrid.c | 108 +++-
 src/lib/elm_gengrid.eo|   6 +-
 src/lib/elm_gengrid_item.eo   |   3 +
 src/lib/elm_genlist.c | 129 +++
 src/lib/elm_genlist.eo|   2 +
 src/lib/elm_genlist_item.eo   |   3 +
 src/lib/elm_interface_atspi_accessible.c  |   7 +-
 src/lib/elm_interface_atspi_accessible.eo |   5 +-
 src/lib/elm_interface_atspi_accessible.h  |   8 +-
 src/lib/elm_interface_atspi_widget.c  | 204 ---
 src/lib/elm_interface_atspi_widget.eo |  19 ---
 src/lib/elm_interfaces.h  |   2 -
 src/lib/elm_list.c| 161 +-
 src/lib/elm_list.eo   |  11 +-
 src/lib/elm_list_item.eo  |   7 +-
 src/lib/elm_radio.c   |  21 +++
 src/lib/elm_radio.eo  |   1 +
 src/lib/elm_spinner.c |   5 +-
 src/lib/elm_toolbar.c |  53 ++
 src/lib/elm_toolbar.eo|   2 +
 src/lib/elm_toolbar_item.eo   |   2 +
 src/lib/elm_widget.c  | 263 ++
 src/lib/elm_widget.eo |  15 +-
 src/lib/elm_widget.h  |   8 +
 src/lib/elm_widget_item.eo|   8 +-
 src/tests/elm_test_gengrid.c  |   2 +-
 src/tests/elm_test_genlist.c  | 168 ++-
 32 files changed, 1107 insertions(+), 302 deletions(-)

-- 




Re: [E-devel] [EGIT] [core/elementary] master 01/01: Merge branch 'devs/stanluk/perf'

2015-10-01 Thread Lukasz Stanislawski
On 10/01/2015 04:29 PM, Tom Hacohen wrote:
> Hey man,
>
> Good job mastering git merge --no-ff thing. :)
> Makes for a much cleaner log and easier to go through.
>
> I just have one comment: please, is future patches, make sure to have
> the first summary line of the merge commit as the summary of the whole
> change, so for example inn this case:
>
> "Atspi: Reduce overall memory overhead."
>
> And then the "merge branch" can be the first line after the empty line.
>
> This makes the summary line meaningful and easier to scan, and
> "devs/stanluk/perf" doesn't mean anything to anyone, so it can be dropped.
>
> --
> Tom.
Hey,

Sorry for that, You are absolutely right, I will remember this next time.

  I have just followed this guy here: 
https://git.enlightenment.org/core/efl.git/commit/?id=79f2576a8919c288f51939b12cc4edfd67023c17

:)

BR
>
> On 01/10/15 15:22, Lukasz Stanislawski wrote:
>> stanluk pushed a commit to branch master.
>>
>> http://git.enlightenment.org/core/elementary.git/commit/?id=b9d315996b917a2c04f5608ad3476140e1613ee0
>>
>> commit b9d315996b917a2c04f5608ad3476140e1613ee0
>> Merge: 5471505 a109bf0
>> Author: Lukasz Stanislawski 
>> Date:   Thu Oct 1 16:08:35 2015 +0200
>>
>>   Merge branch 'devs/stanluk/perf'
>>
>>   Serie of patches reducing overall memory overhead of atspi mode.
>>
>>   The main changes include:
>>   * use recently fixed eldbus_service_register_fallback function instead
>> of regular ones.
>>   * use global accessibility events emitter and handler to avoid 
>> registering array
>> of callbacks on every accessible object.
>>   * do not keep strings with object paths
>>
>>src/lib/Makefile.am   |   1 +
>>src/lib/elm_atspi_bridge.c| 917 
>> +++---
>>src/lib/elm_entry.c   |  10 +-
>>src/lib/elm_genlist.c |  21 +-
>>src/lib/elm_interface_atspi_accessible.c  |  55 ++
>>src/lib/elm_interface_atspi_accessible.eo |  23 +
>>src/lib/elm_interface_atspi_accessible.h  |  46 +-
>>src/lib/elm_interface_atspi_window.h  |  56 ++
>>src/lib/elm_interfaces.h  |   3 +-
>>src/lib/elm_widget.c  |  38 +-
>>src/lib/elm_win.c |  36 +-
>>src/tests/elm_test_genlist.c  |  11 +-
>>12 files changed, 697 insertions(+), 520 deletions(-)
>>
>
> --
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>


--
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] Fwd: [EGIT] [core/elementary] master 01/01: atspi: add new relationship append/remove/clear API

2015-10-05 Thread Lukasz Stanislawski
Hello,

This API went in without proper adding tests. I will provide some during 
stabilization phase.

Sorry for inconvenience. If it unacceptable I will revert it and wait 
for another cycle.


 Forwarded Message 
Subject:[EGIT] [core/elementary] master 01/01: atspi: add new 
relationship append/remove/clear API
Date:   Mon, 05 Oct 2015 00:03:21 -0700
From:   Lukasz Stanislawski 
Reply-To:   Enlightenment developer list 

To: g...@lists.enlightenment.org



stanluk pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=7158d62cb65edf2abf1da8ac0c50df6511d77d9b

commit 7158d62cb65edf2abf1da8ac0c50df6511d77d9b
Author: Lukasz Stanislawski 
Date:   Sun Oct 4 22:30:31 2015 +0200

 atspi: add new relationship append/remove/clear API
 
 Allow to add some extra contextul information about accessibility objects
 which can be used by Assistive Technology to provide better user 
experience.
 
 API is still marked as beta.
 
 @feature
---
  src/lib/elm_atspi_bridge.c|  12 +-
  src/lib/elm_interface_atspi_accessible.c  | 180 +-
  src/lib/elm_interface_atspi_accessible.eo |  38 ++-
  src/lib/elm_interface_atspi_accessible.h  |  39 ++-
  src/lib/elm_widget.c  |  54 ++---
  src/lib/elm_widget.eo |   1 -
  6 files changed, 270 insertions(+), 54 deletions(-)

diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index 9341153..b405655 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -786,11 +786,12 @@ _accessible_get_relation_set(const 
Eldbus_Service_Interface *iface EINA_UNUSED,
  {
 const char *obj_path = eldbus_message_path_get(msg);
 Eo *bridge = eldbus_service_object_data_get(iface, 
ELM_ATSPI_BRIDGE_CLASS_NAME);
-   Eo *obj = _bridge_object_from_path(bridge, obj_path);
+   Eo *rel_obj, *obj = _bridge_object_from_path(bridge, obj_path);
 Eldbus_Message *ret = NULL;
 Eldbus_Message_Iter *iter = NULL, *iter_array = NULL, *iter_array2 = NULL, 
*iter_struct;
 Elm_Atspi_Relation *rel;
-   Eina_List *rels;
+   Eina_List *l, *l2;
+   Elm_Atspi_Relation_Set rels;
  
 ELM_ATSPI_OBJ_CHECK_OR_RETURN_DBUS_ERROR(obj, 
ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, msg);
  
@@ -803,17 +804,18 @@ _accessible_get_relation_set(const 
Eldbus_Service_Interface *iface EINA_UNUSED,
  
 eo_do(obj, rels = elm_interface_atspi_accessible_relation_set_get());
  
-   EINA_LIST_FREE(rels, rel)
+   EINA_LIST_FOREACH(rels, l, rel)
   {
  iter_struct = eldbus_message_iter_container_new(iter_array, 'r', 
NULL);
  eldbus_message_iter_basic_append(iter_struct, 'u', 
_elm_relation_to_atspi_relation(rel->type));
  iter_array2 = eldbus_message_iter_container_new(iter_struct, 'a', 
"(so)");
  EINA_SAFETY_ON_NULL_GOTO(iter_array2, fail);
-_bridge_iter_object_reference_append(bridge, iter_array2, rel->obj);
+EINA_LIST_FOREACH(rel->objects, l2, rel_obj)
+   _bridge_iter_object_reference_append(bridge, iter_array2, rel_obj);
  eldbus_message_iter_container_close(iter_struct, iter_array2);
  eldbus_message_iter_container_close(iter_array, iter_struct);
-free(rel);
   }
+   elm_atspi_relation_set_free(rels);
 eldbus_message_iter_container_close(iter, iter_array);
  
 return ret;
diff --git a/src/lib/elm_interface_atspi_accessible.c 
b/src/lib/elm_interface_atspi_accessible.c
index 709d142..0c0a213 100644
--- a/src/lib/elm_interface_atspi_accessible.c
+++ b/src/lib/elm_interface_atspi_accessible.c
@@ -127,6 +127,7 @@ struct _Elm_Interface_Atspi_Accessible_Data
 const char*name;
 const char*description;
 const char*translation_domain;
+   Elm_Atspi_Relation_Set relations;
 Elm_Interface_Atspi_Accessible *parent;
  };
  
@@ -290,12 +291,10 @@ _elm_interface_atspi_accessible_state_set_get(Eo *obj 
EINA_UNUSED, Elm_Interface
 return 0;
  }
  
-EOLIAN Eina_List*
+EOLIAN Elm_Atspi_Relation_Set
  _elm_interface_atspi_accessible_relation_set_get(Eo *obj EINA_UNUSED, 
Elm_Interface_Atspi_Accessible_Data *pd EINA_UNUSED)
  {
-   WRN("The %s object does not implement the \"accessible_relation_set\" 
function.",
-   eo_class_name_get(eo_class_get(obj)));
-   return NULL;
+   return elm_atspi_relation_set_clone(pd->relations);
  }
  
  EAPI void elm_atspi_attributes_list_free(Eina_List *list)
@@ -369,4 +368,177 @@ _elm_interface_atspi_accessible_translation_domain_get(Eo 
*obj EINA_UNUSED, Elm_
 return pd->translation_domain;
  }
  
+EAPI void
+elm_atspi_relation_free(Elm_Atspi_Relation *relation)
+{
+   eina_list_free(relation->objects);
+   free(relation);
+}
+
+EAPI Elm_Atspi_Relation *
+elm_atspi_relation_clone(const Elm_Atspi_Relation *relation)
+{
+   Elm_Atspi_Relation *ret = calloc(sizeof(Elm_At

Re: [E-devel] Fwd: [EGIT] [core/elementary] master 01/01: atspi: add new relationship append/remove/clear API

2015-10-05 Thread Lukasz Stanislawski
On 10/05/2015 09:14 AM, Carsten Haitzler (The Rasterman) wrote:
> On Mon, 05 Oct 2015 09:06:36 +0200 Lukasz Stanislawski
>  said:
>
>> Hello,
>>
>> This API went in without proper adding tests. I will provide some during
>> stabilization phase.
>>
>> Sorry for inconvenience. If it unacceptable I will revert it and wait
>> for another cycle.
> maybe just mark as unstable in doxygen doc comments for now then? so people
> know... :)
API is already marked as beta, so I think it should be considered 
unstable :)
>
>>  Forwarded Message 
>> Subject: [EGIT] [core/elementary] master 01/01: atspi: add new
>> relationship append/remove/clear API
>> Date:Mon, 05 Oct 2015 00:03:21 -0700
>> From:Lukasz Stanislawski 
>> Reply-To:Enlightenment developer list
>> 
>> To:  g...@lists.enlightenment.org
>>
>>
>>
>> stanluk pushed a commit to branch master.
>>
>> http://git.enlightenment.org/core/elementary.git/commit/?id=7158d62cb65edf2abf1da8ac0c50df6511d77d9b
>>
>> commit 7158d62cb65edf2abf1da8ac0c50df6511d77d9b
>> Author: Lukasz Stanislawski 
>> Date:   Sun Oct 4 22:30:31 2015 +0200
>>
>>   atspi: add new relationship append/remove/clear API
>>   
>>   Allow to add some extra contextul information about accessibility 
>> objects
>>   which can be used by Assistive Technology to provide better user
>> experience.
>>   API is still marked as beta.
>>   
>>   @feature
>> ---
>>src/lib/elm_atspi_bridge.c|  12 +-
>>src/lib/elm_interface_atspi_accessible.c  | 180 
>> 
>> +- src/lib/elm_interface_atspi_accessible.eo |  38 ++-
>>src/lib/elm_interface_atspi_accessible.h  |  39 ++-
>>src/lib/elm_widget.c  |  54 ++---
>>src/lib/elm_widget.eo |   1 -
>>6 files changed, 270 insertions(+), 54 deletions(-)
>>
>> diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
>> index 9341153..b405655 100644
>> --- a/src/lib/elm_atspi_bridge.c
>> +++ b/src/lib/elm_atspi_bridge.c
>> @@ -786,11 +786,12 @@ _accessible_get_relation_set(const
>> Eldbus_Service_Interface *iface EINA_UNUSED, {
>>   const char *obj_path = eldbus_message_path_get(msg);
>>   Eo *bridge = eldbus_service_object_data_get(iface,
>> ELM_ATSPI_BRIDGE_CLASS_NAME);
>> -   Eo *obj = _bridge_object_from_path(bridge, obj_path);
>> +   Eo *rel_obj, *obj = _bridge_object_from_path(bridge, obj_path);
>>   Eldbus_Message *ret = NULL;
>>   Eldbus_Message_Iter *iter = NULL, *iter_array = NULL, *iter_array2 =
>> NULL, *iter_struct; Elm_Atspi_Relation *rel;
>> -   Eina_List *rels;
>> +   Eina_List *l, *l2;
>> +   Elm_Atspi_Relation_Set rels;
>>
>>   ELM_ATSPI_OBJ_CHECK_OR_RETURN_DBUS_ERROR(obj,
>> ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, msg);
>> @@ -803,17 +804,18 @@ _accessible_get_relation_set(const
>> Eldbus_Service_Interface *iface EINA_UNUSED,
>>   eo_do(obj, rels = elm_interface_atspi_accessible_relation_set_get());
>>
>> -   EINA_LIST_FREE(rels, rel)
>> +   EINA_LIST_FOREACH(rels, l, rel)
>> {
>>iter_struct = eldbus_message_iter_container_new(iter_array, 'r',
>> NULL); eldbus_message_iter_basic_append(iter_struct, 'u',
>> _elm_relation_to_atspi_relation(rel->type)); iter_array2 =
>> eldbus_message_iter_container_new(iter_struct, 'a', "(so)");
>> EINA_SAFETY_ON_NULL_GOTO(iter_array2, fail);
>> -_bridge_iter_object_reference_append(bridge, iter_array2, rel->obj);
>> +EINA_LIST_FOREACH(rel->objects, l2, rel_obj)
>> +   _bridge_iter_object_reference_append(bridge, iter_array2,
>> rel_obj); eldbus_message_iter_container_close(iter_struct, iter_array2);
>>eldbus_message_iter_container_close(iter_array, iter_struct);
>> -free(rel);
>> }
>> +   elm_atspi_relation_set_free(rels);
>>   eldbus_message_iter_container_close(iter, iter_array);
>>
>>   return ret;
>> diff --git a/src/lib/elm_interface_atspi_accessible.c
>> b/src/lib/elm_interface_atspi_accessible.c index 709d142..0c0a213 100644
>> --- a/src/lib/elm_interface_atspi_accessible.c
>> +++ b/src/lib/elm_interface_atspi_accessible.c
>> @@ -127,6 +127,7 @@ struct _Elm_Interface_Atspi_Accessible_Data
>>   const char*name;
>>   const char*description;
>>   const char*translation

Re: [E-devel] [EGIT] [core/elementary] master 01/02: atspi: always update cache

2015-10-20 Thread Lukasz Stanislawski
On 10/20/2015 10:46 AM, Stefan Schmidt wrote:
> Hello.
>
> On 19/10/15 17:34, Lukasz Stanislawski wrote:
>> stanluk pushed a commit to branch master.
>>
>> http://git.enlightenment.org/core/elementary.git/commit/?id=15171f47d7e74afdd1f621d0c22e7375a2c14ab0
>>
>> commit 15171f47d7e74afdd1f621d0c22e7375a2c14ab0
>> Author: Lukasz Stanislawski 
>> Date:   Fri Oct 9 16:17:52 2015 +0200
>>
>>   atspi: always update cache
>>   
>>   libatspi implementation allows to call methods on objects which
>>   are not added to client cache with "AddAccessible" at-spi signal.
>>   Bridge should allow to perform such calls by updating its internal
>>   cache as soons as it returns a reference to the dbus object to client.
> This does not look like a fix to me at all. Does it fix anything you did
> not mention here?
> New features should be left for the merge window.
I consider it more a fix then a feature.
When bridge returns a dbus path to some object it should be instantly 
accessible to at-spi dbus clients. Previously it wasn't, so calls on 
returned references could result in "invalid object" error if the 
"added" event was not emitted by object beforehand.
So this patch basically removes some race condition that could happen 
(but due to dbus latency it never had).
I will really like to have it in on 1.16...
>
> There is also a Coverity defect in atspi in elm which I mentioned in my
> 1.16 work item emails. I would be happy if you could give it a look.
> CID  1325724 Bad bit shift operation
> <https://scan6.coverity.com/docs/en/cov_checker_ref.html#static_checker_BAD_SHIFT>
Ok, I'll check it.
>
> regards
> Stefan Schmidt
> --
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>


--
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Consult] Ecore_Event_Mouse_*

2016-04-21 Thread Lukasz Stanislawski
On 21.04.2016 08:54, Carsten Haitzler (The Rasterman) wrote:
> On Thu, 21 Apr 2016 15:24:46 +0900 Kim Shinwoo  said:
>
>> Dear All, Hello.
>> I'm using a ecore_event_filter to recognize some gestures for the screen
>> reader on the Enlightenment module.
>> I have to add Ecore_Event_Mouse_* event in the ecore_event_filter for some
>> gestures. When I added an event in the ecore_event_filter,  this
>> ecore_event_filter got the added event also. So I need to distinguish newly
>> added event.
>> What is proper way? Can I add a flag to Ecore_Event_Mouse_* such as..
>> unsigned char is_accessibility: 1;
>>
>> Thank you for enlightening me in advace :P
> this smells totally wrong for some reason. with atspi accessibility is done by
> dbus and high level protocol... so why this faking of events?
>
> you can determine you made the event by storing the event pointers and 
> matching
> them up to currently "int he queue, not freed yet" event ptrs. at least ecore
> events.
This sounds exactly as a hack I made for key events in 
elm_atspi_bridge.c, so no need to add extra fields for one thing only.

The reason for this craziness was the atspi requirement. It assumed that 
every key event should go like through middle man:
X11 -> App -> Atspi daemon -> App
>> Sincerely,
>> Shinwoo Kim.
>> --
>> Find and fix application performance issues faster with Applications Manager
>> Applications Manager provides deep performance insights into multiple tiers 
>> of
>> your business applications. It resolves application problems quickly and
>> reduces your MTTR. Get your free trial!
>> https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
>> ___
>> enlightenment-devel mailing list
>> enlightenment-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>>
>


--
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: atspi: add AtspiImage interface support.

2014-05-27 Thread Lukasz Stanislawski
raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=0c26825eb931c80aa17b5caa1cec76e4cd08c960

commit 0c26825eb931c80aa17b5caa1cec76e4cd08c960
Author: Lukasz Stanislawski 
Date:   Tue May 27 16:23:13 2014 +0900

atspi: add AtspiImage interface support.

Summary: Sample implementation for elm_image added.

Reviewers: raster, seoz

Differential Revision: https://phab.enlightenment.org/D794
---
 src/lib/Makefile.am  |   5 ++
 src/lib/elm_atspi_bridge.c   | 118 +++
 src/lib/elm_image.c  |  27 
 src/lib/elm_image.eo |   3 +-
 src/lib/elm_interface_atspi_image.c  |  43 +
 src/lib/elm_interface_atspi_image.eo |  43 +
 6 files changed, 238 insertions(+), 1 deletion(-)

diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index 075becc..f012fb5 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -452,6 +452,7 @@ elm_index.c \
 elm_interface_atspi_accessible.c \
 elm_interface_atspi_action.c \
 elm_interface_atspi_component.c \
+elm_interface_atspi_image.c \
 elm_interface_atspi_value.c \
 elm_interface_atspi_widget.c \
 elm_interface_atspi_widget_action.c \
@@ -658,6 +659,8 @@ BUILT_SOURCES = \
elm_interface_atspi_action.eo.h \
elm_interface_atspi_component.eo.c \
elm_interface_atspi_component.eo.h \
+   elm_interface_atspi_image.eo.c \
+   elm_interface_atspi_image.eo.h \
elm_interface_atspi_value.eo.c \
elm_interface_atspi_value.eo.h \
elm_interface_atspi_widget.eo.c \
@@ -789,6 +792,7 @@ elementaryeolianfiles_DATA = \
 elm_interface_atspi_accessible.eo \
 elm_interface_atspi_action.eo \
 elm_interface_atspi_component.eo \
+elm_interface_atspi_image.eo \
 elm_interface_atspi_value.eo \
 elm_interface_atspi_widget.eo \
 elm_interface_atspi_widget_action.eo \
@@ -881,6 +885,7 @@ nodist_includesunstable_HEADERS = \
  elm_interface_atspi_accessible.eo.h \
  elm_interface_atspi_action.eo.h \
  elm_interface_atspi_component.eo.h \
+ elm_interface_atspi_image.eo.h \
  elm_interface_atspi_value.eo.h \
  elm_interface_atspi_widget.eo.h \
  elm_interface_atspi_widget_action.eo.h \
diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index 216fdfd..a488c62 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -6,6 +6,7 @@
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_ACTION_PROTECTED
 #define ELM_INTERFACE_ATSPI_VALUE_PROTECTED
+#define ELM_INTERFACE_ATSPI_IMAGE_PROTECTED
 #include "atspi/atspi-constants.h"
 
 #include 
@@ -19,6 +20,7 @@
 #include "elm_interface_atspi_window.eo.h"
 #include "elm_interface_atspi_action.eo.h"
 #include "elm_interface_atspi_value.eo.h"
+#include "elm_interface_atspi_image.eo.h"
 
 /*
  * Accessibility Bus info not defined in atspi-constants.h
@@ -706,6 +708,80 @@ static const Eldbus_Method action_methods[] = {
{ NULL, NULL, NULL, NULL, 0 }
 };
 
+static Eldbus_Message *
+_image_extents_get(const Eldbus_Service_Interface *iface, const Eldbus_Message 
*msg)
+{
+   AtspiCoordType type;
+   Eldbus_Message *ret;
+   const char *obj_path = eldbus_service_object_path_get(iface);
+   int x, y, w, h;
+   Eina_Bool screen_coords;
+   Eo *obj = _access_object_from_path(obj_path);
+
+   x = y = w = h = -1;
+
+   if (!eldbus_message_arguments_get(msg, "u", &type))
+ return eldbus_message_error_new(msg, 
"org.freedesktop.DBus.Error.InvalidArgs", "Invalid index type.");
+
+   ret = eldbus_message_method_return_new(msg);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(ret, NULL);
+
+   screen_coords = type == ATSPI_COORD_TYPE_SCREEN ? EINA_TRUE : EINA_FALSE;
+   eo_do(obj, elm_interface_atspi_image_extents_get(screen_coords, &x, &y, &w, 
&h));
+   eldbus_message_arguments_append(ret, "", x, y, w, h);
+
+   return ret;
+}
+
+static Eldbus_Message *
+_image_position_get(const Eldbus_Service_Interface *iface, const 
Eldbus_Message *msg)
+{
+   AtspiCoordType type;
+   Eldbus_Message *ret;
+   const char *obj_path = eldbus_service_object_path_get(iface);
+   Eo *obj = _access_object_from_path(obj_path);
+   int x = -1, y = -1;
+   Eina_Bool screen_coords;
+
+   if (!eldbus_message_arguments_get(msg, "u", &type))
+ return eldbus_message_error_new(msg, 
"org.freedesktop.DBus.Error.InvalidArgs", "Invalid index type.");
+
+   ret = eldbus_message_method_return_new(ms

[EGIT] [core/elementary] master 01/01: atspi: add accessible default relations and attributes

2014-05-28 Thread Lukasz Stanislawski
raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=ab9dfa4e04c094a9b0da6092fe9d549f59783cb3

commit ab9dfa4e04c094a9b0da6092fe9d549f59783cb3
Author: Lukasz Stanislawski 
Date:   Wed May 28 17:12:34 2014 +0900

atspi: add accessible default relations and attributes

Summary: Tests added for accessibile interface

Differential Revision: https://phab.enlightenment.org/D900
---
 src/lib/elm_atspi_app_object.c|  29 ++-
 src/lib/elm_atspi_app_object.eo   |   4 +-
 src/lib/elm_atspi_bridge.c|  29 ++-
 src/lib/elm_interface_atspi_accessible.c  |  21 +-
 src/lib/elm_interface_atspi_accessible.eo |  16 +-
 src/lib/elm_interface_atspi_accessible.h  |  46 
 src/lib/elm_interface_atspi_component.c   |   4 +-
 src/lib/elm_interface_atspi_widget.c  |  50 
 src/lib/elm_interface_atspi_widget.eo |   2 +
 src/tests/Makefile.am |   1 +
 src/tests/elm_suite.c |   1 +
 src/tests/elm_suite.h |   1 +
 src/tests/elm_test_atspi.c| 419 ++
 13 files changed, 607 insertions(+), 16 deletions(-)

diff --git a/src/lib/elm_atspi_app_object.c b/src/lib/elm_atspi_app_object.c
index 0f9d5e7..60a4485 100644
--- a/src/lib/elm_atspi_app_object.c
+++ b/src/lib/elm_atspi_app_object.c
@@ -16,8 +16,21 @@ extern Eina_List *_elm_win_list;
 static Eo *_atspi_root;
 static int _init;
 
+typedef struct _Elm_Atspi_App_Object_Data Elm_Atspi_App_Object_Data;
+
+struct _Elm_Atspi_App_Object_Data
+{
+   const char *descr;
+};
+
+EOLIAN static void
+_elm_atspi_app_object_eo_base_destructor(Eo *obj EINA_UNUSED, 
Elm_Atspi_App_Object_Data *_pd)
+{
+   if (_pd->descr) eina_stringshare_del(_pd->descr);
+}
+
 EOLIAN static Eina_List*
-_elm_atspi_app_object_elm_interface_atspi_accessible_children_get(Eo *obj 
EINA_UNUSED, void *_pd EINA_UNUSED)
+_elm_atspi_app_object_elm_interface_atspi_accessible_children_get(Eo *obj 
EINA_UNUSED, Elm_Atspi_App_Object_Data *_pd EINA_UNUSED)
 {
Eina_List *l, *accs = NULL;
Evas_Object *win;
@@ -33,19 +46,25 @@ 
_elm_atspi_app_object_elm_interface_atspi_accessible_children_get(Eo *obj EINA_U
 }
 
 EOLIAN static const char*
-_elm_atspi_app_object_elm_interface_atspi_accessible_name_get(Eo *obj 
EINA_UNUSED, void *_pd EINA_UNUSED)
+_elm_atspi_app_object_elm_interface_atspi_accessible_name_get(Eo *obj 
EINA_UNUSED, Elm_Atspi_App_Object_Data *_pd EINA_UNUSED)
 {
return elm_app_name_get();
 }
 
 EOLIAN static const char*
-_elm_atspi_app_object_elm_interface_atspi_accessible_description_get(Eo *obj 
EINA_UNUSED, void *_pd EINA_UNUSED)
+_elm_atspi_app_object_elm_interface_atspi_accessible_description_get(Eo *obj 
EINA_UNUSED, Elm_Atspi_App_Object_Data *_pd)
+{
+   return _pd->descr;
+}
+
+EOLIAN static void
+_elm_atspi_app_object_elm_interface_atspi_accessible_description_set(Eo *obj 
EINA_UNUSED, Elm_Atspi_App_Object_Data *_pd EINA_UNUSED, const char *descr)
 {
-   return NULL;
+   eina_stringshare_replace(&_pd->descr, descr);
 }
 
 EOLIAN static Elm_Atspi_Role
-_elm_atspi_app_object_elm_interface_atspi_accessible_role_get(Eo *obj 
EINA_UNUSED, void *_pd EINA_UNUSED)
+_elm_atspi_app_object_elm_interface_atspi_accessible_role_get(Eo *obj 
EINA_UNUSED, Elm_Atspi_App_Object_Data *_pd EINA_UNUSED)
 {
return ELM_ATSPI_ROLE_APPLICATION;
 }
diff --git a/src/lib/elm_atspi_app_object.eo b/src/lib/elm_atspi_app_object.eo
index 0cdfccd..8a9b122 100644
--- a/src/lib/elm_atspi_app_object.eo
+++ b/src/lib/elm_atspi_app_object.eo
@@ -1,9 +1,11 @@
 class Elm_Atspi_App_Object (Eo_Base, Elm_Interface_Atspi_Accessible)
 {
-   data: null;
+   data: Elm_Atspi_App_Object_Data;
implements {
+  Eo_Base::destructor;
   Elm_Interface_Atspi_Accessible::name::get;
   Elm_Interface_Atspi_Accessible::description::get;
+  Elm_Interface_Atspi_Accessible::description::set;
   Elm_Interface_Atspi_Accessible::role::get;
   Elm_Interface_Atspi_Accessible::children::get;
}
diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index a488c62..157041a 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -435,6 +435,33 @@ _accessible_get_application(const Eldbus_Service_Interface 
*iface EINA_UNUSED, c
return ret;
 }
 
+static Eldbus_Message *
+_accessible_attributes_get(const Eldbus_Service_Interface *iface, const 
Eldbus_Message *msg)
+{
+   Eina_List *attrs, *l;
+   Elm_Atspi_Attribute *attr;
+   Eldbus_Message_Iter *iter, *iter_array;
+
+   Eldbus_Message *ret = eldbus_message_method_return_new(msg);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(ret, NULL);
+
+   const char *obj_path = eldbus_service_object_path_get(iface);
+   Eo *obj = _access_object_from_path(obj_path);
+
+   eo_do(obj, attrs = elm_interface_atspi_accessible_attributes_get());
+
+   iter = eldbus_message_iter_get(ret);
+   iter_array = eldbus_message_iter_container_ne

[EGIT] [core/elementary] master 01/02: atspi: add AtspiText and AtspiEditableText interface support.

2014-06-10 Thread Lukasz Stanislawski
raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=8993fa265537070ab873c52a6335c463c8f15721

commit 8993fa265537070ab873c52a6335c463c8f15721
Author: Lukasz Stanislawski 
Date:   Tue Jun 10 16:18:10 2014 +0900

atspi: add AtspiText and AtspiEditableText interface support.

Added reference interface implementation for elm_entry widget. Tests
added. Updated at-spi-constants.h header to version 2.12.0.

@feature
---
 src/lib/elm_atspi_app_object.c   |  2 +
 src/lib/elm_atspi_bridge.c   | 74 +---
 src/lib/elm_interface_atspi_accessible.h | 43 ++-
 3 files changed, 93 insertions(+), 26 deletions(-)

diff --git a/src/lib/elm_atspi_app_object.c b/src/lib/elm_atspi_app_object.c
index 60a4485..7a01e67 100644
--- a/src/lib/elm_atspi_app_object.c
+++ b/src/lib/elm_atspi_app_object.c
@@ -27,6 +27,8 @@ EOLIAN static void
 _elm_atspi_app_object_eo_base_destructor(Eo *obj EINA_UNUSED, 
Elm_Atspi_App_Object_Data *_pd)
 {
if (_pd->descr) eina_stringshare_del(_pd->descr);
+
+   eo_do_super(obj, ELM_ATSPI_APP_OBJECT_CLASS, eo_destructor());
 }
 
 EOLIAN static Eina_List*
diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index c031c92..5101145 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -62,8 +62,8 @@ static Eina_Bool _children_changed_signal_send(void *data, Eo 
*obj, const Eo_Eve
 static Eina_Bool _window_signal_send(void *data, Eo *obj, const 
Eo_Event_Description *desc, void *event_info);
 static Eina_Bool _selection_signal_send(void *data, Eo *obj, const 
Eo_Event_Description *desc, void *event_info);
 static Eo * _access_object_from_path(const char *path);
-static char * _path_from_access_object(Eo *eo);
-static void _object_append_reference(Eldbus_Message_Iter *iter,  Eo *obj);
+static char * _path_from_access_object(const Eo *eo);
+static void _object_append_reference(Eldbus_Message_Iter *iter, const Eo *obj);
 static void _object_append_desktop_reference(Eldbus_Message_Iter *iter);
 static void _cache_build(void *obj);
 static void _object_register(Eo *obj, char *path);
@@ -350,6 +350,36 @@ const int elm_states_to_atspi_state[][2] = {
{ ELM_ATSPI_STATE_LAST_DEFINED, ATSPI_STATE_LAST_DEFINED },
 };
 
+const int elm_relation_to_atspi_relation_mapping[] = {
+   [ELM_ATSPI_RELATION_NULL] =  ATSPI_RELATION_NULL,
+   [ELM_ATSPI_RELATION_LABEL_FOR] =  ATSPI_RELATION_LABEL_FOR,
+   [ELM_ATSPI_RELATION_LABELLED_BY] = ATSPI_RELATION_LABELLED_BY,
+   [ELM_ATSPI_RELATION_CONTROLLER_FOR] = ATSPI_RELATION_CONTROLLER_FOR,
+   [ELM_ATSPI_RELATION_CONTROLLED_BY] = ATSPI_RELATION_CONTROLLED_BY,
+   [ELM_ATSPI_RELATION_MEMBER_OF] = ATSPI_RELATION_MEMBER_OF,
+   [ELM_ATSPI_RELATION_TOOLTIP_FOR] = ATSPI_RELATION_TOOLTIP_FOR,
+   [ELM_ATSPI_RELATION_NODE_CHILD_OF] = ATSPI_RELATION_NODE_CHILD_OF,
+   [ELM_ATSPI_RELATION_NODE_PARENT_OF] = ATSPI_RELATION_NODE_PARENT_OF,
+   [ELM_ATSPI_RELATION_EXTENDED] = ATSPI_RELATION_EXTENDED,
+   [ELM_ATSPI_RELATION_FLOWS_TO] = ATSPI_RELATION_FLOWS_TO,
+   [ELM_ATSPI_RELATION_FLOWS_FROM] = ATSPI_RELATION_FLOWS_FROM,
+   [ELM_ATSPI_RELATION_SUBWINDOW_OF] = ATSPI_RELATION_SUBWINDOW_OF,
+   [ELM_ATSPI_RELATION_EMBEDS] = ATSPI_RELATION_EMBEDS,
+   [ELM_ATSPI_RELATION_EMBEDDED_BY] = ATSPI_RELATION_EMBEDDED_BY,
+   [ELM_ATSPI_RELATION_POPUP_FOR] = ATSPI_RELATION_POPUP_FOR,
+   [ELM_ATSPI_RELATION_PARENT_WINDOW_OF] = ATSPI_RELATION_PARENT_WINDOW_OF,
+   [ELM_ATSPI_RELATION_DESCRIPTION_FOR] = ATSPI_RELATION_DESCRIPTION_FOR,
+   [ELM_ATSPI_RELATION_DESCRIBED_BY] = ATSPI_RELATION_DESCRIBED_BY,
+   [ELM_ATSPI_RELATION_LAST_DEFINED] = ATSPI_RELATION_LAST_DEFINED,
+};
+
+static AtspiRelationType 
_elm_relation_to_atspi_relation(Elm_Atspi_Relation_Type type)
+{
+   if ((type < ELM_ATSPI_RELATION_LAST_DEFINED) && (type > 
ELM_ATSPI_RELATION_NULL))
+ return elm_relation_to_atspi_relation_mapping[type];
+   return ELM_ATSPI_RELATION_NULL;
+}
+
 static Eldbus_Message *
 _accessible_get_role(const Eldbus_Service_Interface *iface, const 
Eldbus_Message *msg)
 {
@@ -461,7 +491,7 @@ _accessible_attributes_get(const Eldbus_Service_Interface 
*iface, const Eldbus_M
iter_array = eldbus_message_iter_container_new(iter, 'a', "ss");
 
EINA_LIST_FOREACH(attrs, l, attr)
- eldbus_message_iter_arguments_get(iter_array, "ss", attr->key, 
attr->value);
+ eldbus_message_iter_arguments_append(iter_array, "ss", attr->key, 
attr->value);
 
eldbus_message_iter_container_close(iter, iter_array);
elm_atspi_attributes_list_free(attrs);
@@ -573,7 +603,39 @@ _accessible_child_at_index(const Eldbus_Service_Interface 
*iface EINA_UNUSED, co
 static Eldbus_Message *
 _accessible_get_relation_set(const Eldbus_Service_Interface *iface 
EINA_UNUSED, const Eldbus_Message *msg)
 {
-   return eldbus_message_error_new(msg, 
"org.freedesktop.DBus.Error

[EGIT] [core/elementary] master 01/01: atspi: Add GetInterfaces method

2014-06-10 Thread Lukasz Stanislawski
raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=0f2ea86b8941e34a00edb0fd37fd4343a699eb6a

commit 0f2ea86b8941e34a00edb0fd37fd4343a699eb6a
Author: Lukasz Stanislawski 
Date:   Wed Jun 11 13:53:49 2014 +0900

atspi: Add GetInterfaces method

Summary:
Method is required by AT-SPI clients when interface caching is disabled.
Method is not listed in any at-spi specification - found during fixing
clients behaviour.

Reviewers: raster, seoz, z.kosinski

Reviewed By: z.kosinski

Differential Revision: https://phab.enlightenment.org/D971
---
 src/lib/elm_atspi_bridge.c | 67 --
 1 file changed, 47 insertions(+), 20 deletions(-)

diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index 6ebdcf1..427645f 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -78,6 +78,7 @@ static void _iter_object_reference_append(Eldbus_Message_Iter 
*iter, const Eo *o
 static void _object_append_desktop_reference(Eldbus_Message_Iter *iter);
 static void _cache_build(void *obj);
 static void _object_register(Eo *obj, char *path);
+static void _iter_interfaces_append(Eldbus_Message_Iter *iter, const Eo *obj);
 
 EO_CALLBACKS_ARRAY_DEFINE(_events_cb,
{ ELM_INTERFACE_ATSPI_ACCESSIBLE_EVENT_PROPERTY_CHANGED, 
_property_changed_signal_send},
@@ -524,6 +525,23 @@ _accessible_attributes_get(const Eldbus_Service_Interface 
*iface, const Eldbus_M
return ret;
 }
 
+static Eldbus_Message *
+_accessible_interfaces_get(const Eldbus_Service_Interface *iface, const 
Eldbus_Message *msg)
+{
+   Eldbus_Message *ret;
+   Eldbus_Message_Iter *iter;
+   const char *obj_path = eldbus_service_object_path_get(iface);
+   Eo *obj = _access_object_from_path(obj_path);
+
+   ret = eldbus_message_method_return_new(msg);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(ret, NULL);
+
+   iter = eldbus_message_iter_get(ret);
+   _iter_interfaces_append(iter, obj);
+
+   return ret;
+}
+
 static uint64_t 
 _elm_atspi_state_set_to_atspi_state_set(Elm_Atspi_State_Set states)
 {
@@ -674,6 +692,7 @@ static const Eldbus_Method accessible_methods[] = {
{ "GetState", NULL, ELDBUS_ARGS({"au", NULL}), _accessible_get_state, 0},
{ "GetApplication", NULL, ELDBUS_ARGS({"(so)", NULL}), 
_accessible_get_application, 0},
{ "GetAttributes", NULL, ELDBUS_ARGS({"a{ss}", NULL}), 
_accessible_attributes_get, 0},
+   { "GetInterfaces", NULL, ELDBUS_ARGS({"as", NULL}), 
_accessible_interfaces_get, 0},
{ NULL, NULL, NULL, NULL, 0 }
 };
 
@@ -2048,6 +2067,33 @@ _object_append_desktop_reference(Eldbus_Message_Iter 
*iter)
   eldbus_message_iter_container_close(iter, iter_struct);
 }
 
+static void
+_iter_interfaces_append(Eldbus_Message_Iter *iter, const Eo *obj)
+{
+  Eldbus_Message_Iter *iter_array;
+  iter_array = eldbus_message_iter_container_new(iter, 'a', "s");
+  if (!iter_array) return;
+
+  if (eo_isa(obj, ELM_INTERFACE_ATSPI_ACCESSIBLE_CLASS))
+eldbus_message_iter_basic_append(iter_array, 's', 
ATSPI_DBUS_INTERFACE_ACCESSIBLE);
+  if (eo_isa(obj, ELM_INTERFACE_ATSPI_COMPONENT_CLASS))
+eldbus_message_iter_basic_append(iter_array, 's', 
ATSPI_DBUS_INTERFACE_COMPONENT);
+  if (eo_isa(obj, ELM_INTERFACE_ATSPI_ACTION_CLASS))
+eldbus_message_iter_basic_append(iter_array, 's', 
ATSPI_DBUS_INTERFACE_ACTION);
+  if (eo_isa(obj, ELM_INTERFACE_ATSPI_VALUE_CLASS))
+eldbus_message_iter_basic_append(iter_array, 's', 
ATSPI_DBUS_INTERFACE_VALUE);
+  if (eo_isa(obj, ELM_INTERFACE_ATSPI_IMAGE_CLASS))
+eldbus_message_iter_basic_append(iter_array, 's', 
ATSPI_DBUS_INTERFACE_IMAGE);
+  if (eo_isa(obj, ELM_INTERFACE_ATSPI_TEXT_CLASS))
+eldbus_message_iter_basic_append(iter_array, 's', 
ATSPI_DBUS_INTERFACE_TEXT);
+  if (eo_isa(obj, ELM_INTERFACE_ATSPI_EDITABLE_TEXT_CLASS))
+eldbus_message_iter_basic_append(iter_array, 's', 
ATSPI_DBUS_INTERFACE_EDITABLE_TEXT);
+  if (eo_isa(obj, ELM_INTERFACE_ATSPI_SELECTION_CLASS))
+eldbus_message_iter_basic_append(iter_array, 's', 
ATSPI_DBUS_INTERFACE_SELECTION);
+
+  eldbus_message_iter_container_close(iter, iter_array);
+}
+
 static Eina_Bool
 _append_item_fn(const Eina_Hash *hash EINA_UNUSED, const void *key 
EINA_UNUSED, void *data, void *fdata)
 {
@@ -2093,26 +2139,7 @@ _append_item_fn(const Eina_Hash *hash EINA_UNUSED, const 
void *key EINA_UNUSED,
   eina_list_free(children_list);
 
   /* Marshall interfaces */
-  iter_sub_array = eldbus_message_iter_container_new(iter_struct, 'a', "s");
-  EINA_SAFETY_ON_NULL_GOTO(iter_sub_array, fail);
-
-  eldbus_message_iter_basic_append(iter_sub_array, 's', 
ATSPI_DBUS_INTERFACE_ACCESSIBLE);
-  if (eo_isa(data, ELM_INTERFACE_ATSPI_COMPONENT_CLASS))
-eldbus_message_iter_basic_append(ite

[EGIT] [core/elementary] master 02/02: atspi: add SENSITIVE to default widget state set.

2014-06-10 Thread Lukasz Stanislawski
raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=293506e8c0ae03b0c4ccb1bfc47ea210dd5b4db2

commit 293506e8c0ae03b0c4ccb1bfc47ea210dd5b4db2
Author: Lukasz Stanislawski 
Date:   Wed Jun 11 15:28:45 2014 +0900

atspi: add SENSITIVE to default widget state set.

Summary:
without given state Orca screen reader deafult script interpret
widget as 'grayed out'.

Test Plan: orca screen reader tests on ubuntu 13.10 with orca 3.10.1

Reviewers: raster, seoz, z.kosinski

Differential Revision: https://phab.enlightenment.org/D983
---
 src/lib/elm_interface_atspi_widget.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/lib/elm_interface_atspi_widget.c 
b/src/lib/elm_interface_atspi_widget.c
index 1679b26..63276e1 100644
--- a/src/lib/elm_interface_atspi_widget.c
+++ b/src/lib/elm_interface_atspi_widget.c
@@ -150,6 +150,7 @@ 
_elm_interface_atspi_widget_elm_interface_atspi_accessible_state_set_get(Eo *obj
  {
 STATE_TYPE_SET(states, ELM_ATSPI_STATE_ENABLED);
 STATE_TYPE_SET(states, ELM_ATSPI_STATE_ACTIVE);
+STATE_TYPE_SET(states, ELM_ATSPI_STATE_SENSITIVE);
  }
 
return states;

-- 




[EGIT] [core/elementary] master 01/01: atspi: typo fix, avoid returning w/o va_end call

2014-06-11 Thread Lukasz Stanislawski
raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=ff86435a523e6971cb933727dcf2f5fa3dd0bd87

commit ff86435a523e6971cb933727dcf2f5fa3dd0bd87
Author: Lukasz Stanislawski 
Date:   Wed Jun 11 16:05:54 2014 +0900

atspi: typo fix, avoid returning w/o va_end call

Summary:
CID: 1222462
CID: 1222461
CID: 1222465

Reviewers: raster, seoz, z.kosinski

Differential Revision: https://phab.enlightenment.org/D995
---
 src/lib/elm_atspi_bridge.c | 4 ++--
 src/lib/elm_entry.c| 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index 427645f..c1f1ad5 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -2979,7 +2979,6 @@ static void _object_signal_send(Eldbus_Service_Interface 
*infc, int sig_id, cons
Eldbus_Message *msg;
Eldbus_Message_Iter *iter , *viter;
va_list va;
-   va_start(va, variant_sig);
 
EINA_SAFETY_ON_NULL_RETURN(infc);
EINA_SAFETY_ON_NULL_RETURN(minor);
@@ -2987,8 +2986,9 @@ static void _object_signal_send(Eldbus_Service_Interface 
*infc, int sig_id, cons
msg = eldbus_service_signal_new(infc, sig_id);
EINA_SAFETY_ON_NULL_RETURN(msg);
 
-   iter = eldbus_message_iter_get(msg);
+   va_start(va, variant_sig);
 
+   iter = eldbus_message_iter_get(msg);
eldbus_message_iter_arguments_append(iter, "sii", minor, det1, det2);
 
if (variant_sig)
diff --git a/src/lib/elm_entry.c b/src/lib/elm_entry.c
index 9f9fd99..858ed7c 100644
--- a/src/lib/elm_entry.c
+++ b/src/lib/elm_entry.c
@@ -5034,7 +5034,7 @@ _elm_entry_elm_interface_atspi_text_string_get(Eo *obj, 
Elm_Entry_Data *_pd EINA
 
cur = evas_object_textblock_cursor_new(tblk);
cur2 = evas_object_textblock_cursor_new(tblk);
-   if (!cur2 || !cur2) goto fail;
+   if (!cur || !cur2) goto fail;
 
evas_textblock_cursor_pos_set(cur, *start_offset);
if (evas_textblock_cursor_pos_get(cur) != *start_offset) goto fail;
@@ -5112,7 +5112,7 @@ _elm_entry_elm_interface_atspi_text_text_get(Eo *obj, 
Elm_Entry_Data *_pd EINA_U
 
cur = evas_object_textblock_cursor_new(tblk);
cur2 = evas_object_textblock_cursor_new(tblk);
-   if (!cur2 || !cur2) goto fail;
+   if (!cur || !cur2) goto fail;
 
evas_textblock_cursor_pos_set(cur, start_offset);
if (evas_textblock_cursor_pos_get(cur) != start_offset) goto fail;

-- 




[EGIT] [core/elementary] master 02/02: atspi: notify registry daemon about keyboard events.

2014-06-15 Thread Lukasz Stanislawski
raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=824a9d52c636b7f4887de5eea3065f6903282288

commit 824a9d52c636b7f4887de5eea3065f6903282288
Author: Lukasz Stanislawski 
Date:   Mon Jun 16 15:16:39 2014 +0900

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
---
 src/lib/elm_atspi_bridge.c | 44 
 src/lib/elm_priv.h |  1 +
 src/lib/elm_widget.c   |  3 +++
 3 files changed, 48 insertions(+)

diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index 83f7415..3ddacf3 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -3305,3 +3305,47 @@ _elm_atspi_bridge_shutdown(void)
 _root = NULL;
  }
 }
+
+static void
+_iter_marshall_key_event(Eldbus_Message_Iter *iter, Evas_Callback_Type type, 
void *event)
+{
+   Eldbus_Message_Iter *struct_iter;
+
+   EINA_SAFETY_ON_NULL_RETURN(event);
+
+   struct_iter = eldbus_message_iter_container_new(iter, 'r', NULL);
+
+   if (type == EVAS_CALLBACK_KEY_DOWN)
+ {
+Evas_Event_Key_Down *kde = event;
+const char *str = kde->string ? kde->string : "";
+int is_text = kde->string ? 1 : 0;
+eldbus_message_iter_arguments_append(struct_iter, "usb", 
ATSPI_KEY_PRESSED_EVENT, 0, kde->keycode, 0, kde->timestamp, str, is_text);
+ }
+   else if (type == EVAS_CALLBACK_KEY_UP)
+ {
+Evas_Event_Key_Up *kue = event;
+const char *str = kue->string ? kue->string : "";
+int is_text = kue->string ? 1 : 0;
+eldbus_message_iter_arguments_append(struct_iter, "usb", 
ATSPI_KEY_RELEASED_EVENT, 0, kue->keycode, 0, kue->timestamp, str, is_text);
+ }
+
+   eldbus_message_iter_container_close(iter, struct_iter);
+}
+
+EAPI void
+_elm_atspi_bridge_key_event_notify(Evas_Callback_Type type, void *event)
+{
+   Eldbus_Message *msg;
+   Eldbus_Message_Iter *iter;
+
+   if (!_init_count) return;
+   if ((type != EVAS_CALLBACK_KEY_DOWN) && (type != EVAS_CALLBACK_KEY_UP)) 
return;
+
+   msg = eldbus_message_method_call_new(ATSPI_DBUS_NAME_REGISTRY, 
ATSPI_DBUS_PATH_DEC,
+ATSPI_DBUS_INTERFACE_DEC, 
"NotifyListenersSync");
+   iter = eldbus_message_iter_get(msg);
+   _iter_marshall_key_event(iter, type, event);
+
+   eldbus_connection_send(_a11y_bus, msg, NULL, NULL, -1);
+}
diff --git a/src/lib/elm_priv.h b/src/lib/elm_priv.h
index c9994df..d76843d 100644
--- a/src/lib/elm_priv.h
+++ b/src/lib/elm_priv.h
@@ -348,6 +348,7 @@ Eo   *_elm_atspi_root_get(void);
 
 void _elm_atspi_bridge_init(void);
 void _elm_atspi_bridge_shutdown(void);
+void _elm_atspi_bridge_key_event_notify(Evas_Callback_Type 
type, void *event);
 
 void _elm_prefs_init(void);
 void _elm_prefs_shutdown(void);
diff --git a/src/lib/elm_widget.c b/src/lib/elm_widget.c
index 0263c25..6d24f0a 100644
--- a/src/lib/elm_widget.c
+++ b/src/lib/elm_widget.c
@@ -615,6 +615,9 @@ _propagate_event(void *data,
   default:
  break;
  }
+   if (_elm_config->atspi_mode)
+ _elm_atspi_bridge_key_event_notify(type, event_info);
+
 
elm_widget_event_propagate(obj, type, event_info, event_flags);
 }

-- 




[EGIT] [core/elementary] master 01/01: atspi: simplify key event handling

2014-07-01 Thread Lukasz Stanislawski
stanluk pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=389f300d88c292dc8c5e0c5863a32f92c3aa8e9e

commit 389f300d88c292dc8c5e0c5863a32f92c3aa8e9e
Author: Lukasz Stanislawski 
Date:   Wed Jun 25 10:54:02 2014 +0200

atspi: simplify key event handling

Keyboard events are now directly handled by atspi_bridge instead of
elm_widget.
---
 src/lib/elm_atspi_bridge.c | 39 +++
 src/lib/elm_priv.h |  1 -
 src/lib/elm_widget.c   |  3 ---
 3 files changed, 19 insertions(+), 24 deletions(-)

diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index 4aca86a..bdfea92 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -62,6 +62,7 @@ static unsigned long _object_property_broadcast_mask;
 static unsigned long _object_children_broadcast_mask;
 static unsigned long long _object_state_broadcast_mask;
 static unsigned long long _window_signal_broadcast_mask;
+static Ecore_Event_Handler *_key_hdl;
 
 static Eina_Bool _state_changed_signal_send(void *data, Eo *obj, const 
Eo_Event_Description *desc, void *event_info);
 static Eina_Bool _property_changed_signal_send(void *data, Eo *obj, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info);
@@ -79,6 +80,7 @@ static void 
_object_append_desktop_reference(Eldbus_Message_Iter *iter);
 static void _cache_build(void *obj);
 static void _object_register(Eo *obj, char *path);
 static void _iter_interfaces_append(Eldbus_Message_Iter *iter, const Eo *obj);
+static Eina_Bool _elm_atspi_bridge_key_down_event_notify(void *data, int type, 
void *event);
 
 EO_CALLBACKS_ARRAY_DEFINE(_events_cb,
{ ELM_INTERFACE_ATSPI_ACCESSIBLE_EVENT_PROPERTY_CHANGED, 
_property_changed_signal_send},
@@ -3102,6 +3104,8 @@ _event_handlers_register(void)
// register signal handlers in order to update list of registered listeners 
of ATSPI-Clients
_register_hdl = eldbus_signal_handler_add(_a11y_bus, 
ATSPI_DBUS_NAME_REGISTRY, ATSPI_DBUS_PATH_REGISTRY, 
ATSPI_DBUS_INTERFACE_REGISTRY, "EventListenerRegistered", 
_handle_listener_change, NULL);
_unregister_hdl = eldbus_signal_handler_add(_a11y_bus, 
ATSPI_DBUS_NAME_REGISTRY, ATSPI_DBUS_PATH_REGISTRY, 
ATSPI_DBUS_INTERFACE_REGISTRY, "EventListenerDeregistered", 
_handle_listener_change, NULL);
+
+   _key_hdl = ecore_event_handler_add(ECORE_EVENT_KEY_DOWN, 
_elm_atspi_bridge_key_down_event_notify, NULL);
 }
 
 static Eina_Bool
@@ -3301,13 +3305,17 @@ _elm_atspi_bridge_shutdown(void)
   eldbus_connection_unref(_a11y_bus);
 _a11y_bus = NULL;
 
+if (_key_hdl)
+  ecore_event_handler_del(_key_hdl);
+_key_hdl = NULL;
+
 _init_count = 0;
 _root = NULL;
  }
 }
 
 static void
-_iter_marshall_key_event(Eldbus_Message_Iter *iter, Evas_Callback_Type type, 
void *event)
+_iter_marshall_key_down_event(Eldbus_Message_Iter *iter, Ecore_Event_Key 
*event)
 {
Eldbus_Message_Iter *struct_iter;
 
@@ -3315,37 +3323,28 @@ _iter_marshall_key_event(Eldbus_Message_Iter *iter, 
Evas_Callback_Type type, voi
 
struct_iter = eldbus_message_iter_container_new(iter, 'r', NULL);
 
-   if (type == EVAS_CALLBACK_KEY_DOWN)
- {
-Evas_Event_Key_Down *kde = event;
-const char *str = kde->string ? kde->string : "";
-int is_text = kde->string ? 1 : 0;
-eldbus_message_iter_arguments_append(struct_iter, "usb", 
ATSPI_KEY_PRESSED_EVENT, 0, kde->keycode, 0, kde->timestamp, str, is_text);
- }
-   else if (type == EVAS_CALLBACK_KEY_UP)
- {
-Evas_Event_Key_Up *kue = event;
-const char *str = kue->string ? kue->string : "";
-int is_text = kue->string ? 1 : 0;
-eldbus_message_iter_arguments_append(struct_iter, "usb", 
ATSPI_KEY_RELEASED_EVENT, 0, kue->keycode, 0, kue->timestamp, str, is_text);
- }
+   const char *str = event->keyname ? event->keyname : "";
+   int is_text = event->keyname? 1 : 0;
+   eldbus_message_iter_arguments_append(struct_iter, "usb", 
ATSPI_KEY_PRESSED_EVENT, 0, event->keycode, 0, event->timestamp, str, is_text);
 
eldbus_message_iter_container_close(iter, struct_iter);
 }
 
-EAPI void
-_elm_atspi_bridge_key_event_notify(Evas_Callback_Type type, void *event)
+static Eina_Bool
+_elm_atspi_bridge_key_down_event_notify(void *data EINA_UNUSED, int type 
EINA_UNUSED, void *event)
 {
Eldbus_Message *msg;
Eldbus_Message_Iter *iter;
+   Ecore_Event_Key *key_event = event;
 
-   if (!_init_count) return;
-   if ((type != EVAS_CALLBACK_KEY_DOWN) && (type != EVAS_CALLBACK_KEY_UP)) 
return;
+   if (!_init_count) return EINA_TRUE;
 
msg = eldbus_message_method_call_new(ATSPI_DBUS_NAME_REGISTRY, 
ATSPI_DBUS_PATH_DEC,
 ATSPI_DBUS_INTERFACE_DEC, 
"NotifyListener

[EGIT] [core/elementary] master 01/01: atspi: unify atspi initialization

2014-07-02 Thread Lukasz Stanislawski
stanluk pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=99a32ea4bc83e1bcd4d19bd47ab6434ac142e76a

commit 99a32ea4bc83e1bcd4d19bd47ab6434ac142e76a
Author: Lukasz Stanislawski 
Date:   Wed Jun 25 11:56:36 2014 +0200

atspi: unify atspi initialization

commit removes internal elm_atspi_init function and moves atspi_app_object
creation to atspi_bridge.
---
 src/lib/elm_atspi_app_object.c | 29 -
 src/lib/elm_atspi_bridge.c | 18 --
 src/lib/elm_main.c |  3 ++-
 src/lib/elm_priv.h |  5 +
 src/lib/elm_win.c  |  4 ++--
 5 files changed, 17 insertions(+), 42 deletions(-)

diff --git a/src/lib/elm_atspi_app_object.c b/src/lib/elm_atspi_app_object.c
index 8e8576a..6313250 100644
--- a/src/lib/elm_atspi_app_object.c
+++ b/src/lib/elm_atspi_app_object.c
@@ -13,8 +13,6 @@
 #include "elm_atspi_app_object.eo.h"
 
 extern Eina_List *_elm_win_list;
-static Eo *_atspi_root;
-static int _init;
 
 typedef struct _Elm_Atspi_App_Object_Data Elm_Atspi_App_Object_Data;
 
@@ -71,31 +69,4 @@ 
_elm_atspi_app_object_elm_interface_atspi_accessible_role_get(Eo *obj EINA_UNUSE
return ELM_ATSPI_ROLE_APPLICATION;
 }
 
-EAPI void
-_elm_atspi_init(void)
-{
-   if (!_init)
- {
-_atspi_root = eo_add(ELM_ATSPI_APP_OBJECT_CLASS, NULL);
-_init = 1;
- }
-}
-
-EAPI void
-_elm_atspi_shutdown(void)
-{
-   if (_init)
- {
-eo_unref(_atspi_root);
-_atspi_root = NULL;
-_init = 0;
- }
-}
-
-EAPI Eo*
-_elm_atspi_root_get(void)
-{
-   return _atspi_root;
-}
-
 #include "elm_atspi_app_object.eo.c"
diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index bdfea92..16be166 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -18,6 +18,8 @@
 #include "elm_priv.h"
 #include 
 
+#include "elm_atspi_app_object.eo.h"
+
 #include "elm_interface_atspi_accessible.h"
 #include "elm_interface_atspi_accessible.eo.h"
 #include "elm_interface_atspi_component.eo.h"
@@ -3257,14 +3259,12 @@ _elm_atspi_bridge_init(void)
Eldbus_Message *msg;
Eldbus_Connection *session_bus;
 
-   if (!_init_count && (_elm_config->atspi_mode != ELM_ATSPI_MODE_OFF))
+   if (!_init_count)
  {
-_elm_atspi_init();
-
-_root = _elm_atspi_root_get();
+_root = eo_add(ELM_ATSPI_APP_OBJECT_CLASS, NULL);
 if (!_root)
   {
- ERR("Unable to get root object");
+ ERR("Unable to create root object");
  return;
   }
 
@@ -3282,12 +3282,18 @@ _elm_atspi_bridge_init(void)
  }
 }
 
+EAPI Eo*
+_elm_atspi_bridge_root_get(void)
+{
+   return _root;
+}
+
 void
 _elm_atspi_bridge_shutdown(void)
 {
if (_init_count)
  {
-_elm_atspi_shutdown();
+eo_unref(_root);
 
 if (_cache_update_idler)
   ecore_idler_del(_cache_update_idler);
diff --git a/src/lib/elm_main.c b/src/lib/elm_main.c
index 9ca9a03..feda887 100644
--- a/src/lib/elm_main.c
+++ b/src/lib/elm_main.c
@@ -310,7 +310,8 @@ elm_init(intargc,
system_handlers[0] = ecore_event_handler_add(ECORE_EVENT_MEMORY_STATE, 
_sys_memory_changed, NULL);
system_handlers[1] = ecore_event_handler_add(ECORE_EVENT_LOCALE_CHANGED, 
_sys_lang_changed, NULL);
 
-   _elm_atspi_bridge_init();
+   if (_elm_config->atspi_mode != ELM_ATSPI_MODE_OFF)
+ _elm_atspi_bridge_init();
 
return _elm_init_count;
 }
diff --git a/src/lib/elm_priv.h b/src/lib/elm_priv.h
index c9994df..e84bad5 100644
--- a/src/lib/elm_priv.h
+++ b/src/lib/elm_priv.h
@@ -342,10 +342,7 @@ struct _Elm_Datetime_Module_Data
 Elm_Datetime_Field_Type field_type);
 };
 
-void _elm_atspi_init(void);
-void _elm_atspi_shutdown(void);
-Eo   *_elm_atspi_root_get(void);
-
+Eo   *_elm_atspi_bridge_root_get(void);
 void _elm_atspi_bridge_init(void);
 void _elm_atspi_bridge_shutdown(void);
 
diff --git a/src/lib/elm_win.c b/src/lib/elm_win.c
index 7e3be34..11ca2d3 100644
--- a/src/lib/elm_win.c
+++ b/src/lib/elm_win.c
@@ -3335,7 +3335,7 @@ _elm_win_constructor(Eo *obj, Elm_Win_Data *sd, const 
char *name, Elm_Win_Type t
if (_elm_config->atspi_mode == ELM_ATSPI_MODE_ON)
  {
 eo_do(obj, 
elm_interface_atspi_accessible_role_set(ELM_ATSPI_ROLE_WINDOW));
-
elm_interface_atspi_accessible_children_changed_added_signal_emit(_elm_atspi_root_get(),
 obj);
+
elm_interface_atspi_accessible_children_changed_added_signal_emit(_elm_atspi_bridge_root_get(),
 obj);
 eo_do(obj, 
eo_event_callback_call(ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_CREATED, NULL));
  }
 
@@ -4819,7 +4819,7 @@ EOLIAN static Eo*
 _elm_win_elm_interface_atspi_accessible_parent_get(Eo *obj EINA_UNUSED, 
El

[EGIT] [core/elementary] master 01/01: atspi: improve code reusage

2014-07-10 Thread Lukasz Stanislawski
stanluk pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=d86ed905a5fe10b2525ee4012c8740fcb3577ef7

commit d86ed905a5fe10b2525ee4012c8740fcb3577ef7
Author: Lukasz Stanislawski 
Date:   Thu Jun 26 13:03:33 2014 +0200

atspi: improve code reusage

atspi d-bus signals have similar signatures, however use dbus variant type
to encode signal specific data. This patch adds utility function to 
construct
atspi dbus signal with custom variant data.
---
 src/lib/elm_atspi_bridge.c | 136 +++--
 1 file changed, 44 insertions(+), 92 deletions(-)

diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index 16be166..b26d54f 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -83,6 +83,7 @@ static void _cache_build(void *obj);
 static void _object_register(Eo *obj, char *path);
 static void _iter_interfaces_append(Eldbus_Message_Iter *iter, const Eo *obj);
 static Eina_Bool _elm_atspi_bridge_key_down_event_notify(void *data, int type, 
void *event);
+static void _object_signal_send(Eldbus_Service_Interface *infc, int sig_id, 
const char *minor, unsigned int det1, unsigned int det2, const char 
*variant_sig, ...);
 
 EO_CALLBACKS_ARRAY_DEFINE(_events_cb,
{ ELM_INTERFACE_ATSPI_ACCESSIBLE_EVENT_PROPERTY_CHANGED, 
_property_changed_signal_send},
@@ -546,7 +547,7 @@ _accessible_interfaces_get(const Eldbus_Service_Interface 
*iface, const Eldbus_M
return ret;
 }
 
-static uint64_t 
+static uint64_t
 _elm_atspi_state_set_to_atspi_state_set(Elm_Atspi_State_Set states)
 {
uint64_t ret = 0;
@@ -2674,8 +2675,6 @@ _handle_listener_change(void *data EINA_UNUSED, const 
Eldbus_Message *msg)
 static Eina_Bool
 _state_changed_signal_send(void *data, Eo *obj EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info)
 {
-   Eldbus_Message *msg;
-   Eldbus_Message_Iter *iter, *viter;
Eldbus_Service_Interface *events = data;
Elm_Atspi_Event_State_Changed_Data *state_data = event_info;
char *type_desc;
@@ -2712,30 +2711,16 @@ _state_changed_signal_send(void *data, Eo *obj 
EINA_UNUSED, const Eo_Event_Descr
  return EINA_FALSE;
}
 
-   msg = eldbus_service_signal_new(events, ATSPI_OBJECT_EVENT_STATE_CHANGED);
-   iter = eldbus_message_iter_get(msg);
-
-   eldbus_message_iter_arguments_append(iter, "sii", type_desc, 
state_data->new_value, 0);
+   _object_signal_send(events, ATSPI_OBJECT_EVENT_STATE_CHANGED, type_desc, 
state_data->new_value, 0, NULL);
 
-   viter = eldbus_message_iter_container_new(iter, 'v', "i");
-   EINA_SAFETY_ON_NULL_RETURN_VAL(viter, EINA_FALSE);
-
-   eldbus_message_iter_arguments_append(viter, "i", 0);
-   eldbus_message_iter_container_close(iter, viter);
-
-   _iter_object_reference_append(iter, _root);
-
-   eldbus_service_signal_send(events, msg);
DBG("signal sent StateChanged:%s:%d", type_desc, state_data->new_value);
 
return EINA_TRUE;
 }
 
 static Eina_Bool
-_property_changed_signal_send(void *data, Eo *obj, const Eo_Event_Description 
*desc EINA_UNUSED, void *event_info)
+_property_changed_signal_send(void *data, Eo *obj EINA_UNUSED, const 
Eo_Event_Description *desc EINA_UNUSED, void *event_info)
 {
-   Eldbus_Message *msg;
-   Eldbus_Message_Iter *iter, *siter, *viter;
Eldbus_Service_Interface *events = data;
const char *property = event_info;
char *path, *atspi_desc;
@@ -2779,27 +2764,11 @@ _property_changed_signal_send(void *data, Eo *obj, 
const Eo_Event_Description *d
 return EINA_FALSE;
  }
 
-   msg = eldbus_service_signal_new(events, 
ATSPI_OBJECT_EVENT_PROPERTY_CHANGED);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(msg, EINA_FALSE);
-
-   iter = eldbus_message_iter_get(msg);
-   siter = eldbus_message_iter_container_new(iter, 'r', NULL);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(siter, EINA_FALSE);
-
-   eldbus_message_iter_arguments_append(siter, "suu", atspi_desc, 0, 0);
-
-   viter = eldbus_message_iter_container_new(siter, 'v', "s");
-   EINA_SAFETY_ON_NULL_RETURN_VAL(viter, EINA_FALSE);
-
path = _path_from_access_object(obj);
-   eldbus_message_iter_arguments_append(viter, "s", path);
-   free(path);
 
-   eldbus_message_iter_arguments_append(siter, "v", viter);
-   eldbus_message_iter_container_close(siter, viter);
+   _object_signal_send(events, ATSPI_OBJECT_EVENT_PROPERTY_CHANGED, 
atspi_desc, 0, 0, "s", path);
+   free(path);
 
-   eldbus_message_iter_container_close(iter, siter);
-   eldbus_service_signal_send(events, msg);
DBG("signal sent PropertyChanged:%s", property);
 
return EINA_TRUE;
@@ -2820,8 +2789,6 @@ static Eina_Bool
 _children_changed_signal_send(void *data, Eo *obj, const Eo_Event_Description 
*desc EINA_UNUSED, void *event_info)
 {
Eldbus_Service_Interface *events = data;
-   Eldbus_Message_Iter *iter, *vite

[EGIT] [core/elementary] master 01/01: atspi: expose elm_check "activate" action through d-bus

2014-07-10 Thread Lukasz Stanislawski
stanluk pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=6ecd38380d74682a25525d88c33f578479276e60

commit 6ecd38380d74682a25525d88c33f578479276e60
Author: Lukasz Stanislawski 
Date:   Thu Jul 10 13:11:28 2014 +0200

atspi: expose elm_check "activate" action through d-bus
---
 src/lib/elm_check.c  | 9 +
 src/lib/elm_check.eo | 3 ++-
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/lib/elm_check.c b/src/lib/elm_check.c
index f26ef4a..f649410 100644
--- a/src/lib/elm_check.c
+++ b/src/lib/elm_check.c
@@ -12,6 +12,9 @@
 #include "elm_interface_atspi_accessible.h"
 #include "elm_interface_atspi_accessible.eo.h"
 
+#define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
+#include "elm_interface_atspi_widget_action.eo.h"
+
 #define MY_CLASS ELM_CHECK_CLASS
 
 #define MY_CLASS_NAME "Elm_Check"
@@ -434,6 +437,12 @@ _elm_check_elm_widget_focus_direction_manager_is(Eo *obj 
EINA_UNUSED, Elm_Check_
return EINA_FALSE;
 }
 
+EOLIAN const Elm_Action *
+_elm_check_elm_interface_atspi_widget_action_elm_actions_get(Eo *obj 
EINA_UNUSED, Elm_Check_Data *pd EINA_UNUSED)
+{
+   return &key_actions[0];
+}
+
 static void
 _elm_check_class_constructor(Eo_Class *klass)
 {
diff --git a/src/lib/elm_check.eo b/src/lib/elm_check.eo
index 502655d..38ad73c 100644
--- a/src/lib/elm_check.eo
+++ b/src/lib/elm_check.eo
@@ -1,4 +1,4 @@
-class Elm_Check (Elm_Layout)
+class Elm_Check (Elm_Layout, Elm_Interface_Atspi_Widget_Action)
 {
eo_prefix: elm_obj_check;
properties {
@@ -59,6 +59,7 @@ class Elm_Check (Elm_Layout)
   Elm_Layout.content_aliases.get;
   Elm_Layout.sizing_eval;
   Elm_Interface_Atspi_Accessible.state_set.get;
+  Elm_Interface_Atspi_Widget_Action.elm_actions.get;
}
events {
   changed;

-- 




[EGIT] [core/elementary] master 01/02: atspi: expose elm_image "activate" action through d-bus

2014-07-15 Thread Lukasz Stanislawski
stanluk pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=87ba0163234a5c8ce8ffd8dc08269c932d7d4765

commit 87ba0163234a5c8ce8ffd8dc08269c932d7d4765
Author: Lukasz Stanislawski 
Date:   Fri Jul 11 10:28:29 2014 +0200

atspi: expose elm_image "activate" action through d-bus
---
 src/lib/elm_image.c  | 9 +
 src/lib/elm_image.eo | 4 +++-
 2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/src/lib/elm_image.c b/src/lib/elm_image.c
index b435243..73ca0a6 100644
--- a/src/lib/elm_image.c
+++ b/src/lib/elm_image.c
@@ -14,6 +14,9 @@
 #include "elm_interface_atspi_accessible.h"
 #include "elm_interface_atspi_accessible.eo.h"
 
+#define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
+#include "elm_interface_atspi_widget_action.eo.h"
+
 #define FMT_SIZE_T "%zu"
 
 #define MY_CLASS ELM_IMAGE_CLASS
@@ -1342,6 +1345,12 @@ _elm_image_elm_interface_atspi_image_extents_get(Eo 
*obj, Elm_Image_Data *sd EIN
elm_image_object_size_get(obj, w, h);
 }
 
+EOLIAN const Elm_Action *
+_elm_image_elm_interface_atspi_widget_action_elm_actions_get(Eo *obj 
EINA_UNUSED, Elm_Image_Data *pd EINA_UNUSED)
+{
+   return &key_actions[0];
+}
+
 
 // A11Y - END
 
diff --git a/src/lib/elm_image.eo b/src/lib/elm_image.eo
index b26b2d5..b0e89ff 100644
--- a/src/lib/elm_image.eo
+++ b/src/lib/elm_image.eo
@@ -1,4 +1,5 @@
-class Elm_Image (Elm_Widget, Evas.Clickable_Interface, 
Elm_Interface_Atspi_Image)
+class Elm_Image (Elm_Widget, Evas.Clickable_Interface,
+ Elm_Interface_Atspi_Image, Elm_Interface_Atspi_Widget_Action)
 {
eo_prefix: elm_obj_image;
properties {
@@ -548,6 +549,7 @@ class Elm_Image (Elm_Widget, Evas.Clickable_Interface, 
Elm_Interface_Atspi_Image
   Elm_Widget.theme_apply;
   Elm_Widget.event;
   Elm_Interface_Atspi_Image.extents.get;
+  Elm_Interface_Atspi_Widget_Action.elm_actions.get;
}
events {
   drop;

-- 




[EGIT] [core/elementary] master 02/02: atspi: expose elc_naviframe "top_item_get" action through d-bus

2014-07-15 Thread Lukasz Stanislawski
stanluk pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=95fa6f2313155cd1d78c8618282df9cf652000aa

commit 95fa6f2313155cd1d78c8618282df9cf652000aa
Author: Lukasz Stanislawski 
Date:   Fri Jul 11 11:11:31 2014 +0200

atspi: expose elc_naviframe "top_item_get" action through d-bus
---
 src/lib/elc_naviframe.c  | 9 +
 src/lib/elc_naviframe.eo | 3 ++-
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/lib/elc_naviframe.c b/src/lib/elc_naviframe.c
index 4eae8b0..cefcfd4 100644
--- a/src/lib/elc_naviframe.c
+++ b/src/lib/elc_naviframe.c
@@ -11,6 +11,9 @@
 #include "elm_interface_atspi_accessible.h"
 #include "elm_interface_atspi_accessible.eo.h"
 
+#define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
+#include "elm_interface_atspi_widget_action.eo.h"
+
 #define MY_CLASS ELM_NAVIFRAME_CLASS
 
 #define MY_CLASS_NAME "Elm_Naviframe"
@@ -1885,4 +1888,10 @@ _elm_naviframe_class_constructor(Eo_Class *klass)
evas_smart_legacy_type_register(MY_CLASS_NAME_LEGACY, klass);
 }
 
+EOLIAN const Elm_Action *
+_elm_naviframe_elm_interface_atspi_widget_action_elm_actions_get(Eo *obj 
EINA_UNUSED, Elm_Naviframe_Data *pd EINA_UNUSED)
+{
+   return &key_actions[0];
+}
+
 #include "elc_naviframe.eo.c"
diff --git a/src/lib/elc_naviframe.eo b/src/lib/elc_naviframe.eo
index fe3daee..e14deb2 100644
--- a/src/lib/elc_naviframe.eo
+++ b/src/lib/elc_naviframe.eo
@@ -1,4 +1,4 @@
-class Elm_Naviframe (Elm_Layout)
+class Elm_Naviframe (Elm_Layout, Elm_Interface_Atspi_Widget_Action)
 {
eo_prefix: elm_obj_naviframe;
properties {
@@ -274,6 +274,7 @@ class Elm_Naviframe (Elm_Layout)
   Elm_Layout.text_get;
   Elm_Layout.signal_emit;
   Elm_Layout.sizing_eval;
+  Elm_Interface_Atspi_Widget_Action.elm_actions.get;
}
events {
   transition,finished;

-- 




Re: [E-devel] Build error while building ELM with '--with-tests=regular'

2014-07-18 Thread Lukasz Stanislawski

> Hello.
>
> On Tue, 2014-07-15 at 22:53, Tom Hacohen wrote:
>> On 15/07/14 22:46, ryuan Choi wrote:
>>> I compiled Elementary with tests and got below errors.
>>> Some APIs look changed.
>>>
>>> What I did:
>>> cd elementary
>>> ./autogen.sh --prefix=/usr/elocal --with-tests=regular
>>> make -j8
>>> sudo make install
>>> make check -j8
>>>
>>> Error message:
>>>
>>> elm_suite-elm_test_atspi.o: In function
>>> `elm_test_atspi_object_children_get':
>>> /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_atspi.c:262:
>>> undefined reference to `_elm_atspi_root_get'
>>> elm_suite-elm_test_atspi.o: In function `generate_app':
>>> /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_atspi.c:35:
>>> undefined reference to `_elm_atspi_init'
>>> /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_atspi.c:37:
>>> undefined reference to `_elm_atspi_root_get'
>>> elm_suite-elm_test_entry.o: In function `elm_entry_atspi_text_text_get':
>>> /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_entry.c:271:
>>> undefined reference to `elm_interface_atspi_text_text_get'
>>>
>>> Best Regards,
>>> Ryuan Choi
>>> --
>>> Want fast and easy access to all the code in your enterprise? Index and
>>> search up to 200,000 lines of code with a free copy of Black Duck
>>> Code Sight - the same software that powers the world's largest code
>>> search on Ohloh, the Black Duck Open Hub! Try it now.
>>> http://p.sf.net/sfu/bds
>>> ___
>>> enlightenment-devel mailing list
>>> enlightenment-devel@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>>>
>> Hey,
>>
>> I fixed the issue with the entry test, thanks for reporting. No idea
>> about the rest. Can't find those functions or any trace of them, and
>> don't really have the time to try and find them in history. It would be
>> great if whoever who wrote it will fix it.
>>
>> Stefan: don't we "make check" for elementary on jenkins? I wonder how
>> this was missed for so long.
> Took me a moment as I was on some training.
>
> We run make check but what we never did was actually configuring elm
> with regular tests. I changed this now and it is segfaulting nicely on
> jenkins. If anyone wants to have a look.
>
> https://build.enlightenment.org/job/changely_elm_gcc_x86_64/ws/src/tests/test-suite.log
Hey, I'm taking care of it. Ill commit patches asap.
I think which bothers me is that I don't have any sigsegv on my local 
machine.
>
> 70%: Checks: 99, Failures: 22, Errors: 7
> elm_test_check.c:12:E:elm_check:elm_check_onoff_text:0: (after this point) 
> Received signal 11 (Segmentation fault)
> elm_test_entry.c:50:F:elm_entry:elm_entry_atspi_text_char_get:0: Assertion 
> 'val == expected[0]' failed
> elm_test_entry.c:83:F:elm_entry:elm_entry_atspi_text_char_count:0: Assertion 
> 'val == 12' failed
> elm_test_entry.c:89:E:elm_entry:elm_entry_atspi_text_string_get_char:0: 
> (after this point) Received signal 11 (Segmentation fault)
> elm_test_entry.c:134:E:elm_entry:elm_entry_atspi_text_string_get_word:0: 
> (after this point) Received signal 11 (Segmentation fault)
> elm_test_entry.c:180:E:elm_entry:elm_entry_atspi_text_string_get_paragraph:0: 
> (after this point) Received signal 11 (Segmentation fault)
> elm_test_entry.c:226:E:elm_entry:elm_entry_atspi_text_string_get_line:0: 
> (after this point) Received signal 11 (Segmentation fault)
> elm_test_entry.c:258:E:elm_entry:elm_entry_atspi_text_text_get:0: (after this 
> point) Received signal 11 (Segmentation fault)
> elm_test_entry.c:298:F:elm_entry:elm_entry_atspi_text_selections:0: Assertion 
> 'val == 1' failed
> elm_test_atspi.c:36:E:elm_atspi:elm_atspi_name_get:0: (after this point) 
> Received signal 11 (Segmentation fault)
> elm_test_atspi.c:64:F:elm_atspi:elm_atspi_role_get:0: Assertion 'role == 
> ELM_ATSPI_ROLE_APPLICATION' failed
> elm_test_atspi.c:81:F:elm_atspi:elm_atspi_role_name_get:0: Assertion 'ret != 
> ((void *)0)' failed
> elm_test_atspi.c:97:F:elm_atspi:elm_atspi_localized_role_name_get:0: 
> Assertion 'ret != ((void *)0)' failed
> elm_test_atspi.c:121:F:elm_atspi:elm_atspi_description_set:0: Assertion 'ret 
> != ((void *)0)' failed
> elm_test_atspi.c:140:F:elm_atspi:elm_atspi_children_and_parent:0: Assertion 
> 'eina_list_count(child_list) == 1' failed
> elm_test_atspi.c:176:F:elm_atspi:elm_atspi_component_position:0: Assertion 
> 'ret == ((Eina_Bool)1)' failed
> elm_test_atspi.c:205:F:elm_atspi:elm_atspi_component_size:0: Assertion 'ret 
> == ((Eina_Bool)1)' failed
> elm_test_atspi.c:234:F:elm_atspi:elm_atspi_component_focus:0: Assertion 'ret 
> == ((Eina_Bool)1)' failed
> elm_test_atspi.c:269:F:elm_atspi:elm_test_atspi_obj_index_in_parent_get:0: 
> Assertion 'win != ((void *)0)' failed
> elm_test_atspi.c:362:F:elm_atspi:elm_atspi_children_and_parent2:0: Assertion 
> 'eina_list_count(win_children) == 2' failed
> elm

Re: [E-devel] Build error while building ELM with '--with-tests=regular'

2014-07-18 Thread Lukasz Stanislawski

W dniu 18.07.2014 12:10, Stefan Schmidt pisze:
> Hello.
>
> On Tue, 2014-07-15 at 22:53, Tom Hacohen wrote:
>> On 15/07/14 22:46, ryuan Choi wrote:
>>> I compiled Elementary with tests and got below errors.
>>> Some APIs look changed.
>>>
>>> What I did:
>>> cd elementary
>>> ./autogen.sh --prefix=/usr/elocal --with-tests=regular
>>> make -j8
>>> sudo make install
>>> make check -j8
>>>
>>> Error message:
>>>
>>> elm_suite-elm_test_atspi.o: In function
>>> `elm_test_atspi_object_children_get':
>>> /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_atspi.c:262:
>>> undefined reference to `_elm_atspi_root_get'
>>> elm_suite-elm_test_atspi.o: In function `generate_app':
>>> /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_atspi.c:35:
>>> undefined reference to `_elm_atspi_init'
>>> /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_atspi.c:37:
>>> undefined reference to `_elm_atspi_root_get'
>>> elm_suite-elm_test_entry.o: In function `elm_entry_atspi_text_text_get':
>>> /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_entry.c:271:
>>> undefined reference to `elm_interface_atspi_text_text_get'
>>>
>>> Best Regards,
>>> Ryuan Choi
>>> --
>>> Want fast and easy access to all the code in your enterprise? Index and
>>> search up to 200,000 lines of code with a free copy of Black Duck
>>> Code Sight - the same software that powers the world's largest code
>>> search on Ohloh, the Black Duck Open Hub! Try it now.
>>> http://p.sf.net/sfu/bds
>>> ___
>>> enlightenment-devel mailing list
>>> enlightenment-devel@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>>>
>> Hey,
>>
>> I fixed the issue with the entry test, thanks for reporting. No idea
>> about the rest. Can't find those functions or any trace of them, and
>> don't really have the time to try and find them in history. It would be
>> great if whoever who wrote it will fix it.
>>
>> Stefan: don't we "make check" for elementary on jenkins? I wonder how
>> this was missed for so long.
> Took me a moment as I was on some training.
>
> We run make check but what we never did was actually configuring elm
> with regular tests. I changed this now and it is segfaulting nicely on
> jenkins. If anyone wants to have a look.
>
> https://build.enlightenment.org/job/changely_elm_gcc_x86_64/ws/src/tests/test-suite.log
Hi Stefan,

After quick invastigation it looks like segmentation faults may be 
caused by failures in setting elm objects text parts. Generally, all 
test cases doesn't assume that
setting texts with elm_object_text_set method may fail and make string 
comparison directly on elm_object_text_get return value.
I can add additonal NULL checks but all-in-all this tests will fail.

It looks like elementary is unable to properly initialize without 
xserver running or because there is no desktop attached.(there are some 
log entries related to undefined desktop environmental variable). I'm 
not getting sigsegv on my local machine.

BR,
Lukasz

> 70%: Checks: 99, Failures: 22, Errors: 7
> elm_test_check.c:12:E:elm_check:elm_check_onoff_text:0: (after this point) 
> Received signal 11 (Segmentation fault)
> elm_test_entry.c:50:F:elm_entry:elm_entry_atspi_text_char_get:0: Assertion 
> 'val == expected[0]' failed
> elm_test_entry.c:83:F:elm_entry:elm_entry_atspi_text_char_count:0: Assertion 
> 'val == 12' failed
> elm_test_entry.c:89:E:elm_entry:elm_entry_atspi_text_string_get_char:0: 
> (after this point) Received signal 11 (Segmentation fault)
> elm_test_entry.c:134:E:elm_entry:elm_entry_atspi_text_string_get_word:0: 
> (after this point) Received signal 11 (Segmentation fault)
> elm_test_entry.c:180:E:elm_entry:elm_entry_atspi_text_string_get_paragraph:0: 
> (after this point) Received signal 11 (Segmentation fault)
> elm_test_entry.c:226:E:elm_entry:elm_entry_atspi_text_string_get_line:0: 
> (after this point) Received signal 11 (Segmentation fault)
> elm_test_entry.c:258:E:elm_entry:elm_entry_atspi_text_text_get:0: (after this 
> point) Received signal 11 (Segmentation fault)
> elm_test_entry.c:298:F:elm_entry:elm_entry_atspi_text_selections:0: Assertion 
> 'val == 1' failed
> elm_test_atspi.c:36:E:elm_atspi:elm_atspi_name_get:0: (after this point) 
> Received signal 11 (Segmentation fault)
> elm_test_atspi.c:64:F:elm_atspi:elm_atspi_role_get:0: Assertion 'role == 
> ELM_ATSPI_ROLE_APPLICATION' failed
> elm_test_atspi.c:81:F:elm_atspi:elm_atspi_role_name_get:0: Assertion 'ret != 
> ((void *)0)' failed
> elm_test_atspi.c:97:F:elm_atspi:elm_atspi_localized_role_name_get:0: 
> Assertion 'ret != ((void *)0)' failed
> elm_test_atspi.c:121:F:elm_atspi:elm_atspi_description_set:0: Assertion 'ret 
> != ((void *)0)' failed
> elm_test_atspi.c:140:F:elm_atspi:elm_atspi_children_and_parent:0: Assertion 
> 'eina_list_count(child_list) == 1' failed
> elm_test_atspi.c

Re: [E-devel] Build error while building ELM with '--with-tests=regular'

2014-07-18 Thread Lukasz Stanislawski

W dniu 18.07.2014 13:41, Lukasz Stanislawski pisze:
> W dniu 18.07.2014 12:10, Stefan Schmidt pisze:
>> Hello.
>>
>> On Tue, 2014-07-15 at 22:53, Tom Hacohen wrote:
>>> On 15/07/14 22:46, ryuan Choi wrote:
>>>> I compiled Elementary with tests and got below errors.
>>>> Some APIs look changed.
>>>>
>>>> What I did:
>>>> cd elementary
>>>> ./autogen.sh --prefix=/usr/elocal --with-tests=regular
>>>> make -j8
>>>> sudo make install
>>>> make check -j8
>>>>
>>>> Error message:
>>>>
>>>> elm_suite-elm_test_atspi.o: In function
>>>> `elm_test_atspi_object_children_get':
>>>> /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_atspi.c:262:
>>>> undefined reference to `_elm_atspi_root_get'
>>>> elm_suite-elm_test_atspi.o: In function `generate_app':
>>>> /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_atspi.c:35:
>>>> undefined reference to `_elm_atspi_init'
>>>> /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_atspi.c:37:
>>>> undefined reference to `_elm_atspi_root_get'
>>>> elm_suite-elm_test_entry.o: In function `elm_entry_atspi_text_text_get':
>>>> /home/ryuan/workspace/project/efl/elementary/src/tests/elm_test_entry.c:271:
>>>> undefined reference to `elm_interface_atspi_text_text_get'
>>>>
>>>> Best Regards,
>>>> Ryuan Choi
>>>> --
>>>> Want fast and easy access to all the code in your enterprise? Index and
>>>> search up to 200,000 lines of code with a free copy of Black Duck
>>>> Code Sight - the same software that powers the world's largest code
>>>> search on Ohloh, the Black Duck Open Hub! Try it now.
>>>> http://p.sf.net/sfu/bds
>>>> ___
>>>> enlightenment-devel mailing list
>>>> enlightenment-devel@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>>>>
>>> Hey,
>>>
>>> I fixed the issue with the entry test, thanks for reporting. No idea
>>> about the rest. Can't find those functions or any trace of them, and
>>> don't really have the time to try and find them in history. It would be
>>> great if whoever who wrote it will fix it.
>>>
>>> Stefan: don't we "make check" for elementary on jenkins? I wonder how
>>> this was missed for so long.
>> Took me a moment as I was on some training.
>>
>> We run make check but what we never did was actually configuring elm
>> with regular tests. I changed this now and it is segfaulting nicely on
>> jenkins. If anyone wants to have a look.
>>
>> https://build.enlightenment.org/job/changely_elm_gcc_x86_64/ws/src/tests/test-suite.log
> Hi Stefan,
>
> After quick invastigation it looks like segmentation faults may be
> caused by failures in setting elm objects text parts. Generally, all
> test cases doesn't assume that
> setting texts with elm_object_text_set method may fail and make string
> comparison directly on elm_object_text_get return value.
> I can add additonal NULL checks but all-in-all this tests will fail.
>
> It looks like elementary is unable to properly initialize without
> xserver running or because there is no desktop attached.(there are some
> log entries related to undefined desktop environmental variable). I'm
> not getting sigsegv on my local machine.
>
> BR,
> Lukasz
One more thing - are elementary themes installed on build machine?

BR,
Lukasz
>
>> 70%: Checks: 99, Failures: 22, Errors: 7
>> elm_test_check.c:12:E:elm_check:elm_check_onoff_text:0: (after this point) 
>> Received signal 11 (Segmentation fault)
>> elm_test_entry.c:50:F:elm_entry:elm_entry_atspi_text_char_get:0: Assertion 
>> 'val == expected[0]' failed
>> elm_test_entry.c:83:F:elm_entry:elm_entry_atspi_text_char_count:0: Assertion 
>> 'val == 12' failed
>> elm_test_entry.c:89:E:elm_entry:elm_entry_atspi_text_string_get_char:0: 
>> (after this point) Received signal 11 (Segmentation fault)
>> elm_test_entry.c:134:E:elm_entry:elm_entry_atspi_text_string_get_word:0: 
>> (after this point) Received signal 11 (Segmentation fault)
>> elm_test_entry.c:180:E:elm_entry:elm_entry_atspi_text_string_get_paragraph:0:
>>  (after this point) Received signal 11 (Segmentation 

[EGIT] [core/elementary] master 01/01: atspi: fix mem leak in attributes free function

2014-07-21 Thread Lukasz Stanislawski
stanluk pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=ad89be779dd750484ccae597785e0d39bafcefe0

commit ad89be779dd750484ccae597785e0d39bafcefe0
Author: Lukasz Stanislawski 
Date:   Mon Jul 21 15:44:16 2014 +0200

atspi: fix mem leak in attributes free function
---
 src/lib/elm_interface_atspi_accessible.c | 9 +
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/lib/elm_interface_atspi_accessible.c 
b/src/lib/elm_interface_atspi_accessible.c
index 4c25a20..7c2eb23 100644
--- a/src/lib/elm_interface_atspi_accessible.c
+++ b/src/lib/elm_interface_atspi_accessible.c
@@ -277,10 +277,11 @@ void elm_atspi_attributes_list_free(Eina_List *list)
 {
Elm_Atspi_Attribute *attr;
EINA_LIST_FREE(list, attr)
-{
-   eina_stringshare_del(attr->key);
-   eina_stringshare_del(attr->value);
-}
+ {
+eina_stringshare_del(attr->key);
+eina_stringshare_del(attr->value);
+free(attr);
+ }
 }
 
 #include "elm_interface_atspi_accessible.eo.c"

-- 




[EGIT] [core/elementary] master 01/01: tests: refactor of atspi test suite

2014-07-21 Thread Lukasz Stanislawski
stanluk pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=284391d6cfbc77a21f6229fb686be0fe83c43ab6

commit 284391d6cfbc77a21f6229fb686be0fe83c43ab6
Author: Lukasz Stanislawski 
Date:   Mon Jul 21 17:16:54 2014 +0200

tests: refactor of atspi test suite

Summary:
elm_test_atspi adjusted to recent internal api changes. Tests regarding 
elm_win
moved from elm_test_atspi to elm_test_win. Entry tests fixed. Test to
Atspi_Selection interface temporary skipped.

Reviewers: z.kosinski

Reviewed By: z.kosinski

Differential Revision: https://phab.enlightenment.org/D1199
---
 src/tests/elm_test_atspi.c  | 263 ++--
 src/tests/elm_test_entry.c  |  43 +---
 src/tests/elm_test_glview.c |   8 +-
 src/tests/elm_test_list.c   |  10 +-
 src/tests/elm_test_win.c|  49 -
 5 files changed, 123 insertions(+), 250 deletions(-)

diff --git a/src/tests/elm_test_atspi.c b/src/tests/elm_test_atspi.c
index d7ec2a8..1e6bb69 100644
--- a/src/tests/elm_test_atspi.c
+++ b/src/tests/elm_test_atspi.c
@@ -8,16 +8,15 @@
 #include "elm_priv.h"
 #include "elm_suite.h"
 
+#include "elm_atspi_app_object.eo.h"
+
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #include "elm_interface_atspi_accessible.h"
 #include "elm_interface_atspi_accessible.eo.h"
 
-#define ELM_INTERFACE_ATSPI_COMPONENT_PROTECTED
-#include "elm_interface_atspi_component.eo.h"
-
 static Evas_Object *g_win, *g_btn, *g_bg;
 
-Eo* generate_app(void)
+void generate_app(void)
 {
g_win = elm_win_add(NULL, "Title", ELM_WIN_BASIC);
evas_object_geometry_set(g_win, 100, 100, 100, 100);
@@ -29,24 +28,25 @@ Eo* generate_app(void)
evas_object_show(g_btn);
evas_object_show(g_bg);
evas_object_show(g_win);
-
-   return _elm_atspi_bridge_root_get();
 }
 
 START_TEST (elm_atspi_name_get)
 {
elm_init(0, NULL);
 
-   Eo* obj = generate_app();
+   Eo* root = eo_add(ELM_ATSPI_APP_OBJECT_CLASS, NULL);
+
+   ck_assert(root != NULL);
 
const char *ret = NULL;
 
elm_app_name_set("Test name");
 
-   eo_do(obj, ret = elm_interface_atspi_accessible_name_get());
+   eo_do(root, ret = elm_interface_atspi_accessible_name_get());
 
ck_assert_str_eq(ret, "Test name");
 
+   eo_unref(root);
elm_shutdown();
 }
 END_TEST
@@ -55,14 +55,15 @@ START_TEST (elm_atspi_role_get)
 {
elm_init(0, NULL);
 
-   Eo *obj = generate_app();
+   Eo* root = eo_add(ELM_ATSPI_APP_OBJECT_CLASS, NULL);
 
Elm_Atspi_Role role;
 
-   eo_do(obj, role = elm_interface_atspi_accessible_role_get());
+   eo_do(root, role = elm_interface_atspi_accessible_role_get());
 
ck_assert(role == ELM_ATSPI_ROLE_APPLICATION);
 
+   eo_unref(root);
elm_shutdown();
 }
 END_TEST
@@ -72,14 +73,15 @@ START_TEST (elm_atspi_role_name_get)
 {
elm_init(0, NULL);
 
-   Eo *obj = generate_app();
+   Eo* root = eo_add(ELM_ATSPI_APP_OBJECT_CLASS, NULL);
 
const char *ret = NULL;
 
-   eo_do(obj, ret = elm_interface_atspi_accessible_role_name_get());
+   eo_do(root, ret = elm_interface_atspi_accessible_role_name_get());
 
ck_assert(ret != NULL);
 
+   eo_unref(root);
elm_shutdown();
 }
 END_TEST
@@ -88,14 +90,15 @@ START_TEST (elm_atspi_localized_role_name_get)
 {
elm_init(0, NULL);
 
-   Eo *obj = generate_app();
+   Eo* root = eo_add(ELM_ATSPI_APP_OBJECT_CLASS, NULL);
 
const char *ret = NULL;
 
-   eo_do(obj, ret = elm_interface_atspi_accessible_localized_role_name_get());
+   eo_do(root, ret = elm_interface_atspi_accessible_localized_role_name_get());
 
ck_assert(ret != NULL);
 
+   eo_unref(root);
elm_shutdown();
 }
 END_TEST
@@ -104,23 +107,24 @@ START_TEST (elm_atspi_description_set)
 {
elm_init(0, NULL);
 
-   Eo *obj = generate_app();
+   Eo* root = eo_add(ELM_ATSPI_APP_OBJECT_CLASS, NULL);
 
const char *ret = NULL;
 
const char *desc = "Test description";
 
-   eo_do(obj, ret = elm_interface_atspi_accessible_description_get());
+   eo_do(root, ret = elm_interface_atspi_accessible_description_get());
 
ck_assert(ret == NULL);
 
-   eo_do(obj, elm_interface_atspi_accessible_description_set(desc));
+   eo_do(root, elm_interface_atspi_accessible_description_set(desc));
 
-   eo_do(obj, ret = elm_interface_atspi_accessible_description_get());
+   eo_do(root, ret = elm_interface_atspi_accessible_description_get());
 
ck_assert(ret != NULL);
ck_assert_str_eq(ret, "Test description");
 
+   eo_unref(root);
elm_shutdown();
 }
 END_TEST
@@ -129,7 +133,8 @@ START_TEST (elm_atspi_children_and_parent)
 {
elm_init(0, NULL);
 
-   Eo *root = generate_app();
+   generate_app();
+   Eo* root = eo_add(ELM_ATSPI_APP_OBJECT_CLASS, NULL);
 
Eina_List *child_list = NULL;
 
@@ -146,200 +151,7 @@ START_TEST (elm_atspi_children_and_parent)
ck_assert(win != NULL);
ck_assert(win == g_win);
 
-   Eo *

[EGIT] [core/elementary] master 01/01: atspi: always set atspi role for elm_win

2014-07-21 Thread Lukasz Stanislawski
stanluk pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=364020db44894d0499f31db86e0830d950e31cb7

commit 364020db44894d0499f31db86e0830d950e31cb7
Author: Lukasz Stanislawski 
Date:   Mon Jul 21 18:37:41 2014 +0200

atspi: always set atspi role for elm_win
---
 src/lib/elm_win.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elm_win.c b/src/lib/elm_win.c
index 6964127..28c3e77 100644
--- a/src/lib/elm_win.c
+++ b/src/lib/elm_win.c
@@ -3366,9 +3366,9 @@ _elm_win_constructor(Eo *obj, Elm_Win_Data *sd, const 
char *name, Elm_Win_Type t
evas_object_event_callback_add(sd->layout, EVAS_CALLBACK_CHANGED_SIZE_HINTS,
   _elm_win_on_resize_obj_changed_size_hints, 
obj);
 
+   eo_do(obj, elm_interface_atspi_accessible_role_set(ELM_ATSPI_ROLE_WINDOW));
if (_elm_config->atspi_mode == ELM_ATSPI_MODE_ON)
  {
-eo_do(obj, 
elm_interface_atspi_accessible_role_set(ELM_ATSPI_ROLE_WINDOW));
 
elm_interface_atspi_accessible_children_changed_added_signal_emit(_elm_atspi_bridge_root_get(),
 obj);
 eo_do(obj, 
eo_event_callback_call(ELM_INTERFACE_ATSPI_WINDOW_EVENT_WINDOW_CREATED, NULL));
  }

-- 




[E-devel] Elm build break with enabled c++ bindings

2014-07-22 Thread Lukasz Stanislawski
Hi,

I'm getting following errors when trying to build elementary with 
default configure options. With '--disable-c++11' it builds well.
Could someone take a look?

BR,
LS

CC   libelementary_la-els_box.lo
CC   libelementary_la-els_cursor.lo
CC   libelementary_la-els_tooltip.lo
CC   libelementary_la-elu_ews_wm.lo
EOLCXX   elm_widget.eo.hh
ERR<24659>:eo_lexer /usr/local/share/eolian/include/edje-1/edje.eo:183 
() '(' expected at column 19 near 'char'
  const char *file; /*@ The path to the EDJ file to load @p 
from */
^

ERR<24659>:blackeolian_cxx bin/eolian_cxx/eolian_cxx.cc:217 
database_load() Eolian failed parsing input files
eolian_cxx: bin/eolian_cxx/eolian_cxx.cc:219: void 
eolian_cxx::database_load(const eolian_cxx::options_type&): Assertion 
`false && "Error parsing input files"' failed.
   EOLCXX   elm_container.eo.hh
ERR<24666>:eo_lexer /usr/local/share/eolian/include/edje-1/edje.eo:183 
() '(' expected at column 19 near 'char'
  const char *file; /*@ The path to the EDJ file to load @p 
from */
^

ERR<24666>:blackeolian_cxx bin/eolian_cxx/eolian_cxx.cc:217 
database_load() Eolian failed parsing input files
eolian_cxx: bin/eolian_cxx/eolian_cxx.cc:219: void 
eolian_cxx::database_load(const eolian_cxx::options_type&): Assertion 
`false && "Error parsing input files"' failed.
   EOLCXX   elm_layout.eo.hh
   EOLCXX   elm_interface_scrollable.eo.hh
/bin/bash: line 1: 24659 Przerwane   (core dumped) 
/usr/local/bin/eolian_cxx -I/usr/local/share/eolian/include/eo-1 
-I/usr/local/share/eolian/include/evas-1 
-I/usr/local/share/eolian/include/edje-1 
-I/usr/local/share/eolian/include/ecore-1 -I../../src/lib -o 
elm_widget.eo.hh elm_widget.eo
make[4]: *** [elm_widget.eo.hh] Błąd 134
make[4]: *** Oczekiwanie na niezakończone zadania
ERR<24673>:eo_lexer /usr/local/share/eolian/include/edje-1/edje.eo:183 
() '(' expected at column 19 near 'char'
  const char *file; /*@ The path to the EDJ file to load @p 
from */
^

ERR<24673>:blackeolian_cxx bin/eolian_cxx/eolian_cxx.cc:217 
database_load() Eolian failed parsing input files
eolian_cxx: bin/eolian_cxx/eolian_cxx.cc:219: void 
eolian_cxx::database_load(const eolian_cxx::options_type&): Assertion 
`false && "Error parsing input files"' failed.
ERR<24678>:eo_lexer /usr/local/share/eolian/include/edje-1/edje.eo:183 
() '(' expected at column 19 near 'char'
  const char *file; /*@ The path to the EDJ file to load @p 
from */
^

ERR<24678>:blackeolian_cxx bin/eolian_cxx/eolian_cxx.cc:217 
database_load() Eolian failed parsing input files
eolian_cxx: bin/eolian_cxx/eolian_cxx.cc:219: void 
eolian_cxx::database_load(const eolian_cxx::options_type&): Assertion 
`false && "Error parsing input files"' failed.
/bin/bash: line 1: 24666 Przerwane   (core dumped) 
/usr/local/bin/eolian_cxx -I/usr/local/share/eolian/include/eo-1 
-I/usr/local/share/eolian/include/evas-1 
-I/usr/local/share/eolian/include/edje-1 
-I/usr/local/share/eolian/include/ecore-1 -I../../src/lib -o 
elm_container.eo.hh elm_container.eo
make[4]: *** [elm_container.eo.hh] Błąd 134
/bin/bash: line 1: 24673 Przerwane   (core dumped) 
/usr/local/bin/eolian_cxx -I/usr/local/share/eolian/include/eo-1 
-I/usr/local/share/eolian/include/evas-1 
-I/usr/local/share/eolian/include/edje-1 
-I/usr/local/share/eolian/include/ecore-1 -I../../src/lib -o 
elm_layout.eo.hh elm_layout.eo
make[4]: *** [elm_layout.eo.hh] Błąd 134
/bin/bash: line 1: 24678 Przerwane   (core dumped) 
/usr/local/bin/eolian_cxx -I/usr/local/share/eolian/include/eo-1 
-I/usr/local/share/eolian/include/evas-1 
-I/usr/local/share/eolian/include/edje-1 
-I/usr/local/share/eolian/include/ecore-1 -I../../src/lib -o 
elm_interface_scrollable.eo.hh elm_interface_scrollable.eo



--
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: atspi: expose more actions through atspi bus.

2014-07-28 Thread Lukasz Stanislawski
stanluk pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=4dcb2df11c1bb99e310f43e2951bdfb87e43f057

commit 4dcb2df11c1bb99e310f43e2951bdfb87e43f057
Author: Lukasz Stanislawski 
Date:   Fri Jul 25 10:33:19 2014 +0200

atspi: expose more actions through atspi bus.

Summary:
Main purpose of exposing widget actions and keyboard shortcuts
is to allow accessibility clients to implement alternative methods
of GUI navigation.

Reviewers: z.kosinski

Reviewed By: z.kosinski

Subscribers: seoz

Differential Revision: https://phab.enlightenment.org/D1227
---
 src/lib/Makefile.am  |  1 +
 src/lib/elc_ctxpopup.c   | 19 +
 src/lib/elc_ctxpopup.eo  |  3 +-
 src/lib/elc_fileselector.c   | 15 ++
 src/lib/elc_fileselector.eo  |  4 ++-
 src/lib/elc_hoversel.c   | 17 +++
 src/lib/elc_hoversel.eo  |  4 ++-
 src/lib/elc_naviframe.c  |  9 --
 src/lib/elc_player.c | 16 +++
 src/lib/elc_player.eo|  3 +-
 src/lib/elc_popup.c  | 19 +
 src/lib/elc_popup.eo |  3 +-
 src/lib/elm_atspi_bridge.c   | 14 ++
 src/lib/elm_button.c |  9 --
 src/lib/elm_calendar.c   | 19 +
 src/lib/elm_calendar.eo  |  3 +-
 src/lib/elm_check.c  |  9 --
 src/lib/elm_colorselector.c  | 17 +++
 src/lib/elm_colorselector.eo |  3 +-
 src/lib/elm_diskselector.c   | 17 +++
 src/lib/elm_diskselector.eo  |  4 ++-
 src/lib/elm_flipselector.c   | 15 ++
 src/lib/elm_flipselector.eo  |  3 +-
 src/lib/elm_gengrid.c| 27 ++
 src/lib/elm_genlist.c| 25 +
 src/lib/elm_genlist.eo   |  4 ++-
 src/lib/elm_image.c  |  9 --
 src/lib/elm_interface_atspi_action.eo|  5 ++--
 src/lib/elm_interface_atspi_widget_action.c  | 42 +++-
 src/lib/elm_interface_atspi_widget_action.eo |  2 +-
 src/lib/elm_interface_atspi_widget_action.h  | 10 +++
 src/lib/elm_list.c   | 27 ++
 src/lib/elm_list.eo  |  4 ++-
 src/lib/elm_map.c| 21 ++
 src/lib/elm_map.eo   |  4 ++-
 src/lib/elm_panel.c  | 14 ++
 src/lib/elm_panel.eo |  4 ++-
 src/lib/elm_photocam.c   | 21 ++
 src/lib/elm_photocam.eo  |  4 ++-
 src/lib/elm_radio.c  | 14 ++
 src/lib/elm_radio.eo |  3 +-
 src/lib/elm_scroller.c   | 21 ++
 src/lib/elm_scroller.eo  |  4 ++-
 src/lib/elm_slider.c | 17 +++
 src/lib/elm_slider.eo|  4 ++-
 src/lib/elm_slideshow.c  | 16 +++
 src/lib/elm_slideshow.eo |  3 +-
 src/lib/elm_spinner.c| 18 
 src/lib/elm_spinner.eo   |  4 +--
 src/lib/elm_toolbar.c| 18 
 src/lib/elm_toolbar.eo   |  4 ++-
 src/lib/elm_video.c  | 16 +++
 src/lib/elm_video.eo |  3 +-
 src/lib/elm_win.c| 19 +
 src/lib/elm_win.eo   |  4 ++-
 src/tests/elm_cxx_suite.cc   |  1 +
 56 files changed, 565 insertions(+), 53 deletions(-)

diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index efff270..11e5e36 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -50,6 +50,7 @@ includesunstable_HEADERS = \
 elm_gen_common.h \
 elm_interface_atspi_accessible.h \
 elm_interface_atspi_text.h \
+elm_interface_atspi_widget_action.h \
 elm_interface_fileselector.h \
 elm_interface_scrollable.h \
 elm_widget.h \
diff --git a/src/lib/elc_ctxpopup.c b/src/lib/elc_ctxpopup.c
index a2ae83d..072638d 100644
--- a/src/lib/elc_ctxpopup.c
+++ b/src/lib/elc_ctxpopup.c
@@ -11,6 +11,10 @@
 #include "elm_interface_atspi_accessible.h"
 #include "elm_interface_atspi_accessible.eo.h"
 
+#define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
+#include "elm_interface_atspi_widget_action.h"
+#include "elm_interface_atspi_widget_action.eo.h"
+
 #define MY_CLASS ELM_CTXPOPUP_CLASS
 
 #define MY_CLASS_NAME "Elm_Ctxpopup"
@@ -1436,4 +1440,19 @

[EGIT] [core/efl] master 02/04: elm: rename Elm.Interface.Atspi.Window => Efl.Access.Window

2017-09-12 Thread Lukasz Stanislawski
jpeg pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=dfd17229fd30f81b741ebd5689ed2c1c113c188b

commit dfd17229fd30f81b741ebd5689ed2c1c113c188b
Author: Lukasz Stanislawski 
Date:   Tue Sep 12 15:48:10 2017 +0900

elm: rename Elm.Interface.Atspi.Window => Efl.Access.Window

Reviewers: cedric, jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5162
---
 src/Makefile_Elementary.am |  6 +--
 ...nterface_atspi_window.c => efl_access_window.c} |  2 +-
 ...erface_atspi_window.eo => efl_access_window.eo} |  4 +-
 src/lib/elementary/efl_access_window.h | 56 ++
 src/lib/elementary/efl_ui_win.c| 28 +--
 src/lib/elementary/efl_ui_win.eo   |  2 +-
 src/lib/elementary/elementary_js.cc|  4 +-
 src/lib/elementary/elm_atspi_bridge.c  | 28 +--
 src/lib/elementary/elm_interface_atspi_window.h| 56 --
 src/lib/elementary/elm_interfaces.h|  2 +-
 10 files changed, 94 insertions(+), 94 deletions(-)

diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am
index 514ec64b87..b83a07cb23 100644
--- a/src/Makefile_Elementary.am
+++ b/src/Makefile_Elementary.am
@@ -37,7 +37,7 @@ elm_public_eolian_files = \
lib/elementary/elm_interface_atspi_text.eo \
lib/elementary/efl_access_value.eo \
lib/elementary/elm_interface_atspi_widget_action.eo \
-   lib/elementary/elm_interface_atspi_window.eo \
+   lib/elementary/efl_access_window.eo \
lib/elementary/elm_interface_fileselector.eo \
lib/elementary/elm_interface_scrollable.eo \
lib/elementary/elm_label.eo \
@@ -220,7 +220,7 @@ includesunstable_HEADERS = \
lib/elementary/elm_interface_atspi_accessible.h \
lib/elementary/elm_interface_atspi_text.h \
lib/elementary/elm_interface_atspi_widget_action.h \
-   lib/elementary/elm_interface_atspi_window.h \
+   lib/elementary/efl_access_window.h \
lib/elementary/elm_interface_fileselector.h \
lib/elementary/elm_interface_scrollable.h \
lib/elementary/elm_interfaces.h \
@@ -618,7 +618,7 @@ lib_elementary_libelementary_la_SOURCES = \
lib/elementary/elm_interface_atspi_text.c \
lib/elementary/efl_access_value.c \
lib/elementary/elm_interface_atspi_widget_action.c \
-   lib/elementary/elm_interface_atspi_window.c \
+   lib/elementary/efl_access_window.c \
lib/elementary/elm_interface_fileselector.c \
lib/elementary/elm_interface_scrollable.c \
lib/elementary/elm_inwin.c \
diff --git a/src/lib/elementary/elm_interface_atspi_window.c 
b/src/lib/elementary/efl_access_window.c
similarity index 75%
rename from src/lib/elementary/elm_interface_atspi_window.c
rename to src/lib/elementary/efl_access_window.c
index 7ef0c18b29..48d0dfd2c2 100644
--- a/src/lib/elementary/elm_interface_atspi_window.c
+++ b/src/lib/elementary/efl_access_window.c
@@ -6,4 +6,4 @@
 #include "elm_widget.h"
 #include "elm_priv.h"
 
-#include "elm_interface_atspi_window.eo.c"
+#include "efl_access_window.eo.c"
diff --git a/src/lib/elementary/elm_interface_atspi_window.eo 
b/src/lib/elementary/efl_access_window.eo
similarity index 86%
rename from src/lib/elementary/elm_interface_atspi_window.eo
rename to src/lib/elementary/efl_access_window.eo
index 08f885b04c..2fcb738b60 100644
--- a/src/lib/elementary/elm_interface_atspi_window.eo
+++ b/src/lib/elementary/efl_access_window.eo
@@ -1,6 +1,6 @@
-interface Elm.Interface.Atspi.Window ()
+interface Efl.Access.Window ()
 {
-   [[Elementary AT-SPI window interface]]
+   [[Elementary accessible window interface]]
events {
   window,created; [[Called when new window has been created.]]
   window,destroyed; [[Called when window has been destroyed.]]
diff --git a/src/lib/elementary/efl_access_window.h 
b/src/lib/elementary/efl_access_window.h
new file mode 100644
index 00..5e2b6c82d7
--- /dev/null
+++ b/src/lib/elementary/efl_access_window.h
@@ -0,0 +1,56 @@
+#ifndef EFL_ACCESS_WINDOW_H
+#define EFL_ACCESS_WINDOW_H
+
+#ifdef EFL_BETA_API_SUPPORT
+#ifdef EFL_EO_API_SUPPORT
+
+#include "efl_access_window.eo.h"
+#endif
+#ifndef EFL_NOLEGACY_API_SUPPORT
+#include "efl_access_window.eo.legacy.h"
+#endif
+
+/**
+ * Emits 'Window:Activated' accessible signal.
+ */
+#define efl_access_window_activated_signal_emit(obj) \
+   
elm_interface_atspi_accessible_event_emit(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, 
obj, EFL_ACCESS_WINDOW_EVENT_WINDOW_ACTIVATED, NULL);
+
+/**
+ * Emits 'Window:Deactivated' accessible signal.
+ */
+#define efl_access_window_deactivated_signal_emit(obj) \
+   
elm_interface_atspi_accessible_event_emit(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, 
obj, EFL_ACCESS_WINDOW_EVENT_WIND

[EGIT] [core/efl] master 04/04: elm: rename Elm.Interface.Atspi.Component => Efl.Access.Component

2017-09-12 Thread Lukasz Stanislawski
jpeg pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=9cf8e756686b1e339ccd2505fbcfac4f579903a6

commit 9cf8e756686b1e339ccd2505fbcfac4f579903a6
Author: Lukasz Stanislawski 
Date:   Tue Sep 12 15:49:29 2017 +0900

elm: rename Elm.Interface.Atspi.Component => Efl.Access.Component

Reviewers: jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D5164
---
 src/Makefile_Elementary.am |  4 +-
 ...ce_atspi_component.c => efl_access_component.c} | 46 +++---
 ..._atspi_component.eo => efl_access_component.eo} |  3 +-
 src/lib/elementary/efl_ui_win.c|  4 +-
 src/lib/elementary/efl_ui_win.eo   |  4 +-
 src/lib/elementary/elm_atspi_bridge.c  | 46 +++---
 src/lib/elementary/elm_colorselector.c |  2 +-
 src/lib/elementary/elm_index.c |  2 +-
 src/lib/elementary/elm_interfaces.h|  4 +-
 src/lib/elementary/elm_widget.c| 14 +++
 src/lib/elementary/elm_widget.eo   |  4 +-
 src/lib/elementary/elm_widget_item.eo  | 10 ++---
 12 files changed, 71 insertions(+), 72 deletions(-)

diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am
index 04331a3582..f1eb3fd8b7 100644
--- a/src/Makefile_Elementary.am
+++ b/src/Makefile_Elementary.am
@@ -30,7 +30,7 @@ elm_public_eolian_files = \
lib/elementary/elm_index.eo \
lib/elementary/elm_interface_atspi_accessible.eo \
lib/elementary/elm_interface_atspi_action.eo \
-   lib/elementary/elm_interface_atspi_component.eo \
+   lib/elementary/efl_access_component.eo \
lib/elementary/elm_interface_atspi_text_editable.eo \
lib/elementary/efl_access_image.eo \
lib/elementary/elm_interface_atspi_selection.eo \
@@ -611,7 +611,7 @@ lib_elementary_libelementary_la_SOURCES = \
lib/elementary/elm_index.c \
lib/elementary/elm_interface_atspi_accessible.c \
lib/elementary/elm_interface_atspi_action.c \
-   lib/elementary/elm_interface_atspi_component.c \
+   lib/elementary/efl_access_component.c \
lib/elementary/elm_interface_atspi_text_editable.c \
lib/elementary/efl_access_image.c \
lib/elementary/elm_interface_atspi_selection.c \
diff --git a/src/lib/elementary/elm_interface_atspi_component.c 
b/src/lib/elementary/efl_access_component.c
similarity index 51%
rename from src/lib/elementary/elm_interface_atspi_component.c
rename to src/lib/elementary/efl_access_component.c
index e2d8ccab87..6a4e1566ab 100644
--- a/src/lib/elementary/elm_interface_atspi_component.c
+++ b/src/lib/elementary/efl_access_component.c
@@ -2,7 +2,7 @@
 # include "elementary_config.h"
 #endif
 
-#define ELM_INTERFACE_ATSPI_COMPONENT_PROTECTED
+#define EFL_ACCESS_COMPONENT_PROTECTED
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 
 #include 
@@ -11,46 +11,46 @@
 
 
 EOLIAN static void
-_elm_interface_atspi_component_position_get(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, Eina_Bool type, int *x, int *y)
+_efl_access_component_position_get(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED, 
Eina_Bool type, int *x, int *y)
 {
-   elm_interface_atspi_component_extents_get(obj, type, x, y, NULL, NULL);
+   efl_access_component_extents_get(obj, type, x, y, NULL, NULL);
 }
 
 EOLIAN static Eina_Bool
-_elm_interface_atspi_component_position_set(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, Eina_Bool type, int x, int y)
+_efl_access_component_position_set(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED, 
Eina_Bool type, int x, int y)
 {
Eina_Bool ret = EINA_FALSE;
int c_w, c_h;
 
-   elm_interface_atspi_component_extents_get(obj, type, NULL, NULL, &c_w, 
&c_h);
-   ret = elm_interface_atspi_component_extents_set(obj, type, x, y, c_w, c_h);
+   efl_access_component_extents_get(obj, type, NULL, NULL, &c_w, &c_h);
+   ret = efl_access_component_extents_set(obj, type, x, y, c_w, c_h);
 
return ret;
 }
 
 EOLIAN static Eina_Bool
-_elm_interface_atspi_component_size_set(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, int w, int h)
+_efl_access_component_size_set(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED, int 
w, int h)
 {
Eina_Bool ret;
int c_x = 0, c_y = 0;
 
-   elm_interface_atspi_component_extents_get(obj, EINA_FALSE, &c_x, &c_y, 
NULL, NULL);
-   ret = elm_interface_atspi_component_extents_set(obj, EINA_FALSE, c_x, c_y, 
w, h);
+   efl_access_component_extents_get(obj, EINA_FALSE, &c_x, &c_y, NULL, NULL);
+   ret = efl_access_component_extents_set(obj, EINA_FALSE, c_x, c_y, w, h);
return ret;
 }
 
 EOLIAN static void
-_elm_interface_atspi_component_size_get(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, int *w, int *h)
+_efl_access_component_size_get(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED, int 
*w, int *h)
 {
-   elm_interface_atspi_component_extents_get(obj, EINA_FALSE, NULL,

[EGIT] [core/efl] master 01/04: elm: rename Elm.Interface.Atspi.Value => Efl.Access.Value

2017-09-12 Thread Lukasz Stanislawski
jpeg pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=9f7786544ecf2d3ec8a88aa756433ee8aedb3190

commit 9f7786544ecf2d3ec8a88aa756433ee8aedb3190
Author: Lukasz Stanislawski 
Date:   Tue Sep 12 15:36:24 2017 +0900

elm: rename Elm.Interface.Atspi.Value => Efl.Access.Value

Reviewers: jpeg, cedric, stanluk

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5161
---
 src/Makefile_Elementary.am   |  4 ++--
 ...lm_interface_atspi_value.c => efl_access_value.c} |  4 ++--
 ..._interface_atspi_value.eo => efl_access_value.eo} |  5 ++---
 src/lib/elementary/efl_ui_slider.c   | 10 +-
 src/lib/elementary/efl_ui_slider.eo  |  8 
 src/lib/elementary/elm_atspi_bridge.c| 20 ++--
 src/lib/elementary/elm_interface_atspi_selection.c   |  2 +-
 src/lib/elementary/elm_interfaces.h  |  4 ++--
 src/lib/elementary/elm_spinner.c | 10 +-
 src/lib/elementary/elm_spinner.eo|  8 
 10 files changed, 37 insertions(+), 38 deletions(-)

diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am
index ad50ab466b..514ec64b87 100644
--- a/src/Makefile_Elementary.am
+++ b/src/Makefile_Elementary.am
@@ -35,7 +35,7 @@ elm_public_eolian_files = \
lib/elementary/elm_interface_atspi_image.eo \
lib/elementary/elm_interface_atspi_selection.eo \
lib/elementary/elm_interface_atspi_text.eo \
-   lib/elementary/elm_interface_atspi_value.eo \
+   lib/elementary/efl_access_value.eo \
lib/elementary/elm_interface_atspi_widget_action.eo \
lib/elementary/elm_interface_atspi_window.eo \
lib/elementary/elm_interface_fileselector.eo \
@@ -616,7 +616,7 @@ lib_elementary_libelementary_la_SOURCES = \
lib/elementary/elm_interface_atspi_image.c \
lib/elementary/elm_interface_atspi_selection.c \
lib/elementary/elm_interface_atspi_text.c \
-   lib/elementary/elm_interface_atspi_value.c \
+   lib/elementary/efl_access_value.c \
lib/elementary/elm_interface_atspi_widget_action.c \
lib/elementary/elm_interface_atspi_window.c \
lib/elementary/elm_interface_fileselector.c \
diff --git a/src/lib/elementary/elm_interface_atspi_value.c 
b/src/lib/elementary/efl_access_value.c
similarity index 60%
rename from src/lib/elementary/elm_interface_atspi_value.c
rename to src/lib/elementary/efl_access_value.c
index f51a0a9a43..76e52864a8 100644
--- a/src/lib/elementary/elm_interface_atspi_value.c
+++ b/src/lib/elementary/efl_access_value.c
@@ -2,10 +2,10 @@
   #include "elementary_config.h"
 #endif
 
-#define ELM_INTERFACE_ATSPI_VALUE_PROTECTED
+#define EFL_ACCESS_VALUE_PROTECTED
 
 #include 
 #include "elm_widget.h"
 #include "elm_priv.h"
 
-#include "elm_interface_atspi_value.eo.c"
+#include "efl_access_value.eo.c"
diff --git a/src/lib/elementary/elm_interface_atspi_value.eo 
b/src/lib/elementary/efl_access_value.eo
similarity index 89%
rename from src/lib/elementary/elm_interface_atspi_value.eo
rename to src/lib/elementary/efl_access_value.eo
index ece76937a9..c6c344496b 100644
--- a/src/lib/elementary/elm_interface_atspi_value.eo
+++ b/src/lib/elementary/efl_access_value.eo
@@ -1,7 +1,6 @@
-interface Elm.Interface.Atspi.Value ()
+interface Efl.Access.Value ()
 {
-   [[Elementary AT-SPI value interface]]
-   eo_prefix: elm_interface_atspi_value;
+   [[Elementary Access value interface]]
methods {
   @property value_and_text @protected {
 [[Value and text property]]
diff --git a/src/lib/elementary/efl_ui_slider.c 
b/src/lib/elementary/efl_ui_slider.c
index 4382bdc43c..9279ed9bda 100644
--- a/src/lib/elementary/efl_ui_slider.c
+++ b/src/lib/elementary/efl_ui_slider.c
@@ -4,7 +4,7 @@
 
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
-#define ELM_INTERFACE_ATSPI_VALUE_PROTECTED
+#define EFL_ACCESS_VALUE_PROTECTED
 #define ELM_LAYOUT_PROTECTED
 
 #include 
@@ -1500,14 +1500,14 @@ _efl_ui_slider_class_constructor(Efl_Class *klass)
 // A11Y Accessibility
 
 EOLIAN static void
-_efl_ui_slider_elm_interface_atspi_value_value_and_text_get(Eo *obj 
EINA_UNUSED, Efl_Ui_Slider_Data *sd, double *value, const char **text)
+_efl_ui_slider_efl_access_value_value_and_text_get(Eo *obj EINA_UNUSED, 
Efl_Ui_Slider_Data *sd, double *value, const char **text)
 {
if (value) *value = sd->val;
if (text) *text = NULL;
 }
 
 EOLIAN static Eina_Bool
-_efl_ui_slider_elm_interface_atspi_value_value_and_text_set(Eo *obj, 
Efl_Ui_Slider_Data *sd, double value, const char *text EINA_UNUSED)
+_efl_ui_slider_efl_access_value_value_and_text_set(Eo *obj, Efl_Ui_Slider_Data 
*sd, double value, const char *text EINA_UNUSED)
 {
double oldval = sd->val;
 
@@ -1525,7 +1525,7 @@ 
_e

[EGIT] [core/efl] master 03/04: elm: rename Elm.Interface.Atspi.Image => Efl.Access.Image

2017-09-12 Thread Lukasz Stanislawski
jpeg pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=a55f2c96d4953b1a95b4c7aa3a094a9d19f4a7d1

commit a55f2c96d4953b1a95b4c7aa3a094a9d19f4a7d1
Author: Lukasz Stanislawski 
Date:   Tue Sep 12 15:48:39 2017 +0900

elm: rename Elm.Interface.Atspi.Image => Efl.Access.Image

Reviewers: jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D5163
---
 src/Makefile_Elementary.am |  4 ++--
 ..._interface_atspi_image.c => efl_access_image.c} | 10 +-
 ...nterface_atspi_image.eo => efl_access_image.eo} |  5 ++---
 src/lib/elementary/efl_ui_image.c  |  4 ++--
 src/lib/elementary/efl_ui_image.eo |  4 ++--
 src/lib/elementary/elm_atspi_bridge.c  | 22 +++---
 src/lib/elementary/elm_interfaces.h|  4 ++--
 7 files changed, 26 insertions(+), 27 deletions(-)

diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am
index b83a07cb23..04331a3582 100644
--- a/src/Makefile_Elementary.am
+++ b/src/Makefile_Elementary.am
@@ -32,7 +32,7 @@ elm_public_eolian_files = \
lib/elementary/elm_interface_atspi_action.eo \
lib/elementary/elm_interface_atspi_component.eo \
lib/elementary/elm_interface_atspi_text_editable.eo \
-   lib/elementary/elm_interface_atspi_image.eo \
+   lib/elementary/efl_access_image.eo \
lib/elementary/elm_interface_atspi_selection.eo \
lib/elementary/elm_interface_atspi_text.eo \
lib/elementary/efl_access_value.eo \
@@ -613,7 +613,7 @@ lib_elementary_libelementary_la_SOURCES = \
lib/elementary/elm_interface_atspi_action.c \
lib/elementary/elm_interface_atspi_component.c \
lib/elementary/elm_interface_atspi_text_editable.c \
-   lib/elementary/elm_interface_atspi_image.c \
+   lib/elementary/efl_access_image.c \
lib/elementary/elm_interface_atspi_selection.c \
lib/elementary/elm_interface_atspi_text.c \
lib/elementary/efl_access_value.c \
diff --git a/src/lib/elementary/elm_interface_atspi_image.c 
b/src/lib/elementary/efl_access_image.c
similarity index 74%
rename from src/lib/elementary/elm_interface_atspi_image.c
rename to src/lib/elementary/efl_access_image.c
index 510a6545c2..73e8553541 100644
--- a/src/lib/elementary/elm_interface_atspi_image.c
+++ b/src/lib/elementary/efl_access_image.c
@@ -2,7 +2,7 @@
   #include "elementary_config.h"
 #endif
 
-#define ELM_INTERFACE_ATSPI_IMAGE_PROTECTED
+#define EFL_ACCESS_IMAGE_PROTECTED
 
 #include 
 #include "elm_widget.h"
@@ -15,7 +15,7 @@ _free_desc_cb(void *data, const Efl_Event *event EINA_UNUSED)
 }
 
 EOLIAN static const char*
-_elm_interface_atspi_image_description_get(Eo *obj, void *sd EINA_UNUSED)
+_efl_access_image_description_get(Eo *obj, void *sd EINA_UNUSED)
 {
const char *descr = NULL;
 
@@ -24,7 +24,7 @@ _elm_interface_atspi_image_description_get(Eo *obj, void *sd 
EINA_UNUSED)
 }
 
 EOLIAN static void
-_elm_interface_atspi_image_description_set(Eo *obj, void *sd EINA_UNUSED, 
const char *description)
+_efl_access_image_description_set(Eo *obj, void *sd EINA_UNUSED, const char 
*description)
 {
const char *key = "atspi_image_description";
const char *descr = eina_stringshare_add(description);
@@ -43,11 +43,11 @@ _elm_interface_atspi_image_description_set(Eo *obj, void 
*sd EINA_UNUSED, const
 }
 
 EOLIAN static const char*
-_elm_interface_atspi_image_locale_get(Eo *obj EINA_UNUSED, void *sd 
EINA_UNUSED)
+_efl_access_image_locale_get(Eo *obj EINA_UNUSED, void *sd EINA_UNUSED)
 {
// by default assume that descriptions are given in language of current
// locale.
return getenv("LANG");
 }
 
-#include "elm_interface_atspi_image.eo.c"
+#include "efl_access_image.eo.c"
diff --git a/src/lib/elementary/elm_interface_atspi_image.eo 
b/src/lib/elementary/efl_access_image.eo
similarity index 89%
rename from src/lib/elementary/elm_interface_atspi_image.eo
rename to src/lib/elementary/efl_access_image.eo
index a3e76498f5..adfc607d02 100644
--- a/src/lib/elementary/elm_interface_atspi_image.eo
+++ b/src/lib/elementary/efl_access_image.eo
@@ -1,7 +1,6 @@
-mixin Elm.Interface.Atspi_Image ()
+mixin Efl.Access.Image ()
 {
-   [[AT-SPI image mixin]]
-   eo_prefix: elm_interface_atspi_image;
+   [[Accessible image mixin]]
data: null;
methods {
   @property extents @protected {
diff --git a/src/lib/elementary/efl_ui_image.c 
b/src/lib/elementary/efl_ui_image.c
index c62ae92f3a..b8f0486241 100644
--- a/src/lib/elementary/efl_ui_image.c
+++ b/src/lib/elementary/efl_ui_image.c
@@ -2,7 +2,7 @@
 # include "elementary_config.h"
 #endif
 
-#define ELM_INTERFACE_ATSPI_IMAGE_PROTECTED
+#define EFL_ACCESS_IMAGE_PROTECTED
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_WIDGET_ACTION_PROTECTED
 #define EFL_CANVAS_LAYOUT_CALC_PROTECTED
@@ -15

[EGIT] [core/efl] master 02/02: elm: rename Elm.Interface.Atspi_Action => Efl.Access.Action

2017-09-18 Thread Lukasz Stanislawski
jpeg pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=fcbdea364eb439d2708f13f781fe1a23e6311d05

commit fcbdea364eb439d2708f13f781fe1a23e6311d05
Author: Lukasz Stanislawski 
Date:   Tue Sep 19 11:19:21 2017 +0900

elm: rename Elm.Interface.Atspi_Action => Efl.Access.Action

Reviewers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5166
---
 src/Makefile_Elementary.am |  4 +--
 ...nterface_atspi_action.c => efl_access_action.c} |  8 ++---
 ...erface_atspi_action.eo => efl_access_action.eo} |  5 ++-
 src/lib/elementary/elementary_js.cc|  4 +--
 src/lib/elementary/elm_atspi_bridge.c  | 38 +++---
 .../elementary/elm_interface_atspi_widget_action.c | 14 
 .../elm_interface_atspi_widget_action.eo   | 12 +++
 src/lib/elementary/elm_interfaces.h|  4 +--
 src/tests/elementary/elm_test_button.c |  4 +--
 9 files changed, 46 insertions(+), 47 deletions(-)

diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am
index 975a35ce01..119668dcd6 100644
--- a/src/Makefile_Elementary.am
+++ b/src/Makefile_Elementary.am
@@ -29,7 +29,7 @@ elm_public_eolian_files = \
lib/elementary/efl_ui_image.eo \
lib/elementary/elm_index.eo \
lib/elementary/elm_interface_atspi_accessible.eo \
-   lib/elementary/elm_interface_atspi_action.eo \
+   lib/elementary/efl_access_action.eo \
lib/elementary/efl_access_component.eo \
lib/elementary/elm_interface_atspi_text_editable.eo \
lib/elementary/efl_access_image.eo \
@@ -612,7 +612,7 @@ lib_elementary_libelementary_la_SOURCES = \
lib/elementary/efl_ui_image.c \
lib/elementary/elm_index.c \
lib/elementary/elm_interface_atspi_accessible.c \
-   lib/elementary/elm_interface_atspi_action.c \
+   lib/elementary/efl_access_action.c \
lib/elementary/efl_access_component.c \
lib/elementary/elm_interface_atspi_text_editable.c \
lib/elementary/efl_access_image.c \
diff --git a/src/lib/elementary/elm_interface_atspi_action.c 
b/src/lib/elementary/efl_access_action.c
similarity index 52%
rename from src/lib/elementary/elm_interface_atspi_action.c
rename to src/lib/elementary/efl_access_action.c
index 551f1cadb6..92b62f8b9f 100644
--- a/src/lib/elementary/elm_interface_atspi_action.c
+++ b/src/lib/elementary/efl_access_action.c
@@ -2,22 +2,22 @@
   #include "elementary_config.h"
 #endif
 
-#define ELM_INTERFACE_ATSPI_ACTION_PROTECTED
+#define EFL_ACCESS_ACTION_PROTECTED
 
 #include 
 #include "elm_widget.h"
 #include "elm_priv.h"
 
 EOLIAN const char *
-_elm_interface_atspi_action_localized_name_get(Eo *obj, void *pd EINA_UNUSED, 
int id)
+_efl_access_action_localized_name_get(Eo *obj, void *pd EINA_UNUSED, int id)
 {
const char *ret = NULL;
 
-   ret = elm_interface_atspi_action_name_get(obj, id);
+   ret = efl_access_action_name_get(obj, id);
 #ifdef ENABLE_NLS
ret = gettext(ret);
 #endif
return ret;
 }
 
-#include "elm_interface_atspi_action.eo.c"
+#include "efl_access_action.eo.c"
diff --git a/src/lib/elementary/elm_interface_atspi_action.eo 
b/src/lib/elementary/efl_access_action.eo
similarity index 94%
rename from src/lib/elementary/elm_interface_atspi_action.eo
rename to src/lib/elementary/efl_access_action.eo
index 9cdb190c6a..577464cc93 100644
--- a/src/lib/elementary/elm_interface_atspi_action.eo
+++ b/src/lib/elementary/efl_access_action.eo
@@ -1,7 +1,6 @@
-mixin Elm.Interface.Atspi_Action ()
+mixin Efl.Access.Action ()
 {
-   [[AT-SPI action mixin]]
-   eo_prefix: elm_interface_atspi_action;
+   [[Accessible action mixin]]
data: null;
methods {
   @property name @protected @pure_virtual {
diff --git a/src/lib/elementary/elementary_js.cc 
b/src/lib/elementary/elementary_js.cc
index 1d3d165384..93744c8363 100644
--- a/src/lib/elementary/elementary_js.cc
+++ b/src/lib/elementary/elementary_js.cc
@@ -36,7 +36,7 @@
 
 EAPI void register_elm_atspi_app_object(v8::Handle global, 
v8::Isolate* isolate);
 EAPI void register_elm_interface_atspi_accessible(v8::Handle 
global, v8::Isolate* isolate);
-EAPI void register_elm_interface_atspi_action(v8::Handle global, 
v8::Isolate* isolate);
+EAPI void register_efl_access_action(v8::Handle global, 
v8::Isolate* isolate);
 EAPI void register_efl_access_component(v8::Handle global, 
v8::Isolate* isolate);
 EAPI void register_elm_interface_atspi_text_editable(v8::Handle 
global, v8::Isolate* isolate);
 EAPI void register_elm_interface_atspi_image(v8::Handle global, 
v8::Isolate* isolate);
@@ -201,7 +201,7 @@ void init(v8::Handle exports)
   elm::register_image(exports, v8::Isolate::GetCurrent());
   elm::register_index(exports, v8::Isolate::GetCurrent());
   ::register_elm_interface_atspi_accessible(exports, 
v8::Isolate::GetCurrent());
-  ::register_e

[EGIT] [core/efl] master 01/02: elm: rename Elm.Interface.Atspi.Selection => Efl.Access.Selection

2017-09-18 Thread Lukasz Stanislawski
jpeg pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=3e6cc83369a269172deffe0ec8c23152880cd246

commit 3e6cc83369a269172deffe0ec8c23152880cd246
Author: Lukasz Stanislawski 
Date:   Tue Sep 19 11:18:22 2017 +0900

elm: rename Elm.Interface.Atspi.Selection => Efl.Access.Selection

Reviewers: jpeg, cedric

Differential Revision: https://phab.enlightenment.org/D5165
---
 src/Makefile_Elementary.am |  4 +--
 ...ce_atspi_selection.c => efl_access_selection.c} |  4 +--
 ..._atspi_selection.eo => efl_access_selection.eo} |  5 ++-
 src/lib/elementary/elementary_js.cc|  4 +--
 src/lib/elementary/elm_atspi_bridge.c  | 40 +++---
 src/lib/elementary/elm_gengrid.c   | 18 +-
 src/lib/elementary/elm_gengrid.eo  | 18 +-
 src/lib/elementary/elm_genlist.c   | 18 +-
 src/lib/elementary/elm_genlist.eo  | 18 +-
 src/lib/elementary/elm_interfaces.h|  4 +--
 src/lib/elementary/elm_list.c  | 18 +-
 src/lib/elementary/elm_list.eo | 18 +-
 src/lib/elementary/elm_menu.c  | 14 
 src/lib/elementary/elm_menu.eo |  6 ++--
 src/lib/elementary/elm_menu_item.eo|  6 ++--
 src/lib/elementary/elm_toolbar.c   | 18 +-
 src/lib/elementary/elm_toolbar.eo  | 18 +-
 src/tests/elementary/elm_test_list.c   |  2 +-
 18 files changed, 116 insertions(+), 117 deletions(-)

diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am
index d192a136c5..975a35ce01 100644
--- a/src/Makefile_Elementary.am
+++ b/src/Makefile_Elementary.am
@@ -33,7 +33,7 @@ elm_public_eolian_files = \
lib/elementary/efl_access_component.eo \
lib/elementary/elm_interface_atspi_text_editable.eo \
lib/elementary/efl_access_image.eo \
-   lib/elementary/elm_interface_atspi_selection.eo \
+   lib/elementary/efl_access_selection.eo \
lib/elementary/elm_interface_atspi_text.eo \
lib/elementary/efl_access_value.eo \
lib/elementary/elm_interface_atspi_widget_action.eo \
@@ -616,7 +616,7 @@ lib_elementary_libelementary_la_SOURCES = \
lib/elementary/efl_access_component.c \
lib/elementary/elm_interface_atspi_text_editable.c \
lib/elementary/efl_access_image.c \
-   lib/elementary/elm_interface_atspi_selection.c \
+   lib/elementary/efl_access_selection.c \
lib/elementary/elm_interface_atspi_text.c \
lib/elementary/efl_access_value.c \
lib/elementary/elm_interface_atspi_widget_action.c \
diff --git a/src/lib/elementary/elm_interface_atspi_selection.c 
b/src/lib/elementary/efl_access_selection.c
similarity index 62%
rename from src/lib/elementary/elm_interface_atspi_selection.c
rename to src/lib/elementary/efl_access_selection.c
index 8129ae6b28..f239a04dea 100644
--- a/src/lib/elementary/elm_interface_atspi_selection.c
+++ b/src/lib/elementary/efl_access_selection.c
@@ -2,10 +2,10 @@
   #include "elementary_config.h"
 #endif
 
-#define EFL_ACCESS_VALUE_PROTECTED
+#define ELM_INTERFACE_ATSPI_VALUE_PROTECTED
 
 #include 
 #include "elm_widget.h"
 #include "elm_priv.h"
 
-#include "elm_interface_atspi_selection.eo.c"
+#include "efl_access_selection.eo.c"
diff --git a/src/lib/elementary/elm_interface_atspi_selection.eo 
b/src/lib/elementary/efl_access_selection.eo
similarity index 93%
rename from src/lib/elementary/elm_interface_atspi_selection.eo
rename to src/lib/elementary/efl_access_selection.eo
index d0e60de020..174cf21b2e 100644
--- a/src/lib/elementary/elm_interface_atspi_selection.eo
+++ b/src/lib/elementary/efl_access_selection.eo
@@ -1,7 +1,6 @@
-interface Elm.Interface.Atspi.Selection ()
+interface Efl.Access.Selection ()
 {
-   [[Elementary AT-SPI selection interface]]
-   eo_prefix: elm_interface_atspi_selection;
+   [[Elementary access selection interface]]
methods {
   @property selected_children_count @protected {
  get {
diff --git a/src/lib/elementary/elementary_js.cc 
b/src/lib/elementary/elementary_js.cc
index 7d7343ca32..1d3d165384 100644
--- a/src/lib/elementary/elementary_js.cc
+++ b/src/lib/elementary/elementary_js.cc
@@ -40,7 +40,7 @@ EAPI void 
register_elm_interface_atspi_action(v8::Handle global, v8:
 EAPI void register_efl_access_component(v8::Handle global, 
v8::Isolate* isolate);
 EAPI void register_elm_interface_atspi_text_editable(v8::Handle 
global, v8::Isolate* isolate);
 EAPI void register_elm_interface_atspi_image(v8::Handle global, 
v8::Isolate* isolate);
-EAPI void register_elm_interface_atspi_selection(v8::Handle 
global, v8::Isolate* isolate);
+EAPI void register_efl_access_selection(v8::Handle global, 
v8::Isolate* isolate);
 EAPI void regist

[EGIT] [core/efl] master 06/21: elm: rename Elm.Interface.Atspi.Text => Efl.Access.Text

2017-09-26 Thread Lukasz Stanislawski
jpeg pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=b3ffd78237282883c327082c841205f2f0643642

commit b3ffd78237282883c327082c841205f2f0643642
Author: Lukasz Stanislawski 
Date:   Mon Sep 25 17:15:44 2017 +0900

elm: rename Elm.Interface.Atspi.Text => Efl.Access.Text

Reviewers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5167
---
 src/Makefile_Elementary.am |  10 +-
 ..._text_editable.c => efl_access_editable_text.c} |   4 +-
 ...ext_editable.eo => efl_access_editable_text.eo} |   5 +-
 ...lm_interface_atspi_text.c => efl_access_text.c} |   6 +-
 ..._interface_atspi_text.eo => efl_access_text.eo} |  27 ++--
 src/lib/elementary/efl_access_text.h   |  19 +++
 src/lib/elementary/efl_ui_text.c   |  94 +++---
 src/lib/elementary/efl_ui_text.eo  |  46 +++
 src/lib/elementary/elm_atspi_bridge.c  | 138 ++---
 src/lib/elementary/elm_code_widget.eo  |   2 +-
 src/lib/elementary/elm_entry.c | 100 +++
 src/lib/elementary/elm_entry.eo|  46 +++
 src/lib/elementary/elm_interface_atspi_text.h  |  19 ---
 src/lib/elementary/elm_interfaces.h|   6 +-
 src/tests/elementary/elm_test_entry.c  |  68 +-
 15 files changed, 294 insertions(+), 296 deletions(-)

diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am
index e6a079555b..269b7104dc 100644
--- a/src/Makefile_Elementary.am
+++ b/src/Makefile_Elementary.am
@@ -31,10 +31,10 @@ elm_public_eolian_files = \
lib/elementary/elm_interface_atspi_accessible.eo \
lib/elementary/efl_access_action.eo \
lib/elementary/efl_access_component.eo \
-   lib/elementary/elm_interface_atspi_text_editable.eo \
+   lib/elementary/efl_access_editable_text.eo \
lib/elementary/efl_access_image.eo \
lib/elementary/efl_access_selection.eo \
-   lib/elementary/elm_interface_atspi_text.eo \
+   lib/elementary/efl_access_text.eo \
lib/elementary/efl_access_value.eo \
lib/elementary/elm_interface_atspi_widget_action.eo \
lib/elementary/efl_access_window.eo \
@@ -224,7 +224,7 @@ includesunstable_HEADERS = \
lib/elementary/elm_gen_common.h \
lib/elementary/elm_atspi_bridge.h \
lib/elementary/elm_interface_atspi_accessible.h \
-   lib/elementary/elm_interface_atspi_text.h \
+   lib/elementary/efl_access_text.h \
lib/elementary/elm_interface_atspi_widget_action.h \
lib/elementary/efl_access_window.h \
lib/elementary/elm_interface_fileselector.h \
@@ -618,10 +618,10 @@ lib_elementary_libelementary_la_SOURCES = \
lib/elementary/elm_interface_atspi_accessible.c \
lib/elementary/efl_access_action.c \
lib/elementary/efl_access_component.c \
-   lib/elementary/elm_interface_atspi_text_editable.c \
+   lib/elementary/efl_access_editable_text.c \
lib/elementary/efl_access_image.c \
lib/elementary/efl_access_selection.c \
-   lib/elementary/elm_interface_atspi_text.c \
+   lib/elementary/efl_access_text.c \
lib/elementary/efl_access_value.c \
lib/elementary/elm_interface_atspi_widget_action.c \
lib/elementary/efl_access_window.c \
diff --git a/src/lib/elementary/elm_interface_atspi_text_editable.c 
b/src/lib/elementary/efl_access_editable_text.c
similarity index 56%
rename from src/lib/elementary/elm_interface_atspi_text_editable.c
rename to src/lib/elementary/efl_access_editable_text.c
index 6f7ec68075..bd03d6613e 100644
--- a/src/lib/elementary/elm_interface_atspi_text_editable.c
+++ b/src/lib/elementary/efl_access_editable_text.c
@@ -2,10 +2,10 @@
   #include "elementary_config.h"
 #endif
 
-#define ELM_INTERFACE_ATSPI_TEXT_EDITABLE_PROTECTED
+#define EFL_ACCESS_EDITABLE_TEXT_PROTECTED
 
 #include 
 #include "elm_widget.h"
 #include "elm_priv.h"
 
-#include "elm_interface_atspi_text_editable.eo.c"
+#include "efl_access_editable_text.eo.c"
diff --git a/src/lib/elementary/elm_interface_atspi_text_editable.eo 
b/src/lib/elementary/efl_access_editable_text.eo
similarity index 92%
rename from src/lib/elementary/elm_interface_atspi_text_editable.eo
rename to src/lib/elementary/efl_access_editable_text.eo
index 7bed45bee7..21c823b3f0 100644
--- a/src/lib/elementary/elm_interface_atspi_text_editable.eo
+++ b/src/lib/elementary/efl_access_editable_text.eo
@@ -1,7 +1,6 @@
-interface Elm.Interface.Atspi.Text.Editable ()
+interface Efl.Access.Editable.Text ()
 {
-   [[Elementary AT-SPI text editable interface]]
-   eo_prefix: elm_interface_atspi_text_editable;
+   [[Elementary editable text interface]]
methods {
   @property content @protected {
  [[Editable content property]]
diff --git a/src/lib/elementary/elm_interfac

Re: [E-devel] Difference between selected_child_deselect and child_deselect on Elm.Interface.Atspi.Selection

2016-10-26 Thread Lukasz Stanislawski
The difference is indexing, first indexes on only selected children, 
second one all children.

This is a part of the protocol, I assume it was made to simplify 
managing of selected elements
by Orca screen reader.

I agree naming is a bit confusing however it matches one from libatspi:
https://developer.gnome.org/libatspi/stable/libatspi-atspi-selection.html#atspi-selection-deselect-selected-child

BR
Lukasz

W dniu 26.10.2016 o 17:10, Stefan Schmidt pisze:
> ping
>
> On 21/10/16 17:30, Stefan Schmidt wrote:
>> Hello.
>>
>> While adding some more docs to elm_interface_atspi_selection.eo I
>> stumbled over these two methods and wondered where the difference is.
>> Both take the child index as parameter and unselect the child.
>>
>> Got this functionality somehow duplicated or do I miss something?
>>
>> regards
>> Stefan Schmidt
> --
> The Command Line: Reinvented for Modern Developers
> Did the resurgence of CLI tooling catch you by surprise?
> Reconnect with the command line and become more productive.
> Learn the new .NET and ASP.NET CLI. Get your free copy!
> http://sdm.link/telerik
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
>
>


--
The Command Line: Reinvented for Modern Developers
Did the resurgence of CLI tooling catch you by surprise?
Reconnect with the command line and become more productive. 
Learn the new .NET and ASP.NET CLI. Get your free copy!
http://sdm.link/telerik
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/efl] master 02/04: elementary: implement destructor in atspi mixin

2016-11-14 Thread Lukasz Stanislawski
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=93b509d66450418e66cf36ca06add65100f3afb2

commit 93b509d66450418e66cf36ca06add65100f3afb2
Author: Lukasz Stanislawski 
Date:   Mon Nov 14 11:10:57 2016 -0800

elementary: implement destructor in atspi mixin

Summary:
Make atspi mixin inherit from Efl.Interface class and add Efl.Object
as it extensions class to gain acccess to destructor function.

This allow to better share code between implementations and avoid possible
mistakes during accessibilityt implementations.

Reviewers: cedric, jpeg, raster, kimcinoo

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4393

Signed-off-by: Cedric BAIL 
---
 src/lib/elementary/elm_interface_atspi_accessible.c  | 11 +++
 src/lib/elementary/elm_interface_atspi_accessible.eo |  5 -
 src/lib/elementary/elm_widget.c  |  9 -
 3 files changed, 15 insertions(+), 10 deletions(-)

diff --git a/src/lib/elementary/elm_interface_atspi_accessible.c 
b/src/lib/elementary/elm_interface_atspi_accessible.c
index 22afbaa..09ddea8 100644
--- a/src/lib/elementary/elm_interface_atspi_accessible.c
+++ b/src/lib/elementary/elm_interface_atspi_accessible.c
@@ -598,4 +598,15 @@ _elm_interface_atspi_accessible_type_set(Eo *obj, 
Elm_Interface_Atspi_Accessible
pd->type = val;
 }
 
+EOLIAN void
+_elm_interface_atspi_accessible_efl_object_destructor(Eo *obj, 
Elm_Interface_Atspi_Accessible_Data *pd)
+{
+   eina_stringshare_del(pd->name);
+   eina_stringshare_del(pd->description);
+   eina_stringshare_del(pd->translation_domain);
+   elm_atspi_relation_set_free(pd->relations);
+
+   efl_destructor(efl_super(obj, ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN));
+}
+
 #include "elm_interface_atspi_accessible.eo.c"
diff --git a/src/lib/elementary/elm_interface_atspi_accessible.eo 
b/src/lib/elementary/elm_interface_atspi_accessible.eo
index 15a0c5a..5c5df21 100644
--- a/src/lib/elementary/elm_interface_atspi_accessible.eo
+++ b/src/lib/elementary/elm_interface_atspi_accessible.eo
@@ -235,7 +235,7 @@ struct Elm.Atspi.Relation
 
 type Elm.Atspi.Relation_Set: list; [[Elementary 
AT-SPI relation set type]]
 
-mixin Elm.Interface.Atspi_Accessible ()
+mixin Elm.Interface.Atspi_Accessible (Efl.Interface, Efl.Object)
 {
[[AT-SPI accessible mixin]]
eo_prefix: elm_interface_atspi_accessible;
@@ -432,6 +432,9 @@ mixin Elm.Interface.Atspi_Accessible ()
  }
   }
}
+   implements {
+  Efl.Object.destructor;
+   }
events {
   property,changed: string; [[Called when roperty has changed]]
   children,changed: Elm.Atspi.Event.Children_Changed.Data; [[Called when 
children have changed]]
diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index f7f2def..5abcebf 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -4595,11 +4595,6 @@ _elm_widget_item_efl_object_destructor(Eo *eo_item, 
Elm_Widget_Item_Data *item)
  }
eina_hash_free(item->labels);
 
-   elm_interface_atspi_accessible_description_set(eo_item, NULL);
-   elm_interface_atspi_accessible_name_set(eo_item, NULL);
-   elm_interface_atspi_accessible_translation_domain_set(eo_item, NULL);
-   elm_interface_atspi_accessible_relationships_clear(eo_item);
-
elm_interface_atspi_accessible_removed(eo_item);
 
EINA_MAGIC_SET(item, EINA_MAGIC_NONE);
@@ -5853,10 +5848,6 @@ EOLIAN static void
 _elm_widget_efl_object_destructor(Eo *obj, Elm_Widget_Smart_Data *sd 
EINA_UNUSED)
 {
sd->on_destroy = EINA_TRUE;
-   elm_interface_atspi_accessible_description_set(obj, NULL);
-   elm_interface_atspi_accessible_name_set(obj, NULL);
-   elm_interface_atspi_accessible_translation_domain_set(obj, NULL);
-   elm_interface_atspi_accessible_relationships_clear(obj);
efl_destructor(efl_super(obj, ELM_WIDGET_CLASS));
sd->on_destroy = EINA_FALSE;
 

-- 




[EGIT] [core/elementary] master 01/01: atspi: move component interface implementation to separate file.

2014-03-23 Thread Lukasz Stanislawski
raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=60343f93caf47a306748c4bfe000e8c995cb62d4

commit 60343f93caf47a306748c4bfe000e8c995cb62d4
Author: Lukasz Stanislawski 
Date:   Mon Mar 24 15:19:06 2014 +0900

atspi: move component interface implementation to separate file.

Summary: After eolian integration component interface declaration was moved 
to separate  ".eo" file. However its implemetation was not. This patch adds new 
"elm_interface_atspi_compoment.c" with interface implementation.

Reviewers: raster, seoz, JackDanielZ

Reviewed By: JackDanielZ

Differential Revision: https://phab.enlightenment.org/D648
---
 src/lib/Makefile.am |  1 +
 src/lib/elm_atspi_object.c  | 49 ---
 src/lib/elm_interface_atspi_component.c | 60 +
 3 files changed, 61 insertions(+), 49 deletions(-)

diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index 10ed4b7..923f1fc 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -449,6 +449,7 @@ elm_hover.c \
 elm_icon.c \
 elm_image.c \
 elm_index.c \
+elm_interface_atspi_component.c \
 elm_interface_fileselector.c \
 elm_interface_scrollable.c \
 elm_inwin.c \
diff --git a/src/lib/elm_atspi_object.c b/src/lib/elm_atspi_object.c
index 6c90c7c..75ca067 100644
--- a/src/lib/elm_atspi_object.c
+++ b/src/lib/elm_atspi_object.c
@@ -394,54 +394,6 @@ 
_elm_atspi_object_elm_interface_atspi_component_alpha_get(Eo *obj, void *_pd EIN
return (double)alpha / 255.0;
 }
 
-// Component interface
-EOLIAN static void
-_elm_interface_atspi_component_position_get(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED,int *x, int *y, AtspiCoordType type)
-{
-   eo_do(obj, elm_interface_atspi_component_extents_get(x, y, NULL, NULL, 
type));
-}
-
-EOLIAN static Eina_Bool
-_elm_interface_atspi_component_position_set(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, int x, int y, AtspiCoordType type)
-{
-   Eina_Bool ret = EINA_FALSE;
-   int c_w, c_h;
-
-   eo_do(obj, elm_interface_atspi_component_extents_get(NULL, NULL, &c_w, 
&c_h, type));
-   eo_do(obj, elm_interface_atspi_component_extents_set(x, y, c_w, c_h, type, 
&ret));
-   return ret;
-}
-
-EOLIAN static Eina_Bool
-_elm_interface_atspi_component_size_set(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, int w, int h)
-{
-   Eina_Bool ret = EINA_FALSE;
-   int c_x, c_y;
-
-   eo_do(obj, elm_interface_atspi_component_extents_get(&c_x, &c_y, NULL, 
NULL, ATSPI_COORD_TYPE_WINDOW));
-   eo_do(obj, elm_interface_atspi_component_extents_set(c_x, c_y, w, h, 
ATSPI_COORD_TYPE_WINDOW, &ret));
-   return ret;
-}
-
-EOLIAN static void
-_elm_interface_atspi_component_size_get(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, int *w, int *h)
-{
-   eo_do(obj, elm_interface_atspi_component_extents_get(NULL,  NULL, w, h, 
ATSPI_COORD_TYPE_WINDOW));
-}
-
-EOLIAN static Eina_Bool
-_elm_interface_atspi_component_contains(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED,
-  int x, int y, AtspiCoordType type)
-{
-   int w_x, w_y, w_w, w_h;
-
-   if (!eo_do(obj, elm_interface_atspi_component_extents_get(&w_x, &w_y, &w_w, 
&w_h, type)))
-  return EINA_FALSE;
-
-   if ((x >= w_x) && (x <= w_x + w_w) && (y >= w_y) && (y <= w_y + w_h))
- return EINA_TRUE;
-   return EINA_FALSE;
-}
 
 #include "elm_interface_atspi_window.eo.c"
 
@@ -867,5 +819,4 @@ void _elm_atspi_object_global_callback_del(Eo_Event_Cb cb)
  }
 }
 
-#include "elm_interface_atspi_component.eo.c"
 #include "elm_atspi_object.eo.c"
diff --git a/src/lib/elm_interface_atspi_component.c 
b/src/lib/elm_interface_atspi_component.c
new file mode 100644
index 000..6c1f351
--- /dev/null
+++ b/src/lib/elm_interface_atspi_component.c
@@ -0,0 +1,60 @@
+#ifdef HAVE_CONFIG_H
+# include "elementary_config.h"
+#endif
+
+#include 
+
+#include "elm_priv.h"
+#include "elm_interface_atspi_component.eo.h"
+
+#include "atspi/atspi-constants.h"
+
+EOLIAN static void
+_elm_interface_atspi_component_position_get(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED,int *x, int *y, AtspiCoordType type)
+{
+   eo_do(obj, elm_interface_atspi_component_extents_get(x, y, NULL, NULL, 
type));
+}
+
+EOLIAN static Eina_Bool
+_elm_interface_atspi_component_position_set(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, int x, int y, AtspiCoordType type)
+{
+   Eina_Bool ret = EINA_FALSE;
+   int c_w, c_h;
+
+   eo_do(obj, elm_interface_atspi_component_extents_get(NULL, NULL, &c_w, 
&c_h, type));
+   eo_do(obj, elm_interface_atspi_component_extents_set(x, y, c_w, c_h, type, 
&ret));
+   return ret;
+}
+
+EOLIAN static Eina_Bool
+_elm_interface_atspi_component_size_set(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, int w, int h)
+{
+   Eina_Bool ret = EINA_FALSE;
+   int c_x, c_y;
+
+ 

[EGIT] [core/efl] master 02/03: eo: fix broken children iterator, remove redundant fields.

2014-04-17 Thread Lukasz Stanislawski
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=80b1ca8e4373534ad9ac848cdb7f34862cfee017

commit 80b1ca8e4373534ad9ac848cdb7f34862cfee017
Author: Lukasz Stanislawski 
Date:   Thu Apr 17 19:36:10 2014 +0200

eo: fix broken children iterator, remove redundant fields.

@fix

Summary: Tests added.

Reviewers: raster, JackDanielZ, tasn

CC: cedric

Differential Revision: https://phab.enlightenment.org/D763

Signed-off-by: Cedric Bail 
---
 src/Makefile_Eo.am  | 10 +
 src/lib/eo/eo_base_class.c  |  2 +-
 src/lib/eo/eo_private.h |  2 -
 src/tests/eo/children/children_main.c   | 72 +
 src/tests/eo/children/children_simple.c | 22 ++
 src/tests/eo/children/children_simple.h |  7 
 6 files changed, 112 insertions(+), 3 deletions(-)

diff --git a/src/Makefile_Eo.am b/src/Makefile_Eo.am
index 7c2b093..cd5e6b6 100644
--- a/src/Makefile_Eo.am
+++ b/src/Makefile_Eo.am
@@ -38,8 +38,18 @@ tests/eo/test_function_overrides \
 tests/eo/test_interface \
 tests/eo/test_mixin \
 tests/eo/test_signals \
+tests/eo/test_children \
 tests/eo/eo_suite
 
+tests_eo_test_children_SOURCES = \
+tests/eo/children/children_main.c \
+tests/eo/children/children_simple.c \
+tests/eo/children/children_simple.h
+tests_eo_test_children_CPPFLAGS = -I$(top_builddir)/src/lib/efl @EO_CFLAGS@
+tests_eo_test_children_LDADD = @USE_EO_LIBS@
+tests_eo_test_children_DEPENDENCIES = @USE_EO_INTERNAL_LIBS@
+TESTS += tests/eo/test_children
+
 tests_eo_test_access_SOURCES = \
 tests/eo/access/access_inherit.c \
 tests/eo/access/access_inherit.h \
diff --git a/src/lib/eo/eo_base_class.c b/src/lib/eo/eo_base_class.c
index b1bd8b2..483e390 100644
--- a/src/lib/eo/eo_base_class.c
+++ b/src/lib/eo/eo_base_class.c
@@ -251,7 +251,7 @@ _children_iterator_new(Eo *obj_id, void *class_data)
if (!it) return NULL;
 
EINA_MAGIC_SET(&it->iterator, EINA_MAGIC_ITERATOR);
-   it->current = obj->children;
+   it->current = pd->children;
it->obj = _eo_ref(obj);
it->obj_id = obj_id;
 
diff --git a/src/lib/eo/eo_private.h b/src/lib/eo/eo_private.h
index 8648d02..6cb12c4 100644
--- a/src/lib/eo/eo_private.h
+++ b/src/lib/eo/eo_private.h
@@ -86,8 +86,6 @@ struct _Eo_Base
 struct _Eo_Object
 {
  Eo_Base header;
- Eo *parent;
- Eina_List *children;
  const _Eo_Class *klass;
 #ifdef EO_DEBUG
  Eina_Inlist *xrefs;
diff --git a/src/tests/eo/children/children_main.c 
b/src/tests/eo/children/children_main.c
new file mode 100644
index 000..0e0832f
--- /dev/null
+++ b/src/tests/eo/children/children_main.c
@@ -0,0 +1,72 @@
+#ifdef HAVE_CONFIG_H
+# include 
+#endif
+
+#include "Eo.h"
+
+#include "../eunit_tests.h"
+#include "children_simple.h"
+
+
+#define CHECK_ITER_DATA(iter, data, expected_data) \
+   fail_if(!eina_iterator_next(iter, &(data))); \
+   fail_if(expected_data != data);
+
+int
+main(int argc, char *argv[])
+{
+   (void) argc;
+   (void) argv;
+   Eina_Iterator *iter = NULL;
+   void *chld;
+
+   eo_init();
+
+   Eo *parent = eo_add(SIMPLE_CLASS, NULL);
+
+   Eo *child1 = eo_add(SIMPLE_CLASS, parent);
+   Eo *child2 = eo_add(SIMPLE_CLASS, parent);
+   Eo *child3 = eo_add(SIMPLE_CLASS, parent);
+
+   eo_do(parent, iter = eo_children_iterator_new());
+   fail_if(!iter);
+
+   CHECK_ITER_DATA(iter, chld, child1);
+   CHECK_ITER_DATA(iter, chld, child2);
+   CHECK_ITER_DATA(iter, chld, child3);
+   fail_if(eina_iterator_next(iter, &chld));
+
+   eina_iterator_free(iter);
+
+   eo_del(child2);
+
+   eo_do(parent, iter = eo_children_iterator_new());
+   fail_if(!iter);
+
+   CHECK_ITER_DATA(iter, chld, child1);
+   CHECK_ITER_DATA(iter, chld, child3);
+   fail_if(eina_iterator_next(iter, &chld));
+
+   eina_iterator_free(iter);
+
+
+   eo_del(child1);
+
+   eo_do(parent, iter = eo_children_iterator_new());
+   fail_if(!iter);
+
+   CHECK_ITER_DATA(iter, chld, child3);
+   fail_if(eina_iterator_next(iter,  &chld));
+   eina_iterator_free(iter);
+
+
+   eo_del(child3);
+
+   eo_do(parent, iter = eo_children_iterator_new());
+   fail_if(iter);
+
+   eo_unref(parent);
+
+   eo_shutdown();
+   return 0;
+}
diff --git a/src/tests/eo/children/children_simple.c 
b/src/tests/eo/children/children_simple.c
new file mode 100644
index 000..cd351d3
--- /dev/null
+++ b/src/tests/eo/children/children_simple.c
@@ -0,0 +1,22 @@
+#ifdef HAVE_CONFIG_H
+# include 
+#endif
+
+#include "Eo.h"
+#include "children_simple.h"
+
+#define MY_CLASS SIMPLE_CLASS
+
+static const Eo_Class_Description class_desc = {
+ EO_VERSION,
+ "Simple",
+ EO_CLASS_TYPE_REGULAR,
+ EO_CLASS_DESCRIPTION_NOOPS(),
+ NULL,
+ 0,
+ NULL,
+ NULL
+};
+
+EO_DEFINE_CLASS(simple_class_get, &class_desc, EO_CLASS, NULL)
+
diff --git a/src/tests/eo/children/children_simple.h 

[EGIT] [core/elementary] master 01/01: config: fix crash when finding key bidings

2014-04-17 Thread Lukasz Stanislawski
cedric pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=a2243bf1f95a44413afe9732175a61ca7eee538d

commit a2243bf1f95a44413afe9732175a61ca7eee538d
Author: Lukasz Stanislawski 
Date:   Thu Apr 17 19:46:15 2014 +0200

config: fix crash when finding key bidings

Summary: Crash occured when config was reloaded and hash data become 
invalid.

Reviewers: raster, seoz, Hermet

Differential Revision: https://phab.enlightenment.org/D750

Signed-off-by: Cedric Bail 
---
 src/lib/elm_config.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/lib/elm_config.c b/src/lib/elm_config.c
index 82a08f0..c1eabd4 100644
--- a/src/lib/elm_config.c
+++ b/src/lib/elm_config.c
@@ -28,6 +28,7 @@ Eina_List  *_font_overlays_del = NULL;
 Eina_List  *_color_overlays_del = NULL;
 
 static Ecore_Poller *_elm_cache_flush_poller = NULL;
+static void _elm_config_key_binding_hash(void);
 
 Eina_Hash *_elm_key_bindings = NULL;
 
@@ -224,6 +225,7 @@ _prop_config_get(void)
_elm_rescale();
_elm_recache();
_elm_clouseau_reload();
+   _elm_config_key_binding_hash();
_elm_win_access(_elm_config->access_mode);
ecore_event_add(ELM_EVENT_CONFIG_ALL_CHANGED, NULL, NULL, NULL);
return EINA_TRUE;
@@ -2178,7 +2180,7 @@ _env_get(void)
if (s) _elm_config->magnifier_scale = _elm_atof(s);
 }
 
-void
+static void
 _elm_config_key_binding_hash(void)
 {
Elm_Config_Bindings_Widget *wb;

-- 




[EGIT] [core/elementary] master 01/01: atspi: change a method of calculating atspi VISIBLE state.

2014-04-20 Thread Lukasz Stanislawski
raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=7ad321b7b5c43a6325f1297a43040716c6712f07

commit 7ad321b7b5c43a6325f1297a43040716c6712f07
Author: Lukasz Stanislawski 
Date:   Mon Apr 21 12:55:28 2014 +0900

atspi: change a method of calculating atspi VISIBLE state.
---
 src/lib/elm_interface_atspi_widget.c | 13 +++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_interface_atspi_widget.c 
b/src/lib/elm_interface_atspi_widget.c
index f408640..5f2c3ee 100644
--- a/src/lib/elm_interface_atspi_widget.c
+++ b/src/lib/elm_interface_atspi_widget.c
@@ -125,13 +125,22 @@ EOLIAN static Elm_Atspi_State_Set
 _elm_interface_atspi_widget_elm_interface_atspi_accessible_state_set_get(Eo 
*obj, Elm_Interface_Atspi_Widget_Data *pd EINA_UNUSED)
 {
Elm_Atspi_State_Set states = 0;
+   Evas *evas = NULL;
 
eo_do_super(obj, ELM_INTERFACE_ATSPI_WIDGET_CLASS, states = 
elm_interface_atspi_accessible_state_set_get());
 
if (evas_object_visible_get(obj))
+ STATE_TYPE_SET(states, ELM_ATSPI_STATE_VISIBLE);
+   evas = evas_object_evas_get(obj);
+   if (evas)
  {
-STATE_TYPE_SET(states, ELM_ATSPI_STATE_VISIBLE);
-STATE_TYPE_SET(states, ELM_ATSPI_STATE_SHOWING);
+Evas_Coord x, y, w, h, wx, wy, ww, wh;
+
+evas_output_viewport_get(evas, &x, &y, &w, &h);
+evas_object_geometry_get(obj, &wx, &wy, &ww, &wh);
+if (!(((wx < x) && (wx + ww < x)) || ((wx > x + w) && (wx + ww > x + 
w)) ||
+  ((wy < y) && (wy + wh < y)) || ((wy > y+ h) && (wy + wh > y + 
h
+  STATE_TYPE_SET(states, ELM_ATSPI_STATE_SHOWING);
  }
if (elm_object_focus_get(obj))
  STATE_TYPE_SET(states, ELM_ATSPI_STATE_FOCUSED);

-- 




[EGIT] [core/elementary] master 01/01: atspi: separate atspi mode from access mode.

2014-04-20 Thread Lukasz Stanislawski
raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=a76443453136ccc6749dc0e1c6db4fdc8de28746

commit a76443453136ccc6749dc0e1c6db4fdc8de28746
Author: Lukasz Stanislawski 
Date:   Mon Apr 21 14:58:18 2014 +0900

atspi: separate atspi mode from access mode.

Since elm_access provides its own support for screen reader, access mode
and atspi mode must be separated.

https://phab.enlightenment.org/D726
---
 src/bin/config.c   | 26 ++
 src/lib/elm_atspi_bridge.c |  2 +-
 src/lib/elm_config.c   | 31 +++
 src/lib/elm_config.h   | 43 +++
 src/lib/elm_priv.h |  4 
 src/lib/elm_win.c  |  2 +-
 6 files changed, 106 insertions(+), 2 deletions(-)

diff --git a/src/bin/config.c b/src/bin/config.c
index 830aa56..1c09355 100644
--- a/src/bin/config.c
+++ b/src/bin/config.c
@@ -801,6 +801,20 @@ dbg_change(void *data   EINA_UNUSED,
 }
 
 static void
+atspi_change(void *data   EINA_UNUSED,
+  Evas_Object *obj,
+  void *event_info EINA_UNUSED)
+{
+   Eina_Bool val = elm_check_state_get(obj);
+   Eina_Bool sel = elm_config_atspi_mode_get();
+
+   if (val == sel) return;
+   elm_config_atspi_mode_set(val);
+   elm_config_all_flush();
+   elm_config_save();
+}
+
+static void
 _status_basic(Evas_Object *win,
   Evas_Object *bx0)
 {
@@ -1573,6 +1587,18 @@ _status_config_etc(Evas_Object *win,
 
evas_object_smart_callback_add(ck, "changed", dbg_change, NULL);
 
+   // atspi
+   ck = elm_check_add(win);
+   elm_object_tooltip_text_set(ck, "Set atspi mode");
+   elm_object_text_set(ck, "Enable ATSPI support.");
+   evas_object_size_hint_weight_set(ck, EVAS_HINT_EXPAND, 0.0);
+   evas_object_size_hint_align_set(ck, EVAS_HINT_FILL, 0.5);
+   elm_check_state_set(ck, elm_config_atspi_mode_get());
+   elm_box_pack_end(bx, ck);
+   evas_object_show(ck);
+
+   evas_object_smart_callback_add(ck, "changed", atspi_change, NULL);
+
evas_object_data_set(win, "etc", bx);
 
elm_naviframe_item_simple_push(naviframe, bx);
diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index 429a282..e1b1b22 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -1648,7 +1648,7 @@ _elm_atspi_bridge_init(void)
Eldbus_Message *msg;
Eldbus_Connection *session_bus;
 
-   if (!_init_count && (_elm_config->access_mode != ELM_ACCESS_MODE_OFF))
+   if (!_init_count && (_elm_config->atspi_mode != ELM_ATSPI_MODE_OFF))
  {
 _elm_atspi_init();
 
diff --git a/src/lib/elm_config.c b/src/lib/elm_config.c
index c1eabd4..f80a62b 100644
--- a/src/lib/elm_config.c
+++ b/src/lib/elm_config.c
@@ -586,6 +586,7 @@ _desc_init(void)
ELM_CONFIG_VAL(D, T, audio_mute_alert, T_UCHAR);
ELM_CONFIG_VAL(D, T, audio_mute_all, T_UCHAR);
ELM_CONFIG_LIST(D, T, bindings, _config_bindings_widget_edd);
+   ELM_CONFIG_VAL(D, T, atspi_mode, T_UCHAR);
 #undef T
 #undef D
 #undef T_INT
@@ -808,6 +809,21 @@ void _elm_config_access_set(Eina_Bool is_access)
if (!is_access) _elm_access_shutdown();
 }
 
+Eina_Bool _elm_config_atspi_mode_get(void)
+{
+   return _elm_config->atspi_mode;
+}
+
+void _elm_config_atspi_mode_set(Eina_Bool is_enabled)
+{
+   is_enabled = !!is_enabled;
+   if (_elm_config->atspi_mode == is_enabled) return;
+   _elm_config->atspi_mode = is_enabled;
+
+   if (!is_enabled) _elm_atspi_bridge_shutdown();
+   else _elm_atspi_bridge_init();
+}
+
 Eina_Bool _elm_config_selection_unfocused_clear_get(void)
 {
return _elm_config->selection_clear_enable;
@@ -1576,6 +1592,7 @@ _config_load(void)
_elm_config->audio_mute_input = 0;
_elm_config->audio_mute_alert = 0;
_elm_config->audio_mute_all = 0;
+   _elm_config->atspi_mode = ELM_ATSPI_MODE_OFF;
 }
 
 static const char *
@@ -2178,6 +2195,8 @@ _env_get(void)
if (s) _elm_config->magnifier_enable = !!atoi(s);
s = getenv("ELM_MAGNIFIER_SCALE");
if (s) _elm_config->magnifier_scale = _elm_atof(s);
+   s = getenv("ELM_ATSPI_MODE");
+   if (s) _elm_config->atspi_mode = ELM_ATSPI_MODE_ON;
 }
 
 static void
@@ -2424,6 +2443,18 @@ elm_config_access_set(Eina_Bool is_access)
 }
 
 EAPI Eina_Bool
+elm_config_atspi_mode_get(void)
+{
+   return _elm_config_atspi_mode_get();
+}
+
+EAPI void
+elm_config_atspi_mode_set(Eina_Bool is_enable)
+{
+   _elm_config_atspi_mode_set(is_enable);
+}
+
+EAPI Eina_Bool
 elm_config_selection_unfocused_clear_get(void)
 {
return _elm_config_selection_unfocused_clear_get();
diff --git a/src/lib/elm_config.h b/src/lib/elm_config.h
index d092441..4478068 100644
--- a/src/lib/elm_config.h
+++ b/src/lib/elm_config.h
@@ -1549,6 +1549,49 @@ EAPI Eina_Bool elm_config_audio_mute_get(Edje_Channel 
channel);
 EAPI void  elm_config_audio_mute_set(Edje_Channel 

[EGIT] [core/elementary] master 01/01: atspi: Atspi_Action interface implementation @feature

2014-04-20 Thread Lukasz Stanislawski
raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=fbd30582d45717525e13ed961a46f97c28166b68

commit fbd30582d45717525e13ed961a46f97c28166b68
Author: Lukasz Stanislawski 
Date:   Mon Apr 21 15:04:25 2014 +0900

atspi: Atspi_Action interface implementation @feature

Summary: Enables remote execution of elementary widget actions.

Test Plan: build&install, accerrsiser tests on ubuntu 12.04

Reviewers: raster, seoz

Differential Revision: https://phab.enlightenment.org/D747
---
 src/lib/Makefile.am  |  10 ++
 src/lib/elm_atspi_bridge.c   | 190 +++
 src/lib/elm_button.c |  10 ++
 src/lib/elm_button.eo|   4 +-
 src/lib/elm_interface_atspi_action.c |  25 
 src/lib/elm_interface_atspi_action.eo|  78 +++
 src/lib/elm_interface_atspi_widget_action.c  | 131 ++
 src/lib/elm_interface_atspi_widget_action.eo |  25 
 8 files changed, 472 insertions(+), 1 deletion(-)

diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index ed2fd90..16c576e 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -447,8 +447,10 @@ elm_icon.c \
 elm_image.c \
 elm_index.c \
 elm_interface_atspi_accessible.c \
+elm_interface_atspi_action.c \
 elm_interface_atspi_component.c \
 elm_interface_atspi_widget.c \
+elm_interface_atspi_widget_action.c \
 elm_interface_atspi_window.c \
 elm_interface_fileselector.c \
 elm_interface_scrollable.c \
@@ -616,10 +618,14 @@ BUILT_SOURCES = \
elm_index.eo.h \
elm_interface_atspi_accessible.eo.c \
elm_interface_atspi_accessible.eo.h \
+   elm_interface_atspi_action.eo.c \
+   elm_interface_atspi_action.eo.h \
elm_interface_atspi_component.eo.c \
elm_interface_atspi_component.eo.h \
elm_interface_atspi_widget.eo.c \
elm_interface_atspi_widget.eo.h \
+   elm_interface_atspi_widget_action.eo.c \
+   elm_interface_atspi_widget_action.eo.h \
elm_interface_atspi_window.eo.c \
elm_interface_atspi_window.eo.h \
elm_interface_fileselector.eo.c \
@@ -711,8 +717,10 @@ EXTRA_DIST += \
 elm_app_server_view.eo \
 elm_atspi_app_object.eo \
 elm_interface_atspi_accessible.eo \
+elm_interface_atspi_action.eo \
 elm_interface_atspi_component.eo \
 elm_interface_atspi_widget.eo \
+elm_interface_atspi_widget_action.eo \
 elm_interface_atspi_window.eo \
 elm_bg.eo \
 elm_box.eo \
@@ -797,8 +805,10 @@ nodist_includesunstable_HEADERS = \
  elm_app_server_view.eo.h \
  elm_atspi_app_object.eo.h \
  elm_interface_atspi_accessible.eo.h \
+ elm_interface_atspi_action.eo.h \
  elm_interface_atspi_component.eo.h \
  elm_interface_atspi_widget.eo.h \
+ elm_interface_atspi_widget_action.eo.h \
  elm_interface_atspi_window.eo.h \
  elm_box.eo.h \
  elm_bg.eo.h \
diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index e1b1b22..fe99411 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -4,6 +4,7 @@
 
 #define ELM_INTERFACE_ATSPI_COMPONENT_PROTECTED
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
+#define ELM_INTERFACE_ATSPI_ACTION_PROTECTED
 #include "atspi/atspi-constants.h"
 
 #include 
@@ -15,6 +16,7 @@
 #include "elm_interface_atspi_accessible.eo.h"
 #include "elm_interface_atspi_component.eo.h"
 #include "elm_interface_atspi_window.eo.h"
+#include "elm_interface_atspi_action.eo.h"
 
 /*
  * Accessibility Bus info not defined in atspi-constants.h
@@ -550,6 +552,158 @@ static const Eldbus_Method accessible_methods[] = {
{ NULL, NULL, NULL, NULL, 0 }
 };
 
+static Eldbus_Message *
+_action_description_get(const Eldbus_Service_Interface *iface, const 
Eldbus_Message *msg)
+{
+   const char *description, *obj_path = eldbus_service_object_path_get(iface);
+   Eo *obj = _access_object_from_path(obj_path);
+   int idx;
+   Eldbus_Message *ret;
+
+   if (!eldbus_message_arguments_get(msg, "i", &idx))
+ return eldbus_message_error_new(msg, 
"org.freedesktop.DBus.Error.InvalidArgs", "Invalid index type.");
+
+   ret = eldbus_message_method_return_new(msg);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(ret, NULL);
+
+   eo_do(obj, description = elm_interface_atspi_action_description_get(idx));
+   description = description ? descri

Re: [E-devel] [EGIT] [core/elementary] master 01/01: atspi: Atspi_Action interface implementation @feature

2014-04-23 Thread Lukasz Stanislawski
Hello Daniel,

It is unintendent, looks like copy&paste bug. Please check: 
https://phab.enlightenment.org/D781.

Best regards,
Lukasz Stanislawski

W dniu 23.04.2014 05:07, Daniel Juyung Seo pisze:
> Dear Lukasz Stanislawksi,
>
>
> On Mon, Apr 21, 2014 at 3:03 PM, Lukasz Stanislawski
> mailto:l.stanisl...@samsung.com>> wrote:
>
> raster pushed a commit to branch master.
>
> 
> http://git.enlightenment.org/core/elementary.git/commit/?id=fbd30582d45717525e13ed961a46f97c28166b68
>
> commit fbd30582d45717525e13ed961a46f97c28166b68
> Author: Lukasz Stanislawski  <mailto:l.stanisl...@samsung.com>>
> Date:   Mon Apr 21 15:04:25 2014 +0900
>
>  atspi: Atspi_Action interface implementation @feature
>
>  Summary: Enables remote execution of elementary widget actions.
>
>  Test Plan: build&install, accerrsiser tests on ubuntu 12.04
>
>  Reviewers: raster, seoz
>
>  Differential Revision: https://phab.enlightenment.org/D747
> ---
>
>
> @@ -1616,6 +1802,10 @@ static void _object_register(Eo *obj, char *path)
>
>eo_do(obj, eo_event_callback_array_add(_window_cb(),
> infc));
> }
> +if (eo_isa(obj, ELM_INTERFACE_ATSPI_ACTION_CLASS))
> +  {
> + infc = eldbus_service_interface_register(_a11y_bus,
> path, &action_iface_desc);
> +  }
>}
>
>
> You did not use infc even thought you get the return value from
> eldbus_service_interface_register.
> Is it intended?
>
> Please check that. There is a coverity report about this.
> https://scan6.coverity.com:8443/reports.htm#v17772/p10305/fileInstanceId=13164120&defectInstanceId=4586798&mergedDefectId=657321
>
> Thanks.
>
> Daniel Juyung Seo (SeoZ)
>
>   }
>

--
Start Your Social Network Today - Download eXo Platform
Build your Enterprise Intranet with eXo Platform Software
Java Based Open Source Intranet - Social, Extensible, Cloud Ready
Get Started Now And Turn Your Intranet Into A Collaboration Platform
http://p.sf.net/sfu/ExoPlatform
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: atspi: remove unused variable assignment

2014-04-23 Thread Lukasz Stanislawski
seoz pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=fadc653fb8a0d34abe80e902283ee0036dab3002

commit fadc653fb8a0d34abe80e902283ee0036dab3002
Author: Lukasz Stanislawski 
Date:   Wed Apr 23 18:00:45 2014 +0900

atspi: remove unused variable assignment

Summary: CID 1204328

Test Plan: build & install

Reviewers: seoz, raster

Differential Revision: https://phab.enlightenment.org/D781
---
 src/lib/elm_atspi_bridge.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index fe99411..3db9185 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -1803,9 +1803,7 @@ static void _object_register(Eo *obj, char *path)
  eo_do(obj, eo_event_callback_array_add(_window_cb(), infc));
   }
 if (eo_isa(obj, ELM_INTERFACE_ATSPI_ACTION_CLASS))
-  {
- infc = eldbus_service_interface_register(_a11y_bus, path, 
&action_iface_desc);
-  }
+  eldbus_service_interface_register(_a11y_bus, path, 
&action_iface_desc);
  }
 }
 

-- 




[EGIT] [core/elementary] master 01/01: atspi: AtspiValue interface added.

2014-04-24 Thread Lukasz Stanislawski
raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=19b0e8ba9e1064663b7a7c79830daa467e9836ad

commit 19b0e8ba9e1064663b7a7c79830daa467e9836ad
Author: Lukasz Stanislawski 
Date:   Thu Apr 24 18:03:25 2014 +0900

atspi: AtspiValue interface added.

Summary:
Enables remote value changing on accessible widgets.
Added sample interface implementation for elm_slider widget.

Test Plan: build&install

Reviewers: raster, seoz

Differential Revision: https://phab.enlightenment.org/D784
---
 src/lib/Makefile.am  |  5 +++
 src/lib/elm_atspi_bridge.c   | 83 
 src/lib/elm_interface_atspi_value.c  | 12 ++
 src/lib/elm_interface_atspi_value.eo | 46 
 src/lib/elm_slider.c | 46 
 src/lib/elm_slider.eo|  6 ++-
 6 files changed, 197 insertions(+), 1 deletion(-)

diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index 5d3a23e..6b1b8a2 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -450,6 +450,7 @@ elm_index.c \
 elm_interface_atspi_accessible.c \
 elm_interface_atspi_action.c \
 elm_interface_atspi_component.c \
+elm_interface_atspi_value.c \
 elm_interface_atspi_widget.c \
 elm_interface_atspi_widget_action.c \
 elm_interface_atspi_window.c \
@@ -646,6 +647,8 @@ BUILT_SOURCES = \
elm_interface_atspi_action.eo.h \
elm_interface_atspi_component.eo.c \
elm_interface_atspi_component.eo.h \
+   elm_interface_atspi_value.eo.c \
+   elm_interface_atspi_value.eo.h \
elm_interface_atspi_widget.eo.c \
elm_interface_atspi_widget.eo.h \
elm_interface_atspi_widget_action.eo.c \
@@ -743,6 +746,7 @@ EXTRA_DIST += \
 elm_interface_atspi_accessible.eo \
 elm_interface_atspi_action.eo \
 elm_interface_atspi_component.eo \
+elm_interface_atspi_value.eo \
 elm_interface_atspi_widget.eo \
 elm_interface_atspi_widget_action.eo \
 elm_interface_atspi_window.eo \
@@ -831,6 +835,7 @@ nodist_includesunstable_HEADERS = \
  elm_interface_atspi_accessible.eo.h \
  elm_interface_atspi_action.eo.h \
  elm_interface_atspi_component.eo.h \
+ elm_interface_atspi_value.eo.h \
  elm_interface_atspi_widget.eo.h \
  elm_interface_atspi_widget_action.eo.h \
  elm_interface_atspi_window.eo.h \
diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index 3db9185..27c1d2a 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -5,6 +5,7 @@
 #define ELM_INTERFACE_ATSPI_COMPONENT_PROTECTED
 #define ELM_INTERFACE_ATSPI_ACCESSIBLE_PROTECTED
 #define ELM_INTERFACE_ATSPI_ACTION_PROTECTED
+#define ELM_INTERFACE_ATSPI_VALUE_PROTECTED
 #include "atspi/atspi-constants.h"
 
 #include 
@@ -17,6 +18,7 @@
 #include "elm_interface_atspi_component.eo.h"
 #include "elm_interface_atspi_window.eo.h"
 #include "elm_interface_atspi_action.eo.h"
+#include "elm_interface_atspi_value.eo.h"
 
 /*
  * Accessibility Bus info not defined in atspi-constants.h
@@ -808,6 +810,71 @@ _action_property_get(const Eldbus_Service_Interface 
*interface, const char *prop
return EINA_FALSE;
 }
 
+static Eldbus_Message*
+_value_properties_set(const Eldbus_Service_Interface *interface, const char 
*property,
+ Eldbus_Message_Iter *iter, const Eldbus_Message 
*request_msg)
+{
+   double value;
+   Eina_Bool ret;
+   const char *obj_path = eldbus_service_object_path_get(interface);
+   Eo *obj = _access_object_from_path(obj_path);
+
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
+
+   if (!eldbus_message_iter_arguments_get(iter, "d", &value))
+ {
+   return eldbus_message_error_new(request_msg, 
"org.freedesktop.DBus.Error.InvalidArgs", "Expected value of type: double.");
+ }
+
+   if (!strcmp(property, "CurrentValue"))
+ {
+eo_do(obj, ret = elm_interface_atspi_value_value_and_text_set(value, 
NULL));
+Eldbus_Message *answer = eldbus_message_method_return_new(request_msg);
+eldbus_message_arguments_append(answer, "b", ret);
+return answer;
+ }
+
+   return NULL;
+}
+
+static Eina_Bool
+_value_properties_get(const Eldbus_Service_Interface *interface, const char 
*property,
+ Eldbus_Message_Iter *iter, const Eldbus_Message 
*request_msg EINA_UNUSED,
+ Eldbus_Message **error EINA_UNUSED)
+{
+   double value;
+   const char *obj_path = eldbus_service_object_path_get(interf

[EGIT] [core/elementary] master 01/01: layout: remove sizing_eval call when layout is already destructed. @fix

2014-05-13 Thread Lukasz Stanislawski
raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=d23c37169f4e613d10b0fb41e474d2ed1b521b68

commit d23c37169f4e613d10b0fb41e474d2ed1b521b68
Author: Lukasz Stanislawski 
Date:   Wed May 14 12:02:10 2014 +0900

layout: remove sizing_eval call when layout is already destructed. @fix

Summary:
Layout's sub_object_del function calls sizing_eval even if layout's 
smart_del
function has already been called (Due to widget_smart_del impl).
This patch adds 'destructed_is' flag to Elm_Layout_Smart_Data and prevents 
unneeded
sizing_eval calls when object is already destructed.
Patch also fixes SIGSEGV in layout derived entry widget caused by calling
sizing_eval after entry_smart_del destructor.

Added entry test to avoid regression for SIGSEGV bug.

Test Plan: run tests/elm_test_entry

Reviewers: raster, seoz, tasn, cedric

Differential Revision: https://phab.enlightenment.org/D823
---
 src/lib/elm_layout.c|  3 +++
 src/lib/elm_widget_layout.h |  1 +
 src/tests/Makefile.am   |  1 +
 src/tests/elm_suite.c   |  1 +
 src/tests/elm_suite.h   |  1 +
 src/tests/elm_test_entry.c  | 25 +
 6 files changed, 32 insertions(+)

diff --git a/src/lib/elm_layout.c b/src/lib/elm_layout.c
index 0e62d89..d6fa3fc 100644
--- a/src/lib/elm_layout.c
+++ b/src/lib/elm_layout.c
@@ -520,6 +520,7 @@ _elm_layout_elm_widget_sub_object_del(Eo *obj, 
Elm_Layout_Smart_Data *sd, Evas_O
 
eo_do_super(obj, MY_CLASS, int_ret = elm_obj_widget_sub_object_del(sobj));
if (!int_ret) return EINA_FALSE;
+   if (sd->destructed_is) return EINA_TRUE;
 
EINA_LIST_FOREACH(sd->subs, l, sub_d)
  {
@@ -799,6 +800,8 @@ _elm_layout_evas_smart_del(Eo *obj, Elm_Layout_Smart_Data 
*sd)
   }
  }
 
+   sd->destructed_is = EINA_TRUE;
+
eo_do_super(obj, MY_CLASS, evas_obj_smart_del());
 }
 
diff --git a/src/lib/elm_widget_layout.h b/src/lib/elm_widget_layout.h
index 0d7b8d7..f005dd9 100644
--- a/src/lib/elm_widget_layout.h
+++ b/src/lib/elm_widget_layout.h
@@ -77,6 +77,7 @@ typedef struct _Elm_Layout_Smart_Data
Eina_Bool restricted_calc_w : 1;
Eina_Bool restricted_calc_h : 1;
Eina_Bool can_access : 1; /**< This is true when all 
text(including textblock) parts can be accessible by accessibility. */
+   Eina_Bool destructed_is : 1; /**< This flag indicates if 
Elm_Layout destructor was called */
 } Elm_Layout_Smart_Data;
 
 /**
diff --git a/src/tests/Makefile.am b/src/tests/Makefile.am
index 84c763b..200ada7 100644
--- a/src/tests/Makefile.am
+++ b/src/tests/Makefile.am
@@ -8,6 +8,7 @@ elm_suite_SOURCES = \
elm_suite.c \
elm_test_check.c \
elm_test_colorselector.c \
+   elm_test_entry.c \
elm_test_init.c
 
 elm_suite_CPPFLAGS = \
diff --git a/src/tests/elm_suite.c b/src/tests/elm_suite.c
index 7056b35..f586833 100644
--- a/src/tests/elm_suite.c
+++ b/src/tests/elm_suite.c
@@ -17,6 +17,7 @@ static const Elementary_Test_Case etc[] = {
   { "Elementary", elm_test_init },
   { "elm_check", elm_test_check },
   { "elm_colorselector", elm_test_colorselector },
+  { "elm_entry", elm_test_entry},
   { NULL, NULL }
 };
 
diff --git a/src/tests/elm_suite.h b/src/tests/elm_suite.h
index 3d4be29..bac0a56 100644
--- a/src/tests/elm_suite.h
+++ b/src/tests/elm_suite.h
@@ -6,5 +6,6 @@
 void elm_test_init(TCase *tc);
 void elm_test_check(TCase *tc);
 void elm_test_colorselector(TCase *tc);
+void elm_test_entry(TCase *tc);
 
 #endif /* _ELM_SUITE_H */
diff --git a/src/tests/elm_test_entry.c b/src/tests/elm_test_entry.c
new file mode 100644
index 000..70643ae
--- /dev/null
+++ b/src/tests/elm_test_entry.c
@@ -0,0 +1,25 @@
+#ifdef HAVE_CONFIG_H
+# include "elementary_config.h"
+#endif
+
+#include 
+#include "elm_suite.h"
+
+START_TEST (elm_entry_del)
+{
+   Evas_Object *win, *entry;
+
+   elm_init(1, NULL);
+   win = elm_win_add(NULL, "check", ELM_WIN_BASIC);
+
+   entry = elm_entry_add(win);
+   elm_object_text_set(entry, "TEST");
+
+   elm_shutdown();
+}
+END_TEST
+
+void elm_test_entry(TCase *tc)
+{
+   tcase_add_test(tc, elm_entry_del);
+}

-- 




[EGIT] [core/efl] master 01/01: elm: use eina_rectangle to check intersection

2016-12-01 Thread Lukasz Stanislawski
jpeg pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=9c82b3475f879a77c44457d9f87b8ca887e1e57d

commit 9c82b3475f879a77c44457d9f87b8ca887e1e57d
Author: Lukasz Stanislawski 
Date:   Thu Dec 1 20:56:32 2016 +0900

elm: use eina_rectangle to check intersection

Summary:
Some conditions seems redundant if assume that height and width
can never be < 0.

Change-Id: I63c297cc8cabbb69fbf7e014596f354e811b8d8e

Reviewers: cedric, kimcinoo, jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4441
---
 src/lib/elementary/elm_widget.c | 29 -
 1 file changed, 16 insertions(+), 13 deletions(-)

diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index 0abb324..91e965a 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -4738,16 +4738,18 @@ EAPI Eina_Bool
 _elm_widget_onscreen_is(Evas_Object *widget)
 {
Evas_Object *parent = widget;
-   Evas_Coord x, y, w, h, wx, wy, ww, wh;
+   Eina_Rectangle r1, r2;
 
Evas *evas = evas_object_evas_get(widget);
if (!evas) return EINA_FALSE;
 
+   evas_object_geometry_get(widget, &r1.x, &r1.y, &r1.w, &r1.h);
+   if (eina_rectangle_is_empty(&r1))
+ return EINA_FALSE;
+
// check if on canvas
-   evas_output_viewport_get(evas, &x, &y, &w, &h);
-   evas_object_geometry_get(widget, &wx, &wy, &ww, &wh);
-   if (((wx < x) && (wx + ww < x)) || ((wx > x + w) && (wx + ww > x + w)) ||
-   ((wy < y) && (wy + wh < y)) || ((wy > y+ h) && (wy + wh > y + h)))
+   evas_output_viewport_get(evas, &r2.x, &r2.y, &r2.w, &r2.h);
+   if (!eina_rectangles_intersect(&r1, &r2))
  return EINA_FALSE;
 
// check if inside scrollable parent viewport
@@ -4757,9 +4759,8 @@ _elm_widget_onscreen_is(Evas_Object *widget)
 return EINA_FALSE;
   if (parent && efl_isa(parent, ELM_INTERFACE_SCROLLABLE_MIXIN))
 {
-   evas_object_geometry_get(parent, &x, &y, &w, &h);
-   if (((wx < x) && (wx + ww < x)) || ((wx > x + w) && (wx + ww > x + 
w)) ||
-   ((wy < y) && (wy + wh < y)) || ((wy > y+ h) && (wy + wh > y + 
h)))
+   evas_object_geometry_get(parent, &r2.x, &r2.y, &r2.w, &r2.h);
+   if (!eina_rectangles_intersect(&r1, &r2))
  return EINA_FALSE;
 }
} while (parent && (parent != elm_widget_top_get(widget)));
@@ -4770,7 +4771,7 @@ _elm_widget_onscreen_is(Evas_Object *widget)
 EAPI Eina_Bool
 _elm_widget_item_onscreen_is(Elm_Object_Item *item)
 {
-   Evas_Coord x, y, w, h, wx, wy, ww, wh;
+   Eina_Rectangle r1, r2;
Elm_Widget_Item_Data *id = efl_data_scope_get(item, ELM_WIDGET_ITEM_CLASS);
if (!id || !id->view) return EINA_FALSE;
 
@@ -4780,10 +4781,12 @@ _elm_widget_item_onscreen_is(Elm_Object_Item *item)
if (!_elm_widget_onscreen_is(id->widget))
  return EINA_FALSE;
 
-   evas_object_geometry_get(id->view, &x, &y, &w, &h);
-   evas_object_geometry_get(id->widget, &wx, &wy, &ww, &wh);
-   if (((wx < x) && (wx + ww < x)) || ((wx > x + w) && (wx + ww > x + w)) ||
-   ((wy < y) && (wy + wh < y)) || ((wy > y+ h) && (wy + wh > y + h)))
+   evas_object_geometry_get(id->view, &r1.x, &r1.y, &r1.w, &r1.h);
+   if (eina_rectangle_is_empty(&r1))
+ return EINA_FALSE;
+
+   evas_object_geometry_get(id->widget, &r2.x, &r2.y, &r2.w, &r2.h);
+   if (!eina_rectangles_intersect(&r1, &r2))
  return EINA_FALSE;
 
return EINA_TRUE;

--