| Summary: | /cycle command kills every channel tab instead of cycling current channel | ||
|---|---|---|---|
| Product: | [Applications] konversation | Reporter: | Brian Pankey <brianpankey> |
| Component: | general | Assignee: | Ismail Donmez <ismail> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | ||
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Compiled Sources | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
Brian Pankey
2005-04-04 05:27:14 UTC
There is a reason for /cycle not being in Changelog ;) CVS commit by cartman:
Make /cycle work correctly. Somehow someone managed to find a bug in this
undocumented feature :-)
BUG:103181
M +9 -4 channel.cpp 1.313
M +2 -3 channel.h 1.113
M +0 -8 outputfilter.cpp 1.150
M +1 -2 outputfilter.h 1.65
--- kdeextragear-2/konversation/konversation/channel.cpp #1.312:1.313
@@ -331,5 +331,4 @@ void Channel::setServer(Server *server)
setIdentity(server->getIdentity());
- connect(server->getOutputFilter(),SIGNAL(cycleChannel()),this,SLOT(cycleChannel()));
}
@@ -752,8 +751,14 @@ void Channel::channelTextEntered()
channelInput->clear();
- if(line.lower()=="/clear")
+ if(line.lower().stripWhiteSpace() == "/clear") {
textView->clear();
- else
- if(!line.isEmpty()) sendChannelText(line);
+ }
+ else if(line.lower().stripWhiteSpace() == "/cycle") {
+ cycleChannel();
+ }
+ else {
+ if(!line.isEmpty())
+ sendChannelText(line);
+ }
}
--- kdeextragear-2/konversation/konversation/channel.h #1.112:1.113
@@ -216,7 +216,4 @@ class Channel : public ChatWindow
void refreshModeButtons();
- // Connected to OutputFilter::cycleChannel
- void cycleChannel();
-
///Request a delayed nicklist sorting
void requestNickListSort();
@@ -235,4 +232,6 @@ class Channel : public ChatWindow
virtual void childAdjustFocus();
+ void cycleChannel();
+
int nicks;
int ops;
--- kdeextragear-2/konversation/konversation/outputfilter.cpp #1.149:1.150
@@ -189,6 +189,4 @@ namespace Konversation {
else if(command == "charset") parseCharset(parameter);
- else if(command == "cycle") parseCycle();
-
// Forward unknown commands to server
else {
@@ -1276,10 +1274,4 @@ namespace Konversation {
}
- void OutputFilter::parseCycle()
- {
- emit cycleChannel();
- }
-
-
}
--- kdeextragear-2/konversation/konversation/outputfilter.h #1.64:1.65
@@ -81,5 +81,4 @@ namespace Konversation
void reconnectServer();
void connectToServer(const QString& server, const QString& port, const QString& password);
- void cycleChannel();
public slots:
commit 22a85118d31ef23e8e6cc7ace3a773752cb6690b Author: İsmail Dönmez <ismail@kde.org> Date: Fri Apr 8 09:54:19 2005 +0000 Make /cycle work correctly. Somehow someone managed to find a bug in this undocumented feature :-) BUG:103181 svn path=/trunk/kdeextragear-2/konversation/; revision=404000 diff --git a/konversation/channel.cpp b/konversation/channel.cpp index 19dac61..865daeb 100644 --- a/konversation/channel.cpp +++ b/konversation/channel.cpp @@ -330,7 +330,6 @@ void Channel::setServer(Server *server) { refreshModeButtons(); setIdentity(server->getIdentity()); - connect(server->getOutputFilter(),SIGNAL(cycleChannel()),this,SLOT(cycleChannel())); } Channel::~Channel() @@ -751,10 +750,16 @@ void Channel::channelTextEntered() QString line = channelInput->text(); channelInput->clear(); - if(line.lower()=="/clear") + if(line.lower().stripWhiteSpace() == "/clear") { textView->clear(); - else - if(!line.isEmpty()) sendChannelText(line); + } + else if(line.lower().stripWhiteSpace() == "/cycle") { + cycleChannel(); + } + else { + if(!line.isEmpty()) + sendChannelText(line); + } } void Channel::sendChannelText(const QString& sendLine) diff --git a/konversation/channel.h b/konversation/channel.h index 26726f8..188516f 100644 --- a/konversation/channel.h +++ b/konversation/channel.h @@ -215,9 +215,6 @@ class Channel : public ChatWindow */ void refreshModeButtons(); - // Connected to OutputFilter::cycleChannel - void cycleChannel(); - ///Request a delayed nicklist sorting void requestNickListSort(); @@ -233,6 +230,8 @@ class Channel : public ChatWindow void fastAddNickname(ChannelNickPtr channelnick); /** Called from ChatWindow adjustFocus */ virtual void childAdjustFocus(); + + void cycleChannel(); int nicks; int ops; diff --git a/konversation/outputfilter.cpp b/konversation/outputfilter.cpp index c586c42..02fab77 100644 --- a/konversation/outputfilter.cpp +++ b/konversation/outputfilter.cpp @@ -188,8 +188,6 @@ namespace Konversation { else if(command == "charset") parseCharset(parameter); - else if(command == "cycle") parseCycle(); - // Forward unknown commands to server else { result.toServer = inputLine.mid(1); @@ -1275,12 +1273,6 @@ namespace Konversation { m_server->getIdentity()->setCodecName(shortName); } - void OutputFilter::parseCycle() - { - emit cycleChannel(); - } - - } #include "outputfilter.moc" diff --git a/konversation/outputfilter.h b/konversation/outputfilter.h index c391b52..ed55568 100644 --- a/konversation/outputfilter.h +++ b/konversation/outputfilter.h @@ -80,8 +80,7 @@ namespace Konversation void multiServerCommand(const QString& command, const QString& parameter); void reconnectServer(); void connectToServer(const QString& server, const QString& port, const QString& password); - void cycleChannel(); - + public slots: void setCommandChar(); OutputFilterResult execBan(const QString& mask,const QString& channels); |