tdf#97197 - GL transitions should use their context not VCL's.

Change-Id: Ifab7da221e73e068ebe0856a4224ec4ca4d611b5
This commit is contained in:
Michael Meeks
2016-02-11 17:17:28 +00:00
parent b6a62f0755
commit 8973bc02fd

View File

@@ -374,7 +374,9 @@ bool OGLTransitionerImpl::initWindowFromSlideShowView( const Reference< presenta
}
SAL_INFO("slideshow", "created the context");
mpContext->makeCurrent();
CHECK_GL_ERROR();
awt::Rectangle aCanvasArea = mxView->getCanvasArea();
mpContext->setWinPosAndSize(Point(aCanvasArea.X, aCanvasArea.Y), Size(aCanvasArea.Width, aCanvasArea.Height));
SAL_INFO("slideshow.opengl", "canvas area: " << aCanvasArea.X << "," << aCanvasArea.Y << " - " << aCanvasArea.Width << "x" << aCanvasArea.Height);
@@ -551,6 +553,9 @@ bool OGLTransitionerImpl::setTransition( std::shared_ptr<OGLTransitionImpl> pTra
mpTransition = pTransition;
mpContext->makeCurrent();
CHECK_GL_ERROR();
bool succeeded = impl_prepareTransition();
if (!succeeded) {
mpTransition = nullptr;
@@ -1288,6 +1293,9 @@ void OGLTransitionerImpl::disposeTextures()
void OGLTransitionerImpl::impl_dispose()
{
mpContext->makeCurrent();
CHECK_GL_ERROR();
impl_finishTransition();
disposeTextures();
if( mpContext.is() )