summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Maudsley <richard.maudsley@isode.com>2014-04-17 10:17:10 (GMT)
committerSwift Review <review@swift.im>2014-05-27 14:07:38 (GMT)
commite5975a6d4809bf05f8c9df724c926bd26fc4a9df (patch)
treed81d2ff3b0f6f63a4aac1aeff00180c78f6edbbe /Swift/Controllers/Chat
parent67cc8dff4e80344c2d10e2691c562c2440fd8c1c (diff)
downloadswift-contrib-e5975a6d4809bf05f8c9df724c926bd26fc4a9df.zip
swift-contrib-e5975a6d4809bf05f8c9df724c926bd26fc4a9df.tar.bz2
Impromptu chat notifications happen like chats, not MUCs.
Change-Id: Ibebadd0064f0535a7a2504a385a16d875760a9db
Diffstat (limited to 'Swift/Controllers/Chat')
-rw-r--r--Swift/Controllers/Chat/MUCController.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/Swift/Controllers/Chat/MUCController.cpp b/Swift/Controllers/Chat/MUCController.cpp
index ffd86f9..4860fc8 100644
--- a/Swift/Controllers/Chat/MUCController.cpp
+++ b/Swift/Controllers/Chat/MUCController.cpp
@@ -110,5 +110,5 @@ MUCController::MUCController (
muc_->onConfigurationFailed.connect(boost::bind(&MUCController::handleConfigurationFailed, this, _1));
muc_->onConfigurationFormReceived.connect(boost::bind(&MUCController::handleConfigurationFormReceived, this, _1));
- highlighter_->setMode(Highlighter::MUCMode);
+ highlighter_->setMode(isImpromptu_ ? Highlighter::ChatMode : Highlighter::MUCMode);
highlighter_->setNick(nick_);
if (timerFactory) {
@@ -495,6 +495,5 @@ void MUCController::preHandleIncomingMessage(boost::shared_ptr<MessageEvent> mes
clearPresenceQueue();
boost::shared_ptr<Message> message = messageEvent->getStanza();
- if (joined_ && messageEvent->getStanza()->getFrom().getResource() != nick_ && messageTargetsMe(message) && !message->getPayload<Delay>() && messageEvent->isReadable()
-) {
+ if (joined_ && messageEvent->getStanza()->getFrom().getResource() != nick_ && messageTargetsMe(message) && !message->getPayload<Delay>() && messageEvent->isReadable()) {
chatWindow_->flash();
}
@@ -502,4 +501,7 @@ void MUCController::preHandleIncomingMessage(boost::shared_ptr<MessageEvent> mes
messageEvent->setTargetsMe(false);
}
+ if (messageEvent->isReadable() && isImpromptu_) {
+ chatWindow_->flash(); /* behave like a regular char*/
+ }
if (joined_) {
std::string nick = message->getFrom().getResource();
@@ -530,5 +532,6 @@ void MUCController::preHandleIncomingMessage(boost::shared_ptr<MessageEvent> mes
void MUCController::postHandleIncomingMessage(boost::shared_ptr<MessageEvent> messageEvent, const HighlightAction& highlight) {
boost::shared_ptr<Message> message = messageEvent->getStanza();
- if (joined_ && messageEvent->getStanza()->getFrom().getResource() != nick_ && messageTargetsMe(message) && !message->getPayload<Delay>()) {
+ if (joined_ && messageEvent->getStanza()->getFrom().getResource() != nick_ && !message->getPayload<Delay>()) {
+ if (messageTargetsMe(message) || isImpromptu_) {
eventController_->handleIncomingEvent(messageEvent);
if (!messageEvent->getConcluded()) {
@@ -537,4 +540,5 @@ void MUCController::postHandleIncomingMessage(boost::shared_ptr<MessageEvent> me
}
}
+}
void MUCController::handleOccupantRoleChanged(const std::string& nick, const MUCOccupant& occupant, const MUCOccupant::Role& oldRole) {