35f557e8c395511465a6999112904032d321d02d
[WebKit-https.git] / Source / WebKit / Shared / WebPreferencesDefaultValues.h
1 /*
2  * Copyright (C) 2010-2016 Apple Inc. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  * 1. Redistributions of source code must retain the above copyright
8  *    notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  *    notice, this list of conditions and the following disclaimer in the
11  *    documentation and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
14  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
15  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
17  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
18  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
19  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
20  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
21  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
22  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
23  * THE POSSIBILITY OF SUCH DAMAGE.
24  */
25
26 #pragma once
27
28 #if PLATFORM(GTK)
29 #define DEFAULT_WEBKIT_TABSTOLINKS_ENABLED true
30 #else
31 #define DEFAULT_WEBKIT_TABSTOLINKS_ENABLED false
32 #endif
33
34 #if ENABLE(SMOOTH_SCROLLING)
35 #define DEFAULT_WEBKIT_SCROLL_ANIMATOR_ENABLED true
36 #else
37 #define DEFAULT_WEBKIT_SCROLL_ANIMATOR_ENABLED false
38 #endif
39
40 #if PLATFORM(COCOA) || PLATFORM(GTK)
41 #define DEFAULT_HIDDEN_PAGE_DOM_TIMER_THROTTLING_ENABLED true
42 #define DEFAULT_HIDDEN_PAGE_CSS_ANIMATION_SUSPENSION_ENABLED true
43 #else
44 #define DEFAULT_HIDDEN_PAGE_DOM_TIMER_THROTTLING_ENABLED false
45 #define DEFAULT_HIDDEN_PAGE_CSS_ANIMATION_SUSPENSION_ENABLED false
46 #endif
47
48 #if ENABLE(SERVER_PRECONNECT)
49 #define DEFAULT_LINK_PRECONNECT_ENABLED true
50 #else
51 #define DEFAULT_LINK_PRECONNECT_ENABLED false
52 #endif
53
54 #if PLATFORM(COCOA)
55 #define DEFAULT_PDFPLUGIN_ENABLED true
56 #else
57 #define DEFAULT_PDFPLUGIN_ENABLED false
58 #endif
59
60 #if PLATFORM(IOS)
61 #define DEFAULT_ALLOWS_PICTURE_IN_PICTURE_MEDIA_PLAYBACK true
62 #define DEFAULT_BACKSPACE_KEY_NAVIGATION_ENABLED false
63 #define DEFAULT_FRAME_FLATTENING FrameFlattening::FullyEnabled
64 #define DEFAULT_SHOULD_PRINT_BACKGROUNDS true
65 #define DEFAULT_TEXT_AREAS_ARE_RESIZABLE false
66 #define DEFAULT_JAVASCRIPT_CAN_OPEN_WINDOWS_AUTOMATICALLY false
67 #define DEFAULT_SHOULD_RESPECT_IMAGE_ORIENTATION true
68 #define DEFAULT_PASSWORD_ECHO_ENABLED true
69 #define DEFAULT_ALLOWS_INLINE_MEDIA_PLAYBACK false
70 #define DEFAULT_ALLOWS_INLINE_MEDIA_PLAYBACK_AFTER_FULLSCREEN true
71 #define DEFAULT_INLINE_MEDIA_PLAYBACK_REQUIRES_PLAYS_INLINE_ATTRIBUTE true
72 #define DEFAULT_INVISIBLE_AUTOPLAY_NOT_PERMITTED true
73 #define DEFAULT_MEDIA_DATA_LOADS_AUTOMATICALLY false
74 #define DEFAULT_MEDIA_CONTROLS_SCALE_WITH_PAGE_ZOOM false
75 #define DEFAULT_TEMPORARY_TILE_COHORT_RETENTION_ENABLED false
76 #define DEFAULT_REQUIRES_USER_GESTURE_FOR_AUDIO_PLAYBACK true
77 #define DEFAULT_LEGACY_ENCRYPTED_MEDIA_API_ENABLED false
78 #define DEFAULT_INTERACTIVE_MEDIA_CAPTURE_STREAM_REPROMPT_INTERVAL_IN_MINUTES 1
79 #define DEFAULT_ENABLE_FULLSCREEN_API false
80 #else
81 #define DEFAULT_ALLOWS_PICTURE_IN_PICTURE_MEDIA_PLAYBACK false
82 #define DEFAULT_BACKSPACE_KEY_NAVIGATION_ENABLED true
83 #define DEFAULT_FRAME_FLATTENING FrameFlattening::Disabled
84 #define DEFAULT_SHOULD_PRINT_BACKGROUNDS false
85 #define DEFAULT_TEXT_AREAS_ARE_RESIZABLE true
86 #define DEFAULT_JAVASCRIPT_CAN_OPEN_WINDOWS_AUTOMATICALLY true
87 #define DEFAULT_SHOULD_RESPECT_IMAGE_ORIENTATION false
88 #define DEFAULT_PASSWORD_ECHO_ENABLED false
89 #define DEFAULT_ALLOWS_INLINE_MEDIA_PLAYBACK true
90 #define DEFAULT_ALLOWS_INLINE_MEDIA_PLAYBACK_AFTER_FULLSCREEN false
91 #define DEFAULT_INLINE_MEDIA_PLAYBACK_REQUIRES_PLAYS_INLINE_ATTRIBUTE false
92 #define DEFAULT_INVISIBLE_AUTOPLAY_NOT_PERMITTED false
93 #define DEFAULT_MEDIA_DATA_LOADS_AUTOMATICALLY true
94 #define DEFAULT_MEDIA_CONTROLS_SCALE_WITH_PAGE_ZOOM true
95 #define DEFAULT_TEMPORARY_TILE_COHORT_RETENTION_ENABLED true
96 #define DEFAULT_REQUIRES_USER_GESTURE_FOR_AUDIO_PLAYBACK false
97 #define DEFAULT_LEGACY_ENCRYPTED_MEDIA_API_ENABLED true
98 #define DEFAULT_INTERACTIVE_MEDIA_CAPTURE_STREAM_REPROMPT_INTERVAL_IN_MINUTES 10
99 #define DEFAULT_ENABLE_FULLSCREEN_API true
100 #endif
101
102 #if PLATFORM(COCOA)
103 #define DEFAULT_ALLOW_MEDIA_CONTENT_TYPES_REQUIRING_HARDWARE_SUPPORT_AS_FALLBACK true
104 #else
105 #define DEFAULT_ALLOW_MEDIA_CONTENT_TYPES_REQUIRING_HARDWARE_SUPPORT_AS_FALLBACK false
106 #endif
107
108 #if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
109 #define DEFAULT_SUBPIXEL_ANTIALIASED_LAYER_TEXT_ENABLED true
110 #else
111 #define DEFAULT_SUBPIXEL_ANTIALIASED_LAYER_TEXT_ENABLED false
112 #endif
113
114 #if PLATFORM(IOS_SIMULATOR)
115 #define DEFAULT_ACCELERATED_DRAWING_ENABLED false
116 #define DEFAULT_CANVAS_USES_ACCELERATED_DRAWING false
117 #else
118 #define DEFAULT_ACCELERATED_DRAWING_ENABLED true
119 #define DEFAULT_CANVAS_USES_ACCELERATED_DRAWING true
120 #endif
121
122 #if PLATFORM(COCOA)
123 #define DEFAULT_SHOULD_CAPTURE_AUDIO_IN_UIPROCESS true
124 #else
125 #define DEFAULT_SHOULD_CAPTURE_AUDIO_IN_UIPROCESS false
126 #endif
127
128 #if PLATFORM(COCOA)
129 #define DEFAULT_MODERN_MEDIA_CONTROLS_ENABLED true
130 #else
131 #define DEFAULT_MODERN_MEDIA_CONTROLS_ENABLED false
132 #endif
133
134 #if PLATFORM(COCOA)
135 #define DEFAULT_DATA_TRANSFER_ITEMS_ENABLED true
136 #define DEFAULT_DIRECTORY_UPLOAD_ENABLED true
137 #else
138 #define DEFAULT_DATA_TRANSFER_ITEMS_ENABLED false
139 #define DEFAULT_DIRECTORY_UPLOAD_ENABLED false
140 #endif
141
142 #if PLATFORM(COCOA)
143
144 #define DEFAULT_STANDARD_FONT_FAMILY "Times"
145 #define DEFAULT_FANTASY_FONT_FAMILY "Papyrus"
146 #define DEFAULT_FIXED_FONT_FAMILY "Courier"
147 #define DEFAULT_SANS_SERIF_FONT_FAMILY "Helvetica"
148 #define DEFAULT_SERIF_FONT_FAMILY "Times"
149
150 #if PLATFORM(IOS)
151 #define DEFAULT_CURSIVE_FONT_FAMILY "Snell Roundhand"
152 #define DEFAULT_PICTOGRAPH_FONT_FAMILY "AppleColorEmoji"
153 #else
154 #define DEFAULT_CURSIVE_FONT_FAMILY "Apple Chancery"
155 #define DEFAULT_PICTOGRAPH_FONT_FAMILY "Apple Color Emoji"
156 #endif
157
158 #else
159
160 #define DEFAULT_STANDARD_FONT_FAMILY "Times"
161 #define DEFAULT_CURSIVE_FONT_FAMILY "Comic Sans MS"
162 #define DEFAULT_FANTASY_FONT_FAMILY "Impact"
163 #define DEFAULT_FIXED_FONT_FAMILY "Courier New"
164 #define DEFAULT_SANS_SERIF_FONT_FAMILY "Helvetica"
165 #define DEFAULT_SERIF_FONT_FAMILY "Times"
166 #define DEFAULT_PICTOGRAPH_FONT_FAMILY "Times"
167
168 #endif
169
170 #if !ENABLE(EXTRA_ZOOM_MODE)
171 #define DEFAULT_AVFOUNDATION_ENABLED true
172 #else
173 #define DEFAULT_AVFOUNDATION_ENABLED false
174 #endif
175
176 // Cocoa ports must disable experimental features on release branches for now.
177 #if ENABLE(EXPERIMENTAL_FEATURES) || PLATFORM(COCOA)
178 #define DEFAULT_EXPERIMENTAL_FEATURES_ENABLED true
179 #else
180 #define DEFAULT_EXPERIMENTAL_FEATURES_ENABLED false
181 #endif
182
183 #if ENABLE(EXPERIMENTAL_FEATURES) || PLATFORM(COCOA)
184 #define DEFAULT_SERVICE_WORKERS_ENABLED true
185 #else
186 #define DEFAULT_SERVICE_WORKERS_ENABLED false
187 #endif
188
189 bool defaultPassiveTouchListenersAsDefaultOnDocument();
190 bool defaultCustomPasteboardDataEnabled();