Re: [E-devel] Coding a 'modal' dialog in E17

2013-09-11 Thread Cedric BAIL
On Wed, Sep 11, 2013 at 12:45 PM, Robert Heller hel...@deepsoft.com wrote:
 At Wed, 11 Sep 2013 03:25:57 +0200 Enlightenment developer list 
 enlightenment-devel@lists.sourceforge.net wrote:
 On Tue, Sep 10, 2013 at 7:45 PM, Robert Heller hel...@deepsoft.com wrote:
  At Tue, 10 Sep 2013 17:51:38 +0100 Michael Blumenkrantz 
  michael.blumenkra...@gmail.com wrote:
  On Tue, 10 Sep 2013 12:34:21 -0400
  Robert Heller hel...@deepsoft.com wrote:
 
   I am in the process of modifying E17 (I want to add so additional
   functionality to the file manager).  One of the things I need to be 
   able to do
   is have a 'modal' dialog, that is a dislog box that grabs the focus and 
   causes
   the program (the file manager) to wait.  I want events to be processed, 
   but I
   want psuedo code like this:
  
  dialog = make_dialog(...);
  show(dialog);
  wait_for(dialog);
  
   The 'wait_for()' call would not return until the OK button or Cancel 
   (close)
   button on the dialog has been clicked.  It is not clear how to do this 
   -- the
   documentation does not seem to cover this case (or I can't it in the
   documentation).
  
   Any pointers would be helpful.  Thanks in advance.
 
  yeahhh you can't do that.
 
  what you CAN do is something like the
  uhh...modules/conf_theme/e_int_config_wallpaper.c dialog does. you set the
  parent dialog (though make sure you do this AFTER you show both dialogs or
  it won't work) to set up your modal: the first param is your intended 
  modal,
  the second is the parent window which is getting blocked. then you can
  basically just wait for the modal to die and you'll know that there will 
  be
  no events on the parent.
 
  I'll say this, however: we STRONGLY discourage the use of modal dialogs in
  e. unless you have a really good reason for it, I'm unlikely to accept any
  patches which introduce modal dialogs.
 
  Yes, I fully understand the 'evils' of modal dialogs, but there are times 
  when
  it is the only option. In this case I am interfacing to a library that has 
  a
  callback that wants some input (a passphrase) and I cannot just return 
  without
  the passphrase and I don't know (in advance) if the passphrase is even 
  needed
  or what the hint for the passphrase is (this info gets passed into the
  callback). And the callback might be called again if the passphrase is 
  wrong.
  I may implement this with a subprocess, but then the subprocess itself will
  need to have a modal dialog. I am only interested a *local* type modal 
  dialog.

 I did have exactly the same problem with all the stupid ssh library
 out there that where never designed to be integrated into a GUI. At
 the end, solution where tested in that order :
 - Use the library from a thread.
 - Implementation of ecore_coroutine, to be able to put a function in
 standby and go back to the main loop.
 - Use ssh binary and ecore_exe.
 - Implement a ssh library that does it right.

 I am now working on the fourth solution, all previous attemps resulted
 in failure. Take it as an hint on what you are trying to do and maybe
 jump directly to that solution. I have no idea what your library is
 doing, but I can tell you, it will be painful !

 It was *easy* when I interfaced this library with Tcl/Tk. (Tcl/Tk handles
 events and event loops differently -- one of the big advanges of a scripting
 language.)  The library is actually libgpgme.  I *guess* I could fork a Tcl/Tk
 script, except the dialog box that will pop up for the passphrase will look
 totally out-of-place (won't be visually compatible with E).

Tcl/Tk was a scripting language :-) That can hide a lot of things. As
for libgpgme, it is yet another library that wasn't designed for GUI
in mind. So you can try with Ecore coroutine if you want. Also
according to the documentation, it seems possible that libgpgme
trigger the execution of a daemon to ask for the pass phrase. That
smell like it could completely block E if that code was triggered from
E...
-- 
Cedric BAIL

--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] SVN to Git: final few steps

2013-09-11 Thread Tom Hacohen
On Mon, Sep 9, 2013 at 4:50 PM, Tom Hacohen tom.haco...@samsung.com wrote:

 Dear friends and enemies,

 As you may have noticed, we have changed our whole infrastructure to
 from SVN to Git. In that process we have migrated most of the individual
 repositories (directories) from our SVN to their respective Git
 repositories. We have reached a point in which people rarely ever commit
 to our SVN repository.

 Therefore, it is time to ditch to SVN altogether. We are currently
 working on migrating the whole SVN repository (with full history) to a
 read only Git repository on our server. This change will happen sometime
 this week.

 This means, that as of now, you shouldn't commit to SVN any more (we
 will change that to be read only soon). Please let me know about any
 projects you would like to see migrated to Git that we haven't migrated
 already, and we will do our best to migrate them as soon as possible.


 Hey,

I've finished migrating the svn repo to git. It's available at:
http://git.enlightenment.org/legacy/subversion-history.git/
Please use this from now on, or more precisely, please don't use this at
all.
Our SVN is dead, get over it.

Please let me know if you see any issues with the migration.

Cheers,
Tom.
--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] Coding a 'modal' dialog in E17

2013-09-11 Thread The Rasterman
On Tue, 10 Sep 2013 23:45:20 -0400 Robert Heller hel...@deepsoft.com said:

 At Wed, 11 Sep 2013 03:25:57 +0200 Enlightenment developer list
 enlightenment-devel@lists.sourceforge.net wrote:
 
  
  On Tue, Sep 10, 2013 at 7:45 PM, Robert Heller hel...@deepsoft.com wrote:
   At Tue, 10 Sep 2013 17:51:38 +0100 Michael Blumenkrantz
   michael.blumenkra...@gmail.com wrote:
   On Tue, 10 Sep 2013 12:34:21 -0400
   Robert Heller hel...@deepsoft.com wrote:
  
I am in the process of modifying E17 (I want to add so additional
functionality to the file manager).  One of the things I need to be
able to do is have a 'modal' dialog, that is a dislog box that grabs
the focus and causes the program (the file manager) to wait.  I want
events to be processed, but I want psuedo code like this:
   
   dialog = make_dialog(...);
   show(dialog);
   wait_for(dialog);
   
The 'wait_for()' call would not return until the OK button or Cancel
(close) button on the dialog has been clicked.  It is not clear how to
do this -- the documentation does not seem to cover this case (or I
can't it in the documentation).
   
Any pointers would be helpful.  Thanks in advance.
  
   yeahhh you can't do that.
  
   what you CAN do is something like the
   uhh...modules/conf_theme/e_int_config_wallpaper.c dialog does. you set
   the parent dialog (though make sure you do this AFTER you show both
   dialogs or it won't work) to set up your modal: the first param is your
   intended modal, the second is the parent window which is getting
   blocked. then you can basically just wait for the modal to die and
   you'll know that there will be no events on the parent.
  
   I'll say this, however: we STRONGLY discourage the use of modal dialogs
   in e. unless you have a really good reason for it, I'm unlikely to
   accept any patches which introduce modal dialogs.
  
   Yes, I fully understand the 'evils' of modal dialogs, but there are times
   when it is the only option. In this case I am interfacing to a library
   that has a callback that wants some input (a passphrase) and I cannot
   just return without the passphrase and I don't know (in advance) if the
   passphrase is even needed or what the hint for the passphrase is (this
   info gets passed into the callback). And the callback might be called
   again if the passphrase is wrong. I may implement this with a subprocess,
   but then the subprocess itself will need to have a modal dialog. I am
   only interested a *local* type modal dialog.
  
  I did have exactly the same problem with all the stupid ssh library
  out there that where never designed to be integrated into a GUI. At
  the end, solution where tested in that order :
  - Use the library from a thread.
  - Implementation of ecore_coroutine, to be able to put a function in
  standby and go back to the main loop.
  - Use ssh binary and ecore_exe.
  - Implement a ssh library that does it right.
  
  I am now working on the fourth solution, all previous attemps resulted
  in failure. Take it as an hint on what you are trying to do and maybe
  jump directly to that solution. I have no idea what your library is
  doing, but I can tell you, it will be painful !
 
 It was *easy* when I interfaced this library with Tcl/Tk. (Tcl/Tk handles
 events and event loops differently -- one of the big advanges of a scripting
 language.)  The library is actually libgpgme.  I *guess* I could fork a
 Tcl/Tk script, except the dialog box that will pop up for the passphrase will
 look totally out-of-place (won't be visually compatible with E).

if you hope that in doing system() you can block and wait for the dialog and it
will work... you will be wrong. :)


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


--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 01/01: elc_fileselector : Select path which user typed on path_entry.

2013-09-11 Thread ryuan Choi
Yes, it doesn't send selected signal if wrong path is given in path entry.

Regards, Ryuan Choi


2013/9/11 ChunEon Park her...@naver.com

 Hi, As far as i understood your patch,
 Now, it doesn't send selected signal to apps if the path is not exist?

 
 -Regards, Hermet-

 -Original Message-
 From: Ryuan Choi - Enlightenment Gitno-re...@enlightenment.org
 To: enlightenment-...@lists.sourceforge.net;
 Cc:
 Sent: 2013-09-10 (화) 19:12:21
 Subject: [EGIT] [core/elementary] master 01/01: elc_fileselector : Select
 path which user typed on path_entry.

 ryuan pushed a commit to branch master.

 commit 74f308df90026fca68ef366f68a12ce9741b2b2b
 Author: Ryuan Choi ryuan.choi@gmail.com
 Date:   Tue Sep 10 18:47:30 2013 +0900

 elc_fileselector : Select path which user typed on path_entry.

 Summary:
 In fileselector, user can write directory path or file path which they
 want.
 If then, fileselector navigates path when directory path is given,
 but just send a selected signal without real selection when file
 path or wrong path is given.

 With this path,
 - fileselector will navigate (if needed) and select file with signal
 when file path is given.
 - no action when wrong path is given.
 ---
  ChangeLog5 ++
  NEWS 1 +
  src/lib/elc_fileselector.c 149
 --
  src/lib/elm_widget_fileselector.h1 +
  4 files changed, 118 insertions(+), 38 deletions(-)

 diff --git a/ChangeLog b/ChangeLog
 index d957f29..9b701ef 100644
 --- a/ChangeLog
 +++ b/ChangeLog
 @@ -1598,3 +1598,8 @@

  * ProgressBar: Added support for more than one progress status
  in  a
single progress bar
 +
 +2013-09-10  Ryuan Choi (ryuan)
 +
 +* elc_fileselector : Navigate (if needed) and select file with
 selected
 +signal when user typed file path on path_entry.
 diff --git a/NEWS b/NEWS
 index 2a3ed46..b14ad6c 100644
 --- a/NEWS
 +++ b/NEWS
 @@ -277,6 +277,7 @@ Fixes:
 This prevents the asynchronous states between ime and conformant.
 * Flip : Fix the flip page to not flip on a direction if the direction
 is disabled.
 * Spinner : change part name to access.text from access_text on
 default style.
 +   * Fix fileselector only send selected signal without selection when
 file path is typed on the path entry.

  Removals:

 diff --git a/src/lib/elc_fileselector.c b/src/lib/elc_fileselector.c
 index ef73b6a..742ac30 100644
 --- a/src/lib/elc_fileselector.c
 +++ b/src/lib/elc_fileselector.c
 @@ -393,6 +393,7 @@ _ls_main_cb(void *data,
  const Eina_File_Direct_Info *info)
  {
 Listing_Request *lreq = data;
 +   Elm_Object_Item *item;
 int itcn = ELM_FILE_UNKNOW;

 if (eio_file_check(handler)) return;
 @@ -416,16 +417,26 @@ _ls_main_cb(void *data,
   }

 if (lreq-sd-mode == ELM_FILESELECTOR_LIST)
 - elm_genlist_item_sorted_insert(lreq-sd-files_list, list_itc[itcn],
 -eina_stringshare_add(info-path),
 -lreq-parent_it,
 -((lreq-sd-expand)  (itcn ==
 ELM_DIRECTORY))
 -? ELM_GENLIST_ITEM_TREE :
 ELM_GENLIST_ITEM_NONE,
 -_file_list_cmp, NULL, NULL);
 + {
 +item = elm_genlist_item_sorted_insert(lreq-sd-files_list,
 list_itc[itcn],
 +
  eina_stringshare_add(info-path),
 +  lreq-parent_it,
 +  ((lreq-sd-expand) 
 (itcn == ELM_DIRECTORY))
 +  ? ELM_GENLIST_ITEM_TREE :
 ELM_GENLIST_ITEM_NONE,
 +  _file_list_cmp, NULL, NULL);
 +
 +if (lreq-selected  !strcmp(info-path, lreq-selected))
 +  elm_genlist_item_selected_set(item, EINA_TRUE);
 + }
 else if (lreq-sd-mode == ELM_FILESELECTOR_GRID)
 - elm_gengrid_item_sorted_insert(lreq-sd-files_grid, grid_itc[itcn],
 -eina_stringshare_add(info-path),
 -_file_grid_cmp, NULL, NULL);
 + {
 +item = elm_gengrid_item_sorted_insert(lreq-sd-files_grid,
 grid_itc[itcn],
 +
  eina_stringshare_add(info-path),
 +  _file_grid_cmp, NULL, NULL);
 +
 +if (lreq-selected  !strcmp(info-path, lreq-selected))
 +  elm_gengrid_item_selected_set(item, EINA_TRUE);
 + }
  }

  static void
 @@ -434,6 +445,7 @@ _listing_request_cleanup(Listing_Request *lreq)
 EINA_REFCOUNT_UNREF(lreq-sd) _elm_fileselector_smart_del_do(lreq-sd);

 eina_stringshare_del(lreq-path);
 +   eina_stringshare_del(lreq-selected);
 free(lreq);
  }

 @@ -468,7 +480,8 @@ _ls_error_cb(void *data, Eio_File *handler, int error
 __UNUSED__)
  static void
  _populate(Evas_Object 

Re: [E-devel] [Enlightenment-release] Releases pending

2013-09-11 Thread Bertrand Jacquin
Hi,

On 2013-09-11 00:36, Eduardo Lima (Etrunko) wrote:
 We now have tarballs up for testing in under the new pre-releases 
 directory:
 
 http://download.enlightenment.org/pre-releases/efl-1.7.9/
 http://download.enlightenment.org/pre-releases/enlightenment-0.17.5/

IMHO, it's bad to name tarball 'e_dbus-1.7.9.tar.bz2' (here for e_dbus 
exemple). Think about google bot and other crawlers that will put in the 
first result 'e_dbus-1.7.9.tar.bz2' corresponding to the pre-release 
directory, and this even when release will happenning, people will not 
see pre-releases subdirectory at first.

Also, it may lead to misunderstood from people that will already have a 
file named e_dbus-1.7.9.tar.bz2 in their directory.

Naming them e_dbus-1.7.9_pre1.Tar.bz2 in preferable or anything else 
that is not the final tarball name.

--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Enlightenment-release] Releases pending

2013-09-11 Thread Jeff Hoogland
I'll shove these updates in the Bodhi testing repo tomorrow night. They
should get some good testing there.

Are you all just skipping a 1.7.8 release for efls then?

~Jeff Hoogland
Bodhi Linux - http://www.bodhilinux.com/
On Sep 11, 2013 8:00 AM, Bertrand Jacquin be...@meleeweb.net wrote:

 Hi,

 On 2013-09-11 00:36, Eduardo Lima (Etrunko) wrote:
  We now have tarballs up for testing in under the new pre-releases
  directory:
 
  http://download.enlightenment.org/pre-releases/efl-1.7.9/
  http://download.enlightenment.org/pre-releases/enlightenment-0.17.5/

 IMHO, it's bad to name tarball 'e_dbus-1.7.9.tar.bz2' (here for e_dbus
 exemple). Think about google bot and other crawlers that will put in the
 first result 'e_dbus-1.7.9.tar.bz2' corresponding to the pre-release
 directory, and this even when release will happenning, people will not
 see pre-releases subdirectory at first.

 Also, it may lead to misunderstood from people that will already have a
 file named e_dbus-1.7.9.tar.bz2 in their directory.

 Naming them e_dbus-1.7.9_pre1.Tar.bz2 in preferable or anything else
 that is not the final tarball name.


 --
 How ServiceNow helps IT people transform IT departments:
 1. Consolidate legacy IT systems to a single system of record for IT
 2. Standardize and globalize service processes across IT
 3. Implement zero-touch automation to replace manual, redundant tasks
 http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Enlightenment-release] Releases pending

2013-09-11 Thread Eduardo Lima (Etrunko)
2013/9/11 Jeff Hoogland jeffhoogl...@linux.com:
 I'll shove these updates in the Bodhi testing repo tomorrow night. They
 should get some good testing there.

 Are you all just skipping a 1.7.8 release for efls then?


1.7.8 was released together with E 0.17.4 last month:

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



-- 
Eduardo de Barros Lima ◤✠◢
ebl...@gmail.com

--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Enlightenment-release] Releases pending

2013-09-11 Thread Jeff Hoogland
Right, brainfart moment.

Any ideas when we will see a 1.8.0 EFL release?

~Jeff Hoogland
Bodhi Linux - http://www.bodhilinux.com/
On Sep 11, 2013 8:52 AM, Eduardo Lima (Etrunko) ebl...@gmail.com wrote:

 2013/9/11 Jeff Hoogland jeffhoogl...@linux.com:
  I'll shove these updates in the Bodhi testing repo tomorrow night. They
  should get some good testing there.
 
  Are you all just skipping a 1.7.8 release for efls then?
 

 1.7.8 was released together with E 0.17.4 last month:


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



 --
 Eduardo de Barros Lima ◤✠◢
 ebl...@gmail.com


 --
 How ServiceNow helps IT people transform IT departments:
 1. Consolidate legacy IT systems to a single system of record for IT
 2. Standardize and globalize service processes across IT
 3. Implement zero-touch automation to replace manual, redundant tasks
 http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/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 02/02: eo: add eo_childrens_iterator_new().

2013-09-11 Thread Gustavo Lima Chaves
* Cedric Bail - Enlightenment Git no-re...@enlightenment.org [2013-09-11 
00:11:20 -0700]:

 cedric pushed a commit to branch master.

 commit cd77853222d1c11d71da4ca9066abe35390dcd5e
 Author: Cedric Bail cedric.b...@samsung.com
 Date:   Wed Sep 11 16:08:06 2013 +0900

 eo: add eo_childrens_iterator_new().

s/childrens/children/ ?


 The goal would be to replace the smart children list and friends. The
 problem is that they differ in content. Smart children and Eo children are
 the same, but Elm children and them differ. If I put this function as a
 virtual, it would be possible to override the list of children and if we
 start using it in Evas render loop, that could result in weird behavior.

 I have added the use of a simplified Eina_Trash mempool kind of feature
 to have some fast path for allocation if we start using it in Evas render
 loop.
 ---
  src/lib/eo/Eo.h |   9 
  src/lib/eo/eo.c | 113 
 
  src/lib/eo/eo_private.h |  26 +++
  3 files changed, 130 insertions(+), 18 deletions(-)

 diff --git a/src/lib/eo/Eo.h b/src/lib/eo/Eo.h
 index 049dcaa..4921f6d 100644
 --- a/src/lib/eo/Eo.h
 +++ b/src/lib/eo/Eo.h
 @@ -797,6 +797,15 @@ EAPI Eo *eo_add_internal(const char *file, int line, 
 const Eo_Class *klass, Eo *
  EAPI Eo *eo_parent_get(const Eo *obj);

  /**
 + * @brief Get an iterator on all childrens
 + * @param obj the object to get the childrens from.
 + * @return a pointer to an Eina_Iterator containing all the childrens.
 + *
 + * @see eo_parent_set()
 + */
 +EAPI Eina_Iterator *eo_childrens_iterator_new(Eo *obj_id);
 +
 +/**
   * @brief Set the parent of an object
   * @param obj the object to get the parent of.
   * @param parent the new parent.
 diff --git a/src/lib/eo/eo.c b/src/lib/eo/eo.c
 index 835eb86..1985a57 100644
 --- a/src/lib/eo/eo.c
 +++ b/src/lib/eo/eo.c
 @@ -687,7 +687,7 @@ eo_class_funcs_set(Eo_Class *klass_id, const 
 Eo_Op_Func_Description *func_descs)
  static void
  eo_class_free(_Eo_Class *klass)
  {
 -   void *object;
 +   void *data;

 if (klass-constructed)
   {
 @@ -697,10 +697,14 @@ eo_class_free(_Eo_Class *klass)
  _dich_func_clean_all(klass);
   }

 -   EINA_TRASH_CLEAN(klass-trash, object)
 - free(object);
 +   EINA_TRASH_CLEAN(klass-objects.trash, data)
 + free(data);

 -   eina_lock_free(klass-trash_lock);
 +   EINA_TRASH_CLEAN(klass-iterators.trash, data)
 + free(data);
 +
 +   eina_lock_free(klass-objects.trash_lock);
 +   eina_lock_free(klass-iterators.trash_lock);

 free(klass);
  }
 @@ -893,7 +897,8 @@ eo_class_new(const Eo_Class_Description *desc, const 
 Eo_Class *parent_id, ...)

 klass = calloc(1, _eo_class_sz + extn_sz + mro_sz + mixins_sz);
 EINA_MAGIC_SET(klass, EO_CLASS_EINA_MAGIC);
 -   eina_lock_new(klass-trash_lock);
 +   eina_lock_new(klass-objects.trash_lock);
 +   eina_lock_new(klass-iterators.trash_lock);
 klass-parent = parent;
 klass-desc = desc;
 klass-extensions = (const _Eo_Class **) ((char *) klass + _eo_class_sz);
 @@ -1077,6 +1082,96 @@ eo_parent_set(Eo *obj_id, const Eo *parent_id)
 return EINA_TRUE;
  }

 +/* Children accessor */
 +typedef struct _Eo_Children_Iterator Eo_Children_Iterator;
 +struct _Eo_Children_Iterator
 +{
 +   Eina_Iterator iterator;
 +   Eina_List *current;
 +   _Eo *obj;
 +   Eo *obj_id;
 +
 +};
 +
 +static Eina_Bool
 +_eo_children_iterator_next(Eo_Children_Iterator *it, void **data)
 +{
 +   if (!it-current) return EINA_FALSE;
 +
 +   if (data) *data = eina_list_data_get(it-current);
 +   it-current = eina_list_next(it-current);
 +
 +   return EINA_TRUE;
 +}
 +
 +static Eo *
 +_eo_children_iterator_container(Eo_Children_Iterator *it)
 +{
 +   return it-obj_id;
 +}
 +
 +static void
 +_eo_children_iterator_free(Eo_Children_Iterator *it)
 +{
 +   _Eo_Class *klass;
 +   _Eo *obj;
 +
 +   klass = (_Eo_Class*) it-obj-klass;
 +   obj = it-obj;
 +
 +   eina_lock_take(klass-iterators.trash_lock);
 +   if (klass-iterators.trash_count  8)
 + {
 +klass-iterators.trash_count++;
 +eina_trash_push(klass-iterators.trash, it);
 + }
 +   else
 + {
 +free(it);
 + }
 +   eina_lock_release(klass-iterators.trash_lock);
 +
 +   _eo_unref(obj);
 +}
 +
 +EAPI Eina_Iterator *
 +eo_childrens_iterator_new(Eo *obj_id)
 +{
 +   Eo_Children_Iterator *it;
 +   _Eo_Class *klass;
 +
 +   EO_OBJ_POINTER_RETURN_VAL(obj_id, obj, NULL);
 +
 +   if (!obj-children) return NULL;
 +
 +   klass = (_Eo_Class*) obj-klass;
 +
 +   eina_lock_take(klass-iterators.trash_lock);
 +   it = eina_trash_pop(klass-iterators.trash);
 +   if (it)
 + {
 +klass-iterators.trash_count--;
 +memset(it, 0, sizeof (Eo_Children_Iterator));
 + }
 +   else
 + {
 +it = calloc(1, sizeof (Eo_Children_Iterator));
 + }
 +   eina_lock_release(klass-iterators.trash_lock);
 +   if (!it) return NULL;
 +
 +   EINA_MAGIC_SET(it-iterator, 

Re: [E-devel] [EGIT] [core/efl] master 02/02: eo: add eo_childrens_iterator_new().

2013-09-11 Thread Gustavo Sverzut Barbieri
On Wed, Sep 11, 2013 at 4:11 AM, Cedric Bail - Enlightenment Git
no-re...@enlightenment.org wrote:
 cedric pushed a commit to branch master.

 commit cd77853222d1c11d71da4ca9066abe35390dcd5e
 Author: Cedric Bail cedric.b...@samsung.com
 Date:   Wed Sep 11 16:08:06 2013 +0900

 eo: add eo_childrens_iterator_new().

 The goal would be to replace the smart children list and friends. The
 problem is that they differ in content. Smart children and Eo children are
 the same, but Elm children and them differ. If I put this function as a
 virtual, it would be possible to override the list of children and if we
 start using it in Evas render loop, that could result in weird behavior.

1st, as glima pointed out children is already plural form, no need for
trailing s

2nd, I think this may cause a confusion. If one want all the Eo whose
eo_parent_get() is X, they may want to call
eo_children_iterator_new(X), but this virtual may not return that
exact list, but a subset. I don't remember exactly about the Elm case,
but I recall we had cases where one object is bound to another without
being member_add(), in that case eo_children_iterator_new() would
return objects that eo_parent_get(child) != X.

I see what you're trying to do, but I don't know if the naming is correct.


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

--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] File /usr/lib/pkconfig/eo.pc and EO name

2013-09-11 Thread Gustavo Sverzut Barbieri
On Tue, Sep 10, 2013 at 10:21 PM, Cedric BAIL cedric.b...@free.fr wrote:
 On Wed, Sep 11, 2013 at 2:32 AM, Carsten Haitzler ras...@rasterman.com 
 wrote:
 On Tue, 10 Sep 2013 22:02:02 +0200 Côme BERNIGAUD 
 come.bernig...@laposte.net
 said:

 Le 09/09/2013 15:43, Tom Hacohen a écrit :
  On 03/09/13 22:25, Côme BERNIGAUD wrote:
  Hello,
 
  I saw that there is a new component named EO in the EFLs.
  EO is already a library, it stands for «Evolving Objects» :
  http://eodev.sourceforge.net/
 
  This is causing trouble, at least for one file:
  /usr/lib/pkgconfig/eo.pc is the pkgconfig for evolving objects, which is
  already used by several projects over the past years.
 
  So it might be a good thing if you could rename at least this file.
 
  Côme
 
  PS: The problem was found when trying to install the AUR package efl-git
  on ArchLinux, but I'm pretty sure this file is from upstream.
 
  Unfortunately it's really annoying to change it. After discussing it
  on IRC and thinking about all the pain involved, we decided not to
  change anything.
 
  We don't want to change the library name itself, that is, we like eo.
  Changing just the pc file creates a lot of issues with our build
  system which does a lot of things automatically and assumes a specific
  template to be followed.
  libXX.so, XX.pc and etc.
 That is a very sad decision. It means people won't be able to install
 both EO and the EFL…
 The filename eo.pc was already used since several years by EO, it's
 childish to just ignore that and take the same name.
 You should indeed use a pattern like efl/xx.pc or efl_xx.pc because if
 you intend to keep using two-letters names, you'll find a lot of them
 are already in use.

 Someone was also anxious about eo.h names or such, I just checked, and
 libeo is also using:
 /usr/include/eo folder
 /usr/share/eo   folder
 /usr/lib/libeo.a   file
 /usr/lib/libeo.so file

 Which might also conflict with your EO thing (I did not check, just
 thought these files might conflict)

 the libeo.so/a and include dirs will conflict.

 here is the problem. all of efl follow a pattern. the configure and makefiles
 all use macros to define the pc, include etc. etc. etc. stuff as they all
 follow the same design pattern - the same template and same standard. making 
 eo
 different is a pain in the butt and is going to lead to a bunch of exceptions
 and not following the design pattern which leads to problems with packaging
 or otherwise maintenance.

 so our choice is change eo to something else (and making it short was a 
 primary
 goal, and e_ is already taken by ... e so we'd have to go changing 100,000+
 lines of code in e to avoid it), so we have eo... eob is longer etc. as is 
 eobj
 etc.

 it's not childish - it's not being ignored, it's just that the alternative
 solutions are unpalatable. we'd have to go over 500,000 lines of code and
 change them to use something other than eo_ and EO_ etc. etc. to change the 
 lib
 namespace...

 the decision is not made lightly or childishly. it's simply going to have to 
 be
 a conflict :( at least for now. one day we will merge a lot of efl into
 libefl.so and likely includes will move into an efl subdir, have an efl.pc 
 etc.
 etc. so the conflict will eventually go away, but that day is not today. that
 day is efl 2.0 and its still years off. eo is one of those migration path
 elements on the way there - it's unifying our object model and putting in the
 basics to improve our interfaces. CHANGING efl to use efl subdirs for pc 
 files
 already creates an api break and that MEANS efl 2.0 and we are not breaking 
 api
 for a minimum of 5 years following efl 1.0 releases. that's a level of
 stability i wanted to keep and i'm not backing down on that as backing down
 means developers can't trust in stability and every time we violate that 
 trust
 we prove that we are unable to give them a base to build on. thus my desire 
 for
 a 5 year guaranntee. even beyond those 5 years there will likely be an efl
 1.x compat layer that is on top of the efl 2 stuff (just like we do today 
 with
 eo already and existing efl).

 so it's not childish, it's a decision that you may not like, and it means 
 there
 is a conflict, and that will stay, but the number of people ACTUALLY affected
 by the conflict i believe will be very small. at least until efl 2 ... as 
 above.

 Maybe a stupid idea, but do we still need an eo.pc ? Why not just an
 efl.pc for all the new library that never went released outside of EFL
 ? That would solve the problem and the distribution can rename the
 library or put it somewhere else as long as efl.pc, it would be fine.

problem is how you filter libraries from efl.pc you want to link. Say
you wrote a single daemon using only eina, then you'd be linking with
eo/evas... everything from efl.pc?


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


Re: [E-devel] Releases pending

2013-09-11 Thread Eduardo Lima (Etrunko)
2013/9/10 Simon si...@simotek.net:
 On 09/11/2013 02:19 AM, Michael Blumenkrantz wrote:
 EFL 1.7.9 and E17.5 are currently pending.

 Standby for bugs and explosions, and remember to blame antognolli for 
 anything that goes wrong.
 Has anyone tested if the splash screen issue in E17.4 got fixed? I'm not
 comfortable upgrading the openSUSE repo's until i know that issue has
 been fixed. (They probably won't get updated anyway because we have a
 feature freeze friday and i won't get time before then).


This is the sole reason for 0.17.5 existing in first place. The fix
should be there, yes, but we need people to confirm it.

Regards, Etrunko

-- 
Eduardo de Barros Lima ◤✠◢
ebl...@gmail.com

--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Enlightenment-release] Releases pending

2013-09-11 Thread Jérôme Pinot
On 09/11/13 12:03, Eduardo Lima (Etrunko) wrote:
 2013/9/11 Bertrand Jacquin be...@meleeweb.net:
  Hi,
 
  On 2013-09-11 00:36, Eduardo Lima (Etrunko) wrote:
  We now have tarballs up for testing in under the new pre-releases
  directory:
 
  http://download.enlightenment.org/pre-releases/efl-1.7.9/
  http://download.enlightenment.org/pre-releases/enlightenment-0.17.5/
 
  IMHO, it's bad to name tarball 'e_dbus-1.7.9.tar.bz2' (here for e_dbus
  exemple). Think about google bot and other crawlers that will put in the
  first result 'e_dbus-1.7.9.tar.bz2' corresponding to the pre-release
  directory, and this even when release will happenning, people will not
  see pre-releases subdirectory at first.
 
  Also, it may lead to misunderstood from people that will already have a
  file named e_dbus-1.7.9.tar.bz2 in their directory.
 
  Naming them e_dbus-1.7.9_pre1.Tar.bz2 in preferable or anything else
  that is not the final tarball name.
 
 
 It is already enough work to update configure.ac, ChangeLogs and NEWS
 for all 17 packages we ship, and I for myself am not doing it all over
 again only to remove a 'pre' tag. The idea is to move the tarballs to
 the release directory and remove the pre-release one whenever the
 packages are tested and good to go.

You don't have to change the configure.ac and friends, just rename the
final tarball. You see, last time for 1.7.8, there was problem to fix
so new packages were uploaded again with the exact same name. I, myself,
couldn't figure which one of the tarballs were patched as they got all
the same timestamp.

I do believe that different code tarballs should have different names.

If it's too difficult, at least give some checksums of the final tarballs
so people could check what they have without downloading them all over
again.

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


signature.asc
Description: Digital signature
--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/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/enlightenment] master 01/01: fix comp fullscreen nocomp detection to work properly given comp changes

2013-09-11 Thread Michael Blumenkrantz
ughhh this makes my head hurt. can you make a list of possible cases which 
weren't covered by the previous code so that I can at least improve this for 
e19?

On Wed, 11 Sep 2013 09:03:18 -0700
Carsten Haitzler (Rasterman) - Enlightenment Git no-re...@enlightenment.org 
wrote:

 raster pushed a commit to branch master.
 
 commit 2ca1a5a5d4aaeb346c4209415dedc75399e0b518
 Author: Carsten Haitzler (Rasterman) ras...@rasterman.com
 Date:   Thu Sep 12 01:23:23 2013 +0900
 
 fix comp fullscreen nocomp detection to work properly given comp changes
 ---
  src/bin/e_comp.c | 108 
 +--
  1 file changed, 106 insertions(+), 2 deletions(-)
 
 diff --git a/src/bin/e_comp.c b/src/bin/e_comp.c
 index faf7e9a..c4a3ffd 100644
 --- a/src/bin/e_comp.c
 +++ b/src/bin/e_comp.c
 @@ -200,6 +200,96 @@ _e_comp_child_hide(E_Comp_Win *cw)
   }
  }
  
 +static Eina_Bool
 +_e_comp_visible_object_clip_is(Evas_Object *obj)
 +{
 +   Evas_Object *clip;
 +   int a;
 +   
 +   clip = evas_object_clip_get(obj);
 +   if (!evas_object_visible_get(clip)) return EINA_FALSE;
 +   evas_object_color_get(clip, NULL, NULL, NULL, a);
 +   if (a = 0) return EINA_FALSE;
 +   if (evas_object_clip_get(clip))
 + return _e_comp_visible_object_clip_is(clip);
 +   return EINA_TRUE;
 +}
 +
 +static Eina_Bool
 +_e_comp_visible_object_is(Evas_Object *obj, Evas_Coord x, Evas_Coord y, 
 Evas_Coord w, Evas_Coord h)
 +{
 +   const char *type = evas_object_type_get(obj);
 +   Evas_Coord xx, yy, ww, hh;
 +
 +   if (!type) return EINA_FALSE;
 +   evas_object_geometry_get(obj, xx, yy, ww, hh);
 +   if (E_INTERSECTS(x, y, w, h, xx, yy, ww, hh))
 + {
 +if ((evas_object_visible_get(obj))
 + (!evas_object_clipees_get(obj))
 +   )
 +  {
 + int a;
 + 
 + evas_object_color_get(obj, NULL, NULL, NULL, a);
 + if (a  0)
 +   {
 +  if ((!strcmp(type, rectangle)) ||
 +  (!strcmp(type, image)) ||
 +  (!strcmp(type, text)) ||
 +  (!strcmp(type, textblock)) ||
 +  (!strcmp(type, textgrid)) ||
 +  (!strcmp(type, polygon)) ||
 +  (!strcmp(type, line)))
 +{
 +   if (evas_object_clip_get(obj))
 + return _e_comp_visible_object_clip_is(obj);
 +   return EINA_TRUE;
 +}
 +  else
 +{
 +   Eina_List *children;
 +   
 +   if ((children = evas_object_smart_members_get(obj)))
 + {
 +Eina_List *l;
 +Evas_Object *o;
 +
 +EINA_LIST_FOREACH(children, l, o)
 +  {
 + if (_e_comp_visible_object_is(o, x, y, w, 
 h))
 +   {
 +  if (evas_object_clip_get(o))
 +{
 +   children = 
 eina_list_free(children);
 +   return 
 _e_comp_visible_object_clip_is(o);
 +}
 +  children = eina_list_free(children);
 +  return EINA_TRUE;
 +   }
 +  }
 +eina_list_free(children);
 + }
 +}
 +   }
 +  }
 + }
 +   return EINA_FALSE;
 +}
 +
 +static Eina_Bool
 +_e_comp_visible_object_is_above(Evas_Object *obj, Evas_Coord x, Evas_Coord 
 y, Evas_Coord w, Evas_Coord h)
 +{
 +   Evas_Object *above;
 +   
 +   for (above = evas_object_above_get(obj); above;
 +above = evas_object_above_get(above))
 + {
 +if (_e_comp_visible_object_is(above, x, y, w, h)) return EINA_TRUE;
 + }
 +   return EINA_FALSE;
 +}
 +
  static E_Comp_Win *
  _e_comp_fullscreen_check(E_Comp *c)
  {
 @@ -212,11 +302,25 @@ _e_comp_fullscreen_check(E_Comp *c)
continue;
  if (!cw-bd) continue;
  if ((cw-x == 0)  (cw-y == 0) 
 -((cw-bd-client.w) = c-man-w) 
 -((cw-bd-client.h) = c-man-h) 
 +((cw-bd-client.w) == c-man-w) 
 +((cw-bd-client.h) == c-man-h) 
 +(cw-bd-client_inset.l == 0)  (cw-bd-client_inset.r == 0) 
 +(cw-bd-client_inset.t == 0)  (cw-bd-client_inset.b == 0) 
  (!cw-argb)  (!cw-shaped)  (!cw-bg_win)
  )
{
 + // check for objects above...
 + Evas_Object *parent = NULL, *o = NULL;
 +
 + o = cw-obj;
 + do
 +   {
 +

Re: [E-devel] [EGIT] [core/efl] master 01/02: Readd the master clip for rendering of wayland engines.

2013-09-11 Thread Rafael Antognolli
Hey dh,

On Wed, Sep 11, 2013 at 10:11 AM, Chris Michael - Enlightenment Git
no-re...@enlightenment.org wrote:
 devilhorns pushed a commit to branch master.

 commit d673cbc3982399a11be74a42f909e68b0f380dea
 Author: Chris Michael cp.mich...@samsung.com
 Date:   Wed Sep 11 13:00:23 2013 +0100

 Readd the master clip for rendering of wayland engines.

 NB: Master clip is needed so that things don't draw outside the client
 area.

 NB: This is a partial fix. Still a work in progress. Some remaining
 issues with some various elm_tests that use evas_map.

 Signed-off-by: Chris Michael cp.mich...@samsung.com
 ---
  src/lib/evas/canvas/evas_render.c | 67 
 +++
  1 file changed, 67 insertions(+)

 diff --git a/src/lib/evas/canvas/evas_render.c 
 b/src/lib/evas/canvas/evas_render.c
 index 3f8d942..bdf147a 100644
 --- a/src/lib/evas/canvas/evas_render.c
 +++ b/src/lib/evas/canvas/evas_render.c
 @@ -1538,6 +1538,7 @@ evas_render_updates_internal(Evas *eo_e,
  #ifdef EVAS_RENDER_DEBUG_TIMING
 double start_time = _time_get();
  #endif
 +   Eina_Rectangle clip_rect;

 MAGIC_CHECK(eo_e, Evas, MAGIC_EVAS);
 return EINA_FALSE;
 @@ -1582,6 +1583,51 @@ evas_render_updates_internal(Evas *eo_e,
e-render_objects,
redraw_all);

 +   if (!strncmp(e-engine.module-definition-name, wayland, 7))
 + {
 +/* check for master clip */
 +if (!e-framespace.clip)
 +  {
 + e-framespace.clip = evas_object_rectangle_add(eo_e);
 + evas_object_color_set(e-framespace.clip, 255, 255, 255, 255);
 + evas_object_move(e-framespace.clip, 0, 0);
 + evas_object_resize(e-framespace.clip,
 +e-viewport.w - e-framespace.w,
 +e-viewport.h - e-framespace.h);
 + evas_object_show(e-framespace.clip);
 +  }
 +
 +/* setup master clip rectangle for comparison to objects */
 +EINA_RECTANGLE_SET(clip_rect, e-framespace.x, e-framespace.y,
 +   e-viewport.w - e-framespace.w,
 +   e-viewport.h - e-framespace.h);
 +
 +for (i = 0; i  e-render_objects.count; ++i)
 +  {
 + Eina_Rectangle obj_rect;
 +
 + obj = eina_array_data_get(e-render_objects, i);
 + if (obj-delete_me) continue;
 + if (obj-is_frame) continue;
 + if (obj-object == e-framespace.clip) continue;
 +
 + /* setup object rectangle for comparison to clip rectangle */
 + EINA_RECTANGLE_SET(obj_rect,
 +obj-cur-geometry.x, obj-cur-geometry.y,
 +obj-cur-geometry.w, obj-cur-geometry.h);
 +
 + /* check if this object intersects with the master clip */
 + if (!eina_rectangles_intersect(clip_rect, obj_rect))
 +   continue;
 +
 + if (!evas_object_clip_get(obj-object))
 +   {
 +  /* clip this object to the master clip */
 +  evas_object_clip_set(obj-object, e-framespace.clip);
 +   }
 +  }
 + }
 +
 /* phase 1.5. check if the video should be inlined or stay in their 
 overlay */
 alpha = e-engine.func-canvas_alpha_get(e-engine.data.output,
  e-engine.data.context);
 @@ -1914,6 +1960,27 @@ evas_render_updates_internal(Evas *eo_e,
}
   }

 +   if (!strncmp(e-engine.module-definition-name, wayland, 7))
 + {
 +/* unclip objects from master clip */
 +for (i = 0; i  e-render_objects.count; ++i)
 +  {
 + obj = eina_array_data_get(e-render_objects, i);
 + if (obj-is_frame) continue;
 + if (obj-object == e-framespace.clip) continue;
 +
 + if (evas_object_clip_get(obj-object) == e-framespace.clip)
 +   {
 +  /* unclip this object from the master clip */
 +  evas_object_clip_unset(obj-object);
 +   }
 +  }
 +
 +/* delete master clip */
 +evas_object_del(e-framespace.clip);
 +e-framespace.clip = NULL;
 + }
 +
 e-changed = EINA_FALSE;
 e-viewport.changed = EINA_FALSE;
 e-output.changed = EINA_FALSE;

I see what you tried here, and I did something similar but it seems
that you added the unclip stuff to the right place, so at least the
canvas doesn't get maked as changed after you unclip these objects.

But what about the clipped/unclipped objects? When you change their
clipper, these objects are going to be marked as changed, and even
if they don't change any other property on the next mainloop, they
might have to be repainted again because the clip cache will be
invalidated... well, I didn't test it, but it's what I'm assuming now.


Re: [E-devel] [Enlightenment-release] Releases pending

2013-09-11 Thread Eduardo Lima (Etrunko)
2013/9/11 Bertrand Jacquin be...@meleeweb.net:
 Hi,

 On 2013-09-11 00:36, Eduardo Lima (Etrunko) wrote:
 We now have tarballs up for testing in under the new pre-releases
 directory:

 http://download.enlightenment.org/pre-releases/efl-1.7.9/
 http://download.enlightenment.org/pre-releases/enlightenment-0.17.5/

 IMHO, it's bad to name tarball 'e_dbus-1.7.9.tar.bz2' (here for e_dbus
 exemple). Think about google bot and other crawlers that will put in the
 first result 'e_dbus-1.7.9.tar.bz2' corresponding to the pre-release
 directory, and this even when release will happenning, people will not
 see pre-releases subdirectory at first.

 Also, it may lead to misunderstood from people that will already have a
 file named e_dbus-1.7.9.tar.bz2 in their directory.

 Naming them e_dbus-1.7.9_pre1.Tar.bz2 in preferable or anything else
 that is not the final tarball name.


It is already enough work to update configure.ac, ChangeLogs and NEWS
for all 17 packages we ship, and I for myself am not doing it all over
again only to remove a 'pre' tag. The idea is to move the tarballs to
the release directory and remove the pre-release one whenever the
packages are tested and good to go.

-- 
Eduardo de Barros Lima ◤✠◢
ebl...@gmail.com

--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Enlightenment-release] Releases pending

2013-09-11 Thread Rafael Antognolli
Hi,

On Wed, Sep 11, 2013 at 6:11 PM, Bertrand Jacquin be...@meleeweb.net wrote:
 On 2013-09-11 17:03, Eduardo Lima (Etrunko) wrote:
 2013/9/11 Bertrand Jacquin be...@meleeweb.net:
 Hi,

 On 2013-09-11 00:36, Eduardo Lima (Etrunko) wrote:
 We now have tarballs up for testing in under the new pre-releases
 directory:

 http://download.enlightenment.org/pre-releases/efl-1.7.9/
 http://download.enlightenment.org/pre-releases/enlightenment-0.17.5/

 IMHO, it's bad to name tarball 'e_dbus-1.7.9.tar.bz2' (here for e_dbus
 exemple). Think about google bot and other crawlers that will put in
 the
 first result 'e_dbus-1.7.9.tar.bz2' corresponding to the pre-release
 directory, and this even when release will happenning, people will not
 see pre-releases subdirectory at first.

 Also, it may lead to misunderstood from people that will already have
 a
 file named e_dbus-1.7.9.tar.bz2 in their directory.

 Naming them e_dbus-1.7.9_pre1.Tar.bz2 in preferable or anything else
 that is not the final tarball name.

 It is already enough work to update configure.ac, ChangeLogs and NEWS
 for all 17 packages we ship, and I for myself am not doing it all over
 again only to remove a 'pre' tag. The idea is to move the tarballs to
 the release directory and remove the pre-release one whenever the
 packages are tested and good to go.

 This should not need any manual changes. You could for example add a
 v1.7.9_pre1 tag on a commit, and then run a 'make dist' that does all
 needed things for you. As almost all projects does.

I also think that it would be cool if we had that.

But unfortunately I have to agree with Etrunko that it's a pain in the
ass, at least the way that it is now, where EFL 1.7 is split across
several packages. It's not just make dist, but make dist on every
package, at least twice (one for pre-release and another for the real
release), adding/changing/removing the preN tag.

And if we do that, would be even better to do it all correctly: update
dependencies accordingly, NEWS, ChangeLog, etc, as Etrunko said. I
don't think it's worth the effort for 1.7 yet, maybe we can do it
after 1.8 release where it will be a lot easier (single tree for core
efl, elementary and enlightenment).

Just my 2 cents.

-- 
Rafael Antognolli

--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Enlightenment-release] Releases pending

2013-09-11 Thread Bertrand Jacquin
On 2013-09-11 17:03, Eduardo Lima (Etrunko) wrote:
 2013/9/11 Bertrand Jacquin be...@meleeweb.net:
 Hi,
 
 On 2013-09-11 00:36, Eduardo Lima (Etrunko) wrote:
 We now have tarballs up for testing in under the new pre-releases
 directory:
 
 http://download.enlightenment.org/pre-releases/efl-1.7.9/
 http://download.enlightenment.org/pre-releases/enlightenment-0.17.5/
 
 IMHO, it's bad to name tarball 'e_dbus-1.7.9.tar.bz2' (here for e_dbus
 exemple). Think about google bot and other crawlers that will put in 
 the
 first result 'e_dbus-1.7.9.tar.bz2' corresponding to the pre-release
 directory, and this even when release will happenning, people will not
 see pre-releases subdirectory at first.
 
 Also, it may lead to misunderstood from people that will already have 
 a
 file named e_dbus-1.7.9.tar.bz2 in their directory.
 
 Naming them e_dbus-1.7.9_pre1.Tar.bz2 in preferable or anything else
 that is not the final tarball name.
 
 It is already enough work to update configure.ac, ChangeLogs and NEWS
 for all 17 packages we ship, and I for myself am not doing it all over
 again only to remove a 'pre' tag. The idea is to move the tarballs to
 the release directory and remove the pre-release one whenever the
 packages are tested and good to go.

This should not need any manual changes. You could for example add a 
v1.7.9_pre1 tag on a commit, and then run a 'make dist' that does all 
needed things for you. As almost all projects does.

--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/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/enlightenment] master 01/01: fix comp fullscreen nocomp detection to work properly given comp changes

2013-09-11 Thread The Rasterman
On Wed, 11 Sep 2013 17:16:16 +0100 Michael Blumenkrantz
michael.blumenkra...@gmail.com said:

 ughhh this makes my head hurt. can you make a list of possible cases which
 weren't covered by the previous code so that I can at least improve this for
 e19?

any window at 0,0 and = or  than screen caused nocomp to kick in. even if
shelf was on top op it. that meant titlebar vanished etc. i also tried to cover
detecting other evas objects on top that could be visible.

it's simple. window must MATCH framebuffer size (manager or root size in
this case and be at 0,0. that means the client image object region, not the
frame which is done all in canvas. you should have no visible evas objects on
top of this in the comp canvas that need to be drawn on top of blended etc.
etc.  and of course the client image obj (client) should have no shape or argb
state. solid, not-shaped. oh.. and the client image obj.. need to be..
VISIBLE... :)

 On Wed, 11 Sep 2013 09:03:18 -0700
 Carsten Haitzler (Rasterman) - Enlightenment Git no-re...@enlightenment.org
 wrote:
 
  raster pushed a commit to branch master.
  
  commit 2ca1a5a5d4aaeb346c4209415dedc75399e0b518
  Author: Carsten Haitzler (Rasterman) ras...@rasterman.com
  Date:   Thu Sep 12 01:23:23 2013 +0900
  
  fix comp fullscreen nocomp detection to work properly given comp changes
  ---
   src/bin/e_comp.c | 108 
  +-- 1 file changed, 106 insertions(+), 2 deletions(-)
  
  diff --git a/src/bin/e_comp.c b/src/bin/e_comp.c
  index faf7e9a..c4a3ffd 100644
  --- a/src/bin/e_comp.c
  +++ b/src/bin/e_comp.c
  @@ -200,6 +200,96 @@ _e_comp_child_hide(E_Comp_Win *cw)
}
   }
   
  +static Eina_Bool
  +_e_comp_visible_object_clip_is(Evas_Object *obj)
  +{
  +   Evas_Object *clip;
  +   int a;
  +   
  +   clip = evas_object_clip_get(obj);
  +   if (!evas_object_visible_get(clip)) return EINA_FALSE;
  +   evas_object_color_get(clip, NULL, NULL, NULL, a);
  +   if (a = 0) return EINA_FALSE;
  +   if (evas_object_clip_get(clip))
  + return _e_comp_visible_object_clip_is(clip);
  +   return EINA_TRUE;
  +}
  +
  +static Eina_Bool
  +_e_comp_visible_object_is(Evas_Object *obj, Evas_Coord x, Evas_Coord y,
  Evas_Coord w, Evas_Coord h) +{
  +   const char *type = evas_object_type_get(obj);
  +   Evas_Coord xx, yy, ww, hh;
  +
  +   if (!type) return EINA_FALSE;
  +   evas_object_geometry_get(obj, xx, yy, ww, hh);
  +   if (E_INTERSECTS(x, y, w, h, xx, yy, ww, hh))
  + {
  +if ((evas_object_visible_get(obj))
  + (!evas_object_clipees_get(obj))
  +   )
  +  {
  + int a;
  + 
  + evas_object_color_get(obj, NULL, NULL, NULL, a);
  + if (a  0)
  +   {
  +  if ((!strcmp(type, rectangle)) ||
  +  (!strcmp(type, image)) ||
  +  (!strcmp(type, text)) ||
  +  (!strcmp(type, textblock)) ||
  +  (!strcmp(type, textgrid)) ||
  +  (!strcmp(type, polygon)) ||
  +  (!strcmp(type, line)))
  +{
  +   if (evas_object_clip_get(obj))
  + return _e_comp_visible_object_clip_is(obj);
  +   return EINA_TRUE;
  +}
  +  else
  +{
  +   Eina_List *children;
  +   
  +   if ((children = evas_object_smart_members_get(obj)))
  + {
  +Eina_List *l;
  +Evas_Object *o;
  +
  +EINA_LIST_FOREACH(children, l, o)
  +  {
  + if (_e_comp_visible_object_is(o, x, y, w,
  h))
  +   {
  +  if (evas_object_clip_get(o))
  +{
  +   children = eina_list_free
  (children);
  +   return
  _e_comp_visible_object_clip_is(o);
  +}
  +  children = eina_list_free(children);
  +  return EINA_TRUE;
  +   }
  +  }
  +eina_list_free(children);
  + }
  +}
  +   }
  +  }
  + }
  +   return EINA_FALSE;
  +}
  +
  +static Eina_Bool
  +_e_comp_visible_object_is_above(Evas_Object *obj, Evas_Coord x, Evas_Coord
  y, Evas_Coord w, Evas_Coord h) +{
  +   Evas_Object *above;
  +   
  +   for (above = evas_object_above_get(obj); above;
  +above = evas_object_above_get(above))
  + {
  +if 

[E-devel] About evas_object_clip_set() function ~~

2013-09-11 Thread 이준호
Hello, guys

On latest Evas library, Can I use only rectangle as image clipper??

...
  212if (clip-type != o_rect_type)
  213  {
  214 ERR(For now a clip on other object than a rectangle is
disabled);
  215 return;
  216  }
...

In latest Evas, I can find above things, but I really want to use circle
mask image as image clipper. ; (

Is there any idea?
--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] About evas_object_clip_set() function ~~

2013-09-11 Thread The Rasterman
On Thu, 12 Sep 2013 10:41:39 +0900 이준호 eso...@gmail.com said:

 Hello, guys
 
 On latest Evas library, Can I use only rectangle as image clipper??
 
 ...
   212if (clip-type != o_rect_type)
   213  {
   214 ERR(For now a clip on other object than a rectangle is
 disabled);
   215 return;
   216  }
 ...
 
 In latest Evas, I can find above things, but I really want to use circle
 mask image as image clipper. ; (
 
 Is there any idea?

that code is there for a reason... it's correct. :)

 --
 How ServiceNow helps IT people transform IT departments:
 1. Consolidate legacy IT systems to a single system of record for IT
 2. Standardize and globalize service processes across IT
 3. Implement zero-touch automation to replace manual, redundant tasks
 http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
 


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


--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [EGIT] [core/elementary] master 01/01: elementary - revert ddc3cf80ce0a50a9161fcb212d3414f5d7b5898c

2013-09-11 Thread ChunEon Park
Hi, 

I reverted elm_object_item_get() API.

Cedric, Raster, Daniel, Me together discussed for more proper way instead of 
the API.
In the end, Cedric suggested to return the rectangle object that's a kind of 
fake object of the object item's real object.
and All of us agreed on it.

Now, I will add 2 more APIs elm_object_item_object_track(), 
elm_object_item_object_untrack() to return/retrieve the fake object. 

Maybe, all guys will be happy with these APis.

If you have some other idea or whatever opinions, please reply on this email.

Thank you.
 

-Regards, Hermet- 

-Original Message-
From: ChunEon Park - Enlightenment Gitno-re...@enlightenment.org 
To: enlightenment-...@lists.sourceforge.net; 
Cc: 
Sent: 2013-09-12 (목) 14:15:15
Subject: [EGIT] [core/elementary] master 01/01: elementary - revert 
ddc3cf80ce0a50a9161fcb212d3414f5d7b5898c

hermet pushed a commit to branch master.

commit 9558537385f0a402b1725076b7a6ea1c540fd39a
Author: ChunEon Park hermet@hermet.pe.kr
Date:   Thu Sep 12 14:13:59 2013 +0900

elementary - revert ddc3cf80ce0a50a9161fcb212d3414f5d7b5898c

We have a plan to add more proper API.
---
 ChangeLog   4 
 NEWS1 -
 src/lib/elm_main.c  6 --
 src/lib/elm_object_item.h  21 -
 src/lib/elm_widget.c7 ---
 src/lib/elm_widget.h1 -
 6 files changed, 40 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index c06f86f..ff18f8c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1582,10 +1582,6 @@
 
 * Bg: Add bg reset feature.
 
-2013-09-02  ChunEon Park (Hermet)
-
-* Widget: Introduce elm_object_item_object_get() API.
-
 2013-09-04  Ryuan Choi (ryuan)
 
 * elm_config : profile may be broken when clicked reset button in 
profiles tab
diff --git a/NEWS b/NEWS
index 5cb62b2..3d536c0 100644
--- a/NEWS
+++ b/NEWS
@@ -85,7 +85,6 @@ Additions:
* Add elm_win_focus_highlight_animate_set/get().
* Add selectraise feature to gengrid.
* Add bg reset feature.
-   * Add elm_object_item_object_get().
* Add support for more than one progress status in a progressbar.
* Add elm_table_child_get().
* Add support for flip focus direction.
diff --git a/src/lib/elm_main.c b/src/lib/elm_main.c
index 6c8aba8..17654c6 100644
--- a/src/lib/elm_main.c
+++ b/src/lib/elm_main.c
@@ -1899,9 +1899,3 @@ elm_object_item_cursor_engine_only_get(const 
Elm_Object_Item *it)
 {
return elm_widget_item_cursor_engine_only_get(it);
 }
-
-EAPI const Evas_Object *
-elm_object_item_object_get(const Elm_Object_Item *it)
-{
-   return _elm_widget_item_object_get((Elm_Widget_Item*)it);
-}
diff --git a/src/lib/elm_object_item.h b/src/lib/elm_object_item.h
index 1d9f490..8a0ccde 100644
--- a/src/lib/elm_object_item.h
+++ b/src/lib/elm_object_item.h
@@ -34,27 +34,6 @@ typedef void  
(*Elm_Object_Item_Signal_Cb)(void *data, Elm_Objec
 EAPI Evas_Object *elm_object_item_widget_get(const 
Elm_Object_Item *it);
 
 /**
- * Get the object item's internal object handle.
- *
- * @param it The Elementary object item
- * @return The Internal object of the object item.
- *
- * @note This function should only be used if you really need to refer the
- * internal object's properties (i.e geometry). Since the object items are
- * managed/controlled by the widget, the object could be deleted, resized, 
moved
- * and so on by the widget. So you should not modify the object directly nor 
you
- * should not treat the object without validation, we don't guarantee the 
result
- * of any of these behavior.
- *
- * Some widget items may return @c NULL for this API if the items @p are not
- * based on the evas object.
- *
- * @since 1.8
- * @ingroup General
- */
-EAPI const Evas_Object   *elm_object_item_object_get(const 
Elm_Object_Item *it);
-
-/**
  * Set a content of an object item
  *
  * @param it The Elementary object item
diff --git a/src/lib/elm_widget.c b/src/lib/elm_widget.c
index 71953ce..c94f894 100644
--- a/src/lib/elm_widget.c
+++ b/src/lib/elm_widget.c
@@ -5787,13 +5787,6 @@ _elm_widget_item_translate(Elm_Widget_Item *item)
 #endif
 }
 
-EAPI const Evas_Object *
-_elm_widget_item_object_get(const Elm_Widget_Item *item)
-{
-   ELM_WIDGET_ITEM_CHECK_OR_RETURN(item, NULL);
-   return item-view;
-}
-
 /* happy debug functions */
 #ifdef ELM_DEBUG
 static void
diff --git a/src/lib/elm_widget.h b/src/lib/elm_widget.h
index e4d6362..48d8736 100644
--- a/src/lib/elm_widget.h
+++ b/src/lib/elm_widget.h
@@ -771,7 +771,6 @@ EAPI void 
_elm_widget_item_domain_translatable_part_text_set(Elm_Wid
 EAPI const char * _elm_widget_item_translatable_part_text_get(const 
Elm_Widget_Item *item, const char *part);
 EAPI void _elm_widget_item_translate(Elm_Widget_Item *item);
 EAPI void 
_elm_widget_item_domain_part_text_translatable_set(Elm_Widget_Item *item, const 
char *part, const char *domain, Eina_Bool 

Re: [E-devel] About evas_object_clip_set() function ~~

2013-09-11 Thread ChunEon Park
Unfortunately not yet.  Evas doesn support image masking yet.

Maybe will be supported later 1.8 but I'm not sure.
 

-Regards, Hermet- 

-Original Message-
From: 이준호eso...@gmail.com 
To: Enlightenment developer listenlightenment-devel@lists.sourceforge.net; 
Cc: 
Sent: 2013-09-12 (목) 10:41:39
Subject: [E-devel] About evas_object_clip_set() function ~~

Hello, guys

On latest Evas library, Can I use only rectangle as image clipper??

...
  212if (clip-type != o_rect_type)
  213  {
  214 ERR(For now a clip on other object than a rectangle is
disabled);
  215 return;
  216  }
...

In latest Evas, I can find above things, but I really want to use circle
mask image as image clipper. ; (

Is there any idea?
--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

--
How ServiceNow helps IT people transform IT departments:
1. Consolidate legacy IT systems to a single system of record for IT
2. Standardize and globalize service processes across IT
3. Implement zero-touch automation to replace manual, redundant tasks
http://pubads.g.doubleclick.net/gampad/clk?id=5127iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel