Include Frame.h in fewer places.
authorakling@apple.com <akling@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 6 Sep 2013 22:08:14 +0000 (22:08 +0000)
committerakling@apple.com <akling@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 6 Sep 2013 22:08:14 +0000 (22:08 +0000)
<https://webkit.org/b/120868>

Reviewed by Anders Carlsson.

- Move JSMainThreadExecState::instrumentFunctionCall() to a separate header.
  This avoids including InspectorInstrumentation.h from JSMainThreadExecState.h
  which caused all JS and Objective-C bindings to depend on Frame.h

- Out-of-line the three methods on FrameView that were operating on Frames.
  Most of the call sites were in FrameView.cpp so they will still get inlined.

- Removed GenericBinding.h, nothing was using it anyway.

After this, touching Frame.h and doing a (debug) rebuild goes from 9m30 to 3m30
on my laptop.

* GNUmakefile.list.am:
* WebCore.exp.in:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/generic/GenericBinding.h: Removed.
* bindings/js/JSCallbackData.cpp:
* bindings/js/JSEventListener.cpp:
* bindings/js/JSMainThreadExecState.h:
* bindings/js/JSMainThreadExecStateInstrumentation.h: Added.
(WebCore::JSMainThreadExecState::instrumentFunctionCall):
* bindings/js/JSMutationCallback.cpp:
* bindings/js/ScheduledAction.cpp:
* css/DeprecatedStyleBuilder.cpp:
* css/ElementRuleCollector.cpp:
* css/MediaQueryEvaluator.cpp:
* css/SelectorChecker.h:
* dom/StyledElement.cpp:
* html/HTMLPlugInImageElement.cpp:
* inspector/InspectorPageAgent.h:
* inspector/NetworkResourcesData.h:
* inspector/PageRuntimeAgent.cpp:
* loader/cache/CachedImage.cpp:
* page/FrameView.cpp:
(WebCore::FrameView::renderView):
(WebCore::FrameView::mapFromLayoutToCSSUnits):
(WebCore::FrameView::mapFromCSSToLayoutUnits):
* page/FrameView.h:
* page/TouchAdjustment.cpp:
* rendering/RenderBoxModelObject.cpp:
* rendering/RenderLayer.cpp:
* rendering/RenderLayerCompositor.h:
* rendering/RenderText.cpp:
* svg/graphics/SVGImage.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@155217 268f45cc-cd09-0410-ab3c-d52691b4dbfc

33 files changed:
Source/WebCore/ChangeLog
Source/WebCore/GNUmakefile.list.am
Source/WebCore/WebCore.exp.in
Source/WebCore/WebCore.vcxproj/WebCore.vcxproj
Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/bindings/generic/GenericBinding.h [deleted file]
Source/WebCore/bindings/js/JSCallbackData.cpp
Source/WebCore/bindings/js/JSEventListener.cpp
Source/WebCore/bindings/js/JSMainThreadExecState.h
Source/WebCore/bindings/js/JSMainThreadExecStateInstrumentation.h [new file with mode: 0644]
Source/WebCore/bindings/js/JSMutationCallback.cpp
Source/WebCore/bindings/js/ScheduledAction.cpp
Source/WebCore/css/DeprecatedStyleBuilder.cpp
Source/WebCore/css/ElementRuleCollector.cpp
Source/WebCore/css/MediaQueryEvaluator.cpp
Source/WebCore/css/SelectorChecker.h
Source/WebCore/dom/StyledElement.cpp
Source/WebCore/html/HTMLPlugInImageElement.cpp
Source/WebCore/inspector/InspectorPageAgent.h
Source/WebCore/inspector/NetworkResourcesData.h
Source/WebCore/inspector/PageRuntimeAgent.cpp
Source/WebCore/loader/cache/CachedImage.cpp
Source/WebCore/page/FrameView.cpp
Source/WebCore/page/FrameView.h
Source/WebCore/page/TouchAdjustment.cpp
Source/WebCore/rendering/RenderBoxModelObject.cpp
Source/WebCore/rendering/RenderLayer.cpp
Source/WebCore/rendering/RenderLayerCompositor.h
Source/WebCore/rendering/RenderText.cpp
Source/WebCore/svg/graphics/SVGImage.cpp
Source/WebKit/efl/ewk/ewk_paint_context.cpp
Source/WebKit/mac/WebView/WebDynamicScrollBarsView.mm

index f2547bd..50d4aa0 100644 (file)
@@ -1,3 +1,57 @@
+2013-09-06  Andreas Kling  <akling@apple.com>
+
+        Include Frame.h in fewer places.
+        <https://webkit.org/b/120868>
+
+        Reviewed by Anders Carlsson.
+
+        - Move JSMainThreadExecState::instrumentFunctionCall() to a separate header.
+          This avoids including InspectorInstrumentation.h from JSMainThreadExecState.h
+          which caused all JS and Objective-C bindings to depend on Frame.h
+
+        - Out-of-line the three methods on FrameView that were operating on Frames.
+          Most of the call sites were in FrameView.cpp so they will still get inlined.
+
+        - Removed GenericBinding.h, nothing was using it anyway.
+
+        After this, touching Frame.h and doing a (debug) rebuild goes from 9m30 to 3m30
+        on my laptop.
+
+        * GNUmakefile.list.am:
+        * WebCore.exp.in:
+        * WebCore.vcxproj/WebCore.vcxproj:
+        * WebCore.vcxproj/WebCore.vcxproj.filters:
+        * WebCore.xcodeproj/project.pbxproj:
+        * bindings/generic/GenericBinding.h: Removed.
+        * bindings/js/JSCallbackData.cpp:
+        * bindings/js/JSEventListener.cpp:
+        * bindings/js/JSMainThreadExecState.h:
+        * bindings/js/JSMainThreadExecStateInstrumentation.h: Added.
+        (WebCore::JSMainThreadExecState::instrumentFunctionCall):
+        * bindings/js/JSMutationCallback.cpp:
+        * bindings/js/ScheduledAction.cpp:
+        * css/DeprecatedStyleBuilder.cpp:
+        * css/ElementRuleCollector.cpp:
+        * css/MediaQueryEvaluator.cpp:
+        * css/SelectorChecker.h:
+        * dom/StyledElement.cpp:
+        * html/HTMLPlugInImageElement.cpp:
+        * inspector/InspectorPageAgent.h:
+        * inspector/NetworkResourcesData.h:
+        * inspector/PageRuntimeAgent.cpp:
+        * loader/cache/CachedImage.cpp:
+        * page/FrameView.cpp:
+        (WebCore::FrameView::renderView):
+        (WebCore::FrameView::mapFromLayoutToCSSUnits):
+        (WebCore::FrameView::mapFromCSSToLayoutUnits):
+        * page/FrameView.h:
+        * page/TouchAdjustment.cpp:
+        * rendering/RenderBoxModelObject.cpp:
+        * rendering/RenderLayer.cpp:
+        * rendering/RenderLayerCompositor.h:
+        * rendering/RenderText.cpp:
+        * svg/graphics/SVGImage.cpp:
+
 2013-09-06  Brent Fulgham  <bfulgham@apple.com>
 
         [Windows] Unreviewed gardening: Spell 'Suppressor' properly
index a3a449a..63be6f1 100644 (file)
@@ -2279,7 +2279,6 @@ webcore_sources += \
        Source/WebCore/bindings/generic/ActiveDOMCallback.h \
        Source/WebCore/bindings/generic/BindingSecurity.cpp \
        Source/WebCore/bindings/generic/BindingSecurity.h \
-       Source/WebCore/bindings/generic/GenericBinding.h \
        Source/WebCore/bindings/generic/RuntimeEnabledFeatures.cpp \
        Source/WebCore/bindings/generic/RuntimeEnabledFeatures.h \
        Source/WebCore/bindings/js/ArrayValue.cpp \
index 33a0ab1..c7c10e9 100644 (file)
@@ -1671,6 +1671,7 @@ __ZNK7WebCore9FrameTree24traversePreviousWithWrapEb
 __ZNK7WebCore9FrameTree3topEv
 __ZNK7WebCore9FrameTree4findERKN3WTF12AtomicStringE
 __ZNK7WebCore9FrameTree6parentEv
+__ZNK7WebCore9FrameView10renderViewEv
 __ZNK7WebCore9FrameView11needsLayoutEv
 __ZNK7WebCore9FrameView13isTransparentEv
 __ZNK7WebCore9FrameView13paintBehaviorEv
index 0b8e2cf..e2f9ee0 100644 (file)
     <ClInclude Include="..\bindings\ScriptControllerBase.h" />
     <ClInclude Include="..\bindings\generic\ActiveDOMCallback.h" />
     <ClInclude Include="..\bindings\generic\BindingSecurity.h" />
-    <ClInclude Include="..\bindings\generic\GenericBinding.h" />
     <ClInclude Include="..\bindings\generic\RuntimeEnabledFeatures.h" />
     <ClInclude Include="..\bindings\js\ArrayValue.h" />
     <ClInclude Include="..\bindings\js\BindingState.h" />
index d6c2d77..7ba1ce4 100644 (file)
     <ClInclude Include="..\bindings\generic\BindingSecurity.h">
       <Filter>bindings\generic</Filter>
     </ClInclude>
-    <ClInclude Include="..\bindings\generic\GenericBinding.h">
-      <Filter>bindings\generic</Filter>
-    </ClInclude>
     <ClInclude Include="..\bindings\generic\RuntimeEnabledFeatures.h">
       <Filter>bindings\generic</Filter>
     </ClInclude>
index 2179ad2..43a332b 100644 (file)
                A6148A6812E41D940044A784 /* DOMHTMLKeygenElement.mm in Sources */ = {isa = PBXBuildFile; fileRef = A6148A6612E41D940044A784 /* DOMHTMLKeygenElement.mm */; };
                A6148A7812E41E3B0044A784 /* JSHTMLKeygenElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A6148A7612E41E3B0044A784 /* JSHTMLKeygenElement.cpp */; };
                A6148A7912E41E3B0044A784 /* JSHTMLKeygenElement.h in Headers */ = {isa = PBXBuildFile; fileRef = A6148A7712E41E3B0044A784 /* JSHTMLKeygenElement.h */; };
-               A622A8FF122C44A600A785B3 /* GenericBinding.h in Headers */ = {isa = PBXBuildFile; fileRef = A622A8F9122C44A600A785B3 /* GenericBinding.h */; };
                A6D169621346B49B000EB770 /* ShadowRoot.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A6D169611346B49B000EB770 /* ShadowRoot.cpp */; };
                A6D169641346B4C1000EB770 /* ShadowRoot.h in Headers */ = {isa = PBXBuildFile; fileRef = A6D169631346B4C1000EB770 /* ShadowRoot.h */; settings = {ATTRIBUTES = (Private, ); }; };
                A7151BD812F1558F005A0F64 /* TextCheckerClient.h in Headers */ = {isa = PBXBuildFile; fileRef = A7151BD712F1558F005A0F64 /* TextCheckerClient.h */; settings = {ATTRIBUTES = (Private, ); }; };
                A6148A7612E41E3B0044A784 /* JSHTMLKeygenElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSHTMLKeygenElement.cpp; sourceTree = "<group>"; };
                A6148A7712E41E3B0044A784 /* JSHTMLKeygenElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSHTMLKeygenElement.h; sourceTree = "<group>"; };
                A6148A7F12E41ED10044A784 /* HTMLKeygenElement.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = HTMLKeygenElement.idl; sourceTree = "<group>"; };
-               A622A8F9122C44A600A785B3 /* GenericBinding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GenericBinding.h; path = generic/GenericBinding.h; sourceTree = "<group>"; };
                A6D169611346B49B000EB770 /* ShadowRoot.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ShadowRoot.cpp; sourceTree = "<group>"; };
                A6D169631346B4C1000EB770 /* ShadowRoot.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ShadowRoot.h; sourceTree = "<group>"; };
                A7151BD712F1558F005A0F64 /* TextCheckerClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextCheckerClient.h; sourceTree = "<group>"; };
                B55D5AA71191325000BCC315 /* JSSQLTransactionSyncCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSSQLTransactionSyncCustom.cpp; sourceTree = "<group>"; };
                B562DB5E17D3CD560010AF96 /* HTMLElementTypeHelpers.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = HTMLElementTypeHelpers.h; sourceTree = "<group>"; };
                B562DB5F17D3CD560010AF96 /* SVGElementTypeHelpers.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SVGElementTypeHelpers.h; sourceTree = "<group>"; };
+               B56576E417DA599F00A56BDC /* JSMainThreadExecStateInstrumentation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSMainThreadExecStateInstrumentation.h; sourceTree = "<group>"; };
                B58CEB6711913607002A6790 /* JSDatabaseSync.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSDatabaseSync.h; sourceTree = "<group>"; };
                B58CEB6811913607002A6790 /* JSDatabaseSync.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSDatabaseSync.cpp; sourceTree = "<group>"; };
                B58CEB6B1191361C002A6790 /* JSSQLTransactionSync.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSSQLTransactionSync.h; sourceTree = "<group>"; };
                                B5D31DF911CF610B009F22B4 /* ActiveDOMCallback.h */,
                                973AA3F715D0891B00E38A85 /* BindingSecurity.cpp */,
                                973AA3F815D0891B00E38A85 /* BindingSecurity.h */,
-                               A622A8F9122C44A600A785B3 /* GenericBinding.h */,
                        );
                        name = generic;
                        sourceTree = "<group>";
                                3314ACEA10892086000F0E56 /* JSExceptionBase.h */,
                                8F934D841189F1EE00508D5D /* JSMainThreadExecState.cpp */,
                                8F934D831189F1EE00508D5D /* JSMainThreadExecState.h */,
+                               B56576E417DA599F00A56BDC /* JSMainThreadExecStateInstrumentation.h */,
                                C6F420A016B7164E0052A9F2 /* JSMutationCallback.cpp */,
                                C6F420A116B7164E0052A9F2 /* JSMutationCallback.h */,
                                93B70D4F09EB0C7C009D8468 /* JSPluginElementFunctions.cpp */,
                                C0C054CC1118C8E400CE2636 /* generate-bindings.pl in Headers */,
                                BC23F0DB0DAFF4A4009FDC91 /* GeneratedImage.h in Headers */,
                                2D481F04146B5C6B00AA7834 /* GeneratorGeneratedImage.h in Headers */,
-                               A622A8FF122C44A600A785B3 /* GenericBinding.h in Headers */,
                                0720B0A114D3323500642955 /* GenericEventQueue.h in Headers */,
                                9746AF2414F4DDE6003E7A70 /* Geolocation.h in Headers */,
                                9746AF2514F4DDE6003E7A71 /* GeolocationClient.h in Headers */,
diff --git a/Source/WebCore/bindings/generic/GenericBinding.h b/Source/WebCore/bindings/generic/GenericBinding.h
deleted file mode 100644 (file)
index fd1181f..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright (C) 2009 Google Inc. All rights reserved.
- * 
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- * 
- *     * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *     * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *     * Neither the name of Google Inc. nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- * 
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef GenericBinding_h
-#define GenericBinding_h
-
-#include "BindingState.h"
-#include "Document.h"
-#include "Frame.h"
-
-namespace WebCore {
-
-inline KURL completeURL(BindingState* state, const String& relativeURL)
-{
-    Frame* frame = firstFrame(state);
-    if (!frame)
-        return KURL();
-    return frame->document()->completeURL(relativeURL);
-}
-
-}
-
-#endif // GenericBinding_h
index b595b44..f53d440 100644 (file)
@@ -32,6 +32,7 @@
 #include "Document.h"
 #include "JSDOMBinding.h"
 #include "JSMainThreadExecState.h"
+#include "JSMainThreadExecStateInstrumentation.h"
 
 using namespace JSC;
     
index a3f8449..3935442 100644 (file)
@@ -26,6 +26,7 @@
 #include "JSEvent.h"
 #include "JSEventTarget.h"
 #include "JSMainThreadExecState.h"
+#include "JSMainThreadExecStateInstrumentation.h"
 #include "ScriptController.h"
 #include "WorkerGlobalScope.h"
 #include <runtime/ExceptionHelpers.h>
index 4d11706..73b91f8 100644 (file)
@@ -26,7 +26,6 @@
 #ifndef JSMainThreadExecState_h
 #define JSMainThreadExecState_h
 
-#include "InspectorInstrumentation.h"
 #include "JSDOMBinding.h"
 #include <runtime/Completion.h>
 #include <runtime/Executable.h>
@@ -36,6 +35,7 @@
 
 namespace WebCore {
 
+class InspectorInstrumentationCookie;
 class ScriptExecutionContext;
 
 class JSMainThreadExecState {
@@ -53,19 +53,7 @@ public:
         return JSC::call(exec, functionObject, callType, callData, thisValue, args);
     };
 
-    static inline InspectorInstrumentationCookie instrumentFunctionCall(ScriptExecutionContext* context, JSC::CallType callType, const JSC::CallData& callData)
-    {
-        if (!InspectorInstrumentation::timelineAgentEnabled(context))
-            return InspectorInstrumentationCookie();
-        String resourceName;
-        int lineNumber = 1;
-        if (callType == JSC::CallTypeJS) {
-            resourceName = callData.js.functionExecutable->sourceURL();
-            lineNumber = callData.js.functionExecutable->lineNo();
-        } else
-            resourceName = "undefined";
-        return InspectorInstrumentation::willCallFunction(context, resourceName, lineNumber);
-    }
+    static InspectorInstrumentationCookie instrumentFunctionCall(ScriptExecutionContext*, JSC::CallType, const JSC::CallData&);
 
     static JSC::JSValue evaluate(JSC::ExecState* exec, const JSC::SourceCode& source, JSC::JSValue thisValue, JSC::JSValue* exception)
     {
diff --git a/Source/WebCore/bindings/js/JSMainThreadExecStateInstrumentation.h b/Source/WebCore/bindings/js/JSMainThreadExecStateInstrumentation.h
new file mode 100644 (file)
index 0000000..c75fe05
--- /dev/null
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 2010 Google Inc. All rights reserved.
+ * Copyright (C) 2013 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef JSMainThreadExecStateInstrumentation_h
+#define JSMainThreadExecStateInstrumentation_h
+
+#include "InspectorInstrumentation.h"
+#include "JSMainThreadExecState.h"
+
+namespace WebCore {
+
+inline InspectorInstrumentationCookie JSMainThreadExecState::instrumentFunctionCall(ScriptExecutionContext* context, JSC::CallType callType, const JSC::CallData& callData)
+{
+    if (!InspectorInstrumentation::timelineAgentEnabled(context))
+        return InspectorInstrumentationCookie();
+    String resourceName;
+    int lineNumber = 1;
+    if (callType == JSC::CallTypeJS) {
+        resourceName = callData.js.functionExecutable->sourceURL();
+        lineNumber = callData.js.functionExecutable->lineNo();
+    } else
+        resourceName = "undefined";
+    return InspectorInstrumentation::willCallFunction(context, resourceName, lineNumber);
+}
+
+} // namespace WebCore
+
+#endif // JSMainThreadExecStateInstrumentation_h
index 41334e9..902d7a3 100644 (file)
@@ -29,6 +29,7 @@
 
 #include "JSDOMGlobalObject.h"
 #include "JSMainThreadExecState.h"
+#include "JSMainThreadExecStateInstrumentation.h"
 #include "JSMutationObserver.h"
 #include "JSMutationRecord.h"
 #include "ScriptExecutionContext.h"
index 563f2d9..7f2e5c5 100644 (file)
@@ -32,6 +32,7 @@
 #include "JSDOMBinding.h"
 #include "JSDOMWindow.h"
 #include "JSMainThreadExecState.h"
+#include "JSMainThreadExecStateInstrumentation.h"
 #include "ScriptController.h"
 #include "ScriptExecutionContext.h"
 #include "ScriptSourceCode.h"
index 21fc166..b2524fe 100644 (file)
@@ -38,6 +38,7 @@
 #include "CursorList.h"
 #include "Document.h"
 #include "Element.h"
+#include "Frame.h"
 #include "Pair.h"
 #include "Rect.h"
 #include "RenderObject.h"
index 643d2c2..f26f4d6 100644 (file)
@@ -36,6 +36,7 @@
 #include "CSSSelectorList.h"
 #include "CSSValueKeywords.h"
 #include "HTMLElement.h"
+#include "InspectorInstrumentation.h"
 #include "RenderRegion.h"
 #include "SVGElement.h"
 #include "SelectorCheckerFastPath.h"
index c923ffb..9758560 100644 (file)
@@ -39,6 +39,7 @@
 #include "FloatRect.h"
 #include "Frame.h"
 #include "FrameView.h"
+#include "InspectorInstrumentation.h"
 #include "IntRect.h"
 #include "MediaFeatureNames.h"
 #include "MediaList.h"
index 9cddbc8..e6005cd 100644 (file)
@@ -29,7 +29,7 @@
 #define SelectorChecker_h
 
 #include "CSSSelector.h"
-#include "InspectorInstrumentation.h"
+#include "Element.h"
 #include "SpaceSplitString.h"
 #include <wtf/HashSet.h>
 #include <wtf/Vector.h>
index 6712f08..e45fb80 100644 (file)
@@ -37,6 +37,7 @@
 #include "Document.h"
 #include "HTMLNames.h"
 #include "HTMLParserIdioms.h"
+#include "InspectorInstrumentation.h"
 #include "PropertySetCSSStyleDeclaration.h"
 #include "ScriptableDocumentParser.h"
 #include "StylePropertySet.h"
index d4033ae..ea16e7a 100644 (file)
@@ -37,6 +37,7 @@
 #include "MouseEvent.h"
 #include "NodeList.h"
 #include "NodeRenderStyle.h"
+#include "Page.h"
 #include "PlugInClient.h"
 #include "PluginViewBase.h"
 #include "RenderEmbeddedObject.h"
index 214efa5..dd01874 100644 (file)
 #if ENABLE(INSPECTOR)
 
 #include "DeviceOrientationData.h"
-#include "Frame.h"
 #include "GeolocationPosition.h"
 #include "InspectorBaseAgent.h"
 #include "InspectorFrontend.h"
+#include "IntSize.h"
+#include "LayoutRect.h"
 #include <wtf/HashMap.h>
 #include <wtf/RefCounted.h>
 #include <wtf/Vector.h>
index 9a0912f..416d53d 100644 (file)
@@ -31,6 +31,7 @@
 
 #include "HTTPHeaderMap.h"
 #include "InspectorPageAgent.h"
+#include "KURL.h"
 #include "TextResourceDecoder.h"
 #include <wtf/Deque.h>
 #include <wtf/HashMap.h>
@@ -44,6 +45,7 @@ namespace WebCore {
 
 class CachedResource;
 class FormData;
+class ResourceResponse;
 class SharedBuffer;
 class TextResourceDecoder;
 
index c33f36c..433952d 100644 (file)
@@ -35,6 +35,7 @@
 #include "PageRuntimeAgent.h"
 
 #include "Document.h"
+#include "Frame.h"
 #include "InjectedScript.h"
 #include "InjectedScriptManager.h"
 #include "InspectorPageAgent.h"
index f69af20..5cd6a5a 100644 (file)
@@ -29,6 +29,8 @@
 #include "CachedResourceClient.h"
 #include "CachedResourceClientWalker.h"
 #include "CachedResourceLoader.h"
+#include "Frame.h"
+#include "FrameLoader.h"
 #include "FrameLoaderClient.h"
 #include "FrameLoaderTypes.h"
 #include "FrameView.h"
index 5ee8d22..0348cfe 100644 (file)
@@ -4227,4 +4227,19 @@ void FrameView::setScrollPinningBehavior(ScrollPinningBehavior pinning)
     updateScrollbars(scrollOffset());
 }
 
+RenderView* FrameView::renderView() const
+{
+    return frame().contentRenderer();
+}
+
+int FrameView::mapFromLayoutToCSSUnits(LayoutUnit value) const
+{
+    return value / (frame().pageZoomFactor() * frame().frameScaleFactor());
+}
+
+LayoutUnit FrameView::mapFromCSSToLayoutUnits(int value) const
+{
+    return value * frame().pageZoomFactor() * frame().frameScaleFactor();
+}
+
 } // namespace WebCore
index 28f8b75..4a6e2c3 100644 (file)
@@ -27,7 +27,7 @@
 
 #include "AdjustViewSizeOrNot.h"
 #include "Color.h"
-#include "Frame.h"
+#include "LayoutMilestones.h"
 #include "LayoutRect.h"
 #include "Pagination.h"
 #include "PaintPhase.h"
@@ -42,7 +42,9 @@ class AXObjectCache;
 class Element;
 class Event;
 class FloatSize;
+class Frame;
 class FrameActionScheduler;
+class HTMLFrameOwnerElement;
 class KURL;
 class Node;
 class Page;
@@ -52,6 +54,7 @@ class RenderLayer;
 class RenderObject;
 class RenderScrollbarPart;
 class RenderStyle;
+class RenderView;
 
 Pagination::Mode paginationModeForRenderStyle(RenderStyle*);
 
@@ -78,10 +81,10 @@ public:
 
     Frame& frame() const { return *m_frame; }
 
-    RenderView* renderView() const { return frame().contentRenderer(); }
+    RenderView* renderView() const;
 
-    int mapFromLayoutToCSSUnits(LayoutUnit);
-    LayoutUnit mapFromCSSToLayoutUnits(int);
+    int mapFromLayoutToCSSUnits(LayoutUnit) const;
+    LayoutUnit mapFromCSSToLayoutUnits(int) const;
 
     LayoutUnit marginWidth() const { return m_margins.width(); } // -1 means default
     LayoutUnit marginHeight() const { return m_margins.height(); } // -1 means default
@@ -697,16 +700,6 @@ inline void FrameView::incrementVisuallyNonEmptyPixelCount(const IntSize& size)
     updateIsVisuallyNonEmpty();
 }
 
-inline int FrameView::mapFromLayoutToCSSUnits(LayoutUnit value)
-{
-    return value / (frame().pageZoomFactor() * frame().frameScaleFactor());
-}
-
-inline LayoutUnit FrameView::mapFromCSSToLayoutUnits(int value)
-{
-    return value * frame().pageZoomFactor() * frame().frameScaleFactor();
-}
-
 inline FrameView* toFrameView(Widget* widget)
 {
     ASSERT(!widget || widget->isFrameView());
index 372e60f..ce1ffa8 100644 (file)
@@ -25,6 +25,7 @@
 #include "Editor.h"
 #include "FloatPoint.h"
 #include "FloatQuad.h"
+#include "Frame.h"
 #include "FrameView.h"
 #include "HTMLFrameOwnerElement.h"
 #include "HTMLInputElement.h"
index 00c9494..76d1121 100644 (file)
@@ -26,6 +26,7 @@
 #include "config.h"
 #include "RenderBoxModelObject.h"
 
+#include "Frame.h"
 #include "GraphicsContext.h"
 #include "HTMLFrameOwnerElement.h"
 #include "HTMLNames.h"
index 4b1c945..b8a6889 100644 (file)
@@ -72,6 +72,7 @@
 #include "HitTestingTransformState.h"
 #include "HitTestRequest.h"
 #include "HitTestResult.h"
+#include "InspectorInstrumentation.h"
 #include "OverflowEvent.h"
 #include "OverlapTestRequestClient.h"
 #include "Page.h"
index c168ebf..4c63877 100644 (file)
@@ -29,7 +29,6 @@
 #if USE(ACCELERATED_COMPOSITING)
 
 #include "ChromeClient.h"
-#include "Frame.h"
 #include "GraphicsLayerClient.h"
 #include "GraphicsLayerUpdater.h"
 #include "RenderLayer.h"
@@ -49,6 +48,8 @@ class RenderVideo;
 #endif
 class TiledBacking;
 
+typedef unsigned LayerTreeFlags;
+
 enum CompositingUpdateType {
     CompositingUpdateAfterStyleChange,
     CompositingUpdateAfterLayout,
index 15ee7df..b3ca45c 100644 (file)
@@ -29,6 +29,7 @@
 #include "EllipsisBox.h"
 #include "FloatQuad.h"
 #include "FontTranscoder.h"
+#include "Frame.h"
 #include "FrameView.h"
 #include "Hyphenation.h"
 #include "InlineTextBox.h"
index d685905..5b2e01c 100644 (file)
@@ -33,6 +33,7 @@
 #include "Chrome.h"
 #include "DocumentLoader.h"
 #include "ElementIterator.h"
+#include "Frame.h"
 #include "FrameView.h"
 #include "ImageBuffer.h"
 #include "ImageObserver.h"
index 7eeb051..4152f96 100644 (file)
@@ -20,6 +20,7 @@
 
 #include "config.h"
 
+#include "Frame.h"
 #include "TiledBackingStore.h"
 #include "ewk_paint_context_private.h"
 #include "ewk_private.h"
index c78af60..643793b 100644 (file)
@@ -29,6 +29,7 @@
 #import "WebFrameInternal.h"
 #import "WebFrameView.h"
 #import "WebHTMLViewInternal.h"
+#import <WebCore/Frame.h>
 #import <WebCore/FrameView.h>
 #import <WebKitSystemInterface.h>