X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fsignalproxy.cpp;h=76fccb73eb7013865015f9a5b0d5d3b6e2f2468a;hp=9806acfcea9c029e171c00db445fdc60b5f1c2e6;hb=fe313ca8ab4c082c63b27f5e1c23541975c7f47f;hpb=d82da43e048433eee082653cd98d53691186b008 diff --git a/src/common/signalproxy.cpp b/src/common/signalproxy.cpp index 9806acfc..76fccb73 100644 --- a/src/common/signalproxy.cpp +++ b/src/common/signalproxy.cpp @@ -606,23 +606,27 @@ void SignalProxy::synchronize(SyncableObject *obj) { if(proxyMode() == Server) { connect(obj, SIGNAL(objectRenamed(QString, QString)), this, SLOT(objectRenamed(QString, QString))); - setInitialized(obj); + obj->setInitialized(); + emit objectInitialized(obj); } else { - requestInit(obj); + if(obj->isInitialized()) + emit objectInitialized(obj); + else + requestInit(obj); } } -void SignalProxy::setInitialized(SyncableObject *obj) { - obj->setInitialized(); - emit objectInitialized(obj); -} +// void SignalProxy::setInitialized(SyncableObject *obj) { +// obj->setInitialized(); +// emit objectInitialized(obj); +// } -bool SignalProxy::isInitialized(SyncableObject *obj) const { - return obj->isInitialized(); -} +// bool SignalProxy::isInitialized(SyncableObject *obj) const { +// return obj->isInitialized(); +// } void SignalProxy::requestInit(SyncableObject *obj) { - if(proxyMode() == Server || isInitialized(obj)) + if(proxyMode() == Server || obj->isInitialized()) return; QVariantList params; @@ -1012,10 +1016,11 @@ QVariantMap SignalProxy::initData(SyncableObject *obj) const { } void SignalProxy::setInitData(SyncableObject *obj, const QVariantMap &properties) { - if(isInitialized(obj)) + if(obj->isInitialized()) return; obj->fromVariantMap(properties); - setInitialized(obj); + obj->setInitialized(); + emit objectInitialized(obj); invokeSlot(obj, updatedRemotelyId(obj)); }