Fix Bug: Button doesn't work in Category-Album layout 11/36711/1 accepted/tizen/tv/20150312.105841 submit/tizen_tv/20150312.073311
authorKim Tae Soo <taesoo46.kim@samsung.com>
Thu, 12 Mar 2015 07:30:28 +0000 (16:30 +0900)
committerKim Tae Soo <taesoo46.kim@samsung.com>
Thu, 12 Mar 2015 07:30:28 +0000 (16:30 +0900)
Change-Id: I1a5b4776305587ad7fc5bdd0483adfb6abf46c7c
Signed-off-by: Kim Tae Soo <taesoo46.kim@samsung.com>
include/category-layout.h
src/views/category-layout.cpp

index 1a89dcb..848eee2 100644 (file)
@@ -19,7 +19,7 @@
 
 
 class CCategoryLayout : public CExtBaseLayout, public CListenerMgr,
-       public IKeyDownListener, public IMouseMoveListener,
+       public IKeyDownListener, public IMouseClickedListener, public IMouseMoveListener,
        public IRealizedListener, public IUnrealizedListener, public IActivatedListener {
 private:
        struct SCategoryLayout *m;
@@ -132,6 +132,7 @@ public:
        CCategoryLayout(const char *pLayoutId) :
                CExtBaseLayout(pLayoutId),
                IKeyDownListener(this),
+               IMouseClickedListener(this),
                IMouseMoveListener(this),
                IRealizedListener(this),
                IUnrealizedListener(this),
@@ -151,6 +152,7 @@ public:
 
 public:
        virtual void OnKeyDown(int id, Evas *e, Evas_Object *obj, Evas_Event_Key_Down *ev);
+       virtual void OnMouseClicked(int id, Evas_Object *obj);
        virtual void OnMouseMove(int id, Evas *e, Evas_Object *obj, Evas_Event_Mouse_Move *ev);
        virtual void OnRealized(int id, Evas_Object *obj, Elm_Object_Item *item);
        virtual void OnUnrealized(int id, Evas_Object *obj, Elm_Object_Item *item);
index b86e802..ef58b29 100644 (file)
@@ -773,7 +773,7 @@ void CCategoryLayout::m_AddButtons(void)
                elm_object_text_set(m->add_btn[i], _(btninfo[i].name));
                elm_object_style_set(m->add_btn[i], btninfo[i].style);
 
-               Connect(m->add_btn[i], btninfo[ABTN_LAST].type, TYPE_CLICKED | TYPE_MOUSE_MOVE);
+               Connect(m->add_btn[i], btninfo[i].type, TYPE_CLICKED | TYPE_MOUSE_MOVE);
 
                img = elm_image_add(m->add_btn[i]);
                if (img) {
@@ -1390,9 +1390,40 @@ void CCategoryLayout::OnKeyDown(int id, Evas *e, Evas_Object *obj, Evas_Event_Ke
 }
 
 
+void CCategoryLayout::OnMouseClicked(int id, Evas_Object *obj)
+{
+       switch (id)
+       {
+       case CATEGORY_LAYOUT_PLAY_BUTTON:
+               m_GotoPlayback(ADD_TYPE_FRESH, NULL);
+               break;
+
+       case CATEGORY_LAYOUT_NEXT_BUTTON:
+               m_GotoPlayback(ADD_TYPE_NEXT, NULL);
+               break;
+
+       case CATEGORY_LAYOUT_LAST_BUTTON:
+               m_GotoPlayback(ADD_TYPE_END, NULL);
+               break;
+
+       default:
+               break;
+       }
+}
+
+
 void CCategoryLayout::OnMouseMove(int id, Evas *e, Evas_Object *obj, Evas_Event_Mouse_Move *ev)
 {
        switch (id) {
+       case CATEGORY_LAYOUT_PLAY_BUTTON:
+       case CATEGORY_LAYOUT_NEXT_BUTTON:
+       case CATEGORY_LAYOUT_LAST_BUTTON:
+               {
+                       if (!elm_object_focus_get(obj))
+                               elm_object_focus_set(obj, EINA_TRUE);
+               }
+               break;
+
        case CATEGORY_LAYOUT_GENGRID:
                {
                        Elm_Object_Item *item;