Index: /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileManager.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileManager.cpp	(revision 75245)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileManager.cpp	(revision 75246)
@@ -27,4 +27,5 @@
 # include <QTextEdit>
 # include <QPushButton>
+# include <QSplitter>
 # include <QGridLayout>
 
@@ -133,7 +134,6 @@
     , m_comGuest(comGuest)
     , m_pMainLayout(0)
+    , m_pVerticalSplitter(0)
     , m_pToolBar(0)
-    , m_pFileTableContainerWidget(0)
-    , m_pFileTableContainerLayout(0)
     , m_pGuestFileTable(0)
     , m_pHostFileTable(0)
@@ -188,5 +188,5 @@
 void UIGuestControlFileManager::prepareObjects()
 {
-    /* Create layout: */
+    /* m_pMainLayout is the outer most layout containing the main toolbar and splitter widget: */
     m_pMainLayout = new QVBoxLayout(this);
     if (!m_pMainLayout)
@@ -195,44 +195,50 @@
     /* Configure layout: */
     m_pMainLayout->setSpacing(0);
+    m_pMainLayout->setContentsMargins(0, 0, 0, 0);
 
     if (m_fShowToolbar)
         prepareToolBar();
-
-    // m_pSessionCreateWidget = new UIGuestSessionCreateWidget();
-    // if (m_pSessionCreateWidget)
-    // {
-    //     m_pMainLayout->addWidget(m_pSessionCreateWidget);
-    // }
-
-    m_pFileTableContainerWidget = new QWidget;
-    m_pFileTableContainerLayout = new QHBoxLayout;
-
-    if (m_pFileTableContainerWidget)
-    {
-        if (m_pFileTableContainerLayout)
+    /* Two widgets are inserted into this splitter. Upper pWidget widget is a container with file tables and all the panels
+       except the log panel and lower widget is the log panel: */
+    m_pVerticalSplitter = new QSplitter;
+    if (!m_pVerticalSplitter)
+        return;
+
+    m_pMainLayout->addWidget(m_pVerticalSplitter);
+    m_pVerticalSplitter->setOrientation(Qt::Vertical);
+    m_pVerticalSplitter->setHandleWidth(4);
+
+    QHBoxLayout *pFileTableContainerLayout = new QHBoxLayout;
+    pFileTableContainerLayout->setSpacing(0);
+    pFileTableContainerLayout->setContentsMargins(0, 0, 0, 0);
+
+    QWidget *pTopWidget = new QWidget;
+    QVBoxLayout *pTopLayout = new QVBoxLayout;
+    pTopLayout->setSpacing(0);
+    pTopLayout->setContentsMargins(0, 0, 0, 0);
+
+    pTopWidget->setLayout(pTopLayout);
+
+    if (pFileTableContainerLayout)
+    {
+        pFileTableContainerLayout->setSpacing(0);
+        pFileTableContainerLayout->setContentsMargins(0, 0, 0, 0);
+        m_pGuestFileTable = new UIGuestFileTable(m_pActionPool);
+        m_pGuestFileTable->setEnabled(false);
+
+        m_pHostFileTable = new UIHostFileTable(m_pActionPool);
+        if (m_pHostFileTable)
         {
-            m_pFileTableContainerWidget->setLayout(m_pFileTableContainerLayout);
-            m_pFileTableContainerLayout->setSpacing(0);
-            m_pFileTableContainerLayout->setContentsMargins(0, 0, 0, 0);
-            m_pGuestFileTable = new UIGuestFileTable(m_pActionPool);
-            m_pGuestFileTable->setEnabled(false);
-
-            m_pHostFileTable = new UIHostFileTable(m_pActionPool);
-            if (m_pHostFileTable)
-            {
-                connect(m_pHostFileTable, &UIHostFileTable::sigLogOutput,
-                        this, &UIGuestControlFileManager::sltReceieveLogOutput);
-                m_pFileTableContainerLayout->addWidget(m_pHostFileTable);
-            }
-            prepareVerticalToolBar();
-             if (m_pGuestFileTable)
-            {
-                connect(m_pGuestFileTable, &UIGuestFileTable::sigLogOutput,
-                        this, &UIGuestControlFileManager::sltReceieveLogOutput);
-                m_pFileTableContainerLayout->addWidget(m_pGuestFileTable);
-            }
-
+            connect(m_pHostFileTable, &UIHostFileTable::sigLogOutput,
+                    this, &UIGuestControlFileManager::sltReceieveLogOutput);
+            pFileTableContainerLayout->addWidget(m_pHostFileTable);
         }
-        m_pMainLayout->addWidget(m_pFileTableContainerWidget);
+        prepareVerticalToolBar(pFileTableContainerLayout);
+        if (m_pGuestFileTable)
+        {
+            connect(m_pGuestFileTable, &UIGuestFileTable::sigLogOutput,
+                    this, &UIGuestControlFileManager::sltReceieveLogOutput);
+            pFileTableContainerLayout->addWidget(m_pGuestFileTable);
+        }
     }
 
@@ -243,26 +249,13 @@
     //     m_pFileOperationsList->header()->hide();
     // }
-
-    /* Create the settings-panel: */
-    m_pLogPanel = new UIGuestControlFileManagerLogPanel(this /* manager dialog */, 0 /*parent */);
-    if (m_pLogPanel)
-    {
-        /* Configure panel: */
-        m_pLogPanel->hide();
-        m_panelActionMap.insert(m_pLogPanel, m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_T_Log));
-        /* Add into layout: */
-        m_pMainLayout->addWidget(m_pLogPanel);
-    }
+    pTopLayout->addLayout(pFileTableContainerLayout);
     m_pSessionPanel = new UIGuestControlFileManagerSessionPanel(this /* manager dialog */, 0 /*parent */);
     if (m_pSessionPanel)
     {
-        /* Configure panel: */
         m_pSessionPanel->hide();
         m_panelActionMap.insert(m_pSessionPanel, m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_T_Session));
-        /* Add into layout: */
-        m_pMainLayout->addWidget(m_pSessionPanel);
-    }
-
-    /* Create the settings-panel: */
+        pTopLayout->addWidget(m_pSessionPanel);
+    }
+
     m_pSettingsPanel =
         new UIGuestControlFileManagerSettingsPanel(this /* manager dialog */,
@@ -270,16 +263,25 @@
     if (m_pSettingsPanel)
     {
-        /* Configure panel: */
         m_pSettingsPanel->hide();
         m_panelActionMap.insert(m_pSettingsPanel, m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_T_Settings));
         connect(m_pSettingsPanel, &UIGuestControlFileManagerSettingsPanel::sigListDirectoriesFirstChanged,
                 this, &UIGuestControlFileManager::sltListDirectoriesBeforeChanged);
-        /* Add into layout: */
-        m_pMainLayout->addWidget(m_pSettingsPanel);
-    }
-
-}
-
-void UIGuestControlFileManager::prepareVerticalToolBar()
+        pTopLayout->addWidget(m_pSettingsPanel);
+    }
+    m_pVerticalSplitter->addWidget(pTopWidget);
+
+    m_pLogPanel = new UIGuestControlFileManagerLogPanel(this /* manager dialog */, 0 /*parent */);
+    if (m_pLogPanel)
+    {
+        m_pLogPanel->hide();
+        m_panelActionMap.insert(m_pLogPanel, m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_T_Log));
+    }
+    m_pVerticalSplitter->addWidget(pTopWidget);
+    m_pVerticalSplitter->addWidget(m_pLogPanel);
+    m_pVerticalSplitter->setCollapsible(m_pVerticalSplitter->indexOf(pTopWidget), false);
+    m_pVerticalSplitter->setCollapsible(m_pVerticalSplitter->indexOf(m_pLogPanel), false);
+}
+
+void UIGuestControlFileManager::prepareVerticalToolBar(QHBoxLayout *layout)
 {
     m_pToolBar = new UIToolBar;
@@ -306,7 +308,7 @@
             this, &UIGuestControlFileManager::sltCopyHostToGuest);
     connect(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_CopyToGuest), &QAction::triggered,
-            this, &UIGuestControlFileManager::sltCopyGuestToHost);
-
-    m_pFileTableContainerLayout->addWidget(m_pToolBar);
+             this, &UIGuestControlFileManager::sltCopyGuestToHost);
+
+    layout ->addWidget(m_pToolBar);
 }
 
Index: /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileManager.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileManager.h	(revision 75245)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileManager.h	(revision 75246)
@@ -36,4 +36,5 @@
 /* Forward declarations: */
 class QHBoxLayout;
+class QSplitter;
 class QTextEdit;
 class QVBoxLayout;
@@ -112,5 +113,5 @@
     void prepareGuestListener();
     void prepareConnections();
-    void prepareVerticalToolBar();
+    void prepareVerticalToolBar(QHBoxLayout *layout);
     void prepareToolBar();
     bool createSession(const QString& strUserName, const QString& strPassword,
@@ -139,5 +140,4 @@
     void manageEscapeShortCut();
 
-
     template<typename T>
     QStringList       getFsObjInfoStringList(const T &fsObjectInfo) const;
@@ -147,8 +147,6 @@
     CGuestSession               m_comGuestSession;
     QVBoxLayout                *m_pMainLayout;
-
+    QSplitter                  *m_pVerticalSplitter;
     UIToolBar                  *m_pToolBar;
-    QWidget                    *m_pFileTableContainerWidget;
-    QHBoxLayout                *m_pFileTableContainerLayout;
 
     //UIFileOperationsList       *m_pFileOperationsList;
