[EGIT] [core/efl] master 01/01: evas generic loaders fix timeout on windows where no alarm exists

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

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

commit e8c396a6e2aae0f9da189930d0c55cd3d2500d58
Author: Carsten Haitzler (Rasterman) 
Date:   Thu Jul 14 14:23:49 2016 +0900

evas generic loaders fix timeout on windows where no alarm exists

this uses a thread - to do the same. based on code vtorri put in T3790

this should fix T3790
---
 src/generic/evas/common/timeout.c | 27 +--
 1 file changed, 25 insertions(+), 2 deletions(-)

diff --git a/src/generic/evas/common/timeout.c 
b/src/generic/evas/common/timeout.c
index 6d52aa9..7737bad 100644
--- a/src/generic/evas/common/timeout.c
+++ b/src/generic/evas/common/timeout.c
@@ -1,5 +1,27 @@
-#include 
-#include 
+#ifdef _WIN32
+# include 
+# include 
+# include 
+
+unsigned int
+_timeout(void *arg)
+{
+   int s (int)arg;
+   Sleep(s * 1000);
+   _Exit(-1);
+   _endthreadex(0);
+   return 0;
+}
+
+void
+timeout_init(int seconds)
+{
+   unsigned int id;
+   _beginthreadex( NULL, 0, _timeout, (void *)seconds, 0, );
+}
+#else
+# include 
+# include 
 
 static void
 _timeout(int val)
@@ -14,3 +36,4 @@ timeout_init(int seconds)
signal(SIGALRM, _timeout);
alarm(seconds);
 }
+#endif

-- 




[EGIT] [tools/enventor] master 01/01: updated authors.

2016-07-13 Thread Hermet Park
hermet pushed a commit to branch master.

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

commit 29c89341fa72b0d008f5f158bfe52032914ab38c
Author: Hermet Park 
Date:   Thu Jul 14 14:01:50 2016 +0900

updated authors.
---
 AUTHORS | 1 +
 1 file changed, 1 insertion(+)

diff --git a/AUTHORS b/AUTHORS
index 881d916..eb4fcee 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -27,3 +27,4 @@ Yurii Tsivun 
 Yongheon Shin 
 Vyacheslav Reutskiy 
 Bowon Ryu 
+Jean Guyomarc'h 

-- 




[EGIT] [tools/enventor] master 01/01: template: don't localize floats in the edje editor

2016-07-13 Thread Jean Guyomarc'h
hermet pushed a commit to branch master.

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

commit e910826ade524e413106772b2e3df410045c8cda
Author: Jean Guyomarc'h 
Date:   Thu Jul 14 13:58:06 2016 +0900

template: don't localize floats in the edje editor

Summary:
Enventor live edit would generate invalid code with
the french locale.
Indeed, french uses a comma (",") as the decimal point,
instead of the dot. With localization enabled, printf()
would automatically localized the floating point,
introducing a comma in the edje code where a dot is
expected...

To avoid this, we now enclose the floats we don't want
to be localized (use the implicit POSIX local: with a dot)
in a function that looks the current locale and replace
the decimal point with a dot.

Test Plan:
(1) Without the patch, call LC_ALL=C enventor and see live
edit if correct.
(2) Without the patch, call LC_ALL=fr_FR.UTF-8 envetor and
see live edit generate invalid edje code.
(3) Apply the patch, and repeat steps (1) and (2) and observe
that both cases now success.

Reviewers: Hermet

Differential Revision: https://phab.enlightenment.org/D4146
---
 src/lib/template.c | 45 -
 1 file changed, 36 insertions(+), 9 deletions(-)

diff --git a/src/lib/template.c b/src/lib/template.c
index 93018e2..dcc28e8 100644
--- a/src/lib/template.c
+++ b/src/lib/template.c
@@ -178,6 +178,32 @@ select_random_name(Evas_Object *entry, const char* 
first_line,
  }
 }
 
+static const char *
+_posix_fp(double fp, const char *fmt)
+{
+   static Eina_Strbuf *strbuf = NULL;
+   static char storage[16];
+   struct lconv *lconv;
+
+   if (EINA_UNLIKELY(strbuf == NULL))
+ {
+strbuf = eina_strbuf_manage_new_length(storage, sizeof(storage));
+if (EINA_UNLIKELY(!strbuf))
+  {
+ storage[0] = '\0';
+ return storage;
+  }
+ }
+
+   lconv = localeconv();
+
+   eina_strbuf_reset(strbuf);
+   eina_strbuf_append_printf(strbuf, fmt, fp);
+   eina_strbuf_replace_first(strbuf, lconv->decimal_point, ".");
+
+   return eina_strbuf_string_get(strbuf);
+}
+
 /*/
 /* Externally accessible calls   */
 /*/
@@ -289,7 +315,8 @@ template_part_insert(edit_data *ed, Edje_Part_Type 
part_type,
 
//Apply align values
elm_entry_entry_insert(edit_entry, p);
-   snprintf(buf, sizeof(buf), "  align: %.1f %.1f;", align_x, 
align_y);
+   snprintf(buf, sizeof(buf), "  align: %s %s;",
+_posix_fp(align_x, "%.1f"), _posix_fp(align_y, "%1.f"));
elm_entry_entry_insert(edit_entry, buf);
line_cnt++;
 
@@ -346,22 +373,22 @@ template_part_insert(edit_data *ed, Edje_Part_Type 
part_type,
(int)(rel2_y * 1 + 0.5) % 100)
  {
 
-snprintf(buf, sizeof(buf), "  rel1.relative: %.4f %.4f;",
- rel1_x, rel1_y);
+snprintf(buf, sizeof(buf), "  rel1.relative: %s %s;",
+ _posix_fp(rel1_x, "%.4f"), _posix_fp(rel1_y, "%.4f"));
 elm_entry_entry_insert(edit_entry, buf);
 elm_entry_entry_insert(edit_entry, p);
-snprintf(buf, sizeof(buf), "  rel2.relative: %.4f %.4f;",
- rel2_x, rel2_y);
+snprintf(buf, sizeof(buf), "  rel2.relative: %s %s;",
+ _posix_fp(rel2_x, "%.4f"), _posix_fp(rel2_y, "%.4f"));
  }
//Condition 2: relative values are 2 places of decimals
else
  {
-snprintf(buf, sizeof(buf), "  rel1.relative: %.2f %.2f;",
- rel1_x, rel1_y);
+snprintf(buf, sizeof(buf), "  rel1.relative: %s %s;",
+ _posix_fp(rel1_x, "%.2f"), _posix_fp(rel1_y, "%.2f"));
 elm_entry_entry_insert(edit_entry, buf);
 elm_entry_entry_insert(edit_entry, p);
-snprintf(buf, sizeof(buf), "  rel2.relative: %.2f %.2f;",
- rel2_x, rel2_y);
+snprintf(buf, sizeof(buf), "  rel2.relative: %s %s;",
+ _posix_fp(rel2_x, "%.2f"), _posix_fp(rel2_y, "%.2f"));
  }
 
elm_entry_entry_insert(edit_entry, buf);

-- 




[EGIT] [core/efl] master 01/01: evas headers - remove duplicate declarations of the same function

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

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

commit b1f2c335e65ef1e711879412ea0f7fbca93b7a15
Author: Carsten Haitzler (Rasterman) 
Date:   Thu Jul 14 13:28:10 2016 +0900

evas headers - remove duplicate declarations of the same function

this should fix T3027
---
 src/lib/evas/Evas_Legacy.h | 49 --
 1 file changed, 49 deletions(-)

diff --git a/src/lib/evas/Evas_Legacy.h b/src/lib/evas/Evas_Legacy.h
index 052406e..fca9038 100644
--- a/src/lib/evas/Evas_Legacy.h
+++ b/src/lib/evas/Evas_Legacy.h
@@ -5222,16 +5222,6 @@ EAPI void evas_object_smart_data_set(Evas_Object *obj, 
void *data);
 EAPI void *evas_object_smart_data_get(const Evas_Object *obj);
 
 /**
- * @brief Get the clipper object for the given clipped smart object.
- *
- * Use this function if you want to change any of this clipper's properties,
- * like colors.
- *
- * @ingroup Evas_Object
- */
-EAPI Evas_Object *evas_object_smart_clipped_clipper_get(const Evas_Object 
*obj) EINA_WARN_UNUSED_RESULT;
-
-/**
  * @brief Retrieves the list of the member objects of a given Evas smart
  * object.
  *
@@ -5355,24 +5345,6 @@ EAPI void evas_object_smart_changed(Evas_Object *obj);
  */
 EAPI void evas_object_smart_move_children_relative(Evas_Object *obj, 
Evas_Coord dx, Evas_Coord dy);
 
-/**
- * This gets the internal counter that counts the number of smart calculations
- *
- * @param e The canvas to get the calculate counter from
- *
- * Whenever evas performs smart object calculations on the whole canvas
- * it increments a counter by 1. This is the smart object calculate counter
- * that this function returns the value of. It starts at the value of 0 and
- * will increase (and eventually wrap around to negative values and so on) by
- * 1 every time objects are calculated. You can use this counter to ensure
- * you don't re-do calculations withint the same calculation generation/run
- * if the calculations maybe cause self-feeding effects.
- *
- * @ingroup Evas_Smart_Object_Group
- * @since 1.1
- */
-EAPI int  evas_smart_objects_calculate_count_get(const Evas *e);
-
 #include "canvas/efl_canvas_group.eo.legacy.h"
 
 /**
@@ -5384,20 +5356,6 @@ EAPI int  
evas_smart_objects_calculate_count_get(const Evas *e);
  *
  * @{
  */
-/**
- * Get the clipper object for the given clipped smart object.
- *
- * @param obj the clipped smart object to retrieve associated clipper
- * from.
- * @return the clipper object.
- *
- * Use this function if you want to change any of this clipper's
- * properties, like colors.
- *
- * @see evas_object_smart_clipped_smart_add()
- */
-EAPI Evas_Object*evas_object_smart_clipped_clipper_get(const 
Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1);
-
 #include "canvas/efl_canvas_group_clipped.eo.legacy.h"
 
 /**
@@ -5552,13 +5510,6 @@ EAPI Eina_List 
*evas_object_box_children_get(const Evas_Object *
  */
 EAPI Evas_Object   *evas_object_table_add(Evas *evas) 
EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_MALLOC;
 
-/**
- * Get the child of the table at the given coordinates
- *
- * @note This does not take into account col/row spanning
- */
-EAPI Evas_Object   *evas_object_table_child_get(const 
Evas_Object *o, unsigned short col, unsigned short row) EINA_ARG_NONNULL(1);
-
 #include "canvas/evas_table.eo.legacy.h"
 
 /**

-- 




[EGIT] [core/efl] master 01/01: elementary tooltip: --printf

2016-07-13 Thread Hermet Park
hermet pushed a commit to branch master.

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

commit c54cd413165724f3869aba475a11ba9f0ac0fb67
Author: Hermet Park 
Date:   Thu Jul 14 12:10:09 2016 +0900

elementary tooltip: --printf
---
 src/lib/elementary/els_tooltip.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/src/lib/elementary/els_tooltip.c b/src/lib/elementary/els_tooltip.c
index 4ca0450..82a90b5 100644
--- a/src/lib/elementary/els_tooltip.c
+++ b/src/lib/elementary/els_tooltip.c
@@ -769,8 +769,6 @@ elm_object_tooltip_orient_set(Evas_Object *obj, 
Elm_Tooltip_Orient orient)
 {
ELM_TOOLTIP_GET_OR_RETURN(tt, obj);
 
-   printf("- SET O %i\n", orient);
-
if ((orient > ELM_TOOLTIP_ORIENT_NONE) && (orient < 
ELM_TOOLTIP_ORIENT_LAST))
  tt->orient = orient;
else

-- 




Re: [E-devel] [EGIT] [tools/eflete] master 02/02: project_manager: temporary fix thread blocking when imported edc contain scripts

2016-07-13 Thread The Rasterman
On Wed, 13 Jul 2016 11:02:58 -0700 Cedric BAIL  said:

> On Wed, Jul 13, 2016 at 3:00 AM, Vitalii Vorobiov
>  wrote:
> > rimmed pushed a commit to branch master.
> >
> > http://git.enlightenment.org/tools/eflete.git/commit/?id=e6f5055353da08540421c2a53b49ccfb0131e348
> >
> > commit e6f5055353da08540421c2a53b49ccfb0131e348
> > Author: Vitalii Vorobiov 
> > Date:   Wed Jul 13 12:33:49 2016 +0300
> >
> > project_manager: temporary fix thread blocking when imported edc
> > contain scripts
> 
> Now, I do understand your problem. This code is just lucky it ever
> worked ! ecore_exe is already asynchronous and no ecore API, except
> some of the thread related one, should ever be called from a thread !
> Remove all use of Eina_Thread to run Ecore_Exe and you will be fine.

ok - reading that pathc - you should likely revert it to eflete. i think the
issue was creating a thread FROM a thread. and i've fixed that. this actually
should work, but that patch tells me your threads are doing ecore_exe's and
THAT is bad for sure. don't do that. :)

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


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


[EGIT] [core/efl] master 01/01: ecore - add more ecore main loop checks that were missing in some places

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

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

commit 04c63131147e7ea834a848922637451a1e004fb8
Author: Carsten Haitzler (Rasterman) 
Date:   Thu Jul 14 08:55:03 2016 +0900

ecore - add more ecore main loop checks that were missing in some places

so 1 ecore_exe func was missing a main loop check... just to be sure.
---
 src/lib/ecore/ecore_exe.c   | 1 +
 src/lib/ecore/ecore_timer.c | 5 +
 2 files changed, 6 insertions(+)

diff --git a/src/lib/ecore/ecore_exe.c b/src/lib/ecore/ecore_exe.c
index 3063b79..28ffa9f 100644
--- a/src/lib/ecore/ecore_exe.c
+++ b/src/lib/ecore/ecore_exe.c
@@ -67,6 +67,7 @@ ecore_exe_pipe_run(const char *exe_cmd,
Ecore_Exe_Flags flags,
const void *data)
 {
+   EINA_MAIN_LOOP_CHECK_RETURN_VAL(NULL);
Ecore_Exe *ret = eo_add(MY_CLASS, NULL, ecore_obj_exe_command_set(eo_self, 
exe_cmd, flags));
if (ret)
  {
diff --git a/src/lib/ecore/ecore_timer.c b/src/lib/ecore/ecore_timer.c
index 2d9e1bc..20f94f8 100644
--- a/src/lib/ecore/ecore_timer.c
+++ b/src/lib/ecore/ecore_timer.c
@@ -184,6 +184,7 @@ ecore_timer_add(doublein,
Ecore_Timer_Legacy *legacy;
Eo *timer;
 
+   EINA_MAIN_LOOP_CHECK_RETURN_VAL(NULL);
legacy = calloc(1, sizeof (Ecore_Timer_Legacy));
if (!legacy) return NULL;
 
@@ -205,6 +206,7 @@ ecore_timer_loop_add(doublein,
Ecore_Timer_Legacy *legacy;
Eo *timer;
 
+   EINA_MAIN_LOOP_CHECK_RETURN_VAL(NULL);
legacy = calloc(1, sizeof (Ecore_Timer_Legacy));
if (!legacy) return NULL;
 
@@ -342,6 +344,7 @@ _efl_loop_timer_pending_get(Eo *obj EINA_UNUSED, 
Efl_Loop_Timer_Data *timer)
 EAPI void
 ecore_timer_freeze(Ecore_Timer *timer)
 {
+   EINA_MAIN_LOOP_CHECK_RETURN;
ECORE_TIMER_CHECK(timer);
eo_event_freeze(timer);
 }
@@ -373,6 +376,7 @@ ecore_timer_freeze_get(Ecore_Timer *timer)
 {
int r = 0;
 
+   EINA_MAIN_LOOP_CHECK_RETURN_VAL(EINA_FALSE);
r = eo_event_freeze_count_get(timer);
return !!r;
 }
@@ -388,6 +392,7 @@ _efl_loop_timer_eo_base_event_freeze_count_get(Eo *obj 
EINA_UNUSED, Efl_Loop_Tim
 EAPI void
 ecore_timer_thaw(Ecore_Timer *timer)
 {
+   EINA_MAIN_LOOP_CHECK_RETURN;
ECORE_TIMER_CHECK(timer);
eo_event_thaw(timer);
 }

-- 




[EGIT] [core/efl] efl-1.17 02/02: eina thread create - use pthread_sigmask as this can be called from thread

2016-07-13 Thread Carsten Haitzler
raster pushed a commit to branch efl-1.17.

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

commit 12c061e336d96b1bb03a54abc4e6d2f3e17034bf
Author: Carsten Haitzler (Rasterman) 
Date:   Thu Jul 14 08:32:16 2016 +0900

eina thread create - use pthread_sigmask as this can be called from thread

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

diff --git a/src/lib/eina/eina_thread.c b/src/lib/eina/eina_thread.c
index eb1a13f..deabf01 100644
--- a/src/lib/eina/eina_thread.c
+++ b/src/lib/eina/eina_thread.c
@@ -94,11 +94,11 @@ _eina_thread_create(Eina_Thread *t, int affinity, void 
*(*func)(void *data), voi
 # ifdef SIGPWR
sigaddset(, SIGPWR);
 # endif
-   sigprocmask(SIG_BLOCK, , );
+   pthread_sigmask(SIG_BLOCK, , );
 #endif
err = pthread_create((pthread_t *)t, , func, data);
 #ifndef _WIN32
-   sigprocmask(SIG_SETMASK, , NULL);
+   pthread_sigmask(SIG_SETMASK, , NULL);
 #endif
pthread_attr_destroy();
 

-- 




[EGIT] [core/efl] efl-1.17 01/02: eina thread - fix window build with sigprocmask

2016-07-13 Thread Carsten Haitzler
raster pushed a commit to branch efl-1.17.

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

commit 940f61536cd5990fd34e6b39e8b10fb55586a151
Author: Carsten Haitzler (Rasterman) 
Date:   Fri Jul 8 21:09:17 2016 +0900

eina thread - fix window build with sigprocmask

fixes T4048
---
 src/lib/eina/eina_thread.c | 16 
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/src/lib/eina/eina_thread.c b/src/lib/eina/eina_thread.c
index 429087e..eb1a13f 100644
--- a/src/lib/eina/eina_thread.c
+++ b/src/lib/eina/eina_thread.c
@@ -34,7 +34,9 @@
 
 #include 
 #include 
-#include 
+#ifndef _WIN32
+# include 
+#endif
 
 #ifdef EINA_HAVE_PTHREAD_AFFINITY
 #ifndef __linux__
@@ -58,8 +60,10 @@ _eina_thread_create(Eina_Thread *t, int affinity, void 
*(*func)(void *data), voi
 {
int err;
pthread_attr_t attr;
+#ifndef _WIN32
sigset_t oldset, newset;
-
+#endif
+   
pthread_attr_init();
if (affinity >= 0)
  {
@@ -76,6 +80,7 @@ _eina_thread_create(Eina_Thread *t, int affinity, void 
*(*func)(void *data), voi
  }
 
/* setup initial locks */
+#ifndef _WIN32
sigemptyset();
sigaddset(, SIGPIPE);
sigaddset(, SIGALRM);
@@ -86,12 +91,15 @@ _eina_thread_create(Eina_Thread *t, int affinity, void 
*(*func)(void *data), voi
sigaddset(, SIGQUIT);
sigaddset(, SIGINT);
sigaddset(, SIGTERM);
-#ifdef SIGPWR
+# ifdef SIGPWR
sigaddset(, SIGPWR);
-#endif
+# endif
sigprocmask(SIG_BLOCK, , );
+#endif
err = pthread_create((pthread_t *)t, , func, data);
+#ifndef _WIN32
sigprocmask(SIG_SETMASK, , NULL);
+#endif
pthread_attr_destroy();
 
if (err == 0) return EINA_TRUE;

-- 




[EGIT] [core/efl] master 01/01: eina thread create - use pthread_sigmask as this can be called from thread

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

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

commit 4bbe5ee058b2789adec2f6b02a5eaa02ed352b1a
Author: Carsten Haitzler (Rasterman) 
Date:   Thu Jul 14 08:32:16 2016 +0900

eina thread create - use pthread_sigmask as this can be called from thread

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

diff --git a/src/lib/eina/eina_thread.c b/src/lib/eina/eina_thread.c
index 0244ccb..52cbc39 100644
--- a/src/lib/eina/eina_thread.c
+++ b/src/lib/eina/eina_thread.c
@@ -94,11 +94,11 @@ _eina_thread_create(Eina_Thread *t, int affinity, void 
*(*func)(void *data), voi
 # ifdef SIGPWR
sigaddset(, SIGPWR);
 # endif
-   sigprocmask(SIG_BLOCK, , );
+   pthread_sigmask(SIG_BLOCK, , );
 #endif
err = pthread_create((pthread_t *)t, , func, data);
 #ifndef _WIN32
-   sigprocmask(SIG_SETMASK, , NULL);
+   pthread_sigmask(SIG_SETMASK, , NULL);
 #endif
pthread_attr_destroy();
 

-- 




Re: [E-devel] [EGIT] [tools/eflete] master 02/02: project_manager: temporary fix thread blocking when imported edc contain scripts

2016-07-13 Thread The Rasterman
On Wed, 13 Jul 2016 11:02:58 -0700 Cedric BAIL  said:

> On Wed, Jul 13, 2016 at 3:00 AM, Vitalii Vorobiov
>  wrote:
> > rimmed pushed a commit to branch master.
> >
> > http://git.enlightenment.org/tools/eflete.git/commit/?id=e6f5055353da08540421c2a53b49ccfb0131e348
> >
> > commit e6f5055353da08540421c2a53b49ccfb0131e348
> > Author: Vitalii Vorobiov 
> > Date:   Wed Jul 13 12:33:49 2016 +0300
> >
> > project_manager: temporary fix thread blocking when imported edc
> > contain scripts
> 
> Now, I do understand your problem. This code is just lucky it ever
> worked ! ecore_exe is already asynchronous and no ecore API, except
> some of the thread related one, should ever be called from a thread !
> Remove all use of Eina_Thread to run Ecore_Exe and you will be fine.

actually now i think about it... eina_thread_crate isnt limited to using from
mainloop. right? pthread_create is not. i am not sure this should be limited
like that. ecore_thread for sure. not eina_thread tho...

> Cedric
> 
> --
> What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
> patterns at an interface-level. Reveals which users, apps, and protocols are 
> consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
> J-Flow, sFlow and other flows. Make informed decisions using capacity planning
> reports.http://sdm.link/zohodev2dev
> ___
> 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


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


Re: [E-devel] [EGIT] [core/efl] master 01/01: edje: the repeat_events property of swallowed object probably should follow the repeat_events property of swallow part object

2016-07-13 Thread The Rasterman
On Wed, 13 Jul 2016 06:38:02 +0900 Kim Shinwoo  said:

> oops... wayland application.. yes this commit could have compatability
> issue. Why does it happen only for wl-app.. :/ do I have revert this commit?

don't worry. the reason it happened for wayland apps is because of a break in
the parent/child relationship and devilhorns now fixed that. this does change
behaviour but in a "well the previous behaviour was illogical and inconsistent
and thus a bug because people had to scratch their heads and wonder why it
didn't work like mouse_events: did"

> 2016. 7. 12. 오후 8:41에 님이 작성:
> 
> Hello,
> 
> this commit breaks wl-apps. They dont receive any mouseinput anymore.
> 
> To reproduce, just start terminology in weston.
> 
> Greetings
>bu5hm4n
> 
> On Mon, Jul 11, 2016 at 06:53:49PM -0700, Shinwoo Kim wrote:
> > raster pushed a commit to branch master.
> >
> >
> http://git.enlightenment.org/core/efl.git/commit/?id=c52eda0bf155b11ca137450cb388cd239d434554
> >
> > commit c52eda0bf155b11ca137450cb388cd239d434554
> > Author: Shinwoo Kim 
> > Date:   Tue Jul 12 10:53:27 2016 +0900
> >
> > edje: the repeat_events property of swallowed object probably should
> follow the repeat_events property of swallow part object
> >
> > Summary: Need discussion about the repeat_events property
> >
> > Test Plan: Swallow an object which has EINA_TRUE repeat_events to a
> swallow part which has EINA_FALSE repeat_events
> >
> > Reviewers: Hermet, cedric, raster, jpeg
> >
> > Reviewed By: raster, jpeg
> >
> > Subscribers: jaehwan, seoz, woohyun
> >
> > Differential Revision: https://phab.enlightenment.org/D3580
> > ---
> >  src/lib/edje/edje_util.c | 3 +--
> >  1 file changed, 1 insertion(+), 2 deletions(-)
> >
> > diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
> > index 4f82e32..48ee448 100644
> > --- a/src/lib/edje/edje_util.c
> > +++ b/src/lib/edje/edje_util.c
> > @@ -6625,8 +6625,7 @@ _edje_real_part_swallow(Edje *ed,
> > if (rp->part->mouse_events)
> >   {
> >  _edje_callbacks_add(obj_swallow, ed, rp);
> > -if (rp->part->repeat_events)
> > -  evas_object_repeat_events_set(obj_swallow, 1);
> > +evas_object_repeat_events_set(obj_swallow,
> rp->part->repeat_events);
> >  if (rp->part->pointer_mode != EVAS_OBJECT_POINTER_MODE_AUTOGRAB)
> >evas_object_pointer_mode_set(obj_swallow,
> rp->part->pointer_mode);
> >  evas_object_pass_events_set(obj_swallow, 0);
> >
> > --
> >
> >
> 
> --
> What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
> patterns at an interface-level. Reveals which users, apps, and protocols are
> consuming the most bandwidth. Provides multi-vendor support for NetFlow,
> J-Flow, sFlow and other flows. Make informed decisions using capacity
> planning
> reports.http://sdm.link/zohodev2dev
> ___
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> --
> What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
> patterns at an interface-level. Reveals which users, apps, and protocols are 
> consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
> J-Flow, sFlow and other flows. Make informed decisions using capacity planning
> reports.http://sdm.link/zohodev2dev
> ___
> 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


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


Re: [E-devel] [EGIT] [core/efl] master 05/10: eet - fix possible integer overflow in ptr diff on parse

2016-07-13 Thread The Rasterman
On Wed, 13 Jul 2016 14:08:22 -0700 Cedric BAIL  said:

> On Mon, Jul 11, 2016 at 6:25 AM, Carsten Haitzler 
> wrote:
> > raster pushed a commit to branch master.
> >
> > http://git.enlightenment.org/core/efl.git/commit/?id=679af3271fbc577602fded804dee6fe59748178f
> >
> > commit 679af3271fbc577602fded804dee6fe59748178f
> > Author: Carsten Haitzler (Rasterman) 
> > Date:   Mon Jul 11 21:54:57 2016 +0900
> >
> > eet - fix possible integer overflow in ptr diff on parse
> >
> > coverity spotted this - with silly long strings (like 1gb in size or+)
> > it might happen. fix CID 1256196
> 
> This patch seems clearly like a false report fix. end is obviously
> inside buf, which is itself a fixed length array of 4096. This test
> seems quite unecessary and I would prefer that we mark the problem as
> a false positive in coverity.

yes - we can tell coverity to ignore but i am seeing a fair few issues not go
away or come back in coverity that were triaged/fix submitted long ago. it's
kind of nice to make sure it doesn't come back as noise.

> > ---
> >  src/lib/eet/eet_lib.c | 4 +++-
> >  1 file changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/src/lib/eet/eet_lib.c b/src/lib/eet/eet_lib.c
> > index 4d0dfba..d2c95c2 100644
> > --- a/src/lib/eet/eet_lib.c
> > +++ b/src/lib/eet/eet_lib.c
> > @@ -1757,7 +1757,9 @@ _base64_dec(const char *file, int *size_ret)
> >}
> >  end = p;
> >  // go from line start to (but not including) first invalid char
> > -if (((end - buf) > 0) && (((end - buf) % 4) == 0))
> > +if (((end - buf) > 0) &&
> > +((end - buf) < 0x1fff) && // not too long
> > +(((end - buf) % 4) == 0))
> >{
> >   unsigned char *tmp = malloc((end - buf + 4) * 2);
> >
> >
> > --
> >
> >
> >
> 
> 
> 
> -- 
> Cedric BAIL
> 
> --
> What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
> patterns at an interface-level. Reveals which users, apps, and protocols are 
> consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
> J-Flow, sFlow and other flows. Make informed decisions using capacity planning
> reports.http://sdm.link/zohodev2dev
> ___
> 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


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


Re: [E-devel] [EGIT] [tools/eflete] master 02/02: project_manager: temporary fix thread blocking when imported edc contain scripts

2016-07-13 Thread The Rasterman
On Wed, 13 Jul 2016 11:02:58 -0700 Cedric BAIL  said:

> On Wed, Jul 13, 2016 at 3:00 AM, Vitalii Vorobiov
>  wrote:
> > rimmed pushed a commit to branch master.
> >
> > http://git.enlightenment.org/tools/eflete.git/commit/?id=e6f5055353da08540421c2a53b49ccfb0131e348
> >
> > commit e6f5055353da08540421c2a53b49ccfb0131e348
> > Author: Vitalii Vorobiov 
> > Date:   Wed Jul 13 12:33:49 2016 +0300
> >
> > project_manager: temporary fix thread blocking when imported edc
> > contain scripts
> 
> Now, I do understand your problem. This code is just lucky it ever
> worked ! ecore_exe is already asynchronous and no ecore API, except
> some of the thread related one, should ever be called from a thread !
> Remove all use of Eina_Thread to run Ecore_Exe and you will be fine.

oh wait.. ecore_exe_run etc. was being called FROM a thread in eflete -
thus causing the sigmask issues?

yes! sigprocmask is SURELY broken/undefined when called FROM a thread.  my
experience is that it works from the main process thread because it HAS to keep
working - e.g. some "old non-threaded app" uses it, and then uses some library
- even libc, pam modules etc, and this library internally creates threads...
the app has no clue, and its code SHOULD keep working. thus sigprocmask has
continued to work to not break anything and we've been using it forever and it
works for this purpose. that's why i continued to sue it - it works on the
bsd's too and solves those issues so i'm loathe to go change it without a very
good widely tested reason (sigprocmask in ecore_signal.c is by now widely
tested).

but the above TOTALLY explains the issues reported and why the patch made no
sense... because ecore_exe was being called FROM a thread... and thus the
thread was doing the fork()... and this is bad (tm). :)

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


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


Re: [E-devel] [EGIT] [core/efl] master 01/01: edje: the repeat_events property of swallowed object probably should follow the repeat_events property of swallow part object

2016-07-13 Thread The Rasterman
On Wed, 13 Jul 2016 19:08:10 +0200 marcel-hollerb...@t-online.de said:

> On Wed, Jul 13, 2016 at 08:49:11PM +0900, Carsten Haitzler wrote:
> > On Wed, 13 Jul 2016 08:20:15 +0200 marcel-hollerb...@t-online.de said:
> > 
> > > On Wed, Jul 13, 2016 at 08:51:04AM +0900, Carsten Haitzler wrote:
> > > > On Tue, 12 Jul 2016 13:40:33 +0200 marcel-hollerb...@t-online.de said:
> > > > 
> > > > > Hello, 
> > > > > 
> > > > > this commit breaks wl-apps. They dont receive any mouseinput anymore.
> > > > > 
> > > > > To reproduce, just start terminology in weston.
> > > > 
> > > > actually wl was broken some time ago it seems. the child content was no
> > > > longer swallowed into the border frame as it should have been and thus
> > > > something that should have been harmless was not. devilhorns fixed this
> > > > last night for wl clients.
> > > 
> > > No it worked until this commit. The edje object is just resized
> > > efl_ui_win.c:877, it just worked different it was not broken.
> > 
> > it was broken. stacking was broken. in x11 if i placed objects UNDER the
> > swallow part then that'd be behind the window content. in wl then EVERYTHING
> > would be above window content due to it not being swallowed. swallowing
> > fixes this. devilhorns even said that it USEd to be swallowed and somehow
> > is no longer swallowed.
> 
> Well the biggest things are fixed now.
> 
> But, i dont really understand what you mean, all objects are created with the 
> window object as parent, which means that all objects have the same layer.
> And honestly, setting the frame layer to one above the window itself,
> (as it was before) does make much sense to me, since you can make sure that 
> all content is below the border, so at least the controls of the window are
> still visible, even if things are going wrong.

if its swallowed this ensures it too because the content is a single object
within the parent edje swallow and evas enforces this parent/child stacking
relationship. if its outside of tree in a layer above then the border can't
UNDERLAY content behind the window -e.g. if window is transparent you can see
through to it. this is how it works in x11 and USEd to be in wayland but not
since the swallow was pulled out and the border layer stacked above etc. this
fixes it to be back where it was.

> > 
> > > And still, the commit is not really harmless it breaks behaviour, as you
> > > have seen...
> > 
> > this is a behaviour bug. that's my take on it. bug reports are "this does
> > not do what i expect. it does not do what the mouse_events does - ie be
> > explicit on swallows. it's different". it's a rare enough corner of things
> > where it shouldn't in general create an issue. it ONLY created an issue
> > with wayland because wayland had broken/changed how it swallows/handles
> > window content objects and stopped swallowing into the border object.
> 
> Back to the topic of the behaviour change, even if the change is
> good or bad, there is not even a @fix mark so i guess it will not be
> part of the changelog or anything. So from the POV from a api user, its
> a bad change, he doesnt even get told that there was a behaviour change.
> 
> And once again, this commit wasnt exposing a problem in the wl code. It
> created a problem, the bahviour was there before. It worked. Now it
> doesnt. And its completly the same for every single user which used this
> bahaviour.
> 
> > 
> > > > > Greetings
> > > > >bu5hm4n
> > > > > 
> > > > > On Mon, Jul 11, 2016 at 06:53:49PM -0700, Shinwoo Kim wrote:
> > > > > > raster pushed a commit to branch master.
> > > > > > 
> > > > > > http://git.enlightenment.org/core/efl.git/commit/?id=c52eda0bf155b11ca137450cb388cd239d434554
> > > > > > 
> > > > > > commit c52eda0bf155b11ca137450cb388cd239d434554
> > > > > > Author: Shinwoo Kim 
> > > > > > Date:   Tue Jul 12 10:53:27 2016 +0900
> > > > > > 
> > > > > > edje: the repeat_events property of swallowed object probably
> > > > > > should follow the repeat_events property of swallow part object 
> > > > > > Summary: Need discussion about the repeat_events property
> > > > > > 
> > > > > > Test Plan: Swallow an object which has EINA_TRUE repeat_events
> > > > > > to a swallow part which has EINA_FALSE repeat_events 
> > > > > > Reviewers: Hermet, cedric, raster, jpeg
> > > > > > 
> > > > > > Reviewed By: raster, jpeg
> > > > > > 
> > > > > > Subscribers: jaehwan, seoz, woohyun
> > > > > > 
> > > > > > Differential Revision: https://phab.enlightenment.org/D3580
> > > > > > ---
> > > > > >  src/lib/edje/edje_util.c | 3 +--
> > > > > >  1 file changed, 1 insertion(+), 2 deletions(-)
> > > > > > 
> > > > > > diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
> > > > > > index 4f82e32..48ee448 100644
> > > > > > --- a/src/lib/edje/edje_util.c
> > > > > > +++ b/src/lib/edje/edje_util.c
> > > > > > @@ -6625,8 +6625,7 @@ _edje_real_part_swallow(Edje *ed,
> > > > > > if 

[EGIT] [core/efl] master 03/04: elm_colorselector: selected item is updated when color is changed.

2016-07-13 Thread Sungtaek Hong
cedric pushed a commit to branch master.

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

commit cebbf43881f599e3a1492dfce43730a55c960626
Author: Sungtaek Hong 
Date:   Wed Jul 13 16:06:58 2016 -0700

elm_colorselector: selected item is updated when color is changed.

Summary:
 - Previously, mode change, color change updated
   sd->selected, but did not send signals to edje of the item.
 - Also, mode change in colorselector set sd->selected to
   the first item even when palette is visible in previous mode.
 - Now, when mode is changed, sd->selected is set NULL and send
   unselected signal if palette is invisible, and keep sd->selected
   if palette is visible.
 - sd->selected is set NULL when color is changed in picker and
   color bars because previous selected item is not current color of
   colorselector

Test Plan:
1.
1) launch elementary_test colorselector.
2)Select any item and check the item is selected when palette is 
visible.
3) Change mode to Palette, Both, All, and check selected item is not 
changed.
(Previously, selected item is changed to the first item of the palette, 
but previous item was seen as selected.)

2.
1) launch elementary_test colorselector.
2) Select any item and check the item is selected when palette is 
visible.
3) Change mode to Components, Picker.
4) Change mode to Palette, and check none of items is selected.
(Previously, selected item is changed to the first item of the palette, 
but previous item was seen as selected.)

3.
1) launch elementary_test colorselector.
2) Select any item and check the item is selected when palette is 
visible.
3) Change mode to All.
4) Click arrows in Picker and color bars.
5) Observe selected item is not unselected when color is not changed, 
and selected item is unselected when color is changed.
4.
1) launch elementary_test colorselector.
2) Select any item and check the item is selected when palette is 
visible.
3) Press direction key and check selected item is changed.
(Previously, selected item's edje is not updated.)

Reviewers: woohyun, Hermet, jpeg, cedric

Subscribers: cedric, jpeg

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

Signed-off-by: Cedric BAIL 
---
 src/lib/elementary/elm_colorselector.c | 68 +++---
 1 file changed, 47 insertions(+), 21 deletions(-)

diff --git a/src/lib/elementary/elm_colorselector.c 
b/src/lib/elementary/elm_colorselector.c
index ea64859..df972a7 100644
--- a/src/lib/elementary/elm_colorselector.c
+++ b/src/lib/elementary/elm_colorselector.c
@@ -584,13 +584,14 @@ _colors_set(Evas_Object *obj,
 int r,
 int g,
 int b,
-int a)
+int a,
+Eina_Bool mode_change)
 {
double x, y;
 
ELM_COLORSELECTOR_DATA_GET(obj, sd);
 
-   if ((sd->r == r) && (sd->g == g) && (sd->b == b) && (sd->a == a))
+   if ((sd->r == r) && (sd->g == g) && (sd->b == b) && (sd->a == a) && 
!mode_change)
  return;
 
sd->r = r;
@@ -631,7 +632,20 @@ _colors_set(Evas_Object *obj,
  }
if ((sd->mode == ELM_COLORSELECTOR_ALL) || (sd->mode == 
ELM_COLORSELECTOR_PICKER))
  _color_picker_init(sd);
-   eo_event_callback_call(obj, ELM_COLORSELECTOR_EVENT_CHANGED, NULL);
+   if (!mode_change)
+ eo_event_callback_call(obj, ELM_COLORSELECTOR_EVENT_CHANGED, NULL);
+}
+
+static void
+_unselect_selected_item(Elm_Colorselector_Data *sd)
+{
+   Eo *eo_temp_item;
+
+   if (sd->selected)
+ {
+eo_temp_item = eina_list_data_get(sd->selected);
+elm_obj_color_item_selected_set(eo_temp_item, EINA_FALSE);
+ }
 }
 
 static void
@@ -641,6 +655,7 @@ _spinner_changed_cb(void *data, const Eo_Event *event)
Evas_Object *parent;
int i, v;
 
+   _unselect_selected_item(sd);
for (i = 0; i < 4 && sd->spinners[i] != event->object; i++);
 
parent = evas_object_data_get(event->object, "parent");
@@ -650,16 +665,16 @@ _spinner_changed_cb(void *data, const Eo_Event *event)
switch (i)
  {
   case 0:
- _colors_set(parent, v, sd->g, sd->b, sd->a);
+ _colors_set(parent, v, sd->g, sd->b, sd->a, EINA_FALSE);
  break;
   case 1:
- _colors_set(parent, sd->r, v, sd->b, sd->a);
+ _colors_set(parent, sd->r, v, sd->b, sd->a, EINA_FALSE);
  break;
   case 2:
- _colors_set(parent, sd->r, sd->g, v, sd->a);
+ _colors_set(parent, sd->r, sd->g, v, sd->a, EINA_FALSE);
  break;
   case 3:
- _colors_set(parent, sd->r, sd->g, sd->b, v);
+ _colors_set(parent, sd->r, sd->g, sd->b, v, EINA_FALSE);
  break;
  }
evas_object_data_del(event->object, 

[EGIT] [core/efl] master 01/04: eo: rationalize naming to follow other use of ref and wref in our API.

2016-07-13 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit d85c07e4a70e06de04820aebe5277cd491263e64
Author: Cedric BAIL 
Date:   Wed Jul 13 16:05:58 2016 -0700

eo: rationalize naming to follow other use of ref and wref in our API.
---
 src/lib/eo/eo_base.eo  | 4 ++--
 src/lib/eo/eo_base_class.c | 8 
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/lib/eo/eo_base.eo b/src/lib/eo/eo_base.eo
index 01ae857..d838777 100644
--- a/src/lib/eo/eo_base.eo
+++ b/src/lib/eo/eo_base.eo
@@ -228,7 +228,7 @@ abstract Eo.Base ()
 }
  }
   }
-  @property key_obj {
+  @property key_ref {
  [[Generic object reference with string key to object.
 
The object will be automatically ref'd when set and unref'd
@@ -253,7 +253,7 @@ abstract Eo.Base ()
 }
  }
   }
-  @property key_obj_weak {
+  @property key_wref {
  [[Generic weak object reference with string key to object.
 
The object key will be removed if the object is removed, but
diff --git a/src/lib/eo/eo_base_class.c b/src/lib/eo/eo_base_class.c
index 92e10af6..e7742b8 100644
--- a/src/lib/eo/eo_base_class.c
+++ b/src/lib/eo/eo_base_class.c
@@ -255,7 +255,7 @@ _eo_base_key_data_get(Eo *obj, Eo_Base_Data *pd, const char 
*key)
 }
 
 EOLIAN static void
-_eo_base_key_obj_set(Eo *obj EINA_UNUSED, Eo_Base_Data *pd, const char *key, 
const Eo *objdata)
+_eo_base_key_ref_set(Eo *obj EINA_UNUSED, Eo_Base_Data *pd, const char *key, 
const Eo *objdata)
 {
Eo_Generic_Data_Node *node;
 
@@ -268,13 +268,13 @@ _eo_base_key_obj_set(Eo *obj EINA_UNUSED, Eo_Base_Data 
*pd, const char *key, con
 }
 
 EOLIAN static Eo *
-_eo_base_key_obj_get(Eo *obj, Eo_Base_Data *pd, const char *key)
+_eo_base_key_ref_get(Eo *obj, Eo_Base_Data *pd, const char *key)
 {
return _key_generic_get(obj, pd, key, DATA_OBJ);
 }
 
 EOLIAN static void
-_eo_base_key_obj_weak_set(Eo *obj, Eo_Base_Data *pd, const char * key, const 
Eo_Base *objdata)
+_eo_base_key_wref_set(Eo *obj, Eo_Base_Data *pd, const char * key, const 
Eo_Base *objdata)
 {
Eo_Generic_Data_Node *node;
 
@@ -286,7 +286,7 @@ _eo_base_key_obj_weak_set(Eo *obj, Eo_Base_Data *pd, const 
char * key, const Eo_
 }
 
 EOLIAN static Eo *
-_eo_base_key_obj_weak_get(Eo *obj, Eo_Base_Data *pd, const char * key)
+_eo_base_key_wref_get(Eo *obj, Eo_Base_Data *pd, const char * key)
 {
return _key_generic_get(obj, pd, key, DATA_OBJ_WEAK);
 }

-- 




[EGIT] [core/efl] master 04/04: eo: fix tests after renaming.

2016-07-13 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit 7bb8afe4f9bcfe3a86fdf3b1cdfea083c1b68164
Author: Cedric BAIL 
Date:   Wed Jul 13 16:17:16 2016 -0700

eo: fix tests after renaming.
---
 src/tests/eo/suite/eo_test_general.c | 72 ++--
 1 file changed, 36 insertions(+), 36 deletions(-)

diff --git a/src/tests/eo/suite/eo_test_general.c 
b/src/tests/eo/suite/eo_test_general.c
index ea94823..0848066 100644
--- a/src/tests/eo/suite/eo_test_general.c
+++ b/src/tests/eo/suite/eo_test_general.c
@@ -732,54 +732,54 @@ START_TEST(eo_generic_data)
 
 
 
-   eo_key_obj_set(obj, "test1", obj2);
-   objtmp = eo_key_obj_get(obj, "test1");
+   eo_key_ref_set(obj, "test1", obj2);
+   objtmp = eo_key_ref_get(obj, "test1");
fail_if(obj2 != objtmp);
 
-   eo_key_obj_set(obj, "test1", NULL);
-   objtmp = eo_key_obj_get(obj, "test1");
+   eo_key_ref_set(obj, "test1", NULL);
+   objtmp = eo_key_ref_get(obj, "test1");
fail_if(objtmp);
 
-   eo_key_obj_set(obj, "test1", obj2);
+   eo_key_ref_set(obj, "test1", obj2);
fail_if(eo_ref_get(obj2) != 2);
 
-   eo_key_obj_set(obj, "test2", obj3);
+   eo_key_ref_set(obj, "test2", obj3);
fail_if(eo_ref_get(obj3) != 2);
 
-   objtmp = eo_key_obj_get(obj, "test1");
+   objtmp = eo_key_ref_get(obj, "test1");
fail_if(obj2 != objtmp);
 
-   objtmp = eo_key_obj_get(obj, "test2");
+   objtmp = eo_key_ref_get(obj, "test2");
fail_if(obj3 != objtmp);
 
-   data = eo_key_obj_get(obj, "test2");
+   data = eo_key_ref_get(obj, "test2");
fail_if(obj3 != objtmp);
 
-   eo_key_obj_set(obj, "test2", NULL);
+   eo_key_ref_set(obj, "test2", NULL);
fail_if(eo_ref_get(obj3) != 1);
 
-   objtmp = eo_key_obj_get(obj, "test2");
+   objtmp = eo_key_ref_get(obj, "test2");
fail_if(objtmp);
 
-   objtmp = eo_key_obj_get(obj, "test1");
+   objtmp = eo_key_ref_get(obj, "test1");
fail_if(obj2 != objtmp);
 
-   eo_key_obj_set(obj, "test1", NULL);
+   eo_key_ref_set(obj, "test1", NULL);
fail_if(eo_ref_get(obj2) != 1);
 
-   objtmp = eo_key_obj_get(obj, "test1");
+   objtmp = eo_key_ref_get(obj, "test1");
fail_if(objtmp);
 
-   eo_key_obj_set(obj, "test1", obj2);
-   eo_key_obj_set(obj, "test2", obj3);
+   eo_key_ref_set(obj, "test1", obj2);
+   eo_key_ref_set(obj, "test2", obj3);
eo_del(obj2);
eo_del(obj2);
eo_del(obj3);
eo_del(obj3);
-   objtmp = eo_key_obj_get(obj, "test1");
+   objtmp = eo_key_ref_get(obj, "test1");
fail_if(objtmp);
 
-   objtmp = eo_key_obj_get(obj, "test2");
+   objtmp = eo_key_ref_get(obj, "test2");
fail_if(objtmp);
 
 
@@ -787,52 +787,52 @@ START_TEST(eo_generic_data)
obj2 = eo_add(SIMPLE_CLASS, NULL);
obj3 = eo_add(SIMPLE_CLASS, NULL);
 
-   eo_key_obj_weak_set(obj, "test1", obj2);
-   objtmp = eo_key_obj_weak_get(obj, "test1");
+   eo_key_wref_set(obj, "test1", obj2);
+   objtmp = eo_key_wref_get(obj, "test1");
fail_if(obj2 != objtmp);
 
-   eo_key_obj_weak_set(obj, "test1", NULL);
-   objtmp = eo_key_obj_weak_get(obj, "test1");
+   eo_key_wref_set(obj, "test1", NULL);
+   objtmp = eo_key_wref_get(obj, "test1");
fail_if(objtmp);
 
-   eo_key_obj_weak_set(obj, "test1", obj2);
+   eo_key_wref_set(obj, "test1", obj2);
fail_if(eo_ref_get(obj2) != 1);
 
-   eo_key_obj_weak_set(obj, "test2", obj3);
+   eo_key_wref_set(obj, "test2", obj3);
fail_if(eo_ref_get(obj3) != 1);
 
-   objtmp = eo_key_obj_weak_get(obj, "test1");
+   objtmp = eo_key_wref_get(obj, "test1");
fail_if(obj2 != objtmp);
 
-   objtmp = eo_key_obj_weak_get(obj, "test2");
+   objtmp = eo_key_wref_get(obj, "test2");
fail_if(obj3 != objtmp);
 
-   data = eo_key_obj_weak_get(obj, "test2");
+   data = eo_key_wref_get(obj, "test2");
fail_if(obj3 != objtmp);
 
-   eo_key_obj_weak_set(obj, "test2", NULL);
+   eo_key_wref_set(obj, "test2", NULL);
fail_if(eo_ref_get(obj3) != 1);
 
-   objtmp = eo_key_obj_weak_get(obj, "test2");
+   objtmp = eo_key_wref_get(obj, "test2");
fail_if(objtmp);
 
-   objtmp = eo_key_obj_weak_get(obj, "test1");
+   objtmp = eo_key_wref_get(obj, "test1");
fail_if(obj2 != objtmp);
 
-   eo_key_obj_weak_set(obj, "test1", NULL);
+   eo_key_wref_set(obj, "test1", NULL);
fail_if(eo_ref_get(obj2) != 1);
 
-   objtmp = eo_key_obj_weak_get(obj, "test1");
+   objtmp = eo_key_wref_get(obj, "test1");
fail_if(objtmp);
 
-   eo_key_obj_weak_set(obj, "test1", obj2);
-   eo_key_obj_weak_set(obj, "test2", obj3);
+   eo_key_wref_set(obj, "test1", obj2);
+   eo_key_wref_set(obj, "test2", obj3);
eo_del(obj2);
eo_del(obj3);
-   objtmp = eo_key_obj_weak_get(obj, "test1");
+   objtmp = eo_key_wref_get(obj, "test1");
fail_if(objtmp);
 
-   objtmp = eo_key_obj_weak_get(obj, "test2");
+   objtmp = eo_key_wref_get(obj, "test2");
fail_if(objtmp);
 
 

-- 




[EGIT] [core/efl] master 02/04: elementary: switch code accordingly to use new ref version.

2016-07-13 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit 03915fc07b4771725714388bf15969823b98f825
Author: Cedric BAIL 
Date:   Wed Jul 13 16:06:30 2016 -0700

elementary: switch code accordingly to use new ref version.
---
 src/lib/elementary/elc_fileselector.c | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/lib/elementary/elc_fileselector.c 
b/src/lib/elementary/elc_fileselector.c
index 21daa8b..095ad3a 100644
--- a/src/lib/elementary/elc_fileselector.c
+++ b/src/lib/elementary/elc_fileselector.c
@@ -1340,7 +1340,7 @@ _text_activated_free_fs_data(Elm_Fileselector *fs)
Eina_Stringshare *str = eo_key_data_get(fs, _text_activated_path_key);
eina_stringshare_del(str);
eo_key_data_set(fs, _text_activated_path_key, NULL);
-   eo_key_obj_set(fs, _text_activated_model_key, NULL);
+   eo_key_ref_set(fs, _text_activated_model_key, NULL);
eo_unref(fs);
 }
 
@@ -1351,7 +1351,7 @@ _text_activated_is_dir_then(void *data, void *value)
Eina_Bool is_dir = EINA_FALSE;
ELM_FILESELECTOR_DATA_GET(fs, sd);
 
-   Efl_Model *model = eo_key_obj_get(fs, _text_activated_model_key);
+   Efl_Model *model = eo_key_ref_get(fs, _text_activated_model_key);
Eina_Stringshare *str = eo_key_data_get(fs, _text_activated_path_key);
 
eina_value_get(value, _dir);
@@ -1458,7 +1458,7 @@ _on_text_activated(void *data, const Eo_Event *event)
_model_str_property_set(model, "path", path, );
 
eo_key_data_set(fs, _text_activated_path_key, eina_stringshare_add(path));
-   eo_key_obj_set(fs, _text_activated_model_key, model);
+   eo_key_ref_set(fs, _text_activated_model_key, model);
eo_ref(fs);
eina_promise_then(promise,
  _on_text_activated_set_path_then,
@@ -2429,7 +2429,7 @@ clean_up:
 static void
 _selected_model_set_free_fs_data(Elm_Fileselector *fs)
 {
-   eo_key_obj_set(fs, _selected_model_set_model_key, NULL);
+   eo_key_ref_set(fs, _selected_model_set_model_key, NULL);
eo_key_data_set(fs, _selected_model_set_promise_owner_key, NULL);
eo_unref(fs);
 }
@@ -2448,7 +2448,7 @@ _selected_model_set_is_dir_then(void *data, void *value)
 {
Elm_Fileselector *fs = data;
Eina_Bool is_dir = EINA_FALSE;
-   Efl_Model *model = eo_key_obj_get(fs, _selected_model_set_model_key);
+   Efl_Model *model = eo_key_ref_get(fs, _selected_model_set_model_key);
Eina_Promise_Owner *promise_owner = eo_key_data_get(fs, 
_selected_model_set_promise_owner_key);
ELM_FILESELECTOR_DATA_GET(fs, sd);
 
@@ -2496,7 +2496,7 @@ 
_elm_fileselector_elm_interface_fileselector_selected_model_set(Eo *obj, Elm_Fil
  }
promise = efl_model_property_get(model, "is_dir");
 
-   eo_key_obj_set(obj, _selected_model_set_model_key, model);
+   eo_key_ref_set(obj, _selected_model_set_model_key, model);
if (promise_owner)
  eo_key_data_set(obj, _selected_model_set_promise_owner_key, 
promise_owner);
 

-- 




[EGIT] [core/efl] master 01/02: ecore: early destruction of animator allow for tick end to always be triggered.

2016-07-13 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit fd5d31696d834a6c0fad3fe89cfb523899c04531
Author: Cedric BAIL 
Date:   Wed Jul 13 15:09:03 2016 -0700

ecore: early destruction of animator allow for tick end to always be 
triggered.

T4043
---
 src/lib/ecore/ecore_anim.c| 68 +--
 src/lib/ecore/ecore_main.c|  5 +++-
 src/lib/ecore/ecore_private.h |  2 ++
 3 files changed, 46 insertions(+), 29 deletions(-)

diff --git a/src/lib/ecore/ecore_anim.c b/src/lib/ecore/ecore_anim.c
index fc8eb88..dedea47 100644
--- a/src/lib/ecore/ecore_anim.c
+++ b/src/lib/ecore/ecore_anim.c
@@ -277,8 +277,8 @@ _do_tick(void)
if (animators) eina_evlog("!FRAME", NULL, ecore_loop_time_get(), NULL);
EINA_INLIST_FOREACH(animators, animator)
  {
-if ((!animator->delete_me) && 
-(!animator->suspended) && 
+if ((!animator->delete_me) &&
+(!animator->suspended) &&
 (!animator->just_added))
   {
  animator_ran = EINA_TRUE;
@@ -292,32 +292,8 @@ _do_tick(void)
   }
 else animator->just_added = EINA_FALSE;
  }
-   if (animators_delete_me)
- {
-Ecore_Animator *l;
-for (l = animators; l; )
-  {
- animator = l;
- l = (Ecore_Animator  *)EINA_INLIST_GET(l)->next;
- if (animator->delete_me)
-   {
-  if (animator->suspended) animators_suspended--;
-  animators = (Ecore_Animator *)
-eina_inlist_remove(EINA_INLIST_GET(animators),
-   EINA_INLIST_GET(animator));
-
-  free(animator);
-
-  animators_delete_me--;
-  if (animators_delete_me == 0) break;
-   }
-  }
- }
-   if (!_have_animators())
- {
-_end_tick();
-return ECORE_CALLBACK_CANCEL;
- }
+   if (!_ecore_animator_flush())
+ return ECORE_CALLBACK_CANCEL;
return ECORE_CALLBACK_RENEW;
 }
 
@@ -635,6 +611,7 @@ ecore_animator_del(Ecore_Animator *animator)
 data = animator->data;
 goto end;
  }
+
animator->delete_me = EINA_TRUE;
animators_delete_me++;
if (animator->run_func)
@@ -643,6 +620,7 @@ ecore_animator_del(Ecore_Animator *animator)
  data = animator->data;
 
  end:
+   if (!in_main_loop) _ecore_animator_flush();
return data;
 }
 
@@ -786,3 +764,37 @@ _ecore_animator_run(void *data)
if (t >= (animator->start + animator->run)) run_ret = EINA_FALSE;
return run_ret;
 }
+
+Eina_Bool
+_ecore_animator_flush(void)
+{
+   Ecore_Animator *animator;
+
+   if (animators_delete_me)
+ {
+Ecore_Animator *l;
+for (l = animators; l; )
+  {
+ animator = l;
+ l = (Ecore_Animator  *)EINA_INLIST_GET(l)->next;
+ if (animator->delete_me)
+   {
+  if (animator->suspended) animators_suspended--;
+  animators = (Ecore_Animator *)
+eina_inlist_remove(EINA_INLIST_GET(animators),
+   EINA_INLIST_GET(animator));
+
+  free(animator);
+
+  animators_delete_me--;
+  if (animators_delete_me == 0) break;
+   }
+  }
+ }
+   if (!_have_animators())
+ {
+_end_tick();
+return EINA_FALSE;
+ }
+   return EINA_TRUE;
+}
diff --git a/src/lib/ecore/ecore_main.c b/src/lib/ecore/ecore_main.c
index 354edc9..d16c97a 100644
--- a/src/lib/ecore/ecore_main.c
+++ b/src/lib/ecore/ecore_main.c
@@ -273,8 +273,9 @@ static int _ecore_main_win32_select(int nfds,
 static void _ecore_main_win32_handlers_cleanup(void);
 #endif
 
+int in_main_loop = 0;
+
 static unsigned char _ecore_exit_code = 0;
-static int in_main_loop = 0;
 static int do_quit = 0;
 static Ecore_Fd_Handler *fd_handlers = NULL;
 static Ecore_Fd_Handler *fd_handler_current = NULL;
@@ -2351,6 +2352,8 @@ process_all: 
/*-*/
  }
 
 done: /*-*/
+   /* Agressively flush animator */
+   _ecore_animator_flush();
in_main_loop--;
 }
 
diff --git a/src/lib/ecore/ecore_private.h b/src/lib/ecore/ecore_private.h
index 40fa080..d6cb900 100644
--- a/src/lib/ecore/ecore_private.h
+++ b/src/lib/ecore/ecore_private.h
@@ -248,6 +248,7 @@ void   _ecore_exe_event_del_free(void *data,
 void _ecore_animator_shutdown(void);
 void _ecore_animator_run_reset(void);
 Eina_Bool _ecore_animator_run_get(void);
+Eina_Bool _ecore_animator_flush(void);
 
 void _ecore_poller_shutdown(void);
 
@@ -336,6 +337,7 @@ extern int _ecore_fps_debug;
 extern double _ecore_time_loop_time;
 extern Eina_Bool _ecore_glib_always_integrate;
 extern 

[EGIT] [core/efl] master 02/02: ecore: add test case for tick begin/end.

2016-07-13 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit 649f120326d800b596fa54fbef633bba9b98c3fc
Author: Cedric BAIL 
Date:   Wed Jul 13 15:31:51 2016 -0700

ecore: add test case for tick begin/end.
---
 src/tests/ecore/ecore_test_animator.c | 62 +++
 1 file changed, 62 insertions(+)

diff --git a/src/tests/ecore/ecore_test_animator.c 
b/src/tests/ecore/ecore_test_animator.c
index c99e216..172d770 100644
--- a/src/tests/ecore/ecore_test_animator.c
+++ b/src/tests/ecore/ecore_test_animator.c
@@ -97,8 +97,70 @@ START_TEST(ecore_test_pos_map)
 }
 END_TEST
 
+static void _animator_called_cb(void *data)
+{
+   Eina_Bool *called = data;
+
+   *called = EINA_TRUE;
+}
+
+static Eina_Bool _animator_cb(void *data)
+{
+   Eina_Bool *called = data;
+
+   *called = EINA_TRUE;
+   return ECORE_CALLBACK_RENEW;
+}
+
+static Eina_Bool _switch_cb(void* data EINA_UNUSED)
+{
+   ecore_animator_custom_tick();
+   return ECORE_CALLBACK_CANCEL;
+}
+
+static Eina_Bool _quit_cb(void* data EINA_UNUSED)
+{
+   ecore_main_loop_quit();
+   return ECORE_CALLBACK_CANCEL;
+}
+
+START_TEST(ecore_test_begin_end_tick)
+{
+   Ecore_Timer *timer1, *timer2;
+   Ecore_Animator *animator;
+   Eina_Bool is_animator_cb_called = EINA_FALSE;
+   Eina_Bool is_begin_cb_called = EINA_FALSE;
+   Eina_Bool is_end_cb_called = EINA_FALSE;
+
+   ecore_init();
+
+   ecore_animator_custom_source_tick_begin_callback_set(_animator_called_cb, 
_begin_cb_called);
+   ecore_animator_custom_source_tick_end_callback_set(_animator_called_cb, 
_end_cb_called);
+
+   animator = ecore_animator_add(_animator_cb, _animator_cb_called);
+   fail_if(!animator);
+
+   timer1 = ecore_timer_add(0.01, _switch_cb, NULL);
+   fail_if(!timer1);
+
+   timer2 = ecore_timer_add(0.03, _quit_cb, NULL);
+   fail_if(!timer2);
+
+   ecore_animator_source_set(ECORE_ANIMATOR_SOURCE_CUSTOM);
+   ecore_main_loop_begin();
+   ecore_animator_del(animator);
+
+   fail_if(!is_begin_cb_called);
+   fail_if(!is_end_cb_called);
+   fail_if(!is_animator_cb_called);
+
+   ecore_shutdown();
+}
+END_TEST
+
 void ecore_test_animator(TCase *tc)
 {
   tcase_add_test(tc, ecore_test_animators);
   tcase_add_test(tc, ecore_test_pos_map);
+  tcase_add_test(tc, ecore_test_begin_end_tick);
 }

-- 




Re: [E-devel] [EGIT] [core/efl] master 05/10: eet - fix possible integer overflow in ptr diff on parse

2016-07-13 Thread Cedric BAIL
On Mon, Jul 11, 2016 at 6:25 AM, Carsten Haitzler  wrote:
> raster pushed a commit to branch master.
>
> http://git.enlightenment.org/core/efl.git/commit/?id=679af3271fbc577602fded804dee6fe59748178f
>
> commit 679af3271fbc577602fded804dee6fe59748178f
> Author: Carsten Haitzler (Rasterman) 
> Date:   Mon Jul 11 21:54:57 2016 +0900
>
> eet - fix possible integer overflow in ptr diff on parse
>
> coverity spotted this - with silly long strings (like 1gb in size or+)
> it might happen. fix CID 1256196

This patch seems clearly like a false report fix. end is obviously
inside buf, which is itself a fixed length array of 4096. This test
seems quite unecessary and I would prefer that we mark the problem as
a false positive in coverity.

> ---
>  src/lib/eet/eet_lib.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/src/lib/eet/eet_lib.c b/src/lib/eet/eet_lib.c
> index 4d0dfba..d2c95c2 100644
> --- a/src/lib/eet/eet_lib.c
> +++ b/src/lib/eet/eet_lib.c
> @@ -1757,7 +1757,9 @@ _base64_dec(const char *file, int *size_ret)
>}
>  end = p;
>  // go from line start to (but not including) first invalid char
> -if (((end - buf) > 0) && (((end - buf) % 4) == 0))
> +if (((end - buf) > 0) &&
> +((end - buf) < 0x1fff) && // not too long
> +(((end - buf) % 4) == 0))
>{
>   unsigned char *tmp = malloc((end - buf + 4) * 2);
>
>
> --
>
>
>



-- 
Cedric BAIL

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


[EGIT] [core/enlightenment] master 01/02: Make sure the same keyboard resource doesn't end up on the focus list twice

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

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

commit e32db0e7e3aba07c9a7a04c5634f3e1d1a6e94cd
Author: Derek Foreman 
Date:   Wed Jul 13 16:01:51 2016 -0500

Make sure the same keyboard resource doesn't end up on the focus list twice

This stops recent xdg_popup focus tracking changes from causing multiple
key events to be sent to the focused client.
---
 src/bin/e_comp_wl.c | 17 -
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c
index 7eb6b04..8a3d13f 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -605,6 +605,19 @@ _e_comp_wl_evas_cb_focus_in_timer(E_Client *ec)
return EINA_FALSE;
 }
 
+static Eina_Bool
+_keyboard_resource_add(struct wl_resource *newres)
+{
+  Eina_List *l;
+  struct wl_resource *res;
+
+  EINA_LIST_FOREACH(e_comp_wl->kbd.focused, l, res)
+if (res == newres) return EINA_FALSE;
+
+  e_comp_wl->kbd.focused = eina_list_append(e_comp_wl->kbd.focused, newres);
+  return EINA_TRUE;
+}
+
 static void
 _e_comp_wl_evas_cb_focus_in(void *data, Evas *evas EINA_UNUSED, Evas_Object 
*obj EINA_UNUSED, void *event EINA_UNUSED)
 {
@@ -612,6 +625,7 @@ _e_comp_wl_evas_cb_focus_in(void *data, Evas *evas 
EINA_UNUSED, Evas_Object *obj
struct wl_resource *res;
struct wl_client *wc;
Eina_List *l;
+   int added = 0;
 
if (!(ec = data)) return;
if (e_object_is_del(E_OBJECT(ec))) return;
@@ -641,8 +655,9 @@ _e_comp_wl_evas_cb_focus_in(void *data, Evas *evas 
EINA_UNUSED, Evas_Object *obj
 
EINA_LIST_FOREACH(e_comp_wl->kbd.resources, l, res)
  if (wl_resource_get_client(res) == wc)
-   e_comp_wl->kbd.focused = eina_list_append(e_comp_wl->kbd.focused, res);
+   added |= _keyboard_resource_add(res);
if (!e_comp_wl->kbd.focused) return;
+   if (!added) return;
e_comp_wl_input_keyboard_enter_send(ec);
if (e_comp_util_kbd_grabbed()) return;
e_comp_wl_data_device_keyboard_focus_set();

-- 




[EGIT] [core/enlightenment] master 02/02: Fix xdg_shell focus logic

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

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

commit 248fa6d1e6d2c767dd148ae58d21a448d2162c7d
Author: Derek Foreman 
Date:   Wed Jul 13 16:03:55 2016 -0500

Fix xdg_shell focus logic

Moves and resizes tripped up the new xdg focus logic, so test if the
focus is leaving the client entirely before trying to determine if it's
leaving into a parent surface.
---
 src/bin/e_comp_wl.c | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c
index 8a3d13f..c5ddf32 100644
--- a/src/bin/e_comp_wl.c
+++ b/src/bin/e_comp_wl.c
@@ -681,8 +681,11 @@ _e_comp_wl_keyboard_leave(E_Client *ec)
if (ec->comp_data->is_xdg_surface)
  {
 /* If we left an xdg popup to enter some other (sub)surface
- * of the same top level, we don't need to do anything */
-if (_parent_client_contains_pointer(ec)) return;
+ * of the same top level, we don't need to do anything.
+ * We also test e_client_focused_get() because it will be NULL
+ * on moves which trip up _parent_client_contains_pointer() */
+if (e_client_focused_get() &&
+_parent_client_contains_pointer(ec)) return;
 
 /* We only kbd focus top level xdg */
 while (ec->parent) ec = ec->parent;

-- 




[EGIT] [core/efl] master 02/02: elementary: Make wl frame borders above content

2016-07-13 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 46904e19a71dbeecbcdb6950c0f372c34f6d0db6
Author: Chris Michael 
Date:   Wed Jul 13 15:13:17 2016 -0400

elementary: Make wl frame borders above content

This commit just readds the layer setting code which made the frame
border be above content. This does make sense in some contexts

@fix

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

diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index 71f15a3..3445069 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -3599,12 +3599,12 @@ _elm_win_frame_add(Efl_Ui_Win_Data *sd, const char 
*style)
 {
Evas_Object *obj = sd->obj;
int w, h, mw, mh;
-   /* short layer; */
+   short layer;
 
if (sd->frame_obj) return;
sd->frame_obj = edje_object_add(sd->evas);
-   /* layer = evas_object_layer_get(obj); */
-   /* evas_object_layer_set(sd->frame_obj, layer + 1); */
+   layer = evas_object_layer_get(obj);
+   evas_object_layer_set(sd->frame_obj, layer + 1);
if (!elm_widget_theme_object_set
(sd->obj, sd->frame_obj, "border", "base", style))
  {

-- 




[EGIT] [core/efl] master 01/02: evas-wayland-shm: Create buffers with ARGB by default

2016-07-13 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 91437a342443dbb1e4a7ec7a86e3a9022aed410a
Author: Chris Michael 
Date:   Wed Jul 13 14:43:49 2016 -0400

evas-wayland-shm: Create buffers with ARGB by default

We need to be creating buffers with ARGB by default so that things
like Alpha/Transparency work when toggled. If we always create with
XRGB then toggling Alpha/Transparency state fails.

@fix

Signed-off-by: Chris Michael 
---
 src/modules/evas/engines/wayland_shm/evas_shm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/modules/evas/engines/wayland_shm/evas_shm.c 
b/src/modules/evas/engines/wayland_shm/evas_shm.c
index 690d7a6..92aae08 100644
--- a/src/modules/evas/engines/wayland_shm/evas_shm.c
+++ b/src/modules/evas/engines/wayland_shm/evas_shm.c
@@ -230,7 +230,7 @@ _shm_data_create_from_pool(Shm_Pool *pool, int w, int h, 
Eina_Bool alpha)
 {
Shm_Data *data;
int len, offset;
-   uint32_t wl_format = WL_SHM_FORMAT_XRGB;
+   uint32_t wl_format = WL_SHM_FORMAT_ARGB;
 
LOGFN(__FILE__, __LINE__, __FUNCTION__);
 

-- 




Re: [E-devel] [EGIT] [core/efl] master 01/01: edje: the repeat_events property of swallowed object probably should follow the repeat_events property of swallow part object

2016-07-13 Thread Christopher Michael
On 07/13/2016 01:08 PM, marcel-hollerb...@t-online.de wrote:
> On Wed, Jul 13, 2016 at 08:49:11PM +0900, Carsten Haitzler wrote:
>> On Wed, 13 Jul 2016 08:20:15 +0200 marcel-hollerb...@t-online.de said:
>>
>>> On Wed, Jul 13, 2016 at 08:51:04AM +0900, Carsten Haitzler wrote:
 On Tue, 12 Jul 2016 13:40:33 +0200 marcel-hollerb...@t-online.de said:

> Hello,
>
> this commit breaks wl-apps. They dont receive any mouseinput anymore.
>
> To reproduce, just start terminology in weston.

 actually wl was broken some time ago it seems. the child content was no
 longer swallowed into the border frame as it should have been and thus
 something that should have been harmless was not. devilhorns fixed this
 last night for wl clients.
>>>
>>> No it worked until this commit. The edje object is just resized
>>> efl_ui_win.c:877, it just worked different it was not broken.
>>
>> it was broken. stacking was broken. in x11 if i placed objects UNDER the
>> swallow part then that'd be behind the window content. in wl then EVERYTHING
>> would be above window content due to it not being swallowed. swallowing fixes
>> this. devilhorns even said that it USEd to be swallowed and somehow is no
>> longer swallowed.
>
> Well the biggest things are fixed now.
>
> But, i dont really understand what you mean, all objects are created with the
> window object as parent, which means that all objects have the same layer.
> And honestly, setting the frame layer to one above the window itself,
> (as it was before) does make much sense to me, since you can make sure that
> all content is below the border, so at least the controls of the window are 
> still
> visible, even if things are going wrong.
>

I suppose having the frame border be One layer above does make sense in 
some context ... that can easily be added back in tho.

>>
>>> And still, the commit is not really harmless it breaks behaviour, as you
>>> have seen...
>>
>> this is a behaviour bug. that's my take on it. bug reports are "this does not
>> do what i expect. it does not do what the mouse_events does - ie be explicit 
>> on
>> swallows. it's different". it's a rare enough corner of things where it
>> shouldn't in general create an issue. it ONLY created an issue with wayland
>> because wayland had broken/changed how it swallows/handles window content
>> objects and stopped swallowing into the border object.
>
> Back to the topic of the behaviour change, even if the change is
> good or bad, there is not even a @fix mark so i guess it will not be
> part of the changelog or anything. So from the POV from a api user, its
> a bad change, he doesnt even get told that there was a behaviour change.
>

Yea. That's my fault :/ missed adding the @fix there.

dh

> And once again, this commit wasnt exposing a problem in the wl code. It
> created a problem, the bahviour was there before. It worked. Now it
> doesnt. And its completly the same for every single user which used this
> bahaviour.
>
>>
> Greetings
>bu5hm4n
>
> On Mon, Jul 11, 2016 at 06:53:49PM -0700, Shinwoo Kim wrote:
>> raster pushed a commit to branch master.
>>
>> http://git.enlightenment.org/core/efl.git/commit/?id=c52eda0bf155b11ca137450cb388cd239d434554
>>
>> commit c52eda0bf155b11ca137450cb388cd239d434554
>> Author: Shinwoo Kim 
>> Date:   Tue Jul 12 10:53:27 2016 +0900
>>
>> edje: the repeat_events property of swallowed object probably should
>> follow the repeat_events property of swallow part object
>> Summary: Need discussion about the repeat_events property
>>
>> Test Plan: Swallow an object which has EINA_TRUE repeat_events to a
>> swallow part which has EINA_FALSE repeat_events
>> Reviewers: Hermet, cedric, raster, jpeg
>>
>> Reviewed By: raster, jpeg
>>
>> Subscribers: jaehwan, seoz, woohyun
>>
>> Differential Revision: https://phab.enlightenment.org/D3580
>> ---
>>  src/lib/edje/edje_util.c | 3 +--
>>  1 file changed, 1 insertion(+), 2 deletions(-)
>>
>> diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
>> index 4f82e32..48ee448 100644
>> --- a/src/lib/edje/edje_util.c
>> +++ b/src/lib/edje/edje_util.c
>> @@ -6625,8 +6625,7 @@ _edje_real_part_swallow(Edje *ed,
>> if (rp->part->mouse_events)
>>   {
>>  _edje_callbacks_add(obj_swallow, ed, rp);
>> -if (rp->part->repeat_events)
>> -  evas_object_repeat_events_set(obj_swallow, 1);
>> +evas_object_repeat_events_set(obj_swallow,
>> rp->part->repeat_events); if (rp->part->pointer_mode !=
>> EVAS_OBJECT_POINTER_MODE_AUTOGRAB) evas_object_pointer_mode_set
>> (obj_swallow, rp->part->pointer_mode); evas_object_pass_events_set
>> (obj_swallow, 0);
>>
>> --
>>
>>
>
> 

Re: [E-devel] [EGIT] [tools/eflete] master 02/02: project_manager: temporary fix thread blocking when imported edc contain scripts

2016-07-13 Thread Cedric BAIL
On Wed, Jul 13, 2016 at 3:00 AM, Vitalii Vorobiov
 wrote:
> rimmed pushed a commit to branch master.
>
> http://git.enlightenment.org/tools/eflete.git/commit/?id=e6f5055353da08540421c2a53b49ccfb0131e348
>
> commit e6f5055353da08540421c2a53b49ccfb0131e348
> Author: Vitalii Vorobiov 
> Date:   Wed Jul 13 12:33:49 2016 +0300
>
> project_manager: temporary fix thread blocking when imported edc contain 
> scripts

Now, I do understand your problem. This code is just lucky it ever
worked ! ecore_exe is already asynchronous and no ecore API, except
some of the thread related one, should ever be called from a thread !
Remove all use of Eina_Thread to run Ecore_Exe and you will be fine.

Cedric

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


[EGIT] [tools/eflete] master 01/01: property_group: fix value update in second action

2016-07-13 Thread Andrii Kroitor
rimmed pushed a commit to branch master.

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

commit 99c9e1f36ecee95984c0f875ea77846c96a78b30
Author: Andrii Kroitor 
Date:   Wed Jul 13 19:11:34 2016 +0300

property_group: fix value update in second action
---
 src/bin/ui/property/property.c | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/bin/ui/property/property.c b/src/bin/ui/property/property.c
index 0542746..6deb75d 100644
--- a/src/bin/ui/property/property.c
+++ b/src/bin/ui/property/property.c
@@ -258,6 +258,7 @@ _state_update(void *data)
 void
 property_item_update(Property_Attribute *pa)
 {
+   Eina_Bool res;
assert(pa != NULL);
 
if (!pa->realized) return;
@@ -267,12 +268,14 @@ property_item_update(Property_Attribute *pa)
if (pa->action1.update_cb != NULL)
  {
 DBG("calling update_cb of %s (%s)", pa->name, (pa->action1.name) ? 
pa->action1.name : "unnamed");
-pa->default_is = pa->default_is && pa->action1.update_cb(pa, 
>action1);
+res = pa->action1.update_cb(pa, >action1);
+pa->default_is = pa->default_is && res;
  }
if (pa->action2.update_cb != NULL)
  {
 DBG("calling update_cb of %s (%s)", pa->name, (pa->action2.name) ? 
pa->action2.name : "unnamed");
-pa->default_is = pa->default_is && pa->action2.update_cb(pa, 
>action2);
+res = pa->action2.update_cb(pa, >action2);
+pa->default_is = pa->default_is && res;
  }
 
ecore_job_add(_state_update, pa);

-- 




[EGIT] [core/enlightenment] master 02/02: e_comp_data: NULL out source once it is freed

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

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

commit fde72ce193df31e7de7281dbca13d00eac2ee368
Author: Marcel Hollerbach 
Date:   Wed Jul 13 18:08:02 2016 +0200

e_comp_data: NULL out source once it is freed

Otherwise the pointer is removed when the next drag starts, so this
makes debugging dnd problems easier.
---
 src/bin/e_comp_wl_data.c | 4 
 1 file changed, 4 insertions(+)

diff --git a/src/bin/e_comp_wl_data.c b/src/bin/e_comp_wl_data.c
index 31f7c22..04ccd32 100644
--- a/src/bin/e_comp_wl_data.c
+++ b/src/bin/e_comp_wl_data.c
@@ -373,6 +373,10 @@ _e_comp_wl_data_source_cb_resource_destroy(struct 
wl_resource *resource)
wl_signal_emit(>destroy_signal, source);
 
_mime_types_free(source);
+
+   if (e_comp_wl->drag_source == source)
+ e_comp_wl->drag_source = NULL;
+
free(source);
 }
 

-- 




[EGIT] [core/enlightenment] master 01/02: readme: update keyboard entry

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

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

commit c0353da074101c87ec6ef4aa995ec9e23d808a99
Author: Marcel Hollerbach 
Date:   Wed Jul 13 18:06:45 2016 +0200

readme: update keyboard entry
---
 README.wayland | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/README.wayland b/README.wayland
index 1db040e..2996b97 100644
--- a/README.wayland
+++ b/README.wayland
@@ -90,7 +90,7 @@ Known Issues
  - Requires upstream XWayland improvements
 * The first-launched X11 client will sometimes fail to show
  - Requires upstream XWayland improvements
-* Some issues related to keyboard layout switching
- - Requires various improvements
+* There are not more than 4 keyboard layouts possible
+ - Requires libxkbcommon changes - 
https://github.com/xkbcommon/libxkbcommon/issues/37
 * XWayland crashes on start
  - Requires XWayland release - 
https://bugs.freedesktop.org/show_bug.cgi?id=95337

-- 




Re: [E-devel] [EGIT] [core/efl] master 01/01: edje: the repeat_events property of swallowed object probably should follow the repeat_events property of swallow part object

2016-07-13 Thread marcel-hollerbach
On Wed, Jul 13, 2016 at 08:49:11PM +0900, Carsten Haitzler wrote:
> On Wed, 13 Jul 2016 08:20:15 +0200 marcel-hollerb...@t-online.de said:
> 
> > On Wed, Jul 13, 2016 at 08:51:04AM +0900, Carsten Haitzler wrote:
> > > On Tue, 12 Jul 2016 13:40:33 +0200 marcel-hollerb...@t-online.de said:
> > > 
> > > > Hello, 
> > > > 
> > > > this commit breaks wl-apps. They dont receive any mouseinput anymore.
> > > > 
> > > > To reproduce, just start terminology in weston.
> > > 
> > > actually wl was broken some time ago it seems. the child content was no
> > > longer swallowed into the border frame as it should have been and thus
> > > something that should have been harmless was not. devilhorns fixed this
> > > last night for wl clients.
> > 
> > No it worked until this commit. The edje object is just resized
> > efl_ui_win.c:877, it just worked different it was not broken.
> 
> it was broken. stacking was broken. in x11 if i placed objects UNDER the
> swallow part then that'd be behind the window content. in wl then EVERYTHING
> would be above window content due to it not being swallowed. swallowing fixes
> this. devilhorns even said that it USEd to be swallowed and somehow is no
> longer swallowed.

Well the biggest things are fixed now.

But, i dont really understand what you mean, all objects are created with the 
window object as parent, which means that all objects have the same layer.
And honestly, setting the frame layer to one above the window itself,
(as it was before) does make much sense to me, since you can make sure that 
all content is below the border, so at least the controls of the window are 
still
visible, even if things are going wrong.

> 
> > And still, the commit is not really harmless it breaks behaviour, as you
> > have seen...
> 
> this is a behaviour bug. that's my take on it. bug reports are "this does not
> do what i expect. it does not do what the mouse_events does - ie be explicit 
> on
> swallows. it's different". it's a rare enough corner of things where it
> shouldn't in general create an issue. it ONLY created an issue with wayland
> because wayland had broken/changed how it swallows/handles window content
> objects and stopped swallowing into the border object.

Back to the topic of the behaviour change, even if the change is
good or bad, there is not even a @fix mark so i guess it will not be
part of the changelog or anything. So from the POV from a api user, its
a bad change, he doesnt even get told that there was a behaviour change.

And once again, this commit wasnt exposing a problem in the wl code. It
created a problem, the bahviour was there before. It worked. Now it
doesnt. And its completly the same for every single user which used this
bahaviour.

> 
> > > > Greetings
> > > >bu5hm4n
> > > > 
> > > > On Mon, Jul 11, 2016 at 06:53:49PM -0700, Shinwoo Kim wrote:
> > > > > raster pushed a commit to branch master.
> > > > > 
> > > > > http://git.enlightenment.org/core/efl.git/commit/?id=c52eda0bf155b11ca137450cb388cd239d434554
> > > > > 
> > > > > commit c52eda0bf155b11ca137450cb388cd239d434554
> > > > > Author: Shinwoo Kim 
> > > > > Date:   Tue Jul 12 10:53:27 2016 +0900
> > > > > 
> > > > > edje: the repeat_events property of swallowed object probably 
> > > > > should
> > > > > follow the repeat_events property of swallow part object 
> > > > > Summary: Need discussion about the repeat_events property
> > > > > 
> > > > > Test Plan: Swallow an object which has EINA_TRUE repeat_events to 
> > > > > a
> > > > > swallow part which has EINA_FALSE repeat_events 
> > > > > Reviewers: Hermet, cedric, raster, jpeg
> > > > > 
> > > > > Reviewed By: raster, jpeg
> > > > > 
> > > > > Subscribers: jaehwan, seoz, woohyun
> > > > > 
> > > > > Differential Revision: https://phab.enlightenment.org/D3580
> > > > > ---
> > > > >  src/lib/edje/edje_util.c | 3 +--
> > > > >  1 file changed, 1 insertion(+), 2 deletions(-)
> > > > > 
> > > > > diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
> > > > > index 4f82e32..48ee448 100644
> > > > > --- a/src/lib/edje/edje_util.c
> > > > > +++ b/src/lib/edje/edje_util.c
> > > > > @@ -6625,8 +6625,7 @@ _edje_real_part_swallow(Edje *ed,
> > > > > if (rp->part->mouse_events)
> > > > >   {
> > > > >  _edje_callbacks_add(obj_swallow, ed, rp);
> > > > > -if (rp->part->repeat_events)
> > > > > -  evas_object_repeat_events_set(obj_swallow, 1);
> > > > > +evas_object_repeat_events_set(obj_swallow,
> > > > > rp->part->repeat_events); if (rp->part->pointer_mode !=
> > > > > EVAS_OBJECT_POINTER_MODE_AUTOGRAB) evas_object_pointer_mode_set
> > > > > (obj_swallow, rp->part->pointer_mode); evas_object_pass_events_set
> > > > > (obj_swallow, 0);
> > > > > 
> > > > > -- 
> > > > > 
> > > > > 
> > > > 
> > > > --
> > > > What NetFlow Analyzer can do for you? Monitors 

Re: [E-devel] [EGIT] [core/efl] master 01/01: edje: the repeat_events property of swallowed object probably should follow the repeat_events property of swallow part object

2016-07-13 Thread The Rasterman
On Wed, 13 Jul 2016 08:20:15 +0200 marcel-hollerb...@t-online.de said:

> On Wed, Jul 13, 2016 at 08:51:04AM +0900, Carsten Haitzler wrote:
> > On Tue, 12 Jul 2016 13:40:33 +0200 marcel-hollerb...@t-online.de said:
> > 
> > > Hello, 
> > > 
> > > this commit breaks wl-apps. They dont receive any mouseinput anymore.
> > > 
> > > To reproduce, just start terminology in weston.
> > 
> > actually wl was broken some time ago it seems. the child content was no
> > longer swallowed into the border frame as it should have been and thus
> > something that should have been harmless was not. devilhorns fixed this
> > last night for wl clients.
> 
> No it worked until this commit. The edje object is just resized
> efl_ui_win.c:877, it just worked different it was not broken.

it was broken. stacking was broken. in x11 if i placed objects UNDER the
swallow part then that'd be behind the window content. in wl then EVERYTHING
would be above window content due to it not being swallowed. swallowing fixes
this. devilhorns even said that it USEd to be swallowed and somehow is no
longer swallowed.

> And still, the commit is not really harmless it breaks behaviour, as you
> have seen...

this is a behaviour bug. that's my take on it. bug reports are "this does not
do what i expect. it does not do what the mouse_events does - ie be explicit on
swallows. it's different". it's a rare enough corner of things where it
shouldn't in general create an issue. it ONLY created an issue with wayland
because wayland had broken/changed how it swallows/handles window content
objects and stopped swallowing into the border object.

> > > Greetings
> > >bu5hm4n
> > > 
> > > On Mon, Jul 11, 2016 at 06:53:49PM -0700, Shinwoo Kim wrote:
> > > > raster pushed a commit to branch master.
> > > > 
> > > > http://git.enlightenment.org/core/efl.git/commit/?id=c52eda0bf155b11ca137450cb388cd239d434554
> > > > 
> > > > commit c52eda0bf155b11ca137450cb388cd239d434554
> > > > Author: Shinwoo Kim 
> > > > Date:   Tue Jul 12 10:53:27 2016 +0900
> > > > 
> > > > edje: the repeat_events property of swallowed object probably should
> > > > follow the repeat_events property of swallow part object 
> > > > Summary: Need discussion about the repeat_events property
> > > > 
> > > > Test Plan: Swallow an object which has EINA_TRUE repeat_events to a
> > > > swallow part which has EINA_FALSE repeat_events 
> > > > Reviewers: Hermet, cedric, raster, jpeg
> > > > 
> > > > Reviewed By: raster, jpeg
> > > > 
> > > > Subscribers: jaehwan, seoz, woohyun
> > > > 
> > > > Differential Revision: https://phab.enlightenment.org/D3580
> > > > ---
> > > >  src/lib/edje/edje_util.c | 3 +--
> > > >  1 file changed, 1 insertion(+), 2 deletions(-)
> > > > 
> > > > diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
> > > > index 4f82e32..48ee448 100644
> > > > --- a/src/lib/edje/edje_util.c
> > > > +++ b/src/lib/edje/edje_util.c
> > > > @@ -6625,8 +6625,7 @@ _edje_real_part_swallow(Edje *ed,
> > > > if (rp->part->mouse_events)
> > > >   {
> > > >  _edje_callbacks_add(obj_swallow, ed, rp);
> > > > -if (rp->part->repeat_events)
> > > > -  evas_object_repeat_events_set(obj_swallow, 1);
> > > > +evas_object_repeat_events_set(obj_swallow,
> > > > rp->part->repeat_events); if (rp->part->pointer_mode !=
> > > > EVAS_OBJECT_POINTER_MODE_AUTOGRAB) evas_object_pointer_mode_set
> > > > (obj_swallow, rp->part->pointer_mode); evas_object_pass_events_set
> > > > (obj_swallow, 0);
> > > > 
> > > > -- 
> > > > 
> > > > 
> > > 
> > > --
> > > What NetFlow Analyzer can do for you? Monitors network bandwidth and
> > > traffic patterns at an interface-level. Reveals which users, apps, and
> > > protocols are consuming the most bandwidth. Provides multi-vendor support
> > > for NetFlow, J-Flow, sFlow and other flows. Make informed decisions using
> > > capacity planning reports.http://sdm.link/zohodev2dev
> > > ___
> > > 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
> > 
> 


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


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning

Re: [E-devel] [EGIT] [core/efl] master 01/01: edje: the repeat_events property of swallowed object probably should follow the repeat_events property of swallow part object

2016-07-13 Thread marcel-hollerbach
On Wed, Jul 13, 2016 at 08:51:04AM +0900, Carsten Haitzler wrote:
> On Tue, 12 Jul 2016 13:40:33 +0200 marcel-hollerb...@t-online.de said:
> 
> > Hello, 
> > 
> > this commit breaks wl-apps. They dont receive any mouseinput anymore.
> > 
> > To reproduce, just start terminology in weston.
> 
> actually wl was broken some time ago it seems. the child content was no longer
> swallowed into the border frame as it should have been and thus something that
> should have been harmless was not. devilhorns fixed this last night for wl
> clients.

No it worked until this commit. The edje object is just resized
efl_ui_win.c:877, it just worked different it was not broken.

And still, the commit is not really harmless it breaks behaviour, as you
have seen...

> 
> > Greetings
> >bu5hm4n
> > 
> > On Mon, Jul 11, 2016 at 06:53:49PM -0700, Shinwoo Kim wrote:
> > > raster pushed a commit to branch master.
> > > 
> > > http://git.enlightenment.org/core/efl.git/commit/?id=c52eda0bf155b11ca137450cb388cd239d434554
> > > 
> > > commit c52eda0bf155b11ca137450cb388cd239d434554
> > > Author: Shinwoo Kim 
> > > Date:   Tue Jul 12 10:53:27 2016 +0900
> > > 
> > > edje: the repeat_events property of swallowed object probably should
> > > follow the repeat_events property of swallow part object 
> > > Summary: Need discussion about the repeat_events property
> > > 
> > > Test Plan: Swallow an object which has EINA_TRUE repeat_events to a
> > > swallow part which has EINA_FALSE repeat_events 
> > > Reviewers: Hermet, cedric, raster, jpeg
> > > 
> > > Reviewed By: raster, jpeg
> > > 
> > > Subscribers: jaehwan, seoz, woohyun
> > > 
> > > Differential Revision: https://phab.enlightenment.org/D3580
> > > ---
> > >  src/lib/edje/edje_util.c | 3 +--
> > >  1 file changed, 1 insertion(+), 2 deletions(-)
> > > 
> > > diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
> > > index 4f82e32..48ee448 100644
> > > --- a/src/lib/edje/edje_util.c
> > > +++ b/src/lib/edje/edje_util.c
> > > @@ -6625,8 +6625,7 @@ _edje_real_part_swallow(Edje *ed,
> > > if (rp->part->mouse_events)
> > >   {
> > >  _edje_callbacks_add(obj_swallow, ed, rp);
> > > -if (rp->part->repeat_events)
> > > -  evas_object_repeat_events_set(obj_swallow, 1);
> > > +evas_object_repeat_events_set(obj_swallow,
> > > rp->part->repeat_events); if (rp->part->pointer_mode !=
> > > EVAS_OBJECT_POINTER_MODE_AUTOGRAB) evas_object_pointer_mode_set
> > > (obj_swallow, rp->part->pointer_mode); evas_object_pass_events_set
> > > (obj_swallow, 0);
> > > 
> > > -- 
> > > 
> > > 
> > 
> > --
> > What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
> > patterns at an interface-level. Reveals which users, apps, and protocols 
> > are 
> > consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
> > J-Flow, sFlow and other flows. Make informed decisions using capacity 
> > planning
> > reports.http://sdm.link/zohodev2dev
> > ___
> > 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
> 

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


[E-devel] Reminder about upcoming freeze for 1.18

2016-07-13 Thread Stefan Schmidt
Hello.


We revised the 1.18 schedule and we will now start the freeze 18.07, 
next Monday.

Please make sure all the feature you want in 1.18 have landed before 
that day.

The updated schedule, with the hopefully shorted stabilization period, 
can be found here:

https://phab.enlightenment.org/w/efl_and_elementary_1_18/

regards

Stefan Schmidt



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


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

2016-07-13 Thread Stefan Schmidt
Hello.

Summary:
o Raster, JP, Chris, Derek and others had a good run on Coverity 
defetcs. These are not even the lastest numbers (next analysis should 
happen tomorrow)
o Our pending patches queue also dropped nicely

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

CI:
o Overall build statistic: 9.91% (10.64%) failed.
https://build.enlightenment.org/

Unit tests:
o 839 (847) unit tests for efl

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

Coverity:
o EFL: Outstanding defects 144 (178) with a density of 0.13 (0.17)
o Enlightenment: Outstanding defects 1 (1) with a density of 0 (0)
o Terminology: Outstanding defects 0 (0) with a density of 0 (0)
o Rage: Outstanding defects 0 (0) with a density of 0 (0)

Phab:
o Total bug count: 955 (945)
https://phab.enlightenment.org/maniphest/report/burn/
o Pending patch reviews: 95 (116)

regards
Stefan Schmidt

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


Re: [E-devel] 1.18, a new plan

2016-07-13 Thread Stefan Schmidt
Hello.


On 08/07/16 10:55, Stefan Schmidt wrote:
> Hello.
>
>
> On 08/07/16 04:20, Carsten Haitzler (The Rasterman) wrote:
>> On Thu, 7 Jul 2016 10:38:25 +0200 Stefan Schmidt 
>>  said:
>>
>>> Hello.
>>>
>>>
>>> Nobody can be fooled here, we are late. :-)
>> yeah... but hey - we dont GUARANTEE release dates. having timelines for
>> development is 90%+ of the time wrong because someone asks "how long 
>> will it
>> take to do this currently not well known amount of work that you have 
>> never
>> done before with a changing amount of resources?". :)
>>
>>> While the big merges of Elementary, Evas Generic Loaders and emotion
>>> Generic Players went better that I expected we are running out of time
>>> for interfaces.
>> yeah. still a few big things left and a fair few little things. :)
>>
>>> We delayed and hoped we would get in done and could still put it into
>>> 1.18, but looking at it now that seems impossible, if we do not want to
>>> delay even longer.
>>>
>>>
>>> So here is the new plan.
>>>
>>> o If you have some loose ends with a _realistic_ chance to get fixed 
>>> you
>>> have the next week for this.
>> sounds reasonable
>>
>>> o We switch EO and all interfaces back into BETA, all new code stays as
>>> is but is not officially released.
>> yup. not marked as stable.
>>
>>> o I will do the hard freeze and alpha release on Monday 18.07 
>>> (tentative
>>> date).
>> sounds good.
>>
>>> o After that we try our normal 4 weeks stabilization window (my glass
>>> ball is a bit dusty so I have a hard time to predict if 4 weeks are
>>> enough here)
>> if we can do it faster i'd be happy. i'm already going over bug 
>> tickets and
>> doing fixes. :)
>>
>>> Any objections or comments?
>> nope. other than maybe we can freeze faster
>
> I understand it here you want a faster stabilization period not an 
> earlier freeze.
> We can try that. In the end it depends on show stoppers left. If we 
> get all of that sorted out quickly we can cut a week I would say.
>
>
> What we could try would be:
> 18.07 Freeze / alpha tarballs
> 25.07 Beta 1
> 01.08 Beta 2 / or final if no show stoppers are left
> 08.08 Final if no show stoppers are left
>
> If we have still have problems around at that time we could delay for 
> some further days. Just as we handled this with the 3 months time 
> based releases.


I heard no complains here. Lets go ahead with it. I updated the wiki 
accordingly and I#m going to send out a freeze reminder mail now.
https://phab.enlightenment.org/w/efl_and_elementary_1_18/

regards
Stefan Schmidt

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


Re: [E-devel] [EGIT] [core/efl] master 01/01: edje: the repeat_events property of swallowed object probably should follow the repeat_events property of swallow part object

2016-07-13 Thread The Rasterman
On Tue, 12 Jul 2016 13:40:33 +0200 marcel-hollerb...@t-online.de said:

> Hello, 
> 
> this commit breaks wl-apps. They dont receive any mouseinput anymore.
> 
> To reproduce, just start terminology in weston.

actually wl was broken some time ago it seems. the child content was no longer
swallowed into the border frame as it should have been and thus something that
should have been harmless was not. devilhorns fixed this last night for wl
clients.

> Greetings
>bu5hm4n
> 
> On Mon, Jul 11, 2016 at 06:53:49PM -0700, Shinwoo Kim wrote:
> > raster pushed a commit to branch master.
> > 
> > http://git.enlightenment.org/core/efl.git/commit/?id=c52eda0bf155b11ca137450cb388cd239d434554
> > 
> > commit c52eda0bf155b11ca137450cb388cd239d434554
> > Author: Shinwoo Kim 
> > Date:   Tue Jul 12 10:53:27 2016 +0900
> > 
> > edje: the repeat_events property of swallowed object probably should
> > follow the repeat_events property of swallow part object 
> > Summary: Need discussion about the repeat_events property
> > 
> > Test Plan: Swallow an object which has EINA_TRUE repeat_events to a
> > swallow part which has EINA_FALSE repeat_events 
> > Reviewers: Hermet, cedric, raster, jpeg
> > 
> > Reviewed By: raster, jpeg
> > 
> > Subscribers: jaehwan, seoz, woohyun
> > 
> > Differential Revision: https://phab.enlightenment.org/D3580
> > ---
> >  src/lib/edje/edje_util.c | 3 +--
> >  1 file changed, 1 insertion(+), 2 deletions(-)
> > 
> > diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
> > index 4f82e32..48ee448 100644
> > --- a/src/lib/edje/edje_util.c
> > +++ b/src/lib/edje/edje_util.c
> > @@ -6625,8 +6625,7 @@ _edje_real_part_swallow(Edje *ed,
> > if (rp->part->mouse_events)
> >   {
> >  _edje_callbacks_add(obj_swallow, ed, rp);
> > -if (rp->part->repeat_events)
> > -  evas_object_repeat_events_set(obj_swallow, 1);
> > +evas_object_repeat_events_set(obj_swallow,
> > rp->part->repeat_events); if (rp->part->pointer_mode !=
> > EVAS_OBJECT_POINTER_MODE_AUTOGRAB) evas_object_pointer_mode_set
> > (obj_swallow, rp->part->pointer_mode); evas_object_pass_events_set
> > (obj_swallow, 0);
> > 
> > -- 
> > 
> > 
> 
> --
> What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
> patterns at an interface-level. Reveals which users, apps, and protocols are 
> consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
> J-Flow, sFlow and other flows. Make informed decisions using capacity planning
> reports.http://sdm.link/zohodev2dev
> ___
> 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


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


Re: [E-devel] [EGIT] [core/efl] master 01/01: edje: the repeat_events property of swallowed object probably should follow the repeat_events property of swallow part object

2016-07-13 Thread Kim Shinwoo
oops... wayland application.. yes this commit could have compatability
issue. Why does it happen only for wl-app.. :/ do I have revert this commit?
2016. 7. 12. 오후 8:41에 님이 작성:

Hello,

this commit breaks wl-apps. They dont receive any mouseinput anymore.

To reproduce, just start terminology in weston.

Greetings
   bu5hm4n

On Mon, Jul 11, 2016 at 06:53:49PM -0700, Shinwoo Kim wrote:
> raster pushed a commit to branch master.
>
>
http://git.enlightenment.org/core/efl.git/commit/?id=c52eda0bf155b11ca137450cb388cd239d434554
>
> commit c52eda0bf155b11ca137450cb388cd239d434554
> Author: Shinwoo Kim 
> Date:   Tue Jul 12 10:53:27 2016 +0900
>
> edje: the repeat_events property of swallowed object probably should
follow the repeat_events property of swallow part object
>
> Summary: Need discussion about the repeat_events property
>
> Test Plan: Swallow an object which has EINA_TRUE repeat_events to a
swallow part which has EINA_FALSE repeat_events
>
> Reviewers: Hermet, cedric, raster, jpeg
>
> Reviewed By: raster, jpeg
>
> Subscribers: jaehwan, seoz, woohyun
>
> Differential Revision: https://phab.enlightenment.org/D3580
> ---
>  src/lib/edje/edje_util.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
> index 4f82e32..48ee448 100644
> --- a/src/lib/edje/edje_util.c
> +++ b/src/lib/edje/edje_util.c
> @@ -6625,8 +6625,7 @@ _edje_real_part_swallow(Edje *ed,
> if (rp->part->mouse_events)
>   {
>  _edje_callbacks_add(obj_swallow, ed, rp);
> -if (rp->part->repeat_events)
> -  evas_object_repeat_events_set(obj_swallow, 1);
> +evas_object_repeat_events_set(obj_swallow,
rp->part->repeat_events);
>  if (rp->part->pointer_mode != EVAS_OBJECT_POINTER_MODE_AUTOGRAB)
>evas_object_pointer_mode_set(obj_swallow,
rp->part->pointer_mode);
>  evas_object_pass_events_set(obj_swallow, 0);
>
> --
>
>

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


[EGIT] [website/www-content] master 01/01: about enventor: updated content

2016-07-13 Thread Hermet Park
hermet pushed a commit to branch master.

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

commit 63eb585c8712ed9a7a780b05831d67e2636fc58c
Author: Hermet Park 
Date:   Thu Jul 14 00:59:53 2016 +0900

about enventor: updated content
---
 media/enventor-liveedit1.png | Bin 0 -> 100405 bytes
 media/enventor-liveedit2.png | Bin 0 -> 30282 bytes
 media/enventor-liveedit3.png | Bin 0 -> 24855 bytes
 media/enventor-liveedit4.png | Bin 0 -> 24174 bytes
 media/enventor-liveedit5.png | Bin 0 -> 28513 bytes
 media/enventor-liveedit6.png | Bin 0 -> 31751 bytes
 pages/about-enventor.txt | 108 +--
 7 files changed, 83 insertions(+), 25 deletions(-)

diff --git a/media/enventor-liveedit1.png b/media/enventor-liveedit1.png
new file mode 100644
index 000..aeaa7cc
Binary files /dev/null and b/media/enventor-liveedit1.png differ
diff --git a/media/enventor-liveedit2.png b/media/enventor-liveedit2.png
new file mode 100644
index 000..a96fea8
Binary files /dev/null and b/media/enventor-liveedit2.png differ
diff --git a/media/enventor-liveedit3.png b/media/enventor-liveedit3.png
new file mode 100644
index 000..78b96ce
Binary files /dev/null and b/media/enventor-liveedit3.png differ
diff --git a/media/enventor-liveedit4.png b/media/enventor-liveedit4.png
new file mode 100644
index 000..907700b
Binary files /dev/null and b/media/enventor-liveedit4.png differ
diff --git a/media/enventor-liveedit5.png b/media/enventor-liveedit5.png
new file mode 100644
index 000..588fd2b
Binary files /dev/null and b/media/enventor-liveedit5.png differ
diff --git a/media/enventor-liveedit6.png b/media/enventor-liveedit6.png
new file mode 100644
index 000..5dbf0e3
Binary files /dev/null and b/media/enventor-liveedit6.png differ
diff --git a/pages/about-enventor.txt b/pages/about-enventor.txt
index 5ede5d6..fc552da 100644
--- a/pages/about-enventor.txt
+++ b/pages/about-enventor.txt
@@ -17,16 +17,15 @@ Basically, Enventor view is divided into 2 sections, live 
view and text view. Th
 
   * Enventor Layout
   * Text View
-  * Live View
   * EDC Navigator
+  * Interactive Feedback
+  * Live Edit
   * File Browser
   * File Tab
-  * Interactive Feedback
   * Tool Functions
   * Configuration Setting
-  * Help
 
-==Enventor Layout==
+===Enventor Layout===
 
 {{ :enventor-layout.png?&350|}}
 
@@ -41,7 +40,7 @@ The following figure illustrates each layout section of 
Enventor.
   * White: File tab
   * Yellow: Status bar
 
-==Text View==
+===Text View===
 
 Enventor text view mainly supports text editing. You can write and modify EDC 
source code in this view. Once part sections are written in the text view and 
the modified EDC source code is saved, preview images corresponding to the part 
objects of the EDC source code are displayed in the live view. Basically, this 
text editor applys syntax color and auto indentation for EDC with its one 
standard rule. If you open an edc file which doesn't matched with Enventor 
indentation rule, Enventor a [...]
 
@@ -49,7 +48,8 @@ Furthermore, Text view supports the following fancy features:
 
 {{ :enventor-autocomplete.png?&150|}}
 
-  * Auto-complete
+
+==Auto-complete==
 
 To help you write EDC source code, Text view supports auto-complete function 
which lists the reserved keywords in a contextual pop-up.
 
@@ -57,27 +57,31 @@ When you enter a part of a reserved keyword, a contextual 
pop-up comes up with a
 
 You can also use auto-complete as context help. Press "Ctrl+Space" key 
combination to show a list of available keywords in the current cursor position 
context.
 
-{{ :enventor-candidate.png?&300|}}
 
-  * Candidate list
+{{:enventor-candidate.png?&300 |}}
+
+==Candidate list==
 
 The EDC script provides a variety of pre-defined keywords including part 
object types and program action types. To edit the keywords easier, text view 
supports a candidate list function for the keywords. When you double-click a 
keyword in the text view, the available candidate keyword list based on the 
context pops up. If you select one of the candidate keywords, the 
double-clicked keyword is changed to the selected one.
 
 The candidate list function also helps you to know the available range of the 
numeric values based on the context. The numeric candidate function shows the 
range of the available number. While you are dragging the slider, Enventor 
updates the preview instantly.
 
+
 {{ :enventor-colorselector.png?&150|}}
 
-  * Color selector
+==Color selector==
 
 To change color values, use the color selector tool. Each time when the 
"color" keyword is double-clicked, it displays the color selector.
 
-  * Zooming text
+
+==Zooming text==
 
 Zooming in/out text view area changes the font size relative to the zoom 
factor. This action can be done by "Ctrl+Mouse Wheel Up/Down" or changed font 
size inside Text Editor Setting (Settings -> Text Editor -> Font Size).
 

[EGIT] [core/efl] master 01/02: ethumb: tell the user if the connection to the deamon failed

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

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

commit a393a90ccc18462b4886793109c3ca24fcc6b08e
Author: Marcel Hollerbach 
Date:   Mon Jul 11 22:59:55 2016 +0200

ethumb: tell the user if the connection to the deamon failed

otherwise the user just gets no thumbnails, and no error message what
actually happened.
---
 src/lib/ethumb_client/ethumb_client.c | 18 +-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/src/lib/ethumb_client/ethumb_client.c 
b/src/lib/ethumb_client/ethumb_client.c
index 55b22f6..e5919f7 100644
--- a/src/lib/ethumb_client/ethumb_client.c
+++ b/src/lib/ethumb_client/ethumb_client.c
@@ -544,6 +544,17 @@ ethumb_client_shutdown(void)
return _initcount;
 }
 
+static void
+_name_start(void *data EINA_UNUSED, const Eldbus_Message *msg, Eldbus_Pending 
*pending EINA_UNUSED)
+{
+   const char *name, *text;
+   if (eldbus_message_error_get(msg, , ))
+ {
+ERR("Starting ethumb failed %s %s", name, text);
+return;
+ }
+}
+
 /**
  * Connects to Ethumb server and return the client instance.
  *
@@ -615,7 +626,12 @@ ethumb_client_connect(Ethumb_Client_Connect_Cb connect_cb, 
const void *data, Ein
 goto connection_err;
  }
 
-   eldbus_name_start(eclient->conn, _ethumb_dbus_bus_name, 0, NULL, NULL);
+   if (!eldbus_name_start(eclient->conn, _ethumb_dbus_bus_name, 0, 
_name_start, NULL))
+ {
+ERR("Failed to start ethumb bus");
+goto connection_err;
+ }
+
eldbus_name_owner_changed_callback_add(eclient->conn, _ethumb_dbus_bus_name,
  _ethumb_client_name_owner_changed,
  eclient, EINA_TRUE);

-- 




[EGIT] [core/efl] master 02/02: ecore_wl2: clear out read_data and len

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

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

commit 67917c27fe1279e76b752504909dc66ed662607f
Author: Marcel Hollerbach 
Date:   Wed Jul 13 17:38:05 2016 +0200

ecore_wl2: clear out read_data and len

they are passed to the event struct, and later freed in there.
---
 src/lib/ecore_wl2/ecore_wl2_dnd.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/lib/ecore_wl2/ecore_wl2_dnd.c 
b/src/lib/ecore_wl2/ecore_wl2_dnd.c
index 7e17d86..414bfc4 100644
--- a/src/lib/ecore_wl2/ecore_wl2_dnd.c
+++ b/src/lib/ecore_wl2/ecore_wl2_dnd.c
@@ -257,7 +257,9 @@ _selection_data_read(void *data, Ecore_Fd_Handler *fdh)
 source->fdh = NULL;
 
 event->data = source->read_data;
+source->read_data = NULL;
 event->len = source->len;
+source->len = 0;
 if (source->input->drag.source)
   ecore_event_add(ECORE_WL2_EVENT_DND_DATA_READY, event,
   _selection_data_ready_cb_free, NULL);

-- 




[EGIT] [core/efl] master 01/01: elput: Cleanup erroneous errors when trying to get output name

2016-07-13 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 2437d5327806c3b1c489adf4e78018a7bcfa4ced
Author: Chris Michael 
Date:   Wed Jul 13 11:40:12 2016 -0400

elput: Cleanup erroneous errors when trying to get output name

When we make calls to get an Input device's output name, if the device
does not have an output name it's not actually an error so just return
NULL with less noise

@fix

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

diff --git a/src/lib/elput/elput_input.c b/src/lib/elput/elput_input.c
index 5b2b1c5..daa3675 100644
--- a/src/lib/elput/elput_input.c
+++ b/src/lib/elput/elput_input.c
@@ -634,7 +634,7 @@ EAPI Eina_Stringshare *
 elput_input_device_output_name_get(Elput_Device *device)
 {
EINA_SAFETY_ON_NULL_RETURN_VAL(device, NULL);
-   EINA_SAFETY_ON_NULL_RETURN_VAL(device->output_name, NULL);
 
+   if (!device->output_name) return NULL;
return eina_stringshare_ref(device->output_name);
 }

-- 




[EGIT] [core/enlightenment] master 01/01: set unmax flag for xdg shell unmaximize

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

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

commit 5546c2a425b72ab01b4007697f88517910dc874b
Author: Mike Blumenkrantz 
Date:   Wed Jul 13 11:26:16 2016 -0400

set unmax flag for xdg shell unmaximize

ref b5576dbb8c98934ab0e8c5ff59bed106c02d9874
---
 src/modules/wl_desktop_shell/e_mod_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/modules/wl_desktop_shell/e_mod_main.c 
b/src/modules/wl_desktop_shell/e_mod_main.c
index 676736a..3c3a0d0 100644
--- a/src/modules/wl_desktop_shell/e_mod_main.c
+++ b/src/modules/wl_desktop_shell/e_mod_main.c
@@ -1065,7 +1065,7 @@ _e_xdg_shell_surface_cb_maximized_unset(struct wl_client 
*client EINA_UNUSED, st
if (e_object_is_del(E_OBJECT(ec))) return;
 
if (ec->lock_user_maximize) return;
-   ec->comp_data->max = (e_config->maximize_policy & E_MAXIMIZE_TYPE) | 
E_MAXIMIZE_BOTH;
+   ec->comp_data->unmax = (e_config->maximize_policy & E_MAXIMIZE_TYPE) | 
E_MAXIMIZE_BOTH;
if (e_config->window_maximize_animate && (!ec->maximize_anims_disabled))
  w = ec->w, h = ec->h;
else

-- 




[EGIT] [tools/eflete] master 01/01: property_group: hide colors block for textblock

2016-07-13 Thread Andrii Kroitor
rimmed pushed a commit to branch master.

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

commit d8cdb5a911352d918ee01e5cd0da207454b6563e
Author: Andrii Kroitor 
Date:   Wed Jul 13 17:51:52 2016 +0300

property_group: hide colors block for textblock
---
 src/bin/ui/property/property_group.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/ui/property/property_group.c 
b/src/bin/ui/property/property_group.c
index 3c81295..4e592a8 100644
--- a/src/bin/ui/property/property_group.c
+++ b/src/bin/ui/property/property_group.c
@@ -5150,7 +5150,7 @@ _init_items()
   IT.expandable = true;
   IT.expanded = true;
   IT.expand_cb = _subitems_get;
-  IT.filter_data.part_types &= ~PART_SPACER & ~PART_SWALLOW;
+  IT.filter_data.part_types &= ~PART_SPACER & ~PART_SWALLOW & 
~PART_TEXTBLOCK;
   break;
case PROPERTY_GROUP_ITEM_STATE_COLORS_COLOR_CLASS:
   IT.name = "Color class";

-- 




[EGIT] [core/efl] master 01/02: evas-generic: Fix gcc warning of incorrect format

2016-07-13 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit ea7fe4efdc11fef405b906d628f39d4c80c3fb5c
Author: Chris Michael 
Date:   Wed Jul 13 10:05:03 2016 -0400

evas-generic: Fix gcc warning of incorrect format

Gcc warns us about using %d here when the argument is unsigned long.
Fix format params.

@fix

Signed-off-by: Chris Michael 
---
 src/generic/evas/ps/main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/generic/evas/ps/main.c b/src/generic/evas/ps/main.c
index c5b8a18..d069e77 100644
--- a/src/generic/evas/ps/main.c
+++ b/src/generic/evas/ps/main.c
@@ -280,7 +280,7 @@ main(int argc, char **argv)
{
   // nothing much to do, the receiver will simply ignore the
   // data as it's too short
-  D("fwrite failed (%d bytes): %m\n", width * height * 
sizeof(DATA32));
+  D("fwrite failed (%lu bytes): %m\n", width * height * 
sizeof(DATA32));
}
   }
 shm_free();

-- 




[EGIT] [core/efl] master 02/02: evas-generic: Fix gcc wanring

2016-07-13 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit e3b00d37b7abaa83b0f927130b230553091e8801
Author: Chris Michael 
Date:   Wed Jul 13 10:06:12 2016 -0400

evas-generic: Fix gcc wanring

Gcc suggets parens around comparison value. Silence gcc warning.

@fix

Signed-off-by: Chris Michael 
---
 src/generic/evas/pdf/main.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/generic/evas/pdf/main.cpp b/src/generic/evas/pdf/main.cpp
index eab137b..71d016c 100644
--- a/src/generic/evas/pdf/main.cpp
+++ b/src/generic/evas/pdf/main.cpp
@@ -166,7 +166,7 @@ void poppler_load_image(int size_w EINA_UNUSED, int size_h 
EINA_UNUSED)
   int bit = x & 0x7;
   int c = (*src & (1 << bit)) ? 0xFF : 0x00;
   *dst++ = ARGB_JOIN(0xFF, c, c, c);
-  if (x & 0x7 == 0x7) src++;
+  if ((x & 0x7) == 0x7) src++;
}
   }
  }

-- 




[EGIT] [website/www-content] master 01/01: about enventor: updated content.

2016-07-13 Thread Hermet Park
hermet pushed a commit to branch master.

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

commit aee2cd92fe54e42f0e59f6e3ba320f02e05b7ede
Author: Hermet Park 
Date:   Wed Jul 13 23:02:20 2016 +0900

about enventor: updated content.
---
 media/enventor-about.png | Bin 78655 -> 0 bytes
 media/enventor-candidate.png | Bin 33755 -> 63786 bytes
 media/enventor-errors.png| Bin 0 -> 81110 bytes
 media/enventor-navigator.png | Bin 0 -> 74370 bytes
 media/enventor-slider.png| Bin 34042 -> 0 bytes
 media/enventor-text-zoom.png | Bin 100624 -> 0 bytes
 pages/about-enventor.txt |  66 ---
 7 files changed, 44 insertions(+), 22 deletions(-)

diff --git a/media/enventor-about.png b/media/enventor-about.png
deleted file mode 100644
index ae63efa..000
Binary files a/media/enventor-about.png and /dev/null differ
diff --git a/media/enventor-candidate.png b/media/enventor-candidate.png
index 480c4e9..47cb9a2 100644
Binary files a/media/enventor-candidate.png and b/media/enventor-candidate.png 
differ
diff --git a/media/enventor-errors.png b/media/enventor-errors.png
new file mode 100644
index 000..f03b36b
Binary files /dev/null and b/media/enventor-errors.png differ
diff --git a/media/enventor-navigator.png b/media/enventor-navigator.png
new file mode 100644
index 000..fc0515b
Binary files /dev/null and b/media/enventor-navigator.png differ
diff --git a/media/enventor-slider.png b/media/enventor-slider.png
deleted file mode 100644
index 04fd629..000
Binary files a/media/enventor-slider.png and /dev/null differ
diff --git a/media/enventor-text-zoom.png b/media/enventor-text-zoom.png
deleted file mode 100644
index ce5..000
Binary files a/media/enventor-text-zoom.png and /dev/null differ
diff --git a/pages/about-enventor.txt b/pages/about-enventor.txt
index 3668627..5ede5d6 100644
--- a/pages/about-enventor.txt
+++ b/pages/about-enventor.txt
@@ -13,23 +13,24 @@ When your application requires realtime changeable layouts 
like animative ones,
 
 === About Enventor ===
 
-{{:enventor-about.png?&200 |}}
-
 Basically, Enventor view is divided into 2 sections, live view and text view. 
The live view is the left pane of Enventor window and it previews images 
corresponding to the part objects of the EDC source code. The text view is the 
right pane of Enventor window and it contains the EDC source code. Thanks to 
its realtime updation mechanism, Enventor updates the preview on realtime while 
you are modifying the source code that helps you to see the result on the spot. 
Other than that, Enventor [...]
 
   * Enventor Layout
-  * Using Text View
-  * Using Live View
-  * Using EDC Navigator
+  * Text View
+  * Live View
+  * EDC Navigator
+  * File Browser
+  * File Tab
   * Interactive Feedback
   * Tool Functions
   * Configuration Setting
+  * Help
 
 ==Enventor Layout==
 
-The following figure illustrates each layout section of Enventor.
+{{ :enventor-layout.png?&350|}}
 
-{{ :enventor-layout.png?&400|}}
+The following figure illustrates each layout section of Enventor.
 
   * Red: Toolbar
   * Cyan: File browser
@@ -40,9 +41,9 @@ The following figure illustrates each layout section of 
Enventor.
   * White: File tab
   * Yellow: Status bar
 
-==Using Text View==
+==Text View==
 
-Enventor text view mainly supports text editing. You can write and modify EDC 
source code in this view. Once part sections are written in the text view and 
the modified EDC source code is saved, preview images corresponding to the part 
objects of the EDC source code are displayed in the live view. Basically, this 
text editor applys syntax color and auto indentation for EDC with its one 
standard rule. If you open an edc file which doesn't matched with Enventor 
indentation rule, Enventor a [...]
+Enventor text view mainly supports text editing. You can write and modify EDC 
source code in this view. Once part sections are written in the text view and 
the modified EDC source code is saved, preview images corresponding to the part 
objects of the EDC source code are displayed in the live view. Basically, this 
text editor applys syntax color and auto indentation for EDC with its one 
standard rule. If you open an edc file which doesn't matched with Enventor 
indentation rule, Enventor a [...]
 
 Furthermore, Text view supports the following fancy features:
 
@@ -56,14 +57,12 @@ When you enter a part of a reserved keyword, a contextual 
pop-up comes up with a
 
 You can also use auto-complete as context help. Press "Ctrl+Space" key 
combination to show a list of available keywords in the current cursor position 
context.
 
-{{ :enventor-candidate.png?&150|}}
+{{ :enventor-candidate.png?&300|}}
 
   * Candidate list
 
 The EDC script provides a variety of pre-defined keywords including part 
object types and program action types. To edit the keywords easier, text view 
supports a candidate 

[EGIT] [tools/eflete] master 01/02: tabs: show project info tab on second and further new theme creating

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

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

commit 7f9535998885e84cef4016223a5f5cf8401bf17d
Author: Vitalii Vorobiov 
Date:   Wed Jul 13 16:09:19 2016 +0300

tabs: show project info tab on second and further new theme creating

while old was opened and group was opened

@fix
---
 src/bin/ui/tabs.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/bin/ui/tabs.c b/src/bin/ui/tabs.c
index edbdbee..e3e2e8d 100644
--- a/src/bin/ui/tabs.c
+++ b/src/bin/ui/tabs.c
@@ -1105,7 +1105,8 @@ _tab_close(void *data,
if (!item) return;
 
tabs.items = eina_list_remove(tabs.items, item);
-   _content_unset();
+   tabs.current_workspace = NULL;
+   tabs.current_group = NULL;
_del_tab(item);
if (tabs.selected == it)
  {

-- 




[EGIT] [tools/eflete] master 02/02: property_textblock: remove value duplication in font_glow_list

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

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

commit a2c0d40abc00a2dd035ab98cb55cdfb3f9871ec9
Author: Vitalii Vorobiov 
Date:   Wed Jul 13 16:16:34 2016 +0300

property_textblock: remove value duplication in font_glow_list

@fix
---
 src/bin/ui/property/property_textblock.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/bin/ui/property/property_textblock.c 
b/src/bin/ui/property/property_textblock.c
index 4516580..6a74f1c 100644
--- a/src/bin/ui/property/property_textblock.c
+++ b/src/bin/ui/property/property_textblock.c
@@ -162,7 +162,6 @@ static const char *font_glow_list[] = { "none",
 "outline_shadow",
 "outline_soft_shadow",
 "glow",
-"shadow",
 "far_shadow",
 "soft_shadow",
 "far_soft_shadow",

-- 




[EGIT] [core/efl] master 01/01: elementary: Fix issue of minimum resizing in wayland

2016-07-13 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 0e4b9afeb0817ac70c84884885aecb3518b7fe5d
Author: Chris Michael 
Date:   Wed Jul 13 09:40:22 2016 -0400

elementary: Fix issue of minimum resizing in wayland

This patch fixes an issue where if you tried to resize a window to
it's minimum size, the contents of the window would draw outside the
window frame. Basically, when we are setting min/max size hints to the
window object we need to account for framespace.

@fix

Signed-off-by: Chris Michael 
---
 src/lib/elementary/efl_ui_win.c | 11 +++
 1 file changed, 11 insertions(+)

diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index d93b40b..71f15a3 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -2979,6 +2979,17 @@ _elm_win_resize_objects_eval(Evas_Object *obj)
if (!wy) maxh = minh;
else maxh = 32767;
 
+   if (sd->frame_obj)
+ {
+int fx, fy, fw, fh;
+
+evas_output_framespace_get(sd->evas, , , , );
+minw += fw;
+minh += fh;
+maxw -= fw;
+maxh -= fh;
+ }
+
evas_object_size_hint_min_set(obj, minw, minh);
evas_object_size_hint_max_set(obj, maxw, maxh);
evas_object_geometry_get(obj, NULL, NULL, , );

-- 




[EGIT] [tools/exactness] master 01/01: Use correct output dir for reports

2016-07-13 Thread Daniel Hirt
herdsman pushed a commit to branch master.

http://git.enlightenment.org/tools/exactness.git/commit/?id=365630b8db0df938fa090e14732fb64bfac26f7d

commit 365630b8db0df938fa090e14732fb64bfac26f7d
Author: Daniel Hirt 
Date:   Wed Jul 13 16:25:39 2016 +

Use correct output dir for reports

Not really sure if it needs to generate reports on 'init' mode, but at 
least now
it will be in the correct directory.
---
 src/bin/exactness.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/exactness.c b/src/bin/exactness.c
index da4c36f..2e60eab 100644
--- a/src/bin/exactness.c
+++ b/src/bin/exactness.c
@@ -196,7 +196,7 @@ main(int argc, char *argv[])
 /* Generate the filename. */
 snprintf(report_filename, EXACTNESS_PATH_MAX,
   "%s/%s/errors.html",
-  exactness_config.dest_dir, CURRENT_SUBDIR);
+  exactness_config.dest_dir, mode_init ? ORIG_SUBDIR : 
CURRENT_SUBDIR);
 report_file = fopen(report_filename, "w+");
 if (report_file)
   {

-- 




[EGIT] [tools/eflete] master 03/06: group_navigator: fix selection after state_del

2016-07-13 Thread Andrii Kroitor
rimmed pushed a commit to branch master.

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

commit 8e033e583ab4e6de80935ed6fef109d15bf2de73
Author: Andrii Kroitor 
Date:   Wed Jul 13 14:16:53 2016 +0300

group_navigator: fix selection after state_del
---
 src/bin/ui/workspace/group_navigator.c | 14 ++
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/src/bin/ui/workspace/group_navigator.c 
b/src/bin/ui/workspace/group_navigator.c
index e80f0ce..e15f361 100644
--- a/src/bin/ui/workspace/group_navigator.c
+++ b/src/bin/ui/workspace/group_navigator.c
@@ -2048,7 +2048,7 @@ group_navigator_part_state_del(Evas_Object *obj, Part 
*part __UNUSED__, State *s
Part_List *pl = evas_object_data_get(obj, GROUP_NAVIGATOR_DATA);
Elm_Object_Item *glit;
Elm_Object_Item *part_item;
-   Elm_Object_Item *default_glit;
+   Elm_Object_Item *to_select;
const Eina_List *subitems;
const Eina_List *l;
 
@@ -2059,8 +2059,6 @@ group_navigator_part_state_del(Evas_Object *obj, Part 
*part __UNUSED__, State *s
elm_genlist_item_expanded_set(part_item, true);
 
subitems = elm_genlist_item_subitems_get(part_item);
-   /* "default 0.0" is always first in states list */
-   default_glit = eina_list_data_get(subitems);
/* find state's genlist item */
EINA_LIST_FOREACH(subitems, l, glit)
  {
@@ -2069,7 +2067,15 @@ group_navigator_part_state_del(Evas_Object *obj, Part 
*part __UNUSED__, State *s
  }
assert(glit != NULL);
 
-   elm_genlist_item_selected_set(default_glit, true);
+   to_select = elm_genlist_item_next_get(glit);
+   if ((to_select == NULL) ||
+   ((elm_genlist_item_item_class_get(to_select) != pl->itc_state) &&
+(elm_genlist_item_item_class_get(to_select) != 
pl->itc_state_selected)))
+ to_select = elm_genlist_item_prev_get(glit);
+
+   /* there should be at least default state */
+   assert(to_select != NULL);
+   elm_genlist_item_selected_set(to_select, true);
elm_object_item_del(glit);
 }
 

-- 




[EGIT] [tools/eflete] master 05/06: group_navigator: fix selection after program_del

2016-07-13 Thread Andrii Kroitor
rimmed pushed a commit to branch master.

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

commit 81178a2c30e7ff8149ac8b85a606f4c451023f46
Author: Andrii Kroitor 
Date:   Wed Jul 13 15:17:00 2016 +0300

group_navigator: fix selection after program_del
---
 src/bin/ui/workspace/group_navigator.c | 49 +-
 src/bin/ui/workspace/group_navigator.h |  2 +-
 src/bin/ui/workspace/workspace.c   |  8 +-
 3 files changed, 50 insertions(+), 9 deletions(-)

diff --git a/src/bin/ui/workspace/group_navigator.c 
b/src/bin/ui/workspace/group_navigator.c
index 2c6922f..e7375fe 100644
--- a/src/bin/ui/workspace/group_navigator.c
+++ b/src/bin/ui/workspace/group_navigator.c
@@ -461,6 +461,7 @@ _contract_request_cb(void *data __UNUSED__,
 }
 
 static Elm_Object_Item * _part_item_find(Part_List *pl, Part *part);
+static Elm_Object_Item * _program_glit_find(Part_List *pl, Program *part);
 
 void
 group_navigator_part_state_select(Evas_Object *obj, State *state)
@@ -1769,19 +1770,26 @@ _program_del(Part_List *pl,
 }
 
 void
-group_navigator_program_del(Evas_Object *obj, Eina_Stringshare *program 
__UNUSED__)
+group_navigator_program_del(Evas_Object *obj, Program *program)
 {
Part_List *pl = evas_object_data_get(obj, GROUP_NAVIGATOR_DATA);
+   Elm_Object_Item *program_glit, *to_select;
 
assert(pl != NULL);
+   assert(program != NULL);
+
+   program_glit = _program_glit_find(pl, program);
+
+   to_select = elm_genlist_item_next_get(program_glit);
 
+   if ((to_select == NULL) || (elm_genlist_item_item_class_get(to_select) != 
pl->itc_program))
+ to_select = elm_genlist_item_prev_get(program_glit);
+   if ((to_select == NULL) || (elm_genlist_item_item_class_get(to_select) != 
pl->itc_program))
+ to_select = pl->programs_caption_item;
+
+   elm_object_item_del(program_glit);
elm_genlist_item_update(pl->programs_caption_item);
-   if (elm_genlist_item_expanded_get(pl->programs_caption_item))
- {
-elm_genlist_item_expanded_set(pl->programs_caption_item, false);
-elm_genlist_item_expanded_set(pl->programs_caption_item, true);
- }
-   elm_genlist_item_selected_set(pl->programs_caption_item, true);
+   elm_genlist_item_selected_set(to_select, true);
 }
 
 void
@@ -1922,6 +1930,33 @@ _part_item_find(Part_List *pl, Part *part)
 }
 
 static Elm_Object_Item *
+_program_glit_find(Part_List *pl, Program *program)
+{
+   Elm_Object_Item *program_glit;
+   const Eina_List *program_glits;
+   Program *pr;
+
+   assert(pl != NULL);
+   assert(program != NULL);
+
+   elm_genlist_item_expanded_set(pl->programs_caption_item, true);
+   program_glits = elm_genlist_item_subitems_get(pl->programs_caption_item);
+
+   program_glit = eina_list_data_get(program_glits);
+   pr = elm_object_item_data_get(program_glit);
+   while (pr != program)
+ {
+program_glits = eina_list_next(program_glits);
+program_glit = eina_list_data_get(program_glits);
+pr = elm_object_item_data_get(program_glit);
+
+assert(pr != NULL);
+ }
+   assert(program_glit != NULL);
+   return program_glit;
+}
+
+static Elm_Object_Item *
 _group_data_item_find(Part_List *pl, Resource *group_data)
 {
Elm_Object_Item *group_data_item;
diff --git a/src/bin/ui/workspace/group_navigator.h 
b/src/bin/ui/workspace/group_navigator.h
index 4c6d758..223e278 100644
--- a/src/bin/ui/workspace/group_navigator.h
+++ b/src/bin/ui/workspace/group_navigator.h
@@ -102,7 +102,7 @@ void
 group_navigator_program_add(Evas_Object *obj, Eina_Stringshare *program);
 
 void
-group_navigator_program_del(Evas_Object *obj, Eina_Stringshare *program);
+group_navigator_program_del(Evas_Object *obj, Program *program);
 
 void
 group_navigator_group_data_add(Evas_Object *obj, Eina_Stringshare *group_data);
diff --git a/src/bin/ui/workspace/workspace.c b/src/bin/ui/workspace/workspace.c
index ea9b319..6037472 100644
--- a/src/bin/ui/workspace/workspace.c
+++ b/src/bin/ui/workspace/workspace.c
@@ -1723,11 +1723,17 @@ workspace_program_add(Evas_Object *obj, 
Eina_Stringshare *program_name)
 void
 workspace_program_del(Evas_Object *obj, Eina_Stringshare *program_name)
 {
+   Resource request;
+   Program *program;
WS_DATA_GET(obj);
assert(program_name != NULL);
 
+   request.resource_type = RESOURCE_TYPE_PROGRAM;
+   request.name = program_name;
+   program = (Program *)resource_get(wd->group->programs, );
+
gm_program_del(ap.project, wd->group, program_name);
-   group_navigator_program_del(wd->group_navi, program_name);
+   group_navigator_program_del(wd->group_navi, program);
demo_group_program_del(wd->demo_navi, program_name);
 }
 

-- 




[EGIT] [tools/eflete] master 01/06: sound_manager: fix little typo

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

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

commit b279f62e2ffbcec12f351f232aca01243853a3d7
Author: Vitalii Vorobiov 
Date:   Wed Jul 13 15:09:52 2016 +0300

sound_manager: fix little typo

no more sigsev on tone deletion!

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

diff --git a/src/bin/ui/sound_manager.c b/src/bin/ui/sound_manager.c
index dda4500..ab4fd11 100644
--- a/src/bin/ui/sound_manager.c
+++ b/src/bin/ui/sound_manager.c
@@ -431,7 +431,7 @@ _sound_del_cb(void *data __UNUSED__,
   break;
case SOUND_TYPE_TONE:
   request.name = snd->name;
-  request.resource_type = RESOURCE_TYPE_SOUND;
+  request.resource_type = RESOURCE_TYPE_TONE;
   res = (External_Resource *)resource_get(ap.project->tones, 
);
   if (res->used_in) ERR("Unable to delete tone '%s'", res->name);
   edje_edit_sound_tone_del(ap.project->global_object, snd->name);

-- 




[EGIT] [tools/eflete] master 02/06: group_navigator: fix selection after part_del

2016-07-13 Thread Andrii Kroitor
rimmed pushed a commit to branch master.

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

commit c29077cc50e89fe2d122cb54c1b67fb1d1a8d01c
Author: Andrii Kroitor 
Date:   Wed Jul 13 11:08:10 2016 +0300

group_navigator: fix selection after part_del
---
 src/bin/ui/workspace/group_navigator.c | 17 -
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/src/bin/ui/workspace/group_navigator.c 
b/src/bin/ui/workspace/group_navigator.c
index ddd9c3d..e80f0ce 100644
--- a/src/bin/ui/workspace/group_navigator.c
+++ b/src/bin/ui/workspace/group_navigator.c
@@ -1982,17 +1982,32 @@ void
 group_navigator_part_del(Evas_Object *obj, Part *part)
 {
Part_List *pl = evas_object_data_get(obj, GROUP_NAVIGATOR_DATA);
-   Elm_Object_Item *part_item;
+   Elm_Object_Item *part_item, *to_select;
 
assert(pl != NULL);
assert(part != NULL);
 
part_item = _part_item_find(pl, part);
+
+   to_select = elm_genlist_item_next_get(part_item);
+
+   while ((to_select != NULL) && (elm_genlist_item_item_class_get(to_select) 
!= pl->itc_part))
+ to_select = elm_genlist_item_next_get(to_select);
+   if (to_select == NULL)
+ {
+to_select = elm_genlist_item_prev_get(part_item);
+while ((to_select != NULL) && 
(elm_genlist_item_item_class_get(to_select) != pl->itc_part))
+  to_select = elm_genlist_item_prev_get(to_select);
+ }
+   if (to_select == NULL)
+ to_select = pl->parts_caption_item;
+
if (part == pl->part)
  _unselect_part(pl);
 
elm_object_item_del(part_item);
elm_genlist_item_update(pl->parts_caption_item);
+   elm_genlist_item_selected_set(to_select, true);
 }
 
 static void

-- 




[EGIT] [tools/eflete] master 06/06: group_navigator: fix selection after data_del

2016-07-13 Thread Andrii Kroitor
rimmed pushed a commit to branch master.

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

commit d0b4d55be3e392b1016989590c2f751bd440e70d
Author: Andrii Kroitor 
Date:   Wed Jul 13 15:33:07 2016 +0300

group_navigator: fix selection after data_del
---
 src/bin/ui/workspace/group_navigator.c | 22 +++---
 src/bin/ui/workspace/group_navigator.h |  2 +-
 src/bin/ui/workspace/workspace.c   |  8 +++-
 3 files changed, 23 insertions(+), 9 deletions(-)

diff --git a/src/bin/ui/workspace/group_navigator.c 
b/src/bin/ui/workspace/group_navigator.c
index e7375fe..2580746 100644
--- a/src/bin/ui/workspace/group_navigator.c
+++ b/src/bin/ui/workspace/group_navigator.c
@@ -462,6 +462,7 @@ _contract_request_cb(void *data __UNUSED__,
 
 static Elm_Object_Item * _part_item_find(Part_List *pl, Part *part);
 static Elm_Object_Item * _program_glit_find(Part_List *pl, Program *part);
+static Elm_Object_Item * _group_data_item_find(Part_List *pl, Resource 
*group_data);
 
 void
 group_navigator_part_state_select(Evas_Object *obj, State *state)
@@ -1844,19 +1845,26 @@ _group_data_del(Part_List *pl,
 }
 
 void
-group_navigator_group_data_del(Evas_Object *obj, Eina_Stringshare *group_data 
__UNUSED__)
+group_navigator_group_data_del(Evas_Object *obj, Resource *data)
 {
Part_List *pl = evas_object_data_get(obj, GROUP_NAVIGATOR_DATA);
+   Elm_Object_Item *data_glit, *to_select;
 
assert(pl != NULL);
+   assert(data != NULL);
 
+   data_glit = _group_data_item_find(pl, data);
+
+   to_select = elm_genlist_item_next_get(data_glit);
+
+   if ((to_select == NULL) || (elm_genlist_item_item_class_get(to_select) != 
pl->itc_group_data))
+ to_select = elm_genlist_item_prev_get(data_glit);
+   if ((to_select == NULL) || (elm_genlist_item_item_class_get(to_select) != 
pl->itc_group_data))
+ to_select = pl->data_caption_item;
+
+   elm_object_item_del(data_glit);
elm_genlist_item_update(pl->data_caption_item);
-   if (elm_genlist_item_expanded_get(pl->data_caption_item))
- {
-elm_genlist_item_expanded_set(pl->data_caption_item, false);
-elm_genlist_item_expanded_set(pl->data_caption_item, true);
- }
-   elm_genlist_item_selected_set(pl->data_caption_item, true);
+   elm_genlist_item_selected_set(to_select, true);
 }
 
 static void
diff --git a/src/bin/ui/workspace/group_navigator.h 
b/src/bin/ui/workspace/group_navigator.h
index 223e278..6ef86db 100644
--- a/src/bin/ui/workspace/group_navigator.h
+++ b/src/bin/ui/workspace/group_navigator.h
@@ -108,7 +108,7 @@ void
 group_navigator_group_data_add(Evas_Object *obj, Eina_Stringshare *group_data);
 
 void
-group_navigator_group_data_del(Evas_Object *obj, Eina_Stringshare *group_data);
+group_navigator_group_data_del(Evas_Object *obj, Resource *group_data);
 
 void
 group_navigator_add_part_request(Evas_Object *obj);
diff --git a/src/bin/ui/workspace/workspace.c b/src/bin/ui/workspace/workspace.c
index 6037472..19f7916 100644
--- a/src/bin/ui/workspace/workspace.c
+++ b/src/bin/ui/workspace/workspace.c
@@ -1750,11 +1750,17 @@ workspace_group_data_add(Evas_Object *obj, 
Eina_Stringshare *group_data_name)
 void
 workspace_group_data_del(Evas_Object *obj, Eina_Stringshare *group_data_name)
 {
+   Resource request;
+   Resource *group_data;
WS_DATA_GET(obj);
assert(group_data_name != NULL);
 
+   request.resource_type = RESOURCE_TYPE_DATA;
+   request.name = group_data_name;
+   group_data = resource_get(wd->group->data_items, );
+
+   group_navigator_group_data_del(wd->group_navi, group_data);
gm_group_data_del(ap.project, wd->group, group_data_name);
-   group_navigator_group_data_del(wd->group_navi, group_data_name);
 }
 
 void

-- 




[EGIT] [tools/eflete] master 04/06: group_navigator: fix selection after item_del

2016-07-13 Thread Andrii Kroitor
rimmed pushed a commit to branch master.

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

commit 4314334e52caea272af934b17e73a591948df79f
Author: Andrii Kroitor 
Date:   Wed Jul 13 15:03:26 2016 +0300

group_navigator: fix selection after item_del
---
 src/bin/ui/workspace/group_navigator.c | 36 ++
 src/bin/ui/workspace/group_navigator.h |  2 +-
 src/bin/ui/workspace/workspace.c   |  9 -
 3 files changed, 37 insertions(+), 10 deletions(-)

diff --git a/src/bin/ui/workspace/group_navigator.c 
b/src/bin/ui/workspace/group_navigator.c
index e15f361..2c6922f 100644
--- a/src/bin/ui/workspace/group_navigator.c
+++ b/src/bin/ui/workspace/group_navigator.c
@@ -2108,26 +2108,46 @@ _item_del(Part_List *pl,
 }
 
 void
-group_navigator_part_item_del(Evas_Object *obj, Part *part __UNUSED__, 
Eina_Stringshare *item_name)
+group_navigator_part_item_del(Evas_Object *obj, Part_Item *item)
 {
-   Elm_Object_Item *part_item;
+   Elm_Object_Item *part_item, *to_select;
Part_List *pl = evas_object_data_get(obj, GROUP_NAVIGATOR_DATA);
-   Elm_Object_Item *items_glit;
+   Elm_Object_Item *items_glit, *item_glit;
+   Part_Item *it;
+   const Eina_List *part_items;
 
assert(pl != NULL);
-   assert(pl->part != NULL);
-   assert(item_name != NULL);
+   assert(item != NULL);
 
-   part_item = _part_item_find(pl, part);
+   part_item = _part_item_find(pl, item->part);
 
assert(part_item != NULL);
 
elm_genlist_item_expanded_set(part_item, true);
items_glit = 
eina_list_data_get(eina_list_last(elm_genlist_item_subitems_get(part_item)));
+   elm_genlist_item_expanded_set(items_glit, true);
 
-   elm_genlist_item_expanded_set(items_glit, false);
+   part_items = elm_genlist_item_subitems_get(items_glit);
+   item_glit = eina_list_data_get(part_items);
+   it = elm_object_item_data_get(item_glit);
+   while (it != item)
+ {
+part_items = eina_list_next(part_items);
+item_glit = eina_list_data_get(part_items);
+it = elm_object_item_data_get(item_glit);
+ }
+   assert(item_glit != NULL);
+
+   to_select = elm_genlist_item_next_get(item_glit);
+
+   if ((to_select == NULL) || (elm_genlist_item_item_class_get(to_select) != 
pl->itc_item))
+ to_select = elm_genlist_item_prev_get(item_glit);
+   if ((to_select == NULL) || (elm_genlist_item_item_class_get(to_select) != 
pl->itc_item))
+ to_select = items_glit;
+
+   elm_object_item_del(item_glit);
elm_genlist_item_update(items_glit);
-   elm_genlist_item_expanded_set(items_glit, true);
+   elm_genlist_item_selected_set(to_select, true);
 }
 
 static void
diff --git a/src/bin/ui/workspace/group_navigator.h 
b/src/bin/ui/workspace/group_navigator.h
index 47eb6cc..4c6d758 100644
--- a/src/bin/ui/workspace/group_navigator.h
+++ b/src/bin/ui/workspace/group_navigator.h
@@ -81,7 +81,7 @@ void
 group_navigator_part_item_add(Evas_Object *obj, Part *part, Eina_Stringshare * 
item_name);
 
 void
-group_navigator_part_item_del(Evas_Object *obj, Part *part, Eina_Stringshare * 
item_name);
+group_navigator_part_item_del(Evas_Object *obj, Part_Item *item);
 
 void
 group_navigator_part_state_add(Evas_Object *obj, Part *part, State *state);
diff --git a/src/bin/ui/workspace/workspace.c b/src/bin/ui/workspace/workspace.c
index d4ff4d6..ea9b319 100644
--- a/src/bin/ui/workspace/workspace.c
+++ b/src/bin/ui/workspace/workspace.c
@@ -1551,6 +1551,7 @@ workspace_part_item_del(Evas_Object *obj,
 Eina_Stringshare *item_name)
 {
Part *part;
+   Part_Item *item;
Resource request;
WS_DATA_GET(obj);
assert(part_name != NULL);
@@ -1563,9 +1564,15 @@ workspace_part_item_del(Evas_Object *obj,
assert((part->type == EDJE_PART_TYPE_TABLE) ||
   (part->type == EDJE_PART_TYPE_BOX));
 
+   request.resource_type = RESOURCE_TYPE_ITEM;
+   request.name = item_name;
+   item = (Part_Item *)resource_get(part->items, );
+
+   assert(item != NULL);
+
group_navigator_select(wd->group_navi, (Resource *)part);
+   group_navigator_part_item_del(wd->group_navi, item);
gm_part_item_del(ap.project, part, item_name);
-   group_navigator_part_item_del(wd->group_navi, part, item_name);
 }
 
 void

-- 




[EGIT] [website/www-content] master 01/01: about enventor: updated content.

2016-07-13 Thread Hermet Park
hermet pushed a commit to branch master.

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

commit 2f9ccfb9b34a1f036739d5325c23bc82e1259bbe
Author: Hermet Park 
Date:   Wed Jul 13 21:03:07 2016 +0900

about enventor: updated content.
---
 media/enventor-autocomplete.png  | Bin 110676 -> 34834 bytes
 media/enventor-candidate.png | Bin 0 -> 33755 bytes
 media/enventor-candidate1.png| Bin 104095 -> 0 bytes
 media/enventor-candidate2.png| Bin 102057 -> 0 bytes
 media/enventor-candidate3.png| Bin 111879 -> 0 bytes
 media/enventor-colorselector.png | Bin 0 -> 39549 bytes
 media/enventor-highlight.png | Bin 0 -> 74382 bytes
 media/enventor-preview.png   | Bin 0 -> 39347 bytes
 media/enventor-reference.png | Bin 0 -> 31910 bytes
 media/enventor-slider.png| Bin 0 -> 34042 bytes
 pages/about-enventor.txt |  51 ++-
 11 files changed, 39 insertions(+), 12 deletions(-)

diff --git a/media/enventor-autocomplete.png b/media/enventor-autocomplete.png
index e53f9f1..8bdcefc 100644
Binary files a/media/enventor-autocomplete.png and 
b/media/enventor-autocomplete.png differ
diff --git a/media/enventor-candidate.png b/media/enventor-candidate.png
new file mode 100644
index 000..480c4e9
Binary files /dev/null and b/media/enventor-candidate.png differ
diff --git a/media/enventor-candidate1.png b/media/enventor-candidate1.png
deleted file mode 100644
index 632d44e..000
Binary files a/media/enventor-candidate1.png and /dev/null differ
diff --git a/media/enventor-candidate2.png b/media/enventor-candidate2.png
deleted file mode 100644
index 43733d3..000
Binary files a/media/enventor-candidate2.png and /dev/null differ
diff --git a/media/enventor-candidate3.png b/media/enventor-candidate3.png
deleted file mode 100644
index 65641fa..000
Binary files a/media/enventor-candidate3.png and /dev/null differ
diff --git a/media/enventor-colorselector.png b/media/enventor-colorselector.png
new file mode 100644
index 000..85b472e
Binary files /dev/null and b/media/enventor-colorselector.png differ
diff --git a/media/enventor-highlight.png b/media/enventor-highlight.png
new file mode 100644
index 000..a428e64
Binary files /dev/null and b/media/enventor-highlight.png differ
diff --git a/media/enventor-preview.png b/media/enventor-preview.png
new file mode 100644
index 000..2075d7d
Binary files /dev/null and b/media/enventor-preview.png differ
diff --git a/media/enventor-reference.png b/media/enventor-reference.png
new file mode 100644
index 000..47e26a9
Binary files /dev/null and b/media/enventor-reference.png differ
diff --git a/media/enventor-slider.png b/media/enventor-slider.png
new file mode 100644
index 000..04fd629
Binary files /dev/null and b/media/enventor-slider.png differ
diff --git a/pages/about-enventor.txt b/pages/about-enventor.txt
index 2b2da52..3668627 100644
--- a/pages/about-enventor.txt
+++ b/pages/about-enventor.txt
@@ -5,9 +5,11 @@
 
 {{:icon-enventor.png?nolink |}}
 
+Enventor, which is also known as EDC (Edje Data Collections) Editor, is a 
useful EDC script editor tool that supports text edit function and preview 
function for the EDC source code.
+
 {{ :enventor-main.png?&300|}}
 
-Enventor, which is also known as EDC (Edje Data Collections) Editor, is a 
useful EDC script editor tool that supports text edit function and preview 
function for the EDC source code. When your application requires realtime 
changeable layouts like animative ones, then you could write those layout 
design using EDC script, compile it to EDJ format file then import it into your 
application using a UI layout. But not only for that, you can write any kinds 
of design layouts from simple to comp [...]
+When your application requires realtime changeable layouts like animative 
ones, then you could write those layout design using EDC script, compile it to 
EDJ format file then import it into your application using a UI layout. But not 
only for that, you can write any kinds of design layouts from simple to complex 
ones if you use EDC script with Enventor. Enventor helps you write EDC script 
code eaiser and finish your work faster. If you are not familiar with EDC 
programming, then please vi [...]
 
 === About Enventor ===
 
@@ -27,8 +29,9 @@ Basically, Enventor view is divided into 2 sections, live 
view and text view. Th
 
 The following figure illustrates each layout section of Enventor.
 
+{{ :enventor-layout.png?&400|}}
+
   * Red: Toolbar
-{{ :enventor-layout.png?&300|}}
   * Cyan: File browser
   * Green: Live view
   * Blue: Text view
@@ -39,11 +42,11 @@ The following figure illustrates each layout section of 
Enventor.
 
 ==Using Text View==
 
-Enventor text view mainly supports text editing. You can write and modify EDC 
source code in this view. Once part sections are written in the text view and 
the modified EDC source code is saved, 

[EGIT] [core/efl] master 01/01: [Bug] EFL memory leak on Windows(handler continuously increasing)

2016-07-13 Thread Ivan Furs
raster pushed a commit to branch master.

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

commit 4387f34b5475bdf6136a12fdf791efe3131d07ac
Author: Ivan Furs 
Date:   Wed Jul 13 21:01:50 2016 +0900

[Bug] EFL memory leak on Windows(handler continuously increasing)

Summary:
Fix: event need to clese  when create event:
  event = WSACreateEvent();

Reviewers: bowonryu, herb, Jaehyun, thiepha, Hermet, jaehwan, cedric, raster

Reviewed By: raster

Subscribers: NikaWhite, reutskiy.v.v, artem.popov

Differential Revision: https://phab.enlightenment.org/D4157
---
 src/lib/ecore/ecore_main.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/lib/ecore/ecore_main.c b/src/lib/ecore/ecore_main.c
index 999b3f8..354edc9 100644
--- a/src/lib/ecore/ecore_main.c
+++ b/src/lib/ecore/ecore_main.c
@@ -2603,9 +2603,8 @@ _ecore_main_win32_select(int nfds EINA_UNUSED,
 
if (timeout == 0)
  {
-free(objects);
-free(sockets);
-return 0;
+res = 0;
+goto err;
  }
 
result = _ecore_main_win32_objects_wait(objects_nbr,
@@ -2701,6 +2700,7 @@ _ecore_main_win32_select(int nfds EINA_UNUSED,
 res = -1;
  }
 
+err :
/* Remove event objects again */
for (i = 0; i < events_nbr; i++) WSACloseEvent(objects[i]);
 

-- 




[EGIT] [tools/eflete] master 01/01: property_textblock: update GLOW_SHADOW_DIRECTION combobox on value change

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

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

commit ab16de3b7b577e151af4a1349bc4d29cbc4a4c64
Author: Vitalii Vorobiov 
Date:   Wed Jul 13 14:03:49 2016 +0300

property_textblock: update GLOW_SHADOW_DIRECTION combobox on value change

@fix
---
 src/bin/ui/property/property_textblock.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/bin/ui/property/property_textblock.c 
b/src/bin/ui/property/property_textblock.c
index 1621078..4516580 100644
--- a/src/bin/ui/property/property_textblock.c
+++ b/src/bin/ui/property/property_textblock.c
@@ -781,6 +781,7 @@ _change_cb(Property_Attribute *pa, Property_Action *action)
  assert(cb_item != NULL);
  eina_stringshare_del(style_table[DIRECTION_NUM][1]);
  style_table[DIRECTION_NUM][1] = eina_stringshare_add(cb_item->data);
+ tpd.direction = cb_item->index;
  _tag_parse(cb_item->data, "direction");
  _style_edit_update();
  ap.project->changed = true;

-- 




[EGIT] [core/efl] master 01/01: ecore_evas_extn: Check whether server_data sender is client's server.

2016-07-13 Thread Minkyoung Kim
raster pushed a commit to branch master.

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

commit 1733b09e1b33b8a25dfee3731e8097db3b97b136
Author: Minkyoung Kim 
Date:   Wed Jul 13 21:00:07 2016 +0900

ecore_evas_extn: Check whether server_data sender is client's server.

Summary:
Sometimes, In ipc_server_data, extn->ipc.server's data is different with 
e->server's data.

The case is as follows.

Process'A' has a server.
Process'B' has 'A's client(ee address : 0xB0).
Process'B's client die, and 'B's server created. and server's ee address is 
same with destroyed client's ee(0xB0).
At the same time, 'A's server send the message to 'B's client.
but 'B's client is died! so _ipc_server_data would manipulate 'B's server 
data.

Test Plan: Tizen Mobile Text.

Reviewers: raster, spacegrapher, jpeg, wonsik, dkdk

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D4158
---
 src/modules/ecore_evas/engines/extn/ecore_evas_extn.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/modules/ecore_evas/engines/extn/ecore_evas_extn.c 
b/src/modules/ecore_evas/engines/extn/ecore_evas_extn.c
index 06f1ca8..d705df3 100644
--- a/src/modules/ecore_evas/engines/extn/ecore_evas_extn.c
+++ b/src/modules/ecore_evas/engines/extn/ecore_evas_extn.c
@@ -986,6 +986,8 @@ _ipc_server_data(void *data, int type EINA_UNUSED, void 
*event)
if (!extn) return ECORE_CALLBACK_PASS_ON;
if (e->major != MAJOR)
  return ECORE_CALLBACK_PASS_ON;
+   if (ee != ecore_ipc_server_data_get(extn->ipc.server))
+ return ECORE_CALLBACK_PASS_ON;
switch (e->minor)
  {
   case OP_UPDATE:

-- 




[EGIT] [core/efl] master 01/01: Revert "edje_cc: Fix minor coverity defect"

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

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

commit 9f77c5ab55316ea27dcac7df48f8d4abcb1f1c02
Author: Carsten Haitzler (Rasterman) 
Date:   Wed Jul 13 20:54:04 2016 +0900

Revert "edje_cc: Fix minor coverity defect"

This reverts commit 0106455588a7390f36bae9ac6d789e94410a5216.

breaks edje_cc :( spin 100% cpu building terminology themes
---
 src/bin/edje/edje_cc_sources.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/edje/edje_cc_sources.c b/src/bin/edje/edje_cc_sources.c
index 1bd73af..3f119bb 100644
--- a/src/bin/edje/edje_cc_sources.c
+++ b/src/bin/edje/edje_cc_sources.c
@@ -185,6 +185,8 @@ source_fetch_file(const char *fil, const char *filname)
  else
p++;
   }
+
+got_hash = 0;
  }
if ((file) && (fname))
   source_fetch_file(file, fname);

-- 




[EGIT] [tools/eflete] master 02/02: project_manager: temporary fix thread blocking when imported edc contain scripts

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

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

commit e6f5055353da08540421c2a53b49ccfb0131e348
Author: Vitalii Vorobiov 
Date:   Wed Jul 13 12:33:49 2016 +0300

project_manager: temporary fix thread blocking when imported edc contain 
scripts

@fix
---
 src/bin/project_manager/project_manager.c | 45 +++
 1 file changed, 45 insertions(+)

diff --git a/src/bin/project_manager/project_manager.c 
b/src/bin/project_manager/project_manager.c
index 48d9bfd..2363b3c 100644
--- a/src/bin/project_manager/project_manager.c
+++ b/src/bin/project_manager/project_manager.c
@@ -539,6 +539,21 @@ static void *
 _project_import_edc(void *data,
 Eina_Thread *thread __UNUSED__)
 {
+   /**
+* Comment by Andrii:
+* | problem with edje_cc is that it uses child process itself:
+* | when we create thread SIGCHLD is blocked for that
+* | thread by commit aeeda1f77d1b21b15e916852baac06bb530618e2,
+* | when we run edje_cc from that thread it's process
+* | inherits all blocked signals edje_cc starts embryo compiler
+* | if group has scripts it waits for child(compiler)
+* | process termination, but never receives it because of blocked SIGCHLD
+*/
+   sigset_t oldset, newset;
+   sigemptyset();
+   sigaddset(, SIGCHLD);
+   sigprocmask(SIG_UNBLOCK, , );
+
Eina_Bool send_end_child;
Eina_Bool send_end = (data) ? (*(Eina_Bool *)data) : true;
 
@@ -1577,6 +1592,21 @@ static void *
 _release_export(void *data __UNUSED__,
 Eina_Thread *thread __UNUSED__)
 {
+   /**
+* Comment by Andrii:
+* | problem with edje_cc is that it uses child process itself:
+* | when we create thread SIGCHLD is blocked for that
+* | thread by commit aeeda1f77d1b21b15e916852baac06bb530618e2,
+* | when we run edje_cc from that thread it's process
+* | inherits all blocked signals edje_cc starts embryo compiler
+* | if group has scripts it waits for child(compiler)
+* | process termination, but never receives it because of blocked SIGCHLD
+*/
+   sigset_t oldset, newset;
+   sigemptyset();
+   sigaddset(, SIGCHLD);
+   sigprocmask(SIG_UNBLOCK, , );
+
Eina_Tmpstr *tmp_dirname;
Eina_Strbuf *cmd;
Ecore_Exe *exe_cmd;
@@ -1754,6 +1784,21 @@ static void *
 _enventor_save(void *data __UNUSED__,
Eina_Thread *thread __UNUSED__)
 {
+   /**
+* Comment by Andrii:
+* | problem with edje_cc is that it uses child process itself:
+* | when we create thread SIGCHLD is blocked for that
+* | thread by commit aeeda1f77d1b21b15e916852baac06bb530618e2,
+* | when we run edje_cc from that thread it's process
+* | inherits all blocked signals edje_cc starts embryo compiler
+* | if group has scripts it waits for child(compiler)
+* | process termination, but never receives it because of blocked SIGCHLD
+*/
+   sigset_t oldset, newset;
+   sigemptyset();
+   sigaddset(, SIGCHLD);
+   sigprocmask(SIG_UNBLOCK, , );
+
Ecore_Event_Handler *cb_msg_stdout = NULL,
*cb_msg_stderr = NULL;
Ecore_Exe_Flags flags  = ECORE_EXE_PIPE_READ |

-- 




[EGIT] [tools/eflete] master 01/02: property_group: allow to put 0 font size for text

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

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

commit e13445ee98887b7d3785db15ba6e000c262f21d3
Author: Vitalii Vorobiov 
Date:   Tue Jul 12 18:02:13 2016 +0300

property_group: allow to put 0 font size for text

with 0 - source is working
---
 src/bin/ui/property/property_group.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/ui/property/property_group.c 
b/src/bin/ui/property/property_group.c
index 1f97891..3c81295 100644
--- a/src/bin/ui/property/property_group.c
+++ b/src/bin/ui/property/property_group.c
@@ -878,10 +878,10 @@ _init_cb(Property_Attribute *pa, Property_Action *action)
   case ATTRIBUTE_STATE_MAP_POINT_COLOR_3:
   case ATTRIBUTE_STATE_MAP_POINT_COLOR_4:
  break;
-  case ATTRIBUTE_STATE_TEXT_SIZE:
   case ATTRIBUTE_STATE_MAP_PERSPECTIVE_FOCAL:
  elm_spinner_min_max_set(action->control, 1, );
  break;
+  case ATTRIBUTE_STATE_TEXT_SIZE:
   case ATTRIBUTE_STATE_MAP_PERSPECTIVE_ZPLANE:
  elm_spinner_min_max_set(action->control, 0, );
  break;

-- 




[EGIT] [core/efl] master 01/01: elm tooltips - fix positioning and more to be sane and have less bugs

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

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

commit 7fda68dc47d5e82e3d9cc5929114dd3ac71a41e8
Author: Carsten Haitzler (Rasterman) 
Date:   Wed Jul 13 18:37:21 2016 +0900

elm tooltips - fix positioning and more to be sane and have less bugs

the tooltip geometry code was extra complex and iffy with certain
situations. this cleans it up and also fixes the below bug

this fixes T3980

@fix
---
 src/lib/elementary/els_tooltip.c | 197 ++-
 1 file changed, 49 insertions(+), 148 deletions(-)

diff --git a/src/lib/elementary/els_tooltip.c b/src/lib/elementary/els_tooltip.c
index ceb5d72..4ca0450 100644
--- a/src/lib/elementary/els_tooltip.c
+++ b/src/lib/elementary/els_tooltip.c
@@ -358,7 +358,8 @@ _elm_tooltip_reconfigure_orient(Elm_Tooltip *tt,
 static void
 _elm_tooltip_reconfigure(Elm_Tooltip *tt)
 {
-   Evas_Coord ox, oy, ow, oh, px = 0, py = 0, tx, ty, tw, th, cw = 0, ch = 0;
+   Evas_Coord ox, oy, ow, oh, px = 0, py = 0, tx, ty, tw, th;
+   Evas_Coord cx = 0, cy = 0, cw = 0, ch = 0;
Evas_Coord eminw, eminh, ominw, ominh;
double rel_x, rel_y;
Eina_Bool inside_eventarea;
@@ -487,17 +488,17 @@ _elm_tooltip_reconfigure(Elm_Tooltip *tt)
 
if (tt->tt_win)
  {
-#ifdef HAVE_ELEMENTARY_X
-Evas_Object *win = elm_widget_top_get(tt->owner);
-Ecore_X_Window xwin = elm_win_xwindow_get(win);
-if (xwin)
-  ecore_x_window_size_get(ecore_x_window_root_get(xwin), , );
-#endif
-if (!cw)
-  elm_win_screen_size_get(elm_widget_top_get(tt->owner), NULL, NULL, 
, );
+elm_win_screen_size_get(elm_widget_top_get(tt->owner),
+NULL, NULL, , );
+elm_win_screen_position_get(elm_widget_top_get(tt->owner),
+, );
+evas_canvas_pointer_canvas_xy_get(tt->evas, , );
+ }
+   else
+ {
+evas_output_size_get(tt->evas, , );
+evas_canvas_pointer_canvas_xy_get(tt->evas, , );
  }
-   if (!cw)
- evas_output_size_get(tt->tt_evas ? tt->tt_evas : tt->evas, , );
TTDBG("SCREEN:  cw=%d,ch=%d\n", cw, ch);
 
evas_object_geometry_get(tt->eventarea, , , , );
@@ -508,162 +509,58 @@ _elm_tooltip_reconfigure(Elm_Tooltip *tt)
  ox = oy = 0;
TTDBG("EVENTAREA:  ox=%d,oy=%d,ow=%d,oh=%d\n", ox, oy, ow, oh);
 
-   if (tt->tt_win)
- {
-int x, y;
-Evas_Object *win = elm_widget_top_get(tt->owner);
-#ifdef HAVE_ELEMENTARY_X
-Ecore_X_Window xwin = elm_win_xwindow_get(win);
-if (xwin)
-  ecore_x_pointer_xy_get(xwin, , );
-#endif
-elm_win_screen_position_get(win, , );
-ox += x;
-if (px) px += x;
-oy += y;
-if (py) py += y;
- }
-   else
- evas_pointer_canvas_xy_get(tt->evas, , );
-   TTDBG("POINTER:  px=%d,py=%d\n", px, py);
inside_eventarea = ((px >= ox) && (py >= oy) &&
-   (px <= ox + ow) && (py <= oy + oh));
+   (px <= (ox + ow)) && (py <= (oy + oh)));
if (inside_eventarea)
  {
 /* try to position bottom right corner at pointer */
-tx = px - tw;
-ty = py - th;
-TTDBG("INIT (EVENTAREA)\n");
+tx = cx + px - tw;
+ty = cy + py - th;
+if (tx < 0) tx = 0;
+if (ty < 0) ty = 0;
+if (tx > cw) tx = cw - tw;
+if (ty > ch) ty = ch - th;
+
+if (ow > 1) rel_x = (double)((ox + (ow / 2)) - ((tx - cx) + (tw / 2))) 
/ (double)(ow / 2);
+else rel_x = 0;
+if (oh > 1) rel_y = (double)((oy + (oh / 2)) - ((ty - cy) + (th / 2))) 
/ (double)(oh / 2);
+else rel_y = 0;
  }
else
  {
 /* try centered on middle of eventarea */
 tx = ox + (ow / 2) - (tw / 2);
-if (0 > (th - oy - oh)) ty = oy + th;
-else ty = oy - oh;
-TTDBG("INIT (INTERPRETED)\n");
- }
-   TTDBG("ADJUST (POINTER):  tx=%d,ty=%d\n", tx, ty);
-   if ((tx < 0) || (tx + tw > cw))
- {
-if (tx < 0)
+if (py < oy)
   {
- /* if we're offscreen to the left, try to flip over the Y axis */
- if (abs((tx + 2 * tw) - cw) < abs(tx))
-   tx += tw;
- else
-   tx = 0;
+ ty = oy - th;
+ if (ty < 0) ty = oy + oh;
+ if ((ty + th) > ch) ty = ch - th;
   }
-else if (tx + tw > cw)
+else
   {
- int test_x = tx - tw;
-
- /* if we're offscreen to the right, try to flip over the Y axis */
- if ((test_x >= 0) || (tx + tw - cw > abs(test_x)))
-   tx -= tw;
- else
-   tx = cw - tw;
-  }
- }
-   else if ((tx > px) && (px > tw))
- {
-if (tx + tw < cw)
-  tx += tw;
- }
-   if ((ty < 0) || (ty + th > ch))
- {
-if 

[EGIT] [core/efl] master 08/12: evas: Fix some CID in generic loaders

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

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

commit 3ad848f5c5a580d0c07178c457a687b2bd99de2b
Author: Jean-Philippe Andre 
Date:   Wed Jul 13 15:21:06 2016 +0900

evas: Fix some CID in generic loaders

Check the return value of fwrite. There is nothing
sensible to do as the receiver needs to handle the error
gracefully.

CID 1356613, 1356614, 1356615, 1356200
---
 src/generic/evas/pdf/main.cpp | 7 ++-
 src/generic/evas/ps/main.c| 7 ++-
 src/generic/evas/svg/main.c   | 7 ++-
 src/generic/evas/xcf/main.c   | 7 ++-
 4 files changed, 24 insertions(+), 4 deletions(-)

diff --git a/src/generic/evas/pdf/main.cpp b/src/generic/evas/pdf/main.cpp
index 8623179..eab137b 100644
--- a/src/generic/evas/pdf/main.cpp
+++ b/src/generic/evas/pdf/main.cpp
@@ -321,7 +321,12 @@ main(int argc, char **argv)
  // could also to "tmpfile %s\n" like shmfile but just
  // a mmaped tmp file on the system
  printf("data\n");
- fwrite(data, crop_width * crop_height * sizeof(DATA32), 1, 
stdout);
+ if (fwrite(data, crop_width * crop_height * sizeof(DATA32), 1, 
stdout) != 1)
+   {
+  // nothing much to do, the receiver will simply ignore the
+  // data as it's too short
+  D("fwrite failed (%d bytes): %m\n", crop_width * crop_height 
* sizeof(DATA32));
+   }
   }
 shm_free();
  }
diff --git a/src/generic/evas/ps/main.c b/src/generic/evas/ps/main.c
index 48e8a4b..c5b8a18 100644
--- a/src/generic/evas/ps/main.c
+++ b/src/generic/evas/ps/main.c
@@ -276,7 +276,12 @@ main(int argc, char **argv)
  // could also to "tmpfile %s\n" like shmfile but just
  // a mmaped tmp file on the system
  printf("data\n");
- fwrite(data, width * height * sizeof(DATA32), 1, stdout);
+ if (fwrite(data, width * height * sizeof(DATA32), 1, stdout) != 1)
+   {
+  // nothing much to do, the receiver will simply ignore the
+  // data as it's too short
+  D("fwrite failed (%d bytes): %m\n", width * height * 
sizeof(DATA32));
+   }
   }
 shm_free();
  }
diff --git a/src/generic/evas/svg/main.c b/src/generic/evas/svg/main.c
index 8c46708..f197330 100644
--- a/src/generic/evas/svg/main.c
+++ b/src/generic/evas/svg/main.c
@@ -218,7 +218,12 @@ int main(int argc, char **argv)
  else
{
   printf("data\n");
-  fwrite(shm_addr, width * height * sizeof(DATA32), 1, stdout);
+  if (fwrite(shm_addr, width * height * sizeof(DATA32), 1, 
stdout) != 1)
+{
+   // nothing much to do, the receiver will simply ignore 
the
+   // data as it's too short
+   //D("fwrite failed (%d bytes): %m\n", width * height * 
sizeof(DATA32));
+}
}
  shm_free();
   }
diff --git a/src/generic/evas/xcf/main.c b/src/generic/evas/xcf/main.c
index 4de03f8..c5ef6a8 100644
--- a/src/generic/evas/xcf/main.c
+++ b/src/generic/evas/xcf/main.c
@@ -1723,7 +1723,12 @@ main(int argc, char **argv)
  // could also to "tmpfile %s\n" like shmfile but just
  // a mmaped tmp file on the system
  printf("data\n");
- fwrite(image->data, w * h * sizeof(DATA32), 1, stdout);
+ if (fwrite(image->data, w * h * sizeof(DATA32), 1, stdout) != 1)
+ {
+// nothing much to do, the receiver will simply ignore the
+// data as it's too short
+D("fwrite failed (%d bytes): %m\n", w * h * sizeof(DATA32));
+ }
   }
 shm_free();
  }

-- 




[EGIT] [core/efl] master 07/12: pdf: Tentative implementation of mono support

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

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

commit 0368adfcba149c17a25eaf1ab2291ec89d303506
Author: Jean-Philippe Andre 
Date:   Wed Jul 13 15:04:53 2016 +0900

pdf: Tentative implementation of mono support

No idea if it's correct, since I have no sample.
Also, simplify ARGB code.
---
 src/generic/evas/pdf/main.cpp | 22 --
 1 file changed, 16 insertions(+), 6 deletions(-)

diff --git a/src/generic/evas/pdf/main.cpp b/src/generic/evas/pdf/main.cpp
index 097f057..8623179 100644
--- a/src/generic/evas/pdf/main.cpp
+++ b/src/generic/evas/pdf/main.cpp
@@ -154,7 +154,21 @@ void poppler_load_image(int size_w EINA_UNUSED, int size_h 
EINA_UNUSED)
 
if (out.format() == image::format_mono)
  {
-//FIXME no idea what this format is like
+// Looks like this is 1 bit per pixel, padded to a single byte.
+// The problem is testing. I have no sample (and no doc).
+
+uint8_t *src;
+for (y = 0; y < crop_height; y++)
+  {
+ src = (uint8_t *) out.data() + y * crop_width;
+ for (x = 0; x < crop_width; x++)
+   {
+  int bit = x & 0x7;
+  int c = (*src & (1 << bit)) ? 0xFF : 0x00;
+  *dst++ = ARGB_JOIN(0xFF, c, c, c);
+  if (x & 0x7 == 0x7) src++;
+   }
+  }
  }
if (out.format() == image::format_rgb24)
  {
@@ -172,11 +186,7 @@ void poppler_load_image(int size_w EINA_UNUSED, int size_h 
EINA_UNUSED)
 
  src = (DATA32*) out.data();
  IMAGE_PIXEL_ITERATOR
-   {
-  int pos = x+y*crop_width;
-
-  dst[pos] = src[pos];
-   }
+   *dst++ = *src++;
   }
 
  end:

-- 




[EGIT] [core/efl] master 04/12: elm test: Shut up coverity warning

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

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

commit bed1e28d8505f9c013ef3f7b5edeb284c2736855
Author: Jean-Philippe Andre 
Date:   Wed Jul 13 12:58:43 2016 +0900

elm test: Shut up coverity warning

CID 1354839

It was non-sensical as there would be no iterator
if there are no children.
---
 src/bin/elementary/test_ui_box.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/elementary/test_ui_box.c b/src/bin/elementary/test_ui_box.c
index 7c83b4a..435376f 100644
--- a/src/bin/elementary/test_ui_box.c
+++ b/src/bin/elementary/test_ui_box.c
@@ -158,6 +158,8 @@ _custom_engine_layout_do(Eo *obj EINA_UNUSED, void *pd 
EINA_UNUSED,
// Note: This is a TERRIBLE layout. Just an example of the API, not showing
// how to write a proper layout function.
 
+   if (!count) return;
+
efl_gfx_geometry_get(pack, , , , );
EINA_ITERATOR_FOREACH(it, sobj)
  {

-- 




[EGIT] [core/efl] master 11/12: gfx: Add NULL check to silence coverity

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

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

commit 9cf72fe80a81cabb36f40e6186852b78750cc48d
Author: Jean-Philippe Andre 
Date:   Wed Jul 13 16:16:02 2016 +0900

gfx: Add NULL check to silence coverity

realloc() can return NULL if size is 0. It's like free().
So, the usage here is correct, and there are probably no
points to interpolate between anyway. I wonder if there
can be commands without points, though.

Fixes CID 1293004
---
 src/lib/efl/interfaces/efl_gfx_shape.c | 29 -
 1 file changed, 16 insertions(+), 13 deletions(-)

diff --git a/src/lib/efl/interfaces/efl_gfx_shape.c 
b/src/lib/efl/interfaces/efl_gfx_shape.c
index 415265f..11b38a6 100644
--- a/src/lib/efl/interfaces/efl_gfx_shape.c
+++ b/src/lib/efl/interfaces/efl_gfx_shape.c
@@ -318,7 +318,7 @@ _efl_gfx_shape_interpolate(Eo *obj, Efl_Gfx_Shape_Data *pd,
Efl_Gfx_Path_Command *cmds;
Efl_Gfx_Property property_from, property_to;
Efl_Gfx_Dash *dash = NULL;
-   double *pts, *from_pts, *to_pts;
+   double *pts;
unsigned int i, j;
 
from_pd = eo_data_scope_get(from, EFL_GFX_SHAPE_MIXIN);
@@ -351,18 +351,21 @@ _efl_gfx_shape_interpolate(Eo *obj, Efl_Gfx_Shape_Data 
*pd,
 memcpy(cmds, from_pd->commands,
sizeof (Efl_Gfx_Path_Command) * from_pd->commands_count);
 
-to_pts = to_pd->points;
-from_pts = from_pd->points;
-
-for (i = 0; cmds[i] != EFL_GFX_PATH_COMMAND_TYPE_END; i++)
-  for (j = 0; j < _efl_gfx_path_command_length(cmds[i]); j++)
-{
-   *pts = interpolate(*from_pts, *to_pts, pos_map);
-
-   pts++;
-   from_pts++;
-   to_pts++;
-}
+if (pts)
+  {
+ double *to_pts = to_pd->points;
+ double *from_pts = from_pd->points;
+
+ for (i = 0; cmds[i] != EFL_GFX_PATH_COMMAND_TYPE_END; i++)
+   for (j = 0; j < _efl_gfx_path_command_length(cmds[i]); j++)
+ {
+*pts = interpolate(*from_pts, *to_pts, pos_map);
+
+pts++;
+from_pts++;
+to_pts++;
+ }
+  }
  }
 
pd->points_count = from_pd->points_count;

-- 




[EGIT] [core/efl] master 10/12: edje: Fix coverity warning

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

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

commit 1b6825d3fef6307b5bd93b7160b97dcae0143f73
Author: Jean-Philippe Andre 
Date:   Wed Jul 13 15:44:58 2016 +0900

edje: Fix coverity warning

CID 1355234 Logically dead code

The indicated dead code may have performed some action;
that action will never occur.
In eet_data_descriptor_element_add: Code can never be
reached because of a logical contradiction (CWE-561)

Solution: use explicit range within valid values with <= and >=
rather than excluded values with > and <
---
 src/lib/eet/eet_data.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/lib/eet/eet_data.c b/src/lib/eet/eet_data.c
index 0df96af..35ef7fb 100644
--- a/src/lib/eet/eet_data.c
+++ b/src/lib/eet/eet_data.c
@@ -2223,9 +2223,8 @@ eet_data_descriptor_element_add(Eet_Data_Descriptor *edd,
 */
if ((group_type > EET_G_UNKNOWN)
&& (group_type < EET_G_LAST)
-   && (((type > EET_T_UNKNOW) && (type < EET_T_STRING))
-   || ((type > EET_T_NULL) && (type < EET_T_VALUE))
-   || ((type > EET_T_VALUE) && (type < EET_T_LAST)))
+   && (((type >= EET_T_CHAR) && (type <= EET_T_ULONG_LONG))
+   || ((type >= EET_T_F32P32) && (type <= EET_T_F8P24)))
&& (!subtype))
  {
 subtype = calloc(1, sizeof (Eet_Data_Descriptor));

-- 




[EGIT] [core/efl] master 01/12: edje_pick: Fix use after free

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

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

commit 82f546fc1fd7a2c85c3eb415b0cbf7bab8bbb088
Author: Jean-Philippe Andre 
Date:   Wed Jul 13 11:16:33 2016 +0900

edje_pick: Fix use after free

Fixes CID 1267458 (trying again)
---
 src/bin/edje/edje_pick.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/bin/edje/edje_pick.c b/src/bin/edje/edje_pick.c
index 7b5d73d..ce34ed5 100644
--- a/src/bin/edje/edje_pick.c
+++ b/src/bin/edje/edje_pick.c
@@ -1474,12 +1474,12 @@ main(int argc, char **argv)
  }
 
  free(edc);
- _edje_cache_file_unref(edf);
  edje_cache_emp_free(ce);
  eet_close(ef);
   }
 
 _edje_pick_images_copy(edf, out_file);  /* Add Images to imagelist */
+_edje_cache_file_unref(edf);
 
 /* We SKIP writing source, just can't compose it */
 /* FIXME: use Edje_Edit code to generate source */

-- 




[EGIT] [core/efl] master 09/12: edje: Add missing 'break' in edje_embryo switch

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

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

commit cdc8d15a5ca0eb478882e670af89fa914ffec8ce
Author: Jean-Philippe Andre 
Date:   Wed Jul 13 15:33:13 2016 +0900

edje: Add missing 'break' in edje_embryo switch

Fixes CID: 1352521 1352522 1352523 1352524 1352525

See 4ed9b8325
---
 src/lib/edje/edje_embryo.c | 10 ++
 1 file changed, 10 insertions(+)

diff --git a/src/lib/edje/edje_embryo.c b/src/lib/edje/edje_embryo.c
index 9c5c124..a246499 100644
--- a/src/lib/edje/edje_embryo.c
+++ b/src/lib/edje/edje_embryo.c
@@ -2732,6 +2732,8 @@ _edje_embryo_fn_set_state_val(Embryo_Program *ep, 
Embryo_Cell *params)
 
  box = (Edje_Part_Description_Box *)rp->custom->description;
  box->box.layout = s;
+
+ break;
   }
 
   case EDJE_STATE_PARAM_BOX_FALLBACK_LAYOUT:
@@ -2745,6 +2747,8 @@ _edje_embryo_fn_set_state_val(Embryo_Program *ep, 
Embryo_Cell *params)
 
  box = (Edje_Part_Description_Box *)rp->custom->description;
  box->box.alt_layout = s;
+
+ break;
   }
 
   case EDJE_STATE_PARAM_BOX_ALIGN:
@@ -2756,6 +2760,8 @@ _edje_embryo_fn_set_state_val(Embryo_Program *ep, 
Embryo_Cell *params)
  box = (Edje_Part_Description_Box *)rp->custom->description;
  GETFLOAT_T(box->box.align.x, params[3]);
  GETFLOAT_T(box->box.align.y, params[4]);
+
+ break;
   }
 
   case EDJE_STATE_PARAM_BOX_PADDING:
@@ -2767,6 +2773,8 @@ _edje_embryo_fn_set_state_val(Embryo_Program *ep, 
Embryo_Cell *params)
  box = (Edje_Part_Description_Box *)rp->custom->description;
  GETINT(box->box.padding.x, params[3]);
  GETINT(box->box.padding.y, params[4]);
+
+ break;
   }
 
   case EDJE_STATE_PARAM_BOX_MIN:
@@ -2778,6 +2786,8 @@ _edje_embryo_fn_set_state_val(Embryo_Program *ep, 
Embryo_Cell *params)
  box = (Edje_Part_Description_Box *)rp->custom->description;
  GETINT(box->box.min.h, params[3]);
  GETINT(box->box.min.v, params[4]);
+
+ break;
   }
 
 #ifdef HAVE_EPHYSICS

-- 




[EGIT] [core/efl] master 05/12: embro_cc: Shut up some coverity warning

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

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

commit 3d16cdc67e66642e12279edeb5c90438e9dc7f21
Author: Jean-Philippe Andre 
Date:   Wed Jul 13 13:16:34 2016 +0900

embro_cc: Shut up some coverity warning

CID 1039677 1039678 1039679

The expression's value does not depend on the operands; often,
this represents an inadvertent logic error.

In doarg: An operation with non-constant operands that
computes a result with constant value (CWE-569)

cell is defined as an int, not a long, so it can't be > INT_MAX.
---
 src/bin/embryo/embryo_cc_amx.h | 1 +
 src/bin/embryo/embryo_cc_sc1.c | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/bin/embryo/embryo_cc_amx.h b/src/bin/embryo/embryo_cc_amx.h
index 0118e2d..5a00e52 100644
--- a/src/bin/embryo/embryo_cc_amx.h
+++ b/src/bin/embryo/embryo_cc_amx.h
@@ -47,6 +47,7 @@
typedef unsigned intucell;
typedef int cell;
 #endif
+#define CELL_MAX INT_MAX/* assume cell is always int */
 
struct tagAMX;
typedef cell(*AMX_NATIVE) (struct tagAMX * amx,
diff --git a/src/bin/embryo/embryo_cc_sc1.c b/src/bin/embryo/embryo_cc_sc1.c
index b536934..2ca1aaf 100644
--- a/src/bin/embryo/embryo_cc_sc1.c
+++ b/src/bin/embryo/embryo_cc_sc1.c
@@ -1071,7 +1071,7 @@ declglb(char *firstname, int firsttag, int fpublic, int 
fstatic,
error(52);  /* only last dimension may be variable length */
 size = needsub([numdim]);   /* get size; size==0 for
 * "var[]" */
-#if INT_MAX < LONG_MAX
+#if INT_MAX < CELL_MAX
 if (size > INT_MAX)
error(105); /* overflow, exceeding capacity */
 #endif
@@ -1212,7 +1212,7 @@ declloc(int fstatic)
 if (numdim > 0 && dim[numdim - 1] == 0)
error(52);  /* only last dimension may be variable length */
 size = needsub([numdim]);   /* get size; size==0 for 
"var[]" */
-#if INT_MAX < LONG_MAX
+#if INT_MAX < CELL_MAX
 if (size > INT_MAX)
error(105); /* overflow, exceeding capacity */
 #endif
@@ -2668,7 +2668,7 @@ doarg(char *name, int ident, int offset, int tags[], int 
numtags,
  */
 size = needsub([arg->numdim]);  /* may be zero here,
 *it is a pointer 
anyway */
-#if INT_MAX < LONG_MAX
+#if INT_MAX < CELL_MAX
 if (size > INT_MAX)
error(105); /* overflow, exceeding capacity */
 #endif

-- 




[EGIT] [core/efl] master 03/12: elm test: Fix non sense check

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

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

commit 5871593ed16b081a3da2ef4cdb53fed8fc3612cb
Author: Jean-Philippe Andre 
Date:   Wed Jul 13 12:02:20 2016 +0900

elm test: Fix non sense check

CID 1353720 1353721
---
 src/bin/elementary/test_gengrid.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/bin/elementary/test_gengrid.c 
b/src/bin/elementary/test_gengrid.c
index 92a7b01..f1768e4 100644
--- a/src/bin/elementary/test_gengrid.c
+++ b/src/bin/elementary/test_gengrid.c
@@ -526,7 +526,7 @@ static void
 _btn_bring_in_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, void 
*event_info EINA_UNUSED)
 {
api_data *api = data;
-   if (!api && !api->grid) return;
+   if (!api || !api->grid) return;
 
Elm_Object_Item *it = elm_gengrid_selected_item_get(api->grid);
if (!it) return;
@@ -537,7 +537,7 @@ static void
 _btn_show_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, void 
*event_info EINA_UNUSED)
 {
api_data *api = data;
-   if (!api && !api->grid) return;
+   if (!api || !api->grid) return;
 
Elm_Object_Item *it = elm_gengrid_selected_item_get(api->grid);
if (!it) return;

-- 




[EGIT] [core/efl] master 12/12: eina_safepointer: Fix coverity warning

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

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

commit 4d9de121d174873ff254046f1eec17171197e5b3
Author: Jean-Philippe Andre 
Date:   Wed Jul 13 16:22:00 2016 +0900

eina_safepointer: Fix coverity warning

I guess the overflow was badly handled. Fixing it by using
explicit int intermediate value.

Fixes CID 1356616 and 1356619:

Operands don't affect result
Logically dead code
---
 src/lib/eina/eina_safepointer.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/lib/eina/eina_safepointer.c b/src/lib/eina/eina_safepointer.c
index 42433ea..94ec1ab 100644
--- a/src/lib/eina/eina_safepointer.c
+++ b/src/lib/eina/eina_safepointer.c
@@ -239,6 +239,7 @@ eina_safepointer_register(const void *target)
Eina_Memory_Table *table;
Eina_Memory_Entry *entry = NULL;
Eina_Sp_Id id = 0;
+   unsigned int gen;
 
// We silently handle NULL
if (!target) return NULL;
@@ -254,9 +255,8 @@ eina_safepointer_register(const void *target)
 
entry->ptr = (void*) target;
entry->active = 1;
-   entry->generation++;
-   if (entry->generation == EINA_MAX_GENERATIONS)
- entry->generation = 1;
+   gen = entry->generation + 1;
+   entry->generation = (gen == EINA_MAX_GENERATIONS) ? 1 : gen;
 
id = SP_COMPOSE_FINAL_ID(table->partial_id,
 (entry - table->entries),

-- 




[EGIT] [core/efl] master 02/12: edje_cc: Fix minor coverity defect

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

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

commit 0106455588a7390f36bae9ac6d789e94410a5216
Author: Jean-Philippe Andre 
Date:   Wed Jul 13 11:57:07 2016 +0900

edje_cc: Fix minor coverity defect

CID 1261439

An assigned value that is never used may represent unnecessary computation,
an incorrect algorithm, or possibly the need for cleanup or refactoring.

In source_fetch_file: A value assigned to a variable is never used. 
(CWE-563)

Tested compilation of a few EDC files with no breakage.
---
 src/bin/edje/edje_cc_sources.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/src/bin/edje/edje_cc_sources.c b/src/bin/edje/edje_cc_sources.c
index 3f119bb..1bd73af 100644
--- a/src/bin/edje/edje_cc_sources.c
+++ b/src/bin/edje/edje_cc_sources.c
@@ -185,8 +185,6 @@ source_fetch_file(const char *fil, const char *filname)
  else
p++;
   }
-
-got_hash = 0;
  }
if ((file) && (fname))
   source_fetch_file(file, fname);

-- 




[EGIT] [core/efl] master 06/12: pdf: Fix page index and

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

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

commit db27a6b9403d911f76345ecd04f53a3e29aad0ea
Author: Jean-Philippe Andre 
Date:   Wed Jul 13 14:40:18 2016 +0900

pdf: Fix page index and

The module was not able to load any PDF with a single page (since
the index starts from 0, not 1 as it was assumed).

Also, fix a CID where Coverity was very very right.

Fixes CID 1356608:

The operaton may have an undefined behavior or yield to an
unexpected result.

In poppler_load_image(int, int): A bit shift operation has
a shift amount which is too large or has a negative value.
---
 src/generic/evas/pdf/main.cpp | 11 +--
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/src/generic/evas/pdf/main.cpp b/src/generic/evas/pdf/main.cpp
index 85edf49..097f057 100644
--- a/src/generic/evas/pdf/main.cpp
+++ b/src/generic/evas/pdf/main.cpp
@@ -67,7 +67,7 @@ Eina_Bool poppler_init(const char *file, int page_nbr, int 
size_w, int size_h)
 
/* load the page */
 
-   doc_page = doc->create_page(page_nbr + 1);
+   doc_page = doc->create_page(page_nbr);
if (!doc_page)
  goto del_pdfdoc;
 
@@ -149,6 +149,9 @@ void poppler_load_image(int size_w EINA_UNUSED, int size_h 
EINA_UNUSED)
for (y = 0; y < crop_height; y++) \
  for (x = 0; x < crop_width; x++)
 
+#define ARGB_JOIN(a,r,g,b) \
+(((a) << 24) + ((r) << 16) + ((g) << 8) + (b))
+
if (out.format() == image::format_mono)
  {
 //FIXME no idea what this format is like
@@ -159,12 +162,8 @@ void poppler_load_image(int size_w EINA_UNUSED, int size_h 
EINA_UNUSED)
 src = (RGB24*) out.data();
 IMAGE_PIXEL_ITERATOR
   {
- DATA32 d = 0xFF00;
  int pos = x+y*crop_width;
- d |= src[pos][0] >> 8;
- d |= src[pos][1] >> 16;
- d |= src[pos][2] >> 24;
- dst[pos] =  d;
+ dst[pos] = ARGB_JOIN(0xFF, src[pos][0], src[pos][1], src[pos][2]);
   }
   }
 else if (out.format() == image::format_argb32)

--