add patch
[framework/osp/web.git] / src / controls / FWebCtrl_InputPickerPopup.cpp
index 270b007..0826358 100755 (executable)
@@ -63,6 +63,7 @@ _InputPickerPopup::_InputPickerPopup(void)
        , __pEditTime(null)
        , __pSelectionBtn(null)
        , __modal(0)
+       , __isModal(false)
        , __popupHeight(0)
        , __popupWidth(0)
        , __btnHeight(0)
@@ -73,6 +74,10 @@ _InputPickerPopup::_InputPickerPopup(void)
 
 _InputPickerPopup::~_InputPickerPopup(void)
 {
+       if (__isModal == true)
+       {
+               HidePopup();
+       }
 }
 
 
@@ -195,7 +200,6 @@ _InputPickerPopup::Construct(const String& strDate, Ewk_Input_Type inputType, Ti
        r = AddButton(ID_BUTTON_INPUT_DATE_SELECTION);
        SysTryReturn(NID_WEB_CTRL, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
 
-       __pPopup->SetOwner(&pImpl->GetPublic());
        __pPopup->SetPropagatedKeyEventListener(this);
        
        std::unique_ptr<VerticalBoxLayout> pLayout(dynamic_cast< VerticalBoxLayout* >(__pPopup->GetLayoutN()));
@@ -244,7 +248,6 @@ _InputPickerPopup::Construct(const Color& color, Tizen::Web::Controls::_WebImpl*
 
        pColorPicker->SetColor(color);
 
-       __pPopup->SetOwner(&pImpl->GetPublic());
        __pPopup->SetPropagatedKeyEventListener(this);
        r = __pPopup->AddControl(*pColorPicker);
        SysTryReturn(NID_WEB_CTRL, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
@@ -320,7 +323,7 @@ _InputPickerPopup::AddButton(_InputPickerButtonId buttonId)
        _SystemResource* pSysResource = _SystemResource::GetInstance();
        SysAssertf(pSysResource != null, "Failed to get _SystemResource instance");
 
-       buttonStr = pSysResource->GetString("sys_string", "IDS_COM_SK_OK");
+       buttonStr = pSysResource->GetString("sys_string", "IDS_TPLATFORM_BUTTON_OK");
 
        std::unique_ptr<Button> pSelectionBtn(new (std::nothrow) Button());
        SysTryReturnResult(NID_WEB_CTRL, pSelectionBtn.get(), E_OUT_OF_MEMORY, "Memory Allocation Failed.");
@@ -480,6 +483,8 @@ _InputPickerPopup::ShowPopup(void)
        r = __pPopup->SetShowState(true);
        SysTryReturn(NID_WEB_CTRL, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
 
+       __isModal = true;
+
        r = __pPopup->DoModal(__modal);
        SysTryReturn(NID_WEB_CTRL, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
 
@@ -495,6 +500,8 @@ _InputPickerPopup::HidePopup(void)
        r = __pPopup->SetShowState(false);
        SysTryReturn(NID_WEB_CTRL, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
 
+       __isModal = false;
+
        r = __pPopup->EndModal(__modal);
        SysTryReturn(NID_WEB_CTRL, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
 
@@ -504,7 +511,7 @@ _InputPickerPopup::HidePopup(void)
 bool
 _InputPickerPopup::OnKeyPressed(Control& source, const KeyEventInfo& keyEventInfo)
 {
-       return true;
+       return false;
 }
 
 bool
@@ -515,7 +522,7 @@ _InputPickerPopup::OnKeyReleased(Control& source, const KeyEventInfo& keyEventIn
                HidePopup();
        }
 
-       return true;
+       return false;
 }
 
 bool