From 789d487cb0f4ef6f9d3e7c6ab5c5283dfe8dd350 Mon Sep 17 00:00:00 2001 From: Wang ChunLin Date: Tue, 22 Sep 2020 14:57:26 +0800 Subject: [PATCH] fix QComboBox currentText return placeholderText If it does not add item,the currentText should return empty string Fixes: QTBUG-86580 Pick-to: 5.15 Change-Id: I54c3a8b7ececfb1e62bcd7ac592feccaff3f8b48 Reviewed-by: Richard Moe Gustavsen --- src/widgets/widgets/qcombobox.cpp | 5 ++--- tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/widgets/widgets/qcombobox.cpp b/src/widgets/widgets/qcombobox.cpp index 77ef69fa25e..a03de6e7f2f 100644 --- a/src/widgets/widgets/qcombobox.cpp +++ b/src/widgets/widgets/qcombobox.cpp @@ -2191,10 +2191,9 @@ QString QComboBox::currentText() const Q_D(const QComboBox); if (d->lineEdit) return d->lineEdit->text(); - else if (d->currentIndex.isValid()) + if (d->currentIndex.isValid()) return d->itemText(d->currentIndex); - else - return d->placeholderText; + return {}; } /*! diff --git a/tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp b/tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp index 2ceba99d91a..c7d918fa6ae 100644 --- a/tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp +++ b/tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp @@ -408,7 +408,7 @@ void tst_QComboBox::getSetCheck() obj1.clear(); obj1.setPlaceholderText(placeholderText); obj1.addItems({"1", "2", "3", "4", "5"}); - QCOMPARE(obj1.currentText(), placeholderText); + QCOMPARE(obj1.currentText(), QString()); QCOMPARE(obj1.currentIndex(), -1); obj1.setPlaceholderText(QString()); // should not change anything QCOMPARE(obj1.currentText(), "1");