Kaydet (Commit) bd30cfde authored tarafından Michael Meeks's avatar Michael Meeks Kaydeden (comit) Andras Timar

tdf#93870 - GL accel. via VCL canvas for presentations when GL enabled.

Change-Id: Ia31a88cb3d9e6baa987b22f77f407a3f592031f1
Reviewed-on: https://gerrit.libreoffice.org/18285Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarMichael Meeks <michael.meeks@collabora.com>
Tested-by: 's avatarMichael Meeks <michael.meeks@collabora.com>
Reviewed-by: 's avatarJan Holesovsky <kendy@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/18295
üst 6ad7ace0
......@@ -29,6 +29,7 @@ $(eval $(call gb_Library_use_libraries,canvasfactory,\
cppu \
cppuhelper \
sal \
vcl \
$(gb_UWINAPI) \
))
......
......@@ -30,6 +30,7 @@
#include <com/sun/star/lang/NoSupportException.hpp>
#include <toolkit/helper/vclunohelper.hxx>
#include <vcl/opengl/OpenGLWrapper.hxx>
#include <basegfx/matrix/b2dhommatrix.hxx>
#include <basegfx/point/b2dpoint.hxx>
......@@ -58,6 +59,9 @@ namespace cairocanvas
if( maArguments.getLength() == 0 )
return;
// tdf#93870 - force VCL canvas in OpenGL mode for now.
assert( !OpenGLWrapper::isVCLOpenGLEnabled() );
/* maArguments:
0: ptr to creating instance (Window or VirtualDevice)
1: SystemEnvData as a streamed Any (or empty for VirtualDevice)
......
......@@ -37,6 +37,7 @@
#include <cppuhelper/factory.hxx>
#include <cppuhelper/implementationentry.hxx>
#include <comphelper/servicedecl.hxx>
#include <vcl/opengl/OpenGLWrapper.hxx>
#include <basegfx/matrix/b2dhommatrix.hxx>
#include <basegfx/point/b2dpoint.hxx>
......@@ -82,6 +83,9 @@ namespace dxcanvas
if( maArguments.getLength() == 0 )
return;
// tdf#93870 - force VCL canvas in OpenGL mode for now.
assert( !OpenGLWrapper::isVCLOpenGLEnabled() );
VERBOSE_TRACE( "Canvas::initialize called" );
// At index 1, we expect a HWND handle here, containing a
......
......@@ -40,6 +40,7 @@
#include <utility>
#include <o3tl/compat_functional.hxx>
#include <algorithm>
#include <vcl/opengl/OpenGLWrapper.hxx>
using namespace ::com::sun::star;
......@@ -310,6 +311,10 @@ Reference<XInterface> CanvasFactory::lookupAndUse(
m_bCacheHasForcedLastImpl,
OUString("ForceSafeServiceImpl") );
// tdf#93870 - force VCL canvas in OpenGL mode for now.
if( OpenGLWrapper::isVCLOpenGLEnabled() )
bForceLastEntry = true;
// use anti-aliasing canvas, if config flag set (or not existing)
bool bUseAAEntry(true);
checkConfigFlag( bUseAAEntry,
......
......@@ -48,7 +48,7 @@
#include <rtl/ustrbuf.hxx>
#include <vcl/bitmap.hxx>
#include <officecfg/Office/Common.hxx>
#include <vcl/opengl/OpenGLHelper.hxx>
#include <vcl/opengl/OpenGLWrapper.hxx>
using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::beans;
......@@ -297,7 +297,7 @@ OUString AboutDialog::GetVersionString()
sVersion += m_sBuildStr.replaceAll("$BUILDID", sBuildId);
}
if (OpenGLHelper::isVCLOpenGLEnabled())
if (OpenGLWrapper::isVCLOpenGLEnabled())
{
sVersion += "-GL";
}
......
......@@ -90,6 +90,7 @@
#include <vcl/svapp.hxx>
#include <vcl/settings.hxx>
#include <vcl/IconThemeInfo.hxx>
#include <vcl/opengl/OpenGLWrapper.hxx>
#include "optgdlg.hxx"
#include <svx/ofaitem.hxx>
......@@ -548,7 +549,10 @@ CanvasSettings::CanvasSettings() :
bool CanvasSettings::IsHardwareAccelerationAvailable() const
{
if( !mbHWAccelChecked )
if( OpenGLWrapper::isVCLOpenGLEnabled() )
mbHWAccelAvailable = false;
else if( !mbHWAccelChecked )
{
mbHWAccelChecked = true;
......
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
// Fully wrapped methods that have no exotic GL / GLEW header deps.
#ifndef INCLUDED_VCL_OPENGL_OPENGLWRAPPER_HXX
#define INCLUDED_VCL_OPENGL_OPENGLWRAPPER_HXX
#include <vcl/dllapi.h>
class VCL_DLLPUBLIC OpenGLWrapper
{
public:
/**
* Returns true if VCL has OpenGL rendering enabled
*/
static bool isVCLOpenGLEnabled();
};
#endif // INCLUDED_VCL_OPENGL_OPENGLWRAPPER_HXX
......@@ -32,6 +32,7 @@
#include "opengl/zone.hxx"
#include "opengl/watchdog.hxx"
#include <osl/conditn.h>
#include <vcl/opengl/OpenGLWrapper.hxx>
#include <vcl/opengl/OpenGLContext.hxx>
#if defined UNX && !defined MACOSX && !defined IOS && !defined ANDROID
......@@ -681,6 +682,11 @@ bool OpenGLHelper::isVCLOpenGLEnabled()
return bRet;
}
bool OpenGLWrapper::isVCLOpenGLEnabled()
{
return OpenGLHelper::isVCLOpenGLEnabled();
}
void OpenGLHelper::debugMsgStream(const char *pArea, std::ostringstream const &pStream)
{
debugMsgPrint(pArea, "%s", pStream.str().c_str());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment