From: Denis Dolzhenko Date: Wed, 7 Jun 2017 08:18:40 +0000 (+0300) Subject: Fix execution of default app_control X-Git-Tag: submit/tizen/20170608.100456^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F18%2F132718%2F1;p=profile%2Fmobile%2Fapps%2Fnative%2Fmessage.git Fix execution of default app_control Change-Id: I48da7fbba4b8b1d4f5bdb7e2c3e77a37d93da24d Signed-off-by: Denis Dolzhenko --- diff --git a/src/Common/Controller/src/NaviFrameController.cpp b/src/Common/Controller/src/NaviFrameController.cpp index 2829a385..f01b8e3a 100644 --- a/src/Common/Controller/src/NaviFrameController.cpp +++ b/src/Common/Controller/src/NaviFrameController.cpp @@ -70,7 +70,6 @@ bool NaviFrameController::prepare(const AppControlCommand &cmd) void NaviFrameController::execCmd(const AppControlDefaultRef &cmd) { if (prepare(*cmd)) { - AppControlLauncher::getInst().terminate(); AppControlDefault::DefaultType type = cmd->getDefaultType(); MsgThread *thread = getTopFrame(); // Check if thread is open if (!thread) @@ -80,14 +79,14 @@ void NaviFrameController::execCmd(const AppControlDefaultRef &cmd) MessageRef msg = getMsgEngine().getStorage().getMessage(cmd->getMessageId()); //To avoid opening conversation if MsgId is invalid if (type != AppControlDefault::MainType && msg != nullptr) { if (conv) { + AppControlLauncher::getInst().terminate(); promote(*conv); conv->execCmd(cmd); - } else if (!conv) { - if (type == AppControlDefault::ViewType || type == AppControlDefault::ReplyType || isUnreadNotificationSingle(type)) { - auto *conversation = new Conversation(*this); - push(*conversation); - conversation->execCmd(cmd); - } + } else if (type == AppControlDefault::ViewType || type == AppControlDefault::ReplyType || isUnreadNotificationSingle(type)) { + AppControlLauncher::getInst().terminate(); + conv = new Conversation(*this); + push(*conv); + conv->execCmd(cmd); } } }