On Fri, 14 Oct 2011 10:01:19 -0300 Gustavo Sverzut Barbieri
<barbi...@profusion.mobi> said:

done :)

> I'm on the road (actually about to get into a plane), would you apply this
> to EWS engine as well? It's basically a copy of buffer with few changes
> 
> On Friday, October 14, 2011, Enlightenment SVN <no-re...@enlightenment.org>
> wrote:
> > Log:
> > 1. make inline image ee buffer non-alpha by default. thats the default
> >  for all eee's. this was wrong.
> >  2. make sure it sets back data when finished - check data in and check
> >  it out.
> >
> >
> >
> > Author:       raster
> > Date:         2011-10-14 00:28:45 -0700 (Fri, 14 Oct 2011)
> > New Revision: 64069
> > Trac:         http://trac.enlightenment.org/e/changeset/64069
> >
> > Modified:
> >  trunk/ecore/src/lib/ecore_evas/ecore_evas_buffer.c
> >
> > Modified: trunk/ecore/src/lib/ecore_evas/ecore_evas_buffer.c
> > ===================================================================
> > --- trunk/ecore/src/lib/ecore_evas/ecore_evas_buffer.c  2011-10-14
> 07:23:09 UTC (rev 64068)
> > +++ trunk/ecore/src/lib/ecore_evas/ecore_evas_buffer.c  2011-10-14
> 07:28:45 UTC (rev 64069)
> > @@ -86,6 +86,8 @@
> >              ERR("evas_engine_info_set() for engine '%s' failed.",
> ee->driver);
> >           }
> >      }
> > +   if (ee->engine.buffer.image)
> > +      evas_object_image_data_set(ee->engine.buffer.image,
> ee->engine.buffer.pixels);
> >    if (ee->func.fn_resize) ee->func.fn_resize(ee);
> >  }
> >
> > @@ -93,9 +95,6 @@
> >  _ecore_evas_buffer_shutdown(void)
> >  {
> >    _ecore_evas_init_count--;
> > -   if (_ecore_evas_init_count == 0)
> > -     {
> > -     }
> >    if (_ecore_evas_init_count < 0) _ecore_evas_init_count = 0;
> >    return _ecore_evas_init_count;
> >  }
> > @@ -111,7 +110,7 @@
> >      {
> >         if (ee2->func.fn_pre_render) ee2->func.fn_pre_render(ee2);
> >         if (ee2->engine.func->fn_render)
> > -          rend |= ee2->engine.func->fn_render(ee2);
> > +           rend |= ee2->engine.func->fn_render(ee2);
> >         if (ee2->func.fn_post_render) ee2->func.fn_post_render(ee2);
> >      }
> >    if (ee->engine.buffer.image)
> > @@ -120,16 +119,18 @@
> >
> >         evas_object_image_size_get(ee->engine.buffer.image, &w, &h);
> >         if ((w != ee->w) || (h != ee->h))
> > -          _ecore_evas_resize(ee, w, h);
> > +           _ecore_evas_resize(ee, w, h);
> > +        ee->engine.buffer.pixels =
> evas_object_image_data_get(ee->engine.buffer.image, 1);
> >      }
> >    updates = evas_render_updates(ee->evas);
> >    if (ee->engine.buffer.image)
> >      {
> >         Eina_Rectangle *r;
> >
> > +        evas_object_image_data_set(ee->engine.buffer.image,
> ee->engine.buffer.pixels);
> >         EINA_LIST_FOREACH(updates, l, r)
> > -          evas_object_image_data_update_add(ee->engine.buffer.image,
> > -                                            r->x, r->y, r->w, r->h);
> > +           evas_object_image_data_update_add(ee->engine.buffer.image,
> > +                                             r->x, r->y, r->w, r->h);
> >      }
> >    if (updates)
> >      {
> > @@ -451,6 +452,8 @@
> >  {
> >    if (((ee->alpha) && (alpha)) || ((!ee->alpha) && (!alpha))) return;
> >    ee->alpha = alpha;
> > +   if (ee->engine.buffer.image)
> > +      evas_object_image_alpha_set(ee->engine.buffer.image, ee->alpha);
> >  }
> >
> >  static Ecore_Evas_Engine_Func _ecore_buffer_engine_func =
> > @@ -662,7 +665,7 @@
> >    Evas_Engine_Info_Buffer *einfo;
> >    Ecore_Evas *ee;
> >    int rmethod;
> > -   int w, h;
> > +   int w = 1, h = 1;
> >
> >    rmethod = evas_render_method_lookup("buffer");
> >    if (!rmethod) return NULL;
> > @@ -672,6 +675,8 @@
> >    o = evas_object_image_add(ee_target->evas);
> >    evas_object_image_content_hint_set(o, EVAS_IMAGE_CONTENT_HINT_DYNAMIC);
> >    evas_object_image_colorspace_set(o, EVAS_COLORSPACE_ARGB8888);
> > +   evas_object_image_alpha_set(o, 0);
> > +   evas_object_image_size_set(o, w, h);
> >
> >    ECORE_MAGIC_SET(ee, ECORE_MAGIC_EVAS);
> >
> > @@ -681,8 +686,6 @@
> >
> >    ee->driver = "buffer";
> >
> > -   w = 1;
> > -   h = 1;
> >    ee->rotation = 0;
> >    ee->visible = 0;
> >    ee->w = w;
> > @@ -709,10 +712,6 @@
> >    ee->engine.buffer.image = o;
> >    evas_object_data_set(ee->engine.buffer.image, "Ecore_Evas", ee);
> >    evas_object_data_set(ee->engine.buffer.image, "Ecore_Evas_Parent",
> ee_target);
> > -   evas_object_image_size_set(o, ee->w, ee->h);
> > -   evas_object_image_alpha_set(o, 1);
> > -   ee->engine.buffer.pixels = evas_object_image_data_get(o, 1);
> > -   evas_object_image_data_set(o, ee->engine.buffer.pixels);
> >    evas_object_event_callback_add(ee->engine.buffer.image,
> >                                   EVAS_CALLBACK_MOUSE_IN,
> >                                   _ecore_evas_buffer_cb_mouse_in, ee);
> > @@ -764,6 +763,7 @@
> >    einfo = (Evas_Engine_Info_Buffer *)evas_engine_info_get(ee->evas);
> >    if (einfo)
> >      {
> > +        ee->engine.buffer.pixels = evas_object_image_data_get(o, 1);
> >         einfo->info.depth_type = EVAS_ENGINE_BUFFER_DEPTH_ARGB32;
> >         einfo->info.dest_buffer = ee->engine.buffer.pixels;
> >         einfo->info.dest_buffer_row_bytes =
> evas_object_image_stride_get(o);
> > @@ -771,6 +771,7 @@
> >         einfo->info.alpha_threshold = 0;
> >         einfo->info.func.new_update_region = NULL;
> >         einfo->info.func.free_update_region = NULL;
> > +        evas_object_image_data_set(o, ee->engine.buffer.pixels);
> >         if (!evas_engine_info_set(ee->evas, (Evas_Engine_Info *)einfo))
> >           {
> >              ERR("evas_engine_info_set() for engine '%s' failed.",
> ee->driver);
> >
> >
> >
> ------------------------------------------------------------------------------
> > 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
> >
> 
> -- 
> 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
> 


-- 
------------- 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

Reply via email to