From ec6ef0160089de37da5231183d72adb82ea9dc9b Mon Sep 17 00:00:00 2001 From: "Anthony J. Thibault" Date: Tue, 28 Mar 2017 09:53:00 -0700 Subject: [PATCH] Mark the system TabletProxy object as Cpp ownership. This should prevent the problem where the QML engine erroneously thinks the QObject has been collected/destroyed. --- interface/src/ui/overlays/Web3DOverlay.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/interface/src/ui/overlays/Web3DOverlay.cpp b/interface/src/ui/overlays/Web3DOverlay.cpp index ae8755910b..36ad207521 100644 --- a/interface/src/ui/overlays/Web3DOverlay.cpp +++ b/interface/src/ui/overlays/Web3DOverlay.cpp @@ -17,6 +17,7 @@ #include #include #include +#include #include #include @@ -197,6 +198,10 @@ void Web3DOverlay::loadSourceURL() { _webSurface->getRootContext()->setContextProperty("pathToFonts", "../../"); tabletScriptingInterface->setQmlTabletRoot("com.highfidelity.interface.tablet.system", _webSurface->getRootItem(), _webSurface.data()); + // mark the TabletProxy object as cpp ownership. + QObject* tablet = tabletScriptingInterface->getTablet("com.highfidelity.interface.tablet.system"); + _webSurface->getRootContext()->engine()->setObjectOwnership(tablet, QQmlEngine::CppOwnership); + // Override min fps for tablet UI, for silky smooth scrolling setMaxFPS(90); }