summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2017-09-28 10:28:44 +0100
committerCaolán McNamara <caolanm@redhat.com>2017-09-28 21:21:10 +0200
commit69c88654881a4aa0db05df9fb94e3d9e7dfbfa30 (patch)
treee26a37194ce676a908aa34903994e2d8ed879967
parent6ddd8fcf5c92936de2a3f9d824b06a9f7dc5a86a (diff)
Resolves: tdf#42873 videos in presenter console misplaced
Change-Id: Ib7559246f6f3173acea72268db0489b79df38ae3 Reviewed-on: https://gerrit.libreoffice.org/42892 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--slideshow/source/engine/shapes/viewmediashape.cxx18
1 files changed, 13 insertions, 5 deletions
diff --git a/slideshow/source/engine/shapes/viewmediashape.cxx b/slideshow/source/engine/shapes/viewmediashape.cxx
index a518fdae5780..9059b218cdf4 100644
--- a/slideshow/source/engine/shapes/viewmediashape.cxx
+++ b/slideshow/source/engine/shapes/viewmediashape.cxx
@@ -50,15 +50,16 @@
#include <vcl/opengl/OpenGLContext.hxx>
#endif
-#include <com/sun/star/media/XManager.hpp>
-#include <com/sun/star/media/XPlayer.hpp>
-#include <com/sun/star/media/XPlayerWindow.hpp>
+#include <com/sun/star/awt/XWindow.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
+#include <com/sun/star/lang/XComponent.hpp>
#include <com/sun/star/lang/XMultiComponentFactory.hpp>
#include <com/sun/star/lang/NoSupportException.hpp>
-#include <com/sun/star/awt/XWindow.hpp>
+#include <com/sun/star/media/XManager.hpp>
+#include <com/sun/star/media/XPlayer.hpp>
+#include <com/sun/star/media/XPlayerWindow.hpp>
+#include <com/sun/star/presentation/XSlideShowView.hpp>
#include <com/sun/star/rendering/XCanvas.hpp>
-#include <com/sun/star/lang/XComponent.hpp>
#include "viewmediashape.hxx"
#include "mediashape.hxx"
@@ -460,6 +461,13 @@ namespace slideshow
{
mpMediaWindow.disposeAndClear();
mpMediaWindow = VclPtr<SystemChildWindow>::Create( pWindow, WB_CLIPCHILDREN );
+ UnoViewSharedPtr xUnoView(std::dynamic_pointer_cast<UnoView>(mpViewLayer));
+ if (xUnoView)
+ {
+ awt::Rectangle aCanvasArea = xUnoView->getUnoView()->getCanvasArea();
+ aAWTRect.X += aCanvasArea.X;
+ aAWTRect.Y += aCanvasArea.Y;
+ }
mpMediaWindow->SetPosSizePixel( Point( aAWTRect.X, aAWTRect.Y ),
Size( aAWTRect.Width, aAWTRect.Height ) );
}