#include <FUi_ControlManager.h>
#include <FUi_ResourceManager.h>
#include "FWebCtrl_CertificateConfirmPopup.h"
-#include "FWebCtrl_EflWebkit.h"
+#include "FWebCtrl_WebManager.h"
#include "FWebCtrl_Utility.h"
#include "FWebCtrl_WebImpl.h"
: __certPopupMode(CERTIFICATE_POPUP_MODE_USER_CONFIRM)
, __confirm(false)
, __pCertificatePolicyData(null)
+ , __pParent(null)
+ , __pCertificatePopup(null)
+ , __reaction(false)
{
}
{
HandleUserAction(false);
}
+ if (__pCertificatePopup.get())
+ {
+ __pCertificatePopup.reset();
+ }
}
result
-_CertificateConfirmPopup::Construct(_CertificatePopupMode certPopupMode, Ewk_Certificate_Policy_Decision* pPolicy)
+_CertificateConfirmPopup::Construct(_CertificatePopupMode certPopupMode, Ewk_Certificate_Policy_Decision* pPolicy, Tizen::Web::Controls::_CertificateConfirmPopup* pParent)
{
SysTryReturnResult(NID_WEB_CTRL, pPolicy, E_INVALID_ARG, "Certificate Policy pointer is null.");
result r = E_SUCCESS;
int popupMaxHeight = 0;
Rectangle rect(0, 0, 0, 0);
+ __pParent = pParent;
+
ArrayList idList;
r = idList.Construct();
SysTryReturn(NID_WEB_CTRL, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
if( __certPopupMode == CERTIFICATE_POPUP_MODE_VIEW )
{
- titleText = pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_BODY_CERTIFICATES");
- popupMaxHeight = 4*pPopupData->labelDim.height + pPopupData->btnDim.height + 2*pPopupData->sideMargin;
+ titleText = pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_HEADER_SECURITY_CERTIFICATE_ABB");
+ popupMaxHeight = 4*pPopupData->labelDim.height + pPopupData->panelHeight;
rect.height = 4*pPopupData->labelDim.height;
rect.width = pPopupData->labelDim.width;
idList.Add(*(new Integer(ID_BUTTON_CERTIFICATE_CLOSE)));
- titleList.Add(*(new String(pSysResource->GetString("sys_string", "IDS_COM_BODY_DONE"))));
+ titleList.Add(*(new String(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_BUTTON_OK"))));
}
else // CERTIFICATE_POPUP_MODE_CONFIRM
{
- titleText = pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_HEADER_SECURITY_WARNING");
- popupMaxHeight = 2*pPopupData->labelDim.height + pPopupData->btnDim.height + 2*pPopupData->sideMargin;
+ titleText = pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_HEADER_SECURITY_WARNING_ABB");
+ popupMaxHeight = 2*pPopupData->labelDim.height + pPopupData->panelHeight;
rect.height = 2*pPopupData->labelDim.height;
rect.width = pPopupData->labelDim.width;
idList.Add(*(new Integer(ID_BUTTON_CERTIFICATE_VIEW)));
idList.Add(*(new Integer(ID_BUTTON_CERTIFICATE_ALLOW)));
- titleList.Add(*(new String(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_OPT_CANCEL"))));
- titleList.Add(*(new String(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_OPT_VIEW"))));
- titleList.Add(*(new String(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_OPT_ALLOW"))));
+ titleList.Add(*(new String(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_BUTTON_CANCEL_ABB"))));
+ titleList.Add(*(new String(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_BUTTON2_VIEW_CERTIFICATE"))));
+ titleList.Add(*(new String(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_BUTTON_CONTINUE_ABB"))));
}
r = _WebPopup::Construct(true, Dimension(pPopupData->popupDim.width, popupMaxHeight));
SysTryReturnResult(NID_WEB_CTRL, pLabel.get(), E_OUT_OF_MEMORY, "Memory Allocation failed.");
String message = L"";
- message = pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_BODY_SECURITY_CERTIFICATE_PROBLEM_MSG");
+ message = pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_BODY_THERE_ARE_PROBLEMS_WITH_THE_SECURITY_CERTIFICATE_FOR_THIS_SITE_C");
message.Append(L"\n");
message.Append(ewk_certificate_policy_decision_url_get(__pCertificatePolicyData));
r = CreateAndAddButtons(idList, titleList, pButtonPanel);
SysTryReturn(NID_WEB_CTRL, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
- pLayout->SetHorizontalFitPolicy(*pButtonPanel, FIT_POLICY_PARENT);
- pLayout->SetHorizontalAlignment(*pButtonPanel, LAYOUT_HORIZONTAL_ALIGN_CENTER);
-
- pLayout->SetSpacing(*pButtonPanel, 2*pPopupData->sideMargin);
-
SetPropagatedKeyEventListener(this);
return E_SUCCESS;
switch (actionId)
{
case ID_BUTTON_CERTIFICATE_ALLOW:
+ {
+ if (__reaction)
+ {
+ return;
+ }
+
HandleUserAction(true);
break;
+ }
case ID_BUTTON_CERTIFICATE_VIEW:
{
+ if (__reaction)
+ {
+ return;
+ }
+
+ __reaction = true;
std::unique_ptr<_CertificateConfirmPopup> pCertificatePopup(new (std::nothrow) _CertificateConfirmPopup());
SysTryReturnVoidResult(NID_WEB_CTRL, pCertificatePopup.get(), E_OUT_OF_MEMORY, "Memory Allocation failed.");
- r = pCertificatePopup->Construct(CERTIFICATE_POPUP_MODE_VIEW, __pCertificatePolicyData);
+ r = pCertificatePopup->Construct(CERTIFICATE_POPUP_MODE_VIEW, __pCertificatePolicyData, this);
SysTryReturnVoidResult(NID_WEB_CTRL, r == E_SUCCESS, r, "[%s] Propagating.", GetErrorMessage(r));
- r = pCertificatePopup->ShowPopup();
- SysTryReturnVoidResult(NID_WEB_CTRL, r == E_SUCCESS, r, "[%s] Propagating.", GetErrorMessage(r));
+ __pCertificatePopup = std::move(pCertificatePopup);
- pCertificatePopup.release();
+ r = __pCertificatePopup->ShowPopup();
+ SysTryReturnVoidResult(NID_WEB_CTRL, r == E_SUCCESS, r, "[%s] Propagating.", GetErrorMessage(r));
return;
}
case ID_BUTTON_CERTIFICATE_CANCEL:
+ {
+ if (__reaction)
+ {
+ return;
+ }
+
HandleUserAction(false);
break;
+ }
case ID_BUTTON_CERTIFICATE_CLOSE:
+ {
+ if (__reaction)
+ {
+ return;
+ }
+
break;
+ }
default:
SysAssert(false);
{
SysLogException(NID_WEB_CTRL, r, "[%s] Propagating.", GetErrorMessage(r));
}
- if (__certPopupMode == CERTIFICATE_POPUP_MODE_VIEW )
+ if (__certPopupMode == CERTIFICATE_POPUP_MODE_VIEW)
+ {
+ __pParent->SendUserEvent(ID_CERTIFICATE_CONFIRM_POPUP_CLOSE, null);
+ }
+}
+
+
+void
+_CertificateConfirmPopup::OnUserEventReceivedN(RequestId requestId, IList* pArgs)
+{
+ switch (requestId)
+ {
+ case ID_CERTIFICATE_CONFIRM_POPUP_CLOSE:
{
- GetOwner()->SendUserEvent(ID_CERTIFICATE_CONFIRM_POPUP_CLOSE, null);
+ __pCertificatePopup.reset();
+
+ if (__reaction)
+ {
+ __reaction = false;
+ }
+
+ break;
+ }
+ default:
+ break;
}
+
}
+
bool
_CertificateConfirmPopup::OnKeyPressed(Control& source, const KeyEventInfo& keyEventInfo)
{
- return true;
+ return false;
}
bool
{
SysLogException(NID_WEB_CTRL, r, "[%s] Propagating.", GetErrorMessage(r));
}
- if (__certPopupMode == CERTIFICATE_POPUP_MODE_VIEW )
+ if (__certPopupMode == CERTIFICATE_POPUP_MODE_VIEW)
{
- GetOwner()->SendUserEvent(ID_CERTIFICATE_CONFIRM_POPUP_CLOSE, null);
+ __pParent->SendUserEvent(ID_CERTIFICATE_CONFIRM_POPUP_CLOSE, null);
}
}
- return true;
+ return false;
}
bool
SysTryReturn(NID_WEB_CTRL, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
//Issued to
- certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_HEADER_ISSUED_TO_C"));
+ certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_BODY_ISSUED_TO_C"));
certString.Append(L"\n\n");
String subject = certificate.GetSubject();
- certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_HEADER_COMMON_NAME_C"));
+ certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_BODY_COMMON_NAME_C"));
certString.Append(L"\n");
certString.Append(GetStringOfToken(subject, L"/CN=") + L"\n");
- certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_HEADER_ORGANIZATION_C"));
+ certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_BODY_ORGANISATION_C"));
certString.Append(L"\n");
certString.Append(GetStringOfToken(subject, L"/O=") + L"\n");
- certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP ,"IDS_BR_HEADER_ORGANIZATIONAL_UNIT_C"));
+ certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP ,"IDS_TPLATFORM_BODY_ORGANISATIONAL_UNIT_C"));
certString.Append(L"\n");
certString.Append(GetStringOfToken(subject, L"/OU=") + L"\n");
- certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_BODY_CERTIFICATE_SERIAL_NUMBER"));
- certString.Append(L":\n");
+ certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_BODY_SERIAL_NUMBER_C"));
+ certString.Append(L"\n");
certString.Append(certificate.GetSerialNumber() + L"\n\n\n");
//Issued by
- certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_HEADER_ISSUED_BY_C"));
+ certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_BODY_ISSUED_BY_C"));
certString.Append(L"\n\n");
String issuer = certificate.GetIssuer();
- certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_HEADER_COMMON_NAME_C"));
+ certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_BODY_COMMON_NAME_C"));
certString.Append(L"\n");
certString.Append(GetStringOfToken(issuer, L"/CN=") + L"\n");
- certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_HEADER_ORGANIZATION_C"));
+ certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_BODY_ORGANISATION_C"));
certString.Append(L"\n");
certString.Append(GetStringOfToken(issuer, L"/O=") + L"\n");
- certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_HEADER_ORGANIZATIONAL_UNIT_C"));
+ certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_BODY_ORGANISATIONAL_UNIT_C"));
certString.Append(L"\n");
certString.Append(GetStringOfToken(issuer, L"/OU=") + L"\n\n");
//Validity
- certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_HEADER_VALIDITY_C"));
+ certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_BODY_VALIDITY_C"));
certString.Append(L"\n\n");
certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_POP_CERTI_VALID_FROM_C"));
certString.Append(L"\n");
certString.Append(certificate.GetNotAfter() + L"\n\n\n");
//FingerPrints
- certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_BODY_ROOTCERTIFICATES_FINGER_PRINT"));
- certString.Append(L":\n\n");
+ certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_TPLATFORM_BODY_FINGERPRINTS_C"));
+ certString.Append(L"\n\n");
certString.Append(pSysResource->GetString(_RESOURCE_DOMAIN_ID_OSP, "IDS_BR_BODY_SIGNATURE_ALGORITHM_VODA"));
certString.Append(L":\n");
certString.Append(certificate.GetSignatureAlgorithm() + L"\n\n");
{
String fingerPrint;
StringUtil::Utf8ToString((const char*)pFingerPrint->GetPointer(), fingerPrint);
+ fingerPrint.SetLength(pFingerPrint->GetLimit());
certString.Append(fingerPrint + L"\n\n");
}