Changeset 147924 in webkit


Ignore:
Timestamp:
Apr 8, 2013 10:20:32 AM (11 years ago)
Author:
Carlos Garcia Campos
Message:

[GTK] DOM objects created wrapping a base class have incorrect GObject type
https://bugs.webkit.org/show_bug.cgi?id=113132

Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Some of the DOM methods can create a concrete instance of another
object, but return a base class. GObject bindings provide custom
kit implementations for Node, Element, Event and EvenTarget, so
any concrete HTMLElement wrapped as an HTMLElement ends up
wrapping the right WebCore object but in the wrong GObject type.
This affects not only HTMLElements, but any polymorphic object
wrapped using a base class.
This patch changes the way objects are created, so that all
classes have their own kit implementation, but for polymorphic
objects the kit implementation of the base class is always
used. The kit method of polymorphic base classes use a generic
wrap method instead of the wrapFoo method like all other
classes. In the static code we provide the implementation of the
generic wrap method for every polimorphic base class, falling back
to their wrapFoo method if the concrete object can't be used to
wrap the object.
Both WebKitDOMBinding and WebKitHTMLElementWrapperFactory now provide
implementations of wrap and have been renamed to WebKitDOMPrivate
and WebKitDOMHTMLPrivate.

  • bindings/gobject/GNUmakefile.am:
  • bindings/gobject/WebKitDOMBinding.cpp: Removed.
  • bindings/gobject/WebKitDOMEventTarget.cpp:

(WebKit::kit): Moved kit implementation from WebKitDOMBinding for
consistency with all other objects that have their own kit.
(WebKit::core): Updated to match the core implementation fo all
other objects.

  • bindings/gobject/WebKitDOMEventTargetPrivate.h:

(WebCore):
(WebKit):

  • bindings/gobject/WebKitDOMHTMLPrivate.cpp: Added.

(WebKit): Use preprocessor macros to define and set the wrap
functions of all HTML elements, removing a lot of boilerplate code
and making it easier to add new wrap functions in the future.
(WebKit::wrap):

  • bindings/gobject/WebKitDOMHTMLPrivate.h: Renamed from Source/WebCore/bindings/gobject/WebKitHTMLElementWrapperFactory.h.

(WebCore):
(WebKit):

  • bindings/gobject/WebKitDOMObject.cpp:
  • bindings/gobject/WebKitDOMPrivate.cpp: Added.

(WebKit):
(WebKit::wrap):

  • bindings/gobject/WebKitDOMPrivate.h: Renamed from Source/WebCore/bindings/gobject/WebKitDOMBinding.h.

(WebCore):
(WebKit):

  • bindings/gobject/WebKitHTMLElementWrapperFactory.cpp: Removed.
  • bindings/scripts/CodeGeneratorGObject.pm:

(IsBaseType): Helper function to check if a type is a base class.
(GetBaseClass): Helper function to get the base class for a given
parent type.
(GenerateFunction): Remove special case for EventTarget since the
kit prototype of EventTarget is in its private header like all
other objects.
(GenerateCFile): Add a kit implementation for all objects.
(IsPolymorphic): Helper function to check if the given type is the
base class of a polymorphic object.
(Generate): Include the private header of the base class for
polymorphic objects.
(WriteData): Remove the special case for WebKitDOMNode since now
all objects has a kit method.

  • bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp:

(WebKit::kit):

  • bindings/scripts/test/GObject/WebKitDOMFloat64ArrayPrivate.h:

(WebKit):

  • bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObjectPrivate.h:

(WebKit):

  • bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:

(WebKit):

  • bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetterPrivate.h:

(WebKit):

  • bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestEventConstructorPrivate.h:

(WebKit):

  • bindings/scripts/test/GObject/WebKitDOMTestEventTarget.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestEventTargetPrivate.h:

(WebKit):

  • bindings/scripts/test/GObject/WebKitDOMTestException.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestExceptionPrivate.h:

(WebKit):

  • bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:

(WebKit):

  • bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:

(WebKit):

  • bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestNamedConstructorPrivate.h:

(WebKit):

  • bindings/scripts/test/GObject/WebKitDOMTestNode.cpp:

(WebKit::kit):

  • bindings/scripts/test/GObject/WebKitDOMTestNodePrivate.h:

(WebKit):

  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:

(WebKit):

  • bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructorsPrivate.h:

(WebKit):

  • bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:

(WebKit):

  • bindings/scripts/test/GObject/WebKitDOMTestTypedefs.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestTypedefsPrivate.h:

(WebKit):

Source/WebKit/gtk:

Remove WebKitDOMBindindg.h include from several files because it's
been renamed and it was not actually needed.

  • WebCoreSupport/ChromeClientGtk.cpp:
  • WebCoreSupport/EditorClientGtk.cpp:
  • webkit/webkithittestresult.cpp:
Location:
trunk/Source
Files:
2 added
2 deleted
40 edited
2 moved

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r147922 r147924  
     12013-04-08  Carlos Garcia Campos  <cgarcia@igalia.com>
     2
     3        [GTK] DOM objects created wrapping a base class have incorrect GObject type
     4        https://bugs.webkit.org/show_bug.cgi?id=113132
     5
     6        Reviewed by Gustavo Noronha Silva.
     7
     8        Some of the DOM methods can create a concrete instance of another
     9        object, but return a base class. GObject bindings provide custom
     10        kit implementations for Node, Element, Event and EvenTarget, so
     11        any concrete HTMLElement wrapped as an HTMLElement ends up
     12        wrapping the right WebCore object but in the wrong GObject type.
     13        This affects not only HTMLElements, but any polymorphic object
     14        wrapped using a base class.
     15        This patch changes the way objects are created, so that all
     16        classes have their own kit implementation, but for polymorphic
     17        objects the kit implementation of the base class is always
     18        used. The kit method of polymorphic base classes use a generic
     19        wrap method instead of the wrapFoo method like all other
     20        classes. In the static code we provide the implementation of the
     21        generic wrap method for every polimorphic base class, falling back
     22        to their wrapFoo method if the concrete object can't be used to
     23        wrap the object.
     24        Both WebKitDOMBinding and WebKitHTMLElementWrapperFactory now provide
     25        implementations of wrap and have been renamed to WebKitDOMPrivate
     26        and WebKitDOMHTMLPrivate.
     27
     28        * bindings/gobject/GNUmakefile.am:
     29        * bindings/gobject/WebKitDOMBinding.cpp: Removed.
     30        * bindings/gobject/WebKitDOMEventTarget.cpp:
     31        (WebKit::kit): Moved kit implementation from WebKitDOMBinding for
     32        consistency with all other objects that have their own kit.
     33        (WebKit::core): Updated to match the core implementation fo all
     34        other objects.
     35        * bindings/gobject/WebKitDOMEventTargetPrivate.h:
     36        (WebCore):
     37        (WebKit):
     38        * bindings/gobject/WebKitDOMHTMLPrivate.cpp: Added.
     39        (WebKit): Use preprocessor macros to define and set the wrap
     40        functions of all HTML elements, removing a lot of boilerplate code
     41        and making it easier to add new wrap functions in the future.
     42        (WebKit::wrap):
     43        * bindings/gobject/WebKitDOMHTMLPrivate.h: Renamed from Source/WebCore/bindings/gobject/WebKitHTMLElementWrapperFactory.h.
     44        (WebCore):
     45        (WebKit):
     46        * bindings/gobject/WebKitDOMObject.cpp:
     47        * bindings/gobject/WebKitDOMPrivate.cpp: Added.
     48        (WebKit):
     49        (WebKit::wrap):
     50        * bindings/gobject/WebKitDOMPrivate.h: Renamed from Source/WebCore/bindings/gobject/WebKitDOMBinding.h.
     51        (WebCore):
     52        (WebKit):
     53        * bindings/gobject/WebKitHTMLElementWrapperFactory.cpp: Removed.
     54        * bindings/scripts/CodeGeneratorGObject.pm:
     55        (IsBaseType): Helper function to check if a type is a base class.
     56        (GetBaseClass): Helper function to get the base class for a given
     57        parent type.
     58        (GenerateFunction): Remove special case for EventTarget since the
     59        kit prototype of EventTarget is in its private header like all
     60        other objects.
     61        (GenerateCFile): Add a kit implementation for all objects.
     62        (IsPolymorphic): Helper function to check if the given type is the
     63        base class of a polymorphic object.
     64        (Generate): Include the private header of the base class for
     65        polymorphic objects.
     66        (WriteData): Remove the special case for WebKitDOMNode since now
     67        all objects has a kit method.
     68        * bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp:
     69        (WebKit::kit):
     70        * bindings/scripts/test/GObject/WebKitDOMFloat64ArrayPrivate.h:
     71        (WebKit):
     72        * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.cpp:
     73        * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObjectPrivate.h:
     74        (WebKit):
     75        * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
     76        * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
     77        (WebKit):
     78        * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.cpp:
     79        * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetterPrivate.h:
     80        (WebKit):
     81        * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.cpp:
     82        * bindings/scripts/test/GObject/WebKitDOMTestEventConstructorPrivate.h:
     83        (WebKit):
     84        * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.cpp:
     85        * bindings/scripts/test/GObject/WebKitDOMTestEventTargetPrivate.h:
     86        (WebKit):
     87        * bindings/scripts/test/GObject/WebKitDOMTestException.cpp:
     88        * bindings/scripts/test/GObject/WebKitDOMTestExceptionPrivate.h:
     89        (WebKit):
     90        * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
     91        * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
     92        (WebKit):
     93        * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
     94        * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
     95        (WebKit):
     96        * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.cpp:
     97        * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructorPrivate.h:
     98        (WebKit):
     99        * bindings/scripts/test/GObject/WebKitDOMTestNode.cpp:
     100        (WebKit::kit):
     101        * bindings/scripts/test/GObject/WebKitDOMTestNodePrivate.h:
     102        (WebKit):
     103        * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
     104        * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
     105        (WebKit):
     106        * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.cpp:
     107        * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructorsPrivate.h:
     108        (WebKit):
     109        * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
     110        * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:
     111        (WebKit):
     112        * bindings/scripts/test/GObject/WebKitDOMTestTypedefs.cpp:
     113        * bindings/scripts/test/GObject/WebKitDOMTestTypedefsPrivate.h:
     114        (WebKit):
     115
    11162013-04-08  Andras Becsi  <andras.becsi@digia.com>
    2117
  • trunk/Source/WebCore/bindings/gobject/GNUmakefile.am

    r145782 r147924  
    509509        Source/WebCore/bindings/gobject/GObjectEventListener.cpp \
    510510        Source/WebCore/bindings/gobject/GObjectEventListener.h \
    511         Source/WebCore/bindings/gobject/WebKitDOMBinding.cpp \
    512         Source/WebCore/bindings/gobject/WebKitDOMBinding.h \
    513511        Source/WebCore/bindings/gobject/WebKitDOMCustom.cpp \
    514512        Source/WebCore/bindings/gobject/WebKitDOMCustom.h \
     
    516514        Source/WebCore/bindings/gobject/WebKitDOMEventTarget.h \
    517515        Source/WebCore/bindings/gobject/WebKitDOMEventTargetPrivate.h \
     516        Source/WebCore/bindings/gobject/WebKitDOMHTMLPrivate.cpp \
     517        Source/WebCore/bindings/gobject/WebKitDOMHTMLPrivate.h \
    518518        Source/WebCore/bindings/gobject/WebKitDOMObject.cpp \
    519519        Source/WebCore/bindings/gobject/WebKitDOMObject.h \
    520         Source/WebCore/bindings/gobject/WebKitHTMLElementWrapperFactory.cpp \
    521         Source/WebCore/bindings/gobject/WebKitHTMLElementWrapperFactory.h
     520        Source/WebCore/bindings/gobject/WebKitDOMPrivate.cpp \
     521        Source/WebCore/bindings/gobject/WebKitDOMPrivate.h
    522522
    523523libWebCoreDOM_la_CXXFLAGS = \
  • trunk/Source/WebCore/bindings/gobject/WebKitDOMEventTarget.cpp

    r133893 r147924  
    3232#include "WebKitDOMEventTarget.h"
    3333
     34#include "DOMObjectCache.h"
     35#include "EventTarget.h"
    3436#include "WebKitDOMEvent.h"
    3537#include "WebKitDOMEventTargetPrivate.h"
     38#include "WebKitDOMPrivate.h"
    3639
    3740typedef WebKitDOMEventTargetIface WebKitDOMEventTargetInterface;
     
    105108namespace WebKit {
    106109
     110WebKitDOMEventTarget* kit(WebCore::EventTarget* obj)
     111{
     112    if (!obj)
     113        return 0;
     114
     115    if (gpointer ret = DOMObjectCache::get(obj))
     116        return WEBKIT_DOM_EVENT_TARGET(ret);
     117
     118    return wrap(obj);
     119}
     120
    107121WebCore::EventTarget* core(WebKitDOMEventTarget* request)
    108122{
    109     g_return_val_if_fail(request, 0);
    110 
    111     WebCore::EventTarget* coreObject = static_cast<WebCore::EventTarget*>(WEBKIT_DOM_OBJECT(request)->coreObject);
    112     g_return_val_if_fail(coreObject, 0);
    113 
    114     return coreObject;
     123    return request ? static_cast<WebCore::EventTarget*>(WEBKIT_DOM_OBJECT(request)->coreObject) : 0;
    115124}
    116125
  • trunk/Source/WebCore/bindings/gobject/WebKitDOMEventTargetPrivate.h

    r137329 r147924  
    2121#define WebKitDOMEventTargetPrivate_h
    2222
    23 #include "EventTarget.h"
    2423#include <webkitdom/WebKitDOMEventTarget.h>
    2524
     25namespace WebCore {
     26class EventTarget;
     27}
     28
    2629namespace WebKit {
    27 WebCore::EventTarget* core(WebKitDOMEventTarget* request);
     30WebKitDOMEventTarget* kit(WebCore::EventTarget*);
     31WebCore::EventTarget* core(WebKitDOMEventTarget*);
    2832} // namespace WebKit
    2933
  • trunk/Source/WebCore/bindings/gobject/WebKitDOMHTMLPrivate.h

    r147922 r147924  
    11/*
    2  * Copyright (C) 2005 Apple Computer, Inc.  All rights reserved.
    3  * Copyright (C) 2010 Igalia S.L.
     2 * Copyright (C) 2013 Igalia S.L.
    43 *
    54 * Redistribution and use in source and binary forms, with or without
     
    2524*/
    2625
    27 #ifndef WebKitHTMLElementWrapperFactory_h
    28 #define WebKitHTMLElementWrapperFactory_h
     26#ifndef WebKitDOMHTMLPrivate_h
     27#define WebKitDOMHTMLPrivate_h
    2928
    30 #include "HTMLElement.h"
     29#include <webkitdom/webkitdomdefines.h>
     30
     31namespace WebCore {
     32class HTMLElement;
     33}
    3134
    3235namespace WebKit {
    33 gpointer createHTMLElementWrapper(PassRefPtr<WebCore::HTMLElement>);
     36WebKitDOMHTMLElement* wrap(WebCore::HTMLElement*);
    3437}
    3538
    36 #endif // WebKitHTMLElementWrapperFactory_h
     39#endif // WebKitDOMHTMLPrivate_h
  • trunk/Source/WebCore/bindings/gobject/WebKitDOMObject.cpp

    r133893 r147924  
    88#include "config.h"
    99#include "WebKitDOMObject.h"
    10 
    11 #include "WebKitDOMBinding.h"
    1210
    1311enum {
  • trunk/Source/WebCore/bindings/gobject/WebKitDOMPrivate.h

    r147922 r147924  
    55 *  Copyright (C) 2008 Luke Kenneth Casson Leighton <lkcl@lkcl.net>
    66 *  Copyright (C) 2008 Martin Soto <soto@freedesktop.org>
    7  *  Copyright (C) 2009-2010 Igalia S.L.
     7 *  Copyright (C) 2009-2013 Igalia S.L.
    88 *
    99 *  This library is free software; you can redistribute it and/or
     
    2222 */
    2323
    24 #ifndef WebKitDOMBinding_h
    25 #define WebKitDOMBinding_h
     24#ifndef WebKitDOMPrivate_h
     25#define WebKitDOMPrivate_h
    2626
    2727#include <webkitdom/webkitdomdefines.h>
    2828
    29 #define WEBKIT_PARAM_READABLE ((GParamFlags)(G_PARAM_READABLE|G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB))
    30 #define WEBKIT_PARAM_READWRITE ((GParamFlags)(G_PARAM_READWRITE|G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB))
     29#define WEBKIT_PARAM_READABLE ((GParamFlags)(G_PARAM_READABLE | G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB))
     30#define WEBKIT_PARAM_READWRITE ((GParamFlags)(G_PARAM_READWRITE | G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB))
    3131#define WEBKIT_WARN_FEATURE_NOT_PRESENT(Feature) g_warning("WebKitGTK+ was not compiled with support for " Feature);
    3232
    3333namespace WebCore {
    3434class Node;
    35 class Element;
    36 class HTMLElement;
    3735class Event;
     36class StyleSheet;
     37class HTMLCollection;
    3838class EventTarget;
     39class Blob;
    3940} // namespace WebCore
    4041
    4142namespace WebKit {
    42 WebKitDOMNode* kit(WebCore::Node* node);
    43 WebKitDOMElement* kit(WebCore::Element* element);
    44 WebKitDOMHTMLElement* kit(WebCore::HTMLElement*);
    45 WebKitDOMEvent* kit(WebCore::Event* event);
    46 WebKitDOMEventTarget* kit(WebCore::EventTarget* target);
     43WebKitDOMNode* wrap(WebCore::Node*);
     44WebKitDOMEvent* wrap(WebCore::Event*);
     45WebKitDOMStyleSheet* wrap(WebCore::StyleSheet*);
     46WebKitDOMHTMLCollection* wrap(WebCore::HTMLCollection*);
     47WebKitDOMEventTarget* wrap(WebCore::EventTarget*);
     48WebKitDOMBlob* wrap(WebCore::Blob*);
    4749} // namespace WebKit
    4850
    49 #endif // WebKitDOMBinding_h
     51#endif // WebKitDOMPrivate_h
  • trunk/Source/WebCore/bindings/scripts/CodeGeneratorGObject.pm

    r146721 r147924  
    3838my $className = "";
    3939
     40# FIXME: this should be replaced with a function that recurses up the tree
     41# to find the actual base type.
     42my %baseTypeHash = ("Object" => 1, "Node" => 1, "NodeList" => 1, "NamedNodeMap" => 1, "DOMImplementation" => 1,
     43                    "Event" => 1, "CSSRule" => 1, "CSSValue" => 1, "StyleSheet" => 1, "MediaList" => 1,
     44                    "Counter" => 1, "Rect" => 1, "RGBColor" => 1, "XPathExpression" => 1, "XPathResult" => 1,
     45                    "NodeIterator" => 1, "TreeWalker" => 1, "AbstractView" => 1, "Blob" => 1, "DOMTokenList" => 1,
     46                    "HTMLCollection" => 1);
     47
    4048# Default constructor
    4149sub new {
     
    8391    return $interface->parents(0);
    8492}
     93
     94sub IsBaseType
     95{
     96    my $type = shift;
     97
     98    return 1 if $baseTypeHash{$type};
     99    return 0;
     100}
     101
     102sub GetBaseClass
     103{
     104    $parent = shift;
     105
     106    return $parent if $parent eq "Object" or IsBaseType($parent);
     107    return "Event" if $parent eq "UIEvent" or $parent eq "MouseEvent";
     108    return "CSSValue" if $parent eq "SVGColor" or $parent eq "CSSValueList";
     109    return "Node";
     110}
     111
    85112
    86113# From String::CamelCase 0.01
     
    898925
    899926    if ($returnType ne "void" && $returnValueIsGDOMType && $functionSigType ne "any") {
    900         if ($functionSigType ne "EventTarget") {
    901             $implIncludes{"WebKitDOM${functionSigType}Private.h"} = 1;
    902         } else {
    903             $implIncludes{"WebKitDOM${functionSigType}.h"} = 1;
    904         }
     927        $implIncludes{"WebKitDOM${functionSigType}Private.h"} = 1;
    905928    }
    906929
     
    12511274    my $lowerCaseIfaceName = "webkit_dom_" . FixUpDecamelizedName(decamelize($interfaceName));
    12521275    my $parentImplClassName = GetParentImplClassName($interface);
     1276    my $baseClassName = GetBaseClass($parentImplClassName);
    12531277
    12541278    # Add a private struct only for direct subclasses of Object so that we can use RefPtr
     
    12701294    push(@cBodyProperties, $implContent);
    12711295
    1272     if (!UsesManualKitImplementation($interfaceName)) {
    1273         $implContent = << "EOF";
    1274 ${className}* kit(WebCore::$interfaceName* obj)
    1275 {
    1276     if (!obj)
    1277         return 0;
    1278 
    1279     if (gpointer ret = DOMObjectCache::get(obj))
    1280         return WEBKIT_DOM_${clsCaps}(ret);
    1281 
    1282     return wrap${interfaceName}(obj);
    1283 }
    1284 
    1285 EOF
    1286         push(@cBodyPriv, $implContent);
     1296    if ($parentImplClassName eq "Object") {
     1297        push(@cBodyPriv, "${className}* kit(WebCore::$interfaceName* obj)\n");
     1298        push(@cBodyPriv, "{\n");
     1299        push(@cBodyPriv, "    if (!obj)\n");
     1300        push(@cBodyPriv, "        return 0;\n\n");
     1301        push(@cBodyPriv, "    if (gpointer ret = DOMObjectCache::get(obj))\n");
     1302        push(@cBodyPriv, "        return WEBKIT_DOM_${clsCaps}(ret);\n\n");
     1303        if (IsPolymorphic($interfaceName)) {
     1304            push(@cBodyPriv, "    return wrap(obj);\n");
     1305        } else {
     1306            push(@cBodyPriv, "    return wrap${interfaceName}(obj);\n");
     1307        }
     1308        push(@cBodyPriv, "}\n\n");
     1309    } else {
     1310        push(@cBodyPriv, "${className}* kit(WebCore::$interfaceName* obj)\n");
     1311        push(@cBodyPriv, "{\n");
     1312        if (!IsPolymorphic($baseClassName)) {
     1313            push(@cBodyPriv, "    if (!obj)\n");
     1314            push(@cBodyPriv, "        return 0;\n\n");
     1315            push(@cBodyPriv, "    if (gpointer ret = DOMObjectCache::get(obj))\n");
     1316            push(@cBodyPriv, "        return WEBKIT_DOM_${clsCaps}(ret);\n\n");
     1317            push(@cBodyPriv, "    return wrap${interfaceName}(obj);\n");
     1318        } else {
     1319            push(@cBodyPriv, "    return WEBKIT_DOM_${clsCaps}(kit(static_cast<WebCore::$baseClassName*>(obj)));\n");
     1320        }
     1321        push(@cBodyPriv, "}\n\n");
    12871322    }
    12881323
     
    13161351}
    13171352
    1318 sub UsesManualKitImplementation {
     1353sub IsPolymorphic {
    13191354    my $type = shift;
    13201355
    1321     return 1 if $type eq "Node" or $type eq "Element" or $type eq "HTMLElement" or $type eq "Event";
     1356    # FIXME: should we use ObjCPolymorphic attribute? or is it specific to ObjC bindings?
     1357    return 1 if $type eq "Node" or $type eq "Event" or $type eq "HTMLCollection" or $type eq "StyleSheet" or $type eq "Blob";
    13221358    return 0;
    13231359}
     
    13821418    my $parentGObjType = GetParentGObjType($interface);
    13831419    my $interfaceName = $interface->name;
     1420    my $parentImplClassName = GetParentImplClassName($interface);
     1421    my $baseClassName = GetBaseClass($parentImplClassName);
    13841422
    13851423    # Add the default impl header template
     
    13881426
    13891427    $implIncludes{"DOMObjectCache.h"} = 1;
    1390     $implIncludes{"WebKitDOMBinding.h"} = 1;
     1428    $implIncludes{"WebKitDOMPrivate.h"} = 1;
    13911429    $implIncludes{"gobject/ConvertToUTF8String.h"} = 1;
    13921430    $implIncludes{"${className}Private.h"} = 1;
     
    13941432    $implIncludes{"ExceptionCode.h"} = 1;
    13951433    $implIncludes{"CSSImportRule.h"} = 1;
     1434    if ($parentImplClassName ne "Object" and IsPolymorphic($baseClassName)) {
     1435        $implIncludes{"WebKitDOM${baseClassName}Private.h"} = 1;
     1436    }
    13961437
    13971438    $hdrIncludes{"webkitdom/${parentClassName}.h"} = 1;
     
    14361477namespace WebKit {
    14371478${className}* wrap${interfaceName}(WebCore::${interfaceName}*);
    1438 WebCore::${interfaceName}* core(${className}* request);
     1479${className}* kit(WebCore::${interfaceName}*);
     1480WebCore::${interfaceName}* core(${className}*);
    14391481EOF
    14401482
    14411483    print PRIVHEADER $text;
    1442 
    1443     if ($className ne "WebKitDOMNode") {
    1444         print PRIVHEADER "${className}* kit(WebCore::${interfaceName}* node);\n"
    1445     }
    14461484
    14471485    $text = << "EOF";
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp

    r143877 r147924  
    2626#include "ExceptionCode.h"
    2727#include "JSMainThreadExecState.h"
    28 #include "WebKitDOMBinding.h"
    2928#include "WebKitDOMFloat32ArrayPrivate.h"
    3029#include "WebKitDOMFloat64ArrayPrivate.h"
    3130#include "WebKitDOMInt32ArrayPrivate.h"
     31#include "WebKitDOMNodePrivate.h"
     32#include "WebKitDOMPrivate.h"
    3233#include "gobject/ConvertToUTF8String.h"
    3334#include <wtf/GetPtr.h>
     
    3839WebKitDOMFloat64Array* kit(WebCore::Float64Array* obj)
    3940{
    40     if (!obj)
    41         return 0;
    42 
    43     if (gpointer ret = DOMObjectCache::get(obj))
    44         return WEBKIT_DOM_FLOAT64ARRAY(ret);
    45 
    46     return wrapFloat64Array(obj);
     41    return WEBKIT_DOM_FLOAT64ARRAY(kit(static_cast<WebCore::Node*>(obj)));
    4742}
    4843
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMFloat64ArrayPrivate.h

    r137329 r147924  
    2727namespace WebKit {
    2828WebKitDOMFloat64Array* wrapFloat64Array(WebCore::Float64Array*);
    29 WebCore::Float64Array* core(WebKitDOMFloat64Array* request);
    30 WebKitDOMFloat64Array* kit(WebCore::Float64Array* node);
     29WebKitDOMFloat64Array* kit(WebCore::Float64Array*);
     30WebCore::Float64Array* core(WebKitDOMFloat64Array*);
    3131} // namespace WebKit
    3232
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.cpp

    r143877 r147924  
    2626#include "ExceptionCode.h"
    2727#include "JSMainThreadExecState.h"
    28 #include "WebKitDOMBinding.h"
    2928#include "WebKitDOMNodePrivate.h"
     29#include "WebKitDOMPrivate.h"
    3030#include "WebKitDOMTestActiveDOMObjectPrivate.h"
    3131#include "gobject/ConvertToUTF8String.h"
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObjectPrivate.h

    r137329 r147924  
    2727namespace WebKit {
    2828WebKitDOMTestActiveDOMObject* wrapTestActiveDOMObject(WebCore::TestActiveDOMObject*);
    29 WebCore::TestActiveDOMObject* core(WebKitDOMTestActiveDOMObject* request);
    30 WebKitDOMTestActiveDOMObject* kit(WebCore::TestActiveDOMObject* node);
     29WebKitDOMTestActiveDOMObject* kit(WebCore::TestActiveDOMObject*);
     30WebCore::TestActiveDOMObject* core(WebKitDOMTestActiveDOMObject*);
    3131} // namespace WebKit
    3232
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp

    r143877 r147924  
    2626#include "ExceptionCode.h"
    2727#include "JSMainThreadExecState.h"
    28 #include "WebKitDOMBinding.h"
    2928#include "WebKitDOMClass1Private.h"
    3029#include "WebKitDOMClass2Private.h"
     
    3231#include "WebKitDOMClass8Private.h"
    3332#include "WebKitDOMDOMStringListPrivate.h"
     33#include "WebKitDOMPrivate.h"
    3434#include "WebKitDOMTestCallbackPrivate.h"
    3535#include "WebKitDOMThisClassPrivate.h"
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h

    r137329 r147924  
    2828namespace WebKit {
    2929WebKitDOMTestCallback* wrapTestCallback(WebCore::TestCallback*);
    30 WebCore::TestCallback* core(WebKitDOMTestCallback* request);
    31 WebKitDOMTestCallback* kit(WebCore::TestCallback* node);
     30WebKitDOMTestCallback* kit(WebCore::TestCallback*);
     31WebCore::TestCallback* core(WebKitDOMTestCallback*);
    3232} // namespace WebKit
    3333
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.cpp

    r143877 r147924  
    2626#include "ExceptionCode.h"
    2727#include "JSMainThreadExecState.h"
    28 #include "WebKitDOMBinding.h"
     28#include "WebKitDOMPrivate.h"
    2929#include "WebKitDOMTestCustomNamedGetterPrivate.h"
    3030#include "gobject/ConvertToUTF8String.h"
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetterPrivate.h

    r137329 r147924  
    2727namespace WebKit {
    2828WebKitDOMTestCustomNamedGetter* wrapTestCustomNamedGetter(WebCore::TestCustomNamedGetter*);
    29 WebCore::TestCustomNamedGetter* core(WebKitDOMTestCustomNamedGetter* request);
    30 WebKitDOMTestCustomNamedGetter* kit(WebCore::TestCustomNamedGetter* node);
     29WebKitDOMTestCustomNamedGetter* kit(WebCore::TestCustomNamedGetter*);
     30WebCore::TestCustomNamedGetter* core(WebKitDOMTestCustomNamedGetter*);
    3131} // namespace WebKit
    3232
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.cpp

    r143877 r147924  
    2626#include "ExceptionCode.h"
    2727#include "JSMainThreadExecState.h"
    28 #include "WebKitDOMBinding.h"
     28#include "WebKitDOMPrivate.h"
    2929#include "WebKitDOMTestEventConstructorPrivate.h"
    3030#include "gobject/ConvertToUTF8String.h"
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestEventConstructorPrivate.h

    r137329 r147924  
    2727namespace WebKit {
    2828WebKitDOMTestEventConstructor* wrapTestEventConstructor(WebCore::TestEventConstructor*);
    29 WebCore::TestEventConstructor* core(WebKitDOMTestEventConstructor* request);
    30 WebKitDOMTestEventConstructor* kit(WebCore::TestEventConstructor* node);
     29WebKitDOMTestEventConstructor* kit(WebCore::TestEventConstructor*);
     30WebCore::TestEventConstructor* core(WebKitDOMTestEventConstructor*);
    3131} // namespace WebKit
    3232
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestEventTarget.cpp

    r143877 r147924  
    2727#include "GObjectEventListener.h"
    2828#include "JSMainThreadExecState.h"
    29 #include "WebKitDOMBinding.h"
    3029#include "WebKitDOMEventPrivate.h"
    3130#include "WebKitDOMEventTarget.h"
    3231#include "WebKitDOMNodePrivate.h"
     32#include "WebKitDOMPrivate.h"
    3333#include "WebKitDOMTestEventTargetPrivate.h"
    3434#include "gobject/ConvertToUTF8String.h"
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestEventTargetPrivate.h

    r137329 r147924  
    2727namespace WebKit {
    2828WebKitDOMTestEventTarget* wrapTestEventTarget(WebCore::TestEventTarget*);
    29 WebCore::TestEventTarget* core(WebKitDOMTestEventTarget* request);
    30 WebKitDOMTestEventTarget* kit(WebCore::TestEventTarget* node);
     29WebKitDOMTestEventTarget* kit(WebCore::TestEventTarget*);
     30WebCore::TestEventTarget* core(WebKitDOMTestEventTarget*);
    3131} // namespace WebKit
    3232
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestException.cpp

    r143877 r147924  
    2626#include "ExceptionCode.h"
    2727#include "JSMainThreadExecState.h"
    28 #include "WebKitDOMBinding.h"
     28#include "WebKitDOMPrivate.h"
    2929#include "WebKitDOMTestExceptionPrivate.h"
    3030#include "gobject/ConvertToUTF8String.h"
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestExceptionPrivate.h

    r137329 r147924  
    2727namespace WebKit {
    2828WebKitDOMTestException* wrapTestException(WebCore::TestException*);
    29 WebCore::TestException* core(WebKitDOMTestException* request);
    30 WebKitDOMTestException* kit(WebCore::TestException* node);
     29WebKitDOMTestException* kit(WebCore::TestException*);
     30WebCore::TestException* core(WebKitDOMTestException*);
    3131} // namespace WebKit
    3232
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp

    r143877 r147924  
    2727#include "JSMainThreadExecState.h"
    2828#include "TestSupplemental.h"
    29 #include "WebKitDOMBinding.h"
    3029#include "WebKitDOMNodePrivate.h"
     30#include "WebKitDOMPrivate.h"
    3131#include "WebKitDOMTestInterfacePrivate.h"
    3232#include "WebKitDOMTestObjPrivate.h"
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h

    r137329 r147924  
    2828namespace WebKit {
    2929WebKitDOMTestInterface* wrapTestInterface(WebCore::TestInterface*);
    30 WebCore::TestInterface* core(WebKitDOMTestInterface* request);
    31 WebKitDOMTestInterface* kit(WebCore::TestInterface* node);
     30WebKitDOMTestInterface* kit(WebCore::TestInterface*);
     31WebCore::TestInterface* core(WebKitDOMTestInterface*);
    3232} // namespace WebKit
    3333
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp

    r143877 r147924  
    2626#include "ExceptionCode.h"
    2727#include "JSMainThreadExecState.h"
    28 #include "WebKitDOMBinding.h"
     28#include "WebKitDOMPrivate.h"
    2929#include "WebKitDOMTestMediaQueryListListenerPrivate.h"
    3030#include "gobject/ConvertToUTF8String.h"
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h

    r137329 r147924  
    2727namespace WebKit {
    2828WebKitDOMTestMediaQueryListListener* wrapTestMediaQueryListListener(WebCore::TestMediaQueryListListener*);
    29 WebCore::TestMediaQueryListListener* core(WebKitDOMTestMediaQueryListListener* request);
    30 WebKitDOMTestMediaQueryListListener* kit(WebCore::TestMediaQueryListListener* node);
     29WebKitDOMTestMediaQueryListListener* kit(WebCore::TestMediaQueryListListener*);
     30WebCore::TestMediaQueryListListener* core(WebKitDOMTestMediaQueryListListener*);
    3131} // namespace WebKit
    3232
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.cpp

    r143877 r147924  
    2626#include "ExceptionCode.h"
    2727#include "JSMainThreadExecState.h"
    28 #include "WebKitDOMBinding.h"
     28#include "WebKitDOMPrivate.h"
    2929#include "WebKitDOMTestNamedConstructorPrivate.h"
    3030#include "gobject/ConvertToUTF8String.h"
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestNamedConstructorPrivate.h

    r137329 r147924  
    2727namespace WebKit {
    2828WebKitDOMTestNamedConstructor* wrapTestNamedConstructor(WebCore::TestNamedConstructor*);
    29 WebCore::TestNamedConstructor* core(WebKitDOMTestNamedConstructor* request);
    30 WebKitDOMTestNamedConstructor* kit(WebCore::TestNamedConstructor* node);
     29WebKitDOMTestNamedConstructor* kit(WebCore::TestNamedConstructor*);
     30WebCore::TestNamedConstructor* core(WebKitDOMTestNamedConstructor*);
    3131} // namespace WebKit
    3232
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestNode.cpp

    r143877 r147924  
    2727#include "GObjectEventListener.h"
    2828#include "JSMainThreadExecState.h"
    29 #include "WebKitDOMBinding.h"
    3029#include "WebKitDOMEventPrivate.h"
    3130#include "WebKitDOMEventTarget.h"
     31#include "WebKitDOMNodePrivate.h"
     32#include "WebKitDOMPrivate.h"
    3233#include "WebKitDOMTestNodePrivate.h"
    3334#include "gobject/ConvertToUTF8String.h"
     
    3940WebKitDOMTestNode* kit(WebCore::TestNode* obj)
    4041{
    41     if (!obj)
    42         return 0;
    43 
    44     if (gpointer ret = DOMObjectCache::get(obj))
    45         return WEBKIT_DOM_TEST_NODE(ret);
    46 
    47     return wrapTestNode(obj);
     42    return WEBKIT_DOM_TEST_NODE(kit(static_cast<WebCore::Node*>(obj)));
    4843}
    4944
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestNodePrivate.h

    r137329 r147924  
    2727namespace WebKit {
    2828WebKitDOMTestNode* wrapTestNode(WebCore::TestNode*);
    29 WebCore::TestNode* core(WebKitDOMTestNode* request);
    30 WebKitDOMTestNode* kit(WebCore::TestNode* node);
     29WebKitDOMTestNode* kit(WebCore::TestNode*);
     30WebCore::TestNode* core(WebKitDOMTestNode*);
    3131} // namespace WebKit
    3232
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObj.cpp

    r146161 r147924  
    2727#include "HTMLNames.h"
    2828#include "JSMainThreadExecState.h"
    29 #include "WebKitDOMBinding.h"
    3029#include "WebKitDOMDictionaryPrivate.h"
    3130#include "WebKitDOMDocumentPrivate.h"
    3231#include "WebKitDOMNodePrivate.h"
     32#include "WebKitDOMPrivate.h"
    3333#include "WebKitDOMSVGPointPrivate.h"
    3434#include "WebKitDOMSerializedScriptValuePrivate.h"
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h

    r137329 r147924  
    2727namespace WebKit {
    2828WebKitDOMTestObj* wrapTestObj(WebCore::TestObj*);
    29 WebCore::TestObj* core(WebKitDOMTestObj* request);
    30 WebKitDOMTestObj* kit(WebCore::TestObj* node);
     29WebKitDOMTestObj* kit(WebCore::TestObj*);
     30WebCore::TestObj* core(WebKitDOMTestObj*);
    3131} // namespace WebKit
    3232
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.cpp

    r143877 r147924  
    2626#include "ExceptionCode.h"
    2727#include "JSMainThreadExecState.h"
    28 #include "WebKitDOMBinding.h"
     28#include "WebKitDOMPrivate.h"
    2929#include "WebKitDOMTestOverloadedConstructorsPrivate.h"
    3030#include "gobject/ConvertToUTF8String.h"
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructorsPrivate.h

    r137329 r147924  
    2727namespace WebKit {
    2828WebKitDOMTestOverloadedConstructors* wrapTestOverloadedConstructors(WebCore::TestOverloadedConstructors*);
    29 WebCore::TestOverloadedConstructors* core(WebKitDOMTestOverloadedConstructors* request);
    30 WebKitDOMTestOverloadedConstructors* kit(WebCore::TestOverloadedConstructors* node);
     29WebKitDOMTestOverloadedConstructors* kit(WebCore::TestOverloadedConstructors*);
     30WebCore::TestOverloadedConstructors* core(WebKitDOMTestOverloadedConstructors*);
    3131} // namespace WebKit
    3232
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp

    r143877 r147924  
    2727#include "JSMainThreadExecState.h"
    2828#include "WebKitDOMArrayPrivate.h"
    29 #include "WebKitDOMBinding.h"
    3029#include "WebKitDOMMessagePortArrayPrivate.h"
     30#include "WebKitDOMPrivate.h"
    3131#include "WebKitDOMSerializedScriptValuePrivate.h"
    3232#include "WebKitDOMTestSerializedScriptValueInterfacePrivate.h"
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h

    r137329 r147924  
    2828namespace WebKit {
    2929WebKitDOMTestSerializedScriptValueInterface* wrapTestSerializedScriptValueInterface(WebCore::TestSerializedScriptValueInterface*);
    30 WebCore::TestSerializedScriptValueInterface* core(WebKitDOMTestSerializedScriptValueInterface* request);
    31 WebKitDOMTestSerializedScriptValueInterface* kit(WebCore::TestSerializedScriptValueInterface* node);
     30WebKitDOMTestSerializedScriptValueInterface* kit(WebCore::TestSerializedScriptValueInterface*);
     31WebCore::TestSerializedScriptValueInterface* core(WebKitDOMTestSerializedScriptValueInterface*);
    3232} // namespace WebKit
    3333
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestTypedefs.cpp

    r143877 r147924  
    2727#include "JSMainThreadExecState.h"
    2828#include "WebKitDOMArrayPrivate.h"
    29 #include "WebKitDOMBinding.h"
    3029#include "WebKitDOMDOMString[]Private.h"
     30#include "WebKitDOMPrivate.h"
    3131#include "WebKitDOMSVGPointPrivate.h"
    3232#include "WebKitDOMSerializedScriptValuePrivate.h"
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestTypedefsPrivate.h

    r142865 r147924  
    2727namespace WebKit {
    2828WebKitDOMTestTypedefs* wrapTestTypedefs(WebCore::TestTypedefs*);
    29 WebCore::TestTypedefs* core(WebKitDOMTestTypedefs* request);
    30 WebKitDOMTestTypedefs* kit(WebCore::TestTypedefs* node);
     29WebKitDOMTestTypedefs* kit(WebCore::TestTypedefs*);
     30WebCore::TestTypedefs* core(WebKitDOMTestTypedefs*);
    3131} // namespace WebKit
    3232
  • trunk/Source/WebKit/gtk/ChangeLog

    r147663 r147924  
     12013-04-08  Carlos Garcia Campos  <cgarcia@igalia.com>
     2
     3        [GTK] DOM objects created wrapping a base class have incorrect GObject type
     4        https://bugs.webkit.org/show_bug.cgi?id=113132
     5
     6        Reviewed by Gustavo Noronha Silva.
     7
     8        Remove WebKitDOMBindindg.h include from several files because it's
     9        been renamed and it was not actually needed.
     10
     11        * WebCoreSupport/ChromeClientGtk.cpp:
     12        * WebCoreSupport/EditorClientGtk.cpp:
     13        * webkit/webkithittestresult.cpp:
     14
    1152013-04-04  Martin Robinson  <mrobinson@igalia.com>
    216
  • trunk/Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp

    r142755 r147924  
    5252#include "SearchPopupMenuGtk.h"
    5353#include "SecurityOrigin.h"
    54 #include "WebKitDOMBinding.h"
    5554#include "WebKitDOMHTMLElementPrivate.h"
    5655#include "WindowFeatures.h"
  • trunk/Source/WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp

    r145849 r147924  
    4141#include "StylePropertySet.h"
    4242#include "UndoStep.h"
    43 #include "WebKitDOMBinding.h"
    4443#include "WebKitDOMCSSStyleDeclarationPrivate.h"
    4544#include "WebKitDOMHTMLElementPrivate.h"
  • trunk/Source/WebKit/gtk/webkit/webkithittestresult.cpp

    r135405 r147924  
    2626#include "HitTestResult.h"
    2727#include "KURL.h"
    28 #include "WebKitDOMBinding.h"
    29 #include "WebKitDOMNode.h"
     28#include "WebKitDOMNodePrivate.h"
    3029#include "webkitenumtypes.h"
    3130#include "webkitglobals.h"
Note: See TracChangeset for help on using the changeset viewer.