Turning off custom pasteboard data doesn't actually turn it off in WK2
[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_MNEDIA_CAPTURE_STREAM_REPROMPT_INTERVAL_IN_MINUTES 1
79 #else
80 #define DEFAULT_ALLOWS_PICTURE_IN_PICTURE_MEDIA_PLAYBACK false
81 #define DEFAULT_BACKSPACE_KEY_NAVIGATION_ENABLED true
82 #define DEFAULT_FRAME_FLATTENING FrameFlattening::Disabled
83 #define DEFAULT_SHOULD_PRINT_BACKGROUNDS false
84 #define DEFAULT_TEXT_AREAS_ARE_RESIZABLE true
85 #define DEFAULT_JAVASCRIPT_CAN_OPEN_WINDOWS_AUTOMATICALLY true
86 #define DEFAULT_SHOULD_RESPECT_IMAGE_ORIENTATION false
87 #define DEFAULT_PASSWORD_ECHO_ENABLED false
88 #define DEFAULT_ALLOWS_INLINE_MEDIA_PLAYBACK true
89 #define DEFAULT_ALLOWS_INLINE_MEDIA_PLAYBACK_AFTER_FULLSCREEN false
90 #define DEFAULT_INLINE_MEDIA_PLAYBACK_REQUIRES_PLAYS_INLINE_ATTRIBUTE false
91 #define DEFAULT_INVISIBLE_AUTOPLAY_NOT_PERMITTED false
92 #define DEFAULT_MEDIA_DATA_LOADS_AUTOMATICALLY true
93 #define DEFAULT_MEDIA_CONTROLS_SCALE_WITH_PAGE_ZOOM true
94 #define DEFAULT_TEMPORARY_TILE_COHORT_RETENTION_ENABLED true
95 #define DEFAULT_REQUIRES_USER_GESTURE_FOR_AUDIO_PLAYBACK false
96 #define DEFAULT_LEGACY_ENCRYPTED_MEDIA_API_ENABLED true
97 #define DEFAULT_INTERACTIVE_MNEDIA_CAPTURE_STREAM_REPROMPT_INTERVAL_IN_MINUTES 10
98 #endif
99
100 #if PLATFORM(COCOA)
101 #define DEFAULT_ALLOW_MEDIA_CONTENT_TYPES_REQUIRING_HARDWARE_SUPPORT_AS_FALLBACK true
102 #else
103 #define DEFAULT_ALLOW_MEDIA_CONTENT_TYPES_REQUIRING_HARDWARE_SUPPORT_AS_FALLBACK false
104 #endif
105
106 #if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
107 #define DEFAULT_SUBPIXEL_ANTIALIASED_LAYER_TEXT_ENABLED true
108 #else
109 #define DEFAULT_SUBPIXEL_ANTIALIASED_LAYER_TEXT_ENABLED false
110 #endif
111
112 #if PLATFORM(IOS_SIMULATOR)
113 #define DEFAULT_ACCELERATED_DRAWING_ENABLED false
114 #define DEFAULT_CANVAS_USES_ACCELERATED_DRAWING false
115 #else
116 #define DEFAULT_ACCELERATED_DRAWING_ENABLED true
117 #define DEFAULT_CANVAS_USES_ACCELERATED_DRAWING true
118 #endif
119
120 #if PLATFORM(COCOA)
121 #define DEFAULT_SHOULD_CAPTURE_AUDIO_IN_UIPROCESS true
122 #else
123 #define DEFAULT_SHOULD_CAPTURE_AUDIO_IN_UIPROCESS false
124 #endif
125
126 #if PLATFORM(COCOA)
127 #define DEFAULT_MODERN_MEDIA_CONTROLS_ENABLED true
128 #else
129 #define DEFAULT_MODERN_MEDIA_CONTROLS_ENABLED false
130 #endif
131
132 #if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED < 101200
133 // <https://webkit.org/b/168415> El Capitan NetworkLoadTiming values are sometimes jumbled
134 #define DEFAULT_RESOURCE_TIMING_ENABLED false
135 #else
136 #define DEFAULT_RESOURCE_TIMING_ENABLED true
137 #endif
138
139 #if PLATFORM(COCOA)
140 #define DEFAULT_DATA_TRANSFER_ITEMS_ENABLED true
141 #define DEFAULT_DIRECTORY_UPLOAD_ENABLED true
142 #else
143 #define DEFAULT_DATA_TRANSFER_ITEMS_ENABLED false
144 #define DEFAULT_DIRECTORY_UPLOAD_ENABLED false
145 #endif
146
147 #if PLATFORM(COCOA)
148
149 #define DEFAULT_STANDARD_FONT_FAMILY "Times"
150 #define DEFAULT_FANTASY_FONT_FAMILY "Papyrus"
151 #define DEFAULT_FIXED_FONT_FAMILY "Courier"
152 #define DEFAULT_SANS_SERIF_FONT_FAMILY "Helvetica"
153 #define DEFAULT_SERIF_FONT_FAMILY "Times"
154
155 #if PLATFORM(IOS)
156 #define DEFAULT_CURSIVE_FONT_FAMILY "Snell Roundhand"
157 #define DEFAULT_PICTOGRAPH_FONT_FAMILY "AppleColorEmoji"
158 #else
159 #define DEFAULT_CURSIVE_FONT_FAMILY "Apple Chancery"
160 #define DEFAULT_PICTOGRAPH_FONT_FAMILY "Apple Color Emoji"
161 #endif
162
163 #else
164
165 #define DEFAULT_STANDARD_FONT_FAMILY "Times"
166 #define DEFAULT_CURSIVE_FONT_FAMILY "Comic Sans MS"
167 #define DEFAULT_FANTASY_FONT_FAMILY "Impact"
168 #define DEFAULT_FIXED_FONT_FAMILY "Courier New"
169 #define DEFAULT_SANS_SERIF_FONT_FAMILY "Helvetica"
170 #define DEFAULT_SERIF_FONT_FAMILY "Times"
171 #define DEFAULT_PICTOGRAPH_FONT_FAMILY "Times"
172
173 #endif
174
175 // Cocoa ports must disable experimental features on release branches for now.
176 #if ENABLE(EXPERIMENTAL_FEATURES) || PLATFORM(COCOA)
177 #define DEFAULT_EXPERIMENTAL_FEATURES_ENABLED true
178 #else
179 #define DEFAULT_EXPERIMENTAL_FEATURES_ENABLED false
180 #endif
181
182 #if ENABLE(EXPERIMENTAL_FEATURES) || PLATFORM(COCOA)
183 #define DEFAULT_SERVICE_WORKERS_ENABLED true
184 #else
185 #define DEFAULT_SERVICE_WORKERS_ENABLED false
186 #endif
187
188 bool defaultPassiveTouchListenersAsDefaultOnDocument();
189 bool defaultCustomPasteboardDataEnabled();