eglfs: Fix quad coordinates

Prevent artifacts on raster windows by properly mapping
the coordinates to [-1,1].

Task-number: QTBUG-36370
Change-Id: I95d0d03952f597ef4ce6a950c6533a3af2df964a
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
This commit is contained in:
Laszlo Agocs 2014-01-23 11:45:22 +01:00 committed by The Qt Project
parent 717d39ac08
commit 84756d94c7

View File

@ -144,10 +144,11 @@ void QEGLCompositor::render(QEGLPlatformWindow *window, uint texture, bool raste
QPoint tl = r.topLeft();
QPoint br = r.bottomRight();
// Map to [-1,1]
GLfloat x1 = (tl.x() / sr.width()) * 2 - 1;
GLfloat x2 = (br.x() / sr.width()) * 2 - 1;
GLfloat y1 = ((sr.height() - tl.y()) / sr.height()) * 2 - 1;
GLfloat y2 = ((sr.height() - br.y()) / sr.height()) * 2 - 1;
GLfloat x2 = ((br.x() + 1) / sr.width()) * 2 - 1;
GLfloat y2 = ((sr.height() - (br.y() + 1)) / sr.height()) * 2 - 1;
if (!raster)
qSwap(y1, y2);