TizenRefApp-7250 Back button doesn't close Conversation view 28/89428/1
authorDenis Dolzhenko <d.dolzhenko@samsung.com>
Fri, 23 Sep 2016 11:45:31 +0000 (14:45 +0300)
committerDenis Dolzhenko <d.dolzhenko@samsung.com>
Fri, 23 Sep 2016 11:45:31 +0000 (14:45 +0300)
Change-Id: Iea750762a2408e67239843a333add9df4cce4077
Signed-off-by: Denis Dolzhenko <d.dolzhenko@samsung.com>
src/Common/Controller/src/NaviFrameController.cpp
src/Common/View/src/NaviFrameView.cpp
src/Conversation/Body/View/src/BodyView.cpp
src/Conversation/Main/Controller/src/Conversation.cpp

index 01f7388f873e346c0f4512100f348ae84c7c195c..f5e774e8699607fb3356d20f2ed3a593b8394e08 100644 (file)
@@ -103,7 +103,11 @@ void NaviFrameController::execCmd(const AppControlComposeRef &cmd)
     if(prepare(*cmd))
     {
         Conversation *conv = getTopFrame<Conversation>();
-        if(!conv)
+        if(conv)
+        {
+            promote(*conv);
+        }
+        else
         {
             conv = new Conversation(*this);
             push(*conv);
index 5e600ae29b1921f27c7b9acb21e4b4d594fb872e..cd1fb04a43a3d7ec9d18e19932aecef197f4eb57 100644 (file)
@@ -182,7 +182,7 @@ void NaviFrameView::insertToBottom(NaviFrameItem &item)
 
 void NaviFrameView::promote(NaviFrameItem &item)
 {
-    bool isTop = &item != getTopFrame();
+    bool isTop = &item == getTopFrame();
     if(!isTop)
     {
         m_TransitionStatus = true;
index 4cd9221540e6daa3bf203c6ef10fdc81648d6c2a..421c107ff4ba31daa4a0d6c3004ca230e30a829b 100644 (file)
@@ -77,6 +77,10 @@ void BodyView::setText(const std::string &text)
             free(markupText);
         }
     }
+    else
+    {
+        clear();
+    }
 }
 
 void BodyView::setFocus(bool focus)
index 74a366bd81b3196eb2a3ff291608bfb6be4bb03b..32b3f860e855826778f0965232bd29b9b0a08746 100644 (file)
@@ -1264,11 +1264,12 @@ void Conversation::onNoRecipDiscardButtonClicked(Popup &popup, int buttonId)
 {
     if(isDefferedCmd())
     {
+        m_pBody->clear();
         if(m_DefferedCmd.defaultCmd)
         {   // If we came from notification menu and unread threads will be more than one, we should to go back on thread list view
             if(m_DefferedCmd.defaultCmd->getDefaultType() == AppControlDefault::NotificationType && getMsgEngine().getStorage().getUnreadThreadCount() > 1)
             {
-                    pop();
+                pop();
             }
             else
             {   // Go to needed conversation