[EFL] Fuzzy load the Edje theme for HTML forms
https://bugs.webkit.org/show_bug.cgi?id=95832

Reviewed by Gyuyoung Kim.

Change the theme so that it is first loaded when actually used.
This also fixed the case that it was impossible to change theme
a second time.

Tested by current tests. API unit test coming in separate patch.

* platform/efl/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::themePartCacheEntryReset):
(WebCore::RenderThemeEfl::cacheThemePartNew):
(WebCore::RenderThemeEfl::paintThemePart):
(WebCore::RenderThemeEfl::setThemePath):
(WebCore::RenderThemeEfl::edje):
(WebCore::RenderThemeEfl::applyPartDescriptions):
* platform/efl/RenderThemeEfl.h:
(RenderThemeEfl):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127573 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix the uses of String::operator+=() for Mac
https://bugs.webkit.org/show_bug.cgi?id=95818

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-09-05
Reviewed by Dan Bernstein.

Source/JavaScriptCore:

* jsc.cpp:
(functionJSCStack): Use StringBuilder to create the stack dump, it is faster
and avoid String::operator+=().

* parser/Parser.h:
(JSC::Parser::updateErrorMessageSpecialCase):
(JSC::Parser::updateErrorMessage):
(JSC::Parser::updateErrorWithNameAndMessage):
Use the String operators (and makeString) to concatenate the strings.

Source/WebCore:

* bindings/js/JSCSSStyleDeclarationCustom.cpp:
(WebCore::JSCSSStyleDeclaration::putDelegate):
This is a legitimate use of String::append(), it is the only
concatenation in this function.

* loader/appcache/ManifestParser.cpp:
(WebCore::parseManifest): Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127574 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Unreviewed gardening after r127513

Marking plugin third-party storage tests as failing on EFL.

* platform/efl/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127575 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Automate the use of AllInOne files in the Qt build
https://bugs.webkit.org/show_bug.cgi?id=95837

Reviewed by Tor Arne Vestbø.

Source/WebCore:

Replace the manual use of SVGAllInOne.cpp with automated use through
the ALL_IN_ONE_SOURCES variable. This adds a few more all-in-one sources
to the build and leaves out some that do not compile yet due to various
platform-dependant pre-processor macro issues.

* Target.pri:

Tools:

New feature file that implements the all-in-one file automation by
adding the requested all-in-one files to SOURCES and removing the files
it includes from SOURCES.

* qmake/mkspecs/features/use_all_in_one_files.prf: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127576 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[DRT] LTC:: Move printing related APIs from LayoutTestController to Internals
https://bugs.webkit.org/show_bug.cgi?id=92735

Reviewed by Hajime Morita.

.: 

Move numberOfPages, pageProperty & pageSizeAndMarginsInPixels in Internals and remove duplicated code from DumprenderTree & WebkitTestRunner.
Added symbols for GTK builds for corresponding APIs.

* Source/autotools/symbols.filter:

Source/WebCore: 

Move numberOfPages, pageProperty & pageSizeAndMarginsInPixels in Internals and remove duplicated code from DumprenderTree & WebkitTestRunner.

Covered by existing test cases.

* testing/Internals.cpp:
(WebCore::Internals::numberOfPages):
(WebCore):
(WebCore::Internals::pageProperty):
(WebCore::Internals::pageSizeAndMarginsInPixels):
* testing/Internals.h:
(Internals):
* testing/Internals.idl:

Source/WebKit/efl: 

Move numberOfPages, pageProperty & pageSizeAndMarginsInPixels in Internals and remove duplicated code from DumprenderTree & WebkitTestRunner.

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
* WebCoreSupport/DumpRenderTreeSupportEfl.h:

Source/WebKit/gtk: 

Move numberOfPages, pageProperty & pageSizeAndMarginsInPixels in Internals and remove duplicated code from DumprenderTree & WebkitTestRunner.

* WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
* WebCoreSupport/DumpRenderTreeSupportGtk.h:
(DumpRenderTreeSupportGtk):

Source/WebKit/qt: 

Move numberOfPages, pageProperty & pageSizeAndMarginsInPixels in Internals and remove duplicated code from DumprenderTree & WebkitTestRunner.

* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
(DumpRenderTreeSupportQt::evaluateScriptInIsolatedWorld):
* WebCoreSupport/DumpRenderTreeSupportQt.h:

Source/WebKit/win: 

Move numberOfPages, pageProperty & pageSizeAndMarginsInPixels in Internals and remove duplicated code from DumprenderTree & WebkitTestRunner.
Kept the function defination and declaration to keep binary compatibility for IWebFramePrivate.idl

* WebFrame.cpp:
(WebFrame::numberOfPages):

Source/WebKit2: 

Move numberOfPages, pageProperty & pageSizeAndMarginsInPixels in Internals and remove duplicated code from DumprenderTree & WebkitTestRunner.
Add symbols for Mac Win builds for corresponding newly added APIs.

* win/WebKit2.def:
* win/WebKit2CFLite.def:

Tools: 

Move numberOfPages, pageProperty & pageSizeAndMarginsInPixels in Internals and remove duplicated code from DumprenderTree & WebkitTestRunner.

* DumpRenderTree/TestRunner.cpp:
(TestRunner::staticFunctions):
* DumpRenderTree/TestRunner.h:
(TestRunner):
* DumpRenderTree/blackberry/TestRunnerBlackBerry.cpp:
(TestRunner::addUserStyleSheet):
* DumpRenderTree/chromium/DRTTestRunner.cpp:
(DRTTestRunner::DRTTestRunner):
(DRTTestRunner::hasCustomPageSizeStyle):
* DumpRenderTree/chromium/DRTTestRunner.h:
(DRTTestRunner):
* DumpRenderTree/efl/TestRunnerEfl.cpp:
* DumpRenderTree/gtk/TestRunnerGtk.cpp:
* DumpRenderTree/mac/TestRunnerMac.mm:
* DumpRenderTree/qt/TestRunnerQt.cpp:
(TestRunner::evaluateScriptInIsolatedWorld):
* DumpRenderTree/qt/TestRunnerQt.h:
(TestRunner):
* DumpRenderTree/win/TestRunnerWin.cpp:
* DumpRenderTree/wx/TestRunnerWx.cpp:
(TestRunner::abortModal):
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
(TestRunner):

LayoutTests: 

Move numberOfPages, pageProperty & pageSizeAndMarginsInPixels in Internals and remove duplicated code from DumprenderTree & WebkitTestRunner.
Fixed test cases to use internals API instead of testRunner.

* printing/numberOfPages-expected.txt:
* printing/page-count-layout-overflow.html:
* printing/page-count-relayout-shrink.html:
* printing/page-count-with-one-word.html:
* printing/page-format-data-display-none.html:
* printing/page-format-data-expected.txt:
* printing/page-format-data.html:
* printing/page-rule-selection-expected.txt:
* printing/page-rule-selection.html:
* printing/resources/paged-media-test-utils.js:
(numberOfPagesShouldBe):
* printing/script-tests/numberOfPages.js:
* printing/zoomed-document.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127577 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WKTR doesn't implement dumpWillCacheResponse()
https://bugs.webkit.org/show_bug.cgi?id=94607

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-05
Reviewed by Kenneth Rohde Christiansen.

Tools:

Define shouldCacheResponse() callback in resource
load client and provide implementation for
dumpWillCacheResponse() in WebKitTestRunner.

* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::InjectedBundlePage):
(WTR::InjectedBundlePage::shouldCacheResponse):
(WTR):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
(InjectedBundlePage):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::TestRunner):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
(WTR::TestRunner::dumpWillCacheResponse):
(WTR::TestRunner::shouldDumpWillCacheResponse):
(TestRunner):

LayoutTests:

Unskip http/tests/misc/willCacheResponse-delegate-callback.html
now that WebKitTestRunner implements dumpWillCacheResponse().

* platform/efl-wk2/TestExpectations:
* platform/wk2/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127578 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Unreviewed trivial build fix: Use DOMAllInOne.cpp only if we have xslt available.

* Target.pri:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127579 268f45cc-cd09-0410-ab3c-d52691b4dbfc
ShadowRoot.cloneNode() must always throw a DATA_CLONE_ERR exception.
https://bugs.webkit.org/show_bug.cgi?id=91704

Reviewed by Kentaro Hara.

Source/WebCore:

This change implement ShadowRoot::cloneNode() which throws an exception.
This also adds an overloaded version cloneNode() to ShadowRoot.idl
which is enabled only for JavaScript instead of changing the
signature of Node::cloneNode().

Note that changing the existing signature can break GObject bindings
compatibility.

Test: fast/dom/shadow/shadowroot-clonenode.html

* dom/ShadowRoot.cpp:
(WebCore::ShadowRoot::cloneNode):
(WebCore):
* dom/ShadowRoot.h:
(ShadowRoot):
* dom/ShadowRoot.idl:

LayoutTests:

* fast/dom/shadow/shadowroot-clonenode-expected.txt: Added.
* fast/dom/shadow/shadowroot-clonenode.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127580 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r127573.
http://trac.webkit.org/changeset/127573
https://bugs.webkit.org/show_bug.cgi?id=95844

Breaks EFL Debug bot tests. (Requested by drott on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-05

* platform/efl/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::themePartCacheEntryReset):
(WebCore::RenderThemeEfl::cacheThemePartNew):
(WebCore::RenderThemeEfl::paintThemePart):
(WebCore::RenderThemeEfl::setThemePath):
(WebCore::RenderThemeEfl::createCanvas):
(WebCore::RenderThemeEfl::createEdje):
(WebCore::RenderThemeEfl::applyPartDescriptions):
(WebCore::RenderThemeEfl::themeChanged):
(WebCore):
* platform/efl/RenderThemeEfl.h:
(RenderThemeEfl):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127581 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][WK2] Provide implementation for WebFrameNetworkingContext
https://bugs.webkit.org/show_bug.cgi?id=95826

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-05
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Remove EFL-specific and empty implementation for WebFrameNetworkingContext
and use the existing soup implementation instead.

* PlatformEfl.cmake:
* WebProcess/WebCoreSupport/efl/WebFrameNetworkingContext.h: Removed.

LayoutTests:

Unskip several cookie-related test cases for WK2 EFL
now that WebFrameNetworkingContext is implemented.

* platform/efl-wk2/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127582 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Fix makefile race condition between derived sources and target

r121966 removed too much of the old qmake logic, including the rule
that ensured that qmake_all would not trigger dual runs of qmake --
one of the derived sources -qmake-all rule, and one for making the
derived sources.

We now follow a similar pattern as before, by introducing a custom
target that explicitly depends on the derived sources' qmake-all before
doing a manual run of make. That ensures a single qmake run for the derived
sources.

https://bugs.webkit.org/show_bug.cgi?id=93847

Reviewed by Csaba Osztrogonác.

* qmake/mkspecs/features/functions.prf:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127583 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Unreviewed gardening.

Adding a platform specififc baseline after r127534.

* platform/efl/fast/innerHTML/innerHTML-iframe-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127584 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Build fix on OS X

Copy/paste-error resulted in us compiling InspectorPageOverlay.h

Reviewed by Ossy.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127587 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed.  Rolled DEPS.

* DEPS:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127590 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r127590.
http://trac.webkit.org/changeset/127590

Broke the Chromium bots because of a compile error in the compositor.

* DEPS:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127591 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: NMI: extract overloaded instrumentation members for WebCore classes from core NMI code.
https://bugs.webkit.org/show_bug.cgi?id=95834

Reviewed by Yury Semikhatsky.

I'd like to remove custom instrumentation methods from MemoryInstrumentation class
before upstreaming it to WTF. I've done it with help of MemoryInstrumentationTraits template helper.

Unfortunately it is not possible to use template class because mac-ews bot reports warning: redundant redeclaration of 'something' in same scope.
I've found that it is an old problem in gcc that is forced by -Wredundant-decls flag on the bot. See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15867

* dom/MemoryInstrumentation.cpp:
(WebCore::::addInstrumentedObject):
(WebCore):
* dom/MemoryInstrumentation.h:
(WebCore):
(MemoryInstrumentationTraits):
(MemoryInstrumentation):
(WebCore::MemoryInstrumentation::InstrumentedPointer::InstrumentedPointer):
(InstrumentedPointer):
(WebCore::MemoryInstrumentation::addObject):
(WebCore::MemoryInstrumentation::addInstrumentedObject):
(WebCore::MemoryInstrumentation::addRawBuffer):
(WebCore::MemoryInstrumentation::OwningTraits::addInstrumentedObject):
(WebCore::MemoryInstrumentation::OwningTraits::addObject):
(WebCore::::addInstrumentedObject):
(WebCore::::addObject):
(WebCore::MemoryObjectInfo::MemoryObjectInfo):
(WebCore::MemoryObjectInfo::objectType):
(WebCore::MemoryObjectInfo::reportObjectInfo):
(MemoryObjectInfo):
(WebCore::MemoryClassInfo::MemoryClassInfo):
(MemoryClassInfo):
(WebCore::MemoryInstrumentation::addInstrumentedObjectImpl):
(WebCore::MemoryInstrumentation::addObjectImpl):
(WebCore::MemoryInstrumentation::addHashMap):
(WebCore::MemoryInstrumentation::addHashSet):
(WebCore::MemoryInstrumentation::addInstrumentedCollection):
(WebCore::MemoryInstrumentation::addInstrumentedMapEntries):
(WebCore::MemoryInstrumentation::addInstrumentedMapValues):
(WebCore::MemoryInstrumentation::addListHashSet):
(WebCore::MemoryInstrumentation::addVector):
* inspector/MemoryInstrumentationImpl.cpp:
(WebCore::MemoryInstrumentationImpl::countObjectSize):
* inspector/MemoryInstrumentationImpl.h:
(WebCore::MemoryInstrumentationImpl::totalSize):
(MemoryInstrumentationImpl):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127592 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: NMI: extract MemoryObjectType constants from MemoryInstrumentation.
https://bugs.webkit.org/show_bug.cgi?id=95850

Reviewed by Yury Semikhatsky.

I'd like to extract MemoryObjectTypes into separate classes.
After that we will be able to move core NMI instrumentation code to WTF.

Source/WebCore:

* bindings/js/ScriptWrappable.h:
(WebCore::ScriptWrappable::reportMemoryUsage):
* bindings/v8/DOMDataStore.cpp:
(WebCore::DOMDataStore::reportMemoryUsage):
* bindings/v8/IntrusiveDOMWrapperMap.h:
(WebCore::ChunkedTable::reportMemoryUsage):
* bindings/v8/ScriptWrappable.h:
(WebCore::ScriptWrappable::reportMemoryUsage):
* bindings/v8/V8Binding.cpp:
(WebCore::StringCache::reportMemoryUsage):
* bindings/v8/V8DOMMap.h:
* bindings/v8/V8PerIsolateData.cpp:
(WebCore::V8PerIsolateData::reportMemoryUsage):
* css/CSSAspectRatioValue.cpp:
(WebCore::CSSAspectRatioValue::reportDescendantMemoryUsage):
* css/CSSBorderImageSliceValue.cpp:
(WebCore::CSSBorderImageSliceValue::reportDescendantMemoryUsage):
* css/CSSCalculationValue.cpp:
(WebCore::CSSCalcValue::reportDescendantMemoryUsage):
* css/CSSCanvasValue.cpp:
(WebCore::CSSCanvasValue::reportDescendantMemoryUsage):
* css/CSSCharsetRule.cpp:
(WebCore::CSSCharsetRule::reportDescendantMemoryUsage):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::reportMemoryUsage):
* css/CSSCrossfadeValue.cpp:
(WebCore::CSSCrossfadeValue::reportDescendantMemoryUsage):
* css/CSSCursorImageValue.cpp:
(WebCore::CSSCursorImageValue::reportDescendantMemoryUsage):
* css/CSSFontFaceRule.cpp:
(WebCore::CSSFontFaceRule::reportDescendantMemoryUsage):
* css/CSSFontFaceSrcValue.cpp:
(WebCore::CSSFontFaceSrcValue::reportDescendantMemoryUsage):
* css/CSSFunctionValue.cpp:
(WebCore::CSSFunctionValue::reportDescendantMemoryUsage):
* css/CSSGradientValue.cpp:
(WebCore::CSSGradientColorStop::reportMemoryUsage):
(WebCore::CSSGradientValue::reportBaseClassMemoryUsage):
(WebCore::CSSLinearGradientValue::reportDescendantMemoryUsage):
(WebCore::CSSRadialGradientValue::reportDescendantMemoryUsage):
* css/CSSImageGeneratorValue.cpp:
(WebCore::CSSImageGeneratorValue::reportBaseClassMemoryUsage):
* css/CSSImageSetValue.cpp:
(WebCore::CSSImageSetValue::reportDescendantMemoryUsage):
(WebCore::CSSImageSetValue::ImageWithScale::reportMemoryUsage):
* css/CSSImageValue.cpp:
(WebCore::CSSImageValue::reportDescendantMemoryUsage):
* css/CSSImportRule.cpp:
(WebCore::CSSImportRule::reportDescendantMemoryUsage):
* css/CSSInheritedValue.cpp:
(WebCore::CSSInheritedValue::reportDescendantMemoryUsage):
* css/CSSInitialValue.cpp:
(WebCore::CSSInitialValue::reportDescendantMemoryUsage):
* css/CSSLineBoxContainValue.cpp:
(WebCore::CSSLineBoxContainValue::reportDescendantMemoryUsage):
* css/CSSMediaRule.cpp:
(WebCore::CSSMediaRule::reportDescendantMemoryUsage):
* css/CSSPageRule.cpp:
(WebCore::CSSPageRule::reportDescendantMemoryUsage):
* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::reportDescendantMemoryUsage):
* css/CSSProperty.cpp:
(WebCore::CSSProperty::reportMemoryUsage):
* css/CSSReflectValue.cpp:
(WebCore::CSSReflectValue::reportDescendantMemoryUsage):
* css/CSSRule.cpp:
(WebCore::CSSRule::reportBaseClassMemoryUsage):
* css/CSSRuleList.cpp:
(WebCore::StaticCSSRuleList::reportMemoryUsage):
* css/CSSRuleList.h:
* css/CSSSelectorList.cpp:
(WebCore::CSSSelectorList::reportMemoryUsage):
* css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::reportDescendantMemoryUsage):
* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::reportMemoryUsage):
* css/CSSTimingFunctionValue.cpp:
(WebCore::CSSLinearTimingFunctionValue::reportDescendantMemoryUsage):
(WebCore::CSSCubicBezierTimingFunctionValue::reportDescendantMemoryUsage):
(WebCore::CSSStepsTimingFunctionValue::reportDescendantMemoryUsage):
* css/CSSUnicodeRangeValue.cpp:
(WebCore::CSSUnicodeRangeValue::reportDescendantMemoryUsage):
* css/CSSUnknownRule.h:
(WebCore::CSSUnknownRule::reportDescendantMemoryUsage):
* css/CSSValue.cpp:
(WebCore::TextCloneCSSValue::reportDescendantMemoryUsage):
* css/CSSValueList.cpp:
(WebCore::CSSValueList::reportDescendantMemoryUsage):
* css/CSSVariableValue.h:
(WebCore::CSSVariableValue::reportDescendantMemoryUsage):
* css/FontFeatureValue.cpp:
(WebCore::FontFeatureValue::reportDescendantMemoryUsage):
* css/FontValue.cpp:
(WebCore::FontValue::reportDescendantMemoryUsage):
* css/MediaList.cpp:
(WebCore::MediaQuerySet::reportMemoryUsage):
(WebCore::MediaList::reportMemoryUsage):
* css/MediaQuery.cpp:
(WebCore::MediaQuery::reportMemoryUsage):
* css/MediaQueryExp.cpp:
(WebCore::MediaQueryExp::reportMemoryUsage):
* css/PropertySetCSSStyleDeclaration.cpp:
(WebCore::PropertySetCSSStyleDeclaration::reportMemoryUsage):
(WebCore::StyleRuleCSSStyleDeclaration::reportMemoryUsage):
(WebCore::InlineCSSStyleDeclaration::reportMemoryUsage):
* css/ShadowValue.cpp:
(WebCore::ShadowValue::reportDescendantMemoryUsage):
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::reportMemoryUsage):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::Features::reportMemoryUsage):
(WebCore::StyleResolver::collectMatchingRulesForList):
* css/StyleRule.cpp:
(WebCore::StyleRuleBase::reportMemoryUsage):
(WebCore::StyleRule::reportDescendantMemoryUsage):
(WebCore::StyleRulePage::reportDescendantMemoryUsage):
(WebCore::StyleRuleFontFace::reportDescendantMemoryUsage):
(WebCore::StyleRuleBlock::reportDescendantMemoryUsage):
(WebCore::StyleRuleMedia::reportDescendantMemoryUsage):
(WebCore::StyleRuleRegion::reportDescendantMemoryUsage):
* css/StyleRuleImport.cpp:
(WebCore::StyleRuleImport::reportDescendantMemoryUsage):
* css/StyleSheetContents.cpp:
(WebCore::StyleSheetContents::reportMemoryUsage):
* css/WebKitCSSFilterValue.cpp:
(WebCore::WebKitCSSFilterValue::reportDescendantMemoryUsage):
* css/WebKitCSSKeyframeRule.cpp:
(WebCore::StyleKeyframe::reportMemoryUsage):
(WebCore::WebKitCSSKeyframeRule::reportDescendantMemoryUsage):
* css/WebKitCSSKeyframesRule.cpp:
(WebCore::StyleRuleKeyframes::reportDescendantMemoryUsage):
(WebCore::WebKitCSSKeyframesRule::reportDescendantMemoryUsage):
* css/WebKitCSSMixFunctionValue.cpp:
(WebCore::WebKitCSSMixFunctionValue::reportDescendantMemoryUsage):
* css/WebKitCSSRegionRule.cpp:
(WebCore::WebKitCSSRegionRule::reportDescendantMemoryUsage):
* css/WebKitCSSSVGDocumentValue.cpp:
(WebCore::WebKitCSSSVGDocumentValue::reportDescendantMemoryUsage):
* css/WebKitCSSShaderValue.cpp:
(WebCore::WebKitCSSShaderValue::reportDescendantMemoryUsage):
* css/WebKitCSSTransformValue.cpp:
(WebCore::WebKitCSSTransformValue::reportDescendantMemoryUsage):
* dom/Attribute.h:
(WebCore::Attribute::reportMemoryUsage):
* dom/CharacterData.cpp:
(WebCore::CharacterData::reportMemoryUsage):
* dom/ContainerNode.h:
(WebCore::ContainerNode::reportMemoryUsage):
* dom/Document.cpp:
(WebCore::Document::reportMemoryUsage):
* dom/DocumentEventQueue.cpp:
(WebCore::DocumentEventQueue::reportMemoryUsage):
* dom/Element.h:
(WebCore::Element::reportMemoryUsage):
* dom/ElementAttributeData.cpp:
(WebCore::ElementAttributeData::reportMemoryUsage):
* dom/Event.cpp:
(WebCore::Event::reportMemoryUsage):
* dom/MemoryInstrumentation.cpp:
(WebCore):
* dom/MemoryInstrumentation.h:
(WebCore):
(GenericMemoryTypes):
(WebCore::MemoryInstrumentation::addRootObject):
(WebCore::MemoryObjectInfo::reportObjectInfo):
(WebCoreMemoryTypes):
* dom/Node.cpp:
(WebCore::Node::reportMemoryUsage):
* dom/QualifiedName.h:
(WebCore::QualifiedName::QualifiedNameImpl::reportMemoryUsage):
(WebCore::QualifiedName::reportMemoryUsage):
* html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::reportMemoryUsage):
* inspector/InspectorMemoryAgent.cpp:
(WebCore):
* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::reportMemoryUsage):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::reportMemoryUsage):
* loader/MainResourceLoader.cpp:
(WebCore::MainResourceLoader::reportMemoryUsage):
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::reportMemoryUsage):
* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::reportMemoryUsage):
* loader/SubstituteData.cpp:
(WebCore::SubstituteData::reportMemoryUsage):
* loader/cache/CachedCSSStyleSheet.cpp:
(WebCore::CachedCSSStyleSheet::reportMemoryUsage):
* loader/cache/CachedFont.cpp:
(WebCore::CachedFont::reportMemoryUsage):
* loader/cache/CachedImage.cpp:
(WebCore::CachedImage::reportMemoryUsage):
* loader/cache/CachedRawResource.cpp:
(WebCore::CachedRawResource::reportMemoryUsage):
* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::reportMemoryUsage):
* loader/cache/CachedResourceHandle.cpp:
(WebCore::CachedResourceHandleBase::reportMemoryUsage):
* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::reportMemoryUsage):
* loader/cache/CachedSVGDocument.cpp:
(WebCore::CachedSVGDocument::reportMemoryUsage):
* loader/cache/CachedScript.cpp:
(WebCore::CachedScript::reportMemoryUsage):
* loader/cache/CachedShader.cpp:
(WebCore::CachedShader::reportMemoryUsage):
* loader/cache/CachedXSLStyleSheet.cpp:
(WebCore::CachedXSLStyleSheet::reportMemoryUsage):
* loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::reportMemoryUsage):
* page/Frame.cpp:
(WebCore::Frame::reportMemoryUsage):
* platform/SharedBuffer.cpp:
(WebCore::SharedBuffer::reportMemoryUsage):
* platform/TreeShared.h:
(WebCore::TreeShared::reportMemoryUsage):
* platform/graphics/BitmapImage.cpp:
(WebCore::BitmapImage::reportMemoryUsage):
* platform/graphics/CrossfadeGeneratedImage.cpp:
(WebCore::CrossfadeGeneratedImage::reportMemoryUsage):
* platform/graphics/GeneratedImage.cpp:
(WebCore::GeneratedImage::reportMemoryUsage):
* platform/graphics/GeneratorGeneratedImage.cpp:
(WebCore::GeneratorGeneratedImage::reportMemoryUsage):
* platform/graphics/Image.cpp:
(WebCore::Image::reportMemoryUsage):
* platform/network/FormData.cpp:
(WebCore::FormData::reportMemoryUsage):
* platform/network/ResourceRequestBase.cpp:
(WebCore::ResourceRequestBase::reportMemoryUsage):
* platform/network/ResourceResponseBase.cpp:
(WebCore::ResourceResponseBase::reportMemoryUsage):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::reportMemoryUsage):
* rendering/style/StyleRareInheritedData.cpp:
(WebCore::StyleRareInheritedData::reportMemoryUsage):
* rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::reportMemoryUsage):
* svg/SVGColor.cpp:
(WebCore::SVGColor::reportDescendantMemoryUsage):
* svg/SVGPaint.cpp:
(WebCore::SVGPaint::reportDescendantMemoryUsage):
* svg/graphics/SVGImage.cpp:
(WebCore::SVGImage::reportMemoryUsage):

Source/WebKit/chromium:

* tests/MemoryInstrumentationTest.cpp:
(WebCore::Instrumented::reportMemoryUsage):
(WebCore::InstrumentedRefPtr::reportMemoryUsage):
(WebCore::InstrumentedWithOwnPtr::reportMemoryUsage):
(WebCore::InstrumentedOther::reportMemoryUsage):
(WebCore::InstrumentedDOM::reportMemoryUsage):
(WebCore::TEST):
(WebCore::NonVirtualInstrumented::reportMemoryUsage):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127593 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Implement number of matches and current active match index for find-on-page
https://bugs.webkit.org/show_bug.cgi?id=95801

Patch by Andy Chen <andchen@rim.com> on 2012-09-05
Reviewed by Antonio Gomes.

- Calculate current match index for find-on-page
- Notify client when number of matches and current match index update.
PR 162090 162091.
Internally reviewed by Mike Fenton and Joe Mason

* Api/WebPageClient.h:
* WebKitSupport/InPageSearchManager.cpp:
(BlackBerry::WebKit::InPageSearchManager::DeferredScopeStringMatches::DeferredScopeStringMatches):
(BlackBerry::WebKit::InPageSearchManager::DeferredScopeStringMatches::doTimeout):
(InPageSearchManager::DeferredScopeStringMatches):
(BlackBerry::WebKit::InPageSearchManager::findNextString):
(BlackBerry::WebKit::InPageSearchManager::findAndMarkText):
(BlackBerry::WebKit::InPageSearchManager::scopeStringMatches):
(BlackBerry::WebKit::InPageSearchManager::scopeStringMatchesSoon):
(BlackBerry::WebKit::InPageSearchManager::callScopeStringMatches):
* WebKitSupport/InPageSearchManager.h:
(InPageSearchManager):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127594 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Frequent crashes in PluginView::scriptObject under runtimeObjectCustomGetOwnPropertySlot
<rdar://problem/12142226> and https://bugs.webkit.org/show_bug.cgi?id=95026

Source/WebKit2:

Patch partially by Andras Becsi  <andras.becsi@nokia.com>

Reviewed by Andy Estes.

If a plug-in fails to initialize then the m_plugin pointer is cleared out.
When accessing the script object it is appropriate to unconditionally null check m_plugin.

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::scriptObject): Null check m_plugin before trying to use it.

Tools:

Reviewed by Andy Estes.

Add a plug-in that always fails to initialize:
* DumpRenderTree/TestNetscapePlugIn/Tests/NPPNewFails.cpp: Added.
(NPPNewFails):
(NPPNewFails::NPPNewFails):
(NPPNewFails::NPP_New):

Add it to all the project files:
* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:
* DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj:
* DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:

LayoutTests:

Reviewed by Andy Estes.

* plugins/npp-new-fails-expected.txt: Added.
* plugins/npp-new-fails.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127595 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Regions] Auto width is not working for Regions
https://bugs.webkit.org/show_bug.cgi?id=74135

Reviewed by Julien Chaffraix.

Source/WebCore:

It was not possible to flow content into a region having { width: auto; } since in such case, the region width was computed to 0.
Now, a region having auto width, will have its width computed following the rules for calculation of widths and margins
(http://www.w3.org/TR/CSS2/visudet.html#Computing_widths_and_margins).
For those cases in which resolving the width requires measuring of content's min/max-content values, we use the associated named flow min/max-content
values (the same for all regions with width auto in a region chain).
When a region has width:auto, the computation of width should be done using normal block/box sizing code, instead of replaced element code.
Contains code contributed by Alexandru Chiculita(achicu@adobe.com).

Tests: fast/regions/autowidth-abspos-regionchain.html
       fast/regions/autowidth-abspos.html
       fast/regions/autowidth-float.html
       fast/regions/autowidth-inlineblock.html
       fast/regions/autowidth-nonreplaced-abspos.html
       fast/regions/autowidth-nonreplacedblock-normalflow.html
       fast/regions/autowidth-normalflow-maxwidth.html
       fast/regions/autowidth-normalflow-minmaxwidth.html
       fast/regions/autowidth-normalflow-minwidth.html
       fast/regions/autowidth-normalflow-vertrl.html
       fast/regions/autowidth-normalflow.html

* rendering/RenderBox.cpp:
(WebCore::RenderBox::computePositionedLogicalWidth): For positioned auto-width regions, skip the code path for replaced elements.
* rendering/RenderRegion.cpp:
(WebCore): Override min/maxPreferredLogicalWidth as they are used in the process of computing width for regions with auto width.
As this moment, a region is still a RenderReplaced element, so this code needs to be revisited when the region will become a RenderBlock.
Also, for min/max-width, we support only <length> values. We will extend support for other values in a following patch.
(WebCore::RenderRegion::minPreferredLogicalWidth):
(WebCore::RenderRegion::maxPreferredLogicalWidth):
* rendering/RenderRegion.h:
(RenderRegion):
Override isInlineBlockOrInlineTable() and shouldComputeSizeAsReplaced() to ensure that computation for width auto follows the normal
block/box sizing code.

LayoutTests:

It was not possible to flow content into a region having { width: auto; } since in such case, the region width was computed to 0.
Now, a region having auto width, will have its width computed following the rules for calculation of widths and margins
(http://www.w3.org/TR/CSS2/visudet.html#Computing_widths_and_margins).
For those cases in which resolving the width requires measuring of content's min/max-content values, we use the associated named flow min/max-content
values (the same for all regions with width auto in a region chain).

Besides adding new tests, i have modified existing tests that were having regions with width:auto as they were failing after this patch.

* fast/regions/autowidth-abspos-expected.html: Added.
* fast/regions/autowidth-abspos-regionchain-expected.html: Added.
* fast/regions/autowidth-abspos-regionchain.html: Added.
* fast/regions/autowidth-abspos.html: Added.
* fast/regions/autowidth-float-expected.html: Added.
* fast/regions/autowidth-float.html: Added.
* fast/regions/autowidth-inlineblock-expected.html: Added.
* fast/regions/autowidth-inlineblock.html: Added.
* fast/regions/autowidth-nonreplaced-abspos-expected.html: Added.
* fast/regions/autowidth-nonreplaced-abspos.html: Added.
* fast/regions/autowidth-nonreplacedblock-normalflow-expected.html: Added.
* fast/regions/autowidth-nonreplacedblock-normalflow.html: Added.
* fast/regions/autowidth-normalflow-expected.html: Added.
* fast/regions/autowidth-normalflow-maxwidth-expected.html: Added.
* fast/regions/autowidth-normalflow-maxwidth.html: Added.
* fast/regions/autowidth-normalflow-minmaxwidth-expected.html: Added.
* fast/regions/autowidth-normalflow-minmaxwidth.html: Added.
* fast/regions/autowidth-normalflow-minwidth-expected.html: Added.
* fast/regions/autowidth-normalflow-minwidth.html: Added.
* fast/regions/autowidth-normalflow-vertrl-expected.html: Added.
* fast/regions/autowidth-normalflow-vertrl.html: Added.
* fast/regions/autowidth-normalflow.html: Added.
* fast/regions/bottom-overflow-out-of-first-region.html:
* fast/regions/flows-dependency-dynamic-remove.html:
* fast/regions/flows-dependency-same-flow.html:
* fast/regions/render-region-renderer-expected.html:
* fast/regions/top-overflow-out-of-second-region.html:


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