[PATCH] mi: removed the invisible cursor sprite; use NullCursor instead.

Tiago Vignatti tiago.vignatti at nokia.com
Tue May 18 05:54:01 PDT 2010


On Mon, May 17, 2010 at 06:43:54PM +0200, ext Keith Packard wrote:
> On Mon, 17 May 2010 07:50:25 +0300, Oliver McFadden <oliver.mcfadden at nokia.com> wrote:
> > Previously the cursor code would be called even with a "hidden" cursor.
> > This was because the X server used an invisible 1x1 cursor sprite,
> > rather than a NULL cursor.
> > 
> > This will help performance when XDefineCursor() is never called, and
> > also when the cursor is hidden via XFixesHideCursor() as there are no
> > damage events generated via the MI functions.
> > 
> > Note that this only applies for software cursors.
> 
> This comment seems confusing -- does this mean that the hardware
> cursor path will need fixing too?

yeah, I thought a bit confusing as well. I'd change the commit message for
something like this:

---
[PATCH] mi, xfixes: do not damage screen when sw cursors are hidden

X server doesn't need to render and damage regions on screen when software
cursors are hidden. This patch introduces a modification in XFixes by sending
a nil cursor to mi when a hidden cursor is required.

A customized in-house benchmark shows 10% of FPS improvement when applying
this patch -- no refs though. Sorry.
---


Cheers,

        Tiago



More information about the xorg-devel mailing list