I use xrandr for scaling to make a small netbook screen able to display apps that don't fit in 1024x600 and noticed this regression over the last year in 1.11. I finally decided to look closer since 1.12 didn't seem to fix the issue and came across this report.
I looked at the revert commit to get idea of area that could possibly be fixed and it seems like crtc_bounds() is probably a function that should be returning a value related to panning/scaling. I traced were xrandr output is querying the panning/scaling values it displays and looks like comes from ProcRRGetCrtcInfo() and that function makes use of RRCrtcGetScanoutSize() to scaling width/height to correct size. Panning uses rrGetPanning(). To test the idea, I modified crtc_bounds to handle scaling case by adding ProcRRGetCrtcInfo() call. It does seem to work and I've not noticed a negative in limitted testing. I patched a source RPM so I can't offer a real patch right now but here is my modified version of function to get an idea: static void crtc_bounds(RRCrtcPtr crtc, int *left, int *right, int *top, int *bottom) { int width, height; RRCrtcGetScanoutSize (crtc, &width, &height); *left = crtc->x; *top = crtc->y; switch (crtc->rotation) { case RR_Rotate_0: case RR_Rotate_180: default: *right = crtc->x + width; *bottom = crtc->y + height; return; case RR_Rotate_90: case RR_Rotate_270: *right = crtc->x + height; *bottom = crtc->y + width; return; } } -- You received this bug notification because you are a member of Ubuntu-X, which is subscribed to xorg-server in Ubuntu. https://bugs.launchpad.net/bugs/881046 Title: Panning in a virtual monitor is not possible after upgrade to Ubuntu 11.10 To manage notifications about this bug go to: https://bugs.launchpad.net/xorg-server/+bug/881046/+subscriptions _______________________________________________ Mailing list: https://launchpad.net/~ubuntu-x-swat Post to : ubuntu-x-swat@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-x-swat More help : https://help.launchpad.net/ListHelp