Commit 48085051 authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont

Qt4: re-center FSC if the target screen has changed

This avoids getting a totally misplaced controller if the resolution
is larger than in previous runs, or if the multi-screen layout was
changed.
parent 31c14712
...@@ -710,11 +710,14 @@ FullscreenControllerWidget::FullscreenControllerWidget( intf_thread_t *_p_i, QWi ...@@ -710,11 +710,14 @@ FullscreenControllerWidget::FullscreenControllerWidget( intf_thread_t *_p_i, QWi
this, setVoutList( vout_thread_t **, int ) ); this, setVoutList( vout_thread_t **, int ) );
/* First Move */ /* First Move */
QRect rect1 = getSettings()->value( "FullScreen/screen" ).toRect();
QPoint pos1 = getSettings()->value( "FullScreen/pos" ).toPoint(); QPoint pos1 = getSettings()->value( "FullScreen/pos" ).toPoint();
int number = config_GetInt( p_intf, "qt-fullscreen-screennumber" ); int number = config_GetInt( p_intf, "qt-fullscreen-screennumber" );
if( number == -1 || number > QApplication::desktop()->numScreens() ) if( number == -1 || number > QApplication::desktop()->numScreens() )
number = QApplication::desktop()->screenNumber( p_intf->p_sys->p_mi ); number = QApplication::desktop()->screenNumber( p_intf->p_sys->p_mi );
if( QApplication::desktop()->screenGeometry( number ).contains( pos1, true ) )
QRect rect = QApplication::desktop()->screenGeometry( number );
if( rect == rect1 && rect.contains( pos1, true ) )
{ {
move( pos1 ); move( pos1 );
i_screennumber = number; i_screennumber = number;
...@@ -729,7 +732,11 @@ FullscreenControllerWidget::FullscreenControllerWidget( intf_thread_t *_p_i, QWi ...@@ -729,7 +732,11 @@ FullscreenControllerWidget::FullscreenControllerWidget( intf_thread_t *_p_i, QWi
FullscreenControllerWidget::~FullscreenControllerWidget() FullscreenControllerWidget::~FullscreenControllerWidget()
{ {
getSettings()->setValue( "FullScreen/pos", pos() ); QPoint pos1 = pos();
QRect rect1 = QApplication::desktop()->screenGeometry( pos1 );
getSettings()->setValue( "FullScreen/pos", pos1 );
getSettings()->setValue( "FullScreen/screen", rect1 );
setVoutList( NULL, 0 ); setVoutList( NULL, 0 );
vlc_mutex_destroy( &lock ); vlc_mutex_destroy( &lock );
} }
......
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