From 70996dc669305da1c5f7a305d67b5976fde75073 Mon Sep 17 00:00:00 2001 From: cheloftus Date: Wed, 28 Jun 2017 22:52:41 +0100 Subject: [PATCH] Qt: add preference to restore display filter after Follow Stream Added new user preference 'restore_filter_after_following_stream', defaults to false. When true, the current display filter is restored after following a stream. Change-Id: I153107761003658c6d7f1464711da7b3adeb60a8 Reviewed-on: https://code.wireshark.org/review/22455 Reviewed-by: Peter Wu Petri-Dish: Peter Wu Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman --- epan/prefs.c | 6 ++++++ epan/prefs.h | 1 + ui/qt/follow_stream_dialog.cpp | 5 +++++ 3 files changed, 12 insertions(+) diff --git a/epan/prefs.c b/epan/prefs.c index f29601b66e..6dde10237c 100644 --- a/epan/prefs.c +++ b/epan/prefs.c @@ -3015,6 +3015,11 @@ prefs_register_modules(void) "Place filter toolbar inside the statusbar?", &prefs.filter_toolbar_show_in_statusbar); + prefs_register_bool_preference(gui_module, "restore_filter_after_following_stream", + "Restore current display filter after following a stream", + "Restore current display filter after following a stream?", + &prefs.restore_filter_after_following_stream); + prefs_register_enum_preference(gui_module, "protocol_tree_line_style", "Protocol-tree line style", "Protocol-tree line style", @@ -3950,6 +3955,7 @@ pre_init_prefs(void) prefs.gui_ptree_expander_style = 1; prefs.gui_hex_dump_highlight_style = 1; prefs.filter_toolbar_show_in_statusbar = FALSE; + prefs.restore_filter_after_following_stream = FALSE; prefs.gui_toolbar_main_style = TB_STYLE_ICONS; prefs.gui_toolbar_filter_style = TB_STYLE_TEXT; /* These will be g_freed, so they must be g_mallocated. */ diff --git a/epan/prefs.h b/epan/prefs.h index 5411362391..89b778a8e0 100644 --- a/epan/prefs.h +++ b/epan/prefs.h @@ -154,6 +154,7 @@ typedef struct _e_prefs { gboolean gui_altern_colors; /* GTK only */ gboolean gui_expert_composite_eyecandy; gboolean filter_toolbar_show_in_statusbar; + gboolean restore_filter_after_following_stream; gint gui_ptree_line_style; gint gui_ptree_expander_style; gboolean gui_hex_dump_highlight_style; diff --git a/ui/qt/follow_stream_dialog.cpp b/ui/qt/follow_stream_dialog.cpp index d7af6b7ee5..6e0bf460b4 100644 --- a/ui/qt/follow_stream_dialog.cpp +++ b/ui/qt/follow_stream_dialog.cpp @@ -950,6 +950,11 @@ bool FollowStreamDialog::follow(QString previous_filter, bool use_stream_index, updateWidgets(false); endRetapPackets(); + + if (prefs.restore_filter_after_following_stream) { + emit updateFilter(previous_filter_, TRUE); + } + return true; }