Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
On Wed, 12 Oct 2011 14:50:44 +0900 ChunEon Parkher...@naver.com wrote: they can call evas_object_del and content_pop for subobj. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Enlightenment SVNlt;no-re...@enlightenment.orggt; To: enlightenment-...@lists.sourceforge.net Cc: Sent: 11-10-12(수) 06:06:59 Subject: E SVN: discomfitor trunk/elementary/src/lib Log: add elm_pager_content_del() for deleting arbitrary pages from a pager Author: discomfitor Date: 2011-10-11 14:06:59 -0700 (Tue, 11 Oct 2011) New Revision: 63993 Trac: http://trac.enlightenment.org/e/changeset/63993 Modified: trunk/elementary/src/lib/Elementary.h.in trunk/elementary/src/lib/elm_pager.c Modified: trunk/elementary/src/lib/Elementary.h.in === --- trunk/elementary/src/lib/Elementary.h.in 2011-10-11 21:05:32 UTC (rev 63992) +++ trunk/elementary/src/lib/Elementary.h.in 2011-10-11 21:06:59 UTC (rev 63993) @@ -19692,6 +19692,14 @@ */ EAPI void elm_pager_content_push(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1); /** + * @brief Delete an arbitrary page from the stack + * @param obj The pager object + * @param subobj The content object to remove + * This removes a content item from the pager stack. If necessary, elm_pager_content_pop() + * will be called to animate a change. + */ + EAPI void elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1, 2); + /** * @brief Pop the object that is on top of the stack * * @param obj The pager object Modified: trunk/elementary/src/lib/elm_pager.c === --- trunk/elementary/src/lib/elm_pager.c 2011-10-11 21:05:32 UTC (rev 63992) +++ trunk/elementary/src/lib/elm_pager.c 2011-10-11 21:06:59 UTC (rev 63993) @@ -372,6 +372,21 @@ } EAPI void +elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj) +{ + ELM_CHECK_WIDTYPE(obj, widtype); + Widget_Data *wd = elm_widget_data_get(obj); + if (!subobj) return; + if (!wd) return; + if (!wd-stack) return; + + if (subobj == wd-top-content) + elm_pager_content_pop(obj); + else + _content_del(obj, NULL, subobj, NULL); +} + +EAPI void elm_pager_content_pop(Evas_Object *obj) { ELM_CHECK_WIDTYPE(obj, widtype); not the same thing. -- Mike Blumenkrantz Zentific: Coding in binary since '10. -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] [PATCH] evas: Use inlists to store the render recalculation list
Rebuild eina first, otherwise this won't build. thanks, Mike From f36e1a67f8f58b65c1fd1452ca692e4f2edc87ee Mon Sep 17 00:00:00 2001 From: Mike McCormack mj.mccorm...@samsung.com Date: Wed, 12 Oct 2011 15:07:30 +0900 Subject: [PATCH] evas: Use inlists to store the render recalculation list Signed-off-by: Mike McCormack mj.mccorm...@samsung.com --- evas/src/lib/canvas/evas_main.c |3 +- evas/src/lib/canvas/evas_object_smart.c | 79 -- evas/src/lib/include/evas_private.h |4 +- 3 files changed, 35 insertions(+), 51 deletions(-) diff --git a/evas/src/lib/canvas/evas_main.c b/evas/src/lib/canvas/evas_main.c index d3e4c8c..c658fb1 100644 --- a/evas/src/lib/canvas/evas_main.c +++ b/evas/src/lib/canvas/evas_main.c @@ -120,6 +120,7 @@ evas_new(void) e-viewport.h = 1; e-hinting = EVAS_FONT_HINTING_BYTECODE; e-name_hash = eina_hash_string_superfast_new(NULL); + eina_clist_init(e-calc_list); #define EVAS_ARRAY_SET(E, Array) \ eina_array_step_set(E-Array, sizeof (E-Array), 4096); @@ -253,8 +254,6 @@ evas_free(Evas *e) EINA_LIST_FREE(e-touch_points, touch_point) free(touch_point); - eina_list_free(e-calc_list); - e-magic = 0; free(e); } diff --git a/evas/src/lib/canvas/evas_object_smart.c b/evas/src/lib/canvas/evas_object_smart.c index f516aa7..66f198e 100644 --- a/evas/src/lib/canvas/evas_object_smart.c +++ b/evas/src/lib/canvas/evas_object_smart.c @@ -11,7 +11,6 @@ struct _Evas_Object_Smart void *data; Eina_List*callbacks; Eina_Inlist *contained; - Eina_List*calc_node; Evas_Smart_Cb_Description_Array callbacks_descriptions; int walking_list; Eina_Bool deletions_waiting : 1; @@ -551,38 +550,16 @@ evas_object_smart_need_recalculate_set(Evas_Object *obj, Eina_Bool value) // XXX: do i need this? if (obj-delete_me) return; - + + /* remove this entry from any list it is in */ + if (obj-calc_entry.next) + eina_clist_remove(obj-calc_entry); + obj-calc_entry.next = NULL; + value = !!value; if (value) - { -Evas *e = obj-layer-evas; - -if (o-need_recalculate) - { - if ((o-calc_node) (e-calc_list_current != o-calc_node)) -e-calc_list = eina_list_demote_list(e-calc_list, - o-calc_node); - else -e-calc_list = eina_list_append(e-calc_list, obj); - } -else - e-calc_list = eina_list_append(e-calc_list, obj); -o-calc_node = eina_list_last(e-calc_list); - } - else - { -Evas *e = obj-layer-evas; - -if (o-need_recalculate) - { - if ((o-calc_node) (e-calc_list_current != o-calc_node)) -e-calc_list = eina_list_remove_list(e-calc_list, - o-calc_node); - o-calc_node = NULL; - - } - } - + eina_clist_add_tail(obj-layer-evas-calc_list, obj-calc_entry); + if (o-need_recalculate == value) return; if (obj-recalculate_cycle 256) @@ -654,32 +631,42 @@ evas_smart_objects_calculate_count_get(const Evas *e) void evas_call_smarts_calculate(Evas *e) { - Evas_Object *obj; - Eina_List *l; + Eina_Clist processed = EINA_CLIST_INIT(processed); // printf(+CALC---v\n); evas_event_freeze(e); e-in_smart_calc++; - - EINA_LIST_FOREACH(e-calc_list, l, obj) + + while (!eina_clist_empty(e-calc_list)) { -Evas_Object_Smart *o = obj-object_data; - +Evas_Object_Smart *o; +Eina_Clist *elem = eina_clist_head(e-calc_list); +Evas_Object *obj = EINA_CLIST_ENTRY(elem, Evas_Object, calc_entry); + +/* move the item to the processed list */ +eina_clist_remove(obj-calc_entry); if (obj-delete_me) continue; -e-calc_list_current = l; +eina_clist_add_tail(processed, obj-calc_entry); + +o = obj-object_data; + if (o-need_recalculate) { o-need_recalculate = 0; obj-smart.smart-smart_class-calculate(obj); } -if (o-calc_node == l) o-calc_node = NULL; -e-calc_list_current = NULL; } - EINA_LIST_FREE(e-calc_list, obj) + + while (!eina_clist_empty(processed)) { +Eina_Clist *elem = eina_clist_head(processed); +Evas_Object *obj = EINA_CLIST_ENTRY(elem, Evas_Object, calc_entry); + obj-recalculate_cycle = 0; +eina_clist_remove(obj-calc_entry); +obj-calc_entry.next = NULL; } - e-calc_list_current = NULL; + e-in_smart_calc--; if (e-in_smart_calc == 0) e-smart_calc_count++; evas_event_thaw(e); @@ -745,12 +732,10 @@ evas_object_smart_cleanup(Evas_Object *obj) o = (Evas_Object_Smart *)(obj-object_data); if
Re: [E-devel] E SVN: mike_m trunk/elementary/src/lib
Is this a proper API ? Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Enlightenment SVNlt;no-re...@enlightenment.orggt; To: enlightenment-...@lists.sourceforge.net Cc: Sent: 11-10-11(화) 15:27:30 Subject: E SVN: mike_m trunk/elementary/src/lib Log: elementary: Add elm_pager_animation_disable_set Signed-off-by: Shilpa Singh lt;shilpa.si...@samsung.comgt; Signed-off-by: Mike McCormack lt;mj.mccorm...@samsung.comgt; Author: mike_m Date: 2011-10-10 23:27:30 -0700 (Mon, 10 Oct 2011) New Revision: 63981 Trac: http://trac.enlightenment.org/e/changeset/63981 Modified: trunk/elementary/src/lib/Elementary.h.in trunk/elementary/src/lib/elm_pager.c Modified: trunk/elementary/src/lib/Elementary.h.in === --- trunk/elementary/src/lib/Elementary.h.in 2011-10-11 06:27:20 UTC (rev 63980) +++ trunk/elementary/src/lib/Elementary.h.in 2011-10-11 06:27:30 UTC (rev 63981) @@ -19731,6 +19731,14 @@ */ EAPI Evas_Object *elm_pager_content_top_get(const Evas_Object *obj) EINA_ARG_NONNULL(1); /** + * @brief Enable or disable pager animations + * + * @param obj The pager object + * @param disable True if the animation should be disabled + */ + EAPI void elm_pager_animation_disabled_set(Evas_Object *obj, Eina_Bool disable); EINA_ARG_NONNULL(1); + + /** * @} */ Modified: trunk/elementary/src/lib/elm_pager.c === --- trunk/elementary/src/lib/elm_pager.c 2011-10-11 06:27:20 UTC (rev 63980) +++ trunk/elementary/src/lib/elm_pager.c 2011-10-11 06:27:30 UTC (rev 63981) @@ -9,6 +9,7 @@ Eina_List *stack; Item *top, *oldtop; Evas_Object *rect, *clip; + Eina_Bool disable_animation: 1; }; struct _Item @@ -144,6 +145,7 @@ _eval_top(Evas_Object *obj) { Widget_Data *wd = elm_widget_data_get(obj); + Eina_Bool show_noanimate = EINA_TRUE; Item *ittop; if (!wd) return; if (!wd-stack) return; @@ -156,8 +158,14 @@ if (wd-top) { o = wd-top-base; - if (wd-top-popme) + if(wd-disable_animation) { + edje_object_signal_emit(o, elm,action,hide,noanimate, elm); + if (wd-top-popme) + wd-stack = eina_list_remove(wd-stack, wd-top); + } + else if (wd-top-popme) + { edje_object_signal_emit(o, elm,action,pop, elm); wd-stack = eina_list_remove(wd-stack, wd-top); } @@ -170,12 +178,20 @@ else if (!strcmp(onhide, lower)) evas_object_lower(o); } } + else + { + show_noanimate = EINA_FALSE; + } wd-oldtop = wd-top; wd-top = ittop; o = wd-top-base; evas_object_show(o); - if (wd-oldtop) + if ((!show_noanimate)||(wd-disable_animation)) { + edje_object_signal_emit(o, elm,action,show,noanimate, elm); + } + else if (wd-oldtop) + { if (elm_object_focus_get(wd-oldtop-content)) elm_widget_focused_object_clear(wd-oldtop-content); if (wd-oldtop-popme) @@ -434,3 +450,18 @@ return wd-top-content; } +/** + * This disables content animation on push/pop. + * + * @param obj The pager object + * @param disable if EINA_TRUE animation is disabled. + * + * @ingroup Pager + */ +EAPI void +elm_pager_animation_disabled_set(Evas_Object *obj, Eina_Bool disable) +{ + ELM_CHECK_WIDTYPE(obj, widtype); + Widget_Data *wd = elm_widget_data_get(obj); + wd-disable_animation = disable; +} -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-svn mailing list enlightenment-...@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-svn -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [Patch] scroller two bugs fix
Thank u. in svn. revision 64010 Let's run together for the best moment! -Regards, Hermet- -Original Message- From: 김재환lt;jae.hwan@samsung.comgt; To: enlightenment-devel@lists.sourceforge.netlt;enlightenment-devel@lists.sourceforge.netgt; Cc: Sent: 11-10-12(수) 14:05:20 Subject: [E-devel] [Patch] scroller two bugs fix Dear all COMMIT MSG: = fix two bugs - use elm_smart_scroller_edje_object_get in case of edje object fix conditional statement when parameter is 0 in elm_smart_scroller_page_show, elm_smart_scroller_page_bring_in = I found two bugs in scroller. First, wd-scr in elm_scroller is the smart object. But it is used like edje object [ex: edje_object_signal_emit(wd-scr, elm,action,focus, elm);] So I changed it to use elm_smart_scroller_edje_object_get. Second, in elm_smart_scroller_page_show and bring_in it works wrong, when the parameter (pagenumber_h or pagenumber_v) is 0. So I change the conditional statement. Please check the attached patch file. Thanks. -- Jaehwan Kim. [cid:PYMC4CBBEM6S@namo.co.kr] [SeenTimeChecker?do=4c27f84bc5600e2e1d2822b92bf91a781f805b3ae07ed6e2b9d2a415 8a55a362ba777c355c197185c465c2cf80a2b7ef9aba4bb3b2b5ca43ddd7e184e0604d958075 b6b33f32d245b7f8aafe245478a5f1d21d5ebee74427cf878f9a26ce15a0] -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
same. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Mike Blumenkrantzlt;m...@zentific.comgt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt; Cc: her...@naver.com Sent: 11-10-12(수) 14:59:03 Subject: Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib On Wed, 12 Oct 2011 14:50:44 +0900 ChunEon Parklt;her...@naver.comgt; wrote: they can call evas_object_del and content_pop for subobj. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Enlightenment SVNlt;no-re...@enlightenment.orggt; To: enlightenment-...@lists.sourceforge.net Cc: Sent: 11-10-12(수) 06:06:59 Subject: E SVN: discomfitor trunk/elementary/src/lib Log: add elm_pager_content_del() for deleting arbitrary pages from a pager Author: discomfitor Date: 2011-10-11 14:06:59 -0700 (Tue, 11 Oct 2011) New Revision: 63993 Trac: http://trac.enlightenment.org/e/changeset/63993 Modified: trunk/elementary/src/lib/Elementary.h.in trunk/elementary/src/lib/elm_pager.c Modified: trunk/elementary/src/lib/Elementary.h.in === --- trunk/elementary/src/lib/Elementary.h.in 2011-10-11 21:05:32 UTC (rev 63992) +++ trunk/elementary/src/lib/Elementary.h.in 2011-10-11 21:06:59 UTC (rev 63993) @@ -19692,6 +19692,14 @@ */ EAPI void elm_pager_content_push(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1); /** + * @brief Delete an arbitrary page from the stack + * @param obj The pager object + * @param subobj The content object to remove + * This removes a content item from the pager stack. If necessary, elm_pager_content_pop() + * will be called to animate a change. + */ + EAPI void elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1, 2); + /** * @brief Pop the object that is on top of the stack * * @param obj The pager object Modified: trunk/elementary/src/lib/elm_pager.c === --- trunk/elementary/src/lib/elm_pager.c 2011-10-11 21:05:32 UTC (rev 63992) +++ trunk/elementary/src/lib/elm_pager.c 2011-10-11 21:06:59 UTC (rev 63993) @@ -372,6 +372,21 @@ } EAPI void +elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj) +{ + ELM_CHECK_WIDTYPE(obj, widtype); + Widget_Data *wd = elm_widget_data_get(obj); + if (!subobj) return; + if (!wd) return; + if (!wd-stack) return; + + if (subobj == wd-top-content) + elm_pager_content_pop(obj); + else + _content_del(obj, NULL, subobj, NULL); +} + +EAPI void elm_pager_content_pop(Evas_Object *obj) { ELM_CHECK_WIDTYPE(obj, widtype); not the same thing. -- Mike Blumenkrantz Zentific: Coding in binary since '10. -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
On Wed, 12 Oct 2011 16:06:19 +0900 ChunEon Parkher...@naver.com wrote: same. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Mike Blumenkrantzlt;m...@zentific.comgt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt; Cc: her...@naver.com Sent: 11-10-12(수) 14:59:03 Subject: Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib On Wed, 12 Oct 2011 14:50:44 +0900 ChunEon Parklt;her...@naver.comgt; wrote: they can call evas_object_del and content_pop for subobj. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Enlightenment SVNlt;no-re...@enlightenment.orggt; To: enlightenment-...@lists.sourceforge.net Cc: Sent: 11-10-12(수) 06:06:59 Subject: E SVN: discomfitor trunk/elementary/src/lib Log: add elm_pager_content_del() for deleting arbitrary pages from a pager Author: discomfitor Date: 2011-10-11 14:06:59 -0700 (Tue, 11 Oct 2011) New Revision: 63993 Trac: http://trac.enlightenment.org/e/changeset/63993 Modified: trunk/elementary/src/lib/Elementary.h.in trunk/elementary/src/lib/elm_pager.c Modified: trunk/elementary/src/lib/Elementary.h.in === --- trunk/elementary/src/lib/Elementary.h.in 2011-10-11 21:05:32 UTC (rev 63992) +++ trunk/elementary/src/lib/Elementary.h.in 2011-10-11 21:06:59 UTC (rev 63993) @@ -19692,6 +19692,14 @@ */ EAPI void elm_pager_content_push(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1); /** + * @brief Delete an arbitrary page from the stack + * @param obj The pager object + * @param subobj The content object to remove + * This removes a content item from the pager stack. If necessary, elm_pager_content_pop() + * will be called to animate a change. + */ + EAPI void elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1, 2); + /** * @brief Pop the object that is on top of the stack * * @param obj The pager object Modified: trunk/elementary/src/lib/elm_pager.c === --- trunk/elementary/src/lib/elm_pager.c 2011-10-11 21:05:32 UTC (rev 63992) +++ trunk/elementary/src/lib/elm_pager.c 2011-10-11 21:06:59 UTC (rev 63993) @@ -372,6 +372,21 @@ } EAPI void +elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj) +{ + ELM_CHECK_WIDTYPE(obj, widtype); + Widget_Data *wd = elm_widget_data_get(obj); + if (!subobj) return; + if (!wd) return; + if (!wd-stack) return; + + if (subobj == wd-top-content) + elm_pager_content_pop(obj); + else + _content_del(obj, NULL, subobj, NULL); +} + +EAPI void elm_pager_content_pop(Evas_Object *obj) { ELM_CHECK_WIDTYPE(obj, widtype); not the same thing. not same! -- Mike Blumenkrantz Zentific: Coding in binary since '10. -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: mike_m trunk/edje/src/bin
On 10/12/2011 04:14 AM, Gustavo Sverzut Barbieri wrote: ahahahahaha... this is funny. Aside from embryo code, it's trivial to regenerate the source. Actually editje willl use that function as it ignores the actual edc contents and creates from eet structures. Yes, I know decompilation is trivial. The purpose of the patch is to: 1) synchronize with a patch somebody wrote internally (not me) 2) allow saving some disk space Actually, the internal implementation was just to comment out the relevant code, so I'm trying to clean it up. thanks, Mike -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: mike_m trunk/elementary/src/lib
On 10/12/2011 03:30 PM, ChunEon Park wrote: Is this a proper API ? Clearly, somebody thinks so otherwise they wouldn't have written it. If you think it's wrong, please delete it. thanks, Mike -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: mike_m trunk/edje/src/bin
Mike, we all know you by know and nobody would think this stupid idea was yours. We know the reasons for this yet this doesn't stop us from complaining :-) Relax :-) On Wednesday, October 12, 2011, Mike McCormack mj.mccorm...@samsung.com wrote: On 10/12/2011 04:14 AM, Gustavo Sverzut Barbieri wrote: ahahahahaha... this is funny. Aside from embryo code, it's trivial to regenerate the source. Actually editje willl use that function as it ignores the actual edc contents and creates from eet structures. Yes, I know decompilation is trivial. The purpose of the patch is to: 1) synchronize with a patch somebody wrote internally (not me) 2) allow saving some disk space Actually, the internal implementation was just to comment out the relevant code, so I'm trying to clean it up. thanks, Mike -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
Yes. it's the convenient API for users. But they can call the evas_object_del to delete the content, or if it's a top item, they can call pager_content_pop API. That's all. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Mike Blumenkrantzlt;m...@zentific.comgt; To: ChunEon Parklt;her...@naver.comgt; Cc: Enlightenment develolt;enlightenment-devel@lists.sourceforge.netgt; Sent: 11-10-12(수) 16:18:22 Subject: Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib On Wed, 12 Oct 2011 16:06:19 +0900 ChunEon Parklt;her...@naver.comgt; wrote: same. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Mike Blumenkrantzlt;m...@zentific.comgt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt; Cc: her...@naver.com Sent: 11-10-12(수) 14:59:03 Subject: Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib On Wed, 12 Oct 2011 14:50:44 +0900 ChunEon Parklt;her...@naver.comgt; wrote: they can call evas_object_del and content_pop for subobj. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Enlightenment SVNlt;no-re...@enlightenment.orggt; To: enlightenment-...@lists.sourceforge.net Cc: Sent: 11-10-12(수) 06:06:59 Subject: E SVN: discomfitor trunk/elementary/src/lib Log: add elm_pager_content_del() for deleting arbitrary pages from a pager Author: discomfitor Date: 2011-10-11 14:06:59 -0700 (Tue, 11 Oct 2011) New Revision: 63993 Trac: http://trac.enlightenment.org/e/changeset/63993 Modified: trunk/elementary/src/lib/Elementary.h.in trunk/elementary/src/lib/elm_pager.c Modified: trunk/elementary/src/lib/Elementary.h.in === --- trunk/elementary/src/lib/Elementary.h.in 2011-10-11 21:05:32 UTC (rev 63992) +++ trunk/elementary/src/lib/Elementary.h.in 2011-10-11 21:06:59 UTC (rev 63993) @@ -19692,6 +19692,14 @@ */ EAPI void elm_pager_content_push(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1); /** + * @brief Delete an arbitrary page from the stack + * @param obj The pager object + * @param subobj The content object to remove + * This removes a content item from the pager stack. If necessary, elm_pager_content_pop() + * will be called to animate a change. + */ + EAPI void elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1, 2); + /** * @brief Pop the object that is on top of the stack * * @param obj The pager object Modified: trunk/elementary/src/lib/elm_pager.c === --- trunk/elementary/src/lib/elm_pager.c 2011-10-11 21:05:32 UTC (rev 63992) +++ trunk/elementary/src/lib/elm_pager.c 2011-10-11 21:06:59 UTC (rev 63993) @@ -372,6 +372,21 @@ } EAPI void +elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj) +{ + ELM_CHECK_WIDTYPE(obj, widtype); + Widget_Data *wd = elm_widget_data_get(obj); + if (!subobj) return; + if (!wd) return; + if (!wd-stack) return; + + if (subobj == wd-top-content) + elm_pager_content_pop(obj); + else + _content_del(obj, NULL, subobj, NULL); +} + +EAPI void elm_pager_content_pop(Evas_Object *obj) { ELM_CHECK_WIDTYPE(obj, widtype); not the same thing. not same! -- Mike Blumenkrantz Zentific: Coding in binary since '10. -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
On Wed, 12 Oct 2011 17:02:33 +0900 ChunEon Parkher...@naver.com wrote: Yes. it's the convenient API for users. But they can call the evas_object_del to delete the content, or if it's a top item, they can call pager_content_pop API. That's all. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Mike Blumenkrantzlt;m...@zentific.comgt; To: ChunEon Parklt;her...@naver.comgt; Cc: Enlightenment develolt;enlightenment-devel@lists.sourceforge.netgt; Sent: 11-10-12(수) 16:18:22 Subject: Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib On Wed, 12 Oct 2011 16:06:19 +0900 ChunEon Parklt;her...@naver.comgt; wrote: same. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Mike Blumenkrantzlt;m...@zentific.comgt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt; Cc: her...@naver.com Sent: 11-10-12(수) 14:59:03 Subject: Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib On Wed, 12 Oct 2011 14:50:44 +0900 ChunEon Parklt;her...@naver.comgt; wrote: they can call evas_object_del and content_pop for subobj. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Enlightenment SVNlt;no-re...@enlightenment.orggt; To: enlightenment-...@lists.sourceforge.net Cc: Sent: 11-10-12(수) 06:06:59 Subject: E SVN: discomfitor trunk/elementary/src/lib Log: add elm_pager_content_del() for deleting arbitrary pages from a pager Author: discomfitor Date: 2011-10-11 14:06:59 -0700 (Tue, 11 Oct 2011) New Revision: 63993 Trac: http://trac.enlightenment.org/e/changeset/63993 Modified: trunk/elementary/src/lib/Elementary.h.in trunk/elementary/src/lib/elm_pager.c Modified: trunk/elementary/src/lib/Elementary.h.in === --- trunk/elementary/src/lib/Elementary.h.in 2011-10-11 21:05:32 UTC (rev 63992) +++ trunk/elementary/src/lib/Elementary.h.in 2011-10-11 21:06:59 UTC (rev 63993) @@ -19692,6 +19692,14 @@ */ EAPI void elm_pager_content_push(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1); /** + * @brief Delete an arbitrary page from the stack + * @param obj The pager object + * @param subobj The content object to remove + * This removes a content item from the pager stack. If necessary, elm_pager_content_pop() + * will be called to animate a change. + */ + EAPI void elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1, 2); + /** * @brief Pop the object that is on top of the stack * * @param obj The pager object Modified: trunk/elementary/src/lib/elm_pager.c === --- trunk/elementary/src/lib/elm_pager.c 2011-10-11 21:05:32 UTC (rev 63992) +++ trunk/elementary/src/lib/elm_pager.c 2011-10-11 21:06:59 UTC (rev 63993) @@ -372,6 +372,21 @@ } EAPI void +elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj) +{ + ELM_CHECK_WIDTYPE(obj, widtype); + Widget_Data *wd = elm_widget_data_get(obj); + if (!subobj) return; + if (!wd) return; + if (!wd-stack) return; + + if (subobj == wd-top-content) + elm_pager_content_pop(obj); + else + _content_del(obj, NULL, subobj, NULL); +} + +EAPI void elm_pager_content_pop(Evas_Object *obj) { ELM_CHECK_WIDTYPE(obj, widtype); not the same thing. not same! even if you call evas_object_del it's still in the pager's stack list and will cause more problems later because of this. -- Mike Blumenkrantz Zentific: Coding in binary since '10. -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: mike_m trunk/elementary/src/lib
If no one does agree this API by tomorrow, then I will remove it again. Thanks. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Mike McCormacklt;mj.mccorm...@samsung.comgt; To: enlightenment-devel@lists.sourceforge.net Cc: Sent: 11-10-12(수) 16:43:08 Subject: Re: [E-devel] E SVN: mike_m trunk/elementary/src/lib On 10/12/2011 03:30 PM, ChunEon Park wrote: Is this a proper API ? Clearly, somebody thinks so otherwise they wouldn't have written it. If you think it's wrong, please delete it. thanks, Mike -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
It looks, when content is pushed, it adds _content_del callback for EVAS_CALLBACK_DEL. and it removed from the stack in _content_del Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Mike Blumenkrantzlt;m...@zentific.comgt; To: ChunEon Parklt;her...@naver.comgt; Cc: Enlightenment develolt;enlightenment-devel@lists.sourceforge.netgt; Sent: 11-10-12(수) 17:15:10 Subject: Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib On Wed, 12 Oct 2011 17:02:33 +0900 ChunEon Parklt;her...@naver.comgt; wrote: Yes. it's the convenient API for users. But they can call the evas_object_del to delete the content, or if it's a top item, they can call pager_content_pop API. That's all. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Mike Blumenkrantzlt;m...@zentific.comgt; To: ChunEon Parklt;her...@naver.comgt; Cc: Enlightenment develolt;enlightenment-devel@lists.sourceforge.netgt; Sent: 11-10-12(수) 16:18:22 Subject: Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib On Wed, 12 Oct 2011 16:06:19 +0900 ChunEon Parklt;her...@naver.comgt; wrote: same. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Mike Blumenkrantzlt;m...@zentific.comgt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt; Cc: her...@naver.com Sent: 11-10-12(수) 14:59:03 Subject: Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib On Wed, 12 Oct 2011 14:50:44 +0900 ChunEon Parklt;her...@naver.comgt; wrote: they can call evas_object_del and content_pop for subobj. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Enlightenment SVNlt;no-re...@enlightenment.orggt; To: enlightenment-...@lists.sourceforge.net Cc: Sent: 11-10-12(수) 06:06:59 Subject: E SVN: discomfitor trunk/elementary/src/lib Log: add elm_pager_content_del() for deleting arbitrary pages from a pager Author: discomfitor Date: 2011-10-11 14:06:59 -0700 (Tue, 11 Oct 2011) New Revision: 63993 Trac: http://trac.enlightenment.org/e/changeset/63993 Modified: trunk/elementary/src/lib/Elementary.h.in trunk/elementary/src/lib/elm_pager.c Modified: trunk/elementary/src/lib/Elementary.h.in === --- trunk/elementary/src/lib/Elementary.h.in 2011-10-11 21:05:32 UTC (rev 63992) +++ trunk/elementary/src/lib/Elementary.h.in 2011-10-11 21:06:59 UTC (rev 63993) @@ -19692,6 +19692,14 @@ */ EAPI void elm_pager_content_push(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1); /** + * @brief Delete an arbitrary page from the stack + * @param obj The pager object + * @param subobj The content object to remove + * This removes a content item from the pager stack. If necessary, elm_pager_content_pop() + * will be called to animate a change. + */ + EAPI void elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1, 2); + /** * @brief Pop the object that is on top of the stack * * @param obj The pager object Modified: trunk/elementary/src/lib/elm_pager.c === --- trunk/elementary/src/lib/elm_pager.c 2011-10-11 21:05:32 UTC (rev 63992) +++ trunk/elementary/src/lib/elm_pager.c 2011-10-11 21:06:59 UTC (rev 63993) @@ -372,6 +372,21 @@ } EAPI void +elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj) +{ + ELM_CHECK_WIDTYPE(obj, widtype); + Widget_Data *wd = elm_widget_data_get(obj); + if (!subobj) return; + if (!wd) return; + if (!wd-stack) return; + + if (subobj == wd-top-content) + elm_pager_content_pop(obj); + else + _content_del(obj, NULL, subobj, NULL); +} + +EAPI void elm_pager_content_pop(Evas_Object *obj) { ELM_CHECK_WIDTYPE(obj, widtype); not the same thing. not same! even if you call evas_object_del it's still in the pager's stack list and will cause more problems later because of this. -- Mike Blumenkrantz Zentific: Coding in binary since '10. -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: mike_m trunk/elementary/src/lib
On 10/12/2011 05:32 PM, ChunEon Park wrote: If no one does agree this API by tomorrow, then I will remove it again. Thanks. Seeing it is wrong, we should also remove it internally. thanks, Mike -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib
On Wed, 12 Oct 2011 17:37:26 +0900 ChunEon Parkher...@naver.com wrote: It looks, when content is pushed, it adds _content_del callback for EVAS_CALLBACK_DEL. and it removed from the stack in _content_del Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Mike Blumenkrantzlt;m...@zentific.comgt; To: ChunEon Parklt;her...@naver.comgt; Cc: Enlightenment develolt;enlightenment-devel@lists.sourceforge.netgt; Sent: 11-10-12(수) 17:15:10 Subject: Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib On Wed, 12 Oct 2011 17:02:33 +0900 ChunEon Parklt;her...@naver.comgt; wrote: Yes. it's the convenient API for users. But they can call the evas_object_del to delete the content, or if it's a top item, they can call pager_content_pop API. That's all. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Mike Blumenkrantzlt;m...@zentific.comgt; To: ChunEon Parklt;her...@naver.comgt; Cc: Enlightenment develolt;enlightenment-devel@lists.sourceforge.netgt; Sent: 11-10-12(수) 16:18:22 Subject: Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib On Wed, 12 Oct 2011 16:06:19 +0900 ChunEon Parklt;her...@naver.comgt; wrote: same. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Mike Blumenkrantzlt;m...@zentific.comgt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt; Cc: her...@naver.com Sent: 11-10-12(수) 14:59:03 Subject: Re: [E-devel] E SVN: discomfitor trunk/elementary/src/lib On Wed, 12 Oct 2011 14:50:44 +0900 ChunEon Parklt;her...@naver.comgt; wrote: they can call evas_object_del and content_pop for subobj. Let's run together for the best moment! -Regards, Hermet- -Original Message- From: Enlightenment SVNlt;no-re...@enlightenment.orggt; To: enlightenment-...@lists.sourceforge.net Cc: Sent: 11-10-12(수) 06:06:59 Subject: E SVN: discomfitor trunk/elementary/src/lib Log: add elm_pager_content_del() for deleting arbitrary pages from a pager Author: discomfitor Date: 2011-10-11 14:06:59 -0700 (Tue, 11 Oct 2011) New Revision: 63993 Trac: http://trac.enlightenment.org/e/changeset/63993 Modified: trunk/elementary/src/lib/Elementary.h.in trunk/elementary/src/lib/elm_pager.c Modified: trunk/elementary/src/lib/Elementary.h.in === --- trunk/elementary/src/lib/Elementary.h.in 2011-10-11 21:05:32 UTC (rev 63992) +++ trunk/elementary/src/lib/Elementary.h.in 2011-10-11 21:06:59 UTC (rev 63993) @@ -19692,6 +19692,14 @@ */ EAPI void elm_pager_content_push(Evas_Object *obj, Evas_Object *content) EINA_ARG_NONNULL(1); /** + * @brief Delete an arbitrary page from the stack + * @param obj The pager object + * @param subobj The content object to remove + * This removes a content item from the pager stack. If necessary, elm_pager_content_pop() + * will be called to animate a change. + */ + EAPI void elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj) EINA_ARG_NONNULL(1, 2); + /** * @brief Pop the object that is on top of the stack * * @param obj The pager object Modified: trunk/elementary/src/lib/elm_pager.c === --- trunk/elementary/src/lib/elm_pager.c 2011-10-11 21:05:32 UTC (rev 63992) +++ trunk/elementary/src/lib/elm_pager.c 2011-10-11 21:06:59 UTC (rev 63993) @@ -372,6 +372,21 @@ } EAPI void +elm_pager_content_del(Evas_Object *obj, Evas_Object *subobj) +{ + ELM_CHECK_WIDTYPE(obj, widtype); + Widget_Data *wd = elm_widget_data_get(obj); + if (!subobj) return; + if (!wd) return; + if (!wd-stack) return; + + if (subobj == wd-top-content) + elm_pager_content_pop(obj); + else + _content_del(obj, NULL, subobj, NULL); +} + +EAPI void elm_pager_content_pop(Evas_Object *obj) { ELM_CHECK_WIDTYPE(obj, widtype); not the same thing. not same! even if you call evas_object_del it's still in the pager's stack list and will cause more problems later because of this. well swizzle me fizzwidgets -- Mike Blumenkrantz Zentific: Coding in binary since '10. -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct
[E-devel] Multitouch Not working
Hi all, EVAS_CALLBACK_MULTI_DOWN is not calling the appropriate function, I've xinput 2.1 which works perfectly on xinput --test and getting the events. I've tried both the release version and latest from the svn, but still i'm having the same problem. The multi-touch from elementary-tests shows only one touch point being clicked, though i place two fingers on canvas. Any solution? -- Regards HariHaraSudhan -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Multitouch Not working
On Wed, 12 Oct 2011 14:00:55 +0530 HariHara Sudhan h...@emo2.com said: Hi all, EVAS_CALLBACK_MULTI_DOWN is not calling the appropriate function, I've xinput 2.1 which works perfectly on xinput --test and getting the events. I've tried both the release version and latest from the svn, but still i'm having the same problem. The multi-touch from elementary-tests shows only one touch point being clicked, though i place two fingers on canvas. Any solution? ecore-x handles the x - evas event stream and ecore-x looks at mpx-style multi touch events. works with the drivers i have here - though they are specifically implemented to support the exact hardware. -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Evas Patch - Dashed Underline Support
Hi All, Please find attached updated dashed underline patch with review comment fixes given by Tom. Fixes: tag names and function name modified, formatting fixes and test added for dashed underline. and I agree as multiple underlines should not co-exist only one underline color tag will be sufficient. and I think even in case of double underline we should still have only one underline color tag and apply the same color to both lines. but there is an exceptional case also where in a underline can be drawn over other underline (eg: to indicate Spellcheck error -squiggly red underline) so this case also needs to be considered. may be for this case a boolean tag can be used to indicate that this line can be drawn over other underline and a special color tag also may be required. Thanks Regards Shilpa Singh --- Original Message --- Sender : Tom Hacohentom.haco...@partner.samsung.com Engineer/STRI-SLP RTL Language supporting/Samsung Electronics Date : Sep 22, 2011 17:30 (GMT+09:00) Title : Re: [E-devel] Evas Patch - Dashed Underline Support On 22/09/11 05:39, SHILPAONKAR SINGH wrote: Hi All, The attached patch adds dashed underline support to evas_object_textblock. dashed underline can be enabled by assigning dashed value to underline tag. dash underline's parameters can be controlled by manipulating dashgap and dashwidth tags to get different sized dash lines(by making dashgap=1 and dashwidth=1 we can even get dotted style). Please review the patch and let me know your opinion. Thanks for the patch, I reviewed it and it looks good, but I have 1 comment, and one thing I'm not entirely sure about. Comment: DRAW_FORMAT_SPEC should probably be named DRAW_FORMAT_DASHED. As for what I'm not sure of: Since underline, dashed-line, and in the future, squiggly-line, can't co-exist (or at least shouldn't), it makes sense (to me) that all the colours will be shared among all the underlines, and that we'll have an enum defining the underline style. This is neater, and also, this will let us easily extend dashed-line and squiggly-line to work with underline2 (but not a must). Bottom line, I suggest keeping it internally in an enum instead of a couple of booleans so the structure will be nicer, what do you think? Also, please add related tests to evas's test infrastructure (src/tests/evas_test_textblock.c). Thanks, Tom. evas_object_textblock.patch Description: Binary data -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] [E-Devel][Patch] Eina TLS
Hi all, I was in need of using thread local storage for some of the EvasGL stuff that I'm currently working on. I've noticed that Eina doesn't have thread local storage functions. It would be best to simply use load-time TLS by using __thread in Linux or __declspec(thread) in Windows in front of variables but these two are not supported in all platforms that EFL supports. You can check out what's supported in different platforms at this link below: https://chtekk.longitekk.com/index.php?/archives/70-TLS-and-shared-library-initialization.html So, I've decdied to add Eina APIs for run-time TLS support. Here's an initial set of APIs that I've implemented. static inline Eina_Bool eina_tls_new(Eina_TLS *key); static inline void eina_tls_free(Eina_TLS key); static inline void *eina_tls_get(Eina_TLS key); static inline Eina_Bool eina_tls_set(Eina_TLS key, const void *data); I didn't add destructor function pointer in eina_tls_new even though it's supported in pthreads because they're not supported in windows. I've tested the posix implmentation but I haven't been able to test the Windows version. If someone can review/test the code, that would be very helpful. Let me know what you think. cheers, Sung Index: src/include/eina_inline_lock_void.x === --- src/include/eina_inline_lock_void.x (revision 64010) +++ src/include/eina_inline_lock_void.x (working copy) @@ -215,6 +215,30 @@ return EINA_LOCK_FAIL; } +static inline Eina_Bool +eina_tls_new(Eina_TLS *key) +{ + return EINA_FALSE; +} + +static inline void +eina_tls_free(Eina_TLS key) +{ +} + +static inline void * +eina_tls_get(Eina_TLS key) +{ + return NULL; +} + +static inline Eina_Bool +eina_tls_set(Eina_TLS key, const void *data) +{ + return EINA_FALSE; +} + + /** * @} */ Index: src/include/eina_inline_lock_win32.x === --- src/include/eina_inline_lock_win32.x (revision 64010) +++ src/include/eina_inline_lock_win32.x (working copy) @@ -433,4 +433,32 @@ return EINA_LOCK_SUCCEED; } +static inline Eina_Bool +eina_tls_new(Eina_TLS *key) +{ + if (TlsAlloc() == TLS_OUT_OF_INDEXES) + return EINA_FALSE; + return EINA_TRUE; +} + +static inline void +eina_tls_free(Eina_TLS key) +{ + TlsFree(key); +} + +static inline void * +eina_tls_get(Eina_TLS key) +{ + return (void*)TlsGetValue(key); +} + +static inline Eina_Bool +eina_tls_set(Eina_TLS key, const void *data) +{ + if (TlsSetValue(key, (LPVOID)data) == 0) + return EINA_FALSE; + return EINA_TRUE; +} + #endif Index: src/include/eina_lock.h === --- src/include/eina_lock.h (revision 64010) +++ src/include/eina_lock.h (working copy) @@ -76,6 +76,12 @@ static inline Eina_Lock_Result eina_rwlock_take_write(Eina_RWLock *mutex); static inline Eina_Lock_Result eina_rwlock_release(Eina_RWLock *mutex); +static inline Eina_Bool eina_tls_new(Eina_TLS *key); +static inline void eina_tls_free(Eina_TLS key); +static inline void *eina_tls_get(Eina_TLS key); +static inline Eina_Bool eina_tls_set(Eina_TLS key, const void *data); + + #ifdef EINA_HAVE_DEBUG_THREADS # define EINA_MAIN_LOOP_CHECK_RETURN_VAL(val)\ do { \ Index: src/include/eina_inline_lock_wince.x === --- src/include/eina_inline_lock_wince.x (revision 64010) +++ src/include/eina_inline_lock_wince.x (working copy) @@ -23,8 +23,9 @@ EAPI extern Eina_Bool _threads_activated; -typedef HANDLE Eina_Lock; +typedef HANDLEEina_Lock; typedef Eina_Lock Eina_RWLock; +typedef DWORD Eina_TLS; static inline Eina_Bool eina_lock_new(Eina_Lock *mutex) @@ -144,4 +145,34 @@ return eina_lock_release(mutex); } +static inline Eina_Bool +eina_tls_new(Eina_TLS *key) +{ + if (TlsAlloc() == TLS_OUT_OF_INDEXES) + return EINA_FALSE; + return EINA_TRUE; +} + +static inline void +eina_tls_free(Eina_TLS key) +{ + TlsFree(key); +} + +static inline void * +eina_tls_get(Eina_TLS key) +{ + return (void*)TlsGetValue(key); +} + +static inline Eina_Bool +eina_tls_set(Eina_TLS key, const void *data) +{ + if (TlsSetValue(key, (LPVOID)data) == 0) + return EINA_FALSE; + return EINA_TRUE; +} + + + #endif Index: src/include/eina_inline_lock_posix.x === --- src/include/eina_inline_lock_posix.x (revision 64010) +++ src/include/eina_inline_lock_posix.x (working copy) @@ -44,6 +44,7 @@ typedef struct _Eina_Lock Eina_Lock; typedef struct _Eina_RWLock Eina_RWLock; typedef struct _Eina_Condition Eina_Condition; +typedef pthread_key_t Eina_TLS; struct _Eina_Lock { @@ -477,4 +478,32 @@ return EINA_LOCK_SUCCEED; } +static inline Eina_Bool +eina_tls_new(Eina_TLS *key) +{ + if (pthread_key_create(key, NULL) != 0) + return EINA_FALSE; + return EINA_TRUE; +} +
[E-devel] elementary build failure on openSUSE Factory
Hi, we have build issue on openSUSE Factory (devel version of distribution, similar to debian sid). Packages are the same as for other openSUSE distributions (only version should differ) so I don't think it's packaging issue. I already tried to consult it on IRC so you may have already seen it. Build log (including preinstallation of packages): http://goo.gl/nYmq7 Strace of command causing segfault: http://pastebin.com/zHid1a3k Backtrace: http://paste.opensuse.org/49263801 Any help would be appreciated. Best regards, Tomas Cech L3 pgpeybo4KCYD8.pgp Description: PGP signature -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: raster trunk/evas/src/lib/canvas
2011/10/11 Vincent Torri vto...@univ-evry.fr: On Tue, 11 Oct 2011, Vincent Torri wrote: correct. in some cases where 15.9 cannot in fp be represented as a value = 16.0, this it gets slightly rounded down, and thus ends up being 15 when dropped down to an integer. that is the whole crux of the problem. the almost all the code using ceil() and floor() is broken, as the result of these functions is almost always casted to an int... so that means non-c99 platforms will have rendering bugs. there has to be a better way. I don't know any. If someone has a clue... http://cgit.freedesktop.org/cairo/tree/src/cairo-misc.c#n487 :O voodoo math Vincent -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] elementary build failure on openSUSE Factory
On Wed, 12 Oct 2011 23:49:29 +0200 Tomas Cech tc...@suse.cz said: Hi, we have build issue on openSUSE Factory (devel version of distribution, similar to debian sid). Packages are the same as for other openSUSE distributions (only version should differ) so I don't think it's packaging issue. I already tried to consult it on IRC so you may have already seen it. Build log (including preinstallation of packages): http://goo.gl/nYmq7 Strace of command causing segfault: http://pastebin.com/zHid1a3k Backtrace: http://paste.opensuse.org/49263801 Any help would be appreciated. Best regards, Tomas Cech L3 backtrace needs more info. can you print ep-name and pc-parts[i]-name ? -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] elementary build failure on openSUSE Factory
On Wed, 12 Oct 2011 23:49:29 +0200 Tomas Cech tc...@suse.cz said: scratch that. found it. fixed it. badness in group inheritance patches! Hi, we have build issue on openSUSE Factory (devel version of distribution, similar to debian sid). Packages are the same as for other openSUSE distributions (only version should differ) so I don't think it's packaging issue. I already tried to consult it on IRC so you may have already seen it. Build log (including preinstallation of packages): http://goo.gl/nYmq7 Strace of command causing segfault: http://pastebin.com/zHid1a3k Backtrace: http://paste.opensuse.org/49263801 Any help would be appreciated. Best regards, Tomas Cech L3 -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Question about event propagation routine of elm_scroller
Hello all, I have a question about event propagation routine among Evas_Object specially elm_scroller. I made an application which has Evas_Objects as follows: my object - elm_layout - elm_box - elm_scroller - elm_navibar (- means : left is contained to right) I expect that event is propagated from child to parent, but event propagation routine is as follows: elm_scroller - elm_navibar - my object - elm_layout - elm_box (- means : left object gets event early) Why elm_scroller always get event firstly even though it has child? I want to not propagate event to the elm_scroller using EVAS_EVENT_FLAG_ON_HOLD if my object consumes event. but I can not do that because elm_scroller gets event earlier than my object. If elm_scroller's event routine is correct, is there any other solution? (additional information: my object is not an elementary widget. it is just an Evas_Object.) Regards, Eunmi Lee -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Lua2?
On Thu, 29 Sep 2011 19:33:16 +1000 David Seikel onef...@gmail.com said: OK, lua2 has no text part support, and that's what I needed. So I went with embryo. More about that below, but first the important part of this post. For a later project, I'll really need lua in EFL, but for this one, the embryo stuff works. I did want to get stuck into lua2 with this project though, just as a warm up to that later one. I spent part of yesterday going over edje's internals, to figure out what I don't know, and how much work it might be to implement lua2 text part support. I might be able to implement text parts in lua2, at least enough to satisfy my own needs. After writing the first few bits of lua2 stuff, lots of the rest are likely to be trivial boiler plate code. Just gotta get my head around it and get up to speed. correct. most of it is boiler plate fill me in code. last i worked on it all the design patterns/poler plate was done with examples and implementations of a chunk of things, but definitely not everything. in fact the whole purpose of lua2 was for implementing totally in lua only objects. i.e. the object including layout math is done in lua. i didnt intend to expose lua in the same places embryo is now (for adding extra logic to existing groups with parts and states etc.). the reason for this is 1. sanity of implementation and 2. easier dividing line between should i use lua or embryo. So, what are other peoples plans with implementing lua2? Would I be stepping on others toes? Is someone else gonna be doing it very soon? Is raster happy with how lua2 was turning out, and not gonna start on lua3? Am I gonna go well past my annual commit quota? no plans for now. Embryo lacked a feature I found is in recent versions of small/pawn, So my embryo code is rather ugly to work around that. Lua has that feature though. I think they called it array subscripts in pawn, but it's basically a struct. Lua tables should do that fine. yes. embryo is older. no plans to upgrade its support at this stage if ever. if you need more api calls in the embryo script to do things it currently cant to parts or whatever - we just add them. the lua stuff is intended to be a whole new class of object totally implemented in lua script (resizing, transitions etc. - of COURSE with edje providing lots of helpers and pre-made functionality like transitioning parameters of objects etc. over time). Some might say that if my edje code is complex enough to require structs, that I should be doing it in C. However, I want the edje file i would say that. to include the full details of each game personality, as later I'll be adding more game personalities, and it's best for this design to have ALL that stuff in the one edje file. Then switching personalities is just a simple theme change. So one important struct, and code to deal with it, must be in the edje file. Then the C just sends generic messages, and each game personality deals with it in it's own way. Actually, with this design, the interactions between edje and C are very simple. Most of the complexity to do with this struct is handled entirely by the edje, it's mostly data to do with what gets displayed. -- A big old stinking pile of genius that no one wants coz there are too many silver coated monkeys in the world. -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Lua2?
On Thu, 13 Oct 2011 11:56:49 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Thu, 29 Sep 2011 19:33:16 +1000 David Seikel onef...@gmail.com said: OK, lua2 has no text part support, and that's what I needed. So I went with embryo. More about that below, but first the important part of this post. For a later project, I'll really need lua in EFL, but for this one, the embryo stuff works. I did want to get stuck into lua2 with this project though, just as a warm up to that later one. I spent part of yesterday going over edje's internals, to figure out what I don't know, and how much work it might be to implement lua2 text part support. I might be able to implement text parts in lua2, at least enough to satisfy my own needs. After writing the first few bits of lua2 stuff, lots of the rest are likely to be trivial boiler plate code. Just gotta get my head around it and get up to speed. correct. most of it is boiler plate fill me in code. last i worked on it all the design patterns/poler plate was done with examples and implementations of a chunk of things, but definitely not everything. Cool, I understood what was there. B-) So, what are other peoples plans with implementing lua2? Would I be stepping on others toes? Is someone else gonna be doing it very soon? Is raster happy with how lua2 was turning out, and not gonna start on lua3? Am I gonna go well past my annual commit quota? no plans for now. OK, I'll probably poke at writing some of the lua stuff then. For the purposes of this project, the current lua support is sufficient. Though there is one part I had to write in C that I'm not happy with. It really should be part of the edje. I might experiment with that soon. Otherwise, when I get around to it, as edje stuff for this project is now pretty solid as is. Embryo lacked a feature I found is in recent versions of small/pawn, So my embryo code is rather ugly to work around that. Lua has that feature though. I think they called it array subscripts in pawn, but it's basically a struct. Lua tables should do that fine. yes. embryo is older. no plans to upgrade its support at this stage if ever. if you need more api calls in the embryo script to do things it currently cant to parts or whatever - we just add them. the lua stuff is intended to be a whole new class of object totally implemented in lua script (resizing, transitions etc. - of COURSE with edje providing lots of helpers and pre-made functionality like transitioning parameters of objects etc. over time). I did rewrite it in lua, and I was correct. The lua version is much cleaner, half the size, and more readable. Lua tables did the trick that embryo arrays just did not cope with well. Relative sizing and positioning between edje and lua parts I guess is what swallow parts is for. -- A big old stinking pile of genius that no one wants coz there are too many silver coated monkeys in the world. signature.asc Description: PGP signature -- All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2d-oct___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel