--- a/deviceupdatesui/deviceupdates/src/dmfotaview.cpp Thu Sep 02 20:16:47 2010 +0300
+++ b/deviceupdatesui/deviceupdates/src/dmfotaview.cpp Fri Sep 17 08:27:39 2010 +0300
@@ -22,8 +22,11 @@
#include <sysutil.h>
#include <hbscrollarea.h>
#include <etel.h>
+#include <eikenv.h>
#include <featmgr.h>
#include <etelmm.h>
+#include <apgtask.h>
+#include <coemain.h>
#include <hbnotificationdialog.h>
#include <centralrepository.h>
#include <sysversioninfo.h>
@@ -115,6 +118,8 @@
mSoftKeyBackAction = new HbAction(Hb::BackNaviAction ,this);
mSoftKeyBackAction->setText("Back");
+ fotaPortraitView->setNavigationAction(mSoftKeyBackAction);
+ fotaLandscapeView->setNavigationAction(mSoftKeyBackAction);
connect(mSoftKeyBackAction, SIGNAL(triggered()), this, SLOT(backtoMainWindow()));
@@ -547,8 +552,25 @@
void DMFotaView::backtoMainWindow()
{
qDebug("DMFotaView::backtoMainWindow >>");
- qApp->quit();
- qDebug("DMFotaView::backtoMainWindow <<");
+ QString appName = qApp->applicationName();
+ QString cpAppTitle("Control panel");
+ mMainWindow->removeView(fotaPortraitView);
+ mMainWindow->removeView(fotaLandscapeView);
+ fotaPortraitView->deleteLater();
+ fotaLandscapeView->deleteLater();
+ fotaPortraitView = NULL;
+ fotaLandscapeView = NULL;
+ if (appName == cpAppTitle)
+ {
+ TApaTaskList taskList(CEikonEnv::Static()->WsSession());
+ TApaTask task = taskList.FindApp(KControlPanelAppUid);
+ if (task.Exists())
+ {
+ task.BringToForeground();
+ }
+ }
+ qApp->quit();
+ qDebug("DMFotaView::backtoMainWindow <<");
}
// -----------------------------------------------------------------------------