[EGIT] [core/efl] master 01/01: elm_widget: remove redundant null check

2017-08-23 Thread WooHyun Jung
woohyun pushed a commit to branch master.

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

commit 7738ba5b37fba00af765a6bd320dda3857828cf9
Author: WooHyun Jung 
Date:   Thu Aug 24 13:29:39 2017 +0900

elm_widget: remove redundant null check
---
 src/lib/elementary/elm_widget.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index 50a2e463a1..d9437e87e9 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -382,8 +382,7 @@ _logical_parent_eval(Eo *obj EINA_UNUSED, 
Elm_Widget_Smart_Data *pd)
}
  logical_wd->logical.child_count --;
  old = pd->logical.parent;
- if (pd->logical.parent)
-   efl_weak_unref(>logical.parent);
+ efl_weak_unref(>logical.parent);
  pd->logical.parent = NULL;
   }
 if (parent)

-- 




Re: [E-devel] Orphaned Tasks

2017-08-23 Thread Jean-Philippe André
2017-08-23 16:56 GMT+09:00 Pierre Couderc :

> On 08/23/2017 12:53 AM, Mike Blumenkrantz wrote:
>
>> Hi,
>>
>> It has come to my attention that there are users who file tickets with no
>> assignee or no projects attached.
>>
> Mmm,  I am one of those...
> I fill as much as I can to be useful and help detect bugs. But I have no
> idea to what project a problem is related, so I prefer not to fill it.


You may still have a general idea of whether it's E or an app.

If it looks like it's E then set the project as enlightenment and mike will
redirect to someone else if it turns out it's not E.
If it's anything else you may want to set the project as EFL and cedric or
myself will then be notified.

-- 
Jean-Philippe André
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
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/12: evas: Make all EO canvas objects visible by default

2017-08-23 Thread Jean-Philippe André
2017-08-23 17:21 GMT+09:00 Carsten Haitzler :

> On Wed, 23 Aug 2017 14:00:16 +0900 Jean-Philippe André 
> said:
>
> > 2017-08-23 13:56 GMT+09:00 Carsten Haitzler :
> >
> > > On Wed, 23 Aug 2017 13:23:26 +0900 Jean-Philippe André <
> j...@videolan.org>
> > > said:
> > >
> > > > Hi,
> > > >
> > > > 2017-08-21 19:31 GMT+09:00 Al Poole :
> > > >
> > > > > Auto-fill and auto-show would save having to do that manually 95%
> of
> > > time
> > > > >  (in my tertiary experience) I've found when using efl. It
> frustrating
> > > > > having to do that almost each time with each object.
> > > > >
> > > >
> > > > I've pushed another patch for EXPAND by default.
> > > > Did you really mean FILL (align), but without EXPAND (weight)?
> > > > I'm not convinced FILL is better, as it depends more on each widget
> (eg.
> > > a
> > > > button probably shouldn't be FILL while a box might need to be).
> > > >
> > > > In any case please let me know your thoughts, and play around with
> the EO
> > > > API if you can.
> > >
> > > if expand (weight) is 1 by default fill should be on (align -1) too..
> > >
> >
> > Right. I can do that and test a bit to see if that's an improvement.
>
> cool. i think it is important due to things like scrollers... :)
>

Yes. I just wasn't thinking straight :)
It's now ON by default for finalized EO objects.


> > > On Mon, Aug 21, 2017 at 11:25 AM, Jean-Philippe André <
> j...@videolan.org
> > > >
> > > > > wrote:
> > > > >
> > > > > > 2017-08-21 18:28 GMT+09:00 Carsten Haitzler <
> ras...@rasterman.com>:
> > > > > >
> > > > > > > On Fri, 4 Aug 2017 11:26:00 +0900 Jean-Philippe André <
> > > > > j...@videolan.org
> > > > > > >
> > > > > > > said:
> > > > > > >
> > > > > > > i'm really not so sure objects should be visible by default.
> ami
> > > > > already
> > > > > > > had
> > > > > > > issues with this and found it bad/odd and asked me about it...
> > > > > > >
> > > > > >
> > > > > > This is absolutely not the feedback I got from him.
> > > > > > Remember that it's trivial to hide an object at creation time if
> you
> > > > > don't
> > > > > > want it to be shown.
> > > > > >
> > > > > > Please report bugs if you can find any.
> > > > > >
> > > > > >
> > > > > > > Hi,
> > > > > > > >
> > > > > > > > Here's a slightly experimental patch to make EO object
> visible by
> > > > > > > default.
> > > > > > > > In order to not break everything, the visibility is delayed
> > > until the
> > > > > > > > beginning of render. This means that an object may appear as
> > > > > invisible
> > > > > > > > (visible_get() returns false) even though it will in fact be
> > > visible.
> > > > > > > >
> > > > > > > > This definitely helps cutting lines of code when writing
> apps.
> > > > > > > >
> > > > > > > > This should in theory only affect EO objects (i.e. created
> with
> > > > > > > efl_add()).
> > > > > > > >
> > > > > > > > Please let me know if that works for you, or causes
> problems, or
> > > is a
> > > > > > > > terrible idea in itself.
> > > > > > > > I have a similar patch for EXPAND by default (but unlike
> > > visible, not
> > > > > > > > delayed).
> > > > > > > >
> > > > > > > > Thanks,
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > 2017-08-04 11:02 GMT+09:00 Jean-Philippe ANDRÉ <
> > > j...@videolan.org>:
> > > > > > > >
> > > > > > > > > jpeg pushed a commit to branch master.
> > > > > > > > >
> > > > > > > > > http://git.enlightenment.org/core/efl.git/commit/?id=
> > > > > > > > > fd9cf1d3b628f70d66ec85a4f2433c675d9ad243
> > > > > > > > >
> > > > > > > > > commit fd9cf1d3b628f70d66ec85a4f2433c675d9ad243
> > > > > > > > > Author: Jean-Philippe Andre 
> > > > > > > > > Date:   Thu Jul 6 16:29:20 2017 +0900
> > > > > > > > >
> > > > > > > > > evas: Make all EO canvas objects visible by default
> > > > > > > > >
> > > > > > > > > All legacy objects remain invisible by default. Any
> call to
> > > > > > > > > visible_set() will prevent the automatic show() to
> happen.
> > > > > > > > >
> > > > > > > > > show() will be done just before render time, which may
> be a
> > > > > > > > > bit too late in order to propagate the necessary
> changes.
> > > > > > > > >
> > > > > > > > > This may break some things where some objects are
> created
> > > > > > > > > internally using efl_add() instead of the legacy API,
> and
> > > > > > > > > the intent was not to show the object.
> > > > > > > > >
> > > > > > > > > @feature
> > > > > > > > > ---
> > > > > > > > >  src/lib/evas/canvas/efl_canvas_object.eo |  1 +
> > > > > > > > >  src/lib/evas/canvas/evas_object_image.c  |  2 +-
> > > > > > > > >  src/lib/evas/canvas/evas_object_main.c   | 36
> > > > > > > > > +---
> > > > > > > > >  src/lib/evas/canvas/evas_render.c| 25
> > > > > > ++
> > > > > > > > >  src/lib/evas/include/evas_private.h  | 10 

Re: [E-devel] [EGIT] [core/efl] master 07/14: widget: Remove highlight_in_theme from EO

2017-08-23 Thread Jean-Philippe André
Hi Dave,

2017-08-24 4:34 GMT+09:00 Davide Andreoli :

> 2017-08-23 13:59 GMT+02:00 Jean-Philippe ANDRÉ :
>
> > jpeg pushed a commit to branch master.
> >
> > http://git.enlightenment.org/core/efl.git/commit/?id=
> > 8a20251795317a948f5e72d8fcd996b1e5983984
> >
> > commit 8a20251795317a948f5e72d8fcd996b1e5983984
> > Author: Jean-Philippe Andre 
> > Date:   Wed Aug 23 19:25:44 2017 +0900
> >
> > widget: Remove highlight_in_theme from EO
> >
>
> This means that we will no more able to provide in-theme-highlight ?
> Or it isjust an unused api?
>
> As you probably already understand: I use in-theme-highlight in my
> mediacenter :P
>
>
If I'm not mistaken this is an internal API used by Elementary itself, and
not exposed to applications.
If your theme defines highlight in theme (by setting data item
focus_highlight=on) then you get the feature.
It simply isn't an API-defined feature. :)

I appreciate the feedback and knowing that you're tracking these changes.
Really :)


>
> >
> > Removes EO APIs:
> >  - highlight_in_theme
> >  - access_highlight_in_theme
> >
> > Ref T5363
> > ---
> >  src/lib/elementary/elm_widget.c  | 32 
> >  src/lib/elementary/elm_widget.eo | 12 
> >  2 files changed, 24 insertions(+), 20 deletions(-)
> >
> > diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_
> > widget.c
> > index abbae709c7..26b676f708 100644
> > --- a/src/lib/elementary/elm_widget.c
> > +++ b/src/lib/elementary/elm_widget.c
> > @@ -1856,9 +1856,13 @@ _elm_widget_highlight_ignore_get(Eo *obj
> > EINA_UNUSED, Elm_Widget_Smart_Data *sd)
> > return sd->highlight_ignore;
> >  }
> >
> > -EOLIAN static void
> > -_elm_widget_highlight_in_theme_set(Eo *obj EINA_UNUSED,
> > Elm_Widget_Smart_Data *sd, Eina_Bool highlight)
> > +/** @internal */
> > +EAPI void
> > +elm_widget_highlight_in_theme_set(Eo *obj, Eina_Bool highlight)
> >  {
> > +   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
> > +   if (!sd) return;
> > +
> > sd->highlight_in_theme = !!highlight;
> > /* FIXME: if focused, it should switch from one mode to the other */
> >  }
> > @@ -1875,21 +1879,33 @@ _elm_widget_highlight_in_theme_update(Eo *obj)
> >   }
> >  }
> >
> > -EOLIAN static Eina_Bool
> > -_elm_widget_highlight_in_theme_get(Eo *obj EINA_UNUSED,
> > Elm_Widget_Smart_Data *sd)
> > +/** @internal */
> > +EAPI Eina_Bool
> > +elm_widget_highlight_in_theme_get(const Eo *obj)
> >  {
> > +   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
> > +   if (!sd) return EINA_FALSE;
> > +
> > return sd->highlight_in_theme;
> >  }
> >
> > -EOLIAN static void
> > -_elm_widget_access_highlight_in_theme_set(Eo *obj EINA_UNUSED,
> > Elm_Widget_Smart_Data *sd, Eina_Bool highlight)
> > +/** @internal */
> > +EAPI void
> > +elm_widget_access_highlight_in_theme_set(Eo *obj, Eina_Bool highlight)
> >  {
> > +   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
> > +   if (!sd) return;
> > +
> > sd->access_highlight_in_theme = !!highlight;
> >  }
> >
> > -EOLIAN static Eina_Bool
> > -_elm_widget_access_highlight_in_theme_get(Eo *obj EINA_UNUSED,
> > Elm_Widget_Smart_Data *sd)
> > +/** @internal */
> > +EAPI Eina_Bool
> > +elm_widget_access_highlight_in_theme_get(const Eo *obj)
> >  {
> > +   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
> > +   if (!sd) return EINA_FALSE;
> > +
> > return sd->access_highlight_in_theme;
> >  }
> >
> > diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_
> > widget.eo
> > index 2c9454ef1c..ed2b337445 100644
> > --- a/src/lib/elementary/elm_widget.eo
> > +++ b/src/lib/elementary/elm_widget.eo
> > @@ -273,12 +273,6 @@ abstract Elm.Widget (Efl.Canvas.Group,
> > Elm.Interface.Atspi_Accessible,
> >  }
> >   }
> >}
> > -  @property highlight_in_theme {
> > -[[Highlight in theme property]]
> > - values {
> > -highlight: bool; [[$true if widget gets hightlight, $false
> > otherwise]]
> > - }
> > -  }
> >@property access_info {
> >  [[Accessibility information]]
> >   values {
> > @@ -291,12 +285,6 @@ abstract Elm.Widget (Efl.Canvas.Group,
> > Elm.Interface.Atspi_Accessible,
> >  lock: bool; [[$true if drag is locked on X axis, $false
> > otherwise]]
> >   }
> >}
> > -  @property access_highlight_in_theme {
> > - [[Accessibility highlight in theme]]
> > - values {
> > -highlight: bool; [[$true if highlighted, $false otherwise]]
> > - }
> > -  }
> >@property focus_region_show_mode {
> >   [[Control the focus_region_show mode.]]
> >   values {
> >
> > --
> >
> >
> >
> 
> --
> Check out the vibrant tech community on one of the 

Re: [E-devel] [EGIT] [core/efl] master 02/14: widget: Rename top to widget_top (EO)

2017-08-23 Thread Jean-Philippe André
2017-08-24 4:29 GMT+09:00 Davide Andreoli :

> 2017-08-23 13:59 GMT+02:00 Jean-Philippe ANDRÉ :
>
> > jpeg pushed a commit to branch master.
> >
> > http://git.enlightenment.org/core/efl.git/commit/?id=
> > 53c966b79044bb4b78c058072b3baa63cfb62f68
> >
> > commit 53c966b79044bb4b78c058072b3baa63cfb62f68
> > Author: Jean-Philippe Andre 
> > Date:   Wed Aug 23 16:24:05 2017 +0900
> >
> > widget: Rename top to widget_top (EO)
> >
>
> not really sure, but top_widget seems more correct for this name
>

The legacy C API is elm_object_top_get() / elm_widget_top_get().
With widget_top we get elm_widget_top_get() (same as legacy)
With top_widget we get elm_widget_top_widget_get()
(Replace elm_ by efl_ui_ for the upcoming EO API.)

So I really just prefixed with widget in order to avoid potential conflicts
with other (sub) classes that would also have a top member.
There is no way to have perfect names for both C and bindings... :(

>
> > Ref T5363
> > ---
> >  src/lib/elementary/elm_widget.c  |  8 ++---
> >  src/lib/elementary/elm_widget.eo | 64 ++
> > --
> >  2 files changed, 45 insertions(+), 27 deletions(-)
> >
> > diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_
> > widget.c
> > index eb3fc6dc73..29ec6946c9 100644
> > --- a/src/lib/elementary/elm_widget.c
> > +++ b/src/lib/elementary/elm_widget.c
> > @@ -1913,16 +1913,14 @@ _elm_widget_focused_object_get(Eo *obj,
> > Elm_Widget_Smart_Data *sd)
> >  }
> >
> >  EOLIAN static Evas_Object*
> > -_elm_widget_top_get(Eo *obj, Elm_Widget_Smart_Data *sd)
> > +_elm_widget_widget_top_get(Eo *obj, Elm_Widget_Smart_Data *sd)
> >  {
> > if (sd->parent_obj)
> >   {
> > -Evas_Object *ret = NULL;
> >  if (!efl_isa(sd->parent_obj, ELM_WIDGET_CLASS)) return NULL;
> > -ret = elm_obj_widget_top_get((Eo *) sd->parent_obj);
> > -return ret;
> > +return elm_obj_widget_top_get(sd->parent_obj);
> >   }
> > -   return (Evas_Object *)obj;
> > +   return obj;
> >  }
> >
> >  EAPI Eina_Bool
> > diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_
> > widget.eo
> > index 02e0f9e6ed..ab56301dbc 100644
> > --- a/src/lib/elementary/elm_widget.eo
> > +++ b/src/lib/elementary/elm_widget.eo
> > @@ -177,6 +177,48 @@ abstract Elm.Widget (Efl.Canvas.Group,
> > Elm.Interface.Atspi_Accessible,
> >  can_focus: bool; [[Whether the object is focusable.]]
> >   }
> >}
> > +  @property widget_parent @protected {
> > + [[The internal parent of this widget.
> > +
> > +   @Elm.Widget objects have a parent hierarchy that may differ
> > slightly
> > +   from their @Efl.Object or @Efl.Canvas.Object hierarchy. This
> is
> > +   meant for internal handling.
> > +
> > +   See also @.widget_top.
> > + ]]
> > + set {}
> > + get {
> > +legacy: elm_widget_parent_get; /* internal in legacy */
> > + }
> > + values {
> > +parent: Elm.Widget @nullable; [[Widget parent object]]
> > + }
> > +  }
> > +  @property widget_top {
> > + [[Root widget in the widget hierarchy.
> > +
> > +   This returns the top widget, in terms of widget hierarchy.
> > This is
> > +   usually a window ($Efl.Ui.Win). This function walks the list
> of
> > +   @.widget_parent.
> > +
> > +   If this widget has no parent (in terms of widget hierarchy)
> > this
> > +   will return $null.
> > +
> > +   Note: This may not be a display manager window in case of
> > nested
> > +   canvases. If a "real" window is required, then you might want
> > to
> > +   verify that the returned object is a $Efl.Ui.Win_Inlined, and
> > then
> > +   get $Efl.Ui.Win_Inlined.inlined_parent to find an object in
> > the
> > +   master window.
> > +
> > +   See also @.widget_parent.
> > + ]]
> > + get {
> > +legacy: elm_widget_top_get; /* internal in legacy */
> > + }
> > + values {
> > +top: Elm.Widget; [[Top widget, usually a window.]]
> > + }
> > +  }
> >
> >/* Not sure if the following are internal only? */
> >@property on_show_region_hook {
> > @@ -252,16 +294,6 @@ abstract Elm.Widget (Efl.Canvas.Group,
> > Elm.Interface.Atspi_Accessible,
> >  highlight: bool; [[$true if widget gets hightlight, $false
> > otherwise]]
> >   }
> >}
> > -  @property widget_parent @protected {
> > - [[The internal widget parent]]
> > - set {}
> > - get {
> > -legacy: elm_widget_parent_get; /* Needed because we don't do
> > duplication removal for legacy names. */
> > - }
> > - values {
> > -parent: Efl.Canvas.Object @nullable; [[Widget parent
> object]]
> > - }
> > - 

[EGIT] [core/enlightenment] master 01/01: CPUMonitor: Fix aspect by using correct theme names. This requires an EFL update too.

2017-08-23 Thread Stephen 'Okra' Houston
okra pushed a commit to branch master.

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

commit c7e6b52d2ea27e44076b4bac427eaa9e99764c2a
Author: Stephen 'Okra' Houston 
Date:   Wed Aug 23 19:02:46 2017 -0500

CPUMonitor: Fix aspect by using correct theme names.  This requires an EFL 
update too.
---
 src/modules/sysinfo/cpumonitor/cpumonitor.c | 46 ++---
 1 file changed, 22 insertions(+), 24 deletions(-)

diff --git a/src/modules/sysinfo/cpumonitor/cpumonitor.c 
b/src/modules/sysinfo/cpumonitor/cpumonitor.c
index db22514fa..d9e2fea81 100644
--- a/src/modules/sysinfo/cpumonitor/cpumonitor.c
+++ b/src/modules/sysinfo/cpumonitor/cpumonitor.c
@@ -214,10 +214,10 @@ _cpumonitor_add_layout(Instance *inst)
edje_object_update_hints_set(elm_layout_edje_get(layout), EINA_TRUE);
if (orient == E_GADGET_SITE_ORIENT_VERTICAL)
  e_theme_edje_object_set(layout, "base/theme/gadget/cpumonitor",
- "e/gadget/cpumonitor/main_vert");
+ "e/gadget/cpumonitor/core/main_vert");
else
  e_theme_edje_object_set(layout, "base/theme/gadget/cpumonitor",
- "e/gadget/cpumonitor/main");
+ "e/gadget/cpumonitor/core/main");
E_EXPAND(layout);
E_FILL(layout);
elm_box_pack_end(inst->cfg->cpumonitor.o_gadget_box, layout);
@@ -390,10 +390,20 @@ _cpumonitor_created_cb(void *data, Evas_Object *obj, void 
*event_data EINA_UNUSE
 
e_gadget_configure_cb_set(inst->o_main, _cpumonitor_configure_cb);
 
-   inst->cfg->cpumonitor.o_gadget = elm_table_add(inst->o_main);
+   inst->cfg->cpumonitor.o_gadget = elm_layout_add(inst->o_main);
+   if (orient == E_GADGET_SITE_ORIENT_VERTICAL)
+ e_theme_edje_object_set(inst->cfg->cpumonitor.o_gadget,
+ "base/theme/gadget/cpumonitor",
+ "e/gadget/cpumonitor/main_vert");
+   else
+ e_theme_edje_object_set(inst->cfg->cpumonitor.o_gadget,
+ "base/theme/gadget/cpumonitor",
+ "e/gadget/cpumonitor/main");
E_EXPAND(inst->cfg->cpumonitor.o_gadget);
E_FILL(inst->cfg->cpumonitor.o_gadget);
elm_box_pack_end(inst->o_main, inst->cfg->cpumonitor.o_gadget);
+   evas_object_event_callback_add(inst->cfg->cpumonitor.o_gadget, 
EVAS_CALLBACK_MOUSE_DOWN,
+  _cpumonitor_mouse_down_cb, inst);
evas_object_show(inst->cfg->cpumonitor.o_gadget);
 
inst->cfg->cpumonitor.o_gadget_box = 
elm_box_add(inst->cfg->cpumonitor.o_gadget);
@@ -404,17 +414,9 @@ _cpumonitor_created_cb(void *data, Evas_Object *obj, void 
*event_data EINA_UNUSE
  elm_box_horizontal_set(inst->cfg->cpumonitor.o_gadget_box, EINA_TRUE);
E_EXPAND(inst->cfg->cpumonitor.o_gadget_box);
E_FILL(inst->cfg->cpumonitor.o_gadget_box);
-   elm_table_pack(inst->cfg->cpumonitor.o_gadget, 
inst->cfg->cpumonitor.o_gadget_box, 0, 0, 1, 1);
+   elm_layout_content_set(inst->cfg->cpumonitor.o_gadget, "e.swallow.content", 
inst->cfg->cpumonitor.o_gadget_box);
evas_object_show(inst->cfg->cpumonitor.o_gadget_box);
 
-   inst->cfg->cpumonitor.event = 
evas_object_rectangle_add(inst->cfg->cpumonitor.o_gadget);
-   evas_object_color_set(inst->cfg->cpumonitor.event, 0, 0, 0, 0);
-   E_EXPAND(inst->cfg->cpumonitor.event);
-   E_FILL(inst->cfg->cpumonitor.event);
-   evas_object_event_callback_add(inst->cfg->cpumonitor.event, 
EVAS_CALLBACK_MOUSE_DOWN, _cpumonitor_mouse_down_cb, inst);
-   elm_table_pack(inst->cfg->cpumonitor.o_gadget, inst->cfg->cpumonitor.event, 
0, 0, 1, 1);
-   evas_object_show(inst->cfg->cpumonitor.event);
-
evas_object_smart_callback_del_full(obj, "gadget_created", 
_cpumonitor_created_cb, data);
 
E_LIST_HANDLER_APPEND(inst->cfg->cpumonitor.handlers, 
E_EVENT_SCREENSAVER_ON, _screensaver_on, inst);
@@ -429,11 +431,15 @@ sysinfo_cpumonitor_create(Evas_Object *parent, Instance 
*inst)
inst->cfg->cpumonitor.percent = 0;
inst->cfg->cpumonitor.popup = NULL;
inst->cfg->cpumonitor.configure = NULL;
-   inst->cfg->cpumonitor.o_gadget = elm_table_add(parent);
+   inst->cfg->cpumonitor.o_gadget = elm_layout_add(parent);
+   e_theme_edje_object_set(inst->cfg->cpumonitor.o_gadget,
+   "base/theme/gadget/cpumonitor",
+   "e/gadget/cpumonitor/main");
E_EXPAND(inst->cfg->cpumonitor.o_gadget);
E_FILL(inst->cfg->cpumonitor.o_gadget);
-   if (inst->cfg->esm != E_SYSINFO_MODULE_SYSINFO)
- elm_box_pack_end(inst->o_main, inst->cfg->cpumonitor.o_gadget);
+   elm_box_pack_end(inst->o_main, inst->cfg->cpumonitor.o_gadget);
+   evas_object_event_callback_add(inst->cfg->cpumonitor.o_gadget, 
EVAS_CALLBACK_MOUSE_DOWN,
+  _cpumonitor_mouse_down_cb, inst);
evas_object_show(inst->cfg->cpumonitor.o_gadget);
 
inst->cfg->cpumonitor.o_gadget_box = 

[EGIT] [core/efl] master 01/01: Cpumonitor Theme: Add a theme for the base and the core. This fixes aspect.

2017-08-23 Thread Stephen 'Okra' Houston
okra pushed a commit to branch master.

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

commit 95d0a85933986edebcd993ca5eabcacc9cdd32bf
Author: Stephen 'Okra' Houston 
Date:   Wed Aug 23 19:01:52 2017 -0500

Cpumonitor Theme: Add a theme for the base and the core. This fixes aspect.
---
 data/elementary/themes/edc/cpumonitor.edc | 13 -
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/data/elementary/themes/edc/cpumonitor.edc 
b/data/elementary/themes/edc/cpumonitor.edc
index 2ee4b1989b..bbc8ac4f18 100644
--- a/data/elementary/themes/edc/cpumonitor.edc
+++ b/data/elementary/themes/edc/cpumonitor.edc
@@ -1,4 +1,15 @@
 group { name: "e/gadget/cpumonitor/main";
+   alias: "e/gadget/cpumonitor/main_vert";
+   parts {
+  part { name: "e.swallow.content"; type: SWALLOW;
+ description { state: "default" 0.0;
+aspect: 1 1;
+aspect_preference: BOTH;
+ }
+  }
+   }
+}
+group { name: "e/gadget/cpumonitor/core/main";
image: "cpu_bar.png" COMP;
image: "cpu_green_on.png" COMP;
image: "cpu_yellow_on.png" COMP;
@@ -87,7 +98,7 @@ group { name: "e/gadget/cpumonitor/main";
}
 }
 
-group { name: "e/gadget/cpumonitor/main_vert";
+group { name: "e/gadget/cpumonitor/core/main_vert";
image: "cpu_bar_vert.png" COMP;
image: "cpu_green_on_vert.png" COMP;
image: "cpu_yellow_on_vert.png" COMP;

-- 




[EGIT] [core/enlightenment] master 01/01: Luncher: Don't use a second object for the overlay. This requires EFL updating due to theme.

2017-08-23 Thread Stephen 'Okra' Houston
okra pushed a commit to branch master.

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

commit ccf30bd726c5bb022c00cfa15dc414813abf28fc
Author: Stephen 'Okra' Houston 
Date:   Wed Aug 23 17:06:57 2017 -0500

Luncher: Don't use a second object for the overlay. This requires EFL 
updating due to theme.
---
 src/modules/luncher/bar.c | 8 
 src/modules/luncher/grid.c| 8 
 src/modules/luncher/luncher.h | 1 -
 3 files changed, 17 deletions(-)

diff --git a/src/modules/luncher/bar.c b/src/modules/luncher/bar.c
index 79c313950..737c2473b 100644
--- a/src/modules/luncher/bar.c
+++ b/src/modules/luncher/bar.c
@@ -250,7 +250,6 @@ _bar_icon_del(Instance *inst, Icon *ic)
if (!inst->main_del)
  _bar_aspect(inst);
evas_object_del(ic->o_icon);
-   evas_object_del(ic->o_overlay);
evas_object_del(ic->o_layout);
eina_hash_del_by_data(inst->icons_desktop_hash, ic);
eina_hash_del_by_data(inst->icons_clients_hash, ic);
@@ -1106,7 +1105,6 @@ _bar_icon_file_set(Icon *ic, Efreet_Desktop *desktop, 
E_Client *non_desktop_clie
 k = "e/icons/unknown";
  }
elm_image_file_set(ic->o_icon, path, k);
-   elm_image_file_set(ic->o_overlay, path, k);
 }
 
 static void
@@ -1223,8 +1221,6 @@ _bar_icon_add(Instance *inst, Efreet_Desktop *desktop, 
E_Client *non_desktop_cli
ic->o_icon = elm_icon_add(ic->o_layout);
E_EXPAND(ic->o_icon);
 
-   ic->o_overlay = elm_icon_add(ic->o_layout);
-   E_EXPAND(ic->o_overlay);
 
_bar_icon_file_set(ic, desktop, non_desktop_client);
 
@@ -1261,10 +1257,6 @@ _bar_icon_add(Instance *inst, Efreet_Desktop *desktop, 
E_Client *non_desktop_cli
_bar_icon_mouse_out, ic);
evas_object_show(ic->o_icon);
 
-   evas_object_size_hint_aspect_set(ic->o_overlay, EVAS_ASPECT_CONTROL_BOTH, 
1, 1);
-   elm_layout_content_set(ic->o_layout, "e.swallow.overlay", ic->o_overlay);
-   evas_object_show(ic->o_overlay);
-
if (desktop)
  eina_hash_add(inst->icons_desktop_hash, 
eina_stringshare_add(desktop->orig_path), ic);
else
diff --git a/src/modules/luncher/grid.c b/src/modules/luncher/grid.c
index 2f520056f..547d1f691 100644
--- a/src/modules/luncher/grid.c
+++ b/src/modules/luncher/grid.c
@@ -61,7 +61,6 @@ _grid_icon_del(Instance *inst, Icon *ic)
 {
inst->icons = eina_list_remove(inst->icons, ic);
evas_object_del(ic->o_icon);
-   evas_object_del(ic->o_overlay);
evas_object_del(ic->o_layout);
if (ic->desktop)
  efreet_desktop_unref(ic->desktop);
@@ -311,7 +310,6 @@ _grid_icon_file_set(Icon *ic, Efreet_Desktop *desktop)
 k =  "e/icons/unknown";
  }
elm_image_file_set(ic->o_icon, path, k);
-   elm_image_file_set(ic->o_overlay, path, k);
 }
 
 static Icon *
@@ -340,8 +338,6 @@ _grid_icon_add(Instance *inst, Efreet_Desktop *desktop)
ic->o_icon = elm_icon_add(ic->o_layout);
E_EXPAND(ic->o_icon);
 
-   ic->o_overlay = elm_icon_add(ic->o_layout);
-   E_EXPAND(ic->o_overlay);
 
_grid_icon_file_set(ic, desktop);
 
@@ -362,10 +358,6 @@ _grid_icon_add(Instance *inst, Efreet_Desktop *desktop)
_grid_icon_mouse_out, ic);
evas_object_show(ic->o_icon);
 
-   evas_object_size_hint_aspect_set(ic->o_overlay, EVAS_ASPECT_CONTROL_BOTH, 
1, 1);
-   elm_layout_content_set(ic->o_layout, "e.swallow.overlay", ic->o_overlay);
-   evas_object_show(ic->o_overlay);
-
elm_layout_sizing_eval(ic->o_layout);
 
elm_gengrid_item_append(inst->o_icon_con, &_grid_icon_class, ic, NULL, 
NULL);
diff --git a/src/modules/luncher/luncher.h b/src/modules/luncher/luncher.h
index e79701522..f33625c55 100644
--- a/src/modules/luncher/luncher.h
+++ b/src/modules/luncher/luncher.h
@@ -74,7 +74,6 @@ struct _Icon
Instance *inst;
Evas_Object  *o_layout;
Evas_Object  *o_icon;
-   Evas_Object  *o_overlay;
Evas_Object  *o_spacera;
Evas_Object  *o_spacerb;
Evas_Object  *preview;

-- 




[EGIT] [core/efl] master 01/01: Luncher Theme: Use a proxy for the overlay effect.

2017-08-23 Thread Stephen 'Okra' Houston
okra pushed a commit to branch master.

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

commit a6c7234afa60af3d671062b90f545210eda56094
Author: Stephen 'Okra' Houston 
Date:   Wed Aug 23 17:06:10 2017 -0500

Luncher Theme: Use a proxy for the overlay effect.
---
 data/elementary/themes/edc/luncher.edc | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/data/elementary/themes/edc/luncher.edc 
b/data/elementary/themes/edc/luncher.edc
index cbc35c0039..8d4db80941 100644
--- a/data/elementary/themes/edc/luncher.edc
+++ b/data/elementary/themes/edc/luncher.edc
@@ -291,11 +291,13 @@ group { name: "e/gadget/luncher/icon";
 color: 255 255 255 0;
  }
   }
-  part { name: "e.swallow.overlay"; type: SWALLOW;
+  part { name: "e.swallow.overlay"; type: PROXY;
  clip_to: "obackground";
  repeat_events: 1;
  description {
 state: "default" 0.0;
+source: "e.swallow.icon";
+proxy.source_clip: 0;
 rel1.to: "obackground";
 rel2.to: "obackground";
  }

-- 




[EGIT] [core/efl] master 02/07: Eina: Add EINA_VALUE_TYPE_ERROR

2017-08-23 Thread Guilherme Iscaro
barbieri pushed a commit to branch master.

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

commit 3ed176370d077ede61c75d61e9f7ecf83d84cd11
Author: Guilherme Iscaro 
Date:   Tue Aug 8 16:57:31 2017 -0300

Eina: Add EINA_VALUE_TYPE_ERROR

This new type will be used by the new promise/future implementation,
which will be used to flag errors.
---
 src/lib/eina/eina_value.c | 62 +++
 src/lib/eina/eina_value.h | 40 ++
 2 files changed, 86 insertions(+), 16 deletions(-)

diff --git a/src/lib/eina/eina_value.c b/src/lib/eina/eina_value.c
index 3d8dce8039..3e8cff721b 100644
--- a/src/lib/eina/eina_value.c
+++ b/src/lib/eina/eina_value.c
@@ -167,7 +167,7 @@ _eina_value_type_uchar_convert_to(const Eina_Value_Type 
*type EINA_UNUSED, const
 short other_mem = v;
 return eina_value_type_pset(convert, convert_mem, _mem);
  }
-   else if (convert == EINA_VALUE_TYPE_INT)
+   else if ((convert == EINA_VALUE_TYPE_INT) || (convert == 
EINA_VALUE_TYPE_ERROR))
  {
 int other_mem = v;
 return eina_value_type_pset(convert, convert_mem, _mem);
@@ -315,7 +315,7 @@ _eina_value_type_ushort_convert_to(const Eina_Value_Type 
*type EINA_UNUSED, cons
   return EINA_FALSE;
 return eina_value_type_pset(convert, convert_mem, _mem);
  }
-   else if (convert == EINA_VALUE_TYPE_INT)
+   else if ((convert == EINA_VALUE_TYPE_INT) || (convert == 
EINA_VALUE_TYPE_ERROR))
  {
 int other_mem = v;
 return eina_value_type_pset(convert, convert_mem, _mem);
@@ -465,7 +465,7 @@ _eina_value_type_uint_convert_to(const Eina_Value_Type 
*type EINA_UNUSED, const
   return EINA_FALSE;
 return eina_value_type_pset(convert, convert_mem, _mem);
  }
-   else if (convert == EINA_VALUE_TYPE_INT)
+   else if ((convert == EINA_VALUE_TYPE_INT) || (convert == 
EINA_VALUE_TYPE_ERROR))
  {
 int other_mem = v;
 if (EINA_UNLIKELY(v > (unsigned int)eina_value_int_max))
@@ -619,7 +619,7 @@ _eina_value_type_ulong_convert_to(const Eina_Value_Type 
*type EINA_UNUSED, const
   return EINA_FALSE;
 return eina_value_type_pset(convert, convert_mem, _mem);
  }
-   else if (convert == EINA_VALUE_TYPE_INT)
+   else if ((convert == EINA_VALUE_TYPE_INT) || (convert == 
EINA_VALUE_TYPE_ERROR))
  {
 int other_mem = v;
 if (EINA_UNLIKELY(v > (unsigned int)eina_value_int_max))
@@ -778,7 +778,7 @@ _eina_value_type_uint64_convert_to(const Eina_Value_Type 
*type EINA_UNUSED, cons
   return EINA_FALSE;
 return eina_value_type_pset(convert, convert_mem, _mem);
  }
-   else if (convert == EINA_VALUE_TYPE_INT)
+   else if ((convert == EINA_VALUE_TYPE_INT) || (convert == 
EINA_VALUE_TYPE_ERROR))
  {
 int other_mem = v;
 if (EINA_UNLIKELY(v > (unsigned int)eina_value_int_max))
@@ -936,7 +936,7 @@ _eina_value_type_char_convert_to(const Eina_Value_Type 
*type EINA_UNUSED, const
 short other_mem = v;
 return eina_value_type_pset(convert, convert_mem, _mem);
  }
-   else if (convert == EINA_VALUE_TYPE_INT)
+   else if ((convert == EINA_VALUE_TYPE_INT) || (convert == 
EINA_VALUE_TYPE_ERROR))
  {
 int other_mem = v;
 return eina_value_type_pset(convert, convert_mem, _mem);
@@ -1094,7 +1094,7 @@ _eina_value_type_short_convert_to(const Eina_Value_Type 
*type EINA_UNUSED, const
 short other_mem = v;
 return eina_value_type_pset(convert, convert_mem, _mem);
  }
-   else if (convert == EINA_VALUE_TYPE_INT)
+   else if ((convert == EINA_VALUE_TYPE_INT) || (convert == 
EINA_VALUE_TYPE_ERROR))
  {
 int other_mem = v;
 return eina_value_type_pset(convert, convert_mem, _mem);
@@ -1258,7 +1258,7 @@ _eina_value_type_int_convert_to(const Eina_Value_Type 
*type EINA_UNUSED, const E
   return EINA_FALSE;
 return eina_value_type_pset(convert, convert_mem, _mem);
  }
-   else if (convert == EINA_VALUE_TYPE_INT)
+   else if ((convert == EINA_VALUE_TYPE_INT) || (convert == 
EINA_VALUE_TYPE_ERROR))
  {
 int other_mem = v;
 return eina_value_type_pset(convert, convert_mem, _mem);
@@ -1424,7 +1424,7 @@ _eina_value_type_long_convert_to(const Eina_Value_Type 
*type EINA_UNUSED, const
   return EINA_FALSE;
 return eina_value_type_pset(convert, convert_mem, _mem);
  }
-   else if (convert == EINA_VALUE_TYPE_INT)
+   else if ((convert == EINA_VALUE_TYPE_INT) || (convert == 
EINA_VALUE_TYPE_ERROR))
  {
 int other_mem = v;
 if (EINA_UNLIKELY(v < eina_value_int_min))
@@ -1597,7 +1597,7 @@ _eina_value_type_int64_convert_to(const Eina_Value_Type 
*type EINA_UNUSED, const
   return EINA_FALSE;
 return eina_value_type_pset(convert, convert_mem, _mem);
  }
-   else if (convert == EINA_VALUE_TYPE_INT)
+   else 

[EGIT] [core/efl] master 05/07: eina_value_util: add missing eina_value_*_new() for basic types.

2017-08-23 Thread Gustavo Sverzut Barbieri
barbieri pushed a commit to branch master.

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

commit c158d5c17a93ba75013b340dd092441631c785e6
Author: Gustavo Sverzut Barbieri 
Date:   Wed Aug 23 17:29:31 2017 -0300

eina_value_util: add missing eina_value_*_new() for basic types.

make all basic types available as _new() helpers.
---
 src/lib/eina/eina_inline_value_util.x | 176 ++
 1 file changed, 176 insertions(+)

diff --git a/src/lib/eina/eina_inline_value_util.x 
b/src/lib/eina/eina_inline_value_util.x
index 2d5c264442..f863fd56cc 100644
--- a/src/lib/eina/eina_inline_value_util.x
+++ b/src/lib/eina/eina_inline_value_util.x
@@ -129,6 +129,118 @@ eina_value_type_offset(const Eina_Value_Type *type, 
unsigned int base)
 
 /**
  * @brief Create a new #Eina_Value containing the passed parameter
+ * @param c The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value *
+eina_value_uchar_new(unsigned char c)
+{
+   Eina_Value *v;
+
+   v = eina_value_new(EINA_VALUE_TYPE_UCHAR);
+   if (v) eina_value_set(v, c);
+   return v;
+}
+
+/**
+ * @brief Create a new #Eina_Value containing the passed parameter
+ * @param s The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value *
+eina_value_ushort_new(unsigned short s)
+{
+   Eina_Value *v;
+
+   v = eina_value_new(EINA_VALUE_TYPE_USHORT);
+   if (v) eina_value_set(v, s);
+   return v;
+}
+
+/**
+ * @brief Create a new #Eina_Value containing the passed parameter
+ * @param i The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value *
+eina_value_uint_new(unsigned int i)
+{
+   Eina_Value *v;
+
+   v = eina_value_new(EINA_VALUE_TYPE_UINT);
+   if (v) eina_value_set(v, i);
+   return v;
+}
+
+/**
+ * @brief Create a new #Eina_Value containing the passed parameter
+ * @param l The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value *
+eina_value_ulong_new(unsigned long l)
+{
+   Eina_Value *v;
+
+   v = eina_value_new(EINA_VALUE_TYPE_ULONG);
+   if (v) eina_value_set(v, l);
+   return v;
+}
+
+/**
+ * @brief Create a new #Eina_Value containing the passed parameter
+ * @param i The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value *
+eina_value_uint64_new(uint64_t i)
+{
+   Eina_Value *v;
+
+   v = eina_value_new(EINA_VALUE_TYPE_UINT64);
+   if (v) eina_value_set(v, i);
+   return v;
+}
+
+/**
+ * @brief Create a new #Eina_Value containing the passed parameter
+ * @param c The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value *
+eina_value_char_new(char c)
+{
+   Eina_Value *v;
+
+   v = eina_value_new(EINA_VALUE_TYPE_CHAR);
+   if (v) eina_value_set(v, c);
+   return v;
+}
+
+/**
+ * @brief Create a new #Eina_Value containing the passed parameter
+ * @param s The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value *
+eina_value_short_new(short s)
+{
+   Eina_Value *v;
+
+   v = eina_value_new(EINA_VALUE_TYPE_SHORT);
+   if (v) eina_value_set(v, s);
+   return v;
+}
+
+/**
+ * @brief Create a new #Eina_Value containing the passed parameter
  * @param i The value to use
  * @return The #Eina_Value
  * @since 1.21
@@ -145,6 +257,54 @@ eina_value_int_new(int i)
 
 /**
  * @brief Create a new #Eina_Value containing the passed parameter
+ * @param l The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value *
+eina_value_long_new(long l)
+{
+   Eina_Value *v;
+
+   v = eina_value_new(EINA_VALUE_TYPE_LONG);
+   if (v) eina_value_set(v, l);
+   return v;
+}
+
+/**
+ * @brief Create a new #Eina_Value containing the passed parameter
+ * @param i The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value *
+eina_value_int64_new(int64_t i)
+{
+   Eina_Value *v;
+
+   v = eina_value_new(EINA_VALUE_TYPE_INT64);
+   if (v) eina_value_set(v, i);
+   return v;
+}
+
+/**
+ * @brief Create a new #Eina_Value containing the passed parameter
+ * @param f The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value *
+eina_value_float_new(float f)
+{
+   Eina_Value *v;
+
+   v = eina_value_new(EINA_VALUE_TYPE_FLOAT);
+   if (v) eina_value_set(v, f);
+   return v;
+}
+
+/**
+ * @brief Create a new #Eina_Value containing the passed parameter
  * @param d The value to use
  * @return The #Eina_Value
  * @since 1.21
@@ -225,6 +385,22 @@ eina_value_time_new(time_t t)
 
 /**
  * @brief Create a new #Eina_Value containing the passed parameter
+ * @param err The error code
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value *
+eina_value_error_new(Eina_Error err)
+{
+   Eina_Value *v;
+
+   v = eina_value_new(EINA_VALUE_TYPE_ERROR);
+   if (v) eina_value_set(v, err);
+   return v;
+}
+
+/**
+ * @brief Create a new #Eina_Value 

[EGIT] [core/efl] master 01/07: add EINA_VALUE_EMPTY, allow flushing empty values.

2017-08-23 Thread Gustavo Sverzut Barbieri
barbieri pushed a commit to branch master.

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

commit 4da53492ae1235a728d1335fdc7e3cc214df9763
Author: Gustavo Sverzut Barbieri 
Date:   Wed Aug 23 17:24:52 2017 -0300

add EINA_VALUE_EMPTY, allow flushing empty values.

EINA_VALUE_EMPTY is basically a zeroed Eina_Value, handy for declaring
and returning.

To cope with the rest of efl, free/del/flush on NULL shouldn't
complain, so flusing an empty value should be quiet.
---
 src/lib/eina/eina_inline_value.x |  1 +
 src/lib/eina/eina_value.h| 10 ++
 2 files changed, 11 insertions(+)

diff --git a/src/lib/eina/eina_inline_value.x b/src/lib/eina/eina_inline_value.x
index 649e1de2a8..b8614c7ea9 100644
--- a/src/lib/eina/eina_inline_value.x
+++ b/src/lib/eina/eina_inline_value.x
@@ -136,6 +136,7 @@ eina_value_flush(Eina_Value *value)
const Eina_Value_Type *type;
void *mem;
 
+   if (!value || !value->type) return;
EINA_VALUE_TYPE_CHECK_RETURN(value);
 
type = value->type;
diff --git a/src/lib/eina/eina_value.h b/src/lib/eina/eina_value.h
index d163b11d5b..756314cb85 100644
--- a/src/lib/eina/eina_value.h
+++ b/src/lib/eina/eina_value.h
@@ -305,6 +305,16 @@
 typedef struct _Eina_Value Eina_Value;
 
 /**
+ * @def EINA_VALUE_EMPTY
+ *
+ * This is simply a value with all memory zeroed. It may be used
+ * to safely initialize or return a value without a type.
+ *
+ * @since 1.21
+ */
+#define EINA_VALUE_EMPTY ((Eina_Value){ 0 })
+
+/**
  * @typedef Eina_Value_Type
  * Describes the data contained by the value.
  *

-- 




[EGIT] [core/efl] master 04/07: eina_value_util: remove "_util" from names.

2017-08-23 Thread Gustavo Sverzut Barbieri
barbieri pushed a commit to branch master.

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

commit 39acaab5e9d5b49c7f87c529bab0eae5e1d5a3a7
Author: Gustavo Sverzut Barbieri 
Date:   Wed Aug 23 17:18:03 2017 -0300

eina_value_util: remove "_util" from names.

these utilities are very useful, but names became too long. Since they
do not conflict with anything else, shorten them.

Since they were available before as inline function, provide a macro
to rename them for old source that's compiled against newer library.
---
 src/lib/eina/eina_inline_value_util.x | 120 +++---
 1 file changed, 97 insertions(+), 23 deletions(-)

diff --git a/src/lib/eina/eina_inline_value_util.x 
b/src/lib/eina/eina_inline_value_util.x
index 3b0a3563d8..2d5c264442 100644
--- a/src/lib/eina/eina_inline_value_util.x
+++ b/src/lib/eina/eina_inline_value_util.x
@@ -25,15 +25,85 @@
 #include 
 #include 
 
+/* original names were too long, _util was removed.
+ * since they were static inline, a macro is enough
+ */
+
+/**
+ * Legacy compat: calls eina_value_type_size()
+ * @deprecated
+ * @since 1.12
+ */
+#define eina_value_util_type_size eina_value_type_size
+/**
+ * Legacy compat: calls eina_value_type_offset()
+ * @deprecated
+ * @since 1.12
+ */
+#define eina_value_util_type_offset eina_value_type_offset
+/**
+ * Legacy compat: calls eina_value_int_new()
+ * @deprecated
+ * @since 1.12
+ */
+#define eina_value_util_int_new eina_value_int_new
+/**
+ * Legacy compat: calls eina_value_double_new()
+ * @deprecated
+ * @since 1.12
+ */
+#define eina_value_util_double_new eina_value_double_new
+/**
+ * Legacy compat: calls eina_value_bool_new()
+ * @deprecated
+ * @since 1.12
+ */
+#define eina_value_util_bool_new eina_value_bool_new
+/**
+ * Legacy compat: calls eina_value_string_new()
+ * @deprecated
+ * @since 1.12
+ */
+#define eina_value_util_string_new eina_value_string_new
+/**
+ * Legacy compat: calls eina_value_stringshare_new()
+ * @deprecated
+ * @since 1.12
+ */
+#define eina_value_util_stringshare_new eina_value_stringshare_new
+/**
+ * Legacy compat: calls eina_value_time_new()
+ * @deprecated
+ * @since 1.12
+ */
+#define eina_value_util_time_new eina_value_time_new
+/**
+ * Legacy compat: calls eina_value_dup()
+ * @deprecated
+ * @since 1.12
+ */
+#define eina_value_util_dup eina_value_dup
+/**
+ * Legacy compat: calls eina_value_stringshare_copy()
+ * @deprecated
+ * @since 1.12
+ */
+#define eina_value_util_stringshare_copy eina_value_stringshare_copy
+/**
+ * Legacy compat: calls eina_value_string_copy()
+ * @deprecated
+ * @since 1.12
+ */
+#define eina_value_util_string_copy eina_value_string_copy
 
 /**
  * @brief Get size of #Eina_Value_Type based on C type
  * @param type The type to get the size of
  * @return The size of the type
- * @since 1.12
+ * @since 1.21
  */
 static inline size_t
-eina_value_util_type_size(const Eina_Value_Type *type)
+eina_value_type_size(const Eina_Value_Type *type)
 {
if (type) return type->value_size;
return 0;
@@ -44,13 +114,13 @@ eina_value_util_type_size(const Eina_Value_Type *type)
  * @param type The type to get the offset of
  * @param base The existing base size
  * @return The offset of the type
- * @since 1.12
+ * @since 1.21
  */
 static inline unsigned int
-eina_value_util_type_offset(const Eina_Value_Type *type, unsigned int base)
+eina_value_type_offset(const Eina_Value_Type *type, unsigned int base)
 {
unsigned size, padding;
-   size = eina_value_util_type_size(type);
+   size = eina_value_type_size(type);
if (!(base % size))
  return base;
padding = ( (base > size) ? (base - size) : (size - base));
@@ -61,10 +131,10 @@ eina_value_util_type_offset(const Eina_Value_Type *type, 
unsigned int base)
  * @brief Create a new #Eina_Value containing the passed parameter
  * @param i The value to use
  * @return The #Eina_Value
- * @since 1.12
+ * @since 1.21
  */
 static inline Eina_Value *
-eina_value_util_int_new(int i)
+eina_value_int_new(int i)
 {
Eina_Value *v;
 
@@ -77,10 +147,10 @@ eina_value_util_int_new(int i)
  * @brief Create a new #Eina_Value containing the passed parameter
  * @param d The value to use
  * @return The #Eina_Value
- * @since 1.12
+ * @since 1.21
  */
 static inline Eina_Value *
-eina_value_util_double_new(double d)
+eina_value_double_new(double d)
 {
Eina_Value *v;
 
@@ -93,10 +163,10 @@ eina_value_util_double_new(double d)
  * @brief Create a new #Eina_Value containing the passed parameter
  * @param b The value to use
  * @return The #Eina_Value
- * @since 1.12
+ * @since 1.21
  */
 static inline Eina_Value *
-eina_value_util_bool_new(Eina_Bool b)
+eina_value_bool_new(Eina_Bool b)
 {
Eina_Value *v;
 
@@ -109,10 +179,10 @@ eina_value_util_bool_new(Eina_Bool b)
  * @brief Create a new #Eina_Value containing the passed parameter
  * @param str The value to use
  * @return The #Eina_Value

[EGIT] [core/efl] master 07/07: eina_value_util: eina_value_X_get() helpers.

2017-08-23 Thread Gustavo Sverzut Barbieri
barbieri pushed a commit to branch master.

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

commit 103b1349167506f8c478612aa73fdc53d367e814
Author: Gustavo Sverzut Barbieri 
Date:   Wed Aug 23 18:28:06 2017 -0300

eina_value_util: eina_value_X_get() helpers.

These helpers will validate the type prior to get its value, also
enforcing the correct pointer is passed.
---
 src/lib/eina/eina_inline_value_util.x | 306 ++
 1 file changed, 306 insertions(+)

diff --git a/src/lib/eina/eina_inline_value_util.x 
b/src/lib/eina/eina_inline_value_util.x
index 8a09f4cdea..3beca713fb 100644
--- a/src/lib/eina/eina_inline_value_util.x
+++ b/src/lib/eina/eina_inline_value_util.x
@@ -672,6 +672,312 @@ eina_value_error_init(Eina_Error err)
 }
 
 /**
+ * @brief Check value type and get contents.
+ * @param v The value to check type and get contents.
+ * @param c Where to store the value contents.
+ * @return #EINA_TRUE if type matches and fetched contents,
+ * #EINA_FALSE on different type or failures.
+ * @since 1.21
+ */
+static inline Eina_Bool
+eina_value_uchar_get(const Eina_Value *v, unsigned char *c)
+{
+   EINA_SAFETY_ON_NULL_RETURN_VAL(c, EINA_FALSE);
+   *c = 0;
+   if (v && v->type == EINA_VALUE_TYPE_UCHAR)
+ return eina_value_get(v, c);
+   return EINA_FALSE;
+}
+
+/**
+ * @brief Check value type and get contents.
+ * @param v The value to check type and get contents.
+ * @param s Where to store the value contents.
+ * @return #EINA_TRUE if type matches and fetched contents,
+ * #EINA_FALSE on different type or failures.
+ * @since 1.21
+ */
+static inline Eina_Bool
+eina_value_ushort_get(const Eina_Value *v, unsigned short *s)
+{
+   EINA_SAFETY_ON_NULL_RETURN_VAL(s, EINA_FALSE);
+   *s = 0;
+   if (v && v->type == EINA_VALUE_TYPE_USHORT)
+ return eina_value_get(v, s);
+   return EINA_FALSE;
+}
+
+/**
+ * @brief Check value type and get contents.
+ * @param v The value to check type and get contents.
+ * @param i Where to store the value contents.
+ * @return #EINA_TRUE if type matches and fetched contents,
+ * #EINA_FALSE on different type or failures.
+ * @since 1.21
+ */
+static inline Eina_Bool
+eina_value_uint_get(const Eina_Value *v, unsigned int *i)
+{
+   EINA_SAFETY_ON_NULL_RETURN_VAL(i, EINA_FALSE);
+   *i = 0;
+   if (v && v->type == EINA_VALUE_TYPE_UINT)
+ return eina_value_get(v, i);
+   return EINA_FALSE;
+}
+
+/**
+ * @brief Check value type and get contents.
+ * @param v The value to check type and get contents.
+ * @param l Where to store the value contents.
+ * @return #EINA_TRUE if type matches and fetched contents,
+ * #EINA_FALSE on different type or failures.
+ * @since 1.21
+ */
+static inline Eina_Bool
+eina_value_ulong_get(const Eina_Value *v, unsigned long *l)
+{
+   EINA_SAFETY_ON_NULL_RETURN_VAL(l, EINA_FALSE);
+   *l = 0;
+   if (v && v->type == EINA_VALUE_TYPE_ULONG)
+ return eina_value_get(v, l);
+   return EINA_FALSE;
+}
+
+/**
+ * @brief Check value type and get contents.
+ * @param v The value to check type and get contents.
+ * @param i Where to store the value contents.
+ * @return #EINA_TRUE if type matches and fetched contents,
+ * #EINA_FALSE on different type or failures.
+ * @since 1.21
+ */
+static inline Eina_Bool
+eina_value_uint64_get(const Eina_Value *v, uint64_t *i)
+{
+   EINA_SAFETY_ON_NULL_RETURN_VAL(i, EINA_FALSE);
+   *i = 0;
+   if (v && v->type == EINA_VALUE_TYPE_UINT64)
+ return eina_value_get(v, i);
+   return EINA_FALSE;
+}
+
+/**
+ * @brief Check value type and get contents.
+ * @param v The value to check type and get contents.
+ * @param c Where to store the value contents.
+ * @return #EINA_TRUE if type matches and fetched contents,
+ * #EINA_FALSE on different type or failures.
+ * @since 1.21
+ */
+static inline Eina_Bool
+eina_value_char_get(const Eina_Value *v, char *c)
+{
+   EINA_SAFETY_ON_NULL_RETURN_VAL(c, EINA_FALSE);
+   *c = 0;
+   if (v && v->type == EINA_VALUE_TYPE_CHAR)
+ return eina_value_get(v, c);
+   return EINA_FALSE;
+}
+
+/**
+ * @brief Check value type and get contents.
+ * @param v The value to check type and get contents.
+ * @param s Where to store the value contents.
+ * @return #EINA_TRUE if type matches and fetched contents,
+ * #EINA_FALSE on different type or failures.
+ * @since 1.21
+ */
+static inline Eina_Bool
+eina_value_short_get(const Eina_Value *v, short *s)
+{
+   EINA_SAFETY_ON_NULL_RETURN_VAL(s, EINA_FALSE);
+   *s = 0;
+   if (v && v->type == EINA_VALUE_TYPE_SHORT)
+ return eina_value_get(v, s);
+   return EINA_FALSE;
+}
+
+/**
+ * @brief Check value type and get contents.
+ * @param v The value to check type and get contents.
+ * @param i Where to store the value contents.
+ * @return #EINA_TRUE if type matches and fetched contents,
+ * #EINA_FALSE on different type or failures.
+ * @since 1.21
+ */
+static inline Eina_Bool
+eina_value_int_get(const Eina_Value *v, 

[EGIT] [core/efl] master 06/07: eina_value_util: init helpers (stack/return).

2017-08-23 Thread Gustavo Sverzut Barbieri
barbieri pushed a commit to branch master.

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

commit f4b02d87d6601eaa524dd23f84313bc3069fc594
Author: Gustavo Sverzut Barbieri 
Date:   Wed Aug 23 18:08:14 2017 -0300

eina_value_util: init helpers (stack/return).

These helpers are similar to eina_value_X_new(), however do not
allocate the Eina_Value, rather return it.

These are useful when the value struct storage was already there but
needs to be initialized in a single line, like as stack variables or
when returning a value.
---
 src/lib/eina/eina_inline_value_util.x | 272 ++
 1 file changed, 272 insertions(+)

diff --git a/src/lib/eina/eina_inline_value_util.x 
b/src/lib/eina/eina_inline_value_util.x
index f863fd56cc..8a09f4cdea 100644
--- a/src/lib/eina/eina_inline_value_util.x
+++ b/src/lib/eina/eina_inline_value_util.x
@@ -400,6 +400,278 @@ eina_value_error_new(Eina_Error err)
 }
 
 /**
+ * @brief Initialize #Eina_Value containing the passed parameter
+ * @param c The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value
+eina_value_uchar_init(unsigned char c)
+{
+   Eina_Value v = EINA_VALUE_EMPTY;
+
+   if (eina_value_setup(, EINA_VALUE_TYPE_UCHAR))
+ eina_value_set(, c);
+   return v;
+}
+
+/**
+ * @brief Initialize #Eina_Value containing the passed parameter
+ * @param s The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value
+eina_value_ushort_init(unsigned short s)
+{
+   Eina_Value v = EINA_VALUE_EMPTY;
+
+   if (eina_value_setup(, EINA_VALUE_TYPE_USHORT))
+ eina_value_set(, s);
+   return v;
+}
+
+/**
+ * @brief Initialize #Eina_Value containing the passed parameter
+ * @param i The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value
+eina_value_uint_init(unsigned int i)
+{
+   Eina_Value v = EINA_VALUE_EMPTY;
+
+   if (eina_value_setup(, EINA_VALUE_TYPE_UINT))
+ eina_value_set(, i);
+   return v;
+}
+
+/**
+ * @brief Create a new #EinaInitializeining the passed parameter
+ * @param l The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value
+eina_value_ulong_init(unsigned long l)
+{
+   Eina_Value v = EINA_VALUE_EMPTY;
+
+   if (eina_value_setup(, EINA_VALUE_TYPE_ULONG))
+ eina_value_set(, l);
+   return v;
+}
+
+/**
+ * @brief Initialize #Eina_Value containing the passed parameter
+ * @param i The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value
+eina_value_uint64_init(uint64_t i)
+{
+   Eina_Value v = EINA_VALUE_EMPTY;
+
+   if (eina_value_setup(, EINA_VALUE_TYPE_UINT64))
+ eina_value_set(, i);
+   return v;
+}
+
+/**
+ * @brief Create a new #EinaInitializeining the passed parameter
+ * @param c The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value
+eina_value_char_init(char c)
+{
+   Eina_Value v = EINA_VALUE_EMPTY;
+
+   if (eina_value_setup(, EINA_VALUE_TYPE_CHAR))
+ eina_value_set(, c);
+   return v;
+}
+
+/**
+ * @brief Initialize #Eina_Value containing the passed parameter
+ * @param s The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value
+eina_value_short_init(short s)
+{
+   Eina_Value v = EINA_VALUE_EMPTY;
+
+   if (eina_value_setup(, EINA_VALUE_TYPE_SHORT))
+ eina_value_set(, s);
+   return v;
+}
+
+/**
+ * @brief Create a new #EinaInitializeining the passed parameter
+ * @param i The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value
+eina_value_int_init(int i)
+{
+   Eina_Value v = EINA_VALUE_EMPTY;
+
+   if (eina_value_setup(, EINA_VALUE_TYPE_INT))
+ eina_value_set(, i);
+   return v;
+}
+
+/**
+ * @brief Initialize #Eina_Value containing the passed parameter
+ * @param l The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value
+eina_value_long_init(long l)
+{
+   Eina_Value v = EINA_VALUE_EMPTY;
+
+   if (eina_value_setup(, EINA_VALUE_TYPE_LONG))
+ eina_value_set(, l);
+   return v;
+}
+
+/**
+ * @brief Create a new #EinaInitializeining the passed parameter
+ * @param i The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value
+eina_value_int64_init(int64_t i)
+{
+   Eina_Value v = EINA_VALUE_EMPTY;
+
+   if (eina_value_setup(, EINA_VALUE_TYPE_INT64))
+ eina_value_set(, i);
+   return v;
+}
+
+/**
+ * @brief Initialize #Eina_Value containing the passed parameter
+ * @param f The value to use
+ * @return The #Eina_Value
+ * @since 1.21
+ */
+static inline Eina_Value
+eina_value_float_init(float f)
+{
+   Eina_Value v = EINA_VALUE_EMPTY;
+
+   if (eina_value_setup(, EINA_VALUE_TYPE_FLOAT))
+ eina_value_set(, f);
+   return v;
+}
+
+/**
+ * @brief Create a new #EinaInitializeining the passed parameter
+ * @param d The value to use
+ * @return The 

[EGIT] [core/efl] master 03/07: Eina_Value type EINA_value.

2017-08-23 Thread Guilherme Iscaro
barbieri pushed a commit to branch master.

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

commit 6cbfe100d5f2d6771e9f68883a5c81ee8735e710
Author: Guilherme Iscaro 
Date:   Thu Aug 17 14:36:47 2017 -0300

Eina_Value type EINA_value.
---
 src/lib/eina/eina_value.c| 89 
 src/lib/eina/eina_value.h| 39 ++
 src/tests/eina/eina_test_value.c | 69 +++
 3 files changed, 197 insertions(+)

diff --git a/src/lib/eina/eina_value.c b/src/lib/eina/eina_value.c
index 3e8cff721b..cdc237d202 100644
--- a/src/lib/eina/eina_value.c
+++ b/src/lib/eina/eina_value.c
@@ -3796,6 +3796,91 @@ static const Eina_Value_Type _EINA_VALUE_TYPE_BLOB = {
   _eina_value_type_blob_pget
 };
 
+static Eina_Bool
+_eina_value_type_value_setup(const Eina_Value_Type *type EINA_UNUSED, void 
*mem)
+{
+   Eina_Value *v = mem;
+   memset(v, 0, sizeof(Eina_Value));
+   return EINA_TRUE;
+}
+
+static Eina_Bool
+_eina_value_type_value_flush(const Eina_Value_Type *type EINA_UNUSED, void 
*mem)
+{
+   Eina_Value *v = mem;
+   eina_value_flush(v);
+   return EINA_TRUE;
+}
+
+static Eina_Bool
+_eina_value_type_value_copy(const Eina_Value_Type *type EINA_UNUSED, const 
void *src, void *dst)
+{
+   const Eina_Value *v_src = src;
+   Eina_Value *v_dst = dst;
+   return eina_value_copy(v_src, v_dst);
+}
+
+static int
+_eina_value_type_value_compare(const Eina_Value_Type *type EINA_UNUSED, const 
void *a, const void *b)
+{
+   const Eina_Value *v1 = a;
+   const Eina_Value *v2 = b;
+   return eina_value_compare(v1, v2);
+}
+
+static Eina_Bool
+_eina_value_type_value_convert_to(const Eina_Value_Type *type EINA_UNUSED, 
const Eina_Value_Type *convert, const void *type_mem, void *convert_mem)
+{
+   const Eina_Value *v = type_mem;
+   return eina_value_type_convert_to(v->type, convert, 
eina_value_memory_get(v), convert_mem);
+}
+
+static Eina_Bool
+_eina_value_type_value_convert_from(const Eina_Value_Type *type EINA_UNUSED, 
const Eina_Value_Type *convert, void *type_mem, const void *convert_mem)
+{
+   Eina_Value *v = type_mem;
+   return eina_value_type_convert_from(v->type, convert, 
eina_value_memory_get(v), convert_mem);
+}
+
+static Eina_Bool
+_eina_value_type_value_vset(const Eina_Value_Type *type EINA_UNUSED, void 
*mem, va_list args)
+{
+   Eina_Value *dst = mem;
+   Eina_Value src = va_arg(args, Eina_Value);
+   return eina_value_copy(, dst);
+}
+
+static Eina_Bool
+_eina_value_type_value_pset(const Eina_Value_Type *type EINA_UNUSED, void 
*mem, const void *ptr)
+{
+   Eina_Value *dst = mem;
+   const Eina_Value *src = ptr;
+   return eina_value_copy(src, dst);
+}
+
+static Eina_Bool
+_eina_value_type_value_pget(const Eina_Value_Type *type EINA_UNUSED, const 
void *mem, void *ptr)
+{
+   const Eina_Value *src = mem;
+   Eina_Value *dst = ptr;
+   return eina_value_copy(src, dst);
+}
+
+static const Eina_Value_Type _EINA_VALUE_TYPE_VALUE = {
+  EINA_VALUE_TYPE_VERSION,
+  sizeof(Eina_Value),
+  "Eina_Value",
+  _eina_value_type_value_setup,
+  _eina_value_type_value_flush,
+  _eina_value_type_value_copy,
+  _eina_value_type_value_compare,
+  _eina_value_type_value_convert_to,
+  _eina_value_type_value_convert_from,
+  _eina_value_type_value_vset,
+  _eina_value_type_value_pset,
+  _eina_value_type_value_pget
+};
+
 static int
 _eina_value_struct_operations_binsearch_cmp(const void *pa, const void *pb)
 {
@@ -5042,6 +5127,9 @@ eina_value_init(void)
EINA_VALUE_STRUCT_OPERATIONS_BINSEARCH = 
&_EINA_VALUE_STRUCT_OPERATIONS_BINSEARCH;
EINA_VALUE_STRUCT_OPERATIONS_STRINGSHARE = 
&_EINA_VALUE_STRUCT_OPERATIONS_STRINGSHARE;
 
+   EINA_VALUE_TYPE_VALUE = &_EINA_VALUE_TYPE_VALUE;
+
+
return EINA_TRUE;
 
  on_init_fail_hash:
@@ -5097,6 +5185,7 @@ eina_value_shutdown(void)
 EAPI const Eina_Value_Type *_EINA_VALUE_TYPE_BASICS_START = NULL;
 EAPI const Eina_Value_Type *_EINA_VALUE_TYPE_BASICS_END = NULL;
 
+EAPI const Eina_Value_Type *EINA_VALUE_TYPE_VALUE = NULL;
 EAPI const Eina_Value_Type *EINA_VALUE_TYPE_ERROR = NULL;
 EAPI const Eina_Value_Type *EINA_VALUE_TYPE_UCHAR = NULL;
 EAPI const Eina_Value_Type *EINA_VALUE_TYPE_USHORT = NULL;
diff --git a/src/lib/eina/eina_value.h b/src/lib/eina/eina_value.h
index 87354cd612..a1ed51df5f 100644
--- a/src/lib/eina/eina_value.h
+++ b/src/lib/eina/eina_value.h
@@ -362,6 +362,17 @@ union _Eina_Value_Union
 EAPI extern const Eina_Value_Type *EINA_VALUE_TYPE_ERROR;
 
 /**
+ * @var EINA_VALUE_TYPE_VALUE
+ * manages Eina_Value values.
+ * This value will hold an Eina_Value,
+ * which can be usefull for storing data
+ * inside an #Eina_Value_Array.
+ *
+ * @since 1.21
+ */
+EAPI extern const Eina_Value_Type *EINA_VALUE_TYPE_VALUE;
+
+/**
  * @var EINA_VALUE_TYPE_UCHAR
  * manages unsigned char type.
  *
@@ -744,6 +755,7 @@ static inline int eina_value_compare(const Eina_Value *a,
  * The variable argument is dependent on chosen type. The list for
  

[EGIT] [core/enlightenment] master 01/01: Pager gadget: Take advantage of new theme. For this to work, you must update EFL first.

2017-08-23 Thread Stephen 'Okra' Houston
okra pushed a commit to branch master.

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

commit ae9966970b3a7cd19197d009056fb5a6eb69aa6d
Author: Stephen 'Okra' Houston 
Date:   Wed Aug 23 15:27:39 2017 -0500

Pager gadget: Take advantage of new theme. For this to work, you must 
update EFL first.
---
 src/modules/pager/gadget/pager.c | 120 ++-
 1 file changed, 118 insertions(+), 2 deletions(-)

diff --git a/src/modules/pager/gadget/pager.c b/src/modules/pager/gadget/pager.c
index e3f8f8a96..23c7726d6 100644
--- a/src/modules/pager/gadget/pager.c
+++ b/src/modules/pager/gadget/pager.c
@@ -140,6 +140,108 @@ static Eina_List *pagers = NULL;
 static E_Action *act_popup_show = NULL;
 static E_Action *act_popup_switch = NULL;
 
+static const char *
+_pager_location_get(Instance *inst)
+{
+   const char *s = "float";
+
+   if (!inst) return NULL;
+
+   E_Gadget_Site_Orient orient = 
e_gadget_site_orient_get(e_gadget_site_get(inst->o_pager));
+   E_Gadget_Site_Anchor anchor = 
e_gadget_site_anchor_get(e_gadget_site_get(inst->o_pager));
+
+   if (anchor & E_GADGET_SITE_ANCHOR_LEFT)
+ {
+if (anchor & E_GADGET_SITE_ANCHOR_TOP)
+  {
+ switch (orient)
+   {
+case E_GADGET_SITE_ORIENT_HORIZONTAL:
+  s = "top";
+  break;
+case E_GADGET_SITE_ORIENT_VERTICAL:
+  s = "left";
+  break;
+case E_GADGET_SITE_ORIENT_NONE:
+  s = "left";
+  break;
+   }
+  }
+else if (anchor & E_GADGET_SITE_ANCHOR_BOTTOM)
+  {
+ switch (orient)
+   {
+case E_GADGET_SITE_ORIENT_HORIZONTAL:
+  s = "bottom";
+  break;
+case E_GADGET_SITE_ORIENT_VERTICAL:
+  s = "left";
+  break;
+case E_GADGET_SITE_ORIENT_NONE:
+  s = "left";
+  break;
+   }
+  }
+else
+  s = "left";
+ }
+   else if (anchor & E_GADGET_SITE_ANCHOR_RIGHT)
+ {
+if (anchor & E_GADGET_SITE_ANCHOR_TOP)
+  {
+ switch (orient)
+   {
+case E_GADGET_SITE_ORIENT_HORIZONTAL:
+  s = "top";
+  break;
+case E_GADGET_SITE_ORIENT_VERTICAL:
+  s = "right";
+  break;
+case E_GADGET_SITE_ORIENT_NONE:
+  s = "right";
+  break;
+   }
+  }
+else if (anchor & E_GADGET_SITE_ANCHOR_BOTTOM)
+  {
+ switch (orient)
+   {
+case E_GADGET_SITE_ORIENT_HORIZONTAL:
+  s = "bottom";
+  break;
+case E_GADGET_SITE_ORIENT_VERTICAL:
+  s = "right";
+  break;
+case E_GADGET_SITE_ORIENT_NONE:
+  s = "right";
+  break;
+   }
+  }
+else
+  s = "right";
+ }
+   else if (anchor & E_GADGET_SITE_ANCHOR_TOP)
+ s = "top";
+   else if (anchor & E_GADGET_SITE_ANCHOR_BOTTOM)
+ s = "bottom";
+   else
+ {
+switch (orient)
+  {
+   case E_GADGET_SITE_ORIENT_HORIZONTAL:
+ s = "bottom";
+ break;
+   case E_GADGET_SITE_ORIENT_VERTICAL:
+ s = "left";
+ break;
+   default:
+ s = "bottom";
+ break;
+  }
+ }
+   return s;
+}
+
 static Eina_Bool
 _pager_check_modifiers(Evas_Modifier *modifiers)
 {
@@ -502,6 +604,8 @@ _pager_desk_free(Pager_Desk *pd)
 static void
 _pager_desk_select(Pager_Desk *pd)
 {
+   char ori[32];
+   const char *s = _pager_location_get(pd->pager->inst);
if (pd->current) return;
if (pd->pager->active_pd)
  {
@@ -510,7 +614,11 @@ _pager_desk_select(Pager_Desk *pd)
  }
pd->current = 1;
evas_object_raise(pd->o_desk);
-   edje_object_signal_emit(pd->o_desk, "e,state,selected", "e");
+   if (s) 
+ snprintf(ori, sizeof(ori), "e,state,selected,%s", s);
+   else
+ snprintf(ori, sizeof(ori), "e,state,selected,bottom");
+   edje_object_signal_emit(pd->o_desk, ori, "e");
pd->pager->active_pd = pd;
 }
 
@@ -859,7 +967,15 @@ _pager_cb_config_gadget_updated(void)
  EINA_LIST_FOREACH(p->desks, ll, pd)
{
   if (pd->current)
-edje_object_signal_emit(pd->o_desk, "e,state,selected", "e");
+{
+   char ori[32];
+  const char *s = _pager_location_get(pd->pager->inst);
+   if (s)
+ snprintf(ori, sizeof(ori), "e,state,selected,%s", s);
+   else
+ snprintf(ori, sizeof(ori), 

[EGIT] [core/efl] master 01/01: Gadget themes: Remove shines.

2017-08-23 Thread Stephen 'Okra' Houston
okra pushed a commit to branch master.

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

commit 95f59ecd517b878316829389f3a0e90a8047786b
Author: Stephen 'Okra' Houston 
Date:   Wed Aug 23 15:26:55 2017 -0500

Gadget themes: Remove shines.
---
 data/elementary/themes/Makefile.am|   1 +
 data/elementary/themes/edc/batman.edc |  30 +--
 data/elementary/themes/edc/pager.edc  | 340 ++
 data/elementary/themes/edc/pager16.edc| 326 +++-
 data/elementary/themes/edc/temperature.edc|   8 -
 data/elementary/themes/img/batman_overlay.png | Bin 0 -> 694 bytes
 6 files changed, 672 insertions(+), 33 deletions(-)

diff --git a/data/elementary/themes/Makefile.am 
b/data/elementary/themes/Makefile.am
index d48aaca248..d7632d7641 100644
--- a/data/elementary/themes/Makefile.am
+++ b/data/elementary/themes/Makefile.am
@@ -168,6 +168,7 @@ elementary/themes/img/bat_shadow.png \
 elementary/themes/img/bat_shine.png \
 elementary/themes/img/bat_top0.png \
 elementary/themes/img/bat_top1.png \
+elementary/themes/img/batman_overlay.png \
 elementary/themes/img/bevel_curved_horiz_out.png \
 elementary/themes/img/bevel_curved_vert_out.png \
 elementary/themes/img/bevel_dark_in.png \
diff --git a/data/elementary/themes/edc/batman.edc 
b/data/elementary/themes/edc/batman.edc
index c4cdf793c1..f32751ad62 100644
--- a/data/elementary/themes/edc/batman.edc
+++ b/data/elementary/themes/edc/batman.edc
@@ -2,11 +2,9 @@ group { name: "e/gadget/batman/main";
alias: "e/gadget/batman/main_vert";
images.image: "bat_shadow.png" COMP;
images.image: "bat_base.png" COMP;
-   images.image: "bat_shine.png" COMP;
images.image: "bat_bottom0.png" COMP;
-   images.image: "bat_bottom1.png" COMP;
images.image: "bat_top0.png" COMP;
-   images.image: "bat_top1.png" COMP;
+   images.image: "batman_overlay.png" COMP;
images.image: "glow_med_white.png" COMP;
script {
   public message(Msg_Type:type, id, ...) {
@@ -58,7 +56,9 @@ group { name: "e/gadget/batman/main";
   part { name: "fill_region"; type: SPACER;
  description { state: "default" 0.0;
 rel1.to: "bg";
+rel1.offset: 1 0;
 rel2.to: "bg";
+rel2.offset: -2 -1;
  }
   }
   part { name: "pwr"; type: SPACER;
@@ -134,30 +134,14 @@ group { name: "e/gadget/batman/main";
 color: 51 153 255 255;
  }
   }
-  part { name: "top-shine";
- clip_to: "pulse_clip";
- description { state: "default" 0.0;
-rel1.to: "top";
-rel2.to: "top";
-image.normal: "bat_top1.png";
- }
-  }
-  part { name: "bottom-shine";
- clip_to: "pulse_clip";
- description { state: "default" 0.0;
-rel1.to: "bottom";
-rel2.to: "bottom";
-image.normal: "bat_bottom1.png";
- }
-  }
-  part { name: "shine";
+  part { name: "overlay";
  clip_to: "pulse_clip";
  description { state: "default" 0.0;
 rel1.to: "bg";
-rel1.offset: 0 -6;
+rel1.offset: 0 0;
 rel2.to: "bg";
-rel2.offset: -1 5;
-image.normal: "bat_shine.png";
+rel2.offset: -1 -1;
+image.normal: "batman_overlay.png";
 image.border: 0 0 7 7;
  }
   }
diff --git a/data/elementary/themes/edc/pager.edc 
b/data/elementary/themes/edc/pager.edc
index 4596db8451..74af167908 100644
--- a/data/elementary/themes/edc/pager.edc
+++ b/data/elementary/themes/edc/pager.edc
@@ -1,4 +1,5 @@
 group { name: "e/modules/pager/popup";
+   alias: "e/gadget/pager/popup";
images.image: "vgrad_tall.png" COMP;
images.image: "bevel_out.png" COMP;
images.image: "shine.png" COMP;
@@ -355,7 +356,346 @@ group { name: "e/modules/pager/desk";
}
 }
 
+group { name: "e/gadget/pager/desk";
+   images.image: "vgrad_med_darker.png" COMP;
+   images.image: "bevel_out.png" COMP;
+   images.image: "bevel_in.png" COMP;
+   images.image: "inset_shadow.png" COMP;
+   images.image: "mini_blue_glow_arrow_0.png" COMP;
+   images.image: "mini_blue_glow_arrow_1.png" COMP;
+   images.image: "mini_blue_glow_arrow_2.png" COMP;
+   images.image: "mini_blue_glow_arrow_3.png" COMP;
+   parts {
+  part { name: "base";
+ description { state: "default" 0.0;
+image.normal: "vgrad_med_darker.png";
+rel1.to: "inset";
+rel1.offset: 1 1;
+rel2.to: "inset";
+rel2.offset: -2 -2;
+fill.smooth: 0;
+TILED_HORIZ(32)
+ }
+  }
+  part { name: "pat"; mouse_events: 0;
+ description { state: "default" 0.0;
+image.normal: "dot_pattern.png";
+rel1.to: "base";
+rel2.to: "base";
+TILED_PATTERN(256, 256)
+ }
+  }
+  part { 

Re: [E-devel] [EGIT] [core/efl] master 07/14: widget: Remove highlight_in_theme from EO

2017-08-23 Thread Davide Andreoli
2017-08-23 13:59 GMT+02:00 Jean-Philippe ANDRÉ :

> jpeg pushed a commit to branch master.
>
> http://git.enlightenment.org/core/efl.git/commit/?id=
> 8a20251795317a948f5e72d8fcd996b1e5983984
>
> commit 8a20251795317a948f5e72d8fcd996b1e5983984
> Author: Jean-Philippe Andre 
> Date:   Wed Aug 23 19:25:44 2017 +0900
>
> widget: Remove highlight_in_theme from EO
>

This means that we will no more able to provide in-theme-highlight ?
Or it isjust an unused api?

As you probably already understand: I use in-theme-highlight in my
mediacenter :P



>
> Removes EO APIs:
>  - highlight_in_theme
>  - access_highlight_in_theme
>
> Ref T5363
> ---
>  src/lib/elementary/elm_widget.c  | 32 
>  src/lib/elementary/elm_widget.eo | 12 
>  2 files changed, 24 insertions(+), 20 deletions(-)
>
> diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_
> widget.c
> index abbae709c7..26b676f708 100644
> --- a/src/lib/elementary/elm_widget.c
> +++ b/src/lib/elementary/elm_widget.c
> @@ -1856,9 +1856,13 @@ _elm_widget_highlight_ignore_get(Eo *obj
> EINA_UNUSED, Elm_Widget_Smart_Data *sd)
> return sd->highlight_ignore;
>  }
>
> -EOLIAN static void
> -_elm_widget_highlight_in_theme_set(Eo *obj EINA_UNUSED,
> Elm_Widget_Smart_Data *sd, Eina_Bool highlight)
> +/** @internal */
> +EAPI void
> +elm_widget_highlight_in_theme_set(Eo *obj, Eina_Bool highlight)
>  {
> +   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
> +   if (!sd) return;
> +
> sd->highlight_in_theme = !!highlight;
> /* FIXME: if focused, it should switch from one mode to the other */
>  }
> @@ -1875,21 +1879,33 @@ _elm_widget_highlight_in_theme_update(Eo *obj)
>   }
>  }
>
> -EOLIAN static Eina_Bool
> -_elm_widget_highlight_in_theme_get(Eo *obj EINA_UNUSED,
> Elm_Widget_Smart_Data *sd)
> +/** @internal */
> +EAPI Eina_Bool
> +elm_widget_highlight_in_theme_get(const Eo *obj)
>  {
> +   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
> +   if (!sd) return EINA_FALSE;
> +
> return sd->highlight_in_theme;
>  }
>
> -EOLIAN static void
> -_elm_widget_access_highlight_in_theme_set(Eo *obj EINA_UNUSED,
> Elm_Widget_Smart_Data *sd, Eina_Bool highlight)
> +/** @internal */
> +EAPI void
> +elm_widget_access_highlight_in_theme_set(Eo *obj, Eina_Bool highlight)
>  {
> +   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
> +   if (!sd) return;
> +
> sd->access_highlight_in_theme = !!highlight;
>  }
>
> -EOLIAN static Eina_Bool
> -_elm_widget_access_highlight_in_theme_get(Eo *obj EINA_UNUSED,
> Elm_Widget_Smart_Data *sd)
> +/** @internal */
> +EAPI Eina_Bool
> +elm_widget_access_highlight_in_theme_get(const Eo *obj)
>  {
> +   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
> +   if (!sd) return EINA_FALSE;
> +
> return sd->access_highlight_in_theme;
>  }
>
> diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_
> widget.eo
> index 2c9454ef1c..ed2b337445 100644
> --- a/src/lib/elementary/elm_widget.eo
> +++ b/src/lib/elementary/elm_widget.eo
> @@ -273,12 +273,6 @@ abstract Elm.Widget (Efl.Canvas.Group,
> Elm.Interface.Atspi_Accessible,
>  }
>   }
>}
> -  @property highlight_in_theme {
> -[[Highlight in theme property]]
> - values {
> -highlight: bool; [[$true if widget gets hightlight, $false
> otherwise]]
> - }
> -  }
>@property access_info {
>  [[Accessibility information]]
>   values {
> @@ -291,12 +285,6 @@ abstract Elm.Widget (Efl.Canvas.Group,
> Elm.Interface.Atspi_Accessible,
>  lock: bool; [[$true if drag is locked on X axis, $false
> otherwise]]
>   }
>}
> -  @property access_highlight_in_theme {
> - [[Accessibility highlight in theme]]
> - values {
> -highlight: bool; [[$true if highlighted, $false otherwise]]
> - }
> -  }
>@property focus_region_show_mode {
>   [[Control the focus_region_show mode.]]
>   values {
>
> --
>
>
>
--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/efl] master 02/14: widget: Rename top to widget_top (EO)

2017-08-23 Thread Davide Andreoli
2017-08-23 13:59 GMT+02:00 Jean-Philippe ANDRÉ :

> jpeg pushed a commit to branch master.
>
> http://git.enlightenment.org/core/efl.git/commit/?id=
> 53c966b79044bb4b78c058072b3baa63cfb62f68
>
> commit 53c966b79044bb4b78c058072b3baa63cfb62f68
> Author: Jean-Philippe Andre 
> Date:   Wed Aug 23 16:24:05 2017 +0900
>
> widget: Rename top to widget_top (EO)
>

not really sure, but top_widget seems more correct for this name



>
> Ref T5363
> ---
>  src/lib/elementary/elm_widget.c  |  8 ++---
>  src/lib/elementary/elm_widget.eo | 64 ++
> --
>  2 files changed, 45 insertions(+), 27 deletions(-)
>
> diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_
> widget.c
> index eb3fc6dc73..29ec6946c9 100644
> --- a/src/lib/elementary/elm_widget.c
> +++ b/src/lib/elementary/elm_widget.c
> @@ -1913,16 +1913,14 @@ _elm_widget_focused_object_get(Eo *obj,
> Elm_Widget_Smart_Data *sd)
>  }
>
>  EOLIAN static Evas_Object*
> -_elm_widget_top_get(Eo *obj, Elm_Widget_Smart_Data *sd)
> +_elm_widget_widget_top_get(Eo *obj, Elm_Widget_Smart_Data *sd)
>  {
> if (sd->parent_obj)
>   {
> -Evas_Object *ret = NULL;
>  if (!efl_isa(sd->parent_obj, ELM_WIDGET_CLASS)) return NULL;
> -ret = elm_obj_widget_top_get((Eo *) sd->parent_obj);
> -return ret;
> +return elm_obj_widget_top_get(sd->parent_obj);
>   }
> -   return (Evas_Object *)obj;
> +   return obj;
>  }
>
>  EAPI Eina_Bool
> diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_
> widget.eo
> index 02e0f9e6ed..ab56301dbc 100644
> --- a/src/lib/elementary/elm_widget.eo
> +++ b/src/lib/elementary/elm_widget.eo
> @@ -177,6 +177,48 @@ abstract Elm.Widget (Efl.Canvas.Group,
> Elm.Interface.Atspi_Accessible,
>  can_focus: bool; [[Whether the object is focusable.]]
>   }
>}
> +  @property widget_parent @protected {
> + [[The internal parent of this widget.
> +
> +   @Elm.Widget objects have a parent hierarchy that may differ
> slightly
> +   from their @Efl.Object or @Efl.Canvas.Object hierarchy. This is
> +   meant for internal handling.
> +
> +   See also @.widget_top.
> + ]]
> + set {}
> + get {
> +legacy: elm_widget_parent_get; /* internal in legacy */
> + }
> + values {
> +parent: Elm.Widget @nullable; [[Widget parent object]]
> + }
> +  }
> +  @property widget_top {
> + [[Root widget in the widget hierarchy.
> +
> +   This returns the top widget, in terms of widget hierarchy.
> This is
> +   usually a window ($Efl.Ui.Win). This function walks the list of
> +   @.widget_parent.
> +
> +   If this widget has no parent (in terms of widget hierarchy)
> this
> +   will return $null.
> +
> +   Note: This may not be a display manager window in case of
> nested
> +   canvases. If a "real" window is required, then you might want
> to
> +   verify that the returned object is a $Efl.Ui.Win_Inlined, and
> then
> +   get $Efl.Ui.Win_Inlined.inlined_parent to find an object in
> the
> +   master window.
> +
> +   See also @.widget_parent.
> + ]]
> + get {
> +legacy: elm_widget_top_get; /* internal in legacy */
> + }
> + values {
> +top: Elm.Widget; [[Top widget, usually a window.]]
> + }
> +  }
>
>/* Not sure if the following are internal only? */
>@property on_show_region_hook {
> @@ -252,16 +294,6 @@ abstract Elm.Widget (Efl.Canvas.Group,
> Elm.Interface.Atspi_Accessible,
>  highlight: bool; [[$true if widget gets hightlight, $false
> otherwise]]
>   }
>}
> -  @property widget_parent @protected {
> - [[The internal widget parent]]
> - set {}
> - get {
> -legacy: elm_widget_parent_get; /* Needed because we don't do
> duplication removal for legacy names. */
> - }
> - values {
> -parent: Efl.Canvas.Object @nullable; [[Widget parent object]]
> - }
> -  }
>@property access_info {
>  [[Accessibility information]]
>   values {
> @@ -385,12 +417,6 @@ abstract Elm.Widget (Efl.Canvas.Group,
> Elm.Interface.Atspi_Accessible,
>  h: int; [[Height]]
>   }
>}
> -  @property top {
> -[[Top widget property]]
> - get {
> -return: Efl.Canvas.Object; [[Top widget]]
> - }
> -  }
>@property focus_order {
>  [[Focus order property]]
>   get {
> @@ -732,12 +758,6 @@ abstract Elm.Widget (Efl.Canvas.Group,
> Elm.Interface.Atspi_Accessible,
>  @in sobj: Efl.Canvas.Object; [[Object to be deleted]]
>   }
>}
> -  tooltip_add {
> -[[Add tooltip to widget]]
> -

[EGIT] [core/enlightenment] master 01/01: remove distro packaging files

2017-08-23 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit 517b3a12569c295a03483b16f96cbd4e9528b4ba
Author: Mike Blumenkrantz 
Date:   Wed Aug 23 12:07:17 2017 -0400

remove distro packaging files

let distros provide these, projects should not

ref T4991
---
 Makefile.am|  6 +--
 configure.ac   |  1 -
 enlightenment.spec.in  | 96 --
 pkgbuild/.gitignore|  2 -
 pkgbuild/PKGBUILD  | 57 -
 pkgbuild/enlightenment.install | 12 --
 6 files changed, 1 insertion(+), 173 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index dba49f1db..a03bc50b5 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -38,11 +38,7 @@ config.rpath \
 README \
 AUTHORS \
 COPYING \
-enlightenment.spec.in \
-enlightenment.spec \
-enlightenment.pc \
-pkgbuild/PKGBUILD \
-pkgbuild/enlightenment.install
+enlightenment.pc
 
 include m4/Makefile.mk
 
diff --git a/configure.ac b/configure.ac
index 07021c435..893551a4e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1056,7 +1056,6 @@ AC_SUBST([SUID_LDFLAGS])
 
 AC_OUTPUT([
 Makefile
-enlightenment.spec
 enlightenment.pc
 src/bin/e_fm_shared_types.h
 src/modules/everything/everything.pc
diff --git a/enlightenment.spec.in b/enlightenment.spec.in
deleted file mode 100644
index 69e729dc4..0
--- a/enlightenment.spec.in
+++ /dev/null
@@ -1,96 +0,0 @@
-%define __os_install_post /usr/lib/rpm/brp-compress
-%define debug_package %{nil}
-%{!?_rel:%{expand:%%global _rel 0.enl%{?dist}}}
-%define _missing_doc_files_terminate_build 0
-
-%if %(systemctl --version | head -1 | cut -d' ' -f2) >= 209
-%{expand:%%global have_systemd 1}
-%endif
-
-%{expand:%%global ac_enable_systemd 
--%{?have_systemd:en}%{!?have_systemd:dis}able-systemd}
-
-Summary: The Enlightenment window manager
-Name: @PACKAGE@
-Version: @VERSION@
-Release: %{_rel}
-License: BSD
-Group: User Interface/Desktops
-URL: http://www.enlightenment.org/
-Source: ftp://ftp.enlightenment.org/pub/enlightenment/%{name}-%{version}.tar.gz
-Packager: %{?_packager:%{_packager}}%{!?_packager:Michael Jennings 
}
-Vendor: %{?_vendorinfo:%{_vendorinfo}}%{!?_vendorinfo:The Enlightenment 
Project (http://www.enlightenment.org/)}
-Distribution: %{?_distribution:%{_distribution}}%{!?_distribution:%{_vendor}}
-#BuildSuggests: xorg-x11-devel, XFree86-devel, libX11-devel
-BuildRequires: efl-devel >= @efl_version@
-BuildRequires: libxcb-devel, xcb-util-devel
-Prefix: %{_prefix}
-BuildRoot: %{_tmppath}/%{name}-%{version}-root
-
-%description
-Enlightenment is a window manager.
-
-
-%package devel
-Summary: Development headers for Enlightenment. 
-Group: User Interface/Desktops
-Requires: %{name} = %{version}
-Requires: efl-devel >= @efl_version@
-
-%description devel
-Development headers for Enlightenment.
-
-
-%prep
-%setup -q
-
-
-%build
-%{configure} --prefix=%{_prefix} %{ac_enable_systemd} --with-profile=FAST_PC 
CFLAGS="-O0 -ggdb3"
-%{__make} %{?_smp_mflags} %{?mflags}
-
-
-%install
-%{__make} %{?mflags_install} DESTDIR=$RPM_BUILD_ROOT install
-test -x `which doxygen` && sh gendoc || :
-find $RPM_BUILD_ROOT%{_prefix} -name '*.la' -print0 | xargs -0 rm -f
-
-%{find_lang} %{name}
-
-
-%clean
-test "x$RPM_BUILD_ROOT" != "x/" && rm -rf $RPM_BUILD_ROOT
-
-
-%post
-/sbin/ldconfig
-
-
-%postun
-/sbin/ldconfig
-
-
-%files -f %{name}.lang
-%defattr(-, root, root)
-%doc AUTHORS COPYING README
-%dir %{_sysconfdir}/enlightenment
-%config(noreplace) %{_sysconfdir}/enlightenment/*
-%config(noreplace) %{_sysconfdir}/xdg/menus/e-applications.menu
-%{_bindir}/emixer
-%{_bindir}/enlightenment
-%{_bindir}/enlightenment_*
-%{_libdir}/%{name}/
-%{_datadir}/%{name}/
-%{_datadir}/applications/*.desktop
-%{_datadir}/pixmaps/e*
-%{_datadir}/xsessions/%{name}.desktop
-%if %{?have_systemd:1}0
-%{_prefix}/lib/systemd/*/*.service
-%endif
-
-%files devel
-%defattr(-, root, root)
-%{_includedir}/enlightenment/
-%{_libdir}/pkgconfig/*.pc
-
-
-%changelog
diff --git a/pkgbuild/.gitignore b/pkgbuild/.gitignore
deleted file mode 100644
index da5b08f95..0
--- a/pkgbuild/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*.tar.xz
-pkg
diff --git a/pkgbuild/PKGBUILD b/pkgbuild/PKGBUILD
deleted file mode 100644
index 6905e1692..0
--- a/pkgbuild/PKGBUILD
+++ /dev/null
@@ -1,57 +0,0 @@
-# Maintainer: Enlightenment Developers >
-pkgname=enlightenment
-[[ -d ../.git ]] && pkgname=$pkgname-git
-pkgver=0.18.0rc2.17432.569bc2e
-pkgrel=1
-pkgdesc="Enlightenment window manager - GIT development snapshot"
-arch=('i686' 'x86_64' 'arm')
-url="http://www.enlightenment.org;
-license=('BSD')
-depends=('elementary' 'xcb-util-keysyms' 'hicolor-icon-theme' 'pixman' 'mesa'
- 'desktop-file-utils' 'udisks2' 'ttf-font' 'bluez-libs' 'bluez4')
-optdepends=('connman: network module'

[EGIT] [core/enlightenment] master 01/01: Gadgets: Don't set gadgets to expand.

2017-08-23 Thread Stephen 'Okra' Houston
okra pushed a commit to branch master.

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

commit ad46d041a8614b9383e797b679c60ca2ded5354c
Author: Stephen 'Okra' Houston 
Date:   Wed Aug 23 09:55:59 2017 -0500

Gadgets: Don't set gadgets to expand.
---
 src/modules/backlight/gadget/backlight.c| 3 ---
 src/modules/mixer/gadget/mixer.c| 2 --
 src/modules/sysinfo/batman/batman.c | 1 -
 src/modules/sysinfo/cpuclock/cpuclock.c | 1 -
 src/modules/sysinfo/cpumonitor/cpumonitor.c | 1 -
 src/modules/sysinfo/memusage/memusage.c | 1 -
 src/modules/sysinfo/netstatus/netstatus.c   | 1 -
 src/modules/sysinfo/thermal/thermal.c   | 1 -
 src/modules/xkbswitch/gadget/xkbswitch.c| 2 --
 9 files changed, 13 deletions(-)

diff --git a/src/modules/backlight/gadget/backlight.c 
b/src/modules/backlight/gadget/backlight.c
index 8e31c410a..d4aa7e7b0 100644
--- a/src/modules/backlight/gadget/backlight.c
+++ b/src/modules/backlight/gadget/backlight.c
@@ -278,9 +278,6 @@ backlight_gadget_create(Evas_Object *parent, int *id, 
E_Gadget_Site_Orient orien
  backlight_init();
else
  inst->val = -1.0;
-
-   E_EXPAND(inst->o_main);
-   E_FILL(inst->o_main);
evas_object_smart_callback_add(parent, "gadget_created", 
_backlight_gadget_created_cb, inst);
if (*id != -1)
  {
diff --git a/src/modules/mixer/gadget/mixer.c b/src/modules/mixer/gadget/mixer.c
index 7fb14e559..8f7fc64c5 100644
--- a/src/modules/mixer/gadget/mixer.c
+++ b/src/modules/mixer/gadget/mixer.c
@@ -672,8 +672,6 @@ mixer_gadget_create(Evas_Object *parent, int *id, 
E_Gadget_Site_Orient orient)
inst->o_main = elm_box_add(parent);
inst->orient = orient;
inst->id = *id;
-   E_EXPAND(inst->o_main);
-   E_FILL(inst->o_main);
evas_object_show(inst->o_main);   
 
evas_object_smart_callback_add(parent, "gadget_created", 
_mixer_gadget_created_cb, inst);
diff --git a/src/modules/sysinfo/batman/batman.c 
b/src/modules/sysinfo/batman/batman.c
index fcfedec0b..328d089f0 100644
--- a/src/modules/sysinfo/batman/batman.c
+++ b/src/modules/sysinfo/batman/batman.c
@@ -742,7 +742,6 @@ batman_create(Evas_Object *parent, int *id, 
E_Gadget_Site_Orient orient EINA_UNU
inst->cfg = _conf_item_get(id);
*id = inst->cfg->id;
inst->o_main = elm_box_add(parent);
-   E_EXPAND(inst->o_main);
evas_object_data_set(inst->o_main, "Instance", inst);
evas_object_smart_callback_add(parent, "gadget_created", 
_batman_created_cb, inst);
evas_object_smart_callback_add(parent, "gadget_removed", 
_batman_removed_cb, inst);
diff --git a/src/modules/sysinfo/cpuclock/cpuclock.c 
b/src/modules/sysinfo/cpuclock/cpuclock.c
index f6000c98b..333d170e8 100644
--- a/src/modules/sysinfo/cpuclock/cpuclock.c
+++ b/src/modules/sysinfo/cpuclock/cpuclock.c
@@ -1152,7 +1152,6 @@ cpuclock_create(Evas_Object *parent, int *id, 
E_Gadget_Site_Orient orient EINA_U
inst->cfg = _conf_item_get(id);
*id = inst->cfg->id;
inst->o_main = elm_box_add(parent);
-   E_EXPAND(inst->o_main);
evas_object_data_set(inst->o_main, "Instance", inst);
evas_object_smart_callback_add(parent, "gadget_created", 
_cpuclock_created_cb, inst);
evas_object_smart_callback_add(parent, "gadget_removed", 
_cpuclock_removed_cb, inst);
diff --git a/src/modules/sysinfo/cpumonitor/cpumonitor.c 
b/src/modules/sysinfo/cpumonitor/cpumonitor.c
index a4f13ff94..db22514fa 100644
--- a/src/modules/sysinfo/cpumonitor/cpumonitor.c
+++ b/src/modules/sysinfo/cpumonitor/cpumonitor.c
@@ -499,7 +499,6 @@ cpumonitor_create(Evas_Object *parent, int *id, 
E_Gadget_Site_Orient orient EINA
inst->cfg->cpumonitor.popup = NULL;
inst->cfg->cpumonitor.configure = NULL;
inst->o_main = elm_box_add(parent);
-   E_EXPAND(inst->o_main);
evas_object_data_set(inst->o_main, "Instance", inst);
evas_object_smart_callback_add(parent, "gadget_created", 
_cpumonitor_created_cb, inst);
evas_object_smart_callback_add(parent, "gadget_removed", 
_cpumonitor_removed_cb, inst);
diff --git a/src/modules/sysinfo/memusage/memusage.c 
b/src/modules/sysinfo/memusage/memusage.c
index e246fced2..310c736d8 100644
--- a/src/modules/sysinfo/memusage/memusage.c
+++ b/src/modules/sysinfo/memusage/memusage.c
@@ -569,7 +569,6 @@ memusage_create(Evas_Object *parent, int *id, 
E_Gadget_Site_Orient orient EINA_U
inst->cfg->memusage.popup = NULL;
inst->cfg->memusage.configure = NULL;
inst->o_main = elm_box_add(parent);
-   E_EXPAND(inst->o_main);
evas_object_data_set(inst->o_main, "Instance", inst);
evas_object_smart_callback_add(parent, "gadget_created",
   _memusage_created_cb, inst);
diff --git a/src/modules/sysinfo/netstatus/netstatus.c 
b/src/modules/sysinfo/netstatus/netstatus.c
index ac4259d07..5a3c8eb9d 100644
--- a/src/modules/sysinfo/netstatus/netstatus.c
+++ b/src/modules/sysinfo/netstatus/netstatus.c
@@ -436,7 +436,6 @@ 

[EGIT] [core/efl] master 14/14: widget: Make sub_object add/del protected (EO)

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 3f9c239b277c5af10f33f262aabdd719e43dd99c
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 20:41:37 2017 +0900

widget: Make sub_object add/del protected (EO)

Also prefix with widget.

I want to rename this as child rather than sub. It's inconsistent with
the other parent/child hierarchies. Anyway the various hierarchies are
confusing, so let's keep this name :)

Ref T5363
---
 src/lib/elementary/efl_ui_box.c  |  4 +--
 src/lib/elementary/efl_ui_button.c   |  4 +--
 src/lib/elementary/efl_ui_button.eo  |  2 +-
 src/lib/elementary/efl_ui_check.c|  4 +--
 src/lib/elementary/efl_ui_check.eo   |  2 +-
 src/lib/elementary/efl_ui_flip.c |  8 +++---
 src/lib/elementary/efl_ui_flip.eo|  4 +--
 src/lib/elementary/efl_ui_layout.c   | 14 +--
 src/lib/elementary/efl_ui_layout.eo  |  4 +--
 src/lib/elementary/efl_ui_progressbar.c  |  4 +--
 src/lib/elementary/efl_ui_progressbar.eo |  2 +-
 src/lib/elementary/efl_ui_text.c |  4 +--
 src/lib/elementary/efl_ui_text.eo|  2 +-
 src/lib/elementary/elc_ctxpopup.c|  6 ++---
 src/lib/elementary/elc_popup.c   |  4 +--
 src/lib/elementary/elm_box.c |  4 +--
 src/lib/elementary/elm_box.eo|  2 +-
 src/lib/elementary/elm_ctxpopup.eo   |  2 +-
 src/lib/elementary/elm_diskselector.c|  4 +--
 src/lib/elementary/elm_diskselector.eo   |  2 +-
 src/lib/elementary/elm_entry.c   |  4 +--
 src/lib/elementary/elm_entry.eo  |  2 +-
 src/lib/elementary/elm_genlist.c |  8 +++---
 src/lib/elementary/elm_genlist.eo|  4 +--
 src/lib/elementary/elm_hover.c   |  8 +++---
 src/lib/elementary/elm_hover.eo  |  4 +--
 src/lib/elementary/elm_list.c|  4 +--
 src/lib/elementary/elm_list.eo   |  2 +-
 src/lib/elementary/elm_mapbuf.c  |  4 +--
 src/lib/elementary/elm_mapbuf.eo |  2 +-
 src/lib/elementary/elm_notify.c  |  4 +--
 src/lib/elementary/elm_notify.eo |  2 +-
 src/lib/elementary/elm_popup.eo  |  2 +-
 src/lib/elementary/elm_scroller.c|  4 +--
 src/lib/elementary/elm_scroller.eo   |  2 +-
 src/lib/elementary/elm_table.c   |  4 +--
 src/lib/elementary/elm_table.eo  |  2 +-
 src/lib/elementary/elm_widget.c  |  6 ++---
 src/lib/elementary/elm_widget.eo | 43 +---
 src/lib/elementary/elm_widget.h  |  4 +--
 40 files changed, 105 insertions(+), 92 deletions(-)

diff --git a/src/lib/elementary/efl_ui_box.c b/src/lib/elementary/efl_ui_box.c
index 07e3a1bd81..c9e51d1714 100644
--- a/src/lib/elementary/efl_ui_box.c
+++ b/src/lib/elementary/efl_ui_box.c
@@ -344,7 +344,7 @@ _efl_ui_box_efl_pack_linear_pack_before(Eo *obj, 
Efl_Ui_Box_Data *_pd EINA_UNUSE
 
if (!evas_object_box_insert_before(wd->resize_obj, subobj, existing))
  {
-elm_obj_widget_sub_object_del(obj, subobj);
+elm_widget_sub_object_del(obj, subobj);
 return EINA_FALSE;
  }
 
@@ -361,7 +361,7 @@ _efl_ui_box_efl_pack_linear_pack_after(Eo *obj, 
Efl_Ui_Box_Data *_pd EINA_UNUSED
 
if (!evas_object_box_insert_after(wd->resize_obj, subobj, existing))
  {
-elm_obj_widget_sub_object_del(obj, subobj);
+elm_widget_sub_object_del(obj, subobj);
 return EINA_FALSE;
  }
 
diff --git a/src/lib/elementary/efl_ui_button.c 
b/src/lib/elementary/efl_ui_button.c
index ffbf086857..b3a5c5d53d 100644
--- a/src/lib/elementary/efl_ui_button.c
+++ b/src/lib/elementary/efl_ui_button.c
@@ -136,11 +136,11 @@ _efl_ui_button_elm_widget_theme_apply(Eo *obj, 
Efl_Ui_Button_Data *_pd EINA_UNUS
  * is elm.swallow.content, not elm.swallow.icon. Fix that whenever we
  * can changed the theme API */
 EOLIAN static Eina_Bool
-_efl_ui_button_elm_widget_sub_object_del(Eo *obj, Efl_Ui_Button_Data *_pd 
EINA_UNUSED, Evas_Object *sobj)
+_efl_ui_button_elm_widget_widget_sub_object_del(Eo *obj, Efl_Ui_Button_Data 
*_pd EINA_UNUSED, Evas_Object *sobj)
 {
Eina_Bool int_ret = EINA_FALSE;
 
-   int_ret = elm_obj_widget_sub_object_del(efl_super(obj, MY_CLASS), sobj);
+   int_ret = elm_widget_sub_object_del(efl_super(obj, MY_CLASS), sobj);
if (!int_ret) return EINA_FALSE;
 
_icon_signal_emit(obj);
diff --git a/src/lib/elementary/efl_ui_button.eo 
b/src/lib/elementary/efl_ui_button.eo
index 5694a831f7..81fd2504f9 100644
--- a/src/lib/elementary/efl_ui_button.eo
+++ b/src/lib/elementary/efl_ui_button.eo
@@ -20,7 +20,7 @@ class Efl.Ui.Button (Efl.Ui.Layout, Efl.Ui.Clickable, 
Efl.Ui.Autorepeat, Efl.Tex
   Elm.Widget.focus_next_manager_is;
   Elm.Widget.focus_direction_manager_is;
   Elm.Widget.theme_apply;
-  Elm.Widget.sub_object_del;
+  Elm.Widget.widget_sub_object_del;
   

[EGIT] [core/efl] master 05/14: widget: Remove hover_object from EO

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 91f9f414718a8846f9c7ca8f083ae014a4494108
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 17:54:49 2017 +0900

widget: Remove hover_object from EO

Internal

Ref T5363
---
 src/lib/elementary/elm_widget.c  | 7 +--
 src/lib/elementary/elm_widget.eo | 8 
 2 files changed, 5 insertions(+), 10 deletions(-)

diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index 19744a8804..f4c768843f 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -1654,9 +1654,12 @@ _elm_widget_resize_object_set(Eo *obj, 
Elm_Widget_Smart_Data *sd, Eo *sobj)
  * exchanging a hover object, of cleaning the old hover "target"
  * before
  */
-EOLIAN static void
-_elm_widget_hover_object_set(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd, 
Evas_Object *sobj)
+EAPI void
+elm_widget_hover_object_set(Eo *obj, Evas_Object *sobj)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return;
+
if (sd->hover_obj)
  {
 _callbacks_del(sd->hover_obj, obj);
diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_widget.eo
index 55a885e332..79ca3e95e3 100644
--- a/src/lib/elementary/elm_widget.eo
+++ b/src/lib/elementary/elm_widget.eo
@@ -326,14 +326,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
 wstyle: string; [[Widget style]]
  }
   }
-  @property hover_object {
-[[Hover object property]]
- set {
- }
- values {
-sobj: Efl.Canvas.Object @nullable; [[Hover sub object]]
- }
-  }
   /* this is a part api */
   @property domain_part_text_translatable {
 [[Translate domain text part property]]

-- 




[EGIT] [core/efl] master 06/14: widget: Remove 2 focus APIs from EO

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit fcae72b0e3057776bc75d4865cfb51be6eb72a98
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 18:02:42 2017 +0900

widget: Remove 2 focus APIs from EO

They are internal and use an undefined type.
Also, completely deprecated with the new focus manager.

Ref T5363
---
 src/lib/elementary/elm_widget.c  |  8 
 src/lib/elementary/elm_widget.eo | 27 ---
 2 files changed, 4 insertions(+), 31 deletions(-)

diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index f4c768843f..abbae709c7 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -2667,8 +2667,8 @@ _elm_widget_focus_direction_get(const Eo *obj, 
Elm_Widget_Smart_Data *sd, const
  *
  * @ingroup Widget
  */
-EOLIAN static Eina_Bool
-_elm_widget_focus_list_direction_get(const Eo *obj EINA_UNUSED, 
Elm_Widget_Smart_Data *_pd EINA_UNUSED, const Evas_Object *base, const 
Eina_List *items, list_data_get_func_type list_data_get, double degree, 
Evas_Object **direction, Elm_Object_Item **direction_item, double *weight)
+EAPI Eina_Bool
+elm_widget_focus_list_direction_get(const Eo *obj EINA_UNUSED, const 
Evas_Object *base, const Eina_List *items, list_data_get_func_type 
list_data_get, double degree, Evas_Object **direction, Elm_Object_Item 
**direction_item, double *weight)
 {
if (!direction || !weight || !base || !items)
  return EINA_FALSE;
@@ -2849,8 +2849,8 @@ _elm_widget_focus_next_get(const Eo *obj, 
Elm_Widget_Smart_Data *sd, Elm_Focus_D
  *
  * @ingroup Widget
  */
-EOLIAN static Eina_Bool
-_elm_widget_focus_list_next_get(const Eo *obj, Elm_Widget_Smart_Data *_pd 
EINA_UNUSED, const Eina_List *items, list_data_get_func_type list_data_get, 
Elm_Focus_Direction dir, Evas_Object **next, Elm_Object_Item **next_item)
+EAPI Eina_Bool
+elm_widget_focus_list_next_get(const Eo *obj, const Eina_List *items, 
list_data_get_func_type list_data_get, Elm_Focus_Direction dir, Evas_Object 
**next, Elm_Object_Item **next_item)
 {
Eina_List *(*list_next)(const Eina_List *list) = NULL;
Evas_Object *focused_object = NULL;
diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_widget.eo
index 79ca3e95e3..2c9454ef1c 100644
--- a/src/lib/elementary/elm_widget.eo
+++ b/src/lib/elementary/elm_widget.eo
@@ -1,9 +1,6 @@
 import elm_general;
 import efl_input_types;
 
-/* FIXME: This shouldn't be here. */
-type list_data_get_func_type: __undefined_type; [[Elementary list data get 
function type]]
-
 function Efl.Ui.Scrollable_On_Show_Region
 {
params {
@@ -592,19 +589,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
 @in recurse: int; [[Depth in the tree to search for the widget]]
  }
   }
-  focus_list_direction_get @const {
-[[Get focus list direction]]
- return: bool; [[$true on success, $false otherwise]]
- params {
-@in base: const(Efl.Canvas.Object); [[Base object]]
-@in items: const(list); [[Item list]]
-@in list_data_get: list_data_get_func_type; [[Data get function]]
-@in degree: double; [[Degree]]
-@out direction: Efl.Canvas.Object; [[Direction]]
-@out direction_item: Elm.Widget.Item; [[Direction item]]
-@out weight: double; [[Weight]]
- }
-  }
   focused_object_clear {
  [[Clear focused object]]
   }
@@ -694,17 +678,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
  }
  return: bool; [[$true on success, $false otherwise]]
   }
-  focus_list_next_get @const {
-[[Get next item in focus list]]
- return: bool; [[$true on success, $false otherwise]]
- params {
-@in items: const(list); [[Item list]]
-@in list_data_get: list_data_get_func_type; [[Function type]]
-@in dir: Elm.Focus_Direction; [[Focus direction]]
-@out next: Efl.Canvas.Object; [[Next object]]
-@out next_item: Elm.Widget.Item; [[Next item]]
- }
-  }
   focus_mouse_up_handle {
 [[Handle focus mouse up]]
  legacy: null;

-- 




[EGIT] [core/efl] master 09/14: widget: Remove more functions from EO

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit f1ab8c8fee7f422b8a4041c27b0a38fec2375bb8
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 19:51:49 2017 +0900

widget: Remove more functions from EO

Internls

Ref T5363
---
 src/lib/elementary/efl_ui_win.c  |  2 +-
 src/lib/elementary/elm_widget.c  | 20 ++--
 src/lib/elementary/elm_widget.eo | 20 
 3 files changed, 15 insertions(+), 27 deletions(-)

diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index 87cbbbe014..52993e2a9f 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -6602,7 +6602,7 @@ _on_atspi_bus_connected(void *data EINA_UNUSED, const 
Efl_Event *event EINA_UNUS
   * focused object **/
  unsigned int order = 0;
  Evas_Object *target;
- target = elm_obj_widget_newest_focus_order_get(win, , 
EINA_TRUE);
+ target = elm_widget_newest_focus_order_get(win, , 
EINA_TRUE);
  if (target)

elm_interface_atspi_accessible_state_changed_signal_emit(target, 
ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
   }
diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index 962bff97be..8d5c26c087 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -1821,13 +1821,15 @@ elm_widget_tree_unfocusable_get(const Eo *obj)
  *
  * @ingroup Widget
  */
-EOLIAN static Eina_List*
-_elm_widget_can_focus_child_list_get(Eo *obj EINA_UNUSED, 
Elm_Widget_Smart_Data *sd)
+EAPI Eina_List*
+elm_widget_can_focus_child_list_get(const Eo *obj)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
const Eina_List *l;
Eina_List *child_list = NULL;
Evas_Object *child;
 
+   if (!sd) return NULL;
EINA_LIST_FOREACH(sd->subobjs, l, child)
  {
 if (!_elm_widget_is(child)) continue;
@@ -1918,9 +1920,13 @@ _elm_widget_focus_get(Eo *obj EINA_UNUSED, 
Elm_Widget_Smart_Data *sd)
return (sd->focused && sd->top_win_focused);
 }
 
-EOLIAN static Eina_Bool
-_elm_widget_highlight_get(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd)
+/** @internal */
+EAPI Eina_Bool
+elm_widget_highlight_get(const Eo *obj)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return EINA_FALSE;
+
return sd->highlighted;
 }
 
@@ -4387,12 +4393,14 @@ _elm_widget_focus_order_get(Eo *obj EINA_UNUSED, 
Elm_Widget_Smart_Data *sd)
return sd->focus_order;
 }
 
-EOLIAN static Evas_Object*
-_elm_widget_newest_focus_order_get(const Eo *obj, Elm_Widget_Smart_Data *sd, 
unsigned int *newest_focus_order, Eina_Bool can_focus_only)
+EAPI Evas_Object*
+elm_widget_newest_focus_order_get(const Eo *obj, unsigned int 
*newest_focus_order, Eina_Bool can_focus_only)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
const Eina_List *l;
Evas_Object *child, *cur, *best;
 
+   if (!sd) return NULL;
if (!evas_object_visible_get(obj)
|| (elm_widget_disabled_get(obj))
|| (elm_widget_tree_unfocusable_get(obj)))
diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_widget.eo
index 5154ec44f8..31384ea714 100644
--- a/src/lib/elementary/elm_widget.eo
+++ b/src/lib/elementary/elm_widget.eo
@@ -380,24 +380,12 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
 return: int; [[FIXME]]
  }
   }
-  @property can_focus_child_list {
-[[Can focus children list]]
- get {
-return: free(own(list), eina_list_free) 
@warn_unused; [[List of children which can focus]]
- }
-  }
   @property focused_item {
  get {
 [[Get the focused widget item.]]
 return: Elm.Widget.Item; [[Focused item]]
  }
   }
-  @property highlight {
-[[Highlight property]]
- get {
-return: bool; [[$true if widget is highlight, $false otherwise]]
- }
-  }
   @property focused_object {
  [[Current focused object in object tree.]]
  get {
@@ -413,14 +401,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
 label: string; [[Label]]
  }
   }
-  newest_focus_order_get @const {
-[[Get newest focus in order]]
- return: Efl.Canvas.Object; [[Handle to focused widget]]
- params {
-@out newest_focus_order: uint; [[Newest focus order]]
-@in can_focus_only: bool; [[$true only us widgets which can focus, 
$false otherweise]]
- }
-  }
   scroll_hold_push {
  [[Push scroll hold]]
   }

-- 




[EGIT] [core/efl] master 03/14: widget: Remove focus_tree_unfocusable_handle (EO)

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 5e7de75914c1f99e37228b6fb7db309eb3072ab0
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 17:01:03 2017 +0900

widget: Remove focus_tree_unfocusable_handle (EO)

Ref T5363
---
 src/lib/elementary/elm_widget.c  | 9 +
 src/lib/elementary/elm_widget.eo | 3 ---
 src/lib/elementary/elm_widget.h  | 1 -
 3 files changed, 5 insertions(+), 8 deletions(-)

diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index 29ec6946c9..25631b7163 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -110,6 +110,7 @@ _on_sub_obj_del(void *data, const Efl_Event *event);
 static void
 _on_sub_obj_hide(void *data, const Efl_Event *event);
 static void _propagate_event(void *data, const Efl_Event *eo_event);
+static void _elm_widget_focus_tree_unfocusable_handle(Eo *obj);
 
 EFL_CALLBACKS_ARRAY_DEFINE(elm_widget_subitems_callbacks,
   { EFL_EVENT_DEL, _on_sub_obj_del },
@@ -1774,7 +1775,7 @@ _elm_widget_tree_unfocusable_set(Eo *obj, 
Elm_Widget_Smart_Data *sd, Eina_Bool t
tree_unfocusable = !!tree_unfocusable;
if (sd->tree_unfocusable == tree_unfocusable) return;
sd->tree_unfocusable = tree_unfocusable;
-   elm_widget_focus_tree_unfocusable_handle(obj);
+   _elm_widget_focus_tree_unfocusable_handle(obj);
 
//focus state eval on all children
_full_eval_children(obj, sd);
@@ -4333,8 +4334,8 @@ _elm_widget_focus_mouse_up_handle(Eo *obj, 
Elm_Widget_Smart_Data *pd)
  }
 }
 
-EOLIAN static void
-_elm_widget_focus_tree_unfocusable_handle(Eo *obj, Elm_Widget_Smart_Data *_pd 
EINA_UNUSED)
+static void
+_elm_widget_focus_tree_unfocusable_handle(Eo *obj)
 {
if (!elm_widget_parent_get(obj))
  elm_widget_focused_object_clear(obj);
@@ -4345,7 +4346,7 @@ _elm_widget_focus_tree_unfocusable_handle(Eo *obj, 
Elm_Widget_Smart_Data *_pd EI
 EOLIAN static void
 _elm_widget_focus_disabled_handle(Eo *obj, Elm_Widget_Smart_Data *_pd 
EINA_UNUSED)
 {
-   elm_widget_focus_tree_unfocusable_handle(obj);
+   _elm_widget_focus_tree_unfocusable_handle(obj);
 }
 
 EOLIAN static unsigned int
diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_widget.eo
index ab56301dbc..43a69576bd 100644
--- a/src/lib/elementary/elm_widget.eo
+++ b/src/lib/elementary/elm_widget.eo
@@ -509,9 +509,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
 @in dir: Elm.Focus_Direction; [[Focus direction]]
  }
   }
-  focus_tree_unfocusable_handle {
- [[Handle focus tree unfocusable]]
-  }
   focus_custom_chain_prepend {
  [[Prepend object to custom focus chain.
 
diff --git a/src/lib/elementary/elm_widget.h b/src/lib/elementary/elm_widget.h
index 2b1535968f..db7bff407d 100644
--- a/src/lib/elementary/elm_widget.h
+++ b/src/lib/elementary/elm_widget.h
@@ -754,7 +754,6 @@ EAPI Eina_List   *elm_widget_stringlist_get(const char 
*str);
 EAPI void elm_widget_stringlist_free(Eina_List *list);
 EAPI void elm_widget_focus_hide_handle(Evas_Object *obj);
 EAPI void elm_widget_focus_mouse_up_handle(Evas_Object *obj);
-EAPI void elm_widget_focus_tree_unfocusable_handle(Evas_Object 
*obj);
 EAPI void elm_widget_focus_disabled_handle(Evas_Object *obj);
 EAPI unsigned int elm_widget_focus_order_get(const Evas_Object *obj);
 EAPI void elm_widget_activate(Evas_Object *obj, Elm_Activate act);

-- 




[EGIT] [core/efl] master 11/14: widget: Remove highlight_ignore from EO

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 1d39c2d175e24b3b89a3d29305eb1f0e7443c6a4
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 20:12:47 2017 +0900

widget: Remove highlight_ignore from EO
---
 src/lib/elementary/elm_widget.c  | 16 
 src/lib/elementary/elm_widget.eo |  6 --
 2 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index d1ede03ff3..b4e5a48ea6 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -1850,15 +1850,23 @@ elm_widget_can_focus_child_list_get(const Eo *obj)
return child_list;
 }
 
-EOLIAN static void
-_elm_widget_highlight_ignore_set(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data 
*sd, Eina_Bool ignore)
+/** @internal */
+EAPI void
+elm_widget_highlight_ignore_set(Eo *obj, Eina_Bool ignore)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return;
+
sd->highlight_ignore = !!ignore;
 }
 
-EOLIAN static Eina_Bool
-_elm_widget_highlight_ignore_get(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data 
*sd)
+/** @internal */
+EAPI Eina_Bool
+elm_widget_highlight_ignore_get(const Eo *obj)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return EINA_FALSE;
+
return sd->highlight_ignore;
 }
 
diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_widget.eo
index 209fe2dbbe..958b7e2fb1 100644
--- a/src/lib/elementary/elm_widget.eo
+++ b/src/lib/elementary/elm_widget.eo
@@ -223,12 +223,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
 th: ptr(Elm.Theme) @nullable; [[Elementary theme]]
  }
   }
-  @property highlight_ignore {
- [[Highlight ignore]]
- values {
-ignore: bool; [[$true if highlights are ignored, $false otherwise]]
- }
-  }
   @property theme_object @beta {
 [[Theme object property]]
  set {

-- 




[EGIT] [core/efl] master 10/14: widget: Reshuffle EO file for clarity

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 3f5f675c7465058a2c531a3c55afbfece019b0e8
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 20:11:49 2017 +0900

widget: Reshuffle EO file for clarity

Also marks theme.set/get as beta.

Ref T5363
---
 src/lib/elementary/elm_widget.c  |  22 ++
 src/lib/elementary/elm_widget.eo | 465 ---
 2 files changed, 262 insertions(+), 225 deletions(-)

diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index 8d5c26c087..d1ede03ff3 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -8,6 +8,7 @@
 #define ELM_WIDGET_ITEM_PROTECTED
 #define EFL_CANVAS_OBJECT_BETA
 #define EFL_INPUT_EVENT_PROTECTED
+#define ELM_WIDGET_BETA
 
 #include 
 
@@ -3674,6 +3675,13 @@ _elm_widget_theme_set(Eo *obj, Elm_Widget_Smart_Data 
*sd, Elm_Theme *th)
  }
 }
 
+/* beta in eo */
+EAPI void
+elm_widget_theme_set(Evas_Object *obj, Elm_Theme *th)
+{
+   elm_obj_widget_theme_set(obj, th);
+}
+
 EOLIAN static void
 _elm_widget_part_text_set(Eo *obj, Elm_Widget_Smart_Data *_pd EINA_UNUSED, 
const char *part, const char *label)
 {
@@ -3941,6 +3949,13 @@ _elm_widget_theme_get(Eo *obj EINA_UNUSED, 
Elm_Widget_Smart_Data *sd)
return sd->theme;
 }
 
+/* beta in eo */
+EAPI Elm_Theme *
+elm_widget_theme_get(const Evas_Object *obj)
+{
+   return elm_obj_widget_theme_get(obj);
+}
+
 EOLIAN static Efl_Ui_Theme_Apply
 _elm_widget_style_set(Eo *obj, Elm_Widget_Smart_Data *sd, const char *style)
 {
@@ -4074,6 +4089,13 @@ _elm_widget_theme_object_set(Eo *obj, 
Elm_Widget_Smart_Data *sd, Evas_Object *ed
return ret;
 }
 
+/* beta in eo */
+EAPI Efl_Ui_Theme_Apply
+elm_widget_theme_object_set(Evas_Object *obj, Evas_Object *edj, const char 
*wname, const char *welement, const char *wstyle)
+{
+   return elm_obj_widget_theme_object_set(obj, edj, wname, welement, wstyle);
+}
+
 static void
 _convert(Efl_Dbg_Info *info, Eina_Iterator *ptr_list)
 {
diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_widget.eo
index 31384ea714..209fe2dbbe 100644
--- a/src/lib/elementary/elm_widget.eo
+++ b/src/lib/elementary/elm_widget.eo
@@ -149,7 +149,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
  }
   }
   // FIXME: focus_allow? can_focus? focusable?
-  // FIXME: should it be protected? i.e. only set by the widget itself?
   @property focus_allow {
  [[The ability for a widget to be focused.
 
@@ -217,95 +216,98 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
  }
   }
 
-  /* Not sure if the following are internal only? */
-  @property on_show_region_hook {
- [[Region hook on show property]]
- set {}
- values {
-func: Efl.Ui.Scrollable_On_Show_Region @nullable; [[Region hook 
function]]
- }
-  }
-
-  @property drag_lock_y {
-[[Lock the Y axis from being dragged]]
- values {
-lock: bool; [[$true if the Y axis is locked, $false otherwise]]
- }
-  }
-  @property focus_highlight_style {
- [[Control the widget focus highlight style.]]
- set {
-return: bool; [[$true on success, $false otherwise.]]
- }
- get {
- }
- values {
-style: string; [[The name of the focus highlight style.]]
- }
-  }
-  @property theme {
+  /* Theme API: Not bound to EO */
+  @property theme @beta {
 [[Widget theme]]
  values {
 th: ptr(Elm.Theme) @nullable; [[Elementary theme]]
  }
   }
   @property highlight_ignore {
-[[Highlight ignore]]
+ [[Highlight ignore]]
  values {
 ignore: bool; [[$true if highlights are ignored, $false otherwise]]
  }
   }
-  @property focus_custom_chain {
- [[A custom chain of objects to pass focus.
-
-   Note: On focus cycle, only will be evaluated children of this 
container.]]
+  @property theme_object @beta {
+[[Theme object property]]
  set {
-[[This function overwrites any previous custom focus chain within
-  the list of objects. The previous list will be deleted and this 
list
-  will be managed by elementary. After it is set, don't modify 
it.]]
-values {
-   objs: list; [[Chain of objects to pass 
focus]]
-}
+return: Efl.Ui.Theme.Apply; [[Theme apply]]
  }
- get {
-values {
-   objs: const(list); [[Chain of objects]]
-}
+ values {
+edj: Efl.Canvas.Object; [[Edje object]]
+wname: string; [[Widget name]]
+welement: string; [[Widget element]]
+wstyle: string; 

[EGIT] [core/efl] master 01/14: widget: Remove tooltip_add/del from EO

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit ec264c500248f9026c398571e9dc7f3eea671685
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 16:04:49 2017 +0900

widget: Remove tooltip_add/del from EO

It's pretty much an internal function.
NOTE: Tooltip API is not bound to EO (yet).

Ref T5363
---
 src/lib/elementary/elm_code_widget_private.h |  2 --
 src/lib/elementary/elm_widget.c  | 14 ++
 src/lib/elementary/elm_widget.eo |  7 ---
 src/lib/elementary/elm_widget.h  |  3 +++
 4 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/src/lib/elementary/elm_code_widget_private.h 
b/src/lib/elementary/elm_code_widget_private.h
index ebedec3ad7..d9e071c246 100644
--- a/src/lib/elementary/elm_code_widget_private.h
+++ b/src/lib/elementary/elm_code_widget_private.h
@@ -61,8 +61,6 @@ void _elm_code_widget_delete(Elm_Code_Widget *widget);
 
 void _elm_code_widget_tooltip_text_set(Evas_Object *widget, const char *text);
 
-void _elm_code_widget_tooltip_add(Evas_Object *widget);
-
 EAPI Elm_Code_Widget_Selection_Data 
*elm_code_widget_selection_normalized_get(Evas_Object *widget);
 
 void _elm_code_widget_selection_delete_no_undo(Elm_Code_Widget *widget);
diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index bfd0094cca..eb3fc6dc73 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -3929,15 +3929,21 @@ _elm_widget_style_get(Eo *obj EINA_UNUSED, 
Elm_Widget_Smart_Data *sd)
return ret;
 }
 
-EOLIAN static void
-_elm_widget_tooltip_add(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd, 
Elm_Tooltip *tt)
+EAPI void
+elm_widget_tooltip_add(Eo *obj, Elm_Tooltip *tt)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return;
+
sd->tooltips = eina_list_append(sd->tooltips, tt);
 }
 
-EOLIAN static void
-_elm_widget_tooltip_del(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd, 
Elm_Tooltip *tt)
+EAPI void
+elm_widget_tooltip_del(Eo *obj, Elm_Tooltip *tt)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return;
+
sd->tooltips = eina_list_remove(sd->tooltips, tt);
 }
 
diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_widget.eo
index b01005a554..02e0f9e6ed 100644
--- a/src/lib/elementary/elm_widget.eo
+++ b/src/lib/elementary/elm_widget.eo
@@ -23,7 +23,6 @@ enum Elm.Activate
back, [[Activate back]]
 }
 
-struct Elm.Tooltip; [[Elementary tooltip]]
 struct @extern Elm.Theme; [[Elementary theme]]
 
 abstract Elm.Widget (Efl.Canvas.Group, Elm.Interface.Atspi_Accessible,
@@ -635,12 +634,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
   scroll_freeze_pop {
  [[Pop scroller freeze]]
   }
-  tooltip_del {
-[[Delet widget tooltip]]
- params {
-@in tt: ptr(Elm.Tooltip); [[Tooltip to be deleted]]
- }
-  }
   focus_next_get @const {
 [[Get next focus item]]
  return: bool; [[$true on success, $false otherwise]]
diff --git a/src/lib/elementary/elm_widget.h b/src/lib/elementary/elm_widget.h
index 05f2102618..2b1535968f 100644
--- a/src/lib/elementary/elm_widget.h
+++ b/src/lib/elementary/elm_widget.h
@@ -489,6 +489,9 @@ typedef struct _Elm_Action Elm_Action;
 /** Internal type for mouse cursors */
 typedef struct _Elm_Cursor Elm_Cursor;
 
+/** Internal type for tooltips */
+typedef struct _Elm_Tooltip Elm_Tooltip;
+
 #define ELM_ACCESS_DONE  -1   /* sentence done - send done event here 
*/
 #define ELM_ACCESS_CANCEL-2   /* stop reading immediately */
 

-- 




[EGIT] [core/efl] master 07/14: widget: Remove highlight_in_theme from EO

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 8a20251795317a948f5e72d8fcd996b1e5983984
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 19:25:44 2017 +0900

widget: Remove highlight_in_theme from EO

Removes EO APIs:
 - highlight_in_theme
 - access_highlight_in_theme

Ref T5363
---
 src/lib/elementary/elm_widget.c  | 32 
 src/lib/elementary/elm_widget.eo | 12 
 2 files changed, 24 insertions(+), 20 deletions(-)

diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index abbae709c7..26b676f708 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -1856,9 +1856,13 @@ _elm_widget_highlight_ignore_get(Eo *obj EINA_UNUSED, 
Elm_Widget_Smart_Data *sd)
return sd->highlight_ignore;
 }
 
-EOLIAN static void
-_elm_widget_highlight_in_theme_set(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data 
*sd, Eina_Bool highlight)
+/** @internal */
+EAPI void
+elm_widget_highlight_in_theme_set(Eo *obj, Eina_Bool highlight)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return;
+
sd->highlight_in_theme = !!highlight;
/* FIXME: if focused, it should switch from one mode to the other */
 }
@@ -1875,21 +1879,33 @@ _elm_widget_highlight_in_theme_update(Eo *obj)
  }
 }
 
-EOLIAN static Eina_Bool
-_elm_widget_highlight_in_theme_get(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data 
*sd)
+/** @internal */
+EAPI Eina_Bool
+elm_widget_highlight_in_theme_get(const Eo *obj)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return EINA_FALSE;
+
return sd->highlight_in_theme;
 }
 
-EOLIAN static void
-_elm_widget_access_highlight_in_theme_set(Eo *obj EINA_UNUSED, 
Elm_Widget_Smart_Data *sd, Eina_Bool highlight)
+/** @internal */
+EAPI void
+elm_widget_access_highlight_in_theme_set(Eo *obj, Eina_Bool highlight)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return;
+
sd->access_highlight_in_theme = !!highlight;
 }
 
-EOLIAN static Eina_Bool
-_elm_widget_access_highlight_in_theme_get(Eo *obj EINA_UNUSED, 
Elm_Widget_Smart_Data *sd)
+/** @internal */
+EAPI Eina_Bool
+elm_widget_access_highlight_in_theme_get(const Eo *obj)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return EINA_FALSE;
+
return sd->access_highlight_in_theme;
 }
 
diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_widget.eo
index 2c9454ef1c..ed2b337445 100644
--- a/src/lib/elementary/elm_widget.eo
+++ b/src/lib/elementary/elm_widget.eo
@@ -273,12 +273,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
 }
  }
   }
-  @property highlight_in_theme {
-[[Highlight in theme property]]
- values {
-highlight: bool; [[$true if widget gets hightlight, $false 
otherwise]]
- }
-  }
   @property access_info {
 [[Accessibility information]]
  values {
@@ -291,12 +285,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
 lock: bool; [[$true if drag is locked on X axis, $false otherwise]]
  }
   }
-  @property access_highlight_in_theme {
- [[Accessibility highlight in theme]]
- values {
-highlight: bool; [[$true if highlighted, $false otherwise]]
- }
-  }
   @property focus_region_show_mode {
  [[Control the focus_region_show mode.]]
  values {

-- 




[EGIT] [core/efl] master 02/14: widget: Rename top to widget_top (EO)

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 53c966b79044bb4b78c058072b3baa63cfb62f68
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 16:24:05 2017 +0900

widget: Rename top to widget_top (EO)

Ref T5363
---
 src/lib/elementary/elm_widget.c  |  8 ++---
 src/lib/elementary/elm_widget.eo | 64 ++--
 2 files changed, 45 insertions(+), 27 deletions(-)

diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index eb3fc6dc73..29ec6946c9 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -1913,16 +1913,14 @@ _elm_widget_focused_object_get(Eo *obj, 
Elm_Widget_Smart_Data *sd)
 }
 
 EOLIAN static Evas_Object*
-_elm_widget_top_get(Eo *obj, Elm_Widget_Smart_Data *sd)
+_elm_widget_widget_top_get(Eo *obj, Elm_Widget_Smart_Data *sd)
 {
if (sd->parent_obj)
  {
-Evas_Object *ret = NULL;
 if (!efl_isa(sd->parent_obj, ELM_WIDGET_CLASS)) return NULL;
-ret = elm_obj_widget_top_get((Eo *) sd->parent_obj);
-return ret;
+return elm_obj_widget_top_get(sd->parent_obj);
  }
-   return (Evas_Object *)obj;
+   return obj;
 }
 
 EAPI Eina_Bool
diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_widget.eo
index 02e0f9e6ed..ab56301dbc 100644
--- a/src/lib/elementary/elm_widget.eo
+++ b/src/lib/elementary/elm_widget.eo
@@ -177,6 +177,48 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
 can_focus: bool; [[Whether the object is focusable.]]
  }
   }
+  @property widget_parent @protected {
+ [[The internal parent of this widget.
+
+   @Elm.Widget objects have a parent hierarchy that may differ slightly
+   from their @Efl.Object or @Efl.Canvas.Object hierarchy. This is
+   meant for internal handling.
+
+   See also @.widget_top.
+ ]]
+ set {}
+ get {
+legacy: elm_widget_parent_get; /* internal in legacy */
+ }
+ values {
+parent: Elm.Widget @nullable; [[Widget parent object]]
+ }
+  }
+  @property widget_top {
+ [[Root widget in the widget hierarchy.
+
+   This returns the top widget, in terms of widget hierarchy. This is
+   usually a window ($Efl.Ui.Win). This function walks the list of
+   @.widget_parent.
+
+   If this widget has no parent (in terms of widget hierarchy) this
+   will return $null.
+
+   Note: This may not be a display manager window in case of nested
+   canvases. If a "real" window is required, then you might want to
+   verify that the returned object is a $Efl.Ui.Win_Inlined, and then
+   get $Efl.Ui.Win_Inlined.inlined_parent to find an object in the
+   master window.
+
+   See also @.widget_parent.
+ ]]
+ get {
+legacy: elm_widget_top_get; /* internal in legacy */
+ }
+ values {
+top: Elm.Widget; [[Top widget, usually a window.]]
+ }
+  }
 
   /* Not sure if the following are internal only? */
   @property on_show_region_hook {
@@ -252,16 +294,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
 highlight: bool; [[$true if widget gets hightlight, $false 
otherwise]]
  }
   }
-  @property widget_parent @protected {
- [[The internal widget parent]]
- set {}
- get {
-legacy: elm_widget_parent_get; /* Needed because we don't do 
duplication removal for legacy names. */
- }
- values {
-parent: Efl.Canvas.Object @nullable; [[Widget parent object]]
- }
-  }
   @property access_info {
 [[Accessibility information]]
  values {
@@ -385,12 +417,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
 h: int; [[Height]]
  }
   }
-  @property top {
-[[Top widget property]]
- get {
-return: Efl.Canvas.Object; [[Top widget]]
- }
-  }
   @property focus_order {
 [[Focus order property]]
  get {
@@ -732,12 +758,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
 @in sobj: Efl.Canvas.Object; [[Object to be deleted]]
  }
   }
-  tooltip_add {
-[[Add tooltip to widget]]
- params {
-@in tt: ptr(Elm.Tooltip); [[Tooltip]]
- }
-  }
   focus_region_show @const {
  [[Show focus region]]
   }

-- 




[EGIT] [core/efl] master 04/14: widget: Remove tree_unfocusable from EO

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 1a65b7018d5cbff8f7b7441574499a6bc5fa5925
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 17:27:04 2017 +0900

widget: Remove tree_unfocusable from EO

It was deprecated (in elm_object API) a very long time ago.

Ref T5363
---
 src/lib/elementary/elm_widget.c  | 14 ++
 src/lib/elementary/elm_widget.eo | 12 
 2 files changed, 10 insertions(+), 16 deletions(-)

diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index 25631b7163..19744a8804 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -1769,9 +1769,12 @@ _full_eval_children(Eo *obj, Elm_Widget_Smart_Data *sd)
  *
  * @ingroup Widget
  */
-EOLIAN static void
-_elm_widget_tree_unfocusable_set(Eo *obj, Elm_Widget_Smart_Data *sd, Eina_Bool 
tree_unfocusable)
+EAPI void
+elm_widget_tree_unfocusable_set(Eo *obj, Eina_Bool tree_unfocusable)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return;
+
tree_unfocusable = !!tree_unfocusable;
if (sd->tree_unfocusable == tree_unfocusable) return;
sd->tree_unfocusable = tree_unfocusable;
@@ -1791,9 +1794,12 @@ _elm_widget_tree_unfocusable_set(Eo *obj, 
Elm_Widget_Smart_Data *sd, Eina_Bool t
  *
  * @ingroup Widget
  */
-EOLIAN static Eina_Bool
-_elm_widget_tree_unfocusable_get(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data 
*sd)
+EAPI Eina_Bool
+elm_widget_tree_unfocusable_get(const Eo *obj)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return EINA_FALSE;
+
return sd->tree_unfocusable;
 }
 
diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_widget.eo
index 43a69576bd..55a885e332 100644
--- a/src/lib/elementary/elm_widget.eo
+++ b/src/lib/elementary/elm_widget.eo
@@ -246,18 +246,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
 style: string; [[The name of the focus highlight style.]]
  }
   }
-  @property tree_unfocusable {
- [[Make the elementary object and its children to be unfocusable (or 
focusable).
-   If the tree is set as unfocusable, newest focused object which is 
not in
-   this tree will get focus.
-   This API can be helpful for an object to be deleted.
-   When an object will be deleted soon, it and its children may not 
want to
-   get focus (by focus reverting or by other focus controls).
-   Then, just use this API before deleting.]]
- values {
-tree_unfocusable: bool; [[$true for unfocusable, $false for 
focusable.]]
- }
-  }
   @property theme {
 [[Widget theme]]
  values {

-- 




[EGIT] [core/efl] master 12/14: widget: Remove name_find from EO

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 876ad2481515b8f1e5317d6db77b1de865e92920
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 20:32:58 2017 +0900

widget: Remove name_find from EO

This is already implemented at the Efl.Object level, under the same
name: "name_find".

Ref T5363
---
 src/lib/elementary/elm_widget.c  | 19 ++-
 src/lib/elementary/elm_widget.eo |  9 -
 2 files changed, 6 insertions(+), 22 deletions(-)

diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index b4e5a48ea6..7911e5bc24 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -4246,23 +4246,23 @@ elm_widget_type_check(const Evas_Object *obj,
return EINA_FALSE;
 }
 
-static Evas_Object *
-_widget_name_find(const Evas_Object *obj,
-  const char *name,
-  int recurse)
+/** @internal */
+EAPI Evas_Object *
+elm_widget_name_find(const Eo *obj, const char *name, int recurse)
 {
Eina_List *l;
Evas_Object *child;
const char *s;
INTERNAL_ENTRY NULL;
 
+   if (!name) return NULL;
if (!_elm_widget_is(obj)) return NULL;
EINA_LIST_FOREACH(sd->subobjs, l, child)
  {
 s = evas_object_name_get(child);
 if ((s) && (!strcmp(s, name))) return child;
 if ((recurse != 0) &&
-((child = _widget_name_find(child, name, recurse - 1
+((child = elm_widget_name_find(child, name, recurse - 1
   return child;
  }
if (sd->hover_obj)
@@ -4270,19 +4270,12 @@ _widget_name_find(const Evas_Object *obj,
 s = evas_object_name_get(sd->hover_obj);
 if ((s) && (!strcmp(s, name))) return sd->hover_obj;
 if ((recurse != 0) &&
-((child = _widget_name_find(sd->hover_obj, name, recurse - 1
+((child = elm_widget_name_find(sd->hover_obj, name, recurse - 1
   return child;
  }
return NULL;
 }
 
-EOLIAN static Evas_Object*
-_elm_widget_name_find(const Eo *obj, Elm_Widget_Smart_Data *_pd EINA_UNUSED, 
const char *name, int recurse)
-{
-   if (!name) return NULL;
-   return _widget_name_find(obj, name, recurse);
-}
-
 /**
  * @internal
  *
diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_widget.eo
index 958b7e2fb1..729530223b 100644
--- a/src/lib/elementary/elm_widget.eo
+++ b/src/lib/elementary/elm_widget.eo
@@ -270,15 +270,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
  }
   }
 
-  /* Probably not required with eo find */
-  name_find @const {
-[[Find widget by name]]
- return: Efl.Canvas.Object; [[Widget]]
- params {
-@in name: string; [[Widget name]]
-@in recurse: int; [[Depth in the tree to search for the widget]]
- }
-  }
   sub_object_add {
  [['Virtual' function handling sub objects being added.]]
  return: bool; [[$true on success, $false otherwise]]

-- 




[EGIT] [core/efl] master 08/14: widget: Remove some more functions from EO

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 1d62f9dc7c67b9cc9fb6ce128576b87f6e81d9d4
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 19:39:19 2017 +0900

widget: Remove some more functions from EO

Internals...

Ref T5363
---
 src/lib/elementary/elm_widget.c  | 15 +++
 src/lib/elementary/elm_widget.eo | 14 --
 2 files changed, 11 insertions(+), 18 deletions(-)

diff --git a/src/lib/elementary/elm_widget.c b/src/lib/elementary/elm_widget.c
index 26b676f708..962bff97be 100644
--- a/src/lib/elementary/elm_widget.c
+++ b/src/lib/elementary/elm_widget.c
@@ -1732,9 +1732,12 @@ _elm_widget_focus_allow_get(Eo *obj EINA_UNUSED, 
Elm_Widget_Smart_Data *sd)
return sd->can_focus;
 }
 
-EOLIAN static Eina_Bool
-_elm_widget_child_can_focus_get(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd)
+EAPI Eina_Bool
+elm_widget_child_can_focus_get(const Eo *obj)
 {
+   Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return EINA_FALSE;
+
return sd->child_can_focus;
 }
 
@@ -3128,9 +3131,13 @@ _elm_widget_focus_next_item_set(Eo *obj EINA_UNUSED, 
Elm_Widget_Smart_Data *sd,
  sd->item_focus_left = next_item;
 }
 
-EOLIAN static void
-_elm_widget_parent_highlight_set(Eo *obj, Elm_Widget_Smart_Data *sd, Eina_Bool 
highlighted)
+/** @internal */
+EAPI void
+elm_widget_parent_highlight_set(Eo *obj, Eina_Bool highlighted)
 {
+   Elm_Widget_Smart_Data *sd =efl_data_scope_safe_get(obj, MY_CLASS);
+   if (!sd) return;
+
highlighted = !!highlighted;
 
Evas_Object *o = elm_widget_parent_get(obj);
diff --git a/src/lib/elementary/elm_widget.eo b/src/lib/elementary/elm_widget.eo
index ed2b337445..5154ec44f8 100644
--- a/src/lib/elementary/elm_widget.eo
+++ b/src/lib/elementary/elm_widget.eo
@@ -291,14 +291,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
 mode: Elm.Focus.Region.Show_Mode; [[Focus region show mode]]
  }
   }
-  @property parent_highlight {
-[[Parent highlight property]]
- set {
- }
- values {
-highlighted: bool; [[$true if highlighted, $false otherwise]]
- }
-  }
   @property theme_object {
 [[Theme object property]]
  set {
@@ -358,12 +350,6 @@ abstract Elm.Widget (Efl.Canvas.Group, 
Elm.Interface.Atspi_Accessible,
 enable: bool; [[$true if item loop is enabled, $false otherwise]]
  }
   }
-  @property child_can_focus {
-[[Child can focus property]]
- get {
-return: bool; [[$true if child can focus, $false otherwise]]
- }
-  }
   @property scroll_freeze {
 [[Scroll freeze property]]
  get {

-- 




[EGIT] [core/efl] master 13/14: eo: Mark name_find as const

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit c071fd453b01809d4cf6adec4fa2b839e63ef32a
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 20:33:54 2017 +0900

eo: Mark name_find as const

The search should not require a mutable object.
See the previous commit on elm_widget.
---
 src/lib/eo/efl_object.eo   | 2 +-
 src/lib/eo/eo_base_class.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/eo/efl_object.eo b/src/lib/eo/efl_object.eo
index 5e7e1c31ca..d1dd10c4f9 100644
--- a/src/lib/eo/efl_object.eo
+++ b/src/lib/eo/efl_object.eo
@@ -164,7 +164,7 @@ abstract Efl.Object ()
  [[Called at the end of #eo_add. Should not be called, just 
overridden.]]
  return: Efl.Object; [[The new object created, can be NULL if 
aborting]]
   }
-  name_find {
+  name_find @const {
  [[Find a child object with the given name and return it.
 
The search string can be a glob (shell style, using *). It can also
diff --git a/src/lib/eo/eo_base_class.c b/src/lib/eo/eo_base_class.c
index 5b3801abb2..da33114736 100644
--- a/src/lib/eo/eo_base_class.c
+++ b/src/lib/eo/eo_base_class.c
@@ -448,7 +448,7 @@ _ismultiglob(const char *match)
 }
 
 EOLIAN static Efl_Object *
-_efl_object_name_find(Eo *obj EINA_UNUSED, Efl_Object_Data *pd, const char 
*search)
+_efl_object_name_find(const Eo *obj EINA_UNUSED, Efl_Object_Data *pd, const 
char *search)
 {
Eo *child;
_Eo_Object *child_eo;

-- 




[EGIT] [apps/ephoto] master 01/01: add generated .pot file to ignore so we dont se "untracked files"

2017-08-23 Thread Carsten Haitzler (Rasterman)
raster pushed a commit to branch master.

http://git.enlightenment.org/apps/ephoto.git/commit/?id=ccf497939eb80a327f79a4698bf632cfaa4d9272

commit ccf497939eb80a327f79a4698bf632cfaa4d9272
Author: Carsten Haitzler (Rasterman) 
Date:   Wed Aug 23 18:15:39 2017 +0900

add generated .pot file to ignore so we dont se "untracked files"
---
 .gitignore | 1 +
 1 file changed, 1 insertion(+)

diff --git a/.gitignore b/.gitignore
index e0a7425..d6ada8c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -91,6 +91,7 @@ po/quot.sed
 po/remove-potcdate.sed
 po/remove-potcdate.sin
 po/stamp-po
+po/ephoto.pot
 src/Makefile
 src/Makefile.in
 src/bin/.deps/

-- 




[EGIT] [core/enlightenment] master 01/01: mixer - fix segv on shutdown

2017-08-23 Thread Carsten Haitzler
raster pushed a commit to branch master.

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

commit 638ffe58538478ede9f9000db370ec5e853635e8
Author: Carsten Haitzler (Rasterman) 
Date:   Wed Aug 23 17:39:14 2017 +0900

mixer - fix segv on shutdown

this just got added... dont shutdown actions if no gmixer has been
created.
---
 src/modules/mixer/gadget/mixer.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/modules/mixer/gadget/mixer.c b/src/modules/mixer/gadget/mixer.c
index 680855e16..7fb14e559 100644
--- a/src/modules/mixer/gadget/mixer.c
+++ b/src/modules/mixer/gadget/mixer.c
@@ -1367,10 +1367,10 @@ mixer_shutdown(void)
 free(cm);
  }
 
-   _actions_unregister();
-
if (gmixer_context)
  {
+_actions_unregister();
+
 free(gmixer_context->theme);
 E_FREE(gmixer_context);
  }

-- 




[EGIT] [website/www-content] master 01/01: Wiki page terminology_1_1_0 changed with summary [created] by Boris Faure

2017-08-23 Thread Boris Faure
WWW-www.enlightenment.org pushed a commit to branch master.

http://git.enlightenment.org/website/www-content.git/commit/?id=fb5228f279edd39beb96e761a058124d27317338

commit fb5228f279edd39beb96e761a058124d27317338
Author: Boris Faure 
Date:   Wed Aug 23 01:32:24 2017 -0700

Wiki page terminology_1_1_0 changed with summary [created] by Boris Faure
---
 pages/news/terminology_1_1_0.txt | 48 
 1 file changed, 48 insertions(+)

diff --git a/pages/news/terminology_1_1_0.txt b/pages/news/terminology_1_1_0.txt
new file mode 100644
index ..94234245
--- /dev/null
+++ b/pages/news/terminology_1_1_0.txt
@@ -0,0 +1,48 @@
+=== Terminology 1.1.0 ===
+  * //2017-08-23 - by Boris Faure//
+
+The team is pleased to release Terminology 1.1.0!
+
+Terminology is still the best terminal emulator written with EFL, as described 
on its [[ https://www.enlightenment.org/about-terminology | about page ]].
+
+You can download the tarball either as 
[[https://download.enlightenment.org/rel/apps/terminology/terminology-1.1.0.tar.xz
 | terminology-1.1.0.tar.xz]] or as 
[[https://download.enlightenment.org/rel/apps/terminology/terminology-1.1.0.tar.gz|terminology-1.1.0.tar.gz]].
+
+This release introduces the following changes:
+
+Additions:
+- Double-click on tab title to change it
+- Add option to disable focus-in/out animations and visuals
+- Add option to set current window size as default.
+- Support Right/Left Margins
+- Support for the ''DECERA''/''DECFRA'' escape codes
+- Move cursor to position on ''Click+Alt''
+- Add bindings (''Alt+Up/Down/Left/Right'') to move around panes
+
+Improvements:
+- Fallback to ''~'' or ''/'' when creating new terminal if current 
directory is not available
+- Support only ''efl >= 1.8.0''
+- Harden escape codes decoding
+- Update all terms of a window when changing font (name or size)
+- Remove teamwork feature
+
+Fixes:
+- Correctly handle the ''DECOM'', ''DECSTBM'', ''DECSLRM'' escape codes
+- Fix crash when resizing and there are tabs in content
+- Fix mouse motion and mouse button reporting
+- Set window sizing to 1px-step when having visible tabs
+
+sha1sum:
+
+''db6ba37e28140bf224da34990d9f54560d1327aa  terminology-1.1.0.tar.gz''
+
+''d59ebee38e63cc7d3013ab98eed252eafe6d98af  terminology-1.1.0.tar.xz''
+
+sha256sum:
+
+''8c49f3e5340fe73588f48a3823905cecd9c341c213aed031c2aa752e9ba04551  
terminology-1.1.0.tar.gz''
+
+''eb9136e487ab9e6ff3c98173919b5ad105626434d096dafecd18392fc40c348f  
terminology-1.1.0.tar.xz''
+
+{{:blank.png?nolink&100|}}
+~~DISCUSSIONS~~
+

-- 




[EGIT] [core/efl] master 01/01: elm init - fix init seq and quicklaunch as we shut down x before evas

2017-08-23 Thread Carsten Haitzler
raster pushed a commit to branch master.

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

commit 10ea93226215c4ab9c185b5a481052e728a26256
Author: Carsten Haitzler (Rasterman) 
Date:   Wed Aug 23 17:23:57 2017 +0900

elm init - fix init seq and quicklaunch as we shut down x before evas

... and others. this leads to crashes if x ops are busy in a thread or
engine evas thread shutdown happens to call engine calls that then do
x calls... should apply in general to wl too. fixes some segv's on
shutdown given the new gl thread patches.

@fix
---
 src/lib/elementary/elm_main.c | 39 ++-
 1 file changed, 18 insertions(+), 21 deletions(-)

diff --git a/src/lib/elementary/elm_main.c b/src/lib/elementary/elm_main.c
index 743a9820fd..cc38bfe3b1 100644
--- a/src/lib/elementary/elm_main.c
+++ b/src/lib/elementary/elm_main.c
@@ -737,7 +737,6 @@ elm_quicklaunch_init(intargc,
 
eet_init();
ecore_init();
-   edje_init();
 
 #ifdef HAVE_ELEMENTARY_EMAP
emap_init();
@@ -794,26 +793,26 @@ elm_quicklaunch_sub_init(intargc,
if (_elm_sub_init_count > 1) return _elm_sub_init_count;
if (quicklaunch_on)
  {
-_elm_config_init();
-#ifdef SEMI_BROKEN_QUICKLAUNCH
-return _elm_sub_init_count;
-#endif
+//_elm_config_init();
+//#ifdef SEMI_BROKEN_QUICKLAUNCH
+//return _elm_sub_init_count;
+//#endif
  }
 
if (!quicklaunch_on)
  {
 ecore_app_args_set(argc, (const char **)argv);
-evas_init();
+ecore_evas_init(); // FIXME: check errors
+edje_init();
+elm_color_class_init();
 _elm_module_init();
 _elm_config_init();
 _elm_config_sub_init();
-ecore_evas_init(); // FIXME: check errors
 ecore_imf_init();
 ecore_con_init();
 ecore_con_url_init();
 _elm_prefs_initted = _elm_prefs_init();
 _elm_ews_wm_init();
-elm_color_class_init();
  }
return _elm_sub_init_count;
 }
@@ -825,23 +824,25 @@ elm_quicklaunch_sub_shutdown(void)
if (_elm_sub_init_count > 0) return _elm_sub_init_count;
if (quicklaunch_on)
  {
-#ifdef SEMI_BROKEN_QUICKLAUNCH
-return _elm_sub_init_count;
-#endif
+//#ifdef SEMI_BROKEN_QUICKLAUNCH
+//return _elm_sub_init_count;
+//#endif
  }
if (!quicklaunch_on)
  {
 _elm_win_shutdown();
-_elm_module_shutdown();
-if (_elm_prefs_initted)
-  _elm_prefs_shutdown();
 _elm_ews_wm_shutdown();
 ecore_con_url_shutdown();
 ecore_con_shutdown();
 ecore_imf_shutdown();
+edje_shutdown();
 ecore_evas_shutdown();
 _elm_config_sub_shutdown();
-evas_shutdown();
+_elm_config_shutdown();
+_elm_module_shutdown();
+if (_elm_prefs_initted)
+  _elm_prefs_shutdown();
+elm_color_class_shutdown();
  }
return _elm_sub_init_count;
 }
@@ -864,9 +865,6 @@ elm_quicklaunch_shutdown(void)
ELM_SAFE_FREE(_elm_lib_dir, eina_stringshare_del);
ELM_SAFE_FREE(_elm_appname, free);
 
-   _elm_config_shutdown();
-   elm_color_class_shutdown();
-
ELM_SAFE_FREE(_elm_exit_handler, ecore_event_handler_del);
 
_elm_theme_shutdown();
@@ -878,15 +876,14 @@ elm_quicklaunch_shutdown(void)
_elm_unneed_elocation();
_elm_unneed_ethumb();
_elm_unneed_web();
-   eio_shutdown();
-   ecore_file_shutdown();
 
 #ifdef HAVE_ELEMENTARY_EMAP
emap_shutdown();
 #endif
_elm_emotion_shutdown();
 
-   edje_shutdown();
+   ecore_file_shutdown();
+   eio_init();
ecore_shutdown();
eet_shutdown();
 

-- 




Re: [E-devel] [EGIT] [core/efl] master 01/12: evas: Make all EO canvas objects visible by default

2017-08-23 Thread The Rasterman
On Wed, 23 Aug 2017 14:00:16 +0900 Jean-Philippe André  said:

> 2017-08-23 13:56 GMT+09:00 Carsten Haitzler :
> 
> > On Wed, 23 Aug 2017 13:23:26 +0900 Jean-Philippe André 
> > said:
> >
> > > Hi,
> > >
> > > 2017-08-21 19:31 GMT+09:00 Al Poole :
> > >
> > > > Auto-fill and auto-show would save having to do that manually 95% of
> > time
> > > >  (in my tertiary experience) I've found when using efl. It frustrating
> > > > having to do that almost each time with each object.
> > > >
> > >
> > > I've pushed another patch for EXPAND by default.
> > > Did you really mean FILL (align), but without EXPAND (weight)?
> > > I'm not convinced FILL is better, as it depends more on each widget (eg.
> > a
> > > button probably shouldn't be FILL while a box might need to be).
> > >
> > > In any case please let me know your thoughts, and play around with the EO
> > > API if you can.
> >
> > if expand (weight) is 1 by default fill should be on (align -1) too..
> >
> 
> Right. I can do that and test a bit to see if that's an improvement.

cool. i think it is important due to things like scrollers... :)

> > > On Mon, Aug 21, 2017 at 11:25 AM, Jean-Philippe André  > >
> > > > wrote:
> > > >
> > > > > 2017-08-21 18:28 GMT+09:00 Carsten Haitzler :
> > > > >
> > > > > > On Fri, 4 Aug 2017 11:26:00 +0900 Jean-Philippe André <
> > > > j...@videolan.org
> > > > > >
> > > > > > said:
> > > > > >
> > > > > > i'm really not so sure objects should be visible by default. ami
> > > > already
> > > > > > had
> > > > > > issues with this and found it bad/odd and asked me about it...
> > > > > >
> > > > >
> > > > > This is absolutely not the feedback I got from him.
> > > > > Remember that it's trivial to hide an object at creation time if you
> > > > don't
> > > > > want it to be shown.
> > > > >
> > > > > Please report bugs if you can find any.
> > > > >
> > > > >
> > > > > > Hi,
> > > > > > >
> > > > > > > Here's a slightly experimental patch to make EO object visible by
> > > > > > default.
> > > > > > > In order to not break everything, the visibility is delayed
> > until the
> > > > > > > beginning of render. This means that an object may appear as
> > > > invisible
> > > > > > > (visible_get() returns false) even though it will in fact be
> > visible.
> > > > > > >
> > > > > > > This definitely helps cutting lines of code when writing apps.
> > > > > > >
> > > > > > > This should in theory only affect EO objects (i.e. created with
> > > > > > efl_add()).
> > > > > > >
> > > > > > > Please let me know if that works for you, or causes problems, or
> > is a
> > > > > > > terrible idea in itself.
> > > > > > > I have a similar patch for EXPAND by default (but unlike
> > visible, not
> > > > > > > delayed).
> > > > > > >
> > > > > > > Thanks,
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > 2017-08-04 11:02 GMT+09:00 Jean-Philippe ANDRÉ <
> > j...@videolan.org>:
> > > > > > >
> > > > > > > > jpeg pushed a commit to branch master.
> > > > > > > >
> > > > > > > > http://git.enlightenment.org/core/efl.git/commit/?id=
> > > > > > > > fd9cf1d3b628f70d66ec85a4f2433c675d9ad243
> > > > > > > >
> > > > > > > > commit fd9cf1d3b628f70d66ec85a4f2433c675d9ad243
> > > > > > > > Author: Jean-Philippe Andre 
> > > > > > > > Date:   Thu Jul 6 16:29:20 2017 +0900
> > > > > > > >
> > > > > > > > evas: Make all EO canvas objects visible by default
> > > > > > > >
> > > > > > > > All legacy objects remain invisible by default. Any call to
> > > > > > > > visible_set() will prevent the automatic show() to happen.
> > > > > > > >
> > > > > > > > show() will be done just before render time, which may be a
> > > > > > > > bit too late in order to propagate the necessary changes.
> > > > > > > >
> > > > > > > > This may break some things where some objects are created
> > > > > > > > internally using efl_add() instead of the legacy API, and
> > > > > > > > the intent was not to show the object.
> > > > > > > >
> > > > > > > > @feature
> > > > > > > > ---
> > > > > > > >  src/lib/evas/canvas/efl_canvas_object.eo |  1 +
> > > > > > > >  src/lib/evas/canvas/evas_object_image.c  |  2 +-
> > > > > > > >  src/lib/evas/canvas/evas_object_main.c   | 36
> > > > > > > > +---
> > > > > > > >  src/lib/evas/canvas/evas_render.c| 25
> > > > > ++
> > > > > > > >  src/lib/evas/include/evas_private.h  | 10 +++--
> > > > > > > >  5 files changed, 68 insertions(+), 6 deletions(-)
> > > > > > > >
> > > > > > > > diff --git a/src/lib/evas/canvas/efl_canvas_object.eo
> > > > > > > > b/src/lib/evas/canvas/efl_canvas_object.eo
> > > > > > > > index a284a43e93..b49a42addf 100644
> > > > > > > > --- a/src/lib/evas/canvas/efl_canvas_object.eo
> > > > > > > > +++ b/src/lib/evas/canvas/efl_canvas_object.eo
> > > > > > > > @@ -660,6 +660,7 @@ 

Re: [E-devel] Orphaned Tasks

2017-08-23 Thread Pierre Couderc

On 08/23/2017 12:53 AM, Mike Blumenkrantz wrote:

Hi,

It has come to my attention that there are users who file tickets with no
assignee or no projects attached.

Mmm,  I am one of those...
I fill as much as I can to be useful and help detect bugs. But I have no 
idea to what project a problem is related, so I prefer not to fill it.


--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
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/12: evas: Make all EO canvas objects visible by default

2017-08-23 Thread Jean-Philippe André
So I pushed that other patch for expand+fill.
From the few uses in elm_test it removes some lines of code.

2017-08-23 15:34 GMT+09:00 Amitesh Singh :

>
>
> On Mon, Aug 21, 2017 at 7:45 PM, Carsten Haitzler 
> wrote:
>
>> On Mon, 21 Aug 2017 19:25:59 +0900 Jean-Philippe André 
>> said:
>>
>> > 2017-08-21 18:28 GMT+09:00 Carsten Haitzler :
>> >
>> > > On Fri, 4 Aug 2017 11:26:00 +0900 Jean-Philippe André <
>> j...@videolan.org>
>> > > said:
>> > >
>> > > i'm really not so sure objects should be visible by default. ami
>> already
>> > > had
>> > > issues with this and found it bad/odd and asked me about it...
>> > >
>> >
>> > This is absolutely not the feedback I got from him.
>> > Remember that it's trivial to hide an object at creation time if you
>> don't
>> > want it to be shown.
>>
>> he asked me "what? why is it visible by default? eh?" and i told him to
>> talk to
>> you he was surprised/bemused
>>
>>
> I was surprised initially (because i am an EFL dinosaur) but i can see
> good things from this too.
> I think it would be good thing for those who learns EFL for first time.
>
> +1 from me!
>
> > Please report bugs if you can find any.
>> >
>> >
>> > > Hi,
>> > > >
>> > > > Here's a slightly experimental patch to make EO object visible by
>> > > default.
>> > > > In order to not break everything, the visibility is delayed until
>> the
>> > > > beginning of render. This means that an object may appear as
>> invisible
>> > > > (visible_get() returns false) even though it will in fact be
>> visible.
>> > > >
>> > > > This definitely helps cutting lines of code when writing apps.
>> > > >
>> > > > This should in theory only affect EO objects (i.e. created with
>> > > efl_add()).
>> > > >
>> > > > Please let me know if that works for you, or causes problems, or is
>> a
>> > > > terrible idea in itself.
>> > > > I have a similar patch for EXPAND by default (but unlike visible,
>> not
>> > > > delayed).
>> > > >
>> > > > Thanks,
>> > > >
>> > > >
>> > > >
>> > > > 2017-08-04 11:02 GMT+09:00 Jean-Philippe ANDRÉ :
>> > > >
>> > > > > jpeg pushed a commit to branch master.
>> > > > >
>> > > > > http://git.enlightenment.org/core/efl.git/commit/?id=
>> > > > > fd9cf1d3b628f70d66ec85a4f2433c675d9ad243
>> > > > >
>> > > > > commit fd9cf1d3b628f70d66ec85a4f2433c675d9ad243
>> > > > > Author: Jean-Philippe Andre 
>> > > > > Date:   Thu Jul 6 16:29:20 2017 +0900
>> > > > >
>> > > > > evas: Make all EO canvas objects visible by default
>> > > > >
>> > > > > All legacy objects remain invisible by default. Any call to
>> > > > > visible_set() will prevent the automatic show() to happen.
>> > > > >
>> > > > > show() will be done just before render time, which may be a
>> > > > > bit too late in order to propagate the necessary changes.
>> > > > >
>> > > > > This may break some things where some objects are created
>> > > > > internally using efl_add() instead of the legacy API, and
>> > > > > the intent was not to show the object.
>> > > > >
>> > > > > @feature
>> > > > > ---
>> > > > >  src/lib/evas/canvas/efl_canvas_object.eo |  1 +
>> > > > >  src/lib/evas/canvas/evas_object_image.c  |  2 +-
>> > > > >  src/lib/evas/canvas/evas_object_main.c   | 36
>> > > > > +---
>> > > > >  src/lib/evas/canvas/evas_render.c| 25
>> ++
>> > > > >  src/lib/evas/include/evas_private.h  | 10 +++--
>> > > > >  5 files changed, 68 insertions(+), 6 deletions(-)
>> > > > >
>> > > > > diff --git a/src/lib/evas/canvas/efl_canvas_object.eo
>> > > > > b/src/lib/evas/canvas/efl_canvas_object.eo
>> > > > > index a284a43e93..b49a42addf 100644
>> > > > > --- a/src/lib/evas/canvas/efl_canvas_object.eo
>> > > > > +++ b/src/lib/evas/canvas/efl_canvas_object.eo
>> > > > > @@ -660,6 +660,7 @@ abstract Efl.Canvas.Object (Efl.Object,
>> Efl.Gfx,
>> > > > > Efl.Gfx.Stack, Efl.Animator,
>> > > > > implements {
>> > > > >Efl.Object.constructor;
>> > > > >Efl.Object.destructor;
>> > > > > +  Efl.Object.finalize;
>> > > > >Efl.Object.provider_find;
>> > > > >Efl.Gfx.visible { get; set; }
>> > > > >Efl.Gfx.color { get; set; }
>> > > > > diff --git a/src/lib/evas/canvas/evas_object_image.c
>> > > > > b/src/lib/evas/canvas/evas_object_image.c
>> > > > > index 9d1440573d..269898c6b2 100644
>> > > > > --- a/src/lib/evas/canvas/evas_object_image.c
>> > > > > +++ b/src/lib/evas/canvas/evas_object_image.c
>> > > > > @@ -1443,7 +1443,7 @@ _efl_canvas_image_internal_
>> > > efl_object_destructor(Eo
>> > > > > *eo_obj, Evas_Image_Data *o
>> > > > >  {
>> > > > > Evas_Object_Protected_Data *obj = efl_data_scope_get(eo_obj,
>> > > > > EFL_CANVAS_OBJECT_CLASS);
>> > > > >
>> > > > > -   if (obj->legacy)
>> > > > > +   if (obj->legacy.ctor)
>> > > > >   

[EGIT] [core/efl] master 06/08: gfx: Remove size hint request (EO)

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 29bacf59887b5b47f08a68c5c7b20647f8dd244f
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 15:16:22 2017 +0900

gfx: Remove size hint request (EO)

This hint is simply not supported by any container.
Add the EO API back if the containers support it.

Ref T5487
---
 src/lib/efl/interfaces/efl_gfx_size_hint.eo | 18 --
 src/lib/evas/canvas/efl_canvas_object.eo|  1 -
 src/lib/evas/canvas/evas_object_main.c  | 38 -
 src/lib/evas/include/evas_inline.x  |  2 +-
 4 files changed, 16 insertions(+), 43 deletions(-)

diff --git a/src/lib/efl/interfaces/efl_gfx_size_hint.eo 
b/src/lib/efl/interfaces/efl_gfx_size_hint.eo
index 7431e3658e..fad4376edc 100644
--- a/src/lib/efl/interfaces/efl_gfx_size_hint.eo
+++ b/src/lib/efl/interfaces/efl_gfx_size_hint.eo
@@ -111,24 +111,6 @@ interface Efl.Gfx.Size.Hint
 h: int; [[Integer to use as the maximum height hint.]]
  }
   }
-  @property hint_request {
- [[Hints for the object's optimum size.
-
-   This is not a size enforcement in any way, it's just a hint
-   that should be used whenever appropriate.
-
-   Values 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. 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.]]
-h: int; [[Integer to use as the preferred height hint.]]
- }
-  }
   @property hint_restricted_min {
  [[Internal hints for an object's minimum size.
 
diff --git a/src/lib/evas/canvas/efl_canvas_object.eo 
b/src/lib/evas/canvas/efl_canvas_object.eo
index cf92e6f2c7..6eb174caab 100644
--- a/src/lib/evas/canvas/efl_canvas_object.eo
+++ b/src/lib/evas/canvas/efl_canvas_object.eo
@@ -683,7 +683,6 @@ abstract Efl.Canvas.Object (Efl.Object, Efl.Gfx, 
Efl.Gfx.Stack, Efl.Animator,
   Efl.Gfx.Size.Hint.hint_min { get; set; }
   Efl.Gfx.Size.Hint.hint_max { get; set; }
   Efl.Gfx.Size.Hint.hint_margin { get; set; }
-  Efl.Gfx.Size.Hint.hint_request { get; set; }
   Efl.Gfx.Size.Hint.hint_weight { get; set; }
   Efl.Input.Interface.seat_event_filter { get; set; }
   Efl.Loop_User.loop { get; }
diff --git a/src/lib/evas/canvas/evas_object_main.c 
b/src/lib/evas/canvas/evas_object_main.c
index f129cfb5bd..794dc4a105 100644
--- a/src/lib/evas/canvas/evas_object_main.c
+++ b/src/lib/evas/canvas/evas_object_main.c
@@ -1486,9 +1486,12 @@ _efl_canvas_object_efl_gfx_size_hint_hint_max_set(Eo 
*eo_obj, Evas_Object_Protec
evas_object_inform_call_changed_size_hints(eo_obj);
 }
 
-EOLIAN static void
-_efl_canvas_object_efl_gfx_size_hint_hint_request_get(Eo *eo_obj EINA_UNUSED, 
Evas_Object_Protected_Data *obj, Evas_Coord *w, Evas_Coord *h)
+EAPI void
+evas_object_size_hint_request_get(const Eo *eo_obj, Evas_Coord *w, Evas_Coord 
*h)
 {
+   Evas_Object_Protected_Data *obj = EVAS_OBJECT_DATA_SAFE_GET(eo_obj);
+   EVAS_OBJECT_DATA_VALID_CHECK(obj);
+
if ((!obj->size_hints) || obj->delete_me)
  {
 if (w) *w = 0;
@@ -1499,11 +1502,12 @@ 
_efl_canvas_object_efl_gfx_size_hint_hint_request_get(Eo *eo_obj EINA_UNUSED, Ev
if (h) *h = obj->size_hints->request.h;
 }
 
-EOLIAN static void
-_efl_canvas_object_efl_gfx_size_hint_hint_request_set(Eo *eo_obj, 
Evas_Object_Protected_Data *obj, Evas_Coord w, Evas_Coord h)
+EAPI void
+evas_object_size_hint_request_set(Eo *eo_obj, Evas_Coord w, Evas_Coord h)
 {
-   if (obj->delete_me)
- return;
+   Evas_Object_Protected_Data *obj = EVAS_OBJECT_DATA_SAFE_GET(eo_obj);
+   EVAS_OBJECT_DATA_ALIVE_CHECK(obj);
+
evas_object_async_block(obj);
if (EINA_UNLIKELY(!obj->size_hints))
  {
@@ -2081,7 +2085,7 @@ _efl_canvas_object_efl_object_dbg_info_get(Eo *eo_obj, 
Evas_Object_Protected_Dat
unsigned int m;
int r, g, b, a;
int w, h;
-   int requestw, requesth;
+   //int requestw, requesth;
int minw, minh;
int maxw, maxh;
int x, y;
@@ -2101,7 +2105,7 @@ _efl_canvas_object_efl_object_dbg_info_get(Eo *eo_obj, 
Evas_Object_Protected_Dat
scale = efl_canvas_object_scale_get(eo_obj);
efl_gfx_size_hint_restricted_min_get(eo_obj, , );
efl_gfx_size_hint_max_get(eo_obj, , );
-   efl_gfx_size_hint_request_get(eo_obj, , );
+   //efl_gfx_size_hint_request_get(eo_obj, , );
efl_gfx_size_hint_align_get(eo_obj, , );
efl_gfx_size_hint_weight_get(eo_obj, , );
efl_gfx_color_get(eo_obj, , , , );
@@ -2137,9 +2141,9 @@ _efl_canvas_object_efl_object_dbg_info_get(Eo *eo_obj, 
Evas_Object_Protected_Dat
EFL_DBG_INFO_APPEND(node, "w", EINA_VALUE_TYPE_INT, maxw);
  

[EGIT] [core/efl] master 08/08: elm_test: Remove calls to fill+expand (EO)

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 87aa053e58f82473ff10b877ce61e0df38d7cb4a
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 15:54:03 2017 +0900

elm_test: Remove calls to fill+expand (EO)

Wherever the EO API is used, i.e. efl_add() is used to create evas
objects, we can skip the calls to set fill/expand.

This new set of defaults indeed saves ~60 loc in the tests (out of 115
objects created). I found only 3 cases where the align had to be set
manually (to the old default of 0.5).

See 1a1b8bc45155dcb96129013c4177d742a06434e6
And e8b7f5f255ce37fbc47dbe38bd379bf1e824e0d2

Ref T5301
---
 src/bin/elementary/test_bg.c|  6 +++---
 src/bin/elementary/test_box.c   | 14 +++---
 src/bin/elementary/test_code.c  | 12 
 src/bin/elementary/test_efl_gfx_map.c   |  2 --
 src/bin/elementary/test_efl_ui_text.c   |  5 -
 src/bin/elementary/test_evas_map.c  |  2 --
 src/bin/elementary/test_evas_mask.c | 11 +--
 src/bin/elementary/test_evas_snapshot.c | 13 +
 src/bin/elementary/test_events.c|  4 
 src/bin/elementary/test_gfx_filters.c   | 11 ++-
 src/bin/elementary/test_grid_static.c   |  3 +--
 src/bin/elementary/test_panes.c |  3 +--
 src/bin/elementary/test_photocam.c  |  4 +---
 src/bin/elementary/test_ui_box.c|  1 -
 src/bin/elementary/test_ui_grid.c   |  3 ---
 src/bin/elementary/test_win_inline.c|  1 -
 16 files changed, 17 insertions(+), 78 deletions(-)

diff --git a/src/bin/elementary/test_bg.c b/src/bin/elementary/test_bg.c
index ff043cde29..8ffbd65780 100644
--- a/src/bin/elementary/test_bg.c
+++ b/src/bin/elementary/test_bg.c
@@ -345,14 +345,14 @@ test_bg_window(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event
elm_colorselector_palette_color_add(efl_added, 0, 64, 64, 64),
elm_colorselector_palette_color_add(efl_added, 0, 0, 0, 0),
efl_event_callback_add(efl_added, 
ELM_COLORSELECTOR_EVENT_COLOR_ITEM_SELECTED, _colorsel_cb, win),
-   efl_gfx_size_hint_weight_set(efl_added, 1.0, 1.0),
+   efl_gfx_size_hint_align_set(efl_added, 0.5, 0.5),
efl_pack(box, efl_added));
 
snprintf(buf, sizeof(buf), "%s/images/plant_01.jpg", 
elm_app_data_dir_get());
efl_add(EFL_UI_IMAGE_CLASS, win,
efl_file_set(efl_added, buf, NULL),
efl_gfx_size_hint_min_set(efl_added, 64, 64),
-   efl_gfx_size_hint_weight_set(efl_added, 1.0, 1.0),
+   efl_gfx_size_hint_align_set(efl_added, 0.5, 0.5),
efl_event_callback_add(efl_added, EFL_UI_EVENT_CLICKED, _file_cb, 
win),
efl_pack(box, efl_added));
 
@@ -360,7 +360,7 @@ test_bg_window(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event
efl_add(EFL_UI_IMAGE_CLASS, win,
efl_file_set(efl_added, buf, NULL),
efl_gfx_size_hint_min_set(efl_added, 64, 64),
-   efl_gfx_size_hint_weight_set(efl_added, 1.0, 1.0),
+   efl_gfx_size_hint_align_set(efl_added, 0.5, 0.5),
efl_event_callback_add(efl_added, EFL_UI_EVENT_CLICKED, _image_cb, 
win),
efl_pack(box, efl_added));
 
diff --git a/src/bin/elementary/test_box.c b/src/bin/elementary/test_box.c
index c75025d186..82e5968604 100644
--- a/src/bin/elementary/test_box.c
+++ b/src/bin/elementary/test_box.c
@@ -895,37 +895,29 @@ test_box_stack(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED,
 
efl_gfx_color_set(efl_part(win, "background"), 24, 24, 64, 255);
 
-   /* stacked box, with items in the center-bottom */
+   /* stacked box, with items in the center-bottom. its default weight makes
+* the window resizable */
bx = efl_add(EFL_UI_BOX_STACK_CLASS, win,
 efl_pack_align_set(efl_added, 0.5, 1.0));
efl_content_set(win, bx);
 
/* stretched rectangle */
o = efl_add(EFL_CANVAS_RECTANGLE_CLASS, win,
-   efl_gfx_color_set(efl_added, 0, 64, 128, 255),
-   efl_gfx_size_hint_align_set(efl_added, EFL_GFX_SIZE_HINT_FILL, 
EFL_GFX_SIZE_HINT_FILL),
-   efl_gfx_size_hint_weight_set(efl_added, 
EFL_GFX_SIZE_HINT_EXPAND, EFL_GFX_SIZE_HINT_EXPAND));
+   efl_gfx_color_set(efl_added, 0, 64, 128, 255));
efl_pack(bx, o);
 
/* rectangle with a max size */
o = efl_add(EFL_CANVAS_RECTANGLE_CLASS, win,
efl_gfx_color_set(efl_added, 64, 128, 64, 255),
-   efl_gfx_size_hint_align_set(efl_added, EFL_GFX_SIZE_HINT_FILL, 
EFL_GFX_SIZE_HINT_FILL),
-   efl_gfx_size_hint_weight_set(efl_added, 
EFL_GFX_SIZE_HINT_EXPAND, EFL_GFX_SIZE_HINT_EXPAND),
efl_gfx_size_hint_max_set(efl_added, 128, 20));
efl_pack(bx, o);
 
/* image with a forced min size */
snprintf(buf, sizeof(buf), "%s/images/logo.png", 

[EGIT] [core/efl] master 01/08: test: Fix EO API usage (direction)

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit d28510a37bcf993466644d0f0a4d94c9fe949a29
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 13:30:33 2017 +0900

test: Fix EO API usage (direction)
---
 src/bin/elementary/test_gfx_filters.c |  3 +--
 src/bin/elementary/test_ui_grid.c | 14 +++---
 2 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/src/bin/elementary/test_gfx_filters.c 
b/src/bin/elementary/test_gfx_filters.c
index bc54e113f7..a3b4d2e7c0 100644
--- a/src/bin/elementary/test_gfx_filters.c
+++ b/src/bin/elementary/test_gfx_filters.c
@@ -431,11 +431,10 @@ test_gfx_filters(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *eve
 elm_colorselector_palette_color_add(o, colors[k].r, colors[k].g, 
colors[k].b, colors[k].a);
}
 
-   /* FIXME: No panes in EO APIs. */
o = split = efl_add(EFL_UI_PANES_CLASS, win,
efl_gfx_size_hint_weight_set(efl_added, 1.0, 1.0),
efl_gfx_size_hint_align_set(efl_added, -1.0, -1.0),
-   efl_orientation_set(efl_added, EFL_ORIENT_HORIZONTAL));
+   efl_ui_direction_set(efl_added, EFL_UI_DIR_HORIZONTAL));
efl_pack(box, split);
 
{
diff --git a/src/bin/elementary/test_ui_grid.c 
b/src/bin/elementary/test_ui_grid.c
index 1a84b40aae..0cd6837fb5 100644
--- a/src/bin/elementary/test_ui_grid.c
+++ b/src/bin/elementary/test_ui_grid.c
@@ -205,7 +205,7 @@ test_ui_grid(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_i
 
/* weights radio group */
bx = efl_add(EFL_UI_BOX_CLASS, win,
-   efl_orientation_set(efl_added, EFL_ORIENT_DOWN));
+efl_ui_direction_set(efl_added, EFL_UI_DIR_DOWN));
efl_gfx_size_hint_align_set(bx, 0, -1);
efl_pack(hbox, bx);
 
@@ -267,7 +267,7 @@ test_ui_grid(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_i
 
/* min size setter */
bx = efl_add(EFL_UI_BOX_CLASS, win,
-   efl_orientation_set(efl_added, EFL_ORIENT_DOWN));
+efl_ui_direction_set(efl_added, EFL_UI_DIR_DOWN));
efl_gfx_size_hint_align_set(bx, 0.5, -1);
efl_gfx_size_hint_weight_set(bx, 0, 1);
efl_pack(hbox, bx);
@@ -293,7 +293,7 @@ test_ui_grid(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_i
 
/* inner box padding */
bx = efl_add(EFL_UI_BOX_CLASS, win,
-   efl_orientation_set(efl_added, EFL_ORIENT_DOWN));
+efl_ui_direction_set(efl_added, EFL_UI_DIR_DOWN));
efl_gfx_size_hint_align_set(bx, 0, -1);
efl_gfx_size_hint_weight_set(bx, 0, 1);
efl_pack(hbox, bx);
@@ -319,7 +319,7 @@ test_ui_grid(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_i
 
/* outer margin */
bx = efl_add(EFL_UI_BOX_CLASS, win,
-   efl_orientation_set(efl_added, EFL_ORIENT_DOWN));
+efl_ui_direction_set(efl_added, EFL_UI_DIR_DOWN));
efl_gfx_size_hint_align_set(bx, 0, -1);
efl_gfx_size_hint_weight_set(bx, 0, 1);
efl_pack(hbox, bx);
@@ -345,7 +345,7 @@ test_ui_grid(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_i
 
/* button margins */
bx = efl_add(EFL_UI_BOX_CLASS, win,
-   efl_orientation_set(efl_added, EFL_ORIENT_DOWN));
+efl_ui_direction_set(efl_added, EFL_UI_DIR_DOWN));
efl_gfx_size_hint_align_set(bx, 0, -1);
efl_gfx_size_hint_weight_set(bx, 1, 1);
efl_pack(hbox, bx);
@@ -371,7 +371,7 @@ test_ui_grid(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_i
 
/* ro info */
bx = efl_add(EFL_UI_BOX_CLASS, win,
-   efl_orientation_set(efl_added, EFL_ORIENT_DOWN));
+efl_ui_direction_set(efl_added, EFL_UI_DIR_DOWN));
efl_gfx_size_hint_align_set(bx, 0, -1);
efl_gfx_size_hint_weight_set(bx, 1, 1);
efl_pack(hbox, bx);
@@ -551,7 +551,7 @@ test_ui_grid_linear(void *data EINA_UNUSED, Evas_Object 
*obj EINA_UNUSED,
 
/* ro info */
bx = efl_add(EFL_UI_BOX_CLASS, win,
-   efl_orientation_set(efl_added, EFL_ORIENT_DOWN));
+efl_ui_direction_set(efl_added, EFL_UI_DIR_DOWN));
efl_gfx_size_hint_align_set(bx, 0, -1);
efl_gfx_size_hint_weight_set(bx, 1, 1);
efl_pack(hbox, bx);

-- 




[EGIT] [core/efl] master 05/08: js: Fix javascript generator's compilation

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 20e6c2e9087f60c286fe779218d85d6155205347
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 13:51:40 2017 +0900

js: Fix javascript generator's compilation

javascript bindings are broken, because of function pointers but it
seems something else as well (Eina_Slice?).
---
 src/bin/eolian_js/main.cc | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/bin/eolian_js/main.cc b/src/bin/eolian_js/main.cc
index f3f1a75a5c..796aa8693f 100644
--- a/src/bin/eolian_js/main.cc
+++ b/src/bin/eolian_js/main.cc
@@ -311,9 +311,9 @@ _function_return_is_missing(Eolian_Function const* func, 
Eolian_Function_Type fu
 }
 
 bool
-_type_is_generatable(const Eolian_Type *tp, bool add_pointer)
+_type_is_generatable(const Eolian_Type *tp, bool add_pointer, 
Eolian_C_Type_Type c_type_type)
 {
-   std::string c_type = eolian_type_c_type_get(tp);
+   std::string c_type = eolian_type_c_type_get(tp, c_type_type);
 
if (add_pointer)
c_type += " *";
@@ -343,7 +343,7 @@ _function_is_generatable(const Eolian_Function *function, 
Eolian_Function_Type f
  {
 auto tp = ::eolian_parameter_type_get(parameter);
 bool add_pointer = eolian_parameter_direction_get(parameter) != 
EOLIAN_IN_PARAM;
-if (!_type_is_generatable(tp, add_pointer))
+if (!_type_is_generatable(tp, add_pointer, EOLIAN_C_TYPE_PARAM))
   return false;
 
 if (eolian_type_is_ptr(tp) && _function_belongs_to(function, 
"Efl.Object"))
@@ -352,7 +352,7 @@ _function_is_generatable(const Eolian_Function *function, 
Eolian_Function_Type f
 
auto rtp = ::eolian_function_return_type_get(function, ftp);
 
-   return rtp ? _type_is_generatable(rtp, false) : true;
+   return rtp ? _type_is_generatable(rtp, false, EOLIAN_C_TYPE_RETURN) : true;
 }
 
 bool

-- 




[EGIT] [core/efl] master 02/08: efl: Remove Efl.Orientation horiz & vert (EO)

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit db4950ba2f2489335583324fa3c646d1dc4393bc
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 13:30:45 2017 +0900

efl: Remove Efl.Orientation horiz & vert (EO)

They are now replaced by Efl.Ui.Dir

NOTE: The name Efl.Ui.Dir is not satisfactory. Maybe we should use
Direction_Type or Direction_Value?

Ref T5870
---
 src/lib/edje/edje_part_box.c   | 12 ++--
 src/lib/edje/efl_canvas_layout_internal_box.eo |  4 ++--
 src/lib/efl/interfaces/efl_orientation.eo  |  2 --
 3 files changed, 8 insertions(+), 10 deletions(-)

diff --git a/src/lib/edje/edje_part_box.c b/src/lib/edje/edje_part_box.c
index 6e537fecd2..b7b8080c85 100644
--- a/src/lib/edje/edje_part_box.c
+++ b/src/lib/edje/edje_part_box.c
@@ -195,23 +195,23 @@ 
_efl_canvas_layout_internal_box_efl_container_content_count(Eo *obj, void *_pd E
RETURN_VAL(evas_obj_box_count(pd->rp->object));
 }
 
-EOLIAN static Efl_Orient
-_efl_canvas_layout_internal_box_efl_orientation_orientation_get(Eo *obj, void 
*_pd EINA_UNUSED)
+EOLIAN static Efl_Ui_Dir
+_efl_canvas_layout_internal_box_efl_ui_direction_direction_get(Eo *obj, void 
*_pd EINA_UNUSED)
 {
PROXY_DATA_GET(obj, pd);
const Edje_Part_Description_Box *desc =
  (Edje_Part_Description_Box *) pd->rp->chosen_description;
 
if (!desc || !desc->box.layout)
- RETURN_VAL(EFL_ORIENT_NONE);
+ RETURN_VAL(EFL_UI_DIR_DEFAULT);
 
if (!strncmp(desc->box.layout, "vertical", 8))
- RETURN_VAL(EFL_ORIENT_VERTICAL);
+ RETURN_VAL(EFL_UI_DIR_VERTICAL);
else if (!strncmp(desc->box.layout, "horizontal", 10))
- RETURN_VAL(EFL_ORIENT_HORIZONTAL);
+ RETURN_VAL(EFL_UI_DIR_HORIZONTAL);
 
WRN("unknown orientation '%s'", desc->box.layout);
-   RETURN_VAL(EFL_ORIENT_NONE);
+   RETURN_VAL(EFL_UI_DIR_DEFAULT);
 }
 
 #include "efl_canvas_layout_internal_box.eo.c"
diff --git a/src/lib/edje/efl_canvas_layout_internal_box.eo 
b/src/lib/edje/efl_canvas_layout_internal_box.eo
index 4e96a61ccf..e062c61f09 100644
--- a/src/lib/edje/efl_canvas_layout_internal_box.eo
+++ b/src/lib/edje/efl_canvas_layout_internal_box.eo
@@ -1,5 +1,5 @@
 class Efl.Canvas.Layout_Internal.Box (Efl.Canvas.Layout_Internal, 
Efl.Pack.Linear,
-  Efl.Orientation)
+  Efl.Ui.Direction)
 {
[[Represents a Box created as part of a layout.
 
@@ -23,6 +23,6 @@ class Efl.Canvas.Layout_Internal.Box 
(Efl.Canvas.Layout_Internal, Efl.Pack.Linea
   Efl.Pack.Linear.pack_content_get;
   Efl.Pack.Linear.pack_unpack_at;
   Efl.Pack.Linear.pack_index_get;
-  Efl.Orientation.orientation { get; }
+  Efl.Ui.Direction.direction { get; [[Returns $default if unknown.]] }
}
 }
diff --git a/src/lib/efl/interfaces/efl_orientation.eo 
b/src/lib/efl/interfaces/efl_orientation.eo
index fb5f1d8056..8ed69aac55 100644
--- a/src/lib/efl/interfaces/efl_orientation.eo
+++ b/src/lib/efl/interfaces/efl_orientation.eo
@@ -15,8 +15,6 @@ enum Efl.Orient
right = 90, [[Orient right, rotate 90 degrees counter clock-wise.]]
down = 180, [[Orient down, rotate 180 degrees.]]
left = 270, [[Orient left, rotate 90 degrees clock-wise.]]
-   vertical = 0, [[Orient vertical]]
-   horizontal = 90 [[Orient horizontal]]
 }
 
 interface Efl.Orientation

-- 




[EGIT] [core/efl] master 03/08: js: Fix some js examples usage of orient API

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit cec45f616a1bc8c00f9f59fc7073ac9a6a21112b
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 13:39:10 2017 +0900

js: Fix some js examples usage of orient API

This was not tested. How to test js?
---
 src/examples/elementary/box_js_example_02.js  | 8 
 src/examples/elementary/button_example_01.js  | 6 +++---
 src/examples/elementary/radio_example_01.js   | 2 +-
 src/examples/elementary/slider_example.js | 4 ++--
 src/examples/elementary/twitter_example_01.js | 4 ++--
 5 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/src/examples/elementary/box_js_example_02.js 
b/src/examples/elementary/box_js_example_02.js
index d18ef82ff2..a0d276dc27 100644
--- a/src/examples/elementary/box_js_example_02.js
+++ b/src/examples/elementary/box_js_example_02.js
@@ -27,8 +27,8 @@ win.setContent(bigbox);
 
 bx = new efl.Efl.Ui.Box(win);
 bx.setHintWeight(1.0, 1.0);
-bx_orient = bx.cast("Efl.Orientation");
-bx_orient.setOrientation(efl.Efl.Orient.VERTICAL);
+bx_orient = bx.cast("Efl.Ui.Direction");
+bx_orient.setOrientation(efl.Efl.Ui.Dir.VERTICAL);
 bigbox.packEnd(bx);
 bx.setVisible(true);
 
@@ -47,8 +47,8 @@ bt.on('clicked', _clear_cb);
 bx = new efl.Efl.Ui.Box(win)
 bx.setHintWeight(1.0, 1.0);
 bx.setHintAlign(-1.0, -1.0);
-bx_orient = bx.cast("Efl.Orientation");
-bx_orient.setOrientation(efl.Efl.Orient.HORIZONTAL);
+bx_orient = bx.cast("Efl.Ui.Direction");
+bx_orient.setDirection(efl.Efl.Ui.Dir.HORIZONTAL);
 bigbox.packEnd(bx);
 bx.setVisible(true);
 
diff --git a/src/examples/elementary/button_example_01.js 
b/src/examples/elementary/button_example_01.js
index b14e427fe7..65c839c478 100644
--- a/src/examples/elementary/button_example_01.js
+++ b/src/examples/elementary/button_example_01.js
@@ -89,7 +89,7 @@ win.setContent(box);
 box.setVisible(true);
 
 box_initial = new efl.Efl.Ui.Box(win);
-box_initial.cast("Efl.Orientation").setOrientation(efl.Efl.Orient.HORIZONTAL);
+box_initial.cast("Efl.Ui.Direction").setDirection(efl.Efl.Ui.Dir.HORIZONTAL);
 box_initial.setHintWeight(1.0, 0.0);
 box.packEnd(box_initial);
 box_initial.setVisible(true);
@@ -114,7 +114,7 @@ btn3.setVisible(true);
 btn3.on('clicked', _btn_options_cb);
 
 box_gap = new efl.Efl.Ui.Box(win);
-box_gap.cast("Efl.Orientation").setOrientation(efl.Efl.Orient.HORIZONTAL);
+box_gap.cast("Efl.Ui.Direction").setDirection(efl.Efl.Ui.Dir.HORIZONTAL);
 box_gap.setHintWeight(1.0, 0.0);
 box.packEnd(box_gap);
 box_gap.setVisible(true);
@@ -151,7 +151,7 @@ icon_up.setIcon("arrow_up");
 setIcon(up, icon_up);
 
 box_inferior = new efl.Efl.Ui.Box(win);
-box_inferior.cast("Efl.Orientation").setOrientation(efl.Efl.Orient.HORIZONTAL);
+box_inferior.cast("Efl.Ui.Direction").setDirection(efl.Efl.Ui.Dir.HORIZONTAL);
 box_inferior.setHintWeight(1.0, 1.0);
 box_inferior.setHintAlign(-1.0, -1.0);
 box.packEnd(box_inferior);
diff --git a/src/examples/elementary/radio_example_01.js 
b/src/examples/elementary/radio_example_01.js
index ebc68217b8..35a235dc30 100644
--- a/src/examples/elementary/radio_example_01.js
+++ b/src/examples/elementary/radio_example_01.js
@@ -10,7 +10,7 @@ win.setText("Radio");
 win.setAutohide(true);
 
 bx = new efl.Efl.Ui.Box(win);
-bx.cast("Efl.Orientation").setOrientation(efl.Efl.Orient.HORIZONTAL);
+bx.cast("Efl.Ui.Direction").setDirection(efl.Efl.Ui.Dir.HORIZONTAL);
 bx.setHintWeight(1.0, 1.0);
 win.setContent(bx);
 bx.setVisible(true);
diff --git a/src/examples/elementary/slider_example.js 
b/src/examples/elementary/slider_example.js
index d64e4dde87..244d51185f 100644
--- a/src/examples/elementary/slider_example.js
+++ b/src/examples/elementary/slider_example.js
@@ -6,7 +6,7 @@ win.setText("Slider Example");
 win.setAutohide(true);
 
 bx = new efl.Efl.Ui.Box(win);
-bx.cast("Efl.Orientation").setOrientation(efl.Efl.Orient.HORIZONTAL);
+bx.cast("Efl.Ui.Direction").setDirection(efl.Efl.Ui.Dir.HORIZONTAL);
 bx.setHintWeight(1.0, 1.0);
 win.setContent(bx);
 bx.setVisible(true);
@@ -66,7 +66,7 @@ sl.setVisible(true);
 
 /* vertical with indicator format func */
 sl = new efl.Elm.Slider(win);
-sl.cast("Efl.Orientation").setOrientation(efl.Efl.Orient.VERTICAL);
+sl.cast("Efl.Ui.Direction").setDirection(efl.Efl.Ui.Dir.VERTICAL);
 //indicator_format = function()
 //  {
 //  indicator = new char[32];
diff --git a/src/examples/elementary/twitter_example_01.js 
b/src/examples/elementary/twitter_example_01.js
index db4945c29d..ad62dc0a6f 100644
--- a/src/examples/elementary/twitter_example_01.js
+++ b/src/examples/elementary/twitter_example_01.js
@@ -34,8 +34,8 @@ tweet_box.setHintAlign(-1.0, -1.0);
 tweet_box.setPackPadding(0.0, 30.0, true);
 box.packEnd(tweet_box);
 
-tweet_box_orient = tweet_box.cast("Efl.Orientation");
-tweet_box_orient.setOrientation(efl.Efl.Orient.VERTICAL);
+tweet_box_orient = 

[EGIT] [core/efl] master 07/08: evas: Set default align to FILL for EO objects

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit e8b7f5f255ce37fbc47dbe38bd379bf1e824e0d2
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 15:23:50 2017 +0900

evas: Set default align to FILL for EO objects

See also 1a1b8bc45155dcb96129013c4177d742a06434e6
---
 src/lib/evas/canvas/evas_object_main.c | 6 +-
 src/lib/evas/include/evas_private.h| 1 +
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/lib/evas/canvas/evas_object_main.c 
b/src/lib/evas/canvas/evas_object_main.c
index 794dc4a105..a237da4ea4 100644
--- a/src/lib/evas/canvas/evas_object_main.c
+++ b/src/lib/evas/canvas/evas_object_main.c
@@ -210,6 +210,9 @@ _efl_canvas_object_efl_object_finalize(Eo *eo_obj, 
Evas_Object_Protected_Data *o
if (!obj->legacy.weight_set)
  efl_gfx_size_hint_weight_set(eo_obj, 1.0, 1.0);
 
+   if (!obj->legacy.align_set)
+ efl_gfx_size_hint_align_set(eo_obj, -1.0, -1.0);
+
if (obj->legacy.visible_set /* && ... */)
  {
 obj->legacy.finalized = EINA_TRUE;
@@ -1605,6 +1608,7 @@ _efl_canvas_object_efl_gfx_size_hint_hint_align_set(Eo 
*eo_obj, Evas_Object_Prot
if (obj->delete_me)
  return;
evas_object_async_block(obj);
+   if (!obj->legacy.align_set) obj->legacy.align_set = 1;
if (EINA_UNLIKELY(!obj->size_hints))
  {
 if (EINA_DBL_EQ(x, 0.5) && EINA_DBL_EQ(y, 0.5)) return;
@@ -1635,10 +1639,10 @@ _efl_canvas_object_efl_gfx_size_hint_hint_weight_get(Eo 
*eo_obj EINA_UNUSED, Eva
 EOLIAN static void
 _efl_canvas_object_efl_gfx_size_hint_hint_weight_set(Eo *eo_obj, 
Evas_Object_Protected_Data *obj, double x, double y)
 {
-   obj->legacy.weight_set = 1;
if (obj->delete_me)
  return;
evas_object_async_block(obj);
+   if (!obj->legacy.weight_set) obj->legacy.weight_set = 1;
if (EINA_UNLIKELY(!obj->size_hints))
  {
 if (EINA_DBL_EQ(x, 0.0) && EINA_DBL_EQ(y, 0.0)) return;
diff --git a/src/lib/evas/include/evas_private.h 
b/src/lib/evas/include/evas_private.h
index eb504fc157..af5a08318f 100644
--- a/src/lib/evas/include/evas_private.h
+++ b/src/lib/evas/include/evas_private.h
@@ -1262,6 +1262,7 @@ struct _Evas_Object_Protected_Data
   Eina_Boolctor : 1; // used legacy constructor
   Eina_Boolvisible_set : 1; // visibility manually set
   Eina_Boolweight_set : 1; // weight manually set
+  Eina_Boolalign_set : 1; // align manually set
   Eina_Boolfinalized : 1; // object fully constructed
} legacy;
 

-- 




[EGIT] [core/efl] master 04/08: ecore: Fix shadow warning (with nodejs enabled)

2017-08-23 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit eb5d9a07ec25239d27451b4f6d34eb21733d25db
Author: Jean-Philippe Andre 
Date:   Wed Aug 23 13:45:24 2017 +0900

ecore: Fix shadow warning (with nodejs enabled)
---
 src/lib/ecore/ecore_main.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/ecore/ecore_main.c b/src/lib/ecore/ecore_main.c
index 8ca2c96293..12e8cf450f 100644
--- a/src/lib/ecore/ecore_main.c
+++ b/src/lib/ecore/ecore_main.c
@@ -2157,8 +2157,8 @@ _ecore_main_loop_uv_prepare(uv_prepare_t* handle 
EINA_UNUSED)
_efl_loop_timer_enable_new();
if (_efl_loop_timers_exists() || t >= 0)
  {
-   double t1 = _efl_loop_timer_next_get();
-   if(t < 0 || (t1 >= 0 && t1 < t)) t = t1;
+   double tnext = _efl_loop_timer_next_get();
+   if (t < 0 || (tnext >= 0 && tnext < t)) t = tnext;
DBG("Should awake after %f", t);

if (t >= 0.0)

-- 




Re: [E-devel] [EGIT] [core/efl] master 01/12: evas: Make all EO canvas objects visible by default

2017-08-23 Thread Amitesh Singh
On Mon, Aug 21, 2017 at 7:45 PM, Carsten Haitzler 
wrote:

> On Mon, 21 Aug 2017 19:25:59 +0900 Jean-Philippe André 
> said:
>
> > 2017-08-21 18:28 GMT+09:00 Carsten Haitzler :
> >
> > > On Fri, 4 Aug 2017 11:26:00 +0900 Jean-Philippe André <
> j...@videolan.org>
> > > said:
> > >
> > > i'm really not so sure objects should be visible by default. ami
> already
> > > had
> > > issues with this and found it bad/odd and asked me about it...
> > >
> >
> > This is absolutely not the feedback I got from him.
> > Remember that it's trivial to hide an object at creation time if you
> don't
> > want it to be shown.
>
> he asked me "what? why is it visible by default? eh?" and i told him to
> talk to
> you he was surprised/bemused
>
>
I was surprised initially (because i am an EFL dinosaur) but i can see good
things from this too.
I think it would be good thing for those who learns EFL for first time.

+1 from me!

> Please report bugs if you can find any.
> >
> >
> > > Hi,
> > > >
> > > > Here's a slightly experimental patch to make EO object visible by
> > > default.
> > > > In order to not break everything, the visibility is delayed until the
> > > > beginning of render. This means that an object may appear as
> invisible
> > > > (visible_get() returns false) even though it will in fact be visible.
> > > >
> > > > This definitely helps cutting lines of code when writing apps.
> > > >
> > > > This should in theory only affect EO objects (i.e. created with
> > > efl_add()).
> > > >
> > > > Please let me know if that works for you, or causes problems, or is a
> > > > terrible idea in itself.
> > > > I have a similar patch for EXPAND by default (but unlike visible, not
> > > > delayed).
> > > >
> > > > Thanks,
> > > >
> > > >
> > > >
> > > > 2017-08-04 11:02 GMT+09:00 Jean-Philippe ANDRÉ :
> > > >
> > > > > jpeg pushed a commit to branch master.
> > > > >
> > > > > http://git.enlightenment.org/core/efl.git/commit/?id=
> > > > > fd9cf1d3b628f70d66ec85a4f2433c675d9ad243
> > > > >
> > > > > commit fd9cf1d3b628f70d66ec85a4f2433c675d9ad243
> > > > > Author: Jean-Philippe Andre 
> > > > > Date:   Thu Jul 6 16:29:20 2017 +0900
> > > > >
> > > > > evas: Make all EO canvas objects visible by default
> > > > >
> > > > > All legacy objects remain invisible by default. Any call to
> > > > > visible_set() will prevent the automatic show() to happen.
> > > > >
> > > > > show() will be done just before render time, which may be a
> > > > > bit too late in order to propagate the necessary changes.
> > > > >
> > > > > This may break some things where some objects are created
> > > > > internally using efl_add() instead of the legacy API, and
> > > > > the intent was not to show the object.
> > > > >
> > > > > @feature
> > > > > ---
> > > > >  src/lib/evas/canvas/efl_canvas_object.eo |  1 +
> > > > >  src/lib/evas/canvas/evas_object_image.c  |  2 +-
> > > > >  src/lib/evas/canvas/evas_object_main.c   | 36
> > > > > +---
> > > > >  src/lib/evas/canvas/evas_render.c| 25
> ++
> > > > >  src/lib/evas/include/evas_private.h  | 10 +++--
> > > > >  5 files changed, 68 insertions(+), 6 deletions(-)
> > > > >
> > > > > diff --git a/src/lib/evas/canvas/efl_canvas_object.eo
> > > > > b/src/lib/evas/canvas/efl_canvas_object.eo
> > > > > index a284a43e93..b49a42addf 100644
> > > > > --- a/src/lib/evas/canvas/efl_canvas_object.eo
> > > > > +++ b/src/lib/evas/canvas/efl_canvas_object.eo
> > > > > @@ -660,6 +660,7 @@ abstract Efl.Canvas.Object (Efl.Object,
> Efl.Gfx,
> > > > > Efl.Gfx.Stack, Efl.Animator,
> > > > > implements {
> > > > >Efl.Object.constructor;
> > > > >Efl.Object.destructor;
> > > > > +  Efl.Object.finalize;
> > > > >Efl.Object.provider_find;
> > > > >Efl.Gfx.visible { get; set; }
> > > > >Efl.Gfx.color { get; set; }
> > > > > diff --git a/src/lib/evas/canvas/evas_object_image.c
> > > > > b/src/lib/evas/canvas/evas_object_image.c
> > > > > index 9d1440573d..269898c6b2 100644
> > > > > --- a/src/lib/evas/canvas/evas_object_image.c
> > > > > +++ b/src/lib/evas/canvas/evas_object_image.c
> > > > > @@ -1443,7 +1443,7 @@ _efl_canvas_image_internal_
> > > efl_object_destructor(Eo
> > > > > *eo_obj, Evas_Image_Data *o
> > > > >  {
> > > > > Evas_Object_Protected_Data *obj = efl_data_scope_get(eo_obj,
> > > > > EFL_CANVAS_OBJECT_CLASS);
> > > > >
> > > > > -   if (obj->legacy)
> > > > > +   if (obj->legacy.ctor)
> > > > >   evas_object_image_video_surface_set(eo_obj, NULL);
> > > > > evas_object_image_free(eo_obj, obj);
> > > > > efl_destructor(efl_super(eo_obj, MY_CLASS));
> > > > > diff --git a/src/lib/evas/canvas/evas_object_main.c
> > > > > b/src/lib/evas/canvas/evas_object_main.c
> > > > > index e0a3013edf..f1fef26b00 100644
> > > > > ---