[Konversation-devel] [Bug 113327] Channel modes not reset when disconnected
Eli MacKenzie
argonel at sympatico.ca
Wed Jan 11 05:49:30 CET 2006
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.kde.org/show_bug.cgi?id=113327
argonel sympatico ca changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |FIXED
------- Additional Comments From argonel sympatico ca 2006-01-11 05:49 -------
SVN commit 496715 by argonel:
clear modes on rejoin
BUG:113327
M +30 -0 channel.cpp
M +1 -0 channel.h
M +3 -0 inputfilter.cpp
--- trunk/extragear/network/konversation/src/channel.cpp #496714:496715
@ -1671,6 +1671,36 @
updateModeWidgets(mode,plus,parameter);
}
+void Channel::clearModeList()
+{
+ m_modeList.clear();
+ modeT->setOn(0);
+ modeT->setDown(0);
+
+ modeN->setOn(0);
+ modeN->setDown(0);
+
+ modeS->setOn(0);
+ modeS->setDown(0);
+
+ modeI->setOn(0);
+ modeI->setDown(0);
+
+ modeP->setOn(0);
+ modeP->setDown(0);
+
+ modeM->setOn(0);
+ modeM->setDown(0);
+
+ modeK->setOn(0);
+ modeK->setDown(0);
+
+ modeL->setOn(0);
+ modeL->setDown(0);
+ limit->clear();
+ emit modesChanged();
+}
+
void Channel::updateModeWidgets(char mode, bool plus, const QString ¶meter)
{
ModeButton* widget=0;
--- trunk/extragear/network/konversation/src/channel.h #496714:496715
@ -118,6 +118,7 @
void setTopic(const QString& nickname,const QString& topic);
void setTopicAuthor(const QString& author);
+ void clearModeList();
/** get the list of modes that this channel has - e.g. {+l,+s,-m}
* return All the modes that this channel has
*/
--- trunk/extragear/network/konversation/src/inputfilter.cpp #496714:496715
@ -467,6 +467,7 @
*/
// Join the channel
server->joinChannel(channelName, sourceHostmask);
+ server->getChannelByName(channelName)->clearModeList();
// Request modes for the channel
server->queue("MODE "+channelName);
// Upon JOIN we're going to receive some NAMES input from the server which
@ -694,6 +695,8 @
// This is the string the user will see
QString modesAre(QString::null);
QString message = i18n("Channel modes: ") + modeString;
+ kdDebug() << "channel: " << parameterList[1] << endl;
+ //server->getChannelByName(parameterList[1])->clearModeList();
for(unsigned int index=0;index<modeString.length();index++)
{
More information about the Konversation-devel
mailing list