Back key enabled for popup
authorAbhismita Ghosh <g.abhismita@samsung.com>
Sat, 29 Jun 2013 08:38:11 +0000 (17:38 +0900)
committerAbhismita Ghosh <g.abhismita@samsung.com>
Sat, 29 Jun 2013 08:38:11 +0000 (17:38 +0900)
Change-Id: I04190bac1aeced2bc26abff9ae884c9e936cf637

inc/GlAlbumListEditorForm.h
inc/GlFileListEditorForm.h
inc/GlSlideShowPopUp.h
src/GlAlbumListEditorForm.cpp
src/GlFileListEditorForm.cpp
src/GlSlideShowPopUp.cpp

index 60708db..ae5dde4 100644 (file)
@@ -35,6 +35,7 @@ class AlbumListEditorForm
        , public IFormContentUpdateEventListener
        , public Tizen::Ui::IActionEventListener
        , public Tizen::Ui::IOrientationEventListener
+       , public Tizen::Ui::IPropagatedKeyEventListener
        , public Tizen::Ui::Controls::Form
        , public Tizen::Ui::Controls::IFormBackEventListener
        , public Tizen::Ui::Controls::IIconListViewItemEventListener
@@ -79,6 +80,11 @@ public:
        virtual void OnFileOpInvalidate(enum FileActionMode actionId);
        virtual void OnFileOpComplete(enum FileActionMode actionId, enum FileActionCompleteRes);
 
+       virtual bool OnKeyPressed(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo){ return true;}
+       virtual bool OnKeyReleased(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo);
+       virtual bool OnPreviewKeyPressed(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo){ return true; }
+       virtual bool OnPreviewKeyReleased(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo){ return true; }
+
 private:
        result InitializeControl(void);
        result InitializePopup(void);
index ceea6eb..7460699 100644 (file)
@@ -39,6 +39,7 @@ class FileListEditorForm
        , public Tizen::Ui::Controls::IFormMenuEventListener
        , public ISlideSettingListener
        , public Tizen::Ui::IActionEventListener
+       , public Tizen::Ui::IPropagatedKeyEventListener
        , public Tizen::Ui::Controls::IFormBackEventListener
        , public Tizen::Ui::IOrientationEventListener
     , public Tizen::Ui::Scenes::ISceneEventListener
@@ -76,6 +77,12 @@ public:
        virtual void OnFormMenuRequested (Tizen::Ui::Controls::Form &source);
 
        virtual void OnOrientationChanged(const Tizen::Ui::Control &source, Tizen::Ui::OrientationStatus orientationStatus);
+
+       virtual bool OnKeyPressed(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo){ return true; }
+       virtual bool OnKeyReleased(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo);
+       virtual bool OnPreviewKeyPressed(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo){ return true; }
+       virtual bool OnPreviewKeyReleased(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo){ return true; }
+
 private:
        result InitializeFooter(void);
        Tizen::Base::String GetDirecotyNameFromFullPath(const Tizen::Base::String& fullPath) const;
index 2579de8..c1e6650 100644 (file)
@@ -34,6 +34,7 @@ class SlideShowPopUp
        , public Tizen::Ui::Controls::IListViewItemProvider
        , public Tizen::Ui::Controls::Popup
        , public Tizen::Ui::IActionEventListener
+       , public Tizen::Ui::IPropagatedKeyEventListener
 {
 public:
        SlideShowPopUp(void);
@@ -60,6 +61,11 @@ public:
 
        virtual void OnActionPerformed(const Tizen::Ui::Control& source, int actionId);
 
+       virtual bool OnKeyPressed(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo){ return true; };
+       virtual bool OnKeyReleased(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo);
+       virtual bool OnPreviewKeyPressed(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo){ return true;};
+       virtual bool OnPreviewKeyReleased(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo){ return true;};
+
 private:
        Tizen::Ui::Controls::ListView* __pList;
        ISlideSettingListener* __pListener;
index 8e3ac3f..25c0950 100644 (file)
@@ -191,6 +191,7 @@ AlbumListEditorForm::InitializePopup(void)
        {
                __pDeletePopup = new (std::nothrow) Popup();
                __pDeletePopup->Construct(false, Dimension(W_DELETE_POPUP, H_DELETE_POPUP));
+               __pDeletePopup->SetPropagatedKeyEventListener(this);
 
                Rectangle popupClientBounds = __pDeletePopup->GetClientAreaBounds();
 
@@ -759,6 +760,18 @@ void AlbumListEditorForm::OnFileOpComplete(enum FileActionMode actionId, enum Fi
        pSceneManager->GoForward(ForwardSceneTransition(IDSCN_ALBUM_LIST));
 }
 
+bool AlbumListEditorForm::OnKeyReleased(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo)
+{
+       AppLogDebug("ENTER");
+
+       if(keyEventInfo.GetKeyCode() == KEY_BACK)
+       {
+               __pDeletePopup->SetShowState(false);
+               __pDeletePopup->Show();
+       }
+       return true;
+}
+
 result
 AlbumListEditorForm::Update(void)
 {
index f229826..0d87e07 100644 (file)
@@ -866,6 +866,7 @@ FileListEditorForm::SetUpPopup(void)
 
        __pDeletePopup = new (std::nothrow) Popup();
        __pDeletePopup->Construct(false, Dimension(W_DELETE_POPUP, H_DELETE_POPUP));
+       __pDeletePopup->SetPropagatedKeyEventListener(this);
 
        Rectangle popupClientBounds = __pDeletePopup->GetClientAreaBounds();
 
@@ -1117,6 +1118,19 @@ FileListEditorForm::OnOrientationChanged(const Tizen::Ui::Control &source, Tizen
        }
 }
 
+bool
+FileListEditorForm::OnKeyReleased(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo)
+{
+       AppLogDebug("ENTER");
+
+       if(keyEventInfo.GetKeyCode() == KEY_BACK)
+       {
+               _overlayMsg = false;
+               __pDeletePopup->SetShowState(false);
+               __pDeletePopup->Invalidate(true);
+       }
+       return true;
+}
 
 result
 FileListEditorForm::MoveToAlbum(const String& destDirectory)
index 7c6a2a4..a15ae72 100644 (file)
@@ -53,6 +53,7 @@ SlideShowPopUp::Initialize(void)
 {
        Button* pCancelButton = null;
        Popup::Construct(L"IDL_SLIDESHOW_SETTING_POPUP");
+       Popup::SetPropagatedKeyEventListener(this);
 
        __pList = static_cast<ListView*>(GetControl(L"IDC_POPUP_LIST"));
 
@@ -108,6 +109,19 @@ SlideShowPopUp::OnListViewItemStateChanged(ListView& listView, int index, int el
        }
 }
 
+bool
+SlideShowPopUp::OnKeyReleased(Control& source, const Tizen::Ui::KeyEventInfo& keyEventInfo)
+{
+       AppLogDebug("ENTER");
+
+       if(keyEventInfo.GetKeyCode() == KEY_BACK)
+       {
+               Popup::SetShowState(false);
+               Popup::Show();
+       }
+       return true;
+}
+
 ListItemBase*
 SlideShowPopUp::CreateItem(int index, int itemWidth)
 {