summaryrefslogtreecommitdiffstats
path: root/src/plugins
Commit message (Collapse)AuthorAgeFilesLines
...
| * Fix developer build with clang-cl failing due exception specFriedemann Kleint2020-01-101-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | Clang does seem to understand __declspec(nothrow) as used by the COM macros like STDMETHOD. Suppress the warning, fixing errors like: qwindowsfontenginedirectwrite.cpp(105,24): error: 'AddBeziers' is missing exception specification '__attribute__((nothrow))' [-Werror,-Wmicrosoft-exception-spec] Task-number: QTBUG-63512 Change-Id: If582cb0c12c62a7d12c4ae702747aac1f735db3c Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | QWindowsVistaStyle: Fix build with no dockwidget & commandlinkbutton featuresNodir Temirkhodjaev2020-01-102-1/+10
| | | | | | | | | | Change-Id: I0f7465cbe80e305680df37b2bf5e2f50874e6fe3 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | xcb: Fix nullptr vs. VK_NULL_HANDLE errorLaszlo Agocs2020-01-092-2/+2
| | | | | | | | | | | | | | Fallout from a recent 0 - nullptr fixup in 5.15. Change-Id: I17adf742d4f65dc6a468fbe72d0f02d3efa276d7 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Liang Qi2020-01-091-1/+5
|\| | | | | | | | | | | | | Conflicts: src/corelib/kernel/qobject.cpp Change-Id: I4780b25665672692b086ee92092e506c814642f2
| * iOS: Handle positionFromPosition out of boundsAndy Shaw2020-01-091-1/+5
| | | | | | | | | | | | | | | | | | | | | | Based on the documentation for positionFromPosition, if the resulting position is less than 0 or longer than the text, then we should return nil. This fixes problems with placement of the cursor and selection rectangle when auto-completion is used. Fixes: QTBUG-79445 Change-Id: I44a18881527a8a22012fe5fcbbc3216e60c48bc9 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.14' into 5.15"Qt Forward Merge Bot2020-01-092-0/+7
|\ \
| * | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2020-01-092-0/+7
| |\| | | | | | | | | | Change-Id: I9b4816b4aa6f0c51a446742db58b9d0dcf69aa09
| | * xcb: Propagate size hints when window changes its scaling factorBłażej Szczygieł2020-01-082-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Properly scale size hints to the new scaling factor. Fixes: QTBUG-80476 Change-Id: I1081c9b01560f7e434f0f1de0199ef3d3cae787c Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* | | wasm: futureproof EmscriptenMouseEventLorn Potter2020-01-091-2/+2
|/ / | | | | | | | | | | | | | | | | | | Future versions of emscripten will remove the timestamp, so we need to replace this with the current timestamp See https://github.com/emscripten-core/emscripten/commit/a7f058a1e6e4b72b4446a3b36f8e96f9f8f41f2d#diff-9a5d68085dc7db2938b37a2b7b05c1f5 Change-Id: Ieba323ad54933626d90ac7cbae5a2c471c52628e Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.14' into 5.15"Qt Forward Merge Bot2020-01-071-2/+4
|\ \
| * | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2020-01-071-2/+4
| |\| | | | | | | | | | Change-Id: I6c81e3cb6272adc5c3de2513792bd48604ff4dd0
| | * tablets on xcb: report correct local coordinates to nested windowsShawn Rutledge2020-01-061-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change e4532224145a0a72cde9b40cb7fd39011624d1c1 tried to map global position directly from the desktop to the window that should receive the event. That's fine for single-window applications; but media players like OBS and VLC often use embedded windows to play video. So the mapping needs to traverse the window parent hierarchy somehow. In this patch it's done by calling QWindow::mapFromGlobal(), but that only works with integer coordinates (QPoint). To preserve the fix for QTBUG-48151 (and other jitter bugs), we need sub-pixel accuracy; so we have to add back the fractional part after mapping the int part. Fixes: QTBUG-77826 Change-Id: Ib52ce14138e477182e0ef53b0ff30ce1eff40372 Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
* | | Revert "Android: Implement MaximizeUsingFullscreenGeometryHint"Eskil Abrahamsen Blomfeldt2020-01-078-108/+107
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c17a5cec1901dd23f4c39ec2ae47a060fbb06895. The patch introduced a call to View.getRootViewInsets() which was introduced in API level 23. We don't want to change the minimum level for Qt 5.x series now, so we will revert the change in 5.15 and reintroduce it in Qt 6, simultaneously setting the minimum API level to 23. Task-number: QTBUG-74202 Change-Id: Ia25bb2cd62287aa80a43bbd294fb757f3f79ff5e Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* | Merge "Merge remote-tracking branch 'origin/5.14' into 5.15"Qt Forward Merge Bot2020-01-063-7/+14
|\ \
| * | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2020-01-063-7/+14
| |\| | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/kernel/qvariant.h Change-Id: I8f3873e74b9795ac889e7c7ec5de2619bca92160
| | * macOS: Skip uninitialized buffers in IOSurface backingstoreTor Arne Vestbø2020-01-031-2/+4
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-80972 Change-Id: Ifb8eb84d6b802556ccd52ac129a91e142e265a81 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| | * macOS: Handle missing color space information in IOSurface backingstoreTor Arne Vestbø2020-01-031-3/+10
| | | | | | | | | | | | | | | | | | Fixes: QTBUG-80972 Change-Id: Iab3f1a9cf03251340e5f32bcc73103428e93282d Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| | * Remove commented out code added by mistake in 7ac4e55cb979dTor Arne Vestbø2020-01-021-2/+0
| | | | | | | | | | | | | | | Change-Id: Ibd53518be9d2b29dd880912bdb81c06435543789 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | | Modernize setAlphaChannel(), and deprecated alphaChannel()Allan Sandfeld Jensen2020-01-051-2/+0
|/ / | | | | | | | | | | | | | | | | | | | | | | The two methods have been marked obsolete for a very long time, setAlphaChannel() is still convenient though, so this patch modernizes it and removes obsolete from the API, while marking QImage::alphaChannel() as deprecated. They don't work as getter and setter anyway, since setAlphaChannel() actually does an alpha composition. Change-Id: I634d6463f78c42bb9c5fa3df17500ec01bfcac33 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* | SQL: add proper support to build QMYSQL with MariaDB client librariesChristian Ehrlicher2020-01-032-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The QMYSQL plugin can also be build with the MariaDB client libraries since they are source compatible. But the MariaDB libraries could not be found on windows because the library name differs. Therefore add the correct library names and update the documentation to make clear that MariaDB is supported through the QMYSQL plugin. [ChangeLog][Sql][QMYSQL] The QMYSQL plugin can now be build with the MariaDB C connector libs on Windows. Change-Id: Id99f8be96c4179fd2321b3e61c90bb300c53bb82 Reviewed-by: Marius Kittler <mariuskittler@gmx.de> Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2020-01-022-8/+15
|\| | | | | | | Change-Id: I7b6e6c687d8d60b4a54e6b9dada025ef66c53d96
| * wasm: fix setting translucent backgroundLorn Potter2020-01-011-1/+1
| | | | | | | | | | | | | | | | | | | | We need to set the requested SurfaceFormat which may contain the alphaBufferSize in order for the GL context to have the alpha attribute Fixes: QTBUG-77303 Change-Id: I39860e24de49a255ab7e73bca78af92e6c074d0d Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| * wasm: support all cursor shapesAlexandra Cherdantseva2019-12-301-7/+14
| | | | | | | | | | | | | | | | Every Qt::CursorShape is supported. Tested in Chrome, Firefox and Safari. Change-Id: I38c9024dba4af70af789ac84ad7e38f749c847d7 Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
* | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2019-12-277-33/+45
|\| | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/plugins/platforms/xcb/qxcbscreen.cpp src/widgets/accessible/qaccessiblewidget.cpp Change-Id: Ib3138e61ba7981610940509a7ff02ba2dd281bf0
| * macOS Don't throw away backingstore buffers when backing properties changeTor Arne Vestbø2019-12-235-30/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clients such as QtWidgets that do their own dirty tracking will assume they can just flush in response to the expose event, without repainting anything. Since we have no way at the moment to inform these clients that the backingstore content might be invalid we can't just throw it away. It turns out that to pick up changes in color spaces we can just tag the existing buffers with the new color space, so we don't need to throw it away. And for the older surface-backed mode we tag the color space on flush, so we didn't need to invalidate anything in the first place. Fixes: QTBUG-80844 Task-number: QTBUG-77749 Change-Id: Icb1ceb178894bb43887cdf03fb855d2d614b5ab0 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| * macOS: Deliver theme changes synchronouslyTor Arne Vestbø2019-12-191-1/+1
| | | | | | | | | | | | | | | | | | Otherwise the expose event that AppKit triggers will be delivered before we've propagated the theme change, and we fail to draw the UI using the new theme. Change-Id: I502122a2bf02a866d136106d831f0c2a0dfe26f2 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| * Parse Xft.dpi with fractionAllan Sandfeld Jensen2019-12-171-2/+12
| | | | | | | | | | | | | | | | | | Some versions of GNOME 3 would set Xft.dpi with fraction though that is technically not valid. Change-Id: Ib1027283cc78fd5d9869cd337864a92e28cd7e88 Fixes: QTBUG-64738 Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
* | QMacStyle: fix tab widget's tab barTimur Pocheptsov2019-12-211-1/+25
| | | | | | | | | | | | | | | | | | | | | | Alas, this thing strikes back: I have to use clip to remove the part of NSBox coming through the transparent buttons, but this works (as I've noticed recently) only for 'North' and 'West' tab positions. For 'South' and 'East' different geomety adjustments are required. Change-Id: Id1f77bc1869e82e710132a2f4402cc3c8be3ab01 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | Fix unneeded use of QImage invertPixels and createAlphaMaskAllan Sandfeld Jensen2019-12-191-9/+2
| | | | | | | | | | | | | | | | The result of createAlphaMask was mostly overwritten and then inverted, we can write the right values directly instead. Change-Id: I3cdddcc74218a4058bddd20178733688607c8a01 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* | Windows QPA: Allow the native Windows virtual keyboard to be disabledAndre de la Rocha2019-12-172-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | This change provides a way to disable the automatic showing of the native Windows on-screen virtual keyboard when a text editing widget is selected on a system without a physical keyboard, by enabling the new AA_MSWindowsDisableVirtualKeyboard application attribute, allowing applications to use a custom virtual keyboard implementation. Fixes: QTBUG-76088 Change-Id: Id76f9673a2e4081e5325662f3e3b4b102d133b9a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | Merge "Merge remote-tracking branch 'origin/5.14' into 5.15"Liang Qi2019-12-163-84/+284
|\ \
| * | Merge remote-tracking branch 'origin/5.14' into 5.15Liang Qi2019-12-163-84/+284
| |\| | | | | | | | | | | | | | | | | | | | | | Conflicts: src/network/ssl/qsslsocket.cpp src/widgets/kernel/qapplication.cpp Change-Id: Ib7421cc2df59d0969f89b3fbd65a17ea76ffef3b
| | * Merge remote-tracking branch 'origin/5.14.0' into 5.14Qt Forward Merge Bot2019-12-133-84/+284
| | |\ | | | | | | | | | | | | Change-Id: I03927d2ef75514e4f2633839387806125d8954f1
| | | * Initialize all variablesBogDan Vatra2019-12-031-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set m_isFolder = false also in "close" method Fixes: QTBUG-80468 Change-Id: I5449692d61d4d340e83bdca337b86e054e8bf561 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | | * Fix assets iteratorBogDan Vatra2019-11-291-14/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - start from index -1 each time when we iterate. Each time when we add a FolderIterator to the stack we MUST reset the index (-1) otherwise it will continue from it's last position. To fix it we are cloning the FolderIterator to set the index to -1. The index must be -1 in order to set it to 0 when we first call next() method. - introduce "fileType" static method for a more reliable also much faster file type lookup. The old version of checking if a file exists, is a folder or a file was buggy that's why it skipped some file randomly. Fixes: QTBUG-80178 Change-Id: I4b28e4616399b1bff35d792b55ded1bf19b62dd9 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | | * macOS: Harden screen handling logic when reconfiguring displaysTor Arne Vestbø2019-11-292-68/+225
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When connecting/disconnecting/reconfiguring screens Qt needs to know about the changes before they are propagated by the OS in other ways, so that we can reflect the changes in the list of QScreens as soon as they happen. Unfortunately the canonical notifications for this in AppKit, NSApplicationDidChangeScreenParametersNotification, is delivered after AppKit itself reacts to the change, which results in receiving NSWindowDidChangeScreenNotification, NSWindowWillMoveNotification, and others, while the list of QScreens is stale. To work around this we adopted the lower layer Quartz Display Services API in 3976df2805 to notify us when there are changes to the screen configuration. Unfortunately the window server on macOS is not consistent in how it orders events during screen reconfiguration, and we can't rely on the NSScreen list being up to date when we get our callbacks from Quartz. To work around this we still hook into Quartz, so that we get the callbacks as early as possible, but then track the state of the AppKit NSScreen list and update our own QScreens as soon as we see a change. We now also include sleeping displays in the list of QScreens, which matches the behavior of NSScreen.screens. Similarly we exclude displays that are mirroring another display. Task-number: QTBUG-80193 Change-Id: I6b1958d6ee61373b2861e05a0d971d2300596f3e Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* | | | Windows QPA: Use UTF-16 literals where possibleFriedemann Kleint2019-12-1613-87/+89
|/ / / | | | | | | | | | | | | | | | | | | This should minimize diffs to Qt 6. Change-Id: Id74c0b4085085984bd51251765420718d16e9fc7 Reviewed-by: André de la Rocha <andre.rocha@qt.io>
* | | Replace usages of QVariant::value by qvariant_castOlivier Goffart2019-12-158-20/+20
| | | | | | | | | | | | | | | | | | | | | This is done automatically with a clazy check Change-Id: I3b59511d3d36d416c8eda74858ead611d327b116 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | Provide repeat parameter to handleExtendedKeyEventJames McDonnell2019-12-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | QtWayland uses this to discard key repeats. Modifier key repeats confuse xkbcommon. Change-Id: I3ea384aa7b750ff83520bfb2440e61b91bb6e354 Reviewed-by: Dan Cape <dcape@qnx.com> Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* | | Move QQnxGLContext::ms_eglDisplay to the integration objectJames McDonnell2019-12-134-39/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In part, this is a continuation of https://codereview.qt-project.org/c/qt/qtbase/+/227953. It also paves the way toward implementing the EglDisplay integration resource needed by QtWayland. For the code that's being moved around and modified, switch from !QT_NO_OPENGL to QT_CONFIG(opengl). Change-Id: I5046e8caf5df7cf326f8e697d7d41cf802250414 Reviewed-by: Dan Cape <dcape@qnx.com> Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
* | | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2019-12-122-27/+11
|\| | | | | | | | | | | Change-Id: I69238f23882deebeaad46e4fdcf899ab22cc2b8f
| * | Doc/SQL: update sql driver creation instructionsChristian Ehrlicher2019-12-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Update the instructions on how to build and distribute the mysql and postgresql drivers on windows. Change-Id: Ie4d50c1c34820680d7496b9544eb00fcee17f8e7 Reviewed-by: Andy Shaw <andy.shaw@qt.io>
| * | PSQL: Optimize QPSQLResult::data() function for date and time typesRobert Szefner2019-12-101-25/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Minor performance optimalizations: - No need to check if the date and time are correct because the QDate, QTime and QDateTime parsing functions already perform these checks - No need to add minute part to the UTC offset before parsing the date, because the QDateTime class can parse time zone offset both in form ±hh:mm and ±hh Change-Id: Id74b7ae075135c5c8cf420247c49b5f12fe88899 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | | Avoid initializing QFlags with 0 or nullptr in macOS-specific codeFriedemann Kleint2019-12-111-1/+1
| | | | | | | | | | | | | | | | | | | | | It is being deprecated. Change-Id: If1b0b058140e197d41efae93025c4eefc2ed9bbd Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | Merge "Merge remote-tracking branch 'origin/5.14' into 5.15"Liang Qi2019-12-1013-7/+128
|\ \ \
| * | | Merge remote-tracking branch 'origin/5.14' into 5.15Liang Qi2019-12-1013-7/+128
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: tests/auto/network/kernel/qnetworkinterface/BLACKLIST Change-Id: I1e8866c63b54bcd95fc2a044276ee15b7f60e79a
| | * | Windows QPA: Export "checkable" info for menu items through UI AutomationAndre de la Rocha2019-12-101-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to allow screen readers to say checked/unchecked for checkable menu items, this information has to be provided through UI Automation. Checkable menu items should implement the "Toggle" UI Automation pattern. The "checkable" state must also be supported by QAccessibleMenuItem, which is being added by a separated change. Task-number: QTBUG-80551 Change-Id: I661668310d1b6b4701d0c0efdb1dcfd15d0db729 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| | * | Move the tooltip out of the way of very large mouse cursorsVolker Hilsheimer2019-12-094-0/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Users that have large mouse pointers configured in their settings can not see tooltips, as they are obscured by the pointer. Native applications on Windows and macOS have the same problem, which includes the tooltips for the minimize/maximize/close controls in the window frame of e.g. Explorer. Introduce QPlatformCursor::size that returns a value that is based on the user's settings, or a default value. We can then use that value to move the tooltip out of the way. On Windows, the calculation of the cursor size is based on experimenting with the settings, which are in logical independent pixels. The placement of the tooltip attempts to keep existing behavior, and to not end up with a tooltip that's very far away from the tip of the arrow even for very large mouse cursors. [ChangeLog][QtWidgets][QToolTip] Make sure that the tooltip is not obscured by very large mouse pointers on Windows and macOS. Change-Id: I8e13b7a166bfe8b59cef4765c950f90fefeaef9d Fixes: QTBUG-79627 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| | * | Register the screen pulse eventJames McDonnell2019-12-092-3/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Future versions of QNX will, by default, require the use of registered events. Currently, event registration is supported but optional. Change-Id: Ie45484d5ca9fa832a28ccf08cb1764cf24262dcc Reviewed-by: Dan Cape <dcape@qnx.com> Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
| | * | PSQL: set correct empty QVariant in QPSQLResult::record()Christian Ehrlicher2019-12-091-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the QSqlField used to retrieve the data is reused in the loop, the default empty value of the QSqlField is not set for all except the first field since it was implicitly set by QSqlField::setType() only when the value is invalid. Therefore we have to call QSqlField::setValue() directly. Change-Id: I1d3abe4e3c46f6378f9ff25529a79bbe33bb7b74 Reviewed-by: Robert Szefner <robertsz27@interia.pl> Reviewed-by: Andy Shaw <andy.shaw@qt.io>