summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* CMake: Bump the minimum required CMake version to build Qt to 3.18Alexandru Croitor2020-11-037-2/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a new function that returns the minimum CMake version required to build Qt. Pass that value to cmake_minimum_required() when building qtbase and its standalone tests. The minimum supported CMake version is read from qtbase/.cmake.conf and its value should be updated when the need arises. It's the main source of truth for all repos. Provide a way to lower the minimum CMake version at configure time by passing a value via QT_FORCE_MIN_CMAKE_VERSION. This is not an officially supported way of building Qt. If the specified version is lower than Qt's supported minimum, show a warning. Nevertheless the option is useful for testing how Qt builds with a different minimum CMake version due to different policies being enabled by default. Issue warnings for CMake versions that are higher than the minimum version but are known to cause issues when building Qt. A counterpart change is needed in qt5 to ensure the minimum CMake version is set at the proper time for top-level builds. Ideally we would use the same 'check the CMake minimum version` code in all our repositories, but that will cause lots of duplication because we can't really find_package() the code and doing something like include(../qtbase/foo.cmake) hardcodes assumptions about repo locations. So for now we don't bump the minimum version in child repo cmake_minimum_required calls (qtsvg, qtdeclarative, etc). Instead we record both the minimum supported version and the computed minimum version (in case a different version was forced) in QtBuildInternalsExtra.cmake. Then we require qtbase's computed min version in qt_build_repo_begin(). This won't set policies as cmake_minimum_required would, but at least it propagates what minimum CMake version should be used for child repos. We might still have to bump the versions in child repos at some point. Task-number: QTBUG-88086 Change-Id: Ida1c0d5d3e0fbb15d2aee9b68abab7a1648774b9 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Rename QContainerTraits namespace to QContainerInfoLars Knoll2020-11-033-245/+245
| | | | | | | | | | | | We'll need QContainerTraits as a class for changing properties of our containers, so free up that name. This is not a problem, as the namespace is new in Qt 6 and has only been used internally so far. Change-Id: I6d6b9d9c32b92b77e66323f1fc29b3ddd8baa98f Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QtTestLib: Update porting guideMårten Nordheim2020-11-031-1/+16
| | | | | | | | | Few breaking changes. Some things moved header, but as they didn't change namespace, naming or signature, and the old headers now include the 'new' headers, it is SC anyway. Change-Id: I6b0556049f6d9203dcf7420317a14992fbe85a80 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Code cleanupsLars Knoll2020-11-031-7/+7
| | | | | | | Mark constexpr booleans as inline. Change-Id: Ib7e0f9d96ff3894b72dcd13c07643ef3b9e6e2c5 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Fix QDataStream compatibility for QTextFormat::TextUnderlineColorLars Knoll2020-11-032-0/+9
| | | | | | | | | The enum value of that property changed. Use the same mapping trick as with two other properties to ensure backwards compatibility in QDataStream. Change-Id: I01b36f9ecbcaf40e7c8523da33ea4c8f12821a63 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Standardize metaType stuff in QMetaProperty and QVariantDavid Skoland2020-11-033-3/+14
| | | | | Change-Id: Idbb03d320039e8ddc4b7a7f42d2ba93ee47c456f Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Allow adding linker flags to qmake module prisTor Arne Vestbø2020-11-036-13/+24
| | | | | | | | | | | | | The flags go before the library in the final linker line, as opposed to the dependencies declared in LIBS. This allows us to declare the flags for the entrypoint in the project file of the entrypoint, instead of in a standalone prf. Change-Id: I35c054fe9fdaa6add7cd0e8ba3f7304f975ff80f Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix typoVolker Hilsheimer2020-11-021-1/+1
| | | | | Change-Id: Ia8ce9ac486d1ee54a772367cba90b42197f622d1 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Unfix QTest touch API documentationMårten Nordheim2020-11-021-1/+1
| | | | | | | | | Partial revert of 5866b82e240915b9b8d2be7394af560877111ee3. The function is still in the QTest namespace. Change-Id: I5e25b405baf07e61781ca4a527601ef0bf8ce6a4 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Make RGB_MASK inline constexprVolker Hilsheimer2020-11-021-1/+1
| | | | | | | As per comment on API review. Change-Id: If4bd234372ebad0e3bfac41642981a612fd165bd Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* Allow adding extra content to module priTor Arne Vestbø2020-11-022-2/+6
| | | | | | | On the qmake-side we had exports, but they were quoted. Change-Id: I95af4b927079691cab6403fec850f345ba181a00 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Default to cmake when building QtVolker Hilsheimer2020-11-022-3/+3
| | | | | | | | People that insist on qmake builds of Qt can configure with -qmake Task-number: QTBUG-87049 Change-Id: I5729b654d4c8b9c6b526234ba5563aff8fd750e1 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Remove unnecessary cast-to-int for parameter to QBitArrayMårten Nordheim2020-11-021-1/+1
| | | | | | | It was ported to qsizetype after the cast was introduced Change-Id: I00caff1d960f403990f93fcec6a7969e62b4cc99 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* CMake: Let configure guess the compiler from mkspec argumentJoerg Bornemann2020-11-022-0/+22
| | | | | | | | | | | | The arguments -platform, -xplatform and -device determine the mkspec that's used for the qmake companion files. If the user specifies a mkspec that indicates usage of clang or icc, set the respective CMake variables to use one of those compilers. Fixes: QTBUG-87836 Change-Id: I2b10d819b0eb92a97d7f79672547b1e2d821cf33 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Do not #define dynamic_castGiuseppe D'Angelo2020-11-021-13/+0
| | | | | | | | | | | | | It's illegal. [macro.names]/2: "A translation unit shall not #define or #undef names lexically identical to keywords" If someone tries to use dynamic_cast in a no-rtti scenario, let's just have the compiler yell at them for that. Change-Id: I70a7b55a93d34c433e874d379acae8b256620f80 Pick-to: 5.15 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* macOS + FreeType: fix crash with non printable unicodeAnton Kudryavtsev2020-11-021-1/+4
| | | | | | | | Task-number: QTBUG-84096 Pick-to: 5.15 Pick-to: 5.12 Change-Id: Ia60b7094ef9e82cf24f5a8b7995000ae65bb379a Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* DropSite example: support markdownShawn Rutledge2020-11-022-0/+5
| | | | | | | | | | | | | If the mime data includes text/markdown, display it decoded in the QLabel, and also display the raw markdown in the table below. QLabel supports markdown since 51cbd5288c85cb4de382cb23d6f5559c2b626126. Ideally we should add proper support for markdown to QMimeData, but it's too late to do that for Qt 5. Pick-to: 5.15 Change-Id: I2a9998e4b239658fe49f39786e7c4fdd0c08b21a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* qmake/vcxproj: Fix handling of extra compiler outputsJoerg Bornemann2020-11-021-1/+1
| | | | | | | | | | | | | | In commit 68866b1a7bcade79e425f609fc1680203b89112e we introduced a bug: At a point where the first output of an extra compiler is extracted, we try to evaluate the first output as qmake variable. This is as nonsensical as it sounds and leads to malformed extra compiler output in vcxproj files. Pick-to: 5.15 Task-number: QTBUG-87601 Change-Id: Ib9aaf8a6eed8c69243f364554325c240d0bfc7f4 Reviewed-by: Miguel Costa <miguel.costa@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Resolve corelib's remaining ### Qt 6 commentsEdward Welbourne2020-11-029-16/+11
| | | | | | | | | | | | | No action taken at Qt 6, suggesting it shall never happen. Four removed, one converted to Qt 7, others converted to unversioned TODOs. Filed Jira tasks, and referenced in comments, for those retained. There remain two "once bootstrap builds are obsolete" comments and one other on which pending action may yet happen. Fixes: QTBUG-85700 Change-Id: Ib140a6a21c63370e51e4734cc591f67573a29d9a Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* QMarginsF: document that isNull/operator==/operator!= are fuzzyGiuseppe D'Angelo2020-11-021-4/+18
| | | | | | Change-Id: Id1865f6d608e5cdbb6d24351aea5f6801a519684 Pick-to: 5.15 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Warn if Q_FOREACH is used with a non-shared containerOlivier Goffart2020-11-021-0/+14
| | | | | | | | Show a deprecation warning if a non shared container is used within Q_FOREACH, because it would make an expensive copy of the container Change-Id: I70cfd789b5b8d9f5b1bd6e0a57e5e968e1c6a0ca Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* QLayout: unify the constructorsGiuseppe D'Angelo2020-11-024-35/+12
| | | | | | | | | | | Drive-by, make QLayout constructor explicit, as it should have always been. [ChangeLog][QtWidgets][QLayout] The QLayout constructor taking a QWidget pointer is now explicit. Change-Id: If6accfb2e7e810fa08adacea9e674c99121f6bc6 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* Update the porting guide for QFutureSona Kurazyan2020-11-021-4/+40
| | | | | | | | | | Document the source compatibility breaks introduced by the recent changes (ff0ba7e2d7b91fd5809cb314935a1ca1a436f6c9 and 30a1683f65fa0d01eceb7e1293abc84108d76e7f) in the porting guide. Task-number: QTBUG-87096 Change-Id: I5b725c863b1077d59074d4bd17a4456e3d87918c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Android: fix documentation about ANDROID_EXTRA_LIBSAssam Boudjelthia2020-11-021-8/+13
| | | | | | | | | ANDROID_ABIS should be used instead of ANDROID_TARGET_ARCH. Fixes: QTBUG-81866 Pick-to: 5.15 Change-Id: I6dc9e0cd2a19bea8864e3ab4174bd609c0aad4dc Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* QCombobox: propagate the palette to the embedded line editWang Chuan2020-11-022-0/+28
| | | | | | | | | | Let the new created embedded QLineEdit use the palette from QCombobox, when calling [setEditable(true)] Fixes: QTBUG-81533 Pick-to: 5.15 Change-Id: Ia406dd8122a348e185f0e94d027646b95eeaa76e Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* rhi: gl: Do not bother with glDrawBuffers(GL_BACK)Laszlo Agocs2020-11-021-4/+0
| | | | | | | | | | | | | | | | | It's per framebuffer and the color target for the default fbo is never altered. So no need for this call. This is useful because it avoids having to deal with the controversy around GL_BACK (where the GL, but not the ES, spec claims some quite nonsensical things about GL_BACK not being accepted by glDrawBuffers (in the name of stereo support?), nevermind GL_BACK being the default value...), and while what we have in place now seems to be ok with many implementations, it may generate a GL error with others - so just remove the call in order not have to think about this legacy nonsense) Task-number: QTBUG-88070 Change-Id: I051c60a3041865a3434801b57da2b7acb518b8fe Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* Remove usages of Q_FOREACHAllan Sandfeld Jensen2020-11-022-6/+6
| | | | | | | The last places outside tests, tools and qnx platform code Change-Id: I9918861888cf58bf5dbae5603febb8885fc67709 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* CMake: Bump the minimum required CMake version to use Qt to 3.14Alexandru Croitor2020-11-021-2/+2
| | | | | | | | | | | | | | | | | At the moment our examples require a minimum of 3.14 due to changes in upstream CMake's Autogen functionatlity to support Qt 6. Anything lower would simply not work with Qt 6. It's not clear yet if we actually want to require 3.14, or something higher. At the very least there were many significant changes to support iOS in CMake 3.15. But for now just bump the version checked by Qt6Config.cmake to be consistent with what's in our examples. Task-number: QTBUG-88086 Change-Id: I119c2ad05a18c357fe7c659b30685af87475fc84 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Improve clang-cl support for Qt6Yuhang Zhao2020-11-023-10/+26
| | | | | | | | | | 1. clang-cl doesn't support "-fno-exceptions", it uses msvc's parameter. 2. some parameters supported by msvc are not supported by clang-cl and they are causing huge warning message flood, don't add them. 3. use correct optimize parameter for clang-cl. Change-Id: Idbadf139127143c5fa6c49068588cb26f47da7a2 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Android: Don't use putIfAbsent as that is not available in older APIsAndy Shaw2020-11-021-2/+2
| | | | | | | Fixes: QTBUG-88076 Change-Id: I1ab12c574be036babfd0e4aacb44d1f75c66f4ad Pick-to: 5.15 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Doc: Prefer versioned CMake library targetsv6.0.0-beta3Kai Koehne2020-11-0111-11/+11
| | | | | | | | The non-versioned one's do miss some properties. It's therefore best to not advocate using them. Change-Id: I53645e65ed4de4e0100e59905c024cdfe40be0c5 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix compilation error on WindowsYuhang Zhao2020-11-011-1/+1
| | | | | | | | | | | | | | | | When linking static libraries, MSVC's link.exe complains about the unknown parameter "/INCREMENTAL:NO" and output a lot of warning messages about this. This doesn't happen when it's linking exes or dlls. The situation is a lot more worse when we are using clang-cl. clang-cl will print some error message like it can't find a file named "/INCREMENTAL:NO" and just stop compiling. It seems clang-cl treat unknown parameters as input files. Fixes: QTBUG-87875 Change-Id: I37ed29de082b0258e81494db54f275417ab42708 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix tst_qtimer::zeroTimer unit testAndreas Buhr2020-11-012-3/+3
| | | | | | | | | | | | | | | | The tst_qtimer::zeroTimer unit test was relying on QCoreApplication::processEvents processing all pending events. However, for the glib backend, this is not the case. For the glib backend, if there is an event of high priority pending, low priority events are not processed. This patch changes the test to use the overload with timeout of processEvents, which does process events until there are no more events or the timeout is reached. Fixes: QTBUG-84291 Change-Id: I429141507b8603b57a191efa21f154493d75cc9e Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Use (void) instead of Q_UNUSEDAndré Klitzing2020-10-311-7/+7
| | | | | | | | | | | | This change allows the user to use -Wextra-semi-stmt without a warning. A macro should never include a ; by it's own. Macro Q_UNUSED already adds semicolon. Fixes: QTBUG-82978 Pick-to: 5.15 Change-Id: I6d8d009cf89f0c8bbb6a9fee986e81302ebd7459 Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* testlib: Add private API to add test loggerTor Arne Vestbø2020-10-313-8/+25
| | | | | | | Allows adding test loggers outside of testlib. Change-Id: Iabcc780e441de96032a05fc0a386dd52e2f2f404 Reviewed-by: Simon Hausmann <hausmann@gmail.com>
* Performance improvement for integer->QString conversionAndreas Buhr2020-10-311-4/+43
| | | | | | | | | | | | | The compiler can generate better code when the base is known in integer to string conversion. This patch creates separate branches for known bases and leaves generic code as a fallback. Saved about 12ns per conversion of 12345678 in one measurement. Task-number: QTBUG-87330 Change-Id: I44c9bb467cf211f7e617ed55104476062296bba6 Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* testlib: Let logger report whether it is logging to stdoutTor Arne Vestbø2020-10-313-5/+13
| | | | | Change-Id: I7df61b4fdc8c431a73c4b399e2f620923a7c7217 Reviewed-by: Simon Hausmann <hausmann@gmail.com>
* Make QScopedPointer comparison operators hidden friendsVolker Hilsheimer2020-10-312-51/+40
| | | | | | | | Reduce overload resolution noise. Fixes: QTBUG-87979 Change-Id: I52f96e016ffaf1b4f2235a05c1175c5af3eebe36 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Doc: Fix various documentation issues for Qt CoreTopi Reinio2020-10-3113-36/+42
| | | | | | | Task-number: QTBUG-86295 Change-Id: I3bf7d4b1533d4fc81114d353b19beaf4ea9b93b2 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Minor improvements in qrgba64_p.hAllan Sandfeld Jensen2020-10-311-31/+104
| | | | | | | | | | Adds SIMD acceleration for the blend_pixel, and raw interpolate methods, and cleans up other SIMD code. Gives minor speedups in text rendering and various fallbacks. Change-Id: Ib0ad8b408450e4e73f3c1d50e9caaed0098acb94 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* CMake: Cleanup module and plugin define situationAlexandru Croitor2020-10-303-8/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The QT.<module>.DEFINES assignment in pri files needs to take into account the module name when computing the define name. This is the MODULE value that qmake specifies. In CMake that would be the value of CONFIG_MODULE_NAME. Previously the value of the define was computed in qt_internal_module_info() without taking into account the module name. While qt_internal_module_info() ended being used also for plugins and other target types, the defines computed by it were meant to be used only for Qt modules. Thus remove the <result>_define assignment from qt_internal_module_info and move its computation directly into qt_internal_add_module, taking into account the value of CONFIG_MODULE_NAME. The only other use of module_define was in qt_internal_add_plugin but that was merely a long overdue copy-paste error, qmake doesn't propagate QT_FOO_LIB defines for plugins. As result, a define special case in testlib is not needed anymore, because the define is now computed properly. Finally, QT_FOO_LIB should not be used while building the Qt module itself, so instead of using PUBLIC_DEFINES option of qt_internal_extend_target, use target_compile_definitions(INTERFACE) directly. Change-Id: I4d44f7461bac2f0c09aec3e995d02dfe36e00883 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Get rid of QInputDevicePrivate::extraShawn Rutledge2020-10-301-1/+0
| | | | | | | | | | | | | | | Since QPA plugins own the input device objects that they create, they can also subclass to add arbitrary extra data (as was done with QWinTabPointingDevice in abb5f0d3768a817b7e30639107210e64b8dbc138); so this pointer seems unnecessary. It's unused so far AFAIK. Retaining it also brings up the possibility of a memory leak: ~QInputDevice() doesn't delete it, and whatever code stores something there would need to make sure it gets deleted. Change-Id: I7ec264c23c74b83db1f37f64f31857caf551fdae Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Update tst_qcborstreamwriter to use QMetaTypeDavid Skoland2020-10-301-10/+10
| | | | | | | Since the QVariant types are deprecated in Qt6, use QMetaType instead Change-Id: I7bddea15a3f1a534d3c6f6b9e7ddf9585a8423bf Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* CMake: Clean up order of assignments in generated module pri filesAlexandru Croitor2020-10-301-6/+11
| | | | | | | | Makes the diff between Qt 5.15 and 6.0 easier to read, to see what's missing. Change-Id: Idf8aa17b3ab8494f6855c172665423a53ca8a024 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* CMake: Regenerate qtbase projects to use correct CONFIG_MODULE_NAMEsAlexandru Croitor2020-10-3015-3/+16
| | | | | | | | Also sneak in testlib's misisng QMAKE_MODULE_CONFIG values. Task-number: QTBUG-88025 Change-Id: I76a37b8d8dbf7f294f91e32a5edbc52f5c83555b Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* CMake: pro2cmake: Generate correct CONFIG_MODULE_NAME valuesAlexandru Croitor2020-10-301-7/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CONFIG_MODULE_NAME option to qt_internal_add_module is used to specify what the name of a Qt module's pri file should, as well as some of the key names assigned in that file, as well as what should be passed to QT += in qmake projects. When it is not specified, the computed value is the lower case of the CMake target name. E.g. for qt_internal_add_module(Core), the computed CONFIG_MODULE_NAME is 'core'. The qmake variable that determines the above value is the MODULE variable. If it is not explicitly assigned, it's computed from the .pro file name, rather than from the TARGET variable value. Thus there is an inconsistency in how the value is auto-computed in CMake compared to qmake. We had a few special cases in projects that assign a correct CONFIG_MODULE_NAME when the auto-computed value was wrong. Teach pro2cmake to detect these inconsistencies and pass a correct CONFIG_MODULE_NAME value based on the .pro file name. This way we get rid of the special cases as well. Aka if there is no explicit MODULE assignment in the .pro file, and the auto-computed value by CMake is different from the one computed by qmake, explicitly write out a CONFIG_MODULE_NAME value with what qmake would have computed. Task-number: QTBUG-88025 Change-Id: I166b29767e87cd6b0c681fa53238098355a177f9 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* CMake: Regenerate qtbase projectsAlexandru Croitor2020-10-3014-33/+385
| | | | | | | | | | In preparation for some further regeneration. Also modify pro2cmake to add forgotten mapping for the Qt::EglFsKmsGbmSupportPrivate module. Change-Id: I92425c566c2b275b40eec8c652496290754ac385 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix QScreen orientation not being updated when setting a platform screenFriedemann Kleint2020-10-301-1/+1
| | | | | | | | | | | | ScreenPrivate::updatePrimaryOrientation() depends on the geometry being set which is calculated by updateHighDpi(). Move the call up. Amends 370289bef68d8505b66cb27150a3f596e23c5ed3. Task-number: QTBUG-76902 Change-Id: I8188e04ad4a2ef7d414a2b78ecb3dd6c64528fa6 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> (cherry picked from commit d10c34b0cc896c711fce8ae5629e3cc3d74b6452)
* Offscreen QPA: implement a native interfaceGiuseppe D'Angelo2020-10-306-17/+50
| | | | | | | | | | | | | | | | Many code paths simply expect to have a native interface available, and won't check if a plugin is returning nullptr for it. This leads to crashes or local workarounds (e.g. 3197932e6fb03fb9c0ff669af858cb94e3836d79). Instead, have offscreen implement a dummy native interface. This requires shuffling some code for the X11 integration. Pick-to: 5.15 Change-Id: I2bdceee379e4ded9b085ebbb4d03d1e074f60726 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Hide comparison operators for QtOpenGLVersion types from ADLVolker Hilsheimer2020-10-302-22/+23
| | | | | | | | | | Make hidden friends. Also add noexcept. No documentation to adjust. Fixes: QTBUG-87978 Change-Id: I6e757b7c37fb8aabdfd395ab057a84696104e640 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>