#include "FWebCtrl_CertificateConfirmPopup.h"
#include "FWebCtrl_EflWebkit.h"
#include "FWebCtrl_Utility.h"
+#include "FWebCtrl_WebImpl.h"
using namespace Tizen::Base;
}
if (__certPopupMode == CERTIFICATE_POPUP_MODE_VIEW )
{
- delete this;
+ GetOwner()->SendUserEvent(ID_CERTIFICATE_CONFIRM_POPUP_CLOSE, null);
}
}
#include <FUi_ResourceManager.h>
#include <FUiCtrl_TextBoxImpl.h>
#include "FWebCtrl_PromptPopup.h"
+#include "FWebCtrl_WebImpl.h"
using namespace Tizen::Base;
SysAssertf(false, "unknown action ID used");
break;
}
- delete this;
+ GetOwner()->SendUserEvent(ID_PROMPT_POPUP_CLOSE, null);
}
namespace Tizen { namespace Ui { namespace Controls
{
-class Popup;
+class EditField;
}}} // Tizen::Ui::Controls
namespace Tizen { namespace Web { namespace Controls
#include "FWebCtrl_EflWebkit.h"
#include "FWebCtrl_UserConfirmPopup.h"
#include "FWebCtrl_Utility.h"
+#include "FWebCtrl_WebImpl.h"
using namespace Tizen::Base;
if (!__sync)
{
- delete this;
+ GetOwner()->SendUserEvent(ID_USER_CONFIRM_POPUP_CLOSE, null);
}
}
Canvas*
-_Web::OnCanvasRequestedFN(const FloatRectangle& bounds)
+_Web::OnCanvasRequestedN(const FloatRectangle& bounds)
{
result r = E_SUCCESS;
virtual bool OnTapGestureDetected(Tizen::Ui::_TouchTapGestureDetector& gesture);
virtual bool OnTapGestureCanceled(Tizen::Ui::_TouchTapGestureDetector& gesture);
- virtual Tizen::Graphics::Canvas* OnCanvasRequestedFN(const Tizen::Graphics::FloatRectangle& size);
+ virtual Tizen::Graphics::Canvas* OnCanvasRequestedN(const Tizen::Graphics::FloatRectangle& size);
virtual Tizen::Graphics::Bitmap* OnCapturedBitmapRequestedN(void);
private:
result r = E_SUCCESS;
_WebImpl* pImpl = reinterpret_cast< _WebImpl* >(pUserData);
+
String msg(pMessage);
String defVal(pDefaultValue);
- std::unique_ptr< _PromptPopup > pPromptPopup(new (std::nothrow) _PromptPopup());
- SysTryCatch(NID_WEB_CTRL, pPromptPopup.get(), , E_OUT_OF_MEMORY, "Memory allocation failed.");
-
- r = pPromptPopup->Construct(msg, defVal, pView);
- SysTryCatch(NID_WEB_CTRL, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
-
- pPromptPopup->SetOwner(&pImpl->GetPublic());
-
- r = pPromptPopup->ShowPopup();
+ r = pImpl->ShowPromptPopup(msg, defVal);
SysTryCatch(NID_WEB_CTRL, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
- pPromptPopup.release();
-
return EINA_TRUE;
CATCH:
, __pAuthChallenge(null)
, __pAuthPopup(null)
, __pUserConfirmPopup(null)
+ , __pPromptPopup(null)
, __pCertConfirmPopup(null)
, __pSelectBox(null)
, __pDatePicker(null)
return r;
}
+
+result
+_WebImpl::ShowPromptPopup(String msg, String defVal)
+{
+ result r = E_SUCCESS;
+
+ std::unique_ptr< _PromptPopup > pPromptPopup(new (std::nothrow) _PromptPopup());
+ SysTryReturnResult(NID_WEB_CTRL, pPromptPopup.get(), E_OUT_OF_MEMORY, "Memory Allocation failed.");
+
+ r = pPromptPopup->Construct(msg, defVal, __pWebCore->GetWebNativeNode());
+ SysTryReturn(NID_WEB_CTRL, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
+
+ __pPromptPopup = std::move(pPromptPopup);
+
+ __pPromptPopup->SetOwner(&GetPublic());
+
+ r = __pPromptPopup->ShowPopup();
+ SysTryCatch(NID_WEB_CTRL, r == E_SUCCESS, , r, "[%s] Propagating.", GetErrorMessage(r));
+
+ return E_SUCCESS;
+
+CATCH:
+ __pPromptPopup.reset();
+
+ return r;
+
+}
+
+
result
_WebImpl::ShowUserConfirmPopup(_UserConfirmMode userConfirmMode, void* pPolicy, String msg)
{
return r;
}
+
result
_WebImpl::ShowUserConfirmPopupAsync(_UserConfirmMode userConfirmMode, void* pPolicy, String msg)
{
}
+void
+_WebImpl::OnUserEventReceivedN(RequestId requestId, Tizen::Base::Collection::IList* pArgs)
+{
+ switch (requestId)
+ {
+ case ID_CERTIFICATE_CONFIRM_POPUP_CLOSE:
+ __pCertConfirmPopup.reset();
+ break;
+ case ID_PROMPT_POPUP_CLOSE:
+ __pPromptPopup.reset();
+ break;
+ case ID_USER_CONFIRM_POPUP_CLOSE:
+ __pUserConfirmPopup.reset();
+ break;
+ default:
+ break;
+ }
+}
+
+
_WebDataHandler*
_WebImpl::GetDownloadHandler(void) const
{
#include <FUiITextEventListener.h>
#include <FWebCtrlILoadingListener.h>
#include <FUi_ContainerImpl.h>
+#include "FWebCtrl_CertificateConfirmPopup.h"
#include "FWebCtrl_IWebEventListener.h"
#include "FWebCtrl_UserConfirmPopup.h"
-#include "FWebCtrl_CertificateConfirmPopup.h"
namespace Tizen { namespace Base { namespace Collection
{
class HttpHeader;
}}} // Tizen::Net::Http
-namespace Tizen { namespace Sytem
+namespace Tizen { namespace System
{
class _VibratorImpl;
}} // Tizen::Sytem
class _JsBridgeComparer;
class _JsBridgeHashCodeProvider;
class _AuthConfirmPopup;
-class _GeolocationConfirmPopup;
class _PromptPopup;
+class _GeolocationConfirmPopup;
class _WebDataHandler;
class _SelectBox;
class _InputPickerPopup;
SEARCH_NEXT_ASYNC
};
+enum _WebPopupCloseId
+{
+ ID_CERTIFICATE_CONFIRM_POPUP_CLOSE,
+ ID_PROMPT_POPUP_CLOSE,
+ ID_USER_CONFIRM_POPUP_CLOSE
+};
+
class _WebImpl
: public Tizen::Ui::_ContainerImpl
, public Tizen::Ui::ITextEventListener
result ShowCertificateConfirmPopup(_CertificatePopupMode userConfirmMode, Ewk_Certificate_Policy_Decision *pPolicy);
+ result ShowPromptPopup(Tizen::Base::String msg = L"", Tizen::Base::String defVal = L"");
+
result ShowUserConfirmPopup(_UserConfirmMode userConfirmMode, void* pPolicy, Tizen::Base::String msg = L"");
result ShowUserConfirmPopupAsync(_UserConfirmMode userConfirmMode, void* pPolicy, Tizen::Base::String msg = L"");
virtual void OnAncestorVisibleStateChanged(const Tizen::Ui::_Control& control);
+ virtual void OnUserEventReceivedN(RequestId requestId, Tizen::Base::Collection::IList* pArgs);
+
static _WebImpl* CreateWebImplN(Web* pControl, const Tizen::Graphics::Rectangle& bounds);
static _WebImpl* CreateWebImplN(Web* pControl, const Tizen::Graphics::FloatRectangle& bounds);
std::unique_ptr<_AuthConfirmPopup> __pAuthPopup;
std::unique_ptr<_UserConfirmPopup> __pUserConfirmPopup;
-
+ std::unique_ptr< _PromptPopup > __pPromptPopup;
std::unique_ptr<_CertificateConfirmPopup> __pCertConfirmPopup;
std::unique_ptr<_SelectBox> __pSelectBox;