mirror of
https://github.com/overte-org/overte.git
synced 2025-07-04 07:29:38 +02:00
use nodeActivated to trigger refresh of Asset Browser
This commit is contained in:
parent
459cbebcee
commit
ee7bee95f8
2 changed files with 16 additions and 3 deletions
|
@ -680,6 +680,7 @@ Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer) :
|
||||||
|
|
||||||
connect(nodeList.data(), &NodeList::nodeAdded, this, &Application::nodeAdded);
|
connect(nodeList.data(), &NodeList::nodeAdded, this, &Application::nodeAdded);
|
||||||
connect(nodeList.data(), &NodeList::nodeKilled, this, &Application::nodeKilled);
|
connect(nodeList.data(), &NodeList::nodeKilled, this, &Application::nodeKilled);
|
||||||
|
connect(nodeList.data(), &NodeList::nodeActivated, this, &Application::nodeActivated);
|
||||||
connect(nodeList.data(), &NodeList::uuidChanged, getMyAvatar(), &MyAvatar::setSessionUUID);
|
connect(nodeList.data(), &NodeList::uuidChanged, getMyAvatar(), &MyAvatar::setSessionUUID);
|
||||||
connect(nodeList.data(), &NodeList::uuidChanged, this, &Application::setSessionUUID);
|
connect(nodeList.data(), &NodeList::uuidChanged, this, &Application::setSessionUUID);
|
||||||
connect(nodeList.data(), &NodeList::limitOfSilentDomainCheckInsReached, nodeList.data(), &NodeList::reset);
|
connect(nodeList.data(), &NodeList::limitOfSilentDomainCheckInsReached, nodeList.data(), &NodeList::reset);
|
||||||
|
@ -4121,15 +4122,26 @@ void Application::nodeAdded(SharedNodePointer node) {
|
||||||
if (node->getType() == NodeType::AvatarMixer) {
|
if (node->getType() == NodeType::AvatarMixer) {
|
||||||
// new avatar mixer, send off our identity packet right away
|
// new avatar mixer, send off our identity packet right away
|
||||||
getMyAvatar()->sendIdentityPacket();
|
getMyAvatar()->sendIdentityPacket();
|
||||||
} else if (node->getType() == NodeType::AssetServer) {
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Application::nodeActivated(SharedNodePointer node) {
|
||||||
|
if (node->getType() == NodeType::AssetServer) {
|
||||||
// asset server just connected - check if we have the asset browser showing
|
// asset server just connected - check if we have the asset browser showing
|
||||||
|
|
||||||
auto offscreenUi = DependencyManager::get<OffscreenUi>();
|
auto offscreenUi = DependencyManager::get<OffscreenUi>();
|
||||||
auto assetDialog = offscreenUi->getRootItem()->findChild<QQuickItem*>("AssetServer");
|
auto assetDialog = offscreenUi->getRootItem()->findChild<QQuickItem*>("AssetServer");
|
||||||
|
|
||||||
if (assetDialog) {
|
if (assetDialog) {
|
||||||
// call reload on the shown asset browser dialog to get the mappings (if permissions allow)
|
auto nodeList = DependencyManager::get<NodeList>();
|
||||||
QMetaObject::invokeMethod(assetDialog, "reload");
|
|
||||||
|
if (nodeList->getThisNodeCanRez()) {
|
||||||
|
// call reload on the shown asset browser dialog to get the mappings (if permissions allow)
|
||||||
|
QMetaObject::invokeMethod(assetDialog, "reload");
|
||||||
|
} else {
|
||||||
|
// we switched to an Asset Server that we can't modify, hide the Asset Browser
|
||||||
|
assetDialog->setVisible(false);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -312,6 +312,7 @@ private slots:
|
||||||
void domainChanged(const QString& domainHostname);
|
void domainChanged(const QString& domainHostname);
|
||||||
void updateWindowTitle();
|
void updateWindowTitle();
|
||||||
void nodeAdded(SharedNodePointer node);
|
void nodeAdded(SharedNodePointer node);
|
||||||
|
void nodeActivated(SharedNodePointer node);
|
||||||
void nodeKilled(SharedNodePointer node);
|
void nodeKilled(SharedNodePointer node);
|
||||||
void packetSent(quint64 length);
|
void packetSent(quint64 length);
|
||||||
void updateDisplayMode();
|
void updateDisplayMode();
|
||||||
|
|
Loading…
Reference in a new issue