[vlc-commits] Qt4: simplify and hopefully fix progress bar deletion

Rémi Denis-Courmont git at videolan.org
Mon Aug 20 15:02:08 CEST 2012


vlc/vlc-2.0 | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Mon Aug 20 15:55:32 2012 +0300| [2a37d93c6429fc5d8483ea4beb5caadc10ab7902] | committer: Rémi Denis-Courmont

Qt4: simplify and hopefully fix progress bar deletion

This should fix LP#947156.
(cherry picked from commit f36c50b0a05478a64f9c8a9b2df657ab625812d9)

Conflicts:
	modules/gui/qt4/dialogs/external.cpp

> http://git.videolan.org/gitweb.cgi/vlc/vlc-2.0.git/?a=commit;h=2a37d93c6429fc5d8483ea4beb5caadc10ab7902
---

 modules/gui/qt4/dialogs/external.cpp |    6 ++----
 modules/gui/qt4/dialogs/external.hpp |    3 +--
 2 files changed, 3 insertions(+), 6 deletions(-)

diff --git a/modules/gui/qt4/dialogs/external.cpp b/modules/gui/qt4/dialogs/external.cpp
index eb2fe12..1d28d91 100644
--- a/modules/gui/qt4/dialogs/external.cpp
+++ b/modules/gui/qt4/dialogs/external.cpp
@@ -62,9 +62,6 @@ DialogHandler::DialogHandler (intf_thread_t *intf, QObject *_parent)
     connect (&progressBar, SIGNAL(pointerChanged(vlc_object_t *, void *)),
              SLOT(startProgressBar(vlc_object_t *, void *)),
              Qt::BlockingQueuedConnection);
-    connect (this,
-             SIGNAL(progressBarDestroyed(QWidget *)),
-             SLOT(stopProgressBar(QWidget *)));
 
     dialog_Register (intf);
 }
@@ -201,6 +198,7 @@ QVLCProgressDialog::QVLCProgressDialog (DialogHandler *parent,
     connect (this, SIGNAL(described(const QString&)),
                    SLOT(setLabelText(const QString&)));
     connect (this, SIGNAL(canceled(void)), SLOT(saveCancel(void)));
+    connect (this, SIGNAL(released(void)), SLOT(deleteLater(void)));
 
     data->pf_update = update;
     data->pf_check = check;
@@ -230,7 +228,7 @@ void QVLCProgressDialog::destroy (void *priv)
 {
     QVLCProgressDialog *self = static_cast<QVLCProgressDialog *>(priv);
 
-    emit self->handler->progressBarDestroyed (self);
+    emit self->released ();
 }
 
 void QVLCProgressDialog::saveCancel (void)
diff --git a/modules/gui/qt4/dialogs/external.hpp b/modules/gui/qt4/dialogs/external.hpp
index 44b0a2a..ac83516 100644
--- a/modules/gui/qt4/dialogs/external.hpp
+++ b/modules/gui/qt4/dialogs/external.hpp
@@ -47,7 +47,6 @@ private:
     QVLCPointer question;
     QVLCPointer progressBar;
 signals:
-    void progressBarDestroyed (QWidget *);
     void error (const QString&, const QString&);
 
 private slots:
@@ -81,7 +80,7 @@ private slots:
 signals:
     void progressed (int);
     void described (const QString&);
-    void destroyed (void);
+    void released (void);
 };
 
 #endif



More information about the vlc-commits mailing list