summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoanna Hulboj <joanna.hulboj@isode.com>2017-05-04 14:50:51 (GMT)
committerKevin Smith <kevin.smith@isode.com>2017-05-10 08:56:38 (GMT)
commit1cb2bb760d6487764a9480c84cf2d2edc65ff564 (patch)
treeaa5d01bb3c0fc74d28c96343571ff934447f059a /Swift/Controllers/Chat/MUCController.cpp
parent473a73c7112e9fbcd441fa1bf5ff7b1f96ee28bd (diff)
downloadswift-1cb2bb760d6487764a9480c84cf2d2edc65ff564.zip
swift-1cb2bb760d6487764a9480c84cf2d2edc65ff564.tar.bz2
Fix chat window title being displayed incorrectly
Test-Information: Open Swift app, from Recent Chat List click on entry that was created from offline invitees. New chat window will be opened and the title will be the same as Recent Chat List entry. Change-Id: Ia8730aaabfd78e7026d15f3162d4fa46b1489397
Diffstat (limited to 'Swift/Controllers/Chat/MUCController.cpp')
-rw-r--r--Swift/Controllers/Chat/MUCController.cpp30
1 files changed, 6 insertions, 24 deletions
diff --git a/Swift/Controllers/Chat/MUCController.cpp b/Swift/Controllers/Chat/MUCController.cpp
index fd3dc37..d10e6d4 100644
--- a/Swift/Controllers/Chat/MUCController.cpp
+++ b/Swift/Controllers/Chat/MUCController.cpp
@@ -110,6 +110,7 @@ MUCController::MUCController (
xmppRoster_ = xmppRoster;
subject_ = "";
isInitialJoin_ = true;
+ chatWindowTitle_ = "";
roster_ = std::unique_ptr<Roster>(new Roster(false, true));
rosterVCardProvider_ = new RosterVCardProvider(roster_.get(), vcardManager, JID::WithResource);
@@ -406,10 +407,6 @@ void MUCController::handleJoinComplete(const std::string& nick) {
setAvailableRoomActions(occupant.getAffiliation(), occupant.getRole());
}
onUserJoined();
-
- if (isImpromptu_) {
- setImpromptuWindowTitle();
- }
}
void MUCController::handleAvatarChanged(const JID& jid) {
@@ -464,7 +461,6 @@ void MUCController::handleOccupantJoined(const MUCOccupant& occupant) {
}
if (isImpromptu_) {
- setImpromptuWindowTitle();
onActivity("");
}
}
@@ -769,10 +765,6 @@ void MUCController::handleOccupantLeft(const MUCOccupant& occupant, MUC::Leaving
if (clearAfter) {
clearPresenceQueue();
}
-
- if (isImpromptu_) {
- setImpromptuWindowTitle();
- }
}
void MUCController::handleOccupantNicknameChanged(const std::string& oldNickname, const std::string& newNickname) {
@@ -1178,21 +1170,6 @@ Form::ref MUCController::buildImpromptuRoomConfiguration(Form::ref roomConfigura
return result;
}
-void MUCController::setImpromptuWindowTitle() {
- std::string title;
- std::map<std::string, MUCOccupant> occupants = muc_->getOccupants();
- if (occupants.size() <= 1) {
- title = QT_TRANSLATE_NOOP("", "Empty Chat");
- } else {
- for (const auto& pair : occupants) {
- if (pair.first != nick_) {
- title += (title.empty() ? "" : ", ") + pair.first;
- }
- }
- }
- chatWindow_->setName(title);
-}
-
void MUCController::handleRoomUnlocked() {
// Handle buggy MUC implementations where the joined room already exists and is unlocked.
// Configure the room again in this case.
@@ -1261,4 +1238,9 @@ void MUCController::addChatSystemMessage() {
lastJoinMessageUID_ = chatWindow_->addSystemMessage(chatMessageParser_->parseMessageBody(lastStartMessage_), ChatWindow::DefaultDirection);
}
+void MUCController::setChatWindowTitle(const std::string& title) {
+ chatWindowTitle_ = title;
+ chatWindow_->setName(chatWindowTitle_);
+}
+
}