[EGIT] [admin/devs] master 01/01: probie: A new probie is born!

2013-11-20 Thread Daniel Zaoui
jackdanielz pushed a commit to branch master.

http://git.enlightenment.org/admin/devs.git/commit/?id=747d2cc79542966c06235ca74d4565b1438a4825

commit 747d2cc79542966c06235ca74d4565b1438a4825
Author: Daniel Zaoui daniel.za...@samsung.com
Date:   Wed Nov 20 10:16:29 2013 +0200

probie: A new probie is born!
---
 probies/yossik/id_rsa.pub | 1 +
 probies/yossik/info.txt   | 8 
 2 files changed, 9 insertions(+)

diff --git a/probies/yossik/id_rsa.pub b/probies/yossik/id_rsa.pub
new file mode 100644
index 000..85636ba
--- /dev/null
+++ b/probies/yossik/id_rsa.pub
@@ -0,0 +1 @@
+ssh-rsa 
B3NzaC1yc2EDAQABAAABAQDZPKZpjLFUf4tmuxp3pH4jAqbrlNpIiXfmVl72ddz6D78uJbABY6UaYQ6buwWOM8/F4CVHlMc9wB3LOZJbywmcnY9YgKBTOwewu123KXEEzsMJKaZP5H6ARsz9C1ytJnEM4K7tPYG2yDbmqzo/qnqp8KSyw9uSQ6Tat5KE+dubmzhU5d7NViQ5NCnfPY54f32A9/LNo08mtCDeAEvh5roz9qCtRMQYdURERiQl8Dh5iN9LAPVoqj5e3AIhK3zfrNNn8JEBT0k3dO2ZGnjyqNt65iXO47uoYMn6D4GUTu084jiq3MwInBwGV9FDJ9u0z/XQSl1psseNaarFv+KIiep9
 yossi@yossi-laptop
diff --git a/probies/yossik/info.txt b/probies/yossik/info.txt
new file mode 100644
index 000..2841f9e
--- /dev/null
+++ b/probies/yossik/info.txt
@@ -0,0 +1,8 @@
+Login:yossik
+IRC Nick: YossiK
+Name: Yossi Kantor
+Location: Tel-Aviv, Israel
+E-Mail:   yossi.kan...@samsung.com
+Contributing: e, efl, elementary
+Group:Libraries
+Platform: Ubuntu

-- 




[EGIT] [core/elementary] master 01/01: elm - table - protect against invalid cell/row values (16bit overflow)

2013-11-20 Thread Rasterman
raster pushed a commit to branch master.

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

commit bf01751a1dd84702a5b18d2702f4bf6d7a5b2868
Author: Carsten Haitzler (Rasterman) ras...@rasterman.com
Date:   Wed Nov 20 18:06:42 2013 +0900

elm - table - protect against invalid cell/row values (16bit overflow)
---
 src/lib/elm_table.c| 39 +++
 src/lib/elm_table_legacy.h |  6 ++
 2 files changed, 45 insertions(+)

diff --git a/src/lib/elm_table.c b/src/lib/elm_table.c
index da487c3..7166fcc 100644
--- a/src/lib/elm_table.c
+++ b/src/lib/elm_table.c
@@ -343,6 +343,45 @@ _pack(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
int rowspan = va_arg(*list, int);
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
 
+   if (col  0)
+ {
+ERR(col  0);
+return;
+ }
+   if (colspan  1)
+ {
+ERR(colspan  1);
+return;
+ }
+   if ((0x - col)  colspan)
+ {
+ERR(col + colspan  0x);
+return;
+ }
+   if ((col + colspan) = 0x7)
+ {
+WRN(col + colspan getting rather large (32767));
+ }
+   if (row  0)
+ {
+ERR(row  0);
+return;
+ }
+   if (rowspan  1)
+ {
+ERR(rowspan  1);
+return;
+ }
+   if ((0x - row)  rowspan)
+ {
+ERR(row + rowspan  0x);
+return;
+ }
+   if ((row + rowspan) = 0x7)
+ {
+WRN(row + rowspan getting rather large (32767));
+ }
+   
elm_widget_sub_object_add(obj, subobj);
evas_object_table_pack(wd-resize_obj, subobj, col, row, colspan, rowspan);
 }
diff --git a/src/lib/elm_table_legacy.h b/src/lib/elm_table_legacy.h
index 77dda3a..27e06ef 100644
--- a/src/lib/elm_table_legacy.h
+++ b/src/lib/elm_table_legacy.h
@@ -68,6 +68,12 @@ EAPI void  elm_table_padding_get(const Evas_Object *obj, 
Evas_Coord *horizon
  * a value of 0 for x and y, means the top left cell of the table, and a
  * value of 1 for w and h means @p subobj only takes that 1 cell.
  *
+ * Note that columns and rows only guarantee 16bit unsigned values at best.
+ * That means that col + colspan AND row + rowspan must fit inside 16bit
+ * unsigned values cleanly. You will be warned once values exceed 15bit
+ * storage, and attempting to use values not able to fit in 16bits will
+ * result in failure.
+ * 
  * @ingroup Table
  */
 EAPI void  elm_table_pack(Evas_Object *obj, Evas_Object *subobj, int col, 
int row, int colspan, int rowspan);

-- 




[EGIT] [core/efl] master 01/01: evas - table - protect against invalid cell/row values (16bit overflow)

2013-11-20 Thread Rasterman
raster pushed a commit to branch master.

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

commit 4eb4307aa2b847e73924aa67a055294d2533090b
Author: Carsten Haitzler (Rasterman) ras...@rasterman.com
Date:   Wed Nov 20 18:06:10 2013 +0900

evas - table - protect against invalid cell/row values (16bit overflow)
---
 src/lib/evas/Evas_Legacy.h  |  6 ++
 src/lib/evas/canvas/evas_object_table.c | 34 -
 2 files changed, 31 insertions(+), 9 deletions(-)

diff --git a/src/lib/evas/Evas_Legacy.h b/src/lib/evas/Evas_Legacy.h
index 2e6f449..f2b4b2b 100644
--- a/src/lib/evas/Evas_Legacy.h
+++ b/src/lib/evas/Evas_Legacy.h
@@ -7707,6 +7707,12 @@ EAPI Eina_Bool  
evas_object_table_pack_get(const Evas_Ob
  * @param row relative-vertical position to place child.
  * @param colspan how many relative-horizontal position to use for this child.
  * @param rowspan how many relative-vertical position to use for this child.
+ * 
+ * Note that columns and rows only guarantee 16bit unsigned values at best.
+ * That means that col + colspan AND row + rowspan must fit inside 16bit
+ * unsigned values cleanly. You will be warned once values exceed 15bit
+ * storage, and attempting to use values not able to fit in 16bits will
+ * result in failure.
  *
  * @return 1 on success, 0 on failure.
  */
diff --git a/src/lib/evas/canvas/evas_object_table.c 
b/src/lib/evas/canvas/evas_object_table.c
index 2377669..3b1f533af 100644
--- a/src/lib/evas/canvas/evas_object_table.c
+++ b/src/lib/evas/canvas/evas_object_table.c
@@ -650,10 +650,8 @@ _evas_object_table_calculate_hints_regular(Evas_Object *o, 
Evas_Object_Table_Dat
_evas_object_table_cache_reset(priv);
 
/* cache interesting data */
-   memset(c-expands.h, 1, priv-size.cols);
-   memset(c-expands.v, 1, priv-size.rows);
-   memset(c-weights.h, 0, priv-size.cols);
-   memset(c-weights.v, 0, priv-size.rows);
+   memset(c-expands.h, 1, priv-size.cols * sizeof(Eina_Bool));
+   memset(c-expands.v, 1, priv-size.rows * sizeof(Eina_Bool));
EINA_LIST_FOREACH(priv-children, l, opt)
  {
 Evas_Object *child = opt-obj;
@@ -692,14 +690,14 @@ _evas_object_table_calculate_hints_regular(Evas_Object 
*o, Evas_Object_Table_Dat
   }
 
 if (!opt-expand_h)
-  memset(c-expands.h + opt-col, 0, opt-colspan);
+  memset(c-expands.h + opt-col, 0, opt-colspan * sizeof(Eina_Bool));
 else
   {
  for (i = opt-col; i  opt-col + opt-colspan; i++)
c-weights.h[i] += (weightw / (double)opt-colspan);
   }
 if (!opt-expand_v)
-  memset(c-expands.v + opt-row, 0, opt-rowspan);
+  memset(c-expands.v + opt-row, 0, opt-rowspan * sizeof(Eina_Bool));
 else
   {
  for (i = opt-row; i  opt-row + opt-rowspan; i++)
@@ -1173,17 +1171,35 @@ _pack(Eo *o, void *_pd, va_list *list)
 
Evas_Object_Table_Data *priv = _pd;
 
+   if (colspan  1)
+ {
+ERR(colspan  1);
+return;
+ }
+   if ((0x - col)  colspan)
+ {
+ERR(col + colspan  0x);
+return;
+ }
+   if ((col + colspan) = 0x7)
+ {
+WRN(col + colspan getting rather large (32767));
+ }
if (rowspan  1)
  {
 ERR(rowspan  1);
 return;
  }
-   if (colspan  1)
+   if ((0x - row)  rowspan)
  {
-ERR(colspan  1);
+ERR(row + rowspan  0x);
 return;
  }
-
+   if ((row + rowspan) = 0x7)
+ {
+WRN(row + rowspan getting rather large (32767));
+ }
+   
opt = _evas_object_table_option_get(child);
if (!opt)
  {

-- 




[EGIT] [core/efl] master 02/02: eina: fix a possible race condition during eina_file_close.

2013-11-20 Thread Jérémy Zurcher
jeyzu pushed a commit to branch master.

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

commit 58b578c9b07497496fedd51f3aa3bd434a0fa305
Author: Jérémy Zurcher jer...@asynk.ch
Date:   Wed Nov 20 10:19:16 2013 +0100

eina: fix a possible race condition during eina_file_close.

replay 7e8fb93 without the breakage
---
 ChangeLog   |  4 
 NEWS|  3 ++-
 src/lib/eina/eina_file_common.c |  9 ++---
 src/tests/eina/eina_test_file.c | 34 ++
 4 files changed, 46 insertions(+), 4 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 3dc7c28..6c3dea3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-11-20  Cedric Bail
+
+   * Eina: Fix a possible race condition during eina_file_close.
+
 2013-11-19  Tom Hacohen
 
* Evas textblock: Fixed order of tags inserted with markup_app/prepend.
diff --git a/NEWS b/NEWS
index 6a1f8bd..5ce9bcf 100644
--- a/NEWS
+++ b/NEWS
@@ -268,7 +268,8 @@ Fixes:
  - Fix memory leak in eina_xattr_value_ls.
  - Fix magic failure in eina_value_array_count when array has not been 
allocated.
  - Fix issue when wchar_t is signed and eina_unicode does negative array 
lookups.
- - Eina: fix eina_file_map_lines() to not drop of one character in the 
last line.
+ - Fix eina_file_map_lines() to not drop of one character in the last line.
+ - Fix a possible race condition during eina_file_close().
 * Eet:
  - Fix PPC (big endian) image codec bug.
  - Fix leak in eet_pbkdf2_sha1 with OpenSSL.
diff --git a/src/lib/eina/eina_file_common.c b/src/lib/eina/eina_file_common.c
index 7b05b3b..7f83c87 100644
--- a/src/lib/eina/eina_file_common.c
+++ b/src/lib/eina/eina_file_common.c
@@ -451,17 +451,20 @@ eina_file_close(Eina_File *file)
 
EINA_SAFETY_ON_NULL_RETURN(file);
 
+   eina_lock_take(_eina_file_lock_cache);
+
eina_lock_take(file-lock);
file-refcount--;
if (file-refcount == 0) leave = EINA_FALSE;
eina_lock_release(file-lock);
-   if (leave) return;
-
-   eina_lock_take(_eina_file_lock_cache);
+   if (leave) goto end;
 
eina_hash_del(_eina_file_cache, file-filename, file);
+
+   // Backend specific file resource close
eina_file_real_close(file);
 
+ end:
eina_lock_release(_eina_file_lock_cache);
 }
 
diff --git a/src/tests/eina/eina_test_file.c b/src/tests/eina/eina_test_file.c
index f2f3225..e8f735d 100644
--- a/src/tests/eina/eina_test_file.c
+++ b/src/tests/eina/eina_test_file.c
@@ -441,6 +441,39 @@ START_TEST(eina_test_file_virtualize)
 }
 END_TEST
 
+static void *
+_eina_test_file_thread(void *data EINA_UNUSED, Eina_Thread t EINA_UNUSED)
+{
+   Eina_File *f;
+   unsigned int i;
+
+   for (i = 0; i  1; ++i)
+ {
+f = eina_file_open(/bin/sh, EINA_FALSE);
+fail_if(!f);
+eina_file_close(f);
+ }
+
+   return NULL;
+}
+
+START_TEST(eina_test_file_thread)
+{
+   Eina_Thread th[4];
+   unsigned int i;
+
+   fail_if(!eina_init());
+
+   for (i = 0; i  4; i++)
+ fail_if(!(eina_thread_create(th[i], EINA_THREAD_NORMAL, 0, 
_eina_test_file_thread, NULL)));
+
+   for (i = 0; i  4; i++)
+ fail_if(eina_thread_join(th[i]) != NULL);
+
+   eina_shutdown();
+}
+END_TEST
+
 void
 eina_test_file(TCase *tc)
 {
@@ -449,5 +482,6 @@ eina_test_file(TCase *tc)
tcase_add_test(tc, eina_file_ls_simple);
tcase_add_test(tc, eina_file_map_new_test);
tcase_add_test(tc, eina_test_file_virtualize);
+   tcase_add_test(tc, eina_test_file_thread);
 }
 

-- 




[EGIT] [core/efl] master 01/02: Revert eina: fix a possible race condition during eina_file_close.

2013-11-20 Thread Jérémy Zurcher
jeyzu pushed a commit to branch master.

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

commit 8a3e021298c8d7ebf8cb587554422aa6a93edcc9
Author: Jérémy Zurcher jer...@asynk.ch
Date:   Wed Nov 20 10:11:21 2013 +0100

Revert eina: fix a possible race condition during eina_file_close.

it breaks everything

This reverts commit 7e8fb93206ee95945bb757267832537c13ab4287.
---
 ChangeLog   |  4 
 NEWS|  3 +--
 src/lib/eina/eina_file.c|  9 +++--
 src/lib/eina/eina_file_common.c | 15 +++
 src/lib/eina/eina_file_common.h |  3 ---
 src/lib/eina/eina_file_win32.c  |  7 +--
 src/tests/eina/eina_test_file.c | 34 --
 7 files changed, 16 insertions(+), 59 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 6c3dea3..3dc7c28 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,3 @@
-2013-11-20  Cedric Bail
-
-   * Eina: Fix a possible race condition during eina_file_close.
-
 2013-11-19  Tom Hacohen
 
* Evas textblock: Fixed order of tags inserted with markup_app/prepend.
diff --git a/NEWS b/NEWS
index 5ce9bcf..6a1f8bd 100644
--- a/NEWS
+++ b/NEWS
@@ -268,8 +268,7 @@ Fixes:
  - Fix memory leak in eina_xattr_value_ls.
  - Fix magic failure in eina_value_array_count when array has not been 
allocated.
  - Fix issue when wchar_t is signed and eina_unicode does negative array 
lookups.
- - Fix eina_file_map_lines() to not drop of one character in the last line.
- - Fix a possible race condition during eina_file_close().
+ - Eina: fix eina_file_map_lines() to not drop of one character in the 
last line.
 * Eet:
  - Fix PPC (big endian) image codec bug.
  - Fix leak in eet_pbkdf2_sha1 with OpenSSL.
diff --git a/src/lib/eina/eina_file.c b/src/lib/eina/eina_file.c
index 8ae5a0f..6d7ee56 100644
--- a/src/lib/eina/eina_file.c
+++ b/src/lib/eina/eina_file.c
@@ -305,6 +305,11 @@ eina_file_real_close(Eina_File *file)
 {
Eina_File_Map *map;
 
+   if (file-refcount != 0) return;
+
+   eina_hash_free(file-rmap);
+   eina_hash_free(file-map);
+
EINA_LIST_FREE(file-dead_map, map)
  {
 munmap(map-map, map-length);
@@ -315,6 +320,8 @@ eina_file_real_close(Eina_File *file)
  munmap(file-global_map, file-length);
 
if (file-fd != -1) close(file-fd);
+
+   free(file);
 }
 
 static void
@@ -905,8 +912,6 @@ eina_file_open(const char *path, Eina_Bool shared)
 n-shared = shared;
 eina_lock_new(n-lock);
 eina_hash_direct_add(_eina_file_cache, n-filename, n);
-
-   EINA_MAGIC_SET(n, EINA_FILE_MAGIC);
  }
else
  {
diff --git a/src/lib/eina/eina_file_common.c b/src/lib/eina/eina_file_common.c
index f5724d7..7b05b3b 100644
--- a/src/lib/eina/eina_file_common.c
+++ b/src/lib/eina/eina_file_common.c
@@ -451,26 +451,17 @@ eina_file_close(Eina_File *file)
 
EINA_SAFETY_ON_NULL_RETURN(file);
 
-   eina_lock_take(_eina_file_lock_cache);
-
eina_lock_take(file-lock);
file-refcount--;
if (file-refcount == 0) leave = EINA_FALSE;
eina_lock_release(file-lock);
-   if (leave) goto end;
+   if (leave) return;
 
-   eina_hash_del(_eina_file_cache, file-filename, file);
+   eina_lock_take(_eina_file_lock_cache);
 
-   // Backend specific file resource close
+   eina_hash_del(_eina_file_cache, file-filename, file);
eina_file_real_close(file);
 
-   // Generic destruction of the file
-   eina_hash_free(file-rmap); file-rmap = NULL;
-   eina_hash_free(file-map); file-map = NULL;
-   EINA_MAGIC_SET(file, 0);
-   free(file);
-
- end:
eina_lock_release(_eina_file_lock_cache);
 }
 
diff --git a/src/lib/eina/eina_file_common.h b/src/lib/eina/eina_file_common.h
index e3ee0fc..0ac704d 100644
--- a/src/lib/eina/eina_file_common.h
+++ b/src/lib/eina/eina_file_common.h
@@ -24,14 +24,11 @@
 #include eina_lock.h
 #include eina_list.h
 
-#define EINA_FILE_MAGIC 0xFEEDBEEF
-
 typedef struct _Eina_File_Map Eina_File_Map;
 typedef struct _Eina_Lines_Iterator Eina_Lines_Iterator;
 
 struct _Eina_File
 {
-   EINA_MAGIC;
const char *filename;
 
Eina_Hash *map;
diff --git a/src/lib/eina/eina_file_win32.c b/src/lib/eina/eina_file_win32.c
index 8290501..cddf2da 100644
--- a/src/lib/eina/eina_file_win32.c
+++ b/src/lib/eina/eina_file_win32.c
@@ -366,6 +366,9 @@ eina_file_real_close(Eina_File *file)
 {
Eina_File_Map *map;
 
+   eina_hash_free(file-rmap);
+   eina_hash_free(file-map);
+
EINA_LIST_FREE(file-dead_map, map)
  {
 UnmapViewOfFile(map-map);
@@ -377,6 +380,8 @@ eina_file_real_close(Eina_File *file)
 
if (file-fm) CloseHandle(file-fm);
if (file-handle) CloseHandle(file-handle);
+
+   free(file);
 }
 
 static void
@@ -832,8 +837,6 @@ eina_file_open(const char *path, Eina_Bool shared)
 n-shared = shared;
 eina_lock_new(n-lock);
 eina_hash_direct_add(_eina_file_cache, n-filename, n);
-
-   EINA_MAGIC_SET(n, 

Re: [E-devel] [EGIT] [core/efl] master 01/02: Revert eina: fix a possible race condition during eina_file_close.

2013-11-20 Thread Cedric BAIL
On Wed, Nov 20, 2013 at 6:11 PM, Jérémy Zurcher jer...@asynk.ch wrote:
 jeyzu pushed a commit to branch master.

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

 commit 8a3e021298c8d7ebf8cb587554422aa6a93edcc9
 Author: Jérémy Zurcher jer...@asynk.ch
 Date:   Wed Nov 20 10:11:21 2013 +0100

 Revert eina: fix a possible race condition during eina_file_close.

 it breaks everything

Please elaborate. It work for me and solve an actual bugs. How do you
see the problem ?

 This reverts commit 7e8fb93206ee95945bb757267832537c13ab4287.
 ---
  ChangeLog   |  4 
  NEWS|  3 +--
  src/lib/eina/eina_file.c|  9 +++--
  src/lib/eina/eina_file_common.c | 15 +++
  src/lib/eina/eina_file_common.h |  3 ---
  src/lib/eina/eina_file_win32.c  |  7 +--
  src/tests/eina/eina_test_file.c | 34 --
  7 files changed, 16 insertions(+), 59 deletions(-)

 diff --git a/ChangeLog b/ChangeLog
 index 6c3dea3..3dc7c28 100644
 --- a/ChangeLog
 +++ b/ChangeLog
 @@ -1,7 +1,3 @@
 -2013-11-20  Cedric Bail
 -
 -   * Eina: Fix a possible race condition during eina_file_close.
 -
  2013-11-19  Tom Hacohen

 * Evas textblock: Fixed order of tags inserted with 
 markup_app/prepend.
 diff --git a/NEWS b/NEWS
 index 5ce9bcf..6a1f8bd 100644
 --- a/NEWS
 +++ b/NEWS
 @@ -268,8 +268,7 @@ Fixes:
   - Fix memory leak in eina_xattr_value_ls.
   - Fix magic failure in eina_value_array_count when array has not been 
 allocated.
   - Fix issue when wchar_t is signed and eina_unicode does negative array 
 lookups.
 - - Fix eina_file_map_lines() to not drop of one character in the last 
 line.
 - - Fix a possible race condition during eina_file_close().
 + - Eina: fix eina_file_map_lines() to not drop of one character in the 
 last line.
  * Eet:
   - Fix PPC (big endian) image codec bug.
   - Fix leak in eet_pbkdf2_sha1 with OpenSSL.
 diff --git a/src/lib/eina/eina_file.c b/src/lib/eina/eina_file.c
 index 8ae5a0f..6d7ee56 100644
 --- a/src/lib/eina/eina_file.c
 +++ b/src/lib/eina/eina_file.c
 @@ -305,6 +305,11 @@ eina_file_real_close(Eina_File *file)
  {
 Eina_File_Map *map;

 +   if (file-refcount != 0) return;
 +
 +   eina_hash_free(file-rmap);
 +   eina_hash_free(file-map);
 +
 EINA_LIST_FREE(file-dead_map, map)
   {
  munmap(map-map, map-length);
 @@ -315,6 +320,8 @@ eina_file_real_close(Eina_File *file)
   munmap(file-global_map, file-length);

 if (file-fd != -1) close(file-fd);
 +
 +   free(file);
  }

  static void
 @@ -905,8 +912,6 @@ eina_file_open(const char *path, Eina_Bool shared)
  n-shared = shared;
  eina_lock_new(n-lock);
  eina_hash_direct_add(_eina_file_cache, n-filename, n);
 -
 -   EINA_MAGIC_SET(n, EINA_FILE_MAGIC);
   }
 else
   {
 diff --git a/src/lib/eina/eina_file_common.c b/src/lib/eina/eina_file_common.c
 index f5724d7..7b05b3b 100644
 --- a/src/lib/eina/eina_file_common.c
 +++ b/src/lib/eina/eina_file_common.c
 @@ -451,26 +451,17 @@ eina_file_close(Eina_File *file)

 EINA_SAFETY_ON_NULL_RETURN(file);

 -   eina_lock_take(_eina_file_lock_cache);
 -
 eina_lock_take(file-lock);
 file-refcount--;
 if (file-refcount == 0) leave = EINA_FALSE;
 eina_lock_release(file-lock);
 -   if (leave) goto end;
 +   if (leave) return;

 -   eina_hash_del(_eina_file_cache, file-filename, file);
 +   eina_lock_take(_eina_file_lock_cache);

 -   // Backend specific file resource close
 +   eina_hash_del(_eina_file_cache, file-filename, file);
 eina_file_real_close(file);

 -   // Generic destruction of the file
 -   eina_hash_free(file-rmap); file-rmap = NULL;
 -   eina_hash_free(file-map); file-map = NULL;
 -   EINA_MAGIC_SET(file, 0);
 -   free(file);
 -
 - end:
 eina_lock_release(_eina_file_lock_cache);
  }

 diff --git a/src/lib/eina/eina_file_common.h b/src/lib/eina/eina_file_common.h
 index e3ee0fc..0ac704d 100644
 --- a/src/lib/eina/eina_file_common.h
 +++ b/src/lib/eina/eina_file_common.h
 @@ -24,14 +24,11 @@
  #include eina_lock.h
  #include eina_list.h

 -#define EINA_FILE_MAGIC 0xFEEDBEEF
 -
  typedef struct _Eina_File_Map Eina_File_Map;
  typedef struct _Eina_Lines_Iterator Eina_Lines_Iterator;

  struct _Eina_File
  {
 -   EINA_MAGIC;
 const char *filename;

 Eina_Hash *map;
 diff --git a/src/lib/eina/eina_file_win32.c b/src/lib/eina/eina_file_win32.c
 index 8290501..cddf2da 100644
 --- a/src/lib/eina/eina_file_win32.c
 +++ b/src/lib/eina/eina_file_win32.c
 @@ -366,6 +366,9 @@ eina_file_real_close(Eina_File *file)
  {
 Eina_File_Map *map;

 +   eina_hash_free(file-rmap);
 +   eina_hash_free(file-map);
 +
 EINA_LIST_FREE(file-dead_map, map)
   {
  UnmapViewOfFile(map-map);
 @@ -377,6 +380,8 @@ eina_file_real_close(Eina_File *file)

 if (file-fm) CloseHandle(file-fm);
 if (file-handle) 

Re: [E-devel] [EGIT] [core/efl] master 01/02: Revert eina: fix a possible race condition during eina_file_close.

2013-11-20 Thread Jérémy Zurcher
sorry,

random crash on e start,
no background, no wallpaper preview in settings, terminology crash (does not 
find its theme files)

I rm -fr and rebuild everything to be sure before starting to search for an 
answer

On Wednesday 20 November 2013  18:13, Cedric BAIL wrote :
 On Wed, Nov 20, 2013 at 6:11 PM, Jérémy Zurcher jer...@asynk.ch wrote:
  jeyzu pushed a commit to branch master.
 
  http://git.enlightenment.org/core/efl.git/commit/?id=8a3e021298c8d7ebf8cb587554422aa6a93edcc9
 
  commit 8a3e021298c8d7ebf8cb587554422aa6a93edcc9
  Author: Jérémy Zurcher jer...@asynk.ch
  Date:   Wed Nov 20 10:11:21 2013 +0100
 
  Revert eina: fix a possible race condition during eina_file_close.
 
  it breaks everything
 
 Please elaborate. It work for me and solve an actual bugs. How do you
 see the problem ?
 
  This reverts commit 7e8fb93206ee95945bb757267832537c13ab4287.
  ---
   ChangeLog   |  4 
   NEWS|  3 +--
   src/lib/eina/eina_file.c|  9 +++--
   src/lib/eina/eina_file_common.c | 15 +++
   src/lib/eina/eina_file_common.h |  3 ---
   src/lib/eina/eina_file_win32.c  |  7 +--
   src/tests/eina/eina_test_file.c | 34 --
   7 files changed, 16 insertions(+), 59 deletions(-)
 
  diff --git a/ChangeLog b/ChangeLog
  index 6c3dea3..3dc7c28 100644
  --- a/ChangeLog
  +++ b/ChangeLog
  @@ -1,7 +1,3 @@
  -2013-11-20  Cedric Bail
  -
  -   * Eina: Fix a possible race condition during eina_file_close.
  -
   2013-11-19  Tom Hacohen
 
  * Evas textblock: Fixed order of tags inserted with 
  markup_app/prepend.
  diff --git a/NEWS b/NEWS
  index 5ce9bcf..6a1f8bd 100644
  --- a/NEWS
  +++ b/NEWS
  @@ -268,8 +268,7 @@ Fixes:
- Fix memory leak in eina_xattr_value_ls.
- Fix magic failure in eina_value_array_count when array has not been 
  allocated.
- Fix issue when wchar_t is signed and eina_unicode does negative 
  array lookups.
  - - Fix eina_file_map_lines() to not drop of one character in the last 
  line.
  - - Fix a possible race condition during eina_file_close().
  + - Eina: fix eina_file_map_lines() to not drop of one character in the 
  last line.
   * Eet:
- Fix PPC (big endian) image codec bug.
- Fix leak in eet_pbkdf2_sha1 with OpenSSL.
  diff --git a/src/lib/eina/eina_file.c b/src/lib/eina/eina_file.c
  index 8ae5a0f..6d7ee56 100644
  --- a/src/lib/eina/eina_file.c
  +++ b/src/lib/eina/eina_file.c
  @@ -305,6 +305,11 @@ eina_file_real_close(Eina_File *file)
   {
  Eina_File_Map *map;
 
  +   if (file-refcount != 0) return;
  +
  +   eina_hash_free(file-rmap);
  +   eina_hash_free(file-map);
  +
  EINA_LIST_FREE(file-dead_map, map)
{
   munmap(map-map, map-length);
  @@ -315,6 +320,8 @@ eina_file_real_close(Eina_File *file)
munmap(file-global_map, file-length);
 
  if (file-fd != -1) close(file-fd);
  +
  +   free(file);
   }
 
   static void
  @@ -905,8 +912,6 @@ eina_file_open(const char *path, Eina_Bool shared)
   n-shared = shared;
   eina_lock_new(n-lock);
   eina_hash_direct_add(_eina_file_cache, n-filename, n);
  -
  -   EINA_MAGIC_SET(n, EINA_FILE_MAGIC);
}
  else
{
  diff --git a/src/lib/eina/eina_file_common.c 
  b/src/lib/eina/eina_file_common.c
  index f5724d7..7b05b3b 100644
  --- a/src/lib/eina/eina_file_common.c
  +++ b/src/lib/eina/eina_file_common.c
  @@ -451,26 +451,17 @@ eina_file_close(Eina_File *file)
 
  EINA_SAFETY_ON_NULL_RETURN(file);
 
  -   eina_lock_take(_eina_file_lock_cache);
  -
  eina_lock_take(file-lock);
  file-refcount--;
  if (file-refcount == 0) leave = EINA_FALSE;
  eina_lock_release(file-lock);
  -   if (leave) goto end;
  +   if (leave) return;
 
  -   eina_hash_del(_eina_file_cache, file-filename, file);
  +   eina_lock_take(_eina_file_lock_cache);
 
  -   // Backend specific file resource close
  +   eina_hash_del(_eina_file_cache, file-filename, file);
  eina_file_real_close(file);
 
  -   // Generic destruction of the file
  -   eina_hash_free(file-rmap); file-rmap = NULL;
  -   eina_hash_free(file-map); file-map = NULL;
  -   EINA_MAGIC_SET(file, 0);
  -   free(file);
  -
  - end:
  eina_lock_release(_eina_file_lock_cache);
   }
 
  diff --git a/src/lib/eina/eina_file_common.h 
  b/src/lib/eina/eina_file_common.h
  index e3ee0fc..0ac704d 100644
  --- a/src/lib/eina/eina_file_common.h
  +++ b/src/lib/eina/eina_file_common.h
  @@ -24,14 +24,11 @@
   #include eina_lock.h
   #include eina_list.h
 
  -#define EINA_FILE_MAGIC 0xFEEDBEEF
  -
   typedef struct _Eina_File_Map Eina_File_Map;
   typedef struct _Eina_Lines_Iterator Eina_Lines_Iterator;
 
   struct _Eina_File
   {
  -   EINA_MAGIC;
  const char *filename;
 
  Eina_Hash *map;
  diff --git a/src/lib/eina/eina_file_win32.c b/src/lib/eina/eina_file_win32.c
  index 8290501..cddf2da 100644
  --- 

Re: [E-devel] [EGIT] [core/efl] master 01/02: Revert eina: fix a possible race condition during eina_file_close.

2013-11-20 Thread Cedric BAIL
On Wed, Nov 20, 2013 at 6:30 PM, Jérémy Zurcher jer...@asynk.ch wrote:
 random crash on e start,
 no background, no wallpaper preview in settings, terminology crash (does not 
 find its theme files)

Weird, I have all of them working with that patch here. What is your
architecture/system ?
-- 
Cedric BAIL

--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/efl] master 01/02: Revert eina: fix a possible race condition during eina_file_close.

2013-11-20 Thread Stefan Schmidt
Hello.

On Wed, 2013-11-20 at 10:30, Jérémy Zurcher wrote:
 sorry,
 
 random crash on e start,
 no background, no wallpaper preview in settings, terminology crash (does not 
 find its theme files)

Besides the termininology crash I just had exactly the same.

Let me rebuild with the revert and check.

regards
Stefan Schmidt

--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/efl] master 01/01: edje - removed unused function.

2013-11-20 Thread ChunEon Park
hermet pushed a commit to branch master.

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

commit 21b82129025d96d872d2d7fda1eb62c67a5b5207
Author: ChunEon Park her...@hermet.pe.kr
Date:   Wed Nov 20 18:52:12 2013 +0900

edje - removed unused function.
---
 src/lib/edje/edje_calc.c| 6 --
 src/lib/edje/edje_private.h | 1 -
 2 files changed, 7 deletions(-)

diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c
index 4f02f78..2f9f1d2 100644
--- a/src/lib/edje/edje_calc.c
+++ b/src/lib/edje/edje_calc.c
@@ -765,12 +765,6 @@ _edje_recalc_do(Edje *ed)
  }
 }
 
-void
-_edje_part_recalc_1(Edje *ed, Edje_Real_Part *ep)
-{
-  _edje_part_recalc(ed, ep, FLAG_XY, NULL);
-}
-
 int
 _edje_part_dragable_calc(Edje *ed EINA_UNUSED, Edje_Real_Part *ep, FLOAT_T *x, 
FLOAT_T *y)
 {
diff --git a/src/lib/edje/edje_private.h b/src/lib/edje/edje_private.h
index 524335e..7fc53fb 100644
--- a/src/lib/edje/edje_private.h
+++ b/src/lib/edje/edje_private.h
@@ -1947,7 +1947,6 @@ Edje_Part_Description_Common 
*_edje_part_description_find(Edje *ed,
 void  _edje_part_description_apply(Edje *ed, Edje_Real_Part *ep, const char  
*d1, double v1, const char *d2, double v2);
 void  _edje_recalc(Edje *ed);
 void  _edje_recalc_do(Edje *ed);
-void  _edje_part_recalc_1(Edje *ed, Edje_Real_Part *ep);
 int   _edje_part_dragable_calc(Edje *ed, Edje_Real_Part *ep, FLOAT_T *x, 
FLOAT_T *y);
 void  _edje_dragable_pos_set(Edje *ed, Edje_Real_Part *ep, FLOAT_T x, FLOAT_T 
y);
 

-- 




[EGIT] [apps/ecrire] master 01/01: Updated ecrire icon.

2013-11-20 Thread Tom Hacohen
tasn pushed a commit to branch master.

http://git.enlightenment.org/apps/ecrire.git/commit/?id=1ba3d389203c4bf74b19c7f109259ed8859ef0b2

commit 1ba3d389203c4bf74b19c7f109259ed8859ef0b2
Author: Tom Hacohen t...@stosb.com
Date:   Wed Nov 20 10:04:38 2013 +

Updated ecrire icon.

Many thanks to ApB (Apostolos B.) for providing the new one.

This closes T534
---
 AUTHORS |   3 +++
 data/ecrire.png | Bin 8014 - 9249 bytes
 2 files changed, 3 insertions(+)

diff --git a/AUTHORS b/AUTHORS
index ee22837..b6633c7 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -1 +1,4 @@
 Tom Hacohen t...@stosb.com
+
+Ecrire icon:
+ApB (Apostolos B.)
diff --git a/data/ecrire.png b/data/ecrire.png
index 673a412..febce16 100644
Binary files a/data/ecrire.png and b/data/ecrire.png differ

-- 




Re: [E-devel] [EGIT] [core/efl] master 01/02: Revert eina: fix a possible race condition during eina_file_close.

2013-11-20 Thread Jérémy Zurcher
On Wednesday 20 November 2013  18:25, Cedric BAIL wrote :
 On Wed, Nov 20, 2013 at 6:30 PM, Jérémy Zurcher jer...@asynk.ch wrote:
  random crash on e start,
  no background, no wallpaper preview in settings, terminology crash (does 
  not find its theme files)
 
 Weird, I have all of them working with that patch here. What is your
 architecture/system ?

64bits
model name  : Intel(R) Core(TM)2 Duo CPU E7500  @ 2.93GHz

this only is enough to break me !

diff --git a/src/lib/eina/eina_file_common.h b/src/lib/eina/eina_file_common.h
index 0ac704d..e3ee0fc 100644
--- a/src/lib/eina/eina_file_common.h
+++ b/src/lib/eina/eina_file_common.h
@@ -24,11 +24,14 @@
 #include eina_lock.h
 #include eina_list.h
 
+#define EINA_FILE_MAGIC 0xFEEDBEEF
+
 typedef struct _Eina_File_Map Eina_File_Map;
 typedef struct _Eina_Lines_Iterator Eina_Lines_Iterator;
 
 struct _Eina_File
 {
+   EINA_MAGIC;
const char *filename;
 
Eina_Hash *map;

 -- 
 Cedric BAIL
 
 --
 Shape the Mobile Experience: Free Subscription
 Software experts and developers: Be at the forefront of tech innovation.
 Intel(R) Software Adrenaline delivers strategic insight and game-changing 
 conversations that shape the rapidly evolving mobile landscape. Sign up now. 
 http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
--- Hell'O from Yverdoom

Jérémy (jeyzu)

--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
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: Docs fix for ecore_animator_add fixed

2013-11-20 Thread Tom Hacohen
You stole credit. :)

Either don't change people's commits (and just add a fixup commit) or 
make sure to manually set the author to the correct value...

--
Tom.

On 19/11/13 23:42, Carsten Haitzler (Rasterman) wrote:
 raster pushed a commit to branch master.

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

 commit 0146e3dacc87189eba100bf5489498290ec9f86b
 Author: Carsten Haitzler (Rasterman) ras...@rasterman.com
 Date:   Wed Nov 20 08:41:42 2013 +0900

  Docs fix for ecore_animator_add fixed

  Summary:
  Function returns boolean value, docs said it can return int.
  I had fixed that.

  Reviewers: cedric, raster

  Reviewed By: raster

  CC: cedric

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

 diff --git a/src/lib/ecore/Ecore_Legacy.h b/src/lib/ecore/Ecore_Legacy.h
 index 0bc0009..d7d01ce 100644
 --- a/src/lib/ecore/Ecore_Legacy.h
 +++ b/src/lib/ecore/Ecore_Legacy.h
 @@ -86,9 +86,9 @@ EAPI void *ecore_poller_del(Ecore_Poller *poller);
* the @p frametime interval set by ecore_animator_frametime_set(). The
* function will be passed the @p data pointer as its parameter.
*
 - * When the animator @p func is called, it must return a value of either 1 or
 - * 0. If it returns 1 (or ECORE_CALLBACK_RENEW), it will be called again at
 - * the next tick, or if it returns 0 (or ECORE_CALLBACK_CANCEL) it will be
 + * When the animator @p func is called, it must return a boolean value.
 + * If it returns EINA_TRUE (or ECORE_CALLBACK_RENEW), it will be called 
 again at
 + * the next tick, or if it returns EINA_FALSE (or ECORE_CALLBACK_CANCEL) it 
 will be
* deleted automatically making any references/handles for it invalid.
*
* @note The default @p frametime value is 1/30th of a second.



--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
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: Docs fix for ecore_animator_add fixed

2013-11-20 Thread Daniel Juyung Seo
btw how did this happen? arc didnt work?

Daniel Juyung Seo (SeoZ)
On Nov 20, 2013 7:15 PM, Tom Hacohen tom.haco...@samsung.com wrote:

 You stole credit. :)

 Either don't change people's commits (and just add a fixup commit) or
 make sure to manually set the author to the correct value...

 --
 Tom.

 On 19/11/13 23:42, Carsten Haitzler (Rasterman) wrote:
  raster pushed a commit to branch master.
 
 
 http://git.enlightenment.org/core/efl.git/commit/?id=0146e3dacc87189eba100bf5489498290ec9f86b
 
  commit 0146e3dacc87189eba100bf5489498290ec9f86b
  Author: Carsten Haitzler (Rasterman) ras...@rasterman.com
  Date:   Wed Nov 20 08:41:42 2013 +0900
 
   Docs fix for ecore_animator_add fixed
 
   Summary:
   Function returns boolean value, docs said it can return int.
   I had fixed that.
 
   Reviewers: cedric, raster
 
   Reviewed By: raster
 
   CC: cedric
 
   Differential Revision: https://phab.enlightenment.org/D342
  ---
src/lib/ecore/Ecore_Legacy.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
 
  diff --git a/src/lib/ecore/Ecore_Legacy.h b/src/lib/ecore/Ecore_Legacy.h
  index 0bc0009..d7d01ce 100644
  --- a/src/lib/ecore/Ecore_Legacy.h
  +++ b/src/lib/ecore/Ecore_Legacy.h
  @@ -86,9 +86,9 @@ EAPI void *ecore_poller_del(Ecore_Poller *poller);
 * the @p frametime interval set by ecore_animator_frametime_set(). The
 * function will be passed the @p data pointer as its parameter.
 *
  - * When the animator @p func is called, it must return a value of
 either 1 or
  - * 0. If it returns 1 (or ECORE_CALLBACK_RENEW), it will be called
 again at
  - * the next tick, or if it returns 0 (or ECORE_CALLBACK_CANCEL) it will
 be
  + * When the animator @p func is called, it must return a boolean value.
  + * If it returns EINA_TRUE (or ECORE_CALLBACK_RENEW), it will be called
 again at
  + * the next tick, or if it returns EINA_FALSE (or
 ECORE_CALLBACK_CANCEL) it will be
 * deleted automatically making any references/handles for it invalid.
 *
 * @note The default @p frametime value is 1/30th of a second.
 



 --
 Shape the Mobile Experience: Free Subscription
 Software experts and developers: Be at the forefront of tech innovation.
 Intel(R) Software Adrenaline delivers strategic insight and game-changing
 conversations that shape the rapidly evolving mobile landscape. Sign up
 now.
 http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
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: Docs fix for ecore_animator_add fixed

2013-11-20 Thread Tom Hacohen
On 20/11/13 10:32, Daniel Juyung Seo wrote:
 btw how did this happen? arc didnt work?


No idea actually.

--
Tom.


--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
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: Docs fix for ecore_animator_add fixed

2013-11-20 Thread The Rasterman
On Wed, 20 Nov 2013 10:10:07 + Tom Hacohen tom.haco...@samsung.com said:

 You stole credit. :)
 
 Either don't change people's commits (and just add a fixup commit) or 
 make sure to manually set the author to the correct value...

i didnt steal credit - i used arc toi patch it in it SHOULD have kept author.
it has in the past. the tool went wrong somehow - i don't know why/how. arch
patch etc. set the author FROM the phab/arc patch info. or have in the past.

 --
 Tom.
 
 On 19/11/13 23:42, Carsten Haitzler (Rasterman) wrote:
  raster pushed a commit to branch master.
 
  http://git.enlightenment.org/core/efl.git/commit/?id=0146e3dacc87189eba100bf5489498290ec9f86b
 
  commit 0146e3dacc87189eba100bf5489498290ec9f86b
  Author: Carsten Haitzler (Rasterman) ras...@rasterman.com
  Date:   Wed Nov 20 08:41:42 2013 +0900
 
   Docs fix for ecore_animator_add fixed
 
   Summary:
   Function returns boolean value, docs said it can return int.
   I had fixed that.
 
   Reviewers: cedric, raster
 
   Reviewed By: raster
 
   CC: cedric
 
   Differential Revision: https://phab.enlightenment.org/D342
  ---
src/lib/ecore/Ecore_Legacy.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
 
  diff --git a/src/lib/ecore/Ecore_Legacy.h b/src/lib/ecore/Ecore_Legacy.h
  index 0bc0009..d7d01ce 100644
  --- a/src/lib/ecore/Ecore_Legacy.h
  +++ b/src/lib/ecore/Ecore_Legacy.h
  @@ -86,9 +86,9 @@ EAPI void *ecore_poller_del(Ecore_Poller *poller);
 * the @p frametime interval set by ecore_animator_frametime_set(). The
 * function will be passed the @p data pointer as its parameter.
 *
  - * When the animator @p func is called, it must return a value of either 1
  or
  - * 0. If it returns 1 (or ECORE_CALLBACK_RENEW), it will be called again at
  - * the next tick, or if it returns 0 (or ECORE_CALLBACK_CANCEL) it will be
  + * When the animator @p func is called, it must return a boolean value.
  + * If it returns EINA_TRUE (or ECORE_CALLBACK_RENEW), it will be called
  again at
  + * the next tick, or if it returns EINA_FALSE (or ECORE_CALLBACK_CANCEL)
  it will be
 * deleted automatically making any references/handles for it invalid.
 *
 * @note The default @p frametime value is 1/30th of a second.
 
 
 
 --
 Shape the Mobile Experience: Free Subscription
 Software experts and developers: Be at the forefront of tech innovation.
 Intel(R) Software Adrenaline delivers strategic insight and game-changing 
 conversations that shape the rapidly evolving mobile landscape. Sign up now. 
 http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
 ___
 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


--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
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: Docs fix for ecore_animator_add fixed

2013-11-20 Thread The Rasterman
On Wed, 20 Nov 2013 19:32:59 +0900 Daniel Juyung Seo seojuyu...@gmail.com
said:

 btw how did this happen? arc didnt work?

arc somehow didnt do the right thing author. it's the first time i used arc on
my desktop at home since i re-installed with arch - it works fine on my laptop
on arch so i dont know why.

 Daniel Juyung Seo (SeoZ)
 On Nov 20, 2013 7:15 PM, Tom Hacohen tom.haco...@samsung.com wrote:
 
  You stole credit. :)
 
  Either don't change people's commits (and just add a fixup commit) or
  make sure to manually set the author to the correct value...
 
  --
  Tom.
 
  On 19/11/13 23:42, Carsten Haitzler (Rasterman) wrote:
   raster pushed a commit to branch master.
  
  
  http://git.enlightenment.org/core/efl.git/commit/?id=0146e3dacc87189eba100bf5489498290ec9f86b
  
   commit 0146e3dacc87189eba100bf5489498290ec9f86b
   Author: Carsten Haitzler (Rasterman) ras...@rasterman.com
   Date:   Wed Nov 20 08:41:42 2013 +0900
  
Docs fix for ecore_animator_add fixed
  
Summary:
Function returns boolean value, docs said it can return int.
I had fixed that.
  
Reviewers: cedric, raster
  
Reviewed By: raster
  
CC: cedric
  
Differential Revision: https://phab.enlightenment.org/D342
   ---
 src/lib/ecore/Ecore_Legacy.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
  
   diff --git a/src/lib/ecore/Ecore_Legacy.h b/src/lib/ecore/Ecore_Legacy.h
   index 0bc0009..d7d01ce 100644
   --- a/src/lib/ecore/Ecore_Legacy.h
   +++ b/src/lib/ecore/Ecore_Legacy.h
   @@ -86,9 +86,9 @@ EAPI void *ecore_poller_del(Ecore_Poller *poller);
  * the @p frametime interval set by ecore_animator_frametime_set(). The
  * function will be passed the @p data pointer as its parameter.
  *
   - * When the animator @p func is called, it must return a value of
  either 1 or
   - * 0. If it returns 1 (or ECORE_CALLBACK_RENEW), it will be called
  again at
   - * the next tick, or if it returns 0 (or ECORE_CALLBACK_CANCEL) it will
  be
   + * When the animator @p func is called, it must return a boolean value.
   + * If it returns EINA_TRUE (or ECORE_CALLBACK_RENEW), it will be called
  again at
   + * the next tick, or if it returns EINA_FALSE (or
  ECORE_CALLBACK_CANCEL) it will be
  * deleted automatically making any references/handles for it invalid.
  *
  * @note The default @p frametime value is 1/30th of a second.
  
 
 
 
  --
  Shape the Mobile Experience: Free Subscription
  Software experts and developers: Be at the forefront of tech innovation.
  Intel(R) Software Adrenaline delivers strategic insight and game-changing
  conversations that shape the rapidly evolving mobile landscape. Sign up
  now.
  http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
  ___
  enlightenment-devel mailing list
  enlightenment-devel@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
 
 --
 Shape the Mobile Experience: Free Subscription
 Software experts and developers: Be at the forefront of tech innovation.
 Intel(R) Software Adrenaline delivers strategic insight and game-changing 
 conversations that shape the rapidly evolving mobile landscape. Sign up now. 
 http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
 ___
 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


--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/efl] master 02/02: eina: cleanup file destruction and reintroduce EINA_MAGIC use.

2013-11-20 Thread Cedric Bail
cedric pushed a commit to branch master.

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

commit 0cfb40b7fb03a96973fe27542b4a5a739eca4386
Author: Cedric Bail cedric.b...@samsung.com
Date:   Wed Nov 20 20:06:50 2013 +0900

eina: cleanup file destruction and reintroduce EINA_MAGIC use.
---
 src/lib/eina/eina_file.c| 11 +++
 src/lib/eina/eina_file_common.c | 19 ---
 src/lib/eina/eina_file_common.h |  4 
 src/lib/eina/eina_file_win32.c  |  9 +++--
 4 files changed, 26 insertions(+), 17 deletions(-)

diff --git a/src/lib/eina/eina_file.c b/src/lib/eina/eina_file.c
index 6d7ee56..1ae3681 100644
--- a/src/lib/eina/eina_file.c
+++ b/src/lib/eina/eina_file.c
@@ -305,11 +305,6 @@ eina_file_real_close(Eina_File *file)
 {
Eina_File_Map *map;
 
-   if (file-refcount != 0) return;
-
-   eina_hash_free(file-rmap);
-   eina_hash_free(file-map);
-
EINA_LIST_FREE(file-dead_map, map)
  {
 munmap(map-map, map-length);
@@ -320,8 +315,6 @@ eina_file_real_close(Eina_File *file)
  munmap(file-global_map, file-length);
 
if (file-fd != -1) close(file-fd);
-
-   free(file);
 }
 
 static void
@@ -875,7 +868,7 @@ eina_file_open(const char *path, Eina_Bool shared)
  {
 file-delete_me = EINA_TRUE;
 eina_hash_del(_eina_file_cache, file-filename, file);
-eina_file_real_close(file);
+   eina_file_clean_close(file);
 file = NULL;
  }
 
@@ -912,6 +905,8 @@ eina_file_open(const char *path, Eina_Bool shared)
 n-shared = shared;
 eina_lock_new(n-lock);
 eina_hash_direct_add(_eina_file_cache, n-filename, n);
+
+   EINA_MAGIC_SET(n, EINA_FILE_MAGIC);
  }
else
  {
diff --git a/src/lib/eina/eina_file_common.c b/src/lib/eina/eina_file_common.c
index 7f83c87..7952190 100644
--- a/src/lib/eina/eina_file_common.c
+++ b/src/lib/eina/eina_file_common.c
@@ -444,6 +444,21 @@ eina_file_dup(const Eina_File *f)
return file;
 }
 
+void
+eina_file_clean_close(Eina_File *file)
+{
+   // Generic destruction of the file
+   eina_hash_free(file-rmap); file-rmap = NULL;
+   eina_hash_free(file-map); file-map = NULL;
+
+   // Backend specific file resource close
+   eina_file_real_close(file);
+
+   // Final death
+   EINA_MAGIC_SET(file, 0);
+   free(file);   
+}
+
 EAPI void
 eina_file_close(Eina_File *file)
 {
@@ -461,9 +476,7 @@ eina_file_close(Eina_File *file)
 
eina_hash_del(_eina_file_cache, file-filename, file);
 
-   // Backend specific file resource close
-   eina_file_real_close(file);
-
+   eina_file_clean_close(file);
  end:
eina_lock_release(_eina_file_lock_cache);
 }
diff --git a/src/lib/eina/eina_file_common.h b/src/lib/eina/eina_file_common.h
index 0ac704d..62ad2b2 100644
--- a/src/lib/eina/eina_file_common.h
+++ b/src/lib/eina/eina_file_common.h
@@ -24,11 +24,14 @@
 #include eina_lock.h
 #include eina_list.h
 
+#define EINA_FILE_MAGIC 0xFEEDBEEF
+
 typedef struct _Eina_File_Map Eina_File_Map;
 typedef struct _Eina_Lines_Iterator Eina_Lines_Iterator;
 
 struct _Eina_File
 {
+   EINA_MAGIC;
const char *filename;
 
Eina_Hash *map;
@@ -121,6 +124,7 @@ struct _Eina_Lines_Iterator
 Eina_Bool eina_file_path_relative(const char *path);
 Eina_Tmpstr *eina_file_current_directory_get(const char *path, size_t len);
 char *eina_file_cleanup(Eina_Tmpstr *path);
+void eina_file_clean_close(Eina_File *file);
 void eina_file_real_close(Eina_File *file);
 void eina_file_flush(Eina_File *file, unsigned long int length);
 void eina_file_common_map_free(Eina_File *file, void *map,
diff --git a/src/lib/eina/eina_file_win32.c b/src/lib/eina/eina_file_win32.c
index cddf2da..7cb108d 100644
--- a/src/lib/eina/eina_file_win32.c
+++ b/src/lib/eina/eina_file_win32.c
@@ -366,9 +366,6 @@ eina_file_real_close(Eina_File *file)
 {
Eina_File_Map *map;
 
-   eina_hash_free(file-rmap);
-   eina_hash_free(file-map);
-
EINA_LIST_FREE(file-dead_map, map)
  {
 UnmapViewOfFile(map-map);
@@ -380,8 +377,6 @@ eina_file_real_close(Eina_File *file)
 
if (file-fm) CloseHandle(file-fm);
if (file-handle) CloseHandle(file-handle);
-
-   free(file);
 }
 
 static void
@@ -807,7 +802,7 @@ eina_file_open(const char *path, Eina_Bool shared)
  {
 file-delete_me = EINA_TRUE;
 eina_hash_del(_eina_file_cache, file-filename, file);
-eina_file_real_close(file);
+eina_file_clean_close(file);
 file = NULL;
  }
 
@@ -837,6 +832,8 @@ eina_file_open(const char *path, Eina_Bool shared)
 n-shared = shared;
 eina_lock_new(n-lock);
 eina_hash_direct_add(_eina_file_cache, n-filename, n);
+
+   EINA_MAGIC_SET(n, EINA_FILE_MAGIC);
  }
else
  {

-- 




[EGIT] [core/efl] master 01/02: edje: fix use of eina_hash_pointer_new to actually look at the right value.

2013-11-20 Thread Cedric Bail
cedric pushed a commit to branch master.

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

commit 4096a185232ce685db92b391d8a8cc241a090b2c
Author: Cedric Bail cedric.b...@samsung.com
Date:   Wed Nov 20 20:04:58 2013 +0900

edje: fix use of eina_hash_pointer_new to actually look at the right value.
---
 ChangeLog |  1 +
 NEWS  |  3 ++-
 src/lib/edje/edje_cache.c | 10 +-
 3 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 6c3dea3..b9c4c28 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,7 @@
 2013-11-20  Cedric Bail
 
* Eina: Fix a possible race condition during eina_file_close.
+   * Edje: Fix use of eina_hash_pointer to actually look at the pointer.
 
 2013-11-19  Tom Hacohen
 
diff --git a/NEWS b/NEWS
index 5ce9bcf..01803f8 100644
--- a/NEWS
+++ b/NEWS
@@ -435,7 +435,8 @@ Fixes:
  - Fix size calculation of flags of signal callbacks
  - Check for both Lua 5.1 and 5.2.
  - Fixed memory leak in the edje map color transition.
-- Add null checking for name of anchor and item in geometry get 
functions.
+ - Add null checking for name of anchor and item in geometry get functions.
+ - Fix use of eina_hash_pointer to actually look at the pointer value.
 
 * Efreet:
  - Fix desktop command parsing of https.
diff --git a/src/lib/edje/edje_cache.c b/src/lib/edje/edje_cache.c
index f2e9b20..607eff5 100644
--- a/src/lib/edje/edje_cache.c
+++ b/src/lib/edje/edje_cache.c
@@ -388,7 +388,7 @@ _edje_file_dangling(Edje_File *edf)
if (edf-dangling) return;
edf-dangling = EINA_TRUE;
 
-   eina_hash_del(_edje_file_hash, edf-f, edf);
+   eina_hash_del(_edje_file_hash, edf-f, edf);
if (!eina_hash_population(_edje_file_hash))
  {
eina_hash_free(_edje_file_hash);
@@ -411,7 +411,7 @@ _edje_cache_file_coll_open(const Eina_File *file, const 
char *coll, int *error_r
goto find_list;
  }
 
-   edf = eina_hash_find(_edje_file_hash, file);
+   edf = eina_hash_find(_edje_file_hash, file);
if (edf)
  {
edf-references++;
@@ -425,7 +425,7 @@ find_list:
  {
 edf-references = 1;
 _edje_file_cache = eina_list_remove_list(_edje_file_cache, l);
-eina_hash_direct_add(_edje_file_hash, file, edf);
+eina_hash_direct_add(_edje_file_hash, edf-f, edf);
 goto open;
  }
  }
@@ -439,7 +439,7 @@ find_list:
(void) ed;
 #endif
 
-   eina_hash_direct_add(_edje_file_hash, file, edf);
+   eina_hash_direct_add(_edje_file_hash, edf-f, edf);
/* return edf; */
 
 open:
@@ -654,7 +654,7 @@ _edje_cache_file_unref(Edje_File *edf)
return;
  }
 
-   eina_hash_del(_edje_file_hash, edf-f, edf);
+   eina_hash_del(_edje_file_hash, edf-f, edf);
if (!eina_hash_population(_edje_file_hash))
  {
eina_hash_free(_edje_file_hash);

-- 




Re: [E-devel] [EGIT] [core/efl] master 01/02: Revert eina: fix a possible race condition during eina_file_close.

2013-11-20 Thread Cedric BAIL
On Wed, Nov 20, 2013 at 7:25 PM, Jérémy Zurcher jer...@asynk.ch wrote:
 On Wednesday 20 November 2013  18:25, Cedric BAIL wrote :
 On Wed, Nov 20, 2013 at 6:30 PM, Jérémy Zurcher jer...@asynk.ch wrote:
  random crash on e start,
  no background, no wallpaper preview in settings, terminology crash (does 
  not find its theme files)

 Weird, I have all of them working with that patch here. What is your
 architecture/system ?

 64bits
 model name  : Intel(R) Core(TM)2 Duo CPU E7500  @ 2.93GHz

 this only is enough to break me !

Ok, found the problem and pushed back again the magic in. In fact the
real magic is how did that work at all before ! It was a bug in edje
that wasn't using eina_hash_pointer properly. Let me know if things
are fixed now for you.

 diff --git a/src/lib/eina/eina_file_common.h b/src/lib/eina/eina_file_common.h
 index 0ac704d..e3ee0fc 100644
 --- a/src/lib/eina/eina_file_common.h
 +++ b/src/lib/eina/eina_file_common.h
 @@ -24,11 +24,14 @@
  #include eina_lock.h
  #include eina_list.h

 +#define EINA_FILE_MAGIC 0xFEEDBEEF
 +
  typedef struct _Eina_File_Map Eina_File_Map;
  typedef struct _Eina_Lines_Iterator Eina_Lines_Iterator;

  struct _Eina_File
  {
 +   EINA_MAGIC;
 const char *filename;

 Eina_Hash *map;
-- 
Cedric BAIL

--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/efl] master 01/02: edje: fix use of eina_hash_pointer_new to actually look at the right value.

2013-11-20 Thread Tom Hacohen
On 20/11/13 11:09, Cedric Bail wrote:
 @@ -411,7 +411,7 @@ _edje_cache_file_coll_open(const Eina_File *file, const 
 char *coll, int *error_r
   goto find_list;
}

 -   edf = eina_hash_find(_edje_file_hash, file);
 +   edf = eina_hash_find(_edje_file_hash, file);

Dude, no way in hell this is correct. You are looking up the local 
parameter address in the hash table, essentially causing cache to 
*always* miss.

--
Tom.


--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/efl] master 01/02: edje: fix use of eina_hash_pointer_new to actually look at the right value.

2013-11-20 Thread Tom Hacohen
On 20/11/13 11:17, Tom Hacohen wrote:
 On 20/11/13 11:09, Cedric Bail wrote:
 @@ -411,7 +411,7 @@ _edje_cache_file_coll_open(const Eina_File *file, const 
 char *coll, int *error_r
  goto find_list;
 }

 -   edf = eina_hash_find(_edje_file_hash, file);
 +   edf = eina_hash_find(_edje_file_hash, file);

 Dude, no way in hell this is correct. You are looking up the local
 parameter address in the hash table, essentially causing cache to
 *always* miss.

Nvm, eina_hash_pointer is crazy.

--
Tom.


--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: elementary/elc_multibuttonentry.c : Multibuttonentry doesn't need to call parents' on_focus.

2013-11-20 Thread WooHyun Jung
woohyun pushed a commit to branch master.

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

commit 6c3ac8bd674352eda408e3b047d855b5607d3b94
Author: WooHyun Jung wh0705.j...@samsung.com
Date:   Wed Nov 20 20:17:17 2013 +0900

elementary/elc_multibuttonentry.c : Multibuttonentry doesn't need to call 
parents' on_focus.
---
 src/lib/elc_multibuttonentry.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index 6ddb70f..77004f9 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -287,9 +287,6 @@ _elm_multibuttonentry_smart_on_focus(Eo *obj, void *_pd, 
va_list *list)
if (ret) *ret = EINA_FALSE;
Eina_Bool int_ret;
 
-   eo_do_super(obj, MY_CLASS, elm_wdg_on_focus(int_ret));
-   if (!int_ret) return;
-
if (elm_widget_focus_get(obj))
  {
 // ACCESS

-- 




[EGIT] [core/elementary] master 01/01: Fix build warning.

2013-11-20 Thread WooHyun Jung
woohyun pushed a commit to branch master.

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

commit 3d2e5d44aa4edc1675914b546535d44311cc22ae
Author: WooHyun Jung wh0705.j...@samsung.com
Date:   Wed Nov 20 20:23:49 2013 +0900

Fix build warning.
---
 src/lib/elc_multibuttonentry.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index 77004f9..800401b 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -285,7 +285,6 @@ _elm_multibuttonentry_smart_on_focus(Eo *obj, void *_pd, 
va_list *list)
 
Eina_Bool *ret = va_arg(*list, Eina_Bool *);
if (ret) *ret = EINA_FALSE;
-   Eina_Bool int_ret;
 
if (elm_widget_focus_get(obj))
  {

-- 




[EGIT] [core/efl] master 01/01: eo - fix _parent_set in base clase when old_parent_pd is NULL

2013-11-20 Thread Rasterman
raster pushed a commit to branch master.

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

commit 0355a6a296d8c4a22bf2a2e844a0ba0d4e0abd2e
Author: Carsten Haitzler (Rasterman) ras...@rasterman.com
Date:   Wed Nov 20 20:20:26 2013 +0900

eo - fix _parent_set in base clase when old_parent_pd is NULL

this should fix T538
---
 src/lib/eo/eo_base_class.c | 10 ++
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/lib/eo/eo_base_class.c b/src/lib/eo/eo_base_class.c
index 95ca1b5..b553178 100644
--- a/src/lib/eo/eo_base_class.c
+++ b/src/lib/eo/eo_base_class.c
@@ -131,8 +131,9 @@ _parent_set(Eo *obj, void *class_data, va_list *list)
 Private_Data *old_parent_pd;
 
 old_parent_pd = eo_data_scope_get(pd-parent, EO_BASE_CLASS);
-old_parent_pd-children = eina_list_remove(old_parent_pd-children,
-   obj);
+if (old_parent_pd)
+  old_parent_pd-children = eina_list_remove(old_parent_pd-children,
+ obj);
 eo_xunref(obj, pd-parent);
  }
 
@@ -142,8 +143,9 @@ _parent_set(Eo *obj, void *class_data, va_list *list)
 Private_Data *parent_pd = NULL;
 
 parent_pd = eo_data_scope_get(parent_id, EO_BASE_CLASS);
-parent_pd-children = eina_list_append(parent_pd-children,
-   obj);
+if (parent_pd)
+  parent_pd-children = eina_list_append(parent_pd-children,
+ obj);
 eo_xref(obj, pd-parent);
  }
 }

-- 




Re: [E-devel] [EGIT] [core/elementary] master 01/01: Fix build warning.

2013-11-20 Thread Tom Hacohen
Comment regarding the commit message (yeah, I'm a pedantic asshole):
You didn't fix a build warning, you removed an unused variable. :)

--
Tom.

On 20/11/13 11:23, WooHyun Jung wrote:
 woohyun pushed a commit to branch master.

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

 commit 3d2e5d44aa4edc1675914b546535d44311cc22ae
 Author: WooHyun Jung wh0705.j...@samsung.com
 Date:   Wed Nov 20 20:23:49 2013 +0900

  Fix build warning.
 ---
   src/lib/elc_multibuttonentry.c | 1 -
   1 file changed, 1 deletion(-)

 diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
 index 77004f9..800401b 100644
 --- a/src/lib/elc_multibuttonentry.c
 +++ b/src/lib/elc_multibuttonentry.c
 @@ -285,7 +285,6 @@ _elm_multibuttonentry_smart_on_focus(Eo *obj, void *_pd, 
 va_list *list)

  Eina_Bool *ret = va_arg(*list, Eina_Bool *);
  if (ret) *ret = EINA_FALSE;
 -   Eina_Bool int_ret;

  if (elm_widget_focus_get(obj))
{



--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 01/01: Fix build warning.

2013-11-20 Thread The Rasterman
On Wed, 20 Nov 2013 11:21:38 + Tom Hacohen tom.haco...@samsung.com said:

 Comment regarding the commit message (yeah, I'm a pedantic asshole):

yes.

:P
:)

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


--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 01/01: Fix build warning.

2013-11-20 Thread woohyun
Tom 
thanks :) good advice.
 
-Original Message-
From: Tom Hacohenlt;tom.haco...@samsung.comgt; 
To: Enlightenment developer 
listlt;enlightenment-devel@lists.sourceforge.netgt;; 
Cc: 
Sent: 2013-11-20 (수) 20:21:38
Subject: Re: [E-devel] [EGIT] [core/elementary] master 01/01: Fix build warning.

Comment regarding the commit message (yeah, I'm a pedantic asshole):
You didn't fix a build warning, you removed an unused variable. :)

--
Tom.

On 20/11/13 11:23, WooHyun Jung wrote:
gt; woohyun pushed a commit to branch master.
gt;
gt; 
http://git.enlightenment.org/core/elementary.git/commit/?id=3d2e5d44aa4edc1675914b546535d44311cc22ae
gt;
gt; commit 3d2e5d44aa4edc1675914b546535d44311cc22ae
gt; Author: WooHyun Jung lt;wh0705.junggt;@samsung.comgt;
gt; Date:   Wed Nov 20 20:23:49 2013 +0900
gt;
gt;  Fix build warning.
gt; ---
gt;   src/lib/elc_multibuttonentry.c | 1 -
gt;   1 file changed, 1 deletion(-)
gt;
gt; diff --git a/src/lib/elc_multibuttonentry.c 
b/src/lib/elc_multibuttonentry.c
gt; index 77004f9..800401b 100644
gt; --- a/src/lib/elc_multibuttonentry.c
gt; +++ b/src/lib/elc_multibuttonentry.c
gt; @@ -285,7 +285,6 @@ _elm_multibuttonentry_smart_on_focus(Eo *obj, void 
*_pd, va_list *list)
gt;
gt;  Eina_Bool *ret = va_arg(*list, Eina_Bool *);
gt;  if (ret) *ret = EINA_FALSE;
gt; -   Eina_Bool int_ret;
gt;
gt;  if (elm_widget_focus_get(obj))
gt;{
gt;


--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311amp;iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

 
--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 01/01: Fix build warning.

2013-11-20 Thread Daniel Juyung Seo
On Wed, Nov 20, 2013 at 8:21 PM, Tom Hacohen tom.haco...@samsung.comwrote:

 Comment regarding the commit message (yeah, I'm a pedantic asshole):


A pedantic asshole.
So true :)

Daniel Juyung Seo (SeoZ)


 You didn't fix a build warning, you removed an unused variable. :)

 --
 Tom.

 On 20/11/13 11:23, WooHyun Jung wrote:
  woohyun pushed a commit to branch master.
 
 
 http://git.enlightenment.org/core/elementary.git/commit/?id=3d2e5d44aa4edc1675914b546535d44311cc22ae
 
  commit 3d2e5d44aa4edc1675914b546535d44311cc22ae
  Author: WooHyun Jung wh0705.j...@samsung.com
  Date:   Wed Nov 20 20:23:49 2013 +0900
 
   Fix build warning.
  ---
src/lib/elc_multibuttonentry.c | 1 -
1 file changed, 1 deletion(-)
 
  diff --git a/src/lib/elc_multibuttonentry.c
 b/src/lib/elc_multibuttonentry.c
  index 77004f9..800401b 100644
  --- a/src/lib/elc_multibuttonentry.c
  +++ b/src/lib/elc_multibuttonentry.c
  @@ -285,7 +285,6 @@ _elm_multibuttonentry_smart_on_focus(Eo *obj, void
 *_pd, va_list *list)
 
   Eina_Bool *ret = va_arg(*list, Eina_Bool *);
   if (ret) *ret = EINA_FALSE;
  -   Eina_Bool int_ret;
 
   if (elm_widget_focus_get(obj))
 {
 



 --
 Shape the Mobile Experience: Free Subscription
 Software experts and developers: Be at the forefront of tech innovation.
 Intel(R) Software Adrenaline delivers strategic insight and game-changing
 conversations that shape the rapidly evolving mobile landscape. Sign up
 now.
 http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 01/01: Fix build warning.

2013-11-20 Thread Tom Hacohen
You must be doing something wrong. You are the first one not calling me 
an asshole. :P

--
Tom.

On 20/11/13 11:38, woohyun wrote:
 Tom 
 thanks :) good advice.

 -Original Message-
 From: Tom Hacohenlt;tom.haco...@samsung.comgt;
 To: Enlightenment developer 
 listlt;enlightenment-devel@lists.sourceforge.netgt;;
 Cc:
 Sent: 2013-11-20 (수) 20:21:38
 Subject: Re: [E-devel] [EGIT] [core/elementary] master 01/01: Fix build 
 warning.

 Comment regarding the commit message (yeah, I'm a pedantic asshole):
 You didn't fix a build warning, you removed an unused variable. :)

 --
 Tom.

 On 20/11/13 11:23, WooHyun Jung wrote:
 gt; woohyun pushed a commit to branch master.
 gt;
 gt; 
 http://git.enlightenment.org/core/elementary.git/commit/?id=3d2e5d44aa4edc1675914b546535d44311cc22ae
 gt;
 gt; commit 3d2e5d44aa4edc1675914b546535d44311cc22ae
 gt; Author: WooHyun Jung lt;wh0705.junggt;@samsung.comgt;
 gt; Date:   Wed Nov 20 20:23:49 2013 +0900
 gt;
 gt;  Fix build warning.
 gt; ---
 gt;   src/lib/elc_multibuttonentry.c | 1 -
 gt;   1 file changed, 1 deletion(-)
 gt;
 gt; diff --git a/src/lib/elc_multibuttonentry.c 
 b/src/lib/elc_multibuttonentry.c
 gt; index 77004f9..800401b 100644
 gt; --- a/src/lib/elc_multibuttonentry.c
 gt; +++ b/src/lib/elc_multibuttonentry.c
 gt; @@ -285,7 +285,6 @@ _elm_multibuttonentry_smart_on_focus(Eo *obj, void 
 *_pd, va_list *list)
 gt;
 gt;  Eina_Bool *ret = va_arg(*list, Eina_Bool *);
 gt;  if (ret) *ret = EINA_FALSE;
 gt; -   Eina_Bool int_ret;
 gt;
 gt;  if (elm_widget_focus_get(obj))
 gt;{
 gt;


 --
 Shape the Mobile Experience: Free Subscription
 Software experts and developers: Be at the forefront of tech innovation.
 Intel(R) Software Adrenaline delivers strategic insight and game-changing
 conversations that shape the rapidly evolving mobile landscape. Sign up now.
 http://pubads.g.doubleclick.net/gampad/clk?id=63431311amp;iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


 --
 Shape the Mobile Experience: Free Subscription
 Software experts and developers: Be at the forefront of tech innovation.
 Intel(R) Software Adrenaline delivers strategic insight and game-changing
 conversations that shape the rapidly evolving mobile landscape. Sign up now.
 http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel




--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/efl] master 02/02: Eo tests: Added a parent_set parameter validity test.

2013-11-20 Thread Tom Hacohen
tasn pushed a commit to branch master.

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

commit 46a3f014659f3097d99cdbd8d170daab7fc8885b
Author: Tom Hacohen t...@stosb.com
Date:   Wed Nov 20 12:16:47 2013 +

Eo tests: Added a parent_set parameter validity test.
---
 src/tests/eo/suite/eo_test_general.c | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/src/tests/eo/suite/eo_test_general.c 
b/src/tests/eo/suite/eo_test_general.c
index e2dde96..900ec58 100644
--- a/src/tests/eo/suite/eo_test_general.c
+++ b/src/tests/eo/suite/eo_test_general.c
@@ -657,6 +657,7 @@ START_TEST(eo_magic_checks)
  {
 Eo *parent = NULL;
 Eo *wref = NULL;
+Eo *obj2 = NULL;
 
 obj = eo_add((Eo_Class *) buf, NULL);
 fail_if(obj);
@@ -715,6 +716,11 @@ START_TEST(eo_magic_checks)
 eo_manual_free((Eo *) buf);
 eo_destructed_is((Eo *) buf);
 
+obj2 = NULL;
+eo_do(obj, eo_parent_set((Eo *) buf));
+eo_do(obj, eo_parent_get(obj2));
+fail_if(obj2  (obj2 == (Eo *) buf));
+
 eo_unref(obj);
 
 if (!buf)

-- 




[EGIT] [core/efl] master 01/02: Eo: Check parent is valid in eo_parent_set.

2013-11-20 Thread Tom Hacohen
tasn pushed a commit to branch master.

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

commit cad3cf30a48d59bf52c7ed556b71b31495c6eb63
Author: Tom Hacohen t...@stosb.com
Date:   Wed Nov 20 11:53:45 2013 +

Eo: Check parent is valid in eo_parent_set.

This is an extension to raster's 0355a6a296d8c4a22bf2a2e844a0ba0d4e0abd2e
(eo - fix _parent_set in base clase when old_parent_pd is NULL).
I also added an error message in case this check fails.
---
 src/lib/eo/eo_base_class.c | 32 ++--
 1 file changed, 22 insertions(+), 10 deletions(-)

diff --git a/src/lib/eo/eo_base_class.c b/src/lib/eo/eo_base_class.c
index b553178..772683c 100644
--- a/src/lib/eo/eo_base_class.c
+++ b/src/lib/eo/eo_base_class.c
@@ -131,22 +131,34 @@ _parent_set(Eo *obj, void *class_data, va_list *list)
 Private_Data *old_parent_pd;
 
 old_parent_pd = eo_data_scope_get(pd-parent, EO_BASE_CLASS);
-if (old_parent_pd)
-  old_parent_pd-children = eina_list_remove(old_parent_pd-children,
- obj);
+old_parent_pd-children = eina_list_remove(old_parent_pd-children,
+   obj);
 eo_xunref(obj, pd-parent);
  }
 
-   pd-parent = parent_id;
-   if (pd-parent)
+   /* Set new parent */
+   if (parent_id)
  {
 Private_Data *parent_pd = NULL;
-
 parent_pd = eo_data_scope_get(parent_id, EO_BASE_CLASS);
-if (parent_pd)
-  parent_pd-children = eina_list_append(parent_pd-children,
- obj);
-eo_xref(obj, pd-parent);
+
+if (EINA_LIKELY(parent_pd != NULL))
+  {
+ pd-parent = parent_id;
+ parent_pd-children = eina_list_append(parent_pd-children,
+   obj);
+ eo_xref(obj, pd-parent);
+  }
+else
+  {
+ pd-parent = NULL;
+ ERR(New parent %p for object %p is not a valid Eo object.,
+ parent_id, obj);
+  }
+ }
+   else
+ {
+pd-parent = NULL;
  }
 }
 

-- 




[EGIT] [apps/ecrire] master 01/01: Updated the icon to the newest version by ApB.

2013-11-20 Thread Tom Hacohen
tasn pushed a commit to branch master.

http://git.enlightenment.org/apps/ecrire.git/commit/?id=f87f471a4874eb667369a88b5cf8c68c747be197

commit f87f471a4874eb667369a88b5cf8c68c747be197
Author: Tom Hacohen t...@stosb.com
Date:   Wed Nov 20 12:31:03 2013 +

Updated the icon to the newest version by ApB.
---
 data/ecrire.png | Bin 9249 - 11911 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

diff --git a/data/ecrire.png b/data/ecrire.png
index febce16..c08f5b9 100644
Binary files a/data/ecrire.png and b/data/ecrire.png differ

-- 




[EGIT] [apps/ecrire] master 01/01: Used elm_popup instead of elm_inwin.

2013-11-20 Thread Tom Hacohen
tasn pushed a commit to branch master.

http://git.enlightenment.org/apps/ecrire.git/commit/?id=783e3bed59834e3c1d32ca6aa04263e38c91a3c1

commit 783e3bed59834e3c1d32ca6aa04263e38c91a3c1
Author: Tom Hacohen t...@stosb.com
Date:   Wed Nov 20 12:39:17 2013 +

Used elm_popup instead of elm_inwin.
---
 src/bin/ui/alerts.c | 26 +-
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/src/bin/ui/alerts.c b/src/bin/ui/alerts.c
index 24b508d..58ede94 100644
--- a/src/bin/ui/alerts.c
+++ b/src/bin/ui/alerts.c
@@ -38,20 +38,20 @@ void
 ui_alert_need_saving(Evas_Object *entry, void (*done)(void *data), void *data)
 {
Ecrire_Entry *ent = data;
-   Evas_Object *inwin, *bx, *hbx, *btn, *lbl;
-   inwin = elm_win_inwin_add(elm_object_top_widget_get(entry));
-   evas_object_show(inwin);
+   Evas_Object *popup, *bx, *hbx, *btn, *lbl;
+   popup = elm_popup_add(elm_object_top_widget_get(entry));
+   evas_object_show(popup);
 
done_cb = done;
done_data = data;
 
-   bx = elm_box_add(inwin);
-   elm_win_inwin_content_set(inwin, bx);
+   bx = elm_box_add(popup);
+   elm_object_content_set(popup, bx);
evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, 0.0);
evas_object_show(bx);
 
-   lbl = elm_label_add(inwin);
+   lbl = elm_label_add(popup);
elm_object_text_set(lbl,
  _(align=centerWould you like to save changes to document?br
  Any unsaved changes will be lost.));
@@ -60,33 +60,33 @@ ui_alert_need_saving(Evas_Object *entry, void (*done)(void 
*data), void *data)
elm_box_pack_end(bx, lbl);
evas_object_show(lbl);
 
-   hbx = elm_box_add(inwin);
+   hbx = elm_box_add(popup);
elm_box_horizontal_set(hbx, EINA_TRUE);
evas_object_size_hint_weight_set(hbx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(hbx, EVAS_HINT_FILL, 0.0);
elm_box_pack_end(bx, hbx);
evas_object_show(hbx);
 
-   btn = elm_button_add(inwin);
+   btn = elm_button_add(popup);
elm_object_text_set(btn, _(Save));
elm_box_pack_end(hbx, btn);
evas_object_show(btn);
-   evas_object_smart_callback_add(btn, clicked, _save, inwin);
+   evas_object_smart_callback_add(btn, clicked, _save, popup);
 
if (elm_object_item_disabled_get(ent-save_item) || !ent-filename)
  {
 elm_object_disabled_set(btn, EINA_TRUE);
  }
 
-   btn = elm_button_add(inwin);
+   btn = elm_button_add(popup);
elm_object_text_set(btn, _(Discard));
elm_box_pack_end(hbx, btn);
evas_object_show(btn);
-   evas_object_smart_callback_add(btn, clicked, _discard, inwin);
+   evas_object_smart_callback_add(btn, clicked, _discard, popup);
 
-   btn = elm_button_add(inwin);
+   btn = elm_button_add(popup);
elm_object_text_set(btn, _(Cancel));
elm_box_pack_end(hbx, btn);
evas_object_show(btn);
-   evas_object_smart_callback_add(btn, clicked, _cancel, inwin);
+   evas_object_smart_callback_add(btn, clicked, _cancel, popup);
 }

-- 




Re: [E-devel] [EGIT] [core/efl] master 01/02: Revert eina: fix a possible race condition during eina_file_close.

2013-11-20 Thread Jérémy Zurcher
On Wednesday 20 November 2013  20:15, Cedric BAIL wrote :
 
 Ok, found the problem and pushed back again the magic in. In fact the
 real magic is how did that work at all before ! It was a bug in edje
 that wasn't using eina_hash_pointer properly. Let me know if things
 are fixed now for you.
smoothly !!
 

--- Hell'O from Yverdoom

Jérémy (jeyzu)

--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/enlightenment] master 01/01: Updating portuguese translation

2013-11-20 Thread maxerba
maxerba pushed a commit to branch master.

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

commit 4b79819050f481ebe97eed8930c292ac6f800c6a
Author: maxerba maiur...@gmail.com
Date:   Wed Nov 20 19:47:30 2013 +0100

Updating portuguese translation
---
 po/pt.po | 588 +++
 1 file changed, 214 insertions(+), 374 deletions(-)

diff --git a/po/pt.po b/po/pt.po
index e062ecc..7b38864 100644
--- a/po/pt.po
+++ b/po/pt.po
@@ -6,16 +6,16 @@ msgstr 
 Project-Id-Version: enlightenment\n
 Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n
 POT-Creation-Date: 2013-11-19 17:09+0900\n
-PO-Revision-Date: 2013-05-02 15:19-\n
+PO-Revision-Date: 2013-11-20 14:46-\n
 Last-Translator: Sérgio Marques smarque...@gmail.com\n
 Language-Team: Portuguese\n
-Language: Portuguese\n
+Language: pt\n
 MIME-Version: 1.0\n
 Content-Type: text/plain; charset=UTF-8\n
 Content-Transfer-Encoding: 8bit\n
 Plural-Forms: nplurals=2; plural=n != 1;\n
 X-Launchpad-Export-Date: 2013-05-02 10:08+\n
-X-Generator: Poedit 1.5.4\n
+X-Generator: Poedit 1.6beta2\n
 
 #: src/bin/e_about.c:17
 msgid About Enlightenment
@@ -810,9 +810,8 @@ msgid Cancel
 msgstr Cancelar
 
 #: src/bin/e_comp.c:4259
-#, fuzzy
 msgid Compositor Warning
-msgstr Composição
+msgstr Aviso de composição
 
 #: src/bin/e_comp.c:4259
 msgid 
@@ -822,9 +821,8 @@ msgid 
 msgstr 
 
 #: src/bin/e_comp.c:4278 src/bin/e_comp.c:4300
-#, fuzzy
 msgid Compositor Error
-msgstr Erro ao importar
+msgstr Erro de composição
 
 #: src/bin/e_comp.c:4278
 msgid Another compositor is already runningbron your display server.
@@ -861,9 +859,8 @@ msgid Title
 msgstr Título
 
 #: src/bin/e_comp.c:4792
-#, fuzzy
 msgid Use fast composite effects for windows
-msgstr Ativar efeitos rápidos de composição das janelas
+msgstr Utilizar efeitos rápidos de composição das janelas
 
 #: src/bin/e_comp.c:4792 src/bin/e_comp.c:4794 src/bin/e_comp.c:4796
 #: src/bin/e_comp.c:4798 src/bin/e_comp.c:4800 src/bin/e_comp.c:4803
@@ -974,14 +971,12 @@ msgstr tema
 #: src/bin/e_configure_option.c:1612 src/bin/e_configure_option.c:1613
 #: src/bin/e_configure_option.c:1810 src/bin/e_configure_option.c:1828
 #: src/bin/e_configure_option.c:1913
-#, fuzzy
 msgid animate
-msgstr Animação
+msgstr animar
 
 #: src/bin/e_comp.c:4794
-#, fuzzy
 msgid Use fast composite effects for menus
-msgstr Ativar efeitos rápidos de composição dos menus
+msgstr Utilizar efeitos rápidos de composição dos menus
 
 #: src/bin/e_comp.c:4794 src/bin/e_comp.c:4805
 #: src/bin/e_configure_option.c:1488 src/bin/e_configure_option.c:1491
@@ -996,22 +991,19 @@ msgstr Ativar efeitos rápidos de composição dos menus
 #: src/bin/e_configure_option.c:1799 src/bin/e_configure_option.c:1800
 #: src/bin/e_configure_option.c:2042
 msgid menu
-msgstr 
+msgstr menu
 
 #: src/bin/e_comp.c:4796
-#, fuzzy
 msgid Use fast composite effects for popups
-msgstr Ativar efeitos rápidos de composição dos alertas
+msgstr Utilizar efeitos rápidos de composição dos alertas
 
 #: src/bin/e_comp.c:4796 src/bin/e_comp.c:4807
-#, fuzzy
 msgid popup
-msgstr Alerta
+msgstr alerta
 
 #: src/bin/e_comp.c:4798
-#, fuzzy
 msgid Use fast composite effects for objects
-msgstr Ativar efeitos rápidos de composição para objetos
+msgstr Utilizar efeitos rápidos de composição para objetos
 
 #: src/bin/e_comp.c:4800
 #, fuzzy
@@ -1042,9 +1034,8 @@ msgid 
 msgstr Desativar efeitos de composição para overrides
 
 #: src/bin/e_comp.c:4813
-#, fuzzy
 msgid Disable composite effects for the screen
-msgstr Desativar efeitos do ecrã
+msgstr Desativar efeitos de composição para este ecrã
 
 #: src/bin/e_comp.c:4813 src/bin/e_configure_option.c:1535
 #: src/bin/e_configure_option.c:1537 src/bin/e_configure_option.c:1595
@@ -1071,9 +1062,8 @@ msgid 
 msgstr 
 
 #: src/bin/e_comp.c:4817
-#, fuzzy
 msgid Compositing engine
-msgstr Composição
+msgstr Motor de composição
 
 #: src/bin/e_comp.c:4821
 #, fuzzy
@@ -1121,14 +,13 @@ msgid delay
 msgstr atraso
 
 #: src/bin/e_comp.c:4839
-#, fuzzy, c-format
+#, c-format
 msgid %1.2f seconds
-msgstr %.2f segundos
+msgstr %1.2f segundos
 
 #: src/bin/e_comp.c:4845
-#, fuzzy
 msgid Tear-free compositing (VSYNC)
-msgstr Atualizações Tear-free (sincronização vertical)
+msgstr Composição Tear-free (VSYNC)
 
 #: src/bin/e_comp.c:4848
 #, fuzzy
@@ -1154,9 +1143,8 @@ msgstr Não ocultar gadgets
 #: src/bin/e_comp.c:4865 src/bin/e_configure_option.c:1907
 #: src/bin/e_configure_option.c:1910 src/bin/e_configure_option.c:1913
 #: src/bin/e_configure_option.c:1916 src/bin/e_configure_option.c:1918
-#, fuzzy
 msgid backlight
-msgstr Iluminação
+msgstr iluminação
 
 #: src/bin/e_comp.c:4867
 msgid Send flush when compositing windows
@@ -1176,7 +1164,7 @@ msgid Rolling average for fps display when compositing
 msgstr Número médio de imagens
 
 #: src/bin/e_comp.c:4875
-#, fuzzy, c-format
+#, c-format
 msgid %1.0f frames
 msgstr %1.0f 

[EGIT] [games/elemines] master 01/01: Updating portuguese and italian translations

2013-11-20 Thread maxerba
maxerba pushed a commit to branch master.

http://git.enlightenment.org/games/elemines.git/commit/?id=ebbeef64c1674a84bb61970647b14ea7b366ed7b

commit ebbeef64c1674a84bb61970647b14ea7b366ed7b
Author: maxerba maiur...@gmail.com
Date:   Wed Nov 20 19:53:04 2013 +0100

Updating portuguese and italian translations
---
 po/it.po| 21 -
 po/pt_PT.po | 18 +-
 2 files changed, 17 insertions(+), 22 deletions(-)

diff --git a/po/it.po b/po/it.po
index 16b95ad..fdef241 100644
--- a/po/it.po
+++ b/po/it.po
@@ -7,8 +7,8 @@ msgid 
 msgstr 
 Project-Id-Version: elemines 0.2.3\n
 Report-Msgid-Bugs-To: ngc...@gmail.com\n
-POT-Creation-Date: 2013-08-14 12:30+0200\n
-PO-Revision-Date: 2013-01-20 10:47+0100\n
+POT-Creation-Date: 2013-11-20 19:50+0100\n
+PO-Revision-Date: 2013-11-20 19:51+0100\n
 Last-Translator: Massimo Maiurana maiur...@gmail.com\n
 Language-Team: Italiano\n
 Language: it\n
@@ -74,27 +74,22 @@ msgid Quit
 msgstr Esci
 
 #: src/game.c:144
-#, fuzzy, c-format
+#, c-format
 msgid Score: %d
-msgstr Punteggi
+msgstr Punteggio: %d
 
 #: src/game.c:151
-#, fuzzy
 msgid High Score!!
-msgstr Classifica
+msgstr Nuovo record!!
 
 #: src/game.c:159
 msgid You win!
-msgstr 
+msgstr Hai vinto!
 
 #: src/elemines.h:56
 msgid Standard
-msgstr 
+msgstr Standard
 
 #: src/elemines.h:57
 msgid Custom
-msgstr 
-
-#: src/main.c:222
-msgid Level
-msgstr 
+msgstr Personalizzato
diff --git a/po/pt_PT.po b/po/pt_PT.po
index a79cf18..dc76d6b 100644
--- a/po/pt_PT.po
+++ b/po/pt_PT.po
@@ -8,13 +8,14 @@ msgstr 
 Project-Id-Version: elemines 0.2.3\n
 Report-Msgid-Bugs-To: ngc...@gmail.com\n
 POT-Creation-Date: 2013-08-14 12:30+0200\n
-PO-Revision-Date: 2013-04-30 12:55-\n
+PO-Revision-Date: 2013-11-05 14:44-\n
 Last-Translator: Sérgio Marques smarque...@gmail.com\n
 Language-Team: \n
 Language: pt_PT\n
 MIME-Version: 1.0\n
 Content-Type: text/plain; charset=UTF-8\n
 Content-Transfer-Encoding: 8bit\n
+X-Generator: Poedit 1.5.7\n
 
 #: src/gui.c:57
 msgid High Scores
@@ -74,27 +75,26 @@ msgid Quit
 msgstr Sair
 
 #: src/game.c:144
-#, fuzzy, c-format
+#, c-format
 msgid Score: %d
-msgstr Resultados
+msgstr Resultado: %d
 
 #: src/game.c:151
-#, fuzzy
 msgid High Score!!
-msgstr Recordes
+msgstr Recorde!
 
 #: src/game.c:159
 msgid You win!
-msgstr 
+msgstr Ganhou!
 
 #: src/elemines.h:56
 msgid Standard
-msgstr 
+msgstr Padrão
 
 #: src/elemines.h:57
 msgid Custom
-msgstr 
+msgstr Personalizado
 
 #: src/main.c:222
 msgid Level
-msgstr 
+msgstr Nível

-- 




[EGIT] [enlightenment/modules/packagekit] master 01/01: Adding portuguese localization

2013-11-20 Thread maxerba
maxerba pushed a commit to branch master.

http://git.enlightenment.org/enlightenment/modules/packagekit.git/commit/?id=068493f6ea369a23c0e293d5fded2400555d8332

commit 068493f6ea369a23c0e293d5fded2400555d8332
Author: maxerba maiur...@gmail.com
Date:   Wed Nov 20 19:57:49 2013 +0100

Adding portuguese localization
---
 module.desktop.in |  2 ++
 po/LINGUAS|  1 +
 po/pt.po  | 88 +++
 3 files changed, 91 insertions(+)

diff --git a/module.desktop.in b/module.desktop.in
index 436eac6..0142fe4 100644
--- a/module.desktop.in
+++ b/module.desktop.in
@@ -3,7 +3,9 @@ Encoding=UTF-8
 Type=Link
 Name=System updates
 Name[it]=Aggiornamenti di sistema
+Name[pt]=Atualizações do sistema
 Comment=Control system update status
 Comment[it]=Controlla lo stato degli aggiornamenti del sistema
+Comment[pt]=Controlar o estado das atualizações do sistema
 Icon=e-module-packagekit
 X-Enlightenment-ModuleType=system
diff --git a/po/LINGUAS b/po/LINGUAS
index f1912ee..acfac77 100644
--- a/po/LINGUAS
+++ b/po/LINGUAS
@@ -1,2 +1,3 @@
 fi
 it
+pt
diff --git a/po/pt.po b/po/pt.po
new file mode 100644
index 000..1b336c6
--- /dev/null
+++ b/po/pt.po
@@ -0,0 +1,88 @@
+# Portuguese translations for packagekit package
+# Copyright (C) 2013 Enlightenment development team
+# This file is distributed under the same license as the packagekit package.
+# Sérgio Marques smarque...@gmail.com, 2013.
+#
+msgid 
+msgstr 
+Project-Id-Version: packagekit\n
+Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n
+POT-Creation-Date: 2013-11-03 13:05+0100\n
+PO-Revision-Date: 2013-11-05 15:08-\n
+Last-Translator: Sérgio Marques smarque...@gmail.com\n
+Language-Team: Portuguese\n
+Language: pt\n
+MIME-Version: 1.0\n
+Content-Type: text/plain; charset=UTF-8\n
+Content-Transfer-Encoding: 8bit\n
+Plural-Forms: nplurals=2; plural=(n != 1);\n
+X-Generator: Poedit 1.5.7\n
+
+#: src/e_mod_main.c:48
+msgid Refresh Packages
+msgstr Atualizar pacotes
+
+#: src/e_mod_main.c:50
+msgid Never
+msgstr Nunca
+
+#: src/e_mod_main.c:52
+msgid Hourly
+msgstr Todas as horas
+
+#: src/e_mod_main.c:54
+msgid Daily
+msgstr Diariamente
+
+#: src/e_mod_main.c:56
+msgid Weekly
+msgstr Semanalmente
+
+#: src/e_mod_main.c:60
+msgid Package Manager
+msgstr Gestor de pacotes
+
+#: src/e_mod_main.c:113
+msgid System Updates Settings
+msgstr Definições de atualizações
+
+#: src/e_mod_main.c:147
+msgid Settings
+msgstr Definições
+
+#: src/e_mod_main.c:213
+msgid System Updates
+msgstr Atualizações do sistema
+
+#: src/e_mod_packagekit.c:35
+msgid No package manager configured
+msgstr Gestor de pacotes não configurado
+
+#: src/e_mod_packagekit.c:36
+msgid 
+You need to set your preferred package manager.brPlease open the module 
+configuration and setbrthe program to run.br
+msgstr 
+Tem que definir o gestor de pacotes preferido.brAbra a configuração do 
+módulo e definabro programa a executar.br
+
+#: src/e_mod_packagekit.c:86
+msgid One update available
+msgstr Uma atualização disponível
+
+#: src/e_mod_packagekit.c:88
+#, c-format
+msgid %d updates available
+msgstr %d atualizações disponíveis
+
+#: src/e_mod_packagekit.c:90
+msgid Your system is updated
+msgstr O seu sistema está atualizado
+
+#: src/e_mod_packagekit.c:118
+msgid Update packages cache
+msgstr Atualizar cache de pacotes
+
+#: src/e_mod_packagekit.c:121
+msgid Run the package manager
+msgstr Executar gestor de pacotes

-- 




Re: [E-devel] [e-users] EFL 1.8 Alpha2 + Enlightenment 0.18 Alpha2 Terminology 0.4 Alpha2

2013-11-20 Thread Davide Andreoli
2013/11/20 Jeff Hoogland jeffhoogl...@linux.com

 This is great! Looking forward to packing this up and playing with it this
 weekend.

 Any plans to start doing pre-release tars to test the updated python
 bindings for 1.8?


We plan to release the 1.8 bindings just after the efl release, so it's a
little premature now.
In the meantime you can start playing with the tarball autogenerated by
jenkins at:

https://build.enlightenment.org/view/Base%20jobs/job/base_pyefl_build/lastSuccessfulBuild/artifact/dist/efl-1.7.99.tar.gz

This tarball will be the base for our future releases, please test it and
report any issue.


 Also the coloring on this page -

 https://phab.enlightenment.org/phame/live/3/post/efl_1_8_alpha_2_enlightenment_0_18_alpha2_terminology_0_4_alpha/

 Is pretty awful. Dark blue text on a grey background is impossible to read.

 This URL also appears to be dead at the moment -
 http://download.enlightenment.org/new

 Cheers,


 On Tue, Nov 19, 2013 at 9:32 PM, Carsten Haitzler ras...@rasterman.com
 wrote:

  On Wed, 20 Nov 2013 00:41:00 -0200 Wido wido...@gmail.com said:
 
   When you say 'If you have an existing EFL or Elementary install, you
 may
   wish to delete its header files and libraries before building the
 above.'
  
   does it makes any difference if I keep them in different path and pay
   attention to the environment path?
 
  if you know what you are doing - you can get away with it. if you have
  build
  problems... you're on your own then to address them. (or runtime problems
  when
  things accidentally link to the wrong lib versions at runtime). :)
 
   Currently, I use /opt/e17-git and I was planing leaving that alone and
  use
   a new /opt/e18.
  
   Does it makes any sense? my tingling sense tells me that you're going
 to
   yell users when they submit bugs with backtraces filled with efl1.7
   libs.
 
  very likely that there will be much yelling and swearing when we find
  people
  are reporting bugs due to their own silliness of having 2 efl installs.
  i've
  seen this so many times over so many years again and again... i KNOW it's
  going
  to happen... and i highly discourage it unless you REALLY know what u are
  doing. i.e. you are a hard core developer who knows not just what gdb
  says, but
  also your whole system/os. :)
 
   2013/11/19 Carsten Haitzler ras...@rasterman.com
  
We are pleased to announce that our second Alpha release (Alpha 2) of
  EFL
1.8
is now available for download at:
   
http://download.enlightenment.org/new
   
The relevant components are:
   
   
 http://download.enlightenment.org/rel/libs/efl/efl-1.8.0-alpha2.tar.gz
   
   
 
 http://download.enlightenment.org/rel/libs/elementary/elementary-1.8.0-alpha2.tar.gz
   
   
 
 http://download.enlightenment.org/rel/libs/emotion_generic_players/emotion_generic_players-1.8.0-alpha2.tar.gz
   
   
 
 http://download.enlightenment.org/rel/libs/evas_generic_loaders/evas_generic_loaders-1.8.0-alpha2.tar.gz
   
If you are compiling the above, please compile them in the following
  order:
   
  efl
  elementary
  emotion_generic_players
  evas_generic_loaders
   
If you have an existing EFL or Elementary install, you may wish to
  delete
its
header files and libraries before building the above.
   
In addition we have also put up early stage Alphas of Enlightenment
  0.18
and
Terminology 0.4 available here:
   
   
   
 
 http://download.enlightenment.org/rel/apps/enlightenment/enlightenment-0.18.0-alpha2.tar.gz
   
   
 
 http://download.enlightenment.org/rel/apps/terminology/terminology-0.4.0-alpha2.tar.gz
   
We ask people to test builds and functionality at this stage in
preparation for
full release. Of course there will be bugs, and this is the point at
  which
to
weed them out. Please file bug tasks on
 http://phab.enlightenment.organd
we
will address them as best as possible for release. Future Alpha and
  Betas
will
come.
--
- Codito, ergo sum - I code, therefore I am
  --
The Rasterman (Carsten Haitzler)ras...@rasterman.com
   
   
   
   
 
 --
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech
  innovation.
Intel(R) Software Adrenaline delivers strategic insight and
  game-changing
conversations that shape the rapidly evolving mobile landscape. Sign
 up
now.
   
 
 http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-users mailing list
enlightenment-us...@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-users
   
  
  
  
   --
   Wido
  
 
 --
   Shape the Mobile Experience: Free 

[EGIT] [e16/e16] master 01/01: Fix potential warnings.

2013-11-20 Thread Kim Woelders
kwo pushed a commit to branch master.

http://git.enlightenment.org/e16/e16.git/commit/?id=5dddfd2d542d0a75fb03a5564cf8b9981b6fae7b

commit 5dddfd2d542d0a75fb03a5564cf8b9981b6fae7b
Author: Kim Woelders k...@woelders.dk
Date:   Wed Nov 20 20:04:01 2013 +0100

Fix potential warnings.
---
 lib/e16_trip.c | 8 +---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/lib/e16_trip.c b/lib/e16_trip.c
index 671072b..cdb4a66 100644
--- a/lib/e16_trip.c
+++ b/lib/e16_trip.c
@@ -55,7 +55,7 @@ _XReply(Display * dpy, void *rep, int extra, Bool discard)
 {
static RF  *func = NULL;
 
-   chars[1024], *p, *name;
+   chars[1024];
void   *bt[128];
int i, n, l;
char  **sym;
@@ -76,6 +76,8 @@ _XReply(Display * dpy, void *rep, int extra, Bool discard)
for (i = 1; i  n; i++)
  {
 #if 1
+   char   *p, *name;
+
name = strchr(sym[i], '(');
if (name)
  {
@@ -88,9 +90,9 @@ _XReply(Display * dpy, void *rep, int extra, Bool discard)
  }
if (!name || *name == '\0')
   name = (char *)?;
-   l += snprintf(s + l, sizeof(s) - l, name);
+   l += snprintf(s + l, sizeof(s) - l, %s, name);
 #else
-   l += snprintf(s + l, sizeof(s) - l, sym[i]);
+   l += snprintf(s + l, sizeof(s) - l, %s, sym[i]);
 #endif
 
if (i  n - 1)

-- 




[EGIT] [apps/espionage] master 01/01: Espionage: add the new signal inspector.

2013-11-20 Thread davemds
davemds pushed a commit to branch master.

http://git.enlightenment.org/apps/espionage.git/commit/?id=d35bf71a0867f0178b229167795dacabf4161197

commit d35bf71a0867f0178b229167795dacabf4161197
Author: davemds d...@gurumeditation.it
Date:   Wed Nov 20 21:33:47 2013 +0100

Espionage: add the new signal inspector.

A new Pane at the bottom of the window show ALL the signals that
transit on both buses. Double clicking on a received signal you can
see its full content (parameters).

Now Espionage have more features than d-feet...efl beats gnome one more 
time :D
---
 espionage/espionage.py | 139 ++---
 1 file changed, 120 insertions(+), 19 deletions(-)

diff --git a/espionage/espionage.py b/espionage/espionage.py
index ffd468a..b60ad00 100644
--- a/espionage/espionage.py
+++ b/espionage/espionage.py
@@ -38,6 +38,7 @@ from efl.elementary.panes import Panes
 from efl.elementary.popup import Popup
 from efl.elementary.separator import Separator
 from efl.elementary.table import Table
+from efl.elementary.frame import Frame
 from efl.elementary.genlist import Genlist, GenlistItem, GenlistItemClass
 from efl.dbus_mainloop import DBusEcoreMainLoop
 
@@ -48,6 +49,14 @@ class Options(object):
 self.show_introspect_stuff = False
 self.show_private_stuff = False
 self.pretty_output = True
+self.scroll_on_signal = True
+
+
+def prettify_if_needed(data):
+if options.pretty_output:
+return utf8_to_markup(json.dumps(data, indent=2))
+else:
+return utf8_to_markup(str(data))
 
 
 ### connect to session and system buses, and set session as the current one
@@ -548,21 +557,103 @@ class MethodRunner(Popup):
 #  wrong params for example are raised later :/
 
 def reply_handler(self, *rets):
-if rets:
-if options.pretty_output:
-s = utf8_to_markup(json.dumps(rets, indent=2))
-else:
-s = utf8_to_markup(str(rets))
-else:
-s = Method executed successfully.brNothing returned.
-self._return_entry.entry = s
+self._return_entry.entry = prettify_if_needed(rets) if rets \
+else Method executed successfully.brNothing returned.
 
 def error_handler(self, *rets):
 self._return_entry.entry = 'Error executing method'
 
 
+### Signals receiver
+class SignalItemClass(GenlistItemClass):
+def __init__(self):
+GenlistItemClass.__init__(self, item_style='default_style')
+def text_get(self, gl, part, data):
+return 'b%s/  iface: i%s/ path: i%s/ sender: i%s/' % \
+   (data['signal'], data['iface'], data['path'], data['sender'])
+
+class SignalReceiver(Frame):
+def __init__(self, parent):
+Frame.__init__(self, parent, text=Signals)
+self._parent = parent
+
+vbox = Box(self)
+vbox.show()
+self.content = vbox
+
+self.siglist = Genlist(self, homogeneous=True, 
mode=elm.ELM_LIST_SCROLL)
+self.siglist.size_hint_weight = EVAS_HINT_EXPAND, EVAS_HINT_EXPAND
+self.siglist.size_hint_align = EVAS_HINT_FILL, EVAS_HINT_FILL
+self.siglist.callback_clicked_double_add(self.signal_clicked_cb)
+self.siglist.show()
+vbox.pack_end(self.siglist)
+self.itc = SignalItemClass()
+
+hbox = Box(self, horizontal=True)
+hbox.size_hint_align = 0.0, 0.5
+hbox.show()
+vbox.pack_end(hbox)
+
+bt = Button(self, text='Clear')
+bt.callback_clicked_add(lambda b: self.siglist.clear())
+hbox.pack_end(bt)
+bt.show()
+
+def scroll_on_signal_clicked_cb(chk):
+options.scroll_on_signal = chk.state
+ck = Check(self, text='Scroll on signal')
+ck.state = options.scroll_on_signal
+ck.callback_changed_add(scroll_on_signal_clicked_cb)
+hbox.pack_end(ck)
+ck.show()
+
+for b in session_bus, system_bus:
+b.add_signal_receiver(self.signal_cb, sender_keyword='sender',
+destination_keyword='dest', interface_keyword='iface',
+member_keyword='signal',path_keyword='path')
+
+def signal_cb(self, *args, **kargs):
+# print('*** SIGNAL RECEIVED ***')
+# print(json.dumps(args, indent=2))
+# print(json.dumps(kargs, indent=2))
+
+kargs['args'] = args
+item = self.siglist.item_append(self.itc, kargs)
+if options.scroll_on_signal is True:
+item.bring_in()
+
+if self.siglist.items_count  200:
+self.siglist.first_item.delete()
+
+def signal_clicked_cb(self, gl, item):
+pp = Popup(self._parent)
+pp.part_text_set('title,text', 'Signal content')
+
+en = Entry(self, text = prettify_if_needed(item.data['args']))
+en.size_hint_weight = EVAS_HINT_EXPAND, EVAS_HINT_EXPAND
+en.size_hint_align = EVAS_HINT_FILL, EVAS_HINT_FILL
+

Re: [E-devel] [EGIT] [apps/espionage] master 01/01: Espionage: add the new signal inspector.

2013-11-20 Thread Gustavo Sverzut Barbieri
On Wednesday, November 20, 2013, davemds wrote:

 davemds pushed a commit to branch master.


 http://git.enlightenment.org/apps/espionage.git/commit/?id=d35bf71a0867f0178b229167795dacabf4161197

 commit d35bf71a0867f0178b229167795dacabf4161197
 Author: davemds d...@gurumeditation.it javascript:;
 Date:   Wed Nov 20 21:33:47 2013 +0100

 Espionage: add the new signal inspector.

 A new Pane at the bottom of the window show ALL the signals that
 transit on both buses. Double clicking on a received signal you can
 see its full content (parameters).

 Now Espionage have more features than d-feet...efl beats gnome one
 more time :D


Just need better GUI and GFX, we know u can do it better




 ---
  espionage/espionage.py | 139
 ++---
  1 file changed, 120 insertions(+), 19 deletions(-)

 diff --git a/espionage/espionage.py b/espionage/espionage.py
 index ffd468a..b60ad00 100644
 --- a/espionage/espionage.py
 +++ b/espionage/espionage.py
 @@ -38,6 +38,7 @@ from efl.elementary.panes import Panes
  from efl.elementary.popup import Popup
  from efl.elementary.separator import Separator
  from efl.elementary.table import Table
 +from efl.elementary.frame import Frame
  from efl.elementary.genlist import Genlist, GenlistItem, GenlistItemClass
  from efl.dbus_mainloop import DBusEcoreMainLoop

 @@ -48,6 +49,14 @@ class Options(object):
  self.show_introspect_stuff = False
  self.show_private_stuff = False
  self.pretty_output = True
 +self.scroll_on_signal = True
 +
 +
 +def prettify_if_needed(data):
 +if options.pretty_output:
 +return utf8_to_markup(json.dumps(data, indent=2))
 +else:
 +return utf8_to_markup(str(data))


  ### connect to session and system buses, and set session as the current
 one
 @@ -548,21 +557,103 @@ class MethodRunner(Popup):
  #  wrong params for example are raised later :/

  def reply_handler(self, *rets):
 -if rets:
 -if options.pretty_output:
 -s = utf8_to_markup(json.dumps(rets, indent=2))
 -else:
 -s = utf8_to_markup(str(rets))
 -else:
 -s = Method executed successfully.brNothing returned.
 -self._return_entry.entry = s
 +self._return_entry.entry = prettify_if_needed(rets) if rets \
 +else Method executed successfully.brNothing returned.

  def error_handler(self, *rets):
  self._return_entry.entry = 'Error executing method'


 +### Signals receiver
 +class SignalItemClass(GenlistItemClass):
 +def __init__(self):
 +GenlistItemClass.__init__(self, item_style='default_style')
 +def text_get(self, gl, part, data):
 +return 'b%s/  iface: i%s/ path: i%s/ sender:
 i%s/' % \
 +   (data['signal'], data['iface'], data['path'],
 data['sender'])
 +
 +class SignalReceiver(Frame):
 +def __init__(self, parent):
 +Frame.__init__(self, parent, text=Signals)
 +self._parent = parent
 +
 +vbox = Box(self)
 +vbox.show()
 +self.content = vbox
 +
 +self.siglist = Genlist(self, homogeneous=True,
 mode=elm.ELM_LIST_SCROLL)
 +self.siglist.size_hint_weight = EVAS_HINT_EXPAND, EVAS_HINT_EXPAND
 +self.siglist.size_hint_align = EVAS_HINT_FILL, EVAS_HINT_FILL
 +self.siglist.callback_clicked_double_add(self.signal_clicked_cb)
 +self.siglist.show()
 +vbox.pack_end(self.siglist)
 +self.itc = SignalItemClass()
 +
 +hbox = Box(self, horizontal=True)
 +hbox.size_hint_align = 0.0, 0.5
 +hbox.show()
 +vbox.pack_end(hbox)
 +
 +bt = Button(self, text='Clear')
 +bt.callback_clicked_add(lambda b: self.siglist.clear())
 +hbox.pack_end(bt)
 +bt.show()
 +
 +def scroll_on_signal_clicked_cb(chk):
 +options.scroll_on_signal = chk.state
 +ck = Check(self, text='Scroll on signal')
 +ck.state = options.scroll_on_signal
 +ck.callback_changed_add(scroll_on_signal_clicked_cb)
 +hbox.pack_end(ck)
 +ck.show()
 +
 +for b in session_bus, system_bus:
 +b.add_signal_receiver(self.signal_cb, sender_keyword='sender',
 +destination_keyword='dest', interface_keyword='iface',
 +member_keyword='signal',path_keyword='path')
 +
 +def signal_cb(self, *args, **kargs):
 +# print('*** SIGNAL RECEIVED ***')
 +# print(json.dumps(args, indent=2))
 +# print(json.dumps(kargs, indent=2))
 +
 +kargs['args'] = args
 +item = self.siglist.item_append(self.itc, kargs)
 +if options.scroll_on_signal is True:
 +item.bring_in()
 +
 +if self.siglist.items_count  200:
 +self.siglist.first_item.delete()
 +
 +def signal_clicked_cb(self, gl, item):
 +pp = Popup(self._parent)
 +

[EGIT] [apps/espionage] master 01/01: Espionage: fix for recent enum change in pyefl

2013-11-20 Thread davemds
davemds pushed a commit to branch master.

http://git.enlightenment.org/apps/espionage.git/commit/?id=54ead421d37ef960faed8d5704672060bdd3a392

commit 54ead421d37ef960faed8d5704672060bdd3a392
Author: davemds d...@gurumeditation.it
Date:   Wed Nov 20 21:55:49 2013 +0100

Espionage: fix for recent enum change in pyefl
---
 espionage/espionage.py | 20 +++-
 1 file changed, 11 insertions(+), 9 deletions(-)

diff --git a/espionage/espionage.py b/espionage/espionage.py
index b60ad00..342c04b 100644
--- a/espionage/espionage.py
+++ b/espionage/espionage.py
@@ -39,7 +39,9 @@ from efl.elementary.popup import Popup
 from efl.elementary.separator import Separator
 from efl.elementary.table import Table
 from efl.elementary.frame import Frame
-from efl.elementary.genlist import Genlist, GenlistItem, GenlistItemClass
+from efl.elementary.genlist import Genlist, GenlistItem, GenlistItemClass, \
+ELM_GENLIST_ITEM_GROUP, ELM_GENLIST_ITEM_TREE, \
+ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY, ELM_LIST_SCROLL
 from efl.dbus_mainloop import DBusEcoreMainLoop
 
 
@@ -282,13 +284,13 @@ class NamesList(Genlist):
 
 # add private  public group items
 self.public_group = self.item_append(self.itc_g, Public Services,
-   flags=elm.ELM_GENLIST_ITEM_GROUP)
-
self.public_group.select_mode_set(elm.ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY)
+   flags=ELM_GENLIST_ITEM_GROUP)
+self.public_group.select_mode_set(ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY)
 
 if options.show_private_stuff:
 self.private_group = self.item_append(self.itc_g, Private 
Services,
- flags=elm.ELM_GENLIST_ITEM_GROUP)
-
self.private_group.select_mode_set(elm.ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY)
+ flags=ELM_GENLIST_ITEM_GROUP)
+
self.private_group.select_mode_set(ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY)
 
 # populate the genlist
 self.populate()
@@ -392,8 +394,8 @@ class DetailList(Genlist):
 # objects
 for obj in recursive_introspect(bus, name, '/'):
 obj_item = self.item_append(self.itc_g, obj,
-flags=elm.ELM_GENLIST_ITEM_GROUP)
-obj_item.select_mode_set(elm.ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY)
+flags=ELM_GENLIST_ITEM_GROUP)
+obj_item.select_mode_set(ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY)
 
 # interfaces
 for iface in obj.interfaces:
@@ -402,7 +404,7 @@ class DetailList(Genlist):
   continue
 iface_item = self.item_append(self.itc, iface,
   parent_item=obj_item,
-  flags=elm.ELM_GENLIST_ITEM_TREE)
+  flags=ELM_GENLIST_ITEM_TREE)
 
 def sort_cb(self, it1, it2):
 pri1 = pri2 = 0
@@ -581,7 +583,7 @@ class SignalReceiver(Frame):
 vbox.show()
 self.content = vbox
 
-self.siglist = Genlist(self, homogeneous=True, 
mode=elm.ELM_LIST_SCROLL)
+self.siglist = Genlist(self, homogeneous=True, mode=ELM_LIST_SCROLL)
 self.siglist.size_hint_weight = EVAS_HINT_EXPAND, EVAS_HINT_EXPAND
 self.siglist.size_hint_align = EVAS_HINT_FILL, EVAS_HINT_FILL
 self.siglist.callback_clicked_double_add(self.signal_clicked_cb)

-- 




Re: [E-devel] [EGIT] [apps/espionage] master 01/01: Espionage: add the new signal inspector.

2013-11-20 Thread Davide Andreoli
2013/11/20 Gustavo Sverzut Barbieri barbi...@gmail.com

 On Wednesday, November 20, 2013, davemds wrote:

  davemds pushed a commit to branch master.
 
 
 
 http://git.enlightenment.org/apps/espionage.git/commit/?id=d35bf71a0867f0178b229167795dacabf4161197
 
  commit d35bf71a0867f0178b229167795dacabf4161197
  Author: davemds d...@gurumeditation.it javascript:;
  Date:   Wed Nov 20 21:33:47 2013 +0100
 
  Espionage: add the new signal inspector.
 
  A new Pane at the bottom of the window show ALL the signals that
  transit on both buses. Double clicking on a received signal you can
  see its full content (parameters).
 
  Now Espionage have more features than d-feet...efl beats gnome one
  more time :D


 Just need better GUI and GFX, we know u can do it better


TBH I do not have so many ideas on how to beautify it.
I have plans to add icons for items in the lists, and to add custom
textblock style to colorize methods params...but thats all. Any
suggestion is welcome.

Now that we are on this: someone know a source of standard icons for object
oriented stuff ?
I need icons for method, object, property, interface and signal.






  ---
   espionage/espionage.py | 139
  ++---
   1 file changed, 120 insertions(+), 19 deletions(-)
 
  diff --git a/espionage/espionage.py b/espionage/espionage.py
  index ffd468a..b60ad00 100644
  --- a/espionage/espionage.py
  +++ b/espionage/espionage.py
  @@ -38,6 +38,7 @@ from efl.elementary.panes import Panes
   from efl.elementary.popup import Popup
   from efl.elementary.separator import Separator
   from efl.elementary.table import Table
  +from efl.elementary.frame import Frame
   from efl.elementary.genlist import Genlist, GenlistItem,
 GenlistItemClass
   from efl.dbus_mainloop import DBusEcoreMainLoop
 
  @@ -48,6 +49,14 @@ class Options(object):
   self.show_introspect_stuff = False
   self.show_private_stuff = False
   self.pretty_output = True
  +self.scroll_on_signal = True
  +
  +
  +def prettify_if_needed(data):
  +if options.pretty_output:
  +return utf8_to_markup(json.dumps(data, indent=2))
  +else:
  +return utf8_to_markup(str(data))
 
 
   ### connect to session and system buses, and set session as the current
  one
  @@ -548,21 +557,103 @@ class MethodRunner(Popup):
   #  wrong params for example are raised later :/
 
   def reply_handler(self, *rets):
  -if rets:
  -if options.pretty_output:
  -s = utf8_to_markup(json.dumps(rets, indent=2))
  -else:
  -s = utf8_to_markup(str(rets))
  -else:
  -s = Method executed successfully.brNothing returned.
  -self._return_entry.entry = s
  +self._return_entry.entry = prettify_if_needed(rets) if rets \
  +else Method executed successfully.brNothing
 returned.
 
   def error_handler(self, *rets):
   self._return_entry.entry = 'Error executing method'
 
 
  +### Signals receiver
  +class SignalItemClass(GenlistItemClass):
  +def __init__(self):
  +GenlistItemClass.__init__(self, item_style='default_style')
  +def text_get(self, gl, part, data):
  +return 'b%s/  iface: i%s/ path: i%s/ sender:
  i%s/' % \
  +   (data['signal'], data['iface'], data['path'],
  data['sender'])
  +
  +class SignalReceiver(Frame):
  +def __init__(self, parent):
  +Frame.__init__(self, parent, text=Signals)
  +self._parent = parent
  +
  +vbox = Box(self)
  +vbox.show()
  +self.content = vbox
  +
  +self.siglist = Genlist(self, homogeneous=True,
  mode=elm.ELM_LIST_SCROLL)
  +self.siglist.size_hint_weight = EVAS_HINT_EXPAND,
 EVAS_HINT_EXPAND
  +self.siglist.size_hint_align = EVAS_HINT_FILL, EVAS_HINT_FILL
  +self.siglist.callback_clicked_double_add(self.signal_clicked_cb)
  +self.siglist.show()
  +vbox.pack_end(self.siglist)
  +self.itc = SignalItemClass()
  +
  +hbox = Box(self, horizontal=True)
  +hbox.size_hint_align = 0.0, 0.5
  +hbox.show()
  +vbox.pack_end(hbox)
  +
  +bt = Button(self, text='Clear')
  +bt.callback_clicked_add(lambda b: self.siglist.clear())
  +hbox.pack_end(bt)
  +bt.show()
  +
  +def scroll_on_signal_clicked_cb(chk):
  +options.scroll_on_signal = chk.state
  +ck = Check(self, text='Scroll on signal')
  +ck.state = options.scroll_on_signal
  +ck.callback_changed_add(scroll_on_signal_clicked_cb)
  +hbox.pack_end(ck)
  +ck.show()
  +
  +for b in session_bus, system_bus:
  +b.add_signal_receiver(self.signal_cb,
 sender_keyword='sender',
  +destination_keyword='dest', interface_keyword='iface',
  +member_keyword='signal',path_keyword='path')
  +
  +def 

Re: [E-devel] [EGIT] [apps/espionage] master 01/01: Espionage: add the new signal inspector.

2013-11-20 Thread Gustavo Sverzut Barbieri
On Wednesday, November 20, 2013, Davide Andreoli wrote:

 2013/11/20 Gustavo Sverzut Barbieri barbi...@gmail.com javascript:;

  On Wednesday, November 20, 2013, davemds wrote:
 
   davemds pushed a commit to branch master.
  
  
  
 
 http://git.enlightenment.org/apps/espionage.git/commit/?id=d35bf71a0867f0178b229167795dacabf4161197
  
   commit d35bf71a0867f0178b229167795dacabf4161197
   Author: davemds d...@gurumeditation.it javascript:; javascript:;
   Date:   Wed Nov 20 21:33:47 2013 +0100
  
   Espionage: add the new signal inspector.
  
   A new Pane at the bottom of the window show ALL the signals that
   transit on both buses. Double clicking on a received signal you can
   see its full content (parameters).
  
   Now Espionage have more features than d-feet...efl beats gnome one
   more time :D
 
 
  Just need better GUI and GFX, we know u can do it better
 

 TBH I do not have so many ideas on how to beautify it.
 I have plans to add icons for items in the lists, and to add custom
 textblock style to colorize methods params...but thats all. Any
 suggestion is welcome.


Thats enough





 Now that we are on this: someone know a source of standard icons for object
 oriented stuff ?
 I need icons for method, object, property, interface and signal.


 
 
 
 
   ---
espionage/espionage.py | 139
   ++---
1 file changed, 120 insertions(+), 19 deletions(-)
  
   diff --git a/espionage/espionage.py b/espionage/espionage.py
   index ffd468a..b60ad00 100644
   --- a/espionage/espionage.py
   +++ b/espionage/espionage.py
   @@ -38,6 +38,7 @@ from efl.elementary.panes import Panes
from efl.elementary.popup import Popup
from efl.elementary.separator import Separator
from efl.elementary.table import Table
   +from efl.elementary.frame import Frame
from efl.elementary.genlist import Genlist, GenlistItem,
  GenlistItemClass
from efl.dbus_mainloop import DBusEcoreMainLoop
  
   @@ -48,6 +49,14 @@ class Options(object):
self.show_introspect_stuff = False
self.show_private_stuff = False
self.pretty_output = True
   +self.scroll_on_signal = True
   +
   +
   +def prettify_if_needed(data):
   +if options.pretty_output:
   +return utf8_to_markup(json.dumps(data, indent=2))
   +else:
   +return utf8_to_markup(str(data))
  
  
### connect to session and system buses, and set session as the
 current
   one
   @@ -548,21 +557,103 @@ class MethodRunner(Popup):
#  wrong params for example are raised later :/
  
def reply_handler(self, *rets):
   -if rets:
   -if options.pretty_output:
   -s = utf8_to_markup(json.dumps(rets, indent=2))
   -else:
   -s = utf8_to_markup(str(rets))
   -else:
   -s = Method executed successfully.brNothing returned.
   -self._return_entry.entry = s
   +self._return_entry.entry = prettify_if_needed(rets) if rets \
   +else Method executed successfully.brNothing
  returned.
  
def error_handler(self, *rets):
self._return_entry.entry = 'Error executing method'
  
  
   +### Signals receiver
   +class SignalItemClass(GenlistItemClass):
   +def __init__(self):
   +GenlistItemClass.__init__(self, item_style='default_style')
   +def text_get(self, gl, part, data):
   +return 'b%s/  iface: i%s/ path: i%s/ sender:
   i%s/' % \
   +   (data['signal'], data['iface'], data['path'],
   data['sender'])
   +
   +class SignalReceiver(Frame):
   +def __init__(self, parent):
   +Frame.__init__(self, parent, text=Signals)
   +self._parent = parent
   +
   +vbox = Box(self)
   +vbox.show()
   +self.content = vbox
   +
   +self.siglist = Genlist(self, homogeneous=True,
   mode=elm.ELM_LIST_SCROLL)
   +self.siglist.size_hint_weight = EVAS_HINT_EXPAND,
  EVAS_HINT_EXPAND
   +self.siglist.size_hint_align = EVAS_HINT_FILL, EVAS_HINT_FILL
   +
  self.siglist.callback_clicked_double_add(self.signal_clicked_cb)
   +self.siglist.show()
   +vbox.pack_end(self.
 --
  Shape the Mobile Experience: Free Subscription
  Software experts and developers: Be at the forefront of tech innovation.
  Intel(R) Software Adrenaline delivers strategic insight and game-changing
  conversations that shape the rapidly evolving mobile landscape. Sign up
  now.
 
 http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
  ___
  enlightenment-devel mailing list
  enlightenment-devel@lists.sourceforge.net javascript:;
  https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
 

 --
 Shape the 

[E-devel] Fwd: [Enlightenment-intl] Greek Translation Update

2013-11-20 Thread Alex-P. Natsios
Hello people,

Just forwarding this mail for any (most i'd guess? :p) devs not
subscribed in the i18n list.

-- Forwarded message --
From: RageCryX ragec...@yahoo.gr
Date: Wed, Nov 20, 2013 at 11:21 PM
Subject: [Enlightenment-intl] Greek Translation Update
To: enlightenment-i...@lists.sourceforge.net
enlightenment-i...@lists.sourceforge.net


Greek translation update (el.po) for enlightenment (attached el.po_diff)

Also I wanted to ask: Is it possible to open a localization section in
the wiki with subsections for each language so we can make (localized)
lookup tables for terms (like gadgets, shelf, module etc) so its
more easy for new translators to pick up and dont get the already
translated content messy?

And a second idea targeted mostly at the developers (hope someone
reads this): Another section in the wiki or the bug tracker (or smth)
to propose alternatives for the original messages or the inclusion of
tooltips in some cases. There is no message I can't translate from
English to Greek, but some of these messages become to
ambiguous/abstract for the user when translated, tooltips would help
clarify these.

Thanks for your time,
George Koutsikos
-

i think it is a really good and practical idea (the second part even more so).

-- 
Regards,

Alex-P. Natsios
(a.k.a Drakevr)

--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Which constraint solver is used in EFL?

2013-11-20 Thread Thomas Strobel
On Wed, 2013-11-20 at 11:51 +1000, David Seikel wrote:
 On Wed, 20 Nov 2013 09:15:01 +0900 Carsten Haitzler (The Rasterman)
 ras...@rasterman.com wrote:
 
  On Tue, 19 Nov 2013 15:20:01 + Thomas Strobel ts...@cam.ac.uk
  said:
  
   Hi all,
   
   I was wondering which constraint solver is being used in EFL for
   placing evas objects relatively to each other? Especially for edje,
   can anyone point me to a research paper or similar which describes
   the algorithm being used?
  
  nope. can't. it's just math man. math. there is no constraint
  solver at all. it's just calculate your coords - if you are relative
  TO something else... your coords depend on its coords - so go
  calculate what you depend on first... and repeat (recurse). it's just
  inside edje. simple basic logic+math

Well, I guessed it was related to math. ;)

 
 Or to put it another way, there are no constraints, it's not that sort
 of system.  Things are placed relative to other things, at a fixed
 fraction of the size of the thing it is relative to.

Thank you very much for clarifying how it works. I just didn't want to
work through the source immediately, searching for a constraint solver's
implementation like Cassowary.

 
 On the other hand, there is also ephysics, which can be used to make
 graphics objects react to other objects in a 2D plane using the bullet
 physics library.  You can ask the bullet library authors about their
 algorithms.
 
 --
 Shape the Mobile Experience: Free Subscription
 Software experts and developers: Be at the forefront of tech innovation.
 Intel(R) Software Adrenaline delivers strategic insight and game-changing 
 conversations that shape the rapidly evolving mobile landscape. Sign up now. 
 http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
 ___ enlightenment-devel mailing 
 list enlightenment-devel@lists.sourceforge.net 
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel



--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [apps/terminology] master 02/02: do not bring back a selection from the dead

2013-11-20 Thread Boris Faure
billiob pushed a commit to branch master.

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

commit b149052d642d0c280e85425d1bf73b6c9fee3f39
Author: Boris Faure bill...@gmail.com
Date:   Wed Nov 20 23:12:19 2013 +0100

do not bring back a selection from the dead
---
 src/bin/termio.c | 25 +
 1 file changed, 1 insertion(+), 24 deletions(-)

diff --git a/src/bin/termio.c b/src/bin/termio.c
index 1ea60f5..4764472 100644
--- a/src/bin/termio.c
+++ b/src/bin/termio.c
@@ -41,12 +41,6 @@ struct _Termio
   int button;
} mouse;
struct {
-  struct {
- int x, y;
-  } start, end;
-  Eina_Bool available : 1;
-   } backup_sel;
-   struct {
   char *string;
   int x1, y1, x2, y2;
   int suspend;
@@ -3043,22 +3037,10 @@ _smart_cb_mouse_down(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_UNUS
   }
 else if (ev-flags  EVAS_BUTTON_DOUBLE_CLICK)
   {
- if (shift 
- sd-backup_sel.available)
-   {
-  _sel_set(data, EINA_TRUE);
-  sd-pty-selection.is_active = EINA_TRUE;
-  sd-pty-selection.start.x = sd-backup_sel.start.x;
-  sd-pty-selection.start.y = sd-backup_sel.start.y;
-  sd-pty-selection.end.x   = sd-backup_sel.end.x;
-  sd-pty-selection.end.y   = sd-backup_sel.end.y;
-  _selection_dbl_fix(data);
+ if (shift)
   _sel_word_to(data, cx, cy - sd-scroll);
-   }
  else
-   {
   _sel_word(data, cx, cy - sd-scroll);
-   }
  if (sd-pty-selection.is_active)
_take_selection(data, ELM_SEL_TYPE_PRIMARY);
  sd-didclick = EINA_TRUE;
@@ -3213,11 +3195,6 @@ _smart_cb_mouse_up(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_UNUSED
  _smart_update_queue(data, sd);
  _take_selection(data, ELM_SEL_TYPE_PRIMARY);
   }
-sd-backup_sel.available = sd-pty-selection.is_active;
-sd-backup_sel.start.x = sd-pty-selection.start.x;
-sd-backup_sel.start.y = sd-pty-selection.start.y;
-sd-backup_sel.end.x = sd-pty-selection.end.x;
-sd-backup_sel.end.y = sd-pty-selection.end.y;
   }
  }
 }

-- 




[EGIT] [apps/terminology] master 01/02: do not send mouse tracking when ctrl/shift are pressed. Closes T39, T535

2013-11-20 Thread Boris Faure
billiob pushed a commit to branch master.

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

commit e5efdabd27b248a7f3babc37a85f4bca76ba661f
Author: Boris Faure bill...@gmail.com
Date:   Wed Nov 20 22:36:51 2013 +0100

do not send mouse tracking when ctrl/shift are pressed. Closes T39, T535

Do just like xterm. It uses them to show some popups.
Ctrl+mouse makes box selection.
---
 src/bin/termio.c | 70 +---
 1 file changed, 36 insertions(+), 34 deletions(-)

diff --git a/src/bin/termio.c b/src/bin/termio.c
index 006a5e4..1ea60f5 100644
--- a/src/bin/termio.c
+++ b/src/bin/termio.c
@@ -2608,15 +2608,13 @@ _rep_mouse_down(Termio *sd, Evas_Event_Mouse_Down *ev, 
int cx, int cy)
}
  else
{
-  int shift = evas_key_modifier_is_set(ev-modifiers, Shift) 
? 4 : 0;
   int meta = evas_key_modifier_is_set(ev-modifiers, Alt) ? 
8 : 0;
-  int ctrl = evas_key_modifier_is_set(ev-modifiers, 
Control) ? 16 : 0;
 
   if (btn  2) btn = 0;
   buf[0] = 0x1b;
   buf[1] = '[';
   buf[2] = 'M';
-  buf[3] = (btn | shift | meta | ctrl) + ' ';
+  buf[3] = (btn | meta) + ' ';
   buf[4] = cx + 1 + ' ';
   buf[5] = cy + 1 + ' ';
   buf[6] = 0;
@@ -2627,16 +2625,14 @@ _rep_mouse_down(Termio *sd, Evas_Event_Mouse_Down *ev, 
int cx, int cy)
 break;
   case MOUSE_EXT_UTF8: // ESC.[.M.BTN/FLGS.XUTF8.YUTF8
   {
- int shift = evas_key_modifier_is_set(ev-modifiers, Shift) ? 4 
: 0;
  int meta = evas_key_modifier_is_set(ev-modifiers, Alt) ? 8 : 0;
- int ctrl = evas_key_modifier_is_set(ev-modifiers, Control) ? 
16 : 0;
  int v, i;
 
  if (btn  2) btn = 0;
  buf[0] = 0x1b;
  buf[1] = '[';
  buf[2] = 'M';
- buf[3] = (btn | shift | meta | ctrl) + ' ';
+ buf[3] = (btn | meta) + ' ';
  i = 4;
  v = cx + 1 + ' ';
  if (v = 127) buf[i++] = v;
@@ -2659,25 +2655,21 @@ _rep_mouse_down(Termio *sd, Evas_Event_Mouse_Down *ev, 
int cx, int cy)
 break;
   case MOUSE_EXT_SGR: // ESC.[..NUM.;.NUM.;.NUM.M
   {
- int shift = evas_key_modifier_is_set(ev-modifiers, Shift) ? 4 
: 0;
  int meta = evas_key_modifier_is_set(ev-modifiers, Alt) ? 8 : 0;
- int ctrl = evas_key_modifier_is_set(ev-modifiers, Control) ? 
16 : 0;
 
  snprintf(buf, sizeof(buf), %c[%i;%i;%iM, 0x1b,
-  (btn | shift | meta | ctrl), cx + 1, cy + 1);
+  (btn | meta), cx + 1, cy + 1);
  termpty_write(sd-pty, buf, strlen(buf));
  ret = EINA_TRUE;
   }
 break;
   case MOUSE_EXT_URXVT: // ESC.[.NUM.;.NUM.;.NUM.M
   {
- int shift = evas_key_modifier_is_set(ev-modifiers, Shift) ? 4 
: 0;
  int meta = evas_key_modifier_is_set(ev-modifiers, Alt) ? 8 : 0;
- int ctrl = evas_key_modifier_is_set(ev-modifiers, Control) ? 
16 : 0;
 
  if (btn  2) btn = 0;
  snprintf(buf, sizeof(buf), %c[%i;%i;%iM, 0x1b,
-  (btn | shift | meta | ctrl) + ' ',
+  (btn | meta) + ' ',
   cx + 1, cy + 1);
  termpty_write(sd-pty, buf, strlen(buf));
  ret = EINA_TRUE;
@@ -2694,7 +2686,7 @@ _rep_mouse_up(Termio *sd, Evas_Event_Mouse_Up *ev, int 
cx, int cy)
 {
char buf[64];
Eina_Bool ret = EINA_FALSE;
-   int shift, meta, ctrl;
+   int meta;
 
if ((sd-pty-mouse_mode == MOUSE_OFF) ||
(sd-pty-mouse_mode == MOUSE_X10))
@@ -2702,9 +2694,7 @@ _rep_mouse_up(Termio *sd, Evas_Event_Mouse_Up *ev, int 
cx, int cy)
if (sd-mouse.button == ev-button)
  sd-mouse.button = 0;
 
-   shift = evas_key_modifier_is_set(ev-modifiers, Shift) ? 4 : 0;
meta = evas_key_modifier_is_set(ev-modifiers, Alt) ? 8 : 0;
-   ctrl = evas_key_modifier_is_set(ev-modifiers, Control) ? 16 : 0;
 
switch (sd-pty-mouse_ext)
  {
@@ -2714,7 +2704,7 @@ _rep_mouse_up(Termio *sd, Evas_Event_Mouse_Up *ev, int 
cx, int cy)
  buf[0] = 0x1b;
  buf[1] = '[';
  buf[2] = 'M';
- buf[3] = (3 | shift | meta | ctrl) + ' ';
+ buf[3] = (3 | meta) + ' ';
  buf[4] = cx + 1 + ' ';
  buf[5] = cy + 1 + ' ';
  buf[6] = 0;
@@ -2729,7 +2719,7 @@ _rep_mouse_up(Termio *sd, Evas_Event_Mouse_Up *ev, int 
cx, int cy)
  buf[0] = 0x1b;
  buf[1] = '[';
  buf[2] = 'M';
- buf[3] = (3 | shift | meta | ctrl) + ' ';
+ buf[3] = (3 | meta) + ' ';
  i = 4;
  v = cx + 1 + ' ';

[EGIT] [core/enlightenment] master 01/06: disable resizing of buttons in window remember dialog

2013-11-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit 3cd71f149b1ac47407558a9f6a365904e016ea54
Author: Mike Blumenkrantz zm...@enlightenment.org
Date:   Tue Nov 19 22:00:17 2013 -0500

disable resizing of buttons in window remember dialog

T381
---
 src/modules/conf_window_remembers/e_int_config_remembers.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/modules/conf_window_remembers/e_int_config_remembers.c 
b/src/modules/conf_window_remembers/e_int_config_remembers.c
index 7477130..eca507b 100644
--- a/src/modules/conf_window_remembers/e_int_config_remembers.c
+++ b/src/modules/conf_window_remembers/e_int_config_remembers.c
@@ -186,7 +186,7 @@ _basic_create(E_Config_Dialog *cfd, Evas *evas, 
E_Config_Dialog_Data *cfdata)
e_widget_list_object_append(of2, ow, 1, 1, 0.5);
cfdata-btn2 = ow = e_widget_button_add(evas, _(Delete), list-remove, 
_cb_delete, cfdata, NULL);
e_widget_list_object_append(of2, ow, 1, 1, 0.5);
-   e_widget_list_object_append(ol, of2, 1, 1, 0.5);
+   e_widget_list_object_append(ol, of2, 1, 0, 0.5);
 
_cb_list_change(cfdata, NULL);
return ol;

-- 




[EGIT] [core/enlightenment] master 04/06: block mouse down focus event focus setting on already-focused windows

2013-11-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit d17ab08019eb1abe27c39d5201585656564ffe4b
Author: Mike Blumenkrantz zm...@enlightenment.org
Date:   Wed Nov 20 13:17:42 2013 -0500

block mouse down focus event focus setting on already-focused windows

fixes steam menus with click focus, which previously would close 
immediately after opening when they lost focus
---
 src/bin/e_focus.c | 11 +++
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/src/bin/e_focus.c b/src/bin/e_focus.c
index 24cc3e9..28fb473 100644
--- a/src/bin/e_focus.c
+++ b/src/bin/e_focus.c
@@ -63,10 +63,13 @@ e_focus_event_mouse_out(E_Border *bd)
 EAPI void
 e_focus_event_mouse_down(E_Border *bd)
 {
-   if (e_config-focus_policy == E_FOCUS_CLICK)
- e_border_focus_set(bd, 1, 1);
-   else if (e_config-always_click_to_focus)
- e_border_focus_set(bd, 1, 1);
+   if (!bd-focused)
+ {
+if (e_config-focus_policy == E_FOCUS_CLICK)
+  e_border_focus_set(bd, 1, 1);
+else if (e_config-always_click_to_focus)
+  e_border_focus_set(bd, 1, 1);
+ }
if (e_config-always_click_to_raise)
  {
 if (!bd-lock_user_stacking)

-- 




[EGIT] [core/enlightenment] master 02/06: force render queue on nocomp window hide

2013-11-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit 7cc9e7db3bf7cad18b300ea934f07e30cce4b6c8
Author: Mike Blumenkrantz zm...@enlightenment.org
Date:   Wed Nov 20 01:33:56 2013 -0500

force render queue on nocomp window hide

without this, it was possible to break the compositor by enabling options 
which prevent unfullscreening a window on vdesk flip, which causes nocomp mode 
to remain permanently enabled, even after the window has closed
---
 src/bin/e_comp.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/e_comp.c b/src/bin/e_comp.c
index d1f2898..4fef776 100644
--- a/src/bin/e_comp.c
+++ b/src/bin/e_comp.c
@@ -2746,6 +2746,8 @@ _e_comp_win_hide(E_Comp_Win *cw)
 ecore_timer_del(cw-update_timeout);
 cw-update_timeout = NULL;
  }
+   if (cw-nocomp)
+ _e_comp_render_queue(cw-c);
if (conf-keep_unmapped  cw-win)
  {
 if (!cw-delete_me)

-- 




[EGIT] [core/enlightenment] master 03/06: accurately set menu radio item in client vdesk Move to... submenu

2013-11-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit 12ce306457103cf588d3290458c3164484136f29
Author: Mike Blumenkrantz zm...@enlightenment.org
Date:   Wed Nov 20 12:30:21 2013 -0500

accurately set menu radio item in client vdesk Move to... submenu

T478
---
 src/bin/e_int_border_menu.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/src/bin/e_int_border_menu.c b/src/bin/e_int_border_menu.c
index ef12f6f..919a49b 100644
--- a/src/bin/e_int_border_menu.c
+++ b/src/bin/e_int_border_menu.c
@@ -937,14 +937,12 @@ _e_border_menu_cb_sendto_pre(void *data, E_Menu *m 
__UNUSED__, E_Menu_Item *mi)
E_Menu *subm;
E_Menu_Item *submi;
E_Border *bd;
-   E_Desk *desk_cur;
E_Zone *zone;
Eina_List *l = NULL;
char buf[128];
int zones, i;
 
bd = data;
-   desk_cur = e_desk_current_get(bd-zone);
zones = eina_list_count(bd-zone-container-zones);
 
subm = e_menu_new();
@@ -979,7 +977,7 @@ _e_border_menu_cb_sendto_pre(void *data, E_Menu *m 
__UNUSED__, E_Menu_Item *mi)
 #ifdef DESKMIRROR_TEST
  e_menu_item_icon_file_set(submi, sup);
 #endif
- if ((bd-zone == zone)  (desk_cur == desk))
+ if ((bd-zone == zone)  (!bd-iconic)  (bd-desk == desk))
e_menu_item_toggle_set(submi, 1);
  else
e_menu_item_callback_set(submi, _e_border_menu_cb_sendto, desk);

-- 




[EGIT] [core/enlightenment] master 06/06: add back/forward mouse button support for efm when a toolbar is present

2013-11-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit bedf56c457939c897e1eac1f3a2b27c945166178
Author: Mike Blumenkrantz zm...@enlightenment.org
Date:   Wed Nov 20 15:26:49 2013 -0500

add back/forward mouse button support for efm when a toolbar is present

button numbers untested because I don't have a mouse, so if they're wrong 
someone should post the results of clicking those buttons from xev

T67
---
 src/modules/fileman/e_fwin_nav.c | 19 +++
 1 file changed, 19 insertions(+)

diff --git a/src/modules/fileman/e_fwin_nav.c b/src/modules/fileman/e_fwin_nav.c
index d382260..fffcd19 100644
--- a/src/modules/fileman/e_fwin_nav.c
+++ b/src/modules/fileman/e_fwin_nav.c
@@ -55,6 +55,8 @@ static void _cb_button_click(void *data, 
Evas_Object *obj, const cha
 static void _cb_scroll_resize(void *data, Evas *e __UNUSED__, 
Evas_Object *obj __UNUSED__, void *event_info);
 static void _box_button_append(Instance *inst, const char *label, 
Edje_Signal_Cb func);
 static void _box_button_free(Nav_Item *ni);
+static void _cb_fm_mouse_down(void *data, Evas *e EINA_UNUSED, Evas_Object 
*obj EINA_UNUSED, void *event_info);
+
 
 static Eina_List *instances = NULL;
 static const char *_nav_mod_dir = NULL;
@@ -289,6 +291,8 @@ _gc_init(E_Gadcon *gc, const char *name, const char *id, 
const char *style)
inst-tbar = tbar;
inst-o_fm = o_fm;
 
+   evas_object_event_callback_add(o_fm, EVAS_CALLBACK_MOUSE_DOWN, 
_cb_fm_mouse_down, inst);
+
snprintf(buf, sizeof(buf), %s/e-module-efm_nav.edj, _nav_mod_dir);
inst-theme = eina_stringshare_add(buf);
 
@@ -392,6 +396,9 @@ _gc_shutdown(E_Gadcon_Client *gcc)
instances = eina_list_remove(instances, inst);
 
evas_object_event_callback_del_full(inst-o_fm,
+   EVAS_CALLBACK_MOUSE_DOWN,
+   _cb_fm_mouse_down, inst);
+   evas_object_event_callback_del_full(inst-o_fm,
EVAS_CALLBACK_KEY_DOWN,
_cb_key_down, inst);
 
@@ -588,6 +595,18 @@ _cb_favorites_click(void *data, Evas_Object *obj 
__UNUSED__, const char *emissio
 }
 
 static void
+_cb_fm_mouse_down(void *data, Evas *e EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_info)
+{
+   Instance *inst = data;
+   Evas_Event_Mouse_Down *ev = event_info;
+
+   if (ev-button == 9)
+ _cb_forward_click(inst, NULL, NULL, NULL);
+   else if (ev-button == 8)
+ _cb_back_click(inst, NULL, NULL, NULL);
+}
+
+static void
 _cb_changed(void *data, Evas_Object *obj __UNUSED__, void *event_info)
 {
Instance *inst;

-- 




[EGIT] [core/enlightenment] master 05/06: prepend new windows to focus stack during init

2013-11-20 Thread Mike Blumenkrantz
discomfitor pushed a commit to branch master.

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

commit cc2939b327f9ae1ff8b13d3f6bc10ed1b973003f
Author: Mike Blumenkrantz zm...@enlightenment.org
Date:   Wed Nov 20 15:12:25 2013 -0500

prepend new windows to focus stack during init

this fixes stacking after restarts since we manage and raise windows from 
the bottom up, meaning that we must also build our focus stack from back to 
front
---
 src/bin/e_border.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/bin/e_border.c b/src/bin/e_border.c
index 43cc261..19b49ff 100644
--- a/src/bin/e_border.c
+++ b/src/bin/e_border.c
@@ -728,7 +728,10 @@ e_border_new(E_Container *con, Ecore_X_Window win, int 
first_map, int internal)
desk[1] = desky;
ecore_x_window_prop_card32_set(win, E_ATOM_DESK, desk, 2);
 
-   focus_stack = eina_list_append(focus_stack, bd);
+   if (starting)
+ focus_stack = eina_list_prepend(focus_stack, bd);
+   else
+ focus_stack = eina_list_append(focus_stack, bd);
 
return bd;
 }

-- 




[E-devel] I'm baaaaaaaack

2013-11-20 Thread Michael Blumenkrantz
It's been a long month, and I'm sure you all missed me very much.

We're finally in the release cycle for E18, so I'm beginning to hack away
at the few remaining bugs:

http://i.imgur.com/yeKUrll.gif

I've seen the open tickets, and most of them aren't going to be fixed
before release. If anyone has any urgent bugs, speak up.
--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: elementary/elm_scroller.c : For checking focus next object, focus_direcion_get function should be changed to focus_next_get function. If there is no focus next o

2013-11-20 Thread WooHyun Jung
woohyun pushed a commit to branch master.

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

commit 0a3f2f0e315789bd5be87d2205c306b20f660bc2
Author: WooHyun Jung wh0705.j...@samsung.com
Date:   Thu Nov 21 10:13:40 2013 +0900

elementary/elm_scroller.c : For checking focus next object, 
focus_direcion_get function should be changed to focus_next_get function. If 
there is no focus next object, focus_direction_get will be executed by 
focus_next_get.
---
 src/lib/elm_scroller.c | 21 ++---
 1 file changed, 6 insertions(+), 15 deletions(-)

diff --git a/src/lib/elm_scroller.c b/src/lib/elm_scroller.c
index 67ae134..b3082d9 100644
--- a/src/lib/elm_scroller.c
+++ b/src/lib/elm_scroller.c
@@ -151,31 +151,22 @@ _elm_scroller_smart_event(Eo *obj, void *_pd, va_list 
*list)
   }
 else
   {
- Evas_Object *tmp = NULL;
- double degree = 0.0, weight = 0.0;
- void *(*list_data_get)(const Eina_List *list);
-
- list_data_get = eina_list_data_get;
+ Eina_Bool r = EINA_FALSE;
 
  if ((!strcmp(ev-key, Left)) ||
  (!strcmp(ev-key, KP_Left)))
-   degree = 270.0;
+   r = elm_widget_focus_next_get(obj, ELM_FOCUS_LEFT, new_focus);
  else if ((!strcmp(ev-key, Right)) ||
   (!strcmp(ev-key, KP_Right)))
-   degree = 90.0;
+   r = elm_widget_focus_next_get(obj, ELM_FOCUS_RIGHT, new_focus);
  else if ((!strcmp(ev-key, Up)) ||
   (!strcmp(ev-key, KP_Up)))
-   degree = 0.0;
+   r = elm_widget_focus_next_get(obj, ELM_FOCUS_UP, new_focus);
  else if ((!strcmp(ev-key, Down)) ||
   (!strcmp(ev-key, KP_Down)))
-   degree = 180.0;
-
- if (elm_widget_focus_list_direction_get
-   (obj, current_focus, can_focus_list, list_data_get, degree,
-   tmp, weight))
-   new_focus = tmp;
+   r = elm_widget_focus_next_get(obj, ELM_FOCUS_DOWN, new_focus);
 
- if (new_focus)
+ if (r  new_focus)
{
   Evas_Coord l_x = 0;
   Evas_Coord l_y = 0;

-- 




[EGIT] [core/efl] master 01/01: edje - more elaborated compare to reduce compare count.

2013-11-20 Thread ChunEon Park
hermet pushed a commit to branch master.

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

commit 3c9059e3e4ca1cd8dd1846d2baf0ca7379b1f4a9
Author: ChunEon Park her...@hermet.pe.kr
Date:   Thu Nov 21 10:25:35 2013 +0900

edje - more elaborated compare to reduce compare count.
---
 src/lib/edje/edje_smart.c | 35 ++-
 1 file changed, 18 insertions(+), 17 deletions(-)

diff --git a/src/lib/edje/edje_smart.c b/src/lib/edje/edje_smart.c
index dae9b59..d4c095e 100644
--- a/src/lib/edje/edje_smart.c
+++ b/src/lib/edje/edje_smart.c
@@ -182,26 +182,27 @@ _edje_smart_move(Eo *obj EINA_UNUSED, void *_pd, va_list 
*list)
  Edje_Real_Part *ep;
 
  ep = ed-table_parts[i];
- if ((ep-type == EDJE_RP_TYPE_TEXT) 
- (ep-typedata.text))
-   evas_object_move(ep-object, 
-ed-x + ep-x + ep-typedata.text-offset.x, 
-ed-y + ep-y + ep-typedata.text-offset.y);
+ if ((ep-type == EDJE_RP_TYPE_TEXT)  (ep-typedata.text))
+   {
+  evas_object_move(ep-object,
+   ed-x + ep-x + ep-typedata.text-offset.x,
+   ed-y + ep-y + 
ep-typedata.text-offset.y);
+   }
  else
-   evas_object_move(ep-object, 
-ed-x + ep-x, 
-ed-y + ep-y);
- if (ep-part-entry_mode  EDJE_ENTRY_EDIT_MODE_NONE)
-   _edje_entry_real_part_configure(ed, ep);
- if ((ep-type == EDJE_RP_TYPE_SWALLOW) 
- (ep-typedata.swallow))
{
-  if (ep-typedata.swallow-swallowed_object)
-evas_object_move
-(ep-typedata.swallow-swallowed_object, 
-ed-x + ep-x, 
-ed-y + ep-y);
+  evas_object_move(ep-object, ed-x + ep-x, ed-y + ep-y);
+  if ((ep-type == EDJE_RP_TYPE_SWALLOW) 
+  (ep-typedata.swallow))
+{
+   if (ep-typedata.swallow-swallowed_object)
+ evas_object_move
+(ep-typedata.swallow-swallowed_object,
+ ed-x + ep-x,
+ ed-y + ep-y);
+}
}
+ if (ep-part-entry_mode  EDJE_ENTRY_EDIT_MODE_NONE)
+   _edje_entry_real_part_configure(ed, ep);
   }
  }
 //   _edje_emit(ed, move, NULL);

-- 




[EGIT] [core/efl] master 01/01: evas: reduce numbers of call to eet_init/eet_shutdown.

2013-11-20 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit 63c01cbb2a01a09a40d22fa47454a82c8b31183f
Author: Cedric Bail cedric.b...@samsung.com
Date:   Thu Nov 21 10:47:27 2013 +0900

evas: reduce numbers of call to eet_init/eet_shutdown.
---
 src/lib/evas/canvas/evas_main.c   | 8 
 src/lib/evas/common/evas_image_main.c | 6 --
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/src/lib/evas/canvas/evas_main.c b/src/lib/evas/canvas/evas_main.c
index 101b82f..6cc8f8e 100644
--- a/src/lib/evas/canvas/evas_main.c
+++ b/src/lib/evas/canvas/evas_main.c
@@ -51,6 +51,10 @@ evas_init(void)
 
eo_init();
 
+#ifdef BUILD_LOADER_EET
+   eet_init();
+#endif
+
evas_module_init();
if (!evas_async_events_init())
  goto shutdown_module;
@@ -124,6 +128,10 @@ evas_shutdown(void)
evas_font_dir_cache_free();
evas_common_shutdown();
evas_module_shutdown();
+
+#ifdef BUILD_LOADER_EET
+   eet_shutdown();
+#endif
eo_shutdown();
 
eina_log_domain_unregister(_evas_log_dom_global);
diff --git a/src/lib/evas/common/evas_image_main.c 
b/src/lib/evas/common/evas_image_main.c
index 1492d80..75767dc 100644
--- a/src/lib/evas/common/evas_image_main.c
+++ b/src/lib/evas/common/evas_image_main.c
@@ -194,9 +194,6 @@ evas_common_image_init(void)
reference++;
    ERR(REF++=%i, reference);
 
-#ifdef BUILD_LOADER_EET
-   eet_init();
-#endif
evas_common_scalecache_init();
 }
 
@@ -229,9 +226,6 @@ evas_common_image_shutdown(void)
 #endif
  }
 
-#ifdef BUILD_LOADER_EET
-   eet_shutdown();
-#endif
evas_common_scalecache_shutdown();
 }
 

-- 




[EGIT] [core/efl] master 01/01: edje - use Eina_Bool.

2013-11-20 Thread ChunEon Park
hermet pushed a commit to branch master.

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

commit c28f08a477f7bce7b514b8f9aa58904234be1e03
Author: ChunEon Park her...@hermet.pe.kr
Date:   Thu Nov 21 13:00:55 2013 +0900

edje - use Eina_Bool.
---
 src/lib/edje/edje_calc.c  |  8 
 src/lib/edje/edje_callbacks.c | 16 
 src/lib/edje/edje_embryo.c|  2 +-
 src/lib/edje/edje_private.h   |  4 ++--
 src/lib/edje/edje_program.c   | 16 
 src/lib/edje/edje_util.c  | 38 +++---
 6 files changed, 42 insertions(+), 42 deletions(-)

diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c
index 2f9f1d2..017c199 100644
--- a/src/lib/edje/edje_calc.c
+++ b/src/lib/edje/edje_calc.c
@@ -131,7 +131,7 @@ _edje_part_pos_set(Edje *ed, Edje_Real_Part *ep, int mode, 
FLOAT_T pos, FLOAT_T
ed-dirty = EINA_TRUE;
ed-recalc_call = EINA_TRUE;
 #ifdef EDJE_CALC_CACHE
-   ep-invalidate = 1;
+   ep-invalidate = EINA_TRUE;
 #endif
 }
 
@@ -607,7 +607,7 @@ _edje_part_description_apply(Edje *ed, Edje_Real_Part *ep, 
const char *d1, doubl
ed-dirty = EINA_TRUE;
ed-recalc_call = EINA_TRUE;
 #ifdef EDJE_CALC_CACHE
-   ep-invalidate = 1;
+   ep-invalidate = EINA_TRUE;
 #endif
 }
 
@@ -846,7 +846,7 @@ _edje_dragable_pos_set(Edje *ed, Edje_Real_Part *ep, 
FLOAT_T x, FLOAT_T y)
  }
 
 #ifdef EDJE_CALC_CACHE
-   ep-invalidate = 1;
+   ep-invalidate = EINA_TRUE;
 #endif
_edje_recalc(ed); /* won't do anything if dirty flag isn't set */
 }
@@ -3969,7 +3969,7 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int 
flags, Edje_Calc_Params *sta
if (ep-calculated == FLAG_XY)
  {
 ep-state = ed-state;
-ep-invalidate = 0;
+ep-invalidate = EINA_FALSE;
  }
 #else
eina_cow_free(_edje_calc_params_map_cow, (const Eina_Cow_Data **) lp1.map);
diff --git a/src/lib/edje/edje_callbacks.c b/src/lib/edje/edje_callbacks.c
index 9a508c7..5ea7efb 100644
--- a/src/lib/edje/edje_callbacks.c
+++ b/src/lib/edje/edje_callbacks.c
@@ -151,7 +151,7 @@ _edje_mouse_down_signal_cb(void *data, Eo *obj, const 
Eo_Event_Description *desc
  {
rp-clicked_button = ev-button;
 if (!(ev-event_flags  EVAS_EVENT_FLAG_ON_HOLD))
- rp-still_in = 1;
+ rp-still_in = EINA_TRUE;
  }
 //   _edje_recalc_do(ed);
_edje_thaw(ed);
@@ -209,7 +209,7 @@ _edje_mouse_up_signal_cb(void *data, Eo *obj, const 
Eo_Event_Description *desc E
   ed-recalc_call = EINA_TRUE;
  ed-dirty = EINA_TRUE;
 #ifdef EDJE_CALC_CACHE
- rp-invalidate = 1;
+ rp-invalidate = EINA_TRUE;
 #endif
  if (!ignored  rp-drag-started)
_edje_emit(ed, drag,stop, rp-part-name);
@@ -225,7 +225,7 @@ _edje_mouse_up_signal_cb(void *data, Eo *obj, const 
Eo_Event_Description *desc E
_edje_emit(ed, buf, rp-part-name);
  }
rp-clicked_button = 0;
-   rp-still_in = 0;
+   rp-still_in = EINA_FALSE;
 
 //   _edje_recalc_do(ed);
_edje_thaw(ed);
@@ -262,7 +262,7 @@ _edje_mouse_move_signal_cb(void *data, Eo *obj, const 
Eo_Event_Description *desc
  {
 
 if (ev-event_flags  EVAS_EVENT_FLAG_ON_HOLD)
-  rp-still_in = 0;
+  rp-still_in = EINA_FALSE;
 else
   {
 Evas_Coord x, y, w, h;
@@ -270,7 +270,7 @@ _edje_mouse_move_signal_cb(void *data, Eo *obj, const 
Eo_Event_Description *desc
 evas_object_geometry_get(obj, x, y, w, h);
 if ((ev-cur.canvas.x  x) || (ev-cur.canvas.y  y) ||
 (ev-cur.canvas.x = (x + w)) || (ev-cur.canvas.y = (y + h)))
-  rp-still_in = 0;
+  rp-still_in = EINA_FALSE;
   }
  }
else
@@ -282,7 +282,7 @@ _edje_mouse_move_signal_cb(void *data, Eo *obj, const 
Eo_Event_Description *desc
 evas_object_geometry_get(obj, x, y, w, h);
 if ((ev-cur.canvas.x = x)  (ev-cur.canvas.y = y) 
 (ev-cur.canvas.x  (x + w))  (ev-cur.canvas.y  (y + h)))
-  rp-still_in = 1;
+  rp-still_in = EINA_TRUE;
   }
  }
_edje_freeze(ed);
@@ -297,7 +297,7 @@ _edje_mouse_move_signal_cb(void *data, Eo *obj, const 
Eo_Event_Description *desc
  ed-recalc_call = EINA_TRUE;
 ed-dirty = EINA_TRUE;
 #ifdef EDJE_CALC_CACHE
-rp-invalidate = 1;
+rp-invalidate = EINA_TRUE;
 #endif
  }
_edje_recalc_do(ed);
@@ -321,7 +321,7 @@ _edje_mouse_move_signal_cb(void *data, Eo *obj, const 
Eo_Event_Description *desc
   ed-recalc_call = EINA_TRUE;
  ed-dirty = EINA_TRUE;
 #ifdef EDJE_CALC_CACHE
- rp-invalidate = 1;
+ rp-invalidate = EINA_TRUE;
 #endif
  _edje_recalc_do(ed);
   }
diff --git a/src/lib/edje/edje_embryo.c b/src/lib/edje/edje_embryo.c
index b9686af..a57fd99 100644
--- 

Re: [E-devel] I'm baaaaaaaack

2013-11-20 Thread Steven@e
about time ! and no blog post since a while !! :)



On Thu, Nov 21, 2013 at 12:25 AM, Michael Blumenkrantz
michael.blumenkra...@gmail.com wrote:
 It's been a long month, and I'm sure you all missed me very much.

 We're finally in the release cycle for E18, so I'm beginning to hack away
 at the few remaining bugs:

 http://i.imgur.com/yeKUrll.gif

 I've seen the open tickets, and most of them aren't going to be fixed
 before release. If anyone has any urgent bugs, speak up.
 --
 Shape the Mobile Experience: Free Subscription
 Software experts and developers: Be at the forefront of tech innovation.
 Intel(R) Software Adrenaline delivers strategic insight and game-changing
 conversations that shape the rapidly evolving mobile landscape. Sign up now.
 http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/efl] master 01/01: edje - cleaning the code.

2013-11-20 Thread ChunEon Park
hermet pushed a commit to branch master.

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

commit 035d573571a80f23077b46937586d71a1f638a54
Author: ChunEon Park her...@hermet.pe.kr
Date:   Thu Nov 21 13:12:34 2013 +0900

edje - cleaning the code.

keep our code convention.
---
 src/lib/edje/edje_calc.c | 61 
 1 file changed, 31 insertions(+), 30 deletions(-)

diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c
index 017c199..b6816ee 100644
--- a/src/lib/edje/edje_calc.c
+++ b/src/lib/edje/edje_calc.c
@@ -3345,24 +3345,27 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int 
flags, Edje_Calc_Params *sta
 #ifdef EDJE_CALC_CACHE
 if (ed-all_part_change ||
 ep-invalidate ||
-state1 = ep-param1.state ||
-statec = ep-param1.state ||
-statet = ep-param1.state ||
-statec1 = ep-param1.state ||
-statel1 = ep-param1.state ||
-statep1 = ep-param1.state ||
+(state1 = ep-param1.state) ||
+(statec = ep-param1.state) ||
+(statet = ep-param1.state) ||
+(statec1 = ep-param1.state) ||
+(statel1 = ep-param1.state) ||
+(statep1 = ep-param1.state) ||
 proxy_invalidate ||
 state ||
-((ep-part-type == EDJE_PART_TYPE_TEXT || ep-part-type == 
EDJE_PART_TYPE_TEXTBLOCK)  ed-text_part_change))
+((ep-part-type == EDJE_PART_TYPE_TEXT ||
+  ep-part-type == EDJE_PART_TYPE_TEXTBLOCK) 
+ ed-text_part_change))
 #endif
   {
- _edje_part_recalc_single(ed, ep, ep-param1.description, 
chosen_desc, center[0], light[0], persp[0],
-  rp1[Rel1X], rp1[Rel1Y], rp1[Rel2X], 
rp1[Rel2Y],
-  confine_to, threshold,
-  p1, ep-param1.set, mmw, mmh, pos);
+ _edje_part_recalc_single(ed, ep, ep-param1.description,
+  chosen_desc, center[0], light[0],
+  persp[0], rp1[Rel1X], rp1[Rel1Y],
+  rp1[Rel2X], rp1[Rel2Y], confine_to,
+  threshold, p1, ep-param1.set, mmw, mmh,
+  pos);
 #ifdef EDJE_CALC_CACHE
- if (flags == FLAG_XY)
-   ep-param1.state = ed-state;
+ if (flags == FLAG_XY) ep-param1.state = ed-state;
 #endif
   }
  }
@@ -3410,29 +3413,27 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int 
flags, Edje_Calc_Params *sta
 
 if (ed-all_part_change ||
 ep-invalidate ||
-state2 = ep-param2-state ||
-statec = ep-param2-state ||
-statet = ep-param2-state ||
-statec2 = ep-param2-state ||
-statel2 = ep-param2-state ||
-statep2 = ep-param2-state ||
+(state2 = ep-param2-state) ||
+(statec = ep-param2-state) ||
+(statet = ep-param2-state) ||
+(statec2 = ep-param2-state) ||
+(statel2 = ep-param2-state) ||
+(statep2 = ep-param2-state) ||
 proxy_invalidate ||
 state ||
-((ep-part-type == EDJE_PART_TYPE_TEXT || ep-part-type == 
EDJE_PART_TYPE_TEXTBLOCK)  ed-text_part_change))
+((ep-part-type == EDJE_PART_TYPE_TEXT ||
+  ep-part-type == EDJE_PART_TYPE_TEXTBLOCK) 
+ ed-text_part_change))
 #endif
   {
  _edje_part_recalc_single(ed, ep, ep-param2-description,
-  chosen_desc,
-  center[1], light[1], persp[1],
-  rp2[Rel1X],
-  rp2[Rel1Y],
-  rp2[Rel2X],
-  rp2[Rel2Y],
-  confine_to, threshold,
-  p2, ep-param2-set, mmw, mmh, pos);
+  chosen_desc, center[1], light[1],
+  persp[1], rp2[Rel1X], rp2[Rel1Y],
+  rp2[Rel2X], rp2[Rel2Y], confine_to,
+  threshold, p2, ep-param2-set, mmw, mmh,
+  pos);
 #ifdef EDJE_CALC_CACHE
- if (flags == FLAG_XY)
-   ep-param2-state = ed-state;
+ if (flags == FLAG_XY) ep-param2-state = ed-state;
 #endif
   }
 

-- 




[EGIT] [core/efl] master 01/01: edje - Fix to update map enabled part when edje object is moved.

2013-11-20 Thread ChunEon Park
hermet pushed a commit to branch master.

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

commit 12aba0db5a0949488d37b69b8696ed424666dca8
Author: ChunEon Park her...@hermet.pe.kr
Date:   Thu Nov 21 13:26:37 2013 +0900

edje - Fix to update map enabled part when edje object is moved.
---
 ChangeLog   |  4 +++
 NEWS|  1 +
 src/lib/edje/edje_calc.c|  6 -
 src/lib/edje/edje_private.h |  1 +
 src/lib/edje/edje_smart.c   | 59 ++---
 5 files changed, 40 insertions(+), 31 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index b9c4c28..de43e9e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-11-21  ChunEon Park (Hermet)
+
+   * Edje: Fix to update map-enabled part when the edje object is moved.
+
 2013-11-20  Cedric Bail
 
* Eina: Fix a possible race condition during eina_file_close.
diff --git a/NEWS b/NEWS
index 01803f8..cdb7d7d 100644
--- a/NEWS
+++ b/NEWS
@@ -437,6 +437,7 @@ Fixes:
  - Fixed memory leak in the edje map color transition.
  - Add null checking for name of anchor and item in geometry get functions.
  - Fix use of eina_hash_pointer to actually look at the pointer value.
+ - Fix to update map-enabled part when the edje object is moved.
 
 * Efreet:
  - Fix desktop command parsing of https.
diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c
index b6816ee..6f98455 100644
--- a/src/lib/edje/edje_calc.c
+++ b/src/lib/edje/edje_calc.c
@@ -650,7 +650,6 @@ _edje_recalc_do(Edje *ed)
need_calc = evas_object_smart_need_recalculate_get(ed-obj);
evas_object_smart_need_recalculate_set(ed-obj, 0);
if (!ed-dirty) return;
-   ed-have_mapped_part = EINA_FALSE;
ed-dirty = EINA_FALSE;
ed-state++;
for (i = 0; i  ed-table_parts_size; i++)
@@ -3353,6 +3352,7 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int 
flags, Edje_Calc_Params *sta
 (statep1 = ep-param1.state) ||
 proxy_invalidate ||
 state ||
+(ep-map_on  ed-have_mapped_part) ||
 ((ep-part-type == EDJE_PART_TYPE_TEXT ||
   ep-part-type == EDJE_PART_TYPE_TEXTBLOCK) 
  ed-text_part_change))
@@ -3421,6 +3421,7 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int 
flags, Edje_Calc_Params *sta
 (statep2 = ep-param2-state) ||
 proxy_invalidate ||
 state ||
+(ep-map_on  ed-have_mapped_part) ||
 ((ep-part-type == EDJE_PART_TYPE_TEXT ||
   ep-part-type == EDJE_PART_TYPE_TEXTBLOCK) 
  ed-text_part_change))
@@ -3894,6 +3895,7 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int 
flags, Edje_Calc_Params *sta
  static Evas_Map *map = NULL;
 
  ed-have_mapped_part = EINA_TRUE;
+ ep-map_on = EINA_TRUE;
  // create map and populate with part geometry
  if (!map) map = evas_map_new(4);
 
@@ -3915,6 +3917,8 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int 
flags, Edje_Calc_Params *sta
   }
 else
   {
+ ep-map_on = EINA_FALSE;
+
  if (ep-nested_smart)
{  /* Cancel map of smart obj holding nested parts */
   eo_do(ep-nested_smart,
diff --git a/src/lib/edje/edje_private.h b/src/lib/edje/edje_private.h
index b6e0db9..bfcc9b7 100644
--- a/src/lib/edje/edje_private.h
+++ b/src/lib/edje/edje_private.h
@@ -1594,6 +1594,7 @@ struct _Edje_Real_Part
 #ifdef EDJE_CALC_CACHE
Eina_Bool invalidate : 1; // 0
 #endif
+   Eina_Bool map_on : 1; // 0
 }; // 128
 // WITH EDJE_CALC_CACHE: 407
 
diff --git a/src/lib/edje/edje_smart.c b/src/lib/edje/edje_smart.c
index d4c095e..7fb79a8 100644
--- a/src/lib/edje/edje_smart.c
+++ b/src/lib/edje/edje_smart.c
@@ -151,6 +151,7 @@ _edje_smart_move(Eo *obj EINA_UNUSED, void *_pd, va_list 
*list)
Evas_Coord x = va_arg(*list, Evas_Coord);
Evas_Coord y = va_arg(*list, Evas_Coord);
Edje *ed = _pd;
+   unsigned int i;
 
if ((ed-x == x)  (ed-y == y)) return;
ed-x = x;
@@ -168,43 +169,41 @@ _edje_smart_move(Eo *obj EINA_UNUSED, void *_pd, va_list 
*list)
 return;
  }
 
-   if (ed-have_mapped_part)
+   for (i = 0; i  ed-table_parts_size; i++)
  {
-ed-dirty = EINA_TRUE;
-_edje_recalc_do(ed);
- }
-   else
- {
-unsigned int i;
+Edje_Real_Part *ep;
 
-for (i = 0; i  ed-table_parts_size; i++)
+ep = ed-table_parts[i];
+if ((ep-type == EDJE_RP_TYPE_TEXT)  (ep-typedata.text))
   {
- Edje_Real_Part *ep;
-
- ep = ed-table_parts[i];
- if ((ep-type == EDJE_RP_TYPE_TEXT)  (ep-typedata.text))
-   {
-  evas_object_move(ep-object,
-   ed-x + ep-x + ep-typedata.text-offset.x,
-   

[EGIT] [core/efl] master 01/01: edje - actually we don't need extra variable.

2013-11-20 Thread ChunEon Park
hermet pushed a commit to branch master.

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

commit eea338764abcf38c8be404be7e3c540cfedc002b
Author: ChunEon Park her...@hermet.pe.kr
Date:   Thu Nov 21 13:50:19 2013 +0900

edje - actually we don't need extra variable.
---
 src/lib/edje/edje_calc.c| 7 ++-
 src/lib/edje/edje_private.h | 1 -
 2 files changed, 2 insertions(+), 6 deletions(-)

diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c
index 6f98455..038882d 100644
--- a/src/lib/edje/edje_calc.c
+++ b/src/lib/edje/edje_calc.c
@@ -3352,7 +3352,7 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int 
flags, Edje_Calc_Params *sta
 (statep1 = ep-param1.state) ||
 proxy_invalidate ||
 state ||
-(ep-map_on  ed-have_mapped_part) ||
+(ed-have_mapped_part  chosen_desc-map.on) ||
 ((ep-part-type == EDJE_PART_TYPE_TEXT ||
   ep-part-type == EDJE_PART_TYPE_TEXTBLOCK) 
  ed-text_part_change))
@@ -3421,7 +3421,7 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int 
flags, Edje_Calc_Params *sta
 (statep2 = ep-param2-state) ||
 proxy_invalidate ||
 state ||
-(ep-map_on  ed-have_mapped_part) ||
+(ed-have_mapped_part  chosen_desc-map.on) ||
 ((ep-part-type == EDJE_PART_TYPE_TEXT ||
   ep-part-type == EDJE_PART_TYPE_TEXTBLOCK) 
  ed-text_part_change))
@@ -3895,7 +3895,6 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int 
flags, Edje_Calc_Params *sta
  static Evas_Map *map = NULL;
 
  ed-have_mapped_part = EINA_TRUE;
- ep-map_on = EINA_TRUE;
  // create map and populate with part geometry
  if (!map) map = evas_map_new(4);
 
@@ -3917,8 +3916,6 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int 
flags, Edje_Calc_Params *sta
   }
 else
   {
- ep-map_on = EINA_FALSE;
-
  if (ep-nested_smart)
{  /* Cancel map of smart obj holding nested parts */
   eo_do(ep-nested_smart,
diff --git a/src/lib/edje/edje_private.h b/src/lib/edje/edje_private.h
index bfcc9b7..b6e0db9 100644
--- a/src/lib/edje/edje_private.h
+++ b/src/lib/edje/edje_private.h
@@ -1594,7 +1594,6 @@ struct _Edje_Real_Part
 #ifdef EDJE_CALC_CACHE
Eina_Bool invalidate : 1; // 0
 #endif
-   Eina_Bool map_on : 1; // 0
 }; // 128
 // WITH EDJE_CALC_CACHE: 407
 

-- 




[EGIT] [core/elementary] master 01/01: elm_diskselector.c: reduce item_count number on _item_del. or reducing item_count could be skipped in some cases like elm_index_clear.

2013-11-20 Thread Daniel Juyung Seo
seoz pushed a commit to branch master.

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

commit 342b108641d495ae43f4313feab3a59f170269ed
Author: Daniel Juyung Seo juyung@samsung.com
Date:   Thu Nov 21 14:26:39 2013 +0900

elm_diskselector.c: reduce item_count number on _item_del. or reducing 
item_count could be skipped in some cases like elm_index_clear.

This fixes T508.
---
 src/lib/elm_diskselector.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/lib/elm_diskselector.c b/src/lib/elm_diskselector.c
index 6135dd8..be5eb44 100644
--- a/src/lib/elm_diskselector.c
+++ b/src/lib/elm_diskselector.c
@@ -327,6 +327,8 @@ _item_del(Elm_Diskselector_Item *item)
 {
if (!item) return;
 
+   ELM_DISKSELECTOR_DATA_GET(WIDGET(item), sd);
+   sd-item_count -= 1;
eina_stringshare_del(item-label);
 
if (item-icon)
@@ -371,7 +373,6 @@ _item_del_pre_hook(Elm_Object_Item *item)
  }
 
_item_del(it);
-   sd-item_count -= 1;
 
if (sd-round)
  {

-- 




[EGIT] [core/efl] master 01/02: eina: fix the crash seen by some during rebuild.

2013-11-20 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit 62b469749a4b79351b9bc52d40b9249ee48086bf
Author: Cedric Bail cedric.b...@samsung.com
Date:   Thu Nov 21 14:46:59 2013 +0900

eina: fix the crash seen by some during rebuild.

Before this patch, we were unconditionnaly destroying the Eina_File if that 
one
did change on disk. We also make sure that we remove the right entry from 
the cache
if the file did change there.
---
 src/lib/eina/eina_file.c|  1 -
 src/lib/eina/eina_file_common.c | 11 ++-
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/lib/eina/eina_file.c b/src/lib/eina/eina_file.c
index 1ae3681..ca2fe61 100644
--- a/src/lib/eina/eina_file.c
+++ b/src/lib/eina/eina_file.c
@@ -868,7 +868,6 @@ eina_file_open(const char *path, Eina_Bool shared)
  {
 file-delete_me = EINA_TRUE;
 eina_hash_del(_eina_file_cache, file-filename, file);
-   eina_file_clean_close(file);
 file = NULL;
  }
 
diff --git a/src/lib/eina/eina_file_common.c b/src/lib/eina/eina_file_common.c
index 7952190..f6ae3be 100644
--- a/src/lib/eina/eina_file_common.c
+++ b/src/lib/eina/eina_file_common.c
@@ -463,6 +463,8 @@ EAPI void
 eina_file_close(Eina_File *file)
 {
Eina_Bool leave = EINA_TRUE;
+   unsigned int length;
+   unsigned int key;
 
EINA_SAFETY_ON_NULL_RETURN(file);
 
@@ -474,7 +476,14 @@ eina_file_close(Eina_File *file)
eina_lock_release(file-lock);
if (leave) goto end;
 
-   eina_hash_del(_eina_file_cache, file-filename, file);
+   length = strlen(file-filename) + 1;
+   key = eina_hash_djb2(file-filename, length);
+   if (eina_hash_find_by_hash(_eina_file_cache,
+  file-filename, length, key) == file)
+ {
+eina_hash_del_by_key_hash(_eina_file_cache,
+  file-filename, length, key);
+ }
 
eina_file_clean_close(file);
  end:

-- 




[EGIT] [core/efl] master 02/02: evas: actually include the header.

2013-11-20 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit c9f6889bf6696b078c23a5f570734b9f2bbe1bec
Author: Cedric Bail cedric.b...@samsung.com
Date:   Thu Nov 21 14:48:50 2013 +0900

evas: actually include the header.
---
 src/lib/evas/canvas/evas_main.c | 4 
 1 file changed, 4 insertions(+)

diff --git a/src/lib/evas/canvas/evas_main.c b/src/lib/evas/canvas/evas_main.c
index 6cc8f8e..a932c2b 100644
--- a/src/lib/evas/canvas/evas_main.c
+++ b/src/lib/evas/canvas/evas_main.c
@@ -7,6 +7,10 @@
 
 #include Eo.h
 
+#ifdef BUILD_LOADER_EET
+# include Eet.h
+#endif
+
 EAPI Eo_Op EVAS_CANVAS_BASE_ID = EO_NOOP;
 
 #define MY_CLASS EVAS_CLASS

-- 




[EGIT] [legacy/eina] eina-1.7 01/01: eina: backport fix for race condition in Eina_File infrastructure.

2013-11-20 Thread Cedric Bail
cedric pushed a commit to branch eina-1.7.

http://git.enlightenment.org/legacy/eina.git/commit/?id=ba420c60474c23bfc0d59b07f9e4d0710ebcfa86

commit ba420c60474c23bfc0d59b07f9e4d0710ebcfa86
Author: Cedric Bail cedric.b...@samsung.com
Date:   Thu Nov 21 14:58:32 2013 +0900

eina: backport fix for race condition in Eina_File infrastructure.
---
 ChangeLog   |  5 +
 NEWS|  9 +
 src/lib/eina_file.c | 14 +-
 3 files changed, 23 insertions(+), 5 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 8970c02..bfefe9f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -434,3 +434,8 @@
 2013-09-10  Eduardo Lima (Etrunko)
 
 * 1.7.9 release
+
+2013-11-21  Cedric Bail
+
+   * Fix race condition when calling eina_file_open/eina_file_close.
+
diff --git a/NEWS b/NEWS
index 9aad8db..fb8dc75 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,12 @@
+Eina 1.7.10
+
+Changes since Eina 1.7.9:
+-
+
+Fixes:
+* Fix race condition when calling eina_file_open/eina_file_close.
+
+
 Eina 1.7.9
 
 Changes since Eina 1.7.8:
diff --git a/src/lib/eina_file.c b/src/lib/eina_file.c
index 68a6cce..7fe6bb0 100644
--- a/src/lib/eina_file.c
+++ b/src/lib/eina_file.c
@@ -988,7 +988,6 @@ eina_file_open(const char *path, Eina_Bool shared)
  {
 file-delete_me = EINA_TRUE;
 eina_hash_del(_eina_file_cache, file-filename, file);
-_eina_file_real_close(file);
 file = NULL;
  }
 
@@ -1050,18 +1049,23 @@ eina_file_open(const char *path, Eina_Bool shared)
 EAPI void
 eina_file_close(Eina_File *file)
 {
+   Eina_Bool leave = EINA_TRUE;
+
EINA_SAFETY_ON_NULL_RETURN(file);
 
+   eina_lock_take(_eina_file_lock_cache);
+
eina_lock_take(file-lock);
file-refcount--;
+   if (file-refcount == 0) leave = EINA_FALSE;
eina_lock_release(file-lock);
+   if (leave) goto end;
 
-   if (file-refcount != 0) return;
-   eina_lock_take(_eina_file_lock_cache);
-
-   eina_hash_del(_eina_file_cache, file-filename, file);
+   if (eina_hash_find(_eina_file_cache, file-filename) == file)
+ eina_hash_del(_eina_file_cache, file-filename, file);
_eina_file_real_close(file);
 
+ end:
eina_lock_release(_eina_file_lock_cache);
 }
 

-- 




[EGIT] [core/efl] master 01/01: evas: header order are important.

2013-11-20 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit c113bdcfcf30cab109fb30d685b60afb06e90033
Author: Cedric Bail cedric.b...@samsung.com
Date:   Thu Nov 21 15:18:42 2013 +0900

evas: header order are important.

First system, then EFL public, then EFL internal. If not, you break windows
build.
---
 src/lib/evas/canvas/evas_main.c | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/lib/evas/canvas/evas_main.c b/src/lib/evas/canvas/evas_main.c
index a932c2b..672c85b 100644
--- a/src/lib/evas/canvas/evas_main.c
+++ b/src/lib/evas/canvas/evas_main.c
@@ -1,3 +1,9 @@
+#include Eo.h
+
+#ifdef BUILD_LOADER_EET
+# include Eet.h
+#endif
+
 #include evas_common_private.h
 #include evas_private.h
 //#include evas_cs.h
@@ -5,12 +11,6 @@
 #include evas_cs2_private.h
 #endif
 
-#include Eo.h
-
-#ifdef BUILD_LOADER_EET
-# include Eet.h
-#endif
-
 EAPI Eo_Op EVAS_CANVAS_BASE_ID = EO_NOOP;
 
 #define MY_CLASS EVAS_CLASS

-- 




[EGIT] [core/efl] master 01/01: evas: sorry for the last broken commit.

2013-11-20 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit e11df0e08584978378be92c08ebc24970931a0a0
Author: Cedric Bail cedric.b...@samsung.com
Date:   Thu Nov 21 15:33:21 2013 +0900

evas: sorry for the last broken commit.
---
 src/lib/evas/canvas/evas_main.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/lib/evas/canvas/evas_main.c b/src/lib/evas/canvas/evas_main.c
index 672c85b..7ad2ae4 100644
--- a/src/lib/evas/canvas/evas_main.c
+++ b/src/lib/evas/canvas/evas_main.c
@@ -1,10 +1,11 @@
+#include evas_common_private.h
+
 #include Eo.h
 
 #ifdef BUILD_LOADER_EET
 # include Eet.h
 #endif
 
-#include evas_common_private.h
 #include evas_private.h
 //#include evas_cs.h
 #ifdef EVAS_CSERVE2

-- 




[EGIT] [core/efl] master 01/01: evas: fixing headers order for windows build is insane.

2013-11-20 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit 3b42ecbe1ece19fd30aca3e54c3d58ad659c50ab
Author: Cedric Bail cedric.b...@samsung.com
Date:   Thu Nov 21 16:08:55 2013 +0900

evas: fixing headers order for windows build is insane.
---
 src/lib/evas/canvas/evas_main.c| 7 ---
 src/lib/evas/include/evas_common_private.h | 5 +
 2 files changed, 5 insertions(+), 7 deletions(-)

diff --git a/src/lib/evas/canvas/evas_main.c b/src/lib/evas/canvas/evas_main.c
index 7ad2ae4..60c23af 100644
--- a/src/lib/evas/canvas/evas_main.c
+++ b/src/lib/evas/canvas/evas_main.c
@@ -1,11 +1,4 @@
 #include evas_common_private.h
-
-#include Eo.h
-
-#ifdef BUILD_LOADER_EET
-# include Eet.h
-#endif
-
 #include evas_private.h
 //#include evas_cs.h
 #ifdef EVAS_CSERVE2
diff --git a/src/lib/evas/include/evas_common_private.h 
b/src/lib/evas/include/evas_common_private.h
index 90272d3..16b7b40 100644
--- a/src/lib/evas/include/evas_common_private.h
+++ b/src/lib/evas/include/evas_common_private.h
@@ -48,6 +48,11 @@
 #endif
 
 #include Eina.h
+#include Eo.h
+
+#ifdef BUILD_LOADER_EET
+# include Eet.h
+#endif
 #include Evas.h
 //#include Evas_GL.h
 

-- 




Re: [E-devel] Which constraint solver is used in EFL?

2013-11-20 Thread The Rasterman
On Wed, 20 Nov 2013 22:07:36 + Thomas Strobel ts...@cam.ac.uk said:

 On Wed, 2013-11-20 at 11:51 +1000, David Seikel wrote:
  On Wed, 20 Nov 2013 09:15:01 +0900 Carsten Haitzler (The Rasterman)
  ras...@rasterman.com wrote:
  
   On Tue, 19 Nov 2013 15:20:01 + Thomas Strobel ts...@cam.ac.uk
   said:
   
Hi all,

I was wondering which constraint solver is being used in EFL for
placing evas objects relatively to each other? Especially for edje,
can anyone point me to a research paper or similar which describes
the algorithm being used?
   
   nope. can't. it's just math man. math. there is no constraint
   solver at all. it's just calculate your coords - if you are relative
   TO something else... your coords depend on its coords - so go
   calculate what you depend on first... and repeat (recurse). it's just
   inside edje. simple basic logic+math
 
 Well, I guessed it was related to math. ;)
 
  
  Or to put it another way, there are no constraints, it's not that sort
  of system.  Things are placed relative to other things, at a fixed
  fraction of the size of the thing it is relative to.
 
 Thank you very much for clarifying how it works. I just didn't want to
 work through the source immediately, searching for a constraint solver's
 implementation like Cassowary.

you won't find one. :) you will find edje_calc.c :) it's in there. it's just a
dependency tree. technically its not a strict tree. it can be a graph. and
then x and y dimensions can be separate graphs. sometimes x depends on y (or y
depends on x) when aspect ratio hints and/or textblock stuff is there. then you
get crossover. the code leaves breadcrumbs as it recurses down the graph to
detect cycles and aborts the recursing if it detects a cycle (an infinite loop)
at runtime. it's just purpose built for edje. in fact.. edc is nothing more
that providing the input parameters to this calc func. edc is really raw input
to this code. edc was never designed as an abstract description itself. it's
pretty raw nuts and bolts.

  
  On the other hand, there is also ephysics, which can be used to make
  graphics objects react to other objects in a 2D plane using the bullet
  physics library.  You can ask the bullet library authors about their
  algorithms.
  
  --
  Shape the Mobile Experience: Free Subscription
  Software experts and developers: Be at the forefront of tech innovation.
  Intel(R) Software Adrenaline delivers strategic insight and game-changing 
  conversations that shape the rapidly evolving mobile landscape. Sign up
  now.
  http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
  ___ enlightenment-devel mailing
  list enlightenment-devel@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
 
 
 
 --
 Shape the Mobile Experience: Free Subscription
 Software experts and developers: Be at the forefront of tech innovation.
 Intel(R) Software Adrenaline delivers strategic insight and game-changing 
 conversations that shape the rapidly evolving mobile landscape. Sign up now. 
 http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
 ___
 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


--
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/enlightenment] master 01/01: e: fix generation of the wallpapper from a picture.

2013-11-20 Thread Cedric BAIL
cedric pushed a commit to branch master.

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

commit 46ee3c3226e69dad43998574c63eccf7e1fe3f59
Author: Cedric Bail cedric.b...@samsung.com
Date:   Thu Nov 21 16:51:28 2013 +0900

e: fix generation of the wallpapper from a picture.

NOTE; eina_mkstemp doesn't alter it's parameter, you need to ask the
filename if you want it.
---
 src/bin/e_import_config_dialog.c | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/bin/e_import_config_dialog.c b/src/bin/e_import_config_dialog.c
index 3159685..5248f61 100644
--- a/src/bin/e_import_config_dialog.c
+++ b/src/bin/e_import_config_dialog.c
@@ -20,6 +20,7 @@ _import_edj_gen(E_Import_Config_Dialog *import)
int w = 0, h = 0;
const char *file, *locale;
char buf[PATH_MAX], cmd[PATH_MAX], tmpn[PATH_MAX], ipart[PATH_MAX], 
enc[128];
+   Eina_Tmpstr *path = NULL;
char *imgdir = NULL, *fstrip;
int cr, cg, cb, ca;
FILE *f;
@@ -51,7 +52,7 @@ _import_edj_gen(E_Import_Config_Dialog *import)
  }
 
strcpy(tmpn, e_bgdlg_new.edc-tmp-XX);
-   fd = eina_file_mkstemp(tmpn, NULL);
+   fd = eina_file_mkstemp(tmpn, path);
if (fd  0)
  {
 printf(Error Creating tmp file: %s\n, strerror(errno));
@@ -262,7 +263,7 @@ _import_edj_gen(E_Import_Config_Dialog *import)
fclose(f);
 
snprintf(cmd, sizeof(cmd), %s/edje_cc -v %s %s %s, e_prefix_bin_get(),
-ipart, tmpn, e_util_filename_escape(buf));
+ipart, path, e_util_filename_escape(buf));
 
import-tmpf = strdup(tmpn);
import-fdest = eina_stringshare_add(buf);
@@ -270,6 +271,8 @@ _import_edj_gen(E_Import_Config_Dialog *import)
  ecore_event_handler_add(ECORE_EXE_EVENT_DEL,
  _import_cb_edje_cc_exit, import);
import-exe = ecore_exe_run(cmd, import);
+
+   eina_tmpstr_del(path);
 }
 
 static Eina_Bool

--