/***************************************************************************
- * Copyright (C) 2005-2019 by the Quassel Project *
+ * Copyright (C) 2005-2020 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
#include "backlogrequester.h"
#include "backlogsettings.h"
#include "client.h"
+#include "util.h"
ClientBacklogManager::ClientBacklogManager(QObject* parent)
: BacklogManager(parent)
BacklogSettings settings;
switch (settings.requesterType()) {
+ case BacklogRequester::AsNeeded:
+ _requester = new AsNeededBacklogRequester(this);
+ break;
case BacklogRequester::GlobalUnread:
_requester = new GlobalUnreadBacklogRequester(this);
break;
BufferIdList ClientBacklogManager::filterNewBufferIds(const BufferIdList& bufferIds)
{
BufferIdList newBuffers;
- QSet<BufferId> availableBuffers = Client::networkModel()->allBufferIds().toSet();
+ QSet<BufferId> availableBuffers = toQSet(Client::networkModel()->allBufferIds());
foreach (BufferId bufferId, bufferIds) {
if (_buffersRequested.contains(bufferId) || !availableBuffers.contains(bufferId))
continue;
break;
case BacklogRequester::PerBufferUnread:
case BacklogRequester::PerBufferFixed:
+ case BacklogRequester::AsNeeded:
default: {
BufferIdList buffers = filterNewBufferIds(bufferIds);
if (!buffers.isEmpty())