qt6-bb10/tests/auto/gui/kernel
JiDe Zhang 1d961491d8 Always update QPalette resolve mask, regardless of QBrush change
56bd1b76d2 changed the update
resolve mask behavior in QPalette to avoid detaching brush data
when modifying the resolve mask if the brush value is not changed.

But this behavior broke compatibility, it introduced unknown risks, and
we cannot ensure that other code in Qt does not depend on the old
behavior.

We both need to ensure that we don't detach when the value is not
changed, and ensure that the resolveMask is always updated regardless
of whether the value changes, so we need to split them up and
independently share the brush data.

QFont will update its corresponding resolveMask even if the value has
not changed, so it is better to correct this behavior so that QPalette
and QFont are consistent.

[ChangeLog][QtGui][QPalette] Always update resolve mask in
QPalette::setBrush, even if the value of brush has not changed.

Fixes: QTBUG-98762
Pick-to: 6.4 6.3 6.2
Change-Id: Ib845361b30f21c3d78c16ced923c1678b12e05ac
Reviewed-by: JiDe Zhang <zhangjide@uniontech.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2022-07-08 17:09:04 +00:00
..
noqteventloop Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qaction Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qactiongroup Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qaddpostroutine Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qbackingstore Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qclipboard Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qcursor Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qdrag Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qevent Revert "QFutureCallOutEvent: de-export again" 2022-07-06 18:41:31 +02:00
qfileopenevent Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qguiapplication Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qguieventdispatcher Remove the qmake project files 2021-01-07 15:32:28 +01:00
qguieventloop Remove .prev_CMakeLists.txt files 2021-01-12 20:59:13 +01:00
qguimetatype Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qguitimer Remove the qmake project files 2021-01-07 15:32:28 +01:00
qguivariant Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qhighdpi Revert "Apply ScaleFactorRoundingPolicy to QT_SCREEN_SCALE_FACTORS" 2022-07-07 14:47:14 +02:00
qinputdevice Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qinputmethod Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qkeyevent Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qkeysequence QKeySequence: Add missing modifier names 2022-05-25 13:00:02 +00:00
qmouseevent Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qmouseevent_modal Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qopenglwindow Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qpalette Always update QPalette resolve mask, regardless of QBrush change 2022-07-08 17:09:04 +00:00
qpixelformat Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qrasterwindow Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qscreen Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qshortcut Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qsurfaceformat Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtouchevent Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qwindow tst_qwindow: modify some abnormal touch tests 2022-07-05 13:55:19 +02:00
CMakeLists.txt CMake: Add BUILTIN_TESTDATA option to qt_internal_add_test 2022-02-11 21:54:44 +01:00