1
0
xorg-x11-server/u_Panning-Set-panning-state-in-xf86RandR12ScreenSetSize.patch
Stefan Dirsch 6ff43929b0 Accepting request 1189636 from home:jamborm:gcc14test-m
- Added xorg-xserver-e89edec497ba.patch to fix incompatible pointer
  type error with GCC 14.

If the request is OK, please forward it to Factory soon too so that we
can switch the default compiler.  Thanks!

OBS-URL: https://build.opensuse.org/request/show/1189636
OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/xorg-x11-server?expand=0&rev=891
2024-08-01 10:31:47 +00:00

47 lines
1.8 KiB
Diff

From: Egbert Eich <eich@suse.de>
Date: Fri Jan 15 16:52:18 2016 +0100
Subject: [PATCH]Panning: Set panning state in xf86RandR12ScreenSetSize()
Patch-mainline: to be upstreamed
References: boo#771521
Signed-off-by: Egbert Eich <eich@suse.com>
Right after verifying the panning area the per-crtc panning state should
be set.
This fixes panning when set in the configuration.
Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=771521
Signed-off-by: Egbert Eich <eich@suse.de>
---
hw/xfree86/modes/xf86RandR12.c | 3 +++
1 file changed, 3 insertions(+)
Index: xorg-server-1.20.5/hw/xfree86/modes/xf86RandR12.c
===================================================================
--- xorg-server-1.20.5.orig/hw/xfree86/modes/xf86RandR12.c
+++ xorg-server-1.20.5/hw/xfree86/modes/xf86RandR12.c
@@ -685,6 +685,7 @@ xf86RandR12ScreenSetSize(ScreenPtr pScre
WindowPtr pRoot = pScreen->root;
PixmapPtr pScrnPix;
Bool ret = FALSE;
+ Bool panning = FALSE;
int c;
if (randrp->virtualX == -1 || randrp->virtualY == -1) {
@@ -713,6 +714,7 @@ xf86RandR12ScreenSetSize(ScreenPtr pScre
if (crtc->panningTrackingArea.y2 > crtc->panningTrackingArea.y1)
crtc->panningTrackingArea.y2 += height - pScreen->height;
xf86RandR13VerifyPanningArea(crtc, width, height);
+ panning = panning ? TRUE : PANNING_ENABLED (crtc);
xf86RandR13Pan(crtc, randrp->pointerX, randrp->pointerY);
}
}
@@ -722,6 +724,7 @@ xf86RandR12ScreenSetSize(ScreenPtr pScre
pScreen->height = pScrnPix->drawable.height = height;
randrp->mmWidth = pScreen->mmWidth = mmWidth;
randrp->mmHeight = pScreen->mmHeight = mmHeight;
+ randrp->panning = panning;
xf86SetViewport(pScreen, pScreen->width - 1, pScreen->height - 1);
xf86SetViewport(pScreen, 0, 0);