Index: /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.cpp	(revision 75201)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.cpp	(revision 75202)
@@ -1703,5 +1703,5 @@
     virtual void retranslateUi() /* override */
     {
-        setName(QApplication::translate("UIActionPool", "GoHome"));
+        setName(QApplication::translate("UIActionPool", "Go Home"));
         setShortcutScope(QApplication::translate("UIActionPool", "Guest Control File Manager"));
         setStatusTip(QApplication::translate("UIActionPool", "Go to home folder"));
@@ -1847,5 +1847,5 @@
     virtual void retranslateUi() /* override */
     {
-        setName(QApplication::translate("UIActionPool", "CreateNewDirectory"));
+        setName(QApplication::translate("UIActionPool", "Create New Directory"));
         setShortcutScope(QApplication::translate("UIActionPool", "Guest Control File Manager"));
         setStatusTip(QApplication::translate("UIActionPool", "Create New Directory"));
@@ -1988,5 +1988,5 @@
     virtual void retranslateUi() /* override */
     {
-        setName(QApplication::translate("UIActionPool", "SelectAll"));
+        setName(QApplication::translate("UIActionPool", "Select All"));
         setShortcutScope(QApplication::translate("UIActionPool", "Guest Control File Manager"));
         setStatusTip(QApplication::translate("UIActionPool", "Select all files objects"));
@@ -2024,5 +2024,5 @@
     virtual void retranslateUi() /* override */
     {
-        setName(QApplication::translate("UIActionPool", "InvertSelection"));
+        setName(QApplication::translate("UIActionPool", "Invert Selection"));
         setShortcutScope(QApplication::translate("UIActionPool", "Guest Control File Manager"));
         setStatusTip(QApplication::translate("UIActionPool", "Invert the current selection"));
@@ -2060,5 +2060,5 @@
     virtual void retranslateUi() /* override */
     {
-        setName(QApplication::translate("UIActionPool", "ShowProperties"));
+        setName(QApplication::translate("UIActionPool", "Show Properties"));
         setShortcutScope(QApplication::translate("UIActionPool", "Guest Control File Manager"));
         setStatusTip(QApplication::translate("UIActionPool", "Show the properties of currently selected file object(s)"));
Index: /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileManager.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileManager.h	(revision 75201)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileManager.h	(revision 75202)
@@ -128,6 +128,4 @@
     QTextEdit                  *m_pLogOutput;
     UIToolBar                  *m_pToolBar;
-    // QAction                    *m_pCopyGuestToHost;
-    // QAction                    *m_pCopyHostToGuest;
     QWidget                    *m_pFileTableContainerWidget;
     QHBoxLayout                *m_pFileTableContainerLayout;
Index: /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileTable.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileTable.cpp	(revision 75201)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileTable.cpp	(revision 75202)
@@ -71,14 +71,4 @@
 signals:
 
-    void sigGoUp();
-    void sigGoHome();
-    void sigRefresh();
-    void sigRename();
-    void sigCreateNewDirectory();
-    void sigDelete();
-    void sigCut();
-    void sigCopy();
-    void sigPaste();
-    void sigShowProperties();
     void sigSelectionChanged(const QItemSelection & selected, const QItemSelection & deselected);
 
@@ -91,5 +81,4 @@
 
     virtual void selectionChanged(const QItemSelection & selected, const QItemSelection & deselected) /*override */;
-    void contextMenuEvent(QContextMenuEvent *pEvent);
 
 private:
@@ -312,4 +301,5 @@
 void UIGuestControlFileView::configure()
 {
+    setContextMenuPolicy(Qt::CustomContextMenu);
     setShowGrid(false);
     setSelectionBehavior(QAbstractItemView::SelectRows);
@@ -322,127 +312,4 @@
 }
 
-void UIGuestControlFileView::contextMenuEvent(QContextMenuEvent *pEvent)
-{
-    bool selectionAvaible = hasSelection();
-
-    QMenu *menu = new QMenu(this);
-    if (!menu)
-        return;
-
-    QAction *pActionGoUp = menu->addAction(QApplication::translate("UIGuestControlFileManager","Go up"));
-    if (pActionGoUp)
-    {
-        pActionGoUp->setIcon(UIIconPool::iconSet(QString(":/arrow_up_10px_x2.png")));
-        connect(pActionGoUp, &QAction::triggered, this, &UIGuestControlFileView::sigGoUp);
-    }
-    QAction *pActionGoHome = menu->addAction(QApplication::translate("UIGuestControlFileManager", "Go home"));
-    if (pActionGoHome)
-    {
-        pActionGoHome->setIcon(UIIconPool::iconSet(QString(":/nw_24px.png")));
-        connect(pActionGoHome, &QAction::triggered, this, &UIGuestControlFileView::sigGoHome);
-    }
-
-    QAction *pActionRefresh = menu->addAction(QApplication::translate("UIGuestControlFileManager", "Refresh"));
-    if (pActionRefresh)
-    {
-        pActionRefresh->setIcon(UIIconPool::iconSet(QString(":/refresh_24px.png")));
-        connect(pActionRefresh, &QAction::triggered, this, &UIGuestControlFileView::sigRefresh);
-    }
-
-    menu->addSeparator();
-    QAction *pActionDelete = menu->addAction(QApplication::translate("UIGuestControlFileManager", "Delete"));
-    if (pActionDelete)
-    {
-        pActionDelete->setIcon(UIIconPool::iconSet(QString(":/vm_delete_32px.png")));
-        pActionDelete->setEnabled(selectionAvaible);
-        connect(pActionDelete, &QAction::triggered, this, &UIGuestControlFileView::sigDelete);
-    }
-
-    QAction *pActionRename = menu->addAction(QApplication::translate("UIGuestControlFileManager", "Rename"));
-    if (pActionRename)
-    {
-        pActionRename->setIcon(UIIconPool::iconSet(QString(":/name_16px_x2.png")));
-        pActionRename->setEnabled(selectionAvaible);
-        pActionRename->setEnabled(selectionAvaible);
-        connect(pActionRename, &QAction::triggered, this, &UIGuestControlFileView::sigRename);
-    }
-
-    QAction *pActionCreateNewDirectory = menu->addAction(QApplication::translate("UIGuestControlFileManager", "Create New Directory"));
-    if (pActionCreateNewDirectory)
-    {
-        pActionCreateNewDirectory->setIcon(UIIconPool::iconSet(QString(":/sf_add_16px.png")));
-        connect(pActionCreateNewDirectory, &QAction::triggered, this, &UIGuestControlFileView::sigCreateNewDirectory);
-    }
-
-    QAction *pActionCopy = 0;
-    QAction *pActionCut = 0;
-    QAction *pActionPaste = 0;
-
-    bool isGuestFileTable = qobject_cast<UIGuestFileTable*>(parent());
-
-    if (isGuestFileTable)
-    {
-        pActionCopy = menu->addAction(QApplication::translate("UIGuestControlFileManager", "Copy"));
-        if (pActionCopy)
-        {
-            pActionCopy->setIcon(UIIconPool::iconSet(QString(":/fd_copy_32px.png")));
-            pActionCopy->setEnabled(selectionAvaible);
-            connect(pActionCopy, &QAction::triggered, this, &UIGuestControlFileView::sigCopy);
-        }
-
-        pActionCut = menu->addAction(QApplication::translate("UIGuestControlFileManager", "Cut"));
-        if (pActionCut)
-        {
-            pActionCut->setIcon(UIIconPool::iconSet(QString(":/fd_move_32px.png")));
-            pActionCut->setEnabled(selectionAvaible);
-            connect(pActionCut, &QAction::triggered, this, &UIGuestControlFileView::sigCut);
-        }
-
-        pActionPaste = menu->addAction(QApplication::translate("UIGuestControlFileManager", "Paste"));
-        if (pActionPaste)
-        {
-            pActionPaste->setIcon(UIIconPool::iconSet(QString(":/shared_clipboard_16px.png")));
-            connect(pActionPaste, &QAction::triggered, this, &UIGuestControlFileView::sigPaste);
-        }
-    }
-
-    menu->addSeparator();
-    QAction *pActionShowProperties = menu->addAction(QApplication::translate("UIGuestControlFileManager", "Properties"));
-    if (pActionShowProperties)
-    {
-        pActionShowProperties->setIcon(UIIconPool::iconSet(QString(":/session_info_32px.png")));
-        pActionShowProperties->setEnabled(selectionAvaible);
-        connect(pActionShowProperties, &QAction::triggered, this, &UIGuestControlFileView::sigShowProperties);
-    }
-
-    menu->exec(pEvent->globalPos());
-
-    if (pActionGoUp)
-        disconnect(pActionGoUp, &QAction::triggered, this, &UIGuestControlFileView::sigGoUp);
-    if (pActionGoHome)
-        disconnect(pActionGoHome, &QAction::triggered, this, &UIGuestControlFileView::sigGoHome);
-    if (pActionRefresh)
-        disconnect(pActionRefresh, &QAction::triggered, this, &UIGuestControlFileView::sigRefresh);
-    if (pActionDelete)
-        disconnect(pActionDelete, &QAction::triggered, this, &UIGuestControlFileView::sigDelete);
-    if (pActionRename)
-        disconnect(pActionRename, &QAction::triggered, this, &UIGuestControlFileView::sigRename);
-    if (pActionCreateNewDirectory)
-        disconnect(pActionCreateNewDirectory, &QAction::triggered, this, &UIGuestControlFileView::sigCreateNewDirectory);
-    if (isGuestFileTable)
-    {
-        if (pActionCopy)
-            disconnect(pActionCopy, &QAction::triggered, this, &UIGuestControlFileView::sigCopy);
-        if (pActionCut)
-            disconnect(pActionCut, &QAction::triggered, this, &UIGuestControlFileView::sigCut);
-        if (pActionPaste)
-            disconnect(pActionPaste, &QAction::triggered, this, &UIGuestControlFileView::sigPaste);
-    }
-    if (pActionShowProperties)
-        disconnect(pActionShowProperties, &QAction::triggered, this, &UIGuestControlFileView::sigShowProperties);
-
-    delete menu;
-}
-
 bool UIGuestControlFileView::hasSelection() const
 {
@@ -458,5 +325,4 @@
     QTableView::selectionChanged(selected, deselected);
 }
-
 
 /*********************************************************************************************************************************
@@ -559,5 +425,4 @@
 {
 }
-
 
 /*********************************************************************************************************************************
@@ -835,26 +700,8 @@
         connect(m_pView, &UIGuestControlFileView::clicked,
                 this, &UIGuestControlFileTable::sltItemClicked);
-        connect(m_pView, &UIGuestControlFileView::sigGoUp,
-                this, &UIGuestControlFileTable::sltGoUp);
-        connect(m_pView, &UIGuestControlFileView::sigGoHome,
-                this, &UIGuestControlFileTable::sltGoHome);
-        connect(m_pView, &UIGuestControlFileView::sigRefresh,
-                this, &UIGuestControlFileTable::sltRefresh);
-        connect(m_pView, &UIGuestControlFileView::sigDelete,
-                this, &UIGuestControlFileTable::sltDelete);
-        connect(m_pView, &UIGuestControlFileView::sigRename,
-                this, &UIGuestControlFileTable::sltRename);
-        connect(m_pView, &UIGuestControlFileView::sigCreateNewDirectory,
-                this, &UIGuestControlFileTable::sltCreateNewDirectory);
-        connect(m_pView, &UIGuestControlFileView::sigCopy,
-                this, &UIGuestControlFileTable::sltCopy);
-        connect(m_pView, &UIGuestControlFileView::sigCut,
-                this, &UIGuestControlFileTable::sltCut);
-        connect(m_pView, &UIGuestControlFileView::sigPaste,
-                this, &UIGuestControlFileTable::sltPaste);
-        connect(m_pView, &UIGuestControlFileView::sigShowProperties,
-                this, &UIGuestControlFileTable::sltShowProperties);
         connect(m_pView, &UIGuestControlFileView::sigSelectionChanged,
                 this, &UIGuestControlFileTable::sltSelectionChanged);
+        connect(m_pView, &UIGuestControlFileView::customContextMenuRequested,
+                this, &UIGuestControlFileTable::sltCreateFileViewContextMenu);
 
     }
@@ -1236,4 +1083,12 @@
 {
     performSelectionSearch(strText);
+}
+
+void UIGuestControlFileTable::sltCreateFileViewContextMenu(const QPoint &point)
+{
+    QWidget *pSender = qobject_cast<QWidget*>(sender());
+    if (!pSender)
+        return;
+    createFileViewContextMenu(pSender, point);
 }
 
Index: /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileTable.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileTable.h	(revision 75201)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestControlFileTable.h	(revision 75202)
@@ -283,4 +283,5 @@
     virtual void     determineDriveLetters() = 0;
     virtual void     prepareToolbar() = 0;
+    virtual void     createFileViewContextMenu(const QWidget *pWidget, const QPoint &point) = 0;
     QString          fileTypeString(FileObjectType type);
     /* @p item index is item location in model not in 'proxy' model */
@@ -323,8 +324,12 @@
     void sltPaste();
     void sltShowProperties();
+    void sltSelectAll();
+    void sltInvertSelection();
+
+private slots:
+
+    void sltCreateFileViewContextMenu(const QPoint &point);
     void sltSelectionChanged(const QItemSelection & selected, const QItemSelection & deselected);
     void sltLocationComboCurrentChange(const QString &strLocation);
-    void sltSelectAll();
-    void sltInvertSelection();
     void sltSearchTextChanged(const QString &strText);
 
Index: /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestFileTable.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestFileTable.cpp	(revision 75201)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestFileTable.cpp	(revision 75202)
@@ -561,4 +561,13 @@
     }
     setSelectionDependentActionsEnabled(false);
+}
+
+void UIGuestFileTable::createFileViewContextMenu(const QWidget *pWidget, const QPoint &/*point*/)
+{
+    if (!pWidget)
+        return;
+
+    // QMenu menu;
+    // menu.exec(mapToGlobal(position));
 }
 
Index: /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestFileTable.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestFileTable.h	(revision 75201)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIGuestFileTable.h	(revision 75202)
@@ -54,4 +54,5 @@
     virtual void    determineDriveLetters() /* override */;
     virtual void    prepareToolbar() /* override */;
+    virtual void    createFileViewContextMenu(const QWidget *pWidget, const QPoint &point) /* override */;
 
 private:
Index: /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIHostFileTable.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIHostFileTable.cpp	(revision 75201)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIHostFileTable.cpp	(revision 75202)
@@ -152,8 +152,10 @@
         m_pToolBar->addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Rename));
         m_pToolBar->addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_CreateNewDirectory));
-        m_pToolBar->addSeparator();
-        m_pToolBar->addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Copy));
-        m_pToolBar->addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Cut));
-        m_pToolBar->addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Paste));
+        /* Hide cut, copy, and paste for now. We will implement those
+           when we have an API for host file operations: */
+        // m_pToolBar->addSeparator();
+        // m_pToolBar->addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Copy));
+        // m_pToolBar->addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Cut));
+        // m_pToolBar->addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Paste));
         m_pToolBar->addSeparator();
         m_pToolBar->addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_SelectAll));
@@ -164,18 +166,39 @@
         m_selectionDependentActions.insert(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Delete));
         m_selectionDependentActions.insert(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Rename));
-        m_selectionDependentActions.insert(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Copy));
-        m_selectionDependentActions.insert(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Cut));
         m_selectionDependentActions.insert(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_ShowProperties));
     }
 
+    setSelectionDependentActionsEnabled(false);
+}
+
+void UIHostFileTable::createFileViewContextMenu(const QWidget *pWidget, const QPoint &point)
+{
+    if (!pWidget)
+        return;
+
+    QMenu menu;
+    menu.addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_GoUp));
+
+    menu.addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_GoHome));
+    menu.addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Refresh));
+    menu.addSeparator();
+    menu.addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Delete));
+    menu.addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Rename));
+    menu.addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_CreateNewDirectory));
     /* Hide cut, copy, and paste for now. We will implement those
        when we have an API for host file operations: */
-    // if (m_pCopy)
-    //     m_pCopy->setVisible(false);
-    // if (m_pCut)
-    //     m_pCut->setVisible(false);
-    // if (m_pPaste)
-    //     m_pPaste->setVisible(false);
-    setSelectionDependentActionsEnabled(false);
+    // menu.addSeparator();
+    // menu.addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Copy));
+    // menu.addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Cut));
+    // menu.addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_Paste));
+    menu.addSeparator();
+    menu.addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_SelectAll));
+    menu.addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_InvertSelection));
+    menu.addSeparator();
+    menu.addAction(m_pActionPool->action(UIActionIndex_M_GuestControlFileManager_S_Host_ShowProperties));
+
+
+
+    menu.exec(pWidget->mapToGlobal(point));
 }
 
Index: /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIHostFileTable.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIHostFileTable.h	(revision 75201)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/guestctrl/UIHostFileTable.h	(revision 75202)
@@ -48,4 +48,5 @@
     virtual void    determineDriveLetters() /* override */;
     virtual void    prepareToolbar() /* override */;
+    virtual void    createFileViewContextMenu(const QWidget *pWidget, const QPoint &point) /* override */;
 
 private:
