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.
QList<ClientBufferViewConfig *> 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