Source/WebKit2/ChangeLog

 12012-07-15 Hyerim Bae <hyerim.bae@samsung.com>
 2
 3 [EFL][WK2] Add ewk_view_user_agent_set / ewk_view_user_agent_get API.
 4 https://bugs.webkit.org/show_bug.cgi?id=91351
 5
 6 Reviewed by NOBODY (OOPS!).
 7
 8 ewk_view_user_agent_set is for wrapping WKPageSetCustomUserAgent.
 9 Set The userAgent char* as a member of _Ewk_View_Private_Data.
 10
 11 * UIProcess/API/efl/ewk_view.cpp:
 12 (ewk_view_user_agent_set):
 13 (ewk_view_user_agent_get):
 14 * UIProcess/API/efl/ewk_view.h:
 15
1162012-07-15 Christophe Dumez <christophe.dumez@intel.com>
217
318 [EFL][WK2] Define destructors for Ewk structures

Source/WebKit2/UIProcess/API/efl/ewk_view.cpp

2727#include "PageClientImpl.h"
2828#include "WKAPICast.h"
2929#include "WKRetainPtr.h"
 30#include "WKString.h"
3031#include "WKURL.h"
3132#include "ewk_context.h"
3233#include "ewk_context_private.h"

@@struct _Ewk_View_Private_Data {
4950 OwnPtr<PageClientImpl> pageClient;
5051 const char* uri;
5152 const char* title;
 53 const char* userAgent;
5254 LoadingResourcesMap loadingResourcesMap;
5355
5456 _Ewk_View_Private_Data()
5557 : uri(0)
5658 , title(0)
 59 , userAgent(0)
5760 { }
5861
5962 ~_Ewk_View_Private_Data()
6063 {
6164 eina_stringshare_del(uri);
6265 eina_stringshare_del(title);
 66 eina_stringshare_del(userAgent);
6367 }
6468};
6569

@@WebPageProxy* ewk_view_page_get(const Evas_Object* ewkView)
937941
938942 return priv->pageClient->page();
939943}
 944
 945Eina_Bool ewk_view_user_agent_set(Evas_Object* ewkView, const char* userAgent)
 946{
 947 EINA_SAFETY_ON_NULL_RETURN_VAL(userAgent, false);
 948
 949 EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, false);
 950 EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, false);
 951
 952 if (eina_stringshare_replace(&priv->userAgent, userAgent)) {
 953 WKRetainPtr<WKStringRef> userAgentString(AdoptWK, WKStringCreateWithUTF8CString(userAgent));
 954 WKPageSetCustomUserAgent(toAPI(priv->pageClient->page()), userAgentString.get());
 955 }
 956
 957 return true;
 958}
 959
 960const char* ewk_view_user_agent_get(const Evas_Object* ewkView)
 961{
 962 EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, 0);
 963 EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, 0);
 964
 965 if (!priv->userAgent) {
 966 WKRetainPtr<WKStringRef> userAgentString(AdoptWK, WKPageCopyUserAgent(toAPI(priv->pageClient->page())));
 967 eina_stringshare_replace(&priv->userAgent, toImpl(userAgentString.get())->string().utf8().data());
 968 }
 969
 970 return priv->userAgent;
 971}

Source/WebKit2/UIProcess/API/efl/ewk_view.h

@@EAPI float ewk_view_device_pixel_ratio_get(const Evas_Object *o);
393393 */
394394EAPI Eina_Bool ewk_view_device_pixel_ratio_set(Evas_Object *o, float ratio);
395395
 396/**
 397* Queries to set the user agent string.
 398*
 399* @param o view object to set the user agent string
 400*
 401* @return @c EINA_TRUE on success or @c EINA_FALSE on failure
 402*/
 403EAPI Eina_Bool ewk_view_user_agent_set(Evas_Object *o, const char *user_agent);
 404
 405/**
 406* Gets user agent string.
 407*
 408* @param o view object to get the user agent string
 409*
 410* @return @c user agent string
 411*/
 412EAPI const char *ewk_view_user_agent_get(const Evas_Object *o);
 413
396414#ifdef __cplusplus
397415}
398416#endif