Index: trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.cpp	(revision 89623)
+++ trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.cpp	(revision 89688)
@@ -56,4 +56,5 @@
 const char *UIExtraDataDefs::GUI_MaxGuestResolution = "GUI/MaxGuestResolution";
 const char *UIExtraDataDefs::GUI_ActivateHoveredMachineWindow = "GUI/ActivateHoveredMachineWindow";
+const char *UIExtraDataDefs::GUI_DisableHostScreenSaver = "GUI/DisableHostScreenSaver";
 
 /* Settings: Keyboard: */
Index: trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.h
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.h	(revision 89623)
+++ trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.h	(revision 89688)
@@ -103,4 +103,6 @@
         /** Holds whether hovered machine-window should be activated. */
         SHARED_LIBRARY_STUFF extern const char *GUI_ActivateHoveredMachineWindow;
+        /** Holds whether the host scrrn saver is disabled when a vm is running. */
+        SHARED_LIBRARY_STUFF extern const char *GUI_DisableHostScreenSaver;
     /** @} */
 
Index: trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp	(revision 89623)
+++ trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp	(revision 89688)
@@ -1904,4 +1904,5 @@
            << GUI_LanguageID
            << GUI_ActivateHoveredMachineWindow
+           << GUI_DisableHostScreenSaver
            << GUI_Input_SelectorShortcuts << GUI_Input_MachineShortcuts
            << GUI_RecentFolderHD << GUI_RecentFolderCD << GUI_RecentFolderFD
@@ -2503,4 +2504,16 @@
 }
 
+bool UIExtraDataManager::disableHostScreenSaver()
+{
+    /* 'False' unless feature allowed: */
+    return isFeatureAllowed(GUI_DisableHostScreenSaver);
+}
+
+void UIExtraDataManager::setDisableHostScreenSaver(bool fActivate)
+{
+    /* 'True' if feature allowed, null-string otherwise: */
+    setExtraDataString(GUI_DisableHostScreenSaver, toFeatureAllowed(fActivate));
+}
+
 QString UIExtraDataManager::hostKeyCombination()
 {
Index: trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h	(revision 89623)
+++ trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h	(revision 89688)
@@ -243,4 +243,8 @@
         /** Defines whether hovered machine-window should be @a fActivated. */
         void setActivateHoveredMachineWindow(bool fActivate);
+        /* Return whether host screen saver is disabled when a vm is running. */
+        bool disableHostScreenSaver();
+        /* Sets whether host screen saver is disabled when a vm is running. */
+        void setDisableHostScreenSaver(bool fActivate);
     /** @} */
 
Index: trunk/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsDisplay.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsDisplay.cpp	(revision 89623)
+++ trunk/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsDisplay.cpp	(revision 89688)
@@ -36,4 +36,5 @@
     UIDataSettingsGlobalDisplay()
         : m_fActivateHoveredMachineWindow(false)
+        , m_fDisableHostScreenSaver(false)
     {}
 
@@ -44,4 +45,5 @@
                && (m_guiMaximumGuestScreenSizeValue == other.m_guiMaximumGuestScreenSizeValue)
                && (m_fActivateHoveredMachineWindow == other.m_fActivateHoveredMachineWindow)
+               && (m_fDisableHostScreenSaver == other.m_fDisableHostScreenSaver)
                && (m_scaleFactors == other.m_scaleFactors)
                   ;
@@ -57,4 +59,7 @@
     /** Holds whether we should automatically activate machine window under the mouse cursor. */
     bool                           m_fActivateHoveredMachineWindow;
+    /** Holds whether we should disable host sceen saver on a vm is running. */
+    bool                           m_fDisableHostScreenSaver;
+
     /** Holds the guest screen scale-factor. */
     QList<double>                  m_scaleFactors;
@@ -76,4 +81,5 @@
     , m_pLabelMachineWindows(0)
     , m_pCheckBoxActivateOnMouseHover(0)
+    , m_pCheckBoxDisableHostScreenSaver(0)
 {
     prepare();
@@ -98,4 +104,5 @@
                                                                              gEDataManager->maxGuestResolutionForPolicyFixed());
     oldData.m_fActivateHoveredMachineWindow = gEDataManager->activateHoveredMachineWindow();
+    oldData.m_fDisableHostScreenSaver = gEDataManager->disableHostScreenSaver();
     oldData.m_scaleFactors = gEDataManager->scaleFactors(UIExtraDataManager::GlobalID);
     m_pCache->cacheInitialData(oldData);
@@ -111,4 +118,5 @@
     m_pEditorMaximumGuestScreenSize->setValue(oldData.m_guiMaximumGuestScreenSizeValue);
     m_pCheckBoxActivateOnMouseHover->setChecked(oldData.m_fActivateHoveredMachineWindow);
+    m_pCheckBoxDisableHostScreenSaver->setChecked(oldData.m_fDisableHostScreenSaver);
     m_pEditorScaleFactor->setScaleFactors(oldData.m_scaleFactors);
     m_pEditorScaleFactor->setMonitorCount(gpDesktop->screenCount());
@@ -123,4 +131,5 @@
     newData.m_guiMaximumGuestScreenSizeValue = m_pEditorMaximumGuestScreenSize->value();
     newData.m_fActivateHoveredMachineWindow = m_pCheckBoxActivateOnMouseHover->isChecked();
+    newData.m_fDisableHostScreenSaver = m_pCheckBoxDisableHostScreenSaver->isChecked();
     newData.m_scaleFactors = m_pEditorScaleFactor->scaleFactors();
     m_pCache->cacheCurrentData(newData);
@@ -149,4 +158,6 @@
     m_pCheckBoxActivateOnMouseHover->setWhatsThis(tr("When checked, machine windows will be raised when the mouse pointer moves over them."));
     m_pCheckBoxActivateOnMouseHover->setText(tr("&Raise Window Under Mouse"));
+    m_pCheckBoxDisableHostScreenSaver->setWhatsThis(tr("When checked, screen saver of the host OS is disabled."));
+    m_pCheckBoxDisableHostScreenSaver->setText(tr("&Disable Host Screen Saver"));
 }
 
@@ -171,5 +182,5 @@
     {
         pLayoutMain->setColumnStretch(1, 1);
-        pLayoutMain->setRowStretch(6, 1);
+        pLayoutMain->setRowStretch(7, 1);
 
         /* Prepare maximum guest screen size label: */
@@ -234,4 +245,9 @@
         if (m_pCheckBoxActivateOnMouseHover)
             pLayoutMain->addWidget(m_pCheckBoxActivateOnMouseHover, 5, 1);
+
+        /* Prepare 'disable host screen saver' check-box: */
+        m_pCheckBoxDisableHostScreenSaver = new QCheckBox(this);
+        if (m_pCheckBoxDisableHostScreenSaver)
+            pLayoutMain->addWidget(m_pCheckBoxDisableHostScreenSaver, 6, 1);
     }
 }
@@ -266,4 +282,8 @@
             && newData.m_fActivateHoveredMachineWindow != oldData.m_fActivateHoveredMachineWindow)
             /* fSuccess = */ gEDataManager->setActivateHoveredMachineWindow(newData.m_fActivateHoveredMachineWindow);
+        /* Save whether the host screen saver is to be disable when a vm is running: */
+        if (   fSuccess
+            && newData.m_fDisableHostScreenSaver != oldData.m_fDisableHostScreenSaver)
+            /* fSuccess = */ gEDataManager->setDisableHostScreenSaver(newData.m_fDisableHostScreenSaver);
         /* Save guest-screen scale-factor: */
         if (   fSuccess
Index: trunk/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsDisplay.h
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsDisplay.h	(revision 89623)
+++ trunk/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsDisplay.h	(revision 89688)
@@ -97,4 +97,6 @@
         /** Holds the 'activate on mouse hover' check-box instance. */
         QCheckBox                      *m_pCheckBoxActivateOnMouseHover;
+        /** Holds the 'disable host screen saver' check-box instance. */
+        QCheckBox                      *m_pCheckBoxDisableHostScreenSaver;
     /** @} */
 };
