QmlDesigner: Handle placeholder color for navigator line edit

Task-number: QDS-10099
Change-Id: Ieede8ffc7ef6251c32cd78f7a90fb6f56f3c0824
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
This commit is contained in:
Ali Kianian
2023-06-14 19:14:57 +03:00
parent c3f3f85354
commit f7a7f55df5
2 changed files with 16 additions and 0 deletions

View File

@@ -91,6 +91,21 @@ void LineEdit::keyPressEvent(QKeyEvent *event)
QLineEdit::keyPressEvent(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) void LineEdit::updateClearButton(const QString& text)
{ {
clearButton->setVisible(!text.isEmpty()); clearButton->setVisible(!text.isEmpty());

View File

@@ -21,6 +21,7 @@ public:
protected: protected:
void resizeEvent(QResizeEvent *event) override; void resizeEvent(QResizeEvent *event) override;
void keyPressEvent(QKeyEvent *event) override; void keyPressEvent(QKeyEvent *event) override;
void paintEvent(QPaintEvent *event) override;
private slots: private slots:
void updateClearButton(const QString &text); void updateClearButton(const QString &text);