| 1 | /* | 
| 2 |  * Copyright (C) 2006, 2007, 2008, 2009, 2013 Apple Inc. All rights reserved. | 
| 3 |  * Copyright (C) 2007-2009 Torch Mobile, Inc. | 
| 4 |  * Copyright (C) 2010, 2011 Research In Motion Limited. All rights reserved. | 
| 5 |  * Copyright (C) 2013 Samsung Electronics. All rights reserved. | 
| 6 |  * | 
| 7 |  * Redistribution and use in source and binary forms, with or without | 
| 8 |  * modification, are permitted provided that the following conditions | 
| 9 |  * are met: | 
| 10 |  * 1. Redistributions of source code must retain the above copyright | 
| 11 |  *    notice, this list of conditions and the following disclaimer. | 
| 12 |  * 2. Redistributions in binary form must reproduce the above copyright | 
| 13 |  *    notice, this list of conditions and the following disclaimer in the | 
| 14 |  *    documentation and/or other materials provided with the distribution. | 
| 15 |  * | 
| 16 |  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY | 
| 17 |  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 
| 18 |  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | 
| 19 |  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR | 
| 20 |  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, | 
| 21 |  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, | 
| 22 |  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR | 
| 23 |  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY | 
| 24 |  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 
| 25 |  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 
| 26 |  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 
| 27 |  */ | 
| 28 |  | 
| 29 | #ifndef WTF_FeatureDefines_h | 
| 30 | #define WTF_FeatureDefines_h | 
| 31 |  | 
| 32 | /* Use this file to list _all_ ENABLE() macros. Define the macros to be one of the following values: | 
| 33 |  *  - "0" disables the feature by default. The feature can still be enabled for a specific port or environment. | 
| 34 |  *  - "1" enables the feature by default. The feature can still be disabled for a specific port or environment. | 
| 35 |  * | 
| 36 |  * The feature defaults in this file are only taken into account if the (port specific) build system | 
| 37 |  * has not enabled or disabled a particular feature.  | 
| 38 |  * | 
| 39 |  * Use this file to define ENABLE() macros only. Do not use this file to define USE() or macros ! | 
| 40 |  * | 
| 41 |  * Only define a macro if it was not defined before - always check for !defined first. | 
| 42 |  *  | 
| 43 |  * Keep the file sorted by the name of the defines. As an exception you can change the order | 
| 44 |  * to allow interdependencies between the default values. | 
| 45 |  *  | 
| 46 |  * Below are a few potential commands to take advantage of this file running from the Source/WTF directory | 
| 47 |  * | 
| 48 |  * Get the list of feature defines: grep -o "ENABLE_\(\w\+\)" wtf/FeatureDefines.h | sort | uniq | 
| 49 |  * Get the list of features enabled by default for a PLATFORM(XXX): gcc -E -dM -I. -DWTF_PLATFORM_XXX "wtf/Platform.h" | grep "ENABLE_\w\+ 1" | cut -d' ' -f2 | sort  | 
| 50 |  */ | 
| 51 |  | 
| 52 | /* FIXME: Move out the PLATFORM specific rules into platform specific files. */ | 
| 53 |  | 
| 54 | /* --------- Apple IOS (but not MAC) port --------- */ | 
| 55 | /* PLATFORM(IOS) is a specialization of PLATFORM(MAC). */ | 
| 56 | /* PLATFORM(MAC) is always enabled when PLATFORM(IOS) is enabled. */ | 
| 57 | #if PLATFORM(IOS) | 
| 58 |  | 
| 59 | #if !defined(ENABLE_8BIT_TEXTRUN) | 
| 60 | #define ENABLE_8BIT_TEXTRUN 1 | 
| 61 | #endif | 
| 62 |  | 
| 63 | #if !defined(ENABLE_CONTEXT_MENUS) | 
| 64 | #define ENABLE_CONTEXT_MENUS 0 | 
| 65 | #endif | 
| 66 |  | 
| 67 | #if !defined(ENABLE_CSS_IMAGE_SET) | 
| 68 | #define ENABLE_CSS_IMAGE_SET 1 | 
| 69 | #endif | 
| 70 |  | 
| 71 | #if !defined(ENABLE_DRAG_SUPPORT) | 
| 72 | #define ENABLE_DRAG_SUPPORT 0 | 
| 73 | #endif | 
| 74 |  | 
| 75 | #if !defined(ENABLE_GEOLOCATION) | 
| 76 | #define ENABLE_GEOLOCATION 1 | 
| 77 | #endif | 
| 78 |  | 
| 79 | #if !defined(ENABLE_ICONDATABASE) | 
| 80 | #define ENABLE_ICONDATABASE 0 | 
| 81 | #endif | 
| 82 |  | 
| 83 | #if !defined(ENABLE_NETSCAPE_PLUGIN_API) | 
| 84 | #define ENABLE_NETSCAPE_PLUGIN_API 0 | 
| 85 | #endif | 
| 86 |  | 
| 87 | #if !defined(ENABLE_ORIENTATION_EVENTS) | 
| 88 | #define ENABLE_ORIENTATION_EVENTS 1  | 
| 89 | #endif | 
| 90 |  | 
| 91 | #if !defined(ENABLE_REPAINT_THROTTLING) | 
| 92 | #define ENABLE_REPAINT_THROTTLING 1  | 
| 93 | #endif | 
| 94 |  | 
| 95 | #if !defined(ENABLE_TEXT_CARET) | 
| 96 | #define ENABLE_TEXT_CARET 0 | 
| 97 | #endif | 
| 98 |  | 
| 99 | #if !defined(ENABLE_WEB_ARCHIVE) | 
| 100 | #define ENABLE_WEB_ARCHIVE 1 | 
| 101 | #endif | 
| 102 |  | 
| 103 | #if !defined(ENABLE_VIEW_MODE_CSS_MEDIA) | 
| 104 | #define ENABLE_VIEW_MODE_CSS_MEDIA 0 | 
| 105 | #endif | 
| 106 |  | 
| 107 | #if !defined(ENABLE_WEBGL) | 
| 108 | #define ENABLE_WEBGL 1 | 
| 109 | #endif | 
| 110 |  | 
| 111 | #endif /* PLATFORM(IOS) */ | 
| 112 |  | 
| 113 | /* --------- Apple MAC port (not IOS) --------- */ | 
| 114 | #if PLATFORM(MAC) && !PLATFORM(IOS) | 
| 115 |  | 
| 116 | #if !defined(ENABLE_8BIT_TEXTRUN) | 
| 117 | #define ENABLE_8BIT_TEXTRUN 1 | 
| 118 | #endif | 
| 119 |  | 
| 120 | #if !defined(ENABLE_CSS_IMAGE_SET) | 
| 121 | #define ENABLE_CSS_IMAGE_SET 1 | 
| 122 | #endif | 
| 123 |  | 
| 124 | #if !defined(ENABLE_DASHBOARD_SUPPORT) | 
| 125 | #define ENABLE_DASHBOARD_SUPPORT 1 | 
| 126 | #endif | 
| 127 |  | 
| 128 | #if !defined(ENABLE_DELETION_UI) | 
| 129 | #define ENABLE_DELETION_UI 1 | 
| 130 | #endif | 
| 131 |  | 
| 132 | #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 1090 | 
| 133 | #if !defined(ENABLE_ENCRYPTED_MEDIA) | 
| 134 | #define ENABLE_ENCRYPTED_MEDIA 1 | 
| 135 | #endif | 
| 136 | #if !defined(ENABLE_ENCRYPTED_MEDIA_V2) | 
| 137 | #define ENABLE_ENCRYPTED_MEDIA_V2 1 | 
| 138 | #endif | 
| 139 | #endif | 
| 140 |  | 
| 141 | #if !defined(ENABLE_FULLSCREEN_API) | 
| 142 | #define ENABLE_FULLSCREEN_API 1 | 
| 143 | #endif | 
| 144 |  | 
| 145 | #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 1070 | 
| 146 | #if !defined(ENABLE_GESTURE_EVENTS) | 
| 147 | #define ENABLE_GESTURE_EVENTS 1 | 
| 148 | #endif | 
| 149 | #endif | 
| 150 |  | 
| 151 | #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 1070 | 
| 152 | #if !defined(ENABLE_RUBBER_BANDING) | 
| 153 | #define ENABLE_RUBBER_BANDING 1 | 
| 154 | #endif | 
| 155 | #endif | 
| 156 |  | 
| 157 | #if !defined(ENABLE_SMOOTH_SCROLLING) | 
| 158 | #define ENABLE_SMOOTH_SCROLLING 1 | 
| 159 | #endif | 
| 160 |  | 
| 161 | #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 1080 | 
| 162 | #if !defined(ENABLE_THREADED_SCROLLING) | 
| 163 | #define ENABLE_THREADED_SCROLLING 1 | 
| 164 | #endif | 
| 165 | #endif | 
| 166 |  | 
| 167 | #if ENABLE(VIDEO) | 
| 168 | #if !defined(ENABLE_VIDEO_TRACK) | 
| 169 | #define ENABLE_VIDEO_TRACK 1 | 
| 170 | #endif | 
| 171 | #endif | 
| 172 |  | 
| 173 | #if !defined(ENABLE_VIEW_MODE_CSS_MEDIA) | 
| 174 | #define ENABLE_VIEW_MODE_CSS_MEDIA 0 | 
| 175 | #endif | 
| 176 |  | 
| 177 | #if !defined(ENABLE_WEB_ARCHIVE) | 
| 178 | #define ENABLE_WEB_ARCHIVE 1 | 
| 179 | #endif | 
| 180 |  | 
| 181 | #if !defined(ENABLE_WEB_AUDIO) | 
| 182 | #define ENABLE_WEB_AUDIO 1 | 
| 183 | #endif | 
| 184 |  | 
| 185 | #if !defined(ENABLE_CURSOR_VISIBILITY) | 
| 186 | #define ENABLE_CURSOR_VISIBILITY 1 | 
| 187 | #endif | 
| 188 |  | 
| 189 | #endif /* PLATFORM(MAC) && !PLATFORM(IOS) */ | 
| 190 |  | 
| 191 | /* --------- Apple Windows port --------- */ | 
| 192 | #if PLATFORM(WIN) && !OS(WINCE) && !PLATFORM(WIN_CAIRO) | 
| 193 |  | 
| 194 | #if !defined(ENABLE_FULLSCREEN_API) | 
| 195 | #define ENABLE_FULLSCREEN_API 1 | 
| 196 | #endif | 
| 197 |  | 
| 198 | #if !defined(ENABLE_WEB_ARCHIVE) | 
| 199 | #define ENABLE_WEB_ARCHIVE 1 | 
| 200 | #endif | 
| 201 |  | 
| 202 | #endif /* PLATFORM(WIN) && !OS(WINCE) && !PLATFORM(WIN_CAIRO) */ | 
| 203 |  | 
| 204 | /* --------- WinCE port --------- */ | 
| 205 | /* WinCE port is a specialization of PLATFORM(WIN). */ | 
| 206 | /* PLATFORM(WIN) is always enabled when building for the WinCE port. */ | 
| 207 | #if PLATFORM(WIN) && OS(WINCE) | 
| 208 |  | 
| 209 | #if !defined(ENABLE_DRAG_SUPPORT) | 
| 210 | #define ENABLE_DRAG_SUPPORT 0 | 
| 211 | #endif | 
| 212 |  | 
| 213 | #if !defined(ENABLE_FTPDIR) | 
| 214 | #define ENABLE_FTPDIR 0 | 
| 215 | #endif | 
| 216 |  | 
| 217 | #if !defined(ENABLE_INSPECTOR) | 
| 218 | #define ENABLE_INSPECTOR 0 | 
| 219 | #endif | 
| 220 |  | 
| 221 | #endif /* PLATFORM(WIN) && OS(WINCE) */ | 
| 222 |  | 
| 223 | /* --------- Windows CAIRO port --------- */ | 
| 224 | /* PLATFORM(WIN_CAIRO) is a specialization of PLATFORM(WIN). */ | 
| 225 | /* PLATFORM(WIN) is always enabled when PLATFORM(WIN_CAIRO) is enabled. */ | 
| 226 | #if PLATFORM(WIN_CAIRO) | 
| 227 |  | 
| 228 | #if !defined(ENABLE_WEB_ARCHIVE) | 
| 229 | #define ENABLE_WEB_ARCHIVE 1 | 
| 230 | #endif | 
| 231 |  | 
| 232 | #endif /* PLATFORM(WIN_CAIRO) */ | 
| 233 |  | 
| 234 | /* --------- WX port (Mac OS and Windows) --------- */ | 
| 235 | #if PLATFORM(WX) | 
| 236 |  | 
| 237 | #if OS(DARWIN) | 
| 238 | #if !defined(ENABLE_WEB_ARCHIVE) | 
| 239 | #define ENABLE_WEB_ARCHIVE 1 | 
| 240 | #endif | 
| 241 | #endif | 
| 242 |  | 
| 243 | #if OS(UNIX) | 
| 244 | #if !defined(ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH) | 
| 245 | #define ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH 1 | 
| 246 | #endif | 
| 247 | #endif | 
| 248 |  | 
| 249 | #endif /* PLATFORM(WX) */ | 
| 250 |  | 
| 251 | /* --------- EFL port (Unix) --------- */ | 
| 252 | #if PLATFORM(EFL) | 
| 253 |  | 
| 254 | #if !defined(ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH) | 
| 255 | #define ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH 1 | 
| 256 | #endif | 
| 257 |  | 
| 258 | #if !defined(ENABLE_SUBPIXEL_LAYOUT) | 
| 259 | #define ENABLE_SUBPIXEL_LAYOUT 1 | 
| 260 | #endif | 
| 261 |  | 
| 262 | #endif /* PLATFORM(EFL) */ | 
| 263 |  | 
| 264 | /* --------- Gtk port (Unix, Windows, Mac) --------- */ | 
| 265 | #if PLATFORM(GTK) | 
| 266 |  | 
| 267 | #if OS(UNIX) | 
| 268 | #if !defined(ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH) | 
| 269 | #define ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH 1 | 
| 270 | #endif | 
| 271 | #endif | 
| 272 |  | 
| 273 | #endif /* PLATFORM(GTK) */ | 
| 274 |  | 
| 275 | /* --------- Qt port (Unix, Windows, Mac, WinCE) --------- */ | 
| 276 | #if PLATFORM(QT) | 
| 277 |  | 
| 278 | #if OS(UNIX) | 
| 279 | #if !defined(ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH) | 
| 280 | #define ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH 1 | 
| 281 | #endif | 
| 282 | #endif | 
| 283 |  | 
| 284 | #endif /* PLATFORM(QT) */ | 
| 285 |  | 
| 286 | /* --------- Blackberry port (QNX) --------- */ | 
| 287 | #if PLATFORM(BLACKBERRY) | 
| 288 |  | 
| 289 | #if !defined(ENABLE_BLACKBERRY_CREDENTIAL_PERSIST) | 
| 290 | #define ENABLE_BLACKBERRY_CREDENTIAL_PERSIST 1 | 
| 291 | #endif | 
| 292 |  | 
| 293 | #endif /* PLATFORM(BLACKBERRY) */ | 
| 294 |  | 
| 295 | /* ENABLE macro defaults for WebCore */ | 
| 296 | /* Do not use PLATFORM() tests in this section ! */ | 
| 297 |  | 
| 298 | #if !defined(ENABLE_3D_RENDERING) | 
| 299 | #define ENABLE_3D_RENDERING 0 | 
| 300 | #endif | 
| 301 |  | 
| 302 | #if !defined(ENABLE_8BIT_TEXTRUN) | 
| 303 | #define ENABLE_8BIT_TEXTRUN 0 | 
| 304 | #endif | 
| 305 |  | 
| 306 | #if !defined(ENABLE_ACCELERATED_2D_CANVAS) | 
| 307 | #define ENABLE_ACCELERATED_2D_CANVAS 0 | 
| 308 | #endif | 
| 309 |  | 
| 310 | #if !defined(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) | 
| 311 | #define ENABLE_ACCELERATED_OVERFLOW_SCROLLING 0 | 
| 312 | #endif | 
| 313 |  | 
| 314 | #if !defined(ENABLE_BATTERY_STATUS) | 
| 315 | #define ENABLE_BATTERY_STATUS 0 | 
| 316 | #endif | 
| 317 |  | 
| 318 | #if !defined(ENABLE_BLOB) | 
| 319 | #define ENABLE_BLOB 0 | 
| 320 | #endif | 
| 321 |  | 
| 322 | #if !defined(ENABLE_CALENDAR_PICKER) | 
| 323 | #define ENABLE_CALENDAR_PICKER 0 | 
| 324 | #endif | 
| 325 |  | 
| 326 | #if !defined(ENABLE_CANVAS_PATH) | 
| 327 | #define ENABLE_CANVAS_PATH 1 | 
| 328 | #endif | 
| 329 |  | 
| 330 | #if !defined(ENABLE_CANVAS_PROXY) | 
| 331 | #define ENABLE_CANVAS_PROXY 0 | 
| 332 | #endif | 
| 333 |  | 
| 334 | #if !defined(ENABLE_CHANNEL_MESSAGING) | 
| 335 | #define ENABLE_CHANNEL_MESSAGING 1 | 
| 336 | #endif | 
| 337 |  | 
| 338 | #if !defined(ENABLE_CONTEXT_MENUS) | 
| 339 | #define  1 | 
| 340 | #endif | 
| 341 |  | 
| 342 | #if !defined(ENABLE_CSP_NEXT) | 
| 343 | #define ENABLE_CSP_NEXT 0 | 
| 344 | #endif | 
| 345 |  | 
| 346 | #if !defined(ENABLE_CSS3_CONDITIONAL_RULES) | 
| 347 | #define ENABLE_CSS3_CONDITIONAL_RULES 0 | 
| 348 | #endif | 
| 349 |  | 
| 350 | #if !defined(ENABLE_CSS3_TEXT) | 
| 351 | #define ENABLE_CSS3_TEXT 0 | 
| 352 | #endif | 
| 353 |  | 
| 354 | #if !defined(ENABLE_CSS_BOX_DECORATION_BREAK) | 
| 355 | #define ENABLE_CSS_BOX_DECORATION_BREAK 1 | 
| 356 | #endif | 
| 357 |  | 
| 358 | #if !defined(ENABLE_CSS_DEVICE_ADAPTATION) | 
| 359 | #define ENABLE_CSS_DEVICE_ADAPTATION 0 | 
| 360 | #endif | 
| 361 |  | 
| 362 | #if !defined(ENABLE_CSS_COMPOSITING) | 
| 363 | #define ENABLE_CSS_COMPOSITING 0 | 
| 364 | #endif | 
| 365 |  | 
| 366 | #if !defined(ENABLE_CSS_FILTERS) | 
| 367 | #define ENABLE_CSS_FILTERS 0 | 
| 368 | #endif | 
| 369 |  | 
| 370 | #if !defined(ENABLE_CSS_IMAGE_ORIENTATION) | 
| 371 | #define ENABLE_CSS_IMAGE_ORIENTATION 0 | 
| 372 | #endif | 
| 373 |  | 
| 374 | #if !defined(ENABLE_CSS_IMAGE_RESOLUTION) | 
| 375 | #define ENABLE_CSS_IMAGE_RESOLUTION 0 | 
| 376 | #endif | 
| 377 |  | 
| 378 | #if !defined(ENABLE_CSS_IMAGE_SET) | 
| 379 | #define ENABLE_CSS_IMAGE_SET 0 | 
| 380 | #endif | 
| 381 |  | 
| 382 | #if !defined(ENABLE_CSS_SHADERS) | 
| 383 | #define ENABLE_CSS_SHADERS 0 | 
| 384 | #endif | 
| 385 |  | 
| 386 | #if !defined(ENABLE_CSS_STICKY_POSITION) | 
| 387 | #define ENABLE_CSS_STICKY_POSITION 0 | 
| 388 | #endif | 
| 389 |  | 
| 390 | #if !defined(ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED) | 
| 391 | #define ENABLE_CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED 0 | 
| 392 | #endif | 
| 393 |  | 
| 394 | #if !defined(ENABLE_CSS_VARIABLES) | 
| 395 | #define ENABLE_CSS_VARIABLES 0 | 
| 396 | #endif | 
| 397 |  | 
| 398 | #if !defined(ENABLE_CUSTOM_SCHEME_HANDLER) | 
| 399 | #define ENABLE_CUSTOM_SCHEME_HANDLER 0 | 
| 400 | #endif | 
| 401 |  | 
| 402 | #if !defined(ENABLE_DASHBOARD_SUPPORT) | 
| 403 | #define ENABLE_DASHBOARD_SUPPORT 0 | 
| 404 | #endif | 
| 405 |  | 
| 406 | #if !defined(ENABLE_DATALIST_ELEMENT) | 
| 407 | #define ENABLE_DATALIST_ELEMENT 0 | 
| 408 | #endif | 
| 409 |  | 
| 410 | #if !defined(ENABLE_DATA_TRANSFER_ITEMS) | 
| 411 | #define ENABLE_DATA_TRANSFER_ITEMS 0 | 
| 412 | #endif | 
| 413 |  | 
| 414 | #if !defined(ENABLE_DELETION_UI) | 
| 415 | #define ENABLE_DELETION_UI 0 | 
| 416 | #endif | 
| 417 |  | 
| 418 | #if !defined(ENABLE_DETAILS_ELEMENT) | 
| 419 | #define ENABLE_DETAILS_ELEMENT 1 | 
| 420 | #endif | 
| 421 |  | 
| 422 | #if !defined(ENABLE_DEVICE_ORIENTATION) | 
| 423 | #define ENABLE_DEVICE_ORIENTATION 0 | 
| 424 | #endif | 
| 425 |  | 
| 426 | #if !defined(ENABLE_DIALOG_ELEMENT) | 
| 427 | #define ENABLE_DIALOG_ELEMENT 0 | 
| 428 | #endif | 
| 429 |  | 
| 430 | #if !defined(ENABLE_DIRECTORY_UPLOAD) | 
| 431 | #define ENABLE_DIRECTORY_UPLOAD 0 | 
| 432 | #endif | 
| 433 |  | 
| 434 | #if !defined(ENABLE_DOWNLOAD_ATTRIBUTE) | 
| 435 | #define ENABLE_DOWNLOAD_ATTRIBUTE 0 | 
| 436 | #endif | 
| 437 |  | 
| 438 | #if !defined(ENABLE_DRAGGABLE_REGION) | 
| 439 | #define ENABLE_DRAGGABLE_REGION 0 | 
| 440 | #endif | 
| 441 |  | 
| 442 | #if !defined(ENABLE_DRAG_SUPPORT) | 
| 443 | #define ENABLE_DRAG_SUPPORT 1 | 
| 444 | #endif | 
| 445 |  | 
| 446 | #if !defined(ENABLE_ENCRYPTED_MEDIA) | 
| 447 | #define ENABLE_ENCRYPTED_MEDIA 0 | 
| 448 | #endif | 
| 449 |  | 
| 450 | #if !defined(ENABLE_ENCRYPTED_MEDIA_V2) | 
| 451 | #define ENABLE_ENCRYPTED_MEDIA_V2 0 | 
| 452 | #endif | 
| 453 |  | 
| 454 | #if !defined(ENABLE_FAST_MOBILE_SCROLLING) | 
| 455 | #define ENABLE_FAST_MOBILE_SCROLLING 0 | 
| 456 | #endif | 
| 457 |  | 
| 458 | #if !defined(ENABLE_FILE_SYSTEM) | 
| 459 | #define ENABLE_FILE_SYSTEM 0 | 
| 460 | #endif | 
| 461 |  | 
| 462 | #if !defined(ENABLE_FILTERS) | 
| 463 | #define ENABLE_FILTERS 0 | 
| 464 | #endif | 
| 465 |  | 
| 466 | #if !defined(ENABLE_FONT_LOAD_EVENTS) | 
| 467 | #define ENABLE_FONT_LOAD_EVENTS 0 | 
| 468 | #endif | 
| 469 |  | 
| 470 | #if !defined(ENABLE_FTPDIR) | 
| 471 | #define ENABLE_FTPDIR 1 | 
| 472 | #endif | 
| 473 |  | 
| 474 | #if !defined(ENABLE_FULLSCREEN_API) | 
| 475 | #define ENABLE_FULLSCREEN_API 0 | 
| 476 | #endif | 
| 477 |  | 
| 478 | #if !defined(ENABLE_GAMEPAD) | 
| 479 | #define ENABLE_GAMEPAD 0 | 
| 480 | #endif | 
| 481 |  | 
| 482 | #if !defined(ENABLE_GEOLOCATION) | 
| 483 | #define ENABLE_GEOLOCATION 0 | 
| 484 | #endif | 
| 485 |  | 
| 486 | #if !defined(ENABLE_GESTURE_EVENTS) | 
| 487 | #define ENABLE_GESTURE_EVENTS 0 | 
| 488 | #endif | 
| 489 |  | 
| 490 | #if !defined(ENABLE_GLIB_SUPPORT) | 
| 491 | #define ENABLE_GLIB_SUPPORT 0 | 
| 492 | #endif | 
| 493 |  | 
| 494 | #if !defined(ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING) | 
| 495 | #define ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING 0 | 
| 496 | #endif | 
| 497 |  | 
| 498 | #if !defined(ENABLE_HIGH_DPI_CANVAS) | 
| 499 | #define ENABLE_HIGH_DPI_CANVAS 0 | 
| 500 | #endif | 
| 501 |  | 
| 502 | #if !defined(ENABLE_ICONDATABASE) | 
| 503 | #define ENABLE_ICONDATABASE 1 | 
| 504 | #endif | 
| 505 |  | 
| 506 | #if !defined(ENABLE_IFRAME_SEAMLESS) | 
| 507 | #define ENABLE_IFRAME_SEAMLESS 1 | 
| 508 | #endif | 
| 509 |  | 
| 510 | #if !defined(ENABLE_IMAGE_DECODER_DOWN_SAMPLING) | 
| 511 | #define ENABLE_IMAGE_DECODER_DOWN_SAMPLING 0 | 
| 512 | #endif | 
| 513 |  | 
| 514 | #if !defined(ENABLE_INDEXED_DATABASE) | 
| 515 | #define ENABLE_INDEXED_DATABASE 0 | 
| 516 | #endif | 
| 517 |  | 
| 518 | #if !defined(ENABLE_INPUT_MULTIPLE_FIELDS_UI) | 
| 519 | #define ENABLE_INPUT_MULTIPLE_FIELDS_UI 0 | 
| 520 | #endif | 
| 521 |  | 
| 522 | #if !defined(ENABLE_INPUT_SPEECH) | 
| 523 | #define ENABLE_INPUT_SPEECH 0 | 
| 524 | #endif | 
| 525 |  | 
| 526 | #if !defined(ENABLE_INPUT_TYPE_COLOR) | 
| 527 | #define ENABLE_INPUT_TYPE_COLOR 0 | 
| 528 | #endif | 
| 529 |  | 
| 530 | #if !defined(ENABLE_INPUT_TYPE_DATE) | 
| 531 | #define ENABLE_INPUT_TYPE_DATE 0 | 
| 532 | #endif | 
| 533 |  | 
| 534 | #if !defined(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) | 
| 535 | #define ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE 0 | 
| 536 | #endif | 
| 537 |  | 
| 538 | #if !defined(ENABLE_INPUT_TYPE_DATETIMELOCAL) | 
| 539 | #define ENABLE_INPUT_TYPE_DATETIMELOCAL 0 | 
| 540 | #endif | 
| 541 |  | 
| 542 | #if !defined(ENABLE_INPUT_TYPE_MONTH) | 
| 543 | #define ENABLE_INPUT_TYPE_MONTH 0 | 
| 544 | #endif | 
| 545 |  | 
| 546 | #if !defined(ENABLE_INPUT_TYPE_TIME) | 
| 547 | #define ENABLE_INPUT_TYPE_TIME 0 | 
| 548 | #endif | 
| 549 |  | 
| 550 | #if !defined(ENABLE_INPUT_TYPE_WEEK) | 
| 551 | #define ENABLE_INPUT_TYPE_WEEK 0 | 
| 552 | #endif | 
| 553 |  | 
| 554 | #if ENABLE(INPUT_TYPE_DATE) || ENABLE(INPUT_TYPE_DATETIME_INCOMPLETE) || ENABLE(INPUT_TYPE_DATETIMELOCAL) || ENABLE(INPUT_TYPE_MONTH) || ENABLE(INPUT_TYPE_TIME) || ENABLE(INPUT_TYPE_WEEK) | 
| 555 | #if !defined(ENABLE_DATE_AND_TIME_INPUT_TYPES) | 
| 556 | #define ENABLE_DATE_AND_TIME_INPUT_TYPES 1 | 
| 557 | #endif | 
| 558 | #endif | 
| 559 |  | 
| 560 | #if !defined(ENABLE_INSPECTOR) | 
| 561 | #define ENABLE_INSPECTOR 1 | 
| 562 | #endif | 
| 563 |  | 
| 564 | #if !defined(ENABLE_JAVASCRIPT_DEBUGGER) | 
| 565 | #define ENABLE_JAVASCRIPT_DEBUGGER 1 | 
| 566 | #endif | 
| 567 |  | 
| 568 | #if !defined(ENABLE_JAVASCRIPT_I18N_API) | 
| 569 | #define ENABLE_JAVASCRIPT_I18N_API 0 | 
| 570 | #endif | 
| 571 |  | 
| 572 | #if !defined(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) | 
| 573 | #define ENABLE_LEGACY_CSS_VENDOR_PREFIXES 0 | 
| 574 | #endif | 
| 575 |  | 
| 576 | #if !defined(ENABLE_LEGACY_NOTIFICATIONS) | 
| 577 | #define ENABLE_LEGACY_NOTIFICATIONS 0 | 
| 578 | #endif | 
| 579 |  | 
| 580 | #if !defined(ENABLE_LEGACY_VENDOR_PREFIXES) | 
| 581 | #define ENABLE_LEGACY_VENDOR_PREFIXES 0 | 
| 582 | #endif | 
| 583 |  | 
| 584 | #if !defined(ENABLE_LEGACY_VIEWPORT_ADAPTION) | 
| 585 | #define ENABLE_LEGACY_VIEWPORT_ADAPTION 0 | 
| 586 | #endif | 
| 587 |  | 
| 588 | #if !defined(ENABLE_LINK_PREFETCH) | 
| 589 | #define ENABLE_LINK_PREFETCH 0 | 
| 590 | #endif | 
| 591 |  | 
| 592 | #if !defined(ENABLE_LINK_PRERENDER) | 
| 593 | #define ENABLE_LINK_PRERENDER 0 | 
| 594 | #endif | 
| 595 |  | 
| 596 | #if !defined(ENABLE_MATHML) | 
| 597 | #define ENABLE_MATHML 1 | 
| 598 | #endif | 
| 599 |  | 
| 600 | #if !defined(ENABLE_MEDIA_CAPTURE) | 
| 601 | #define ENABLE_MEDIA_CAPTURE 0 | 
| 602 | #endif | 
| 603 |  | 
| 604 | #if !defined(ENABLE_MEDIA_SOURCE) | 
| 605 | #define ENABLE_MEDIA_SOURCE 0 | 
| 606 | #endif | 
| 607 |  | 
| 608 | #if !defined(ENABLE_MEDIA_STATISTICS) | 
| 609 | #define ENABLE_MEDIA_STATISTICS 0 | 
| 610 | #endif | 
| 611 |  | 
| 612 | #if !defined(ENABLE_MEDIA_STREAM) | 
| 613 | #define ENABLE_MEDIA_STREAM 0 | 
| 614 | #endif | 
| 615 |  | 
| 616 | #if !defined(ENABLE_METER_ELEMENT) | 
| 617 | #define ENABLE_METER_ELEMENT 1 | 
| 618 | #endif | 
| 619 |  | 
| 620 | #if !defined(ENABLE_MHTML) | 
| 621 | #define ENABLE_MHTML 0 | 
| 622 | #endif | 
| 623 |  | 
| 624 | #if !defined(ENABLE_MICRODATA) | 
| 625 | #define ENABLE_MICRODATA 0 | 
| 626 | #endif | 
| 627 |  | 
| 628 | #if !defined(ENABLE_MOUSE_CURSOR_SCALE) | 
| 629 | #define ENABLE_MOUSE_CURSOR_SCALE 0 | 
| 630 | #endif | 
| 631 |  | 
| 632 | #if !defined(ENABLE_NAVIGATOR_CONTENT_UTILS) | 
| 633 | #define ENABLE_NAVIGATOR_CONTENT_UTILS 0 | 
| 634 | #endif | 
| 635 |  | 
| 636 | #if !defined(ENABLE_NETSCAPE_PLUGIN_API) | 
| 637 | #define ENABLE_NETSCAPE_PLUGIN_API 1 | 
| 638 | #endif | 
| 639 |  | 
| 640 | #if !defined(ENABLE_NETSCAPE_PLUGIN_METADATA_CACHE) | 
| 641 | #define ENABLE_NETSCAPE_PLUGIN_METADATA_CACHE 0 | 
| 642 | #endif | 
| 643 |  | 
| 644 | #if !defined(ENABLE_NETWORK_INFO) | 
| 645 | #define ENABLE_NETWORK_INFO 0 | 
| 646 | #endif | 
| 647 |  | 
| 648 | #if !defined(ENABLE_NOTIFICATIONS) | 
| 649 | #define ENABLE_NOTIFICATIONS 0 | 
| 650 | #endif | 
| 651 |  | 
| 652 | #if !defined(ENABLE_OBJECT_MARK_LOGGING) | 
| 653 | #define ENABLE_OBJECT_MARK_LOGGING 0 | 
| 654 | #endif | 
| 655 |  | 
| 656 | #if !defined(ENABLE_OPENCL) | 
| 657 | #define ENABLE_OPENCL 0 | 
| 658 | #endif | 
| 659 |  | 
| 660 | #if !defined(ENABLE_OPENTYPE_VERTICAL) | 
| 661 | #define ENABLE_OPENTYPE_VERTICAL 0 | 
| 662 | #endif | 
| 663 |  | 
| 664 | #if !defined(ENABLE_ORIENTATION_EVENTS) | 
| 665 | #define ENABLE_ORIENTATION_EVENTS 0 | 
| 666 | #endif | 
| 667 |  | 
| 668 | #if !defined(ENABLE_PAGE_POPUP) | 
| 669 | #define  0 | 
| 670 | #endif | 
| 671 |  | 
| 672 | #if !defined(ENABLE_PAGE_VISIBILITY_API) | 
| 673 | #define ENABLE_PAGE_VISIBILITY_API 0 | 
| 674 | #endif | 
| 675 |  | 
| 676 | #if OS(WINDOWS) | 
| 677 | #if !defined(ENABLE_PAN_SCROLLING) | 
| 678 | #define ENABLE_PAN_SCROLLING 1 | 
| 679 | #endif | 
| 680 | #endif | 
| 681 |  | 
| 682 | #if !defined(ENABLE_PARSED_STYLE_SHEET_CACHING) | 
| 683 | #define ENABLE_PARSED_STYLE_SHEET_CACHING 1 | 
| 684 | #endif | 
| 685 |  | 
| 686 | #if !defined(ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH) | 
| 687 | #define ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH 0 | 
| 688 | #endif | 
| 689 |  | 
| 690 | #if !defined(ENABLE_PLUGIN_PROXY_FOR_VIDEO) | 
| 691 | #define ENABLE_PLUGIN_PROXY_FOR_VIDEO 0 | 
| 692 | #endif | 
| 693 |  | 
| 694 | #if !defined(ENABLE_POINTER_LOCK) | 
| 695 | #define ENABLE_POINTER_LOCK 0 | 
| 696 | #endif | 
| 697 |  | 
| 698 | #if !defined(ENABLE_PROGRESS_ELEMENT) | 
| 699 | #define ENABLE_PROGRESS_ELEMENT 0 | 
| 700 | #endif | 
| 701 |  | 
| 702 | #if !defined(ENABLE_PROXIMITY_EVENTS) | 
| 703 | #define ENABLE_PROXIMITY_EVENTS 0 | 
| 704 | #endif | 
| 705 |  | 
| 706 | #if !defined(ENABLE_QUOTA) | 
| 707 | #define ENABLE_QUOTA 0 | 
| 708 | #endif | 
| 709 |  | 
| 710 | #if !defined(ENABLE_REPAINT_THROTTLING) | 
| 711 | #define ENABLE_REPAINT_THROTTLING 0 | 
| 712 | #endif | 
| 713 |  | 
| 714 | #if !defined(ENABLE_REQUEST_ANIMATION_FRAME) | 
| 715 | #define ENABLE_REQUEST_ANIMATION_FRAME 0 | 
| 716 | #endif | 
| 717 |  | 
| 718 | #if !defined(ENABLE_REQUEST_AUTOCOMPLETE) | 
| 719 | #define ENABLE_REQUEST_AUTOCOMPLETE 0 | 
| 720 | #endif | 
| 721 |  | 
| 722 | #if !defined(ENABLE_RUBBER_BANDING) | 
| 723 | #define ENABLE_RUBBER_BANDING 0 | 
| 724 | #endif | 
| 725 |  | 
| 726 | #if !defined(ENABLE_SATURATED_LAYOUT_ARITHMETIC) | 
| 727 | #define ENABLE_SATURATED_LAYOUT_ARITHMETIC 0 | 
| 728 | #endif | 
| 729 |  | 
| 730 | #if !defined(ENABLE_SCRIPTED_SPEECH) | 
| 731 | #define ENABLE_SCRIPTED_SPEECH 0 | 
| 732 | #endif | 
| 733 |  | 
| 734 | #if !defined(ENABLE_SHADOW_DOM) | 
| 735 | #define ENABLE_SHADOW_DOM 0 | 
| 736 | #endif | 
| 737 |  | 
| 738 | #if !defined(ENABLE_SHARED_WORKERS) | 
| 739 | #define ENABLE_SHARED_WORKERS 0 | 
| 740 | #endif | 
| 741 |  | 
| 742 | #if !defined(ENABLE_SMOOTH_SCROLLING) | 
| 743 | #define ENABLE_SMOOTH_SCROLLING 0 | 
| 744 | #endif | 
| 745 |  | 
| 746 | #if !defined(ENABLE_SPEECH_SYNTHESIS) | 
| 747 | #define ENABLE_SPEECH_SYNTHESIS 0 | 
| 748 | #endif | 
| 749 |  | 
| 750 | #if !defined(ENABLE_SPELLCHECK) | 
| 751 | #define ENABLE_SPELLCHECK 0 | 
| 752 | #endif | 
| 753 |  | 
| 754 | #if !defined(ENABLE_SQL_DATABASE) | 
| 755 | #define ENABLE_SQL_DATABASE 1 | 
| 756 | #endif | 
| 757 |  | 
| 758 | #if !defined(ENABLE_STYLE_SCOPED) | 
| 759 | #define ENABLE_STYLE_SCOPED 0 | 
| 760 | #endif | 
| 761 |  | 
| 762 | #if !defined(ENABLE_SUBPIXEL_LAYOUT) | 
| 763 | #define ENABLE_SUBPIXEL_LAYOUT 0 | 
| 764 | #endif | 
| 765 |  | 
| 766 | #if !defined(ENABLE_SVG) | 
| 767 | #define ENABLE_SVG 1 | 
| 768 | #endif | 
| 769 |  | 
| 770 | #if ENABLE(SVG) | 
| 771 | #if !defined(ENABLE_SVG_FONTS) | 
| 772 | #define ENABLE_SVG_FONTS 1 | 
| 773 | #endif | 
| 774 | #endif | 
| 775 |  | 
| 776 | #if !defined(ENABLE_TEMPLATE_ELEMENT) | 
| 777 | #define ENABLE_TEMPLATE_ELEMENT 0 | 
| 778 | #endif | 
| 779 |  | 
| 780 | #if !defined(ENABLE_TEXT_AUTOSIZING) | 
| 781 | #define ENABLE_TEXT_AUTOSIZING 0 | 
| 782 | #endif | 
| 783 |  | 
| 784 | #if !defined(ENABLE_TEXT_CARET) | 
| 785 | #define ENABLE_TEXT_CARET 1 | 
| 786 | #endif | 
| 787 |  | 
| 788 | #if !defined(ENABLE_THREADED_HTML_PARSER) | 
| 789 | #define ENABLE_THREADED_HTML_PARSER 0 | 
| 790 | #endif | 
| 791 |  | 
| 792 | #if !defined(ENABLE_THREADED_SCROLLING) | 
| 793 | #define ENABLE_THREADED_SCROLLING 0 | 
| 794 | #endif | 
| 795 |  | 
| 796 | #if !defined(ENABLE_TOUCH_EVENTS) | 
| 797 | #define ENABLE_TOUCH_EVENTS 0 | 
| 798 | #endif | 
| 799 |  | 
| 800 | #if !defined(ENABLE_TOUCH_ICON_LOADING) | 
| 801 | #define ENABLE_TOUCH_ICON_LOADING 0 | 
| 802 | #endif | 
| 803 |  | 
| 804 | #if !defined(ENABLE_VIBRATION) | 
| 805 | #define ENABLE_VIBRATION 0 | 
| 806 | #endif | 
| 807 |  | 
| 808 | #if !defined(ENABLE_VIDEO) | 
| 809 | #define ENABLE_VIDEO 0 | 
| 810 | #endif | 
| 811 |  | 
| 812 | #if !defined(ENABLE_VIDEO_TRACK) | 
| 813 | #define ENABLE_VIDEO_TRACK 0 | 
| 814 | #endif | 
| 815 |  | 
| 816 | #if !defined(ENABLE_VIEWPORT) | 
| 817 | #define ENABLE_VIEWPORT 0 | 
| 818 | #endif | 
| 819 |  | 
| 820 | #if !defined(ENABLE_VIEWSOURCE_ATTRIBUTE) | 
| 821 | #define ENABLE_VIEWSOURCE_ATTRIBUTE 1 | 
| 822 | #endif | 
| 823 |  | 
| 824 | #if !defined(ENABLE_VIEW_MODE_CSS_MEDIA) | 
| 825 | #define ENABLE_VIEW_MODE_CSS_MEDIA 1 | 
| 826 | #endif | 
| 827 |  | 
| 828 | #if !defined(ENABLE_WEBGL) | 
| 829 | #define ENABLE_WEBGL 0 | 
| 830 | #endif | 
| 831 |  | 
| 832 | #if !defined(ENABLE_WEB_ARCHIVE) | 
| 833 | #define ENABLE_WEB_ARCHIVE 0 | 
| 834 | #endif | 
| 835 |  | 
| 836 | #if !defined(ENABLE_WEB_AUDIO) | 
| 837 | #define ENABLE_WEB_AUDIO 0 | 
| 838 | #endif | 
| 839 |  | 
| 840 | #if !defined(ENABLE_WEB_SOCKETS) | 
| 841 | #define ENABLE_WEB_SOCKETS 1 | 
| 842 | #endif | 
| 843 |  | 
| 844 | #if !defined(ENABLE_WEB_TIMING) | 
| 845 | #define ENABLE_WEB_TIMING 0 | 
| 846 | #endif | 
| 847 |  | 
| 848 | #if !defined(ENABLE_WORKERS) | 
| 849 | #define ENABLE_WORKERS 0 | 
| 850 | #endif | 
| 851 |  | 
| 852 | #if !defined(ENABLE_XHR_TIMEOUT) | 
| 853 | #define ENABLE_XHR_TIMEOUT 0 | 
| 854 | #endif | 
| 855 |  | 
| 856 | #if !defined(ENABLE_XSLT) | 
| 857 | #define ENABLE_XSLT 1 | 
| 858 | #endif | 
| 859 |  | 
| 860 | /* Asserts, invariants for macro definitions */ | 
| 861 |  | 
| 862 | #if ENABLE(SATURATED_LAYOUT_ARITHMETIC) && !ENABLE(SUBPIXEL_LAYOUT) | 
| 863 | #error "ENABLE(SATURATED_LAYOUT_ARITHMETIC) requires ENABLE(SUBPIXEL_LAYOUT)" | 
| 864 | #endif | 
| 865 |  | 
| 866 | #if ENABLE(SVG_FONTS) && !ENABLE(SVG) | 
| 867 | #error "ENABLE(SVG_FONTS) requires ENABLE(SVG)" | 
| 868 | #endif | 
| 869 |  | 
| 870 | #if ENABLE(VIDEO_TRACK) && !ENABLE(VIDEO) | 
| 871 | #error "ENABLE(VIDEO_TRACK) requires ENABLE(VIDEO)" | 
| 872 | #endif | 
| 873 |  | 
| 874 | #endif /* WTF_FeatureDefines_h */ | 
| 875 |  |