From: ramz Date: Sun, 30 Mar 2014 11:07:25 +0000 (+1100) Subject: Retains Channel UnHiddens Status after client Restart. X-Git-Tag: 0.11.0~15 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=f5071c58ed73bdacddfe270dfede25b70eb0d363;ds=sidebyside Retains Channel UnHiddens Status after client Restart. Steps to Reproduce: 1. Hide channel temporarily 2. Part channel 3. Join channel (it will now be visible again, at the bottom of that network's buffer list) Optional: talk in the channel, get other people to talk, etc but the buffer must not be blue (new message(s)) when you proceed next 4. Quit the client 5. When you'll restart it, the channel will be temporarily hidden again Root Cause: After step 3, we are not saving the bufferviewconfig synchronizable object right. Fix: Save the bufferviewconfig object correctly. Fixes #1218. --- diff --git a/src/client/clientuserinputhandler.cpp b/src/client/clientuserinputhandler.cpp index 2a323edd..2f890810 100644 --- a/src/client/clientuserinputhandler.cpp +++ b/src/client/clientuserinputhandler.cpp @@ -129,7 +129,7 @@ void ClientUserInputHandler::switchBuffer(const NetworkId &networkId, const QStr QList bufferViewConfigList = clientBufferViewManager->clientBufferViewConfigs(); foreach(ClientBufferViewConfig *bufferViewConfig, bufferViewConfigList) { if (bufferViewConfig->temporarilyRemovedBuffers().contains(newBufId)) { - bufferViewConfig->addBuffer(newBufId, bufferViewConfig->bufferList().length()); + bufferViewConfig->requestAddBuffer(newBufId, bufferViewConfig->bufferList().length()); //if (bufferViewConfig->sortAlphabetically()) { // TODO we need to trigger a sort here, but can't reach the model required // to get a bufferviewfilter, as the bufferviewmanager only managers configs