Redisplay "continue without avatar entities" when re-enter address

This commit is contained in:
David Rowe 2021-03-29 21:14:00 +13:00
parent c45007d038
commit 6a7f4a0426
3 changed files with 27 additions and 4 deletions

View file

@ -415,6 +415,8 @@ void AddressManager::handleLookupString(const QString& lookupString, bool fromSu
QString sanitizedString = lookupString.trimmed();
if (!sanitizedString.isEmpty()) {
resetConfirmConnectWithoutAvatarEntities();
// make this a valid hifi URL and handle it off to handleUrl
handleUrl(sanitizedString, fromSuggestions ? Suggestions : UserInput);
}
@ -874,6 +876,11 @@ bool AddressManager::setDomainInfo(const QUrl& domainURL, LookupTrigger trigger)
return emitHostChanged;
}
void AddressManager::goToEntry(LookupTrigger trigger) {
resetConfirmConnectWithoutAvatarEntities();
handleUrl(DEFAULT_VIRCADIA_ADDRESS, trigger);
}
void AddressManager::goToUser(const QString& username, bool shouldMatchOrientation) {
QString formattedUsername = QUrl::toPercentEncoding(username);
@ -890,6 +897,11 @@ void AddressManager::goToUser(const QString& username, bool shouldMatchOrientati
QByteArray(), nullptr, requestParams);
}
void AddressManager::goToLastAddress() {
resetConfirmConnectWithoutAvatarEntities();
handleUrl(_lastVisitedURL, LookupTrigger::AttemptedRefresh);
}
bool AddressManager::canGoBack() const {
return (_backStack.size() > 0);
}
@ -1024,3 +1036,10 @@ QString AddressManager::getPlaceName() const {
}
return QString();
}
void AddressManager::resetConfirmConnectWithoutAvatarEntities() {
DomainHandler& domainHandler = DependencyManager::get<NodeList>()->getDomainHandler();
if (!domainHandler.isConnected()) {
domainHandler.resetConfirmConnectWithoutAvatarEntities();
}
}

View file

@ -301,9 +301,7 @@ public slots:
* @param {location.LookupTrigger} trigger=StartupFromSettings - The reason for the function call. Helps ensure that user's
* location history is correctly maintained.
*/
void goToEntry(LookupTrigger trigger = LookupTrigger::StartupFromSettings) {
handleUrl(DEFAULT_VIRCADIA_ADDRESS, trigger);
}
void goToEntry(LookupTrigger trigger = LookupTrigger::StartupFromSettings);
/**jsdoc
* Takes you to the specified user's location.
@ -318,7 +316,7 @@ public slots:
* Takes you to the last address tried. This will be the last URL tried from <code>location.handleLookupString</code>.
* @function location.goToLastAddress
*/
void goToLastAddress() { handleUrl(_lastVisitedURL, LookupTrigger::AttemptedRefresh); }
void goToLastAddress();
/**jsdoc
* Checks if going back to the previous location is possible.
@ -527,6 +525,8 @@ private:
void addCurrentAddressToHistory(LookupTrigger trigger);
void resetConfirmConnectWithoutAvatarEntities();
QUrl _domainURL;
QUrl _lastVisitedURL;

View file

@ -163,6 +163,10 @@ public:
bool checkInPacketTimeout();
void clearPendingCheckins() { _checkInPacketsSinceLastReply = 0; }
void resetConfirmConnectWithoutAvatarEntities() {
_haveAskedConnectWithoutAvatarEntities = false;
}
/**jsdoc
* <p>The reasons that you may be refused connection to a domain are defined by numeric values:</p>
* <table>