summaryrefslogtreecommitdiff
path: root/include/scrnintstr.h
diff options
context:
space:
mode:
authorPeter Hutterer <peter@cs.unisa.edu.au>2007-04-09 19:31:59 +0930
committerPeter Hutterer <peter@cs.unisa.edu.au>2007-04-09 19:31:59 +0930
commitf1f8b562aaaa6ec32ab0d0697f964d92d6d536a4 (patch)
tree738183e43a1ad5d990cd7197b2aa6fa91379edc7 /include/scrnintstr.h
parent7cef789fa13ae53bfba6dc7b5a7928b7362b2522 (diff)
Alloc sprite memory in devices' devPrivates, allow undisplaying cursors.
Improve memory usage by allocating the sprite's memory only to devices that actually have a sprite and provide means to remove a device's cursor from the screen (more hotplugging, yay!). This commit breaks ScreenRec's ABI.
Diffstat (limited to 'include/scrnintstr.h')
-rw-r--r--include/scrnintstr.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/include/scrnintstr.h b/include/scrnintstr.h
index 0d468c338..3cfd6c381 100644
--- a/include/scrnintstr.h
+++ b/include/scrnintstr.h
@@ -431,6 +431,18 @@ typedef void (* MarkUnrealizedWindowProcPtr)(
WindowPtr /*pWin*/,
Bool /*fromConfigure*/);
+typedef void (* UndisplayCursorProcPtr)(
+ DeviceIntPtr /* pDev */,
+ ScreenPtr /* pScreen */);
+
+typedef Bool (* DeviceCursorInitializeProcPtr)(
+ DeviceIntPtr /* pDev */,
+ ScreenPtr /* pScreen */);
+
+typedef void (* DeviceCursorCleanupProcPtr)(
+ DeviceIntPtr /* pDev */,
+ ScreenPtr /* pScreen */);
+
typedef struct _Screen {
int myNum; /* index of this instance in Screens[] */
ATOM id;
@@ -587,6 +599,10 @@ typedef struct _Screen {
ChangeBorderWidthProcPtr ChangeBorderWidth;
MarkUnrealizedWindowProcPtr MarkUnrealizedWindow;
+ /* Device cursor procedures */
+ UndisplayCursorProcPtr UndisplayCursor;
+ DeviceCursorInitializeProcPtr DeviceCursorInitialize;
+ DeviceCursorCleanupProcPtr DeviceCursorCleanup;
} ScreenRec;
typedef struct _ScreenInfo {