Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIActionPoolRuntime.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIActionPoolRuntime.cpp	(revision 58549)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIActionPoolRuntime.cpp	(revision 58550)
@@ -1839,6 +1839,27 @@
     }
 };
+
+class UIActionToggleDockIconOverlayDisabled : public UIActionToggle
+{
+    Q_OBJECT;
+
+public:
+
+    UIActionToggleDockIconOverlayDisabled(UIActionPool *pParent)
+        : UIActionToggle(pParent) {}
+
+protected:
+
+    QString shortcutExtraDataID() const
+    {
+        return QString("DockOverlayDisable");
+    }
+
+    void retranslateUi()
+    {
+        setName(QApplication::translate("UIActionPool", "Disable Dock Icon Overlay"));
+    }
+};
 #endif /* Q_WS_MAC */
-
 
 UIActionPoolRuntime::UIActionPoolRuntime(bool fTemporary /* = false */)
@@ -2128,4 +2149,5 @@
     m_pool[UIActionIndexRT_M_Dock_M_DockSettings_T_PreviewMonitor] = new UIActionToggleDockPreviewMonitor(this);
     m_pool[UIActionIndexRT_M_Dock_M_DockSettings_T_DisableMonitor] = new UIActionToggleDockDisableMonitor(this);
+    m_pool[UIActionIndexRT_M_Dock_M_DockSettings_T_OverlayDisabled] = new UIActionToggleDockIconOverlayDisabled(this);
 #endif /* Q_WS_MAC */
 
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIActionPoolRuntime.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIActionPoolRuntime.h	(revision 58549)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIActionPoolRuntime.h	(revision 58550)
@@ -122,4 +122,5 @@
     UIActionIndexRT_M_Dock_M_DockSettings_T_PreviewMonitor,
     UIActionIndexRT_M_Dock_M_DockSettings_T_DisableMonitor,
+    UIActionIndexRT_M_Dock_M_DockSettings_T_OverlayDisabled,
 #endif /* Q_WS_MAC */
 
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp	(revision 58549)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp	(revision 58550)
@@ -1193,6 +1193,16 @@
     connect(gEDataManager, SIGNAL(sigDockIconAppearanceChange(bool)),
             this, SLOT(sltChangeDockIconUpdate(bool)));
+
+    /* Get dock icon overlay disabled action: */
+    QAction *pDockIconOverlayDisabled = actionPool()->action(UIActionIndexRT_M_Dock_M_DockSettings_T_OverlayDisabled);
+    /* Prepare dock icon overlay disabled action with initial data: */
+    pDockIconOverlayDisabled->setChecked(gEDataManager->dockIconOverlayDisabled(vboxGlobal().managedVMUuid()));
+    /* Connect dock icon overlay disabled signals: */
+    connect(pDockIconOverlayDisabled, SIGNAL(triggered(bool)),
+            this, SLOT(sltDockIconOverlayDisabledChanged(bool)));
     connect(gEDataManager, SIGNAL(sigDockIconOverlayAppearanceChange(bool)),
             this, SLOT(sltChangeDockIconOverlayAppearance(bool)));
+    /* Add dock icon overlay disabled action to the dock settings menu: */
+    pDockSettingsMenu->addAction(pDockIconOverlayDisabled);
 
     /* Monitor selection if there are more than one monitor */
@@ -2138,4 +2148,14 @@
     if (isMachineWindowsCreated())
         updateDockOverlay();
+    /* Make sure to update dock icon action when dock icon overlay disabled changed from extra-data manager: */
+    QAction *pDockIconOverlayDisabled = actionPool()->action(UIActionIndexRT_M_Dock_M_DockSettings_T_OverlayDisabled);
+    if (fDisabled != pDockIconOverlayDisabled->isChecked())
+        pDockIconOverlayDisabled->setChecked(fDisabled);
+}
+
+void UIMachineLogic::sltDockIconOverlayDisabledChanged(bool fDisabled)
+{
+    /* Write dock icon overlay flag to extra-data: */
+    gEDataManager->setdockIconOverlayDisabled(fDisabled, vboxGlobal().managedVMUuid());
 }
 #endif /* Q_WS_MAC */
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.h	(revision 58549)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.h	(revision 58550)
@@ -313,4 +313,6 @@
     /** Handles dock icon overlay change event. */
     void sltChangeDockIconOverlayAppearance(bool fDisabled);
+    /** Handles dock icon overlay disable action triggering. */
+    void sltDockIconOverlayDisabledChanged(bool fDisabled);
 #endif /* RT_OS_DARWIN */
 
