diff --git a/retroshare-gui/src/gui/gxschannels/CreateGxsChannelMsg.cpp b/retroshare-gui/src/gui/gxschannels/CreateGxsChannelMsg.cpp
index 56c910237..ef1a6271e 100644
--- a/retroshare-gui/src/gui/gxschannels/CreateGxsChannelMsg.cpp
+++ b/retroshare-gui/src/gui/gxschannels/CreateGxsChannelMsg.cpp
@@ -72,7 +72,8 @@ CreateGxsChannelMsg::CreateGxsChannelMsg(const RsGxsGroupId &cId, RsGxsMessageId
 
 	connect(addFileButton, SIGNAL(clicked() ), this , SLOT(addExtraFile()));
 	connect(addfilepushButton, SIGNAL(clicked() ), this , SLOT(addExtraFile()));
-	
+    connect(subjectEdit,SIGNAL(textChanged(const QString&)),this,SLOT(updatePreviewText(const QString&)));
+
 	connect(addThumbnailButton, SIGNAL(clicked() ), this , SLOT(addThumbnail()));
 	connect(thumbNailCb, SIGNAL(toggled(bool)), this, SLOT(allowAutoMediaThumbNail(bool)));
 	connect(stackedWidget, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(contextMenu(QPoint)));
@@ -605,6 +606,11 @@ void CreateGxsChannelMsg::saveChannelInfo(const RsGroupMetaData &meta)
 	subjectEdit->setFocus();
 }
 
+void CreateGxsChannelMsg::updatePreviewText(const QString& s)
+{
+	preview_W->setText(s);
+}
+
 void CreateGxsChannelMsg::sendMsg()
 {
 #ifdef DEBUG_CREATE_GXS_MSG
@@ -717,7 +723,7 @@ void CreateGxsChannelMsg::sendMessage(const std::string &subject, const std::str
 
 void CreateGxsChannelMsg::addThumbnail()
 {
-	QPixmap img = misc::getOpenThumbnailedPicture(this, tr("Load thumbnail picture"), 156, 107);
+	QPixmap img = misc::getOpenThumbnailedPicture(this, tr("Load thumbnail picture"), 107,156);	// these absolute sizes are terrible
 
 	if (img.isNull())
 		return;
@@ -725,7 +731,7 @@ void CreateGxsChannelMsg::addThumbnail()
 	picture = img;
 
 	// to show the selected
-	thumbnail_label->setPixmap(picture);
+	preview_W->setPixmap(picture);
 }
 
 void CreateGxsChannelMsg::loadOriginalChannelPostInfo()
@@ -769,7 +775,7 @@ void CreateGxsChannelMsg::loadOriginalChannelPostInfo()
 			if(post.mThumbnail.mData != NULL)
 			{
 				GxsIdDetails::loadPixmapFromData(post.mThumbnail.mData,post.mThumbnail.mSize,picture,GxsIdDetails::ORIGINAL);
-				thumbnail_label->setPixmap(picture);
+				preview_W->setPixmap(picture);
 			}
 
 
diff --git a/retroshare-gui/src/gui/gxschannels/CreateGxsChannelMsg.h b/retroshare-gui/src/gui/gxschannels/CreateGxsChannelMsg.h
index 7c1058695..44d867ba2 100644
--- a/retroshare-gui/src/gui/gxschannels/CreateGxsChannelMsg.h
+++ b/retroshare-gui/src/gui/gxschannels/CreateGxsChannelMsg.h
@@ -58,6 +58,7 @@ private slots:
 	void addExtraFile();
 	void checkAttachmentReady();
 	void deleteAttachment();
+	void updatePreviewText(const QString &);
 
 	void cancelMsg();
 	void sendMsg();
diff --git a/retroshare-gui/src/gui/gxschannels/CreateGxsChannelMsg.ui b/retroshare-gui/src/gui/gxschannels/CreateGxsChannelMsg.ui
index 703f43bb1..d8baaba24 100644
--- a/retroshare-gui/src/gui/gxschannels/CreateGxsChannelMsg.ui
+++ b/retroshare-gui/src/gui/gxschannels/CreateGxsChannelMsg.ui
@@ -52,52 +52,39 @@
       QFrame::Raised
      
      
-      - 
-       
-        
-         Channel Post
-        
-        
-         
-          :/icons/png/comment.png:/icons/png/comment.png
-        
-        
-         
-          24
-          24
-         
-        
-       
-      
 
-      - 
-       
-        
-         Attachments
-        
-        
-         
-          :/icons/png/attachements.png:/icons/png/attachements.png
-        
-        
-         
-          24
-          24
-         
-        
-       
-      
 
-      - 
-       
-        
-         Qt::Horizontal
-        
-        
-         
-          486
-          20
-         
-        
-       
+      
- 
+       
+        
- 
+         
+          
+           Generate mass data
+          
+         
+        
 
+        - 
+         
+          
+           1
+          
+          
+           999
+          
+         
+        
 
+        - 
+         
+          
+           
+          
+          
+           Qt::Horizontal
+          
+          
+           QDialogButtonBox::Cancel|QDialogButtonBox::Ok
+          
+         
+        
 
+       
        
       - 
        
@@ -114,128 +101,8 @@
          0
         
         
-         
-          
-           0
-          
-          
-           0
-          
-          
-           0
-          
-          
-           0
-          
-          
- 
-           
-            
- 
-             
-              
-               
-                156
-                107
-               
-              
-              
-               
-                0
-                0
-               
-              
-              
-               :/images/thumb-default-video.png
-              
-             
-            
 
-            - 
-             
-              
-               <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
-<html><head><meta name="qrichtext" content="1" /><style type="text/css">
-p, li { white-space: pre-wrap; }
-</style></head><body style=" font-family:'Ubuntu'; font-size:11pt; font-weight:400; font-style:normal;">
-<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MS Shell Dlg 2'; font-size:10pt; font-weight:600;">Attachments:</span></p>
-<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><img src=":/images/feedback_arrow.png" /><span style=" font-family:'MS Shell Dlg 2'; font-size:8pt;"> Use Drag and Drop / Add Files button, to Hash new files.</span></p>
-<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><img src=":/images/feedback_arrow.png" /><span style=" font-family:'MS Shell Dlg 2'; font-size:8pt;"> Copy/Paste RetroShare links from your shares</span></p></body></html>
-              
-             
-            
 
-            - 
-             
-              
-               Add Channel Thumbnail
-              
-              
-               
-                :/icons/png/add-image.png:/icons/png/add-image.png
-              
-              
-               
-                24
-                24
-               
-              
-             
-            
 
-            - 
-             
-              
-               Add File to Attach
-              
-              
-               
-                :/icons/png/add-file.png:/icons/png/add-file.png
-              
-              
-               
-                24
-                24
-               
-              
-             
-            
 
-            - 
-             
-              
-               Qt::Horizontal
-              
-              
-               QSizePolicy::Expanding
-              
-              
-               
-                40
-                20
-               
-              
-             
-            
 
-           
-           
-          - 
-           
-            
-             Message
-            
-            
-             
-              0
-             
-             
- 
-              
-               
-                Title
-               
-              
-             
 
-             - 
-              
-             
 
-            
-           
-           
-          - 
+         
+          
- 
            
             
- 
              
@@ -268,6 +135,119 @@ p, li { white-space: pre-wrap; }
             
 
            
            
+          - 
+           
+            
- 
+             
+            
 
+            - 
+             
+              
- 
+               
+                
+                 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html><head><meta name="qrichtext" content="1" /><style type="text/css">
+p, li { white-space: pre-wrap; }
+</style></head><body style=" font-family:'Ubuntu'; font-size:11pt; font-weight:400; font-style:normal;">
+<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'MS Shell Dlg 2'; font-size:10pt; font-weight:600;">Attachments:</span></p>
+<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><img src=":/images/feedback_arrow.png" /><span style=" font-family:'MS Shell Dlg 2'; font-size:8pt;"> Use Drag and Drop / Add Files button, to Hash new files.</span></p>
+<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><img src=":/images/feedback_arrow.png" /><span style=" font-family:'MS Shell Dlg 2'; font-size:8pt;"> Copy/Paste RetroShare links from your shares</span></p></body></html>
+                
+               
+              
 
+              - 
+               
+                
- 
+                 
+                  
+                   Add Channel Thumbnail
+                  
+                  
+                   
+                    :/icons/png/add-image.png:/icons/png/add-image.png
+                  
+                  
+                   
+                    24
+                    24
+                   
+                  
+                 
+                
 
+                - 
+                 
+                  
+                   Add File to Attach
+                  
+                  
+                   
+                    :/icons/png/add-file.png:/icons/png/add-file.png
+                  
+                  
+                   
+                    24
+                    24
+                   
+                  
+                 
+                
 
+                - 
+                 
+                  
+                   Qt::Horizontal
+                  
+                  
+                   QSizePolicy::Expanding
+                  
+                  
+                   
+                    40
+                    20
+                   
+                  
+                 
+                
 
+               
+               
+              - 
+               
+                
+                 Qt::Vertical
+                
+                
+                 
+                  20
+                  40
+                 
+                
+               
+              
 
+             
+             
+           
+           
+          - 
+           
+            
+             Message
+            
+            
+             
+              0
+             
+             
- 
+              
+               
+                Title
+               
+              
+             
 
+             - 
+              
+             
 
+            
+           
+           
          
          
         
@@ -329,7 +309,7 @@ p, li { white-space: pre-wrap; }
               
                0
                0
-               632
+               635
                24
               
              
@@ -403,39 +383,65 @@ p, li { white-space: pre-wrap; }
         
        
        
-      - 
-       
-        
- 
-         
-          
-           Generate mass data
-          
-         
-        
 
-        - 
-         
-          
-           1
-          
-          
-           999
-          
-         
-        
 
-        - 
-         
-          
-           
-          
-          
-           Qt::Horizontal
-          
-          
-           QDialogButtonBox::Cancel|QDialogButtonBox::Ok
-          
-         
-        
 
-       
+      - 
+       
+        
+         Qt::Horizontal
+        
+        
+         
+          486
+          20
+         
+        
+       
+      
 
+      - 
+       
+        
+         Attachments
+        
+        
+         
+          :/icons/png/attachements.png:/icons/png/attachements.png
+        
+        
+         
+          24
+          24
+         
+        
+       
+      
 
+      - 
+       
+        
+         Channel Post
+        
+        
+         
+          :/icons/png/comment.png:/icons/png/comment.png
+        
+        
+         
+          24
+          24
+         
+        
+       
+      
 
+      - 
+       
+        
+         Qt::Vertical
+        
+        
+         
+          20
+          40
+         
+        
+       
       
 
        
     
@@ -455,10 +461,16 @@ p, li { white-space: pre-wrap; }
    
    1
   
+  
+   ChannelPostThumbnailView
+   QWidget
+   gui/gxschannels/GxsChannelPostThumbnail.h
+   1
+  
  
  
-  
   
+  
  
  
 
diff --git a/retroshare-gui/src/gui/gxschannels/GxsChannelPostThumbnail.h b/retroshare-gui/src/gui/gxschannels/GxsChannelPostThumbnail.h
new file mode 100644
index 000000000..fd5c82d6b
--- /dev/null
+++ b/retroshare-gui/src/gui/gxschannels/GxsChannelPostThumbnail.h
@@ -0,0 +1,123 @@
+/*******************************************************************************
+ * retroshare-gui/src/gui/gxschannels/GxsChannelPostThumbnail.h                *
+ *                                                                             *
+ * Copyright 2020 by Retroshare Team             *
+ *                                                                             *
+ * This program is free software: you can redistribute it and/or modify        *
+ * it under the terms of the GNU Affero General Public License as              *
+ * published by the Free Software Foundation, either version 3 of the          *
+ * License, or (at your option) any later version.                             *
+ *                                                                             *
+ * This program is distributed in the hope that it will be useful,             *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of              *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                *
+ * GNU Affero General Public License for more details.                         *
+ *                                                                             *
+ * You should have received a copy of the GNU Affero General Public License    *
+ * along with this program. If not, see .       *
+ *                                                                             *
+ *******************************************************************************/
+
+#pragma once
+
+#include 
+
+#include 
+#include 
+#include 
+
+#include "retroshare/rsgxschannels.h"
+#include "retroshare/rsidentity.h"
+
+#include "gui/gxs/GxsIdDetails.h"
+#include "gui/common/FilesDefs.h"
+
+// Class to paint the thumbnails with title
+
+class ChannelPostThumbnailView: public QWidget
+{
+public:
+	// This variable determines the zoom factor on the text below thumbnails. 2.0 is mostly correct for all screen.
+	static constexpr float THUMBNAIL_OVERSAMPLE_FACTOR = 2.0;
+
+	// Size of thumbnails as a function of the height of the font. An aspect ratio of 3/4 is good.
+
+	static const int THUMBNAIL_W  = 4;
+	static const int THUMBNAIL_H  = 6;
+
+    static constexpr char *CHAN_DEFAULT_IMAGE = ":images/thumb-default-video.png";
+
+    virtual ~ChannelPostThumbnailView()
+    {
+     	delete lb;
+     	delete lt;
+    }
+
+    ChannelPostThumbnailView(QWidget *parent=NULL): QWidget(parent)
+    {
+        init(FilesDefs::getPixmapFromQtResourcePath(CHAN_DEFAULT_IMAGE), QString("New post"),false);
+    }
+
+    ChannelPostThumbnailView(const RsGxsChannelPost& post,QWidget *parent=NULL)
+        : QWidget(parent)
+    {
+        // now fill the data
+
+		QPixmap thumbnail;
+
+        if(post.mThumbnail.mSize > 0)
+			GxsIdDetails::loadPixmapFromData(post.mThumbnail.mData, post.mThumbnail.mSize, thumbnail,GxsIdDetails::ORIGINAL);
+        else if(post.mMeta.mPublishTs > 0)	// this is for testing that the post is not an empty post (happens at the end of the last row)
+			thumbnail = FilesDefs::getPixmapFromQtResourcePath(CHAN_DEFAULT_IMAGE);
+
+        init(thumbnail, QString::fromUtf8(post.mMeta.mMsgName.c_str()), IS_MSG_UNREAD(post.mMeta.mMsgStatus) || IS_MSG_NEW(post.mMeta.mMsgStatus) );
+
+    }
+
+	void init(const QPixmap& thumbnail,const QString& msg,bool is_msg_new)
+    {
+		QVBoxLayout *layout = new QVBoxLayout(this);
+
+        lb = new QLabel(this);
+        lb->setScaledContents(true);
+        layout->addWidget(lb);
+
+        lt = new QLabel(this);
+        layout->addWidget(lt);
+
+		setLayout(layout);
+
+		setSizePolicy(QSizePolicy::Maximum,QSizePolicy::Maximum);
+
+		QFontMetricsF fm(font());
+		int W = THUMBNAIL_OVERSAMPLE_FACTOR * THUMBNAIL_W * fm.height() ;
+		int H = THUMBNAIL_OVERSAMPLE_FACTOR * THUMBNAIL_H * fm.height() ;
+
+        lb->setFixedSize(W,H);
+		lb->setPixmap(thumbnail);
+
+        lt->setText(msg);
+
+        QFont font = lt->font();
+
+		if(is_msg_new)
+        {
+            font.setBold(true);
+            lt->setFont(font);
+        }
+
+        lt->setMaximumWidth(W);
+        lt->setWordWrap(true);
+
+        adjustSize();
+        update();
+    }
+
+    void setPixmap(const QPixmap& p) { lb->setPixmap(p); }
+    void setText(const QString& s) { lt->setText(s); }
+
+private:
+    QLabel *lb;
+    QLabel *lt;
+};
+
diff --git a/retroshare-gui/src/gui/gxschannels/GxsChannelPostsWidgetWithModel.cpp b/retroshare-gui/src/gui/gxschannels/GxsChannelPostsWidgetWithModel.cpp
index 477c4f850..2d64bf8c8 100644
--- a/retroshare-gui/src/gui/gxschannels/GxsChannelPostsWidgetWithModel.cpp
+++ b/retroshare-gui/src/gui/gxschannels/GxsChannelPostsWidgetWithModel.cpp
@@ -44,11 +44,10 @@
 #include "GxsChannelPostsModel.h"
 #include "GxsChannelPostFilesModel.h"
 #include "GxsChannelFilesStatusWidget.h"
+#include "GxsChannelPostThumbnail.h"
 
 #include 
 
-#define CHAN_DEFAULT_IMAGE ":images/thumb-default-video.png"
-
 #define ROLE_PUBLISH FEED_TREEWIDGET_SORTROLE
 
 /****
@@ -64,11 +63,6 @@ static const int CHANNEL_TABS_POSTS  = 1;
 #define VIEW_MODE_FEEDS  1
 #define VIEW_MODE_FILES  2
 
-// Size of thumbnails as a function of the height of the font. An aspect ratio of 3/4 is good.
-
-#define THUMBNAIL_W  4
-#define THUMBNAIL_H  6
-
 // Determine the Shape and size of cells as a factor of the font height. An aspect ratio of 3/4 is what's needed
 // for the image, so it's important that the height is a bit larger so as to leave some room for the text.
 //
@@ -76,67 +70,10 @@ static const int CHANNEL_TABS_POSTS  = 1;
 #define COLUMN_SIZE_FONT_FACTOR_W  6
 #define COLUMN_SIZE_FONT_FACTOR_H  10
 
-// This variable determines the zoom factor on the text below thumbnails. 2.0 is mostly correct for all screen.
-#define THUMBNAIL_OVERSAMPLE_FACTOR 2.0
 #define STAR_OVERLAY_IMAGE ":icons/star_overlay_128.png"
 
 Q_DECLARE_METATYPE(RsGxsFile)
 
-// Class to paint the thumbnails with title
-
-class ThumbnailView: public QWidget
-{
-public:
-    ThumbnailView(const RsGxsChannelPost& post,QWidget *parent=NULL)
-        : QWidget(parent)
-    {
-        QVBoxLayout *layout = new QVBoxLayout(this);
-
-        QLabel *lb = new QLabel(this);
-        lb->setScaledContents(true);
-        layout->addWidget(lb);
-
-        QLabel *lt = new QLabel(this);
-        layout->addWidget(lt);
-
-		setLayout(layout);
-
-		setSizePolicy(QSizePolicy::MinimumExpanding,QSizePolicy::MinimumExpanding);
-
-        // now fill the data
-
-		QPixmap thumbnail;
-
-        if(post.mThumbnail.mSize > 0)
-			GxsIdDetails::loadPixmapFromData(post.mThumbnail.mData, post.mThumbnail.mSize, thumbnail,GxsIdDetails::ORIGINAL);
-        else if(post.mMeta.mPublishTs > 0)	// this is for testing that the post is not an empty post (happens at the end of the last row)
-			thumbnail = FilesDefs::getPixmapFromQtResourcePath(CHAN_DEFAULT_IMAGE);
-
-		QFontMetricsF fm(font());
-		int W = THUMBNAIL_OVERSAMPLE_FACTOR * THUMBNAIL_W * fm.height() ;
-		int H = THUMBNAIL_OVERSAMPLE_FACTOR * THUMBNAIL_H * fm.height() ;
-
-        lb->setFixedSize(W,H);
-		lb->setPixmap(thumbnail);
-
-        lt->setText(QString::fromUtf8(post.mMeta.mMsgName.c_str()));
-
-        QFont font = lt->font();
-
-		if(IS_MSG_UNREAD(post.mMeta.mMsgStatus) || IS_MSG_NEW(post.mMeta.mMsgStatus))
-        {
-            font.setBold(true);
-            lt->setFont(font);
-        }
-
-        lt->setMaximumWidth(W);
-        lt->setWordWrap(true);
-
-        adjustSize();
-        update();
-    }
-};
-
 // Delegate used to paint into the table of thumbnails
 
 void ChannelPostDelegate::paint(QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index) const
@@ -151,7 +88,7 @@ void ChannelPostDelegate::paint(QPainter * painter, const QStyleOptionViewItem &
     painter->fillRect( option.rect, option.backgroundBrush);
     painter->restore();
 
-	ThumbnailView w(post);
+	ChannelPostThumbnailView w(post);
 
 	QPixmap pixmap(w.size());
 
@@ -463,7 +400,7 @@ void GxsChannelPostsWidgetWithModel::showPostDetails()
 	if (post.mThumbnail.mData != NULL)
 		GxsIdDetails::loadPixmapFromData(post.mThumbnail.mData, post.mThumbnail.mSize, postImage,GxsIdDetails::ORIGINAL);
 	else
-		postImage = FilesDefs::getPixmapFromQtResourcePath(CHAN_DEFAULT_IMAGE);
+		postImage = FilesDefs::getPixmapFromQtResourcePath(ChannelPostThumbnailView::CHAN_DEFAULT_IMAGE);
 
     int W = QFontMetricsF(font()).height() * 8;
 
@@ -689,7 +626,7 @@ void GxsChannelPostsWidgetWithModel::insertChannelDetails(const RsGxsChannelGrou
 	if (group.mImage.mData != NULL) {
 		GxsIdDetails::loadPixmapFromData(group.mImage.mData, group.mImage.mSize, chanImage,GxsIdDetails::ORIGINAL);
 	} else {
-		chanImage = QPixmap(CHAN_DEFAULT_IMAGE);
+		chanImage = QPixmap(ChannelPostThumbnailView::CHAN_DEFAULT_IMAGE);
 	}
     if(group.mMeta.mGroupName.empty())
 		ui->channelName_LB->setText(tr("[No name]"));
diff --git a/retroshare-gui/src/retroshare-gui.pro b/retroshare-gui/src/retroshare-gui.pro
index 69dfc6b85..ce23a4f9c 100644
--- a/retroshare-gui/src/retroshare-gui.pro
+++ b/retroshare-gui/src/retroshare-gui.pro
@@ -1337,6 +1337,7 @@ gxschannels {
 		gui/gxschannels/GxsChannelPostsModel.h \
 		gui/gxschannels/GxsChannelPostFilesModel.h \
 		gui/gxschannels/GxsChannelFilesWidget.h \
+		gui/gxschannels/GxsChannelPostThumbnail.h \
 		gui/gxschannels/GxsChannelFilesStatusWidget.h \
 		gui/feeds/GxsChannelGroupItem.h \
 		gui/feeds/GxsChannelPostItem.h \