summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Maudsley <richard.maudsley@isode.com>2014-06-30 10:42:05 (GMT)
committerSwift Review <review@swift.im>2014-07-09 12:53:37 (GMT)
commit1edfc36235cc67d303ceb2bcf0630affc509f2f7 (patch)
tree0ca86a9e5e0dbcd3876ce91b4bf4feec5321c9c9 /Swift/QtUI/UserSearch/QtUserSearchWindow.cpp
parent05d9e618e4c756e50b633448f0546614a645a13d (diff)
downloadswift-1edfc36235cc67d303ceb2bcf0630affc509f2f7.zip
swift-1edfc36235cc67d303ceb2bcf0630affc509f2f7.tar.bz2
Fix attempting to start impromptu chat when impromptu not supported.
Test-Information: Connect to a server where impromptu is NOT supported. Confirm that adding multiple users by dragging or typing into the JID box is not allowed. Connect to a server where impromptu is supported. Confirm that it is still possible to drag multiple users and add multiple users by typing into the JID box. Change-Id: Ibb4c1f7d6a5820f7ccf3629c1e0d30a441d9d159
Diffstat (limited to 'Swift/QtUI/UserSearch/QtUserSearchWindow.cpp')
-rw-r--r--Swift/QtUI/UserSearch/QtUserSearchWindow.cpp16
1 files changed, 9 insertions, 7 deletions
diff --git a/Swift/QtUI/UserSearch/QtUserSearchWindow.cpp b/Swift/QtUI/UserSearch/QtUserSearchWindow.cpp
index 40b4e28..260ccfe 100644
--- a/Swift/QtUI/UserSearch/QtUserSearchWindow.cpp
+++ b/Swift/QtUI/UserSearch/QtUserSearchWindow.cpp
@@ -270,13 +270,9 @@ JID QtUserSearchWindow::getContactJID() const {
}
void QtUserSearchWindow::addSearchedJIDToList(const JID& jid) {
- Contact::ref contact = boost::make_shared<Contact>(jid, jid.toString(), StatusShow::None, "");
- contactVector_.push_back(contact);
- firstMultiJIDPage_->contactList_->setList(contactVector_);
- firstMultiJIDPage_->emitCompletenessCheck();
- if (type_ == ChatToContact) {
- firstMultiJIDPage_->groupBox->setEnabled(supportsImpromptu_ ? 1 : (contactVector_.size() < 1));
- }
+ std::vector<JID> jids;
+ jids.push_back(jid);
+ handleJIDsAdded(jids);
}
void QtUserSearchWindow::show() {
@@ -394,8 +390,14 @@ void QtUserSearchWindow::addContacts(const std::vector<Contact::ref>& contacts)
contactVector_.push_back(newContact);
}
}
+ if (!supportsImpromptu_ && contactVector_.size() > 1) {
+ contactVector_.resize(1); /* can't chat with more than one user */
+ }
firstMultiJIDPage_->contactList_->setList(contactVector_);
firstMultiJIDPage_->emitCompletenessCheck();
+ if (type_ == ChatToContact) {
+ firstMultiJIDPage_->groupBox->setEnabled(supportsImpromptu_ ? true : (contactVector_.size() < 1));
+ }
}
}