diff options
Diffstat (limited to 'Swift/QtUI')
| -rw-r--r-- | Swift/QtUI/UserSearch/QtContactListWidget.cpp | 4 | ||||
| -rw-r--r-- | Swift/QtUI/UserSearch/QtContactListWidget.h | 1 | ||||
| -rw-r--r-- | Swift/QtUI/UserSearch/QtUserSearchFirstMultiJIDPage.cpp | 4 | ||||
| -rw-r--r-- | Swift/QtUI/UserSearch/QtUserSearchWindow.cpp | 16 | 
4 files changed, 17 insertions, 8 deletions
| diff --git a/Swift/QtUI/UserSearch/QtContactListWidget.cpp b/Swift/QtUI/UserSearch/QtContactListWidget.cpp index 4adc929..6504f3e 100644 --- a/Swift/QtUI/UserSearch/QtContactListWidget.cpp +++ b/Swift/QtUI/UserSearch/QtContactListWidget.cpp @@ -79,2 +79,6 @@ void QtContactListWidget::setMaximumNoOfContactsToOne(bool limited) { +bool QtContactListWidget::isFull() const { +	return limited_ && (getList().size() == 1); +} +  void QtContactListWidget::updateContacts(const std::vector<Contact::ref>& contactUpdates) { diff --git a/Swift/QtUI/UserSearch/QtContactListWidget.h b/Swift/QtUI/UserSearch/QtContactListWidget.h index 601d320..112f3ee 100644 --- a/Swift/QtUI/UserSearch/QtContactListWidget.h +++ b/Swift/QtUI/UserSearch/QtContactListWidget.h @@ -42,2 +42,3 @@ public:  	void setMaximumNoOfContactsToOne(bool limited); +	bool isFull() const; diff --git a/Swift/QtUI/UserSearch/QtUserSearchFirstMultiJIDPage.cpp b/Swift/QtUI/UserSearch/QtUserSearchFirstMultiJIDPage.cpp index 597c88b..8ea49c4 100644 --- a/Swift/QtUI/UserSearch/QtUserSearchFirstMultiJIDPage.cpp +++ b/Swift/QtUI/UserSearch/QtUserSearchFirstMultiJIDPage.cpp @@ -74,3 +74,5 @@ void QtUserSearchFirstMultiJIDPage::dragEnterEvent(QDragEnterEvent *event) {  		|| event->mimeData()->hasFormat("application/vnd.swift.contact-jid-muc")) { -			event->acceptProposedAction(); +			if (!contactList_->isFull()) { +				event->acceptProposedAction(); +			}  	} 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 @@ -272,9 +272,5 @@ 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);  } @@ -396,4 +392,10 @@ 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)); +		}  	} | 
 Swift
 Swift