fix nasty uncaught clip + map bug! fix fix fix!!!!!

SVN revision: 51608
This commit is contained in:
Carsten Haitzler 2010-08-24 08:14:46 +00:00
parent 5ba73113af
commit 716211ade3
1 changed files with 15 additions and 2 deletions

View File

@ -754,6 +754,11 @@ evas_render_mapped(Evas *e, Evas_Object *obj, void *context, void *surface,
obj->cur.geometry.y + off_y,
obj->cur.geometry.w,
obj->cur.geometry.h);
RECTS_CLIP_TO_RECT(x, y, w, h,
obj->cur.cache.clip.x + off_x,
obj->cur.cache.clip.y + off_y,
obj->cur.cache.clip.w,
obj->cur.cache.clip.h);
e->engine.func->context_clip_set(e->engine.data.output,
ctx, x, y, w, h);
obj->func->render(obj, e->engine.data.output, ctx,
@ -803,8 +808,16 @@ evas_render_mapped(Evas *e, Evas_Object *obj, void *context, void *surface,
}
}
else
obj->func->render(obj, e->engine.data.output, ctx,
surface, off_x, off_y);
{
e->engine.func->context_clip_set(e->engine.data.output,
ctx,
obj->cur.cache.clip.x + off_x,
obj->cur.cache.clip.y + off_y,
obj->cur.cache.clip.w,
obj->cur.cache.clip.h);
obj->func->render(obj, e->engine.data.output, ctx,
surface, off_x, off_y);
}
e->engine.func->context_free(e->engine.data.output, ctx);
}
else