Merge "Esc key handling in MessageBox and ProgressPopup Signed-off-by: vipul <vipul...
authorvipul <vipul.kumar@samsung.com>
Wed, 3 Jul 2013 13:43:22 +0000 (13:43 +0000)
committerGerrit Code Review <gerrit@gerrit.vlan144.tizendev.org>
Wed, 3 Jul 2013 13:43:22 +0000 (13:43 +0000)
src/ui/controls/FUiCtrl_MessageBoxPresenter.cpp
src/ui/controls/FUiCtrl_ProgressPopup.cpp
src/ui/inc/FUiCtrl_MessageBoxPresenter.h

index 6902a96..1cc9494 100644 (file)
@@ -616,11 +616,19 @@ _MessageBoxPresenter::ProcessEvent(void)
                        FindButtonAndResult(handle);
                        break;
                }
+       case MSGBOX_BUTTON_CLOSE:
+               SetReturnValue(MSGBOX_RESULT_CLOSE);
+               break;
+
+       case MSGBOX_BUTTON_CANCEL:
+               SetReturnValue(MSGBOX_RESULT_CANCEL);
+               break;
+
                // fall through
        case _ModalLoopManager::MODAL_LOOP_EXIT_CODE_APP_TERMINATION:
        case _ModalLoopManager::MODAL_LOOP_EXIT_CODE_CONTINUOUS_TERMINATION:
-                       _ModalLoopManager::GetInstance()->EndMainLoop(exitCode, false);
-                       __beginModal = false;
+               _ModalLoopManager::GetInstance()->EndMainLoop(exitCode, false);
+               __beginModal = false;
                break;
        }
 
@@ -1443,14 +1451,49 @@ _MessageBoxPresenter::OnKeyReleased(const _Control& source, const _KeyInfo& keyI
 
        if (keyCode == _KEY_ESC || keyCode == _KEY_BACK)
        {
+               MessageBoxStyle style = __pMessageBox->GetMsgBoxStyle();
+
                if ((__pButtonListener->GetBeginModal() == true) || (__beginModal == true))
                {
-                       _ModalLoopManager::GetInstance()->EndMainLoop(MSGBOX_RESULT_CLOSE, false);
-                       __beginModal = false;
+                       if (__pMessageBox->GetTimeout() != 0)
+                       {
+                               switch (style)
+                               {
+                               case MSGBOX_STYLE_NONE:
+                                       // fall through
+                               case MSGBOX_STYLE_OK:
+                                       // fall through
+                               case MSGBOX_STYLE_YESNO:
+                                       // fall through
+                               case MSGBOX_STYLE_ABORTRETRYIGNORE:
+                                       _ModalLoopManager::GetInstance()->EndMainLoop(MSGBOX_BUTTON_CLOSE, false);
+                                       __beginModal = false;
+
+                                       break;
+                               case MSGBOX_STYLE_CANCEL:
+                                       // fall through
+                               case MSGBOX_STYLE_OKCANCEL:
+                                       // fall through
+                               case MSGBOX_STYLE_YESNOCANCEL:
+                                       // fall through
+                               case MSGBOX_STYLE_CANCELTRYCONTINUE:
+                                       // fall through
+                               case MSGBOX_STYLE_RETRYCANCEL:
+                                       _ModalLoopManager::GetInstance()->EndMainLoop(MSGBOX_BUTTON_CANCEL, false);
+                                       __beginModal = false;
+                                       break;
+                               }
+
+                       }
+                       else if (style == MSGBOX_STYLE_CANCEL || style == MSGBOX_STYLE_OKCANCEL || style == MSGBOX_STYLE_YESNOCANCEL
+                                       || style == MSGBOX_STYLE_CANCELTRYCONTINUE || style == MSGBOX_STYLE_RETRYCANCEL)
+                       {
+                               _ModalLoopManager::GetInstance()->EndMainLoop(MSGBOX_BUTTON_CANCEL, false);
+                               __beginModal = false;
+                       }
                }
                return true;
        }
-
        return false;
 }
 
index b9d3e06..09d05ea 100644 (file)
@@ -1031,11 +1031,14 @@ _ProgressPopup::OnKeyReleased(const _Control& source, const _KeyInfo& keyInfo)
 
        if (keyCode == _KEY_ESC || keyCode == _KEY_BACK)
        {
-               FireProgressPopupEvent();
-               _Popup::SetReturnValue(POPUP_RESULT_CANCEL);
+               if (HasButton())
+               {
+                       FireProgressPopupEvent();
+                       _Popup::SetReturnValue(POPUP_RESULT_CANCEL);
+               }
+
                return true;
        }
-
        return false;
 }
 
index d8ce625..fa10d8c 100644 (file)
@@ -161,7 +161,9 @@ private:
 private:
        enum
        {
-               MSGBOX_BUTTON_CLICKED = 0xFF
+               MSGBOX_BUTTON_CLICKED = 0xFF,
+               MSGBOX_BUTTON_CLOSE,
+               MSGBOX_BUTTON_CANCEL
        };
 
 // Attributes