summaryrefslogtreecommitdiffstats
path: root/src/gui
Commit message (Collapse)AuthorAgeFilesLines
* QtFontStyle: Add missing const to non-mutable operatorsKonstantin Ritt2020-08-121-3/+3
| | | | | | | | and once I touch these lines anyways, either add noexcept ;) Fixes-up 8bdbb7f2267 Change-Id: Ibfaedcff82c041293220408ab7ae739b3cbd2a4f Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Allow smooth curve stroking for very wide linesEirik Aavitsland2020-08-121-1/+5
| | | | | | | | | | | | | | The earlier limit set on the curve threshold turned out to be too strict, leading to visibly bad rendering in reasonable use cases. Ref. 5322998a0ba80b1e095340245ddb00aaf5947be9 As a drive-by, add a missing fixed-to-real conversion. (This is a no-op in a default build, where qfixed==qreal.) Fixes: QTBUG-85193 Pick-to: 5.15 5.12 Change-Id: I7cc3543d7aa4e90643b275686372400879decef2 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Doc: Remove outdated documentationPaul Wicking2020-08-121-5/+0
| | | | | | | | | We don't have this class in Qt anymore. Drop the related snippet as well. Pick-to: 5.15 Change-Id: I5149e2f9da483b9ad678a6d414a278cb7e107f10 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Remove old CBOR-based format from QShaderLaszlo Agocs2020-08-114-218/+19
| | | | | | | | | We only support version 4 and 5 in Qt 6.0. 1 and 2 are already gone (due to being based on binary JSON), now we remove 3 as well. Task-number: QTBUG-81346 Change-Id: I3627dcc0587f1e36f11e93edf7172889e911d64e Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* CMake: pro2cmake: Specify library versions for 3rd party libs part 2Alexandru Croitor2020-08-102-18/+18
| | | | | | | | | | Embed package versions into the qt_find_package calls for various Linux specific packages. Task-number: QTBUG-82917 Change-Id: I5d1cb623f81932dfae4658b8a3a89eedb71ea3af Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* CMake: pro2cmake: Specify library versions for 3rd party librariesAlexandru Croitor2020-08-102-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | If certain 3rd party libraries have a version that's not suitable for Qt, the configure summary should say so, rather than use them and fail at build time. With the current situation, we have to duplicate the version information from the configure.json files in helper.py, by assigning the version number as an extra find_package variable. Rerunning configurejson2cmake then embeds this version info into the qt_find_package calls in configure.cmake. Some of the Find modules are rewritten to take the specified version into account when looking for the libraries. This involves moving around the code for creating a target, after calling find_package_handle_standard_args() so we know if a good enough version was found. Task-number: QTBUG-82917 Change-Id: I139748d8090e0630cda413362760034dc3483e11 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Avoid UB in 64bit compositionsAllan Sandfeld Jensen2020-08-081-17/+17
| | | | | | | | Multiplying 65535 by 65535 would exceed the precision of an int, so use 65535U instead. Change-Id: I066e552fb7db03ce867bcbfbd0b555ac98ca4bbf Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QBezier: Don't try calculating a unit vector when length is nullRobert Loehning2020-08-071-0/+4
| | | | | | | | | It's undefined and causes a division by zero. Fixes: oss-fuzz-24273 Pick-to: 5.12 5.15 Change-Id: I3d34d5c43cccff9255abaf87af265ddea3fe6d95 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* QPolygon: streamline constructors and special member functionsGiuseppe D'Angelo2020-08-071-24/+10
| | | | | | | | | | | Employ RO0; inherit the constructors from the base class; and do some code tidies as a drive by. The inherited constructors bring in goodies like initializer_list support. Change-Id: Ia00a3f9b0ccbf182bf837bc65ba2305110c8dc60 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* rhi: QRhiGles2 fix leak BlitFromRenderbufferPaul Lemire2020-08-071-0/+1
| | | | | | | Leaked FBO otherwise lead to massive runtime memory consumption increases. Change-Id: Ic8ffad4917c11294e6c83cdae0b36114d661b251 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Update qgrayraster.cAllan Sandfeld Jensen2020-08-061-79/+77
| | | | | | | | In particular switching the SUBPIXELS macro with FRACT makes the logic valid for all 24dot8 fixed point values. Change-Id: I4e58df94f8cf3c557f670c5d3088942e9b8efa6d Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Long Live QMap as a refcounted std::map!Giuseppe D'Angelo2020-08-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... and QMultiMap as std::multimap. Just use the implementation from the STL; we can't really claim that our code is much better than STL's, or does things any differently (de facto they're both red-black trees). Decouple QMultiMap from QMap, by making it NOT inherit from QMap any longer. This completes the deprecation started in 5.15: QMap now does not store duplicated keys any more. Something to establish is where to put the QExplictlySharedDataPointer replcement that is in there as an ad-hoc solution. There's a number of patches in-flight by Marc that try to introduce the same (or very similar) functionality. Miscellanea changes to the Q(Multi)Map code itself: * consistently use size_type instead of int; * pass iterators by value; * drop QT_STRICT_ITERATORS; * iterators implictly convert to const_iterators, and APIs take const_iterators; * iterators are just bidirectional and not random access; * added noexcept where it makes sense; * "inline" dropped (churn); * qMapLessThanKey dropped (undocumented, 0 hits in Qt, 1 hit in KDE); * operator== on Q(Multi)Map requires operator== on the key type (we're checking for equality, not equivalence!). Very few breakages occur in qtbase. [ChangeLog][Potentially Source-Incompatible Changes] QMap does not support multiple equivalent keys any more. Any related functionality has been removed from QMap, following the deprecation that happened in Qt 5.15. Use QMultiMap for this use case. [ChangeLog][Potentially Source-Incompatible Changes] QMap and QMultiMap iterators random-access API have been removed. Note that the iterators have always been just bidirectional; moving an iterator by N positions can still be achieved using std::next or std::advance, at the same cost as before (O(N)). [ChangeLog][Potentially Source-Incompatible Changes] QMultiMap does not inherit from QMap any more. Amongst other things, this means that iterators on a QMultiMap now belong to the QMultiMap class (and not to the QMap class); new Java iterators have been added. Change-Id: I5a0fe9b020f92c21b37065a1defff783b5d2b7a9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Avoid potential ub in corrupt bmp fileEirik Aavitsland2020-08-061-0/+2
| | | | | | | | | | biHeight may be int_min, in which case qAbs<int>() will not work. Fixes: oss-fuzz-22997 Pick-to: 5.15 5.12 Change-Id: Ic07d5aa0b4e4f2b6395e1a12d742e31b5282fdfc Reviewed-by: Robert Loehning <robert.loehning@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Add qt.pointer.grab logging in QEventPointShawn Rutledge2020-08-061-0/+27
| | | | | | | | | Add the logging category qt.pointer.grab, which generalizes the qt.quick.pointer.grab category in Qt 5 (and is almost always needed for troubleshooting Qt Quick pointer-handling bugs). Change-Id: I10b4f43aa60e8717d92ac43384d8fdeefd41d836 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Make QFontDatabase member functions staticEskil Abrahamsen Blomfeldt2020-08-062-41/+65
| | | | | | | | | | | | | | | | | | | | | | | | | QFontDatabase is a singleton and all instances would share a single, mutex-protected global data pointer. But some functions were implemented as non-static functions. This caused a lot of code on the form QFontDatabase().families(...) since there was no static access. Other functions were implemented as static. To consolidate, we make all functions static. This should be source-compatible, but not binary compatible. [ChangeLog][QtGui][Fonts] Some functions in QFontDatabase were in principle static, but previously not implemented as such. All member functions have now been made static, so that constructing objects of QFontDatabase is no longer necessary to access certain functionality. Fixes: QTBUG-83284 Change-Id: Ifd8c15016281c71f631b53387402c942cd9c43f6 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Add QPointerEvent::is[Press|Update|Release]Event accessorsShawn Rutledge2020-08-062-0/+62
| | | | | | | | | | QQuickPointerEvent had them, so despite how trivial they look, it's very convenient to keep using them in QQuickWindow rather than duplicating these kinds of checks in various places, and for multiple event types too. Change-Id: I32ad8110fd2361e69de50a679ddbdb2a2db7ecee Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Add QEventPoint::pressTimestamp() and priv setPressTimestamp()Shawn Rutledge2020-08-062-1/+4
| | | | | | | | | | | | There was no good reason for QEventPoint::pressTimestamp() to be missing. The case for QEventPoint::timestamp() is a bit dubious because it's redundant with QInputEvent::timestamp(); but for now, we keep m_timestamp, in anticipation that Qt Quick may need to keep copies of eventpoints between events, thus they need to avoid depending on their shorter-lived parent events too much. Change-Id: Iec38acfdfaa2afb3dc77d5cd1b95baa8d301c0fd Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* MSVC: remove the extern templateThiago Macieira2020-08-051-31/+33
| | | | | | | | | | | | The problem was that QtCore exported those classes deriving from containers, which caused applications to try and import those same functions from QtCore, depending on whether they saw the #include or not. Now we don't need the hack anymore. Change-Id: I0a103569c81b4711a649fffd14ec9282454a1fdc Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Clear old triangulated vertex data when a path is completely clippedJoni Poikelin2020-08-051-1/+1
| | | | | | | | | | | Old data was held in buffers which caused OpenGL paint engine to re-render previous shape again with current settings if the current path was completely clipped. Pick-to: 5.15 Fixes: QTBUG-35513 Change-Id: I0cd448e0b18d199af11e82d79b1ab72d0f89c79e Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Define unix platform interfaces also without openglSamuli Piippo2020-08-051-2/+2
| | | | | | | Fix build without opengl. Change-Id: I691fd4112d69b16690915fcf33f5ae30ca2d7a93 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Fix compiler issues when qreal is floatMichal Klocek2020-08-054-5/+5
| | | | | Change-Id: Ide3b5a3b0f2d93708409edac8aa999eb25c3ab54 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Fix "rectange" typos in qtbaseOliver Wolff2020-08-053-3/+3
| | | | | | Pick-to: 5.15 Change-Id: If064fae5eaaeb2e53e3dd05cb9dc1cdf49ad1f04 Reviewed-by: Rainer Keller <Rainer.Keller@qt.io>
* Remove InfoFlag from docsMichal Klocek2020-08-041-4/+7
| | | | | | | It seem to be a leftover after 4e400369. Change-Id: I1c12bfa70cb3716d5cd9d1306db23242b58f3096 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Remove last remaining bits of QtPlatformHeadersTor Arne Vestbø2020-08-044-5/+17
| | | | | | Task-number: QTBUG-84220 Change-Id: I951e04bfe9358a99951d1d61ff47b675584b7f81 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* Doc: Document QGradient::Preset enum valuesTopi Reinio2020-08-031-1/+170
| | | | | | | | Pick-to: 5.15 Fixes: QTBUG-85749 Change-Id: Ie77145e851ff64d4c88fce7211135d66e9b94a84 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Fix doc signature in QOpenGLContextLaszlo Agocs2020-08-031-1/+1
| | | | | | | | | Just T makes qdoc's clang parsing fail, it needs template<typename T>. Also, the return type is T*, not T. Change-Id: I210676aff3122b432888c3d79d9967e249ac88e1 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Add more doc fixes for Vulkan typesLaszlo Agocs2020-08-031-0/+3
| | | | | | | | Add dummy typedefs just for qdoc, this way the types show up in the generated docs. Change-Id: I408eeb5c4c1cbbb8cd7df8ca3c9c6b7c64b0ca88 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* Remove deprecated binary json featureEdward Welbourne2020-07-313-34/+1
| | | | | | | | | Deprecated in 5.15 in favor of CBOR. Fixes: QTBUG-81239 Change-Id: I711d4bd7dd1247f58e77ac9fa53304cbe5028918 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Fix build with MSVC2019Mitch Curtis2020-07-311-0/+13
| | | | | | | | | | | | | | | | | The error was: src\virtualkeyboard\qvirtualkeyboardinputcontext_p.cpp(305): error C2678: binary '!=': no operator found which takes a left-hand operand of type 'QList<QInputMethodEvent::Attribute>' (or there is no acceptable conversion) This patch fixes the issue by manually defining an operator== for QInputMethodEvent::Attribute. Change-Id: Idb283cf7b6ff4388a38ea7780c3d5c1c5f77038d Fixes: QTBUG-85789 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* rhi: QRhiGLes2::gatherUniforms fix gathering in structPaul Lemire2020-07-311-1/+2
| | | | | | | | In the case we don't have an array of structs, structPrefix needs to be suffixed with a dot to get the proper uniform names. Change-Id: I50ed54c2f7c3cc4556ed1854419bc4fe3a2989f7 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Another round of 0->nullptr cleanupAllan Sandfeld Jensen2020-07-3124-62/+64
| | | | | Change-Id: Ic8db7dc252f8fea46eb5a4f334726d6c7f4645a6 Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* Revert "Add missing override" for 3rdparty vk_mem_alloc.hAlexander Volkov2020-07-291-0/+3
| | | | | | | | | This partially reverts 9bad3508fccb058261d47e023400868147f2d733. Disable -Wsuggest-override for gcc when including the header instead. Change-Id: Id2507ce731da62bbd64aa6477b181735ba62adc1 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Export the QMutable* event classesShawn Rutledge2020-07-281-3/+3
| | | | | | | They are needed often in Qt Quick. Change-Id: I8f68798042dd7440958c8bc2b8fe7021af8ec34d Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Windows QPA: Move some internal functions to the new interfaceFriedemann Kleint2020-07-281-0/+10
| | | | | | | | | | | | | Move createMessageWindow(), the GPU detection for qtdiag and the async expose setting (used by Active Qt) from QWindowsNativeInterface to QWindowsApplication. Remove unused registerWindowClass() and use logFontToQFont() directly from the font database. Task-number: QTBUG-83252 Change-Id: I9c72351970b47457d08125557c2580016c66e586 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Windows QPA: Move mime-type related classes to the new interfaceFriedemann Kleint2020-07-286-1/+89
| | | | | | | | | | | | Move QWindowsMime (which was a public class in Qt 4 and moved to the QPA plugin in Qt 5) to the platform namespace and add register functions to the native application. Move in test code from QtWinExtras. Task-number: QTBUG-83252 Change-Id: Iaac440e2d5cb370110919921b1eeb779600b5b65 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Replace Q_ALWAYS_INLINE with static inlineAllan Sandfeld Jensen2020-07-285-48/+46
| | | | | | | | | Static inline on functions serves the same purpose of keeping non- inlined instances from different binaries from being mixed, and has the benefit of being available across compilers. Change-Id: I12467f6d887471d8fd70ff4623c473c2a5a45664 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Sanitize lengthValue in CSS parserRobert Loehning2020-07-271-5/+4
| | | | | | | | | | Limit the LengthData to the integer range before rounding it, taking into account that qRound() substracts 1 from negative values. Fixes: oss-fuzz-23220 Pick-to: 5.15 5.12 Change-Id: I1b4383f3c33aac22746831002b2c74fc134faf77 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Windows QPA: Move dark mode handling to the new interfaceFriedemann Kleint2020-07-251-0/+13
| | | | | | | | | | Move options to new interface, making them settable from code on this occasion. Task-number: QTBUG-83252 Change-Id: Idd80667c502a8cde5d7c66d7e597ea34c22738e7 Reviewed-by: André de la Rocha <andre.rocha@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* QtGui: Add Windows conversion functions for to QImageFriedemann Kleint2020-07-242-13/+116
| | | | | | | | | Add conversions from/to HBITMAP, HICON to QImage. Split the pixmap conversion functions apart to use them. Task-number: QTBUG-81876 Change-Id: Ic0c41a402a1f6e9bec572fc4d691357bd48e6423 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Fix under non-integer scaling incorrect update areaTang HaiXiang2020-07-251-1/+1
| | | | | | | | | | | Given some decimal scaling, the clipping of the QRegion/QRect passed to the QRegion/QRect done inside paintEvent cannot handle the decimal scaling. Solved by only converting QRect to a certain QRectF and calling QRectF overload instead of QRect. Fixes: QTBUG-82601 Fixes: QTBUG-64854 Pick-to: 5.15 Change-Id: I0d8f4193aabfc0d917612db68d2a39ebb726fa2f Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* Windows QPA: Move window properties to the new interfacesFriedemann Kleint2020-07-241-0/+5
| | | | | | | | Affects the custom margin used by QWizard. Task-number: QTBUG-83252 Change-Id: Iffda043f106282f682e119ec955fa2b2eb0f259e Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Fix buffer overflow in XBM parserAllan Sandfeld Jensen2020-07-241-1/+3
| | | | | | | | | | | | | Avoid parsing over the buffer limit, or interpreting non-hex as hex. This still leaves parsing of lines longer than 300 chars unreliable Change-Id: I1c57a7e530c4380f6f9040b2ec729ccd7dc7a5fb Pick-to: 5.15 5.12 Reviewed-by: Robert Loehning <robert.loehning@qt.io> Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* QWindowsFontDatabaseBase: Fix unused parameter errorKai Koehne2020-07-231-0/+2
| | | | | Change-Id: Ifa2cc45c1bf4326a1273a713e3db950846d2ca14 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Multiply instead of shiftingRobert Loehning2020-07-231-1/+1
| | | | | | | | | The shift operator is undefined for negative values. Fixes: oss-fuzz-23735 Pick-to: 5.15 5.12 Change-Id: Ib4bad0bf2135f9ddc95f6d7de64d935a02b4791e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add QPlatformInterface::Private::QWindowsWindowFriedemann Kleint2020-07-222-1/+14
| | | | | | | | Remove QWindowsWindowFunctions Task-number: QTBUG-83252 Change-Id: Iacfdf2e0f430208901c182e461c4617e1ef526ce Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Windows QPA: Move the touch types API from platformheaders into QtGuiFriedemann Kleint2020-07-221-0/+15
| | | | | | | | | | | | | | | | | | | | Change TouchWindowTouchType(s) to be (global) property of QGuiApplication's native Windows interface since it does not make sense to set it per window. It appears the previous code setting the types per Window has never worked since registerTouchWindow() bailed out due to the checks for the flags TouchRegistered and IsTouchWindow() (setting in HCBT_CREATEWND). In addition, registering windows for touch after plugging in a device would not observe the setting. Move the checks around to make this work. Task-number: QTBUG-41433 Task-number: QTBUG-48849 Task-number: QTBUG-83252 Change-Id: I4306fdf13208f6eef22655875f3bd1769270e617 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Remove an outdated and nonsensical comment in the docsGiuseppe D'Angelo2020-07-221-4/+0
| | | | | | | After the QVector->QList rename it made no sense. Change-Id: I4a422f48b1f5d42c1c4d402ea947a0f4098172b7 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Discard extra mouse move event generated by touchpadAndre de la Rocha2020-07-211-0/+7
| | | | | | | | | | | | | | | | | On Windows, and possibly other platforms, a touchpad can send a mouse button press followed by an unexpected mouse move event to the same coordinates, before sending a mouse button release, which may confuse applications. Before the enhanced mouse event processing was added, the code in QGuiApplication was responsible for deducing the mouse event type and other info, and in the process performed a checking that discarded events that did not change state. The enhanced mouse processing code lacked this checking. This change adds an equivalent checking to the enhanced mouse event processing. Fixes: QTBUG-85431 Pick-to: 5.15 Change-Id: Ie3e2ae8cbf9870d465dfd2c8808942dd6fc647d2 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Start the native interface QWindowsApplicationFriedemann Kleint2020-07-212-0/+28
| | | | | | | | | | | | Implement the static parts of QWindowsWindowFunctions. Move some things around and make them static in tablet support to make this easier. Task-number: QTBUG-83252 Change-Id: I24c3b0b3c6548eb96c4f3285a4e46385a1e79ef5 Reviewed-by: André de la Rocha <andre.rocha@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Ensure styles always get to polish the application paletteTor Arne Vestbø2020-07-211-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Before 0a93db4d82c051164923a10e4382b12de9049b45 we would polish the application palette even when it was the default palette, as we always recreated the system palette each time a style was set. After the change we skipped polishing the palette unless it was set by the user, under the assumption that the style would set its own default palette if it wanted to override the system palette. This turned out to break the style's ability to slightly tweak the palette via polish (versus the more full on standardPalette approach). We now polish both the default palette and user palettes, and we do so as part of the normal palette update logic. This ensures that the style also gets a chance to polish the palette when the platform theme changes. The polish will not have an effect on the resolve mask of the palette, as the polish is conceptually the same as a base palette, and should not affect e.g. Qt::AA_SetPalette. Fixes: QTBUG-85469 Fixes: QTBUG-85188 Pick-to: 5.15 Change-Id: I869e9c442b177de4f1dc49eb75220709306f4d12 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>