diff --git a/chatdialog.h b/chatdialog.h
index a825657..9a64ad0 100644
--- a/chatdialog.h
+++ b/chatdialog.h
@@ -28,6 +28,7 @@
   void appendMessage(const SyncDemo::ChatMessage msg);
   void processTreeUpdateWrapper(const std::vector<Sync::MissingDataInfo>, Sync::SyncAppSocket *);
   void processDataWrapper(std::string, const char *buf, size_t len);
+  void processDataNoShowWrapper(std::string, const char *buf, size_t len);
   void processRemoveWrapper(std::string);
 
 protected:
@@ -36,7 +37,7 @@
 
 public slots:
   void processTreeUpdate(const std::vector<Sync::MissingDataInfo>);
-  void processData(QString name, const char *buf, size_t len);
+  void processData(QString name, const char *buf, size_t len, bool show);
   void processRemove(QString);
 
 private:
@@ -67,7 +68,7 @@
   void messageClicked();
 
 signals:
-  void dataReceived(QString name, const char *buf, size_t len);
+  void dataReceived(QString name, const char *buf, size_t len, bool show);
   void treeUpdated(const std::vector<Sync::MissingDataInfo>);
   void removeReceived(QString prefix);
 
