Go to file
Àlex Fiestas 9ec0280714 Make sure QWindow screen is set before calling QPlatformWindow::create
QWindow uses device independent geometry while QXcb and QPlatform
classes do not.

When QXcbWindow::create is called we have no guarantee that the correct
screen has been set in QWindow so the code
attempts to check if "currentScreen" matches "actualscreen". To perform
that operation though we need to convert
the units from "Device independent" to "native pixels" that we do by
calling QPlatformWindow::windowGeometry which
calls QHighDpiScaling::toNativePixels which requires the correct screen
to be already set.

So basically we have a cyclic dependency, to get the correct screen we
require the correct screen to be already set.

To fix this we can:
1-Remove the dependency (Look for the actual screen using device
independent pixels)
This will imply adding code in QXcb to use
QPlatformScreen::deviceIndependentGeometry to lookup the screen up

2-Make sure the Screen is set before calling QXcbWindow::create

This patch implements the first approach that allows us to keep the
changes within the QXcb backend which seems to be the only one affected.

Task-number: QTBUG-53813
Change-Id: I6dc955d63e17c3b3421f3a1a9e0d841e508b2e5c
Reviewed-by: David Edmundson <davidedmundson@kde.org>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2017-05-29 10:40:53 +00:00
bin don't include injected headers into linker version script 2016-10-14 09:00:29 +00:00
config.tests Add INTEGRITY framebuffer test to configure 2017-05-29 09:46:40 +00:00
dist Revert "Add qt_safe_ftok wrapper for ftok" 2017-05-18 21:17:52 +00:00
doc Doc: Add highlighting for a number of examples 2017-05-17 13:42:58 +00:00
examples Doc: Replace "Macintosh" with something suitable or omit it 2017-05-23 13:02:33 +00:00
lib Purge all fonts 2015-08-18 19:59:14 +00:00
mkspecs Add INTEGRITY mkspec for ARMv8 Drive CX 2017-05-29 09:46:12 +00:00
qmake Fix parsing of MSVC's /utf-8 option, take 2 2017-05-23 17:25:50 +00:00
src Make sure QWindow screen is set before calling QPlatformWindow::create 2017-05-29 10:40:53 +00:00
tests Fix tst_QWidget::translucentWidget() on high DPI displays 2017-05-29 10:35:46 +00:00
util QtCore: include mocs 2017-05-05 03:03:30 +00:00
.gitattributes
.gitignore Overhaul .gitignore 2017-02-16 15:11:05 +00:00
.qmake.conf Bump version 2017-05-12 13:39:51 +02:00
.tag
config_help.txt Restore behavior of using libEGL and libGLESv2 as default for angle 2017-05-11 08:35:54 +00:00
configure Clean up mkspecs from old, unsupported and untested mkspecs 2017-04-27 22:34:34 +00:00
configure.bat configure: balk at any of {{,X}QMAKESPEC,QMAKE{PATH,FEATURES}} being set 2017-04-21 09:22:27 +00:00
configure.json configure.json: Do not test for gold linker on Windows 2017-05-23 06:14:28 +00:00
configure.pri Fix target ABI configure detection 2017-05-02 10:32:36 +00:00
header.BSD Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.BSD-OLD Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.COMM Add header template for commercial only modules 2015-10-19 10:37:18 +00:00
header.FDL Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.FDL-OLD Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.GPL Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.GPL-EXCEPT Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.LGPL Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.LGPL3 Update copyright headers 2015-02-11 06:49:51 +00:00
header.LGPL3-COMM Update copyright headers 2015-02-11 06:49:51 +00:00
header.LGPL21 Update copyright headers 2015-02-11 06:49:51 +00:00
header.LGPL-NOGPL2 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.LGPL-ONLY Update copyright headers 2015-02-11 06:49:51 +00:00
INSTALL Doc: Update links in INSTALL file 2015-02-16 09:06:41 +00:00
LGPL_EXCEPTION.txt Update copyright headers 2015-02-11 06:49:51 +00:00
LICENSE.FDL
LICENSE.GPL2 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3-EXCEPT Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPLv3 Expand license scope from "Qt GUI Toolkit" to "Qt Toolkit" 2016-06-15 07:02:32 +00:00
LICENSE.LGPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.LGPLv3 Expand license scope from "Qt GUI Toolkit" to "Qt Toolkit" 2016-06-15 07:02:32 +00:00
LICENSE.LGPLv21 Expand license scope from "Qt GUI Toolkit" to "Qt Toolkit" 2016-06-15 07:02:32 +00:00
LICENSE.PREVIEW.COMMERCIAL Add new license header templates and license files 2016-01-14 20:43:46 +00:00
qtbase.pro nuke configure -host-option 2016-12-13 18:55:59 +00:00
sync.profile Merge remote-tracking branch 'origin/5.8' into 5.9 2017-03-13 15:55:44 +01:00