/* * Copyright (c) 2010-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #pragma once #include #include #include #include #include #include namespace Swift { class SWIFTEN_API ChatStateTracker { public: ChatStateTracker(); void handleMessageReceived(std::shared_ptr message); void handlePresenceChange(std::shared_ptr newPresence); boost::signals2::signal onChatStateChange; private: void changeState(ChatState::ChatStateType state); ChatState::ChatStateType currentState_; }; }