Index: trunk/src/VBox/Frontends/VirtualBox/src/notificationcenter/UINotificationObjects.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/notificationcenter/UINotificationObjects.cpp	(revision 92033)
+++ trunk/src/VBox/Frontends/VirtualBox/src/notificationcenter/UINotificationObjects.cpp	(revision 92034)
@@ -1155,5 +1155,6 @@
                                           const QString &strDetails,
                                           const QString &strInternalName /* = QString() */,
-                                          const QString &strHelpKeyword /* = QString() */)
+                                          const QString &strHelpKeyword /* = QString() */,
+                                          UINotificationCenter *pParent /* = 0 */)
 {
     /* Check if message suppressed: */
@@ -1165,9 +1166,12 @@
         return;
 
+    /* Choose effective parent: */
+    UINotificationCenter *pEffectiveParent = pParent ? pParent : gpNotificationCenter;
+
     /* Create message finally: */
-    const QUuid uId = gpNotificationCenter->append(new UINotificationMessage(strName,
-                                                                             strDetails,
-                                                                             strInternalName,
-                                                                             strHelpKeyword));
+    const QUuid uId = pEffectiveParent->append(new UINotificationMessage(strName,
+                                                                         strDetails,
+                                                                         strInternalName,
+                                                                         strHelpKeyword));
     if (!strInternalName.isEmpty())
         m_messages[strInternalName] = uId;
@@ -1175,5 +1179,6 @@
 
 /* static */
-void UINotificationMessage::destroyMessage(const QString &strInternalName)
+void UINotificationMessage::destroyMessage(const QString &strInternalName,
+                                           UINotificationCenter *pParent /* = 0 */)
 {
     /* Check if message really exists: */
@@ -1181,6 +1186,9 @@
         return;
 
+    /* Choose effective parent: */
+    UINotificationCenter *pEffectiveParent = pParent ? pParent : gpNotificationCenter;
+
     /* Destroy message finally: */
-    gpNotificationCenter->revoke(m_messages.value(strInternalName));
+    pEffectiveParent->revoke(m_messages.value(strInternalName));
     m_messages.remove(strInternalName);
 }
Index: trunk/src/VBox/Frontends/VirtualBox/src/notificationcenter/UINotificationObjects.h
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/notificationcenter/UINotificationObjects.h	(revision 92033)
+++ trunk/src/VBox/Frontends/VirtualBox/src/notificationcenter/UINotificationObjects.h	(revision 92034)
@@ -49,4 +49,5 @@
 
 /* Forward declarations: */
+class UINotificationCenter;
 class CAudioAdapter;
 class CEmulatedUSB;
@@ -491,12 +492,16 @@
       * @param  strDetails       Brings the message details.
       * @param  strInternalName  Brings the message internal name.
-      * @param  strHelpKeyword   Brings the message help keyword. */
+      * @param  strHelpKeyword   Brings the message help keyword.
+      * @param  pParent          Brings the local notification-center reference. */
     static void createMessage(const QString &strName,
                               const QString &strDetails,
                               const QString &strInternalName = QString(),
-                              const QString &strHelpKeyword = QString());
+                              const QString &strHelpKeyword = QString(),
+                              UINotificationCenter *pParent = 0);
     /** Destroys message.
-      * @param  strInternalName  Brings the message internal name. */
-    static void destroyMessage(const QString &strInternalName);
+      * @param  strInternalName  Brings the message internal name.
+      * @param  pParent          Brings the local notification-center reference. */
+    static void destroyMessage(const QString &strInternalName,
+                               UINotificationCenter *pParent = 0);
 
     /** Holds the IDs of messages registered. */
