[EGIT] [tools/enventor] master 01/01: build_setting: update tooltip messages.

2016-06-09 Thread Hermet Park
hermet pushed a commit to branch master.

http://git.enlightenment.org/tools/enventor.git/commit/?id=1f0df7068906453bab10a57c400991da6de82051

commit 1f0df7068906453bab10a57c400991da6de82051
Author: Hermet Park 
Date:   Fri Jun 10 14:28:38 2016 +0900

build_setting: update tooltip messages.
---
 src/bin/build_setting.c | 12 
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/bin/build_setting.c b/src/bin/build_setting.c
index edb4963..2afb8c9 100644
--- a/src/bin/build_setting.c
+++ b/src/bin/build_setting.c
@@ -148,7 +148,8 @@ build_setting_content_get(build_setting_data *bsd, 
Evas_Object *parent)
elm_object_part_content_set(layout, "img_path_tooltip", img_path_tooltip);
 
elm_object_tooltip_text_set(img_path_tooltip,
-   _("Image path used for EDC editing."));
+   _("Image resource path used for"
+ "a current project."));
elm_object_focus_allow_set(img_path_tooltip, EINA_FALSE);
 
//Sound Path Entry
@@ -165,7 +166,8 @@ build_setting_content_get(build_setting_data *bsd, 
Evas_Object *parent)
elm_object_part_content_set(layout, "snd_path_tooltip", snd_path_tooltip);
 
elm_object_tooltip_text_set(snd_path_tooltip,
-   _("Sound path used for EDC editing."));
+   _("Sound resource path used for"
+ "a current project."));
elm_object_focus_allow_set(snd_path_tooltip, EINA_FALSE);
 
//Font Path Entry
@@ -182,7 +184,8 @@ build_setting_content_get(build_setting_data *bsd, 
Evas_Object *parent)
elm_object_part_content_set(layout, "fnt_path_tooltip", font_path_tooltip);
 
elm_object_tooltip_text_set(font_path_tooltip,
-   _("Font path used for EDC editing."));
+   _("Font resource path used for"
+ "a current project."));
elm_object_focus_allow_set(font_path_tooltip, EINA_FALSE);
 
//Data Path Entry
@@ -199,7 +202,8 @@ build_setting_content_get(build_setting_data *bsd, 
Evas_Object *parent)
elm_object_part_content_set(layout, "data_path_tooltip", data_path_tooltip);
 
elm_object_tooltip_text_set(data_path_tooltip,
-   _("Data path used for EDC editing."));
+_("Data resource path used for"
+ "a current project."));
elm_object_focus_allow_set(data_path_tooltip, EINA_FALSE);
 
bsd->layout = layout;

-- 




Re: [E-devel] Problem with elemines

2016-06-09 Thread Cedric BAIL
On Thu, Jun 9, 2016 at 10:10 PM, Cedric BAIL  wrote:
> On Thu, Jun 9, 2016 at 4:53 PM, Tim Bird  wrote:
>> I am a newbie to EFL development.  I'm trying to write a little test
>> program for EFL, and wanted to test out elemines as an example of some of
>> the techniques.
>> However, I ran into some problems.
>>
>> I am running EFL 17 on Ubuntu 14.04.  I cloned elemines from
>> https://git.enlightenment.org/games/elemines.git
>> and was able to get it built.
>>
>> 1) - path to libetrophy error
>> When I try to run it, I got the following error message:
>> elemines: error while loading shared libraries: libetrophy.so.0: cannot
>> open shared object file: No such file or directory
>>
>> During the build, I figured out I needed etrophy, and built and installed
>> the shared
>> library for that.  They etrophy libraries ended up in /usr/local/lib
>>
>> I can work around this using 'export LD_LIBRARY_PATH=/usr/local/lib',
>> before running elemines.
>
> Is it possible that either your /usr/local/lib is not your ld.so.conf
> path ? or that you haven't run ldconfig after installing etrophy ?
>
>> 2) missing some elementary config
>> When I run elemines (with the right library path), I get a warning from the
>> program:
>>
>> ERR<27210>:eio lib/eio/eio_monitor.c:339 eio_monitor_stringshared_add()
>> monitored path '/home/CORPUSERS/10102229/.elementary/config/standard' not
>> found.
>>
>> I don't have the enlightenment window manager installed (to my knowledge).
>> I'm not sure what is being looked for here,
>> but the warning is a bit disconcerting.  I can make the warning go away by
>> creating the directory
>> ~/.elementary/config/standard, but I'm worried that something is supposed
>> to be there that's not.
>
> Hum, that one I have no clue at the moment. Will see if I can look
> into it tomorrow, but in all case Enlightenment shouldn't be needed.
>
>> 3) Segmentation fault
>> This is the most serious problem.  elemines gets a segmentation fault when
>> I do the first mouse click in the
>> game grid.
>>
>> I debugged the program a bit and found that there's a sscanf on a string
>> used to map the mouse click to
>> the game grid.  Here's the sscanf:
>>   sscanf(source, "board[%i,%i]:overlay", , );
>>
>> but here's the value of the 'source' string used with it:
>>   board[item_0x7fff8daa2c60{7,2}]:overlay
>>
>> this is in the routine _click() in src/game.c
>> Note that there's no error handling for the sscanf.  However, the string
>> clearly is not what's expected.
>
> Sorry that you have hit that bug. It is a regression in edje_cc
> provided in efl 1.17 that do not compile correctly elemines. This is
> fixed in current git. I should backport the fix and make sure it is in
> the next release along with a few others. Thanks for the reminder and
> sorry again about this one.

So actually it is already part of 1.17.1 release.
-- 
Cedric BAIL

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [tools/enventor] master 01/02: build_setting: add build setting tooltip messeges

2016-06-09 Thread Taehyub Kim
hermet pushed a commit to branch master.

http://git.enlightenment.org/tools/enventor.git/commit/?id=29d91c48b36c7297e3022e64209c15b02afe99c3

commit 29d91c48b36c7297e3022e64209c15b02afe99c3
Author: Taehyub Kim 
Date:   Fri Jun 10 13:47:53 2016 +0900

build_setting: add build setting tooltip messeges

Summary: add build setting tooltip messeges

Test Plan:
1. launch enventor
2. go settign menu
3. click EDC build tab
4. move mouse cursor on each item
5. see the tooltip messeges

Reviewers: Hermet, Jaehyun_Cho, NikaWhite

Differential Revision: https://phab.enlightenment.org/D4034
---
 data/themes/default/layout_setting.edc | 32 ++
 src/bin/build_setting.c| 36 ++
 2 files changed, 68 insertions(+)

diff --git a/data/themes/default/layout_setting.edc 
b/data/themes/default/layout_setting.edc
index 32a3012..4ac82fc 100644
--- a/data/themes/default/layout_setting.edc
+++ b/data/themes/default/layout_setting.edc
@@ -318,6 +318,14 @@ group { "build_setting_layout";
 rel2.to: "img_path_frame";
  }
   }
+  swallow { "img_path_tooltip";
+ repeat_events: 1;
+ desc {
+rel1.to: "img_path_frame";
+rel2.to: "img_path_frame";
+fixed: 1 1;
+ }
+  }
   image { "snd_path_icon";
  scale: 1;
  desc {
@@ -361,6 +369,14 @@ group { "build_setting_layout";
 rel2.to: "snd_path_frame";
  }
   }
+  swallow { "snd_path_tooltip";
+ repeat_events: 1;
+ desc {
+rel1.to: "snd_path_frame";
+rel2.to: "snd_path_frame";
+fixed: 1 1;
+ }
+  }
   image { "fnt_path_icon";
  scale: 1;
  desc {
@@ -404,6 +420,14 @@ group { "build_setting_layout";
 rel2.to: "fnt_path_frame";
  }
   }
+  swallow { "fnt_path_tooltip";
+ repeat_events: 1;
+ desc {
+rel1.to: "fnt_path_frame";
+rel2.to: "fnt_path_frame";
+fixed: 1 1;
+ }
+  }
   image { "dat_path_icon";
  scale: 1;
  desc {
@@ -447,6 +471,14 @@ group { "build_setting_layout";
 rel2.to: "dat_path_frame";
  }
   }
+  swallow { "data_path_tooltip";
+ repeat_events: 1;
+ desc {
+rel1.to: "dat_path_frame";
+rel2.to: "dat_path_frame";
+fixed: 1 1;
+ }
+  }
}
 }
 
diff --git a/src/bin/build_setting.c b/src/bin/build_setting.c
index 7749537..edb4963 100644
--- a/src/bin/build_setting.c
+++ b/src/bin/build_setting.c
@@ -142,6 +142,15 @@ build_setting_content_get(build_setting_data *bsd, 
Evas_Object *parent)
img_path_entry);
elm_layout_text_set(layout, "img_path_guide", _("Image Paths:"));
 
+   //Image Path Tooltip
+   Evas_Object *img_path_tooltip = elm_button_add(layout);
+   elm_object_style_set(img_path_tooltip, ENVENTOR_NAME);
+   elm_object_part_content_set(layout, "img_path_tooltip", img_path_tooltip);
+
+   elm_object_tooltip_text_set(img_path_tooltip,
+   _("Image path used for EDC editing."));
+   elm_object_focus_allow_set(img_path_tooltip, EINA_FALSE);
+
//Sound Path Entry
Evas_Object *snd_path_entry = entry_create(layout);
snd_path_entry_update(snd_path_entry,
@@ -150,6 +159,15 @@ build_setting_content_get(build_setting_data *bsd, 
Evas_Object *parent)
snd_path_entry);
elm_layout_text_set(layout, "snd_path_guide", _("Sound Paths:"));
 
+   //Sound Path Tooltip
+   Evas_Object *snd_path_tooltip = elm_button_add(layout);
+   elm_object_style_set(snd_path_tooltip, ENVENTOR_NAME);
+   elm_object_part_content_set(layout, "snd_path_tooltip", snd_path_tooltip);
+
+   elm_object_tooltip_text_set(snd_path_tooltip,
+   _("Sound path used for EDC editing."));
+   elm_object_focus_allow_set(snd_path_tooltip, EINA_FALSE);
+
//Font Path Entry
Evas_Object *fnt_path_entry = entry_create(layout);
fnt_path_entry_update(fnt_path_entry,
@@ -158,6 +176,15 @@ build_setting_content_get(build_setting_data *bsd, 
Evas_Object *parent)
fnt_path_entry);
elm_layout_text_set(layout, "fnt_path_guide", _("Font Paths:"));
 
+   //Font Path Tooltip
+   Evas_Object *font_path_tooltip = elm_button_add(layout);
+   elm_object_style_set(font_path_tooltip, ENVENTOR_NAME);
+   elm_object_part_content_set(layout, "fnt_path_tooltip", font_path_tooltip);
+
+   elm_object_tooltip_text_set(font_path_tooltip,
+   _("Font path used for EDC editing."));
+   elm_object_focus_allow_set(font_path_tooltip, EINA_FALSE);
+
//Data Path Entry
Evas_Object *dat_path_entry = entry_create(layout);
dat_path_entry_update(dat_path_entry,
@@ -166,6 +193,15 @@ 

[EGIT] [tools/enventor] master 02/02: tools: update tooltip.

2016-06-09 Thread Hermet Park
hermet pushed a commit to branch master.

http://git.enlightenment.org/tools/enventor.git/commit/?id=e1cde9ffcab4625e0fabe98122f1b1c8617bd4a9

commit e1cde9ffcab4625e0fabe98122f1b1c8617bd4a9
Author: Hermet Park 
Date:   Fri Jun 10 13:59:38 2016 +0900

tools: update tooltip.
---
 src/bin/tools.c | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/bin/tools.c b/src/bin/tools.c
index 7f638ca..2fa23a3 100644
--- a/src/bin/tools.c
+++ b/src/bin/tools.c
@@ -219,7 +219,6 @@ tools_init(Evas_Object *parent)
elm_object_part_content_set(live_view_ly, "elm.swallow.dummy", btn);
td->swallow_btn = btn;
 
-   //icon image is temporary, it should be changed to its own icon.
btn = tools_btn_create(live_view_ly, "mirror",
   _("Mirror Mode (Ctrl + M)"
 "Invert layout horizontally. This previews "
@@ -282,8 +281,8 @@ tools_init(Evas_Object *parent)
 
btn = tools_btn_create(text_editor_ly, "find",
   _("Find/Replace (Ctrl + F)"
-"Open Find/Replace window to find or replace "
-"text."),
+"Open Find/Replace window to find or"
+"replace text."),
   find_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -292,7 +291,8 @@ tools_init(Evas_Object *parent)
 
btn = tools_btn_create(text_editor_ly, "goto",
   _("Goto Lines (Ctrl + L)"
-"Open Goto window to move the cursor line 
position."),
+"Open Goto window to move the cursor"
+"line position."),
   goto_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);

-- 




Re: [E-devel] Struct passed by value

2016-06-09 Thread Davide Andreoli
2016-06-10 4:10 GMT+02:00 Jean-Philippe André :

> Hi,
>
>
> This is bu5hman's idea mostly, but I'd like to bring the question to the
> attention of everyone, as I had the same idea before.
>
> For simple structs (think Eina.Rectangle, and Efl.Gfx.Color), would it be
> acceptable to pass them by value instead of reference, in C?
> That is:
>
> Eina_Rectangle a = {1, 2, 3, 4};
> rect_set(obj, rect);
> Eina_Rectangle b = rect_get(obj);
>
> Or even (non portable way, but applications could feel free to use this):
> rect_set(obj, (Eina_Rectangle){.w = 13, .h = 37});
>
>
> I understand this could simplify some code.
>
>
> My main problem with it is a concern about ABI compatibility. It seems GCC
> itself has various ways to pass structs by value. See:
>
> http://stackoverflow.com/questions/161788/are-there-any-downsides-to-passing-structs-by-value-in-c-rather-than-passing-a
>
>
> Does anyone have real-life knowledge about this? How is it on Windows?
> Any strong arguments in favor or against?
>

I'm against this changes for 2 main reason:
1. API coherence: if we use rect, color, and maybe pos in some api, then we
should use them
in ALL the api that use rect, color, geom, etc... this will be a massive
change.
2. Will make bindings a lot slower, for each function call we need to
allocate the struct, fill with value
provided by user and pass this struct to the C function.. and then free it.
All this for each function call.

just my 2 cents


>
>
> --
> Jean-Philippe André
>
> --
> What NetFlow Analyzer can do for you? Monitors network bandwidth and
> traffic
> patterns at an interface-level. Reveals which users, apps, and protocols
> are
> consuming the most bandwidth. Provides multi-vendor support for NetFlow,
> J-Flow, sFlow and other flows. Make informed decisions using capacity
> planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Fwd: [EGIT] [core/efl] master 01/01: elm video: implement player interface

2016-06-09 Thread Amitesh Singh
Hi

On Jun 9, 2016 4:45 PM,  wrote:
>
> Hello,
>
> On Thu, Jun 09, 2016 at 12:06:56PM +0100, Tom Hacohen wrote:
> > ami pushed a commit to branch master.
> >
> >
http://git.enlightenment.org/core/efl.git/commit/?id=a1b0fb2c9f95b94e705bba8a0ad6d0f65a5506b0
> >
> > commit a1b0fb2c9f95b94e705bba8a0ad6d0f65a5506b0
> > Author: Yeshwanth Reddivari 
> > Date:   Wed Jun 8 14:46:11 2016 +0530
> >
> > elm video: implement player interface
> > Reviewers: raster, cedric, jpeg, singh.amitesh
> > Reviewed By: singh.amitesh
> > Differential Revision: https://phab.enlightenment.org/D4021
> > ---
> >  src/lib/elementary/elm_video.c| 63
+
> >  src/lib/elementary/elm_video.eo   | 56 --
> >  src/lib/elementary/elm_video_legacy.h | 75
> > +++
> >  3 files changed, 137 insertions(+), 57 deletions(-)
> >
> > diff --git a/src/lib/elementary/elm_video.c
b/src/lib/elementary/elm_video.c
> > index 65a5d6e..6ef84fc 100644
> > --- a/src/lib/elementary/elm_video.c
> > +++ b/src/lib/elementary/elm_video.c
> > @@ -373,49 +373,49 @@ _elm_video_is_playing_get(Eo *obj EINA_UNUSED,
> > Elm_Video_Data *sd)
> >  }
> >   EOLIAN static Eina_Bool
> > -_elm_video_is_seekable_get(Eo *obj EINA_UNUSED, Elm_Video_Data *sd)
> > +_elm_video_efl_player_seekable_get(Eo *obj EINA_UNUSED, Elm_Video_Data
*sd)
> >  {
> > return emotion_object_seekable_get(sd->emotion);
>
> sd->emotion is implementing the efl.player interface.
>
> So those functions could be replaced by composing the sd->emotion
> object and the object. Then all interface function which are not
> implemented by object will be called on the sd->emotion object.
>
It's a good idea. We shall implement it.
Thanks for the tip.

> Greetings
>bu5hm4n
>
> >  }
> >   EOLIAN static Eina_Bool
> > -_elm_video_audio_mute_get(Eo *obj EINA_UNUSED, Elm_Video_Data *sd)
> > +_elm_video_efl_player_audio_mute_get(Eo *obj EINA_UNUSED,
Elm_Video_Data
> > *sd)
> >  {
> > return emotion_object_audio_mute_get(sd->emotion);
> >  }
> >   EOLIAN static void
> > -_elm_video_audio_mute_set(Eo *obj EINA_UNUSED, Elm_Video_Data *sd,
> > Eina_Bool mute)
> > +_elm_video_efl_player_audio_mute_set(Eo *obj EINA_UNUSED,
Elm_Video_Data
> > *sd, Eina_Bool mute)
> >  {
> > emotion_object_audio_mute_set(sd->emotion, mute);
> >  }
> >   EOLIAN static double
> > -_elm_video_audio_level_get(Eo *obj EINA_UNUSED, Elm_Video_Data *sd)
> > +_elm_video_efl_player_audio_volume_get(Eo *obj EINA_UNUSED,
Elm_Video_Data
> > *sd)
> >  {
> > return emotion_object_audio_volume_get(sd->emotion);
> >  }
> >   EOLIAN static void
> > -_elm_video_audio_level_set(Eo *obj EINA_UNUSED, Elm_Video_Data *sd,
double
> > volume)
> > +_elm_video_efl_player_audio_volume_set(Eo *obj EINA_UNUSED,
Elm_Video_Data
> > *sd, double volume)
> >  {
> > emotion_object_audio_volume_set(sd->emotion, volume);
> >  }
> >   EOLIAN static double
> > -_elm_video_play_position_get(Eo *obj EINA_UNUSED, Elm_Video_Data *sd)
> > +_elm_video_efl_player_position_get(Eo *obj EINA_UNUSED, Elm_Video_Data
*sd)
> >  {
> > return emotion_object_position_get(sd->emotion);
> >  }
> >   EOLIAN static void
> > -_elm_video_play_position_set(Eo *obj EINA_UNUSED, Elm_Video_Data *sd,
> > double position)
> > +_elm_video_efl_player_position_set(Eo *obj EINA_UNUSED, Elm_Video_Data
*sd,
> > double position)
> >  {
> > emotion_object_position_set(sd->emotion, position);
> >  }
> >   EOLIAN static double
> > -_elm_video_play_length_get(Eo *obj EINA_UNUSED, Elm_Video_Data *sd)
> > +_elm_video_efl_player_length_get(Eo *obj EINA_UNUSED, Elm_Video_Data
*sd)
> >  {
> > return emotion_object_play_length_get(sd->emotion);
> >  }
> > @@ -480,5 +480,52 @@ elm_video_file_get(Eo *obj, const char **filename)
> > efl_file_get((Eo *) obj, filename, NULL);
> >  }
> >  +EAPI void
> > +elm_video_audio_level_set(Evas_Object *obj, double volume)
> > +{
> > +   efl_player_audio_volume_set(obj, volume);
> > +}
> > +
> > +EAPI double
> > +elm_video_audio_level_get(const Evas_Object *obj)
> > +{
> > +   return efl_player_audio_volume_get(obj);
> > +}
> > +
> > +EAPI void
> > +elm_video_audio_mute_set(Evas_Object *obj, Eina_Bool mute)
> > +{
> > +   efl_player_audio_mute_set(obj, mute);
> > +}
> > +
> > +EAPI Eina_Bool
> > +elm_video_audio_mute_get(const Evas_Object *obj)
> > +{
> > +   return efl_player_audio_mute_get(obj);
> > +}
> > +
> > +EAPI double
> > +elm_video_play_length_get(const Evas_Object *obj)
> > +{
> > +   return efl_player_length_get(obj);
> > +}
> > +
> > +EAPI Eina_Bool
> > +elm_video_is_seekable_get(const Evas_Object *obj)
> > +{
> > +   return efl_player_seekable_get(obj);
> > +}
> > +
> > +EAPI void
> > +elm_video_play_position_set(Evas_Object *obj, double position)
> > +{
> > +   efl_player_position_set(obj, position);
> > +}
> > +
> > +EAPI double
> > +elm_video_play_position_get(const 

[EGIT] [tools/enventor] master 01/01: tools: improve tooltip messages for live edit buttons.

2016-06-09 Thread Hermet Park
hermet pushed a commit to branch master.

http://git.enlightenment.org/tools/enventor.git/commit/?id=87a67d42373ff4d5f59af2ae086b16008a8ca1a0

commit 87a67d42373ff4d5f59af2ae086b16008a8ca1a0
Author: Hermet Park 
Date:   Fri Jun 10 13:27:56 2016 +0900

tools: improve tooltip messages for live edit buttons.
---
 src/bin/live_edit.c | 58 +++--
 1 file changed, 52 insertions(+), 6 deletions(-)

diff --git a/src/bin/live_edit.c b/src/bin/live_edit.c
index d0476e2..b5fbc81 100644
--- a/src/bin/live_edit.c
+++ b/src/bin/live_edit.c
@@ -2092,16 +2092,61 @@ live_btn_clicked_cb(void *data, Evas_Object *obj 
EINA_UNUSED,
 }
 
 static Evas_Object *
-live_btn_create(Evas_Object *parent, const char *name, void * data)
+live_btn_create(Evas_Object *parent, const char *name, void * data,
+Edje_Part_Type type)
 {
Evas_Object *btn = elm_button_add(parent);
elm_object_style_set(btn, ENVENTOR_NAME);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_focus_allow_set(btn, EINA_FALSE);
-   char buf[128];
-   snprintf(buf, sizeof(buf), "Add %s", name);
-   elm_object_tooltip_text_set(btn, buf);
+
+   switch (type)
+ {
+  case EDJE_PART_TYPE_RECTANGLE:
+ elm_object_tooltip_text_set(btn,
+ _("Add a Rect to the live view."
+   "Rect is used for a solid color"
+   "component or clipping other"
+   "components."));
+ break;
+  case EDJE_PART_TYPE_TEXT:
+ elm_object_tooltip_text_set(btn,
+ _("Add a Text to the live view."
+   "Text is used for a plain text"));
+ break;
+  case EDJE_PART_TYPE_IMAGE:
+ elm_object_tooltip_text_set(btn,
+ _("Add an Image to the live view."
+   "Image is used for an image part"
+   "which contains a single image"
+   "resource. Normally, an image file."));
+ break;
+  case EDJE_PART_TYPE_SWALLOW:
+ elm_object_tooltip_text_set(btn,
+ _("Add a Swallow to the live view."
+   "Swallow is a place holder for"
+   "objects that one may want to"
+   "include in the layout later."));
+ break;
+  case EDJE_PART_TYPE_TEXTBLOCK:
+ elm_object_tooltip_text_set(btn,
+ _("Add a Textblock to the live view."
+   "Textblock represents a rich-text"
+   "part that can show big chunks of"
+   "text."));
+ break;
+  case EDJE_PART_TYPE_SPACER:
+ elm_object_tooltip_text_set(btn,
+ _("Add a Spacer to the live view."
+   "Spacer is an anchor to locate "
+   "other parts. It's invisible so"
+   "normally used for a padding."));
+ break;
+  default:
+ break;
+ }
+
elm_object_tooltip_orient_set(btn, ELM_TOOLTIP_ORIENT_BOTTOM);
 
Evas_Object *img = elm_image_add(btn);
@@ -2225,14 +2270,15 @@ live_edit_tools_create(Evas_Object *parent)
for (i = 0; i < (LIVEEDIT_ITEMS_NUM - 1); i++)
  {
 btn = live_btn_create(parent, LIVEEDIT_ITEMS[i].name,
-  (void *)(uintptr_t) i);
+  (void *)(uintptr_t) i,
+  LIVEEDIT_ITEMS[i].type);
 btn_list = eina_list_append(btn_list, btn);
  }
 
//Just for spacer. Because we'd like to avoid margin in the icon image,
//We use 2 images - button icon's and live edit object's.
btn = live_btn_create(parent, "Spacer_Icon",
- (void *)(uintptr_t) i);
+ (void *)(uintptr_t) i, EDJE_PART_TYPE_SPACER);
btn_list = eina_list_append(btn_list, btn);
 
return btn_list;

-- 




[EGIT] [core/efl] master 01/04: win: Add legacy elm_win_type_get

2016-06-09 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 29132d3c2567a804a9b3c527de95a2fdc0587551
Author: Jean-Philippe Andre 
Date:   Fri Jun 10 12:59:45 2016 +0900

win: Add legacy elm_win_type_get

This was present in earlier releases.
---
 src/lib/elementary/efl_ui_win.eo | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/lib/elementary/efl_ui_win.eo b/src/lib/elementary/efl_ui_win.eo
index 528ec80..dcc04ff 100644
--- a/src/lib/elementary/efl_ui_win.eo
+++ b/src/lib/elementary/efl_ui_win.eo
@@ -593,7 +593,6 @@ class Efl.Ui.Win (Elm.Widget, Elm.Interface.Atspi.Window,
  }
  get {
 [[If the object is not window object, return #ELM_WIN_UNKNOWN.]]
-legacy: null;
  }
  values {
 type: Efl.Ui.Win.Type(Efl.Ui.Win.Type.unknown);

-- 




[EGIT] [core/efl] master 02/04: win: Add new API win_name_get (EO and legacy)

2016-06-09 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 3bee4995033d220117f4f31493470e4d0db1487a
Author: Jean-Philippe Andre 
Date:   Fri Jun 10 13:00:51 2016 +0900

win: Add new API win_name_get (EO and legacy)

I see no reason to have a set and no get.

@feature
---
 src/lib/elementary/efl_ui_win.c  | 6 ++
 src/lib/elementary/efl_ui_win.eo | 1 +
 2 files changed, 7 insertions(+)

diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index ec77ab4..0be431f 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -4237,6 +4237,12 @@ _efl_ui_win_name_set(Eo *obj, Efl_Ui_Win_Data *sd, const 
char *name)
sd->name = eina_stringshare_add(name);
 }
 
+EOLIAN static const char *
+_efl_ui_win_name_get(Eo *obj EINA_UNUSED, Efl_Ui_Win_Data *sd)
+{
+   return sd->name;
+}
+
 EOLIAN static void
 _efl_ui_win_noblank_set(Eo *obj EINA_UNUSED, Efl_Ui_Win_Data *pd, Eina_Bool 
noblank)
 {
diff --git a/src/lib/elementary/efl_ui_win.eo b/src/lib/elementary/efl_ui_win.eo
index dcc04ff..565b5ce 100644
--- a/src/lib/elementary/efl_ui_win.eo
+++ b/src/lib/elementary/efl_ui_win.eo
@@ -567,6 +567,7 @@ class Efl.Ui.Win (Elm.Widget, Elm.Interface.Atspi.Window,
 [[Can only be used at creation time, within \@ref eo_add.]]
 legacy: null;
  }
+ get {}
  values {
 name: string @nullable;
  }

-- 




[EGIT] [core/efl] master 04/04: Efl: Rename event flags to processed and scrolling

2016-06-09 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 9fdf584d1a476bb444dfe4aad1183342b721a111
Author: Jean-Philippe Andre 
Date:   Fri Jun 10 13:10:22 2016 +0900

Efl: Rename event flags to processed and scrolling

From on_hold and on_scroll
---
 src/lib/efl/interfaces/efl_event_types.eot | 12 ++--
 src/lib/evas/Evas_Common.h |  4 ++--
 src/lib/evas/canvas/efl_event_input.eo |  4 ++--
 src/lib/evas/canvas/efl_event_key.c| 20 ++--
 src/lib/evas/canvas/efl_event_key.eo   |  8 
 src/lib/evas/canvas/efl_event_pointer.c| 20 ++--
 src/lib/evas/canvas/efl_event_pointer.eo   |  8 
 7 files changed, 42 insertions(+), 34 deletions(-)

diff --git a/src/lib/efl/interfaces/efl_event_types.eot 
b/src/lib/efl/interfaces/efl_event_types.eot
index 3d52929..41a399a 100644
--- a/src/lib/efl/interfaces/efl_event_types.eot
+++ b/src/lib/efl/interfaces/efl_event_types.eot
@@ -30,6 +30,14 @@ enum Efl.Event.Flags
 {
/* Evas.Event_Flags */
none = 0, [[No fancy flags set]]
-   on_hold = (1 << 0),   [[This event is being delivered but should be put "on 
hold" until the on hold flag is unset. The event should be used for 
informational purposes and maybe some indications visually, but not actually 
perform anything]]
-   on_scroll = (1 << 1), [[This event flag indicates the event occurs while 
scrolling; for example, DOWN event occurs during scrolling; the event should be 
used for informational purposes and maybe some indications visually, but not 
actually perform anything]]
+   processed = (1 << 0), [[This event is being delivered and has been 
processed,
+   so it should be put "on hold" until the flag is 
unset.
+   The event should be used for informational purposes
+   and maybe some indications visually, but not
+   actually perform anything.]]
+   scrolling = (1 << 1), [[This event flag indicates the event occurs while
+   scrolling; for example, DOWN event occurs during
+   scrolling. The event should be used for 
informational
+   purposes and maybe some indications visually, but 
not
+   actually perform anything.]]
 }
diff --git a/src/lib/evas/Evas_Common.h b/src/lib/evas/Evas_Common.h
index 5e6a17b..725d12e 100644
--- a/src/lib/evas/Evas_Common.h
+++ b/src/lib/evas/Evas_Common.h
@@ -352,8 +352,8 @@ typedef Efl_Pointer_Flags  
Evas_Button_Flags;
 typedef Efl_Event_FlagsEvas_Event_Flags;
 
 #define EVAS_EVENT_FLAG_NONE   EFL_EVENT_FLAGS_NONE
-#define EVAS_EVENT_FLAG_ON_HOLDEFL_EVENT_FLAGS_ON_HOLD
-#define EVAS_EVENT_FLAG_ON_SCROLL  EFL_EVENT_FLAGS_ON_SCROLL
+#define EVAS_EVENT_FLAG_ON_HOLDEFL_EVENT_FLAGS_PROCESSED
+#define EVAS_EVENT_FLAG_ON_SCROLL  EFL_EVENT_FLAGS_SCROLLING
 
 typedef Efl_Gfx_Size_Hint_Aspect   Evas_Aspect_Control; /**< Aspect 
types/policies for scaling size hints, used for 
evas_object_size_hint_aspect_set */
 
diff --git a/src/lib/evas/canvas/efl_event_input.eo 
b/src/lib/evas/canvas/efl_event_input.eo
index 6f64da3..6e2e6cc 100644
--- a/src/lib/evas/canvas/efl_event_input.eo
+++ b/src/lib/evas/canvas/efl_event_input.eo
@@ -16,13 +16,13 @@ interface Efl.Event.Input (Efl.Event)
 flags: Efl.Event.Flags;
  }
   }
-  @property on_hold {
+  @property processed {
  [[$true if @.event_flags indicates the event is on hold.]]
  values {
 val: bool;
  }
   }
-  @property on_scroll {
+  @property scrolling {
  [[$true if @.event_flags indicates the event happened while 
scrolling.]]
  values {
 val: bool;
diff --git a/src/lib/evas/canvas/efl_event_key.c 
b/src/lib/evas/canvas/efl_event_key.c
index 5bb32f7..78659f9 100644
--- a/src/lib/evas/canvas/efl_event_key.c
+++ b/src/lib/evas/canvas/efl_event_key.c
@@ -207,33 +207,33 @@ _efl_event_key_efl_event_input_event_flags_get(Eo *obj 
EINA_UNUSED, Efl_Event_Ke
 }
 
 EOLIAN static void
-_efl_event_key_efl_event_input_on_hold_set(Eo *obj EINA_UNUSED, 
Efl_Event_Key_Data *pd, Eina_Bool val)
+_efl_event_key_efl_event_input_processed_set(Eo *obj EINA_UNUSED, 
Efl_Event_Key_Data *pd, Eina_Bool val)
 {
if (val)
- pd->event_flags |= EFL_EVENT_FLAGS_ON_HOLD;
+ pd->event_flags |= EFL_EVENT_FLAGS_PROCESSED;
else
- pd->event_flags &= ~EFL_EVENT_FLAGS_ON_HOLD;
+ pd->event_flags &= ~EFL_EVENT_FLAGS_PROCESSED;
 }
 
 EOLIAN static Eina_Bool
-_efl_event_key_efl_event_input_on_hold_get(Eo *obj EINA_UNUSED, 
Efl_Event_Key_Data *pd)
+_efl_event_key_efl_event_input_processed_get(Eo *obj EINA_UNUSED, 
Efl_Event_Key_Data *pd)
 {
-   return 

[EGIT] [core/efl] master 03/04: Evas: Rename Evas.Image into Efl.Canvas.Image.Internal

2016-06-09 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 79abba52c50840c043e4bb4dced6b533f9cdaebd
Author: Jean-Philippe Andre 
Date:   Thu Jun 9 17:30:05 2016 +0900

Evas: Rename Evas.Image into Efl.Canvas.Image.Internal

Make it abstract.
And add Evas.Image as a legacy-only class.
---
 src/Makefile_Evas.am   |   3 +-
 src/examples/evas/evas-object-manipulation-eo.c|   4 +-
 src/lib/edje/edje_calc.c   |   2 +-
 src/lib/edje/edje_util.c   |   4 +-
 src/lib/elementary/efl_ui_flip.c   |   2 +-
 src/lib/evas/Evas_Eo.h |   2 +-
 src/lib/evas/canvas/efl_canvas_image.c |  62 +-
 ...{evas_image.eo => efl_canvas_image_internal.eo} |  20 +---
 src/lib/evas/canvas/efl_canvas_proxy.c |  24 ++--
 src/lib/evas/canvas/efl_canvas_scene3d.c   |   8 +-
 src/lib/evas/canvas/evas_canvas3d_texture.c|   2 +-
 src/lib/evas/canvas/evas_image.eo  |  48 +---
 src/lib/evas/canvas/evas_image_legacy.c|  80 +
 src/lib/evas/canvas/evas_main.c|   4 +-
 src/lib/evas/canvas/evas_object_image.c| 125 -
 src/lib/evas/canvas/evas_object_main.c |   4 +-
 src/lib/evas/canvas/evas_render.c  |   4 +-
 src/tests/evas/evas_test_image.c   |   2 +-
 18 files changed, 177 insertions(+), 223 deletions(-)

diff --git a/src/Makefile_Evas.am b/src/Makefile_Evas.am
index bf3208f..4a2aedd 100644
--- a/src/Makefile_Evas.am
+++ b/src/Makefile_Evas.am
@@ -10,7 +10,7 @@ evas_eolian_pub_files = \
lib/evas/canvas/evas_object_smart.eo \
lib/evas/canvas/evas_common_interface.eo \
lib/evas/canvas/evas_canvas.eo \
-   lib/evas/canvas/evas_image.eo \
+   lib/evas/canvas/efl_canvas_image_internal.eo \
lib/evas/canvas/evas_draggable_interface.eo \
lib/evas/canvas/evas_clickable_interface.eo \
lib/evas/canvas/evas_scrollable_interface.eo \
@@ -56,6 +56,7 @@ evas_eolian_legacy_files = \
lib/evas/canvas/evas_out.eo \
lib/evas/canvas/evas_text.eo \
lib/evas/canvas/evas_textgrid.eo \
+   lib/evas/canvas/evas_image.eo \
$(NULL)
 
 evas_eolian_priv_files = \
diff --git a/src/examples/evas/evas-object-manipulation-eo.c 
b/src/examples/evas/evas-object-manipulation-eo.c
index f0d3efa..f32de7b 100644
--- a/src/examples/evas/evas-object-manipulation-eo.c
+++ b/src/examples/evas/evas-object-manipulation-eo.c
@@ -190,7 +190,7 @@ main(void)
evas_object_event_callback_add(
  d.bg, EVAS_CALLBACK_KEY_DOWN, _on_keydown, NULL);
 
-   d.img = eo_add(EVAS_IMAGE_CLASS, d.canvas);
+   d.img = eo_add(EFL_CANVAS_IMAGE_CLASS, d.canvas);
 
/* As soon as 'canvas' object is a parent for 'image' object,
 * 'canvas' keeps reference to 'image'.
@@ -216,7 +216,7 @@ main(void)
  }
 
/* border on the image's clipper, here just to emphasize its position */
-   d.clipper_border = eo_add(EVAS_IMAGE_CLASS, d.canvas);
+   d.clipper_border = eo_add(EFL_CANVAS_IMAGE_CLASS, d.canvas);
efl_file_set(d.clipper_border, border_img_path, NULL);
err = efl_image_load_error_get(d.clipper_border);
 
diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c
index eab4f77..add1e75 100644
--- a/src/lib/edje/edje_calc.c
+++ b/src/lib/edje/edje_calc.c
@@ -3656,7 +3656,7 @@ _edje_map_prop_set(Evas_Map *map, const Edje_Calc_Params 
*pf,
 
if (ep->part->type == EDJE_PART_TYPE_IMAGE ||
((ep->part->type == EDJE_PART_TYPE_SWALLOW) &&
-(eo_isa(mo, EVAS_IMAGE_CLASS) &&
+(eo_isa(mo, EFL_CANVAS_IMAGE_INTERNAL_CLASS) &&
  (!evas_object_image_source_get(mo
)
  {
diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
index 40b4717..91be7b5 100644
--- a/src/lib/edje/edje_util.c
+++ b/src/lib/edje/edje_util.c
@@ -6490,7 +6490,7 @@ _edje_real_part_swallow(Edje *ed,
evas_object_data_set(rp->typedata.swallow->swallowed_object, ".edje", ed);
 
//If the map is enabled, uv should be updated when image size is changed.
-   if (eo_isa(rp->typedata.swallow->swallowed_object, EVAS_IMAGE_CLASS))
+   if (eo_isa(rp->typedata.swallow->swallowed_object, 
EFL_CANVAS_IMAGE_INTERNAL_CLASS))
  evas_object_event_callback_add(obj_swallow, EVAS_CALLBACK_IMAGE_RESIZE,
 _edje_object_part_swallow_image_resize_cb,
 rp);
@@ -6535,7 +6535,7 @@ _edje_real_part_swallow_clear(Edje *ed, Edje_Real_Part 
*rp)
EVAS_CALLBACK_CHANGED_SIZE_HINTS,

_edje_object_part_swallow_changed_hints_cb,
rp);
-   if (eo_isa(rp->typedata.swallow->swallowed_object, 

Re: [E-devel] Problem with elemines

2016-06-09 Thread David Seikel
On Fri, 10 Jun 2016 11:28:43 +0900 Jérôme Pinot 
wrote:

> Le jeudi 09 juin 2016 à 16:53 -0700, Tim Bird a écrit :
> > Hi EFL devs...
> > 
> > I am a newbie to EFL development.  I'm trying to write a little test
> > program for EFL, and wanted to test out elemines as an example of
> > some of
> > the techniques.
> > However, I ran into some problems.
> > 
> > I am running EFL 17 on Ubuntu 14.04.  I cloned elemines from
> > https://git.enlightenment.org/games/elemines.git
> > and was able to get it built.
> Please use a stable release before reporting bugs. The git version is
> not supposed to work at any time. The last release of elemines could
> be find here: https://sourceforge.net/projects/elemines/files/0.2.3/
> It's a bit old but should run fine.
> You'll need elementary and etrophy. If your distro doesn't provide it,
> you will have to compile them yourself. Putting them in /usr/local/lib
> is normally not an issue as this path is normally already in your
> /etc/ld.so.conf. You maybe just forgot to launch ldconfig.

If you are trying to build things from git, right now Elementary (and a
couple of other things) are in the process of being folded into the
main EFL libraries, instead of being separate.  On top of that, new EO
infrastructure is also being added, but I think you have to explicitly
enable beta APIs to get that new stuff.  So that's currently all in a
state of flux, may or may not work at any given moment, and the new
stuff isn't well documented yet.

Sticking with stable, released source tarballs of everything for the
moment might be best.  Especially for a newbie trying to figure out how
to use it all.

> Kind regards,
> > 1) - path to libetrophy error
> > When I try to run it, I got the following error message:
> > elemines: error while loading shared libraries: libetrophy.so.0:
> > cannot open shared object file: No such file or directory
> > 
> > During the build, I figured out I needed etrophy, and built and
> > installed the shared
> > library for that.  They etrophy libraries ended up in /usr/local/lib
> > 
> > I can work around this using 'export
> > LD_LIBRARY_PATH=/usr/local/lib', before running elemines.
> > 
> > 2) missing some elementary config
> > When I run elemines (with the right library path), I get a warning
> > from the program:
> > 
> > ERR<27210>:eio lib/eio/eio_monitor.c:339
> > eio_monitor_stringshared_add() monitored path
> > '/home/CORPUSERS/10102229/.elementary/config/standard' not found.
> > 
> > I don't have the enlightenment window manager installed (to my
> > knowledge). I'm not sure what is being looked for here,
> > but the warning is a bit disconcerting.  I can make the warning go
> > away by creating the directory
> > ~/.elementary/config/standard, but I'm worried that something is
> > supposed to be there that's not.
> > 
> > 3) Segmentation fault
> > This is the most serious problem.  elemines gets a segmentation
> > fault when I do the first mouse click in the
> > game grid.
> > 
> > I debugged the program a bit and found that there's a sscanf on a
> > string used to map the mouse click to
> > the game grid.  Here's the sscanf:
> >   sscanf(source, "board[%i,%i]:overlay", , );
> > 
> > but here's the value of the 'source' string used with it:
> >   board[item_0x7fff8daa2c60{7,2}]:overlay
> > 
> > this is in the routine _click() in src/game.c
> > Note that there's no error handling for the sscanf.  However, the
> > string clearly is not what's expected.
> > 
> > In another part of the program, there's this line, which seems to
> > specify the string for the
> > mouse click grid mapping.
> > 
> > edje_object_signal_callback_add(edje, "mouse,clicked,*",
> > "board\\[*\\]:overlay", _click, NULL);
> > 
> > It appears that elemines expects the coordinates from the specified
> > string inside the
> > brackets (I'm guessing that's what the * is for in the string.
> > However, I don't know
> > where this 'item_0x7fff8daa2c60{..}' is coming from.
> > 
> > Is there something from edje that's missing, to have the mouse
> > click string come out properly?
> > 
> > Thanks,
> >  -- Tim
> > 
> >  -- Tim Bird
> > Senior Software Engineer, Sony Mobile
> > Architecture Group Chair, CE Workgroup, Linux Foundation


-- 
A big old stinking pile of genius that no one wants
coz there are too many silver coated monkeys in the world.


signature.asc
Description: PGP signature
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net

[EGIT] [tools/enventor] master 02/02: preference_setting: improve tooltip messages.

2016-06-09 Thread Hermet Park
hermet pushed a commit to branch master.

http://git.enlightenment.org/tools/enventor.git/commit/?id=bee36c5f6c75855d61808a69ce917e96f4c79bf6

commit bee36c5f6c75855d61808a69ce917e96f4c79bf6
Author: Hermet Park 
Date:   Fri Jun 10 11:44:07 2016 +0900

preference_setting: improve tooltip messages.
---
 src/bin/preference_setting.c | 54 
 1 file changed, 35 insertions(+), 19 deletions(-)

diff --git a/src/bin/preference_setting.c b/src/bin/preference_setting.c
index e5b92b2..150684a 100644
--- a/src/bin/preference_setting.c
+++ b/src/bin/preference_setting.c
@@ -40,7 +40,6 @@ toggle_create(Evas_Object *parent, const char *text, 
Eina_Bool state,
evas_object_size_hint_align_set(toggle, EVAS_HINT_FILL, 0);
elm_object_text_set(toggle, text);
elm_object_tooltip_text_set(toggle, tooltip_msg);
-   elm_object_tooltip_orient_set(toggle, ELM_TOOLTIP_ORIENT_TOP_LEFT);
evas_object_show(toggle);
 
return toggle;
@@ -155,7 +154,6 @@ preference_setting_content_get(preference_setting_data *psd,
 
elm_object_tooltip_text_set(box2,
_("Set current live view size."));
-   elm_object_tooltip_orient_set(box2, ELM_TOOLTIP_ORIENT_TOP_LEFT);
//Label (View Size)
 
/* This layout is intended to put the label aligned to left side
@@ -224,38 +222,56 @@ preference_setting_content_get(preference_setting_data 
*psd,
//Toggle (Tools)
Evas_Object *toggle_tools = toggle_create(box, _("Tools"),
  config_tools_get(),
- _("Show and hide Toolbar."));
+ _("Tools (F8)"
+ "Display Tools"));
elm_box_pack_end(box, toggle_tools);
 
//Toggle (Console)
-   Evas_Object *toggle_console = toggle_create(box, _("Auto Hiding Console"),
-   config_console_get(),
-_("Show console box when it need to be shown."));
+   Evas_Object *toggle_console =
+  toggle_create(box, _("Auto Hiding Console"), config_console_get(),
+_("Hide Console box automatically"
+  "when no messages. If you fixed"
+  "all grammatic edc errors so the error"
+  "messages has gone, Console box will"
+  "be disappeared automatically."));
elm_box_pack_end(box, toggle_console);
 
//Toggle (Auto Indentation)
-   Evas_Object *toggle_indent = toggle_create(box, _("Auto Indentation"),
-  config_auto_indent_get(),
-  _("Apply auto indentation"
-"when inserting script."));
+   Evas_Object *toggle_indent =
+  toggle_create(box, _("Auto Indentation"), config_auto_indent_get(),
+_("Auto Indentation (Ctrl + I)"
+  "Apply auto indentation for text editing."
+  "When wrapping the text around,"
+  "Enventor inserts spaces automatically"
+  "for the line indentation"));
elm_box_pack_end(box, toggle_indent);
 
//Toggle (Auto Completion)
-   Evas_Object *toggle_autocomp = toggle_create(box, _("Auto Completion"),
-config_auto_complete_get(),
-  _("Enable and disable keyword auto completion."));
+   Evas_Object *toggle_autocomp =
+  toggle_create(box, _("Auto Completion"), config_auto_complete_get(),
+_("Auto Completion (Ctrl + O)"
+  "Display candidate keywords popup with"
+  "regards to the current editing contxt."
+  "When you type texts in editor, candidate"
+  "popup will be popped. Once you choose one"
+  "of items in it, template code with regards"
+  "to the item will be inserted."));
elm_box_pack_end(box, toggle_autocomp);
 
//Toggle (Smart Undo/Redo)
-   Evas_Object *toggle_smart_undo_redo = toggle_create(box, _("Smart 
Undo/Redo"),
-config_smart_undo_redo_get(),
-  _("Redo and Undo script by 
word."));
+   Evas_Object *toggle_smart_undo_redo =
+  toggle_create(box, _("Smart Undo/Redo"), config_smart_undo_redo_get(),
+_("Redo/Undo text by word. Otherwise, it"
+  "works by character"));
elm_box_pack_end(box, toggle_smart_undo_redo);
 
//Toggle (Red Alert)
-   Evas_Object *toggle_red_alert = toggle_create(box, _("Error Message Red 
Alert"),
- config_red_alert_get(),
-  _("When error is occured, show alert with red 
lights."));
+   

[EGIT] [tools/enventor] master 01/02: preference_setting: improve tooltips messages

2016-06-09 Thread Taehyub Kim
hermet pushed a commit to branch master.

http://git.enlightenment.org/tools/enventor.git/commit/?id=dae6778bb8fee6ae8d3d174a0206444bc66954ca

commit dae6778bb8fee6ae8d3d174a0206444bc66954ca
Author: Taehyub Kim 
Date:   Fri Jun 10 11:11:58 2016 +0900

preference_setting: improve tooltips messages

Summary: add more comments for preference

Test Plan:
1. launch enventor
2. move mouse cursor on preference of setting
3. see the tooltip messeges

Reviewers: Hermet, Jaehyun_Cho, NikaWhite

Differential Revision: https://phab.enlightenment.org/D4033
---
 src/bin/preference_setting.c | 27 ---
 1 file changed, 20 insertions(+), 7 deletions(-)

diff --git a/src/bin/preference_setting.c b/src/bin/preference_setting.c
index 5cb479c..e5b92b2 100644
--- a/src/bin/preference_setting.c
+++ b/src/bin/preference_setting.c
@@ -30,7 +30,8 @@ label_create(Evas_Object *parent, const char *text)
 }
 
 static Evas_Object *
-toggle_create(Evas_Object *parent, const char *text, Eina_Bool state)
+toggle_create(Evas_Object *parent, const char *text, Eina_Bool state,
+  const char *tooltip_msg)
 {
Evas_Object *toggle = elm_check_add(parent);
elm_object_style_set(toggle, "toggle");
@@ -38,6 +39,8 @@ toggle_create(Evas_Object *parent, const char *text, 
Eina_Bool state)
evas_object_size_hint_weight_set(toggle, EVAS_HINT_EXPAND, 0);
evas_object_size_hint_align_set(toggle, EVAS_HINT_FILL, 0);
elm_object_text_set(toggle, text);
+   elm_object_tooltip_text_set(toggle, tooltip_msg);
+   elm_object_tooltip_orient_set(toggle, ELM_TOOLTIP_ORIENT_TOP_LEFT);
evas_object_show(toggle);
 
return toggle;
@@ -150,6 +153,9 @@ preference_setting_content_get(preference_setting_data *psd,
 
elm_box_pack_end(box, box2);
 
+   elm_object_tooltip_text_set(box2,
+   _("Set current live view size."));
+   elm_object_tooltip_orient_set(box2, ELM_TOOLTIP_ORIENT_TOP_LEFT);
//Label (View Size)
 
/* This layout is intended to put the label aligned to left side
@@ -217,32 +223,39 @@ preference_setting_content_get(preference_setting_data 
*psd,
 
//Toggle (Tools)
Evas_Object *toggle_tools = toggle_create(box, _("Tools"),
- config_tools_get());
+ config_tools_get(),
+ _("Show and hide Toolbar."));
elm_box_pack_end(box, toggle_tools);
 
//Toggle (Console)
Evas_Object *toggle_console = toggle_create(box, _("Auto Hiding Console"),
-   config_console_get());
+   config_console_get(),
+_("Show console box when it need to be shown."));
elm_box_pack_end(box, toggle_console);
 
//Toggle (Auto Indentation)
Evas_Object *toggle_indent = toggle_create(box, _("Auto Indentation"),
-  config_auto_indent_get());
+  config_auto_indent_get(),
+  _("Apply auto indentation"
+"when inserting script."));
elm_box_pack_end(box, toggle_indent);
 
//Toggle (Auto Completion)
Evas_Object *toggle_autocomp = toggle_create(box, _("Auto Completion"),
-config_auto_complete_get());
+config_auto_complete_get(),
+  _("Enable and disable keyword auto completion."));
elm_box_pack_end(box, toggle_autocomp);
 
//Toggle (Smart Undo/Redo)
Evas_Object *toggle_smart_undo_redo = toggle_create(box, _("Smart 
Undo/Redo"),
-config_smart_undo_redo_get());
+config_smart_undo_redo_get(),
+  _("Redo and Undo script by 
word."));
elm_box_pack_end(box, toggle_smart_undo_redo);
 
//Toggle (Red Alert)
Evas_Object *toggle_red_alert = toggle_create(box, _("Error Message Red 
Alert"),
- config_red_alert_get());
+ config_red_alert_get(),
+  _("When error is occured, show alert with red 
lights."));
evas_object_size_hint_weight_set(toggle_red_alert, EVAS_HINT_EXPAND,
 EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(toggle_red_alert, EVAS_HINT_FILL, 0);

-- 




Re: [E-devel] Problem with elemines

2016-06-09 Thread Jérôme Pinot
Le jeudi 09 juin 2016 à 16:53 -0700, Tim Bird a écrit :
> Hi EFL devs...
> 
> I am a newbie to EFL development.  I'm trying to write a little test
> program for EFL, and wanted to test out elemines as an example of
> some of
> the techniques.
> However, I ran into some problems.
> 
> I am running EFL 17 on Ubuntu 14.04.  I cloned elemines from
> https://git.enlightenment.org/games/elemines.git
> and was able to get it built.
Please use a stable release before reporting bugs. The git version is
not supposed to work at any time. The last release of elemines could be
find here: https://sourceforge.net/projects/elemines/files/0.2.3/ It's
a bit old but should run fine.
You'll need elementary and etrophy. If your distro doesn't provide it,
you will have to compile them yourself. Putting them in /usr/local/lib
is normally not an issue as this path is normally already in your
/etc/ld.so.conf. You maybe just forgot to launch ldconfig.
Kind regards,
> 1) - path to libetrophy error
> When I try to run it, I got the following error message:
> elemines: error while loading shared libraries: libetrophy.so.0: cannot
> open shared object file: No such file or directory
> 
> During the build, I figured out I needed etrophy, and built and installed
> the shared
> library for that.  They etrophy libraries ended up in /usr/local/lib
> 
> I can work around this using 'export LD_LIBRARY_PATH=/usr/local/lib',
> before running elemines.
> 
> 2) missing some elementary config
> When I run elemines (with the right library path), I get a warning from the
> program:
> 
> ERR<27210>:eio lib/eio/eio_monitor.c:339 eio_monitor_stringshared_add()
> monitored path '/home/CORPUSERS/10102229/.elementary/config/standard' not
> found.
> 
> I don't have the enlightenment window manager installed (to my knowledge).
> I'm not sure what is being looked for here,
> but the warning is a bit disconcerting.  I can make the warning go away by
> creating the directory
> ~/.elementary/config/standard, but I'm worried that something is supposed
> to be there that's not.
> 
> 3) Segmentation fault
> This is the most serious problem.  elemines gets a segmentation fault when
> I do the first mouse click in the
> game grid.
> 
> I debugged the program a bit and found that there's a sscanf on a string
> used to map the mouse click to
> the game grid.  Here's the sscanf:
>   sscanf(source, "board[%i,%i]:overlay", , );
> 
> but here's the value of the 'source' string used with it:
>   board[item_0x7fff8daa2c60{7,2}]:overlay
> 
> this is in the routine _click() in src/game.c
> Note that there's no error handling for the sscanf.  However, the string
> clearly is not what's expected.
> 
> In another part of the program, there's this line, which seems to specify
> the string for the
> mouse click grid mapping.
> 
> edje_object_signal_callback_add(edje, "mouse,clicked,*",
> "board\\[*\\]:overlay", _click, NULL);
> 
> It appears that elemines expects the coordinates from the specified string
> inside the
> brackets (I'm guessing that's what the * is for in the string.  However, I
> don't know
> where this 'item_0x7fff8daa2c60{..}' is coming from.
> 
> Is there something from edje that's missing, to have the mouse click string
> come out properly?
> 
> Thanks,
>  -- Tim
> 
>  -- Tim Bird
> Senior Software Engineer, Sony Mobile
> Architecture Group Chair, CE Workgroup, Linux Foundation
> --
> What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
> patterns at an interface-level. Reveals which users, apps, and protocols are 
> consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
> J-Flow, sFlow and other flows. Make informed decisions using capacity 
> planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
> 
> ___
> enlightenment-devel mailing list
> 
enlightenment-devel@lists.sourceforge.net> 
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel> 

-- 
Jérôme Pinot
http://ngc891.blogdns.net


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] Struct passed by value

2016-06-09 Thread Jean-Philippe André
Hi,


This is bu5hman's idea mostly, but I'd like to bring the question to the
attention of everyone, as I had the same idea before.

For simple structs (think Eina.Rectangle, and Efl.Gfx.Color), would it be
acceptable to pass them by value instead of reference, in C?
That is:

Eina_Rectangle a = {1, 2, 3, 4};
rect_set(obj, rect);
Eina_Rectangle b = rect_get(obj);

Or even (non portable way, but applications could feel free to use this):
rect_set(obj, (Eina_Rectangle){.w = 13, .h = 37});


I understand this could simplify some code.


My main problem with it is a concern about ABI compatibility. It seems GCC
itself has various ways to pass structs by value. See:
http://stackoverflow.com/questions/161788/are-there-any-downsides-to-passing-structs-by-value-in-c-rather-than-passing-a


Does anyone have real-life knowledge about this? How is it on Windows?
Any strong arguments in favor or against?


-- 
Jean-Philippe André
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [tools/enventor] master 01/01: status: update tooltip message.

2016-06-09 Thread Hermet Park
hermet pushed a commit to branch master.

http://git.enlightenment.org/tools/enventor.git/commit/?id=d3bf7d155c8bcc638e6168bcfd5688fc1b4674d8

commit d3bf7d155c8bcc638e6168bcfd5688fc1b4674d8
Author: Hermet Park 
Date:   Fri Jun 10 11:10:42 2016 +0900

status: update tooltip message.
---
 src/bin/statusbar.c | 23 ++-
 1 file changed, 14 insertions(+), 9 deletions(-)

diff --git a/src/bin/statusbar.c b/src/bin/statusbar.c
index b0cee41..4e14c0e 100644
--- a/src/bin/statusbar.c
+++ b/src/bin/statusbar.c
@@ -319,44 +319,49 @@ stats_init(Evas_Object *parent)
 
//View Scale button
create_statusbar_btn(layout, "expand", "scale_btn",
-_("View Scale (Ctrl + Mouse Wheel)"
-  "Set live view scale from 0.10 to 5.00"),
+_("View Zoom Level (Ctrl + Mouse Wheel)"
+  "Zooming live view in or out."),
 ELM_TOOLTIP_ORIENT_TOP_RIGHT,
 view_scale_btn_cb, sd);
//View Resize Button
create_statusbar_btn(layout, "expand", "resize_btn",
-_("Resize View Size"
-  "Resize live View width and height."),
+_("Resize live view width and height."),
 ELM_TOOLTIP_ORIENT_TOP,
 view_resize_btn_cb, sd);
//View Invert Button
create_statusbar_btn(layout, "invert", "invert_btn",
-_("Invert View Size"
-  "Change aspect ratio between width and height."),
+_("Swap the live view width and height."),
 ELM_TOOLTIP_ORIENT_TOP,
 view_invert_btn_cb, sd);
 
+   //Arrow Tooltip
Evas_Object *arrow_tooltip = elm_button_add(layout);
elm_object_style_set(arrow_tooltip, ENVENTOR_NAME);
elm_object_part_content_set(layout, "elm.swallow.cursor_arrow.tooltip",
arrow_tooltip);
-   elm_object_tooltip_text_set(arrow_tooltip, _("Current mouse position in 
live view."));
+   elm_object_tooltip_text_set(arrow_tooltip,
+_("Mouse cursor position in live view."
+  "Absolute Coordinate | Relative 
Coordinate"));
elm_object_tooltip_orient_set(arrow_tooltip, ELM_TOOLTIP_ORIENT_TOP);
elm_object_focus_allow_set(arrow_tooltip, EINA_FALSE);
 
+   //Group Tooltip
Evas_Object *group_tooltip = elm_button_add(layout);
elm_object_style_set(group_tooltip, ENVENTOR_NAME);
elm_object_part_content_set(layout, "elm.swallow.group_icon.tooltip",
group_tooltip);
-   elm_object_tooltip_text_set(group_tooltip, _("Current group in live 
view."));
+   elm_object_tooltip_text_set(group_tooltip,
+   _("Current editing group name."));
elm_object_tooltip_orient_set(group_tooltip, ELM_TOOLTIP_ORIENT_TOP);
elm_object_focus_allow_set(group_tooltip, EINA_FALSE);
 
+   //Line Tooltip
Evas_Object *line_tooltip = elm_button_add(layout);
elm_object_style_set(line_tooltip, ENVENTOR_NAME);
elm_object_part_content_set(layout, "elm.swallow.line.tooltip",
line_tooltip);
-   elm_object_tooltip_text_set(line_tooltip, _("Line information 
(current:max)."));
+   elm_object_tooltip_text_set(line_tooltip,
+   _("Cursor line number : Max line number"));
elm_object_tooltip_orient_set(line_tooltip, ELM_TOOLTIP_ORIENT_TOP_LEFT);
elm_object_focus_allow_set(line_tooltip, EINA_FALSE);
 

-- 




[EGIT] [core/efl] master 01/04: eina: Fixes on promises behavior when cancelling

2016-06-09 Thread Lauro Moura
felipealmeida pushed a commit to branch master.

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

commit 3b090b808bf668f393d01c87dbfe5071615a7a72
Author: Lauro Moura 
Date:   Tue Jun 7 14:05:15 2016 -0300

eina: Fixes on promises behavior when cancelling

- Free the cancel callbacks on promise delete
- Cancelling an ended promise should be a nop
- More tests to increase coverage
---
 src/lib/eina/eina_promise.c|  12 +-
 src/tests/eina/eina_test_promise.c | 241 -
 2 files changed, 251 insertions(+), 2 deletions(-)

diff --git a/src/lib/eina/eina_promise.c b/src/lib/eina/eina_promise.c
index 7ce0112..eac1517 100644
--- a/src/lib/eina/eina_promise.c
+++ b/src/lib/eina/eina_promise.c
@@ -147,6 +147,14 @@ static void 
_eina_promise_free_progress_notify_callback_node(void* node)
free(progress_notify_cb);
 }
 
+static void _eina_promise_free_cancel_callback_node(void *node)
+{
+_Eina_Promise_Cancel_Cb *cancel_cb = node;
+if (cancel_cb->free)
+  cancel_cb->free(cancel_cb->data);
+free(cancel_cb);
+}
+
 static void _eina_promise_finish(_Eina_Promise_Default_Owner* promise);
 static void _eina_promise_ref(_Eina_Promise_Default* promise);
 static void _eina_promise_unref(_Eina_Promise_Default* promise);
@@ -249,6 +257,8 @@ _eina_promise_del(_Eina_Promise_Default_Owner* promise)
 
&_eina_promise_free_progress_callback_node);

_eina_promise_free_callback_list(>promise.progress_notify_callbacks,
 
&_eina_promise_free_progress_notify_callback_node);
+   _eina_promise_free_callback_list(>promise.cancel_callbacks,
+&_eina_promise_free_cancel_callback_node);
free(promise);
 }
 
@@ -437,7 +447,7 @@ _eina_promise_cancel(_Eina_Promise_Default* promise)
 {
_Eina_Promise_Default_Owner* owner = EINA_PROMISE_GET_OWNER(promise);
 
-   if (!owner->promise.is_cancelled)
+   if (!owner->promise.is_cancelled && !owner->promise.has_finished)
  {
 owner->promise.is_cancelled = EINA_TRUE;
 owner->promise.has_finished = EINA_TRUE;
diff --git a/src/tests/eina/eina_test_promise.c 
b/src/tests/eina/eina_test_promise.c
index 4629869..086b6d5 100644
--- a/src/tests/eina/eina_test_promise.c
+++ b/src/tests/eina/eina_test_promise.c
@@ -80,6 +80,42 @@ START_TEST(eina_test_promise_normal_lifetime_all)
 }
 END_TEST
 
+static void
+_eina_test_error_cb(void *data, Eina_Error error)
+{
+*(int *)data = error;
+}
+
+START_TEST(eina_test_promise_error_set)
+{
+   Eina_Promise_Owner* promise_owner;
+   Eina_Promise* promise;
+   int ran = 0;
+   int error = 0xdeadbeef;
+
+   eina_init();
+
+   promise_owner = eina_promise_value_add(0);
+
+   promise = eina_promise_owner_promise_get(promise_owner);
+
+   eina_promise_ref(promise);
+
+   eina_promise_then(promise, NULL, &_eina_test_error_cb, );
+
+   eina_promise_owner_error_set(promise_owner, error);
+
+   ck_assert(ran == error);
+   ck_assert_int_eq(error, eina_promise_error_get(promise));
+   ck_assert(!eina_promise_pending_is(promise));
+   ck_assert(!eina_promise_owner_cancelled_is(promise_owner));
+
+   eina_promise_unref(promise);
+
+   eina_shutdown();
+}
+END_TEST
+
 START_TEST(eina_test_promise_immediate_set_lifetime)
 {
Eina_Promise_Owner* owner;
@@ -208,7 +244,95 @@ START_TEST(eina_test_promise_cancel_promise)
// Finally free the owner
eina_promise_owner_value_set(owner, NULL, NULL);
 
-   ck_assert(ran);
+   eina_shutdown();
+}
+END_TEST
+
+static void
+_cancel_then_callback(void *data, void *value EINA_UNUSED)
+{
+   *(int*)data = 1;
+}
+
+static void
+_cancel_error_callback(void *data, Eina_Error error EINA_UNUSED)
+{
+   *(int*)data = -1;
+}
+
+START_TEST(eina_test_promise_cancel_finished_promise)
+{
+   Eina_Bool cancel_ran = EINA_FALSE;
+   int ran = 0;
+   Eina_Promise_Owner* owner;
+   Eina_Promise* promise;
+
+   eina_init();
+
+   owner = eina_promise_value_add(0);
+   eina_promise_owner_default_cancel_cb_add(owner, _callback, 
_ran, NULL);
+
+   promise = eina_promise_owner_promise_get(owner);
+
+   eina_promise_then(promise, &_cancel_then_callback, &_cancel_error_callback, 
);
+
+   eina_promise_ref(promise);
+   eina_promise_owner_value_set(owner, NULL, NULL);
+
+   ck_assert(!cancel_ran);
+   ck_assert_int_eq(1, ran);
+   ck_assert(!eina_promise_owner_cancelled_is(owner));
+   ck_assert(!eina_promise_pending_is(promise));
+   ck_assert_int_eq(0, eina_promise_error_get(promise));
+
+   eina_promise_cancel(promise);
+
+   // The conditions should not have been changed.
+   ck_assert(!cancel_ran);
+   ck_assert_int_eq(1, ran);
+   ck_assert(!eina_promise_owner_cancelled_is(owner));
+   ck_assert(!eina_promise_pending_is(promise));
+   ck_assert_int_eq(0, eina_promise_error_get(promise));
+
+   eina_promise_unref(promise);
+
+   eina_shutdown();
+}
+END_TEST
+

[EGIT] [core/efl] master 03/04: eina: Remove value type promises

2016-06-09 Thread Lauro Moura
felipealmeida pushed a commit to branch master.

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

commit 46843551c0af0b58c67cb2f998ece53a32437748
Author: Lauro Moura 
Date:   Wed Jun 8 19:33:29 2016 -0300

eina: Remove value type promises

All values in promises are now considered as by-pointer.
---
 src/benchmarks/eina/eina_bench_promise.c | 124 +--
 src/lib/ecore/ecore_thread_promise.c |  22 --
 src/lib/eina/eina_promise.c  | 294 ---
 src/lib/eina/eina_promise.h  |  85 +
 src/lib/eio/eio_job.c|  30 +-
 src/lib/eio/eio_model.c  |  14 +-
 src/lib/eldbus/eldbus_model_arguments.c  |  18 +-
 src/lib/eldbus/eldbus_model_connection.c |  15 +-
 src/lib/eldbus/eldbus_model_object.c |  15 +-
 src/lib/eldbus/eldbus_model_proxy.c  |  23 +-
 src/tests/ecore/ecore_test_job.c |   3 +-
 src/tests/ecore/ecore_test_promise.c |   8 +-
 src/tests/eina/eina_suite.c  | 104 +++---
 src/tests/eina/eina_test_promise.c   | 600 ++-
 14 files changed, 399 insertions(+), 956 deletions(-)

diff --git a/src/benchmarks/eina/eina_bench_promise.c 
b/src/benchmarks/eina/eina_bench_promise.c
index 90a39df..6baabac 100644
--- a/src/benchmarks/eina/eina_bench_promise.c
+++ b/src/benchmarks/eina/eina_bench_promise.c
@@ -67,7 +67,7 @@ eina_bench_promise_sync_then(int request)
 
eina_init();
 
-   Eina_Promise_Owner* owner = eina_promise_value_add(sizeof(struct 
value_type));
+   Eina_Promise_Owner* owner = eina_promise_add();
Eina_Promise* promise = eina_promise_owner_promise_get(owner);
eina_promise_ref(promise);
 
@@ -87,116 +87,6 @@ eina_bench_promise_sync_then(int request)
eina_shutdown();
 }
 
-static void
-eina_bench_promise_copy_value_set_after_then(int request)
-{
-   const char *tmp;
-   unsigned int j;
-   int i;
-
-   eina_init();
-
-   struct value_type const v = {0, 0, 0, 0};
-
-   for (j = 0; j != 200; ++j)
-  for (i = 0; i != request; ++i)
-{
-   Eina_Promise_Owner* owner = eina_promise_value_add(sizeof(struct 
value_type));
-   Eina_Promise* promise = eina_promise_owner_promise_get(owner);
-
-   eina_promise_then(promise, , NULL, NULL);
-   eina_promise_owner_value_set(owner, , NULL);
-}
-
-   /* Suppress warnings as we really don't want to do anything. */
-   (void) tmp;
-
-   eina_shutdown();
-}
-
-static void
-eina_bench_promise_no_copy_value_set_after_then(int request)
-{
-   const char *tmp;
-   unsigned int j;
-   int i;
-
-   eina_init();
-
-   for (j = 0; j != 200; ++j)
-  for (i = 0; i != request; ++i)
-{
-   Eina_Promise_Owner* owner = eina_promise_value_add(sizeof(struct 
value_type));
-   Eina_Promise* promise = eina_promise_owner_promise_get(owner);
-   struct value_type* v = eina_promise_owner_buffer_get(owner);
-
-   eina_promise_then(promise, , NULL, NULL);
-
-   v->x = v->y = v-> w = v->h = 0;
-   eina_promise_owner_value_set(owner, NULL, NULL);
-}
-
-   /* Suppress warnings as we really don't want to do anything. */
-   (void) tmp;
-
-   eina_shutdown();
-}
-
-static void
-eina_bench_promise_no_copy_value_set_before_then(int request)
-{
-   const char *tmp;
-   unsigned int j;
-   int i;
-
-   eina_init();
-
-   for (j = 0; j != 200; ++j)
-  for (i = 0; i != request; ++i)
-{
-   Eina_Promise_Owner* owner = eina_promise_value_add(sizeof(struct 
value_type));
-   Eina_Promise* promise = eina_promise_owner_promise_get(owner);
-   struct value_type* v = eina_promise_owner_buffer_get(owner);
-
-   v->x = v->y = v-> w = v->h = 0;
-   eina_promise_owner_value_set(owner, NULL, NULL);
-
-   eina_promise_then(promise, , NULL, NULL);
-}
-
-   /* Suppress warnings as we really don't want to do anything. */
-   (void) tmp;
-
-   eina_shutdown();
-}
-
-static void
-eina_bench_promise_copy_value_set_before_then(int request)
-{
-   const char *tmp;
-   unsigned int j;
-   int i;
-
-   eina_init();
-
-   struct value_type const v = {0, 0, 0, 0};
-
-   for (j = 0; j != 200; ++j)
-  for (i = 0; i != request; ++i)
-{
-   Eina_Promise_Owner* owner = eina_promise_value_add(sizeof(struct 
value_type));
-   Eina_Promise* promise = eina_promise_owner_promise_get(owner);
-
-   eina_promise_then(promise, , NULL, NULL);
-   eina_promise_owner_value_set(owner, , NULL);
-}
-
-   /* Suppress warnings as we really don't want to do anything. */
-   (void) tmp;
-
-   eina_shutdown();
-}
-
 static void indirect_free(void* p)
 {
   free(p);
@@ -398,18 +288,6 @@ void eina_bench_promise(Eina_Benchmark *bench)
eina_benchmark_register(bench, "promise synchronous then",
EINA_BENCHMARK(
   

[EGIT] [core/efl] master 04/04: eina: Smudge magic value on promise deletion

2016-06-09 Thread Lauro Moura
felipealmeida pushed a commit to branch master.

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

commit 2d2e57eccdc3ca2f87cb5424f693b68e6bfb533c
Author: Lauro Moura 
Date:   Thu Jun 9 19:11:07 2016 -0300

eina: Smudge magic value on promise deletion
---
 src/lib/eina/eina_promise.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/lib/eina/eina_promise.c b/src/lib/eina/eina_promise.c
index 36be3a2..1006f84 100644
--- a/src/lib/eina/eina_promise.c
+++ b/src/lib/eina/eina_promise.c
@@ -243,6 +243,9 @@ _eina_promise_del(_Eina_Promise_Default_Owner* promise)
 
&_eina_promise_free_progress_notify_callback_node);
_eina_promise_free_callback_list(>promise.cancel_callbacks,
 &_eina_promise_free_cancel_callback_node);
+
+   EINA_MAGIC_SET(>owner_vtable, 0xdeadbeef);
+   EINA_MAGIC_SET(>promise.vtable, 0xbeefdead);
free(promise);
 }
 

-- 




[EGIT] [core/efl] master 02/04: eolian: remove support for value-type promises

2016-06-09 Thread Lauro Moura
felipealmeida pushed a commit to branch master.

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

commit 5a3331618e9cf52122a262cd35ab2aee4642d67c
Author: Lauro Moura 
Date:   Tue Jun 7 23:44:13 2016 -0300

eolian: remove support for value-type promises
---
 src/bin/eolian/eo_generator.c | 7 +--
 src/lib/eina/eina_promise.h   | 5 -
 2 files changed, 1 insertion(+), 11 deletions(-)

diff --git a/src/bin/eolian/eo_generator.c b/src/bin/eolian/eo_generator.c
index cd111dd..8520b7e 100644
--- a/src/bin/eolian/eo_generator.c
+++ b/src/bin/eolian/eo_generator.c
@@ -303,7 +303,6 @@ eo_bind_func_generate(const Eolian_Class *class, const 
Eolian_Function *funcid,
Eina_Bool is_prop = (ftype == EOLIAN_PROP_GET || ftype == EOLIAN_PROP_SET);
 
Eina_Bool has_promise = EINA_FALSE;
-   Eina_Bool is_pointer_promise = EINA_FALSE;
const char* promise_param_name = NULL;
const char* promise_value_type = NULL;
Eina_Bool need_implementation = EINA_TRUE;
@@ -388,9 +387,6 @@ eo_bind_func_generate(const Eolian_Class *class, const 
Eolian_Function *funcid,
   if(eina_iterator_next(promise_values, (void**)))
 {
   promise_value_type = eolian_type_c_type_get(subtype);
-  is_pointer_promise = eolian_type_type_get(subtype) == 
EOLIAN_TYPE_POINTER
-|| eolian_type_type_get(subtype) == EOLIAN_TYPE_COMPLEX
-|| eolian_type_type_get(subtype) == EOLIAN_TYPE_CLASS;
 }
   eina_strbuf_append_printf(impl_full_params, ", 
Eina_Promise_Owner *%s%s",
  pname, is_empty && !dflt_value ?" EINA_UNUSED":"");
@@ -573,10 +569,9 @@ eo_bind_func_generate(const Eolian_Class *class, const 
Eolian_Function *funcid,
   {
  eina_strbuf_append_printf(fbody,
"#undef _EO_API_BEFORE_HOOK\n#undef 
_EO_API_AFTER_HOOK\n#undef _EO_API_CALL_HOOK\n"
-   "#define _EO_API_BEFORE_HOOK 
_EINA_PROMISE_%sBEFORE_HOOK(%s, %s%s)\n"
+   "#define _EO_API_BEFORE_HOOK 
_EINA_PROMISE_BEFORE_HOOK(%s, %s%s)\n"
"#define _EO_API_AFTER_HOOK 
_EINA_PROMISE_AFTER_HOOK(%s)\n"
"#define _EO_API_CALL_HOOK(x) 
_EINA_PROMISE_CALL_HOOK(EO_FUNC_CALL(%s))\n\n",
-   (is_pointer_promise? "POINTER_": ""),
promise_value_type, !rettype ? "void" : 
rettype,

eina_strbuf_string_get(impl_full_params),
promise_param_name,
diff --git a/src/lib/eina/eina_promise.h b/src/lib/eina/eina_promise.h
index c146196..63d356a 100644
--- a/src/lib/eina/eina_promise.h
+++ b/src/lib/eina/eina_promise.h
@@ -540,11 +540,6 @@ EAPI extern Eina_Error EINA_ERROR_PROMISE_NULL;
  * @internal
  */
 #define _EINA_PROMISE_BEFORE_HOOK(PromiseValue, Ret, ...)   \
-  Eina_Promise_Owner* const __eo_promise = 
eina_promise_value_add(sizeof(PromiseValue)); \
-  typedef Ret (*_Eo_Promise_func_t_)(Eo*, void *obj_data, ##__VA_ARGS__); \
-  _Eo_Promise_func_t_ const _eo_promise_func_ = (_Eo_Promise_func_t_)_func_;
-
-#define _EINA_PROMISE_POINTER_BEFORE_HOOK(PromiseValue, Ret, ...)  
 \
   Eina_Promise_Owner* const __eo_promise = eina_promise_add();  \
   typedef Ret (*_Eo_Promise_func_t_)(Eo*, void *obj_data, ##__VA_ARGS__); \
   _Eo_Promise_func_t_ const _eo_promise_func_ = (_Eo_Promise_func_t_)_func_;

-- 




Re: [E-devel] Fwd: Eldbus & thread safe

2016-06-09 Thread Kim Shinwoo
Very thank you for response.
I got crash issue from developer.
They are using the eldbus on thread to get property changed event using
following eldbus APIs.

eldbus_connection_get,
eldbus_object_get,
eldbus_proxy_get,
eldbus_proxy_properties_monitor,
eldbus_proxy_event_callback_add

That is it.
There is nothing speciall purpose to use eldbus.
It seems that it is common usage.

We suggested to use ecore_main_loop_begin, end
At both before, and after line using eldbua on thread.

Is this proper way to solve this thread kind of issue?
2016. 6. 10. 오전 12:27에 "Cedric BAIL" 님이 작성:

> On Jun 9, 2016 3:57 AM, "Kim Shinwoo"  wrote:
> >
> > https://dbus.freedesktop.org/doc/api/html/group__DBusThreads.html
> >
> > It seems  that dbus is unsafe before handling dbus with dbus thread.
> >
> > If we  are not using this then.. clearly it is thread unsafe.
> >
> > Am I right?
>
> Yes.eldbus is not thread safe. May I ask what is your use of it that would
> require it ? Dbus is very asynchronous by nature and very light in
> communication, so it is very uncommon to need a thread to handle it.
>
> Cedric
>
> > 2016. 6. 9. 오후 7:44에 "Kim Shinwoo" 님이 작성:
> >
> > > Sorry for short Q writting on the road using phone. :/
> > > If it is not thread safe, do I have to use some ways such as.. ecore
> > > thread?
> > >
> > > Anyone knows thread safety of Dbus?
> > > -- 전달된 메일 --
> > > 보낸사람: "Kim Shinwoo" 
> > > 날짜: 2016. 6. 9. 오후 7:34
> > > 제목: Eldbus & thread safe
> > > 받는사람: "Enlightenment developer list" <
> > > enlightenment-devel@lists.sourceforge.net>
> > > 참조:
> > >
> > > Hello all.
> > >>
> > >> The eldbus is thread safe?
> > >>
> > >> Sincerely,
> > >> Shinwoo Kim
> > >>
> > >
> >
>
> --
> > What NetFlow Analyzer can do for you? Monitors network bandwidth and
> traffic
> > patterns at an interface-level. Reveals which users, apps, and protocols
> are
> > consuming the most bandwidth. Provides multi-vendor support for NetFlow,
> > J-Flow, sFlow and other flows. Make informed decisions using capacity
> > planning reports.
> https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
> > ___
> > enlightenment-devel mailing list
> > enlightenment-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
> --
> What NetFlow Analyzer can do for you? Monitors network bandwidth and
> traffic
> patterns at an interface-level. Reveals which users, apps, and protocols
> are
> consuming the most bandwidth. Provides multi-vendor support for NetFlow,
> J-Flow, sFlow and other flows. Make informed decisions using capacity
> planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [tools/enventor] master 01/01: statusbar: improve tooltip messages

2016-06-09 Thread Taehyub Kim
hermet pushed a commit to branch master.

http://git.enlightenment.org/tools/enventor.git/commit/?id=cc877931ca9196deb01858b331d4439dd4ecda3d

commit cc877931ca9196deb01858b331d4439dd4ecda3d
Author: Taehyub Kim 
Date:   Fri Jun 10 10:45:44 2016 +0900

statusbar: improve tooltip messages

Summary: add more comments for statusbar tooltip

Test Plan:
1. launch enventor
2. move mouse cursor on statusar tooltips
3. see the message of tooltips

Reviewers: Hermet, Jaehyun_Cho, NikaWhite

Differential Revision: https://phab.enlightenment.org/D4032
---
 data/themes/default/layout_common.edc | 24 
 src/bin/statusbar.c   | 33 ++---
 2 files changed, 54 insertions(+), 3 deletions(-)

diff --git a/data/themes/default/layout_common.edc 
b/data/themes/default/layout_common.edc
index 4a9f19f..3bbeb5d 100644
--- a/data/themes/default/layout_common.edc
+++ b/data/themes/default/layout_common.edc
@@ -2044,6 +2044,14 @@ group { name: "statusbar_layout";
 image.normal: "cursor_arrow.png";
  }
   }
+  part { "elm.swallow.cursor_arrow.tooltip";
+ type: SWALLOW;
+ description { state: "default" 0.0;
+   fixed: 1 1;
+   rel1.to: "cursor_arrow";
+   rel2.to: "cursor_arrow";
+ }
+  }
   part { name: "elm.text.cursor_pxx";
  type: TEXT;
  clip_to: "base_clip";
@@ -2235,6 +2243,14 @@ group { name: "statusbar_layout";
 image.normal: "navi_group.png";
  }
   }
+  part { "elm.swallow.group_icon.tooltip";
+ type: SWALLOW;
+ description { state: "default" 0.0;
+   fixed: 1 1;
+   rel1.to: "group_icon";
+   rel2.to: "group_icon";
+ }
+  }
   part { name: "elm.text.group_name";
  type: TEXT;
  clip_to: "base_clip";
@@ -2301,6 +2317,14 @@ group { name: "statusbar_layout";
 }
  }
   }
+  part { "elm.swallow.line.tooltip";
+ type: SWALLOW;
+ description { state: "default" 0.0;
+   fixed: 1 1;
+   rel1.to: "elm.text.line_[";
+   rel2.to: "elm.text.line_[";
+ }
+  }
   part { name: "elm.text.line_cur";
  type: TEXT;
  clip_to: "base_clip";
diff --git a/src/bin/statusbar.c b/src/bin/statusbar.c
index e464544..b0cee41 100644
--- a/src/bin/statusbar.c
+++ b/src/bin/statusbar.c
@@ -319,20 +319,47 @@ stats_init(Evas_Object *parent)
 
//View Scale button
create_statusbar_btn(layout, "expand", "scale_btn",
-"View Scale (Ctrl + Mouse Wheel)",
+_("View Scale (Ctrl + Mouse Wheel)"
+  "Set live view scale from 0.10 to 5.00"),
 ELM_TOOLTIP_ORIENT_TOP_RIGHT,
 view_scale_btn_cb, sd);
//View Resize Button
create_statusbar_btn(layout, "expand", "resize_btn",
-"Resize View Size",
+_("Resize View Size"
+  "Resize live View width and height."),
 ELM_TOOLTIP_ORIENT_TOP,
 view_resize_btn_cb, sd);
//View Invert Button
create_statusbar_btn(layout, "invert", "invert_btn",
-"Invert View Size",
+_("Invert View Size"
+  "Change aspect ratio between width and height."),
 ELM_TOOLTIP_ORIENT_TOP,
 view_invert_btn_cb, sd);
 
+   Evas_Object *arrow_tooltip = elm_button_add(layout);
+   elm_object_style_set(arrow_tooltip, ENVENTOR_NAME);
+   elm_object_part_content_set(layout, "elm.swallow.cursor_arrow.tooltip",
+   arrow_tooltip);
+   elm_object_tooltip_text_set(arrow_tooltip, _("Current mouse position in 
live view."));
+   elm_object_tooltip_orient_set(arrow_tooltip, ELM_TOOLTIP_ORIENT_TOP);
+   elm_object_focus_allow_set(arrow_tooltip, EINA_FALSE);
+
+   Evas_Object *group_tooltip = elm_button_add(layout);
+   elm_object_style_set(group_tooltip, ENVENTOR_NAME);
+   elm_object_part_content_set(layout, "elm.swallow.group_icon.tooltip",
+   group_tooltip);
+   elm_object_tooltip_text_set(group_tooltip, _("Current group in live 
view."));
+   elm_object_tooltip_orient_set(group_tooltip, ELM_TOOLTIP_ORIENT_TOP);
+   elm_object_focus_allow_set(group_tooltip, EINA_FALSE);
+
+   Evas_Object *line_tooltip = elm_button_add(layout);
+   elm_object_style_set(line_tooltip, ENVENTOR_NAME);
+   elm_object_part_content_set(layout, "elm.swallow.line.tooltip",
+   line_tooltip);
+   elm_object_tooltip_text_set(line_tooltip, _("Line information 
(current:max)."));
+   elm_object_tooltip_orient_set(line_tooltip, ELM_TOOLTIP_ORIENT_TOP_LEFT);
+   elm_object_focus_allow_set(line_tooltip, EINA_FALSE);
+
  

[EGIT] [tools/enventor] master 01/01: tools: improve tooltip message.

2016-06-09 Thread Hermet Park
hermet pushed a commit to branch master.

http://git.enlightenment.org/tools/enventor.git/commit/?id=7a9c30c3f1824fe7e3df83de59b1bda7831073a0

commit 7a9c30c3f1824fe7e3df83de59b1bda7831073a0
Author: Hermet Park 
Date:   Fri Jun 10 10:42:56 2016 +0900

tools: improve tooltip message.
---
 src/bin/tools.c | 21 ++---
 1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/src/bin/tools.c b/src/bin/tools.c
index 86463d7..7f638ca 100644
--- a/src/bin/tools.c
+++ b/src/bin/tools.c
@@ -309,7 +309,7 @@ tools_init(Evas_Object *parent)
td->lines_btn = btn;
 
btn = tools_btn_create(text_editor_ly, "template",
-  _("Insert Template Code Snippet (Ctrl + T)"
+  _("Insert Code Snippet (Ctrl + T)"
 "Enventor decides best template code with"
 "regards to the current editing context. For"
 "instance, if the cursor is inside of part "
@@ -322,7 +322,10 @@ tools_init(Evas_Object *parent)
 
btn = tools_btn_create(text_editor_ly, "console",
   _("Console Box (Alt + Down)"
-"Show Console box which displays build logs."),
+"Display Console box. Console box displays"
+"edc build logs such as error messages. It 
pops"
+"up automatically when compliation errors are"
+"occurred."),
   console_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -331,7 +334,8 @@ tools_init(Evas_Object *parent)
 
btn = tools_btn_create(text_editor_ly, "file_browser",
   _("File Browser (F9)"
-"Show File Browser wihch displays list of files."),
+   "Display File Browser which displays a file 
list"
+"in current workspace."),
   file_browser_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -340,8 +344,9 @@ tools_init(Evas_Object *parent)
 
btn = tools_btn_create(text_editor_ly, "edc_navigator",
   _("EDC Navigator (F10)"
-"Show EDC Navigator which displays current 
parts"
-"hierarchically."),
+"Display EDC Navigator. EDC Navigator displays"
+"a current group hierarchy tree that contains"
+"parts, descriptions, programs lists"),
   edc_navigator_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -351,7 +356,9 @@ tools_init(Evas_Object *parent)
 
btn = tools_btn_create(text_editor_ly, "status",
   _("Status (F11)"
-"Show Status bar which displays live view 
informations."),
+"Display Status bar on the bottom area."
+"Status bar displays subsidiary information 
for"
+"editing."),
   status_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -360,7 +367,7 @@ tools_init(Evas_Object *parent)
 
btn = tools_btn_create(text_editor_ly, "menu",
   _("Enventor Menu (Esc)"
-  "Show Menu for setting enventor."),
+  "Open Enventor Main Menu."),
   menu_cb);
elm_object_tooltip_orient_set(btn, ELM_TOOLTIP_ORIENT_BOTTOM_LEFT);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);

-- 




[EGIT] [tools/enventor] master 01/01: tools: improve browser tooltips

2016-06-09 Thread Taehyub Kim
hermet pushed a commit to branch master.

http://git.enlightenment.org/tools/enventor.git/commit/?id=58fe5e78af92b89d4ef013d73c10f57cc7d63444

commit 58fe5e78af92b89d4ef013d73c10f57cc7d63444
Author: Taehyub Kim 
Date:   Fri Jun 10 10:22:21 2016 +0900

tools: improve browser tooltips

Summary: add more comment for broswer tooltips

Test Plan:
1. launch enventor
2. move mouse curor on broswer tooltips
3. see the message of tooltips

Reviewers: Hermet, Jaehyun_Cho, NikaWhite

Differential Revision: https://phab.enlightenment.org/D4031
---
 src/bin/tools.c | 21 -
 1 file changed, 16 insertions(+), 5 deletions(-)

diff --git a/src/bin/tools.c b/src/bin/tools.c
index 02f80a3..86463d7 100644
--- a/src/bin/tools.c
+++ b/src/bin/tools.c
@@ -321,35 +321,46 @@ tools_init(Evas_Object *parent)
td->template_btn = btn;
 
btn = tools_btn_create(text_editor_ly, "console",
-  _("Console Box (Alt + Down)"), console_cb);
+  _("Console Box (Alt + Down)"
+"Show Console box which displays build logs."),
+  console_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(text_editor_ly, "elm.swallow.console", btn);
td->console_btn = btn;
 
btn = tools_btn_create(text_editor_ly, "file_browser",
-  _("File Browser (F9)"), file_browser_cb);
+  _("File Browser (F9)"
+"Show File Browser wihch displays list of files."),
+  file_browser_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(text_editor_ly, "elm.swallow.file_browser", 
btn);
td->file_browser_btn = btn;
 
btn = tools_btn_create(text_editor_ly, "edc_navigator",
-  _("EDC Navigator (F10)"), edc_navigator_cb);
+  _("EDC Navigator (F10)"
+"Show EDC Navigator which displays current 
parts"
+"hierarchically."),
+  edc_navigator_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(text_editor_ly, "elm.swallow.edc_navigator",
btn);
td->edc_navigator_btn = btn;
 
-   btn = tools_btn_create(text_editor_ly, "status", _("Status (F11)"),
+   btn = tools_btn_create(text_editor_ly, "status",
+  _("Status (F11)"
+"Show Status bar which displays live view 
informations."),
   status_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(text_editor_ly, "elm.swallow.status", btn);
td->status_btn = btn;
 
-   btn = tools_btn_create(text_editor_ly, "menu", _("Enventor Menu (Esc)"),
+   btn = tools_btn_create(text_editor_ly, "menu",
+  _("Enventor Menu (Esc)"
+  "Show Menu for setting enventor."),
   menu_cb);
elm_object_tooltip_orient_set(btn, ELM_TOOLTIP_ORIENT_BOTTOM_LEFT);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);

-- 




[EGIT] [tools/enventor] master 01/01: tools: improve tooltip message.

2016-06-09 Thread Hermet Park
hermet pushed a commit to branch master.

http://git.enlightenment.org/tools/enventor.git/commit/?id=d1e2b38444b74f474a58c7da7e09a91bf9f7dbc0

commit d1e2b38444b74f474a58c7da7e09a91bf9f7dbc0
Author: Hermet Park 
Date:   Fri Jun 10 10:21:41 2016 +0900

tools: improve tooltip message.
---
 src/bin/tools.c | 23 ---
 1 file changed, 12 insertions(+), 11 deletions(-)

diff --git a/src/bin/tools.c b/src/bin/tools.c
index cf84405..02f80a3 100644
--- a/src/bin/tools.c
+++ b/src/bin/tools.c
@@ -260,23 +260,21 @@ tools_init(Evas_Object *parent)
 
btn = tools_btn_create(text_editor_ly, "save",
   _("Save File (Ctrl + S)"
-"Save current script to build."),
+"Save current script to file."),
   save_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(text_editor_ly, "elm.swallow.save", btn);
 
btn = tools_btn_create(text_editor_ly, "undo",
-  _("Undo Text (Ctrl + Z)"
-"Back to previous script step by step."),
+  _("Undo Text (Ctrl + Z)"),
   undo_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(text_editor_ly, "elm.swallow.undo", btn);
 
btn = tools_btn_create(text_editor_ly, "redo",
-  _("Redo Text (Ctrl + R)"
-"Go to latest script step by step."),
+  _("Redo Text (Ctrl + R)"),
   redo_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -284,7 +282,8 @@ tools_init(Evas_Object *parent)
 
btn = tools_btn_create(text_editor_ly, "find",
   _("Find/Replace (Ctrl + F)"
-"Show Find/Replace window to find and replace 
input text."),
+"Open Find/Replace window to find or replace "
+"text."),
   find_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -293,7 +292,7 @@ tools_init(Evas_Object *parent)
 
btn = tools_btn_create(text_editor_ly, "goto",
   _("Goto Lines (Ctrl + L)"
-"Show Goto Window to move current line."),
+"Open Goto window to move the cursor line 
position."),
   goto_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -302,7 +301,7 @@ tools_init(Evas_Object *parent)
 
btn = tools_btn_create(text_editor_ly, "lines",
   _("Line Numbers (F5)"
-"Show and hide line number of script."),
+"Display script line number."),
   lines_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -310,9 +309,11 @@ tools_init(Evas_Object *parent)
td->lines_btn = btn;
 
btn = tools_btn_create(text_editor_ly, "template",
-  _("Insert Template (Ctrl + T)"
-"Insert template code automatically,"
-"It is appropriate to current context."),
+  _("Insert Template Code Snippet (Ctrl + T)"
+"Enventor decides best template code with"
+"regards to the current editing context. For"
+"instance, if the cursor is inside of part "
+"section, description code will be generated."),
   template_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);

-- 




Re: [E-devel] Problem with elemines

2016-06-09 Thread Simon Lees


On 06/10/2016 09:23 AM, Tim Bird wrote:
> Hi EFL devs...
> 
> I am a newbie to EFL development.  I'm trying to write a little test
> program for EFL, and wanted to test out elemines as an example of some of
> the techniques.
> However, I ran into some problems.
> 
> I am running EFL 17 on Ubuntu 14.04.  I cloned elemines from
> https://git.enlightenment.org/games/elemines.git
> and was able to get it built.
> 
> 1) - path to libetrophy error
> When I try to run it, I got the following error message:
> elemines: error while loading shared libraries: libetrophy.so.0: cannot
> open shared object file: No such file or directory
> 
> During the build, I figured out I needed etrophy, and built and installed
> the shared
> library for that.  They etrophy libraries ended up in /usr/local/lib
> 
> I can work around this using 'export LD_LIBRARY_PATH=/usr/local/lib',
> before running elemines.
> 
> 2) missing some elementary config
> When I run elemines (with the right library path), I get a warning from the
> program:
> 
> ERR<27210>:eio lib/eio/eio_monitor.c:339 eio_monitor_stringshared_add()
> monitored path '/home/CORPUSERS/10102229/.elementary/config/standard' not
> found.
> 
> I don't have the enlightenment window manager installed (to my knowledge).
> I'm not sure what is being looked for here,
> but the warning is a bit disconcerting.  I can make the warning go away by
> creating the directory
> ~/.elementary/config/standard, but I'm worried that something is supposed
> to be there that's not.

I suspect you need the "elementary" package installed which is the
toolkit used by enlightenment (similar to gnome using gtk). Once thats
installed hopefully it will resolve most if not all of your issues.

> Thanks,
>  -- Tim
> 
>  -- Tim Bird
> Senior Software Engineer, Sony Mobile
> Architecture Group Chair, CE Workgroup, Linux Foundation
> --
> What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
> patterns at an interface-level. Reveals which users, apps, and protocols are 
> consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
> J-Flow, sFlow and other flows. Make informed decisions using capacity 
> planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> 

-- 

Simon Lees (Simotek)http://simotek.net

Emergency Update Team   keybase.io/simotek
SUSE LinuxAdeliade Australia, UTC+9:30
GPG Fingerprint: 5B87 DB9D 88DC F606 E489 CEC5 0922 C246 02F0 014B



signature.asc
Description: OpenPGP digital signature
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [tools/enventor] master 01/01: tools: improve tooltips messages of script

2016-06-09 Thread Taehyub Kim
hermet pushed a commit to branch master.

http://git.enlightenment.org/tools/enventor.git/commit/?id=75c20f5ca1d18c2a1a537ed712c3f7467ec48e9f

commit 75c20f5ca1d18c2a1a537ed712c3f7467ec48e9f
Author: Taehyub Kim 
Date:   Fri Jun 10 09:51:32 2016 +0900

tools: improve tooltips messages of script

Summary: add more comment of script tooltips

Test Plan:
1. launch enventor
2. move mouse cursor on script tooltip
3. see the message of tooltips

Reviewers: Hermet, Jaehyun_Cho, NikaWhite

Reviewed By: NikaWhite

Differential Revision: https://phab.enlightenment.org/D4030
---
 src/bin/tools.c | 29 ++---
 1 file changed, 22 insertions(+), 7 deletions(-)

diff --git a/src/bin/tools.c b/src/bin/tools.c
index fccf2e7..cf84405 100644
--- a/src/bin/tools.c
+++ b/src/bin/tools.c
@@ -258,39 +258,51 @@ tools_init(Evas_Object *parent)
evas_object_size_hint_align_set(text_editor_ly, EVAS_HINT_FILL,
EVAS_HINT_FILL);
 
-   btn = tools_btn_create(text_editor_ly, "save",_("Save File (Ctrl + S)"),
+   btn = tools_btn_create(text_editor_ly, "save",
+  _("Save File (Ctrl + S)"
+"Save current script to build."),
   save_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(text_editor_ly, "elm.swallow.save", btn);
 
-   btn = tools_btn_create(text_editor_ly, "undo", _("Undo Text (Ctrl + Z)"),
+   btn = tools_btn_create(text_editor_ly, "undo",
+  _("Undo Text (Ctrl + Z)"
+"Back to previous script step by step."),
   undo_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(text_editor_ly, "elm.swallow.undo", btn);
 
-   btn = tools_btn_create(text_editor_ly, "redo", _("Redo Text (Ctrl + R)"),
+   btn = tools_btn_create(text_editor_ly, "redo",
+  _("Redo Text (Ctrl + R)"
+"Go to latest script step by step."),
   redo_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(text_editor_ly, "elm.swallow.redo", btn);
 
-   btn = tools_btn_create(text_editor_ly, "find", _("Find/Replace (Ctrl + F)"),
+   btn = tools_btn_create(text_editor_ly, "find",
+  _("Find/Replace (Ctrl + F)"
+"Show Find/Replace window to find and replace 
input text."),
   find_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(text_editor_ly, "elm.swallow.find", btn);
td->find_btn = btn;
 
-   btn = tools_btn_create(text_editor_ly, "goto", _("Goto Lines (Ctrl + L)"),
+   btn = tools_btn_create(text_editor_ly, "goto",
+  _("Goto Lines (Ctrl + L)"
+"Show Goto Window to move current line."),
   goto_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(text_editor_ly, "elm.swallow.goto", btn);
td->goto_btn = btn;
 
-   btn = tools_btn_create(text_editor_ly, "lines", _("Line Numbers (F5)"),
+   btn = tools_btn_create(text_editor_ly, "lines",
+  _("Line Numbers (F5)"
+"Show and hide line number of script."),
   lines_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -298,7 +310,10 @@ tools_init(Evas_Object *parent)
td->lines_btn = btn;
 
btn = tools_btn_create(text_editor_ly, "template",
-  _("Insert Template (Ctrl + T)"), template_cb);
+  _("Insert Template (Ctrl + T)"
+"Insert template code automatically,"
+"It is appropriate to current context."),
+  template_cb);
evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, EVAS_HINT_FILL, EVAS_HINT_FILL);
elm_object_part_content_set(text_editor_ly, "elm.swallow.template", btn);

-- 




[E-devel] Problem with elemines

2016-06-09 Thread Tim Bird
Hi EFL devs...

I am a newbie to EFL development.  I'm trying to write a little test
program for EFL, and wanted to test out elemines as an example of some of
the techniques.
However, I ran into some problems.

I am running EFL 17 on Ubuntu 14.04.  I cloned elemines from
https://git.enlightenment.org/games/elemines.git
and was able to get it built.

1) - path to libetrophy error
When I try to run it, I got the following error message:
elemines: error while loading shared libraries: libetrophy.so.0: cannot
open shared object file: No such file or directory

During the build, I figured out I needed etrophy, and built and installed
the shared
library for that.  They etrophy libraries ended up in /usr/local/lib

I can work around this using 'export LD_LIBRARY_PATH=/usr/local/lib',
before running elemines.

2) missing some elementary config
When I run elemines (with the right library path), I get a warning from the
program:

ERR<27210>:eio lib/eio/eio_monitor.c:339 eio_monitor_stringshared_add()
monitored path '/home/CORPUSERS/10102229/.elementary/config/standard' not
found.

I don't have the enlightenment window manager installed (to my knowledge).
I'm not sure what is being looked for here,
but the warning is a bit disconcerting.  I can make the warning go away by
creating the directory
~/.elementary/config/standard, but I'm worried that something is supposed
to be there that's not.

3) Segmentation fault
This is the most serious problem.  elemines gets a segmentation fault when
I do the first mouse click in the
game grid.

I debugged the program a bit and found that there's a sscanf on a string
used to map the mouse click to
the game grid.  Here's the sscanf:
  sscanf(source, "board[%i,%i]:overlay", , );

but here's the value of the 'source' string used with it:
  board[item_0x7fff8daa2c60{7,2}]:overlay

this is in the routine _click() in src/game.c
Note that there's no error handling for the sscanf.  However, the string
clearly is not what's expected.

In another part of the program, there's this line, which seems to specify
the string for the
mouse click grid mapping.

edje_object_signal_callback_add(edje, "mouse,clicked,*",
"board\\[*\\]:overlay", _click, NULL);

It appears that elemines expects the coordinates from the specified string
inside the
brackets (I'm guessing that's what the * is for in the string.  However, I
don't know
where this 'item_0x7fff8daa2c60{..}' is coming from.

Is there something from edje that's missing, to have the mouse click string
come out properly?

Thanks,
 -- Tim

 -- Tim Bird
Senior Software Engineer, Sony Mobile
Architecture Group Chair, CE Workgroup, Linux Foundation
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/efl] master 01/01: eolian: refine the ref system to suit more cases

2016-06-09 Thread Felipe Magno de Almeida
On Thu, Jun 9, 2016 at 3:01 AM, Jean-Philippe André  wrote:
> On 9 June 2016 at 11:38, Daniel Kolesa  wrote:

[snip]

> I thought most pointers had already been removed from EO?

There are quite a few. The @ref is the first step, we need only have
arrays to remove the rest of pointers in Eolian.

> Anyway what I know from C++ references is basically that they can't be
> NULL. That's a pretty strong constraint when the implementation is all in C
> :)

You can't have a reference of a reference for example, and references
don't have value (like pointers do). For the NULL problems we have
@optional @ref. For C they are all pointers but for bindings they
communicate semantics better.

> Looking forward to seeing more information and use cases for those refs.
>
> --
> Jean-Philippe André

Regards,
-- 
Felipe Magno de Almeida

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/efl] master 01/01: eolian_cxx: Fix build after scope_get changes

2016-06-09 Thread Lauro Moura
felipealmeida pushed a commit to branch master.

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

commit 7b63ecf4f6d9446e221047bab257910ae7302446
Author: Lauro Moura 
Date:   Thu Jun 9 18:49:27 2016 -0300

eolian_cxx: Fix build after scope_get changes
---
 src/lib/eolian_cxx/grammar/klass_def.hpp | 11 ++-
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/src/lib/eolian_cxx/grammar/klass_def.hpp 
b/src/lib/eolian_cxx/grammar/klass_def.hpp
index 8a40dbd..9cfd830 100644
--- a/src/lib/eolian_cxx/grammar/klass_def.hpp
+++ b/src/lib/eolian_cxx/grammar/klass_def.hpp
@@ -470,7 +470,7 @@ struct function_def
}
  c_name = eolian_function_full_c_name_get(function, type, EINA_FALSE);
  is_beta = eolian_function_is_beta(function);
- is_protected = eolian_function_scope_get(function) == 
EOLIAN_SCOPE_PROTECTED;
+ is_protected = eolian_function_scope_get(function, type) == 
EOLIAN_SCOPE_PROTECTED;
   }
 };
 
@@ -610,23 +610,24 @@ struct klass_def
  if(type == EOLIAN_PROPERTY)
{
  if(! ::eolian_function_is_legacy_only(function, EOLIAN_PROP_GET)
-&& ::eolian_function_scope_get(function) != 
EOLIAN_SCOPE_PRIVATE)
+&& ::eolian_function_scope_get(function, type) != 
EOLIAN_SCOPE_PRIVATE)
functions.push_back({function, EOLIAN_PROP_GET});
  if(! ::eolian_function_is_legacy_only(function, EOLIAN_PROP_SET)
-&& ::eolian_function_scope_get(function) != 
EOLIAN_SCOPE_PRIVATE)
+&& ::eolian_function_scope_get(function, type) != 
EOLIAN_SCOPE_PRIVATE)
functions.push_back({function, EOLIAN_PROP_SET});
}
  else
if(! ::eolian_function_is_legacy_only(function, type)
-  && ::eolian_function_scope_get(function) != EOLIAN_SCOPE_PRIVATE)
+  && ::eolian_function_scope_get(function, type) != 
EOLIAN_SCOPE_PRIVATE)
  functions.push_back({function, type});
}
  for(efl::eina::iterator eolian_functions ( 
::eolian_class_functions_get(klass, EOLIAN_METHOD))
, functions_last; eolian_functions != functions_last; 
++eolian_functions)
{
  Eolian_Function const* function = &*eolian_functions;
+ Eolian_Function_Type type = ::eolian_function_type_get(function);
   if(! ::eolian_function_is_legacy_only(function, EOLIAN_METHOD)
- && ::eolian_function_scope_get(function) != EOLIAN_SCOPE_PRIVATE)
+ && ::eolian_function_scope_get(function, type) != 
EOLIAN_SCOPE_PRIVATE)
 functions.push_back({function, EOLIAN_METHOD});
}
  std::function inherit_algo = 

-- 




Re: [E-devel] RFC: New text filter API

2016-06-09 Thread Felipe Magno de Almeida
On Thu, Jun 9, 2016 at 12:23 PM, Cedric BAIL  wrote:
> On Jun 9, 2016 03:14, "Tom Hacohen"  wrote:

[snip]

>> If rejected is set, the chunk is rejected no matter what the strbuf
>> value is.

[snip]

> My main concern is actually what happen if there is more than one event
> handler registered. I think it become pretty complex to chain them with all
> this parameter. What if you just pass the text embedded in the strbuf
> already and you just look at it for all behavior at the end ?

Kolesa and I have argued that this will be prohibited and that
no aliasing will be considered. So for example, JS will copy the
boolean value and when the boolean is modified it will not
impact the original struct of the event.

This is the only sane thing to do and to avoid random crashes
in languages that are suppose to be safe from UB.

IMO. Just use an override function for this.

> Cedric
>
>> This is what I'm going to go with unless I hear any strong objections by
>> Monday.

I strongly object to it.

>> --
>> Tom.

Regards,
-- 
Felipe Magno de Almeida

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/efl] master 01/01: ecore_wl2: Fix keyboard repeat handling

2016-06-09 Thread Christopher Michael
On 06/09/2016 04:06 PM, Cedric BAIL wrote:
> On Thu, Jun 9, 2016 at 11:58 AM, Christopher Michael
>  wrote:
>> On 06/09/2016 02:52 PM, Cedric BAIL wrote:
>>> On Thu, Jun 9, 2016 at 10:50 AM, Derek Foreman  
>>> wrote:
 derekf pushed a commit to branch master.

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

 commit a4f64d6fcb3de6ff650e9a09b09c69edbb862146
 Author: Derek Foreman 
 Date:   Thu Jun 9 12:43:50 2016 -0500

 ecore_wl2: Fix keyboard repeat handling

 Recent timer changes broke keyboard repeat under wayland - while that
 will probably be fixed shortly, this should be more robust and
 more accurate anyway.
>>>
>>> After investigating this, we discovered that ecore_wl2 was setting a
>>> timer with a repeat of 0s and delay it by 0s. I have no idea of what
>>> was the previous behavior of such request, but now it does exactly
>>> what you expect... Trigger timer callback as soon and as fast as it
>>> can. Enjoy !
>>>
>>
>> Hmmm, that should not be possible really. When _ecore_wl2_input_add gets
>> called, the repeat.rate and repeat.delay are set to some initial values.
>>
>> What values were getting passed in to the _keyboard_cb_repeat_setup
>> function ?? Perhaps some client app is passing us 0 there and we are not
>> trapping for that ??
>
> Float divided by int give an int, not a float. Result was below 0, so
> turned 0 in int.
>

Sure. I was just asking if we are indeed getting the proper values sent 
to _keyboard_cb_repeat_setup. I checked with Derek and it would seem 
that the values we are getting are ok. I just wanted to be sure that 
there was not a larger issue here.

Cheers,
dh



--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/efl] master 01/01: ecore_wl2: Fix keyboard repeat handling

2016-06-09 Thread Cedric BAIL
On Thu, Jun 9, 2016 at 11:58 AM, Christopher Michael
 wrote:
> On 06/09/2016 02:52 PM, Cedric BAIL wrote:
>> On Thu, Jun 9, 2016 at 10:50 AM, Derek Foreman  
>> wrote:
>>> derekf pushed a commit to branch master.
>>>
>>> http://git.enlightenment.org/core/efl.git/commit/?id=a4f64d6fcb3de6ff650e9a09b09c69edbb862146
>>>
>>> commit a4f64d6fcb3de6ff650e9a09b09c69edbb862146
>>> Author: Derek Foreman 
>>> Date:   Thu Jun 9 12:43:50 2016 -0500
>>>
>>> ecore_wl2: Fix keyboard repeat handling
>>>
>>> Recent timer changes broke keyboard repeat under wayland - while that
>>> will probably be fixed shortly, this should be more robust and
>>> more accurate anyway.
>>
>> After investigating this, we discovered that ecore_wl2 was setting a
>> timer with a repeat of 0s and delay it by 0s. I have no idea of what
>> was the previous behavior of such request, but now it does exactly
>> what you expect... Trigger timer callback as soon and as fast as it
>> can. Enjoy !
>>
>
> Hmmm, that should not be possible really. When _ecore_wl2_input_add gets
> called, the repeat.rate and repeat.delay are set to some initial values.
>
> What values were getting passed in to the _keyboard_cb_repeat_setup
> function ?? Perhaps some client app is passing us 0 there and we are not
> trapping for that ??

Float divided by int give an int, not a float. Result was below 0, so
turned 0 in int.
-- 
Cedric BAIL

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [tools/eflete] master 01/01: Tizen theme: update style for button.

2016-06-09 Thread Mykyta Biliavskyi
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=981efe276af413caaae49f0411584d04592b76bc

commit 981efe276af413caaae49f0411584d04592b76bc
Author: Mykyta Biliavskyi 
Date:   Thu Jun 9 22:44:47 2016 +0300

Tizen theme: update style for button.
---
 data/themes/tizen/widgets/button.edc | 423 ---
 src/bin/ui/workspace/workspace.c |   2 +
 2 files changed, 246 insertions(+), 179 deletions(-)

diff --git a/data/themes/tizen/widgets/button.edc 
b/data/themes/tizen/widgets/button.edc
index f8b6f6d..d0dfca8 100644
--- a/data/themes/tizen/widgets/button.edc
+++ b/data/themes/tizen/widgets/button.edc
@@ -2,260 +2,262 @@
 #define FN_COL_DISABLE 21 21 21 255; color3: 255 255 255 25
 
 group { name: "elm/button/base/default";
-   alias: "elm/button/base/colorselector/default";
+   images {
+  image: "border_1.png" COMP;
+  image: "border_2.png" COMP;
+   }
alias: "elm/button/base/fileselector/default";
alias: "elm/button/base/fileselector/actions/default";
alias: "elm/button/base/hoversel_vertical/fileselector/actions/default";
-images {
-  image: "btn_widget.png" COMP;
-  image: "btn_widget_push.png" COMP;
-  image: "btn_widget_disable.png" COMP;
-  image: "btn_widget_hover.png" COMP;
+   alias: "elm/button/base/colorselector/default";
+   data {
+  item: "focus_highlight" "on";
}
parts {
   part { name: "button_image";
- mouse_events: 1;
+ type: RECT;
  description { state: "default" 0.0;
-min: 9 9;
-image {
-   normal: "btn_widget.png";
-   border: 3 3 3 3;
-}
+color: 225 225 225 255;
  }
- description { state: "visible" 0.0;
-inherit: "default" 0.0;
+ description { state: "focused" 0.0;
+inherit: "default" 0.00;
+color: 238 238 238 255;
+ }
+ description { state: "hovered" 0.0;
+inherit: "default" 0.00;
+color: 205 233 255 255;
  }
  description { state: "clicked" 0.0;
-inherit: "default" 0.0;
-image {
-   normal: "btn_widget_push.png";
-   border: 3 3 3 3;
-}
+inherit: "default" 0.00;
+color: 0 138 238 255;
  }
  description { state: "disabled" 0.0;
-inherit:  "default" 0.0;
+inherit: "default" 0.00;
+color: 204 204 204 255;
+ }
+ description { state: "visible" 0.0;
+inherit: "default" 0.00;
+ }
+  }
+  part { name: "border";
+ type: IMAGE;
+ description { state: "default" 0.0;
+color_class: "border";
 image {
-   normal: "btn_widget_disable.png";
-   border: 3 3 3 3;
+   normal: "border_1.png";
+   border: 1 1 1 1;
+   middle: NONE;
 }
+fill.smooth: 0;
+ }
+ description { state: "visible" 0.0;
+inherit: "default" 0.00;
+image.normal: "border_2.png";
+ }
+ description { state: "clicked" 0.0;
+inherit: "visible" 0.00;
+visible: 0;
+color_class: "border_focused";
+image.border: 2 2 2 2;
  }
  description { state: "hovered" 0.0;
-inherit:  "default" 0.0;
-image {
-   normal: "btn_widget_hover.png";
-   border: 3 3 3 3;
-}
+inherit: "clicked" 0.00;
+visible: 1;
+ }
+ description { state: "focused" 0.0;
+inherit: "hovered" 0.00;
+ }
+ description { state: "disabled" 0.0;
+inherit: "hovered" 0.00;
+color_class: "";
+color: 191 191 191 255;
+image.normal: "border_1.png";
  }
   }
   part { name: "elm.swallow.content";
  type: SWALLOW;
  description { state: "default" 0.0;
-fixed: 1 0;
 visible: 0;
 align: 0.0 0.5;
+fixed: 1 0;
 rel1.offset: 4 4;
-rel2.offset: 3 -5;
-rel2.relative: 0.0 1.0;
+rel2 {
+   relative: 0.0 1.0;
+   offset: 3 -5;
+}
  }
  description { state: "visible" 0.0;
-inherit: "default" 0.0;
-fixed: 1 0;
+inherit: "default" 0.00;
 visible: 1;
 aspect: 1.0 1.0;
-//   aspect_preference: VERTICAL;
 rel2.offset: 4 -5;
  }
  description { state: "icononly" 0.0;
-inherit: "default" 0.0;
-fixed: 0 0;
-visible: 1;
+inherit: "visible" 0.00;
 align: 0.5 0.5;
-   //   

[EGIT] [tools/eflete] master 01/02: Tizen theme: rework scroller default style.

2016-06-09 Thread Mykyta Biliavskyi
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=17d0451f5c34b573e7490d2f750e9c6066cdb6a7

commit 17d0451f5c34b573e7490d2f750e9c6066cdb6a7
Author: Mykyta Biliavskyi 
Date:   Thu Jun 9 21:16:23 2016 +0300

Tizen theme: rework scroller default style.
---
 data/themes/tizen/color_classes.edc|   25 +
 data/themes/tizen/images/scroll_down_icon_dim.png  |  Bin 0 -> 967 bytes
 data/themes/tizen/images/scroll_down_icon_mv.png   |  Bin 0 -> 972 bytes
 data/themes/tizen/images/scroll_down_icon_nor.png  |  Bin 0 -> 971 bytes
 data/themes/tizen/images/scroll_down_icon_sel.png  |  Bin 0 -> 972 bytes
 data/themes/tizen/images/scroll_left_icon_dim.png  |  Bin 0 -> 177 bytes
 data/themes/tizen/images/scroll_left_icon_mv.png   |  Bin 0 -> 175 bytes
 data/themes/tizen/images/scroll_left_icon_nor.png  |  Bin 0 -> 174 bytes
 data/themes/tizen/images/scroll_left_icon_sel.png  |  Bin 0 -> 175 bytes
 data/themes/tizen/images/scroll_right_icon_dim.png |  Bin 0 -> 179 bytes
 data/themes/tizen/images/scroll_right_icon_mv.png  |  Bin 0 -> 179 bytes
 data/themes/tizen/images/scroll_right_icon_nor.png |  Bin 0 -> 178 bytes
 data/themes/tizen/images/scroll_right_icon_sel.png |  Bin 0 -> 179 bytes
 data/themes/tizen/images/scroll_up_icon_dim.png|  Bin 0 -> 972 bytes
 data/themes/tizen/images/scroll_up_icon_mv.png |  Bin 0 -> 960 bytes
 data/themes/tizen/images/scroll_up_icon_nor.png|  Bin 0 -> 960 bytes
 data/themes/tizen/images/scroll_up_icon_sel.png|  Bin 0 -> 959 bytes
 data/themes/tizen/widgets/scroller.edc | 1085 
 18 files changed, 702 insertions(+), 408 deletions(-)

diff --git a/data/themes/tizen/color_classes.edc 
b/data/themes/tizen/color_classes.edc
index 8f7d97b..48219dd 100644
--- a/data/themes/tizen/color_classes.edc
+++ b/data/themes/tizen/color_classes.edc
@@ -1,4 +1,29 @@
 color_classes {
+   color_class { name: "scrollbar_bg";
+  color: 233 233 233 255;
+  color2: 0 0 0 0;
+  color3: 0 0 0 0;
+   }
+   color_class { name: "scrollbar_line_nor";
+  color: 117 117 117 255;
+  color2: 0 0 0 0;
+  color3: 0 0 0 0;
+   }
+   color_class { name: "scrollbar_line_over";
+  color: 50 50 50 255;
+  color2: 0 0 0 0;
+  color3: 0 0 0 0;
+   }
+   color_class { name: "scrollbar_line_sel";
+  color: 0 138 238 255;
+  color2: 0 0 0 0;
+  color3: 0 0 0 0;
+   }
+   color_class { name: "scrollbar_line_dim";
+  color: 242 242 242 255;
+  color2: 0 0 0 0;
+  color3: 0 0 0 0;
+   }
color_class { name: "text_splash";
   color: 20 20 20 255;
   color2: 0 0 0 0;
diff --git a/data/themes/tizen/images/scroll_down_icon_dim.png 
b/data/themes/tizen/images/scroll_down_icon_dim.png
new file mode 100644
index 000..df4fc2e
Binary files /dev/null and b/data/themes/tizen/images/scroll_down_icon_dim.png 
differ
diff --git a/data/themes/tizen/images/scroll_down_icon_mv.png 
b/data/themes/tizen/images/scroll_down_icon_mv.png
new file mode 100644
index 000..382e532
Binary files /dev/null and b/data/themes/tizen/images/scroll_down_icon_mv.png 
differ
diff --git a/data/themes/tizen/images/scroll_down_icon_nor.png 
b/data/themes/tizen/images/scroll_down_icon_nor.png
new file mode 100644
index 000..bc00191
Binary files /dev/null and b/data/themes/tizen/images/scroll_down_icon_nor.png 
differ
diff --git a/data/themes/tizen/images/scroll_down_icon_sel.png 
b/data/themes/tizen/images/scroll_down_icon_sel.png
new file mode 100644
index 000..9e4b2b2
Binary files /dev/null and b/data/themes/tizen/images/scroll_down_icon_sel.png 
differ
diff --git a/data/themes/tizen/images/scroll_left_icon_dim.png 
b/data/themes/tizen/images/scroll_left_icon_dim.png
new file mode 100644
index 000..9fb50c1
Binary files /dev/null and b/data/themes/tizen/images/scroll_left_icon_dim.png 
differ
diff --git a/data/themes/tizen/images/scroll_left_icon_mv.png 
b/data/themes/tizen/images/scroll_left_icon_mv.png
new file mode 100644
index 000..9771d25
Binary files /dev/null and b/data/themes/tizen/images/scroll_left_icon_mv.png 
differ
diff --git a/data/themes/tizen/images/scroll_left_icon_nor.png 
b/data/themes/tizen/images/scroll_left_icon_nor.png
new file mode 100644
index 000..0a949ff
Binary files /dev/null and b/data/themes/tizen/images/scroll_left_icon_nor.png 
differ
diff --git a/data/themes/tizen/images/scroll_left_icon_sel.png 
b/data/themes/tizen/images/scroll_left_icon_sel.png
new file mode 100644
index 000..1afe176
Binary files /dev/null and b/data/themes/tizen/images/scroll_left_icon_sel.png 
differ
diff --git a/data/themes/tizen/images/scroll_right_icon_dim.png 
b/data/themes/tizen/images/scroll_right_icon_dim.png
new file mode 100644
index 000..d83f2f2
Binary files /dev/null and b/data/themes/tizen/images/scroll_right_icon_dim.png 
differ
diff --git a/data/themes/tizen/images/scroll_right_icon_mv.png 

[EGIT] [tools/eflete] master 02/02: Tizen theme: fix style for menu item.

2016-06-09 Thread Mykyta Biliavskyi
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=0eee355d6407339fecbb8b6821a33a1569338044

commit 0eee355d6407339fecbb8b6821a33a1569338044
Author: Mykyta Biliavskyi 
Date:   Thu Jun 9 21:27:34 2016 +0300

Tizen theme: fix style for menu item.

Added delay before send signal "clicked".
This necessary to make visibile blue higlight.
---
 data/themes/tizen/widgets/menu.edc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/data/themes/tizen/widgets/menu.edc 
b/data/themes/tizen/widgets/menu.edc
index d4803f5..6f07e73 100644
--- a/data/themes/tizen/widgets/menu.edc
+++ b/data/themes/tizen/widgets/menu.edc
@@ -231,7 +231,7 @@ group { name: "elm/menu/item/default";
  target: "event";
   }
   program { name: "clicked";
- signal: "mouse,up,1";
+ signal: "mouse,down,1";
  source: "event";
  action: STATE_SET "selected" 0.00;
  target: "highlight";
@@ -257,6 +257,7 @@ group { name: "elm/menu/item/default";
  target: "area.content";
   }
   program { name: "select";
+ in: 0.1 0;
  action: SIGNAL_EMIT "elm,action,click" "elm";
  after: "inactivate";
   }

-- 




Re: [E-devel] [EGIT] [core/efl] master 01/01: ecore_wl2: Fix keyboard repeat handling

2016-06-09 Thread Christopher Michael
On 06/09/2016 02:52 PM, Cedric BAIL wrote:
> On Thu, Jun 9, 2016 at 10:50 AM, Derek Foreman  wrote:
>> derekf pushed a commit to branch master.
>>
>> http://git.enlightenment.org/core/efl.git/commit/?id=a4f64d6fcb3de6ff650e9a09b09c69edbb862146
>>
>> commit a4f64d6fcb3de6ff650e9a09b09c69edbb862146
>> Author: Derek Foreman 
>> Date:   Thu Jun 9 12:43:50 2016 -0500
>>
>> ecore_wl2: Fix keyboard repeat handling
>>
>> Recent timer changes broke keyboard repeat under wayland - while that
>> will probably be fixed shortly, this should be more robust and
>> more accurate anyway.
>
> After investigating this, we discovered that ecore_wl2 was setting a
> timer with a repeat of 0s and delay it by 0s. I have no idea of what
> was the previous behavior of such request, but now it does exactly
> what you expect... Trigger timer callback as soon and as fast as it
> can. Enjoy !
>

Hmmm, that should not be possible really. When _ecore_wl2_input_add gets 
called, the repeat.rate and repeat.delay are set to some initial values.

What values were getting passed in to the _keyboard_cb_repeat_setup 
function ?? Perhaps some client app is passing us 0 there and we are not 
trapping for that ??

Cheers,
dh



--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/efl] master 01/01: ecore_wl2: Fix keyboard repeat handling

2016-06-09 Thread Cedric BAIL
On Thu, Jun 9, 2016 at 10:50 AM, Derek Foreman  wrote:
> derekf pushed a commit to branch master.
>
> http://git.enlightenment.org/core/efl.git/commit/?id=a4f64d6fcb3de6ff650e9a09b09c69edbb862146
>
> commit a4f64d6fcb3de6ff650e9a09b09c69edbb862146
> Author: Derek Foreman 
> Date:   Thu Jun 9 12:43:50 2016 -0500
>
> ecore_wl2: Fix keyboard repeat handling
>
> Recent timer changes broke keyboard repeat under wayland - while that
> will probably be fixed shortly, this should be more robust and
> more accurate anyway.

After investigating this, we discovered that ecore_wl2 was setting a
timer with a repeat of 0s and delay it by 0s. I have no idea of what
was the previous behavior of such request, but now it does exactly
what you expect... Trigger timer callback as soon and as fast as it
can. Enjoy !
-- 
Cedric BAIL

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/efl] master 01/01: ecore_wl2: Fix keyboard repeat handling

2016-06-09 Thread Derek Foreman
derekf pushed a commit to branch master.

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

commit a4f64d6fcb3de6ff650e9a09b09c69edbb862146
Author: Derek Foreman 
Date:   Thu Jun 9 12:43:50 2016 -0500

ecore_wl2: Fix keyboard repeat handling

Recent timer changes broke keyboard repeat under wayland - while that
will probably be fixed shortly, this should be more robust and
more accurate anyway.
---
 src/lib/ecore_wl2/ecore_wl2_input.c   | 13 +
 src/lib/ecore_wl2/ecore_wl2_private.h |  1 +
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/src/lib/ecore_wl2/ecore_wl2_input.c 
b/src/lib/ecore_wl2/ecore_wl2_input.c
index 2b4a804..4761672 100644
--- a/src/lib/ecore_wl2/ecore_wl2_input.c
+++ b/src/lib/ecore_wl2/ecore_wl2_input.c
@@ -780,6 +780,11 @@ _keyboard_cb_repeat(void *data)
 
_ecore_wl2_input_key_send(input, input->focus.keyboard, input->repeat.sym, 
input->repeat.key + 8, WL_KEYBOARD_KEY_STATE_PRESSED,  input->repeat.time);
 
+   if (!input->repeat.repeating)
+ {
+ecore_timer_interval_set(input->repeat.timer, input->repeat.rate);
+input->repeat.repeating = EINA_TRUE;
+ }
return ECORE_CALLBACK_RENEW;
 
 out:
@@ -841,9 +846,9 @@ _keyboard_cb_key(void *data, struct wl_keyboard *keyboard 
EINA_UNUSED, unsigned
 
 if (!input->repeat.timer)
   {
+ input->repeat.repeating = EINA_FALSE;
  input->repeat.timer =
-   ecore_timer_add(input->repeat.rate, _keyboard_cb_repeat, input);
- ecore_timer_delay(input->repeat.timer, input->repeat.delay);
+   ecore_timer_add(input->repeat.delay, _keyboard_cb_repeat, 
input);
   }
  }
 }
@@ -903,8 +908,8 @@ _keyboard_cb_repeat_setup(void *data, struct wl_keyboard 
*keyboard EINA_UNUSED,
  }
 
input->repeat.enabled = EINA_TRUE;
-   input->repeat.rate = (rate / 1);
-   input->repeat.delay = (delay / 1000);
+   input->repeat.rate = (1.0 / rate);
+   input->repeat.delay = (delay / 1000.0);
 }
 
 static const struct wl_keyboard_listener _keyboard_listener =
diff --git a/src/lib/ecore_wl2/ecore_wl2_private.h 
b/src/lib/ecore_wl2/ecore_wl2_private.h
index 680214a..fce1245 100644
--- a/src/lib/ecore_wl2/ecore_wl2_private.h
+++ b/src/lib/ecore_wl2/ecore_wl2_private.h
@@ -404,6 +404,7 @@ struct _Ecore_Wl2_Input
 unsigned int sym, key, time;
 double rate, delay;
 Eina_Bool enabled : 1;
+Eina_Bool repeating : 1;
  } repeat;
 
struct

-- 




[EGIT] [core/efl] master 01/01: eolian: support @protected for accessors (get/set)

2016-06-09 Thread Daniel Kolesa
q66 pushed a commit to branch master.

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

commit 375179b47fa62dba2a1168d1e4e6a7ab877f7414
Author: Daniel Kolesa 
Date:   Thu Jun 9 16:54:43 2016 +0100

eolian: support @protected for accessors (get/set)

Previously it was only possible to set it for the whole property.

@feature
---
 src/bin/eolian/eo_generator.c  |  2 +-
 src/bindings/luajit/eolian.lua |  6 +++---
 src/lib/eolian/Eolian.h|  3 ++-
 src/lib/eolian/database_function_api.c |  9 +++--
 src/lib/eolian/eo_parser.c | 21 +
 src/lib/eolian/eolian_database.h   |  3 ++-
 src/scripts/elua/modules/lualian.lua   | 10 ++
 src/tests/eolian/data/scope.eo |  2 ++
 src/tests/eolian/eolian_parsing.c  | 21 +++--
 9 files changed, 51 insertions(+), 26 deletions(-)

diff --git a/src/bin/eolian/eo_generator.c b/src/bin/eolian/eo_generator.c
index c12975a..cd111dd 100644
--- a/src/bin/eolian/eo_generator.c
+++ b/src/bin/eolian/eo_generator.c
@@ -66,7 +66,7 @@ eo_fundef_generate(const Eolian_Class *class, const 
Eolian_Function *func, Eolia
Eina_Bool var_as_ret = EINA_FALSE;
const Eolian_Type *rettypet = NULL;
const char *rettype = NULL;
-   Eolian_Object_Scope scope = eolian_function_scope_get(func);
+   Eolian_Object_Scope scope = eolian_function_scope_get(func, ftype);
Eina_Bool is_prop = (ftype == EOLIAN_PROP_GET || ftype == EOLIAN_PROP_SET);
 
_class_func_env_create(class, eolian_function_name_get(func), ftype, 
_env);
diff --git a/src/bindings/luajit/eolian.lua b/src/bindings/luajit/eolian.lua
index b31f445..159fc0a 100644
--- a/src/bindings/luajit/eolian.lua
+++ b/src/bindings/luajit/eolian.lua
@@ -210,7 +210,7 @@ ffi.cdef [[
 Eina_Iterator *eolian_class_inherits_get(const Eolian_Class *klass);
 Eina_Iterator *eolian_class_functions_get(const Eolian_Class *klass, 
Eolian_Function_Type func_type);
 Eolian_Function_Type eolian_function_type_get(const Eolian_Function 
*function_id);
-Eolian_Object_Scope eolian_function_scope_get(const Eolian_Function 
*function_id);
+Eolian_Object_Scope eolian_function_scope_get(const Eolian_Function 
*function_id, Eolian_Function_Type ftype);
 const char *eolian_function_name_get(const Eolian_Function *function_id);
 const char *eolian_function_full_c_name_get(const Eolian_Function 
*function_id, Eolian_Function_Type ftype, Eina_Bool use_legacy);
 const Eolian_Function *eolian_class_function_get_by_name(const 
Eolian_Class *klass, const char *func_name, Eolian_Function_Type f_type);
@@ -706,8 +706,8 @@ M.Function = ffi.metatype("Eolian_Function", {
 return tonumber(eolian.eolian_function_type_get(self))
 end,
 
-scope_get = function(self)
-return tonumber(eolian.eolian_function_scope_get(self))
+scope_get = function(self, ftype)
+return tonumber(eolian.eolian_function_scope_get(self, ftype))
 end,
 
 name_get = function(self)
diff --git a/src/lib/eolian/Eolian.h b/src/lib/eolian/Eolian.h
index aa00c7e..1821e46 100644
--- a/src/lib/eolian/Eolian.h
+++ b/src/lib/eolian/Eolian.h
@@ -640,11 +640,12 @@ EAPI Eolian_Function_Type eolian_function_type_get(const 
Eolian_Function *functi
  * @brief Returns the scope of a function
  *
  * @param[in] function_id Id of the function
+ * @param[in] ftype The type of function to get the scope for
  * @return the function scope
  *
  * @ingroup Eolian
  */
-EAPI Eolian_Object_Scope eolian_function_scope_get(const Eolian_Function 
*function_id);
+EAPI Eolian_Object_Scope eolian_function_scope_get(const Eolian_Function 
*function_id, Eolian_Function_Type ftype);
 
 /*
  * @brief Returns the name of a function
diff --git a/src/lib/eolian/database_function_api.c 
b/src/lib/eolian/database_function_api.c
index 9cb1177..bf61d44 100644
--- a/src/lib/eolian/database_function_api.c
+++ b/src/lib/eolian/database_function_api.c
@@ -6,10 +6,15 @@
 #include "eolian_database.h"
 
 EAPI Eolian_Object_Scope
-eolian_function_scope_get(const Eolian_Function *fid)
+eolian_function_scope_get(const Eolian_Function *fid, Eolian_Function_Type 
ftype)
 {
EINA_SAFETY_ON_NULL_RETURN_VAL(fid, EOLIAN_SCOPE_PUBLIC);
-   return fid->scope;
+   switch (ftype)
+ {
+  case EOLIAN_UNRESOLVED: case EOLIAN_METHOD: case EOLIAN_PROPERTY: case 
EOLIAN_PROP_GET: return fid->get_scope; break;
+  case EOLIAN_PROP_SET: return fid->set_scope; break;
+  default: return EOLIAN_SCOPE_PUBLIC;
+ }
 }
 
 EAPI Eolian_Function_Type
diff --git a/src/lib/eolian/eo_parser.c b/src/lib/eolian/eo_parser.c
index 3176bdb..e6e6f70 100644
--- a/src/lib/eolian/eo_parser.c
+++ b/src/lib/eolian/eo_parser.c
@@ -1123,7 +1123,8 @@ parse_accessor(Eo_Lexer *ls, Eolian_Function *prop)
int line, col;
Eina_Bool has_return = EINA_FALSE, has_legacy = EINA_FALSE,
  

[EGIT] [core/efl] master 01/01: elm: fix efl_ui_flip header name

2016-06-09 Thread Stefan Schmidt
stefan pushed a commit to branch master.

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

commit 7953da836ecf9ae2d8c32566c762ca3432ae8aea
Author: Stefan Schmidt 
Date:   Thu Jun 9 17:43:28 2016 +0200

elm: fix efl_ui_flip header name

I itroduced this typo on my last commit. Thanks Cedric for spotting it.
---
 src/lib/elementary/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elementary/Makefile.am b/src/lib/elementary/Makefile.am
index 1008678..a553e07 100644
--- a/src/lib/elementary/Makefile.am
+++ b/src/lib/elementary/Makefile.am
@@ -331,7 +331,7 @@ includesub_HEADERS = \
elm_finger.h \
elm_flip.h \
efl_ui_flip_legacy.h\
-   efl_ui_flipi_eo.h \
+   efl_ui_flip_eo.h \
efl_ui_flip_internal_part_eo.h \
elm_flipselector.h \
elm_flipselector_eo.h \

-- 




Re: [E-devel] [EGIT] [core/efl] master 01/02: elm: efl_ui_flip: add fl_ui_flip_eo.h redirection header lost during rename

2016-06-09 Thread Stefan Schmidt
Hello.

On 09/06/16 17:34, Cedric BAIL wrote:
> On Jun 9, 2016 8:14 AM, "Stefan Schmidt"  wrote:
>> stefan pushed a commit to branch master.
>>
>>
> http://git.enlightenment.org/core/efl.git/commit/?id=c3c344da4184ec3b790986c4b7d9008ade3dd9d6
>> commit c3c344da4184ec3b790986c4b7d9008ade3dd9d6
>> Author: Stefan Schmidt 
>> Date:   Thu Jun 9 15:03:22 2016 +0200
>>
>>  elm: efl_ui_flip: add fl_ui_flip_eo.h redirection header lost during
> rename
>>  When this was renamed from elm_flip to efl_ui_flip the _eo.h header
> was lost
>>  which is needed as redirection. This broke for me in distcheck when
> the .eo.h
>>  was going to get generated. It also aligns it with the other headers
> we have
>>  here.
>> ---
>>   src/Makefile_Elementary.am  | 2 +-
>>   src/lib/elementary/Makefile.am  | 4 ++--
>>   src/lib/elementary/efl_ui_flip_eo.h | 1 +
>>   src/lib/elementary/elm_flip.h   | 2 +-
>>   4 files changed, 5 insertions(+), 4 deletions(-)
>>
>> diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am
>> index 268a56f..4f7dc08 100644
>> --- a/src/Makefile_Elementary.am
>> +++ b/src/Makefile_Elementary.am
>> @@ -370,7 +370,7 @@ includesub_HEADERS = \
>>  lib/elementary/elm_entry_legacy.h \
>>  lib/elementary/elm_finger.h \
>>  lib/elementary/elm_flip.h \
>> -   lib/elementary/efl_ui_flip.eo.h \
>> +   lib/elementary/efl_ui_flip_eo.h \
>>  lib/elementary/efl_ui_flip_legacy.h \
>>  lib/elementary/elm_flipselector.h \
>>  lib/elementary/elm_flipselector_eo.h \
>> diff --git a/src/lib/elementary/Makefile.am
> b/src/lib/elementary/Makefile.am
>> index 5c2b914..1008678 100644
>> --- a/src/lib/elementary/Makefile.am
>> +++ b/src/lib/elementary/Makefile.am
>> @@ -331,8 +331,8 @@ includesub_HEADERS = \
>>  elm_finger.h \
>>  elm_flip.h \
>>  efl_ui_flip_legacy.h\
>> -   efl_ui_flip.eo.h \
>> -   efl_ui_flip_internal_part.eo.h \
>> +   efl_ui_flipi_eo.h \
> In the train, so not sure, but isn't the I a typo ?

It is oh old man with good eyesight. :)

Thanks for spotting, fixing it now.

regards
Stefan Schmidt


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/efl] master 01/02: elm: efl_ui_flip: add fl_ui_flip_eo.h redirection header lost during rename

2016-06-09 Thread Cedric BAIL
On Jun 9, 2016 8:14 AM, "Stefan Schmidt"  wrote:
>
> stefan pushed a commit to branch master.
>
>
http://git.enlightenment.org/core/efl.git/commit/?id=c3c344da4184ec3b790986c4b7d9008ade3dd9d6
>
> commit c3c344da4184ec3b790986c4b7d9008ade3dd9d6
> Author: Stefan Schmidt 
> Date:   Thu Jun 9 15:03:22 2016 +0200
>
> elm: efl_ui_flip: add fl_ui_flip_eo.h redirection header lost during
rename
>
> When this was renamed from elm_flip to efl_ui_flip the _eo.h header
was lost
> which is needed as redirection. This broke for me in distcheck when
the .eo.h
> was going to get generated. It also aligns it with the other headers
we have
> here.
> ---
>  src/Makefile_Elementary.am  | 2 +-
>  src/lib/elementary/Makefile.am  | 4 ++--
>  src/lib/elementary/efl_ui_flip_eo.h | 1 +
>  src/lib/elementary/elm_flip.h   | 2 +-
>  4 files changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am
> index 268a56f..4f7dc08 100644
> --- a/src/Makefile_Elementary.am
> +++ b/src/Makefile_Elementary.am
> @@ -370,7 +370,7 @@ includesub_HEADERS = \
> lib/elementary/elm_entry_legacy.h \
> lib/elementary/elm_finger.h \
> lib/elementary/elm_flip.h \
> -   lib/elementary/efl_ui_flip.eo.h \
> +   lib/elementary/efl_ui_flip_eo.h \
> lib/elementary/efl_ui_flip_legacy.h \
> lib/elementary/elm_flipselector.h \
> lib/elementary/elm_flipselector_eo.h \
> diff --git a/src/lib/elementary/Makefile.am
b/src/lib/elementary/Makefile.am
> index 5c2b914..1008678 100644
> --- a/src/lib/elementary/Makefile.am
> +++ b/src/lib/elementary/Makefile.am
> @@ -331,8 +331,8 @@ includesub_HEADERS = \
> elm_finger.h \
> elm_flip.h \
> efl_ui_flip_legacy.h\
> -   efl_ui_flip.eo.h \
> -   efl_ui_flip_internal_part.eo.h \
> +   efl_ui_flipi_eo.h \

In the train, so not sure, but isn't the I a typo ?

> +   efl_ui_flip_internal_part_eo.h \
> elm_flipselector.h \
> elm_flipselector_eo.h \
> elm_flipselector_legacy.h \
> diff --git a/src/lib/elementary/efl_ui_flip_eo.h
b/src/lib/elementary/efl_ui_flip_eo.h
> new file mode 100644
> index 000..1f25ca4
> --- /dev/null
> +++ b/src/lib/elementary/efl_ui_flip_eo.h
> @@ -0,0 +1 @@
> +#include "efl_ui_flip.eo.h"
> diff --git a/src/lib/elementary/elm_flip.h b/src/lib/elementary/elm_flip.h
> index 2e20296..9a5470e 100644
> --- a/src/lib/elementary/elm_flip.h
> +++ b/src/lib/elementary/elm_flip.h
> @@ -39,7 +39,7 @@
>   */
>
>  #ifdef EFL_EO_API_SUPPORT
> -#include "efl_ui_flip.eo.h"
> +#include "efl_ui_flip_eo.h"
>  #endif
>  #ifndef EFL_NOLEGACY_API_SUPPORT
>  #include "efl_ui_flip_legacy.h"
>
> --
>
>
>
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/enlightenment] master 01/02: fix openbsd battery calc on amd64

2016-06-09 Thread Al Poole
discomfitor pushed a commit to branch master.

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

commit 4f1f29ae3510d54b2534a4b4770ec6493a480ad2
Author: Al Poole 
Date:   Thu Jun 9 11:15:09 2016 -0400

fix openbsd battery calc on amd64
---
 src/modules/battery/e_mod_openbsd.c | 33 -
 1 file changed, 28 insertions(+), 5 deletions(-)

diff --git a/src/modules/battery/e_mod_openbsd.c 
b/src/modules/battery/e_mod_openbsd.c
index 2876fb1..8a85a65 100644
--- a/src/modules/battery/e_mod_openbsd.c
+++ b/src/modules/battery/e_mod_openbsd.c
@@ -110,29 +110,52 @@ _battery_openbsd_battery_update()
/* update the poller interval */
ecore_poller_poller_interval_set(bat->poll,
 battery_config->poll_interval);
-
+   
/* last full capacity */
-   bat->mib[3] = 8;
+   bat->mib[3] = 7;
bat->mib[4] = 0;
if (sysctl(bat->mib, 5, , , NULL, 0) != -1)
  {
 bat->last_full_charge = (double)s.value;
  }
 
-   /* remaining capcity */
-   bat->mib[3] = 8;
+   /* remaining capacity */
+   bat->mib[3] = 7;
bat->mib[4] = 3;
if (sysctl(bat->mib, 5, , , NULL, 0) != -1)
  {
 charge = (double)s.value;
  }
-
+  
+   /* This is a workaround because there's an ACPI bug */ 
+   if (charge == 0 || bat->last_full_charge == 0)
+ {
+   /* last full capacity */
+   bat->mib[3] = 8;
+   bat->mib[4] = 0;
+   if (sysctl(bat->mib, 5, , , NULL, 0) != -1)
+ {
+bat->last_full_charge = (double)s.value;
+ }
+
+   /* remaining capacity */
+   bat->mib[3] = 8;
+   bat->mib[4] = 3;
+   if (sysctl(bat->mib, 5, , , NULL, 0) != -1)
+ {
+charge = (double)s.value;
+ }
+ }
+ 
_time = ecore_time_get();
if ((bat->got_prop) && (charge != bat->current_charge))
  bat->charge_rate = ((charge - bat->current_charge) / (_time - 
bat->last_update));
bat->last_update = _time;
bat->current_charge = charge;
bat->percent = 100 * (bat->current_charge / bat->last_full_charge);
+   if (bat->current_charge >= bat->last_full_charge)
+ bat->percent = 100;
+
if (bat->got_prop)
  {
 if (bat->charge_rate > 0)

-- 




[EGIT] [core/enlightenment] master 02/02: use focused client for window actions if passed object is not a client object

2016-06-09 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit a6bed1841a0f2cc729aff5c0b8bccf7e7790c54b
Author: Mike Blumenkrantz 
Date:   Thu Jun 9 11:26:17 2016 -0400

use focused client for window actions if passed object is not a client 
object

in the case where an action is triggered from the compositor or manager 
contexts
the passed object will not be a client, causing actions to fail when they 
should
succeed

fix T3854
---
 src/bin/e_actions.c | 200 ++--
 1 file changed, 54 insertions(+), 146 deletions(-)

diff --git a/src/bin/e_actions.c b/src/bin/e_actions.c
index 19408c4..8e0b8fc 100644
--- a/src/bin/e_actions.c
+++ b/src/bin/e_actions.c
@@ -93,7 +93,8 @@ static int_action_groups_sort_cb(const void *d1, 
const void *d2);
 /***/
 ACT_FN_GO(window_move, EINA_UNUSED)
 {
-   if (!obj) obj = E_OBJECT(e_client_focused_get());
+   if ((!obj) || (obj->type != E_CLIENT_TYPE))
+ obj = E_OBJECT(e_client_focused_get());
if (!obj) return;
if (obj->type != E_CLIENT_TYPE) return;
if (!((E_Client *)obj)->lock_user_location)
@@ -147,11 +148,6 @@ ACT_FN_GO_KEY(window_move, EINA_UNUSED, EINA_UNUSED)
 {
if (!obj) obj = E_OBJECT(e_client_focused_get());
if (!obj) return;
-   if (obj->type != E_CLIENT_TYPE)
- {
-obj = E_OBJECT(e_client_focused_get());
-if (!obj) return;
- }
if (!((E_Client *)obj)->lock_user_location)
  e_client_act_move_keyboard((E_Client *)obj);
 }
@@ -159,9 +155,9 @@ ACT_FN_GO_KEY(window_move, EINA_UNUSED, EINA_UNUSED)
 /***/
 ACT_FN_GO(window_resize, EINA_UNUSED)
 {
-   if (!obj) obj = E_OBJECT(e_client_focused_get());
+   if ((!obj) || (obj->type != E_CLIENT_TYPE))
+ obj = E_OBJECT(e_client_focused_get());
if (!obj) return;
-   if (obj->type != E_CLIENT_TYPE) return;
if (!((E_Client *)obj)->lock_user_size)
  e_client_act_resize_begin((E_Client *)obj, NULL);
 }
@@ -229,13 +225,9 @@ ACT_FN_GO_KEY(window_resize, EINA_UNUSED, EINA_UNUSED)
 /***/
 ACT_FN_GO(window_menu, EINA_UNUSED)
 {
-   if (!obj) obj = E_OBJECT(e_client_focused_get());
+   if ((!obj) || (obj->type != E_CLIENT_TYPE))
+ obj = E_OBJECT(e_client_focused_get());
if (!obj) return;
-   if (obj->type != E_CLIENT_TYPE)
- {
-obj = E_OBJECT(e_client_focused_get());
-if (!obj) return;
- }
e_client_act_menu_begin((E_Client *)obj, NULL, 0);
 }
 
@@ -267,13 +259,9 @@ ACT_FN_GO_KEY(window_menu, EINA_UNUSED, EINA_UNUSED)
 /***/
 ACT_FN_GO(window_raise, EINA_UNUSED)
 {
-   if (!obj) obj = E_OBJECT(e_client_focused_get());
+   if ((!obj) || (obj->type != E_CLIENT_TYPE))
+ obj = E_OBJECT(e_client_focused_get());
if (!obj) return;
-   if (obj->type != E_CLIENT_TYPE)
- {
-obj = E_OBJECT(e_client_focused_get());
-if (!obj) return;
- }
if (!((E_Client *)obj)->lock_user_stacking)
  evas_object_raise(((E_Client *)obj)->frame);
 }
@@ -281,13 +269,9 @@ ACT_FN_GO(window_raise, EINA_UNUSED)
 /***/
 ACT_FN_GO(window_lower, EINA_UNUSED)
 {
-   if (!obj) obj = E_OBJECT(e_client_focused_get());
+   if ((!obj) || (obj->type != E_CLIENT_TYPE))
+ obj = E_OBJECT(e_client_focused_get());
if (!obj) return;
-   if (obj->type != E_CLIENT_TYPE)
- {
-obj = E_OBJECT(e_client_focused_get());
-if (!obj) return;
- }
if (!((E_Client *)obj)->lock_user_stacking)
  evas_object_lower(((E_Client *)obj)->frame);
 }
@@ -295,13 +279,9 @@ ACT_FN_GO(window_lower, EINA_UNUSED)
 /***/
 ACT_FN_GO(window_close, EINA_UNUSED)
 {
-   if (!obj) obj = E_OBJECT(e_client_focused_get());
+   if ((!obj) || (obj->type != E_CLIENT_TYPE))
+ obj = E_OBJECT(e_client_focused_get());
if (!obj) return;
-   if (obj->type != E_CLIENT_TYPE)
- {
-obj = E_OBJECT(e_client_focused_get());
-if (!obj) return;
- }
if (!((E_Client *)obj)->lock_close)
  e_client_act_close_begin((E_Client *)obj);
 }
@@ -342,9 +322,9 @@ ACT_FN_GO(window_kill, EINA_UNUSED)
E_Client *ec;
char dialog_text[1024];
 
-   if (!obj) obj = E_OBJECT(e_client_focused_get());
+   if ((!obj) || (obj->type != E_CLIENT_TYPE))
+ obj = E_OBJECT(e_client_focused_get());
if (!obj) return;
-   if (obj->type != E_CLIENT_TYPE) return;
ec = (E_Client *)obj;
if ((ec->lock_close) || (ec->internal)) return;
 
@@ -384,13 +364,9 @@ ACT_FN_GO(window_kill, EINA_UNUSED)
 

Re: [E-devel] [EGIT] [core/efl] master 06/06: edje: unamed part are completely legit as long as no program try to interact with them.

2016-06-09 Thread Cedric BAIL
On Jun 9, 2016 5:02 AM, "Viacheslav Reutskiy" 
wrote:
>
> Hello,
>
> Cedric, you broke the edje_edit. Edje_edit cann't work with unnamed parts.

Ah, dang ! Problem is that this was legit in the past and application are
using it (which is why I removed it).it also means that edje edit is not
robust on valid older input.Would it be possible to patch edje edit, so
that on open, it patches the edj and generate name as needed ? This way old
flee could be opened by edje edit property.

Cedric

> Please revert this patch.
>
>
> On 06/09/16 01:07, Cedric BAIL wrote:
> > cedric pushed a commit to branch master.
> >
> >
http://git.enlightenment.org/core/efl.git/commit/?id=088043e77af158941d9240a14f3463387f8eabfb
> >
> > commit 088043e77af158941d9240a14f3463387f8eabfb
> > Author: Cedric BAIL 
> > Date:   Wed Jun 8 15:00:30 2016 -0700
> >
> >  edje: unamed part are completely legit as long as no program try
to interact with them.
> > ---
> >   src/bin/edje/edje_cc_handlers.c | 3 +--
> >   1 file changed, 1 insertion(+), 2 deletions(-)
> >
> > diff --git a/src/bin/edje/edje_cc_handlers.c
b/src/bin/edje/edje_cc_handlers.c
> > index 0435713..0bbdb13 100644
> > --- a/src/bin/edje/edje_cc_handlers.c
> > +++ b/src/bin/edje/edje_cc_handlers.c
> > @@ -15079,9 +15079,8 @@ edje_cc_handlers_hierarchy_pop(void)
> >
> >   if (!current_part->name)
> > {
> > - ERR("Parse error near %s:%i. Unnamed part exists in Group
\"%s\" - Pausing for a bit so you notice and remember to fix this.",
> > + WRN("Parse error near %s:%i. Unnamed part exists in Group
\"%s\".",
> >file_in, line - 1, current_de->entry);
> > - sleep(10);
> > }
> >
> >   for (i = 0; i < current_part->other.desc_count; i++)
> >
>
> --
> Viacheslav Reutskiy (rimmed)
>
>
--
> What NetFlow Analyzer can do for you? Monitors network bandwidth and
traffic
> patterns at an interface-level. Reveals which users, apps, and protocols
are
> consuming the most bandwidth. Provides multi-vendor support for NetFlow,
> J-Flow, sFlow and other flows. Make informed decisions using capacity
> planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Fwd: Eldbus & thread safe

2016-06-09 Thread Cedric BAIL
On Jun 9, 2016 3:57 AM, "Kim Shinwoo"  wrote:
>
> https://dbus.freedesktop.org/doc/api/html/group__DBusThreads.html
>
> It seems  that dbus is unsafe before handling dbus with dbus thread.
>
> If we  are not using this then.. clearly it is thread unsafe.
>
> Am I right?

Yes.eldbus is not thread safe. May I ask what is your use of it that would
require it ? Dbus is very asynchronous by nature and very light in
communication, so it is very uncommon to need a thread to handle it.

Cedric

> 2016. 6. 9. 오후 7:44에 "Kim Shinwoo" 님이 작성:
>
> > Sorry for short Q writting on the road using phone. :/
> > If it is not thread safe, do I have to use some ways such as.. ecore
> > thread?
> >
> > Anyone knows thread safety of Dbus?
> > -- 전달된 메일 --
> > 보낸사람: "Kim Shinwoo" 
> > 날짜: 2016. 6. 9. 오후 7:34
> > 제목: Eldbus & thread safe
> > 받는사람: "Enlightenment developer list" <
> > enlightenment-devel@lists.sourceforge.net>
> > 참조:
> >
> > Hello all.
> >>
> >> The eldbus is thread safe?
> >>
> >> Sincerely,
> >> Shinwoo Kim
> >>
> >
>
--
> What NetFlow Analyzer can do for you? Monitors network bandwidth and
traffic
> patterns at an interface-level. Reveals which users, apps, and protocols
are
> consuming the most bandwidth. Provides multi-vendor support for NetFlow,
> J-Flow, sFlow and other flows. Make informed decisions using capacity
> planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] RFC: New text filter API

2016-06-09 Thread Cedric BAIL
On Jun 9, 2016 03:14, "Tom Hacohen"  wrote:
> As part of reworking the text API for the next version I'm tackling the
> text filter API. It needs to be easy to bind, easy to use and efficient.
> I have an idea in mind, and I want to hear some feedback from people
> who've used text filtering to know if there's something I may be
> missing/can do better.
>
> What I have in mind:
>
> Add a text filter event with Text_Filter_Info (keeping the name short
> for this example) as the event info.
>
> Text_Filter_Info looks as follows (names will change, just for the
example):
> orig: const char *
>  new: Eina_Strbuf *
>  rejected: bool
>
> The event is called with orig=original text, new=null, rejected=false.
> The event callbacks can then decide to reject the text chunk (by setting
> rejected = true), or modify the original text by creating a new strbuf
> and setting new to it.
> If rejected is set, the chunk is rejected no matter what the strbuf
> value is.
> I chose a strbuf because it's more efficient and easier to augment the
> text with a strbuf (most likely) than with a normal allocated string.
> However, a case could be made for a normal allocated string because in
> almost (all?) cases, the string will not grow.

My main concern is actually what happen if there is more than one event
handler registered. I think it become pretty complex to chain them with all
this parameter. What if you just pass the text embedded in the strbuf
already and you just look at it for all behavior at the end ?

Cedric

> This is what I'm going to go with unless I hear any strong objections by
> Monday.
>
> --
> Tom.
>
>
--
> What NetFlow Analyzer can do for you? Monitors network bandwidth and
traffic
> patterns at an interface-level. Reveals which users, apps, and protocols
are
> consuming the most bandwidth. Provides multi-vendor support for NetFlow,
> J-Flow, sFlow and other flows. Make informed decisions using capacity
> planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/efl] master 01/02: elm: efl_ui_flip: add fl_ui_flip_eo.h redirection header lost during rename

2016-06-09 Thread Stefan Schmidt
stefan pushed a commit to branch master.

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

commit c3c344da4184ec3b790986c4b7d9008ade3dd9d6
Author: Stefan Schmidt 
Date:   Thu Jun 9 15:03:22 2016 +0200

elm: efl_ui_flip: add fl_ui_flip_eo.h redirection header lost during rename

When this was renamed from elm_flip to efl_ui_flip the _eo.h header was lost
which is needed as redirection. This broke for me in distcheck when the 
.eo.h
was going to get generated. It also aligns it with the other headers we have
here.
---
 src/Makefile_Elementary.am  | 2 +-
 src/lib/elementary/Makefile.am  | 4 ++--
 src/lib/elementary/efl_ui_flip_eo.h | 1 +
 src/lib/elementary/elm_flip.h   | 2 +-
 4 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am
index 268a56f..4f7dc08 100644
--- a/src/Makefile_Elementary.am
+++ b/src/Makefile_Elementary.am
@@ -370,7 +370,7 @@ includesub_HEADERS = \
lib/elementary/elm_entry_legacy.h \
lib/elementary/elm_finger.h \
lib/elementary/elm_flip.h \
-   lib/elementary/efl_ui_flip.eo.h \
+   lib/elementary/efl_ui_flip_eo.h \
lib/elementary/efl_ui_flip_legacy.h \
lib/elementary/elm_flipselector.h \
lib/elementary/elm_flipselector_eo.h \
diff --git a/src/lib/elementary/Makefile.am b/src/lib/elementary/Makefile.am
index 5c2b914..1008678 100644
--- a/src/lib/elementary/Makefile.am
+++ b/src/lib/elementary/Makefile.am
@@ -331,8 +331,8 @@ includesub_HEADERS = \
elm_finger.h \
elm_flip.h \
efl_ui_flip_legacy.h\
-   efl_ui_flip.eo.h \
-   efl_ui_flip_internal_part.eo.h \
+   efl_ui_flipi_eo.h \
+   efl_ui_flip_internal_part_eo.h \
elm_flipselector.h \
elm_flipselector_eo.h \
elm_flipselector_legacy.h \
diff --git a/src/lib/elementary/efl_ui_flip_eo.h 
b/src/lib/elementary/efl_ui_flip_eo.h
new file mode 100644
index 000..1f25ca4
--- /dev/null
+++ b/src/lib/elementary/efl_ui_flip_eo.h
@@ -0,0 +1 @@
+#include "efl_ui_flip.eo.h"
diff --git a/src/lib/elementary/elm_flip.h b/src/lib/elementary/elm_flip.h
index 2e20296..9a5470e 100644
--- a/src/lib/elementary/elm_flip.h
+++ b/src/lib/elementary/elm_flip.h
@@ -39,7 +39,7 @@
  */
 
 #ifdef EFL_EO_API_SUPPORT
-#include "efl_ui_flip.eo.h"
+#include "efl_ui_flip_eo.h"
 #endif
 #ifndef EFL_NOLEGACY_API_SUPPORT
 #include "efl_ui_flip_legacy.h"

-- 




[EGIT] [core/efl] master 01/01: eolian: fix incorrect doxygen param generation

2016-06-09 Thread Daniel Kolesa
q66 pushed a commit to branch master.

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

commit 1a34d89d20c3b90b103481a501764eec522d35aa
Author: Daniel Kolesa 
Date:   Thu Jun 9 14:39:06 2016 +0100

eolian: fix incorrect doxygen param generation

The first param on methods was skipped for some reason.

@fix
---
 src/bin/eolian/docs_generator.c | 7 +--
 src/tests/eolian/data/class_simple_ref_eo.h | 1 +
 src/tests/eolian/data/class_simple_ref_legacy.h | 1 +
 src/tests/eolian/data/docs_ref.h| 1 +
 src/tests/eolian/data/docs_ref_legacy.h | 1 +
 5 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/src/bin/eolian/docs_generator.c b/src/bin/eolian/docs_generator.c
index 886bf9e..8faddb2 100644
--- a/src/bin/eolian/docs_generator.c
+++ b/src/bin/eolian/docs_generator.c
@@ -382,11 +382,6 @@ docs_generate_function(const Eolian_Function *fid, 
Eolian_Function_Type ftype,
if (ftype == EOLIAN_METHOD)
  {
 itr = eolian_function_parameters_get(fid);
-if (!itr || !eina_iterator_next(itr, (void**)))
-  {
- eina_iterator_free(itr);
- itr = NULL;
-  }
  }
else
  {
@@ -399,7 +394,7 @@ docs_generate_function(const Eolian_Function *fid, 
Eolian_Function_Type ftype,
  }
  }
 
-   if (itr && !eina_iterator_next(itr, (void**)))
+   if (!itr || !eina_iterator_next(itr, (void**)))
  {
 eina_iterator_free(itr);
 itr = NULL;
diff --git a/src/tests/eolian/data/class_simple_ref_eo.h 
b/src/tests/eolian/data/class_simple_ref_eo.h
index 9c66d57..43e96fc 100644
--- a/src/tests/eolian/data/class_simple_ref_eo.h
+++ b/src/tests/eolian/data/class_simple_ref_eo.h
@@ -53,6 +53,7 @@ EOAPI void evas_obj_simple_b_set(Eo *obj);
 /**
  * @brief comment foo
  *
+ * @param[in] a a
  * @param[in,out] b
  * @param[out] c
  * @param[in] d
diff --git a/src/tests/eolian/data/class_simple_ref_legacy.h 
b/src/tests/eolian/data/class_simple_ref_legacy.h
index 2150692..8ec66a6 100644
--- a/src/tests/eolian/data/class_simple_ref_legacy.h
+++ b/src/tests/eolian/data/class_simple_ref_legacy.h
@@ -44,6 +44,7 @@ EAPI void evas_object_simple_b_set(Class_Simple *obj);
 /**
  * @brief comment foo
  *
+ * @param[in] a a
  * @param[in,out] b
  * @param[out] c
  * @param[in] d
diff --git a/src/tests/eolian/data/docs_ref.h b/src/tests/eolian/data/docs_ref.h
index 4be8d3c..adc01ed 100644
--- a/src/tests/eolian/data/docs_ref.h
+++ b/src/tests/eolian/data/docs_ref.h
@@ -108,6 +108,7 @@ EOAPI int docs_prop_get(const Eo *obj);
 /**
  * @brief Method documentation.
  *
+ * @param[in] a Param documentation.
  * @param[out] b
  * @param[out] c Another param documentation.
  *
diff --git a/src/tests/eolian/data/docs_ref_legacy.h 
b/src/tests/eolian/data/docs_ref_legacy.h
index e804e3f..33314da 100644
--- a/src/tests/eolian/data/docs_ref_legacy.h
+++ b/src/tests/eolian/data/docs_ref_legacy.h
@@ -105,6 +105,7 @@ EAPI int docs_prop_get(const Docs *obj);
 /**
  * @brief Method documentation.
  *
+ * @param[in] a Param documentation.
  * @param[out] b
  * @param[out] c Another param documentation.
  *

-- 




[EGIT] [core/efl] master 01/01: evas-wayland-egl: Make sure surface pointer is valid before using it

2016-06-09 Thread Benjamin Jacobs
devilhorns pushed a commit to branch master.

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

commit 16f4c5c35aa102d2af699ab01b0c754dbae15eb1
Author: Benjamin Jacobs 
Date:   Thu Jun 9 09:31:40 2016 -0400

evas-wayland-egl: Make sure surface pointer is valid before using it

Summary:
Prevents the uninitialized surface pointer to be used when
glsym_evgl_native_surface_buffer_get is NULL.

Reviewers: devilhorns

Subscribers: cedric, jpeg

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

@fix
---
 src/modules/evas/engines/wayland_egl/evas_engine.c | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/modules/evas/engines/wayland_egl/evas_engine.c 
b/src/modules/evas/engines/wayland_egl/evas_engine.c
index 1252e91..c35c6dd 100644
--- a/src/modules/evas/engines/wayland_egl/evas_engine.c
+++ b/src/modules/evas/engines/wayland_egl/evas_engine.c
@@ -871,14 +871,14 @@ _native_cb_bind(void *image)
  }
else if (n->ns.type == EVAS_NATIVE_SURFACE_EVASGL)
  {
-if (n->ns_data.evasgl.surface)
+if (n->ns_data.evasgl.surface && glsym_evgl_native_surface_buffer_get)
   {
  Eina_Bool is_egl_image = EINA_FALSE;
  void *surface;
 
- if (glsym_evgl_native_surface_buffer_get)
-   surface = 
glsym_evgl_native_surface_buffer_get(n->ns_data.evasgl.surface, _egl_image);
-
+ surface =
+   glsym_evgl_native_surface_buffer_get(n->ns_data.evasgl.surface,
+_egl_image);
  if (is_egl_image)
{
   if (glsym_glEGLImageTargetTexture2DOES)

-- 




Re: [E-devel] [EGIT] [core/efl] master 06/06: edje: unamed part are completely legit as long as no program try to interact with them.

2016-06-09 Thread Viacheslav Reutskiy
Hello,

Cedric, you broke the edje_edit. Edje_edit cann't work with unnamed parts.

Please revert this patch.


On 06/09/16 01:07, Cedric BAIL wrote:
> cedric pushed a commit to branch master.
>
> http://git.enlightenment.org/core/efl.git/commit/?id=088043e77af158941d9240a14f3463387f8eabfb
>
> commit 088043e77af158941d9240a14f3463387f8eabfb
> Author: Cedric BAIL 
> Date:   Wed Jun 8 15:00:30 2016 -0700
>
>  edje: unamed part are completely legit as long as no program try to 
> interact with them.
> ---
>   src/bin/edje/edje_cc_handlers.c | 3 +--
>   1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/src/bin/edje/edje_cc_handlers.c b/src/bin/edje/edje_cc_handlers.c
> index 0435713..0bbdb13 100644
> --- a/src/bin/edje/edje_cc_handlers.c
> +++ b/src/bin/edje/edje_cc_handlers.c
> @@ -15079,9 +15079,8 @@ edje_cc_handlers_hierarchy_pop(void)
>   
>   if (!current_part->name)
> {
> - ERR("Parse error near %s:%i. Unnamed part exists in Group 
> \"%s\" - Pausing for a bit so you notice and remember to fix this.",
> + WRN("Parse error near %s:%i. Unnamed part exists in Group 
> \"%s\".",
>file_in, line - 1, current_de->entry);
> - sleep(10);
> }
>   
>   for (i = 0; i < current_part->other.desc_count; i++)
>

-- 
Viacheslav Reutskiy (rimmed)

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] What is still pending for 1.18 before the freeze starts

2016-06-09 Thread Jean Guyomarc'h
Hi,

(3) was easy to do, so I did it right away.
I was waiting feedback for (1), but for (2) I'm trying to figure out
how to redo properly
the function (and find a time slot to do it).

So, unless there is a no go for the sentinel (1), I will leave it as
it is right now.

Best regards,
Jean


On Thu, Jun 9, 2016 at 12:09 PM, Stefan Schmidt  wrote:
> Hello.
>
> On 07/06/16 21:39, Jean Guyomarc'h wrote:
>> Hi,
>>
>> ok, I'll change ECORE_COCOA_CURSOR_DEFAULT to make it a macro,
>> as it makes the code less akward.
>>
>> After making another pass on Ecore_Cocoa.h, I have some enlightened concerns:
>>
>>(1) the '__ECORE_COCOA_CURSOR_LAST' field in an enum. I like it,
>> because it makes
>> it so convenient to iterate over the whole enum values, create an
>> array that can hold
>> exactly all the fields in the enum, ... BUT I wonder about ABI
>> preservation if we need
>> to add fields in the enum. Plus, this is exposing extra stuff, which
>> value will change
>> as the enum is extended. I don't know what you guys are thinking of this...
>
> We have such sentinels in enums in other parts of the code as well. I
> quick grep showed me at least emotion, ephysics, ecore_audio, eldbus, etc
>
>   Yes, it changes when we add new real values to the enum but it is
> clearly marked as sentinel so this should be ok.
>>(2) ecore_cocoa_selection_clipboard_get() is just akward. The
>> concept of it returning a
>> void* which needs to be re-interpreted according to a second value
>> returned by address
>> is just so bad (mea culpa, mea maxima culpa). I think it has to be
>> nuked. It could very
>> well return a Eina_Value or an Eina_Array/Eina_Inarray of Eina_Values.
>
> If you could eliminate the void* as return that would be nice I would say.
>
>>(3) the ecore_cocoa_selection_clipboard_() functions should
>> maybe be renamed
>> ecore_cocoa_clipboard_() (dropping the "selection" inside). I'm
>> not quite sure why
>> I named them this way in the first place, but that seem odd: they have
>> nothing to do
>> with a selection, only with the clipboard.
>>
>>
>> Unless there is a "no go", I'll start with (3), because it is easy to
>> do and requires few changes.
>> I will wait for some feedback for (1).
>> I'll overhaul (2) with what I think is a better API, it should require
>> few changes to the
>> implementation, and wait for remarks.
>
>  From the commit log I can see that 3 is done. For 1 and 2 you have been
> waiting for feedback?
>
> regards
> Stefan Schmidt
>
> --
> What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
> patterns at an interface-level. Reveals which users, apps, and protocols are
> consuming the most bandwidth. Provides multi-vendor support for NetFlow,
> J-Flow, sFlow and other flows. Make informed decisions using capacity
> planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Fwd: [EGIT] [core/efl] master 01/01: elm video: implement player interface

2016-06-09 Thread marcel-hollerbach
Hello,

On Thu, Jun 09, 2016 at 12:06:56PM +0100, Tom Hacohen wrote:
> ami pushed a commit to branch master.
> 
> http://git.enlightenment.org/core/efl.git/commit/?id=a1b0fb2c9f95b94e705bba8a0ad6d0f65a5506b0
> 
> commit a1b0fb2c9f95b94e705bba8a0ad6d0f65a5506b0
> Author: Yeshwanth Reddivari 
> Date:   Wed Jun 8 14:46:11 2016 +0530
> 
> elm video: implement player interface
> Reviewers: raster, cedric, jpeg, singh.amitesh
> Reviewed By: singh.amitesh
> Differential Revision: https://phab.enlightenment.org/D4021
> ---
>  src/lib/elementary/elm_video.c| 63 +
>  src/lib/elementary/elm_video.eo   | 56 --
>  src/lib/elementary/elm_video_legacy.h | 75
> +++
>  3 files changed, 137 insertions(+), 57 deletions(-)
> 
> diff --git a/src/lib/elementary/elm_video.c b/src/lib/elementary/elm_video.c
> index 65a5d6e..6ef84fc 100644
> --- a/src/lib/elementary/elm_video.c
> +++ b/src/lib/elementary/elm_video.c
> @@ -373,49 +373,49 @@ _elm_video_is_playing_get(Eo *obj EINA_UNUSED,
> Elm_Video_Data *sd)
>  }
>   EOLIAN static Eina_Bool
> -_elm_video_is_seekable_get(Eo *obj EINA_UNUSED, Elm_Video_Data *sd)
> +_elm_video_efl_player_seekable_get(Eo *obj EINA_UNUSED, Elm_Video_Data *sd)
>  {
> return emotion_object_seekable_get(sd->emotion);

sd->emotion is implementing the efl.player interface.

So those functions could be replaced by composing the sd->emotion
object and the object. Then all interface function which are not
implemented by object will be called on the sd->emotion object.

Greetings
   bu5hm4n

>  }
>   EOLIAN static Eina_Bool
> -_elm_video_audio_mute_get(Eo *obj EINA_UNUSED, Elm_Video_Data *sd)
> +_elm_video_efl_player_audio_mute_get(Eo *obj EINA_UNUSED, Elm_Video_Data
> *sd)
>  {
> return emotion_object_audio_mute_get(sd->emotion);
>  }
>   EOLIAN static void
> -_elm_video_audio_mute_set(Eo *obj EINA_UNUSED, Elm_Video_Data *sd,
> Eina_Bool mute)
> +_elm_video_efl_player_audio_mute_set(Eo *obj EINA_UNUSED, Elm_Video_Data
> *sd, Eina_Bool mute)
>  {
> emotion_object_audio_mute_set(sd->emotion, mute);
>  }
>   EOLIAN static double
> -_elm_video_audio_level_get(Eo *obj EINA_UNUSED, Elm_Video_Data *sd)
> +_elm_video_efl_player_audio_volume_get(Eo *obj EINA_UNUSED, Elm_Video_Data
> *sd)
>  {
> return emotion_object_audio_volume_get(sd->emotion);
>  }
>   EOLIAN static void
> -_elm_video_audio_level_set(Eo *obj EINA_UNUSED, Elm_Video_Data *sd, double
> volume)
> +_elm_video_efl_player_audio_volume_set(Eo *obj EINA_UNUSED, Elm_Video_Data
> *sd, double volume)
>  {
> emotion_object_audio_volume_set(sd->emotion, volume);
>  }
>   EOLIAN static double
> -_elm_video_play_position_get(Eo *obj EINA_UNUSED, Elm_Video_Data *sd)
> +_elm_video_efl_player_position_get(Eo *obj EINA_UNUSED, Elm_Video_Data *sd)
>  {
> return emotion_object_position_get(sd->emotion);
>  }
>   EOLIAN static void
> -_elm_video_play_position_set(Eo *obj EINA_UNUSED, Elm_Video_Data *sd,
> double position)
> +_elm_video_efl_player_position_set(Eo *obj EINA_UNUSED, Elm_Video_Data *sd,
> double position)
>  {
> emotion_object_position_set(sd->emotion, position);
>  }
>   EOLIAN static double
> -_elm_video_play_length_get(Eo *obj EINA_UNUSED, Elm_Video_Data *sd)
> +_elm_video_efl_player_length_get(Eo *obj EINA_UNUSED, Elm_Video_Data *sd)
>  {
> return emotion_object_play_length_get(sd->emotion);
>  }
> @@ -480,5 +480,52 @@ elm_video_file_get(Eo *obj, const char **filename)
> efl_file_get((Eo *) obj, filename, NULL);
>  }
>  +EAPI void
> +elm_video_audio_level_set(Evas_Object *obj, double volume)
> +{
> +   efl_player_audio_volume_set(obj, volume);
> +}
> +
> +EAPI double
> +elm_video_audio_level_get(const Evas_Object *obj)
> +{
> +   return efl_player_audio_volume_get(obj);
> +}
> +
> +EAPI void
> +elm_video_audio_mute_set(Evas_Object *obj, Eina_Bool mute)
> +{
> +   efl_player_audio_mute_set(obj, mute);
> +}
> +
> +EAPI Eina_Bool
> +elm_video_audio_mute_get(const Evas_Object *obj)
> +{
> +   return efl_player_audio_mute_get(obj);
> +}
> +
> +EAPI double
> +elm_video_play_length_get(const Evas_Object *obj)
> +{
> +   return efl_player_length_get(obj);
> +}
> +
> +EAPI Eina_Bool
> +elm_video_is_seekable_get(const Evas_Object *obj)
> +{
> +   return efl_player_seekable_get(obj);
> +}
> +
> +EAPI void
> +elm_video_play_position_set(Evas_Object *obj, double position)
> +{
> +   efl_player_position_set(obj, position);
> +}
> +
> +EAPI double
> +elm_video_play_position_get(const Evas_Object *obj)
> +{
> +   return efl_player_position_get(obj);
> +}
>   #include "elm_video.eo.c"
> diff --git a/src/lib/elementary/elm_video.eo
> b/src/lib/elementary/elm_video.eo
> index 0d689b1..0a84352 100644
> --- a/src/lib/elementary/elm_video.eo
> +++ b/src/lib/elementary/elm_video.eo
> @@ -1,19 +1,9 @@
> -class Elm.Video (Elm.Layout, Efl.File, Elm.Interface.Atspi_Widget_Action)
> +class Elm.Video 

[EGIT] [tools/eflete] master 06/07: group manager: add API for get list of used styles for given group

2016-06-09 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=fd43670f2b46e162738f16151b82a1e5f261e418

commit fd43670f2b46e162738f16151b82a1e5f261e418
Author: Vyacheslav Reutskiy 
Date:   Wed Jun 8 16:03:22 2016 +0300

group manager: add API for get list of used styles for given group

Change-Id: Iab2fdd47a39aa29078ffb713eb8259a2796df015
---
 src/bin/project_manager/group_manager.c | 42 +
 src/bin/project_manager/group_manager.h |  3 +++
 2 files changed, 45 insertions(+)

diff --git a/src/bin/project_manager/group_manager.c 
b/src/bin/project_manager/group_manager.c
index cafe701..afed9f6 100644
--- a/src/bin/project_manager/group_manager.c
+++ b/src/bin/project_manager/group_manager.c
@@ -288,6 +288,48 @@ gm_group_used_color_classes_edj_get(const char *edj, const 
char *group)
return _strings_list_duplicates_del(color_classes);
 }
 
+Eina_List *
+gm_group_used_styles_get(const char *edj, const char *group)
+{
+   Eina_List *styles = NULL;
+   Eina_List *parts, *l1, *states, *l2;
+   Eina_Stringshare *part, *state, *style, *pstate;
+   double pvalue;
+   Evas *e;
+   Evas_Object *obj, *win;
+
+   ecore_thread_main_loop_begin();
+   win = elm_win_add(NULL, "eflete_group_styles_list_get", ELM_WIN_BASIC);
+   elm_win_norender_push(win);
+   e = evas_object_evas_get(win);
+   obj = edje_edit_object_add(e);
+   edje_object_file_set(obj, edj, group);
+
+   parts = edje_edit_parts_list_get(obj);
+   EINA_LIST_FOREACH(parts, l1, part)
+ {
+states = edje_edit_part_states_list_get(obj, part);
+EINA_LIST_FOREACH(states, l2, state)
+  {
+ if (EDJE_PART_TYPE_TEXTBLOCK != edje_edit_part_type_get(obj, 
part)) continue;
+ state_name_split(state, , );
+ style = edje_edit_state_text_style_get(obj, part, pstate, pvalue);
+ if (style)
+   {
+  styles = eina_list_sorted_insert(styles, sort_cb, 
eina_stringshare_add(style));
+  eina_stringshare_del(style);
+   }
+ eina_stringshare_del(pstate);
+  }
+ }
+   edje_edit_string_list_free(parts);
+   evas_object_del(win);
+   ecore_thread_main_loop_end();
+
+   return _strings_list_duplicates_del(styles);
+}
+
+
 State *
 gm_state_add(Project *pro, Part *part, const char *state_name)
 {
diff --git a/src/bin/project_manager/group_manager.h 
b/src/bin/project_manager/group_manager.h
index 56fd3c4..ea76037 100644
--- a/src/bin/project_manager/group_manager.h
+++ b/src/bin/project_manager/group_manager.h
@@ -49,6 +49,9 @@ gm_group_used_sample_edj_get(const char *edj, const char 
*group);
 Eina_List *
 gm_group_used_color_classes_edj_get(const char *edj, const char *group);
 
+Eina_List *
+gm_group_used_styles_get(const char *edj, const char *group);
+
 State *
 gm_state_add(Project *pro, Part *part, const char *state_name);
 

-- 




[EGIT] [tools/eflete] master 01/07: string_common: update compare cb, consider stringshare in compare

2016-06-09 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=b9984d371af2c7f94a2a38bc6f3a2fdb8fc8657d

commit b9984d371af2c7f94a2a38bc6f3a2fdb8fc8657d
Author: Vyacheslav Reutskiy 
Date:   Wed Jun 8 11:28:24 2016 +0300

string_common: update compare cb, consider stringshare in compare

Change-Id: Ie55691a6fd48af696bd25e3b36e8dfa810b542c8
---
 src/bin/common/string_common.c | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/bin/common/string_common.c b/src/bin/common/string_common.c
index d5de437..38ba71f 100644
--- a/src/bin/common/string_common.c
+++ b/src/bin/common/string_common.c
@@ -24,13 +24,13 @@
 int
 sort_cb(const void *data1, const void *data2)
 {
-   const char *str1 = data1;
-   const char *str2 = data2;
+   if (!data1) return 1;
+   if (!data2) return -1;
 
-   if (!str1) return 1;
-   if (!str2) return -1;
-
-   return strcmp(str1, str2);
+   if (data1 == data2)
+ return 0;
+   else
+ return strcmp(data1, data2);
 }
 
 void

-- 




[EGIT] [tools/eflete] master 07/07: group manager: add API for get list of used fonts for given group

2016-06-09 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=f8bcedf14e2b0357a76cfb79ececcc693ead96f8

commit f8bcedf14e2b0357a76cfb79ececcc693ead96f8
Author: Vyacheslav Reutskiy 
Date:   Thu Jun 9 12:03:03 2016 +0300

group manager: add API for get list of used fonts for given group

Change-Id: I19e3fda889a83773f236384a5ff8e5b4b56797b3
---
 src/bin/project_manager/group_manager.c | 82 +
 src/bin/project_manager/group_manager.h |  3 ++
 2 files changed, 85 insertions(+)

diff --git a/src/bin/project_manager/group_manager.c 
b/src/bin/project_manager/group_manager.c
index afed9f6..f116415 100644
--- a/src/bin/project_manager/group_manager.c
+++ b/src/bin/project_manager/group_manager.c
@@ -329,6 +329,88 @@ gm_group_used_styles_get(const char *edj, const char 
*group)
return _strings_list_duplicates_del(styles);
 }
 
+Eina_List *
+_style_font_get(Evas_Object *obj, const char *style)
+{
+   Eina_List *fonts = fonts;
+   Eina_List *tags, *l;
+   Eina_Stringshare *font, *tag_value;
+   char *pch;
+
+   tags = edje_edit_style_tags_list_get(obj, style);
+   EINA_LIST_FOREACH(tags, l, tag_value)
+ {
+pch = strstr(tag_value, "font");
+pch += strlen("font");
+pch = strtok(pch, " ");
+font = edje_edit_font_path_get(obj, pch);
+if (font)
+  {
+ fonts = eina_list_sorted_insert(fonts, sort_cb, font);
+ eina_stringshare_del(font);
+  }
+ }
+
+   return fonts;
+}
+
+Eina_List *
+gm_group_used_fonts_get(const char *edj, const char *group)
+{
+   Eina_List *fonts = NULL;
+   Eina_List *parts, *l1, *states, *l2, *style_fonts;
+   Eina_Stringshare *part, *state, *font, *style, *real_font, *pstate;
+   double pvalue;
+   Evas *e;
+   Evas_Object *obj, *win;
+   Edje_Part_Type type;
+
+   ecore_thread_main_loop_begin();
+   win = elm_win_add(NULL, "eflete_group_fonts_list_get", ELM_WIN_BASIC);
+   elm_win_norender_push(win);
+   e = evas_object_evas_get(win);
+   obj = edje_edit_object_add(e);
+   edje_object_file_set(obj, edj, group);
+
+   parts = edje_edit_parts_list_get(obj);
+   EINA_LIST_FOREACH(parts, l1, part)
+ {
+type = edje_edit_part_type_get(obj, part);
+states = edje_edit_part_states_list_get(obj, part);
+EINA_LIST_FOREACH(states, l2, state)
+  {
+ state_name_split(state, , );
+ if (EDJE_PART_TYPE_TEXT == type)
+   {
+  font = edje_edit_state_font_get(obj, part, pstate, pvalue);
+  if (font)
+{
+   real_font = edje_edit_font_path_get(obj, font);
+   fonts = eina_list_sorted_insert(fonts, sort_cb, 
eina_stringshare_add(real_font));
+   eina_stringshare_del(font);
+   eina_stringshare_del(real_font);
+}
+   }
+ if (EDJE_PART_TYPE_TEXTBLOCK == type)
+   {
+  style = edje_edit_state_text_style_get(obj, part, pstate, 
pvalue);
+  if (style)
+{
+   style_fonts = _style_font_get(obj, style);
+   fonts = eina_list_sorted_merge(fonts, style_fonts, 
sort_cb);
+   eina_stringshare_del(style);
+   edje_edit_string_list_free(style_fonts);
+}
+   }
+ eina_stringshare_del(pstate);
+  }
+ }
+   edje_edit_string_list_free(parts);
+   evas_object_del(win);
+   ecore_thread_main_loop_end();
+
+   return _strings_list_duplicates_del(fonts);
+}
 
 State *
 gm_state_add(Project *pro, Part *part, const char *state_name)
diff --git a/src/bin/project_manager/group_manager.h 
b/src/bin/project_manager/group_manager.h
index ea76037..df9ba80 100644
--- a/src/bin/project_manager/group_manager.h
+++ b/src/bin/project_manager/group_manager.h
@@ -52,6 +52,9 @@ gm_group_used_color_classes_edj_get(const char *edj, const 
char *group);
 Eina_List *
 gm_group_used_styles_get(const char *edj, const char *group);
 
+Eina_List *
+gm_group_used_fonts_get(const char *edj, const char *group);
+
 State *
 gm_state_add(Project *pro, Part *part, const char *state_name);
 

-- 




[EGIT] [tools/eflete] master 04/07: group manager: add API for get list of used samples for given group

2016-06-09 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=5ec3cd62a3ed6dba4388420c24cba7951b7a694b

commit 5ec3cd62a3ed6dba4388420c24cba7951b7a694b
Author: Vyacheslav Reutskiy 
Date:   Wed Jun 8 15:11:01 2016 +0300

group manager: add API for get list of used samples for given group

Change-Id: I3b9ed1af6235af3c862db9d431cb1af34b1cae67
---
 src/bin/project_manager/group_manager.c | 36 +
 src/bin/project_manager/group_manager.h |  5 -
 2 files changed, 40 insertions(+), 1 deletion(-)

diff --git a/src/bin/project_manager/group_manager.c 
b/src/bin/project_manager/group_manager.c
index d9c9e02..8aa2128 100644
--- a/src/bin/project_manager/group_manager.c
+++ b/src/bin/project_manager/group_manager.c
@@ -215,6 +215,42 @@ gm_group_used_images_edj_get(const char *edj, const char 
*group)
return _strings_list_duplicates_del(images);
 }
 
+Eina_List *
+gm_group_used_sample_edj_get(const char *edj, const char *group)
+{
+   Eina_List *samples = NULL;
+   Eina_List *programs, *l1;
+   Evas *e;
+   Evas_Object *obj, *win;
+   Eina_Stringshare *program, *sample;
+
+   ecore_thread_main_loop_begin();
+   win = elm_win_add(NULL, "eflete_group_samples_list_get", ELM_WIN_BASIC);
+   elm_win_norender_push(win);
+   e = evas_object_evas_get(win);
+   obj = edje_edit_object_add(e);
+   edje_object_file_set(obj, edj, group);
+
+   programs = edje_edit_programs_list_get(obj);
+   EINA_LIST_FOREACH(programs, l1, program)
+ {
+if (EDJE_ACTION_TYPE_SOUND_SAMPLE != edje_edit_program_action_get(obj, 
program))
+  continue;
+
+sample = edje_edit_program_sample_name_get(obj, program);
+if (sample)
+  {
+ samples = eina_list_sorted_insert(samples, sort_cb, 
eina_stringshare_add(sample));
+ eina_stringshare_del(sample);
+  }
+ }
+   edje_edit_string_list_free(programs);
+   evas_object_del(win);
+   ecore_thread_main_loop_end();
+
+   return _strings_list_duplicates_del(samples);
+}
+
 State *
 gm_state_add(Project *pro, Part *part, const char *state_name)
 {
diff --git a/src/bin/project_manager/group_manager.h 
b/src/bin/project_manager/group_manager.h
index 17a517e..8704b11 100644
--- a/src/bin/project_manager/group_manager.h
+++ b/src/bin/project_manager/group_manager.h
@@ -38,10 +38,13 @@ void
 gm_group_edit_object_unload(Group *group);
 
 Eina_List *
+gm_group_used_groups_edj_get(const char *edj, const char *group);
+
+Eina_List *
 gm_group_used_images_edj_get(const char *edj, const char *group);
 
 Eina_List *
-gm_group_used_groups_edj_get(const char *edj, const char *group);
+gm_group_used_sample_edj_get(const char *edj, const char *group);
 
 State *
 gm_state_add(Project *pro, Part *part, const char *state_name);

-- 




[EGIT] [tools/eflete] master 05/07: group manager: add API for get list of used color_classes for given group

2016-06-09 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=ebd9b22d7eba7d88f14690b8d09d8af927f6bd74

commit ebd9b22d7eba7d88f14690b8d09d8af927f6bd74
Author: Vyacheslav Reutskiy 
Date:   Wed Jun 8 15:11:21 2016 +0300

group manager: add API for get list of used color_classes for given group

Change-Id: I1a2d0fb4d38f0467caa4b99214b75b5464e32065
---
 src/bin/project_manager/group_manager.c | 37 +
 src/bin/project_manager/group_manager.h |  3 +++
 2 files changed, 40 insertions(+)

diff --git a/src/bin/project_manager/group_manager.c 
b/src/bin/project_manager/group_manager.c
index 8aa2128..cafe701 100644
--- a/src/bin/project_manager/group_manager.c
+++ b/src/bin/project_manager/group_manager.c
@@ -251,6 +251,43 @@ gm_group_used_sample_edj_get(const char *edj, const char 
*group)
return _strings_list_duplicates_del(samples);
 }
 
+Eina_List *
+gm_group_used_color_classes_edj_get(const char *edj, const char *group)
+{
+   Eina_List *color_classes = NULL;
+   Eina_List *parts, *l1, *states, *l2;
+   Eina_Stringshare *part, *state, *color_c, *pstate;
+   double pvalue;
+   Evas *e;
+   Evas_Object *obj, *win;
+
+   ecore_thread_main_loop_begin();
+   win = elm_win_add(NULL, "eflete_group_color_classes_list_get", 
ELM_WIN_BASIC);
+   elm_win_norender_push(win);
+   e = evas_object_evas_get(win);
+   obj = edje_edit_object_add(e);
+   edje_object_file_set(obj, edj, group);
+
+   parts = edje_edit_parts_list_get(obj);
+   EINA_LIST_FOREACH(parts, l1, part)
+ {
+states = edje_edit_part_states_list_get(obj, part);
+EINA_LIST_FOREACH(states, l2, state)
+  {
+ state_name_split(state, , );
+ color_c = edje_edit_state_color_class_get(obj, part, pstate, 
pvalue);
+ color_classes = eina_list_sorted_insert(color_classes, sort_cb, 
eina_stringshare_add(color_c));
+ eina_stringshare_del(color_c);
+ eina_stringshare_del(pstate);
+  }
+ }
+   edje_edit_string_list_free(parts);
+   evas_object_del(win);
+   ecore_thread_main_loop_end();
+
+   return _strings_list_duplicates_del(color_classes);
+}
+
 State *
 gm_state_add(Project *pro, Part *part, const char *state_name)
 {
diff --git a/src/bin/project_manager/group_manager.h 
b/src/bin/project_manager/group_manager.h
index 8704b11..56fd3c4 100644
--- a/src/bin/project_manager/group_manager.h
+++ b/src/bin/project_manager/group_manager.h
@@ -46,6 +46,9 @@ gm_group_used_images_edj_get(const char *edj, const char 
*group);
 Eina_List *
 gm_group_used_sample_edj_get(const char *edj, const char *group);
 
+Eina_List *
+gm_group_used_color_classes_edj_get(const char *edj, const char *group);
+
 State *
 gm_state_add(Project *pro, Part *part, const char *state_name);
 

-- 




[EGIT] [tools/eflete] master 03/07: group manager: add API for get list of used groups for given group

2016-06-09 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=209fddf1bfb574ad0b3787b9e2fc35bd4eaeff74

commit 209fddf1bfb574ad0b3787b9e2fc35bd4eaeff74
Author: Vyacheslav Reutskiy 
Date:   Wed Jun 8 14:16:48 2016 +0300

group manager: add API for get list of used groups for given group

Change-Id: I08ce3e03cda344fe988ac6d2ee7b3122abdef19a
---
 src/bin/project_manager/group_manager.c | 64 +
 src/bin/project_manager/group_manager.h |  3 ++
 2 files changed, 67 insertions(+)

diff --git a/src/bin/project_manager/group_manager.c 
b/src/bin/project_manager/group_manager.c
index 173cfb2..d9c9e02 100644
--- a/src/bin/project_manager/group_manager.c
+++ b/src/bin/project_manager/group_manager.c
@@ -110,6 +110,70 @@ _strings_list_duplicates_del(Eina_List *list)
return list;
 }
 
+#define SOURCE_GET(FUNC) \
+do { \
+   source = FUNC(obj, part); \
+   if (source) \
+ { \
+groups = eina_list_sorted_insert(groups, sort_cb, 
eina_stringshare_add(source)); \
+eina_stringshare_del(source); \
+ } \
+   } \
+while (0);
+
+Eina_List *
+gm_group_used_groups_edj_get(const char *edj, const char *group)
+{
+   Eina_List *groups = NULL;
+   Eina_List *parts, *l1;
+   Eina_Stringshare *part, *source;
+   Evas *e;
+   Evas_Object *obj, *win;
+   Edje_Part_Type type;
+   int items_count, i;
+
+   ecore_thread_main_loop_begin();
+   win = elm_win_add(NULL, "eflete_group_groups_list_get", ELM_WIN_BASIC);
+   elm_win_norender_push(win);
+   e = evas_object_evas_get(win);
+   obj = edje_edit_object_add(e);
+   edje_object_file_set(obj, edj, group);
+
+   parts = edje_edit_parts_list_get(obj);
+   EINA_LIST_FOREACH(parts, l1, part)
+ {
+type = edje_edit_part_type_get(obj, part);
+if ((EDJE_PART_TYPE_GROUP != type) ||
+(EDJE_PART_TYPE_TEXTBLOCK != type) ||
+(EDJE_PART_TYPE_BOX != type) ||
+(EDJE_PART_TYPE_TABLE != type))
+  continue;
+SOURCE_GET(edje_edit_part_source_get)
+SOURCE_GET(edje_edit_part_source2_get)
+SOURCE_GET(edje_edit_part_source3_get)
+SOURCE_GET(edje_edit_part_source4_get)
+SOURCE_GET(edje_edit_part_source5_get)
+SOURCE_GET(edje_edit_part_source6_get)
+
+items_count = edje_edit_part_items_count_get(obj, part);
+for (i = 0; i < items_count; i++)
+  {
+ source = edje_edit_part_item_index_source_get(obj, part, i);
+ if (source)
+   {
+  groups = eina_list_sorted_insert(groups, sort_cb, 
eina_stringshare_add(source));
+  eina_stringshare_del(source);
+   }
+  }
+ }
+   edje_edit_string_list_free(parts);
+   evas_object_del(win);
+   ecore_thread_main_loop_end();
+
+   return _strings_list_duplicates_del(groups);
+}
+#undef SOURCE_GET
+
 Eina_List *
 gm_group_used_images_edj_get(const char *edj, const char *group)
 {
diff --git a/src/bin/project_manager/group_manager.h 
b/src/bin/project_manager/group_manager.h
index 0f6831a..17a517e 100644
--- a/src/bin/project_manager/group_manager.h
+++ b/src/bin/project_manager/group_manager.h
@@ -40,6 +40,9 @@ gm_group_edit_object_unload(Group *group);
 Eina_List *
 gm_group_used_images_edj_get(const char *edj, const char *group);
 
+Eina_List *
+gm_group_used_groups_edj_get(const char *edj, const char *group);
+
 State *
 gm_state_add(Project *pro, Part *part, const char *state_name);
 

-- 




[EGIT] [tools/eflete] master 02/07: group manager: add API for get list of used images for given group

2016-06-09 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=5825d8ba651a562a93bac15995e79b408bb8d57c

commit 5825d8ba651a562a93bac15995e79b408bb8d57c
Author: Vyacheslav Reutskiy 
Date:   Wed Jun 8 11:48:48 2016 +0300

group manager: add API for get list of used images for given group

Change-Id: I0f3594c7d4caf80ab2328a375d6e80f5c25e4d04
---
 src/bin/project_manager/group_manager.c | 61 +
 src/bin/project_manager/group_manager.h |  3 ++
 2 files changed, 64 insertions(+)

diff --git a/src/bin/project_manager/group_manager.c 
b/src/bin/project_manager/group_manager.c
index ea4d48a..173cfb2 100644
--- a/src/bin/project_manager/group_manager.c
+++ b/src/bin/project_manager/group_manager.c
@@ -90,6 +90,67 @@ gm_group_edit_object_unload(Group *group)
group->edit_object = NULL;
 }
 
+Eina_List *
+_strings_list_duplicates_del(Eina_List *list)
+{
+   Eina_List *l, *l2;
+   Eina_Stringshare *str, *str2;
+
+   EINA_LIST_FOREACH(list, l, str)
+ {
+EINA_LIST_FOREACH(eina_list_next(l), l2, str2)
+  {
+ if ((str == str2) || !strcmp(str, str2))
+   {
+  list = eina_list_remove_list(list, l2);
+  eina_stringshare_del(str2);
+   }
+  }
+ }
+   return list;
+}
+
+Eina_List *
+gm_group_used_images_edj_get(const char *edj, const char *group)
+{
+   Eina_List *images = NULL;
+   Eina_List *parts, *l1, *states, *l2, *tweens;
+   Eina_Stringshare *part, *state, *img, *pstate;
+   double pvalue;
+   Evas *e;
+   Evas_Object *obj, *win;
+
+   ecore_thread_main_loop_begin();
+   win = elm_win_add(NULL, "eflete_group_images_list_get", ELM_WIN_BASIC);
+   elm_win_norender_push(win);
+   e = evas_object_evas_get(win);
+   obj = edje_edit_object_add(e);
+   edje_object_file_set(obj, edj, group);
+
+   parts = edje_edit_parts_list_get(obj);
+   EINA_LIST_FOREACH(parts, l1, part)
+ {
+if (EDJE_PART_TYPE_IMAGE != edje_edit_part_type_get(obj, part)) 
continue;
+states = edje_edit_part_states_list_get(obj, part);
+EINA_LIST_FOREACH(states, l2, state)
+  {
+ state_name_split(state, , );
+ img = edje_edit_state_image_get(obj, part, pstate, pvalue);
+ images = eina_list_sorted_insert(images, sort_cb, 
eina_stringshare_add(img));
+ eina_stringshare_del(img);
+ eina_stringshare_del(pstate);
+
+ tweens = edje_edit_state_tweens_list_get(obj, part, pstate, 
pvalue);
+ images = eina_list_sorted_merge(images, tweens, sort_cb);
+  }
+ }
+   edje_edit_string_list_free(parts);
+   evas_object_del(win);
+   ecore_thread_main_loop_end();
+
+   return _strings_list_duplicates_del(images);
+}
+
 State *
 gm_state_add(Project *pro, Part *part, const char *state_name)
 {
diff --git a/src/bin/project_manager/group_manager.h 
b/src/bin/project_manager/group_manager.h
index 0dd9c3b..0f6831a 100644
--- a/src/bin/project_manager/group_manager.h
+++ b/src/bin/project_manager/group_manager.h
@@ -37,6 +37,9 @@ gm_group_edit_object_reload(Project *pro, Group *group);
 void
 gm_group_edit_object_unload(Group *group);
 
+Eina_List *
+gm_group_used_images_edj_get(const char *edj, const char *group);
+
 State *
 gm_state_add(Project *pro, Part *part, const char *state_name);
 

-- 




Re: [E-devel] Fwd: Eldbus & thread safe

2016-06-09 Thread Kim Shinwoo
https://dbus.freedesktop.org/doc/api/html/group__DBusThreads.html

It seems  that dbus is unsafe before handling dbus with dbus thread.

If we  are not using this then.. clearly it is thread unsafe.

Am I right?
2016. 6. 9. 오후 7:44에 "Kim Shinwoo" 님이 작성:

> Sorry for short Q writting on the road using phone. :/
> If it is not thread safe, do I have to use some ways such as.. ecore
> thread?
>
> Anyone knows thread safety of Dbus?
> -- 전달된 메일 --
> 보낸사람: "Kim Shinwoo" 
> 날짜: 2016. 6. 9. 오후 7:34
> 제목: Eldbus & thread safe
> 받는사람: "Enlightenment developer list" <
> enlightenment-devel@lists.sourceforge.net>
> 참조:
>
> Hello all.
>>
>> The eldbus is thread safe?
>>
>> Sincerely,
>> Shinwoo Kim
>>
>
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/efl] master 01/01: just a small indent change

2016-06-09 Thread Dave Andreoli
davemds pushed a commit to branch master.

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

commit 25bc0b978578482e5376937b4108db3cdd60f72b
Author: Dave Andreoli 
Date:   Thu Jun 9 12:54:26 2016 +0200

just a small indent change
---
 configure.ac | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/configure.ac b/configure.ac
index 7f0a8bd..676624f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2862,8 +2862,7 @@ have_rsvg="no"
 
 ### Check needed dependency for each generic loader
 if test "x${want_poppler}" = "xyes"; then
-   PKG_CHECK_MODULES([POPPLER], [poppler >= 0.12],
- [have_poppler="yes"])
+   PKG_CHECK_MODULES([POPPLER], [poppler >= 0.12], [have_poppler="yes"])
 
PKG_CHECK_EXISTS([poppler >= 0.20],
 [AC_DEFINE(HAVE_POPPLER_020, 1, [Have poppler at least 
0.20])])

-- 




Re: [E-devel] [EGIT] [core/efl] master 02/02: pdf: Fix build with poppler >= 0.40

2016-06-09 Thread Davide Andreoli
2016-06-09 3:26 GMT+02:00 Jean-Philippe André :

> On 9 June 2016 at 00:32, Stefan Schmidt  wrote:
>
> > Hello.
> >
> > On 07/06/16 09:25, Jean-Philippe ANDRÉ wrote:
> > > jpeg pushed a commit to branch master.
> > >
> > >
> >
> http://git.enlightenment.org/core/efl.git/commit/?id=f3b625e5477acf451dda02d6577bcf3ef0b3b83d
> > >
> > > commit f3b625e5477acf451dda02d6577bcf3ef0b3b83d
> > > Author: Jean-Philippe Andre 
> > > Date:   Tue Jun 7 16:25:45 2016 +0900
> > >
> > >  pdf: Fix build with poppler >= 0.40
> > >
> > >  This disables PDF load if poppler >= 0.40 (current is 0.42 on
> > >  my machine).
> >
> > What build issues did you have with poppler > 0.40? I got reports on the
> > IRC channel that it builds fine for them and this commit is actually
> > creating problems as they want poppler but have a higher version.
> >
> > I wanted to bring it up here to seen why you did it before reverting.
> >
> >
> Some functions did not exist, that were called between #ifndef
> POPPLER_0_31.
> I'm not sure about the details, will try to give it another look, and find
> a proper fix.
>

Indeed this was buggy in the POPPLER_* defines:
you have poppler > 0.40 so POPPLER_0_31 was not defined and that check
in the code was for poppler < 0.31

should be fixed now



>
> --
> Jean-Philippe André
>
> --
> What NetFlow Analyzer can do for you? Monitors network bandwidth and
> traffic
> patterns at an interface-level. Reveals which users, apps, and protocols
> are
> consuming the most bandwidth. Provides multi-vendor support for NetFlow,
> J-Flow, sFlow and other flows. Make informed decisions using capacity
> planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/efl] master 01/01: poppler: enable again compilation for poppler > 0.40

2016-06-09 Thread Dave Andreoli
davemds pushed a commit to branch master.

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

commit 62632c56161477b98d4446abad0aeccd232c9b4e
Author: Dave Andreoli 
Date:   Thu Jun 9 12:45:01 2016 +0200

poppler: enable again compilation for poppler > 0.40

I'm quite sure my last commit also fix the issue reported by
jpeg. I do not have poppler > 0.40 on my system, so please
report any issue.
---
 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/configure.ac b/configure.ac
index 43ceb4a..7f0a8bd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2862,7 +2862,7 @@ have_rsvg="no"
 
 ### Check needed dependency for each generic loader
 if test "x${want_poppler}" = "xyes"; then
-   PKG_CHECK_MODULES([POPPLER], [poppler >= 0.12 poppler < 0.40],
+   PKG_CHECK_MODULES([POPPLER], [poppler >= 0.12],
  [have_poppler="yes"])
 
PKG_CHECK_EXISTS([poppler >= 0.20],

-- 




[E-devel] Fwd: Eldbus & thread safe

2016-06-09 Thread Kim Shinwoo
Sorry for short Q writting on the road using phone. :/
If it is not thread safe, do I have to use some ways such as.. ecore thread?

Anyone knows thread safety of Dbus?
-- 전달된 메일 --
보낸사람: "Kim Shinwoo" 
날짜: 2016. 6. 9. 오후 7:34
제목: Eldbus & thread safe
받는사람: "Enlightenment developer list" <
enlightenment-devel@lists.sourceforge.net>
참조:

Hello all.
>
> The eldbus is thread safe?
>
> Sincerely,
> Shinwoo Kim
>
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/efl] master 01/01: Simplify and fix poppler discovery code

2016-06-09 Thread Dave Andreoli
davemds pushed a commit to branch master.

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

commit c5f689a1542ee2699290641cb9ce7d3695a4fd9c
Author: Dave Andreoli 
Date:   Thu Jun 9 12:33:10 2016 +0200

Simplify and fix poppler discovery code

Now configure should abort in case poppler is not found (unless explicitly 
disabled)

I'm still not sure about the hard "poppler < 0.40" requirement
added by jpeg yesterday, we should fix the issue instead of
tell "we don't support it"
---
 configure.ac  | 35 ++-
 src/generic/evas/pdf/main.cpp |  4 ++--
 2 files changed, 8 insertions(+), 31 deletions(-)

diff --git a/configure.ac b/configure.ac
index b6616f3..43ceb4a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2862,37 +2862,14 @@ have_rsvg="no"
 
 ### Check needed dependency for each generic loader
 if test "x${want_poppler}" = "xyes"; then
-  PKG_CHECK_EXISTS([poppler >= 0.12 poppler < 0.20],
-  [
-   poppler_pc="poppler >= 0.12 poppler < 0.20"
-   have_poppler="yes"
-  ],
-  [have_poppler="no"])
-
-   if test "x${have_poppler}" = "xno" ; then
-  PKG_CHECK_EXISTS([poppler >= 0.20 poppler < 0.31],
- [
-  poppler_pc="poppler >= 0.20 poppler < 0.31"
-  AC_DEFINE(HAVE_POPPLER_020, 1, [Have poppler 0.20])
-  have_poppler="yes"
- ],
- [have_poppler="no"])
-   fi
+   PKG_CHECK_MODULES([POPPLER], [poppler >= 0.12 poppler < 0.40],
+ [have_poppler="yes"])
 
-   if test "x${have_poppler}" = "xno" ; then
-  PKG_CHECK_EXISTS([poppler >= 0.31 poppler < 0.40],
- [
-  poppler_pc="poppler >= 0.31"
-  AC_DEFINE(HAVE_POPPLER_031, 1, [Have poppler 0.31])
-  have_poppler="yes"
- ],
- [have_poppler="no"])
-   fi
+   PKG_CHECK_EXISTS([poppler >= 0.20],
+[AC_DEFINE(HAVE_POPPLER_020, 1, [Have poppler at least 
0.20])])
 
-   if test "x${have_poppler}" = "xyes" ; then
-  PKG_CHECK_MODULES([POPPLER], [${poppler_pc}],
- [have_poppler="yes"])
-   fi
+   PKG_CHECK_EXISTS([poppler >= 0.31],
+[AC_DEFINE(HAVE_POPPLER_031, 1, [Have poppler at least 
0.31])])
 fi
 
 if test "x${want_spectre}" = "xyes"; then
diff --git a/src/generic/evas/pdf/main.cpp b/src/generic/evas/pdf/main.cpp
index 6b1de13..d9af1d3 100644
--- a/src/generic/evas/pdf/main.cpp
+++ b/src/generic/evas/pdf/main.cpp
@@ -161,7 +161,7 @@ void poppler_load_image(int size_w EINA_UNUSED, int size_h 
EINA_UNUSED)
if (!output_dev)
  return;
 
-#if defined(HAVE_POPPLER_020) || defined(HAVE_POPPLER_031)
+#ifdef HAVE_POPPLER_020
output_dev->startDoc(pdfdoc);
 #else
output_dev->startDoc(pdfdoc->getXRef());
@@ -174,7 +174,7 @@ void poppler_load_image(int size_w EINA_UNUSED, int size_h 
EINA_UNUSED)
output_dev->setVectorAntialias(EINA_TRUE);
 #endif
 
-#if defined(HAVE_POPPLER_020) || defined(HAVE_POPPLER_031)
+#ifdef HAVE_POPPLER_020
page->displaySlice(output_dev, dpi, dpi, 
   0, false, false,
   0, 0, width, height,

-- 




[E-devel] Eldbus & thread safe

2016-06-09 Thread Kim Shinwoo
Hello all.

The eldbus is thread safe?

Sincerely,
Shinwoo Kim
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] RFC: New text filter API

2016-06-09 Thread Tom Hacohen
Hey,

As part of reworking the text API for the next version I'm tackling the 
text filter API. It needs to be easy to bind, easy to use and efficient.
I have an idea in mind, and I want to hear some feedback from people 
who've used text filtering to know if there's something I may be 
missing/can do better.

What I have in mind:

Add a text filter event with Text_Filter_Info (keeping the name short 
for this example) as the event info.

Text_Filter_Info looks as follows (names will change, just for the example):
orig: const char *
 new: Eina_Strbuf *
 rejected: bool

The event is called with orig=original text, new=null, rejected=false.
The event callbacks can then decide to reject the text chunk (by setting 
rejected = true), or modify the original text by creating a new strbuf 
and setting new to it.
If rejected is set, the chunk is rejected no matter what the strbuf 
value is.
I chose a strbuf because it's more efficient and easier to augment the 
text with a strbuf (most likely) than with a normal allocated string. 
However, a case could be made for a normal allocated string because in 
almost (all?) cases, the string will not grow.


This is what I'm going to go with unless I hear any strong objections by 
Monday.

--
Tom.

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] What is still pending for 1.18 before the freeze starts

2016-06-09 Thread Stefan Schmidt
Hello.

On 07/06/16 21:39, Jean Guyomarc'h wrote:
> Hi,
>
> ok, I'll change ECORE_COCOA_CURSOR_DEFAULT to make it a macro,
> as it makes the code less akward.
>
> After making another pass on Ecore_Cocoa.h, I have some enlightened concerns:
>
>(1) the '__ECORE_COCOA_CURSOR_LAST' field in an enum. I like it,
> because it makes
> it so convenient to iterate over the whole enum values, create an
> array that can hold
> exactly all the fields in the enum, ... BUT I wonder about ABI
> preservation if we need
> to add fields in the enum. Plus, this is exposing extra stuff, which
> value will change
> as the enum is extended. I don't know what you guys are thinking of this...

We have such sentinels in enums in other parts of the code as well. I 
quick grep showed me at least emotion, ephysics, ecore_audio, eldbus, etc

  Yes, it changes when we add new real values to the enum but it is 
clearly marked as sentinel so this should be ok.
>(2) ecore_cocoa_selection_clipboard_get() is just akward. The
> concept of it returning a
> void* which needs to be re-interpreted according to a second value
> returned by address
> is just so bad (mea culpa, mea maxima culpa). I think it has to be
> nuked. It could very
> well return a Eina_Value or an Eina_Array/Eina_Inarray of Eina_Values.

If you could eliminate the void* as return that would be nice I would say.

>(3) the ecore_cocoa_selection_clipboard_() functions should
> maybe be renamed
> ecore_cocoa_clipboard_() (dropping the "selection" inside). I'm
> not quite sure why
> I named them this way in the first place, but that seem odd: they have
> nothing to do
> with a selection, only with the clipboard.
>
>
> Unless there is a "no go", I'll start with (3), because it is easy to
> do and requires few changes.
> I will wait for some feedback for (1).
> I'll overhaul (2) with what I think is a better API, it should require
> few changes to the
> implementation, and wait for remarks.

 From the commit log I can see that 3 is done. For 1 and 2 you have been 
waiting for feedback?

regards
Stefan Schmidt

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [tools/eflete] master 03/05: editor: fix edje object update for some of param changes (like map and text fit)

2016-06-09 Thread Vitalii Vorobiov
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=f02c174bcd1eb49b2bad614f55514543ebe68522

commit f02c174bcd1eb49b2bad614f55514543ebe68522
Author: Vitalii Vorobiov 
Date:   Wed Jun 8 20:16:30 2016 +0300

editor: fix edje object update for some of param changes (like map and text 
fit)

@fix
---
 src/bin/editor/editor_macro.h |  3 +++
 src/bin/ui/tabs.c | 17 +
 2 files changed, 20 insertions(+)

diff --git a/src/bin/editor/editor_macro.h b/src/bin/editor/editor_macro.h
index 6043eac..4f5992b 100644
--- a/src/bin/editor/editor_macro.h
+++ b/src/bin/editor/editor_macro.h
@@ -53,6 +53,7 @@ editor_state_## FUNC ##_set(Evas_Object *edit_object, Change 
*change, Eina_Bool
if (!edje_edit_state_## FUNC ##_set(edit_object, part_name, state_name, 
state_val, new_val)) \
  return false; \
_editor_project_changed(); \
+CRIT_ON_FAIL(editor_save(edit_object)); \
if (!_editor_signals_blocked) evas_object_smart_callback_call(ap.win, 
SIGNAL_EDITOR_ATTRIBUTE_CHANGED, ); \
  } \
return true; \
@@ -94,6 +95,7 @@ editor_state_## FUNC ##_set(Evas_Object *edit_object, Change 
*change, Eina_Bool
if (!edje_edit_state_## FUNC ##_set(edit_object, part_name, state_name, 
state_val, new_val)) \
  return false; \
_editor_project_changed(); \
+   CRIT_ON_FAIL(editor_save(edit_object)); \
if (!_editor_signals_blocked) evas_object_smart_callback_call(ap.win, 
SIGNAL_EDITOR_ATTRIBUTE_CHANGED, ); \
  } \
return true; \
@@ -331,6 +333,7 @@ editor_state_## FUNC ##_## NUMBER ##_set(Evas_Object 
*edit_object, Change *chang
 if (!edje_edit_state_## REAL_FUNC ##_set(edit_object, part_name, 
state_name, state_val, NUMBER - 1, n4, n5, n6, n7)) \
   return false; \
 _editor_project_changed(); \
+CRIT_ON_FAIL(editor_save(edit_object)); \
 if (!_editor_signals_blocked) evas_object_smart_callback_call(ap.win, 
SIGNAL_EDITOR_ATTRIBUTE_CHANGED, ); \
  } \
return true; \
diff --git a/src/bin/ui/tabs.c b/src/bin/ui/tabs.c
index a8e67cd..c961753 100644
--- a/src/bin/ui/tabs.c
+++ b/src/bin/ui/tabs.c
@@ -321,6 +321,14 @@ _property_attribute_changed(void *data __UNUSED__,
   case ATTRIBUTE_STATE_COLOR:
   case ATTRIBUTE_STATE_OUTLINE_COLOR:
   case ATTRIBUTE_STATE_SHADOW_COLOR:
+  case ATTRIBUTE_STATE_MAP_ROTATION_CENTER:
+  case ATTRIBUTE_STATE_MAP_ROTATION_X:
+  case ATTRIBUTE_STATE_MAP_ROTATION_Y:
+  case ATTRIBUTE_STATE_MAP_ROTATION_Z:
+  case ATTRIBUTE_STATE_MAP_POINT_COLOR_1:
+  case ATTRIBUTE_STATE_MAP_POINT_COLOR_2:
+  case ATTRIBUTE_STATE_MAP_POINT_COLOR_3:
+  case ATTRIBUTE_STATE_MAP_POINT_COLOR_4:
  workspace_groupview_hard_update(tabs.current_workspace);
  break;
   case ATTRIBUTE_STATE_FILL_SMOOTH:
@@ -331,6 +339,15 @@ _property_attribute_changed(void *data __UNUSED__,
   case ATTRIBUTE_STATE_IMAGE_BORDER_RIGHT:
   case ATTRIBUTE_STATE_IMAGE_BORDER_FILL:
   case ATTRIBUTE_STATE_COLOR_CLASS:
+  case ATTRIBUTE_STATE_MAP_ON:
+  case ATTRIBUTE_STATE_MAP_PERSPECTIVE_ON:
+  case ATTRIBUTE_STATE_MAP_PERSPECTIVE:
+  case ATTRIBUTE_STATE_MAP_LIGHT:
+  case ATTRIBUTE_STATE_MAP_SMOOTH:
+  case ATTRIBUTE_STATE_MAP_ALPHA:
+  case ATTRIBUTE_STATE_MAP_BACKFACE_CULL:
+  case ATTRIBUTE_STATE_MAP_PERSPECTIVE_FOCAL:
+  case ATTRIBUTE_STATE_MAP_PERSPECTIVE_ZPLANE:
  workspace_groupview_soft_update(tabs.current_workspace);
  break;
   default:

-- 




[EGIT] [tools/eflete] master 04/05: editor: fix default values of focal (should be 1000)

2016-06-09 Thread Vitalii Vorobiov
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=1be4187d657bec8213f25cb3103e8c1087f6b389

commit 1be4187d657bec8213f25cb3103e8c1087f6b389
Author: Vitalii Vorobiov 
Date:   Tue Jun 7 16:53:46 2016 +0300

editor: fix default values of focal (should be 1000)
---
 src/bin/editor/default.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/editor/default.c b/src/bin/editor/default.c
index a867e83..f5aa06b 100644
--- a/src/bin/editor/default.c
+++ b/src/bin/editor/default.c
@@ -94,7 +94,7 @@ EDITOR_STATE_SIMPLE_RESET(fill_size_offset_y, 0)
 EDITOR_STATE_SIMPLE_RESET(container_padding_x, 0)
 EDITOR_STATE_SIMPLE_RESET(container_padding_y, 0)
 EDITOR_STATE_SIMPLE_RESET(text_size, 12)
-EDITOR_STATE_SIMPLE_RESET(map_perspective_focal, 0)
+EDITOR_STATE_SIMPLE_RESET(map_perspective_focal, 1000)
 EDITOR_STATE_SIMPLE_RESET(map_perspective_zplane, 0)
 
 EDITOR_STATE_SIMPLE_RESET(fixed_h, false)

-- 




[EGIT] [tools/eflete] master 02/05: common_macro: fix true/false defines for OSX

2016-06-09 Thread Andrii Kroitor
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=abbd40dc2b9df586ed4c925344d9a9efec9da087

commit abbd40dc2b9df586ed4c925344d9a9efec9da087
Author: Andrii Kroitor 
Date:   Wed Jun 8 18:07:36 2016 +0300

common_macro: fix true/false defines for OSX
---
 src/bin/common/common_macro.h | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/bin/common/common_macro.h b/src/bin/common/common_macro.h
index d79bb5e..458b70f 100644
--- a/src/bin/common/common_macro.h
+++ b/src/bin/common/common_macro.h
@@ -43,8 +43,11 @@ struct _Uns_List
 #define ENVENTOR_CODE_BG_COLOR 20,20,20
 #endif
 
-#define true EINA_TRUE
-#define false EINA_FALSE
+/* using enum instead of defines because of OSX */
+enum {
+   false = 0, //EINA_FALSE
+   true = 1, //EINA_TRUE
+} bool;
 #define RETURN_VOID
 
 #ifdef SHOW_TODO

-- 




[EGIT] [tools/eflete] master 01/05: tabs: fix static analyzer warning

2016-06-09 Thread Andrii Kroitor
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=179c1cfce96de836ab9777d918d65a21888e4aae

commit 179c1cfce96de836ab9777d918d65a21888e4aae
Author: Andrii Kroitor 
Date:   Wed Jun 8 14:16:22 2016 +0300

tabs: fix static analyzer warning
---
 src/bin/ui/tabs.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/ui/tabs.c b/src/bin/ui/tabs.c
index 324fcdd..a8e67cd 100644
--- a/src/bin/ui/tabs.c
+++ b/src/bin/ui/tabs.c
@@ -1228,8 +1228,8 @@ tabs_clean(void)
EINA_LIST_FOREACH(tabs.items, l, item)
  {
 if (!item->group) continue;
-_del_tab(item);
 tabs.items = eina_list_remove(tabs.items, item);
+_del_tab(item);
  }
tabs.selected = NULL;
 }

-- 




[EGIT] [tools/eflete] master 05/05: editor: implement default_is and reset functions for rotation and point color

2016-06-09 Thread Vitalii Vorobiov
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=9e7cbce089066d6f8311477e831d12e136b32e7e

commit 9e7cbce089066d6f8311477e831d12e136b32e7e
Author: Vitalii Vorobiov 
Date:   Tue Jun 7 17:23:06 2016 +0300

editor: implement default_is and reset functions for rotation and point 
color

end of property map feature for now

@feature
---
 src/bin/editor/default.c   | 73 ++
 src/bin/editor/default.h   |  8 +
 src/bin/editor/editor_states.c |  7 ++--
 3 files changed, 83 insertions(+), 5 deletions(-)

diff --git a/src/bin/editor/default.c b/src/bin/editor/default.c
index f5aa06b..9e4fe4c 100644
--- a/src/bin/editor/default.c
+++ b/src/bin/editor/default.c
@@ -67,6 +67,40 @@ EDITOR_STATE_DOUBLE_RESET(text_align_x, 0.5)
 EDITOR_STATE_DOUBLE_RESET(text_align_y, 0.5)
 EDITOR_STATE_DOUBLE_RESET(text_elipsis, 0.0)
 
+#define EDITOR_THREE_DOUBLE_DEFAULT_CHECK(FUNC, PROTO_ARGS, ARGS, DEF_VAL1, 
DEF_VAL2, DEF_VAL3) \
+Eina_Bool \
+editor_##FUNC##_default_is(Evas_Object *edit_object, PROTO_ARGS) \
+{ \
+   assert(edit_object != NULL); \
+   Eina_Bool res = true; \
+   double val1, val2, val3; \
+   edje_edit_##FUNC##_get(edit_object, ARGS, , , ); \
+   res = res & !(fabs(val1 - DEF_VAL1) > DBL_EPSILON); \
+   res = res & !(fabs(val2 - DEF_VAL2) > DBL_EPSILON); \
+   res = res & !(fabs(val3 - DEF_VAL3) > DBL_EPSILON); \
+   return res; \
+}
+#define EDITOR_THREE_RESET(FUNC, PROTO_ARGS, ARGS, RESET_VAL1, RESET_VAL2, 
RESET_VAL3) \
+Eina_Bool \
+editor_##FUNC##_reset(Evas_Object *edit_object, Change *change, Eina_Bool 
apply, PROTO_ARGS) \
+{ \
+   assert(edit_object != NULL); \
+   Eina_Bool res = true; \
+   if (editor_##FUNC##_default_is(edit_object, ARGS)) return true; \
+   res = res & editor_##FUNC##_x_set(edit_object, change, false, apply, ARGS, 
RESET_VAL1); \
+   res = res & editor_##FUNC##_y_set(edit_object, change, false, apply, ARGS, 
RESET_VAL2); \
+   res = res & editor_##FUNC##_z_set(edit_object, change, false, apply, ARGS, 
RESET_VAL3); \
+   if (res) return true; \
+   CRIT("reset failed"); \
+   abort(); \
+}
+
+#define EDITOR_STATE_THREE_DOUBLE_RESET(FUNC, DEF_VAL1, DEF_VAL2, DEF_VAL3) \
+EDITOR_THREE_DOUBLE_DEFAULT_CHECK(state_##FUNC, EDITOR_STATE_ARGS_PROTO, 
EDITOR_STATE_ARGS, DEF_VAL1, DEF_VAL2, DEF_VAL3) \
+EDITOR_THREE_RESET(state_##FUNC, EDITOR_STATE_ARGS_PROTO, EDITOR_STATE_ARGS, 
DEF_VAL1, DEF_VAL2, DEF_VAL3)
+
+EDITOR_STATE_THREE_DOUBLE_RESET(map_rotation, 0.0, 0.0, 0.0)
+
 #define EDITOR_SIMPLE_DEFAULT_CHECK(FUNC, PROTO_ARGS, ARGS, DEF_VAL) \
 Eina_Bool \
 editor_##FUNC##_default_is(Evas_Object *edit_object, PROTO_ARGS) \
@@ -204,6 +238,45 @@ EDITOR_STATE_INT_INT_INT_INT_RESET(color, 255, 255, 255, 
255)
 EDITOR_STATE_INT_INT_INT_INT_RESET(outline_color, 0, 0, 0, 255)
 EDITOR_STATE_INT_INT_INT_INT_RESET(shadow_color, 0, 0, 0, 128)
 
+#define EDITOR_INT_INT_INT_INT_INT_DEFAULT_CHECK(FUNC, PROTO_ARGS, ARGS, 
DEF_VAL, DEF_VAL_2, DEF_VAL_3, DEF_VAL_4) \
+Eina_Bool \
+editor_##FUNC##_default_is(Evas_Object *edit_object, PROTO_ARGS) \
+{ \
+   assert(edit_object != NULL); \
+   int val, val2, val3, val4; \
+   Eina_Bool res = true; \
+   edje_edit_##FUNC##_get(edit_object, ARGS, 0, , , , ); \
+   res = res & ((val == DEF_VAL) && (val2 == DEF_VAL_2) && (val3 == DEF_VAL_3) 
&& (val4 == DEF_VAL_4)); \
+   edje_edit_##FUNC##_get(edit_object, ARGS, 1, , , , ); \
+   res = res & ((val == DEF_VAL) && (val2 == DEF_VAL_2) && (val3 == DEF_VAL_3) 
&& (val4 == DEF_VAL_4)); \
+   edje_edit_##FUNC##_get(edit_object, ARGS, 2, , , , ); \
+   res = res & ((val == DEF_VAL) && (val2 == DEF_VAL_2) && (val3 == DEF_VAL_3) 
&& (val4 == DEF_VAL_4)); \
+   edje_edit_##FUNC##_get(edit_object, ARGS, 3, , , , ); \
+   res = res & ((val == DEF_VAL) && (val2 == DEF_VAL_2) && (val3 == DEF_VAL_3) 
&& (val4 == DEF_VAL_4)); \
+   return res; \
+}
+#define EDITOR_INT_INT_INT_INT_INT_RESET(FUNC, PROTO_ARGS, ARGS, RESET_VAL, 
RESET_VAL_2, RESET_VAL_3, RESET_VAL_4) \
+Eina_Bool \
+editor_##FUNC##_reset(Evas_Object *edit_object, Change *change, Eina_Bool 
apply, PROTO_ARGS) \
+{ \
+   assert(edit_object != NULL); \
+   if (editor_##FUNC##_default_is(edit_object, ARGS)) return true; \
+   Eina_Bool res = true; \
+   res = res & editor_##FUNC##_1_set(edit_object, change, false, apply, ARGS, 
RESET_VAL, RESET_VAL_2, RESET_VAL_3, RESET_VAL_4); \
+   res = res & editor_##FUNC##_2_set(edit_object, change, false, apply, ARGS, 
RESET_VAL, RESET_VAL_2, RESET_VAL_3, RESET_VAL_4); \
+   res = res & editor_##FUNC##_3_set(edit_object, change, false, apply, ARGS, 
RESET_VAL, RESET_VAL_2, RESET_VAL_3, RESET_VAL_4); \
+   res = res & editor_##FUNC##_4_set(edit_object, change, false, apply, ARGS, 
RESET_VAL, RESET_VAL_2, RESET_VAL_3, RESET_VAL_4); \
+   if(res) return true; \
+   CRIT("reset failed"); \
+   abort(); \
+}
+
+#define EDITOR_STATE_INT_INT_INT_INT_INT_RESET(FUNC, DEF_VAL, DEF_VAL_2, 
DEF_VAL_3, 

[EGIT] [core/efl] master 01/08: Efl: Introduce combine_min size hint

2016-06-09 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit b40b4042f0ddd8564706196a9c6aef54803525d4
Author: Jean-Philippe Andre 
Date:   Wed Jun 8 20:24:59 2016 +0900

Efl: Introduce combine_min size hint

It combines the content min size and the requested min size
by taking the MAX value. This will help support request size
without major code changes.
---
 src/lib/efl/interfaces/efl_gfx_size_hint.eo | 16 
 src/lib/evas/canvas/evas_object.eo  |  1 +
 src/lib/evas/canvas/evas_object_main.c  | 13 +
 3 files changed, 30 insertions(+)

diff --git a/src/lib/efl/interfaces/efl_gfx_size_hint.eo 
b/src/lib/efl/interfaces/efl_gfx_size_hint.eo
index 3438abe..ce89906 100644
--- a/src/lib/efl/interfaces/efl_gfx_size_hint.eo
+++ b/src/lib/efl/interfaces/efl_gfx_size_hint.eo
@@ -121,6 +121,22 @@ interface Efl.Gfx.Size.Hint
 h: int; [[Integer to use as the minimum height hint.]]
  }
   }
+  @property hint_combined_min {
+ [[Read-only minimum size combining both @.hint_content_min and
+   @.hint_request size hints.
+
+   @.hint_content_min is intended for mostly internal usage
+   and widget developers, and @.hint_request is intended to be
+   set from application side. @.hint_combined_min combines both values
+   by taking their repective maximum (in both width and height), and
+   is used internally to get an object's minimum size.
+ ]]
+ get {}
+ values {
+w: int; [[Integer to use as the minimum width hint.]]
+h: int; [[Integer to use as the minimum height hint.]]
+ }
+  }
   @property hint_margin {
  [[Hints for an object's margin or padding space.
 
diff --git a/src/lib/evas/canvas/evas_object.eo 
b/src/lib/evas/canvas/evas_object.eo
index 02aadc5..a4e342c 100644
--- a/src/lib/evas/canvas/evas_object.eo
+++ b/src/lib/evas/canvas/evas_object.eo
@@ -902,6 +902,7 @@ abstract Evas.Object (Eo.Base, Evas.Common_Interface, 
Efl.Gfx, Efl.Gfx.Stack,
   Efl.Gfx.Size.Hint.hint_aspect.get;
   Efl.Gfx.Size.Hint.hint_align.set;
   Efl.Gfx.Size.Hint.hint_align.get;
+  Efl.Gfx.Size.Hint.hint_combined_min.get;
   Efl.Gfx.Size.Hint.hint_content_min.set;
   Efl.Gfx.Size.Hint.hint_content_min.get;
   Efl.Gfx.Size.Hint.hint_max.set;
diff --git a/src/lib/evas/canvas/evas_object_main.c 
b/src/lib/evas/canvas/evas_object_main.c
index fbb0f81..3bb785c 100644
--- a/src/lib/evas/canvas/evas_object_main.c
+++ b/src/lib/evas/canvas/evas_object_main.c
@@ -1132,6 +1132,19 @@ _evas_object_efl_gfx_size_hint_hint_content_min_set(Eo 
*eo_obj, Evas_Object_Prot
 }
 
 EOLIAN static void
+_evas_object_efl_gfx_size_hint_hint_combined_min_get(Eo *eo_obj EINA_UNUSED, 
Evas_Object_Protected_Data *obj, Evas_Coord *w, Evas_Coord *h)
+{
+   if ((!obj->size_hints) || obj->delete_me)
+ {
+if (w) *w = 0;
+if (h) *h = 0;
+return;
+ }
+   if (w) *w = MAX(obj->size_hints->min.w, obj->size_hints->request.w);
+   if (h) *h = MAX(obj->size_hints->min.h, obj->size_hints->request.h);
+}
+
+EOLIAN static void
 _evas_object_efl_gfx_size_hint_hint_max_get(Eo *eo_obj EINA_UNUSED, 
Evas_Object_Protected_Data *obj, Evas_Coord *w, Evas_Coord *h)
 {
if ((!obj->size_hints) || obj->delete_me)

-- 




[EGIT] [core/efl] master 06/08: Efl: Introduce app-side min size hint

2016-06-09 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 44f445fe76b24f6f1f62669693ba4723d37d9390
Author: Jean-Philippe Andre 
Date:   Thu Jun 9 16:24:13 2016 +0900

Efl: Introduce app-side min size hint

Now called "hint_min", not sure if it's the proper name for it.
At first I wanted to reuse the request size hint instead of
adding a new hint, but doing that would break Terminology
or any app that already used size_hint_request.

One problem with hint_request is that the legacy function
already exists but its support is practically not implemented.

@feature
---
 src/lib/efl/interfaces/efl_gfx_size_hint.eo | 30 +++-
 src/lib/evas/canvas/evas_object.eo  |  2 ++
 src/lib/evas/canvas/evas_object_main.c  | 31 +++--
 src/lib/evas/include/evas_private.h |  2 +-
 4 files changed, 57 insertions(+), 8 deletions(-)

diff --git a/src/lib/efl/interfaces/efl_gfx_size_hint.eo 
b/src/lib/efl/interfaces/efl_gfx_size_hint.eo
index 0be8d96..8c27394 100644
--- a/src/lib/efl/interfaces/efl_gfx_size_hint.eo
+++ b/src/lib/efl/interfaces/efl_gfx_size_hint.eo
@@ -84,6 +84,26 @@ interface Efl.Gfx.Size.Hint
 h: int; [[Integer to use as the maximum height hint.]]
  }
   }
+  @property hint_min {
+ [[Hints on the object's minimum size.
+
+   This is not a size enforcement in any way, it's just a hint
+   that should be used whenever appropriate. The object container
+   is in charge of fetching this property and placing the object
+   accordingly.
+
+   Value 0 will be treated as unset hint components, when queried
+   by managers.
+
+   Note: This property is meant to be set by applications and not by
+   EFL itself. Use this to request a specific size (treated as minimum
+   size).
+ ]]
+ values {
+w: int; [[Integer to use as the maximum width hint.]]
+h: int; [[Integer to use as the maximum height hint.]]
+ }
+  }
   @property hint_request {
  [[Hints for the object's optimum size.
 
@@ -94,8 +114,8 @@ interface Efl.Gfx.Size.Hint
queried by managers.
 
Note: This property is meant to be set by applications and not by
-   EFL itself. Use this to request a specific size (treated as minimum
-   size).
+   EFL itself. Very few containers actually implement support for
+   this requested size, see @.hint_min instead.
  ]]
  values {
 w: int; [[Integer to use as the preferred width hint.]]
@@ -114,7 +134,7 @@ interface Efl.Gfx.Size.Hint
Note: This property is internal and meant for widget developers to
define the absolute minimum size of the object. EFL itself sets
this size internally, so any change to it from an application
-   might be ignored. Use @.hint_request instead.
+   might be ignored. Use @.hint_min instead.
  ]]
  values {
 w: int; [[Integer to use as the minimum width hint.]]
@@ -123,10 +143,10 @@ interface Efl.Gfx.Size.Hint
   }
   @property hint_combined_min {
  [[Read-only minimum size combining both @.hint_restricted_min and
-   @.hint_request size hints.
+   @.hint_min size hints.
 
@.hint_restricted_min is intended for mostly internal usage
-   and widget developers, and @.hint_request is intended to be
+   and widget developers, and @.hint_min is intended to be
set from application side. @.hint_combined_min combines both values
by taking their repective maximum (in both width and height), and
is used internally to get an object's minimum size.
diff --git a/src/lib/evas/canvas/evas_object.eo 
b/src/lib/evas/canvas/evas_object.eo
index 0c53fd3..97321ab 100644
--- a/src/lib/evas/canvas/evas_object.eo
+++ b/src/lib/evas/canvas/evas_object.eo
@@ -907,6 +907,8 @@ abstract Evas.Object (Eo.Base, Evas.Common_Interface, 
Efl.Gfx, Efl.Gfx.Stack,
   Efl.Gfx.Size.Hint.hint_combined_min.get;
   Efl.Gfx.Size.Hint.hint_restricted_min.set;
   Efl.Gfx.Size.Hint.hint_restricted_min.get;
+  Efl.Gfx.Size.Hint.hint_min.set;
+  Efl.Gfx.Size.Hint.hint_min.get;
   Efl.Gfx.Size.Hint.hint_max.set;
   Efl.Gfx.Size.Hint.hint_max.get;
   Efl.Gfx.Size.Hint.hint_margin.set;
diff --git a/src/lib/evas/canvas/evas_object_main.c 
b/src/lib/evas/canvas/evas_object_main.c
index da01354..7388293 100644
--- a/src/lib/evas/canvas/evas_object_main.c
+++ b/src/lib/evas/canvas/evas_object_main.c
@@ -1154,8 +1154,8 @@ _evas_object_efl_gfx_size_hint_hint_combined_min_get(Eo 
*eo_obj EINA_UNUSED, Eva
 if (h) *h = 0;
 return;
  }
-   if (w) *w = 

[EGIT] [core/efl] master 07/08: Evas/Edje/Elm: Use combined_min instead of min everywhere

2016-06-09 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 37625fca91c41d549ae8eca5b1609717599af5d4
Author: Jean-Philippe Andre 
Date:   Thu Jun 9 16:29:40 2016 +0900

Evas/Edje/Elm: Use combined_min instead of min everywhere

This allows apps to set the objects min size with hint_min,
while letting the rest of EFL define the minimum size with
rstricted_min.

I don't like the property names much...
---
 src/bin/elementary/test_ui_box.c  |  2 +-
 src/bin/elementary/test_ui_grid.c |  2 +-
 src/examples/evas/evas-hints.c|  2 +-
 src/lib/ecore_evas/ecore_evas_util.c  |  2 +-
 src/lib/edje/edje_box_layout.c|  2 +-
 src/lib/edje/edje_lua.c   |  2 +-
 src/lib/edje/edje_util.c  |  2 +-
 src/lib/elementary/efl_ui_box.c   |  2 +-
 src/lib/elementary/efl_ui_flip.c  |  4 ++--
 src/lib/elementary/efl_ui_grid.c  |  2 +-
 src/lib/elementary/efl_ui_image.c |  6 +++---
 src/lib/elementary/efl_ui_win.c   |  6 +++---
 src/lib/elementary/elc_ctxpopup.c |  2 +-
 src/lib/elementary/elc_hoversel.c |  2 +-
 src/lib/elementary/elc_multibuttonentry.c | 18 +-
 src/lib/elementary/elc_popup.c|  4 ++--
 src/lib/elementary/elm_box.c  |  2 +-
 src/lib/elementary/elm_colorselector.c|  4 ++--
 src/lib/elementary/elm_diskselector.c |  2 +-
 src/lib/elementary/elm_entry.c|  8 
 src/lib/elementary/elm_factory.c  |  2 +-
 src/lib/elementary/elm_flipselector.c |  2 +-
 src/lib/elementary/elm_frame.c|  2 +-
 src/lib/elementary/elm_genlist.c  |  4 ++--
 src/lib/elementary/elm_hover.c|  2 +-
 src/lib/elementary/elm_label.c|  2 +-
 src/lib/elementary/elm_list.c |  6 +++---
 src/lib/elementary/elm_map.c  |  6 +++---
 src/lib/elementary/elm_mapbuf.c   |  2 +-
 src/lib/elementary/elm_scroller.c |  2 +-
 src/lib/elementary/elm_segment_control.c  |  2 +-
 src/lib/elementary/elm_table.c|  2 +-
 src/lib/elementary/elm_toolbar.c  |  4 ++--
 src/lib/elementary/els_box.c  |  8 
 src/lib/elementary/els_tooltip.c  |  2 +-
 src/lib/evas/canvas/evas_object_box.c | 16 
 src/lib/evas/canvas/evas_object_table.c   |  6 +++---
 37 files changed, 73 insertions(+), 73 deletions(-)

diff --git a/src/bin/elementary/test_ui_box.c b/src/bin/elementary/test_ui_box.c
index 3ac8b47..51d10a3 100644
--- a/src/bin/elementary/test_ui_box.c
+++ b/src/bin/elementary/test_ui_box.c
@@ -174,7 +174,7 @@ _custom_engine_layout_do(Eo *obj EINA_UNUSED, void *pd 
EINA_UNUSED,
EINA_ITERATOR_FOREACH(it, sobj)
  {
 int x, y, h, w, mw, mh;
-evas_object_size_hint_min_get(sobj, , );
+efl_gfx_size_hint_combined_min_get(sobj, , );
 x = (pw / count) * i;
 y = (ph / count) * i;
 w = mw;
diff --git a/src/bin/elementary/test_ui_grid.c 
b/src/bin/elementary/test_ui_grid.c
index ab5399d..6e9cd46 100644
--- a/src/bin/elementary/test_ui_grid.c
+++ b/src/bin/elementary/test_ui_grid.c
@@ -173,7 +173,7 @@ _custom_engine_layout_do(Eo *obj EINA_UNUSED, void *pd 
EINA_UNUSED,
   {
  int x, y, mw, mh;
 
- evas_object_size_hint_min_get(item, , );
+ efl_gfx_size_hint_combined_min_get(item, , );
  x = gx + c * gw / cols + (cs * gw / cols - mw) / 2;
  y = gy + r * gh / rows + (rs * gh / rows - mh) / 2;
  efl_gfx_size_set(item, mw, mh);
diff --git a/src/examples/evas/evas-hints.c b/src/examples/evas/evas-hints.c
index 23c6f3d..8bc7455 100644
--- a/src/examples/evas/evas-hints.c
+++ b/src/examples/evas/evas-hints.c
@@ -116,7 +116,7 @@ _print_rect_stats(Evas_Object *rect)
evas_object_size_hint_align_get(rect, , );
fprintf(stdout, "\talign hints: h(%f), v(%f)\n", x, y);
 
-   evas_object_size_hint_min_get(rect, , );
+   efl_gfx_size_hint_combined_min_get(rect, , );
fprintf(stdout, "\tmin. size hints: h(%d), v(%d)\n", w, h);
 
evas_object_size_hint_max_get(rect, , );
diff --git a/src/lib/ecore_evas/ecore_evas_util.c 
b/src/lib/ecore_evas/ecore_evas_util.c
index b027497..1657c30 100644
--- a/src/lib/ecore_evas/ecore_evas_util.c
+++ b/src/lib/ecore_evas/ecore_evas_util.c
@@ -132,7 +132,7 @@ _ecore_evas_obj_callback_changed_size_hints(void *data, 
Evas *e EINA_UNUSED, Eva
Ecore_Evas *ee = data;
Evas_Coord w, h;
 
-   evas_object_size_hint_min_get(obj, , );
+   efl_gfx_size_hint_combined_min_get(obj, , );
ecore_evas_size_min_set(ee, w, h);
 
evas_object_size_hint_max_get(obj, , );
diff --git a/src/lib/edje/edje_box_layout.c b/src/lib/edje/edje_box_layout.c
index 2cffd6f..bca4fb3 100644
--- a/src/lib/edje/edje_box_layout.c
+++ b/src/lib/edje/edje_box_layout.c
@@ -212,7 

[EGIT] [core/efl] master 08/08: Tests: Convert Ui.Box and Ui.Grid to Efl.Gfx APIs

2016-06-09 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 8ce859f484a1669bb12621e84ebc9c67edba6769
Author: Jean-Philippe Andre 
Date:   Thu Jun 9 16:42:09 2016 +0900

Tests: Convert Ui.Box and Ui.Grid to Efl.Gfx APIs

Let's remove all evas_object_ stuff from there. :)

This also changes hint_request into hint_min.
---
 src/bin/elementary/test_ui_box.c  | 146 -
 src/bin/elementary/test_ui_grid.c | 218 +++---
 2 files changed, 183 insertions(+), 181 deletions(-)

diff --git a/src/bin/elementary/test_ui_box.c b/src/bin/elementary/test_ui_box.c
index 51d10a3..bee7433 100644
--- a/src/bin/elementary/test_ui_box.c
+++ b/src/bin/elementary/test_ui_box.c
@@ -26,36 +26,36 @@ weights_cb(void *data, const Eo_Event *event)
switch (mode)
  {
   case NONE:
-evas_object_size_hint_align_set(data, 0.5, 0.5);
+efl_gfx_size_hint_align_set(data, 0.5, 0.5);
 for (int i = 0; i < CNT; i++)
-  evas_object_size_hint_weight_set(objects[i], 0, 0);
+  efl_gfx_size_hint_weight_set(objects[i], 0, 0);
 break;
   case NONE_BUT_FILL:
-evas_object_size_hint_align_set(data, -1, -1);
+efl_gfx_size_hint_align_set(data, -1, -1);
 for (int i = 0; i < CNT; i++)
-  evas_object_size_hint_weight_set(objects[i], 0, 0);
+  efl_gfx_size_hint_weight_set(objects[i], 0, 0);
 break;
   case EQUAL:
-evas_object_size_hint_align_set(data, 0.5, 0.5);
+efl_gfx_size_hint_align_set(data, 0.5, 0.5);
 for (int i = 0; i < CNT; i++)
-  evas_object_size_hint_weight_set(objects[i], 1, 1);
+  efl_gfx_size_hint_weight_set(objects[i], 1, 1);
 break;
   case ONE:
-evas_object_size_hint_align_set(data, 0.5, 0.5);
+efl_gfx_size_hint_align_set(data, 0.5, 0.5);
 for (int i = 0; i < 6; i++)
-  evas_object_size_hint_weight_set(objects[i], 0, 0);
-evas_object_size_hint_weight_set(objects[6], 1, 1);
+  efl_gfx_size_hint_weight_set(objects[i], 0, 0);
+efl_gfx_size_hint_weight_set(objects[6], 1, 1);
 for (int i = 7; i < CNT; i++)
-  evas_object_size_hint_weight_set(objects[i], 0, 0);
+  efl_gfx_size_hint_weight_set(objects[i], 0, 0);
 break;
   case TWO:
-evas_object_size_hint_align_set(data, 0.5, 0.5);
+efl_gfx_size_hint_align_set(data, 0.5, 0.5);
 for (int i = 0; i < 5; i++)
-  evas_object_size_hint_weight_set(objects[i], 0, 0);
-evas_object_size_hint_weight_set(objects[5], 1, 1);
-evas_object_size_hint_weight_set(objects[6], 1, 1);
+  efl_gfx_size_hint_weight_set(objects[i], 0, 0);
+efl_gfx_size_hint_weight_set(objects[5], 1, 1);
+efl_gfx_size_hint_weight_set(objects[6], 1, 1);
 for (int i = 7; i < CNT; i++)
-  evas_object_size_hint_weight_set(objects[i], 0, 0);
+  efl_gfx_size_hint_weight_set(objects[i], 0, 0);
 break;
  }
 
@@ -63,10 +63,10 @@ weights_cb(void *data, const Eo_Event *event)
 }
 
 static Eina_Bool
-request_slider_cb(void *data EINA_UNUSED, const Eo_Event *event)
+user_min_slider_cb(void *data EINA_UNUSED, const Eo_Event *event)
 {
int val = elm_slider_value_get(event->object);
-   evas_object_size_hint_request_set(objects[3], val, val);
+   efl_gfx_size_hint_min_set(objects[3], val, val);
return EO_CALLBACK_CONTINUE;
 }
 
@@ -82,7 +82,7 @@ static Eina_Bool
 margin_slider_cb(void *data, const Eo_Event *event)
 {
int val = elm_slider_value_get(event->object);
-   evas_object_size_hint_padding_set(data, val, val, val, val);
+   efl_gfx_size_hint_margin_set(data, val, val, val, val);
return EO_CALLBACK_CONTINUE;
 }
 
@@ -170,7 +170,7 @@ _custom_engine_layout_do(Eo *obj EINA_UNUSED, void *pd 
EINA_UNUSED,
// Note: This is a TERRIBLE layout. Just an example of the API, not showing
// how to write a proper layout function.
 
-   evas_object_geometry_get(pack, , , , );
+   efl_gfx_geometry_get(pack, , , , );
EINA_ITERATOR_FOREACH(it, sobj)
  {
 int x, y, h, w, mw, mh;
@@ -179,7 +179,7 @@ _custom_engine_layout_do(Eo *obj EINA_UNUSED, void *pd 
EINA_UNUSED,
 y = (ph / count) * i;
 w = mw;
 h = mh;
-evas_object_geometry_set(sobj, x + px, y + py, w, h);
+efl_gfx_geometry_set(sobj, x + px, y + py, w, h);
 i++;
  }
eina_iterator_free(it);
@@ -218,8 +218,8 @@ test_ui_box(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_in
vbox = eo_add(EFL_UI_BOX_CLASS, win);
efl_pack_padding_set(vbox, 10, 10, EINA_TRUE);
efl_orientation_set(vbox, EFL_ORIENT_DOWN);
-   evas_object_size_hint_weight_set(vbox, 1, 1);
-   evas_object_size_hint_padding_set(vbox, 5, 5, 5, 5);
+   efl_gfx_size_hint_weight_set(vbox, 1, 1);
+   

[EGIT] [core/efl] master 04/08: Efl: Add geometry property (combines position and size)

2016-06-09 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit e36a300d36c918cfd090328170ff8f3704f85204
Author: Jean-Philippe Andre 
Date:   Thu Jun 9 15:05:36 2016 +0900

Efl: Add geometry property (combines position and size)

It's a helper function that can also in the future be
used to implement atomic move+resize operations.
---
 src/lib/efl/interfaces/efl_gfx.eo  | 25 +++--
 src/lib/evas/canvas/efl_vg.eo  |  1 +
 src/lib/evas/canvas/evas_object.eo |  6 --
 src/lib/evas/canvas/evas_object_main.c | 22 ++
 src/lib/evas/canvas/evas_vg_node.c |  8 
 5 files changed, 54 insertions(+), 8 deletions(-)

diff --git a/src/lib/efl/interfaces/efl_gfx.eo 
b/src/lib/efl/interfaces/efl_gfx.eo
index c145c83..44dcb1d 100644
--- a/src/lib/efl/interfaces/efl_gfx.eo
+++ b/src/lib/efl/interfaces/efl_gfx.eo
@@ -4,8 +4,13 @@ interface Efl.Gfx {
eo_prefix: efl_gfx;
methods {
   @property position {
+ [[The 2D position of a canvas object.
+
+   The position is absolute, in pixels, relative to the top-left corner
+   of the window, within its border decorations (application space).
+ ]]
  set {
-[[Move the given Evas object to the given location inside its
+[[Moves the given Evas object to the given location inside its
   canvas' viewport.
 ]]
  }
@@ -18,8 +23,15 @@ interface Efl.Gfx {
  }
   }
   @property size {
+ [[The 2D size of a canvas object.]]
  set {
-[[Changes the size of the given Evas object.]]
+[[Changes the size of the given object.
+
+  Note that setting the actual size of an object might be the job
+  of its container, so this function might have no effect.
+  Look at $Efl.Gfx.Size.Hint instead, when manipulating
+  widgets.
+]]
  }
  get {
 [[Retrieves the (rectangular) size of the given Evas object.]]
@@ -29,6 +41,15 @@ interface Efl.Gfx {
 h: int;
  }
   }
+  @property geometry {
+ [[Rectangular geometry that combines both position and size.]]
+ values {
+x: int;
+y: int;
+w: int;
+h: int;
+ }
+  }
   @property color {
  set {
 [[Sets the general/main color of the given Evas object to the given
diff --git a/src/lib/evas/canvas/efl_vg.eo b/src/lib/evas/canvas/efl_vg.eo
index 122c0a7..647f86a 100644
--- a/src/lib/evas/canvas/efl_vg.eo
+++ b/src/lib/evas/canvas/efl_vg.eo
@@ -118,6 +118,7 @@ abstract Efl.VG (Eo.Base, Efl.Gfx, Efl.Gfx.Stack)
   Efl.Gfx.size.get;
   Efl.Gfx.position.set;
   Efl.Gfx.position.get;
+  Efl.Gfx.geometry.get;
   Efl.Gfx.Stack.below.get;
   Efl.Gfx.Stack.above.get;
   Efl.Gfx.Stack.stack_below;
diff --git a/src/lib/evas/canvas/evas_object.eo 
b/src/lib/evas/canvas/evas_object.eo
index 2acf42e..0c53fd3 100644
--- a/src/lib/evas/canvas/evas_object.eo
+++ b/src/lib/evas/canvas/evas_object.eo
@@ -882,12 +882,14 @@ abstract Evas.Object (Eo.Base, Evas.Common_Interface, 
Efl.Gfx, Efl.Gfx.Stack,
   Evas.Common_Interface.evas.get;
   Efl.Gfx.visible.set;
   Efl.Gfx.visible.get;
-  Efl.Gfx.position.set;
-  Efl.Gfx.position.get;
   Efl.Gfx.color.set;
   Efl.Gfx.color.get;
   Efl.Gfx.color_part.set;
   Efl.Gfx.color_part.get;
+  Efl.Gfx.geometry.set;
+  Efl.Gfx.geometry.get;
+  Efl.Gfx.position.set;
+  Efl.Gfx.position.get;
   Efl.Gfx.size.set;
   Efl.Gfx.size.get;
   Efl.Gfx.Stack.layer.set;
diff --git a/src/lib/evas/canvas/evas_object_main.c 
b/src/lib/evas/canvas/evas_object_main.c
index 74073a8..da01354 100644
--- a/src/lib/evas/canvas/evas_object_main.c
+++ b/src/lib/evas/canvas/evas_object_main.c
@@ -833,14 +833,21 @@ end:
eo_destructor(eo_super(eo_obj, MY_CLASS));
 }
 
+EOLIAN static void
+_evas_object_efl_gfx_geometry_set(Eo *obj, Evas_Object_Protected_Data *pd 
EINA_UNUSED,
+  int x, int y, int w, int h)
+{
+   efl_gfx_position_set(obj, x, y);
+   efl_gfx_size_set(obj, w, h);
+}
+
 EAPI void
 evas_object_geometry_set(Evas_Object *eo_obj, Evas_Coord x, Evas_Coord y, 
Evas_Coord w, Evas_Coord h)
 {
MAGIC_CHECK(eo_obj, Evas_Object, MAGIC_OBJ);
return;
MAGIC_CHECK_END();
-   efl_gfx_position_set(eo_obj, x, y);
-   efl_gfx_size_set(eo_obj, w, h);
+   efl_gfx_geometry_set(eo_obj, x, y, w, h);
 }
 
 EAPI void
@@ -1020,6 +1027,14 @@ _evas_object_efl_gfx_size_set(Eo *eo_obj, 
Evas_Object_Protected_Data *obj,
evas_object_inform_call_resize(eo_obj);
 }
 
+EOLIAN void
+_evas_object_efl_gfx_geometry_get(Eo *obj, Evas_Object_Protected_Data *pd 
EINA_UNUSED,
+  int *x, int 

[EGIT] [core/efl] master 02/08: Efl.Ui.Box: Simplify layout code with combined_min

2016-06-09 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 748f17b84039ba779ce8a86c710ddb9281f9ac1b
Author: Jean-Philippe Andre 
Date:   Wed Jun 8 20:40:50 2016 +0900

Efl.Ui.Box: Simplify layout code with combined_min

Simplify the code and fix an issue.
---
 src/lib/elementary/efl_ui_box_layout.c | 33 +++--
 1 file changed, 15 insertions(+), 18 deletions(-)

diff --git a/src/lib/elementary/efl_ui_box_layout.c 
b/src/lib/elementary/efl_ui_box_layout.c
index c526f43..9ad89c3 100644
--- a/src/lib/elementary/efl_ui_box_layout.c
+++ b/src/lib/elementary/efl_ui_box_layout.c
@@ -1,3 +1,5 @@
+#define EFL_GFX_SIZE_HINT_PROTECTED
+
 #include "efl_ui_box_private.h"
 
 // FIXME: Aspect support is not implemented
@@ -10,8 +12,6 @@ struct _Item_Calc
Evas_Object *obj;
double weight[2];
double align[2];
-   int min[2];
-   int req[2];
int max[2];
int pad[4];
int want[2];
@@ -36,7 +36,7 @@ _efl_ui_box_custom_layout(Efl_Ui_Box *ui_box, 
Evas_Object_Box_Data *bd)
Eina_Bool box_fill[2] = { EINA_FALSE, EINA_FALSE };
 
evas_object_geometry_get(ui_box, , , , );
-   evas_object_size_hint_padding_get(ui_box, , , , );
+   efl_gfx_size_hint_margin_get(ui_box, , , , );
scale = evas_object_scale_get(ui_box);
 
// Box align: used if "item has max size and fill" or "no item has a weight"
@@ -72,33 +72,30 @@ _efl_ui_box_custom_layout(Efl_Ui_Box *ui_box, 
Evas_Object_Box_Data *bd)
 item = [id];
 o = item->obj = opt->obj;
 
-evas_object_size_hint_weight_get(o, >weight[0], 
>weight[1]);
+efl_gfx_size_hint_weight_get(o, >weight[0], >weight[1]);
+efl_gfx_size_hint_align_get(o, >align[0], >align[1]);
+efl_gfx_size_hint_margin_get(o, >pad[0], >pad[1], 
>pad[2], >pad[3]);
+efl_gfx_size_hint_max_get(o, >max[0], >max[1]);
+efl_gfx_size_hint_combined_min_get(o, >want[0], >want[1]);
+
 if (item->weight[0] < 0) item->weight[0] = 0;
 if (item->weight[1] < 0) item->weight[1] = 0;
 
-evas_object_size_hint_align_get(o, >align[0], >align[1]);
 if (item->align[0] < 0) item->align[0] = -1;
 if (item->align[1] < 0) item->align[1] = -1;
 if (item->align[0] > 1) item->align[0] = 1;
 if (item->align[1] > 1) item->align[1] = 1;
 
-evas_object_size_hint_padding_get(o, >pad[0], >pad[1], 
>pad[2], >pad[3]);
-evas_object_size_hint_min_get(o, >min[0], >min[1]);
-if (item->min[0] < 0) item->min[0] = 0;
-if (item->min[1] < 0) item->min[1] = 0;
+if (item->want[0] < 0) item->want[0] = 0;
+if (item->want[1] < 0) item->want[1] = 0;
 
-evas_object_size_hint_max_get(o, >max[0], >max[1]);
 if (item->max[0] <= 0) item->max[0] = INT_MAX;
 if (item->max[1] <= 0) item->max[1] = INT_MAX;
-if (item->max[0] < item->min[0]) item->max[0] = item->min[0];
-if (item->max[1] < item->min[1]) item->max[1] = item->min[1];
-
-evas_object_size_hint_request_get(o, >req[0], >req[1]);
-if (item->req[0] < 0) item->req[0] = 0;
-if (item->req[1] < 0) item->req[1] = 0;
+if (item->max[0] < item->want[0]) item->max[0] = item->want[0];
+if (item->max[1] < item->want[1]) item->max[1] = item->want[1];
 
-item->want[0] = MAX(item->req[0], item->min[0]) + item->pad[0] + 
item->pad[1];
-item->want[1] = MAX(item->req[1], item->min[1]) + item->pad[2] + 
item->pad[3];
+item->want[0] += item->pad[0] + item->pad[1];
+item->want[1] += item->pad[2] + item->pad[3];
 
 weight[0] += item->weight[0];
 weight[1] += item->weight[1];

-- 




[EGIT] [core/efl] master 05/08: Edje: Fix some compilation warnings

2016-06-09 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 1f943f29e4173910d7be383e511c967343000f3c
Author: Jean-Philippe Andre 
Date:   Thu Jun 9 15:23:33 2016 +0900

Edje: Fix some compilation warnings
---
 src/bin/edje/edje_svg_loader.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/bin/edje/edje_svg_loader.c b/src/bin/edje/edje_svg_loader.c
index 29cd788..18ef8fe 100644
--- a/src/bin/edje/edje_svg_loader.c
+++ b/src/bin/edje/edje_svg_loader.c
@@ -164,6 +164,8 @@ static struct {
 
 _PARSE_TAG(Efl_Gfx_Fill_Rule, fill_rule, fill_rule_tags, 
EFL_GFX_FILL_RULE_WINDING);
 
+#if 0
+// unused at the moment
 /* parse the dash pattern used during stroking a path.
  * Value:   none |  | inherit
  * Initial:none
@@ -207,6 +209,7 @@ _parse_dash_array(const char *str, Efl_Gfx_Dash** dash, int 
*length)
   }
  }
 }
+#endif
 
 static char *
  _id_from_url(const char *url)
@@ -1426,7 +1429,7 @@ EAPI Svg_Node *
 _svg_load(Eina_File *f, const char *key EINA_UNUSED)
 {
Evas_SVG_Loader loader = {
- NULL, NULL,NULL,0
+ NULL, NULL, NULL, NULL, 0, EINA_FALSE
};
const char *content;
unsigned int length;

-- 




[EGIT] [core/efl] master 03/08: Efl: rename size hint content_min to restricted_min

2016-06-09 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit f773206769a101dfd19da537fcd5424e801ab0c1
Author: Jean-Philippe Andre 
Date:   Thu Jun 9 14:31:37 2016 +0900

Efl: rename size hint content_min to restricted_min

Still not sure about which keyword is the best to use here,
but anyway, it's a protected function so users should realize
it's probably not what they want.
---
 src/lib/edje/edje_calc.c|  6 +++---
 src/lib/efl/interfaces/efl_gfx_size_hint.eo |  6 +++---
 src/lib/evas/canvas/evas_object.eo  |  4 ++--
 src/lib/evas/canvas/evas_object_main.c  | 10 +-
 4 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c
index 382e6d7..eab4f77 100644
--- a/src/lib/edje/edje_calc.c
+++ b/src/lib/edje/edje_calc.c
@@ -915,7 +915,7 @@ _edje_recalc_do(Edje *ed)
 ed->recalc_hints = EINA_FALSE;
 
 edje_obj_size_min_calc(ed->obj, , );
-efl_gfx_size_hint_content_min_set(ed->obj, w, h);
+efl_gfx_size_hint_restricted_min_set(ed->obj, w, h);
  }
 
if (!ed->collection) return;
@@ -2941,7 +2941,7 @@ _edje_part_recalc_single(Edje *ed,
 
 evas_obj_smart_need_recalculate_set(ep->object, 1);
 evas_obj_smart_calculate(ep->object);
-efl_gfx_size_hint_content_min_get(ep->object, , );
+efl_gfx_size_hint_restricted_min_get(ep->object, , );
 if (((Edje_Part_Description_Table *)chosen_desc)->table.min.h)
   {
  if (lminw > minw) minw = lminw;
@@ -2959,7 +2959,7 @@ _edje_part_recalc_single(Edje *ed,
 
 evas_obj_smart_need_recalculate_set(ep->object, 1);
 evas_obj_smart_calculate(ep->object);
-efl_gfx_size_hint_content_min_get(ep->object, , );
+efl_gfx_size_hint_restricted_min_get(ep->object, , );
 if (((Edje_Part_Description_Box *)chosen_desc)->box.min.h)
   {
  if (lminw > minw) minw = lminw;
diff --git a/src/lib/efl/interfaces/efl_gfx_size_hint.eo 
b/src/lib/efl/interfaces/efl_gfx_size_hint.eo
index ce89906..0be8d96 100644
--- a/src/lib/efl/interfaces/efl_gfx_size_hint.eo
+++ b/src/lib/efl/interfaces/efl_gfx_size_hint.eo
@@ -102,7 +102,7 @@ interface Efl.Gfx.Size.Hint
 h: int; [[Integer to use as the preferred height hint.]]
  }
   }
-  @property hint_content_min @protected {
+  @property hint_restricted_min @protected {
  [[Internal hints for an object's minimum size.
 
This is not a size enforcement in any way, it's just a hint
@@ -122,10 +122,10 @@ interface Efl.Gfx.Size.Hint
  }
   }
   @property hint_combined_min {
- [[Read-only minimum size combining both @.hint_content_min and
+ [[Read-only minimum size combining both @.hint_restricted_min and
@.hint_request size hints.
 
-   @.hint_content_min is intended for mostly internal usage
+   @.hint_restricted_min is intended for mostly internal usage
and widget developers, and @.hint_request is intended to be
set from application side. @.hint_combined_min combines both values
by taking their repective maximum (in both width and height), and
diff --git a/src/lib/evas/canvas/evas_object.eo 
b/src/lib/evas/canvas/evas_object.eo
index a4e342c..2acf42e 100644
--- a/src/lib/evas/canvas/evas_object.eo
+++ b/src/lib/evas/canvas/evas_object.eo
@@ -903,8 +903,8 @@ abstract Evas.Object (Eo.Base, Evas.Common_Interface, 
Efl.Gfx, Efl.Gfx.Stack,
   Efl.Gfx.Size.Hint.hint_align.set;
   Efl.Gfx.Size.Hint.hint_align.get;
   Efl.Gfx.Size.Hint.hint_combined_min.get;
-  Efl.Gfx.Size.Hint.hint_content_min.set;
-  Efl.Gfx.Size.Hint.hint_content_min.get;
+  Efl.Gfx.Size.Hint.hint_restricted_min.set;
+  Efl.Gfx.Size.Hint.hint_restricted_min.get;
   Efl.Gfx.Size.Hint.hint_max.set;
   Efl.Gfx.Size.Hint.hint_max.get;
   Efl.Gfx.Size.Hint.hint_margin.set;
diff --git a/src/lib/evas/canvas/evas_object_main.c 
b/src/lib/evas/canvas/evas_object_main.c
index 3bb785c..74073a8 100644
--- a/src/lib/evas/canvas/evas_object_main.c
+++ b/src/lib/evas/canvas/evas_object_main.c
@@ -1105,7 +1105,7 @@ _evas_object_size_hint_display_mode_set(Eo *eo_obj 
EINA_UNUSED, Evas_Object_Prot
 }
 
 EOLIAN static void
-_evas_object_efl_gfx_size_hint_hint_content_min_get(Eo *eo_obj EINA_UNUSED, 
Evas_Object_Protected_Data *obj, Evas_Coord *w, Evas_Coord *h)
+_evas_object_efl_gfx_size_hint_hint_restricted_min_get(Eo *eo_obj EINA_UNUSED, 
Evas_Object_Protected_Data *obj, Evas_Coord *w, Evas_Coord *h)
 {
if ((!obj->size_hints) || obj->delete_me)
  {
@@ -1118,7 +1118,7 @@ _evas_object_efl_gfx_size_hint_hint_content_min_get(Eo 
*eo_obj EINA_UNUSED, Evas
 }
 
 EOLIAN static void
-_evas_object_efl_gfx_size_hint_hint_content_min_set(Eo *eo_obj, 

[EGIT] [tools/eflete] master 01/01: property: remove old prototypes

2016-06-09 Thread Andrii Kroitor
rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=ec5f18d25cc1b5b43dd222bf77c0d49a3af390a8

commit ec5f18d25cc1b5b43dd222bf77c0d49a3af390a8
Author: Andrii Kroitor 
Date:   Wed Jun 8 14:15:56 2016 +0300

property: remove old prototypes
---
 src/bin/ui/property/property.h | 14 +-
 1 file changed, 1 insertion(+), 13 deletions(-)

diff --git a/src/bin/ui/property/property.h b/src/bin/ui/property/property.h
index 2a4856f..2c55e0c 100644
--- a/src/bin/ui/property/property.h
+++ b/src/bin/ui/property/property.h
@@ -35,16 +35,4 @@ typedef enum {
 Evas_Object *
 property_add(Evas_Object *parent, Property_Mode mode);
 
-Evas_Object *
-ui_property_image_add(Evas_Object *parent);
-
-Evas_Object *
-ui_property_sound_add(Evas_Object *parent);
-
-Evas_Object *
-ui_property_style_add(Evas_Object *parent);
-
-Evas_Object *
-ui_property_color_add(Evas_Object *parent);
-
-#endif /* UI_PROPERTY_1_H */
+#endif /* PROPERTY_H */

-- 




Re: [E-devel] [EGIT] [core/efl] master 01/01: eolian: refine the ref system to suit more cases

2016-06-09 Thread Jean-Philippe André
On 9 June 2016 at 11:38, Daniel Kolesa  wrote:

> On Thu, Jun 9, 2016 at 2:33 AM, Jean-Philippe André 
> wrote:
> > Hi Daniel,
> >
> > On 8 June 2016 at 23:51, Daniel Kolesa  wrote:
> >
> >> q66 pushed a commit to branch master.
> >>
> >>
> >>
> http://git.enlightenment.org/core/efl.git/commit/?id=b87c4f6de82065b22c2dab32acf27afcbd3824cb
> >>
> >> commit b87c4f6de82065b22c2dab32acf27afcbd3824cb
> >> Author: Daniel Kolesa 
> >> Date:   Wed Jun 8 15:49:09 2016 +0100
> >>
> >> eolian: refine the ref system to suit more cases
> >>
> >> Now references are first class (but still restricted to one level).
> >> Unlike
> >> pointers they only mark the type instead of introducing a whole new
> >> type.
> >>
> >
> >
> > Are these changes just cleaning up the internals of Eolian, or are there
> > some conceptual changes with EO files?
> >
> > I think I saw a previous patch introducing @ref but this tag was for
> > documentation, right?
> > While here it sounds like you're talking about reference a la eo_ref?
> >
> > Is there something we need to know for the interfaces?
>
> They're references as in C++ references or Rust borrowed pointers
> (i.e. they allow you to pass a value argument by reference, for
> example), they change the Eolian syntax, and will eventually replace
> pointers as they are in Eolian right now. In comparison to pointers
> they're more restricted (can only be used in certain contexts, cannot
> be nested) so they're easier to handle in bindings. Once I settle with
> semantics for refs, migration will happen (away from pointers) and
> pointers will be removed.
>

I thought most pointers had already been removed from EO?

Anyway what I know from C++ references is basically that they can't be
NULL. That's a pretty strong constraint when the implementation is all in C
:)

Looking forward to seeing more information and use cases for those refs.

-- 
Jean-Philippe André
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/efl] master 01/01: edje: add new svg part to edc

2016-06-09 Thread Jean-Philippe André
On 9 June 2016 at 14:44, Simon Lees  wrote:

>
>
> On 06/09/2016 02:58 PM, Cedric BAIL wrote:
> > On Wed, Jun 8, 2016 at 9:53 PM, Hermet Park  wrote:
> >> edc new syntax hasn't been reviewed among people seriously.
> >
> > Then it is time to review it seriously. This patch has been in the
> > making for month on phab available for everyone to review it. Once we
> > do 1.18, this is set in stone. There isn't a way to deprecate edc
> > syntax and edj internal file. Take some times to look at it now, if we
> > need to disable this for this release, it is now !
> >
> > Cedric
>
> Is there some example edje files anywhere? I didn't see one in that
> commit and may have been to lazy to look further, but for those of use
> that write lots of .edc and not alot of c examples will make it much
> easier to review the syntax.
>

Precisely, the syntax and the EDJ ABI need to be set in stone, if we want
to stabilize this.
An alternative option is to enable this on demand only (eg. with a
--enable-svg in edje_cc) or add really visible output messages.

Only a few people can really review stuff on phab, it's much easier to see
how things actually work, rather than try and guess from the diffs.



> Cheers
>
> >
> >> -Original Message-
> >> From: "Cedric BAIL"
> >> To: "Enlightenment developer list"<
> enlightenment-devel@lists.sourceforge.net>;
> >> Cc:
> >> Sent: 2016-06-09 (목) 13:40:34
> >> Subject: Re: [E-devel] [EGIT] [core/efl] master 01/01: edje: add new
> svg part to edc
> >>
> >> On Thu, Jun 9, 2016 at 4:07 AM, Hermet Park 
> wrote:
> >>> vector stuff is still beta feature.
> >>>
> >>> -Original Message-
> >>> From: "Jean-Philippe André"
> >>> To: "Enlightenment developer list"<
> enlightenment-devel@lists.sourceforge.net>;
> >>> Cc:
> >>> Sent: 2016-06-09 (목) 10:34:56
> >>> Subject: Re: [E-devel] [EGIT] [core/efl] master 01/01: edje: add new
> svg part to edc
> >>>
> >>> On 9 June 2016 at 03:35, Subhransu Mohanty 
> wrote:
> >>>
>  cedric pushed a commit to branch master.
> 
> 
> 
> http://git.enlightenment.org/core/efl.git/commit/?id=62c0a4ef087ea71355961e030b0620a60b77a026
> 
>  commit 62c0a4ef087ea71355961e030b0620a60b77a026
>  Author: Subhransu Mohanty 
>  Date:   Wed Jun 8 11:26:07 2016 -0700
> 
>  edje: add new svg part to edc
> 
>  Reviewers: Hermet, cedric
> 
>  Reviewed By: cedric
> 
>  Subscribers: jpeg, cedric, Hermet
> 
>  Differential Revision: https://phab.enlightenment.org/D3894
> 
>  Signed-off-by: Cedric BAIL 
> 
> >>>
> >>> Is this to be considered stable? Or still a beta feature?
> >>
> >> The rendering is still beta in the sense that if it is not displaying
> >> a SVG file properly it is considered a bug and the code will be
> >> adjusted accordingly. Which means that the SVG support in Edje is
> >> defined and should not be considered beta in the sense that the file
> >> format and its behavior should not change. Only fixed and extended
> >> (There is no implementation of scale support at this stage which is
> >> really mandatory to be really useful to design UI element with it).
> >> --
> >> Cedric BAIL
> >>
> >>
> --
> >> What NetFlow Analyzer can do for you? Monitors network bandwidth and
> traffic
> >> patterns at an interface-level. Reveals which users, apps, and
> protocols are
> >> consuming the most bandwidth. Provides multi-vendor support for NetFlow,
> >> J-Flow, sFlow and other flows. Make informed decisions using capacity
> >> planning reports.
> https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
> >> ___
> >> enlightenment-devel mailing list
> >> enlightenment-devel@lists.sourceforge.net
> >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >>
> --
> >> What NetFlow Analyzer can do for you? Monitors network bandwidth and
> traffic
> >> patterns at an interface-level. Reveals which users, apps, and
> protocols are
> >> consuming the most bandwidth. Provides multi-vendor support for NetFlow,
> >> J-Flow, sFlow and other flows. Make informed decisions using capacity
> >> planning reports.
> https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
> >> ___
> >> enlightenment-devel mailing list
> >> enlightenment-devel@lists.sourceforge.net
> >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >
> >
> >
>
> --
>
> Simon Lees (Simotek)http://simotek.net
>
> Emergency Update Team   keybase.io/simotek
> SUSE LinuxAdeliade Australia, UTC+9:30