diff --git a/interface/resources/qml/hifi/tablet/tabletWindows/TabletPreferencesDialog.qml b/interface/resources/qml/hifi/tablet/tabletWindows/TabletPreferencesDialog.qml index 05f45dc61e..ec2c003383 100644 --- a/interface/resources/qml/hifi/tablet/tabletWindows/TabletPreferencesDialog.qml +++ b/interface/resources/qml/hifi/tablet/tabletWindows/TabletPreferencesDialog.qml @@ -41,7 +41,15 @@ Item { section.saveAll(); } - closeDialog(); + if (HMD.active) { + if (gotoPreviousApp) { + tablet.returnToPreviousApp(); + } else { + tablet.popFromStack(); + } + } else { + closeDialog(); + } } function restoreAll() { @@ -50,7 +58,15 @@ Item { section.restoreAll(); } - closeDialog(); + if (HMD.active) { + if (gotoPreviousApp) { + tablet.returnToPreviousApp(); + } else { + tablet.popFromStack(); + } + } else { + closeDialog(); + } } function closeDialog() { diff --git a/interface/src/Menu.cpp b/interface/src/Menu.cpp index bffc9519bf..7a310e675f 100644 --- a/interface/src/Menu.cpp +++ b/interface/src/Menu.cpp @@ -255,7 +255,7 @@ Menu::Menu() { connect(action, &QAction::triggered, [] { auto tablet = DependencyManager::get()->getTablet("com.highfidelity.interface.tablet.system"); auto hmd = DependencyManager::get(); - tablet->loadQMLOnTop("hifi/tablet/ControllerSettings.qml"); + tablet->pushOntoStack("hifi/tablet/ControllerSettings.qml"); if (!hmd->getShouldShowTablet()) { hmd->toggleShouldShowTablet();