From ee4569efa8322497112e8e951a67b9adca4ac55e Mon Sep 17 00:00:00 2001 From: Michael Meeks Date: Thu, 18 Jul 2013 14:55:12 +0100 Subject: fdo#67045 - fix several nasty screen selection issues with presenter console. Also add the ability to select the external screen (whatever it is) to the configuration dialog. Change-Id: Id2d157eafff0031d7ae9fa2140d7022ae4a0cc6b --- sdext/source/presenter/PresenterScreen.cxx | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'sdext/source/presenter') diff --git a/sdext/source/presenter/PresenterScreen.cxx b/sdext/source/presenter/PresenterScreen.cxx index 2f1aeaa22778..05caa7e80f1c 100644 --- a/sdext/source/presenter/PresenterScreen.cxx +++ b/sdext/source/presenter/PresenterScreen.cxx @@ -448,9 +448,10 @@ void PresenterScreen::SwitchMonitors() } } -// FIXME: really VCL should hold the current 'external' and 'built-in' -// display states, and hide them behind some attractive API, and -// the PresenterConsole should link VCL directly ... +/** + * Return the real VCL screen number to show the presenter console + * on or -1 to not show anything. + */ sal_Int32 PresenterScreen::GetPresenterScreenNumber ( const Reference& rxPresentation) const { @@ -475,6 +476,8 @@ sal_Int32 PresenterScreen::GetPresenterScreenNumber ( return -1; } + SAL_INFO("sdext.presenter", "Display number is " << nDisplayNumber); + if (nDisplayNumber > 0) { nScreenNumber = nDisplayNumber - 1; @@ -518,7 +521,7 @@ sal_Int32 PresenterScreen::GetPresenterScreenNumber ( // For some reason we can not access the screen number. Use // the default instead. } - + SAL_INFO("sdext.presenter", "Get presenter screen for screen " << nScreenNumber); return GetPresenterScreenFromScreen(nScreenNumber); } @@ -538,6 +541,8 @@ sal_Int32 PresenterScreen::GetPresenterScreenFromScreen( sal_Int32 nPresentation break; default: + SAL_INFO("sdext.presenter", "Warning unexpected, out of bound screen " + "mapped to 0" << nPresentationScreen); // When the full screen presentation is displayed on a screen // other than 0 or 1 then place the presenter on the first // available screen. -- cgit