From af97c7275e9fd1dbb120e90c044fadad459b1b9d Mon Sep 17 00:00:00 2001 From: Dante Ruiz Date: Thu, 23 Mar 2017 17:03:24 +0100 Subject: [PATCH] Use loadQMlSource if no stack is aviable --- interface/resources/qml/hifi/tablet/TabletRoot.qml | 1 - interface/src/Application.cpp | 6 +++++- libraries/script-engine/src/TabletScriptingInterface.cpp | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/interface/resources/qml/hifi/tablet/TabletRoot.qml b/interface/resources/qml/hifi/tablet/TabletRoot.qml index 99c9351993..febb2793ec 100644 --- a/interface/resources/qml/hifi/tablet/TabletRoot.qml +++ b/interface/resources/qml/hifi/tablet/TabletRoot.qml @@ -8,7 +8,6 @@ Item { objectName: "tabletRoot" property string username: "Unknown user" property var eventBridge; - property var rootMenu; property var openModal: null; property var openMessage: null; diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index 535a8adafc..78dee09fe4 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -5848,10 +5848,14 @@ void Application::showDialog(const QString& desktopURL, const QString& tabletURL auto tabletScriptingInterface = DependencyManager::get(); auto tablet = dynamic_cast(tabletScriptingInterface->getTablet("com.highfidelity.interface.tablet.system")); auto hmd = DependencyManager::get(); - if (tablet->getToolbarMode() || (!hmd->getShouldShowTablet() && !isHMDMode())) { + if (tablet->getToolbarMode()) { DependencyManager::get()->show(desktopURL, name); } else { tablet->pushOntoStack(tabletURL); + if (!hmd->getShouldShowTablet() && !isHMDMode()) { + hmd->openTablet(); + } + } } diff --git a/libraries/script-engine/src/TabletScriptingInterface.cpp b/libraries/script-engine/src/TabletScriptingInterface.cpp index e26b3a3f63..054cf83744 100644 --- a/libraries/script-engine/src/TabletScriptingInterface.cpp +++ b/libraries/script-engine/src/TabletScriptingInterface.cpp @@ -358,7 +358,7 @@ void TabletProxy::pushOntoStack(const QVariant& path) { if (stack) { QMetaObject::invokeMethod(stack, "pushSource", Q_ARG(const QVariant&, path)); } else { - qCDebug(scriptengine) << "tablet cannot push QML because _qmlTabletRoot doesn't have child stack"; + loadQMLSource(path); } } else if (_desktopWindow) { auto stack = _desktopWindow->asQuickItem()->findChild("stack");