Commit Graph

67232 Commits (30cc8a28de3ccc7d02c11c74144971ae289cf076)

Author SHA1 Message Date
Jari Helaakoski 30cc8a28de Fix test compilation issues with QtLite configuration
Now developer build tests compile, but some are not working.
Functional fix will come later via separate tasks.

Task-number: QTBUG-122999
Change-Id: I70487b46c1b32ba4279cb02a4978e4f55ac0d310
Reviewed-by:  Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2024-05-06 14:29:02 +00:00
Frédéric Lefebvre 7feaf9d41e tst_QGroupBox::propagateFocus() remove setActiveWindow()
2f6fe3a268 as made calls to
QApplicationPrivate::setActiveWindow() redundant.

Remove redundant calls.

Task-number: QTBUG-121488
Change-Id: I2bcad29de4bcbb90a1e891a2f39db966288abdb1
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
2024-05-06 16:29:02 +02:00
Frédéric Lefebvre 8b3620c93d taskQTBUG_5008_textFromValueAndValidate() remove setActiveWindow()
2f6fe3a268 as made calls to
QApplicationPrivate::setActiveWindow() redundant.

Remove redundant calls.

Task-number: QTBUG-121488
Change-Id: I472e5648f9ea7ba699477d44b2a67500af371410
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
2024-05-06 16:29:02 +02:00
Frédéric Lefebvre 2e3f607aae tst_QStackedLayout::keepFocusAfterSetCurrent() remove setActiveWindow()
2f6fe3a268 as made calls to
QApplicationPrivate::setActiveWindow() redundant.

Remove redundant calls.

Task-number: QTBUG-121488
Change-Id: Iaf1e79193f0f7013d02d91930cc408af5b0f8e1d
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
2024-05-06 16:29:02 +02:00
Frédéric Lefebvre 0581f59deb tst_QStackedWidget::dynamicPages() remove setActiveWindow()
2f6fe3a268 as made calls to
QApplicationPrivate::setActiveWindow() redundant.

Remove redundant calls.

Task-number: QTBUG-121488
Change-Id: If6d2bbde186d21662bf9a72b0b03152317724f01
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
2024-05-06 16:29:02 +02:00
Piotr Wierciński 5441180ec7 wasm: Enable building WebAssembly platform plugin as shared library
Fixes: QTBUG-121924
Change-Id: I20a4a41a16ac3d7855f359df020564bfc7435c57
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
Reviewed-by: Even Oscar Andersen <even.oscar.andersen@qt.io>
2024-05-06 16:01:28 +02:00
Even Oscar Andersen a99285c977 wasm: Enable qstandardpaths test
Also log if the entries does not exist in the filesystem

Change-Id: Id7d4dec1610af13869e645cf96b5bf6a1e26b956
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2024-05-06 16:01:28 +02:00
Tatiana Borisova 7b738ffc58 QRegularExpression: use modernize comparisons
Replace class operators operator==(), operator!=() of
QRegularExpression to friend method comparesEqual() and
Q_DECLARE_EQUALITY_COMPARABLE macro.

Use QT_CORE_REMOVED_SINCE and removed_api.cpp to get rid of
current comparison methods and replace them with a friend.

Task-number: QTBUG-120304
Change-Id: Ib6fc83d29ad9bc710c2fdf32a3d60131fbf298b6
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
2024-05-06 16:01:28 +02:00
Marc Mutz a074dd5616 headersclean: add -Wredundant-decls
qpagesize.h violated it, resulting in a bug report, so add it to headerscheck.

Task-number: QTBUG-115583
Change-Id: I4c52fb72667edd3f3cf563b8bad91d343ac95328
Reviewed-by:  Alexey Edelev <alexey.edelev@qt.io>
2024-05-06 11:50:23 +02:00
Frédéric Lefebvre f9751fe13f tst_QGraphicsProxyWidget::actionsContextMenu() remove setActiveWindow()
2f6fe3a268 has made calls to
QApplicationPrivate::setActiveWindow() redundant.

Remove redundant calls.

Task-number: QTBUG-121488
Change-Id: Ib33b6d750a409e5a374fcbb42dbba646582be8a7
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
2024-05-06 11:28:15 +02:00
Frédéric Lefebvre d8a022eec4 taskQTBUG_5008_textFromValueAndValidate() remove setActiveWindow()
2f6fe3a268 as made calls to
QApplicationPrivate::setActiveWindow() redundant.

Remove redundant calls.

Task-number: QTBUG-121488
Change-Id: Ifec63ae2fcacdc37096e55f096def8c90a7b75ab
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
2024-05-06 11:15:04 +02:00
Frédéric Lefebvre 18379e5fd7 tst_QSpinBox::specialValue remove QApplicationPrivate::setActiveWindow
2f6fe3a268 as made calls to
QApplicationPrivate::setActiveWindow() redundant.

Remove redundant calls.

Task-number: QTBUG-121488
Change-Id: Ifea4bfa00cee9c4b15bc8ca7659d5f23d66c87d4
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
2024-05-06 11:15:01 +02:00
Christian Ehrlicher 0e5d551327 QDialogButtonBox: properly clear buttons in setStandardButtons()
When setting new buttons with setStandardButtons(), the old ones are
deleted by iterating over d->standardButtonHash. But this hash is
modified when a button is destroyed and therefore sometimes not all
buttons were deleted.
This amends df735d794f.

Fixes: QTBUG-123939
Pick-to: 6.7 6.5
Change-Id: I867086855cfde88a7b22a5579662f250b9db0042
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
2024-05-05 10:03:27 +02:00
Lena Biliaieva 65fef44ddf Add QHttpHeaders methods to QNetworkProxy
[ChangeLog][QtNetwork][QNetworkProxy] Added headers() and setHeaders()
methods to QNetworkProxy to provide an interface to work with
QHttpHeaders.

Task-number: QTBUG-107751
Change-Id: I8a82f56f0262c9f44d0cb52b2e411bf75626b926
Reviewed-by: Juha Vuolle <juha.vuolle@qt.io>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2024-05-03 21:48:36 +02:00
Christian Ehrlicher bbff35a343 QCommonStyle: Fix painting arrows when size is even
Rework the painting code to not use floating point numbers and make sure
the tip of the arrow is painted with one or two points (depending on the
size is odd or even) so the arrow is always symmetric. Therefore also no
anti-aliasing is needed. Sadly the dpr scaling and also
QPainter::drawPolygon() screw things up a little bit with such small
sizes, therefore do the dpr handling by ourself to get nice results.

Pick-to: 6.7
Fixes: QTBUG-124554
Task-number: QTBUG-114539
Change-Id: I8ab8c2ce3ceb90af5d7c3a0dfeec7f7445e92a4d
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2024-05-03 20:53:34 +02:00
Frédéric Lefebvre ccbff2c08b setFocus_simpleTwoWidgets() remove setActiveWindow()
2f6fe3a268 has made calls to
QApplicationPrivate::setActiveWindow() redundant.

Remove redundant calls.

Task-number: QTBUG-121488
Change-Id: I5161f63321d586e72787eee5101329746f03dde1
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
2024-05-03 20:53:33 +02:00
Joerg Bornemann d9a97f1836 Remove superfluous entries from qt_cmdline.cmake
Configure arguments that are special-handled in
QtProcessConfigureArgs.cmake don't need to be defined in
qt_cmdline.cmake. Remove those.

Change-Id: Ic5959711bfede1eca6d65363c2d005739c7f8aff
Reviewed-by:  Alexey Edelev <alexey.edelev@qt.io>
2024-05-03 18:42:37 +02:00
Joerg Bornemann ae64c54f8c configure: Fix --developer-build argument (with two hyphens)
We never properly handled double-hyphen arguments like --list-features.
However --developer-build worked by accident, because it did set
INPUT_developer_build implicitly.

Now, we don't automagically translate INPUT_foo to FEATURE_foo anymore,
and --developer-build stopped working.

Fix this by consistently handling -foo and --foo arguments.

Change-Id: Ibf32979b419c28e0a8e1f810f03ae3f295b14c69
Reviewed-by:  Alexey Edelev <alexey.edelev@qt.io>
2024-05-03 18:42:37 +02:00
Mate Barany 3377b74df9 Add QDebug support to QHttpPart
As part of QTBUG-114647 we are planning to introduce a deduction
mechanism that could deduce the contentType header and the
contentDisposition headers based on the arguments (and the MIME
database).

In case of non-trivial types this deduction may give the wrong result
and without QDebug support it might be a bit tedious to check.

The debug output displays some information about the body device if
one is attached, otherwise it displays the size of the body.

Task-number: QTBUG-114647
Change-Id: Ia693b078ff5b9f8ea57fbf3c385edaec47886ff1
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2024-05-03 15:16:14 +00:00
Frédéric Lefebvre b64932ba82 tst_QApplication::alert() remove QApplicationPrivate::setActiveWindow()
2f6fe3a268 as made calls to
QApplicationPrivate::setActiveWindow() redundant.

Remove redundant calls.

Task-number: QTBUG-121488
Change-Id: I208ad97d7b56ded15908b96ad03779db849ef6a9
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
2024-05-03 17:11:23 +02:00
Lucie Gérard ed162ae9dc Correct SPDX license tag
Task-number: QTBUG-124453
Change-Id: I75622ead8bdc42181df0c359260e09859aaf95db
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2024-05-03 14:04:52 +02:00
Lucie Gérard 6ea0f82fb8 Add copyright and licensing to .glsl missing them
Task-number: QTBUG-124453
Change-Id: Ib0923de6e33eb0a698c6cd44583a0a860c5c468c
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2024-05-03 14:04:52 +02:00
Frédéric Lefebvre 3d19633f5d bypassGraphicsProxyWidget() remove setActiveWindow()
2f6fe3a268 has made calls to
QApplicationPrivate::setActiveWindow() redundant.

Remove redundant calls.

Task-number: QTBUG-121488
Change-Id: I0a657c9aaac4684566edd212a510c7c9016117a2
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
2024-05-03 14:04:52 +02:00
Ivan Solovev 2352fa0040 QDataStream::readBytes: guard against integer overflow
The step variable changes in the geometric progression, which means
that it may overflow at some point. Since it is a qsizetype (signed 64
or 32 bit integer), the overflow would be UB, so we need to avoid it.
Add an extra check that the step is lower than the safe threshold
before increasing it.

Amends a1bfac287e.

Pick-to: 6.7
Change-Id: I6097986e614937fa88b31b3dd1e53ecff22533d7
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2024-05-03 14:04:52 +02:00
Volker Hilsheimer 5cdac10b46 Windows 11 style: simplify code to polish palette
There are two cases in which we let the style polish a palette:

- after merging the system palette and the style's standard palette
- or when a widget-class specific palette gets set

A style needs to know which colors of the palette it can safely
overwrite with style-specific preferences. For that to work, we
need to reset the resolve mask of the synthesized palette (first
case) to 0 before polishing. Palettes set explicitly by application
code will then have resolve bits set, and the polishing can
respect those colors and not overwrite them.

Simplify the polish() implementation then to check whether the
respective color's resolve bit is set, and only overwrite it with
the style's preferred color if the bit is clear. Move that logic
into a macro for simplification.

This amends b733d31f27 and makes
sure that colors that are set by the application explicitly don't
get overridden by the style.

Task-number: QTBUG-124490
Task-number: QTBUG-124286
Change-Id: I69e1e3da93f661ebdafee0b62adbb3d411322443
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
2024-05-03 14:04:51 +02:00
Volker Hilsheimer cee94658d6 Windows: handle theme changes synchronously when settings change
The handleSettingsChange handler is usually already executed through the
event loop. And if it is called directly e.g. when changing settings
programmatically, then all side effects of the change should be in
effect immediately.

Task-number: QTBUG-124490
Change-Id: I243772860b1137ef9fe712c4b0d1c88593d2bdb4
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2024-05-03 12:04:51 +00:00
Volker Hilsheimer 2c5f5bf2e8 Windows: simplify setting the dark border
A round trip through querying the window attribute to avoid a
call to the setter is overkill, we can assume that the setter won't
do anything if the value of the attribute doesn't change.

Also, don't check whether QWindowsIntegration::darkModeHandling
is overridden before calling setDarkMode, which checks that flag
already. The flag will be very rarely cleared (and we might want
to remove support for this obscure mechanism soon).

Task-number: QTBUG-124490
Change-Id: I7e027fd53f556200edfd127eaf5f2b97f027528e
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2024-05-03 14:04:51 +02:00
Laszlo Agocs a1371783ac rhi: metal: Reduce staging copy size for full-width texture uploads
Pick-to: 6.7 6.6 6.5
Task-number: QTBUG-120565
Change-Id: I3f11796e0cfd7261885cec04695665b2266082f8
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
2024-05-03 12:39:40 +02:00
Laszlo Agocs 690bb2e0c4 rhi: gl: Avoid a copy in partial texture uploads
Pick-to: 6.7 6.6 6.5
Task-number: QTBUG-120565
Change-Id: I7f1f8c42b98c5743708c4ff80e401070d8ab24ac
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
2024-05-03 12:39:40 +02:00
Lucie Gérard d6bc7613ac Add copyright and licensing to tools and utils files missing it
Task-number: QTBUG-124453
Change-Id: I7645bcd7a7559425659bc522530a25977d7b5c82
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2024-05-03 10:58:54 +02:00
Ari Parkkila 53a58a191c ptests: Skip qlocalsocket when running as root on Linux
On Linux root user has access rights to all files so it makes no sense
to verify socket file permissions.

Task-number: QTBUG-118680
Change-Id: I94a95e80c311f8d5cd6c799b1a76ffaaab7d9167
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2024-05-03 11:58:54 +03:00
Ari Parkkila 96ce1aabd4 ptests: Fix qlogging to use relative folder
Run qlogging_helper at relative working directory because
CMAKE_CURRENT_BINARY_DIR is not valid when test is run after
installed from package to target.

Task-number: QTBUG-118680
Change-Id: Ifd46d05562006ad4adf17517fae30ca5c63bc157
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2024-05-03 11:58:54 +03:00
Juha Vuolle 33ea383e0e Update macOS URL handling documentation
macOS has now similar support for https and custom uri schemes as iOS.

Fixes: QTBUG-124340
Change-Id: Ie17237c9625bac5cf110f06df99f1b94bf5ded42
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-05-03 11:17:17 +03:00
Juha Vuolle 664c7ffb21 macOS: Add support for custom uri scheme handling
With this support applications can claim to be handler for
specific custom scheme URLs such as "com.my.app"

This requires that the scheme is listed in the plist file
(CFBundleURLTypes and CFBundleURLSchemes).

One notable usage example is the use of OAuth redirect_uris.

[ChangeLog][macOS] Added support for custom uri scheme handling

Task-number: QTBUG-124340
Change-Id: Ia04e9b89b53ee6f24129f9dd5ee8fbc5c0f0516c
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-05-03 08:17:17 +00:00
Juha Vuolle e8e881ba35 macOS: Add support for universal links / https uri scheme handling
With this support applications can claim to be handler for
specific https URLs. This requires that an appropriate AASA
(apple-app-site-association) JSON file is hosted and accessible.

One notable usage example is the use of OAuth redirect_uris,
which are often required to use "https" URI scheme.

[ChangeLog][macOS] Added support for https/universal links handling

Task-number: QTBUG-124340
Change-Id: I91c725fcf209b295dc1b2687a52cd0a547aff1c8
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2024-05-03 08:17:16 +00:00
Thiago Macieira cbba65f9ce QNetworkProxy/libproxy: don't overwrite the user-provided protocol tag
Otherwise, we always query for "tcp://somehost" even when the user
provided a tag like "https", which has a reasonable chance of being
resolved.

Change-Id: I262c3499666e4f4fbcfbfffd17cbbbe74346b167
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2024-05-02 21:10:09 -07:00
Thiago Macieira d44d19dd98 SOCKS5: remove '###' from the error message
There's no reason for it to be there.

Pick-to: 6.5 6.7
Change-Id: I262c3499666e4f4fbcfbfffd17cbbcfcd798b100
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2024-05-02 21:10:04 -07:00
Thiago Macieira 0cd5eb895c tst_QResourceEngine: move the resource path to the end in the row label
Otherwise, it's impossible to select those rows in the command-line,
because they start with a colon.

Change-Id: I6979d02a7395405cbf23fffd17c98f455a4cbdaa
Reviewed-by: Ahmad Samir <a.samirh78@gmail.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
2024-05-02 17:12:37 -07:00
Thiago Macieira 08bb11d101 QResource: add support for memory mapping on Windows
Change-Id: I6979d02a7395405cbf23fffd17c90b446cba1486
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2024-05-02 17:12:35 -07:00
Thiago Macieira 315d6b6c2e QResource: re-factor the memory-mapping code into two helper functions
So I can more easily extend to Windows support and to reuse them later.

Change-Id: I6979d02a7395405cbf23fffd17c90b32dbbddd94
Reviewed-by: Ahmad Samir <a.samirh78@gmail.com>
2024-05-02 17:12:32 -07:00
Thiago Macieira fe6dda9bb9 QResource: move the internal classes to unnamed namespaces
So the compiler has more opportunities to inline and to not emit out-of-
line copies.

Pick-to: 6.7
Change-Id: I6979d02a7395405cbf23fffd17c9101b2b52472a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
Reviewed-by: Ahmad Samir <a.samirh78@gmail.com>
2024-05-02 17:12:30 -07:00
Thiago Macieira 39e156e639 QResource: obey the MapPrivateOption option to provide RW memory
The documentation says:

 The mapping will have the same open mode as the file (read and/or
 write), except when using MapPrivateOption, in which case it is always
 possible to write to the mapped memory.

So obey it.

This may cause high memory use by copying data we already have. This may
be important because applications may want to memory-map resources which
they intentionally didn't compress because those resources are
large. Later commits will implement some workarounds.

Fixes: QTBUG-124608
Pick-to: 6.7 6.6 6.5
Change-Id: I6979d02a7395405cbf23fffd17c8f03baf0ec00d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2024-05-02 17:12:27 -07:00
Thiago Macieira bc5cd4dba8 QResource: simplify map() to rely on the uncompressed data being there
We can only call map() if we've already called open() and that will
decompress the data.

Pick-to: 6.5 6.6 6.7
Change-Id: I6979d02a7395405cbf23fffd17c8f1f77ca92b2b
Reviewed-by: Ahmad Samir <a.samirh78@gmail.com>
2024-05-02 17:12:14 -07:00
Thiago Macieira 66c0f46d02 qtconfigmacros.h: add missing include: we use QT_VERSION_CHECK
Amends 3a6c8e02b6, which introduced this
check.

Fixes: QTBUG-124869
Change-Id: I262c3499666e4f4fbcfbfffd17cacbb6025150da
Reviewed-by: Ahmad Samir <a.samirh78@gmail.com>
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
2024-05-02 17:11:21 -07:00
Samuli Piippo 902ad05be7 qdbusxml2cpp: don't track command line
Generate source code without information about original location of the
source file. Useful for reproducible builds.

Task-number: QTBUG-105926
Task-number: QTBUG-105913
Change-Id: I33b24e11773c8ad3489cc84df3c42b43a6116378
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
Reviewed-by: Ari Parkkila <ari.parkkila@qt.io>
2024-05-02 23:05:07 +00:00
Marc Mutz 834e7d60a9 QRestReply: allow comments where white-space is allowed
This is RFC2822 grammar (except that line folding is not
allowed).

RFC9110 doesn't allow it anymore, but it might make sense to accept it
nonetheless (Postel's Law).

Pick-to: 6.7
Task-number: QTBUG-123544
Change-Id: Ie990cd332c7603dbdae29c19b2804bd33a058ca0
Reviewed-by: Juha Vuolle <juha.vuolle@qt.io>
2024-05-03 01:05:07 +02:00
Marc Mutz e53df7a021 QtPrivate::Continuation: add missing Q_DISABLE_COPY(_MOVE)
This polymorphic class is not designed for copying or moving, so
statically assert that it isn't moved or copied.

Amends dfaca09e85.

Pick-to: 6.7
Task-number: QTBUG-124909
Change-Id: I6a4fe460adf9bf903578601e500ccc697a3f7c96
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2024-05-03 01:05:07 +02:00
Lena Biliaieva 78b0d507ce Add QHttpHeaders methods to QNetworkCacheMetaData
[ChangeLog][QtNetwork][QNetworkCacheMetaData] Added headers() and
setHeaders() methods to QNetworkCacheMetaData to provide an interface
to work with QHttpHeaders.

Task-number: QTBUG-107751
Change-Id: I1dfed5c2e03f4912de0da96156425cd6b713c1d5
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Juha Vuolle <juha.vuolle@qt.io>
2024-05-02 22:11:44 +02:00
Axel Spoerl f97e60a4f0 Fix crash in QMainWindow:.tabifiedDockWidgets()
QMainWindow:.tabifiedDockWidgets() was refactored in Qt 6.6.3, because
it returned wrong values. It now loops from 0 to
QMainWindowTabBar::count() and uses QMainWindowTabBar::dockAt(), to
get the dock widget pointer for an index.

When a dock widget is removed from a floating tab, event processing is
necessary for the item_list and QMainWindowTabBar::count() to get in
sync. This case was overlooked in the refactoring. It can lead to
dockAt() being called with an out-of-bounds index, which it asserted.
The assertion triggered, when QMainWindow::removeDockWidget() and
QMainWindow::tabifiedDockWidgets() were called right after each other,
without processing events inbetween.

QMainWindowTabBar::dockWidgets() doesn't add nullptr to the list, it
returns.

Therefore, return nullptr, when dockAt() is called out-of-bounds.
Add test functionality in
tst_QDockWidget::updateTabBarOnVisibilityChanged().

Fixes: QTBUG-124262
Pick-to: 6.7 6.5
Change-Id: If66084b9f00b4e39f7a620da68df67c735029cf1
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2024-05-02 20:11:44 +00:00
Christian Ehrlicher 922ec9093d QSql/IBase: fix compilation
Looks like the CI does not compile the IBase/Firebird plugin so this
compile error slipped through.

Change-Id: I2e20088e10baa91f2e1e5e2b5656dfb7bdf42896
Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch>
2024-05-02 23:11:44 +03:00