165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch/* 265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * Copyright (C) 2010 Apple Inc. All rights reserved. 365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * 465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * Redistribution and use in source and binary forms, with or without 565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * modification, are permitted provided that the following conditions 665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * are met: 765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * 1. Redistributions of source code must retain the above copyright 865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * notice, this list of conditions and the following disclaimer. 965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * 2. Redistributions in binary form must reproduce the above copyright 1065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * notice, this list of conditions and the following disclaimer in the 1165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * documentation and/or other materials provided with the distribution. 1265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * 1365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' 1465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 1565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 1665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS 1765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 1865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 1965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 2065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 2165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 2265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 2365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch * THE POSSIBILITY OF SUCH DAMAGE. 2465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch */ 2565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 2665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#ifndef WKSharedAPICast_h 2765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#define WKSharedAPICast_h 2865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 2965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include "ImageOptions.h" 3065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include "SameDocumentNavigationType.h" 3165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include "WKBase.h" 3265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include "WKContextMenuItemTypes.h" 3365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include "WKEvent.h" 3465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include "WKFindOptions.h" 3565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include "WKGeometry.h" 3665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include "WKImage.h" 3765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include "WKPageLoadTypes.h" 3865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include "WebError.h" 3965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include "WebEvent.h" 4065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include "WebFindOptions.h" 4165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include "WebNumber.h" 4265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include "WebString.h" 4365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include "WebURL.h" 442fc2651226baac27029e38c9d6ef883fa32084dbSteve Block#include "WebURLRequest.h" 452fc2651226baac27029e38c9d6ef883fa32084dbSteve Block#include "WebURLResponse.h" 4665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include <WebCore/ContextMenuItem.h> 4765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include <WebCore/FloatRect.h> 4865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include <WebCore/FrameLoaderTypes.h> 4965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include <WebCore/IntRect.h> 5065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#include <wtf/TypeTraits.h> 5165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 5265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochnamespace WebKit { 5365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 5465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochclass ImmutableArray; 5565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochclass ImmutableDictionary; 5665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochclass MutableArray; 5765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochclass MutableDictionary; 5865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochclass WebCertificateInfo; 5965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochclass WebContextMenuItem; 6065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochclass WebData; 612fc2651226baac27029e38c9d6ef883fa32084dbSteve Blockclass WebGraphicsContext; 6265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochclass WebImage; 6365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochclass WebSecurityOrigin; 6465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochclass WebSerializedScriptValue; 6565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochclass WebURLRequest; 6665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochclass WebURLResponse; 6765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochclass WebUserContentURLPattern; 6865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 6965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochtemplate<typename APIType> struct APITypeInfo { }; 7065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochtemplate<typename ImplType> struct ImplTypeInfo { }; 7165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 7265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#define WK_ADD_API_MAPPING(TheAPIType, TheImplType) \ 7365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch template<> struct APITypeInfo<TheAPIType> { typedef TheImplType* ImplType; }; \ 7465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch template<> struct ImplTypeInfo<TheImplType*> { typedef TheAPIType APIType; }; 7565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 7665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKArrayRef, ImmutableArray) 7765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKBooleanRef, WebBoolean) 7865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKCertificateInfoRef, WebCertificateInfo) 7965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKContextMenuItemRef, WebContextMenuItem) 8065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKDataRef, WebData) 8165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKDictionaryRef, ImmutableDictionary) 8265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKDoubleRef, WebDouble) 8365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKErrorRef, WebError) 842fc2651226baac27029e38c9d6ef883fa32084dbSteve BlockWK_ADD_API_MAPPING(WKGraphicsContextRef, WebGraphicsContext) 8565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKImageRef, WebImage) 8665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKMutableArrayRef, MutableArray) 8765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKMutableDictionaryRef, MutableDictionary) 8865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKSecurityOriginRef, WebSecurityOrigin) 8965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKSerializedScriptValueRef, WebSerializedScriptValue) 9065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKStringRef, WebString) 9165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKTypeRef, APIObject) 9265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKUInt64Ref, WebUInt64) 9365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKURLRef, WebURL) 9465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKURLRequestRef, WebURLRequest) 9565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKURLResponseRef, WebURLResponse) 9665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben MurdochWK_ADD_API_MAPPING(WKUserContentURLPatternRef, WebUserContentURLPattern) 9765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 9865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochtemplate<typename ImplType, typename APIType = typename ImplTypeInfo<ImplType*>::APIType> 9965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochclass ProxyingRefPtr { 10065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochpublic: 10165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch ProxyingRefPtr(PassRefPtr<ImplType> impl) 10265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch : m_impl(impl) 10365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch { 10465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch } 10565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 10665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch operator APIType() { return toAPI(m_impl.get()); } 10765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 10865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochprivate: 10965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch RefPtr<ImplType> m_impl; 11065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch}; 11165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 11265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch/* Opaque typing convenience methods */ 11365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 11465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochtemplate<typename T> 11565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline typename APITypeInfo<T>::ImplType toImpl(T t) 11665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 11765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch // An example of the conversions that take place: 11865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch // const struct OpaqueWKArray* -> const struct OpaqueWKArray -> struct OpaqueWKArray -> struct OpaqueWKArray* -> ImmutableArray* 11965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 12065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch typedef typename WTF::RemovePointer<T>::Type PotentiallyConstValueType; 12165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch typedef typename WTF::RemoveConst<PotentiallyConstValueType>::Type NonConstValueType; 12265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 12365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return reinterpret_cast<typename APITypeInfo<T>::ImplType>(const_cast<NonConstValueType*>(t)); 12465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 12565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 12665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochtemplate<typename T> 12765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline typename ImplTypeInfo<T>::APIType toAPI(T t) 12865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 12965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return reinterpret_cast<typename ImplTypeInfo<T>::APIType>(t); 13065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 13165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 13265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch/* Special cases. */ 13365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 13465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline ProxyingRefPtr<WebString> toAPI(StringImpl* string) 13565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 13665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return ProxyingRefPtr<WebString>(WebString::create(string)); 13765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 13865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 13965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WKStringRef toCopiedAPI(const String& string) 14065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 14165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch RefPtr<WebString> webString = WebString::create(string); 14265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return toAPI(webString.release().releaseRef()); 14365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 14465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 14565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline ProxyingRefPtr<WebURL> toURLRef(StringImpl* string) 14665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 14765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (!string) 14865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch ProxyingRefPtr<WebURL>(0); 14965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return ProxyingRefPtr<WebURL>(WebURL::create(String(string))); 15065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 15165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 15265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WKURLRef toCopiedURLAPI(const String& string) 15365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 15465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (!string) 15565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return 0; 15665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch RefPtr<WebURL> webURL = WebURL::create(string); 15765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return toAPI(webURL.release().releaseRef()); 15865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 15965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 16065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline String toWTFString(WKStringRef stringRef) 16165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 16265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (!stringRef) 16365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return String(); 16465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return toImpl(stringRef)->string(); 16565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 16665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 16765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline String toWTFString(WKURLRef urlRef) 16865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 16965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (!urlRef) 17065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return String(); 17165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return toImpl(urlRef)->string(); 17265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 17365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 17465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline ProxyingRefPtr<WebError> toAPI(const WebCore::ResourceError& error) 17565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 17665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return ProxyingRefPtr<WebError>(WebError::create(error)); 17765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 17865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 1792fc2651226baac27029e38c9d6ef883fa32084dbSteve Blockinline ProxyingRefPtr<WebURLRequest> toAPI(const WebCore::ResourceRequest& request) 1802fc2651226baac27029e38c9d6ef883fa32084dbSteve Block{ 1812fc2651226baac27029e38c9d6ef883fa32084dbSteve Block return ProxyingRefPtr<WebURLRequest>(WebURLRequest::create(request)); 1822fc2651226baac27029e38c9d6ef883fa32084dbSteve Block} 1832fc2651226baac27029e38c9d6ef883fa32084dbSteve Block 1842fc2651226baac27029e38c9d6ef883fa32084dbSteve Blockinline ProxyingRefPtr<WebURLResponse> toAPI(const WebCore::ResourceResponse& response) 1852fc2651226baac27029e38c9d6ef883fa32084dbSteve Block{ 1862fc2651226baac27029e38c9d6ef883fa32084dbSteve Block return ProxyingRefPtr<WebURLResponse>(WebURLResponse::create(response)); 1872fc2651226baac27029e38c9d6ef883fa32084dbSteve Block} 1882fc2651226baac27029e38c9d6ef883fa32084dbSteve Block 18965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch/* Geometry conversions */ 19065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 19165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WebCore::FloatRect toFloatRect(const WKRect& wkRect) 19265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 19365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::FloatRect(static_cast<float>(wkRect.origin.x), static_cast<float>(wkRect.origin.y), 19465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch static_cast<float>(wkRect.size.width), static_cast<float>(wkRect.size.height)); 19565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 19665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 19765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WebCore::IntSize toIntSize(const WKSize& wkSize) 19865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 19965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::IntSize(static_cast<int>(wkSize.width), static_cast<int>(wkSize.height)); 20065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 20165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 20265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WebCore::IntPoint toIntPoint(const WKPoint& wkPoint) 20365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 20465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::IntPoint(static_cast<int>(wkPoint.x), static_cast<int>(wkPoint.y)); 20565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 20665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 20765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WebCore::IntRect toIntRect(const WKRect& wkRect) 20865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 20965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::IntRect(static_cast<int>(wkRect.origin.x), static_cast<int>(wkRect.origin.y), 21065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch static_cast<int>(wkRect.size.width), static_cast<int>(wkRect.size.height)); 21165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 21265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 21365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WKRect toAPI(const WebCore::FloatRect& rect) 21465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 21565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch WKRect wkRect; 21665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkRect.origin.x = rect.x(); 21765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkRect.origin.y = rect.y(); 21865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkRect.size.width = rect.width(); 21965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkRect.size.height = rect.height(); 22065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return wkRect; 22165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 22265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 22365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WKRect toAPI(const WebCore::IntRect& rect) 22465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 22565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch WKRect wkRect; 22665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkRect.origin.x = rect.x(); 22765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkRect.origin.y = rect.y(); 22865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkRect.size.width = rect.width(); 22965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkRect.size.height = rect.height(); 23065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return wkRect; 23165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 23265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 23365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WKSize toAPI(const WebCore::IntSize& size) 23465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 23565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch WKSize wkSize; 23665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkSize.width = size.width(); 23765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkSize.height = size.height(); 23865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return wkSize; 23965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 24065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 24165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WKPoint toAPI(const WebCore::IntPoint& point) 24265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 24365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch WKPoint wkPoint; 24465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkPoint.x = point.x(); 24565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkPoint.y = point.y(); 24665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return wkPoint; 24765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 24865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 24965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch/* Enum conversions */ 25065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 25165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WKTypeID toAPI(APIObject::Type type) 25265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 25365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return static_cast<WKTypeID>(type); 25465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 25565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 25665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WKEventModifiers toAPI(WebEvent::Modifiers modifiers) 25765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 25865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch WKEventModifiers wkModifiers = 0; 25965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (modifiers & WebEvent::ShiftKey) 26065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkModifiers |= kWKEventModifiersShiftKey; 26165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (modifiers & WebEvent::ControlKey) 26265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkModifiers |= kWKEventModifiersControlKey; 26365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (modifiers & WebEvent::AltKey) 26465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkModifiers |= kWKEventModifiersAltKey; 26565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (modifiers & WebEvent::MetaKey) 26665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkModifiers |= kWKEventModifiersMetaKey; 26765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return wkModifiers; 26865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 26965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 27065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WKEventMouseButton toAPI(WebMouseEvent::Button mouseButton) 27165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 27265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch WKEventMouseButton wkMouseButton = kWKEventMouseButtonNoButton; 27365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 27465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch switch (mouseButton) { 27565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebMouseEvent::NoButton: 27665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkMouseButton = kWKEventMouseButtonNoButton; 27765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch break; 27865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebMouseEvent::LeftButton: 27965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkMouseButton = kWKEventMouseButtonLeftButton; 28065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch break; 28165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebMouseEvent::MiddleButton: 28265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkMouseButton = kWKEventMouseButtonMiddleButton; 28365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch break; 28465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebMouseEvent::RightButton: 28565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkMouseButton = kWKEventMouseButtonRightButton; 28665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch break; 28765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch } 28865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 28965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return wkMouseButton; 29065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 29165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 29265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WKContextMenuItemTag toAPI(WebCore::ContextMenuAction action) 29365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 29465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch switch (action) { 29565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagNoAction: 29665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagNoAction; 29765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagOpenLinkInNewWindow: 29865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagOpenLinkInNewWindow; 29965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagDownloadLinkToDisk: 30065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagDownloadLinkToDisk; 30165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagCopyLinkToClipboard: 30265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagCopyLinkToClipboard; 30365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagOpenImageInNewWindow: 30465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagOpenImageInNewWindow; 30565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagDownloadImageToDisk: 30665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagDownloadImageToDisk; 30765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagCopyImageToClipboard: 30865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagCopyImageToClipboard; 30965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagOpenFrameInNewWindow: 31065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagOpenFrameInNewWindow; 31165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagCopy: 31265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagCopy; 31365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagGoBack: 31465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagGoBack; 31565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagGoForward: 31665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagGoForward; 31765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagStop: 31865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagStop; 31965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagReload: 32065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagReload; 32165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagCut: 32265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagCut; 32365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagPaste: 32465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagPaste; 32565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagSpellingGuess: 32665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagSpellingGuess; 32765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagNoGuessesFound: 32865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagNoGuessesFound; 32965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagIgnoreSpelling: 33065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagIgnoreSpelling; 33165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagLearnSpelling: 33265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagLearnSpelling; 33365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagOther: 33465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagOther; 33565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagSearchInSpotlight: 33665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagSearchInSpotlight; 33765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagSearchWeb: 33865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagSearchWeb; 33965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagLookUpInDictionary: 34065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagLookUpInDictionary; 34165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagOpenWithDefaultApplication: 34265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagOpenWithDefaultApplication; 34365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemPDFActualSize: 34465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagPDFActualSize; 34565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemPDFZoomIn: 34665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagPDFZoomIn; 34765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemPDFZoomOut: 34865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagPDFZoomOut; 34965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemPDFAutoSize: 35065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagPDFAutoSize; 35165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemPDFSinglePage: 35265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagPDFSinglePage; 35365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemPDFFacingPages: 35465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagPDFFacingPages; 35565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemPDFContinuous: 35665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagPDFContinuous; 35765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemPDFNextPage: 35865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagPDFNextPage; 35965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemPDFPreviousPage: 36065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagPDFPreviousPage; 36165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagOpenLink: 36265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagOpenLink; 36365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagIgnoreGrammar: 36465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagIgnoreGrammar; 36565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagSpellingMenu: 36665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagSpellingMenu; 36765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagShowSpellingPanel: 36865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagShowSpellingPanel; 36965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagCheckSpelling: 37065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagCheckSpelling; 37165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagCheckSpellingWhileTyping: 37265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagCheckSpellingWhileTyping; 37365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagCheckGrammarWithSpelling: 37465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagCheckGrammarWithSpelling; 37565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagFontMenu: 37665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagFontMenu; 37765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagShowFonts: 37865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagShowFonts; 37965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagBold: 38065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagBold; 38165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagItalic: 38265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagItalic; 38365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagUnderline: 38465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagUnderline; 38565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagOutline: 38665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagOutline; 38765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagStyles: 38865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagStyles; 38965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagShowColors: 39065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagShowColors; 39165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagSpeechMenu: 39265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagSpeechMenu; 39365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagStartSpeaking: 39465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagStartSpeaking; 39565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagStopSpeaking: 39665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagStopSpeaking; 39765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagWritingDirectionMenu: 39865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagWritingDirectionMenu; 39965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagDefaultDirection: 40065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagDefaultDirection; 40165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagLeftToRight: 40265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagLeftToRight; 40365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagRightToLeft: 40465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagRightToLeft; 40565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagPDFSinglePageScrolling: 40665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagPDFSinglePageScrolling; 40765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagPDFFacingPagesScrolling: 40865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagPDFFacingPagesScrolling; 40965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#if ENABLE(INSPECTOR) 41065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagInspectElement: 41165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagInspectElement; 41265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#endif 41365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagTextDirectionMenu: 41465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagTextDirectionMenu; 41565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagTextDirectionDefault: 41665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagTextDirectionDefault; 41765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagTextDirectionLeftToRight: 41865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagTextDirectionLeftToRight; 41965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagTextDirectionRightToLeft: 42065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagTextDirectionRightToLeft; 42165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagOpenMediaInNewWindow: 42265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagOpenMediaInNewWindow; 42365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagCopyMediaLinkToClipboard: 42465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagCopyMediaLinkToClipboard; 42565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagToggleMediaControls: 42665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagToggleMediaControls; 42765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagToggleMediaLoop: 42865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagToggleMediaLoop; 42965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagEnterVideoFullscreen: 43065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagEnterVideoFullscreen; 43165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagMediaPlayPause: 43265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagMediaPlayPause; 43365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagMediaMute: 43465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagMediaMute; 43565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#if PLATFORM(MAC) 43665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagCorrectSpellingAutomatically: 43765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagCorrectSpellingAutomatically; 43865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagSubstitutionsMenu: 43965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagSubstitutionsMenu; 44065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagShowSubstitutions: 44165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagShowSubstitutions; 44265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagSmartCopyPaste: 44365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagSmartCopyPaste; 44465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagSmartQuotes: 44565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagSmartQuotes; 44665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagSmartDashes: 44765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagSmartDashes; 44865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagSmartLinks: 44965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagSmartLinks; 45065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagTextReplacement: 45165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagTextReplacement; 45265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagTransformationsMenu: 45365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagTransformationsMenu; 45465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagMakeUpperCase: 45565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagMakeUpperCase; 45665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagMakeLowerCase: 45765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagMakeLowerCase; 45865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagCapitalize: 45965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagCapitalize; 46065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ContextMenuItemTagChangeBack: 46165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTagChangeBack; 46265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#endif 46365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch default: 46465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (action < WebCore::ContextMenuItemBaseApplicationTag) 46565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch LOG_ERROR("ContextMenuAction %i is an unknown tag but is below the allowable custom tag value of %i", action, WebCore:: ContextMenuItemBaseApplicationTag); 46665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return static_cast<WKContextMenuItemTag>(action); 46765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch } 46865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 46965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 47065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WebCore::ContextMenuAction toImpl(WKContextMenuItemTag tag) 47165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 47265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch switch (tag) { 47365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagNoAction: 47465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagNoAction; 47565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagOpenLinkInNewWindow: 47665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagOpenLinkInNewWindow; 47765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagDownloadLinkToDisk: 47865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagDownloadLinkToDisk; 47965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagCopyLinkToClipboard: 48065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagCopyLinkToClipboard; 48165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagOpenImageInNewWindow: 48265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagOpenImageInNewWindow; 48365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagDownloadImageToDisk: 48465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagDownloadImageToDisk; 48565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagCopyImageToClipboard: 48665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagCopyImageToClipboard; 48765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagOpenFrameInNewWindow: 48865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagOpenFrameInNewWindow; 48965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagCopy: 49065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagCopy; 49165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagGoBack: 49265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagGoBack; 49365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagGoForward: 49465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagGoForward; 49565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagStop: 49665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagStop; 49765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagReload: 49865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagReload; 49965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagCut: 50065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagCut; 50165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagPaste: 50265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagPaste; 50365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagSpellingGuess: 50465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagSpellingGuess; 50565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagNoGuessesFound: 50665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagNoGuessesFound; 50765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagIgnoreSpelling: 50865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagIgnoreSpelling; 50965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagLearnSpelling: 51065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagLearnSpelling; 51165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagOther: 51265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagOther; 51365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagSearchInSpotlight: 51465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagSearchInSpotlight; 51565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagSearchWeb: 51665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagSearchWeb; 51765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagLookUpInDictionary: 51865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagLookUpInDictionary; 51965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagOpenWithDefaultApplication: 52065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagOpenWithDefaultApplication; 52165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagPDFActualSize: 52265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemPDFActualSize; 52365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagPDFZoomIn: 52465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemPDFZoomIn; 52565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagPDFZoomOut: 52665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemPDFZoomOut; 52765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagPDFAutoSize: 52865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemPDFAutoSize; 52965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagPDFSinglePage: 53065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemPDFSinglePage; 53165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagPDFFacingPages: 53265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemPDFFacingPages; 53365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagPDFContinuous: 53465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemPDFContinuous; 53565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagPDFNextPage: 53665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemPDFNextPage; 53765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagPDFPreviousPage: 53865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemPDFPreviousPage; 53965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagOpenLink: 54065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagOpenLink; 54165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagIgnoreGrammar: 54265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagIgnoreGrammar; 54365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagSpellingMenu: 54465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagSpellingMenu; 54565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagShowSpellingPanel: 54665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagShowSpellingPanel; 54765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagCheckSpelling: 54865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagCheckSpelling; 54965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagCheckSpellingWhileTyping: 55065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagCheckSpellingWhileTyping; 55165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagCheckGrammarWithSpelling: 55265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagCheckGrammarWithSpelling; 55365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagFontMenu: 55465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagFontMenu; 55565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagShowFonts: 55665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagShowFonts; 55765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagBold: 55865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagBold; 55965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagItalic: 56065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagItalic; 56165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagUnderline: 56265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagUnderline; 56365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagOutline: 56465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagOutline; 56565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagStyles: 56665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagStyles; 56765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagShowColors: 56865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagShowColors; 56965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagSpeechMenu: 57065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagSpeechMenu; 57165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagStartSpeaking: 57265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagStartSpeaking; 57365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagStopSpeaking: 57465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagStopSpeaking; 57565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagWritingDirectionMenu: 57665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagWritingDirectionMenu; 57765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagDefaultDirection: 57865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagDefaultDirection; 57965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagLeftToRight: 58065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagLeftToRight; 58165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagRightToLeft: 58265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagRightToLeft; 58365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagPDFSinglePageScrolling: 58465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagPDFSinglePageScrolling; 58565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagPDFFacingPagesScrolling: 58665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagPDFFacingPagesScrolling; 58765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#if ENABLE(INSPECTOR) 58865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagInspectElement: 58965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagInspectElement; 59065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#endif 59165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagTextDirectionMenu: 59265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagTextDirectionMenu; 59365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagTextDirectionDefault: 59465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagTextDirectionDefault; 59565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagTextDirectionLeftToRight: 59665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagTextDirectionLeftToRight; 59765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagTextDirectionRightToLeft: 59865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagTextDirectionRightToLeft; 59965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagOpenMediaInNewWindow: 60065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagOpenMediaInNewWindow; 60165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagCopyMediaLinkToClipboard: 60265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagCopyMediaLinkToClipboard; 60365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagToggleMediaControls: 60465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagToggleMediaControls; 60565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagToggleMediaLoop: 60665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagToggleMediaLoop; 60765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagEnterVideoFullscreen: 60865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagEnterVideoFullscreen; 60965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagMediaPlayPause: 61065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagMediaPlayPause; 61165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagMediaMute: 61265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagMediaMute; 61365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#if PLATFORM(MAC) 61465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagCorrectSpellingAutomatically: 61565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagCorrectSpellingAutomatically; 61665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagSubstitutionsMenu: 61765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagSubstitutionsMenu; 61865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagShowSubstitutions: 61965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagShowSubstitutions; 62065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagSmartCopyPaste: 62165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagSmartCopyPaste; 62265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagSmartQuotes: 62365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagSmartQuotes; 62465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagSmartDashes: 62565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagSmartDashes; 62665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagSmartLinks: 62765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagSmartLinks; 62865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagTextReplacement: 62965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagTextReplacement; 63065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagTransformationsMenu: 63165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagTransformationsMenu; 63265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagMakeUpperCase: 63365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagMakeUpperCase; 63465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagMakeLowerCase: 63565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagMakeLowerCase; 63665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagCapitalize: 63765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagCapitalize; 63865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case kWKContextMenuItemTagChangeBack: 63965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return WebCore::ContextMenuItemTagChangeBack; 64065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#endif 64165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch default: 64265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (tag < kWKContextMenuItemBaseApplicationTag) 64365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch LOG_ERROR("WKContextMenuItemTag %i is an unknown tag but is below the allowable custom tag value of %i", tag, kWKContextMenuItemBaseApplicationTag); 64465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return static_cast<WebCore::ContextMenuAction>(tag); 64565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch } 64665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 64765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 64865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WKContextMenuItemType toAPI(WebCore::ContextMenuItemType type) 64965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 65065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch switch(type) { 65165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::ActionType: 65265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTypeAction; 65365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::CheckableActionType: 65465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTypeCheckableAction; 65565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::SeparatorType: 65665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTypeSeparator; 65765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::SubmenuType: 65865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTypeSubmenu; 65965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch default: 66065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch ASSERT_NOT_REACHED(); 66165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return kWKContextMenuItemTypeAction; 66265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch } 66365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 66465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 66565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline FindOptions toFindOptions(WKFindOptions wkFindOptions) 66665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 66765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch unsigned findOptions = 0; 66865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 66965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (wkFindOptions & kWKFindOptionsCaseInsensitive) 67065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch findOptions |= FindOptionsCaseInsensitive; 67165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (wkFindOptions & kWKFindOptionsAtWordStarts) 67265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch findOptions |= FindOptionsAtWordStarts; 67365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (wkFindOptions & kWKFindOptionsTreatMedialCapitalAsWordStart) 67465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch findOptions |= FindOptionsTreatMedialCapitalAsWordStart; 67565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (wkFindOptions & kWKFindOptionsBackwards) 67665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch findOptions |= FindOptionsBackwards; 67765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (wkFindOptions & kWKFindOptionsWrapAround) 67865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch findOptions |= FindOptionsWrapAround; 67965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (wkFindOptions & kWKFindOptionsShowOverlay) 68065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch findOptions |= FindOptionsShowOverlay; 68165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (wkFindOptions & kWKFindOptionsShowFindIndicator) 68265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch findOptions |= FindOptionsShowFindIndicator; 68365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 68465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return static_cast<FindOptions>(findOptions); 68565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 68665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 68765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WKFrameNavigationType toAPI(WebCore::NavigationType type) 68865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 68965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch WKFrameNavigationType wkType = kWKFrameNavigationTypeOther; 69065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 69165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch switch (type) { 69265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::NavigationTypeLinkClicked: 69365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkType = kWKFrameNavigationTypeLinkClicked; 69465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch break; 69565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::NavigationTypeFormSubmitted: 69665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkType = kWKFrameNavigationTypeFormSubmitted; 69765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch break; 69865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::NavigationTypeBackForward: 69965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkType = kWKFrameNavigationTypeBackForward; 70065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch break; 70165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::NavigationTypeReload: 70265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkType = kWKFrameNavigationTypeReload; 70365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch break; 70465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::NavigationTypeFormResubmitted: 70565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkType = kWKFrameNavigationTypeFormResubmitted; 70665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch break; 70765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case WebCore::NavigationTypeOther: 70865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkType = kWKFrameNavigationTypeOther; 70965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch break; 71065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch } 71165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 71265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return wkType; 71365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 71465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 71565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline WKSameDocumentNavigationType toAPI(SameDocumentNavigationType type) 71665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 71765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch WKFrameNavigationType wkType = kWKSameDocumentNavigationAnchorNavigation; 71865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 71965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch switch (type) { 72065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case SameDocumentNavigationAnchorNavigation: 72165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkType = kWKSameDocumentNavigationAnchorNavigation; 72265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch break; 72365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case SameDocumentNavigationSessionStatePush: 72465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkType = kWKSameDocumentNavigationSessionStatePush; 72565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch break; 72665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case SameDocumentNavigationSessionStateReplace: 72765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkType = kWKSameDocumentNavigationSessionStateReplace; 72865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch break; 72965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch case SameDocumentNavigationSessionStatePop: 73065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch wkType = kWKSameDocumentNavigationSessionStatePop; 73165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch break; 73265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch } 73365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 73465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return wkType; 73565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 73665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 73765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdochinline ImageOptions toImageOptions(WKImageOptions wkImageOptions) 73865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch{ 73965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch unsigned imageOptions = 0; 74065f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 74165f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch if (wkImageOptions & kWKImageOptionsShareable) 74265f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch imageOptions |= ImageOptionsShareable; 74365f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 74465f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch return static_cast<ImageOptions>(imageOptions); 74565f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} 74665f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 74765f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch} // namespace WebKit 74865f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch 74965f03d4f644ce73618e5f4f50dd694b26f55ae12Ben Murdoch#endif // WKSharedAPICast_h 750