Index: sd/source/ui/dlg/present.cxx =================================================================== --- sd/source/ui/dlg/present.cxx (revision 1086) +++ sd/source/ui/dlg/present.cxx (revision 1087) @@ -220,8 +220,12 @@ const String sPlaceHolder( RTL_CONSTASCII_USTRINGPARAM( "%1" ) ); for( sal_Int32 nDisplay = 0; nDisplay < mnMonitors; nDisplay++ ) { - String aName( nDisplay == nPrimaryIndex ? msPrimaryMonitor : msMonitor ); + // The presenter screen was displayed on the bad monitor + // s/nPrimaryIndex/nPrimaryIndex + 1/ helped + String aName( nDisplay == nPrimaryIndex + 1 ? msPrimaryMonitor : msMonitor ); + const String aNumber( String::CreateFromInt32( nDisplay + 1 ) ); + aName.SearchAndReplace( sPlaceHolder, aNumber ); maLBMonitor.InsertEntry( aName ); } @@ -230,6 +234,7 @@ maLBMonitor.InsertEntry( msAllMonitors ); sal_Int32 nSelected = ( ( const SfxInt32Item& ) rOutAttrs.Get( ATTR_PRESENT_DISPLAY ) ).GetValue(); + if( nSelected <= 0 ) nSelected = nPrimaryIndex; else