Unreviewed gardening.

Unskip tests that are now non-flaky (see fix in http://trac.webkit.org/changeset/121506)

* platform/chromium/TestExpectations:
* platform/mac/TestExpectations:

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

Rebaseline compositing/repaint/newly-composited-on-scroll.html on EFL after r125086.
Rebaseline fast/forms/datalist/range-snap-to-datalist.html on EFL after r125048.

* platform/efl/compositing/repaint/newly-composited-on-scroll-expected.png: Added.
* platform/efl/compositing/repaint/newly-composited-on-scroll-expected.txt: Added.
* platform/efl/fast/forms/datalist/range-snap-to-datalist-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125246 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Mouse-select then Cut, results in preceding character being lost
https://bugs.webkit.org/show_bug.cgi?id=60830

Patch by Sukolsak Sakshuwong <sukolsak@google.com> on 2012-08-09
Reviewed by Ryosuke Niwa.

Source/WebCore:

This bug happened only in text fields and text areas, not in other
content-editable elements. That's because when we cut or copied text
in a text control, we called Pasteboard::writePlainText instead of
Pasteboard::writeSelection. writePlainText did not record the smart replace
information. Make writePlainText record the smart replace information.

Test: editing/pasteboard/smart-paste-in-text-control.html

* editing/Editor.cpp:
(WebCore::Editor::cut):
(WebCore::Editor::copy):
* inspector/InjectedScriptHost.cpp:
(WebCore::InjectedScriptHost::copyText):
* inspector/InspectorFrontendHost.cpp:
(WebCore::InspectorFrontendHost::copyText):
* platform/Pasteboard.h:
* platform/blackberry/PasteboardBlackBerry.cpp:
(WebCore::Pasteboard::writePlainText):
* platform/chromium/PasteboardChromium.cpp:
(WebCore::Pasteboard::writePlainText):
* platform/efl/PasteboardEfl.cpp:
(WebCore::Pasteboard::writePlainText):
* platform/gtk/PasteboardGtk.cpp:
(WebCore::Pasteboard::writePlainText):
* platform/mac/ClipboardMac.mm:
(WebCore::ClipboardMac::writePlainText):
* platform/mac/PasteboardMac.mm:
(WebCore::Pasteboard::writePlainText):
* platform/qt/PasteboardQt.cpp:
(WebCore::Pasteboard::writePlainText):
* platform/win/PasteboardWin.cpp:
(WebCore::Pasteboard::writePlainText):
* platform/wince/PasteboardWinCE.cpp:
(WebCore::Pasteboard::writePlainText):
* platform/wx/ClipboardWx.cpp:
(WebCore::ClipboardWx::writePlainText):
* platform/wx/PasteboardWx.cpp:
(WebCore::Pasteboard::writePlainText):

LayoutTests:

* editing/pasteboard/smart-paste-in-text-control-expected.txt: Added.
* editing/pasteboard/smart-paste-in-text-control.html: Added.
* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125247 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: CodeGeneratorInspector.py: add complete support for TypeBuilder::Array
https://bugs.webkit.org/show_bug.cgi?id=93559

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-08-09
Reviewed by Pavel Feldman.

Missing binding methods are added to templates. Core assert methods are declared in a helper class now.

* inspector/CodeGeneratorInspector.py:
(RawTypes.BaseType.generate_validate_method):
(RawTypes.BaseType.get_raw_validator_call_text):
(RawTypes.generate_validate_methods):
(RawTypes.Int.generate_validate_method):
(RawTypes.Int.get_raw_validator_call_text):
(RawTypes.Number.get_validate_method_params.ValidateMethodParams):
(RawTypes.Any.generate_validate_method):
(RawTypes.Any.get_raw_validator_call_text):
(RawTypes.Array.get_validate_method_params.ValidateMethodParams):
(RawTypes.Array.get_validate_method_params):
(PlainObjectBinding.get_validator_call_text):
(RuntimeCastHelper):
(Generator):
(Generator.go):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125248 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Remove unused method InspectorResourceAgent::clearCache from Resource Agent.
https://bugs.webkit.org/show_bug.cgi?id=93675

Patch by Vivek Galatage <vivekgalatage@gmail.com> on 2012-08-09
Reviewed by Pavel Feldman.

Removing unused method declaration for clearCache in InspectorResourceAgent. It's marked as FIXME.
Hence cleaning up.

No new tests as cleanup.

* inspector/InspectorResourceAgent.h:
(InspectorResourceAgent):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125249 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add DOMString reflection test
https://bugs.webkit.org/show_bug.cgi?id=93681

Reviewed by Hajime Morita.

Introduce fast/dom/domstring-atribute-reflection.html, which
should have tess for all of reflected DOMString IDL attribute,
like fast/dom/boolean-attribute-reflection.html and
URL-attribute-reflectin.html.

As the first step, integrate fast/forms/input-step.html and
fast/form/name-attribute.html into
domstring-attribute-reflection.html.

* fast/dom/domstring-attribute-reflection-expected.txt: Renamed from LayoutTests/fast/forms/name-attribute-expected.txt.
* fast/dom/domstring-attribute-reflection.html: Added.
* fast/forms/input-step-expected.txt: Removed.
* fast/forms/input-step.html: Removed.
* fast/forms/name-attribute.html: Removed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125250 268f45cc-cd09-0410-ab3c-d52691b4dbfc
SVGElementInstance should have EventTarget on the prototype chain
https://bugs.webkit.org/show_bug.cgi?id=88232

Reviewed by Adam Barth.

SVG 1.1 specifies that SVGElementInstance has EventTarget as its
parent interface:
<http://www.w3.org/TR/SVG/struct.html#InterfaceSVGElementInstance>
Match the spec by putting EventTarget on the prototype chain of
SVGElementInstance instead of redundantly declaring
addEventListener, removeEventListener and dispatchEvent on the
SVGElementInstance interface. This is an incremental step to make
all EventTargets do it this way, being tracked in bug 67312.

Covered by existing tests, eg
svg/custom/use-instanceRoot-as-event-target.xhtml

* CMakeLists.txt: Finding base interface types requires
searching directories with the IDLs of base interfaces.
* DerivedSources.cpp: Add generated JSEventTarget.cpp.
* DerivedSources.make: (Search paths again -- see CMakeLists.txt)
* DerivedSources.pri: "
* bindings/js/JSEventTargetCustom.cpp:
(WebCore::toEventTarget): Try to unwrap EventTargets simply as
EventTargets. When all EventTargets do this consistently this
function will be simplified.
* bindings/js/JSSVGElementInstanceCustom.cpp:
(WebCore::JSSVGElementInstance::visitChildren): SVGElementInstance
skips walking its event listener list because it forwards
listeners to its corresponding element.
* bindings/scripts/CodeGenerator.pm:
(IsStrictSubtype): For finding what is an EventTarget based on
parent interface.
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader): Extend the heuristic for what is an
EventTarget. When all EventTargets are handled consistently this
will be simplified.
(GenerateImplementation):
* bindings/scripts/CodeGeneratorV8.pm: Extend the heuristic for
what is an EventTarget, and remove some of the special-casing for
EventTarget.
(GenerateHeader):
(GetInternalFields):
(GenerateImplementation):
(BaseInterfaceName):
(GenerateToV8Converters):
(GetNativeType):
(JSValueToNative):
(GetV8HeaderName):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore::V8Float64Array::wrapSlow): Add assertions.
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore::V8TestNode::wrapSlow):
* svg/SVGElementInstance.h: Must extend EventTarget first so that
static_cast<EventTarget*>(elementInstance) is the same pointer as
elementInstance, similar to how static_cast<Node*>(element) is the
same pointer as element.
* svg/SVGElementInstance.idl: Extend EventTarget; no longer need
to declare add/removeEventListener and dispatchEvent.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125251 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Convert CSSParser's m_reusableSelectorVector to OwnPtr and rename to m_selectorVector.
https://bugs.webkit.org/show_bug.cgi?id=93574

Patch by Shane Stephens <shanestephens@google.com> on 2012-08-09
Reviewed by Ojan Vafai.

This is preparatory work for CSS Hierarchies (see wkb.ug/79939).
CSS Hierarchies works by pushing selectorVectors onto a stack while nested selectorVectors are parsed.
For this reason, the selectorVector in CSSParser can't be re-used between selector parses within a set of
nested selectors. This patch wraps the selectorVector in an OwnPtr but does not otherwise modify its use.

Similarly, CSSParser::m_parsedProperties is converted from a direct ParsedPropertyVector included
as a member of CSSParser to an OwnPtr.

Once Hierarchies are introduced, when a selectorVector is stacked a new one will be created
and stored in m_selectorVector (see wkb.ug/79939 for context). However, an accompanying unstacking
mechanism ensures that selectorVectors will be reused in all circumstances where they currently are.

This patch also introduces a CSSSelectorVector typedef to simplify and improve readability of
type signatures in and around CSSParser.

No new tests as this patch doesn't introduce new functionality.

* css/CSSGrammar.y:
* css/CSSParser.cpp:
(WebCore::CSSParser::CSSParser):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseColor):
(WebCore::CSSParser::parseDeclaration):
(WebCore):
(WebCore::filterProperties):
(WebCore::CSSParser::createStylePropertySet):
(WebCore::CSSParser::addProperty):
(WebCore::CSSParser::rollbackLastProperties):
(WebCore::CSSParser::clearProperties):
(WebCore::CSSParser::parse4Values):
(WebCore::CSSParser::parseFlowThread):
(WebCore::CSSParser::createFloatingSelectorVector):
(WebCore::CSSParser::sinkFloatingSelectorVector):
(WebCore::CSSParser::createStyleRule):
(WebCore::CSSParser::createFontFaceRule):
(WebCore::CSSParser::createPageRule):
(WebCore::CSSParser::setReusableRegionSelectorVector):
(WebCore::CSSParser::startDeclarationsForMarginBox):
(WebCore::CSSParser::endDeclarationsForMarginBox):
(WebCore::CSSParser::deleteFontFaceOnlyValues):

m_reusableSelectorVector renamed to m_selectorVector and wrapped in OwnPtr.
m_parsedProperties wrapped in OwnPtr.
* css/CSSParser.h:
(WebCore::CSSParser::hasProperties):
(WebCore::CSSParser::selectorVector): function renamed from reusableSelectorVector
(CSSParser):
(WebCore::CSSParser::reusableRegionSelectorVector):
* css/CSSParserValues.cpp:
(WebCore::CSSParserSelector::adoptSelectorVector):
* css/CSSParserValues.h: CSSSelectorVector typedef added
(WebCore):
(CSSParserSelector):
* css/CSSSelectorList.cpp:
(WebCore::CSSSelectorList::adoptSelectorVector):
* css/CSSSelectorList.h:
(CSSSelectorList):
* css/SVGCSSParser.cpp:
(WebCore::CSSParser::parseSVGValue):
* css/StyleRule.cpp:
(WebCore::StyleRuleRegion::StyleRuleRegion):
* css/StyleRule.h:
(WebCore::StyleRule::parserAdoptSelectorVector):
(WebCore::StyleRulePage::parserAdoptSelectorVector):
(WebCore::StyleRuleRegion::create):
(StyleRuleRegion):

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