2 files changed, 7 insertions, 3 deletions
diff --git a/src/ChatPage.cpp b/src/ChatPage.cpp
index c5c27964..a07a9654 100644
--- a/src/ChatPage.cpp
+++ b/src/ChatPage.cpp
@@ -1279,8 +1279,13 @@ ChatPage::handleMatrixUri(const QByteArray &uri)
if (sigil1 == "u") {
if (action.isEmpty()) {
- if (auto t = view_manager_->rooms()->currentRoom())
+ auto t = view_manager_->rooms()->currentRoom();
+ if (t &&
+ cache::isRoomMember(mxid1.toStdString(), t->roomId().toStdString())) {
t->openUserProfile(mxid1);
+ return;
+ }
+ emit view_manager_->openGlobalUserProfile(mxid1);
} else if (action == "chat") {
this->startChat(mxid1);
}
diff --git a/src/ui/UserProfile.cpp b/src/ui/UserProfile.cpp
index a3f42671..fbd0f4f7 100644
--- a/src/ui/UserProfile.cpp
+++ b/src/ui/UserProfile.cpp
@@ -423,6 +423,5 @@ UserProfile::getGlobalProfileData()
void
UserProfile::openGlobalProfile()
{
- UserProfile *userProfile = new UserProfile("", userid_, manager, model);
- emit manager->openProfile(userProfile);
+ emit manager->openGlobalUserProfile(userid_);
}
|