WebKit2GTK+ Reference Manual | ||||
---|---|---|---|---|
Top | Description | Object Hierarchy | Signals |
WebKitWebContextWebKitWebContext — Manages aspects common to all WebKitWebViews |
struct WebKitWebContext; enum WebKitCacheModel; enum WebKitTLSErrorsPolicy; WebKitWebContext * webkit_web_context_get_default (void
); WebKitCacheModel webkit_web_context_get_cache_model (WebKitWebContext *context
); void webkit_web_context_set_cache_model (WebKitWebContext *context
,WebKitCacheModel cache_model
); void webkit_web_context_clear_cache (WebKitWebContext *context
); WebKitDownload * webkit_web_context_download_uri (WebKitWebContext *context
,const gchar *uri
); WebKitCookieManager * webkit_web_context_get_cookie_manager (WebKitWebContext *context
); WebKitFaviconDatabase * webkit_web_context_get_favicon_database (WebKitWebContext *context
); void webkit_web_context_set_favicon_database_directory (WebKitWebContext *context
,const gchar *path
); const gchar * webkit_web_context_get_favicon_database_directory (WebKitWebContext *context
); WebKitSecurityManager * webkit_web_context_get_security_manager (WebKitWebContext *context
); void webkit_web_context_set_additional_plugins_directory (WebKitWebContext *context
,const gchar *directory
); void webkit_web_context_get_plugins (WebKitWebContext *context
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
); GList * webkit_web_context_get_plugins_finish (WebKitWebContext *context
,GAsyncResult *result
,GError **error
); gboolean webkit_web_context_get_spell_checking_enabled (WebKitWebContext *context
); void webkit_web_context_set_spell_checking_enabled (WebKitWebContext *context
,gboolean enabled
); const gchar * const * webkit_web_context_get_spell_checking_languages (WebKitWebContext *context
); void webkit_web_context_set_spell_checking_languages (WebKitWebContext *context
,const gchar * const *languages
); void webkit_web_context_set_preferred_languages (WebKitWebContext *context
,const gchar * const *languages
); void webkit_web_context_set_tls_errors_policy (WebKitWebContext *context
,WebKitTLSErrorsPolicy policy
); WebKitTLSErrorsPolicy webkit_web_context_get_tls_errors_policy (WebKitWebContext *context
); void webkit_web_context_set_web_extensions_directory (WebKitWebContext *context
,const gchar *directory
); void webkit_web_context_prefetch_dns (WebKitWebContext *context
,const gchar *hostname
); void webkit_web_context_set_disk_cache_directory (WebKitWebContext *context
,const gchar *directory
); void (*WebKitURISchemeRequestCallback) (WebKitURISchemeRequest *request
,gpointer user_data
); void webkit_web_context_register_uri_scheme (WebKitWebContext *context
,const gchar *scheme
,WebKitURISchemeRequestCallback callback
,gpointer user_data
,GDestroyNotify user_data_destroy_func
);
The WebKitWebContext manages all aspects common to all WebKitWebViews.
You can define the WebKitCacheModel with
webkit_web_context_set_cache_model()
, depending on the needs of
your application. You can access the WebKitCookieManager or the
WebKitSecurityManager to specify the behaviour of your application
regarding cookies and security, using
webkit_web_context_get_cookie_manager()
and
webkit_web_context_get_security_manager()
for that.
It is also possible to change your preferred language or enable
spell checking, using webkit_web_context_set_preferred_languages()
,
webkit_web_context_set_spell_checking_languages()
and
webkit_web_context_set_spell_checking_enabled()
.
You can use webkit_web_context_register_uri_scheme()
to register
custom URI schemes, and manage several other settings.
typedef enum { WEBKIT_CACHE_MODEL_DOCUMENT_VIEWER, WEBKIT_CACHE_MODEL_WEB_BROWSER, WEBKIT_CACHE_MODEL_DOCUMENT_BROWSER } WebKitCacheModel;
Enum values used for determining the WebKitWebContext cache model.
Disable the cache completely, which substantially reduces memory usage. Useful for applications that only access a single local file, with no navigation to other pages. No remote resources will be cached. | |
Improve document load speed substantially by caching a very large number of resources and previously viewed content. | |
A cache model optimized for viewing a series of local files -- for example, a documentation viewer or a website designer. WebKit will cache a moderate number of resources. |
typedef enum { WEBKIT_TLS_ERRORS_POLICY_IGNORE, WEBKIT_TLS_ERRORS_POLICY_FAIL } WebKitTLSErrorsPolicy;
Enum values used to denote the TLS errors policy.
WebKitWebContext * webkit_web_context_get_default (void
);
Gets the default web context
Returns : |
a WebKitWebContext. [transfer none] |
WebKitCacheModel webkit_web_context_get_cache_model (WebKitWebContext *context
);
Returns the current cache model. For more information about this
value check the documentation of the function
webkit_web_context_set_cache_model()
.
|
the WebKitWebContext |
Returns : |
the current WebKitCacheModel |
void webkit_web_context_set_cache_model (WebKitWebContext *context
,WebKitCacheModel cache_model
);
Specifies a usage model for WebViews, which WebKit will use to determine its caching behavior. All web views follow the cache model. This cache model determines the RAM and disk space to use for caching previously viewed content .
Research indicates that users tend to browse within clusters of documents that hold resources in common, and to revisit previously visited documents. WebKit and the frameworks below it include built-in caches that take advantage of these patterns, substantially improving document load speed in browsing situations. The WebKit cache model controls the behaviors of all of these caches, including various WebCore caches.
Browsers can improve document load speed substantially by
specifying WEBKIT_CACHE_MODEL_WEB_BROWSER
. Applications without a
browsing interface can reduce memory usage substantially by
specifying WEBKIT_CACHE_MODEL_DOCUMENT_VIEWER
. The default value is
WEBKIT_CACHE_MODEL_WEB_BROWSER
.
|
the WebKitWebContext |
|
a WebKitCacheModel |
void webkit_web_context_clear_cache (WebKitWebContext *context
);
Clears all resources currently cached.
See also webkit_web_context_set_cache_model()
.
|
a WebKitWebContext |
WebKitDownload * webkit_web_context_download_uri (WebKitWebContext *context
,const gchar *uri
);
Requests downloading of the specified URI string. The download operation
will not be associated to any WebKitWebView, if you are interested in
starting a download from a particular WebKitWebView use
webkit_web_view_download_uri()
instead.
|
a WebKitWebContext |
|
the URI to download |
Returns : |
a new WebKitDownload representing the the download operation. [transfer full] |
WebKitCookieManager * webkit_web_context_get_cookie_manager
(WebKitWebContext *context
);
Get the WebKitCookieManager of context
.
|
a WebKitWebContext |
Returns : |
the WebKitCookieManager of context . [transfer none]
|
WebKitFaviconDatabase * webkit_web_context_get_favicon_database
(WebKitWebContext *context
);
Get the WebKitFaviconDatabase associated with context
.
To initialize the database you need to call
webkit_web_context_set_favicon_database_directory()
.
|
a WebKitWebContext |
Returns : |
the WebKitFaviconDatabase of context . [transfer none]
|
void webkit_web_context_set_favicon_database_directory (WebKitWebContext *context
,const gchar *path
);
Set the directory path to be used to store the favicons database
for context
on disk. Passing NULL
as path
means using the
default directory for the platform (see g_get_user_data_dir()
).
Calling this method also means enabling the favicons database for its use from the applications, so that's why it's expected to be called only once. Further calls for the same instance of WebKitWebContext won't cause any effect.
|
a WebKitWebContext |
|
an absolute path to the icon database
directory or NULL to use the defaults. [allow-none]
|
const gchar * webkit_web_context_get_favicon_database_directory
(WebKitWebContext *context
);
Get the directory path being used to store the favicons database
for context
, or NULL
if
webkit_web_context_set_favicon_database_directory()
hasn't been
called yet.
This function will always return the same path after having called
webkit_web_context_set_favicon_database_directory()
for the first
time.
|
a WebKitWebContext |
Returns : |
the path of the directory of the favicons
database associated with context , or NULL . [transfer none]
|
WebKitSecurityManager * webkit_web_context_get_security_manager
(WebKitWebContext *context
);
Get the WebKitSecurityManager of context
.
|
a WebKitWebContext |
Returns : |
the WebKitSecurityManager of context . [transfer none]
|
void webkit_web_context_set_additional_plugins_directory (WebKitWebContext *context
,const gchar *directory
);
Set an additional directory where WebKit will look for plugins.
|
a WebKitWebContext |
|
the directory to add |
void webkit_web_context_get_plugins (WebKitWebContext *context
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
Asynchronously get the list of installed plugins.
When the operation is finished, callback
will be called. You can then call
webkit_web_context_get_plugins_finish()
to get the result of the operation.
|
a WebKitWebContext |
|
a GCancellable or NULL to ignore. [allow-none]
|
|
a GAsyncReadyCallback to call when the request is satisfied. [scope async] |
|
the data to pass to callback function. [closure] |
GList * webkit_web_context_get_plugins_finish (WebKitWebContext *context
,GAsyncResult *result
,GError **error
);
Finish an asynchronous operation started with webkit_web_context_get_plugins.
|
a WebKitWebContext |
|
a GAsyncResult |
|
return location for error or NULL to ignore |
Returns : |
a GList of WebKitPlugin. You must free the GList with
g_list_free() and unref the WebKitPlugins with g_object_unref() when you're done with them. [element-type WebKitPlugin][transfer full]
|
gboolean webkit_web_context_get_spell_checking_enabled
(WebKitWebContext *context
);
Get whether spell checking feature is currently enabled.
|
a WebKitWebContext |
Returns : |
TRUE If spell checking is enabled, or FALSE otherwise. |
void webkit_web_context_set_spell_checking_enabled (WebKitWebContext *context
,gboolean enabled
);
Enable or disable the spell checking feature.
|
a WebKitWebContext |
|
Value to be set |
const gchar * const * webkit_web_context_get_spell_checking_languages
(WebKitWebContext *context
);
Get the the list of spell checking languages associated with
context
, or NULL
if no languages have been previously set.
See webkit_web_context_set_spell_checking_languages()
for more
details on the format of the languages in the list.
|
a WebKitWebContext |
Returns : |
A NULL -terminated
array of languages if available, or NULL otherwise. [array zero-terminated=1][element-type utf8][transfer none]
|
void webkit_web_context_set_spell_checking_languages (WebKitWebContext *context
,const gchar * const *languages
);
Set the list of spell checking languages to be used for spell checking.
The locale string typically is in the form lang_COUNTRY, where lang is an ISO-639 language code, and COUNTRY is an ISO-3166 country code. For instance, sv_FI for Swedish as written in Finland or pt_BR for Portuguese as written in Brazil.
You need to call this function with a valid list of languages at least once in order to properly enable the spell checking feature in WebKit.
|
a WebKitWebContext |
|
a NULL -terminated list of spell checking languages. [array zero-terminated=1][transfer none]
|
void webkit_web_context_set_preferred_languages (WebKitWebContext *context
,const gchar * const *languages
);
Set the list of preferred languages, sorted from most desirable to least desirable. The list will be used to build the "Accept-Language" header that will be included in the network requests started by the WebKitWebContext.
|
a WebKitWebContext |
|
a NULL -terminated list of language identifiers. [allow-none][array zero-terminated=1][element-type utf8][transfer none]
|
void webkit_web_context_set_tls_errors_policy (WebKitWebContext *context
,WebKitTLSErrorsPolicy policy
);
Set the TLS errors policy of context
as policy
|
a WebKitWebContext |
|
a WebKitTLSErrorsPolicy |
WebKitTLSErrorsPolicy webkit_web_context_get_tls_errors_policy
(WebKitWebContext *context
);
Get the TLS errors policy of context
|
a WebKitWebContext |
Returns : |
a WebKitTLSErrorsPolicy |
void webkit_web_context_set_web_extensions_directory (WebKitWebContext *context
,const gchar *directory
);
Set the directory where WebKit will look for Web Extensions. This method must be called before loading anything in this context, otherwise it will not have any effect.
|
a WebKitWebContext |
|
the directory to add |
void webkit_web_context_prefetch_dns (WebKitWebContext *context
,const gchar *hostname
);
Resolve the domain name of the given hostname
in advance, so that if a URI
of hostname
is requested the load will be performed more quickly.
|
a WebKitWebContext |
|
a hostname to be resolved |
void webkit_web_context_set_disk_cache_directory (WebKitWebContext *context
,const gchar *directory
);
Set the directory where disk cache files will be stored This method must be called before loading anything in this context, otherwise it will not have any effect.
|
a WebKitWebContext |
|
the directory to set |
void (*WebKitURISchemeRequestCallback) (WebKitURISchemeRequest *request
,gpointer user_data
);
Type definition for a function that will be called back when an URI request is made for a user registered URI scheme.
|
the WebKitURISchemeRequest |
|
user data passed to the callback |
void webkit_web_context_register_uri_scheme (WebKitWebContext *context
,const gchar *scheme
,WebKitURISchemeRequestCallback callback
,gpointer user_data
,GDestroyNotify user_data_destroy_func
);
Register scheme
in context
, so that when an URI request with scheme
is made in the
WebKitWebContext, the WebKitURISchemeRequestCallback registered will be called with a
WebKitURISchemeRequest.
It is possible to handle URI scheme requests asynchronously, by calling g_object_ref()
on the
WebKitURISchemeRequest and calling webkit_uri_scheme_request_finish()
later when the data of
the request is available.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
static void about_uri_scheme_request_cb (WebKitURISchemeRequest *request, gpointer user_data) { GInputStream *stream; gsize stream_length; const gchar *path; path = webkit_uri_scheme_request_get_path (request); if (!g_strcmp0 (path, "plugins")) { /* Create a GInputStream with the contents of plugins about page, and set its length to stream_length */ } else if (!g_strcmp0 (path, "memory")) { /* Create a GInputStream with the contents of memory about page, and set its length to stream_length */ } else if (!g_strcmp0 (path, "applications")) { /* Create a GInputStream with the contents of applications about page, and set its length to stream_length */ } else { gchar *contents; contents = g_strdup_printf ("<html><body><p>Invalid about:%s page</p></body></html>", path); stream_length = strlen (contents); stream = g_memory_input_stream_new_from_data (contents, stream_length, g_free); } webkit_uri_scheme_request_finish (request, stream, stream_length, "text/html"); g_object_unref (stream); } |
|
a WebKitWebContext |
|
the network scheme to register |
|
a WebKitURISchemeRequestCallback. [scope async] |
|
data to pass to callback function |
|
destroy notify for user_data
|
"download-started"
signalvoid user_function (WebKitWebContext *context,
WebKitDownload *download,
gpointer user_data) : Run Last
This signal is emitted when a new download request is made.
|
the WebKitWebContext |
|
the WebKitDownload associated with this event |
|
user data set when the signal handler was connected. |