Web Inspector: NMI: move WebCore specific code to separate header
https://bugs.webkit.org/show_bug.cgi?id=96101

Reviewed by Yury Semikhatsky.

I extracted WebCore related code from MemoryInstrumentation.h to WebCoreMemoryInstrumentation.h

Source/WebCore:

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/ScriptWrappable.h:
* bindings/v8/DOMDataStore.cpp:
* bindings/v8/IntrusiveDOMWrapperMap.h:
* bindings/v8/ScriptProfiler.cpp:
* bindings/v8/ScriptWrappable.h:
* bindings/v8/V8Binding.cpp:
* bindings/v8/V8DOMMap.h:
* css/CSSAspectRatioValue.cpp:
* css/CSSBorderImageSliceValue.cpp:
* css/CSSCalculationValue.cpp:
* css/CSSCanvasValue.cpp:
* css/CSSCharsetRule.cpp:
* css/CSSComputedStyleDeclaration.cpp:
* css/CSSCrossfadeValue.cpp:
* css/CSSCursorImageValue.cpp:
* css/CSSFontFaceRule.cpp:
* css/CSSFontFaceSrcValue.cpp:
* css/CSSFunctionValue.cpp:
* css/CSSGradientValue.cpp:
* css/CSSImageGeneratorValue.cpp:
* css/CSSImageSetValue.cpp:
* css/CSSImageValue.cpp:
* css/CSSImportRule.cpp:
* css/CSSInheritedValue.cpp:
* css/CSSInitialValue.cpp:
* css/CSSLineBoxContainValue.cpp:
* css/CSSMediaRule.cpp:
* css/CSSPrimitiveValue.cpp:
* css/CSSProperty.cpp:
* css/CSSReflectValue.cpp:
* css/CSSRuleList.h:
* css/CSSSelectorList.cpp:
* css/CSSStyleRule.cpp:
* css/CSSStyleSheet.cpp:
* css/CSSTimingFunctionValue.cpp:
* css/CSSUnicodeRangeValue.cpp:
* css/CSSUnknownRule.h:
* css/CSSValue.cpp:
* css/CSSValueList.cpp:
* css/CSSVariableValue.h:
* css/FontFeatureValue.cpp:
* css/FontValue.cpp:
* css/MediaList.cpp:
* css/MediaQuery.cpp:
* css/MediaQueryExp.cpp:
* css/PropertySetCSSStyleDeclaration.cpp:
* css/ShadowValue.cpp:
* css/StyleResolver.cpp:
* css/StyleRule.cpp:
* css/StyleSheetContents.cpp:
* css/WebKitCSSArrayFunctionValue.cpp:
* css/WebKitCSSFilterValue.cpp:
* css/WebKitCSSKeyframeRule.cpp:
* css/WebKitCSSKeyframesRule.cpp:
* css/WebKitCSSMixFunctionValue.cpp:
* css/WebKitCSSSVGDocumentValue.cpp:
* css/WebKitCSSShaderValue.cpp:
* css/WebKitCSSTransformValue.cpp:
* dom/CharacterData.cpp:
* dom/Document.cpp:
* dom/DocumentEventQueue.cpp:
* dom/ElementAttributeData.cpp:
* dom/Event.cpp:
* dom/MemoryInstrumentation.h:
* dom/Node.cpp:
* dom/QualifiedName.h:
* dom/WebCoreMemoryInstrumentation.cpp: Renamed from Source/WebCore/dom/MemoryInstrumentation.cpp.
(WebCore):
(WebCore::String):
(WebCore::StringImpl):
(WebCore::KURL):
(WebCore::AtomicString):
* dom/WebCoreMemoryInstrumentation.h: Added.
(WebCore):
(WebCoreMemoryTypes):
* loader/DocumentLoader.cpp:
* loader/FrameLoader.cpp:
* loader/SubresourceLoader.cpp:
* loader/SubstituteData.cpp:
* loader/cache/CachedCSSStyleSheet.cpp:
* loader/cache/CachedFont.cpp:
* loader/cache/CachedRawResource.cpp:
* loader/cache/CachedResource.cpp:
* loader/cache/CachedResourceHandle.cpp:
* loader/cache/CachedScript.cpp:
* loader/cache/CachedShader.cpp:
* loader/cache/CachedXSLStyleSheet.cpp:
* loader/cache/MemoryCache.cpp:
* platform/SharedBuffer.cpp:
* platform/graphics/BitmapImage.cpp:
* platform/graphics/CrossfadeGeneratedImage.cpp:
* platform/graphics/GeneratedImage.cpp:
* platform/graphics/GeneratorGeneratedImage.h:
* platform/graphics/Image.cpp:
* platform/network/FormData.cpp:
* platform/network/ResourceRequestBase.cpp:
* platform/network/ResourceResponseBase.cpp:
* rendering/style/RenderStyle.cpp:
* rendering/style/StyleRareInheritedData.cpp:
* rendering/style/StyleRareNonInheritedData.cpp:
* svg/SVGColor.cpp:
* svg/SVGPaint.cpp:

Source/WebKit/chromium:

* tests/MemoryInstrumentationTest.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127869 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Rendering issue after rotation
https://bugs.webkit.org/show_bug.cgi?id=96094
PR #201930

Patch by Robin Cao <robin.cao@torchmobile.com.cn> on 2012-09-07
Reviewed by George Staikos.

The cause of the rendering issue is that the BackingStore tiles
are not reset after layout. This is a regression of r125680, which
overwrites a local variable that are used later in the function.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::setViewportSize):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127870 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed Chromium gardening.

Disabled test paste-global-selection on Chromium Linux that was failing.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127871 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Multiple feature defines in webcore_cppflags can occur
https://bugs.webkit.org/show_bug.cgi?id=95942

Reviewed by Martin Robinson.

.: 

Add the feature_defines_unstable variable that should control values of feature
defines for unstable features when unstable features are not enabled (e.g. release builds).

* GNUmakefile.am:

Source/WebCore: 

Any feature define that guards a feature deemed currently unstable (is intended
to be enabled in developer builds but not in release builds) should be added to the
newly-added feature_defines_unstable variable.

This moves away from adding such feature defines to the feature_defines_overrides variable
as this can cause duplicates in the later-generated feature_defines and webcore_cppflags
variables and further warnings of duplicate macros when generating bindings.

The feature_defines generation is now done by first checking if the bare feature define
is present in feature_defines_unstable, if not then feature_defines_overrides is also
checked before using the value from feature_defines_defaults.

No new tests - no new functionality.

* GNUmakefile.am:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127872 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WK2] [EFL] Set theme for WebKit2 API test runner
https://bugs.webkit.org/show_bug.cgi?id=96100

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-09-07
Reviewed by Kenneth Rohde Christiansen.

Set the theme generated by the build for the WebKit2 API test runner.

* TestWebKitAPI/PlatformEfl.cmake:
* TestWebKitAPI/efl/PlatformWebView.cpp:
(TestWebKitAPI::PlatformWebView::PlatformWebView):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127873 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Build of OpenGLShims.cpp against EGL/GLES2 platforms is broken
https://bugs.webkit.org/show_bug.cgi?id=95556

Reviewed by Jocelyn Turcotte.

There were a few problems:

1) GL_ANGLE_framebuffer_blit is the name of the macro indicating the
availability of the _declaration_ of that ANGLE extension. It is not the
name of the actual function, which is glBlitFramebufferANGLE.

2) The presence of the preprocessor macros indicating the availability
of the declaration of the extension does not imply presence of the extension
prototypes at link time. Instead extensions need to be looked up dynamically
at run-time.

3) dlfcn.h was unconditionally included. We do not need it when building against
Qt (and there it breaks the Windows build)

This patch implements the dynamic lookup of glBlitFramebufferANGLE
(used in GraphicsContext3DOpenGLES.cpp) as well as the dynamic lookup of the
Angle and Apple renderbuffer multisampling extensions.

* platform/graphics/OpenGLShims.cpp:
(WebCore):
(WebCore::initializeOpenGLShims):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127874 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add the google-android-tests build slave to the master's config
https://bugs.webkit.org/show_bug.cgi?id=96113

Reviewed by Csaba Osztrogonác.

* BuildSlaveSupport/build.webkit.org-config/config.json:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127875 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Simplify hitTestResultAtPoint and nodesFromRect APIs
https://bugs.webkit.org/show_bug.cgi?id=95720

Reviewed by Antonio Gomes.

.:

Update exported symbols.

* Source/autotools/symbols.filter:

Source/WebCore:

The existing API was overloaded and could be simplified by passing all the bool arguments in
a HitTestRequest argument. This should also help clarify the call as the enum values explicitely
state what they do.

* WebCore.exp.in:
* WebCore.order:
* dom/Document.cpp:
(WebCore::Document::nodesFromRect):
* dom/Document.h:
(Document):
* page/ContextMenuController.cpp:
(WebCore::ContextMenuController::createContextMenu):
* page/DragController.cpp:
(WebCore::DragController::canProcessDrag):
(WebCore::DragController::startDrag):
* page/EventHandler.cpp:
(WebCore::EventHandler::updateAutoscrollRenderer):
(WebCore::EventHandler::hitTestResultAtPoint):
(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::handleGestureEvent):
(WebCore::EventHandler::bestClickableNodeForTouchPoint):
(WebCore::EventHandler::bestContextMenuNodeForTouchPoint):
(WebCore::EventHandler::bestZoomableAreaForTouchPoint):
(WebCore::EventHandler::handleTouchEvent):
* page/EventHandler.h:
(EventHandler):
* page/FocusController.cpp:
(WebCore::updateFocusCandidateIfNeeded):
* page/Frame.cpp:
(WebCore::Frame::visiblePositionForPoint):
(WebCore::Frame::documentAtPoint):
* page/TouchDisambiguation.cpp:
(WebCore::findGoodTouchTargets):
* rendering/HitTestRequest.h:
(HitTestRequest):
* testing/Internals.cpp:
(WebCore::Internals::nodesFromRect):

Source/WebKit/blackberry:

Update calls to new API.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::contextNode):
(BlackBerry::WebKit::WebPagePrivate::nodeForZoomUnderPoint):
(BlackBerry::WebKit::WebPagePrivate::handleMouseEvent):
(BlackBerry::WebKit::WebPage::nodeAtPoint):
* WebKitSupport/FatFingers.cpp:
(BlackBerry::WebKit::FatFingers::getNodesFromRect):
(BlackBerry::WebKit::FatFingers::getRelevantInfoFromPoint):
* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::visiblePositionForPointIgnoringClipping):

Source/WebKit/chromium:

Update calls to new API.

* src/ContextMenuClientImpl.cpp:
(WebKit::selectMisspelledWord):
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::dispatchDecidePolicyForNavigationAction):
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::characterIndexForPoint):
* src/WebPluginContainerImpl.cpp:
(WebKit::WebPluginContainerImpl::isRectTopmost):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::handleMouseUp):
(WebKit::WebViewImpl::computeBlockBounds):

Source/WebKit/efl:

Update calls to new API.

* ewk/ewk_frame.cpp:
(ewk_frame_hit_test_new):

Source/WebKit/mac:

Update calls to new API.

* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::actionDictionary):
* WebView/WebHTMLView.mm:
(-[WebHTMLView elementAtPoint:allowShadowContent:]):

Source/WebKit/qt:

Update calls to new API.

* Api/qwebframe.cpp:
(QWebFrame::hitTestContent):
* Api/qwebpage.cpp:
(QWebPagePrivate::handleSoftwareInputPanel):
(QWebPagePrivate::TouchAdjuster::findCandidatePointForTouch):
(QWebPage::updatePositionDependentActions):
* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNavigationAction):

Source/WebKit/win:

Update calls to new API.

* WebActionPropertyBag.cpp:
(WebActionPropertyBag::Read):
* WebView.cpp:
(WebView::handleContextMenuEvent):
(WebView::elementAtPoint):

Source/WebKit/wx:

Update calls to new API.

* WebFrame.cpp:
(WebKit::WebFrame::HitTest):

Source/WebKit2:

Update calls to new API and update exported symbols.

* WebProcess/InjectedBundle/InjectedBundleNavigationAction.cpp:
(WebKit::InjectedBundleNavigationAction::InjectedBundleNavigationAction):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::handleContextMenuEvent):
(WebKit::WebPage::highlightPotentialActivation): Corrects the misplaced arguments while converting them.
(WebKit::WebPage::findZoomableAreaForPoint):
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::characterIndexForPoint):
(WebKit::WebPage::performDictionaryLookupAtLocation):
(WebKit::WebPage::shouldDelayWindowOrderingEvent):
(WebKit::WebPage::acceptsFirstMouse):
* win/WebKit2.def:
* win/WebKit2CFLite.def:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127876 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Add another all-in-one source

Rubber-stamped by Tor Arne Vestbø.

* Target.pri: We can safely add platform/text/TextAllInOne.cpp to ALL_IN_ONE_SOURCES for
even smaller combined builds.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127877 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][WK2] Unskip test cases that are now passing consistently
https://bugs.webkit.org/show_bug.cgi?id=96090

Unreviewed EFL gardening.

Remove from TestExpectations several test cases that are now
passing consistently on EFL WK2 build bot.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-07

* platform/efl-wk2/TestExpectations:

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