homescreenapp/stateplugins/hsmenuworkerstateplugin/src/hsuninstallitemstate.cpp
changeset 92 6727c5d0afc7
parent 85 35368b604b28
child 96 458d8c8d9580
--- a/homescreenapp/stateplugins/hsmenuworkerstateplugin/src/hsuninstallitemstate.cpp	Thu Sep 02 20:17:27 2010 +0300
+++ b/homescreenapp/stateplugins/hsmenuworkerstateplugin/src/hsuninstallitemstate.cpp	Fri Sep 17 08:27:54 2010 +0300
@@ -27,6 +27,7 @@
 #include <QScopedPointer>
 #include <QStandardItemModel>
 #include <QStandardItem>
+#include <QStateMachine>
 #include <casoftwareregistry.h>
 #include <caquery.h>
 #include <canotifier.h>
@@ -35,6 +36,8 @@
 #include "hsmenuevent.h"
 #include "hsmenudialogfactory.h"
 #include "hsmenuentryremovedhandler.h"
+#include "hsmenueventfactory.h"
+
 /*!
  \class HsUninstallItemState
  \ingroup group_hsworkerstateplugin
@@ -111,7 +114,9 @@
 void HsUninstallItemState::uninstallMessageFinished(HbAction* finishedAction)
 {
     if (static_cast<QAction*>(finishedAction) == mConfirmAction) {
-        HsMenuService::executeAction(mItemId, Hs::removeActionIdentifier);
+
+        HsMenuService::executeAction(mItemId, Hs::removeActionIdentifier, 
+                this, SLOT(uninstallFailed(int)));
     }
     mConfirmAction = NULL;
     mUninstallMessage = NULL;
@@ -187,6 +192,23 @@
     mItemId = 0;
 }
 
+#ifdef COVERAGE_MEASUREMENT
+#pragma CTC SKIP
+#endif //COVERAGE_MEASUREMENT (only returns HbMainWindow)
+/*!
+ Slot invoked when unninstallation failed.
+ \param error Uninstallation error.
+ \retval void
+ */
+void HsUninstallItemState::uninstallFailed(int error)
+{
+    machine()->postEvent(
+            HsMenuEventFactory::createUninstallFailedEvent(error));
+}
+#ifdef COVERAGE_MEASUREMENT
+#pragma CTC ENDSKIP
+#endif //COVERAGE_MEASUREMENT
+
 /*!
  Method create uninstall confirmation message.
  \retval void