[EGIT] [core/efl] efl-1.18 01/01: evas: Fix evas_object_smart_clipped_clipper_get

2016-10-13 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch efl-1.18.

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

commit 577fa188f5b338dedddb8fef66323155178c4528
Author: Jean-Philippe Andre 
Date:   Thu Oct 13 17:59:13 2016 +0900

evas: Fix evas_object_smart_clipped_clipper_get

This was broken for smart objects that are not "clipped smart
objects". This fixes the example evas_smart_object.

NOTE: This EAPI was removed in efl-1.18!
/!\ This was an uncaught API break between 1.17 and 1.18 /!\

@fix
---
 src/lib/evas/Evas_Legacy.h  | 10 ++
 src/lib/evas/canvas/evas_object_smart_clipped.c | 13 +
 2 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/src/lib/evas/Evas_Legacy.h b/src/lib/evas/Evas_Legacy.h
index 1962953..8dc8fbf 100644
--- a/src/lib/evas/Evas_Legacy.h
+++ b/src/lib/evas/Evas_Legacy.h
@@ -5223,6 +5223,16 @@ EAPI void evas_object_smart_data_set(Evas_Object *obj, 
void *data);
 EAPI void *evas_object_smart_data_get(const Evas_Object *obj);
 
 /**
+ * @brief Get the clipper object for the given clipped smart object.
+ *
+ * Use this function if you want to change any of this clipper's properties,
+ * like colors.
+ *
+ * @ingroup Evas_Object_Smart
+ */
+EAPI Evas_Object *evas_object_smart_clipped_clipper_get(const Evas_Object 
*obj) EINA_WARN_UNUSED_RESULT;
+
+/**
  * @brief Retrieves the list of the member objects of a given Evas smart
  * object.
  *
diff --git a/src/lib/evas/canvas/evas_object_smart_clipped.c 
b/src/lib/evas/canvas/evas_object_smart_clipped.c
index a43a36a..44d1fbe 100644
--- a/src/lib/evas/canvas/evas_object_smart_clipped.c
+++ b/src/lib/evas/canvas/evas_object_smart_clipped.c
@@ -8,9 +8,9 @@
 eo_data_scope_get(eo_obj, MY_CLASS) :   \
 evas_object_smart_data_get(eo_obj));
 
-#define CSO_DATA_GET_OR_RETURN(eo_obj, ptr) \
-  CSO_DATA_GET(eo_obj, ptr) \
-  if (!ptr) return;
+#define CSO_DATA_GET_OR_RETURN(eo_obj, ptr, ...) \
+  CSO_DATA_GET(eo_obj, ptr) \
+  if (!ptr) return __VA_ARGS__;
 
 EOLIAN void
 _efl_canvas_group_group_children_move(Eo *eo_obj, Evas_Object_Protected_Data 
*obj EINA_UNUSED, Evas_Coord dx, Evas_Coord dy)
@@ -38,12 +38,9 @@ _efl_canvas_group_group_children_move(Eo *eo_obj, 
Evas_Object_Protected_Data *ob
 EAPI Evas_Object *
 evas_object_smart_clipped_clipper_get(const Evas_Object *eo_obj)
 {
-   Evas_Object_Smart_Clipped_Data *obj;
+   CSO_DATA_GET_OR_RETURN(eo_obj, cso, NULL);
 
-   if (!eo_isa(eo_obj, EFL_CANVAS_GROUP_CLIPPED_CLASS))
- return NULL;
-   obj = eo_data_scope_get(eo_obj, EFL_CANVAS_GROUP_CLIPPED_CLASS);
-   return obj->clipper;
+   return cso->clipper;
 }
 
 static void

-- 




[EGIT] [core/efl] master 01/02: evas: Improve render debug logs

2016-10-13 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 9b9c044865faf95e7084626a821baf221542798a
Author: Jean-Philippe Andre 
Date:   Thu Oct 13 17:42:38 2016 +0900

evas: Improve render debug logs

Compiled out by default
---
 src/lib/evas/canvas/evas_render.c | 29 +++--
 1 file changed, 19 insertions(+), 10 deletions(-)

diff --git a/src/lib/evas/canvas/evas_render.c 
b/src/lib/evas/canvas/evas_render.c
index ff34281..bec977a 100644
--- a/src/lib/evas/canvas/evas_render.c
+++ b/src/lib/evas/canvas/evas_render.c
@@ -1348,22 +1348,31 @@ evas_render_mapped(Evas_Public_Data *evas, Evas_Object 
*eo_obj,
else RD(0, "\n");
if (obj->cur->clipper)
  {
-RD(level, "  clipper: '%s'%s%s %p (mask: %p) %d,%d %dx%d\n",
+RD(level, "  clipper: '%s'%s%s %p (mask: %p) %d,%d %dx%d ; color: 
{%d,%d,%d,%d} ; cached: {%d,%d,%d,%d}\n",
obj->cur->clipper->type,
obj->cur->clipper->name ? ":" : "",
obj->cur->clipper->name ? obj->cur->clipper->name : "",
obj->cur->clipper, obj->clip.mask,
obj->cur->clipper->cur->geometry.x, 
obj->cur->clipper->cur->geometry.y,
-   obj->cur->clipper->cur->geometry.w, 
obj->cur->clipper->cur->geometry.h);
- }
-
-   RD(level, "  geom: %d,%d %dx%d, cache.clip: (vis: %d) %d,%d %dx%d\n",
-  obj->cur->geometry.x, obj->cur->geometry.y, obj->cur->geometry.w, 
obj->cur->geometry.h,
-  obj->cur->cache.clip.visible, obj->cur->cache.clip.x, 
obj->cur->cache.clip.y, obj->cur->cache.clip.w, obj->cur->cache.clip.h);
+   obj->cur->clipper->cur->geometry.w, 
obj->cur->clipper->cur->geometry.h,
+   obj->cur->clipper->cur->color.r, obj->cur->clipper->cur->color.g,
+   obj->cur->clipper->cur->color.b, obj->cur->clipper->cur->color.a,
+   obj->cur->clipper->cur->cache.clip.r, 
obj->cur->clipper->cur->cache.clip.g,
+   obj->cur->clipper->cur->cache.clip.b, 
obj->cur->clipper->cur->cache.clip.a);
+ }
+
+   RD(level, "  geom: %d,%d %dx%d, cache.clip: (vis: %d) %d,%d %dx%d ; color: 
{%d,%d,%d,%d} ; cached: {%d,%d,%d,%d}\n",
+  obj->cur->geometry.x, obj->cur->geometry.y, obj->cur->geometry.w, 
obj->cur->geometry.h, obj->cur->cache.clip.visible,
+  obj->cur->cache.clip.x, obj->cur->cache.clip.y, obj->cur->cache.clip.w, 
obj->cur->cache.clip.h,
+  obj->cur->color.r, obj->cur->color.g, obj->cur->color.b, 
obj->cur->color.a,
+  obj->cur->cache.clip.r, obj->cur->cache.clip.g, obj->cur->cache.clip.b, 
obj->cur->cache.clip.a);
{
-  int _c, _cx, _cy, _cw, _ch;
-  _c = ENFN->context_clip_get(ENDT, context, &_cx, &_cy, &_cw, &_ch);
-  RD(level, "  context clip: [%d] %d,%d %dx%d\n", _c, _cx, _cy, _cw, _ch);
+  int _cu, _cc, _cm, _cx, _cy, _cw, _ch, _cr, _cg, _cb, _ca, _cmr, _cmg, 
_cmb, _cma;
+  _cu = ENFN->context_clip_get(ENDT, context, &_cx, &_cy, &_cw, &_ch);
+  _cc = ENFN->context_color_get(ENDT, context, &_cr, &_cr, &_cb, &_ca);
+  _cm = ENFN->context_multiplier_get(ENDT, context, &_cmr, &_cmr, &_cmb, 
&_cma);
+  RD(level, "  context clip: [%d] %d,%d %dx%d ; color: [%d] {%d,%d,%d,%d} 
; mult: [%d] {%d,%d,%d,%d}\n",
+ _cu, _cx, _cy, _cw, _ch, _cc, _cr, _cg, _cb, _ca, _cm, _cmr, _cmg, 
_cmb, _cma);
}
 #endif
 

-- 




[EGIT] [core/efl] master 02/02: evas: Fix evas_object_smart_clipped_clipper_get

2016-10-13 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 2fc23aa561a86b4a26d71acc0d590cafe62c
Author: Jean-Philippe Andre 
Date:   Thu Oct 13 17:59:13 2016 +0900

evas: Fix evas_object_smart_clipped_clipper_get

This was broken for smart objects that are not "clipped smart
objects". This fixes the example evas_smart_object.

NOTE: This EAPI was removed in efl-1.18!
/!\ This was an uncaught API break between 1.17 and 1.18 /!\

@fix
---
 src/lib/evas/Evas_Legacy.h  | 10 ++
 src/lib/evas/canvas/evas_object_smart_clipped.c | 13 +
 2 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/src/lib/evas/Evas_Legacy.h b/src/lib/evas/Evas_Legacy.h
index 7b96028..95d2b20 100644
--- a/src/lib/evas/Evas_Legacy.h
+++ b/src/lib/evas/Evas_Legacy.h
@@ -5445,6 +5445,16 @@ EAPI void evas_object_smart_data_set(Evas_Object *obj, 
void *data);
 EAPI void *evas_object_smart_data_get(const Evas_Object *obj);
 
 /**
+ * @brief Get the clipper object for the given clipped smart object.
+ *
+ * Use this function if you want to change any of this clipper's properties,
+ * like colors.
+ *
+ * @ingroup Evas_Object_Smart
+ */
+EAPI Evas_Object *evas_object_smart_clipped_clipper_get(const Evas_Object 
*obj) EINA_WARN_UNUSED_RESULT;
+
+/**
  * @brief Retrieves the list of the member objects of a given Evas smart
  * object.
  *
diff --git a/src/lib/evas/canvas/evas_object_smart_clipped.c 
b/src/lib/evas/canvas/evas_object_smart_clipped.c
index b8abd63..f9f95dd 100644
--- a/src/lib/evas/canvas/evas_object_smart_clipped.c
+++ b/src/lib/evas/canvas/evas_object_smart_clipped.c
@@ -11,19 +11,16 @@
 efl_data_scope_get(eo_obj, MY_CLASS) :   \
 evas_object_smart_data_get(eo_obj));
 
-#define CSO_DATA_GET_OR_RETURN(eo_obj, ptr) \
-  CSO_DATA_GET(eo_obj, ptr) \
-  if (!ptr) return;
+#define CSO_DATA_GET_OR_RETURN(eo_obj, ptr, ...) \
+  CSO_DATA_GET(eo_obj, ptr) \
+  if (!ptr) return __VA_ARGS__;
 
 EAPI Evas_Object *
 evas_object_smart_clipped_clipper_get(const Evas_Object *eo_obj)
 {
-   Evas_Object_Smart_Clipped_Data *obj;
+   CSO_DATA_GET_OR_RETURN(eo_obj, cso, NULL);
 
-   if (!efl_isa(eo_obj, EFL_CANVAS_GROUP_CLIPPED_CLASS))
- return NULL;
-   obj = efl_data_scope_get(eo_obj, EFL_CANVAS_GROUP_CLIPPED_CLASS);
-   return obj->clipper;
+   return cso->clipper;
 }
 
 static void

-- 




[EGIT] [core/efl] master 01/01: ecore_evas - fix setting urgent immediately after show

2016-10-13 Thread Carsten Haitzler
raster pushed a commit to branch master.

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

commit f9f94bcb5f80e32e4644fadc5bd6d0b91fea2d50
Author: Carsten Haitzler (Rasterman) 
Date:   Fri Oct 14 11:08:45 2016 +0900

ecore_evas - fix setting urgent immediately after show

fixes T4726
---
 src/modules/ecore_evas/engines/x/ecore_evas_x.c | 10 ++
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/modules/ecore_evas/engines/x/ecore_evas_x.c 
b/src/modules/ecore_evas/engines/x/ecore_evas_x.c
index 39de9c3..ac8d1b4 100644
--- a/src/modules/ecore_evas/engines/x/ecore_evas_x.c
+++ b/src/modules/ecore_evas/engines/x/ecore_evas_x.c
@@ -297,12 +297,15 @@ _ecore_evas_x11_region_push_hook(Evas *e EINA_UNUSED, int 
x EINA_UNUSED,
 static void
 _ecore_evas_x_hints_update(Ecore_Evas *ee)
 {
+   Ecore_X_Window_State_Hint initial_state = ECORE_X_WINDOW_STATE_HINT_NORMAL;
+
+   if (ee->prop.iconified)
+ initial_state = ECORE_X_WINDOW_STATE_HINT_ICONIC;
+
ecore_x_icccm_hints_set
  (ee->prop.window,
  !ee->prop.focus_skip /* accepts_focus */,
- ee->prop.iconified ? ECORE_X_WINDOW_STATE_HINT_ICONIC :
- ee->prop.withdrawn ? ECORE_X_WINDOW_STATE_HINT_WITHDRAWN :
- ECORE_X_WINDOW_STATE_HINT_NORMAL /* initial_state */,
+ initial_state /* initial_state */,
  0 /* icon_pixmap */,
  0 /* icon_mask */,
  0 /* icon_window */,
@@ -3386,7 +3389,6 @@ _ecore_evas_x_withdrawn_set(Ecore_Evas *ee, Eina_Bool on)
 {
if (ee->prop.withdrawn == on) return;
 //   ee->prop.withdrawn = on;
-   _ecore_evas_x_hints_update(ee);
if (on)
  ecore_evas_hide(ee);
else

-- 




[EGIT] [core/efl] master 01/01: ecore-wl2: Fix input and opaque region setting

2016-10-13 Thread Derek Foreman
derekf pushed a commit to branch master.

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

commit 9efd12a2789df44e9a2d1da6f873cc3e114a37f0
Author: Derek Foreman 
Date:   Thu Oct 13 17:40:38 2016 -0500

ecore-wl2: Fix input and opaque region setting

Bad y co-ordinate resulted in broken shadows after session recovery.

@fix
---
 src/lib/ecore_wl2/ecore_wl2_window.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/ecore_wl2/ecore_wl2_window.c 
b/src/lib/ecore_wl2/ecore_wl2_window.c
index cebbba0..e11518f 100644
--- a/src/lib/ecore_wl2/ecore_wl2_window.c
+++ b/src/lib/ecore_wl2/ecore_wl2_window.c
@@ -423,10 +423,10 @@ ecore_wl2_window_show(Ecore_Wl2_Window *window)
  }
 
if (window->input_set)
- ecore_wl2_window_input_region_set(window, window->input_rect.x, 
window->input_rect.x, 
+ ecore_wl2_window_input_region_set(window, window->input_rect.x, 
window->input_rect.y,
window->input_rect.w, 
window->input_rect.h);
if (window->opaque_set)
- ecore_wl2_window_opaque_region_set(window, window->opaque.x, 
window->opaque.x, 
+ ecore_wl2_window_opaque_region_set(window, window->opaque.x, 
window->opaque.y,
window->opaque.w, 
window->opaque.h);
 
if ((window->type != ECORE_WL2_WINDOW_TYPE_DND) &&

-- 




[E-devel] Weekly news from the automated build and QA front

2016-10-13 Thread Stefan Schmidt
Hello.

Summary:
o The E Coverity defect might be outdated as the last E coverity run is 
over a week old


This should give everyone an overview over what has happened in the last
week on the QA front. The numbers in parentheses reflect the values from
last week to give you a trend.

CI:
o Overall build statistic: 8.65% (24.72%) failed.
https://build.enlightenment.org/

Unit tests:
o 886 (886) unit tests for efl

Coverage:
o EFL total coverage is at N/A (N/A) lines, N/A (N/A) functions and N/A 
(N/A) branches
https://build.enlightenment.org/view/Test%20Coverage/

Coverity:
o EFL: Outstanding defects 85 (86) with a density of 0.08 (0.08)
o Enlightenment: Outstanding defects 1 (1) with a density of 0 (0)
o Terminology: Outstanding defects 0 (0) with a density of 0 (0)
o Rage: Outstanding defects 0 (0) with a density of 0 (0)

Phab:
o Total bug count: 984 (993)
https://phab.enlightenment.org/maniphest/report/burn/
o Pending patch reviews: 109 (103)

regards
Stefan Schmidt

--
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


[EGIT] [core/efl] master 03/04: evas: Fix directly dereferencing pointer which may be NULL

2016-10-13 Thread Christopher Michael
devilhorns pushed a commit to branch master.

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

commit fa5e4c252fe47aafb4f88351d101f829091086cc
Author: Chris Michael 
Date:   Thu Oct 13 12:50:12 2016 -0400

evas: Fix directly dereferencing pointer which may be NULL

Coverity reports this as a dereference before null check which implies
that 'cur' May be null here, so let's not use it before we check it.

Fixes CID1363765

Signed-off-by: Chris Michael 
---
 src/lib/evas/canvas/evas_object_textblock.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/lib/evas/canvas/evas_object_textblock.c 
b/src/lib/evas/canvas/evas_object_textblock.c
index 2b01c0a..29d8cb9 100644
--- a/src/lib/evas/canvas/evas_object_textblock.c
+++ b/src/lib/evas/canvas/evas_object_textblock.c
@@ -12185,10 +12185,12 @@ EAPI Eina_List *
 evas_textblock_cursor_range_geometry_get(const Efl_Canvas_Text_Cursor 
*cur1_obj, const Evas_Textblock_Cursor *cur2_obj)
 {
Efl_Canvas_Text_Cursor_Data *cur = efl_data_scope_get(cur1_obj, 
EFL_CANVAS_TEXT_CURSOR_CLASS);
-   Efl_Canvas_Text_Data *o = efl_data_scope_get(cur->obj, MY_CLASS);
+   Efl_Canvas_Text_Data *o;
 
if (!cur) return NULL;
 
+   o = efl_data_scope_get(cur->obj, MY_CLASS);
+
return _efl_canvas_text_range_geometry_list_get(cur->obj, o, cur1_obj, 
cur2_obj);
 }
 

-- 




[EGIT] [core/efl] master 02/04: evas: Fix directly dereferencing pointer which may be NULL

2016-10-13 Thread Christopher Michael
devilhorns pushed a commit to branch master.

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

commit 7633696cb66a6e030b82613a9c20a593e34864f8
Author: Chris Michael 
Date:   Thu Oct 13 12:47:38 2016 -0400

evas: Fix directly dereferencing pointer which may be NULL

Coverity reports this as a dereference before null check which implies
that 'pd' May be null here, so let's not use it before we check it.

Fixes CID1364114

Signed-off-by: Chris Michael 
---
 src/lib/evas/canvas/evas_filter_mixin.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/lib/evas/canvas/evas_filter_mixin.c 
b/src/lib/evas/canvas/evas_filter_mixin.c
index 7eb8b14..ba58838 100644
--- a/src/lib/evas/canvas/evas_filter_mixin.c
+++ b/src/lib/evas/canvas/evas_filter_mixin.c
@@ -355,12 +355,13 @@ EOLIAN static void
 _efl_canvas_filter_internal_efl_gfx_filter_filter_program_set(Eo *eo_obj, 
Evas_Filter_Data *pd,
   const char 
*code, const char *name)
 {
-   Evas_Object_Protected_Data *obj = pd->obj;
+   Evas_Object_Protected_Data *obj;
Evas_Filter_Program *pgm = NULL;
Evas_Object_Filter_Data *fcow;
Eina_Bool alpha;
 
if (!pd) return;
+   obj = pd->obj;
if (eina_streq(pd->data->code, code) && eina_streq(pd->data->name, name))
  return;
 

-- 




[EGIT] [core/efl] master 04/04: elementary: Fix issue of using uninitialized values

2016-10-13 Thread Christopher Michael
devilhorns pushed a commit to branch master.

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

commit fe590e9b5e55306a7277426d3442ec38c9485e82
Author: Chris Michael 
Date:   Thu Oct 13 12:52:43 2016 -0400

elementary: Fix issue of using uninitialized values

Coverity reports that Evas_Coord_Rectangles were being used here without 
being
initialized so declare those variables with some initial values

Fixes CID1362984

Signed-off-by: Chris Michael 
---
 src/lib/elementary/elm_gesture_layer.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/elementary/elm_gesture_layer.c 
b/src/lib/elementary/elm_gesture_layer.c
index 7816f37..39db639 100644
--- a/src/lib/elementary/elm_gesture_layer.c
+++ b/src/lib/elementary/elm_gesture_layer.c
@@ -1666,8 +1666,8 @@ _tap_gesture_check_finish(Gesture_Info *gesture, 
Evas_Coord tap_finger_size)
Taps_Type *st = gesture->data;
Eina_List *l;
Eina_List *pe_list;
-   Evas_Coord_Rectangle base;
-   Evas_Coord_Rectangle tmp;
+   Evas_Coord_Rectangle base = {0, 0, 0, 0};
+   Evas_Coord_Rectangle tmp = {0, 0, 0, 0};
if (!tap_finger_size)  /* Use system default if not set by user */
  tap_finger_size = elm_config_finger_size_get();
 

-- 




[EGIT] [core/efl] master 01/04: evas: Fix missing varargs cleanup

2016-10-13 Thread Christopher Michael
devilhorns pushed a commit to branch master.

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

commit 61643e6a06630f129f4ac5f2fabd0e26a5a4aa7b
Author: Chris Michael 
Date:   Thu Oct 13 12:43:44 2016 -0400

evas: Fix missing varargs cleanup

This patch fixes Coverity CID1364123 which reports that (in some
cases) va_end was not being called for var args. As they were
previously initialized with va_start, then va_end should be getting
called.

@fix

Signed-off-by: Chris Michael 
---
 src/lib/evas/canvas/evas_object_intercept.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/lib/evas/canvas/evas_object_intercept.c 
b/src/lib/evas/canvas/evas_object_intercept.c
index 13b9a96..d199add 100644
--- a/src/lib/evas/canvas/evas_object_intercept.c
+++ b/src/lib/evas/canvas/evas_object_intercept.c
@@ -204,10 +204,10 @@ _evas_object_intercept_call(Evas_Object *eo_obj, 
Evas_Object_Intercept_Cb_Type c
 if (!internal)
   {
  if (_efl_canvas_object_clip_unset_block(eo_obj, obj))
-   return 1;
+   goto end_block;
   }
-if (!obj->interceptors) return 0;
-return evas_object_intercept_call_clip_unset(eo_obj, obj);
+if (!obj->interceptors) goto end_noblock;
+blocked = evas_object_intercept_call_clip_unset(eo_obj, obj);
  }
 
va_end(args);

-- 




[EGIT] [core/enlightenment] master 04/05: add zone number to bryce names

2016-10-13 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit afa358fa9e200e7f4544aac6fec6de03187ceeef
Author: Mike Blumenkrantz 
Date:   Thu Oct 13 11:24:28 2016 -0400

add zone number to bryce names

fixes usage of bryces in identical setups on different zones
---
 src/bin/e_bryce.c| 13 +
 src/bin/e_bryce_editor.c |  7 ---
 2 files changed, 17 insertions(+), 3 deletions(-)

diff --git a/src/bin/e_bryce.c b/src/bin/e_bryce.c
index b4bcaa2..b49721d 100644
--- a/src/bin/e_bryce.c
+++ b/src/bin/e_bryce.c
@@ -3,6 +3,8 @@
 #define DEFAULT_LAYER E_LAYER_CLIENT_ABOVE
 #define E_BRYCE_TYPE 0xE31338
 
+static unsigned int bryce_version = 1;
+
 typedef struct Bryce
 {
E_Object *e_obj_inherit;
@@ -37,6 +39,7 @@ typedef struct Bryce
/* config: do not bitfield! */
Eina_Bool autosize;
Eina_Bool autohide;
+   unsigned int version;
 
Eina_Bool hidden : 1;
Eina_Bool animating : 1;
@@ -1152,6 +1155,7 @@ e_bryce_init(void)
E_CONFIG_VAL(edd_bryce, Bryce, autohide, UCHAR);
E_CONFIG_VAL(edd_bryce, Bryce, orient, UINT);
E_CONFIG_VAL(edd_bryce, Bryce, anchor, UINT);
+   E_CONFIG_VAL(edd_bryce, Bryce, version, UINT);
 
edd_bryces = E_CONFIG_DD_NEW("Bryces", Bryces);
E_CONFIG_LIST(edd_bryces, Bryces, bryces, edd_bryce);
@@ -1164,6 +1168,15 @@ e_bryce_init(void)
 
 EINA_LIST_FOREACH(bryces->bryces, l, b)
   {
+ if (b->version < 1)
+   {
+  char buf[4096];
+
+  snprintf(buf, sizeof(buf), "%s_%u", b->name, b->zone);
+  e_gadget_site_rename(b->name, buf);
+  eina_stringshare_replace(&b->name, buf);
+   }
+ b->version = bryce_version;
  if (!e_comp_zone_number_get(b->zone)) continue;
  b->layer = E_CLAMP(b->layer, E_LAYER_DESKTOP, 
E_LAYER_CLIENT_ABOVE);
  _bryce_create(b, e_comp->elm);
diff --git a/src/bin/e_bryce_editor.c b/src/bin/e_bryce_editor.c
index 46450e8..1413346 100644
--- a/src/bin/e_bryce_editor.c
+++ b/src/bin/e_bryce_editor.c
@@ -63,7 +63,9 @@ _editor_bryce_add(Evas_Object *obj)
else if (bi->anchor & E_GADGET_SITE_ANCHOR_BOTTOM)
  loc2 = "bottom";
 
-   snprintf(buf, sizeof(buf), "bryce_%s_%s", loc, loc2);
+   zone = e_comp_object_util_zone_get(obj);
+   if (!zone) zone = e_zone_current_get();
+   snprintf(buf, sizeof(buf), "bryce_%s_%s_%d", loc, loc2, zone->num);
if (bi->orient == E_GADGET_SITE_ORIENT_HORIZONTAL)
  {
 if (bi->anchor & E_GADGET_SITE_ANCHOR_LEFT)
@@ -92,8 +94,7 @@ _editor_bryce_add(Evas_Object *obj)
 e_gadget_site_gadget_add(site, "Digital Clock", 0);
 e_gadget_site_gadget_add(site, "Wireless", 0);
  }
-   zone = e_comp_object_util_zone_get(obj);
-   if (!zone) zone = e_zone_current_get();
+
evas_object_geometry_get(b, &x, &y, NULL, NULL);
evas_object_move(b, x + zone->x, y + zone->y);
e_gadget_site_gravity_set(site, gravity);

-- 




[EGIT] [core/enlightenment] master 01/05: enforce bryce resizing when orientation changes

2016-10-13 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit a9bab812ec3dd1f070a6ae419d7f4443a8cbac08
Author: Mike Blumenkrantz 
Date:   Thu Oct 13 11:20:21 2016 -0400

enforce bryce resizing when orientation changes

screens are not square, so this would never have worked
---
 src/bin/e_bryce.c | 10 +-
 1 file changed, 1 insertion(+), 9 deletions(-)

diff --git a/src/bin/e_bryce.c b/src/bin/e_bryce.c
index d352d9e..c6e4930 100644
--- a/src/bin/e_bryce.c
+++ b/src/bin/e_bryce.c
@@ -945,20 +945,12 @@ e_bryce_add(Evas_Object *parent, const char *name, 
E_Gadget_Site_Orient orient,
 E_API void
 e_bryce_orient(Evas_Object *bryce, E_Gadget_Site_Orient orient, 
E_Gadget_Site_Anchor an)
 {
-   int w, h;
-   E_Gadget_Site_Orient prev;
-
BRYCE_GET(bryce);
if ((b->orient == orient) && (b->anchor == an)) return;
-   prev = b->orient;
b->orient = orient;
b->anchor = an;
-   evas_object_geometry_get(bryce, NULL, NULL, &w, &h);
_bryce_orient(b);
-   if (prev == orient)
- _bryce_autosize(b);
-   else
- evas_object_resize(bryce, h, w);
+   _bryce_autosize(b);
 }
 
 E_API Evas_Object *

-- 




[EGIT] [core/enlightenment] master 05/05: do not check for shelf/bryce existence in opposing anchorages during bryce wizard

2016-10-13 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit ebefa49e4bf578c8f4f119333f911a6188dd3c00
Author: Mike Blumenkrantz 
Date:   Thu Oct 13 11:25:27 2016 -0400

do not check for shelf/bryce existence in opposing anchorages during bryce 
wizard

fixes false positives when detecting positions
---
 src/bin/e_bryce_editor.c | 12 
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/bin/e_bryce_editor.c b/src/bin/e_bryce_editor.c
index 1413346..8406f2c 100644
--- a/src/bin/e_bryce_editor.c
+++ b/src/bin/e_bryce_editor.c
@@ -23,13 +23,17 @@ static void _editor_add_right(void *data, Evas_Object *obj, 
const char *sig, con
 static void
 setup_exists(Evas_Object *bryce, Evas_Object *editor, Evas_Object *parent, 
E_Gadget_Site_Anchor an)
 {
-   if (e_bryce_exists(parent, bryce, E_GADGET_SITE_ORIENT_HORIZONTAL, 
E_GADGET_SITE_ANCHOR_BOTTOM | an))
+   if ((an != E_GADGET_SITE_ANCHOR_TOP) &&
+   e_bryce_exists(parent, bryce, E_GADGET_SITE_ORIENT_HORIZONTAL, 
E_GADGET_SITE_ANCHOR_BOTTOM | an))
  elm_object_signal_emit(editor, "e,bryce,exists,bottom", "e");
-   if (e_bryce_exists(parent, bryce, E_GADGET_SITE_ORIENT_HORIZONTAL, 
E_GADGET_SITE_ANCHOR_TOP | an))
+   if ((an != E_GADGET_SITE_ANCHOR_BOTTOM) &&
+   e_bryce_exists(parent, bryce, E_GADGET_SITE_ORIENT_HORIZONTAL, 
E_GADGET_SITE_ANCHOR_TOP | an))
  elm_object_signal_emit(editor, "e,bryce,exists,top", "e");
-   if (e_bryce_exists(parent, bryce, E_GADGET_SITE_ORIENT_VERTICAL, 
E_GADGET_SITE_ANCHOR_LEFT | an))
+   if ((an != E_GADGET_SITE_ANCHOR_RIGHT) &&
+   e_bryce_exists(parent, bryce, E_GADGET_SITE_ORIENT_VERTICAL, 
E_GADGET_SITE_ANCHOR_LEFT | an))
  elm_object_signal_emit(editor, "e,bryce,exists,left", "e");
-   if (e_bryce_exists(parent, bryce, E_GADGET_SITE_ORIENT_VERTICAL, 
E_GADGET_SITE_ANCHOR_RIGHT | an))
+   if ((an != E_GADGET_SITE_ANCHOR_LEFT) &&
+   e_bryce_exists(parent, bryce, E_GADGET_SITE_ORIENT_VERTICAL, 
E_GADGET_SITE_ANCHOR_RIGHT | an))
  elm_object_signal_emit(editor, "e,bryce,exists,right", "e");
 }
 

-- 




[EGIT] [core/enlightenment] master 02/05: add EINTERN function for renaming gadget sites

2016-10-13 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit baa7e85e61cafa71381d3810fd8dee2c6f291e2d
Author: Mike Blumenkrantz 
Date:   Thu Oct 13 11:27:12 2016 -0400

add EINTERN function for renaming gadget sites
---
 src/bin/e_gadget.c | 15 +++
 src/bin/e_gadget.h |  1 +
 2 files changed, 16 insertions(+)

diff --git a/src/bin/e_gadget.c b/src/bin/e_gadget.c
index f68d37a..4f4fe5c 100644
--- a/src/bin/e_gadget.c
+++ b/src/bin/e_gadget.c
@@ -1650,6 +1650,21 @@ e_gadget_save(void)
 }
 
 EINTERN void
+e_gadget_site_rename(const char *name, const char *newname)
+{
+   Eina_List *l;
+   E_Gadget_Site *zgs;
+
+   EINA_LIST_FOREACH(sites->sites, l, zgs)
+ if (eina_streq(zgs->name, name))
+   {
+  eina_stringshare_replace(&zgs->name, newname);
+  e_config_save_queue();
+  break;
+   }
+}
+
+EINTERN void
 e_gadget_init(void)
 {
gadget_types = eina_hash_string_superfast_new(free);
diff --git a/src/bin/e_gadget.h b/src/bin/e_gadget.h
index 2304054..53945e3 100644
--- a/src/bin/e_gadget.h
+++ b/src/bin/e_gadget.h
@@ -110,6 +110,7 @@ typedef void (*E_Gadget_Style_Cb)(Evas_Object *owner, 
Eina_Stringshare *name, Ev
 
 EINTERN void e_gadget_init(void);
 EINTERN void e_gadget_shutdown(void);
+EINTERN void e_gadget_site_rename(const char *name, const char *newname);
 
 E_API Evas_Object *e_gadget_site_add(E_Gadget_Site_Orient orient, const char 
*name);
 E_API Evas_Object *e_gadget_site_auto_add(E_Gadget_Site_Orient orient, const 
char *name);

-- 




[EGIT] [core/enlightenment] master 03/05: fix bryce check for shelf existence on orientation/anchor to break when expected

2016-10-13 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit d5ada5c1d5f7885bb660bdbcd0d53aa0e3eeeba5
Author: Mike Blumenkrantz 
Date:   Thu Oct 13 11:22:01 2016 -0400

fix bryce check for shelf existence on orientation/anchor to break when 
expected

restores missing anchor points when adding/moving bryces
---
 src/bin/e_bryce.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/bin/e_bryce.c b/src/bin/e_bryce.c
index c6e4930..b4bcaa2 100644
--- a/src/bin/e_bryce.c
+++ b/src/bin/e_bryce.c
@@ -1054,7 +1054,8 @@ e_bryce_exists(Evas_Object *parent, Evas_Object *bryce, 
E_Gadget_Site_Orient ori
   if ((orient == E_GADGET_SITE_ORIENT_##ORIENT) && \
 ((an == (E_GADGET_SITE_ANCHOR_##ANCHOR1)) || \
   ((an & E_GADGET_SITE_ANCHOR_##ANCHOR2) && (!es->cfg->fit_along \
-return EINA_TRUE
+return EINA_TRUE; \
+  break
 default: break;
 case E_GADCON_ORIENT_LEFT:
   ORIENT_CHECK(VERTICAL, LEFT, LEFT);

-- 




[EGIT] [core/efl] master 01/01: gengrid: call this on the pam class not on the normal class

2016-10-13 Thread Marcel Hollerbach
bu5hm4n pushed a commit to branch master.

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

commit 4b2d459783721fc84916b7204ae7a75202679584
Author: Marcel Hollerbach 
Date:   Thu Oct 13 16:25:37 2016 +0200

gengrid: call this on the pam class not on the normal class

this fixes gengrid.
---
 src/lib/elementary/elm_gengrid.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elementary/elm_gengrid.c b/src/lib/elementary/elm_gengrid.c
index 90fc7fa..ed7ba99 100644
--- a/src/lib/elementary/elm_gengrid.c
+++ b/src/lib/elementary/elm_gengrid.c
@@ -495,7 +495,7 @@ _elm_gengrid_pan_efl_gfx_size_set(Eo *obj, 
Elm_Gengrid_Pan_Data *psd, Evas_Coord
if (_evas_object_intercept_call(obj, EVAS_OBJECT_INTERCEPT_CB_RESIZE, 0, w, 
h))
  return;
 
-   efl_gfx_size_set(efl_super(obj, MY_CLASS), w, h);
+   efl_gfx_size_set(efl_super(obj, MY_PAN_CLASS), w, h);
 
ecore_job_del(psd->wsd->calc_job);
psd->wsd->calc_job = ecore_job_add(_calc_job, psd->wobj);

-- 




[EGIT] [tools/eflete] master 01/04: project_export: avoid to show splash on export develop edj file

2016-10-13 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

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

commit b72290b76fab6583a86e65a983c82029de0f2abd
Author: Vyacheslav Reutskiy 
Date:   Thu Oct 13 12:04:58 2016 +0300

project_export: avoid to show splash on export develop edj file

Change-Id: I4db103b6ff563bc6a277165e736e728677cf4fd7
---
 src/bin/ui/project_export.c | 11 +++
 1 file changed, 11 insertions(+)

diff --git a/src/bin/ui/project_export.c b/src/bin/ui/project_export.c
index 8b1984d..fce60ac 100644
--- a/src/bin/ui/project_export.c
+++ b/src/bin/ui/project_export.c
@@ -51,6 +51,17 @@ _export_develop_setup(void *data, Splash_Status status 
__UNUSED__)
 popup_add(_("Export develop edj"), NULL, BTN_CANCEL, NULL, NULL);
  return false;
  }
+   else
+ {
+/* HOTFIX: export develop edj file is only file copy, and if file is
+ * small spash animation start after file copy and animation will 
player
+ * n loop. For avoid this situation I was add this hack.
+ *
+ * Need to update it, and rewrite correctly.
+ */
+return false;
+ }
+
return true;
 }
 

-- 




[EGIT] [tools/eflete] master 02/04: project_export: fix the export flow fow export edc and for save

2016-10-13 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

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

commit 57714d0f0bfca0184b524eb0fe943470b8fad22b
Author: Vyacheslav Reutskiy 
Date:   Thu Oct 13 14:40:18 2016 +0300

project_export: fix the export flow fow export edc and for save

Change-Id: I34cf2032a2d53703d5f7f66b26d70e162afcc738
---
 src/bin/ui/main_window.h|  4 +++-
 src/bin/ui/menu.c   |  2 +-
 src/bin/ui/project_close.c  |  2 +-
 src/bin/ui/project_export.c | 35 +--
 4 files changed, 26 insertions(+), 17 deletions(-)

diff --git a/src/bin/ui/main_window.h b/src/bin/ui/main_window.h
index eb550a9..fd70e1f 100644
--- a/src/bin/ui/main_window.h
+++ b/src/bin/ui/main_window.h
@@ -456,10 +456,12 @@ export_replace_request(Evas_Object *parent, const char 
*msg);
 /**
  * Export project as edc.
  *
+ * @param The groups list for export
+ *
  * @ingroup Window
  */
 void
-project_export_edc_project(void);
+project_export_edc_project(Eina_List *groups);
 
 
 /**
diff --git a/src/bin/ui/menu.c b/src/bin/ui/menu.c
index 397a499..ac18cf1 100644
--- a/src/bin/ui/menu.c
+++ b/src/bin/ui/menu.c
@@ -114,7 +114,7 @@ _menu_cb(void *data __UNUSED__,
  project_export_edc_group();
  break;
   case MENU_FILE_EXPORT_EDC_PROJECT:
- project_export_edc_project();
+ project_export_edc_project(ap.project->groups);
  break;
   case MENU_FILE_EXPORT_DEVELOP:
  project_export_develop();
diff --git a/src/bin/ui/project_close.c b/src/bin/ui/project_close.c
index f0568b5..c16494c 100644
--- a/src/bin/ui/project_close.c
+++ b/src/bin/ui/project_close.c
@@ -122,7 +122,7 @@ project_save(void)
if (ap.path.export_edj)
  project_export_develop();
if (ap.path.export_edc)
- project_export_edc_project();
+ project_export_edc_project(tabs_open_groups_get());
 #endif /* HAVE_TIZEN */
 
ui_menu_disable_set(ap.menu, MENU_FILE_SAVE, true);
diff --git a/src/bin/ui/project_export.c b/src/bin/ui/project_export.c
index fce60ac..1b92d5c 100644
--- a/src/bin/ui/project_export.c
+++ b/src/bin/ui/project_export.c
@@ -22,6 +22,13 @@
 #include "project_manager2.h"
 #include "project_common.h"
 
+struct _Export_Data
+{
+   Eina_Stringshare *path;
+   Eina_List *groups;
+};
+typedef struct _Export_Data Export_Data;
+
 static Eina_Bool
 _export_teardown(void *data, Splash_Status status __UNUSED__)
 {
@@ -234,13 +241,11 @@ _export_source_code_setup(void *data, Splash_Status 
status __UNUSED__)
 {
char buf[PATH_MAX];
PM_Project_Result result;
-   Eina_Stringshare *path = (Eina_Stringshare *)data;
-
-   assert(path != NULL);
+   Export_Data *exdata = data;
 
result = pm_group_source_code_export(ap.project,
-tabs_open_groups_get(),
-path,
+exdata->groups,
+exdata->path,
 progress_print,
 progress_end,
 NULL);
@@ -264,14 +269,14 @@ _after_export_source_code_check(void *data)
 }
 
 static Eina_Bool
-_export_source_code(void *data __UNUSED__,
+_export_source_code(void *data,
 Evas_Object *obj __UNUSED__, /* this is fileselector from 
popup */
 void *event_info)
 {
Eina_List *selected = (Eina_List *)event_info;
Eina_Stringshare *path;
Eina_Strbuf *buf;
-   Eina_Stringshare *pp;
+   Export_Data *exdata;
 
assert(selected != NULL);
 
@@ -282,29 +287,31 @@ _export_source_code(void *data __UNUSED__,
  _("A project folder '%s' already 
exist."
"Do you want to replace it?"),
  path);
-   pp = eina_stringshare_printf("%s/%s", path, ap.project->name);
+   exdata = mem_malloc(sizeof(Export_Data));
+   exdata->path = eina_stringshare_printf("%s/%s", path, ap.project->name);
+   exdata->groups = data;
 
-   ecore_file_mkpath(pp);
-   exist_permission_check(pp,
+   ecore_file_mkpath(exdata->path);
+   exist_permission_check(exdata->path,
   ap.project->name,
   _("Export to develop edj-file"),
   eina_strbuf_string_get(buf), EINA_FALSE,
-  _after_export_source_code_check, (void *)pp);
+  _after_export_source_code_check, exdata);
eina_strbuf_free(buf);
 
return false;
 }
 
 void
-project_export_edc_project(void)
+project_export_edc_project(Eina_List *groups)
 {
if (!ap.path.export_edc)
- popup_fileselector_folder_helper("Export source code", NULL, NULL, 
_export_source_code, NULL, false, false);
+ popup_fileselector_folder_helper("Export source code", NULL, NULL, 
_export_source_code, groups, false, false);
else
  {
 Eina_List

[EGIT] [tools/eflete] master 04/04: EWE: new eo syntax of parent class (move, resize, show, etc)

2016-10-13 Thread Vitalii Vorobiov
rimmed pushed a commit to branch master.

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

commit 7fc4e5e268fefcbde9a416dc2e6ee30b4e6e9771
Author: Vitalii Vorobiov 
Date:   Wed Oct 12 16:00:33 2016 +0300

EWE: new eo syntax of parent class (move, resize, show, etc)

Now its buildable

@fix
---
 src/lib/ewe_private.h |  4 
 src/lib/ewe_ruler.c   | 50 +++---
 src/lib/ewe_ruler.eo  |  7 +++
 3 files changed, 42 insertions(+), 19 deletions(-)

diff --git a/src/lib/ewe_private.h b/src/lib/ewe_private.h
index dd56c04..525092f 100644
--- a/src/lib/ewe_private.h
+++ b/src/lib/ewe_private.h
@@ -18,6 +18,10 @@
 #ifndef EWE_PRIVATE_H
 #define EWE_PRIVATE_H
 
+#define EFL_CANVAS_OBJECT_PROTECTED
+#define EFL_CANVAS_GROUP_PROTECTED
+#define EFL_CANVAS_GROUP_BETA
+
 #ifdef HAVE_CONFIG_H
 #include "eflete_config.h"
 #endif
diff --git a/src/lib/ewe_ruler.c b/src/lib/ewe_ruler.c
index e935760..c2c936b 100644
--- a/src/lib/ewe_ruler.c
+++ b/src/lib/ewe_ruler.c
@@ -824,10 +824,12 @@ _ewe_ruler_efl_canvas_group_group_del(Eo *obj,
evas_object_del(sd->bg);
 }
 
-EOLIAN static void
-_ewe_ruler_efl_canvas_group_group_show(Eo* obj EINA_UNUSED, 
Ewe_Ruler_Smart_Data *sd)
+static void
+_ewe_ruler_show(Eo* obj, Ewe_Ruler_Smart_Data *sd)
 {
if (sd->ruler_visible) return;
+   efl_gfx_visible_set(efl_super(obj, MY_CLASS), EINA_TRUE);
+
Ewe_Ruler_Scale *scale;
Ewe_Ruler_Marker *marker;
Eina_List *ls, *l;
@@ -859,11 +861,12 @@ _ewe_ruler_efl_canvas_group_group_show(Eo* obj 
EINA_UNUSED, Ewe_Ruler_Smart_Data
}
 }
 
-EOLIAN static void
-_ewe_ruler_efl_canvas_group_group_hide(Eo* obj, Ewe_Ruler_Smart_Data *sd)
+static void
+_ewe_ruler_hide(Eo* obj, Ewe_Ruler_Smart_Data *sd)
 {
if (!sd->ruler_visible) return;
-   efl_canvas_group_hide(efl_super(obj, MY_CLASS));
+   efl_gfx_visible_set(efl_super(obj, MY_CLASS), EINA_FALSE);
+
Ewe_Ruler_Scale *scale;
Ewe_Ruler_Marker *marker;
Eina_List *ls, *l;
@@ -886,13 +889,27 @@ _ewe_ruler_efl_canvas_group_group_hide(Eo* obj, 
Ewe_Ruler_Smart_Data *sd)
 }
 
 EOLIAN static void
-_ewe_ruler_efl_canvas_group_group_move(Eo *obj,
-  Ewe_Ruler_Smart_Data *sd,
-  Evas_Coord x,
-  Evas_Coord y)
+_ewe_ruler_efl_gfx_visible_set(Eo *obj, Ewe_Ruler_Smart_Data *sd, Eina_Bool 
vis)
+{
+   if (_evas_object_intercept_call(obj, EVAS_OBJECT_INTERCEPT_CB_VISIBLE, 0, 
vis))
+ return;
+
+   if (vis)
+ _ewe_ruler_show(obj, sd);
+   else
+ _ewe_ruler_hide(obj, sd);
+}
+
+EOLIAN static void
+_ewe_ruler_efl_gfx_position_set(Eo *obj,
+Ewe_Ruler_Smart_Data *sd,
+Evas_Coord x,
+Evas_Coord y)
 {
+   if (_evas_object_intercept_call(obj, EVAS_OBJECT_INTERCEPT_CB_MOVE, 0, x, 
y))
+ return;
 
-   efl_canvas_group_move(efl_super(obj, MY_CLASS), x, y);
+   efl_gfx_position_set(efl_super(obj, MY_CLASS), x, y);
 
evas_object_move(sd->clip, x, y);
evas_object_move(sd->bg, x, y);
@@ -904,22 +921,25 @@ _ewe_ruler_efl_canvas_group_group_move(Eo *obj,
 }
 
 EOLIAN static void
-_ewe_ruler_efl_canvas_group_group_resize(Eo *obj,
-Ewe_Ruler_Smart_Data *sd,
-Evas_Coord w,
-Evas_Coord h)
+_ewe_ruler_efl_gfx_size_set(Eo *obj,
+Ewe_Ruler_Smart_Data *sd,
+Evas_Coord w,
+Evas_Coord h)
 {
if ((w == sd->geometry.width) && (h == sd->geometry.height)) return;
+   if (_evas_object_intercept_call(obj, EVAS_OBJECT_INTERCEPT_CB_RESIZE, 0, w, 
h))
+ return;
 
sd->size_changed = EINA_TRUE;
sd->geometry.width = w;
sd->geometry.height = h;
 
-   efl_canvas_group_resize(efl_super(obj, MY_CLASS), w, h);
evas_object_resize(sd->clip, w, h);
evas_object_resize(sd->bg, w, h);
 
evas_object_smart_changed(obj);
+
+   efl_gfx_size_set(efl_super(obj, MY_CLASS), w, h);
 }
 
 EOLIAN static void
diff --git a/src/lib/ewe_ruler.eo b/src/lib/ewe_ruler.eo
index 5c97c67..c654b4d 100644
--- a/src/lib/ewe_ruler.eo
+++ b/src/lib/ewe_ruler.eo
@@ -314,13 +314,12 @@ class Ewe.Ruler (Elm.Widget)
implements {
   class.constructor;
   Efl.Object.constructor;
+  Efl.Gfx.size.set;
+  Efl.Gfx.position.set;
+  Efl.Gfx.visible.set;
   Efl.Canvas.Group.group_add;
   Efl.Canvas.Group.group_del;
-  Efl.Canvas.Group.group_resize;
   Efl.Canvas.Group.group_calculate;
-  Efl.Canvas.Group.group_move;
-  Efl.Canvas.Group.group_show;
-  Efl.Canvas.Group.group_hide;
   Elm.Widget.theme_apply;
}
events {

-- 




[EGIT] [tools/eflete] master 03/04: project manager: add error type for failed export edj file

2016-10-13 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

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

commit 1c4687d9cee9137557798d5f8d1378e70c22ca2b
Author: Vyacheslav Reutskiy 
Date:   Thu Oct 13 15:41:39 2016 +0300

project manager: add error type for failed export edj file

Change-Id: Ie79748d515bce68fb8aaecc69690465c6d08f769
---
 src/bin/project_manager/project_manager2.c  | 7 ++-
 src/bin/project_manager/project_manager2_data.h | 1 +
 src/bin/ui/project_common.c | 1 +
 3 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/bin/project_manager/project_manager2.c 
b/src/bin/project_manager/project_manager2.c
index 35a6006..3a255a2 100644
--- a/src/bin/project_manager/project_manager2.c
+++ b/src/bin/project_manager/project_manager2.c
@@ -1371,7 +1371,10 @@ _release_export_build_finish_handler(void *data,
 {
Project_Process_Data *ppd = data;
 
-   last_error = PM_PROJECT_SUCCESS;
+   if (!ecore_file_exists(ppd->edj))
+ last_error = PM_PROJECT_EXPORT_RELEASE_EDJ_FAILED;
+   else
+ last_error = PM_PROJECT_SUCCESS;
_end_send(ppd);
return ECORE_CALLBACK_DONE;
 }
@@ -1504,6 +1507,8 @@ pm_project_result_string_get(PM_Project_Result result)
  return "Could not create a object";
   case  PM_PROJECT_EXPORT_DEVELOP_EDJ_FAILED:
  return "Could not save develop edj file";
+  case  PM_PROJECT_EXPORT_RELEASE_EDJ_FAILED:
+ return "Could not save release edj file";
   case  PM_PROJECT_BUILD_SOURCE_EDC_FAILED:
  return "Could not build edj file from edc";
   case PM_PROJECT_LAST:
diff --git a/src/bin/project_manager/project_manager2_data.h 
b/src/bin/project_manager/project_manager2_data.h
index c2eda71..c51a975 100644
--- a/src/bin/project_manager/project_manager2_data.h
+++ b/src/bin/project_manager/project_manager2_data.h
@@ -142,6 +142,7 @@ enum _PM_Project_Result
PM_PROJECT_EXPORT_SAVE_FONT_FAILED,
PM_PROJECT_EXPORT_CREATE_OBJECT_FAILED,
PM_PROJECT_EXPORT_DEVELOP_EDJ_FAILED,
+   PM_PROJECT_EXPORT_RELEASE_EDJ_FAILED,
PM_PROJECT_BUILD_SOURCE_EDC_FAILED,
PM_PROJECT_LAST
 };
diff --git a/src/bin/ui/project_common.c b/src/bin/ui/project_common.c
index 58683d9..b1c5b95 100644
--- a/src/bin/ui/project_common.c
+++ b/src/bin/ui/project_common.c
@@ -170,6 +170,7 @@ progress_end(void *data __UNUSED__, PM_Project_Result 
result, Project *project _
   case PM_PROJECT_EXPORT_SAVE_FONT_FAILED:
   case PM_PROJECT_EXPORT_CREATE_OBJECT_FAILED:
   case PM_PROJECT_EXPORT_DEVELOP_EDJ_FAILED:
+  case PM_PROJECT_EXPORT_RELEASE_EDJ_FAILED:
   case PM_PROJECT_BUILD_SOURCE_EDC_FAILED:
   case PM_PROJECT_LAST:
   default:

-- 




[EGIT] [core/efl] master 02/02: eolian gen: use the new data type API to simplify the code

2016-10-13 Thread Daniel Kolesa
q66 pushed a commit to branch master.

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

commit 57fb92e952bbd83f7853afb4615b0c027dc14437
Author: Daniel Kolesa 
Date:   Thu Oct 13 15:03:50 2016 +0200

eolian gen: use the new data type API to simplify the code
---
 src/bin/eolian/sources.c | 77 +++-
 1 file changed, 24 insertions(+), 53 deletions(-)

diff --git a/src/bin/eolian/sources.c b/src/bin/eolian/sources.c
index 7148f12..0b15d79 100644
--- a/src/bin/eolian/sources.c
+++ b/src/bin/eolian/sources.c
@@ -17,20 +17,6 @@ _get_add_star(Eolian_Function_Type ftype, 
Eolian_Parameter_Dir pdir)
return "";
 }
 
-static char *
-_get_data_type(const Eolian_Class *cl)
-{
-   const char *dt = eolian_class_data_type_get(cl);
-   if (!dt)
- return NULL;
-   char *dtr = strdup(dt);
-   if (!dtr)
- abort();
-   for (char *p = strchr(dtr, '.'); p; p = strchr(p, '.'))
- *p = '_';
-   return dtr;
-}
-
 static Eina_Bool
 _function_exists(const char *fname, Eina_Strbuf *buf)
 {
@@ -269,16 +255,11 @@ _gen_func(const Eolian_Class *cl, const Eolian_Function 
*fid,
if (impl_need)
  {
 /* figure out the data type */
-Eina_Bool is_cf = eolian_function_is_class(fid);
-char *dt = _get_data_type(cl);
-char adt[128];
-if (is_cf || (dt && !strcmp(dt, "null")))
-  snprintf(adt, sizeof(adt), "void");
-else if (dt)
-  snprintf(adt, sizeof(adt), "%s", dt);
+Eina_Stringshare *dt = NULL;
+if (eolian_function_is_class(fid))
+  dt = eina_stringshare_add("void");
 else
-  snprintf(adt, sizeof(adt), "%s_Data", cname);
-free(dt);
+  dt = eolian_class_c_data_type_get(cl);
 
 eina_strbuf_append_char(buf, '\n');
 /* no need for prototype with empty/auto impl */
@@ -300,7 +281,7 @@ _gen_func(const Eolian_Class *cl, const Eolian_Function 
*fid,
  if (eolian_function_object_is_const(fid))
eina_strbuf_append(buf, "const ");
  eina_strbuf_append(buf, "Eo *obj, ");
- eina_strbuf_append(buf, adt);
+ eina_strbuf_append(buf, dt);
  eina_strbuf_append(buf, " *pd");
  eina_strbuf_append(buf, eina_strbuf_string_get(params_full_imp));
  eina_strbuf_append(buf, ");\n\n");
@@ -331,7 +312,7 @@ _gen_func(const Eolian_Class *cl, const Eolian_Function 
*fid,
  if (is_empty || is_auto)
eina_strbuf_append(buf, " EINA_UNUSED");
  eina_strbuf_append(buf, ", ");
- eina_strbuf_append(buf, adt);
+ eina_strbuf_append(buf, dt);
  eina_strbuf_append(buf, " *pd");
  if (is_empty || (is_auto && !eina_strbuf_length_get(params_init)))
eina_strbuf_append(buf, " EINA_UNUSED");
@@ -372,6 +353,8 @@ _gen_func(const Eolian_Class *cl, const Eolian_Function 
*fid,
  eina_strbuf_append(buf, eina_strbuf_string_get(params));
  eina_strbuf_append(buf, ");\n}\n\n");
   }
+
+eina_stringshare_del(dt);
  }
 
if (impl_same_class)
@@ -727,19 +710,12 @@ eo_gen_source_gen(const Eolian_Class *cl, Eina_Strbuf 
*buf)
 break;
  }
 
-   char *dt = _get_data_type(cl);
-   if (dt && !strcmp(dt, "null"))
+   Eina_Stringshare *dt = eolian_class_c_data_type_get(cl);
+   if (!strcmp(dt, "void"))
  eina_strbuf_append(buf, "   0,\n");
else
- {
-eina_strbuf_append(buf, "   sizeof(");
-if (dt)
-  eina_strbuf_append(buf, dt);
-else
-  eina_strbuf_append_printf(buf, "%s_Data", cname);
-eina_strbuf_append(buf, "),\n");
- }
-   free(dt);
+ eina_strbuf_append_printf(buf, "   sizeof(%s),\n", dt);
+   eina_stringshare_del(dt);
 
if (has_init)
  eina_strbuf_append_printf(buf, "   _%s_class_initializer,\n", cnamel);
@@ -925,7 +901,7 @@ _gen_proto(const Eolian_Class *cl, const Eolian_Function 
*fid,
  eina_strbuf_append(buf, "const ");
 
eina_strbuf_append(buf, "Eo *obj, ");
-   if (dtype[0])
+   if (strcmp(dtype, "void"))
  eina_strbuf_append_printf(buf, "%s *pd", dtype);
else
  eina_strbuf_append(buf, "void *pd EINA_UNUSED");
@@ -987,21 +963,13 @@ eo_gen_impl_gen(const Eolian_Class *cl, Eina_Strbuf *buf)
  }
 
/* determine data type name */
-   char *dt = _get_data_type(cl);
-   char adt[128];
-   if (dt && !strcmp(dt, "null"))
- adt[0] = '\0';
-   else if (dt)
- snprintf(adt, sizeof(adt), "%s", dt);
-   else
- snprintf(adt, sizeof(adt), "%s_Data", cname);
-   free(dt);
+   Eina_Stringshare *dt = eolian_class_c_data_type_get(cl);
 
/* generate data type struct */
-   if (adt[0] && !_type_exists(adt, buf))
+   if (strcmp(dt, "void") && !_type_exists(dt, buf))
  {
-printf("generating data type structure %s...\n", adt);
-eina_strbuf_append_printf(beg, "typedef struct\n{\n\n} %s;\n\n

[EGIT] [core/efl] master 01/02: eolian: add API to get the C class datatype

2016-10-13 Thread Daniel Kolesa
q66 pushed a commit to branch master.

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

commit b6113a6bd988cb26a2586df6ca93a5f04c1a767a
Author: Daniel Kolesa 
Date:   Thu Oct 13 14:54:12 2016 +0200

eolian: add API to get the C class datatype
---
 src/lib/eolian/Eolian.h | 18 ++
 src/lib/eolian/database_class_api.c | 16 
 src/tests/eolian/eolian_parsing.c   |  3 +++
 3 files changed, 37 insertions(+)

diff --git a/src/lib/eolian/Eolian.h b/src/lib/eolian/Eolian.h
index 31c5050..1ccabf7 100644
--- a/src/lib/eolian/Eolian.h
+++ b/src/lib/eolian/Eolian.h
@@ -1309,6 +1309,24 @@ EAPI Eina_Stringshare 
*eolian_class_c_get_function_name_get(const Eolian_Class *
 EAPI Eina_Stringshare *eolian_class_c_name_get(const Eolian_Class *klass);
 
 /*
+ * @brief Get the C data type of the class.
+ *
+ * @param[in] klass the class
+ * @return the C data type
+ *
+ * This will sanitize the data type of the class for C usage; if it's "null",
+ * this returns "void"; if it's actually explicitly set, it returns the 
sanitized
+ * version of the string, otherwise it returns Class_Name_Data. Keep in mind 
that
+ * this does not add an asterisk (it doesn't return a pointer type name). 
You're
+ * responsible for the stringshare afterwards.
+ *
+ * @see eolian_class_c_get_function_name_get
+ *
+ * @ingroup Eolian
+ */
+EAPI Eina_Stringshare *eolian_class_c_data_type_get(const Eolian_Class *klass);
+
+/*
  * @brief Get an alias type declaration by name. Supports namespaces.
  *
  * @param[in] name the name of the alias
diff --git a/src/lib/eolian/database_class_api.c 
b/src/lib/eolian/database_class_api.c
index 244d33d..3086ecf 100644
--- a/src/lib/eolian/database_class_api.c
+++ b/src/lib/eolian/database_class_api.c
@@ -239,3 +239,19 @@ eolian_class_c_name_get(const Eolian_Class *cl)
eina_strbuf_free(buf);
return ret;
 }
+
+EAPI Eina_Stringshare *
+eolian_class_c_data_type_get(const Eolian_Class *cl)
+{
+   char buf[512];
+   EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL);
+   if (!cl->data_type)
+ snprintf(buf, sizeof(buf), "%s_Data", cl->full_name);
+   else if (!strcmp(cl->data_type, "null"))
+ return eina_stringshare_add("void");
+   else
+ snprintf(buf, sizeof(buf), "%s", cl->data_type);
+   for (char *p = strchr(buf, '.'); p; p = strchr(p, '.'))
+ *p = '_';
+   return eina_stringshare_add(buf);
+}
diff --git a/src/tests/eolian/eolian_parsing.c 
b/src/tests/eolian/eolian_parsing.c
index fa2abee..b488b5f 100644
--- a/src/tests/eolian/eolian_parsing.c
+++ b/src/tests/eolian/eolian_parsing.c
@@ -556,6 +556,9 @@ START_TEST(eolian_simple_parsing)
fail_if(strcmp(eolian_class_legacy_prefix_get(class), 
"evas_object_simple"));
fail_if(strcmp(eolian_class_eo_prefix_get(class), 
"efl_canvas_object_simple"));
fail_if(strcmp(eolian_class_data_type_get(class), "Evas_Simple_Data"));
+   Eina_Stringshare *dt = eolian_class_c_data_type_get(class);
+   fail_if(strcmp(dt, "Evas_Simple_Data"));
+   eina_stringshare_del(dt);
 
/* c get func */
fail_if(!(string = eolian_class_c_get_function_name_get(class)));

-- 




[EGIT] [tools/eflete] master 01/01: project manager: make check input args less aggressive

2016-10-13 Thread Vyacheslav Reutskiy
rimmed pushed a commit to branch master.

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

commit 28e750c1258aaca6366348be99bdefab4345ab6b
Author: Vyacheslav Reutskiy 
Date:   Thu Oct 13 10:54:30 2016 +0300

project manager: make check input args less aggressive

Change-Id: I4d1ad0e2e8583d5d241311bd90674c94eadcc090
---
 src/bin/project_manager/project_manager2.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/bin/project_manager/project_manager2.c 
b/src/bin/project_manager/project_manager2.c
index e2bf98f..35a6006 100644
--- a/src/bin/project_manager/project_manager2.c
+++ b/src/bin/project_manager/project_manager2.c
@@ -1216,10 +1216,9 @@ pm_group_source_code_export(Project *project,
Project_Process_Data *ppd;
Group2 *group;
Eina_Strbuf *cmd;
-   Eina_List *l;
+   Eina_List *g, *l;
 
assert(project != NULL);
-   assert(groups != NULL);
assert(path != NULL);
 
last_error = PM_PROJECT_SUCCESS;
@@ -1231,7 +1230,8 @@ pm_group_source_code_export(Project *project,
cmd = eina_strbuf_new();
eina_strbuf_append_printf(cmd, "%s --edj %s --path %s -s -u", 
ap.path.exporter, project->saved_edj, path);
 
-   EINA_LIST_FOREACH(groups, l, group)
+   g = groups ? groups : project->groups;
+   EINA_LIST_FOREACH(g, l, group)
   eina_strbuf_append_printf(cmd, " -g %s", group->common.name);
 
ecore_exe_pipe_run(eina_strbuf_string_get(cmd), FLAGS, NULL);

-- 




[EGIT] [core/efl] master 01/02: cxx: Fix Makefiles for C++ compilation and installation

2016-10-13 Thread Felipe Magno de Almeida
felipealmeida pushed a commit to branch master.

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

commit eb1fd44dbbc96fce0cebd4f4fd1144e7e06e8ff2
Author: Felipe Magno de Almeida 
Date:   Wed Oct 12 14:53:46 2016 +0900

cxx: Fix Makefiles for C++ compilation and installation
---
 src/Makefile_Cxx.am| 31 ---
 src/Makefile_Ecore.am  |  2 +-
 src/Makefile_Edje.am   |  2 +-
 src/Makefile_Efl.am|  2 +-
 src/Makefile_Efl_Js.am |  1 +
 src/Makefile_Eldbus.am |  2 +-
 src/Makefile_Elementary.am |  2 +-
 src/Makefile_Evas.am   |  2 +-
 8 files changed, 23 insertions(+), 21 deletions(-)

diff --git a/src/Makefile_Cxx.am b/src/Makefile_Cxx.am
index 442d4fd..52bdb76 100644
--- a/src/Makefile_Cxx.am
+++ b/src/Makefile_Cxx.am
@@ -4,7 +4,7 @@ if HAVE_CXX11
 CLEANFILES += $(eo_eolian_cxx_hh) $(eo_eolian_cxx_impl_hh)
 
 installed_eocxxheadersdir = $(includedir)/eo-cxx-@VMAJ@/
-nodist_installed_eocxxheaders_DATA = $(eo_eolian_cxx_hh) $(eo_eolian_cxx_impl)
+nodist_installed_eocxxheaders_DATA = $(eo_eolian_cxx_hh) 
$(eo_eolian_cxx_impl_hh)
 dist_installed_eocxxheaders_DATA = \
 bindings/cxx/eo_cxx/eo_concrete.hh \
 bindings/cxx/eo_cxx/eo_cxx_interop.hh \
@@ -20,7 +20,7 @@ bindings/cxx/eo_cxx/eo_private.hh
 
 ### Elementary C++
 installed_elementarycxxmainheadersdir = $(includedir)/elementary-cxx-@VMAJ@/
-nodist_installed_elementarycxxmainheaders_DATA = $(elementary_eolian_cxx_hh) 
$(elementary_eolian_cxx_impl) \
+nodist_installed_elementarycxxmainheaders_DATA = $(elementary_eolian_cxx_hh) 
$(elementary_eolian_cxx_impl_hh) \
 lib/elementary/Elementary.hh
 
 lib/elementary/Elementary.hh: $(elementary_eolian_cxx_hh)
@@ -46,11 +46,11 @@ lib/elementary/Elementary.hh: $(elementary_eolian_cxx_hh)
@for i in $(elementary_eolian_cxx_hh); do echo "#include <$$(basename 
$$i)>" >> $(top_builddir)/src/lib/elementary/Elementary.hh; done
@echo @ECHO_E@ "#endif\n" >> 
$(top_builddir)/src/lib/elementary/Elementary.hh
 
-CLEANFILES += $(elementary_eolian_cxx_hh) $(elementary_eolian_cxx_impl) 
lib/elementary/Elementary.hh
+CLEANFILES += $(elementary_eolian_cxx_hh) $(elementary_eolian_cxx_impl_hh) 
lib/elementary/Elementary.hh
 
 ### Efl C++
 installed_eflcxxmainheadersdir = $(includedir)/efl-cxx-@VMAJ@/
-nodist_installed_eflcxxmainheaders_DATA = $(efl_eolian_cxx_hh) 
$(efl_eolian_cxx_impl) lib/efl/Efl.hh
+nodist_installed_eflcxxmainheaders_DATA = $(efl_eolian_cxx_hh) 
$(efl_eolian_cxx_impl_hh) lib/efl/Efl.hh
 
 lib/efl/Efl.hh: $(efl_eolian_cxx_hh)
@echo @ECHO_E@ "#ifndef EFL_CXX_HH\n#define EFL_CXX_HH\n" > 
$(top_builddir)/src/lib/efl/Efl.hh
@@ -58,14 +58,14 @@ lib/efl/Efl.hh: $(efl_eolian_cxx_hh)
@for i in $(efl_eolian_cxx_hh); do echo "#include <$$(basename $$i)>" 
>> $(top_builddir)/src/lib/efl/Efl.hh; done
@echo @ECHO_E@ "#endif\n\n#endif\n" >> 
$(top_builddir)/src/lib/efl/Efl.hh
 
-CLEANFILES += $(efl_eolian_cxx_hh) $(efl_eolian_cxx_impl) lib/efl/Efl.hh
+CLEANFILES += $(efl_eolian_cxx_hh) $(efl_eolian_cxx_impl_hh) lib/efl/Efl.hh
 
 ### Evas C++
 installed_evascxxmainheadersdir = $(includedir)/evas-cxx-@VMAJ@/
 nodist_installed_evascxxmainheaders_DATA = lib/evas/Evas.hh
 
 installed_evascxxcanvasheadersdir = $(includedir)/evas-cxx-@VMAJ@/canvas
-nodist_installed_evascxxcanvasheaders_DATA = $(evas_eolian_cxx_hh) 
$(evas_eolian_cxx_impl)
+nodist_installed_evascxxcanvasheaders_DATA = $(evas_eolian_cxx_hh) 
$(evas_eolian_cxx_impl_hh)
 
 lib/evas/Evas.hh: $(evas_eolian_cxx_hh)
@echo @ECHO_E@ "#ifndef EFL_CXX_EVAS_HH\n#define EFL_CXX_EVAS_HH\n" > 
$(top_builddir)/src/lib/evas/Evas.hh
@@ -73,11 +73,11 @@ lib/evas/Evas.hh: $(evas_eolian_cxx_hh)
@for i in $(evas_eolian_cxx_hh); do echo "#include " >> $(top_builddir)/src/lib/evas/Evas.hh; done
@echo @ECHO_E@ "#endif\n\n#endif\n" >> 
$(top_builddir)/src/lib/evas/Evas.hh
 
-CLEANFILES += $(evas_eolian_cxx_hh) $(evas_eolian_cxx_impl) lib/evas/Evas.hh
+CLEANFILES += $(evas_eolian_cxx_hh) $(evas_eolian_cxx_impl_hh) lib/evas/Evas.hh
 
 ### Eldbus C++
 installed_eldbuscxxmainheadersdir = $(includedir)/eldbus_cxx-@VMAJ@
-nodist_installed_eldbuscxxmainheaders_DATA = $(eldbus_eolian_cxx_hh) 
$(eldbus_eolian_cxx_impl) lib/eldbus/Eldbus_Model.hh
+nodist_installed_eldbuscxxmainheaders_DATA = $(eldbus_eolian_cxx_hh) 
$(eldbus_eolian_cxx_impl_hh) lib/eldbus/Eldbus_Model.hh
 dist_installed_eldbuscxxmainheaders_DATA = \
 bindings/cxx/eldbus_cxx/eldbus_basic.hh \
 bindings/cxx/eldbus_cxx/eldbus_error.hh \
@@ -98,7 +98,7 @@ lib/eldbus/Eldbus_Model.hh: $(eldbus_eolian_cxx_hh)
@for i in $(eldbus_eolian_cxx_hh); do echo "#include <$$(basename 
$$i)>" >> $(top_builddir)/src/lib/eldbus/Eldbus_Model.hh; done
@echo @ECHO_E@ "#endif\n\n#endif\n" >> 
$(top_builddir)/src/lib/eldbus/Eldbus_Model.hh
 
-CLEANFILES += $(eldbus_eolian_cxx_hh) $(eldbus_eolian_cxx_impl) 
lib/eldbus/Eldbus_Model.hh
+CLEANFILES += $(eldbus_eolian_cxx_hh) $(eldbus_e

[EGIT] [core/efl] master 02/02: Fix use of undeclared type in C++ tests compilation

2016-10-13 Thread Felipe Magno de Almeida
felipealmeida pushed a commit to branch master.

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

commit e0390009bc28e755e9fbb4f4f8a2a1ccecbaa641
Author: Felipe Magno de Almeida 
Date:   Thu Oct 13 17:51:52 2016 +0900

Fix use of undeclared type in C++ tests compilation

Moved Evas_Object_Intercept_Cb_Type; typedef declaration after enum
_Evas_Object_Intercept_Cb_Type definition
---
 src/lib/evas/Evas_Legacy.h | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/lib/evas/Evas_Legacy.h b/src/lib/evas/Evas_Legacy.h
index 7c67cfc..7b96028 100644
--- a/src/lib/evas/Evas_Legacy.h
+++ b/src/lib/evas/Evas_Legacy.h
@@ -2501,8 +2501,6 @@ EAPI void 
*evas_object_intercept_focus_set_callback_del(Evas_Object *obj, Evas_O
 /* Internal APIs for legacy compatibility */
 #ifdef EFL_CANVAS_OBJECT_PROTECTED
 
-typedef enum _Evas_Object_Intercept_Cb_Type Evas_Object_Intercept_Cb_Type;
-
 enum _Evas_Object_Intercept_Cb_Type
 {
EVAS_OBJECT_INTERCEPT_CB_VISIBLE,
@@ -2518,6 +2516,7 @@ enum _Evas_Object_Intercept_Cb_Type
EVAS_OBJECT_INTERCEPT_CB_CLIP_SET,
EVAS_OBJECT_INTERCEPT_CB_CLIP_UNSET,
 };
+typedef enum _Evas_Object_Intercept_Cb_Type Evas_Object_Intercept_Cb_Type;
 
 EWAPI Eina_Bool _evas_object_intercept_call(Evas_Object *obj, 
Evas_Object_Intercept_Cb_Type type, Eina_Bool internal, ...);
 

-- 




[EGIT] [core/efl] master 01/01: ecore: free futures which are still pending on shutdown

2016-10-13 Thread Marcel Hollerbach
bu5hm4n pushed a commit to branch master.

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

commit f63ede42818595ae7d92f7a4fe5f053d5c898cee
Author: Marcel Hollerbach 
Date:   Thu Oct 13 10:27:06 2016 +0200

ecore: free futures which are still pending on shutdown

otherwise we are leaking a eina list.

This was discovered while running the elm_suite with CK_FORK=no, since
ecore and eina are init´ed and shutdown´ed, after the shutdown this list
points to freeed memory pools. So in the next testcase the list is
invalid and crashes. This fixes it with freeing the list on shutdown.
---
 src/lib/ecore/ecore_main.c | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/src/lib/ecore/ecore_main.c b/src/lib/ecore/ecore_main.c
index 6b1ac3e..d1b66a6 100644
--- a/src/lib/ecore/ecore_main.c
+++ b/src/lib/ecore/ecore_main.c
@@ -1598,6 +1598,8 @@ ecore_main_fd_handler_active_set(Ecore_Fd_Handler  
*fd_handler,
 void
 _ecore_main_shutdown(void)
 {
+   Efl_Future *future;
+
if (in_main_loop)
  {
 ERR("\n"
@@ -1605,6 +1607,10 @@ _ecore_main_shutdown(void)
 "*** Program may crash or behave strangely now.");
 return;
  }
+
+   EINA_LIST_FREE(_pending_futures, future)
+ efl_del(future);
+
while (fd_handlers)
  {
 Ecore_Fd_Handler *fdh;

-- 




[EGIT] [core/efl] master 02/02: evas/module: add a new module in vg_loader for eet

2016-10-13 Thread Subhransu Mohanty
jpeg pushed a commit to branch master.

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

commit 45b103eb0a3a91238f6ee1d66ccb2614925a2e64
Author: Subhransu Mohanty 
Date:   Thu Oct 13 17:09:39 2016 +0900

evas/module: add a new module in vg_loader for eet

Reviewers: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D4347
---
 configure.ac   |  3 ++
 m4/evas_check_loader.m4| 16 ++
 src/Makefile_Evas.am   | 31 +--
 src/lib/evas/file/evas_module.c|  4 ++
 src/modules/evas/vg_loaders/eet/evas_vg_load_eet.c | 60 ++
 5 files changed, 110 insertions(+), 4 deletions(-)

diff --git a/configure.ac b/configure.ac
index 0b7adba..0794852 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2391,6 +2391,8 @@ case "$host_os" in
 esac
 
 ARG_ENABLE_EVAS_VG_LOADER(SVG, static)
+ARG_ENABLE_EVAS_VG_LOADER(EET, static)
+
 
 ARG_ENABLE_EVAS_IMAGE_LOADER(BMP, static)
 ARG_ENABLE_EVAS_IMAGE_LOADER(Eet, static)
@@ -2713,6 +2715,7 @@ AM_CONDITIONAL([EVAS_STATIC_BUILD_GL_COMMON], [test 
"x${have_static_evas_engine_
 ## Vg Loaders
 
 EVAS_CHECK_VG_LOADER([SVG], [${want_evas_vg_loader_svg}])
+EVAS_CHECK_VG_LOADER([EET], [${want_evas_vg_loader_eet}])
 
 ## Image Loaders
 
diff --git a/m4/evas_check_loader.m4 b/m4/evas_check_loader.m4
index 5bf9277..b574931 100644
--- a/m4/evas_check_loader.m4
+++ b/m4/evas_check_loader.m4
@@ -42,6 +42,22 @@ AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
 
 ])
 
+dnl use: EVAS_CHECK_VG_LOADER_DEP_EET(loader, want_static[, ACTION-IF-FOUND[, 
ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_VG_LOADER_DEP_EET],
+[
+
+have_dep="yes"
+evas_vg_loader_[]$1[]_cflags=""
+evas_vg_loader_[]$1[]_libs=""
+
+AC_SUBST([evas_vg_loader_$1_cflags])
+AC_SUBST([evas_vg_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
 dnl use: ARG_ENABLE_EVAS_IMAGE_LOADER(loader, default_value)
 
 AC_DEFUN([ARG_ENABLE_EVAS_IMAGE_LOADER],
diff --git a/src/Makefile_Evas.am b/src/Makefile_Evas.am
index 369e3eb..0b9e79e 100644
--- a/src/Makefile_Evas.am
+++ b/src/Makefile_Evas.am
@@ -1531,10 +1531,6 @@ if EVAS_STATIC_BUILD_VG_SVG
 lib_evas_libevas_la_SOURCES += modules/evas/vg_loaders/svg/evas_vg_load_svg.c
 lib_evas_libevas_la_CPPFLAGS += @evas_vg_loader_svg_cflags@
 lib_evas_libevas_la_LIBADD += @evas_vg_loader_svg_libs@
-if EVAS_CSERVE2
-bin_evas_evas_cserve2_slave_CPPFLAGS += @evas_vg_loader_svg_cflags@
-bin_evas_evas_cserve2_slave_LDADD += @evas_vg_loader_svg_libs@
-endif
 else
 vgloadersvgpkgdir = $(libdir)/evas/modules/vg_loaders/svg/$(MODULE_ARCH)
 vgloadersvgpkg_LTLIBRARIES = modules/evas/vg_loaders/svg/module.la
@@ -1558,6 +1554,33 @@ modules_evas_vg_loaders_svg_module_la_LIBTOOLFLAGS = 
--tag=disable-static
 endif
 endif
 
+if BUILD_VG_LOADER_EET
+if EVAS_STATIC_BUILD_VG_EET
+lib_evas_libevas_la_SOURCES += modules/evas/vg_loaders/eet/evas_vg_load_eet.c
+lib_evas_libevas_la_CPPFLAGS += @evas_vg_loader_eet_cflags@
+lib_evas_libevas_la_LIBADD += @evas_vg_loader_eet_libs@
+else
+vgloadereetpkgdir = $(libdir)/evas/modules/vg_loaders/eet/$(MODULE_ARCH)
+vgloadereetpkg_LTLIBRARIES = modules/evas/vg_loaders/eet/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_vgloadereetpkgLTLIBRARIES = install-vgloadereetpkgLTLIBRARIES
+$(install_vgloadereetpkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_evas_vg_loaders_eet_module_la_SOURCES = 
modules/evas/vg_loaders/eet/evas_vg_load_eet.c
+modules_evas_vg_loaders_eet_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl 
\
+-I$(top_srcdir)/src/lib/evas/include \
+@EVAS_CFLAGS@ \
+@evas_vg_loader_eet_cflags@
+modules_evas_vg_loaders_eet_module_la_LIBADD = \
+@USE_EVAS_LIBS@ \
+@evas_vg_loader_eet_libs@
+modules_evas_vg_loaders_eet_module_la_DEPENDENCIES = @USE_EVAS_INTERNAL_LIBS@
+modules_evas_vg_loaders_eet_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_evas_vg_loaders_eet_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+endif
 
 
 if BUILD_LOADER_BMP
diff --git a/src/lib/evas/file/evas_module.c b/src/lib/evas/file/evas_module.c
index f8d2787..ea4f5c2 100644
--- a/src/lib/evas/file/evas_module.c
+++ b/src/lib/evas/file/evas_module.c
@@ -130,6 +130,7 @@ EVAS_EINA_STATIC_MODULE_DEFINE(engine, software_x11);
 #endif
 
 #if !EVAS_MODULE_NO_VG_LOADERS
+EVAS_EINA_STATIC_MODULE_DEFINE(vg_loader, eet);
 EVAS_EINA_STATIC_MODULE_DEFINE(vg_loader, svg);
 #endif
 
@@ -203,6 +204,9 @@ static const struct {
 #ifdef EVAS_STATIC_BUILD_VG_SVG
   EVAS_EINA_STATIC_MODULE_USE(vg_loader, svg),
 #endif
+#ifdef EVAS_STATIC_BUILD_VG_EET
+  EVAS_EINA_STATIC_MODULE_USE(vg_loader, eet),
+#endif
 #endif
 #if !EVAS_MODULE_NO_IMAGE_LOADERS
 #ifdef EVAS_STATIC_BUILD_BMP
diff --git a/src/modules/evas/vg_loaders/eet/evas_vg_load_eet.c 
b/src/mo

[EGIT] [core/efl] master 01/02: evas: Use proper type in smart objects API (eo)

2016-10-13 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit c5ffad3731e91bddc2f524b5272f99b7f130f98b
Author: Jean-Philippe Andre 
Date:   Thu Oct 13 10:25:03 2016 +0900

evas: Use proper type in smart objects API (eo)
---
 src/lib/evas/canvas/efl_canvas_group.eo | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/evas/canvas/efl_canvas_group.eo 
b/src/lib/evas/canvas/efl_canvas_group.eo
index 9f88181..cf59d7d 100644
--- a/src/lib/evas/canvas/efl_canvas_group.eo
+++ b/src/lib/evas/canvas/efl_canvas_group.eo
@@ -60,7 +60,7 @@ class Efl.Canvas.Group (Efl.Canvas.Object)
from both the $Efl.Object children list as well as the 
$Efl.Container
content list.
  ]]
- return: free(own(iterator), eina_iterator_free);
+ return: free(own(iterator), eina_iterator_free);
  legacy: evas_object_smart_iterator_new;
   }
   group_member_add {

--