midori/midori/midori-websettings.h
2012-08-23 21:25:44 +02:00

198 lines
5.3 KiB
C

/*
Copyright (C) 2008-2010 Christian Dywan <christian@twotoasts.de>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
See the file COPYING for the full license text.
*/
#ifndef __MIDORI_WEB_SETTINGS_H__
#define __MIDORI_WEB_SETTINGS_H__
#include <webkit/webkit.h>
#include <katze/katze.h>
G_BEGIN_DECLS
#define MIDORI_TYPE_WEB_SETTINGS \
(midori_web_settings_get_type ())
#define MIDORI_WEB_SETTINGS(obj) \
(G_TYPE_CHECK_INSTANCE_CAST ((obj), MIDORI_TYPE_WEB_SETTINGS, MidoriWebSettings))
#define MIDORI_WEB_SETTINGS_CLASS(klass) \
(G_TYPE_CHECK_CLASS_CAST ((klass), MIDORI_TYPE_WEB_SETTINGS, MidoriWebSettingsClass))
#define MIDORI_IS_WEB_SETTINGS(obj) \
(G_TYPE_CHECK_INSTANCE_TYPE ((obj), MIDORI_TYPE_WEB_SETTINGS))
#define MIDORI_IS_WEB_SETTINGS_CLASS(klass) \
(G_TYPE_CHECK_CLASS_TYPE ((klass), MIDORI_TYPE_WEB_SETTINGS))
#define MIDORI_WEB_SETTINGS_GET_CLASS(obj) \
(G_TYPE_INSTANCE_GET_CLASS ((obj), MIDORI_TYPE_WEB_SETTINGS, MidoriWebSettingsClass))
typedef struct _MidoriWebSettings MidoriWebSettings;
typedef struct _MidoriWebSettingsClass MidoriWebSettingsClass;
#define MIDORI_PARAM_DELAY_SAVING (1 << 8)
enum
{
MIDORI_CLEAR_NONE = 0,
MIDORI_CLEAR_HISTORY = 1,
MIDORI_CLEAR_COOKIES = 2, /* deprecated */
MIDORI_CLEAR_FLASH_COOKIES = 4, /* deprecated */
MIDORI_CLEAR_WEBSITE_ICONS = 8, /* deprecated */
MIDORI_CLEAR_TRASH = 16, /* deprecated */
MIDORI_CLEAR_ON_QUIT = 32,
MIDORI_CLEAR_WEB_CACHE = 64, /* deprecated */
MIDORI_CLEAR_SESSION = 128,
};
typedef enum
{
MIDORI_WINDOW_NORMAL,
MIDORI_WINDOW_MINIMIZED,
MIDORI_WINDOW_MAXIMIZED,
MIDORI_WINDOW_FULLSCREEN,
} MidoriWindowState;
GType
midori_window_state_get_type (void) G_GNUC_CONST;
#define MIDORI_TYPE_WINDOW_STATE \
(midori_window_state_get_type ())
/* values >= MIDORI_STARTUP_LAST_OPEN_PAGES mean session is saved */
typedef enum
{
MIDORI_STARTUP_BLANK_PAGE, /* One blank tab or speed dial is opened */
MIDORI_STARTUP_HOMEPAGE, /* One homepage tab is opened */
MIDORI_STARTUP_LAST_OPEN_PAGES, /* The session is loaded and saved */
MIDORI_STARTUP_DELAYED_PAGES /* The session is saved, loading pages is delayed */
} MidoriStartup;
GType
midori_startup_get_type (void) G_GNUC_CONST;
#define MIDORI_TYPE_STARTUP \
(midori_startup_get_type ())
typedef enum
{
MIDORI_ENCODING_CHINESE /* Traditional */,
MIDORI_ENCODING_CHINESE_SIMPLIFIED,
MIDORI_ENCODING_JAPANESE,
MIDORI_ENCODING_KOREAN,
MIDORI_ENCODING_RUSSIAN,
MIDORI_ENCODING_UNICODE,
MIDORI_ENCODING_WESTERN,
MIDORI_ENCODING_CUSTOM
} MidoriPreferredEncoding;
GType
midori_preferred_encoding_get_type (void) G_GNUC_CONST;
#define MIDORI_TYPE_PREFERRED_ENCODING \
(midori_preferred_encoding_get_type ())
typedef enum
{
MIDORI_NEW_PAGE_TAB,
MIDORI_NEW_PAGE_WINDOW,
MIDORI_NEW_PAGE_CURRENT
} MidoriNewPage;
GType
midori_new_page_get_type (void) G_GNUC_CONST;
#define MIDORI_TYPE_NEW_PAGE \
(midori_new_page_get_type ())
typedef enum
{
MIDORI_TOOLBAR_DEFAULT,
MIDORI_TOOLBAR_ICONS,
MIDORI_TOOLBAR_SMALL_ICONS,
MIDORI_TOOLBAR_TEXT,
MIDORI_TOOLBAR_BOTH,
MIDORI_TOOLBAR_BOTH_HORIZ
} MidoriToolbarStyle;
GType
midori_toolbar_style_get_type (void) G_GNUC_CONST;
#define MIDORI_TYPE_TOOLBAR_STYLE \
(midori_toolbar_style_get_type ())
typedef enum
{
MIDORI_PROXY_AUTOMATIC,
MIDORI_PROXY_HTTP,
MIDORI_PROXY_NONE
} MidoriProxy;
GType
midori_proxy_get_type (void) G_GNUC_CONST;
#define MIDORI_TYPE_PROXY \
(midori_proxy_get_type ())
typedef enum
{
MIDORI_IDENT_MIDORI /* Automatic */,
MIDORI_IDENT_GENUINE /* Midori */,
MIDORI_IDENT_CHROME,
MIDORI_IDENT_SAFARI,
MIDORI_IDENT_IPHONE,
MIDORI_IDENT_FIREFOX,
MIDORI_IDENT_EXPLORER,
MIDORI_IDENT_CUSTOM,
} MidoriIdentity;
GType
midori_identity_get_type (void) G_GNUC_CONST;
#define MIDORI_TYPE_IDENTITY \
(midori_identity_get_type ())
GType
midori_web_settings_get_type (void) G_GNUC_CONST;
MidoriWebSettings*
midori_web_settings_new (void);
void
midori_web_settings_add_style (MidoriWebSettings* settings,
const gchar* rule_id,
const gchar* style);
void
midori_web_settings_remove_style (MidoriWebSettings* settings,
const gchar* rule_id);
const gchar*
midori_web_settings_get_system_name (gchar** architecture,
gchar** platform);
gboolean
midori_web_settings_has_plugin_support (void);
typedef enum
{
MIDORI_SITE_DATA_UNDETERMINED,
MIDORI_SITE_DATA_BLOCK,
MIDORI_SITE_DATA_ACCEPT,
MIDORI_SITE_DATA_PRESERVE,
} MidoriSiteDataPolicy;
MidoriSiteDataPolicy
midori_web_settings_get_site_data_policy (MidoriWebSettings* settings,
const gchar* uri);
const gchar*
midori_web_settings_get_accept_language (MidoriWebSettings* settings);
G_END_DECLS
#endif /* __MIDORI_WEB_SETTINGS_H__ */