Re: [E-devel] E CVS: apps/e rephorm
Enlightenment CVS wrote: > diff -u -3 -r1.586 -r1.587 > --- e_border.c11 Apr 2007 15:37:03 - 1.586 > +++ e_border.c13 Apr 2007 01:47:56 - 1.587 > @@ -4342,11 +4342,10 @@ > > bd = l->data; > if (bd->desktop == event->previous) > - { > bd->desktop = event->current; > -bd->changes.icon = 1; > -bd->changed = 1; > - } > + /* check all borders. the updated icon may now apply to them > (e.g. adding a StartupWMClass) */ > + bd->changes.icon = 1; > + bd->changed = 1; > } >break; > } You need to set ->desktop to NULL if e is to search for a new .desktop file. Sebastian - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV ___ enlightenment-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E CVS: apps/e rephorm
On Mon, 14 Aug 2006 15:42:34 -0500 [EMAIL PROTECTED] babbled: > On Mon, Aug 14, 2006 at 02:27:03PM +0900, Carsten Haitzler wrote: > > noo noo! use an ecore job! idlers run continually after entering idle! :) > > > > Raster and I talked about this on IRC, but as a heads up to everyone else: > > First a quick overiview. > > Ecore_Idle_Enterers > run when we go idle. generally this will be AFTER evas' render (which > is also an idle enterer, but is generally added before any others) > > Ecore_Idlers > get run continuously while idle. > > Ecore_Idle_Exiters > run just before events start getting processed again > > Ecore_Jobs > run "later". basically, an event is added that calls the job. any > events already in the queue by the time the current event gets > processed will be dealt with before the job runs. > > > For the spectrum object, I needed to rebuild the image data whenever the > currently selected color changed (e.g. dragging in one of the csliders, or > editing one of the text entries). On change, i called a spectrum_update > function, which then created an Ecore_Job to do the actual draw. > > I was assuming that if we got several change events quickly, they would > get processed before the job ran, giving us a single draw. e.g. > > Change Event > Update > Add Job > (Several other change events whose > updates do nothing) > Draw > > > But, this wasn't the case. What I actually got was Change > Add Job > > Draw > Change > Add Job > Draw. That is, a draw immediately after the > change occured. > > Idlers, enterers and exiters all occured AFTER evas rendered, so the > state was always one event behind. > > I finally ended up using a short timer (.001 sec), which works. (Draw is > delayed long enough for successive quick change events to do nothing). > > So, if anyone else is doing a smart object that needs to draw itself, do > something like this for now. Eventually we'll add pre/post_render > callbacks to evas (which would be a more appropriate place to do such a > thing). i can see the use of pre/post render callbacks per object and for a canvas as a whole. as a mater of fact ecore_evas does provide this - but i think evas itself should provide hooks for evas_render(). i will look into this... > rephorm. > > > On Mon, 14 Aug 2006 01:21:16 -0400 (EDT) Enlightenment CVS > > <[EMAIL PROTECTED]> babbled: > > > > > Enlightenment CVS committal > > > > > > Author : rephorm > > > Project : e17 > > > Module : apps/e > > > > > > Dir : e17/apps/e/src/bin > > > > > > > > > Modified Files: > > > e_spectrum.c > > > > > > > > > Log Message: > > > > > > move spectrum redraw to an idler so it gets called at most once per > > > render. no more performance issue there... :) > > > - > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > ___ > 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)[EMAIL PROTECTED] 裸好多 Tokyo, Japan (東京 日本) - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E CVS: apps/e rephorm
> +* add a dialog to allow selecting the default border from among those present > + in the theme (e.g. winter provides a 'square' border). after a theme change > + this should fall back to "default" if the selected one doesn't exist in the > + new theme. Wouldn't you need a full set of optional borders? square_dialog etc? Sebastian - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E CVS: apps/e rephorm
On Mon, Aug 14, 2006 at 02:27:03PM +0900, Carsten Haitzler wrote: > noo noo! use an ecore job! idlers run continually after entering idle! :) > Raster and I talked about this on IRC, but as a heads up to everyone else: First a quick overiview. Ecore_Idle_Enterers run when we go idle. generally this will be AFTER evas' render (which is also an idle enterer, but is generally added before any others) Ecore_Idlers get run continuously while idle. Ecore_Idle_Exiters run just before events start getting processed again Ecore_Jobs run "later". basically, an event is added that calls the job. any events already in the queue by the time the current event gets processed will be dealt with before the job runs. For the spectrum object, I needed to rebuild the image data whenever the currently selected color changed (e.g. dragging in one of the csliders, or editing one of the text entries). On change, i called a spectrum_update function, which then created an Ecore_Job to do the actual draw. I was assuming that if we got several change events quickly, they would get processed before the job ran, giving us a single draw. e.g. Change Event > Update > Add Job > (Several other change events whose updates do nothing) > Draw But, this wasn't the case. What I actually got was Change > Add Job > Draw > Change > Add Job > Draw. That is, a draw immediately after the change occured. Idlers, enterers and exiters all occured AFTER evas rendered, so the state was always one event behind. I finally ended up using a short timer (.001 sec), which works. (Draw is delayed long enough for successive quick change events to do nothing). So, if anyone else is doing a smart object that needs to draw itself, do something like this for now. Eventually we'll add pre/post_render callbacks to evas (which would be a more appropriate place to do such a thing). rephorm. > On Mon, 14 Aug 2006 01:21:16 -0400 (EDT) Enlightenment CVS > <[EMAIL PROTECTED]> babbled: > > > Enlightenment CVS committal > > > > Author : rephorm > > Project : e17 > > Module : apps/e > > > > Dir : e17/apps/e/src/bin > > > > > > Modified Files: > > e_spectrum.c > > > > > > Log Message: > > > > move spectrum redraw to an idler so it gets called at most once per render. > > no more performance issue there... :) - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E CVS: apps/e rephorm
On Mon, 14 Aug 2006 01:21:16 -0400 (EDT) Enlightenment CVS <[EMAIL PROTECTED]> babbled: noo noo! use an ecore job! idlers run continually after entering idle! :) > Enlightenment CVS committal > > Author : rephorm > Project : e17 > Module : apps/e > > Dir : e17/apps/e/src/bin > > > Modified Files: > e_spectrum.c > > > Log Message: > > move spectrum redraw to an idler so it gets called at most once per render. > no more performance issue there... :) > > === > RCS file: /cvs/e/e17/apps/e/src/bin/e_spectrum.c,v > retrieving revision 1.1 > retrieving revision 1.2 > diff -u -3 -r1.1 -r1.2 > --- e_spectrum.c 14 Aug 2006 04:38:49 - 1.1 > +++ e_spectrum.c 14 Aug 2006 05:21:16 - 1.2 > @@ -14,8 +14,11 @@ >E_Color_Component mode; > >E_Color *cv; > + int draw_queued; > }; > > +static int _e_spectrum_redraw(void *d); > + > static void > _e_spectrum_smart_add(Evas_Object *o) > { > @@ -33,6 +36,8 @@ >evas_object_image_size_set(sp->o_spectrum, sp->iw, sp->ih); >evas_object_image_alpha_set(sp->o_spectrum, 1); > > + ecore_idler_add(_e_spectrum_redraw, sp); > + >evas_object_smart_member_add(sp->o_spectrum, o); > } > > @@ -243,16 +248,16 @@ >if (b) *b = bb; > } > > -void > -_e_spectrum_update(E_Spectrum *sp) > +static int > +_e_spectrum_redraw(void *d) > { > + E_Spectrum *sp = d; > + int *data; >int i, j; >int r, g, b; > - int *data; >float vx, vy, vz; > - if (!sp || !sp->cv) return; > > - //printf("UPDATE SPECTRUM\n"); > + if (!sp->draw_queued) return 1; >data = evas_object_image_data_get(sp->o_spectrum, 1); >if (!data) return; > > @@ -292,8 +297,17 @@ > >evas_object_image_data_set(sp->o_spectrum, data); >evas_object_image_data_update_add(sp->o_spectrum, 0, 0, sp->iw, sp->ih); > + sp->draw_queued = 0; > + return 1; > } > > +static void > +_e_spectrum_update(E_Spectrum *sp) > +{ > + if (!sp || !sp->cv) return; > + > + sp->draw_queued = 1; > +} > > Evas_Object * > e_spectrum_add(Evas *e) > > > > - > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > ___ > enlightenment-cvs mailing list > enlightenment-cvs@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs > -- - Codito, ergo sum - "I code, therefore I am" -- The Rasterman (Carsten Haitzler)[EMAIL PROTECTED] 裸好多 Tokyo, Japan (東京 日本) - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel