summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ChatPage.cpp7
-rw-r--r--src/ui/UserProfile.cpp3
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_); }