[EGIT] [core/efl] master 01/03: evas/cserve2: Fix new Coverity issues

2013-10-29 Thread Jean-Philippe Andre
jpeg pushed a commit to branch master.

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

commit 10f80df01825066987452b11a9ec78540c64
Author: Jean-Philippe Andre jp.an...@samsung.com
Date:   Tue Oct 29 13:54:15 2013 +0900

evas/cserve2: Fix new Coverity issues

Nothing extraordinary here.
Most potential crashes are extremely unlikely.

- Fix CID 1113444

- Fix CID 1113442

- Fix CID 1113441 (Logically dead code, can not be NULL)

- Fix CID 1113440: Explicit null dereferenced

This is actually an impossible situation.
Fixed by checking for nullity and printing out some error
messages instead of just crashing.

- Fix CID 1113439: Dereference after null check

Logically impossible code as both idxpath and datapath
must be either set or null at the same time.
Change the if logic to tell Coverity there's no bug.

- Fix CID 1113438 (Argument cannot be negative)

Fix wrong check of return value from shm_open.

- Fix CID 1113437 (Argument cannot be negative)

Fix wrong check of return value from shm_open.

- Fix CID 1113436 (Dereference null return value)

This case really shouldn't happen.
But the extra check does not hurt.

- Fix CID 1113435 (Dereference before null check)

Check for nullity after map open.

- Fix CID 1113434 (Extra sizeof expression)

Debug buggy debug tool :)

- Fix CID 1113433 (Uninitialized scalar variable)

Insignificant issue: only prints wrong debug logs :)

- Fix CID 1113431 (Uninitialized scalar value)

Check if (!found) only to print out logs. Not a big deal
if found was invalid.

- Fix CID 1039462 (Logically dead code)
---
 src/bin/evas/dummy_slave.c |  2 +-
 src/bin/evas/evas_cserve2_cache.c  | 10 ++
 src/bin/evas/evas_cserve2_index.c  |  2 --
 src/bin/evas/evas_cserve2_shm.c|  4 ++--
 src/bin/evas/evas_cserve2_shm_debug.c  |  4 ++--
 src/lib/evas/cache2/evas_cache2.c  |  2 +-
 src/lib/evas/cserve2/evas_cs2_client.c | 19 ++-
 7 files changed, 26 insertions(+), 17 deletions(-)

diff --git a/src/bin/evas/dummy_slave.c b/src/bin/evas/dummy_slave.c
index a64ec53..9b56380 100644
--- a/src/bin/evas/dummy_slave.c
+++ b/src/bin/evas/dummy_slave.c
@@ -170,7 +170,7 @@ int main(int c, char **v)
Error_Type err;
const char *file, *key;
p = params;
-   file = (const char *)(p + sizeof(*p));
+   file = (const char *)(p + 1);
key = file + strlen(file) + 1;
if ((err = image_open(file, key, result)) != CSERVE2_NONE)
  error_send(wfd, err);
diff --git a/src/bin/evas/evas_cserve2_cache.c 
b/src/bin/evas/evas_cserve2_cache.c
index 9f92543..4c20a72 100644
--- a/src/bin/evas/evas_cserve2_cache.c
+++ b/src/bin/evas/evas_cserve2_cache.c
@@ -1588,8 +1588,8 @@ _image_entry_new(Client *client, int rid,
ref = eina_hash_find(client-files.referencing, client_file_id);
if (!ref)
  {
-ERR(Couldn't find file id: %d, for image id: %d,
-client_file_id, image_id);
+ERR(Couldn't find file id for client image id: %d,
+client_file_id);
 cserve2_client_error_send(client, rid,
   CSERVE2_INVALID_CACHE);
 return NULL;
@@ -2373,7 +2373,7 @@ _font_entry_debug_size_cb(const Eina_Hash *hash 
EINA_UNUSED,
// name
if (fe-src-name)
  {
-str = cserve2_shared_string_get(fe-src-file);
+str = cserve2_shared_string_get(fe-src-name);
 di-size+= strlen(str) + 1;
  }
 
@@ -2769,8 +2769,10 @@ try_again:
0, unscaled, buf, sizeof(buf));
  if (!orig_entry) return -1;
 
- image_id = orig_entry-base.id;
  orig_data = _image_data_find(ENTRYID(orig_entry));
+ if (!orig_data) return -1;
+
+ image_id = ENTRYID(orig_entry);
  orig_data-unused = EINA_TRUE;
  fentry = _file_entry_find(orig_data-file_id);
  fentry-images = eina_list_append(fentry-images, orig_entry);
diff --git a/src/bin/evas/evas_cserve2_index.c 
b/src/bin/evas/evas_cserve2_index.c
index e6b13ce..f0d6f71 100644
--- a/src/bin/evas/evas_cserve2_index.c
+++ b/src/bin/evas/evas_cserve2_index.c
@@ -581,8 +581,6 @@ _shared_index_entry_get_by_id(Shared_Index *si, unsigned 
int id)
for (cur = start_high; cur  si-sa-header-count; cur++)
  {
 obj = (Index_Entry *) (base + (elemsize * cur));
-if (!obj)
-  return NULL;
 if (!obj-id)
   return NULL;
 if (obj-id == id)
diff --git a/src/bin/evas/evas_cserve2_shm.c b/src/bin/evas/evas_cserve2_shm.c
index d95afc7..6ccfbcd 100644
--- 

[EGIT] [core/efl] master 02/03: evas/cserve2: Fix CID 1039286 (Resource leak)

2013-10-29 Thread Jean-Philippe Andre
jpeg pushed a commit to branch master.

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

commit 44f89bb8ade404604867fd270d53a3952ba513df
Author: Jean-Philippe Andre jp.an...@samsung.com
Date:   Tue Oct 29 15:03:14 2013 +0900

evas/cserve2: Fix CID 1039286 (Resource leak)

Close socket in case of connection failure.
---
 src/lib/evas/cserve2/evas_cs2_client.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/lib/evas/cserve2/evas_cs2_client.c 
b/src/lib/evas/cserve2/evas_cs2_client.c
index 5410b0b..0d5fe2c 100644
--- a/src/lib/evas/cserve2/evas_cs2_client.c
+++ b/src/lib/evas/cserve2/evas_cs2_client.c
@@ -187,6 +187,7 @@ _server_connect(void)
 if (errno == EACCES)
   {
  ERR(not authorized to connect to cserve2!);
+ close(s);
  return EINA_FALSE;
   }
 ERR(cserve2 connect failed: [%d] %s. Retrying..., errno, 
strerror(errno));
@@ -196,6 +197,7 @@ _server_connect(void)
 if (errno == EINTR)
   {
  WRN(received interruption while trying to connect to cserve2!);
+ close(s);
  return EINA_FALSE;
   }
 

-- 




[EGIT] [core/efl] master 03/03: evas/cserve2: Fix error path in evas_cache2_image_writable()

2013-10-29 Thread Jean-Philippe Andre
jpeg pushed a commit to branch master.

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

commit aa6d4a3756b8f173d091ccf9f5751b910d6a6b62
Author: Jean-Philippe Andre jp.an...@samsung.com
Date:   Tue Oct 29 15:12:58 2013 +0900

evas/cserve2: Fix error path in evas_cache2_image_writable()

Return NULL and check for nullity in the only calling function.

Fixes CID 1039461 (Logically dead code)
---
 src/lib/evas/cache2/evas_cache2.c   | 10 --
 src/modules/evas/engines/software_generic/evas_engine.c |  9 -
 2 files changed, 12 insertions(+), 7 deletions(-)

diff --git a/src/lib/evas/cache2/evas_cache2.c 
b/src/lib/evas/cache2/evas_cache2.c
index 35cceb6..d4b2b53 100644
--- a/src/lib/evas/cache2/evas_cache2.c
+++ b/src/lib/evas/cache2/evas_cache2.c
@@ -1089,15 +1089,13 @@ evas_cache2_image_writable(Image_Entry *im)
 evas_cache2_image_pixels(im),
 im-flags.alpha, im-space);
if (!im2)
- goto on_error;
+ {
+ERR(Could not create a copy of this image (%dx%d), im-w, im-h);
+return NULL;
+ }
 
evas_cache2_image_close(im);
return im2;
-
-on_error:
-   if (im2)
- _evas_cache2_image_entry_delete(cache, im2);
-   return NULL;
 }
 
 EAPI Image_Entry *
diff --git a/src/modules/evas/engines/software_generic/evas_engine.c 
b/src/modules/evas/engines/software_generic/evas_engine.c
index 57766ef..b3ab2ce 100644
--- a/src/modules/evas/engines/software_generic/evas_engine.c
+++ b/src/modules/evas/engines/software_generic/evas_engine.c
@@ -1087,7 +1087,14 @@ eng_image_data_get(void *data EINA_UNUSED, void *image, 
int to_write, DATA32 **i
 if (err) *err = error;
 
 if (to_write)
-  im = (RGBA_Image *)evas_cache2_image_writable(im-cache_entry);
+  {
+ im = (RGBA_Image *)evas_cache2_image_writable(im-cache_entry);
+ if (!im)
+   {
+  *image_data = NULL;
+  return NULL;
+   }
+  }
  }
else
 #endif

-- 




[EGIT] [core/efl] master 01/02: Don't send mouse_up or mouse_down events unless we have a focused surface

2013-10-29 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit d1d0090706274025e9be85e15eb7da7537252641
Author: Chris Michael cp.mich...@samsung.com
Date:   Tue Oct 29 08:01:41 2013 +

Don't send mouse_up or mouse_down events unless we have a focused
surface

Signed-off-by: Chris Michael cp.mich...@samsung.com
---
 src/lib/ecore_wayland/ecore_wl_input.c | 11 +++
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/src/lib/ecore_wayland/ecore_wl_input.c 
b/src/lib/ecore_wayland/ecore_wl_input.c
index e458d71..2cdc1ec 100644
--- a/src/lib/ecore_wayland/ecore_wl_input.c
+++ b/src/lib/ecore_wayland/ecore_wl_input.c
@@ -469,13 +469,16 @@ _ecore_wl_input_cb_pointer_button(void *data, struct 
wl_pointer *pointer EINA_UN
 if ((input-pointer_focus)  (!input-grab)  (state))
   ecore_wl_input_grab(input, input-pointer_focus, button);
 
-_ecore_wl_input_mouse_down_send(input, input-pointer_focus,
-0, button, timestamp);
+if (input-pointer_focus)
+  _ecore_wl_input_mouse_down_send(input, input-pointer_focus,
+  0, button, timestamp);
  }
else
  {
-_ecore_wl_input_mouse_up_send(input, input-pointer_focus,
-  0, button, timestamp);
+if (input-pointer_focus)
+  _ecore_wl_input_mouse_up_send(input, input-pointer_focus,
+0, button, timestamp);
+
 if ((input-grab)  (input-grab_button == button)  (!state))
   ecore_wl_input_ungrab(input);
  }

-- 




[EGIT] [core/efl] master 02/02: If mouse is already inside the ecore_evas, then we don't need to call the mouse_in function of the ecore_evas.

2013-10-29 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 49dfea556657baed6cfbd8bc4c8389b79c3858aa
Author: Chris Michael cp.mich...@samsung.com
Date:   Tue Oct 29 08:04:05 2013 +

If mouse is already inside the ecore_evas, then we don't need to call
the mouse_in function of the ecore_evas.

Signed-off-by: Chris Michael cp.mich...@samsung.com
---
 src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c | 7 +++
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c 
b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
index 15bb93c..45832f0 100644
--- a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
+++ b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
@@ -101,11 +101,9 @@ _ecore_evas_wl_common_cb_mouse_in(void *data EINA_UNUSED, 
int type EINA_UNUSED,
ee = ecore_event_window_match(ev-window);
if ((!ee) || (ee-ignore_events)) return ECORE_CALLBACK_PASS_ON;
if (ev-window != ee-prop.window) return ECORE_CALLBACK_PASS_ON;
-   if (ee-func.fn_mouse_in) ee-func.fn_mouse_in(ee);
-
-   if (ee-in)
- return ECORE_CALLBACK_PASS_ON;
+   if (ee-in) return ECORE_CALLBACK_PASS_ON;
 
+   if (ee-func.fn_mouse_in) ee-func.fn_mouse_in(ee);
ecore_event_evas_modifier_lock_update(ee-evas, ev-modifiers);
evas_event_feed_mouse_in(ee-evas, ev-timestamp, NULL);
_ecore_evas_mouse_move_process(ee, ev-x, ev-y, ev-timestamp);
@@ -125,6 +123,7 @@ _ecore_evas_wl_common_cb_mouse_out(void *data EINA_UNUSED, 
int type EINA_UNUSED,
ee = ecore_event_window_match(ev-window);
if ((!ee) || (ee-ignore_events)) return ECORE_CALLBACK_PASS_ON;
if (ev-window != ee-prop.window) return ECORE_CALLBACK_PASS_ON;
+
if (ee-in)
  {
 ecore_event_evas_modifier_lock_update(ee-evas, ev-modifiers);

-- 




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

2013-10-29 Thread Stefan Schmidt
Hello.

On 10/28/2013 06:29 PM, Bertrand Jacquin wrote:
 Hi in there,

 Not that next report may give different results as the 1th november,
 main gcc release will be switch for gcc 4.8.1.

Ah, right. Thanks for the reminder.

I'm running one machine with 4.8.1 here so I don't expect to many 
problems. Just more warnings maybe.

regards
Stefan Schmidt

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/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: On a focus_in event, if the ecore_evas already has focus, don't resend a focus in. Similar change for focus_out also.

2013-10-29 Thread Chris Michael
devilhorns pushed a commit to branch master.

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

commit 40a2dfc8701ff78de73669d059e87535fb39795e
Author: Chris Michael cp.mich...@samsung.com
Date:   Tue Oct 29 08:41:48 2013 +

On a focus_in event, if the ecore_evas already has focus, don't resend
a focus in. Similar change for focus_out also.

Signed-off-by: Chris Michael cp.mich...@samsung.com
---
 src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c 
b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
index 45832f0..5373c62 100644
--- a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
+++ b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
@@ -106,7 +106,6 @@ _ecore_evas_wl_common_cb_mouse_in(void *data EINA_UNUSED, 
int type EINA_UNUSED,
if (ee-func.fn_mouse_in) ee-func.fn_mouse_in(ee);
ecore_event_evas_modifier_lock_update(ee-evas, ev-modifiers);
evas_event_feed_mouse_in(ee-evas, ev-timestamp, NULL);
-   _ecore_evas_mouse_move_process(ee, ev-x, ev-y, ev-timestamp);
ee-in = EINA_TRUE;
return ECORE_CALLBACK_PASS_ON;
 }
@@ -147,6 +146,7 @@ _ecore_evas_wl_common_cb_focus_in(void *data EINA_UNUSED, 
int type EINA_UNUSED,
ee = ecore_event_window_match(ev-win);
if ((!ee) || (ee-ignore_events)) return ECORE_CALLBACK_PASS_ON;
if (ev-win != ee-prop.window) return ECORE_CALLBACK_PASS_ON;
+   if (ee-prop.focused) return ECORE_CALLBACK_PASS_ON;
ee-prop.focused = 1;
evas_focus_in(ee-evas);
if (ee-func.fn_focus_in) ee-func.fn_focus_in(ee);
@@ -165,6 +165,7 @@ _ecore_evas_wl_common_cb_focus_out(void *data EINA_UNUSED, 
int type EINA_UNUSED,
ee = ecore_event_window_match(ev-win);
if ((!ee) || (ee-ignore_events)) return ECORE_CALLBACK_PASS_ON;
if (ev-win != ee-prop.window) return ECORE_CALLBACK_PASS_ON;
+   if (!ee-prop.focused) return ECORE_CALLBACK_PASS_ON;
evas_focus_out(ee-evas);
ee-prop.focused = 0;
if (ee-func.fn_focus_out) ee-func.fn_focus_out(ee);

-- 




Re: [E-devel] [EGIT] [core/efl] master 03/03: async render - alpha set. if not visible dont WAIT. do it now.

2013-10-29 Thread The Rasterman
On Mon, 28 Oct 2013 17:13:08 -0200 Ulisses Furquim uliss...@gmail.com said:

 Hi Raster,
 
 On Mon, Oct 28, 2013 at 12:47 AM, Carsten Haitzler ras...@rasterman.com
 wrote:
  On Fri, 18 Oct 2013 15:19:00 -0300 Ulisses Furquim uliss...@gmail.com
  said:
 
  Raster,
 
  On Wed, Oct 16, 2013 at 8:58 PM, Carsten Haitzler ras...@rasterman.com
  wrote:
   On Wed, 16 Oct 2013 12:26:26 -0300 Ulisses Furquim uliss...@gmail.com
   said:
  
   Raster,
  
   On Wed, Oct 16, 2013 at 12:01 PM, Carsten Haitzler
   ras...@rasterman.com wrote:
raster pushed a commit to branch master.
   
http://git.enlightenment.org/core/efl.git/commit/?id=06c3c0cd0c0e2af7279470ab5b3fd3100e1499db
   
commit 06c3c0cd0c0e2af7279470ab5b3fd3100e1499db
Author: Carsten Haitzler (Rasterman) ras...@rasterman.com
Date:   Thu Oct 17 00:00:05 2013 +0900
   
async render - alpha set. if not visible dont WAIT. do it now.
---
 src/modules/ecore_evas/engines/x/ecore_evas_x.c | 11 ---
 1 file changed, 8 insertions(+), 3 deletions(-)
   
diff --git a/src/modules/ecore_evas/engines/x/ecore_evas_x.c
b/src/modules/ecore_evas/engines/x/ecore_evas_x.c index
627dd15..69e0709 100644
--- a/src/modules/ecore_evas/engines/x/ecore_evas_x.c
+++ b/src/modules/ecore_evas/engines/x/ecore_evas_x.c
@@ -2284,10 +2284,15 @@ _ecore_evas_x_alpha_set(Ecore_Evas *ee, int
alpha) {
 if (ee-in_async_render)
   {
- ee-delayed.alpha = alpha;
- ee-delayed.alpha_changed = EINA_TRUE;
- return;
+ if (ee-visible)
+   {
+  ee-delayed.alpha = alpha;
+  ee-delayed.alpha_changed = EINA_TRUE;
+  return;
+   }
   }
+if (ee-in_async_render)
+evas_sync(ee-evas);
  
   Why? We're syncing just to apply the alpha for those not visible? Your
   commit message is wrong because we are WAITING on this sync call
   before the _alpha_do(). Thus it's almost the same as letting the alpha
   be set the delayed way. Unless I'm missing anything we're not gaining
   anything with this patch.
  
   no sync - segv. sync - no segv. (inside evas async rendering where an
   xob is null). since changing to alpha destroys and recreates the window
   id... not surprising.
 
  Do you have a backtrace? I did some quick testing but no segv for me.
 
  i did have one... it was in the async flush code - the one where the
  mainloop inline does its putimage to the window... but the xob was NULL (i
  didn't even check more than that because i instantly had the twinge that
  h i bet the xob creation failed due to invalid window id or something
  and thus why its null.. when the code is ASSUMING window id doesnt change
  during rendering... thus simple - ensure rendering is done before we
  change window id. :)
 
 Window ID shouldn't change during rendering, that's the point of
 having delayed operations. :-) Like Gustavo said I'm interested to
 know what really was the problem because I don't think we should be
 solving everything by adding evas_sync() calls everywhere.

the window id does change. that's the core issue here. it is destroyed and
re-created as that is the only way we can switch the visual of the window :)
(given ecore-x). thus why i forced the wait for async to finish... :) also
remember any properties set on the window before are then lost and we rely on
ecore-evas to restore the ones it knows about (and has remembered to restore).

   if we delay UNCONDITIONALLY (which is what it did before the change -
   regardless of visibility) we WAIT until the window has already rendered
   something (which likely is after a show that came AFTER the set to
   alpha), and then now that we rendered and showed... we destroy and
   re-create again... when we could have happily just done it without
   delay/wait and avoided artifacts on invisible windows. :)
 
  I understood what you and Mike meant, thanks. But the way it works is
  that if we are not async rendering it'll be done with no delay and if
  we are async rendering then it'll be delayed until the old frame is
  completely rendered and no new frames will be sent to render because
  we actively drop frames! Thus I don't think that setting alpha would
  destroy any new content rendered and showed but only old ones. Does
  that make sense?
 
  the problem is we are messing with a window and its properties... and the
  code expects to mess with it there and then.. but it gets deferred until
  later .. and this leads to inconsistency issues. as best i saw a primary
  one is that UNTIL we render yet again the window stays hidden. (invisible).
  and our render was over already...
 
 Hmm.. Raster, please, we need to have this information better on
 commits messages or elsewhere. I'm trying to make sure we fix things
 the proper way but without information is really difficult to help.

Re: [E-devel] [RFC] configure options for maintainers

2013-10-29 Thread The Rasterman
On Mon, 28 Oct 2013 11:49:20 +0100 Guillaume Friloux
guillaume.fril...@asp64.com said:

 On 28/10/2013 03:49, Carsten Haitzler (The Rasterman) wrote:
  great.. but how do you EXTRACT this info then from the lib? :) it's a lib..
  it can't execute on its own... and printfing such strings on every fn call
  is just anti-social :)
 
 Its actually possible, but needs some hack.
 glibc does it :
   /lib/libc-2.18.so
 GNU C Library (GNU libc) stable release version 2.18, by Roland McGrath 
 et al.
 Copyright (C) 2013 Free Software Foundation, Inc.
 This is free software; see the source for copying conditions.
 There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
 PARTICULAR PURPOSE.
 Compiled by GNU CC version 4.8.1 20130725 (prerelease).
 Compiled on a Linux 3.10.6 system on 2013-09-24.
 Available extensions:
  crypt add-on version 2.1 by Michael Glad and others
  GNU Libidn by Simon Josefsson
  Native POSIX Threads Library by Ulrich Drepper et al
  BIND-8.2.3-T5B
 libc ABIs: UNIQUE IFUNC
 For bug reporting instructions, please see:
 https://bugs.archlinux.org/.

well well well.. i never knew that! they made it a PIE executable?

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


--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


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

2013-10-29 Thread Cedric BAIL
Hello,

On Tue, Oct 29, 2013 at 5:31 PM, Stefan Schmidt s.schm...@samsung.com wrote:
 On 10/28/2013 06:29 PM, Bertrand Jacquin wrote:
 Not that next report may give different results as the 1th november,
 main gcc release will be switch for gcc 4.8.1.

 Ah, right. Thanks for the reminder.

 I'm running one machine with 4.8.1 here so I don't expect to many
 problems. Just more warnings maybe.

Speaking of warning, I discovered this plugins for jenkins :
https://wiki.jenkins-ci.org/display/JENKINS/Valgrind+Plugin

Do you think it would be possible to roll that along our tests ?
-- 
Cedric BAIL

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


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

2013-10-29 Thread Stefan Schmidt
Hello.

On 10/29/2013 09:38 AM, Cedric BAIL wrote:
 Hello,

 On Tue, Oct 29, 2013 at 5:31 PM, Stefan Schmidt s.schm...@samsung.com
 wrote:
 On 10/28/2013 06:29 PM, Bertrand Jacquin wrote:
 Not that next report may give different results as the 1th november,
 main gcc release will be switch for gcc 4.8.1.

 Ah, right. Thanks for the reminder.

 I'm running one machine with 4.8.1 here so I don't expect to many
 problems. Just more warnings maybe.

 Speaking of warning, I discovered this plugins for jenkins :
 https://wiki.jenkins-ci.org/display/JENKINS/Valgrind+Plugin

 Do you think it would be possible to roll that along our tests ?

Anything specific you expect from it? We have address-sanitizer running 
which I always expected to be on par with Valgrinds memcheck 
functionality. Am I wrong with this? Daniel?

The graphs might be nice. I added it to my todo list and will check if 
we can have it running. Don't expect anything withing the next one or 
two weeks due to the transfer and relocation though.

regards
Stefan Schmidt

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [bindings/python/python-efl] master 01/03: Add more useful settings in their default values to setup.

2013-10-29 Thread Kai Huuhko
kuuko pushed a commit to branch master.

http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=567ba9cda290c2f023ad37d3d275fe16fa296678

commit 567ba9cda290c2f023ad37d3d275fe16fa296678
Author: Kai Huuhko kai.huu...@gmail.com
Date:   Mon Oct 28 23:40:17 2013 +0200

Add more useful settings in their default values to setup.
---
 setup.cfg | 6 ++
 setup.py  | 5 +++--
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/setup.cfg b/setup.cfg
new file mode 100644
index 000..df0260b
--- /dev/null
+++ b/setup.cfg
@@ -0,0 +1,6 @@
+[build_ext]
+# Uncomment this to disable assertions
+#define=PYREX_WITHOUT_ASSERTIONS
+
+[build_doc]
+builder=html
diff --git a/setup.py b/setup.py
index e76faa0..302af23 100755
--- a/setup.py
+++ b/setup.py
@@ -47,8 +47,9 @@ if os.path.exists(os.path.join(os.getcwd(), efl, eo, 
efl.eo.pyx)):
 import Cython.Compiler.Options
 
 assert StrictVersion(Cython.__version__) = StrictVersion(min_ver)
-Cython.Compiler.Options.fast_fail = True # stop compilation on first 
error
-Cython.Compiler.Options.annotate = False # HTML file annotation 
generation
+Cython.Compiler.Options.fast_fail = True # Stop compilation on first 
error
+Cython.Compiler.Options.annotate = False # Generates HTML files with 
annotated source
+Cython.Compiler.Options.docstrings = True # Set to False to disable 
docstrings
 
 except (ImportError, AssertionError):
 raise SystemExit(Requires Cython = %s (http://cython.org/) % 
min_ver)

-- 




[EGIT] [bindings/python/python-efl] master 03/03: Elementary: Add some TODO code comments

2013-10-29 Thread Kai Huuhko
kuuko pushed a commit to branch master.

http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=ada7a8c07ed24fce500529e9b8fe4037cc19cc79

commit ada7a8c07ed24fce500529e9b8fe4037cc19cc79
Author: Kai Huuhko kai.huu...@gmail.com
Date:   Tue Oct 29 12:36:08 2013 +0200

Elementary: Add some TODO code comments
---
 efl/elementary/multibuttonentry.pyx | 4 
 efl/elementary/object.pyx   | 7 ++-
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/efl/elementary/multibuttonentry.pyx 
b/efl/elementary/multibuttonentry.pyx
index 9d8f326..33df0c0 100644
--- a/efl/elementary/multibuttonentry.pyx
+++ b/efl/elementary/multibuttonentry.pyx
@@ -238,6 +238,10 @@ cdef class MultiButtonEntry(Object):
 def __init__(self, evasObject parent, *args, **kwargs):
 self._set_obj(elm_multibuttonentry_add(parent.obj))
 self._set_properties_from_keyword_args(kwargs)
+#
+# TODO: Add callbacks for item added and item deleted, inject
+#   the python instance into Elm_Object_Item's data
+#
 
 property entry:
 The Entry object child of the multibuttonentry.
diff --git a/efl/elementary/object.pyx b/efl/elementary/object.pyx
index 4c64b20..d171e73 100644
--- a/efl/elementary/object.pyx
+++ b/efl/elementary/object.pyx
@@ -491,7 +491,7 @@ cdef class Object(evasObject):
 children and so on) of the given object looking for a child with the
 name of *name*. If the child is found the object is returned, or
 None is returned. You can set the name of an object with
-:py:func:`name_set()`. If the name is not unique within the child
+:py:attr:`nameefl.evas.Object.name`. If the name is not unique 
within the child
 objects (or the tree is ``recurse`` is greater than 0) then it is
 undefined as to which child of that name is returned, so ensure the
 name is unique amongst children. If recurse is set to -1 it will
@@ -552,6 +552,11 @@ cdef class Object(evasObject):
 def disabled_get(self):
 return bool(elm_object_disabled_get(self.obj))
 
+#
+# TODO: Remove this? Or make it a module level function. No sense
+#   in trying to check here since we're guaranteed to be an
+#   elm object.
+#
 def widget_check(self):
 widget_check() - bool
 

-- 




[EGIT] [bindings/python/python-efl] master 02/03: Edje: Fix unit test paths and skip a couple segfaulting tests.

2013-10-29 Thread Kai Huuhko
kuuko pushed a commit to branch master.

http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=05f288ec7f5f8b98ec94f169cbea881534f31d78

commit 05f288ec7f5f8b98ec94f169cbea881534f31d78
Author: Kai Huuhko kai.huu...@gmail.com
Date:   Tue Oct 29 06:25:23 2013 +0200

Edje: Fix unit test paths and skip a couple segfaulting tests.

Decorator test fails but I'm not sure if the test is simply wrong.

Dave, can you check?
---
 tests/edje/test_01_basics.py |  3 ++-
 tests/edje/test_02_object.py |  3 ++-
 tests/edje/test_03_external.py   |  8 
 tests/edje/test_04_edit.py   | 37 -
 tests/edje/test_05_decorators.py | 10 ++
 5 files changed, 34 insertions(+), 27 deletions(-)

diff --git a/tests/edje/test_01_basics.py b/tests/edje/test_01_basics.py
index 318a35a..c639b0a 100644
--- a/tests/edje/test_01_basics.py
+++ b/tests/edje/test_01_basics.py
@@ -5,7 +5,8 @@ from efl import edje
 import os, unittest
 
 
-theme_file = os.path.join(os.path.dirname(__file__), theme.edj)
+theme_path = os.path.dirname(os.path.abspath(__file__))
+theme_file = os.path.join(theme_path, theme.edj)
 
 
 class TestBasics(unittest.TestCase):
diff --git a/tests/edje/test_02_object.py b/tests/edje/test_02_object.py
index 6cd7efc..0d354fd 100644
--- a/tests/edje/test_02_object.py
+++ b/tests/edje/test_02_object.py
@@ -6,7 +6,8 @@ from efl import edje
 import os, unittest
 
 
-theme_file = os.path.join(os.path.dirname(__file__), theme.edj)
+theme_path = os.path.dirname(os.path.abspath(__file__))
+theme_file = os.path.join(theme_path, theme.edj)
 
 
 class TestEdjeObject(unittest.TestCase):
diff --git a/tests/edje/test_03_external.py b/tests/edje/test_03_external.py
index 6b2a5c5..a5dad0f 100644
--- a/tests/edje/test_03_external.py
+++ b/tests/edje/test_03_external.py
@@ -44,8 +44,8 @@ from efl.elementary.video import Video
 from efl.elementary.web import Web
 
 
-
-theme_file = os.path.join(os.path.dirname(__file__), theme.edj)
+theme_path = os.path.dirname(os.path.abspath(__file__))
+theme_file = os.path.join(theme_path, theme.edj)
 
 
 class TestElementaryExternal(unittest.TestCase):
@@ -55,7 +55,7 @@ class TestElementaryExternal(unittest.TestCase):
   viewport=(0, 0, 400, 500))
 self.canvas.engine_info_set(self.canvas.engine_info_get())
 self.theme = edje.Edje(self.canvas, file=theme_file, group=main)
-
+
 def tearDown(self):
 self.theme.delete()
 self.canvas.delete()
@@ -370,7 +370,7 @@ class TestElementaryExternal(unittest.TestCase):
 
 if __name__ == '__main__':
 unittest.main(verbosity=2)
-
+
 elementary.shutdown()
 edje.shutdown()
 ecore.shutdown()
diff --git a/tests/edje/test_04_edit.py b/tests/edje/test_04_edit.py
index 3f73b89..7ee2543 100644
--- a/tests/edje/test_04_edit.py
+++ b/tests/edje/test_04_edit.py
@@ -9,15 +9,16 @@ from efl.edje_edit import EdjeEdit, Text_Style, 
Text_Style_Tag, Color_Class, \
 import os, unittest, shutil
 
 
-orig_theme_file = os.path.join(os.path.dirname(__file__), theme.edj)
-theme_file = os.path.join(os.path.dirname(__file__), theme_working.edj)
+theme_path = os.path.dirname(os.path.abspath(__file__))
+orig_theme_file = os.path.join(theme_path, theme.edj)
+theme_file = os.path.join(theme_path, theme_working.edj)
 
 
 class TestEdjeEditBase(unittest.TestCase):
 def setUp(self):
 # copy the edje file to a temp one as we are going to edit it
 shutil.copy(orig_theme_file, theme_file)
-
+
 self.canvas = evas.Canvas(method=buffer,
   size=(400, 500),
   viewport=(0, 0, 400, 500))
@@ -51,18 +52,18 @@ class TestEdjeEditGeneral(unittest.TestCase):
 
 def testGeneral(self):
 self.assertEqual(self.o.compiler_get(), edje_cc)
-self.assertEqual(self.o.file_get(), (theme_file, main))
-# o.print_internal_status() # FIXME this crash badly
+self.assertEqual(self.o.file_get(), (unicode(theme_file), umain))
+# self.o.print_internal_status() # FIXME this crash badly
 
 def testGroup(self):
 g = self.o.current_group
 
 self.assertEqual((g.w_min, g.w_max), (200, 400))
 self.assertEqual((g.h_min, g.h_max), (200, 400))
-
+
 g.w_min = g.h_min = 201
 g.w_max = g.h_max = 401
-
+
 self.assertEqual((g.w_min, g.w_max), (201, 401))
 self.assertEqual((g.h_min, g.h_max), (201, 401))
 
@@ -85,36 +86,36 @@ class TestEdjeEditGeneral(unittest.TestCase):
 
 self.assertEqual(self.o.data_get(key1), value1)
 self.assertEqual(self.o.data_get(key2), value2)
-
+
 self.o.data_set(key1, new_value1)
 self.o.data_set(key2, new_value2)
 self.assertEqual(self.o.data_get(key1), new_value1)
 self.assertEqual(self.o.data_get(key2), new_value2)
-
+
 self.o.data_add(key5, value5)
  

Re: [E-devel] [RFC] configure options for maintainers

2013-10-29 Thread Guillaume Friloux

On 29/10/2013 00:58, Carsten Haitzler (The Rasterman) wrote:

On Mon, 28 Oct 2013 11:49:20 +0100 Guillaume Friloux
guillaume.fril...@asp64.com said:


On 28/10/2013 03:49, Carsten Haitzler (The Rasterman) wrote:

great.. but how do you EXTRACT this info then from the lib? :) it's a lib..
it can't execute on its own... and printfing such strings on every fn call
is just anti-social :)


Its actually possible, but needs some hack.
glibc does it :
   /lib/libc-2.18.so
GNU C Library (GNU libc) stable release version 2.18, by Roland McGrath
et al.
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 4.8.1 20130725 (prerelease).
Compiled on a Linux 3.10.6 system on 2013-09-24.
Available extensions:
  crypt add-on version 2.1 by Michael Glad and others
  GNU Libidn by Simon Josefsson
  Native POSIX Threads Library by Ulrich Drepper et al
  BIND-8.2.3-T5B
libc ABIs: UNIQUE IFUNC
For bug reporting instructions, please see:
https://bugs.archlinux.org/.

well well well.. i never knew that! they made it a PIE executable?

Small exemple there : 
http://rachid.koucha.free.fr/tech_corner/executable_lib.html
There is a nice article on linux magazine france n°164, too bad you aint 
french (but nobodies perfect)
attachment: guillaume_friloux.vcf--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


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

2013-10-29 Thread Cedric BAIL
On Tue, Oct 29, 2013 at 7:01 PM, Stefan Schmidt s.schm...@samsung.com wrote:
 On 10/29/2013 09:38 AM, Cedric BAIL wrote:
 On Tue, Oct 29, 2013 at 5:31 PM, Stefan Schmidt s.schm...@samsung.com
 wrote:
 On 10/28/2013 06:29 PM, Bertrand Jacquin wrote:
 Not that next report may give different results as the 1th november,
 main gcc release will be switch for gcc 4.8.1.

 Ah, right. Thanks for the reminder.

 I'm running one machine with 4.8.1 here so I don't expect to many
 problems. Just more warnings maybe.

 Speaking of warning, I discovered this plugins for jenkins :
 https://wiki.jenkins-ci.org/display/JENKINS/Valgrind+Plugin

 Do you think it would be possible to roll that along our tests ?

 Anything specific you expect from it? We have address-sanitizer running
 which I always expected to be on par with Valgrinds memcheck
 functionality. Am I wrong with this? Daniel?

Am I wrong that address-sanitizer doesn't give us information on memory leak ?

 The graphs might be nice. I added it to my todo list and will check if
 we can have it running. Don't expect anything withing the next one or
 two weeks due to the transfer and relocation though.

Yup, the grice is the neat things here. And don't worry it's not
really urgent, can wait for tomorrow morning ;-)
-- 
Cedric BAIL

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


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

2013-10-29 Thread Stefan Schmidt
Hello.

On 10/29/2013 10:50 AM, Cedric BAIL wrote:
 On Tue, Oct 29, 2013 at 7:01 PM, Stefan Schmidt s.schm...@samsung.com
 wrote:
 On 10/29/2013 09:38 AM, Cedric BAIL wrote:
 On Tue, Oct 29, 2013 at 5:31 PM, Stefan Schmidt s.schm...@samsung.com
 wrote:
 On 10/28/2013 06:29 PM, Bertrand Jacquin wrote:
 Not that next report may give different results as the 1th november,
 main gcc release will be switch for gcc 4.8.1.

 Ah, right. Thanks for the reminder.

 I'm running one machine with 4.8.1 here so I don't expect to many
 problems. Just more warnings maybe.

 Speaking of warning, I discovered this plugins for jenkins :
 https://wiki.jenkins-ci.org/display/JENKINS/Valgrind+Plugin

 Do you think it would be possible to roll that along our tests ?

 Anything specific you expect from it? We have address-sanitizer running
 which I always expected to be on par with Valgrinds memcheck
 functionality. Am I wrong with this? Daniel?

 Am I wrong that address-sanitizer doesn't give us information on memory
 leak ?

Aehm, yeah. You are right. No idea how I could forget about this. :)

 The graphs might be nice. I added it to my todo list and will check if
 we can have it running. Don't expect anything withing the next one or
 two weeks due to the transfer and relocation though.

 Yup, the grice is the neat things here. And don't worry it's not
 really urgent, can wait for tomorrow morning ;-)

:)

regards
Stefan Schmidt

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/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/02: elm/win: Put framespace set code in a common place.

2013-10-29 Thread Rafael Antognolli
antognolli pushed a commit to branch master.

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

commit e1ebba54bd57819dd1c50347f0a2e5d562505d1a
Author: Rafael Antognolli rafael.antogno...@intel.com
Date:   Tue Oct 29 08:42:41 2013 -0200

elm/win: Put framespace set code in a common place.

A little refactory that hopefully will prevent future mistakes when
changing this code.
---
 src/lib/elm_win.c | 45 +
 1 file changed, 17 insertions(+), 28 deletions(-)

diff --git a/src/lib/elm_win.c b/src/lib/elm_win.c
index 5bfc452..fa41545 100644
--- a/src/lib/elm_win.c
+++ b/src/lib/elm_win.c
@@ -2199,25 +2199,18 @@ static struct _resize_info _border_corner[4] =
 #endif
 
 static void
-_elm_win_frame_obj_move(void *data,
-Evas *e __UNUSED__,
-Evas_Object *obj __UNUSED__,
-void *event_info __UNUSED__)
+_elm_win_frame_obj_update(Elm_Win_Smart_Data *sd)
 {
-   Elm_Win_Smart_Data *sd;
int fx, fy, fw, fh;
int ox, oy, ow, oh;
int sx, sy, sw, sh;
int x, y, w, h;
-
-   if (!(sd = data)) return;
-   if (!sd-client_obj) return;
-
evas_object_geometry_get(sd-frame_obj, fx, fy, fw, fh);
evas_object_geometry_get(sd-client_obj, ox, oy, ow, oh);
evas_object_geometry_get(sd-spacer_obj, sx, sy, sw, sh);
 
evas_output_framespace_get(sd-evas, x, y, w, h);
+
if ((x != (ox - fx)) || (y != (oy - fy)) ||
(w != (fw - ow)) || (h != (fh - oh)))
  {
@@ -2231,35 +2224,31 @@ _elm_win_frame_obj_move(void *data,
 }
 
 static void
+_elm_win_frame_obj_move(void *data,
+Evas *e __UNUSED__,
+Evas_Object *obj __UNUSED__,
+void *event_info __UNUSED__)
+{
+   Elm_Win_Smart_Data *sd;
+
+   if (!(sd = data)) return;
+   if (!sd-client_obj) return;
+
+   _elm_win_frame_obj_update(sd);
+}
+
+static void
 _elm_win_frame_obj_resize(void *data,
   Evas *e __UNUSED__,
   Evas_Object *obj __UNUSED__,
   void *event_info __UNUSED__)
 {
Elm_Win_Smart_Data *sd;
-   int fx, fy, fw, fh;
-   int ox, oy, ow, oh;
-   int sx, sy, sw, sh;
-   int x, y, w, h;
 
if (!(sd = data)) return;
if (!sd-client_obj) return;
 
-   evas_object_geometry_get(sd-frame_obj, fx, fy, fw, fh);
-   evas_object_geometry_get(sd-client_obj, ox, oy, ow, oh);
-   evas_object_geometry_get(sd-spacer_obj, sx, sy, sw, sh);
-
-   evas_output_framespace_get(sd-evas, x, y, w, h);
-   if ((x != (ox - fx)) || (y != (oy - fy)) ||
-   (w != (fw - ow)) || (h != (fh - oh)))
- {
-evas_output_framespace_set(sd-evas, (ox - fx), (oy - fy),
-   (fw - ow), (fh - oh));
- }
-
-#ifdef HAVE_ELEMENTARY_WAYLAND
-   ecore_wl_window_opaque_region_set(sd-wl.win, -fx, -(fy - sy), sw, sh);
-#endif
+   _elm_win_frame_obj_update(sd);
 }
 
 static void

-- 




[EGIT] [core/elementary] master 02/02: elm/win: Do not force maximized status.

2013-10-29 Thread Rafael Antognolli
antognolli pushed a commit to branch master.

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

commit ea3b9ea0f932f9d4446bb3d3a902908a12bcd3de
Author: Rafael Antognolli rafael.antogno...@intel.com
Date:   Tue Oct 29 08:39:40 2013 -0200

elm/win: Do not force maximized status.

When receiving a maximize event from the maximize button, do not force
sd-maximized. We must wait for a state change event, just like when a
window is maximized by the elm_win_maximized_set function. This will
ensure that a maximized smart event is sent.

Additionally, send a elm,state,maximized signal to the edje theme, so it
can update shadows and window decorations correctly.
---
 src/lib/elm_win.c | 29 +
 1 file changed, 25 insertions(+), 4 deletions(-)

diff --git a/src/lib/elm_win.c b/src/lib/elm_win.c
index fa41545..19f9cbc 100644
--- a/src/lib/elm_win.c
+++ b/src/lib/elm_win.c
@@ -2368,17 +2368,38 @@ _elm_win_frame_cb_minimize(void *data,
 }
 
 static void
+_elm_win_frame_maximized_state_update(Elm_Win_Smart_Data *sd, Eina_Bool 
maximized)
+{
+   const char *emission;
+
+   if (maximized)
+ emission = elm,state,maximized;
+   else
+ emission = elm,state,unmaximized;
+
+   edje_object_signal_emit(sd-frame_obj, emission, elm);
+   edje_object_message_signal_process(sd-frame_obj);
+   evas_object_smart_calculate(sd-frame_obj);
+
+   _elm_win_frame_obj_update(sd);
+}
+
+static void
 _elm_win_frame_cb_maximize(void *data,
Evas_Object *obj __UNUSED__,
const char *sig __UNUSED__,
const char *source __UNUSED__)
 {
+   Eina_Bool value;
ELM_WIN_DATA_GET(data, sd);
 
if (!sd) return;
-   if (sd-maximized) sd-maximized = EINA_FALSE;
-   else sd-maximized = EINA_TRUE;
-   TRAP(sd, maximized_set, sd-maximized);
+   if (sd-maximized) value = EINA_FALSE;
+   else value = EINA_TRUE;
+
+   _elm_win_frame_maximized_state_update(sd, value);
+
+   TRAP(sd, maximized_set, value);
 }
 
 static void
@@ -3835,7 +3856,7 @@ _maximized_set(Eo *obj EINA_UNUSED, void *_pd, va_list 
*list)
Eina_Bool maximized = va_arg(*list, int);
Elm_Win_Smart_Data *sd = _pd;
 
-//   sd-maximized = maximized;
+   _elm_win_frame_maximized_state_update(sd, maximized);
// YYY: handle if sd-img_obj
TRAP(sd, maximized_set, maximized);
 #ifdef HAVE_ELEMENTARY_X

-- 




Re: [E-devel] [RFC] configure options for maintainers

2013-10-29 Thread Jérôme Pinot
On 10/28/13 18:21, Carsten Haitzler wrote:
 On Mon, 28 Oct 2013 17:31:44 +0900 Cedric BAIL cedric.b...@free.fr said:
 
  On Mon, Oct 28, 2013 at 4:27 PM, Carsten Haitzler ras...@rasterman.com
  wrote:
   On Mon, 28 Oct 2013 14:45:38 +0900 Cedric BAIL cedric.b...@free.fr said:
   On Mon, Oct 28, 2013 at 11:49 AM, Carsten Haitzler ras...@rasterman.com
   wrote:
On Sat, 12 Oct 2013 11:43:33 +0900 Jérôme Pinot ngc...@gmail.com 
said:
   
great.. but how do you EXTRACT this info then from the lib? :) it's a
lib.. it can't execute on its own... and printfing such strings on 
every
fn call is just anti-social :)
  
   I would have said :
#define EFL_BUILD_DISTRO MyDistro
#define EFL_BUILD_VENDOR Main Tainer f...@bar.org
#define EFL_BUILD_VERSION 42
  
   ummm... ok - and so then we have tyo rely on application executables
   specifically finding these and printfing them or stuffing them into 
   dialogs?
  
  We could put those variable also in the pkg-config, but I was inclined
  on using that in our .e-crashdump.txt infra. So plain C code there.
 
 that's the point i was hinting at.. if its just some strings inside the 
 libs...
 then we need special stuff to extract it. if we add it to pc files or 
 otherwise
 make it easy to find... then thats useful.
 
What about this?
https://phab.enlightenment.org/D288 

Hi,
   
During the Enlightenment French League^W^W dinner, we had this idea of
having a configure option for the EFL to setup a string identifying 
the
compiler/maintainer/distribution of the build. Several projects use 
this
kind of string, for instance TexLive, LibreOffice or POV-Ray. It can 
be
use to find quickly the maintainer, to generate automatic bug reports
and most important, blame someone else (not you, no, really).
   
There are several way to accomplish this during configuration:
   
POV-Ray uses the COMPILED_BY=Main Tainer f...@bar.org environment
variable
   
TexLive uses --with-banner-add=Tex Live 2013/MyDistro Main Tainer
f...@bar.org
   
LibreOffice uses several options:
--with-distro=MyDistro
--with-vendor=Main Tainer f...@bar.org
--with-build-version=42
   
It seems to me that the LibreOffice options are better.
   
What do you think about this?

-- 
Jérôme Pinot
http://ngc891.blogdns.net/


signature.asc
Description: Digital signature
--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [RFC] configure options for maintainers

2013-10-29 Thread The Rasterman
On Tue, 29 Oct 2013 11:47:37 +0100 Guillaume Friloux
guillaume.fril...@asp64.com said:

 On 29/10/2013 00:58, Carsten Haitzler (The Rasterman) wrote:
  On Mon, 28 Oct 2013 11:49:20 +0100 Guillaume Friloux
  guillaume.fril...@asp64.com said:
 
  On 28/10/2013 03:49, Carsten Haitzler (The Rasterman) wrote:
  great.. but how do you EXTRACT this info then from the lib? :) it's a
  lib.. it can't execute on its own... and printfing such strings on every
  fn call is just anti-social :)
 
  Its actually possible, but needs some hack.
  glibc does it :
 /lib/libc-2.18.so
  GNU C Library (GNU libc) stable release version 2.18, by Roland McGrath
  et al.
  Copyright (C) 2013 Free Software Foundation, Inc.
  This is free software; see the source for copying conditions.
  There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
  PARTICULAR PURPOSE.
  Compiled by GNU CC version 4.8.1 20130725 (prerelease).
  Compiled on a Linux 3.10.6 system on 2013-09-24.
  Available extensions:
crypt add-on version 2.1 by Michael Glad and others
GNU Libidn by Simon Josefsson
Native POSIX Threads Library by Ulrich Drepper et al
BIND-8.2.3-T5B
  libc ABIs: UNIQUE IFUNC
  For bug reporting instructions, please see:
  https://bugs.archlinux.org/.
  well well well.. i never knew that! they made it a PIE executable?
 
 Small exemple there : 
 http://rachid.koucha.free.fr/tech_corner/executable_lib.html
 There is a nice article on linux magazine france n°164, too bad you aint 
 french (but nobodies perfect)

tres interessant. :P... 

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


--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/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 03/03: async render - alpha set. if not visible dont WAIT. do it now.

2013-10-29 Thread Ulisses Furquim
Raster,

On Mon, Oct 28, 2013 at 10:03 PM, Carsten Haitzler ras...@rasterman.com wrote:
 On Mon, 28 Oct 2013 17:13:08 -0200 Ulisses Furquim uliss...@gmail.com said:

 Hi Raster,

 On Mon, Oct 28, 2013 at 12:47 AM, Carsten Haitzler ras...@rasterman.com
 wrote:
  On Fri, 18 Oct 2013 15:19:00 -0300 Ulisses Furquim uliss...@gmail.com
  said:
 
  Raster,
 
  On Wed, Oct 16, 2013 at 8:58 PM, Carsten Haitzler ras...@rasterman.com
  wrote:
   On Wed, 16 Oct 2013 12:26:26 -0300 Ulisses Furquim uliss...@gmail.com
   said:
  
   Raster,
  
   On Wed, Oct 16, 2013 at 12:01 PM, Carsten Haitzler
   ras...@rasterman.com wrote:
raster pushed a commit to branch master.
   
http://git.enlightenment.org/core/efl.git/commit/?id=06c3c0cd0c0e2af7279470ab5b3fd3100e1499db
   
commit 06c3c0cd0c0e2af7279470ab5b3fd3100e1499db
Author: Carsten Haitzler (Rasterman) ras...@rasterman.com
Date:   Thu Oct 17 00:00:05 2013 +0900
   
async render - alpha set. if not visible dont WAIT. do it now.
---
 src/modules/ecore_evas/engines/x/ecore_evas_x.c | 11 ---
 1 file changed, 8 insertions(+), 3 deletions(-)
   
diff --git a/src/modules/ecore_evas/engines/x/ecore_evas_x.c
b/src/modules/ecore_evas/engines/x/ecore_evas_x.c index
627dd15..69e0709 100644
--- a/src/modules/ecore_evas/engines/x/ecore_evas_x.c
+++ b/src/modules/ecore_evas/engines/x/ecore_evas_x.c
@@ -2284,10 +2284,15 @@ _ecore_evas_x_alpha_set(Ecore_Evas *ee, int
alpha) {
 if (ee-in_async_render)
   {
- ee-delayed.alpha = alpha;
- ee-delayed.alpha_changed = EINA_TRUE;
- return;
+ if (ee-visible)
+   {
+  ee-delayed.alpha = alpha;
+  ee-delayed.alpha_changed = EINA_TRUE;
+  return;
+   }
   }
+if (ee-in_async_render)
+evas_sync(ee-evas);
  
   Why? We're syncing just to apply the alpha for those not visible? Your
   commit message is wrong because we are WAITING on this sync call
   before the _alpha_do(). Thus it's almost the same as letting the alpha
   be set the delayed way. Unless I'm missing anything we're not gaining
   anything with this patch.
  
   no sync - segv. sync - no segv. (inside evas async rendering where an
   xob is null). since changing to alpha destroys and recreates the window
   id... not surprising.
 
  Do you have a backtrace? I did some quick testing but no segv for me.
 
  i did have one... it was in the async flush code - the one where the
  mainloop inline does its putimage to the window... but the xob was NULL (i
  didn't even check more than that because i instantly had the twinge that
  h i bet the xob creation failed due to invalid window id or something
  and thus why its null.. when the code is ASSUMING window id doesnt change
  during rendering... thus simple - ensure rendering is done before we
  change window id. :)

 Window ID shouldn't change during rendering, that's the point of
 having delayed operations. :-) Like Gustavo said I'm interested to
 know what really was the problem because I don't think we should be
 solving everything by adding evas_sync() calls everywhere.

 the window id does change. that's the core issue here. it is destroyed and
 re-created as that is the only way we can switch the visual of the window :)
 (given ecore-x). thus why i forced the wait for async to finish... :) also
 remember any properties set on the window before are then lost and we rely on
 ecore-evas to restore the ones it knows about (and has remembered to restore).

*During* rendering it shouldn't, have you read what I wrote?! :-)

   if we delay UNCONDITIONALLY (which is what it did before the change -
   regardless of visibility) we WAIT until the window has already rendered
   something (which likely is after a show that came AFTER the set to
   alpha), and then now that we rendered and showed... we destroy and
   re-create again... when we could have happily just done it without
   delay/wait and avoided artifacts on invisible windows. :)
 
  I understood what you and Mike meant, thanks. But the way it works is
  that if we are not async rendering it'll be done with no delay and if
  we are async rendering then it'll be delayed until the old frame is
  completely rendered and no new frames will be sent to render because
  we actively drop frames! Thus I don't think that setting alpha would
  destroy any new content rendered and showed but only old ones. Does
  that make sense?
 
  the problem is we are messing with a window and its properties... and the
  code expects to mess with it there and then.. but it gets deferred until
  later .. and this leads to inconsistency issues. as best i saw a primary
  one is that UNTIL we render yet again the window stays hidden. (invisible).
  and our render was over already...

 Hmm.. Raster, please, we need to have this 

Re: [E-devel] [RFC] configure options for maintainers

2013-10-29 Thread The Rasterman
On Tue, 29 Oct 2013 20:52:08 +0900 Jérôme Pinot ngc...@gmail.com said:

 On 10/28/13 18:21, Carsten Haitzler wrote:
  On Mon, 28 Oct 2013 17:31:44 +0900 Cedric BAIL cedric.b...@free.fr said:
  
   On Mon, Oct 28, 2013 at 4:27 PM, Carsten Haitzler ras...@rasterman.com
   wrote:
On Mon, 28 Oct 2013 14:45:38 +0900 Cedric BAIL cedric.b...@free.fr
said:
On Mon, Oct 28, 2013 at 11:49 AM, Carsten Haitzler
ras...@rasterman.com wrote:
 On Sat, 12 Oct 2013 11:43:33 +0900 Jérôme Pinot ngc...@gmail.com
 said:

 great.. but how do you EXTRACT this info then from the lib? :) it's a
 lib.. it can't execute on its own... and printfing such strings on
 every fn call is just anti-social :)
   
I would have said :
 #define EFL_BUILD_DISTRO MyDistro
 #define EFL_BUILD_VENDOR Main Tainer f...@bar.org
 #define EFL_BUILD_VERSION 42
   
ummm... ok - and so then we have tyo rely on application executables
specifically finding these and printfing them or stuffing them into
dialogs?
   
   We could put those variable also in the pkg-config, but I was inclined
   on using that in our .e-crashdump.txt infra. So plain C code there.
  
  that's the point i was hinting at.. if its just some strings inside the
  libs... then we need special stuff to extract it. if we add it to pc files
  or otherwise make it easy to find... then thats useful.
  
 What about this?
 https://phab.enlightenment.org/D288 

and missing the next bit... how to expose it... :)

 Hi,

 During the Enlightenment French League^W^W dinner, we had this idea
 of having a configure option for the EFL to setup a string
 identifying the compiler/maintainer/distribution of the build.
 Several projects use this kind of string, for instance TexLive,
 LibreOffice or POV-Ray. It can be use to find quickly the
 maintainer, to generate automatic bug reports and most important,
 blame someone else (not you, no, really).

 There are several way to accomplish this during configuration:

 POV-Ray uses the COMPILED_BY=Main Tainer f...@bar.org 
 environment
 variable

 TexLive uses --with-banner-add=Tex Live 2013/MyDistro Main Tainer
 f...@bar.org

 LibreOffice uses several options:
 --with-distro=MyDistro
 --with-vendor=Main Tainer f...@bar.org
 --with-build-version=42

 It seems to me that the LibreOffice options are better.

 What do you think about this?
 
 -- 
 Jérôme Pinot
 http://ngc891.blogdns.net/


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


--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/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 03/03: async render - alpha set. if not visible dont WAIT. do it now.

2013-10-29 Thread The Rasterman
On Tue, 29 Oct 2013 10:20:33 -0200 Ulisses Furquim uliss...@gmail.com said:

 Raster,
 
 On Mon, Oct 28, 2013 at 10:03 PM, Carsten Haitzler ras...@rasterman.com
 wrote:
  On Mon, 28 Oct 2013 17:13:08 -0200 Ulisses Furquim uliss...@gmail.com
  said:
 
  Hi Raster,
 
  On Mon, Oct 28, 2013 at 12:47 AM, Carsten Haitzler ras...@rasterman.com
  wrote:
   On Fri, 18 Oct 2013 15:19:00 -0300 Ulisses Furquim uliss...@gmail.com
   said:
  
   Raster,
  
   On Wed, Oct 16, 2013 at 8:58 PM, Carsten Haitzler ras...@rasterman.com
   wrote:
On Wed, 16 Oct 2013 12:26:26 -0300 Ulisses Furquim
uliss...@gmail.com said:
   
Raster,
   
On Wed, Oct 16, 2013 at 12:01 PM, Carsten Haitzler
ras...@rasterman.com wrote:
 raster pushed a commit to branch master.

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

 commit 06c3c0cd0c0e2af7279470ab5b3fd3100e1499db
 Author: Carsten Haitzler (Rasterman) ras...@rasterman.com
 Date:   Thu Oct 17 00:00:05 2013 +0900

 async render - alpha set. if not visible dont WAIT. do it now.
 ---
  src/modules/ecore_evas/engines/x/ecore_evas_x.c | 11 ---
  1 file changed, 8 insertions(+), 3 deletions(-)

 diff --git a/src/modules/ecore_evas/engines/x/ecore_evas_x.c
 b/src/modules/ecore_evas/engines/x/ecore_evas_x.c index
 627dd15..69e0709 100644
 --- a/src/modules/ecore_evas/engines/x/ecore_evas_x.c
 +++ b/src/modules/ecore_evas/engines/x/ecore_evas_x.c
 @@ -2284,10 +2284,15 @@ _ecore_evas_x_alpha_set(Ecore_Evas *ee, int
 alpha) {
  if (ee-in_async_render)
{
 - ee-delayed.alpha = alpha;
 - ee-delayed.alpha_changed = EINA_TRUE;
 - return;
 + if (ee-visible)
 +   {
 +  ee-delayed.alpha = alpha;
 +  ee-delayed.alpha_changed = EINA_TRUE;
 +  return;
 +   }
}
 +if (ee-in_async_render)
 +evas_sync(ee-evas);
   
Why? We're syncing just to apply the alpha for those not visible?
Your commit message is wrong because we are WAITING on this sync call
before the _alpha_do(). Thus it's almost the same as letting the
alpha be set the delayed way. Unless I'm missing anything we're not
gaining anything with this patch.
   
no sync - segv. sync - no segv. (inside evas async rendering where
an xob is null). since changing to alpha destroys and recreates the
window id... not surprising.
  
   Do you have a backtrace? I did some quick testing but no segv for me.
  
   i did have one... it was in the async flush code - the one where the
   mainloop inline does its putimage to the window... but the xob was NULL
   (i didn't even check more than that because i instantly had the twinge
   that h i bet the xob creation failed due to invalid window id or
   something and thus why its null.. when the code is ASSUMING window id
   doesnt change during rendering... thus simple - ensure rendering is
   done before we change window id. :)
 
  Window ID shouldn't change during rendering, that's the point of
  having delayed operations. :-) Like Gustavo said I'm interested to
  know what really was the problem because I don't think we should be
  solving everything by adding evas_sync() calls everywhere.
 
  the window id does change. that's the core issue here. it is destroyed and
  re-created as that is the only way we can switch the visual of the window :)
  (given ecore-x). thus why i forced the wait for async to finish... :) also
  remember any properties set on the window before are then lost and we rely
  on ecore-evas to restore the ones it knows about (and has remembered to
  restore).
 
 *During* rendering it shouldn't, have you read what I wrote?! :-)

yes - i read it... but it DOES ... if you make the changes and remove the
deferred change in alpha and do it there and then. i made that change before
any commit made it anywhere... and segv land it was. thus need to sync and wait
so rendering is done - then window can be destroyed+created safely.

if we delay UNCONDITIONALLY (which is what it did before the change -
regardless of visibility) we WAIT until the window has already
rendered something (which likely is after a show that came AFTER the
set to alpha), and then now that we rendered and showed... we destroy
and re-create again... when we could have happily just done it without
delay/wait and avoided artifacts on invisible windows. :)
  
   I understood what you and Mike meant, thanks. But the way it works is
   that if we are not async rendering it'll be done with no delay and if
   we are async rendering then it'll be delayed until the old frame is
   completely rendered and no new frames will be sent to render because
   we actively drop frames! Thus I don't think that setting alpha 

Re: [E-devel] [EGIT] [core/efl] master 03/03: async render - alpha set. if not visible dont WAIT. do it now.

2013-10-29 Thread Stefan Schmidt
Hello.

Mike requested me to let you know that he also explains things in his 
second reply (16.10.2013) which you seem to ignore.

On 10/29/2013 12:20 PM, Ulisses Furquim wrote:

[snap]

 I was trying to understand the bug being fixed and yes, it's minor and
 I can just leave it as that. However, we need to improve the way we do
 development as an open source project. It's kind of embarrassing that
 we don't have proper usage of version control, good commit messages,
 reviews, release schedule and so on. :-/

And you thing that will improve just by complaining about it? It will 
definitely not. It only improves if you actively work on changing 
things. I few examples for you what did improve over the last 1.5 years:

o Daniel and Tom migrated us over to git and helped people with using is 
as well as bringing in best practices piece by piece (developer repos 
and branches, possible merge work flows, complains about commit messages)

o Daniel and I did a lot of work to get CI up to speed and improved it 
in various ways

o I started to do coverity builds and other QA stuff to raise awareness

o During the latest dev day we discussed about release and raster 
suggested a time based schedule (just think about this. I would never 
seen that coming some time ago). I signed up for doing the first trial 
of this for the 1.9 efl release.

That are just a few things. I actually think we improved a lot over the 
last 1.5 years. Still not where I want us to be but we are making more 
progress than I hoped for.

All things only works if someone steps up and ACTIVELY does something. 
You want more review? Great! There has been a chance with the cserv2 
branch just recently but nobody really did a public review. I see you 
doing reviews on the async stuff which is good but if you want more 
people doing it you need to lead by doing so yourself even on other patches.

Don't complain about everything is shitty just because you don't like 
how this one patch was handled. Look at the whole picture and improve by 
actively helping out where help is needed. And yes, we should discuss 
this in a different thread

regards
Stefan Schmidt

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [RFC] configure options for maintainers

2013-10-29 Thread Jérémy Zurcher
On Tuesday 29 October 2013  11:47, Guillaume Friloux wrote :
 On 29/10/2013 00:58, Carsten Haitzler (The Rasterman) wrote:
 On Mon, 28 Oct 2013 11:49:20 +0100 Guillaume Friloux
 guillaume.fril...@asp64.com said:
 
 On 28/10/2013 03:49, Carsten Haitzler (The Rasterman) wrote:
 great.. but how do you EXTRACT this info then from the lib? :) it's a lib..
 it can't execute on its own... and printfing such strings on every fn call
 is just anti-social :)
 
 Its actually possible, but needs some hack.
 glibc does it :
/lib/libc-2.18.so
 GNU C Library (GNU libc) stable release version 2.18, by Roland McGrath
 et al.
 Copyright (C) 2013 Free Software Foundation, Inc.
 This is free software; see the source for copying conditions.
 There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
 PARTICULAR PURPOSE.
 Compiled by GNU CC version 4.8.1 20130725 (prerelease).
 Compiled on a Linux 3.10.6 system on 2013-09-24.
 Available extensions:
   crypt add-on version 2.1 by Michael Glad and others
   GNU Libidn by Simon Josefsson
   Native POSIX Threads Library by Ulrich Drepper et al
   BIND-8.2.3-T5B
 libc ABIs: UNIQUE IFUNC
 For bug reporting instructions, please see:
 https://bugs.archlinux.org/.
 well well well.. i never knew that! they made it a PIE executable?
 
 Small exemple there :
 http://rachid.koucha.free.fr/tech_corner/executable_lib.html
 There is a nice article on linux magazine france n°164, too bad you aint
 french (but nobodies perfect)
I read half of it in the news kiosk last week ;)
thanks for the link !!

 begin:vcard
 fn:Guillaume Friloux
 n:Friloux;Guillaume
 org:ASP64;RD
 email;internet:guillaume.fril...@asp64.com
 title:Linux C Dev
 x-mozilla-html:FALSE
 version:2.1
 end:vcard
 

 --
 Android is increasing in popularity, but the open development platform that
 developers love is also attractive to malware creators. Download this white
 paper to learn more about secure code signing practices that can help keep
 Android apps secure.
 http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/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)

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [admin/devs] master 01/01: dev--

2013-10-29 Thread Luis Felipe Strano Moraes
lfelipe pushed a commit to branch master.

http://git.enlightenment.org/admin/devs.git/commit/?id=0c76c52eb1d45b5391c78e3eb1245f4321620556

commit 0c76c52eb1d45b5391c78e3eb1245f4321620556
Author: Luis Felipe Strano Moraes luis.str...@gmail.com
Date:   Tue Oct 29 15:17:10 2013 -0200

dev--

haven't been working on anything e-related recently
---
 lfelipe/id_rsa.pub | 1 -
 lfelipe/info.txt   | 9 -
 2 files changed, 10 deletions(-)

diff --git a/lfelipe/id_rsa.pub b/lfelipe/id_rsa.pub
deleted file mode 100644
index 0b6ee4d..000
--- a/lfelipe/id_rsa.pub
+++ /dev/null
@@ -1 +0,0 @@
-ssh-rsa 
B3NzaC1yc2EBIwAAAQEA1QDVDA+CkAJLbwS5OLi2Ts/DCbIpc0buzttvavnzRPs9mTb7Cf/fQg6uSoiXDKi0+acRUZ6HMZW01/ACkLzrrcIvQnP/wqhvZICSTK5NR1cL562Z938M9IYkeJzkLWN5Ftk/hnuTu+c6OGVGfeT2lpz/34qPcgvewvXZ/dSgXP5IzRr/AfF5uOmsn5r30L6/t0HTWvK13wXbd17cl/Ls1/5DhzSBhqce7UHqfCdDSAOz/N/kQua/EMnFTelnKrcK3X8RTgA99DHJLDzQt8qneUkCz+OJgmavvHdtBxf5DOZl2VCSoXkAvyRyHGIozaii9rRr7u0HWZ2V5NKFAGqmuw==
 lfelipe@annie
diff --git a/lfelipe/info.txt b/lfelipe/info.txt
deleted file mode 100644
index 3fc8d81..000
--- a/lfelipe/info.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-Login:lfelipe
-IRC Nick: lfelipe
-Cloak:developer/lfelipe
-Name: Luis Felipe Strano Moraes
-Location: Campinas, Brazil
-E-Mail:   -lfel...@profusion.mobi
-Contributing: Evas, Ecore, Edje, Epsilon, Efreet
-Group:Libraries
-Platform: Ubuntu (Linux)

-- 




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

2013-10-29 Thread Kim Shinwoo
Hello

Is the test result from efl/src/tests/* stuffs?
The functional (or line) coverage would be lower than I though.
It would be a nice point to contribute on my side. :)

Sincerely,
Shinwoo Kim.


On Tue, Oct 29, 2013 at 8:02 PM, Stefan Schmidt s.schm...@samsung.comwrote:

 Hello.

 On 10/29/2013 10:50 AM, Cedric BAIL wrote:
  On Tue, Oct 29, 2013 at 7:01 PM, Stefan Schmidt s.schm...@samsung.com
  wrote:
  On 10/29/2013 09:38 AM, Cedric BAIL wrote:
  On Tue, Oct 29, 2013 at 5:31 PM, Stefan Schmidt s.schm...@samsung.com
 
  wrote:
  On 10/28/2013 06:29 PM, Bertrand Jacquin wrote:
  Not that next report may give different results as the 1th november,
  main gcc release will be switch for gcc 4.8.1.
 
  Ah, right. Thanks for the reminder.
 
  I'm running one machine with 4.8.1 here so I don't expect to many
  problems. Just more warnings maybe.
 
  Speaking of warning, I discovered this plugins for jenkins :
  https://wiki.jenkins-ci.org/display/JENKINS/Valgrind+Plugin
 
  Do you think it would be possible to roll that along our tests ?
 
  Anything specific you expect from it? We have address-sanitizer running
  which I always expected to be on par with Valgrinds memcheck
  functionality. Am I wrong with this? Daniel?
 
  Am I wrong that address-sanitizer doesn't give us information on memory
  leak ?

 Aehm, yeah. You are right. No idea how I could forget about this. :)

  The graphs might be nice. I added it to my todo list and will check if
  we can have it running. Don't expect anything withing the next one or
  two weeks due to the transfer and relocation though.
 
  Yup, the grice is the neat things here. And don't worry it's not
  really urgent, can wait for tomorrow morning ;-)

 :)

 regards
 Stefan Schmidt


 --
 Android is increasing in popularity, but the open development platform that
 developers love is also attractive to malware creators. Download this white
 paper to learn more about secure code signing practices that can help keep
 Android apps secure.
 http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] enventor release. (Tom, Read this)

2013-10-29 Thread Kim Shinwoo
whoa! ninja takes off a mask here.


On Mon, Oct 28, 2013 at 3:58 PM, ChunEon Park her...@naver.com wrote:

 ok, that will be the first but last request.

 
 -Regards, Hermet-

 -Original Message-
 From: Steven@este...@enlightenment.org
 To: Enlightenment developer list
 enlightenment-devel@lists.sourceforge.net;
 Cc:
 Sent: 2013-10-24 (목) 10:16:58
 Subject: Re: [E-devel] enventor release. (Tom, Read this)

 On Thu, Oct 24, 2013 at 1:46 AM, Daniel Juyung Seo seojuyung2@gmail.com
 wrote:

  On Thu, Oct 24, 2013 at 8:31 AM, Bertrand Jacquin beber@meleeweb.net
  wrote:
 
   On 2013-10-23 12:24, ChunEon Park wrote:
As far as our plan, efl 1.8 will be released in the next month.
I'm getting to release enventor 0.1 also along with the efl 1.8.
   
So, I gonna put the enventor under the tools repository at this point
If nobody object to me.
   
Tom or Daniel, could you please migrate the enventor from my private
repo to tools?
  
   Done. I made a copy of your repo, so you're free to remove your
 personal
   repo.
  
   http://git.enlightenment.org/tools/enventor.git/
  
 
  Cool Beber!
  Thanks for your job.
 

 reminder : it's not his job ;)

 Many thx  to him !


 
  Daniel Juyung Seo (SeoZ)
 
 
  
   --
   Beber
  
  
  
 
 --
   October Webinars: Code for Performance
   Free Intel webinars can help you accelerate application performance.
   Explore tips for MPI, OpenMP, advanced profiling, and more. Get the
 most
   from
   the latest Intel processors and coprocessors. See abstracts and
 register
  
  
 
 http://pubads.g.doubleclick.net/gampad/clk?id=60135991iu=/4140/ostg.clktrk
   ___
   enlightenment-devel mailing list
   enlightenment-devel@lists.sourceforge.net
   https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
  
 
 
 --
  October Webinars: Code for Performance
  Free Intel webinars can help you accelerate application performance.
  Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most
  from
  the latest Intel processors and coprocessors. See abstracts and register
 
 
 http://pubads.g.doubleclick.net/gampad/clk?id=60135991iu=/4140/ostg.clktrk
  ___
  enlightenment-devel mailing list
  enlightenment-devel@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
 

 --
 October Webinars: Code for Performance
 Free Intel webinars can help you accelerate application performance.
 Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most
 from
 the latest Intel processors and coprocessors. See abstracts and register 
 http://pubads.g.doubleclick.net/gampad/clk?id=60135991iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


 --
 October Webinars: Code for Performance
 Free Intel webinars can help you accelerate application performance.
 Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most
 from
 the latest Intel processors and coprocessors. See abstracts and register 
 http://pubads.g.doubleclick.net/gampad/clk?id=60135991iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [Question] Key event related

2013-10-29 Thread Kim Shinwoo
Dear all, Hello.

after i press and release space key while right arrow key is pressed.
the right arrow key press event does not occur before release and press
right arrow key again. this is a normal operation on X environment.

then how can i implement a shooting game on this environment.
my main actor could fire while he moves to right side. but he can not move
anymore after the fire stopped before the right arrow key is released and
pressed.

Sincerely,
Shinwoo Kim.
--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] Is there *real* documentation for edje?

2013-10-29 Thread Robert Heller
I am trying to write an alternitive version of the Enlightenment's 'start 
menu', where instead of a cascade menu it is a three column thingy (I am not 
sure what this sort of menu is called), something like this (from Mint):

ftp://ftp.deepsoft.com/ftp/pub/deepwoods/Other/RibbonMenu.png

But I am having a hard time figuring out how to do this.  The documentation 
for edje leaves a lot to be desired and the API for enlightenment itself is 
pretty much not documented at all.  I am a skilled C programmer, but without 
useful documentation it is very hard to program...

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


   

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Is there *real* documentation for edje?

2013-10-29 Thread Guillaume Friloux
Le 29/10/2013 20:14, Robert Heller a écrit :
 I am trying to write an alternitive version of the Enlightenment's 'start
 menu', where instead of a cascade menu it is a three column thingy (I am not
 sure what this sort of menu is called), something like this (from Mint):

 ftp://ftp.deepsoft.com/ftp/pub/deepwoods/Other/RibbonMenu.png

 But I am having a hard time figuring out how to do this.  The documentation
 for edje leaves a lot to be desired and the API for enlightenment itself is
 pretty much not documented at all.  I am a skilled C programmer, but without
 useful documentation it is very hard to program...

For people trying to look linked image : 
ftp://ftp.deepsoft.com/pub/deepwoods/Other/RibbonMenu.png
As i am not involved in GUI libs of EFLs, ill let others answer you.


--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/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: ecore/wayland: Add some getters.

2013-10-29 Thread Chris Michael
This is looking good antognolli :) Thank you for keeping to the existing 
formatting ;)

There is one thing that I would prefer tho .. for internal/private 
functions (ie: Not exposed API functions), can we prefix with _ please ??

ie:

+struct wl_compositor *
+ecore_wl_compositor_get(void)
+{
+   if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
+ return NULL;
+
+   _ecore_wl_init_wait();
+
+   return _ecore_wl_disp-wl.compositor;
+}


into

+struct wl_compositor *
+_ecore_wl_compositor_get(void)
+{
+   if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
+ return NULL;
+
+   _ecore_wl_init_wait();
+
+   return _ecore_wl_disp-wl.compositor;
+}

The underscore just makes it really easy  quick to determine that it's 
an internal function.

That aside, Nice work !! :)

Cheers,
dh

On 10/29/13 21:18, Rafael Antognolli wrote:
 antognolli pushed a commit to branch master.

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

 commit 06d6bf0dba9f0cc20075c84507bec2cbdb96aa6b
 Author: Rafael Antognolli rafael.antogno...@intel.com
 Date:   Tue Oct 29 18:40:33 2013 -0200

  ecore/wayland: Add some getters.
  
  This centralizes the place where we have to wait for the init to have
  finished before first using the compositor. It's also part of the later
  step of hiding Ecore_Wl_* private structs.
 ---
   src/lib/ecore_wayland/Ecore_Wayland.h| 10 ++
   src/lib/ecore_wayland/ecore_wl.c | 22 ++
   src/lib/ecore_wayland/ecore_wl_private.h |  3 +++
   src/lib/ecore_wayland/ecore_wl_subsurf.c | 13 +++--
   src/lib/ecore_wayland/ecore_wl_window.c  |  6 +++---
   5 files changed, 45 insertions(+), 9 deletions(-)

 diff --git a/src/lib/ecore_wayland/Ecore_Wayland.h 
 b/src/lib/ecore_wayland/Ecore_Wayland.h
 index 9ba7636..7828281 100644
 --- a/src/lib/ecore_wayland/Ecore_Wayland.h
 +++ b/src/lib/ecore_wayland/Ecore_Wayland.h
 @@ -496,6 +496,16 @@ EAPI struct wl_shm *ecore_wl_shm_get(void);
   EAPI struct wl_display *ecore_wl_display_get(void);
   
   /**
 + * Retrieves the Compositor interface.
 + *
 + * This interface is used by clients to request the creation of surfaces and
 + * regions.
 + *
 + * @return The current wayland compositor interface
 + * @since 1.8
 + */
 +
 +/**
* Retrieves the size of the current screen.
*
* @param w where to return the width. May be NULL. Returns 0 on error.
 diff --git a/src/lib/ecore_wayland/ecore_wl.c 
 b/src/lib/ecore_wayland/ecore_wl.c
 index 451aa79..f763675 100644
 --- a/src/lib/ecore_wayland/ecore_wl.c
 +++ b/src/lib/ecore_wayland/ecore_wl.c
 @@ -272,6 +272,28 @@ ecore_wl_registry_get(void)
  return _ecore_wl_disp-wl.registry;
   }
   
 +struct wl_compositor *
 +ecore_wl_compositor_get(void)
 +{
 +   if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
 + return NULL;
 +
 +   _ecore_wl_init_wait();
 +
 +   return _ecore_wl_disp-wl.compositor;
 +}
 +
 +struct wl_subcompositor *
 +ecore_wl_subcompositor_get(void)
 +{
 +   if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
 + return NULL;
 +
 +   _ecore_wl_init_wait();
 +
 +   return _ecore_wl_disp-wl.subcompositor;
 +}
 +
   EAPI void
   ecore_wl_screen_size_get(int *w, int *h)
   {
 diff --git a/src/lib/ecore_wayland/ecore_wl_private.h 
 b/src/lib/ecore_wayland/ecore_wl_private.h
 index b83aae3..d615f0f 100644
 --- a/src/lib/ecore_wayland/ecore_wl_private.h
 +++ b/src/lib/ecore_wayland/ecore_wl_private.h
 @@ -97,4 +97,7 @@ void _ecore_wl_events_shutdown(void);
   
   void _ecore_wl_subsurfs_del_all(Ecore_Wl_Window *win);
   
 +struct wl_compositor *ecore_wl_compositor_get(void);
 +struct wl_subcompositor *ecore_wl_subcompositor_get(void);
 +
   #endif
 diff --git a/src/lib/ecore_wayland/ecore_wl_subsurf.c 
 b/src/lib/ecore_wayland/ecore_wl_subsurf.c
 index 4e144fa..d59810d 100644
 --- a/src/lib/ecore_wayland/ecore_wl_subsurf.c
 +++ b/src/lib/ecore_wayland/ecore_wl_subsurf.c
 @@ -23,19 +23,22 @@ ecore_wl_subsurf_create(Ecore_Wl_Window *win)
  struct wl_subsurface *subsurface;
  struct wl_surface *surface;
  Ecore_Wl_Subsurf *ess;
 +   struct wl_subcompositor *subcomp;
   
  LOGFN(__FILE__, __LINE__, __FUNCTION__);
   
  if (!win) return NULL;
  if (!win-surface) return NULL;
 -   if (!_ecore_wl_disp-wl.subcompositor) return NULL;
   
 -   surface = wl_compositor_create_surface(_ecore_wl_disp-wl.compositor);
 +   subcomp = ecore_wl_subcompositor_get();
 +   if (!subcomp) return NULL;
 +
 +   surface = wl_compositor_create_surface(ecore_wl_compositor_get());
  if (!surface)
return NULL;
   
  subsurface = wl_subcompositor_get_subsurface
 -  (_ecore_wl_disp-wl.subcompositor, surface, win-surface);
 +  (subcomp, surface, win-surface);
  if (!subsurface)
{
   wl_surface_destroy(surface);
 @@ -171,7 +174,6 @@ ecore_wl_subsurf_sync_set(Ecore_Wl_Subsurf *ess, 
 Eina_Bool val)
   EAPI void
   

[E-devel] Monitor/output parameter for fullscreen

2013-10-29 Thread Rafael Antognolli
Hey everyone,

Our current API for setting a window as fullscreen does not support
specifying which output/display/monitor should be used as fullscreen.
However, wayland does support it.

Would it make sense to have such parameter in the fullscreen_set API?
Or should it be a wayland-only API?

For the latter case, how would we do that? Maybe exposing an API that
allows to set the preferred output, and then when fullscreen_set is
called, it just uses that one?

There's also a need to specify how the output should be referred to.
Using an (unsigned) int, where 0 is the first output, 1 is the second,
etc? Or maybe allowing to specify something like always the biggest
one in area, or the widest one, or whatever... any thoughts?

That reminds me that we still have another problem. APIs such
ecore_wl_screen_size_get() return only the screen size of the first
monitor, not both.

What about a common API to select which output we are talking about,
that must be called before any call that would refer to a specific
output? The problem with this is that it would make code very
wayland-specific :-/

I don't have many other ideas to fix this, other than having a generic
way to refer to an output, and add it all over the ecore_evas APIs.

-- 
Rafael Antognolli

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/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/02: ecore/wayland: Add some getters.

2013-10-29 Thread Rafael Antognolli
antognolli pushed a commit to branch master.

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

commit 06d6bf0dba9f0cc20075c84507bec2cbdb96aa6b
Author: Rafael Antognolli rafael.antogno...@intel.com
Date:   Tue Oct 29 18:40:33 2013 -0200

ecore/wayland: Add some getters.

This centralizes the place where we have to wait for the init to have
finished before first using the compositor. It's also part of the later
step of hiding Ecore_Wl_* private structs.
---
 src/lib/ecore_wayland/Ecore_Wayland.h| 10 ++
 src/lib/ecore_wayland/ecore_wl.c | 22 ++
 src/lib/ecore_wayland/ecore_wl_private.h |  3 +++
 src/lib/ecore_wayland/ecore_wl_subsurf.c | 13 +++--
 src/lib/ecore_wayland/ecore_wl_window.c  |  6 +++---
 5 files changed, 45 insertions(+), 9 deletions(-)

diff --git a/src/lib/ecore_wayland/Ecore_Wayland.h 
b/src/lib/ecore_wayland/Ecore_Wayland.h
index 9ba7636..7828281 100644
--- a/src/lib/ecore_wayland/Ecore_Wayland.h
+++ b/src/lib/ecore_wayland/Ecore_Wayland.h
@@ -496,6 +496,16 @@ EAPI struct wl_shm *ecore_wl_shm_get(void);
 EAPI struct wl_display *ecore_wl_display_get(void);
 
 /**
+ * Retrieves the Compositor interface.
+ *
+ * This interface is used by clients to request the creation of surfaces and
+ * regions.
+ *
+ * @return The current wayland compositor interface
+ * @since 1.8
+ */
+
+/**
  * Retrieves the size of the current screen.
  *
  * @param w where to return the width. May be NULL. Returns 0 on error.
diff --git a/src/lib/ecore_wayland/ecore_wl.c b/src/lib/ecore_wayland/ecore_wl.c
index 451aa79..f763675 100644
--- a/src/lib/ecore_wayland/ecore_wl.c
+++ b/src/lib/ecore_wayland/ecore_wl.c
@@ -272,6 +272,28 @@ ecore_wl_registry_get(void)
return _ecore_wl_disp-wl.registry;
 }
 
+struct wl_compositor *
+ecore_wl_compositor_get(void)
+{
+   if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
+ return NULL;
+
+   _ecore_wl_init_wait();
+
+   return _ecore_wl_disp-wl.compositor;
+}
+
+struct wl_subcompositor *
+ecore_wl_subcompositor_get(void)
+{
+   if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
+ return NULL;
+
+   _ecore_wl_init_wait();
+
+   return _ecore_wl_disp-wl.subcompositor;
+}
+
 EAPI void
 ecore_wl_screen_size_get(int *w, int *h)
 {
diff --git a/src/lib/ecore_wayland/ecore_wl_private.h 
b/src/lib/ecore_wayland/ecore_wl_private.h
index b83aae3..d615f0f 100644
--- a/src/lib/ecore_wayland/ecore_wl_private.h
+++ b/src/lib/ecore_wayland/ecore_wl_private.h
@@ -97,4 +97,7 @@ void _ecore_wl_events_shutdown(void);
 
 void _ecore_wl_subsurfs_del_all(Ecore_Wl_Window *win);
 
+struct wl_compositor *ecore_wl_compositor_get(void);
+struct wl_subcompositor *ecore_wl_subcompositor_get(void);
+
 #endif
diff --git a/src/lib/ecore_wayland/ecore_wl_subsurf.c 
b/src/lib/ecore_wayland/ecore_wl_subsurf.c
index 4e144fa..d59810d 100644
--- a/src/lib/ecore_wayland/ecore_wl_subsurf.c
+++ b/src/lib/ecore_wayland/ecore_wl_subsurf.c
@@ -23,19 +23,22 @@ ecore_wl_subsurf_create(Ecore_Wl_Window *win)
struct wl_subsurface *subsurface;
struct wl_surface *surface;
Ecore_Wl_Subsurf *ess;
+   struct wl_subcompositor *subcomp;
 
LOGFN(__FILE__, __LINE__, __FUNCTION__);
 
if (!win) return NULL;
if (!win-surface) return NULL;
-   if (!_ecore_wl_disp-wl.subcompositor) return NULL;
 
-   surface = wl_compositor_create_surface(_ecore_wl_disp-wl.compositor);
+   subcomp = ecore_wl_subcompositor_get();
+   if (!subcomp) return NULL;
+
+   surface = wl_compositor_create_surface(ecore_wl_compositor_get());
if (!surface)
  return NULL;
 
subsurface = wl_subcompositor_get_subsurface
-  (_ecore_wl_disp-wl.subcompositor, surface, win-surface);
+  (subcomp, surface, win-surface);
if (!subsurface)
  {
 wl_surface_destroy(surface);
@@ -171,7 +174,6 @@ ecore_wl_subsurf_sync_set(Ecore_Wl_Subsurf *ess, Eina_Bool 
val)
 EAPI void
 ecore_wl_subsurf_opaque_region_set(Ecore_Wl_Subsurf *ess, int x, int y, int w, 
int h)
 {
-   Ecore_Wl_Window *parent;
struct wl_region *region = NULL;
 
LOGFN(__FILE__, __LINE__, __FUNCTION__);
@@ -180,8 +182,7 @@ ecore_wl_subsurf_opaque_region_set(Ecore_Wl_Subsurf *ess, 
int x, int y, int w, i
 
if ((w  0)  (h  0))
  {
-parent = ess-parent_win;
-region = wl_compositor_create_region(parent-display-wl.compositor);
+region = wl_compositor_create_region(ecore_wl_compositor_get());
 wl_region_add(region, x, y, w, h);
 wl_surface_set_opaque_region(ess-surface, region);
 wl_region_destroy(region);
diff --git a/src/lib/ecore_wayland/ecore_wl_window.c 
b/src/lib/ecore_wayland/ecore_wl_window.c
index 4ec78c8..b924691 100644
--- a/src/lib/ecore_wayland/ecore_wl_window.c
+++ b/src/lib/ecore_wayland/ecore_wl_window.c
@@ -252,7 +252,7 @@ ecore_wl_window_surface_create(Ecore_Wl_Window *win)
 {
if (!win) return NULL;
if (win-surface) return win-surface;
-   win-surface = 

[EGIT] [core/efl] master 02/02: ecore/wayland: Oops, initialize member of malloc'ed struct.

2013-10-29 Thread Rafael Antognolli
antognolli pushed a commit to branch master.

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

commit cb0f6171a88e3fe779ea27e22608adee3d62c4ee
Author: Rafael Antognolli rafael.antogno...@intel.com
Date:   Tue Oct 29 19:14:59 2013 -0200

ecore/wayland: Oops, initialize member of malloc'ed struct.
---
 src/lib/ecore_wayland/ecore_wl.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/lib/ecore_wayland/ecore_wl.c b/src/lib/ecore_wayland/ecore_wl.c
index f763675..b3ec5df 100644
--- a/src/lib/ecore_wayland/ecore_wl.c
+++ b/src/lib/ecore_wayland/ecore_wl.c
@@ -204,6 +204,7 @@ ecore_wl_init(const char *name)
_ecore_wl_window_init();
_ecore_wl_events_init();
 
+   _ecore_wl_disp-init_done = EINA_FALSE;
callback = wl_display_sync(_ecore_wl_disp-wl.display);
wl_callback_add_listener(callback, _ecore_wl_init_sync_listener,
 _ecore_wl_disp);

-- 




[EGIT] [core/efl] master 01/01: ecore/wayland: Using underscore on private functions.

2013-10-29 Thread Rafael Antognolli
antognolli pushed a commit to branch master.

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

commit 047e3bf113f1129ffdd829b6ae0fd370a5677963
Author: Rafael Antognolli rafael.antogno...@intel.com
Date:   Tue Oct 29 19:32:00 2013 -0200

ecore/wayland: Using underscore on private functions.
---
 src/lib/ecore_wayland/ecore_wl.c | 4 ++--
 src/lib/ecore_wayland/ecore_wl_private.h | 4 ++--
 src/lib/ecore_wayland/ecore_wl_subsurf.c | 6 +++---
 src/lib/ecore_wayland/ecore_wl_window.c  | 6 +++---
 4 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/src/lib/ecore_wayland/ecore_wl.c b/src/lib/ecore_wayland/ecore_wl.c
index b3ec5df..bb0c5fe 100644
--- a/src/lib/ecore_wayland/ecore_wl.c
+++ b/src/lib/ecore_wayland/ecore_wl.c
@@ -274,7 +274,7 @@ ecore_wl_registry_get(void)
 }
 
 struct wl_compositor *
-ecore_wl_compositor_get(void)
+_ecore_wl_compositor_get(void)
 {
if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
  return NULL;
@@ -285,7 +285,7 @@ ecore_wl_compositor_get(void)
 }
 
 struct wl_subcompositor *
-ecore_wl_subcompositor_get(void)
+_ecore_wl_subcompositor_get(void)
 {
if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
  return NULL;
diff --git a/src/lib/ecore_wayland/ecore_wl_private.h 
b/src/lib/ecore_wayland/ecore_wl_private.h
index d615f0f..581774b 100644
--- a/src/lib/ecore_wayland/ecore_wl_private.h
+++ b/src/lib/ecore_wayland/ecore_wl_private.h
@@ -97,7 +97,7 @@ void _ecore_wl_events_shutdown(void);
 
 void _ecore_wl_subsurfs_del_all(Ecore_Wl_Window *win);
 
-struct wl_compositor *ecore_wl_compositor_get(void);
-struct wl_subcompositor *ecore_wl_subcompositor_get(void);
+struct wl_compositor *_ecore_wl_compositor_get(void);
+struct wl_subcompositor *_ecore_wl_subcompositor_get(void);
 
 #endif
diff --git a/src/lib/ecore_wayland/ecore_wl_subsurf.c 
b/src/lib/ecore_wayland/ecore_wl_subsurf.c
index d59810d..dd883ac 100644
--- a/src/lib/ecore_wayland/ecore_wl_subsurf.c
+++ b/src/lib/ecore_wayland/ecore_wl_subsurf.c
@@ -30,10 +30,10 @@ ecore_wl_subsurf_create(Ecore_Wl_Window *win)
if (!win) return NULL;
if (!win-surface) return NULL;
 
-   subcomp = ecore_wl_subcompositor_get();
+   subcomp = _ecore_wl_subcompositor_get();
if (!subcomp) return NULL;
 
-   surface = wl_compositor_create_surface(ecore_wl_compositor_get());
+   surface = wl_compositor_create_surface(_ecore_wl_compositor_get());
if (!surface)
  return NULL;
 
@@ -182,7 +182,7 @@ ecore_wl_subsurf_opaque_region_set(Ecore_Wl_Subsurf *ess, 
int x, int y, int w, i
 
if ((w  0)  (h  0))
  {
-region = wl_compositor_create_region(ecore_wl_compositor_get());
+region = wl_compositor_create_region(_ecore_wl_compositor_get());
 wl_region_add(region, x, y, w, h);
 wl_surface_set_opaque_region(ess-surface, region);
 wl_region_destroy(region);
diff --git a/src/lib/ecore_wayland/ecore_wl_window.c 
b/src/lib/ecore_wayland/ecore_wl_window.c
index b924691..0de39d9 100644
--- a/src/lib/ecore_wayland/ecore_wl_window.c
+++ b/src/lib/ecore_wayland/ecore_wl_window.c
@@ -252,7 +252,7 @@ ecore_wl_window_surface_create(Ecore_Wl_Window *win)
 {
if (!win) return NULL;
if (win-surface) return win-surface;
-   win-surface = wl_compositor_create_surface(ecore_wl_compositor_get());
+   win-surface = wl_compositor_create_surface(_ecore_wl_compositor_get());
win-surface_id = wl_proxy_get_id((struct wl_proxy *)win-surface);
return win-surface;
 }
@@ -610,7 +610,7 @@ ecore_wl_window_input_region_set(Ecore_Wl_Window *win, int 
x, int y, int w, int
  struct wl_region *region = NULL;
 
  region = 
-   wl_compositor_create_region(ecore_wl_compositor_get());
+   wl_compositor_create_region(_ecore_wl_compositor_get());
  wl_region_add(region, x, y, w, h);
  wl_surface_set_input_region(win-surface, region);
  wl_region_destroy(region);
@@ -640,7 +640,7 @@ ecore_wl_window_opaque_region_set(Ecore_Wl_Window *win, int 
x, int y, int w, int
 struct wl_region *region = NULL;
 
 region = 
-  wl_compositor_create_region(ecore_wl_compositor_get());
+  wl_compositor_create_region(_ecore_wl_compositor_get());
 
 switch (win-rotation)
   {

-- 




Re: [E-devel] [EGIT] [core/efl] master 01/02: ecore/wayland: Add some getters.

2013-10-29 Thread Rafael Antognolli
On Tue, Oct 29, 2013 at 7:25 PM, Chris Michael devilho...@comcast.net wrote:
 This is looking good antognolli :) Thank you for keeping to the existing
 formatting ;)

 There is one thing that I would prefer tho .. for internal/private
 functions (ie: Not exposed API functions), can we prefix with _ please ??

Done ;)

 ie:

 +struct wl_compositor *
 +ecore_wl_compositor_get(void)
 +{
 +   if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
 + return NULL;
 +
 +   _ecore_wl_init_wait();
 +
 +   return _ecore_wl_disp-wl.compositor;
 +}


 into

 +struct wl_compositor *
 +_ecore_wl_compositor_get(void)
 +{
 +   if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
 + return NULL;
 +
 +   _ecore_wl_init_wait();
 +
 +   return _ecore_wl_disp-wl.compositor;
 +}

 The underscore just makes it really easy  quick to determine that it's
 an internal function.

 That aside, Nice work !! :)

 Cheers,
 dh

 On 10/29/13 21:18, Rafael Antognolli wrote:
 antognolli pushed a commit to branch master.

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

 commit 06d6bf0dba9f0cc20075c84507bec2cbdb96aa6b
 Author: Rafael Antognolli rafael.antogno...@intel.com
 Date:   Tue Oct 29 18:40:33 2013 -0200

  ecore/wayland: Add some getters.

  This centralizes the place where we have to wait for the init to have
  finished before first using the compositor. It's also part of the later
  step of hiding Ecore_Wl_* private structs.
 ---
   src/lib/ecore_wayland/Ecore_Wayland.h| 10 ++
   src/lib/ecore_wayland/ecore_wl.c | 22 ++
   src/lib/ecore_wayland/ecore_wl_private.h |  3 +++
   src/lib/ecore_wayland/ecore_wl_subsurf.c | 13 +++--
   src/lib/ecore_wayland/ecore_wl_window.c  |  6 +++---
   5 files changed, 45 insertions(+), 9 deletions(-)

 diff --git a/src/lib/ecore_wayland/Ecore_Wayland.h 
 b/src/lib/ecore_wayland/Ecore_Wayland.h
 index 9ba7636..7828281 100644
 --- a/src/lib/ecore_wayland/Ecore_Wayland.h
 +++ b/src/lib/ecore_wayland/Ecore_Wayland.h
 @@ -496,6 +496,16 @@ EAPI struct wl_shm *ecore_wl_shm_get(void);
   EAPI struct wl_display *ecore_wl_display_get(void);

   /**
 + * Retrieves the Compositor interface.
 + *
 + * This interface is used by clients to request the creation of surfaces and
 + * regions.
 + *
 + * @return The current wayland compositor interface
 + * @since 1.8
 + */
 +
 +/**
* Retrieves the size of the current screen.
*
* @param w where to return the width. May be NULL. Returns 0 on error.
 diff --git a/src/lib/ecore_wayland/ecore_wl.c 
 b/src/lib/ecore_wayland/ecore_wl.c
 index 451aa79..f763675 100644
 --- a/src/lib/ecore_wayland/ecore_wl.c
 +++ b/src/lib/ecore_wayland/ecore_wl.c
 @@ -272,6 +272,28 @@ ecore_wl_registry_get(void)
  return _ecore_wl_disp-wl.registry;
   }

 +struct wl_compositor *
 +ecore_wl_compositor_get(void)
 +{
 +   if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
 + return NULL;
 +
 +   _ecore_wl_init_wait();
 +
 +   return _ecore_wl_disp-wl.compositor;
 +}
 +
 +struct wl_subcompositor *
 +ecore_wl_subcompositor_get(void)
 +{
 +   if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
 + return NULL;
 +
 +   _ecore_wl_init_wait();
 +
 +   return _ecore_wl_disp-wl.subcompositor;
 +}
 +
   EAPI void
   ecore_wl_screen_size_get(int *w, int *h)
   {
 diff --git a/src/lib/ecore_wayland/ecore_wl_private.h 
 b/src/lib/ecore_wayland/ecore_wl_private.h
 index b83aae3..d615f0f 100644
 --- a/src/lib/ecore_wayland/ecore_wl_private.h
 +++ b/src/lib/ecore_wayland/ecore_wl_private.h
 @@ -97,4 +97,7 @@ void _ecore_wl_events_shutdown(void);

   void _ecore_wl_subsurfs_del_all(Ecore_Wl_Window *win);

 +struct wl_compositor *ecore_wl_compositor_get(void);
 +struct wl_subcompositor *ecore_wl_subcompositor_get(void);
 +
   #endif
 diff --git a/src/lib/ecore_wayland/ecore_wl_subsurf.c 
 b/src/lib/ecore_wayland/ecore_wl_subsurf.c
 index 4e144fa..d59810d 100644
 --- a/src/lib/ecore_wayland/ecore_wl_subsurf.c
 +++ b/src/lib/ecore_wayland/ecore_wl_subsurf.c
 @@ -23,19 +23,22 @@ ecore_wl_subsurf_create(Ecore_Wl_Window *win)
  struct wl_subsurface *subsurface;
  struct wl_surface *surface;
  Ecore_Wl_Subsurf *ess;
 +   struct wl_subcompositor *subcomp;

  LOGFN(__FILE__, __LINE__, __FUNCTION__);

  if (!win) return NULL;
  if (!win-surface) return NULL;
 -   if (!_ecore_wl_disp-wl.subcompositor) return NULL;

 -   surface = wl_compositor_create_surface(_ecore_wl_disp-wl.compositor);
 +   subcomp = ecore_wl_subcompositor_get();
 +   if (!subcomp) return NULL;
 +
 +   surface = wl_compositor_create_surface(ecore_wl_compositor_get());
  if (!surface)
return NULL;

  subsurface = wl_subcompositor_get_subsurface
 -  (_ecore_wl_disp-wl.subcompositor, surface, win-surface);
 +  (subcomp, surface, win-surface);
  if (!subsurface)
{
   wl_surface_destroy(surface);
 @@ -171,7 +174,6 @@ 

Re: [E-devel] [EGIT] [core/efl] master 01/02: ecore/wayland: Add some getters.

2013-10-29 Thread Chris Michael
On 10/29/13 21:38, Rafael Antognolli wrote:
 On Tue, Oct 29, 2013 at 7:25 PM, Chris Michael devilho...@comcast.net wrote:
 This is looking good antognolli :) Thank you for keeping to the existing
 formatting ;)

 There is one thing that I would prefer tho .. for internal/private
 functions (ie: Not exposed API functions), can we prefix with _ please ??
 Done ;)

Thanks mate ;)

dh

 ie:

 +struct wl_compositor *
 +ecore_wl_compositor_get(void)
 +{
 +   if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
 + return NULL;
 +
 +   _ecore_wl_init_wait();
 +
 +   return _ecore_wl_disp-wl.compositor;
 +}


 into

 +struct wl_compositor *
 +_ecore_wl_compositor_get(void)
 +{
 +   if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
 + return NULL;
 +
 +   _ecore_wl_init_wait();
 +
 +   return _ecore_wl_disp-wl.compositor;
 +}

 The underscore just makes it really easy  quick to determine that it's
 an internal function.

 That aside, Nice work !! :)

 Cheers,
 dh

 On 10/29/13 21:18, Rafael Antognolli wrote:
 antognolli pushed a commit to branch master.

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

 commit 06d6bf0dba9f0cc20075c84507bec2cbdb96aa6b
 Author: Rafael Antognolli rafael.antogno...@intel.com
 Date:   Tue Oct 29 18:40:33 2013 -0200

   ecore/wayland: Add some getters.

   This centralizes the place where we have to wait for the init to have
   finished before first using the compositor. It's also part of the 
 later
   step of hiding Ecore_Wl_* private structs.
 ---
src/lib/ecore_wayland/Ecore_Wayland.h| 10 ++
src/lib/ecore_wayland/ecore_wl.c | 22 ++
src/lib/ecore_wayland/ecore_wl_private.h |  3 +++
src/lib/ecore_wayland/ecore_wl_subsurf.c | 13 +++--
src/lib/ecore_wayland/ecore_wl_window.c  |  6 +++---
5 files changed, 45 insertions(+), 9 deletions(-)

 diff --git a/src/lib/ecore_wayland/Ecore_Wayland.h 
 b/src/lib/ecore_wayland/Ecore_Wayland.h
 index 9ba7636..7828281 100644
 --- a/src/lib/ecore_wayland/Ecore_Wayland.h
 +++ b/src/lib/ecore_wayland/Ecore_Wayland.h
 @@ -496,6 +496,16 @@ EAPI struct wl_shm *ecore_wl_shm_get(void);
EAPI struct wl_display *ecore_wl_display_get(void);

/**
 + * Retrieves the Compositor interface.
 + *
 + * This interface is used by clients to request the creation of surfaces 
 and
 + * regions.
 + *
 + * @return The current wayland compositor interface
 + * @since 1.8
 + */
 +
 +/**
 * Retrieves the size of the current screen.
 *
 * @param w where to return the width. May be NULL. Returns 0 on error.
 diff --git a/src/lib/ecore_wayland/ecore_wl.c 
 b/src/lib/ecore_wayland/ecore_wl.c
 index 451aa79..f763675 100644
 --- a/src/lib/ecore_wayland/ecore_wl.c
 +++ b/src/lib/ecore_wayland/ecore_wl.c
 @@ -272,6 +272,28 @@ ecore_wl_registry_get(void)
   return _ecore_wl_disp-wl.registry;
}

 +struct wl_compositor *
 +ecore_wl_compositor_get(void)
 +{
 +   if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
 + return NULL;
 +
 +   _ecore_wl_init_wait();
 +
 +   return _ecore_wl_disp-wl.compositor;
 +}
 +
 +struct wl_subcompositor *
 +ecore_wl_subcompositor_get(void)
 +{
 +   if ((!_ecore_wl_disp) || (!_ecore_wl_disp-wl.display))
 + return NULL;
 +
 +   _ecore_wl_init_wait();
 +
 +   return _ecore_wl_disp-wl.subcompositor;
 +}
 +
EAPI void
ecore_wl_screen_size_get(int *w, int *h)
{
 diff --git a/src/lib/ecore_wayland/ecore_wl_private.h 
 b/src/lib/ecore_wayland/ecore_wl_private.h
 index b83aae3..d615f0f 100644
 --- a/src/lib/ecore_wayland/ecore_wl_private.h
 +++ b/src/lib/ecore_wayland/ecore_wl_private.h
 @@ -97,4 +97,7 @@ void _ecore_wl_events_shutdown(void);

void _ecore_wl_subsurfs_del_all(Ecore_Wl_Window *win);

 +struct wl_compositor *ecore_wl_compositor_get(void);
 +struct wl_subcompositor *ecore_wl_subcompositor_get(void);
 +
#endif
 diff --git a/src/lib/ecore_wayland/ecore_wl_subsurf.c 
 b/src/lib/ecore_wayland/ecore_wl_subsurf.c
 index 4e144fa..d59810d 100644
 --- a/src/lib/ecore_wayland/ecore_wl_subsurf.c
 +++ b/src/lib/ecore_wayland/ecore_wl_subsurf.c
 @@ -23,19 +23,22 @@ ecore_wl_subsurf_create(Ecore_Wl_Window *win)
   struct wl_subsurface *subsurface;
   struct wl_surface *surface;
   Ecore_Wl_Subsurf *ess;
 +   struct wl_subcompositor *subcomp;

   LOGFN(__FILE__, __LINE__, __FUNCTION__);

   if (!win) return NULL;
   if (!win-surface) return NULL;
 -   if (!_ecore_wl_disp-wl.subcompositor) return NULL;

 -   surface = wl_compositor_create_surface(_ecore_wl_disp-wl.compositor);
 +   subcomp = ecore_wl_subcompositor_get();
 +   if (!subcomp) return NULL;
 +
 +   surface = wl_compositor_create_surface(ecore_wl_compositor_get());
   if (!surface)
 return NULL;

   subsurface = wl_subcompositor_get_subsurface
 -  (_ecore_wl_disp-wl.subcompositor, surface, win-surface);
 +  (subcomp, surface, win-surface);
   if 

Re: [E-devel] Monitor/output parameter for fullscreen

2013-10-29 Thread Gustavo Sverzut Barbieri
On Tue, Oct 29, 2013 at 7:26 PM, Rafael Antognolli antogno...@gmail.com wrote:
 Hey everyone,

 Our current API for setting a window as fullscreen does not support
 specifying which output/display/monitor should be used as fullscreen.
 However, wayland does support it.

 Would it make sense to have such parameter in the fullscreen_set API?
 Or should it be a wayland-only API?

I'd say a new function fullscreen_at_display_set(Display_ID *did) /*
NULL = unset */

the current version remains and sets on current display. Alternatively
we could just move the window to another display before making that
fullscreen, no idea if this is okay.


 For the latter case, how would we do that? Maybe exposing an API that
 allows to set the preferred output, and then when fullscreen_set is
 called, it just uses that one?

I'd say we need to make this in one go, unless we want some kind of
general assignment to one display (not just for FS mode).


 There's also a need to specify how the output should be referred to.
 Using an (unsigned) int, where 0 is the first output, 1 is the second,
 etc? Or maybe allowing to specify something like always the biggest
 one in area, or the widest one, or whatever... any thoughts?

We'd need a way to enumerate the displays (or whatever we call them,
like zone, etc), they should return their properties such as size,
position (?), capabilities (3d/stereo? color? what do we have here?)
and some string to make it easy to debug.

we have the handle to it, so it can be windowsystem agnostic
(Display_ID *, which can be implemented differently for windows, x11,
wayland...)


 That reminds me that we still have another problem. APIs such
 ecore_wl_screen_size_get() return only the screen size of the first
 monitor, not both.

same as above, this should be based on current window (if there is a
window handle) or the first one (if there is not, alterntively we can
state it will refer to screen the mouse is over, but I guess this is
incorrect and makes everything less predictable).


 What about a common API to select which output we are talking about,
 that must be called before any call that would refer to a specific
 output? The problem with this is that it would make code very
 wayland-specific :-/

how so? just use the opaque handlers and abstract stuff in there.

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

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/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: ecore_x/xlib/ecore_x_vsync.c uses dlopen and dlsym, but configure.ac only checks for this for the XCB variant. This results in linker errors when using strict linker fl

2013-10-29 Thread Albin Tonnerre
yoz pushed a commit to branch master.

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

commit 6b130d8b18e5077f4a5fe0fefe534a73053fcb08
Author: Albin Tonnerre lu...@debian.org
Date:   Tue Oct 29 23:25:54 2013 +0100

ecore_x/xlib/ecore_x_vsync.c uses dlopen and dlsym, but configure.ac
only checks for this for the XCB variant. This results in linker errors
when using strict linker flags (-Wl,-z,defs)
---
 configure.ac | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/configure.ac b/configure.ac
index 2060040..413264a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2772,6 +2772,9 @@ if test x${want_x11_xlib} = xyes ; then
 
AC_DEFINE([HAVE_ECORE_X_XLIB], [1], [Defined to 1 if Xlib is enabled.])
HAVE_ECORE_X_BACKEND=HAVE_ECORE_X_XLIB
+
+   EFL_EVAL_PKGS([ECORE_X])
+   EFL_CHECK_FUNCS([ECORE_X], [dlopen dlsym])
 fi
 
 ## XCB

-- 




[EGIT] [core/elementary] master 01/01: elm_conform.c: Use more ELM_SAFE_FREE macros.

2013-10-29 Thread Daniel Juyung Seo
seoz pushed a commit to branch master.

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

commit 8f523ed25329b25845fc8d679dac1cd9ce2542d1
Author: Daniel Juyung Seo seojuyu...@gmail.com
Date:   Tue Oct 29 22:49:43 2013 +0900

elm_conform.c: Use more ELM_SAFE_FREE macros.
---
 src/lib/elm_conform.c | 21 ++---
 1 file changed, 6 insertions(+), 15 deletions(-)

diff --git a/src/lib/elm_conform.c b/src/lib/elm_conform.c
index f73c921..9636ab8 100644
--- a/src/lib/elm_conform.c
+++ b/src/lib/elm_conform.c
@@ -248,11 +248,8 @@ _conformant_parts_swallow(Evas_Object *obj)
 evas_object_color_set(sd-virtualkeypad, 0, 0, 0, 0);
 elm_layout_content_set(obj, VIRTUALKEYPAD_PART, sd-virtualkeypad);
  }
-   else if (sd-virtualkeypad)
- {
-evas_object_del(sd-virtualkeypad);
-sd-virtualkeypad = NULL;
- }
+   else
+ ELM_SAFE_FREE(sd-virtualkeypad, evas_object_del);
 
//Clipboard
if (edje_object_part_exists(wd-resize_obj, CLIPBOARD_PART))
@@ -269,11 +266,8 @@ _conformant_parts_swallow(Evas_Object *obj)
 evas_object_color_set(sd-clipboard, 0, 0, 0, 0);
 elm_layout_content_set(obj, CLIPBOARD_PART, sd-clipboard);
  }
-   else if (sd-clipboard)
- {
-evas_object_del(sd-clipboard);
-sd-clipboard = NULL;
- }
+   else
+ ELM_SAFE_FREE(sd-clipboard, evas_object_del);
 
//Softkey
if (edje_object_part_exists(wd-resize_obj, SOFTKEY_PART))
@@ -290,11 +284,8 @@ _conformant_parts_swallow(Evas_Object *obj)
 evas_object_color_set(sd-softkey, 0, 0, 0, 0);
 elm_layout_content_set(obj, SOFTKEY_PART, sd-softkey);
  }
-   else if (sd-softkey)
- {
-evas_object_del(sd-softkey);
-sd-softkey = NULL;
- }
+   else
+ ELM_SAFE_FREE(sd-softkey, evas_object_del);
 }
 
 static Eina_Bool

-- 




[EGIT] [core/elementary] master 01/01: [image] - Added support for clicked callback on Return/space/KP_Enter key press.

2013-10-29 Thread Amitesh Singh
seoz pushed a commit to branch master.

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

commit 6ee48d9a9f3ee14c2594928b0e57c37cead27e44
Author: Amitesh Singh amitesh...@samsung.com
Date:   Wed Oct 30 08:32:43 2013 +0900

[image] - Added support for clicked callback on Return/space/KP_Enter key 
press.

Summary: [image] - Added support for clicked callback on 
Return/space/KP_Enter key press.

Reviewers: seoz, Hermet

Differential Revision: https://phab.enlightenment.org/D278
---
 src/bin/test.c   |  2 ++
 src/bin/test_image.c | 54 +++-
 src/lib/elm_image.c  | 33 
 3 files changed, 88 insertions(+), 1 deletion(-)

diff --git a/src/bin/test.c b/src/bin/test.c
old mode 100644
new mode 100755
index e6c3707..963f386
--- a/src/bin/test.c
+++ b/src/bin/test.c
@@ -209,6 +209,7 @@ void test_popup(void *data, Evas_Object *obj, void 
*event_info);
 void test_dayselector(void *data, Evas_Object *obj, void *event_info);
 void test_image(void *data, Evas_Object *obj, void *event_info);
 void test_remote_image(void *data, Evas_Object *obj, void *event_info);
+void test_click_image(void *data, Evas_Object *obj, void *event_info);
 void test_external_button(void *data, Evas_Object *obj, void *event_info);
 void test_external_slider(void *data, Evas_Object *obj, void *event_info);
 void test_external_scroller(void *data, Evas_Object *obj, void *event_info);
@@ -539,6 +540,7 @@ add_tests:
ADD_TEST(NULL, Images, Thumb, test_thumb);
ADD_TEST(NULL, Images, Image, test_image);
ADD_TEST(NULL, Images, Image Remote, test_remote_image);
+   ADD_TEST(NULL, Images, Image Click, test_click_image);
ADD_TEST(NULL, Images, Slideshow, test_slideshow);
 #ifdef HAVE_EMOTION
ADD_TEST(NULL, Images, Video, test_video);
diff --git a/src/bin/test_image.c b/src/bin/test_image.c
old mode 100644
new mode 100755
index cef56fd..3119462
--- a/src/bin/test_image.c
+++ b/src/bin/test_image.c
@@ -53,7 +53,6 @@ test_image(void *data EINA_UNUSED, Evas_Object *obj  
EINA_UNUSED, void *event_in
elm_image_resizable_set(im, EINA_TRUE, EINA_TRUE);
evas_object_size_hint_weight_set(im, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(im, EVAS_HINT_FILL, EVAS_HINT_FILL);
-
elm_box_pack_end(box, im);
evas_object_show(im);
 
@@ -133,4 +132,57 @@ test_remote_image(void *data EINA_UNUSED, Evas_Object *obj 
 EINA_UNUSED, void *e
evas_object_resize(win, 320, 480);
evas_object_show(win);
 }
+
+static void
+_img_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
+{
+   Elm_Transit *trans;
+
+   fprintf(stderr, %p - clicked\n, obj);
+
+   trans = elm_transit_add();
+   elm_transit_object_add(trans, data);
+   elm_transit_effect_rotation_add(trans, 0, 180);
+   elm_transit_duration_set(trans, 5.0);
+   elm_transit_go(trans);
+}
+
+void
+test_click_image(void *data EINA_UNUSED, Evas_Object *obj  EINA_UNUSED, void 
*event_info EINA_UNUSED)
+{
+   Evas_Object *win, *box, *im, *label;
+
+   win = elm_win_util_standard_add(image test, Image Test);
+   elm_win_autodel_set(win, EINA_TRUE);
+   elm_win_focus_highlight_enabled_set(win, EINA_TRUE);
+
+   box = elm_box_add(win);
+   evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   elm_win_resize_object_add(win, box);
+   evas_object_show(box);
+
+   im = elm_image_add(win);
+   elm_object_focus_allow_set(im, EINA_TRUE);
+   char buf[PATH_MAX];
+   snprintf(buf, sizeof(buf), %s/images/logo.png, elm_app_data_dir_get());
+   elm_image_file_set(im, buf, NULL);
+   elm_image_resizable_set(im, EINA_TRUE, EINA_TRUE);
+   evas_object_size_hint_weight_set(im, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(im, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   evas_object_smart_callback_add(im, clicked, _img_clicked_cb, im);
+   elm_box_pack_end(box, im);
+   evas_object_show(im);
+
+   label = elm_label_add(win);
+   elm_object_text_set(label, bPress Return/Space/KP_Return key on image to 
transit./b);
+   evas_object_size_hint_weight_set(label, 0.0, 0.0);
+   evas_object_size_hint_align_set(label, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   elm_box_pack_end(box, label);
+   evas_object_show(label);
+
+   elm_object_focus_set(im, EINA_TRUE);
+
+   evas_object_resize(win, 320, 480);
+   evas_object_show(win);
+}
 #endif
diff --git a/src/lib/elm_image.c b/src/lib/elm_image.c
old mode 100644
new mode 100755
index 517d340..676d801
--- a/src/lib/elm_image.c
+++ b/src/lib/elm_image.c
@@ -31,6 +31,12 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = {
 };
 
 static void
+_activate(Evas_Object *obj)
+{
+   evas_object_smart_callback_call(obj, SIG_CLICKED, NULL);
+}
+
+static void
 _on_image_preloaded(void *data,
 Evas *e __UNUSED__,
 Evas_Object *obj,
@@ -631,6 +637,32 @@ _elm_image_smart_theme(Eo *obj, void *_pd 

[EGIT] [core/efl] master 01/01: Return Eina_Bool value for method which deleting style from edje_edit object.

2013-10-29 Thread m . biliavskyi
seoz pushed a commit to branch master.

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

commit 1b802b0e3a62cabb03f41754596675c61938a682
Author: m.biliavskyi m.biliavs...@samsung.com
Date:   Wed Oct 30 08:40:11 2013 +0900

Return Eina_Bool value for method which deleting style from edje_edit 
object.

Summary: This patch start returning Eina_Bool for deleting style from edje 
edit object to catch those error.

Reviewers: cedric

CC: reutskiy.v.v, seoz

Differential Revision: https://phab.enlightenment.org/D290
---
 src/lib/edje/Edje_Edit.h | 4 +++-
 src/lib/edje/edje_edit.c | 9 -
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/src/lib/edje/Edje_Edit.h b/src/lib/edje/Edje_Edit.h
index 40626db..1a6d037 100644
--- a/src/lib/edje/Edje_Edit.h
+++ b/src/lib/edje/Edje_Edit.h
@@ -572,8 +572,10 @@ EAPI Eina_Bool edje_edit_style_add(Evas_Object *obj, const 
char *style);
  *
  * @param obj Object being edited.
  * @param style Style to delete.
+ *
+ * @return EINA_TRUE if successful, EINA_FALSE otherwise.
  */
-EAPI void edje_edit_style_del(Evas_Object *obj, const char *style);
+EAPI Eina_Bool edje_edit_style_del(Evas_Object *obj, const char *style);
 
 /** Get the list of all the tags name in the given text style.
  *
diff --git a/src/lib/edje/edje_edit.c b/src/lib/edje/edje_edit.c
index 1999f49..90cb4cf 100644
--- a/src/lib/edje/edje_edit.c
+++ b/src/lib/edje/edje_edit.c
@@ -1590,16 +1590,15 @@ edje_edit_style_add(Evas_Object * obj, const char* 
style)
return EINA_TRUE;
 }
 
-EAPI void
+EAPI Eina_Bool
 edje_edit_style_del(Evas_Object * obj, const char* style)
 {
Edje_Style *s;
 
-   GET_ED_OR_RETURN();
-   //printf(DEL STYLE '%s'\n, style);
+   GET_ED_OR_RETURN(EINA_FALSE);
 
s = _edje_edit_style_get(ed, style);
-   if (!s) return;
+   if (!s) return EINA_FALSE;
 
ed-file-styles = eina_list_remove(ed-file-styles, s);
 
@@ -1622,9 +1621,9 @@ edje_edit_style_del(Evas_Object * obj, const char* style)
free(s);
s = NULL;
s = NULL;
+   return EINA_TRUE;
 }
 
-
 EAPI Eina_List *
 edje_edit_style_tags_list_get(Evas_Object * obj, const char* style)
 {

-- 




[EGIT] [core/elementary] master 02/02: NEWS/ChangeLog: Updated NEWS/ChangeLog entry for image click addition on key event.

2013-10-29 Thread Daniel Juyung Seo
seoz pushed a commit to branch master.

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

commit e1dd6e12fce6813b5faf6352ce569e76ed4e4a0c
Author: Daniel Juyung Seo seojuyu...@gmail.com
Date:   Wed Oct 30 08:52:17 2013 +0900

NEWS/ChangeLog: Updated NEWS/ChangeLog entry for image click addition on 
key event.
---
 ChangeLog | 4 
 NEWS  | 1 +
 2 files changed, 5 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index a1657cd..fbeecc7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1723,3 +1723,7 @@
 2013-10-23  Christophe Sadoine
 
 * spinner: added signals spinner,drag,start and spinner,drag,stop.
+
+2013-10-30  Amitesh Singh (_ami_)
+
+* image: Add support for clicked callback on Return/space/KP_Enter 
key press.
diff --git a/NEWS b/NEWS
index edaf5a9..8481107 100644
--- a/NEWS
+++ b/NEWS
@@ -100,6 +100,7 @@ Additions:
* Add elm_fileselector_multi_select_set/get() and 
elm_fileselector_selected_paths_get to support multi-selection.
* Add elm_fileselector_hidden_visible_set/get() to show or hide hidden 
files/directories.
* Add signals spinner,drag,start and spinner,drag,stop to the spinner 
widget.
+   * Add support for clicked callback on Return/space/KP_Enter key press for 
image.
 
 Improvements:
 

-- 




[EGIT] [core/elementary] master 01/02: test_image.c: enhance image click example to look better.

2013-10-29 Thread Daniel Juyung Seo
seoz pushed a commit to branch master.

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

commit 00f667562bbca6b332cc3d6d140df5588c7fefc2
Author: Daniel Juyung Seo seojuyu...@gmail.com
Date:   Wed Oct 30 08:49:09 2013 +0900

test_image.c: enhance image click example to look better.

- Keep the final state.
- Rotate according to the final state.
---
 src/bin/test_image.c | 15 +--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/src/bin/test_image.c b/src/bin/test_image.c
index 3119462..37875ab 100755
--- a/src/bin/test_image.c
+++ b/src/bin/test_image.c
@@ -137,13 +137,24 @@ static void
 _img_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
 {
Elm_Transit *trans;
+   static int degree = 0;
 
fprintf(stderr, %p - clicked\n, obj);
 
trans = elm_transit_add();
elm_transit_object_add(trans, data);
-   elm_transit_effect_rotation_add(trans, 0, 180);
-   elm_transit_duration_set(trans, 5.0);
+   if (degree == 0)
+ {
+elm_transit_effect_rotation_add(trans, 0, 180);
+degree = 180;
+ }
+   else
+ {
+elm_transit_effect_rotation_add(trans, 180, 360);
+degree = 0;
+ }
+   elm_transit_duration_set(trans, 3.0);
+   elm_transit_objects_final_state_keep_set(trans, EINA_TRUE);
elm_transit_go(trans);
 }
 

-- 




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

2013-10-29 Thread Daniel Juyung Seo
On Wed, Oct 30, 2013 at 2:34 AM, Kim Shinwoo kimcinoo@gmail.com wrote:

 Hello

 Is the test result from efl/src/tests/* stuffs?
 The functional (or line) coverage would be lower than I though.
 It would be a nice point to contribute on my side. :)

 Sincerely,
 Shinwoo Kim.


Yes please Shinwoo.
Welcome your contribution :)

Daniel Juyung Seo (SeoZ)



 On Tue, Oct 29, 2013 at 8:02 PM, Stefan Schmidt s.schm...@samsung.com
 wrote:

  Hello.
 
  On 10/29/2013 10:50 AM, Cedric BAIL wrote:
   On Tue, Oct 29, 2013 at 7:01 PM, Stefan Schmidt s.schm...@samsung.com
 
   wrote:
   On 10/29/2013 09:38 AM, Cedric BAIL wrote:
   On Tue, Oct 29, 2013 at 5:31 PM, Stefan Schmidt 
 s.schm...@samsung.com
  
   wrote:
   On 10/28/2013 06:29 PM, Bertrand Jacquin wrote:
   Not that next report may give different results as the 1th
 november,
   main gcc release will be switch for gcc 4.8.1.
  
   Ah, right. Thanks for the reminder.
  
   I'm running one machine with 4.8.1 here so I don't expect to many
   problems. Just more warnings maybe.
  
   Speaking of warning, I discovered this plugins for jenkins :
   https://wiki.jenkins-ci.org/display/JENKINS/Valgrind+Plugin
  
   Do you think it would be possible to roll that along our tests ?
  
   Anything specific you expect from it? We have address-sanitizer
 running
   which I always expected to be on par with Valgrinds memcheck
   functionality. Am I wrong with this? Daniel?
  
   Am I wrong that address-sanitizer doesn't give us information on memory
   leak ?
 
  Aehm, yeah. You are right. No idea how I could forget about this. :)
 
   The graphs might be nice. I added it to my todo list and will check if
   we can have it running. Don't expect anything withing the next one or
   two weeks due to the transfer and relocation though.
  
   Yup, the grice is the neat things here. And don't worry it's not
   really urgent, can wait for tomorrow morning ;-)
 
  :)
 
  regards
  Stefan Schmidt
 
 
 
 --
  Android is increasing in popularity, but the open development platform
 that
  developers love is also attractive to malware creators. Download this
 white
  paper to learn more about secure code signing practices that can help
 keep
  Android apps secure.
 
 http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
  ___
  enlightenment-devel mailing list
  enlightenment-devel@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
 

 --
 Android is increasing in popularity, but the open development platform that
 developers love is also attractive to malware creators. Download this white
 paper to learn more about secure code signing practices that can help keep
 Android apps secure.
 http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


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

2013-10-29 Thread Cedric BAIL
Hello,

On Wed, Oct 30, 2013 at 2:34 AM, Kim Shinwoo kimcinoo@gmail.com wrote:
 Is the test result from efl/src/tests/* stuffs?

Yes, they are !

 The functional (or line) coverage would be lower than I though.
 It would be a nice point to contribute on my side. :)

For people who didn't saw those tests coverage in the past, you can
see them here :
https://build.enlightenment.org/job/nightly_efl_gcc_x86_64/lastSuccessfulBuild/artifact/coverage/html/index.html

You can locally run them and generate your own local report by
configuring efl with '--with-test=coverage' and all patch on that
matter do help !

Thanks and nice to see you around,
-- 
Cedric BAIL

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


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

2013-10-29 Thread Daniel Juyung Seo
On Wed, Oct 30, 2013 at 10:00 AM, Cedric BAIL cedric.b...@free.fr wrote:

 Hello,

 On Wed, Oct 30, 2013 at 2:34 AM, Kim Shinwoo kimcinoo@gmail.com
 wrote:
  Is the test result from efl/src/tests/* stuffs?

 Yes, they are !

  The functional (or line) coverage would be lower than I though.
  It would be a nice point to contribute on my side. :)

 For people who didn't saw those tests coverage in the past, you can
 see them here :

 https://build.enlightenment.org/job/nightly_efl_gcc_x86_64/lastSuccessfulBuild/artifact/coverage/html/index.html

 You can locally run them and generate your own local report by
 configuring efl with '--with-test=coverage' and all patch on that
 matter do help !


Well this is quite usuful.
Thanks for the information.
Elementary should have the test cases as well IMO.

Daniel Juyung Seo (SeoZ)



 Thanks and nice to see you around,
 --
 Cedric BAIL


 --
 Android is increasing in popularity, but the open development platform that
 developers love is also attractive to malware creators. Download this white
 paper to learn more about secure code signing practices that can help keep
 Android apps secure.
 http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/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: EvasGL: cleaning up unnecessary code.

2013-10-29 Thread Sung W . Park
sung pushed a commit to branch master.

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

commit 9bb4c4869199118d9d16c87edc5084e8d1d49fb7
Author: Sung W. Park dunamis.p...@samsung.com
Date:   Wed Oct 30 10:47:52 2013 +0900

EvasGL: cleaning up unnecessary code.

Cleaning up unnecessary code.
---
 src/modules/evas/engines/gl_common/evas_gl_core.c  | 50 --
 src/modules/evas/engines/gl_common/evas_gl_core.h  |  7 ---
 .../evas/engines/gl_common/evas_gl_core_private.h  |  1 -
 3 files changed, 58 deletions(-)

diff --git a/src/modules/evas/engines/gl_common/evas_gl_core.c 
b/src/modules/evas/engines/gl_common/evas_gl_core.c
index a065bd4..e5009cd 100644
--- a/src/modules/evas/engines/gl_common/evas_gl_core.c
+++ b/src/modules/evas/engines/gl_common/evas_gl_core.c
@@ -1869,38 +1869,6 @@ evgl_direct_info_clear()
rsc-direct.enabled = EINA_FALSE;
 }
 
-/*
-void
-evgl_direct_img_obj_set(Evas_Object *img, int rot)
-{
-   EVGL_Resource *rsc;
-
-   if (!(rsc=_evgl_tls_resource_get())) return;
-
-   // Normally direct rendering isn't allowed if alpha is on and
-   // rotation is not 0.  BUT, if override is on, allow it.
-   if (rot!=0)
- {
-if (evgl_engine-direct_override)
-   rsc-direct.img = img;
-else
-   rsc-direct.img = NULL;
- }
-   else
-  rsc-direct.img = img;
-}
-
-Evas_Object *
-evgl_direct_img_obj_get()
-{
-   EVGL_Resource *rsc;
-
-   if (!(rsc=_evgl_tls_resource_get())) return NULL;
-
-   return rsc-direct.img;
-}
-*/
-
 Evas_GL_API *
 evgl_api_get()
 {
@@ -1909,24 +1877,6 @@ evgl_api_get()
return gl_funcs;
 }
 
-
-/*
-void
-evgl_direct_img_clip_set(int c, int x, int y, int w, int h)
-{
-   EVGL_Resource *rsc;
-
-   if (!(rsc=_evgl_tls_resource_get())) return;
-
-   rsc-master_clip = c;
-   rsc-clip[0] = x;
-   rsc-clip[1] = y;
-   rsc-clip[2] = w;
-   rsc-clip[3] = h;
-
-}
-*/
-
 void
 evgl_direct_override_get(int *override, int *force_off)
 {
diff --git a/src/modules/evas/engines/gl_common/evas_gl_core.h 
b/src/modules/evas/engines/gl_common/evas_gl_core.h
index bbd5b24..587e8b0 100644
--- a/src/modules/evas/engines/gl_common/evas_gl_core.h
+++ b/src/modules/evas/engines/gl_common/evas_gl_core.h
@@ -33,16 +33,9 @@ int  evgl_native_surface_get(EVGL_Surface *sfc, 
Evas_Native_Surface *ns)
 Evas_GL_API *evgl_api_get();
 int  evgl_direct_rendered();
 
-
-/*
-extern void evgl_direct_img_obj_set(Evas_Object *img, int rot);
-extern Evas_Object *evgl_direct_img_obj_get();
-*/
-
 void evgl_direct_info_set(int win_w, int win_h, int rot, int img_x, 
int img_y, int img_w, int img_h, int clip_x, int clip_y, int clip_w, int 
clip_h);
 void evgl_direct_info_clear();
 
-//extern void evgl_direct_img_clip_set(int c, int x, int y, int w, int 
h);
 void evgl_direct_override_get(int *override, int *force_off);
 
 #endif //_EVAS_GL_CORE_H
diff --git a/src/modules/evas/engines/gl_common/evas_gl_core_private.h 
b/src/modules/evas/engines/gl_common/evas_gl_core_private.h
index 37e8cc5..254da65 100644
--- a/src/modules/evas/engines/gl_common/evas_gl_core_private.h
+++ b/src/modules/evas/engines/gl_common/evas_gl_core_private.h
@@ -212,7 +212,6 @@ struct _EVGL_Resource
struct {
 EVGLNative_Surface   surface;
 int  rendered;
-//Evas_Object *img;
 
 int  rot;
 int  win_w;

-- 




Re: [E-devel] Is there *real* documentation for edje?

2013-10-29 Thread Cedric BAIL
Hello,

On Wed, Oct 30, 2013 at 6:04 AM, Guillaume Friloux
guillaume.fril...@gmail.com wrote:
 Le 29/10/2013 20:14, Robert Heller a écrit :
 I am trying to write an alternitive version of the Enlightenment's 'start
 menu', where instead of a cascade menu it is a three column thingy (I am not
 sure what this sort of menu is called), something like this (from Mint):

 ftp://ftp.deepsoft.com/ftp/pub/deepwoods/Other/RibbonMenu.png

 But I am having a hard time figuring out how to do this.  The documentation
 for edje leaves a lot to be desired and the API for enlightenment itself is
 pretty much not documented at all.  I am a skilled C programmer, but without
 useful documentation it is very hard to program...

 For people trying to look linked image :
 ftp://ftp.deepsoft.com/pub/deepwoods/Other/RibbonMenu.png
 As i am not involved in GUI libs of EFLs, ill let others answer you.

I am not sure this is doable with just theme in E. It seems to not
only change the look of the menu, but also its navigation. I may be
wrong, but it may require to write a new module to have this specific
menu.
-- 
Cedric BAIL

--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [bindings/python/python-efl] master 01/03: Eo: Speed up, and fix a cornercase in, _properties_from_keyword_args.

2013-10-29 Thread Kai Huuhko
kuuko pushed a commit to branch master.

http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=be547283f0b832c7027e7a1e184a0ac8507f65d9

commit be547283f0b832c7027e7a1e184a0ac8507f65d9
Author: Kai Huuhko kai.huu...@gmail.com
Date:   Wed Oct 30 03:12:35 2013 +0200

Eo: Speed up, and fix a cornercase in, _properties_from_keyword_args.

hasattr tries getattr which can be variedly slow, so check dict instead.

This also fixes it in cases where the property doesn't have a __get__
function.
---
 efl/eo/efl.eo.pyx | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/efl/eo/efl.eo.pyx b/efl/eo/efl.eo.pyx
index 45a113e..b0d40fe 100644
--- a/efl/eo/efl.eo.pyx
+++ b/efl/eo/efl.eo.pyx
@@ -200,8 +200,9 @@ cdef class Eo(object):
 Py_INCREF(self)
 
 cdef void _set_properties_from_keyword_args(self, dict kwargs) except *:
+cdef list cls_list = dir(self)
 for k, v in kwargs.items():
-assert hasattr(self, k), %s has no attribute with the name %s. % 
(self, k)
+assert k in cls_list, %s has no attribute with the name %s. % 
(self, k)
 setattr(self, k, v)
 
 def is_deleted(self):

-- 




[EGIT] [bindings/python/python-efl] master 02/03: Elementary.actionslider: Fix a string return value to be unicode

2013-10-29 Thread Kai Huuhko
kuuko pushed a commit to branch master.

http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=db4483a88c14031deaf0fdb6deeffb31fac8001d

commit db4483a88c14031deaf0fdb6deeffb31fac8001d
Author: Kai Huuhko kai.huu...@gmail.com
Date:   Wed Oct 30 04:27:18 2013 +0200

Elementary.actionslider: Fix a string return value to be unicode
---
 efl/elementary/actionslider.pyx | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/efl/elementary/actionslider.pyx b/efl/elementary/actionslider.pyx
index 63b210f..54d6f5b 100644
--- a/efl/elementary/actionslider.pyx
+++ b/efl/elementary/actionslider.pyx
@@ -118,10 +118,10 @@ cdef class Actionslider(LayoutClass):
 
 
 def __get__(self):
-return elm_actionslider_selected_label_get(self.obj)
+return _ctouni(elm_actionslider_selected_label_get(self.obj))
 
 def selected_label_get(self):
-return elm_actionslider_selected_label_get(self.obj)
+return _ctouni(elm_actionslider_selected_label_get(self.obj))
 
 property indicator_pos:
 Indicator position.

-- 




[EGIT] [bindings/python/python-efl] master 03/03: Elementary: Start making examples more examplary.

2013-10-29 Thread Kai Huuhko
kuuko pushed a commit to branch master.

http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=b3f501b387b2ebad838f90c9da8d7fbfd287134c

commit b3f501b387b2ebad838f90c9da8d7fbfd287134c
Author: Kai Huuhko kai.huu...@gmail.com
Date:   Wed Oct 30 04:28:55 2013 +0200

Elementary: Start making examples more examplary.
---
 examples/elementary/test.py  |  99 ++--
 examples/elementary/test_3d.py   | 121 ++-
 examples/elementary/test_access.py   |  47 +++---
 examples/elementary/test_actionslider.py | 100 ++---
 examples/elementary/test_bg.py   |  68 -
 examples/elementary/test_box.py  | 250 +++
 6 files changed, 239 insertions(+), 446 deletions(-)

diff --git a/examples/elementary/test.py b/examples/elementary/test.py
index c05682b..42e0587 100755
--- a/examples/elementary/test.py
+++ b/examples/elementary/test.py
@@ -3,7 +3,7 @@
 
 import logging
 elog = logging.getLogger(efl)
-elog.setLevel(logging.DEBUG)
+elog.setLevel(logging.INFO)
 
 elog_form = logging.Formatter([%(name)s] %(levelname)s - %(message)s)
 elog_hdlr = logging.StreamHandler()
@@ -12,15 +12,15 @@ elog_hdlr.setFormatter(elog_form)
 elog.addHandler(elog_hdlr)
 
 eolog = logging.getLogger(efl.eo)
-eolog.setLevel(logging.DEBUG)
+eolog.setLevel(logging.INFO)
 
 import os
 
-from efl import evas
+from efl.evas import EVAS_HINT_EXPAND, EVAS_HINT_FILL
 from efl import elementary
-from efl.elementary.window import Window
+from efl.elementary.window import StandardWindow
 from efl.elementary.background import Background
-from efl.elementary.box import Box
+from efl.elementary.box import Box, ELM_BOX_LAYOUT_FLOW_HORIZONTAL
 from efl.elementary.button import Button
 from efl.elementary.frame import Frame
 from efl.elementary.label import Label
@@ -28,7 +28,10 @@ from efl.elementary.check import Check
 from efl.elementary.entry import Entry
 from efl.elementary.scroller import Scroller
 
-elog.setLevel(logging.INFO)
+elog.setLevel(logging.DEBUG)
+
+EXPAND_BOTH = EVAS_HINT_EXPAND, EVAS_HINT_EXPAND
+FILL_BOTH = EVAS_HINT_FILL, EVAS_HINT_FILL
 
 items = [
  (Core Libs, [
@@ -204,25 +207,24 @@ def selected_cb(o, mod, func):
 def menu_create(search, win):
 tbx.clear()
 for category in items:
-frame = Frame(win)
-frame.size_hint_weight_set(evas.EVAS_HINT_EXPAND, 
evas.EVAS_HINT_EXPAND)
-frame.size_hint_align_set(evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL)
-frame.text = category[0]
+frame = Frame(win,
+size_hint_weight=EXPAND_BOTH, size_hint_align=FILL_BOTH,
+text=category[0]
+)
 frame.show()
 tbx.pack_end(frame)
 
-tbx2 = Box(win)
-tbx2.layout_set(elementary.ELM_BOX_LAYOUT_FLOW_HORIZONTAL)
-tbx2.size_hint_weight_set(evas.EVAS_HINT_EXPAND, 0.0)
-tbx2.size_hint_align_set(evas.EVAS_HINT_FILL, 0.0)
+tbx2 = Box(win, layout=ELM_BOX_LAYOUT_FLOW_HORIZONTAL,
+size_hint_weight=(EVAS_HINT_EXPAND, 0.0),
+size_hint_align=(EVAS_HINT_FILL, 0.0)
+)
 frame.content_set(tbx2)
 tbx2.show()
 
 cnt = 0
 for test in category[1]:
 if (search == None) or (test[0].lower().find(search.lower())  -1):
-bt = Button(win)
-bt.text = test[0]
+bt = Button(win, text=test[0])
 bt.callback_clicked_add(selected_cb, test[1], test[2])
 bt.show()
 tbx2.pack_end(bt)
@@ -245,71 +247,58 @@ def cb_filter(en, win):
 
 if __name__ == __main__:
 elementary.init()
-win = Window(test, elementary.ELM_WIN_BASIC)
-win.title_set(python-elementary test application)
+win = StandardWindow(test, python-elementary test application)
 win.callback_delete_request_add(destroy, test1, test2, str3=test3, 
str4=test4)
 
-bg = Background(win)
-win.resize_object_add(bg)
-bg.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
-bg.show()
-
-box0 = Box(win)
-box0.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND)
+box0 = Box(win, size_hint_weight=EXPAND_BOTH)
 win.resize_object_add(box0)
 box0.show()
 
-fr = Frame(win)
-fr.text_set(Information)
-box0.pack_end(fr)
-fr.show()
-
 lb = Label(win)
-lb.text_set(Please select a test from the list belowbr
- by clicking the test button to show thebr
- test window.)
-fr.content_set(lb)
+lb.text =   Please select a test from the list belowbr \
+by clicking the test button to show thebr \
+test window.
 lb.show()
 
-tg = Check(win)
-tg.style = toggle
-tg.text = UI-Mirroring:
+fr = Frame(win, text=Information, content=lb)
+box0.pack_end(fr)
+fr.show()
+
+tg = Check(win, style=toggle, text=UI-Mirroring:)
 tg.callback_changed_add(cb_mirroring)
  

Re: [E-devel] Is there *real* documentation for edje?

2013-10-29 Thread The Rasterman
On Tue, 29 Oct 2013 15:14:07 -0400 Robert Heller hel...@deepsoft.com said:

 I am trying to write an alternitive version of the Enlightenment's 'start 
 menu', where instead of a cascade menu it is a three column thingy (I am not 
 sure what this sort of menu is called), something like this (from Mint):
 
 ftp://ftp.deepsoft.com/ftp/pub/deepwoods/Other/RibbonMenu.png

well that link doesn't work... no data. :)

 But I am having a hard time figuring out how to do this.  The documentation 
 for edje leaves a lot to be desired and the API for enlightenment itself is 
 pretty much not documented at all.  I am a skilled C programmer, but without 
 useful documentation it is very hard to program...

edje has a full reference. people have pointed to it already. there are intro
docs all around. but like most things - the rest is look at examples and build
from there. i personally find documentation obtuse and wasteful compared to
examples. you may perfer wandering through docs. i spent my early unix learning
years reading every manual page i could find - but frankly, reading someone
elses shell scripts and then just referring to a manual for reference was by
far easier and more productive..

now what i think your core problem here is, that you can't figure out how to do
what you want.. because you literally can't do it in edje. you want to
fundamentally change the behaviour and layout of a menu. not just re-shuffle
some things, but change its core and that means you need to head off into the
land of code. e_menu.c is where the entire menu code is. you wish to have
similar functionality but different arrangement and that is a whole new kettle
of fish. edje is merely a building-block to produce the gui elements you then
lay out in code.

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


--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Eo API change and C++ binding

2013-10-29 Thread daniel.za...@samsung.com
Hi Felipe,

I think Cedric told you but we have a project for the boilerplate that 
is called Eolian. You describe a Eo class in JSON format (at least for 
the moment according to the vote that was in the ml) and then can 
generate the EO1/2 API functions, legacy functions, classes information 
in live access and bindings.
So I think your project and ours are just overlapping and will create 
more issues than help everyone.

What I understood is that you had to create all the Eina types in C++ 
and a few examples of the classes in C++ and we take your work and 
generate it from our meta-data.

Please update me.

Thank you
Daniel (JackDanielZ)


On 10/29/2013 01:17 AM, Vinícius dos Santos Oliveira wrote:
 Em Seg, 2013-10-28 às 21:03 -0200, Felipe Magno de Almeida escreveu:

 Also,

 The C++ binding is not just the generated headers, there is going to
 be a EINA-specific C++ API and more classes that will help with MVC
 and other helpful abstractions that aren't attainable with generated
 code. The generated C++, though, gives a type-safe layer and makes
 evolution easier and safer as EFL evolves.

 If good documentation is written, then I'll want to use EFL++ instead of
 Qt in my now-stalled bomberman-like game somewhere in the future.

 I hope you succeed with this work.
 =)




 --
 Android is increasing in popularity, but the open development platform that
 developers love is also attractive to malware creators. Download this white
 paper to learn more about secure code signing practices that can help keep
 Android apps secure.
 http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk


 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel