fix proxy rendering!!!! ugh. i dont like the way i did it.. but its

quick and does the job.



SVN revision: 62631
This commit is contained in:
Carsten Haitzler 2011-08-20 14:40:28 +00:00
parent 87985a16fa
commit db56e7b36f
3 changed files with 15 additions and 2 deletions

View File

@ -2231,8 +2231,16 @@ _proxy_subrender(Evas *e, Evas_Object *source)
source->proxy.w = w;
source->proxy.h = h;
}
ctx = e->engine.func->context_new(e->engine.data.output);
evas_render_mapped(e, source, ctx, source->proxy.surface,
-source->cur.geometry.x,
-source->cur.geometry.y,
1, 0, 0, e->output.w, e->output.h);
e->engine.func->context_free(e->engine.data.output, ctx);
source->proxy.surface = e->engine.func->image_dirty_region
(e->engine.data.output, source->proxy.surface, 0, 0, w, h);
/*
e->engine.func->context_color_set(e->engine.data.output, ctx, 0, 0, 0, 0);
e->engine.func->context_render_op_set(e->engine.data.output, ctx, EVAS_RENDER_COPY);
e->engine.func->rectangle_draw(e->engine.data.output, ctx,
@ -2265,6 +2273,7 @@ _proxy_subrender(Evas *e, Evas_Object *source)
e->engine.func->context_free(e->engine.data.output, ctx);
source->proxy.surface = e->engine.func->image_dirty_region
(e->engine.data.output, source->proxy.surface, 0, 0, w, h);
*/
}
#if 0 // filtering disabled

View File

@ -647,7 +647,7 @@ pending_change(void *data, void *gdata __UNUSED__)
}
*/
static Eina_Bool
Eina_Bool
evas_render_mapped(Evas *e, Evas_Object *obj, void *context, void *surface,
int off_x, int off_y, int mapped,
int ecx, int ecy, int ecw, int ech

View File

@ -989,6 +989,10 @@ void _evas_unwalk(Evas *e);
// expose for use in engines
EAPI int _evas_module_engine_inherit(Evas_Func *funcs, char *name);
Eina_Bool evas_render_mapped(Evas *e, Evas_Object *obj,
void *context, void *surface,
int off_x, int off_y, int mapped,
int ecx, int ecy, int ecw, int ech);
void evas_render_invalidate(Evas *e);
void evas_render_object_recalc(Evas_Object *obj);