[EGIT] [core/efl] master 01/01: configure.ac: Print eolian_gen if specified with --with-bin-eolian-gen

2014-03-20 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 1edf113ec07428f29bd8f56118a333b3a7a1ef17
Author: Jean-Philippe Andre 
Date:   Fri Mar 21 15:48:54 2014 +0900

configure.ac: Print eolian_gen if specified with --with-bin-eolian-gen
---
 configure.ac | 4 
 1 file changed, 4 insertions(+)

diff --git a/configure.ac b/configure.ac
index 780d6bd..672e1ba 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4288,6 +4288,10 @@ if test "x${with_binary_edje_cc}" != "x"; then
 echo "  edje_cc...: ${with_binary_edje_cc}"
 fi
 
+if test "x${with_binary_eolian_gen}" != "x"; then
+echo "  eolian_gen: ${with_binary_eolian_gen}"
+fi
+
 echo "  "
 echo "Installation: make install (as root if needed, with 'su' or 'sudo')"
 echo "  prefix: $prefix"

-- 




[EGIT] [core/efl] master 01/01: oops - remove debug echo

2014-03-20 Thread Carsten Haitzler
raster pushed a commit to branch master.

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

commit 19b1f1cd27a063feb20c9d7b08828b74352f5bab
Author: Carsten Haitzler (Rasterman) 
Date:   Fri Mar 21 15:49:36 2014 +0900

oops - remove debug echo
---
 configure.ac | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/configure.ac b/configure.ac
index 731b7c9..780d6bd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4520,9 +4520,6 @@ if test "x$prefix" != "x/usr"; then
   done
   resolved_dbusservicedir=$path
 
-echo "GGG"
-echo "$resolved_dbusservicedir"
-echo "GGG"
   old=
   path=$USER_SESSION_DIR
   while test "x$old" != "x$path"; do

-- 




[EGIT] [core/efl] efl-1.9 01/01: Evas filters: fix potential memory leak

2014-03-20 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch efl-1.9.

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

commit 409319ec9dbf4b6e0771b4dfdccf64b1d8488359
Author: Jean-Philippe Andre 
Date:   Fri Mar 21 15:40:56 2014 +0900

Evas filters: fix potential memory leak

Unlikely use case trying to delete a source when there are no
sources yet.

@fix (master b027e58a96b4d86bf77d3af28c50226a558d2202)
---
 src/lib/evas/canvas/evas_object_text.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/lib/evas/canvas/evas_object_text.c 
b/src/lib/evas/canvas/evas_object_text.c
index bc11ae8..8a35fdd 100644
--- a/src/lib/evas/canvas/evas_object_text.c
+++ b/src/lib/evas/canvas/evas_object_text.c
@@ -2801,6 +2801,7 @@ _filter_source_set(Eo *eo_obj, void *_pd, va_list *list)
 
if (!o->cur.filter.sources)
  {
+if (!source) return;
 o->cur.filter.sources = eina_hash_string_small_new
   (EINA_FREE_CB(_filter_source_hash_free_cb));
  }

-- 




[EGIT] [core/efl] master 04/06: Evas filters: Allow BLUR and GROW with radius 0

2014-03-20 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit eee3c1c77389f6ee0dc0bf067c594335eba2d303
Author: Jean-Philippe Andre 
Date:   Fri Mar 21 12:04:35 2014 +0900

Evas filters: Allow BLUR and GROW with radius 0

Fallback to a standard blend instruction instead of failing
miserably just because the radius is 0.
---
 src/lib/evas/filters/evas_filter.c | 12 +++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/lib/evas/filters/evas_filter.c 
b/src/lib/evas/filters/evas_filter.c
index 16cc920..0c6c40f 100644
--- a/src/lib/evas/filters/evas_filter.c
+++ b/src/lib/evas/filters/evas_filter.c
@@ -914,7 +914,11 @@ evas_filter_command_blur_add(Evas_Filter_Context *ctx, 
void *drawctx,
 
if (dx < 0) dx = 0;
if (dy < 0) dy = 0;
-   if (!dx && !dy) goto fail;
+   if (!dx && !dy)
+ {
+DBG("Changing 0px blur into simple blend");
+return evas_filter_command_blend_add(ctx, drawctx, inbuf, outbuf, ox, 
oy, EVAS_FILTER_FILL_MODE_NONE);
+ }
 
in = _filter_buffer_get(ctx, inbuf);
if (!in)
@@ -1213,6 +1217,12 @@ evas_filter_command_grow_add(Evas_Filter_Context *ctx, 
void *draw_context,
 
EINA_SAFETY_ON_NULL_RETURN_VAL(ctx, -1);
 
+   if (!radius)
+ {
+DBG("Changing 0px grow into simple blend");
+return evas_filter_command_blend_add(ctx, draw_context, inbuf, outbuf, 
0, 0, EVAS_FILTER_FILL_MODE_NONE);
+ }
+
in = _filter_buffer_get(ctx, inbuf);
EINA_SAFETY_ON_NULL_RETURN_VAL(in, -1);
 

-- 




[EGIT] [core/efl] master 01/06: Evas filters: fix blur from rgba to output buffer

2014-03-20 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 919b32be205ac41ed8b578f6c7d853763ec82223
Author: Jean-Philippe Andre 
Date:   Fri Mar 21 12:20:11 2014 +0900

Evas filters: fix blur from rgba to output buffer

When blurring an RGBA buffer to the output buffer,
we don't need to convert the colorspace... but then we'll just
override what was already there.

Introduce a 'dirty' flag set to true whenever a command writes
to an output buffer.
---
 src/lib/evas/filters/evas_filter.c | 43 +++---
 src/lib/evas/filters/evas_filter_private.h |  1 +
 2 files changed, 35 insertions(+), 9 deletions(-)

diff --git a/src/lib/evas/filters/evas_filter.c 
b/src/lib/evas/filters/evas_filter.c
index 3389061..16cc920 100644
--- a/src/lib/evas/filters/evas_filter.c
+++ b/src/lib/evas/filters/evas_filter.c
@@ -892,6 +892,7 @@ evas_filter_command_fill_add(Evas_Filter_Context *ctx, void 
*draw_context,
ENFN->context_clip_get(ENDT, draw_context, &cx, &cy, &cw, &ch);
DRAW_CLIP_SET(cx, cy, cw, ch);
 
+   buf->dirty = EINA_TRUE;
return cmd->id;
 }
 
@@ -904,7 +905,7 @@ evas_filter_command_blur_add(Evas_Filter_Context *ctx, void 
*drawctx,
Evas_Filter_Buffer *in = NULL, *out = NULL, *tmp = NULL, *in_dy = NULL;
Evas_Filter_Buffer *out_dy = NULL, *out_dx = NULL;
Evas_Filter_Buffer *copybuf = NULL, *blur_out = NULL;
-   Eina_Bool copy_back = EINA_FALSE, convert = EINA_FALSE;
+   Eina_Bool copy_back = EINA_FALSE, blend = EINA_FALSE;
int R, G, B, A;
int ret = 0, id;
 
@@ -929,6 +930,8 @@ evas_filter_command_blur_add(Evas_Filter_Context *ctx, void 
*drawctx,
 goto fail;
  }
 
+   blend = (out->dirty && !out->transient);
+
switch (type)
  {
   case EVAS_FILTER_BLUR_GAUSSIAN:
@@ -1008,12 +1011,12 @@ evas_filter_command_blur_add(Evas_Filter_Context *ctx, 
void *drawctx,
 ERR("Output and input don't have the same format");
 goto fail;
  }
-   else if (in->alpha_only && !out->alpha_only)
+   else if (blend || (in->alpha_only && !out->alpha_only))
  {
-DBG("Adding extra blending step (Alpha --> RGBA)");
-blur_out = evas_filter_temporary_buffer_get(ctx, 0, 0, EINA_TRUE);
+DBG("Adding extra blending step (%s --> RGBA)", in->alpha_only ? 
"Alpha" : "RGBA");
+blur_out = evas_filter_temporary_buffer_get(ctx, 0, 0, in->alpha_only);
 if (!blur_out) goto fail;
-convert = EINA_TRUE;
+blend = EINA_TRUE;
  }
else
  blur_out = out;
@@ -1023,7 +1026,7 @@ evas_filter_command_blur_add(Evas_Filter_Context *ctx, 
void *drawctx,
 tmp = evas_filter_temporary_buffer_get(ctx, 0, 0, in->alpha_only);
 if (!tmp) goto fail;
 
-if (!convert && (ox || oy))
+if (!blend && (ox || oy))
   {
  copybuf = evas_filter_temporary_buffer_get(ctx, 0, 0, 
in->alpha_only);
  if (!copybuf) goto fail;
@@ -1127,13 +1130,16 @@ evas_filter_command_blur_add(Evas_Filter_Context *ctx, 
void *drawctx,
 ox = oy = 0;
  }
 
-   if (convert)
+   if (blend)
  {
-DBG("Add convert %d -> %d", blur_out->id, out->id);
+DBG("Add blend %d (%s) -> %d (%s)",
+blur_out->id, blur_out->alpha_only ? "Alpha" : "RGBA",
+out->id, out->alpha_only ? "Alpha" : "RGBA");
 id = evas_filter_command_blend_add(ctx, drawctx, blur_out->id, 
out->id, ox, oy, EVAS_FILTER_FILL_MODE_NONE);
 if (id < 0) goto fail;
  }
 
+   out->dirty = EINA_TRUE;
_filter_buffer_unlock_all(ctx);
return ret;
 
@@ -1192,6 +1198,7 @@ evas_filter_command_blend_add(Evas_Filter_Context *ctx, 
void *drawctx,
  DBG("Draw clip: %d,%d,%d,%d", cmd->draw.clip.x, cmd->draw.clip.y,
  cmd->draw.clip.w, cmd->draw.clip.h);
 
+   out->dirty = EINA_TRUE;
return cmd->id;
 }
 
@@ -1202,7 +1209,7 @@ evas_filter_command_grow_add(Evas_Filter_Context *ctx, 
void *draw_context,
int blurcmd, threshcmd, blendcmd, tmin = 0, growbuf;
int diam = abs(radius) * 2 + 1;
DATA8 curve[256] = {0};
-   Evas_Filter_Buffer *tmp = NULL, *in;
+   Evas_Filter_Buffer *tmp = NULL, *in, *out;
 
EINA_SAFETY_ON_NULL_RETURN_VAL(ctx, -1);
 
@@ -1246,6 +1253,16 @@ evas_filter_command_grow_add(Evas_Filter_Context *ctx, 
void *draw_context,
   memset(curve + end, 255, 256 - end);
  }
 
+   out = _filter_buffer_get(ctx, growbuf);
+   if (!out) return -1;
+   out->dirty = EINA_TRUE;
+   if (growbuf != outbuf)
+ {
+out = _filter_buffer_get(ctx, growbuf);
+if (!out) return -1;
+out->dirty = EINA_TRUE;
+ }
+
threshcmd = evas_filter_command_curve_add(ctx, draw_context, growbuf, 
growbuf,
  curve, EVAS_FILTER_CHANNEL_ALPHA);
if (threshcmd < 0)
@@ -1312,6 +1329,7 @@ evas_filter_command_curve_add(Evas_Filter_Context *ctx,
cmd->curve.data

[EGIT] [core/efl] master 03/06: Evas filters: Add new instruction padding_set

2014-03-20 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit 91a471b4dc72cdb621f782b54eba21188989f402
Author: Jean-Philippe Andre 
Date:   Fri Mar 21 11:52:52 2014 +0900

Evas filters: Add new instruction padding_set

This will allow forcing a specific value for the filter padding,
instead of relying on auto calculation.

Two advantages:
- Auto calculation can't be perfect, since it will add as much
  padding as required for the full blur effect
- This prepares the path for animations with effects, where the
  object size does not change over time
---
 src/lib/evas/filters/evas_filter_parser.c | 127 --
 src/lib/evas/include/evas_filter.h|   1 +
 2 files changed, 120 insertions(+), 8 deletions(-)

diff --git a/src/lib/evas/filters/evas_filter_parser.c 
b/src/lib/evas/filters/evas_filter_parser.c
index ce7e45d..aaa9e7b 100644
--- a/src/lib/evas/filters/evas_filter_parser.c
+++ b/src/lib/evas/filters/evas_filter_parser.c
@@ -316,7 +316,12 @@ struct _Evas_Filter_Program
Eina_Hash /* const char * : Evas_Filter_Proxy_Binding */ *proxies;
Eina_Inlist /* Evas_Filter_Instruction */ *instructions;
Eina_Inlist /* Buffer */ *buffers;
+   struct {
+  int l, r, t, b;
+   } pad;
Eina_Bool valid : 1;
+   Eina_Bool padding_calc : 1; // Padding has been calculated
+   Eina_Bool padding_set : 1; // Padding has been forced
 };
 
 /* Instructions */
@@ -1635,6 +1640,85 @@ _transform_instruction_prepare(Evas_Filter_Instruction 
*instr)
return EINA_TRUE;
 }
 
+static void
+_padding_set_padding_update(Evas_Filter_Program *pgm,
+Evas_Filter_Instruction *instr,
+int *padl, int *padr, int *padt, int *padb)
+{
+   int l = 0, r = 0, t = 0, b = 0;
+   Eina_Bool lset = EINA_FALSE;
+   Eina_Bool rset = EINA_FALSE;
+   Eina_Bool tset = EINA_FALSE;
+   Eina_Bool bset = EINA_FALSE;
+
+   l = _instruction_param_geti(instr, "l", &lset);
+   r = _instruction_param_geti(instr, "r", &rset);
+   t = _instruction_param_geti(instr, "t", &tset);
+   b = _instruction_param_geti(instr, "b", &bset);
+
+   if (!lset && !rset && !bset && !tset)
+ DBG("padding_set() called without specifying any of l,r,t,b resets to 0");
+
+   if (l < 0 || r < 0 || t < 0 || b < 0)
+ {
+WRN("invalid padding values in padding_set(%d, %d, %d, %d), resets to 
0", l, r, t, b);
+l = r = t = b = 0;
+ }
+
+   if (!rset) r = l;
+   if (!tset) t = r;
+   if (!bset) b = t;
+
+   if (padl) *padl = l;
+   if (padr) *padr = r;
+   if (padt) *padt = t;
+   if (padb) *padb = b;
+   pgm->padding_set = EINA_TRUE;
+}
+
+/**
+  @page evasfiltersref
+
+  @subsection sec_commands_padding_set Padding_Set
+
+  Forcily set a specific padding for this filter.
+
+  @code
+padding_set (l, r = [l], t = [r], b = [t]);
+  @endcode
+
+  @param lPadding on the left side in pixels.
+  @param rPadding on the right side in pixels. If unset, defaults to 
@a l.
+  @param tPadding on the top in pixels. If unset, defaults to @a r.
+  @param bPadding on the bottom in pixels. If unset, defaults to @a t.
+
+  All values must be >= 0. When filtering 'filled' images, some values may be 
too high
+  and would result in completely hiding the image.
+
+  It is not possible to set only one of those without forcing the others as 
well.
+  A common use case will be when changing a blur size during an animation, or
+  when applying a mask that will hide most of the (blurred) text.
+
+  @since 1.10
+ */
+
+static Eina_Bool
+_padding_set_instruction_prepare(Evas_Filter_Instruction *instr)
+{
+   EINA_SAFETY_ON_NULL_RETURN_VAL(instr, EINA_FALSE);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(instr->name, EINA_FALSE);
+   EINA_SAFETY_ON_FALSE_RETURN_VAL(!strcasecmp(instr->name, "padding_set"), 
EINA_FALSE);
+
+   instr->type = EVAS_FILTER_MODE_PADDING_SET;
+   instr->pad.update = _padding_set_padding_update;
+   _instruction_param_seq_add(instr, "l", VT_INT, 0);
+   _instruction_param_seq_add(instr, "r", VT_INT, 0);
+   _instruction_param_seq_add(instr, "t", VT_INT, 0);
+   _instruction_param_seq_add(instr, "b", VT_INT, 0);
+
+   return EINA_TRUE;
+}
+
 static Evas_Filter_Instruction *
 _instruction_create(const char *name)
 {
@@ -1661,6 +1745,8 @@ _instruction_create(const char *name)
  prepare = _mask_instruction_prepare;
else if (!strcasecmp(name, "transform"))
  prepare = _transform_instruction_prepare;
+   else if (!strcasecmp(name, "padding_set"))
+ prepare = _padding_set_instruction_prepare;
 
if (!prepare)
  {
@@ -1825,6 +1911,7 @@ evas_filter_program_parse(Evas_Filter_Program *pgm, const 
char *str)
 
  // Add to the queue
  pgm->instructions = eina_inlist_append(pgm->instructions, 
EINA_INLIST_GET(instr));
+ pgm->padding_calc = EINA_FALSE;
  instr = NULL;
  

[EGIT] [core/efl] master 05/06: Evas filters: Fix Eo documentation of program.set

2014-03-20 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit fc3472aae517432427bba94e07535af536e77971
Author: Jean-Philippe Andre 
Date:   Mon Mar 17 16:53:29 2014 +0900

Evas filters: Fix Eo documentation of program.set

The generated header "looked" a bit broken and some bits of doc
were dropped during the transition. Not a very big deal. :)
---
 src/lib/evas/canvas/evas_text.eo | 28 +---
 1 file changed, 25 insertions(+), 3 deletions(-)

diff --git a/src/lib/evas/canvas/evas_text.eo b/src/lib/evas/canvas/evas_text.eo
index eb214ed..609138c 100644
--- a/src/lib/evas/canvas/evas_text.eo
+++ b/src/lib/evas/canvas/evas_text.eo
@@ -297,15 +297,37 @@ class Evas_Text (Evas_Object)
   }
   filter_program {
  set {
-/*@ Set an Evas filter program on this Text Object. If the program 
fails to compile (syntax error, invalid buffer name, etc...), the standard text 
effects will be applied instead (SHADOW, etc...). switch back to the standard 
text effects. */
+/*@ Set an Evas filter program on this Text Object.
+
+If the program fails to compile (syntax error, invalid
+buffer name, etc...), the standard text effects will be
+applied instead (SHADOW, etc...). switch back to the
+standard text effects.
+
+@since 1.9
+@note EXPERIMENTAL FEATURE. This is an unstable API,
+please use only for testing purposes.
+@see @ref evasfiltersref "Evas filters reference"
+*/
  }
  values {
-const char* program; /*@ The program code, as defined by the @ref 
evasfiltersref */
+const char* program; /*@ The program code, as defined
+  by the @ref evasfiltersref "Evas filters script language".
+  Pass NULL to remove the former program and switch back
+  to the standard text effect */
  }
   }
   filter_source {
  set {
-/*@ Bind an object to use as a mask or texture with Evas Filters. 
This will create automatically a new RGBA buffer containing the source object's 
pixels (as it is rendered). */
+/*@ Bind an object to use as a mask or texture with Evas Filters.
+
+This will create automatically a new RGBA buffer containing
+the source object's pixels (as it is rendered).
+
+@since 1.9
+@note EXPERIMENTAL FEATURE. This is an unstable API,
+please use only for testing purposes.
+@see @ref evasfiltersref "Evas filters reference" */
  }
  values {
 const char* name; /*@ Object name as used in the program code */

-- 




[EGIT] [core/efl] master 02/06: Evas filters: Fix blur corner cases with small images

2014-03-20 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit c7616dd73835cd3918e65a4c105745461e6c312d
Author: Jean-Philippe Andre 
Date:   Thu Mar 20 18:26:04 2014 +0900

Evas filters: Fix blur corner cases with small images

If the buffer size is smaller than the blurring kernel, then
special precautions must be taken to properly read the source
pixels. Also, fix the corner cases near the left & right edges
(or top & bottom).
---
 src/lib/evas/filters/blur/blur_box_alpha_.c | 94 +--
 src/lib/evas/filters/blur/blur_box_rgba_.c  | 98 -
 src/lib/evas/filters/evas_filter_blur.c |  8 ---
 3 files changed, 102 insertions(+), 98 deletions(-)

diff --git a/src/lib/evas/filters/blur/blur_box_alpha_.c 
b/src/lib/evas/filters/blur/blur_box_alpha_.c
index 71ac943..4257a5e 100644
--- a/src/lib/evas/filters/blur/blur_box_alpha_.c
+++ b/src/lib/evas/filters/blur/blur_box_alpha_.c
@@ -32,6 +32,8 @@ _box_blur_alpha_horiz_step(const DATA8* restrict const 
srcdata,
 
span1 = alloca(len);
span2 = alloca(len);
+   memset(span1, 0, len);
+   memset(span2, 0, len);
 
// For each line, apply as many blurs as requested
for (int l = 0; l < loops; l++)
@@ -50,8 +52,6 @@ _box_blur_alpha_horiz_step(const DATA8* restrict const 
srcdata,
   {
  const int radius = radii[run];
  const int left = MIN(radius, len);
- const int right = MIN(radius, (len - radius));
- int acc = 0;
 
 #if DIV_USING_BITSHIFT
  const int pow2 = pow2_shifts[run];
@@ -60,44 +60,46 @@ _box_blur_alpha_horiz_step(const DATA8* restrict const 
srcdata,
  const int divider = 2 * radius + 1;
 #endif
 
- const DATA8* restrict sr = src;
  const DATA8* restrict sl = src;
+ const DATA8* restrict sr = src;
+ const DATA8* restrict sre = src + len;
+ const DATA8* restrict sle = src + len - radius;
  DATA8* restrict d = dst;
+ int acc = 0, count = 0;
 
  // Read-ahead & accumulate
- for (int k = left; k; k--)
+ for (int x = left; x > 0; x--)
{
-  acc += *sr;
-  sr += 1;
+  acc += *sr++;
+  count++;
}
 
  // Left edge
- for (int k = 0; k < left; k++)
+ for (int x = left; x > 0; x--)
{
-  acc += *sr;
-  *d = acc / (k + left + 1);
-  sr += 1;
-  d += 1;
+  if (sr < sre)
+{
+   acc += *sr++;
+   count++;
+}
+
+  *d++ = acc / count;
}
 
  // Middle part, normal blur
- for (int k = len - (2 * radius); k; k--)
+ while (sr < sre)
{
-  acc += *sr;
-  *d = DIVIDE(acc);
-  acc -= *sl;
-  sl += 1;
-  sr += 1;
-  d += 1;
+  acc += *sr++;
+  *d++ = DIVIDE(acc);
+  acc -= *sl++;
}
 
  // Right edge
- for (int k = right; k; k--)
+ count = 2 * radius + 1;
+ while (sl < sle)
{
-  *d = acc / (k + right);
-  acc -= *sl;
-  d += 1;
-  sl += 1;
+  *d++ = acc / (--count);
+  acc -= *sl++;
}
 
  // More runs to go: swap spans
@@ -177,8 +179,6 @@ _box_blur_alpha_vert_step(const DATA8* restrict const 
srcdata,
   {
  const int radius = radii[run];
  const int left = MIN(radius, len);
- const int right = MIN(radius, (len - radius));
- int acc = 0;
 
 #if DIV_USING_BITSHIFT
  const int pow2 = pow2_shifts[run];
@@ -187,44 +187,46 @@ _box_blur_alpha_vert_step(const DATA8* restrict const 
srcdata,
  const int divider = 2 * radius + 1;
 #endif
 
- const DATA8* restrict sr = src;
  const DATA8* restrict sl = src;
+ const DATA8* restrict sr = src;
+ const DATA8* restrict sre = src + len;
+ const DATA8* restrict sle = src + len - radius;
  DATA8* restrict d = dst;
+ int acc = 0, count = 0;
 
  // Read-ahead & accumulate
- for (int k = left; k; k--)
+ for (int x = left; x > 0; x--)
{
-  acc += *sr;
-  sr += 1;
+  acc += *sr++;
+  count++;
}
 
  // Left edge
- for (int k = 0; k < left; k++)
+ f

[EGIT] [core/efl] master 06/06: Evas filters: fix potential memory leak

2014-03-20 Thread Jean-Philippe ANDRÉ
jpeg pushed a commit to branch master.

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

commit b027e58a96b4d86bf77d3af28c50226a558d2202
Author: Jean-Philippe Andre 
Date:   Mon Mar 17 16:54:48 2014 +0900

Evas filters: fix potential memory leak

Unlikely use case trying to delete a source when there are no
sources yet.

@fix
---
 src/lib/evas/canvas/evas_object_text.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/lib/evas/canvas/evas_object_text.c 
b/src/lib/evas/canvas/evas_object_text.c
index 169ab3e..1e56bfa 100644
--- a/src/lib/evas/canvas/evas_object_text.c
+++ b/src/lib/evas/canvas/evas_object_text.c
@@ -2397,6 +2397,7 @@ _evas_text_filter_source_set(Eo *eo_obj, Evas_Text_Data 
*o, const char *name, Ev
 
if (!o->cur.filter.sources)
  {
+if (!source) return;
 o->cur.filter.sources = eina_hash_string_small_new
   (EINA_FREE_CB(_filter_source_hash_free_cb));
  }

-- 




[EGIT] [core/elementary] master 01/01: fix scrollbar to be clickable even if vieport is tiny compared to content

2014-03-20 Thread Carsten Haitzler
raster pushed a commit to branch master.

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

commit 9339dbf240fdb4b0fde86cf501edfae3b7893c0a
Author: Carsten Haitzler (Rasterman) 
Date:   Fri Mar 21 12:20:43 2014 +0900

fix scrollbar to be clickable even if vieport is tiny compared to content

@fix
---
 data/themes/edc/elm/scroller.edc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/data/themes/edc/elm/scroller.edc b/data/themes/edc/elm/scroller.edc
index 6f09002..9898161 100644
--- a/data/themes/edc/elm/scroller.edc
+++ b/data/themes/edc/elm/scroller.edc
@@ -106,7 +106,7 @@ group { name: "elm/scroller/base/default";
  dragable.confine: "sb_vbar_base";
  description { state: "default" 0.0;
 fixed: 1 1;
-min: 15 1;
+min: 15 13;
 rel1.relative: 0.5  0.5;
 rel1.to: "sb_vbar_base";
 rel2.relative: 0.5  0.5;
@@ -284,7 +284,7 @@ group { name: "elm/scroller/base/default";
  dragable.confine: "sb_hbar_base";
  description { state: "default" 0.0;
 fixed: 1 1;
-min: 1 15;
+min: 13 15;
 rel1.relative: 0.5  0.5;
 rel1.to: "sb_hbar_base";
 rel2.relative: 0.5  0.5;

-- 




[EGIT] [core/elementary] elementary-1.9 01/01: fix scrollbar to be clickable even if vieport is tiny compared to content

2014-03-20 Thread Carsten Haitzler
raster pushed a commit to branch elementary-1.9.

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

commit ff5aab1d38303e1acecc36c2436ea16ba339a7d7
Author: Carsten Haitzler (Rasterman) 
Date:   Fri Mar 21 12:20:43 2014 +0900

fix scrollbar to be clickable even if vieport is tiny compared to content

@fix
---
 data/themes/edc/elm/scroller.edc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/data/themes/edc/elm/scroller.edc b/data/themes/edc/elm/scroller.edc
index 6f09002..9898161 100644
--- a/data/themes/edc/elm/scroller.edc
+++ b/data/themes/edc/elm/scroller.edc
@@ -106,7 +106,7 @@ group { name: "elm/scroller/base/default";
  dragable.confine: "sb_vbar_base";
  description { state: "default" 0.0;
 fixed: 1 1;
-min: 15 1;
+min: 15 13;
 rel1.relative: 0.5  0.5;
 rel1.to: "sb_vbar_base";
 rel2.relative: 0.5  0.5;
@@ -284,7 +284,7 @@ group { name: "elm/scroller/base/default";
  dragable.confine: "sb_hbar_base";
  description { state: "default" 0.0;
 fixed: 1 1;
-min: 1 15;
+min: 13 15;
 rel1.relative: 0.5  0.5;
 rel1.to: "sb_hbar_base";
 rel2.relative: 0.5  0.5;

-- 




[EGIT] [core/efl] master 01/01: edje_cc now supports program.targets keyword for adding N targets in one line

2014-03-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit c4fc401d87c681ab7e8d0b36ab0aeb7c749c54d3
Author: Mike Blumenkrantz 
Date:   Thu Mar 20 19:36:00 2014 -0400

edje_cc now supports program.targets keyword for adding N targets in one 
line

@feature
---
 src/bin/edje/edje_cc_handlers.c | 144 
 1 file changed, 88 insertions(+), 56 deletions(-)

diff --git a/src/bin/edje/edje_cc_handlers.c b/src/bin/edje/edje_cc_handlers.c
index ddb765e..4f3a9b3 100644
--- a/src/bin/edje/edje_cc_handlers.c
+++ b/src/bin/edje/edje_cc_handlers.c
@@ -382,6 +382,7 @@ static void st_collections_group_programs_program_in(void);
 static void st_collections_group_programs_program_action(void);
 static void st_collections_group_programs_program_transition(void);
 static void st_collections_group_programs_program_target(void);
+static void st_collections_group_programs_program_targets(void);
 static void st_collections_group_programs_program_after(void);
 static void st_collections_group_programs_program_api(void);
 
@@ -748,6 +749,7 @@ New_Statement_Handler statement_handlers[] =
  {"collections.group.parts.part.description.programs.program.action", 
st_collections_group_programs_program_action}, /* dup */
  {"collections.group.parts.part.description.programs.program.transition", 
st_collections_group_programs_program_transition}, /* dup */
  {"collections.group.parts.part.description.programs.program.target", 
st_collections_group_programs_program_target}, /* dup */
+ {"collections.group.parts.part.description.programs.program.targets", 
st_collections_group_programs_program_targets}, /* dup */
  {"collections.group.parts.part.description.programs.program.after", 
st_collections_group_programs_program_after}, /* dup */
  {"collections.group.parts.part.description.programs.program.api", 
st_collections_group_programs_program_api}, /* dup */
  {"collections.group.parts.part.description.program.name", 
st_collections_group_programs_program_name}, /* dup */
@@ -757,6 +759,7 @@ New_Statement_Handler statement_handlers[] =
  {"collections.group.parts.part.description.program.action", 
st_collections_group_programs_program_action}, /* dup */
  {"collections.group.parts.part.description.program.transition", 
st_collections_group_programs_program_transition}, /* dup */
  {"collections.group.parts.part.description.program.target", 
st_collections_group_programs_program_target}, /* dup */
+ {"collections.group.parts.part.description.program.targets", 
st_collections_group_programs_program_targets}, /* dup */
  {"collections.group.parts.part.description.program.after", 
st_collections_group_programs_program_after}, /* dup */
  {"collections.group.parts.part.description.program.api", 
st_collections_group_programs_program_api}, /* dup */
  {"collections.group.parts.part.programs.image", st_images_image}, /* dup 
*/
@@ -780,6 +783,7 @@ New_Statement_Handler statement_handlers[] =
  {"collections.group.parts.part.programs.program.action", 
st_collections_group_programs_program_action}, /* dup */
  {"collections.group.parts.part.programs.program.transition", 
st_collections_group_programs_program_transition}, /* dup */
  {"collections.group.parts.part.programs.program.target", 
st_collections_group_programs_program_target}, /* dup */
+ {"collections.group.parts.part.programs.program.targets", 
st_collections_group_programs_program_targets}, /* dup */
  {"collections.group.parts.part.programs.program.after", 
st_collections_group_programs_program_after}, /* dup */
  {"collections.group.parts.part.programs.program.api", 
st_collections_group_programs_program_api}, /* dup */
  {"collections.group.parts.part.program.name", 
st_collections_group_programs_program_name}, /* dup */
@@ -789,6 +793,7 @@ New_Statement_Handler statement_handlers[] =
  {"collections.group.parts.part.program.action", 
st_collections_group_programs_program_action}, /* dup */
  {"collections.group.parts.part.program.transition", 
st_collections_group_programs_program_transition}, /* dup */
  {"collections.group.parts.part.program.target", 
st_collections_group_programs_program_target}, /* dup */
+ {"collections.group.parts.part.program.targets", 
st_collections_group_programs_program_targets}, /* dup */
  {"collections.group.parts.part.program.after", 
st_collections_group_programs_program_after}, /* dup */
  {"collections.group.parts.part.program.api", 
st_collections_group_programs_program_api}, /* dup */
  {"collections.group.parts.programs.image", st_images_image}, /* dup */
@@ -813,6 +818,7 @@ New_Statement_Handler statement_handlers[] =
  {"collections.group.parts.programs.program.action", 
st_collections_group_programs_program_action}, /* dup */
  {"collections.group.parts.programs.program.transition", 
st_coll

[EGIT] [core/efl] master 01/01: edje_cc also checks min args correctly for STATE_SET actions

2014-03-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit d025f89b2e50c5afa5b428ac5194bf4184e49516
Author: Mike Blumenkrantz 
Date:   Thu Mar 20 19:26:49 2014 -0400

edje_cc also checks min args correctly for STATE_SET actions

@fix
---
 src/bin/edje/edje_cc_handlers.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/bin/edje/edje_cc_handlers.c b/src/bin/edje/edje_cc_handlers.c
index c326ce9..ddb765e 100644
--- a/src/bin/edje/edje_cc_handlers.c
+++ b/src/bin/edje/edje_cc_handlers.c
@@ -9465,6 +9465,9 @@ st_collections_group_programs_program_action(void)
   case EDJE_ACTION_TYPE_SOUND_SAMPLE:
   case EDJE_ACTION_TYPE_VIBRATION_SAMPLE:
 break;
+  case EDJE_ACTION_TYPE_STATE_SET:
+check_min_arg_count(2);
+break;
   default:
check_arg_count(3);
  }

-- 




[EGIT] [core/efl] efl-1.9 01/01: edje_cc also checks min args correctly for STATE_SET actions

2014-03-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch efl-1.9.

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

commit 088c16fab129ae3135ba5260192bdaeb58253eb7
Author: Mike Blumenkrantz 
Date:   Thu Mar 20 19:26:49 2014 -0400

edje_cc also checks min args correctly for STATE_SET actions

@fix
---
 src/bin/edje/edje_cc_handlers.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/bin/edje/edje_cc_handlers.c b/src/bin/edje/edje_cc_handlers.c
index 18a7463..4c6af4b 100644
--- a/src/bin/edje/edje_cc_handlers.c
+++ b/src/bin/edje/edje_cc_handlers.c
@@ -9311,6 +9311,9 @@ st_collections_group_programs_program_action(void)
 break;
   case EDJE_ACTION_TYPE_SOUND_SAMPLE:
 break;
+  case EDJE_ACTION_TYPE_STATE_SET:
+check_min_arg_count(2);
+break;
   default:
check_arg_count(3);
  }

-- 




[EGIT] [core/efl] efl-1.9 01/01: edje_cc now correctly handles lack of state int in STATE_SET action

2014-03-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch efl-1.9.

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

commit b35d1af4d72527c6f2803484bdd49979fb7bb48f
Author: Mike Blumenkrantz 
Date:   Thu Mar 20 19:19:50 2014 -0400

edje_cc now correctly handles lack of state int in STATE_SET action

@fix
---
 src/bin/edje/edje_cc_handlers.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/edje/edje_cc_handlers.c b/src/bin/edje/edje_cc_handlers.c
index 3d7a43f..18a7463 100644
--- a/src/bin/edje/edje_cc_handlers.c
+++ b/src/bin/edje/edje_cc_handlers.c
@@ -9171,7 +9171,7 @@ st_collections_group_programs_program_action(void)
if (ep->action == EDJE_ACTION_TYPE_STATE_SET)
  {
ep->state = parse_str(1);
-   if (get_arg_count() == 1)
+   if (get_arg_count() == 2)
  ep->value = 0.0;
else
  ep->value = parse_float_range(2, 0.0, 1.0);

-- 




[EGIT] [core/efl] master 01/01: edje_cc now correctly handles lack of state int in STATE_SET action

2014-03-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit 0f1ccdad095790d619c06ec8da02d829f1817047
Author: Mike Blumenkrantz 
Date:   Thu Mar 20 19:19:50 2014 -0400

edje_cc now correctly handles lack of state int in STATE_SET action

@fix
---
 src/bin/edje/edje_cc_handlers.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/edje/edje_cc_handlers.c b/src/bin/edje/edje_cc_handlers.c
index d6f8ec1..c326ce9 100644
--- a/src/bin/edje/edje_cc_handlers.c
+++ b/src/bin/edje/edje_cc_handlers.c
@@ -9309,7 +9309,7 @@ st_collections_group_programs_program_action(void)
if (ep->action == EDJE_ACTION_TYPE_STATE_SET)
  {
ep->state = parse_str(1);
-   if (get_arg_count() == 1)
+   if (get_arg_count() == 2)
  ep->value = 0.0;
else
  ep->value = parse_float_range(2, 0.0, 1.0);

-- 




[EGIT] [apps/terminology] master 01/01: fix elm compatibility for real…

2014-03-20 Thread Boris Faure
billiob pushed a commit to branch master.

http://git.enlightenment.org/apps/terminology.git/commit/?id=cb909253ebece45717e4909b3afbe66702b2dd8c

commit cb909253ebece45717e4909b3afbe66702b2dd8c
Author: Boris Faure 
Date:   Thu Mar 20 23:45:18 2014 +0100

fix elm compatibility for real…
---
 src/bin/app_server.c | 11 ++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/src/bin/app_server.c b/src/bin/app_server.c
index 3763d9e..911a558 100644
--- a/src/bin/app_server.c
+++ b/src/bin/app_server.c
@@ -8,10 +8,19 @@
 
 #if (ELM_VERSION_MAJOR > 1) || (ELM_VERSION_MINOR >= 8)
 
-#if (ELM_VERSION_MAJOR == 1) && (ELM_VERSION_MINOR < 10)
+#ifndef ELM_APP_SERVER_VIEW_EVENT_CLOSED
 #define ELM_APP_SERVER_VIEW_EVENT_CLOSEDELM_APP_SERVER_VIEW_EV_CLOSED
+#endif
+
+#ifndef ELM_APP_SERVER_VIEW_EVENT_RESUMED
 #define ELM_APP_SERVER_VIEW_EVENT_RESUMED   ELM_APP_SERVER_VIEW_EV_RESUMED
+#endif
+
+#ifndef ELM_APP_SERVER_VIEW_EVENT_SAVE
 #define ELM_APP_SERVER_VIEW_EVENT_SAVE  ELM_APP_SERVER_VIEW_EV_SAVE
+#endif
+
+#ifndef ELM_APP_SERVER_EVENT_TERMINATE
 #define ELM_APP_SERVER_EVENT_TERMINATE  ELM_APP_SERVER_EV_TERMINATE
 #endif
 

-- 




[EGIT] [apps/terminology] master 01/01: fix compatibility with old versions

2014-03-20 Thread Boris Faure
billiob pushed a commit to branch master.

http://git.enlightenment.org/apps/terminology.git/commit/?id=7e0e687b9f0f93fbe7554454631c8c9a9dc6cc16

commit 7e0e687b9f0f93fbe7554454631c8c9a9dc6cc16
Author: Boris Faure 
Date:   Thu Mar 20 21:46:56 2014 +0100

fix compatibility with old versions
---
 src/bin/app_server.c | 7 +++
 1 file changed, 7 insertions(+)

diff --git a/src/bin/app_server.c b/src/bin/app_server.c
index d39cdda..3763d9e 100644
--- a/src/bin/app_server.c
+++ b/src/bin/app_server.c
@@ -8,6 +8,13 @@
 
 #if (ELM_VERSION_MAJOR > 1) || (ELM_VERSION_MINOR >= 8)
 
+#if (ELM_VERSION_MAJOR == 1) && (ELM_VERSION_MINOR < 10)
+#define ELM_APP_SERVER_VIEW_EVENT_CLOSEDELM_APP_SERVER_VIEW_EV_CLOSED
+#define ELM_APP_SERVER_VIEW_EVENT_RESUMED   ELM_APP_SERVER_VIEW_EV_RESUMED
+#define ELM_APP_SERVER_VIEW_EVENT_SAVE  ELM_APP_SERVER_VIEW_EV_SAVE
+#define ELM_APP_SERVER_EVENT_TERMINATE  ELM_APP_SERVER_EV_TERMINATE
+#endif
+
 static Elm_App_Server *_server = NULL;
 static Eina_Bool _ignore_term_add = EINA_FALSE;
 static Terminology_Item *views_eet = NULL;

-- 




[EGIT] [core/efl] efl-1.9 01/01: edje_cc no longer fails on collections.group{}

2014-03-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch efl-1.9.

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

commit 1c21b0d5ad7525908695a56b41d22a8f9e298b4e
Author: Mike Blumenkrantz 
Date:   Thu Mar 20 14:58:57 2014 -0400

edje_cc no longer fails on collections.group{}

@fix
---
 src/bin/edje/edje_cc_handlers.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/edje/edje_cc_handlers.c b/src/bin/edje/edje_cc_handlers.c
index bdac6d8..3d7a43f 100644
--- a/src/bin/edje/edje_cc_handlers.c
+++ b/src/bin/edje/edje_cc_handlers.c
@@ -2568,6 +2568,8 @@ ob_collections_group(void)
current_de = mem_alloc(SZ(Edje_Part_Collection_Directory_Entry));
current_de->id = eina_list_count(edje_collections);
 
+   if (!edje_collections_lookup)
+ ob_collections();
eina_hash_add(edje_collections_lookup, ¤t_de->id, current_de);
 
pc = mem_alloc(SZ(Edje_Part_Collection_Parser));

-- 




[EGIT] [core/efl] master 01/01: edje_cc no longer fails on collections.group{}

2014-03-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit edf825fd07dc6a2d3aa6e023ff364c2cc9161def
Author: Mike Blumenkrantz 
Date:   Thu Mar 20 14:58:57 2014 -0400

edje_cc no longer fails on collections.group{}

@fix
---
 src/bin/edje/edje_cc_handlers.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/edje/edje_cc_handlers.c b/src/bin/edje/edje_cc_handlers.c
index c1cfa5c..d6f8ec1 100644
--- a/src/bin/edje/edje_cc_handlers.c
+++ b/src/bin/edje/edje_cc_handlers.c
@@ -2704,6 +2704,8 @@ ob_collections_group(void)
current_de = mem_alloc(SZ(Edje_Part_Collection_Directory_Entry));
current_de->id = eina_list_count(edje_collections);
 
+   if (!edje_collections_lookup)
+ ob_collections();
eina_hash_add(edje_collections_lookup, ¤t_de->id, current_de);
 
pc = mem_alloc(SZ(Edje_Part_Collection_Parser));

-- 




[EGIT] [core/enlightenment] master 02/02: set wayland display socket based on e_ipc_socket name

2014-03-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit 83475dad7e10120192af80702ee7b7017920812d
Author: Mike Blumenkrantz 
Date:   Thu Mar 20 14:06:19 2014 -0400

set wayland display socket based on e_ipc_socket name
---
 src/bin/e_comp_wl.c | 14 ++
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c
index 63344fa..7a4a7d2 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -236,13 +236,17 @@ EAPI Eina_Bool
 e_comp_wl_init(void)
 {
int fd = 0;
+   char buf[PATH_MAX];
 
/* try to allocate space for a new compositor */
if (!(_e_wl_comp = E_NEW(E_Wayland_Compositor, 1)))
  return EINA_FALSE;
 
/* try to create a wayland display */
-   if (!(_e_wl_comp->wl.display = wl_display_create()))
+   snprintf(buf, sizeof(buf), "%s/wayland-0", e_ipc_socket);
+   e_env_set("WAYLAND_DISPLAY", buf);
+   if ((!(_e_wl_comp->wl.display = wl_display_create())) ||
+   wl_display_add_socket(_e_wl_comp->wl.display, buf))
  {
 ERR("Could not create a Wayland Display: %m");
 goto err;
@@ -354,13 +358,6 @@ e_comp_wl_init(void)
 
/* TODO: event handlers ?? */
 
-   /* try to add a display socket */
-   if (wl_display_add_socket(_e_wl_comp->wl.display, NULL) < 0)
- {
-ERR("Could not add a Wayland Display socket: %m");
-goto err;
- }
-
wl_event_loop_dispatch(_e_wl_comp->wl.loop, 0);
 
/* add an idler for deferred shell module loading */
@@ -370,6 +367,7 @@ e_comp_wl_init(void)
return EINA_TRUE;
 
 err:
+   e_env_set("WAYLAND_DISPLAY", "");
/* remove kbd handler */
if (_e_wl_comp->kbd_handler) 
  ecore_event_handler_del(_e_wl_comp->kbd_handler);

-- 




[EGIT] [core/enlightenment] master 01/02: export e_ipc_socket filename as extern variable

2014-03-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit 2bbab7e525ef0f94bef3b160808195eb8a363e42
Author: Mike Blumenkrantz 
Date:   Thu Mar 20 13:29:02 2014 -0400

export e_ipc_socket filename as extern variable
---
 src/bin/e_ipc.c | 13 +++--
 src/bin/e_ipc.h |  2 ++
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_ipc.c b/src/bin/e_ipc.c
index 9face3d..5af2f69 100644
--- a/src/bin/e_ipc.c
+++ b/src/bin/e_ipc.c
@@ -1,5 +1,7 @@
 #include "e.h"
 
+EINTERN char *e_ipc_socket = NULL;
+
 #ifdef USE_IPC
 /* local subsystem functions */
 static Eina_Bool _e_ipc_cb_client_add(void *data __UNUSED__, int type 
__UNUSED__, void *event);
@@ -14,7 +16,6 @@ static Ecore_Ipc_Server *_e_ipc_server = NULL;
 EINTERN int
 e_ipc_init(void)
 {
-#ifdef USE_IPC
char buf[4096], buf2[128], buf3[4096];
char *tmp, *user, *disp, *base;
int pid, trynum = 0, id1 = 0;
@@ -88,15 +89,22 @@ e_ipc_init(void)
 ((st.st_mode & (S_IFDIR | S_IRWXU | S_IRWXG | S_IRWXO)) ==
  (S_IRWXU | S_IFDIR)))
   {
+#ifdef USE_IPC
  snprintf(buf3, sizeof(buf3), "%s/%s-%i",
   buf, disp, pid);
  _e_ipc_server = ecore_ipc_server_add
 (ECORE_IPC_LOCAL_SYSTEM, buf3, 0, NULL);
- if (_e_ipc_server) break;
+ if (_e_ipc_server)
+#endif
+   {
+  e_ipc_socket = strdup(ecore_file_file_get(buf));
+  break;
+   }
   }
 retry:
 id1 = rand();
  }
+#ifdef USE_IPC
if (!_e_ipc_server)
  {
 ERR("Gave up after 4096 sockets in '%s'. All failed", base);
@@ -128,6 +136,7 @@ e_ipc_shutdown(void)
 _e_ipc_server = NULL;
  }
 #endif
+   E_FREE(e_ipc_socket);
return 1;
 }
 
diff --git a/src/bin/e_ipc.h b/src/bin/e_ipc.h
index ccb9868..e007f8d 100644
--- a/src/bin/e_ipc.h
+++ b/src/bin/e_ipc.h
@@ -1,5 +1,7 @@
 #ifdef E_TYPEDEFS
 
+EINTERN extern char *e_ipc_socket;
+
 #ifdef USE_IPC
 
 #define E_IPC_OP_EXEC_ACTION 386

-- 




[E-devel] *SOLVED!* Re: Transparent background, E18+elm? E18 (Enlightenment 0.18.2, efl 1.8.3, elm 1.8.2)

2014-03-20 Thread Robert Heller
I figured it out -- it had to do with the layers and the (appearent) 
difference between the E_LAYER_SET() macro and the evas_object_layer_set() 
function.  This is the working incantation (code):

evas_object_move(m->sw_bg_object,m->cur.x,m->cur.y);   
evas_object_resize(m->sw_bg_object,m->cur.w,m->cur.h); 
//E_LAYER_SET(m->sw_bg_object,E_COMP_CANVAS_LAYER_MENU);   
E_LAYER_SET(m->container_object,E_COMP_CANVAS_LAYER_MENU); 
evas_object_layer_set(m->sw_bg_object,E_COMP_CANVAS_LAYER_MENU-1); 
short bg_layer = evas_object_layer_get(m->sw_bg_object);   
short container_layer = evas_object_layer_get(m->container_object);
fprintf(stderr,"*** e_start_menu_activate_mouse: bg_layer is %d, 
container_layer is %d\n",bg_layer,container_layer);
evas_object_show(m->sw_bg_object); 
 
I need to do an E_LAYER_SET on the *container_object*, which is an elm_table
widget, swallowed into sw_bg_object, a Edje object
("e/widgets/menu/default/background"). *Then* I need to use
evas_object_layer_set() to set sw_bg_object's layer to be just below the
container_object. If I use E_LAYER_SET only on the sw_bg_object, nothing
*visible* happens. If I use E_LAYER_SET on both the sw_bg_object and the
container_object, I get a transparent background (sw_bg_object is not seen).
If I use E_LAYER_SET on only the container_object, I get the proper
background, but it is at too low a layer (other windows are above it as shown
in http://www.deepsoft.com/home/layersetcontaineronly/). But the 'trick' of
using E_LAYER_SET on the container_object and then using evas_object_layer_set
with a layer one level down on the sw_bg_object works correctly. I don't know
if this is a bug or feature...


At Wed, 19 Mar 2014 16:42:13 -0400 Robert Heller  wrote:

> 
> At Fri, 14 Mar 2014 12:18:49 +0900 Carsten Haitzler (The Rasterman) 
>  wrote:
> 
> > 
> > On Thu, 13 Mar 2014 21:37:10 -0400 Robert Heller  said:
> > 
> > > 'canvas' is the second argument to e_start_menu_realize_inwindow(), that 
> > > is
> > > the background object. Maybe that is wrong? What is the correct way to 
> > > get a
> > > Evas_Object pointer to use as the 'canvas' for creating elm widgets on?
> > > Somehow I need to get from the Evas pointer to the something to create 
> > > elm 
> > > widgets on.
> > 
> > any object will do - it gets the canvas from the object.
> >
> 
> OK, I *think* I know what is going on.  The table widget does not itself have 
> a backgroud -- it get that from its 'parent', (eg an elm_win widget or 
> something).  The thing here is that the table does not have an *elm* widget 
> as 
> a parent.  Its 'parent' (such as it is) is a bare Edje Evas_Object.  
> Basically 
> I am creating a Edje Evas_Object and setting it up as a menu background:
> 
> /* Create a window, and realize the menu in it. */
>  
> o = edje_object_add(e_comp_get(m->zone)->evas);   
>  
> evas_object_name_set(o, "start_menu->sw_bg_object");  
>  
> evas_object_data_set(o, "e_start_menu", m);   
>  
> e_theme_edje_object_set(o, "base/theme/menus",
>  
>"e/widgets/menu/default/background");  
>  
> m->sw_bg_object = o;  
>  
> 
> And then using this as the parent object when I create the table:
> 
> /* Create the menu container, an Elm Table widget. */ 
>  
> o = elm_table_add(canvas); /* canvas IS m->sw_bg_object */
> fprintf(stderr,"*** e_start_menu_realize_inwindow(): elm_table_add(%p) 
> returns %p\n",canvas,o);
> m->container_object = o;
> 
> And finally I am using edje_object_part_swallow() to swallow the elm_table 
> into the background object.  I'm guessing this is wrong.  I need to do 
> something different somewhere, but I am unsure what I should be doing.
> 
> There isn't any good documentation on what is the proper way to use elm
> widgets with Enlightenment itself. The Enlightenment 'widgets' (and even more
> primitive e_ things) leave lots to be desired and are poorly documented
> and are effectively depreciated -- eventually Enlightenment will move to use
> Elementary (elm) widgets, so there must be a proper way to do this. Or at 
> least there is a contemplated way of doing this. What is it?
> 
> 

-- 
Robert Heller -- 978-544-6933 / hel...@deepsoft.com
Deepwoods Software-- http://www.deepsoft.com/
()  ascii ribbon campaign -- against html e-mail
/\  www.asciiribbon.org   -- against proprietary attachments


  

--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the defi

[EGIT] [core/elementary] elementary-1.9 04/05: index: Set variable to NULL after free.

2014-03-20 Thread Daniel Juyung Seo
seoz pushed a commit to branch elementary-1.9.

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

commit 9e1a8f6f9852fd83192213bd8944c498d7802aaa
Author: Daniel Juyung Seo 
Date:   Fri Mar 21 00:55:31 2014 +0900

index: Set variable to NULL after free.

Then NULL check for this variable is not valid.
This fixes coverity CID 1193250:  Use after free  (USE_AFTER_FREE).

@fix
---
 src/lib/elm_index.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/lib/elm_index.c b/src/lib/elm_index.c
index b3defd6..460cf16 100644
--- a/src/lib/elm_index.c
+++ b/src/lib/elm_index.c
@@ -658,6 +658,7 @@ _sel_eval(Evas_Object *obj,
  }
 }
   free(last);
+  last = NULL;
   if (it->letter) last = strdup(it->letter);
}
   }

-- 




[EGIT] [core/elementary] elementary-1.9 05/05: access: Fixed memory leak.

2014-03-20 Thread Daniel Juyung Seo
seoz pushed a commit to branch elementary-1.9.

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

commit cac8291c0c3a8094f9ce8df6b85d7b3936b57ef9
Author: Daniel Juyung Seo 
Date:   Fri Mar 21 02:33:22 2014 +0900

access: Fixed memory leak.

This fixes coverity CID 1193244:  Resource leak  (RESOURCE_LEAK).

@fix
---
 src/lib/elm_access.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/lib/elm_access.c b/src/lib/elm_access.c
index 4f315d2..a20238a 100644
--- a/src/lib/elm_access.c
+++ b/src/lib/elm_access.c
@@ -259,9 +259,8 @@ _access_highlight_read(Elm_Access_Info *ac, Evas_Object 
*obj)
 eina_strbuf_append_printf(strbuf, ", %s", txt);
   else
 eina_strbuf_append(strbuf, txt);
-
-  free(txt);
}
+ free(txt);
   }
  }
 

-- 




[EGIT] [core/elementary] elementary-1.9 02/05: diskselector: Compare correct variables.

2014-03-20 Thread Daniel Juyung Seo
seoz pushed a commit to branch elementary-1.9.

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

commit 10f5a7b93ea044d0c6d4514214685f5b7577e841
Author: Daniel Juyung Seo 
Date:   Fri Mar 21 00:46:47 2014 +0900

diskselector: Compare correct variables.

It was comparing the same variable.
Fixed coverity CID 1193236:  Pointless string comparison
(CONSTANT_EXPRESSION_RESULT)

@fix
---
 src/lib/elm_diskselector.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elm_diskselector.c b/src/lib/elm_diskselector.c
index 8a00fff..dfde8cd 100644
--- a/src/lib/elm_diskselector.c
+++ b/src/lib/elm_diskselector.c
@@ -63,7 +63,7 @@ _selected_item_indicate(Elm_Diskselector_Item *item)
 
EINA_LIST_FOREACH(sd->r_items, l, it)
  {
-if (it->label && !strcmp(it->label, it->label))
+if (it->label && !strcmp(it->label, item->label))
   edje_object_signal_emit(VIEW(it), "elm,state,selected", "elm");
 else
   edje_object_signal_emit(VIEW(it), "elm,state,default", "elm");

-- 




[EGIT] [core/elementary] elementary-1.9 01/05: list/genlist: Fixed Home and End key event handling routine.

2014-03-20 Thread Daniel Juyung Seo
seoz pushed a commit to branch elementary-1.9.

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

commit 9c6edc463d944bcb600d81f6168f2e2f0068bb4b
Author: Daniel Juyung Seo 
Date:   Tue Mar 18 19:14:39 2014 +0900

list/genlist: Fixed Home and End key event handling routine.

Move selection when Home or End key is pressed.

@fix
This is a partial port from master.
---
 src/lib/elm_genlist.c | 24 ++--
 src/lib/elm_list.c| 22 ++
 2 files changed, 28 insertions(+), 18 deletions(-)

diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
index f7414ac..94af9a0 100644
--- a/src/lib/elm_genlist.c
+++ b/src/lib/elm_genlist.c
@@ -2552,21 +2552,25 @@ _elm_genlist_smart_event(Eo *obj, void *_pd, va_list 
*list)
 ((!strcmp(ev->key, "KP_Home")) && (!ev->string)))
  {
 it = elm_genlist_first_item_get(obj);
-elm_genlist_item_bring_in(it, ELM_GENLIST_ITEM_SCROLLTO_IN);
-elm_genlist_item_selected_set(it, EINA_TRUE);
-ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
-if (ret) *ret = EINA_TRUE;
-return;
+if (it)
+  {
+ elm_genlist_item_selected_set(it, EINA_TRUE);
+ ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
+ if (ret) *ret = EINA_TRUE;
+ return;
+  }
  }
else if ((!strcmp(ev->key, "End")) ||
 ((!strcmp(ev->key, "KP_End")) && (!ev->string)))
  {
 it = elm_genlist_last_item_get(obj);
-elm_genlist_item_bring_in(it, ELM_GENLIST_ITEM_SCROLLTO_IN);
-elm_genlist_item_selected_set(it, EINA_TRUE);
-ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
-if (ret) *ret = EINA_TRUE;
-return;
+if (it)
+  {
+ elm_genlist_item_selected_set(it, EINA_TRUE);
+ ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
+ if (ret) *ret = EINA_TRUE;
+ return;
+  }
  }
else if ((!strcmp(ev->key, "Prior")) ||
 ((!strcmp(ev->key, "KP_Prior")) && (!ev->string)))
diff --git a/src/lib/elm_list.c b/src/lib/elm_list.c
index c914978..a6d6a62 100644
--- a/src/lib/elm_list.c
+++ b/src/lib/elm_list.c
@@ -365,19 +365,25 @@ _elm_list_smart_event(Eo *obj, void *_pd, va_list *list)
 ((!strcmp(ev->key, "KP_Home")) && !ev->string))
  {
 it = eina_list_data_get(sd->items);
-elm_list_item_bring_in((Elm_Object_Item *)it);
-ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
-if (ret) *ret = EINA_TRUE;
-return;
+if (it)
+  {
+ elm_list_item_selected_set((Elm_Object_Item *)it, EINA_TRUE);
+ ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
+ if (ret) *ret = EINA_TRUE;
+ return;
+  }
  }
else if ((!strcmp(ev->key, "End")) ||
 ((!strcmp(ev->key, "KP_End")) && !ev->string))
  {
 it = eina_list_data_get(eina_list_last(sd->items));
-elm_list_item_bring_in((Elm_Object_Item *)it);
-ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
-if (ret) *ret = EINA_TRUE;
-return;
+if (it)
+  {
+ elm_list_item_selected_set((Elm_Object_Item *)it, EINA_TRUE);
+ ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
+ if (ret) *ret = EINA_TRUE;
+ return;
+  }
  }
else if ((!strcmp(ev->key, "Prior")) ||
 ((!strcmp(ev->key, "KP_Prior")) && !ev->string))

-- 




[EGIT] [core/elementary] elementary-1.9 03/05: atspi_object: Added missing comma.

2014-03-20 Thread Daniel Juyung Seo
seoz pushed a commit to branch elementary-1.9.

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

commit 4f2de6960ec8cc4c01cbc18d10a04e6fc2585f82
Author: Daniel Juyung Seo 
Date:   Fri Mar 21 00:49:52 2014 +0900

atspi_object: Added missing comma.

This fixes coverity CID 1193238:  Missing comma in a string array
initialization  (MISSING_COMMA)

@fix
---
 src/lib/elm_atspi_object.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elm_atspi_object.c b/src/lib/elm_atspi_object.c
index 790d3d2..39ef32c 100644
--- a/src/lib/elm_atspi_object.c
+++ b/src/lib/elm_atspi_object.c
@@ -78,7 +78,7 @@ const char* Atspi_Name[] = {
 "status bar",
 "table",
 "table cell",
-"table column header"
+"table column header",
 "table row header",
 "tearoff menu item",
 "terminal",

-- 




[EGIT] [core/enlightenment] master 01/01: Tiling: start migrating the code to use smart callbacks.

2014-03-20 Thread Tom Hacohen
tasn pushed a commit to branch master.

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

commit 07841a6b5e0521622813aa5dfe7f8305cc89e9e7
Author: Tom Hacohen 
Date:   Thu Mar 20 16:10:24 2014 +

Tiling: start migrating the code to use smart callbacks.

Those are meant to be better than the e hooks.
---
 src/modules/tiling/e_mod_tiling.c | 153 +-
 1 file changed, 69 insertions(+), 84 deletions(-)

diff --git a/src/modules/tiling/e_mod_tiling.c 
b/src/modules/tiling/e_mod_tiling.c
index f6d226e..d1d9706 100644
--- a/src/modules/tiling/e_mod_tiling.c
+++ b/src/modules/tiling/e_mod_tiling.c
@@ -41,7 +41,7 @@ struct tiling_g tiling_g = {
.log_domain = -1,
 };
 
-static void _add_client(E_Client *ec);
+static Eina_Bool _add_client(E_Client *ec);
 static void _remove_client(E_Client *ec);
 static void _client_apply_settings(E_Client *ec, Client_Extra 
*extra);
 static void _foreach_desk(void (*func)(E_Desk *desk));
@@ -66,9 +66,8 @@ static struct tiling_mod_main_g
char edj_path[PATH_MAX];
E_Config_DD *config_edd, *vdesk_edd;
Ecore_Event_Handler *handler_client_resize, *handler_client_move,
-   *handler_client_add, *handler_client_remove, 
*handler_client_iconify,
-   *handler_client_uniconify, *handler_client_property,
-   *handler_client_fullscreen, 
*handler_client_unfullscreen,
+   *handler_client_add, *handler_client_iconify,
+   *handler_client_uniconify,
*handler_desk_set, *handler_compositor_resize;
E_Client_Hook   *handler_client_resize_begin;
E_Client_Menu_Hook  *client_menu_hook;
@@ -510,34 +509,42 @@ _client_apply_settings(E_Client *ec, Client_Extra *extra)
 }
 
 static void
+_e_client_check_based_on_state_cb(void *data, Evas_Object *obj EINA_UNUSED,
+  void *event_info EINA_UNUSED)
+{
+   E_Client *ec = data;
+   _toggle_tiling_based_on_state(ec, EINA_TRUE);
+}
+
+static Eina_Bool
 _add_client(E_Client *ec)
 {
/* Should I need to check that the client is not already added? */
if (!ec)
  {
-return;
+return EINA_FALSE;
  }
if (!is_tilable(ec))
  {
-return;
+return EINA_FALSE;
  }
 
Client_Extra *extra = _get_or_create_client_extra(ec);
 
if (!desk_should_tile_check(ec->desk))
- return;
+  return EINA_FALSE;
 
if (is_ignored_window(extra))
- return;
+  return EINA_FALSE;
 
if (_G.split_type == TILING_SPLIT_FLOAT)
  {
 extra->floating = EINA_TRUE;
-return;
+return EINA_FALSE;
  }
 
if (extra->tiled)
- return;
+  return EINA_FALSE;
 
extra->tiled = EINA_TRUE;
 
@@ -568,6 +575,8 @@ _add_client(E_Client *ec)
}
 
_reapply_tree();
+
+   return EINA_TRUE;
 }
 
 static Eina_Bool
@@ -822,32 +831,11 @@ _e_mod_action_toggle_split_mode(E_Object *obj EINA_UNUSED,
 /* }}} */
 /* Hooks {{{ */
 
-static Eina_Bool
-_maximize_check_handle(E_Client *ec, Client_Extra *extra)
-{
-   if (!extra)
- {
-extra = eina_hash_find(_G.client_extras, &ec);
- }
-
-   if (!extra)
-  return EINA_FALSE;
-
-   if (_toggle_tiling_based_on_state(ec, EINA_TRUE))
-  return EINA_TRUE;
-
-   return EINA_FALSE;
-}
-
 static void
 _move_or_resize(E_Client *ec)
 {
Client_Extra *extra = tiling_entry_func(ec);
 
-   /* FIXME: Hack for maximized windows. */
-   if (_maximize_check_handle(ec, extra))
-  return;
-
if (!extra || !extra->tiled)
  {
 return;
@@ -1054,39 +1042,67 @@ _move_hook(void *data EINA_UNUSED, int type 
EINA_UNUSED, E_Event_Client *event)
return true;
 }
 
-static Eina_Bool
-_add_hook(void *data EINA_UNUSED, int type EINA_UNUSED, E_Event_Client *event)
+static void
+_frame_del_cb(void *data, Evas *evas EINA_UNUSED,
+  Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
 {
-   E_Client *ec = event->ec;
+   E_Client *ec = data;
 
-   _add_client(ec);
+   if (e_client_util_ignored_get(ec))
+  return;
 
-   return true;
-}
+   if (desk_should_tile_check(ec->desk))
+ {
+_client_remove_no_apply(ec);
+ }
+
+   eina_hash_del(_G.client_extras, &ec, NULL);
 
-static void
-_frame_del_cb(void *data EINA_UNUSED, Evas *evas EINA_UNUSED,
-  Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
-{
_reapply_tree();
 }
 
-static Eina_Bool
-_remove_hook(void *data EINA_UNUSED, int type EINA_UNUSED,
- E_Event_Client *event)
+static void
+_e_client_extra_unregister_callbacks(void *_client_extra)
 {
-   E_Client *ec = event->ec;
+   Client_Extra *extra = _client_extra;
+   E_Client *ec = extra->client;
 
-   if (e_client_util_ignored_get(ec))
- return ECORE_CALLBACK_RENEW;
+   evas_object_event_callback_del_full(ec->frame, EVAS_CALLBACK_DEL,
+ _frame_del_cb, ec);

[EGIT] [core/elementary] master 02/02: test_dnd: Fixed memory leak. Free item's data on item deletion.

2014-03-20 Thread Daniel Juyung Seo
seoz pushed a commit to branch master.

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

commit 5b7b6508eb401204508f4e8695be4c465aa2add5
Author: Daniel Juyung Seo 
Date:   Fri Mar 21 02:35:29 2014 +0900

test_dnd: Fixed memory leak. Free item's data on item deletion.

This fixes coverity CID 1193246:  Resource leak  (RESOURCE_LEAK).
---
 src/bin/test_dnd.c | 11 +--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/bin/test_dnd.c b/src/bin/test_dnd.c
index 739843f..63b89fd 100644
--- a/src/bin/test_dnd.c
+++ b/src/bin/test_dnd.c
@@ -73,6 +73,12 @@ gl_content_get(void *data, Evas_Object *obj, const char 
*part)
 }
 
 static void
+gl_del_cb(void *data, Evas_Object *obj EINA_UNUSED)
+{
+   eina_stringshare_del(data);
+}
+
+static void
 _win_del(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
 {
printf("<%s> <%d> will del <%p>\n", __func__, __LINE__, data);
@@ -184,8 +190,8 @@ _grid_dropcb(void *data EINA_UNUSED, Evas_Object *obj, 
Elm_Object_Item *it, Elm_
  *p2 = '\0';
  printf("Item %s\n", p);
  if (!it) it = elm_gengrid_last_item_get(obj);
- if (it) it = elm_gengrid_item_insert_after(obj, gic, strdup(p), 
it, NULL, NULL);
- else it = elm_gengrid_item_append(obj, gic, strdup(p), NULL, 
NULL);
+ if (it) it = elm_gengrid_item_insert_after(obj, gic, 
eina_stringshare_add(p), it, NULL, NULL);
+ else it = elm_gengrid_item_append(obj, gic, 
eina_stringshare_add(p), NULL, NULL);
  p = p2;
   }
 else p = NULL;
@@ -901,6 +907,7 @@ test_dnd_genlist_gengrid(void *data EINA_UNUSED, 
Evas_Object *obj EINA_UNUSED, v
 gic->item_style = "default";
 gic->func.text_get = gl_text_get;
 gic->func.content_get = gl_content_get;
+gic->func.del = gl_del_cb;
 
 elm_drop_item_container_add(grid, ELM_SEL_FORMAT_TARGETS, 
_grid_item_getcb, NULL, NULL,
   NULL, NULL, NULL, NULL, _grid_dropcb, NULL);

-- 




[EGIT] [core/elementary] master 01/02: access: Fixed memory leak.

2014-03-20 Thread Daniel Juyung Seo
seoz pushed a commit to branch master.

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

commit 7b8d259577ba168d0e11b1ed72d648c3f5bb5d41
Author: Daniel Juyung Seo 
Date:   Fri Mar 21 02:33:22 2014 +0900

access: Fixed memory leak.

This fixes coverity CID 1193244:  Resource leak  (RESOURCE_LEAK).

@fix
---
 src/lib/elm_access.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/lib/elm_access.c b/src/lib/elm_access.c
index 115a994..1ee74fa 100644
--- a/src/lib/elm_access.c
+++ b/src/lib/elm_access.c
@@ -253,9 +253,8 @@ _access_highlight_read(Elm_Access_Info *ac, Evas_Object 
*obj)
 eina_strbuf_append_printf(strbuf, ", %s", txt);
   else
 eina_strbuf_append(strbuf, txt);
-
-  free(txt);
}
+ free(txt);
   }
  }
 

-- 




[EGIT] [misc/entrance] master 01/01: entrance: delete bg if it has failed,

2014-03-20 Thread Marcel Hollerbach
bu5hm4n pushed a commit to branch master.

http://git.enlightenment.org/misc/entrance.git/commit/?id=1f39860775f7a51912f90984cd82ba64c97e997b

commit 1f39860775f7a51912f90984cd82ba64c97e997b
Author: Marcel Hollerbach 
Date:   Thu Mar 20 18:04:36 2014 +0100

entrance: delete bg if it has failed,
---
 src/bin/entrance_gui.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/entrance_gui.c b/src/bin/entrance_gui.c
index 7f12e11..c137afd 100755
--- a/src/bin/entrance_gui.c
+++ b/src/bin/entrance_gui.c
@@ -610,6 +610,8 @@ _entrance_gui_update(void)
}
  if (!success)
{
+  if (bg)
+evas_object_del(bg);
   const char *path;
   const char *group;
   if ((_gui->bg.group) || (_gui->bg.path))

-- 




[EGIT] [misc/entrance] master 01/01: entrance: Fix the last case of the algo.

2014-03-20 Thread Marcel Hollerbach
bu5hm4n pushed a commit to branch master.

http://git.enlightenment.org/misc/entrance.git/commit/?id=7c78c1c63c7594b03a88baa670ce7195143f26c2

commit 7c78c1c63c7594b03a88baa670ce7195143f26c2
Author: Marcel Hollerbach 
Date:   Thu Mar 20 17:52:30 2014 +0100

entrance: Fix the last case of the algo.
---
 src/bin/entrance_gui.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/entrance_gui.c b/src/bin/entrance_gui.c
index 108ca86..7f12e11 100755
--- a/src/bin/entrance_gui.c
+++ b/src/bin/entrance_gui.c
@@ -591,6 +591,8 @@ _entrance_gui_update(void)
 {
bg = entrance_gui_theme_get(screen->transition,
   "entrance/background/default");
+   if (bg)
+ success = EINA_TRUE;
 }
}
  else if (_gui->bg.path)

-- 




[EGIT] [misc/entrance] master 01/01: entrance: woops there where two "!" to much ;)

2014-03-20 Thread Marcel Hollerbach
bu5hm4n pushed a commit to branch master.

http://git.enlightenment.org/misc/entrance.git/commit/?id=de7f5a43c0758c6906df5108bb13693086d8f61b

commit de7f5a43c0758c6906df5108bb13693086d8f61b
Author: Marcel Hollerbach 
Date:   Thu Mar 20 17:46:19 2014 +0100

entrance: woops there where two "!" to much ;)
---
 src/bin/entrance_gui.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/entrance_gui.c b/src/bin/entrance_gui.c
index 89cca1e..108ca86 100755
--- a/src/bin/entrance_gui.c
+++ b/src/bin/entrance_gui.c
@@ -610,7 +610,7 @@ _entrance_gui_update(void)
{
   const char *path;
   const char *group;
-  if ((!_gui->bg.group) || (!_gui->bg.path))
+  if ((_gui->bg.group) || (_gui->bg.path))
 PT("Failed to load new background, fallback on the theme 
default! \n");
   bg = entrance_gui_theme_get(screen->transition,
   "entrance/background/default");

-- 




[EGIT] [misc/entrance] master 01/01: entrance: let the algorithem go on fallback if case 3 fails, dont print the info if nothing is set. Fallback there on default

2014-03-20 Thread Marcel Hollerbach
bu5hm4n pushed a commit to branch master.

http://git.enlightenment.org/misc/entrance.git/commit/?id=87a75c9f89aaba3609e366e6559896ab869c5102

commit 87a75c9f89aaba3609e366e6559896ab869c5102
Author: Marcel Hollerbach 
Date:   Thu Mar 20 17:27:39 2014 +0100

entrance: let the algorithem go on fallback if case 3 fails, dont print
the info if nothing is set. Fallback there on default
---
 src/bin/entrance_gui.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/bin/entrance_gui.c b/src/bin/entrance_gui.c
index b1d7075..89cca1e 100755
--- a/src/bin/entrance_gui.c
+++ b/src/bin/entrance_gui.c
@@ -598,7 +598,7 @@ _entrance_gui_update(void)
   if (eina_str_has_extension(_gui->bg.path,".edj"))
 {
bg = elm_layout_add(screen->transition);
-   elm_layout_file_set(bg, _gui->bg.path, 
"entrance/background/default");
+   success = elm_layout_file_set(bg, _gui->bg.path, 
"entrance/background/default");
 }
   else
 {
@@ -610,7 +610,8 @@ _entrance_gui_update(void)
{
   const char *path;
   const char *group;
-  PT("Failed to load new background, fallback on the theme 
default! \n");
+  if ((!_gui->bg.group) || (!_gui->bg.path))
+PT("Failed to load new background, fallback on the theme 
default! \n");
   bg = entrance_gui_theme_get(screen->transition,
   "entrance/background/default");
   edje_object_file_get(elm_layout_edje_get(bg), &path, &group);

-- 




[EGIT] [core/elementary] master 03/03: index: Set variable to NULL after free.

2014-03-20 Thread Daniel Juyung Seo
seoz pushed a commit to branch master.

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

commit 9a828f080edc1618fa2034f937990f34e2ceb6a3
Author: Daniel Juyung Seo 
Date:   Fri Mar 21 00:55:31 2014 +0900

index: Set variable to NULL after free.

Then NULL check for this variable is not valid.
This fixes coverity CID 1193250:  Use after free  (USE_AFTER_FREE).

@fix
---
 src/lib/elm_index.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/lib/elm_index.c b/src/lib/elm_index.c
index d8f51c0..01fb683 100644
--- a/src/lib/elm_index.c
+++ b/src/lib/elm_index.c
@@ -658,6 +658,7 @@ _sel_eval(Evas_Object *obj,
  }
 }
   free(last);
+  last = NULL;
   if (it->letter) last = strdup(it->letter);
}
   }

-- 




[EGIT] [core/elementary] master 01/03: diskselector: Compare correct variables.

2014-03-20 Thread Daniel Juyung Seo
seoz pushed a commit to branch master.

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

commit aa9cc88f16be9bb841ffb7e4aa4c6e61cb1b371c
Author: Daniel Juyung Seo 
Date:   Fri Mar 21 00:46:47 2014 +0900

diskselector: Compare correct variables.

It was comparing the same variable.
Fixed coverity CID 1193236:  Pointless string comparison
(CONSTANT_EXPRESSION_RESULT)

@fix
---
 src/lib/elm_diskselector.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elm_diskselector.c b/src/lib/elm_diskselector.c
index 320165e..b641c46 100644
--- a/src/lib/elm_diskselector.c
+++ b/src/lib/elm_diskselector.c
@@ -63,7 +63,7 @@ _selected_item_indicate(Elm_Diskselector_Item *item)
 
EINA_LIST_FOREACH(sd->r_items, l, it)
  {
-if (it->label && !strcmp(it->label, it->label))
+if (it->label && !strcmp(it->label, item->label))
   edje_object_signal_emit(VIEW(it), "elm,state,selected", "elm");
 else
   edje_object_signal_emit(VIEW(it), "elm,state,default", "elm");

-- 




[EGIT] [core/elementary] master 02/03: atspi_object: Added missing comma.

2014-03-20 Thread Daniel Juyung Seo
seoz pushed a commit to branch master.

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

commit 7451876896fdbc4c4d95abe590c38ab82f32dc33
Author: Daniel Juyung Seo 
Date:   Fri Mar 21 00:49:52 2014 +0900

atspi_object: Added missing comma.

This fixes coverity CID 1193238:  Missing comma in a string array
initialization  (MISSING_COMMA)

@fix
---
 src/lib/elm_atspi_object.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/elm_atspi_object.c b/src/lib/elm_atspi_object.c
index 094ae21..6c90c7c 100644
--- a/src/lib/elm_atspi_object.c
+++ b/src/lib/elm_atspi_object.c
@@ -78,7 +78,7 @@ const char* Atspi_Name[] = {
 "status bar",
 "table",
 "table cell",
-"table column header"
+"table column header",
 "table row header",
 "tearoff menu item",
 "terminal",

-- 




[EGIT] [core/enlightenment] master 01/01: hook sticky smart callbacks properly inside comp object

2014-03-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit c47bf94cdfa00ed213cacb6770d7324889bce92a
Author: Mike Blumenkrantz 
Date:   Thu Mar 20 11:38:58 2014 -0400

hook sticky smart callbacks properly inside comp object
---
 src/bin/e_client.c  | 1 -
 src/bin/e_comp_object.c | 9 -
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_client.c b/src/bin/e_client.c
index ee2cf64..03e0d02 100644
--- a/src/bin/e_client.c
+++ b/src/bin/e_client.c
@@ -3807,7 +3807,6 @@ e_client_unstick(E_Client *ec)
   }
  }
 
-   e_comp_object_signal_emit(ec->frame, "e,state,unsticky", "e");
_e_client_event_property(ec, E_CLIENT_PROPERTY_STICKY);
 
e_client_desk_set(ec, e_desk_current_get(ec->zone));
diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c
index 1571a77..30f0c28 100644
--- a/src/bin/e_comp_object.c
+++ b/src/bin/e_comp_object.c
@@ -1739,6 +1739,12 @@ _e_comp_smart_cb_unfullscreen(void *data, Evas_Object 
*obj, void *event_info EIN
 }
 
 static void
+_e_comp_smart_cb_sticky(void *data EINA_UNUSED, Evas_Object *obj, void 
*event_info EINA_UNUSED)
+{
+   e_comp_object_signal_emit(obj, "e,state,sticky", "e");
+}
+
+static void
 _e_comp_smart_cb_unsticky(void *data EINA_UNUSED, Evas_Object *obj, void 
*event_info EINA_UNUSED)
 {
e_comp_object_signal_emit(obj, "e,state,unsticky", "e");
@@ -1810,7 +1816,8 @@ _e_comp_smart_add(Evas_Object *obj)
evas_object_smart_callback_add(obj, "unmaximize", 
_e_comp_smart_cb_unmaximize, cw);
evas_object_smart_callback_add(obj, "unfullscreen", 
_e_comp_smart_cb_unfullscreen, cw);
 
-   evas_object_smart_callback_add(obj, "unsticky", _e_comp_smart_cb_unsticky, 
cw);
+   evas_object_smart_callback_add(obj, "stick", _e_comp_smart_cb_sticky, cw);
+   evas_object_smart_callback_add(obj, "unstick", _e_comp_smart_cb_unsticky, 
cw);
 
evas_object_smart_callback_add(obj, "hung", _e_comp_smart_cb_hung, cw);
evas_object_smart_callback_add(obj, "unhung", _e_comp_smart_cb_unhung, cw);

-- 




[EGIT] [core/enlightenment] master 01/01: add stick/unstick client smart callbacks

2014-03-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit b5a04496b7b1e240803b09dcafde453faee9f418
Author: Mike Blumenkrantz 
Date:   Thu Mar 20 11:29:28 2014 -0400

add stick/unstick client smart callbacks
---
 src/bin/e_client.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/e_client.c b/src/bin/e_client.c
index 663aa03..ee2cf64 100644
--- a/src/bin/e_client.c
+++ b/src/bin/e_client.c
@@ -3760,6 +3760,7 @@ e_client_stick(E_Client *ec)
ec->hidden = 0;
e_hints_window_sticky_set(ec, 1);
e_client_desk_set(ec, desk);
+   evas_object_smart_callback_call(ec->frame, "stick", NULL);
 
if (e_config->transient.desktop)
  {
@@ -3792,6 +3793,7 @@ e_client_unstick(E_Client *ec)
ec->hidden = ec->sticky = 0;
e_hints_window_sticky_set(ec, 0);
e_client_desk_set(ec, desk);
+   evas_object_smart_callback_call(ec->frame, "unstick", NULL);
 
if (e_config->transient.desktop)
  {

-- 




Re: [E-devel] ABI/API checking for the EFL

2014-03-20 Thread Stefan Schmidt
Hello.

On Thu, 2014-03-20 at 15:02, Bertrand Jacquin wrote:
> On 2014-03-20 14:38, Stefan Schmidt wrote:
> > Hello.
> > 
> > On Wed, 2014-03-12 at 14:39, Tom Hacohen wrote:
> >> On 12/03/14 13:54, Tom Hacohen wrote:
> >> > Hey,
> >> >
> >> > So following the previous discussion, I've decided to do it myself. It's
> >> > quite easy, and will be integrated into Jenkins once the Jenkins admins
> >> > will have more free time.
> >> >
> >> > For the time being, I've generated reports for the efl (will do
> >> > elemenatry soon) manually. Here are the results:
> >> > http://www.enlightenment.org/~tasn/eflabi/1.8.0_to_1.9.0/compat_report.html
> >> > http://www.enlightenment.org/~tasn/eflabi/1.9.0_to_1.10.0/compat_report.html
> >> >
> >> >
> >> > By skimming the results, I found that we broke ABI in 1.9, deleting some
> >> > ecore_x atoms. This is really bad, but at least those were parts of our
> >> > api that people don't usually use.
> >> >
> >> > The to 1.10 is actually to bdf00c28b74cc163fed5a29561de43be66efed41, i.e
> >> > current HEAD. We've made a lot of mess there. From what I've seen, we've
> >> > only broken ABI because of Eo, which is internal ABI anyway, and we knew
> >> > it was going to happen anyway because of the Eo2 change, so that's
> >> > mostly fine. Shouldn't affect users too much.
> >> >
> >> > --
> >> > Tom.
> >> 
> >> 
> >> OK, got elm too:
> >> http://www.enlightenment.org/~tasn/elmabi/1.9.0_to_1.10.0/compat_report.html
> >> 
> >> I found and fixed some issues with wrong shipping of headers. I think
> >> most of the mess is because we ship the elm_widget internal files. 
> >> It's
> >> time to get rid of those now that we have Eo api which is as
> >> experimental. :)
> > 
> > Thanks for taking the initiative here. The reports are useful. So
> > useful that they already uncovered the two missing illume symbols
> > which you fixed. Thanks.
> > 
> > As we discussed on IRC we will work together on this a bit later to
> > get it run in our nightly builds so we have feedback on these things
> > early on. For 1.10 we might still run it manually once or twice before
> > the release but afterwards it should really go into our automated
> > tools suite.
> 
> abi-compliance-checker 1.98.8 is now installed on every build/jenkins 
> hosts.

Thanks, thats a good first step.

regards
Stefan Schmidt

--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/enlightenment] master 01/02: bugfix: Set pass_events and layer of the pointer image if we are creating a new one.

2014-03-20 Thread Michael Blumenkrantz
Seriously, this is not hard. bugfix is for a commit if you're going to backport 
it, not for every time you fix something added in E19.

On Thu, 20 Mar 2014 07:17:48 -0700
Christopher Michael  wrote:

> devilhorns pushed a commit to branch master.
> 
> http://git.enlightenment.org/core/enlightenment.git/commit/?id=5ce5d2d90b2a58c43f49fb50456e3d4e0fd5e2ca
> 
> commit 5ce5d2d90b2a58c43f49fb50456e3d4e0fd5e2ca
> Author: Chris Michael 
> Date:   Thu Mar 20 14:14:31 2014 +
> 
> bugfix: Set pass_events and layer of the pointer image if we are
> creating a new one.
> 
> Signed-off-by: Chris Michael 
> ---
>  src/bin/e_pointer.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/src/bin/e_pointer.c b/src/bin/e_pointer.c
> index 829e56d..e3ea4a9 100644
> --- a/src/bin/e_pointer.c
> +++ b/src/bin/e_pointer.c
> @@ -651,6 +651,8 @@ e_pointer_image_set(E_Pointer *p, E_Pixmap *cp, int w, 
> int h, int hot_x, int hot
>   if (!p->e_cursor)
> p->blocks = 1;
>   p->pointer_image = evas_object_image_filled_add(p->evas);
> + evas_object_pass_events_set(p->pointer_image, 1);
> + evas_object_layer_set(p->pointer_image, EVAS_LAYER_MAX);
>   evas_object_image_alpha_set(p->pointer_image, 1);
>}
>  evas_object_image_size_set(p->pointer_image, w, h);
> 

--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/enlightenment] master 01/01: e_pointer: Fix missing if for else if condition

2014-03-20 Thread Stefan Schmidt
stefan pushed a commit to branch master.

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

commit 04a5a11a8f9a208c9d2e7200736a3da3a9681b40
Author: Stefan Schmidt 
Date:   Thu Mar 20 15:50:51 2014 +0100

e_pointer: Fix missing if for else if condition

Fixing devilhorns commit and run commit. If we have a condition we want
to check we need an else if not a simple else. Always compile before push.
Especially the small and simple changes. :)
---
 src/bin/e_pointer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/e_pointer.c b/src/bin/e_pointer.c
index 084e256..e88591b 100644
--- a/src/bin/e_pointer.c
+++ b/src/bin/e_pointer.c
@@ -663,7 +663,7 @@ e_pointer_image_set(E_Pointer *p, E_Pixmap *cp, int w, int 
h, int hot_x, int hot
  evas_object_hide(p->pointer_image);
  evas_object_show(p->pointer_object);
   }
-else ((p->e_cursor) && (p->canvas))
+else if ((p->e_cursor) && (p->canvas))
   {
  evas_object_hide(p->pointer_object);
  evas_object_show(p->pointer_image);

-- 




Re: [E-devel] black tooltips in gtk / qt

2014-03-20 Thread Adam Flott
On Wed, 19 Mar 2014 10:21:03 +0900
Cedric BAIL  wrote:

> Hello,
> 
> On Wed, Mar 19, 2014 at 12:47 AM, Adam Flott  wrote:
> > [ sent this to the users ml, but it never made it through; have since 
> > upgraded to master ]
> >
> > I've been getting periordic and inconsitent tooltips that popup black.
> > The same behavior happens with menus.
> >
> > - Ubuntu 12.4 (up to date and can't upgrade to a later version)
> > - EFL master
> > - Enlightenment master
> > - NVidia twin view
> >
> > Example: http://i.imgur.com/g6fNIVe.jpg
> >
> > Any idea's how to remedy this?
> 
> Did you try disabling texture from pixmap in the advance setting
> dialog of composite module ?
> -- 

I was using software compositor so that had no effect. Once I switched
to OpenGL (fingers cross the nvidia drivers dont take out x like the
old days) with texture from pixmap enabled it appears to be working far
better. Thanks for the pointer to help fix it!

--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: test_web: Improve fullscreen test case.

2014-03-20 Thread Ryuan Choi
ryuan pushed a commit to branch master.

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

commit 7bc24d0b0ce82bf258fcfae75a8b952cf5fae531
Author: Ryuan Choi 
Date:   Thu Mar 20 23:28:53 2014 +0900

test_web: Improve fullscreen test case.

Improved fullscreen api tests not to show other widgets when web page 
requires fullscreen.
---
 src/bin/test_web.c | 22 ++
 1 file changed, 22 insertions(+)

diff --git a/src/bin/test_web.c b/src/bin/test_web.c
index d9e7cc0..370adf7 100644
--- a/src/bin/test_web.c
+++ b/src/bin/test_web.c
@@ -9,6 +9,8 @@ typedef struct
Evas_Object *btn_back;
Evas_Object *btn_fwd;
Evas_Object *url_entry;
+   Evas_Object *bx;
+   Evas_Object *hoversel;
Eina_List *sub_wins;
Eina_Bool js_hooks : 1;
 } Web_Test;
@@ -313,6 +315,22 @@ _bring_in_region_cb(void *data, Evas_Object *obj 
EINA_UNUSED, void *event_info E
elm_web_region_bring_in(wt->web, 50, 0, 1, 1);
 }
 
+static void
+_on_fullscreen_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
+{
+   Web_Test *wt = data;
+   elm_box_unpack(wt->bx, wt->hoversel);
+   evas_object_hide(wt->hoversel);
+}
+
+static void
+_on_unfullscreen_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
+{
+   Web_Test *wt = data;
+   elm_box_pack_start(wt->bx, wt->hoversel);
+   evas_object_show(wt->hoversel);
+}
+
 typedef struct
 {
const char* name;
@@ -598,6 +616,8 @@ test_web_ui(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_in
wt = calloc(1, sizeof(*wt));
win = elm_win_util_standard_add("web", "Web");
 
+   evas_object_smart_callback_add(win, "fullscreen", _on_fullscreen_cb, wt);
+   evas_object_smart_callback_add(win, "unfullscreen", _on_unfullscreen_cb, 
wt);
elm_win_autodel_set(win, EINA_TRUE);
 
bx = elm_box_add(win);
@@ -628,6 +648,8 @@ test_web_ui(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_in
 
evas_object_event_callback_add(web, EVAS_CALLBACK_DEL, _main_web_del_cb, 
wt);
wt->web = web;
+   wt->bx = bx;
+   wt->hoversel = hoversel;
 
 
elm_web_html_string_load(wt->web,

-- 




[EGIT] [core/enlightenment] master 01/02: bugfix: Set pass_events and layer of the pointer image if we are creating a new one.

2014-03-20 Thread Christopher Michael
devilhorns pushed a commit to branch master.

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

commit 5ce5d2d90b2a58c43f49fb50456e3d4e0fd5e2ca
Author: Chris Michael 
Date:   Thu Mar 20 14:14:31 2014 +

bugfix: Set pass_events and layer of the pointer image if we are
creating a new one.

Signed-off-by: Chris Michael 
---
 src/bin/e_pointer.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/e_pointer.c b/src/bin/e_pointer.c
index 829e56d..e3ea4a9 100644
--- a/src/bin/e_pointer.c
+++ b/src/bin/e_pointer.c
@@ -651,6 +651,8 @@ e_pointer_image_set(E_Pointer *p, E_Pixmap *cp, int w, int 
h, int hot_x, int hot
  if (!p->e_cursor)
p->blocks = 1;
  p->pointer_image = evas_object_image_filled_add(p->evas);
+ evas_object_pass_events_set(p->pointer_image, 1);
+ evas_object_layer_set(p->pointer_image, EVAS_LAYER_MAX);
  evas_object_image_alpha_set(p->pointer_image, 1);
   }
 evas_object_image_size_set(p->pointer_image, w, h);

-- 




[EGIT] [core/enlightenment] master 02/02: bugfix: Properly hide/show pointer_image & pointer_object based on if the pointer is located on an existing canvas

2014-03-20 Thread Christopher Michael
devilhorns pushed a commit to branch master.

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

commit d0b61e4b88095c80ac82526ebdfdb352f0415c08
Author: Chris Michael 
Date:   Thu Mar 20 14:15:47 2014 +

bugfix: Properly hide/show pointer_image & pointer_object based on if
the pointer is located on an existing canvas

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

diff --git a/src/bin/e_pointer.c b/src/bin/e_pointer.c
index e3ea4a9..084e256 100644
--- a/src/bin/e_pointer.c
+++ b/src/bin/e_pointer.c
@@ -658,12 +658,12 @@ e_pointer_image_set(E_Pointer *p, E_Pixmap *cp, int w, 
int h, int hot_x, int hot
 evas_object_image_size_set(p->pointer_image, w, h);
 evas_object_image_data_set(p->pointer_image, img);
 evas_object_resize(p->pointer_image, w, h);
-if (p->e_cursor)
+if ((p->e_cursor) && (!p->canvas))
   {
  evas_object_hide(p->pointer_image);
  evas_object_show(p->pointer_object);
   }
-else
+else ((p->e_cursor) && (p->canvas))
   {
  evas_object_hide(p->pointer_object);
  evas_object_show(p->pointer_image);

-- 




[EGIT] [core/elementary] master 10/10: Eolian: Integration of Datetime

2014-03-20 Thread Daniel Zaoui
jackdanielz pushed a commit to branch master.

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

commit e6993de02c80e139fcfb8642bf0ab12fb3ad866a
Author: Daniel Zaoui 
Date:   Thu Mar 20 15:17:55 2014 +0200

Eolian: Integration of Datetime
---
 src/lib/Makefile.am   |  10 +-
 src/lib/elm_datetime.c| 404 --
 src/lib/elm_datetime.eo   | 342 +++
 src/lib/elm_datetime_eo.h |   4 +
 src/lib/elm_widget_datetime.h |   6 +-
 5 files changed, 431 insertions(+), 335 deletions(-)

diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index bcc8225..09cd9d4 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -575,7 +575,9 @@ BUILT_SOURCES = \
elm_conformant.eo.c \
elm_conformant.eo.h \
elc_ctxpopup.eo.c \
-   elc_ctxpopup.eo.h
+   elc_ctxpopup.eo.h \
+   elm_datetime.eo.c \
+   elm_datetime.eo.h
 
 EXTRA_DIST += \
 elm_widget.eo \
@@ -603,7 +605,8 @@ EXTRA_DIST += \
 elm_clock.eo \
 elm_colorselector.eo \
 elm_conformant.eo \
-elc_ctxpopup.eo
+elc_ctxpopup.eo \
+elm_datetime.eo
 
 nodist_includesunstable_HEADERS = \
  elm_widget.eo.h \
@@ -631,5 +634,6 @@ nodist_includesunstable_HEADERS = \
  elm_clock.eo.h \
  elm_conformant.eo.h \
  elm_colorselector.eo.h \
- elc_ctxpopup.eo.h
+ elc_ctxpopup.eo.h \
+ elm_datetime.eo.h
 
diff --git a/src/lib/elm_datetime.c b/src/lib/elm_datetime.c
index 36ef392..a47aec6 100644
--- a/src/lib/elm_datetime.c
+++ b/src/lib/elm_datetime.c
@@ -6,8 +6,6 @@
 #include "elm_priv.h"
 #include "elm_widget_datetime.h"
 
-EAPI Eo_Op ELM_OBJ_DATETIME_BASE_ID = EO_NOOP;
-
 #define MY_CLASS ELM_OBJ_DATETIME_CLASS
 
 #define MY_CLASS_NAME "Elm_Datetime"
@@ -375,18 +373,15 @@ _reload_format(Evas_Object *obj)
_field_list_arrange(obj);
 }
 
-static void
-_elm_datetime_smart_translate(Eo *obj, void *_pd, va_list *list)
+EOLIAN static Eina_Bool
+_elm_datetime_elm_widget_translate(Eo *obj, Elm_Datetime_Data *sd)
 {
-   Elm_Datetime_Smart_Data *sd = _pd;
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-
if (!sd->user_format) _reload_format(obj);
else _field_list_display(obj);
 
eo_do_super(obj, MY_CLASS, elm_obj_widget_translate(NULL));
 
-   if (ret) *ret = EINA_TRUE;
+   return EINA_TRUE;
 }
 
 static Eina_List *
@@ -419,24 +414,19 @@ _datetime_items_get(const Evas_Object *obj)
return items;
 }
 
-static void
-_elm_datetime_smart_focus_next_manager_is(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_datetime_elm_widget_focus_next_manager_is(Eo *obj EINA_UNUSED, 
Elm_Datetime_Data *_pd EINA_UNUSED)
 {
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   *ret = EINA_TRUE;
+   return EINA_TRUE;
 }
 
-static void
-_elm_datetime_smart_focus_next(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_datetime_elm_widget_focus_next(Eo *obj, Elm_Datetime_Data *_pd 
EINA_UNUSED, Elm_Focus_Direction dir, Evas_Object **next)
 {
const Eina_List *items;
Eina_List *(*list_free)(Eina_List *list);
void *(*list_data_get)(const Eina_List *list);
 
-   Elm_Focus_Direction dir = va_arg(*list, Elm_Focus_Direction);
-   Evas_Object **next = va_arg(*list, Evas_Object **);
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
Eina_Bool int_ret;
 
if ((items = elm_widget_focus_custom_chain_get(obj)))
@@ -449,63 +439,55 @@ _elm_datetime_smart_focus_next(Eo *obj, void *_pd 
EINA_UNUSED, va_list *list)
 items = _datetime_items_get(obj);
 list_data_get = eina_list_data_get;
 list_free = eina_list_free;
-if (!items) return;
+if (!items) return EINA_FALSE;
  }
 
int_ret = elm_widget_focus_list_next_get(obj, items, list_data_get, dir, 
next);
if (list_free) list_free((Eina_List *)items);
 
-   if (ret) *ret = int_ret;
+   return int_ret;
 }
 
-static void
-_elm_datetime_smart_on_focus(Eo *obj, void *_pd, va_list *list)
+EOLIAN static Eina_Bool
+_elm_datetime_elm_widget_on_focus(Eo *obj, Elm_Datetime_Data *sd)
 {
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
Eina_Bool int_ret = EINA_FALSE;
 
eo_do_super(obj, MY_CLASS, elm_obj_widget_on_focus(&int_ret));
-   if (!int_ret) return;
+   if (!int_ret) return EINA_FALSE;
 
if (!elm_widget_focus_get(obj))
  {
-Elm_Datetime_Smart_Data *sd = _pd;
-
 if ((dt_mod) && (dt_mod->obj_hide))
   dt_mod->obj_hide(sd->mod_data);
  }
 
-   if (ret) *ret = EINA_TRUE;
+   return EINA_TRUE;
 }
 
-

[EGIT] [core/elementary] master 04/10: Eolian: Integration of Calendar

2014-03-20 Thread Daniel Zaoui
jackdanielz pushed a commit to branch master.

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

commit 28c55d0a0c5dea8f973d235271f753b96b415fa8
Author: Daniel Zaoui 
Date:   Thu Mar 20 09:44:34 2014 +0200

Eolian: Integration of Calendar
---
 src/lib/Makefile.am   |  10 +-
 src/lib/elm_calendar.c| 516 --
 src/lib/elm_calendar.eo   | 419 ++
 src/lib/elm_calendar_eo.h |   4 +
 src/lib/elm_widget_calendar.h |   6 +-
 5 files changed, 527 insertions(+), 428 deletions(-)

diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index 1bb3282..c6414ba 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -563,7 +563,9 @@ BUILT_SOURCES = \
elm_bubble.eo.c \
elm_bubble.eo.h \
elm_button.eo.c \
-   elm_button.eo.h
+   elm_button.eo.h \
+   elm_calendar.eo.c \
+   elm_calendar.eo.h
 
 EXTRA_DIST += \
 elm_widget.eo \
@@ -585,7 +587,8 @@ EXTRA_DIST += \
 elm_bg.eo \
 elm_box.eo \
 elm_bubble.eo \
-elm_button.eo
+elm_button.eo \
+elm_calendar.eo
 
 nodist_includesunstable_HEADERS = \
  elm_widget.eo.h \
@@ -607,5 +610,6 @@ nodist_includesunstable_HEADERS = \
  elm_box.eo.h \
  elm_bg.eo.h \
  elm_bubble.eo.h \
- elm_button.eo.h
+ elm_button.eo.h \
+ elm_calendar.eo.h
 
diff --git a/src/lib/elm_calendar.c b/src/lib/elm_calendar.c
index 195470a..4aec95e 100644
--- a/src/lib/elm_calendar.c
+++ b/src/lib/elm_calendar.c
@@ -6,8 +6,6 @@
 #include "elm_priv.h"
 #include "elm_widget_calendar.h"
 
-EAPI Eo_Op ELM_OBJ_CALENDAR_BASE_ID = EO_NOOP;
-
 #define MY_CLASS ELM_OBJ_CALENDAR_CLASS
 
 #define MY_CLASS_NAME "Elm_Calendar"
@@ -65,9 +63,8 @@ _mark_free(Elm_Calendar_Mark *mark)
free(mark);
 }
 
-static void
-_elm_calendar_smart_sizing_eval(Eo *obj, void *_pd EINA_UNUSED, va_list *list 
EINA_UNUSED)
-
+EOLIAN static void
+_elm_calendar_elm_layout_sizing_eval(Eo *obj, Elm_Calendar_Data *_pd 
EINA_UNUSED)
 {
Evas_Coord minw = -1, minh = -1;
ELM_CALENDAR_DATA_GET(obj, sd);
@@ -118,7 +115,7 @@ _select(Evas_Object *obj,
 }
 
 static inline void
-_not_today(Elm_Calendar_Smart_Data *sd)
+_not_today(Elm_Calendar_Data *sd)
 {
char emission[32];
 
@@ -128,7 +125,7 @@ _not_today(Elm_Calendar_Smart_Data *sd)
 }
 
 static inline void
-_today(Elm_Calendar_Smart_Data *sd,
+_today(Elm_Calendar_Data *sd,
int it)
 {
char emission[32];
@@ -185,7 +182,7 @@ _weekday_get(int first_week_day,
 
 // EINA_DEPRECATED
 static void
-_text_day_color_update(Elm_Calendar_Smart_Data *sd,
+_text_day_color_update(Elm_Calendar_Data *sd,
int pos)
 {
char emission[32];
@@ -212,7 +209,7 @@ _text_day_color_update(Elm_Calendar_Smart_Data *sd,
 }
 
 static void
-_set_month_year(Elm_Calendar_Smart_Data *sd)
+_set_month_year(Elm_Calendar_Data *sd)
 {
char *buf;
 
@@ -556,23 +553,21 @@ _set_headers(Evas_Object *obj)
elm_layout_thaw(obj);
 }
 
-static void
-_elm_calendar_smart_theme(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_calendar_elm_widget_theme_apply(Eo *obj, Elm_Calendar_Data *_pd 
EINA_UNUSED)
 {
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
Eina_Bool int_ret = EINA_FALSE;
 
eo_do_super(obj, MY_CLASS, elm_obj_widget_theme_apply(&int_ret));
-   if (!int_ret) return;
+   if (!int_ret) return EINA_FALSE;
 
evas_object_smart_changed(obj);
-   if (ret) *ret = EINA_TRUE;
+   return EINA_TRUE;
 }
 
 /* Set correct tm_wday and tm_yday after other fields changes*/
 static inline void
-_fix_selected_time(Elm_Calendar_Smart_Data *sd)
+_fix_selected_time(Elm_Calendar_Data *sd)
 {
if (sd->selected_time.tm_mon != sd->shown_time.tm_mon)
  sd->selected_time.tm_mon = sd->shown_time.tm_mon;
@@ -852,20 +847,14 @@ _update_cur_date(void *data)
return ECORE_CALLBACK_RENEW;
 }
 
-static void
-_elm_calendar_smart_event(Eo *obj, void *_pd, va_list *list)
+EOLIAN static Eina_Bool
+_elm_calendar_elm_widget_event(Eo *obj, Elm_Calendar_Data *sd, Evas_Object 
*src, Evas_Callback_Type type, void *event_info)
 {
-   Evas_Object *src = va_arg(*list, Evas_Object *);
-   Evas_Callback_Type type = va_arg(*list, Evas_Callback_Type);
-   Evas_Event_Key_Down *ev = va_arg(*list, void *);
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   Elm_Calendar_Smart_Data *sd = _pd;
-
-   if (ret) *ret = EINA_FALSE;
(void) src;
+   Evas_Event_Key_Down *ev = event_info;
 
-   if (elm_widget_disabled_get(obj)) return;
-   if (type != EVAS_CALLBACK_KEY_DOWN) return;
+   if (elm_widget_disabled_get(obj)) 

Re: [E-devel] ABI/API checking for the EFL

2014-03-20 Thread Bertrand Jacquin
On 2014-03-20 14:38, Stefan Schmidt wrote:
> Hello.
> 
> On Wed, 2014-03-12 at 14:39, Tom Hacohen wrote:
>> On 12/03/14 13:54, Tom Hacohen wrote:
>> > Hey,
>> >
>> > So following the previous discussion, I've decided to do it myself. It's
>> > quite easy, and will be integrated into Jenkins once the Jenkins admins
>> > will have more free time.
>> >
>> > For the time being, I've generated reports for the efl (will do
>> > elemenatry soon) manually. Here are the results:
>> > http://www.enlightenment.org/~tasn/eflabi/1.8.0_to_1.9.0/compat_report.html
>> > http://www.enlightenment.org/~tasn/eflabi/1.9.0_to_1.10.0/compat_report.html
>> >
>> >
>> > By skimming the results, I found that we broke ABI in 1.9, deleting some
>> > ecore_x atoms. This is really bad, but at least those were parts of our
>> > api that people don't usually use.
>> >
>> > The to 1.10 is actually to bdf00c28b74cc163fed5a29561de43be66efed41, i.e
>> > current HEAD. We've made a lot of mess there. From what I've seen, we've
>> > only broken ABI because of Eo, which is internal ABI anyway, and we knew
>> > it was going to happen anyway because of the Eo2 change, so that's
>> > mostly fine. Shouldn't affect users too much.
>> >
>> > --
>> > Tom.
>> 
>> 
>> OK, got elm too:
>> http://www.enlightenment.org/~tasn/elmabi/1.9.0_to_1.10.0/compat_report.html
>> 
>> I found and fixed some issues with wrong shipping of headers. I think
>> most of the mess is because we ship the elm_widget internal files. 
>> It's
>> time to get rid of those now that we have Eo api which is as
>> experimental. :)
> 
> Thanks for taking the initiative here. The reports are useful. So
> useful that they already uncovered the two missing illume symbols
> which you fixed. Thanks.
> 
> As we discussed on IRC we will work together on this a bit later to
> get it run in our nightly builds so we have feedback on these things
> early on. For 1.10 we might still run it manually once or twice before
> the release but afterwards it should really go into our automated
> tools suite.

abi-compliance-checker 1.98.8 is now installed on every build/jenkins 
hosts.

--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 09/10: Eolian: Integration of Ctx Popup

2014-03-20 Thread Daniel Zaoui
jackdanielz pushed a commit to branch master.

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

commit 94a7e2672aaf798dc39d679337d38aa65f74e8da
Author: Daniel Zaoui 
Date:   Thu Mar 20 15:06:33 2014 +0200

Eolian: Integration of Ctx Popup
---
 src/lib/Makefile.am   |  10 +-
 src/lib/elc_ctxpopup.c| 486 +-
 src/lib/elc_ctxpopup.eo   | 196 +
 src/lib/elc_ctxpopup_eo.h |   6 +-
 src/lib/elc_ctxpopup_legacy.h |   2 +-
 src/lib/elm_widget_ctxpopup.h |   6 +-
 6 files changed, 315 insertions(+), 391 deletions(-)

diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index e235fcb..bcc8225 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -573,7 +573,9 @@ BUILT_SOURCES = \
elm_colorselector.eo.c \
elm_colorselector.eo.h \
elm_conformant.eo.c \
-   elm_conformant.eo.h
+   elm_conformant.eo.h \
+   elc_ctxpopup.eo.c \
+   elc_ctxpopup.eo.h
 
 EXTRA_DIST += \
 elm_widget.eo \
@@ -600,7 +602,8 @@ EXTRA_DIST += \
 elm_check.eo \
 elm_clock.eo \
 elm_colorselector.eo \
-elm_conformant.eo
+elm_conformant.eo \
+elc_ctxpopup.eo
 
 nodist_includesunstable_HEADERS = \
  elm_widget.eo.h \
@@ -627,5 +630,6 @@ nodist_includesunstable_HEADERS = \
  elm_check.eo.h \
  elm_clock.eo.h \
  elm_conformant.eo.h \
- elm_colorselector.eo.h
+ elm_colorselector.eo.h \
+ elc_ctxpopup.eo.h
 
diff --git a/src/lib/elc_ctxpopup.c b/src/lib/elc_ctxpopup.c
index ca466da..8962696 100644
--- a/src/lib/elc_ctxpopup.c
+++ b/src/lib/elc_ctxpopup.c
@@ -7,8 +7,6 @@
 #include "elm_priv.h"
 #include "elm_widget_ctxpopup.h"
 
-EAPI Eo_Op ELM_OBJ_CTXPOPUP_BASE_ID = EO_NOOP;
-
 #define MY_CLASS ELM_OBJ_CTXPOPUP_CLASS
 
 #define MY_CLASS_NAME "Elm_Ctxpopup"
@@ -31,11 +29,9 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = {
 };
 #undef ELM_PRIV_CTXPOPUP_SIGNALS
 
-static void
-_elm_ctxpopup_smart_translate(Eo *obj, void *_pd, va_list *list)
+EOLIAN static Eina_Bool
+_elc_ctxpopup_elm_widget_translate(Eo *obj, Elc_Ctxpopup_Data *sd)
 {
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   Elm_Ctxpopup_Smart_Data *sd = _pd;
Eina_List *l;
Elm_Ctxpopup_Item *it;
 
@@ -46,35 +42,26 @@ _elm_ctxpopup_smart_translate(Eo *obj, void *_pd, va_list 
*list)
 
eo_do_super(obj, MY_CLASS, elm_obj_widget_translate(NULL));
 
-   if (ret) *ret = EINA_TRUE;
+   return EINA_TRUE;
 }
 
-static void
-_elm_ctxpopup_smart_focus_next_manager_is(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elc_ctxpopup_elm_widget_focus_next_manager_is(Eo *obj EINA_UNUSED, 
Elc_Ctxpopup_Data *_pd EINA_UNUSED)
 {
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   *ret = EINA_TRUE;
+   return EINA_TRUE;
 }
 
-static void
-_elm_ctxpopup_smart_focus_direction_manager_is(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elc_ctxpopup_elm_widget_focus_direction_manager_is(Eo *obj EINA_UNUSED, 
Elc_Ctxpopup_Data *_pd EINA_UNUSED)
 {
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   *ret = EINA_TRUE;
+   return EINA_TRUE;
 }
 
-static void
-_elm_ctxpopup_smart_focus_next(Eo *obj EINA_UNUSED, void *_pd, va_list *list)
+EOLIAN static Eina_Bool
+_elc_ctxpopup_elm_widget_focus_next(Eo *obj EINA_UNUSED, Elc_Ctxpopup_Data 
*sd, Elm_Focus_Direction dir, Evas_Object **next)
 {
-   Elm_Ctxpopup_Smart_Data *sd = _pd;
-
-   Elm_Focus_Direction dir = va_arg(*list, Elm_Focus_Direction);
-   Evas_Object **next = va_arg(*list, Evas_Object **);
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
-
if (!sd)
- return;
+ return EINA_FALSE;
 
if (!elm_widget_focus_next_get(sd->box, dir, next))
  {
@@ -82,27 +69,19 @@ _elm_ctxpopup_smart_focus_next(Eo *obj EINA_UNUSED, void 
*_pd, va_list *list)
 elm_widget_focus_next_get(sd->box, dir, next);
  }
 
-   if (ret) *ret = EINA_TRUE;
+   return EINA_TRUE;
 }
 
-static void
-_elm_ctxpopup_smart_focus_direction(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elc_ctxpopup_elm_widget_focus_direction(Eo *obj EINA_UNUSED, 
Elc_Ctxpopup_Data *sd, const Evas_Object *base, double degree, Evas_Object 
**direction, double *weight)
 {
-   Elm_Ctxpopup_Smart_Data *sd = _pd;
-
-   Evas_Object *base = va_arg(*list, Evas_Object *);
-   double degree = va_arg(*list, double);
-   Evas_Object **direction = va_arg(*list, Evas_Object **);
-   double *weight = va_arg(*list, double *);
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FA

[EGIT] [core/elementary] master 01/10: Eolian: Integration of Box

2014-03-20 Thread Daniel Zaoui
jackdanielz pushed a commit to branch master.

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

commit 9de1e5207f7c1e1a401cdfc6edd3349369740625
Author: Daniel Zaoui 
Date:   Thu Mar 20 07:58:37 2014 +0200

Eolian: Integration of Box
---
 src/lib/Makefile.am  |   8 +-
 src/lib/elm_box.c| 425 +--
 src/lib/elm_box.eo   | 325 
 src/lib/elm_box_eo.h |   5 +
 src/lib/elm_widget_box.h |   6 +-
 5 files changed, 413 insertions(+), 356 deletions(-)

diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index 91804c5..8cd5a9f 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -557,7 +557,9 @@ BUILT_SOURCES = \
elm_atspi_object.eo.c \
elm_atspi_object.eo.h \
elm_bg.eo.c \
-   elm_bg.eo.h
+   elm_bg.eo.h \
+   elm_box.eo.c \
+   elm_box.eo.h
 
 EXTRA_DIST += \
 elm_widget.eo \
@@ -576,7 +578,8 @@ EXTRA_DIST += \
 elm_interface_atspi_component.eo \
 elm_interface_atspi_window.eo \
 elm_atspi_object.eo \
-elm_bg.eo
+elm_bg.eo \
+elm_box.eo
 
 nodist_includesunstable_HEADERS = \
  elm_widget.eo.h \
@@ -595,5 +598,6 @@ nodist_includesunstable_HEADERS = \
  elm_interface_atspi_component.eo.h \
  elm_interface_atspi_window.eo.h \
  elm_atspi_object.eo.h \
+ elm_box.eo.h \
  elm_bg.eo.h
 
diff --git a/src/lib/elm_box.c b/src/lib/elm_box.c
index 213229b..7a867ee 100644
--- a/src/lib/elm_box.c
+++ b/src/lib/elm_box.c
@@ -7,8 +7,6 @@
 #include "els_box.h"
 #include "elm_widget_box.h"
 
-EAPI Eo_Op ELM_OBJ_BOX_BASE_ID = EO_NOOP;
-
 #define MY_CLASS ELM_OBJ_BOX_CLASS
 #define MY_CLASS_NAME "Elm_Box"
 #define MY_CLASS_NAME_LEGACY "elm_box"
@@ -48,63 +46,46 @@ _child_removed_cb_proxy(void *data,
evas_object_smart_callback_call(box, SIG_CHILD_REMOVED, child);
 }
 
-static void
-_elm_box_smart_focus_next_manager_is(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_box_elm_widget_focus_next_manager_is(Eo *obj EINA_UNUSED, Elm_Box_Data 
*_pd EINA_UNUSED)
 {
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   *ret = EINA_TRUE;
+   return EINA_TRUE;
 }
 
-static void
-_elm_box_smart_focus_next(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_box_elm_widget_focus_next(Eo *obj, Elm_Box_Data *_pd EINA_UNUSED, 
Elm_Focus_Direction dir, Evas_Object **next)
 {
const Eina_List *items;
void *(*list_data_get)(const Eina_List *list);
 
-   Elm_Focus_Direction dir = va_arg(*list, Elm_Focus_Direction);
-   Evas_Object **next = va_arg(*list, Evas_Object **);
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   Eina_Bool int_ret;
-   if (ret) *ret = EINA_FALSE;
-
/* Focus chain */
/* TODO: Change this to use other chain */
if ((items = elm_widget_focus_custom_chain_get(obj)))
  list_data_get = eina_list_data_get;
else
  {
-ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
+ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, EINA_FALSE);
 Evas_Object_Box_Data *bd =
   evas_object_smart_data_get(wd->resize_obj);
 
 items = bd->children;
 list_data_get = _elm_box_list_data_get;
 
-if (!items) return;
+if (!items) return EINA_FALSE;
  }
 
-   int_ret = elm_widget_focus_list_next_get(obj, items, list_data_get, dir, 
next);
-   if (ret) *ret = int_ret;
+   return elm_widget_focus_list_next_get(obj, items, list_data_get, dir, next);
 }
 
-static void
-_elm_box_smart_focus_direction_manager_is(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_box_elm_widget_focus_direction_manager_is(Eo *obj EINA_UNUSED, 
Elm_Box_Data *_pd EINA_UNUSED)
 {
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   *ret = EINA_TRUE;
+   return EINA_TRUE;
 }
 
-static void
-_elm_box_smart_focus_direction(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED, 
va_list *list)
+EOLIAN static Eina_Bool
+_elm_box_elm_widget_focus_direction(Eo *obj EINA_UNUSED, Elm_Box_Data *_pd 
EINA_UNUSED, const Evas_Object *base, double degree, Evas_Object **direction, 
double *weight)
 {
-   Evas_Object *base = va_arg(*list, Evas_Object *);
-   double degree = va_arg(*list, double);
-   Evas_Object **direction = va_arg(*list, Evas_Object **);
-   double *weight = va_arg(*list, double *);
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
-   Eina_Bool int_ret;
-
const Eina_List *items;
void *(*list_data_get)(const Eina_List *list);
 
@@ -112,34 +93,31 @@ _elm_box_smart_focus_direction(Eo *obj EINA_UNUSED, void 
*_pd EINA_UNUSED, va_li
  list_data_get =

[EGIT] [core/elementary] master 07/10: Eolian: Integration of Color Selector

2014-03-20 Thread Daniel Zaoui
jackdanielz pushed a commit to branch master.

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

commit 38a7eb4d9c6b92483f07ab655ffcd34bd185ef79
Author: Daniel Zaoui 
Date:   Thu Mar 20 14:29:12 2014 +0200

Eolian: Integration of Color Selector
---
 src/lib/Makefile.am|  10 +-
 src/lib/elm_colorselector.c| 365 +
 src/lib/elm_colorselector.eo   | 149 +++
 src/lib/elm_colorselector_eo.h |   3 +
 src/lib/elm_widget_colorselector.h |   6 +-
 5 files changed, 244 insertions(+), 289 deletions(-)

diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index b18fc9f..67842c0 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -569,7 +569,9 @@ BUILT_SOURCES = \
elm_check.eo.c \
elm_check.eo.h \
elm_clock.eo.c \
-   elm_clock.eo.h
+   elm_clock.eo.h \
+   elm_colorselector.eo.c \
+   elm_colorselector.eo.h
 
 EXTRA_DIST += \
 elm_widget.eo \
@@ -594,7 +596,8 @@ EXTRA_DIST += \
 elm_button.eo \
 elm_calendar.eo \
 elm_check.eo \
-elm_clock.eo
+elm_clock.eo \
+elm_colorselector.eo
 
 nodist_includesunstable_HEADERS = \
  elm_widget.eo.h \
@@ -619,5 +622,6 @@ nodist_includesunstable_HEADERS = \
  elm_button.eo.h \
  elm_calendar.eo.h \
  elm_check.eo.h \
- elm_clock.eo.h
+ elm_clock.eo.h \
+ elm_colorselector.eo.h
 
diff --git a/src/lib/elm_colorselector.c b/src/lib/elm_colorselector.c
index 6d8de75..bf7c38f 100644
--- a/src/lib/elm_colorselector.c
+++ b/src/lib/elm_colorselector.c
@@ -6,8 +6,6 @@
 #include "elm_priv.h"
 #include "elm_widget_colorselector.h"
 
-EAPI Eo_Op ELM_OBJ_COLORSELECTOR_BASE_ID = EO_NOOP;
-
 #define MY_CLASS ELM_OBJ_COLORSELECTOR_CLASS
 
 #define MY_CLASS_NAME "Elm_Colorselector"
@@ -43,7 +41,7 @@ enum Palette_Box_Direction
 };
 
 static void
-_items_del(Elm_Colorselector_Smart_Data *sd)
+_items_del(Elm_Colorselector_Data *sd)
 {
Elm_Color_Item *item;
 
@@ -60,7 +58,7 @@ _items_del(Elm_Colorselector_Smart_Data *sd)
 }
 
 static void
-_color_with_saturation(Elm_Colorselector_Smart_Data *sd, int *sr, int *sg, int 
*sb)
+_color_with_saturation(Elm_Colorselector_Data *sd, int *sr, int *sg, int *sb)
 {
if (sd->er > 127)
  *sr = 127 + (int)((double)(sd->er - 127) * sd->s);
@@ -79,7 +77,7 @@ _color_with_saturation(Elm_Colorselector_Smart_Data *sd, int 
*sr, int *sg, int *
 }
 
 static void
-_color_with_lightness(Elm_Colorselector_Smart_Data *sd, int *lr, int *lg, int 
*lb)
+_color_with_lightness(Elm_Colorselector_Data *sd, int *lr, int *lg, int *lb)
 {
if (sd->l > 0.5)
  {
@@ -102,7 +100,7 @@ _color_with_lightness(Elm_Colorselector_Smart_Data *sd, int 
*lr, int *lg, int *l
 }
 
 static void
-_color_picker_init(Elm_Colorselector_Smart_Data *sd)
+_color_picker_init(Elm_Colorselector_Data *sd)
 {
char buf[12];
unsigned int *pixels;
@@ -156,7 +154,7 @@ _color_picker_init(Elm_Colorselector_Smart_Data *sd)
 }
 
 static void
-_rgb_to_hsl(Elm_Colorselector_Smart_Data *sd)
+_rgb_to_hsl(Elm_Colorselector_Data *sd)
 {
double r2, g2, b2;
double v, m, vm;
@@ -203,7 +201,7 @@ _rgb_to_hsl(Elm_Colorselector_Smart_Data *sd)
 }
 
 static Eina_Bool
-_hsl_to_rgb(Elm_Colorselector_Smart_Data *sd)
+_hsl_to_rgb(Elm_Colorselector_Data *sd)
 {
double sv, vsf, f, p, q, t, v;
double r = 0, g = 0, b = 0;
@@ -295,7 +293,7 @@ _hsl_to_rgb(Elm_Colorselector_Smart_Data *sd)
 }
 
 static void
-_update_ergb(Elm_Colorselector_Smart_Data *sd, double x)
+_update_ergb(Elm_Colorselector_Data *sd, double x)
 {
double one_six = 1.0 / 6.0;
 
@@ -338,7 +336,7 @@ _update_ergb(Elm_Colorselector_Smart_Data *sd, double x)
 }
 
 static void
-_update_colorbars(Elm_Colorselector_Smart_Data *sd)
+_update_colorbars(Elm_Colorselector_Data *sd)
 {
int r, g, b;
evas_object_color_set
@@ -457,7 +455,7 @@ _entry_changed_cb(void *data,
   Evas_Object *obj,
   void *event_info EINA_UNUSED)
 {
-   Elm_Colorselector_Smart_Data *sd = data;
+   Elm_Colorselector_Data *sd = data;
Evas_Object *parent;
const char *text;
int i, v;
@@ -657,7 +655,7 @@ _mouse_out_canvas(void *data, Evas *e EINA_UNUSED, void 
*event_info EINA_UNUSED)
 }
 
 static void
-_color_picker_add(Evas_Object *obj, Elm_Colorselector_Smart_Data *sd)
+_color_picker_add(Evas_Object *obj, Elm_Colorselector_Data *sd)
 {
Evas_Object *ed;
Evas_Object *im;
@@ -1064,8 +1062,8 @@ _color_bars_add(Evas_Object *obj)
  }
 }
 
-static void
-_elm_colorselector_smart_theme(Eo *obj, void *_pd, va_list *list)
+EOLIAN static Eina_Bool
+_elm_colorselector_elm_widget_theme

[EGIT] [core/elementary] master 08/10: Eolian: Integration of Conformant

2014-03-20 Thread Daniel Zaoui
jackdanielz pushed a commit to branch master.

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

commit 89291d067c7893e7bbc1e264bd40a14dadc13939
Author: Daniel Zaoui 
Date:   Thu Mar 20 14:37:43 2014 +0200

Eolian: Integration of Conformant
---
 src/lib/Makefile.am  |  8 +++--
 src/lib/elm_conform.c| 71 +++-
 src/lib/elm_conform_eo.h |  3 ++
 src/lib/elm_conformant.eo| 20 +
 src/lib/elm_widget_conform.h |  6 ++--
 5 files changed, 49 insertions(+), 59 deletions(-)

diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index 67842c0..e235fcb 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -571,7 +571,9 @@ BUILT_SOURCES = \
elm_clock.eo.c \
elm_clock.eo.h \
elm_colorselector.eo.c \
-   elm_colorselector.eo.h
+   elm_colorselector.eo.h \
+   elm_conformant.eo.c \
+   elm_conformant.eo.h
 
 EXTRA_DIST += \
 elm_widget.eo \
@@ -597,7 +599,8 @@ EXTRA_DIST += \
 elm_calendar.eo \
 elm_check.eo \
 elm_clock.eo \
-elm_colorselector.eo
+elm_colorselector.eo \
+elm_conformant.eo
 
 nodist_includesunstable_HEADERS = \
  elm_widget.eo.h \
@@ -623,5 +626,6 @@ nodist_includesunstable_HEADERS = \
  elm_calendar.eo.h \
  elm_check.eo.h \
  elm_clock.eo.h \
+ elm_conformant.eo.h \
  elm_colorselector.eo.h
 
diff --git a/src/lib/elm_conform.c b/src/lib/elm_conform.c
index 57b097d..f20a2d0 100644
--- a/src/lib/elm_conform.c
+++ b/src/lib/elm_conform.c
@@ -7,8 +7,6 @@
 #include "elm_widget_conform.h"
 #include "elm_widget_layout.h"
 
-EAPI Eo_Op ELM_OBJ_CONFORMANT_BASE_ID = EO_NOOP;
-
 #define MY_CLASS ELM_OBJ_CONFORMANT_CLASS
 
 #define MY_CLASS_NAME "Elm_Conformant"
@@ -588,21 +586,19 @@ _on_rotation_changed(void *data,
  }
 }
 
-static void
-_elm_conformant_smart_theme(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_conformant_elm_widget_theme_apply(Eo *obj, Elm_Conformant_Data *_pd 
EINA_UNUSED)
 {
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
Eina_Bool int_ret = EINA_FALSE;
 
eo_do_super(obj, MY_CLASS, elm_obj_widget_theme_apply(&int_ret));
-   if (!int_ret) return;
+   if (!int_ret) return EINA_FALSE;
 
_conformant_parts_swallow(obj);
 
elm_layout_sizing_eval(obj);
 
-   if (ret) *ret = EINA_TRUE;
+   return EINA_TRUE;
 }
 
 // unused now - but meant to be for making sure the focused widget is always
@@ -892,8 +888,8 @@ _on_prop_change(void *data,
 
 #endif
 
-static void
-_elm_conformant_smart_add(Eo *obj, void *_pd EINA_UNUSED, va_list *list 
EINA_UNUSED)
+EOLIAN static void
+_elm_conformant_evas_smart_add(Eo *obj, Elm_Conformant_Data *_pd EINA_UNUSED)
 {
eo_do_super(obj, MY_CLASS, evas_obj_smart_add());
elm_widget_sub_object_parent_add(obj);
@@ -913,11 +909,10 @@ _elm_conformant_smart_add(Eo *obj, void *_pd EINA_UNUSED, 
va_list *list EINA_UNU
elm_layout_sizing_eval(obj);
 }
 
-static void
-_elm_conformant_smart_del(Eo *obj, void *_pd, va_list *list EINA_UNUSED)
+EOLIAN static void
+_elm_conformant_evas_smart_del(Eo *obj, Elm_Conformant_Data *sd)
 {
Evas_Object *top;
-   Elm_Conformant_Smart_Data *sd = _pd;
 
 #ifdef HAVE_ELEMENTARY_X
ecore_event_handler_del(sd->prop_hdl);
@@ -935,17 +930,15 @@ _elm_conformant_smart_del(Eo *obj, void *_pd, va_list 
*list EINA_UNUSED)
eo_do_super(obj, MY_CLASS, evas_obj_smart_del());
 }
 
-static void
-_elm_conformant_smart_parent_set(Eo *obj, void *_pd, va_list *list)
+EOLIAN static void
+_elm_conformant_elm_widget_parent_set(Eo *obj, Elm_Conformant_Data *sd, 
Evas_Object *parent)
 {
 #ifdef HAVE_ELEMENTARY_X
-   Evas_Object *parent = va_arg(*list, Evas_Object *);
Evas_Object *top = elm_widget_top_get(parent);
Ecore_X_Window xwin = elm_win_xwindow_get(parent);
 
if ((xwin) && (!elm_win_inlined_image_object_get(top)))
  {
-Elm_Conformant_Smart_Data *sd = _pd;
 
 sd->prop_hdl = ecore_event_handler_add
 (ECORE_X_EVENT_WINDOW_PROPERTY, _on_prop_change, obj);
@@ -956,11 +949,10 @@ _elm_conformant_smart_parent_set(Eo *obj, void *_pd, 
va_list *list)
 #endif
 }
 
-static void
-_elm_conformant_smart_content_aliases_get(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, va_list *list)
+EOLIAN static const Elm_Layout_Part_Alias_Description*
+_elm_conformant_elm_layout_content_aliases_get(Eo *obj EINA_UNUSED, 
Elm_Conformant_Data *_pd EINA_UNUSED)
 {
-   const Elm_Layout_Part_Alias_Description **aliases = va_arg(*list, const 
Elm_Layout_Part_Alias_Description **);
-   *aliases = _content_aliases;
+   return _content_aliases;
 }
 
 EAPI Evas_O

[EGIT] [core/elementary] master 02/10: Eolian: Integration of Bubble

2014-03-20 Thread Daniel Zaoui
jackdanielz pushed a commit to branch master.

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

commit f0f50fe499f0628f94eeaa7991699ff7f480c9ec
Author: Daniel Zaoui 
Date:   Thu Mar 20 08:40:07 2014 +0200

Eolian: Integration of Bubble
---
 src/lib/Makefile.am |  10 ++-
 src/lib/elm_bubble.c| 174 +++-
 src/lib/elm_bubble.eo   |  52 +
 src/lib/elm_bubble_eo.h |   4 +
 src/lib/elm_widget_bubble.h |   6 +-
 5 files changed, 109 insertions(+), 137 deletions(-)

diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index 8cd5a9f..0cfbee1 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -559,7 +559,9 @@ BUILT_SOURCES = \
elm_bg.eo.c \
elm_bg.eo.h \
elm_box.eo.c \
-   elm_box.eo.h
+   elm_box.eo.h \
+   elm_bubble.eo.c \
+   elm_bubble.eo.h
 
 EXTRA_DIST += \
 elm_widget.eo \
@@ -579,7 +581,8 @@ EXTRA_DIST += \
 elm_interface_atspi_window.eo \
 elm_atspi_object.eo \
 elm_bg.eo \
-elm_box.eo
+elm_box.eo \
+elm_bubble.eo
 
 nodist_includesunstable_HEADERS = \
  elm_widget.eo.h \
@@ -599,5 +602,6 @@ nodist_includesunstable_HEADERS = \
  elm_interface_atspi_window.eo.h \
  elm_atspi_object.eo.h \
  elm_box.eo.h \
- elm_bg.eo.h
+ elm_bg.eo.h \
+ elm_bubble.eo.h
 
diff --git a/src/lib/elm_bubble.c b/src/lib/elm_bubble.c
index 2bd7bdc..86ab63c 100644
--- a/src/lib/elm_bubble.c
+++ b/src/lib/elm_bubble.c
@@ -7,8 +7,6 @@
 #include "elm_widget_bubble.h"
 #include "elm_widget_layout.h"
 
-EAPI Eo_Op ELM_OBJ_BUBBLE_BASE_ID = EO_NOOP;
-
 #define MY_CLASS ELM_OBJ_BUBBLE_CLASS
 
 #define MY_CLASS_NAME "Elm_Bubble"
@@ -46,8 +44,8 @@ static const char *corner_string[] =
"bottom_right"
 };
 
-static void
-_elm_bubble_smart_sizing_eval(Eo *obj, void *_pd EINA_UNUSED, va_list *list 
EINA_UNUSED)
+EOLIAN static void
+_elm_bubble_elm_layout_sizing_eval(Eo *obj, Elm_Bubble_Data *_pd EINA_UNUSED)
 {
Evas_Coord minw = -1, minh = -1;
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
@@ -75,71 +73,49 @@ _on_mouse_up(void *data,
 
 /* overriding layout's focus_next() in order to just cycle through the
  * content's tree */
-static void
-_elm_bubble_smart_focus_next(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_bubble_elm_widget_focus_next(Eo *obj, Elm_Bubble_Data *_pd EINA_UNUSED, 
Elm_Focus_Direction dir, Evas_Object **next)
 {
Evas_Object *content;
-   ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
-
-   Elm_Focus_Direction dir = va_arg(*list, Elm_Focus_Direction);
-   Evas_Object **next = va_arg(*list, Evas_Object **);
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
-   Eina_Bool int_ret = EINA_FALSE;
-
+   ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, EINA_FALSE);
if ((elm_widget_can_focus_get(obj)) &&
(!wd->focused))
  {
 // ACCESS
 *next = (Evas_Object *)obj;
-if (ret) *ret = EINA_TRUE;
-return;
+return EINA_TRUE;
  }
else
  {
 content = elm_layout_content_get(obj, NULL);
-if (!content) return;
+if (!content) return EINA_FALSE;
 
 /* attempt to follow focus cycle into sub-object */
-int_ret = elm_widget_focus_next_get(content, dir, next);
-if (ret) *ret = int_ret;
+return elm_widget_focus_next_get(content, dir, next);
  }
 }
 
-static void
-_elm_bubble_smart_focus_direction(Eo *obj, void *_pd EINA_UNUSED, va_list 
*list)
+EOLIAN static Eina_Bool
+_elm_bubble_elm_widget_focus_direction(Eo *obj, Elm_Bubble_Data *_pd 
EINA_UNUSED, const Evas_Object *base, double degree, Evas_Object **direction, 
double *weight)
 {
Evas_Object *content;
 
-   Evas_Object *base = va_arg(*list, Evas_Object *);
-   double degree = va_arg(*list, double);
-   Evas_Object **direction = va_arg(*list, Evas_Object **);
-   double *weight = va_arg(*list, double *);
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
-   Eina_Bool int_ret;
-
content = elm_layout_content_get(obj, NULL);
 
-   if (!content) return;
+   if (!content) return EINA_FALSE;
 
/* Try Focus cycle in subitem */
-   int_ret = elm_widget_focus_direction_get
+   return elm_widget_focus_direction_get
 (content, base, degree, direction, weight);
-   if (ret) *ret = int_ret;
 }
 
-static void
-_elm_bubble_smart_text_set(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_bubble_elm_layout_text_set(Eo *obj, Elm_Bubble_Data *_pd EINA_UNUSED, 
const char *part, const char *label)
 {
-   const char *part

[EGIT] [core/elementary] master 05/10: Eolian: Integration of Check

2014-03-20 Thread Daniel Zaoui
jackdanielz pushed a commit to branch master.

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

commit 729ca440bb2eb540d83ed786c6d3944e9cdd7a49
Author: Daniel Zaoui 
Date:   Thu Mar 20 10:27:21 2014 +0200

Eolian: Integration of Check
---
 src/lib/Makefile.am|  10 ++-
 src/lib/elm_check.c| 211 -
 src/lib/elm_check.eo   |  70 +++
 src/lib/elm_check_eo.h |   3 +
 src/lib/elm_widget_check.h |   6 +-
 5 files changed, 140 insertions(+), 160 deletions(-)

diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index c6414ba..60f77fb 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -565,7 +565,9 @@ BUILT_SOURCES = \
elm_button.eo.c \
elm_button.eo.h \
elm_calendar.eo.c \
-   elm_calendar.eo.h
+   elm_calendar.eo.h \
+   elm_check.eo.c \
+   elm_check.eo.h
 
 EXTRA_DIST += \
 elm_widget.eo \
@@ -588,7 +590,8 @@ EXTRA_DIST += \
 elm_box.eo \
 elm_bubble.eo \
 elm_button.eo \
-elm_calendar.eo
+elm_calendar.eo \
+elm_check.eo
 
 nodist_includesunstable_HEADERS = \
  elm_widget.eo.h \
@@ -611,5 +614,6 @@ nodist_includesunstable_HEADERS = \
  elm_bg.eo.h \
  elm_bubble.eo.h \
  elm_button.eo.h \
- elm_calendar.eo.h
+ elm_calendar.eo.h \
+ elm_check.eo.h
 
diff --git a/src/lib/elm_check.c b/src/lib/elm_check.c
index 95b1ffb..782164a 100644
--- a/src/lib/elm_check.c
+++ b/src/lib/elm_check.c
@@ -7,8 +7,6 @@
 #include "elm_widget_check.h"
 #include "elm_widget_layout.h"
 
-EAPI Eo_Op ELM_OBJ_CHECK_BASE_ID = EO_NOOP;
-
 #define MY_CLASS ELM_OBJ_CHECK_CLASS
 
 #define MY_CLASS_NAME "Elm_Check"
@@ -82,61 +80,52 @@ _icon_signal_emit(Evas_Object *obj)
 /* FIXME: replicated from elm_layout just because check's icon spot
  * is elm.swallow.content, not elm.swallow.icon. Fix that whenever we
  * can changed the theme API */
-static void
-_elm_check_smart_sub_object_del(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_check_elm_widget_sub_object_del(Eo *obj, Elm_Check_Data *_pd EINA_UNUSED, 
Evas_Object *sobj)
 {
-   Evas_Object *sobj = va_arg(*list, Evas_Object *);
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
Eina_Bool int_ret = EINA_FALSE;
 
eo_do_super(obj, MY_CLASS, elm_obj_widget_sub_object_del(sobj, &int_ret));
-   if (!int_ret) return;
+   if (!int_ret) return EINA_FALSE;
 
_icon_signal_emit(obj);
 
-   if (ret) *ret = EINA_TRUE;
eo_do(obj, elm_obj_layout_sizing_eval());
+
+   return EINA_TRUE;
 }
 
-static void
-_elm_check_smart_activate(Eo *obj EINA_UNUSED, void *_pd EINA_UNUSED, va_list 
*list)
+EOLIAN static Eina_Bool
+_elm_check_elm_widget_activate(Eo *obj EINA_UNUSED, Elm_Check_Data *_pd 
EINA_UNUSED, Elm_Activate act)
 {
-   Elm_Activate act = va_arg(*list, Elm_Activate);
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
-
-   if (elm_widget_disabled_get(obj)) return;
-   if (act != ELM_ACTIVATE_DEFAULT) return;
+   if (elm_widget_disabled_get(obj)) return EINA_FALSE;
+   if (act != ELM_ACTIVATE_DEFAULT) return EINA_FALSE;
 
_activate(obj);
 
-   if (ret) *ret = EINA_TRUE;
+   return EINA_TRUE;
 }
 
 /* FIXME: replicated from elm_layout just because check's icon spot
  * is elm.swallow.content, not elm.swallow.icon. Fix that whenever we
  * can changed the theme API */
-static void
-_elm_check_smart_content_set(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_check_elm_container_content_set(Eo *obj, Elm_Check_Data *_pd EINA_UNUSED, 
const char *part, Evas_Object *content)
 {
-   const char *part = va_arg(*list, const char *);
-   Evas_Object *content = va_arg(*list, Evas_Object *);
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
Eina_Bool int_ret = EINA_FALSE;
 
eo_do_super(obj, MY_CLASS, elm_obj_container_content_set(part, content, 
&int_ret));
-   if (!int_ret) return;
+   if (!int_ret) return EINA_FALSE;
 
_icon_signal_emit(obj);
 
-   if (ret) *ret = EINA_TRUE;
eo_do(obj, elm_obj_layout_sizing_eval());
+
+   return EINA_TRUE;
 }
 
-static void
-_elm_check_smart_sizing_eval(Eo *obj, void *_pd EINA_UNUSED, va_list *list 
EINA_UNUSED)
+EOLIAN static void
+_elm_check_elm_layout_sizing_eval(Eo *obj, Elm_Check_Data *_pd EINA_UNUSED)
 {
Evas_Coord minw = -1, minh = -1;
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
@@ -149,44 +138,37 @@ _elm_check_smart_sizing_eval(Eo *obj, void *_pd 
EINA_UNUSED, va_list *list EINA_
evas_object_size_hint_max_set(obj, -1, -1);
 }
 
-static void
-_e

[EGIT] [core/elementary] master 06/10: Eolian: Integration of Clock

2014-03-20 Thread Daniel Zaoui
jackdanielz pushed a commit to branch master.

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

commit 232a538ec9a7f7315676ad3db36145cf4c90262f
Author: Daniel Zaoui 
Date:   Thu Mar 20 11:11:48 2014 +0200

Eolian: Integration of Clock
---
 src/lib/Makefile.am|  10 +-
 src/lib/elm_clock.c| 362 -
 src/lib/elm_clock.eo   | 262 
 src/lib/elm_clock_eo.h |   5 +
 src/lib/elm_widget_clock.h |   6 +-
 5 files changed, 339 insertions(+), 306 deletions(-)

diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index 60f77fb..b18fc9f 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -567,7 +567,9 @@ BUILT_SOURCES = \
elm_calendar.eo.c \
elm_calendar.eo.h \
elm_check.eo.c \
-   elm_check.eo.h
+   elm_check.eo.h \
+   elm_clock.eo.c \
+   elm_clock.eo.h
 
 EXTRA_DIST += \
 elm_widget.eo \
@@ -591,7 +593,8 @@ EXTRA_DIST += \
 elm_bubble.eo \
 elm_button.eo \
 elm_calendar.eo \
-elm_check.eo
+elm_check.eo \
+elm_clock.eo
 
 nodist_includesunstable_HEADERS = \
  elm_widget.eo.h \
@@ -615,5 +618,6 @@ nodist_includesunstable_HEADERS = \
  elm_bubble.eo.h \
  elm_button.eo.h \
  elm_calendar.eo.h \
- elm_check.eo.h
+ elm_check.eo.h \
+ elm_clock.eo.h
 
diff --git a/src/lib/elm_clock.c b/src/lib/elm_clock.c
index ad9766d..6c9e55b 100644
--- a/src/lib/elm_clock.c
+++ b/src/lib/elm_clock.c
@@ -6,8 +6,6 @@
 #include "elm_priv.h"
 #include "elm_widget_clock.h"
 
-EAPI Eo_Op ELM_OBJ_CLOCK_BASE_ID = EO_NOOP;
-
 #define MY_CLASS ELM_OBJ_CLOCK_CLASS
 
 #define MY_CLASS_NAME "Elm_Clock"
@@ -562,19 +560,17 @@ _time_update(Evas_Object *obj)
  sd->cur.ampm = -1;
 }
 
-static void
-_elm_clock_smart_theme(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_clock_elm_widget_theme_apply(Eo *obj, Elm_Clock_Data *sd EINA_UNUSED)
 {
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
Eina_Bool int_ret = EINA_FALSE;
 
eo_do_super(obj, MY_CLASS, elm_obj_widget_theme_apply(&int_ret));
-   if (!int_ret) return;
+   if (!int_ret) return EINA_FALSE;
 
_time_update(obj);
 
-   if (ret) *ret = EINA_TRUE;
+   return EINA_TRUE;
 }
 
 static Eina_Bool
@@ -653,10 +649,9 @@ _access_state_cb(void *data EINA_UNUSED, Evas_Object *obj)
return NULL;
 }
 
-static void
-_elm_clock_smart_add(Eo *obj, void *_pd, va_list *list EINA_UNUSED)
+EOLIAN static void
+_elm_clock_evas_smart_add(Eo *obj, Elm_Clock_Data *priv)
 {
-   Elm_Clock_Smart_Data *priv = _pd;
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
 
eo_do_super(obj, MY_CLASS, evas_obj_smart_add());
@@ -692,10 +687,9 @@ _elm_clock_smart_add(Eo *obj, void *_pd, va_list *list 
EINA_UNUSED)
  (_elm_access_info_get(obj), ELM_ACCESS_STATE, _access_state_cb, NULL);
 }
 
-static void
-_elm_clock_smart_del(Eo *obj, void *_pd, va_list *list EINA_UNUSED)
+EOLIAN static void
+_elm_clock_evas_smart_del(Eo *obj, Elm_Clock_Data *sd)
 {
-   Elm_Clock_Smart_Data *sd = _pd;
 
ecore_timer_del(sd->ticker);
ecore_timer_del(sd->spin);
@@ -707,37 +701,28 @@ _elm_clock_smart_del(Eo *obj, void *_pd, va_list *list 
EINA_UNUSED)
 
 static Eina_Bool _elm_clock_smart_focus_next_enable = EINA_FALSE;
 
-static void
-_elm_clock_smart_focus_next_manager_is(Eo *obj EINA_UNUSED, void *_pd 
EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_clock_elm_widget_focus_next_manager_is(Eo *obj EINA_UNUSED, 
Elm_Clock_Data *_pd EINA_UNUSED)
 {
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   *ret = _elm_clock_smart_focus_next_enable;
+   return _elm_clock_smart_focus_next_enable;
 }
 
-static void
-_elm_clock_smart_focus_next(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_clock_elm_widget_focus_next(Eo *obj, Elm_Clock_Data *sd, 
Elm_Focus_Direction dir, Evas_Object **next)
 {
-   Elm_Focus_Direction dir = va_arg(*list, Elm_Focus_Direction);
-   Evas_Object **next = va_arg(*list, Evas_Object **);
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
-
Evas_Object *ao, *po;
Eina_List *items = NULL;
 
-   Elm_Clock_Smart_Data *sd = _pd;
 
if (!sd->edit)
  {
 *next = (Evas_Object *)obj;
-if (ret) *ret = !elm_widget_highlight_get(obj);
-return;
+return !elm_widget_highlight_get(obj);
  }
else if (!elm_widget_highlight_get(obj))
  {
 *next = (Evas_Object *)obj;
-if (ret) *ret = EINA_TRUE;
-return;
+return EINA_TRUE;
  }
 
int i;
@@ -771,7 +756,7 

[EGIT] [core/elementary] master 03/10: Eolian: Integration of Button

2014-03-20 Thread Daniel Zaoui
jackdanielz pushed a commit to branch master.

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

commit dbd37a210f37826f4fb098122968411ffd46a185
Author: Daniel Zaoui 
Date:   Thu Mar 20 08:40:43 2014 +0200

Eolian: Integration of Button
---
 src/lib/Makefile.am |  10 +-
 src/lib/elm_button.c| 278 +++-
 src/lib/elm_button.eo   | 112 ++
 src/lib/elm_button_eo.h |   4 +
 src/lib/elm_widget_button.h |   6 +-
 5 files changed, 193 insertions(+), 217 deletions(-)

diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
index 0cfbee1..1bb3282 100644
--- a/src/lib/Makefile.am
+++ b/src/lib/Makefile.am
@@ -561,7 +561,9 @@ BUILT_SOURCES = \
elm_box.eo.c \
elm_box.eo.h \
elm_bubble.eo.c \
-   elm_bubble.eo.h
+   elm_bubble.eo.h \
+   elm_button.eo.c \
+   elm_button.eo.h
 
 EXTRA_DIST += \
 elm_widget.eo \
@@ -582,7 +584,8 @@ EXTRA_DIST += \
 elm_atspi_object.eo \
 elm_bg.eo \
 elm_box.eo \
-elm_bubble.eo
+elm_bubble.eo \
+elm_button.eo
 
 nodist_includesunstable_HEADERS = \
  elm_widget.eo.h \
@@ -603,5 +606,6 @@ nodist_includesunstable_HEADERS = \
  elm_atspi_object.eo.h \
  elm_box.eo.h \
  elm_bg.eo.h \
- elm_bubble.eo.h
+ elm_bubble.eo.h \
+ elm_button.eo.h
 
diff --git a/src/lib/elm_button.c b/src/lib/elm_button.c
index e688be1..b08626c 100644
--- a/src/lib/elm_button.c
+++ b/src/lib/elm_button.c
@@ -7,8 +7,6 @@
 #include "elm_widget_button.h"
 #include "elm_widget_layout.h"
 
-EAPI Eo_Op ELM_OBJ_BUTTON_BASE_ID = EO_NOOP;
-
 #define MY_CLASS ELM_OBJ_BUTTON_CLASS
 
 #define MY_CLASS_NAME "Elm_Button"
@@ -62,8 +60,8 @@ _activate(Evas_Object *obj)
  }
 }
 
-static void
-_elm_button_smart_sizing_eval(Eo *obj, void *_pd EINA_UNUSED, va_list *list 
EINA_UNUSED)
+EOLIAN static void
+_elm_button_elm_layout_sizing_eval(Eo *obj, Elm_Button_Data *_pd EINA_UNUSED)
 {
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
Evas_Coord minw = -1, minh = -1;
@@ -75,21 +73,17 @@ _elm_button_smart_sizing_eval(Eo *obj, void *_pd 
EINA_UNUSED, va_list *list EINA
evas_object_size_hint_min_set(obj, minw, minh);
 }
 
-static void
-_elm_button_smart_activate(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_button_elm_widget_activate(Eo *obj, Elm_Button_Data *_pd EINA_UNUSED, 
Elm_Activate act)
 {
-   Elm_Activate act = va_arg(*list, Elm_Activate);
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
-
-   if (elm_widget_disabled_get(obj)) return;
-   if (act != ELM_ACTIVATE_DEFAULT) return;
-   if (evas_object_freeze_events_get(obj)) return;
+   if (elm_widget_disabled_get(obj)) return EINA_FALSE;
+   if (act != ELM_ACTIVATE_DEFAULT) return EINA_FALSE;
+   if (evas_object_freeze_events_get(obj)) return EINA_FALSE;
 
evas_object_smart_callback_call(obj, SIG_CLICKED, NULL);
elm_layout_signal_emit(obj, "elm,anim,activate", "elm");
 
-   if (ret) *ret = EINA_TRUE;
+   return EINA_TRUE;
 }
 
 /* FIXME: replicated from elm_layout just because button's icon spot
@@ -111,84 +105,70 @@ _icon_signal_emit(Evas_Object *obj)
 /* FIXME: replicated from elm_layout just because button's icon spot
  * is elm.swallow.content, not elm.swallow.icon. Fix that whenever we
  * can changed the theme API */
-static void
-_elm_button_smart_theme(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_button_elm_widget_theme_apply(Eo *obj, Elm_Button_Data *_pd EINA_UNUSED)
 {
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
Eina_Bool int_ret = EINA_FALSE;
 
eo_do_super(obj, MY_CLASS, elm_obj_widget_theme_apply(&int_ret));
-   if (!int_ret) return;
+   if (!int_ret) return EINA_FALSE;
_icon_signal_emit(obj);
 
-   if (ret) *ret = EINA_TRUE;
+   return EINA_TRUE;
 }
 
 /* FIXME: replicated from elm_layout just because button's icon spot
  * is elm.swallow.content, not elm.swallow.icon. Fix that whenever we
  * can changed the theme API */
-static void
-_elm_button_smart_sub_object_del(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
+EOLIAN static Eina_Bool
+_elm_button_elm_widget_sub_object_del(Eo *obj, Elm_Button_Data *_pd 
EINA_UNUSED, Evas_Object *sobj)
 {
-   Evas_Object *sobj = va_arg(*list, Evas_Object *);
-   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
-   if (ret) *ret = EINA_FALSE;
Eina_Bool int_ret = EINA_FALSE;
 
eo_do_super(obj, MY_CLASS, elm_obj_widget_sub_object_del(sobj, &int_ret));
-   if (!int_ret) return;
+   if (!int_ret) return EINA_FALSE;
 
_icon_signal_emit(obj);
 
-   if 

Re: [E-devel] ABI/API checking for the EFL

2014-03-20 Thread Stefan Schmidt
Hello.

On Wed, 2014-03-12 at 14:39, Tom Hacohen wrote:
> On 12/03/14 13:54, Tom Hacohen wrote:
> > Hey,
> >
> > So following the previous discussion, I've decided to do it myself. It's
> > quite easy, and will be integrated into Jenkins once the Jenkins admins
> > will have more free time.
> >
> > For the time being, I've generated reports for the efl (will do
> > elemenatry soon) manually. Here are the results:
> > http://www.enlightenment.org/~tasn/eflabi/1.8.0_to_1.9.0/compat_report.html
> > http://www.enlightenment.org/~tasn/eflabi/1.9.0_to_1.10.0/compat_report.html
> >
> >
> > By skimming the results, I found that we broke ABI in 1.9, deleting some
> > ecore_x atoms. This is really bad, but at least those were parts of our
> > api that people don't usually use.
> >
> > The to 1.10 is actually to bdf00c28b74cc163fed5a29561de43be66efed41, i.e
> > current HEAD. We've made a lot of mess there. From what I've seen, we've
> > only broken ABI because of Eo, which is internal ABI anyway, and we knew
> > it was going to happen anyway because of the Eo2 change, so that's
> > mostly fine. Shouldn't affect users too much.
> >
> > --
> > Tom.
> 
> 
> OK, got elm too:
> http://www.enlightenment.org/~tasn/elmabi/1.9.0_to_1.10.0/compat_report.html
> 
> I found and fixed some issues with wrong shipping of headers. I think 
> most of the mess is because we ship the elm_widget internal files. It's 
> time to get rid of those now that we have Eo api which is as 
> experimental. :)

Thanks for taking the initiative here. The reports are useful. So
useful that they already uncovered the two missing illume symbols
which you fixed. Thanks.

As we discussed on IRC we will work together on this a bit later to
get it run in our nightly builds so we have feedback on these things
early on. For 1.10 we might still run it manually once or twice before
the release but afterwards it should really go into our automated
tools suite.

regards
Stefan Schmidt

--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 01/01: list: better structure packing for list smart data.

2014-03-20 Thread Gustavo Sverzut Barbieri
On Thu, Mar 20, 2014 at 10:07 AM, Carsten Haitzler  wrote:
> On Thu, 20 Mar 2014 09:41:57 -0300 Gustavo Sverzut Barbieri
>  said:
>
>> On Thu, Mar 20, 2014 at 1:51 AM, Daniel Juyung Seo 
>> wrote:
>> > seoz pushed a commit to branch master.
>> >
>> > http://git.enlightenment.org/core/elementary.git/commit/?id=7fa935efccaa245226d9c7f57ea35e0b378a1666
>> >
>> > commit 7fa935efccaa245226d9c7f57ea35e0b378a1666
>> > Author: Daniel Juyung Seo 
>> > Date:   Thu Mar 20 13:48:49 2014 +0900
>> >
>> > list: better structure packing for list smart data.
>> > ---
>> >  src/lib/elm_widget_list.h | 3 ++-
>> >  1 file changed, 2 insertions(+), 1 deletion(-)
>> >
>> > diff --git a/src/lib/elm_widget_list.h b/src/lib/elm_widget_list.h
>> > index fcca175..565ccb8 100644
>> > --- a/src/lib/elm_widget_list.h
>> > +++ b/src/lib/elm_widget_list.h
>> > @@ -43,6 +43,8 @@ struct _Elm_List_Smart_Data
>> >Evas_Coord x, y;
>> > } history[ELM_LIST_SWIPE_MOVES];
>> >
>> > +   Elm_Object_Item  *highlighted_item;
>> > +
>> > Eina_Bool focus_on_selection_enabled : 1;
>> > Eina_Bool was_selected : 1;
>> > Eina_Bool fix_pending : 1;
>> > @@ -53,7 +55,6 @@ struct _Elm_List_Smart_Data
>> > Eina_Bool multi : 1;
>> > Eina_Bool swipe : 1;
>> > Eina_Bool delete_me : 1;
>> > -   Elm_Object_Item  *highlighted_item;
>>
>> being picky here, you can't do this because it breaks possible
>> applications that inherit from elm_list widget.
>>
>> of course it is likely there is no such thing out in the world yet and
>> we'll replace that with proper Eo inheritance, but just be aware of
>> the possible problem.
>
> elm widget api is explicitly marked as unstable. lots of comments in
> elm_widget.h and you even have to #define a special define just to get access.

I said I was being picky


-- 
Gustavo Sverzut Barbieri
--
Mobile: +55 (19) 99225-2202
Contact: http://www.gustavobarbieri.com.br/contact

--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 01/01: list: better structure packing for list smart data.

2014-03-20 Thread The Rasterman
On Thu, 20 Mar 2014 09:41:57 -0300 Gustavo Sverzut Barbieri
 said:

> On Thu, Mar 20, 2014 at 1:51 AM, Daniel Juyung Seo 
> wrote:
> > seoz pushed a commit to branch master.
> >
> > http://git.enlightenment.org/core/elementary.git/commit/?id=7fa935efccaa245226d9c7f57ea35e0b378a1666
> >
> > commit 7fa935efccaa245226d9c7f57ea35e0b378a1666
> > Author: Daniel Juyung Seo 
> > Date:   Thu Mar 20 13:48:49 2014 +0900
> >
> > list: better structure packing for list smart data.
> > ---
> >  src/lib/elm_widget_list.h | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/src/lib/elm_widget_list.h b/src/lib/elm_widget_list.h
> > index fcca175..565ccb8 100644
> > --- a/src/lib/elm_widget_list.h
> > +++ b/src/lib/elm_widget_list.h
> > @@ -43,6 +43,8 @@ struct _Elm_List_Smart_Data
> >Evas_Coord x, y;
> > } history[ELM_LIST_SWIPE_MOVES];
> >
> > +   Elm_Object_Item  *highlighted_item;
> > +
> > Eina_Bool focus_on_selection_enabled : 1;
> > Eina_Bool was_selected : 1;
> > Eina_Bool fix_pending : 1;
> > @@ -53,7 +55,6 @@ struct _Elm_List_Smart_Data
> > Eina_Bool multi : 1;
> > Eina_Bool swipe : 1;
> > Eina_Bool delete_me : 1;
> > -   Elm_Object_Item  *highlighted_item;
> 
> being picky here, you can't do this because it breaks possible
> applications that inherit from elm_list widget.
> 
> of course it is likely there is no such thing out in the world yet and
> we'll replace that with proper Eo inheritance, but just be aware of
> the possible problem.

elm widget api is explicitly marked as unstable. lots of comments in
elm_widget.h and you even have to #define a special define just to get access.

-- 
- Codito, ergo sum - "I code, therefore I am" --
The Rasterman (Carsten Haitzler)ras...@rasterman.com


--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 01/01: list: better structure packing for list smart data.

2014-03-20 Thread Daniel Juyung Seo
On Thu, Mar 20, 2014 at 9:41 PM, Gustavo Sverzut Barbieri <
barbi...@gmail.com> wrote:

> On Thu, Mar 20, 2014 at 1:51 AM, Daniel Juyung Seo 
> wrote:
> > seoz pushed a commit to branch master.
> >
> >
> http://git.enlightenment.org/core/elementary.git/commit/?id=7fa935efccaa245226d9c7f57ea35e0b378a1666
> >
> > commit 7fa935efccaa245226d9c7f57ea35e0b378a1666
> > Author: Daniel Juyung Seo 
> > Date:   Thu Mar 20 13:48:49 2014 +0900
> >
> > list: better structure packing for list smart data.
> > ---
> >  src/lib/elm_widget_list.h | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/src/lib/elm_widget_list.h b/src/lib/elm_widget_list.h
> > index fcca175..565ccb8 100644
> > --- a/src/lib/elm_widget_list.h
> > +++ b/src/lib/elm_widget_list.h
> > @@ -43,6 +43,8 @@ struct _Elm_List_Smart_Data
> >Evas_Coord x, y;
> > } history[ELM_LIST_SWIPE_MOVES];
> >
> > +   Elm_Object_Item  *highlighted_item;
> > +
> > Eina_Bool focus_on_selection_enabled : 1;
> > Eina_Bool was_selected : 1;
> > Eina_Bool fix_pending : 1;
> > @@ -53,7 +55,6 @@ struct _Elm_List_Smart_Data
> > Eina_Bool multi : 1;
> > Eina_Bool swipe : 1;
> > Eina_Bool delete_me : 1;
> > -   Elm_Object_Item  *highlighted_item;
>
>
Hi


> being picky here, you can't do this because it breaks possible
> applications that inherit from elm_list widget.
>
> of course it is likely there is no such thing out in the world yet and
> we'll replace that with proper Eo inheritance, but just be aware of
> the possible problem.
>
>
Of course I considered the ABI break. But this is widget's internal data.
As far as I know EFL officially does not allow the customizing
widget(including inherit?) in application.

By the way, is there any application that does inherit elementary widget?

Thanks.

Daniel Juyung Seo (SeoZ)


>
> --
> Gustavo Sverzut Barbieri
> --
> Mobile: +55 (19) 99225-2202
> Contact: http://www.gustavobarbieri.com.br/contact
>
>
> --
> Learn Graph Databases - Download FREE O'Reilly Book
> "Graph Databases" is the definitive new guide to graph databases and their
> applications. Written by three acclaimed leaders in the field,
> this first edition is now available. Download your free book today!
> http://p.sf.net/sfu/13534_NeoTech
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] Upcoming efl and elm 1.9.2

2014-03-20 Thread Stefan Schmidt
Hello.

I plan a new stable update for beginning of next week.

Please bring in all fixes at the weekend so I can cut the tarballs on
Monday and hopefully release after some testing on Tuesday.

regards
Stefan Schmidt

--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 01/01: list: better structure packing for list smart data.

2014-03-20 Thread Gustavo Sverzut Barbieri
On Thu, Mar 20, 2014 at 1:51 AM, Daniel Juyung Seo  wrote:
> seoz pushed a commit to branch master.
>
> http://git.enlightenment.org/core/elementary.git/commit/?id=7fa935efccaa245226d9c7f57ea35e0b378a1666
>
> commit 7fa935efccaa245226d9c7f57ea35e0b378a1666
> Author: Daniel Juyung Seo 
> Date:   Thu Mar 20 13:48:49 2014 +0900
>
> list: better structure packing for list smart data.
> ---
>  src/lib/elm_widget_list.h | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/src/lib/elm_widget_list.h b/src/lib/elm_widget_list.h
> index fcca175..565ccb8 100644
> --- a/src/lib/elm_widget_list.h
> +++ b/src/lib/elm_widget_list.h
> @@ -43,6 +43,8 @@ struct _Elm_List_Smart_Data
>Evas_Coord x, y;
> } history[ELM_LIST_SWIPE_MOVES];
>
> +   Elm_Object_Item  *highlighted_item;
> +
> Eina_Bool focus_on_selection_enabled : 1;
> Eina_Bool was_selected : 1;
> Eina_Bool fix_pending : 1;
> @@ -53,7 +55,6 @@ struct _Elm_List_Smart_Data
> Eina_Bool multi : 1;
> Eina_Bool swipe : 1;
> Eina_Bool delete_me : 1;
> -   Elm_Object_Item  *highlighted_item;

being picky here, you can't do this because it breaks possible
applications that inherit from elm_list widget.

of course it is likely there is no such thing out in the world yet and
we'll replace that with proper Eo inheritance, but just be aware of
the possible problem.


-- 
Gustavo Sverzut Barbieri
--
Mobile: +55 (19) 99225-2202
Contact: http://www.gustavobarbieri.com.br/contact

--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/enlightenment] master 01/01: e: let's just completely blacklist NVidia driver for Wayland.

2014-03-20 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit ffe4bf794e0eb530cc6102cac620134c24ef9059
Author: Cedric BAIL 
Date:   Thu Mar 20 20:46:54 2014 +0900

e: let's just completely blacklist NVidia driver for Wayland.
---
 src/bin/e_comp_wl.c | 23 ++-
 1 file changed, 14 insertions(+), 9 deletions(-)

diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c
index 9df65b9..63344fa 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -225,7 +225,7 @@ static const struct wl_pointer_grab_interface 
_e_drag_grab_interface =
 /* local variables */
 static Ecore_Idler *_module_idler = NULL;
 #ifdef HAVE_WAYLAND_EGL
-static Eina_Bool can_terminate = EINA_TRUE;
+static Eina_Bool black_listed = EINA_FALSE;
 #endif
 
 /* external variables */
@@ -289,17 +289,19 @@ e_comp_wl_init(void)
  * calling eglTerminate. Let's hack around that */
 vendor = 
   (const char *)eglQueryString(_e_wl_comp->egl.display, EGL_VENDOR);
-if (vendor)
+if (!vendor || !strcmp(vendor, "NVIDIA Corporation"))
+  black_listed = EINA_TRUE;
+if (black_listed)
   {
- if (!strcmp(vendor, "NVIDIA Corporation"))
-   can_terminate = EINA_FALSE;
+ ERR("Black listed driver [%s]. Not a supported configuration.", 
vendor);
+ goto err;
   }
 
 /* try to initialize egl */
 if (!eglInitialize(_e_wl_comp->egl.display, &major, &minor))
   {
  ERR("Could not initialize EGL: %m");
- if (can_terminate) eglTerminate(_e_wl_comp->egl.display);
+ eglTerminate(_e_wl_comp->egl.display);
   }
 else
   {
@@ -316,7 +318,7 @@ e_comp_wl_init(void)
&_e_wl_comp->egl.config, 1, &n) || (n == 
0)))
{
   ERR("Could not choose EGL config: %m");
-  if (can_terminate) eglTerminate(_e_wl_comp->egl.display);
+  eglTerminate(_e_wl_comp->egl.display);
}
   }
  }
@@ -381,10 +383,13 @@ err:
  _e_wl_comp->egl.unbind_display(_e_wl_comp->egl.display, 
_e_wl_comp->wl.display);
 
/* terminate the egl display */
-   if ((_e_wl_comp->egl.display) && (can_terminate))
- eglTerminate(_e_wl_comp->egl.display);
+   if (!black_listed)
+ {
+if ((_e_wl_comp->egl.display))
+  eglTerminate(_e_wl_comp->egl.display);
 
-   eglReleaseThread();
+eglReleaseThread();
+ }
 #endif
 
/* if we have a display, destroy it */

-- 




Re: [E-devel] the great commit access purge of march 2014... LOOK FOR YOUR NAME!

2014-03-20 Thread The Rasterman
On Thu, 20 Mar 2014 11:53:59 +0100 (CET) Chidambar Zinnoury
 said:

>  Hey guys!
> 
>  I do have ongoing stuff that will be soon committed: may you remove me from
> the list?
> 
>  Thank you!

ok. off. :)

>  Cheers,
> 
> - Mail original -
> > De: "Carsten Haitzler" 
> > À: "e" 
> > Envoyé: Mercredi 19 Mars 2014 15:09:17
> > Objet: [E-devel] the great commit access purge of march 2014... LOOK
> > FOR YOUR NAME!
> > 
> > this is pretty simple. i made a list of everyone who has not
> > committed to any
> > git repository we have for the past 6 months. slight problem is that
> > people
> > don't keep their email addresses up to date in info.txt vs their git
> > author
> > email, so i've had to manually check almost everyone. (i made a
> > script to help
> > automate this but it was getting stuff wrong)...
> > 
> > SO here is the list. if your user id/login is on it and you think it
> > should be
> > taken off... SAY SO. if you don't say something soon... you'll get
> > moved to our
> > inactive dev pool and commit access will be removed.
> > 
> > so RESPOND ASAP if you want yourself off this list!
> > 
> > acidx
> > andreas
> > aron
> > bdilly
> > ceolin
> > dorileo
> > dresb
> > etrunko
> > fidencio
> > gastal
> > gouache
> > hyoyoung
> > illogict
> > inc
> > jeffdameth
> > jypark
> > kakaroto
> > kiwi
> > mej
> > mello
> > mickeyl
> > mike_m
> > monkeyiq
> > nash
> > onefang
> > pespin
> > playya
> > princeamd
> > rakuco
> > raoul
> > rfonseca
> > rui
> > shorne
> > thanatermesis
> > tiago
> > urandom
> > watchwolf
> > xhell
> > 
> > --
> > - Codito, ergo sum - "I code, therefore I am"
> > --
> > The Rasterman (Carsten Haitzler)ras...@rasterman.com
> > 
> > 
> > --
> > Learn Graph Databases - Download FREE O'Reilly Book
> > "Graph Databases" is the definitive new guide to graph databases and
> > their
> > applications. Written by three acclaimed leaders in the field,
> > this first edition is now available. Download your free book today!
> > http://p.sf.net/sfu/13534_NeoTech
> > ___
> > enlightenment-devel mailing list
> > enlightenment-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > 
> 
> --
> Learn Graph Databases - Download FREE O'Reilly Book
> "Graph Databases" is the definitive new guide to graph databases and their
> applications. Written by three acclaimed leaders in the field,
> this first edition is now available. Download your free book today!
> http://p.sf.net/sfu/13534_NeoTech
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


-- 
- Codito, ergo sum - "I code, therefore I am" --
The Rasterman (Carsten Haitzler)ras...@rasterman.com


--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: clear up the documentation of tooltip

2014-03-20 Thread Bora Hwang
raster pushed a commit to branch master.

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

commit 35277789216c73115f53f26fb611ab903d6c9837
Author: Bora Hwang 
Date:   Thu Mar 20 20:12:02 2014 +0900

clear up the documentation of tooltip

Summary: Since explanations of tooltip's APIs are scattered in header or 
source code, these needs to be cleared up.

Reviewers: seoz, Hermet, woohyun, raster

Reviewed By: raster

Differential Revision: https://phab.enlightenment.org/D644
---
 src/lib/elm_tooltip.h |  65 +--
 src/lib/els_tooltip.c | 103 --
 2 files changed, 62 insertions(+), 106 deletions(-)

diff --git a/src/lib/elm_tooltip.h b/src/lib/elm_tooltip.h
index ea9da6a..7e1edbd 100644
--- a/src/lib/elm_tooltip.h
+++ b/src/lib/elm_tooltip.h
@@ -117,11 +117,33 @@ typedef Evas_Object *(*Elm_Tooltip_Content_Cb)(void 
*data, Evas_Object *obj, Eva
  */
 typedef Evas_Object *(*Elm_Tooltip_Item_Content_Cb)(void *data, Evas_Object 
*obj, Evas_Object *tooltip, void *item);
 
+/**
+ * @brief Force show tooltip of object
+ *
+ * @param obj Target object
+ *
+ * Force show the tooltip and disable hide on mouse_out.
+ * If another content is set as tooltip, the visible tooltip will hididen and
+ * showed again with new content.
+ * This can force show more than one tooltip at a time.
+ *
+ * @ingroup Tooltips
+ */
 EAPI voidelm_object_tooltip_show(Evas_Object *obj);
+
+/**
+ * @brief Force hide tooltip of object
+ *
+ * @param obj Target object
+ *
+ * Force hide the tooltip and (re)enable future mouse interations.
+ *
+ * @ingroup Tooltips
+ */
 EAPI voidelm_object_tooltip_hide(Evas_Object *obj);
 
 /**
- * Set the text to be displayed inside the tooltip.
+ * @brief Set the text to be displayed inside the tooltip.
  *
  * @param obj The tooltip object.
  * @param text The text to be displayed.
@@ -131,11 +153,46 @@ EAPI voidelm_object_tooltip_hide(Evas_Object 
*obj);
 EAPI voidelm_object_tooltip_text_set(Evas_Object *obj, const char 
*text);
 EAPI voidelm_object_tooltip_domain_translatable_text_set(Evas_Object 
*obj, const char *domain, const char *text);
 #define elm_object_tooltip_translatable_text_set(obj, text) 
elm_object_tooltip_domain_translatable_text_set((obj), NULL, (text))
+
+/**
+ * @brief Set the content to be shown in the tooltip object
+ *
+ * @param obj The object being attached a tooltip.
+ * @param func The function used to create the tooltip contents.
+ * @param data What to provide to @a func as callback data/context.
+ * @param del_cb Function called when data is not needed anymore, either when
+ *another callback replaces @p func, the tooltip is unset with
+ *elm_object_tooltip_unset() or the owner object @a obj
+ *dies. This callback receives as the first parameter the
+ *given @a data, and @c event_info is NULL.
+ *
+ * Setup the tooltip to object. The object can have only one tooltip,
+ * so any previous tooltip data is removed. @p func(with @p data) will
+ * be called every time that need show the tooltip and it should
+ * return a valid Evas_Object. This object is then managed fully by
+ * tooltip system and is deleted when the tooltip is gone.
+ *
+ * @ingroup Tooltips
+ */
 EAPI voidelm_object_tooltip_content_cb_set(Evas_Object *obj, 
Elm_Tooltip_Content_Cb func, const void *data, Evas_Smart_Cb del_cb);
+
+/**
+ * @brief Unset tooltip from object
+ *
+ * @param obj Target object
+ *
+ * Remove tooltip from object. The callback provided as del_cb to
+ * elm_object_tooltip_content_cb_set() will be called to notify it is
+ * not used anymore.
+ *
+ * @see elm_object_tooltip_content_cb_set()
+ *
+ * @ingroup Tooltips
+ */
 EAPI voidelm_object_tooltip_unset(Evas_Object *obj);
 
 /**
- * Sets a different style for this object tooltip.
+ * @brief Set a different style for this object tooltip.
  *
  * @note before you set a style you should define a tooltip with
  *   elm_object_tooltip_content_cb_set() or
@@ -149,7 +206,7 @@ EAPI voidelm_object_tooltip_unset(Evas_Object *obj);
 EAPI voidelm_object_tooltip_style_set(Evas_Object *obj, const char 
*style);
 
 /**
- * Get the style for this object tooltip.
+ * @brief Get the style for this object tooltip.
  *
  * @param obj an object with tooltip already set.
  * @return style the theme style in use, defaults to "default". If the
@@ -161,6 +218,7 @@ EAPI const char *elm_object_tooltip_style_get(const 
Evas_Object *obj);
 
 /**
  * @brief Disable size restrictions on an object's tooltip
+ *
  * @param obj The tooltip's anchor object
  * @param disable If EINA_TRUE, size restrictions are disabled
  * @return EINA_FALSE on failure, EINA_TRUE on success
@@ -174,6 +232,7 @@ EAPI Eina_Bool   
elm_object_tooltip_window_mode_set(Evas_Object *obj, Eina_Bool
 
 /**
  * @brief Retrieve size restric

Re: [E-devel] the great commit access purge of march 2014... LOOK FOR YOUR NAME!

2014-03-20 Thread Chidambar Zinnoury
 Hey guys!

 I do have ongoing stuff that will be soon committed: may you remove me from
the list?

 Thank you!

 Cheers,

- Mail original -
> De: "Carsten Haitzler" 
> À: "e" 
> Envoyé: Mercredi 19 Mars 2014 15:09:17
> Objet: [E-devel] the great commit access purge of march 2014... LOOK FOR  
> YOUR NAME!
> 
> this is pretty simple. i made a list of everyone who has not
> committed to any
> git repository we have for the past 6 months. slight problem is that
> people
> don't keep their email addresses up to date in info.txt vs their git
> author
> email, so i've had to manually check almost everyone. (i made a
> script to help
> automate this but it was getting stuff wrong)...
> 
> SO here is the list. if your user id/login is on it and you think it
> should be
> taken off... SAY SO. if you don't say something soon... you'll get
> moved to our
> inactive dev pool and commit access will be removed.
> 
> so RESPOND ASAP if you want yourself off this list!
> 
> acidx
> andreas
> aron
> bdilly
> ceolin
> dorileo
> dresb
> etrunko
> fidencio
> gastal
> gouache
> hyoyoung
> illogict
> inc
> jeffdameth
> jypark
> kakaroto
> kiwi
> mej
> mello
> mickeyl
> mike_m
> monkeyiq
> nash
> onefang
> pespin
> playya
> princeamd
> rakuco
> raoul
> rfonseca
> rui
> shorne
> thanatermesis
> tiago
> urandom
> watchwolf
> xhell
> 
> --
> - Codito, ergo sum - "I code, therefore I am"
> --
> The Rasterman (Carsten Haitzler)ras...@rasterman.com
> 
> 
> --
> Learn Graph Databases - Download FREE O'Reilly Book
> "Graph Databases" is the definitive new guide to graph databases and
> their
> applications. Written by three acclaimed leaders in the field,
> this first edition is now available. Download your free book today!
> http://p.sf.net/sfu/13534_NeoTech
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> 

--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: [Elm_Entry] Update selection handlers position and its visibility when scrolling

2014-03-20 Thread Thiep Ha
raster pushed a commit to branch master.

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

commit 25664da87d6988020e31f01cfb48fd6641d2b01f
Author: Thiep Ha 
Date:   Thu Mar 20 19:33:42 2014 +0900

[Elm_Entry] Update selection handlers position and its visibility when 
scrolling

Summary:
Selection handlers' position are not updated when entry is scrolled.
You can check on elementary_test -> Entry 3 (or Entry 4 which is 
scrollable) -> Select some text -> Scroll entry and see.
This patch is submitted to fix this bug. It update selection handlers' 
position when entry is scrolled and hide them if needed.
@fix

Reviewers: raster

Differential Revision: https://phab.enlightenment.org/D640
---
 src/lib/elm_entry.c | 108 +++-
 1 file changed, 98 insertions(+), 10 deletions(-)

diff --git a/src/lib/elm_entry.c b/src/lib/elm_entry.c
index ef567c9..ac88619 100644
--- a/src/lib/elm_entry.c
+++ b/src/lib/elm_entry.c
@@ -388,6 +388,39 @@ _hide_selection_handler(Evas_Object *obj)
sd->end_handler_shown = EINA_FALSE;
 }
 
+static Eina_Rectangle *
+_viewport_region_get(Evas_Object *obj)
+{
+   ELM_ENTRY_DATA_GET(obj, sd);
+   Eina_Rectangle *rect = eina_rectangle_new(0, 0, 0, 0);
+   Evas_Object *parent;
+
+   if (sd->scroll)
+ evas_object_geometry_get(sd->scr_edje, &rect->x, &rect->y, &rect->w, 
&rect->h);
+   else
+ evas_object_geometry_get(sd->entry_edje, &rect->x, &rect->y, &rect->w, 
&rect->h);
+
+   parent = elm_widget_parent_get(obj);
+   while (parent)
+ {
+if (eo_isa(parent, ELM_INTERFACE_SCROLLABLE_CLASS))
+  {
+ Eina_Rectangle *pr = eina_rectangle_new(0, 0, 0, 0);
+ evas_object_geometry_get(parent, &pr->x, &pr->y, &pr->w, &pr->h);
+ if (!eina_rectangle_intersection(rect, pr))
+   {
+  rect->x = rect->y = rect->w = rect->h = 0;
+  eina_rectangle_free(pr);
+  break;
+   }
+ eina_rectangle_free(pr);
+  }
+parent = elm_widget_parent_get(parent);
+ }
+
+   return rect;
+}
+
 static void
 _update_selection_handler(Evas_Object *obj)
 {
@@ -400,6 +433,11 @@ _update_selection_handler(Evas_Object *obj)
 
if (!sd->sel_handler_disabled)
  {
+Eina_Rectangle *rect;
+Evas_Coord hx, hy;
+Eina_Bool hidden = EINA_FALSE;
+
+rect = _viewport_region_get(obj);
 start_pos = edje_object_part_text_cursor_pos_get
(sd->entry_edje, "elm.text", EDJE_CURSOR_SELECTION_BEGIN);
 end_pos = edje_object_part_text_cursor_pos_get
@@ -407,7 +445,7 @@ _update_selection_handler(Evas_Object *obj)
 
 evas_object_geometry_get(sd->entry_edje, &ent_x, &ent_y, NULL, NULL);
 last_pos = edje_object_part_text_cursor_pos_get(sd->entry_edje, 
"elm.text",
-EDJE_CURSOR_MAIN);
+EDJE_CURSOR_MAIN);
 edje_object_part_text_cursor_pos_set(sd->entry_edje, "elm.text",
  EDJE_CURSOR_MAIN, start_pos);
 edje_object_part_text_cursor_geometry_get(sd->entry_edje, "elm.text",
@@ -418,27 +456,67 @@ _update_selection_handler(Evas_Object *obj)
   &ex, &ey, NULL, &eh);
 edje_object_part_text_cursor_pos_set(sd->entry_edje, "elm.text",
  EDJE_CURSOR_MAIN, last_pos);
-if (!sd->start_handler_shown)
+if (start_pos < end_pos)
+  {
+ hx = ent_x + sx;
+ hy = ent_y + sy + sh;
+ evas_object_move(sd->start_handler, hx, hy);
+  }
+else
+  {
+ hx = ent_x + ex;
+ hy = ent_y + ey + eh;
+ evas_object_move(sd->start_handler, hx, hy);
+  }
+if (!eina_rectangle_xcoord_inside(rect, hx) ||
+!eina_rectangle_ycoord_inside(rect, hy))
+  {
+ hidden = EINA_TRUE;
+  }
+if (!sd->start_handler_shown && !hidden)
   {
  edje_object_signal_emit(sd->start_handler,
  "elm,handler,show", "elm");
  sd->start_handler_shown = EINA_TRUE;
   }
+else if (sd->start_handler_shown && hidden)
+  {
+ edje_object_signal_emit(sd->start_handler,
+ "elm,handler,hide", "elm");
+ sd->start_handler_shown = EINA_FALSE;
+  }
+
+hidden = EINA_FALSE;
 if (start_pos < end_pos)
-  evas_object_move(sd->start_handler, ent_x + sx, ent_y + sy + sh);
+  {
+ hx = ent_x + ex;
+ hy = ent_y + ey + eh;
+ evas_object_move(sd->end_handler, hx, hy);
+  }
 else
-

[EGIT] [core/enlightenment] master 03/03: bugfix: Fix crash on eglTerminate with buggy Nvidia blob driver

2014-03-20 Thread Christopher Michael
devilhorns pushed a commit to branch master.

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

commit db40e4b67eec3182831f51ce1f084656bf662f51
Author: Chris Michael 
Date:   Thu Mar 20 10:17:46 2014 +

bugfix: Fix crash on eglTerminate with buggy Nvidia blob driver

NB: Thanks for the report cedric ;)

Signed-off-by: Chris Michael 
---
 src/bin/e_comp_wl.c | 24 
 1 file changed, 20 insertions(+), 4 deletions(-)

diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c
index aefb315..9df65b9 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -224,6 +224,9 @@ static const struct wl_pointer_grab_interface 
_e_drag_grab_interface =
 
 /* local variables */
 static Ecore_Idler *_module_idler = NULL;
+#ifdef HAVE_WAYLAND_EGL
+static Eina_Bool can_terminate = EINA_TRUE;
+#endif
 
 /* external variables */
 EAPI E_Wayland_Compositor *_e_wl_comp;
@@ -278,12 +281,25 @@ e_comp_wl_init(void)
else
  {
 EGLint major, minor;
+const char *vendor;
+
+/* FIXME: HACK:
+ * 
+ * Frenchie reports major icky crash with Binary Nvidia Driver and 
+ * calling eglTerminate. Let's hack around that */
+vendor = 
+  (const char *)eglQueryString(_e_wl_comp->egl.display, EGL_VENDOR);
+if (vendor)
+  {
+ if (!strcmp(vendor, "NVIDIA Corporation"))
+   can_terminate = EINA_FALSE;
+  }
 
 /* try to initialize egl */
 if (!eglInitialize(_e_wl_comp->egl.display, &major, &minor))
   {
  ERR("Could not initialize EGL: %m");
- eglTerminate(_e_wl_comp->egl.display);
+ if (can_terminate) eglTerminate(_e_wl_comp->egl.display);
   }
 else
   {
@@ -295,13 +311,12 @@ e_comp_wl_init(void)
   EGL_ALPHA_SIZE, 1, EGL_RENDERABLE_TYPE, 
   EGL_OPENGL_ES2_BIT, EGL_NONE
};
- /* const char *exts; */
 
  if ((!eglChooseConfig(_e_wl_comp->egl.display, attribs, 
&_e_wl_comp->egl.config, 1, &n) || (n == 
0)))
{
   ERR("Could not choose EGL config: %m");
-  eglTerminate(_e_wl_comp->egl.display);
+  if (can_terminate) eglTerminate(_e_wl_comp->egl.display);
}
   }
  }
@@ -366,7 +381,8 @@ err:
  _e_wl_comp->egl.unbind_display(_e_wl_comp->egl.display, 
_e_wl_comp->wl.display);
 
/* terminate the egl display */
-   if (_e_wl_comp->egl.display) eglTerminate(_e_wl_comp->egl.display);
+   if ((_e_wl_comp->egl.display) && (can_terminate))
+ eglTerminate(_e_wl_comp->egl.display);
 
eglReleaseThread();
 #endif

-- 




[EGIT] [core/enlightenment] master 02/03: Don't leak the allocated client object if we are returning null from e_client_new

2014-03-20 Thread Christopher Michael
devilhorns pushed a commit to branch master.

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

commit 52532f9a324b34a90869fd541e090a0193019c0c
Author: Chris Michael 
Date:   Wed Mar 19 08:36:34 2014 +

Don't leak the allocated client object if we are returning null from
e_client_new

Signed-off-by: Chris Michael 
---
 src/bin/e_client.c | 8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/bin/e_client.c b/src/bin/e_client.c
index 579a4eb..663aa03 100644
--- a/src/bin/e_client.c
+++ b/src/bin/e_client.c
@@ -2263,7 +2263,13 @@ e_client_new(E_Comp *c, E_Pixmap *cp, int first_map, int 
internal)
ec->new_client = 1;
ec->comp->new_clients++;
 
-   if (!_e_client_hook_call(E_CLIENT_HOOK_NEW_CLIENT, ec)) return NULL;
+   if (!_e_client_hook_call(E_CLIENT_HOOK_NEW_CLIENT, ec)) 
+ {
+/* delete the above allocated object */
+e_object_del(E_OBJECT(ec));
+return NULL;
+ }
+
if (ec->override)
  _e_client_zone_update(ec);
else

-- 




[EGIT] [core/enlightenment] master 01/03: Use ecore_wl functions to return the pointer location if we are running as wayland-only

2014-03-20 Thread Christopher Michael
devilhorns pushed a commit to branch master.

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

commit 5b77c566e614410d9c5e34ebff65a02b4b54
Author: Chris Michael 
Date:   Wed Mar 19 08:16:54 2014 +

Use ecore_wl functions to return the pointer location if we are
running as wayland-only

Signed-off-by: Chris Michael 
---
 src/bin/e_pointer.c | 9 +
 1 file changed, 9 insertions(+)

diff --git a/src/bin/e_pointer.c b/src/bin/e_pointer.c
index fd12f15..829e56d 100644
--- a/src/bin/e_pointer.c
+++ b/src/bin/e_pointer.c
@@ -451,7 +451,10 @@ _e_pointer_cb_idle_timer_pre(void *data)
if (!(p = data)) return ECORE_CALLBACK_RENEW;
 #ifndef HAVE_WAYLAND_ONLY
ecore_x_pointer_xy_get(p->win, &x, &y);
+#else
+   ecore_wl_pointer_xy_get(&x, &y);
 #endif
+
p->x = x;
p->y = y;
if (p->canvas)
@@ -502,7 +505,10 @@ _e_pointer_cb_idle_poller(void *data)
/* check if pointer actually moved since the 1 second post-mouse move idle
 * pre-timer that fetches the position */
ecore_x_pointer_xy_get(p->win, &x, &y);
+#else
+   ecore_wl_pointer_xy_get(&x, &y);
 #endif
+
if ((x != p->x) || (y != p->y))
  {
 /* it moved - so we are not idle yet - record position and wait
@@ -592,6 +598,9 @@ e_pointer_canvas_new(Evas *e, int filled)
evas_object_image_alpha_set(p->pointer_image, 1);
evas_object_show(p->pointer_image);
 
+   /* FIXME: If we are running wayland only, we should have a function call 
+* here to tell evas to place this object a hardware plane */
+
if (filled) e_pointer_type_push(p, p, "default");
if (!p->evas) _e_pointer_canvas_add(p);
_e_pointers = eina_list_append(_e_pointers, p);

-- 




Re: [E-devel] the great commit access purge of march 2014... LOOK FOR YOUR NAME!

2014-03-20 Thread The Rasterman
On Thu, 20 Mar 2014 10:05:17 +1000 David Seikel  said:

> On Wed, 19 Mar 2014 23:09:17 +0900 Carsten Haitzler (The Rasterman)
>  wrote:
> 
> > this is pretty simple. i made a list of everyone who has not
> > committed to any git repository we have for the past 6 months. slight
> > problem is that people don't keep their email addresses up to date in
> > info.txt vs their git author email, so i've had to manually check
> > almost everyone. (i made a script to help automate this but it was
> > getting stuff wrong)...
> > 
> > SO here is the list. if your user id/login is on it and you think it
> > should be taken off... SAY SO. if you don't say something soon...
> > you'll get moved to our inactive dev pool and commit access will be
> > removed.
> > 
> > so RESPOND ASAP if you want yourself off this list!
> > 
> > acidx
> > andreas
> > aron
> > bdilly
> > ceolin
> > dorileo
> > dresb
> > etrunko
> > fidencio
> > gastal
> > gouache
> > hyoyoung
> > illogict
> > inc
> > jeffdameth
> > jypark
> > kakaroto
> > kiwi
> > mej
> > mello
> > mickeyl
> > mike_m
> > monkeyiq
> > nash
> > onefang
> 
> Well, I was gonna contribute some Edje Lua stuff this week, but ...
> 
> Thought I pushed some stuff to my build script in the last six months
> though?
> 
> Take me off this list any way please?

off. :)

-- 
- Codito, ergo sum - "I code, therefore I am" --
The Rasterman (Carsten Haitzler)ras...@rasterman.com


--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: config: add a field in key binding data structure

2014-03-20 Thread Jaeun Choi
raster pushed a commit to branch master.

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

commit 12bc779c4e401792738f6a7cbe48f11fb3f08c39
Author: Jaeun Choi 
Date:   Thu Mar 20 18:42:20 2014 +0900

config: add a field in key binding data structure

Summary:
This patch adds a field "no_string" in key binding data structure.
It is necessary for checking "string" field in evas key down event.

Test Plan: None

Reviewers: Hermet, raster

Reviewed By: raster

Differential Revision: https://phab.enlightenment.org/D641
---
 config/default/base.src  | 3 +++
 config/standard/base.src | 3 +++
 src/lib/elm_config.c | 4 +++-
 src/lib/elm_priv.h   | 1 +
 4 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/config/default/base.src b/config/default/base.src
index 1ec7bfa..cbf5258 100644
--- a/config/default/base.src
+++ b/config/default/base.src
@@ -256,6 +256,7 @@ group "Elm_Config" struct {
   value "action" string: "toggle";
   value "params" string: "";
   value "any_mod" uchar: 1;
+  value "no_string" uchar: 0;
}
group "Elm_Config_Binding_Key" struct {
   value "context" int: 0;
@@ -264,6 +265,7 @@ group "Elm_Config" struct {
   value "action" string: "toggle";
   value "params" string: "";
   value "any_mod" uchar: 1;
+  value "no_string" uchar: 0;
}
group "Elm_Config_Binding_Key" struct {
   value "context" int: 0;
@@ -272,6 +274,7 @@ group "Elm_Config" struct {
   value "action" string: "toggle";
   value "params" string: "";
   value "any_mod" uchar: 1;
+  value "no_string" uchar: 0;
}
 }
  }
diff --git a/config/standard/base.src b/config/standard/base.src
index a636416..13073c6 100644
--- a/config/standard/base.src
+++ b/config/standard/base.src
@@ -257,6 +257,7 @@ group "Elm_Config" struct {
   value "action" string: "toggle";
   value "params" string: "";
   value "any_mod" uchar: 1;
+  value "no_string" uchar: 0;
}
group "Elm_Config_Binding_Key" struct {
   value "context" int: 0;
@@ -265,6 +266,7 @@ group "Elm_Config" struct {
   value "action" string: "toggle";
   value "params" string: "";
   value "any_mod" uchar: 1;
+  value "no_string" uchar: 0;
}
group "Elm_Config_Binding_Key" struct {
   value "context" int: 0;
@@ -273,6 +275,7 @@ group "Elm_Config" struct {
   value "action" string: "toggle";
   value "params" string: "";
   value "any_mod" uchar: 1;
+  value "no_string" uchar: 0;
}
 }
  }
diff --git a/src/lib/elm_config.c b/src/lib/elm_config.c
index 33d21db..dea64ce 100644
--- a/src/lib/elm_config.c
+++ b/src/lib/elm_config.c
@@ -451,6 +451,7 @@ _desc_init(void)
ELM_CONFIG_VAL(D, T, action, EET_T_STRING);
ELM_CONFIG_VAL(D, T, params, EET_T_STRING);
ELM_CONFIG_VAL(D, T, any_mod, EET_T_UCHAR);
+   ELM_CONFIG_VAL(D, T, no_string, EET_T_UCHAR);
 #undef T
 #undef D
 
@@ -2128,7 +2129,8 @@ _elm_config_key_binding_call(Evas_Object *obj,
  if (binding->key && (!strcmp(binding->key, ev->keyname))
  && ((evas_key_modifier_is_set
   (ev->modifiers, binding->modifiers)
-  || (binding->any_mod
+  || (binding->any_mod)))
+ && !(ev->string && binding->no_string))
{
   while (actions[i].name)
 {
diff --git a/src/lib/elm_priv.h b/src/lib/elm_priv.h
index aa1f66a..85e421c 100644
--- a/src/lib/elm_priv.h
+++ b/src/lib/elm_priv.h
@@ -300,6 +300,7 @@ struct _Elm_Config_Binding_Key
const char   *action;
const char   *params;
unsigned char any_mod;
+   unsigned char no_string;
 };
 
 struct _Elm_Module

-- 




Re: [E-devel] [EGIT] [core/elementary] master 01/01: elm_widget: Restore removed codes while eolian work.

2014-03-20 Thread Tom Hacohen
On 20/03/14 09:17, Daniel Zaoui wrote:
> On 03/20/2014 11:01 AM, Tom Hacohen wrote:
>> On 20/03/14 03:55, WooHyun Jung wrote:
>>> woohyun pushed a commit to branch master.
>>>
>>> http://git.enlightenment.org/core/elementary.git/commit/?id=6c05e867896eb998730cb92af94a4d56d4d8fe9c
>>>
>>> commit 6c05e867896eb998730cb92af94a4d56d4d8fe9c
>>> Author: WooHyun Jung 
>>> Date:   Thu Mar 20 12:55:28 2014 +0900
>>>
>>>elm_widget: Restore removed codes while eolian work.
>>> ---
>>> src/lib/elm_widget.c | 8 +++-
>>> 1 file changed, 7 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/src/lib/elm_widget.c b/src/lib/elm_widget.c
>>> index 25f1786..a212099 100644
>>> --- a/src/lib/elm_widget.c
>>> +++ b/src/lib/elm_widget.c
>>> @@ -2841,7 +2841,13 @@ _elm_widget_focus_region_get(Eo *obj, 
>>> Elm_Widget_Smart_Data *_pd EINA_UNUSED, Ev
>>> {
>>>Eina_Bool int_ret = EINA_FALSE;
>>>eo_do((Eo *)obj, elm_obj_widget_on_focus_region(x, y, w, h, 
>>> &int_ret));
>>> -   return int_ret;
>>> +   if (!int_ret)
>>> + {
>>> +evas_object_geometry_get(obj, NULL, NULL, w, h);
>>> +if (x) *x = 0;
>>> +if (y) *y = 0;
>>> + }
>>> +   return EINA_TRUE;
>>> }
>>>
>>> EOLIAN static void
>>>
>> If this behaviour is wanted, why not add it to the actual function
>> implementation?
>
> He added it right, i.e in the function invoked by Eolian.
>
> I will take a look again at my patch in elm_widget.c, to be sure there
> is no missed code part.
>

So all of what this eo function does is call another eo function? That's 
odd.

--
Tom.



--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 01/01: elm_widget: Restore removed codes while eolian work.

2014-03-20 Thread Daniel Zaoui
On 03/20/2014 11:01 AM, Tom Hacohen wrote:
> On 20/03/14 03:55, WooHyun Jung wrote:
>> woohyun pushed a commit to branch master.
>>
>> http://git.enlightenment.org/core/elementary.git/commit/?id=6c05e867896eb998730cb92af94a4d56d4d8fe9c
>>
>> commit 6c05e867896eb998730cb92af94a4d56d4d8fe9c
>> Author: WooHyun Jung 
>> Date:   Thu Mar 20 12:55:28 2014 +0900
>>
>>   elm_widget: Restore removed codes while eolian work.
>> ---
>>src/lib/elm_widget.c | 8 +++-
>>1 file changed, 7 insertions(+), 1 deletion(-)
>>
>> diff --git a/src/lib/elm_widget.c b/src/lib/elm_widget.c
>> index 25f1786..a212099 100644
>> --- a/src/lib/elm_widget.c
>> +++ b/src/lib/elm_widget.c
>> @@ -2841,7 +2841,13 @@ _elm_widget_focus_region_get(Eo *obj, 
>> Elm_Widget_Smart_Data *_pd EINA_UNUSED, Ev
>>{
>>   Eina_Bool int_ret = EINA_FALSE;
>>   eo_do((Eo *)obj, elm_obj_widget_on_focus_region(x, y, w, h, &int_ret));
>> -   return int_ret;
>> +   if (!int_ret)
>> + {
>> +evas_object_geometry_get(obj, NULL, NULL, w, h);
>> +if (x) *x = 0;
>> +if (y) *y = 0;
>> + }
>> +   return EINA_TRUE;
>>}
>>
>>EOLIAN static void
>>
> If this behaviour is wanted, why not add it to the actual function
> implementation?

He added it right, i.e in the function invoked by Eolian.

I will take a look again at my patch in elm_widget.c, to be sure there 
is no missed code part.

>
> --
> Tom.
>
>
> --
> Learn Graph Databases - Download FREE O'Reilly Book
> "Graph Databases" is the definitive new guide to graph databases and their
> applications. Written by three acclaimed leaders in the field,
> this first edition is now available. Download your free book today!
> http://p.sf.net/sfu/13534_NeoTech
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>


--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 01/01: elm_widget: Restore removed codes while eolian work.

2014-03-20 Thread Tom Hacohen
On 20/03/14 03:55, WooHyun Jung wrote:
> woohyun pushed a commit to branch master.
>
> http://git.enlightenment.org/core/elementary.git/commit/?id=6c05e867896eb998730cb92af94a4d56d4d8fe9c
>
> commit 6c05e867896eb998730cb92af94a4d56d4d8fe9c
> Author: WooHyun Jung 
> Date:   Thu Mar 20 12:55:28 2014 +0900
>
>  elm_widget: Restore removed codes while eolian work.
> ---
>   src/lib/elm_widget.c | 8 +++-
>   1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/src/lib/elm_widget.c b/src/lib/elm_widget.c
> index 25f1786..a212099 100644
> --- a/src/lib/elm_widget.c
> +++ b/src/lib/elm_widget.c
> @@ -2841,7 +2841,13 @@ _elm_widget_focus_region_get(Eo *obj, 
> Elm_Widget_Smart_Data *_pd EINA_UNUSED, Ev
>   {
>  Eina_Bool int_ret = EINA_FALSE;
>  eo_do((Eo *)obj, elm_obj_widget_on_focus_region(x, y, w, h, &int_ret));
> -   return int_ret;
> +   if (!int_ret)
> + {
> +evas_object_geometry_get(obj, NULL, NULL, w, h);
> +if (x) *x = 0;
> +if (y) *y = 0;
> + }
> +   return EINA_TRUE;
>   }
>
>   EOLIAN static void
>

If this behaviour is wanted, why not add it to the actual function 
implementation?

--
Tom.


--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/efl] master 01/01: Eolian/Lexer: fix parsing of parameters direction.

2014-03-20 Thread Daniel Zaoui
jackdanielz pushed a commit to branch master.

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

commit bfbcc47d44348d51510bcfa92163f31e375bc61b
Author: Daniel Zaoui 
Date:   Thu Mar 20 10:20:10 2014 +0200

Eolian/Lexer: fix parsing of parameters direction.

strncmp bytes number was not correct. A problem in the generation was
occurring when the parameter is @inout, as it is considered as @in and
the type was "out ...".
---
 src/lib/eolian/eo_lexer.c  | 6 +++---
 src/lib/eolian/eo_lexer.rl | 6 +++---
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/lib/eolian/eo_lexer.c b/src/lib/eolian/eo_lexer.c
index 6c92ea2..aee2ae4 100644
--- a/src/lib/eolian/eo_lexer.c
+++ b/src/lib/eolian/eo_lexer.c
@@ -220,17 +220,17 @@ _eo_tokenizer_param_get(Eo_Tokenizer *toknz, char *p)
s++;
 
param->way = PARAM_IN;
-   if (strncmp(toknz->saved.tok, "@in ", 3) == 0)
+   if (strncmp(toknz->saved.tok, "@in ", 4) == 0)
  {
 toknz->saved.tok += 3;
 param->way = PARAM_IN;
  }
-   else if (strncmp(toknz->saved.tok, "@out ", 4) == 0)
+   else if (strncmp(toknz->saved.tok, "@out ", 5) == 0)
  {
 toknz->saved.tok += 4;
 param->way = PARAM_OUT;
  }
-   else if (strncmp(toknz->saved.tok, "@inout ", 6) == 0)
+   else if (strncmp(toknz->saved.tok, "@inout ", 7) == 0)
  {
 toknz->saved.tok += 6;
 param->way = PARAM_INOUT;
diff --git a/src/lib/eolian/eo_lexer.rl b/src/lib/eolian/eo_lexer.rl
index 86deafa..7720302 100644
--- a/src/lib/eolian/eo_lexer.rl
+++ b/src/lib/eolian/eo_lexer.rl
@@ -218,17 +218,17 @@ _eo_tokenizer_param_get(Eo_Tokenizer *toknz, char *p)
s++;
 
param->way = PARAM_IN;
-   if (strncmp(toknz->saved.tok, "@in ", 3) == 0)
+   if (strncmp(toknz->saved.tok, "@in ", 4) == 0)
  {
 toknz->saved.tok += 3;
 param->way = PARAM_IN;
  }
-   else if (strncmp(toknz->saved.tok, "@out ", 4) == 0)
+   else if (strncmp(toknz->saved.tok, "@out ", 5) == 0)
  {
 toknz->saved.tok += 4;
 param->way = PARAM_OUT;
  }
-   else if (strncmp(toknz->saved.tok, "@inout ", 6) == 0)
+   else if (strncmp(toknz->saved.tok, "@inout ", 7) == 0)
  {
 toknz->saved.tok += 6;
 param->way = PARAM_INOUT;

-- 




[EGIT] [core/efl] master 01/01: fix dbus service file complaint to work again.

2014-03-20 Thread Carsten Haitzler
raster pushed a commit to branch master.

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

commit f48741d93dea2890448daaff733441db78417c96
Author: Carsten Haitzler (Rasterman) 
Date:   Thu Mar 20 17:20:53 2014 +0900

fix dbus service file complaint to work again.
---
 configure.ac | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/configure.ac b/configure.ac
index 3795031..731b7c9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4520,6 +4520,9 @@ if test "x$prefix" != "x/usr"; then
   done
   resolved_dbusservicedir=$path
 
+echo "GGG"
+echo "$resolved_dbusservicedir"
+echo "GGG"
   old=
   path=$USER_SESSION_DIR
   while test "x$old" != "x$path"; do
@@ -4542,7 +4545,7 @@ if test "x$prefix" != "x/usr"; then
 AC_MSG_NOTICE([installing DBus services in user local 
"$resolved_dbusservicedir". Only accessible to user $USER])
   elif echo "$XDG_DATA_DIRS" | grep -e "$resolved_datadir" >/dev/null 
2>/dev/null; then
 AC_MSG_NOTICE([installing DBus services in "$resolved_datadir" set in 
\$XDG_DATA_DIRS. Every user must have \$XDG_DATA_DIRS containing 
"$resolved_datadir".])
-  elif echo "$resolved_dbusservicedir" | grep -e '^/usr' >/dev/null 
2>/dev/null; then
+  elif echo "$resolved_dbusservicedir" | grep -e '^/usr/s' >/dev/null 
2>/dev/null; then
 AC_MSG_NOTICE([installing DBus serivces in $resolved_dbusservicedir])
   else
 needs_alert_dbus=1
@@ -4556,7 +4559,7 @@ if test "x$prefix" != "x/usr"; then
   AC_MSG_NOTICE([installing systemd services in "$base_USER_SESSION_DIR" 
set in \$XDG_DATA_DIRS. Every user must have \$XDG_DATA_DIRS containing 
"$base_USER_SESSION_DIR".])
 elif echo "$XDG_CONFIG_DIRS" | grep -e "$base_USER_SESSION_DIR" >/dev/null 
2>/dev/null; then
   AC_MSG_NOTICE([installing systemd services in "$base_USER_SESSION_DIR" 
set in \$XDG_CONFIG_DIRS. Every user must have \$XDG_CONFIG_DIRS containing 
"$base_USER_SESSION_DIR".])
-elif echo "$resolved_USER_SESSION_DIR" | grep -e '^/usr' >/dev/null 
2>/dev/null; then
+elif echo "$resolved_USER_SESSION_DIR" | grep -e '^/usr/s' >/dev/null 
2>/dev/null; then
   AC_MSG_NOTICE([installing systemd serivces in 
$resolved_USER_SESSION_DIR])
 else
needs_alert_systemd=1

-- 




[EGIT] [core/efl] master 01/06: efl/eina: General cleanup of Eina documentation

2014-03-20 Thread Jeff Grimshaw
cedric pushed a commit to branch master.

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

commit cf5192025f3aa21115580aa6577eb0f12c2f6ec2
Author: Jeff Grimshaw 
Date:   Thu Mar 20 16:35:41 2014 +0900

efl/eina:  General cleanup of Eina documentation

Summary:
I've combed through the Eina source files and made enhancements to the
documentation, including:
- Document the undocumented
- Fixed some errors in Doxygen markup
- Moved some function documentation from implementation (.c or .x) to 
definition
  (.h)
- Edited some of the entries to improve clarity

Test Plan: Reviewers

Reviewers: cedric

Reviewed By: cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D639
---
 src/lib/eina/eina_accessor.h |   1 +
 src/lib/eina/eina_alloca.h   |   4 +
 src/lib/eina/eina_array.h| 128 +-
 src/lib/eina/eina_binbuf.h   |   2 +-
 src/lib/eina/eina_clist.h|   7 +-
 src/lib/eina/eina_convert.h  |   6 +-
 src/lib/eina/eina_cow.h  |   2 +
 src/lib/eina/eina_file.h |  74 ++-
 src/lib/eina/eina_file_common.h  | 272 +--
 src/lib/eina/eina_hash.h |  86 -
 src/lib/eina/eina_inarray.h  |   1 +
 src/lib/eina/eina_inline_array.x |  61 +
 src/lib/eina/eina_inlist.h   |   6 +-
 src/lib/eina/eina_lalloc.h   |  53 
 src/lib/eina/eina_list.h |  14 +-
 src/lib/eina/eina_log.h  |  58 ++---
 src/lib/eina/eina_types.h|   5 +
 17 files changed, 581 insertions(+), 199 deletions(-)

diff --git a/src/lib/eina/eina_accessor.h b/src/lib/eina/eina_accessor.h
index 3de6e42..7e24779 100644
--- a/src/lib/eina/eina_accessor.h
+++ b/src/lib/eina/eina_accessor.h
@@ -157,6 +157,7 @@ typedef Eina_Accessor* 
(*Eina_Accessor_Clone_Callback)(Eina_Accessor *it);
  * Type to provide random access to data structures.
  *
  * If creating an accessor remember to set the type using @ref EINA_MAGIC_SET.
+ * 
  */
 struct _Eina_Accessor
 {
diff --git a/src/lib/eina/eina_alloca.h b/src/lib/eina/eina_alloca.h
index bb52955..53e706f 100644
--- a/src/lib/eina/eina_alloca.h
+++ b/src/lib/eina/eina_alloca.h
@@ -39,6 +39,10 @@
 #  ifdef  __cplusplus
 extern "C"
 #  endif
+/**
+ * Allocates memory in the stack frame of the caller, so it's automatically 
+ * freed when the caller returns.  See alloca(3) for detials.
+ */
 void *alloca (long);
 # endif
 #endif
diff --git a/src/lib/eina/eina_array.h b/src/lib/eina/eina_array.h
index 5a5199e..07234cd 100644
--- a/src/lib/eina/eina_array.h
+++ b/src/lib/eina/eina_array.h
@@ -49,13 +49,13 @@
  * Before we can start using any array function we need to initialize eina:
  * @until eina_init
  *
- * So now to actually creating our array. The only interesting thing here is 
the
- * argument given to the eina_array_new() function, this argument sets how fast
+ * So now to actually create our array. The only interesting thing here is the
+ * argument given to the eina_array_new() function. This argument sets how fast
  * the array grows.
  * @until array_new
  *
  * If you know before hand how big the array will need to be you should set the
- * step to that. In our case we can set it to the number of string we have and
+ * step to that. In our case we can set it to the number of strings we have and
  * since we didn't do that in the eina_array_new() we can do it now:
  * @until array_step_set
  *
@@ -82,8 +82,8 @@
  * And finally shutdown eina and exit:
  * @until }
  *
- * The full source code can be found on the examples folder
- * on the @ref eina_array_01_c "eina_array_01.c" file.
+ * The full source code can be found in the examples folder
+ * in the @ref eina_array_01_c "eina_array_01.c" file.
  */
 
 /**
@@ -102,7 +102,7 @@
  * @until Eina.h
  *
  * This the callback we are going to use to decide which strings stay on the
- * array and which will be removed, we use something simple, but this can be as
+ * array and which will be removed. We use something simple, but this can be as
  * complex as you like:
  * @until }
  *
@@ -127,8 +127,8 @@
  * Since this time we didn't use strdup we don't need to free each string:
  * @until }
  *
- * The full source code can be found on the examples folder
- * on the @ref eina_array_02_c "eina_array_02.c" file.
+ * The full source code can be found in the examples folder
+ * in the @ref eina_array_02_c "eina_array_02.c" file.
  */
 
 /**
@@ -146,7 +146,7 @@
  * The Array data type in Eina is designed to have very fast access to
  * its data (compared to the Eina @ref Eina_List_Group). On the other hand,
  * data can be added or removed only at the end of the array. To insert
- * data at any place, the Eina @ref Eina_List_Group is the correct container
+ * data at any position, the Eina @ref Eina_List_Group is the correct container
  * to use.
  *
  * To use the array

[EGIT] [core/efl] master 06/06: evas: let's be more resistant even with things that should never happen.

2014-03-20 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit 837391c5da5a8eb5050bdf4001b79c0ead61de12
Author: Cedric BAIL 
Date:   Thu Mar 20 16:53:13 2014 +0900

evas: let's be more resistant even with things that should never happen.

Fix CID 1193212.
---
 src/modules/evas/engines/gl_common/evas_gl_context.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/modules/evas/engines/gl_common/evas_gl_context.c 
b/src/modules/evas/engines/gl_common/evas_gl_context.c
index f044a2f..79e33fe 100644
--- a/src/modules/evas/engines/gl_common/evas_gl_context.c
+++ b/src/modules/evas/engines/gl_common/evas_gl_context.c
@@ -372,6 +372,7 @@ _evas_gl_common_version_check()
  return 0;
 
tmp = strchr(version, '.');
+   if (!tmp) return 0;
/* the first '.' always exists */
*tmp = '\0';
major = atoi(version);

-- 




[EGIT] [core/efl] master 02/06: eio: let's not divide by 0.

2014-03-20 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit 41a9e2149e7b118e73578afa7f499021f7bfb06a
Author: Cedric BAIL 
Date:   Thu Mar 20 16:47:25 2014 +0900

eio: let's not divide by 0.

fix CID 1193208.
---
 src/lib/eio/eio_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/eio/eio_main.c b/src/lib/eio/eio_main.c
index 632d022..812437d 100644
--- a/src/lib/eio/eio_main.c
+++ b/src/lib/eio/eio_main.c
@@ -149,7 +149,7 @@ eio_progress_send(Ecore_Thread *thread, Eio_File_Progress 
*op, long long current
progress->op = op->op;
progress->current = current;
progress->max = max;
-   progress->percent = (float) current * 100.0 / (float) max;
+   progress->percent = max ? (float) current * 100.0 / (float) max : 100;
progress->source = eina_stringshare_ref(op->source);
progress->dest = eina_stringshare_ref(op->dest);
 

-- 




[EGIT] [core/efl] master 04/06: evas: let's be to safe than sorry.

2014-03-20 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit fe2948be084075b529cc009a0b41850807f50fd0
Author: Cedric BAIL 
Date:   Thu Mar 20 16:50:48 2014 +0900

evas: let's be to safe than sorry.

Fix CID 1193214.
---
 src/lib/evas/canvas/evas_object_textblock.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/lib/evas/canvas/evas_object_textblock.c 
b/src/lib/evas/canvas/evas_object_textblock.c
index 16367df..3b22bf0 100644
--- a/src/lib/evas/canvas/evas_object_textblock.c
+++ b/src/lib/evas/canvas/evas_object_textblock.c
@@ -2262,6 +2262,7 @@ _format_param_parse(const char *item, const char **key, 
Eina_Tmpstr **val)
size_t len;
 
start = strchr(item, '=');
+   if (!start) return ;
*key = eina_stringshare_add_length(item, start - item);
start++; /* Advance after the '=' */
/* If we can find a quote as the first non-space char,

-- 




[EGIT] [core/efl] master 03/06: edje: let's be careful on the string content.

2014-03-20 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit 15654012a69db7380c050d3cbf65b79ddb8fb92f
Author: Cedric BAIL 
Date:   Thu Mar 20 16:48:38 2014 +0900

edje: let's be careful on the string content.

Fix CID 1193215.
---
 src/bin/edje/edje_inspector.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/edje/edje_inspector.c b/src/bin/edje/edje_inspector.c
index 8dc8525..d0d5360 100644
--- a/src/bin/edje/edje_inspector.c
+++ b/src/bin/edje/edje_inspector.c
@@ -873,6 +873,7 @@ part_details(Evas_Object *ed, const char *ppart)
 double value;
 eina_strlcpy(state, str, sizeof(state)); /* bad states_list! :-( */
 delim = strchr(state, ' ');
+if (!delim) continue ;
 *delim = '\0';
 delim++;
 value = strtod(delim, NULL);

-- 




[EGIT] [core/efl] master 05/06: edje: let's be more careful with string.

2014-03-20 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit f26b370584c6c080e3418ce5c8f5a74bb8b7d384
Author: Cedric BAIL 
Date:   Thu Mar 20 16:51:48 2014 +0900

edje: let's be more careful with string.

Fix CID 1193213.
---
 src/lib/edje/edje_edit.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/lib/edje/edje_edit.c b/src/lib/edje/edje_edit.c
index ef7ade0..7f3d9da 100644
--- a/src/lib/edje/edje_edit.c
+++ b/src/lib/edje/edje_edit.c
@@ -7654,7 +7654,8 @@ _edje_generate_source_of_part(Evas_Object *obj, Edje_Part 
*ep, Eina_Strbuf *buf)
char state[512], *delim;
double value;
strncpy(state, data, sizeof(state) - 1); /* if we go over it, too bad.. 
the list of states may need to change to provide name and value separated */
-   delim = strchr(state, ' ');
+delim = strchr(state, ' ');
+if (!delim) continue;
*delim = '\0';
delim++;
value = strtod(delim, NULL);

-- 




Re: [E-devel] [EGIT] [core/efl] master 01/01: Add new PLUGIN_RUN action type and new plugins.plugin handlers 1. If external library is commerical source and not opensource, we cannot include/build the

2014-03-20 Thread Daniel Juyung Seo
Thanks for the update.

Daniel Juyung Seo (SeoZ)


On Thu, Mar 20, 2014 at 3:12 PM, Bluezery  wrote:

> I should use "arc diff --edit --update D588" to update git commit message
> instead of "git commit --amend && arc diff --update D643" :-(
> I updated documentation:
> https://phab.enlightenment.org/w/arcanist/
> 2014-03-20 13:42 GMT+09:00 Daniel Juyung Seo :
>
> > Wow this is the longest commit summary line among all the commits I have
> > seen these days.
> >
> > Daniel Juyung Seo (SeoZ)
> >
> >
> > On Thu, Mar 20, 2014 at 1:01 PM, Tae-Hwan Kim 
> > wrote:
> >
> > > raster pushed a commit to branch master.
> > >
> > >
> > >
> >
> http://git.enlightenment.org/core/efl.git/commit/?id=3061a706c4ca02eb876799da07dae72c24cf4507
> > >
> > > commit 3061a706c4ca02eb876799da07dae72c24cf4507
> > > Author: Tae-Hwan Kim 
> > > Date:   Thu Mar 20 13:00:20 2014 +0900
> > >
> > > Add new PLUGIN_RUN action type and new plugins.plugin handlers 1.
> If
> > > external library is commerical source and not opensource, we cannot
> > > include/build the library within edje. 2. If external library does not
> > use
> > > general encodable sources, we...
> > >
> > > Summary:
> > > ...cannot encode those things into edje.
> > >
> > > In our case, we need vibration when longpressed. But those files
> are
> > > not
> > > audio or image and cannot be encoded into edje. Also, this library
> is
> > > not
> > > opensource so should not be linked directly with edje.
> > > So we should call vibration API by using this plug-in.
> > >
> > > Reviewers: raster, cedric, seoz, Hermet
> > >
> > > CC: cedric
> > >
> > > Differential Revision: https://phab.enlightenment.org/D588
> > > ---
>
--
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/efl] master 01/01: ecore-drm: Fix absolute motion coordinate calculation

2014-03-20 Thread Christopher Michael
devilhorns pushed a commit to branch master.

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

commit b87cbf8fe42865a5b9d0b62efd3517ef599fb526
Author: Chris Michael 
Date:   Thu Mar 20 07:13:52 2014 +

ecore-drm: Fix absolute motion coordinate calculation

@bugfix: When calculating center point for absolute motion, use the
proper min_y value for calculating Y axis

Signed-off-by: Chris Michael 
---
 src/lib/ecore_drm/ecore_drm_evdev.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/ecore_drm/ecore_drm_evdev.c 
b/src/lib/ecore_drm/ecore_drm_evdev.c
index bf54c37..ed18d2c 100644
--- a/src/lib/ecore_drm/ecore_drm_evdev.c
+++ b/src/lib/ecore_drm/ecore_drm_evdev.c
@@ -525,7 +525,7 @@ _device_process_flush(Ecore_Drm_Evdev *dev, unsigned int 
timestamp)
   {
  /* start first motion as centered I guess? */
  dev->mouse.x = (dev->abs.min_x + dev->abs.max_x) / 2;
- dev->mouse.y = (dev->abs.max_x + dev->abs.max_y) / 2;
+ dev->mouse.y = (dev->abs.min_y + dev->abs.max_y) / 2;
   }
 
 dev->mouse.x += (dev->abs.x[0] - dev->abs.x[1]);

--