[compiz] Get window textures even when they're transformed.

Stjepan Glavina stjepang at gmail.com
Fri Jan 26 00:14:53 PST 2007


If I wobble a window and quickly initiate switcher or cube, this can
cause weird artifacts.

I had a look at Beryl's switcher.c
In switchPaintThumb they use this:

static void
switchPaintThumb(...)
{
	DrawWindowGeometryProc oldDrawWindowGeometry;
	AddWindowGeometryProc oldAddWindowGeometry;
	WindowPaintAttrib sAttrib = *attrib;
	int wx, wy;
	float width, height;
	CompIcon *icon = NULL;

	/* Wrap drawWindowGeometry to make sure the general
	   drawWindowGeometry function is used */

	oldDrawWindowGeometry = w->screen->drawWindowGeometry;
	w->screen->drawWindowGeometry = getBaseDrawWindowGeometry();
	oldAddWindowGeometry = w->screen->addWindowGeometry;
	w->screen->addWindowGeometry = getBaseAddWindowGeometry();
	
	...... calulating and painting .......

	w->screen->drawWindowGeometry = oldDrawWindowGeometry;
	w->screen->addWindowGeometry = oldAddWindowGeometry;
}

Why Compiz's switcher.c doesn't use this?

Stjepan



More information about the compiz mailing list