Index: /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.cpp	(revision 55549)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.cpp	(revision 55550)
@@ -78,4 +78,10 @@
         }
 
+        case KVBoxEventType_OnEventSourceChanged:
+        {
+            emit sigEventSourceChange();
+            break;
+        }
+
         case KVBoxEventType_OnMachineStateChanged:
         {
Index: /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.h	(revision 55549)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.h	(revision 55550)
@@ -50,4 +50,7 @@
     /** Notifies about the VBoxSVC become @a fAvailable. */
     void sigVBoxSVCAvailabilityChange(bool fAvailable);
+
+    /** Notifies about event-source state change (listener added or removed). */
+    void sigEventSourceChange();
 
     /** Notifies about @a state change event for the machine with @a strId. */
Index: /trunk/src/VBox/Frontends/VirtualBox/src/selector/UISelectorWindow.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/selector/UISelectorWindow.cpp	(revision 55549)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/selector/UISelectorWindow.cpp	(revision 55550)
@@ -155,4 +155,10 @@
 }
 
+void UISelectorWindow::sltEventSourceChange()
+{
+    /* Update actions: */
+    updateActionsAppearance();
+}
+
 void UISelectorWindow::sltStateChanged(QString)
 {
@@ -1551,4 +1557,5 @@
 
     /* Global event handlers: */
+    connect(gVBoxEvents, SIGNAL(sigEventSourceChange()), this, SLOT(sltEventSourceChange()));
     connect(gVBoxEvents, SIGNAL(sigMachineStateChange(QString, KMachineState)), this, SLOT(sltStateChanged(QString)));
     connect(gVBoxEvents, SIGNAL(sigSessionStateChange(QString, KSessionState)), this, SLOT(sltStateChanged(QString)));
Index: /trunk/src/VBox/Frontends/VirtualBox/src/selector/UISelectorWindow.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/selector/UISelectorWindow.h	(revision 55549)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/selector/UISelectorWindow.h	(revision 55550)
@@ -58,4 +58,6 @@
 private slots:
 
+    /** Handles event-source state change (listener added or removed). */
+    void sltEventSourceChange();
     /* Handlers: Global-event stuff: */
     void sltStateChanged(QString strId);
Index: /trunk/src/VBox/Frontends/VirtualBox/src/selector/UIVirtualBoxEventHandler.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/selector/UIVirtualBoxEventHandler.cpp	(revision 55549)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/selector/UIVirtualBoxEventHandler.cpp	(revision 55550)
@@ -82,4 +82,5 @@
     QVector<KVBoxEventType> vboxEvents;
     vboxEvents
+        << KVBoxEventType_OnEventSourceChanged
         << KVBoxEventType_OnMachineStateChanged
         << KVBoxEventType_OnMachineDataChanged
@@ -96,4 +97,7 @@
     connect(pListener->getWrapped(), SIGNAL(sigVBoxSVCAvailabilityChange(bool)),
             this, SIGNAL(sigVBoxSVCAvailabilityChange(bool)),
+            Qt::QueuedConnection);
+    connect(pListener->getWrapped(), SIGNAL(sigEventSourceChange()),
+            this, SIGNAL(sigEventSourceChange()),
             Qt::QueuedConnection);
     connect(pListener->getWrapped(), SIGNAL(sigMachineStateChange(QString, KMachineState)),
Index: /trunk/src/VBox/Frontends/VirtualBox/src/selector/UIVirtualBoxEventHandler.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/selector/UIVirtualBoxEventHandler.h	(revision 55549)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/selector/UIVirtualBoxEventHandler.h	(revision 55550)
@@ -32,4 +32,7 @@
     /** Notifies about the VBoxSVC become @a fAvailable. */
     void sigVBoxSVCAvailabilityChange(bool fAvailable);
+
+    /** Notifies about event-source state change (listener added or removed). */
+    void sigEventSourceChange();
 
     /** Notifies about @a state change event for the machine with @a strId. */
