TizenRefApp-4985 Use elm_object_item_part_content_unset() to hide custom navi-title... 06/51706/1
authorDmytro Dragan <dm.dragan@samsung.com>
Thu, 12 Nov 2015 11:06:58 +0000 (13:06 +0200)
committerDmytro Dragan <dm.dragan@samsung.com>
Thu, 12 Nov 2015 12:15:41 +0000 (14:15 +0200)
Change-Id: Ib1bff29213adcdbe8e5e3b829dc1929cc25b5cb0
Signed-off-by: Dmytro Dragan <dm.dragan@samsung.com>
src/Common/View/inc/NaviFrameItem.h
src/Common/View/src/NaviFrameItem.cpp

index 7c982f0..deaae9b 100644 (file)
@@ -64,6 +64,9 @@ namespace Msg
             virtual void onViewItemCreated();
 
         private:
+            void setTitleVisibility(bool visible);
+
+        private:
             NaviFrameView &m_Owner;
             NaviBar *m_pNaviBar;
     };
index 35b74fb..e1728f0 100644 (file)
@@ -77,6 +77,19 @@ const NaviFrameView &NaviFrameItem::getOwner() const
     return m_Owner;
 }
 
+void NaviFrameItem::setTitleVisibility(bool visible)
+{
+    if (visible)
+    {
+        setContent(*m_pNaviBar, naviTitlePart);
+        evas_object_show(*m_pNaviBar);
+    }
+    else
+    {
+        evas_object_hide(elm_object_item_part_content_unset(getElmObjItem(), naviTitlePart));
+    }
+}
+
 NaviFrameItem::NaviBar::NaviBar(NaviFrameItem &onwer)
     : m_Owner(onwer)
     , ButtonList()
@@ -108,12 +121,9 @@ const NaviFrameItem &NaviFrameItem::NaviBar::getOwner() const
     return m_Owner;
 }
 
-//TODO: fix show (update title part in naviframe item manually)
 void NaviFrameItem::NaviBar::setVisible(bool visible)
 {
-    const char *sig = visible ? "title,state,show" :"title,state,hide";
-    emitSignal(sig, "*");
-    elm_naviframe_item_title_visible_set(getOwner(), visible);
+    getOwner().setTitleVisibility(visible);
 }
 
 void NaviFrameItem::NaviBar::setTitle(const std::string &title)