diff options
author | Richard Maudsley <richard.maudsley@isode.com> | 2014-06-30 10:42:05 (GMT) |
---|---|---|
committer | Swift Review <review@swift.im> | 2014-07-09 12:53:37 (GMT) |
commit | 1edfc36235cc67d303ceb2bcf0630affc509f2f7 (patch) | |
tree | 0ca86a9e5e0dbcd3876ce91b4bf4feec5321c9c9 /Swift/QtUI/UserSearch/QtUserSearchWindow.cpp | |
parent | 05d9e618e4c756e50b633448f0546614a645a13d (diff) | |
download | swift-contrib-1edfc36235cc67d303ceb2bcf0630affc509f2f7.zip swift-contrib-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.cpp | 16 |
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 @@ -271,11 +271,7 @@ 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); } @@ -395,6 +391,12 @@ void QtUserSearchWindow::addContacts(const std::vector<Contact::ref>& contacts) } } + 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)); + } } } |