diff --git a/interface/src/ui/AddressBarDialog.cpp b/interface/src/ui/AddressBarDialog.cpp index 25ecfc05c2..ac566d68c7 100644 --- a/interface/src/ui/AddressBarDialog.cpp +++ b/interface/src/ui/AddressBarDialog.cpp @@ -17,7 +17,6 @@ #include "DependencyManager.h" #include "AddressManager.h" #include "DialogsManager.h" -#include "scripting/HMDScriptingInterface.h" HIFI_QML_DEF(AddressBarDialog) @@ -40,10 +39,6 @@ AddressBarDialog::AddressBarDialog(QQuickItem* parent) : OffscreenQmlDialog(pare _backEnabled = !(DependencyManager::get()->getBackStack().isEmpty()); _forwardEnabled = !(DependencyManager::get()->getForwardStack().isEmpty()); connect(addressManager.data(), &AddressManager::hostChanged, this, &AddressBarDialog::metaverseServerUrlChanged); - connect(addressManager.data(), &AddressManager::hostChanged, [](){ - auto HMD = DependencyManager::get(); - HMD->setShouldShowTablet(false); - }); connect(DependencyManager::get().data(), &DialogsManager::setUseFeed, this, &AddressBarDialog::setUseFeed); connect(qApp, &Application::receivedHifiSchemeURL, this, &AddressBarDialog::receivedHifiSchemeURL); } diff --git a/scripts/system/tablet-ui/tabletUI.js b/scripts/system/tablet-ui/tabletUI.js index f625b087d5..7011aa4cab 100644 --- a/scripts/system/tablet-ui/tabletUI.js +++ b/scripts/system/tablet-ui/tabletUI.js @@ -54,7 +54,13 @@ tablet.updateAudioBar(currentMicLevel); } - if (HMD.showTablet && !tabletShown) { + if (tabletShown && UIWebTablet && Overlays.getOverlayType(UIWebTablet.webOverlayID) != "web3d") { + // when we switch domains, the tablet entity gets destroyed and recreated. this causes + // the overlay to be deleted, but not recreated. If the overlay is deleted for this or any + // other reason, close the tablet. + hideTabletUI(); + HMD.closeTablet(); + } else if (HMD.showTablet && !tabletShown) { showTabletUI(); } else if (!HMD.showTablet && tabletShown) { hideTabletUI();