### Class

# WebKit WebView

unstable since: 6.0

#### Description [src]

    class WebKit.WebView : WebKit.WebViewBase
      implements Gtk.Accessible, Gtk.Buildable, Gtk.ConstraintTarget {
      priv: WebKitWebViewPrivate*
    }

The central class of the WPE WebKit and WebKitGTK APIs.

`WebKitWebView` is the central class of the WPE WebKit and WebKitGTK APIs. It is responsible for managing the drawing of the content and forwarding of events. You can load any URI into the `WebKitWebView` or a data string. With `WebKitSettings` you can control various aspects of the rendering and loading of the content.

Note that in WebKitGTK, `WebKitWebView` is scrollable by itself, so you don’t need to embed it in a `GtkScrolledWindow`.

Available since: 6.0

#### Ancestors

- WebKitWebViewBase
- GtkWidget
- GInitiallyUnowned
- GObject

#### Implements

- GtkAccessible
- GtkBuildable
- GtkConstraintTarget

#### Constructors

###### webkit_web_view_new

Creates a new `WebKitWebView` with the default `WebKitWebContext`.

unstable since: 6.0

#### Instance methods

###### webkit_web_view_call_async_javascript_function

Asynchronously call `body` with `arguments` in the script world with name `world_name` of the main frame current context in `web_view`. The `arguments` values must be one of the following types, or contain only the following GVariant types: number, string and dictionary. The result of the operation can be a Promise that will be properly passed to the callback. If `world_name` is `NULL`, the default world is used. Any value that is not `NULL` is a distin ct world. The `source_uri` will be shown in exceptions and doesn’t affect the behavior of the script. When not provided, the document URL is used.

since: 2.40

###### webkit_web_view_call_async_javascript_function_finish

Finish an asynchronous operation started with webkit_web_view_call_async_javascript_function().

since: 2.40

###### webkit_web_view_can_execute_editing_command

Asynchronously check if it is possible to execute the given editing command.

unstable since: 6.0

###### webkit_web_view_can_execute_editing_command_finish

Finish an asynchronous operation started with webkit_web_view_can_execute_editing_command().

unstable since: 6.0

###### webkit_web_view_can_go_back

Determines whether `web_view` has a previous history item.

unstable since: 6.0

###### webkit_web_view_can_go_forward

Determines whether `web_view` has a next history item.

unstable since: 6.0

###### webkit_web_view_can_show_mime_type

Whether or not a MIME type can be displayed in `web_view`.

unstable since: 6.0

###### webkit_web_view_download_uri

Requests downloading of the specified URI string for `web_view`.

unstable since: 6.0

###### webkit_web_view_evaluate_javascript

Asynchronously evaluate `script` in the script world with name `world_name` of the main frame current context in `web_view`. If `world_name` is `NULL`, the default world is used. Any value that is not `NULL` is a distinct world. The `source_uri` will be shown in exceptions and doesn’t affect the behavior of the script. When not provided, the document URL is used.

since: 2.40

###### webkit_web_view_evaluate_javascript_finish

Finish an asynchronous operation started with webkit_web_view_evaluate_javascript().

since: 2.40

###### webkit_web_view_execute_editing_command

Request to execute the given `command` for `web_view`.

unstable since: 6.0

###### webkit_web_view_execute_editing_command_with_argument

Request to execute the given `command` with `argument` for `web_view`.

since: 2.10

###### webkit_web_view_get_automation_presentation_type

Get the presentation type of `WebKitWebView` when created for automation.

since: 2.28

###### webkit_web_view_get_back_forward_list

Obtains the `WebKitBackForwardList` associated with the given `WebKitWebView`.

unstable since: 6.0

###### webkit_web_view_get_background_color

Gets the color that is used to draw the `web_view` background.

since: 2.8

###### webkit_web_view_get_camera_capture_state

Get the camera capture state of a `WebKitWebView`.

since: 2.34

###### webkit_web_view_get_context

Gets the web context of `web_view`.

unstable since: 6.0

###### webkit_web_view_get_custom_charset

Returns the current custom character encoding name of `web_view`.

unstable since: 6.0

###### webkit_web_view_get_default_content_security_policy

Gets the configured default Content-Security-Policy.

since: 2.38

###### webkit_web_view_get_display_capture_state

Get the display capture state of a `WebKitWebView`.

since: 2.34

###### webkit_web_view_get_editor_state

Gets the web editor state of `web_view`.

since: 2.10

###### webkit_web_view_get_estimated_load_progress

Gets the value of the `WebKitWebView:estimated-load-progress` property.

unstable since: 6.0

###### webkit_web_view_get_favicon

Returns favicon currently associated to `web_view`.

unstable since: 6.0

###### webkit_web_view_get_find_controller

Gets the `WebKitFindController`.

unstable since: 6.0

###### webkit_web_view_get_input_method_context

Get the `WebKitInputMethodContext` currently in use by `web_view`.

since: 2.28

###### webkit_web_view_get_inspector

Get the `WebKitWebInspector` associated to `web_view`.

unstable since: 6.0

###### webkit_web_view_get_is_muted

Gets the mute state of `web_view`.

since: 2.30

###### webkit_web_view_get_is_web_process_responsive

Get whether the current web process of a `WebKitWebView` is responsive.

since: 2.34

###### webkit_web_view_get_main_resource

Return the main resource of `web_view`.

unstable since: 6.0

###### webkit_web_view_get_microphone_capture_state

Get the microphone capture state of a `WebKitWebView`.

since: 2.34

###### webkit_web_view_get_network_session

Get the `WebKitNetworkSession` associated to `web_view`.

since: 2.40

###### webkit_web_view_get_page_id

Get the identifier of the `WebKitWebPage` corresponding to the `WebKitWebView`.

unstable since: 6.0

###### webkit_web_view_get_session_state

Gets the current session state of `web_view`.

since: 2.12

###### webkit_web_view_get_settings

Gets the `WebKitSettings` currently applied to `web_view`.

unstable since: 6.0

###### webkit_web_view_get_snapshot

Asynchronously retrieves a snapshot of `web_view` for `region`.

unstable since: 6.0

###### webkit_web_view_get_snapshot_finish

Finishes an asynchronous operation started with webkit_web_view_get_snapshot().

unstable since: 6.0

###### webkit_web_view_get_title

Gets the value of the `WebKitWebView:title` property.

unstable since: 6.0

###### webkit_web_view_get_tls_info

Retrieves the `GTlsCertificate` associated with the main resource of `web_view`.

unstable since: 6.0

###### webkit_web_view_get_uri

Returns the current active URI of `web_view`.

unstable since: 6.0

###### webkit_web_view_get_user_content_manager

Gets the user content manager associated to `web_view`.

since: 2.6

###### webkit_web_view_get_web_extension_mode

Get the view’s `WebKitWebExtensionMode`.

since: 2.38

###### webkit_web_view_get_website_policies

Gets the default website policies.

since: 2.30

###### webkit_web_view_get_window_properties

Get the `WebKitWindowProperties` object.

unstable since: 6.0

###### webkit_web_view_get_zoom_level

Set the zoom level of `web_view`.

unstable since: 6.0

###### webkit_web_view_go_back

Loads the previous history item.

unstable since: 6.0

###### webkit_web_view_go_forward

Loads the next history item.

unstable since: 6.0

###### webkit_web_view_go_to_back_forward_list_item

Loads the specific history item `list_item`.

unstable since: 6.0

###### webkit_web_view_is_controlled_by_automation

Get whether a `WebKitWebView` was created with `WebKitWebView:is-controlled-by-automation` property enabled.

since: 2.18

###### webkit_web_view_is_editable

Gets whether the user is allowed to edit the HTML document.

since: 2.8

###### webkit_web_view_is_loading

Gets the value of the `WebKitWebView:is-loading` property.

unstable since: 6.0

###### webkit_web_view_is_playing_audio

Gets the value of the `WebKitWebView:is-playing-audio` property.

since: 2.8

###### webkit_web_view_load_alternate_html

Load the given `content` string for the URI `content_uri`.

unstable since: 6.0

###### webkit_web_view_load_bytes

Load the specified `bytes` into `web_view` using the given `mime_type` and `encoding`.

since: 2.6

###### webkit_web_view_load_html

Load the given `content` string with the specified `base_uri`.

unstable since: 6.0

###### webkit_web_view_load_plain_text

Load the specified `plain_text` string into `web_view`.

unstable since: 6.0

###### webkit_web_view_load_request

Requests loading of the specified `WebKitURIRequest`.

unstable since: 6.0

###### webkit_web_view_load_uri

Requests loading of the specified URI string.

unstable since: 6.0

###### webkit_web_view_reload

Reloads the current contents of `web_view`.

unstable since: 6.0

###### webkit_web_view_reload_bypass_cache

Reloads the current contents of `web_view` without using any cached data.

unstable since: 6.0

###### webkit_web_view_restore_session_state

Restore the `web_view` session state from `state`.

since: 2.12

###### webkit_web_view_save

Asynchronously save the current web page.

unstable since: 6.0

###### webkit_web_view_save_finish

Finish an asynchronous operation started with webkit_web_view_save().

unstable since: 6.0

###### webkit_web_view_save_to_file

Asynchronously save the current web page.

unstable since: 6.0

###### webkit_web_view_save_to_file_finish

Finish an asynchronous operation started with webkit_web_view_save_to_file().

unstable since: 6.0

###### webkit_web_view_send_message_to_page

Send `message` to the `WebKitWebPage` corresponding to `web_view`.

since: 2.28

###### webkit_web_view_send_message_to_page_finish

Finish an asynchronous operation started with webkit_web_view_send_message_to_page().

since: 2.28

###### webkit_web_view_set_background_color

Sets the color that will be used to draw the `web_view` background.

since: 2.8

###### webkit_web_view_set_camera_capture_state

Set the camera capture state of a `WebKitWebView`.

since: 2.34

###### webkit_web_view_set_cors_allowlist

Sets the `allowlist` for CORS.

since: 2.34

###### webkit_web_view_set_custom_charset

Sets the current custom character encoding override of `web_view`.

unstable since: 6.0

###### webkit_web_view_set_display_capture_state

Set the display capture state of a `WebKitWebView`.

since: 2.34

###### webkit_web_view_set_editable

Sets whether the user is allowed to edit the HTML document.

since: 2.8

###### webkit_web_view_set_input_method_context

Set the `WebKitInputMethodContext` to be used by `web_view`.

since: 2.28

###### webkit_web_view_set_is_muted

Sets the mute state of `web_view`.

since: 2.30

###### webkit_web_view_set_microphone_capture_state

Set the microphone capture state of a `WebKitWebView`.

since: 2.34

###### webkit_web_view_set_settings

Sets the `WebKitSettings` to be applied to `web_view`.

unstable since: 6.0

###### webkit_web_view_set_zoom_level

Set the zoom level of `web_view`.

unstable since: 6.0

###### webkit_web_view_stop_loading

Stops any ongoing loading operation in `web_view`.

unstable since: 6.0

###### webkit_web_view_terminate_web_process

Terminates the web process associated to `web_view`.

since: 2.34

###### webkit_web_view_try_close

Tries to close the `web_view`.

since: 2.12

##### Methods inherited from GtkWidget (162)

Please see GtkWidget for a full list of methods.

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

##### Methods inherited from GtkAccessible (19)

###### gtk_accessible_announce

Requests the user’s screen reader to announce the given message.

unstable since: 4.14

###### gtk_accessible_get_accessible_parent

Retrieves the accessible parent for an accessible object.

unstable since: 4.10

###### gtk_accessible_get_accessible_role

Retrieves the accessible role of an accessible object.

unstable since: 4.0

###### gtk_accessible_get_at_context

Retrieves the accessible implementation for the given `GtkAccessible`.

unstable since: 4.10

###### gtk_accessible_get_bounds

Queries the coordinates and dimensions of this accessible.

unstable since: 4.10

###### gtk_accessible_get_first_accessible_child

Retrieves the first accessible child of an accessible object.

unstable since: 4.10

###### gtk_accessible_get_next_accessible_sibling

Retrieves the next accessible sibling of an accessible object.

unstable since: 4.10

###### gtk_accessible_get_platform_state

Query a platform state, such as focus.

unstable since: 4.10

###### gtk_accessible_reset_property

Resets the accessible `property` to its default value.

unstable since: 4.0

###### gtk_accessible_reset_relation

Resets the accessible `relation` to its default value.

unstable since: 4.0

###### gtk_accessible_reset_state

Resets the accessible `state` to its default value.

unstable since: 4.0

###### gtk_accessible_set_accessible_parent

Sets the parent and sibling of an accessible object.

unstable since: 4.10

###### gtk_accessible_update_next_accessible_sibling

Updates the next accessible sibling of `self`.

unstable since: 4.10

###### gtk_accessible_update_property

Updates a list of accessible properties.

unstable since: 4.0

###### gtk_accessible_update_property_value

Updates an array of accessible properties.

unstable since: 4.0

###### gtk_accessible_update_relation

Updates a list of accessible relations.

unstable since: 4.0

###### gtk_accessible_update_relation_value

Updates an array of accessible relations.

unstable since: 4.0

###### gtk_accessible_update_state

Updates a list of accessible states. See the `GtkAccessibleState` documentation for the value types of accessible states.

unstable since: 4.0

###### gtk_accessible_update_state_value

Updates an array of accessible states.

unstable since: 4.0

##### Methods inherited from GtkBuildable (1)

###### gtk_buildable_get_buildable_id

Gets the ID of the `buildable` object.

unstable since: 4.0

#### Properties

###### WebKit.WebView:automation-presentation-type

The `WebKitAutomationBrowsingContextPresentation` of `WebKitWebView`. This should only be used when creating a new `WebKitWebView` as a response to `WebKitAutomationSession::create-web-view` signal request. If the new WebView was added to a new tab of current browsing context window `WEBKIT_AUTOMATION_BROWSING_CONTEXT_PRESENTATION_TAB` should be used.

since: 2.28

###### WebKit.WebView:camera-capture-state

Capture state of the camera device. Whenever the user grants a media-request sent by the web page, requesting video capture capabilities (`navigator.mediaDevices.getUserMedia({video: true})`) this property will be set to `WEBKIT_MEDIA_CAPTURE_STATE_ACTIVE`.

since: 2.34

###### WebKit.WebView:default-content-security-policy

The default Content-Security-Policy used by the webview as if it were set by an HTTP header.

since: 2.38

###### WebKit.WebView:display-capture-state

Capture state of the display device. Whenever the user grants a media-request sent by the web page, requesting screencasting capabilities (`navigator.mediaDevices.getDisplayMedia() this property will be set to`WEBKIT_MEDIA_CAPTURE_STATE_ACTIVE`.

since: 2.34

###### WebKit.WebView:editable

Whether the pages loaded inside `WebKitWebView` are editable. For more information see webkit_web_view_set_editable().

since: 2.8

###### WebKit.WebView:estimated-load-progress

An estimate of the percent completion for the current loading operation. This value will range from 0.0 to 1.0 and, once a load completes, will remain at 1.0 until a new load starts, at which point it will be reset to 0.0. The value is an estimate based on the total number of bytes expected to be received for a document, including all its possible subresources and child documents.

unstable since: 6.0

###### WebKit.WebView:favicon

The favicon currently associated to the `WebKitWebView`. See `webkit_web_view_get_favicon()` for more details.

unstable since: 6.0

###### WebKit.WebView:is-controlled-by-automation

Whether the `WebKitWebView` is controlled by automation tools (e.g. WebDriver, Selenium). This is required for views returned as a response to `WebKitAutomationSession::create-web-view` signal, alongside any view you want to control during an automation session.

since: 2.18

###### WebKit.WebView:is-loading

Whether the `WebKitWebView` is currently loading a page. This property becomes `TRUE` as soon as a new load operation is requested and before the `WebKitWebView::load-changed` signal is emitted with `WEBKIT_LOAD_STARTED` and at that point the active URI is the requested one. When the load operation finishes the property is set to `FALSE` before `WebKitWebView::load-changed` is emitted with `WEBKIT_LOAD_FINISHED`.

unstable since: 6.0

###### WebKit.WebView:is-muted

Whether the `WebKitWebView` audio is muted. When `TRUE`, audio is silenced. It may still be playing, i.e. `WebKitWebView:is-playing-audio` may be `TRUE`.

since: 2.30

###### WebKit.WebView:is-playing-audio

Whether the `WebKitWebView` is currently playing audio from a page. This property becomes `TRUE` as soon as web content starts playing any kind of audio. When a page is no longer playing any kind of sound, the property is set back to `FALSE`.

since: 2.8

###### WebKit.WebView:is-web-process-responsive

Whether the web process currently associated to the `WebKitWebView` is responsive.

since: 2.34

###### WebKit.WebView:microphone-capture-state

Capture state of the microphone device. Whenever the user grants a media-request sent by the web page, requesting audio capture capabilities (`navigator.mediaDevices.getUserMedia({audio: true})`) this property will be set to `WEBKIT_MEDIA_CAPTURE_STATE_ACTIVE`.

since: 2.34

###### WebKit.WebView:network-session

The `WebKitNetworkSession` of the view.

since: 2.40

###### WebKit.WebView:page-id

The identifier of the `WebKitWebPage` corresponding to the `WebKitWebView`.

since: 2.28

###### WebKit.WebView:related-view

The related `WebKitWebView` used when creating the view to share the same web process and network session. This property is not readable because the related web view is only valid during the object construction.

since: 2.4

###### WebKit.WebView:settings

The `WebKitSettings` of the view.

since: 2.6

###### WebKit.WebView:title

The main frame document title of this `WebKitWebView`. If the title has not been received yet, it will be `NULL`.

unstable since: 6.0

###### WebKit.WebView:uri

The current active URI of the `WebKitWebView`. See `webkit_web_view_get_uri()` for more details.

unstable since: 6.0

###### WebKit.WebView:user-content-manager

The `WebKitUserContentManager` of the view.

since: 2.6

###### WebKit.WebView:web-context

The `WebKitWebContext` of the view.

unstable since: 6.0

###### WebKit.WebView:web-extension-mode

This configures `web_view` to treat the content as a WebExtension.

since: 2.38

###### WebKit.WebView:website-policies

The `WebKitWebsitePolicies` for the view.

since: 2.30

###### WebKit.WebView:zoom-level

The zoom level of the `WebKitWebView` content. See `webkit_web_view_set_zoom_level()` for more details.

unstable since: 6.0

##### Properties inherited from GtkWidget (34)

###### Gtk.Widget:can-focus

Whether the widget or any of its descendents can accept the input focus.

unstable since: 4.0

###### Gtk.Widget:can-target

Whether the widget can receive pointer events.

unstable since: 4.0

###### Gtk.Widget:css-classes

A list of css classes applied to this widget.

unstable since: 4.0

###### Gtk.Widget:css-name

The name of this widget in the CSS tree.

unstable since: 4.0

###### Gtk.Widget:cursor

The cursor used by `widget`.

unstable since: 4.0

###### Gtk.Widget:focus-on-click

Whether the widget should grab focus when it is clicked with the mouse.

unstable since: 4.0

###### Gtk.Widget:focusable

Whether this widget itself will accept the input focus.

unstable since: 4.0

###### Gtk.Widget:halign

How to distribute horizontal space if widget gets extra space.

unstable since: 4.0

###### Gtk.Widget:has-default

Whether the widget is the default widget.

unstable since: 4.0

###### Gtk.Widget:has-focus

Whether the widget has the input focus.

unstable since: 4.0

###### Gtk.Widget:has-tooltip

Enables or disables the emission of the ::query-tooltip signal on `widget`.

unstable since: 4.0

###### Gtk.Widget:height-request

Override for height request of the widget.

unstable since: 4.0

###### Gtk.Widget:hexpand

Whether to expand horizontally.

unstable since: 4.0

###### Gtk.Widget:hexpand-set

Whether to use the `hexpand` property.

unstable since: 4.0

###### Gtk.Widget:layout-manager

The `GtkLayoutManager` instance to use to compute the preferred size of the widget, and allocate its children.

unstable since: 4.0

###### Gtk.Widget:margin-bottom

Margin on bottom side of widget.

unstable since: 4.0

###### Gtk.Widget:margin-end

Margin on end of widget, horizontally.

unstable since: 4.0

###### Gtk.Widget:margin-start

Margin on start of widget, horizontally.

unstable since: 4.0

###### Gtk.Widget:margin-top

Margin on top side of widget.

unstable since: 4.0

###### Gtk.Widget:name

The name of the widget.

unstable since: 4.0

###### Gtk.Widget:opacity

The requested opacity of the widget.

unstable since: 4.0

###### Gtk.Widget:overflow

How content outside the widget’s content area is treated.

unstable since: 4.0

###### Gtk.Widget:parent

The parent widget of this widget.

unstable since: 4.0

###### Gtk.Widget:receives-default

Whether the widget will receive the default action when it is focused.

unstable since: 4.0

###### Gtk.Widget:root

The `GtkRoot` widget of the widget tree containing this widget.

unstable since: 4.0

###### Gtk.Widget:scale-factor

The scale factor of the widget.

unstable since: 4.0

###### Gtk.Widget:sensitive

Whether the widget responds to input.

unstable since: 4.0

###### Gtk.Widget:tooltip-markup

Sets the text of tooltip to be the given string, which is marked up with Pango markup.

unstable since: 4.0

###### Gtk.Widget:tooltip-text

Sets the text of tooltip to be the given string.

unstable since: 4.0

###### Gtk.Widget:valign

How to distribute vertical space if widget gets extra space.

unstable since: 4.0

###### Gtk.Widget:vexpand

Whether to expand vertically.

unstable since: 4.0

###### Gtk.Widget:vexpand-set

Whether to use the `vexpand` property.

unstable since: 4.0

###### Gtk.Widget:visible

Whether the widget is visible.

unstable since: 4.0

###### Gtk.Widget:width-request

Override for width request of the widget.

unstable since: 4.0

##### Properties inherited from GtkAccessible (1)

###### Gtk.Accessible:accessible-role

The accessible role of the given `GtkAccessible` implementation.

unstable since: 4.0

#### Signals

###### WebKit.WebView::authenticate

This signal is emitted when the user is challenged with HTTP authentication. To let the application access or supply the credentials as well as to allow the client application to either cancel the request or perform the authentication, the signal will pass an instance of the `WebKitAuthenticationRequest` in the `request` argument. To handle this signal asynchronously you should keep a ref of the request and return `TRUE`. To disable HTTP authentication entirely, connect to this signal and simply return `TRUE`.

since: 2.2

###### WebKit.WebView::close

Emitted when closing a `WebKitWebView` is requested. This occurs when a call is made from JavaScript’s <function>window.close</function> function or after trying to close the `web_view` with webkit_web_view_try_close(). It is the owner’s responsibility to handle this signal to hide or destroy the `WebKitWebView`, if necessary.

unstable since: 6.0

###### WebKit.WebView::context-menu

Emitted when a context menu is about to be displayed to give the application a chance to customize the proposed menu, prevent the menu from being displayed, or build its own context menu. <itemizedlist> <listitem><para> To customize the proposed menu you can use webkit_context_menu_prepend(), `webkit_context_menu_append()` or `webkit_context_menu_insert()` to add new `WebKitContextMenuItem`s to `context_menu`, `webkit_context_menu_move_item()` to reorder existing items, or `webkit_context_menu_remove()` to remove an existing item. The signal handler should return `FALSE`, and the menu represented by `context_menu` will be shown. </para></listitem> <listitem><para> To prevent the menu from being displayed you can just connect to this signal and return `TRUE` so that the proposed menu will not be shown. </para></listitem> <listitem><para> To build your own menu, you can remove all items from the proposed menu with webkit_context_menu_remove_all(), add your own items and return `FALSE` so that the menu will be shown. You can also ignore the proposed `WebKitContextMenu`, build your own `GtkMenu` and return `TRUE` to prevent the proposed menu from being shown. </para></listitem> <listitem><para> If you just want the default menu to be shown always, simply don’t connect to this signal because showing the proposed context menu is the default behaviour. </para></listitem> </itemizedlist>

unstable since: 6.0

###### WebKit.WebView::context-menu-dismissed

Emitted after `WebKitWebView::context-menu` signal, if the context menu is shown, to notify that the context menu is dismissed.

unstable since: 6.0

###### WebKit.WebView::create

Emitted when the creation of a new `WebKitWebView` is requested. If this signal is handled the signal handler should return the newly created `WebKitWebView`.

unstable since: 6.0

###### WebKit.WebView::decide-policy

This signal is emitted when WebKit is requesting the client to decide a policy decision, such as whether to navigate to a page, open a new window or whether or not to download a resource. The `WebKitNavigationPolicyDecision` passed in the `decision` argument is a generic type, but should be casted to a more specific type when making the decision. For example:

unstable since: 6.0

###### WebKit.WebView::enter-fullscreen

Emitted when JavaScript code calls <function>element.webkitRequestFullScreen</function>. If the signal is not handled the `WebKitWebView` will proceed to full screen its top level window. This signal can be used by client code to request permission to the user prior doing the full screen transition and eventually prepare the top-level window (e.g. hide some widgets that would otherwise be part of the full screen window).

unstable since: 6.0

###### WebKit.WebView::insecure-content-detected

Prior to 2.46, this signal was emitted when insecure content was loaded in a secure content. Since 2.46, this signal is generally no longer emitted.

unstable deprecated: 2.46 since: 6.0

###### WebKit.WebView::leave-fullscreen

Emitted when the `WebKitWebView` is about to restore its top level window out of its full screen state. This signal can be used by client code to restore widgets hidden during the `WebKitWebView::enter-fullscreen` stage for instance.

unstable since: 6.0

###### WebKit.WebView::load-changed

Emitted when a load operation in `web_view` changes. The signal is always emitted with `WEBKIT_LOAD_STARTED` when a new load request is made and `WEBKIT_LOAD_FINISHED` when the load finishes successfully or due to an error. When the ongoing load operation fails `WebKitWebView::load-failed` signal is emitted before `WebKitWebView::load-changed` is emitted with `WEBKIT_LOAD_FINISHED`. If a redirection is received from the server, this signal is emitted with `WEBKIT_LOAD_REDIRECTED` after the initial emission with `WEBKIT_LOAD_STARTED` and before `WEBKIT_LOAD_COMMITTED`. When the page content starts arriving the signal is emitted with `WEBKIT_LOAD_COMMITTED` event.

unstable since: 6.0

###### WebKit.WebView::load-failed

Emitted when an error occurs during a load operation. If the error happened when starting to load data for a page `load_event` will be `WEBKIT_LOAD_STARTED`. If it happened while loading a committed data source `load_event` will be `WEBKIT_LOAD_COMMITTED`. Since a load error causes the load operation to finish, the signal WebKitWebView::load-changed will always be emitted with `WEBKIT_LOAD_FINISHED` event right after this one.

unstable since: 6.0

###### WebKit.WebView::load-failed-with-tls-errors

Emitted when a TLS error occurs during a load operation. To allow an exception for this `certificate` and the host of `failing_uri` use webkit_web_context_allow_tls_certificate_for_host().

since: 2.6

###### WebKit.WebView::mouse-target-changed

This signal is emitted when the mouse cursor moves over an element such as a link, image or a media element. To determine what type of element the mouse cursor is over, a Hit Test is performed on the current mouse coordinates and the result is passed in the `hit_test_result` argument. The `modifiers` argument is a bitmask of `GdkModifierType` flags indicating the state of modifier keys. The signal is emitted again when the mouse is moved out of the current element with a new `hit_test_result`.

unstable since: 6.0

###### WebKit.WebView::permission-request

This signal is emitted when WebKit is requesting the client to decide about a permission request, such as allowing the browser to switch to fullscreen mode, sharing its location or similar operations.

unstable since: 6.0

###### WebKit.WebView::print

Emitted when printing is requested on `web_view`, usually by a JavaScript call, before the print dialog is shown. This signal can be used to set the initial print settings and page setup of `print_operation` to be used as default values in the print dialog. You can call `webkit_print_operation_set_print_settings()` and `webkit_print_operation_set_page_setup()` and then return `FALSE` to propagate the event so that the print dialog is shown.

unstable since: 6.0

###### WebKit.WebView::query-permission-state

This signal allows the User-Agent to respond to permission requests for powerful features, as specified by the Permissions W3C Specification. You can reply to the query using webkit_permission_state_query_finish().

since: 2.40

###### WebKit.WebView::ready-to-show

Emitted after `WebKitWebView::create` on the newly created `WebKitWebView` when it should be displayed to the user. When this signal is emitted all the information about how the window should look, including size, position, whether the location, status and scrollbars should be displayed, is already set on the `WebKitWindowProperties` of `web_view`. See also webkit_web_view_get_window_properties().

unstable since: 6.0

###### WebKit.WebView::resource-load-started

Emitted when a new resource is going to be loaded. The `request` parameter contains the `WebKitURIRequest` that will be sent to the server. You can monitor the load operation by connecting to the different signals of `resource`.

unstable since: 6.0

###### WebKit.WebView::run-as-modal

Emitted after `WebKitWebView::ready-to-show` on the newly created `WebKitWebView` when JavaScript code calls <function>window.showModalDialog</function>. The purpose of this signal is to allow the client application to prepare the new view to behave as modal. Once the signal is emitted a new main loop will be run to block user interaction in the parent `WebKitWebView` until the new dialog is closed.

unstable since: 6.0

###### WebKit.WebView::run-color-chooser

This signal is emitted when the user interacts with a HTML element, requesting from WebKit to show a dialog to select a color. To let the application know the details of the color chooser, as well as to allow the client application to either cancel the request or perform an actual color selection, the signal will pass an instance of the `WebKitColorChooserRequest` in the `request` argument.

since: 2.8

###### WebKit.WebView::run-file-chooser

This signal is emitted when the user interacts with a HTML element, requesting from WebKit to show a dialog to select one or more files to be uploaded. To let the application know the details of the file chooser, as well as to allow the client application to either cancel the request or perform an actual selection of files, the signal will pass an instance of the `WebKitFileChooserRequest` in the `request` argument.

unstable since: 6.0

###### WebKit.WebView::script-dialog

Emitted when JavaScript code calls <function>window.alert</function>, <function>window.confirm</function> or <function>window.prompt</function>, or when <function>onbeforeunload</function> event is fired. The `dialog` parameter should be used to build the dialog. If the signal is not handled a different dialog will be built and shown depending on the dialog type: <itemizedlist> <listitem><para> `WEBKIT_SCRIPT_DIALOG_ALERT`: message dialog with a single Close button. </para></listitem> <listitem><para> `WEBKIT_SCRIPT_DIALOG_CONFIRM`: message dialog with OK and Cancel buttons. </para></listitem> <listitem><para> `WEBKIT_SCRIPT_DIALOG_PROMPT`: message dialog with OK and Cancel buttons and a text entry with the default text. </para></listitem> <listitem><para> `WEBKIT_SCRIPT_DIALOG_BEFORE_UNLOAD_CONFIRM`: message dialog with Stay and Leave buttons. </para></listitem> </itemizedlist>

unstable since: 6.0

###### WebKit.WebView::show-notification

This signal is emitted when a notification should be presented to the user. The `notification` is kept alive until either: 1) the web page cancels it or 2) a navigation happens.

since: 2.8

###### WebKit.WebView::show-option-menu

This signal is emitted when a select element in `web_view` needs to display a dropdown menu. This signal can be used to show a custom menu, using `menu` to get the details of all items that should be displayed. The area of the element in the `WebKitWebView` is given as `rectangle` parameter, it can be used to position the menu. To handle this signal asynchronously you should keep a ref of the `menu`.

since: 2.18

###### WebKit.WebView::submit-form

This signal is emitted when a form is about to be submitted. The `request` argument passed contains information about the text fields of the form. This is typically used to store login information that can be used later to pre-fill the form. The form will not be submitted until `webkit_form_submission_request_submit()` is called.

unstable since: 6.0

###### WebKit.WebView::user-message-received

This signal is emitted when a `WebKitUserMessage` is received from the `WebKitWebPage` corresponding to `web_view`. You can reply to the message using webkit_user_message_send_reply().

since: 2.28

###### WebKit.WebView::web-process-terminated

This signal is emitted when the web process terminates abnormally due to `reason`.

since: 2.20

##### Signals inherited from GtkWidget (13)

###### GtkWidget::destroy

Signals that all holders of a reference to the widget should release the reference that they hold.

unstable since: 4.0

###### GtkWidget::direction-changed

Emitted when the text direction of a widget changes.

unstable since: 4.0

###### GtkWidget::hide

Emitted when `widget` is hidden.

unstable since: 4.0

###### GtkWidget::keynav-failed

Emitted if keyboard navigation fails.

unstable since: 4.0

###### GtkWidget::map

Emitted when `widget` is going to be mapped.

unstable since: 4.0

###### GtkWidget::mnemonic-activate

Emitted when a widget is activated via a mnemonic.

unstable since: 4.0

###### GtkWidget::move-focus

Emitted when the focus is moved.

unstable since: 4.0

###### GtkWidget::query-tooltip

Emitted when the widget’s tooltip is about to be shown.

unstable since: 4.0

###### GtkWidget::realize

Emitted when `widget` is associated with a `GdkSurface`.

unstable since: 4.0

###### GtkWidget::show

Emitted when `widget` is shown.

unstable since: 4.0

###### GtkWidget::state-flags-changed

Emitted when the widget state changes.

unstable since: 4.0

###### GtkWidget::unmap

Emitted when `widget` is going to be unmapped.

unstable since: 4.0

###### GtkWidget::unrealize

Emitted when the `GdkSurface` associated with `widget` is destroyed.

unstable since: 4.0

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

since: 2.0

#### Class structure

    struct WebKitWebViewClass {
      WebKitWebViewBaseClass parent;
      void (* load_changed) (
        WebKitWebView* web_view,
        WebKitLoadEvent load_event
      );
      gboolean (* load_failed) (
        WebKitWebView* web_view,
        WebKitLoadEvent load_event,
        const gchar* failing_uri,
        GError* error
      );
      GtkWidget* (* create) (
        WebKitWebView* web_view,
        WebKitNavigationAction* navigation_action
      );
      void (* ready_to_show) (
        WebKitWebView* web_view
      );
      void (* run_as_modal) (
        WebKitWebView* web_view
      );
      void (* close) (
        WebKitWebView* web_view
      );
      gboolean (* script_dialog) (
        WebKitWebView* web_view,
        WebKitScriptDialog* dialog
      );
      gboolean (* decide_policy) (
        WebKitWebView* web_view,
        WebKitPolicyDecision* decision,
        WebKitPolicyDecisionType type
      );
      gboolean (* permission_request) (
        WebKitWebView* web_view,
        WebKitPermissionRequest* permission_request
      );
      void (* mouse_target_changed) (
        WebKitWebView* web_view,
        WebKitHitTestResult* hit_test_result,
        guint modifiers
      );
      gboolean (* print) (
        WebKitWebView* web_view,
        WebKitPrintOperation* print_operation
      );
      void (* resource_load_started) (
        WebKitWebView* web_view,
        WebKitWebResource* resource,
        WebKitURIRequest* request
      );
      gboolean (* enter_fullscreen) (
        WebKitWebView* web_view
      );
      gboolean (* leave_fullscreen) (
        WebKitWebView* web_view
      );
      gboolean (* run_file_chooser) (
        WebKitWebView* web_view,
        WebKitFileChooserRequest* request
      );
      gboolean (* context_menu) (
        WebKitWebView* web_view,
        WebKitContextMenu* context_menu,
        WebKitHitTestResult* hit_test_result
      );
      void (* context_menu_dismissed) (
        WebKitWebView* web_view
      );
      void (* submit_form) (
        WebKitWebView* web_view,
        WebKitFormSubmissionRequest* request
      );
      void (* insecure_content_detected) (
        WebKitWebView* web_view,
        WebKitInsecureContentEvent event
      );
      gboolean (* web_process_crashed) (
        WebKitWebView* web_view
      );
      gboolean (* authenticate) (
        WebKitWebView* web_view,
        WebKitAuthenticationRequest* request
      );
      gboolean (* load_failed_with_tls_errors) (
        WebKitWebView* web_view,
        const gchar* failing_uri,
        GTlsCertificate* certificate,
        GTlsCertificateFlags errors
      );
      gboolean (* show_notification) (
        WebKitWebView* web_view,
        WebKitNotification* notification
      );
      gboolean (* run_color_chooser) (
        WebKitWebView* web_view,
        WebKitColorChooserRequest* request
      );
      gboolean (* show_option_menu) (
        WebKitWebView* web_view,
        WebKitOptionMenu* menu,
        GdkRectangle* rectangle
      );
      void (* web_process_terminated) (
        WebKitWebView* web_view,
        WebKitWebProcessTerminationReason reason
      );
      gboolean (* user_message_received) (
        WebKitWebView* web_view,
        WebKitUserMessage* message
      );
      gboolean (* query_permission_state) (
        WebKitWebView* web_view,
        WebKitPermissionStateQuery* query
      );
      void (* _webkit_reserved0) (
    void
      );
      void (* _webkit_reserved1) (
    void
      );
      void (* _webkit_reserved2) (
    void
      );
      void (* _webkit_reserved3) (
    void
      );
      void (* _webkit_reserved4) (
    void
      );
      void (* _webkit_reserved5) (
    void
      );
      void (* _webkit_reserved6) (
    void
      );
      void (* _webkit_reserved7) (
    void
      );
      void (* _webkit_reserved8) (
    void
      );
      void (* _webkit_reserved9) (
    void
      );
      void (* _webkit_reserved10) (
    void
      );
      void (* _webkit_reserved11) (
    void
      );
      void (* _webkit_reserved12) (
    void
      );
      void (* _webkit_reserved13) (
    void
      );
      void (* _webkit_reserved14) (
    void
      );
      void (* _webkit_reserved15) (
    void
      );
      void (* _webkit_reserved16) (
    void
      );
      void (* _webkit_reserved17) (
    void
      );
      void (* _webkit_reserved18) (
    void
      );
      void (* _webkit_reserved19) (
    void
      );
      void (* _webkit_reserved20) (
    void
      );
      void (* _webkit_reserved21) (
    void
      );
      void (* _webkit_reserved22) (
    void
      );
      void (* _webkit_reserved23) (
    void
      );
      void (* _webkit_reserved24) (
    void
      );
      void (* _webkit_reserved25) (
    void
      );
      void (* _webkit_reserved26) (
    void
      );
      void (* _webkit_reserved27) (
    void
      );
      void (* _webkit_reserved28) (
    void
      );
      void (* _webkit_reserved29) (
    void
      );
      void (* _webkit_reserved30) (
    void
      );

    }

No description available.

###### Class members

`parent: WebKitWebViewBaseClass`
  No description available.
`load_changed: void (* load_changed) ( WebKitWebView* web_view, WebKitLoadEvent load_event )`
  No description available.
`load_failed: gboolean (* load_failed) ( WebKitWebView* web_view, WebKitLoadEvent load_event, const gchar* failing_uri, GError* error )`
  No description available.
`create: GtkWidget* (* create) ( WebKitWebView* web_view, WebKitNavigationAction* navigation_action )`
  No description available.
`ready_to_show: void (* ready_to_show) ( WebKitWebView* web_view )`
  No description available.
`run_as_modal: void (* run_as_modal) ( WebKitWebView* web_view )`
  No description available.
`close: void (* close) ( WebKitWebView* web_view )`
  No description available.
`script_dialog: gboolean (* script_dialog) ( WebKitWebView* web_view, WebKitScriptDialog* dialog )`
  No description available.
`decide_policy: gboolean (* decide_policy) ( WebKitWebView* web_view, WebKitPolicyDecision* decision, WebKitPolicyDecisionType type )`
  No description available.
`permission_request: gboolean (* permission_request) ( WebKitWebView* web_view, WebKitPermissionRequest* permission_request )`
  No description available.
`mouse_target_changed: void (* mouse_target_changed) ( WebKitWebView* web_view, WebKitHitTestResult* hit_test_result, guint modifiers )`
  No description available.
`print: gboolean (* print) ( WebKitWebView* web_view, WebKitPrintOperation* print_operation )`
  No description available.
`resource_load_started: void (* resource_load_started) ( WebKitWebView* web_view, WebKitWebResource* resource, WebKitURIRequest* request )`
  No description available.
`enter_fullscreen: gboolean (* enter_fullscreen) ( WebKitWebView* web_view )`
  No description available.
`leave_fullscreen: gboolean (* leave_fullscreen) ( WebKitWebView* web_view )`
  No description available.
`run_file_chooser: gboolean (* run_file_chooser) ( WebKitWebView* web_view, WebKitFileChooserRequest* request )`
  No description available.
`context_menu: gboolean (* context_menu) ( WebKitWebView* web_view, WebKitContextMenu* context_menu, WebKitHitTestResult* hit_test_result )`
  No description available.
`context_menu_dismissed: void (* context_menu_dismissed) ( WebKitWebView* web_view )`
  No description available.
`submit_form: void (* submit_form) ( WebKitWebView* web_view, WebKitFormSubmissionRequest* request )`
  No description available.
`insecure_content_detected: void (* insecure_content_detected) ( WebKitWebView* web_view, WebKitInsecureContentEvent event )`
  No description available.
`web_process_crashed: gboolean (* web_process_crashed) ( WebKitWebView* web_view )`
  No description available.
`authenticate: gboolean (* authenticate) ( WebKitWebView* web_view, WebKitAuthenticationRequest* request )`
  No description available.
`load_failed_with_tls_errors: gboolean (* load_failed_with_tls_errors) ( WebKitWebView* web_view, const gchar* failing_uri, GTlsCertificate* certificate, GTlsCertificateFlags errors )`
  No description available.
`show_notification: gboolean (* show_notification) ( WebKitWebView* web_view, WebKitNotification* notification )`
  No description available.
`run_color_chooser: gboolean (* run_color_chooser) ( WebKitWebView* web_view, WebKitColorChooserRequest* request )`
  No description available.
`show_option_menu: gboolean (* show_option_menu) ( WebKitWebView* web_view, WebKitOptionMenu* menu, GdkRectangle* rectangle )`
  No description available.
`web_process_terminated: void (* web_process_terminated) ( WebKitWebView* web_view, WebKitWebProcessTerminationReason reason )`
  No description available.
`user_message_received: gboolean (* user_message_received) ( WebKitWebView* web_view, WebKitUserMessage* message )`
  No description available.
`query_permission_state: gboolean (* query_permission_state) ( WebKitWebView* web_view, WebKitPermissionStateQuery* query )`
  No description available.
`_webkit_reserved0: void (* _webkit_reserved0) ( void )`
  No description available.
`_webkit_reserved1: void (* _webkit_reserved1) ( void )`
  No description available.
`_webkit_reserved2: void (* _webkit_reserved2) ( void )`
  No description available.
`_webkit_reserved3: void (* _webkit_reserved3) ( void )`
  No description available.
`_webkit_reserved4: void (* _webkit_reserved4) ( void )`
  No description available.
`_webkit_reserved5: void (* _webkit_reserved5) ( void )`
  No description available.
`_webkit_reserved6: void (* _webkit_reserved6) ( void )`
  No description available.
`_webkit_reserved7: void (* _webkit_reserved7) ( void )`
  No description available.
`_webkit_reserved8: void (* _webkit_reserved8) ( void )`
  No description available.
`_webkit_reserved9: void (* _webkit_reserved9) ( void )`
  No description available.
`_webkit_reserved10: void (* _webkit_reserved10) ( void )`
  No description available.
`_webkit_reserved11: void (* _webkit_reserved11) ( void )`
  No description available.
`_webkit_reserved12: void (* _webkit_reserved12) ( void )`
  No description available.
`_webkit_reserved13: void (* _webkit_reserved13) ( void )`
  No description available.
`_webkit_reserved14: void (* _webkit_reserved14) ( void )`
  No description available.
`_webkit_reserved15: void (* _webkit_reserved15) ( void )`
  No description available.
`_webkit_reserved16: void (* _webkit_reserved16) ( void )`
  No description available.
`_webkit_reserved17: void (* _webkit_reserved17) ( void )`
  No description available.
`_webkit_reserved18: void (* _webkit_reserved18) ( void )`
  No description available.
`_webkit_reserved19: void (* _webkit_reserved19) ( void )`
  No description available.
`_webkit_reserved20: void (* _webkit_reserved20) ( void )`
  No description available.
`_webkit_reserved21: void (* _webkit_reserved21) ( void )`
  No description available.
`_webkit_reserved22: void (* _webkit_reserved22) ( void )`
  No description available.
`_webkit_reserved23: void (* _webkit_reserved23) ( void )`
  No description available.
`_webkit_reserved24: void (* _webkit_reserved24) ( void )`
  No description available.
`_webkit_reserved25: void (* _webkit_reserved25) ( void )`
  No description available.
`_webkit_reserved26: void (* _webkit_reserved26) ( void )`
  No description available.
`_webkit_reserved27: void (* _webkit_reserved27) ( void )`
  No description available.
`_webkit_reserved28: void (* _webkit_reserved28) ( void )`
  No description available.
`_webkit_reserved29: void (* _webkit_reserved29) ( void )`
  No description available.
`_webkit_reserved30: void (* _webkit_reserved30) ( void )`
  No description available.

#### Virtual methods

###### WebKit.WebViewClass.authenticate

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.close

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.context_menu

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.context_menu_dismissed

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.create

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.decide_policy

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.enter_fullscreen

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.insecure_content_detected

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.leave_fullscreen

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.load_changed

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.load_failed

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.load_failed_with_tls_errors

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.mouse_target_changed

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.permission_request

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.print

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.query_permission_state

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.ready_to_show

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.resource_load_started

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.run_as_modal

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.run_color_chooser

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.run_file_chooser

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.script_dialog

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.show_notification

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.show_option_menu

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.submit_form

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.user_message_received

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.web_process_crashed

No description available.

unstable since: 6.0

###### WebKit.WebViewClass.web_process_terminated

No description available.

unstable since: 6.0