diff options
author | Gerald Combs <gerald@wireshark.org> | 2015-05-21 12:12:40 -0700 |
---|---|---|
committer | Gerald Combs <gerald@wireshark.org> | 2015-05-21 19:18:19 +0000 |
commit | fe7c5ea0c11d5e9a2a2a09eb3cd6b06fdf459ffb (patch) | |
tree | 1f08dfa8303dc527b3a51bac4cdd629db4a84199 /ui | |
parent | 0289d5c2b59f8b79dba5484426c8cdd7292d48dd (diff) |
Fixup capture filter completion logic.
Don't add the current word to the completion list.
Change-Id: Ia475520092f461c9e7b03f82cc3427585e095162
Reviewed-on: https://code.wireshark.org/review/8577
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Diffstat (limited to 'ui')
-rw-r--r-- | ui/qt/capture_filter_edit.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/ui/qt/capture_filter_edit.cpp b/ui/qt/capture_filter_edit.cpp index 502af592db..45707e6f6f 100644 --- a/ui/qt/capture_filter_edit.cpp +++ b/ui/qt/capture_filter_edit.cpp @@ -85,6 +85,7 @@ UIMiniCancelButton::UIMiniCancelButton(QWidget *pParent /* = 0 */) static const QString libpcap_primitive_chars_ = "-0123456789abcdefghijklmnopqrstuvwxyz"; // grep '^[a-z].*return [A-Z].*;$' scanner.l | awk '{gsub(/\|/, "\n") ; print " << \"" $1 "\""}' | sort +// Remove "and" and "or". static const QStringList libpcap_primitives_ = QStringList() << "aarp" << "action" << "address1" << "address2" << "address3" << "address4" << "ah" << "arp" << "atalk" << "bcc" << "broadcast" << "byte" << "carp" @@ -406,7 +407,12 @@ void CaptureFilterEdit::buildCompletionList(const QString &primitive_word) } } - completion_model_->setStringList(complex_list + libpcap_primitives_); + // libpcap has a small number of primitives so we just add the whole list + // sans the current word. + QStringList primitive_list = libpcap_primitives_; + primitive_list.removeAll(primitive_word); + + completion_model_->setStringList(complex_list + primitive_list); completer()->setCompletionPrefix(primitive_word); } |