#if !defined(__WEBKIT_H_INSIDE__) && !defined(WEBKIT2_COMPILATION)
#error "Only <wpe/webkit.h> can be included directly."
#endif
#ifndef WebKitWebView_h
#define WebKitWebView_h
#include <wpe/WebKitAuthenticationRequest.h>
#include <wpe/WebKitBackForwardList.h>
#include <wpe/WebKitContextMenu.h>
#include <wpe/WebKitDefines.h>
#include <wpe/WebKitEditorState.h>
#include <wpe/WebKitFileChooserRequest.h>
#include <wpe/WebKitFindController.h>
#include <wpe/WebKitFormSubmissionRequest.h>
#include <wpe/WebKitHitTestResult.h>
#include <wpe/WebKitJavascriptResult.h>
#include <wpe/WebKitNavigationAction.h>
#include <wpe/WebKitNotification.h>
#include <wpe/WebKitPermissionRequest.h>
#include <wpe/WebKitPolicyDecision.h>
#include <wpe/WebKitScriptDialog.h>
#include <wpe/WebKitSettings.h>
#include <wpe/WebKitURIRequest.h>
#include <wpe/WebKitUserContentManager.h>
#include <wpe/WebKitWebContext.h>
#include <wpe/WebKitWebResource.h>
#include <wpe/WebKitWebViewBackend.h>
#include <wpe/WebKitWebViewSessionState.h>
#include <wpe/WebKitWindowProperties.h>
G_BEGIN_DECLS
#define WEBKIT_TYPE_WEB_VIEW (webkit_web_view_get_type())
#define WEBKIT_WEB_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_VIEW, WebKitWebView))
#define WEBKIT_IS_WEB_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_VIEW))
#define WEBKIT_WEB_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), WEBKIT_TYPE_WEB_VIEW, WebKitWebViewClass))
#define WEBKIT_IS_WEB_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), WEBKIT_TYPE_WEB_VIEW))
#define WEBKIT_WEB_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), WEBKIT_TYPE_WEB_VIEW, WebKitWebViewClass))
typedef struct _WebKitWebView WebKitWebView;
typedef struct _WebKitWebViewClass WebKitWebViewClass;
typedef struct _WebKitWebViewPrivate WebKitWebViewPrivate;
typedef enum {
WEBKIT_POLICY_DECISION_TYPE_NAVIGATION_ACTION,
WEBKIT_POLICY_DECISION_TYPE_NEW_WINDOW_ACTION,
WEBKIT_POLICY_DECISION_TYPE_RESPONSE,
} WebKitPolicyDecisionType;
typedef enum {
WEBKIT_LOAD_STARTED,
WEBKIT_LOAD_REDIRECTED,
WEBKIT_LOAD_COMMITTED,
WEBKIT_LOAD_FINISHED
} WebKitLoadEvent;
typedef enum {
WEBKIT_SAVE_MODE_MHTML
} WebKitSaveMode;
typedef enum {
WEBKIT_INSECURE_CONTENT_RUN,
WEBKIT_INSECURE_CONTENT_DISPLAYED
} WebKitInsecureContentEvent;
typedef enum {
WEBKIT_WEB_PROCESS_CRASHED,
WEBKIT_WEB_PROCESS_EXCEEDED_MEMORY_LIMIT
} WebKitWebProcessTerminationReason;
typedef void (* WebKitFrameDisplayedCallback) (WebKitWebView *web_view,
gpointer user_data);
struct _WebKitWebView {
GObject parent;
WebKitWebViewPrivate *priv;
};
struct _WebKitWebViewClass {
GObjectClass parent;
void (* load_changed) (WebKitWebView *web_view,
WebKitLoadEvent load_event);
gboolean (* load_failed) (WebKitWebView *web_view,
WebKitLoadEvent load_event,
const gchar *failing_uri,
GError *error);
WebKitWebView *(* create) (WebKitWebView *web_view,
WebKitNavigationAction *navigation_action);
void (* ready_to_show) (WebKitWebView *web_view);
void (* run_as_modal) (WebKitWebView *web_view);
void (* close) (WebKitWebView *web_view);
gboolean (* script_dialog) (WebKitWebView *web_view,
WebKitScriptDialog *dialog);
gboolean (* decide_policy) (WebKitWebView *web_view,
WebKitPolicyDecision *decision,
WebKitPolicyDecisionType type);
gboolean (* permission_request) (WebKitWebView *web_view,
WebKitPermissionRequest *permission_request);
void (* mouse_target_changed) (WebKitWebView *web_view,
WebKitHitTestResult *hit_test_result,
guint modifiers);
void (* resource_load_started) (WebKitWebView *web_view,
WebKitWebResource *resource,
WebKitURIRequest *request);
gboolean (* enter_fullscreen) (WebKitWebView *web_view);
gboolean (* leave_fullscreen) (WebKitWebView *web_view);
gboolean (* run_file_chooser) (WebKitWebView *web_view,
WebKitFileChooserRequest *request);
gboolean (* context_menu) (WebKitWebView *web_view,
WebKitContextMenu *context_menu,
void *event,
WebKitHitTestResult *hit_test_result);
void (* context_menu_dismissed) (WebKitWebView *web_view);
void (* submit_form) (WebKitWebView *web_view,
WebKitFormSubmissionRequest *request);
void (* insecure_content_detected) (WebKitWebView *web_view,
WebKitInsecureContentEvent event);
gboolean (* web_process_crashed) (WebKitWebView *web_view);
gboolean (* authenticate) (WebKitWebView *web_view,
WebKitAuthenticationRequest *request);
gboolean (* load_failed_with_tls_errors) (WebKitWebView *web_view,
const gchar *failing_uri,
GTlsCertificate *certificate,
GTlsCertificateFlags errors);
gboolean (* show_notification) (WebKitWebView *web_view,
WebKitNotification *notification);
void (* web_process_terminated) (WebKitWebView *web_view,
WebKitWebProcessTerminationReason reason);
void (*_webkit_reserved0) (void);
void (*_webkit_reserved1) (void);
void (*_webkit_reserved2) (void);
void (*_webkit_reserved3) (void);
void (*_webkit_reserved4) (void);
void (*_webkit_reserved5) (void);
void (*_webkit_reserved6) (void);
void (*_webkit_reserved7) (void);
};
WEBKIT_API GType
webkit_web_view_get_type (void);
WEBKIT_API WebKitWebView *
webkit_web_view_new (WebKitWebViewBackend *backend);
WEBKIT_API WebKitWebView *
webkit_web_view_new_with_context (WebKitWebViewBackend *backend,
WebKitWebContext *context);
WEBKIT_API WebKitWebView *
webkit_web_view_new_with_settings (WebKitWebViewBackend *backend,
WebKitSettings *settings);
WEBKIT_API WebKitWebView *
webkit_web_view_new_with_related_view (WebKitWebViewBackend *backend,
WebKitWebView *web_view);
WEBKIT_API WebKitWebView *
webkit_web_view_new_with_user_content_manager (WebKitWebViewBackend *backend,
WebKitUserContentManager *user_content_manager);
WEBKIT_API WebKitWebViewBackend *
webkit_web_view_get_backend (WebKitWebView *web_view);
WEBKIT_API gboolean
webkit_web_view_is_ephemeral (WebKitWebView *web_view);
WEBKIT_API gboolean
webkit_web_view_is_controlled_by_automation (WebKitWebView *web_view);
WEBKIT_API WebKitWebsiteDataManager *
webkit_web_view_get_website_data_manager (WebKitWebView *web_view);
WEBKIT_API WebKitWebContext *
webkit_web_view_get_context (WebKitWebView *web_view);
WEBKIT_API void
webkit_web_view_try_close (WebKitWebView *web_view);
WEBKIT_API void
webkit_web_view_load_uri (WebKitWebView *web_view,
const gchar *uri);
WEBKIT_API void
webkit_web_view_load_html (WebKitWebView *web_view,
const gchar *content,
const gchar *base_uri);
WEBKIT_API void
webkit_web_view_load_alternate_html (WebKitWebView *web_view,
const gchar *content,
const gchar *content_uri,
const gchar *base_uri);
WEBKIT_API void
webkit_web_view_load_plain_text (WebKitWebView *web_view,
const gchar *plain_text);
WEBKIT_API void
webkit_web_view_load_bytes (WebKitWebView *web_view,
GBytes *bytes,
const gchar *mime_type,
const gchar *encoding,
const gchar *base_uri);
WEBKIT_API void
webkit_web_view_load_request (WebKitWebView *web_view,
WebKitURIRequest *request);
WEBKIT_API void
webkit_web_view_stop_loading (WebKitWebView *web_view);
WEBKIT_API gboolean
webkit_web_view_is_loading (WebKitWebView *web_view);
WEBKIT_API gboolean
webkit_web_view_is_playing_audio (WebKitWebView *web_view);
WEBKIT_API guint64
webkit_web_view_get_page_id (WebKitWebView *web_view);
WEBKIT_API const gchar *
webkit_web_view_get_title (WebKitWebView *web_view);
WEBKIT_API void
webkit_web_view_reload (WebKitWebView *web_view);
WEBKIT_API void
webkit_web_view_reload_bypass_cache (WebKitWebView *web_view);
WEBKIT_API gdouble
webkit_web_view_get_estimated_load_progress (WebKitWebView *web_view);
WEBKIT_API void
webkit_web_view_go_back (WebKitWebView *web_view);
WEBKIT_API gboolean
webkit_web_view_can_go_back (WebKitWebView *web_view);
WEBKIT_API void
webkit_web_view_go_forward (WebKitWebView *web_view);
WEBKIT_API gboolean
webkit_web_view_can_go_forward (WebKitWebView *web_view);
WEBKIT_API WebKitBackForwardList *
webkit_web_view_get_back_forward_list (WebKitWebView *web_view);
WEBKIT_API void
webkit_web_view_go_to_back_forward_list_item (WebKitWebView *web_view,
WebKitBackForwardListItem *list_item);
WEBKIT_API const gchar *
webkit_web_view_get_uri (WebKitWebView *web_view);
WEBKIT_API const gchar *
webkit_web_view_get_custom_charset (WebKitWebView *web_view);
WEBKIT_API void
webkit_web_view_set_custom_charset (WebKitWebView *web_view,
const gchar *charset);
WEBKIT_API void
webkit_web_view_set_settings (WebKitWebView *web_view,
WebKitSettings *settings);
WEBKIT_API WebKitSettings *
webkit_web_view_get_settings (WebKitWebView *web_view);
WEBKIT_API WebKitWindowProperties *
webkit_web_view_get_window_properties (WebKitWebView *web_view);
WEBKIT_API void
webkit_web_view_set_zoom_level (WebKitWebView *web_view,
gdouble zoom_level);
WEBKIT_API gdouble
webkit_web_view_get_zoom_level (WebKitWebView *web_view);
WEBKIT_API void
webkit_web_view_can_execute_editing_command (WebKitWebView *web_view,
const gchar *command,
GCancellable *cancellable,
GAsyncReadyCallback callback,
gpointer user_data);
WEBKIT_API gboolean
webkit_web_view_can_execute_editing_command_finish (WebKitWebView *web_view,
GAsyncResult *result,
GError **error);
WEBKIT_API void
webkit_web_view_execute_editing_command (WebKitWebView *web_view,
const gchar *command);
WEBKIT_API void
webkit_web_view_execute_editing_command_with_argument(WebKitWebView *web_view,
const char *command,
const char *argument);
WEBKIT_API WebKitFindController *
webkit_web_view_get_find_controller (WebKitWebView *web_view);
WEBKIT_API void
webkit_web_view_run_javascript (WebKitWebView *web_view,
const gchar *script,
GCancellable *cancellable,
GAsyncReadyCallback callback,
gpointer user_data);
WEBKIT_API WebKitJavascriptResult *
webkit_web_view_run_javascript_finish (WebKitWebView *web_view,
GAsyncResult *result,
GError **error);
WEBKIT_API void
webkit_web_view_run_javascript_in_world (WebKitWebView *web_view,
const gchar *script,
const gchar *world_name,
GCancellable *cancellable,
GAsyncReadyCallback callback,
gpointer user_data);
WEBKIT_API WebKitJavascriptResult *
webkit_web_view_run_javascript_in_world_finish (WebKitWebView *web_view,
GAsyncResult *result,
GError **error);
WEBKIT_API void
webkit_web_view_run_javascript_from_gresource (WebKitWebView *web_view,
const gchar *resource,
GCancellable *cancellable,
GAsyncReadyCallback callback,
gpointer user_data);
WEBKIT_API WebKitJavascriptResult *
webkit_web_view_run_javascript_from_gresource_finish (WebKitWebView *web_view,
GAsyncResult *result,
GError **error);
WEBKIT_API WebKitWebResource *
webkit_web_view_get_main_resource (WebKitWebView *web_view);
WEBKIT_API gboolean
webkit_web_view_can_show_mime_type (WebKitWebView *web_view,
const gchar *mime_type);
WEBKIT_API void
webkit_web_view_save (WebKitWebView *web_view,
WebKitSaveMode save_mode,
GCancellable *cancellable,
GAsyncReadyCallback callback,
gpointer user_data);
WEBKIT_API GInputStream *
webkit_web_view_save_finish (WebKitWebView *web_view,
GAsyncResult *result,
GError **error);
WEBKIT_API void
webkit_web_view_save_to_file (WebKitWebView *web_view,
GFile *file,
WebKitSaveMode save_mode,
GCancellable *cancellable,
GAsyncReadyCallback callback,
gpointer user_data);
WEBKIT_API gboolean
webkit_web_view_save_to_file_finish (WebKitWebView *web_view,
GAsyncResult *result,
GError **error);
WEBKIT_API WebKitDownload *
webkit_web_view_download_uri (WebKitWebView *web_view,
const char *uri);
WEBKIT_API gboolean
webkit_web_view_get_tls_info (WebKitWebView *web_view,
GTlsCertificate **certificate,
GTlsCertificateFlags *errors);
WEBKIT_API WebKitUserContentManager *
webkit_web_view_get_user_content_manager (WebKitWebView *web_view);
WEBKIT_API gboolean
webkit_web_view_is_editable (WebKitWebView *web_view);
WEBKIT_API void
webkit_web_view_set_editable (WebKitWebView *web_view,
gboolean editable);
WEBKIT_API WebKitEditorState *
webkit_web_view_get_editor_state (WebKitWebView *web_view);
WEBKIT_API WebKitWebViewSessionState *
webkit_web_view_get_session_state (WebKitWebView *web_view);
WEBKIT_API void
webkit_web_view_restore_session_state (WebKitWebView *web_view,
WebKitWebViewSessionState *state);
WEBKIT_API guint
webkit_web_view_add_frame_displayed_callback (WebKitWebView *web_view,
WebKitFrameDisplayedCallback callback,
gpointer user_data,
GDestroyNotify destroy_notify);
WEBKIT_API void
webkit_web_view_remove_frame_displayed_callback (WebKitWebView *web_view,
guint id);
G_END_DECLS
#endif