summaryrefslogtreecommitdiffstats
path: root/Swift
diff options
context:
space:
mode:
Diffstat (limited to 'Swift')
-rw-r--r--Swift/Controllers/RosterController.cpp4
-rw-r--r--Swift/QtUI/QtSetGroupsDialog.cpp2
2 files changed, 5 insertions, 1 deletions
diff --git a/Swift/Controllers/RosterController.cpp b/Swift/Controllers/RosterController.cpp
index 96056ca..48a3aa9 100644
--- a/Swift/Controllers/RosterController.cpp
+++ b/Swift/Controllers/RosterController.cpp
@@ -146,6 +146,10 @@ void RosterController::handleOnJIDUpdated(const JID& jid, const String& oldName,
roster_->removeContactFromGroup(jid, group);
}
}
+ Presence::ref presence(presenceOracle_->getHighestPriorityPresence(jid));
+ if (presence) {
+ roster_->applyOnItems(SetPresence(presence));
+ }
}
void RosterController::handleUIEvent(boost::shared_ptr<UIEvent> event) {
diff --git a/Swift/QtUI/QtSetGroupsDialog.cpp b/Swift/QtUI/QtSetGroupsDialog.cpp
index ad24122..82a71a1 100644
--- a/Swift/QtUI/QtSetGroupsDialog.cpp
+++ b/Swift/QtUI/QtSetGroupsDialog.cpp
@@ -69,7 +69,7 @@ boost::shared_ptr<RegroupRosterItemUIEvent> QtSetGroupsDialog::getRegroupEvent()
if (pair.first == "Contacts") {
wantsContacts = true;
}
- if (!existing) {
+ if (!existing && pair.first != "Contacts") {
addedGroups.push_back(pair.first);
}
} else {