summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* QGraphicsItemAnimation: add transformAt() an deprecate matrixAt()Christian Ehrlicher2019-02-234-14/+34
| | | | | | | | Replace QGraphicsItemAnimation::matrixAt(qreal) with transformAt(qreal) to avoid the usage of QMatrix which is deprecated. Change-Id: Iafcdf8b9b2fbffffa61417601a3ae4272d0176c6 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix a typoTimur Pocheptsov2019-02-221-1/+2
| | | | | | | | in a comment. Change-Id: I10252b2e732636993daba6b72ed86116691f2030 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
* qtlite: Add a new option -no-pcreMikhail Svetkin2019-02-222-8/+13
| | | | | | | pcre only used by QRegularExpression. Change-Id: I704bdb46ed8956f875e1f5fcc0fa2e06122fd87e Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QObject: count declarative receivers also if there are no C++ onesUlf Hermann2019-02-221-3/+3
| | | | | | Change-Id: If998cdd5eeb8a3ae85cd540cc9c1fd0c051e1d4b Fixes: QTBUG-73753 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Add conversion to and from long and ulongVolker Hilsheimer2019-02-213-0/+162
| | | | | | | | | | | | | This implements conversion parity with QString, which can convert to and from long and unsigned long. The implementation simply forwards to existing long long overloads or uses the existing helpers, so just as for the conversion to/from int or short, no additional test cases were added. Change-Id: I37ef06d9ce4d80d98bd72720353996bac723e09c Fixes: QTBUG-782 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* moc: Parse namespaces from other filesUlf Hermann2019-02-213-17/+30
| | | | | | | | | | | | We can parse the namespaces in order to find the enums in them and populate the related metaobjects of the current file's classes. The symbol clashes are avoided by only generating metaobjects for namespaces defined in the same file. Fixes: QTBUG-71966 Fixes: QTBUG-72069 Change-Id: Ibdf21c3f9dae48d95b0952b3e220b4c29e30ecb8 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Convert tst_qhttpnetworkconnectionTimur Pocheptsov2019-02-215-36/+8428
| | | | | | | | and make it work with our new docker-based test server Change-Id: I98b5b5b1e2cdca46b7f15be72aa1483d9455403d Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* ensure signal subWindowActivated() triggers even when widget has focusMartin Koller2019-02-212-1/+4
| | | | | | | | | | | | | A widget being added to QMdiArea which currently has focus did not trigger the subWindowActivated() signal since the connection to the method _q_processWindowStateChanged, which emits the signal (set up in appendChild()), was just done after the focus was set back again to the added widget. Setting the focus makes the widget active. This patch changes the order: first call appendChild(), then set focus Change-Id: I3aaf1728dc082d1323c7fbd62bfdbd2af87ab2ce Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* Merge remote-tracking branch 'origin/5.13' into devQt Forward Merge Bot2019-02-201117-20895/+59003
|\ | | | | | | | | | | | | | | | | | | | | Conflicts: tests/auto/widgets/itemviews/qheaderview/tst_qheaderview.cpp Added tests/auto/testlib/selftests/expected_crashes_5.txt to work round the output of the crashes test (which exercises UB, see QTBUG-73903) being truncated on one test platform. Change-Id: I9cd3f2639b4e50c3c4513e14629a40bdca8f8273
| * Feature 'ocsp' - fix a broken win-32 buildEric Lemanissier2019-02-191-2/+2
| | | | | | | | | | | | Change-Id: I0fcec3a555a8c5ff5b5faff3cff16b173e9b9950 Fixes: QTBUG-73322 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| * qguiapplication: move long comment to JIRAGatis Paeglis2019-02-191-35/+2
| | | | | | | | | | | | | | ... where it can be commented on. Change-Id: I627c7562be3a650e08ec7e7e76839797f07d5b2e Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
| * Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-02-1989-286/+165
| |\ | | | | | | | | | Change-Id: Ifa143cc462301aaa305c9c85360e543553a751f0
| | * macOS: Remove redundant tracking of modal sessions in QCocoaWindowTor Arne Vestbø2019-02-184-7/+9
| | | | | | | | | | | | | | | Change-Id: I43a40889b0731e4b480155256fc51eaa836e62a3 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| | * macOS: Modernize worksWhenModal handlingTor Arne Vestbø2019-02-185-59/+27
| | | | | | | | | | | | | | | | | | | | | The code in QCocoaEventDispatcher was dead and could be removed. Change-Id: I0c57e64791045d65033376c096220983059028ba Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| | * macOS: Simplify QCocoaWindow::setVisibleTor Arne Vestbø2019-02-181-32/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | We don't need all the checks for the event dispatcher, it should always be there. Change-Id: Ib89a9c1c5524b49c2d85fae12425d19ced960597 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| | * macOS: Remove dead code in window activation handlingTor Arne Vestbø2019-02-181-24/+0
| | | | | | | | | | | | | | | | | | Change-Id: I321ab68b51c4ba63204c0e15fec74164e2c93d34 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | * Add cmdline feature to qmakeJoerg Bornemann2019-02-1877-161/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][qmake] A new feature "cmdline" was added that implies "CONFIG += console" and "CONFIG -= app_bundle". Task-number: QTBUG-27079 Change-Id: I6e52b07c9341c904bb1424fc717057432f9360e1 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
| | * Revert "Fix determination of OpenGL include paths on macOS"Joerg Bornemann2019-02-162-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 37970d7b3e6fff92dca98db974ada865c1bfd730. That commit broke the build on macOS, because the OpenGL headers aren't resolved anymore at configure time. Change-Id: Iec6ef009c9ea7e28b12eeca6b5eb06918bf49d98 Fixes: QTBUG-73827 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| | * Fix OpenGL ES2 build on LinuxJoerg Bornemann2019-02-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The feature detection in QOpenGL test project file needed adjustment. This amends commit dd988e20. Change-Id: I7efaaec9fbf564be4033e99a8554dbe51322f494 Fixes: QTBUG-73592 Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
| | * wasm: fix building examples and applicationsLorn Potter2019-02-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a bug where app build would fail with AssertionError: SIMD is used, but not supported in WASM mode yet Change-Id: I27d5eb00b2c869b890dc519a7a793b7f87aeb9d2 Fixes: QTBUG-73795 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| | * qmake: don't mess up linking order of frameworksOswald Buddenhagen2019-02-141-6/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | make it "last one wins", consistently with regular libraries. this isn't really relevant in qmake, because the order matters only for static frameworks, which qmake defines out of existence. note that specifying frameworks by full path does not work, so we don't need to amend 9d76beee5 in that regard. Change-Id: Ib027109339e1b5973c577d69906b6daf83ba9611 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * | wasm: improve key handlingLorn Potter2019-02-182-270/+452
| | | | | | | | | | | | | | | | | | | | | | | | | | | Allow for extended non English keys Task-number: QTBUG-68189 Task-number: QTBUG-69392 Change-Id: I12187ebc1250a5c29022cd2d3ad3a77eb45c06a8 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| * | QtCore: replace null and nullptr with \nullptr in documentationChristian Ehrlicher2019-02-1814-106/+107
| | | | | | | | | | | | | | | | | | | | | Replace null and '\c nullptr' with \nullptr in the documentation. Change-Id: Ib9e0cfc2eb2830b213e6523773603d56180b0998 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * | QtNetwork: compile with QT_DISABLE_DEPRECATED_BEFORE=0x050d00Christian Ehrlicher2019-02-181-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | Don't call or implement functions which are not available when compiling with QT_DISABLE_DEPRECATED_BEFORE=0x050d00 Change-Id: I9e059cfa6d5e70c5672d50d7d4dae7483314ad17 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| * | OCSP response - fix APITimur Pocheptsov2019-02-185-60/+125
| | | | | | | | | | | | | | | | | | | | | | | | | | | as proposed in the API review. Change-Id: I607a38d24d533da59fc0d33dac886fa7693ed6c8 Fixes: QTBUG-73739 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
| * | Add run-time qpa offscreen glx support selectionMichal Klocek2019-02-184-53/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce QT_QPA_OFFSCREEN_NO_GLX to run offscreen qpa without glx even if compiled with x11 support. Task-number: QTBUG-63346 Change-Id: I647bf5df27f095c3dd27a90415cc9c445df93fd1 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * | remove obscure commentGatis Paeglis2019-02-151-2/+0
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-73826 Change-Id: I2d15ab726ae3be85220bf96aef673d0037738d97 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| * | wasm: add clipboard supportLorn Potter2019-02-156-11/+307
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This feature uses the js Clipboard API and is supported only in Chrome, as Firefox only supports reading the clipboard in browser extensions. It also requires https or localhost access, otherwise access to the clipboard is blocked by chrome. Chrome users will be able to copy/paste text to and from the system clipbaord. Other browsers will be able to use the clipboard from within the same application. Currently only supports text and html. Task-number: QTBUG-64638 Change-Id: Ie6de9d10812b776519bd6115593b433fe77059fe Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| * | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-02-1537-508/+461
| |\| | | | | | | | | | Change-Id: I8cad26f17834dbc9f7151edc0f17786f9e32025d
| | * Add <features.h> include to hurd-g++ mkspecSamuel Thibault2019-02-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Without this include, __REDIRECT does not get defined, and then open gets #defined to open64, leading to bogus MOC output. See https://bugs.debian.org/920613. Change-Id: I629d9dc6af05b9480c0c81a61d8890ab8bbefaae Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| | * Windows: Freetype: Load fonts from the user locationsAndy Shaw2019-02-141-21/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since Windows 10 update 1809 it is possible to install fonts as a user so they are only available for use by the user and not on the system. So this location in the registry needs to be checked as well when looking for available fonts. Fixes: QTBUG-73241 Change-Id: I5d808e38b80dde8189fe8c549a6524bd559e30c7 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | * Turn bcm_host library into makeSpec sourceJoerg Bornemann2019-02-144-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | The bcm_host library couldn't be detected anymore. Let the makespec provide LIBDIR, INCDIR and LIBS for bcm_host to fix this. Change-Id: I4bc268504dc48edaf2884f1c14b745260fd9112c Fixes: QTBUG-73727 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
| | * Recognize UNC paths as absolute (i.e. not relative)Edward Welbourne2019-02-131-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | IoUtils::isRelativePath() didn't attempt to consider UNC paths, due to a belief that qmake fails on them so badly that it wasn't worth the extra code. However, it turns out Qt Creator's copy of this code does need to take this into account, so start the change off in qmake's version so as to keep in sync. Task-number: QTCREATORBUG-21881 Change-Id: I3084b87c1d3ca6508255e94e04ac8db3ceaebb7e Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| | * winrt: Handle WaitForWindowExposedOliver Wolff2019-02-134-5/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As winrt does not have native windows, exposure check was just done by checking, whether the window is the active window. If a window is shown fullscreen though, winrtscreen will be resized. This resize triggers a resize of every maximized or fullscreen window that is shown. If we enter or leave full screen mode, we have to wait until the screen resize and the subsequent window resizes are done and only then we can consider the windows properly exposed. This patch reverts 54bcb9d42f5ceaafcca426dc2a5cc25d299d5a3d and thus unblacklists tst_QGraphicsItem::cursor on WinRT. Fixes: QTBUG-73545 Change-Id: If469fce319ed6b3a5d56b7bf3cbc11929b72bb11 Reviewed-by: Andre de la Rocha <andre.rocha@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
| | * qmake vcxproj generator: Use correct version in solution header for 2017Oliver Wolff2019-02-131-1/+1
| | | | | | | | | | | | | | | Change-Id: I360202c88a8da84f3ecaf43304fcf6f5a992b953 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| | * qmake vcxproj generator: Update platform toolset and solution header for VS 2019Joerg Bornemann2019-02-133-2/+14
| | | | | | | | | | | | | | | Change-Id: Id01f28f2ef3e271fa48dddf5f8ccb6b057180aa0 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| | * Add support for Visual Studio 2019Oliver Wolff2019-02-131-0/+5
| | | | | | | | | | | | | | | | | | Change-Id: I963fc1c159edc644f081675c3dee248c25d7c9dc Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Andre de la Rocha <andre.rocha@qt.io>
| | * Don't wrongly detect fonts as obliqueEskil Abrahamsen Blomfeldt2019-02-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We were interpreting bit #8 as the oblique bit, but this is the WWS-conformity bit. Bit #10 is the oblique bit. [ChangeLog][Windows] Fixed an issue where loading fonts from files or data would sometimes mistakenly classify them as oblique. Fixes: QTBUG-73660 Change-Id: Id9e5012d1b89d0bee0e966c5105657b38834e13a Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| | * INSTALL: Remove outdated reference to Windows CEJoerg Bornemann2019-02-131-1/+0
| | | | | | | | | | | | | | | Change-Id: Ie4960ab6632642094b97d8eeae5bfe17b0aad633 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
| | * qmake/vcxproj generator: Fix bug in extra compiler initializationJoerg Bornemann2019-02-131-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QMake ignored every extra compiler that sets variable_out and whose output does not have a builtin compiler (C++, C). What the code wants to achieve is to ignore extra compilers that put their output into variables that are handled "somewhere else already", e.g. are in the otherFilters list. Evidence for that is to be found in the addOnInput == true if branch. Task-number: QTBUG-71283 Change-Id: I8c1d76febccacb450cd14ad7a1f4b87726832312 Reviewed-by: Brett Stottlemyer <bstottle@ford.com> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| | * QBackingStore: Make QPlatformBackingStore creation lazyTor Arne Vestbø2019-02-131-10/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | Some platform backing stores may require that the window has been created, so let's defer the platform backingstore creation until absolutely necessary. Change-Id: Ib93151c6473e3bbe77d994782d84289c2f63bcf2 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | * Track call sites of QMacAutoReleasePools for debugging pool usageTor Arne Vestbø2019-02-131-11/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Printing pools by calling [NSAutoreleasePool showPools] will now give a more detailed view of where the various pools in the stack were created, eg: AUTORELEASE POOLS for thread 0x1000be5c0 17 releases pending. [0x107802000] ................ PAGE (hot) (cold) [0x107802038] ################ POOL 0x107802038 [0x107802040] 0x107791c70 ^-- allocated in function: main [0x107802048] ################ POOL 0x107802048 [0x107802050] 0x1073b2e80 ^-- allocated in function: QCocoaWindow::initialize() [0x107802058] 0x107111ed0 NSCompositeAppearance [0x107802060] 0x107111ed0 NSCompositeAppearance [0x107802068] 0x107111ed0 NSCompositeAppearance [0x107802070] 0x1073bbe10 __NSCFString [0x107802078] 0x1073bbde0 _NSViewBackingLayer [0x107802080] 0x1073bc100 NSWeakObjectValue [0x107802088] 0x1073bbe40 QNSView [0x107802090] 0x1073bbe40 QNSView [0x107802098] 0x107111ed0 NSCompositeAppearance [0x1078020a0] 0x107111ed0 NSCompositeAppearance [0x1078020a8] 0x1073bbe40 QNSView [0x1078020b0] ################ POOL 0x1078020b0 [0x1078020b8] 0x1073bbe30 ^-- allocated in function: QCocoaWindow::recreateWindowIfNeeded() Change-Id: I97faf30db5835fea2f05320435b1b8c334a478d1 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | * QTextDocument: Do respect white-space:nowrapKai Koehne2019-02-132-1/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prevent automatic insertion of line-breaks in blocks formatted with 'white-space:nowrap'. This follows the example of white-space:pre. Fixes: QTBUG-54787 Change-Id: If26f6a54106a02fe0e388947f6368ae4e86acf63 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | * macOS: Add auto-release pool during QCocoaScreen::deliverUpdateRequests()Tor Arne Vestbø2019-02-121-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Checking the application's keyWindow will autorelease the window, and there's no root pool in place when called from the display-link thread. Change-Id: Ic43164ad6397c92b858fb549f7a00e28b6110849 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | * Windows QPA: Handle mouse input using legacy messagesAndre de la Rocha2019-02-123-344/+165
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change reverts to using legacy mouse messages when handling mouse and touchpad input, while using pointer messages to handle touchscreen and pen input. The use of pointer messages to handle everything, added in 5.12.0, caused issues in some particular cases, due mainly to differences in behavior or bugs in the pointer messages, which required workarounds in the Windows QPA, which didn't work well in all cases and led to additional issues. For instance, DoDragDrop() does not work when called by pointer (or touch/pen) handlers, but only after OS-synthesized legacy mouse messages are generated. Also, in some cases pointer messages for mouse movement are generated as non-client for client area events. Modal loops like the ones in window resize/move and menu handling caused some issues with pointer messages, as well. Also, we have to handle the OS-synthesized legacy mouse message generated for touch and pen. Ignoring them while letting the gui layer synthesize mouse events for touch/pen may break Drag and Drop by triggering DoDragDrop() before legacy messages, which can result in a hang inside the DoDragDrop() modal loop. This change should fix most regressions related to pointer messages, while keeping the enhancements in pen and touch input. Fixes: QTBUG-73389 Fixes: QTBUG-72624 Fixes: QTBUG-72801 Fixes: QTBUG-73290 Fixes: QTBUG-72458 Fixes: QTBUG-73358 Fixes: QTBUG-72992 Change-Id: I919f78930d3965270ef2094401e827ab87174979 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| | * Fix QSpinBox tests failing after change in the Windows QPAAndre de la Rocha2019-02-121-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some QSpinBox tests start failing after reverting to using legacy mouse messages to handle mouse input in the Windows QPA. It seems to be caused by a test that runs before it and moves the mouse cursor. Then when the QSpinBox tests run, they create widgets that appear below the mouse cursor, causing some mouse events to be generating and messing with the events synthesized by the test itself. With the pointer messages being used for mouse input, the legacy mouse messages that are generated under this condition were being ignored. But by reverting to the old implementation, the legacy messages are handled again, causing the test to fail. This change moves the mouse pointer to a safe position during the test initialization, so it does not depend on the state left by previous tests. This change needs to be integrated together or before the change in the windows QPA. Change-Id: I91f7e9376dc495ee61250e0a7d908c1c2b685bc8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| | * macOS: Remove screen-update disable during resizeTor Arne Vestbø2019-02-121-34/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It was needed as a workaround for the window border and window content becoming out of sync when we were drawing and flushing to the layer from another thread using OpenGL. Since we've disabled ThreadedOpenGL we can remove this workaround for now. The workaround also had other problems, as windowWillResize: did not turn out to be a reliable signal to know when a window was about to resize. Since we override windowWillUseStandardFrame:, we would not get the callback when zooming windows. Conversely, if we removed the windowWillUseStandardFrame: override, we would get a single callback for windowWillResize:, and then multiple callbacks that the window had resized. In addition, windowWillResize: is not only used as a callback, but also as a way to let the window delegate restrict the size, so it's called when e.g. AppKit determines the standard frame of the window -- an operation that doesn't involve an actual resize operation. If we re-introduce a workaround using screen-update disabling we need a better hook than windowWillResize:, and we need to track when we disable screen updates so that we can pair them up with corresponding screen update enables, otherwise we'll get log messages in the console about "SLSReenableUpdate: unbalanced enable/disable update". Change-Id: Ifca8892083c8666976391a4ada8f8d1471493943 Fixes: QTBUG-73726 Task-number: QTBUG-69321 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | * macOS: Don't rely on QGuiApplication::instance() during CVDisplayLink callbackTor Arne Vestbø2019-02-121-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | The display-link callback comes in on a secondary thread, so there's a possible race in using QGuiApplication::instance() to check whether or not we're on the main thread. Change-Id: Ic26bca8f5f54847a1e1b11dc92e786693c86e9de Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| | * Add developer documentation on how to debug missing auto-release poolsTor Arne Vestbø2019-02-121-0/+10
| | | | | | | | | | | | | | | Change-Id: Ie3942210ab5bafea22d65d6f7c9a099e40ee6b73 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| | * macOS: Add explicit auto-release pool for requestActivateWindowTor Arne Vestbø2019-02-121-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The API is often called from main before entering the event loop, and the making the window first responder and key will autorelease both the window and view. Change-Id: Ie2a7dc14652015cbe802b57696e4a82d564e2dc0 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>