Commit 6ec7523f authored by Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf

Qt4: Playlist fixes.

(cherry picked from commit 6b67205f13b3f8ce5a3c860b63a95f3bccf8d934)
Signed-off-by: default avatarJean-Baptiste Kempf <jb@videolan.org>
parent c4d36140
...@@ -42,9 +42,7 @@ ...@@ -42,9 +42,7 @@
* Playlist Widget. The embedded playlist * Playlist Widget. The embedded playlist
**********************************************************************/ **********************************************************************/
PlaylistWidget::PlaylistWidget( intf_thread_t *_p_i, PlaylistWidget::PlaylistWidget( intf_thread_t *_p_i ) : p_intf ( _p_i )
QWidget *_parent )
: p_intf ( _p_i ), parent( _parent )
{ {
setContentsMargins( 3, 3, 3, 3 ); setContentsMargins( 3, 3, 3, 3 );
...@@ -130,8 +128,8 @@ PlaylistWidget::~PlaylistWidget() ...@@ -130,8 +128,8 @@ PlaylistWidget::~PlaylistWidget()
{ {
getSettings()->beginGroup("Playlist"); getSettings()->beginGroup("Playlist");
getSettings()->setValue( "splitterSizes", saveState() ); getSettings()->setValue( "splitterSizes", saveState() );
getSettings()->setValue( "GlobalPos", mapToGlobal( pos() ) );
getSettings()->endGroup(); getSettings()->endGroup();
msg_Dbg( p_intf, "Playlist Destroyed" );
} }
#include "main_interface.hpp" #include "main_interface.hpp"
......
...@@ -48,14 +48,13 @@ class PlaylistWidget : public QSplitter ...@@ -48,14 +48,13 @@ class PlaylistWidget : public QSplitter
{ {
Q_OBJECT; Q_OBJECT;
public: public:
PlaylistWidget( intf_thread_t *_p_i, QWidget *parent ) ; PlaylistWidget( intf_thread_t *_p_i );
virtual ~PlaylistWidget(); virtual ~PlaylistWidget();
private: private:
PLSelector *selector; PLSelector *selector;
PLPanel *rightPanel; PLPanel *rightPanel;
QPushButton *addButton; QPushButton *addButton;
ArtLabel *art; ArtLabel *art;
QWidget *parent;
protected: protected:
intf_thread_t *p_intf; intf_thread_t *p_intf;
virtual void dropEvent( QDropEvent *); virtual void dropEvent( QDropEvent *);
......
...@@ -52,7 +52,7 @@ PlaylistDialog::PlaylistDialog( intf_thread_t *_p_intf ) ...@@ -52,7 +52,7 @@ PlaylistDialog::PlaylistDialog( intf_thread_t *_p_intf )
getSettings()->beginGroup("playlistdialog"); getSettings()->beginGroup("playlistdialog");
playlistWidget = new PlaylistWidget( p_intf, this ); playlistWidget = new PlaylistWidget( p_intf );
l->addWidget( playlistWidget ); l->addWidget( playlistWidget );
readSettings( getSettings(), QSize( 600,700 ) ); readSettings( getSettings(), QSize( 600,700 ) );
......
...@@ -253,6 +253,8 @@ MainInterface::~MainInterface() ...@@ -253,6 +253,8 @@ MainInterface::~MainInterface()
{ {
if( !isDocked() ) if( !isDocked() )
QVLCTools::saveWidgetPosition( p_intf, "Playlist", playlistWidget ); QVLCTools::saveWidgetPosition( p_intf, "Playlist", playlistWidget );
delete playlistWidget;
} }
settings->beginGroup( "MainWindow" ); settings->beginGroup( "MainWindow" );
...@@ -725,7 +727,7 @@ void MainInterface::togglePlaylist() ...@@ -725,7 +727,7 @@ void MainInterface::togglePlaylist()
If no playlist exist, then create one and attach it to the DockPL*/ If no playlist exist, then create one and attach it to the DockPL*/
if( !playlistWidget ) if( !playlistWidget )
{ {
playlistWidget = new PlaylistWidget( p_intf, this ); playlistWidget = new PlaylistWidget( p_intf );
i_pl_dock = PL_UNDOCKED; i_pl_dock = PL_UNDOCKED;
/* i_pl_dock = (pl_dock_e)getSettings() /* i_pl_dock = (pl_dock_e)getSettings()
...@@ -733,15 +735,12 @@ void MainInterface::togglePlaylist() ...@@ -733,15 +735,12 @@ void MainInterface::togglePlaylist()
if( i_pl_dock == PL_UNDOCKED ) if( i_pl_dock == PL_UNDOCKED )
{ {
playlistWidget->setParent( this, Qt::Window ); playlistWidget->setWindowFlags( Qt::Window );
/* This will restore the geometry but will not work for position, /* This will restore the geometry but will not work for position,
because of parenting */ because of parenting */
QVLCTools::restoreWidgetPosition( p_intf, "Playlist", QVLCTools::restoreWidgetPosition( p_intf, "Playlist",
playlistWidget, QSize( 600, 300 ) ); playlistWidget, QSize( 600, 300 ) );
/* Move it correctly then */
playlistWidget->move(
getSettings()->value( "Playlist/GlobalPos" ).toPoint() );
} }
else else
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment