Index: trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp	(revision 51394)
+++ trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp	(revision 51395)
@@ -2252,5 +2252,38 @@
 #endif
         m_pHostLedsState = NULL;
-	}
+    }
+}
+
+void UIMachineLogic::sltShowGlobalPreferences()
+{
+    /* Do not process if window(s) missed! */
+    if (!isMachineWindowsCreated())
+        return;
+
+    /* Just show Global Preferences: */
+    showGlobalPreferences();
+}
+
+void UIMachineLogic::showGlobalPreferences(const QString &strCategory /* = QString() */, const QString &strControl /* = QString() */)
+{
+    /* Do not process if window(s) missed! */
+    if (!isMachineWindowsCreated())
+        return;
+
+    /* Check that we do NOT handling that already: */
+    if (gActionPool->action(UIActionIndex_Simple_Preferences)->data().toBool())
+        return;
+    /* Remember that we handling that already: */
+    gActionPool->action(UIActionIndex_Simple_Preferences)->setData(true);
+
+    /* Create and execute global settings window: */
+    QPointer<UISettingsDialogGlobal> pDialog = new UISettingsDialogGlobal(activeMachineWindow(),
+                                                                          strCategory, strControl);
+    pDialog->execute();
+    if (pDialog)
+        delete pDialog;
+
+    /* Remember that we do NOT handling that already: */
+    gActionPool->action(UIActionIndex_Simple_Preferences)->setData(false);
 }
 
Index: trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.h
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.h	(revision 51394)
+++ trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.h	(revision 51395)
@@ -248,5 +248,11 @@
     void sltSwitchKeyboardLedsToPreviousLeds();
 
+    /** Show Global Preferences. */
+    void sltShowGlobalPreferences();
+
 private:
+
+    /** Show Global Preferences on the page defined by @a strCategory and tab defined by @a strControl. */
+    void showGlobalPreferences(const QString &strCategory = QString(), const QString &strControl = QString());
 
     /* Helpers: */
Index: trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp	(revision 51394)
+++ trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp	(revision 51395)
@@ -699,22 +699,4 @@
 }
 
-void UISession::sltOpenGlobalPreferences()
-{
-    /* Check that we do NOT handling that already: */
-    if (gActionPool->action(UIActionIndex_Simple_Preferences)->data().toBool())
-        return;
-    /* Remember that we handling that already: */
-    gActionPool->action(UIActionIndex_Simple_Preferences)->setData(true);
-
-    /* Create and execute global settings window: */
-    QPointer<UISettingsDialogGlobal> pDialog = new UISettingsDialogGlobal(machineLogic()->activeMachineWindow());
-    pDialog->execute();
-    if (pDialog)
-        delete pDialog;
-
-    /* Remember that we do NOT handling that already: */
-    gActionPool->action(UIActionIndex_Simple_Preferences)->setData(false);
-}
-
 void UISession::sltMousePointerShapeChange(bool fVisible, bool fAlpha, QPoint hotCorner, QSize size, QVector<uint8_t> shape)
 {
Index: trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.h
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.h	(revision 51394)
+++ trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.h	(revision 51395)
@@ -284,7 +284,4 @@
     void sltCloseRuntimeUI();
 
-    /** Open global preferences. */
-    void sltOpenGlobalPreferences();
-
     /* Console events slots */
     void sltMousePointerShapeChange(bool fVisible, bool fAlpha, QPoint hotCorner, QSize size, QVector<uint8_t> shape);
