--- 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