diff options
author | Michael Brasser <michael.brasser@live.com> | 2013-05-03 15:07:09 -0500 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-05-20 15:36:52 +0200 |
commit | 8a082ad32cf99d85e8714415b64d124ceda7159d (patch) | |
tree | 56ad2fae25ac3360c168d55376e97331db51ee97 /src/plugins/platforms/linuxfb | |
parent | 899af081d7f7b0ae2ca93bd1454a397bf77c940c (diff) | |
download | qtbase-8a082ad32cf99d85e8714415b64d124ceda7159d.tar.gz |
Fix linuxfb plugin when fb offset is present.
Task-number: QTBUG-30994
Change-Id: Ic9e80f5bfaf54e89e9a9187f3e73e57015ed8c3d
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Diffstat (limited to 'src/plugins/platforms/linuxfb')
-rw-r--r-- | src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp b/src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp index cd987d8d02..ad5206ba41 100644 --- a/src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp +++ b/src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp @@ -369,9 +369,10 @@ bool QLinuxFbScreen::initialize(const QStringList &args) mDepth = determineDepth(vinfo); mBytesPerLine = finfo.line_length; - mGeometry = determineGeometry(vinfo, userGeometry); + QRect geometry = determineGeometry(vinfo, userGeometry); + mGeometry = QRect(QPoint(0, 0), geometry.size()); mFormat = determineFormat(vinfo, mDepth); - mPhysicalSize = determinePhysicalSize(vinfo, userMmSize, mGeometry.size()); + mPhysicalSize = determinePhysicalSize(vinfo, userMmSize, geometry.size()); // mmap the framebuffer mMmap.size = finfo.smem_len; @@ -381,11 +382,11 @@ bool QLinuxFbScreen::initialize(const QStringList &args) return false; } - mMmap.offset = mGeometry.y() * mBytesPerLine + mGeometry.x() * mDepth / 8; + mMmap.offset = geometry.y() * mBytesPerLine + geometry.x() * mDepth / 8; mMmap.data = data + mMmap.offset; QFbScreen::initializeCompositor(); - mFbScreenImage = QImage(data, mGeometry.width(), mGeometry.height(), mBytesPerLine, mFormat); + mFbScreenImage = QImage(mMmap.data, geometry.width(), geometry.height(), mBytesPerLine, mFormat); mCursor = new QFbCursor(this); mTtyFd = openTtyDevice(ttyDevice); |