summaryrefslogtreecommitdiff
path: root/mi/mipointer.h
diff options
context:
space:
mode:
authorDaniel Stone <daniel@fooishbar.org>2006-10-08 20:34:32 +0300
committerDaniel Stone <daniels@endtroducing.fooishbar.org>2006-10-08 20:34:32 +0300
commit41bb9fce47f6366cc3f7d45790f7883f74289b5a (patch)
treea14e527db23b262d42f289082967974a3bc28d29 /mi/mipointer.h
parentbe8dfafd1d58b27bbfd953fc1216311523353db1 (diff)
mipointer: take device arguments, split miPointerAbsoluteCursor
Update mipointer API to take a device argument to (almost) all functions, and split miPointerAbsoluteCursor into a couple of separate functions. Remove miPointerAbsoluteCursor call from mieq, as we now deal with it in GetPointerEvents. Make miPointerSetPosition (successor of miPointerAbsoluteCursor) take pointers to x and y, so it can return the clipped values. Modify callers of miPointer*() functions to generally use the new functions. This should fix things with multi-head setups.
Diffstat (limited to 'mi/mipointer.h')
-rw-r--r--mi/mipointer.h29
1 files changed, 26 insertions, 3 deletions
diff --git a/mi/mipointer.h b/mi/mipointer.h
index a910de61e..82ff045d6 100644
--- a/mi/mipointer.h
+++ b/mi/mipointer.h
@@ -149,22 +149,45 @@ extern ScreenPtr miPointerCurrentScreen(
extern ScreenPtr miPointerGetScreen(
DeviceIntPtr pDev);
extern void miPointerSetScreen(
- DeviceIntPtr pDev);
+ DeviceIntPtr pDev,
+ int screen_num,
+ int x,
+ int y);
+/* Returns the current cursor position. */
extern void miPointerGetPosition(
DeviceIntPtr pDev,
int *x,
int *y);
+/* Moves the cursor to the specified position. May clip the co-ordinates:
+ * x and y are modified in-place. */
extern void miPointerSetPosition(
DeviceIntPtr pDev,
- int x,
- int y,
+ int *x,
+ int *y,
unsigned long time);
extern void miPointerUpdateSprite(
DeviceIntPtr pDev);
+/* Moves the sprite to x, y on the current screen, and updates the event
+ * history. */
+extern void miPointerMoved(
+ DeviceIntPtr pDev,
+ ScreenPtr pScreen,
+ int x,
+ int y,
+ unsigned long time);
+
+/* Updates the event history. */
+extern void miPointerUpdateHistory(
+ DeviceIntPtr pDev,
+ ScreenPtr pScreen,
+ int x,
+ int y,
+ unsigned long time);
+
extern int miPointerScreenIndex;
#endif /* MIPOINTER_H */