summaryrefslogtreecommitdiffstats
path: root/src/plugins
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-10-303-52/+75
|\ | | | | | | Change-Id: I7f11733bda960196a96c6452bdabeb7072a8430d
| * Cocoa: rename IsMouseOrKeyEvent -> isUserInputEventMorten Johan Sørvig2019-10-291-36/+32
| | | | | | | | | | | | | | | | This matches the intended use of this function. Reformat to modern Qt style. Change-Id: I076d2bdb3ac14b346f0dc6934f7a47765badc6b0 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| * Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2019-10-282-16/+43
| |\ | | | | | | | | | Change-Id: I7803400aa500363fbaa57b0661315064bd3239d9
| | * macOS: Only skip screen reconfigure if primary screen changedTor Arne Vestbø2019-10-271-3/+2
| | | | | | | | | | | | | | | Change-Id: Ia5d208ace5086e8e92f95f859383773894a18768 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| | * macOS: Extend QCocoaScreen loggingTor Arne Vestbø2019-10-271-3/+31
| | | | | | | | | | | | | | | Change-Id: I91f89ff336b3f48aea91e50860264bd8359805cb Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| | * macOS: Class initialize QCocoaScreen membersTor Arne Vestbø2019-10-272-5/+5
| | | | | | | | | | | | | | | Change-Id: I163858400da28668b8a85241e9e6b1d989227a3e Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| | * macOS: Don't leak CFUUIDRefs when resolving NSScreen for platform screenTor Arne Vestbø2019-10-271-1/+1
| | | | | | | | | | | | | | | Change-Id: I5609071346ef44dc9f16359db451ea9b29dd2b0d Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| | * macOS: Remove assert that primary display always matches CGMainDisplayIDTor Arne Vestbø2019-10-271-4/+4
| | | | | | | | | | | | | | | | | | Fixes: QTBUG-78707 Change-Id: Ia517f543728c76dcf19558e9e68ed97db7cfaaa4 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-10-271-0/+2
|\| | | | | | | | | | | Change-Id: I182a639748760393f9e6b0724259201588aeaae3
| * | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2019-10-261-0/+2
| |\| | | | | | | | | | Change-Id: I208a36bf1c88c8291baaa5ca8fe8e838bc9d7aea
| | * Windows QPA: add support for MouseDoubleClickDistanceFilippo Cucchetto2019-10-251-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Query the double click distance using the windows GetSystemMetric. See https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-getsystemmetrics Change-Id: I6198a38ab1a6216286897f8bdb305f334b7b148e Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-10-2611-95/+81
|\| | | | | | | | | | | Change-Id: I379794a01cbf6fb39d94b24cc8c90b1971a212b9
| * | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2019-10-258-60/+57
| |\| | | | | | | | | | Change-Id: Iebedaa967a263854f18cd403ce007d7965f26d2b
| | * macOS: Don't set NSOpenGLPFANoRecovery for layer-backed viewsTor Arne Vestbø2019-10-241-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | The Apple software renderer is perfectly capable of being used when compositing CA layers. Change-Id: I3b78ff61a79869ecdb7bd431388041f2c124472e Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| | * macOS: Respect Qt::AA_UseSoftwareOpenGLTor Arne Vestbø2019-10-241-0/+6
| | | | | | | | | | | | | | | Change-Id: Ia83e8e9e571e4f46d2a8d810c376015552755457 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| | * macOS: Skip NSOpenGLContext flush if window exposed size is out of syncTor Arne Vestbø2019-10-241-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some clients such as QOpenGLWidget will end up drawing and flushing during the resize event, which for GL will result in an immediate update on the screen. The problem is that the underlying Core Animation layer, and the window's frame, has not been visually updated yet to the new size, so we end up drawing "ahead" of what the window server is showing the user. Ideally we'd be able to present the GL drawing in a transaction, in sync with the drawing of the window frame, but this API is only available for CAMetalLayer and CAEAGLLayer. As a workaround we detect when the exposed size is out of sync with the window geometry, and skip the flush until the exposed size has caught up. We know this will happen eventually as AppKit will always ask us to display after a resize. Change-Id: I1739ac8878b3fc6820a55dd017ddd170fd5f55d6 Fixes: QTBUG-79139 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| | * macOS: Improve handling of wantsBestResolutionOpenGLSurfaceTor Arne Vestbø2019-10-243-30/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We were disabling wantsBestResolutionOpenGLSurface whenever we detected the Apple software renderer, but this isn't needed when layer-backed, and did in fact result in the exact same visual result as the bug the code was working around -- only rendering to a quarter of the viewport. We now apply the workaround only when software rendering is combined with surface-backed views. The logic has also been improved to not rely on string comparison to look for the software renderer, but instead uses the renderer ID that the context provides. Since tweaking the wantsBestResolutionOpenGLSurface is only relevant when using a window for GL rendering the logic has been moved into QCocoaGLContext. Change-Id: I021aaefbb7a9782bc8ee3c9703da246510326d50 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| | * Merge remote-tracking branch 'origin/5.13' into 5.14Qt Forward Merge Bot2019-10-245-24/+7
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/io/qstandardpaths_unix.cpp src/corelib/tools/qsharedpointer_impl.h tests/auto/corelib/tools/qsharedpointer/tst_qsharedpointer.cpp Change-Id: Iae95c5778dc091058f16f6db76f04a0178a9e809
| | | * Revert "Release left button before showing the popup context menu"Eskil Abrahamsen Blomfeldt2019-10-213-19/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This partially reverts commit 5e8b16f0e4247cc978b08480450526cfa3b25029. Releasing the mouse button synthetically made it impossible to use tap and hold gestures. When investigating, it seems that other changes have fixed the original issue that 5e8b16f0e4247cc978b08480450526cfa3b25029 was meant to address, so this is no longer needed. [ChangeLog][Android] Fixed regression that made it impossible for an application to use the tap-and-hold gesture. Fixes: QTBUG-72408 Change-Id: I53f687d047a4ad0fdf3c8c96a00ed1b11d09f047 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
| | | * QODBC: Fix crash when a prepared statement is deleted after the db was removedChristian Ehrlicher2019-10-151-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a prepared statement is still alive after the database was removed with QSqlDatabase::removeDatabase(), the cleanup routine is trying to access the driver which is no longer alive which results in a crash. Fixes: QTBUG-79019 Change-Id: I4630e3b947a12b23ed062f015abc373fc0e246c1 Reviewed-by: Andy Shaw <andy.shaw@qt.io>
| | | * Cocoa: Update the PPK_PrinterName property if one is explicitly setAndy Shaw2019-10-151-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a QPrinterInfo is passed in to the QPrinter then it needs to ensure that the underlying session is set up to use the specified printer, otherwise it uses the default one as it has not been changed. Change-Id: I90012223e9831303d02fd3ffc68223dc492ece0c Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| * | | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2019-10-223-35/+24
| |\| | | | | | | | | | | | | | Change-Id: Ic062a5bd62621877b17cc0d47303b3c879241385
| | * | Propagate application termination requests through QPATor Arne Vestbø2019-10-193-23/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of having each platform plugin deal with application termination in their own weird ways, we now have a QPA API to signal that the system requested the application to terminate. On the QGuiApplication side this results in a Quit event being sent to the application, which triggers the default behavior of closing all app windows, and then finally calling QCoreApplication::quit(). The quit event replaces the misuse of a close event being sent to the application. Close events are documented as being sent to windows. The close events that are sent to individual windows as part of the quit process can be ignored. This will skip the final quit() of the application, and also inform the platform that the quit was not accepted, in case that should be propagated further. In the future the logic for closing windows should be unified between the various approaches in closeAllWindows, shouldQuit, and friends. Change-Id: I0ed7f1c0d3f0bf1a755e1dd4066e1575fc3a28e1 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
| | * | macOS: Merge [QCocoaApplicationDelegate canQuit] into callsiteTor Arne Vestbø2019-10-191-30/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The logic for handling termination without any event loops has been moved up as an early exit, and the code has been modernized. Change-Id: I202720b9923e35732cffea656e1ce108ef11953d Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | | Fix static linking when bearer management plugins are built, part 2Simon Hausmann2019-10-247-602/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After commit 5f160a3699d80d1736f691ad9ef774eb6aa28079 moved the code that's shared across all bearer management plugins into QtNetwork, there is one piece of code remaining that's shared across the connman and the networkmanager bearer plugin: The dbus ofono interface code. To avoid linking that twice (and causing duplicate symbol errors), this patch moves it into a static platform support library. This way for shared builds the code is included twice, but for static builds only once. Change-Id: Idf5414bc22fea45f11c600f28eaea91bb4dc6308 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-10-213-41/+28
|\| | | | | | | | | | | | | | | Change-Id: I642be6de9ef32491b09db97185146c671266240e
| * | | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2019-10-193-41/+28
| |\| | | | | | | | | | | | | | Change-Id: I69f44ea7254cb2643a00b040bbb46f41b7f76a87
| | * | macOS: Let system decide whether modal window should prevent app terminationTor Arne Vestbø2019-10-181-22/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The logic for preventing application termination when there are modal windows active was a leftover from the Carbon to Cocoa port, and is no longer needed. AppKit will deal with this on its own, by checking the preventsApplicationTerminationWhenModal property of each NSWindow. In some cases AppKit will also ignore this property, such as when quitting the application from the menu entry, which means we now get the default system behavior for this use-case. Change-Id: Iac5d8d8e17eb0974448f7ee6f39c9b7761bf4d90 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
| | * | QPSQL: Add support for PostgreSQL 12Christian Ehrlicher2019-10-172-19/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add proper version check and replace long deprecated and now removed access to pg_attrdef.adsrc. [ChangeLog][QtSql][QPSQL] added support for PostgreSQL 12 Fixes: QTBUG-79033 Fixes: QTBUG-79064 Change-Id: Iec1b13945c34ea017139ad1c5539ab5b7f1e03aa Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-10-191-2/+0
|\| | | | | | | | | | | | | | | Change-Id: I5b671c89ceb8998b37f99d58df0e0a9e5785e3ad
| * | | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2019-10-181-2/+0
| |\| | | | | | | | | | | | | | Change-Id: I4fbbf100b673ab100997dbf2f42bf195dc3c050f
| | * | macOS: Don't dismiss menu during applicationShouldTerminateTor Arne Vestbø2019-10-161-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The logic was a leftover from the Carbon days and is no longer needed. Change-Id: I557b669eadea902fa439c43162218c5864077df9 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* | | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-10-1730-155/+92
|\| | | | | | | | | | | | | | | Change-Id: Ica69de99be9c8af4d28a52e4b69e6af748ed983c
| * | | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2019-10-1630-155/+92
| |\| | | | | | | | | | | | | | Change-Id: Ifd83db69416230175ddc3161f640b612755018fc
| | * | macOS: Simplify Objective-C namespacingTor Arne Vestbø2019-10-1528-117/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We only need to use the QT_MANGLE_NAMESPACE macro when declaring the interface of the class. As long as we couple that with an alias declaration using QT_NAMESPACE_ALIAS_OBJC_CLASS, any further uses of the class name can be un-namespaced, including declaring categories on the class. The only snag with QT_NAMESPACE_ALIAS_OBJC_CLASS is that it can only be used once per class and translation unit, so forward declarations get hairy, but we can avoid that by just including the headers instead. Change-Id: I333bcd18fe1e18d81fbd560b0941c98b1c32460e Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| | * | Win32: Consolidate registry codeFriedemann Kleint2019-10-142-38/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a RAII class for registry keys and use it throughout the code base. Change-Id: I666b2fbb790f83436443101d6bc1e3c0525e78df Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* | | | Fix duplicate platform plugin definitionsSimon Hausmann2019-10-163-65/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | androidplatformplugin.cpp and main.cpp both tried to define the platform plugin entry point. That happens to work with the android toolchain by chance, but it's certainly not intentional. Change-Id: Ie92281abfb2335aa3ee83bc0ba660700d3485b2d Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* | | | Fix static linking when bearer management plugins are builtSimon Hausmann2019-10-1524-693/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The bearer plugins include copies of moc generated code that results in duplicate symbols when static linking pulls in multiple bearer plugins. Instead of relying on toolchain defined behavior, this patch moves the code that is shared into the shared library as private API. This way it will exist only once in memory and once at link time, resulting no linking errors about duplicate symbols. Fixes: QTBUG-79211 Change-Id: Iafa45c234e7fdd998971fc9cb7116334d08907bc Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-10-148-187/+98
|\| | | | | | | | | | | | | | | Change-Id: I129dd579f92cb2592a38ca043472b45cb926ae12
| * | | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2019-10-137-57/+72
| |\| | | | | | | | | | | | | | Change-Id: I9953c1ca16862184c2373027e946c482ce8e6f0e
| | * | macOS: Optionally flush sub-layers via sub-image copies of the backingstoreTor Arne Vestbø2019-10-111-10/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we're flushing the backingstore to sub-views with their own layers we don't want to pay the cost of uploading the whole backingstore to the GPU in the case where we're dealing with a discrete GPU. To work around this we make a copy of the appropriate part of the surfcace. This results in additional copies of the data, and will need further investigation to limit these. Task-number: QTBUG-77447 Change-Id: I318ae80e433dd7b0a55fd5a598b19f114d8bd28e Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| | * | macOS: Don't override event handler for kAEQuitApplicationTor Arne Vestbø2019-10-111-13/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The implementation of the default handler, [NSApp _handleAEQuit], does a lot more than just terminating the application, including sending NSWorkspaceWillPowerOffNotification if appropriate, and deals appropriately with state restoration. Change-Id: If725838fc0f40d09a0b8885eb3e7239499d8fea0 Fixes: QTBUG-18624 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| | * | macOS: Simplify reflection delegate handling in QCocoaApplicationDelegateTor Arne Vestbø2019-10-111-25/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sending a message to a nil object returns nil, so there's no reason to check the delegate before calling respondsToSelector, and we can use the implicit _cmd argument to pass along the selector for the method we're in. For applicationShouldTerminate, if there's a reflection delegate but it doesn't answer to applicationShouldTerminate it makes no sense to skip our own logic. Change-Id: Iafcd883a5c8cec1b35d2f95238de55eff060d71f Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
| | * | QMacStyle - fix the background color for tool buttonTimur Pocheptsov2019-10-111-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when it's in 'ON' state ("inverted" color in 'Dark' appearance). Number are rather arbitrary and extracted with 'Digital Color Meter' app to make it look similar to the native panel (to be honest, this tool button on a toolbar not to be found in many native apps, they use different buttons anyway). Fixes: QTBUG-71526 Change-Id: Ie61e60b77f097f04550006612e4aab6f11bb954b Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | * | Merge "Merge remote-tracking branch 'origin/5.13' into 5.14"Liang Qi2019-10-103-3/+15
| | |\ \
| | | * | Merge remote-tracking branch 'origin/5.13' into 5.14Liang Qi2019-10-103-3/+15
| | | |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/platforms/xcb/qxcbscreen.h src/src.pro Change-Id: I4e1981e69a1ddcbe4078ec6ab2a64b0da6a445de
| | | | * Blacklist Desktop GL for Mobile Intel 4 Series Express ChipsetMichael Brüning2019-10-071-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using desktop GL with this graphics card causes crashes e.g. when using Qt WebEngine. Fixes: QTBUG-58772 Change-Id: I90e12aab4475c17be262e391ff0989cebf0b3ec4 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| | | | * Xcb: fix rounding error in reporting screen refresh rateKirill Burtsev2019-10-042-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Screen refresh rate might not be just integer but with decimal part like, for example, 59.97 Hz. Fix calculation from raw xcb data and its store type as it is qreal already for QScreen::refreshRate API. Task-number: QTBUG-73911 Change-Id: Ia0494e953176c2854f0ed42c4498a29cfef16106 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| | * | | Windows QPA: Improve reliability of clipboard retrievalFriedemann Kleint2019-10-101-4/+13
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clipboard retrieval sometimes fails due to the other application having the clipboard locked. Retry opening the clipboard. The choice of parameters is empirical, they have been observed to prevent failures for MS Office applications at least. Fixes: QTBUG-53979 Change-Id: Icbcaee149f0d377f33b222cdafbb2a21a7f1cf9d Reviewed-by: André de la Rocha <andre.rocha@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| * | | QMYSQL: remove support for MySql 4.xChristian Ehrlicher2019-10-121-130/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MySql 5.0 was released 2005 so it's time to remove support for MySql 4.x 14 years later. [ChangeLog][QtSql][QMYSQL] Removed support for MySql < 5.0 since 5.0 was released 14 years ago. Change-Id: I45005accdffefbd9338ac0e710512a4c7ea8e09e Reviewed-by: Andy Shaw <andy.shaw@qt.io>