WebKit-https.git
8 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Mon, 19 Dec 2011 10:37:35 +0000 (10:37 +0000)]
[Qt] Unreviewed gardening.

* platform/qt/Skipped: Skip a new failing test.
* platform/qt/fast/dom/Window/window-properties-expected.txt: Updated after r103217.
* platform/qt/fast/dom/Window/window-property-descriptors-expected.txt: Updated after r103217.
* platform/qt/fast/dom/prototype-inheritance-2-expected.txt: Updated after r103217.

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

8 years agoRemove unnecessary [JSCCustomGetter] IDLs from DOMWindow.idl
haraken@chromium.org [Mon, 19 Dec 2011 08:48:51 +0000 (08:48 +0000)]
Remove unnecessary [JSCCustomGetter] IDLs from DOMWindow.idl
https://bugs.webkit.org/show_bug.cgi?id=74829

Reviewed by Adam Barth.

Now JSC has implemented the [Constructor] IDL and it generates
getDOMConstructor() automatically. This patch removes hand-written
unnecessary getDOMConstructor()s from JSDOMWindowCustom.cpp.

No new tests. No change in behavior.

* bindings/js/JSDOMWindowCustom.cpp:
* page/DOMWindow.idl:

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

8 years agoThe HTML parser doesn't enforce the "Noah's Ark condition" from the HTML5 spec
abarth@webkit.org [Mon, 19 Dec 2011 08:28:06 +0000 (08:28 +0000)]
The HTML parser doesn't enforce the "Noah's Ark condition" from the HTML5 spec
https://bugs.webkit.org/show_bug.cgi?id=74828

Reviewed by Darin Adler.

Source/WebCore:

This patch implement the "Noah's Ark condition" from the HTML5
specification.  This condition limits the number of identitical
elements that can be in the list of active formatting elements.  I'm not
entirely sure that enforcing this condition is worth the complexity,
but given that we've come this far in support of the HTML5 parsing
algorithm, we might as well finish it.

After this patch, we pass all but one of the html5lib parsing tests!

Tests: html5lib/runner.html

* html/parser/HTMLFormattingElementList.cpp:
(WebCore::attributeCount):
(WebCore::HTMLFormattingElementList::append):
(WebCore::HTMLFormattingElementList::tryToEnsureNoahsArkConditionQuickly):
(WebCore::HTMLFormattingElementList::ensureNoahsArkCondition):
* html/parser/HTMLFormattingElementList.h:

LayoutTests:

Show test progression.

* fast/parser/residual-style-dom-expected.txt:
    - This isn't a great test because it's hard to see how changes
      affect the output.  However, we have good coverage of these
      topics in the HTML5lib tests.
* html5lib/runner-expected.txt:
* platform/chromium/html5lib/runner-expected.txt:

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

8 years agoAdd support for 8 bits strings to Document::isValidName()
commit-queue@webkit.org [Mon, 19 Dec 2011 08:11:24 +0000 (08:11 +0000)]
Add support for 8 bits strings to Document::isValidName()
https://bugs.webkit.org/show_bug.cgi?id=74784

Patch by Benjamin Poulain <bpoulain@apple.com> on 2011-12-19
Reviewed by Darin Adler.

Source/WebCore:

Avoid the conversion to 16bits when we are in the ASCII fast path,
otherwise fallback to the Unicode testing in 16bits.

* dom/Document.cpp:
(WebCore::isValidNameASCII):
(WebCore::Document::isValidName):

LayoutTests:

Add tests for valid and invalid names for nodes.

* fast/dom/Document/createElement-invalid-names-expected.txt: Added.
* fast/dom/Document/createElement-invalid-names.html: Added.
* fast/dom/Document/createElement-valid-names-expected.txt: Added.
* fast/dom/Document/createElement-valid-names.html: Added.

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

8 years agoREGRESSION(r101445): [JSC] Generated code for custom getters and setters
haraken@chromium.org [Mon, 19 Dec 2011 07:15:58 +0000 (07:15 +0000)]
REGRESSION(r101445): [JSC] Generated code for custom getters and setters
with the [Supplemental] IDL is wrong
https://bugs.webkit.org/show_bug.cgi?id=74837

Reviewed by Darin Adler.

In bug 73162, we implemented the [Supplemental] IDL, but the generated code
for custom getters and setters was wrong in JSC. This patch fixes CodeGeneratorJS.pm
so that the result of WebCore/bindings/scripts/test/TestInterface.idl becomes as follows:

Wrong:
    JSValue jsTestInterfaceStr3(ExecState* exec, JSValue slotBase, const Identifier&)
    {
        JSTestInterface* castedThis = static_cast<JSTestInterface*>(asObject(slotBase));
        return JSTestSupplemental::str3(castedThis, exec);
    }

Correct:
    JSValue jsTestInterfaceStr3(ExecState* exec, JSValue slotBase, const Identifier&)
    {
        JSTestInterface* castedThis = static_cast<JSTestInterface*>(asObject(slotBase));
        TestInterface* imp = static_cast<TestInterface*>(castedThis->impl());
        return castedThis->str3(imp, exec);
    }

Tests: bindings/scripts/test/JS/TestInterface.idl

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
* bindings/scripts/test/JS/JSTestInterface.cpp: Updated run-bindings-tests result.
(WebCore::jsTestInterfaceStr3):
(WebCore::setJSTestInterfaceStr3):
* bindings/scripts/test/JS/JSTestInterface.h: Ditto.

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

8 years agoA test that mutation happens when asynchronous spell checking is in process.
commit-queue@webkit.org [Mon, 19 Dec 2011 06:59:54 +0000 (06:59 +0000)]
A test that mutation happens when asynchronous spell checking is in process.
https://bugs.webkit.org/show_bug.cgi?id=72940

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-12-18
Reviewed by Hajime Morita.

Added a test that mutation happens when spellchecking.
This test confirms crash won't happen, and how markers are used.

* editing/spelling/spellcheck-async-mutation-expected.txt: Added.
* editing/spelling/spellcheck-async-mutation.html: Added.
* platform/gtk/Skipped:
* platform/mac-leopard/Skipped:
* platform/qt/Skipped:

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

8 years agoFix typo in comment.
abarth@webkit.org [Mon, 19 Dec 2011 06:39:12 +0000 (06:39 +0000)]
Fix typo in comment.

* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):

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

8 years agoDFG is too sloppy with register allocation
fpizlo@apple.com [Mon, 19 Dec 2011 06:36:05 +0000 (06:36 +0000)]
DFG is too sloppy with register allocation
https://bugs.webkit.org/show_bug.cgi?id=74835

Reviewed by Gavin Barraclough.

Added assertions that at the end of a successfully generated basic block,
all use counts should be zero. This revealed a number of bugs:

- Array length optimizations were turning a must-generate node into one
  that is not must-generate, but failing to change the ref count
  accordingly.

- Indexed property storage optimizations were failing to deref their
  children, or to deref the indexed property storage node itself. Also,
  they used the Phantom node as a replacement. But the Phantom node is
  must-generate, which was causing bizarre issues. So this introduces a
  Nop node, which should be used in cases where you want a node that is
  skipped and has no children.

This does not have any significant performance effect, but it should
relieve some register pressure. The main thing this patch adds, though,
are the assertions, which should make it easier to do register allocation
related changes in the future.

* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGGenerationInfo.h:
(JSC::DFG::GenerationInfo::initConstant):
(JSC::DFG::GenerationInfo::initInteger):
(JSC::DFG::GenerationInfo::initJSValue):
(JSC::DFG::GenerationInfo::initCell):
(JSC::DFG::GenerationInfo::initBoolean):
(JSC::DFG::GenerationInfo::initDouble):
(JSC::DFG::GenerationInfo::initStorage):
(JSC::DFG::GenerationInfo::use):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::clearAndDerefChild1):
(JSC::DFG::Graph::clearAndDerefChild2):
(JSC::DFG::Graph::clearAndDerefChild3):
* dfg/DFGNode.h:
(JSC::DFG::Node::deref):
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::propagateNodePredictions):
(JSC::DFG::Propagator::fixupNode):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

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

8 years agoFixed some test expectations the best I could using my Lion machine.
darin@apple.com [Mon, 19 Dec 2011 06:26:46 +0000 (06:26 +0000)]
Fixed some test expectations the best I could using my Lion machine.
Some of these may require additional tuning.

* fast/dom/Window/script-tests/window-property-descriptors.js: Added webkitNotifications to the list of properties
to not dump, since it's different in different configurations. Also re-sorted the list and improved comments.
* fast/dom/Window/window-properties.html: Ditto.
* fast/dom/script-tests/prototype-inheritance-2.js: Ditto.

* platform/mac/fast/dom/Window/window-properties-expected.txt: Updated for the change in WebKitCSSFilterValue constants.
* platform/win/fast/dom/Window/window-properties-expected.txt: Ditto.

* platform/mac-snowleopard/fast/regions/region-style-block-background-color-expected.png: Removed.
* platform/mac-snowleopard/fast/regions/region-style-block-background-color-expected.txt: Removed.
* platform/mac-snowleopard/fast/regions/region-style-block-background-color2-expected.png: Removed.
* platform/mac-snowleopard/fast/regions/region-style-block-background-color2-expected.txt: Removed.
* platform/mac-snowleopard/fast/regions/region-style-image-background-color-expected.png: Removed.
* platform/mac-snowleopard/fast/regions/region-style-image-background-color-expected.txt: Removed.
* platform/mac-snowleopard/fast/regions/region-style-inline-background-color-expected.png: Removed.
* platform/mac-snowleopard/fast/regions/region-style-inline-background-color-expected.txt: Removed.
* platform/mac-snowleopard/printing: Removed.
* platform/mac-snowleopard/printing/width-overflow-expected.png: Removed.
* platform/mac-snowleopard/printing/width-overflow-expected.txt: Removed.
* platform/mac/fast/regions/region-style-block-background-color-expected.png: Copied from platform/mac-snowleopard/fast/regions/region-style-block-background-color-expected.png.
* platform/mac/fast/regions/region-style-block-background-color-expected.txt: Copied from platform/mac-snowleopard/fast/regions/region-style-block-background-color-expected.txt.
* platform/mac/fast/regions/region-style-block-background-color2-expected.png: Copied from platform/mac-snowleopard/fast/regions/region-style-block-background-color2-expected.png.
* platform/mac/fast/regions/region-style-block-background-color2-expected.txt: Copied from platform/mac-snowleopard/fast/regions/region-style-block-background-color2-expected.txt.
* platform/mac/fast/regions/region-style-image-background-color-expected.png: Copied from platform/mac-snowleopard/fast/regions/region-style-image-background-color-expected.png.
* platform/mac/fast/regions/region-style-image-background-color-expected.txt: Copied from platform/mac-snowleopard/fast/regions/region-style-image-background-color-expected.txt.
* platform/mac/fast/regions/region-style-inline-background-color-expected.png: Copied from platform/mac-snowleopard/fast/regions/region-style-inline-background-color-expected.png.
* platform/mac/fast/regions/region-style-inline-background-color-expected.txt: Copied from platform/mac-snowleopard/fast/regions/region-style-inline-background-color-expected.txt.
* platform/mac/printing/width-overflow-expected.png: Copied from platform/mac-snowleopard/printing/width-overflow-expected.png.
* platform/mac/printing/width-overflow-expected.txt: Copied from platform/mac-snowleopard/printing/width-overflow-expected.txt.
Moved these test results from mac-snowleopard to mac. There's no reason to assume the results are
different post-Snow-Leopard.

* platform/mac/fast/text/unicode-variation-selector-expected.txt: Added.
Landed the result generated on my computer.

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

8 years agoUnreviewed expectations update.
morrita@google.com [Mon, 19 Dec 2011 05:47:30 +0000 (05:47 +0000)]
Unreviewed expectations update.

* platform/chromium-win-xp/svg/W3C-I18N/g-dirLTR-ubNone-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-I18N/g-dirLTR-ubOverride-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-I18N/g-dirRTL-ubNone-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-I18N/g-dirRTL-ubOverride-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-I18N/text-dirLTR-ubNone-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-I18N/text-dirRTL-ubNone-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-I18N/text-dirRTL-ubOverride-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-I18N/tspan-direction-rtl-expected.png: Added.
* platform/chromium-win-xp/svg/text/bidi-tspans-expected.png: Added.
* platform/chromium-win-xp/tables/mozilla/bugs/bug2479-4-expected.png: Added.

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

8 years agoImplement <input type=color> UI WebKit chromium part
keishi@webkit.org [Mon, 19 Dec 2011 05:22:52 +0000 (05:22 +0000)]
Implement <input type=color> UI WebKit chromium part
https://bugs.webkit.org/show_bug.cgi?id=65897

Reviewed by Darin Fisher.

Source/WebCore:

* GNUmakefile.list.am: Removed ColorChooser.cpp and added ColorChooserClient.h
* WebCore.gypi: Added ColorChooser.h and ColorChooserClient.h
* WebCore.xcodeproj/project.pbxproj: Removed ColorChooser.cpp and added ColorChooserClient.h

Source/WebKit/chromium:

* WebKit.gyp: Added new files.
* features.gypi: Added ENABLE_INPUT_COLOR.
* public/WebColorChooser.h: Added. Interface for ColorChooserProxy to call.
(WebKit::WebColorChooser::~WebColorChooser):
(WebKit::WebColorChooser::setSelectedColor):
(WebKit::WebColorChooser::endChooser):
* public/WebColorChooserClient.h: Added.
(WebKit::WebColorChooserClient::~WebColorChooserClient):
(WebKit::WebColorChooserClient::didChooseColor): Only called when user changes the color.
(WebKit::WebColorChooserClient::didEndChooser): Called when WebColorChooser::endChooser is called.
* public/WebViewClient.h:
(WebKit::WebViewClient::createColorChooser): Creates a new color chooser. If there is an old color chooser, this will end it.
* src/ChromeClientImpl.cpp:
(WebKit::ChromeClientImpl::createColorChooser): Calls WebViewClient::createColorChooser.
* src/ChromeClientImpl.h:
* src/ColorChooserProxy.cpp: Proxies calls to WebCore::ColorChooser to WebKit::WebColorChooser.
(WebKit::ColorChooserProxy::ColorChooserProxy):
(WebKit::ColorChooserProxy::~ColorChooserProxy):
(WebKit::ColorChooserProxy::setSelectedColor):
(WebKit::ColorChooserProxy::endChooser):
* src/ColorChooserProxy.h:
* src/WebColorChooserClientImpl.cpp: Proxies calls to WebKit::WebColorChooserClient to WebCore::ColorChooserClient.
(WebKit::WebColorChooserClientImpl::WebColorChooserClientImpl):
(WebKit::WebColorChooserClientImpl::~WebColorChooserClientImpl):
(WebKit::WebColorChooserClientImpl::didChooseColor):
(WebKit::WebColorChooserClientImpl::didEndChooser):
* src/WebColorChooserClientImpl.h: Added.

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

8 years agoUnreviewed test_expectations.txt update.
morrita@google.com [Mon, 19 Dec 2011 05:06:06 +0000 (05:06 +0000)]
Unreviewed test_expectations.txt update.

* platform/chromium/test_expectations.txt:

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

8 years ago<msup>, <munder>, <mover>, and <munderover> baseline positions are wrong
commit-queue@webkit.org [Mon, 19 Dec 2011 04:25:29 +0000 (04:25 +0000)]
<msup>, <munder>, <mover>, and <munderover> baseline positions are wrong
https://bugs.webkit.org/show_bug.cgi?id=72821

Patch by David Barton <dbarton@mathscribe.com> on 2011-12-18
Reviewed by Darin Adler.

Source/WebCore:

Tested by rebaselining 8 existing tests. (Pardon the pun.)

* rendering/mathml/RenderMathMLSubSup.cpp:
(WebCore::RenderMathMLSubSup::baselinePosition):
Just using the base's (these puns are not my fault) baseline did not leave room for the exponent.
* rendering/mathml/RenderMathMLUnderOver.cpp:
(WebCore::RenderMathMLUnderOver::baselinePosition):
Added a guard condition, and removed some bad lines apparently mistakenly copied from RenderMathMLSubSup.cpp.

LayoutTests:

* platform/mac/mathml/presentation/msup-base-changed-expected.png:
* platform/mac/mathml/presentation/msup-base-changed-expected.txt:
* platform/mac/mathml/presentation/msup-sup-changed-expected.png:
* platform/mac/mathml/presentation/msup-sup-changed-expected.txt:
* platform/mac/mathml/presentation/over-expected.png:
* platform/mac/mathml/presentation/over-expected.txt:
* platform/mac/mathml/presentation/roots-expected.png:
* platform/mac/mathml/presentation/roots-expected.txt:
* platform/mac/mathml/presentation/row-alignment-expected.png:
* platform/mac/mathml/presentation/row-alignment-expected.txt:
* platform/mac/mathml/presentation/sup-expected.png:
* platform/mac/mathml/presentation/sup-expected.txt:
* platform/mac/mathml/presentation/under-expected.png:
* platform/mac/mathml/presentation/under-expected.txt:
* platform/mac/mathml/presentation/underover-expected.png:
* platform/mac/mathml/presentation/underover-expected.txt:

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

8 years agoImplement CSS line-height property in CSSStyleApplyProperty.
macpherson@chromium.org [Mon, 19 Dec 2011 03:50:08 +0000 (03:50 +0000)]
Implement CSS line-height property in CSSStyleApplyProperty.
https://bugs.webkit.org/show_bug.cgi?id=74561

Reviewed by Andreas Kling.

No new tests / refactoring only.

* css/CSSPrimitiveValue.h:
(WebCore::CSSPrimitiveValue::isNumber):
* css/CSSStyleApplyProperty.cpp:
(WebCore::ApplyPropertyLineHeight::applyValue):
(WebCore::ApplyPropertyLineHeight::createHandler):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applyProperty):

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

8 years agoImplement CSS outline shorthand property in CSSStyleApplyProperty.
macpherson@chromium.org [Mon, 19 Dec 2011 03:27:43 +0000 (03:27 +0000)]
Implement CSS outline shorthand property in CSSStyleApplyProperty.
https://bugs.webkit.org/show_bug.cgi?id=74467

Reviewed by Andreas Kling.

No new tests / refactoring only.

RenderStyle::resetOutline was removed in favor of explicity expanding to the
initial values of the shorthand expansion. This improves consistency because
the initial values to use are more clearly (and singularly) defined.

* css/CSSStyleApplyProperty.cpp:
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applyProperty):
* rendering/style/RenderStyle.h:

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

8 years agoUnreviewed, rolling out r103205.
commit-queue@webkit.org [Mon, 19 Dec 2011 03:13:08 +0000 (03:13 +0000)]
Unreviewed, rolling out r103205.
http://trac.webkit.org/changeset/103205
https://bugs.webkit.org/show_bug.cgi?id=74833

There are valid characters above 0x80 when the  string is
8bits (Requested by benjaminp on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-12-18

* dom/Document.cpp:
(WebCore::isValidNameASCII):
(WebCore::Document::isValidName):

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

8 years agoSeparate box alignment and box pack values into separate enums.
macpherson@chromium.org [Mon, 19 Dec 2011 03:07:55 +0000 (03:07 +0000)]
Separate box alignment and box pack values into separate enums.
https://bugs.webkit.org/show_bug.cgi?id=74580

Reviewed by Andreas Kling.

No new tests / refactoring only.

Separating these types cleans up the code by removing several assertions that
values are in the correct ranges, as this is ensured by the type system.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EBoxPack):
(WebCore::CSSPrimitiveValue::operator EBoxAlignment):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applyProperty):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
(WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
* rendering/RenderFullScreen.cpp:
(createFullScreenStyle):
* rendering/style/RenderStyle.h:
(WebCore::InheritedFlags::boxPack):
(WebCore::InheritedFlags::setBoxAlign):
(WebCore::InheritedFlags::setBoxPack):
(WebCore::InheritedFlags::initialBoxPack):
* rendering/style/RenderStyleConstants.h:
* rendering/style/StyleDeprecatedFlexibleBoxData.h:

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

8 years agoImplement CSS font-size property in CSSStyleApplyProperty.
macpherson@chromium.org [Mon, 19 Dec 2011 03:01:29 +0000 (03:01 +0000)]
Implement CSS font-size property in CSSStyleApplyProperty.
https://bugs.webkit.org/show_bug.cgi?id=74368

Reviewed by Andreas Kling.

No new tests / refactoring only.

* css/CSSStyleApplyProperty.cpp:
(WebCore::ApplyPropertyFontSize::largerFontSize):
(WebCore::ApplyPropertyFontSize::smallerFontSize):
(WebCore::ApplyPropertyFontSize::applyInheritValue):
(WebCore::ApplyPropertyFontSize::applyInitialValue):
(WebCore::ApplyPropertyFontSize::applyValue):
(WebCore::ApplyPropertyFontSize::createHandler):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applyProperty):
* css/CSSStyleSelector.h:
(WebCore::CSSStyleSelector::hasParentNode):

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

8 years agoUnreviewed, rolling out r103199.
kling@webkit.org [Mon, 19 Dec 2011 02:59:34 +0000 (02:59 +0000)]
Unreviewed, rolling out r103199.
http://trac.webkit.org/changeset/103199
https://bugs.webkit.org/show_bug.cgi?id=74832

Caused a bot crashiness extravaganza! (Requested by kling on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-12-18

* platform/KURL.cpp:
(WebCore::isLetterMatchIgnoringCase):
(WebCore::protocolIs):

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

8 years agoPositioned Floats: Assertion hit in fast/block/positioning/positioned-float-layout...
mitz@apple.com [Mon, 19 Dec 2011 02:51:46 +0000 (02:51 +0000)]
Positioned Floats: Assertion hit in fast/block/positioning/positioned-float-layout-after-image-load.html
https://bugs.webkit.org/show_bug.cgi?id=67759

Reviewed by Darin Adler.

Source/WebCore:

Test: fast/block/positioning/positioned-float-layout-after-image-load.html

Positioned floats are both floating and positioned. Made the following functions treat them as
positioned rather than as floats by reordering code.

* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::LineBreaker::skipTrailingWhitespace):
(WebCore::RenderBlock::LineBreaker::skipLeadingWhitespace):
(WebCore::RenderBlock::LineBreaker::nextLineBreak):

LayoutTests:

Re-added this test from r94695.

* fast/block/positioning/positioned-float-layout-after-image-load-expected.txt: Copied from LayoutTests/fast/block/positioning/positioned-float-layout-after-image-load-expected.txt.
* fast/block/positioning/positioned-float-layout-after-image-load.html: Copied from LayoutTests/fast/block/positioning/positioned-float-layout-after-image-load.html.
* fast/block/positioning/resources/positioned-float-layout-after-image-load-2.html: Copied from LayoutTests/fast/block/positioning/resources/positioned-float-layout-after-image-load-2.html.

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

8 years agoAdd support for 8 bits strings to Document::isValidName()
benjamin@webkit.org [Mon, 19 Dec 2011 02:17:39 +0000 (02:17 +0000)]
Add support for 8 bits strings to Document::isValidName()
https://bugs.webkit.org/show_bug.cgi?id=74784

Patch by Benjamin Poulain <bpoulain@apple.com> on 2011-12-18
Reviewed by Andreas Kling.

The valid name has a fast path for ASCII, and a slow path
taking Unicode characters into account.

For 8-bit strings, we don't need to take the non-ASCII path
as it could never succeed if the ASCII path didn't.

* dom/Document.cpp:
(WebCore::isValidNameASCII):
(WebCore::Document::isValidName):

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

8 years agoUnreviewed expectations update.
morrita@google.com [Mon, 19 Dec 2011 02:13:25 +0000 (02:13 +0000)]
Unreviewed expectations update.

* platform/chromium-cg-mac-snowleopard/fast/text/drawBidiText-expected.png: Renamed from LayoutTests/platform/chromium-cg-mac/fast/text/drawBidiText-expected.png.
* platform/chromium-mac-snowleopard/fast/text/drawBidiText-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/text/drawBidiText-expected.png.
* platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug2479-4-expected.png: Renamed from LayoutTests/platform/chromium-mac/tables/mozilla/bugs/bug2479-4-expected.png.
* platform/chromium-win-vista/fast/text/drawBidiText-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/g-dirLTR-ubNone-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt:
* platform/chromium-win-vista/svg/W3C-I18N/g-dirLTR-ubOverride-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt:
* platform/chromium-win-vista/svg/W3C-I18N/g-dirRTL-ubNone-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt:
* platform/chromium-win-vista/svg/W3C-I18N/g-dirRTL-ubOverride-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt:
* platform/chromium-win-vista/svg/W3C-I18N/text-dirLTR-ubNone-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt:
* platform/chromium-win-vista/svg/W3C-I18N/text-dirLTR-ubOverride-expected.png:
* platform/chromium-win-vista/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt:
* platform/chromium-win-vista/svg/W3C-I18N/text-dirRTL-ubNone-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt:
* platform/chromium-win-vista/svg/W3C-I18N/text-dirRTL-ubOverride-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt:
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context-expected.txt:
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubNone-in-rtl-context-expected.txt:
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.png:
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt:
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt:
* platform/chromium-win-vista/svg/W3C-I18N/tspan-direction-rtl-expected.png: Removed.
* platform/chromium-win-vista/svg/W3C-I18N/tspan-direction-rtl-expected.txt:
* platform/chromium-win-vista/svg/text/bidi-tspans-expected.png: Removed.
* platform/chromium-win-vista/svg/text/bidi-tspans-expected.txt:
* platform/chromium-win-vista/tables/mozilla/bugs/bug2479-4-expected.png: Removed.

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

8 years ago[Qt] Remove redundant m_glWidget->makeCurrent() calls in GraphicsContext3DQt.
commit-queue@webkit.org [Mon, 19 Dec 2011 02:07:49 +0000 (02:07 +0000)]
[Qt] Remove redundant m_glWidget->makeCurrent() calls in GraphicsContext3DQt.
https://bugs.webkit.org/show_bug.cgi?id=73814

It causes a performance hit.
Moved the redundant function calls to makeContextCurrent().

Patch by Huang Dongsung <luxtella@company100.net> on 2011-12-18
Reviewed by Noam Rosenthal.

* platform/graphics/qt/GraphicsContext3DQt.cpp:
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
(WebCore::GraphicsContext3DPrivate::paint):
(WebCore::GraphicsContext3DPrivate::makeCurrentIfNeeded):
(WebCore::GraphicsContext3D::~GraphicsContext3D):
(WebCore::GraphicsContext3D::makeContextCurrent):
(WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
(WebCore::GraphicsContext3D::reshape):
(WebCore::GraphicsContext3D::activeTexture):
(WebCore::GraphicsContext3D::attachShader):
(WebCore::GraphicsContext3D::getAttachedShaders):
(WebCore::GraphicsContext3D::bindAttribLocation):
(WebCore::GraphicsContext3D::bindBuffer):
(WebCore::GraphicsContext3D::bindFramebuffer):
(WebCore::GraphicsContext3D::bindRenderbuffer):
(WebCore::GraphicsContext3D::bindTexture):
(WebCore::GraphicsContext3D::blendColor):
(WebCore::GraphicsContext3D::blendEquation):
(WebCore::GraphicsContext3D::blendEquationSeparate):
(WebCore::GraphicsContext3D::blendFunc):
(WebCore::GraphicsContext3D::blendFuncSeparate):
(WebCore::GraphicsContext3D::bufferData):
(WebCore::GraphicsContext3D::bufferSubData):
(WebCore::GraphicsContext3D::checkFramebufferStatus):
(WebCore::GraphicsContext3D::clearColor):
(WebCore::GraphicsContext3D::clear):
(WebCore::GraphicsContext3D::clearDepth):
(WebCore::GraphicsContext3D::clearStencil):
(WebCore::GraphicsContext3D::colorMask):
(WebCore::GraphicsContext3D::compileShader):
(WebCore::GraphicsContext3D::compressedTexImage2D):
(WebCore::GraphicsContext3D::compressedTexSubImage2D):
(WebCore::GraphicsContext3D::copyTexImage2D):
(WebCore::GraphicsContext3D::copyTexSubImage2D):
(WebCore::GraphicsContext3D::cullFace):
(WebCore::GraphicsContext3D::depthFunc):
(WebCore::GraphicsContext3D::depthMask):
(WebCore::GraphicsContext3D::depthRange):
(WebCore::GraphicsContext3D::detachShader):
(WebCore::GraphicsContext3D::disable):
(WebCore::GraphicsContext3D::disableVertexAttribArray):
(WebCore::GraphicsContext3D::drawArrays):
(WebCore::GraphicsContext3D::drawElements):
(WebCore::GraphicsContext3D::enable):
(WebCore::GraphicsContext3D::enableVertexAttribArray):
(WebCore::GraphicsContext3D::finish):
(WebCore::GraphicsContext3D::flush):
(WebCore::GraphicsContext3D::framebufferRenderbuffer):
(WebCore::GraphicsContext3D::framebufferTexture2D):
(WebCore::GraphicsContext3D::frontFace):
(WebCore::GraphicsContext3D::generateMipmap):
(WebCore::GraphicsContext3D::getActiveAttrib):
(WebCore::GraphicsContext3D::getActiveUniform):
(WebCore::GraphicsContext3D::getAttribLocation):
(WebCore::GraphicsContext3D::getError):
(WebCore::GraphicsContext3D::getString):
(WebCore::GraphicsContext3D::hint):
(WebCore::GraphicsContext3D::isBuffer):
(WebCore::GraphicsContext3D::isEnabled):
(WebCore::GraphicsContext3D::isFramebuffer):
(WebCore::GraphicsContext3D::isProgram):
(WebCore::GraphicsContext3D::isRenderbuffer):
(WebCore::GraphicsContext3D::isShader):
(WebCore::GraphicsContext3D::isTexture):
(WebCore::GraphicsContext3D::lineWidth):
(WebCore::GraphicsContext3D::linkProgram):
(WebCore::GraphicsContext3D::pixelStorei):
(WebCore::GraphicsContext3D::polygonOffset):
(WebCore::GraphicsContext3D::readPixels):
(WebCore::GraphicsContext3D::releaseShaderCompiler):
(WebCore::GraphicsContext3D::renderbufferStorage):
(WebCore::GraphicsContext3D::sampleCoverage):
(WebCore::GraphicsContext3D::scissor):
(WebCore::GraphicsContext3D::shaderSource):
(WebCore::GraphicsContext3D::stencilFunc):
(WebCore::GraphicsContext3D::stencilFuncSeparate):
(WebCore::GraphicsContext3D::stencilMask):
(WebCore::GraphicsContext3D::stencilMaskSeparate):
(WebCore::GraphicsContext3D::stencilOp):
(WebCore::GraphicsContext3D::stencilOpSeparate):
(WebCore::GraphicsContext3D::texParameterf):
(WebCore::GraphicsContext3D::texParameteri):
(WebCore::GraphicsContext3D::uniform1f):
(WebCore::GraphicsContext3D::uniform1fv):
(WebCore::GraphicsContext3D::uniform2f):
(WebCore::GraphicsContext3D::uniform2fv):
(WebCore::GraphicsContext3D::uniform3f):
(WebCore::GraphicsContext3D::uniform3fv):
(WebCore::GraphicsContext3D::uniform4f):
(WebCore::GraphicsContext3D::uniform4fv):
(WebCore::GraphicsContext3D::uniform1i):
(WebCore::GraphicsContext3D::uniform1iv):
(WebCore::GraphicsContext3D::uniform2i):
(WebCore::GraphicsContext3D::uniform2iv):
(WebCore::GraphicsContext3D::uniform3i):
(WebCore::GraphicsContext3D::uniform3iv):
(WebCore::GraphicsContext3D::uniform4i):
(WebCore::GraphicsContext3D::uniform4iv):
(WebCore::GraphicsContext3D::uniformMatrix2fv):
(WebCore::GraphicsContext3D::uniformMatrix3fv):
(WebCore::GraphicsContext3D::uniformMatrix4fv):
(WebCore::GraphicsContext3D::useProgram):
(WebCore::GraphicsContext3D::validateProgram):
(WebCore::GraphicsContext3D::vertexAttrib1f):
(WebCore::GraphicsContext3D::vertexAttrib1fv):
(WebCore::GraphicsContext3D::vertexAttrib2f):
(WebCore::GraphicsContext3D::vertexAttrib2fv):
(WebCore::GraphicsContext3D::vertexAttrib3f):
(WebCore::GraphicsContext3D::vertexAttrib3fv):
(WebCore::GraphicsContext3D::vertexAttrib4f):
(WebCore::GraphicsContext3D::vertexAttrib4fv):
(WebCore::GraphicsContext3D::vertexAttribPointer):
(WebCore::GraphicsContext3D::viewport):
(WebCore::GraphicsContext3D::getBooleanv):
(WebCore::GraphicsContext3D::getBufferParameteriv):
(WebCore::GraphicsContext3D::getFloatv):
(WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
(WebCore::GraphicsContext3D::getIntegerv):
(WebCore::GraphicsContext3D::getProgramiv):
(WebCore::GraphicsContext3D::getProgramInfoLog):
(WebCore::GraphicsContext3D::getRenderbufferParameteriv):
(WebCore::GraphicsContext3D::getShaderiv):
(WebCore::GraphicsContext3D::getShaderInfoLog):
(WebCore::GraphicsContext3D::getShaderSource):
(WebCore::GraphicsContext3D::getTexParameterfv):
(WebCore::GraphicsContext3D::getTexParameteriv):
(WebCore::GraphicsContext3D::getUniformfv):
(WebCore::GraphicsContext3D::getUniformiv):
(WebCore::GraphicsContext3D::getUniformLocation):
(WebCore::GraphicsContext3D::getVertexAttribfv):
(WebCore::GraphicsContext3D::getVertexAttribiv):
(WebCore::GraphicsContext3D::getVertexAttribOffset):
(WebCore::GraphicsContext3D::texImage2D):
(WebCore::GraphicsContext3D::texSubImage2D):
(WebCore::GraphicsContext3D::createBuffer):
(WebCore::GraphicsContext3D::createFramebuffer):
(WebCore::GraphicsContext3D::createProgram):
(WebCore::GraphicsContext3D::createRenderbuffer):
(WebCore::GraphicsContext3D::createShader):
(WebCore::GraphicsContext3D::createTexture):
(WebCore::GraphicsContext3D::deleteBuffer):
(WebCore::GraphicsContext3D::deleteFramebuffer):
(WebCore::GraphicsContext3D::deleteProgram):
(WebCore::GraphicsContext3D::deleteRenderbuffer):
(WebCore::GraphicsContext3D::deleteShader):
(WebCore::GraphicsContext3D::deleteTexture):

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

8 years agoRemove the duplicated code from ASCIICType.h
benjamin@webkit.org [Mon, 19 Dec 2011 02:03:50 +0000 (02:03 +0000)]
Remove the duplicated code from ASCIICType.h
https://bugs.webkit.org/show_bug.cgi?id=74771

Patch by Benjamin Poulain <bpoulain@apple.com> on 2011-12-18
Reviewed by Andreas Kling.

Use isASCIIDigit() and isASCIIAlpha() instead of copying the code.

* wtf/ASCIICType.h:
(WTF::isASCIIDigit):
(WTF::isASCIIAlphanumeric):
(WTF::isASCIIHexDigit):

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

8 years agoRemoving unrelated printf() that slipped into my last commit.
kling@webkit.org [Mon, 19 Dec 2011 01:47:34 +0000 (01:47 +0000)]
Removing unrelated printf() that slipped into my last commit.

* platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::scrollToOffsetWithoutAnimation):

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

8 years agoAnother attempt to fix the windows build.
weinig@apple.com [Mon, 19 Dec 2011 01:43:47 +0000 (01:43 +0000)]
Another attempt to fix the windows build.

* Platform/win/WorkQueueWin.cpp:
(WorkQueue::performWorkOnRegisteredWorkThread):
(WorkQueue::dispatch):

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

8 years agoKURL::protocolIs() should handle 8-bit strings.
kling@webkit.org [Mon, 19 Dec 2011 01:40:15 +0000 (01:40 +0000)]
KURL::protocolIs() should handle 8-bit strings.
<http://webkit.org/b/74827>

Reviewed by Antti Koivisto.

* platform/KURL.cpp:
(WebCore::isLetterMatchIgnoringCase):

    Turned this into a template method so it can be used for both UChar and LChar.

(WebCore::charactersAreProtocol):
(WebCore::protocolIs):

    Handle 8/16 bit strings separately to avoid conversion.

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

8 years agoTry to fix the windows build.
weinig@apple.com [Mon, 19 Dec 2011 01:27:42 +0000 (01:27 +0000)]
Try to fix the windows build.

* Platform/win/WorkQueueWin.cpp:
(WorkQueue::performWorkOnRegisteredWorkThread):

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

8 years agoMake AccessibilityObject::lineForPosition return the correct value for cases where...
aboxhall@chromium.org [Mon, 19 Dec 2011 01:12:27 +0000 (01:12 +0000)]
Make AccessibilityObject::lineForPosition return the correct value for cases where the position is not within the current object.
https://bugs.webkit.org/show_bug.cgi?id=71348

Reviewed by Chris Fleizach.

Source/WebCore:

* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::lineForPosition):
* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

LayoutTests:

* accessibility/textarea-insertion-point-line-number-expected.txt:
* accessibility/textarea-insertion-point-line-number.html:

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

8 years agoMake EventHandler::handleWheelEvent take const PlatformWheelEvent&
weinig@apple.com [Mon, 19 Dec 2011 00:42:03 +0000 (00:42 +0000)]
Make EventHandler::handleWheelEvent take const PlatformWheelEvent&
https://bugs.webkit.org/show_bug.cgi?id=74824

Reviewed by Anders Carlsson.

* WebCore.exp.in:
* page/EventHandler.cpp:
(WebCore::EventHandler::handleWheelEvent):
* page/EventHandler.h:
* page/blackberry/EventHandlerBlackBerry.cpp:
(WebCore::EventHandler::passWheelEventToWidget):
* page/chromium/EventHandlerChromium.cpp:
(WebCore::EventHandler::passWheelEventToWidget):
* page/efl/EventHandlerEfl.cpp:
(WebCore::EventHandler::passWheelEventToWidget):
* page/gtk/EventHandlerGtk.cpp:
(WebCore::EventHandler::passWheelEventToWidget):
* page/mac/EventHandlerMac.mm:
(WebCore::EventHandler::passWheelEventToWidget):
* page/qt/EventHandlerQt.cpp:
(WebCore::EventHandler::passWheelEventToWidget):
* page/win/EventHandlerWin.cpp:
(WebCore::EventHandler::passWheelEventToWidget):
* page/wx/EventHandlerWx.cpp:
(WebCore::EventHandler::passWheelEventToWidget):
* platform/PlatformWheelEvent.h:
(WebCore::PlatformWheelEvent::copyTurningVerticalTicksIntoHorizontalTicks):

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

8 years ago[chromium] Add worldId parameter to allowScriptExtension()
koz@chromium.org [Mon, 19 Dec 2011 00:37:49 +0000 (00:37 +0000)]
[chromium] Add worldId parameter to allowScriptExtension()
https://bugs.webkit.org/show_bug.cgi?id=74214

Chromium uses the worldId to determine what extension is running in a
v8 context and knowing that at the time allowScriptExtension() is
called allows us to conditionally inject extension APIs.

Reviewed by Darin Fisher.

Source/WebCore:

* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::initContextIfNeeded):
(WebCore::V8DOMWindowShell::createNewContext):
* bindings/v8/V8DOMWindowShell.h:
* bindings/v8/V8IsolatedContext.cpp:
(WebCore::V8IsolatedContext::V8IsolatedContext):
* loader/EmptyClients.h:
(WebCore::EmptyFrameLoaderClient::allowScriptExtension):
* loader/FrameLoaderClient.h:

Source/WebKit/chromium:

* public/WebPermissionClient.h:
(WebKit::WebPermissionClient::allowScriptExtension):
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::allowScriptExtension):
* src/FrameLoaderClientImpl.h:

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

8 years agoRemove now unused WorkItem.h
weinig@apple.com [Mon, 19 Dec 2011 00:37:47 +0000 (00:37 +0000)]
Remove now unused WorkItem.h
https://bugs.webkit.org/show_bug.cgi?id=74818

Reviewed by Andreas Kling.

* GNUmakefile.am:
* Platform/CoreIPC/Connection.cpp:
* Platform/RunLoop.cpp:
* Platform/RunLoop.h:
* Platform/WorkItem.h: Removed.
* Platform/gtk/RunLoopGtk.cpp:
* Platform/mac/RunLoopMac.mm:
* Platform/mac/WorkQueueMac.cpp:
(WorkQueue::platformInvalidate):
* Platform/qt/RunLoopQt.cpp:
* Platform/win/RunLoopWin.cpp:
* Target.pri:
* UIProcess/ResponsivenessTimer.cpp:
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
* win/WebKit2.vcproj:

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

8 years agoAdoption agency iteration limits in HTML parser don't match HTML5 spec
abarth@webkit.org [Mon, 19 Dec 2011 00:29:02 +0000 (00:29 +0000)]
Adoption agency iteration limits in HTML parser don't match HTML5 spec
https://bugs.webkit.org/show_bug.cgi?id=74822

Reviewed by Eric Seidel.

Source/WebCore:

Previously, we were using the iteration limits from the old tree
builder.  Now we use the iteration limits from the HTML5 specification.

Tests: html5lib/runner.html

* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):

LayoutTests:

Show test progression.

* fast/parser/residual-style-dom-expected.txt:
* html5lib/runner-expected.txt:
* platform/chromium/html5lib/runner-expected.txt:

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

8 years agohttps://bugs.webkit.org/show_bug.cgi?id=73954
antti@apple.com [Sun, 18 Dec 2011 23:47:15 +0000 (23:47 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=73954
REGRESSION (r97745): Transitions don't work on links

Source/WebCore:

Reviewed by Andreas Kling.

Test: transitions/visited-link-color.html

Since visited link colors are now part of the RenderStyle, they need to be transitioned
along with the corresponding regular colors.

* page/animation/AnimationBase.cpp:
(WebCore::PropertyWrapperVisitedAffectedColor::PropertyWrapperVisitedAffectedColor):
(WebCore::PropertyWrapperVisitedAffectedColor::equals):
(WebCore::PropertyWrapperVisitedAffectedColor::blend):
(WebCore::AnimationBase::ensurePropertyMap):

    Add new wrapper class that applies both regular and visited color.

* rendering/style/RenderStyle.h:
(WebCore::InheritedFlags::visitedLinkColor):
(WebCore::InheritedFlags::visitedLinkBackgroundColor):
(WebCore::InheritedFlags::visitedLinkBorderLeftColor):
(WebCore::InheritedFlags::visitedLinkBorderRightColor):
(WebCore::InheritedFlags::visitedLinkBorderBottomColor):
(WebCore::InheritedFlags::visitedLinkBorderTopColor):
(WebCore::InheritedFlags::visitedLinkOutlineColor):
(WebCore::InheritedFlags::visitedLinkColumnRuleColor):
(WebCore::InheritedFlags::visitedLinkTextEmphasisColor):
(WebCore::InheritedFlags::visitedLinkTextFillColor):
(WebCore::InheritedFlags::visitedLinkTextStrokeColor):

    Add accessors.

* rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):

    Opportunistic fix. Don't know how to test.

LayoutTests:

Reviewed by Andreas Kling.

Unfortunately the automatic test provides code coverage only as reading back the properties
from the style always gives back non-visited values. The bug is visible running the test
manually.

* transitions/visited-link-color-expected.txt: Added.
* transitions/visited-link-color.html: Added.

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

8 years agoSet the main frame view scroll position asynchronously
andersca@apple.com [Sun, 18 Dec 2011 22:28:49 +0000 (22:28 +0000)]
Set the main frame view scroll position asynchronously
https://bugs.webkit.org/show_bug.cgi?id=74823

Reviewed by Sam Weinig.

Source/JavaScriptCore:

* JavaScriptCore.exp:

Source/WebCore:

* page/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::ScrollingCoordinator):
Initialize m_didDispatchDidUpdateMainFrameScrollPosition to false.

(WebCore::ScrollingCoordinator::didUpdateMainFrameScrollPosition):
Get the scroll position, reset m_didDispatchDidUpdateMainFrameScrollPosition to false and
then call FrameView::setScrollOffset to update the scroll position.

* page/ScrollingCoordinator.h:
* page/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinator::scrollByOnScrollingThread):
Update the scroll position and dispatch ScrollingCoordinator::didUpdateMainFrameScrollPosition on
the main thread if needed.

Source/WebKit2:

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
Don't make the background red.

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

8 years agoJSC/HTMLCollection: Optimize canGetItemsForName().
kling@webkit.org [Sun, 18 Dec 2011 22:21:05 +0000 (22:21 +0000)]
JSC/HTMLCollection: Optimize canGetItemsForName().
<http://webkit.org/b/74806>

Reviewed by Sam Weinig.

Add HTMLCollection::hasNamedItem(name) and use that in the JSC bindings'
canGetItemsForName() instead of fetching the list of named items just to
check if it's empty or not.

* bindings/js/JSHTMLAllCollectionCustom.cpp:
(WebCore::JSHTMLAllCollection::canGetItemsForName):
* bindings/js/JSHTMLCollectionCustom.cpp:
(WebCore::JSHTMLCollection::canGetItemsForName):
* html/HTMLCollection.cpp:
(WebCore::HTMLCollection::hasNamedItem):
* html/HTMLCollection.h:

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

8 years agoSpruce up PlatformWheelEvent a bit
weinig@apple.com [Sun, 18 Dec 2011 21:54:28 +0000 (21:54 +0000)]
Spruce up PlatformWheelEvent a bit
https://bugs.webkit.org/show_bug.cgi?id=74821

Reviewed by Dan Bernstein.

* dom/WheelEvent.cpp:
(WebCore::WheelEventDispatchMediator::WheelEventDispatchMediator):
* platform/PlatformWheelEvent.h:
(WebCore::PlatformWheelEvent::directionInvertedFromDevice):
Remove x/y getters in favor of direct access to the IntPoints, and rename
webkitDirectionInvertedFromDevice() to directionInvertedFromDevice() since
it is not an exposed API.

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

8 years agoRename EditCommandQt to UndoStepQt
hausmann@webkit.org [Sun, 18 Dec 2011 21:49:45 +0000 (21:49 +0000)]
Rename EditCommandQt to UndoStepQt
https://bugs.webkit.org/show_bug.cgi?id=74754

Reviewed by Ryosuke Niwa.

.:

* Source/api.pri:

Source/WebKit/qt:

* WebCoreSupport/EditorClientQt.cpp:
(WebCore::EditorClientQt::registerUndoStep):
* WebCoreSupport/UndoStepQt.cpp: Renamed from Source/WebKit/qt/WebCoreSupport/EditCommandQt.cpp.
(UndoStepQt::UndoStepQt):
(UndoStepQt::~UndoStepQt):
(UndoStepQt::redo):
(UndoStepQt::undo):
* WebCoreSupport/UndoStepQt.h: Renamed from Source/WebKit/qt/WebCoreSupport/EditCommandQt.h.

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

8 years agoScroll the main frame on the scrolling thread
andersca@apple.com [Sun, 18 Dec 2011 21:41:44 +0000 (21:41 +0000)]
Scroll the main frame on the scrolling thread
https://bugs.webkit.org/show_bug.cgi?id=74820

Reviewed by Andreas Kling.

* page/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::handleWheelEvent):
Compute a scroll offset from the wheel event and tell the scrolling thread to scroll by the given offset.

* page/ScrollingCoordinator.h:
* page/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinator::scrollByOnScrollingThread):
Clamp the updated position to the minimum and maximum scrollable position.

(WebCore::ScrollingCoordinator::updateMainFrameScrollLayerPositionOnScrollingThread):
Actually reposition the layer.

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

8 years agoHTMLAllCollection: Get rid of stateful namedItem traversal.
kling@webkit.org [Sun, 18 Dec 2011 20:43:35 +0000 (20:43 +0000)]
HTMLAllCollection: Get rid of stateful namedItem traversal.
<http://webkit.org/b/74803>

Reviewed by Sam Weinig.

Source/WebCore:

Add a namedItemWithIndex() function to HTMLAllCollection to cover the
document.all(name, index) use-case. This moves the collection traversal
into WebCore and allows us to remove some complexity.

This incidentally fixes a bug where the CollectionCache would point to
the last node returned by document.all(name, index) without the correct
associated node index (because info()->current was getting set without
updating info()->position.) Added a layout test for that.

Test: fast/dom/htmlallcollection-call-with-index-caching-bug.html

* bindings/js/JSHTMLAllCollectionCustom.cpp:
(WebCore::callHTMLAllCollection):
* bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
(WebCore::V8HTMLAllCollection::callAsFunctionCallback):

    Replace collection traversal by calls to namedItemWithIndex().

* html/HTMLCollection.h:

    Promoted updateNameCache() to protected (for HTMLAllCollection.)
    Demoted checkForNameMatch() to private.

* html/HTMLAllCollection.cpp:
(WebCore::HTMLAllCollection::namedItemWithIndex):

    Added for document.all(name, index). Uses the name/id cache.

* html/HTMLAllCollection.cpp:
* html/HTMLAllCollection.h:
(WebCore::HTMLAllCollection::HTMLAllCollection):

    Removed m_idsDone, HTMLAllCollection is now stateless.

LayoutTests:

* fast/dom/htmlallcollection-call-with-index-caching-bug-expected.txt: Added.
* fast/dom/htmlallcollection-call-with-index-caching-bug.html: Added.

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

8 years agoThe scrolling coordinator should know about the main frame scroll layer
andersca@apple.com [Sun, 18 Dec 2011 20:27:44 +0000 (20:27 +0000)]
The scrolling coordinator should know about the main frame scroll layer
https://bugs.webkit.org/show_bug.cgi?id=74817

Reviewed by Andreas Kling.

* page/ScrollingCoordinator.h:
* page/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingThread::threadCallback):
Move the * to where it belongs.

(WebCore::ScrollingCoordinator::setFrameScrollLayer):
Keep track of the underlying CALayer of the frame scroll layer.

* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::ensureRootLayer):
Call ScrollingCoordinator::setFrameScrollLayer.

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

8 years agoCorrect ChangeLog author mixup.
kling@webkit.org [Sun, 18 Dec 2011 20:09:45 +0000 (20:09 +0000)]
Correct ChangeLog author mixup.

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

8 years agoInteracting with GMail message lists is sluggish.
kling@webkit.org [Sun, 18 Dec 2011 20:07:47 +0000 (20:07 +0000)]
Interacting with GMail message lists is sluggish.
<http://webkit.org/b/74813>

Patch by Anders Carlsson <andersca@apple.com> on 2011-12-18
Reviewed by Dan Bernstein.

Add an argument to collapsed*Border() to control whether the border
color is computed or not. This allows us to avoid expensive work when
we're only interested in the metrics.

RenderStyle::visitedDependentColor() was very hot (4.5%) when hit-testing
on GMail and this removes its usage altogether.
This should be an improvement for table rendering as well, since it was
all happening below RenderBox::overflowClipRect().

* rendering/RenderTableCell.h:
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::collapsedLeftBorder):
(WebCore::RenderTableCell::collapsedRightBorder):
(WebCore::RenderTableCell::collapsedTopBorder):
(WebCore::RenderTableCell::collapsedBottomBorder):

    Add and propagate an IncludeBorderColorOrNot argument that decides
    whether we compute the CollapsedBorderValue's color.

(WebCore::RenderTableCell::collapsedStartBorder):
(WebCore::RenderTableCell::collapsedEndBorder):

    Renamed start & end to startColorProperty & endColorProperty
    for clarity. Also same modifications as the above functions.

(WebCore::RenderTableCell::collapsedBeforeBorder):
(WebCore::RenderTableCell::collapsedAfterBorder):

    Renamed before & after to beforeColorProperty & afterColorProperty
    for clarity. Also same modifications as the above functions.

(WebCore::RenderTableCell::borderHalfStart):
(WebCore::RenderTableCell::borderHalfEnd):
(WebCore::RenderTableCell::borderHalfBefore):
(WebCore::RenderTableCell::borderHalfAfter):

    Pass DoNotIncludeBorderColor to collapsed*Border() since we only care
    about the metrics here.

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

8 years agoThe scrolling coordinator should keep track of the main frame geometry
andersca@apple.com [Sun, 18 Dec 2011 19:52:41 +0000 (19:52 +0000)]
The scrolling coordinator should keep track of the main frame geometry
https://bugs.webkit.org/show_bug.cgi?id=74816

Reviewed by Andreas Kling.

* page/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::syncFrameGeometry):
Update the frame geometry accordingly when it changes.

* page/ScrollingCoordinator.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::frameViewDidChangeSize):
(WebCore::RenderLayerCompositor::updateRootLayerPosition):
Call ScrollingCoordinator::syncFrameGeometry.

(WebCore::RenderLayerCompositor::scrollingCoordinator):
Add new getter.

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

8 years agoMove timestamp down from PlatformEvent subclasses to the base class
weinig@apple.com [Sun, 18 Dec 2011 19:45:42 +0000 (19:45 +0000)]
Move timestamp down from PlatformEvent subclasses to the base class
https://bugs.webkit.org/show_bug.cgi?id=74805

Reviewed by Anders Carlsson.

../WebCore:

* platform/PlatformEvent.h:
(WebCore::PlatformEvent::type):
(WebCore::PlatformEvent::timestamp):
(WebCore::PlatformEvent::PlatformEvent):
* platform/PlatformGestureEvent.h:
(WebCore::PlatformGestureEvent::PlatformGestureEvent):
* platform/PlatformMouseEvent.h:
(WebCore::PlatformMouseEvent::PlatformMouseEvent):
(WebCore::PlatformMouseEvent::clickCount):
* platform/PlatformTouchEvent.h:
(WebCore::PlatformTouchEvent::PlatformTouchEvent):
* platform/PlatformWheelEvent.h:
(WebCore::PlatformWheelEvent::PlatformWheelEvent):
* platform/efl/PlatformKeyboardEventEfl.cpp:
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
* platform/efl/PlatformMouseEventEfl.cpp:
(WebCore::PlatformMouseEvent::PlatformMouseEvent):
* platform/efl/PlatformTouchEventEfl.cpp:
(WebCore::PlatformTouchEvent::PlatformTouchEvent):
* platform/efl/PlatformWheelEventEfl.cpp:
(WebCore::PlatformWheelEvent::PlatformWheelEvent):
* platform/gtk/PlatformKeyboardEventGtk.cpp:
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
* platform/gtk/PlatformWheelEventGtk.cpp:
(WebCore::PlatformWheelEvent::PlatformWheelEvent):
* platform/mac/KeyEventMac.mm:
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
* platform/mac/PlatformMouseEventMac.mm:
(WebCore::PlatformMouseEvent::PlatformMouseEvent):
* platform/mac/WheelEventMac.mm:
(WebCore::PlatformWheelEvent::PlatformWheelEvent):
* platform/qt/PlatformKeyboardEventQt.cpp:
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
* platform/qt/WheelEventQt.cpp:
(WebCore::PlatformWheelEvent::PlatformWheelEvent):
* platform/win/KeyEventWin.cpp:
(WebCore::singleCharacterString):
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
* platform/win/PlatformMouseEventWin.cpp:
(WebCore::PlatformMouseEvent::PlatformMouseEvent):
* platform/win/WheelEventWin.cpp:
(WebCore::PlatformWheelEvent::PlatformWheelEvent):
* platform/wx/KeyboardEventWx.cpp:
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
* platform/wx/MouseEventWx.cpp:
(WebCore::PlatformMouseEvent::PlatformMouseEvent):
* platform/wx/MouseWheelEventWx.cpp:
(WebCore::PlatformWheelEvent::PlatformWheelEvent):

../WebKit2:

* Shared/WebEventConversion.cpp:
(WebKit::WebKit2PlatformMouseEvent::WebKit2PlatformMouseEvent):
(WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent):
(WebKit::WebKit2PlatformKeyboardEvent::WebKit2PlatformKeyboardEvent):
(WebKit::WebKit2PlatformGestureEvent::WebKit2PlatformGestureEvent):
(WebKit::WebKit2PlatformTouchEvent::WebKit2PlatformTouchEvent):

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

8 years agoAdd a scrolling thread to the scrolling coordinator
andersca@apple.com [Sun, 18 Dec 2011 18:56:22 +0000 (18:56 +0000)]
Add a scrolling thread to the scrolling coordinator
https://bugs.webkit.org/show_bug.cgi?id=74814

Reviewed by Andreas Kling.

Source/WebCore:

* WebCore.exp.in:
Export ScrollingCoordinator::handleWheelEvent.

* WebCore.xcodeproj/project.pbxproj:
Add ScrollingCoordinatorMac.mm

* page/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::handleWheelEvent):
Add a stub function.

* page/ScrollingCoordinator.h:
* page/mac/ScrollingCoordinatorMac.mm: Added.
Add a ScrollingThread object which creates a thread and attaches a run loop source
to it, allowing for functions to be dispatched and run on said thread.

(WebCore::ScrollingCoordinator::isScrollingThread):
Call ScrollingThread::isCurrentThread.

(WebCore::ScrollingCoordinator::dispatchOnScrollingThread):
Call ScrollingThread::dispatch.

Source/WebKit2:

Check if the scrolling coordinator can handle the wheel event before dispatching it
to the main thread.

* WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::wheelEvent):

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

8 years agoEventDispatcher should keep track of all scrolling coordinators
andersca@apple.com [Sun, 18 Dec 2011 18:01:53 +0000 (18:01 +0000)]
EventDispatcher should keep track of all scrolling coordinators
https://bugs.webkit.org/show_bug.cgi?id=74810

Reviewed by Andreas Kling.

Source/WebCore:

Export symbols needed by WebKit2.

* WebCore.exp.in:

Source/WebKit2:

* WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::addScrollingCoordinatorForPage):
Get the scrolling coordinator from the WebCore page and add it to the map.

(WebKit::EventDispatcher::removeScrollingCoordinatorForPage):
Remove the scrolling coordinator from the map.

(WebKit::EventDispatcher::sendDidHandleEvent):
Add a new helper function, currently unused.

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
Add the scrolling coordinator.

(WebKit::TiledCoreAnimationDrawingArea::~TiledCoreAnimationDrawingArea):
Remove the scrolling coordinator.

* WebProcess/WebProcess.h:
(WebKit::WebProcess::eventDispatcher):
Add a getter.

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

8 years agoMove everyone off of WorkItem
andersca@apple.com [Sun, 18 Dec 2011 17:06:52 +0000 (17:06 +0000)]
Move everyone off of WorkItem
https://bugs.webkit.org/show_bug.cgi?id=74773

Reviewed by Darin Adler.

* Platform/CoreIPC/unix/ConnectionUnix.cpp:
(CoreIPC::Connection::open):
(CoreIPC::Connection::setShouldCloseConnectionOnProcessTermination):
* Platform/CoreIPC/win/ConnectionWin.cpp:
(CoreIPC::Connection::open):
* Platform/RunLoop.cpp:
(RunLoop::performWork):
(RunLoop::dispatch):
* Platform/RunLoop.h:
* Platform/WorkQueue.cpp:
* Platform/WorkQueue.h:
(WorkQueue::WorkItemWin::function):
* Platform/gtk/WorkQueueGtk.cpp:
(WorkQueue::EventSource::EventSource):
(WorkQueue::EventSource::executeEventSource):
(WorkQueue::registerEventSourceHandler):
(WorkQueue::dispatchOnSource):
(WorkQueue::dispatch):
(WorkQueue::dispatchAfterDelay):
(WorkQueue::dispatchOnTermination):
* Platform/mac/WorkQueueMac.cpp:
(WorkQueue::executeFunction):
(WorkQueue::dispatch):
(WorkQueue::dispatchAfterDelay):
* Platform/qt/WorkQueueQt.cpp:
(WorkQueue::WorkItemQt::WorkItemQt):
(WorkQueue::WorkItemQt::~WorkItemQt):
(WorkQueue::WorkItemQt::execute):
(WorkQueue::registerSocketEventHandler):
(WorkQueue::dispatch):
(WorkQueue::dispatchAfterDelay):
(WorkQueue::dispatchOnTermination):
* Platform/win/RunLoopWin.cpp:
(RunLoop::wakeUp):
* Platform/win/WorkQueueWin.cpp:
(WorkQueue::WorkItemWin::WorkItemWin):
(WorkQueue::WorkItemWin::create):
(WorkQueue::HandleWorkItem::HandleWorkItem):
(WorkQueue::HandleWorkItem::createByAdoptingHandle):
(WorkQueue::registerHandle):
(WorkQueue::dispatch):
* UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
(WebKit::ProcessLauncher::launchProcess):
* UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
(WebKit::ProcessLauncher::launchProcess):
* UIProcess/Launcher/win/ProcessLauncherWin.cpp:
(WebKit::ProcessLauncher::launchProcess):
* WebProcess/mac/CoreIPCClientRunLoop.mm:
(WebKit::callOnCoreIPCClientRunLoopAndWait):

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

8 years agoAdd transform function completion to web-inspector
commit-queue@webkit.org [Sun, 18 Dec 2011 16:39:21 +0000 (16:39 +0000)]
Add transform function completion to web-inspector

Web Inspector: Auto-complete transform functions for -webkit-transform
https://bugs.webkit.org/show_bug.cgi?id=74730

Patch by Raul Hudea <rhudea@adobe.com> on 2011-12-18
Reviewed by Pavel Feldman.

No new test. Trivial change.

* inspector/front-end/CSSKeywordCompletions.js:

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

8 years agoWeb Inspector: chromium profiler: change default root type for retaining paths from...
loislo@chromium.org [Sun, 18 Dec 2011 15:24:30 +0000 (15:24 +0000)]
Web Inspector: chromium profiler: change default root type for retaining paths from GC Roots to DOMWindow.
https://bugs.webkit.org/show_bug.cgi?id=74697

Reviewed by Pavel Feldman.

* inspector/front-end/DetailedHeapshotView.js:
(WebInspector.DetailedHeapshotView.prototype.get isTracingToWindowObjects):

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

8 years agoWeb Inspector: move heap data stats to separate tab.
loislo@chromium.org [Sun, 18 Dec 2011 15:13:08 +0000 (15:13 +0000)]
Web Inspector: move heap data stats to separate tab.
https://bugs.webkit.org/show_bug.cgi?id=74704

Reviewed by Pavel Feldman.

* inspector/performance-test.js:
(initialize_TimeTracker.InspectorTest.runPerformanceTest.Timer.prototype._dump):
(initialize_TimeTracker.InspectorTest.runPerformanceTest):

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

8 years agoWeb Inspector: Switch to type-safe JSON ConsoleMessage.cpp, InspectorDOMAgent.cpp...
loislo@chromium.org [Sun, 18 Dec 2011 15:05:58 +0000 (15:05 +0000)]
Web Inspector: Switch to type-safe JSON ConsoleMessage.cpp, InspectorDOMAgent.cpp, InspectorDebuggerAgent.cpp, ScriptCallFrame.cpp
https://bugs.webkit.org/show_bug.cgi?id=74549

Patch by Peter Rybin <peter.rybin@gmail.com> on 2011-12-18
Reviewed by Pavel Feldman.

Source/WebCore:

Work with InspectorObject is replaced with type-safe generated API
usage.
Inspector.json and Inspector-0.1.json are also changed to better
reflect data types that are actually being transmitted.

* inspector/ConsoleMessage.cpp:
(WebCore::ConsoleMessage::addToFrontend):
* inspector/Inspector-0.1.json:
* inspector/Inspector.json:
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::buildObjectForNode):
(WebCore::InspectorDOMAgent::buildObjectForEventListener):
* inspector/InspectorDebuggerAgent.cpp:
(WebCore::InspectorDebuggerAgent::resolveBreakpoint):
* inspector/ScriptCallFrame.cpp:
(WebCore::ScriptCallFrame::buildInspectorObject):

LayoutTests:

Expected file modified as JSON properties are now in different
order.

* inspector/protocol/console-agent-expected.txt:

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

8 years agoWeb Inspector: CodeGeneratorInspector.py: use generated types in method parameters
loislo@chromium.org [Sun, 18 Dec 2011 14:54:35 +0000 (14:54 +0000)]
Web Inspector: CodeGeneratorInspector.py: use generated types in method parameters
https://bugs.webkit.org/show_bug.cgi?id=74661

Patch by Peter Rybin <peter.rybin@gmail.com> on 2011-12-18
Reviewed by Pavel Feldman.

Type binding object is added to raw_type object.

* inspector/CodeGeneratorInspector.py:
(TypeBindings.create_for_named_type_declaration.EnumBinding.generate_type_builder):
(TypeBindings.create_for_named_type_declaration.EnumBinding.get_in_c_type_text):
(TypeBindings.create_for_named_type_declaration.EnumBinding):
(TypeBindings.create_for_named_type_declaration.EnumBinding.reduce_to_raw_type):
(TypeBindings.create_for_named_type_declaration.PlainString.generate_type_builder):
(TypeBindings.create_for_named_type_declaration.PlainString.reduce_to_raw_type):
(TypeBindings.create_for_named_type_declaration.PlainString):
(TypeBindings.create_for_named_type_declaration.PlainString.get_in_c_type_text):
(TypeBindings):
(TypeBindings.create_for_named_type_declaration.ClassBinding):
(get_in_c_type_text):
(reduce_to_raw_type):
(PlainObjectBinding.generate_type_builder):
(PlainObjectBinding.get_in_c_type_text):
(PlainObjectBinding):
(PlainObjectBinding.reduce_to_raw_type):
(RawTypesBinding.generate_type_builder):
(RawTypesBinding.get_in_c_type_text):
(RawTypesBinding):
(RawTypesBinding.reduce_to_raw_type):
(resolve_param_type.RawTypeBinding.reduce_to_raw_type):
(resolve_param_type.RawTypeBinding):
(resolve_param_type.RawTypeBinding.get_in_c_type_text):
(resolve_param_type):
(Generator.process_event):

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

8 years agoUnreviewed, rolling out r103169.
loislo@chromium.org [Sun, 18 Dec 2011 14:46:36 +0000 (14:46 +0000)]
Unreviewed, rolling out r103169.
http://trac.webkit.org/changeset/103169
https://bugs.webkit.org/show_bug.cgi?id=74809

it broke compilation on many platforms (Requested by loislo_
on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-12-18

Source/WebCore:

* WebCore.gypi:
* platform/ColorChooser.cpp: Renamed from Source/WebKit/chromium/src/ColorChooserProxy.h.
(WebCore::ColorChooserClient::~ColorChooserClient):
(WebCore::ColorChooserClient::newColorChooser):
(WebCore::ColorChooserClient::discardChooser):
(WebCore::ColorChooser::ColorChooser):
(WebCore::ColorChooser::create):
(WebCore::ColorChooser::~ColorChooser):
(WebCore::ColorChooser::didChooseColor):
(WebCore::ColorChooser::didCleanup):

Source/WebKit/chromium:

* WebKit.gyp:
* features.gypi:
* public/WebColorChooser.h: Removed.
* public/WebColorChooserClient.h: Removed.
* public/WebViewClient.h:
* src/ChromeClientImpl.cpp:
* src/ChromeClientImpl.h:
* src/ColorChooserProxy.cpp: Removed.
* src/WebColorChooserClientImpl.cpp: Removed.
* src/WebColorChooserClientImpl.h: Removed.

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

8 years agoREGRESSION(r103149): prepare-ChangeLog outputs a warning
haraken@chromium.org [Sun, 18 Dec 2011 14:43:14 +0000 (14:43 +0000)]
REGRESSION(r103149): prepare-ChangeLog outputs a warning
https://bugs.webkit.org/show_bug.cgi?id=74808

Reviewed by David Kilzer.

Added the prototype declaration of main() to avoid warning messages.
Sorted subroutine declarations in the alphabetical order.

* Scripts/prepare-ChangeLog:

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

8 years ago[CSS Shaders] Add FECustomFilter that renders custom filters
achicu@adobe.com [Sun, 18 Dec 2011 11:02:16 +0000 (11:02 +0000)]
[CSS Shaders] Add FECustomFilter that renders custom filters
https://bugs.webkit.org/show_bug.cgi?id=73317

Source/WebCore:

Using a GraphicsContext3D to render the shaders in GPU, read the
result back and use it in the software filters pipeline.

Reviewed by Chris Marrin.

Test: css3/filters/effect-custom.html

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* loader/cache/CachedShader.cpp:
(WebCore::CachedShader::CachedShader):
(WebCore::CachedShader::shaderString):
(WebCore::CachedShader::data):
* loader/cache/CachedShader.h:
* platform/graphics/filters/CustomFilterMesh.cpp: Added.
(WebCore::MeshGenerator::MeshGenerator):
(WebCore::MeshGenerator::vertices):
(WebCore::MeshGenerator::indices):
(WebCore::MeshGenerator::points):
(WebCore::MeshGenerator::pointsCount):
(WebCore::MeshGenerator::tiles):
(WebCore::MeshGenerator::tilesCount):
(WebCore::MeshGenerator::indicesCount):
(WebCore::MeshGenerator::floatsPerVertex):
(WebCore::MeshGenerator::vertexCount):
(WebCore::MeshGenerator::addTile):
(WebCore::MeshGenerator::addAttachedMeshIndex):
(WebCore::MeshGenerator::generateAttachedMesh):
(WebCore::MeshGenerator::addDetachedMeshVertexAndIndex):
(WebCore::MeshGenerator::generateDetachedMesh):
(WebCore::MeshGenerator::addPositionAttribute):
(WebCore::MeshGenerator::addTexCoordAttribute):
(WebCore::MeshGenerator::addMeshCoordAttribute):
(WebCore::MeshGenerator::addTriangleCoordAttribute):
(WebCore::MeshGenerator::addAttachedMeshVertexAttributes):
(WebCore::MeshGenerator::addDetachedMeshVertexAttributes):
(WebCore::MeshGenerator::dumpBuffers):
(WebCore::CustomFilterMesh::CustomFilterMesh):
(WebCore::CustomFilterMesh::~CustomFilterMesh):
* platform/graphics/filters/CustomFilterMesh.h: Added.
(WebCore::CustomFilterMesh::create):
(WebCore::CustomFilterMesh::verticesBufferObject):
(WebCore::CustomFilterMesh::bytesPerVertex):
(WebCore::CustomFilterMesh::elementsBufferObject):
(WebCore::CustomFilterMesh::indicesCount):
(WebCore::CustomFilterMesh::meshBox):
(WebCore::CustomFilterMesh::meshType):
* platform/graphics/filters/CustomFilterShader.cpp: Added.
(WebCore::CustomFilterShader::defaultVertexShaderString):
(WebCore::CustomFilterShader::defaultFragmentShaderString):
(WebCore::CustomFilterShader::CustomFilterShader):
(WebCore::CustomFilterShader::~CustomFilterShader):
* platform/graphics/filters/CustomFilterShader.h: Added.
* platform/graphics/filters/FECustomFilter.cpp: Added.
(WebCore::orthoMatrix):
(WebCore::FECustomFilter::FECustomFilter):
(WebCore::FECustomFilter::create):
(WebCore::FECustomFilter::platformApplySoftware):
(WebCore::FECustomFilter::dump):
(WebCore::FECustomFilter::externalRepresentation):
* platform/graphics/filters/FECustomFilter.h: Added.
* platform/graphics/gpu/Texture.cpp:
* platform/graphics/transforms/TransformationMatrix.cpp:
(WebCore::TransformationMatrix::toColumnMajorFloatArray):
* platform/graphics/transforms/TransformationMatrix.h:
* rendering/FilterEffectObserver.h: Copied from Source/WebCore/loader/cache/CachedShader.cpp.
(WebCore::FilterEffectObserver::~FilterEffectObserver):
* rendering/FilterEffectRenderer.cpp:
(WebCore::isWebGLEnabled):
(WebCore::FilterEffectRenderer::FilterEffectRenderer):
(WebCore::FilterEffectRenderer::build):
(WebCore::FilterEffectRenderer::notifyFinished):
* rendering/FilterEffectRenderer.h:
(WebCore::FilterEffectRenderer::create):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateOrRemoveFilterEffect):
(WebCore::RenderLayer::filterNeedsRepaint):
* rendering/RenderLayer.h:
* rendering/style/StyleCachedShader.h:
(WebCore::StyleCachedShader::cachedShader):
* rendering/style/StyleShader.h:
(WebCore::StyleShader::cachedShader):

LayoutTests:

WebKit2 doesn't support the WebGL flag in layoutTestController.overridePreference.
Skipping the test like all the other WebGL tests do.

Reviewed by Chris Marrin.

* css3/filters/effect-custom-expected.png: Added.
* css3/filters/effect-custom-expected.txt: Added.
* css3/filters/effect-custom.html: Added.
* css3/filters/resources/color-offset.fs: Added.
* css3/filters/resources/vertex-explode-detached.vs: Added.
* css3/filters/resources/vertex-offset.vs: Added.
* platform/wk2/Skipped: Skipping the test until WebGL can be enabled from layoutTestController.

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

8 years agoImplement <input type=color> UI WebKit chromium part
keishi@webkit.org [Sun, 18 Dec 2011 10:37:10 +0000 (10:37 +0000)]
Implement <input type=color> UI WebKit chromium part
https://bugs.webkit.org/show_bug.cgi?id=65897

Reviewed by Darin Fisher.

Source/WebCore:

* WebCore.gypi: Added ColorChooser.h and ColorChooserClient.h

Source/WebKit/chromium:

* WebKit.gyp: Added new files.
* features.gypi: Added ENABLE_INPUT_COLOR.
* public/WebColorChooser.h: Added. Interface for ColorChooserProxy to call.
(WebKit::WebColorChooser::~WebColorChooser):
(WebKit::WebColorChooser::setSelectedColor):
(WebKit::WebColorChooser::endChooser):
* public/WebColorChooserClient.h: Added.
(WebKit::WebColorChooserClient::~WebColorChooserClient):
(WebKit::WebColorChooserClient::didChooseColor): Only called when user changes the color.
(WebKit::WebColorChooserClient::didEndChooser): Called when WebColorChooser::endChooser is called.
* public/WebViewClient.h:
(WebKit::WebViewClient::createColorChooser): Creates a new color chooser. If there is an old color chooser, this will end it.
* src/ChromeClientImpl.cpp:
(WebKit::ChromeClientImpl::createColorChooser): Calls WebViewClient::createColorChooser.
* src/ChromeClientImpl.h:
* src/ColorChooserProxy.cpp: Proxies calls to WebCore::ColorChooser to WebKit::WebColorChooser.
(WebKit::ColorChooserProxy::ColorChooserProxy):
(WebKit::ColorChooserProxy::~ColorChooserProxy):
(WebKit::ColorChooserProxy::setSelectedColor):
(WebKit::ColorChooserProxy::endChooser):
* src/ColorChooserProxy.h:
* src/WebColorChooserClientImpl.cpp: Proxies calls to WebKit::WebColorChooserClient to WebCore::ColorChooserClient.
(WebKit::WebColorChooserClientImpl::WebColorChooserClientImpl):
(WebKit::WebColorChooserClientImpl::~WebColorChooserClientImpl):
(WebKit::WebColorChooserClientImpl::didChooseColor):
(WebKit::WebColorChooserClientImpl::didEndChooser):
* src/WebColorChooserClientImpl.h: Added.

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

8 years agoRefactor input type color WebCore part
keishi@webkit.org [Sun, 18 Dec 2011 07:03:20 +0000 (07:03 +0000)]
Refactor input type color WebCore part
https://bugs.webkit.org/show_bug.cgi?id=74591

Reviewed by Kent Tamura.

Changing ColorChooser to address issues raised in Bug 65897.
Chrome::createColorChooser will return a WebCore::ColorChooser instance
so the WebCore side (ColorInputType) and call the WebKit side. We pass the ColorChooserClient as an argument
to Chrome::createColorChooser so the WebKit side can call callbacks, didEndChooser and didChooseColor.

* html/ColorInputType.cpp:
(WebCore::ColorInputType::~ColorInputType):
(WebCore::ColorInputType::setValue):
(WebCore::ColorInputType::handleDOMActivateEvent): Calls createColorChooser to open the color chooser.
(WebCore::ColorInputType::detach):
(WebCore::ColorInputType::didEndChooser): Release the ColorChooser object.
(WebCore::ColorInputType::endColorChooser):
(WebCore::ColorInputType::updateColorSwatch): Added argument so it will compile again.
* html/ColorInputType.h:
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::selectColorInColorChooser):
* loader/EmptyClients.h:
(WebCore::EmptyChromeClient::createColorChooser):
* loader/FrameLoader.cpp:
* page/Chrome.cpp:
(WebCore::Chrome::createColorChooser): Opens the color chooser. Returns a ColorChooser PassOwnPtr.
* page/Chrome.h:
* page/ChromeClient.h:
* platform/ColorChooser.h:
(WebCore::ColorChooser::~ColorChooser):
(WebCore::ColorChooser::setSelectedColor):
(WebCore::ColorChooser::endChooser):
* platform/ColorChooserClient.h: Added.

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

8 years agoMake PlatformTouchEvent inherit from PlatformEvent
weinig@apple.com [Sun, 18 Dec 2011 06:09:11 +0000 (06:09 +0000)]
Make PlatformTouchEvent inherit from PlatformEvent
https://bugs.webkit.org/show_bug.cgi?id=74777

Reviewed by Andreas Kling.

../WebCore:

* platform/PlatformEvent.h:
Add TouchEvent types.

* platform/PlatformTouchEvent.h:
(WebCore::PlatformTouchEvent::PlatformTouchEvent):
Make inherit from PlatformEvent.

* platform/blackberry/PlatformTouchEventBlackBerry.cpp:
(WebCore::touchEventType):
(WebCore::PlatformTouchEvent::PlatformTouchEvent):
* platform/efl/PlatformTouchEventEfl.cpp:
(WebCore::PlatformTouchEvent::PlatformTouchEvent):
* platform/qt/PlatformTouchEventQt.cpp:
(WebCore::PlatformTouchEvent::PlatformTouchEvent):
Make necessary changes to work with new base class.

../WebKit/chromium:

* src/WebInputEventConversion.cpp:
(WebKit::toPlatformTouchEventType):
* tests/InnerGestureRecognizerTest.cpp:
(BuildablePlatformTouchEvent::BuildablePlatformTouchEvent):
(SimulateAndTestFirstClick):
(TouchPointAndEvent::TouchPointAndEvent):
Add PlatformEvent prefix to enum types.

../WebKit/efl:

* ewk/ewk_frame.cpp:
(ewk_frame_feed_touch_event):
Rename TouchEventType to PlatformEvent::Type.

../WebKit2:

* Shared/WebEventConversion.cpp:
(WebKit::WebKit2PlatformTouchEvent::WebKit2PlatformTouchEvent):
Add PlatformEvent prefix to enum types.

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

8 years agoCache and reuse the HTMLAllCollection returned by document.all.
kling@webkit.org [Sun, 18 Dec 2011 03:57:51 +0000 (03:57 +0000)]
Cache and reuse the HTMLAllCollection returned by document.all.
<http://webkit.org/b/74768>

Reviewed by Antti Koivisto.

Source/WebCore:

Let Document cache the document.all collection, just like we do for
the other collections (.links, .images, etc.)
This is primarily a memory optimization, as repeated calls to
document.all will no longer cause collection objects to stack up.

Tests: fast/dom/document-collection-idempotence.html
       fast/dom/gc-9.html

* dom/Document.h:
* dom/Document.cpp:
(WebCore::Document::all):

    Cache the HTMLAllCollection and reuse it across calls instead of
    creating a new one each time.

* html/HTMLAllCollection.h:
* html/HTMLAllCollection.cpp:
(WebCore::HTMLAllCollection::create):
(WebCore::HTMLAllCollection::HTMLAllCollection):

    Make the HTMLAllCollection constructor take a Document* to enforce
    the fact that it's the only way it should ever be created.

* html/HTMLAllCollection.idl:
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):

    Custom reachability code for JSC, same as HTMLCollection.

LayoutTests:

Update tests to document the new behavior of document.all.

* fast/dom/document-collection-idempotence-expected.txt:
* fast/dom/document-collection-idempotence.html:
* fast/dom/gc-9-expected.txt:
* fast/dom/gc-9.html:

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

8 years agoHTMLCollection: Simplify itemAfter().
kling@webkit.org [Sun, 18 Dec 2011 03:41:45 +0000 (03:41 +0000)]
HTMLCollection: Simplify itemAfter().
<http://webkit.org/b/74795>

Reviewed by Antti Koivisto.

Whether to do deep traversal of children depends on m_type which
doesn't change after construction, so move that decision there
by caching it in a "m_includeChildren" bit.

Also factored out the big switch statement in itemAfter() into
an isAcceptableElement() function.

Last and least, use fastHasAttribute() to check for itempropAttr
since it's not SVG animatable.

* html/HTMLCollection.cpp:
(WebCore::HTMLCollection::HTMLCollection):
(WebCore::HTMLCollection::shouldIncludeChildren):
(WebCore::HTMLCollection::isAcceptableElement):
(WebCore::HTMLCollection::itemAfter):
* html/HTMLCollection.h:

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

8 years ago[Qt] Fix QtTestBrowser compilation with QtWidgets module
commit-queue@webkit.org [Sun, 18 Dec 2011 03:35:12 +0000 (03:35 +0000)]
[Qt] Fix QtTestBrowser compilation with QtWidgets module
https://bugs.webkit.org/show_bug.cgi?id=74791

Patch by Adenilson Cavalcanti <cavalcantii@gmail.com> on 2011-12-17
Reviewed by Andreas Kling.

* QtTestBrowser/QtTestBrowser.pro:

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

8 years agoTagNodeList: Optimize nodeMatches() for the common case.
kling@webkit.org [Sun, 18 Dec 2011 03:32:32 +0000 (03:32 +0000)]
TagNodeList: Optimize nodeMatches() for the common case.
<http://webkit.org/b/74796>

Reviewed by Antti Koivisto.

Reject based on tag name mismatch before comparing the namespaces,
as this case is vastly more common.

nodeMatches() is very hot on the DOM Query (Dojo) test on Dromaeo.
This change takes it from 8.3% to 7.7% on my MBP.

* dom/TagNodeList.cpp:
(WebCore::TagNodeList::nodeMatches):

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

8 years agoNameNodeList: Use fastGetAttribute() in nodeMatches().
kling@webkit.org [Sun, 18 Dec 2011 03:28:35 +0000 (03:28 +0000)]
NameNodeList: Use fastGetAttribute() in nodeMatches().
<http://webkit.org/b/74797>

Reviewed by Darin Adler.

It's safe and slightly more efficient to use fastGetAttribute()
for HTMLNames::nameAttr here.

* dom/NameNodeList.cpp:
(WebCore::NameNodeList::nodeMatches):

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

8 years agoCSSPrimitiveValue: Inline getIdent().
kling@webkit.org [Sun, 18 Dec 2011 03:26:00 +0000 (03:26 +0000)]
CSSPrimitiveValue: Inline getIdent().
<http://webkit.org/b/74793>

Reviewed by Antti Koivisto.

Inline the trivial getIdent(), the same as its getFoo() siblings.

* css/CSSPrimitiveValue.cpp:
* css/CSSPrimitiveValue.h:
(WebCore::CSSPrimitiveValue::getIdent):

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

8 years agoCSSStyleSelector: Clean up matchRules().
kling@webkit.org [Sun, 18 Dec 2011 03:17:27 +0000 (03:17 +0000)]
CSSStyleSelector: Clean up matchRules().
<http://webkit.org/b/74794>

Reviewed by Antti Koivisto.

- Early return from the isCollectingRulesOnly() path to reduce nesting.
- Move the creation of m_ruleList out of the loop that builds the list.
- Removed some comments from the Captain Obvious department.

* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::matchRules):

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

8 years agoRuleSet: Remove style sheet null-check in addRulesFromSheet().
kling@webkit.org [Sun, 18 Dec 2011 03:06:33 +0000 (03:06 +0000)]
RuleSet: Remove style sheet null-check in addRulesFromSheet().
<http://webkit.org/b/74792>

Reviewed by Antti Koivisto.

Replace the "sheet" null-check in addRulesFromSheet() by an assertion.
The only call-site where it could be null was when adding rules from
an @import'ed sheet, so add a check there instead.

* css/CSSStyleSelector.cpp:
(WebCore::RuleSet::addRulesFromSheet):

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

8 years agoCSSStyleSelector: Clean up getColorFromPrimitiveValue().
kling@webkit.org [Sun, 18 Dec 2011 03:00:43 +0000 (03:00 +0000)]
CSSStyleSelector: Clean up getColorFromPrimitiveValue().
<http://webkit.org/b/74789>

Reviewed by Antti Koivisto.

Rename getColorFromPrimitiveValue() to colorFromPrimitiveValue() and rework
it to be a bit more readable.

* css/CSSGradientValue.cpp:
(WebCore::CSSGradientValue::addStops):
* css/CSSStyleApplyProperty.cpp:
(WebCore::ApplyPropertyColor::applyValue):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applyProperty):
(WebCore::CSSStyleSelector::colorFromPrimitiveValue):
(WebCore::CSSStyleSelector::createFilterOperations):
* css/CSSStyleSelector.h:
* css/SVGCSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applySVGProperty):

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

8 years agoOpaqueJSClass: Remove RVCT2 workarounds.
kling@webkit.org [Sat, 17 Dec 2011 23:17:26 +0000 (23:17 +0000)]
OpaqueJSClass: Remove RVCT2 workarounds.
<http://webkit.org/b/74250>

Reviewed by Benjamin Poulain.

We no longer need workarounds for the RVCT2 compiler since it was
only used for the Symbian port of WebKit which is now defunct.

* API/JSClassRef.cpp:
(OpaqueJSClass::OpaqueJSClass):
(OpaqueJSClassContextData::OpaqueJSClassContextData):

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

8 years ago[chromium] Mark svg/W3C-SVG-1.1/animate-elem* tests as flaky crashers
enne@google.com [Sat, 17 Dec 2011 21:19:21 +0000 (21:19 +0000)]
[chromium] Mark svg/W3C-SVG-1.1/animate-elem* tests as flaky crashers
https://bugs.webkit.org/show_bug.cgi?id=74788

Unreviewed gardening.

There are only about a dozen tests that have been seen to fail on the
bots, but the set keeps changing. Rather than just marking known
failures, mark all these tests to avoid further gardening fallout.

* platform/chromium/test_expectations.txt:

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

8 years agoText dispappear when SVG font has no latin character
bashi@chromium.org [Sat, 17 Dec 2011 20:23:37 +0000 (20:23 +0000)]
Text dispappear when SVG font has no latin character
https://bugs.webkit.org/show_bug.cgi?id=71765

Reviewed by Nikolas Zimmermann.

Source/WebCore:

Initialize SVG font metrics even if the font doesn't contain latin characters.

Test: svg/custom/svg-fonts-no-latin-glyph.html

* svg/SVGFontData.cpp:
(WebCore::SVGFontData::initializeFontData): Initializes metrics even if the zeroGlyphPage doesn't exist.

LayoutTests:

Test that text can be displayed with a SVG font which has no latin character.

* svg/custom/svg-fonts-no-latin-glyph-expected.txt: Added.
* svg/custom/resources/no-latin-glyph-font.svg: Added.
* svg/custom/svg-fonts-no-latin-glyph.html: Added.

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

8 years ago[chromium] Rebaseline huge-layer-rotated after r103129.
enne@google.com [Sat, 17 Dec 2011 20:09:35 +0000 (20:09 +0000)]
[chromium] Rebaseline huge-layer-rotated after r103129.
https://bugs.webkit.org/show_bug.cgi?id=72686

Unreviewed gardening.

I don't understand why this would have changed rendering on any test,
but there are only small diffences in the lower left, so rebaselining.
It's also possible, but far less likely, that this was from r103130.

* platform/chromium-cg-mac-snowleopard/platform/chromium/compositing/huge-layer-rotated-expected.png:

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

8 years ago[chromium] Mark more worker tests as flaky crashers after r103095.
enne@google.com [Sat, 17 Dec 2011 19:52:52 +0000 (19:52 +0000)]
[chromium] Mark more worker tests as flaky crashers after r103095.
https://bugs.webkit.org/show_bug.cgi?id=74746

Unreviewed gardening.

* platform/chromium/test_expectations.txt:

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

8 years ago[chromium] Mark fast/js/dfg-poison-fuzz.html as slow in debug.
enne@google.com [Sat, 17 Dec 2011 19:47:24 +0000 (19:47 +0000)]
[chromium] Mark fast/js/dfg-poison-fuzz.html as slow in debug.
https://bugs.webkit.org/show_bug.cgi?id=74787

Unreviewed gardening.

* platform/chromium/test_expectations.txt:

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

8 years agoRadical sign drawn incorrectly due to refactoring typo
mitz@apple.com [Sat, 17 Dec 2011 18:51:45 +0000 (18:51 +0000)]
Radical sign drawn incorrectly due to refactoring typo
https://bugs.webkit.org/show_bug.cgi?id=74780

Patch by David Barton <dbarton@mathscribe.com> on 2011-12-17
Reviewed by Dan Bernstein.

LayoutTests/mathml/presentation/roots.xhtml shows the bug, but apparently its .png
checksum is ok so run-webkit-tests can't detect the problem.

* rendering/mathml/RenderMathMLRoot.cpp:
(WebCore::RenderMathMLRoot::paint):
In revision 88250, one paintOffset should have been adjustedPaintOffset.

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

8 years ago[chromium] Reverting r103011, r103135 due to Aura test failures
enne@google.com [Sat, 17 Dec 2011 18:35:09 +0000 (18:35 +0000)]
[chromium] Reverting r103011, r103135 due to Aura test failures

Unreviewed gardening.

Source/WebCore:

* platform/graphics/chromium/ContentLayerChromium.cpp:
(WebCore::ContentLayerChromium::~ContentLayerChromium):
* platform/graphics/chromium/GraphicsLayerChromium.cpp:
(WebCore::GraphicsLayerChromium::notifySyncRequired):
* platform/graphics/chromium/GraphicsLayerChromium.h:
* platform/graphics/chromium/ImageLayerChromium.cpp:
(WebCore::ImageLayerChromium::paintContentsIfDirty):
* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::setLayerTreeHost):
(WebCore::LayerChromium::setNeedsCommit):
(WebCore::LayerChromium::setParent):
(WebCore::LayerChromium::setMaskLayer):
* platform/graphics/chromium/LayerChromium.h:
(WebCore::LayerChromium::setReplicaLayer):
* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore::TiledLayerChromium::setLayerTreeHost):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::~CCLayerTreeHost):
(WebCore::CCLayerTreeHost::didRecreateGraphicsContext):
(WebCore::CCLayerTreeHost::paintMaskAndReplicaForRenderSurface):
(WebCore::CCLayerTreeHost::paintLayerContents):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(WebCore::CCLayerTreeHost::setRootLayer):

Source/WebKit/chromium:

* WebKit.gypi:
* public/platform/WebContentLayer.h:
* public/platform/WebExternalTextureLayer.h:
* public/platform/WebLayer.h:
* public/platform/WebLayerClient.h:
* src/WebContentLayer.cpp:
(WebKit::WebContentLayer::create):
* src/WebContentLayerImpl.cpp:
(WebKit::WebContentLayerImpl::create):
(WebKit::WebContentLayerImpl::WebContentLayerImpl):
(WebKit::WebContentLayerImpl::notifySyncRequired):
* src/WebContentLayerImpl.h:
* src/WebExternalTextureLayer.cpp:
(WebKit::WebExternalTextureLayer::create):
* src/WebExternalTextureLayerImpl.cpp:
(WebKit::WebExternalTextureLayerImpl::create):
(WebKit::WebExternalTextureLayerImpl::WebExternalTextureLayerImpl):
(WebKit::WebExternalTextureLayerImpl::notifySyncRequired):
* src/WebExternalTextureLayerImpl.h:
* src/WebLayer.cpp:
(WebKit::WebLayer::create):
* src/WebLayerImpl.cpp:
(WebKit::WebLayerImpl::create):
(WebKit::WebLayerImpl::WebLayerImpl):
(WebKit::WebLayerImpl::notifySyncRequired):
* src/WebLayerImpl.h:
* src/WebLayerTreeViewImpl.cpp:
(WebKit::WebLayerTreeViewImpl::create):
(WebKit::WebLayerTreeViewImpl::WebLayerTreeViewImpl):
* src/WebLayerTreeViewImpl.h:
* tests/CCLayerTreeHostImplTest.cpp:
* tests/CCLayerTreeHostTest.cpp:
(WTF::MockLayerTreeHost::create):
(WTF::MockLayerTreeHost::MockLayerTreeHost):
(WTF::CompositorMockWebGraphicsContext3D::create):
(WTF::CompositorMockWebGraphicsContext3D::makeContextCurrent):
(WTF::CompositorMockWebGraphicsContext3D::createProgram):
(WTF::CompositorMockWebGraphicsContext3D::createShader):
(WTF::CompositorMockWebGraphicsContext3D::getShaderiv):
(WTF::CompositorMockWebGraphicsContext3D::getProgramiv):
(WTF::CompositorMockWebGraphicsContext3D::CompositorMockWebGraphicsContext3D):
(WTF::MockLayerTreeHostClient::createLayerTreeHostContext3D):
(WTF::CCLayerTreeHostTestShortlived1::beginTest):
(WTF::CCLayerTreeHostTestShortlived2::beginTest):
(WTF::CCLayerTreeHostTestShortlived3::beginTest):
(WTF::CCLayerTreeHostTestScrollSimple::beginCommitOnCCThread):
(WTF::TestOpacityChangeLayerDelegate::notifySyncRequired):
* tests/CompositorFakeGraphicsContext3D.h: Removed.
* tests/CompositorFakeWebGraphicsContext3D.h: Removed.
* tests/LayerChromiumTest.cpp:
* tests/MockGraphicsContext3DTest.cpp: Renamed from Source/WebKit/chromium/tests/FakeGraphicsContext3DTest.cpp.
(FrameCountingContext::FrameCountingContext):
(FrameCountingContext::prepareTexture):
(FrameCountingContext::frameCount):
(TEST):
(ContextThatCountsMakeCurrents::ContextThatCountsMakeCurrents):
(ContextThatCountsMakeCurrents::makeContextCurrent):
(ContextThatCountsMakeCurrents::makeCurrentCount):
(ContextWithMakeCurrentThatFails::ContextWithMakeCurrentThatFails):
(ContextWithMakeCurrentThatFails::makeContextCurrent):
* tests/MockWebGraphicsContext3D.h: Renamed from Source/WebKit/chromium/tests/FakeWebGraphicsContext3D.h.
(WebKit::MockWebGraphicsContext3D::initialize):
(WebKit::MockWebGraphicsContext3D::makeContextCurrent):
(WebKit::MockWebGraphicsContext3D::width):
(WebKit::MockWebGraphicsContext3D::height):
(WebKit::MockWebGraphicsContext3D::reshape):
(WebKit::MockWebGraphicsContext3D::isGLES2Compliant):
(WebKit::MockWebGraphicsContext3D::readBackFramebuffer):
(WebKit::MockWebGraphicsContext3D::getPlatformTextureId):
(WebKit::MockWebGraphicsContext3D::prepareTexture):
(WebKit::MockWebGraphicsContext3D::postSubBufferCHROMIUM):
(WebKit::MockWebGraphicsContext3D::synthesizeGLError):
(WebKit::MockWebGraphicsContext3D::isContextLost):
(WebKit::MockWebGraphicsContext3D::mapBufferSubDataCHROMIUM):
(WebKit::MockWebGraphicsContext3D::unmapBufferSubDataCHROMIUM):
(WebKit::MockWebGraphicsContext3D::mapTexSubImage2DCHROMIUM):
(WebKit::MockWebGraphicsContext3D::unmapTexSubImage2DCHROMIUM):
(WebKit::MockWebGraphicsContext3D::setVisibilityCHROMIUM):
(WebKit::MockWebGraphicsContext3D::getRequestableExtensionsCHROMIUM):
(WebKit::MockWebGraphicsContext3D::requestExtensionCHROMIUM):
(WebKit::MockWebGraphicsContext3D::blitFramebufferCHROMIUM):
(WebKit::MockWebGraphicsContext3D::renderbufferStorageMultisampleCHROMIUM):
(WebKit::MockWebGraphicsContext3D::activeTexture):
(WebKit::MockWebGraphicsContext3D::attachShader):
(WebKit::MockWebGraphicsContext3D::bindAttribLocation):
(WebKit::MockWebGraphicsContext3D::bindBuffer):
(WebKit::MockWebGraphicsContext3D::bindFramebuffer):
(WebKit::MockWebGraphicsContext3D::bindRenderbuffer):
(WebKit::MockWebGraphicsContext3D::bindTexture):
(WebKit::MockWebGraphicsContext3D::blendColor):
(WebKit::MockWebGraphicsContext3D::blendEquation):
(WebKit::MockWebGraphicsContext3D::blendEquationSeparate):
(WebKit::MockWebGraphicsContext3D::blendFunc):
(WebKit::MockWebGraphicsContext3D::blendFuncSeparate):
(WebKit::MockWebGraphicsContext3D::bufferData):
(WebKit::MockWebGraphicsContext3D::bufferSubData):
(WebKit::MockWebGraphicsContext3D::checkFramebufferStatus):
(WebKit::MockWebGraphicsContext3D::clear):
(WebKit::MockWebGraphicsContext3D::clearColor):
(WebKit::MockWebGraphicsContext3D::clearDepth):
(WebKit::MockWebGraphicsContext3D::clearStencil):
(WebKit::MockWebGraphicsContext3D::colorMask):
(WebKit::MockWebGraphicsContext3D::compileShader):
(WebKit::MockWebGraphicsContext3D::compressedTexImage2D):
(WebKit::MockWebGraphicsContext3D::compressedTexSubImage2D):
(WebKit::MockWebGraphicsContext3D::copyTexImage2D):
(WebKit::MockWebGraphicsContext3D::copyTexSubImage2D):
(WebKit::MockWebGraphicsContext3D::cullFace):
(WebKit::MockWebGraphicsContext3D::depthFunc):
(WebKit::MockWebGraphicsContext3D::depthMask):
(WebKit::MockWebGraphicsContext3D::depthRange):
(WebKit::MockWebGraphicsContext3D::detachShader):
(WebKit::MockWebGraphicsContext3D::disable):
(WebKit::MockWebGraphicsContext3D::disableVertexAttribArray):
(WebKit::MockWebGraphicsContext3D::drawArrays):
(WebKit::MockWebGraphicsContext3D::drawElements):
(WebKit::MockWebGraphicsContext3D::enable):
(WebKit::MockWebGraphicsContext3D::enableVertexAttribArray):
(WebKit::MockWebGraphicsContext3D::finish):
(WebKit::MockWebGraphicsContext3D::flush):
(WebKit::MockWebGraphicsContext3D::framebufferRenderbuffer):
(WebKit::MockWebGraphicsContext3D::framebufferTexture2D):
(WebKit::MockWebGraphicsContext3D::frontFace):
(WebKit::MockWebGraphicsContext3D::generateMipmap):
(WebKit::MockWebGraphicsContext3D::getActiveAttrib):
(WebKit::MockWebGraphicsContext3D::getActiveUniform):
(WebKit::MockWebGraphicsContext3D::getAttachedShaders):
(WebKit::MockWebGraphicsContext3D::getAttribLocation):
(WebKit::MockWebGraphicsContext3D::getBooleanv):
(WebKit::MockWebGraphicsContext3D::getBufferParameteriv):
(WebKit::MockWebGraphicsContext3D::getContextAttributes):
(WebKit::MockWebGraphicsContext3D::getError):
(WebKit::MockWebGraphicsContext3D::getFloatv):
(WebKit::MockWebGraphicsContext3D::getFramebufferAttachmentParameteriv):
(WebKit::MockWebGraphicsContext3D::getIntegerv):
(WebKit::MockWebGraphicsContext3D::getProgramiv):
(WebKit::MockWebGraphicsContext3D::getProgramInfoLog):
(WebKit::MockWebGraphicsContext3D::getRenderbufferParameteriv):
(WebKit::MockWebGraphicsContext3D::getShaderiv):
(WebKit::MockWebGraphicsContext3D::getShaderInfoLog):
(WebKit::MockWebGraphicsContext3D::getShaderSource):
(WebKit::MockWebGraphicsContext3D::getString):
(WebKit::MockWebGraphicsContext3D::getTexParameterfv):
(WebKit::MockWebGraphicsContext3D::getTexParameteriv):
(WebKit::MockWebGraphicsContext3D::getUniformfv):
(WebKit::MockWebGraphicsContext3D::getUniformiv):
(WebKit::MockWebGraphicsContext3D::getUniformLocation):
(WebKit::MockWebGraphicsContext3D::getVertexAttribfv):
(WebKit::MockWebGraphicsContext3D::getVertexAttribiv):
(WebKit::MockWebGraphicsContext3D::getVertexAttribOffset):
(WebKit::MockWebGraphicsContext3D::hint):
(WebKit::MockWebGraphicsContext3D::isBuffer):
(WebKit::MockWebGraphicsContext3D::isEnabled):
(WebKit::MockWebGraphicsContext3D::isFramebuffer):
(WebKit::MockWebGraphicsContext3D::isProgram):
(WebKit::MockWebGraphicsContext3D::isRenderbuffer):
(WebKit::MockWebGraphicsContext3D::isShader):
(WebKit::MockWebGraphicsContext3D::isTexture):
(WebKit::MockWebGraphicsContext3D::lineWidth):
(WebKit::MockWebGraphicsContext3D::linkProgram):
(WebKit::MockWebGraphicsContext3D::pixelStorei):
(WebKit::MockWebGraphicsContext3D::polygonOffset):
(WebKit::MockWebGraphicsContext3D::readPixels):
(WebKit::MockWebGraphicsContext3D::releaseShaderCompiler):
(WebKit::MockWebGraphicsContext3D::renderbufferStorage):
(WebKit::MockWebGraphicsContext3D::sampleCoverage):
(WebKit::MockWebGraphicsContext3D::scissor):
(WebKit::MockWebGraphicsContext3D::shaderSource):
(WebKit::MockWebGraphicsContext3D::stencilFunc):
(WebKit::MockWebGraphicsContext3D::stencilFuncSeparate):
(WebKit::MockWebGraphicsContext3D::stencilMask):
(WebKit::MockWebGraphicsContext3D::stencilMaskSeparate):
(WebKit::MockWebGraphicsContext3D::stencilOp):
(WebKit::MockWebGraphicsContext3D::stencilOpSeparate):
(WebKit::MockWebGraphicsContext3D::texImage2D):
(WebKit::MockWebGraphicsContext3D::texParameterf):
(WebKit::MockWebGraphicsContext3D::texParameteri):
(WebKit::MockWebGraphicsContext3D::texSubImage2D):
(WebKit::MockWebGraphicsContext3D::uniform1f):
(WebKit::MockWebGraphicsContext3D::uniform1fv):
(WebKit::MockWebGraphicsContext3D::uniform1i):
(WebKit::MockWebGraphicsContext3D::uniform1iv):
(WebKit::MockWebGraphicsContext3D::uniform2f):
(WebKit::MockWebGraphicsContext3D::uniform2fv):
(WebKit::MockWebGraphicsContext3D::uniform2i):
(WebKit::MockWebGraphicsContext3D::uniform2iv):
(WebKit::MockWebGraphicsContext3D::uniform3f):
(WebKit::MockWebGraphicsContext3D::uniform3fv):
(WebKit::MockWebGraphicsContext3D::uniform3i):
(WebKit::MockWebGraphicsContext3D::uniform3iv):
(WebKit::MockWebGraphicsContext3D::uniform4f):
(WebKit::MockWebGraphicsContext3D::uniform4fv):
(WebKit::MockWebGraphicsContext3D::uniform4i):
(WebKit::MockWebGraphicsContext3D::uniform4iv):
(WebKit::MockWebGraphicsContext3D::uniformMatrix2fv):
(WebKit::MockWebGraphicsContext3D::uniformMatrix3fv):
(WebKit::MockWebGraphicsContext3D::uniformMatrix4fv):
(WebKit::MockWebGraphicsContext3D::useProgram):
(WebKit::MockWebGraphicsContext3D::validateProgram):
(WebKit::MockWebGraphicsContext3D::vertexAttrib1f):
(WebKit::MockWebGraphicsContext3D::vertexAttrib1fv):
(WebKit::MockWebGraphicsContext3D::vertexAttrib2f):
(WebKit::MockWebGraphicsContext3D::vertexAttrib2fv):
(WebKit::MockWebGraphicsContext3D::vertexAttrib3f):
(WebKit::MockWebGraphicsContext3D::vertexAttrib3fv):
(WebKit::MockWebGraphicsContext3D::vertexAttrib4f):
(WebKit::MockWebGraphicsContext3D::vertexAttrib4fv):
(WebKit::MockWebGraphicsContext3D::vertexAttribPointer):
(WebKit::MockWebGraphicsContext3D::viewport):
(WebKit::MockWebGraphicsContext3D::createBuffer):
(WebKit::MockWebGraphicsContext3D::createFramebuffer):
(WebKit::MockWebGraphicsContext3D::createProgram):
(WebKit::MockWebGraphicsContext3D::createRenderbuffer):
(WebKit::MockWebGraphicsContext3D::createShader):
(WebKit::MockWebGraphicsContext3D::createTexture):
(WebKit::MockWebGraphicsContext3D::deleteBuffer):
(WebKit::MockWebGraphicsContext3D::deleteFramebuffer):
(WebKit::MockWebGraphicsContext3D::deleteProgram):
(WebKit::MockWebGraphicsContext3D::deleteRenderbuffer):
(WebKit::MockWebGraphicsContext3D::deleteShader):
(WebKit::MockWebGraphicsContext3D::deleteTexture):
(WebKit::MockWebGraphicsContext3D::texStorage2DEXT):
* tests/WebGLLayerChromiumTest.cpp:
(WebKit::CompositorMockWebGraphicsContext3D::create):
(WebKit::CompositorMockWebGraphicsContext3D::makeContextCurrent):
(WebKit::CompositorMockWebGraphicsContext3D::createProgram):
(WebKit::CompositorMockWebGraphicsContext3D::createShader):
(WebKit::CompositorMockWebGraphicsContext3D::getShaderiv):
(WebKit::CompositorMockWebGraphicsContext3D::getProgramiv):
(WebKit::CompositorMockWebGraphicsContext3D::getContextAttributes):
(WebKit::CompositorMockWebGraphicsContext3D::CompositorMockWebGraphicsContext3D):
(WebKit::createGraphicsContext):
(WebKit::TEST):
* tests/WebLayerTest.cpp:
(testing::WebLayerTest::WebLayerTest):
(testing::TEST_F):

LayoutTests:

* platform/chromium/test_expectations.txt:

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

8 years agoRemove top-level code completely from prepare-ChangeLog
haraken@chromium.org [Sat, 17 Dec 2011 18:15:48 +0000 (18:15 +0000)]
Remove top-level code completely from prepare-ChangeLog
https://bugs.webkit.org/show_bug.cgi?id=74698

Reviewed by Darin Adler.

We are planning to write unit-tests for prepare-ChangeLog in a run-leaks_unittest manner.
This patch just moves all top-level code into main().

* Scripts/prepare-ChangeLog:
(main):

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

8 years ago Hardware acceleration of W3C Filter Effects
cmarrin@apple.com [Sat, 17 Dec 2011 17:46:57 +0000 (17:46 +0000)]
    Hardware acceleration of W3C Filter Effects
        https://bugs.webkit.org/show_bug.cgi?id=68479

        Reviewed by Simon Fraser.

        Tests: css3/filters/effect-blur-hw.html
               css3/filters/effect-combined-hw.html
               css3/filters/effect-drop-shadow-hw.html
               css3/filters/effect-grayscale-hw.html
               css3/filters/effect-hue-rotate-hw.html
               css3/filters/effect-invert-hw.html
               css3/filters/effect-opacity-hw.html
               css3/filters/effect-saturate-hw.html
               css3/filters/effect-sepia-hw.html

        Implement hardware acceleration of filters. If a filter is
        on a RenderLayer and that layer has a GraphicsLayer, a test
        is done to see if the desired filter can be rendered in hardware.
        If so, skip rendering it when painting, and add the filters to the
        CALayer. Currently Mac only, using CoreImage. Animation is done in
        software, with the filters being recreated every frame. There are
        some fidelity issues with the software renderer, but those will
        be dealt with as bugs to be fixed.

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

8 years ago[Chromium] Implement PluginViewBase::getFormValue
bashi@chromium.org [Sat, 17 Dec 2011 17:10:41 +0000 (17:10 +0000)]
[Chromium] Implement PluginViewBase::getFormValue
https://bugs.webkit.org/show_bug.cgi?id=64434

Reviewed by Darin Fisher.

This patch was landed as r102873, but reverted because of Chromium Mac build failure.
The fix was landed as Chromium r114920. The patch should be safe to land.

No new tests. No behavior change at this time. We should add a test for PPAPI after chromium supports the feature.

* public/WebPlugin.h: Added getFormValue().
* src/WebPluginContainerImpl.cpp:
(WebKit::WebPluginContainerImpl::getFormValue): Added.
* src/WebPluginContainerImpl.h: Added getFormValue().

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

8 years ago[Qt] fast/canvas/2d.text.draw.fill.maxWidth.gradient.html fails with newer Qt5
ossy@webkit.org [Sat, 17 Dec 2011 13:07:12 +0000 (13:07 +0000)]
[Qt] fast/canvas/2d.text.draw.fill.maxWidth.gradient.html fails with newer Qt5
https://bugs.webkit.org/show_bug.cgi?id=74785

* platform/qt-5.0/Skipped: Skip fast/canvas/2d.text.draw.fill.maxWidth.gradient.html.

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

8 years agoUnreviewed, GTK build fix after r103131.
philn@webkit.org [Sat, 17 Dec 2011 08:59:29 +0000 (08:59 +0000)]
Unreviewed, GTK build fix after r103131.

* GNUmakefile.list.am: Fix typo... s/.cop/.cpp

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

8 years agoRemove the duplicated code from ASCIICType.h
benjamin@webkit.org [Sat, 17 Dec 2011 06:35:29 +0000 (06:35 +0000)]
Remove the duplicated code from ASCIICType.h
https://bugs.webkit.org/show_bug.cgi?id=74771

Patch by Benjamin Poulain <bpoulain@apple.com> on 2011-12-16
Reviewed by Andreas Kling.

The functions were sharing similar code and were defined for the various input types.
Use templates instead to avoid code duplication.

* wtf/ASCIICType.h:
(WTF::isASCII):
(WTF::isASCIIAlpha):
(WTF::isASCIIAlphanumeric):
(WTF::isASCIIDigit):
(WTF::isASCIIHexDigit):
(WTF::isASCIILower):
(WTF::isASCIIOctalDigit):
(WTF::isASCIIPrintable):
(WTF::isASCIISpace):
(WTF::isASCIIUpper):
(WTF::toASCIILower):
(WTF::toASCIIUpper):
(WTF::toASCIIHexValue):
(WTF::lowerNibbleToASCIIHexDigit):
(WTF::upperNibbleToASCIIHexDigit):

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

8 years agoFEComposite does not build when you disable filters on ARMv7
benjamin@webkit.org [Sat, 17 Dec 2011 05:53:42 +0000 (05:53 +0000)]
FEComposite does not build when you disable filters on ARMv7
https://bugs.webkit.org/show_bug.cgi?id=74772

Patch by Benjamin Poulain <bpoulain@apple.com> on 2011-12-16
Reviewed by David Kilzer.

Add the missing ENABLE(FILTERS).

* platform/graphics/filters/arm/FECompositeArithmeticNEON.cpp:
* platform/graphics/filters/arm/FECompositeArithmeticNEON.h:

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

8 years agoRoll out r103139 because it breaks the build.
mrowe@apple.com [Sat, 17 Dec 2011 04:50:01 +0000 (04:50 +0000)]
Roll out r103139 because it breaks the build.

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

8 years agoMac build fix after r103104.
rniwa@webkit.org [Sat, 17 Dec 2011 04:44:04 +0000 (04:44 +0000)]
Mac build fix after r103104.

* WebCore.xcodeproj/project.pbxproj:

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

8 years agoConsolidate before-advice regarding attribute modification into a single method
adamk@chromium.org [Sat, 17 Dec 2011 04:36:34 +0000 (04:36 +0000)]
Consolidate before-advice regarding attribute modification into a single method
https://bugs.webkit.org/show_bug.cgi?id=74752

Reviewed by Ryosuke Niwa.

Adds a willModifyAttribute method to Element, meant to be called
before an attribute on that Element is added/removed/changed.

Replace most calls to Element::updateId and all calls to
Element::enqueueAttributesMutationRecordIfRequested with calls to
willModifyAttribute. Moreover, enqueueAttributesMutation... can now
be private since its only caller is willModifyAttribute.

The only remaining direct calls to updateId are in cases the entire
NamedNodeMap is being replaced. These are implementation details of
WebCore that shouldn't be exposed via MutationObservers.

No new tests, no expected change in behavior.

* dom/Attr.cpp:
(WebCore::Attr::setValue):
(WebCore::Attr::childrenChanged): Besides the above change, use a
StringBuilder to build up value, and only do String -> AtomicString
conversion once.
* dom/Element.cpp:
(WebCore::Element::setAttributeInternal):
* dom/Element.h:
(WebCore::Element::willModifyAttribute):
* dom/NamedNodeMap.cpp:
(WebCore::NamedNodeMap::setNamedItem):
(WebCore::NamedNodeMap::removeNamedItem):

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

8 years agoRemove unused variable after r74747 (buildfix)
commit-queue@webkit.org [Sat, 17 Dec 2011 03:46:17 +0000 (03:46 +0000)]
Remove unused variable after r74747 (buildfix)
https://bugs.webkit.org/show_bug.cgi?id=74767

Patch by Rafael Brandao <rafael.lobo@openbossa.org> on 2011-12-16
Reviewed by Darin Adler.

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compilePutByValForByteArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):

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

8 years agoReverted r103120, this breaks v8 on ARMv7 DFG.
barraclough@apple.com [Sat, 17 Dec 2011 02:40:35 +0000 (02:40 +0000)]
Reverted r103120, this breaks v8 on ARMv7 DFG.

* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGNode.h:
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::propagateArithNodeFlags):
(JSC::DFG::Propagator::fixupNode):
(JSC::DFG::Propagator::byValIsPure):
(JSC::DFG::Propagator::clobbersWorld):
(JSC::DFG::Propagator::getByValLoadElimination):
(JSC::DFG::Propagator::checkStructureLoadElimination):
(JSC::DFG::Propagator::getByOffsetLoadElimination):
(JSC::DFG::Propagator::getPropertyStorageLoadElimination):
(JSC::DFG::Propagator::getIndexedPropertyStorageLoadElimination):
(JSC::DFG::Propagator::performNodeCSE):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compilePutByValForByteArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForFloatTypedArray):
* dfg/DFGSpeculativeJIT.h:
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

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

8 years agoLayout Test media/controls-right-click-on-timebar.html is flaky - Crash on LEOPARD...
commit-queue@webkit.org [Sat, 17 Dec 2011 02:37:43 +0000 (02:37 +0000)]
Layout Test media/controls-right-click-on-timebar.html is flaky - Crash on LEOPARD CG DEBUG
ffmpeg_video_decoder.cc has been reworked extensively since the reported crashes
and the test is 0% flaky now.
https://bugs.webkit.org/show_bug.cgi?id=68747

Patch by Ami Fischman <fischman@chromium.org> on 2011-12-16
Reviewed by Eric Carlson.

* platform/chromium/test_expectations.txt:

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

8 years ago[chromium] 2 repaint test failures on mac
tony@chromium.org [Sat, 17 Dec 2011 02:16:41 +0000 (02:16 +0000)]
[chromium] 2 repaint test failures on mac
https://bugs.webkit.org/show_bug.cgi?id=66338

Unreviewed. These are expected differences between Apple DRT and Chromium DRT on Mac
caused by different code paths for drawing scrollbars.

* platform/chromium-cg-mac-snowleopard/fast/repaint/background-scaling-expected.png: Added.
* platform/chromium-cg-mac-snowleopard/fast/repaint/scale-page-shrink-expected.png: Added.
* platform/chromium-mac-leopard/fast/repaint/scale-page-shrink-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/repaint/background-scaling-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/repaint/scale-page-shrink-expected.png: Added.
* platform/chromium-win/fast/repaint/background-scaling-expected.png: Renamed from LayoutTests/platform/chromium/fast/repaint/background-scaling-expected.png.
* platform/chromium/fast/repaint/background-scaling-expected.txt: Removed.
* platform/chromium/test_expectations.txt:

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

8 years ago[chromium] CCLayerDelegate and WebLayerClient do not need notifySyncRequired
jamesr@google.com [Sat, 17 Dec 2011 02:11:47 +0000 (02:11 +0000)]
[chromium] CCLayerDelegate and WebLayerClient do not need notifySyncRequired
https://bugs.webkit.org/show_bug.cgi?id=74376

Reviewed by Kenneth Russell.

Source/WebCore:

CCLayerDelegate::notifySyncRequired is an odd bit of interface that we originally cargo-culted from the
CoreAnimation compositor implementation. It is a mechanism by which a LayerChromium instance may request a new
frame via its CCLayerDelegate, which in WebCore is always a GraphicsLayerClient. In practice, all
implementations eventually ended up routing to CCLayerTreeHost::setNeedsCommit which then made the proper
scheduling decision.

This patch routes all changes that would have gone through CCLayerDelegate::notifySyncRequired directly to
CCLayerTreeHost::setNeedsCommit, which greatly simplifies the scheduling logic.

There is a large amount of unit test coverage for this change, largely in LayerChromiumTest

* platform/graphics/chromium/GraphicsLayerChromium.cpp:
* platform/graphics/chromium/GraphicsLayerChromium.h:
* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::setNeedsCommit):
(WebCore::LayerChromium::insertChild):
* platform/graphics/chromium/LayerChromium.h:
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::~CCLayerTreeHost):
(WebCore::CCLayerTreeHost::setRootLayer):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
* platform/graphics/chromium/cc/CCScopedThreadProxy.h:
(WebCore::CCScopedThreadProxy::runTaskIfNotShutdown):

Source/WebKit/chromium:

WebLayerClient::notifyNeedsComposite() is an odd interface for the same reason that
CCLayerDelegate::notifySyncRequired() is - all scheduling decisions should route through the WebLayerTreeView,
not individual layers. In practice, all implementations of WebLayerClient::notifySyncRequired() do the exact
same thing as WebLayerTreeView::scheduleComposite(). This removes that callback, making WebLayerClient an empty
interface, and routes all calls that would go to that interface to WebLayerTreeView::scheduleComposite().

Once downstream implementations of WebLayerClient are removed, WebLayerClient.h and the constructors associated
with it can be deleted.

The bulk of the changes here are to the test harness. Many tests that were designed around notifySyncRequired()
are rewritten to check for CCLayerTreeHost::setNeedsCommit() or WebLayerTreeView::scheduleComposite() instead.
In a few instances, this required changing the setup logic around somewhat so that the layers being manipulated
were in a tree that initialized without errors.

* WebKit.gypi:
* public/platform/WebContentLayer.h:
* public/platform/WebExternalTextureLayer.h:
* public/platform/WebLayer.h:
* public/platform/WebLayerClient.h:
* src/WebContentLayer.cpp:
(WebKit::WebContentLayer::create):
* src/WebContentLayerImpl.cpp:
(WebKit::WebContentLayerImpl::create):
(WebKit::WebContentLayerImpl::WebContentLayerImpl):
* src/WebContentLayerImpl.h:
* src/WebExternalTextureLayer.cpp:
(WebKit::WebExternalTextureLayer::create):
* src/WebExternalTextureLayerImpl.cpp:
(WebKit::WebExternalTextureLayerImpl::create):
(WebKit::WebExternalTextureLayerImpl::WebExternalTextureLayerImpl):
* src/WebExternalTextureLayerImpl.h:
* src/WebLayer.cpp:
(WebKit::WebLayer::create):
* src/WebLayerImpl.cpp:
(WebKit::WebLayerImpl::create):
(WebKit::WebLayerImpl::WebLayerImpl):
* src/WebLayerImpl.h:
* src/WebLayerTreeViewImpl.cpp:
(WebKit::WebLayerTreeViewImpl::create):
(WebKit::WebLayerTreeViewImpl::WebLayerTreeViewImpl):
* src/WebLayerTreeViewImpl.h:
* tests/CCLayerTreeHostTest.cpp:
(WTF::MockLayerTreeHost::create):
(WTF::MockLayerTreeHost::MockLayerTreeHost):
(WTF::MockLayerTreeHostClient::createLayerTreeHostContext3D):
(WTF::CCLayerTreeHostTestScrollSimple::animateAndLayout):
* tests/CompositorMockGraphicsContext3D.h: Added.
(WebCore::createCompositorMockGraphicsContext3D):
* tests/CompositorMockWebGraphicsContext3D.h: Added.
(WebKit::CompositorMockWebGraphicsContext3D::create):
(WebKit::CompositorMockWebGraphicsContext3D::makeContextCurrent):
(WebKit::CompositorMockWebGraphicsContext3D::createProgram):
(WebKit::CompositorMockWebGraphicsContext3D::createShader):
(WebKit::CompositorMockWebGraphicsContext3D::getShaderiv):
(WebKit::CompositorMockWebGraphicsContext3D::getProgramiv):
(WebKit::CompositorMockWebGraphicsContext3D::CompositorMockWebGraphicsContext3D):
* tests/LayerChromiumTest.cpp:
* tests/MockWebGraphicsContext3D.h:
(WebKit::MockWebGraphicsContext3D::getContextAttributes):
* tests/WebGLLayerChromiumTest.cpp:
(WebKit::TEST):
* tests/WebLayerTest.cpp:
(testing::MockWebLayerTreeViewClient::animateAndLayout):
(testing::MockWebLayerTreeViewClient::applyScrollAndScale):
(testing::MockWebLayerTreeViewClient::createContext3D):
(testing::MockWebLayerTreeViewClient::didRebindGraphicsContext):
(testing::WebLayerTest::SetUp):
(testing::WebLayerTest::TearDown):
(testing::TEST_F):

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

8 years agoFix typo in MarkupTokenBase: rename takeAtributes to takeAttributes
adamk@chromium.org [Sat, 17 Dec 2011 02:04:31 +0000 (02:04 +0000)]
Fix typo in MarkupTokenBase: rename takeAtributes to takeAttributes
https://bugs.webkit.org/show_bug.cgi?id=74766

Reviewed by Darin Adler.

* html/parser/HTMLConstructionSite.cpp:
(WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
(WebCore::HTMLConstructionSite::insertScriptElement):
(WebCore::HTMLConstructionSite::createElement):
(WebCore::HTMLConstructionSite::createHTMLElement):
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::attributesForIsindexInput):
* xml/parser/MarkupTokenBase.h:
(WebCore::AtomicMarkupTokenBase::takeAttributes):

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

8 years ago<option><span><option> doesn't parse correctly
abarth@webkit.org [Sat, 17 Dec 2011 01:19:36 +0000 (01:19 +0000)]
<option><span><option> doesn't parse correctly
https://bugs.webkit.org/show_bug.cgi?id=74760

Reviewed by Eric Seidel.

Source/WebCore:

The <option> start tag shouldn't be quite as aggressive in closing open
<option> tags.  I'm not sure whether this was a change in the spec or a
mistranscription, but this patch causes us to match the spec.  I've
checked the other optionTag checks, and they all seem to be correct.

* html/parser/HTMLTreeBuilder.cpp:

LayoutTests:

Show test progression.

* html5lib/runner-expected.txt:

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

8 years agoConvert more WorkItems over to WTF::Functions
andersca@apple.com [Sat, 17 Dec 2011 01:03:36 +0000 (01:03 +0000)]
Convert more WorkItems over to WTF::Functions
https://bugs.webkit.org/show_bug.cgi?id=74770

Reviewed by Andreas Kling.

* Platform/WorkQueue.cpp:
(WorkQueue::dispatchAfterDelay):
* Platform/WorkQueue.h:
* Shared/ChildProcess.cpp:
(WebKit::ChildProcess::didCloseOnConnectionWorkQueue):
* UIProcess/Launcher/ThreadLauncher.cpp:
(WebKit::ThreadLauncher::launchThread):
* UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::ProcessLauncher::launchProcess):
* WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::pluginThreadAsyncCall):
* WebProcess/Plugins/PluginView.cpp:
(WebKit::derefPluginView):
(WebKit::PluginView::unprotectPluginFromDestruction):

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

8 years ago[MutationObservers] Remove platform-dependent code in Document.cpp resulting from...
commit-queue@webkit.org [Sat, 17 Dec 2011 00:58:33 +0000 (00:58 +0000)]
[MutationObservers] Remove platform-dependent code in Document.cpp resulting from Mutation Event histogram collection
https://bugs.webkit.org/show_bug.cgi?id=73026

Patch by Rafael Weinstein <rafaelw@chromium.org> on 2011-12-16
Reviewed by Ryosuke Niwa.

This patch adds platform/HistogramSupport which has an empty implementation for all ports
except Chromium.

No tests need. This patch is just a refactor.

* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* dom/Document.cpp:
(WebCore::histogramMutationEventUsage):
(WebCore::Document::~Document):
* platform/HistogramSupport.h: Added.
(WebCore::HistogramSupport::histogramEnumeration):
* platform/chromium/HistogramSupportChromium.cpp: Added.
(WebCore::HistogramSupport::histogramEnumeration):

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

8 years ago<rdar://problem/10576732> and https://bugs.webkit.org/show_bug.cgi?id=74533
beidson@apple.com [Sat, 17 Dec 2011 00:32:40 +0000 (00:32 +0000)]
<rdar://problem/10576732> and https://bugs.webkit.org/show_bug.cgi?id=74533
REGRESSION(r102619): Reproducible crash closing window with video + poster image inside an object element

Reviewed by Darin Adler.

Source/WebCore:

Test: media/crash-closing-page-with-media-as-plugin-fallback.html

At some point documentWillBecomeInactive() was overloaded to not only notify elements they were going in to the page
cache but also do some other work that was necessary during Document teardown.

This crash occurs because we're notifying elements they're going in to the page cache at document teardown, so this
patch breaks that work back out in to a separate function.

* dom/Document.cpp:
(WebCore::Document::detach): Remove obsolete comment.
(WebCore::Document::documentWillBecomeInactive): Handle only accelerated compositing cleanup.
(WebCore::Document::documentWillSuspendForPageCache): Call documentWillBecomeInactive before notifying elements of suspension.
(WebCore::Document::documentDidResumeFromPageCache):
(WebCore::Document::registerForPageCacheSuspensionCallbacks):
(WebCore::Document::unregisterForPageCacheSuspensionCallbacks):
* dom/Document.h:

* history/CachedFrame.cpp:
(WebCore::CachedFrameBase::restore): Call the renamed documentDidResumeFromPageCache.
(WebCore::CachedFrame::CachedFrame): Call documentWillSuspendForPageCache instead of documentDidBecomeInactive.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::commitProvisionalLoad): Call the renamed documentDidResumeFromPageCache.

* dom/Element.h:
(WebCore::Element::documentWillSuspendForPageCache): Renamed from documentWillBecomeInactive()
(WebCore::Element::documentDidResumeFromPageCache): Renamed from documentDidBecomeActive()

Change to the renamed registration and callbacks functions in the handful of classes that use them:
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::~HTMLFormElement):
(WebCore::HTMLFormElement::parseMappedAttribute):
(WebCore::HTMLFormElement::documentDidResumeFromPageCache):
(WebCore::HTMLFormElement::willMoveToNewOwnerDocument):
(WebCore::HTMLFormElement::didMoveToNewOwnerDocument):
* html/HTMLFormElement.h:

* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::~HTMLInputElement):
(WebCore::HTMLInputElement::updateType):
(WebCore::HTMLInputElement::parseMappedAttribute):
(WebCore::HTMLInputElement::needsSuspensionCallback):
(WebCore::HTMLInputElement::registerForSuspensionCallbackIfNeeded):
(WebCore::HTMLInputElement::unregisterForSuspensionCallbackIfNeeded):
(WebCore::HTMLInputElement::documentDidResumeFromPageCache):
(WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
(WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
* html/HTMLInputElement.h:

* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::~HTMLPlugInImageElement):
(WebCore::HTMLPlugInImageElement::createRenderer):
(WebCore::HTMLPlugInImageElement::willMoveToNewOwnerDocument):
(WebCore::HTMLPlugInImageElement::didMoveToNewOwnerDocument):
(WebCore::HTMLPlugInImageElement::documentWillSuspendForPageCache):
(WebCore::HTMLPlugInImageElement::documentDidResumeFromPageCache):
* html/HTMLPlugInImageElement.h:

* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::SVGSVGElement):
(WebCore::SVGSVGElement::~SVGSVGElement):
(WebCore::SVGSVGElement::willMoveToNewOwnerDocument):
(WebCore::SVGSVGElement::didMoveToNewOwnerDocument):
(WebCore::SVGSVGElement::documentWillSuspendForPageCache):
(WebCore::SVGSVGElement::documentDidResumeFromPageCache):
* svg/SVGSVGElement.h:

LayoutTests:

* media/crash-closing-page-with-media-as-plugin-fallback-expected.txt: Added.
* media/crash-closing-page-with-media-as-plugin-fallback.html: Added.
* media/resources/video-with-poster-as-object-fallback.html: Added.

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

8 years ago[chromium] Need to prepaint tiles in TiledLayerChromium
commit-queue@webkit.org [Sat, 17 Dec 2011 00:27:33 +0000 (00:27 +0000)]
[chromium] Need to prepaint tiles in TiledLayerChromium
https://bugs.webkit.org/show_bug.cgi?id=72686

Patch by Eric Penner <epenner@google.com> on 2011-12-16
Reviewed by James Robinson.

Source/WebCore:

Tests: TiledLayerChromiumTest (idlePaintOutOfMemory, pushIdlePaintTiles)

* platform/graphics/chromium/ContentLayerChromium.cpp:
(WebCore::ContentLayerChromium::idlePaintContentsIfDirty): added idle paint function
* platform/graphics/chromium/ContentLayerChromium.h: ditto
* platform/graphics/chromium/LayerChromium.h: ditto
(WebCore::LayerChromium::idlePaintContentsIfDirty): ditto
* platform/graphics/chromium/TextureManager.cpp:
(WebCore::TextureManager::protectTexture): removed assert for protecting a texture twice
* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore::TiledLayerChromium::TiledLayerChromium):
(WebCore::TiledLayerChromium::cleanupResources):
(WebCore::TiledLayerChromium::updateCompositorResources): refactoring to use tile indices
(WebCore::TiledLayerChromium::prepareToUpdateTiles): refactored common code and made idle/visible versions
(WebCore::TiledLayerChromium::prepareToUpdate): ditto
(WebCore::TiledLayerChromium::prepareToUpdateIdle): ditto
(WebCore::TiledLayerChromium::needsIdlePaint):
(WebCore::TiledLayerChromium::idlePaintRect):
* platform/graphics/chromium/TiledLayerChromium.h:
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::CCLayerTreeHost):
(WebCore::CCLayerTreeHost::compositeAndReadback): set flag to avoid idle paint durring composite and readback
(WebCore::CCLayerTreeHost::updateLayers): added idle flag parameter
(WebCore::CCLayerTreeHost::paintContentsIfDirty): ditto
(WebCore::CCLayerTreeHost::paintMaskAndReplicaForRenderSurface): ditto
(WebCore::CCLayerTreeHost::paintLayerContents): chooses idle or visible paint
* platform/graphics/chromium/cc/CCLayerTreeHost.h:

Source/WebKit/chromium:

* tests/CCLayerTreeHostTest.cpp:
(WTF::ContentLayerChromiumWithUpdateTracking::idlePaintContentsCount):
(WTF::ContentLayerChromiumWithUpdateTracking::resetPaintContentsCount):
(WTF::ContentLayerChromiumWithUpdateTracking::idlePaintContentsIfDirty):
(WTF::ContentLayerChromiumWithUpdateTracking::ContentLayerChromiumWithUpdateTracking):
(WTF::CCLayerTreeHostTestOpacityChange::afterTest):
* tests/TiledLayerChromiumTest.cpp:
(WTF::FakeTiledLayerChromium::prepareToUpdateIdle):
(WTF::FakeTiledLayerChromium::needsIdlePaint):
(WTF::TEST):

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

8 years ago[Qt] Add platform-specific test results after r103073
mnaganov@chromium.org [Sat, 17 Dec 2011 00:18:52 +0000 (00:18 +0000)]
[Qt] Add platform-specific test results after r103073
[Chromium] Add test results for Mac 10.5

* platform/chromium-cg-mac-leopard/editing/input/caret-at-the-edge-of-contenteditable-expected.png: Added.
* platform/chromium-cg-mac-leopard/editing/input/caret-at-the-edge-of-input-expected.png: Added.
* platform/chromium-cg-mac-leopard/editing/input/reveal-caret-of-multiline-contenteditable-expected.png: Added.
* platform/chromium-cg-mac-leopard/editing/input/reveal-caret-of-multiline-input-expected.png: Added.
* platform/chromium-cg-mac-leopard/fast/forms/input-text-scroll-left-on-blur-expected.png:
* platform/chromium-cg-mac-snowleopard/fast/forms/input-text-scroll-left-on-blur-expected.png: Added.
* platform/mac/editing/input/caret-at-the-edge-of-contenteditable-expected.txt: Renamed from LayoutTests/editing/input/caret-at-the-edge-of-contenteditable-expected.txt.
* platform/mac/editing/input/caret-at-the-edge-of-input-expected.txt: Renamed from LayoutTests/editing/input/caret-at-the-edge-of-input-expected.txt.
* platform/mac/editing/input/reveal-caret-of-multiline-contenteditable-expected.txt: Renamed from LayoutTests/editing/input/reveal-caret-of-multiline-contenteditable-expected.txt.
* platform/mac/editing/input/reveal-caret-of-multiline-input-expected.txt: Renamed from LayoutTests/editing/input/reveal-caret-of-multiline-input-expected.txt.
* platform/qt/editing/input/caret-at-the-edge-of-contenteditable-expected.txt: Added.
* platform/qt/editing/input/caret-at-the-edge-of-input-expected.txt: Added.
* platform/qt/editing/input/reveal-caret-of-multiline-contenteditable-expected.txt: Added.
* platform/qt/editing/input/reveal-caret-of-multiline-input-expected.txt: Added.

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

8 years agoDFG OSR exit may get confused about where in the scratch buffer it stored a value
fpizlo@apple.com [Sat, 17 Dec 2011 00:09:30 +0000 (00:09 +0000)]
DFG OSR exit may get confused about where in the scratch buffer it stored a value
https://bugs.webkit.org/show_bug.cgi?id=74695

Source/JavaScriptCore:

Reviewed by Oliver Hunt.

The code that reads from the scratch buffer now explicitly knows which locations to
read from. No new tests, since this patch covers a case so uncommon that I don't know
how to make a test for it.

* dfg/DFGOSRExitCompiler.h:
(JSC::DFG::OSRExitCompiler::badIndex):
(JSC::DFG::OSRExitCompiler::initializePoisoned):
(JSC::DFG::OSRExitCompiler::poisonIndex):
* dfg/DFGOSRExitCompiler32_64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGOSRExitCompiler64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):

LayoutTests:

Rubber stamped by Gavin Barraclough.

Wrote a custom fuzzer that does 2048 different combinations of integer and float
temporaries and induces a failure whilst all of them are live. If poisoning doesn't
work correctly, a large number (>hundred) of the fuzzing cases fail.

* fast/js/dfg-poison-fuzz-expected.txt: Added.
* fast/js/dfg-poison-fuzz.html: Added.
* fast/js/script-tests/dfg-poison-fuzz.js: Added.

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

8 years agoMove webkit-bug-importer to Contributor. It won't
dino@apple.com [Sat, 17 Dec 2011 00:07:23 +0000 (00:07 +0000)]
Move webkit-bug-importer to Contributor. It won't
autocomplete as an Account.
See https://bugs.webkit.org/show_bug.cgi?id=74739
for some discussion.

Unreviewed.

* Scripts/webkitpy/common/config/committers.py:

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