tauri-webkit2gtk-sys 0.14.0

Rust binding for webkit-gtk library
Documentation
// This file was generated by gir (https://github.com/gtk-rs/gir)
// from gir-files (https://github.com/gtk-rs/gir-files.git)
// DO NOT EDIT

#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
#![allow(clippy::approx_constant, clippy::type_complexity, clippy::unreadable_literal, clippy::upper_case_acronyms)]
#![cfg_attr(feature = "dox", feature(doc_cfg))]

use gtk_sys as gtk;
use glib_sys as glib;
use gobject_sys as gobject;
use gio_sys as gio;
use gdk_sys as gdk;
use cairo_sys as cairo;
use soup_sys as soup;
use javascriptcore_sys as java_script_core;

#[allow(unused_imports)]
use libc::{c_int, c_char, c_uchar, c_float, c_uint, c_double,
    c_short, c_ushort, c_long, c_ulong,
    c_void, size_t, ssize_t, intptr_t, uintptr_t, time_t, FILE};

#[allow(unused_imports)]
use glib::{gboolean, gconstpointer, gpointer, GType};

// Enums
pub type WebKitAuthenticationScheme = c_int;
pub const WEBKIT_AUTHENTICATION_SCHEME_DEFAULT: WebKitAuthenticationScheme = 1;
pub const WEBKIT_AUTHENTICATION_SCHEME_HTTP_BASIC: WebKitAuthenticationScheme = 2;
pub const WEBKIT_AUTHENTICATION_SCHEME_HTTP_DIGEST: WebKitAuthenticationScheme = 3;
pub const WEBKIT_AUTHENTICATION_SCHEME_HTML_FORM: WebKitAuthenticationScheme = 4;
pub const WEBKIT_AUTHENTICATION_SCHEME_NTLM: WebKitAuthenticationScheme = 5;
pub const WEBKIT_AUTHENTICATION_SCHEME_NEGOTIATE: WebKitAuthenticationScheme = 6;
pub const WEBKIT_AUTHENTICATION_SCHEME_CLIENT_CERTIFICATE_REQUESTED: WebKitAuthenticationScheme = 7;
pub const WEBKIT_AUTHENTICATION_SCHEME_SERVER_TRUST_EVALUATION_REQUESTED: WebKitAuthenticationScheme = 8;
pub const WEBKIT_AUTHENTICATION_SCHEME_UNKNOWN: WebKitAuthenticationScheme = 100;

pub type WebKitAutomationBrowsingContextPresentation = c_int;
pub const WEBKIT_AUTOMATION_BROWSING_CONTEXT_PRESENTATION_WINDOW: WebKitAutomationBrowsingContextPresentation = 0;
pub const WEBKIT_AUTOMATION_BROWSING_CONTEXT_PRESENTATION_TAB: WebKitAutomationBrowsingContextPresentation = 1;

pub type WebKitAutoplayPolicy = c_int;
pub const WEBKIT_AUTOPLAY_ALLOW: WebKitAutoplayPolicy = 0;
pub const WEBKIT_AUTOPLAY_ALLOW_WITHOUT_SOUND: WebKitAutoplayPolicy = 1;
pub const WEBKIT_AUTOPLAY_DENY: WebKitAutoplayPolicy = 2;

pub type WebKitCacheModel = c_int;
pub const WEBKIT_CACHE_MODEL_DOCUMENT_VIEWER: WebKitCacheModel = 0;
pub const WEBKIT_CACHE_MODEL_WEB_BROWSER: WebKitCacheModel = 1;
pub const WEBKIT_CACHE_MODEL_DOCUMENT_BROWSER: WebKitCacheModel = 2;

pub type WebKitContextMenuAction = c_int;
pub const WEBKIT_CONTEXT_MENU_ACTION_NO_ACTION: WebKitContextMenuAction = 0;
pub const WEBKIT_CONTEXT_MENU_ACTION_OPEN_LINK: WebKitContextMenuAction = 1;
pub const WEBKIT_CONTEXT_MENU_ACTION_OPEN_LINK_IN_NEW_WINDOW: WebKitContextMenuAction = 2;
pub const WEBKIT_CONTEXT_MENU_ACTION_DOWNLOAD_LINK_TO_DISK: WebKitContextMenuAction = 3;
pub const WEBKIT_CONTEXT_MENU_ACTION_COPY_LINK_TO_CLIPBOARD: WebKitContextMenuAction = 4;
pub const WEBKIT_CONTEXT_MENU_ACTION_OPEN_IMAGE_IN_NEW_WINDOW: WebKitContextMenuAction = 5;
pub const WEBKIT_CONTEXT_MENU_ACTION_DOWNLOAD_IMAGE_TO_DISK: WebKitContextMenuAction = 6;
pub const WEBKIT_CONTEXT_MENU_ACTION_COPY_IMAGE_TO_CLIPBOARD: WebKitContextMenuAction = 7;
pub const WEBKIT_CONTEXT_MENU_ACTION_COPY_IMAGE_URL_TO_CLIPBOARD: WebKitContextMenuAction = 8;
pub const WEBKIT_CONTEXT_MENU_ACTION_OPEN_FRAME_IN_NEW_WINDOW: WebKitContextMenuAction = 9;
pub const WEBKIT_CONTEXT_MENU_ACTION_GO_BACK: WebKitContextMenuAction = 10;
pub const WEBKIT_CONTEXT_MENU_ACTION_GO_FORWARD: WebKitContextMenuAction = 11;
pub const WEBKIT_CONTEXT_MENU_ACTION_STOP: WebKitContextMenuAction = 12;
pub const WEBKIT_CONTEXT_MENU_ACTION_RELOAD: WebKitContextMenuAction = 13;
pub const WEBKIT_CONTEXT_MENU_ACTION_COPY: WebKitContextMenuAction = 14;
pub const WEBKIT_CONTEXT_MENU_ACTION_CUT: WebKitContextMenuAction = 15;
pub const WEBKIT_CONTEXT_MENU_ACTION_PASTE: WebKitContextMenuAction = 16;
pub const WEBKIT_CONTEXT_MENU_ACTION_DELETE: WebKitContextMenuAction = 17;
pub const WEBKIT_CONTEXT_MENU_ACTION_SELECT_ALL: WebKitContextMenuAction = 18;
pub const WEBKIT_CONTEXT_MENU_ACTION_INPUT_METHODS: WebKitContextMenuAction = 19;
pub const WEBKIT_CONTEXT_MENU_ACTION_UNICODE: WebKitContextMenuAction = 20;
pub const WEBKIT_CONTEXT_MENU_ACTION_SPELLING_GUESS: WebKitContextMenuAction = 21;
pub const WEBKIT_CONTEXT_MENU_ACTION_NO_GUESSES_FOUND: WebKitContextMenuAction = 22;
pub const WEBKIT_CONTEXT_MENU_ACTION_IGNORE_SPELLING: WebKitContextMenuAction = 23;
pub const WEBKIT_CONTEXT_MENU_ACTION_LEARN_SPELLING: WebKitContextMenuAction = 24;
pub const WEBKIT_CONTEXT_MENU_ACTION_IGNORE_GRAMMAR: WebKitContextMenuAction = 25;
pub const WEBKIT_CONTEXT_MENU_ACTION_FONT_MENU: WebKitContextMenuAction = 26;
pub const WEBKIT_CONTEXT_MENU_ACTION_BOLD: WebKitContextMenuAction = 27;
pub const WEBKIT_CONTEXT_MENU_ACTION_ITALIC: WebKitContextMenuAction = 28;
pub const WEBKIT_CONTEXT_MENU_ACTION_UNDERLINE: WebKitContextMenuAction = 29;
pub const WEBKIT_CONTEXT_MENU_ACTION_OUTLINE: WebKitContextMenuAction = 30;
pub const WEBKIT_CONTEXT_MENU_ACTION_INSPECT_ELEMENT: WebKitContextMenuAction = 31;
pub const WEBKIT_CONTEXT_MENU_ACTION_OPEN_VIDEO_IN_NEW_WINDOW: WebKitContextMenuAction = 32;
pub const WEBKIT_CONTEXT_MENU_ACTION_OPEN_AUDIO_IN_NEW_WINDOW: WebKitContextMenuAction = 33;
pub const WEBKIT_CONTEXT_MENU_ACTION_COPY_VIDEO_LINK_TO_CLIPBOARD: WebKitContextMenuAction = 34;
pub const WEBKIT_CONTEXT_MENU_ACTION_COPY_AUDIO_LINK_TO_CLIPBOARD: WebKitContextMenuAction = 35;
pub const WEBKIT_CONTEXT_MENU_ACTION_TOGGLE_MEDIA_CONTROLS: WebKitContextMenuAction = 36;
pub const WEBKIT_CONTEXT_MENU_ACTION_TOGGLE_MEDIA_LOOP: WebKitContextMenuAction = 37;
pub const WEBKIT_CONTEXT_MENU_ACTION_ENTER_VIDEO_FULLSCREEN: WebKitContextMenuAction = 38;
pub const WEBKIT_CONTEXT_MENU_ACTION_MEDIA_PLAY: WebKitContextMenuAction = 39;
pub const WEBKIT_CONTEXT_MENU_ACTION_MEDIA_PAUSE: WebKitContextMenuAction = 40;
pub const WEBKIT_CONTEXT_MENU_ACTION_MEDIA_MUTE: WebKitContextMenuAction = 41;
pub const WEBKIT_CONTEXT_MENU_ACTION_DOWNLOAD_VIDEO_TO_DISK: WebKitContextMenuAction = 42;
pub const WEBKIT_CONTEXT_MENU_ACTION_DOWNLOAD_AUDIO_TO_DISK: WebKitContextMenuAction = 43;
pub const WEBKIT_CONTEXT_MENU_ACTION_INSERT_EMOJI: WebKitContextMenuAction = 44;
pub const WEBKIT_CONTEXT_MENU_ACTION_PASTE_AS_PLAIN_TEXT: WebKitContextMenuAction = 45;
pub const WEBKIT_CONTEXT_MENU_ACTION_CUSTOM: WebKitContextMenuAction = 10000;

pub type WebKitCookieAcceptPolicy = c_int;
pub const WEBKIT_COOKIE_POLICY_ACCEPT_ALWAYS: WebKitCookieAcceptPolicy = 0;
pub const WEBKIT_COOKIE_POLICY_ACCEPT_NEVER: WebKitCookieAcceptPolicy = 1;
pub const WEBKIT_COOKIE_POLICY_ACCEPT_NO_THIRD_PARTY: WebKitCookieAcceptPolicy = 2;

pub type WebKitCookiePersistentStorage = c_int;
pub const WEBKIT_COOKIE_PERSISTENT_STORAGE_TEXT: WebKitCookiePersistentStorage = 0;
pub const WEBKIT_COOKIE_PERSISTENT_STORAGE_SQLITE: WebKitCookiePersistentStorage = 1;

pub type WebKitCredentialPersistence = c_int;
pub const WEBKIT_CREDENTIAL_PERSISTENCE_NONE: WebKitCredentialPersistence = 0;
pub const WEBKIT_CREDENTIAL_PERSISTENCE_FOR_SESSION: WebKitCredentialPersistence = 1;
pub const WEBKIT_CREDENTIAL_PERSISTENCE_PERMANENT: WebKitCredentialPersistence = 2;

pub type WebKitDownloadError = c_int;
pub const WEBKIT_DOWNLOAD_ERROR_NETWORK: WebKitDownloadError = 499;
pub const WEBKIT_DOWNLOAD_ERROR_CANCELLED_BY_USER: WebKitDownloadError = 400;
pub const WEBKIT_DOWNLOAD_ERROR_DESTINATION: WebKitDownloadError = 401;

pub type WebKitFaviconDatabaseError = c_int;
pub const WEBKIT_FAVICON_DATABASE_ERROR_NOT_INITIALIZED: WebKitFaviconDatabaseError = 0;
pub const WEBKIT_FAVICON_DATABASE_ERROR_FAVICON_NOT_FOUND: WebKitFaviconDatabaseError = 1;
pub const WEBKIT_FAVICON_DATABASE_ERROR_FAVICON_UNKNOWN: WebKitFaviconDatabaseError = 2;

pub type WebKitHardwareAccelerationPolicy = c_int;
pub const WEBKIT_HARDWARE_ACCELERATION_POLICY_ON_DEMAND: WebKitHardwareAccelerationPolicy = 0;
pub const WEBKIT_HARDWARE_ACCELERATION_POLICY_ALWAYS: WebKitHardwareAccelerationPolicy = 1;
pub const WEBKIT_HARDWARE_ACCELERATION_POLICY_NEVER: WebKitHardwareAccelerationPolicy = 2;

pub type WebKitInputPurpose = c_int;
pub const WEBKIT_INPUT_PURPOSE_FREE_FORM: WebKitInputPurpose = 0;
pub const WEBKIT_INPUT_PURPOSE_DIGITS: WebKitInputPurpose = 1;
pub const WEBKIT_INPUT_PURPOSE_NUMBER: WebKitInputPurpose = 2;
pub const WEBKIT_INPUT_PURPOSE_PHONE: WebKitInputPurpose = 3;
pub const WEBKIT_INPUT_PURPOSE_URL: WebKitInputPurpose = 4;
pub const WEBKIT_INPUT_PURPOSE_EMAIL: WebKitInputPurpose = 5;
pub const WEBKIT_INPUT_PURPOSE_PASSWORD: WebKitInputPurpose = 6;

pub type WebKitInsecureContentEvent = c_int;
pub const WEBKIT_INSECURE_CONTENT_RUN: WebKitInsecureContentEvent = 0;
pub const WEBKIT_INSECURE_CONTENT_DISPLAYED: WebKitInsecureContentEvent = 1;

pub type WebKitJavascriptError = c_int;
pub const WEBKIT_JAVASCRIPT_ERROR_SCRIPT_FAILED: WebKitJavascriptError = 699;

pub type WebKitLoadEvent = c_int;
pub const WEBKIT_LOAD_STARTED: WebKitLoadEvent = 0;
pub const WEBKIT_LOAD_REDIRECTED: WebKitLoadEvent = 1;
pub const WEBKIT_LOAD_COMMITTED: WebKitLoadEvent = 2;
pub const WEBKIT_LOAD_FINISHED: WebKitLoadEvent = 3;

pub type WebKitNavigationType = c_int;
pub const WEBKIT_NAVIGATION_TYPE_LINK_CLICKED: WebKitNavigationType = 0;
pub const WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED: WebKitNavigationType = 1;
pub const WEBKIT_NAVIGATION_TYPE_BACK_FORWARD: WebKitNavigationType = 2;
pub const WEBKIT_NAVIGATION_TYPE_RELOAD: WebKitNavigationType = 3;
pub const WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED: WebKitNavigationType = 4;
pub const WEBKIT_NAVIGATION_TYPE_OTHER: WebKitNavigationType = 5;

pub type WebKitNetworkError = c_int;
pub const WEBKIT_NETWORK_ERROR_FAILED: WebKitNetworkError = 399;
pub const WEBKIT_NETWORK_ERROR_TRANSPORT: WebKitNetworkError = 300;
pub const WEBKIT_NETWORK_ERROR_UNKNOWN_PROTOCOL: WebKitNetworkError = 301;
pub const WEBKIT_NETWORK_ERROR_CANCELLED: WebKitNetworkError = 302;
pub const WEBKIT_NETWORK_ERROR_FILE_DOES_NOT_EXIST: WebKitNetworkError = 303;

pub type WebKitNetworkProxyMode = c_int;
pub const WEBKIT_NETWORK_PROXY_MODE_DEFAULT: WebKitNetworkProxyMode = 0;
pub const WEBKIT_NETWORK_PROXY_MODE_NO_PROXY: WebKitNetworkProxyMode = 1;
pub const WEBKIT_NETWORK_PROXY_MODE_CUSTOM: WebKitNetworkProxyMode = 2;

pub type WebKitPluginError = c_int;
pub const WEBKIT_PLUGIN_ERROR_FAILED: WebKitPluginError = 299;
pub const WEBKIT_PLUGIN_ERROR_CANNOT_FIND_PLUGIN: WebKitPluginError = 200;
pub const WEBKIT_PLUGIN_ERROR_CANNOT_LOAD_PLUGIN: WebKitPluginError = 201;
pub const WEBKIT_PLUGIN_ERROR_JAVA_UNAVAILABLE: WebKitPluginError = 202;
pub const WEBKIT_PLUGIN_ERROR_CONNECTION_CANCELLED: WebKitPluginError = 203;
pub const WEBKIT_PLUGIN_ERROR_WILL_HANDLE_LOAD: WebKitPluginError = 204;

pub type WebKitPolicyDecisionType = c_int;
pub const WEBKIT_POLICY_DECISION_TYPE_NAVIGATION_ACTION: WebKitPolicyDecisionType = 0;
pub const WEBKIT_POLICY_DECISION_TYPE_NEW_WINDOW_ACTION: WebKitPolicyDecisionType = 1;
pub const WEBKIT_POLICY_DECISION_TYPE_RESPONSE: WebKitPolicyDecisionType = 2;

pub type WebKitPolicyError = c_int;
pub const WEBKIT_POLICY_ERROR_FAILED: WebKitPolicyError = 199;
pub const WEBKIT_POLICY_ERROR_CANNOT_SHOW_MIME_TYPE: WebKitPolicyError = 100;
pub const WEBKIT_POLICY_ERROR_CANNOT_SHOW_URI: WebKitPolicyError = 101;
pub const WEBKIT_POLICY_ERROR_FRAME_LOAD_INTERRUPTED_BY_POLICY_CHANGE: WebKitPolicyError = 102;
pub const WEBKIT_POLICY_ERROR_CANNOT_USE_RESTRICTED_PORT: WebKitPolicyError = 103;

pub type WebKitPrintError = c_int;
pub const WEBKIT_PRINT_ERROR_GENERAL: WebKitPrintError = 599;
pub const WEBKIT_PRINT_ERROR_PRINTER_NOT_FOUND: WebKitPrintError = 500;
pub const WEBKIT_PRINT_ERROR_INVALID_PAGE_RANGE: WebKitPrintError = 501;

pub type WebKitPrintOperationResponse = c_int;
pub const WEBKIT_PRINT_OPERATION_RESPONSE_PRINT: WebKitPrintOperationResponse = 0;
pub const WEBKIT_PRINT_OPERATION_RESPONSE_CANCEL: WebKitPrintOperationResponse = 1;

pub type WebKitProcessModel = c_int;
pub const WEBKIT_PROCESS_MODEL_SHARED_SECONDARY_PROCESS: WebKitProcessModel = 0;
pub const WEBKIT_PROCESS_MODEL_MULTIPLE_SECONDARY_PROCESSES: WebKitProcessModel = 1;

pub type WebKitSaveMode = c_int;
pub const WEBKIT_SAVE_MODE_MHTML: WebKitSaveMode = 0;

pub type WebKitScriptDialogType = c_int;
pub const WEBKIT_SCRIPT_DIALOG_ALERT: WebKitScriptDialogType = 0;
pub const WEBKIT_SCRIPT_DIALOG_CONFIRM: WebKitScriptDialogType = 1;
pub const WEBKIT_SCRIPT_DIALOG_PROMPT: WebKitScriptDialogType = 2;
pub const WEBKIT_SCRIPT_DIALOG_BEFORE_UNLOAD_CONFIRM: WebKitScriptDialogType = 3;

pub type WebKitSnapshotError = c_int;
pub const WEBKIT_SNAPSHOT_ERROR_FAILED_TO_CREATE: WebKitSnapshotError = 799;

pub type WebKitSnapshotRegion = c_int;
pub const WEBKIT_SNAPSHOT_REGION_VISIBLE: WebKitSnapshotRegion = 0;
pub const WEBKIT_SNAPSHOT_REGION_FULL_DOCUMENT: WebKitSnapshotRegion = 1;

pub type WebKitTLSErrorsPolicy = c_int;
pub const WEBKIT_TLS_ERRORS_POLICY_IGNORE: WebKitTLSErrorsPolicy = 0;
pub const WEBKIT_TLS_ERRORS_POLICY_FAIL: WebKitTLSErrorsPolicy = 1;

pub type WebKitUserContentFilterError = c_int;
pub const WEBKIT_USER_CONTENT_FILTER_ERROR_INVALID_SOURCE: WebKitUserContentFilterError = 0;
pub const WEBKIT_USER_CONTENT_FILTER_ERROR_NOT_FOUND: WebKitUserContentFilterError = 1;

pub type WebKitUserContentInjectedFrames = c_int;
pub const WEBKIT_USER_CONTENT_INJECT_ALL_FRAMES: WebKitUserContentInjectedFrames = 0;
pub const WEBKIT_USER_CONTENT_INJECT_TOP_FRAME: WebKitUserContentInjectedFrames = 1;

pub type WebKitUserMessageError = c_int;
pub const WEBKIT_USER_MESSAGE_UNHANDLED_MESSAGE: WebKitUserMessageError = 0;

pub type WebKitUserScriptInjectionTime = c_int;
pub const WEBKIT_USER_SCRIPT_INJECT_AT_DOCUMENT_START: WebKitUserScriptInjectionTime = 0;
pub const WEBKIT_USER_SCRIPT_INJECT_AT_DOCUMENT_END: WebKitUserScriptInjectionTime = 1;

pub type WebKitUserStyleLevel = c_int;
pub const WEBKIT_USER_STYLE_LEVEL_USER: WebKitUserStyleLevel = 0;
pub const WEBKIT_USER_STYLE_LEVEL_AUTHOR: WebKitUserStyleLevel = 1;

pub type WebKitWebProcessTerminationReason = c_int;
pub const WEBKIT_WEB_PROCESS_CRASHED: WebKitWebProcessTerminationReason = 0;
pub const WEBKIT_WEB_PROCESS_EXCEEDED_MEMORY_LIMIT: WebKitWebProcessTerminationReason = 1;

// Constants
pub const WEBKIT_EDITING_COMMAND_COPY: *const c_char = b"Copy\0" as *const u8 as *const c_char;
pub const WEBKIT_EDITING_COMMAND_CREATE_LINK: *const c_char = b"CreateLink\0" as *const u8 as *const c_char;
pub const WEBKIT_EDITING_COMMAND_CUT: *const c_char = b"Cut\0" as *const u8 as *const c_char;
pub const WEBKIT_EDITING_COMMAND_INSERT_IMAGE: *const c_char = b"InsertImage\0" as *const u8 as *const c_char;
pub const WEBKIT_EDITING_COMMAND_PASTE: *const c_char = b"Paste\0" as *const u8 as *const c_char;
pub const WEBKIT_EDITING_COMMAND_PASTE_AS_PLAIN_TEXT: *const c_char = b"PasteAsPlainText\0" as *const u8 as *const c_char;
pub const WEBKIT_EDITING_COMMAND_REDO: *const c_char = b"Redo\0" as *const u8 as *const c_char;
pub const WEBKIT_EDITING_COMMAND_SELECT_ALL: *const c_char = b"SelectAll\0" as *const u8 as *const c_char;
pub const WEBKIT_EDITING_COMMAND_UNDO: *const c_char = b"Undo\0" as *const u8 as *const c_char;
pub const WEBKIT_MAJOR_VERSION: c_int = 2;
pub const WEBKIT_MICRO_VERSION: c_int = 3;
pub const WEBKIT_MINOR_VERSION: c_int = 30;

// Flags
pub type WebKitEditorTypingAttributes = c_uint;
pub const WEBKIT_EDITOR_TYPING_ATTRIBUTE_NONE: WebKitEditorTypingAttributes = 2;
pub const WEBKIT_EDITOR_TYPING_ATTRIBUTE_BOLD: WebKitEditorTypingAttributes = 4;
pub const WEBKIT_EDITOR_TYPING_ATTRIBUTE_ITALIC: WebKitEditorTypingAttributes = 8;
pub const WEBKIT_EDITOR_TYPING_ATTRIBUTE_UNDERLINE: WebKitEditorTypingAttributes = 16;
pub const WEBKIT_EDITOR_TYPING_ATTRIBUTE_STRIKETHROUGH: WebKitEditorTypingAttributes = 32;

pub type WebKitFindOptions = c_uint;
pub const WEBKIT_FIND_OPTIONS_NONE: WebKitFindOptions = 0;
pub const WEBKIT_FIND_OPTIONS_CASE_INSENSITIVE: WebKitFindOptions = 1;
pub const WEBKIT_FIND_OPTIONS_AT_WORD_STARTS: WebKitFindOptions = 2;
pub const WEBKIT_FIND_OPTIONS_TREAT_MEDIAL_CAPITAL_AS_WORD_START: WebKitFindOptions = 4;
pub const WEBKIT_FIND_OPTIONS_BACKWARDS: WebKitFindOptions = 8;
pub const WEBKIT_FIND_OPTIONS_WRAP_AROUND: WebKitFindOptions = 16;

pub type WebKitHitTestResultContext = c_uint;
pub const WEBKIT_HIT_TEST_RESULT_CONTEXT_DOCUMENT: WebKitHitTestResultContext = 2;
pub const WEBKIT_HIT_TEST_RESULT_CONTEXT_LINK: WebKitHitTestResultContext = 4;
pub const WEBKIT_HIT_TEST_RESULT_CONTEXT_IMAGE: WebKitHitTestResultContext = 8;
pub const WEBKIT_HIT_TEST_RESULT_CONTEXT_MEDIA: WebKitHitTestResultContext = 16;
pub const WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE: WebKitHitTestResultContext = 32;
pub const WEBKIT_HIT_TEST_RESULT_CONTEXT_SCROLLBAR: WebKitHitTestResultContext = 64;
pub const WEBKIT_HIT_TEST_RESULT_CONTEXT_SELECTION: WebKitHitTestResultContext = 128;

pub type WebKitInputHints = c_uint;
pub const WEBKIT_INPUT_HINT_NONE: WebKitInputHints = 0;
pub const WEBKIT_INPUT_HINT_SPELLCHECK: WebKitInputHints = 1;
pub const WEBKIT_INPUT_HINT_LOWERCASE: WebKitInputHints = 2;
pub const WEBKIT_INPUT_HINT_UPPERCASE_CHARS: WebKitInputHints = 4;
pub const WEBKIT_INPUT_HINT_UPPERCASE_WORDS: WebKitInputHints = 8;
pub const WEBKIT_INPUT_HINT_UPPERCASE_SENTENCES: WebKitInputHints = 16;
pub const WEBKIT_INPUT_HINT_INHIBIT_OSK: WebKitInputHints = 32;

pub type WebKitSnapshotOptions = c_uint;
pub const WEBKIT_SNAPSHOT_OPTIONS_NONE: WebKitSnapshotOptions = 0;
pub const WEBKIT_SNAPSHOT_OPTIONS_INCLUDE_SELECTION_HIGHLIGHTING: WebKitSnapshotOptions = 1;
pub const WEBKIT_SNAPSHOT_OPTIONS_TRANSPARENT_BACKGROUND: WebKitSnapshotOptions = 2;

pub type WebKitWebsiteDataTypes = c_uint;
pub const WEBKIT_WEBSITE_DATA_MEMORY_CACHE: WebKitWebsiteDataTypes = 1;
pub const WEBKIT_WEBSITE_DATA_DISK_CACHE: WebKitWebsiteDataTypes = 2;
pub const WEBKIT_WEBSITE_DATA_OFFLINE_APPLICATION_CACHE: WebKitWebsiteDataTypes = 4;
pub const WEBKIT_WEBSITE_DATA_SESSION_STORAGE: WebKitWebsiteDataTypes = 8;
pub const WEBKIT_WEBSITE_DATA_LOCAL_STORAGE: WebKitWebsiteDataTypes = 16;
pub const WEBKIT_WEBSITE_DATA_WEBSQL_DATABASES: WebKitWebsiteDataTypes = 32;
pub const WEBKIT_WEBSITE_DATA_INDEXEDDB_DATABASES: WebKitWebsiteDataTypes = 64;
pub const WEBKIT_WEBSITE_DATA_PLUGIN_DATA: WebKitWebsiteDataTypes = 128;
pub const WEBKIT_WEBSITE_DATA_COOKIES: WebKitWebsiteDataTypes = 256;
pub const WEBKIT_WEBSITE_DATA_DEVICE_ID_HASH_SALT: WebKitWebsiteDataTypes = 512;
pub const WEBKIT_WEBSITE_DATA_HSTS_CACHE: WebKitWebsiteDataTypes = 1024;
pub const WEBKIT_WEBSITE_DATA_ITP: WebKitWebsiteDataTypes = 2048;
pub const WEBKIT_WEBSITE_DATA_SERVICE_WORKER_REGISTRATIONS: WebKitWebsiteDataTypes = 4096;
pub const WEBKIT_WEBSITE_DATA_DOM_CACHE: WebKitWebsiteDataTypes = 8192;
pub const WEBKIT_WEBSITE_DATA_ALL: WebKitWebsiteDataTypes = 16383;

// Callbacks
pub type WebKitURISchemeRequestCallback = Option<unsafe extern "C" fn(*mut WebKitURISchemeRequest, gpointer)>;

// Records
#[repr(C)]
pub struct WebKitApplicationInfo(c_void);

impl ::std::fmt::Debug for WebKitApplicationInfo {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitApplicationInfo @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitAuthenticationRequestClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitAuthenticationRequestClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitAuthenticationRequestClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitAuthenticationRequestPrivate(c_void);

pub type WebKitAuthenticationRequestPrivate = *mut _WebKitAuthenticationRequestPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitAutomationSessionClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitAutomationSessionClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitAutomationSessionClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitAutomationSessionPrivate(c_void);

pub type WebKitAutomationSessionPrivate = *mut _WebKitAutomationSessionPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitBackForwardListClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitBackForwardListClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitBackForwardListClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitBackForwardListItemClass {
    pub parent_class: gobject::GInitiallyUnownedClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitBackForwardListItemClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitBackForwardListItemClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitBackForwardListItemPrivate(c_void);

pub type WebKitBackForwardListItemPrivate = *mut _WebKitBackForwardListItemPrivate;

#[repr(C)]
pub struct _WebKitBackForwardListPrivate(c_void);

pub type WebKitBackForwardListPrivate = *mut _WebKitBackForwardListPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitColorChooserRequestClass {
    pub parent_class: gobject::GObjectClass,
}

impl ::std::fmt::Debug for WebKitColorChooserRequestClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitColorChooserRequestClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitColorChooserRequestPrivate(c_void);

pub type WebKitColorChooserRequestPrivate = *mut _WebKitColorChooserRequestPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitContextMenuClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitContextMenuClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitContextMenuClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitContextMenuItemClass {
    pub parent_class: gobject::GInitiallyUnownedClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitContextMenuItemClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitContextMenuItemClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitContextMenuItemPrivate(c_void);

pub type WebKitContextMenuItemPrivate = *mut _WebKitContextMenuItemPrivate;

#[repr(C)]
pub struct _WebKitContextMenuPrivate(c_void);

pub type WebKitContextMenuPrivate = *mut _WebKitContextMenuPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitCookieManagerClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitCookieManagerClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitCookieManagerClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitCookieManagerPrivate(c_void);

pub type WebKitCookieManagerPrivate = *mut _WebKitCookieManagerPrivate;

#[repr(C)]
pub struct WebKitCredential(c_void);

impl ::std::fmt::Debug for WebKitCredential {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitCredential @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitDeviceInfoPermissionRequestClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitDeviceInfoPermissionRequestClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitDeviceInfoPermissionRequestClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitDeviceInfoPermissionRequestPrivate(c_void);

pub type WebKitDeviceInfoPermissionRequestPrivate = *mut _WebKitDeviceInfoPermissionRequestPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitDownloadClass {
    pub parent_class: gobject::GObjectClass,
    pub decide_destination: Option<unsafe extern "C" fn(*mut WebKitDownload, *const c_char) -> gboolean>,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitDownloadClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitDownloadClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("decide_destination", &self.decide_destination)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitDownloadPrivate(c_void);

pub type WebKitDownloadPrivate = *mut _WebKitDownloadPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitEditorStateClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitEditorStateClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitEditorStateClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitEditorStatePrivate(c_void);

pub type WebKitEditorStatePrivate = *mut _WebKitEditorStatePrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitFaviconDatabaseClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitFaviconDatabaseClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitFaviconDatabaseClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitFaviconDatabasePrivate(c_void);

pub type WebKitFaviconDatabasePrivate = *mut _WebKitFaviconDatabasePrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitFileChooserRequestClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitFileChooserRequestClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitFileChooserRequestClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitFileChooserRequestPrivate(c_void);

pub type WebKitFileChooserRequestPrivate = *mut _WebKitFileChooserRequestPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitFindControllerClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitFindControllerClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitFindControllerClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitFindControllerPrivate(c_void);

pub type WebKitFindControllerPrivate = *mut _WebKitFindControllerPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitFormSubmissionRequestClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitFormSubmissionRequestClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitFormSubmissionRequestClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitFormSubmissionRequestPrivate(c_void);

pub type WebKitFormSubmissionRequestPrivate = *mut _WebKitFormSubmissionRequestPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitGeolocationManagerClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitGeolocationManagerClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitGeolocationManagerClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitGeolocationManagerPrivate(c_void);

pub type WebKitGeolocationManagerPrivate = *mut _WebKitGeolocationManagerPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitGeolocationPermissionRequestClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitGeolocationPermissionRequestClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitGeolocationPermissionRequestClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitGeolocationPermissionRequestPrivate(c_void);

pub type WebKitGeolocationPermissionRequestPrivate = *mut _WebKitGeolocationPermissionRequestPrivate;

#[repr(C)]
pub struct WebKitGeolocationPosition(c_void);

impl ::std::fmt::Debug for WebKitGeolocationPosition {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitGeolocationPosition @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitHitTestResultClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitHitTestResultClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitHitTestResultClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitHitTestResultPrivate(c_void);

pub type WebKitHitTestResultPrivate = *mut _WebKitHitTestResultPrivate;

#[repr(C)]
pub struct WebKitITPFirstParty(c_void);

impl ::std::fmt::Debug for WebKitITPFirstParty {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitITPFirstParty @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
pub struct WebKitITPThirdParty(c_void);

impl ::std::fmt::Debug for WebKitITPThirdParty {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitITPThirdParty @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitInputMethodContextClass {
    pub parent_class: gobject::GObjectClass,
    pub preedit_started: Option<unsafe extern "C" fn(*mut WebKitInputMethodContext)>,
    pub preedit_changed: Option<unsafe extern "C" fn(*mut WebKitInputMethodContext)>,
    pub preedit_finished: Option<unsafe extern "C" fn(*mut WebKitInputMethodContext)>,
    pub committed: Option<unsafe extern "C" fn(*mut WebKitInputMethodContext, *const c_char)>,
    pub delete_surrounding: Option<unsafe extern "C" fn(*mut WebKitInputMethodContext, c_int, c_uint)>,
    pub set_enable_preedit: Option<unsafe extern "C" fn(*mut WebKitInputMethodContext, gboolean)>,
    pub get_preedit: Option<unsafe extern "C" fn(*mut WebKitInputMethodContext, *mut *mut c_char, *mut *mut glib::GList, *mut c_uint)>,
    pub filter_key_event: Option<unsafe extern "C" fn(*mut WebKitInputMethodContext, *mut gdk::GdkEventKey) -> gboolean>,
    pub notify_focus_in: Option<unsafe extern "C" fn(*mut WebKitInputMethodContext)>,
    pub notify_focus_out: Option<unsafe extern "C" fn(*mut WebKitInputMethodContext)>,
    pub notify_cursor_area: Option<unsafe extern "C" fn(*mut WebKitInputMethodContext, c_int, c_int, c_int, c_int)>,
    pub notify_surrounding: Option<unsafe extern "C" fn(*mut WebKitInputMethodContext, *const c_char, c_uint, c_uint, c_uint)>,
    pub reset: Option<unsafe extern "C" fn(*mut WebKitInputMethodContext)>,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved4: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved5: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved6: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved7: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitInputMethodContextClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitInputMethodContextClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("preedit_started", &self.preedit_started)
         .field("preedit_changed", &self.preedit_changed)
         .field("preedit_finished", &self.preedit_finished)
         .field("committed", &self.committed)
         .field("delete_surrounding", &self.delete_surrounding)
         .field("set_enable_preedit", &self.set_enable_preedit)
         .field("get_preedit", &self.get_preedit)
         .field("filter_key_event", &self.filter_key_event)
         .field("notify_focus_in", &self.notify_focus_in)
         .field("notify_focus_out", &self.notify_focus_out)
         .field("notify_cursor_area", &self.notify_cursor_area)
         .field("notify_surrounding", &self.notify_surrounding)
         .field("reset", &self.reset)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .field("_webkit_reserved4", &self._webkit_reserved4)
         .field("_webkit_reserved5", &self._webkit_reserved5)
         .field("_webkit_reserved6", &self._webkit_reserved6)
         .field("_webkit_reserved7", &self._webkit_reserved7)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitInputMethodContextPrivate(c_void);

pub type WebKitInputMethodContextPrivate = *mut _WebKitInputMethodContextPrivate;

#[repr(C)]
pub struct WebKitInputMethodUnderline(c_void);

impl ::std::fmt::Debug for WebKitInputMethodUnderline {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitInputMethodUnderline @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitInstallMissingMediaPluginsPermissionRequestClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitInstallMissingMediaPluginsPermissionRequestClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitInstallMissingMediaPluginsPermissionRequestClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitInstallMissingMediaPluginsPermissionRequestPrivate(c_void);

pub type WebKitInstallMissingMediaPluginsPermissionRequestPrivate = *mut _WebKitInstallMissingMediaPluginsPermissionRequestPrivate;

#[repr(C)]
pub struct WebKitJavascriptResult(c_void);

impl ::std::fmt::Debug for WebKitJavascriptResult {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitJavascriptResult @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
pub struct WebKitMimeInfo(c_void);

impl ::std::fmt::Debug for WebKitMimeInfo {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitMimeInfo @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
pub struct WebKitNavigationAction(c_void);

impl ::std::fmt::Debug for WebKitNavigationAction {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitNavigationAction @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitNavigationPolicyDecisionClass {
    pub parent_class: WebKitPolicyDecisionClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitNavigationPolicyDecisionClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitNavigationPolicyDecisionClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitNavigationPolicyDecisionPrivate(c_void);

pub type WebKitNavigationPolicyDecisionPrivate = *mut _WebKitNavigationPolicyDecisionPrivate;

#[repr(C)]
pub struct WebKitNetworkProxySettings(c_void);

impl ::std::fmt::Debug for WebKitNetworkProxySettings {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitNetworkProxySettings @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitNotificationClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved4: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved5: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitNotificationClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitNotificationClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .field("_webkit_reserved4", &self._webkit_reserved4)
         .field("_webkit_reserved5", &self._webkit_reserved5)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitNotificationPermissionRequestClass {
    pub parent_class: gobject::GObjectClass,
}

impl ::std::fmt::Debug for WebKitNotificationPermissionRequestClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitNotificationPermissionRequestClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitNotificationPermissionRequestPrivate(c_void);

pub type WebKitNotificationPermissionRequestPrivate = *mut _WebKitNotificationPermissionRequestPrivate;

#[repr(C)]
pub struct _WebKitNotificationPrivate(c_void);

pub type WebKitNotificationPrivate = *mut _WebKitNotificationPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitOptionMenuClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitOptionMenuClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitOptionMenuClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct WebKitOptionMenuItem(c_void);

impl ::std::fmt::Debug for WebKitOptionMenuItem {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitOptionMenuItem @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitOptionMenuPrivate(c_void);

pub type WebKitOptionMenuPrivate = *mut _WebKitOptionMenuPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitPermissionRequestIface {
    pub parent_interface: gobject::GTypeInterface,
    pub allow: Option<unsafe extern "C" fn(*mut WebKitPermissionRequest)>,
    pub deny: Option<unsafe extern "C" fn(*mut WebKitPermissionRequest)>,
}

impl ::std::fmt::Debug for WebKitPermissionRequestIface {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitPermissionRequestIface @ {:p}", self))
         .field("parent_interface", &self.parent_interface)
         .field("allow", &self.allow)
         .field("deny", &self.deny)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitPluginClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitPluginClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitPluginClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitPluginPrivate(c_void);

pub type WebKitPluginPrivate = *mut _WebKitPluginPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitPointerLockPermissionRequestClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitPointerLockPermissionRequestClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitPointerLockPermissionRequestClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitPointerLockPermissionRequestPrivate(c_void);

pub type WebKitPointerLockPermissionRequestPrivate = *mut _WebKitPointerLockPermissionRequestPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitPolicyDecisionClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitPolicyDecisionClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitPolicyDecisionClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitPolicyDecisionPrivate(c_void);

pub type WebKitPolicyDecisionPrivate = *mut _WebKitPolicyDecisionPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitPrintCustomWidgetClass {
    pub parent_class: gobject::GObjectClass,
    pub apply: Option<unsafe extern "C" fn(*mut WebKitPrintCustomWidget, *mut gtk::GtkWidget)>,
    pub update: Option<unsafe extern "C" fn(*mut WebKitPrintCustomWidget, *mut gtk::GtkWidget, *mut gtk::GtkPageSetup, *mut gtk::GtkPrintSettings)>,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitPrintCustomWidgetClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitPrintCustomWidgetClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("apply", &self.apply)
         .field("update", &self.update)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitPrintCustomWidgetPrivate(c_void);

pub type WebKitPrintCustomWidgetPrivate = *mut _WebKitPrintCustomWidgetPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitPrintOperationClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitPrintOperationClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitPrintOperationClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitPrintOperationPrivate(c_void);

pub type WebKitPrintOperationPrivate = *mut _WebKitPrintOperationPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitResponsePolicyDecisionClass {
    pub parent_class: WebKitPolicyDecisionClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitResponsePolicyDecisionClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitResponsePolicyDecisionClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitResponsePolicyDecisionPrivate(c_void);

pub type WebKitResponsePolicyDecisionPrivate = *mut _WebKitResponsePolicyDecisionPrivate;

#[repr(C)]
pub struct WebKitScriptDialog(c_void);

impl ::std::fmt::Debug for WebKitScriptDialog {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitScriptDialog @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitSecurityManagerClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitSecurityManagerClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitSecurityManagerClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitSecurityManagerPrivate(c_void);

pub type WebKitSecurityManagerPrivate = *mut _WebKitSecurityManagerPrivate;

#[repr(C)]
pub struct WebKitSecurityOrigin(c_void);

impl ::std::fmt::Debug for WebKitSecurityOrigin {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitSecurityOrigin @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitSettingsClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitSettingsClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitSettingsClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitSettingsPrivate(c_void);

pub type WebKitSettingsPrivate = *mut _WebKitSettingsPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitURIRequestClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitURIRequestClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitURIRequestClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitURIRequestPrivate(c_void);

pub type WebKitURIRequestPrivate = *mut _WebKitURIRequestPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitURIResponseClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitURIResponseClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitURIResponseClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitURIResponsePrivate(c_void);

pub type WebKitURIResponsePrivate = *mut _WebKitURIResponsePrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitURISchemeRequestClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitURISchemeRequestClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitURISchemeRequestClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitURISchemeRequestPrivate(c_void);

pub type WebKitURISchemeRequestPrivate = *mut _WebKitURISchemeRequestPrivate;

#[repr(C)]
pub struct WebKitUserContentFilter(c_void);

impl ::std::fmt::Debug for WebKitUserContentFilter {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitUserContentFilter @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitUserContentFilterStoreClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitUserContentFilterStoreClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitUserContentFilterStoreClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitUserContentFilterStorePrivate(c_void);

pub type WebKitUserContentFilterStorePrivate = *mut _WebKitUserContentFilterStorePrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitUserContentManagerClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitUserContentManagerClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitUserContentManagerClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitUserContentManagerPrivate(c_void);

pub type WebKitUserContentManagerPrivate = *mut _WebKitUserContentManagerPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitUserMediaPermissionRequestClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitUserMediaPermissionRequestClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitUserMediaPermissionRequestClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitUserMediaPermissionRequestPrivate(c_void);

pub type WebKitUserMediaPermissionRequestPrivate = *mut _WebKitUserMediaPermissionRequestPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitUserMessageClass {
    pub parent_class: gobject::GInitiallyUnownedClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitUserMessageClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitUserMessageClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitUserMessagePrivate(c_void);

pub type WebKitUserMessagePrivate = *mut _WebKitUserMessagePrivate;

#[repr(C)]
pub struct WebKitUserScript(c_void);

impl ::std::fmt::Debug for WebKitUserScript {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitUserScript @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
pub struct WebKitUserStyleSheet(c_void);

impl ::std::fmt::Debug for WebKitUserStyleSheet {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitUserStyleSheet @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebContextClass {
    pub parent: gobject::GObjectClass,
    pub download_started: Option<unsafe extern "C" fn(*mut WebKitWebContext, *mut WebKitDownload)>,
    pub initialize_web_extensions: Option<unsafe extern "C" fn(*mut WebKitWebContext)>,
    pub initialize_notification_permissions: Option<unsafe extern "C" fn(*mut WebKitWebContext)>,
    pub automation_started: Option<unsafe extern "C" fn(*mut WebKitWebContext, *mut WebKitAutomationSession)>,
    pub user_message_received: Option<unsafe extern "C" fn(*mut WebKitWebContext, *mut WebKitUserMessage) -> gboolean>,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitWebContextClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebContextClass @ {:p}", self))
         .field("parent", &self.parent)
         .field("download_started", &self.download_started)
         .field("initialize_web_extensions", &self.initialize_web_extensions)
         .field("initialize_notification_permissions", &self.initialize_notification_permissions)
         .field("automation_started", &self.automation_started)
         .field("user_message_received", &self.user_message_received)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitWebContextPrivate(c_void);

pub type WebKitWebContextPrivate = *mut _WebKitWebContextPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebInspectorClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitWebInspectorClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebInspectorClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitWebInspectorPrivate(c_void);

pub type WebKitWebInspectorPrivate = *mut _WebKitWebInspectorPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebResourceClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitWebResourceClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebResourceClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitWebResourcePrivate(c_void);

pub type WebKitWebResourcePrivate = *mut _WebKitWebResourcePrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebViewBaseClass {
    pub parentClass: gtk::GtkContainerClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitWebViewBaseClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebViewBaseClass @ {:p}", self))
         .field("parentClass", &self.parentClass)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitWebViewBasePrivate(c_void);

pub type WebKitWebViewBasePrivate = *mut _WebKitWebViewBasePrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebViewClass {
    pub parent: WebKitWebViewBaseClass,
    pub load_changed: Option<unsafe extern "C" fn(*mut WebKitWebView, WebKitLoadEvent)>,
    pub load_failed: Option<unsafe extern "C" fn(*mut WebKitWebView, WebKitLoadEvent, *const c_char, *mut glib::GError) -> gboolean>,
    pub create: Option<unsafe extern "C" fn(*mut WebKitWebView, *mut WebKitNavigationAction) -> *mut gtk::GtkWidget>,
    pub ready_to_show: Option<unsafe extern "C" fn(*mut WebKitWebView)>,
    pub run_as_modal: Option<unsafe extern "C" fn(*mut WebKitWebView)>,
    pub close: Option<unsafe extern "C" fn(*mut WebKitWebView)>,
    pub script_dialog: Option<unsafe extern "C" fn(*mut WebKitWebView, *mut WebKitScriptDialog) -> gboolean>,
    pub decide_policy: Option<unsafe extern "C" fn(*mut WebKitWebView, *mut WebKitPolicyDecision, WebKitPolicyDecisionType) -> gboolean>,
    pub permission_request: Option<unsafe extern "C" fn(*mut WebKitWebView, *mut WebKitPermissionRequest) -> gboolean>,
    pub mouse_target_changed: Option<unsafe extern "C" fn(*mut WebKitWebView, *mut WebKitHitTestResult, c_uint)>,
    pub print: Option<unsafe extern "C" fn(*mut WebKitWebView, *mut WebKitPrintOperation) -> gboolean>,
    pub resource_load_started: Option<unsafe extern "C" fn(*mut WebKitWebView, *mut WebKitWebResource, *mut WebKitURIRequest)>,
    pub enter_fullscreen: Option<unsafe extern "C" fn(*mut WebKitWebView) -> gboolean>,
    pub leave_fullscreen: Option<unsafe extern "C" fn(*mut WebKitWebView) -> gboolean>,
    pub run_file_chooser: Option<unsafe extern "C" fn(*mut WebKitWebView, *mut WebKitFileChooserRequest) -> gboolean>,
    pub context_menu: Option<unsafe extern "C" fn(*mut WebKitWebView, *mut WebKitContextMenu, *mut gdk::GdkEvent, *mut WebKitHitTestResult) -> gboolean>,
    pub context_menu_dismissed: Option<unsafe extern "C" fn(*mut WebKitWebView)>,
    pub submit_form: Option<unsafe extern "C" fn(*mut WebKitWebView, *mut WebKitFormSubmissionRequest)>,
    pub insecure_content_detected: Option<unsafe extern "C" fn(*mut WebKitWebView, WebKitInsecureContentEvent)>,
    pub web_process_crashed: Option<unsafe extern "C" fn(*mut WebKitWebView) -> gboolean>,
    pub authenticate: Option<unsafe extern "C" fn(*mut WebKitWebView, *mut WebKitAuthenticationRequest) -> gboolean>,
    pub load_failed_with_tls_errors: Option<unsafe extern "C" fn(*mut WebKitWebView, *const c_char, *mut gio::GTlsCertificate, gio::GTlsCertificateFlags) -> gboolean>,
    pub show_notification: Option<unsafe extern "C" fn(*mut WebKitWebView, *mut WebKitNotification) -> gboolean>,
    pub run_color_chooser: Option<unsafe extern "C" fn(*mut WebKitWebView, *mut WebKitColorChooserRequest) -> gboolean>,
    pub show_option_menu: Option<unsafe extern "C" fn(*mut WebKitWebView, *mut gdk::GdkRectangle, *mut WebKitOptionMenu) -> gboolean>,
    pub web_process_terminated: Option<unsafe extern "C" fn(*mut WebKitWebView, WebKitWebProcessTerminationReason)>,
    pub user_message_received: Option<unsafe extern "C" fn(*mut WebKitWebView, *mut WebKitUserMessage) -> gboolean>,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitWebViewClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebViewClass @ {:p}", self))
         .field("parent", &self.parent)
         .field("load_changed", &self.load_changed)
         .field("load_failed", &self.load_failed)
         .field("create", &self.create)
         .field("ready_to_show", &self.ready_to_show)
         .field("run_as_modal", &self.run_as_modal)
         .field("close", &self.close)
         .field("script_dialog", &self.script_dialog)
         .field("decide_policy", &self.decide_policy)
         .field("permission_request", &self.permission_request)
         .field("mouse_target_changed", &self.mouse_target_changed)
         .field("print", &self.print)
         .field("resource_load_started", &self.resource_load_started)
         .field("enter_fullscreen", &self.enter_fullscreen)
         .field("leave_fullscreen", &self.leave_fullscreen)
         .field("run_file_chooser", &self.run_file_chooser)
         .field("context_menu", &self.context_menu)
         .field("context_menu_dismissed", &self.context_menu_dismissed)
         .field("submit_form", &self.submit_form)
         .field("insecure_content_detected", &self.insecure_content_detected)
         .field("web_process_crashed", &self.web_process_crashed)
         .field("authenticate", &self.authenticate)
         .field("load_failed_with_tls_errors", &self.load_failed_with_tls_errors)
         .field("show_notification", &self.show_notification)
         .field("run_color_chooser", &self.run_color_chooser)
         .field("show_option_menu", &self.show_option_menu)
         .field("web_process_terminated", &self.web_process_terminated)
         .field("user_message_received", &self.user_message_received)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitWebViewPrivate(c_void);

pub type WebKitWebViewPrivate = *mut _WebKitWebViewPrivate;

#[repr(C)]
pub struct WebKitWebViewSessionState(c_void);

impl ::std::fmt::Debug for WebKitWebViewSessionState {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebViewSessionState @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
pub struct WebKitWebsiteData(c_void);

impl ::std::fmt::Debug for WebKitWebsiteData {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebsiteData @ {:p}", self))
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebsiteDataAccessPermissionRequestClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitWebsiteDataAccessPermissionRequestClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebsiteDataAccessPermissionRequestClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitWebsiteDataAccessPermissionRequestPrivate(c_void);

pub type WebKitWebsiteDataAccessPermissionRequestPrivate = *mut _WebKitWebsiteDataAccessPermissionRequestPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebsiteDataManagerClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitWebsiteDataManagerClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebsiteDataManagerClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitWebsiteDataManagerPrivate(c_void);

pub type WebKitWebsiteDataManagerPrivate = *mut _WebKitWebsiteDataManagerPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebsitePoliciesClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitWebsitePoliciesClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebsitePoliciesClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitWebsitePoliciesPrivate(c_void);

pub type WebKitWebsitePoliciesPrivate = *mut _WebKitWebsitePoliciesPrivate;

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWindowPropertiesClass {
    pub parent_class: gobject::GObjectClass,
    pub _webkit_reserved0: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved1: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved2: Option<unsafe extern "C" fn()>,
    pub _webkit_reserved3: Option<unsafe extern "C" fn()>,
}

impl ::std::fmt::Debug for WebKitWindowPropertiesClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWindowPropertiesClass @ {:p}", self))
         .field("parent_class", &self.parent_class)
         .field("_webkit_reserved0", &self._webkit_reserved0)
         .field("_webkit_reserved1", &self._webkit_reserved1)
         .field("_webkit_reserved2", &self._webkit_reserved2)
         .field("_webkit_reserved3", &self._webkit_reserved3)
         .finish()
    }
}

#[repr(C)]
pub struct _WebKitWindowPropertiesPrivate(c_void);

pub type WebKitWindowPropertiesPrivate = *mut _WebKitWindowPropertiesPrivate;

// Classes
#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitAuthenticationRequest {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitAuthenticationRequestPrivate,
}

impl ::std::fmt::Debug for WebKitAuthenticationRequest {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitAuthenticationRequest @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitAutomationSession {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitAutomationSessionPrivate,
}

impl ::std::fmt::Debug for WebKitAutomationSession {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitAutomationSession @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitBackForwardList {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitBackForwardListPrivate,
}

impl ::std::fmt::Debug for WebKitBackForwardList {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitBackForwardList @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitBackForwardListItem {
    pub parent: gobject::GInitiallyUnowned,
    pub priv_: *mut WebKitBackForwardListItemPrivate,
}

impl ::std::fmt::Debug for WebKitBackForwardListItem {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitBackForwardListItem @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitColorChooserRequest {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitColorChooserRequestPrivate,
}

impl ::std::fmt::Debug for WebKitColorChooserRequest {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitColorChooserRequest @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitContextMenu {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitContextMenuPrivate,
}

impl ::std::fmt::Debug for WebKitContextMenu {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitContextMenu @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitContextMenuItem {
    pub parent: gobject::GInitiallyUnowned,
    pub priv_: *mut WebKitContextMenuItemPrivate,
}

impl ::std::fmt::Debug for WebKitContextMenuItem {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitContextMenuItem @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitCookieManager {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitCookieManagerPrivate,
}

impl ::std::fmt::Debug for WebKitCookieManager {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitCookieManager @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitDeviceInfoPermissionRequest {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitDeviceInfoPermissionRequestPrivate,
}

impl ::std::fmt::Debug for WebKitDeviceInfoPermissionRequest {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitDeviceInfoPermissionRequest @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitDownload {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitDownloadPrivate,
}

impl ::std::fmt::Debug for WebKitDownload {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitDownload @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitEditorState {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitEditorStatePrivate,
}

impl ::std::fmt::Debug for WebKitEditorState {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitEditorState @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitFaviconDatabase {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitFaviconDatabasePrivate,
}

impl ::std::fmt::Debug for WebKitFaviconDatabase {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitFaviconDatabase @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitFileChooserRequest {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitFileChooserRequestPrivate,
}

impl ::std::fmt::Debug for WebKitFileChooserRequest {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitFileChooserRequest @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitFindController {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitFindControllerPrivate,
}

impl ::std::fmt::Debug for WebKitFindController {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitFindController @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitFormSubmissionRequest {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitFormSubmissionRequestPrivate,
}

impl ::std::fmt::Debug for WebKitFormSubmissionRequest {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitFormSubmissionRequest @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitGeolocationManager {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitGeolocationManagerPrivate,
}

impl ::std::fmt::Debug for WebKitGeolocationManager {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitGeolocationManager @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitGeolocationPermissionRequest {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitGeolocationPermissionRequestPrivate,
}

impl ::std::fmt::Debug for WebKitGeolocationPermissionRequest {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitGeolocationPermissionRequest @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitHitTestResult {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitHitTestResultPrivate,
}

impl ::std::fmt::Debug for WebKitHitTestResult {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitHitTestResult @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitInputMethodContext {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitInputMethodContextPrivate,
}

impl ::std::fmt::Debug for WebKitInputMethodContext {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitInputMethodContext @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitInstallMissingMediaPluginsPermissionRequest {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitInstallMissingMediaPluginsPermissionRequestPrivate,
}

impl ::std::fmt::Debug for WebKitInstallMissingMediaPluginsPermissionRequest {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitInstallMissingMediaPluginsPermissionRequest @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitNavigationPolicyDecision {
    pub parent: WebKitPolicyDecision,
    pub priv_: *mut WebKitNavigationPolicyDecisionPrivate,
}

impl ::std::fmt::Debug for WebKitNavigationPolicyDecision {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitNavigationPolicyDecision @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitNotification {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitNotificationPrivate,
}

impl ::std::fmt::Debug for WebKitNotification {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitNotification @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitNotificationPermissionRequest {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitNotificationPermissionRequestPrivate,
}

impl ::std::fmt::Debug for WebKitNotificationPermissionRequest {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitNotificationPermissionRequest @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitOptionMenu {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitOptionMenuPrivate,
}

impl ::std::fmt::Debug for WebKitOptionMenu {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitOptionMenu @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitPlugin {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitPluginPrivate,
}

impl ::std::fmt::Debug for WebKitPlugin {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitPlugin @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitPointerLockPermissionRequest {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitPointerLockPermissionRequestPrivate,
}

impl ::std::fmt::Debug for WebKitPointerLockPermissionRequest {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitPointerLockPermissionRequest @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitPolicyDecision {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitPolicyDecisionPrivate,
}

impl ::std::fmt::Debug for WebKitPolicyDecision {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitPolicyDecision @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitPrintCustomWidget {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitPrintCustomWidgetPrivate,
}

impl ::std::fmt::Debug for WebKitPrintCustomWidget {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitPrintCustomWidget @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitPrintOperation {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitPrintOperationPrivate,
}

impl ::std::fmt::Debug for WebKitPrintOperation {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitPrintOperation @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitResponsePolicyDecision {
    pub parent: WebKitPolicyDecision,
    pub priv_: *mut WebKitResponsePolicyDecisionPrivate,
}

impl ::std::fmt::Debug for WebKitResponsePolicyDecision {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitResponsePolicyDecision @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitSecurityManager {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitSecurityManagerPrivate,
}

impl ::std::fmt::Debug for WebKitSecurityManager {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitSecurityManager @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitSettings {
    pub parent_instance: gobject::GObject,
    pub priv_: *mut WebKitSettingsPrivate,
}

impl ::std::fmt::Debug for WebKitSettings {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitSettings @ {:p}", self))
         .field("parent_instance", &self.parent_instance)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitURIRequest {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitURIRequestPrivate,
}

impl ::std::fmt::Debug for WebKitURIRequest {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitURIRequest @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitURIResponse {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitURIResponsePrivate,
}

impl ::std::fmt::Debug for WebKitURIResponse {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitURIResponse @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitURISchemeRequest {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitURISchemeRequestPrivate,
}

impl ::std::fmt::Debug for WebKitURISchemeRequest {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitURISchemeRequest @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitUserContentFilterStore {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitUserContentFilterStorePrivate,
}

impl ::std::fmt::Debug for WebKitUserContentFilterStore {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitUserContentFilterStore @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitUserContentManager {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitUserContentManagerPrivate,
}

impl ::std::fmt::Debug for WebKitUserContentManager {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitUserContentManager @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitUserMediaPermissionRequest {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitUserMediaPermissionRequestPrivate,
}

impl ::std::fmt::Debug for WebKitUserMediaPermissionRequest {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitUserMediaPermissionRequest @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitUserMessage {
    pub parent: gobject::GInitiallyUnowned,
    pub priv_: *mut WebKitUserMessagePrivate,
}

impl ::std::fmt::Debug for WebKitUserMessage {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitUserMessage @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebContext {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitWebContextPrivate,
}

impl ::std::fmt::Debug for WebKitWebContext {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebContext @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebInspector {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitWebInspectorPrivate,
}

impl ::std::fmt::Debug for WebKitWebInspector {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebInspector @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebResource {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitWebResourcePrivate,
}

impl ::std::fmt::Debug for WebKitWebResource {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebResource @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebView {
    pub parent: WebKitWebViewBase,
    pub priv_: *mut WebKitWebViewPrivate,
}

impl ::std::fmt::Debug for WebKitWebView {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebView @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebViewBase {
    pub parentInstance: gtk::GtkContainer,
    pub priv_: *mut WebKitWebViewBasePrivate,
}

impl ::std::fmt::Debug for WebKitWebViewBase {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebViewBase @ {:p}", self))
         .field("parentInstance", &self.parentInstance)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebsiteDataAccessPermissionRequest {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitWebsiteDataAccessPermissionRequestPrivate,
}

impl ::std::fmt::Debug for WebKitWebsiteDataAccessPermissionRequest {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebsiteDataAccessPermissionRequest @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebsiteDataManager {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitWebsiteDataManagerPrivate,
}

impl ::std::fmt::Debug for WebKitWebsiteDataManager {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebsiteDataManager @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWebsitePolicies {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitWebsitePoliciesPrivate,
}

impl ::std::fmt::Debug for WebKitWebsitePolicies {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWebsitePolicies @ {:p}", self))
         .field("parent", &self.parent)
         .field("priv_", &self.priv_)
         .finish()
    }
}

#[repr(C)]
#[derive(Copy, Clone)]
pub struct WebKitWindowProperties {
    pub parent: gobject::GObject,
    pub priv_: *mut WebKitWindowPropertiesPrivate,
}

impl ::std::fmt::Debug for WebKitWindowProperties {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("WebKitWindowProperties @ {:p}", self))
         .field("parent", &self.parent)
         .finish()
    }
}

// Interfaces
#[repr(C)]
pub struct WebKitPermissionRequest(c_void);

impl ::std::fmt::Debug for WebKitPermissionRequest {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        write!(f, "WebKitPermissionRequest @ {:p}", self)
    }
}


#[link(name = "webkit2gtk-4.0")]
#[link(name = "javascriptcoregtk-4.0")]
extern "C" {

    //=========================================================================
    // WebKitAuthenticationScheme
    //=========================================================================
    pub fn webkit_authentication_scheme_get_type() -> GType;

    //=========================================================================
    // WebKitAutomationBrowsingContextPresentation
    //=========================================================================
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_automation_browsing_context_presentation_get_type() -> GType;

    //=========================================================================
    // WebKitAutoplayPolicy
    //=========================================================================
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_autoplay_policy_get_type() -> GType;

    //=========================================================================
    // WebKitCacheModel
    //=========================================================================
    pub fn webkit_cache_model_get_type() -> GType;

    //=========================================================================
    // WebKitContextMenuAction
    //=========================================================================
    pub fn webkit_context_menu_action_get_type() -> GType;

    //=========================================================================
    // WebKitCookieAcceptPolicy
    //=========================================================================
    pub fn webkit_cookie_accept_policy_get_type() -> GType;

    //=========================================================================
    // WebKitCookiePersistentStorage
    //=========================================================================
    pub fn webkit_cookie_persistent_storage_get_type() -> GType;

    //=========================================================================
    // WebKitCredentialPersistence
    //=========================================================================
    pub fn webkit_credential_persistence_get_type() -> GType;

    //=========================================================================
    // WebKitDownloadError
    //=========================================================================
    pub fn webkit_download_error_get_type() -> GType;
    pub fn webkit_download_error_quark() -> glib::GQuark;

    //=========================================================================
    // WebKitFaviconDatabaseError
    //=========================================================================
    pub fn webkit_favicon_database_error_get_type() -> GType;
    pub fn webkit_favicon_database_error_quark() -> glib::GQuark;

    //=========================================================================
    // WebKitHardwareAccelerationPolicy
    //=========================================================================
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_hardware_acceleration_policy_get_type() -> GType;

    //=========================================================================
    // WebKitInputPurpose
    //=========================================================================
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_purpose_get_type() -> GType;

    //=========================================================================
    // WebKitInsecureContentEvent
    //=========================================================================
    pub fn webkit_insecure_content_event_get_type() -> GType;

    //=========================================================================
    // WebKitJavascriptError
    //=========================================================================
    pub fn webkit_javascript_error_get_type() -> GType;
    pub fn webkit_javascript_error_quark() -> glib::GQuark;

    //=========================================================================
    // WebKitLoadEvent
    //=========================================================================
    pub fn webkit_load_event_get_type() -> GType;

    //=========================================================================
    // WebKitNavigationType
    //=========================================================================
    pub fn webkit_navigation_type_get_type() -> GType;

    //=========================================================================
    // WebKitNetworkError
    //=========================================================================
    pub fn webkit_network_error_get_type() -> GType;
    pub fn webkit_network_error_quark() -> glib::GQuark;

    //=========================================================================
    // WebKitNetworkProxyMode
    //=========================================================================
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_network_proxy_mode_get_type() -> GType;

    //=========================================================================
    // WebKitPluginError
    //=========================================================================
    pub fn webkit_plugin_error_get_type() -> GType;
    pub fn webkit_plugin_error_quark() -> glib::GQuark;

    //=========================================================================
    // WebKitPolicyDecisionType
    //=========================================================================
    pub fn webkit_policy_decision_type_get_type() -> GType;

    //=========================================================================
    // WebKitPolicyError
    //=========================================================================
    pub fn webkit_policy_error_get_type() -> GType;
    pub fn webkit_policy_error_quark() -> glib::GQuark;

    //=========================================================================
    // WebKitPrintError
    //=========================================================================
    pub fn webkit_print_error_get_type() -> GType;
    pub fn webkit_print_error_quark() -> glib::GQuark;

    //=========================================================================
    // WebKitPrintOperationResponse
    //=========================================================================
    pub fn webkit_print_operation_response_get_type() -> GType;

    //=========================================================================
    // WebKitProcessModel
    //=========================================================================
    pub fn webkit_process_model_get_type() -> GType;

    //=========================================================================
    // WebKitSaveMode
    //=========================================================================
    pub fn webkit_save_mode_get_type() -> GType;

    //=========================================================================
    // WebKitScriptDialogType
    //=========================================================================
    pub fn webkit_script_dialog_type_get_type() -> GType;

    //=========================================================================
    // WebKitSnapshotError
    //=========================================================================
    pub fn webkit_snapshot_error_get_type() -> GType;
    pub fn webkit_snapshot_error_quark() -> glib::GQuark;

    //=========================================================================
    // WebKitSnapshotRegion
    //=========================================================================
    pub fn webkit_snapshot_region_get_type() -> GType;

    //=========================================================================
    // WebKitTLSErrorsPolicy
    //=========================================================================
    pub fn webkit_tls_errors_policy_get_type() -> GType;

    //=========================================================================
    // WebKitUserContentFilterError
    //=========================================================================
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_error_get_type() -> GType;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_error_quark() -> glib::GQuark;

    //=========================================================================
    // WebKitUserContentInjectedFrames
    //=========================================================================
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_user_content_injected_frames_get_type() -> GType;

    //=========================================================================
    // WebKitUserMessageError
    //=========================================================================
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_user_message_error_get_type() -> GType;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_user_message_error_quark() -> glib::GQuark;

    //=========================================================================
    // WebKitUserScriptInjectionTime
    //=========================================================================
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_user_script_injection_time_get_type() -> GType;

    //=========================================================================
    // WebKitUserStyleLevel
    //=========================================================================
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_user_style_level_get_type() -> GType;

    //=========================================================================
    // WebKitWebProcessTerminationReason
    //=========================================================================
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_web_process_termination_reason_get_type() -> GType;

    //=========================================================================
    // WebKitEditorTypingAttributes
    //=========================================================================
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_editor_typing_attributes_get_type() -> GType;

    //=========================================================================
    // WebKitFindOptions
    //=========================================================================
    pub fn webkit_find_options_get_type() -> GType;

    //=========================================================================
    // WebKitHitTestResultContext
    //=========================================================================
    pub fn webkit_hit_test_result_context_get_type() -> GType;

    //=========================================================================
    // WebKitInputHints
    //=========================================================================
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_hints_get_type() -> GType;

    //=========================================================================
    // WebKitSnapshotOptions
    //=========================================================================
    pub fn webkit_snapshot_options_get_type() -> GType;

    //=========================================================================
    // WebKitWebsiteDataTypes
    //=========================================================================
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_website_data_types_get_type() -> GType;

    //=========================================================================
    // WebKitApplicationInfo
    //=========================================================================
    pub fn webkit_application_info_get_type() -> GType;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_application_info_new() -> *mut WebKitApplicationInfo;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_application_info_get_name(info: *mut WebKitApplicationInfo) -> *const c_char;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_application_info_get_version(info: *mut WebKitApplicationInfo, major: *mut u64, minor: *mut u64, micro: *mut u64);
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_application_info_ref(info: *mut WebKitApplicationInfo) -> *mut WebKitApplicationInfo;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_application_info_set_name(info: *mut WebKitApplicationInfo, name: *const c_char);
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_application_info_set_version(info: *mut WebKitApplicationInfo, major: u64, minor: u64, micro: u64);
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_application_info_unref(info: *mut WebKitApplicationInfo);

    //=========================================================================
    // WebKitCredential
    //=========================================================================
    pub fn webkit_credential_get_type() -> GType;
    pub fn webkit_credential_new(username: *const c_char, password: *const c_char, persistence: WebKitCredentialPersistence) -> *mut WebKitCredential;
    pub fn webkit_credential_copy(credential: *mut WebKitCredential) -> *mut WebKitCredential;
    pub fn webkit_credential_free(credential: *mut WebKitCredential);
    pub fn webkit_credential_get_password(credential: *mut WebKitCredential) -> *const c_char;
    pub fn webkit_credential_get_persistence(credential: *mut WebKitCredential) -> WebKitCredentialPersistence;
    pub fn webkit_credential_get_username(credential: *mut WebKitCredential) -> *const c_char;
    pub fn webkit_credential_has_password(credential: *mut WebKitCredential) -> gboolean;

    //=========================================================================
    // WebKitGeolocationPosition
    //=========================================================================
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_geolocation_position_get_type() -> GType;
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_geolocation_position_new(latitude: c_double, longitude: c_double, accuracy: c_double) -> *mut WebKitGeolocationPosition;
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_geolocation_position_copy(position: *mut WebKitGeolocationPosition) -> *mut WebKitGeolocationPosition;
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_geolocation_position_free(position: *mut WebKitGeolocationPosition);
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_geolocation_position_set_altitude(position: *mut WebKitGeolocationPosition, altitude: c_double);
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_geolocation_position_set_altitude_accuracy(position: *mut WebKitGeolocationPosition, altitude_accuracy: c_double);
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_geolocation_position_set_heading(position: *mut WebKitGeolocationPosition, heading: c_double);
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_geolocation_position_set_speed(position: *mut WebKitGeolocationPosition, speed: c_double);
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_geolocation_position_set_timestamp(position: *mut WebKitGeolocationPosition, timestamp: u64);

    //=========================================================================
    // WebKitITPFirstParty
    //=========================================================================
    pub fn webkit_itp_first_party_get_type() -> GType;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_itp_first_party_get_domain(itp_first_party: *mut WebKitITPFirstParty) -> *const c_char;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_itp_first_party_get_last_update_time(itp_first_party: *mut WebKitITPFirstParty) -> *mut glib::GDateTime;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_itp_first_party_get_website_data_access_allowed(itp_first_party: *mut WebKitITPFirstParty) -> gboolean;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_itp_first_party_ref(itp_first_party: *mut WebKitITPFirstParty) -> *mut WebKitITPFirstParty;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_itp_first_party_unref(itp_first_party: *mut WebKitITPFirstParty);

    //=========================================================================
    // WebKitITPThirdParty
    //=========================================================================
    pub fn webkit_itp_third_party_get_type() -> GType;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_itp_third_party_get_domain(itp_third_party: *mut WebKitITPThirdParty) -> *const c_char;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_itp_third_party_get_first_parties(itp_third_party: *mut WebKitITPThirdParty) -> *mut glib::GList;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_itp_third_party_ref(itp_third_party: *mut WebKitITPThirdParty) -> *mut WebKitITPThirdParty;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_itp_third_party_unref(itp_third_party: *mut WebKitITPThirdParty);

    //=========================================================================
    // WebKitInputMethodUnderline
    //=========================================================================
    pub fn webkit_input_method_underline_get_type() -> GType;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_underline_new(start_offset: c_uint, end_offset: c_uint) -> *mut WebKitInputMethodUnderline;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_underline_copy(underline: *mut WebKitInputMethodUnderline) -> *mut WebKitInputMethodUnderline;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_underline_free(underline: *mut WebKitInputMethodUnderline);
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_underline_set_color(underline: *mut WebKitInputMethodUnderline, rgba: *const gdk::GdkRGBA);

    //=========================================================================
    // WebKitJavascriptResult
    //=========================================================================
    pub fn webkit_javascript_result_get_type() -> GType;
    pub fn webkit_javascript_result_get_global_context(js_result: *mut WebKitJavascriptResult) -> java_script_core::JSGlobalContextRef;
    #[cfg(any(feature = "v2_22", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_22")))]
    pub fn webkit_javascript_result_get_js_value(js_result: *mut WebKitJavascriptResult) -> *mut java_script_core::JSCValue;
    pub fn webkit_javascript_result_get_value(js_result: *mut WebKitJavascriptResult) -> java_script_core::JSValueRef;
    pub fn webkit_javascript_result_ref(js_result: *mut WebKitJavascriptResult) -> *mut WebKitJavascriptResult;
    pub fn webkit_javascript_result_unref(js_result: *mut WebKitJavascriptResult);

    //=========================================================================
    // WebKitMimeInfo
    //=========================================================================
    pub fn webkit_mime_info_get_type() -> GType;
    pub fn webkit_mime_info_get_description(info: *mut WebKitMimeInfo) -> *const c_char;
    pub fn webkit_mime_info_get_extensions(info: *mut WebKitMimeInfo) -> *const *const c_char;
    pub fn webkit_mime_info_get_mime_type(info: *mut WebKitMimeInfo) -> *const c_char;
    pub fn webkit_mime_info_ref(info: *mut WebKitMimeInfo) -> *mut WebKitMimeInfo;
    pub fn webkit_mime_info_unref(info: *mut WebKitMimeInfo);

    //=========================================================================
    // WebKitNavigationAction
    //=========================================================================
    pub fn webkit_navigation_action_get_type() -> GType;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_navigation_action_copy(navigation: *mut WebKitNavigationAction) -> *mut WebKitNavigationAction;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_navigation_action_free(navigation: *mut WebKitNavigationAction);
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_navigation_action_get_modifiers(navigation: *mut WebKitNavigationAction) -> c_uint;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_navigation_action_get_mouse_button(navigation: *mut WebKitNavigationAction) -> c_uint;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_navigation_action_get_navigation_type(navigation: *mut WebKitNavigationAction) -> WebKitNavigationType;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_navigation_action_get_request(navigation: *mut WebKitNavigationAction) -> *mut WebKitURIRequest;
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_navigation_action_is_redirect(navigation: *mut WebKitNavigationAction) -> gboolean;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_navigation_action_is_user_gesture(navigation: *mut WebKitNavigationAction) -> gboolean;

    //=========================================================================
    // WebKitNetworkProxySettings
    //=========================================================================
    pub fn webkit_network_proxy_settings_get_type() -> GType;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_network_proxy_settings_new(default_proxy_uri: *const c_char, ignore_hosts: *const *const c_char) -> *mut WebKitNetworkProxySettings;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_network_proxy_settings_add_proxy_for_scheme(proxy_settings: *mut WebKitNetworkProxySettings, scheme: *const c_char, proxy_uri: *const c_char);
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_network_proxy_settings_copy(proxy_settings: *mut WebKitNetworkProxySettings) -> *mut WebKitNetworkProxySettings;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_network_proxy_settings_free(proxy_settings: *mut WebKitNetworkProxySettings);

    //=========================================================================
    // WebKitOptionMenuItem
    //=========================================================================
    pub fn webkit_option_menu_item_get_type() -> GType;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_option_menu_item_copy(item: *mut WebKitOptionMenuItem) -> *mut WebKitOptionMenuItem;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_option_menu_item_free(item: *mut WebKitOptionMenuItem);
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_option_menu_item_get_label(item: *mut WebKitOptionMenuItem) -> *const c_char;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_option_menu_item_get_tooltip(item: *mut WebKitOptionMenuItem) -> *const c_char;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_option_menu_item_is_enabled(item: *mut WebKitOptionMenuItem) -> gboolean;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_option_menu_item_is_group_child(item: *mut WebKitOptionMenuItem) -> gboolean;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_option_menu_item_is_group_label(item: *mut WebKitOptionMenuItem) -> gboolean;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_option_menu_item_is_selected(item: *mut WebKitOptionMenuItem) -> gboolean;

    //=========================================================================
    // WebKitScriptDialog
    //=========================================================================
    pub fn webkit_script_dialog_get_type() -> GType;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_script_dialog_close(dialog: *mut WebKitScriptDialog);
    pub fn webkit_script_dialog_confirm_set_confirmed(dialog: *mut WebKitScriptDialog, confirmed: gboolean);
    pub fn webkit_script_dialog_get_dialog_type(dialog: *mut WebKitScriptDialog) -> WebKitScriptDialogType;
    pub fn webkit_script_dialog_get_message(dialog: *mut WebKitScriptDialog) -> *const c_char;
    pub fn webkit_script_dialog_prompt_get_default_text(dialog: *mut WebKitScriptDialog) -> *const c_char;
    pub fn webkit_script_dialog_prompt_set_text(dialog: *mut WebKitScriptDialog, text: *const c_char);
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_script_dialog_ref(dialog: *mut WebKitScriptDialog) -> *mut WebKitScriptDialog;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_script_dialog_unref(dialog: *mut WebKitScriptDialog);

    //=========================================================================
    // WebKitSecurityOrigin
    //=========================================================================
    pub fn webkit_security_origin_get_type() -> GType;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_security_origin_new(protocol: *const c_char, host: *const c_char, port: u16) -> *mut WebKitSecurityOrigin;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_security_origin_new_for_uri(uri: *const c_char) -> *mut WebKitSecurityOrigin;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_security_origin_get_host(origin: *mut WebKitSecurityOrigin) -> *const c_char;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_security_origin_get_port(origin: *mut WebKitSecurityOrigin) -> u16;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_security_origin_get_protocol(origin: *mut WebKitSecurityOrigin) -> *const c_char;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_security_origin_is_opaque(origin: *mut WebKitSecurityOrigin) -> gboolean;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_security_origin_ref(origin: *mut WebKitSecurityOrigin) -> *mut WebKitSecurityOrigin;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_security_origin_to_string(origin: *mut WebKitSecurityOrigin) -> *mut c_char;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_security_origin_unref(origin: *mut WebKitSecurityOrigin);

    //=========================================================================
    // WebKitUserContentFilter
    //=========================================================================
    pub fn webkit_user_content_filter_get_type() -> GType;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_get_identifier(user_content_filter: *mut WebKitUserContentFilter) -> *const c_char;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_ref(user_content_filter: *mut WebKitUserContentFilter) -> *mut WebKitUserContentFilter;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_unref(user_content_filter: *mut WebKitUserContentFilter);

    //=========================================================================
    // WebKitUserScript
    //=========================================================================
    pub fn webkit_user_script_get_type() -> GType;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_user_script_new(source: *const c_char, injected_frames: WebKitUserContentInjectedFrames, injection_time: WebKitUserScriptInjectionTime, allow_list: *const *const c_char, block_list: *const *const c_char) -> *mut WebKitUserScript;
    #[cfg(any(feature = "v2_22", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_22")))]
    pub fn webkit_user_script_new_for_world(source: *const c_char, injected_frames: WebKitUserContentInjectedFrames, injection_time: WebKitUserScriptInjectionTime, world_name: *const c_char, allow_list: *const *const c_char, block_list: *const *const c_char) -> *mut WebKitUserScript;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_user_script_ref(user_script: *mut WebKitUserScript) -> *mut WebKitUserScript;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_user_script_unref(user_script: *mut WebKitUserScript);

    //=========================================================================
    // WebKitUserStyleSheet
    //=========================================================================
    pub fn webkit_user_style_sheet_get_type() -> GType;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_user_style_sheet_new(source: *const c_char, injected_frames: WebKitUserContentInjectedFrames, level: WebKitUserStyleLevel, allow_list: *const *const c_char, block_list: *const *const c_char) -> *mut WebKitUserStyleSheet;
    #[cfg(any(feature = "v2_22", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_22")))]
    pub fn webkit_user_style_sheet_new_for_world(source: *const c_char, injected_frames: WebKitUserContentInjectedFrames, level: WebKitUserStyleLevel, world_name: *const c_char, allow_list: *const *const c_char, block_list: *const *const c_char) -> *mut WebKitUserStyleSheet;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_user_style_sheet_ref(user_style_sheet: *mut WebKitUserStyleSheet) -> *mut WebKitUserStyleSheet;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_user_style_sheet_unref(user_style_sheet: *mut WebKitUserStyleSheet);

    //=========================================================================
    // WebKitWebViewSessionState
    //=========================================================================
    pub fn webkit_web_view_session_state_get_type() -> GType;
    #[cfg(any(feature = "v2_12", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_12")))]
    pub fn webkit_web_view_session_state_new(data: *mut glib::GBytes) -> *mut WebKitWebViewSessionState;
    #[cfg(any(feature = "v2_12", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_12")))]
    pub fn webkit_web_view_session_state_ref(state: *mut WebKitWebViewSessionState) -> *mut WebKitWebViewSessionState;
    #[cfg(any(feature = "v2_12", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_12")))]
    pub fn webkit_web_view_session_state_serialize(state: *mut WebKitWebViewSessionState) -> *mut glib::GBytes;
    #[cfg(any(feature = "v2_12", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_12")))]
    pub fn webkit_web_view_session_state_unref(state: *mut WebKitWebViewSessionState);

    //=========================================================================
    // WebKitWebsiteData
    //=========================================================================
    pub fn webkit_website_data_get_type() -> GType;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_website_data_get_name(website_data: *mut WebKitWebsiteData) -> *const c_char;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_website_data_get_size(website_data: *mut WebKitWebsiteData, types: WebKitWebsiteDataTypes) -> u64;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_website_data_get_types(website_data: *mut WebKitWebsiteData) -> WebKitWebsiteDataTypes;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_website_data_ref(website_data: *mut WebKitWebsiteData) -> *mut WebKitWebsiteData;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_website_data_unref(website_data: *mut WebKitWebsiteData);

    //=========================================================================
    // WebKitAuthenticationRequest
    //=========================================================================
    pub fn webkit_authentication_request_get_type() -> GType;
    pub fn webkit_authentication_request_authenticate(request: *mut WebKitAuthenticationRequest, credential: *mut WebKitCredential);
    pub fn webkit_authentication_request_can_save_credentials(request: *mut WebKitAuthenticationRequest) -> gboolean;
    pub fn webkit_authentication_request_cancel(request: *mut WebKitAuthenticationRequest);
    pub fn webkit_authentication_request_get_host(request: *mut WebKitAuthenticationRequest) -> *const c_char;
    pub fn webkit_authentication_request_get_port(request: *mut WebKitAuthenticationRequest) -> c_uint;
    pub fn webkit_authentication_request_get_proposed_credential(request: *mut WebKitAuthenticationRequest) -> *mut WebKitCredential;
    pub fn webkit_authentication_request_get_realm(request: *mut WebKitAuthenticationRequest) -> *const c_char;
    pub fn webkit_authentication_request_get_scheme(request: *mut WebKitAuthenticationRequest) -> WebKitAuthenticationScheme;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_authentication_request_get_security_origin(request: *mut WebKitAuthenticationRequest) -> *mut WebKitSecurityOrigin;
    pub fn webkit_authentication_request_is_for_proxy(request: *mut WebKitAuthenticationRequest) -> gboolean;
    pub fn webkit_authentication_request_is_retry(request: *mut WebKitAuthenticationRequest) -> gboolean;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_authentication_request_set_can_save_credentials(request: *mut WebKitAuthenticationRequest, enabled: gboolean);
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_authentication_request_set_proposed_credential(request: *mut WebKitAuthenticationRequest, credential: *mut WebKitCredential);

    //=========================================================================
    // WebKitAutomationSession
    //=========================================================================
    pub fn webkit_automation_session_get_type() -> GType;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_automation_session_get_application_info(session: *mut WebKitAutomationSession) -> *mut WebKitApplicationInfo;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_automation_session_get_id(session: *mut WebKitAutomationSession) -> *const c_char;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_automation_session_set_application_info(session: *mut WebKitAutomationSession, info: *mut WebKitApplicationInfo);

    //=========================================================================
    // WebKitBackForwardList
    //=========================================================================
    pub fn webkit_back_forward_list_get_type() -> GType;
    pub fn webkit_back_forward_list_get_back_item(back_forward_list: *mut WebKitBackForwardList) -> *mut WebKitBackForwardListItem;
    pub fn webkit_back_forward_list_get_back_list(back_forward_list: *mut WebKitBackForwardList) -> *mut glib::GList;
    pub fn webkit_back_forward_list_get_back_list_with_limit(back_forward_list: *mut WebKitBackForwardList, limit: c_uint) -> *mut glib::GList;
    pub fn webkit_back_forward_list_get_current_item(back_forward_list: *mut WebKitBackForwardList) -> *mut WebKitBackForwardListItem;
    pub fn webkit_back_forward_list_get_forward_item(back_forward_list: *mut WebKitBackForwardList) -> *mut WebKitBackForwardListItem;
    pub fn webkit_back_forward_list_get_forward_list(back_forward_list: *mut WebKitBackForwardList) -> *mut glib::GList;
    pub fn webkit_back_forward_list_get_forward_list_with_limit(back_forward_list: *mut WebKitBackForwardList, limit: c_uint) -> *mut glib::GList;
    pub fn webkit_back_forward_list_get_length(back_forward_list: *mut WebKitBackForwardList) -> c_uint;
    pub fn webkit_back_forward_list_get_nth_item(back_forward_list: *mut WebKitBackForwardList, index: c_int) -> *mut WebKitBackForwardListItem;

    //=========================================================================
    // WebKitBackForwardListItem
    //=========================================================================
    pub fn webkit_back_forward_list_item_get_type() -> GType;
    pub fn webkit_back_forward_list_item_get_original_uri(list_item: *mut WebKitBackForwardListItem) -> *const c_char;
    pub fn webkit_back_forward_list_item_get_title(list_item: *mut WebKitBackForwardListItem) -> *const c_char;
    pub fn webkit_back_forward_list_item_get_uri(list_item: *mut WebKitBackForwardListItem) -> *const c_char;

    //=========================================================================
    // WebKitColorChooserRequest
    //=========================================================================
    pub fn webkit_color_chooser_request_get_type() -> GType;
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_color_chooser_request_cancel(request: *mut WebKitColorChooserRequest);
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_color_chooser_request_finish(request: *mut WebKitColorChooserRequest);
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_color_chooser_request_get_element_rectangle(request: *mut WebKitColorChooserRequest, rect: *mut gdk::GdkRectangle);
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_color_chooser_request_get_rgba(request: *mut WebKitColorChooserRequest, rgba: *mut gdk::GdkRGBA);
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_color_chooser_request_set_rgba(request: *mut WebKitColorChooserRequest, rgba: *const gdk::GdkRGBA);

    //=========================================================================
    // WebKitContextMenu
    //=========================================================================
    pub fn webkit_context_menu_get_type() -> GType;
    pub fn webkit_context_menu_new() -> *mut WebKitContextMenu;
    pub fn webkit_context_menu_new_with_items(items: *mut glib::GList) -> *mut WebKitContextMenu;
    pub fn webkit_context_menu_append(menu: *mut WebKitContextMenu, item: *mut WebKitContextMenuItem);
    pub fn webkit_context_menu_first(menu: *mut WebKitContextMenu) -> *mut WebKitContextMenuItem;
    pub fn webkit_context_menu_get_item_at_position(menu: *mut WebKitContextMenu, position: c_uint) -> *mut WebKitContextMenuItem;
    pub fn webkit_context_menu_get_items(menu: *mut WebKitContextMenu) -> *mut glib::GList;
    pub fn webkit_context_menu_get_n_items(menu: *mut WebKitContextMenu) -> c_uint;
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_context_menu_get_user_data(menu: *mut WebKitContextMenu) -> *mut glib::GVariant;
    pub fn webkit_context_menu_insert(menu: *mut WebKitContextMenu, item: *mut WebKitContextMenuItem, position: c_int);
    pub fn webkit_context_menu_last(menu: *mut WebKitContextMenu) -> *mut WebKitContextMenuItem;
    pub fn webkit_context_menu_move_item(menu: *mut WebKitContextMenu, item: *mut WebKitContextMenuItem, position: c_int);
    pub fn webkit_context_menu_prepend(menu: *mut WebKitContextMenu, item: *mut WebKitContextMenuItem);
    pub fn webkit_context_menu_remove(menu: *mut WebKitContextMenu, item: *mut WebKitContextMenuItem);
    pub fn webkit_context_menu_remove_all(menu: *mut WebKitContextMenu);
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_context_menu_set_user_data(menu: *mut WebKitContextMenu, user_data: *mut glib::GVariant);

    //=========================================================================
    // WebKitContextMenuItem
    //=========================================================================
    pub fn webkit_context_menu_item_get_type() -> GType;
    pub fn webkit_context_menu_item_new(action: *mut gtk::GtkAction) -> *mut WebKitContextMenuItem;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_context_menu_item_new_from_gaction(action: *mut gio::GAction, label: *const c_char, target: *mut glib::GVariant) -> *mut WebKitContextMenuItem;
    pub fn webkit_context_menu_item_new_from_stock_action(action: WebKitContextMenuAction) -> *mut WebKitContextMenuItem;
    pub fn webkit_context_menu_item_new_from_stock_action_with_label(action: WebKitContextMenuAction, label: *const c_char) -> *mut WebKitContextMenuItem;
    pub fn webkit_context_menu_item_new_separator() -> *mut WebKitContextMenuItem;
    pub fn webkit_context_menu_item_new_with_submenu(label: *const c_char, submenu: *mut WebKitContextMenu) -> *mut WebKitContextMenuItem;
    pub fn webkit_context_menu_item_get_action(item: *mut WebKitContextMenuItem) -> *mut gtk::GtkAction;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_context_menu_item_get_gaction(item: *mut WebKitContextMenuItem) -> *mut gio::GAction;
    pub fn webkit_context_menu_item_get_stock_action(item: *mut WebKitContextMenuItem) -> WebKitContextMenuAction;
    pub fn webkit_context_menu_item_get_submenu(item: *mut WebKitContextMenuItem) -> *mut WebKitContextMenu;
    pub fn webkit_context_menu_item_is_separator(item: *mut WebKitContextMenuItem) -> gboolean;
    pub fn webkit_context_menu_item_set_submenu(item: *mut WebKitContextMenuItem, submenu: *mut WebKitContextMenu);

    //=========================================================================
    // WebKitCookieManager
    //=========================================================================
    pub fn webkit_cookie_manager_get_type() -> GType;
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_cookie_manager_add_cookie(cookie_manager: *mut WebKitCookieManager, cookie: *mut soup::SoupCookie, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_cookie_manager_add_cookie_finish(cookie_manager: *mut WebKitCookieManager, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> gboolean;
    pub fn webkit_cookie_manager_delete_all_cookies(cookie_manager: *mut WebKitCookieManager);
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_cookie_manager_delete_cookie(cookie_manager: *mut WebKitCookieManager, cookie: *mut soup::SoupCookie, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_cookie_manager_delete_cookie_finish(cookie_manager: *mut WebKitCookieManager, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> gboolean;
    pub fn webkit_cookie_manager_delete_cookies_for_domain(cookie_manager: *mut WebKitCookieManager, domain: *const c_char);
    pub fn webkit_cookie_manager_get_accept_policy(cookie_manager: *mut WebKitCookieManager, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    pub fn webkit_cookie_manager_get_accept_policy_finish(cookie_manager: *mut WebKitCookieManager, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> WebKitCookieAcceptPolicy;
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_cookie_manager_get_cookies(cookie_manager: *mut WebKitCookieManager, uri: *const c_char, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_cookie_manager_get_cookies_finish(cookie_manager: *mut WebKitCookieManager, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut glib::GList;
    pub fn webkit_cookie_manager_get_domains_with_cookies(cookie_manager: *mut WebKitCookieManager, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    pub fn webkit_cookie_manager_get_domains_with_cookies_finish(cookie_manager: *mut WebKitCookieManager, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut *mut c_char;
    pub fn webkit_cookie_manager_set_accept_policy(cookie_manager: *mut WebKitCookieManager, policy: WebKitCookieAcceptPolicy);
    pub fn webkit_cookie_manager_set_persistent_storage(cookie_manager: *mut WebKitCookieManager, filename: *const c_char, storage: WebKitCookiePersistentStorage);

    //=========================================================================
    // WebKitDeviceInfoPermissionRequest
    //=========================================================================
    pub fn webkit_device_info_permission_request_get_type() -> GType;

    //=========================================================================
    // WebKitDownload
    //=========================================================================
    pub fn webkit_download_get_type() -> GType;
    pub fn webkit_download_cancel(download: *mut WebKitDownload);
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_download_get_allow_overwrite(download: *mut WebKitDownload) -> gboolean;
    pub fn webkit_download_get_destination(download: *mut WebKitDownload) -> *const c_char;
    pub fn webkit_download_get_elapsed_time(download: *mut WebKitDownload) -> c_double;
    pub fn webkit_download_get_estimated_progress(download: *mut WebKitDownload) -> c_double;
    pub fn webkit_download_get_received_data_length(download: *mut WebKitDownload) -> u64;
    pub fn webkit_download_get_request(download: *mut WebKitDownload) -> *mut WebKitURIRequest;
    pub fn webkit_download_get_response(download: *mut WebKitDownload) -> *mut WebKitURIResponse;
    pub fn webkit_download_get_web_view(download: *mut WebKitDownload) -> *mut WebKitWebView;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_download_set_allow_overwrite(download: *mut WebKitDownload, allowed: gboolean);
    pub fn webkit_download_set_destination(download: *mut WebKitDownload, uri: *const c_char);

    //=========================================================================
    // WebKitEditorState
    //=========================================================================
    pub fn webkit_editor_state_get_type() -> GType;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_editor_state_get_typing_attributes(editor_state: *mut WebKitEditorState) -> c_uint;
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_editor_state_is_copy_available(editor_state: *mut WebKitEditorState) -> gboolean;
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_editor_state_is_cut_available(editor_state: *mut WebKitEditorState) -> gboolean;
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_editor_state_is_paste_available(editor_state: *mut WebKitEditorState) -> gboolean;
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_editor_state_is_redo_available(editor_state: *mut WebKitEditorState) -> gboolean;
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_editor_state_is_undo_available(editor_state: *mut WebKitEditorState) -> gboolean;

    //=========================================================================
    // WebKitFaviconDatabase
    //=========================================================================
    pub fn webkit_favicon_database_get_type() -> GType;
    pub fn webkit_favicon_database_clear(database: *mut WebKitFaviconDatabase);
    pub fn webkit_favicon_database_get_favicon(database: *mut WebKitFaviconDatabase, page_uri: *const c_char, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    pub fn webkit_favicon_database_get_favicon_finish(database: *mut WebKitFaviconDatabase, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut cairo::cairo_surface_t;
    pub fn webkit_favicon_database_get_favicon_uri(database: *mut WebKitFaviconDatabase, page_uri: *const c_char) -> *mut c_char;

    //=========================================================================
    // WebKitFileChooserRequest
    //=========================================================================
    pub fn webkit_file_chooser_request_get_type() -> GType;
    pub fn webkit_file_chooser_request_cancel(request: *mut WebKitFileChooserRequest);
    pub fn webkit_file_chooser_request_get_mime_types(request: *mut WebKitFileChooserRequest) -> *const *const c_char;
    pub fn webkit_file_chooser_request_get_mime_types_filter(request: *mut WebKitFileChooserRequest) -> *mut gtk::GtkFileFilter;
    pub fn webkit_file_chooser_request_get_select_multiple(request: *mut WebKitFileChooserRequest) -> gboolean;
    pub fn webkit_file_chooser_request_get_selected_files(request: *mut WebKitFileChooserRequest) -> *const *const c_char;
    pub fn webkit_file_chooser_request_select_files(request: *mut WebKitFileChooserRequest, files: *const *const c_char);

    //=========================================================================
    // WebKitFindController
    //=========================================================================
    pub fn webkit_find_controller_get_type() -> GType;
    pub fn webkit_find_controller_count_matches(find_controller: *mut WebKitFindController, search_text: *const c_char, find_options: u32, max_match_count: c_uint);
    pub fn webkit_find_controller_get_max_match_count(find_controller: *mut WebKitFindController) -> c_uint;
    pub fn webkit_find_controller_get_options(find_controller: *mut WebKitFindController) -> u32;
    pub fn webkit_find_controller_get_search_text(find_controller: *mut WebKitFindController) -> *const c_char;
    pub fn webkit_find_controller_get_web_view(find_controller: *mut WebKitFindController) -> *mut WebKitWebView;
    pub fn webkit_find_controller_search(find_controller: *mut WebKitFindController, search_text: *const c_char, find_options: u32, max_match_count: c_uint);
    pub fn webkit_find_controller_search_finish(find_controller: *mut WebKitFindController);
    pub fn webkit_find_controller_search_next(find_controller: *mut WebKitFindController);
    pub fn webkit_find_controller_search_previous(find_controller: *mut WebKitFindController);

    //=========================================================================
    // WebKitFormSubmissionRequest
    //=========================================================================
    pub fn webkit_form_submission_request_get_type() -> GType;
    pub fn webkit_form_submission_request_get_text_fields(request: *mut WebKitFormSubmissionRequest) -> *mut glib::GHashTable;
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_form_submission_request_list_text_fields(request: *mut WebKitFormSubmissionRequest, field_names: *mut *mut glib::GPtrArray, field_values: *mut *mut glib::GPtrArray) -> gboolean;
    pub fn webkit_form_submission_request_submit(request: *mut WebKitFormSubmissionRequest);

    //=========================================================================
    // WebKitGeolocationManager
    //=========================================================================
    pub fn webkit_geolocation_manager_get_type() -> GType;
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_geolocation_manager_failed(manager: *mut WebKitGeolocationManager, error_message: *const c_char);
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_geolocation_manager_get_enable_high_accuracy(manager: *mut WebKitGeolocationManager) -> gboolean;
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_geolocation_manager_update_position(manager: *mut WebKitGeolocationManager, position: *mut WebKitGeolocationPosition);

    //=========================================================================
    // WebKitGeolocationPermissionRequest
    //=========================================================================
    pub fn webkit_geolocation_permission_request_get_type() -> GType;

    //=========================================================================
    // WebKitHitTestResult
    //=========================================================================
    pub fn webkit_hit_test_result_get_type() -> GType;
    pub fn webkit_hit_test_result_context_is_editable(hit_test_result: *mut WebKitHitTestResult) -> gboolean;
    pub fn webkit_hit_test_result_context_is_image(hit_test_result: *mut WebKitHitTestResult) -> gboolean;
    pub fn webkit_hit_test_result_context_is_link(hit_test_result: *mut WebKitHitTestResult) -> gboolean;
    pub fn webkit_hit_test_result_context_is_media(hit_test_result: *mut WebKitHitTestResult) -> gboolean;
    pub fn webkit_hit_test_result_context_is_scrollbar(hit_test_result: *mut WebKitHitTestResult) -> gboolean;
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_hit_test_result_context_is_selection(hit_test_result: *mut WebKitHitTestResult) -> gboolean;
    pub fn webkit_hit_test_result_get_context(hit_test_result: *mut WebKitHitTestResult) -> c_uint;
    pub fn webkit_hit_test_result_get_image_uri(hit_test_result: *mut WebKitHitTestResult) -> *const c_char;
    pub fn webkit_hit_test_result_get_link_label(hit_test_result: *mut WebKitHitTestResult) -> *const c_char;
    pub fn webkit_hit_test_result_get_link_title(hit_test_result: *mut WebKitHitTestResult) -> *const c_char;
    pub fn webkit_hit_test_result_get_link_uri(hit_test_result: *mut WebKitHitTestResult) -> *const c_char;
    pub fn webkit_hit_test_result_get_media_uri(hit_test_result: *mut WebKitHitTestResult) -> *const c_char;

    //=========================================================================
    // WebKitInputMethodContext
    //=========================================================================
    pub fn webkit_input_method_context_get_type() -> GType;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_context_filter_key_event(context: *mut WebKitInputMethodContext, key_event: *mut gdk::GdkEventKey) -> gboolean;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_context_get_input_hints(context: *mut WebKitInputMethodContext) -> WebKitInputHints;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_context_get_input_purpose(context: *mut WebKitInputMethodContext) -> WebKitInputPurpose;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_context_get_preedit(context: *mut WebKitInputMethodContext, text: *mut *mut c_char, underlines: *mut *mut glib::GList, cursor_offset: *mut c_uint);
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_context_notify_cursor_area(context: *mut WebKitInputMethodContext, x: c_int, y: c_int, width: c_int, height: c_int);
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_context_notify_focus_in(context: *mut WebKitInputMethodContext);
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_context_notify_focus_out(context: *mut WebKitInputMethodContext);
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_context_notify_surrounding(context: *mut WebKitInputMethodContext, text: *const c_char, length: c_int, cursor_index: c_uint, selection_index: c_uint);
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_context_reset(context: *mut WebKitInputMethodContext);
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_context_set_enable_preedit(context: *mut WebKitInputMethodContext, enabled: gboolean);
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_context_set_input_hints(context: *mut WebKitInputMethodContext, hints: WebKitInputHints);
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_input_method_context_set_input_purpose(context: *mut WebKitInputMethodContext, purpose: WebKitInputPurpose);

    //=========================================================================
    // WebKitInstallMissingMediaPluginsPermissionRequest
    //=========================================================================
    pub fn webkit_install_missing_media_plugins_permission_request_get_type() -> GType;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_install_missing_media_plugins_permission_request_get_description(request: *mut WebKitInstallMissingMediaPluginsPermissionRequest) -> *const c_char;

    //=========================================================================
    // WebKitNavigationPolicyDecision
    //=========================================================================
    pub fn webkit_navigation_policy_decision_get_type() -> GType;
    pub fn webkit_navigation_policy_decision_get_frame_name(decision: *mut WebKitNavigationPolicyDecision) -> *const c_char;
    pub fn webkit_navigation_policy_decision_get_modifiers(decision: *mut WebKitNavigationPolicyDecision) -> c_uint;
    pub fn webkit_navigation_policy_decision_get_mouse_button(decision: *mut WebKitNavigationPolicyDecision) -> c_uint;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_navigation_policy_decision_get_navigation_action(decision: *mut WebKitNavigationPolicyDecision) -> *mut WebKitNavigationAction;
    pub fn webkit_navigation_policy_decision_get_navigation_type(decision: *mut WebKitNavigationPolicyDecision) -> WebKitNavigationType;
    pub fn webkit_navigation_policy_decision_get_request(decision: *mut WebKitNavigationPolicyDecision) -> *mut WebKitURIRequest;

    //=========================================================================
    // WebKitNotification
    //=========================================================================
    pub fn webkit_notification_get_type() -> GType;
    #[cfg(any(feature = "v2_12", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_12")))]
    pub fn webkit_notification_clicked(notification: *mut WebKitNotification);
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_notification_close(notification: *mut WebKitNotification);
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_notification_get_body(notification: *mut WebKitNotification) -> *const c_char;
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_notification_get_id(notification: *mut WebKitNotification) -> u64;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_notification_get_tag(notification: *mut WebKitNotification) -> *const c_char;
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_notification_get_title(notification: *mut WebKitNotification) -> *const c_char;

    //=========================================================================
    // WebKitNotificationPermissionRequest
    //=========================================================================
    pub fn webkit_notification_permission_request_get_type() -> GType;

    //=========================================================================
    // WebKitOptionMenu
    //=========================================================================
    pub fn webkit_option_menu_get_type() -> GType;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_option_menu_activate_item(menu: *mut WebKitOptionMenu, index: c_uint);
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_option_menu_close(menu: *mut WebKitOptionMenu);
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_option_menu_get_item(menu: *mut WebKitOptionMenu, index: c_uint) -> *mut WebKitOptionMenuItem;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_option_menu_get_n_items(menu: *mut WebKitOptionMenu) -> c_uint;
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_option_menu_select_item(menu: *mut WebKitOptionMenu, index: c_uint);

    //=========================================================================
    // WebKitPlugin
    //=========================================================================
    pub fn webkit_plugin_get_type() -> GType;
    pub fn webkit_plugin_get_description(plugin: *mut WebKitPlugin) -> *const c_char;
    pub fn webkit_plugin_get_mime_info_list(plugin: *mut WebKitPlugin) -> *mut glib::GList;
    pub fn webkit_plugin_get_name(plugin: *mut WebKitPlugin) -> *const c_char;
    pub fn webkit_plugin_get_path(plugin: *mut WebKitPlugin) -> *const c_char;

    //=========================================================================
    // WebKitPointerLockPermissionRequest
    //=========================================================================
    pub fn webkit_pointer_lock_permission_request_get_type() -> GType;

    //=========================================================================
    // WebKitPolicyDecision
    //=========================================================================
    pub fn webkit_policy_decision_get_type() -> GType;
    pub fn webkit_policy_decision_download(decision: *mut WebKitPolicyDecision);
    pub fn webkit_policy_decision_ignore(decision: *mut WebKitPolicyDecision);
    pub fn webkit_policy_decision_use(decision: *mut WebKitPolicyDecision);
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_policy_decision_use_with_policies(decision: *mut WebKitPolicyDecision, policies: *mut WebKitWebsitePolicies);

    //=========================================================================
    // WebKitPrintCustomWidget
    //=========================================================================
    pub fn webkit_print_custom_widget_get_type() -> GType;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_print_custom_widget_new(widget: *mut gtk::GtkWidget, title: *const c_char) -> *mut WebKitPrintCustomWidget;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_print_custom_widget_get_title(print_custom_widget: *mut WebKitPrintCustomWidget) -> *const c_char;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_print_custom_widget_get_widget(print_custom_widget: *mut WebKitPrintCustomWidget) -> *mut gtk::GtkWidget;

    //=========================================================================
    // WebKitPrintOperation
    //=========================================================================
    pub fn webkit_print_operation_get_type() -> GType;
    pub fn webkit_print_operation_new(web_view: *mut WebKitWebView) -> *mut WebKitPrintOperation;
    pub fn webkit_print_operation_get_page_setup(print_operation: *mut WebKitPrintOperation) -> *mut gtk::GtkPageSetup;
    pub fn webkit_print_operation_get_print_settings(print_operation: *mut WebKitPrintOperation) -> *mut gtk::GtkPrintSettings;
    pub fn webkit_print_operation_print(print_operation: *mut WebKitPrintOperation);
    pub fn webkit_print_operation_run_dialog(print_operation: *mut WebKitPrintOperation, parent: *mut gtk::GtkWindow) -> WebKitPrintOperationResponse;
    pub fn webkit_print_operation_set_page_setup(print_operation: *mut WebKitPrintOperation, page_setup: *mut gtk::GtkPageSetup);
    pub fn webkit_print_operation_set_print_settings(print_operation: *mut WebKitPrintOperation, print_settings: *mut gtk::GtkPrintSettings);

    //=========================================================================
    // WebKitResponsePolicyDecision
    //=========================================================================
    pub fn webkit_response_policy_decision_get_type() -> GType;
    pub fn webkit_response_policy_decision_get_request(decision: *mut WebKitResponsePolicyDecision) -> *mut WebKitURIRequest;
    pub fn webkit_response_policy_decision_get_response(decision: *mut WebKitResponsePolicyDecision) -> *mut WebKitURIResponse;
    pub fn webkit_response_policy_decision_is_mime_type_supported(decision: *mut WebKitResponsePolicyDecision) -> gboolean;

    //=========================================================================
    // WebKitSecurityManager
    //=========================================================================
    pub fn webkit_security_manager_get_type() -> GType;
    pub fn webkit_security_manager_register_uri_scheme_as_cors_enabled(security_manager: *mut WebKitSecurityManager, scheme: *const c_char);
    pub fn webkit_security_manager_register_uri_scheme_as_display_isolated(security_manager: *mut WebKitSecurityManager, scheme: *const c_char);
    pub fn webkit_security_manager_register_uri_scheme_as_empty_document(security_manager: *mut WebKitSecurityManager, scheme: *const c_char);
    pub fn webkit_security_manager_register_uri_scheme_as_local(security_manager: *mut WebKitSecurityManager, scheme: *const c_char);
    pub fn webkit_security_manager_register_uri_scheme_as_no_access(security_manager: *mut WebKitSecurityManager, scheme: *const c_char);
    pub fn webkit_security_manager_register_uri_scheme_as_secure(security_manager: *mut WebKitSecurityManager, scheme: *const c_char);
    pub fn webkit_security_manager_uri_scheme_is_cors_enabled(security_manager: *mut WebKitSecurityManager, scheme: *const c_char) -> gboolean;
    pub fn webkit_security_manager_uri_scheme_is_display_isolated(security_manager: *mut WebKitSecurityManager, scheme: *const c_char) -> gboolean;
    pub fn webkit_security_manager_uri_scheme_is_empty_document(security_manager: *mut WebKitSecurityManager, scheme: *const c_char) -> gboolean;
    pub fn webkit_security_manager_uri_scheme_is_local(security_manager: *mut WebKitSecurityManager, scheme: *const c_char) -> gboolean;
    pub fn webkit_security_manager_uri_scheme_is_no_access(security_manager: *mut WebKitSecurityManager, scheme: *const c_char) -> gboolean;
    pub fn webkit_security_manager_uri_scheme_is_secure(security_manager: *mut WebKitSecurityManager, scheme: *const c_char) -> gboolean;

    //=========================================================================
    // WebKitSettings
    //=========================================================================
    pub fn webkit_settings_get_type() -> GType;
    pub fn webkit_settings_new() -> *mut WebKitSettings;
    pub fn webkit_settings_new_with_settings(first_setting_name: *const c_char, ...) -> *mut WebKitSettings;
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_settings_font_size_to_pixels(points: u32) -> u32;
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_settings_font_size_to_points(pixels: u32) -> u32;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_settings_get_allow_file_access_from_file_urls(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_allow_modal_dialogs(settings: *mut WebKitSettings) -> gboolean;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_settings_get_allow_top_navigation_to_data_urls(settings: *mut WebKitSettings) -> gboolean;
    #[cfg(any(feature = "v2_14", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_14")))]
    pub fn webkit_settings_get_allow_universal_access_from_file_urls(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_auto_load_images(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_cursive_font_family(settings: *mut WebKitSettings) -> *const c_char;
    pub fn webkit_settings_get_default_charset(settings: *mut WebKitSettings) -> *const c_char;
    pub fn webkit_settings_get_default_font_family(settings: *mut WebKitSettings) -> *const c_char;
    pub fn webkit_settings_get_default_font_size(settings: *mut WebKitSettings) -> u32;
    pub fn webkit_settings_get_default_monospace_font_size(settings: *mut WebKitSettings) -> u32;
    pub fn webkit_settings_get_draw_compositing_indicators(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_accelerated_2d_canvas(settings: *mut WebKitSettings) -> gboolean;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_settings_get_enable_back_forward_navigation_gestures(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_caret_browsing(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_developer_extras(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_dns_prefetching(settings: *mut WebKitSettings) -> gboolean;
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_settings_get_enable_encrypted_media(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_frame_flattening(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_fullscreen(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_html5_database(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_html5_local_storage(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_hyperlink_auditing(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_java(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_javascript(settings: *mut WebKitSettings) -> gboolean;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_settings_get_enable_javascript_markup(settings: *mut WebKitSettings) -> gboolean;
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_settings_get_enable_media(settings: *mut WebKitSettings) -> gboolean;
    #[cfg(any(feature = "v2_22", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_22")))]
    pub fn webkit_settings_get_enable_media_capabilities(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_media_stream(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_mediasource(settings: *mut WebKitSettings) -> gboolean;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_settings_get_enable_mock_capture_devices(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_offline_web_application_cache(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_page_cache(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_plugins(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_private_browsing(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_resizable_text_areas(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_site_specific_quirks(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_smooth_scrolling(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_spatial_navigation(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_tabs_to_links(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_webaudio(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_webgl(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_write_console_messages_to_stdout(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_enable_xss_auditor(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_fantasy_font_family(settings: *mut WebKitSettings) -> *const c_char;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_settings_get_hardware_acceleration_policy(settings: *mut WebKitSettings) -> WebKitHardwareAccelerationPolicy;
    pub fn webkit_settings_get_javascript_can_access_clipboard(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_javascript_can_open_windows_automatically(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_load_icons_ignoring_image_load_setting(settings: *mut WebKitSettings) -> gboolean;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_settings_get_media_content_types_requiring_hardware_support(settings: *mut WebKitSettings) -> *const c_char;
    pub fn webkit_settings_get_media_playback_allows_inline(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_media_playback_requires_user_gesture(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_minimum_font_size(settings: *mut WebKitSettings) -> u32;
    pub fn webkit_settings_get_monospace_font_family(settings: *mut WebKitSettings) -> *const c_char;
    pub fn webkit_settings_get_pictograph_font_family(settings: *mut WebKitSettings) -> *const c_char;
    pub fn webkit_settings_get_print_backgrounds(settings: *mut WebKitSettings) -> gboolean;
    pub fn webkit_settings_get_sans_serif_font_family(settings: *mut WebKitSettings) -> *const c_char;
    pub fn webkit_settings_get_serif_font_family(settings: *mut WebKitSettings) -> *const c_char;
    pub fn webkit_settings_get_user_agent(settings: *mut WebKitSettings) -> *const c_char;
    pub fn webkit_settings_get_zoom_text_only(settings: *mut WebKitSettings) -> gboolean;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_settings_set_allow_file_access_from_file_urls(settings: *mut WebKitSettings, allowed: gboolean);
    pub fn webkit_settings_set_allow_modal_dialogs(settings: *mut WebKitSettings, allowed: gboolean);
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_settings_set_allow_top_navigation_to_data_urls(settings: *mut WebKitSettings, allowed: gboolean);
    #[cfg(any(feature = "v2_14", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_14")))]
    pub fn webkit_settings_set_allow_universal_access_from_file_urls(settings: *mut WebKitSettings, allowed: gboolean);
    pub fn webkit_settings_set_auto_load_images(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_cursive_font_family(settings: *mut WebKitSettings, cursive_font_family: *const c_char);
    pub fn webkit_settings_set_default_charset(settings: *mut WebKitSettings, default_charset: *const c_char);
    pub fn webkit_settings_set_default_font_family(settings: *mut WebKitSettings, default_font_family: *const c_char);
    pub fn webkit_settings_set_default_font_size(settings: *mut WebKitSettings, font_size: u32);
    pub fn webkit_settings_set_default_monospace_font_size(settings: *mut WebKitSettings, font_size: u32);
    pub fn webkit_settings_set_draw_compositing_indicators(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_accelerated_2d_canvas(settings: *mut WebKitSettings, enabled: gboolean);
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_settings_set_enable_back_forward_navigation_gestures(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_caret_browsing(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_developer_extras(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_dns_prefetching(settings: *mut WebKitSettings, enabled: gboolean);
    #[cfg(any(feature = "v2_20", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_20")))]
    pub fn webkit_settings_set_enable_encrypted_media(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_frame_flattening(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_fullscreen(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_html5_database(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_html5_local_storage(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_hyperlink_auditing(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_java(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_javascript(settings: *mut WebKitSettings, enabled: gboolean);
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_settings_set_enable_javascript_markup(settings: *mut WebKitSettings, enabled: gboolean);
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_settings_set_enable_media(settings: *mut WebKitSettings, enabled: gboolean);
    #[cfg(any(feature = "v2_22", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_22")))]
    pub fn webkit_settings_set_enable_media_capabilities(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_media_stream(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_mediasource(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_mock_capture_devices(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_offline_web_application_cache(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_page_cache(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_plugins(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_private_browsing(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_resizable_text_areas(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_site_specific_quirks(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_smooth_scrolling(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_spatial_navigation(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_tabs_to_links(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_webaudio(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_webgl(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_write_console_messages_to_stdout(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_enable_xss_auditor(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_fantasy_font_family(settings: *mut WebKitSettings, fantasy_font_family: *const c_char);
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_settings_set_hardware_acceleration_policy(settings: *mut WebKitSettings, policy: WebKitHardwareAccelerationPolicy);
    pub fn webkit_settings_set_javascript_can_access_clipboard(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_javascript_can_open_windows_automatically(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_load_icons_ignoring_image_load_setting(settings: *mut WebKitSettings, enabled: gboolean);
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_settings_set_media_content_types_requiring_hardware_support(settings: *mut WebKitSettings, content_types: *const c_char);
    pub fn webkit_settings_set_media_playback_allows_inline(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_media_playback_requires_user_gesture(settings: *mut WebKitSettings, enabled: gboolean);
    pub fn webkit_settings_set_minimum_font_size(settings: *mut WebKitSettings, font_size: u32);
    pub fn webkit_settings_set_monospace_font_family(settings: *mut WebKitSettings, monospace_font_family: *const c_char);
    pub fn webkit_settings_set_pictograph_font_family(settings: *mut WebKitSettings, pictograph_font_family: *const c_char);
    pub fn webkit_settings_set_print_backgrounds(settings: *mut WebKitSettings, print_backgrounds: gboolean);
    pub fn webkit_settings_set_sans_serif_font_family(settings: *mut WebKitSettings, sans_serif_font_family: *const c_char);
    pub fn webkit_settings_set_serif_font_family(settings: *mut WebKitSettings, serif_font_family: *const c_char);
    pub fn webkit_settings_set_user_agent(settings: *mut WebKitSettings, user_agent: *const c_char);
    pub fn webkit_settings_set_user_agent_with_application_details(settings: *mut WebKitSettings, application_name: *const c_char, application_version: *const c_char);
    pub fn webkit_settings_set_zoom_text_only(settings: *mut WebKitSettings, zoom_text_only: gboolean);

    //=========================================================================
    // WebKitURIRequest
    //=========================================================================
    pub fn webkit_uri_request_get_type() -> GType;
    pub fn webkit_uri_request_new(uri: *const c_char) -> *mut WebKitURIRequest;
    pub fn webkit_uri_request_get_http_headers(request: *mut WebKitURIRequest) -> *mut soup::SoupMessageHeaders;
    #[cfg(any(feature = "v2_12", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_12")))]
    pub fn webkit_uri_request_get_http_method(request: *mut WebKitURIRequest) -> *const c_char;
    pub fn webkit_uri_request_get_uri(request: *mut WebKitURIRequest) -> *const c_char;
    pub fn webkit_uri_request_set_uri(request: *mut WebKitURIRequest, uri: *const c_char);

    //=========================================================================
    // WebKitURIResponse
    //=========================================================================
    pub fn webkit_uri_response_get_type() -> GType;
    pub fn webkit_uri_response_get_content_length(response: *mut WebKitURIResponse) -> u64;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_uri_response_get_http_headers(response: *mut WebKitURIResponse) -> *mut soup::SoupMessageHeaders;
    pub fn webkit_uri_response_get_mime_type(response: *mut WebKitURIResponse) -> *const c_char;
    pub fn webkit_uri_response_get_status_code(response: *mut WebKitURIResponse) -> c_uint;
    pub fn webkit_uri_response_get_suggested_filename(response: *mut WebKitURIResponse) -> *const c_char;
    pub fn webkit_uri_response_get_uri(response: *mut WebKitURIResponse) -> *const c_char;

    //=========================================================================
    // WebKitURISchemeRequest
    //=========================================================================
    pub fn webkit_uri_scheme_request_get_type() -> GType;
    pub fn webkit_uri_scheme_request_finish(request: *mut WebKitURISchemeRequest, stream: *mut gio::GInputStream, stream_length: i64, content_type: *const c_char);
    pub fn webkit_uri_scheme_request_finish_error(request: *mut WebKitURISchemeRequest, error: *mut glib::GError);
    pub fn webkit_uri_scheme_request_get_path(request: *mut WebKitURISchemeRequest) -> *const c_char;
    pub fn webkit_uri_scheme_request_get_scheme(request: *mut WebKitURISchemeRequest) -> *const c_char;
    pub fn webkit_uri_scheme_request_get_uri(request: *mut WebKitURISchemeRequest) -> *const c_char;
    pub fn webkit_uri_scheme_request_get_web_view(request: *mut WebKitURISchemeRequest) -> *mut WebKitWebView;

    //=========================================================================
    // WebKitUserContentFilterStore
    //=========================================================================
    pub fn webkit_user_content_filter_store_get_type() -> GType;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_store_new(storage_path: *const c_char) -> *mut WebKitUserContentFilterStore;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_store_fetch_identifiers(store: *mut WebKitUserContentFilterStore, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_store_fetch_identifiers_finish(store: *mut WebKitUserContentFilterStore, result: *mut gio::GAsyncResult) -> *mut *mut c_char;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_store_get_path(store: *mut WebKitUserContentFilterStore) -> *const c_char;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_store_load(store: *mut WebKitUserContentFilterStore, identifier: *const c_char, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_store_load_finish(store: *mut WebKitUserContentFilterStore, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut WebKitUserContentFilter;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_store_remove(store: *mut WebKitUserContentFilterStore, identifier: *const c_char, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_store_remove_finish(store: *mut WebKitUserContentFilterStore, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> gboolean;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_store_save(store: *mut WebKitUserContentFilterStore, identifier: *const c_char, source: *mut glib::GBytes, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_store_save_finish(store: *mut WebKitUserContentFilterStore, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut WebKitUserContentFilter;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_store_save_from_file(store: *mut WebKitUserContentFilterStore, identifier: *const c_char, file: *mut gio::GFile, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_filter_store_save_from_file_finish(store: *mut WebKitUserContentFilterStore, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut WebKitUserContentFilter;

    //=========================================================================
    // WebKitUserContentManager
    //=========================================================================
    pub fn webkit_user_content_manager_get_type() -> GType;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_user_content_manager_new() -> *mut WebKitUserContentManager;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_manager_add_filter(manager: *mut WebKitUserContentManager, filter: *mut WebKitUserContentFilter);
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_user_content_manager_add_script(manager: *mut WebKitUserContentManager, script: *mut WebKitUserScript);
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_user_content_manager_add_style_sheet(manager: *mut WebKitUserContentManager, stylesheet: *mut WebKitUserStyleSheet);
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_user_content_manager_register_script_message_handler(manager: *mut WebKitUserContentManager, name: *const c_char) -> gboolean;
    #[cfg(any(feature = "v2_22", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_22")))]
    pub fn webkit_user_content_manager_register_script_message_handler_in_world(manager: *mut WebKitUserContentManager, name: *const c_char, world_name: *const c_char) -> gboolean;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_user_content_manager_remove_all_filters(manager: *mut WebKitUserContentManager);
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_user_content_manager_remove_all_scripts(manager: *mut WebKitUserContentManager);
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_user_content_manager_remove_all_style_sheets(manager: *mut WebKitUserContentManager);
    pub fn webkit_user_content_manager_remove_filter(manager: *mut WebKitUserContentManager, filter: *mut WebKitUserContentFilter);
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_user_content_manager_remove_filter_by_id(manager: *mut WebKitUserContentManager, filter_id: *const c_char);
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_user_content_manager_unregister_script_message_handler(manager: *mut WebKitUserContentManager, name: *const c_char);
    #[cfg(any(feature = "v2_22", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_22")))]
    pub fn webkit_user_content_manager_unregister_script_message_handler_in_world(manager: *mut WebKitUserContentManager, name: *const c_char, world_name: *const c_char);

    //=========================================================================
    // WebKitUserMediaPermissionRequest
    //=========================================================================
    pub fn webkit_user_media_permission_request_get_type() -> GType;

    //=========================================================================
    // WebKitUserMessage
    //=========================================================================
    pub fn webkit_user_message_get_type() -> GType;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_user_message_new(name: *const c_char, parameters: *mut glib::GVariant) -> *mut WebKitUserMessage;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_user_message_new_with_fd_list(name: *const c_char, parameters: *mut glib::GVariant, fd_list: *mut gio::GUnixFDList) -> *mut WebKitUserMessage;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_user_message_get_fd_list(message: *mut WebKitUserMessage) -> *mut gio::GUnixFDList;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_user_message_get_name(message: *mut WebKitUserMessage) -> *const c_char;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_user_message_get_parameters(message: *mut WebKitUserMessage) -> *mut glib::GVariant;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_user_message_send_reply(message: *mut WebKitUserMessage, reply: *mut WebKitUserMessage);

    //=========================================================================
    // WebKitWebContext
    //=========================================================================
    pub fn webkit_web_context_get_type() -> GType;
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_web_context_new() -> *mut WebKitWebContext;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_web_context_new_ephemeral() -> *mut WebKitWebContext;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_web_context_new_with_website_data_manager(manager: *mut WebKitWebsiteDataManager) -> *mut WebKitWebContext;
    pub fn webkit_web_context_get_default() -> *mut WebKitWebContext;
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_web_context_add_path_to_sandbox(context: *mut WebKitWebContext, path: *const c_char, read_only: gboolean);
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_web_context_allow_tls_certificate_for_host(context: *mut WebKitWebContext, certificate: *mut gio::GTlsCertificate, host: *const c_char);
    pub fn webkit_web_context_clear_cache(context: *mut WebKitWebContext);
    pub fn webkit_web_context_download_uri(context: *mut WebKitWebContext, uri: *const c_char) -> *mut WebKitDownload;
    pub fn webkit_web_context_get_cache_model(context: *mut WebKitWebContext) -> WebKitCacheModel;
    pub fn webkit_web_context_get_cookie_manager(context: *mut WebKitWebContext) -> *mut WebKitCookieManager;
    pub fn webkit_web_context_get_favicon_database(context: *mut WebKitWebContext) -> *mut WebKitFaviconDatabase;
    pub fn webkit_web_context_get_favicon_database_directory(context: *mut WebKitWebContext) -> *const c_char;
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_web_context_get_geolocation_manager(context: *mut WebKitWebContext) -> *mut WebKitGeolocationManager;
    pub fn webkit_web_context_get_plugins(context: *mut WebKitWebContext, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    pub fn webkit_web_context_get_plugins_finish(context: *mut WebKitWebContext, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut glib::GList;
    pub fn webkit_web_context_get_process_model(context: *mut WebKitWebContext) -> WebKitProcessModel;
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_web_context_get_sandbox_enabled(context: *mut WebKitWebContext) -> gboolean;
    pub fn webkit_web_context_get_security_manager(context: *mut WebKitWebContext) -> *mut WebKitSecurityManager;
    pub fn webkit_web_context_get_spell_checking_enabled(context: *mut WebKitWebContext) -> gboolean;
    pub fn webkit_web_context_get_spell_checking_languages(context: *mut WebKitWebContext) -> *const *const c_char;
    pub fn webkit_web_context_get_tls_errors_policy(context: *mut WebKitWebContext) -> WebKitTLSErrorsPolicy;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_web_context_get_use_system_appearance_for_scrollbars(context: *mut WebKitWebContext) -> gboolean;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_web_context_get_web_process_count_limit(context: *mut WebKitWebContext) -> c_uint;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_web_context_get_website_data_manager(context: *mut WebKitWebContext) -> *mut WebKitWebsiteDataManager;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_web_context_initialize_notification_permissions(context: *mut WebKitWebContext, allowed_origins: *mut glib::GList, disallowed_origins: *mut glib::GList);
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_web_context_is_automation_allowed(context: *mut WebKitWebContext) -> gboolean;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_web_context_is_ephemeral(context: *mut WebKitWebContext) -> gboolean;
    pub fn webkit_web_context_prefetch_dns(context: *mut WebKitWebContext, hostname: *const c_char);
    pub fn webkit_web_context_register_uri_scheme(context: *mut WebKitWebContext, scheme: *const c_char, callback: WebKitURISchemeRequestCallback, user_data: gpointer, user_data_destroy_func: glib::GDestroyNotify);
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_web_context_send_message_to_all_extensions(context: *mut WebKitWebContext, message: *mut WebKitUserMessage);
    pub fn webkit_web_context_set_additional_plugins_directory(context: *mut WebKitWebContext, directory: *const c_char);
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_web_context_set_automation_allowed(context: *mut WebKitWebContext, allowed: gboolean);
    pub fn webkit_web_context_set_cache_model(context: *mut WebKitWebContext, cache_model: WebKitCacheModel);
    pub fn webkit_web_context_set_disk_cache_directory(context: *mut WebKitWebContext, directory: *const c_char);
    pub fn webkit_web_context_set_favicon_database_directory(context: *mut WebKitWebContext, path: *const c_char);
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_web_context_set_network_proxy_settings(context: *mut WebKitWebContext, proxy_mode: WebKitNetworkProxyMode, proxy_settings: *mut WebKitNetworkProxySettings);
    pub fn webkit_web_context_set_preferred_languages(context: *mut WebKitWebContext, languages: *const *const c_char);
    pub fn webkit_web_context_set_process_model(context: *mut WebKitWebContext, process_model: WebKitProcessModel);
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_web_context_set_sandbox_enabled(context: *mut WebKitWebContext, enabled: gboolean);
    pub fn webkit_web_context_set_spell_checking_enabled(context: *mut WebKitWebContext, enabled: gboolean);
    pub fn webkit_web_context_set_spell_checking_languages(context: *mut WebKitWebContext, languages: *const *const c_char);
    pub fn webkit_web_context_set_tls_errors_policy(context: *mut WebKitWebContext, policy: WebKitTLSErrorsPolicy);
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_web_context_set_use_system_appearance_for_scrollbars(context: *mut WebKitWebContext, enabled: gboolean);
    pub fn webkit_web_context_set_web_extensions_directory(context: *mut WebKitWebContext, directory: *const c_char);
    pub fn webkit_web_context_set_web_extensions_initialization_user_data(context: *mut WebKitWebContext, user_data: *mut glib::GVariant);
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_web_context_set_web_process_count_limit(context: *mut WebKitWebContext, limit: c_uint);

    //=========================================================================
    // WebKitWebInspector
    //=========================================================================
    pub fn webkit_web_inspector_get_type() -> GType;
    pub fn webkit_web_inspector_attach(inspector: *mut WebKitWebInspector);
    pub fn webkit_web_inspector_close(inspector: *mut WebKitWebInspector);
    pub fn webkit_web_inspector_detach(inspector: *mut WebKitWebInspector);
    pub fn webkit_web_inspector_get_attached_height(inspector: *mut WebKitWebInspector) -> c_uint;
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_web_inspector_get_can_attach(inspector: *mut WebKitWebInspector) -> gboolean;
    pub fn webkit_web_inspector_get_inspected_uri(inspector: *mut WebKitWebInspector) -> *const c_char;
    pub fn webkit_web_inspector_get_web_view(inspector: *mut WebKitWebInspector) -> *mut WebKitWebViewBase;
    pub fn webkit_web_inspector_is_attached(inspector: *mut WebKitWebInspector) -> gboolean;
    pub fn webkit_web_inspector_show(inspector: *mut WebKitWebInspector);

    //=========================================================================
    // WebKitWebResource
    //=========================================================================
    pub fn webkit_web_resource_get_type() -> GType;
    pub fn webkit_web_resource_get_data(resource: *mut WebKitWebResource, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    pub fn webkit_web_resource_get_data_finish(resource: *mut WebKitWebResource, result: *mut gio::GAsyncResult, length: *mut size_t, error: *mut *mut glib::GError) -> *mut u8;
    pub fn webkit_web_resource_get_response(resource: *mut WebKitWebResource) -> *mut WebKitURIResponse;
    pub fn webkit_web_resource_get_uri(resource: *mut WebKitWebResource) -> *const c_char;

    //=========================================================================
    // WebKitWebView
    //=========================================================================
    pub fn webkit_web_view_get_type() -> GType;
    pub fn webkit_web_view_new() -> *mut gtk::GtkWidget;
    pub fn webkit_web_view_new_with_context(context: *mut WebKitWebContext) -> *mut gtk::GtkWidget;
    pub fn webkit_web_view_new_with_related_view(web_view: *mut WebKitWebView) -> *mut gtk::GtkWidget;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_web_view_new_with_settings(settings: *mut WebKitSettings) -> *mut gtk::GtkWidget;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_web_view_new_with_user_content_manager(user_content_manager: *mut WebKitUserContentManager) -> *mut gtk::GtkWidget;
    pub fn webkit_web_view_can_execute_editing_command(web_view: *mut WebKitWebView, command: *const c_char, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    pub fn webkit_web_view_can_execute_editing_command_finish(web_view: *mut WebKitWebView, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> gboolean;
    pub fn webkit_web_view_can_go_back(web_view: *mut WebKitWebView) -> gboolean;
    pub fn webkit_web_view_can_go_forward(web_view: *mut WebKitWebView) -> gboolean;
    pub fn webkit_web_view_can_show_mime_type(web_view: *mut WebKitWebView, mime_type: *const c_char) -> gboolean;
    pub fn webkit_web_view_download_uri(web_view: *mut WebKitWebView, uri: *const c_char) -> *mut WebKitDownload;
    pub fn webkit_web_view_execute_editing_command(web_view: *mut WebKitWebView, command: *const c_char);
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_web_view_execute_editing_command_with_argument(web_view: *mut WebKitWebView, command: *const c_char, argument: *const c_char);
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_web_view_get_automation_presentation_type(web_view: *mut WebKitWebView) -> WebKitAutomationBrowsingContextPresentation;
    pub fn webkit_web_view_get_back_forward_list(web_view: *mut WebKitWebView) -> *mut WebKitBackForwardList;
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_web_view_get_background_color(web_view: *mut WebKitWebView, rgba: *mut gdk::GdkRGBA);
    pub fn webkit_web_view_get_context(web_view: *mut WebKitWebView) -> *mut WebKitWebContext;
    pub fn webkit_web_view_get_custom_charset(web_view: *mut WebKitWebView) -> *const c_char;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_web_view_get_editor_state(web_view: *mut WebKitWebView) -> *mut WebKitEditorState;
    pub fn webkit_web_view_get_estimated_load_progress(web_view: *mut WebKitWebView) -> c_double;
    pub fn webkit_web_view_get_favicon(web_view: *mut WebKitWebView) -> *mut cairo::cairo_surface_t;
    pub fn webkit_web_view_get_find_controller(web_view: *mut WebKitWebView) -> *mut WebKitFindController;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_web_view_get_input_method_context(web_view: *mut WebKitWebView) -> *mut WebKitInputMethodContext;
    pub fn webkit_web_view_get_inspector(web_view: *mut WebKitWebView) -> *mut WebKitWebInspector;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_web_view_get_is_muted(web_view: *mut WebKitWebView) -> gboolean;
    pub fn webkit_web_view_get_javascript_global_context(web_view: *mut WebKitWebView) -> java_script_core::JSGlobalContextRef;
    pub fn webkit_web_view_get_main_resource(web_view: *mut WebKitWebView) -> *mut WebKitWebResource;
    pub fn webkit_web_view_get_page_id(web_view: *mut WebKitWebView) -> u64;
    #[cfg(any(feature = "v2_12", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_12")))]
    pub fn webkit_web_view_get_session_state(web_view: *mut WebKitWebView) -> *mut WebKitWebViewSessionState;
    pub fn webkit_web_view_get_settings(web_view: *mut WebKitWebView) -> *mut WebKitSettings;
    pub fn webkit_web_view_get_snapshot(web_view: *mut WebKitWebView, region: WebKitSnapshotRegion, options: WebKitSnapshotOptions, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    pub fn webkit_web_view_get_snapshot_finish(web_view: *mut WebKitWebView, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut cairo::cairo_surface_t;
    pub fn webkit_web_view_get_title(web_view: *mut WebKitWebView) -> *const c_char;
    pub fn webkit_web_view_get_tls_info(web_view: *mut WebKitWebView, certificate: *mut *mut gio::GTlsCertificate, errors: *mut gio::GTlsCertificateFlags) -> gboolean;
    pub fn webkit_web_view_get_uri(web_view: *mut WebKitWebView) -> *const c_char;
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_web_view_get_user_content_manager(web_view: *mut WebKitWebView) -> *mut WebKitUserContentManager;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_web_view_get_website_data_manager(web_view: *mut WebKitWebView) -> *mut WebKitWebsiteDataManager;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_web_view_get_website_policies(web_view: *mut WebKitWebView) -> *mut WebKitWebsitePolicies;
    pub fn webkit_web_view_get_window_properties(web_view: *mut WebKitWebView) -> *mut WebKitWindowProperties;
    pub fn webkit_web_view_get_zoom_level(web_view: *mut WebKitWebView) -> c_double;
    pub fn webkit_web_view_go_back(web_view: *mut WebKitWebView);
    pub fn webkit_web_view_go_forward(web_view: *mut WebKitWebView);
    pub fn webkit_web_view_go_to_back_forward_list_item(web_view: *mut WebKitWebView, list_item: *mut WebKitBackForwardListItem);
    #[cfg(any(feature = "v2_18", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_18")))]
    pub fn webkit_web_view_is_controlled_by_automation(web_view: *mut WebKitWebView) -> gboolean;
    pub fn webkit_web_view_is_editable(web_view: *mut WebKitWebView) -> gboolean;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_web_view_is_ephemeral(web_view: *mut WebKitWebView) -> gboolean;
    pub fn webkit_web_view_is_loading(web_view: *mut WebKitWebView) -> gboolean;
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_web_view_is_playing_audio(web_view: *mut WebKitWebView) -> gboolean;
    pub fn webkit_web_view_load_alternate_html(web_view: *mut WebKitWebView, content: *const c_char, content_uri: *const c_char, base_uri: *const c_char);
    #[cfg(any(feature = "v2_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_6")))]
    pub fn webkit_web_view_load_bytes(web_view: *mut WebKitWebView, bytes: *mut glib::GBytes, mime_type: *const c_char, encoding: *const c_char, base_uri: *const c_char);
    pub fn webkit_web_view_load_html(web_view: *mut WebKitWebView, content: *const c_char, base_uri: *const c_char);
    pub fn webkit_web_view_load_plain_text(web_view: *mut WebKitWebView, plain_text: *const c_char);
    pub fn webkit_web_view_load_request(web_view: *mut WebKitWebView, request: *mut WebKitURIRequest);
    pub fn webkit_web_view_load_uri(web_view: *mut WebKitWebView, uri: *const c_char);
    pub fn webkit_web_view_reload(web_view: *mut WebKitWebView);
    pub fn webkit_web_view_reload_bypass_cache(web_view: *mut WebKitWebView);
    #[cfg(any(feature = "v2_12", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_12")))]
    pub fn webkit_web_view_restore_session_state(web_view: *mut WebKitWebView, state: *mut WebKitWebViewSessionState);
    pub fn webkit_web_view_run_javascript(web_view: *mut WebKitWebView, script: *const c_char, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    pub fn webkit_web_view_run_javascript_finish(web_view: *mut WebKitWebView, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut WebKitJavascriptResult;
    pub fn webkit_web_view_run_javascript_from_gresource(web_view: *mut WebKitWebView, resource: *const c_char, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    pub fn webkit_web_view_run_javascript_from_gresource_finish(web_view: *mut WebKitWebView, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut WebKitJavascriptResult;
    #[cfg(any(feature = "v2_22", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_22")))]
    pub fn webkit_web_view_run_javascript_in_world(web_view: *mut WebKitWebView, script: *const c_char, world_name: *const c_char, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    #[cfg(any(feature = "v2_22", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_22")))]
    pub fn webkit_web_view_run_javascript_in_world_finish(web_view: *mut WebKitWebView, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut WebKitJavascriptResult;
    pub fn webkit_web_view_save(web_view: *mut WebKitWebView, save_mode: WebKitSaveMode, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    pub fn webkit_web_view_save_finish(web_view: *mut WebKitWebView, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut gio::GInputStream;
    pub fn webkit_web_view_save_to_file(web_view: *mut WebKitWebView, file: *mut gio::GFile, save_mode: WebKitSaveMode, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    pub fn webkit_web_view_save_to_file_finish(web_view: *mut WebKitWebView, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> gboolean;
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_web_view_send_message_to_page(web_view: *mut WebKitWebView, message: *mut WebKitUserMessage, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_web_view_send_message_to_page_finish(web_view: *mut WebKitWebView, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut WebKitUserMessage;
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_web_view_set_background_color(web_view: *mut WebKitWebView, rgba: *const gdk::GdkRGBA);
    pub fn webkit_web_view_set_custom_charset(web_view: *mut WebKitWebView, charset: *const c_char);
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_web_view_set_editable(web_view: *mut WebKitWebView, editable: gboolean);
    #[cfg(any(feature = "v2_28", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_28")))]
    pub fn webkit_web_view_set_input_method_context(web_view: *mut WebKitWebView, context: *mut WebKitInputMethodContext);
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_web_view_set_is_muted(web_view: *mut WebKitWebView, muted: gboolean);
    pub fn webkit_web_view_set_settings(web_view: *mut WebKitWebView, settings: *mut WebKitSettings);
    pub fn webkit_web_view_set_zoom_level(web_view: *mut WebKitWebView, zoom_level: c_double);
    pub fn webkit_web_view_stop_loading(web_view: *mut WebKitWebView);
    #[cfg(any(feature = "v2_12", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_12")))]
    pub fn webkit_web_view_try_close(web_view: *mut WebKitWebView);

    //=========================================================================
    // WebKitWebViewBase
    //=========================================================================
    pub fn webkit_web_view_base_get_type() -> GType;

    //=========================================================================
    // WebKitWebsiteDataAccessPermissionRequest
    //=========================================================================
    pub fn webkit_website_data_access_permission_request_get_type() -> GType;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_website_data_access_permission_request_get_current_domain(request: *mut WebKitWebsiteDataAccessPermissionRequest) -> *const c_char;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_website_data_access_permission_request_get_requesting_domain(request: *mut WebKitWebsiteDataAccessPermissionRequest) -> *const c_char;

    //=========================================================================
    // WebKitWebsiteDataManager
    //=========================================================================
    pub fn webkit_website_data_manager_get_type() -> GType;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_website_data_manager_new(first_option_name: *const c_char, ...) -> *mut WebKitWebsiteDataManager;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_website_data_manager_new_ephemeral() -> *mut WebKitWebsiteDataManager;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_website_data_manager_clear(manager: *mut WebKitWebsiteDataManager, types: WebKitWebsiteDataTypes, timespan: glib::GTimeSpan, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_website_data_manager_clear_finish(manager: *mut WebKitWebsiteDataManager, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> gboolean;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_website_data_manager_fetch(manager: *mut WebKitWebsiteDataManager, types: WebKitWebsiteDataTypes, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_website_data_manager_fetch_finish(manager: *mut WebKitWebsiteDataManager, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut glib::GList;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_website_data_manager_get_base_cache_directory(manager: *mut WebKitWebsiteDataManager) -> *const c_char;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_website_data_manager_get_base_data_directory(manager: *mut WebKitWebsiteDataManager) -> *const c_char;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_website_data_manager_get_cookie_manager(manager: *mut WebKitWebsiteDataManager) -> *mut WebKitCookieManager;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_website_data_manager_get_disk_cache_directory(manager: *mut WebKitWebsiteDataManager) -> *const c_char;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_website_data_manager_get_dom_cache_directory(manager: *mut WebKitWebsiteDataManager) -> *const c_char;
    #[cfg(any(feature = "v2_26", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_26")))]
    pub fn webkit_website_data_manager_get_hsts_cache_directory(manager: *mut WebKitWebsiteDataManager) -> *const c_char;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_website_data_manager_get_indexeddb_directory(manager: *mut WebKitWebsiteDataManager) -> *const c_char;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_website_data_manager_get_itp_directory(manager: *mut WebKitWebsiteDataManager) -> *const c_char;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_website_data_manager_get_itp_enabled(manager: *mut WebKitWebsiteDataManager) -> gboolean;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_website_data_manager_get_itp_summary(manager: *mut WebKitWebsiteDataManager, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_website_data_manager_get_itp_summary_finish(manager: *mut WebKitWebsiteDataManager, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> *mut glib::GList;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_website_data_manager_get_local_storage_directory(manager: *mut WebKitWebsiteDataManager) -> *const c_char;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_website_data_manager_get_offline_application_cache_directory(manager: *mut WebKitWebsiteDataManager) -> *const c_char;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_website_data_manager_get_persistent_credential_storage_enabled(manager: *mut WebKitWebsiteDataManager) -> gboolean;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_website_data_manager_get_service_worker_registrations_directory(manager: *mut WebKitWebsiteDataManager) -> *const c_char;
    #[cfg(any(feature = "v2_10", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_10")))]
    pub fn webkit_website_data_manager_get_websql_directory(manager: *mut WebKitWebsiteDataManager) -> *const c_char;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_website_data_manager_is_ephemeral(manager: *mut WebKitWebsiteDataManager) -> gboolean;
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_website_data_manager_remove(manager: *mut WebKitWebsiteDataManager, types: WebKitWebsiteDataTypes, website_data: *mut glib::GList, cancellable: *mut gio::GCancellable, callback: gio::GAsyncReadyCallback, user_data: gpointer);
    #[cfg(any(feature = "v2_16", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_16")))]
    pub fn webkit_website_data_manager_remove_finish(manager: *mut WebKitWebsiteDataManager, result: *mut gio::GAsyncResult, error: *mut *mut glib::GError) -> gboolean;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_website_data_manager_set_itp_enabled(manager: *mut WebKitWebsiteDataManager, enabled: gboolean);
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_website_data_manager_set_persistent_credential_storage_enabled(manager: *mut WebKitWebsiteDataManager, enabled: gboolean);

    //=========================================================================
    // WebKitWebsitePolicies
    //=========================================================================
    pub fn webkit_website_policies_get_type() -> GType;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_website_policies_new() -> *mut WebKitWebsitePolicies;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_website_policies_new_with_policies(first_policy_name: *const c_char, ...) -> *mut WebKitWebsitePolicies;
    #[cfg(any(feature = "v2_30", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_30")))]
    pub fn webkit_website_policies_get_autoplay_policy(policies: *mut WebKitWebsitePolicies) -> WebKitAutoplayPolicy;

    //=========================================================================
    // WebKitWindowProperties
    //=========================================================================
    pub fn webkit_window_properties_get_type() -> GType;
    pub fn webkit_window_properties_get_fullscreen(window_properties: *mut WebKitWindowProperties) -> gboolean;
    pub fn webkit_window_properties_get_geometry(window_properties: *mut WebKitWindowProperties, geometry: *mut gdk::GdkRectangle);
    pub fn webkit_window_properties_get_locationbar_visible(window_properties: *mut WebKitWindowProperties) -> gboolean;
    pub fn webkit_window_properties_get_menubar_visible(window_properties: *mut WebKitWindowProperties) -> gboolean;
    pub fn webkit_window_properties_get_resizable(window_properties: *mut WebKitWindowProperties) -> gboolean;
    pub fn webkit_window_properties_get_scrollbars_visible(window_properties: *mut WebKitWindowProperties) -> gboolean;
    pub fn webkit_window_properties_get_statusbar_visible(window_properties: *mut WebKitWindowProperties) -> gboolean;
    pub fn webkit_window_properties_get_toolbar_visible(window_properties: *mut WebKitWindowProperties) -> gboolean;

    //=========================================================================
    // WebKitPermissionRequest
    //=========================================================================
    pub fn webkit_permission_request_get_type() -> GType;
    pub fn webkit_permission_request_allow(request: *mut WebKitPermissionRequest);
    pub fn webkit_permission_request_deny(request: *mut WebKitPermissionRequest);

    //=========================================================================
    // Other functions
    //=========================================================================
    pub fn webkit_get_major_version() -> c_uint;
    pub fn webkit_get_micro_version() -> c_uint;
    pub fn webkit_get_minor_version() -> c_uint;
    #[cfg(any(feature = "v2_24", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_24")))]
    pub fn webkit_uri_for_display(uri: *const c_char) -> *mut c_char;
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_user_media_permission_is_for_audio_device(request: *mut WebKitUserMediaPermissionRequest) -> gboolean;
    #[cfg(any(feature = "v2_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v2_8")))]
    pub fn webkit_user_media_permission_is_for_video_device(request: *mut WebKitUserMediaPermissionRequest) -> gboolean;

}