summaryrefslogtreecommitdiff
path: root/pcr/xf86-video-qxl/0002-kms-initialize-primary-surface-to-screen-virtual-siz.patch
blob: 2a41c94fe5c0438d29d94151d987ca8b99629728 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
From 16ac8fa8fac56a01050ffa9f0978ae04b1a1efa4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
Date: Wed, 13 May 2015 18:12:26 +0200
Subject: [PATCH 1/3] kms: initialize primary surface to screen virtual size

The pScrn->virtualX/Y are set after drmmode_pre_init(), use that
resolution instead of hard-coded 1024x768.

This fixes rendering glitches when restarting X server with
different primary size than actual monitor modes.

Signed-off-by: Christian Hesse <mail@eworm.de>
---
 src/qxl_kms.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/qxl_kms.c b/src/qxl_kms.c
index c31c62d..b6952f3 100644
--- a/src/qxl_kms.c
+++ b/src/qxl_kms.c
@@ -164,8 +164,8 @@ Bool qxl_pre_init_kms(ScrnInfoPtr pScrn, int flags)
     if (drmmode_pre_init(pScrn, &qxl->drmmode, pScrn->bitsPerPixel / 8) == FALSE)
       goto out;
 
-    qxl->virtual_x = 1024;
-    qxl->virtual_y = 768;
+    qxl->virtual_x = pScrn->virtualX;
+    qxl->virtual_y = pScrn->virtualY;
     
     pScrn->display->virtualX = qxl->virtual_x;
     pScrn->display->virtualY = qxl->virtual_y;
-- 
2.6.2