Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 152065 Details for
Bug 214233
Update of xorg-server-1.4 ebuild fixing a crash on startup, and wacom resolution issue
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch from upstream (git)
1.4-magnus-4-Skip-call-to-clipAxis-for-relative-core-events.patch (text/plain), 3.29 KB, created by
Gautam Iyer
on 2008-05-06 07:02:37 UTC
(
hide
)
Description:
Patch from upstream (git)
Filename:
MIME Type:
Creator:
Gautam Iyer
Created:
2008-05-06 07:02:37 UTC
Size:
3.29 KB
patch
obsolete
>From: Magnus Vigerlöf <Magnus.Vigerlof@ipbo.se> >Date: Sat, 2 Feb 2008 22:03:51 +0000 (+0100) >Subject: dix: Skip call to clipAxis for relative core-events >X-Git-Url: http://gitweb.freedesktop.org/?p=xorg/xserver.git;a=commitdiff;h=a0284d577aabea8406b72dd63773e341430ebe56 > >dix: Skip call to clipAxis for relative core-events > >Relative events that generates both core and extention >events will have its axis cliped and screen changed by >miPointerSetPosition when the events are processed. For >absolute and non core-generating relative events the >axis must be clipped if we shouldn't end up completely >outside the defined ranges (if any). >--- > >--- a/dix/getevents.c >+++ b/dix/getevents.c >@@ -609,6 +609,10 @@ GetPointerEvents(xEvent *events, DeviceI > y = cp->valuator->lasty; > } > } >+ >+ /* Clip both x and y to the defined limits (usually co-ord space limit). */ >+ clipAxis(pDev, 0, &x); >+ clipAxis(pDev, 1, &y); > } > else { > if (flags & POINTER_ACCELERATE) >@@ -647,22 +651,22 @@ GetPointerEvents(xEvent *events, DeviceI > y += valuators[1 - first_valuator]; > } > else { >+ x = pDev->valuator->lastx; >+ y = pDev->valuator->lasty; > if (first_valuator == 0 && num_valuators >= 1) >- x = pDev->valuator->lastx + valuators[0]; >- else >- x = pDev->valuator->lastx; >- >+ x += valuators[0]; > if (first_valuator <= 1 && num_valuators >= (2 - first_valuator)) >- y = pDev->valuator->lasty + valuators[1 - first_valuator]; >- else >- y = pDev->valuator->lasty; >+ y += valuators[1 - first_valuator]; >+ >+ if(!coreOnly) { >+ /* Since we're not sending core-events we must clip both x and y >+ * to the defined limits so we don't run outside the box. */ >+ clipAxis(pDev, 0, &x); >+ clipAxis(pDev, 1, &y); >+ } > } > } > >- /* Clip both x and y to the defined limits (usually co-ord space limit). */ >- clipAxis(pDev, 0, &x); >- clipAxis(pDev, 1, &y); >- > /* Drop x and y back into the valuators list, if they were originally > * present. */ > if (first_valuator == 0 && num_valuators >= 1) >@@ -695,6 +699,24 @@ GetPointerEvents(xEvent *events, DeviceI > miPointerSetPosition(pDev, &x, &y, ms); > > if (pDev->coreEvents) { >+ /* miPointerSetPosition may have changed screen */ >+ scr = miPointerGetScreen(pDev); >+ if(x != cp->valuator->lastx) { >+ int min = pDev->valuator->axes[0].min_value; >+ int max = pDev->valuator->axes[0].max_value; >+ cp->valuator->lastx = pDev->valuator->lastx = x; >+ if(min < max) >+ pDev->valuator->lastx = (int)((float)(x)*(max-min+1)/scr->width)+min; >+ } >+ if(y != cp->valuator->lasty) { >+ int min = pDev->valuator->axes[1].min_value; >+ int max = pDev->valuator->axes[1].max_value; >+ cp->valuator->lasty = pDev->valuator->lasty = y; >+ if(min < max) >+ pDev->valuator->lasty = (int)((float)(y)*(max-min+1)/scr->height)+min; >+ } >+ } >+ else if (coreOnly) { > cp->valuator->lastx = x; > cp->valuator->lasty = y; > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 214233
:
146863
|
146864
|
146949
|
146951
|
146971
|
152057
|
152059
|
152061
|
152063
| 152065 |
152067