From bb00b63dee85bfe77bd721dd962c768e62c1b1e3 Mon Sep 17 00:00:00 2001 From: Andy Shaw Date: Tue, 5 Jan 2021 15:42:48 +0100 Subject: Set the PlaceholderText color in the palette from the stylesheet as well The color should be used across the board, so the PlaceholderText color should also be respecting the one passed for Text and so on. Fixes: QTBUG-89815 Pick-to: 6.0 5.15 Change-Id: I2accb3db35488f95a1c8ebacf2316a08ee416fac Reviewed-by: Volker Hilsheimer --- .../styles/qstylesheetstyle/tst_qstylesheetstyle.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'tests/auto') diff --git a/tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp b/tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp index 3c33354cfe..f2f9be6bb6 100644 --- a/tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp +++ b/tests/auto/widgets/styles/qstylesheetstyle/tst_qstylesheetstyle.cpp @@ -124,6 +124,7 @@ private slots: void QTBUG15910_crashNullWidget(); void QTBUG36933_brokenPseudoClassLookup(); void styleSheetChangeBeforePolish(); + void placeholderColor(); //at the end because it mess with the style. void widgetStyle(); void appStyle(); @@ -2222,6 +2223,21 @@ void tst_QStyleSheetStyle::highdpiImages() QHighDpiScaling::updateHighDpiScaling(); // reset to normal } +void tst_QStyleSheetStyle::placeholderColor() +{ + const QColor red(Qt::red); + qApp->setStyleSheet("* { color: red; }"); + QLineEdit le1; + QLineEdit le2; + le2.setEnabled(false); + le1.ensurePolished(); + QCOMPARE(le1.palette().placeholderText(), red); + le2.ensurePolished(); + QCOMPARE(le2.palette().placeholderText(), red); + le2.setEnabled(true); + QCOMPARE(le2.palette().placeholderText(), red); +} + QTEST_MAIN(tst_QStyleSheetStyle) #include "tst_qstylesheetstyle.moc" -- cgit v1.2.3