Index: /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.cpp	(revision 80542)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.cpp	(revision 80543)
@@ -27,5 +27,7 @@
 #include "COMEnums.h"
 #include "CCanShowWindowEvent.h"
+#include "CClipboardModeChangedEvent.h"
 #include "CCursorPositionChangedEvent.h"
+#include "CDnDModeChangedEvent.h"
 #include "CEvent.h"
 #include "CEventSource.h"
@@ -523,5 +525,16 @@
             break;
         }
-
+        case KVBoxEventType_OnClipboardModeChanged:
+        {
+            CClipboardModeChangedEvent comEventSpecific(pEvent);
+            emit sigClipboardModeChange(comEventSpecific.GetClipboardMode());
+            break;
+        }
+        case KVBoxEventType_OnDnDModeChanged:
+        {
+            CDnDModeChangedEvent comEventSpecific(pEvent);
+            emit sigDnDModeChange(comEventSpecific.GetDndMode());
+            break;
+        }
         default: break;
     }
@@ -534,3 +547,2 @@
 
 #include "UIMainEventListener.moc"
-
Index: /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.h	(revision 80542)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.h	(revision 80543)
@@ -167,4 +167,8 @@
         /** Notifies about audio adapter state change. */
         void sigAudioAdapterChange();
+        /** Notifies about the clipboard mode change. */
+        void sigClipboardModeChange(KClipboardMode enmClipboardMode);
+        /** Notifies about the drag and drop mode change. */
+        void sigDnDModeChange(KDnDMode enmDnDMode);
     /** @} */
 
@@ -216,3 +220,2 @@
 
 #endif /* !FEQT_INCLUDED_SRC_globals_UIMainEventListener_h */
-
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp	(revision 80542)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp	(revision 80543)
@@ -800,4 +800,14 @@
     emit sigAudioAdapterChange();
 
+}
+
+void UISession::sltClipboardModeChange(KClipboardMode enmMode)
+{
+    emit sigClipboardModeChange(enmMode);
+}
+
+void UISession::sltDnDModeChange(KDnDMode enmMode)
+{
+    emit sigDnDModeChange(enmMode);
 }
 
@@ -1189,4 +1199,10 @@
     connect(gConsoleEvents, SIGNAL(sigAudioAdapterChange()),
             this, SLOT(sltAudioAdapterChange()));
+
+    connect(gConsoleEvents, SIGNAL(sigClipboardModeChange(KClipboardMode)),
+            this, SLOT(sltClipboardModeChange(KClipboardMode)));
+
+    connect(gConsoleEvents, SIGNAL(sigDnDModeChange(KDnDMode)),
+            this, SLOT(sltDnDModeChange(KDnDMode)));
 }
 
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.h	(revision 80542)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.h	(revision 80543)
@@ -336,4 +336,6 @@
     void sigGuestMonitorChange(KGuestMonitorChangedEventType changeType, ulong uScreenId, QRect screenGeo);
     void sigAudioAdapterChange();
+    void sigClipboardModeChange(KClipboardMode enmMode);
+    void sigDnDModeChange(KDnDMode enmMode);
 
     /** Notifies about host-screen count change. */
@@ -388,4 +390,8 @@
     /** Handles audio adapter change. */
     void sltAudioAdapterChange();
+    /** Handles clip board mode change. */
+    void sltClipboardModeChange(KClipboardMode enmMode);
+    /** Handles drag and drop mode change. */
+    void sltDnDModeChange(KDnDMode enmMode);
 
     /* Handlers: Display reconfiguration stuff: */
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/information/UIInformationRuntime.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/information/UIInformationRuntime.cpp	(revision 80542)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/information/UIInformationRuntime.cpp	(revision 80543)
@@ -80,7 +80,9 @@
 
     UIRuntimeInfoWidget(QWidget *pParent, const CMachine &machine, const CConsole &console);
-    void guestMonitorChange(ulong uScreenId);
-    void guestAdditionStateChange();
-    void VRDEChange();
+    void updateScreenInfo(int iScreenId = -1);
+    void updateGAsVersion();
+    void updateVRDE();
+    void updateClipboardMode(KClipboardMode enmMode = KClipboardMode_Max);
+    void updateDnDMode(KDnDMode enmMode = KDnDMode_Max);
 
 protected:
@@ -97,8 +99,7 @@
 
     void createInfoRows();
-    void updateScreenInfo(int iScreenId = -1);
     void updateUpTime();
-    void updateGAsVersion();
-    void updateVRDE();
+
+
     /** Searches the table for the @p item of enmLine and replaces its text. if not found inserts a new
       * row to the end of the table. Assumes only one line of the @p enmLine exists. */
@@ -234,5 +235,5 @@
 {
     setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
-
+    setAlternatingRowColors(true);
     m_iFontHeight = QFontMetrics(font()).height();
 
@@ -266,20 +267,4 @@
     computeMinimumWidth();
 }
-
-void UIRuntimeInfoWidget::guestMonitorChange(ulong uScreenId)
-{
-    updateScreenInfo(uScreenId);
-}
-
-void UIRuntimeInfoWidget::guestAdditionStateChange()
-{
-    updateGAsVersion();
-}
-
-void UIRuntimeInfoWidget::VRDEChange()
-{
-    updateVRDE();
-}
-
 
 void UIRuntimeInfoWidget::retranslateUi()
@@ -423,9 +408,28 @@
 void UIRuntimeInfoWidget::updateVRDE()
 {
-    /* VRDE information: */
     int iVRDEPort = m_console.GetVRDEServerInfo().GetPort();
     QString strVRDEInfo = (iVRDEPort == 0 || iVRDEPort == -1) ?
         m_strNotAvailable : QString("%1").arg(iVRDEPort);
    updateInfoRow(InfoRow_RemoteDesktop, QString("%1:").arg(m_strRemoteDesktopLabel), strVRDEInfo);
+}
+
+void UIRuntimeInfoWidget::updateClipboardMode(KClipboardMode enmMode /* = KClipboardMode_Max */)
+{
+    if (enmMode == KClipboardMode_Max)
+        updateInfoRow(InfoRow_ClipboardMode, QString("%1:").arg(m_strClipboardModeLabel),
+                      gpConverter->toString(m_machine.GetClipboardMode()));
+    else
+        updateInfoRow(InfoRow_ClipboardMode, QString("%1:").arg(m_strClipboardModeLabel),
+                      gpConverter->toString(enmMode));
+}
+
+void UIRuntimeInfoWidget::updateDnDMode(KDnDMode enmMode /* = KDnDMode_Max */)
+{
+    if (enmMode == KDnDMode_Max)
+        updateInfoRow(InfoRow_DnDMode, QString("%1:").arg(m_strDragAndDropLabel),
+                  gpConverter->toString(m_machine.GetDnDMode()));
+    else
+        updateInfoRow(InfoRow_DnDMode, QString("%1:").arg(m_strDragAndDropLabel),
+                      gpConverter->toString(enmMode));
 }
 
@@ -452,8 +456,4 @@
     updateUpTime();
 
-    /* Determine clipboard mode: */
-    QString strClipboardMode = gpConverter->toString(m_machine.GetClipboardMode());
-    /* Determine Drag&Drop mode: */
-    QString strDnDMode = gpConverter->toString(m_machine.GetDnDMode());
 
     /* Determine virtualization attributes: */
@@ -496,7 +496,6 @@
         strOSType = uiCommon().vmGuestOSTypeDescription(strOSType);
 
-
-    insertInfoRow(InfoRow_ClipboardMode, QString("%1:").arg(m_strClipboardModeLabel), strClipboardMode);
-    insertInfoRow(InfoRow_DnDMode, QString("%1:").arg(m_strDragAndDropLabel), strDnDMode);
+    updateClipboardMode();
+    updateDnDMode();
     insertInfoRow(InfoRow_ExecutionEngine, QString("%1:").arg(m_strExcutionEngineLabel), strExecutionEngine);
     insertInfoRow(InfoRow_NestedPaging, QString("%1:").arg(m_strNestedPagingLabel), strNestedPaging);
@@ -506,5 +505,4 @@
     insertInfoRow(InfoRow_GuestOSType, QString("%1:").arg(m_strGuestOSTypeLabel), strOSType);
     updateVRDE();
-
 
     resizeColumnToContents(0);
@@ -1119,4 +1117,6 @@
     connect(pSession, &UISession::sigGuestMonitorChange, this, &UIInformationRuntime::sltGuestMonitorChange);
     connect(pSession, &UISession::sigVRDEChange, this, &UIInformationRuntime::sltVRDEChange);
+    connect(pSession, &UISession::sigClipboardModeChange, this, &UIInformationRuntime::sltClipboardChange);
+    connect(pSession, &UISession::sigDnDModeChange, this, &UIInformationRuntime::sltDnDModeChange);
 
     prepareMetrics();
@@ -1371,5 +1371,5 @@
 {
     if (m_pRuntimeInfoWidget)
-        m_pRuntimeInfoWidget->guestAdditionStateChange();
+        m_pRuntimeInfoWidget->updateGAsVersion();
     bool fGuestAdditionsAvailable = guestAdditionsAvailable(6 /* minimum major version */);
     if (m_fGuestAdditionsAvailable == fGuestAdditionsAvailable)
@@ -1384,5 +1384,5 @@
     Q_UNUSED(screenGeo);
     if (m_pRuntimeInfoWidget)
-        m_pRuntimeInfoWidget->guestMonitorChange(uScreenId);
+        m_pRuntimeInfoWidget->updateScreenInfo(uScreenId);
 }
 
@@ -1390,5 +1390,17 @@
 {
     if (m_pRuntimeInfoWidget)
-        m_pRuntimeInfoWidget->VRDEChange();
+        m_pRuntimeInfoWidget->updateVRDE();
+}
+
+void UIInformationRuntime::sltClipboardChange(KClipboardMode enmMode)
+{
+    if (m_pRuntimeInfoWidget)
+        m_pRuntimeInfoWidget->updateClipboardMode(enmMode);
+}
+
+void UIInformationRuntime::sltDnDModeChange(KDnDMode enmMode)
+{
+    if (m_pRuntimeInfoWidget)
+        m_pRuntimeInfoWidget->updateDnDMode(enmMode);
 }
 
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/information/UIInformationRuntime.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/information/UIInformationRuntime.h	(revision 80542)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/information/UIInformationRuntime.h	(revision 80543)
@@ -157,4 +157,6 @@
     void sltGuestMonitorChange(KGuestMonitorChangedEventType changeType, ulong uScreenId, QRect screenGeo);
     void sltVRDEChange();
+    void sltClipboardChange(KClipboardMode enmMode);
+    void sltDnDModeChange(KDnDMode enmMode);
 
 private:
