View | Details | Raw Unified | Return to issue 116307
Collapse All | Expand All

(-)sd/source/ui/slideshow/slideshow.cxx (-1 / +1 lines)
Lines 1184-1190 Link Here
1184
    if ( pWorkWindow )
1184
    if ( pWorkWindow )
1185
    {
1185
    {
1186
        pWorkWindow->SetBackground(Wallpaper(COL_BLACK));
1186
        pWorkWindow->SetBackground(Wallpaper(COL_BLACK));
1187
        pWorkWindow->StartPresentationMode( TRUE, mpDoc->getPresentationSettings().mbAlwaysOnTop ? PRESENTATION_HIDEALLAPPS : 0, nDisplay);
1187
        pWorkWindow->StartPresentationMode( TRUE, mpDoc->getPresentationSettings().mbAlwaysOnTop ? PRESENTATION_HIDEALLAPPS : 0, nDisplay + 1);
1188
        //    pWorkWindow->ShowFullScreenMode(FALSE, nDisplay);
1188
        //    pWorkWindow->ShowFullScreenMode(FALSE, nDisplay);
1189
    }
1189
    }
1190
1190
(-)sd/source/ui/dlg/present.cxx (-5 / +5 lines)
Lines 218-229 Link Here
218
			}
218
			}
219
219
220
			const String sPlaceHolder( RTL_CONSTASCII_USTRINGPARAM( "%1" ) );
220
			const String sPlaceHolder( RTL_CONSTASCII_USTRINGPARAM( "%1" ) );
221
221
			for( sal_Int32 nDisplay = 0; nDisplay < mnMonitors; nDisplay++ )
222
			for( sal_Int32 nDisplay = 0; nDisplay < mnMonitors; nDisplay++ )
222
			{
223
			{
223
				// The presenter screen was displayed on the bad monitor
224
				String aName( nDisplay != nPrimaryIndex ? msPrimaryMonitor : msMonitor );
224
				// s/nPrimaryIndex/nPrimaryIndex + 1/ helped 
225
				String aName( nDisplay == nPrimaryIndex + 1 ? msPrimaryMonitor : msMonitor );
226
227
				const String aNumber( String::CreateFromInt32( nDisplay ) );
225
				const String aNumber( String::CreateFromInt32( nDisplay ) );
228
226
229
				aName.SearchAndReplace( sPlaceHolder, aNumber );
227
				aName.SearchAndReplace( sPlaceHolder, aNumber );
Lines 235-242 Link Here
235
233
236
			sal_Int32 nSelected = ( ( const SfxInt32Item& ) rOutAttrs.Get( ATTR_PRESENT_DISPLAY ) ).GetValue();
234
			sal_Int32 nSelected = ( ( const SfxInt32Item& ) rOutAttrs.Get( ATTR_PRESENT_DISPLAY ) ).GetValue();
237
235
238
			if( nSelected <= 0 )
236
			if( nSelected < 0 )
239
				nSelected = nPrimaryIndex;
237
				nSelected = nPrimaryIndex;
238
			else if ( nSelected == 0 )
239
			    nSelected = nPrimaryIndex + 1;
240
			else
240
			else
241
				nSelected--;
241
				nSelected--;
242
242
(-)sdext/source/presenter/PresenterScreen.cxx (-10 / +22 lines)
Lines 419-424 Link Here
419
		Reference<presentation::XSlideShowController> xSlideShowController( xPresentation->getController() );
419
		Reference<presentation::XSlideShowController> xSlideShowController( xPresentation->getController() );
420
        mxSlideShowControllerWeak = xSlideShowController;
420
        mxSlideShowControllerWeak = xSlideShowController;
421
421
422
#ifdef DEBUG
423
    fprintf( stderr, "PresenterScreen.cxx, I'm in  %s \n", __func__ );
424
    fprintf( stderr, "I'm at line  %d \n", __LINE__ );
425
    fprintf( stderr, "xSlideShowController.is() is equal to %d \n", xSlideShowController.is() );
426
    fprintf( stderr, "xSlideShowController->isFullScreen() is equal to %d \n", xSlideShowController->isFullScreen() );
427
#endif
422
		if( !xSlideShowController.is() || !xSlideShowController->isFullScreen() )
428
		if( !xSlideShowController.is() || !xSlideShowController->isFullScreen() )
423
			return;
429
			return;
424
430
Lines 504-511 Link Here
504
{
510
{
505
    // Determine the screen on which the full screen presentation is being
511
    // Determine the screen on which the full screen presentation is being
506
    // displayed.
512
    // displayed.
507
    sal_Int32 nScreenNumber (0);
513
    sal_Int32 nScreenNumber (1);
508
    sal_Int32 nScreenCount (1);
514
    sal_Int32 nScreenCount (2);
509
    try
515
    try
510
    {
516
    {
511
        Reference<beans::XPropertySet> xProperties (rxPresentation, UNO_QUERY);
517
        Reference<beans::XPropertySet> xProperties (rxPresentation, UNO_QUERY);
Lines 543-549 Link Here
543
            // A display number value of 0 indicates the primary screen.
549
            // A display number value of 0 indicates the primary screen.
544
            // Instantiate the DisplayAccess service to find out which
550
            // Instantiate the DisplayAccess service to find out which
545
            // screen number that is.
551
            // screen number that is.
546
            if (nDisplayNumber <= 0 && xDisplayProperties.is())
552
            if ( xDisplayProperties.is() )
547
                xDisplayProperties->getPropertyValue(A2S("DefaultDisplay")) >>= nScreenNumber;
553
                xDisplayProperties->getPropertyValue(A2S("DefaultDisplay")) >>= nScreenNumber;
548
#ifdef DEBUG
554
#ifdef DEBUG
549
        fprintf( stderr, "I'm in  %s \n", __func__ );
555
        fprintf( stderr, "I'm in  %s \n", __func__ );
Lines 602-631 Link Here
602
{
608
{
603
    // A negative value means that the presentation spans all available
609
    // A negative value means that the presentation spans all available
604
    // displays.  That leaves no room for the presenter.
610
    // displays.  That leaves no room for the presenter.
605
    const sal_Int32 nScreenNumber(GetScreenNumber(rxPresentation));
611
    const sal_Int32 nScreenNumber = GetScreenNumber(rxPresentation);
612
#ifdef DEBUG
613
    fprintf( stderr, "I'm in  %s \n", __func__ );
614
    fprintf( stderr, "I'm at line  %d \n", __LINE__ );
615
    fprintf( stderr, "nScreenNumber(GetScreenNumber(rxPresentation)) is equal to %ld \n", nScreenNumber);
616
    fprintf( stderr, " /!\\ ==>  if (nScreenNumber < 0) return NULL  \n" );
617
#endif 
606
    if (nScreenNumber < 0)
618
    if (nScreenNumber < 0)
607
        return NULL;
619
        return NULL;
608
    
620
    
609
    // Setup the resource id of the full screen background pane so that
621
    // Setup the resource id of the full screen background pane so that
610
    // it is displayed on another screen than the presentation.
622
    // it is displayed on another screen than the presentation.
611
    sal_Int32 nPresenterScreenNumber (0);
623
    sal_Int32 nPresenterScreenNumber (1);
612
624
613
    switch (nScreenNumber)
625
    switch (nScreenNumber)
614
    {
626
    {
615
        case 0:
627
        case 0:
616
            nPresenterScreenNumber = 1;
628
            nPresenterScreenNumber = 0;
617
            break;
629
            break;
618
630
619
        case 1:
631
        case 1:
620
            nPresenterScreenNumber = 0;
632
            nPresenterScreenNumber = 1;
621
            break;
633
            break;
622
634
623
        default:
635
        default:
624
            // When the full screen presentation is displayed on a screen
636
            // When the full screen presentation is displayed on a screen
625
            // other than 0 or 1 then place the presenter on the first
637
            // other than 0 or 1 then place the presenter on the first
626
            // available screen.
638
            // available screen.
627
            nPresenterScreenNumber = 0;
639
            nPresenterScreenNumber = 1;
628
            break;
640
        break;
629
    }
641
    }
630
642
631
#ifdef DEBUG
643
#ifdef DEBUG
Lines 644-650 Link Here
644
        Reference<XComponentContext>(mxContextWeak),
656
        Reference<XComponentContext>(mxContextWeak),
645
        PresenterHelper::msFullScreenPaneURL
657
        PresenterHelper::msFullScreenPaneURL
646
            +A2S("?FullScreen=true&ScreenNumber=")
658
            +A2S("?FullScreen=true&ScreenNumber=")
647
                + OUString::valueOf(nPresenterScreenNumber));
659
                + OUString::valueOf(nPresenterScreenNumber) );
648
}
660
}
649
661
650
662

Return to issue 116307