[PATCH 00/11] Misc window exposure/validation cleanups

Adam Jackson ajax at redhat.com
Fri Sep 19 07:15:15 PDT 2014


On Thu, 2014-09-18 at 15:49 -0700, Keith Packard wrote:
> Adam Jackson <ajax at redhat.com> writes:
> 
> > In attempting to get the Always mode of backing store working again, I
> > felt the urge to clean the place up a bit.  The most notable change here
> > is removing the (questionable) optimization from exposure event generation
> > to emit a bounding-box event when faced with more than 25 rects in the
> > exposed region.  Given that toolkits already coalesce consecutive expose
> > boxes, and that you'll never hit it in a composited environment anyway,
> > the complexity doesn't seem justified.
> 
> This was written to address shaped windows, which can still generate a
> large number of rectangles, even in a composited environment. I think
> xeyes was the original test case; a full-screen xeyes window has a
> couple thousand rectangles, or about 64kB of data.
> 
> I suspect an xeyes-specific optimization is not all that useful to keep
> around, but I fear that some user somewhere is taking advantage of this...

Fair.  How about moving that heuristic down to event emission
(miHandleExposures and SendGraphicsExpose)?  That way it's obvious that
it's a protocol-facing heuristic, and we can still drop the wrap in
mioverlay.

- ajax



More information about the xorg-devel mailing list