aboutsummaryrefslogtreecommitdiffstats
path: root/ui/qt
diff options
context:
space:
mode:
authorGerald Combs <gerald@wireshark.org>2015-08-28 12:57:57 -0700
committerGerald Combs <gerald@wireshark.org>2015-08-28 21:16:14 +0000
commitaa100e0726dcade27a59f7962c465cfb7e61e284 (patch)
treead9ed3c46b18c947fc8b255cddc51664c8ce15ea /ui/qt
parentc1c6132c0dfd81a5f8a014d7df71218e2e8c34f7 (diff)
Don't show a progress frame if our file was closed.
Change-Id: Ie363f6764f4e8b2b5c476b85f7ddb0233a127f6e Reviewed-on: https://code.wireshark.org/review/10290 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
Diffstat (limited to 'ui/qt')
-rw-r--r--ui/qt/main_status_bar.cpp3
-rw-r--r--ui/qt/main_status_bar.h2
-rw-r--r--ui/qt/main_window_slots.cpp4
-rw-r--r--ui/qt/progress_frame.cpp12
-rw-r--r--ui/qt/progress_frame.h1
5 files changed, 18 insertions, 4 deletions
diff --git a/ui/qt/main_status_bar.cpp b/ui/qt/main_status_bar.cpp
index 9802294be7..f8978451fb 100644
--- a/ui/qt/main_status_bar.cpp
+++ b/ui/qt/main_status_bar.cpp
@@ -196,8 +196,9 @@ void MainStatusBar::showExpert() {
expertUpdate();
}
-void MainStatusBar::hideExpert() {
+void MainStatusBar::captureFileClosing() {
expert_status_.hide();
+ progress_frame_.captureFileClosing();
}
void MainStatusBar::expertUpdate() {
diff --git a/ui/qt/main_status_bar.h b/ui/qt/main_status_bar.h
index e547196f70..89c5c6eaa2 100644
--- a/ui/qt/main_status_bar.h
+++ b/ui/qt/main_status_bar.h
@@ -44,7 +44,7 @@ class MainStatusBar : public QStatusBar
public:
explicit MainStatusBar(QWidget *parent = 0);
void showExpert();
- void hideExpert();
+ void captureFileClosing();
void expertUpdate();
void setFileName(CaptureFile &cf);
diff --git a/ui/qt/main_window_slots.cpp b/ui/qt/main_window_slots.cpp
index 2f1339ae2c..9d120b3095 100644
--- a/ui/qt/main_window_slots.cpp
+++ b/ui/qt/main_window_slots.cpp
@@ -697,7 +697,7 @@ void MainWindow::captureFileClosing() {
setForCaptureInProgress(false);
// Reset expert information indicator
- main_ui_->statusBar->hideExpert();
+ main_ui_->statusBar->captureFileClosing();
main_ui_->searchFrame->animatedHide();
// gtk_widget_show(expert_info_none);
emit setCaptureFile(NULL);
@@ -711,7 +711,7 @@ void MainWindow::captureFileClosed() {
setMenusForFileSet(false);
// Reset expert information indicator
- main_ui_->statusBar->hideExpert();
+ main_ui_->statusBar->captureFileClosing();
main_ui_->statusBar->popFileStatus();
diff --git a/ui/qt/progress_frame.cpp b/ui/qt/progress_frame.cpp
index fd24ff3313..8c9576ae0a 100644
--- a/ui/qt/progress_frame.cpp
+++ b/ui/qt/progress_frame.cpp
@@ -211,6 +211,18 @@ void ProgressFrame::addToButtonBox(QDialogButtonBox *button_box, QObject *main_w
main_progress_frame, SIGNAL(stopLoading()));
}
+void ProgressFrame::captureFileClosing()
+{
+ // Hide any paired ProgressFrames and disconnect from them.
+ emit setHidden();
+ disconnect(SIGNAL(showRequested(bool,bool,gboolean*)));
+ disconnect(SIGNAL(maximumValueChanged(int)));
+ disconnect(SIGNAL(valueChanged(int)));
+
+ connect(this, SIGNAL(showRequested(bool,bool,gboolean*)),
+ this, SLOT(show(bool,bool,gboolean*)));
+}
+
void ProgressFrame::setValue(int value)
{
ui->progressBar->setValue(value);
diff --git a/ui/qt/progress_frame.h b/ui/qt/progress_frame.h
index f8315e5b0f..032176809f 100644
--- a/ui/qt/progress_frame.h
+++ b/ui/qt/progress_frame.h
@@ -56,6 +56,7 @@ public:
void enableTaskbarUpdates(bool enable = true) { update_taskbar_ = enable; }
#endif
static void addToButtonBox(QDialogButtonBox *button_box, QObject *main_window);
+ void captureFileClosing();
public slots:
struct progdlg *showProgress(bool animate, bool terminate_is_stop, gboolean *stop_flag, int value = 0);