diff options
author | Kevin Smith <git@kismith.co.uk> | 2010-10-20 07:58:12 (GMT) |
---|---|---|
committer | Kevin Smith <git@kismith.co.uk> | 2010-10-20 08:04:21 (GMT) |
commit | d46ebaac1cf7161fd0a551c34cf80f441f6d19ab (patch) | |
tree | a47705e770329b386b48b6fb5883965740cf438d /Swift/Controllers/Chat/MUCController.h | |
parent | a49ca97a7b2ad61385d0f6f22ec598a63d889ae7 (diff) | |
download | swift-contrib-d46ebaac1cf7161fd0a551c34cf80f441f6d19ab.zip swift-contrib-d46ebaac1cf7161fd0a551c34cf80f441f6d19ab.tar.bz2 |
Tell MUCController to handle disconnect/reconnect rejoins.
This causes the MUCController to deal with reconnects by requesting
a rejoin. It also prepares for doing time-based context requests.
Although I've traced the code down, and confirmed that
presenceSender->sendPresence(joinPresence);
is being called, the stanza is never sent. This needs further
investigation, as currently it prevents the rejoins working.
Resolves: #625
Diffstat (limited to 'Swift/Controllers/Chat/MUCController.h')
-rw-r--r-- | Swift/Controllers/Chat/MUCController.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/Swift/Controllers/Chat/MUCController.h b/Swift/Controllers/Chat/MUCController.h index 3f226ef..6924b48 100644 --- a/Swift/Controllers/Chat/MUCController.h +++ b/Swift/Controllers/Chat/MUCController.h @@ -44,7 +44,7 @@ namespace Swift { MUCController(const JID& self, const JID &muc, const String &nick, StanzaChannel* stanzaChannel, PresenceSender* presenceSender, IQRouter* iqRouter, ChatWindowFactory* chatWindowFactory, PresenceOracle* presenceOracle, AvatarManager* avatarManager, UIEventStream* events, bool useDelayForLatency, TimerFactory* timerFactory, EventController* eventController); ~MUCController(); boost::signal<void ()> onUserLeft; - virtual void setEnabled(bool enabled); + virtual void setOnline(bool online); void rejoin(); static void appendToJoinParts(std::vector<NickJoinPart>& joinParts, const NickJoinPart& newEvent); static String generateJoinPartString(std::vector<NickJoinPart> joinParts); @@ -76,6 +76,7 @@ namespace Swift { void updateJoinParts(); bool shouldUpdateJoinParts(); void dayTicked() {lastWasPresence_ = false;} + void processUserPart(); private: MUC* muc_; UIEventStream* events_; @@ -85,6 +86,7 @@ namespace Swift { bool parting_; bool joined_; bool lastWasPresence_; + bool shouldJoinOnReconnect_; boost::bsignals::scoped_connection avatarChangedConnection_; boost::shared_ptr<Timer> loginCheckTimer_; std::set<String> currentOccupants_; |