WebSettingsCompat

public class WebSettingsCompat
extends Object

java.lang.Object
   ↳ androidx.webkit.WebSettingsCompat


Compatibility version of WebSettings

Summary

Constants

int FORCE_DARK_AUTO

Enable force dark dependent on the state of the WebView parent view.

int FORCE_DARK_OFF

Disable force dark, irrespective of the force dark mode of the WebView parent.

int FORCE_DARK_ON

Unconditionally enable force dark.

Public methods

static int getDisabledActionModeMenuItems(WebSettings settings)

Gets the action mode menu items that are disabled, expressed in an integer field flag.

static int getForceDark(WebSettings settings)

Get the force dark mode for this WebView.

static boolean getOffscreenPreRaster(WebSettings settings)

Gets whether this WebView should raster tiles when it is offscreen but attached to a window.

static boolean getSafeBrowsingEnabled(WebSettings settings)

Gets whether Safe Browsing is enabled.

static void setDisabledActionModeMenuItems(WebSettings settings, int menuItems)

Disables the action mode menu items according to menuItems flag.

static void setForceDark(WebSettings settings, int forceDarkMode)

Set the force dark mode for this WebView.

static void setOffscreenPreRaster(WebSettings settings, boolean enabled)

Sets whether this WebView should raster tiles when it is offscreen but attached to a window.

static void setSafeBrowsingEnabled(WebSettings settings, boolean enabled)

Sets whether Safe Browsing is enabled.

Inherited methods

Constants

FORCE_DARK_AUTO

public static final int FORCE_DARK_AUTO

Enable force dark dependent on the state of the WebView parent view. If the WebView parent view is being automatically force darkened (@see android.view.View#setForceDarkAllowed), then WebView content will be rendered so as to emulate a dark theme. WebViews that are not attached to the view hierarchy will not be inverted.

Constant Value: 1 (0x00000001)

FORCE_DARK_OFF

public static final int FORCE_DARK_OFF

Disable force dark, irrespective of the force dark mode of the WebView parent. In this mode, WebView content will always be rendered as-is, regardless of whether native views are being automatically darkened.

Constant Value: 0 (0x00000000)

FORCE_DARK_ON

public static final int FORCE_DARK_ON

Unconditionally enable force dark. In this mode WebView content will always be rendered so as to emulate a dark theme.

Constant Value: 2 (0x00000002)

Public methods

getDisabledActionModeMenuItems

public static int getDisabledActionModeMenuItems (WebSettings settings)

Gets the action mode menu items that are disabled, expressed in an integer field flag. The default value is WebSettings.MENU_ITEM_NONE

This method should only be called if WebViewFeature.isFeatureSupported(String) returns true for WebViewFeature.DISABLED_ACTION_MODE_MENU_ITEMS.

Parameters
settings WebSettings

Returns
int all the disabled menu item flags combined with bitwise OR.

getForceDark

public static int getForceDark (WebSettings settings)

Get the force dark mode for this WebView.

The default force dark mode is FORCE_DARK_AUTO.

This method should only be called if WebViewFeature.isFeatureSupported(String) returns true for WebViewFeature.FORCE_DARK.

Parameters
settings WebSettings

Returns
int the currently set force dark mode.

getOffscreenPreRaster

public static boolean getOffscreenPreRaster (WebSettings settings)

Gets whether this WebView should raster tiles when it is offscreen but attached to a window.

This method should only be called if WebViewFeature.isFeatureSupported(String) returns true for WebViewFeature.OFF_SCREEN_PRERASTER.

Parameters
settings WebSettings

Returns
boolean true if this WebView will raster tiles when it is offscreen but attached to a window.

getSafeBrowsingEnabled

public static boolean getSafeBrowsingEnabled (WebSettings settings)

Gets whether Safe Browsing is enabled. See setSafeBrowsingEnabled(WebSettings, boolean).

This method should only be called if WebViewFeature.isFeatureSupported(String) returns true for WebViewFeature.SAFE_BROWSING_ENABLE.

Parameters
settings WebSettings

Returns
boolean true if Safe Browsing is enabled and false otherwise.

setDisabledActionModeMenuItems

public static void setDisabledActionModeMenuItems (WebSettings settings, 
                int menuItems)

Disables the action mode menu items according to menuItems flag.

This method should only be called if WebViewFeature.isFeatureSupported(String) returns true for WebViewFeature.DISABLED_ACTION_MODE_MENU_ITEMS.

Parameters
settings WebSettings

menuItems int: an integer field flag for the menu items to be disabled.

setForceDark

public static void setForceDark (WebSettings settings, 
                int forceDarkMode)

Set the force dark mode for this WebView.

This method should only be called if WebViewFeature.isFeatureSupported(String) returns true for WebViewFeature.FORCE_DARK.

Parameters
settings WebSettings

forceDarkMode int: the force dark mode to set.

setOffscreenPreRaster

public static void setOffscreenPreRaster (WebSettings settings, 
                boolean enabled)

Sets whether this WebView should raster tiles when it is offscreen but attached to a window. Turning this on can avoid rendering artifacts when animating an offscreen WebView on-screen. Offscreen WebViews in this mode use more memory. The default value is false.
Please follow these guidelines to limit memory usage:

  • WebView size should be not be larger than the device screen size.
  • Limit use of this mode to a small number of WebViews. Use it for visible WebViews and WebViews about to be animated to visible.

This method should only be called if WebViewFeature.isFeatureSupported(String) returns true for WebViewFeature.OFF_SCREEN_PRERASTER.

Parameters
settings WebSettings

enabled boolean

setSafeBrowsingEnabled

public static void setSafeBrowsingEnabled (WebSettings settings, 
                boolean enabled)

Sets whether Safe Browsing is enabled. Safe Browsing allows WebView to protect against malware and phishing attacks by verifying the links.

Safe Browsing can be disabled for all WebViews using a manifest tag (read general Safe Browsing info). The manifest tag has a lower precedence than this API.

Safe Browsing is enabled by default for devices which support it.

This method should only be called if WebViewFeature.isFeatureSupported(String) returns true for WebViewFeature.SAFE_BROWSING_ENABLE.

Parameters
settings WebSettings

enabled boolean: Whether Safe Browsing is enabled.