Re: [E-devel] [Patch][Emotion] It accesses to the freed data
Yop, On Wed, Aug 1, 2012 at 2:19 PM, Sohyun Kim wrote: > I made patch for emotion-gstreamer. > > In the render() of gstreamer thread, it adds an asynchronous call to make a > copy of buffer to evas_image. > When application calls delete function for the emotion object during > rendering, emotion deletes the gstreamer pipeline and the object. > After that, the asynchronous function is called and it accesses to the freed > data. > The problem is also happened when a new video file is set. (when pipeline is > resetted) > > I added a condition to the asyncronous function for checking that pipeline is > cheaned up. > I used last buffer data to check it. > During rendering, emotion keeps a copy of last inserted buffer. > When the pipeline is cleaned up, last buffer data is deleted. > > Please check the attached patch. Thanks, in svn. -- Cedric BAIL -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] malloc()
On Wed, 01 Aug 2012 06:03:54 +0200 rustyBSD said: tanks! though realistically.. if these mallocs fail, we are in deep trouble. we are so low on memory we likely cant render anymore or do much useful anymore except crash or exit. with these small mallocs at any rate. but the string append ones could build really big strings. thats a no-no to crash there. fixed in svn. > Hi, > > == e/src/bin/e_fm.c == > line 9261 - _e_fm_retry_abort_dialog(int pid, const char *str) > There is no check if malloc() fails. Should add "if (!id) return NULL;" > after "id = malloc(sizeof(int));". It avoids null pointer dereference. > > Same problem in > _e_fm_overwrite_dialog(int pid, const char *str) > _e_fm_error_dialog(int pid, const char *str) > _e_fm_string_append_char(char *str, size_t *size, size_t *len, char c) > _e_fm2_typebuf_complete(Evas_Object *obj) > > Maxime > -- > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > ___ > 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 -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] free() - FREE()
On Sun, 29 Jul 2012 15:53:31 +0200 rustyBSD said: seems someone replaced with E_FREE already. :) > Hi, > In "e/src/bin/e_fm_op.c", free() is used. > Should replace all free() by FREE(), as > free() doesn't do "p = NULL". > > FREE() avoids dangling pointers. > > Maxime > -- > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > ___ > 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 -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] free() - FREE()
someone reporting in On Wed, Aug 1, 2012 at 10:02 AM, Carsten Haitzler wrote: > On Sun, 29 Jul 2012 15:53:31 +0200 rustyBSD said: > > seems someone replaced with E_FREE already. :) > > > Hi, > > In "e/src/bin/e_fm_op.c", free() is used. > > Should replace all free() by FREE(), as > > free() doesn't do "p = NULL". > > > > FREE() avoids dangling pointers. > > > > Maxime > > > -- > > Live Security Virtual Conference > > Exclusive live event will cover all the ways today's security and > > threat landscape has changed and how IT managers can respond. Discussions > > will include endpoint security, mobile security and the latest in malware > > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > > ___ > > 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 > > > > -- > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > ___ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] prop window
On Sat, 28 Jul 2012 18:42:05 +0200 rustyBSD said: ok in, but some changes ... removed the min size set of button of 52x52 - this shouldn't be needed. i made the button expand horizontally (and vertically) and fill too. i also fixed the blocks print (really why do u want to know this? do u REALLY need the number of blocks in the gui?) so it handles 64bit block sizes. and last access dat.. u dont use noatime? i wonder who doesn't use noatime (or relatime) where this info is not so useful anymore. :) it's in - but i wonder why u need/want this info? > Hi, > here is a patch which fixes some things of FIXME in > file "e_fm_prop.c". > > I added: > - exec permission / group permission > - location (dir) > - last modified permission > - last accessed date > - occuped blocks on disk > - notification of broken symlink > > I fixed size of icon (which was malformed). > I also fixed some typos in comm... > All seems to be ok. > > Maxime > -- - Codito, ergo sum - "I code, therefore I am" -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: raster IN trunk/e: . src/bin
I agree that he is important, but TWO entries in the authors file ? On Wed, Aug 1, 2012 at 10:33 AM, Enlightenment SVN < no-re...@enlightenment.org> wrote: > Log: > patch from rustyBSD. > > > > Author: raster > Date: 2012-08-01 02:33:01 -0700 (Wed, 01 Aug 2012) > New Revision: 74725 > Trac: http://trac.enlightenment.org/e/changeset/74725 > > Modified: > trunk/e/AUTHORS trunk/e/src/bin/e_fm_prop.c > > Modified: trunk/e/AUTHORS > === > --- trunk/e/AUTHORS 2012-08-01 09:05:35 UTC (rev 74724) > +++ trunk/e/AUTHORS 2012-08-01 09:33:01 UTC (rev 74725) > @@ -35,3 +35,4 @@ > q66 > Tom Hacohen (TAsn) > Maxime Villard > +rustyBSD -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] efl documentation etc...
Is there a way for me to obtain the efl libraries for offline viewing? i tend to dev without a net connection. also, are there any successful vapis for the efl? any attempts? -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] efl documentation etc...
On Wed, Aug 1, 2012 at 6:49 PM, Donn Jeferson R Atienza wrote: > Is there a way for me to obtain the efl libraries for offline viewing? i > tend to dev without a net connection. If you already have efl source code, just go inside the build directory and run make doc, this will generate all documentation locally. If you don't I may do it for you, or anyone with the source on his computer can. > also, are there any successful vapis for the efl? any attempts? What is vapi ? -- Cedric BAIL -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] efl documentation etc...
bindings for vala are called vapi files, i have not much knowledge though... check out gnome dev site for details... :) -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] efl documentation etc...
Hello. On 08/01/2012 11:05 AM, Donn Jeferson Atienza wrote: > bindings for vala are called vapi files, i have not much knowledge though... > check out gnome dev site for details... :) We have vala bindings in BINDINGS/vala in svn. regards Stefan Schmidt -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] efl documentation etc...
Yes we have it! http://trac.enlightenment.org/e/browser/trunk/BINDINGS/vala Daniel Juyung Seo (SeoZ) On Wed, Aug 1, 2012 at 7:20 PM, Stefan Schmidt wrote: > Hello. > > On 08/01/2012 11:05 AM, Donn Jeferson Atienza wrote: >> bindings for vala are called vapi files, i have not much knowledge though... >> check out gnome dev site for details... :) > > We have vala bindings in BINDINGS/vala in svn. > > regards > Stefan Schmidt > > > -- > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > ___ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] [patch][elementary] win, only declaration of _elm_win_access()
dear all hello, there is a declaration _elm_win_access() but no definition. so the patch has the definition. and it would be used in elm_config_access_set() of elm_config to ignite access_hook() of each widget. please review the patch and give any feedback. thanks. sincerely, shinwoo kim. -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [patch][elementary] win, only declaration of _elm_win_access()
oops.. the attachment.. ;; 2012/8/1 Kim Shinwoo > dear all hello, > > there is a declaration _elm_win_access() but no definition. so the patch > has the definition. > and it would be used in elm_config_access_set() of elm_config to ignite > access_hook() of each widget. > please review the patch and give any feedback. thanks. > > sincerely, > shinwoo kim. > elm_config.win.access.diff Description: Binary data -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] [patch][elementary] diskselector - accessibility feature
dear all hello. the patch is for the accessibility feature for the diskselector. um.. because of freezing, the patch would not be accepted. so just review feedback is enough.. for later. thanks. cordially, shinwoo kim. elm_diskselector.access.diff Description: Binary data -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] [PATCH] evas/elementary: Fix hoversel test segfault on wayland engine
From: Alex Wu Bug report at http://trac.enlightenment.org/e/ticket/1235 The hoversel widget has a hover object internally to prompt item list. Once user click at the prompted area, the hover will dispear. Internally, the function stack like this: _on_hover_clicked()--> elm_hoversel_hover_end()-->evas_object_del(sd->hover). After this calling, hover object is marked as "to be deleted". i.e. obj->delete_me=1. In the next evas_render_updates_internal(), it will be freed. For wayland engine, there is an additional clipping operation to make the render_objects clipped into the viewport (See phase 4.5 in evas_render_updates_internal()). The problem is that the hover object marked as "to be deleted" will be clipped into e->framespace.clip by evas_object_clip_set(obj, e->framespace.clip) and then freed. So that the e->framespace.clip hold a wild pointer. At next evas_object_change(e->framespace.clip), Segmentation fault occur. I think this problem is not specific to hoversel. This patch add a check for obj->delete_me to avoid clipping a object which will be freed. --- trunk/evas/src/lib/canvas/evas_render.c |2 ++ 1 file changed, 2 insertions(+) diff --git a/trunk/evas/src/lib/canvas/evas_render.c b/trunk/evas/src/lib/canvas/evas_render.c index 1db3d21..0a1f938 100644 --- a/trunk/evas/src/lib/canvas/evas_render.c +++ b/trunk/evas/src/lib/canvas/evas_render.c @@ -1412,6 +1412,8 @@ evas_render_updates_internal(Evas *e, if (evas_object_is_frame_object_get(obj)) continue; + if (obj->delete_me) continue; + EINA_RECTANGLE_SET(&obj_rect, obj->cur.geometry.x, obj->cur.geometry.y, obj->cur.geometry.w, obj->cur.geometry.h); -- 1.7.9.5 -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [PATCH] evas/elementary: Fix hoversel test segfault on wayland engine
Good catch. Patch in svn. Thanks :) Dh -Original Message- From: zhiwen...@linux.intel.com [mailto:zhiwen...@linux.intel.com] Sent: 01 August 2012 15:04 To: enlightenment-devel@lists.sourceforge.net Cc: eduardo.de.barros.l...@intel.com Subject: [E-devel] [PATCH] evas/elementary: Fix hoversel test segfault on wayland engine From: Alex Wu Bug report at http://trac.enlightenment.org/e/ticket/1235 The hoversel widget has a hover object internally to prompt item list. Once user click at the prompted area, the hover will dispear. Internally, the function stack like this: _on_hover_clicked()--> elm_hoversel_hover_end()-->evas_object_del(sd->hover). After this calling, hover object is marked as "to be deleted". i.e. obj->delete_me=1. In the next evas_render_updates_internal(), it will be freed. For wayland engine, there is an additional clipping operation to make the render_objects clipped into the viewport (See phase 4.5 in evas_render_updates_internal()). The problem is that the hover object marked as "to be deleted" will be clipped into e->framespace.clip by evas_object_clip_set(obj, e->framespace.clip) and then freed. So that the e->framespace.clip hold a wild pointer. At next evas_object_change(e->framespace.clip), Segmentation fault occur. I think this problem is not specific to hoversel. This patch add a check for obj->delete_me to avoid clipping a object which will be freed. --- trunk/evas/src/lib/canvas/evas_render.c |2 ++ 1 file changed, 2 insertions(+) diff --git a/trunk/evas/src/lib/canvas/evas_render.c b/trunk/evas/src/lib/canvas/evas_render.c index 1db3d21..0a1f938 100644 --- a/trunk/evas/src/lib/canvas/evas_render.c +++ b/trunk/evas/src/lib/canvas/evas_render.c @@ -1412,6 +1412,8 @@ evas_render_updates_internal(Evas *e, if (evas_object_is_frame_object_get(obj)) continue; + if (obj->delete_me) continue; + EINA_RECTANGLE_SET(&obj_rect, obj->cur.geometry.x, obj->cur.geometry.y, obj->cur.geometry.w, obj->cur.geometry.h); -- 1.7.9.5 -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: devilhorns trunk/evas/src/lib/canvas
Apologies. I misquoted who the patch is from. It is actually from Alex Wu -Original Message- From: Enlightenment SVN [mailto:no-re...@enlightenment.org] Sent: 01 August 2012 15:15 To: enlightenment-...@lists.sourceforge.net Subject: E SVN: devilhorns trunk/evas/src/lib/canvas Log: Evas: Fix trying to clip objects to the framespace clip if the object is going to be deleted. Patch from eduardo.de.barros.l...@intel.com. Author: devilhorns Date: 2012-08-01 07:14:34 -0700 (Wed, 01 Aug 2012) New Revision: 74739 Trac: http://trac.enlightenment.org/e/changeset/74739 Modified: trunk/evas/src/lib/canvas/evas_render.c Modified: trunk/evas/src/lib/canvas/evas_render.c === --- trunk/evas/src/lib/canvas/evas_render.c 2012-08-01 13:32:38 UTC (rev 74738) +++ trunk/evas/src/lib/canvas/evas_render.c 2012-08-01 14:14:34 UTC (rev 74739) @@ -1392,6 +1392,8 @@ } } +if (obj->delete_me) continue; + EINA_RECTANGLE_SET(&clip_rect, e->framespace.clip->cur.geometry.x, e->framespace.clip->cur.geometry.y, -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-svn mailing list enlightenment-...@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-svn -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: devilhorns trunk/evas/src/lib/canvas
* Enlightenment SVN [2012-08-01 07:14:35 -0700]: > Log: > Evas: Fix trying to clip objects to the framespace clip if the object > is going to be deleted. Patch from eduardo.de.barros.l...@intel.com. > > > > Author: devilhorns > Date: 2012-08-01 07:14:34 -0700 (Wed, 01 Aug 2012) > New Revision: 74739 > Trac: http://trac.enlightenment.org/e/changeset/74739 > > Modified: > trunk/evas/src/lib/canvas/evas_render.c > > Modified: trunk/evas/src/lib/canvas/evas_render.c > === > --- trunk/evas/src/lib/canvas/evas_render.c 2012-08-01 13:32:38 UTC (rev > 74738) > +++ trunk/evas/src/lib/canvas/evas_render.c 2012-08-01 14:14:34 UTC (rev > 74739) > @@ -1392,6 +1392,8 @@ > } >} > > +if (obj->delete_me) continue; > + Did you bother to build it? > EINA_RECTANGLE_SET(&clip_rect, > e->framespace.clip->cur.geometry.x, > e->framespace.clip->cur.geometry.y, > > > -- > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > ___ > enlightenment-svn mailing list > enlightenment-...@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-svn -- Gustavo Lima Chaves Computer Engineer @ ProFUSION Embedded Systems -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: devilhorns trunk/evas/src/lib/canvas
Hahaha, sorry, I did not. Just caught it now in my build Will fix. -Original Message- From: Gustavo Lima Chaves [mailto:gl...@profusion.mobi] Sent: 01 August 2012 15:27 To: enlightenment-devel@lists.sourceforge.net Cc: enlightenment-...@lists.sourceforge.net Subject: Re: [E-devel] E SVN: devilhorns trunk/evas/src/lib/canvas * Enlightenment SVN [2012-08-01 07:14:35 -0700]: > Log: > Evas: Fix trying to clip objects to the framespace clip if the object > is going to be deleted. Patch from eduardo.de.barros.l...@intel.com. > > > > Author: devilhorns > Date: 2012-08-01 07:14:34 -0700 (Wed, 01 Aug 2012) > New Revision: 74739 > Trac: http://trac.enlightenment.org/e/changeset/74739 > > Modified: > trunk/evas/src/lib/canvas/evas_render.c > > Modified: trunk/evas/src/lib/canvas/evas_render.c > === > --- trunk/evas/src/lib/canvas/evas_render.c 2012-08-01 13:32:38 UTC (rev 74738) > +++ trunk/evas/src/lib/canvas/evas_render.c 2012-08-01 14:14:34 UTC (rev 74739) > @@ -1392,6 +1392,8 @@ > } >} > > +if (obj->delete_me) continue; > + Did you bother to build it? > EINA_RECTANGLE_SET(&clip_rect, > e->framespace.clip->cur.geometry.x, > e->framespace.clip->cur.geometry.y, > > > -- > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > ___ > enlightenment-svn mailing list > enlightenment-...@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-svn -- Gustavo Lima Chaves Computer Engineer @ ProFUSION Embedded Systems -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: discomfitor trunk/ecore/src/lib/ecore
missing changelog and news update Vincent On Wed, Aug 1, 2012 at 4:37 PM, Enlightenment SVN wrote: > Log: > add ecore_main_fd_handler_file_add() for use with regular files. > epoll does not handle reading from files since it is only a mechanism for > determining whether a fd is ready for read/write/error, and regular files are > always ready. as a result, we must select on them explicitly without adding > to the epoll fd > > I realize that this is a feature freeze, but it's rather non-invasive and > this is an absolute must-have to fix mounting for e17 so...sorry! > > > Author: discomfitor > Date: 2012-08-01 07:37:24 -0700 (Wed, 01 Aug 2012) > New Revision: 74741 > Trac: http://trac.enlightenment.org/e/changeset/74741 > > Modified: > trunk/ecore/src/lib/ecore/Ecore.h trunk/ecore/src/lib/ecore/ecore_main.c > > Modified: trunk/ecore/src/lib/ecore/Ecore.h > === > --- trunk/ecore/src/lib/ecore/Ecore.h 2012-08-01 14:32:26 UTC (rev 74740) > +++ trunk/ecore/src/lib/ecore/Ecore.h 2012-08-01 14:37:24 UTC (rev 74741) > @@ -1085,7 +1085,27 @@ > * > */ > EAPI Ecore_Fd_Handler *ecore_main_fd_handler_add(int fd, > Ecore_Fd_Handler_Flags flags, Ecore_Fd_Cb func, const void *data, Ecore_Fd_Cb > buf_func, const void *buf_data); > + > /** > + * @brief Adds a callback for activity on the given file descriptor. > + * > + * @param fd The file descriptor to watch. > + * @param flags To monitor it for reading use @c ECORE_FD_READ, for writing > @c > + * ECORE_FD_WRITE, and for error @c ECORE_FD_ERROR. Values by |(ored). > + * @param func The callback function. > + * @param data The data to pass to the callback. > + * @param buf_func The function to call to check if any data has been > buffered > + * and already read from the fd. May be @c NULL. > + * @param buf_data The data to pass to the @p buf_func function. > + * @return A fd handler handle on success, @c NULL otherwise. > + * > + * This function is identical to ecore_main_fd_handler_add, except that it > supports regular files. > + * > + * @since 1.7 > + */ > +EAPI Ecore_Fd_Handler *ecore_main_fd_handler_file_add(int fd, > Ecore_Fd_Handler_Flags flags, Ecore_Fd_Cb func, const void *data, Ecore_Fd_Cb > buf_func, const void *buf_data); > + > +/** > * @brief Set the prepare callback with data for a given #Ecore_Fd_Handler > * > * @param fd_handler The fd handler > > Modified: trunk/ecore/src/lib/ecore/ecore_main.c > === > --- trunk/ecore/src/lib/ecore/ecore_main.c 2012-08-01 14:32:26 UTC (rev > 74740) > +++ trunk/ecore/src/lib/ecore/ecore_main.c 2012-08-01 14:37:24 UTC (rev > 74741) > @@ -163,6 +163,7 @@ > Eina_Bool write_active : 1; > Eina_Bool error_active : 1; > Eina_Bool delete_me : 1; > + Eina_Bool file : 1; > #if defined(USE_G_MAIN_LOOP) > GPollFDgfd; > #endif > @@ -213,6 +214,7 @@ > static Ecore_Fd_Handler *fd_handlers = NULL; > static Ecore_Fd_Handler *fd_handler_current = NULL; > static Eina_List *fd_handlers_with_prep = NULL; > +static Eina_List *file_fd_handlers = NULL; > static Eina_List *fd_handlers_with_buffer = NULL; > static Eina_List *fd_handlers_to_delete = NULL; > > @@ -326,7 +328,7 @@ > int events = 0; > if (fdh->flags & ECORE_FD_READ) events |= EPOLLIN; > if (fdh->flags & ECORE_FD_WRITE) events |= EPOLLOUT; > - if (fdh->flags & ECORE_FD_ERROR) events |= EPOLLERR; > + if (fdh->flags & ECORE_FD_ERROR) events |= EPOLLERR | EPOLLPRI; > return events; > } > > @@ -348,7 +350,7 @@ > { > int r = 0; > > - if (HAVE_EPOLL && epoll_fd >= 0) > + if ((!fdh->file) && HAVE_EPOLL && epoll_fd >= 0) > { > r = _ecore_epoll_add(_ecore_get_epoll_fd(), fdh->fd, > _ecore_poll_events_from_fdh(fdh), fdh); > @@ -369,7 +371,7 @@ > static inline void > _ecore_main_fdh_poll_del(Ecore_Fd_Handler *fdh) > { > - if (HAVE_EPOLL && epoll_fd >= 0) > + if ((!fdh->file) && HAVE_EPOLL && epoll_fd >= 0) > { > struct epoll_event ev; > int efd = _ecore_get_epoll_fd(); > @@ -408,7 +410,7 @@ > _ecore_main_fdh_poll_modify(Ecore_Fd_Handler *fdh) > { > int r = 0; > - if (HAVE_EPOLL && epoll_fd >= 0) > + if ((!fdh->file) && HAVE_EPOLL && epoll_fd >= 0) > { > struct epoll_event ev; > int efd = _ecore_get_epoll_fd(); > @@ -1041,6 +1043,56 @@ > return fdh; > } > > +EAPI Ecore_Fd_Handler * > +ecore_main_fd_handler_file_add(intfd, > + Ecore_Fd_Handler_Flags flags, > + Ecore_Fd_Cbfunc, > + const void*data, > + Ecore_Fd_Cbbuf_func, > + const void*buf_data) > +{ > + Ec
Re: [E-devel] E SVN: discomfitor trunk/ecore/src/lib/ecore
On Wed, 1 Aug 2012 16:46:00 +0200 Vincent Torri wrote: > missing changelog and news update > > Vincent > > On Wed, Aug 1, 2012 at 4:37 PM, Enlightenment SVN > wrote: > > Log: > > add ecore_main_fd_handler_file_add() for use with regular files. > > epoll does not handle reading from files since it is only a mechanism for > > determining whether a fd is ready for read/write/error, and regular files > > are always ready. as a result, we must select on them explicitly without > > adding to the epoll fd > > > > I realize that this is a feature freeze, but it's rather non-invasive and > > this is an absolute must-have to fix mounting for e17 so...sorry! > > > > > > Author: discomfitor > > Date: 2012-08-01 07:37:24 -0700 (Wed, 01 Aug 2012) > > New Revision: 74741 > > Trac: http://trac.enlightenment.org/e/changeset/74741 > > > > Modified: > > trunk/ecore/src/lib/ecore/Ecore.h trunk/ecore/src/lib/ecore/ecore_main.c > > not actually missing, just wasn't in the right directory when I committed. ah, the perils of using SVN. -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] [PATCH][wayland] Enhance unicode generation for key events (fixes #1105)
Patch attached: Here is the ChangeLog entry: 2012-08-01 Rob Bradford * Use libxkbcommon function to map keysym to unicode characters in the Wayland backend. Removing the need to have our own function to do this and increasing the range of supported keysms. Fixes #1105. Cheers, Rob 0001-Ecore_Evas-wayland-Use-new-xkb_keysym_to_utf8-functi.patch Description: Binary data -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: barbieri IN trunk/eina/src: include lib
as usual, @since, changelog and news Vincent On Wed, Aug 1, 2012 at 5:34 PM, Enlightenment SVN wrote: > Log: > eina log: expose cross platform way to set console colors. > > changed the win32 color parse to be malloc-less and also support more > colors. It should be more correct, but I have no windows machine to > test. > > > > Author: barbieri > Date: 2012-08-01 08:34:13 -0700 (Wed, 01 Aug 2012) > New Revision: 74742 > Trac: http://trac.enlightenment.org/e/changeset/74742 > > Modified: > trunk/eina/src/include/eina_log.h trunk/eina/src/lib/eina_log.c > > Modified: trunk/eina/src/include/eina_log.h > === > --- trunk/eina/src/include/eina_log.h 2012-08-01 14:37:24 UTC (rev 74741) > +++ trunk/eina/src/include/eina_log.h 2012-08-01 15:34:13 UTC (rev 74742) > @@ -19,6 +19,7 @@ > #ifndef EINA_LOG_H_ > #define EINA_LOG_H_ > > +#include > #include > #include > #include > @@ -890,6 +891,19 @@ > void *data, > va_listargs); > > +/** > + * Configure console color of given file. > + * > + * @param fp file to configure console color (usually stderr or stdout). > + * @param color a VT color code such as #EINA_COLOR_RED or #EINA_COLOR_RESET. > + * > + * @note if color is disabled, nothing is done. See > + * eina_log_color_disable_get() > + * @note on windows, both @a fp and @a color is converted automatically. > + */ > +EAPI void eina_log_console_color_set(FILE *fp, > + const char *color) EINA_ARG_NONNULL(1, > 2); > + > #include "eina_inline_log.x" > > /** > > Modified: trunk/eina/src/lib/eina_log.c > === > --- trunk/eina/src/lib/eina_log.c 2012-08-01 14:37:24 UTC (rev 74741) > +++ trunk/eina/src/lib/eina_log.c 2012-08-01 15:34:13 UTC (rev 74742) > @@ -252,75 +252,110 @@ > }; > > #ifdef _WIN32 > +/* TODO: query win32_def_attr on eina_log_init() */ > +static int win32_def_attr = FOREGROUND_RED | FOREGROUND_GREEN | > FOREGROUND_BLUE; > + > +/* NOTE: can't use eina_log from inside this function */ > static int > -eina_log_win32_color_get(const char *domain_str) > +eina_log_win32_color_convert(const char *color, const char **endptr) > { > - char *str; > - char *tmp; > - char *tmp2; > - int code = -1; > - int lighted = 0; > - int ret = 0; > + const char *p; > + int attr = 0; > > - str = strdup(domain_str); > - if (!str) > - return 0; > + if (endptr) *endptr = color; > > - /* this should not append */ > - if (str[0] != '\033') > + if (color[0] != '\033') return 0; > + if (color[1] != '[') return 0; > + > + p = color + 2; > + while (1) > { > -free(str); > -return 0; > - } > +char *end; > +int code = strtol(p, &end, 10); > > - /* we skip the first char and the [ */ > - tmp = tmp2 = str + 2; > - while (*tmp != 'm') > - { > -if (*tmp == ';') > +if (p == end) >{ > - *tmp = '\0'; > - code = atol(tmp2); > - tmp++; > - tmp2 = tmp; > + //fputs("empty color string\n", stderr); > + if (endptr) *endptr = end; > + attr = 0; /* assume it was not color, must end with 'm' */ > + break; >} > > -tmp++; > - } > - *tmp = '\0'; > - if (code < 0) > - code = atol(tmp2); > - else > - lighted = atol(tmp2); > +if (code) > + { > + if (code == 0) attr = win32_def_attr; > + else if (code == 1) attr |= FOREGROUND_INTENSITY; > + else if (code == 4) attr |= COMMON_LVB_UNDERSCORE; > + else if (code == 7) attr |= COMMON_LVB_REVERSE_VIDEO; > + else if ((code >= 30) && (code <= 37)) > + { > + /* clear foreground */ > + attr &= ~(FOREGROUND_RED | > +FOREGROUND_GREEN | > +FOREGROUND_BLUE); > > - free(str); > + if (code == 31) > +attr |= FOREGROUND_RED; > + else if (code == 32) > +attr |= FOREGROUND_GREEN; > + else if (code == 33) > +attr |= FOREGROUND_RED | FOREGROUND_GREEN; > + else if (code == 34) > +attr |= FOREGROUND_BLUE; > + else if (code == 35) > +attr |= FOREGROUND_RED | FOREGROUND_BLUE; > + else if (code == 36) > +attr |= FOREGROUND_GREEN | FOREGROUND_BLUE; > + else if (code == 37) > +attr |= FOREGROUND_RED | FOREGROUND_GREEN | > FOREGROUND_BLUE; > + } > + else if ((code >= 40) && (code <= 47)) > + {
Re: [E-devel] E SVN: barbieri IN trunk/eina/src: include lib
On Wed, Aug 1, 2012 at 2:09 PM, Vincent Torri wrote: > as usual, @since, changelog and news done! as ususal, thanks -- Gustavo Sverzut Barbieri http://profusion.mobi embedded systems -- MSN: barbi...@gmail.com Skype: gsbarbieri Mobile: +55 (19) 9225-2202 -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Deprecation / removal of API
What's the process for deprecating / removing API. I've found at least one example where this makes sense for Wayland: /* @since 1.2 */ EAPI void- ecore_wl_pointer_xy_get(int *x, int *y) This function returns an x and y value saved into global variable in the motion event handler - my guess was that this was leftover from when there were global co-ordinates available in the motion event handler. Now since there are only surface relative positions - these values are not particularly helpful and probably downright confusing since they will change depending on what surface has focus. How can we mark this as deprecated and ultimately remove it? Cheers, Rob -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Deprecation / removal of API
On Wed, 1 Aug 2012 18:40:24 +0100 "Bradford, Robert" wrote: > What's the process for deprecating / removing API. I've found at least > one example where this makes sense for Wayland: > > /* @since 1.2 */ > EAPI void- > ecore_wl_pointer_xy_get(int *x, int *y) > > This function returns an x and y value saved into global variable in > the motion event handler - my guess was that this was leftover from > when there were global co-ordinates available in the motion event > handler. > > Now since there are only surface relative positions - these values are > not particularly helpful and probably downright confusing since they > will change depending on what surface has focus. > > How can we mark this as deprecated and ultimately remove it? > > Cheers, > > Rob > EINA_DEPRECATED can be added to a function for throwing deprecation warnings during compile. No functions added prior to the current release cycle can be removed until 2.0 regardless of how nonsensical or stupid they may be. -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Deprecation / removal of API
On 01/08/12 18:40, Bradford, Robert wrote: > What's the process for deprecating / removing API. I've found at least > one example where this makes sense for Wayland: > > /* @since 1.2 */ > EAPI void- > ecore_wl_pointer_xy_get(int *x, int *y) > > This function returns an x and y value saved into global variable in > the motion event handler - my guess was that this was leftover from > when there were global co-ordinates available in the motion event > handler. > > Now since there are only surface relative positions - these values are > not particularly helpful and probably downright confusing since they > will change depending on what surface has focus. > > How can we mark this as deprecated and ultimately remove it? > > Cheers, > > Rob > We can add eina_deprecated to it for now. Yes, it is a left-over from the global coordinates era ;) Although, please hold off on sending a patch for that because I need to verify (for other use cases which are in development) that this function is in fact safe to deprecate. Cheers, dh -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Deprecation / removal of API
> > We can add eina_deprecated to it for now. Yes, it is a left-over from the > global coordinates era ;) Although, please hold off on sending a patch for > that because I need to verify (for other use cases which are in development) > that this function is in fact safe to deprecate. Sure - of course it might be useful to have a version that takes an Ecore_Evas and gets/stores the position on that structure. But this global version is bound to give "interesting" results if you don't know what it's doing :-) Cheers, Rob -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] [PATCH][wayland] Fix bug in fullscreening
ChangeLog entry: 2012-08-01 Rob Bradford * Support setting fullscreen on Ecore_Evas's under the Wayland engine before they are visible. The fullscreening will then be applied when they become visible. Patch attached. Cheers, Rob 0001-Ecore_Evas-wayland-Don-t-check-for-visibility-when-f.patch Description: Binary data -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] [PATCH] wallpaper2: implement close/apply buttons
This patch adds a close and a apply button the the conf_wallpaper2 module. It is implemented in an extremely simple way and does NOT have the advanced features brought by E_Dialog (like disabling after apply). This way the selector is much more usable without having to move to E_Dialog completely, and thus keeping its unique design which differs from typical dialogs. If the whole module should be ported to E_Dialog instead, please let me know. Signed-off-by: Thomas Gstädtner --- .../conf_wallpaper2/e_int_config_wallpaper.c | 30 ++- 1 files changed, 28 insertions(+), 2 deletions(-) diff --git a/src/modules/conf_wallpaper2/e_int_config_wallpaper.c b/src/modules/conf_wallpaper2/e_int_config_wallpaper.c index ab33faa..b4bd5d9 100644 --- a/src/modules/conf_wallpaper2/e_int_config_wallpaper.c +++ b/src/modules/conf_wallpaper2/e_int_config_wallpaper.c @@ -979,7 +979,7 @@ _bg_clicked(void *data, Evas_Object *obj __UNUSED__, const char *emission __UNUS } static void -_ok(void *data, void *data2 __UNUSED__) +_apply(void *data, void *data2 __UNUSED__) { Info *info = data; @@ -1022,10 +1022,22 @@ _ok(void *data, void *data2 __UNUSED__) } e_bg_update(); e_config_save_queue(); +} + +static void +_close(void *data, void *data2 __UNUSED__) +{ wp_conf_hide(); } static void +_ok(void *data, void *data2 __UNUSED__) +{ + _apply(data, data2); + wp_conf_hide(); +} + +static void _wp_add(void *data, void *data2 __UNUSED__) { Info *info = data; @@ -1174,11 +1186,25 @@ wp_browser_new(E_Container *con) edje_object_signal_callback_add(info->bg, "e,action,click", "e", _bg_clicked, info); - // ok button info->box = e_widget_list_add(info->win->evas, 1, 1); + // ok button info->button = e_widget_button_add(info->win->evas, _("OK"), NULL, _ok, info, NULL); + e_widget_disabled_set(info->button, 1); + evas_object_show(info->button); + e_widget_list_object_append(info->box, info->button, 1, 0, 0.5); + + // apply button + info->button = e_widget_button_add(info->win->evas, _("Apply"), NULL, + _apply, info, NULL); + e_widget_disabled_set(info->button, 1); + evas_object_show(info->button); + e_widget_list_object_append(info->box, info->button, 1, 0, 0.5); + + // close button + info->button = e_widget_button_add(info->win->evas, _("Close"), NULL, + _close, info, NULL); evas_object_show(info->button); e_widget_list_object_append(info->box, info->button, 1, 0, 0.5); -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [PATCH] wallpaper2: implement close/apply buttons
On Wed, Aug 1, 2012 at 8:02 PM, Thomas Gstädtner wrote: > > This patch adds a close and a apply button the the conf_wallpaper2 > module. > It is implemented in an extremely simple way and does NOT have the > advanced features brought by E_Dialog (like disabling after apply). > > This way the selector is much more usable without having to move to > E_Dialog completely, and thus keeping its unique design which differs > from typical dialogs. > > If the whole module should be ported to E_Dialog instead, please let me > know. > > Signed-off-by: Thomas Gstädtner > --- > .../conf_wallpaper2/e_int_config_wallpaper.c | 30 ++- > 1 files changed, 28 insertions(+), 2 deletions(-) > Whoops, of course I sent the wrong patch with the buttons still disabled... Ignore the first one, here comes the correct one. Sorry for the inconvenience. ~thomasg 0001-wallpaper2-implement-close-apply-buttons.patch Description: Binary data -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [PATCH][wayland] Fix bug in fullscreening
On 01/08/12 19:21, Bradford, Robert wrote: > ChangeLog entry: > > 2012-08-01 Rob Bradford > > * Support setting fullscreen on Ecore_Evas's under the Wayland engine > before they are visible. The fullscreening will then be applied when > they become visible. > > Patch attached. > > Cheers, > > Rob Thanks Rob :) Initial review looks good so this will 99% go in tomorrow ;) I just want to test it first so I will do so tomorrow morning. Cheers, dh -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [PATCH] wallpaper2: implement close/apply buttons
On Wed, Aug 1, 2012 at 8:34 PM, thomasg wrote: > On Wed, Aug 1, 2012 at 8:02 PM, Thomas Gstädtner > wrote: >> >> This patch adds a close and a apply button the the conf_wallpaper2 >> module. >> It is implemented in an extremely simple way and does NOT have the >> advanced features brought by E_Dialog (like disabling after apply). >> >> This way the selector is much more usable without having to move to >> E_Dialog completely, and thus keeping its unique design which differs >> from typical dialogs. >> >> If the whole module should be ported to E_Dialog instead, please let me >> know. >> >> Signed-off-by: Thomas Gstädtner >> --- >> .../conf_wallpaper2/e_int_config_wallpaper.c | 30 >> ++- >> 1 files changed, 28 insertions(+), 2 deletions(-) >> > > Whoops, of course I sent the wrong patch with the buttons still disabled... > Ignore the first one, here comes the correct one. > Sorry for the inconvenience. > > ~thomasg Due to popular demand, clean up trailing whitespaces for conf_wallpaper2 :P Patch is based on the previous one. ~thomasg 0001-wallpaper2-remove-trailing-whitespaces.patch Description: Binary data -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [PATCH] wallpaper2: implement close/apply buttons
On 01/08/12 19:34, thomasg wrote: > On Wed, Aug 1, 2012 at 8:02 PM, Thomas Gstädtner > wrote: >> >> This patch adds a close and a apply button the the conf_wallpaper2 >> module. >> It is implemented in an extremely simple way and does NOT have the >> advanced features brought by E_Dialog (like disabling after apply). >> >> This way the selector is much more usable without having to move to >> E_Dialog completely, and thus keeping its unique design which differs >> from typical dialogs. >> >> If the whole module should be ported to E_Dialog instead, please let me >> know. >> >> Signed-off-by: Thomas Gstädtner >> --- >> .../conf_wallpaper2/e_int_config_wallpaper.c | 30 >> ++- >> 1 files changed, 28 insertions(+), 2 deletions(-) >> > > Whoops, of course I sent the wrong patch with the buttons still disabled... > Ignore the first one, here comes the correct one. > Sorry for the inconvenience. > > ~thomasg > > Looks good. If nobody applies between now and tomorrow, I will do so when I get to work. Cheers, dh -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] efl documentation etc...
Thank you very much! is there any tutorial on how to set up efl libs for development? right now I'm using geany for vala dev under bodhi linux... i plan to learn cross platform app development using the efl+vala; since elementary went stable recently, i got fired up about it... -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] efl documentation etc...
On Thu, 2 Aug 2012 10:32:09 +0800 Donn Jeferson Atienza said: > Thank you very much! is there any tutorial on how to set up efl libs > for development? right now I'm using geany for vala dev under bodhi > linux... i plan to learn cross platform app development using the > efl+vala; since elementary went stable recently, i got fired up about > it... hmm i can't help with vala, but i use jed as my editor terminolgy.. because its pretty. :) i just do the usual make stuff :) -- - Codito, ergo sum - "I code, therefore I am" -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] [PATCH 0/2 v2] Add Copy and Paste support for wayland engine
Changes from v1: 1. According to Robert's comments, in elm_cnp.c, add HAVE_ELEMENTARY_WAYLAND path to explicitly build against wayland engine, add runtime engine checking. 2. Rebase to the latest code. The following changes since commit 9551f66bed1fb7dab7fdcadb175077ed2d34b783: [elm] Forgotten inclusion on .am. (2012-08-01 21:05:21 +) Alex Wu (2): ecore_wayland: Add Copy and Paste support elem_cnp: Add Copy and Paste support for wayland. trunk/ecore/src/lib/ecore_wayland/Ecore_Wayland.h | 25 ++ trunk/ecore/src/lib/ecore_wayland/ecore_wl.c | 14 + trunk/ecore/src/lib/ecore_wayland/ecore_wl_dnd.c | 271 trunk/ecore/src/lib/ecore_wayland/ecore_wl_input.c | 16 ++ .../ecore/src/lib/ecore_wayland/ecore_wl_private.h | 14 + trunk/elementary/src/lib/elm_cnp.c | 121 - 6 files changed, 459 insertions(+), 2 deletions(-) -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] [PATCH 1/2 v2] ecore_wayland: Add Copy and Paste support
From: Alex Wu Add a global Ecore_Wl_Dnd object to handle copy and paste. I think it is more appropriate to name this struct Ecore_Wl_Selection, which is responsible for both dnd and cnp. This patch just cover the copy and paste and not support "clear clipboard", due to wayland has no way to do that. --- trunk/ecore/src/lib/ecore_wayland/Ecore_Wayland.h | 25 ++ trunk/ecore/src/lib/ecore_wayland/ecore_wl.c | 14 + trunk/ecore/src/lib/ecore_wayland/ecore_wl_dnd.c | 271 trunk/ecore/src/lib/ecore_wayland/ecore_wl_input.c | 16 ++ .../ecore/src/lib/ecore_wayland/ecore_wl_private.h | 14 + 5 files changed, 340 insertions(+) diff --git a/trunk/ecore/src/lib/ecore_wayland/Ecore_Wayland.h b/trunk/ecore/src/lib/ecore_wayland/Ecore_Wayland.h index 5ff3293..e380d46 100644 --- a/trunk/ecore/src/lib/ecore_wayland/Ecore_Wayland.h +++ b/trunk/ecore/src/lib/ecore_wayland/Ecore_Wayland.h @@ -35,6 +35,7 @@ typedef struct _Ecore_Wl_Input Ecore_Wl_Input; # ifndef _ECORE_WAYLAND_WINDOW_PREDEF typedef struct _Ecore_Wl_Window Ecore_Wl_Window; # endif +typedef struct _Ecore_Wl_Dnd Ecore_Wl_Dnd; typedef struct _Ecore_Wl_Dnd_Source Ecore_Wl_Dnd_Source; typedef struct _Ecore_Wl_Dnd_Target Ecore_Wl_Dnd_Target; @@ -47,6 +48,8 @@ typedef struct _Ecore_Wl_Event_Dnd_Enter Ecore_Wl_Event_Dnd_Enter; typedef struct _Ecore_Wl_Event_Dnd_Position Ecore_Wl_Event_Dnd_Position; typedef struct _Ecore_Wl_Event_Dnd_Leave Ecore_Wl_Event_Dnd_Leave; typedef struct _Ecore_Wl_Event_Dnd_Drop Ecore_Wl_Event_Dnd_Drop; +typedef struct _Ecore_Wl_Event_Data_Source_Send Ecore_Wl_Event_Data_Source_Send; +typedef struct _Ecore_Wl_Event_Selection_Data_Ready Ecore_Wl_Event_Selection_Data_Ready; typedef struct _Ecore_Wl_Event_Interfaces_Bound Ecore_Wl_Event_Interfaces_Bound; enum _Ecore_Wl_Window_Type @@ -142,6 +145,7 @@ struct _Ecore_Wl_Input Ecore_Wl_Dnd_Source *drag_source; Ecore_Wl_Dnd_Source *selection_source; + Ecore_Wl_Dnd *dnd; struct { @@ -269,6 +273,19 @@ struct _Ecore_Wl_Event_Dnd_Drop } position; }; +struct _Ecore_Wl_Event_Data_Source_Send +{ + char *type; + int fd; +}; + +struct _Ecore_Wl_Event_Selection_Data_Ready +{ + char *data; + int len; + Eina_Bool done; +}; + struct _Ecore_Wl_Event_Interfaces_Bound { Eina_Bool compositor : 1; @@ -299,6 +316,10 @@ EAPI extern int ECORE_WL_EVENT_DND_ENTER; EAPI extern int ECORE_WL_EVENT_DND_POSITION; EAPI extern int ECORE_WL_EVENT_DND_LEAVE; EAPI extern int ECORE_WL_EVENT_DND_DROP; +EAPI extern int ECORE_WL_EVENT_DATA_SOURCE_TARGET; +EAPI extern int ECORE_WL_EVENT_DATA_SOURCE_SEND; +EAPI extern int ECORE_WL_EVENT_DATA_SOURCE_CANCELLED; +EAPI extern int ECORE_WL_EVENT_SELECTION_DATA_READY; EAPI extern int ECORE_WL_EVENT_INTERFACES_BOUND; EAPI int ecore_wl_init(const char *name); @@ -343,5 +364,9 @@ EAPI void ecore_wl_window_pointer_set(Ecore_Wl_Window *win, struct wl_surface *s EAPI void ecore_wl_window_cursor_from_name_set(Ecore_Wl_Window *win, const char *cursor_name); EAPI void ecore_wl_window_cursor_default_restore(Ecore_Wl_Window *win); EAPI void ecore_wl_window_parent_set(Ecore_Wl_Window *win, Ecore_Wl_Window *parent); +EAPI Eina_Bool ecore_wl_dnd_set_selection(Ecore_Wl_Dnd *dnd, const char **types_offered); +EAPI Eina_Bool ecore_wl_dnd_get_selection(Ecore_Wl_Dnd *dnd, const char *type); +EAPI Ecore_Wl_Dnd *ecore_wl_dnd_get(); +EAPI Eina_Bool ecore_wl_dnd_start_drag(); #endif diff --git a/trunk/ecore/src/lib/ecore_wayland/ecore_wl.c b/trunk/ecore/src/lib/ecore_wayland/ecore_wl.c index c21c102..eef87bb 100644 --- a/trunk/ecore/src/lib/ecore_wayland/ecore_wl.c +++ b/trunk/ecore/src/lib/ecore_wayland/ecore_wl.c @@ -29,6 +29,10 @@ EAPI int ECORE_WL_EVENT_DND_ENTER = 0; EAPI int ECORE_WL_EVENT_DND_POSITION = 0; EAPI int ECORE_WL_EVENT_DND_LEAVE = 0; EAPI int ECORE_WL_EVENT_DND_DROP = 0; +EAPI int ECORE_WL_EVENT_DATA_SOURCE_TARGET = 0; +EAPI int ECORE_WL_EVENT_DATA_SOURCE_SEND = 0; +EAPI int ECORE_WL_EVENT_SELECTION_DATA_READY = 0; +EAPI int ECORE_WL_EVENT_DATA_SOURCE_CANCELLED = 0; EAPI int ECORE_WL_EVENT_INTERFACES_BOUND = 0; /** @@ -95,6 +99,10 @@ ecore_wl_init(const char *name) ECORE_WL_EVENT_DND_POSITION = ecore_event_type_new(); ECORE_WL_EVENT_DND_LEAVE = ecore_event_type_new(); ECORE_WL_EVENT_DND_DROP = ecore_event_type_new(); +ECORE_WL_EVENT_DATA_SOURCE_TARGET = ecore_event_type_new(); +ECORE_WL_EVENT_DATA_SOURCE_SEND = ecore_event_type_new(); +ECORE_WL_EVENT_SELECTION_DATA_READY = ecore_event_type_new(); +ECORE_WL_EVENT_DATA_SOURCE_CANCELLED = ecore_event_type_new(); ECORE_WL_EVENT_INTERFACES_BOUND = ecore_event_type_new(); } @@ -479,3 +487,9 @@ _ecore_wl_xkb_shutdown(Ecore_Wl_Display *ewd) return EINA_TRUE; } + +struct wl_data_source * +_ecore_wl_create_data_source(Ecore_Wl_Display *ewd) +{ + return wl_data_device_manager_create_data_source(ewd->wl.data_device_manager); +} diff --git a/tr
[E-devel] [PATCH 2/2 v2] elem_cnp: Add Copy and Paste support for wayland.
From: Alex Wu Just support type of ELM_SEL_TYPE_CLIPBOARD. Use HAVE_ELEMENTARY_WAYLAND macro to build againt wayland engine, and use elm_win_wl_window_get() run-time engine check. --- trunk/elementary/src/lib/elm_cnp.c | 121 +++- 1 file changed, 119 insertions(+), 2 deletions(-) diff --git a/trunk/elementary/src/lib/elm_cnp.c b/trunk/elementary/src/lib/elm_cnp.c index 6da63ad..e28a861 100644 --- a/trunk/elementary/src/lib/elm_cnp.c +++ b/trunk/elementary/src/lib/elm_cnp.c @@ -410,6 +410,28 @@ static Ecore_Event_Handler *handler_drop = NULL; static Ecore_Event_Handler *handler_enter = NULL; static Ecore_Event_Handler *handler_status = NULL; +#elif defined HAVE_ELEMENTARY_WAYLAND +static int _elm_cnp_init_count = 0; +static Eina_Bool _elm_cnp_init(void); +typedef struct _Cnp_Selection Cnp_Selection; + +struct _Cnp_Selection +{ + char *selbuf; + int buflen; + + Evas_Object *widget; + Evas_Object *requestwidget; +}; + +static Cnp_Selection cnp_selection = {0, }; + +static void +_sel_obj_del2(void *data, Evas *e __UNUSED__, Evas_Object *obj, void *event_info __UNUSED__) +{ + Cnp_Selection *sel = data; + if (sel->requestwidget == obj) sel->requestwidget = NULL; +} #endif /* Stringshared, so I can just compare pointers later */ @@ -521,6 +543,25 @@ elm_cnp_selection_set(Evas_Object *obj, Elm_Sel_Type selection, sel->selbuf = NULL; return EINA_TRUE; +#elif defined HAVE_ELEMENTARY_WAYLAND + char *types[10] = {0, }; + + if (elm_win_wl_window_get(obj) == NULL) return EINA_FALSE; + if (!_elm_cnp_init_count) _elm_cnp_init(); + + /* TODO: other EML_SEL_TYPE and ELM_SEL_FORMAT */ + if (ELM_SEL_TYPE_CLIPBOARD == selection) + { +types[0] = "text/plain;charset=utf-8"; +ecore_wl_dnd_set_selection(ecore_wl_dnd_get(), types); + +if (cnp_selection.selbuf) free(cnp_selection.selbuf); +cnp_selection.selbuf = strdup((char*)selbuf); +cnp_selection.buflen = buflen; +return EINA_TRUE; + } + + return EINA_FALSE; #else return EINA_FALSE; #endif @@ -610,6 +651,22 @@ elm_cnp_selection_get(Evas_Object *obj, Elm_Sel_Type selection, (sel->requestwidget, EVAS_CALLBACK_DEL, _sel_obj_del2, sel); return EINA_TRUE; +#elif defined HAVE_ELEMENTARY_WAYLAND + if (elm_win_wl_window_get(obj) == NULL) return EINA_FALSE; + if (!_elm_cnp_init_count) _elm_cnp_init(); + + /* For now, just avoid overlapped request */ + if (cnp_selection.requestwidget) return EINA_FALSE; + + /* TODO: other EML_SEL_TYPE and ELM_SEL_FORMAT */ + if (ELM_SEL_TYPE_CLIPBOARD == selection) + { +cnp_selection.requestwidget = obj; +evas_object_event_callback_add(cnp_selection.requestwidget, EVAS_CALLBACK_DEL, + _sel_obj_del2, &cnp_selection); +ecore_wl_dnd_get_selection(ecore_wl_dnd_get(), "text/plain;charset=utf-8"); + } + return EINA_TRUE; #else return EINA_FALSE; #endif @@ -1768,8 +1825,68 @@ tmpinfo_free(Tmp_Info *info) return 0; } -#else -/* Stubs for windows */ +#elif defined HAVE_ELEMENTARY_WAYLAND +static Eina_Bool +selection_send(void *udata, int type __UNUSED__, void *event) +{ + char *buf; + int ret, len_remained; + int len_written = 0; + Cnp_Selection *cnp_selection = udata; + Ecore_Wl_Event_Data_Source_Send *ev = event; + + len_remained = cnp_selection->buflen; + buf = cnp_selection->selbuf; + + while (len_written < cnp_selection->buflen) + { +ret = write(ev->fd, buf, len_remained); +if (ret == -1) break; +buf += ret; +len_written += ret; +len_remained -= ret; + } + + close(ev->fd); + return ECORE_CALLBACK_PASS_ON; +} + +static Eina_Bool +selection_receive(void *udata, int type __UNUSED__, void *event) +{ + Cnp_Selection *cnp_selection = udata; + Ecore_Wl_Event_Selection_Data_Ready *ev = event; + + if (cnp_selection->requestwidget) + { +if (!ev->done) + { + /* TODO BUG: should never NEVER assume it's an elm_entry! */ + _elm_entry_entry_paste(cnp_selection->requestwidget, ev->data); + } +else + { + evas_object_event_callback_del_full(cnp_selection->requestwidget, EVAS_CALLBACK_DEL, + _sel_obj_del2, cnp_selection); + cnp_selection->requestwidget = NULL; + } + } + + return ECORE_CALLBACK_PASS_ON; +} + +static Eina_Bool +_elm_cnp_init(void) +{ + if (_elm_cnp_init_count++) return EINA_TRUE; + + ecore_event_handler_add(ECORE_WL_EVENT_DATA_SOURCE_SEND, selection_send, &cnp_selection); + ecore_event_handler_add(ECORE_WL_EVENT_SELECTION_DATA_READY, selection_receive, &cnp_selection); + + return EINA_TRUE; +} + +/* Stubs for wayland */ Eina_Bool elm_drag_start(Evas_Object *o, Elm_Sel_Format f, const char *d, void (*donecb)(void *, Evas_Object *),void *cbdata)
Re: [E-devel] [PATCH] wallpaper2: implement close/apply buttons
In Svn now. Thanks :) Dh -Original Message- From: thomasg [mailto:tho...@gstaedtner.net] Sent: 01 August 2012 19:49 To: enlightenment-devel@lists.sourceforge.net Subject: Re: [E-devel] [PATCH] wallpaper2: implement close/apply buttons On Wed, Aug 1, 2012 at 8:34 PM, thomasg wrote: > On Wed, Aug 1, 2012 at 8:02 PM, Thomas Gstädtner > wrote: >> >> This patch adds a close and a apply button the the conf_wallpaper2 >> module. >> It is implemented in an extremely simple way and does NOT have the >> advanced features brought by E_Dialog (like disabling after apply). >> >> This way the selector is much more usable without having to move to >> E_Dialog completely, and thus keeping its unique design which differs >> from typical dialogs. >> >> If the whole module should be ported to E_Dialog instead, please let >> me know. >> >> Signed-off-by: Thomas Gstädtner >> --- >> .../conf_wallpaper2/e_int_config_wallpaper.c | 30 >> ++- >> 1 files changed, 28 insertions(+), 2 deletions(-) >> > > Whoops, of course I sent the wrong patch with the buttons still disabled... > Ignore the first one, here comes the correct one. > Sorry for the inconvenience. > > ~thomasg Due to popular demand, clean up trailing whitespaces for conf_wallpaper2 :P Patch is based on the previous one. ~thomasg -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] [PATCH][wayland] Fix bug in fullscreening
In svn. Thanks Rob :) Dh -Original Message- From: Bradford, Robert [mailto:robert.bradf...@intel.com] Sent: 01 August 2012 19:21 To: Enlightenment developer list Cc: Eduardo De Barros Lima Subject: [E-devel] [PATCH][wayland] Fix bug in fullscreening ChangeLog entry: 2012-08-01 Rob Bradford * Support setting fullscreen on Ecore_Evas's under the Wayland engine before they are visible. The fullscreening will then be applied when they become visible. Patch attached. Cheers, Rob -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: raster trunk/e/src/bin
I give up. Your constant reverts and refusal to submit any sort of report or do debugging make it impossible to improve this. It can stay slow and blocking forever now. On Thu, Aug 2, 2012 at 4:36 AM, Enlightenment SVN < no-re...@enlightenment.org> wrote: > Log: > unfortuntely.. i have to revert the revert to my revert... as > xsettings is still broken immediately after login and stays broken > until u restart e. :( > > > > Author: raster > Date: 2012-08-01 20:36:51 -0700 (Wed, 01 Aug 2012) > New Revision: 74772 > Trac: http://trac.enlightenment.org/e/changeset/74772 > > Modified: > trunk/e/src/bin/e_xsettings.c > > Modified: trunk/e/src/bin/e_xsettings.c > === > --- trunk/e/src/bin/e_xsettings.c 2012-08-02 01:15:38 UTC (rev 74771) > +++ trunk/e/src/bin/e_xsettings.c 2012-08-02 03:36:51 UTC (rev 74772) > @@ -51,18 +51,18 @@ > static Eio_File *eio_op = NULL; > static Eina_Bool setting = EINA_FALSE; > static Eina_Bool reset = EINA_FALSE; > -static Ecore_Idle_Enterer *xsettings_idler = NULL; > -static const char *_setting_icon_theme_name = NULL; > -static const char *_setting_theme_name = NULL; > -static const char *_setting_font_name = NULL; > -static const char *_setting_xft_dpi = NULL; > -static char *_setting_theme = NULL; > +static const char _setting_icon_theme_name[] = "Net/IconThemeName"; > +static const char _setting_theme_name[] = "Net/ThemeName"; > +static const char _setting_font_name[] = "Gtk/FontName"; > +static const char _setting_xft_dpi[] = "Xft/DPI"; > +static const char *_setting_theme = NULL; > + > static void _e_xsettings_done_cb(void *data, Eio_File *handler, const > Eina_Stat *stat); > > static Ecore_X_Atom > _e_xsettings_atom_screen_get(int screen_num) > { > - char buf[64]; > + char buf[32]; > snprintf(buf, sizeof(buf), "_XSETTINGS_S%d", screen_num); > return ecore_x_atom_get(buf); > } > @@ -128,6 +128,9 @@ > ECORE_X_EVENT_MASK_WINDOW_CONFIGURE, > ecore_x_current_time_get(), atom, > sm->selection, 0, 0); > + > + _e_xsettings_apply(sm); > + > return 1; > } > > @@ -166,6 +169,9 @@ > Eina_List *l; > > if (!name) return; > + if (name == _setting_theme_name) > + e_config->xsettings.net_theme_name_detected = value; > + name = eina_stringshare_add(name); > > EINA_LIST_FOREACH(settings, l, s) > { > @@ -175,27 +181,29 @@ > if (!value) > { > if (!s) return; > -DBG("remove %s", name); > +DBG("remove %s\n", name); > +eina_stringshare_del(name); > +eina_stringshare_del(s->name); > eina_stringshare_del(s->s.value); > settings = eina_list_remove(settings, s); > E_FREE(s); > -if (name == _setting_theme_name) > - e_config->xsettings.net_theme_name_detected = value; > return; > } > - if (!s) > + if (s) > { > -DBG("add %s %s", name, value); > +DBG("update %s %s\n", name, value); > +eina_stringshare_del(name); > +eina_stringshare_replace(&s->s.value, value); > + } > + else > + { > +DBG("add %s %s\n", name, value); > s = E_NEW(Setting, 1); > s->type = SETTING_TYPE_STRING; > s->name = name; > +s->s.value = eina_stringshare_add(value); > settings = eina_list_append(settings, s); > } > - else > - DBG("update %s %s", name, value); > - eina_stringshare_replace(&s->s.value, value); > - if (name == _setting_theme_name) > - e_config->xsettings.net_theme_name_detected = s->s.value; > > /* type + pad + name-len + last-change-serial + str_len */ > s->length = 12; > @@ -212,6 +220,7 @@ > Eina_List *l; > > if (!name) return; > + name = eina_stringshare_add(name); > > EINA_LIST_FOREACH(settings, l, s) > { > @@ -222,6 +231,8 @@ > { > if (!s) return; > DBG("remove %s\n", name); > +eina_stringshare_del(name); > +eina_stringshare_del(s->name); > settings = eina_list_remove(settings, s); > E_FREE(s); > return; > @@ -229,6 +240,7 @@ > if (s) > { > DBG("update %s %d\n", name, value); > +eina_stringshare_del(name); > s->i.value = value; > } > else > @@ -405,7 +417,7 @@ > } > eio_op = NULL; > setting = EINA_FALSE; > - E_FREE(_setting_theme); > + _setting_theme = NULL; > > if (e_config->xsettings.net_theme_name) > { > @@ -418,7 +430,7 @@ > } > > static void > -_e_xsettings_done_cb(void *data __UNUSED__, Eio_File *handler __UNUSED__, > const Eina_Stat *st __UNUSED__) > +_e_xsettings_done_cb(void *data __UNUSED__, Eio_File *handler __UNUSED__, > const Eina_Stat *stat __UNUSED__) > { > Eina_List *l; > Settings_Manager *sm; > @@ -429,10 +441,9 @@ >
Re: [E-devel] E SVN: raster trunk/e/src/bin
On Thu, 2 Aug 2012 07:28:02 +0100 Michael Blumenkrantz said: i already told you: "on initial login xsettings dont work. all gtk apps have their default look UNTIL e restarts. reverting to the svn revision i reverted to makes it work again". changes u made after that version broke it - next patch broke it. why - i don't know. i have to spend my day logging in and out to find out and i already spent a chunk doing that to identify the commit. i'm working on elm bugs atm so i'm not going to sink more time into it at this stage. > I give up. Your constant reverts and refusal to submit any sort of report > or do debugging make it impossible to improve this. It can stay slow and > blocking forever now. > > On Thu, Aug 2, 2012 at 4:36 AM, Enlightenment SVN < > no-re...@enlightenment.org> wrote: > > > Log: > > unfortuntely.. i have to revert the revert to my revert... as > > xsettings is still broken immediately after login and stays broken > > until u restart e. :( > > > > > > > > Author: raster > > Date: 2012-08-01 20:36:51 -0700 (Wed, 01 Aug 2012) > > New Revision: 74772 > > Trac: http://trac.enlightenment.org/e/changeset/74772 > > > > Modified: > > trunk/e/src/bin/e_xsettings.c > > > > Modified: trunk/e/src/bin/e_xsettings.c > > === > > --- trunk/e/src/bin/e_xsettings.c 2012-08-02 01:15:38 UTC (rev 74771) > > +++ trunk/e/src/bin/e_xsettings.c 2012-08-02 03:36:51 UTC (rev 74772) > > @@ -51,18 +51,18 @@ > > static Eio_File *eio_op = NULL; > > static Eina_Bool setting = EINA_FALSE; > > static Eina_Bool reset = EINA_FALSE; > > -static Ecore_Idle_Enterer *xsettings_idler = NULL; > > -static const char *_setting_icon_theme_name = NULL; > > -static const char *_setting_theme_name = NULL; > > -static const char *_setting_font_name = NULL; > > -static const char *_setting_xft_dpi = NULL; > > -static char *_setting_theme = NULL; > > +static const char _setting_icon_theme_name[] = "Net/IconThemeName"; > > +static const char _setting_theme_name[] = "Net/ThemeName"; > > +static const char _setting_font_name[] = "Gtk/FontName"; > > +static const char _setting_xft_dpi[] = "Xft/DPI"; > > +static const char *_setting_theme = NULL; > > + > > static void _e_xsettings_done_cb(void *data, Eio_File *handler, const > > Eina_Stat *stat); > > > > static Ecore_X_Atom > > _e_xsettings_atom_screen_get(int screen_num) > > { > > - char buf[64]; > > + char buf[32]; > > snprintf(buf, sizeof(buf), "_XSETTINGS_S%d", screen_num); > > return ecore_x_atom_get(buf); > > } > > @@ -128,6 +128,9 @@ > > ECORE_X_EVENT_MASK_WINDOW_CONFIGURE, > > ecore_x_current_time_get(), atom, > > sm->selection, 0, 0); > > + > > + _e_xsettings_apply(sm); > > + > > return 1; > > } > > > > @@ -166,6 +169,9 @@ > > Eina_List *l; > > > > if (!name) return; > > + if (name == _setting_theme_name) > > + e_config->xsettings.net_theme_name_detected = value; > > + name = eina_stringshare_add(name); > > > > EINA_LIST_FOREACH(settings, l, s) > > { > > @@ -175,27 +181,29 @@ > > if (!value) > > { > > if (!s) return; > > -DBG("remove %s", name); > > +DBG("remove %s\n", name); > > +eina_stringshare_del(name); > > +eina_stringshare_del(s->name); > > eina_stringshare_del(s->s.value); > > settings = eina_list_remove(settings, s); > > E_FREE(s); > > -if (name == _setting_theme_name) > > - e_config->xsettings.net_theme_name_detected = value; > > return; > > } > > - if (!s) > > + if (s) > > { > > -DBG("add %s %s", name, value); > > +DBG("update %s %s\n", name, value); > > +eina_stringshare_del(name); > > +eina_stringshare_replace(&s->s.value, value); > > + } > > + else > > + { > > +DBG("add %s %s\n", name, value); > > s = E_NEW(Setting, 1); > > s->type = SETTING_TYPE_STRING; > > s->name = name; > > +s->s.value = eina_stringshare_add(value); > > settings = eina_list_append(settings, s); > > } > > - else > > - DBG("update %s %s", name, value); > > - eina_stringshare_replace(&s->s.value, value); > > - if (name == _setting_theme_name) > > - e_config->xsettings.net_theme_name_detected = s->s.value; > > > > /* type + pad + name-len + last-change-serial + str_len */ > > s->length = 12; > > @@ -212,6 +220,7 @@ > > Eina_List *l; > > > > if (!name) return; > > + name = eina_stringshare_add(name); > > > > EINA_LIST_FOREACH(settings, l, s) > > { > > @@ -222,6 +231,8 @@ > > { > > if (!s) return; > > DBG("remove %s\n", name); > > +eina_stringshare_del(name); > > +eina_stringshare_del(s->name); > > settings = eina_list_re