From f7a7f55df5c572d1f10355237fd3d3c7f12d44e8 Mon Sep 17 00:00:00 2001 From: Ali Kianian Date: Wed, 14 Jun 2023 19:14:57 +0300 Subject: [PATCH] QmlDesigner: Handle placeholder color for navigator line edit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Task-number: QDS-10099 Change-Id: Ieede8ffc7ef6251c32cd78f7a90fb6f56f3c0824 Reviewed-by: Qt CI Patch Build Bot Reviewed-by: Henning Gründl --- .../navigator/navigatorsearchwidget.cpp | 15 +++++++++++++++ .../components/navigator/navigatorsearchwidget.h | 1 + 2 files changed, 16 insertions(+) diff --git a/src/plugins/qmldesigner/components/navigator/navigatorsearchwidget.cpp b/src/plugins/qmldesigner/components/navigator/navigatorsearchwidget.cpp index 01a77b67176..24d4377ef29 100644 --- a/src/plugins/qmldesigner/components/navigator/navigatorsearchwidget.cpp +++ b/src/plugins/qmldesigner/components/navigator/navigatorsearchwidget.cpp @@ -91,6 +91,21 @@ void LineEdit::keyPressEvent(QKeyEvent *event) QLineEdit::keyPressEvent(event); } +void LineEdit::paintEvent(QPaintEvent *event) +{ + if (text().isEmpty()) { + QPalette p(palette()); + p.setColor(QPalette::Active, + QPalette::PlaceholderText, + Utils::creatorTheme()->color(Utils::Theme::DSplaceholderTextColor)); + p.setColor(QPalette::Inactive, + QPalette::PlaceholderText, + Utils::creatorTheme()->color(Utils::Theme::DSplaceholderTextColor)); + setPalette(p); + } + QLineEdit::paintEvent(event); +} + void LineEdit::updateClearButton(const QString& text) { clearButton->setVisible(!text.isEmpty()); diff --git a/src/plugins/qmldesigner/components/navigator/navigatorsearchwidget.h b/src/plugins/qmldesigner/components/navigator/navigatorsearchwidget.h index b8a470c8fc3..6cc375fd552 100644 --- a/src/plugins/qmldesigner/components/navigator/navigatorsearchwidget.h +++ b/src/plugins/qmldesigner/components/navigator/navigatorsearchwidget.h @@ -21,6 +21,7 @@ public: protected: void resizeEvent(QResizeEvent *event) override; void keyPressEvent(QKeyEvent *event) override; + void paintEvent(QPaintEvent *event) override; private slots: void updateClearButton(const QString &text);