Fix <rdar://5693599> REGRESSION (r29369): scroll bars are drawing when they shouldn...
[WebKit-https.git] / WebKit / gtk / WebView / webkitsettings.h
1 /*
2  * Copyright (C) 2007 Holger Hans Peter Freyther
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Library General Public
6  * License as published by the Free Software Foundation; either
7  * version 2 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Library General Public License for more details.
13  *
14  * You should have received a copy of the GNU Library General Public License
15  * along with this library; see the file COPYING.LIB.  If not, write to
16  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17  * Boston, MA 02110-1301, USA.
18  */
19
20 #ifndef WEBKIT_SETTINGS_H
21 #define WEBKIT_SETTINGS_H
22
23 #include <glib.h>
24 #include <glib-object.h>
25
26 #include "webkitdefines.h"
27
28 G_BEGIN_DECLS
29
30 typedef enum {
31     WEBKIT_FONT_FAMILY_STANDARD,
32     WEBKIT_FONT_FAMILY_FIXED,
33     WEBKIT_FONT_FAMILY_SERIF,
34     WEBKIT_FONT_FAMILY_SANS_SERIF,
35     WEBKIT_FONT_FAMILY_CURSIVE,
36     WEBKIT_FONT_FAMILY_FANTASY,
37     WEBKIT_FONT_FAMILY_LAST_ENTRY
38 } WebKitFontFamily;
39
40 typedef enum {
41     WEBKIT_EDITABLE_LINK_DEFAULT_BEHAVIOUR,
42     WEBKIT_EDITABLE_LINK_ALWAYS_LIVE,
43     WEBKIT_EDITABLE_LINK_ONLY_WITH_SHIFT_KEY,
44     WEBKIT_EDITABLE_LINK_LIVE_WHEN_NOT_FOCUSED,
45     WEBKIT_EDITABLE_LINK_NEVER_LIVE
46 } WebKitEditableLinkBehaviour;
47
48 typedef struct _WebKitSettings WebKitSettings;
49 typedef struct _WebKitSettingsPrivate WebKitSettingsPrivate;
50
51 struct _WebKitSettings {
52     gchar* font_name[WEBKIT_FONT_FAMILY_LAST_ENTRY];
53     gint   minimum_font_size;
54     gint   minimum_logical_font_size;
55     gint   default_font_size;
56     gint   default_fixed_font_size;
57     gboolean load_images_automatically;
58     gboolean is_java_script_enabled;
59     gboolean java_script_can_open_windows_automatically;
60     gboolean plugins_enabled;
61     gboolean private_browsing;
62     gchar* user_style_sheet_location;
63     gboolean should_print_backgrounds;
64     gboolean text_areas_are_resizable;
65     WebKitEditableLinkBehaviour editable_link_behaviour;
66     gboolean uses_web_view_cache;
67     gboolean shrink_standalone_images_to_fit;
68     gboolean show_uris_in_tool_tips;
69     gchar* ftp_directory_template_path;
70     gboolean force_ftp_directory_listings;
71     gboolean developer_extras_enabled;
72
73
74     WebKitSettingsPrivate *private_data;
75 };
76
77 GType
78 webkit_web_settings_get_type (void);
79
80 WebKitSettings*
81 webkit_web_settings_copy (WebKitSettings* setting);
82
83 void
84 webkit_web_settings_free (WebKitSettings* setting);
85
86 WebKitSettings*
87 webkit_web_settings_get_global (void);
88
89 void
90 webkit_web_settings_set_global (WebKitSettings* setting);
91
92 void
93 webkit_web_settings_set_font_family(WebKitSettings*, WebKitFontFamily family, gchar *family_name);
94
95 const gchar*
96 webkit_web_settings_get_font_family(WebKitSettings*, WebKitFontFamily family);
97
98 void
99 webkit_web_settings_set_user_style_sheet_location(WebKitSettings*, gchar*);
100
101 void
102 webkit_set_ftp_directory_template_path(WebKitSettings*, gchar*);
103
104
105 G_END_DECLS
106
107
108 #endif