summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Coopersmith <alan.coopersmith@sun.com>2008-11-05 19:26:38 -0800
committerAlan Coopersmith <alan.coopersmith@sun.com>2008-11-05 19:26:38 -0800
commitdaac081f34baab7388a8c42e5a80a42cd6810d75 (patch)
tree849f3b885d00234b53f9fb24c01578b7be58d285
parent431982e7c04ec076eeafd57190db4d7d901efa7c (diff)
sun_mouse.c: Use miPointerGetScreen instead of miPointerCurrentScreen
-rw-r--r--src/sun_mouse.c22
1 files changed, 19 insertions, 3 deletions
diff --git a/src/sun_mouse.c b/src/sun_mouse.c
index d0867f1..ee3ddd5 100644
--- a/src/sun_mouse.c
+++ b/src/sun_mouse.c
@@ -397,9 +397,16 @@ vuidReadInput(InputInfoPtr pInfo)
#endif
#ifdef HAVE_ABSOLUTE_MOUSE_SCALING
else if (pVuidMse->event.id == MOUSE_TYPE_ABSOLUTE) {
+ ScreenPtr ptrCurScreen;
+
/* force sending absolute resolution scaling ioctl */
pVuidMse->absres.height = pVuidMse->absres.width = 0;
- vuidMouseSendScreenSize(miPointerCurrentScreen(), pVuidMse);
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
+ ptrCurScreen = miPointerCurrentScreen();
+#else
+ ptrCurScreen = miPointerGetScreen(pInfo->dev);
+#endif
+ vuidMouseSendScreenSize(ptrCurScreen, pVuidMse);
}
#endif
@@ -457,6 +464,7 @@ static void vuidMouseAdjustFrame(int index, int x, int y, int flags)
xf86AdjustFrameProc *wrappedAdjustFrame
= (xf86AdjustFrameProc *) vuidMouseGetScreenPrivate(pScreen);
VuidMsePtr m;
+ ScreenPtr ptrCurScreen;
if(wrappedAdjustFrame) {
pScrn->AdjustFrame = wrappedAdjustFrame;
@@ -464,8 +472,16 @@ static void vuidMouseAdjustFrame(int index, int x, int y, int flags)
pScrn->AdjustFrame = vuidMouseAdjustFrame;
}
- if (miPointerCurrentScreen() == pScreen) {
- for (m = vuidMouseList; m != NULL ; m = m->next) {
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
+ ptrCurScreen = miPointerCurrentScreen();
+#endif
+
+ for (m = vuidMouseList; m != NULL ; m = m->next) {
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 0
+ ptrCurScreen = miPointerGetScreen(m->pInfo->dev);
+#endif
+ if (ptrCurScreen == pScreen)
+ {
vuidMouseSendScreenSize(pScreen, m);
}
}