[EGIT] [core/elementary] master 01/02: elm/quicklaunch: Increment _elm_init_count in ql_init

2013-11-03 Thread Jean-Philippe Andre
jpeg pushed a commit to branch master.

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

commit f678122aedc734c7dc4411affdaca808ed403296
Author: Jean-Philippe Andre 
Date:   Mon Nov 4 12:21:49 2013 +0900

elm/quicklaunch: Increment _elm_init_count in ql_init

Apps call elm_shutdown before exiting. But when using
Quiklaunch, elm_init has never been called, so the
init count is still 0.

This will be especially useful since programs compiled
with -fPIC and linked with -pie can be loaded by
Quicklaunch.
---
 src/lib/elm_main.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/lib/elm_main.c b/src/lib/elm_main.c
index 39ef68a..ebf538b 100644
--- a/src/lib/elm_main.c
+++ b/src/lib/elm_main.c
@@ -664,6 +664,7 @@ elm_quicklaunch_init(intargc,
EINA_LOG_STATE_STOP,
EINA_LOG_STATE_INIT);
 
+   _elm_init_count++;
return _elm_ql_init_count;
 }
 

-- 




[EGIT] [core/elementary] master 02/02: elm/quicklaunch: Improve executable path search

2013-11-03 Thread Jean-Philippe Andre
jpeg pushed a commit to branch master.

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

commit 876f8bccc7fed2f8511c9bdbe1c0e21be30290ca
Author: Jean-Philippe Andre 
Date:   Mon Nov 4 15:12:51 2013 +0900

elm/quicklaunch: Improve executable path search

Always search executable based on CWD if possible.
This way, elementary_run behaves more like sh where all of
sh script, sh ./script and sh `pwd`/script will work.

Also, remove quicklaunch-specific ELM_MAIN.
This needs some doc, but compiling with -fpie and -pie is much
better.

Note: There's an API/ABI break here, BUT these APIs are marked
as not to be used outside macros. And there isn't any macro
using them :)
---
 src/bin/quicklaunch.c |  2 +-
 src/lib/elm_general.h | 10 --
 src/lib/elm_main.c| 96 +--
 3 files changed, 71 insertions(+), 37 deletions(-)

diff --git a/src/bin/quicklaunch.c b/src/bin/quicklaunch.c
index 2a811d2..f79770c 100644
--- a/src/bin/quicklaunch.c
+++ b/src/bin/quicklaunch.c
@@ -151,7 +151,7 @@ handle_run(int fd, unsigned long bytes)
   }
  }
 #endif
-   elm_quicklaunch_prepare(argc, argv);
+   elm_quicklaunch_prepare(argc, argv, cwd);
elm_quicklaunch_fork(argc, argv, cwd, post_fork, NULL);
elm_quicklaunch_cleanup();
 }
diff --git a/src/lib/elm_general.h b/src/lib/elm_general.h
index 7876af4..14d8776 100644
--- a/src/lib/elm_general.h
+++ b/src/lib/elm_general.h
@@ -143,7 +143,11 @@ extern EAPI double _elm_startup_time;
 #ifndef ELM_LIB_QUICKLAUNCH
 #define ELM_MAIN() int main(int argc, char **argv) { int ret; 
_elm_startup_time = ecore_time_unix_get(); elm_init(argc, argv); ret = 
elm_main(argc, argv); return ret; } /**< macro to be used after the elm_main() 
function */
 #else
-#define ELM_MAIN() int main(int argc, char **argv) { _elm_startup_time = 
ecore_time_unix_get(); return elm_quicklaunch_fallback(argc, argv); } /**< 
macro to be used after the elm_main() function */
+/** @deprecated macro to be used after the elm_main() function.
+ * Do not define ELM_LIB_QUICKLAUNCH
+ * Compile your programs with -fpie and -pie -rdynamic instead, to generate a 
single binary (linkable executable).
+ */
+#define ELM_MAIN() int main(int argc, char **argv) { _elm_startup_time = 
ecore_time_unix_get(); return elm_quicklaunch_fallback(argc, argv); }
 #endif
 
 /**/
@@ -270,7 +274,7 @@ EAPI void  elm_quicklaunch_seed(void);
 /**
  * Exposed symbol used only by macros and should not be used by apps
  */
-EAPI Eina_Bool elm_quicklaunch_prepare(int argc, char **argv);
+EAPI Eina_Bool elm_quicklaunch_prepare(int argc, char **argv, const char *cwd);
 
 /**
  * Exposed symbol used only by macros and should not be used by apps
@@ -290,7 +294,7 @@ EAPI int   elm_quicklaunch_fallback(int argc, char 
**argv);
 /**
  * Exposed symbol used only by macros and should not be used by apps
  */
-EAPI char *elm_quicklaunch_exe_path_get(const char *exe);
+EAPI char *elm_quicklaunch_exe_path_get(const char *exe, const char *cwd);
 
 /**
  * Set a new policy's value (for a given policy group/identifier).
diff --git a/src/lib/elm_main.c b/src/lib/elm_main.c
index ebf538b..927481f 100644
--- a/src/lib/elm_main.c
+++ b/src/lib/elm_main.c
@@ -843,63 +843,87 @@ static int (*qr_main)(intargc,
 
 EAPI Eina_Bool
 elm_quicklaunch_prepare(intargc,
-char **argv)
+char **argv,
+const char *cwd)
 {
 #ifdef HAVE_FORK
-   char *exe;
+   char *exe, *exe2, *p;
+   char *exename;
 
if (argc <= 0 || argv == NULL) return EINA_FALSE;
 
-   exe = elm_quicklaunch_exe_path_get(argv[0]);
+   exe = elm_quicklaunch_exe_path_get(argv[0], cwd);
if (!exe)
  {
 ERR("requested quicklaunch binary '%s' does not exist\n", argv[0]);
 return EINA_FALSE;
  }
-   else
+
+   exe2 = malloc(strlen(exe) + 1 + 7 + strlen(LIBEXT));
+   strcpy(exe2, exe);
+   p = strrchr(exe2, '/');
+   if (p) p++;
+   else p = exe2;
+   exename = alloca(strlen(p) + 1);
+   strcpy(exename, p);
+   *p = 0;
+   strcat(p, "../lib/");
+   strcat(p, exename);
+   strcat(p, LIBEXT);
+   if (access(exe2, R_OK | X_OK) != 0)
+ {
+free(exe2);
+exe2 = NULL;
+ }
+
+   /* Try linking to executable first. Works with PIE files. */
+   qr_handle = dlopen(exe, RTLD_NOW | RTLD_GLOBAL);
+   if (qr_handle)
  {
-char *exe2, *p;
-char *exename;
-
-exe2 = malloc(strlen(exe) + 1 + 7 + strlen(LIBEXT));
-strcpy(exe2, exe);
-p = strrchr(exe2, '/');
-if (p) p++;
-else p = exe2;
-exename = alloca(strlen(p) + 1);
-strcpy(exename, p);
-*p = 0;
-strcat(p, "../lib/");
-strcat(p, exename);
-strcat(p, LIBEXT);
-if (!access(exe2, R_OK | X_OK))
+ 

Re: [E-devel] admin/devs.git layout changes

2013-11-03 Thread Guillaume Friloux

On 02/11/2013 10:26, Chris Michael wrote:


Na, old was not confusing. That's not what I said. I said perhaps it
should be renamed to "ancient" (for those of us who have been around
forever) :P

dh


Only white hairs and huge beard accepted
<>--
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=65839951&iu=/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: elm_conform.c: Added "virtualkeypad, size, changed" smart callback.

2013-11-03 Thread Daniel Juyung Seo
On Thu, Oct 31, 2013 at 6:20 PM, Carsten Haitzler wrote:

> On Thu, 31 Oct 2013 18:03:48 +0900 (KST) ChunEon Park 
> said:
>
> > Sorry. I don't agree on this change.
> >
> > This callback will be called wheneven any keypad state is changed.
> regardless
> > of the size changed.
>
> and this should not ever be needed because conformant should be
> moving/resizing
> the child object to account for the keypad so.. listen for move/resize
> events
> if u care.. but your object will be adjusted appropriately by conformat...
>

Yes, of course I tried to use resize callback first but it was called more
than I expected and not effective.
That's why I added this new smart callback because there is also
"state,on/off" things.
That happened in a very complicated real life situation on the real
embedded device.
I could write a test case if you want but there is no rush on this smart
callback.
Thanks.

Daniel Juyung Seo (SeoZ)


>
> > 
> > -Regards, Hermet-
> >
> > -Original Message-
> > From: "Daniel Juyung Seo"
> > To: ;
> > Cc:
> > Sent: 2013-10-30 (수) 16:24:37
> > Subject: [EGIT] [core/elementary] master 01/01: elm_conform.c: Added
> > "virtualkeypad,size,changed" smart callback.
> >
> > seoz pushed a commit to branch master.
> >
> >
> http://git.enlightenment.org/core/elementary.git/commit/?id=cbd7446f0bf413ad821ac40703d2a2ca728758ef
> >
> > commit cbd7446f0bf413ad821ac40703d2a2ca728758ef
> > Author: Daniel Juyung Seo @gmail.com>
> > Date:   Wed Oct 30 16:17:57 2013 +0900
> >
> > elm_conform.c: Added "virtualkeypad,size,changed" smart callback.
> >
> > When the virtualkeypad size is changed, applications get the notice.
> > Applications can do internal object calculation according to the
> exact
> > virtualkeypad size. This is useful when the exact size is important such
> as
> > webkit usecase.
> > ---
> >  ChangeLog  4 
> >  NEWS   1 +
> >  src/lib/elm_conform.c  7 +++
> >  src/lib/elm_conform.h  3 +++
> >  4 files changed, 15 insertions(+)
> >
> > diff --git a/ChangeLog b/ChangeLog
> > index fbeecc7..e99d3fd 100644
> > --- a/ChangeLog
> > +++ b/ChangeLog
> > @@ -1727,3 +1727,7 @@
> >  2013-10-30  Amitesh Singh (_ami_)
> >
> >  * image: Add support for "clicked" callback on
> Return/space/KP_Enter
> > key press. +
> > +2013-10-30  Daniel Juyung Seo (SeoZ)
> > +
> > +* conform: Added "virtualkeypad,size,changed" callback on
> > virtualkeypad min size change. diff --git a/NEWS b/NEWS
> > index 8481107..6876073 100644
> > --- a/NEWS
> > +++ b/NEWS
> > @@ -101,6 +101,7 @@ Additions:
> > * 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.
> > +   * Add "virtualkeypad,size,changed" callback on virtualkeypad min size
> > change for conformant.
> >  Improvements:
> >
> > diff --git a/src/lib/elm_conform.c b/src/lib/elm_conform.c
> > index 9636ab8..cb00888 100644
> > --- a/src/lib/elm_conform.c
> > +++ b/src/lib/elm_conform.c
> > @@ -36,12 +36,14 @@ static const char SOFTKEY_PART[] =
> "elm.swallow.softkey";
> >
> >  static const char SIG_VIRTUALKEYPAD_STATE_ON[] =
> "virtualkeypad,state,on";
> >  static const char SIG_VIRTUALKEYPAD_STATE_OFF[] =
> "virtualkeypad,state,off";
> > +static const char SIG_VIRTUALKEYPAD_SIZE_CHANGED[] =
> > "virtualkeypad,size,changed"; static const char SIG_CLIPBOARD_STATE_ON[]
> =
> > "clipboard,state,on"; static const char SIG_CLIPBOARD_STATE_OFF[] =
> > "clipboard,state,off";
> >  static const Evas_Smart_Cb_Description _smart_callbacks[] = {
> > {SIG_VIRTUALKEYPAD_STATE_ON, ""},
> > {SIG_VIRTUALKEYPAD_STATE_OFF, ""},
> > +   {SIG_VIRTUALKEYPAD_SIZE_CHANGED, ""},
> > {SIG_CLIPBOARD_STATE_ON, ""},
> > {SIG_CLIPBOARD_STATE_OFF, ""},
> > {NULL, NULL}
> > @@ -166,6 +168,8 @@ _conformant_part_sizing_eval(Evas_Object *obj,
> >
> > if (part_type & ELM_CONFORMANT_VIRTUAL_KEYPAD_PART)
> >   {
> > +Evas_Coord_Rectangle rect;
> > +
> >  #ifdef HAVE_ELEMENTARY_X
> >  if ((!_conformant_part_geometry_get_from_env
> > ("ILLUME_KBD", &sx, &sy, &sw, &sh)) && (xwin))
> > @@ -189,6 +193,9 @@ _conformant_part_sizing_eval(Evas_Object *obj,
> >  DBG("[KEYPAD]: size(%d,%d, %dx%d).", sx, sy, sw, sh);
> >  _conformant_part_size_hints_set
> >(obj, sd->virtualkeypad, sx, sy, sw, sh);
> > +
> > +rect.x = sx; rect.y = sy; rect.w = sw; rect.h = sh;
> > +evas_object_smart_callback_call(obj,
> SIG_VIRTUALKEYPAD_SIZE_CHANGED,
> > (void *)&rect); }
> >
> > if (part_type & ELM_CONFORMANT_SOFTKEY_PART)
> > diff --git a/src/lib/elm_conform.h b/src/lib/elm_conform.h
> > index a491b95..e1187b5 100644
> > --- a/src/lib/elm_conform.h
> > +++ b/src/lib/elm_conform.h
> > @@ -28,6 +28,

Re: [E-devel] [EGIT] [core/elementary] master 01/01: elm_conform.c: Added "virtualkeypad, size, changed" smart callback.

2013-11-03 Thread Daniel Juyung Seo
On Thu, Oct 31, 2013 at 6:03 PM, ChunEon Park  wrote:

> Sorry. I don't agree on this change.
>
> This callback will be called wheneven any keypad state is changed.
> regardless of the size changed.
>

If you meant *keypad state change* by "virtualkeypad,state,on/off", keypad
size is changed as well.
So it's correct.
The new callback covers more use cases than just
"virtualkeypad,state,on/off".
Application code can be rewritten simpler by the new api than previous one.

If there is any cases that "virtualkeypad,size,changed" is called even
though keypad size is not changed, please let me know.
Thanks in advance.

Daniel Juyung Seo (SeoZ)



>
>
> 
> -Regards, Hermet-
>
> -Original Message-
> From: "Daniel Juyung Seo"
> To: ;
> Cc:
> Sent: 2013-10-30 (수) 16:24:37
> Subject: [EGIT] [core/elementary] master 01/01: elm_conform.c: Added
> "virtualkeypad,size,changed" smart callback.
>
> seoz pushed a commit to branch master.
>
>
> http://git.enlightenment.org/core/elementary.git/commit/?id=cbd7446f0bf413ad821ac40703d2a2ca728758ef
>
> commit cbd7446f0bf413ad821ac40703d2a2ca728758ef
> Author: Daniel Juyung Seo @gmail.com>
> Date:   Wed Oct 30 16:17:57 2013 +0900
>
> elm_conform.c: Added "virtualkeypad,size,changed" smart callback.
>
> When the virtualkeypad size is changed, applications get the notice.
> Applications can do internal object calculation according to the exact
> virtualkeypad size.
> This is useful when the exact size is important such as webkit usecase.
> ---
>  ChangeLog  4 
>  NEWS   1 +
>  src/lib/elm_conform.c  7 +++
>  src/lib/elm_conform.h  3 +++
>  4 files changed, 15 insertions(+)
>
> diff --git a/ChangeLog b/ChangeLog
> index fbeecc7..e99d3fd 100644
> --- a/ChangeLog
> +++ b/ChangeLog
> @@ -1727,3 +1727,7 @@
>  2013-10-30  Amitesh Singh (_ami_)
>
>  * image: Add support for "clicked" callback on
> Return/space/KP_Enter key press.
> +
> +2013-10-30  Daniel Juyung Seo (SeoZ)
> +
> +* conform: Added "virtualkeypad,size,changed" callback on
> virtualkeypad min size change.
> diff --git a/NEWS b/NEWS
> index 8481107..6876073 100644
> --- a/NEWS
> +++ b/NEWS
> @@ -101,6 +101,7 @@ Additions:
> * 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.
> +   * Add "virtualkeypad,size,changed" callback on virtualkeypad min size
> change for conformant.
>
>  Improvements:
>
> diff --git a/src/lib/elm_conform.c b/src/lib/elm_conform.c
> index 9636ab8..cb00888 100644
> --- a/src/lib/elm_conform.c
> +++ b/src/lib/elm_conform.c
> @@ -36,12 +36,14 @@ static const char SOFTKEY_PART[] =
> "elm.swallow.softkey";
>
>  static const char SIG_VIRTUALKEYPAD_STATE_ON[] = "virtualkeypad,state,on";
>  static const char SIG_VIRTUALKEYPAD_STATE_OFF[] =
> "virtualkeypad,state,off";
> +static const char SIG_VIRTUALKEYPAD_SIZE_CHANGED[] =
> "virtualkeypad,size,changed";
>  static const char SIG_CLIPBOARD_STATE_ON[] = "clipboard,state,on";
>  static const char SIG_CLIPBOARD_STATE_OFF[] = "clipboard,state,off";
>
>  static const Evas_Smart_Cb_Description _smart_callbacks[] = {
> {SIG_VIRTUALKEYPAD_STATE_ON, ""},
> {SIG_VIRTUALKEYPAD_STATE_OFF, ""},
> +   {SIG_VIRTUALKEYPAD_SIZE_CHANGED, ""},
> {SIG_CLIPBOARD_STATE_ON, ""},
> {SIG_CLIPBOARD_STATE_OFF, ""},
> {NULL, NULL}
> @@ -166,6 +168,8 @@ _conformant_part_sizing_eval(Evas_Object *obj,
>
> if (part_type & ELM_CONFORMANT_VIRTUAL_KEYPAD_PART)
>   {
> +Evas_Coord_Rectangle rect;
> +
>  #ifdef HAVE_ELEMENTARY_X
>  if ((!_conformant_part_geometry_get_from_env
> ("ILLUME_KBD", &sx, &sy, &sw, &sh)) && (xwin))
> @@ -189,6 +193,9 @@ _conformant_part_sizing_eval(Evas_Object *obj,
>  DBG("[KEYPAD]: size(%d,%d, %dx%d).", sx, sy, sw, sh);
>  _conformant_part_size_hints_set
>(obj, sd->virtualkeypad, sx, sy, sw, sh);
> +
> +rect.x = sx; rect.y = sy; rect.w = sw; rect.h = sh;
> +evas_object_smart_callback_call(obj,
> SIG_VIRTUALKEYPAD_SIZE_CHANGED, (void *)&rect);
>   }
>
> if (part_type & ELM_CONFORMANT_SOFTKEY_PART)
> diff --git a/src/lib/elm_conform.h b/src/lib/elm_conform.h
> index a491b95..e1187b5 100644
> --- a/src/lib/elm_conform.h
> +++ b/src/lib/elm_conform.h
> @@ -28,6 +28,9 @@
>   * (@since 1.8)
>   * @li "virtualkeypad,state,off": if virtualkeypad state is switched to
> "off".
>   * (@since 1.8)
> + * @li "virtualkeypad,size,changed": this is called when virtualkeypad
> size is
> + * changed. @c event_info parameter is the virtualkeypad size in
> + * Evas_Coord_Rectangle structure. (@since 1.8)
>   * @li "clipboard,state,on": if clipboard state is switched to "on".
>   * (@since 1.8)
>   * @li "clipboard,state,off": if clipboard state is sw

Re: [E-devel] [EGIT] [core/elementary] master 01/01: popup: Added support for popup move. elm_popup_move.

2013-11-03 Thread Daniel Juyung Seo
On Mon, Nov 4, 2013 at 2:42 PM, ChunEon Park  wrote:

> Abosulte position for the popup is insane if the parent position is
> changed.
> And totally popup is depends on the notify, it should follow the notify
> concept.
>
>
Agreed. I also suggested to create elm_popup_align_set() instead of this.
And he suggested elm_popup_move() to use pixel which I found it useful.

Because the author of this commit is away, I will fix it before the today's
feature freeze:
1. adding elm_popup_align_set()
2. fixing elm_popup_move() to depend on its parent position.
3. (optional) adding elm_notify_move() to use pixel

Thanks.

Daniel Juyung Seo (SeoZ)


>
> 
> -Regards, Hermet-
>
> -Original Message-
> From: "Daniel Juyung Seo"
> To: "Enlightenment developer list"<
> enlightenment-devel@lists.sourceforge.net>;
> Cc: ;
> Sent: 2013-11-04 (월) 14:37:54
> Subject: Re: [E-devel] [EGIT] [core/elementary] master 01/01: popup: Added
> support for popup move. elm_popup_move.
>
> On Mon, Nov 4, 2013 at 2:31 PM, ChunEon Park @naver.com> wrote:
>
> > Eek!
> >
> > How about keeping the API name with notify?
> > elm_notify_align_set()?
> >
>
> Thanks for the interest and comments but the concept is different from
> align_set.
> elm_notify_align_set() gets relative position as a parameter but
> elm_popup_move() gets absolute pixel information just like elm_menu_move().
> So elm_popup_move() is correct.
>
> EAPI void elm_notify_align_set(Evas_Object *obj,
> double horizontal, double vertical);
> EAPI void elm_menu_move(Evas_Object *obj,
> Evas_Coord x, Evas_Coord y);
> EAPI void elm_popup_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y);
>
> Thanks.
>
> Daniel Juyung Seo (SeoZ)
>
>
>
> >
> > 
> > -Regards, Hermet-
> >
> >
> > -Original Message-
> > From: "Abhinandan Aryadipta"@samsung.com>
> > To: @lists.enlightenment.org>;
> > Cc:
> > Sent: 2013-11-03 (일) 23:29:06
> > Subject: [EGIT] [core/elementary] master 01/01: popup: Added support for
> > popup move. elm_popup_move.
> >
> > seoz pushed a commit to branch master.
> >
> >
> >
> http://git.enlightenment.org/core/elementary.git/commit/?id=f67ecb2028dd663aa4b0d9fe78b2a392ac169e7e
> >
> > commit f67ecb2028dd663aa4b0d9fe78b2a392ac169e7e
> > Author: Abhinandan Aryadipta @samsung.com>
> > Date:   Sun Nov 3 23:01:19 2013 +0900
> >
> > popup: Added support for popup move. elm_popup_move.
> >
> > Summary: Added support for popup move
> >
> > Test Plan: elm_popup_move
> >
> > Reviewers: seoz, singh.amitesh, tasn, Hermet
> >
> > CC: raster
> >
> > Differential Revision: https://phab.enlightenment.org/D247
> > ---
> >  ChangeLog4 
> >  NEWS 1 +
> >  src/bin/test_popup.c58
> > ++
> >  src/lib/elc_popup.c 41 
> >  src/lib/elc_popup_eo.h  14 +++
> >  src/lib/elc_popup_legacy.h  15 
> >  6 files changed, 133 insertions(+)
> >
> > diff --git a/ChangeLog b/ChangeLog
> > index 66e4536..434f65f 100644
> > --- a/ChangeLog
> > +++ b/ChangeLog
> > @@ -1741,3 +1741,7 @@
> >  * genlist , gengrid: Add
> > ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL.
> >  It disallow multiple selection when clicked without control
> > pressed although
> >  multiple selection is enabled.
> > +
> > +2013-10-03  Abhinandan Aryadipta (aryarockstar)
> > +
> > +* Popup - Added elm_popup_move() api.
> > diff --git a/NEWS b/NEWS
> > index 4ba58bf..fece1e7 100644
> > --- a/NEWS
> > +++ b/NEWS
> > @@ -102,6 +102,7 @@ Additions:
> > * Add "virtualkeypad,size,changed" callback on virtualkeypad min size
> > change for conformant.
> > * Add elm_slider_step_get(), elm_slider_step_set() for slider.
> > * Add ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL select mode for
> > genlist/gengrid.
> > +   * Add support elm_popup_move() for popup.
> >
> >  Improvements:
> >
> > diff --git a/src/bin/test_popup.c b/src/bin/test_popup.c
> > index fa2d06e..945c3df 100644
> > --- a/src/bin/test_popup.c
> > +++ b/src/bin/test_popup.c
> > @@ -22,6 +22,35 @@ _popup_close_cb(void *data, Evas_Object *obj
> > EINA_UNUSED,
> >  }
> >
> >  static void
> > +_popup_move_cb(void *data, Evas_Object *obj EINA_UNUSED,
> > +   void *event_info EINA_UNUSED)
> > +{
> > +   static int k=0;
> > +
> > +   if (k == 0)
> > + elm_popup_move(data, -10, 50);//negative x
> > +   else if (k == 1)
> > + elm_popup_move(data, 40, -100);//negative y
> > +   else if (k == 2)
> > + elm_popup_move(data, 0, 0);//zero x zero y
> > +   else if (k == 3)
> > + elm_popup_move(data, 40, 50);
> > +   else if (k == 4)
> > + elm_popup_move(data, 80, 100);
> > +   else if (k == 5)
> > + elm_popup_move(data, 120, 150);
> > +   else if (k == 6)
> > + elm_popup_move(data, 160, 200);
> > +   else if 

Re: [E-devel] admin/devs.git layout changes

2013-11-03 Thread Daniel Juyung Seo
On Mon, Nov 4, 2013 at 3:44 PM, Carsten Haitzler wrote:

> On Mon, 4 Nov 2013 13:12:13 +0900 (KST) ChunEon Park 
> said:
>
> > Thanks you.
> >
> > But One question.
> > Do we need to list up the inactive developers in the website?
> >
> > It says, category is contact. but they are inactive?
>
> respect for having contributed in the past.
>
>
Yes they're deserve it.
It's credit.
I also agree with keeping them listed.

Daniel Juyung Seo (SeoZ)



> > 
> > -Regards, Hermet-
> >
> > -Original Message-
> > From: "Tom Hacohen"
> > To: "Enlightenment developer
> > list"; Cc:
> > Sent: 2013-11-02 (토) 00:31:32
> > Subject: Re: [E-devel] admin/devs.git layout changes
> >
> > On 01/11/13 15:27, Tom Hacohen wrote:
> > > On 01/11/13 14:45, Tom Hacohen wrote:
> > >> Hey guys,
> > >>
> > >> As part of the probie access, we are overhauling the admin/devs.git
> repo
> > >> a bit.
> > >>
> > >>From now on, instead of having all the devs in dirs on the root of
> the
> > >> repo, they'll reside in subdirectories according to access groups.
> > >>
> > >> For now, we have those in mind:
> > >> developers/
> > >> probies/
> > >> old/ - for inactive developers (this will let us scrape them for the
> > >> website as well).
> > >>
> > >> So in order to delete developers, "git mv" to old, don't remove.
> > >>
> > >> Devs in old/ will have 0 access (as if they were deleted).
> > >> Devs in developers/ will have full access (like now)
> > >> Devs in probies/ will only be able to change their own directory
> > >> (info/images/keys) in order to prevent priv escalation.
> > >>
> > >> We will carry out this change later today.
> > >
> > > Chris found "old" confusing (he thinks he should be there as well, and
> I
> > > agree) so I changed "old" to "inactive".
> > >
> > > Also, we now automatically generate the "inactive developers" section
> in:
> > > https://enlightenment.org/p.php?p=contact&l=en
> > >
> > > from that repo.
> > >
> > > All of those changes haven't been pushed yet, as we still need to
> > > rewrite the access script according to the new changes.
> >
> > Oh, and more info:
> > New layout:
> > https://git.enlightenment.org/admin/devs.git/tree/?h=devs/tasn/new_devs
> >
> > www parsing change:
> >
> https://git.enlightenment.org/website/www.git/commit/?h=devs/tasn/new_devs
> >
> > Please let me know if you have any comments.
> >
> > --
> > Tom.
> >
> >
> --
> > 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=65839951&iu=/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=65839951&iu=/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
>
>
>
> --
> 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=65839951&iu=/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=65839951&iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https:/

[EGIT] [core/efl] master 01/07: evas: force complete items rebuild on evas_object_font_font_set.

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

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

commit 2d54ae83bf84854291949b5802f361851fbf5977
Author: Cedric Bail 
Date:   Mon Nov 4 15:28:16 2013 +0900

evas: force complete items rebuild on evas_object_font_font_set.
---
 src/lib/evas/canvas/evas_object_text.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/lib/evas/canvas/evas_object_text.c 
b/src/lib/evas/canvas/evas_object_text.c
index dd16e21..d345322 100644
--- a/src/lib/evas/canvas/evas_object_text.c
+++ b/src/lib/evas/canvas/evas_object_text.c
@@ -488,6 +488,7 @@ _text_font_set(Eo *eo_obj, void *_pd, va_list *list)
 o->max_ascent = 0;
 o->max_descent = 0;
  }
+   _evas_object_text_items_clear(o);
_evas_object_text_recalc(eo_obj, o->cur.text);
o->changed = 1;
evas_object_change(eo_obj, obj);

-- 




[EGIT] [core/efl] master 05/07: edje: add string "default" to a default description of the part being build.

2013-11-03 Thread Vyacheslav Reutskiy
cedric pushed a commit to branch master.

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

commit d9a72ccf8b4f03d78d7d781b031cac6f7c9377d0
Author: Vyacheslav Reutskiy 
Date:   Mon Nov 4 15:41:51 2013 +0900

edje: add string "default" to a default description of the part being build.

Fix deffect with a missing tokken 'state' in the first description block 
when
generated by edje_cc (It is perfectly valid to not specify the first 
description
name as it will always be "default").

Reviewers: cedric, seoz

Reviewed By: cedric

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

Signed-off-by: Cedric Bail 
---
 src/bin/edje/edje_cc_handlers.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/bin/edje/edje_cc_handlers.c b/src/bin/edje/edje_cc_handlers.c
index 76cf7e1..88ab25e 100644
--- a/src/bin/edje/edje_cc_handlers.c
+++ b/src/bin/edje/edje_cc_handlers.c
@@ -5043,6 +5043,7 @@ ob_collections_group_parts_part_description(void)
if (!ep->default_desc)
  {
 current_desc = ep->default_desc = ed;
+ed->state.name = strdup("default");
 
   {  /* Get the ptr of the part above current part in hierarchy */
  Edje_Part *node = edje_cc_handlers_hierarchy_parent_get();
@@ -5413,6 +5414,7 @@ st_collections_group_parts_part_description_state(void)
 exit(-1);
  }
 
+   free((void *)ed->state.name);
ed->state.name = s;
if (get_arg_count() == 1)
  ed->state.value = 0.0;

-- 




[EGIT] [core/efl] master 02/07: edje: delete unused images from eet(edj) file.

2013-11-03 Thread Vyacheslav Reutskiy
cedric pushed a commit to branch master.

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

commit cff3ec04b4d234c8ef59f9d6235e85b725e0bcf3
Author: Vyacheslav Reutskiy 
Date:   Mon Nov 4 15:28:59 2013 +0900

edje: delete unused images from eet(edj) file.

Update the data_process_lookups function.
Earlier images are not deleted, but his name was
removed from the list, and it was possible to
access the image by id. Now all unused images
are deleted.

Reviewers: cedric, seoz

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

Signed-off-by: Cedric Bail 
---
 src/bin/edje/edje_cc_out.c | 92 --
 1 file changed, 89 insertions(+), 3 deletions(-)

diff --git a/src/bin/edje/edje_cc_out.c b/src/bin/edje/edje_cc_out.c
index 8c3e862..1c09c3e 100644
--- a/src/bin/edje/edje_cc_out.c
+++ b/src/bin/edje/edje_cc_out.c
@@ -175,6 +175,14 @@ struct _Group_Write
char *errstr;
 };
 
+struct _Image_Unused_Ids
+{
+   int old_id;
+   int new_id;
+};
+
+typedef struct _Image_Unused_Ids Image_Unused_Ids;
+
 static int pending_threads = 0;
 
 static void data_process_string(Edje_Part_Collection *pc, const char *prefix, 
char *s, void (*func)(Edje_Part_Collection *pc, char *name, char* ptr, int 
len));
@@ -2209,6 +2217,58 @@ data_process_part_set(Part_Lookup *target, int value)
  }
 }
 
+static void
+_data_image_id_update(Eina_List *images_unused_list)
+{
+   Image_Unused_Ids *iui;
+   Edje_Part_Collection *pc;
+   Edje_Part *part;
+   Edje_Part_Description_Image *part_desc_image;
+   Edje_Part_Image_Id *tween_id;
+   unsigned int i, j, desc_it;
+   Eina_List *l, *l2, *l3;
+
+#define PART_DESC_IMAGE_ID_UPDATE \
+   EINA_LIST_FOREACH(images_unused_list, l3, iui) \
+ { \
+if (part_desc_image->image.id == iui->old_id) \
+  { \
+ part_desc_image->image.id = iui->new_id; \
+ break; \
+  } \
+ } \
+   for (desc_it = 0; desc_it < part_desc_image->image.tweens_count; desc_it++) 
\
+ { \
+tween_id = part_desc_image->image.tweens[desc_it]; \
+EINA_LIST_FOREACH(images_unused_list, l3, iui) \
+  { \
+ if (tween_id->id == iui->old_id) \
+   { \
+  tween_id->id = iui->new_id; \
+  break; \
+   } \
+  } \
+ }
+
+   EINA_LIST_FOREACH_SAFE(edje_collections, l, l2, pc)
+ {
+for(i = 0; i < pc->parts_count; i++)
+  {
+ part = pc->parts[i];
+ if (part->type == EDJE_PART_TYPE_IMAGE)
+   {
+  part_desc_image = (Edje_Part_Description_Image 
*)part->default_desc;
+  PART_DESC_IMAGE_ID_UPDATE
+  for (j = 0; j < part->other.desc_count; j++)
+ {
+part_desc_image = (Edje_Part_Description_Image 
*)part->other.desc[j];
+PART_DESC_IMAGE_ID_UPDATE
+ }
+   }
+  }
+ }
+}
+
 void
 data_process_lookups(void)
 {
@@ -2224,6 +2284,7 @@ data_process_lookups(void)
void *data;
char *group_name;
Eina_Bool is_lua = EINA_FALSE;
+   Image_Unused_Ids *iui;
 
/* remove all unreferenced Edje_Part_Collection */
EINA_LIST_FOREACH_SAFE(edje_collections, l, l2, pc)
@@ -2534,8 +2595,10 @@ free_group:
 
if (edje_file->image_dir && !is_lua)
  {
-Edje_Image_Directory_Entry *de;
+Edje_Image_Directory_Entry *de, *de_last, *img;
 Edje_Image_Directory_Set *set;
+Edje_Image_Directory_Set_Entry *set_e;
+Eina_List *images_unused_list = NULL;
 unsigned int i;
 
 for (i = 0; i < edje_file->image_dir->entries_count; ++i)
@@ -2548,7 +2611,22 @@ free_group:
  INF("Image '%s' in resource 'edje/image/%i' will not be included 
as it is unused.",
  de->entry, de->id);
 
+ /* so as not to write the unused images, moved last image in the
+list to unused image position and check it */
+ free((void *)de->entry);
  de->entry = NULL;
+ de_last = edje_file->image_dir->entries + 
edje_file->image_dir->entries_count - 1;
+ iui = mem_alloc(SZ(Image_Unused_Ids));
+ iui->old_id = de_last->id;
+ images_unused_list = eina_list_append(images_unused_list, iui);
+ iui->new_id = i;
+ de_last->id = i;
+ memcpy(de, de_last, sizeof (Edje_Image_Directory_Entry));
+ --i; /* need to check a moved image on this index */
+ edje_file->image_dir->entries_count--;
+ img = realloc(edje_file->image_dir->entries,
+   sizeof (Edje_Image_Directory_Entry) * 
edje_file->image_dir->entries_count);
+ edje_file->image_dir->entries = img;
   }
 
 for (i = 0; i < edje_file->image_dir->sets_

[EGIT] [core/efl] master 06/07: edje: fix error _edje_part_description_find_byname, use wrong object.

2013-11-03 Thread Vyacheslav Reutskiy
cedric pushed a commit to branch master.

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

commit 61965279d31b6ea950054148288d16a6345caecf
Author: Vyacheslav Reutskiy 
Date:   Mon Nov 4 15:47:47 2013 +0900

edje: fix error _edje_part_description_find_byname, use wrong object.

Reviewers: cedric, seoz

Reviewed By: cedric

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

Signed-off-by: Cedric Bail 
---
 src/lib/edje/edje_edit.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/lib/edje/edje_edit.c b/src/lib/edje/edje_edit.c
index cfd97bd..c7997cd 100644
--- a/src/lib/edje/edje_edit.c
+++ b/src/lib/edje/edje_edit.c
@@ -41,7 +41,7 @@ EAPI Eina_Error EDJE_EDIT_ERROR_GROUP_DOES_NOT_EXIST = 0;
Edje *ed; \
if (!eo_isa(obj, EDJE_OBJ_CLASS)) \
  return RET; \
-   ed = eo_data_scope_get(obj, EDJE_OBJ_CLASS); \
+   ed = eo_data_scope_get(obj, EDJE_OBJ_CLASS);
 
 /* Get rp(Edje_Real_Part*) from obj(Evas_Object*) and part(char*) */
 #define GET_RP_OR_RETURN(RET) \
@@ -263,10 +263,10 @@ _edje_part_description_find_byname(Edje_Edit *eed, const 
char *part, const char
 
if (!eed || !part || !state) return NULL;
 
-   rp = _edje_real_part_get((Edje *)eed, part);
+   rp = _edje_real_part_get(eed->base, part);
if (!rp) return NULL;
 
-   pd = _edje_part_description_find((Edje *)eed, rp, state, value);
+   pd = _edje_part_description_find(eed->base, rp, state, value);
 
return pd;
 }

-- 




[EGIT] [core/efl] master 04/07: edje: edje_edit api - fixed seg fault in the edje_edit_part_del

2013-11-03 Thread Vyacheslav Reutskiy
cedric pushed a commit to branch master.

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

commit c2c416fdf77017f49aa31a9744aeda9b114e7e61
Author: Vyacheslav Reutskiy 
Date:   Mon Nov 4 15:39:44 2013 +0900

edje: edje_edit api - fixed seg fault in the edje_edit_part_del

Reviewers: cedric, seoz

Reviewed By: cedric

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

Signed-off-by: Cedric Bail 
---
 src/lib/edje/edje_edit.c | 16 +---
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/src/lib/edje/edje_edit.c b/src/lib/edje/edje_edit.c
index be6972d..cfd97bd 100644
--- a/src/lib/edje/edje_edit.c
+++ b/src/lib/edje/edje_edit.c
@@ -315,7 +315,7 @@ _edje_real_part_free(Edje *ed, Edje_Real_Part *rp)
evas_object_del(rp->object);
  }
 
-   if (rp->typedata.swallow->swallowed_object)
+   if ((rp->typedata.swallow) && (rp->typedata.swallow->swallowed_object))
  {
evas_object_smart_member_del(rp->typedata.swallow->swallowed_object);
evas_object_event_callback_del(rp->typedata.swallow->swallowed_object,
@@ -333,10 +333,10 @@ _edje_real_part_free(Edje *ed, Edje_Real_Part *rp)
rp->typedata.swallow->swallowed_object = NULL;
  }
 
-   if (rp->typedata.text->text) eina_stringshare_del(rp->typedata.text->text);
-   if (rp->typedata.text->font) eina_stringshare_del(rp->typedata.text->font);
-   if (rp->typedata.text->cache.in_str) 
eina_stringshare_del(rp->typedata.text->cache.in_str);
-   if (rp->typedata.text->cache.out_str) 
eina_stringshare_del(rp->typedata.text->cache.out_str);
+   if ((rp->typedata.text) && (rp->typedata.text->text)) 
eina_stringshare_del(rp->typedata.text->text);
+   if ((rp->typedata.text) && (rp->typedata.text->font)) 
eina_stringshare_del(rp->typedata.text->font);
+   if ((rp->typedata.text) && (rp->typedata.text->cache.in_str)) 
eina_stringshare_del(rp->typedata.text->cache.in_str);
+   if ((rp->typedata.text) && (rp->typedata.text->cache.out_str)) 
eina_stringshare_del(rp->typedata.text->cache.out_str);
 
if (rp->custom)
  {
@@ -2092,8 +2092,10 @@ edje_edit_part_del(Evas_Object *obj, const char* part)
if (i == id) continue; //don't check the deleted id
real = ed->table_parts[i];
 
-   if (real->typedata.text->source == rp) real->typedata.text->source = 
NULL;
-   if (real->typedata.text->text_source == rp) 
real->typedata.text->text_source = NULL;
+   if ((real->typedata.text) && (real->typedata.text->source == rp))
+  real->typedata.text->source = NULL;
+   if ((real->typedata.text) && (real->typedata.text->text_source == rp))
+  real->typedata.text->text_source = NULL;
 
if (real->part->clip_to_id == rp->part->id)
  {

-- 




[EGIT] [core/efl] master 07/07: AUTHORS: he has been definitively contributing !

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

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

commit 058e03aa7401a197d400ee8330bae5d54e8c42db
Author: Cedric Bail 
Date:   Mon Nov 4 15:48:53 2013 +0900

AUTHORS: he has been definitively contributing !
---
 AUTHORS | 1 +
 1 file changed, 1 insertion(+)

diff --git a/AUTHORS b/AUTHORS
index 83f7666..a1ffecc 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -296,6 +296,7 @@ Bluezery 
 Andrii Kroitor 
 Vorobiov Vitalii 
 m.biliavskyi 
+Vyacheslav Reutskiy 
 
 Emotion
 ---

-- 




[EGIT] [core/efl] master 03/07: eet: Adding EET_DATA_DESCRIPTOR_ADD_MAPPING_BASIC to add a basic type to a union.

2013-11-03 Thread Christophe Sadoine
cedric pushed a commit to branch master.

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

commit 6853dbcf23f71038a14fb4e44c0011dbb475821c
Author: Christophe Sadoine 
Date:   Mon Nov 4 15:33:12 2013 +0900

eet: Adding EET_DATA_DESCRIPTOR_ADD_MAPPING_BASIC to add a basic type to a 
union.

I added EET_DATA_DESCRIPTOR_ADD_MAPPING_BASIC because I need basic types in 
unions, and EET_DATA_DESCRIPTOR_ADD_MAPPING is only for structs.
I also modified the example with a float and a string.

Reviewers: cedric

Reviewed By: cedric

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

Signed-off-by: Cedric Bail 
---
 AUTHORS|  1 +
 ChangeLog  |  4 ++
 NEWS   |  1 +
 src/examples/eet/eet-data-file_descriptor_02.c | 98 +-
 src/lib/eet/Eet.h  | 19 +
 src/lib/eet/eet_data.c | 28 ++--
 6 files changed, 144 insertions(+), 7 deletions(-)

diff --git a/AUTHORS b/AUTHORS
index b41df9e..83f7666 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -68,6 +68,7 @@ Mike Blumenkrantz 
 Lionel Orry 
 Jérôme Pinot 
 Leandro Santiago 
+Christophe Sadoine 
 
 Eo
 --
diff --git a/ChangeLog b/ChangeLog
index 4f7ad02..ed9fe9d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2013-11-03  Christophe Sadoine
+
+* Eet: Added EET_DATA_DESCRIPTOR_ADD_MAPPING_BASIC().
+
 2013-10-24  Sung W. Park (sung_)
 
 * EvasGL: Fixed direct rendering mode not clipping to its clip region.
diff --git a/NEWS b/NEWS
index 2b4f923..b7e0b8c 100644
--- a/NEWS
+++ b/NEWS
@@ -47,6 +47,7 @@ Additions:
  - Add eet_data_descriptor_name_get()
  - Add support EET_T_VALUE
  - Add EET_DATA_DESCRIPTOR_ADD_SUB_NESTED()
+ - Add EET_DATA_DESCRIPTOR_ADD_MAPPING_BASIC()
 * Eo:
  - Add generic efl object infrastructure
  - Add debugging facility
diff --git a/src/examples/eet/eet-data-file_descriptor_02.c 
b/src/examples/eet/eet-data-file_descriptor_02.c
index bfd34d1..cba0377 100644
--- a/src/examples/eet/eet-data-file_descriptor_02.c
+++ b/src/examples/eet/eet-data-file_descriptor_02.c
@@ -23,7 +23,9 @@ enum _Example_Data_Type
EET_UNKNOWN = 0,
EET_STRUCT1,
EET_STRUCT2,
-   EET_STRUCT3
+   EET_STRUCT3,
+   EET_BASIC_FLOAT,
+   EET_BASIC_STRING
 };
 
 struct
@@ -34,6 +36,8 @@ struct
{ EET_STRUCT1, "ST1" },
{ EET_STRUCT2, "ST2" },
{ EET_STRUCT3, "ST3" },
+   { EET_BASIC_FLOAT, "float" },
+   { EET_BASIC_STRING, "string" },
{ EET_UNKNOWN, NULL }
 };
 
@@ -63,6 +67,8 @@ struct _Example_Union
   Example_Struct1 st1;
   Example_Struct2 st2;
   Example_Struct3 st3;
+  float f;
+  const char* string;
} u;
 };
 
@@ -288,6 +294,10 @@ _data_descriptors_init(void)
  _union_unified_descriptor, "ST2", _struct_2_descriptor);
EET_DATA_DESCRIPTOR_ADD_MAPPING(
  _union_unified_descriptor, "ST3", _struct_3_descriptor);
+   EET_DATA_DESCRIPTOR_ADD_MAPPING_BASIC(
+ _union_unified_descriptor, "float", EET_T_FLOAT);
+   EET_DATA_DESCRIPTOR_ADD_MAPPING_BASIC(
+ _union_unified_descriptor, "string", EET_T_STRING);
 
EET_DATA_DESCRIPTOR_ADD_UNION(
  _union_descriptor, Example_Union, "u", u, type,
@@ -404,6 +414,40 @@ _union_3_new(const char *v1)
return un;
 }
 
+static Example_Union *
+_union_float_new(const char *v1)
+{
+   Example_Union *un = calloc(1, sizeof(Example_Union));
+   if (!un)
+ {
+fprintf(
+  stderr, "ERROR: could not allocate an Example_Union struct.\n");
+return NULL;
+ }
+
+   un->type = EET_BASIC_FLOAT;
+   un->u.f = atof(v1);
+
+   return un;
+}
+
+static Example_Union *
+_union_string_new(const char *v1)
+{
+   Example_Union *un = calloc(1, sizeof(Example_Union));
+   if (!un)
+ {
+fprintf(
+  stderr, "ERROR: could not allocate an Example_Union struct.\n");
+return NULL;
+ }
+
+   un->type = EET_BASIC_STRING;
+   un->u.string = v1;
+
+   return un;
+}
+
 static Example_Variant *
 _variant_1_new(const char *v1,
const char *v2,
@@ -624,6 +668,14 @@ _print_union(const Example_Union *un)
 printf("\t\t  val1: %i\n", un->u.st3.body);
 break;
 
+  case EET_BASIC_FLOAT:
+printf("\t\t  float: %f\n", un->u.f);
+break;
+
+  case EET_BASIC_STRING:
+printf("\t\t  string: %s\n", un->u.string);
+break;
+
   default:
 return;
  }
@@ -712,7 +764,7 @@ main(int   argc,
   int type = atoi(argv[4]);
   Example_Union *un;
 
-  if (type < EET_STRUCT1 || type > EET_STRUCT3)
+  if (type < EET_STRUCT1 || type > EET_BASIC_STRING)
 {
fprintf(stderr,
"ERROR: invalid type parameter (%s).\n",
@@ -786,6 +838,48 @@ main

[E-devel] Elementary QuickLaunch and PIE executables

2013-11-03 Thread Jean-Philippe André
Hello,


TL;DR: I want to get rid of the quicklaunch complex wrapper + lib system
and compile apps with -fPIC and link with -pie instead. Little to no
changes required in elementary.


As was pointed out recentely on this very mailing list, it is possible to
make .so files that are runnable. The mail pointed to:
http://rachid.koucha.free.fr/tech_corner/executable_lib.html

This is IMO a pretty hacky solution (especially the part where we need to
point directly to ld-linux-2.so). It's not very portable as it already
won't run on x64 (need to change the ld library path). Also, I could not
manage to get proper argc, argv in main (only the program name).

Instead of that, we can compile apps with -fPIC (or -fpic or -fpie or
-fPIE) and link with -pie. This will make linkable executables, instead of
executable shared libraries :)


Now, as you know, we have this Quicklaunch system that will load a library
containing the application's code and run elm_main from there. The
associated executable is then just a wrapper linked to that library and
that calls elm_quicklaunch_fallback().

I see a few drawbacks to this model:
- Compilation requires to take care of Quicklaunch, enabling #define flags
as well as adding specific instructions in Makefiles to generate the lib
and wrapper.
- A program needs to be installed in order to be run by elementary_run
(looks into ../lib folder)
- There are two files instead of one (lib + wrapper)


All of this seems a bit confusing to me, especially considering it is
pretty easy to render an executable linkable by dlopen/dlsym, by using
-fpie and -pie.
I believe we can consider the performance hit minimal in normal use cases.


For legacy support, we need to keep some stuff around, but I believe we
should get rid of -DELM_LIB_QUICKLAUNCH and advise to compile PIE instead.
Should we go as far as adding a #warning if ELM_LIB_QUICKLAUNCH is defined?
:)


Best regards,

-- 
Jean-Philippe André
--
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=65839951&iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] admin/devs.git layout changes

2013-11-03 Thread The Rasterman
On Mon, 4 Nov 2013 13:12:13 +0900 (KST) ChunEon Park  said:

> Thanks you.
> 
> But One question.
> Do we need to list up the inactive developers in the website?
> 
> It says, category is contact. but they are inactive?

respect for having contributed in the past.

> 
> -Regards, Hermet- 
> 
> -Original Message-
> From: "Tom Hacohen" 
> To: "Enlightenment developer
> list"; Cc: 
> Sent: 2013-11-02 (토) 00:31:32
> Subject: Re: [E-devel] admin/devs.git layout changes
> 
> On 01/11/13 15:27, Tom Hacohen wrote:
> > On 01/11/13 14:45, Tom Hacohen wrote:
> >> Hey guys,
> >>
> >> As part of the probie access, we are overhauling the admin/devs.git repo
> >> a bit.
> >>
> >>From now on, instead of having all the devs in dirs on the root of the
> >> repo, they'll reside in subdirectories according to access groups.
> >>
> >> For now, we have those in mind:
> >> developers/
> >> probies/
> >> old/ - for inactive developers (this will let us scrape them for the
> >> website as well).
> >>
> >> So in order to delete developers, "git mv" to old, don't remove.
> >>
> >> Devs in old/ will have 0 access (as if they were deleted).
> >> Devs in developers/ will have full access (like now)
> >> Devs in probies/ will only be able to change their own directory
> >> (info/images/keys) in order to prevent priv escalation.
> >>
> >> We will carry out this change later today.
> >
> > Chris found "old" confusing (he thinks he should be there as well, and I
> > agree) so I changed "old" to "inactive".
> >
> > Also, we now automatically generate the "inactive developers" section in:
> > https://enlightenment.org/p.php?p=contact&l=en
> >
> > from that repo.
> >
> > All of those changes haven't been pushed yet, as we still need to
> > rewrite the access script according to the new changes.
> 
> Oh, and more info:
> New layout:
> https://git.enlightenment.org/admin/devs.git/tree/?h=devs/tasn/new_devs
> 
> www parsing change:
> https://git.enlightenment.org/website/www.git/commit/?h=devs/tasn/new_devs
> 
> Please let me know if you have any comments.
> 
> --
> Tom.
> 
> --
> 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=65839951&iu=/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=65839951&iu=/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


--
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=65839951&iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: Revert "elm_conform.c: Added "virtualkeypad,size,changed" smart callback."

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

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

commit 4f1bffadfa689c83419f7e56c532334fe6996713
Author: ChunEon Park 
Date:   Mon Nov 4 14:51:06 2013 +0900

Revert "elm_conform.c: Added "virtualkeypad,size,changed" smart callback."

This reverts commit cbd7446f0bf413ad821ac40703d2a2ca728758ef.

Conflicts:

ChangeLog
NEWS

Please be more considerable to add this feature.
The function itself is not logical and we don't think it's proper for the 
conformant yet.
---
 ChangeLog | 4 
 NEWS  | 1 -
 src/lib/elm_conform.c | 7 ---
 src/lib/elm_conform.h | 3 ---
 4 files changed, 15 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 9207326..1cede7a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1728,10 +1728,6 @@
 
 * image: Add support for "clicked" callback on Return/space/KP_Enter 
key press.
 
-2013-10-30  Daniel Juyung Seo (SeoZ)
-
-* conform: Added "virtualkeypad,size,changed" callback on 
virtualkeypad min size change.
-
 2013-10-30  Shilpa Onkar Singh
 
 * slider: Added elm_slider_step_get(), elm_slider_step_set().
diff --git a/NEWS b/NEWS
index 2eac992..23d93e3 100644
--- a/NEWS
+++ b/NEWS
@@ -99,7 +99,6 @@ Additions:
* 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.
-   * Add "virtualkeypad,size,changed" callback on virtualkeypad min size 
change for conformant.
* Add elm_slider_step_get(), elm_slider_step_set() for slider.
* Add support elm_popup_move() for popup.
* Add multi select mode for genlist/gengrid.
diff --git a/src/lib/elm_conform.c b/src/lib/elm_conform.c
index cb00888..9636ab8 100644
--- a/src/lib/elm_conform.c
+++ b/src/lib/elm_conform.c
@@ -36,14 +36,12 @@ static const char SOFTKEY_PART[] = "elm.swallow.softkey";
 
 static const char SIG_VIRTUALKEYPAD_STATE_ON[] = "virtualkeypad,state,on";
 static const char SIG_VIRTUALKEYPAD_STATE_OFF[] = "virtualkeypad,state,off";
-static const char SIG_VIRTUALKEYPAD_SIZE_CHANGED[] = 
"virtualkeypad,size,changed";
 static const char SIG_CLIPBOARD_STATE_ON[] = "clipboard,state,on";
 static const char SIG_CLIPBOARD_STATE_OFF[] = "clipboard,state,off";
 
 static const Evas_Smart_Cb_Description _smart_callbacks[] = {
{SIG_VIRTUALKEYPAD_STATE_ON, ""},
{SIG_VIRTUALKEYPAD_STATE_OFF, ""},
-   {SIG_VIRTUALKEYPAD_SIZE_CHANGED, ""},
{SIG_CLIPBOARD_STATE_ON, ""},
{SIG_CLIPBOARD_STATE_OFF, ""},
{NULL, NULL}
@@ -168,8 +166,6 @@ _conformant_part_sizing_eval(Evas_Object *obj,
 
if (part_type & ELM_CONFORMANT_VIRTUAL_KEYPAD_PART)
  {
-Evas_Coord_Rectangle rect;
-
 #ifdef HAVE_ELEMENTARY_X
 if ((!_conformant_part_geometry_get_from_env
("ILLUME_KBD", &sx, &sy, &sw, &sh)) && (xwin))
@@ -193,9 +189,6 @@ _conformant_part_sizing_eval(Evas_Object *obj,
 DBG("[KEYPAD]: size(%d,%d, %dx%d).", sx, sy, sw, sh);
 _conformant_part_size_hints_set
   (obj, sd->virtualkeypad, sx, sy, sw, sh);
-
-rect.x = sx; rect.y = sy; rect.w = sw; rect.h = sh;
-evas_object_smart_callback_call(obj, SIG_VIRTUALKEYPAD_SIZE_CHANGED, 
(void *)&rect);
  }
 
if (part_type & ELM_CONFORMANT_SOFTKEY_PART)
diff --git a/src/lib/elm_conform.h b/src/lib/elm_conform.h
index e1187b5..a491b95 100644
--- a/src/lib/elm_conform.h
+++ b/src/lib/elm_conform.h
@@ -28,9 +28,6 @@
  * (@since 1.8)
  * @li "virtualkeypad,state,off": if virtualkeypad state is switched to "off".
  * (@since 1.8) 
- * @li "virtualkeypad,size,changed": this is called when virtualkeypad size is
- * changed. @c event_info parameter is the virtualkeypad size in
- * Evas_Coord_Rectangle structure. (@since 1.8)
  * @li "clipboard,state,on": if clipboard state is switched to "on".
  * (@since 1.8)
  * @li "clipboard,state,off": if clipboard state is switched to "off".

-- 




Re: [E-devel] [EGIT] [core/elementary] master 01/01: popup: Added support for popup move. elm_popup_move.

2013-11-03 Thread ChunEon Park
Abosulte position for the popup is insane if the parent position is changed.
And totally popup is depends on the notify, it should follow the notify concept.

 

-Regards, Hermet- 

-Original Message-
From: "Daniel Juyung Seo" 
To: "Enlightenment developer list"; 
Cc: ; 
Sent: 2013-11-04 (월) 14:37:54
Subject: Re: [E-devel] [EGIT] [core/elementary] master 01/01: popup: Added 
support for popup move. elm_popup_move.

On Mon, Nov 4, 2013 at 2:31 PM, ChunEon Park @naver.com> wrote:

> Eek!
>
> How about keeping the API name with notify?
> elm_notify_align_set()?
>

Thanks for the interest and comments but the concept is different from
align_set.
elm_notify_align_set() gets relative position as a parameter but
elm_popup_move() gets absolute pixel information just like elm_menu_move().
So elm_popup_move() is correct.

EAPI void elm_notify_align_set(Evas_Object *obj,
double horizontal, double vertical);
EAPI void elm_menu_move(Evas_Object *obj,
Evas_Coord x, Evas_Coord y);
EAPI void elm_popup_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y);

Thanks.

Daniel Juyung Seo (SeoZ)



>
> 
> -Regards, Hermet-
>
>
> -Original Message-
> From: "Abhinandan Aryadipta"@samsung.com>
> To: @lists.enlightenment.org>;
> Cc:
> Sent: 2013-11-03 (일) 23:29:06
> Subject: [EGIT] [core/elementary] master 01/01: popup: Added support for
> popup move. elm_popup_move.
>
> seoz pushed a commit to branch master.
>
>
> http://git.enlightenment.org/core/elementary.git/commit/?id=f67ecb2028dd663aa4b0d9fe78b2a392ac169e7e
>
> commit f67ecb2028dd663aa4b0d9fe78b2a392ac169e7e
> Author: Abhinandan Aryadipta @samsung.com>
> Date:   Sun Nov 3 23:01:19 2013 +0900
>
> popup: Added support for popup move. elm_popup_move.
>
> Summary: Added support for popup move
>
> Test Plan: elm_popup_move
>
> Reviewers: seoz, singh.amitesh, tasn, Hermet
>
> CC: raster
>
> Differential Revision: https://phab.enlightenment.org/D247
> ---
>  ChangeLog4 
>  NEWS 1 +
>  src/bin/test_popup.c58
> ++
>  src/lib/elc_popup.c 41 
>  src/lib/elc_popup_eo.h  14 +++
>  src/lib/elc_popup_legacy.h  15 
>  6 files changed, 133 insertions(+)
>
> diff --git a/ChangeLog b/ChangeLog
> index 66e4536..434f65f 100644
> --- a/ChangeLog
> +++ b/ChangeLog
> @@ -1741,3 +1741,7 @@
>  * genlist , gengrid: Add
> ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL.
>  It disallow multiple selection when clicked without control
> pressed although
>  multiple selection is enabled.
> +
> +2013-10-03  Abhinandan Aryadipta (aryarockstar)
> +
> +* Popup - Added elm_popup_move() api.
> diff --git a/NEWS b/NEWS
> index 4ba58bf..fece1e7 100644
> --- a/NEWS
> +++ b/NEWS
> @@ -102,6 +102,7 @@ Additions:
> * Add "virtualkeypad,size,changed" callback on virtualkeypad min size
> change for conformant.
> * Add elm_slider_step_get(), elm_slider_step_set() for slider.
> * Add ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL select mode for
> genlist/gengrid.
> +   * Add support elm_popup_move() for popup.
>
>  Improvements:
>
> diff --git a/src/bin/test_popup.c b/src/bin/test_popup.c
> index fa2d06e..945c3df 100644
> --- a/src/bin/test_popup.c
> +++ b/src/bin/test_popup.c
> @@ -22,6 +22,35 @@ _popup_close_cb(void *data, Evas_Object *obj
> EINA_UNUSED,
>  }
>
>  static void
> +_popup_move_cb(void *data, Evas_Object *obj EINA_UNUSED,
> +   void *event_info EINA_UNUSED)
> +{
> +   static int k=0;
> +
> +   if (k == 0)
> + elm_popup_move(data, -10, 50);//negative x
> +   else if (k == 1)
> + elm_popup_move(data, 40, -100);//negative y
> +   else if (k == 2)
> + elm_popup_move(data, 0, 0);//zero x zero y
> +   else if (k == 3)
> + elm_popup_move(data, 40, 50);
> +   else if (k == 4)
> + elm_popup_move(data, 80, 100);
> +   else if (k == 5)
> + elm_popup_move(data, 120, 150);
> +   else if (k == 6)
> + elm_popup_move(data, 160, 200);
> +   else if (k == 7)
> + elm_popup_move(data, 500, );//excess y
> +   else
> + elm_popup_move(data, , 500);//excess x
> +   k++;
> +   if (k > 8)
> + k = 0;
> +}
> +
> +static void
>  _g_popup_response_cb(void *data, Evas_Object *obj EINA_UNUSED,
>   void *event_info EINA_UNUSED)
>  {
> @@ -467,6 +496,33 @@ _popup_transparent_cb(void *data, Evas_Object *obj
> EINA_UNUSED,
>  }
>
>  static void
> +_popup_transparent_move_cb(void *data, Evas_Object *obj EINA_UNUSED,
> +   void *event_info EINA_UNUSED)
> +{
> +   Evas_Object *popup;
> +   Evas_Object *btn, *btn1;
> +
> +   popup = elm_popup_add(data);
> +   elm_object_style_set(popup, "transparent");
> +   elm_object_text_set(popup, "This Popup has transparent background");
> +
> +   // popup

Re: [E-devel] [EGIT] [core/elementary] master 01/01: popup: Added support for popup move. elm_popup_move.

2013-11-03 Thread ChunEon Park
align_set is  proper for the popup if the popup area is depends on the parent.
 

-Regards, Hermet- 

-Original Message-
From: "Daniel Juyung Seo" 
To: "Enlightenment developer list"; 
Cc: ; 
Sent: 2013-11-04 (월) 14:37:54
Subject: Re: [E-devel] [EGIT] [core/elementary] master 01/01: popup: Added 
support for popup move. elm_popup_move.

On Mon, Nov 4, 2013 at 2:31 PM, ChunEon Park @naver.com> wrote:

> Eek!
>
> How about keeping the API name with notify?
> elm_notify_align_set()?
>

Thanks for the interest and comments but the concept is different from
align_set.
elm_notify_align_set() gets relative position as a parameter but
elm_popup_move() gets absolute pixel information just like elm_menu_move().
So elm_popup_move() is correct.

EAPI void elm_notify_align_set(Evas_Object *obj,
double horizontal, double vertical);
EAPI void elm_menu_move(Evas_Object *obj,
Evas_Coord x, Evas_Coord y);
EAPI void elm_popup_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y);

Thanks.

Daniel Juyung Seo (SeoZ)



>
> 
> -Regards, Hermet-
>
>
> -Original Message-
> From: "Abhinandan Aryadipta"@samsung.com>
> To: @lists.enlightenment.org>;
> Cc:
> Sent: 2013-11-03 (일) 23:29:06
> Subject: [EGIT] [core/elementary] master 01/01: popup: Added support for
> popup move. elm_popup_move.
>
> seoz pushed a commit to branch master.
>
>
> http://git.enlightenment.org/core/elementary.git/commit/?id=f67ecb2028dd663aa4b0d9fe78b2a392ac169e7e
>
> commit f67ecb2028dd663aa4b0d9fe78b2a392ac169e7e
> Author: Abhinandan Aryadipta @samsung.com>
> Date:   Sun Nov 3 23:01:19 2013 +0900
>
> popup: Added support for popup move. elm_popup_move.
>
> Summary: Added support for popup move
>
> Test Plan: elm_popup_move
>
> Reviewers: seoz, singh.amitesh, tasn, Hermet
>
> CC: raster
>
> Differential Revision: https://phab.enlightenment.org/D247
> ---
>  ChangeLog4 
>  NEWS 1 +
>  src/bin/test_popup.c58
> ++
>  src/lib/elc_popup.c 41 
>  src/lib/elc_popup_eo.h  14 +++
>  src/lib/elc_popup_legacy.h  15 
>  6 files changed, 133 insertions(+)
>
> diff --git a/ChangeLog b/ChangeLog
> index 66e4536..434f65f 100644
> --- a/ChangeLog
> +++ b/ChangeLog
> @@ -1741,3 +1741,7 @@
>  * genlist , gengrid: Add
> ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL.
>  It disallow multiple selection when clicked without control
> pressed although
>  multiple selection is enabled.
> +
> +2013-10-03  Abhinandan Aryadipta (aryarockstar)
> +
> +* Popup - Added elm_popup_move() api.
> diff --git a/NEWS b/NEWS
> index 4ba58bf..fece1e7 100644
> --- a/NEWS
> +++ b/NEWS
> @@ -102,6 +102,7 @@ Additions:
> * Add "virtualkeypad,size,changed" callback on virtualkeypad min size
> change for conformant.
> * Add elm_slider_step_get(), elm_slider_step_set() for slider.
> * Add ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL select mode for
> genlist/gengrid.
> +   * Add support elm_popup_move() for popup.
>
>  Improvements:
>
> diff --git a/src/bin/test_popup.c b/src/bin/test_popup.c
> index fa2d06e..945c3df 100644
> --- a/src/bin/test_popup.c
> +++ b/src/bin/test_popup.c
> @@ -22,6 +22,35 @@ _popup_close_cb(void *data, Evas_Object *obj
> EINA_UNUSED,
>  }
>
>  static void
> +_popup_move_cb(void *data, Evas_Object *obj EINA_UNUSED,
> +   void *event_info EINA_UNUSED)
> +{
> +   static int k=0;
> +
> +   if (k == 0)
> + elm_popup_move(data, -10, 50);//negative x
> +   else if (k == 1)
> + elm_popup_move(data, 40, -100);//negative y
> +   else if (k == 2)
> + elm_popup_move(data, 0, 0);//zero x zero y
> +   else if (k == 3)
> + elm_popup_move(data, 40, 50);
> +   else if (k == 4)
> + elm_popup_move(data, 80, 100);
> +   else if (k == 5)
> + elm_popup_move(data, 120, 150);
> +   else if (k == 6)
> + elm_popup_move(data, 160, 200);
> +   else if (k == 7)
> + elm_popup_move(data, 500, );//excess y
> +   else
> + elm_popup_move(data, , 500);//excess x
> +   k++;
> +   if (k > 8)
> + k = 0;
> +}
> +
> +static void
>  _g_popup_response_cb(void *data, Evas_Object *obj EINA_UNUSED,
>   void *event_info EINA_UNUSED)
>  {
> @@ -467,6 +496,33 @@ _popup_transparent_cb(void *data, Evas_Object *obj
> EINA_UNUSED,
>  }
>
>  static void
> +_popup_transparent_move_cb(void *data, Evas_Object *obj EINA_UNUSED,
> +   void *event_info EINA_UNUSED)
> +{
> +   Evas_Object *popup;
> +   Evas_Object *btn, *btn1;
> +
> +   popup = elm_popup_add(data);
> +   elm_object_style_set(popup, "transparent");
> +   elm_object_text_set(popup, "This Popup has transparent background");
> +
> +   // popup buttons
> +   btn = elm_button_add(popup);
> +   elm_object_text_set(btn, "Move

Re: [E-devel] [EGIT] [core/elementary] master 01/01: popup: Added support for popup move. elm_popup_move.

2013-11-03 Thread Daniel Juyung Seo
On Mon, Nov 4, 2013 at 2:31 PM, ChunEon Park  wrote:

> Eek!
>
> How about keeping the API name with notify?
> elm_notify_align_set()?
>

Thanks for the interest and comments but the concept is different from
align_set.
elm_notify_align_set() gets relative position as a parameter but
elm_popup_move() gets absolute pixel information just like elm_menu_move().
So elm_popup_move() is correct.

EAPI void elm_notify_align_set(Evas_Object *obj,
double horizontal, double vertical);
EAPI void elm_menu_move(Evas_Object *obj,
Evas_Coord x, Evas_Coord y);
EAPI void elm_popup_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y);

Thanks.

Daniel Juyung Seo (SeoZ)



>
> 
> -Regards, Hermet-
>
>
> -Original Message-
> From: "Abhinandan Aryadipta"
> To: ;
> Cc:
> Sent: 2013-11-03 (일) 23:29:06
> Subject: [EGIT] [core/elementary] master 01/01: popup: Added support for
> popup move. elm_popup_move.
>
> seoz pushed a commit to branch master.
>
>
> http://git.enlightenment.org/core/elementary.git/commit/?id=f67ecb2028dd663aa4b0d9fe78b2a392ac169e7e
>
> commit f67ecb2028dd663aa4b0d9fe78b2a392ac169e7e
> Author: Abhinandan Aryadipta @samsung.com>
> Date:   Sun Nov 3 23:01:19 2013 +0900
>
> popup: Added support for popup move. elm_popup_move.
>
> Summary: Added support for popup move
>
> Test Plan: elm_popup_move
>
> Reviewers: seoz, singh.amitesh, tasn, Hermet
>
> CC: raster
>
> Differential Revision: https://phab.enlightenment.org/D247
> ---
>  ChangeLog4 
>  NEWS 1 +
>  src/bin/test_popup.c58
> ++
>  src/lib/elc_popup.c 41 
>  src/lib/elc_popup_eo.h  14 +++
>  src/lib/elc_popup_legacy.h  15 
>  6 files changed, 133 insertions(+)
>
> diff --git a/ChangeLog b/ChangeLog
> index 66e4536..434f65f 100644
> --- a/ChangeLog
> +++ b/ChangeLog
> @@ -1741,3 +1741,7 @@
>  * genlist , gengrid: Add
> ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL.
>  It disallow multiple selection when clicked without control
> pressed although
>  multiple selection is enabled.
> +
> +2013-10-03  Abhinandan Aryadipta (aryarockstar)
> +
> +* Popup - Added elm_popup_move() api.
> diff --git a/NEWS b/NEWS
> index 4ba58bf..fece1e7 100644
> --- a/NEWS
> +++ b/NEWS
> @@ -102,6 +102,7 @@ Additions:
> * Add "virtualkeypad,size,changed" callback on virtualkeypad min size
> change for conformant.
> * Add elm_slider_step_get(), elm_slider_step_set() for slider.
> * Add ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL select mode for
> genlist/gengrid.
> +   * Add support elm_popup_move() for popup.
>
>  Improvements:
>
> diff --git a/src/bin/test_popup.c b/src/bin/test_popup.c
> index fa2d06e..945c3df 100644
> --- a/src/bin/test_popup.c
> +++ b/src/bin/test_popup.c
> @@ -22,6 +22,35 @@ _popup_close_cb(void *data, Evas_Object *obj
> EINA_UNUSED,
>  }
>
>  static void
> +_popup_move_cb(void *data, Evas_Object *obj EINA_UNUSED,
> +   void *event_info EINA_UNUSED)
> +{
> +   static int k=0;
> +
> +   if (k == 0)
> + elm_popup_move(data, -10, 50);//negative x
> +   else if (k == 1)
> + elm_popup_move(data, 40, -100);//negative y
> +   else if (k == 2)
> + elm_popup_move(data, 0, 0);//zero x zero y
> +   else if (k == 3)
> + elm_popup_move(data, 40, 50);
> +   else if (k == 4)
> + elm_popup_move(data, 80, 100);
> +   else if (k == 5)
> + elm_popup_move(data, 120, 150);
> +   else if (k == 6)
> + elm_popup_move(data, 160, 200);
> +   else if (k == 7)
> + elm_popup_move(data, 500, );//excess y
> +   else
> + elm_popup_move(data, , 500);//excess x
> +   k++;
> +   if (k > 8)
> + k = 0;
> +}
> +
> +static void
>  _g_popup_response_cb(void *data, Evas_Object *obj EINA_UNUSED,
>   void *event_info EINA_UNUSED)
>  {
> @@ -467,6 +496,33 @@ _popup_transparent_cb(void *data, Evas_Object *obj
> EINA_UNUSED,
>  }
>
>  static void
> +_popup_transparent_move_cb(void *data, Evas_Object *obj EINA_UNUSED,
> +   void *event_info EINA_UNUSED)
> +{
> +   Evas_Object *popup;
> +   Evas_Object *btn, *btn1;
> +
> +   popup = elm_popup_add(data);
> +   elm_object_style_set(popup, "transparent");
> +   elm_object_text_set(popup, "This Popup has transparent background");
> +
> +   // popup buttons
> +   btn = elm_button_add(popup);
> +   elm_object_text_set(btn, "Move");
> +   elm_object_part_content_set(popup, "button1", btn);
> +   evas_object_smart_callback_add(btn, "clicked", _popup_move_cb, popup);
> +
> +   btn1 = elm_button_add(popup);
> +   elm_object_text_set(btn1, "Close");
> +   elm_object_part_content_set(popup, "button2", btn1);
> +   evas_object_smart_callback_add(btn1, "clicked", _popup_close_cb,
> popup);
> +
> +   // popup show should be called after adding all the contents 

Re: [E-devel] [EGIT] [core/elementary] master 01/01: popup: Added support for popup move. elm_popup_move.

2013-11-03 Thread ChunEon Park
Eek!

How about keeping the API name with notify? 
elm_notify_align_set()?
 

-Regards, Hermet- 


-Original Message-
From: "Abhinandan Aryadipta" 
To: ; 
Cc: 
Sent: 2013-11-03 (일) 23:29:06
Subject: [EGIT] [core/elementary] master 01/01: popup: Added support for popup 
move. elm_popup_move.

seoz pushed a commit to branch master.

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

commit f67ecb2028dd663aa4b0d9fe78b2a392ac169e7e
Author: Abhinandan Aryadipta @samsung.com>
Date:   Sun Nov 3 23:01:19 2013 +0900

popup: Added support for popup move. elm_popup_move.

Summary: Added support for popup move

Test Plan: elm_popup_move

Reviewers: seoz, singh.amitesh, tasn, Hermet

CC: raster

Differential Revision: https://phab.enlightenment.org/D247
---
 ChangeLog4 
 NEWS 1 +
 src/bin/test_popup.c58 ++
 src/lib/elc_popup.c 41 
 src/lib/elc_popup_eo.h  14 +++
 src/lib/elc_popup_legacy.h  15 
 6 files changed, 133 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index 66e4536..434f65f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1741,3 +1741,7 @@
 * genlist , gengrid: Add ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL.
 It disallow multiple selection when clicked without control pressed 
although
 multiple selection is enabled.
+
+2013-10-03  Abhinandan Aryadipta (aryarockstar)
+
+* Popup - Added elm_popup_move() api.
diff --git a/NEWS b/NEWS
index 4ba58bf..fece1e7 100644
--- a/NEWS
+++ b/NEWS
@@ -102,6 +102,7 @@ Additions:
* Add "virtualkeypad,size,changed" callback on virtualkeypad min size 
change for conformant.
* Add elm_slider_step_get(), elm_slider_step_set() for slider.
* Add ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL select mode for 
genlist/gengrid.
+   * Add support elm_popup_move() for popup.
 
 Improvements:
 
diff --git a/src/bin/test_popup.c b/src/bin/test_popup.c
index fa2d06e..945c3df 100644
--- a/src/bin/test_popup.c
+++ b/src/bin/test_popup.c
@@ -22,6 +22,35 @@ _popup_close_cb(void *data, Evas_Object *obj EINA_UNUSED,
 }
 
 static void
+_popup_move_cb(void *data, Evas_Object *obj EINA_UNUSED,
+   void *event_info EINA_UNUSED)
+{
+   static int k=0;
+
+   if (k == 0)
+ elm_popup_move(data, -10, 50);//negative x
+   else if (k == 1)
+ elm_popup_move(data, 40, -100);//negative y
+   else if (k == 2)
+ elm_popup_move(data, 0, 0);//zero x zero y
+   else if (k == 3)
+ elm_popup_move(data, 40, 50);
+   else if (k == 4)
+ elm_popup_move(data, 80, 100);
+   else if (k == 5)
+ elm_popup_move(data, 120, 150);
+   else if (k == 6)
+ elm_popup_move(data, 160, 200);
+   else if (k == 7)
+ elm_popup_move(data, 500, );//excess y
+   else
+ elm_popup_move(data, , 500);//excess x
+   k++;
+   if (k > 8)
+ k = 0;
+}
+
+static void
 _g_popup_response_cb(void *data, Evas_Object *obj EINA_UNUSED,
  void *event_info EINA_UNUSED)
 {
@@ -467,6 +496,33 @@ _popup_transparent_cb(void *data, Evas_Object *obj 
EINA_UNUSED,
 }
 
 static void
+_popup_transparent_move_cb(void *data, Evas_Object *obj EINA_UNUSED,
+   void *event_info EINA_UNUSED)
+{
+   Evas_Object *popup;
+   Evas_Object *btn, *btn1;
+
+   popup = elm_popup_add(data);
+   elm_object_style_set(popup, "transparent");
+   elm_object_text_set(popup, "This Popup has transparent background");
+
+   // popup buttons
+   btn = elm_button_add(popup);
+   elm_object_text_set(btn, "Move");
+   elm_object_part_content_set(popup, "button1", btn);
+   evas_object_smart_callback_add(btn, "clicked", _popup_move_cb, popup);
+
+   btn1 = elm_button_add(popup);
+   elm_object_text_set(btn1, "Close");
+   elm_object_part_content_set(popup, "button2", btn1);
+   evas_object_smart_callback_add(btn1, "clicked", _popup_close_cb, popup);
+
+   // popup show should be called after adding all the contents and the buttons
+   // of popup to set the focus into popup's contents correctly.
+   evas_object_show(popup);
+}
+
+static void
 _list_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
 {
evas_object_del(data);
@@ -543,6 +599,8 @@ test_popup(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED,
 _popup_center_text_3button_add_remove_button_cb, win);
elm_list_item_append(list, "popup-transparent", NULL, NULL,
 _popup_transparent_cb, win);
+   elm_list_item_append(list, "popup-transparent-move", NULL, NULL,
+_popup_transparent_move_cb, win);
elm_list_item_append(list, "popup-center-title + list content + 1 button",
 NULL, NULL, 
_popup_center_title_list_content_1button_cb,
 win);
diff --git a/src

[EGIT] [bindings/python/python-efl] master 01/01: Elementary: Add compatibility methods ObjectItem.data_set/get.

2013-11-03 Thread Kai Huuhko
kuuko pushed a commit to branch master.

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

commit 1ff67d2545265bde72fe60c37df18f3e8ff84e28
Author: Kai Huuhko 
Date:   Mon Nov 4 07:27:43 2013 +0200

Elementary: Add compatibility methods ObjectItem.data_set/get.

They are marked as deprecated.
---
 efl/elementary/object_item.pyx | 10 ++
 1 file changed, 10 insertions(+)

diff --git a/efl/elementary/object_item.pyx b/efl/elementary/object_item.pyx
index 308be74..7761922 100644
--- a/efl/elementary/object_item.pyx
+++ b/efl/elementary/object_item.pyx
@@ -19,6 +19,7 @@ from cpython cimport PyUnicode_AsUTF8String, Py_DECREF, 
Py_INCREF
 
 from efl.eo cimport _object_mapping_register, object_from_instance, PY_REFCOUNT
 from efl.utils.conversions cimport _ctouni
+from efl.utils.deprecated cimport DEPRECATED
 from efl.evas cimport Object as evasObject
 
 include "tooltips.pxi"
@@ -137,6 +138,15 @@ cdef class ObjectItem(object):
 repr(object_from_instance(elm_object_item_widget_get(self.item)))
 )
 
+@DEPRECATED("1.8", "Use the data attribute (dict) instead.")
+def data_get(self):
+return (self.args, self.kwargs)
+
+@DEPRECATED("1.8", "Use the data attribute (dict) instead.")
+def data_set(self, *args, **kwargs):
+self.args = args
+self.kwargs = kwargs
+
 property widget:
 """Get the widget object's handle which contains a given item
 

-- 




[EGIT] [core/elementary] master 01/01: elm_theme: Add API to specify exactly the Eina_File to be used as extension or overlay.

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

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

commit 5c7933b4ad412c318ee789d670868300c75ee6c3
Author: Cedric Bail 
Date:   Mon Nov 4 14:26:05 2013 +0900

elm_theme: Add API to specify exactly the Eina_File to be used as extension 
or overlay.
---
 src/lib/elm_theme.c | 64 
 src/lib/elm_theme.h | 70 +
 2 files changed, 134 insertions(+)

diff --git a/src/lib/elm_theme.c b/src/lib/elm_theme.c
index 17e25aa..3bb3858 100644
--- a/src/lib/elm_theme.c
+++ b/src/lib/elm_theme.c
@@ -114,6 +114,31 @@ _elm_theme_file_item_del(Elm_Theme_Files *files, const 
char *str)
 }
 
 static void
+_elm_theme_file_mmap_del(Elm_Theme_Files *files, const Eina_File *file)
+{
+   Eina_List *l, *ll;
+   Eina_List *l2, *ll2;
+   Eina_File *f;
+
+   l2 = files->items;
+   EINA_LIST_FOREACH_SAFE(files->handles, l, ll, f)
+ {
+ll2 = l2->next;
+
+if (f == file)
+  {
+ eina_file_close(f);
+ eina_stringshare_del(eina_list_data_get(l2));
+
+ files->handles = eina_list_remove_list(files->handles, l);
+ files->items = eina_list_remove_list(files->items, l2);
+  }
+
+l2 = ll2;
+ }
+}
+
+static void
 _elm_theme_file_clean(Elm_Theme_Files *files)
 {
const char *item;
@@ -533,6 +558,25 @@ elm_theme_overlay_del(Elm_Theme *th, const char *item)
elm_theme_flush(th);
 }
 
+EAPI void
+elm_theme_overlay_mmap_add(Elm_Theme *th, const Eina_File *f)
+{
+   Eina_File *file = eina_file_dup(f);
+
+   if (!th) th = &(theme_default);
+   _elm_theme_item_finalize(&th->overlay, eina_file_filename_get(file), file);
+   elm_theme_flush(th);
+}
+
+EAPI void
+elm_theme_overlay_mmap_del(Elm_Theme *th, const Eina_File *f)
+{
+   if (!f) return ;
+   if (!th) th = &(theme_default);
+   _elm_theme_file_mmap_del(&th->overlay, f);
+   elm_theme_flush(th);
+}
+
 EAPI const Eina_List *
 elm_theme_overlay_list_get(const Elm_Theme *th)
 {
@@ -558,6 +602,26 @@ elm_theme_extension_del(Elm_Theme *th, const char *item)
elm_theme_flush(th);
 }
 
+EAPI void
+elm_theme_extension_mmap_add(Elm_Theme *th, const Eina_File *f)
+{
+   Eina_File *file = eina_file_dup(f);
+
+   if (!f) return ;
+   if (!th) th = &(theme_default);
+   _elm_theme_item_finalize(&th->overlay, eina_file_filename_get(file), file);
+   elm_theme_flush(th);
+}
+
+EAPI void
+elm_theme_extension_mmap_del(Elm_Theme *th, const Eina_File *f)
+{
+   if (!f) return ;
+   if (!th) th = &(theme_default);
+   _elm_theme_file_mmap_del(&th->extension, f);
+   elm_theme_flush(th);
+}
+
 EAPI const Eina_List *
 elm_theme_extension_list_get(const Elm_Theme *th)
 {
diff --git a/src/lib/elm_theme.h b/src/lib/elm_theme.h
index b4467d9..5aa3b31 100644
--- a/src/lib/elm_theme.h
+++ b/src/lib/elm_theme.h
@@ -179,6 +179,7 @@ EAPI Elm_Theme   *elm_theme_default_get(void);
  * of trouble.
  *
  * @see elm_theme_extension_add()
+ * @see elm_theme_overlay_mmap_add()
  *
  * @ingroup Theme
  */
@@ -197,6 +198,40 @@ EAPI void elm_theme_overlay_add(Elm_Theme *th, 
const char *item);
 EAPI void elm_theme_overlay_del(Elm_Theme *th, const char *item);
 
 /**
+ * Prepends a theme overlay to the list of overlays
+ *
+ * @param th The theme to add to, or if NULL, the default theme
+ * @param f The Edje file handle to be used
+ *
+ * Use this if your application needs to provide some custom overlay theme
+ * (An Edje file that replaces some default styles of widgets) where adding
+ * new styles, or changing system theme configuration is not possible. Do
+ * NOT use this instead of a proper system theme configuration. Use proper
+ * configuration files, profiles, environment variables etc. to set a theme
+ * so that the theme can be altered by simple configuration by a user. Using
+ * this call to achieve that effect is abusing the API and will create lots
+ * of trouble.
+ *
+ * @see elm_theme_extension_add()
+ * @see elm_theme_overlay_add()
+ *
+ * @ingroup Theme
+ */
+EAPI void elm_theme_overlay_mmap_add(Elm_Theme *th, const 
Eina_File *f);
+
+/**
+ * Delete a theme overlay from the list of overlays
+ *
+ * @param th The theme to delete from, or if NULL, the default theme
+ * @param f The file handle of the theme overlay
+ *
+ * @see elm_theme_overlay_mmap_add()
+ *
+ * @ingroup Theme
+ */
+EAPI void elm_theme_overlay_mmap_del(Elm_Theme *th, const 
Eina_File *f);
+
+/**
  * Get the list of registered overlays for the given theme
  *
  * @param th The theme from which to get the overlays
@@ -244,6 +279,41 @@ EAPI void elm_theme_extension_add(Elm_Theme 
*th, const char *item);
 EAPI void elm_theme_extension_del(Elm_Theme *th, const char *item);
 
 /**
+ * Appends a theme extension to the list of extensions.
+ *
+ * @param th The theme to add to, or if NULL, the default the

[EGIT] [bindings/python/python-efl] master 03/03: Add more commented out options to setup.cfg

2013-11-03 Thread Kai Huuhko
kuuko pushed a commit to branch master.

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

commit f1a3feadb9ff11b11917dc6565a7116d27c64cb7
Author: Kai Huuhko 
Date:   Mon Nov 4 07:08:27 2013 +0200

Add more commented out options to setup.cfg
---
 setup.cfg | 9 -
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/setup.cfg b/setup.cfg
index df0260b..58c27ac 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,6 +1,13 @@
 [build_ext]
 # Uncomment this to disable assertions
-#define=PYREX_WITHOUT_ASSERTIONS
+#define=CYTHON_WITHOUT_ASSERTIONS
+# Debug info
+#cython_gdb=1
+# Cython compiler directives
+#cython_directives=
 
 [build_doc]
+# Options for builder: html, latex, texinfo, epub, coverage
 builder=html
+# Outputs txt files with coverage info
+#builder=coverage

-- 




[EGIT] [bindings/python/python-efl] master 01/03: Update TODO

2013-11-03 Thread Kai Huuhko
kuuko pushed a commit to branch master.

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

commit cb1ae5d01af2ac8619ec612646b890b5317aa9e4
Author: Kai Huuhko 
Date:   Sun Nov 3 11:39:47 2013 +0200

Update TODO
---
 TODO | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/TODO b/TODO
index 7c62fca..121b511 100644
--- a/TODO
+++ b/TODO
@@ -4,6 +4,10 @@ BUGS
 
 * Evas: SmartObject doesn't work
 * EdjeEdit: PartState API does not work
+* Edje.External: The unit test fails
+* Elm.Configuration: example crashes
+* Elm.EdjeExternal: examples don't work properly
+* Elm.Map: overlays_show segfaults, scrollers in examples jump when menu opens
 
 
 TODO
@@ -27,7 +31,7 @@ TODO
 Elementary
 ==
 
-* Web needs a test and a lot of work: signals and documentation
+* Web needs a lot of work: signals and documentation
 * Review the new container type object item system.
   Should the instance methods be classmethods instead?
 * Drag-n-Drop (in progress/kuuko)

-- 




[EGIT] [bindings/python/python-efl] master 02/03: Elementary: Add Slider example, fixed minor issues in others

2013-11-03 Thread Kai Huuhko
kuuko pushed a commit to branch master.

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

commit a261a2bb6904e3040e3a222462fc6d07844ec663
Author: Kai Huuhko 
Date:   Mon Nov 4 07:07:17 2013 +0200

Elementary: Add Slider example, fixed minor issues in others
---
 examples/elementary/test.py  |  24 ++--
 examples/elementary/test_ctxpopup.py |   7 +-
 examples/elementary/test_dnd.py  |  48 +++-
 examples/elementary/test_slider.py   | 219 +++
 4 files changed, 281 insertions(+), 17 deletions(-)

diff --git a/examples/elementary/test.py b/examples/elementary/test.py
index 9b8dda2..821b57f 100755
--- a/examples/elementary/test.py
+++ b/examples/elementary/test.py
@@ -44,15 +44,15 @@ items = [
 ("Evas Map 3D", "test_3d", "evas3d_clicked"),
  ]),
  ("Booleans", [
-("Checks", "test_check", "check_clicked"),
-# ("Toggles", toggles_clicked),TODO make a toggle with check
+("Check", "test_check", "check_clicked"),
+#TODO: ("Toggle", "test_check", "toggle_clicked"),
 ]),
  ("Boundaries", [
 ("Bubble", "test_bubble", "bubble_clicked"),
 ("Separator", "test_separator", "separator_clicked"),
 ]),
  ("Buttons", [
-("Buttons", "test_button", "buttons_clicked"),
+("Button", "test_button", "buttons_clicked"),
 ]),
  ("Containers", [
 ("Box Horiz", "test_box", "box_horiz_clicked"),
@@ -74,6 +74,16 @@ items = [
 ("Panel", "test_panel", "panel_clicked"),
 ("Panes", "test_panes", "panes_clicked"),
 ]),
+ ("Drag & Drop", [
+("Genlist DnD Default Anim", "test_dnd", 
"dnd_genlist_default_anim_clicked"),
+]),
+ ("Edje External", [
+("Ext Button", "test_external", "edje_external_button_clicked"),
+("Ext ProgressBar", "test_external", "edje_external_pbar_clicked"),
+("Ext Scroller", "test_external", 
"edje_external_scroller_clicked"),
+("Ext Slider", "test_external", "edje_external_slider_clicked"),
+("Ext Video", "test_external", "edje_external_video_clicked"),
+]),
  ("Effects", [
 ("Flip", "test_flip", "flip_clicked"),
 ("Flip Interactive", "test_flip", "flip_interactive_clicked"),
@@ -93,13 +103,6 @@ items = [
 ("Entry Anchor", "test_entry", "entry_anchor_clicked"),
 ("MultiButtonEntry", "test_multibuttonentry", 
"multibuttonentry_clicked"),
 ]),
- ("Edje External", [
-("Ext Button", "test_external", "edje_external_button_clicked"),
-("Ext ProgressBar", "test_external", "edje_external_pbar_clicked"),
-("Ext Scroller", "test_external", 
"edje_external_scroller_clicked"),
-("Ext Slider", "test_external", "edje_external_slider_clicked"),
-("Ext Video", "test_external", "edje_external_video_clicked"),
-]),
  ("Geographic", [
 ("Map", "test_map", "map_clicked"),
 ("Map Overlay", "test_map2", "map_overlays_clicked"),
@@ -152,6 +155,7 @@ items = [
  ("Range Values", [
 ("Spinner", "test_spinner", "spinner_clicked"),
 ("Progressbar", "test_progressbar", "progressbar_clicked"),
+("Slider", "test_slider", "slider_clicked"),
 ]),
  ("Scroller", [
 ("Scroller", "test_scroller", "scroller_clicked"),
diff --git a/examples/elementary/test_ctxpopup.py 
b/examples/elementary/test_ctxpopup.py
index 6b13b3d..ce1120f 100644
--- a/examples/elementary/test_ctxpopup.py
+++ b/examples/elementary/test_ctxpopup.py
@@ -1,6 +1,8 @@
 #!/usr/bin/env python
 # encoding: utf-8
 
+import os
+
 from efl.evas import EVAS_HINT_EXPAND, EVAS_HINT_FILL, FilledImage
 from efl import elementary
 from efl.elementary.window import StandardWindow
@@ -14,6 +16,9 @@ from efl.elementary.scroller import Scroller
 EXPAND_BOTH = EVAS_HINT_EXPAND, EVAS_HINT_EXPAND
 FILL_BOTH = EVAS_HINT_FILL, EVAS_HINT_FILL
 
+script_path = os.path.dirname(os.path.abspath(__file__))
+img_path = os.path.join(script_path, "images")
+
 def cb_items(li, item):
 print(("ctxpopup item selected: %s" % (item.text)))
 
@@ -29,7 +34,7 @@ def cb_btn(btn):
 if "img" in cp.data:
 return
 img = FilledImage(btn.evas)
-img.file_set("images/sky_04.jpg")
+img.file_set(os.path.join(img_path, "sky_04.jpg"))
 img.move(40, 40)
 img.resize(320, 320)
 img.show()
diff --git a/examples/elementary/test_dnd.py b/examples/elementary/test_dnd.py
index 2534fd9..00fd250 100644
--- a/examples/elementary/test_dnd.py
+++ b/examples/elementary/test_dnd.py
@@ -1,11 +1,16 @@
 #!/usr/bin/env python
 # encoding: utf-8
 
+import os
+
 from efl.evas import EVAS_HINT_EXPAND, EVAS_HINT_FILL, \
 EVAS_ASPECT_CONTROL_VERTICAL, EVAS_CAL

[EGIT] [core/elementary] master 02/02: test_index.c: Internal refactoring. Reduce the window size and do not expand the button.

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

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

commit 0ba4645b0f457de9fc8b7f148ab7c11e56e2310d
Author: Daniel Juyung Seo 
Date:   Mon Nov 4 13:19:44 2013 +0900

test_index.c: Internal refactoring. Reduce the window size and do not 
expand the button.

Now it looks nicer and still shows the index clipping sample.
---
 src/bin/test_index.c | 7 ++-
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/src/bin/test_index.c b/src/bin/test_index.c
index 75bd296..62430a5 100644
--- a/src/bin/test_index.c
+++ b/src/bin/test_index.c
@@ -187,6 +187,8 @@ test_index(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_inf
win = elm_win_util_standard_add("index", "Index");
elm_win_autodel_set(win, EINA_TRUE);
evas_object_event_callback_add(win, EVAS_CALLBACK_FREE, _cleanup_cb, api);
+   evas_object_resize(win, 320, 270);
+   evas_object_show(win);
 
bxx = elm_box_add(win);
evas_object_size_hint_weight_set(bxx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
@@ -217,9 +219,6 @@ test_index(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_inf
elm_object_disabled_set(bt, api->state == API_STATE_LAST);
evas_object_show(bt);
 
-   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-
-
ck = elm_check_add(win);
elm_object_text_set(ck, "Omit mode : ");
elm_object_style_set(ck, "toggle");
@@ -260,8 +259,6 @@ test_index(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_inf
evas_object_smart_callback_add(id, "changed", _index_changed_cb, NULL);
evas_object_smart_callback_add(id, "selected", _index_selected_cb, NULL);
elm_index_level_go(id, 0);
-   evas_object_resize(win, 320, 480);
-   evas_object_show(win);
 }
 
 /***/

-- 




[EGIT] [core/elementary] master 01/02: elm_index.c: Process signal right away when elm_index_item_selected_set() is called. Patch by Moohyun Shin

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

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

commit 6f5e1ac116a8439ab9211d27e5524ebcffccb7c7
Author: Daniel Juyung Seo 
Date:   Mon Nov 4 13:13:23 2013 +0900

elm_index.c: Process signal right away when elm_index_item_selected_set() 
is called. Patch by Moohyun Shin 

Reviewer: SeoZ
---
 src/lib/elm_index.c | 25 ++---
 1 file changed, 18 insertions(+), 7 deletions(-)

diff --git a/src/lib/elm_index.c b/src/lib/elm_index.c
index 2f1d2df..f48aaa5 100644
--- a/src/lib/elm_index.c
+++ b/src/lib/elm_index.c
@@ -1209,7 +1209,7 @@ EAPI void
 elm_index_item_selected_set(Elm_Object_Item *it,
 Eina_Bool selected)
 {
-   Elm_Index_Item *it_sel, *it_last;
+   Elm_Index_Item *it_sel, *it_last, *it_inactive, *it_active;
Evas_Object *obj = WIDGET(it);
 
ELM_INDEX_ITEM_CHECK_OR_RETURN(it);
@@ -1227,15 +1227,23 @@ elm_index_item_selected_set(Elm_Object_Item *it,
   {
  it_last->selected = EINA_FALSE;
  if (it_last->head)
-   edje_object_signal_emit(VIEW(it_last->head), 
"elm,state,inactive", "elm");
+   it_inactive = it_last->head;
  else
-   edje_object_signal_emit(VIEW(it_last), "elm,state,inactive", 
"elm");
+   it_inactive = it_last;
+
+ edje_object_signal_emit(VIEW(it_inactive),
+ "elm,state,inactive", "elm");
+ edje_object_message_signal_process(VIEW(it_inactive));
   }
+
 it_sel->selected = EINA_TRUE;
 if (it_sel->head)
-  edje_object_signal_emit(VIEW(it_sel->head), "elm,state,active", 
"elm");
+  it_active = it_sel->head;
 else
-  edje_object_signal_emit(VIEW(it_sel), "elm,state,active", "elm");
+  it_active = it_sel;
+
+edje_object_signal_emit(VIEW(it_active), "elm,state,active", "elm");
+edje_object_message_signal_process(VIEW(it_active));
 
 evas_object_smart_callback_call
(obj, SIG_CHANGED, it);
@@ -1249,9 +1257,12 @@ elm_index_item_selected_set(Elm_Object_Item *it,
  {
 it_sel->selected = EINA_FALSE;
 if (it_sel->head)
-  edje_object_signal_emit(VIEW(it_sel->head), "elm,state,inactive", 
"elm");
+  it_inactive = it_sel->head;
 else
-  edje_object_signal_emit(VIEW(it_sel), "elm,state,inactive", "elm");
+  it_inactive = it_sel;
+
+edje_object_signal_emit(VIEW(it_inactive), "elm,state,inactive", 
"elm");
+edje_object_message_signal_process(VIEW(it_inactive));
  }
 }
 

-- 




Re: [E-devel] admin/devs.git layout changes

2013-11-03 Thread ChunEon Park
Thanks you.

But One question.
Do we need to list up the inactive developers in the website?

It says, category is contact. but they are inactive?
 

-Regards, Hermet- 

-Original Message-
From: "Tom Hacohen" 
To: "Enlightenment developer list"; 
Cc: 
Sent: 2013-11-02 (토) 00:31:32
Subject: Re: [E-devel] admin/devs.git layout changes

On 01/11/13 15:27, Tom Hacohen wrote:
> On 01/11/13 14:45, Tom Hacohen wrote:
>> Hey guys,
>>
>> As part of the probie access, we are overhauling the admin/devs.git repo
>> a bit.
>>
>>From now on, instead of having all the devs in dirs on the root of the
>> repo, they'll reside in subdirectories according to access groups.
>>
>> For now, we have those in mind:
>> developers/
>> probies/
>> old/ - for inactive developers (this will let us scrape them for the
>> website as well).
>>
>> So in order to delete developers, "git mv" to old, don't remove.
>>
>> Devs in old/ will have 0 access (as if they were deleted).
>> Devs in developers/ will have full access (like now)
>> Devs in probies/ will only be able to change their own directory
>> (info/images/keys) in order to prevent priv escalation.
>>
>> We will carry out this change later today.
>
> Chris found "old" confusing (he thinks he should be there as well, and I
> agree) so I changed "old" to "inactive".
>
> Also, we now automatically generate the "inactive developers" section in:
> https://enlightenment.org/p.php?p=contact&l=en
>
> from that repo.
>
> All of those changes haven't been pushed yet, as we still need to
> rewrite the access script according to the new changes.

Oh, and more info:
New layout:
https://git.enlightenment.org/admin/devs.git/tree/?h=devs/tasn/new_devs

www parsing change:
https://git.enlightenment.org/website/www.git/commit/?h=devs/tasn/new_devs

Please let me know if you have any comments.

--
Tom.

--
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=65839951&iu=/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=65839951&iu=/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/06: Revert "evas - clip shutdown fix to avoid invalid mem accesses"

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

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

commit 05e17cb6b61d47897e8f019576cf7891aba97701
Author: Cedric Bail 
Date:   Mon Nov 4 12:23:25 2013 +0900

Revert "evas - clip shutdown fix to avoid invalid mem accesses"

This reverts commit eb6af1f1ff7ee069eff8bab13c0eed5010ef5660.

This commit was making the code much more complex than required. Let's make
eina_cow_free set the value back to its default.
---
 src/lib/evas/canvas/evas_clip.c| 20 
 src/lib/evas/canvas/evas_object_main.c | 25 +++--
 2 files changed, 11 insertions(+), 34 deletions(-)

diff --git a/src/lib/evas/canvas/evas_clip.c b/src/lib/evas/canvas/evas_clip.c
index 5dfbc48..76cddc0 100644
--- a/src/lib/evas/canvas/evas_clip.c
+++ b/src/lib/evas/canvas/evas_clip.c
@@ -369,7 +369,6 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list 
EINA_UNUSED)
 {
Evas_Object_Protected_Data *obj = _pd;
 
-   if (!obj->cur) return;
if (!obj->cur->clipper) return;
 
obj->clip.cache_clipees_answer = 
eina_list_free(obj->clip.cache_clipees_answer);
@@ -387,7 +386,7 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list 
EINA_UNUSED)
   {
  EINA_COW_STATE_WRITE_BEGIN(obj->cur->clipper, state_write, cur)
{
-  if (state_write) state_write->have_clipees = 0;
+  state_write->have_clipees = 0;
}
  EINA_COW_STATE_WRITE_END(obj->cur->clipper, state_write, cur);
 
@@ -418,17 +417,14 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list 
EINA_UNUSED)
if ((!obj->is_smart) &&
(!((obj->map->cur.map) && (obj->map->cur.usemap
  {
-if (obj->cur)
-  {
- if (evas_object_is_in_output_rect(eo_obj, obj,
-   obj->layer->evas->pointer.x,
-   obj->layer->evas->pointer.y, 1, 
1))
-   evas_event_feed_mouse_move(obj->layer->evas->evas,
+if (evas_object_is_in_output_rect(eo_obj, obj,
   obj->layer->evas->pointer.x,
-  obj->layer->evas->pointer.y,
-  obj->layer->evas->last_timestamp,
-  NULL);
-  }
+  obj->layer->evas->pointer.y, 1, 1))
+  evas_event_feed_mouse_move(obj->layer->evas->evas,
+ obj->layer->evas->pointer.x,
+ obj->layer->evas->pointer.y,
+ obj->layer->evas->last_timestamp,
+ NULL);
  }
evas_object_clip_across_check(eo_obj, obj);
 }
diff --git a/src/lib/evas/canvas/evas_object_main.c 
b/src/lib/evas/canvas/evas_object_main.c
index c779f2d..27fc7ad 100644
--- a/src/lib/evas/canvas/evas_object_main.c
+++ b/src/lib/evas/canvas/evas_object_main.c
@@ -141,7 +141,6 @@ void
 evas_object_free(Evas_Object *eo_obj, int clean_layer)
 {
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, MY_CLASS);
-   Evas_Object *eo_obj2;
if (!obj) return;
obj->clean_layer = clean_layer;
 
@@ -172,21 +171,8 @@ evas_object_free(Evas_Object *eo_obj, int clean_layer)
 obj->func->free(eo_obj, obj, obj->private_data);
  }
if (!was_smart_child) evas_object_release(eo_obj, obj, obj->clean_layer);
-   EINA_LIST_FREE(obj->clip.clipees, eo_obj2)
- {
-Evas_Object_Protected_Data *obj2 = 
-  eo_data_scope_get(eo_obj2, MY_CLASS);
-if ((obj2) && (obj2->cur))
-  {
- EINA_COW_STATE_WRITE_BEGIN(obj2, state_write, cur)
-   {
-  state_write->clipper = NULL;
-   }
- EINA_COW_STATE_WRITE_END(obj2, state_write, cur);
-  }
- }
-//   if (obj->clip.clipees)
-// obj->clip.clipees = eina_list_free(obj->clip.clipees);
+   if (obj->clip.clipees)
+ eina_list_free(obj->clip.clipees);
obj->clip.cache_clipees_answer = 
eina_list_free(obj->clip.cache_clipees_answer);
evas_object_clip_changes_clean(eo_obj);
evas_object_event_callback_all_del(eo_obj);
@@ -202,17 +188,12 @@ evas_object_free(Evas_Object *eo_obj, int clean_layer)
  }
if (obj->size_hints)
  {
-EVAS_MEMPOOL_FREE(_mp_sh, obj->size_hints);
-obj->size_hints = NULL;
+   EVAS_MEMPOOL_FREE(_mp_sh, obj->size_hints);
  }
eina_cow_free(evas_object_proxy_cow, obj->proxy);
eina_cow_free(evas_object_map_cow, obj->map);
eina_cow_free(evas_object_state_cow, obj->cur);
eina_cow_free(evas_object_state_cow, obj->prev);
-   obj->cur = NULL;
-   obj->prev = NULL;
-   obj->map = NULL;
-   obj->proxy = NULL;
eo_data_unref(eo_obj, obj->private_data);
obj->private_data = NULL;
eo_manual_free(eo_obj);

[EGIT] [core/efl] master 02/06: eina: make eina_cow_free reset the pointer to the default read only value.

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

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

commit 613947ac0df4205e197e0e129ff96f5cb83c707e
Author: Cedric Bail 
Date:   Mon Nov 4 12:45:25 2013 +0900

eina: make eina_cow_free reset the pointer to the default read only value.
---
 src/lib/eina/eina_cow.c | 26 ++
 src/lib/eina/eina_cow.h |  6 +-
 2 files changed, 19 insertions(+), 13 deletions(-)

diff --git a/src/lib/eina/eina_cow.c b/src/lib/eina/eina_cow.c
index 64c1b3f..a2c4e3f 100644
--- a/src/lib/eina/eina_cow.c
+++ b/src/lib/eina/eina_cow.c
@@ -78,7 +78,7 @@ struct _Eina_Cow_GC
 #endif
 
Eina_Cow_Ptr *ref;
-   const void * const *dst;
+   const void **dst;
 };
 
 struct _Eina_Cow
@@ -228,7 +228,7 @@ _eina_cow_togc_del(Eina_Cow *cow, Eina_Cow_Ptr *ref)
 static void
 _eina_cow_togc_add(Eina_Cow *cow,
Eina_Cow_Ptr *ref,
-   const Eina_Cow_Data * const * dst)
+   const Eina_Cow_Data ** dst)
 {
Eina_Cow_GC *gc;
 
@@ -255,7 +255,7 @@ _eina_cow_togc_add(Eina_Cow *cow,
 
 static void
 _eina_cow_gc(Eina_Cow *cow, Eina_Cow_Ptr *ref,
- const Eina_Cow_Data * const *dst,
+ const Eina_Cow_Data **dst,
  void *data)
 {
void *match;
@@ -270,10 +270,10 @@ _eina_cow_gc(Eina_Cow *cow, Eina_Cow_Ptr *ref,
 #ifndef NVALGRIND
 VALGRIND_MAKE_MEM_DEFINED(ref, sizeof (*ref));
 #endif
-*((void**)dst) = match;
 ref->refcount++;
 
-eina_cow_free(cow, data);
+eina_cow_free(cow, dst);
+*dst = match;
 
 #ifndef NVALGRIND
 VALGRIND_MAKE_MEM_NOACCESS(ref, sizeof (*ref));
@@ -413,7 +413,7 @@ eina_cow_alloc(Eina_Cow *cow)
 }
 
 EAPI void
-eina_cow_free(Eina_Cow *cow, const Eina_Cow_Data *data)
+eina_cow_free(Eina_Cow *cow, const Eina_Cow_Data **data)
 {
Eina_Cow_Ptr *ref;
 
@@ -421,15 +421,17 @@ eina_cow_free(Eina_Cow *cow, const Eina_Cow_Data *data)
EINA_COW_MAGIC_CHECK(cow);
 #endif
 
-   if (!data) return;
-   if (cow->default_value == data) return;
+   if (!data || !*data) return;
+   if (cow->default_value == *data) return;
 
-   ref = EINA_COW_PTR_GET(data);
+   ref = EINA_COW_PTR_GET(*data);
 #ifndef NVALGRIND
VALGRIND_MAKE_MEM_DEFINED(ref, sizeof (*ref));
 #endif
ref->refcount--;
 
+   *data = (Eina_Cow_Data*) cow->default_value;
+
if (ref->refcount > 0)
  {
 #ifndef NVALGRIND
@@ -441,7 +443,7 @@ eina_cow_free(Eina_Cow *cow, const Eina_Cow_Data *data)
 #ifdef EINA_COW_MAGIC_ON
EINA_MAGIC_SET(ref, EINA_MAGIC_NONE);
 #endif
-   _eina_cow_hash_del(cow, data, ref);
+   _eina_cow_hash_del(cow, *data, ref);
_eina_cow_togc_del(cow, ref);
eina_mempool_free(cow->pool, (void*) ref);
 }
@@ -558,7 +560,7 @@ eina_cow_done(Eina_Cow *cow,
VALGRIND_MAKE_MEM_DEFINED(ref, sizeof (*ref));
 #endif
 
-   _eina_cow_togc_add(cow, ref, dst);
+   _eina_cow_togc_add(cow, ref, (const Eina_Cow_Data **) dst);
 }
 
 EAPI void
@@ -590,7 +592,7 @@ eina_cow_memcpy(Eina_Cow *cow,
 #endif
  }
 
-   eina_cow_free(cow, *dst);
+   eina_cow_free(cow, (const Eina_Cow_Data**) dst);
 
*((const void**)dst) = src;
 }
diff --git a/src/lib/eina/eina_cow.h b/src/lib/eina/eina_cow.h
index 875e1fe..10cb34d 100644
--- a/src/lib/eina/eina_cow.h
+++ b/src/lib/eina/eina_cow.h
@@ -79,8 +79,12 @@ EAPI const Eina_Cow_Data *eina_cow_alloc(Eina_Cow *cow) 
EINA_WARN_UNUSED_RESULT;
 /**
  * @brief Free a pointer from the pool.
  * @param cow The pool to gave back memory to.
+ * @param data The data to give back.
+ *
+ * @note To simplify the caller code *data will point to the default
+ * read only state after the call to this function.
  */
-EAPI void eina_cow_free(Eina_Cow *cow, const Eina_Cow_Data *data);
+EAPI void eina_cow_free(Eina_Cow *cow, const Eina_Cow_Data **data);
 
 /**
  * @brief Get a writable pointer from a const pointer.

-- 




[EGIT] [core/efl] master 04/06: eina: update Eina_Cow test to latest API change.

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

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

commit be3afd8f4b778e0b0be9be43265674fe9a1ba847
Author: Cedric Bail 
Date:   Mon Nov 4 12:47:12 2013 +0900

eina: update Eina_Cow test to latest API change.
---
 src/tests/eina/eina_test_cow.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/tests/eina/eina_test_cow.c b/src/tests/eina/eina_test_cow.c
index 7967e0e..a4e1422 100644
--- a/src/tests/eina/eina_test_cow.c
+++ b/src/tests/eina/eina_test_cow.c
@@ -81,7 +81,7 @@ START_TEST(eina_cow_bad)
(void) _eina_test_log;
 #endif
 
-   eina_cow_free(cow, cur);
+   eina_cow_free(cow, (const Eina_Cow_Data**) &cur);
 
eina_cow_del(cow);
 }
@@ -137,8 +137,8 @@ START_TEST(eina_cow)
fail_if(eina_cow_gc(cow) == EINA_FALSE);
fail_if(cur != prev);
 
-   eina_cow_free(cow, (const Eina_Cow_Data*) cur);
-   eina_cow_free(cow, (const Eina_Cow_Data*) prev);
+   eina_cow_free(cow, (const Eina_Cow_Data**) &cur);
+   eina_cow_free(cow, (const Eina_Cow_Data**) &prev);
 
eina_cow_del(cow);
 }

-- 




[EGIT] [core/efl] master 05/06: edje: update use of eina_cow_free to latest change.

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

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

commit 7e3286b4edbaba81fda348a08fe0e33938fce3e3
Author: Cedric Bail 
Date:   Mon Nov 4 12:47:34 2013 +0900

edje: update use of eina_cow_free to latest change.
---
 src/lib/edje/edje_calc.c| 16 
 src/lib/edje/edje_load.c| 12 ++--
 src/lib/edje/edje_program.c | 12 ++--
 3 files changed, 20 insertions(+), 20 deletions(-)

diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c
index 71eb95d..4f02f78 100644
--- a/src/lib/edje/edje_calc.c
+++ b/src/lib/edje/edje_calc.c
@@ -574,9 +574,9 @@ _edje_part_description_apply(Edje *ed, Edje_Real_Part *ep, 
const char *d1, doubl
   if (ep->param2)
{
  free(ep->param2->set);
- eina_cow_free(_edje_calc_params_map_cow, ep->param2->p.map);
+ eina_cow_free(_edje_calc_params_map_cow, (const Eina_Cow_Data **) 
&ep->param2->p.map);
 #ifdef HAVE_EPHYSICS
- eina_cow_free(_edje_calc_params_physics_cow, 
ep->param2->p.physics);
+ eina_cow_free(_edje_calc_params_physics_cow, (const Eina_Cow_Data 
**) &ep->param2->p.physics);
 #endif
}
   eina_mempool_free(_edje_real_part_state_mp, ep->param2);
@@ -3643,9 +3643,9 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int 
flags, Edje_Calc_Params *sta
   }
 
 #ifndef EDJE_CALC_CACHE
-eina_cow_free(_edje_calc_params_map_cow, lp2.map);
+eina_cow_free(_edje_calc_params_map_cow, (const Eina_Cow_Data **) 
&lp2.map);
 #ifdef HAVE_EPHYSICS
-eina_cow_free(_edje_calc_params_physics_cow, lp2.physics);
+eina_cow_free(_edje_calc_params_physics_cow, (const Eina_Cow_Data **) 
&lp2.physics);
 #endif
 #endif
 pf = p3;
@@ -3963,10 +3963,10 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int 
flags, Edje_Calc_Params *sta
 
if (pf == &lp3)
  {
-eina_cow_free(_edje_calc_params_map_cow, lp3.map);
+eina_cow_free(_edje_calc_params_map_cow, (const Eina_Cow_Data **) 
&lp3.map);
 lp3.map = NULL;
 #ifdef HAVE_EPHYSICS
-eina_cow_free(_edje_calc_params_physics_cow, lp3.physics);
+eina_cow_free(_edje_calc_params_physics_cow, (const Eina_Cow_Data **) 
&lp3.physics);
 lp3.physics = NULL;
 #endif
  }
@@ -3978,9 +3978,9 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int 
flags, Edje_Calc_Params *sta
 ep->invalidate = 0;
  }
 #else
-   eina_cow_free(_edje_calc_params_map_cow, lp1.map);
+   eina_cow_free(_edje_calc_params_map_cow, (const Eina_Cow_Data **) &lp1.map);
 #ifdef HAVE_EPHYSICS
-   eina_cow_free(_edje_calc_params_physics_cow, lp1.physics);
+   eina_cow_free(_edje_calc_params_physics_cow, (const Eina_Cow_Data **) 
&lp1.physics);
 #endif
 #endif
 }
diff --git a/src/lib/edje/edje_load.c b/src/lib/edje/edje_load.c
index 546f78e..f50351e 100644
--- a/src/lib/edje/edje_load.c
+++ b/src/lib/edje/edje_load.c
@@ -1408,9 +1408,9 @@ _edje_file_del(Edje *ed)
  if (rp->param2)
{
   free(rp->param2->set);
-  eina_cow_free(_edje_calc_params_map_cow, rp->param2->p.map);
+  eina_cow_free(_edje_calc_params_map_cow, (const 
Eina_Cow_Data **) &rp->param2->p.map);
 #ifdef HAVE_EPHYSICS
-  eina_cow_free(_edje_calc_params_physics_cow, 
rp->param2->p.physics);
+  eina_cow_free(_edje_calc_params_physics_cow, (const 
Eina_Cow_Data **) &rp->param2->p.physics);
 #endif
}
  eina_mempool_free(_edje_real_part_state_mp, rp->param2);
@@ -1418,17 +1418,17 @@ _edje_file_del(Edje *ed)
  if (rp->custom)
{
   free(rp->custom->set);
-  eina_cow_free(_edje_calc_params_map_cow, rp->custom->p.map);
+  eina_cow_free(_edje_calc_params_map_cow, (const 
Eina_Cow_Data **) &rp->custom->p.map);
 #ifdef HAVE_EPHYSICS
-  eina_cow_free(_edje_calc_params_physics_cow, 
rp->custom->p.physics);
+  eina_cow_free(_edje_calc_params_physics_cow, (const 
Eina_Cow_Data **) &rp->custom->p.physics);
 #endif
}
  eina_mempool_free(_edje_real_part_state_mp, rp->custom);
 
  _edje_unref(ed);
- eina_cow_free(_edje_calc_params_map_cow, rp->param1.p.map);
+ eina_cow_free(_edje_calc_params_map_cow, (const Eina_Cow_Data **) 
&rp->param1.p.map);
 #ifdef HAVE_EPHYSICS
- eina_cow_free(_edje_calc_params_physics_cow, 
rp->param1.p.physics);
+ eina_cow_free(_edje_calc_params_physics_cow, (const Eina_Cow_Data 
**) &rp->param1.p.physics);
 #endif
  eina_mempool_free(_edje_real_part_mp, rp);
   }
diff --git a/src/lib/edje/edje_program.c b/src/lib/edje/edje_program.c
index 52335b9..69acfba 100644
--- a/src/lib/edje/edje_program.c
+++ b/src/lib/edje/edje_program.c
@@ -446,9 +446,9 @@ _edje_pr

[EGIT] [core/efl] master 03/06: eet: shutup a warning and use the right pointer source even if they are the same.

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

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

commit 440471e5996fbb3df8b1edd1e285427bd55070c7
Author: Cedric Bail 
Date:   Mon Nov 4 12:46:48 2013 +0900

eet: shutup a warning and use the right pointer source even if they are the 
same.
---
 src/lib/eet/eet_lib.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/eet/eet_lib.c b/src/lib/eet/eet_lib.c
index e32fcc0..3ad0866 100644
--- a/src/lib/eet/eet_lib.c
+++ b/src/lib/eet/eet_lib.c
@@ -1477,8 +1477,8 @@ eet_mmap(const Eina_File *file)
ef->sha1_length = 0;
ef->readfp_owned = EINA_TRUE;
 
-   ef->data_size = eina_file_size_get(file);
-   ef->data = eina_file_map_all(file, EINA_FILE_SEQUENTIAL);
+   ef->data_size = eina_file_size_get(ef->readfp);
+   ef->data = eina_file_map_all(ef->readfp, EINA_FILE_SEQUENTIAL);
if (eet_test_close((ef->data == NULL), ef))
  goto on_error;
 

-- 




[EGIT] [core/efl] master 06/06: evas: update use of eina_cow_free for latest change.

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

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

commit c179335b1f7667016839848d52713d5dfff2a8aa
Author: Cedric Bail 
Date:   Mon Nov 4 12:47:48 2013 +0900

evas: update use of eina_cow_free for latest change.
---
 src/lib/evas/canvas/evas_object_image.c | 13 +
 src/lib/evas/canvas/evas_object_main.c  |  8 
 2 files changed, 9 insertions(+), 12 deletions(-)

diff --git a/src/lib/evas/canvas/evas_object_image.c 
b/src/lib/evas/canvas/evas_object_image.c
index 312b5c6..b508074 100644
--- a/src/lib/evas/canvas/evas_object_image.c
+++ b/src/lib/evas/canvas/evas_object_image.c
@@ -3609,14 +3609,11 @@ _evas_object_image_free(Evas_Object *obj)
 
o = eo_data_scope_get(obj, MY_CLASS);
 
-   eina_cow_free(evas_object_image_load_opts_cow, o->load_opts);
-   o->load_opts = &default_load_opts;
-   eina_cow_free(evas_object_image_pixels_cow, o->pixels);
-   o->pixels = &default_pixels;
-   eina_cow_free(evas_object_image_state_cow, o->cur);
-   o->cur = &default_state;
-   eina_cow_free(evas_object_image_state_cow, o->prev);
-   o->prev = &default_state;
+   // eina_cow_free reset the pointer to the default read only state
+   eina_cow_free(evas_object_image_load_opts_cow, (const Eina_Cow_Data**) 
&o->load_opts);
+   eina_cow_free(evas_object_image_pixels_cow, (const Eina_Cow_Data**) 
&o->pixels);
+   eina_cow_free(evas_object_image_state_cow, (const Eina_Cow_Data**) &o->cur);
+   eina_cow_free(evas_object_image_state_cow, (const Eina_Cow_Data**) 
&o->prev);
 }
 
 static void
diff --git a/src/lib/evas/canvas/evas_object_main.c 
b/src/lib/evas/canvas/evas_object_main.c
index 27fc7ad..fa294d8 100644
--- a/src/lib/evas/canvas/evas_object_main.c
+++ b/src/lib/evas/canvas/evas_object_main.c
@@ -190,10 +190,10 @@ evas_object_free(Evas_Object *eo_obj, int clean_layer)
  {
EVAS_MEMPOOL_FREE(_mp_sh, obj->size_hints);
  }
-   eina_cow_free(evas_object_proxy_cow, obj->proxy);
-   eina_cow_free(evas_object_map_cow, obj->map);
-   eina_cow_free(evas_object_state_cow, obj->cur);
-   eina_cow_free(evas_object_state_cow, obj->prev);
+   eina_cow_free(evas_object_proxy_cow, (const Eina_Cow_Data**) &obj->proxy);
+   eina_cow_free(evas_object_map_cow, (const Eina_Cow_Data**) &obj->map);
+   eina_cow_free(evas_object_state_cow, (const Eina_Cow_Data**) &obj->cur);
+   eina_cow_free(evas_object_state_cow, (const Eina_Cow_Data**) &obj->prev);
eo_data_unref(eo_obj, obj->private_data);
obj->private_data = NULL;
eo_manual_free(eo_obj);

-- 




[EGIT] [core/efl] master 03/04: edje: use const Eina_File for mmap_set function.

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

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

commit 1c7f60208725a1a04d9970156c2e18dd3072264c
Author: Cedric Bail 
Date:   Mon Nov 4 11:28:29 2013 +0900

edje: use const Eina_File for mmap_set function.
---
 src/lib/edje/Edje_Common.h  |  2 +-
 src/lib/edje/Edje_Eo.h  |  2 +-
 src/lib/edje/Edje_Legacy.h  |  2 +-
 src/lib/edje/edje_cache.c   |  5 ++---
 src/lib/edje/edje_load.c| 10 +-
 src/lib/edje/edje_private.h |  4 ++--
 src/lib/edje/edje_smart.c   |  2 +-
 7 files changed, 13 insertions(+), 14 deletions(-)

diff --git a/src/lib/edje/Edje_Common.h b/src/lib/edje/Edje_Common.h
index dc5a01d..3d3351a 100644
--- a/src/lib/edje/Edje_Common.h
+++ b/src/lib/edje/Edje_Common.h
@@ -135,7 +135,7 @@ EAPI void   edje_fontset_append_set (const 
char *fonts);
  *
  * Then, edje_file_data_get("test.edj", "key1") will return "value1"
  */
-EAPI char *edje_mmap_data_get(Eina_File *f, const char *key);
+EAPI char *edje_mmap_data_get(const Eina_File *f, const char *key);
 
 /**
  * Get data from the file level data block of an edje file
diff --git a/src/lib/edje/Edje_Eo.h b/src/lib/edje/Edje_Eo.h
index b892ac6..dfb887e 100644
--- a/src/lib/edje/Edje_Eo.h
+++ b/src/lib/edje/Edje_Eo.h
@@ -652,7 +652,7 @@ enum
  *
  * @see edje_object_file_set
  */
-#define edje_obj_mmap_set(file, group, ret) 
EDJE_OBJ_ID(EDJE_OBJ_SUB_ID_MMAP_SET), EO_TYPECHECK(Eina_File*, file), 
EO_TYPECHECK(const char *, group), EO_TYPECHECK(Eina_Bool *, ret)
+#define edje_obj_mmap_set(file, group, ret) 
EDJE_OBJ_ID(EDJE_OBJ_SUB_ID_MMAP_SET), EO_TYPECHECK(const Eina_File*, file), 
EO_TYPECHECK(const char *, group), EO_TYPECHECK(Eina_Bool *, ret)
 
 /**
  * @def edje_obj_file_get
diff --git a/src/lib/edje/Edje_Legacy.h b/src/lib/edje/Edje_Legacy.h
index 196e498..9b0ae01 100644
--- a/src/lib/edje/Edje_Legacy.h
+++ b/src/lib/edje/Edje_Legacy.h
@@ -1806,7 +1806,7 @@ EAPI Eina_Booledje_object_file_set
(Evas_Object *obj, const char
  * @see edje_object_mmap_set()
  * @since 1.8
  */
-EAPI Eina_Bool edje_object_mmap_set(Evas_Object *obj, Eina_File *file, const 
char *group);
+EAPI Eina_Bool edje_object_mmap_set(Evas_Object *obj, const Eina_File *file, 
const char *group);
 
 
 /**
diff --git a/src/lib/edje/edje_cache.c b/src/lib/edje/edje_cache.c
index 4a335c4..f2e9b20 100644
--- a/src/lib/edje/edje_cache.c
+++ b/src/lib/edje/edje_cache.c
@@ -1,6 +1,5 @@
 #include "edje_private.h"
 
-
 static Eina_Hash   *_edje_file_hash = NULL;
 static int  _edje_file_cache_size = 16;
 static Eina_List   *_edje_file_cache = NULL;
@@ -299,7 +298,7 @@ _edje_file_change(void *data, int ev_type EINA_UNUSED, void 
*event)
 #endif
 
 static Edje_File *
-_edje_file_open(Eina_File *f, const char *coll, int *error_ret, 
Edje_Part_Collection **edc_ret, time_t mtime)
+_edje_file_open(const Eina_File *f, const char *coll, int *error_ret, 
Edje_Part_Collection **edc_ret, time_t mtime)
 {
Edje_Color_Class *cc;
Edje_File *edf;
@@ -399,7 +398,7 @@ _edje_file_dangling(Edje_File *edf)
 #endif
 
 Edje_File *
-_edje_cache_file_coll_open(Eina_File *file, const char *coll, int *error_ret, 
Edje_Part_Collection **edc_ret, Edje *ed)
+_edje_cache_file_coll_open(const Eina_File *file, const char *coll, int 
*error_ret, Edje_Part_Collection **edc_ret, Edje *ed)
 {
Edje_File *edf;
Eina_List *l, *hist;
diff --git a/src/lib/edje/edje_load.c b/src/lib/edje/edje_load.c
index d78fa68..546f78e 100644
--- a/src/lib/edje/edje_load.c
+++ b/src/lib/edje/edje_load.c
@@ -24,7 +24,7 @@ struct _Edje_Drag_Items
} page;
 };
 
-void _edje_file_add(Edje *ed, Eina_File *f);
+void _edje_file_add(Edje *ed, const Eina_File *f);
 
 /* START - Nested part support */
 #define _edje_smart_nested_type "Evas_Smart_Nested"
@@ -83,7 +83,7 @@ edje_object_file_set(Evas_Object *obj, const char *file, 
const char *group)
 }
 
 EAPI Eina_Bool
-edje_object_mmap_set(Evas_Object *obj, Eina_File *file, const char *group)
+edje_object_mmap_set(Evas_Object *obj, const Eina_File *file, const char 
*group)
 {
if (!obj) return EINA_FALSE;
Eina_Bool ret = EINA_FALSE;
@@ -295,7 +295,7 @@ edje_file_group_exists(const char *file, const char *glob)
 }
 
 EAPI char *
-edje_mmap_data_get(Eina_File *f, const char *key)
+edje_mmap_data_get(const Eina_File *f, const char *key)
 {
Edje_File *edf;
char *str = NULL;
@@ -357,7 +357,7 @@ _edje_physics_world_update_cb(void *data, EPhysics_World 
*world EINA_UNUSED, voi
 #endif
 
 int
-_edje_object_file_set_internal(Evas_Object *obj, Eina_File *file, const char 
*group, const char *parent, Eina_List *group_path, Eina_Array *nested)
+_edje_object_file_set_internal(Evas_Object *obj, const Eina_File *file, const 
char *group, const char *parent, Eina_List *group_path, Eina_Array *nested)
 {
Edje *ed;
Evas *tev;
@@ -1166,7 +1166,7 @@ on_error:
 }
 
 void
-_edje_file_add(Edje *ed, Eina_File *f)
+_edje_fil

[EGIT] [core/efl] master 01/04: eina: roll const into Eina_File API.

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

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

commit 687e4ae7442e9763e0587553d50a4177d2f9b6ca
Author: Cedric Bail 
Date:   Mon Nov 4 11:26:59 2013 +0900

eina: roll const into Eina_File API.

Note that eina_file_dup is const from the caller perspective as it
will return a fresh "non const" Eina_File that it will be able to
manipulate as it like.
---
 src/lib/eina/eina_file.h|  8 
 src/lib/eina/eina_file_common.c | 10 ++
 2 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/src/lib/eina/eina_file.h b/src/lib/eina/eina_file.h
index 8384e2a..fa03316 100644
--- a/src/lib/eina/eina_file.h
+++ b/src/lib/eina/eina_file.h
@@ -507,7 +507,7 @@ EAPI Eina_Bool eina_file_refresh(Eina_File *file);
  *
  * @since 1.8
  */
-EAPI Eina_File * eina_file_dup(Eina_File *file);
+EAPI Eina_File * eina_file_dup(const Eina_File *file);
 
 /**
  * @brief Unref file handler.
@@ -528,7 +528,7 @@ EAPI void eina_file_close(Eina_File *file);
  *
  * @since 1.1
  */
-EAPI size_t eina_file_size_get(Eina_File *file);
+EAPI size_t eina_file_size_get(const Eina_File *file);
 
 /**
  * @brief Get the last modification time of an open file.
@@ -538,7 +538,7 @@ EAPI size_t eina_file_size_get(Eina_File *file);
  *
  * @since 1.1
  */
-EAPI time_t eina_file_mtime_get(Eina_File *file);
+EAPI time_t eina_file_mtime_get(const Eina_File *file);
 
 /**
  * @brief Get the filename of an open file.
@@ -548,7 +548,7 @@ EAPI time_t eina_file_mtime_get(Eina_File *file);
  *
  * @since 1.1
  */
-EAPI const char *eina_file_filename_get(Eina_File *file);
+EAPI const char *eina_file_filename_get(const Eina_File *file);
 
 /**
  * @brief Get the eXtended attribute of an open file.
diff --git a/src/lib/eina/eina_file_common.c b/src/lib/eina/eina_file_common.c
index e5b1250..5a0250c 100644
--- a/src/lib/eina/eina_file_common.c
+++ b/src/lib/eina/eina_file_common.c
@@ -431,8 +431,10 @@ eina_file_virtual(Eina_File *file)
 }
 
 EAPI Eina_File *
-eina_file_dup(Eina_File *file)
+eina_file_dup(const Eina_File *f)
 {
+   Eina_File *file = (Eina_File*) f;
+
if (file)
  {
 eina_lock_take(&file->lock);
@@ -464,21 +466,21 @@ eina_file_close(Eina_File *file)
 }
 
 EAPI size_t
-eina_file_size_get(Eina_File *file)
+eina_file_size_get(const Eina_File *file)
 {
EINA_SAFETY_ON_NULL_RETURN_VAL(file, 0);
return file->length;
 }
 
 EAPI time_t
-eina_file_mtime_get(Eina_File *file)
+eina_file_mtime_get(const Eina_File *file)
 {
EINA_SAFETY_ON_NULL_RETURN_VAL(file, 0);
return file->mtime;
 }
 
 EAPI const char *
-eina_file_filename_get(Eina_File *file)
+eina_file_filename_get(const Eina_File *file)
 {
EINA_SAFETY_ON_NULL_RETURN_VAL(file, NULL);
return file->filename;

-- 




[EGIT] [core/efl] master 04/04: eet: let's use const Eina_File here to.

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

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

commit 07c306a2724368ab71a046afc754a99826618bad
Author: Cedric Bail 
Date:   Mon Nov 4 11:28:56 2013 +0900

eet: let's use const Eina_File here to.
---
 src/lib/eet/Eet.h | 2 +-
 src/lib/eet/eet_lib.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/eet/Eet.h b/src/lib/eet/Eet.h
index 3aeb520..12e8c98 100644
--- a/src/lib/eet/Eet.h
+++ b/src/lib/eet/Eet.h
@@ -580,7 +580,7 @@ eet_open(const char *file,
  * @since 1.8.0
  */
 EAPI Eet_File *
-eet_mmap(Eina_File *file);
+eet_mmap(const Eina_File *file);
 
 /**
  * Open an eet file directly from a memory location. The data is not copied,
diff --git a/src/lib/eet/eet_lib.c b/src/lib/eet/eet_lib.c
index 7fa8ce9..e32fcc0 100644
--- a/src/lib/eet/eet_lib.c
+++ b/src/lib/eet/eet_lib.c
@@ -1431,7 +1431,7 @@ eet_file_get(Eet_File *ef)
 }
 
 EAPI Eet_File *
-eet_mmap(Eina_File *file)
+eet_mmap(const Eina_File *file)
 {
Eet_File *ef = NULL;
const char *path;

-- 




[EGIT] [core/elementary] master 01/02: elm_image: add mmap_set infrastructure.

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

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

commit 840dcc618ead292414b0de64a7a3ae38d778311f
Author: Cedric Bail 
Date:   Mon Nov 4 12:17:42 2013 +0900

elm_image: add mmap_set infrastructure.
---
 src/lib/elm_image.c| 38 --
 src/lib/elm_image_eo.h | 15 +++
 src/lib/elm_image_legacy.h | 28 
 3 files changed, 79 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_image.c b/src/lib/elm_image.c
index 676d801..f28d11d 100755
--- a/src/lib/elm_image.c
+++ b/src/lib/elm_image.c
@@ -191,7 +191,7 @@ _elm_image_internal_sizing_eval(Evas_Object *obj, 
Elm_Image_Smart_Data *sd)
 static Eina_Bool
 _elm_image_edje_file_set(Evas_Object *obj,
  const char *file,
- Eina_File *f,
+ const Eina_File *f,
  const char *group)
 {
Evas_Object *pclip;
@@ -851,9 +851,24 @@ elm_image_file_set(Evas_Object *obj,
return ret;
 }
 
+EAPI Eina_Bool
+elm_image_mmap_set(Evas_Object *obj,
+  const Eina_File *file,
+  const char *group)
+{
+   Eina_Bool ret = EINA_FALSE;
+
+   ELM_IMAGE_CHECK(obj) EINA_FALSE;
+   EINA_SAFETY_ON_NULL_RETURN_VAL(file, EINA_FALSE);
+   eo_do(obj,
+ elm_obj_image_mmap_set(file, group, &ret),
+ elm_obj_image_sizing_eval());
+   return ret;
+}
+
 static void
 _elm_image_smart_internal_file_set(Eo *obj, Elm_Image_Smart_Data *sd,
-   const char *file, Eina_File *f, const char 
*key, Eina_Bool *ret)
+   const char *file, const Eina_File *f, const 
char *key, Eina_Bool *ret)
 {
if (eina_str_has_extension(file, ".edj"))
  {
@@ -997,6 +1012,23 @@ _elm_image_smart_file_set(Eo *obj, void *_pd, va_list 
*list)
_elm_image_smart_internal_file_set(obj, sd, file, NULL, key, ret);
 }
 
+static void
+_elm_image_smart_mmap_set(Eo *obj, void *_pd, va_list *list)
+{
+  const Eina_File *f = va_arg(*list, const Eina_File *);
+  const char *key = va_arg(*list, const char*);
+  Eina_Bool *ret = va_arg(*list, Eina_Bool *);
+
+  Elm_Image_Smart_Data *sd = _pd;
+
+  if (sd->remote) elm_url_cancel(sd->remote);
+  sd->remote = NULL;
+
+  _elm_image_smart_internal_file_set(obj, sd,
+eina_file_filename_get(f), f,
+key, ret);
+}
+
 EAPI void
 elm_image_file_get(const Evas_Object *obj,
const char **file,
@@ -1720,6 +1752,7 @@ _class_constructor(Eo_Class *klass)
 EO_OP_FUNC(ELM_OBJ_IMAGE_ID(ELM_OBJ_IMAGE_SUB_ID_LOAD_SIZE_GET), 
_elm_image_smart_load_size_get),
 
 EO_OP_FUNC(ELM_OBJ_IMAGE_ID(ELM_OBJ_IMAGE_SUB_ID_MEMFILE_SET), 
_elm_image_smart_memfile_set),
+EO_OP_FUNC(ELM_OBJ_IMAGE_ID(ELM_OBJ_IMAGE_SUB_ID_MMAP_SET), 
_elm_image_smart_mmap_set),
 
 EO_OP_FUNC(ELM_OBJ_IMAGE_ID(ELM_OBJ_IMAGE_SUB_ID_ORIENT_SET), 
_elm_image_smart_orient_set),
 EO_OP_FUNC(ELM_OBJ_IMAGE_ID(ELM_OBJ_IMAGE_SUB_ID_ORIENT_GET), 
_elm_image_smart_orient_get),
@@ -1788,6 +1821,7 @@ static const Eo_Op_Description op_desc[] = {
  EO_OP_DESCRIPTION(ELM_OBJ_IMAGE_SUB_ID_LOAD_SIZE_GET, "'Virtual' function 
on retrieving the object's image loading size."),
 
  EO_OP_DESCRIPTION(ELM_OBJ_IMAGE_SUB_ID_MEMFILE_SET, "Set a location in 
memory to be used as an image object's source bitmap."),
+ EO_OP_DESCRIPTION(ELM_OBJ_IMAGE_SUB_ID_MMAP_SET, "Set an Eina_File to be 
used as an image object's source bitmap."),
 
  EO_OP_DESCRIPTION(ELM_OBJ_IMAGE_SUB_ID_ORIENT_SET, "Set the image 
orientation."),
  EO_OP_DESCRIPTION(ELM_OBJ_IMAGE_SUB_ID_ORIENT_GET, "Get the image 
orientation."),
diff --git a/src/lib/elm_image_eo.h b/src/lib/elm_image_eo.h
index d34f320..f65812f 100644
--- a/src/lib/elm_image_eo.h
+++ b/src/lib/elm_image_eo.h
@@ -37,6 +37,7 @@ enum
ELM_OBJ_IMAGE_SUB_ID_LOAD_SIZE_GET,
 
ELM_OBJ_IMAGE_SUB_ID_MEMFILE_SET,
+   ELM_OBJ_IMAGE_SUB_ID_MMAP_SET,
 
ELM_OBJ_IMAGE_SUB_ID_ORIENT_SET,
ELM_OBJ_IMAGE_SUB_ID_ORIENT_GET,
@@ -108,6 +109,20 @@ enum
 #define elm_obj_image_file_set(file, group, ret) 
ELM_OBJ_IMAGE_ID(ELM_OBJ_IMAGE_SUB_ID_FILE_SET), EO_TYPECHECK(const char *, 
file), EO_TYPECHECK(const char *, group), EO_TYPECHECK(Eina_Bool *, ret)
 
 /**
+ * @def elm_obj_image_mmap_set
+ * @since 1.8
+ *
+ * Set the file that will be used as the image's source.
+ *
+ * @param[in] file
+ * @param[in] group
+ * @param[out] ret
+ *
+ * @see elm_image_mmap_set
+ */
+#define elm_obj_image_mmap_set(file, group, ret) 
ELM_OBJ_IMAGE_ID(ELM_OBJ_IMAGE_SUB_ID_MMAP_SET), EO_TYPECHECK(const Eina_File 
*, file), EO_TYPECHECK(const char *, group), EO_TYPECHECK(Eina_Bool *, ret)
+
+/**
  * @def elm_obj_image_file_get
  * @since 1.8
  *
diff --git a/src/lib/elm_image_legacy.h b/src/lib/elm_image_legacy.h
index 04bdc8e..f869278 10

[EGIT] [core/efl] master 02/04: evas: make mmap_set use const Eina_File.

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

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

commit f4ae52ea67b9c7885bc2911ae97d4d81e00dd70d
Author: Cedric Bail 
Date:   Mon Nov 4 11:27:59 2013 +0900

evas: make mmap_set use const Eina_File.
---
 src/lib/evas/Evas_Eo.h  | 2 +-
 src/lib/evas/Evas_Legacy.h  | 2 +-
 src/lib/evas/canvas/evas_object_image.c | 6 +++---
 src/lib/evas/canvas/evas_object_text.c  | 2 +-
 4 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/lib/evas/Evas_Eo.h b/src/lib/evas/Evas_Eo.h
index 256cfc9..717d434 100644
--- a/src/lib/evas/Evas_Eo.h
+++ b/src/lib/evas/Evas_Eo.h
@@ -5668,7 +5668,7 @@ enum
  *
  * @see evas_obj_image_file_set
  */
-#define evas_obj_image_mmap_set(f, key) 
EVAS_OBJ_IMAGE_ID(EVAS_OBJ_IMAGE_SUB_ID_MMAP_SET), EO_TYPECHECK(Eina_File *, 
f), EO_TYPECHECK(const char*, key)
+#define evas_obj_image_mmap_set(f, key) 
EVAS_OBJ_IMAGE_ID(EVAS_OBJ_IMAGE_SUB_ID_MMAP_SET), EO_TYPECHECK(const Eina_File 
*, f), EO_TYPECHECK(const char*, key)
 
 /**
  * @def evas_obj_image_file_get
diff --git a/src/lib/evas/Evas_Legacy.h b/src/lib/evas/Evas_Legacy.h
index 8b362be..e2dbf0e 100644
--- a/src/lib/evas/Evas_Legacy.h
+++ b/src/lib/evas/Evas_Legacy.h
@@ -3982,7 +3982,7 @@ EAPI void  
evas_object_image_file_set(Evas_Object *obj,
  *
  * @since 1.8
  */
-EAPI void  evas_object_image_mmap_set(Evas_Object 
*eo_obj, Eina_File *f, const char *key);
+EAPI void  evas_object_image_mmap_set(Evas_Object 
*eo_obj, const Eina_File *f, const char *key);
 
 /**
  * Retrieve the source file from where an image object is to fetch the
diff --git a/src/lib/evas/canvas/evas_object_image.c 
b/src/lib/evas/canvas/evas_object_image.c
index af42860..312b5c6 100644
--- a/src/lib/evas/canvas/evas_object_image.c
+++ b/src/lib/evas/canvas/evas_object_image.c
@@ -397,7 +397,7 @@ evas_object_image_memfile_set(Evas_Object *eo_obj, void 
*data, int size, char *f
 }
 
 static void
-_image_init_set(Eina_File *f, const char *file, const char *key,
+_image_init_set(const Eina_File *f, const char *file, const char *key,
 Eo *eo_obj, Evas_Object_Protected_Data *obj, Evas_Object_Image 
*o,
 Evas_Image_Load_Opts *lo)
 {
@@ -523,7 +523,7 @@ _image_done_set(Eo *eo_obj, Evas_Object_Protected_Data 
*obj, Evas_Object_Image *
 }
 
 EAPI void
-evas_object_image_mmap_set(Evas_Object *eo_obj, Eina_File *f, const char *key)
+evas_object_image_mmap_set(Evas_Object *eo_obj, const Eina_File *f, const char 
*key)
 {
eo_do(eo_obj, evas_obj_image_mmap_set(f, key));
 }
@@ -535,7 +535,7 @@ _image_mmap_set(Eo *eo_obj, void *_pd, va_list *list)
Evas_Object_Image *o = _pd;
Evas_Image_Load_Opts lo;
 
-   Eina_File *f = va_arg(*list, Eina_File *);
+   const Eina_File *f = va_arg(*list, const Eina_File *);
const char *key = va_arg(*list, const char*);
 
if (o->cur->u.f == f)
diff --git a/src/lib/evas/canvas/evas_object_text.c 
b/src/lib/evas/canvas/evas_object_text.c
index b61e7d0..dd16e21 100644
--- a/src/lib/evas/canvas/evas_object_text.c
+++ b/src/lib/evas/canvas/evas_object_text.c
@@ -171,7 +171,7 @@ _evas_object_text_item_del(Evas_Object_Text *o, 
Evas_Object_Text_Item *it)
 
if ((EINA_INLIST_GET(it)->next) ||
(EINA_INLIST_GET(it)->prev) ||
-   (o->items == (EINA_INLIST_GET(it
+   (EINA_INLIST_GET(o->items) == (EINA_INLIST_GET(it
  o->items = (Evas_Object_Text_Item *)eina_inlist_remove
  (EINA_INLIST_GET(o->items), EINA_INLIST_GET(it));
_evas_object_text_item_clean(it);

-- 




[EGIT] [core/elementary] master 02/02: elm_theme: use Eina_File all over the place in an attempt to reduce race condition.

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

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

commit c33df0526b50404b91e3e241b84a4fa8d1ac780b
Author: Cedric Bail 
Date:   Mon Nov 4 12:17:58 2013 +0900

elm_theme: use Eina_File all over the place in an attempt to reduce race 
condition.
---
 src/lib/elm_priv.h  |  18 ++-
 src/lib/elm_theme.c | 434 ++--
 2 files changed, 233 insertions(+), 219 deletions(-)

diff --git a/src/lib/elm_priv.h b/src/lib/elm_priv.h
index e6f91cc..fc1c063 100644
--- a/src/lib/elm_priv.h
+++ b/src/lib/elm_priv.h
@@ -75,6 +75,7 @@
 #endif
 #define N_(string) (string)
 
+typedef struct _Elm_Theme_Files  Elm_Theme_Files;
 typedef struct _Edje_Signal_Data Edje_Signal_Data;
 typedef struct _Elm_Config   Elm_Config;
 typedef struct _Elm_Module   Elm_Module;
@@ -89,11 +90,22 @@ struct _Edje_Signal_Data
void  *data;
 };
 
+struct _Elm_Theme_Files
+{
+   /*
+* We are conserving a list of path even if that's duplicated
+* because we expose those directly to the outside world :'(
+*/
+   Eina_List *items;
+   Eina_List *handles;
+};
+
 struct _Elm_Theme
 {
-   Eina_List  *overlay;
-   Eina_List  *themes;
-   Eina_List  *extension;
+   Elm_Theme_Files overlay;
+   Elm_Theme_Files themes;
+   Elm_Theme_Files extension;
+
Eina_Hash  *cache;
Eina_Hash  *cache_data;
Elm_Theme  *ref_theme;
diff --git a/src/lib/elm_theme.c b/src/lib/elm_theme.c
index 65f09d1..17e25aa 100644
--- a/src/lib/elm_theme.c
+++ b/src/lib/elm_theme.c
@@ -8,101 +8,163 @@
 
 static Elm_Theme theme_default =
 {
-   NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1
+  { NULL, NULL }, { NULL, NULL }, { NULL, NULL },
+  NULL, NULL, NULL, NULL, NULL, 1
 };
 
 static Eina_List *themes = NULL;
 
+static Eina_File *
+_elm_theme_find_try(Elm_Theme *th, Eina_File *f, const char *group)
+{
+   if (edje_mmap_group_exists(f, group))
+ {
+eina_hash_add(th->cache, group, eina_file_dup(f));
+return f;
+ }
+   return NULL;
+}
+
+static inline void
+_elm_theme_item_finalize(Elm_Theme_Files *files,
+ const char *item,
+ Eina_File *f)
+{
+   if (!f) return ;
+
+   files->items = eina_list_append(files->items,
+   eina_stringshare_add(item));
+   files->handles = eina_list_append(files->handles, f);
+}
+
 static void
-_elm_theme_clear(Elm_Theme *th)
+_elm_theme_file_item_add(Elm_Theme_Files *files, const char *item)
 {
-   const char *p;
-   EINA_LIST_FREE(th->themes, p)
-  eina_stringshare_del(p);
-   EINA_LIST_FREE(th->overlay, p)
-  eina_stringshare_del(p);
-   EINA_LIST_FREE(th->extension, p)
-  eina_stringshare_del(p);
+   Eina_Strbuf *buf = NULL;
+   Eina_File *f = NULL;
+   const char *home;
 
-   ELM_SAFE_FREE(th->cache, eina_hash_free);
-   ELM_SAFE_FREE(th->cache_data, eina_hash_free);
-   ELM_SAFE_FREE(th->theme, eina_stringshare_del);
-   if (th->ref_theme)
+   home = getenv("HOME") ? getenv("HOME") : "";
+   buf = eina_strbuf_new();
+
+   if ((item[0] == '/') ||
+   ((item[0] == '.') && (item[1] == '/')) ||
+   ((item[0] == '.') && (item[1] == '.') && (item[2] == '/')) ||
+   ((isalpha(item[0])) && (item[1] == ':')))
  {
-th->ref_theme->referrers =
-   eina_list_remove(th->ref_theme->referrers, th);
-elm_theme_free(th->ref_theme);
-th->ref_theme = NULL;
+f = eina_file_open(item, EINA_FALSE);
+if (!f) goto on_error;
+ }
+   else if (((item[0] == '~') && (item[1] == '/')))
+ {
+eina_strbuf_append_printf(buf, "%s/%s", home, item + 2);
+
+f = eina_file_open(eina_strbuf_string_get(buf), EINA_FALSE);
+if (!f) goto on_error;
+ }
+   else
+ {
+eina_strbuf_append_printf(buf,
+  "%s/"ELEMENTARY_BASE_DIR"/themes/%s.edj",
+  home, item);
+f = eina_file_open(eina_strbuf_string_get(buf), EINA_FALSE);
+_elm_theme_item_finalize(files, item, f);
+
+eina_strbuf_reset(buf);
+eina_strbuf_append_printf(buf,
+  "%s/themes/%s.edj",
+  _elm_data_dir, item);
+f = eina_file_open(eina_strbuf_string_get(buf), EINA_FALSE);
+/* Finalize will be done by the common one */
  }
+
+   _elm_theme_item_finalize(files, item, f);
+
+ on_error:
+   if (buf) eina_strbuf_free(buf);
 }
 
-static const char *
-_elm_theme_find_try(Elm_Theme *th, const char *f, const char *group)
+static void
+_elm_theme_file_item_del(Elm_Theme_Files *files, const char *str)
 {
-   const char *file;
+   Eina_List *l, *ll;
+   Eina_List *l2, *ll2;
+   const char *item;
+
+   str = eina_stringshare_add(str);
+   l2 = files->handles;
 
-   if (edje_file_group_exists(f, group))
+   EINA_LIST_FOREACH_SAFE(files->items, l, ll, i

[EGIT] [core/efl] master 01/01: evas/x11: Fix Xlib swapper buffer size

2013-11-03 Thread Jean-Philippe Andre
jpeg pushed a commit to branch master.

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

commit a3eb8d2e9d42a83c633d19196d28f3c621522dc5
Author: Jean-Philippe Andre 
Date:   Fri Nov 1 14:44:07 2013 +0900

evas/x11: Fix Xlib swapper buffer size

Problem: Software engine fails to render on Tizen device.
---
 src/modules/evas/engines/software_x11/evas_xlib_swapper.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/modules/evas/engines/software_x11/evas_xlib_swapper.c 
b/src/modules/evas/engines/software_x11/evas_xlib_swapper.c
index 705f077..81383eb 100644
--- a/src/modules/evas/engines/software_x11/evas_xlib_swapper.c
+++ b/src/modules/evas/engines/software_x11/evas_xlib_swapper.c
@@ -698,6 +698,8 @@ evas_xlib_swapper_buffer_map(X_Swapper *swp, int *bpl, int 
*w, int *h)
  if ((swp->buf) && (swp->buf->pitch > 0)) *bpl = swp->buf->pitch;
  else *bpl = swp->w * 4;
   }
+if (w) *w = swp->w;
+if (h) *h = swp->h;
 return swp->buf_data;
  }
swp->buf = sym_DRI2GetBuffers(swp->disp, swp->draw, 

-- 




[EGIT] [enlightenment/modules/packagekit] master 01/01: Query the PackageKit daemon version and defer the first method call after the version is fetched

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

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

commit a9db2f4c85bdfd84fde88ac011b04fd262836643
Author: davemds 
Date:   Mon Nov 4 00:26:12 2013 +0100

Query the PackageKit daemon version and defer the first method call after 
the version is fetched

Atm the module do not work with packagekit version prior to 0.8
this way I can implement different path for different versions.
---
 src/e_mod_main.c   | 11 +++
 src/e_mod_packagekit.c | 43 +++
 src/e_mod_packagekit.h |  3 +++
 3 files changed, 49 insertions(+), 8 deletions(-)

diff --git a/src/e_mod_main.c b/src/e_mod_main.c
index 596cf07..2fa 100644
--- a/src/e_mod_main.c
+++ b/src/e_mod_main.c
@@ -278,6 +278,7 @@ e_modapi_init(E_Module *m)
 
ctxt = E_NEW(E_PackageKit_Module_Context, 1);
EINA_SAFETY_ON_NULL_RETURN_VAL(ctxt, NULL);
+   ctxt->v_maj = ctxt->v_min = ctxt->v_mic = -1;
 
snprintf(buf, sizeof(buf), "%s/locale", e_module_dir_get(m));
bindtextdomain(PACKAGE, buf);
@@ -295,17 +296,11 @@ e_modapi_init(E_Module *m)
if (!ctxt->config)
  ctxt->config = E_NEW(PackageKit_Config, 1);
 
-
ctxt->module = m;
packagekit_mod = m;
e_gadcon_provider_register(&_gc_class);
-   
-   if (packagekit_dbus_connect(ctxt))
- {
-packagekit_create_transaction_and_exec(ctxt, packagekit_get_updates);
-ctxt->refresh_timer = ecore_timer_add(60.0, _timer_cb, ctxt);
- }
-
+   packagekit_dbus_connect(ctxt);
+   ctxt->refresh_timer = ecore_timer_add(60.0, _timer_cb, ctxt);
return ctxt;
 }
 
diff --git a/src/e_mod_packagekit.c b/src/e_mod_packagekit.c
index ad9c677..973afbc 100644
--- a/src/e_mod_packagekit.c
+++ b/src/e_mod_packagekit.c
@@ -284,6 +284,7 @@ _signal_finished_cb(void *data, const Eldbus_Message *msg)
Eldbus_Object *obj = eldbus_proxy_object_get(ctxt->transaction);
E_FREE_FUNC(ctxt->transaction, eldbus_proxy_unref);
E_FREE_FUNC(obj, eldbus_object_unref);
+   E_FREE_FUNC(ctxt->error, eina_stringshare_del);
 
EINA_LIST_FOREACH(ctxt->packages, l, pkg)
  {
@@ -367,6 +368,10 @@ 
packagekit_create_transaction_and_exec(E_PackageKit_Module_Context *ctxt,
 {
Eldbus_Pending *pending;
 
+   DBG("*");
+   DBG("PKGKIT Version: %d . %d . %d", ctxt->v_maj, ctxt->v_min, ctxt->v_mic);
+   DBG("*");
+
if (ctxt->transaction)
  {
 WRN("PKGKIT: Another transaction in progress...");
@@ -394,6 +399,43 @@ _signal_updates_changed_cb(void *data, const 
Eldbus_Message *msg)
packagekit_create_transaction_and_exec(ctxt, packagekit_get_updates);
 }
 
+static void
+_iterate_dict(void *data, const void *key, Eldbus_Message_Iter *var)
+{
+   E_PackageKit_Module_Context *ctxt = data;
+
+   if (!strcmp(key, "VersionMajor"))
+ eldbus_message_iter_arguments_get(var, "u", &(ctxt->v_maj));
+   else if (!strcmp(key, "VersionMinor"))
+ eldbus_message_iter_arguments_get(var, "u", &(ctxt->v_min));
+   else if (!strcmp(key, "VersionMicro"))
+ eldbus_message_iter_arguments_get(var, "u", &(ctxt->v_mic));
+   else return;
+
+   if ((ctxt->v_maj != -1) && (ctxt->v_min != -1) && (ctxt->v_mic != -1))
+ packagekit_create_transaction_and_exec(ctxt, packagekit_get_updates);
+}
+
+static void
+_prop_get_cb(void *data, const Eldbus_Message *msg, Eldbus_Pending *pending)
+{
+   E_PackageKit_Module_Context *ctxt = data;
+   Eldbus_Message_Iter *array;
+   const char *error, *error_msg;
+
+   if (eldbus_message_error_get(msg, &error, &error_msg))
+ {
+_store_error(ctxt, error_msg);
+return;
+ }
+   if (!eldbus_message_arguments_get(msg, "a{sv}", &array))
+ {
+_store_error(ctxt, "could not get arguments (a{sv})");
+return;
+ }
+   eldbus_message_iter_dict_iterate(array, "sv", _iterate_dict, ctxt);
+}
+
 Eina_Bool
 packagekit_dbus_connect(E_PackageKit_Module_Context *ctxt)
 {
@@ -418,6 +460,7 @@ packagekit_dbus_connect(E_PackageKit_Module_Context *ctxt)
   return EINA_FALSE;
}
 
+   eldbus_proxy_property_get_all(ctxt->packagekit, _prop_get_cb, ctxt);
eldbus_proxy_signal_handler_add(ctxt->packagekit, "UpdatesChanged",
_signal_updates_changed_cb, ctxt);
 
diff --git a/src/e_mod_packagekit.h b/src/e_mod_packagekit.h
index fa0df22..fb8424d 100644
--- a/src/e_mod_packagekit.h
+++ b/src/e_mod_packagekit.h
@@ -46,6 +46,9 @@ typedef struct _E_PackageKit_Module_Context
Eina_List *packages;
Ecore_Timer *refresh_timer;
const char *error;
+   int v_maj;
+   int v_min;
+   int v_mic;
 
Eldbus_Connection *conn;
Eldbus_Proxy *packagekit;

-- 




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

2013-11-03 Thread Vinícius dos Santos Oliveira
Em Dom, 2013-11-03 às 21:12 +0100, Jérémy Zurcher escreveu:

> No,
> pacman -S texlive-latexextra to solve the above on archlinux


texlive-latexextra is part of the texlive-most group. There is a whole
wiki page on ArchWiki dedicated to texlive.

If you don't want to care about LaTeX, just install the whole group and
everything should work.


-- 
Vinícius dos Santos Oliveira
https://about.me/vinipsmaker


signature.asc
Description: This is a digitally signed message part
--
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=65839951&iu=/4140/ostg.clktrk___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


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

2013-11-03 Thread Jérémy Zurcher
On Sunday 03 November 2013  11:39, Robert Heller wrote :
> At Sun, 3 Nov 2013 23:35:19 +0900 Carsten Haitzler (The Rasterman) 
>  wrote:
> 
> > 
> > On Sun, 3 Nov 2013 09:14:20 -0500 Robert Heller  said:
> > 
> > > > that today was on arch (relatively up to date). i've had similar issues
> > > > before on older ubuntu installs too. i chalked it up to doxygen output
> > > > being broken for the kind of content/setup that efl ends up producing.
> > > 
> > > No, it is broken packaging on the part of arch...

No,
pacman -S texlive-latexextra to solve the above on archlinux
! LaTeX Error: File `xtab.sty' not found

some issues remains:
! LaTeX Error: File `edje-nested' not found
then:
! LaTeX Error: Too deeply nested.

I stopped here…

--- 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=65839951&iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [enlightenment/modules/packagekit] master 01/01: Better error management: do not show "system updated" in case of failure

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

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

commit c764913d8e2120aca1de7cc44d7e103df7352e3c
Author: davemds 
Date:   Sun Nov 3 21:05:02 2013 +0100

Better error management: do not show "system updated" in case of failure
---
 src/e_mod_main.c   | 15 +--
 src/e_mod_packagekit.c | 68 +-
 src/e_mod_packagekit.h |  1 +
 3 files changed, 49 insertions(+), 35 deletions(-)

diff --git a/src/e_mod_main.c b/src/e_mod_main.c
index acc44a9..596cf07 100644
--- a/src/e_mod_main.c
+++ b/src/e_mod_main.c
@@ -295,17 +295,17 @@ e_modapi_init(E_Module *m)
if (!ctxt->config)
  ctxt->config = E_NEW(PackageKit_Config, 1);
 
-   if (!packagekit_dbus_connect(ctxt))
- {
-free(ctxt);
-return NULL;
- }
 
ctxt->module = m;
packagekit_mod = m;
e_gadcon_provider_register(&_gc_class);
-   packagekit_create_transaction_and_exec(ctxt, packagekit_get_updates);
-   ctxt->refresh_timer = ecore_timer_add(60.0, _timer_cb, ctxt);
+   
+   if (packagekit_dbus_connect(ctxt))
+ {
+packagekit_create_transaction_and_exec(ctxt, packagekit_get_updates);
+ctxt->refresh_timer = ecore_timer_add(60.0, _timer_cb, ctxt);
+ }
+
return ctxt;
 }
 
@@ -317,6 +317,7 @@ e_modapi_shutdown(E_Module *m)
packagekit_dbus_disconnect(ctxt);
 
E_FREE_FUNC(ctxt->refresh_timer, ecore_timer_del);
+   E_FREE_FUNC(ctxt->error, eina_stringshare_del);
 
E_FREE_FUNC(ctxt->config->manager_command, eina_stringshare_del);
E_FREE(ctxt->config);
diff --git a/src/e_mod_packagekit.c b/src/e_mod_packagekit.c
index 3dc501e..ad9c677 100644
--- a/src/e_mod_packagekit.c
+++ b/src/e_mod_packagekit.c
@@ -49,6 +49,13 @@ packagekit_popup_update(E_PackageKit_Instance *inst)
Evas_Object *icon;
char buf[PATH_MAX];
 
+   if (ctxt->error)
+ {
+e_widget_label_text_set(inst->popup_label, D_("No information 
available"));
+e_widget_ilist_append(inst->popup_ilist, NULL, ctxt->error, NULL, 
NULL, NULL);
+return;
+ }
+
EINA_LIST_FOREACH(ctxt->packages, l, pkg)
  {
 switch (pkg->info)
@@ -138,6 +145,17 @@ packagekit_popup_del(E_PackageKit_Instance *inst)
 }
 
 
+static void
+_store_error(E_PackageKit_Module_Context *ctxt, const char *err)
+{
+   ERR("PKGKIT ERROR: %s", err);
+   packagekit_icon_update(ctxt, "packagekit,state,error");
+   if (ctxt->error)
+  eina_stringshare_replace(&ctxt->error, err);
+   else
+  ctxt->error = eina_stringshare_add(err);
+}
+
 /* RefreshCache() */
 static void
 null_cb(void *data, const Eldbus_Message *msg, Eldbus_Pending *pending)
@@ -145,10 +163,7 @@ null_cb(void *data, const Eldbus_Message *msg, 
Eldbus_Pending *pending)
E_PackageKit_Module_Context *ctxt = data;
const char *error, *error_msg;
if (eldbus_message_error_get(msg, &error, &error_msg))
- {
-ERR("ERROR: '%s', '%s'", error, error_msg);
-packagekit_icon_update(ctxt, "packagekit,state,error");
- }
+ _store_error(ctxt, error_msg);
 }
 
 static void
@@ -160,14 +175,12 @@ signal_repo_detail_cb(void *data, const Eldbus_Message 
*msg)
 
if (eldbus_message_error_get(msg, &error, &error_msg))
  {
-ERR("PKGKIT: '%s', '%s'", error, error_msg);
-packagekit_icon_update(ctxt, "packagekit,state,error");
+_store_error(ctxt, error_msg);
 return;
  }
if (!eldbus_message_arguments_get(msg, "ssb", &repo_id, &desc, &enabled))
  {
-ERR("PKGKIT: could not get arguments!");
-packagekit_icon_update(ctxt, "packagekit,state,error");
+_store_error(ctxt, "could not get arguments (ssb)");
 return;
  }
DBG("PKGKIT: RepoDetail: (%d) %s [ %s ]", enabled, repo_id, desc);
@@ -183,8 +196,7 @@ signal_cache_finished_cb(void *data, const Eldbus_Message 
*msg)
 
if (eldbus_message_error_get(msg, &error, &error_msg))
  {
-ERR("PKGKIT: '%s', '%s'", error, error_msg);
-packagekit_icon_update(ctxt, "packagekit,state,error");
+_store_error(ctxt, error_msg);
 return;
  }
 
@@ -207,8 +219,7 @@ packagekit_refresh_cache(E_PackageKit_Module_Context *ctxt, 
const char *transact
pending = eldbus_proxy_call(proxy, "RefreshCache", null_cb, NULL, -1, "b", 
1);
if (!pending)
  {
-ERR("PKGKIT: could not call RefreshCache\n");
-packagekit_icon_update(ctxt, "packagekit,state,error");
+_store_error(ctxt, "could not call RefreshCache()");
 return;
  }
eldbus_proxy_signal_handler_add(proxy, "Finished", 
signal_cache_finished_cb, ctxt);
@@ -229,14 +240,12 @@ _signal_package_cb(void *data, const Eldbus_Message *msg)
 
if (eldbus_message_error_get(msg, &error, &error_msg))
  {
-ERR("PKGKIT: '%s', '%s'", error, error_msg);
-packagekit_icon_update(ctxt, "packagekit,state,error");
+_store_error(

[EGIT] [enlightenment/modules/packagekit] master 01/01: Require eldbus and e18

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

http://git.enlightenment.org/enlightenment/modules/packagekit.git/commit/?id=3aee67468105d879a878560b386efb31371c0ad1

commit 3aee67468105d879a878560b386efb31371c0ad1
Author: davemds 
Date:   Sun Nov 3 19:55:34 2013 +0100

Require eldbus and e18
---
 configure.ac   | 5 ++---
 src/Makefile.am| 4 ++--
 src/e_mod_main.c   | 1 +
 src/e_mod_packagekit.h | 2 ++
 4 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/configure.ac b/configure.ac
index 3b156f7..ed8e5bf 100644
--- a/configure.ac
+++ b/configure.ac
@@ -36,9 +36,8 @@ AM_CONDITIONAL([HAVE_PO], [false])
 ])
 AC_SUBST(LTLIBINTL)
 
-PKG_CHECK_MODULES(E, [enlightenment])
-AC_SUBST(E_CFLAGS)
-AC_SUBST(E_LIBS)
+PKG_CHECK_MODULES(E, [enlightenment >= 0.17.99])
+PKG_CHECK_MODULES(ELDBUS, [eldbus >= 1.7.99])
 
 release=$(pkg-config --variable=release enlightenment)
 MODULE_ARCH="$host_os-$host_cpu-$release"
diff --git a/src/Makefile.am b/src/Makefile.am
index 5636cee..cd352f7 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -3,7 +3,7 @@ MAINTAINERCLEANFILES = Makefile.in
 INCLUDES = -I. \
-I$(top_srcdir) \
-I$(includedir) \
-   @E_CFLAGS@
+   @E_CFLAGS@ @ELDBUS_CFLAGS@
 
 pkgdir = $(datadir)/$(MODULE_ARCH)
 pkg_LTLIBRARIES = module.la
@@ -12,7 +12,7 @@ module_la_SOURCES = e_mod_main.h \
 e_mod_packagekit.h \
 e_mod_packagekit.c
 
-module_la_LIBADD = @E_LIBS@
+module_la_LIBADD = @E_LIBS@ @ELDBUS_LIBS@
 module_la_LDFLAGS = -module -avoid-version
 module_la_DEPENDENCIES = $(top_builddir)/config.h
 
diff --git a/src/e_mod_main.c b/src/e_mod_main.c
index f5655d3..acc44a9 100644
--- a/src/e_mod_main.c
+++ b/src/e_mod_main.c
@@ -1,4 +1,5 @@
 #include 
+#include 
 #include "e_mod_main.h"
 #include "e_mod_packagekit.h"
 
diff --git a/src/e_mod_packagekit.h b/src/e_mod_packagekit.h
index 023346d..8841c91 100644
--- a/src/e_mod_packagekit.h
+++ b/src/e_mod_packagekit.h
@@ -1,6 +1,8 @@
 #ifndef PACKAGEKIT_H
 #define PACKAGEKIT_H
 
+#include 
+
 typedef enum {
PK_INFO_ENUM_UNKNOWN,
PK_INFO_ENUM_INSTALLED,

-- 




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

2013-11-03 Thread Vinícius dos Santos Oliveira
Em Dom, 2013-11-03 às 22:24 +0900, Carsten Haitzler escreveu:

> that today was on arch (relatively up to date). i've had similar
> issues before
> on older ubuntu installs too. i chalked it up to doxygen output being
> broken
> for the kind of content/setup that efl ends up producing.


Documentation from which package are you unable to generate? I just
downloaded the latest eina stable code and the usual worked:


./configure
make doc
cd doc/latex
make


I have a PDF with 671 pages.

Have you installed texlive-most? Have you read the related wiki page on
ArchWiki? Just install texlive-most and you should be ready-to-go.


-- 
Vinícius dos Santos Oliveira
https://about.me/vinipsmaker


signature.asc
Description: This is a digitally signed message part
--
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=65839951&iu=/4140/ostg.clktrk___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 02/03: gengrid/genlist: added Eo compatibles for elm_genlist/gengrid_multi_select_mode_set/get() APIs.

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

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

commit adaaed49cab83e935b331209d17745544fece7bf
Author: Daniel Juyung Seo 
Date:   Mon Nov 4 01:15:58 2013 +0900

gengrid/genlist: added Eo compatibles for 
elm_genlist/gengrid_multi_select_mode_set/get() APIs.
---
 src/lib/elm_gengrid.c| 32 
 src/lib/elm_gengrid_eo.h | 36 
 src/lib/elm_genlist.c| 32 
 src/lib/elm_genlist_eo.h | 36 
 4 files changed, 128 insertions(+), 8 deletions(-)

diff --git a/src/lib/elm_gengrid.c b/src/lib/elm_gengrid.c
index 3587374..645cb58 100644
--- a/src/lib/elm_gengrid.c
+++ b/src/lib/elm_gengrid.c
@@ -3034,18 +3034,38 @@ elm_gengrid_multi_select_mode_set(Evas_Object *obj,
   Elm_Object_Multi_Select_Mode mode)
 {
ELM_GENGRID_CHECK(obj);
-   ELM_GENGRID_DATA_GET(obj, sd);
+   eo_do(obj, elm_obj_gengrid_multi_select_mode_set(mode));
+}
+
+static void
+_multi_select_mode_set(Eo *obj EINA_UNUSED, void *_pd, va_list *list)
+{
+   Elm_Object_Multi_Select_Mode mode = va_arg(*list, 
Elm_Object_Multi_Select_Mode);
+   Elm_Gengrid_Smart_Data *sd = _pd;
+
+   if (mode >= ELM_OBJECT_MULTI_SELECT_MODE_MAX)
+ return;
 
-   sd->multi_select_mode = mode;
+   if (sd->multi_select_mode != mode)
+ sd->multi_select_mode = mode;
 }
 
 EAPI Elm_Object_Multi_Select_Mode
 elm_gengrid_multi_select_mode_get(const Evas_Object *obj)
 {
ELM_GENGRID_CHECK(obj) ELM_OBJECT_MULTI_SELECT_MODE_MAX;
-   ELM_GENGRID_DATA_GET(obj, sd);
+   Elm_Object_Multi_Select_Mode ret = ELM_OBJECT_MULTI_SELECT_MODE_MAX;
+   eo_do((Eo *)obj, elm_obj_gengrid_multi_select_mode_get(&ret));
+   return ret;
+}
+
+static void
+_multi_select_mode_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list)
+{
+   Elm_Object_Multi_Select_Mode *ret = va_arg(*list, 
Elm_Object_Multi_Select_Mode *);
+   Elm_Gengrid_Smart_Data *sd = _pd;
 
-   return sd->multi_select_mode;
+   *ret = sd->multi_select_mode;
 }
 
 EAPI Elm_Object_Item *
@@ -4075,6 +4095,8 @@ _class_constructor(Eo_Class *klass)
 EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_CLEAR), _clear),
 
EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_SET), 
_multi_select_set),
 
EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_GET), 
_multi_select_get),
+
EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_MODE_SET), 
_multi_select_mode_set),
+
EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_MODE_GET), 
_multi_select_mode_get),
 
EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_SELECTED_ITEM_GET), 
_selected_item_get),
 
EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_SELECTED_ITEMS_GET), 
_selected_items_get),
 
EO_OP_FUNC(ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_REALIZED_ITEMS_GET), 
_realized_items_get),
@@ -4120,6 +4142,8 @@ static const Eo_Op_Description op_desc[] = {
  EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_CLEAR, "Remove all items from a 
given gengrid widget."),
  EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_SET, "Enable or 
disable multi-selection in a given gengrid widget."),
  EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_GET, "Get whether 
multi-selection is enabled or disabled for a given gengrid widget."),
+ EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_MODE_SET, "Set the 
gengrid multi select mode."),
+ EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_MODE_GET, "Get the 
gengrid multi select mode."),
  EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_SELECTED_ITEM_GET, "Get the 
selected item in a given gengrid widget."),
  EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_SELECTED_ITEMS_GET, "Get a list 
of selected items in a given gengrid."),
  EO_OP_DESCRIPTION(ELM_OBJ_GENGRID_SUB_ID_REALIZED_ITEMS_GET, "Get a list 
of realized items in gengrid."),
diff --git a/src/lib/elm_gengrid_eo.h b/src/lib/elm_gengrid_eo.h
index 94f0dc6..0ee1ed2 100644
--- a/src/lib/elm_gengrid_eo.h
+++ b/src/lib/elm_gengrid_eo.h
@@ -31,6 +31,8 @@ enum
ELM_OBJ_GENGRID_SUB_ID_CLEAR,
ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_SET,
ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_GET,
+   ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_MODE_SET,
+   ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_MODE_GET,
ELM_OBJ_GENGRID_SUB_ID_SELECTED_ITEM_GET,
ELM_OBJ_GENGRID_SUB_ID_SELECTED_ITEMS_GET,
ELM_OBJ_GENGRID_SUB_ID_REALIZED_ITEMS_GET,
@@ -280,6 +282,40 @@ enum
 #define elm_obj_gengrid_multi_select_get(ret) 
ELM_OBJ_GENGRID_ID(ELM_OBJ_GENGRID_SUB_ID_MULTI_SELECT_GET), 
EO_TYPECHECK(Eina_Bool *, ret)
 
 /**
+ * @def elm_obj_gengrid_multi_select_mode_set
+ * @since 1.8
+ *
+ * Set the gengrid multi select mode.
+ *
+ * @param[in] mode
+ *
+ * - ELM_OBJECT_MULTI_SELECT_MODE_DEFAULT : select/unselect items wheneve

[EGIT] [core/elementary] master 01/03: genlist/gengrid: Fixed documentation typos.

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

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

commit 683bd812bfe636ba74beca80f51728b640baa334
Author: Daniel Juyung Seo 
Date:   Mon Nov 4 00:39:25 2013 +0900

genlist/gengrid: Fixed documentation typos.
---
 src/lib/elm_gengrid_legacy.h | 2 +-
 src/lib/elm_genlist_legacy.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/elm_gengrid_legacy.h b/src/lib/elm_gengrid_legacy.h
index 773372e..65d1599 100644
--- a/src/lib/elm_gengrid_legacy.h
+++ b/src/lib/elm_gengrid_legacy.h
@@ -93,7 +93,7 @@ EAPI void elm_gengrid_multi_select_mode_set(Evas_Object *obj, 
Elm_Object_Multi_S
  *
  * @param obj The gengrid object
  * @return The multi select mode
- * (If getting mode if failed, it returns ELM_OBJECT_MULTI_SELECT_MODE_MAX)
+ * (If getting mode is failed, it returns ELM_OBJECT_MULTI_SELECT_MODE_MAX)
  *
  * @see elm_gengrid_multi_select_set()
  * @see elm_gengrid_multi_select_mode_set()
diff --git a/src/lib/elm_genlist_legacy.h b/src/lib/elm_genlist_legacy.h
index ddaa799..a22a53a 100644
--- a/src/lib/elm_genlist_legacy.h
+++ b/src/lib/elm_genlist_legacy.h
@@ -83,7 +83,7 @@ EAPI void elm_genlist_multi_select_mode_set(Evas_Object *obj, 
Elm_Object_Multi_S
  *
  * @param obj The genlist object
  * @return The multi select mode
- * (If getting mode if failed, it returns ELM_OBJECT_MULTI_SELECT_MODE_MAX)
+ * (If getting mode is failed, it returns ELM_OBJECT_MULTI_SELECT_MODE_MAX)
  *
  * @see elm_genlist_multi_select_set()
  * @see elm_genlist_multi_select_mode_set()

-- 




[EGIT] [core/elementary] master 03/03: test_popup.c: Refactored elm_popup_move() example.

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

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

commit ab38ebcc7055c5b353b2bd8dad34a0239e2ee0e6
Author: Daniel Juyung Seo 
Date:   Mon Nov 4 02:02:50 2013 +0900

test_popup.c: Refactored elm_popup_move() example.
---
 src/bin/test_popup.c | 40 +++-
 1 file changed, 19 insertions(+), 21 deletions(-)

diff --git a/src/bin/test_popup.c b/src/bin/test_popup.c
index 945c3df..e98a71c 100644
--- a/src/bin/test_popup.c
+++ b/src/bin/test_popup.c
@@ -21,32 +21,30 @@ _popup_close_cb(void *data, Evas_Object *obj EINA_UNUSED,
evas_object_del(data);
 }
 
+#define POPUP_POINT_MAX 9
+static Evas_Coord_Point _popup_point[POPUP_POINT_MAX] =
+{
+   { 40, 50 },
+   { 80, 100 },
+   { 120, 150 },
+   { 160, 200 },
+   { 500,  }, // excess y
+   { , 500 }, // excess x
+   { -10, 50 }, // negative x
+   { 40, -100 }, // negative y
+   { 0, 0 } // zero
+};
+
 static void
 _popup_move_cb(void *data, Evas_Object *obj EINA_UNUSED,
void *event_info EINA_UNUSED)
 {
-   static int k=0;
-
-   if (k == 0)
- elm_popup_move(data, -10, 50);//negative x
-   else if (k == 1)
- elm_popup_move(data, 40, -100);//negative y
-   else if (k == 2)
- elm_popup_move(data, 0, 0);//zero x zero y
-   else if (k == 3)
- elm_popup_move(data, 40, 50);
-   else if (k == 4)
- elm_popup_move(data, 80, 100);
-   else if (k == 5)
- elm_popup_move(data, 120, 150);
-   else if (k == 6)
- elm_popup_move(data, 160, 200);
-   else if (k == 7)
- elm_popup_move(data, 500, );//excess y
-   else
- elm_popup_move(data, , 500);//excess x
+   static int k = 0;
+
+   elm_popup_move(data, _popup_point[k].x, _popup_point[k].y);
+
k++;
-   if (k > 8)
+   if (k >= POPUP_POINT_MAX)
  k = 0;
 }
 

-- 




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

2013-11-03 Thread Robert Heller
At Sun, 3 Nov 2013 23:35:19 +0900 Carsten Haitzler (The Rasterman) 
 wrote:

> 
> On Sun, 3 Nov 2013 09:14:20 -0500 Robert Heller  said:
> 
> > > that today was on arch (relatively up to date). i've had similar issues
> > > before on older ubuntu installs too. i chalked it up to doxygen output
> > > being broken for the kind of content/setup that efl ends up producing.
> > 
> > No, it is broken packaging on the part of arch...
> 
> well i've seen it on 2 distros many versions/years apart. it seems i'm
> unlucky. :)

I suspect that many 'newer' distros are being maintained by people who are
clueless WRT LaTeX and/or have a user-base that is clueless WRT LaTeX, so
these sorts of packaging problems go unnoticed / unreported. That is, these
are people who have been completely 'turned' to the 'dark side' of WYSIWYG
'word processing' as their document preparation methodology -- Open/Libre
Office gets installed by default and is on the distro CD/DVD, but TeX and
LaTeX is deep in the repository somewhere and installing *all* of it is not
allways a trivial thing, and may involves tracking out 'missing' dependencies.
I've never had to install TeX or LaTeX as part of a 'post install' process for
RedHat / CentOS -- it gets installed as part of the 'Applications/Publishing'
group, which is a base install option. 

> 
> > > btw - what is it about people having servers named gollum... they keep
> > > popping up all the time. :)
> > 
> > Gollum is not a server.  It is my laptop.  It travels.  My desktop is a big 
> > black tower system named 'sauron'...
> 
> and what is.. .the eye of sauron? :)

Little LEDs on the quad 2.5" SATA hot-swap trays... :-)

> 

-- 
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=65839951&iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [enlightenment/modules/packagekit] master 01/01: Make the config dialog resizabe. gitignore++

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

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

commit daedb37fe08af15f0d3c03b377b0961658070366
Author: davemds 
Date:   Sun Nov 3 17:21:26 2013 +0100

Make the config dialog resizabe. gitignore++
---
 .gitignore   | 32 
 src/e_mod_main.c |  5 +++--
 2 files changed, 35 insertions(+), 2 deletions(-)

diff --git a/.gitignore b/.gitignore
index 29251f8..8ed9ecf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,35 @@
+ABOUT-NLS
+Makefile
+Makefile.in
+aclocal.m4
+autom4te.cache/
+config.guess
+config.h
+config.h.in
+config.log
+config.rpath
+config.status
+config.sub
+configure
+depcomp
+e-module-packagekit.edj
+e_modules-packagekit.spec
+install-sh
+libtool
+ltmain.sh
+missing
+mkinstalldirs
+module.desktop
+src/.deps/
+src/.libs/
+src/Makefile
+src/Makefile.in
+src/e_mod_main.lo
+src/e_mod_main.o
+src/e_mod_packagekit.lo
+src/e_mod_packagekit.o
+src/module.la
+stamp-h1
 po/*.gmo
 po/Makefile
 po/Makefile.in
diff --git a/src/e_mod_main.c b/src/e_mod_main.c
index c2eed80..f5655d3 100644
--- a/src/e_mod_main.c
+++ b/src/e_mod_main.c
@@ -43,7 +43,6 @@ _cfg_widgets_create(E_Config_Dialog *cfd, Evas *evas, 
E_Config_Dialog_Data *cfda
E_Radio_Group *rg;
 
list = e_widget_list_add(evas, 0, 0);
-   e_widget_size_min_set(list, 400, 100);
 
of = e_widget_framelist_add(evas, D_("Refresh Packages"), 0);
rg = e_widget_radio_group_new(&(cfdata->update_interval));
@@ -60,7 +59,9 @@ _cfg_widgets_create(E_Config_Dialog *cfd, Evas *evas, 
E_Config_Dialog_Data *cfda
of = e_widget_framelist_add(evas, D_("Package Manager"), 0);
ob = e_widget_entry_add(evas, &(cfdata->manager_command), NULL, NULL, NULL);
e_widget_framelist_object_append(of, ob);
-   e_widget_list_object_append(list, of, 1, 1, 0.5);
+   e_widget_list_object_append(list, of, 1, 0, 0.5);
+
+   e_dialog_resizable_set(cfd->dia, 1);
 
return list;
 }

-- 




Re: [E-devel] share the edinburgh photos

2013-11-03 Thread Daniel Juyung Seo
Awesome! Great pictures!

Still waiting for the videos :)

Daniel Juyung Seo (SeoZ)


On Mon, Nov 4, 2013 at 12:46 AM, ChunEon Park  wrote:

> Hi,
> I share the picasa photos that I took in the Edinburgh.
>
> https://plus.google.com/photos/115575637560225814332/albums/5942054348028193009?banner=pwa
>
> Please check your face and enjoy. :)
>
>
> 
> -Regards, Hermet-
>
> --
> 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=65839951&iu=/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=65839951&iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] share the edinburgh photos

2013-11-03 Thread ChunEon Park
Hi,
I share the picasa photos that I took in the Edinburgh.
https://plus.google.com/photos/115575637560225814332/albums/5942054348028193009?banner=pwa

Please check your face and enjoy. :)

 

-Regards, Hermet-
--
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=65839951&iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [enlightenment/modules/packagekit] master 01/01: Translations: Add Finnish language.

2013-11-03 Thread Kai Huuhko
kuuko pushed a commit to branch master.

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

commit d5ebc9b769e169de0362ef238eb3137109a68763
Author: Kai Huuhko 
Date:   Sun Nov 3 17:20:57 2013 +0200

Translations: Add Finnish language.
---
 po/LINGUAS |  1 +
 po/fi.po   | 87 ++
 2 files changed, 88 insertions(+)

diff --git a/po/LINGUAS b/po/LINGUAS
index 7d5856f..f1912ee 100644
--- a/po/LINGUAS
+++ b/po/LINGUAS
@@ -1 +1,2 @@
+fi
 it
diff --git a/po/fi.po b/po/fi.po
new file mode 100644
index 000..fec90a7
--- /dev/null
+++ b/po/fi.po
@@ -0,0 +1,87 @@
+# Finnish translations for packagekit package.
+# Copyright (C) 2013 Enlightenment development team
+# This file is distributed under the same license as the PACKAGE package.
+# Kai Huuhko , 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: packagekit 0.0.1\n"
+"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2013-11-03 16:24+0200\n"
+"PO-Revision-Date: 2013-11-03 16:32+0200\n"
+"Last-Translator: Kai Huuhko \n"
+"Language-Team: Finnish\n"
+"Language: fi\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: src/e_mod_main.c:48
+msgid "Refresh Packages"
+msgstr "Päivitä paketit"
+
+#: src/e_mod_main.c:50
+msgid "Never"
+msgstr "Ei koskaan"
+
+#: src/e_mod_main.c:52
+msgid "Hourly"
+msgstr "Tunneittain"
+
+#: src/e_mod_main.c:54
+msgid "Daily"
+msgstr "Päivittäin"
+
+#: src/e_mod_main.c:56
+msgid "Weekly"
+msgstr "Viikoittain"
+
+#: src/e_mod_main.c:60
+msgid "Package Manager"
+msgstr "Pakettien hallintaohjelma"
+
+#: src/e_mod_main.c:113
+msgid "System Updates Settings"
+msgstr "Järjestelmän päivitysten asetukset"
+
+#: src/e_mod_main.c:147
+msgid "Settings"
+msgstr "Asetukset"
+
+#: src/e_mod_main.c:213
+msgid "System Updates"
+msgstr "Järjestelmän päivitykset"
+
+#: src/e_mod_packagekit.c:35
+msgid "No package manager configured"
+msgstr "Pakettien hallintaohjelmaa ei ole määritetty"
+
+#: src/e_mod_packagekit.c:36
+msgid ""
+"You need to set your preferred package manager.Please open the module "
+"configuration and setthe program to run."
+msgstr ""
+"Sinun tulee asettaa haluamasi pakettien hallintaohjelma.Ole hyvä ja avaa 
moduulin "
+"asetukset ja asetaajettava ohjelma."
+
+#: src/e_mod_packagekit.c:86
+msgid "One update available"
+msgstr "Yksi päivitys saatavilla"
+
+#: src/e_mod_packagekit.c:88
+#, c-format
+msgid "%d updates available"
+msgstr "%d päivitystä saatavilla"
+
+#: src/e_mod_packagekit.c:90
+msgid "Your system is updated"
+msgstr "Järjestelmäsi on päivitetty"
+
+#: src/e_mod_packagekit.c:118
+msgid "Update packages cache"
+msgstr "Päivitä pakettien välimuisti"
+
+#: src/e_mod_packagekit.c:121
+msgid "Run the package manager"
+msgstr "Aja pakettien hallintaohjelma"

-- 




Re: [E-devel] New E module for PackageKit

2013-11-03 Thread Davide Andreoli
2013/11/3 Carsten Haitzler 

> On Sat, 2 Nov 2013 17:46:17 +0100 Davide Andreoli 
> said:
>
> this is really neat! really really neat! as gustavo said - icons probably
> need
> some work (ie needs theme work so it integrates and is changeable by the
> theme). can it extract/get package specific icons per package? (the icons
> next
> to the package name). i might go for shorter labels in the buttons too...
> like
> "Refresh" and "Manage" :) maybe even make the refresh button a little
> recycle
> icon like used in efm for refresh and stick it up the top-right or
> something
> next to the title.
>
> but that's just fussing about surface details - the fact that there is
> working
> meat under that is really cool. very nice man!
>

Thank, I'm happy you like it :)

The 'per package icon' show the priority of the updates, as per:
http://www.packagekit.org/pk-faq.html#tray-icons
I was thinking about a sort of "legend" to explain that

Indeed the 2 buttons are ugly, I will try some different layouts

btw, I just committed the module to git
(enlightenment/modules/packagekit.git)




>
> > Hi all,
> >
> > I have ready a new module for E, it's a frontend for the PackageKit dbus
> > interface, it show the status of your package manager in a nice icon for
> > your shelf, has a popup that show a list of the packages that can be
> > updated and provide 2 buttons: "run package manager" and "update packages
> > cache".
> >
> > Some screenshot for you:
> >
> > http://imgbin.org/images/15552.png (2 updates available)
> > http://imgbin.org/images/15553.png (working icon while downloading, the
> > gears are also animated)
> > http://imgbin.org/images/15554.png (configuration)
> > http://imgbin.org/images/1.png (system updated)
> >
> > I think this module can go in the e tree, If no one object I will push
> this
> > new module to git in the next few days.
> >
> > see ya
> > davemds
> >
> --
> > 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=65839951&iu=/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
>
>
--
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=65839951&iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [e-users] EFL + Elementary 1.8

2013-11-03 Thread Cedric BAIL
Cedric Bail
On Nov 3, 2013 11:36 PM, "Carsten Haitzler"  wrote:
>
> On Sun, 3 Nov 2013 15:32:32 +0100 Cedric BAIL 
said:
>
> > Cedric Bail
> > On Nov 3, 2013 11:18 PM, "Carsten Haitzler" 
wrote:
> > >
> > > On Sun, 3 Nov 2013 22:42:31 +0900 Daniel Juyung Seo <
seojuyu...@gmail.com>
> > said:
> > >
> > > > On Fri, Nov 1, 2013 at 4:32 PM, Carsten Haitzler <
ras...@rasterman.com
> > >wrote:
> > > >
> > > > > I've updated our release page to reflect current timelines:
> > > > >
> > > > > https://phab.enlightenment.org/w/efl_and_elementary_1_8/
> > > > >
> > > > > So expect alphas next week.
> > > > >
> > > >
> > > > So we have an hour and 16 minutes until the feature freeze.
> > > > No more delay?
> > > > How is it going?
> > > >
> > > > Daniel Juyung Seo (SeoZ)
> > >
> > > well as of right now...
> > >
> > > https://phab.enlightenment.org/w/efl_and_elementary_1_8/
> > >
> > > 40mins left. if the feature is not in by 40 mins from now... then
it'll
> > have to
> > > wait until efl/elm 1.9 (about 3months from now). tomorrow i will
check in
> > on
> > > doing an alpha-1 - as long as i have the time, and for the next month
it's
> > > bug-fix land and otherwise any polishing of things for release (docs,
> > readmes,
> > > changelogs, news). ther's a backlog of patch review requests - many of
> > them are
> > > bugfixes (i went over them yesterday). there is also a large set of
> > actual bug
> > > reports to go over - some may have fixes already attached. that's the
job
> > for
> > > the next 4 weeks. clear out those (as best possible) and any other
bugs
> > not
> > > aleady filed there that we see/know of. run everything possible and
test
> > - use
> > > valgrind to find issues... do our best to make efl 1.8.0 as solid as
we
> > can.
> > > but never fear 1.8.1 can come with more fixes and 1.9.0 will come
about 4
> > > months from now. :)
> >
> > We do have three patch to come in. Wayland private header fix,
quicklaunch
> > and fixing the race condition in elm theme. All of those should be
landing
> > tomorrow. Also it would give sometime to go over phab open ticket and
> > differential.
>
> wayland private headers are in. i fixed build breaks on the weekend
thanks to
> this. i guess there are more fies then? if it's a fix to a bug.. thats
fine
> after freeze. anything else... is not fine. it will need consensus that
it's
> needed.

Yes,there is more structure to move to private header. Antognolli did
commit to do them tomorrow. Quicklaunch require change in ELM_MAIN. Fixing
the race condition will introduce 3 more API and eina_cow_free need to have
its prototype changed.

And sorry for the mail,I am on my phone and the mail compositor is so
crappy...

> > So I am advocating for a one day delay.we're not in a rush anymore and
can
> > go with such a delay I think. That will give more eyeball looking at it
> > when we do come close to the deadline also.
> >
> > > > > --
> > > > > - 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=65839951&iu=/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=65839951&iu=/4140/ostg.clktrk
> > > > ___
> > > > enlightenment-users mailing list
> > > > enlightenment-us...@lists.sourceforge.net
> > > > https://lists.sourceforge.net/lists/listinfo/enlightenment-users
> > > >
> > >
> > >
> > > --
> > > - 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 sig

[EGIT] [core/elementary] master 01/01: Genlist/Gengrid: Added multi select mode for genlist/gengrid.

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

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

commit ae03d3cef36abd27ff530e350e39ae401f4f389e
Author: Daniel Juyung Seo 
Date:   Sun Nov 3 23:58:57 2013 +0900

Genlist/Gengrid: Added multi select mode for genlist/gengrid.

elm_genlist_multi_select_mode_set/get()
elm_gengrid_multi_select_mode_set/get()
---
 ChangeLog| 10 --
 NEWS |  2 +-
 src/lib/elm_general.h|  8 +++-
 src/lib/elm_gengrid.c| 21 -
 src/lib/elm_gengrid_legacy.h | 39 +++
 src/lib/elm_genlist.c| 21 -
 src/lib/elm_genlist_legacy.h | 39 +++
 src/lib/elm_widget_gengrid.h |  1 +
 src/lib/elm_widget_genlist.h |  1 +
 9 files changed, 124 insertions(+), 18 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 434f65f..9207326 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1736,12 +1736,10 @@
 
 * slider: Added elm_slider_step_get(), elm_slider_step_set().
 
-2013-10-02  Ryuan Choi (ryuan)
-
-* genlist , gengrid: Add ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL.
-It disallow multiple selection when clicked without control pressed 
although
-multiple selection is enabled.
-
 2013-10-03  Abhinandan Aryadipta (aryarockstar)
 
 * Popup - Added elm_popup_move() api.
+
+2013-10-03  Daniel Juyung Seo (SeoZ)
+
+* Genlist/Gengrid: Added multi select mode.
diff --git a/NEWS b/NEWS
index fece1e7..2eac992 100644
--- a/NEWS
+++ b/NEWS
@@ -101,8 +101,8 @@ Additions:
* Add support for "clicked" callback on Return/space/KP_Enter key press for 
image.
* Add "virtualkeypad,size,changed" callback on virtualkeypad min size 
change for conformant.
* Add elm_slider_step_get(), elm_slider_step_set() for slider.
-   * Add ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL select mode for 
genlist/gengrid.
* Add support elm_popup_move() for popup.
+   * Add multi select mode for genlist/gengrid.
 
 Improvements:
 
diff --git a/src/lib/elm_general.h b/src/lib/elm_general.h
index 9f5e140..7876af4 100644
--- a/src/lib/elm_general.h
+++ b/src/lib/elm_general.h
@@ -126,10 +126,16 @@ typedef enum
ELM_OBJECT_SELECT_MODE_ALWAYS, /**< always select mode */
ELM_OBJECT_SELECT_MODE_NONE, /**< no select mode */
ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY, /**< no select mode with no finger 
size rule*/
-   ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL, /**< disallow mutiple 
selection when clicked without control key pressed */
ELM_OBJECT_SELECT_MODE_MAX
 } Elm_Object_Select_Mode;
 
+typedef enum
+{
+   ELM_OBJECT_MULTI_SELECT_MODE_DEFAULT = 0, /**< default multiple select mode 
*/
+   ELM_OBJECT_MULTI_SELECT_MODE_WITH_CONTROL, /**< disallow mutiple selection 
when clicked without control key pressed */
+   ELM_OBJECT_MULTI_SELECT_MODE_MAX
+} Elm_Object_Multi_Select_Mode;
+
 typedef Eina_Bool (*Elm_Event_Cb)(void *data, Evas_Object *obj, 
Evas_Object *src, Evas_Callback_Type type, void *event_info); /**< Function 
prototype definition for callbacks on input events happening on Elementary 
widgets. @a data will receive the user data pointer passed to 
elm_object_event_callback_add(). @a src will be a pointer to the widget on 
which the input event took place. @a type will get the type of this event and 
@a event_info, the struct with details on this event. */
 
 extern EAPI double _elm_startup_time;
diff --git a/src/lib/elm_gengrid.c b/src/lib/elm_gengrid.c
index 883d4fb..3587374 100644
--- a/src/lib/elm_gengrid.c
+++ b/src/lib/elm_gengrid.c
@@ -597,7 +597,7 @@ _item_mouse_up_cb(void *data,
  }
if (elm_widget_item_disabled_get(it) || (dragged)) return;
if (sd->multi &&
-   ((sd->select_mode != ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL) ||
+   ((sd->multi_select_mode != ELM_OBJECT_MULTI_SELECT_MODE_WITH_CONTROL) ||
 (evas_key_modifier_is_set(ev->modifiers, "Control"
  {
 if (!it->selected)
@@ -3029,6 +3029,25 @@ _multi_select_get(Eo *obj EINA_UNUSED, void *_pd, 
va_list *list)
*ret = sd->multi;
 }
 
+EAPI void
+elm_gengrid_multi_select_mode_set(Evas_Object *obj,
+  Elm_Object_Multi_Select_Mode mode)
+{
+   ELM_GENGRID_CHECK(obj);
+   ELM_GENGRID_DATA_GET(obj, sd);
+
+   sd->multi_select_mode = mode;
+}
+
+EAPI Elm_Object_Multi_Select_Mode
+elm_gengrid_multi_select_mode_get(const Evas_Object *obj)
+{
+   ELM_GENGRID_CHECK(obj) ELM_OBJECT_MULTI_SELECT_MODE_MAX;
+   ELM_GENGRID_DATA_GET(obj, sd);
+
+   return sd->multi_select_mode;
+}
+
 EAPI Elm_Object_Item *
 elm_gengrid_selected_item_get(const Evas_Object *obj)
 {
diff --git a/src/lib/elm_gengrid_legacy.h b/src/lib/elm_gengrid_legacy.h
index 0f09c70..773372e 100644
--- a/src/lib/elm_gengrid_legacy.h
+++ b/src/lib/elm_gengrid_legacy.h
@@ -69,6 +69,41 @@ EAPI void  

Re: [E-devel] [e-users] EFL + Elementary 1.8

2013-11-03 Thread The Rasterman
On Sun, 3 Nov 2013 15:32:32 +0100 Cedric BAIL  said:

> Cedric Bail
> On Nov 3, 2013 11:18 PM, "Carsten Haitzler"  wrote:
> >
> > On Sun, 3 Nov 2013 22:42:31 +0900 Daniel Juyung Seo 
> said:
> >
> > > On Fri, Nov 1, 2013 at 4:32 PM, Carsten Haitzler  >wrote:
> > >
> > > > I've updated our release page to reflect current timelines:
> > > >
> > > > https://phab.enlightenment.org/w/efl_and_elementary_1_8/
> > > >
> > > > So expect alphas next week.
> > > >
> > >
> > > So we have an hour and 16 minutes until the feature freeze.
> > > No more delay?
> > > How is it going?
> > >
> > > Daniel Juyung Seo (SeoZ)
> >
> > well as of right now...
> >
> > https://phab.enlightenment.org/w/efl_and_elementary_1_8/
> >
> > 40mins left. if the feature is not in by 40 mins from now... then it'll
> have to
> > wait until efl/elm 1.9 (about 3months from now). tomorrow i will check in
> on
> > doing an alpha-1 - as long as i have the time, and for the next month it's
> > bug-fix land and otherwise any polishing of things for release (docs,
> readmes,
> > changelogs, news). ther's a backlog of patch review requests - many of
> them are
> > bugfixes (i went over them yesterday). there is also a large set of
> actual bug
> > reports to go over - some may have fixes already attached. that's the job
> for
> > the next 4 weeks. clear out those (as best possible) and any other bugs
> not
> > aleady filed there that we see/know of. run everything possible and test
> - use
> > valgrind to find issues... do our best to make efl 1.8.0 as solid as we
> can.
> > but never fear 1.8.1 can come with more fixes and 1.9.0 will come about 4
> > months from now. :)
> 
> We do have three patch to come in. Wayland private header fix, quicklaunch
> and fixing the race condition in elm theme. All of those should be landing
> tomorrow. Also it would give sometime to go over phab open ticket and
> differential.

wayland private headers are in. i fixed build breaks on the weekend thanks to
this. i guess there are more fies then? if it's a fix to a bug.. thats fine
after freeze. anything else... is not fine. it will need consensus that it's
needed.

> So I am advocating for a one day delay.we're not in a rush anymore and can
> go with such a delay I think. That will give more eyeball looking at it
> when we do come close to the deadline also.
> 
> > > > --
> > > > - 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=65839951&iu=/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=65839951&iu=/4140/ostg.clktrk
> > > ___
> > > enlightenment-users mailing list
> > > enlightenment-us...@lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/enlightenment-users
> > >
> >
> >
> > --
> > - 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=65839951&iu=/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
> An

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

2013-11-03 Thread The Rasterman
On Sun, 3 Nov 2013 09:14:20 -0500 Robert Heller  said:

> > that today was on arch (relatively up to date). i've had similar issues
> > before on older ubuntu installs too. i chalked it up to doxygen output
> > being broken for the kind of content/setup that efl ends up producing.
> 
> No, it is broken packaging on the part of arch...

well i've seen it on 2 distros many versions/years apart. it seems i'm
unlucky. :)

> > btw - what is it about people having servers named gollum... they keep
> > popping up all the time. :)
> 
> Gollum is not a server.  It is my laptop.  It travels.  My desktop is a big 
> black tower system named 'sauron'...

and what is.. .the eye of sauron? :)

-- 
- 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=65839951&iu=/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: evas - clip shutdown fix to avoid invalid mem accesses

2013-11-03 Thread Cedric BAIL
OK,will do that tomorrow.that is going to break the API and ABI of cow
free.

Cedric Bail
On Nov 3, 2013 11:14 PM, "Carsten Haitzler"  wrote:
>
> On Sun, 3 Nov 2013 15:00:01 +0100 Cedric BAIL 
said:
>
> > Cedric Bail
> > On Nov 3, 2013 9:22 PM, "Carsten Haitzler"  wrote:
> > >
> > > raster pushed a commit to branch master.
> > >
> > >
> >
http://git.enlightenment.org/core/efl.git/commit/?id=eb6af1f1ff7ee069eff8bab13c0eed5010ef5660
> > >
> > > commit eb6af1f1ff7ee069eff8bab13c0eed5010ef5660
> > > Author: Carsten Haitzler (Rasterman) 
> > > Date:   Sun Nov 3 21:43:11 2013 +0900
> > >
> > > evas - clip shutdown fix to avoid invalid mem accesses
> > >
> > > many valgrind complaints on e shutdown are there regarding
accessing
> > > cow sections, lists and object elements during shutdown. this
plugs
> > > theses little holes to avoid the invalid accesses and thus avoids
> > > potential crashes.
> >
> > Just thinking here, but we could make cow free set the pointer to the
> > read-only always valid object? That should keep the code cleaner and
less
> > error prone, I think.
>
> whatever it takes to ensure we don't have crashes lurking. :)
>
> > > ---
> > >  src/lib/evas/canvas/evas_clip.c| 20 
> > >  src/lib/evas/canvas/evas_object_main.c | 25 ++---
> > >  2 files changed, 34 insertions(+), 11 deletions(-)
> > >
> > > diff --git a/src/lib/evas/canvas/evas_clip.c
> > b/src/lib/evas/canvas/evas_clip.c
> > > index 76cddc0..5dfbc48 100644
> > > --- a/src/lib/evas/canvas/evas_clip.c
> > > +++ b/src/lib/evas/canvas/evas_clip.c
> > > @@ -369,6 +369,7 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list
> > EINA_UNUSED)
> > >  {
> > > Evas_Object_Protected_Data *obj = _pd;
> > >
> > > +   if (!obj->cur) return;
> > > if (!obj->cur->clipper) return;
> > >
> > > obj->clip.cache_clipees_answer =
> > eina_list_free(obj->clip.cache_clipees_answer);
> > > @@ -386,7 +387,7 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list
> > EINA_UNUSED)
> > >{
> > >   EINA_COW_STATE_WRITE_BEGIN(obj->cur->clipper,
state_write,
> > cur)
> > > {
> > > -  state_write->have_clipees = 0;
> > > +  if (state_write) state_write->have_clipees = 0;
> > > }
> > >   EINA_COW_STATE_WRITE_END(obj->cur->clipper, state_write,
> > cur);
> > >
> > > @@ -417,14 +418,17 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list
> > EINA_UNUSED)
> > > if ((!obj->is_smart) &&
> > > (!((obj->map->cur.map) && (obj->map->cur.usemap
> > >   {
> > > -if (evas_object_is_in_output_rect(eo_obj, obj,
> > > +if (obj->cur)
> > > +  {
> > > + if (evas_object_is_in_output_rect(eo_obj, obj,
> > > +
> > obj->layer->evas->pointer.x,
> > > +
> > obj->layer->evas->pointer.y, 1, 1))
> > > +   evas_event_feed_mouse_move(obj->layer->evas->evas,
> > >
 obj->layer->evas->pointer.x,
> > > -
 obj->layer->evas->pointer.y,
> > 1, 1))
> > > -  evas_event_feed_mouse_move(obj->layer->evas->evas,
> > > - obj->layer->evas->pointer.x,
> > > - obj->layer->evas->pointer.y,
> > > -
obj->layer->evas->last_timestamp,
> > > - NULL);
> > > +
 obj->layer->evas->pointer.y,
> > > +
> >  obj->layer->evas->last_timestamp,
> > > +  NULL);
> > > +  }
> > >   }
> > > evas_object_clip_across_check(eo_obj, obj);
> > >  }
> > > diff --git a/src/lib/evas/canvas/evas_object_main.c
> > b/src/lib/evas/canvas/evas_object_main.c
> > > index 27fc7ad..c779f2d 100644
> > > --- a/src/lib/evas/canvas/evas_object_main.c
> > > +++ b/src/lib/evas/canvas/evas_object_main.c
> > > @@ -141,6 +141,7 @@ void
> > >  evas_object_free(Evas_Object *eo_obj, int clean_layer)
> > >  {
> > > Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj,
MY_CLASS);
> > > +   Evas_Object *eo_obj2;
> > > if (!obj) return;
> > > obj->clean_layer = clean_layer;
> > >
> > > @@ -171,8 +172,21 @@ evas_object_free(Evas_Object *eo_obj, int
> > clean_layer)
> > >  obj->func->free(eo_obj, obj, obj->private_data);
> > >   }
> > > if (!was_smart_child) evas_object_release(eo_obj, obj,
> > obj->clean_layer);
> > > -   if (obj->clip.clipees)
> > > - eina_list_free(obj->clip.clipees);
> > > +   EINA_LIST_FREE(obj->clip.clipees, eo_obj2)
> > > + {
> > > +Evas_Object_Protected_Data *obj2 =
> > > +  eo_data_scope_get(eo_obj2, MY_CLASS);
> > > +if ((obj2) && (obj2->cur))
> > > +  {
> > > + EINA_COW_STATE_WRITE_BEGIN(obj2, state_write, cur)
> > > +   {
> > > +  state_write->clipper = NULL;
> > > +   }
> > > + EINA_COW_STATE_WRITE_END(obj2, state_write, cur);
> > > +  }
> > > + }
> > > +//   if (obj->clip.clipees)
> > > 

Re: [E-devel] [e-users] EFL + Elementary 1.8

2013-11-03 Thread Cedric BAIL
Cedric Bail
On Nov 3, 2013 11:18 PM, "Carsten Haitzler"  wrote:
>
> On Sun, 3 Nov 2013 22:42:31 +0900 Daniel Juyung Seo 
said:
>
> > On Fri, Nov 1, 2013 at 4:32 PM, Carsten Haitzler wrote:
> >
> > > I've updated our release page to reflect current timelines:
> > >
> > > https://phab.enlightenment.org/w/efl_and_elementary_1_8/
> > >
> > > So expect alphas next week.
> > >
> >
> > So we have an hour and 16 minutes until the feature freeze.
> > No more delay?
> > How is it going?
> >
> > Daniel Juyung Seo (SeoZ)
>
> well as of right now...
>
> https://phab.enlightenment.org/w/efl_and_elementary_1_8/
>
> 40mins left. if the feature is not in by 40 mins from now... then it'll
have to
> wait until efl/elm 1.9 (about 3months from now). tomorrow i will check in
on
> doing an alpha-1 - as long as i have the time, and for the next month it's
> bug-fix land and otherwise any polishing of things for release (docs,
readmes,
> changelogs, news). ther's a backlog of patch review requests - many of
them are
> bugfixes (i went over them yesterday). there is also a large set of
actual bug
> reports to go over - some may have fixes already attached. that's the job
for
> the next 4 weeks. clear out those (as best possible) and any other bugs
not
> aleady filed there that we see/know of. run everything possible and test
- use
> valgrind to find issues... do our best to make efl 1.8.0 as solid as we
can.
> but never fear 1.8.1 can come with more fixes and 1.9.0 will come about 4
> months from now. :)

We do have three patch to come in. Wayland private header fix, quicklaunch
and fixing the race condition in elm theme. All of those should be landing
tomorrow. Also it would give sometime to go over phab open ticket and
differential.

So I am advocating for a one day delay.we're not in a rush anymore and can
go with such a delay I think. That will give more eyeball looking at it
when we do come close to the deadline also.

> > > --
> > > - 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=65839951&iu=/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=65839951&iu=/4140/ostg.clktrk
> > ___
> > enlightenment-users mailing list
> > enlightenment-us...@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/enlightenment-users
> >
>
>
> --
> - 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=65839951&iu=/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=65839951&iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [core/elementary] master 01/01: popup: Added support for popup move. elm_popup_move.

2013-11-03 Thread Abhinandan Aryadipta
seoz pushed a commit to branch master.

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

commit f67ecb2028dd663aa4b0d9fe78b2a392ac169e7e
Author: Abhinandan Aryadipta 
Date:   Sun Nov 3 23:01:19 2013 +0900

popup: Added support for popup move. elm_popup_move.

Summary: Added support for popup move

Test Plan: elm_popup_move

Reviewers: seoz, singh.amitesh, tasn, Hermet

CC: raster

Differential Revision: https://phab.enlightenment.org/D247
---
 ChangeLog  |  4 
 NEWS   |  1 +
 src/bin/test_popup.c   | 58 ++
 src/lib/elc_popup.c| 41 
 src/lib/elc_popup_eo.h | 14 +++
 src/lib/elc_popup_legacy.h | 15 
 6 files changed, 133 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index 66e4536..434f65f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1741,3 +1741,7 @@
 * genlist , gengrid: Add ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL.
 It disallow multiple selection when clicked without control pressed 
although
 multiple selection is enabled.
+
+2013-10-03  Abhinandan Aryadipta (aryarockstar)
+
+* Popup - Added elm_popup_move() api.
diff --git a/NEWS b/NEWS
index 4ba58bf..fece1e7 100644
--- a/NEWS
+++ b/NEWS
@@ -102,6 +102,7 @@ Additions:
* Add "virtualkeypad,size,changed" callback on virtualkeypad min size 
change for conformant.
* Add elm_slider_step_get(), elm_slider_step_set() for slider.
* Add ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL select mode for 
genlist/gengrid.
+   * Add support elm_popup_move() for popup.
 
 Improvements:
 
diff --git a/src/bin/test_popup.c b/src/bin/test_popup.c
index fa2d06e..945c3df 100644
--- a/src/bin/test_popup.c
+++ b/src/bin/test_popup.c
@@ -22,6 +22,35 @@ _popup_close_cb(void *data, Evas_Object *obj EINA_UNUSED,
 }
 
 static void
+_popup_move_cb(void *data, Evas_Object *obj EINA_UNUSED,
+   void *event_info EINA_UNUSED)
+{
+   static int k=0;
+
+   if (k == 0)
+ elm_popup_move(data, -10, 50);//negative x
+   else if (k == 1)
+ elm_popup_move(data, 40, -100);//negative y
+   else if (k == 2)
+ elm_popup_move(data, 0, 0);//zero x zero y
+   else if (k == 3)
+ elm_popup_move(data, 40, 50);
+   else if (k == 4)
+ elm_popup_move(data, 80, 100);
+   else if (k == 5)
+ elm_popup_move(data, 120, 150);
+   else if (k == 6)
+ elm_popup_move(data, 160, 200);
+   else if (k == 7)
+ elm_popup_move(data, 500, );//excess y
+   else
+ elm_popup_move(data, , 500);//excess x
+   k++;
+   if (k > 8)
+ k = 0;
+}
+
+static void
 _g_popup_response_cb(void *data, Evas_Object *obj EINA_UNUSED,
  void *event_info EINA_UNUSED)
 {
@@ -467,6 +496,33 @@ _popup_transparent_cb(void *data, Evas_Object *obj 
EINA_UNUSED,
 }
 
 static void
+_popup_transparent_move_cb(void *data, Evas_Object *obj EINA_UNUSED,
+   void *event_info EINA_UNUSED)
+{
+   Evas_Object *popup;
+   Evas_Object *btn, *btn1;
+
+   popup = elm_popup_add(data);
+   elm_object_style_set(popup, "transparent");
+   elm_object_text_set(popup, "This Popup has transparent background");
+
+   // popup buttons
+   btn = elm_button_add(popup);
+   elm_object_text_set(btn, "Move");
+   elm_object_part_content_set(popup, "button1", btn);
+   evas_object_smart_callback_add(btn, "clicked", _popup_move_cb, popup);
+
+   btn1 = elm_button_add(popup);
+   elm_object_text_set(btn1, "Close");
+   elm_object_part_content_set(popup, "button2", btn1);
+   evas_object_smart_callback_add(btn1, "clicked", _popup_close_cb, popup);
+
+   // popup show should be called after adding all the contents and the buttons
+   // of popup to set the focus into popup's contents correctly.
+   evas_object_show(popup);
+}
+
+static void
 _list_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
 {
evas_object_del(data);
@@ -543,6 +599,8 @@ test_popup(void *data EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED,
 _popup_center_text_3button_add_remove_button_cb, win);
elm_list_item_append(list, "popup-transparent", NULL, NULL,
 _popup_transparent_cb, win);
+   elm_list_item_append(list, "popup-transparent-move", NULL, NULL,
+_popup_transparent_move_cb, win);
elm_list_item_append(list, "popup-center-title + list content + 1 button",
 NULL, NULL, 
_popup_center_title_list_content_1button_cb,
 win);
diff --git a/src/lib/elc_popup.c b/src/lib/elc_popup.c
index f873cff..c5b5c98 100644
--- a/src/lib/elc_popup.c
+++ b/src/lib/elc_popup.c
@@ -1755,6 +1755,45 @@ _orient_get(Eo *obj EINA_UNUSED, void *_pd, va_list 
*list)
 }
 
 EAPI void
+elm_popup_move(Evas_Object *obj,
+   Evas_Coord x, Evas_Coord y)
+{
+   ELM_POPUP_CHECK(obj);
+   eo_do(obj, elm_ob

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

2013-11-03 Thread Robert Heller
At Sun, 3 Nov 2013 22:24:50 +0900 Carsten Haitzler (The Rasterman) 
 wrote:

> 
> On Sun, 3 Nov 2013 07:46:38 -0500 Robert Heller  said:
> 
> > At Sun, 3 Nov 2013 14:16:58 +0900 Carsten Haitzler (The Rasterman)
> >  wrote:
> > 
> > > 
> > > On Sat, 2 Nov 2013 11:03:28 -0400 Robert Heller  
> > > said:
> > > 
> > > > At Sat, 2 Nov 2013 23:36:23 +0900 Carsten Haitzler (The Rasterman)
> > > >  wrote:
> > > > 
> > > > > 
> > > > > On Sat, 2 Nov 2013 09:57:49 -0400 Robert Heller 
> > > > > said:
> > > > > 
> > > > > > At Sat, 2 Nov 2013 20:58:03 +0900 Carsten Haitzler (The Rasterman)
> > > > > >  wrote:
> > > > > > 
> > > > > > > 
> > > > > > > On Sat, 2 Nov 2013 07:48:23 -0400 Robert Heller
> > > > > > >  said:
> > > > > > > 
> > > > > > > > At Sat, 2 Nov 2013 18:22:57 +0900 Enlightenment developer list
> > > > > > > >  wrote:
> > > > > > > > 
> > > > > > > > > 
> > > > > > > > > On Sat, 02 Nov 2013 02:17:32 -0400 Jose Gonzalez
> > > > > > > > >  said:
> > > > > > > > > 
> > > > > > > > > > Carsten wrote:
> > > > > > > > > > 
> > > > > > > > > > > On Fri, 01 Nov 2013 05:57:59 -0400 Jose Gonzalez
> > > > > > > > > > >  said:
> > > > > > > > > > >
> > > > > > > > > > >   
> > > > > > > > > > >> Carsten wrote:
> > > > > > > > > > >>
> > > > > > > > > > >> 
> > > > > > > > > > >>> On Fri, 1 Nov 2013 00:40:42 + Andrew F
> > > > > > > > > > >>>  said:
> > > > > > > > > > >>>
> > > > > > > > > > >>>   
> > > > > > > > > > >>>   
> > > > > > > > > >  Hey guys, can someone point me to documentation that
> > > > > > > > > >  explains what a swallow is?
> > > > > > > > > >  and how its used.
> > > > > > > > > >  thanks
> > > > > > > > > >  
> > > > > > > > > >  
> > > > > > > > > > >>> swallow the name is something i adopted from fvwm2 days 
> > > > > > > > > > >>> -
> > > > > > > > > > >>> it had swallow stuff... and swallows in edje are the 
> > > > > > > > > > >>> same
> > > > > > > > > > >>> thing basically - just with objects.
> > > > > > > > > > >>>
> > > > > > > > > > >>> didn't you see my link to the swallow docs?
> > > > > > > > > > >>>
> > > > > > > > > > >>> https://build.enlightenment.org/job/nightly_efl_gcc_x86_64/lastSuccessfulBuild/artifact/doc/html/group__Edje__Part__Swallow.html#ga97d1419f89bff20ba971e47c78641271
> > > > > > > > > > >>>
> > > > > > > > > > >>> its there in the efl online docs (thats the latest auto
> > > > > > > > > > >>> nightly doc build).
> > > > > > > > > > >>>
> > > > > > > > > > >>>   
> > > > > > > > > > >>>   
> > > > > > > > > > >> Good lord man, yes that's a nice bit of history but 
> > > > > > > > > > >> do
> > > > > > > > > > >> you now want him to look up fwm2's docs as well!  :)
> > > > > > > > > > >> Also, I can't even access that link you gave... And
> > > > > > > > > > >> where is the old pdf that had edje documentation (the 
> > > > > > > > > > >> edje
> > > > > > > > > > >> cookbook or something)?
> > > > > > > > > > >>
> > > > > > > > > > >> Anyway, why not give a simple explanation of the 
> > > > > > > > > > >> thing
> > > > > > > > > > >> rather than beat around the bush... Something short but 
> > > > > > > > > > >> to
> > > > > > > > > > >> the heart of the matter, like say:
> > > > > > > > > > >> 
> > > > > > > > > > >
> > > > > > > > > > > because of the comments that "efl has no docs so its
> > > > > > > > > > > impossible to use - this is undocumented anywhere". give a
> > > > > > > > > > > man a fish - you feed him for a day. teach a man to fish
> > > > > > > > > > > and you feed him for a lifetime. i'm pointing to the docs
> > > > > > > > > > > so he can keep looking around and refer to them for more
> > > > > > > > > > > questions etc.
> > > > > > > > > > >
> > > > > > > > > > >   
> > > > > > > > > > 
> > > > > > > > > > That works both ways. People who ask questions aren't
> > > > > > > > > > necessarily idiots and maybe efl devs can benefit from a bit
> > > > > > > > > > more practice in directly and concisely answering their
> > > > > > > > > > questions - that way not only do they address the particular
> > > > > > > > > > issue at hand but also maybe find it easier to write clear
> > > > > > > > > > documentation as they go along writing code and even
> > > > > > > > > > then, no single wording will ever be clear to everyone.
> > > > > > > > > > Remember another cliche: If a thing is truly clear then no
> > > > > > > > > > explanation is ever needed. And if it's not, then it's worth
> > > > > > > > > > explaining again.
> > > > > > > > > 
> > > > > > > > > given this thread... it appears the original poster/question
> > > > > > > > > never even found yhe docs hat are there at all, so pointing to
> > > > > > > > > them is the firs port of call imho. if THEY do not suffice -
> > > > > > > > > then that is a different matter
> > > > > > > > 
> > > > > > > > 
> > > > > > > > The docs did not suffice.  The explaination below is more than
> > > > > > > > anything I founf in the doc

Re: [E-devel] [EGIT] [core/efl] master 03/03: evas - clip shutdown fix to avoid invalid mem accesses

2013-11-03 Thread The Rasterman
On Sun, 3 Nov 2013 15:00:01 +0100 Cedric BAIL  said:

> Cedric Bail
> On Nov 3, 2013 9:22 PM, "Carsten Haitzler"  wrote:
> >
> > raster pushed a commit to branch master.
> >
> >
> http://git.enlightenment.org/core/efl.git/commit/?id=eb6af1f1ff7ee069eff8bab13c0eed5010ef5660
> >
> > commit eb6af1f1ff7ee069eff8bab13c0eed5010ef5660
> > Author: Carsten Haitzler (Rasterman) 
> > Date:   Sun Nov 3 21:43:11 2013 +0900
> >
> > evas - clip shutdown fix to avoid invalid mem accesses
> >
> > many valgrind complaints on e shutdown are there regarding accessing
> > cow sections, lists and object elements during shutdown. this plugs
> > theses little holes to avoid the invalid accesses and thus avoids
> > potential crashes.
> 
> Just thinking here, but we could make cow free set the pointer to the
> read-only always valid object? That should keep the code cleaner and less
> error prone, I think.

whatever it takes to ensure we don't have crashes lurking. :)

> > ---
> >  src/lib/evas/canvas/evas_clip.c| 20 
> >  src/lib/evas/canvas/evas_object_main.c | 25 ++---
> >  2 files changed, 34 insertions(+), 11 deletions(-)
> >
> > diff --git a/src/lib/evas/canvas/evas_clip.c
> b/src/lib/evas/canvas/evas_clip.c
> > index 76cddc0..5dfbc48 100644
> > --- a/src/lib/evas/canvas/evas_clip.c
> > +++ b/src/lib/evas/canvas/evas_clip.c
> > @@ -369,6 +369,7 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list
> EINA_UNUSED)
> >  {
> > Evas_Object_Protected_Data *obj = _pd;
> >
> > +   if (!obj->cur) return;
> > if (!obj->cur->clipper) return;
> >
> > obj->clip.cache_clipees_answer =
> eina_list_free(obj->clip.cache_clipees_answer);
> > @@ -386,7 +387,7 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list
> EINA_UNUSED)
> >{
> >   EINA_COW_STATE_WRITE_BEGIN(obj->cur->clipper, state_write,
> cur)
> > {
> > -  state_write->have_clipees = 0;
> > +  if (state_write) state_write->have_clipees = 0;
> > }
> >   EINA_COW_STATE_WRITE_END(obj->cur->clipper, state_write,
> cur);
> >
> > @@ -417,14 +418,17 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list
> EINA_UNUSED)
> > if ((!obj->is_smart) &&
> > (!((obj->map->cur.map) && (obj->map->cur.usemap
> >   {
> > -if (evas_object_is_in_output_rect(eo_obj, obj,
> > +if (obj->cur)
> > +  {
> > + if (evas_object_is_in_output_rect(eo_obj, obj,
> > +
> obj->layer->evas->pointer.x,
> > +
> obj->layer->evas->pointer.y, 1, 1))
> > +   evas_event_feed_mouse_move(obj->layer->evas->evas,
> >obj->layer->evas->pointer.x,
> > -  obj->layer->evas->pointer.y,
> 1, 1))
> > -  evas_event_feed_mouse_move(obj->layer->evas->evas,
> > - obj->layer->evas->pointer.x,
> > - obj->layer->evas->pointer.y,
> > - obj->layer->evas->last_timestamp,
> > - NULL);
> > +  obj->layer->evas->pointer.y,
> > +
>  obj->layer->evas->last_timestamp,
> > +  NULL);
> > +  }
> >   }
> > evas_object_clip_across_check(eo_obj, obj);
> >  }
> > diff --git a/src/lib/evas/canvas/evas_object_main.c
> b/src/lib/evas/canvas/evas_object_main.c
> > index 27fc7ad..c779f2d 100644
> > --- a/src/lib/evas/canvas/evas_object_main.c
> > +++ b/src/lib/evas/canvas/evas_object_main.c
> > @@ -141,6 +141,7 @@ void
> >  evas_object_free(Evas_Object *eo_obj, int clean_layer)
> >  {
> > Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, MY_CLASS);
> > +   Evas_Object *eo_obj2;
> > if (!obj) return;
> > obj->clean_layer = clean_layer;
> >
> > @@ -171,8 +172,21 @@ evas_object_free(Evas_Object *eo_obj, int
> clean_layer)
> >  obj->func->free(eo_obj, obj, obj->private_data);
> >   }
> > if (!was_smart_child) evas_object_release(eo_obj, obj,
> obj->clean_layer);
> > -   if (obj->clip.clipees)
> > - eina_list_free(obj->clip.clipees);
> > +   EINA_LIST_FREE(obj->clip.clipees, eo_obj2)
> > + {
> > +Evas_Object_Protected_Data *obj2 =
> > +  eo_data_scope_get(eo_obj2, MY_CLASS);
> > +if ((obj2) && (obj2->cur))
> > +  {
> > + EINA_COW_STATE_WRITE_BEGIN(obj2, state_write, cur)
> > +   {
> > +  state_write->clipper = NULL;
> > +   }
> > + EINA_COW_STATE_WRITE_END(obj2, state_write, cur);
> > +  }
> > + }
> > +//   if (obj->clip.clipees)
> > +// obj->clip.clipees = eina_list_free(obj->clip.clipees);
> > obj->clip.cache_clipees_answer =
> eina_list_free(obj->clip.cache_clipees_answer);
> > evas_object_clip_changes_clean(eo_obj);
> > evas_object_event_call

[EGIT] [enlightenment/modules/packagekit] master 02/02: Make translations works

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

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

commit ce300dd079e2069feda8f7c443d446694f640240
Author: davemds 
Date:   Sun Nov 3 15:04:06 2013 +0100

Make translations works
---
 .gitignore   | 50 
 Makefile.am  | 10 +++
 configure.ac | 16 +--
 po/Makevars  | 41 ++
 po/it.po | 88 
 src/e_mod_main.c |  6 +++-
 6 files changed, 197 insertions(+), 14 deletions(-)

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000..29251f8
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,50 @@
+po/*.gmo
+po/Makefile
+po/Makefile.in
+po/Makefile.in.in
+po/Makevars.template
+po/POTFILES
+po/Rules-quot
+po/boldquot.sed
+po/en@boldquot.header
+po/en@quot.header
+po/insert-header.sin
+po/*.pot
+po/quot.sed
+po/remove-potcdate.sed
+po/remove-potcdate.sin
+po/stamp-po
+m4/codeset.m4
+m4/gettext.m4
+m4/glibc21.m4
+m4/iconv.m4
+m4/intdiv0.m4
+m4/intmax.m4
+m4/inttypes-pri.m4
+m4/inttypes.m4
+m4/inttypes_h.m4
+m4/isc-posix.m4
+m4/lcmessage.m4
+m4/lib-ld.m4
+m4/lib-link.m4
+m4/lib-prefix.m4
+m4/libtool.m4
+m4/longdouble.m4
+m4/longlong.m4
+m4/ltoptions.m4
+m4/ltsugar.m4
+m4/ltversion.m4
+m4/lt~obsolete.m4
+m4/nls.m4
+m4/po.m4
+m4/printf-posix.m4
+m4/progtest.m4
+m4/signed.m4
+m4/size_max.m4
+m4/stdint_h.m4
+m4/uintmax_t.m4
+m4/ulonglong.m4
+m4/wchar_t.m4
+m4/wint_t.m4
+m4/xsize.m4
+
diff --git a/Makefile.am b/Makefile.am
index 4daa3a3..351b744 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -6,11 +6,11 @@ MAINTAINERCLEANFILES = Makefile.in aclocal.m4 config.guess 
config.h.in \
 
 SUBDIRS = src
 
-# if HAVE_PO
+if HAVE_PO
 
-# SUBDIRS += po
+SUBDIRS += po
 
-# endif
+endif
 
 EDJE_FLAGS = -v \
  -id $(top_srcdir)/images
@@ -19,14 +19,14 @@ filesdir = $(datadir)
 files_DATA = module.desktop e-module-packagekit.edj
 
 EXTRA_DIST = module.desktop.in \
- e_modules-packagekit.spec \
+ e_modules-packagekit.spec.in \
  e-module-packagekit.edc
 
 %.edj:  %.edc
$(EDJE_CC) $(EDJE_FLAGS) $< $@
 
 clean-local:
-rm -rf e-module-packagekit.edj module.desktop e_modules-scale.spec *~
+rm -rf e-module-packagekit.edj module.desktop 
e_modules-packagekit.spec *~
 
 uninstall:
 rm -rf $(DESTDIR)$(datadir)
diff --git a/configure.ac b/configure.ac
index aae67e0..3b156f7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -11,8 +11,8 @@ AC_CANONICAL_HOST
 AC_ISC_POSIX
 
 AM_INIT_AUTOMAKE(1.8)
-AC_CONFIG_HEADERS(config.h)
 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
+AC_CONFIG_HEADERS(config.h)
 
 AC_PROG_CC
 AC_HEADER_STDC
@@ -27,13 +27,13 @@ m4_ifdef([AM_GNU_GETTEXT_VERSION], [
 AM_GNU_GETTEXT_VERSION([0.14])
 ])
 
-# m4_ifdef([AM_GNU_GETTEXT], [
-# AM_GNU_GETTEXT([external])
-# po_makefile_in=po/Makefile.in
-# AM_CONDITIONAL([HAVE_PO], [true])
-# ],[
-# AM_CONDITIONAL([HAVE_PO], [false])
-# ])
+m4_ifdef([AM_GNU_GETTEXT], [
+AM_GNU_GETTEXT([external])
+po_makefile_in=po/Makefile.in
+AM_CONDITIONAL([HAVE_PO], [true])
+],[
+AM_CONDITIONAL([HAVE_PO], [false])
+])
 AC_SUBST(LTLIBINTL)
 
 PKG_CHECK_MODULES(E, [enlightenment])
diff --git a/po/Makevars b/po/Makevars
new file mode 100644
index 000..9275c25
--- /dev/null
+++ b/po/Makevars
@@ -0,0 +1,41 @@
+# Makefile variables for PO directory in any package using GNU gettext.
+
+# Usually the message domain is the same as the package name.
+DOMAIN = $(PACKAGE)
+
+# These two variables depend on the location of this directory.
+subdir = po
+top_builddir = ..
+
+# These options get passed to xgettext.
+XGETTEXT_OPTIONS = --keyword=N_ --keyword=D_ --from-code=UTF-8 --foreign-user
+
+# This is the copyright holder that gets inserted into the header of the
+# $(DOMAIN).pot file.  Set this to the copyright holder of the surrounding
+# package.  (Note that the msgstr strings, extracted from the package's
+# sources, belong to the copyright holder of the package.)  Translators are
+# expected to transfer the copyright for their translations to this person
+# or entity, or to disclaim their copyright.  The empty string stands for
+# the public domain; in this case the translators are expected to disclaim
+# their copyright.
+COPYRIGHT_HOLDER = Enlightenment development team
+
+# This is the email address or URL to which the translators shall report
+# bugs in the untranslated strings:
+# - Strings which are not entire sentences, see the maintainer guidelines
+#   in the GNU gettext documentation, section 'Preparing Strings'.
+# - Strings which use unclear terms or require additional context to be
+#   understood.
+# - Strings which make invalid assumptions about notation of date, time or
+#   money.
+# - Pluralisation problems.
+# - Incorrect English spelling.
+# - Incorrect formatting.
+# It can be your email address, or a mailing list address where translators

Re: [E-devel] [EGIT] [core/efl] master 03/03: evas - clip shutdown fix to avoid invalid mem accesses

2013-11-03 Thread Cedric BAIL
Cedric Bail
On Nov 3, 2013 9:22 PM, "Carsten Haitzler"  wrote:
>
> raster pushed a commit to branch master.
>
>
http://git.enlightenment.org/core/efl.git/commit/?id=eb6af1f1ff7ee069eff8bab13c0eed5010ef5660
>
> commit eb6af1f1ff7ee069eff8bab13c0eed5010ef5660
> Author: Carsten Haitzler (Rasterman) 
> Date:   Sun Nov 3 21:43:11 2013 +0900
>
> evas - clip shutdown fix to avoid invalid mem accesses
>
> many valgrind complaints on e shutdown are there regarding accessing
> cow sections, lists and object elements during shutdown. this plugs
> theses little holes to avoid the invalid accesses and thus avoids
> potential crashes.

Just thinking here, but we could make cow free set the pointer to the
read-only always valid object? That should keep the code cleaner and less
error prone, I think.

> ---
>  src/lib/evas/canvas/evas_clip.c| 20 
>  src/lib/evas/canvas/evas_object_main.c | 25 ++---
>  2 files changed, 34 insertions(+), 11 deletions(-)
>
> diff --git a/src/lib/evas/canvas/evas_clip.c
b/src/lib/evas/canvas/evas_clip.c
> index 76cddc0..5dfbc48 100644
> --- a/src/lib/evas/canvas/evas_clip.c
> +++ b/src/lib/evas/canvas/evas_clip.c
> @@ -369,6 +369,7 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list
EINA_UNUSED)
>  {
> Evas_Object_Protected_Data *obj = _pd;
>
> +   if (!obj->cur) return;
> if (!obj->cur->clipper) return;
>
> obj->clip.cache_clipees_answer =
eina_list_free(obj->clip.cache_clipees_answer);
> @@ -386,7 +387,7 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list
EINA_UNUSED)
>{
>   EINA_COW_STATE_WRITE_BEGIN(obj->cur->clipper, state_write,
cur)
> {
> -  state_write->have_clipees = 0;
> +  if (state_write) state_write->have_clipees = 0;
> }
>   EINA_COW_STATE_WRITE_END(obj->cur->clipper, state_write,
cur);
>
> @@ -417,14 +418,17 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list
EINA_UNUSED)
> if ((!obj->is_smart) &&
> (!((obj->map->cur.map) && (obj->map->cur.usemap
>   {
> -if (evas_object_is_in_output_rect(eo_obj, obj,
> +if (obj->cur)
> +  {
> + if (evas_object_is_in_output_rect(eo_obj, obj,
> +
obj->layer->evas->pointer.x,
> +
obj->layer->evas->pointer.y, 1, 1))
> +   evas_event_feed_mouse_move(obj->layer->evas->evas,
>obj->layer->evas->pointer.x,
> -  obj->layer->evas->pointer.y,
1, 1))
> -  evas_event_feed_mouse_move(obj->layer->evas->evas,
> - obj->layer->evas->pointer.x,
> - obj->layer->evas->pointer.y,
> - obj->layer->evas->last_timestamp,
> - NULL);
> +  obj->layer->evas->pointer.y,
> +
 obj->layer->evas->last_timestamp,
> +  NULL);
> +  }
>   }
> evas_object_clip_across_check(eo_obj, obj);
>  }
> diff --git a/src/lib/evas/canvas/evas_object_main.c
b/src/lib/evas/canvas/evas_object_main.c
> index 27fc7ad..c779f2d 100644
> --- a/src/lib/evas/canvas/evas_object_main.c
> +++ b/src/lib/evas/canvas/evas_object_main.c
> @@ -141,6 +141,7 @@ void
>  evas_object_free(Evas_Object *eo_obj, int clean_layer)
>  {
> Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, MY_CLASS);
> +   Evas_Object *eo_obj2;
> if (!obj) return;
> obj->clean_layer = clean_layer;
>
> @@ -171,8 +172,21 @@ evas_object_free(Evas_Object *eo_obj, int
clean_layer)
>  obj->func->free(eo_obj, obj, obj->private_data);
>   }
> if (!was_smart_child) evas_object_release(eo_obj, obj,
obj->clean_layer);
> -   if (obj->clip.clipees)
> - eina_list_free(obj->clip.clipees);
> +   EINA_LIST_FREE(obj->clip.clipees, eo_obj2)
> + {
> +Evas_Object_Protected_Data *obj2 =
> +  eo_data_scope_get(eo_obj2, MY_CLASS);
> +if ((obj2) && (obj2->cur))
> +  {
> + EINA_COW_STATE_WRITE_BEGIN(obj2, state_write, cur)
> +   {
> +  state_write->clipper = NULL;
> +   }
> + EINA_COW_STATE_WRITE_END(obj2, state_write, cur);
> +  }
> + }
> +//   if (obj->clip.clipees)
> +// obj->clip.clipees = eina_list_free(obj->clip.clipees);
> obj->clip.cache_clipees_answer =
eina_list_free(obj->clip.cache_clipees_answer);
> evas_object_clip_changes_clean(eo_obj);
> evas_object_event_callback_all_del(eo_obj);
> @@ -188,12 +202,17 @@ evas_object_free(Evas_Object *eo_obj, int
clean_layer)
>   }
> if (obj->size_hints)
>   {
> -   EVAS_MEMPOOL_FREE(_mp_sh, obj->size_hints);
> +EVAS_MEMPOOL_FREE(_mp_sh, obj->size_hints);
> +obj->size_hints = NULL;
>   }
> eina_cow_free(evas_object_proxy_cow, obj->proxy);
> e

Re: [E-devel] [EGIT] [core/elementary] master 01/01: genlist, gengrid: Add ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL

2013-11-03 Thread Daniel Juyung Seo
I think this needs to be changed to use "multiple select mode" not a
"normal select mode"

1. Multiple select mode is not relevant to a normal select mode and they
could be used at the same time.
ex) ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL &
ELM_OBJECT_SELECT_MODE_DEFAULT/ALWAYS/NONE/DISPLAY_ONLY

2. This is valid only when multi select mode is on.

3. Elm_Object_Select_Mode can be set differently for each item. But multi
select mode is not.

Daniel Juyung Seo (SeoZ)



On Sat, Nov 2, 2013 at 8:54 PM, Ryuan Choi  wrote:

> raster pushed a commit to branch master.
>
>
> http://git.enlightenment.org/core/elementary.git/commit/?id=5618d0c57f58bad9898e4f78e1cceb1e8d51d9c3
>
> commit 5618d0c57f58bad9898e4f78e1cceb1e8d51d9c3
> Author: Ryuan Choi 
> Date:   Sat Nov 2 20:50:59 2013 +0900
>
> genlist, gengrid: Add ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL
>
> Summary:
> Some applications like file viewer allow multiple selection only with
> Control key was pressed.
>
> Reviewers: seoz, raster
>
> Reviewed By: raster
>
> Differential Revision: https://phab.enlightenment.org/D251
>
> Conflicts:
> ChangeLog
> NEWS
> ---
>  ChangeLog| 6 ++
>  NEWS | 1 +
>  src/lib/elm_general.h| 1 +
>  src/lib/elm_gengrid.c| 4 +++-
>  src/lib/elm_gengrid_legacy.h | 4 
>  src/lib/elm_genlist.c| 4 +++-
>  src/lib/elm_genlist_legacy.h | 4 
>  7 files changed, 22 insertions(+), 2 deletions(-)
>
> diff --git a/ChangeLog b/ChangeLog
> index 0060f0a..66e4536 100644
> --- a/ChangeLog
> +++ b/ChangeLog
> @@ -1735,3 +1735,9 @@
>  2013-10-30  Shilpa Onkar Singh
>
>  * slider: Added elm_slider_step_get(), elm_slider_step_set().
> +
> +2013-10-02  Ryuan Choi (ryuan)
> +
> +* genlist , gengrid: Add
> ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL.
> +It disallow multiple selection when clicked without control
> pressed although
> +multiple selection is enabled.
> diff --git a/NEWS b/NEWS
> index 9342851..4ba58bf 100644
> --- a/NEWS
> +++ b/NEWS
> @@ -101,6 +101,7 @@ Additions:
> * Add support for "clicked" callback on Return/space/KP_Enter key
> press for image.
> * Add "virtualkeypad,size,changed" callback on virtualkeypad min size
> change for conformant.
> * Add elm_slider_step_get(), elm_slider_step_set() for slider.
> +   * Add ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL select mode for
> genlist/gengrid.
>
>  Improvements:
>
> diff --git a/src/lib/elm_general.h b/src/lib/elm_general.h
> index 2ad5d2d..9f5e140 100644
> --- a/src/lib/elm_general.h
> +++ b/src/lib/elm_general.h
> @@ -126,6 +126,7 @@ typedef enum
> ELM_OBJECT_SELECT_MODE_ALWAYS, /**< always select mode */
> ELM_OBJECT_SELECT_MODE_NONE, /**< no select mode */
> ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY, /**< no select mode with no
> finger size rule*/
> +   ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL, /**< disallow mutiple
> selection when clicked without control key pressed */
> ELM_OBJECT_SELECT_MODE_MAX
>  } Elm_Object_Select_Mode;
>
> diff --git a/src/lib/elm_gengrid.c b/src/lib/elm_gengrid.c
> index b315bf5..883d4fb 100644
> --- a/src/lib/elm_gengrid.c
> +++ b/src/lib/elm_gengrid.c
> @@ -596,7 +596,9 @@ _item_mouse_up_cb(void *data,
>_elm_gengrid_item_unrealize(it, EINA_FALSE);
>   }
> if (elm_widget_item_disabled_get(it) || (dragged)) return;
> -   if (sd->multi)
> +   if (sd->multi &&
> +   ((sd->select_mode != ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL)
> ||
> +(evas_key_modifier_is_set(ev->modifiers, "Control"
>   {
>  if (!it->selected)
>{
> diff --git a/src/lib/elm_gengrid_legacy.h b/src/lib/elm_gengrid_legacy.h
> index f55edc0..0f09c70 100644
> --- a/src/lib/elm_gengrid_legacy.h
> +++ b/src/lib/elm_gengrid_legacy.h
> @@ -799,8 +799,12 @@ EAPI Eina_Bool
> elm_gengrid_filled_get(const Evas_Object *obj
>   * - ELM_OBJECT_SELECT_MODE_NONE : This will turn off the ability to
> select items
>   *  entirely and they will neither appear selected nor call selected
>   *  callback functions.
> + * - ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL : Only one item will be
> selected
> + *  although multi-selection is enabled, if clicked without pressing
> control
> + *  key. This mode is only available with multi-selection.
>   *
>   * @see elm_gengrid_select_mode_get()
> + * @see elm_gengrid_multi_select_set()
>   *
>   * @ingroup Gengrid
>   */
> diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
> index ff3c8b0..cdb27be 100644
> --- a/src/lib/elm_genlist.c
> +++ b/src/lib/elm_genlist.c
> @@ -4220,7 +4220,9 @@ _item_mouse_up_cb(void *data,
>   return;
>
> if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) return;
> -   if (sd->multi)
> +   if (sd->multi &&
> +   ((sd->select_mode != ELM_OBJECT_MULTIPLE_SELECT_MODE_WITH_CONTROL)
> ||
> +(evas_key_modifier_is_set(ev->modifiers, "Control"
> 

Re: [E-devel] [e-users] EFL + Elementary 1.8

2013-11-03 Thread The Rasterman
On Sun, 3 Nov 2013 22:42:31 +0900 Daniel Juyung Seo  said:

> On Fri, Nov 1, 2013 at 4:32 PM, Carsten Haitzler wrote:
> 
> > I've updated our release page to reflect current timelines:
> >
> > https://phab.enlightenment.org/w/efl_and_elementary_1_8/
> >
> > So expect alphas next week.
> >
> 
> So we have an hour and 16 minutes until the feature freeze.
> No more delay?
> How is it going?
> 
> Daniel Juyung Seo (SeoZ)

well as of right now...

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

40mins left. if the feature is not in by 40 mins from now... then it'll have to
wait until efl/elm 1.9 (about 3months from now). tomorrow i will check in on
doing an alpha-1 - as long as i have the time, and for the next month it's
bug-fix land and otherwise any polishing of things for release (docs, readmes,
changelogs, news). ther's a backlog of patch review requests - many of them are
bugfixes (i went over them yesterday). there is also a large set of actual bug
reports to go over - some may have fixes already attached. that's the job for
the next 4 weeks. clear out those (as best possible) and any other bugs not
aleady filed there that we see/know of. run everything possible and test - use
valgrind to find issues... do our best to make efl 1.8.0 as solid as we can.
but never fear 1.8.1 can come with more fixes and 1.9.0 will come about 4
months from now. :)

> > --
> > - 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=65839951&iu=/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=65839951&iu=/4140/ostg.clktrk
> ___
> enlightenment-users mailing list
> enlightenment-us...@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-users
> 


-- 
- 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=65839951&iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] EFL + Elementary 1.8

2013-11-03 Thread Daniel Juyung Seo
On Fri, Nov 1, 2013 at 4:32 PM, Carsten Haitzler wrote:

> I've updated our release page to reflect current timelines:
>
> https://phab.enlightenment.org/w/efl_and_elementary_1_8/
>
> So expect alphas next week.
>

So we have an hour and 16 minutes until the feature freeze.
No more delay?
How is it going?

Daniel Juyung Seo (SeoZ)


>
> --
> - 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=65839951&iu=/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=65839951&iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[EGIT] [apps/espionage] master 02/03: Espionage: gitignore++ and make setup.py executable

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

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

commit b155b699f16cc5e982e7bcca95e9a73c980966a7
Author: davemds 
Date:   Sat Nov 2 18:30:09 2013 +0100

Espionage: gitignore++ and make setup.py executable
---
 .gitignore | 1 +
 setup.py   | 0
 2 files changed, 1 insertion(+)

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000..567609b
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+build/
diff --git a/setup.py b/setup.py
old mode 100644
new mode 100755

-- 




[EGIT] [apps/espionage] master 03/03: Espionage: improved toolbar with checkbox for options

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

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

commit eeb4ae57529b8db8f1baaf29a2f8eae2977013f1
Author: davemds 
Date:   Sat Nov 2 19:58:47 2013 +0100

Espionage: improved toolbar with checkbox for options
---
 espionage/espionage.py | 94 ++
 1 file changed, 64 insertions(+), 30 deletions(-)

diff --git a/espionage/espionage.py b/espionage/espionage.py
index 8c955e4..545d682 100644
--- a/espionage/espionage.py
+++ b/espionage/espionage.py
@@ -25,6 +25,7 @@ from xml.etree import ElementTree
 
 from efl import evas
 from efl import elementary as elm
+from efl.evas import EVAS_HINT_EXPAND, EVAS_HINT_FILL
 from efl.elementary.window import StandardWindow
 from efl.elementary.background import Background
 from efl.elementary.box import Box
@@ -38,6 +39,7 @@ from efl.elementary.label import Label
 from efl.elementary.panes import Panes
 from efl.elementary.popup import Popup
 from efl.elementary.separator import Separator
+from efl.elementary.table import Table
 from efl.elementary.genlist import Genlist, GenlistItem, GenlistItemClass
 from efl.dbus_mainloop import DBusEcoreMainLoop
 
@@ -45,7 +47,8 @@ from efl.dbus_mainloop import DBusEcoreMainLoop
 class Options(object):
 """class to contain application options"""
 def __init__(self):
-self.hide_introspect_stuff = False
+self.show_introspect_stuff = False
+self.show_private_stuff = False
 self.pretty_output = True
 
 
@@ -274,10 +277,11 @@ class NamesList(Genlist):
 self.public_group = self.item_append(self.itc_g, "Public Services",
flags=elm.ELM_GENLIST_ITEM_GROUP)
 
self.public_group.select_mode_set(elm.ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY)
-
-self.private_group = self.item_append(self.itc_g, "Private Services",
-   flags=elm.ELM_GENLIST_ITEM_GROUP)
-
self.private_group.select_mode_set(elm.ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY)
+
+if options.show_private_stuff:
+self.private_group = self.item_append(self.itc_g, "Private 
Services",
+ flags=elm.ELM_GENLIST_ITEM_GROUP)
+
self.private_group.select_mode_set(elm.ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY)
 
 # populate the genlist
 self.populate()
@@ -295,7 +299,8 @@ class NamesList(Genlist):
 
 def clear(self):
 self.public_group.subitems_clear()
-self.private_group.subitems_clear()
+if options.show_private_stuff:
+self.private_group.subitems_clear()
 
 def item_selected_cb(self, gl, item):
 name = item.data
@@ -303,13 +308,13 @@ class NamesList(Genlist):
 
 def sort_cb(self, it1, it2):
 return 1 if it1.data.lower() < it2.data.lower() else -1
-
 
 def service_add(self, name):
 # print("service_add('%s')" % name)
 if name.startswith(":"):
-self.item_sorted_insert(self.itc, name, self.sort_cb,
-self.private_group, 0, None)
+if options.show_private_stuff:
+self.item_sorted_insert(self.itc, name, self.sort_cb,
+self.private_group, 0, None)
 else:
 self.item_sorted_insert(self.itc, name, self.sort_cb,
 self.public_group, 0, None)
@@ -364,6 +369,7 @@ class DetailList(Genlist):
 def __init__(self, parent):
 Genlist.__init__(self, parent)
 self._parent = parent
+self.service_name = None
 self.itc = NodeItemClass()
 self.itc_g = ObjectItemClass()
 self.callback_expand_request_add(self.expand_request_cb)
@@ -371,10 +377,9 @@ class DetailList(Genlist):
 self.callback_contract_request_add(self.contract_request_cb)
 self.callback_contracted_add(self.contracted_cb)
 self.callback_clicked_double_add(self.double_click_cb)
-
-
+
 def populate(self, name):
-print("populate: %s" % name)
+self.service_name = name
 self.clear()
 
 # objects
@@ -385,7 +390,7 @@ class DetailList(Genlist):
 
 # interfaces
 for iface in obj.interfaces:
-if options.hide_introspect_stuff and \
+if not options.show_introspect_stuff and \
iface.name.startswith("org.freedesktop.DBus"):
   continue
 iface_item = self.item_append(self.itc, iface,
@@ -457,8 +462,8 @@ class MethodRunner(Popup):
 en.scrollable = True
 en.single_line = True
 en.entry = ''
-en.size_hint_weight = evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND
-en.size_hint_align = evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL
+en.size_hint_weight = EVAS_HINT_EXPAND, EVAS_HIN

Re: [E-devel] Extend Evas pointer struct to keep list of grabbed objects?

2013-11-03 Thread The Rasterman
On Sun, 03 Nov 2013 09:56:45 + Thomas Strobel  said:

> On Sun, 2013-11-03 at 14:49 +0900, Carsten Haitzler wrote:
> 
> > On Sat, 02 Nov 2013 08:55:50 + Thomas Strobel  said:
> > 
> > > Hi everyone,
> > > 
> > > I wanted to extend Evas' pointer for a way to selectively grab certain
> > > events, while repeating others. After looking at the event system for a
> > > while, I'm currently thinking that the cleanest way would probably be to
> > > extend Evas' pointer struct for a list which keeps track of all grabbed
> > > object, and to use the current pointer.objects.in to just account for
> > > objects where the pointer is "pointing" into.
> > > 
> > > Changing Evas on such a deep level could trigger a lot of side effects,
> > > and so I wanted to ask you if you had any idea how to implement a
> > > selective event grabbing?
> > 
> > yes. it will. which means the current behavior has to stay and NEW behavior
> > has to be explicitly requested. that is possible. (eg request a new pointer
> > grab mode).
> > 
> > now the use i can see is actually multitouch and./or pen support WHEN you
> > want pen ANd mouse AND touch all to be independent and not linked (touch
> > doesnt affect mouse - pen does not either etc.). and at least for the case
> > of multi touch where you may want each touch point to have its own grab
> > "pointer.in" list thats separate of the primary (first) touch/mouse.
> 
> Or, Multi-pointer X, but that's not quite what I'm after. I am looking
> for a way to grab certain events from one pointer with an object, let's
> say DOWN/UP, let the object follow others, e.g. MOVE, but still forward
> the non-grabbed events back into the object hierarchy.

this seems useufl indeed for multi-pointer too.

> > > A selective event grabbing would be very handy to implement a drag and
> > > drop system for Evas objects.
> > > 
> > > Many thanks in advance!
> > 
> > what about the current event system disallows for implementing dnd? :)
> 
> To me it seems that currently an object needs to grab the mouse pointer
> to get e.g. MOVE updates and UP events. But this means that other
> objects can't receive IN/OUT events anymore, and so they can't detect
> whether the dragging pointer went in or not. Or, is there a smart way
> around?

if you move the object WITH the mouse .. this object follows. that means then
the pointer ends up IN the object u drag all the time... not in the target drop
object. this is the case in xdnd in x11 too... the solution is for whoever is
handling the drag to query the object(s) UNDER the drag point and then send a
SPECIAL "someone is trying to drag IN to you.. what do you want to do?"...
similar with drop (mouse-up). :)


-- 
- 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=65839951&iu=/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: elm access - if we disable apis then disable the tests too - unbreak build

2013-11-03 Thread The Rasterman
On Sun, 3 Nov 2013 17:08:27 +0900 Daniel Juyung Seo  said:

> Good catch.
> Thanks for the fix.
> I tested that after removing elm_access header from
> /usr/local/include/elementary-1, how did it work for me? :(
> 
> Daniel Juyung Seo (SeoZ)

dunno... but i've had a busy weekend with patches, reviews, and fixing
things. :)

> 
> On Sat, Nov 2, 2013 at 10:48 AM, Carsten Haitzler wrote:
> 
> > raster pushed a commit to branch master.
> >
> >
> > http://git.enlightenment.org/core/elementary.git/commit/?id=d8b3cdb28f5334f9429959109af4b960bf414097
> >
> > commit d8b3cdb28f5334f9429959109af4b960bf414097
> > Author: Carsten Haitzler (Rasterman) 
> > Date:   Sat Nov 2 10:48:12 2013 +0900
> >
> > elm access - if we disable apis then disable the tests too - unbreak
> > build
> > ---
> >  src/bin/test.c| 14 +++---
> >  src/bin/test_access.c |  3 +++
> >  2 files changed, 10 insertions(+), 7 deletions(-)
> >
> > diff --git a/src/bin/test.c b/src/bin/test.c
> > index 963f386..4a8f472 100755
> > --- a/src/bin/test.c
> > +++ b/src/bin/test.c
> > @@ -10,9 +10,9 @@
> >  int _log_domain = -1;
> >
> >  /* all tests prototypes */
> > -void test_access(void *data, Evas_Object *obj, void *event_info);
> > -void test_access2(void *data, Evas_Object *obj, void *event_info);
> > -void test_access3(void *data, Evas_Object *obj, void *event_info);
> > +//void test_access(void *data, Evas_Object *obj, void *event_info);
> > +//void test_access2(void *data, Evas_Object *obj, void *event_info);
> > +//void test_access3(void *data, Evas_Object *obj, void *event_info);
> >  void test_bg_plain(void *data, Evas_Object *obj, void *event_info);
> >  void test_bg_image(void *data, Evas_Object *obj, void *event_info);
> >  void test_bg_options(void *data, Evas_Object *obj, void *event_info);
> > @@ -458,7 +458,7 @@ my_win_main(const char *autorun, Eina_Bool
> > test_win_only)
> > evas_object_show(lb);
> >
> > /* This label will not be read out */
> > -   elm_access_object_unregister(lb);
> > +//   elm_access_object_unregister(lb);
> >
> > tg = elm_check_add(win);
> > elm_object_style_set(tg, "toggle");
> > @@ -802,9 +802,9 @@ add_tests:
> > ADD_TEST(NULL, "Miscellaneous", "Icon Desktops", test_icon_desktops);
> > ADD_TEST(NULL, "Miscellaneous", "Floating Objects", test_floating);
> > ADD_TEST(NULL, "Miscellaneous", "Configuration", test_config);
> > -   ADD_TEST(NULL, "Miscellaneous", "Accessibility", test_access);
> > -   ADD_TEST(NULL, "Miscellaneous", "Accessibility2", test_access2);
> > -   ADD_TEST(NULL, "Miscellaneous", "Accessibility3", test_access3);
> > +//   ADD_TEST(NULL, "Miscellaneous", "Accessibility", test_access);
> > +//   ADD_TEST(NULL, "Miscellaneous", "Accessibility2", test_access2);
> > +//   ADD_TEST(NULL, "Miscellaneous", "Accessibility3", test_access3);
> >
> > //--//
> > ADD_TEST(NULL, "Application client/server", "Task switcher",
> > test_task_switcher);
> > diff --git a/src/bin/test_access.c b/src/bin/test_access.c
> > index 82c44cb..b0753ad 100644
> > --- a/src/bin/test_access.c
> > +++ b/src/bin/test_access.c
> > @@ -4,6 +4,7 @@
> >  #include 
> >  #ifndef ELM_LIB_QUICKLAUNCH
> >
> > +#if 0
> >  static void
> >  _cleanup_cb(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *obj
> > EINA_UNUSED, void *event_info EINA_UNUSED)
> >  {
> > @@ -401,3 +402,5 @@ test_access3(void *data EINA_UNUSED, Evas_Object *obj
> > EINA_UNUSED, void *event_i
> > evas_object_show(win);
> >  }
> >  #endif
> > +
> > +#endif
> >
> > --
> >
> >
> >
> --
> 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=65839951&iu=/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


--
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=65839951&iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


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

2013-11-03 Thread The Rasterman
On Sun, 3 Nov 2013 07:46:38 -0500 Robert Heller  said:

> At Sun, 3 Nov 2013 14:16:58 +0900 Carsten Haitzler (The Rasterman)
>  wrote:
> 
> > 
> > On Sat, 2 Nov 2013 11:03:28 -0400 Robert Heller  said:
> > 
> > > At Sat, 2 Nov 2013 23:36:23 +0900 Carsten Haitzler (The Rasterman)
> > >  wrote:
> > > 
> > > > 
> > > > On Sat, 2 Nov 2013 09:57:49 -0400 Robert Heller 
> > > > said:
> > > > 
> > > > > At Sat, 2 Nov 2013 20:58:03 +0900 Carsten Haitzler (The Rasterman)
> > > > >  wrote:
> > > > > 
> > > > > > 
> > > > > > On Sat, 2 Nov 2013 07:48:23 -0400 Robert Heller
> > > > > >  said:
> > > > > > 
> > > > > > > At Sat, 2 Nov 2013 18:22:57 +0900 Enlightenment developer list
> > > > > > >  wrote:
> > > > > > > 
> > > > > > > > 
> > > > > > > > On Sat, 02 Nov 2013 02:17:32 -0400 Jose Gonzalez
> > > > > > > >  said:
> > > > > > > > 
> > > > > > > > > Carsten wrote:
> > > > > > > > > 
> > > > > > > > > > On Fri, 01 Nov 2013 05:57:59 -0400 Jose Gonzalez
> > > > > > > > > >  said:
> > > > > > > > > >
> > > > > > > > > >   
> > > > > > > > > >> Carsten wrote:
> > > > > > > > > >>
> > > > > > > > > >> 
> > > > > > > > > >>> On Fri, 1 Nov 2013 00:40:42 + Andrew F
> > > > > > > > > >>>  said:
> > > > > > > > > >>>
> > > > > > > > > >>>   
> > > > > > > > > >>>   
> > > > > > > > >  Hey guys, can someone point me to documentation that
> > > > > > > > >  explains what a swallow is?
> > > > > > > > >  and how its used.
> > > > > > > > >  thanks
> > > > > > > > >  
> > > > > > > > >  
> > > > > > > > > >>> swallow the name is something i adopted from fvwm2 days -
> > > > > > > > > >>> it had swallow stuff... and swallows in edje are the same
> > > > > > > > > >>> thing basically - just with objects.
> > > > > > > > > >>>
> > > > > > > > > >>> didn't you see my link to the swallow docs?
> > > > > > > > > >>>
> > > > > > > > > >>> https://build.enlightenment.org/job/nightly_efl_gcc_x86_64/lastSuccessfulBuild/artifact/doc/html/group__Edje__Part__Swallow.html#ga97d1419f89bff20ba971e47c78641271
> > > > > > > > > >>>
> > > > > > > > > >>> its there in the efl online docs (thats the latest auto
> > > > > > > > > >>> nightly doc build).
> > > > > > > > > >>>
> > > > > > > > > >>>   
> > > > > > > > > >>>   
> > > > > > > > > >> Good lord man, yes that's a nice bit of history but do
> > > > > > > > > >> you now want him to look up fwm2's docs as well!  :)
> > > > > > > > > >> Also, I can't even access that link you gave... And
> > > > > > > > > >> where is the old pdf that had edje documentation (the edje
> > > > > > > > > >> cookbook or something)?
> > > > > > > > > >>
> > > > > > > > > >> Anyway, why not give a simple explanation of the thing
> > > > > > > > > >> rather than beat around the bush... Something short but to
> > > > > > > > > >> the heart of the matter, like say:
> > > > > > > > > >> 
> > > > > > > > > >
> > > > > > > > > > because of the comments that "efl has no docs so its
> > > > > > > > > > impossible to use - this is undocumented anywhere". give a
> > > > > > > > > > man a fish - you feed him for a day. teach a man to fish
> > > > > > > > > > and you feed him for a lifetime. i'm pointing to the docs
> > > > > > > > > > so he can keep looking around and refer to them for more
> > > > > > > > > > questions etc.
> > > > > > > > > >
> > > > > > > > > >   
> > > > > > > > > 
> > > > > > > > > That works both ways. People who ask questions aren't
> > > > > > > > > necessarily idiots and maybe efl devs can benefit from a bit
> > > > > > > > > more practice in directly and concisely answering their
> > > > > > > > > questions - that way not only do they address the particular
> > > > > > > > > issue at hand but also maybe find it easier to write clear
> > > > > > > > > documentation as they go along writing code and even
> > > > > > > > > then, no single wording will ever be clear to everyone.
> > > > > > > > > Remember another cliche: If a thing is truly clear then no
> > > > > > > > > explanation is ever needed. And if it's not, then it's worth
> > > > > > > > > explaining again.
> > > > > > > > 
> > > > > > > > given this thread... it appears the original poster/question
> > > > > > > > never even found yhe docs hat are there at all, so pointing to
> > > > > > > > them is the firs port of call imho. if THEY do not suffice -
> > > > > > > > then that is a different matter
> > > > > > > 
> > > > > > > 
> > > > > > > The docs did not suffice.  The explaination below is more than
> > > > > > > anything I founf in the docs.
> > > > > > 
> > > > > > but we never even got to that point until now - the docs did tell
> > > > > > you what a swallow is... that the parent takes control of geometry
> > > > > > etc. that api says that. :)
> > > > > 
> > > > > The only thing in the PDF doc were a couple of *examples* and no real 
> > > > > explaination of what it all *means*.  The examples alone is not enough
> > > > > (for me).  There wasn't any API docs in

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

2013-11-03 Thread Robert Heller
At Sun, 3 Nov 2013 14:16:58 +0900 Carsten Haitzler (The Rasterman) 
 wrote:

> 
> On Sat, 2 Nov 2013 11:03:28 -0400 Robert Heller  said:
> 
> > At Sat, 2 Nov 2013 23:36:23 +0900 Carsten Haitzler (The Rasterman)
> >  wrote:
> > 
> > > 
> > > On Sat, 2 Nov 2013 09:57:49 -0400 Robert Heller  
> > > said:
> > > 
> > > > At Sat, 2 Nov 2013 20:58:03 +0900 Carsten Haitzler (The Rasterman)
> > > >  wrote:
> > > > 
> > > > > 
> > > > > On Sat, 2 Nov 2013 07:48:23 -0400 Robert Heller 
> > > > > said:
> > > > > 
> > > > > > At Sat, 2 Nov 2013 18:22:57 +0900 Enlightenment developer list
> > > > > >  wrote:
> > > > > > 
> > > > > > > 
> > > > > > > On Sat, 02 Nov 2013 02:17:32 -0400 Jose Gonzalez 
> > > > > > > 
> > > > > > > said:
> > > > > > > 
> > > > > > > > Carsten wrote:
> > > > > > > > 
> > > > > > > > > On Fri, 01 Nov 2013 05:57:59 -0400 Jose Gonzalez
> > > > > > > > >  said:
> > > > > > > > >
> > > > > > > > >   
> > > > > > > > >> Carsten wrote:
> > > > > > > > >>
> > > > > > > > >> 
> > > > > > > > >>> On Fri, 1 Nov 2013 00:40:42 + Andrew F
> > > > > > > > >>>  said:
> > > > > > > > >>>
> > > > > > > > >>>   
> > > > > > > > >>>   
> > > > > > > >  Hey guys, can someone point me to documentation that 
> > > > > > > >  explains
> > > > > > > >  what a swallow is?
> > > > > > > >  and how its used.
> > > > > > > >  thanks
> > > > > > > >  
> > > > > > > >  
> > > > > > > > >>> swallow the name is something i adopted from fvwm2 days - it
> > > > > > > > >>> had swallow stuff... and swallows in edje are the same thing
> > > > > > > > >>> basically - just with objects.
> > > > > > > > >>>
> > > > > > > > >>> didn't you see my link to the swallow docs?
> > > > > > > > >>>
> > > > > > > > >>> https://build.enlightenment.org/job/nightly_efl_gcc_x86_64/lastSuccessfulBuild/artifact/doc/html/group__Edje__Part__Swallow.html#ga97d1419f89bff20ba971e47c78641271
> > > > > > > > >>>
> > > > > > > > >>> its there in the efl online docs (thats the latest auto
> > > > > > > > >>> nightly doc build).
> > > > > > > > >>>
> > > > > > > > >>>   
> > > > > > > > >>>   
> > > > > > > > >> Good lord man, yes that's a nice bit of history but do 
> > > > > > > > >> you
> > > > > > > > >> now want him to look up fwm2's docs as well!  :)
> > > > > > > > >> Also, I can't even access that link you gave... And where
> > > > > > > > >> is the old pdf that had edje documentation (the edje cookbook
> > > > > > > > >> or something)?
> > > > > > > > >>
> > > > > > > > >> Anyway, why not give a simple explanation of the thing
> > > > > > > > >> rather than beat around the bush... Something short but to 
> > > > > > > > >> the
> > > > > > > > >> heart of the matter, like say:
> > > > > > > > >> 
> > > > > > > > >
> > > > > > > > > because of the comments that "efl has no docs so its 
> > > > > > > > > impossible
> > > > > > > > > to use - this is undocumented anywhere". give a man a fish -
> > > > > > > > > you feed him for a day. teach a man to fish and you feed him
> > > > > > > > > for a lifetime. i'm pointing to the docs so he can keep
> > > > > > > > > looking around and refer to them for more questions etc.
> > > > > > > > >
> > > > > > > > >   
> > > > > > > > 
> > > > > > > > That works both ways. People who ask questions aren't
> > > > > > > > necessarily idiots and maybe efl devs can benefit from a bit 
> > > > > > > > more
> > > > > > > > practice in directly and concisely answering their questions -
> > > > > > > > that way not only do they address the particular issue at hand
> > > > > > > > but also maybe find it easier to write clear documentation as
> > > > > > > > they go along writing code and even then, no single wording
> > > > > > > > will ever be clear to everyone. Remember another cliche: If a
> > > > > > > > thing is truly clear then no explanation is ever needed. And if
> > > > > > > > it's not, then it's worth explaining again.
> > > > > > > 
> > > > > > > given this thread... it appears the original poster/question never
> > > > > > > even found yhe docs hat are there at all, so pointing to them is
> > > > > > > the firs port of call imho. if THEY do not suffice - then that is 
> > > > > > > a
> > > > > > > different matter
> > > > > > 
> > > > > > 
> > > > > > The docs did not suffice.  The explaination below is more than
> > > > > > anything I founf in the docs.
> > > > > 
> > > > > but we never even got to that point until now - the docs did tell you
> > > > > what a swallow is... that the parent takes control of geometry etc.
> > > > > that api says that. :)
> > > > 
> > > > The only thing in the PDF doc were a couple of *examples* and no real 
> > > > explaination of what it all *means*.  The examples alone is not enough
> > > > (for me).  There wasn't any API docs in the PDF at all.  I did:
> > > > 
> > > > make doc
> > > > cd doc
> > > > make refman.pdf
> > > > xpdf refman.pdf
> > > > 
> > > > I *expected* some sort of useful explainati

[EGIT] [core/efl] master 01/03: evas - re-fix to use first, last or if item is list head on text recomp

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

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

commit 4eb7b8192533451e216b00f6b32ca4340c035550
Author: Carsten Haitzler (Rasterman) 
Date:   Sun Nov 3 20:33:05 2013 +0900

evas - re-fix to use first, last or if item is list head on text recomp
---
 src/lib/evas/canvas/evas_object_text.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/lib/evas/canvas/evas_object_text.c 
b/src/lib/evas/canvas/evas_object_text.c
index 4739a11..b61e7d0 100644
--- a/src/lib/evas/canvas/evas_object_text.c
+++ b/src/lib/evas/canvas/evas_object_text.c
@@ -169,7 +169,9 @@ _evas_object_text_item_del(Evas_Object_Text *o, 
Evas_Object_Text_Item *it)
else if (o->last_computed.ellipsis_end == it)
  o->last_computed.ellipsis_end = NULL;
 
-   if (EINA_INLIST_GET(it)->last)
+   if ((EINA_INLIST_GET(it)->next) ||
+   (EINA_INLIST_GET(it)->prev) ||
+   (o->items == (EINA_INLIST_GET(it
  o->items = (Evas_Object_Text_Item *)eina_inlist_remove
  (EINA_INLIST_GET(o->items), EINA_INLIST_GET(it));
_evas_object_text_item_clean(it);

-- 




[EGIT] [core/efl] master 03/03: evas - clip shutdown fix to avoid invalid mem accesses

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

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

commit eb6af1f1ff7ee069eff8bab13c0eed5010ef5660
Author: Carsten Haitzler (Rasterman) 
Date:   Sun Nov 3 21:43:11 2013 +0900

evas - clip shutdown fix to avoid invalid mem accesses

many valgrind complaints on e shutdown are there regarding accessing
cow sections, lists and object elements during shutdown. this plugs
theses little holes to avoid the invalid accesses and thus avoids
potential crashes.
---
 src/lib/evas/canvas/evas_clip.c| 20 
 src/lib/evas/canvas/evas_object_main.c | 25 ++---
 2 files changed, 34 insertions(+), 11 deletions(-)

diff --git a/src/lib/evas/canvas/evas_clip.c b/src/lib/evas/canvas/evas_clip.c
index 76cddc0..5dfbc48 100644
--- a/src/lib/evas/canvas/evas_clip.c
+++ b/src/lib/evas/canvas/evas_clip.c
@@ -369,6 +369,7 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list 
EINA_UNUSED)
 {
Evas_Object_Protected_Data *obj = _pd;
 
+   if (!obj->cur) return;
if (!obj->cur->clipper) return;
 
obj->clip.cache_clipees_answer = 
eina_list_free(obj->clip.cache_clipees_answer);
@@ -386,7 +387,7 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list 
EINA_UNUSED)
   {
  EINA_COW_STATE_WRITE_BEGIN(obj->cur->clipper, state_write, cur)
{
-  state_write->have_clipees = 0;
+  if (state_write) state_write->have_clipees = 0;
}
  EINA_COW_STATE_WRITE_END(obj->cur->clipper, state_write, cur);
 
@@ -417,14 +418,17 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list 
EINA_UNUSED)
if ((!obj->is_smart) &&
(!((obj->map->cur.map) && (obj->map->cur.usemap
  {
-if (evas_object_is_in_output_rect(eo_obj, obj,
+if (obj->cur)
+  {
+ if (evas_object_is_in_output_rect(eo_obj, obj,
+   obj->layer->evas->pointer.x,
+   obj->layer->evas->pointer.y, 1, 
1))
+   evas_event_feed_mouse_move(obj->layer->evas->evas,
   obj->layer->evas->pointer.x,
-  obj->layer->evas->pointer.y, 1, 1))
-  evas_event_feed_mouse_move(obj->layer->evas->evas,
- obj->layer->evas->pointer.x,
- obj->layer->evas->pointer.y,
- obj->layer->evas->last_timestamp,
- NULL);
+  obj->layer->evas->pointer.y,
+  obj->layer->evas->last_timestamp,
+  NULL);
+  }
  }
evas_object_clip_across_check(eo_obj, obj);
 }
diff --git a/src/lib/evas/canvas/evas_object_main.c 
b/src/lib/evas/canvas/evas_object_main.c
index 27fc7ad..c779f2d 100644
--- a/src/lib/evas/canvas/evas_object_main.c
+++ b/src/lib/evas/canvas/evas_object_main.c
@@ -141,6 +141,7 @@ void
 evas_object_free(Evas_Object *eo_obj, int clean_layer)
 {
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, MY_CLASS);
+   Evas_Object *eo_obj2;
if (!obj) return;
obj->clean_layer = clean_layer;
 
@@ -171,8 +172,21 @@ evas_object_free(Evas_Object *eo_obj, int clean_layer)
 obj->func->free(eo_obj, obj, obj->private_data);
  }
if (!was_smart_child) evas_object_release(eo_obj, obj, obj->clean_layer);
-   if (obj->clip.clipees)
- eina_list_free(obj->clip.clipees);
+   EINA_LIST_FREE(obj->clip.clipees, eo_obj2)
+ {
+Evas_Object_Protected_Data *obj2 = 
+  eo_data_scope_get(eo_obj2, MY_CLASS);
+if ((obj2) && (obj2->cur))
+  {
+ EINA_COW_STATE_WRITE_BEGIN(obj2, state_write, cur)
+   {
+  state_write->clipper = NULL;
+   }
+ EINA_COW_STATE_WRITE_END(obj2, state_write, cur);
+  }
+ }
+//   if (obj->clip.clipees)
+// obj->clip.clipees = eina_list_free(obj->clip.clipees);
obj->clip.cache_clipees_answer = 
eina_list_free(obj->clip.cache_clipees_answer);
evas_object_clip_changes_clean(eo_obj);
evas_object_event_callback_all_del(eo_obj);
@@ -188,12 +202,17 @@ evas_object_free(Evas_Object *eo_obj, int clean_layer)
  }
if (obj->size_hints)
  {
-   EVAS_MEMPOOL_FREE(_mp_sh, obj->size_hints);
+EVAS_MEMPOOL_FREE(_mp_sh, obj->size_hints);
+obj->size_hints = NULL;
  }
eina_cow_free(evas_object_proxy_cow, obj->proxy);
eina_cow_free(evas_object_map_cow, obj->map);
eina_cow_free(evas_object_state_cow, obj->cur);
eina_cow_free(evas_object_state_cow, obj->prev);
+   obj->cur = NULL;
+   obj->prev = NULL;
+   obj->map = NULL;
+   obj->proxy = NULL;
eo_data_unref(eo_obj, obj->private_data);
obj->privat

[EGIT] [core/efl] master 02/03: eina thread - make note about valgrind complaint that is bogus

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

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

commit 9337af1187451414dfc4d170b603efef9a3cad6a
Author: Carsten Haitzler (Rasterman) 
Date:   Sun Nov 3 20:51:41 2013 +0900

eina thread - make note about valgrind complaint that is bogus
---
 src/lib/eina/eina_thread.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/lib/eina/eina_thread.c b/src/lib/eina/eina_thread.c
index 6f42fcf..b4e07e7 100644
--- a/src/lib/eina/eina_thread.c
+++ b/src/lib/eina/eina_thread.c
@@ -284,6 +284,8 @@ eina_thread_create(Eina_Thread *t,
c->prio = prio;
c->affinity = affinity;
 
+   // valgrind complains c is lost - but it's not - it is handed to the
+   // child thread to be freed when c->func returns in _eina_internal_call().
if (_eina_thread_create(t, affinity, _eina_internal_call, c))
  return EINA_TRUE;
 

-- 




[EGIT] [core/enlightenment] master 01/01: note valgrind wrongness and reduce exe ecit event handling complexity

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

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

commit 1f5abd18866df2b97bc60ee0c639152563d58de8
Author: Carsten Haitzler (Rasterman) 
Date:   Sun Nov 3 21:04:13 2013 +0900

note valgrind wrongness and reduce exe ecit event handling complexity
---
 src/bin/e_intl.c | 9 -
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/src/bin/e_intl.c b/src/bin/e_intl.c
index c060707..d0c879f 100644
--- a/src/bin/e_intl.c
+++ b/src/bin/e_intl.c
@@ -345,6 +345,8 @@ e_intl_input_method_set(const char *imc_path)
 
   if (E_EXE_IS_VALID(imc->e_im_exec))
 {
+   // if you see valgrind complain about memory
+   // definitely lost here... it's wrong.
_e_intl_input_method_exec = 
ecore_exe_run(imc->e_im_exec, NULL);
ecore_exe_tag_set(_e_intl_input_method_exec, 
"E/im_exec");
 
@@ -414,11 +416,8 @@ _e_intl_cb_exit(void *data __UNUSED__, int type 
__UNUSED__, void *event)
 
ev = event;
if (!ev->exe) return ECORE_CALLBACK_PASS_ON;
-
-   if (!(ecore_exe_tag_get(ev->exe) &&
- (!strcmp(ecore_exe_tag_get(ev->exe), "E/im_exec" return 1;
-
-   _e_intl_input_method_exec = NULL;
+   if (ev->exe == _e_intl_input_method_exec)
+ _e_intl_input_method_exec = NULL;
return ECORE_CALLBACK_PASS_ON;
 }
 

-- 




Re: [E-devel] Extend Evas pointer struct to keep list of grabbed objects?

2013-11-03 Thread Thomas Strobel
On Sun, 2013-11-03 at 14:49 +0900, Carsten Haitzler wrote:

> On Sat, 02 Nov 2013 08:55:50 + Thomas Strobel  said:
> 
> > Hi everyone,
> > 
> > I wanted to extend Evas' pointer for a way to selectively grab certain
> > events, while repeating others. After looking at the event system for a
> > while, I'm currently thinking that the cleanest way would probably be to
> > extend Evas' pointer struct for a list which keeps track of all grabbed
> > object, and to use the current pointer.objects.in to just account for
> > objects where the pointer is "pointing" into.
> > 
> > Changing Evas on such a deep level could trigger a lot of side effects,
> > and so I wanted to ask you if you had any idea how to implement a
> > selective event grabbing?
> 
> yes. it will. which means the current behavior has to stay and NEW behavior 
> has
> to be explicitly requested. that is possible. (eg request a new pointer grab
> mode).
> 
> now the use i can see is actually multitouch and./or pen support WHEN you want
> pen ANd mouse AND touch all to be independent and not linked (touch doesnt
> affect mouse - pen does not either etc.). and at least for the case of multi
> touch where you may want each touch point to have its own grab "pointer.in"
> list thats separate of the primary (first) touch/mouse.

Or, Multi-pointer X, but that's not quite what I'm after. I am looking
for a way to grab certain events from one pointer with an object, let's
say DOWN/UP, let the object follow others, e.g. MOVE, but still forward
the non-grabbed events back into the object hierarchy.

> > A selective event grabbing would be very handy to implement a drag and
> > drop system for Evas objects.
> > 
> > Many thanks in advance!
> 
> what about the current event system disallows for implementing dnd? :)

To me it seems that currently an object needs to grab the mouse pointer
to get e.g. MOVE updates and UP events. But this means that other
objects can't receive IN/OUT events anymore, and so they can't detect
whether the dragging pointer went in or not. Or, is there a smart way
around?


Cheers,

  Thomas


--
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=65839951&iu=/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: Documentation: Remove elm.access

2013-11-03 Thread Kai Huuhko
kuuko pushed a commit to branch master.

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

commit 010f03b045e9a693bb683170f47f6189c200e12c
Author: Kai Huuhko 
Date:   Sun Nov 3 06:56:32 2013 +0200

Documentation: Remove elm.access

It will return with EFL 1.9 development cycle.
---
 doc/elementary/elementary.rst| 2 --
 doc/elementary/module-access.rst | 8 
 2 files changed, 10 deletions(-)

diff --git a/doc/elementary/elementary.rst b/doc/elementary/elementary.rst
index 3e2357c..476ebe4 100644
--- a/doc/elementary/elementary.rst
+++ b/doc/elementary/elementary.rst
@@ -99,7 +99,6 @@ Reference
 .. toctree::
:maxdepth: 4
 
-   module-access
module-actionslider
module-background
module-box
@@ -173,7 +172,6 @@ Inheritance diagram
 ---
 
 .. inheritance-diagram::
-efl.elementary.access
 efl.elementary.actionslider
 efl.elementary.background
 efl.elementary.box
diff --git a/doc/elementary/module-access.rst b/doc/elementary/module-access.rst
deleted file mode 100644
index 0d61520..000
--- a/doc/elementary/module-access.rst
+++ /dev/null
@@ -1,8 +0,0 @@
-:mod:`access` Module
-
-
-.. automodule:: efl.elementary.access
-
-.. inheritance-diagram::
-efl.elementary.access
-:parts: 2

-- 




[EGIT] [bindings/python/python-efl] master 02/03: Elementary.progressbar: Style "recording" -> "double"

2013-11-03 Thread Kai Huuhko
kuuko pushed a commit to branch master.

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

commit 23e9d4920875906c7f90fb4a8dd91c68e9522c07
Author: Kai Huuhko 
Date:   Sun Nov 3 07:45:37 2013 +0200

Elementary.progressbar: Style "recording" -> "double"

Also, part "elm.cur.progressbar" is the main bar.

See commit 12bbcd1a3a5c9e0a1a235166de2fca99dcfa5a0c
---
 efl/elementary/progressbar.pyx | 14 +++---
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/efl/elementary/progressbar.pyx b/efl/elementary/progressbar.pyx
index f02bc08..f1d282e 100644
--- a/efl/elementary/progressbar.pyx
+++ b/efl/elementary/progressbar.pyx
@@ -54,23 +54,23 @@ This widget emits the following signals, besides the ones 
sent from
 
 This widget has the following styles:
 
-- ``"default"``
-- ``"wheel"`` (simple style, no text, no progression, only "pulse"
+- ``default``
+- ``wheel`` (simple style, no text, no progression, only "pulse"
   effect is available)
-- ``"recording"`` (style with two independent progress indicators)
+- ``double`` (style with two independent progress indicators)
 
 Default text parts of the progressbar widget that you can use for are:
 
-- ``"default"`` - Label of the progressbar
+- ``default`` - Label of the progressbar
 
 Default content parts of the progressbar widget that you can use for are:
 
-- ``"icon"`` - An icon of the progressbar
+- ``icon`` - An icon of the progressbar
 
 Default part names for the "recording" style:
 
-- ``"elm.cur.progressbar1"`` - The "main" indicator bar
-- ``"elm.cur.progressbar"`` - The "secondary" indicator bar
+- ``elm.cur.progressbar`` - The "main" indicator bar
+- ``elm.cur.progressbar1`` - The "secondary" indicator bar
 
 """
 

-- 




Re: [E-devel] [EGIT] [core/elementary] master 01/01: elm access - if we disable apis then disable the tests too - unbreak build

2013-11-03 Thread Daniel Juyung Seo
Good catch.
Thanks for the fix.
I tested that after removing elm_access header from
/usr/local/include/elementary-1, how did it work for me? :(

Daniel Juyung Seo (SeoZ)


On Sat, Nov 2, 2013 at 10:48 AM, Carsten Haitzler wrote:

> raster pushed a commit to branch master.
>
>
> http://git.enlightenment.org/core/elementary.git/commit/?id=d8b3cdb28f5334f9429959109af4b960bf414097
>
> commit d8b3cdb28f5334f9429959109af4b960bf414097
> Author: Carsten Haitzler (Rasterman) 
> Date:   Sat Nov 2 10:48:12 2013 +0900
>
> elm access - if we disable apis then disable the tests too - unbreak
> build
> ---
>  src/bin/test.c| 14 +++---
>  src/bin/test_access.c |  3 +++
>  2 files changed, 10 insertions(+), 7 deletions(-)
>
> diff --git a/src/bin/test.c b/src/bin/test.c
> index 963f386..4a8f472 100755
> --- a/src/bin/test.c
> +++ b/src/bin/test.c
> @@ -10,9 +10,9 @@
>  int _log_domain = -1;
>
>  /* all tests prototypes */
> -void test_access(void *data, Evas_Object *obj, void *event_info);
> -void test_access2(void *data, Evas_Object *obj, void *event_info);
> -void test_access3(void *data, Evas_Object *obj, void *event_info);
> +//void test_access(void *data, Evas_Object *obj, void *event_info);
> +//void test_access2(void *data, Evas_Object *obj, void *event_info);
> +//void test_access3(void *data, Evas_Object *obj, void *event_info);
>  void test_bg_plain(void *data, Evas_Object *obj, void *event_info);
>  void test_bg_image(void *data, Evas_Object *obj, void *event_info);
>  void test_bg_options(void *data, Evas_Object *obj, void *event_info);
> @@ -458,7 +458,7 @@ my_win_main(const char *autorun, Eina_Bool
> test_win_only)
> evas_object_show(lb);
>
> /* This label will not be read out */
> -   elm_access_object_unregister(lb);
> +//   elm_access_object_unregister(lb);
>
> tg = elm_check_add(win);
> elm_object_style_set(tg, "toggle");
> @@ -802,9 +802,9 @@ add_tests:
> ADD_TEST(NULL, "Miscellaneous", "Icon Desktops", test_icon_desktops);
> ADD_TEST(NULL, "Miscellaneous", "Floating Objects", test_floating);
> ADD_TEST(NULL, "Miscellaneous", "Configuration", test_config);
> -   ADD_TEST(NULL, "Miscellaneous", "Accessibility", test_access);
> -   ADD_TEST(NULL, "Miscellaneous", "Accessibility2", test_access2);
> -   ADD_TEST(NULL, "Miscellaneous", "Accessibility3", test_access3);
> +//   ADD_TEST(NULL, "Miscellaneous", "Accessibility", test_access);
> +//   ADD_TEST(NULL, "Miscellaneous", "Accessibility2", test_access2);
> +//   ADD_TEST(NULL, "Miscellaneous", "Accessibility3", test_access3);
>
> //--//
> ADD_TEST(NULL, "Application client/server", "Task switcher",
> test_task_switcher);
> diff --git a/src/bin/test_access.c b/src/bin/test_access.c
> index 82c44cb..b0753ad 100644
> --- a/src/bin/test_access.c
> +++ b/src/bin/test_access.c
> @@ -4,6 +4,7 @@
>  #include 
>  #ifndef ELM_LIB_QUICKLAUNCH
>
> +#if 0
>  static void
>  _cleanup_cb(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *obj
> EINA_UNUSED, void *event_info EINA_UNUSED)
>  {
> @@ -401,3 +402,5 @@ test_access3(void *data EINA_UNUSED, Evas_Object *obj
> EINA_UNUSED, void *event_i
> evas_object_show(win);
>  }
>  #endif
> +
> +#endif
>
> --
>
>
>
--
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=65839951&iu=/4140/ostg.clktrk
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel