summaryrefslogtreecommitdiffstats
path: root/src/widgets/styles
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/5.12' into 5.13Liang Qi2019-02-083-77/+133
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/android/templates/AndroidManifest.xml src/network/ssl/qsslsocket_mac.cpp src/widgets/styles/qstylesheetstyle.cpp tests/auto/corelib/kernel/qtimer/BLACKLIST tests/auto/testlib/selftests/blacklisted/tst_blacklisted.cpp tests/auto/testlib/selftests/expected_blacklisted.lightxml tests/auto/testlib/selftests/expected_blacklisted.tap tests/auto/testlib/selftests/expected_blacklisted.teamcity tests/auto/testlib/selftests/expected_blacklisted.txt tests/auto/testlib/selftests/expected_blacklisted.xml tests/auto/testlib/selftests/expected_blacklisted.xunitxml tests/auto/testlib/selftests/expected_float.tap tests/auto/testlib/selftests/expected_float.teamcity tests/auto/testlib/selftests/expected_float.txt tests/auto/testlib/selftests/expected_float.xunitxml Done-With: Christian Ehrlicher <ch.ehrlicher@gmx.de> Done-With: Edward Welbourne <edward.welbourne@qt.io> Done-With: Timur Pocheptsov <timur.pocheptsov@qt.io> Change-Id: If93cc432a56ae3ac1b6533d0028e4dc497415a52
| * QToolButton: fix handling multi-line textsChristian Ehrlicher2019-02-072-2/+25
| | | | | | | | | | | | | | | | | | | | | | | | The patch to elide the QToolButton text when there is not enough space introduced a regression with multi-line text. Fix it by using the newly introduced common function to elide multi-line text. Fixes: QTBUG-72226 Change-Id: I066ebbd2f360add93406cc29bb4bbbebf599ba42 Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * QCommonStyle: factor out elided text calculationChristian Ehrlicher2019-02-072-61/+86
| | | | | | | | | | | | | | | | | | | | Factor out the calculation of the elided text from QCommonStylePrivate::viewItemDrawText() so it can be used by other painting functions. Change-Id: I28e6bfd2fe4d7c552848446fa9913df78589d15b Reviewed-by: Christian Andersen <csandersen3@gmail.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * QMenuItem: fix rendering with css stylingChristian Ehrlicher2019-02-051-14/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The rendering of a css styled menu item with icons or checkmark was partially fixed with aa1bc47942e2062dc7fad3e139bb4ceecc74f947 but introduced some other painting regressions, especially in RTL mode. Fix it by syncing the code with fusion and windows style. With this patch a menu text with a check mark but no icon is now aligned exactly the same as a menu text with a icon. Fixes: QTBUG-66380 Fixes: QTBUG-70491 Fixes: QTBUG-72817 Change-Id: I83a95d15eb130e7f72471820b53c3cd5554d9334 Reviewed-by: Nick D'Ademo <nickdademo@gmail.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | QtWidgets: replace 0 with \nullptr in documentationChristian Ehrlicher2019-02-051-4/+4
| | | | | | | | | | | | | | | | | | Replace 0 with \nullptr in the documentation. As a drive-by also replace some 0 with nullptr in the corresponding code. Change-Id: I5e5bc1ae892f270d7c3419db1c179053561f1b26 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | QtGui: mark obsolete QPixmapCache::find() functions as deprecatedChristian Ehrlicher2019-02-023-9/+9
| | | | | | | | | | | | | | | | | | QPixmapCache::find(QString) and QPixmapCache::find(QString, QPixmap&) are deprecated since Qt4 times. Explicit mark them as deprecated so they can be removed with Qt6. Change-Id: Iaf185f69afe02203559a1c812fbb4a95c9049a1d Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into devLiang Qi2019-01-262-17/+30
|\| | | | | | | | | | | | | | | Conflicts: src/android/templates/AndroidManifest.xml tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp Change-Id: I4c9679e3a8ebba118fbf4772301ff8fde60455b9
| * QAbstractItemView: fix rendering centered/right aligned item textChristian Ehrlicher2019-01-241-13/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 5712c62d1cfdcf56c772d8a63d52ad58945f194c introduced a regression for item texts which were aligned right or horizontally centered. The layoutRect was calculated wrong and started below zero and later the correct x offset could not be calculated since QTextLine::x() does not return a calculated value. Fix it by first calculating the complete string and pass it completely to QTextLayout::draw() instead trying to draw the single lines on our own - QTextLayout has a better working algorithm so no need to reinvent the wheel here. [ChangeLog][QtWidgets][ItemViews] Fixed a regression with wrongly drawn centered/right aligned item texts Fixes: QTBUG-34133 Fixes: QTBUG-56759 Fixes: QTBUG-72805 Fixes: QTBUG-72869 Change-Id: I0ed521c3a9d35446d190ac22aa9f2374814fd278 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * Fix resolve() on fonts returned from QWidget::font()Allan Sandfeld Jensen2019-01-221-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | Set the inherited properties as resolved on the font, so non-default values are passed on in contexts that does resolve logic like QPainter. One test is updated as it actually tests what it is supposed to on more configurations. Fixes: QTBUG-39560 Change-Id: Ief668e992ccdc091337a259a4c1306a00e67c73f Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into devQt Forward Merge Bot2019-01-211-1/+1
|\| | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: Ibfcb30053f3aacb8ec2ec480e146538c9bf440ea
| * Documentation: Add \nullptr macro and use where applicableFriedemann Kleint2019-01-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qt for Python users reading the documentation assume that int(0) can be passed for pointer parameters. Use the newly introduced \nullptr to disambiguate this. In a follow-up step, the \nullptr macro can be defined as None when generating the Qt for Python documentation. Task-number: PYSIDE-903 Change-Id: I3a45f87175a0668ab5f3f95f0aff409f7e3ef027 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | Don't treat the ampersand in a titlebar as a mnemonicAndy Shaw2019-01-084-4/+4
| | | | | | | | | | | | | | | | | | | | As the mnemonic has no meaning when it is in a dockwidget title, we should just treat it as a literal ampersand instead and display it as such. Fixes: QTBUG-54485 Change-Id: I96c856ce2771a68d226f48f8f47affc24f1c53cd Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into devLiang Qi2019-01-042-2/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also blacklist tst_QRawFont::unsupportedWritingSystem() and tst_QGlyphRun::mixedScripts() on windows for now. Conflicts: qmake/generators/makefile.cpp src/corelib/itemmodels/qstringlistmodel.cpp src/platformsupport/fontdatabases/windows/qwindowsfontengine_p.h tests/auto/corelib/itemmodels/qstringlistmodel/tst_qstringlistmodel.cpp tests/auto/gui/text/qglyphrun/BLACKLIST tests/auto/gui/text/qrawfont/BLACKLIST Task-number: QTBUG-72836 Change-Id: I10fea1493f0ae1a5708e1e48d0a4d7d6b76258b9
| * Doc: Fix typo in QStyleKai Koehne2018-12-221-1/+1
| | | | | | | | | | Change-Id: Ic979cb66acb3f8824aefb6ad858c0f746ce3e02b Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
| * Pass the alignment to QFontMetrics::elidedText()Andy Shaw2018-12-211-1/+2
| | | | | | | | | | | | | | | | | | When the text is elided, it needs to account for the mnenomic if there is one so it does not end up eliding the text unnecessarily. Change-Id: I77c15067f3e8d57d8deca83090bcb80554c3733f Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | QTabWidget: properly horizontally align tab iconChristian Ehrlicher2018-12-241-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | When an icon used for a QTabWidget is smaller than the default size, it was not properly aligned horizontally although it was done for the vertical alignment. Therefore also align it horizontally to be consistent. Fixes: QTBUG-38108 Change-Id: I0e2e3af7ead699f2834aed1d8b67cbe775c897af Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | Styles: replace deprecated QPalette functionsChristian Ehrlicher2018-12-174-63/+63
| | | | | | | | | | | | | | | | QPalette::foreground()/background() are deprecated since 5.13 - replace those functions with their successors. Change-Id: I158b6403437d3d48c0859360823133ca4ced2c23 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | QFusionStyle: Fix deprecation warning about QFontMetrics::width()Friedemann Kleint2018-12-131-1/+1
| | | | | | | | | | | | | | Fix an oversight of 4d88d79aa507777bce40740b21747f656efc074d. Change-Id: I03e403c6d6aefc4f3118ea8efd822fc563b7a514 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* | Use Q_DISABLE_COPY_MOVE for private classesFriedemann Kleint2018-12-123-3/+3
| | | | | | | | | | Change-Id: I3cfcfba892ff4a0ab4e31f308620b445162bb17b Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* | QCommonStyle: fetch `flat` property from style optionAlberto Mardegan2018-12-111-2/+2
| | | | | | | | | | | | | | | | | | | | The same information is available both from the QGroupBox API and from the QStyleOption; we should prefer the latter, because this makes it easier to use QStyle from QQuick.Controls (where a QGroupBox is not instantiated). Change-Id: I05ed1e3406676bde5d124d395d43caa0961c4f2d Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into devQt Forward Merge Bot2018-12-111-1/+0
|\| | | | | | | Change-Id: I91e684e74c36467efda8ded6ed19791baa0c1a1f
| * Fusion: Don't draw the background of the lineedit when drawing the frameAndy Shaw2018-12-101-1/+0
| | | | | | | | | | | | | | | | | | | | | | Since only the frame is being drawn here, it should only draw the outline. Otherwise it will override any background drawing done via a stylesheet. Change-Id: I408fc44743747ad369c700b3d52935bfc8826f11 Fixes: QTBUG-71950 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into devQt Forward Merge Bot2018-12-091-2/+2
|\| | | | | | | Change-Id: I10ae61ec6867b38601d85d6fc34e1f6a6ba0cc11
| * QToolButton: Don't elide text if an icon is presentChristian Ehrlicher2018-12-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous fix which adds an automatic text elision when the QToolButton is not large enough brought up an inconsistency between QToolButton::sizeHint() and QCommonStyle::drawControl(). Fix it by syncing the magic numbers between QToolButton::sizeHint() and QCommonStyle::drawControl(). Fixes: QTBUG-72226 Change-Id: If4a76792cb97bcdb918e18c6b29cb637730acec0 Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
* | Merge remote-tracking branch 'origin/5.12' into devLiang Qi2018-12-041-0/+3
|\| | | | | | | | | | | | | Conflicts: src/gui/painting/qdrawhelper.cpp Change-Id: I4916e07b635e1d3830e9b46ef7914f99bec3098e
| * Fusion style - avoid a warningTimur Pocheptsov2018-11-301-0/+3
| | | | | | | | | | | | | | | | | | ... printed by QPainter when it gets a pixmap with one or both of dimensions equal to 0 (and a nullptr as a paintEngine). Task-number: QTBUG-71806 Change-Id: I978f56c843daab307042e34390fc33f338ce8cf5 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into devLiang Qi2018-11-222-10/+8
|\| | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/io/qdir.cpp src/corelib/kernel/qtimer.cpp src/corelib/kernel/qtimer.h Done-With: Edward Welbourne <edward.welbourne@qt.io> Change-Id: I683d897760ec06593136d77955f8bc87fdef3f9f
| * QScrollBar: fix horizontal scrollbars in RTL modeChristian Ehrlicher2018-11-191-10/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When a QScrollBar had a stylesheet the subControlRect() was not properly mirrored which lead to a wrong scrolling behavior. Fix it by adjusting the resulting rect with visualRect(). This reverts 00c9ec63a552d040e851b561c11428fabf1a2b08 since it did not completely fixed the issue for all use cases. Fixes: QTBUG-27279 Fixes: QTBUG-38748 Fixes: QTBUG-40443 Change-Id: I19718287be7b4cfc9dbe6951fff99ae48264a855 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * Merge remote-tracking branch 'origin/5.11' into 5.12Liang Qi2018-11-191-0/+2
| |\ | | | | | | | | | | | | | | | | | | Conflicts: src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm Change-Id: I66a08c770767a93cd26535689e3e7806486aab06
| | * Modernize the "settings" featureLiang Qi2018-11-151-0/+2
| | | | | | | | | | | | | | | | | | Change-Id: I9b8a61ecb1413b513ae5c9e77d3ee1b3e8b6562c Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | | [Micro]optimization in QStyleSheetStyle::drawComplexControlAlbert Astals Cid2018-11-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Only copy QStyleOptionSlider when needed Change-Id: I9d9d8d40fa9ed8b7be4f6a32afa8bf68f64d7836 Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de> Reviewed-by: Sérgio Martins <sergio.martins@kdab.com>
* | | Merge remote-tracking branch 'origin/5.12' into devLiang Qi2018-11-101-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/serialization/qcborcommon.h src/corelib/tools/qlocale_data_p.h tests/auto/network/ssl/qsslsocket/tst_qsslsocket.cpp Done-with: Edward Welbourne <edward.welbourne@qt.io> Change-Id: Ibed987f6d77a0294f78f67d78625237616082416
| * | QStyleSheet: use the << form of qWarning to get more infoThiago Macieira2018-11-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | %p just prints a pointer. The operator<<(QObject*) member will print the class type and object name. Change-Id: Iba4b5c183776497d8ee1fffd1564951da0c6bebc Reviewed-by: Sérgio Martins <sergio.martins@kdab.com>
* | | [Micro]Optimize QStyleSheetStyle::subElementRectAlbert Astals Cid2018-11-061-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | No need to make a QStyleOptionButton copy, we can just use the pointer we already have Change-Id: I3ef5f59eb4fe25adf675e67ebf548f4358456379 Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | | Merge remote-tracking branch 'origin/5.12' into devLiang Qi2018-10-259-22/+26
|\| | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/animation/qpropertyanimation.cpp src/gui/image/qicon.cpp tests/auto/widgets/itemviews/qtableview/tst_qtableview.cpp Change-Id: I3698172b7b44ebb487cb38f50fd2c4a9f8a35b21
| * | Merge remote-tracking branch 'origin/5.11' into 5.12Liang Qi2018-10-179-22/+26
| |\| | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/platformthemes/platformthemes.pro src/printsupport/kernel/qplatformprintdevice.cpp Change-Id: Iac01729ad954bb1c7af5867d982eb243b2139ee6
| | * Modernize the "animation" featureLiang Qi2018-10-129-22/+26
| | | | | | | | | | | | | | | | | | Change-Id: Ibc164b3df3cf87db569ef4813de458a9067b7f7d Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | | Fix drawing of QGroupBox's title when check box is higher than textAlexander Volkov2018-10-091-11/+16
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-70623 Change-Id: I36c3b3e0250a4d2b0a2a2f03793f0eae3d868de2 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | | QSideBar: take the icon size from a styleAlexander Volkov2018-10-091-1/+11
| | | | | | | | | | | | | | | Change-Id: I9c4677b42cc920b7bb016b61b8c1fd34fe67aa30 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | | Merge remote-tracking branch 'origin/5.12' into devLiang Qi2018-10-082-8/+36
|\| | | | | | | | | | | | | | | | | | | | Conflicts: src/widgets/styles/qstylesheetstyle.cpp Change-Id: I3a503b44ae413fbc0a90f4af70b8f84daffd86ad
| * | StyleSheetStyle: Load @Nx imagesMorten Johan Sørvig2018-10-042-9/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Perform a @Nx image file lookup when loading pixmaps. Make drawBackgroundImage() handle high-dpi pixmaps, here the layout calculations needs to be in device- independent pixels Fixes: QTBUG-36825 Change-Id: I61e6f53c59f61f3bd88c34a036349e51e8c8ad92 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
* | | QStyleSheetStyle: use specified font property from css for QMenuChristian Ehrlicher2018-10-031-6/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A font property specified in the css was used while drawing the QMenu action text but not within sizeFromContents() which results in a wrong size of the menu rect used for drawing. Fix it by mimic the rect calculation from QMenuPrivate::updateActionRects(). Fixes: QTBUG-70648 Change-Id: I5cf4f8b679c69197437393965c0bc6326f1c6c3a Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | | stylesheets: Don't fail silently with invalid background-imagesSergio Martins2018-09-161-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | Print a qWarning, otherwise this is very hard to notice Change-Id: I882f97583071e786d5aa06f6eeb485da4fc646db Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: David Faure <david.faure@kdab.com>
* | | Merge remote-tracking branch 'origin/5.12' into devQt Forward Merge Bot2018-09-071-8/+1
|\| | | | | | | | | | | Change-Id: I799e2ca2fefa140c8b73b73aa959c6ed8da6eae6
| * | QHeaderView: honor qss padding attributeChristian Ehrlicher2018-09-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QStyleSheetStyle did not check if a border (which includes the padding) is given and therefore the padding attribute given by css was ignored. Only when another attribute was additionally set, the padding was used. Task-number: QTBUG-59501 Change-Id: If3e691a23266ef6d0fb942a43053b29d65e40047 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * | QHeaderView: remove dead codeChristian Ehrlicher2018-09-061-7/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | The special handling when a font for a headerview is set became useless after a4e6117c53c3984585b3bbb74c00d6d863c98fcd since it is now included in branch four lines above. Change-Id: I73bec48913ebca5f278128a124b58d1b6172e334 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | | Merge remote-tracking branch 'origin/5.12' into devQt Forward Merge Bot2018-09-061-6/+8
|\| | | | | | | | | | | Change-Id: I2f6e1c0f649c5098723b776c774a8a689bb60582
| * | QWindowsStyle: respect rectangle when drawing PE_IndicatorViewItemCheckRolf Eike Beer2018-09-031-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a follow-up on commit 6553921dd537e416da2f4d1441ab6d63059cda60, which fixed the drawing of the surrounding rectangle when used in item views. This one now fixes the drawing of the check mark itself, for both item views and standalone items. Change-Id: I14f359e9d2ef33652cc68494b7d114e61110e5e0 Reviewed-by: Andre de la Rocha <andre.rocha@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | | remove internal use of SE_ViewItemCheckIndicatorRolf Eike Beer2018-09-033-4/+4
|/ / | | | | | | | | | | | | | | | | | | This is marked to be removed in Qt6, so switch to SE_ItemViewItemCheckIndicator internally and define the old value as copy of the new one instead of the other way round. Change-Id: I9e9804a7ff0e9b2ae1e24698d45b2cbd44423420 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | QSS/QTabBar: properly handle QTabBar::scrollerChristian Ehrlicher2018-08-301-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PM_TabBarScrollButtonWidth used the size of the ::scroller subcontrol without considering that there are two QToolButtons and therefore returned the wrong size for a single QToolButton. QStyleSheetStyle::subElementRect() had no handling for SE_TabBarScrollLeft/RightButton and therefore the values for the scroller toolbuttons set via the stylesheet were never used. Fix it by dividing the scroller width by two and add the code path to handle SE_TabBarScrollLeft/RightButton in QStyleSheetStyle::subElementRect Task-number: QTBUG-69653 Change-Id: I1adfe6333f3183bba621bbbb4d10969920c6cd46 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>