Updates spec for Xfixes 3.1: Hide/ShowCursor

Deron Johnson Deron.Johnson at Sun.COM
Mon Feb 13 17:12:03 PST 2006


Here is the specification for the Hide/ShowCursor extension that I
mentioned at the Xorg Developer's Conference. This is an addition
to the Xfixes extension (Version 3.1). This extension provides
a way for composite managers to render the cursor themselves,
without getting a double cursor image.

Unless anyone has any objections, I will integrate the code for
this into the CVS head this coming Friday (2/17).

---------------------------------------------------------------------

Author:            Deron Johnson
Document Version:  0.4 (DRAFT)
Date:		   Mon Feb 13 16:44:10 PST 2006
Subject:	   Proposal for Version 3.1 of Xfixes Extension

Add: Cursor Visibility Modification
-----------------------------------

Requests:

HideCursor
	window:			Window

        This request indicates that the requesting client wishes
	the cursor to be hidden (i.e. to not be displayed) when
	the sprite resides on the screen for the specified window.
        When one or more clients have requested the cursor to
        be hidden on a screen, the cursor image will not be
        displayed on this screen.

	The ShowCursor request is used to reverse the effect of
        a HideCursor request. Clients can call HideCursor multiple
        times. If the client has called HideCursor one or more
        times then ShowCursor must be called that many times to
        make the cursor again visible. Only when all clients
        who have sent HideCursor requests have reversed these
        with ShowCursor requests will the cursor once again be
        displayed.

	When a client with N outstanding HideCursor requests
        terminates its connection, these N requests will be
        removed, as if client had sent N ShowCursor requests
        before terminating.

	Note that even though cursor hiding causes the cursor image
	to be invisible, CursorNotify events will still be sent
        normally, as if the cursor image were visible.

ShowCursor
	window:			Window

        This request reverses the effect of one HideCursor request
        made by the same client.

        If the client has made no outstanding HideCursor requests
        a BadMatch error is generated.




More information about the xorg mailing list