diff options
Diffstat (limited to 'Swift/Controllers/Chat/ChatControllerBase.h')
| -rw-r--r-- | Swift/Controllers/Chat/ChatControllerBase.h | 13 | 
1 files changed, 8 insertions, 5 deletions
| diff --git a/Swift/Controllers/Chat/ChatControllerBase.h b/Swift/Controllers/Chat/ChatControllerBase.h index 9573b1b..3364ccb 100644 --- a/Swift/Controllers/Chat/ChatControllerBase.h +++ b/Swift/Controllers/Chat/ChatControllerBase.h @@ -4,8 +4,7 @@   * See Documentation/Licenses/GPLv3.txt for more information.   */ -#ifndef SWIFTEN_ChatControllerBase_H -#define SWIFTEN_ChatControllerBase_H +#pragma once  #include <map>  #include <vector> @@ -26,6 +25,7 @@  #include "Swiften/Elements/ErrorPayload.h"  #include "Swiften/Presence/PresenceOracle.h"  #include "Swiften/Queries/IQRouter.h" +#include "Swiften/Base/IDGenerator.h"  namespace Swift {  	class IQRouter; @@ -47,6 +47,8 @@ namespace Swift {  			virtual void setOnline(bool online);  			virtual void setEnabled(bool enabled);  			virtual void setToJID(const JID& jid) {toJID_ = jid;}; +			/** Used for determining when something is recent.*/ +			boost::signal<void (const std::string& /*activity*/)> onActivity;  		protected:  			ChatControllerBase(const JID& self, StanzaChannel* stanzaChannel, IQRouter* iqRouter, ChatWindowFactory* chatWindowFactory, const JID &toJID, PresenceOracle* presenceOracle, AvatarManager* avatarManager, bool useDelayForLatency, UIEventStream* eventStream, EventController* eventController, TimerFactory* timerFactory); @@ -64,8 +66,10 @@ namespace Swift {  			virtual void dayTicked() {};  		private: +			IDGenerator idGenerator_; +			std::string lastSentMessageStanzaID_;  			void createDayChangeTimer(); -			void handleSendMessageRequest(const std::string &body); +			void handleSendMessageRequest(const std::string &body, bool isCorrectionMessage);  			void handleAllMessagesRead();  			void handleSecurityLabelsCatalogResponse(boost::shared_ptr<SecurityLabelsCatalog>, ErrorPayload::ref error);  			std::string getErrorMessage(boost::shared_ptr<ErrorPayload>); @@ -80,6 +84,7 @@ namespace Swift {  			ChatWindow* chatWindow_;  			JID toJID_;  			bool labelsEnabled_; +			std::map<JID, std::string> lastMessagesUIID_;  			PresenceOracle* presenceOracle_;  			AvatarManager* avatarManager_;  			bool useDelayForLatency_; @@ -88,5 +93,3 @@ namespace Swift {  			TimerFactory* timerFactory_;  	};  } - -#endif | 
 Swift
 Swift