public virtual void Sync()
{
Trace.Call();
GLib.Idle.Add(delegate {
TabImage.SetFromStock(Gtk.Stock.Refresh, Gtk.IconSize.Menu);
OnStatusChanged(EventArgs.Empty);
return false;
});
// REMOTING CALL
SyncedName = _ChatModel.Name;
if (!Frontend.IsLocalEngine && Frontend.UseLowBandwidthMode) {
// FIXME: set TabImage back to normal
return;
}
// REMOTING CALL
SyncedLastSeenHighlight = _ChatModel.LastSeenHighlight;
if (Frontend.EngineProtocolVersion >= new Version(0, 12)) {
// REMOTING CALL
SyncedLastSeenMessage = _ChatModel.LastSeenMessage;
}
DateTime start, stop;
start = DateTime.UtcNow;
// REMOTING CALL
SyncedMessages = _ChatModel.Messages;
stop = DateTime.UtcNow;
#if LOG4NET
_Logger.Debug(
String.Format(
"Sync(): retrieving ChatModel.Messages took: {0:0.00} ms",
(stop - start).TotalMilliseconds
)
);
#endif
}