Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineWindow.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineWindow.cpp	(revision 90566)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineWindow.cpp	(revision 90567)
@@ -112,4 +112,7 @@
     prepareMachineView();
 
+    /* Prepare notification-center: */
+    prepareNotificationCenter();
+
     /* Prepare handlers: */
     prepareHandlers();
@@ -151,4 +154,7 @@
     /* Cleanup visual-state: */
     cleanupVisualState();
+
+    /* Cleanup notification-center: */
+    cleanupNotificationCenter();
 
     /* Cleanup machine-view: */
@@ -519,4 +525,9 @@
 }
 
+void UIMachineWindow::prepareNotificationCenter()
+{
+    // for now it will be added from within particular visual mode windows ..
+}
+
 void UIMachineWindow::prepareHandlers()
 {
@@ -535,4 +546,9 @@
     /* Unregister keyboard-handler: */
     machineLogic()->keyboardHandler()->cleanupListener(m_uScreenId);
+}
+
+void UIMachineWindow::cleanupNotificationCenter()
+{
+    // for now it will be removed from within particular visual mode windows ..
 }
 
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineWindow.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineWindow.h	(revision 90566)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineWindow.h	(revision 90567)
@@ -164,4 +164,5 @@
     virtual void prepareStatusBar() {}
     virtual void prepareMachineView();
+    virtual void prepareNotificationCenter();
     virtual void prepareVisualState() {}
     virtual void prepareHandlers();
@@ -172,4 +173,5 @@
     virtual void cleanupHandlers();
     virtual void cleanupVisualState() {}
+    virtual void cleanupNotificationCenter();
     virtual void cleanupMachineView();
     virtual void cleanupStatusBar() {}
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp	(revision 90566)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp	(revision 90567)
@@ -45,4 +45,5 @@
 #include "UIMessageCenter.h"
 #include "UIMousePointerShapeData.h"
+#include "UINotificationCenter.h"
 #include "UIPopupCenter.h"
 #include "UIWizardFirstRun.h"
@@ -526,4 +527,5 @@
     cleanupFramebuffers();
     cleanupConsoleEventHandlers();
+    cleanupNotificationCenter();
     cleanupSession();
 }
@@ -939,4 +941,5 @@
     if (!prepareSession())
         return false;
+    prepareNotificationCenter();
     prepareConsoleEventHandlers();
     prepareFramebuffers();
@@ -1009,4 +1012,9 @@
     /* True by default: */
     return true;
+}
+
+void UISession::prepareNotificationCenter()
+{
+    UINotificationCenter::create();
 }
 
@@ -1354,4 +1362,9 @@
 }
 
+void UISession::cleanupNotificationCenter()
+{
+    UINotificationCenter::destroy();
+}
+
 void UISession::cleanupSession()
 {
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.h	(revision 90566)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.h	(revision 90567)
@@ -395,4 +395,5 @@
     bool prepare();
     bool prepareSession();
+    void prepareNotificationCenter();
     void prepareConsoleEventHandlers();
     void prepareFramebuffers();
@@ -414,4 +415,5 @@
     void cleanupFramebuffers();
     void cleanupConsoleEventHandlers();
+    void cleanupNotificationCenter();
     void cleanupSession();
     void cleanup();
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineWindowFullscreen.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineWindowFullscreen.cpp	(revision 90566)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineWindowFullscreen.cpp	(revision 90567)
@@ -32,4 +32,5 @@
 #include "UIMachineWindowFullscreen.h"
 #include "UIMachineView.h"
+#include "UINotificationCenter.h"
 #if   defined(VBOX_WS_WIN) || defined(VBOX_WS_X11)
 # include "UIMachineDefs.h"
@@ -216,4 +217,10 @@
 
     showMinimized();
+}
+
+void UIMachineWindowFullscreen::prepareNotificationCenter()
+{
+    if (gpNotificationCenter && (m_uScreenId == 0))
+        gpNotificationCenter->setParent(centralWidget());
 }
 
@@ -325,4 +332,10 @@
     /* Call to base-class: */
     UIMachineWindow::cleanupVisualState();
+}
+
+void UIMachineWindowFullscreen::cleanupNotificationCenter()
+{
+    if (gpNotificationCenter && (gpNotificationCenter->parent() == centralWidget()))
+        gpNotificationCenter->setParent(0);
 }
 
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineWindowFullscreen.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineWindowFullscreen.h	(revision 90566)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineWindowFullscreen.h	(revision 90567)
@@ -88,4 +88,6 @@
 private:
 
+    /** Prepare notification-center routine. */
+    void prepareNotificationCenter();
     /** Prepare visual-state routine. */
     void prepareVisualState();
@@ -101,4 +103,6 @@
     /** Cleanup visual-state routine. */
     void cleanupVisualState();
+    /** Cleanup notification-center routine. */
+    void cleanupNotificationCenter();
 
     /** Updates geometry according to visual-state. */
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.cpp	(revision 90566)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.cpp	(revision 90567)
@@ -37,4 +37,5 @@
 #include "UIMachineLogic.h"
 #include "UIMachineView.h"
+#include "UINotificationCenter.h"
 #include "UIIconPool.h"
 #include "UISession.h"
@@ -319,4 +320,10 @@
 }
 
+void UIMachineWindowNormal::prepareNotificationCenter()
+{
+    if (gpNotificationCenter && (m_uScreenId == 0))
+        gpNotificationCenter->setParent(centralWidget());
+}
+
 void UIMachineWindowNormal::prepareVisualState()
 {
@@ -422,4 +429,10 @@
         UICocoaApplication::instance()->unregisterCallbackForStandardWindowButton(this, StandardWindowButtonType_Zoom);
 #endif /* VBOX_WS_MAC */
+}
+
+void UIMachineWindowNormal::cleanupNotificationCenter()
+{
+    if (gpNotificationCenter && (gpNotificationCenter->parent() == centralWidget()))
+        gpNotificationCenter->setParent(0);
 }
 
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.h	(revision 90566)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.h	(revision 90567)
@@ -98,4 +98,6 @@
     /** Prepare status-bar routine. */
     void prepareStatusBar();
+    /** Prepare notification-center routine. */
+    void prepareNotificationCenter();
     /** Prepare visual-state routine. */
     void prepareVisualState();
@@ -105,4 +107,6 @@
     /** Cleanup visual-state routine. */
     void cleanupVisualState();
+    /** Cleanup notification-center routine. */
+    void cleanupNotificationCenter();
     /** Cleanup session connections routine. */
     void cleanupSessionConnections();
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineWindowScale.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineWindowScale.cpp	(revision 90566)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineWindowScale.cpp	(revision 90567)
@@ -33,4 +33,5 @@
 #include "UIMachineWindowScale.h"
 #include "UIMachineView.h"
+#include "UINotificationCenter.h"
 #ifdef VBOX_WS_MAC
 # include "VBoxUtils.h"
@@ -56,4 +57,10 @@
     m_pLeftSpacer->changeSize(0, 0, QSizePolicy::Fixed, QSizePolicy::Fixed);
     m_pRightSpacer->changeSize(0, 0, QSizePolicy::Fixed, QSizePolicy::Fixed);
+}
+
+void UIMachineWindowScale::prepareNotificationCenter()
+{
+    if (gpNotificationCenter && (m_uScreenId == 0))
+        gpNotificationCenter->setParent(centralWidget());
 }
 
@@ -139,4 +146,10 @@
 }
 #endif /* VBOX_WS_MAC */
+
+void UIMachineWindowScale::cleanupNotificationCenter()
+{
+    if (gpNotificationCenter && (gpNotificationCenter->parent() == centralWidget()))
+        gpNotificationCenter->setParent(0);
+}
 
 void UIMachineWindowScale::showInNecessaryMode()
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineWindowScale.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineWindowScale.h	(revision 90566)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineWindowScale.h	(revision 90567)
@@ -40,4 +40,6 @@
     /** Prepare main-layout routine. */
     void prepareMainLayout();
+    /** Prepare notification-center routine. */
+    void prepareNotificationCenter();
 #ifdef VBOX_WS_MAC
     /** Prepare visual-state routine. */
@@ -51,4 +53,6 @@
     void cleanupVisualState();
 #endif /* VBOX_WS_MAC */
+    /** Cleanup notification-center routine. */
+    void cleanupNotificationCenter();
 
     /** Updates visibility according to visual-state. */
