Advertisement
Guest User

Untitled

a guest
Apr 15th, 2013
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 107.16 KB | None | 0 0
  1. From 77fe71c19861970e2bf84971141db5dc2d5602fa Mon Sep 17 00:00:00 2001
  2. From: Daniel Bratell <bratell@opera.com>
  3. Date: Sat, 6 Apr 2013 14:32:17 +0200
  4. Subject: [PATCH] Scripts, gyp files.
  5.  
  6. Removing include paths. Adding a few. Adding paths to generated files.
  7. -----
  8. Gyp fix for WebKit include paths.
  9.  
  10. Now when webkit has some include paths relative to WebKit/Source code
  11. including such headers need to put WebKit/Source in the include path.
  12.  
  13. Problem was an include of
  14. "WebKit/Source/Platform/chromium/public/WebVideoFrameProvider.h" that
  15. now has a: -#include "WebKit/chromium/public/WebVideoFrame.h"
  16. in it.
  17. (used to be -#include "WebVideoFrame.h")
  18.  
  19. WebKit.gyp: Fix includes.
  20.  
  21. Fix includes now when includes have links relative to WebKit/Source.
  22.  
  23. Fixing WebCore.gypi that still had a lot of include paths listed.
  24. ---
  25. .../Source/Platform/Platform.gyp/Platform.gyp      |  25 +-
  26.  .../WebKit/Source/WebCore/WebCore.gyp/WebCore.gyp  | 148 +----
  27.  .../scripts/action_derivedsourcesallinone.py       |   2 +-
  28.  third_party/WebKit/Source/WebCore/WebCore.gypi     |  83 ---
  29.  .../WebCore/bindings/scripts/CodeGeneratorCPP.pm   |   2 +-
  30.  .../bindings/scripts/CodeGeneratorGObject.pm       |   2 +-
  31.  .../WebCore/bindings/scripts/CodeGeneratorJS.pm    |   2 +-
  32.  .../WebCore/bindings/scripts/CodeGeneratorObjC.pm  |   2 +-
  33.  .../WebCore/bindings/scripts/CodeGeneratorV8.pm    | 306 ++++++---
  34.  .../WebCore/bindings/scripts/InFilesCompiler.pm    |  10 +-
  35.  .../Source/WebCore/bindings/scripts/idltopath.pm   | 683 +++++++++++++++++++++
  36.  third_party/WebKit/Source/WebCore/css/makeprop.pl  |   3 +-
  37.  .../WebKit/Source/WebCore/css/makevalues.pl        |   2 +-
  38.  .../Source/WebCore/dom/make_dom_exceptions.pl      |  11 +-
  39.  .../Source/WebCore/dom/make_event_factory.pl       |   6 +-
  40.  .../WebKit/Source/WebCore/dom/make_names.pl        |  58 +-
  41.  .../WebCore/html/parser/create-html-entity-table   |   2 +-
  42.  .../inspector/CodeGeneratorInspectorStrings.py     |   8 +-
  43.  .../WebKit/Source/WebCore/page/make_settings.pl    |   6 +-
  44.  .../WebKit/Source/WebKit/chromium/WebKit.gyp       |   2 +-
  45.  webkit/compositor_bindings/compositor_bindings.gyp |   3 +
  46.  21 files changed, 964 insertions(+), 402 deletions(-)
  47.  create mode 100644 third_party/WebKit/Source/WebCore/bindings/scripts/idltopath.pm
  48.  
  49. diff --git a/third_party/WebKit/Source/Platform/Platform.gyp/Platform.gyp b/third_party/WebKit/Source/Platform/Platform.gyp/Platform.gyp
  50. index 6e5079c..c82e91e 100644
  51. --- a/third_party/WebKit/Source/Platform/Platform.gyp/Platform.gyp
  52. +++ b/third_party/WebKit/Source/Platform/Platform.gyp/Platform.gyp
  53. @@ -43,6 +43,7 @@
  54.              ],
  55.              'include_dirs': [
  56.                  '../chromium',
  57. +                '../..',
  58.                  '<(output_dir)',
  59.              ],
  60.              'defines': [
  61. @@ -52,22 +53,6 @@
  62.                  '<@(platform_files)',
  63.              ],
  64.              'variables': {
  65. -                # List of headers that are #included in Platform API headers that exist inside
  66. -                # the WebCore directory. These are only included when WEBKIT_IMPLEMENTATION=1.
  67. -                # Since Platform/ can't add WebCore/* to the include path, this build step
  68. -                # copies these headers into the shared intermediate directory and adds that to the include path.
  69. -                # This is temporary, the better solution is to move these headers into the Platform
  70. -                # directory for all ports and just use them as normal.
  71. -                'webcore_headers': [
  72. -                    '../../WebCore/platform/graphics/FloatPoint.h',
  73. -                    '../../WebCore/platform/graphics/FloatPoint3D.h',
  74. -                    '../../WebCore/platform/graphics/FloatQuad.h',
  75. -                    '../../WebCore/platform/graphics/FloatRect.h',
  76. -                    '../../WebCore/platform/graphics/FloatSize.h',
  77. -                    '../../WebCore/platform/graphics/IntPoint.h',
  78. -                    '../../WebCore/platform/graphics/IntRect.h',
  79. -                    '../../WebCore/platform/graphics/IntSize.h',
  80. -                ],
  81.                  'output_dir': '<(SHARED_INTERMEDIATE_DIR)/webcore_headers'
  82.              },
  83.              'direct_dependent_settings': {
  84. @@ -91,14 +76,6 @@
  85.                      'msvs_disabled_warnings': [4267, ],
  86.                  }],
  87.              ],
  88. -            'copies': [
  89. -                {
  90. -                    'destination': '<(output_dir)',
  91. -                    'files': [
  92. -                        '<@(webcore_headers)'
  93. -                    ]
  94. -                }
  95. -            ]
  96.          }
  97.      ]
  98.  }
  99. diff --git a/third_party/WebKit/Source/WebCore/WebCore.gyp/WebCore.gyp b/third_party/WebKit/Source/WebCore/WebCore.gyp/WebCore.gyp
  100. index 150bdbe..3fe19f2 100644
  101. --- a/third_party/WebKit/Source/WebCore/WebCore.gyp/WebCore.gyp
  102. +++ b/third_party/WebKit/Source/WebCore/WebCore.gyp/WebCore.gyp
  103. @@ -51,111 +51,6 @@
  104.      'webcore_include_dirs': [
  105.        '../',
  106.        '../..',
  107. -      '../Modules/battery',
  108. -      '../Modules/filesystem',
  109. -      '../Modules/filesystem/chromium',
  110. -      '../Modules/gamepad',
  111. -      '../Modules/geolocation',
  112. -      '../Modules/indexeddb',
  113. -      '../Modules/indexeddb/chromium',
  114. -      '../Modules/mediasource',
  115. -      '../Modules/mediastream',
  116. -      '../Modules/navigatorcontentutils',
  117. -      '../Modules/notifications',
  118. -      '../Modules/proximity',
  119. -      '../Modules/quota',
  120. -      '../Modules/speech',
  121. -      '../Modules/webaudio',
  122. -      '../Modules/webdatabase',
  123. -      '../Modules/webdatabase/chromium',
  124. -      '../Modules/websockets',
  125. -      '../accessibility',
  126. -      '../accessibility/chromium',
  127. -      '../bindings',
  128. -      '../bindings/generic',
  129. -      '../bindings/v8',
  130. -      '../bindings/v8/custom',
  131. -      '../bridge',
  132. -      '../bridge/jni',
  133. -      '../bridge/jni/v8',
  134. -      '../css',
  135. -      '../dom',
  136. -      '../dom/default',
  137. -      '../dom/default/chromium',
  138. -      '../editing',
  139. -      '../fileapi',
  140. -      '../history',
  141. -      '../html',
  142. -      '../html/canvas',
  143. -      '../html/parser',
  144. -      '../html/shadow',
  145. -      '../html/track',
  146. -      '../inspector',
  147. -      '../loader',
  148. -      '../loader/appcache',
  149. -      '../loader/archive',
  150. -      '../loader/archive/cf',
  151. -      '../loader/archive/mhtml',
  152. -      '../loader/cache',
  153. -      '../loader/icon',
  154. -      '../mathml',
  155. -      '../page',
  156. -      '../page/animation',
  157. -      '../page/chromium',
  158. -      '../page/scrolling',
  159. -      '../page/scrolling/chromium',
  160. -      '../platform',
  161. -      '../platform/animation',
  162. -      '../platform/audio',
  163. -      '../platform/audio/chromium',
  164. -      '../platform/chromium',
  165. -      '../platform/chromium/support',
  166. -      '../platform/graphics',
  167. -      '../platform/graphics/chromium',
  168. -      '../platform/graphics/chromium/cc',
  169. -      '../platform/graphics/cpu/arm',
  170. -      '../platform/graphics/cpu/arm/filters',
  171. -      '../platform/graphics/filters',
  172. -      '../platform/graphics/filters/skia',
  173. -      '../platform/graphics/gpu',
  174. -      '../platform/graphics/opentype',
  175. -      '../platform/graphics/skia',
  176. -      '../platform/graphics/transforms',
  177. -      '../platform/image-decoders',
  178. -      '../platform/image-decoders/bmp',
  179. -      '../platform/image-decoders/gif',
  180. -      '../platform/image-decoders/ico',
  181. -      '../platform/image-decoders/jpeg',
  182. -      '../platform/image-decoders/png',
  183. -      '../platform/image-decoders/skia',
  184. -      '../platform/image-decoders/webp',
  185. -      '../platform/image-encoders/skia',
  186. -      '../platform/leveldb',
  187. -      '../platform/mediastream',
  188. -      '../platform/mediastream/chromium',
  189. -      '../platform/mock',
  190. -      '../platform/network',
  191. -      '../platform/network/chromium',
  192. -      '../platform/sql',
  193. -      '../platform/text',
  194. -      '../platform/text/transcoder',
  195. -      '../plugins',
  196. -      '../plugins/chromium',
  197. -      '../rendering',
  198. -      '../rendering/mathml',
  199. -      '../rendering/style',
  200. -      '../rendering/svg',
  201. -      '../storage',
  202. -      '../svg',
  203. -      '../svg/animation',
  204. -      '../svg/graphics',
  205. -      '../svg/graphics/filters',
  206. -      '../svg/properties',
  207. -      '../../ThirdParty/glu',
  208. -      '../workers',
  209. -      '../workers/chromium',
  210. -      '../xml',
  211. -      '../xml/parser',
  212.      ],
  213.  
  214.      'bindings_idl_files': [
  215. @@ -200,32 +95,7 @@
  216.            '<@(webcore_svg_bindings_idl_files)',
  217.          ],
  218.        }],
  219. -      ['OS=="mac"', {
  220. -        'webcore_include_dirs': [
  221. -          # FIXME: Eliminate dependency on platform/mac and related
  222. -          # directories.
  223. -          # FIXME: Eliminate dependency on platform/graphics/mac and
  224. -          # related directories.
  225. -          # platform/graphics/cg may need to stick around, though.
  226. -          '../platform/audio/mac',
  227. -          '../platform/cocoa',
  228. -          '../platform/graphics/cg',
  229. -          '../platform/graphics/cocoa',
  230. -          '../platform/graphics/mac',
  231. -          '../platform/mac',
  232. -          '../platform/text/mac',
  233. -          '../platform/graphics/harfbuzz',
  234. -          '../platform/graphics/harfbuzz/ng',
  235. -        ],
  236. -      }],
  237.        ['OS=="win"', {
  238. -        'webcore_include_dirs': [
  239. -          '../page/win',
  240. -          '../platform/audio/win',
  241. -          '../platform/graphics/win',
  242. -          '../platform/text/win',
  243. -          '../platform/win',
  244. -        ],
  245.          # Using native perl rather than cygwin perl cuts execution time of idl
  246.          # preprocessing rules by a bit more than 50%.
  247.          'perl_exe': '<(DEPTH)/third_party/perl/perl/bin/perl.exe',
  248. @@ -246,12 +116,6 @@
  249.          # FIXME: /usr/bin/gcc won't exist on OSX forever. We want to use /usr/bin/clang once we require Xcode 4.x.
  250.          'preprocessor': '--preprocessor "/usr/bin/gcc -E -P -x c++"'
  251.        }],
  252. -      ['use_x11==1 or OS=="android" or linux_embedded==1', {
  253. -        'webcore_include_dirs': [
  254. -          '../platform/graphics/harfbuzz',
  255. -          '../platform/graphics/harfbuzz/ng',
  256. -        ],
  257. -      }],
  258.        ['OS=="win" and buildtype=="Official"', {
  259.          # On windows official release builds, we try to preserve symbol space.
  260.          'derived_sources_aggregate_files': [
  261. @@ -1168,6 +1032,7 @@
  262.              '../bindings/scripts/IDLParser.pm',
  263.              '../bindings/scripts/IDLAttributes.txt',
  264.              '../bindings/scripts/preprocessor.pm',
  265. +            '../bindings/scripts/idltopath.pm',
  266.              '<!@pymod_do_main(supplemental_idl_files <@(bindings_idl_files))',
  267.            ],
  268.            'outputs': [
  269. @@ -1342,12 +1207,6 @@
  270.              'WEBCORE_NAVIGATOR_PLATFORM="Win32"',
  271.              '__PRETTY_FUNCTION__=__FUNCTION__',
  272.            ],
  273. -          # This is needed because Event.h in this directory is blocked
  274. -          # by a system header on windows.
  275. -          'include_dirs++': ['../dom'],
  276. -          'direct_dependent_settings': {
  277. -            'include_dirs+++': ['../dom'],
  278. -          },
  279.            # In generated bindings code: 'switch contains default but no case'.
  280.            # Disable c4267 warnings until we fix size_t to int truncations.
  281.            'msvs_disabled_warnings': [ 4065, 4267 ],
  282. @@ -2225,11 +2084,6 @@
  283.              ],
  284.            },
  285.          }],
  286. -        ['OS=="win"', {
  287. -          'direct_dependent_settings': {
  288. -            'include_dirs+++': ['../dom'],
  289. -          },
  290. -        }],
  291.          ['OS=="linux" and "WTF_USE_WEBAUDIO_IPP=1" in feature_defines', {
  292.            'link_settings': {
  293.              'ldflags': [
  294. diff --git a/third_party/WebKit/Source/WebCore/WebCore.gyp/scripts/action_derivedsourcesallinone.py b/third_party/WebKit/Source/WebCore/WebCore.gyp/scripts/action_derivedsourcesallinone.py
  295. index bac8081..365f753 100644
  296. --- a/third_party/WebKit/Source/WebCore/WebCore.gyp/scripts/action_derivedsourcesallinone.py
  297. +++ b/third_party/WebKit/Source/WebCore/WebCore.gyp/scripts/action_derivedsourcesallinone.py
  298. @@ -54,7 +54,7 @@ conditionalPattern = re.compile('interface[\s]*\[[^\]]*Conditional=([\_0-9a-zA-Z
  299.  copyrightTemplate = """/*
  300.   * THIS FILE WAS AUTOMATICALLY GENERATED, DO NOT EDIT.
  301.   *
  302. - * This file was generated by the make_jni_lists.py script.
  303. + * This file was generated by the action_derivedsourcesallinone.py/make_jni_lists.py script.
  304.   *
  305.   * Copyright (C) 2009 Google Inc.  All rights reserved.
  306.   *
  307. diff --git a/third_party/WebKit/Source/WebCore/WebCore.gypi b/third_party/WebKit/Source/WebCore/WebCore.gypi
  308. index 54ffa1f..711628b 100644
  309. --- a/third_party/WebKit/Source/WebCore/WebCore.gypi
  310. +++ b/third_party/WebKit/Source/WebCore/WebCore.gypi
  311. @@ -4,89 +4,6 @@
  312.          'webcore_include_dirs': [
  313.            '.',
  314.            '..',
  315. -          'Modules/battery',
  316. -          'Modules/filesystem',
  317. -          'Modules/gamepad',
  318. -          'Modules/geolocation',
  319. -          'Modules/indexeddb',
  320. -          'Modules/mediasource',
  321. -          'Modules/mediastream',
  322. -          'Modules/navigatorcontentutils',
  323. -          'Modules/notifications',
  324. -          'Modules/proximity',
  325. -          'Modules/quota',
  326. -          'Modules/speech',
  327. -          'Modules/webaudio',
  328. -          'Modules/webdatabase',
  329. -          'Modules/websockets',
  330. -          'accessibility',
  331. -          'bindings',
  332. -          'bindings/generic',
  333. -          'bridge',
  334. -          'bridge/jni',
  335. -          'css',
  336. -          'dom',
  337. -          'dom/default',
  338. -          'editing',
  339. -          'fileapi',
  340. -          'history',
  341. -          'html',
  342. -          'html/canvas',
  343. -          'html/parser',
  344. -          'html/shadow',
  345. -          'html/track',
  346. -          'inspector',
  347. -          'loader',
  348. -          'loader/appcache',
  349. -          'loader/archive',
  350. -          'loader/archive/cf',
  351. -          'loader/archive/mhtml',
  352. -          'loader/cache',
  353. -          'loader/icon',
  354. -          'mathml',
  355. -          'page',
  356. -          'page/animation',
  357. -          'page/scrolling',
  358. -          'platform',
  359. -          'platform/animation',
  360. -          'platform/audio',
  361. -          'platform/graphics',
  362. -          'platform/graphics/cpu/arm',
  363. -          'platform/graphics/cpu/arm/filters',
  364. -          'platform/graphics/filters',
  365. -          'platform/graphics/gpu',
  366. -          'platform/graphics/opentype',
  367. -          'platform/graphics/transforms',
  368. -          'platform/image-decoders',
  369. -          'platform/image-decoders/bmp',
  370. -          'platform/image-decoders/gif',
  371. -          'platform/image-decoders/ico',
  372. -          'platform/image-decoders/jpeg',
  373. -          'platform/image-decoders/png',
  374. -          'platform/image-decoders/skia',
  375. -          'platform/image-decoders/webp',
  376. -          'platform/image-encoders/skia',
  377. -          'platform/leveldb',
  378. -          'platform/mediastream',
  379. -          'platform/mock',
  380. -          'platform/network',
  381. -          'platform/sql',
  382. -          'platform/text',
  383. -          'platform/text/transcoder',
  384. -          'plugins',
  385. -          'rendering',
  386. -          'rendering/mathml',
  387. -          'rendering/style',
  388. -          'rendering/svg',
  389. -          'storage',
  390. -          'svg',
  391. -          'svg/animation',
  392. -          'svg/graphics',
  393. -          'svg/graphics/filters',
  394. -          'svg/properties',
  395. -          'workers',
  396. -          'xml',
  397. -          'xml/parser',
  398.          ],
  399.          'webcore_bindings_idl_files': [
  400.              'Modules/battery/BatteryManager.idl',
  401. diff --git a/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorCPP.pm b/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorCPP.pm
  402. index ca0a964..f3fa021 100644
  403. --- a/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorCPP.pm
  404. +++ b/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorCPP.pm
  405. @@ -69,7 +69,7 @@ EOF
  406.  my $implementationLicenseTemplate = << "EOF";
  407.  /*
  408.   * This file is part of the WebKit open source project.
  409. - * This file has been generated by generate-bindings.pl. DO NOT MODIFY!
  410. + * This file has been generated by generate-bindings.pl/CodeGeneratorCPP.pm. DO NOT MODIFY!
  411.   *
  412.   * This library is free software; you can redistribute it and/or
  413.   * modify it under the terms of the GNU Library General Public
  414. diff --git a/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorGObject.pm b/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorGObject.pm
  415. index 06cfaa3..848f6a2 100644
  416. --- a/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorGObject.pm
  417. +++ b/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorGObject.pm
  418. @@ -50,7 +50,7 @@ sub new {
  419.  my $licenceTemplate = << "EOF";
  420.  /*
  421.      This file is part of the WebKit open source project.
  422. -    This file has been generated by generate-bindings.pl. DO NOT MODIFY!
  423. +    This file has been generated by generate-bindings.pl/CodeGeneratorGObject.pm. DO NOT MODIFY!
  424.  
  425.      This library is free software; you can redistribute it and/or
  426.      modify it under the terms of the GNU Library General Public
  427. diff --git a/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm b/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
  428. index 6adc988..94da381 100644
  429. --- a/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
  430. +++ b/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
  431. @@ -51,7 +51,7 @@ my $currentCachedAttribute = 0;
  432.  my $headerTemplate = << "EOF";
  433.  /*
  434.      This file is part of the WebKit open source project.
  435. -    This file has been generated by generate-bindings.pl. DO NOT MODIFY!
  436. +    This file has been generated by generate-bindings.pl/CodeGeneratorJS.pm. DO NOT MODIFY!
  437.  
  438.      This library is free software; you can redistribute it and/or
  439.      modify it under the terms of the GNU Library General Public
  440. diff --git a/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorObjC.pm b/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorObjC.pm
  441. index 2950a2a..80afc9a 100644
  442. --- a/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorObjC.pm
  443. +++ b/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorObjC.pm
  444. @@ -162,7 +162,7 @@ EOF
  445.  my $implementationLicenseTemplate = << "EOF";
  446.  /*
  447.   * This file is part of the WebKit open source project.
  448. - * This file has been generated by generate-bindings.pl. DO NOT MODIFY!
  449. + * This file has been generated by generate-bindings.pl/CodeGeneratorObjC.pm. DO NOT MODIFY!
  450.   *
  451.   * Redistribution and use in source and binary forms, with or without
  452.   * modification, are permitted provided that the following conditions
  453. diff --git a/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm b/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm
  454. index 19fb966..696eed3 100644
  455. --- a/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm
  456. +++ b/third_party/WebKit/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm
  457. @@ -31,6 +31,8 @@ use strict;
  458.  
  459.  use constant FileNamePrefix => "V8";
  460.  
  461. +use idltopath;
  462. +
  463.  my $codeGenerator;
  464.  
  465.  
  466. @@ -45,7 +47,7 @@ my %headerIncludes = ();
  467.  my $headerTemplate = << "EOF";
  468.  /*
  469.      This file is part of the WebKit open source project.
  470. -    This file has been generated by generate-bindings.pl. DO NOT MODIFY!
  471. +    This file has been generated by generate-bindings.pl/CodeGeneratorV8.pm. DO NOT MODIFY!
  472.  
  473.      This library is free software; you can redistribute it and/or
  474.      modify it under the terms of the GNU Library General Public
  475. @@ -124,21 +126,21 @@ sub AddIncludesForType
  476.      }
  477.      if (!$codeGenerator->IsPrimitiveType($type) and !$codeGenerator->IsStringType($type) and !$codeGenerator->SkipIncludeHeader($type) and $type ne "Date") {
  478.          # default, include the same named file
  479. -        AddToImplIncludes(GetV8HeaderName(${type}));
  480. +        AddToImplIncludes("./././" . GetV8HeaderName(${type}));
  481.  
  482.          if ($type =~ /SVGPathSeg/) {
  483.              my $joinedName = $type;
  484.              $joinedName =~ s/Abs|Rel//;
  485. -            AddToImplIncludes("${joinedName}.h");
  486. +            AddToImplIncludes("WebCore/svg/${joinedName}.h");
  487.          }
  488.      }
  489.  
  490.      # additional includes (things needed to compile the bindings but not the header)
  491.  
  492.      if ($type eq "CanvasRenderingContext2D") {
  493. -        AddToImplIncludes("CanvasGradient.h");
  494. -        AddToImplIncludes("CanvasPattern.h");
  495. -        AddToImplIncludes("CanvasStyle.h");
  496. +        AddToImplIncludes("WebCore/html/canvas/CanvasGradient.h");
  497. +        AddToImplIncludes("WebCore/html/canvas/CanvasPattern.h");
  498. +        AddToImplIncludes("WebCore/html/canvas/CanvasStyle.h");
  499.      }
  500.  
  501.      if ($type eq "CanvasGradient" or $type eq "XPathNSResolver") {
  502. @@ -146,11 +148,11 @@ sub AddIncludesForType
  503.      }
  504.  
  505.      if ($type eq "CSSStyleSheet" or $type eq "StyleSheet") {
  506. -        AddToImplIncludes("CSSImportRule.h");
  507. +        AddToImplIncludes("WebCore/css/CSSImportRule.h");
  508.      }
  509.  
  510.      if ($type eq "CSSStyleDeclaration") {
  511. -        AddToImplIncludes("StylePropertySet.h");
  512. +        AddToImplIncludes("WebCore/css/StylePropertySet.h");
  513.      }
  514.  
  515.      if ($type eq "Plugin" or $type eq "PluginArray" or $type eq "MimeTypeArray") {
  516. @@ -197,7 +199,7 @@ END
  517.          GetGenerateIsReachable($interface) eq  "ImplOwnerRoot" ||
  518.          GetGenerateIsReachable($interface) eq  "ImplOwnerNodeRoot") {
  519.  
  520. -        $implIncludes{"V8GCController.h"} = 1;
  521. +        $implIncludes{"WebCore/bindings/v8/V8GCController.h"} = 1;
  522.  
  523.          my $methodName;
  524.          $methodName = "document" if (GetGenerateIsReachable($interface) eq "ImplDocument");
  525. @@ -237,18 +239,18 @@ sub GetSVGPropertyTypes
  526.      my $svgWrappedNativeType = $codeGenerator->GetSVGWrappedTypeNeedingTearOff($implType);
  527.      if ($svgNativeType =~ /SVGPropertyTearOff/) {
  528.          $svgPropertyType = $svgWrappedNativeType;
  529. -        AddToImplIncludes("SVGAnimatedPropertyTearOff.h");
  530. +        AddToImplIncludes("WebCore/svg/properties/SVGAnimatedPropertyTearOff.h");
  531.      } elsif ($svgNativeType =~ /SVGListPropertyTearOff/ or $svgNativeType =~ /SVGStaticListPropertyTearOff/) {
  532.          $svgListPropertyType = $svgWrappedNativeType;
  533. -        $headerIncludes{"SVGAnimatedListPropertyTearOff.h"} = 1;
  534. -        $headerIncludes{"SVGStaticListPropertyTearOff.h"} = 1;
  535. +        $headerIncludes{"WebCore/svg/properties/SVGAnimatedListPropertyTearOff.h"} = 1;
  536. +        $headerIncludes{"WebCore/svg/properties/SVGStaticListPropertyTearOff.h"} = 1;
  537.      } elsif ($svgNativeType =~ /SVGTransformListPropertyTearOff/) {
  538.          $svgListPropertyType = $svgWrappedNativeType;
  539. -        $headerIncludes{"SVGAnimatedListPropertyTearOff.h"} = 1;
  540. -        $headerIncludes{"SVGTransformListPropertyTearOff.h"} = 1;
  541. +        $headerIncludes{"WebCore/svg/properties/SVGAnimatedListPropertyTearOff.h"} = 1;
  542. +        $headerIncludes{"WebCore/svg/properties/SVGTransformListPropertyTearOff.h"} = 1;
  543.      } elsif ($svgNativeType =~ /SVGPathSegListPropertyTearOff/) {
  544.          $svgListPropertyType = $svgWrappedNativeType;
  545. -        $headerIncludes{"SVGPathSegListPropertyTearOff.h"} = 1;
  546. +        $headerIncludes{"WebCore/svg/properties/SVGPathSegListPropertyTearOff.h"} = 1;
  547.      }
  548.  
  549.      if ($svgPropertyType) {
  550. @@ -286,9 +288,9 @@ sub GenerateHeader
  551.      push(@headerContent, GenerateHeaderContentHeader($interface));
  552.  
  553.      $headerIncludes{"wtf/text/StringHash.h"} = 1;
  554. -    $headerIncludes{"WrapperTypeInfo.h"} = 1;
  555. -    $headerIncludes{"V8Binding.h"} = 1;
  556. -    $headerIncludes{"V8DOMWrapper.h"} = 1;
  557. +    $headerIncludes{"WebCore/bindings/v8/WrapperTypeInfo.h"} = 1;
  558. +    $headerIncludes{"WebCore/bindings/v8/V8Binding.h"} = 1;
  559. +    $headerIncludes{"WebCore/bindings/v8/V8DOMWrapper.h"} = 1;
  560.      $headerIncludes{"wtf/HashMap.h"} = 1;
  561.      $headerIncludes{"v8.h"} = 1;
  562.  
  563. @@ -299,9 +301,9 @@ sub GenerateHeader
  564.  
  565.      foreach my $headerInclude (sort keys(%headerIncludes)) {
  566.          if ($headerInclude =~ /wtf|v8\.h/) {
  567. -            push(@headerContent, "#include \<${headerInclude}\>\n");
  568. +            push(@headerContent, "#include \<${headerInclude}\> // fixmebratell43\n");
  569.          } else {
  570. -            push(@headerContent, "#include \"${headerInclude}\"\n");
  571. +            push(@headerContent, "#include \"${headerInclude}\" // fixmebratell44\n");
  572.          }
  573.      }
  574.  
  575. @@ -619,6 +621,95 @@ sub GetInternalFields
  576.      return @customInternalFields;
  577.  }
  578.  
  579. +sub mapInterfaceToIncludePath
  580. +{
  581. +    my $interface = shift;
  582. +
  583. +    return idl_to_path($interface);
  584. +
  585. +    return "WebCore/svg/" if ($interface =~ /^SVG/);
  586. +    return "WebCore/css/" if ($interface =~ /^CSS/);
  587. +    return "WebCore/css/" if ($interface =~ /^WebKitCSS/);
  588. +    return "WebCore/html/canvas/" if ($interface =~ /^Canvas/);
  589. +    return "WebCore/html/canvas/" if ($interface =~ /^DOMPath/);
  590. +    return "WebCore/html/canvas/" if ($interface =~ /^WebGL/);
  591. +    return "WebCore/html/canvas/" if ($interface =~ /^Uint/);
  592. +    return "WebCore/html/canvas/" if ($interface =~ /^Float/);
  593. +    return "WebCore/html/canvas/" if ($interface =~ /^OES/);
  594. +    return "WebCore/html/track/" if ($interface =~ /^Track/);
  595. +    return "WebCore/html/track/" if ($interface =~ /^TextTrack/);
  596. +    return "WebCore/html/" if ($interface =~ /^HTML.*Element/);
  597. +    return "WebCore/html/" if ($interface =~ /^ImageData/);
  598. +    return "WebCore/html/" if ($interface =~ /^TextMetrics/);
  599. +    return "WebCore/html/" if ($interface =~ /^Validity/);
  600. +    return "WebCore/dom/" if ($interface =~ /^Node/);
  601. +    return "WebCore/dom/" if ($interface =~ /^Event/);
  602. +    return "WebCore/dom/" if ($interface =~ /^Attr/);
  603. +    return "WebCore/dom/" if ($interface =~ /^Element/);
  604. +    return "WebCore/dom/" if ($interface =~ /^Document/);
  605. +    return "WebCore/dom/" if ($interface =~ /^CharacterData/);
  606. +    return "WebCore/dom/" if ($interface =~ /^Text$/);
  607. +    return "WebCore/dom/" if ($interface =~ /^CDATA$/);
  608. +    return "WebCore/dom/" if ($interface =~ /^ClientRect/);
  609. +    return "WebCore/dom/" if ($interface =~ /^DOMImplmementation/);
  610. +    return "WebCore/dom/" if ($interface =~ /^Clipboard/);
  611. +    return "WebCore/dom/" if ($interface =~ /^WebKitNamedFlow/);
  612. +    return "WebCore/dom/" if ($interface =~ /^Mutation/);
  613. +    return "WebCore/Modules/encryptedmedia/" if ($interface =~ /^MediaKey/);
  614. +    return "WebCore/Modules/notifications/" if ($interface =~ /^Notification/);
  615. +    return "WebCore/Modules/geolocation/" if ($interface =~ /^Position/);
  616. +    return "WebCore/Modules/mediastream/" if ($interface =~ /^MediaStream/);
  617. +    return "WebCore/Modules/mediastream/" if ($interface =~ /^NavigatorUser/);
  618. +    return "WebCore/Modules/mediastream/" if ($interface =~ /^RTC/);
  619. +    return "WebCore/Modules/mediasource/" if ($interface =~ /^MediaSource/);
  620. +    return "WebCore/Modules/mediasource/" if ($interface =~ /^SourceBuffer/);
  621. +    return "WebCore/Modules/speech/" if ($interface =~ /^Speech/);
  622. +    return "WebCore/Modules/quota/" if ($interface =~ /^StorageInfo/);
  623. +    return "WebCore/storage/" if ($interface =~ /^Storage/);
  624. +    return "WebCore/Modules/webaudio/" if ($interface =~ /Audio/);
  625. +    return "WebCore/Modules/webaudio/" if ($interface =~ /^Analyser/);
  626. +    return "WebCore/Modules/webaudio/" if ($interface =~ /^Biquad/);
  627. +    return "WebCore/Modules/webaudio/" if ($interface =~ /^Channel/);
  628. +    return "WebCore/Modules/webaudio/" if ($interface =~ /^Convolver/);
  629. +    return "WebCore/Modules/webaudio/" if ($interface =~ /^Offline/);
  630. +    return "WebCore/Modules/webaudio/" if ($interface =~ /Wave/);
  631. +    return "WebCore/page/" if ($interface =~ /^Crypto/);
  632. +    return "WebCore/page/" if ($interface =~ /^BarInfo/);
  633. +    return "WebCore/page/" if ($interface =~ /^DOMWindow/);
  634. +    return "WebCore/page/" if ($interface =~ /^Feature/);
  635. +    return "WebCore/page/" if ($interface =~ /^Console/);
  636. +    return "WebCore/page/" if ($interface =~ /^Performance/);
  637. +    return "WebCore/plugins/" if ($interface =~ /^DOMMimeType/);
  638. +    return "WebCore/css/" if ($interface =~ /^Media/);
  639. +    return "WebCore/css/" if ($interface =~ /^Counter/);
  640. +    return "WebCore/css/" if ($interface =~ /^RGBColor/);
  641. +    return "WebCore/dom/" if ($interface =~ /^AutocompleteErrorEvent/);
  642. +    return "WebCore/dom/" if ($interface =~ /^CustomElement/);
  643. +    return "WebCore/xml/" if ($interface =~ /^DOMParser/);
  644. +    return "WebCore/xml/" if ($interface =~ /^XML/);
  645. +    return "WebCore/xml/" if ($interface =~ /^XPath/);
  646. +    return "WebCore/xml/" if ($interface =~ /^XSLT/);
  647. +    return "WebCore/Modules/filesystem/" if ($interface =~ /^Metadata/);
  648. +    return "WebCore/Modules/filesystem/" if ($interface =~ /^Entry/);
  649. +    return "WebCore/Modules/filesystem/" if ($interface =~ /^DOMFileSystem/);
  650. +    return "WebCore/Modules/filesystem/" if ($interface =~ /^DOMWindowFileSystem/);
  651. +    return "WebCore/Modules/filesystem/" if ($interface =~ /^DataTransferItemFileSystem/);
  652. +    return "WebCore/Modules/filesystem/" if ($interface =~ /^FileEntry/);
  653. +    return "WebCore/fileapi/" if ($interface =~ /^Blob/);
  654. +    return "WebCore/fileapi/" if ($interface =~ /^File/);
  655. +    return "WebCore/Modules/websockets/" if ($interface =~ /^CloseEvent/);
  656. +    return "WebCore/Modules/webdatabase/" if ($interface =~ /^Database/);
  657. +    return "WebCore/Modules/indexeddb/" if ($interface =~ /^IDB/);
  658. +    return "WebCore/loader/appcache/" if ($interface =~ /ApplicationCache/);
  659. +    return "WebCore/workers/" if ($interface =~ /Worker/);
  660. +    return "WebCore/dom/" if ($interface =~ /^DataTransfer/);
  661. +    return "WebCore/bindings/scripts/test/" if ($interface =~ /^Text/);
  662. +    return "WebCore/dom/" if ($interface =~ /Event$/);
  663. +    return "WebCore/dom/" if ($interface =~ /^DOM/);
  664. +#    return "WebKit/win/" if ($interface =~ /^IWeb/);
  665. +    return "fixmebratell46/";
  666. +}
  667. +
  668.  sub GetHeaderClassInclude
  669.  {
  670.      my $v8InterfaceName = shift;
  671. @@ -627,7 +718,8 @@ sub GetHeaderClassInclude
  672.      }
  673.      return "wtf/${v8InterfaceName}.h" if $codeGenerator->IsTypedArrayType($v8InterfaceName);
  674.      return "" if ($codeGenerator->SkipIncludeHeader($v8InterfaceName));
  675. -    return "${v8InterfaceName}.h";
  676. +    my $interfacepath = mapInterfaceToIncludePath($v8InterfaceName);
  677. +    return "${interfacepath}${v8InterfaceName}.h";
  678.  }
  679.  
  680.  sub GenerateHeaderCustomInternalFieldIndices
  681. @@ -788,7 +880,7 @@ sub GenerateDomainSafeFunctionGetter
  682.  
  683.      my $newTemplateString = "v8::FunctionTemplate::New(${interfaceName}V8Internal::${funcName}MethodCallback, v8Undefined(), $signature)";
  684.  
  685. -    AddToImplIncludes("Frame.h");
  686. +    AddToImplIncludes("WebCore/page/Frame.h");
  687.      push(@implContentInternals, <<END);
  688.  static v8::Handle<v8::Value> ${funcName}AttrGetter(v8::Local<v8::String> name, const v8::AccessorInfo& info)
  689.  {
  690. @@ -864,7 +956,7 @@ sub GenerateFeatureObservation
  691.      my $measureAs = shift;
  692.  
  693.      if ($measureAs) {
  694. -        AddToImplIncludes("FeatureObserver.h");
  695. +        AddToImplIncludes("WebCore/page/FeatureObserver.h");
  696.          return "    FeatureObserver::observe(activeDOMWindow(BindingState::instance()), FeatureObserver::${measureAs});\n";
  697.      }
  698.  
  699. @@ -960,7 +1052,7 @@ END
  700.          my $url = $attribute->signature->extendedAttributes->{"URL"};
  701.          if ($getterStringUsesImp && $reflect && !$url && $codeGenerator->InheritsInterface($interface, "Node") && $codeGenerator->IsStringType($attrType)) {
  702.              # Generate super-compact call for regular attribute getter:
  703. -            my ($functionName, @arguments) = $codeGenerator->GetterExpression(\%implIncludes, $interfaceName, $attribute);
  704. +            my ($functionName, @arguments) = $codeGenerator->GetterExpression(\%implIncludes, $interfaceName, $attribute); # Take a look at this fixmebratell
  705.              push(@implContentInternals, "    Element* imp = V8Element::toNative(info.Holder());\n");
  706.              push(@implContentInternals, "    return v8String(imp->${functionName}(" . join(", ", @arguments) . "), info.GetIsolate(), ReturnUnsafeHandle);\n");
  707.              push(@implContentInternals, "}\n\n");
  708. @@ -990,7 +1082,7 @@ END
  709.  
  710.      my $useExceptions = 1 if @{$attribute->getterExceptions};
  711.      if ($useExceptions) {
  712. -        AddToImplIncludes("ExceptionCode.h");
  713. +        AddToImplIncludes("WebCore/dom/ExceptionCode.h");
  714.          push(@implContentInternals, "    ExceptionCode ec = 0;\n");
  715.      }
  716.  
  717. @@ -1002,7 +1094,8 @@ END
  718.          push(@arguments, "ec") if $useExceptions;
  719.          if ($attribute->signature->extendedAttributes->{"ImplementedBy"}) {
  720.              my $implementedBy = $attribute->signature->extendedAttributes->{"ImplementedBy"};
  721. -            AddToImplIncludes("${implementedBy}.h");
  722. +            my $implementedByPath = idl_to_path($implementedBy);
  723. +            AddToImplIncludes("./${implementedByPath}${implementedBy}.h");
  724.              unshift(@arguments, "imp") if !$attribute->isStatic;
  725.              $functionName = "${implementedBy}::${functionName}";
  726.          } elsif ($attribute->isStatic) {
  727. @@ -1057,8 +1150,8 @@ END
  728.          my $arrayType = $codeGenerator->GetArrayType($returnType);
  729.          if ($arrayType) {
  730.              if (!$codeGenerator->SkipIncludeHeader($arrayType)) {
  731. -                AddToImplIncludes("V8$arrayType.h");
  732. -                AddToImplIncludes("$arrayType.h");
  733. +                AddToImplIncludes("././././././V8$arrayType.h");
  734. +                AddToImplIncludes("WebCore/./bindings/v8/$arrayType.h");
  735.              }
  736.              push(@implContentInternals, "    return v8Array(${getterString}, info.GetIsolate());\n");
  737.              push(@implContentInternals, "}\n\n");
  738. @@ -1082,13 +1175,13 @@ END
  739.      }
  740.  
  741.      if (($codeGenerator->IsSVGAnimatedType($interfaceName) or $interfaceName eq "SVGViewSpec") and $codeGenerator->IsSVGTypeNeedingTearOff($attrType)) {
  742. -        AddToImplIncludes("V8$attrType.h");
  743. +        AddToImplIncludes("./././././././V8$attrType.h");
  744.          my $svgNativeType = $codeGenerator->GetSVGTypeNeedingTearOff($attrType);
  745.          # Convert from abstract SVGProperty to real type, so the right toJS() method can be invoked.
  746.          push(@implContentInternals, "    return toV8Fast(static_cast<$svgNativeType*>($result), info, imp);\n");
  747.      } elsif ($codeGenerator->IsSVGTypeNeedingTearOff($attrType) and not $interfaceName =~ /List$/) {
  748. -        AddToImplIncludes("V8$attrType.h");
  749. -        AddToImplIncludes("SVGPropertyTearOff.h");
  750. +        AddToImplIncludes("././././././././V8$attrType.h");
  751. +        AddToImplIncludes("WebCore/svg/properties/SVGPropertyTearOff.h");
  752.          my $tearOffType = $codeGenerator->GetSVGTypeNeedingTearOff($attrType);
  753.          my $wrappedValue;
  754.          if ($codeGenerator->IsSVGTypeWithWritablePropertiesNeedingTearOff($attrType) and not defined $attribute->signature->extendedAttributes->{"Immutable"}) {
  755. @@ -1100,7 +1193,7 @@ END
  756.  
  757.              my $selfIsTearOffType = $codeGenerator->IsSVGTypeNeedingTearOff($interfaceName);
  758.              if ($selfIsTearOffType) {
  759. -                AddToImplIncludes("SVGStaticPropertyWithParentTearOff.h");
  760. +                AddToImplIncludes("WebCore/svg/properties/SVGStaticPropertyWithParentTearOff.h");
  761.                  $tearOffType =~ s/SVGPropertyTearOff</SVGStaticPropertyWithParentTearOff<$interfaceName, /;
  762.  
  763.                  if ($result =~ /matrix/ and $interfaceName eq "SVGTransform") {
  764. @@ -1111,7 +1204,7 @@ END
  765.  
  766.                  $wrappedValue = "WTF::getPtr(${tearOffType}::create(wrapper, $result, $updateMethod))";
  767.              } else {
  768. -                AddToImplIncludes("SVGStaticPropertyTearOff.h");
  769. +                AddToImplIncludes("WebCore/svg/properties/SVGStaticPropertyTearOff.h");
  770.                  $tearOffType =~ s/SVGPropertyTearOff</SVGStaticPropertyTearOff<$interfaceName, /;
  771.  
  772.                  $wrappedValue = "WTF::getPtr(${tearOffType}::create(imp, $result, $updateMethod))";
  773. @@ -1125,8 +1218,8 @@ END
  774.          }
  775.          push(@implContentInternals, "    return toV8Fast($wrappedValue, info, imp);\n");
  776.      } elsif ($attribute->signature->type eq "MessagePortArray") {
  777. -        AddToImplIncludes("MessagePort.h");
  778. -        AddToImplIncludes("V8MessagePort.h");
  779. +        AddToImplIncludes("././././././././././MessagePort.h");
  780. +        AddToImplIncludes("././././././././././V8MessagePort.h");
  781.          my $getterFunc = $codeGenerator->WK_lcfirst($attribute->signature->name);
  782.          push(@implContentInternals, <<END);
  783.      MessagePortArray* ports = imp->${getterFunc}();
  784. @@ -1176,7 +1269,7 @@ static void ${interfaceName}ReplaceableAttrSetter(v8::Local<v8::String> name, v8
  785.  {
  786.  END
  787.      if ($interface->extendedAttributes->{"CheckSecurity"}) {
  788. -        AddToImplIncludes("Frame.h");
  789. +        AddToImplIncludes("WebCore/page/Frame.h");
  790.          push(@implContentInternals, <<END);
  791.      ${interfaceName}* imp = V8${interfaceName}::toNative(info.Holder());
  792.      if (!BindingSecurity::shouldAllowAccessToFrame(BindingState::instance(), imp->frame()))
  793. @@ -1259,7 +1352,7 @@ sub GenerateNormalAttrSetter
  794.      $svgNativeType* imp = ${v8InterfaceName}::toNative(info.Holder());
  795.  END
  796.          } else {
  797. -            AddToImplIncludes("ExceptionCode.h");
  798. +            AddToImplIncludes("WebCore/dom/ExceptionCode.h");
  799.              push(@implContentInternals, "    $svgNativeType* wrapper = ${v8InterfaceName}::toNative(info.Holder());\n");
  800.              push(@implContentInternals, "    if (wrapper->isReadOnly()) {\n");
  801.              push(@implContentInternals, "        setDOMException(NO_MODIFICATION_ALLOWED_ERR, info.GetIsolate());\n");
  802. @@ -1278,7 +1371,7 @@ END
  803.              # Generate super-compact call for regular attribute setter:
  804.              my $contentAttributeName = $reflect eq "VALUE_IS_MISSING" ? lc $attrName : $reflect;
  805.              my $namespace = $codeGenerator->NamespaceForAttributeName($interfaceName, $contentAttributeName);
  806. -            AddToImplIncludes("${namespace}.h");
  807. +            AddToImplIncludes("./././././././././././${namespace}.h");
  808.              push(@implContentInternals, "    Element* imp = V8Element::toNative(info.Holder());\n");
  809.              push(@implContentInternals, "    V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID(V8StringResource<WithNullCheck>, stringResource, value);\n");
  810.              push(@implContentInternals, "    imp->setAttribute(${namespace}::${contentAttributeName}Attr, stringResource);\n");
  811. @@ -1338,7 +1431,7 @@ END
  812.      my $useExceptions = 1 if @{$attribute->setterExceptions};
  813.  
  814.      if ($useExceptions) {
  815. -        AddToImplIncludes("ExceptionCode.h");
  816. +        AddToImplIncludes("WebCore/dom/ExceptionCode.h");
  817.          push(@implContentInternals, "    ExceptionCode ec = 0;\n");
  818.      }
  819.  
  820. @@ -1347,16 +1440,16 @@ END
  821.      } else {
  822.          if ($attribute->signature->type eq "EventListener") {
  823.              my $implSetterFunctionName = $codeGenerator->WK_ucfirst($attrName);
  824. -            AddToImplIncludes("V8AbstractEventListener.h");
  825. +            AddToImplIncludes("WebCore/bindings/v8/V8AbstractEventListener.h");
  826.              if (!$codeGenerator->InheritsInterface($interface, "Node")) {
  827.                  push(@implContentInternals, "    transferHiddenDependency(info.Holder(), imp->$attrName(), value, ${v8InterfaceName}::eventListenerCacheIndex, info.GetIsolate());\n");
  828.              }
  829. -            AddToImplIncludes("V8EventListenerList.h");
  830. +            AddToImplIncludes("WebCore/bindings/v8/V8EventListenerList.h");
  831.              if ($interfaceName eq "WorkerContext" and $attribute->signature->name eq "onerror") {
  832. -                AddToImplIncludes("V8WorkerContextErrorHandler.h");
  833. +                AddToImplIncludes("WebCore/bindings/v8/V8WorkerContextErrorHandler.h");
  834.                  push(@implContentInternals, "    imp->set$implSetterFunctionName(V8EventListenerList::findOrCreateWrapper<V8WorkerContextErrorHandler>(value, true)");
  835.              } elsif ($interfaceName eq "DOMWindow" and $attribute->signature->name eq "onerror") {
  836. -                AddToImplIncludes("V8WindowErrorHandler.h");
  837. +                AddToImplIncludes("WebCore/bindings/v8/V8WindowErrorHandler.h");
  838.                  push(@implContentInternals, "    imp->set$implSetterFunctionName(V8EventListenerList::findOrCreateWrapper<V8WindowErrorHandler>(value, true)");
  839.              } else {
  840.                  push(@implContentInternals, "    imp->set$implSetterFunctionName(V8EventListenerList::getEventListener(value, true, ListenerFindOrCreate)");
  841. @@ -1369,7 +1462,8 @@ END
  842.              push(@arguments, "ec") if $useExceptions;
  843.              if ($attribute->signature->extendedAttributes->{"ImplementedBy"}) {
  844.                  my $implementedBy = $attribute->signature->extendedAttributes->{"ImplementedBy"};
  845. -                AddToImplIncludes("${implementedBy}.h");
  846. +                my $implementedByPath = idl_to_path($implementedBy);
  847. +                AddToImplIncludes("./././././././././././././${implementedByPath}${implementedBy}.h");
  848.                  unshift(@arguments, "imp") if !$attribute->isStatic;
  849.                  $functionName = "${implementedBy}::${functionName}";
  850.              } elsif ($attribute->isStatic) {
  851. @@ -1577,7 +1671,7 @@ sub GenerateFunction
  852.          my $passRefPtrHandling = ($name eq "addEventListener") ? "" : ".get()";
  853.          my $hiddenDependencyAction = ($name eq "addEventListener") ? "create" : "remove";
  854.  
  855. -        AddToImplIncludes("V8EventListenerList.h");
  856. +        AddToImplIncludes("WebCore/bindings/v8/V8EventListenerList.h");
  857.          push(@implContentInternals, <<END);
  858.      RefPtr<EventListener> listener = V8EventListenerList::getEventListener(args[1], false, ListenerFind${lookupType});
  859.      if (listener) {
  860. @@ -1602,7 +1696,7 @@ END
  861.      push(@implContentInternals, GenerateArgumentsCountCheck($function, $interface));
  862.  
  863.      if ($name eq "set" and $interface->extendedAttributes->{"TypedArray"}) {
  864. -        AddToImplIncludes("V8ArrayBufferViewCustom.h");
  865. +        AddToImplIncludes("WebCore/bindings/v8/custom/V8ArrayBufferViewCustom.h");
  866.          push(@implContentInternals, <<END);
  867.      return setWebGLArrayHelper<$interfaceName, ${v8InterfaceName}>(args);
  868.  }
  869. @@ -1618,7 +1712,7 @@ END
  870.          if ($interfaceName =~ /List$/) {
  871.              push(@implContentInternals, "    $nativeClassName imp = ${v8InterfaceName}::toNative(args.Holder());\n");
  872.          } else {
  873. -            AddToImplIncludes("ExceptionCode.h");
  874. +            AddToImplIncludes("WebCore/dom/ExceptionCode.h");
  875.              push(@implContentInternals, "    $nativeClassName wrapper = ${v8InterfaceName}::toNative(args.Holder());\n");
  876.              push(@implContentInternals, "    if (wrapper->isReadOnly())\n");
  877.              push(@implContentInternals, "        return setDOMException(NO_MODIFICATION_ALLOWED_ERR, args.GetIsolate());\n");
  878. @@ -1635,7 +1729,7 @@ END
  879.      # Check domain security if needed
  880.      if ($interface->extendedAttributes->{"CheckSecurity"} && !$function->signature->extendedAttributes->{"DoNotCheckSecurity"}) {
  881.          # We have not find real use cases yet.
  882. -        AddToImplIncludes("Frame.h");
  883. +        AddToImplIncludes("WebCore/page/Frame.h");
  884.          push(@implContentInternals, <<END);
  885.      if (!BindingSecurity::shouldAllowAccessToFrame(BindingState::instance(), imp->frame()))
  886.          return v8Undefined();
  887. @@ -1652,7 +1746,7 @@ END
  888.      }
  889.  
  890.      if ($raisesExceptions) {
  891. -        AddToImplIncludes("ExceptionCode.h");
  892. +        AddToImplIncludes("WebCore/dom/ExceptionCode.h");
  893.          push(@implContentInternals, "    ExceptionCode ec = 0;\n");
  894.          push(@implContentInternals, "    {\n");
  895.          # The brace here is needed to prevent the ensuing 'goto fail's from jumping past constructors
  896. @@ -1706,8 +1800,8 @@ sub GenerateCallWith
  897.      if ($function and $codeGenerator->ExtendedAttributeContains($callWith, "ScriptArguments")) {
  898.          push(@$outputArray, $indent . "RefPtr<ScriptArguments> scriptArguments(createScriptArguments(args, " . @{$function->parameters} . "));\n");
  899.          push(@callWithArgs, "scriptArguments.release()");
  900. -        AddToImplIncludes("ScriptArguments.h");
  901. -        AddToImplIncludes("ScriptCallStackFactory.h");
  902. +        AddToImplIncludes("WebCore/inspector/ScriptArguments.h");
  903. +        AddToImplIncludes("WebCore/bindings/v8/ScriptCallStackFactory.h");
  904.      }
  905.      return @callWithArgs;
  906.  }
  907. @@ -1786,10 +1880,10 @@ sub GenerateParametersCheck
  908.              next;
  909.          }
  910.  
  911. -        AddToImplIncludes("ExceptionCode.h");
  912. +        AddToImplIncludes("WebCore/dom/ExceptionCode.h");
  913.          if ($parameter->extendedAttributes->{"Callback"}) {
  914.              my $v8InterfaceName = "V8" . $parameter->type;
  915. -            AddToImplIncludes("$v8InterfaceName.h");
  916. +            AddToImplIncludes("././././././././$v8InterfaceName.h");
  917.              if ($optional) {
  918.                  $parameterCheckString .= "    RefPtr<" . $parameter->type . "> $parameterName;\n";
  919.                  $parameterCheckString .= "    if (args.Length() > $paramIndex && !args[$paramIndex]->IsNull() && !args[$paramIndex]->IsUndefined()) {\n";
  920. @@ -1810,7 +1904,7 @@ sub GenerateParametersCheck
  921.                  $parameterCheckString .= "    if (!std::isnan($nativeValue))\n";
  922.                  $parameterCheckString .= "        $parameterName = clampTo<$paramType>($nativeValue);\n";
  923.          } elsif ($parameter->type eq "SerializedScriptValue") {
  924. -            AddToImplIncludes("SerializedScriptValue.h");
  925. +            AddToImplIncludes("WebCore/bindings/v8/SerializedScriptValue.h");
  926.              my $useTransferList = 0;
  927.              my $transferListName = "";
  928.              my $TransferListName = "";
  929. @@ -1828,7 +1922,7 @@ sub GenerateParametersCheck
  930.                  }
  931.  
  932.                  AddToImplIncludes("wtf/ArrayBuffer.h");
  933. -                AddToImplIncludes("MessagePort.h");
  934. +                AddToImplIncludes("WebCore/dom/MessagePort.h");
  935.                  $TransferListName = ucfirst($transferListName);
  936.                  $parameterCheckString .= "    MessagePortArray messagePortArray$TransferListName;\n";
  937.                  $parameterCheckString .= "    ArrayBufferArray arrayBufferArray$TransferListName;\n";
  938. @@ -1970,7 +2064,7 @@ END
  939.      }
  940.  
  941.      if ($raisesExceptions) {
  942. -        AddToImplIncludes("ExceptionCode.h");
  943. +        AddToImplIncludes("WebCore/dom/ExceptionCode.h");
  944.          push(@implContentInternals, "\n");
  945.          push(@implContentInternals, "    ExceptionCode ec = 0;\n");
  946.      }
  947. @@ -2066,7 +2160,7 @@ sub GenerateEventConstructor
  948.      my $interface = shift;
  949.      my $interfaceName = $interface->name;
  950.  
  951. -    AddToImplIncludes("Dictionary.h");
  952. +    AddToImplIncludes("WebCore/bindings/v8/Dictionary.h");
  953.      push(@implContentInternals, <<END);
  954.  static v8::Handle<v8::Value> constructor(const v8::Arguments& args)
  955.  {
  956. @@ -2125,7 +2219,7 @@ sub GenerateTypedArrayConstructor
  957.      my $interfaceName = $interface->name;
  958.      my $viewType = GetTypeNameOfExternalTypedArray($interface);
  959.      my $type = $interface->extendedAttributes->{"TypedArray"};
  960. -    AddToImplIncludes("V8ArrayBufferViewCustom.h");
  961. +    AddToImplIncludes("WebCore/bindings/v8/custom/V8ArrayBufferViewCustom.h");
  962.  
  963.      push(@implContentInternals, <<END);
  964.  static v8::Handle<v8::Value> constructor(const v8::Arguments& args)
  965. @@ -2170,7 +2264,7 @@ sub GenerateNamedConstructor
  966.          $toEventTarget = "${v8InterfaceName}::toEventTarget";
  967.      }
  968.  
  969. -    AddToImplIncludes("Frame.h");
  970. +    AddToImplIncludes("WebCore/page/Frame.h");
  971.      push(@implContent, <<END);
  972.  WrapperTypeInfo ${v8InterfaceName}Constructor::info = { ${v8InterfaceName}Constructor::GetTemplate, ${v8InterfaceName}::derefObject, $toActiveDOMObject, $toEventTarget, 0, ${v8InterfaceName}::installPerContextPrototypeProperties, 0, WrapperTypeObjectPrototype };
  973.  
  974. @@ -2191,7 +2285,7 @@ END
  975.      push(@implContent, GenerateArgumentsCountCheck($function, $interface));
  976.  
  977.      if ($raisesExceptions) {
  978. -        AddToImplIncludes("ExceptionCode.h");
  979. +        AddToImplIncludes("WebCore/dom/ExceptionCode.h");
  980.          push(@implContent, "\n");
  981.          push(@implContent, "    ExceptionCode ec = 0;\n");
  982.      }
  983. @@ -2344,7 +2438,11 @@ sub GenerateSingleBatchedAttribute
  984.          # We do not generate the header file for NamedConstructor of class XXXX,
  985.          # since we generate the NamedConstructor declaration into the header file of class XXXX.
  986.          if ($constructorType !~ /Constructor$/ || $attribute->signature->extendedAttributes->{"V8CustomConstructor"} || $attribute->signature->extendedAttributes->{"CustomConstructor"}) {
  987. -            AddToImplIncludes("V8${constructorType}.h", $attribute->signature->extendedAttributes->{"Conditional"});
  988. +            my $includepath = "";
  989. +            if ($constructorType eq "HTMLImageElementConstructor") {
  990. +                $includepath = "WebCore/bindings/v8/custom/";
  991. +            }
  992. +            AddToImplIncludes("./././././././././${includepath}V8${constructorType}.h", $attribute->signature->extendedAttributes->{"Conditional"});
  993.          }
  994.          $data = "&V8${constructorType}::info";
  995.          $getter = "${interfaceName}V8Internal::${interfaceName}ConstructorGetter";
  996. @@ -2507,7 +2605,7 @@ sub GenerateImplementationIndexer
  997.          return;
  998.      }
  999.  
  1000. -    AddToImplIncludes("V8Collection.h");
  1001. +    AddToImplIncludes("WebCore/bindings/v8/V8Collection.h");
  1002.  
  1003.      if (!$indexer) {
  1004.          $indexer = $codeGenerator->FindSuperMethod($interface, "item");
  1005. @@ -2537,7 +2635,7 @@ END
  1006.      setCollectionIndexedGetter<${interfaceName}, ${indexerType}>(desc);
  1007.  END
  1008.              # Include the header for this indexer type, because setCollectionIndexedGetter() requires toV8() for this type.
  1009. -            AddToImplIncludes("V8${indexerType}.h");
  1010. +            AddToImplIncludes("./././././././././V8${indexerType}.h");
  1011.          }
  1012.  
  1013.          return;
  1014. @@ -2589,7 +2687,7 @@ sub GenerateImplementationNamedPropertyGetter
  1015.      }
  1016.  
  1017.      if ($namedPropertyGetter && $namedPropertyGetter->type ne "Node" && !$namedPropertyGetter->extendedAttributes->{"Custom"} && !$hasCustomNamedGetter) {
  1018. -        AddToImplIncludes("V8Collection.h");
  1019. +        AddToImplIncludes("WebCore/bindings/v8/V8Collection.h");
  1020.          my $type = $namedPropertyGetter->type;
  1021.          push(@implContent, <<END);
  1022.      setCollectionNamedGetter<${interfaceName}, ${type}>(desc);
  1023. @@ -2659,11 +2757,11 @@ sub GenerateImplementation
  1024.      # - Add default header template
  1025.      push(@implContentHeader, GenerateImplementationContentHeader($interface));
  1026.  
  1027. -    AddToImplIncludes("BindingState.h");
  1028. -    AddToImplIncludes("ContextFeatures.h");
  1029. -    AddToImplIncludes("RuntimeEnabledFeatures.h");
  1030. -    AddToImplIncludes("V8Binding.h");
  1031. -    AddToImplIncludes("V8DOMWrapper.h");
  1032. +    AddToImplIncludes("WebCore/bindings/v8/BindingState.h");
  1033. +    AddToImplIncludes("WebCore/dom/ContextFeatures.h");
  1034. +    AddToImplIncludes("WebCore/bindings/generic/RuntimeEnabledFeatures.h");
  1035. +    AddToImplIncludes("WebCore/bindings/v8/V8Binding.h");
  1036. +    AddToImplIncludes("WebCore/bindings/v8/V8DOMWrapper.h");
  1037.  
  1038.      AddIncludesForType($interfaceName);
  1039.  
  1040. @@ -2676,7 +2774,7 @@ sub GenerateImplementation
  1041.      my $parentClassTemplate = "";
  1042.      foreach (@{$interface->parents}) {
  1043.          my $parent = $_;
  1044. -        AddToImplIncludes("V8${parent}.h");
  1045. +        AddToImplIncludes("././././././././././V8${parent}.h");
  1046.          $parentClass = "V8" . $parent;
  1047.          $parentClassTemplate = $parentClass . "::GetTemplate(isolate, worldType)";
  1048.          last;
  1049. @@ -2754,7 +2852,7 @@ END
  1050.          }
  1051.  
  1052.          if ($attrType eq "SerializedScriptValue") {
  1053. -            AddToImplIncludes("SerializedScriptValue.h");
  1054. +            AddToImplIncludes("WebCore/bindings/v8/SerializedScriptValue.h");
  1055.          }
  1056.  
  1057.          GenerateNormalAttrGetter($attribute, $interface);
  1058. @@ -2924,7 +3022,8 @@ END
  1059.          my $conditional = $attrExt->{"Conditional"};
  1060.          my $implementedBy = $attrExt->{"ImplementedBy"};
  1061.          if ($implementedBy) {
  1062. -            AddToImplIncludes("${implementedBy}.h");
  1063. +            my $implementedByPath = idl_to_path($implementedBy);
  1064. +            AddToImplIncludes("././${implementedByPath}${implementedBy}.h");
  1065.          }
  1066.          if ($attrExt->{"V8EnabledAtRuntime"}) {
  1067.              push(@constantsEnabledAtRuntime, $constant);
  1068. @@ -3321,7 +3420,7 @@ sub GenerateImplementationContentHeader
  1069.  
  1070.      push(@implContentHeader, "\n#include \"config.h\"\n");
  1071.      push(@implContentHeader, "#if ${conditionalString}\n") if $conditionalString;
  1072. -    push(@implContentHeader, "#include \"${v8InterfaceName}.h\"\n\n");
  1073. +    push(@implContentHeader, "#include \"${v8InterfaceName}.h\" // fixmebratell72\n\n");
  1074.      return @implContentHeader;
  1075.  }
  1076.  
  1077. @@ -3338,10 +3437,11 @@ sub GenerateCallbackHeader
  1078.      push(@headerContent, GenerateHeaderContentHeader($interface));
  1079.  
  1080.      my @unsortedIncludes = ();
  1081. -    push(@unsortedIncludes, "#include \"ActiveDOMCallback.h\"");
  1082. -    push(@unsortedIncludes, "#include \"$interfaceName.h\"");
  1083. -    push(@unsortedIncludes, "#include \"ScopedPersistent.h\"");
  1084. -    push(@unsortedIncludes, "#include \"WorldContextHandle.h\"");
  1085. +    push(@unsortedIncludes, "#include \"WebCore/bindings/generic/ActiveDOMCallback.h\"");
  1086. +    my $interfacePath = idl_to_path($interfaceName);
  1087. +    push(@unsortedIncludes, "#include \"$interfacePath$interfaceName.h\" // fixmebratell71");
  1088. +    push(@unsortedIncludes, "#include \"WebCore/bindings/v8/ScopedPersistent.h\"");
  1089. +    push(@unsortedIncludes, "#include \"WebCore/bindings/v8/WorldContextHandle.h\"");
  1090.      push(@unsortedIncludes, "#include <v8.h>");
  1091.      push(@unsortedIncludes, "#include <wtf/Forward.h>");
  1092.      push(@headerContent, join("\n", sort @unsortedIncludes));
  1093. @@ -3415,9 +3515,9 @@ sub GenerateCallbackImplementation
  1094.      # - Add default header template
  1095.      push(@implContentHeader, GenerateImplementationContentHeader($interface));
  1096.  
  1097. -    AddToImplIncludes("ScriptExecutionContext.h");
  1098. -    AddToImplIncludes("V8Binding.h");
  1099. -    AddToImplIncludes("V8Callback.h");
  1100. +    AddToImplIncludes("WebCore/dom/ScriptExecutionContext.h");
  1101. +    AddToImplIncludes("WebCore/bindings/v8/V8Binding.h");
  1102. +    AddToImplIncludes("WebCore/bindings/v8/V8Callback.h");
  1103.  
  1104.      push(@implContent, "#include <wtf/Assertions.h>\n\n");
  1105.      push(@implContent, "namespace WebCore {\n\n");
  1106. @@ -3538,7 +3638,7 @@ sub GenerateToV8Converters
  1107.          return;
  1108.      }
  1109.  
  1110. -    AddToImplIncludes("Frame.h");
  1111. +    AddToImplIncludes("WebCore/page/Frame.h");
  1112.  
  1113.      my $createWrapperArgumentType = GetPassRefPtrType($nativeType);
  1114.      my $baseType = BaseInterfaceName($interface);
  1115. @@ -3758,7 +3858,8 @@ sub GenerateFunctionCallString
  1116.      my $functionName;
  1117.      my $implementedBy = $function->signature->extendedAttributes->{"ImplementedBy"};
  1118.      if ($implementedBy) {
  1119. -        AddToImplIncludes("${implementedBy}.h");
  1120. +        my $implementedByPath = idl_to_path($implementedBy);
  1121. +        AddToImplIncludes("./././${implementedByPath}${implementedBy}.h");
  1122.          unshift(@arguments, "imp") if !$function->isStatic;
  1123.          $functionName = "${implementedBy}::${name}";
  1124.      } elsif ($function->isStatic) {
  1125. @@ -3836,7 +3937,7 @@ sub GenerateFunctionCallString
  1126.  
  1127.      if ($isSVGTearOffType) {
  1128.          AddToImplIncludes("V8$returnType.h");
  1129. -        AddToImplIncludes("SVGPropertyTearOff.h");
  1130. +        AddToImplIncludes("WebCore/svg/properties/SVGPropertyTearOff.h");
  1131.          my $svgNativeType = $codeGenerator->GetSVGTypeNeedingTearOff($returnType);
  1132.          # FIXME: Update for all ScriptWrappables.
  1133.          if (IsDOMNodeType($interfaceName)) {
  1134. @@ -3964,7 +4065,7 @@ sub TypeCanFailConversion
  1135.      my $signature = shift;
  1136.      my $type = $signature->type;
  1137.  
  1138. -    AddToImplIncludes("ExceptionCode.h") if $type eq "Attr";
  1139. +    AddToImplIncludes("WebCore/dom/ExceptionCode.h") if $type eq "Attr";
  1140.      return 1 if $type eq "Attr";
  1141.      return 0;
  1142.  }
  1143. @@ -3997,17 +4098,17 @@ sub JSValueToNative
  1144.      }
  1145.  
  1146.      if ($type eq "SerializedScriptValue") {
  1147. -        AddToImplIncludes("SerializedScriptValue.h");
  1148. +        AddToImplIncludes("WebCore/bindings/v8/SerializedScriptValue.h");
  1149.          return "SerializedScriptValue::create($value, $getIsolate)";
  1150.      }
  1151.  
  1152.      if ($type eq "Dictionary") {
  1153. -        AddToImplIncludes("Dictionary.h");
  1154. +        AddToImplIncludes("WebCore/bindings/v8/Dictionary.h");
  1155.          return "Dictionary($value, $getIsolate)";
  1156.      }
  1157.  
  1158.      if ($type eq "any") {
  1159. -        AddToImplIncludes("ScriptValue.h");
  1160. +        AddToImplIncludes("WebCore/bindings/v8/ScriptValue.h");
  1161.          return "ScriptValue($value)";
  1162.      }
  1163.  
  1164. @@ -4016,7 +4117,7 @@ sub JSValueToNative
  1165.      }
  1166.  
  1167.      if ($type eq "MediaQueryListListener") {
  1168. -        AddToImplIncludes("MediaQueryListListener.h");
  1169. +        AddToImplIncludes("WebCore/css/MediaQueryListListener.h");
  1170.          return "MediaQueryListListener::create(" . $value . ")";
  1171.      }
  1172.  
  1173. @@ -4034,7 +4135,7 @@ sub JSValueToNative
  1174.  
  1175.      if ($arrayOrSequenceType) {
  1176.          if ($codeGenerator->IsRefPtrType($arrayOrSequenceType)) {
  1177. -            AddToImplIncludes("V8${arrayOrSequenceType}.h");
  1178. +            AddToImplIncludes("./././V8${arrayOrSequenceType}.h");
  1179.              return "(toRefPtrNativeArray<${arrayOrSequenceType}, V8${arrayOrSequenceType}>($value, $getIsolate))";
  1180.          }
  1181.          return "toNativeArray<" . GetNativeType($arrayOrSequenceType) . ">($value)";
  1182. @@ -4042,7 +4143,8 @@ sub JSValueToNative
  1183.  
  1184.      AddIncludesForType($type);
  1185.  
  1186. -    AddToImplIncludes("V8${type}.h");
  1187. +    AddToImplIncludes("././././V8${type}.h");
  1188. +
  1189.      return "V8${type}::HasInstance($value, $getIsolate) ? V8${type}::toNative(v8::Handle<v8::Object>::Cast($value)) : 0";
  1190.  }
  1191.  
  1192. @@ -4050,9 +4152,10 @@ sub GetV8HeaderName
  1193.  {
  1194.      my $type = shift;
  1195.      return "V8Event.h" if $type eq "DOMTimeStamp";
  1196. -    return "EventListener.h" if $type eq "EventListener";
  1197. -    return "SerializedScriptValue.h" if $type eq "SerializedScriptValue";
  1198. -    return "ScriptValue.h" if $type eq "any";
  1199. +    return "WebCore/dom/EventListener.h" if $type eq "EventListener";
  1200. +    return "WebCore/bindings/v8/SerializedScriptValue.h" if $type eq "SerializedScriptValue";
  1201. +    return "WebCore/bindings/v8/ScriptValue.h" if $type eq "any";
  1202. +    return "WebCore/bindings/v8/V8GCController.h" if $type eq "GCController";
  1203.      return "V8${type}.h";
  1204.  }
  1205.  
  1206. @@ -4082,11 +4185,11 @@ sub CreateCustomSignature
  1207.                  if ($arrayOrSequenceType) {
  1208.                      if ($arrayType eq "DOMString") {
  1209.                          AddToImplIncludes("V8DOMStringList.h");
  1210. -                        AddToImplIncludes("DOMStringList.h");
  1211. +                        AddToImplIncludes("WebCore/dom/DOMStringList.h");
  1212.  
  1213.                      } elsif ($codeGenerator->IsRefPtrType($arrayOrSequenceType)) {
  1214.                          AddToImplIncludes(GetV8HeaderName($arrayOrSequenceType));
  1215. -                        AddToImplIncludes("${arrayOrSequenceType}.h");
  1216. +                        AddToImplIncludes("./././././${arrayOrSequenceType}.h");
  1217.                      } else {
  1218.                          $result .= "v8::Handle<v8::FunctionTemplate>()";
  1219.                          next;
  1220. @@ -4283,11 +4386,12 @@ sub NativeToJSValue
  1221.      if ($arrayOrSequenceType) {
  1222.          if ($arrayType eq "DOMString") {
  1223.              AddToImplIncludes("V8DOMStringList.h");
  1224. -            AddToImplIncludes("DOMStringList.h");
  1225. +            AddToImplIncludes("WebCore/dom/DOMStringList.h");
  1226.  
  1227.          } elsif ($codeGenerator->IsRefPtrType($arrayOrSequenceType)) {
  1228.              AddToImplIncludes(GetV8HeaderName($arrayOrSequenceType));
  1229. -            AddToImplIncludes("${arrayOrSequenceType}.h");
  1230. +            my $includepath = idl_to_path($arrayOrSequenceType); # This is not an arraytype (always?). It's things like ScriptProfileNode, MediaStreamTream, MediaStream.
  1231. +            AddToImplIncludes("././././././././././././././${includepath}${arrayOrSequenceType}.h");
  1232.          }
  1233.          return "v8Array($value, $getIsolate)";
  1234.      }
  1235. @@ -4302,12 +4406,12 @@ sub NativeToJSValue
  1236.      }
  1237.  
  1238.      if ($type eq "EventListener") {
  1239. -        AddToImplIncludes("V8AbstractEventListener.h");
  1240. +        AddToImplIncludes("WebCore/bindings/v8/V8AbstractEventListener.h");
  1241.          return "${value} ? v8::Handle<v8::Value>(static_cast<V8AbstractEventListener*>(${value})->getListenerObject(imp->scriptExecutionContext())) : v8::Handle<v8::Value>(v8Null($getIsolate))";
  1242.      }
  1243.  
  1244.      if ($type eq "SerializedScriptValue") {
  1245. -        AddToImplIncludes("$type.h");
  1246. +        AddToImplIncludes("WebCore/bindings/v8/SerializedScriptValue.h");
  1247.          return "$value ? $value->deserialize() : v8::Handle<v8::Value>(v8Null($getIsolate))";
  1248.      }
  1249.  
  1250. @@ -4357,12 +4461,12 @@ sub WriteData
  1251.          }
  1252.      }
  1253.      foreach my $include (sort @includes) {
  1254. -        $contents .= "#include $include\n";
  1255. +        $contents .= "#include $include // fixmebratell73\n";
  1256.      }
  1257.      foreach my $condition (sort keys %implIncludeConditions) {
  1258.          $contents .= "\n#if " . $codeGenerator->GenerateConditionalStringFromAttributeValue($condition) . "\n";
  1259.          foreach my $include (sort @{$implIncludeConditions{$condition}}) {
  1260. -            $contents .= "#include $include\n";
  1261. +            $contents .= "#include $include // fixmebratell74\n";
  1262.          }
  1263.          $contents .= "#endif\n";
  1264.      }
  1265. diff --git a/third_party/WebKit/Source/WebCore/bindings/scripts/InFilesCompiler.pm b/third_party/WebKit/Source/WebCore/bindings/scripts/InFilesCompiler.pm
  1266. index 3dcd772..627eaf0 100644
  1267. --- a/third_party/WebKit/Source/WebCore/bindings/scripts/InFilesCompiler.pm
  1268. +++ b/third_party/WebKit/Source/WebCore/bindings/scripts/InFilesCompiler.pm
  1269. @@ -37,6 +37,7 @@ require Config;
  1270.  
  1271.  package InFilesCompiler;
  1272.  
  1273. +use idltopath;
  1274.  my $inputFile = "";
  1275.  my $outputDir = ".";
  1276.  my $defaultItemFactory;
  1277. @@ -116,6 +117,8 @@ sub license()
  1278.      return "/*
  1279.   * THIS FILE WAS AUTOMATICALLY GENERATED, DO NOT EDIT.
  1280.   *
  1281. + * This file was generated by the make_names.pl/InFilesCompiler.pm script.
  1282. + *
  1283.   * Copyright (C) 2011 Google Inc.  All rights reserved.
  1284.   *
  1285.   * Redistribution and use in source and binary forms, with or without
  1286. @@ -276,13 +279,14 @@ sub generateHeadersHeader()
  1287.  
  1288.          next if defined($includedInterfaces{$interfaceName});
  1289.          $includedInterfaces{$interfaceName} = 1;
  1290. +        my $includepath = idl_to_path($interfaceName);
  1291.  
  1292.          print F "#if " . $object->conditionalStringFromAttributeValue($conditional) . "\n" if $conditional;
  1293. -        print F "#include \"$interfaceName.h\"\n";
  1294. +        print F "#include \"$includepath$interfaceName.h\" // fixmebratell88\n";
  1295.          print F "#if USE(JSC)\n";
  1296. -        print F "#include \"JS$interfaceName.h\"\n";
  1297. +        print F "#include \"JS$interfaceName.h\" // fixmebratell87\n";
  1298.          print F "#elif USE(V8)\n";
  1299. -        print F "#include \"V8$interfaceName.h\"\n";
  1300. +        print F "#include \"V8$interfaceName.h\" // fixmebratell86\n";
  1301.          print F "#endif\n";
  1302.          print F "#endif\n" if $conditional;
  1303.      }
  1304. diff --git a/third_party/WebKit/Source/WebCore/bindings/scripts/idltopath.pm b/third_party/WebKit/Source/WebCore/bindings/scripts/idltopath.pm
  1305. new file mode 100644
  1306. index 0000000..8649b09
  1307. --- /dev/null
  1308. +++ b/third_party/WebKit/Source/WebCore/bindings/scripts/idltopath.pm
  1309. @@ -0,0 +1,683 @@
  1310. +#!/usr/bin/perl
  1311. +use strict;
  1312. +use warnings;
  1313. +use Exporter;
  1314. +
  1315. +# GENERATED BY idltopath.py, DO NOT MODIFY BY HAND.
  1316. +# (c) 2013 Daniel Bratell, Opera Software ASA
  1317. +
  1318. +package idltopath;
  1319. +
  1320. +our @ISA = qw( Exporter );
  1321. +# our @EXPORT_OK = qw( export_me export_me_too );
  1322. +# These are exported by default.
  1323. +our @EXPORT = qw( idl_to_path );
  1324. +
  1325. +my %idl_to_path_hash = (
  1326. +    "TestCallback" => "WebCore/bindings/scripts/test",
  1327. +    "TestCustomNamedGetter" => "WebCore/bindings/scripts/test",
  1328. +    "TestDomainSecurity" => "WebCore/bindings/scripts/test",
  1329. +    "TestEventConstructor" => "WebCore/bindings/scripts/test",
  1330. +    "TestEventTarget" => "WebCore/bindings/scripts/test",
  1331. +    "TestException" => "WebCore/bindings/scripts/test",
  1332. +    "TestInterface" => "WebCore/bindings/scripts/test",
  1333. +    "TestMediaQueryListListener" => "WebCore/bindings/scripts/test",
  1334. +    "TestNamedConstructor" => "WebCore/bindings/scripts/test",
  1335. +    "TestNode" => "WebCore/bindings/scripts/test",
  1336. +    "TestObj" => "WebCore/bindings/scripts/test",
  1337. +    "TestOverloadedConstructors" => "WebCore/bindings/scripts/test",
  1338. +    "TestSerializedScriptValueInterface" => "WebCore/bindings/scripts/test",
  1339. +    "TestSupplemental" => "WebCore/bindings/scripts/test",
  1340. +    "TestTypedArray" => "WebCore/bindings/scripts/test",
  1341. +    "TestTypedefs" => "WebCore/bindings/scripts/test",
  1342. +    "Counter" => "WebCore/css",
  1343. +    "CSSCharsetRule" => "WebCore/css",
  1344. +    "CSSFontFaceRule" => "WebCore/css",
  1345. +    "CSSHostRule" => "WebCore/css",
  1346. +    "CSSImportRule" => "WebCore/css",
  1347. +    "CSSMediaRule" => "WebCore/css",
  1348. +    "CSSPageRule" => "WebCore/css",
  1349. +    "CSSPrimitiveValue" => "WebCore/css",
  1350. +    "CSSRule" => "WebCore/css",
  1351. +    "CSSRuleList" => "WebCore/css",
  1352. +    "CSSStyleDeclaration" => "WebCore/css",
  1353. +    "CSSStyleRule" => "WebCore/css",
  1354. +    "CSSStyleSheet" => "WebCore/css",
  1355. +    "CSSSupportsRule" => "WebCore/css",
  1356. +    "CSSUnknownRule" => "WebCore/css",
  1357. +    "CSSValue" => "WebCore/css",
  1358. +    "CSSValueList" => "WebCore/css",
  1359. +    "DOMWindowCSS" => "WebCore/css",
  1360. +    "MediaList" => "WebCore/css",
  1361. +    "MediaQueryList" => "WebCore/css",
  1362. +    "MediaQueryListListener" => "WebCore/css",
  1363. +    "Rect" => "WebCore/css",
  1364. +    "RGBColor" => "WebCore/css",
  1365. +    "StyleMedia" => "WebCore/css",
  1366. +    "StyleSheet" => "WebCore/css",
  1367. +    "StyleSheetList" => "WebCore/css",
  1368. +    "WebKitCSSFilterRule" => "WebCore/css",
  1369. +    "WebKitCSSFilterValue" => "WebCore/css",
  1370. +    "WebKitCSSKeyframeRule" => "WebCore/css",
  1371. +    "WebKitCSSKeyframesRule" => "WebCore/css",
  1372. +    "WebKitCSSMatrix" => "WebCore/css",
  1373. +    "WebKitCSSMixFunctionValue" => "WebCore/css",
  1374. +    "WebKitCSSRegionRule" => "WebCore/css",
  1375. +    "WebKitCSSTransformValue" => "WebCore/css",
  1376. +    "WebKitCSSViewportRule" => "WebCore/css",
  1377. +    "Attr" => "WebCore/dom",
  1378. +    "AutocompleteErrorEvent" => "WebCore/dom",
  1379. +    "BeforeLoadEvent" => "WebCore/dom",
  1380. +    "CDATASection" => "WebCore/dom",
  1381. +    "CharacterData" => "WebCore/dom",
  1382. +    "ClientRect" => "WebCore/dom",
  1383. +    "ClientRectList" => "WebCore/dom",
  1384. +    "Clipboard" => "WebCore/dom",
  1385. +    "Comment" => "WebCore/dom",
  1386. +    "CompositionEvent" => "WebCore/dom",
  1387. +    "CustomElementConstructor" => "WebCore/dom",
  1388. +    "CustomEvent" => "WebCore/dom",
  1389. +    "DataTransferItem" => "WebCore/dom",
  1390. +    "DataTransferItemList" => "WebCore/dom",
  1391. +    "DeviceMotionEvent" => "WebCore/dom",
  1392. +    "DeviceOrientationEvent" => "WebCore/dom",
  1393. +    "Document" => "WebCore/dom",
  1394. +    "DocumentFragment" => "WebCore/dom",
  1395. +    "DocumentType" => "WebCore/dom",
  1396. +    "DOMCoreException" => "WebCore/dom",
  1397. +    "DOMError" => "WebCore/dom",
  1398. +    "DOMImplementation" => "WebCore/dom",
  1399. +    "DOMNamedFlowCollection" => "WebCore/dom",
  1400. +    "DOMStringList" => "WebCore/dom",
  1401. +    "DOMStringMap" => "WebCore/dom",
  1402. +    "Element" => "WebCore/dom",
  1403. +    "Entity" => "WebCore/dom",
  1404. +    "EntityReference" => "WebCore/dom",
  1405. +    "ErrorEvent" => "WebCore/dom",
  1406. +    "Event" => "WebCore/dom",
  1407. +    "EventException" => "WebCore/dom",
  1408. +    "EventListener" => "WebCore/dom",
  1409. +    "EventTarget" => "WebCore/dom",
  1410. +    "FocusEvent" => "WebCore/dom",
  1411. +    "HashChangeEvent" => "WebCore/dom",
  1412. +    "KeyboardEvent" => "WebCore/dom",
  1413. +    "MessageChannel" => "WebCore/dom",
  1414. +    "MessageEvent" => "WebCore/dom",
  1415. +    "MessagePort" => "WebCore/dom",
  1416. +    "MouseEvent" => "WebCore/dom",
  1417. +    "MutationEvent" => "WebCore/dom",
  1418. +    "MutationObserver" => "WebCore/dom",
  1419. +    "MutationRecord" => "WebCore/dom",
  1420. +    "NamedNodeMap" => "WebCore/dom",
  1421. +    "Node" => "WebCore/dom",
  1422. +    "NodeFilter" => "WebCore/dom",
  1423. +    "NodeIterator" => "WebCore/dom",
  1424. +    "NodeList" => "WebCore/dom",
  1425. +    "Notation" => "WebCore/dom",
  1426. +    "OverflowEvent" => "WebCore/dom",
  1427. +    "PageTransitionEvent" => "WebCore/dom",
  1428. +    "PopStateEvent" => "WebCore/dom",
  1429. +    "ProcessingInstruction" => "WebCore/dom",
  1430. +    "ProgressEvent" => "WebCore/dom",
  1431. +    "PropertyNodeList" => "WebCore/dom",
  1432. +    "Range" => "WebCore/dom",
  1433. +    "RangeException" => "WebCore/dom",
  1434. +    "RequestAnimationFrameCallback" => "WebCore/dom",
  1435. +    "ShadowRoot" => "WebCore/dom",
  1436. +    "StringCallback" => "WebCore/dom",
  1437. +    "Text" => "WebCore/dom",
  1438. +    "TextEvent" => "WebCore/dom",
  1439. +    "Touch" => "WebCore/dom",
  1440. +    "TouchEvent" => "WebCore/dom",
  1441. +    "TouchList" => "WebCore/dom",
  1442. +    "TransitionEvent" => "WebCore/dom",
  1443. +    "TreeWalker" => "WebCore/dom",
  1444. +    "UIEvent" => "WebCore/dom",
  1445. +    "WebKitAnimationEvent" => "WebCore/dom",
  1446. +    "WebKitNamedFlow" => "WebCore/dom",
  1447. +    "WebKitTransitionEvent" => "WebCore/dom",
  1448. +    "WheelEvent" => "WebCore/dom",
  1449. +    "Blob" => "WebCore/fileapi",
  1450. +    "File" => "WebCore/fileapi",
  1451. +    "FileError" => "WebCore/fileapi",
  1452. +    "FileException" => "WebCore/fileapi",
  1453. +    "FileList" => "WebCore/fileapi",
  1454. +    "FileReader" => "WebCore/fileapi",
  1455. +    "FileReaderSync" => "WebCore/fileapi",
  1456. +    "DOMFormData" => "WebCore/html",
  1457. +    "DOMSettableTokenList" => "WebCore/html",
  1458. +    "DOMTokenList" => "WebCore/html",
  1459. +    "DOMURL" => "WebCore/html",
  1460. +    "HTMLAllCollection" => "WebCore/html",
  1461. +    "HTMLAnchorElement" => "WebCore/html",
  1462. +    "HTMLAppletElement" => "WebCore/html",
  1463. +    "HTMLAreaElement" => "WebCore/html",
  1464. +    "HTMLAudioElement" => "WebCore/html",
  1465. +    "HTMLBaseElement" => "WebCore/html",
  1466. +    "HTMLBaseFontElement" => "WebCore/html",
  1467. +    "HTMLBodyElement" => "WebCore/html",
  1468. +    "HTMLBRElement" => "WebCore/html",
  1469. +    "HTMLButtonElement" => "WebCore/html",
  1470. +    "HTMLCanvasElement" => "WebCore/html",
  1471. +    "HTMLCollection" => "WebCore/html",
  1472. +    "HTMLDataListElement" => "WebCore/html",
  1473. +    "HTMLDetailsElement" => "WebCore/html",
  1474. +    "HTMLDialogElement" => "WebCore/html",
  1475. +    "HTMLDirectoryElement" => "WebCore/html",
  1476. +    "HTMLDivElement" => "WebCore/html",
  1477. +    "HTMLDListElement" => "WebCore/html",
  1478. +    "HTMLDocument" => "WebCore/html",
  1479. +    "HTMLElement" => "WebCore/html",
  1480. +    "HTMLEmbedElement" => "WebCore/html",
  1481. +    "HTMLFieldSetElement" => "WebCore/html",
  1482. +    "HTMLFontElement" => "WebCore/html",
  1483. +    "HTMLFormControlsCollection" => "WebCore/html",
  1484. +    "HTMLFormElement" => "WebCore/html",
  1485. +    "HTMLFrameElement" => "WebCore/html",
  1486. +    "HTMLFrameSetElement" => "WebCore/html",
  1487. +    "HTMLHeadElement" => "WebCore/html",
  1488. +    "HTMLHeadingElement" => "WebCore/html",
  1489. +    "HTMLHRElement" => "WebCore/html",
  1490. +    "HTMLHtmlElement" => "WebCore/html",
  1491. +    "HTMLIFrameElement" => "WebCore/html",
  1492. +    "HTMLImageElement" => "WebCore/html",
  1493. +    "HTMLInputElement" => "WebCore/html",
  1494. +    "HTMLKeygenElement" => "WebCore/html",
  1495. +    "HTMLLabelElement" => "WebCore/html",
  1496. +    "HTMLLegendElement" => "WebCore/html",
  1497. +    "HTMLLIElement" => "WebCore/html",
  1498. +    "HTMLLinkElement" => "WebCore/html",
  1499. +    "HTMLMapElement" => "WebCore/html",
  1500. +    "HTMLMarqueeElement" => "WebCore/html",
  1501. +    "HTMLMediaElement" => "WebCore/html",
  1502. +    "HTMLMenuElement" => "WebCore/html",
  1503. +    "HTMLMetaElement" => "WebCore/html",
  1504. +    "HTMLMeterElement" => "WebCore/html",
  1505. +    "HTMLModElement" => "WebCore/html",
  1506. +    "HTMLObjectElement" => "WebCore/html",
  1507. +    "HTMLOListElement" => "WebCore/html",
  1508. +    "HTMLOptGroupElement" => "WebCore/html",
  1509. +    "HTMLOptionElement" => "WebCore/html",
  1510. +    "HTMLOptionsCollection" => "WebCore/html",
  1511. +    "HTMLOutputElement" => "WebCore/html",
  1512. +    "HTMLParagraphElement" => "WebCore/html",
  1513. +    "HTMLParamElement" => "WebCore/html",
  1514. +    "HTMLPreElement" => "WebCore/html",
  1515. +    "HTMLProgressElement" => "WebCore/html",
  1516. +    "HTMLPropertiesCollection" => "WebCore/html",
  1517. +    "HTMLQuoteElement" => "WebCore/html",
  1518. +    "HTMLScriptElement" => "WebCore/html",
  1519. +    "HTMLSelectElement" => "WebCore/html",
  1520. +    "HTMLSourceElement" => "WebCore/html",
  1521. +    "HTMLSpanElement" => "WebCore/html",
  1522. +    "HTMLStyleElement" => "WebCore/html",
  1523. +    "HTMLTableCaptionElement" => "WebCore/html",
  1524. +    "HTMLTableCellElement" => "WebCore/html",
  1525. +    "HTMLTableColElement" => "WebCore/html",
  1526. +    "HTMLTableElement" => "WebCore/html",
  1527. +    "HTMLTableRowElement" => "WebCore/html",
  1528. +    "HTMLTableSectionElement" => "WebCore/html",
  1529. +    "HTMLTemplateElement" => "WebCore/html",
  1530. +    "HTMLTextAreaElement" => "WebCore/html",
  1531. +    "HTMLTitleElement" => "WebCore/html",
  1532. +    "HTMLTrackElement" => "WebCore/html",
  1533. +    "HTMLUListElement" => "WebCore/html",
  1534. +    "HTMLUnknownElement" => "WebCore/html",
  1535. +    "HTMLVideoElement" => "WebCore/html",
  1536. +    "ImageData" => "WebCore/html",
  1537. +    "MediaController" => "WebCore/html",
  1538. +    "MediaError" => "WebCore/html",
  1539. +    "MediaKeyError" => "WebCore/html",
  1540. +    "MediaKeyEvent" => "WebCore/html",
  1541. +    "MicroDataItemValue" => "WebCore/html",
  1542. +    "RadioNodeList" => "WebCore/html",
  1543. +    "TextMetrics" => "WebCore/html",
  1544. +    "TimeRanges" => "WebCore/html",
  1545. +    "ValidityState" => "WebCore/html",
  1546. +    "VoidCallback" => "WebCore/html",
  1547. +    "ArrayBuffer" => "WebCore/html/canvas",
  1548. +    "ArrayBufferView" => "WebCore/html/canvas",
  1549. +    "CanvasGradient" => "WebCore/html/canvas",
  1550. +    "CanvasPattern" => "WebCore/html/canvas",
  1551. +    "CanvasProxy" => "WebCore/html/canvas",
  1552. +    "CanvasRenderingContext" => "WebCore/html/canvas",
  1553. +    "CanvasRenderingContext2D" => "WebCore/html/canvas",
  1554. +    "DataView" => "WebCore/html/canvas",
  1555. +    "DOMPath" => "WebCore/html/canvas",
  1556. +    "EXTDrawBuffers" => "WebCore/html/canvas",
  1557. +    "EXTTextureFilterAnisotropic" => "WebCore/html/canvas",
  1558. +    "Float32Array" => "WebCore/html/canvas",
  1559. +    "Float64Array" => "WebCore/html/canvas",
  1560. +    "Int16Array" => "WebCore/html/canvas",
  1561. +    "Int32Array" => "WebCore/html/canvas",
  1562. +    "Int8Array" => "WebCore/html/canvas",
  1563. +    "OESElementIndexUint" => "WebCore/html/canvas",
  1564. +    "OESStandardDerivatives" => "WebCore/html/canvas",
  1565. +    "OESTextureFloat" => "WebCore/html/canvas",
  1566. +    "OESTextureHalfFloat" => "WebCore/html/canvas",
  1567. +    "OESVertexArrayObject" => "WebCore/html/canvas",
  1568. +    "Uint16Array" => "WebCore/html/canvas",
  1569. +    "Uint32Array" => "WebCore/html/canvas",
  1570. +    "Uint8Array" => "WebCore/html/canvas",
  1571. +    "Uint8ClampedArray" => "WebCore/html/canvas",
  1572. +    "WebGLActiveInfo" => "WebCore/html/canvas",
  1573. +    "WebGLBuffer" => "WebCore/html/canvas",
  1574. +    "WebGLCompressedTextureS3TC" => "WebCore/html/canvas",
  1575. +    "WebGLContextAttributes" => "WebCore/html/canvas",
  1576. +    "WebGLContextEvent" => "WebCore/html/canvas",
  1577. +    "WebGLDebugRendererInfo" => "WebCore/html/canvas",
  1578. +    "WebGLDebugShaders" => "WebCore/html/canvas",
  1579. +    "WebGLDepthTexture" => "WebCore/html/canvas",
  1580. +    "WebGLFramebuffer" => "WebCore/html/canvas",
  1581. +    "WebGLLoseContext" => "WebCore/html/canvas",
  1582. +    "WebGLProgram" => "WebCore/html/canvas",
  1583. +    "WebGLRenderbuffer" => "WebCore/html/canvas",
  1584. +    "WebGLRenderingContext" => "WebCore/html/canvas",
  1585. +    "WebGLShader" => "WebCore/html/canvas",
  1586. +    "WebGLShaderPrecisionFormat" => "WebCore/html/canvas",
  1587. +    "WebGLTexture" => "WebCore/html/canvas",
  1588. +    "WebGLUniformLocation" => "WebCore/html/canvas",
  1589. +    "WebGLVertexArrayObjectOES" => "WebCore/html/canvas",
  1590. +    "HTMLContentElement" => "WebCore/html/shadow",
  1591. +    "HTMLShadowElement" => "WebCore/html/shadow",
  1592. +    "TextTrack" => "WebCore/html/track",
  1593. +    "TextTrackCue" => "WebCore/html/track",
  1594. +    "TextTrackCueList" => "WebCore/html/track",
  1595. +    "TextTrackList" => "WebCore/html/track",
  1596. +    "TrackEvent" => "WebCore/html/track",
  1597. +    "InjectedScriptHost" => "WebCore/inspector",
  1598. +    "InspectorFrontendHost" => "WebCore/inspector",
  1599. +    "JavaScriptCallFrame" => "WebCore/bindings/v8",
  1600. +    "ScriptProfile" => "WebCore/bindings/v8",
  1601. +    "ScriptProfileNode" => "WebCore/bindings/v8",
  1602. +    "DOMApplicationCache" => "WebCore/loader/appcache",
  1603. +    "BatteryManager" => "WebCore/Modules/battery",
  1604. +    "NavigatorBattery" => "WebCore/Modules/battery",
  1605. +    "MediaKeyMessageEvent" => "WebCore/Modules/encryptedmedia",
  1606. +    "MediaKeyNeededEvent" => "WebCore/Modules/encryptedmedia",
  1607. +    "MediaKeys" => "WebCore/Modules/encryptedmedia",
  1608. +    "MediaKeySession" => "WebCore/Modules/encryptedmedia",
  1609. +    "DataTransferItemFileSystem" => "WebCore/Modules/filesystem",
  1610. +    "DirectoryEntry" => "WebCore/Modules/filesystem",
  1611. +    "DirectoryEntrySync" => "WebCore/Modules/filesystem",
  1612. +    "DirectoryReader" => "WebCore/Modules/filesystem",
  1613. +    "DirectoryReaderSync" => "WebCore/Modules/filesystem",
  1614. +    "DOMFileSystem" => "WebCore/Modules/filesystem",
  1615. +    "DOMFileSystemSync" => "WebCore/Modules/filesystem",
  1616. +    "DOMWindowFileSystem" => "WebCore/Modules/filesystem",
  1617. +    "EntriesCallback" => "WebCore/Modules/filesystem",
  1618. +    "Entry" => "WebCore/Modules/filesystem",
  1619. +    "EntryArray" => "WebCore/Modules/filesystem",
  1620. +    "EntryArraySync" => "WebCore/Modules/filesystem",
  1621. +    "EntryCallback" => "WebCore/Modules/filesystem",
  1622. +    "EntrySync" => "WebCore/Modules/filesystem",
  1623. +    "ErrorCallback" => "WebCore/Modules/filesystem",
  1624. +    "FileCallback" => "WebCore/Modules/filesystem",
  1625. +    "FileEntry" => "WebCore/Modules/filesystem",
  1626. +    "FileEntrySync" => "WebCore/Modules/filesystem",
  1627. +    "FileSystemCallback" => "WebCore/Modules/filesystem",
  1628. +    "FileWriter" => "WebCore/Modules/filesystem",
  1629. +    "FileWriterCallback" => "WebCore/Modules/filesystem",
  1630. +    "FileWriterSync" => "WebCore/Modules/filesystem",
  1631. +    "HTMLInputElementFileSystem" => "WebCore/Modules/filesystem",
  1632. +    "Metadata" => "WebCore/Modules/filesystem",
  1633. +    "MetadataCallback" => "WebCore/Modules/filesystem",
  1634. +    "WorkerContextFileSystem" => "WebCore/Modules/filesystem",
  1635. +    "Gamepad" => "WebCore/Modules/gamepad",
  1636. +    "GamepadList" => "WebCore/Modules/gamepad",
  1637. +    "NavigatorGamepad" => "WebCore/Modules/gamepad",
  1638. +    "Geolocation" => "WebCore/Modules/geolocation",
  1639. +    "Geoposition" => "WebCore/Modules/geolocation",
  1640. +    "NavigatorGeolocation" => "WebCore/Modules/geolocation",
  1641. +    "PositionCallback" => "WebCore/Modules/geolocation",
  1642. +    "PositionError" => "WebCore/Modules/geolocation",
  1643. +    "PositionErrorCallback" => "WebCore/Modules/geolocation",
  1644. +    "DOMWindowIndexedDatabase" => "WebCore/Modules/indexeddb",
  1645. +    "IDBAny" => "WebCore/Modules/indexeddb",
  1646. +    "IDBCursor" => "WebCore/Modules/indexeddb",
  1647. +    "IDBCursorWithValue" => "WebCore/Modules/indexeddb",
  1648. +    "IDBDatabase" => "WebCore/Modules/indexeddb",
  1649. +    "IDBFactory" => "WebCore/Modules/indexeddb",
  1650. +    "IDBIndex" => "WebCore/Modules/indexeddb",
  1651. +    "IDBKeyRange" => "WebCore/Modules/indexeddb",
  1652. +    "IDBObjectStore" => "WebCore/Modules/indexeddb",
  1653. +    "IDBOpenDBRequest" => "WebCore/Modules/indexeddb",
  1654. +    "IDBRequest" => "WebCore/Modules/indexeddb",
  1655. +    "IDBTransaction" => "WebCore/Modules/indexeddb",
  1656. +    "IDBVersionChangeEvent" => "WebCore/Modules/indexeddb",
  1657. +    "WorkerContextIndexedDatabase" => "WebCore/Modules/indexeddb",
  1658. +    "MediaSource" => "WebCore/Modules/mediasource",
  1659. +    "SourceBuffer" => "WebCore/Modules/mediasource",
  1660. +    "SourceBufferList" => "WebCore/Modules/mediasource",
  1661. +    "DOMWindowMediaStream" => "WebCore/Modules/mediastream",
  1662. +    "LocalMediaStream" => "WebCore/Modules/mediastream",
  1663. +    "MediaStream" => "WebCore/Modules/mediastream",
  1664. +    "MediaStreamEvent" => "WebCore/Modules/mediastream",
  1665. +    "MediaStreamTrack" => "WebCore/Modules/mediastream",
  1666. +    "MediaStreamTrackEvent" => "WebCore/Modules/mediastream",
  1667. +    "NavigatorMediaStream" => "WebCore/Modules/mediastream",
  1668. +    "NavigatorUserMediaError" => "WebCore/Modules/mediastream",
  1669. +    "NavigatorUserMediaErrorCallback" => "WebCore/Modules/mediastream",
  1670. +    "NavigatorUserMediaSuccessCallback" => "WebCore/Modules/mediastream",
  1671. +    "RTCDataChannel" => "WebCore/Modules/mediastream",
  1672. +    "RTCDataChannelEvent" => "WebCore/Modules/mediastream",
  1673. +    "RTCDTMFSender" => "WebCore/Modules/mediastream",
  1674. +    "RTCDTMFToneChangeEvent" => "WebCore/Modules/mediastream",
  1675. +    "RTCErrorCallback" => "WebCore/Modules/mediastream",
  1676. +    "RTCIceCandidate" => "WebCore/Modules/mediastream",
  1677. +    "RTCIceCandidateEvent" => "WebCore/Modules/mediastream",
  1678. +    "RTCPeerConnection" => "WebCore/Modules/mediastream",
  1679. +    "RTCSessionDescription" => "WebCore/Modules/mediastream",
  1680. +    "RTCSessionDescriptionCallback" => "WebCore/Modules/mediastream",
  1681. +    "RTCStatsCallback" => "WebCore/Modules/mediastream",
  1682. +    "RTCStatsElement" => "WebCore/Modules/mediastream",
  1683. +    "RTCStatsReport" => "WebCore/Modules/mediastream",
  1684. +    "RTCStatsResponse" => "WebCore/Modules/mediastream",
  1685. +    "NavigatorContentUtils" => "WebCore/Modules/navigatorcontentutils",
  1686. +    "NavigatorNetworkInfoConnection" => "WebCore/Modules/networkinfo",
  1687. +    "NetworkInfoConnection" => "WebCore/Modules/networkinfo",
  1688. +    "DOMWindowNotifications" => "WebCore/Modules/notifications",
  1689. +    "Notification" => "WebCore/Modules/notifications",
  1690. +    "NotificationCenter" => "WebCore/Modules/notifications",
  1691. +    "NotificationPermissionCallback" => "WebCore/Modules/notifications",
  1692. +    "WorkerContextNotifications" => "WebCore/Modules/notifications",
  1693. +    "DeviceProximityEvent" => "WebCore/Modules/proximity",
  1694. +    "DOMWindowQuota" => "WebCore/Modules/quota",
  1695. +    "StorageInfo" => "WebCore/Modules/quota",
  1696. +    "StorageInfoErrorCallback" => "WebCore/Modules/quota",
  1697. +    "StorageInfoQuotaCallback" => "WebCore/Modules/quota",
  1698. +    "StorageInfoUsageCallback" => "WebCore/Modules/quota",
  1699. +    "DOMWindowSpeech" => "WebCore/Modules/speech",
  1700. +    "DOMWindowSpeechSynthesis" => "WebCore/Modules/speech",
  1701. +    "SpeechGrammar" => "WebCore/Modules/speech",
  1702. +    "SpeechGrammarList" => "WebCore/Modules/speech",
  1703. +    "SpeechRecognition" => "WebCore/Modules/speech",
  1704. +    "SpeechRecognitionAlternative" => "WebCore/Modules/speech",
  1705. +    "SpeechRecognitionError" => "WebCore/Modules/speech",
  1706. +    "SpeechRecognitionEvent" => "WebCore/Modules/speech",
  1707. +    "SpeechRecognitionResult" => "WebCore/Modules/speech",
  1708. +    "SpeechRecognitionResultList" => "WebCore/Modules/speech",
  1709. +    "SpeechSynthesis" => "WebCore/Modules/speech",
  1710. +    "SpeechSynthesisEvent" => "WebCore/Modules/speech",
  1711. +    "SpeechSynthesisUtterance" => "WebCore/Modules/speech",
  1712. +    "SpeechSynthesisVoice" => "WebCore/Modules/speech",
  1713. +    "NavigatorVibration" => "WebCore/Modules/vibration",
  1714. +    "AnalyserNode" => "WebCore/Modules/webaudio",
  1715. +    "AudioBuffer" => "WebCore/Modules/webaudio",
  1716. +    "AudioBufferCallback" => "WebCore/Modules/webaudio",
  1717. +    "AudioBufferSourceNode" => "WebCore/Modules/webaudio",
  1718. +    "AudioContext" => "WebCore/Modules/webaudio",
  1719. +    "AudioDestinationNode" => "WebCore/Modules/webaudio",
  1720. +    "AudioGain" => "WebCore/Modules/webaudio",
  1721. +    "AudioListener" => "WebCore/Modules/webaudio",
  1722. +    "AudioNode" => "WebCore/Modules/webaudio",
  1723. +    "AudioParam" => "WebCore/Modules/webaudio",
  1724. +    "AudioProcessingEvent" => "WebCore/Modules/webaudio",
  1725. +    "AudioSourceNode" => "WebCore/Modules/webaudio",
  1726. +    "BiquadFilterNode" => "WebCore/Modules/webaudio",
  1727. +    "ChannelMergerNode" => "WebCore/Modules/webaudio",
  1728. +    "ChannelSplitterNode" => "WebCore/Modules/webaudio",
  1729. +    "ConvolverNode" => "WebCore/Modules/webaudio",
  1730. +    "DelayNode" => "WebCore/Modules/webaudio",
  1731. +    "DOMWindowWebAudio" => "WebCore/Modules/webaudio",
  1732. +    "DynamicsCompressorNode" => "WebCore/Modules/webaudio",
  1733. +    "GainNode" => "WebCore/Modules/webaudio",
  1734. +    "MediaElementAudioSourceNode" => "WebCore/Modules/webaudio",
  1735. +    "MediaStreamAudioDestinationNode" => "WebCore/Modules/webaudio",
  1736. +    "MediaStreamAudioSourceNode" => "WebCore/Modules/webaudio",
  1737. +    "OfflineAudioCompletionEvent" => "WebCore/Modules/webaudio",
  1738. +    "OfflineAudioContext" => "WebCore/Modules/webaudio",
  1739. +    "OscillatorNode" => "WebCore/Modules/webaudio",
  1740. +    "PannerNode" => "WebCore/Modules/webaudio",
  1741. +    "ScriptProcessorNode" => "WebCore/Modules/webaudio",
  1742. +    "WaveShaperNode" => "WebCore/Modules/webaudio",
  1743. +    "WaveTable" => "WebCore/Modules/webaudio",
  1744. +    "Database" => "WebCore/Modules/webdatabase",
  1745. +    "DatabaseCallback" => "WebCore/Modules/webdatabase",
  1746. +    "DatabaseSync" => "WebCore/Modules/webdatabase",
  1747. +    "DOMWindowWebDatabase" => "WebCore/Modules/webdatabase",
  1748. +    "SQLError" => "WebCore/Modules/webdatabase",
  1749. +    "SQLException" => "WebCore/Modules/webdatabase",
  1750. +    "SQLResultSet" => "WebCore/Modules/webdatabase",
  1751. +    "SQLResultSetRowList" => "WebCore/Modules/webdatabase",
  1752. +    "SQLStatementCallback" => "WebCore/Modules/webdatabase",
  1753. +    "SQLStatementErrorCallback" => "WebCore/Modules/webdatabase",
  1754. +    "SQLTransaction" => "WebCore/Modules/webdatabase",
  1755. +    "SQLTransactionCallback" => "WebCore/Modules/webdatabase",
  1756. +    "SQLTransactionErrorCallback" => "WebCore/Modules/webdatabase",
  1757. +    "SQLTransactionSync" => "WebCore/Modules/webdatabase",
  1758. +    "SQLTransactionSyncCallback" => "WebCore/Modules/webdatabase",
  1759. +    "WorkerContextWebDatabase" => "WebCore/Modules/webdatabase",
  1760. +    "CloseEvent" => "WebCore/Modules/websockets",
  1761. +    "DOMWindowWebSocket" => "WebCore/Modules/websockets",
  1762. +    "WebSocket" => "WebCore/Modules/websockets",
  1763. +    "WorkerContextWebSocket" => "WebCore/Modules/websockets",
  1764. +    "AbstractView" => "WebCore/page",
  1765. +    "BarInfo" => "WebCore/page",
  1766. +    "Console" => "WebCore/page",
  1767. +    "Coordinates" => "WebCore/page",
  1768. +    "Crypto" => "WebCore/page",
  1769. +    "DOMSecurityPolicy" => "WebCore/page",
  1770. +    "DOMSelection" => "WebCore/page",
  1771. +    "DOMWindow" => "WebCore/page",
  1772. +    "DOMWindowPagePopup" => "WebCore/page",
  1773. +    "EventSource" => "WebCore/page",
  1774. +    "History" => "WebCore/page",
  1775. +    "Location" => "WebCore/page",
  1776. +    "MemoryInfo" => "WebCore/page",
  1777. +    "Navigator" => "WebCore/page",
  1778. +    "PagePopupController" => "WebCore/page",
  1779. +    "Performance" => "WebCore/page",
  1780. +    "PerformanceEntry" => "WebCore/page",
  1781. +    "PerformanceEntryList" => "WebCore/page",
  1782. +    "PerformanceMark" => "WebCore/page",
  1783. +    "PerformanceMeasure" => "WebCore/page",
  1784. +    "PerformanceNavigation" => "WebCore/page",
  1785. +    "PerformanceResourceTiming" => "WebCore/page",
  1786. +    "PerformanceTiming" => "WebCore/page",
  1787. +    "Screen" => "WebCore/page",
  1788. +    "SpeechInputEvent" => "WebCore/page",
  1789. +    "SpeechInputResult" => "WebCore/page",
  1790. +    "SpeechInputResultList" => "WebCore/page",
  1791. +    "WebKitPoint" => "WebCore/page",
  1792. +    "WorkerNavigator" => "WebCore/page",
  1793. +    "DOMMimeType" => "WebCore/plugins",
  1794. +    "DOMMimeTypeArray" => "WebCore/plugins",
  1795. +    "DOMPlugin" => "WebCore/plugins",
  1796. +    "DOMPluginArray" => "WebCore/plugins",
  1797. +    "Storage" => "WebCore/storage",
  1798. +    "StorageEvent" => "WebCore/storage",
  1799. +    "ElementTimeControl" => "WebCore/svg",
  1800. +    "SVGAElement" => "WebCore/svg",
  1801. +    "SVGAltGlyphDefElement" => "WebCore/svg",
  1802. +    "SVGAltGlyphElement" => "WebCore/svg",
  1803. +    "SVGAltGlyphItemElement" => "WebCore/svg",
  1804. +    "SVGAngle" => "WebCore/svg",
  1805. +    "SVGAnimateColorElement" => "WebCore/svg",
  1806. +    "SVGAnimatedAngle" => "WebCore/svg",
  1807. +    "SVGAnimatedBoolean" => "WebCore/svg",
  1808. +    "SVGAnimatedEnumeration" => "WebCore/svg",
  1809. +    "SVGAnimatedInteger" => "WebCore/svg",
  1810. +    "SVGAnimatedLength" => "WebCore/svg",
  1811. +    "SVGAnimatedLengthList" => "WebCore/svg",
  1812. +    "SVGAnimatedNumber" => "WebCore/svg",
  1813. +    "SVGAnimatedNumberList" => "WebCore/svg",
  1814. +    "SVGAnimatedPreserveAspectRatio" => "WebCore/svg",
  1815. +    "SVGAnimatedRect" => "WebCore/svg",
  1816. +    "SVGAnimatedString" => "WebCore/svg",
  1817. +    "SVGAnimatedTransformList" => "WebCore/svg",
  1818. +    "SVGAnimateElement" => "WebCore/svg",
  1819. +    "SVGAnimateMotionElement" => "WebCore/svg",
  1820. +    "SVGAnimateTransformElement" => "WebCore/svg",
  1821. +    "SVGAnimationElement" => "WebCore/svg",
  1822. +    "SVGCircleElement" => "WebCore/svg",
  1823. +    "SVGClipPathElement" => "WebCore/svg",
  1824. +    "SVGColor" => "WebCore/svg",
  1825. +    "SVGComponentTransferFunctionElement" => "WebCore/svg",
  1826. +    "SVGCursorElement" => "WebCore/svg",
  1827. +    "SVGDefsElement" => "WebCore/svg",
  1828. +    "SVGDescElement" => "WebCore/svg",
  1829. +    "SVGDocument" => "WebCore/svg",
  1830. +    "SVGElement" => "WebCore/svg",
  1831. +    "SVGElementInstance" => "WebCore/svg",
  1832. +    "SVGElementInstanceList" => "WebCore/svg",
  1833. +    "SVGEllipseElement" => "WebCore/svg",
  1834. +    "SVGException" => "WebCore/svg",
  1835. +    "SVGExternalResourcesRequired" => "WebCore/svg",
  1836. +    "SVGFEBlendElement" => "WebCore/svg",
  1837. +    "SVGFEColorMatrixElement" => "WebCore/svg",
  1838. +    "SVGFEComponentTransferElement" => "WebCore/svg",
  1839. +    "SVGFECompositeElement" => "WebCore/svg",
  1840. +    "SVGFEConvolveMatrixElement" => "WebCore/svg",
  1841. +    "SVGFEDiffuseLightingElement" => "WebCore/svg",
  1842. +    "SVGFEDisplacementMapElement" => "WebCore/svg",
  1843. +    "SVGFEDistantLightElement" => "WebCore/svg",
  1844. +    "SVGFEDropShadowElement" => "WebCore/svg",
  1845. +    "SVGFEFloodElement" => "WebCore/svg",
  1846. +    "SVGFEFuncAElement" => "WebCore/svg",
  1847. +    "SVGFEFuncBElement" => "WebCore/svg",
  1848. +    "SVGFEFuncGElement" => "WebCore/svg",
  1849. +    "SVGFEFuncRElement" => "WebCore/svg",
  1850. +    "SVGFEGaussianBlurElement" => "WebCore/svg",
  1851. +    "SVGFEImageElement" => "WebCore/svg",
  1852. +    "SVGFEMergeElement" => "WebCore/svg",
  1853. +    "SVGFEMergeNodeElement" => "WebCore/svg",
  1854. +    "SVGFEMorphologyElement" => "WebCore/svg",
  1855. +    "SVGFEOffsetElement" => "WebCore/svg",
  1856. +    "SVGFEPointLightElement" => "WebCore/svg",
  1857. +    "SVGFESpecularLightingElement" => "WebCore/svg",
  1858. +    "SVGFESpotLightElement" => "WebCore/svg",
  1859. +    "SVGFETileElement" => "WebCore/svg",
  1860. +    "SVGFETurbulenceElement" => "WebCore/svg",
  1861. +    "SVGFilterElement" => "WebCore/svg",
  1862. +    "SVGFilterPrimitiveStandardAttributes" => "WebCore/svg",
  1863. +    "SVGFitToViewBox" => "WebCore/svg",
  1864. +    "SVGFontElement" => "WebCore/svg",
  1865. +    "SVGFontFaceElement" => "WebCore/svg",
  1866. +    "SVGFontFaceFormatElement" => "WebCore/svg",
  1867. +    "SVGFontFaceNameElement" => "WebCore/svg",
  1868. +    "SVGFontFaceSrcElement" => "WebCore/svg",
  1869. +    "SVGFontFaceUriElement" => "WebCore/svg",
  1870. +    "SVGForeignObjectElement" => "WebCore/svg",
  1871. +    "SVGGElement" => "WebCore/svg",
  1872. +    "SVGGlyphElement" => "WebCore/svg",
  1873. +    "SVGGlyphRefElement" => "WebCore/svg",
  1874. +    "SVGGradientElement" => "WebCore/svg",
  1875. +    "SVGHKernElement" => "WebCore/svg",
  1876. +    "SVGImageElement" => "WebCore/svg",
  1877. +    "SVGLangSpace" => "WebCore/svg",
  1878. +    "SVGLength" => "WebCore/svg",
  1879. +    "SVGLengthList" => "WebCore/svg",
  1880. +    "SVGLinearGradientElement" => "WebCore/svg",
  1881. +    "SVGLineElement" => "WebCore/svg",
  1882. +    "SVGLocatable" => "WebCore/svg",
  1883. +    "SVGMarkerElement" => "WebCore/svg",
  1884. +    "SVGMaskElement" => "WebCore/svg",
  1885. +    "SVGMatrix" => "WebCore/svg",
  1886. +    "SVGMetadataElement" => "WebCore/svg",
  1887. +    "SVGMissingGlyphElement" => "WebCore/svg",
  1888. +    "SVGMPathElement" => "WebCore/svg",
  1889. +    "SVGNumber" => "WebCore/svg",
  1890. +    "SVGNumberList" => "WebCore/svg",
  1891. +    "SVGPaint" => "WebCore/svg",
  1892. +    "SVGPathElement" => "WebCore/svg",
  1893. +    "SVGPathSeg" => "WebCore/svg",
  1894. +    "SVGPathSegArcAbs" => "WebCore/svg",
  1895. +    "SVGPathSegArcRel" => "WebCore/svg",
  1896. +    "SVGPathSegClosePath" => "WebCore/svg",
  1897. +    "SVGPathSegCurvetoCubicAbs" => "WebCore/svg",
  1898. +    "SVGPathSegCurvetoCubicRel" => "WebCore/svg",
  1899. +    "SVGPathSegCurvetoCubicSmoothAbs" => "WebCore/svg",
  1900. +    "SVGPathSegCurvetoCubicSmoothRel" => "WebCore/svg",
  1901. +    "SVGPathSegCurvetoQuadraticAbs" => "WebCore/svg",
  1902. +    "SVGPathSegCurvetoQuadraticRel" => "WebCore/svg",
  1903. +    "SVGPathSegCurvetoQuadraticSmoothAbs" => "WebCore/svg",
  1904. +    "SVGPathSegCurvetoQuadraticSmoothRel" => "WebCore/svg",
  1905. +    "SVGPathSegLinetoAbs" => "WebCore/svg",
  1906. +    "SVGPathSegLinetoHorizontalAbs" => "WebCore/svg",
  1907. +    "SVGPathSegLinetoHorizontalRel" => "WebCore/svg",
  1908. +    "SVGPathSegLinetoRel" => "WebCore/svg",
  1909. +    "SVGPathSegLinetoVerticalAbs" => "WebCore/svg",
  1910. +    "SVGPathSegLinetoVerticalRel" => "WebCore/svg",
  1911. +    "SVGPathSegList" => "WebCore/svg",
  1912. +    "SVGPathSegMovetoAbs" => "WebCore/svg",
  1913. +    "SVGPathSegMovetoRel" => "WebCore/svg",
  1914. +    "SVGPatternElement" => "WebCore/svg",
  1915. +    "SVGPoint" => "WebCore/svg",
  1916. +    "SVGPointList" => "WebCore/svg",
  1917. +    "SVGPolygonElement" => "WebCore/svg",
  1918. +    "SVGPolylineElement" => "WebCore/svg",
  1919. +    "SVGPreserveAspectRatio" => "WebCore/svg",
  1920. +    "SVGRadialGradientElement" => "WebCore/svg",
  1921. +    "SVGRect" => "WebCore/svg",
  1922. +    "SVGRectElement" => "WebCore/svg",
  1923. +    "SVGRenderingIntent" => "WebCore/svg",
  1924. +    "SVGScriptElement" => "WebCore/svg",
  1925. +    "SVGSetElement" => "WebCore/svg",
  1926. +    "SVGStopElement" => "WebCore/svg",
  1927. +    "SVGStringList" => "WebCore/svg",
  1928. +    "SVGStyledElement" => "WebCore/svg",
  1929. +    "SVGStyleElement" => "WebCore/svg",
  1930. +    "SVGSVGElement" => "WebCore/svg",
  1931. +    "SVGSwitchElement" => "WebCore/svg",
  1932. +    "SVGSymbolElement" => "WebCore/svg",
  1933. +    "SVGTests" => "WebCore/svg",
  1934. +    "SVGTextContentElement" => "WebCore/svg",
  1935. +    "SVGTextElement" => "WebCore/svg",
  1936. +    "SVGTextPathElement" => "WebCore/svg",
  1937. +    "SVGTextPositioningElement" => "WebCore/svg",
  1938. +    "SVGTitleElement" => "WebCore/svg",
  1939. +    "SVGTransform" => "WebCore/svg",
  1940. +    "SVGTransformable" => "WebCore/svg",
  1941. +    "SVGTransformList" => "WebCore/svg",
  1942. +    "SVGTRefElement" => "WebCore/svg",
  1943. +    "SVGTSpanElement" => "WebCore/svg",
  1944. +    "SVGUnitTypes" => "WebCore/svg",
  1945. +    "SVGURIReference" => "WebCore/svg",
  1946. +    "SVGUseElement" => "WebCore/svg",
  1947. +    "SVGViewElement" => "WebCore/svg",
  1948. +    "SVGViewSpec" => "WebCore/svg",
  1949. +    "SVGVKernElement" => "WebCore/svg",
  1950. +    "SVGZoomAndPan" => "WebCore/svg",
  1951. +    "SVGZoomEvent" => "WebCore/svg",
  1952. +    "Internals" => "WebCore/testing",
  1953. +    "InternalSettings" => "WebCore/testing",
  1954. +    "MallocStatistics" => "WebCore/testing",
  1955. +    "TypeConversions" => "WebCore/testing",
  1956. +    "AbstractWorker" => "WebCore/workers",
  1957. +    "DedicatedWorkerContext" => "WebCore/workers",
  1958. +    "SharedWorker" => "WebCore/workers",
  1959. +    "SharedWorkerContext" => "WebCore/workers",
  1960. +    "Worker" => "WebCore/workers",
  1961. +    "WorkerContext" => "WebCore/workers",
  1962. +    "WorkerLocation" => "WebCore/workers",
  1963. +    "DOMParser" => "WebCore/xml",
  1964. +    "XMLHttpRequest" => "WebCore/xml",
  1965. +    "XMLHttpRequestException" => "WebCore/xml",
  1966. +    "XMLHttpRequestProgressEvent" => "WebCore/xml",
  1967. +    "XMLHttpRequestUpload" => "WebCore/xml",
  1968. +    "XMLSerializer" => "WebCore/xml",
  1969. +    "XPathEvaluator" => "WebCore/xml",
  1970. +    "XPathException" => "WebCore/xml",
  1971. +    "XPathExpression" => "WebCore/xml",
  1972. +    "XPathNSResolver" => "WebCore/xml",
  1973. +    "XPathResult" => "WebCore/xml",
  1974. +    "XSLTProcessor" => "WebCore/xml",
  1975. +    "HTMLBDIElement" => "WebCore/html",
  1976. +    "HTMLSummaryElement" => "WebCore/html",
  1977. +    "InternalSettingsGenerated" => "..",
  1978. +);
  1979. +
  1980. +sub idl_to_path
  1981. +{
  1982. +    my $interface = shift;
  1983. +
  1984. +    if ($idl_to_path_hash{$interface}) {
  1985. +        return $idl_to_path_hash{$interface} . '/';
  1986. +    } elsif ($interface =~ /^SVGPath/ && $idl_to_path_hash{$interface . "Abs"}) {
  1987. +        return $idl_to_path_hash{$interface . "Abs"} . '/';
  1988. +    } else {
  1989. +        return 'fixmebratell89/';
  1990. +    }
  1991. +}
  1992. +1;
  1993. diff --git a/third_party/WebKit/Source/WebCore/css/makeprop.pl b/third_party/WebKit/Source/WebCore/css/makeprop.pl
  1994. index 7734356..0579f8f 100644
  1995. --- a/third_party/WebKit/Source/WebCore/css/makeprop.pl
  1996. +++ b/third_party/WebKit/Source/WebCore/css/makeprop.pl
  1997. @@ -64,9 +64,10 @@ open GPERF, ">CSSPropertyNames.gperf" || die "Could not open CSSPropertyNames.gp
  1998.  print GPERF << "EOF";
  1999.  %{
  2000.  /* This file is automatically generated from CSSPropertyNames.in by makeprop, do not edit */
  2001. +/* TODO: bratell - add paths? */
  2002.  #include "config.h"
  2003.  #include \"CSSPropertyNames.h\"
  2004. -#include \"HashTools.h\"
  2005. +#include \"platform/HashTools.h\"
  2006.  #include <string.h>
  2007.  
  2008.  #include <wtf/ASCIICType.h>
  2009. diff --git a/third_party/WebKit/Source/WebCore/css/makevalues.pl b/third_party/WebKit/Source/WebCore/css/makevalues.pl
  2010. index 9c9fb57..a4d5b07 100644
  2011. --- a/third_party/WebKit/Source/WebCore/css/makevalues.pl
  2012. +++ b/third_party/WebKit/Source/WebCore/css/makevalues.pl
  2013. @@ -63,7 +63,7 @@ print GPERF << "EOF";
  2014.  /* This file is automatically generated from CSSValueKeywords.in by makevalues, do not edit */
  2015.  
  2016.  #include \"CSSValueKeywords.h\"
  2017. -#include \"HashTools.h\"
  2018. +#include \"platform/HashTools.h\"
  2019.  #include <string.h>
  2020.  
  2021.  namespace WebCore {
  2022. diff --git a/third_party/WebKit/Source/WebCore/dom/make_dom_exceptions.pl b/third_party/WebKit/Source/WebCore/dom/make_dom_exceptions.pl
  2023. index e12c81c..07aef94 100644
  2024. --- a/third_party/WebKit/Source/WebCore/dom/make_dom_exceptions.pl
  2025. +++ b/third_party/WebKit/Source/WebCore/dom/make_dom_exceptions.pl
  2026. @@ -34,6 +34,10 @@ use strict;
  2027.  
  2028.  use InFilesCompiler;
  2029.  
  2030. +use FindBin;                 # locate this script
  2031. +use lib "$FindBin::Bin/../bindings/script";  # use the binding generator directory.
  2032. +use idltopath;
  2033. +
  2034.  my %defaultParameters = (
  2035.      'namespace' => 0
  2036.  );
  2037. @@ -141,18 +145,19 @@ sub generateImplementation()
  2038.      print F "#include \"config.h\"\n";
  2039.      print F "#include \"ExceptionCodeDescription.h\"\n";
  2040.      print F "\n";
  2041. -    print F "#include \"ExceptionCode.h\"\n";
  2042. +    print F "#include \"WebCore/dom/ExceptionCode.h\"\n";
  2043.  
  2044.      for my $exceptionType (sort keys %parsedItems) {
  2045.          my $conditional = $parsedItems{$exceptionType}{"conditional"};
  2046.  
  2047.          print F "#if ENABLE($conditional)\n" if $conditional;
  2048. -        print F "#include \"$exceptionType.h\"\n";
  2049. +        my $exceptionpath = idl_to_path($exceptionType);
  2050. +        print F "#include \"$exceptionpath$exceptionType.h\" // fixmebratell55\n";
  2051.          print F "#endif\n" if $conditional;
  2052.      }
  2053.  
  2054.      print F "#if ENABLE(INDEXED_DATABASE)\n";
  2055. -    print F "#include \"IDBDatabaseException.h\"\n";
  2056. +    print F "#include \"WebCore/Modules/indexeddb/IDBDatabaseException.h\"\n";
  2057.      print F "#endif\n";
  2058.  
  2059.      print F "\n";
  2060. diff --git a/third_party/WebKit/Source/WebCore/dom/make_event_factory.pl b/third_party/WebKit/Source/WebCore/dom/make_event_factory.pl
  2061. index 8ca4540..f822102 100644
  2062. --- a/third_party/WebKit/Source/WebCore/dom/make_event_factory.pl
  2063. +++ b/third_party/WebKit/Source/WebCore/dom/make_event_factory.pl
  2064. @@ -83,11 +83,11 @@ sub generateImplementation()
  2065.      print F $InCompiler->license();
  2066.  
  2067.      print F "#include \"config.h\"\n";
  2068. -    print F "#include \"${namespace}Factory.h\"\n";
  2069. +    print F "#include \"WebCore/dom/${namespace}Factory.h\" // fixmebratell65\n";
  2070.      print F "\n";
  2071. -    print F "#include \"${namespace}Headers.h\"\n";
  2072. +    print F "#include \"${namespace}Headers.h\" // fixmebratell66\n";
  2073.      print F "#if USE(V8)\n";
  2074. -    print F "#include \"RuntimeEnabledFeatures.h\"\n";
  2075. +    print F "#include \"WebCore/bindings/generic/RuntimeEnabledFeatures.h\"\n";
  2076.      print F "#endif\n";
  2077.      print F "\n";
  2078.      print F "namespace WebCore {\n";
  2079. diff --git a/third_party/WebKit/Source/WebCore/dom/make_names.pl b/third_party/WebKit/Source/WebCore/dom/make_names.pl
  2080. index 341eac0..4a21a46 100755
  2081. --- a/third_party/WebKit/Source/WebCore/dom/make_names.pl
  2082. +++ b/third_party/WebKit/Source/WebCore/dom/make_names.pl
  2083. @@ -38,6 +38,14 @@ use File::Spec;
  2084.  use IO::File;
  2085.  use InFilesParser;
  2086.  
  2087. +use FindBin;                 # locate this script
  2088. +use lib "$FindBin::Bin/../bindings/script";  # use the binding generator directory.
  2089. +use idltopath;
  2090. +
  2091. +use FindBin;                 # locate this script
  2092. +use lib "$FindBin::Bin/../bindings/script";  # use the binding generator directory.
  2093. +use idltopath;
  2094. +
  2095.  sub readTags($$);
  2096.  sub readAttrs($$);
  2097.  
  2098. @@ -499,7 +507,9 @@ sub printHeaderHead
  2099.  
  2100.      print F "#ifndef ${prefix}_${nsName}Names_h\n";
  2101.      print F "#define ${prefix}_${nsName}Names_h\n\n";
  2102. +    print F "// Start include block fixmebratell51\n";
  2103.      print F "$includes\n\n";
  2104. +    print F "// End include block fixmebratell51\n";
  2105.  
  2106.      print F "namespace WebCore {\n\n";
  2107.      print F "namespace ${nsName}Names {\n\n";
  2108. @@ -518,7 +528,7 @@ sub printCppHead
  2109.      print F "#define QNAME_DEFAULT_CONSTRUCTOR 1\n";
  2110.      print F "#endif\n\n";
  2111.  
  2112. -    print F "#include \"${nsName}Names.h\"\n\n";
  2113. +    print F "#include \"${nsName}Names.h\" // fixmesomedirbratell19\n\n";
  2114.      print F "#include <wtf/StaticConstructors.h>\n";
  2115.  
  2116.      print F "namespace WebCore {\n\n";
  2117. @@ -592,7 +602,7 @@ sub printNamesHeaderFile
  2118.      open F, ">$headerPath";
  2119.  
  2120.      printLicenseHeader($F);
  2121. -    printHeaderHead($F, "DOM", $parameters{namespace}, "#include \"QualifiedName.h\"");
  2122. +    printHeaderHead($F, "DOM", $parameters{namespace}, "#include \"WebCore/dom/QualifiedName.h\"");
  2123.  
  2124.      my $lowerNamespace = lc($parameters{namespacePrefix});
  2125.      print F "// Namespace\n";
  2126. @@ -701,9 +711,10 @@ sub printJSElementIncludes
  2127.          }
  2128.          $tagsSeen{$JSInterfaceName} = 1;
  2129.  
  2130. -        print F "#include \"${wrapperFactoryType}${JSInterfaceName}.h\"\n";
  2131. +        # V8HTMLElementWrapperFactory.cpp that uses this code is generated into "webkit" and for instance V8HTMLAnchorElement.h is in "webkit/bindings"
  2132. +        print F "#include \"bindings/${wrapperFactoryType}${JSInterfaceName}.h\" // fixmesomedirbratell1\n";
  2133.      }
  2134. -    print F "#include \"${wrapperFactoryType}$parameters{fallbackInterfaceName}.h\"\n";
  2135. +    print F "#include \"bindings/${wrapperFactoryType}$parameters{fallbackInterfaceName}.h\" // fixmesomedirbratell2\n";
  2136.  }
  2137.  
  2138.  sub printElementIncludes
  2139. @@ -720,9 +731,11 @@ sub printElementIncludes
  2140.          }
  2141.          $tagsSeen{$interfaceName} = 1;
  2142.  
  2143. -        print F "#include \"${interfaceName}.h\"\n";
  2144. +        my $includepath = idl_to_path($interfaceName);
  2145. +        print F "#include \"${includepath}${interfaceName}.h\" // fixmesomedirbratell3\n";
  2146.      }
  2147. -    print F "#include \"$parameters{fallbackInterfaceName}.h\"\n";
  2148. +    my $fallbackincludepath = idl_to_path($parameters{fallbackInterfaceName});
  2149. +    print F "#include \"$fallbackincludepath$parameters{fallbackInterfaceName}.h\" // fixmesomedirbratell4\n";
  2150.  }
  2151.  
  2152.  sub printConditionalElementIncludes
  2153. @@ -751,12 +764,13 @@ sub printConditionalElementIncludes
  2154.          print F "\n#if ENABLE($conditional)\n";
  2155.          for my $interfaceName (sort keys %{$conditionals{$conditional}{interfaceNames}}) {
  2156.              next if $unconditionalElementIncludes{$interfaceName};
  2157. -            print F "#include \"$interfaceName.h\"\n";
  2158. +            my $includepath = idl_to_path($interfaceName);
  2159. +            print F "#include \"$includepath$interfaceName.h\" // fixmesomedirbratell5\n";
  2160.          }
  2161.          if ($wrapperFactoryType) {
  2162.              for my $JSInterfaceName (sort keys %{$conditionals{$conditional}{JSInterfaceNames}}) {
  2163.                  next if $unconditionalJSElementIncludes{$JSInterfaceName};
  2164. -                print F "#include \"$wrapperFactoryType$JSInterfaceName.h\"\n";
  2165. +                print F "#include \"$wrapperFactoryType$JSInterfaceName.h\" // fixmesomedirbratell6\n";
  2166.              }
  2167.          }
  2168.          print F "#endif\n";
  2169. @@ -807,8 +821,8 @@ END
  2170.  print F "\n#if $parameters{guardFactoryWith}\n\n" if $parameters{guardFactoryWith};
  2171.  
  2172.  print F <<END
  2173. -#include "$parameters{namespace}ElementFactory.h"
  2174. -#include "$parameters{namespace}Names.h"
  2175. +#include "$parameters{namespace}ElementFactory.h" // fixmesomedirbratell7
  2176. +#include "$parameters{namespace}Names.h" // fixmesomedirbratell8
  2177.  END
  2178.  ;
  2179.  
  2180. @@ -820,12 +834,12 @@ printConditionalElementIncludes($F);
  2181.  
  2182.  print F <<END
  2183.  
  2184. -#include "ContextFeatures.h"
  2185. -#include "RuntimeEnabledFeatures.h"
  2186. +#include "WebCore/dom/ContextFeatures.h"
  2187. +#include "WebCore/bindings/generic/RuntimeEnabledFeatures.h"
  2188.  
  2189.  #if ENABLE(DASHBOARD_SUPPORT) || ENABLE(VIDEO)
  2190. -#include "Document.h"
  2191. -#include "Settings.h"
  2192. +#include "WebCore/dom/Document.h"
  2193. +#include "WebCore/page/Settings.h"
  2194.  #endif
  2195.  
  2196.  namespace WebCore {
  2197. @@ -1154,12 +1168,12 @@ sub printWrapperFactoryCppFile
  2198.  
  2199.      print F <<END
  2200.  
  2201. -#include "ContextFeatures.h"
  2202. -#include "RuntimeEnabledFeatures.h"
  2203. +#include "WebCore/dom/ContextFeatures.h"
  2204. +#include "WebCore/bindings/generic/RuntimeEnabledFeatures.h"
  2205.  
  2206.  #if ENABLE(VIDEO)
  2207. -#include "Document.h"
  2208. -#include "Settings.h"
  2209. +#include "WebCore/dom/Document.h"
  2210. +#include "WebCore/page/Settings.h"
  2211.  #endif
  2212.  
  2213.  END
  2214. @@ -1172,8 +1186,8 @@ END
  2215.  ;
  2216.      } elsif ($wrapperFactoryType eq "V8") {
  2217.          print F <<END
  2218. -#include "V8HTMLCustomElement.h"
  2219. -#include "V8$parameters{namespace}Element.h"
  2220. +#include "WebCore/bindings/v8/V8HTMLCustomElement.h" // fixmesomedirbratell9.0
  2221. +#include "V8$parameters{namespace}Element.h" // fixmesomedirbratell9.1
  2222.  
  2223.  #include <v8.h>
  2224.  END
  2225. @@ -1337,8 +1351,8 @@ END
  2226.  ;
  2227.      } elsif ($wrapperFactoryType eq "V8") {
  2228.          print F <<END
  2229. -#include <V8$parameters{namespace}Element.h>
  2230. -#include <V8$parameters{fallbackInterfaceName}.h>
  2231. +#include <bindings/V8$parameters{namespace}Element.h> // fixmesomedirbratell10
  2232. +#include <bindings/V8$parameters{fallbackInterfaceName}.h> // fixmesomedirbratell11
  2233.  #include <v8.h>
  2234.  
  2235.  namespace WebCore {
  2236. diff --git a/third_party/WebKit/Source/WebCore/html/parser/create-html-entity-table b/third_party/WebKit/Source/WebCore/html/parser/create-html-entity-table
  2237. index 28a880e..0f7e3aa 100755
  2238. --- a/third_party/WebKit/Source/WebCore/html/parser/create-html-entity-table
  2239. +++ b/third_party/WebKit/Source/WebCore/html/parser/create-html-entity-table
  2240. @@ -105,7 +105,7 @@ output_file.write("""/*
  2241.  // DO NOT EDIT (unless you are a ninja)!
  2242.  
  2243.  #include "config.h"
  2244. -#include "HTMLEntityTable.h"
  2245. +#include "html/parser/HTMLEntityTable.h"
  2246.  
  2247.  namespace WebCore {
  2248.  
  2249. diff --git a/third_party/WebKit/Source/WebCore/inspector/CodeGeneratorInspectorStrings.py b/third_party/WebKit/Source/WebCore/inspector/CodeGeneratorInspectorStrings.py
  2250. index f7204d1..b513519 100644
  2251. --- a/third_party/WebKit/Source/WebCore/inspector/CodeGeneratorInspectorStrings.py
  2252. +++ b/third_party/WebKit/Source/WebCore/inspector/CodeGeneratorInspectorStrings.py
  2253. @@ -87,7 +87,7 @@ frontend_h = (
  2254.  #define InspectorFrontend_h
  2255.  
  2256.  #include "InspectorTypeBuilder.h"
  2257. -#include "InspectorValues.h"
  2258. +#include "WebCore/inspector/InspectorValues.h"
  2259.  #include <wtf/PassRefPtr.h>
  2260.  #include <wtf/text/WTFString.h>
  2261.  
  2262. @@ -211,7 +211,7 @@ backend_cpp = (
  2263.  #include <wtf/text/CString.h>
  2264.  
  2265.  #include "InspectorAgent.h"
  2266. -#include "InspectorValues.h"
  2267. +#include "WebCore/inspector/InspectorValues.h"
  2268.  #include "InspectorFrontendChannel.h"
  2269.  #include <wtf/text/WTFString.h>
  2270.  
  2271. @@ -518,7 +518,7 @@ frontend_cpp = (
  2272.  #include <wtf/text/CString.h>
  2273.  
  2274.  #include "InspectorFrontendChannel.h"
  2275. -#include "InspectorValues.h"
  2276. +#include "WebCore/inspector/InspectorValues.h"
  2277.  #include <wtf/text/WTFString.h>
  2278.  
  2279.  namespace WebCore {
  2280. @@ -541,7 +541,7 @@ typebuilder_h = (
  2281.  
  2282.  #if ENABLE(INSPECTOR)
  2283.  
  2284. -#include "InspectorValues.h"
  2285. +#include "WebCore/inspector/InspectorValues.h"
  2286.  #include <wtf/Assertions.h>
  2287.  #include <wtf/PassRefPtr.h>
  2288.  
  2289. diff --git a/third_party/WebKit/Source/WebCore/page/make_settings.pl b/third_party/WebKit/Source/WebCore/page/make_settings.pl
  2290. index e63e1bb..d507bbc 100755
  2291. --- a/third_party/WebKit/Source/WebCore/page/make_settings.pl
  2292. +++ b/third_party/WebKit/Source/WebCore/page/make_settings.pl
  2293. @@ -383,7 +383,7 @@ sub generateInternalSettingsHeaderFile($)
  2294.  #ifndef InternalSettingsGenerated_h
  2295.  #define InternalSettingsGenerated_h
  2296.  
  2297. -#include "RefCountedSupplement.h"
  2298. +#include "WebCore/platform/RefCountedSupplement.h"
  2299.  #include <wtf/PassRefPtr.h>
  2300.  #include <wtf/RefCounted.h>
  2301.  #include <wtf/text/WTFString.h>
  2302. @@ -450,8 +450,8 @@ sub generateInternalSettingsCppFile($)
  2303.  #include "config.h"
  2304.  #include "InternalSettingsGenerated.h"
  2305.  
  2306. -#include "Page.h"
  2307. -#include "Settings.h"
  2308. +#include "WebCore/page/Page.h"
  2309. +#include "WebCore/page/Settings.h"
  2310.  
  2311.  namespace WebCore {
  2312.  
  2313. diff --git a/third_party/WebKit/Source/WebKit/chromium/WebKit.gyp b/third_party/WebKit/Source/WebKit/chromium/WebKit.gyp
  2314. index 89dbae3..a92c2fa 100644
  2315. --- a/third_party/WebKit/Source/WebKit/chromium/WebKit.gyp
  2316. +++ b/third_party/WebKit/Source/WebKit/chromium/WebKit.gyp
  2317. @@ -832,7 +832,7 @@
  2318.                      'include_dirs': [
  2319.                          'public',
  2320.                          '../../WebCore/testing/v8', # for WebCoreTestSupport.h, needed to link in window.internals code.
  2321. -                        '../../Platform/chromium/',
  2322. +                        '../..',
  2323.                      ],
  2324.                      'sources': [
  2325.                          'src/WebTestingSupport.cpp',
  2326. diff --git a/webkit/compositor_bindings/compositor_bindings.gyp b/webkit/compositor_bindings/compositor_bindings.gyp
  2327. index 9afddfb..57c419a 100644
  2328. --- a/webkit/compositor_bindings/compositor_bindings.gyp
  2329. +++ b/webkit/compositor_bindings/compositor_bindings.gyp
  2330. @@ -89,6 +89,9 @@
  2331.        'sources': [
  2332.          '<@(webkit_compositor_bindings_sources)',
  2333.        ],
  2334. +      'include_dirs': [
  2335. +        '<(webkit_src_dir)/Source',
  2336. +      ],
  2337.        'defines': [
  2338.          'WEBKIT_COMPOSITOR_BINDINGS_IMPLEMENTATION=1'
  2339.        ]
  2340. --
  2341. 1.7.11.msysgit.1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement