diff options
Diffstat (limited to 'src/search/dolphinsearchbox.cpp')
| -rw-r--r-- | src/search/dolphinsearchbox.cpp | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/search/dolphinsearchbox.cpp b/src/search/dolphinsearchbox.cpp index 1dcb381dd..7eb7206ac 100644 --- a/src/search/dolphinsearchbox.cpp +++ b/src/search/dolphinsearchbox.cpp @@ -251,7 +251,9 @@ DolphinSearchBox::DolphinSearchBox(QWidget* parent) : connect(m_searchInput, SIGNAL(returnPressed()), this, SLOT(emitSearchSignal())); connect(m_searchInput, SIGNAL(textChanged(QString)), - this, SIGNAL(searchTextChanged(QString))); + this, SLOT(slotTextChanged(QString))); + connect(m_searchInput, SIGNAL(clearButtonClicked()), + this, SLOT(slotClearButtonClicked())); } DolphinSearchBox::~DolphinSearchBox() @@ -284,7 +286,9 @@ bool DolphinSearchBox::eventFilter(QObject* watched, QEvent* event) if (m_completer == 0) { m_completer = new DolphinSearchCompleter(m_searchInput); } - emit requestSearchOptions(); + if (m_searchInput->text().isEmpty()) { + emit requestSearchOptions(); + } } return QWidget::eventFilter(watched, event); @@ -296,4 +300,12 @@ void DolphinSearchBox::emitSearchSignal() emit search(m_searchInput->text()); } +void DolphinSearchBox::slotTextChanged(const QString& text) +{ + if (!text.isEmpty()) { + emit requestSearchOptions(); + } + emit searchTextChanged(text); +} + #include "dolphinsearchbox.moc" |
