- // replay backlog
- // FIXME do this right
- QHash<Buffer *, QList<Message> > hash;
- Buffer *b;
-
- foreach(QString net, coreBackLog.keys()) {
- //if(net != "MoepNet") continue;
- while(coreBackLog[net].count()) {
- //recvMessage(net, coreBackLog[net].takeFirst());
- Message msg = coreBackLog[net].takeLast();
- if(msg.flags & Message::PrivMsg) {
- // query
- if(msg.flags & Message::Self) b = getBuffer(net, msg.target);
- else b = getBuffer(net, nickFromMask(msg.sender));
- } else {
- b = getBuffer(net, msg.target);
- }
- hash[b].prepend(msg);
- if(hash[b].count() >= 5) {
- ui.bufferWidget->prependMessages(b, hash.take(b));
- }
- }
- }
- foreach(Buffer *buf, hash.keys()) {
- ui.bufferWidget->prependMessages(buf, hash.take(buf));
- }
-
-/*
- foreach(QString key, buffers.keys()) {
- foreach(Buffer *b, buffers[key].values()) {
- QWidget *widget = b->showWidget(this);
- workspace->addWindow(widget);
- widget->show();
- }
+ /* make lookups by id faster */
+ foreach(BufferId id, coreBuffers) {
+ bufferIds[id.uid()] = id; // make lookups by id faster
+ getBuffer(id); // create all buffers, so we see them in the network views
+ emit requestBacklog(id, -1, -1); // TODO: use custom settings for backlog request