projects
/
quassel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
making away state and user modes persistent
[quassel.git]
/
src
/
core
/
corenetwork.cpp
diff --git
a/src/core/corenetwork.cpp
b/src/core/corenetwork.cpp
index
a40b546
..
314f3d2
100644
(file)
--- a/
src/core/corenetwork.cpp
+++ b/
src/core/corenetwork.cpp
@@
-181,6
+181,16
@@
void CoreNetwork::disconnectFromIrc(bool requested, const QString &reason) {
_quitRequested = requested; // see socketDisconnected();
_autoReconnectTimer.stop();
_autoReconnectCount = 0; // prohibiting auto reconnect
_quitRequested = requested; // see socketDisconnected();
_autoReconnectTimer.stop();
_autoReconnectCount = 0; // prohibiting auto reconnect
+
+ IrcUser *me_ = me();
+ if(me_) {
+ QString awayMsg;
+ if(me_->isAway())
+ awayMsg = me_->awayMessage();
+ Core::setAwayMessage(userId(), networkId(), awayMsg);
+ Core::setUserModes(userId(), networkId(), me_->userModes());
+ }
+
displayMsg(Message::Server, BufferInfo::StatusBuffer, "", tr("Disconnecting."));
if(socket.state() == QAbstractSocket::UnconnectedState) {
socketDisconnected();
displayMsg(Message::Server, BufferInfo::StatusBuffer, "", tr("Disconnecting."));
if(socket.state() == QAbstractSocket::UnconnectedState) {
socketDisconnected();