From 71deac49c6311d26c79511a2597c4f1e986c490f Mon Sep 17 00:00:00 2001 From: Seth Alves Date: Mon, 1 May 2017 17:06:15 -0700 Subject: [PATCH] reset tablet to homescreen when going from 2d to vr --- interface/resources/qml/hifi/tablet/Tablet.qml | 6 +++++- libraries/script-engine/src/TabletScriptingInterface.cpp | 6 ++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/interface/resources/qml/hifi/tablet/Tablet.qml b/interface/resources/qml/hifi/tablet/Tablet.qml index 8ad6339d88..18f88b7718 100644 --- a/interface/resources/qml/hifi/tablet/Tablet.qml +++ b/interface/resources/qml/hifi/tablet/Tablet.qml @@ -65,7 +65,11 @@ Item { }); // pass a reference to the tabletRoot object to the button. - button.tabletRoot = parent.parent; + if (tabletRoot) { + button.tabletRoot = tabletRoot; + } else { + button.tabletRoot = parent.parent; + } sortButtons(); diff --git a/libraries/script-engine/src/TabletScriptingInterface.cpp b/libraries/script-engine/src/TabletScriptingInterface.cpp index bffe318c11..b8dae0954a 100644 --- a/libraries/script-engine/src/TabletScriptingInterface.cpp +++ b/libraries/script-engine/src/TabletScriptingInterface.cpp @@ -216,8 +216,10 @@ void TabletProxy::setToolbarMode(bool toolbarMode) { connect(tabletRootWindow, &QmlWindowClass::fromQml, this, &TabletProxy::fromQml); }); } else { + _state = State::Home; removeButtonsFromToolbar(); addButtonsToHomeScreen(); + emit screenChanged(QVariant("Home"), QVariant(TABLET_SOURCE_URL)); // destroy desktop window if (_desktopWindow) { @@ -627,8 +629,8 @@ void TabletProxy::addButtonsToHomeScreen() { for (auto& buttonProxy : _tabletButtonProxies) { addButtonProxyToQmlTablet(tablet, buttonProxy.data()); } - auto loader = _qmlTabletRoot->findChild("loader"); - QObject::disconnect(loader, SIGNAL(loaded()), this, SLOT(addButtonsToHomeScreen())); + auto loader = _qmlTabletRoot->findChild("loader"); + QObject::disconnect(loader, SIGNAL(loaded()), this, SLOT(addButtonsToHomeScreen())); } QObject* TabletProxy::getTabletSurface() {