blob: 451cf0be50b0ce753a1c8f8a1d7b72af2a24b09e [file] [log] [blame]
/*
* Copyright (C) 2010, 2012 Apple Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
*/
#include "config.h"
#include "WKPreferences.h"
#include "WKPreferencesPrivate.h"
#include "WKAPICast.h"
#include "WebContext.h"
#include "WebPreferences.h"
#include <WebCore/Settings.h>
#include <wtf/PassRefPtr.h>
#include <wtf/RefPtr.h>
using namespace WebKit;
WKTypeID WKPreferencesGetTypeID()
{
return toAPI(WebPreferences::APIType);
}
WKPreferencesRef WKPreferencesCreate()
{
RefPtr<WebPreferences> preferences = WebPreferences::create();
return toAPI(preferences.release().leakRef());
}
WKPreferencesRef WKPreferencesCreateWithIdentifier(WKStringRef identifierRef)
{
RefPtr<WebPreferences> preferences = WebPreferences::create(toWTFString(identifierRef));
return toAPI(preferences.release().leakRef());
}
WKPreferencesRef WKPreferencesCreateCopy(WKPreferencesRef preferencesRef)
{
RefPtr<WebPreferences> preferences = WebPreferences::create(*toImpl(preferencesRef));
return toAPI(preferences.release().leakRef());
}
void WKPreferencesSetJavaScriptEnabled(WKPreferencesRef preferencesRef, bool javaScriptEnabled)
{
toImpl(preferencesRef)->setJavaScriptEnabled(javaScriptEnabled);
}
bool WKPreferencesGetJavaScriptEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->javaScriptEnabled();
}
void WKPreferencesSetJavaScriptMarkupEnabled(WKPreferencesRef preferencesRef, bool javaScriptMarkupEnabled)
{
toImpl(preferencesRef)->setJavaScriptMarkupEnabled(javaScriptMarkupEnabled);
}
bool WKPreferencesGetJavaScriptMarkupEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->javaScriptMarkupEnabled();
}
void WKPreferencesSetLoadsImagesAutomatically(WKPreferencesRef preferencesRef, bool loadsImagesAutomatically)
{
toImpl(preferencesRef)->setLoadsImagesAutomatically(loadsImagesAutomatically);
}
bool WKPreferencesGetLoadsImagesAutomatically(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->loadsImagesAutomatically();
}
void WKPreferencesSetLoadsSiteIconsIgnoringImageLoadingPreference(WKPreferencesRef preferencesRef, bool loadsSiteIconsIgnoringImageLoadingPreference)
{
toImpl(preferencesRef)->setLoadsSiteIconsIgnoringImageLoadingPreference(loadsSiteIconsIgnoringImageLoadingPreference);
}
bool WKPreferencesGetLoadsSiteIconsIgnoringImageLoadingPreference(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->loadsSiteIconsIgnoringImageLoadingPreference();
}
void WKPreferencesSetOfflineWebApplicationCacheEnabled(WKPreferencesRef preferencesRef, bool offlineWebApplicationCacheEnabled)
{
toImpl(preferencesRef)->setOfflineWebApplicationCacheEnabled(offlineWebApplicationCacheEnabled);
}
bool WKPreferencesGetOfflineWebApplicationCacheEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->offlineWebApplicationCacheEnabled();
}
void WKPreferencesSetLocalStorageEnabled(WKPreferencesRef preferencesRef, bool localStorageEnabled)
{
toImpl(preferencesRef)->setLocalStorageEnabled(localStorageEnabled);
}
bool WKPreferencesGetLocalStorageEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->localStorageEnabled();
}
void WKPreferencesSetDatabasesEnabled(WKPreferencesRef preferencesRef, bool databasesEnabled)
{
toImpl(preferencesRef)->setDatabasesEnabled(databasesEnabled);
}
bool WKPreferencesGetDatabasesEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->databasesEnabled();
}
void WKPreferencesSetXSSAuditorEnabled(WKPreferencesRef preferencesRef, bool xssAuditorEnabled)
{
toImpl(preferencesRef)->setXSSAuditorEnabled(xssAuditorEnabled);
}
bool WKPreferencesGetXSSAuditorEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->xssAuditorEnabled();
}
void WKPreferencesSetFrameFlatteningEnabled(WKPreferencesRef preferencesRef, bool frameFlatteningEnabled)
{
toImpl(preferencesRef)->setFrameFlatteningEnabled(frameFlatteningEnabled);
}
bool WKPreferencesGetFrameFlatteningEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->frameFlatteningEnabled();
}
void WKPreferencesSetPluginsEnabled(WKPreferencesRef preferencesRef, bool pluginsEnabled)
{
toImpl(preferencesRef)->setPluginsEnabled(pluginsEnabled);
}
bool WKPreferencesGetPluginsEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->pluginsEnabled();
}
void WKPreferencesSetJavaEnabled(WKPreferencesRef preferencesRef, bool javaEnabled)
{
toImpl(preferencesRef)->setJavaEnabled(javaEnabled);
}
bool WKPreferencesGetJavaEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->javaEnabled();
}
void WKPreferencesSetJavaEnabledForLocalFiles(WKPreferencesRef preferencesRef, bool javaEnabledForLocalFiles)
{
toImpl(preferencesRef)->setJavaEnabledForLocalFiles(javaEnabledForLocalFiles);
}
bool WKPreferencesGetJavaEnabledForLocalFiles(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->javaEnabledForLocalFiles();
}
void WKPreferencesSetJavaScriptCanOpenWindowsAutomatically(WKPreferencesRef preferencesRef, bool javaScriptCanOpenWindowsAutomatically)
{
toImpl(preferencesRef)->setJavaScriptCanOpenWindowsAutomatically(javaScriptCanOpenWindowsAutomatically);
}
bool WKPreferencesGetJavaScriptCanOpenWindowsAutomatically(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->javaScriptCanOpenWindowsAutomatically();
}
void WKPreferencesSetHyperlinkAuditingEnabled(WKPreferencesRef preferencesRef, bool hyperlinkAuditingEnabled)
{
toImpl(preferencesRef)->setHyperlinkAuditingEnabled(hyperlinkAuditingEnabled);
}
bool WKPreferencesGetHyperlinkAuditingEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->hyperlinkAuditingEnabled();
}
void WKPreferencesSetStandardFontFamily(WKPreferencesRef preferencesRef, WKStringRef family)
{
toImpl(preferencesRef)->setStandardFontFamily(toWTFString(family));
}
WKStringRef WKPreferencesCopyStandardFontFamily(WKPreferencesRef preferencesRef)
{
return toCopiedAPI(toImpl(preferencesRef)->standardFontFamily());
}
void WKPreferencesSetFixedFontFamily(WKPreferencesRef preferencesRef, WKStringRef family)
{
toImpl(preferencesRef)->setFixedFontFamily(toWTFString(family));
}
WKStringRef WKPreferencesCopyFixedFontFamily(WKPreferencesRef preferencesRef)
{
return toCopiedAPI(toImpl(preferencesRef)->fixedFontFamily());
}
void WKPreferencesSetSerifFontFamily(WKPreferencesRef preferencesRef, WKStringRef family)
{
toImpl(preferencesRef)->setSerifFontFamily(toWTFString(family));
}
WKStringRef WKPreferencesCopySerifFontFamily(WKPreferencesRef preferencesRef)
{
return toCopiedAPI(toImpl(preferencesRef)->serifFontFamily());
}
void WKPreferencesSetSansSerifFontFamily(WKPreferencesRef preferencesRef, WKStringRef family)
{
toImpl(preferencesRef)->setSansSerifFontFamily(toWTFString(family));
}
WKStringRef WKPreferencesCopySansSerifFontFamily(WKPreferencesRef preferencesRef)
{
return toCopiedAPI(toImpl(preferencesRef)->sansSerifFontFamily());
}
void WKPreferencesSetCursiveFontFamily(WKPreferencesRef preferencesRef, WKStringRef family)
{
toImpl(preferencesRef)->setCursiveFontFamily(toWTFString(family));
}
WKStringRef WKPreferencesCopyCursiveFontFamily(WKPreferencesRef preferencesRef)
{
return toCopiedAPI(toImpl(preferencesRef)->cursiveFontFamily());
}
void WKPreferencesSetFantasyFontFamily(WKPreferencesRef preferencesRef, WKStringRef family)
{
toImpl(preferencesRef)->setFantasyFontFamily(toWTFString(family));
}
WKStringRef WKPreferencesCopyFantasyFontFamily(WKPreferencesRef preferencesRef)
{
return toCopiedAPI(toImpl(preferencesRef)->fantasyFontFamily());
}
void WKPreferencesSetPictographFontFamily(WKPreferencesRef preferencesRef, WKStringRef family)
{
toImpl(preferencesRef)->setPictographFontFamily(toWTFString(family));
}
WKStringRef WKPreferencesCopyPictographFontFamily(WKPreferencesRef preferencesRef)
{
return toCopiedAPI(toImpl(preferencesRef)->pictographFontFamily());
}
void WKPreferencesSetDefaultFontSize(WKPreferencesRef preferencesRef, uint32_t size)
{
toImpl(preferencesRef)->setDefaultFontSize(size);
}
uint32_t WKPreferencesGetDefaultFontSize(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->defaultFontSize();
}
void WKPreferencesSetDefaultFixedFontSize(WKPreferencesRef preferencesRef, uint32_t size)
{
toImpl(preferencesRef)->setDefaultFixedFontSize(size);
}
uint32_t WKPreferencesGetDefaultFixedFontSize(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->defaultFixedFontSize();
}
void WKPreferencesSetMinimumFontSize(WKPreferencesRef preferencesRef, uint32_t size)
{
toImpl(preferencesRef)->setMinimumFontSize(size);
}
uint32_t WKPreferencesGetMinimumFontSize(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->minimumFontSize();
}
void WKPreferencesSetScreenFontSubstitutionEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setScreenFontSubstitutionEnabled(enabled);
}
bool WKPreferencesGetScreenFontSubstitutionEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->screenFontSubstitutionEnabled();
}
void WKPreferencesSetCookieEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setCookieEnabled(enabled);
}
bool WKPreferencesGetCookieEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->cookieEnabled();
}
void WKPreferencesSetEditableLinkBehavior(WKPreferencesRef preferencesRef, WKEditableLinkBehavior wkBehavior)
{
toImpl(preferencesRef)->setEditableLinkBehavior(toEditableLinkBehavior(wkBehavior));
}
WKEditableLinkBehavior WKPreferencesGetEditableLinkBehavior(WKPreferencesRef preferencesRef)
{
return toAPI(static_cast<WebCore::EditableLinkBehavior>(toImpl(preferencesRef)->editableLinkBehavior()));
}
void WKPreferencesSetDefaultTextEncodingName(WKPreferencesRef preferencesRef, WKStringRef name)
{
toImpl(preferencesRef)->setDefaultTextEncodingName(toWTFString(name));
}
WKStringRef WKPreferencesCopyDefaultTextEncodingName(WKPreferencesRef preferencesRef)
{
return toCopiedAPI(toImpl(preferencesRef)->defaultTextEncodingName());
}
void WKPreferencesSetPrivateBrowsingEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
if (toImpl(preferencesRef)->privateBrowsingEnabled() == enabled)
return;
// Regardless of whether there are any open pages, we should tell WebContext, so that it could track browsing sessions.
if (enabled)
WebContext::willStartUsingPrivateBrowsing();
else
WebContext::willStopUsingPrivateBrowsing();
toImpl(preferencesRef)->setPrivateBrowsingEnabled(enabled);
}
bool WKPreferencesGetPrivateBrowsingEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->privateBrowsingEnabled();
}
void WKPreferencesSetDeveloperExtrasEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setDeveloperExtrasEnabled(enabled);
}
bool WKPreferencesGetDeveloperExtrasEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->developerExtrasEnabled();
}
void WKPreferencesSetJavaScriptExperimentsEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setJavaScriptExperimentsEnabled(enabled);
}
bool WKPreferencesGetJavaScriptExperimentsEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->javaScriptExperimentsEnabled();
}
void WKPreferencesSetTextAreasAreResizable(WKPreferencesRef preferencesRef, bool resizable)
{
toImpl(preferencesRef)->setTextAreasAreResizable(resizable);
}
bool WKPreferencesGetTextAreasAreResizable(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->textAreasAreResizable();
}
void WKPreferencesSetFontSmoothingLevel(WKPreferencesRef preferencesRef, WKFontSmoothingLevel wkLevel)
{
toImpl(preferencesRef)->setFontSmoothingLevel(toFontSmoothingLevel(wkLevel));
}
WKFontSmoothingLevel WKPreferencesGetFontSmoothingLevel(WKPreferencesRef preferencesRef)
{
return toAPI(static_cast<FontSmoothingLevel>(toImpl(preferencesRef)->fontSmoothingLevel()));
}
void WKPreferencesSetAcceleratedDrawingEnabled(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setAcceleratedDrawingEnabled(flag);
}
bool WKPreferencesGetAcceleratedDrawingEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->acceleratedDrawingEnabled();
}
void WKPreferencesSetCanvasUsesAcceleratedDrawing(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setCanvasUsesAcceleratedDrawing(flag);
}
bool WKPreferencesGetCanvasUsesAcceleratedDrawing(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->canvasUsesAcceleratedDrawing();
}
void WKPreferencesSetAcceleratedCompositingEnabled(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setAcceleratedCompositingEnabled(flag);
}
bool WKPreferencesGetAcceleratedCompositingEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->acceleratedCompositingEnabled();
}
void WKPreferencesSetAcceleratedCompositingForOverflowScrollEnabled(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setAcceleratedCompositingForOverflowScrollEnabled(flag);
}
bool WKPreferencesGetAcceleratedCompositingForOverflowScrollEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->acceleratedCompositingForOverflowScrollEnabled();
}
void WKPreferencesSetCompositingBordersVisible(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setCompositingBordersVisible(flag);
}
bool WKPreferencesGetCompositingBordersVisible(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->compositingBordersVisible();
}
void WKPreferencesSetCompositingRepaintCountersVisible(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setCompositingRepaintCountersVisible(flag);
}
bool WKPreferencesGetCompositingRepaintCountersVisible(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->compositingRepaintCountersVisible();
}
void WKPreferencesSetTiledScrollingIndicatorVisible(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setTiledScrollingIndicatorVisible(flag);
}
bool WKPreferencesGetTiledScrollingIndicatorVisible(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->tiledScrollingIndicatorVisible();
}
void WKPreferencesSetCSSCustomFilterEnabled(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setCSSCustomFilterEnabled(flag);
}
bool WKPreferencesGetCSSCustomFilterEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->cssCustomFilterEnabled();
}
void WKPreferencesSetWebGLEnabled(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setWebGLEnabled(flag);
}
bool WKPreferencesGetWebGLEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->webGLEnabled();
}
void WKPreferencesSetAccelerated2DCanvasEnabled(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setAccelerated2dCanvasEnabled(flag);
}
bool WKPreferencesGetAccelerated2DCanvasEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->accelerated2dCanvasEnabled();
}
void WKPreferencesSetCSSRegionsEnabled(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setCSSRegionsEnabled(flag);
}
bool WKPreferencesGetCSSRegionsEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->cssRegionsEnabled();
}
void WKPreferencesSetCSSGridLayoutEnabled(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setCSSGridLayoutEnabled(flag);
}
bool WKPreferencesGetCSSGridLayoutEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->cssGridLayoutEnabled();
}
void WKPreferencesSetRegionBasedColumnsEnabled(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setRegionBasedColumnsEnabled(flag);
}
bool WKPreferencesGetRegionBasedColumnsEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->regionBasedColumnsEnabled();
}
void WKPreferencesSetNeedsSiteSpecificQuirks(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setNeedsSiteSpecificQuirks(flag);
}
bool WKPreferencesGetNeedsSiteSpecificQuirks(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->needsSiteSpecificQuirks();
}
void WKPreferencesSetForceFTPDirectoryListings(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setForceFTPDirectoryListings(flag);
}
bool WKPreferencesGetForceFTPDirectoryListings(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->forceFTPDirectoryListings();
}
void WKPreferencesSetFTPDirectoryTemplatePath(WKPreferencesRef preferencesRef, WKStringRef pathRef)
{
toImpl(preferencesRef)->setFTPDirectoryTemplatePath(toWTFString(pathRef));
}
WKStringRef WKPreferencesCopyFTPDirectoryTemplatePath(WKPreferencesRef preferencesRef)
{
return toCopiedAPI(toImpl(preferencesRef)->ftpDirectoryTemplatePath());
}
void WKPreferencesSetTabsToLinks(WKPreferencesRef preferencesRef, bool tabsToLinks)
{
toImpl(preferencesRef)->setTabsToLinks(tabsToLinks);
}
bool WKPreferencesGetTabsToLinks(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->tabsToLinks();
}
void WKPreferencesSetDNSPrefetchingEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setDNSPrefetchingEnabled(enabled);
}
bool WKPreferencesGetDNSPrefetchingEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->dnsPrefetchingEnabled();
}
void WKPreferencesSetAuthorAndUserStylesEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setAuthorAndUserStylesEnabled(enabled);
}
bool WKPreferencesGetAuthorAndUserStylesEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->authorAndUserStylesEnabled();
}
void WKPreferencesSetShouldPrintBackgrounds(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setShouldPrintBackgrounds(flag);
}
bool WKPreferencesGetShouldPrintBackgrounds(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->shouldPrintBackgrounds();
}
void WKPreferencesSetWebArchiveDebugModeEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setWebArchiveDebugModeEnabled(enabled);
}
bool WKPreferencesGetWebArchiveDebugModeEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->webArchiveDebugModeEnabled();
}
void WKPreferencesSetLocalFileContentSniffingEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setLocalFileContentSniffingEnabled(enabled);
}
bool WKPreferencesGetLocalFileContentSniffingEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->localFileContentSniffingEnabled();
}
void WKPreferencesSetPageCacheEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setUsesPageCache(enabled);
}
bool WKPreferencesGetPageCacheEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->usesPageCache();
}
void WKPreferencesSetPageCacheSupportsPlugins(WKPreferencesRef preferencesRef, bool pageCacheSupportsPlugins)
{
toImpl(preferencesRef)->setPageCacheSupportsPlugins(pageCacheSupportsPlugins);
}
bool WKPreferencesGetPageCacheSupportsPlugins(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->pageCacheSupportsPlugins();
}
void WKPreferencesSetPaginateDuringLayoutEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setPaginateDuringLayoutEnabled(enabled);
}
bool WKPreferencesGetPaginateDuringLayoutEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->paginateDuringLayoutEnabled();
}
void WKPreferencesSetDOMPasteAllowed(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setDOMPasteAllowed(enabled);
}
bool WKPreferencesGetDOMPasteAllowed(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->domPasteAllowed();
}
void WKPreferencesSetJavaScriptCanAccessClipboard(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setJavaScriptCanAccessClipboard(enabled);
}
bool WKPreferencesGetJavaScriptCanAccessClipboard(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->javaScriptCanAccessClipboard();
}
void WKPreferencesSetFullScreenEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setFullScreenEnabled(enabled);
}
bool WKPreferencesGetFullScreenEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->fullScreenEnabled();
}
void WKPreferencesSetAsynchronousSpellCheckingEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setAsynchronousSpellCheckingEnabled(enabled);
}
bool WKPreferencesGetAsynchronousSpellCheckingEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->asynchronousSpellCheckingEnabled();
}
void WKPreferencesSetAVFoundationEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setAVFoundationEnabled(enabled);
}
bool WKPreferencesGetAVFoundationEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->isAVFoundationEnabled();
}
void WKPreferencesSetWebSecurityEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setWebSecurityEnabled(enabled);
}
bool WKPreferencesGetWebSecurityEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->webSecurityEnabled();
}
void WKPreferencesSetUniversalAccessFromFileURLsAllowed(WKPreferencesRef preferencesRef, bool allowed)
{
toImpl(preferencesRef)->setAllowUniversalAccessFromFileURLs(allowed);
}
bool WKPreferencesGetUniversalAccessFromFileURLsAllowed(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->allowUniversalAccessFromFileURLs();
}
void WKPreferencesSetFileAccessFromFileURLsAllowed(WKPreferencesRef preferencesRef, bool allowed)
{
toImpl(preferencesRef)->setAllowFileAccessFromFileURLs(allowed);
}
bool WKPreferencesGetFileAccessFromFileURLsAllowed(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->allowFileAccessFromFileURLs();
}
void WKPreferencesSetHixie76WebSocketProtocolEnabled(WKPreferencesRef, bool /*enabled*/)
{
}
bool WKPreferencesGetHixie76WebSocketProtocolEnabled(WKPreferencesRef)
{
return false;
}
void WKPreferencesSetMediaPlaybackRequiresUserGesture(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setMediaPlaybackRequiresUserGesture(flag);
}
bool WKPreferencesGetMediaPlaybackRequiresUserGesture(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->mediaPlaybackRequiresUserGesture();
}
void WKPreferencesSetMediaPlaybackAllowsInline(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setMediaPlaybackAllowsInline(flag);
}
bool WKPreferencesGetMediaPlaybackAllowsInline(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->mediaPlaybackAllowsInline();
}
void WKPreferencesSetShowsToolTipOverTruncatedText(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setShowsToolTipOverTruncatedText(flag);
}
bool WKPreferencesGetShowsToolTipOverTruncatedText(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->showsToolTipOverTruncatedText();
}
void WKPreferencesSetMockScrollbarsEnabled(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setMockScrollbarsEnabled(flag);
}
bool WKPreferencesGetMockScrollbarsEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->mockScrollbarsEnabled();
}
void WKPreferencesSetWebAudioEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setWebAudioEnabled(enabled);
}
bool WKPreferencesGetWebAudioEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->webAudioEnabled();
}
void WKPreferencesSetApplicationChromeModeEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setApplicationChromeModeEnabled(enabled);
}
bool WKPreferencesGetApplicationChromeModeEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->applicationChromeMode();
}
void WKPreferencesSetInspectorUsesWebKitUserInterface(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setInspectorUsesWebKitUserInterface(enabled);
}
bool WKPreferencesGetInspectorUsesWebKitUserInterface(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->inspectorUsesWebKitUserInterface();
}
void WKPreferencesSetSuppressesIncrementalRendering(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setSuppressesIncrementalRendering(enabled);
}
bool WKPreferencesGetSuppressesIncrementalRendering(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->suppressesIncrementalRendering();
}
void WKPreferencesSetBackspaceKeyNavigationEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setBackspaceKeyNavigationEnabled(enabled);
}
bool WKPreferencesGetBackspaceKeyNavigationEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->backspaceKeyNavigationEnabled();
}
void WKPreferencesSetCaretBrowsingEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setCaretBrowsingEnabled(enabled);
}
bool WKPreferencesGetCaretBrowsingEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->caretBrowsingEnabled();
}
void WKPreferencesSetShouldDisplaySubtitles(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setShouldDisplaySubtitles(enabled);
}
bool WKPreferencesGetShouldDisplaySubtitles(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->shouldDisplaySubtitles();
}
void WKPreferencesSetShouldDisplayCaptions(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setShouldDisplayCaptions(enabled);
}
bool WKPreferencesGetShouldDisplayCaptions(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->shouldDisplayCaptions();
}
void WKPreferencesSetShouldDisplayTextDescriptions(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setShouldDisplayTextDescriptions(enabled);
}
bool WKPreferencesGetShouldDisplayTextDescriptions(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->shouldDisplayTextDescriptions();
}
void WKPreferencesSetNotificationsEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setNotificationsEnabled(enabled);
}
bool WKPreferencesGetNotificationsEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->notificationsEnabled();
}
void WKPreferencesSetShouldRespectImageOrientation(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setShouldRespectImageOrientation(enabled);
}
bool WKPreferencesGetShouldRespectImageOrientation(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->shouldRespectImageOrientation();
}
void WKPreferencesSetRequestAnimationFrameEnabled(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setRequestAnimationFrameEnabled(flag);
}
bool WKPreferencesGetRequestAnimationFrameEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->requestAnimationFrameEnabled();
}
void WKPreferencesSetStorageBlockingPolicy(WKPreferencesRef preferencesRef, WKStorageBlockingPolicy policy)
{
toImpl(preferencesRef)->setStorageBlockingPolicy(toStorageBlockingPolicy(policy));
}
WKStorageBlockingPolicy WKPreferencesGetStorageBlockingPolicy(WKPreferencesRef preferencesRef)
{
return toAPI(static_cast<WebCore::SecurityOrigin::StorageBlockingPolicy>(toImpl(preferencesRef)->storageBlockingPolicy()));
}
void WKPreferencesResetTestRunnerOverrides(WKPreferencesRef preferencesRef)
{
// Currently we reset the overrides on the web process when preferencesDidChange() is called. Since WTR preferences
// are usually always the same (in the UI process), they are not sent to web process, not triggering the reset.
toImpl(preferencesRef)->forceUpdate();
}
void WKPreferencesSetDiagnosticLoggingEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setDiagnosticLoggingEnabled(enabled);
}
bool WKPreferencesGetDiagnosticLoggingEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->diagnosticLoggingEnabled();
}
void WKPreferencesSetAsynchronousPluginInitializationEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setAsynchronousPluginInitializationEnabled(enabled);
}
bool WKPreferencesGetAsynchronousPluginInitializationEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->asynchronousPluginInitializationEnabled();
}
void WKPreferencesSetAsynchronousPluginInitializationEnabledForAllPlugins(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setAsynchronousPluginInitializationEnabledForAllPlugins(enabled);
}
bool WKPreferencesGetAsynchronousPluginInitializationEnabledForAllPlugins(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->asynchronousPluginInitializationEnabledForAllPlugins();
}
void WKPreferencesSetArtificialPluginInitializationDelayEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setArtificialPluginInitializationDelayEnabled(enabled);
}
bool WKPreferencesGetArtificialPluginInitializationDelayEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->artificialPluginInitializationDelayEnabled();
}
void WKPreferencesSetTabToLinksEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setTabToLinksEnabled(enabled);
}
bool WKPreferencesGetTabToLinksEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->tabToLinksEnabled();
}
void WKPreferencesSetInteractiveFormValidationEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setInteractiveFormValidationEnabled(enabled);
}
bool WKPreferencesGetInteractiveFormValidationEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->interactiveFormValidationEnabled();
}
void WKPreferencesSetScrollingPerformanceLoggingEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setScrollingPerformanceLoggingEnabled(enabled);
}
bool WKPreferencesGetScrollingPerformanceLoggingEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->scrollingPerformanceLoggingEnabled();
}
void WKPreferencesSetPlugInSnapshottingEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setPlugInSnapshottingEnabled(enabled);
}
bool WKPreferencesGetPlugInSnapshottingEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->plugInSnapshottingEnabled();
}
void WKPreferencesSetPDFPluginEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setPDFPluginEnabled(enabled);
}
bool WKPreferencesGetPDFPluginEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->pdfPluginEnabled();
}
void WKPreferencesSetEncodingDetectorEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setUsesEncodingDetector(enabled);
}
bool WKPreferencesGetEncodingDetectorEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->usesEncodingDetector();
}
void WKPreferencesSetTextAutosizingEnabled(WKPreferencesRef preferencesRef, bool textAutosizingEnabled)
{
toImpl(preferencesRef)->setTextAutosizingEnabled(textAutosizingEnabled);
}
bool WKPreferencesGetTextAutosizingEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->textAutosizingEnabled();
}
void WKPreferencesSetAggressiveTileRetentionEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setAggressiveTileRetentionEnabled(enabled);
}
bool WKPreferencesGetAggressiveTileRetentionEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->aggressiveTileRetentionEnabled();
}
void WKPreferencesSetQTKitEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setQTKitEnabled(enabled);
}
bool WKPreferencesGetQTKitEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->isQTKitEnabled();
}
void WKPreferencesSetLogsPageMessagesToSystemConsoleEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setLogsPageMessagesToSystemConsoleEnabled(enabled);
}
bool WKPreferencesGetLogsPageMessagesToSystemConsoleEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->logsPageMessagesToSystemConsoleEnabled();
}
void WKPreferencesSetPageVisibilityBasedProcessSuppressionEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setPageVisibilityBasedProcessSuppressionEnabled(enabled);
}
bool WKPreferencesGetPageVisibilityBasedProcessSuppressionEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->pageVisibilityBasedProcessSuppressionEnabled();
}
void WKPreferencesSetSmartInsertDeleteEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setSmartInsertDeleteEnabled(enabled);
}
bool WKPreferencesGetSmartInsertDeleteEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->smartInsertDeleteEnabled();
}
void WKPreferencesSetShowsURLsInToolTipsEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setShowsURLsInToolTipsEnabled(enabled);
}
bool WKPreferencesGetShowsURLsInToolTipsEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->showsURLsInToolTipsEnabled();
}
void WKPreferencesSetHiddenPageDOMTimerThrottlingEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setHiddenPageDOMTimerThrottlingEnabled(enabled);
}
bool WKPreferencesGetHiddenPageDOMTimerThrottlingEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->hiddenPageDOMTimerThrottlingEnabled();
}
void WKPreferencesSetHiddenPageCSSAnimationSuspensionEnabled(WKPreferencesRef preferencesRef, bool enabled)
{
toImpl(preferencesRef)->setHiddenPageCSSAnimationSuspensionEnabled(enabled);
}
bool WKPreferencesGetHiddenPageCSSAnimationSuspensionEnabled(WKPreferencesRef preferencesRef)
{
return toImpl(preferencesRef)->hiddenPageCSSAnimationSuspensionEnabled();
}