Timeline



Dec 18, 2011:

11:15 PM Changeset in webkit [103221] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

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.
10:59 PM Changeset in webkit [103220] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk/LayoutTests

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:
10:39 PM Changeset in webkit [103219] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix typo in comment.

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):

10:36 PM Changeset in webkit [103218] by fpizlo@apple.com
  • 9 edits in trunk/Source/JavaScriptCore

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):

10:26 PM Changeset in webkit [103217] by Darin Adler
  • 6 edits
    2 copies
    8 moves
    1 add
    1 delete in trunk/LayoutTests

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.

9:47 PM Changeset in webkit [103216] by morrita@google.com
  • 1 edit
    16 adds in trunk/LayoutTests

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.
9:22 PM Changeset in webkit [103215] by keishi@webkit.org
  • 10 edits
    5 copies
    1 move in trunk/Source

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.
9:06 PM Changeset in webkit [103214] by morrita@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed test_expectations.txt update.

  • platform/chromium/test_expectations.txt:
8:25 PM Changeset in webkit [103213] by commit-queue@webkit.org
  • 20 edits in trunk

<msup>, <munder>, <mover>, and <munderover> baseline positions are wrong
https://bugs.webkit.org/show_bug.cgi?id=72821

Patch by David Barton <Dave Barton> 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:
7:50 PM Changeset in webkit [103212] by macpherson@chromium.org
  • 4 edits in trunk/Source/WebCore

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):

7:27 PM Changeset in webkit [103211] by macpherson@chromium.org
  • 4 edits in trunk/Source/WebCore

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:
7:13 PM Changeset in webkit [103210] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

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):

7:07 PM Changeset in webkit [103209] by macpherson@chromium.org
  • 9 edits in trunk/Source/WebCore

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:
7:01 PM Changeset in webkit [103208] by macpherson@chromium.org
  • 4 edits in trunk/Source/WebCore

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):

6:59 PM Changeset in webkit [103207] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

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):

6:51 PM Changeset in webkit [103206] by mitz@apple.com
  • 3 edits
    3 adds in trunk

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.
6:17 PM Changeset in webkit [103205] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

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):

6:13 PM Changeset in webkit [103204] by morrita@google.com
  • 17 edits
    3 moves
    14 deletes in trunk/LayoutTests

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.
6:07 PM Changeset in webkit [103203] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[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):

6:03 PM Changeset in webkit [103202] by benjamin@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

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):

5:47 PM Changeset in webkit [103201] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

Removing unrelated printf() that slipped into my last commit.

  • platform/ScrollableArea.cpp:

(WebCore::ScrollableArea::scrollToOffsetWithoutAnimation):

5:43 PM Changeset in webkit [103200] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Another attempt to fix the windows build.

  • Platform/win/WorkQueueWin.cpp:

(WorkQueue::performWorkOnRegisteredWorkThread):
(WorkQueue::dispatch):

5:40 PM Changeset in webkit [103199] by kling@webkit.org
  • 3 edits in trunk/Source/WebCore

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.

5:27 PM Changeset in webkit [103198] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Try to fix the windows build.

  • Platform/win/WorkQueueWin.cpp:

(WorkQueue::performWorkOnRegisteredWorkThread):

5:12 PM Changeset in webkit [103197] by aboxhall@chromium.org
  • 6 edits in trunk

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:
4:42 PM Changeset in webkit [103196] by weinig@apple.com
  • 13 edits in trunk/Source/WebCore

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):

4:37 PM Changeset in webkit [103195] by koz@chromium.org
  • 10 edits in trunk/Source

[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:
4:37 PM Changeset in webkit [103194] by weinig@apple.com
  • 15 edits
    1 delete in trunk/Source/WebKit2

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:
4:29 PM Changeset in webkit [103193] by abarth@webkit.org
  • 6 edits in trunk

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:
3:47 PM Changeset in webkit [103192] by Antti Koivisto
  • 5 edits
    2 adds in trunk

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.
2:28 PM Changeset in webkit [103191] by andersca@apple.com
  • 8 edits in trunk/Source

Set the main frame view scroll position asynchronously
https://bugs.webkit.org/show_bug.cgi?id=74823

Reviewed by Sam Weinig.

Source/JavaScriptCore:

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.

2:21 PM Changeset in webkit [103190] by kling@webkit.org
  • 5 edits in trunk/Source/WebCore

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:
1:54 PM Changeset in webkit [103189] by weinig@apple.com
  • 3 edits in trunk/Source/WebCore

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.

1:49 PM Changeset in webkit [103188] by Simon Hausmann
  • 4 edits
    2 moves in trunk

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.
1:41 PM Changeset in webkit [103187] by andersca@apple.com
  • 4 edits in trunk/Source/WebCore

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.

12:43 PM Changeset in webkit [103186] by kling@webkit.org
  • 7 edits
    2 adds in trunk

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.
12:27 PM Changeset in webkit [103185] by andersca@apple.com
  • 4 edits in trunk/Source/WebCore

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.

12:09 PM Changeset in webkit [103184] by kling@webkit.org
  • 1 edit in trunk/Source/WebCore/ChangeLog

Correct ChangeLog author mixup.

12:07 PM Changeset in webkit [103183] by kling@webkit.org
  • 3 edits in trunk/Source/WebCore

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.

11:52 AM Changeset in webkit [103182] by andersca@apple.com
  • 5 edits in trunk/Source/WebCore

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.

11:45 AM Changeset in webkit [103181] by weinig@apple.com
  • 25 edits in trunk/Source

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):

10:56 AM Changeset in webkit [103180] by andersca@apple.com
  • 7 edits
    1 add in trunk/Source

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):

10:01 AM Changeset in webkit [103179] by andersca@apple.com
  • 7 edits in trunk/Source

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.

9:06 AM Changeset in webkit [103178] by andersca@apple.com
  • 16 edits in trunk/Source/WebKit2

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):

8:39 AM Changeset in webkit [103177] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

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:
7:24 AM Changeset in webkit [103176] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

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):

7:13 AM Changeset in webkit [103175] by loislo@chromium.org
  • 2 edits in trunk/PerformanceTests

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):

7:05 AM Changeset in webkit [103174] by loislo@chromium.org
  • 9 edits in trunk

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:
6:54 AM Changeset in webkit [103173] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

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):

6:46 AM Changeset in webkit [103172] by loislo@chromium.org
  • 8 edits
    1 move
    5 deletes in trunk/Source

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.
6:43 AM Changeset in webkit [103171] by haraken@chromium.org
  • 2 edits in trunk/Tools

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:
3:02 AM Changeset in webkit [103170] by Alexandru Chiculita
  • 20 edits
    1 copy
    12 adds in trunk

[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.
2:37 AM Changeset in webkit [103169] by keishi@webkit.org
  • 8 edits
    5 copies
    1 move in trunk/Source

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.

Dec 17, 2011:

11:03 PM Changeset in webkit [103168] by keishi@webkit.org
  • 10 edits
    1 add in trunk/Source/WebCore

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.
10:09 PM Changeset in webkit [103167] by weinig@apple.com
  • 13 edits in trunk/Source

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.

7:57 PM Changeset in webkit [103166] by kling@webkit.org
  • 12 edits in trunk

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:
7:41 PM Changeset in webkit [103165] by kling@webkit.org
  • 3 edits in trunk/Source/WebCore

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:
7:35 PM Changeset in webkit [103164] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[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:
7:32 PM Changeset in webkit [103163] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

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):

7:28 PM Changeset in webkit [103162] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

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):

7:26 PM Changeset in webkit [103161] by kling@webkit.org
  • 3 edits in trunk/Source/WebCore

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):

7:17 PM Changeset in webkit [103160] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

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):

7:06 PM Changeset in webkit [103159] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

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):

7:00 PM Changeset in webkit [103158] by kling@webkit.org
  • 6 edits in trunk/Source/WebCore

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):

3:17 PM Changeset in webkit [103157] by kling@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

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):

1:19 PM Changeset in webkit [103156] by enne@google.com
  • 2 edits in trunk/LayoutTests

[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:
12:23 PM Changeset in webkit [103155] by bashi@chromium.org
  • 3 edits
    3 adds in trunk

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.
12:09 PM Changeset in webkit [103154] by enne@google.com
  • 2 edits in trunk/LayoutTests

[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:
11:52 AM Changeset in webkit [103153] by enne@google.com
  • 2 edits in trunk/LayoutTests

[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:
11:47 AM Changeset in webkit [103152] by enne@google.com
  • 2 edits in trunk/LayoutTests

[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:
10:51 AM Changeset in webkit [103151] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

Radical sign drawn incorrectly due to refactoring typo
https://bugs.webkit.org/show_bug.cgi?id=74780

Patch by David Barton <Dave Barton> 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.

10:35 AM Changeset in webkit [103150] by enne@google.com
  • 34 edits
    2 moves
    2 deletes in trunk

[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:
10:15 AM Changeset in webkit [103149] by haraken@chromium.org
  • 2 edits in trunk/Tools

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):

9:46 AM Changeset in webkit [103148] by cmarrin@apple.com
  • 14 edits
    27 adds in trunk

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.

9:10 AM Changeset in webkit [103147] by bashi@chromium.org
  • 4 edits in trunk/Source/WebKit/chromium

[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().
5:07 AM Changeset in webkit [103146] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[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.
12:59 AM Changeset in webkit [103145] by Philippe Normand
  • 2 edits in trunk/Source/WebCore

Unreviewed, GTK build fix after r103131.

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

Dec 16, 2011:

10:35 PM Changeset in webkit [103144] by benjamin@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

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):

9:53 PM Changeset in webkit [103143] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

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:
8:50 PM Changeset in webkit [103142] by mrowe@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Roll out r103139 because it breaks the build.

8:44 PM Changeset in webkit [103141] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Mac build fix after r103104.

  • WebCore.xcodeproj/project.pbxproj:
8:36 PM Changeset in webkit [103140] by adamk@chromium.org
  • 5 edits in trunk/Source/WebCore

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):

7:46 PM Changeset in webkit [103139] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

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):

6:40 PM Changeset in webkit [103138] by barraclough@apple.com
  • 9 edits in trunk/Source/JavaScriptCore

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):

6:37 PM Changeset in webkit [103137] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

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:
6:16 PM Changeset in webkit [103136] by tony@chromium.org
  • 2 edits
    1 move
    5 adds
    1 delete in trunk/LayoutTests

[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:
6:11 PM Changeset in webkit [103135] by jamesr@google.com
  • 29 edits
    2 moves
    2 adds in trunk/Source

[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):

6:04 PM Changeset in webkit [103134] by adamk@chromium.org
  • 4 edits in trunk/Source/WebCore

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):

5:19 PM Changeset in webkit [103133] by abarth@webkit.org
  • 5 edits in trunk

<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:
5:03 PM Changeset in webkit [103132] by andersca@apple.com
  • 9 edits in trunk/Source/WebKit2

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):

4:58 PM Changeset in webkit [103131] by commit-queue@webkit.org
  • 8 edits
    3 adds in trunk/Source/WebCore

[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):

4:32 PM Changeset in webkit [103130] by beidson@apple.com
  • 15 edits
    3 adds in trunk

<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.
4:27 PM Changeset in webkit [103129] by commit-queue@webkit.org
  • 12 edits in trunk/Source

[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):

4:18 PM Changeset in webkit [103128] by mnaganov@chromium.org
  • 2 edits
    10 adds in trunk/LayoutTests

[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.
4:09 PM Changeset in webkit [103127] by fpizlo@apple.com
  • 5 edits
    3 adds in trunk

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.
4:07 PM Changeset in webkit [103126] by dino@apple.com
  • 2 edits in trunk/Tools

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:
4:01 PM Changeset in webkit [103125] by dino@apple.com
  • 29 edits
    1 copy
    1 move
    5 adds
    2 deletes in trunk

Miscellaneous Filter updates to align with spec
https://bugs.webkit.org/show_bug.cgi?id=74736

Reviewed by Simon Fraser.

Source/WebCore:

Combine a bunch of small updates to filters where
we were not compliant with the specification.

  • blur() only takes one value, not two
  • blur() does not accept percentages. This allowed us to stop passing the borderBoxSize around while building the filter chain or calculating visual overflow.
  • gamma() and sharpen() removed
  • brightness() and contrast() added

Tests: css3/filters/effect-brightness.html

css3/filters/effect-contrast.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::valueForFilter): Create new
variations on component transfer functions for brightness() and
contrast() effects. Also remove sharpen() and gamma().

  • css/CSSParser.cpp:

(WebCore::filterInfoForName):
(WebCore::CSSParser::parseBuiltinFilterArguments): Ditto, and blur
only takes one argument.

  • css/CSSStyleSelector.cpp:

(WebCore::filterOperationForType):
(WebCore::CSSStyleSelector::createFilterOperations): Ditto, and
use ->isPercentage() to test rather than getting the type.

  • css/WebKitCSSFilterValue.cpp:

(WebCore::WebKitCSSFilterValue::customCssText):

  • css/WebKitCSSFilterValue.h:
  • css/WebKitCSSFilterValue.idl: Remove sharpen and gamma, add

brightness and contrast.

  • platform/graphics/filters/FilterOperation.cpp:

(WebCore::BlurFilterOperation::blend): Blurs only need to blend
between one standard deviation parameter.

  • platform/graphics/filters/FilterOperation.h: Remove sharpen and

gamma, add brightness and contrast.
(WebCore::BlurFilterOperation::create):
(WebCore::BlurFilterOperation::stdDeviation):
(WebCore::BlurFilterOperation::operator==):
(WebCore::BlurFilterOperation::BlurFilterOperation): Blur only takes
one standard deviation / radius parameter.

  • platform/graphics/filters/FilterOperations.cpp:

(WebCore::outsetSizeForBlur):
(WebCore::FilterOperations::getOutsets): No need for borderBox now.

  • platform/graphics/filters/FilterOperations.h:
  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::build): Build new effect types.

  • rendering/FilterEffectRenderer.h:
  • rendering/RenderBox.cpp:

(WebCore::RenderBox::addVisualEffectOverflow): No need to pass
borderBox size when calculating overflow on filter.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateOrRemoveFilterEffect):

  • rendering/style/RenderStyle.h:

(WebCore::InheritedFlags::getFilterOutsets): Ditto.

LayoutTests:

Test changes for small updates to filters where
we were not compliant with the specification.

  • blur() only takes one value, not two
  • blur() does not accept percentages.
  • gamma() and sharpen() removed
  • brightness() and contrast() added

Added bonus: New tests for percentage values in appropriate functions!

  • css3/filters/crash-filter-change.html:
  • css3/filters/effect-blur.html:
  • css3/filters/effect-brightness-expected.png: Added.
  • css3/filters/effect-brightness-expected.txt: Copied from LayoutTests/css3/filters/effect-gamma-expected.txt.
  • css3/filters/effect-brightness.html: Added.
  • css3/filters/effect-combined-expected.png:
  • css3/filters/effect-combined-expected.txt:
  • css3/filters/effect-combined.html:
  • css3/filters/effect-contrast-expected.png: Added.
  • css3/filters/effect-contrast-expected.txt: Renamed from LayoutTests/css3/filters/effect-gamma-expected.txt.
  • css3/filters/effect-contrast.html: Added.
  • css3/filters/effect-gamma-expected.png: Removed.
  • css3/filters/effect-gamma.html: Removed.
  • css3/filters/filter-animation-expected.txt: Added.
  • css3/filters/filter-animation.html:
  • css3/filters/filter-property-computed-style-expected.txt:
  • css3/filters/filter-property-parsing-expected.txt:
  • css3/filters/filter-property-parsing-invalid-expected.txt:
  • css3/filters/script-tests/filter-property-computed-style.js:
  • css3/filters/script-tests/filter-property-parsing-invalid.js:
  • css3/filters/script-tests/filter-property-parsing.js:
4:01 PM Changeset in webkit [103124] by jamesr@google.com
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] Remove WebCString's dependency on WebCore
https://bugs.webkit.org/show_bug.cgi?id=74761

Reviewed by Darin Fisher.

Remove WebCString::fromUTF16(), which are never called, and implement WebCString::utf16() using WTF instead of
WebCore/platform/text/TextEncoding.

  • public/platform/WebCString.h:
  • src/WebCString.cpp:

(WebKit::WebCString::utf16):

3:59 PM Changeset in webkit [103123] by enne@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Mark CG failures for editing tests from r103073
https://bugs.webkit.org/show_bug.cgi?id=74726

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
3:45 PM Changeset in webkit [103122] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed debug build fix after r103115.

  • dom/Document.cpp:

(WebCore::Document::cachedCollection):

3:43 PM Changeset in webkit [103121] by mhahnenberg@apple.com
  • 6 edits in trunk/Source

Windows test fix

Source/WebCore:

No new tests.

Unreviewed test fix. All Windows tests were crashing when objects who were pointing to
static data members across DLL boundaries were getting garbage in their pointers.

  • WebCore.exp.in:
  • bindings/js/JSDOMWrapper.cpp:
  • bindings/js/JSDOMWrapper.h:

Source/WebKit2:

Unreviewed test fix. All Windows tests were crashing when objects who were pointing to
static data members across DLL boundaries were getting garbage in their pointers.

  • win/WebKit2.def:
3:36 PM Changeset in webkit [103120] by oliver@apple.com
  • 9 edits in trunk/Source/JavaScriptCore

PutByVal[Alias] unnecessarily reloads the storage buffer
https://bugs.webkit.org/show_bug.cgi?id=74747

Reviewed by Gavin Barraclough.

Make PutByVal use GetIndexedStorage to load the storage buffer.
This required switching PutByVal to a vararg node (which is
responsible for most of the noise in this patch). This fixes the
remaining portion of the kraken regression caused by the GetByVal
storage load elimination, and a 1-5% win on some of the sub tests of
the typed array benchmark at:
http://stepheneb.github.com/webgl-matrix-benchmarks/matrix_benchmark.html

  • 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::byValIndexIsPure):
(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):

3:34 PM Changeset in webkit [103119] by rniwa@webkit.org
  • 31 edits in trunk/Source

Rename registerCommandFor(Undo|Redo) to register(Undo|Redo)Step
https://bugs.webkit.org/show_bug.cgi?id=74748

Reviewed by Eric Seidel.

Source/WebCore:

Renamed registerCommandForUndo and registerCommandForRedo to
registerUndoStep and registerRedoStep respectively.

  • editing/Editor.cpp:

(WebCore::Editor::appliedEditing):
(WebCore::Editor::unappliedEditing):
(WebCore::Editor::reappliedEditing):

  • loader/EmptyClients.h:

(WebCore::EmptyEditorClient::registerUndoStep):
(WebCore::EmptyEditorClient::registerRedoStep):

  • page/EditorClient.h:

Source/WebKit/chromium:

  • src/EditorClientImpl.cpp:

(WebKit::EditorClientImpl::registerUndoStep):
(WebKit::EditorClientImpl::registerRedoStep):

  • src/EditorClientImpl.h:

Source/WebKit/efl:

  • WebCoreSupport/EditorClientEfl.cpp:

(WebCore::EditorClientEfl::registerUndoStep):
(WebCore::EditorClientEfl::registerRedoStep):

  • WebCoreSupport/EditorClientEfl.h:

Source/WebKit/gtk:

  • WebCoreSupport/EditorClientGtk.cpp:

(WebKit::EditorClient::registerUndoStep):
(WebKit::EditorClient::registerRedoStep):

  • WebCoreSupport/EditorClientGtk.h:

Source/WebKit/mac:

  • WebCoreSupport/WebEditorClient.h:
  • WebCoreSupport/WebEditorClient.mm:

(WebEditorClient::registerUndoOrRedoStep):
(WebEditorClient::registerUndoStep):
(WebEditorClient::registerRedoStep):

Source/WebKit/qt:

  • WebCoreSupport/EditorClientQt.cpp:

(WebCore::EditorClientQt::registerUndoStep):
(WebCore::EditorClientQt::registerRedoStep):

  • WebCoreSupport/EditorClientQt.h:

Source/WebKit/win:

  • WebCoreSupport/WebEditorClient.cpp:

(WebEditorClient::registerUndoStep):
(WebEditorClient::registerRedoStep):

  • WebCoreSupport/WebEditorClient.h:

Source/WebKit/wince:

  • WebCoreSupport/EditorClientWinCE.cpp:

(WebKit::EditorClientWinCE::registerUndoStep):
(WebKit::EditorClientWinCE::registerRedoStep):

  • WebCoreSupport/EditorClientWinCE.h:

Source/WebKit/wx:

  • WebKitSupport/EditorClientWx.cpp:

(WebCore::EditorClientWx::registerUndoStep):
(WebCore::EditorClientWx::registerRedoStep):

  • WebKitSupport/EditorClientWx.h:

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::registerUndoStep):
(WebKit::WebEditorClient::registerRedoStep):

  • WebProcess/WebCoreSupport/WebEditorClient.h:
3:29 PM Changeset in webkit [103118] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebCore

Canvas should respect backing store scale ratio when used as drawImage() source
https://bugs.webkit.org/show_bug.cgi?id=74758
<rdar://problem/10350194>

Reviewed by Simon Fraser.

Interpret the source rectangle passed into drawImage() when using a Canvas source in the source Canvas coordinate space,
instead of in the backing store coordinate space, without changing the behavior of drawImage(canvas, x, y).

No new tests.

  • html/HTMLCanvasElement.cpp:

(WebCore::HTMLCanvasElement::convertDeviceToLogical):

  • html/HTMLCanvasElement.h:
  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::drawImage):

3:26 PM Changeset in webkit [103117] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Subpixel antialiasing not working in tiled mode
https://bugs.webkit.org/show_bug.cgi?id=74759

Reviewed by Simon Fraser.

Call setContentsOpaque(true) on the main frame render view layer so subpixel aa will be used
when drawing text into that layer.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):

3:15 PM Changeset in webkit [103116] by rniwa@webkit.org
  • 20 edits
    2 adds in trunk

invalidateNodeListsCacheAfterAttributeChanged has too many callers
https://bugs.webkit.org/show_bug.cgi?id=74692

Reviewed by Sam Weinig.

Source/WebCore:

Call invalidateNodeListsCacheAfterAttributeChanged in Element::updateAfterAttributeChanged instead of
parsedMappedAttribute of various elements. Also make invalidateNodeListsCacheAfterAttributeChanged take
the qualified name of the changed attribute so that we can exit early when the changed attribute isn't
one of attributes we care.

In addition, added a missing call to invalidateNodeListsCacheAfterAttributeChanged in Attr::setValue.

Test: fast/dom/Attr/invalidate-nodelist-after-attr-setvalue.html

  • dom/Attr.cpp:

(WebCore::Attr::childrenChanged):

  • dom/Element.cpp:

(WebCore::Element::updateAfterAttributeChanged):

  • dom/NamedNodeMap.cpp:

(WebCore::NamedNodeMap::addAttribute):
(WebCore::NamedNodeMap::removeAttribute):

  • dom/Node.cpp:

(WebCore::Node::invalidateNodeListsCacheAfterAttributeChanged):

  • dom/Node.h:
  • dom/StyledElement.cpp:

(WebCore::StyledElement::classAttributeChanged):

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::parseMappedAttribute):

  • html/HTMLAppletElement.cpp:

(WebCore::HTMLAppletElement::parseMappedAttribute):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::parseMappedAttribute):

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::parseMappedAttribute):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::parseMappedAttribute):

  • html/HTMLFrameElementBase.cpp:

(WebCore::HTMLFrameElementBase::parseMappedAttribute):

  • html/HTMLIFrameElement.cpp:

(WebCore::HTMLIFrameElement::parseMappedAttribute):

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::parseMappedAttribute):

  • html/HTMLMapElement.cpp:

(WebCore::HTMLMapElement::parseMappedAttribute):

  • html/HTMLMetaElement.cpp:

(WebCore::HTMLMetaElement::parseMappedAttribute):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::parseMappedAttribute):

  • html/HTMLParamElement.cpp:

(WebCore::HTMLParamElement::parseMappedAttribute):

LayoutTests:

Add a regression test for setting Attr's value. WebKit should invalidate the cache as needed.

  • fast/dom/Attr/invalidate-nodelist-after-attr-setvalue-expected.txt: Added.
  • fast/dom/Attr/invalidate-nodelist-after-attr-setvalue.html: Added.
3:11 PM Changeset in webkit [103115] by kling@webkit.org
  • 8 edits
    2 adds in trunk

Cache and reuse HTMLCollections exposed by Document.
<http://webkit.org/b/71956>

Reviewed by Antti Koivisto.

Source/WebCore:

Let Document cache the various HTMLCollection objects it exposes.
This is a behavior change in two ways:

1) The lifetime of returned collections is now tied to the lifetime

of the Document. This matches the behavior of Firefox and Opera.

2) The cached collections returned by document are now exactly equal

to those returned by subsequent calls to the same getters.

This reduces memory consumption by ~800 kB (on 64-bit) when loading
the full HTML5 spec. document.links was called 34001 times, yielding
34001 separate HTMLCollections, and now we only need 1.

The document.all collection retains the old behavior, as caching it
will be a bit more complicated.

To avoid a reference cycle between Document and HTMLCollection,
collections that are cached on Document do not retained their base
node pointer (controlled by a m_baseIsRetained flag.)

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

fast/dom/gc-9.html

  • dom/Document.cpp:

(WebCore::Document::detach):
(WebCore::Document::cachedCollection):
(WebCore::Document::images):
(WebCore::Document::applets):
(WebCore::Document::embeds):
(WebCore::Document::plugins):
(WebCore::Document::objects):
(WebCore::Document::scripts):
(WebCore::Document::links):
(WebCore::Document::forms):
(WebCore::Document::anchors):

  • dom/Document.h:
  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::HTMLCollection):
(WebCore::HTMLCollection::createForCachingOnDocument):
(WebCore::HTMLCollection::~HTMLCollection):
(WebCore::HTMLCollection::itemAfter):

  • html/HTMLCollection.h:

(WebCore::HTMLCollection::base):

LayoutTests:

Added a test to verify that collections returned by document (excluding .all)
are equal to the collections returned by subsequent calls to the same getters.

Also update fast/dom/gc-9.html to cover the new lifetime behavior of
HTMLCollection objects returned by document.

  • fast/dom/document-collection-idempotence-expected.txt: Added.
  • fast/dom/document-collection-idempotence.html: Added.
  • fast/dom/gc-9-expected.txt:
  • fast/dom/gc-9.html:
3:05 PM Changeset in webkit [103114] by andersca@apple.com
  • 8 edits
    4 adds in trunk/Source

Add a pretty dumb tile cache to WebTileCacheLayer
https://bugs.webkit.org/show_bug.cgi?id=74753

Reviewed by Simon Fraser.

Source/WebCore:

  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::requiresTiledLayer):
If a layer is a tile cache layer, we never want to swap it out for a tiled layer.

(WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
Assert that we don't have a tile cache layer.

  • platform/graphics/ca/mac/PlatformCALayerMac.mm:

(PlatformCALayer::PlatformCALayer):
If we have a tile cache layer, add its tile container to the list of custom sublayers.

  • platform/graphics/ca/mac/TileCache.h: Added.

(WebCore::TileCache::tileContainerLayer):
Return the tile container layer.

  • platform/graphics/ca/mac/TileCache.mm: Added.

(WebCore::TileCache::tileCacheLayerBoundsChanged):
Resize the tile grid if necessary.

(WebCore::TileCache::setNeedsDisplayInRect):
Invalidate the necessary tiles.

(WebCore::TileCache::drawLayer):
Set up the transform and draw the layer.

(WebCore::TileCache::getTileRangeForRect):
Given a rect, return the range of tiles that it covers.

(WebCore::TileCache::numTilesForGridSize):
Given a size, return how many tiles are needed to completely cover it.

(WebCore::TileCache::resizeTileGrid):
Create new tile layers if needed, or reuse already existing ones.

(WebCore::TileCache::tileLayerAtPosition):
Given a position in the grid, return the tile layer.

(WebCore::TileCache::createTileLayer):
Create a WebTileLayer and set it up.

  • platform/graphics/ca/mac/WebTileCacheLayer.h:
  • platform/graphics/ca/mac/WebTileCacheLayer.mm:

(-[WebTileCacheLayer setBounds:]):
(-[WebTileCacheLayer setNeedsDisplayInRect:]):
(-[WebTileCacheLayer tileContainerLayer]):
Call down to the tile cache object.

  • platform/graphics/ca/mac/WebTileLayer.h: Added.
  • platform/graphics/ca/mac/WebTileLayer.mm: Added.

(-[WebTileLayer drawInContext:]):
Ask the tile cache to draw the given layer.

(-[WebTileLayer setTileCache:WebCore::]):

Source/WebKit2:

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::flushLayers):
Always do a layout here, to prevent an ASSERT(!needsLayout()) when painting.

2:54 PM Changeset in webkit [103113] by enne@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Mark more worker regressions from r103095
https://bugs.webkit.org/show_bug.cgi?id=74746

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
2:46 PM Changeset in webkit [103112] by weinig@apple.com
  • 89 edits
    2 adds in trunk/Source

Give PlatformEvents a base class
https://bugs.webkit.org/show_bug.cgi?id=74685

Reviewed by Anders Carlsson.

Add a base class for PlatformMouseEvent, PlatformKeyboardEvent, PlatformWheelEvent
and PlatformGestureEvent and move Type enumeration and modifiers down to it.

../WebCore:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:

Add new files.

  • platform/PlatformEvent.cpp: Added.
  • platform/PlatformEvent.h: Added.

(WebCore::PlatformEvent::type):
(WebCore::PlatformEvent::shiftKey):
(WebCore::PlatformEvent::ctrlKey):
(WebCore::PlatformEvent::altKey):
(WebCore::PlatformEvent::metaKey):
(WebCore::PlatformEvent::modifiers):
(WebCore::PlatformEvent::PlatformEvent):
Add new class.

  • accessibility/mac/WebAccessibilityObjectWrapper.mm:

(-[WebAccessibilityObjectWrapper accessibilityShowContextMenu]):

  • dom/KeyboardEvent.cpp:

(WebCore::eventTypeForKeyboardEventType):

  • dom/MouseEvent.cpp:

(WebCore::MouseEvent::create):

  • page/DragController.cpp:

(WebCore::createMouseEvent):

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleGestureEvent):
(WebCore::EventHandler::sendContextMenuEventForKey):
(WebCore::EventHandler::fakeMouseMoveEventTimerFired):
(WebCore::EventHandler::handleAccessKey):
(WebCore::EventHandler::keyEvent):
(WebCore::EventHandler::handleDrag):

  • page/blackberry/EventHandlerBlackBerry.cpp:

(WebCore::EventHandler::accessKeyModifiers):

  • page/chromium/EventHandlerChromium.cpp:

(WebCore::EventHandler::accessKeyModifiers):

  • page/efl/EventHandlerEfl.cpp:

(WebCore::EventHandler::accessKeyModifiers):

  • page/gtk/EventHandlerGtk.cpp:

(WebCore::EventHandler::accessKeyModifiers):

  • page/mac/EventHandlerMac.mm:

(WebCore::EventHandler::accessKeyModifiers):

  • page/qt/EventHandlerQt.cpp:

(WebCore::EventHandler::accessKeyModifiers):

  • page/win/EventHandlerWin.cpp:

(WebCore::EventHandler::accessKeyModifiers):

  • page/wx/EventHandlerWx.cpp:

(WebCore::EventHandler::accessKeyModifiers):

  • platform/PlatformGestureEvent.h:

(WebCore::PlatformGestureEvent::PlatformGestureEvent):

  • platform/PlatformKeyboardEvent.h:

(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
(WebCore::PlatformKeyboardEvent::isKeypad):

  • platform/PlatformMouseEvent.h:

(WebCore::PlatformMouseEvent::PlatformMouseEvent):
(WebCore::PlatformMouseEvent::button):

  • platform/PlatformWheelEvent.h:

(WebCore::PlatformWheelEvent::PlatformWheelEvent):

  • platform/ScrollAnimatorNone.cpp:

(WebCore::ScrollAnimatorNone::zoom):
(WebCore::ScrollAnimatorNone::handleGestureEvent):

  • platform/blackberry/PlatformKeyboardEventBlackBerry.cpp:

(WebCore::toWebCorePlatformKeyboardEventType):
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
(WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):

  • platform/chromium/GestureRecognizerChromium.cpp:

(WebCore::GestureRecognizerChromium::appendTapDownGestureEvent):
(WebCore::GestureRecognizerChromium::appendClickGestureEvent):
(WebCore::GestureRecognizerChromium::appendDoubleClickGestureEvent):
(WebCore::GestureRecognizerChromium::appendScrollGestureBegin):
(WebCore::GestureRecognizerChromium::appendScrollGestureEnd):
(WebCore::GestureRecognizerChromium::appendScrollGestureUpdate):

  • platform/chromium/PlatformKeyboardEventChromium.cpp:

(WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):

  • platform/chromium/PopupContainer.cpp:

(WebCore::PopupContainer::handleGestureEvent):

  • platform/chromium/PopupListBox.cpp:

(WebCore::isCharacterTypeEvent):
(WebCore::PopupListBox::handleKeyEvent):

  • platform/chromium/ScrollAnimatorChromiumMac.mm:

(WebCore::ScrollAnimatorChromiumMac::handleGestureEvent):

  • platform/efl/PlatformKeyboardEventEfl.cpp:

(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
(WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):

  • platform/efl/PlatformMouseEventEfl.cpp:

(WebCore::PlatformMouseEvent::PlatformMouseEvent):

  • platform/efl/PlatformWheelEventEfl.cpp:

(WebCore::PlatformWheelEvent::PlatformWheelEvent):

  • platform/gtk/PlatformKeyboardEventGtk.cpp:

(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
(WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):

  • platform/gtk/PlatformMouseEventGtk.cpp:

(WebCore::PlatformMouseEvent::PlatformMouseEvent):

  • platform/gtk/PlatformWheelEventGtk.cpp:

(WebCore::PlatformWheelEvent::PlatformWheelEvent):

  • platform/ios/KeyEventIOS.mm:

(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
(WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):

  • platform/mac/KeyEventMac.mm:

(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):

  • platform/mac/PlatformMouseEventMac.mm:

(WebCore::mouseEventForNSEvent):
(WebCore::PlatformMouseEvent::PlatformMouseEvent):

  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::ScrollAnimatorMac::handleGestureEvent):

  • platform/mac/WheelEventMac.mm:

(WebCore::PlatformWheelEvent::PlatformWheelEvent):

  • platform/qt/PlatformKeyboardEventQt.cpp:

(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
(WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):

  • platform/qt/PlatformMouseEventQt.cpp:

(WebCore::mouseEventTypeAndMouseButtonFromQEvent):
(WebCore::PlatformMouseEvent::PlatformMouseEvent):

  • platform/qt/WheelEventQt.cpp:

(WebCore::PlatformWheelEvent::PlatformWheelEvent):

  • platform/win/KeyEventWin.cpp:

(WebCore::isKeypadEvent):
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):

  • platform/win/PlatformMouseEventWin.cpp:

(WebCore::messageToEventType):
(WebCore::PlatformMouseEvent::PlatformMouseEvent):

  • platform/win/WheelEventWin.cpp:

(WebCore::PlatformWheelEvent::PlatformWheelEvent):

  • platform/wx/KeyboardEventWx.cpp:

(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
(WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):

  • platform/wx/MouseEventWx.cpp:

(WebCore::typeFromMouseEvent):
(WebCore::PlatformMouseEvent::PlatformMouseEvent):

  • platform/wx/MouseWheelEventWx.cpp:

(WebCore::PlatformWheelEvent::PlatformWheelEvent):

  • plugins/mac/PluginViewMac.mm:

(WebCore::PluginView::handleKeyboardEvent):

  • testing/Internals.cpp:

(WebCore::Internals::setZoomAnimatorTransform):
Switch to using new names/class modifier as necessary.

../WebKit/chromium:

  • src/EditorClientImpl.cpp:

(WebKit::EditorClientImpl::interpretKeyEvent):
(WebKit::EditorClientImpl::handleEditingKeyboardEvent):

  • src/WebAccessibilityObject.cpp:

(WebKit::WebAccessibilityObject::keyboardShortcut):

  • src/WebInputEventConversion.cpp:

(WebKit::PlatformMouseEventBuilder::PlatformMouseEventBuilder):
(WebKit::PlatformWheelEventBuilder::PlatformWheelEventBuilder):
(WebKit::PlatformGestureEventBuilder::PlatformGestureEventBuilder):
(WebKit::toPlatformKeyboardEventType):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::dragSourceEndedAt):

  • tests/InnerGestureRecognizerTest.cpp:

(SimulateAndTestFirstClick):
(TEST_F):

  • tests/KeyboardTest.cpp:

(WebKit::KeyboardTest::interpretKeyEvent):
(WebKit::KeyboardTest::interpretOSModifierKeyPress):
(WebKit::KeyboardTest::interpretCtrlKeyPress):
(WebKit::KeyboardTest::interpretTab):
(WebKit::KeyboardTest::interpretNewLine):
(WebKit::TEST_F):

  • tests/PopupMenuTest.cpp:

(WebKit::SelectPopupMenuTest::simulateLeftMouseDownEvent):
(WebKit::SelectPopupMenuTest::simulateLeftMouseUpEvent):
(WebKit::TEST_F):

../WebKit/efl:

  • WebCoreSupport/EditorClientEfl.cpp:

(WebCore::EditorClientEfl::handleEditingKeyboardEvent):

../WebKit/gtk:

  • WebCoreSupport/EditorClientGtk.cpp:

(WebKit::EditorClient::handleKeyboardEvent):

  • webkit/webkitwebview.cpp:

(webkit_web_view_popup_menu_handler):

../WebKit/mac:

  • WebView/WebFrame.mm:

(-[WebFrame _dragSourceEndedAt:operation:]):

  • WebView/WebHTMLView.mm:

(currentKeyboardEvent):
(-[WebHTMLView _interpretKeyEvent:savingCommands:]):

  • WebView/WebPDFView.mm:

(-[WebPDFView PDFViewWillClickOnLink:withURL:]):

../WebKit/qt:

  • WebCoreSupport/DragClientQt.cpp:

(WebCore::DragClientQt::startDrag):

  • WebCoreSupport/EditorClientQt.cpp:

(WebCore::EditorClientQt::handleKeyboardEvent):

../WebKit/win:

  • AccessibleBase.cpp:

(AccessibleBase::get_accKeyboardShortcut):

  • WebDropSource.cpp:

(generateMouseEvent):

  • WebView.cpp:

(WebView::keyUp):
(WebView::handleEditingKeyboardEvent):
(WebView::keyDown):
(WebView::keyPress):

../WebKit/wince:

  • WebCoreSupport/EditorClientWinCE.cpp:

(WebKit::EditorClientWinCE::handleEditingKeyboardEvent):

  • WebView.cpp:

(WebView::handleKeyDown):
(WebView::handleKeyPress):
(WebView::handleKeyUp):

../WebKit/wx:

  • WebKitSupport/EditorClientWx.cpp:

(WebCore::EditorClientWx::handleEditingKeyboardEvent):
(WebCore::EditorClientWx::interpretKeyEvent):

../WebKit2:

  • Shared/WebEventConversion.cpp:

(WebKit::WebKit2PlatformMouseEvent::WebKit2PlatformMouseEvent):
(WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent):
(WebKit::WebKit2PlatformKeyboardEvent::WebKit2PlatformKeyboardEvent):
(WebKit::WebKit2PlatformGestureEvent::WebKit2PlatformGestureEvent):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:

(WebKit::WebEditorClient::handleKeyboardEvent):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::handleMouseEvent):
(WebKit::WebPage::setInitialFocus):
(WebKit::WebPage::handleEditingKeyboardEvent):
(WebKit::WebPage::dragEnded):

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::executeKeypressCommandsInternal):
(WebKit::WebPage::handleEditingKeyboardEvent):

2:38 PM Changeset in webkit [103111] by enne@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Mark many SVG tests on Mac failing after r103091
https://bugs.webkit.org/show_bug.cgi?id=53378

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
2:30 PM Changeset in webkit [103110] by Simon Fraser
  • 2 edits in trunk/Source/WebKit/mac

Fix a #elsif fumble in my earlier commit.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView attachRootLayer:]):

2:29 PM Changeset in webkit [103109] by abarth@webkit.org
  • 5 edits in trunk

<!doctype html><div><body><frameset> doesn't parse correctly
https://bugs.webkit.org/show_bug.cgi?id=74745

Reviewed by Eric Seidel.

Source/WebCore:

We were missing one place the spec tells us to set this bool.

Tests: html5lib/runner.html

  • html/parser/HTMLTreeBuilder.cpp:

LayoutTests:

Show test progression.

  • html5lib/runner-expected.txt:
2:28 PM Changeset in webkit [103108] by dbates@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Include BlackBerryPlatformLog.h instead of BlackBerryPlatformMisc.h

Rubber-stamped by Antonio Gomes.

BlackBerry::Platform::logV() is declared in BlackBerryPlatformLog.h. That is, it isn't
declared in BlackBerryPlatformMisc.h. Hence, we should include BlackBerryPlatformLog.h
instead of BlackBerryPlatformMisc.h.

  • wtf/Assertions.cpp:
2:24 PM Changeset in webkit [103107] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, updating chromium expectations.

  • platform/chromium/test_expectations.txt: fast/replaced/embed-display-none.html has been

passing and fast/replaced/width100percent-textarea.html is flaky.

2:16 PM Changeset in webkit [103106] by jarred@sencha.com
  • 5 edits
    13 adds in trunk

Support HTML documents in XHR.responseXML
https://bugs.webkit.org/show_bug.cgi?id=74626

Latest W3C XHR spec details for the responseXML attribute:
http://dvcs.w3.org/hg/xhr/raw-file/tip/Overview.html#the-responsexml-attribute
http://dvcs.w3.org/hg/xhr/raw-file/tip/Overview.html#document-response-entity-body

XHR.responseXML was not compliant per the latest editor's draft of the XHR spec.
The following compliance issue have been corrected:

  • A responseType of "text" should disallow access to responseXML by throwing an InvalidState exception.
  • When the error flag is toggled, responseXML should return "null" immediately and not attempt to create a new Document.
  • responseXML should return a valid HTML document when the MIME type is "text/html", but only when the caller has explicitly set responseType to "document".

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Tests: fast/xmlhttprequest/xmlhttprequest-responseXML-html-document-responsetype-quirks.html

fast/xmlhttprequest/xmlhttprequest-responseXML-html-document-responsetype-strict.html
fast/xmlhttprequest/xmlhttprequest-responseXML-html-no-responsetype.html
fast/xmlhttprequest/xmlhttprequest-responseXML-invalid-xml.html
fast/xmlhttprequest/xmlhttprequest-responseXML-xml-document-responsetype.html
fast/xmlhttprequest/xmlhttprequest-responseXML-xml-text-responsetype.html

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::responseXML):
(WebCore::XMLHttpRequest::clearResponseBuffers):

  • xml/XMLHttpRequest.h: Rename m_responseXML to m_responseDocument

(WebCore::XMLHttpRequest::optionalResponseXML):

LayoutTests:

  • fast/frames/iframe-reparenting.html:
  • fast/xmlhttprequest/resources/xmlhttprequest-get-invalid-data.xml: Added.
  • fast/xmlhttprequest/xmlhttprequest-responseXML-html-document-responsetype-quirks-expected.txt: Added.
  • fast/xmlhttprequest/xmlhttprequest-responseXML-html-document-responsetype-quirks.html: Added.
  • fast/xmlhttprequest/xmlhttprequest-responseXML-html-document-responsetype-strict-expected.txt: Added.
  • fast/xmlhttprequest/xmlhttprequest-responseXML-html-document-responsetype-strict.html: Added.
  • fast/xmlhttprequest/xmlhttprequest-responseXML-html-no-responsetype-expected.txt: Added.
  • fast/xmlhttprequest/xmlhttprequest-responseXML-html-no-responsetype.html: Added.
  • fast/xmlhttprequest/xmlhttprequest-responseXML-invalid-xml-expected.txt: Added.
  • fast/xmlhttprequest/xmlhttprequest-responseXML-invalid-xml.html: Added.
  • fast/xmlhttprequest/xmlhttprequest-responseXML-xml-document-responsetype-expected.txt: Added.
  • fast/xmlhttprequest/xmlhttprequest-responseXML-xml-document-responsetype.html: Added.
  • fast/xmlhttprequest/xmlhttprequest-responseXML-xml-text-responsetype-expected.txt: Added.
  • fast/xmlhttprequest/xmlhttprequest-responseXML-xml-text-responsetype.html: Added.
2:09 PM Changeset in webkit [103105] by enne@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Mark file-from-file-entry-sync as crash after r103095
https://bugs.webkit.org/show_bug.cgi?id=74746

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
2:04 PM Changeset in webkit [103104] by rniwa@webkit.org
  • 46 edits
    2 moves
    1 add in trunk/Source

Only EditCommandComposition should implement unapply and reapply
https://bugs.webkit.org/show_bug.cgi?id=74490

Reviewed by Eric Seidel.

Source/WebCore:

Introduce new abstract class UndoStep to replace EditCommand for EditorClient, and make EditCommand
private to WebCore.

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • editing/CompositeEditCommand.cpp:

(WebCore::EditCommandComposition::create): Takes EditAction instead of boolean for CreateLinkCommand.
(WebCore::EditCommandComposition::EditCommandComposition): Ditto.
(WebCore::EditCommandComposition::unapply): Moved from EditCommand; we don't have to call isTopLevelCommand
anymore because EditCommandComposition is always top-level. In fact, the only thing unapply/reapply do
in addition to what doUnapply/doReapply do for sub-level commands is disabling and enabling delete button
and defining an event queue scope. However, these can be done at top-level command anyway, so we now only call
doApply for sub-level commands.
(WebCore::EditCommandComposition::reapply): Ditto.
(WebCore::EditCommandComposition::setStartingSelection): Added.
(WebCore::EditCommandComposition::setEndingSelection): Added.
(WebCore::applyCommand): Moved from EditCommand.
(WebCore::CompositeEditCommand::apply): Moved from EditCommand; doesn't call isTopLevelCommand for the same reason.
(WebCore::CompositeEditCommand::ensureComposition):
(WebCore::CompositeEditCommand::applyCommandToComposite): Call doApply instead of apply for the same reason.

  • editing/CompositeEditCommand.h:

(WebCore::EditCommandComposition::wasCreateLinkCommand):
(WebCore::EditCommandComposition::startingSelection): Added.
(WebCore::EditCommandComposition::endingSelection): Added.

  • editing/EditCommand.cpp:

(WebCore::EditCommand::setStartingSelection):
(WebCore::EditCommand::setEndingSelection):
(WebCore::SimpleEditCommand::doReapply): Moved from EditCommand.

  • editing/EditCommand.h:
  • editing/UndoStep.h: Added.

(WebCore::UndoStep::~UndoStep):

  • loader/EmptyClients.h:

(WebCore::EmptyEditorClient::shouldInsertNode):
(WebCore::EmptyEditorClient::didSetSelectionTypesForPasteboard):
(WebCore::EmptyEditorClient::registerCommandForUndo): Takes UndoStep instead of EditCommand.
(WebCore::EmptyEditorClient::registerCommandForRedo): Ditto.

  • page/EditorClient.h:

Source/WebKit/chromium:

  • src/EditorClientImpl.cpp:

(WebKit::EditorClientImpl::registerCommandForUndo):
(WebKit::EditorClientImpl::registerCommandForRedo):
(WebKit::EditorClientImpl::undo):
(WebKit::EditorClientImpl::redo):

  • src/EditorClientImpl.h:

Source/WebKit/efl:

  • WebCoreSupport/EditorClientEfl.cpp:

(WebCore::EditorClientEfl::registerCommandForUndo):
(WebCore::EditorClientEfl::registerCommandForRedo):
(WebCore::EditorClientEfl::undo):
(WebCore::EditorClientEfl::redo):

  • WebCoreSupport/EditorClientEfl.h:

Source/WebKit/gtk:

  • WebCoreSupport/EditorClientGtk.cpp:

(WebKit::EditorClient::registerCommandForUndo):
(WebKit::EditorClient::registerCommandForRedo):
(WebKit::EditorClient::undo):
(WebKit::EditorClient::redo):

  • WebCoreSupport/EditorClientGtk.h:

Source/WebKit/mac:

  • WebCoreSupport/WebEditorClient.h:
  • WebCoreSupport/WebEditorClient.mm:

(-[WebUndoStep initWithUndoStep:]):
(-[WebUndoStep dealloc]):
(+[WebUndoStep stepWithUndoStep:]):
(-[WebUndoStep step]):
(-[WebEditorUndoTarget undoEditing:]):
(-[WebEditorUndoTarget redoEditing:]):
(WebEditorClient::registerCommandForUndoOrRedo):
(WebEditorClient::registerCommandForUndo):
(WebEditorClient::registerCommandForRedo):

Source/WebKit/qt:

EditCommandQt is to be renamed to UndoStepQt in a follow up patch.

  • WebCoreSupport/EditCommandQt.cpp:

(EditCommandQt::EditCommandQt):

  • WebCoreSupport/EditCommandQt.h:
  • WebCoreSupport/EditorClientQt.cpp:

(WebCore::EditorClientQt::registerCommandForUndo):
(WebCore::EditorClientQt::registerCommandForRedo):

Source/WebKit/win:

  • WebCoreSupport/WebEditorClient.cpp:

(WebEditorUndoCommand::WebEditorUndoCommand):
(WebEditorUndoCommand::execute):
(WebEditorClient::registerCommandForUndo):
(WebEditorClient::registerCommandForRedo):

  • WebCoreSupport/WebEditorClient.h:

Source/WebKit/wince:

  • WebCoreSupport/EditorClientWinCE.cpp:

(WebKit::EditorClientWinCE::registerCommandForUndo):
(WebKit::EditorClientWinCE::registerCommandForRedo):

  • WebCoreSupport/EditorClientWinCE.h:

Source/WebKit2:

Renamed WebEditCommand to WebUndoStep and made necessary changes.
Everything on WebProcess side should have the correct name now.

Names in the proxy and UIProcess are to be updated in a follow up.

  • CMakeLists.txt:
  • GNUmakefile.am:
  • Target.pri:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::registerCommandForUndo):
(WebKit::WebEditorClient::registerCommandForRedo):

  • WebProcess/WebCoreSupport/WebEditorClient.h:
  • WebProcess/WebPage/WebEditCommand.cpp: Removed.
  • WebProcess/WebPage/WebEditCommand.h: Removed.
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::webUndoStep):
(WebKit::WebPage::addWebUndoStep):
(WebKit::WebPage::removeWebEditCommand):
(WebKit::WebPage::unapplyEditCommand):
(WebKit::WebPage::reapplyEditCommand):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebUndoStep.cpp: Copied from Source/WebKit2/WebProcess/WebPage/WebEditCommand.cpp.

(WebKit::generateUndoStep):
(WebKit::WebUndoStep::create):

  • WebProcess/WebPage/WebUndoStep.h: Copied from Source/WebKit2/WebProcess/WebPage/WebEditCommand.h.

(WebKit::WebUndoStep::entry):
(WebKit::WebUndoStep::entryID):
(WebKit::WebUndoStep::WebUndoStep):

  • win/WebKit2.vcproj:
1:49 PM Changeset in webkit [103103] by Simon Fraser
  • 4 edits in trunk/Source/WebCore

Allow a PlatformCALayer to own its own sublayers
https://bugs.webkit.org/show_bug.cgi?id=74744

Reviewed by Anders Carlsson.

GraphicsLayerCA rebuilds the sublayer list of CALayers, which would
blow away any custom layers that a PlatformCALayer wants to maintain
as children.

Make it possible for a PlatformLayerCA to indicate that it wants
a specific list of sublayers to be maintained as the first layers
in the child list.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::updateSublayerList):

  • platform/graphics/ca/PlatformCALayer.h:

(WebCore::PlatformCALayer::customSublayers):

  • platform/graphics/ca/mac/PlatformCALayerMac.mm:

(PlatformCALayer::PlatformCALayer):

1:44 PM Changeset in webkit [103102] by abarth@webkit.org
  • 11 edits in trunk

<!DOCTYPE html><pre>&#x0a;&#x0a;A</pre> doesn't parse correctly
https://bugs.webkit.org/show_bug.cgi?id=74658

Reviewed by Darin Adler.

Source/WebCore:

Previously, we handled skipping newlines after <pre> in the tokenizer,
which isn't how the spec handles them. Instead, the spec skips them in
the tree builder. This isn't usually observable, except in the case of
an HTML entity. In that case, the tokenzier sees '&' (because the
entity hasn't been decoded yet), but the tree builder sees '\n' (the
decoded entity). This patch fixes the bug by more closely aligning our
implementation with the spec.

Test: html5lib/runner.html

  • html/parser/HTMLTokenizer.cpp:

(WebCore::HTMLTokenizer::reset):
(WebCore::HTMLTokenizer::nextToken):

  • html/parser/HTMLTokenizer.h:
  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipAtMostOneLeadingNewline):
(WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
(WebCore::HTMLTreeBuilder::processStartTagForInBody):
(WebCore::HTMLTreeBuilder::processCharacterBuffer):

  • html/parser/HTMLTreeBuilder.h:
  • xml/parser/MarkupTokenizerBase.h:

LayoutTests:

Shows test progression.

  • html5lib/runner-expected.txt:
1:33 PM Changeset in webkit [103101] by enne@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Further suppress media/video-transformed.html failures
https://bugs.webkit.org/show_bug.cgi?id=73905

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
1:27 PM Changeset in webkit [103100] by commit-queue@webkit.org
  • 29 edits
    4 adds in trunk

IndexedDB: Implement IDBObjectStore.count() and IDBIndex.count()
https://bugs.webkit.org/show_bug.cgi?id=73686

Patch by Joshua Bell <jsbell@chromium.org> on 2011-12-16
Reviewed by Tony Chang.

Source/WebCore:

These new methods open an internal cursor and iterate through the
results, returning the number of items found. Note that only
passing an IDBKeyRange is supported, not an IDBKey. Supporting
that will require some IDL/binding monkeying; several other
methods also need the same Key-or-KeyRange behavior.

Tests: storage/indexeddb/index-count.html

storage/indexeddb/objectstore-count.html

  • bindings/v8/SerializedScriptValue.cpp:

(WebCore::SerializedScriptValue::numberValue):

  • bindings/v8/SerializedScriptValue.h:
  • storage/IDBIndex.cpp:

(WebCore::IDBIndex::openCursor):
(WebCore::IDBIndex::count):

  • storage/IDBIndex.h:

(WebCore::IDBIndex::count):

  • storage/IDBIndex.idl:
  • storage/IDBIndexBackendImpl.cpp:

(WebCore::IDBIndexBackendImpl::countInternal):
(WebCore::IDBIndexBackendImpl::count):

  • storage/IDBIndexBackendImpl.h:
  • storage/IDBIndexBackendInterface.h:
  • storage/IDBObjectStore.cpp:

(WebCore::IDBObjectStore::count):

  • storage/IDBObjectStore.h:

(WebCore::IDBObjectStore::count):

  • storage/IDBObjectStore.idl:
  • storage/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::count):
(WebCore::IDBObjectStoreBackendImpl::countInternal):

  • storage/IDBObjectStoreBackendImpl.h:
  • storage/IDBObjectStoreBackendInterface.h:

Source/WebKit/chromium:

Plumbing to support the new methods in Chromium.

  • src/IDBIndexBackendProxy.cpp:

(WebKit::IDBIndexBackendProxy::count):

  • src/IDBIndexBackendProxy.h:
  • src/IDBObjectStoreBackendProxy.cpp:

(WebKit::IDBObjectStoreBackendProxy::count):

  • src/IDBObjectStoreBackendProxy.h:
  • src/WebIDBIndexImpl.cpp:

(WebKit::WebIDBIndexImpl::count):

  • src/WebIDBIndexImpl.h:
  • src/WebIDBObjectStoreImpl.cpp:

(WebKit::WebIDBObjectStoreImpl::count):

  • src/WebIDBObjectStoreImpl.h:

LayoutTests:

  • storage/indexeddb/index-basics-expected.txt:
  • storage/indexeddb/index-basics.html:
  • storage/indexeddb/index-count-expected.txt: Added.
  • storage/indexeddb/index-count.html: Added.
  • storage/indexeddb/objectstore-basics-expected.txt:
  • storage/indexeddb/objectstore-basics.html:
  • storage/indexeddb/objectstore-count-expected.txt: Added.
  • storage/indexeddb/objectstore-count.html: Added.
1:18 PM Changeset in webkit [103099] by enne@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Fix duplicate layout test expectation
https://bugs.webkit.org/show_bug.cgi?id=53378

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
1:03 PM Changeset in webkit [103098] by yael.aharon@nokia.com
  • 5 edits in trunk

Audio file in video element has a size of 0x0 .
https://bugs.webkit.org/show_bug.cgi?id=74738

Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

When the source of a video element has audio only, the intrinsic size of the video should
not be 0x0. Instead, it should be the same as as no media was loaded.

No new tests. An existing test is covering this case and was modified to reflect this change.

  • rendering/RenderVideo.cpp:

(WebCore::RenderVideo::calculateIntrinsicSize):

LayoutTests:

Changed the expected result to reflect this change.

  • media/audio-only-video-intrinsic-size-expected.txt:
  • media/audio-only-video-intrinsic-size.html:
12:55 PM Changeset in webkit [103097] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[Qt] Eliminate dependency to QUndoStack
https://bugs.webkit.org/show_bug.cgi?id=74691

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2011-12-16
Reviewed by Kenneth Rohde Christiansen.

Replaced the QUndoStack with two vectors. When calling unapply()
on the edit command proxy, it will automatically re-register itself
in the redo stack.

  • UIProcess/qt/QtWebUndoController.cpp:

(QtWebUndoController::registerEditCommand):
(QtWebUndoController::clearAllEditCommands):
(QtWebUndoController::canUndoRedo):
(QtWebUndoController::executeUndoRedo):

  • UIProcess/qt/QtWebUndoController.h:
12:50 PM Changeset in webkit [103096] by alexis.menard@openbossa.org
  • 3 edits
    2 adds in trunk

getComputedStyle for border-width is not implemented.
https://bugs.webkit.org/show_bug.cgi?id=74635

Reviewed by Tony Chang.

Source/WebCore:

Implement getComputedStyle for border-width.

Test: fast/css/getComputedStyle/getComputedStyle-border-width.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

LayoutTests:

Implement a test to cover getComputedStyle for border-width.

  • fast/css/getComputedStyle/getComputedStyle-border-width-expected.txt: Added.
  • fast/css/getComputedStyle/getComputedStyle-border-width.html: Added.
12:41 PM Changeset in webkit [103095] by dslomov@google.com
  • 3 edits
    2 moves
    10 adds in trunk/LayoutTests

https://bugs.webkit.org/show_bug.cgi?id=74657
[Chromium] Re-enable all layout tests for dedicated workers.

Reviewed by David Levin.

  • fast/filesystem/workers/file-writer-gc-blob-expected.txt: Renamed from LayoutTests/fast/filesystem/workers/file-writer-gc-blob-expected.html.
  • fast/filesystem/workers/file-writer-write-overlapped-expected.txt: Renamed from LayoutTests/fast/filesystem/workers/file-writer-write-overlapped-expected.html.
  • http/tests/filesystem/resources/fs-worker-common.js:
  • platform/chromium/http/tests/filesystem/workers/resolve-url-expected.txt: webkitRequestFileSystem is available in chromium DRT.
  • platform/chromium/http/tests/filesystem/workers/resolve-url-sync-expected.txt: webkitRequestFileSystem is available in chromium DRT.
  • platform/chromium/http/tests/workers/worker-importScripts-expected.txt: Exception message texts differ.
  • platform/chromium/http/tests/workers/worker-importScriptsOnError-expected.txt: Exception message texts differ.
  • platform/chromium/http/tests/xmlhttprequest/workers/methods-async-expected.txt: Minor message text differences.
  • platform/chromium/http/tests/xmlhttprequest/workers/methods-expected.txt: Minor message text differnces.
  • platform/chromium/test_expectations.txt:
12:41 PM Changeset in webkit [103094] by Simon Fraser
  • 2 edits in trunk/Source/WebKit/mac

<rdar://problem/10589427> Avoid calling -setGeometryFlipped ourselves on the layer hosting view's layer

Reviewed by Sam Weinig.

Now that we're using a flipped view to host the compositing layers,
we should not set geometryFlipped on the root layer ourselves.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView attachRootLayer:]):

12:41 PM Changeset in webkit [103093] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

[Qt][WK2] Move webView.page into experimental
https://bugs.webkit.org/show_bug.cgi?id=74406

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

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewExperimental::page):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:

(tst_QQuickWebView::accessPage):

12:24 PM Changeset in webkit [103092] by enne@google.com
  • 2 edits in trunk/LayoutTests

[chromium] media/event-attributes.html is flaky on all platforms
https://bugs.webkit.org/show_bug.cgi?id=73692

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
12:20 PM Changeset in webkit [103091] by commit-queue@webkit.org
  • 7 edits
    10 adds in trunk

[chromium] svg/clip-path/clip-in-mask.svg fails on Windows and Linux
https://bugs.webkit.org/show_bug.cgi?id=53378

Patch by Branimir Lambov <blambov@google.com> on 2011-12-16
Reviewed by Tony Chang.

Source/WebCore:

Fixes a problem in Skia's clipping layer code's handling of coordinate
transformations that was causing all complex clipping (including text
and/or masks) to fail.

The method beginLayerClippedToImage was taking rectangle coordinates
in one local coordinate space, but it was applying them in a different
one because of the delay between the time it is called and the actual
application occurs in applyClipFromImage. The fix translates the
coordinates passed to beginLayerClippedToImage to absolute ones, so
that they are not affected by any change in the transform matrix, and
makes sure that applyClipFromImage clears the matrix before drawing
the clip layer to correctly apply the absolute coordinates.

  • platform/graphics/skia/PlatformContextSkia.cpp:

(WebCore::PlatformContextSkia::beginLayerClippedToImage):
(WebCore::PlatformContextSkia::applyClipFromImage):

  • platform/graphics/skia/PlatformContextSkia.h:

LayoutTests:

Fixes a problem in Skia's clipping layer code's handling of coordinate
transformations that was causing all complex clipping (including text
and/or masks) to fail.

The method beginLayerClippedToImage was taking rectangle coordinates
in one local coordinate space, but it was applying them in a different
one because of the delay between the time it is called and the actual
application occurs in applyClipFromImage. The fix translates the
coordinates passed to beginLayerClippedToImage to absolute ones, so
that they are not affected by any change in the transform matrix, and
makes sure that applyClipFromImage clears the matrix before drawing
the clip layer to correctly apply the absolute coordinates.

  • platform/chromium/test_expectations.txt:
12:17 PM Changeset in webkit [103090] by dino@apple.com
  • 2 edits in trunk/Tools

Add webkit-bug-importer@group.apple.com to accounts
so that it autocompletes in bugzilla.

Unreviewed.

  • Scripts/webkitpy/common/config/committers.py:
12:04 PM Changeset in webkit [103089] by enne@google.com
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Disable compositor CCLayerTreeHostTestsetNeedsCommit1 test
https://bugs.webkit.org/show_bug.cgi?id=74623

Unreviewed gardening.

This has been failing (timeout) intermittently on Mac.

  • tests/CCLayerTreeHostTest.cpp:

(WTF::TEST_F):

11:39 AM Changeset in webkit [103088] by enne@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Expand flakiness suppression for 2d.text.draw.fontface.notinpage
https://bugs.webkit.org/show_bug.cgi?id=66908

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
11:30 AM Changeset in webkit [103087] by enne@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Mark compositing/reflections/reflection-positioning2.html as flaky
https://bugs.webkit.org/show_bug.cgi?id=74731

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
11:24 AM Changeset in webkit [103086] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] Add setOpaque to WebMediaPlayerClient interface, don't set VideoLayer's opaque when grabbing current frame.
https://bugs.webkit.org/show_bug.cgi?id=74722

Patch by Dana Jansens <danakj@chromium.org> on 2011-12-16
Reviewed by Darin Fisher.

  • public/WebMediaPlayerClient.h:
  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::readyStateChanged):
(WebKit::WebMediaPlayerClientImpl::setOpaque):
(WebKit::WebMediaPlayerClientImpl::getCurrentFrame):
(WebKit::WebMediaPlayerClientImpl::WebMediaPlayerClientImpl):

  • src/WebMediaPlayerClientImpl.h:
11:09 AM Changeset in webkit [103085] by mnaganov@chromium.org
  • 1 edit
    4 adds in trunk/LayoutTests

[Gtk] Add platform-specific test results after r103073

  • platform/gtk/editing/input/caret-at-the-edge-of-contenteditable-expected.txt: Added.
  • platform/gtk/editing/input/caret-at-the-edge-of-input-expected.txt: Added.
  • platform/gtk/editing/input/reveal-caret-of-multiline-contenteditable-expected.txt: Added.
  • platform/gtk/editing/input/reveal-caret-of-multiline-input-expected.txt: Added.
11:08 AM Changeset in webkit [103084] by enne@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Mark several http tests as failing, due to DRT weirdness.
https://bugs.webkit.org/show_bug.cgi?id=74694

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
11:06 AM Changeset in webkit [103083] by mhahnenberg@apple.com
  • 167 edits in trunk

De-virtualize destructors
https://bugs.webkit.org/show_bug.cgi?id=74331

Reviewed by Geoffrey Garen.

.:

  • Source/autotools/symbols.filter: Removed symbol no longer present.

Source/JavaScriptCore:

This is a megapatch which frees us from the chains of virtual destructors.

In order to remove the virtual destructors, which are the last of the virtual
functions, from the JSCell hierarchy, we need to add the ClassInfo pointer to
the cell rather than to the structure because in order to be able to lazily call
the static destroy() functions that will replace the virtual destructors, we
need to be able to access the ClassInfo without the danger of the object's
Structure being collected before the object itself.

After adding the ClassInfo to the cell, we can then begin to remove our use
of vptrs for optimizations within the JIT and the GC. When we have removed
all of the stored vptrs from JSGlobalData, we can then also remove all of
the related VPtrStealingHack code.

The replacement for virtual destructors will be to add a static destroy function
pointer to the MethodTable stored in ClassInfo. Any subclass of JSCell that has
a non-trivial destructor will require its own static destroy function to static
call its corresponding destructor, which will now be non-virtual. In future
patches we will slowly move away from destructors altogether as we make more and
more objects backed by GC memory rather than malloc-ed memory. The GC will now
call the static destroy method rather than the virtual destructor.

As we go through the hierarchy and add static destroy functions to classes,
we will also add a new assert, ASSERT_HAS_TRIVIAL_DESTRUCTOR, to those classes
to which it applies. The future goal is to eventually have every class have that assert.

  • API/JSCallbackConstructor.cpp:

(JSC::JSCallbackConstructor::destroy): Add a destroy function to statically call
~JSCallbackConstructor because it has some extra destruction logic.

  • API/JSCallbackConstructor.h:
  • API/JSCallbackFunction.cpp: Add trivial destructor assert for JSCallbackFunction.
  • API/JSCallbackObject.cpp: Add a destroy function to statically call ~JSCallbackObject

because it has a member OwnPtr that needs destruction.
(JSC::::destroy):

  • API/JSCallbackObject.h:
  • JavaScriptCore.exp: Add/remove necessary symbols for JSC.
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def: Same for Windows symbols.
  • debugger/DebuggerActivation.cpp: DebuggerActivation, for some strange reason, didn't

have its own ClassInfo despite the fact that it overrides a number of MethodTable
methods. Added the ClassInfo, along with an assertion that its destructor is trivial.

  • debugger/DebuggerActivation.h:
  • dfg/DFGOperations.cpp: Remove global data first argument to isJSArray, isJSByteArray,

isJSString, as it is no longer necessary.
(JSC::DFG::putByVal):

  • dfg/DFGRepatch.cpp: Ditto. Also remove uses of jsArrayVPtr in favor of using the

JSArray ClassInfo pointer.
(JSC::DFG::tryCacheGetByID):

  • dfg/DFGSpeculativeJIT.cpp: Replace uses of the old vptrs with new ClassInfo

comparisons since we don't have vptrs anymore.
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleBranch):
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
(JSC::DFG::SpeculativeJIT::compilePutByValForByteArray):
(JSC::DFG::SpeculativeJIT::compileGetTypedArrayLength):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compare):
(JSC::DFG::SpeculativeJIT::compileStrictEq):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):

  • dfg/DFGSpeculativeJIT.h: Ditto.

(JSC::DFG::SpeculativeJIT::emitAllocateJSFinalObject):

  • dfg/DFGSpeculativeJIT32_64.cpp: Ditto.

(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::compileLogicalNot):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::emitBranch):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp: Ditto.

(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::compileLogicalNot):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::emitBranch):
(JSC::DFG::SpeculativeJIT::compile):

  • heap/Heap.cpp: Remove all uses of vptrs in GC optimizations and replace them with

ClassInfo comparisons.
(JSC::Heap::Heap):

  • heap/MarkStack.cpp: Ditto.

(JSC::MarkStackThreadSharedData::markingThreadMain):
(JSC::visitChildren):
(JSC::SlotVisitor::drain):

  • heap/MarkStack.h: Ditto.

(JSC::MarkStack::MarkStack):

  • heap/MarkedBlock.cpp: Ditto.

(JSC::MarkedBlock::callDestructor):
(JSC::MarkedBlock::specializedSweep):

  • heap/MarkedBlock.h: Ditto.
  • heap/SlotVisitor.h: Ditto.

(JSC::SlotVisitor::SlotVisitor):

  • heap/VTableSpectrum.cpp: Now that we don't have vptrs, we can't count them.

We'll have to rename this class and make it use ClassInfo ptrs in a future patch.
(JSC::VTableSpectrum::count):

  • interpreter/Interpreter.cpp: Remove all global data arguments from isJSArray,

etc. functions.
(JSC::loadVarargs):
(JSC::Interpreter::tryCacheGetByID):
(JSC::Interpreter::privateExecute):

  • jit/JIT.h: Remove vptr argument from emitAllocateBasicJSObject
  • jit/JITInlineMethods.h: Remove vptr planting, and add ClassInfo planting,

remove all vtable related code.
(JSC::JIT::emitLoadCharacterString):
(JSC::JIT::emitAllocateBasicJSObject):
(JSC::JIT::emitAllocateJSFinalObject):
(JSC::JIT::emitAllocateJSFunction):

  • jit/JITOpcodes.cpp: Replace vptr related branch code with corresponding ClassInfo.

(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::emit_op_to_primitive):
(JSC::JIT::emit_op_convert_this):

  • jit/JITOpcodes32_64.cpp: Ditto.

(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::emit_op_to_primitive):
(JSC::JIT::emitSlow_op_eq):
(JSC::JIT::emitSlow_op_neq):
(JSC::JIT::compileOpStrictEq):
(JSC::JIT::emit_op_convert_this):

  • jit/JITPropertyAccess.cpp: Ditto.

(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::privateCompilePutByIdTransition):
(JSC::JIT::privateCompilePatchGetArrayLength):

  • jit/JITPropertyAccess32_64.cpp: Ditto.

(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::privateCompilePatchGetArrayLength):

  • jit/JITStubs.cpp: Remove global data argument from isJSString, etc.

(JSC::JITThunks::tryCacheGetByID):
(JSC::DEFINE_STUB_FUNCTION):

  • jit/SpecializedThunkJIT.h: Replace vptr related stuff with ClassInfo stuff.

(JSC::SpecializedThunkJIT::loadJSStringArgument):

  • runtime/ArrayConstructor.cpp: Add trivial destructor assert.
  • runtime/ArrayPrototype.cpp: Remove global data argument from isJSArray.

(JSC::arrayProtoFuncToString):
(JSC::arrayProtoFuncJoin):
(JSC::arrayProtoFuncPop):
(JSC::arrayProtoFuncPush):
(JSC::arrayProtoFuncShift):
(JSC::arrayProtoFuncSplice):
(JSC::arrayProtoFuncUnShift):
(JSC::arrayProtoFuncFilter):
(JSC::arrayProtoFuncMap):
(JSC::arrayProtoFuncEvery):
(JSC::arrayProtoFuncForEach):
(JSC::arrayProtoFuncSome):
(JSC::arrayProtoFuncReduce):
(JSC::arrayProtoFuncReduceRight):

  • runtime/BooleanConstructor.cpp: Add trivial destructor assert.
  • runtime/BooleanObject.cpp: Ditto.
  • runtime/BooleanPrototype.cpp: Ditto.
  • runtime/ClassInfo.h: Add destroy function pointer to MethodTable.
  • runtime/DateConstructor.cpp: Add trivial destructor assert.
  • runtime/DateInstance.cpp: Add destroy function for DateInstance because it has a RefPtr

that needs destruction.
(JSC::DateInstance::destroy):

  • runtime/DateInstance.h:
  • runtime/Error.cpp: Ditto (because of UString member).

(JSC::StrictModeTypeErrorFunction::destroy):

  • runtime/Error.h:
  • runtime/ErrorConstructor.cpp: Add trivial destructor assert.
  • runtime/ErrorInstance.cpp: Ditto.
  • runtime/ExceptionHelpers.cpp: Ditto.
  • runtime/Executable.cpp: Add destroy functions for ExecutableBase and subclasses.

(JSC::ExecutableBase::destroy):
(JSC::NativeExecutable::destroy):
(JSC::ScriptExecutable::destroy):
(JSC::EvalExecutable::destroy):
(JSC::ProgramExecutable::destroy):
(JSC::FunctionExecutable::destroy):

  • runtime/Executable.h:
  • runtime/FunctionConstructor.cpp: Add trivial destructor assert.
  • runtime/FunctionPrototype.cpp: Ditto. Also remove global data first arg from isJSArray.

(JSC::functionProtoFuncApply):

  • runtime/GetterSetter.cpp: Ditto.
  • runtime/InitializeThreading.cpp: Remove call to JSGlobalData::storeVPtrs since it no

longer exists.
(JSC::initializeThreadingOnce):

  • runtime/InternalFunction.cpp: Remove vtableAnchor function, add trivial destructor assert,

remove first arg from isJSString.
(JSC::InternalFunction::displayName):

  • runtime/InternalFunction.h: Remove VPtrStealingHack.
  • runtime/JSAPIValueWrapper.cpp: Add trivial destructor assert.
  • runtime/JSArray.cpp: Add static destroy to call ~JSArray. Replace vptr checks in

destructor with ClassInfo checks.
(JSC::JSArray::~JSArray):
(JSC::JSArray::destroy):

  • runtime/JSArray.h: Remove VPtrStealingHack. Remove globalData argument from isJSArray

and change them to check the ClassInfo rather than the vptrs.
(JSC::isJSArray):

  • runtime/JSBoundFunction.cpp: Add trival destructor assert. Remove first arg from isJSArray.

(JSC::boundFunctionCall):
(JSC::boundFunctionConstruct):

  • runtime/JSByteArray.cpp: Add static destroy function, replace vptr checks with ClassInfo checks.

(JSC::JSByteArray::~JSByteArray):
(JSC::JSByteArray::destroy):

  • runtime/JSByteArray.h: Remove VPtrStealingHack code.

(JSC::isJSByteArray):

  • runtime/JSCell.cpp: Add trivial destructor assert. Add static destroy function.

(JSC::JSCell::destroy):

  • runtime/JSCell.h: Remove VPtrStealingHack code. Add function for returning the offset

of the ClassInfo pointer in the object for use by the JIT. Add the ClassInfo pointer to
the JSCell itself, and grab it from the Structure. Remove the vptr and setVPtr functions,
as they are no longer used. Add a validatedClassInfo function to JSCell for any clients
that want to verify, while in Debug mode, that the ClassInfo contained in the cell is the
same one as that contained in the Structure. This isn't used too often, because most of
the places where we compare the ClassInfo to things can be called during destruction.
Since the Structure is unreliable during the phase when destructors are being called,
we can't call validatedClassInfo.
(JSC::JSCell::classInfoOffset):
(JSC::JSCell::structure):
(JSC::JSCell::classInfo):

  • runtime/JSFunction.cpp: Remove VPtrStealingHack code. Add static destroy, remove vtableAnchor,

remove first arg from call to isJSString.
(JSC::JSFunction::destroy):
(JSC::JSFunction::displayName):

  • runtime/JSFunction.h:
  • runtime/JSGlobalData.cpp: Remove all VPtr stealing code and storage, including storeVPtrs,

as these vptrs are no longer needed in the codebase.

  • runtime/JSGlobalData.h:

(JSC::TypedArrayDescriptor::TypedArrayDescriptor): Changed the TypedArrayDescriptor to use
ClassInfo rather than the vptr.

  • runtime/JSGlobalObject.cpp: Add static destroy function.

(JSC::JSGlobalObject::destroy):

  • runtime/JSGlobalObject.h:
  • runtime/JSGlobalThis.cpp: Add trivial destructor assert.
  • runtime/JSNotAnObject.cpp: Ditto.
  • runtime/JSONObject.cpp: Ditto. Remove first arg from isJSArray calls.

(JSC::Stringifier::Holder::appendNextProperty):
(JSC::Walker::walk):

  • runtime/JSObject.cpp:

(JSC::JSFinalObject::destroy):
(JSC::JSNonFinalObject::destroy):
(JSC::JSObject::destroy):

  • runtime/JSObject.h: Add trivial destructor assert for JSObject, remove vtableAnchor

from JSNonFinalObject and JSFinalObject, add static destroy for JSFinalObject and
JSNonFinalObject, add isJSFinalObject utility function similar to isJSArray, remove all VPtrStealingHack code.
(JSC::JSObject::finishCreation):
(JSC::JSNonFinalObject::finishCreation):
(JSC::JSFinalObject::finishCreation):
(JSC::isJSFinalObject):

  • runtime/JSPropertyNameIterator.cpp: Add static destroy.

(JSC::JSPropertyNameIterator::destroy):

  • runtime/JSPropertyNameIterator.h:
  • runtime/JSStaticScopeObject.cpp: Ditto.

(JSC::JSStaticScopeObject::destroy):

  • runtime/JSStaticScopeObject.h: Ditto.
  • runtime/JSString.cpp:

(JSC::JSString::destroy):

  • runtime/JSString.h: Ditto. Remove VPtrStealingHack code. Also remove fixupVPtr code,

since we no longer need to fixup vptrs.
(JSC::jsSingleCharacterString):
(JSC::jsSingleCharacterSubstring):
(JSC::jsNontrivialString):
(JSC::jsString):
(JSC::jsSubstring8):
(JSC::jsSubstring):
(JSC::jsOwnedString):
(JSC::jsStringBuilder):
(JSC::isJSString):

  • runtime/JSVariableObject.cpp:

(JSC::JSVariableObject::destroy):

  • runtime/JSVariableObject.h: Ditto.
  • runtime/JSWrapperObject.cpp:
  • runtime/JSWrapperObject.h: Add trivial destructor assert.
  • runtime/MathObject.cpp: Ditto.
  • runtime/NativeErrorConstructor.cpp: Ditto.
  • runtime/NumberConstructor.cpp: Ditto.
  • runtime/NumberObject.cpp: Ditto.
  • runtime/NumberPrototype.cpp: Ditto.
  • runtime/ObjectConstructor.cpp: Ditto.
  • runtime/ObjectPrototype.cpp: Ditto.
  • runtime/Operations.h: Remove calls to fixupVPtr, remove first arg to isJSString.

(JSC::jsString):
(JSC::jsLess):
(JSC::jsLessEq):

  • runtime/RegExp.cpp: Add static destroy.

(JSC::RegExp::destroy):

  • runtime/RegExp.h:
  • runtime/RegExpConstructor.cpp: Add static destroy for RegExpConstructor and RegExpMatchesArray.

(JSC::RegExpConstructor::destroy):
(JSC::RegExpMatchesArray::destroy):

  • runtime/RegExpConstructor.h:
  • runtime/RegExpMatchesArray.h:
  • runtime/RegExpObject.cpp: Add static destroy.

(JSC::RegExpObject::destroy):

  • runtime/RegExpObject.h:
  • runtime/ScopeChain.cpp: Add trivial destructor assert.
  • runtime/ScopeChain.h:
  • runtime/StrictEvalActivation.cpp: Ditto.
  • runtime/StringConstructor.cpp:
  • runtime/StringObject.cpp: Ditto. Remove vtableAnchor.
  • runtime/StringObject.h:
  • runtime/StringPrototype.cpp: Ditto.
  • runtime/Structure.cpp: Add static destroy.

(JSC::Structure::destroy):

  • runtime/Structure.h: Move JSCell::finishCreation and JSCell constructor into Structure.h

because they need to have the full Structure type to access the ClassInfo to store in the JSCell.
(JSC::JSCell::setStructure):
(JSC::JSCell::validatedClassInfo):
(JSC::JSCell::JSCell):
(JSC::JSCell::finishCreation):

  • runtime/StructureChain.cpp: Add static destroy.

(JSC::StructureChain::destroy):

  • runtime/StructureChain.h:
  • wtf/Assertions.h: Add new assertion ASSERT_HAS_TRIVIAL_DESTRUCTOR, which uses clangs

ability to tell us when a class has a trivial destructor. We will use this assert
more in future patches as we move toward having all JSC objects backed by GC memory,
which means moving away from using destructors/finalizers.

Source/JavaScriptGlue:

  • UserObjectImp.cpp: Add static destroy function.

(UserObjectImp::destroy):

  • UserObjectImp.h:

Source/WebCore:

No new tests.

Doing everything here that was done to the JSCell hierarchy in JavaScriptCore.
See the ChangeLog for this commit for a more in-depth description.

  • WebCore.exp.in: Add/remove symbols.
  • bindings/js/JSCanvasRenderingContext2DCustom.cpp: Remove first arg from isJSArray call.

(WebCore::JSCanvasRenderingContext2D::setWebkitLineDash):

  • bindings/js/JSDOMBinding.cpp: Add trival destructor assert for DOMConstructorObject

and DOMConstructorWithDocument.

  • bindings/js/JSDOMGlobalObject.cpp: Add static destroy. Add implementation for

scriptExecutionContext that dispatches to different functions in subclasses
depending on our current ClassInfo. We do this so that we can get rid of the
virtual-ness of scriptExecutionContext, because any virtual functions will throw
off the layout of the object and we'll crash at runtime.
(WebCore::JSDOMGlobalObject::destroy):
(WebCore::JSDOMGlobalObject::scriptExecutionContext):

  • bindings/js/JSDOMGlobalObject.h:
  • bindings/js/JSDOMWindowBase.cpp: Add static destroy.

(WebCore::JSDOMWindowBase::destroy):

  • bindings/js/JSDOMWindowBase.h: De-virtualize scriptExecutionContext.
  • bindings/js/JSDOMWindowShell.cpp: Add static destroy.

(WebCore::JSDOMWindowShell::destroy):

  • bindings/js/JSDOMWindowShell.h:
  • bindings/js/JSDOMWrapper.cpp: Add trivial destructor assert.
  • bindings/js/JSDOMWrapper.h: Add a ClassInfo to JSDOMWrapper since it now overrides

a MethodTable function. Remove vtableAnchor virtual function.

  • bindings/js/JSImageConstructor.cpp: Add trivial destructor assert.
  • bindings/js/JSNodeCustom.cpp: Change implementation of pushEventHandlerScope so that

it dispatches to the correct function depending on the
identity of the class as specified by the ClassInfo.
See JSDOMGlobalObject::scriptExecutionContext for explanation.
(WebCore::JSNode::pushEventHandlerScope):

  • bindings/js/JSWebSocketCustom.cpp: Remove first arg to isJSArray call.

(WebCore::JSWebSocketConstructor::constructJSWebSocket):

  • bindings/js/JSWorkerContextBase.cpp: Add static destroy.

(WebCore::JSWorkerContextBase::destroy):

  • bindings/js/JSWorkerContextBase.h:
  • bindings/js/ScriptValue.cpp: Remove first arg to isJSArray call.

(WebCore::jsToInspectorValue):

  • bindings/js/SerializedScriptValue.cpp: Ditto.

(WebCore::CloneSerializer::isArray):
(WebCore::CloneSerializer::getSparseIndex):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader): Remove virtual-ness of any custom pushEventHandlerScope (see
JSNodeCustom::pushEventHandlerScope for explanation). Remove virtual toBoolean
for anybody who masquerades as undefined, since our JSObject implementation handles
this based on the TypeInfo in the Structure. Add trivial destructor assert for any
class other than DOMWindow or WorkerContexts.
(GenerateImplementation): Change ClassInfo definitions to use Base::s_info, since
typing the parent class more than once is duplication of information and increases
the likelihood of mistakes. Pass ClassInfo to TypeArrayDescriptors instead of vptr.
(GenerateConstructorDefinition): Add trivial destructor assert for all generated constructors.

  • bridge/c/CRuntimeObject.cpp: Remove empty virtual destructor.
  • bridge/c/CRuntimeObject.h:
  • bridge/jni/jsc/JavaRuntimeObject.cpp: Ditto.
  • bridge/jni/jsc/JavaRuntimeObject.h:
  • bridge/objc/ObjCRuntimeObject.h: Ditto.
  • bridge/objc/ObjCRuntimeObject.mm:
  • bridge/objc/objc_runtime.h: Add static destroy for ObjcFallbackObjectImp. De-virtualize

toBoolean in the short term. Need longer term fix.

  • bridge/objc/objc_runtime.mm:

(JSC::Bindings::ObjcFallbackObjectImp::destroy):

  • bridge/qt/qt_runtime.cpp: Add static destroy to QtRuntimeMethod.

(JSC::Bindings::QtRuntimeMethod::destroy):

  • bridge/qt/qt_runtime.h: De-virtualize ~QtRuntimeMethod.
  • bridge/runtime_array.cpp: De-virtualize destructor. Add static destroy.

(JSC::RuntimeArray::destroy):

  • bridge/runtime_array.h:
  • bridge/runtime_method.cpp: Remove vtableAnchor. Add static destroy.

(JSC::RuntimeMethod::destroy):

  • bridge/runtime_method.h:
  • bridge/runtime_object.cpp: Add static destroy.

(JSC::Bindings::RuntimeObject::destroy):

  • bridge/runtime_object.h:

Source/WebKit/mac:

  • Plugins/Hosted/ProxyRuntimeObject.h: Remove empty virtual destructor.
  • Plugins/Hosted/ProxyRuntimeObject.mm:

Source/WebKit2:

  • WebProcess/Plugins/Netscape/JSNPMethod.cpp: Add trivial destructor assert.
  • WebProcess/Plugins/Netscape/JSNPObject.cpp: Add static destroy.

(WebKit::JSNPObject::destroy):

  • WebProcess/Plugins/Netscape/JSNPObject.h:
  • win/WebKit2.def: Add/remove necessary symbols.
  • win/WebKit2CFLite.def: Ditto.
10:59 AM Changeset in webkit [103082] by ap@apple.com
  • 3 edits in trunk/Source/WebCore

Poor XPath performance when evaluating an expression that returns a lot of nodes
https://bugs.webkit.org/show_bug.cgi?id=74665
<rdar://problem/10517146>

Reviewed by Darin Adler.

No change in funcitonality. Well covered by existing tests (ran them with zero cutoff to
execute the new code path).

Our sorting function is optimized for small node sets in large documents, and this is the
opposite of it. Added another one that traverses the whole document, adding nodes from the
node set to sorted list. That doesn't grow with the number of nodes nearly as fast.

Cutoff amount chosen for the document referenced in bug - this is roughly where the algorithms
have the same performance on it.

  • xml/XPathNodeSet.cpp: (WebCore::XPath::NodeSet::sort): (WebCore::XPath::findRootNode): (WebCore::XPath::NodeSet::traversalSort):
  • xml/XPathNodeSet.h:
10:43 AM Changeset in webkit [103081] by mnaganov@chromium.org
  • 9 edits
    23 adds
    1 delete in trunk/LayoutTests

Rebaseline and add expectations after r103073
[chromium] https://bugs.webkit.org/show_bug.cgi?id=74726

  • platform/chromium-linux/editing/input/caret-at-the-edge-of-contenteditable-expected.png: Added.
  • platform/chromium-linux/editing/input/caret-at-the-edge-of-input-expected.png: Added.
  • platform/chromium-linux/editing/input/reveal-caret-of-multiline-contenteditable-expected.png: Added.
  • platform/chromium-linux/editing/input/reveal-caret-of-multiline-input-expected.png: Added.
  • platform/chromium-mac-leopard/editing/input/caret-at-the-edge-of-contenteditable-expected.png: Added.
  • platform/chromium-mac-leopard/editing/input/caret-at-the-edge-of-input-expected.png: Added.
  • platform/chromium-mac-leopard/editing/input/reveal-caret-of-multiline-contenteditable-expected.png: Added.
  • platform/chromium-mac-leopard/editing/input/reveal-caret-of-multiline-input-expected.png: Added.
  • platform/chromium-mac-leopard/fast/forms/input-text-scroll-left-on-blur-expected.png:
  • platform/chromium-mac-snowleopard/editing/input/caret-at-the-edge-of-contenteditable-expected.png: Added.
  • platform/chromium-mac-snowleopard/editing/input/caret-at-the-edge-of-input-expected.png: Added.
  • platform/chromium-mac-snowleopard/editing/input/reveal-caret-of-multiline-contenteditable-expected.png: Added.
  • platform/chromium-mac-snowleopard/editing/input/reveal-caret-of-multiline-input-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/forms/input-text-scroll-left-on-blur-expected.png: Added.
  • platform/chromium-mac/fast/forms/input-text-scroll-left-on-blur-expected.png: Removed.
  • platform/chromium-win/editing/input/caret-at-the-edge-of-contenteditable-expected.png: Added.
  • platform/chromium-win/editing/input/caret-at-the-edge-of-contenteditable-expected.txt: Added.
  • platform/chromium-win/editing/input/caret-at-the-edge-of-input-expected.png: Added.
  • platform/chromium-win/editing/input/caret-at-the-edge-of-input-expected.txt: Added.
  • platform/chromium-win/editing/input/reveal-caret-of-multiline-contenteditable-expected.png: Added.
  • platform/chromium-win/editing/input/reveal-caret-of-multiline-contenteditable-expected.txt: Added.
  • platform/chromium-win/editing/input/reveal-caret-of-multiline-input-expected.png: Added.
  • platform/chromium-win/editing/input/reveal-caret-of-multiline-input-expected.txt: Added.
  • platform/chromium-win/fast/forms/input-text-scroll-left-on-blur-expected.png:
  • platform/chromium-win/fast/forms/input-text-scroll-left-on-blur-expected.txt:
  • platform/chromium/test_expectations.txt:
  • platform/gtk/test_expectations.txt:
  • platform/mac/fast/forms/input-text-scroll-left-on-blur-expected.txt:
  • platform/qt/test_expectations.txt:
  • platform/win/test_expectations.txt:
10:39 AM Changeset in webkit [103080] by Antti Koivisto
  • 3 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=74677
Count ResourceLoadScheduler suspends/resumes

Reviewed by Andreas Kling.

Using boolean is not robust when there are multiple clients calling suspendPendingRequests/resumePendingRequests.

Increment and decrement suspend count instead of just setting/unsetting a boolean.

  • loader/ResourceLoadScheduler.cpp:

(WebCore::ResourceLoadScheduler::ResourceLoadScheduler):
(WebCore::ResourceLoadScheduler::servePendingRequests):
(WebCore::ResourceLoadScheduler::suspendPendingRequests):
(WebCore::ResourceLoadScheduler::resumePendingRequests):

  • loader/ResourceLoadScheduler.h:

(WebCore::ResourceLoadScheduler::isSuspendingPendingRequests):

10:27 AM Changeset in webkit [103079] by adamk@chromium.org
  • 3 edits in trunk/Source/WebCore

Improve performance of ChildListMutationScope when no MutationObservers are present
https://bugs.webkit.org/show_bug.cgi?id=74671

Reviewed by Ojan Vafai.

Inline ChildListMutationScope's methods (including constructor and
destructor), and provide a fast-fail case when no mutation observers
are present.

The code reorganization necessary for the above also removed the
anonymous namespace in ChildListMutationScope.cpp, making both helper
classes private inner classes of ChildListMutationScope.

No new tests, refactoring only.

  • dom/ChildListMutationScope.cpp:

(WebCore::ChildListMutationScope::MutationAccumulator::MutationAccumulator):
(WebCore::ChildListMutationScope::MutationAccumulator::~MutationAccumulator):
(WebCore::ChildListMutationScope::MutationAccumulator::isAddedNodeInOrder):
(WebCore::ChildListMutationScope::MutationAccumulator::childAdded):
(WebCore::ChildListMutationScope::MutationAccumulator::isRemovedNodeInOrder):
(WebCore::ChildListMutationScope::MutationAccumulator::willRemoveChild):
(WebCore::ChildListMutationScope::MutationAccumulator::enqueueMutationRecord):
(WebCore::ChildListMutationScope::MutationAccumulator::clear):
(WebCore::ChildListMutationScope::MutationAccumulator::isEmpty):
(WebCore::ChildListMutationScope::MutationAccumulationRouter::MutationAccumulationRouter):
(WebCore::ChildListMutationScope::MutationAccumulationRouter::~MutationAccumulationRouter):
(WebCore::ChildListMutationScope::MutationAccumulationRouter::initialize):
(WebCore::ChildListMutationScope::MutationAccumulationRouter::instance):
(WebCore::ChildListMutationScope::MutationAccumulationRouter::childAdded):
(WebCore::ChildListMutationScope::MutationAccumulationRouter::willRemoveChild):
(WebCore::ChildListMutationScope::MutationAccumulationRouter::incrementScopingLevel):
(WebCore::ChildListMutationScope::MutationAccumulationRouter::decrementScopingLevel):

  • dom/ChildListMutationScope.h:

(WebCore::ChildListMutationScope::ChildListMutationScope):
(WebCore::ChildListMutationScope::~ChildListMutationScope):
(WebCore::ChildListMutationScope::childAdded):
(WebCore::ChildListMutationScope::willRemoveChild):

10:07 AM Changeset in webkit [103078] by enne@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Mark fast/forms/input-text-scroll-left-on-blur.html as failing
https://bugs.webkit.org/show_bug.cgi?id=74726

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
10:04 AM Changeset in webkit [103077] by Philippe Normand
  • 3 edits in trunk/LayoutTests

Unreviewed, GTK rebaseline of 2 fat/forms tests.

  • platform/gtk/fast/forms/input-text-scroll-left-on-blur-expected.txt:
  • platform/gtk/fast/forms/plaintext-mode-2-expected.txt:
10:01 AM Changeset in webkit [103076] by dino@apple.com
  • 49 edits
    3 adds in trunk

Filters need to affect visual overflow
https://bugs.webkit.org/show_bug.cgi?id=71930

Source/WebCore:

Reviewed by Simon Fraser.

Make sure filters are included in visual overflow.
Add a new method to calculate the expansion of overflow
region given a list of FilterOperations. This is a slight
duplication of code from the rendering path, but is needed
because overflow is calculated before the FilterEffect
chain is built.

Also, filters were always rendered into their
input rectangle which was wrong for any effect
that produced a different sized result - drop-shadow
and blur. This required two changes. First, FilterEffect
needed a flag to decide whether or not to clip
output to primitive regions (as required by SVG but not
what we want here). Second, the rendering operation
draws into the rectangle the filter claims is its painting
rectangle.

Test: css3/filters/regions-expanding.html

  • platform/graphics/filters/FEDropShadow.cpp:

(WebCore::FEDropShadow::determineAbsolutePaintRect): Only
clipToBounds if necessary.

  • platform/graphics/filters/FEGaussianBlur.cpp:

(WebCore::FEGaussianBlur::calculateUnscaledKernelSize): CSS filters
ask for the kernel size before the Filter object is created, so
add a new method to return an unscaled kernel.
(WebCore::FEGaussianBlur::calculateKernelSize):
(WebCore::FEGaussianBlur::determineAbsolutePaintRect): Only
clipToBounds if necessary.

  • platform/graphics/filters/FEGaussianBlur.h:
  • platform/graphics/filters/FEMorphology.cpp:

(WebCore::FEMorphology::determineAbsolutePaintRect): Only
clipToBounds if necessary.

  • platform/graphics/filters/FEOffset.cpp:

(WebCore::FEOffset::determineAbsolutePaintRect): Only
clipToBounds if necessary.

  • platform/graphics/filters/FilterEffect.cpp:

(WebCore::FilterEffect::FilterEffect): Initialize clipToBounds
as false so SVG remains unchanged.
(WebCore::FilterEffect::determineAbsolutePaintRect): Only
clipToBounds if necessary.

  • platform/graphics/filters/FilterEffect.h:

(WebCore::FilterEffect::clipsToBounds):
(WebCore::FilterEffect::setClipsToBounds):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::build): Make sure we set our
filters here to NOT clip to bounds.

  • rendering/FilterEffectRenderer.h:

(WebCore::FilterEffectRenderer::outputRect): Asks the filter
operation for the size of the result image.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::computeOverflow):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::addVisualEffectOverflow): Change the name
from addBoxShadowAndBorderOverflow().

  • rendering/RenderBox.h:
  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::layout):

  • rendering/RenderIFrame.cpp:

(WebCore::RenderIFrame::layout):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintLayer):

  • rendering/RenderLayerBacking.cpp:

(WebCore::hasBoxDecorations): Change name from
hasBorderOutlineOrShadow().
(WebCore::hasBoxDecorationsOrBackground):
(WebCore::hasBoxDecorationsOrBackgroundImage):

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::layout):

  • rendering/style/FilterOperations.cpp:

(WebCore::outsetSizeForBlur): Return an IntSize that is the amount
of offset.
(WebCore::FilterOperations::hasOutsets):
(WebCore::FilterOperations::getOutsets):

  • rendering/style/FilterOperations.h:
  • rendering/style/RenderStyle.h:

(WebCore::InheritedFlags::getFilterOutsets):
(WebCore::InheritedFlags::hasFilterOutsets):

  • svg/graphics/filters/SVGFEImage.cpp:

(WebCore::FEImage::determineAbsolutePaintRect): Only
clipToBounds if necessary.

LayoutTests:

Previously, filters that expanded their input
region (drop-shadow and blur) were being squished
when rendered back into the document. This is now
fixed, so the expected.png images from tests including
such filters needed updating. I also turned off
dumpAsText() in order to enable pixel tests, and added
some margin between the elements in effects which have
overflow (so that blurs don't overlap, for example).

There is one new test which exercises the case
of expanding filters at various stages in a list
of operations.

Reviewed by Simon Fraser.

  • css3/filters/crash-filter-change-expected.png:
  • css3/filters/effect-blur-expected.png:
  • css3/filters/effect-blur-expected.txt:
  • css3/filters/effect-blur.html:
  • css3/filters/effect-combined-expected.png:
  • css3/filters/effect-combined-expected.txt:
  • css3/filters/effect-combined.html:
  • css3/filters/effect-drop-shadow-expected.png:
  • css3/filters/effect-drop-shadow-expected.txt:
  • css3/filters/effect-drop-shadow.html:
  • css3/filters/effect-gamma-expected.txt:
  • css3/filters/effect-gamma.html:
  • css3/filters/effect-grayscale-expected.txt:
  • css3/filters/effect-grayscale.html:
  • css3/filters/effect-hue-rotate-expected.txt:
  • css3/filters/effect-hue-rotate.html:
  • css3/filters/effect-invert-expected.png:
  • css3/filters/effect-invert-expected.txt:
  • css3/filters/effect-invert.html:
  • css3/filters/effect-opacity-expected.txt:
  • css3/filters/effect-opacity.html:
  • css3/filters/effect-saturate-expected.txt:
  • css3/filters/effect-saturate.html:
  • css3/filters/effect-sepia-expected.txt:
  • css3/filters/effect-sepia.html:
  • css3/filters/regions-expanding-expected.png: Added.
  • css3/filters/regions-expanding-expected.txt: Added.
  • css3/filters/regions-expanding.html: Added.
9:52 AM Changeset in webkit [103075] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, skipping some svg tests still failing on GTK 64-bit after r103071.

  • platform/gtk/Skipped:
9:28 AM Changeset in webkit [103074] by jwieczorek@webkit.org
  • 8 edits
    11 adds in trunk

Add support for <ol reversed>.
https://bugs.webkit.org/show_bug.cgi?id=36724

The reversed attribute makes an ordered list appear with marker values
decreasing from n, where n is the number of items.
See: http://www.whatwg.org/specs/web-apps/current-work/#attr-ol-reversed

Reviewed by Darin Adler.

Source/WebCore:

Tests: fast/lists/ol-reversed-dynamic-simple.html

fast/lists/ol-reversed-dynamic.html
fast/lists/ol-reversed-nested-items.html
fast/lists/ol-reversed-nested-list.html
fast/lists/ol-reversed-simple.html

  • html/HTMLAttributeNames.in:
  • html/HTMLOListElement.cpp:

(WebCore::HTMLOListElement::HTMLOListElement):
(WebCore::HTMLOListElement::parseMappedAttribute):
(WebCore::HTMLOListElement::updateItemValues):
(WebCore::HTMLOListElement::recalculateItemCount):

  • html/HTMLOListElement.h:

(WebCore::HTMLOListElement::start):
(WebCore::HTMLOListElement::isReversed):
(WebCore::HTMLOListElement::itemCountChanged):
(WebCore::HTMLOListElement::itemCount):

  • html/HTMLOListElement.idl:
  • rendering/RenderListItem.cpp:

(WebCore::RenderListItem::nextListItem):
(WebCore::previousListItem):
(WebCore::RenderListItem::calcValue):
(WebCore::RenderListItem::explicitValueChanged):
(WebCore::previousOrNextItem):
(WebCore::RenderListItem::updateListMarkerNumbers):

  • rendering/RenderListItem.h:

LayoutTests:

  • fast/lists/ol-reversed-dynamic-expected.txt: Added.
  • fast/lists/ol-reversed-dynamic-simple-expected.txt: Added.
  • fast/lists/ol-reversed-dynamic-simple.html: Added.
  • fast/lists/ol-reversed-dynamic.html: Added.
  • fast/lists/ol-reversed-nested-items-expected.txt: Added.
  • fast/lists/ol-reversed-nested-items.html: Added.
  • fast/lists/ol-reversed-nested-list-expected.txt: Added.
  • fast/lists/ol-reversed-nested-list.html: Added.
  • fast/lists/ol-reversed-simple-expected.txt: Added.
  • fast/lists/ol-reversed-simple.html: Added.
8:57 AM Changeset in webkit [103073] by mnaganov@chromium.org
  • 7 edits
    21 adds in trunk

Scroll non-visible edit controls and caret into the center of the view when starting typing.
https://bugs.webkit.org/show_bug.cgi?id=65027

Reviewed by Ryosuke Niwa.

Tests: editing/input/caret-at-the-edge-of-contenteditable.html

editing/input/caret-at-the-edge-of-input.html
editing/input/reveal-caret-of-multiline-contenteditable.html
editing/input/reveal-caret-of-multiline-input.html
editing/input/reveal-contenteditable-on-input-vertically.html
editing/input/reveal-contenteditable-on-paste-vertically.html
editing/input/reveal-edit-on-input-vertically.html
editing/input/reveal-edit-on-paste-vertically.html

  • editing/Editor.cpp:

(WebCore::Editor::insertTextWithoutSendingTextEvent):
(WebCore::Editor::revealSelectionAfterEditingOperation):

  • editing/input/caret-at-the-edge-of-contenteditable-expected.png: Added.
  • editing/input/caret-at-the-edge-of-contenteditable-expected.txt: Added.
  • editing/input/caret-at-the-edge-of-contenteditable.html: Added.
  • editing/input/caret-at-the-edge-of-input-expected.png: Added.
  • editing/input/caret-at-the-edge-of-input-expected.txt: Added.
  • editing/input/caret-at-the-edge-of-input.html: Added.
  • editing/input/resources/reveal-utilities.js: Added.
  • editing/input/reveal-caret-of-multiline-contenteditable-expected.png: Added.
  • editing/input/reveal-caret-of-multiline-contenteditable-expected.txt: Added.
  • editing/input/reveal-caret-of-multiline-contenteditable.html: Added.
  • editing/input/reveal-caret-of-multiline-input-expected.png: Added.
  • editing/input/reveal-caret-of-multiline-input-expected.txt: Added.
  • editing/input/reveal-caret-of-multiline-input.html: Added.
  • editing/input/reveal-contenteditable-on-input-vertically-expected.txt: Added.
  • editing/input/reveal-contenteditable-on-input-vertically.html: Added.
  • editing/input/reveal-contenteditable-on-paste-vertically-expected.txt: Added.
  • editing/input/reveal-contenteditable-on-paste-vertically.html: Added.
  • editing/input/reveal-edit-on-input-vertically-expected.txt: Added.
  • editing/input/reveal-edit-on-input-vertically.html: Added.
  • editing/input/reveal-edit-on-paste-vertically-expected.txt: Added.
  • editing/input/reveal-edit-on-paste-vertically.html: Added.
  • platform/chromium/test_expectations.txt: Mark new tests as FAIL to grab results from bots.
  • platform/gtk/test_expectations.txt: Mark new tests as FAIL to grab results from bots.
  • platform/qt/test_expectations.txt: Mark new tests as FAIL to grab results from bots.
  • platform/win/test_expectations.txt: Mark new tests as FAIL to grab results from bots.
8:53 AM Changeset in webkit [103072] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Touch RenderStyle in an attempt to fix linking errors on Chromium Windows bots.

  • rendering/style/RenderStyle.h:
8:51 AM Changeset in webkit [103071] by Philippe Normand
  • 10 edits
    3 adds in trunk/LayoutTests

Unreviewed, GTK rebaseline of some svg tests. Also unskipping the
ones I got passing on my 32-bit Release build. Let's see how the
bots cope with those.

  • platform/gtk/Skipped:
  • platform/gtk/svg/W3C-SVG-1.1/animate-elem-80-t-expected.txt:
  • platform/gtk/svg/batik/masking/maskRegions-expected.txt:
  • platform/gtk/svg/custom/embedding-external-svgs-expected.txt:
  • platform/gtk/svg/custom/image-with-transform-clip-filter-expected.txt:
  • platform/gtk/svg/custom/marker-strokeWidth-changes-expected.txt: Added.
  • platform/gtk/svg/dom/css-transforms-expected.txt:
  • platform/gtk/svg/filters/feColorMatrix-values-expected.txt:
  • platform/gtk/svg/overflow/overflow-on-inner-svg-element-expected.txt:
  • platform/gtk/svg/wicd/test-scalable-background-image1-expected.txt: Added.
  • platform/gtk/svg/zoom/page/zoom-mask-with-percentages-expected.txt:
  • platform/gtk/svg/zoom/text/zoom-hixie-mixed-009-expected.txt: Added.
8:31 AM Changeset in webkit [103070] by nduca@chromium.org
  • 3 edits in trunk/Source

[chromium] DelayBasedTimeSource should not change its timebase on late ticks
https://bugs.webkit.org/show_bug.cgi?id=74573

The original DelayBasedTimeSource was designed to shift its timebase
to the tick time when a tick came back "late." The rationale was that it is
better to just "start fresh" after a stutter. After profiling this,
this time-rebasing just destabilizes frame rate anytime the thread gets
loaded. This patch keeps the timebase stationary, leading to vastly
smoother framerates when the message loop is under load.

Reviewed by James Robinson.

  • platform/graphics/chromium/cc/CCDelayBasedTimeSource.cpp:

(WebCore::CCDelayBasedTimeSource::updateState):

6:58 AM Changeset in webkit [103069] by Philippe Normand
  • 2 edits in trunk/Tools

Unreviewed, skipping 3 failing GTK API tests.

  • Scripts/run-gtk-tests:
6:46 AM Changeset in webkit [103068] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[GTK] Use bit field for bool members of WebKitWindowPropertiesPrivate
https://bugs.webkit.org/show_bug.cgi?id=74713

Reviewed by Gustavo Noronha Silva.

Most of the members are bools, so it reduces the memory footprint.

  • UIProcess/API/gtk/WebKitWindowProperties.cpp:
6:41 AM Changeset in webkit [103067] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[GTK] Window frame should be 0x0 when the toplevel window is not visible
https://bugs.webkit.org/show_bug.cgi?id=74709

Reviewed by Gustavo Noronha Silva.

  • UIProcess/API/gtk/WebKitUIClient.cpp:

(getWindowFrame): Check also whether the toplevel is visible
before getting its size and position.

6:19 AM Changeset in webkit [103066] by Philippe Normand
  • 2 edits in trunk/Tools

Unreviewed, GTK API tests build fix attempt.

  • Scripts/run-gtk-tests: Run xvfb on a display not used by NRWT.
6:17 AM Changeset in webkit [103065] by commit-queue@webkit.org
  • 8 edits
    11 deletes in trunk

Unreviewed, rolling out r103062.
http://trac.webkit.org/changeset/103062
https://bugs.webkit.org/show_bug.cgi?id=74715

It broke many tests (Requested by Ossy on #webkit).

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

Source/WebCore:

  • html/HTMLAttributeNames.in:
  • html/HTMLOListElement.cpp:

(WebCore::HTMLOListElement::HTMLOListElement):
(WebCore::HTMLOListElement::parseMappedAttribute):

  • html/HTMLOListElement.h:

(WebCore::HTMLOListElement::start):

  • html/HTMLOListElement.idl:
  • rendering/RenderListItem.cpp:

(WebCore::previousListItem):
(WebCore::RenderListItem::calcValue):
(WebCore::RenderListItem::explicitValueChanged):
(WebCore::RenderListItem::updateListMarkerNumbers):

  • rendering/RenderListItem.h:

LayoutTests:

  • fast/lists/ol-reversed-dynamic-expected.txt: Removed.
  • fast/lists/ol-reversed-dynamic-simple-expected.txt: Removed.
  • fast/lists/ol-reversed-dynamic-simple.html: Removed.
  • fast/lists/ol-reversed-dynamic.html: Removed.
  • fast/lists/ol-reversed-nested-items-expected.txt: Removed.
  • fast/lists/ol-reversed-nested-items.html: Removed.
  • fast/lists/ol-reversed-nested-list-expected.txt: Removed.
  • fast/lists/ol-reversed-nested-list.html: Removed.
  • fast/lists/ol-reversed-simple-expected.txt: Removed.
  • fast/lists/ol-reversed-simple.html: Removed.
  • fast/lists/ol-reversed-simple.xhtml: Removed.
6:14 AM Changeset in webkit [103064] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK test_expectations update.

  • platform/gtk/test_expectations.txt:
5:59 AM Changeset in webkit [103063] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK test_expectations update.

  • platform/gtk/test_expectations.txt:
5:43 AM Changeset in webkit [103062] by alexis.menard@openbossa.org
  • 8 edits
    11 adds in trunk

Add support for <ol reversed>.
https://bugs.webkit.org/show_bug.cgi?id=36724

The reversed attribute makes an ordered list appear with marker values
decreasing from n, where n is the number of items.
See: http://www.whatwg.org/specs/web-apps/current-work/#attr-ol-reversed

Patch by Alexis Menard <alexis.menard@openbossa.org>, Jakub Wieczorek <jwieczorek@webkit.org> on 2011-12-16
Reviewed by Darin Adler.

Source/WebCore:

Tests: fast/lists/ol-reversed-dynamic-simple.html

fast/lists/ol-reversed-dynamic.html
fast/lists/ol-reversed-nested-items.html
fast/lists/ol-reversed-nested-list.html
fast/lists/ol-reversed-simple.html

  • html/HTMLAttributeNames.in:
  • html/HTMLOListElement.cpp:

(WebCore::HTMLOListElement::HTMLOListElement):
(WebCore::HTMLOListElement::parseMappedAttribute):
(WebCore::HTMLOListElement::updateItemValues):
(WebCore::HTMLOListElement::recalculateItemCount):

  • html/HTMLOListElement.h:

(WebCore::HTMLOListElement::start):
(WebCore::HTMLOListElement::isReversed):
(WebCore::HTMLOListElement::itemCountChanged):
(WebCore::HTMLOListElement::itemCount):

  • html/HTMLOListElement.idl:
  • rendering/RenderListItem.cpp:

(WebCore::RenderListItem::nextListItem):
(WebCore::previousListItem):
(WebCore::RenderListItem::calcValue):
(WebCore::RenderListItem::explicitValueChanged):
(WebCore::previousOrNextItem):
(WebCore::RenderListItem::updateListMarkerNumbers):

  • rendering/RenderListItem.h:

LayoutTests:

  • fast/lists/ol-reversed-dynamic-expected.txt: Added.
  • fast/lists/ol-reversed-dynamic-simple-expected.txt: Added.
  • fast/lists/ol-reversed-dynamic-simple.html: Added.
  • fast/lists/ol-reversed-dynamic.html: Added.
  • fast/lists/ol-reversed-nested-items-expected.txt: Added.
  • fast/lists/ol-reversed-nested-items.html: Added.
  • fast/lists/ol-reversed-nested-list-expected.txt: Added.
  • fast/lists/ol-reversed-nested-list.html: Added.
  • fast/lists/ol-reversed-simple-expected.txt: Added.
  • fast/lists/ol-reversed-simple.html: Added.
5:39 AM Changeset in webkit [103061] by Philippe Normand
  • 2 edits in trunk/Tools

Unreviewed, unskipping GTK testdownload. Should pass on the bot now.

  • Scripts/run-gtk-tests:
5:35 AM Changeset in webkit [103060] by Csaba Osztrogonác
  • 5 edits in trunk/Tools

[Qt] Fix the build for newer Qt5
https://bugs.webkit.org/show_bug.cgi?id=74703

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2011-12-16
Reviewed by Csaba Osztrogonác.

  • QtTestBrowser/launcherwindow.h: Add missing forward declaration.
  • DumpRenderTree/qt/EventSenderQt.cpp:

(EventSender::sendTouchEvent): Allocate QTouchDevice and use with QTouchEvent constructor.

  • WebKitTestRunner/qt/EventSenderProxyQt.cpp: Ditto.

(WTR::EventSenderProxy::sendTouchEvent):

  • MiniBrowser/qt/MiniBrowserApplication.cpp:

(MiniBrowserApplication::sendTouchEvent): Ditto.
(MiniBrowserApplication::notify): Adapt to changed API for marking primary touch point.

5:04 AM Changeset in webkit [103059] by senorblanco@chromium.org
  • 4 edits in trunk/Source

Enable CSS_FILTERS in Chromium.
https://bugs.webkit.org/show_bug.cgi?id=74334

Reviewed by Chris Marrin.

Source/WebCore:

Covered by css3/filters (when enabled).

  • platform/graphics/filters/FilterOperation.h:

(WebCore::PassthroughFilterOperation::PassthroughFilterOperation):
Since wingdi.h #define's PASSTHROUGH, #undef it after the includes.

Source/WebKit/chromium:

  • features.gypi:
4:41 AM Changeset in webkit [103058] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Detect and force clean build when feature defines are added

Reviewed by Ossy.

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

4:22 AM Changeset in webkit [103057] by morrita@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed, test_expectations.txt update.

  • platform/chromium/test_expectations.txt:
4:19 AM Changeset in webkit [103056] by Patrick Gansterer
  • 2 edits in trunk/Source/WebCore

Unreviewed WinCE build fix after r102979.

Make everHadLayout() public accessible as it was before the change.

  • rendering/RenderObject.h:

(WebCore::RenderObject::everHadLayout):

3:28 AM Changeset in webkit [103055] by morrita@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed, test_expectations.txt update.

  • platform/chromium/test_expectations.txt:
3:27 AM Changeset in webkit [103054] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

[qt][wk2] Viewport info panel shows wrong current scale
https://bugs.webkit.org/show_bug.cgi?id=74613

Patch by Michael Bruning <michael.bruning@nokia.com> on 2011-12-16
Reviewed by Kenneth Rohde Christiansen.

  • UIProcess/API/qt/qwebviewportinfo.cpp:

(QWebViewportInfo::currentScale): Added division by devicePixelRatio. Also
added emission of currenScaleUpdated signal when the viewport constraints
have been updated.
(QWebViewportInfo::didUpdateViewportConstraints):

  • UIProcess/API/qt/qwebviewportinfo_p.h: Changed return type of

currentScale to QVariant as it depends on the viewport interaction engine
now.

  • UIProcess/qt/QtViewportInteractionEngine.cpp:

(WebKit::QtViewportInteractionEngine::ensureContentWithinViewportBoundary): Changed
to use currentCSSScale for getting the current css scale.
(WebKit::QtViewportInteractionEngine::currentCSSScale): Added.

  • UIProcess/qt/QtViewportInteractionEngine.h: Added method currentCSSScale.
3:10 AM Changeset in webkit [103053] by morrita@google.com
  • 4 edits
    2 deletes in trunk/LayoutTests

Unreviewed, rolling out r103044.
http://trac.webkit.org/changeset/103044
https://bugs.webkit.org/show_bug.cgi?id=72940

Added test doesn't pass on Mac SL and Mac Chromium

  • editing/spelling/spellcheck-async-mutation-expected.txt: Removed.
  • editing/spelling/spellcheck-async-mutation.html: Removed.
  • platform/gtk/Skipped:
  • platform/mac-leopard/Skipped:
  • platform/qt/Skipped:
2:51 AM Changeset in webkit [103052] by hans@chromium.org
  • 2 edits in trunk/Source/WebCore

IndexedDB: Don't prefetch values from key cursors
https://bugs.webkit.org/show_bug.cgi?id=74604

Reviewed by Tony Chang.

Since index key cursors don't have values, prefetching should not try
to retrieve them. Doing so trips an ASSERT in debug builds.

This will be tested Chromium-side.

  • storage/IDBCursorBackendImpl.cpp:

(WebCore::IDBCursorBackendImpl::prefetchContinueInternal):

2:48 AM Changeset in webkit [103051] by commit-queue@webkit.org
  • 4 edits in trunk

[Forms] The "maxlength" attribute on "textarea" tag miscounts hard newlines
https://bugs.webkit.org/show_bug.cgi?id=74686

Patch by Yosifumi Inoue <yosin@chromium.org> on 2011-12-16
Reviewed by Kent Tamura.

Source/WebCore:

This patch counts LF in textarea value as two for LF to CRLF conversion on submission.

No new tests. Existing tests cover all changes.

  • html/HTMLTextAreaElement.cpp:

(WebCore::computeLengthForSubmission): Count LF as 2 for CR LF conversion on submission.
(WebCore::HTMLTextAreaElement::handleBeforeTextInsertedEvent): Use computeLengthForSubmission instead of numGraphemeClusters.
(WebCore::HTMLTextAreaElement::tooLong): Use computeLengthForSubmission instead of numGraphemeClusters.

LayoutTests:

  • fast/forms/script-tests/textarea-maxlength.js: Doubles maxlength for counting LF as two chars.
2:44 AM Changeset in webkit [103050] by morrita@google.com
  • 4 edits
    2 deletes in trunk

Unreviewed, rolling out r103045.
http://trac.webkit.org/changeset/103045
https://bugs.webkit.org/show_bug.cgi?id=74590

Breaks select-script-onchange.html on Chromium Windows

Source/WebCore:

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::typeAheadFind):

LayoutTests:

  • fast/events/onchange-select-popup-expected.txt:
  • fast/forms/select/menulist-type-ahead-find-expected.txt: Removed.
  • fast/forms/select/menulist-type-ahead-find.html: Removed.
2:36 AM Changeset in webkit [103049] by Csaba Osztrogonác
  • 3 edits
    1 add in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt/Skipped: Skip a failing test (regression) to paint the bot green.
  • platform/qt/fast/css/bidi-override-in-anonymous-block-expected.png: Added.
  • platform/qt/fast/css/bidi-override-in-anonymous-block-expected.txt:
2:16 AM Changeset in webkit [103048] by Carlos Garcia Campos
  • 4 edits in trunk

[GTK] Update NEWS and configure.ac for 1.7.3 release
https://bugs.webkit.org/show_bug.cgi?id=74699

Reviewed by Philippe Normand.

.:

  • configure.ac: Bumped version number.

Source/WebKit/gtk:

  • NEWS: Added release notes for 1.7.3.
2:05 AM Changeset in webkit [103047] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fix make distcheck.

  • GNUmakefile.list.am: Add missing header file.
1:21 AM Changeset in webkit [103046] by haraken@chromium.org
  • 2 edits in trunk/Tools

[Refactoring] Remove all global variables from prepare-ChangeLog
https://bugs.webkit.org/show_bug.cgi?id=74681

Reviewed by Ryosuke Niwa.

We are planning to write unit-tests for prepare-ChangeLog in a run-leaks_unittest
manner. This bug is one of the incremental refactorings to remove all top-level
code and global variables from prepare-ChangeLog. In this patch,
we make the following global variables be used only through parameter passing.
This patch removes all global variables from prepare-ChangeLog.

  • $mergeBase
  • $gitCommit
  • $gitIndex
  • Scripts/prepare-ChangeLog:

(generateFunctionLists):
(changeLogNameFromArgs):
(changeLogEmailAddressFromArgs):
(generateNewChangeLogs):
(printDiff):
(diffFromToString):
(diffCommand):
(statusCommand):
(createPatchCommand):
(generateFileList):
(isConflictStatus):

1:08 AM Changeset in webkit [103045] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

[Forms] Selection change by type-ahead doesn't fire 'change' event
https://bugs.webkit.org/show_bug.cgi?id=74590

Patch by Yosifumi Inoue <yosin@chromium.org> on 2011-12-16
Reviewed by Kent Tamura.

Source/WebCore:

Fire onchange even for type ahead selection.

Test: fast/forms/select/menulist-type-ahead-find.html

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::typeAheadFind): Add DispatchChangeEvent when
calling selectOption method.

LayoutTests:

  • fast/events/onchange-select-popup.html: Add "PASS: change event fired." for type ahread test.
  • fast/forms/select/menulist-type-ahead-find-expected.txt: Added.
  • fast/forms/select/menulist-type-ahead-find.html: Added.
1:04 AM Changeset in webkit [103044] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk/LayoutTests

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-16
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:
12:51 AM Changeset in webkit [103043] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

Don't call Document::body() twice in the same function.
<http://webkit.org/b/74683>

Reviewed by Dan Bernstein.

Document::body() is O(n), so we should avoid calling it multiple
times unnecessarily.

  • dom/Document.cpp:

(WebCore::Document::updateLayoutIgnorePendingStylesheets):

12:49 AM Changeset in webkit [103042] by morrita@google.com
  • 2 edits in trunk/LayoutTests

Marking some as fail.

  • platform/chromium/test_expectations.txt:
12:35 AM Changeset in webkit [103041] by commit-queue@webkit.org
  • 9 edits in trunk/Source/WebCore

[Chromium] Add trace events for decoding and drawing images.
https://bugs.webkit.org/show_bug.cgi?id=74547

Patch by Daniel Sievers <sievers@chromium.org> on 2011-12-16
Reviewed by James Robinson.

  • platform/graphics/skia/ImageSkia.cpp:

(WebCore::drawResampledBitmap):
(WebCore::paintSkBitmap):
(WebCore::Image::drawPattern):

  • platform/graphics/skia/NativeImageSkia.cpp:

(WebCore::NativeImageSkia::resizedBitmap):

  • platform/image-decoders/bmp/BMPImageDecoder.cpp:

(WebCore::BMPImageDecoder::decode):

  • platform/image-decoders/gif/GIFImageDecoder.cpp:

(WebCore::GIFImageDecoder::decode):

  • platform/image-decoders/ico/ICOImageDecoder.cpp:

(WebCore::ICOImageDecoder::decode):

  • platform/image-decoders/jpeg/JPEGImageDecoder.cpp:

(WebCore::JPEGImageDecoder::decode):

  • platform/image-decoders/png/PNGImageDecoder.cpp:

(WebCore::PNGImageDecoder::decode):

  • platform/image-decoders/webp/WEBPImageDecoder.cpp:

(WebCore::WEBPImageDecoder::decode):

12:28 AM Changeset in webkit [103040] by Philippe Normand
  • 2 edits in trunk/Tools

[GTK] Rounding errors on 32-bit machines causes tests to fail
https://bugs.webkit.org/show_bug.cgi?id=72254

Initial patch by vanuan@gmail.com.
Reviewed by Martin Robinson.

  • Scripts/webkitdirs.pm:

(runAutogenForAutotoolsProjectIfNecessary): Pass additional
CXXFLAGS to autogen in an attempt to harmonize floating point
values between 32-bit and 64-bit architectures.

12:27 AM Changeset in webkit [103039] by morrita@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed expectations update.

  • fast/ruby/ruby-remove-no-base-expected.txt:
12:18 AM Changeset in webkit [103038] by Martin Robinson
  • 2 edits in trunk/Tools

[GTK] Make distcheck fails during the install
https://bugs.webkit.org/show_bug.cgi?id=74274

No review, since this is a build fix.

  • GNUmakefile.am: Remove BUILT_SOURCES from the dependency list for the gtkdoc

step. BUILT_SOURCES includes forwarding header generation for WebKit2, which
always runs. This means that the gtkdoc step was always running when make was
invoked. Generating gtkdoc during 'make install' was triggering a race condition
with the library file. Later we can fix generate-forwarding-headers and unbreak
'make docs,' but this bandaid is sufficient to let us release.

12:18 AM Changeset in webkit [103037] by Philippe Normand
  • 3 edits
    1 add in trunk/LayoutTests

Unreviewed, GTK rebaseline and test_expectations update.

  • platform/gtk/fast/css/bidi-override-in-anonymous-block-expected.txt:
  • platform/gtk/fast/ruby/ruby-remove-no-base-expected.txt: Added.
  • platform/gtk/test_expectations.txt:
12:10 AM Changeset in webkit [103036] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Qt rebaselines for window properties.

  • platform/qt/fast/dom/Window/window-properties-expected.txt:
  • platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
12:04 AM Changeset in webkit [103035] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Mac rebaseline after r102918.

  • platform/mac/fast/dom/Window/window-property-descriptors-expected.txt:

Dec 15, 2011:

11:59 PM Changeset in webkit [103034] by Martin Robinson
  • 6 edits in trunk/Source

Fix 'make dist' in preparation for the GTK+ release.

Source/JavaScriptCore:

  • GNUmakefile.list.am: Add missing header.

Source/WebCore:

  • GNUmakefile.list.am: Add missing header.

Source/WebKit2:

  • GNUmakefile.am: Add missing header.
11:55 PM Changeset in webkit [103033] by morrita@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed expectations update.

  • html5lib/webkit-resumer-expected.txt:
11:26 PM Changeset in webkit [103032] by morrita@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed test_expectations.txt update.

  • platform/chromium/test_expectations.txt:
11:18 PM Changeset in webkit [103031] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Don't create empty files on error.
https://bugs.webkit.org/show_bug.cgi?id=74373

Patch by Rafael Ávila de Espíndola <rafael.espindola@gmail.com> on 2011-12-15
Reviewed by Ryosuke Niwa.

  • css/makeprop.pl:
  • css/makevalues.pl:
  • make-hash-tools.pl:
11:14 PM Changeset in webkit [103030] by commit-queue@webkit.org
  • 10 edits
    1 add in trunk/Source

PODIntervalTree takes 1.7MB memory on www.nytimes.com.
https://bugs.webkit.org/show_bug.cgi?id=73712

Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2011-12-15
Reviewed by Kenneth Russell.

Source/WebCore:

For a RenderBlock which has floating objects inside, we will create a PODIntervalTree and a PODArena with
at least one 16KB chunk. A page could have a large number of such RenderBlocks and they could take huge
amount of memory. To fix that, we can create a shared PODArena in the root RenderView. Instead of having
their own PODArena, each RenderBlock with floating objects could share this PODArena to reduce memory consumption.

The shared PODArena could grow unboundedly if we keep removing and adding floating objects. We can fix that
by reusing the freed memory in each chunk. However, a PODArena could allocate objects of different sizes and
it would be complex to keep track of the size for each allocation in PODArena. To address that, this patch
added class PODFreeListArena<T> which only allocates objects of type T (hence the same size). We can then use a
free list to track freed nodes inside the chunk and reuse the free nodes in future allocations.

Manually tested on nytimes.com and the heap consumption of PODIntervalTree reduced from 1.7MB to 16KB. Performance
doesn't regress on test PerformanceTests/Layout/floats.html.

  • WebCore.xcodeproj/project.pbxproj: add new header file PODFreeListArena.h.
  • platform/PODArena.h:

(WebCore::PODArena::~PODArena): change dtor to virtual.
(WebCore::PODArena::Chunk::~Chunk): ditto.

  • platform/PODFreeListArena.h: Added.

(WebCore::PODFreeListArena::create):
(WebCore::PODFreeListArena::allocateObject): allocate an object.
(WebCore::PODFreeListArena::freeObject): free an object, find the right chunk and update its free list.
(WebCore::PODFreeListArena::allocate): allocate memory from the free list or current chunk.
(WebCore::PODFreeListArena::FreeListChunk::FreeListChunk): add m_freeList to track freed cells.
(WebCore::PODFreeListArena::FreeListChunk::allocate): reuse a free cell if there is one.
(WebCore::PODFreeListArena::FreeListChunk::free): make the memory taken by this object is free, and link it to m_freeList.
(WebCore::PODFreeListArena::FreeListChunk::contains): check if a pointer is inside this chunk.
(WebCore::PODFreeListArena::FreeListChunk::hasFreeList): check if this chunk has free cells.

  • platform/PODRedBlackTree.h:

(WebCore::PODRedBlackTree::PODRedBlackTree): take PODFreeListArena instead of PODArena, since nodes of a particular PODRedBlackTree

is always of the same size.

(WebCore::PODRedBlackTree::clear): mark all nodes before clearing the tree.
(WebCore::PODRedBlackTree::initIfNeeded): add initIfNeeded to take an external PODFreeListArena.
(WebCore::PODRedBlackTree::add):
(WebCore::PODRedBlackTree::deleteNode): mark the node free in arena after it is removed from the tree.
(WebCore::PODRedBlackTree::markFree): mark all node free in the tree.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::insertFloatingObject):
(WebCore::RenderBlock::addOverhangingFloats):
(WebCore::RenderBlock::addIntrudingFloats):
(WebCore::RenderBlock::FloatingObjects::computePlacedFloatsTree): passing the shared PODFreeListArena to m_placedFloatsTree.

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::FloatingObjects::FloatingObjects):

  • rendering/RenderView.cpp:

(WebCore::RenderView::intervalArena): create the shared PODFreeListArena lazily.

  • rendering/RenderView.h:

Source/WebKit/chromium:

Change the test code in chromium port since PODRedBlackTree now takes PODFreeListArena<T>
in its constructor.

  • tests/PODRedBlackTreeTest.cpp:

(WebCore::TEST):

11:02 PM Changeset in webkit [103029] by dmazzoni@google.com
  • 26 edits in trunk/LayoutTests

Unreviewed; rebaseline Chromium speech input image tests.

10:46 PM Changeset in webkit [103028] by weinig@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

<rdar://problem/10552550> JavaScriptCore uses obsolete 'cpy' mnemonic in ARM assembly

Reviewed by Gavin Barraclough.

Original patch by Jim Grosbach.

  • jit/JITStubs.cpp:

(JSC::ctiTrampoline):
(JSC::ctiVMThrowTrampoline):
Replace uses of the 'cpy' mnemonic with 'mov'.

10:40 PM Changeset in webkit [103027] by tony@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rollout r102825 because it didn't improve performance.
https://bugs.webkit.org/show_bug.cgi?id=74622

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::styleForElement):
(WebCore::CSSStyleSelector::pseudoStyleForElement):

10:02 PM Changeset in webkit [103026] by eric@webkit.org
  • 4 edits in trunk/Tools

NRWT should use free + inactive memory for default_child_processes on OS X (and never return < 1 process)
https://bugs.webkit.org/show_bug.cgi?id=74650

Reviewed by Adam Barth.

  • Scripts/webkitpy/common/system/platforminfo.py:

(PlatformInfo._compute_bytes_from_vm_stat_output):

  • Scripts/webkitpy/layout_tests/port/base.py:

(Port.default_child_processes):

  • Scripts/webkitpy/layout_tests/port/base_unittest.py:

(PortTest.test_default_child_processes):

10:00 PM Changeset in webkit [103025] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

IndexedDB: Clean up WebIDBObjectStore createIndex temp code
https://bugs.webkit.org/show_bug.cgi?id=74205

Patch by Joshua Bell <jsbell@chromium.org> on 2011-12-15
Reviewed by Darin Fisher.

Remove a method and an implementation that only needed for
older Chromium revisions.

  • public/WebIDBObjectStore.h:

(WebKit::WebIDBObjectStore::createIndex):

9:56 PM Changeset in webkit [103024] by fpizlo@apple.com
  • 2 edits in trunk/Tools

bencher script should support remote benchmarking on platforms that don't have ruby
https://bugs.webkit.org/show_bug.cgi?id=74659

Rubber-stamped by Sam Weinig.

Added the ability to have bencher generate a benchmarking playload that consists of
copies of all of the benchmarks, optionally copies of all of the frameworks and
binaries to run all of the VMs, and a sh script that runs the benchmarks in random
order, which then spits out a raw results file that bencher can parse.

In normal operating mode, you never see this, as it just generates the payload and
script internally, runs it, parses the results, and spits them out.

The --remote mode has been changed to use this style, so any remote host that has
sshd, passwordless login support, a ~/.bencher file that points to a "tempPath", and
a sh-compatible shell can be used for remote benchmarking.

The feature to include VMs in the benchmarking payload is by default only activated
when using --remote, but it can also be activated when doing local benchmarking; the
benefit is that you remove any pathname-related performance pathologies. All VMs
become equal because they are all located in
/path/to/bencher/directory/temp/benchdata/vmN where N is the configuration number
(usually 0 or 1).

Also fixed bugs in the DumpRenderTree support. It's now possible to run all benchmarks
through DumpRenderTree. This is only a bit slower than running in jsc.

  • Scripts/bencher:
9:32 PM Changeset in webkit [103023] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Value profiling should distinguished between NaN and non-NaN doubles
https://bugs.webkit.org/show_bug.cgi?id=74682

Reviewed by Gavin Barraclough.

Added PredictDoubleReal and PredictDoubleNaN. PredictDouble is now the union
of the two.

  • bytecode/PredictedType.cpp:

(JSC::predictionToString):
(JSC::predictionFromValue):

  • bytecode/PredictedType.h:

(JSC::isDoubleRealPrediction):
(JSC::isDoublePrediction):

9:22 PM Changeset in webkit [103022] by commit-queue@webkit.org
  • 1 edit
    4 adds in trunk/Source/WebKit

[BlackBerry] Upstream BlackBerry WebCoreSupport drag client and context menu client
https://bugs.webkit.org/show_bug.cgi?id=74643

Patch by Jacky Jiang <zhajiang@rim.com> on 2011-12-15
Reviewed by Rob Buis.

Initial upstream, no new tests.

  • blackberry/WebCoreSupport/ContextMenuClientBlackBerry.cpp: Added.
  • blackberry/WebCoreSupport/ContextMenuClientBlackBerry.h: Added.
  • blackberry/WebCoreSupport/DragClientBlackBerry.cpp: Added.
  • blackberry/WebCoreSupport/DragClientBlackBerry.h: Added.
9:21 PM Changeset in webkit [103021] by tony@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Chromium Windows (Tests) is failing to build
https://bugs.webkit.org/show_bug.cgi?id=74320

Reviewed by Kenneth Russell.

Roll chromium deps to r114686 to pull in a change to how generated
headers include files from third_party/WebKit. This should make the
file path shorter, reducing the chance of hitting the 260 char path
limit on Windows.

9:09 PM Changeset in webkit [103020] by rniwa@webkit.org
  • 7 edits in trunk/Source/WebCore

sizeof(RenderObject) is 32 instead of 24 on Windows
https://bugs.webkit.org/show_bug.cgi?id=74646

Reviewed by Darin Adler.

Make all bitfields in RenderObject to unsigned and wrap them around by RenderObjectBitfields.
Also add a compilation time assertion to make sure we won't grow RenderObject's size unintentionally.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::layoutBlockChild):
(WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
(WebCore::RenderBlock::layoutColumns):

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::FloatWithRect::FloatWithRect):

  • rendering/RenderObject.cpp:

(WebCore::SameSizeAsRenderObject::~SameSizeAsRenderObject):
(WebCore::RenderObject::RenderObject):
(WebCore::RenderObject::markContainingBlocksForLayout):
(WebCore::RenderObject::setPreferredLogicalWidthsDirty):
(WebCore::RenderObject::invalidateContainerPreferredLogicalWidths):
(WebCore::RenderObject::styleWillChange):
(WebCore::RenderObject::styleDidChange):
(WebCore::RenderObject::willBeDestroyed):
(WebCore::RenderObject::updateDragState):

  • rendering/RenderObject.h:

(WebCore::RenderObject::hasCounterNodeMap):
(WebCore::RenderObject::setHasCounterNodeMap):
(WebCore::RenderObject::childrenInline):
(WebCore::RenderObject::setChildrenInline):
(WebCore::RenderObject::hasColumns):
(WebCore::RenderObject::setHasColumns):
(WebCore::RenderObject::inRenderFlowThread):
(WebCore::RenderObject::setInRenderFlowThread):
(WebCore::RenderObject::isAnonymous):
(WebCore::RenderObject::setIsAnonymous):
(WebCore::RenderObject::isAnonymousBlock):
(WebCore::RenderObject::isFloating):
(WebCore::RenderObject::isPositioned):
(WebCore::RenderObject::isRelPositioned):
(WebCore::RenderObject::isText):
(WebCore::RenderObject::isBox):
(WebCore::RenderObject::isInline):
(WebCore::RenderObject::isDragging):
(WebCore::RenderObject::isReplaced):
(WebCore::RenderObject::isHorizontalWritingMode):
(WebCore::RenderObject::hasLayer):
(WebCore::RenderObject::hasBoxDecorations):
(WebCore::RenderObject::needsLayout):
(WebCore::RenderObject::selfNeedsLayout):
(WebCore::RenderObject::needsPositionedMovementLayout):
(WebCore::RenderObject::needsPositionedMovementLayoutOnly):
(WebCore::RenderObject::posChildNeedsLayout):
(WebCore::RenderObject::needsSimplifiedNormalFlowLayout):
(WebCore::RenderObject::normalChildNeedsLayout):
(WebCore::RenderObject::preferredLogicalWidthsDirty):
(WebCore::RenderObject::hasOverflowClip):
(WebCore::RenderObject::hasTransform):
(WebCore::RenderObject::node):
(WebCore::RenderObject::setPositioned):
(WebCore::RenderObject::setRelPositioned):
(WebCore::RenderObject::setFloating):
(WebCore::RenderObject::setInline):
(WebCore::RenderObject::setHasBoxDecorations):
(WebCore::RenderObject::setIsText):
(WebCore::RenderObject::setIsBox):
(WebCore::RenderObject::setReplaced):
(WebCore::RenderObject::setHorizontalWritingMode):
(WebCore::RenderObject::setHasOverflowClip):
(WebCore::RenderObject::setHasLayer):
(WebCore::RenderObject::setHasTransform):
(WebCore::RenderObject::setHasReflection):
(WebCore::RenderObject::hasReflection):
(WebCore::RenderObject::setHasMarkupTruncation):
(WebCore::RenderObject::hasMarkupTruncation):
(WebCore::RenderObject::selectionState):
(WebCore::RenderObject::setSelectionState):
(WebCore::RenderObject::hasSelectedChildren):
(WebCore::RenderObject::isMarginBeforeQuirk):
(WebCore::RenderObject::isMarginAfterQuirk):
(WebCore::RenderObject::setMarginBeforeQuirk):
(WebCore::RenderObject::setMarginAfterQuirk):
(WebCore::RenderObject::everHadLayout):
(WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
(WebCore::RenderObject::RenderObjectBitfields::selectionState):
(WebCore::RenderObject::RenderObjectBitfields::setSelectionState):
(WebCore::RenderObject::setNeedsPositionedMovementLayout):
(WebCore::RenderObject::setNormalChildNeedsLayout):
(WebCore::RenderObject::setPosChildNeedsLayout):
(WebCore::RenderObject::setNeedsSimplifiedNormalFlowLayout):
(WebCore::RenderObject::setPaintBackground):
(WebCore::RenderObject::setIsDragging):
(WebCore::RenderObject::setEverHadLayout):
(WebCore::RenderObject::setNeedsLayout):
(WebCore::RenderObject::setChildNeedsLayout):

  • rendering/RenderObjectChildList.cpp:

(WebCore::RenderObjectChildList::removeChildNode):

  • rendering/svg/RenderSVGContainer.cpp:

(WebCore::RenderSVGContainer::layout):

8:41 PM Changeset in webkit [103019] by leo.yang@torchmobile.com.cn
  • 1 edit
    1 add in trunk/Source/WebCore

[BlackBerry] Upstream BlackBerry porting of pluginView
https://bugs.webkit.org/show_bug.cgi?id=73397

Patch by Wei Charles <charles.wei@torchmobile.com.cn> on 2011-12-15
Reviewed by Daniel Bates.

No new tests for now.

  • plugins/blackberry/PluginViewBlackBerry.cpp: Added.
8:23 PM Changeset in webkit [103018] by commit-queue@webkit.org
  • 5 edits in trunk

IndexedDB: Can't pass DOMStringList to IDBDatabase.transaction()
https://bugs.webkit.org/show_bug.cgi?id=74452

Patch by Joshua Bell <jsbell@chromium.org> on 2011-12-15
Reviewed by Adam Barth.

Source/WebCore:

V8 code generator generated checks for DOMStringList arguments, then
deferred to a function that only handled array inputs. This previously
worked for IndexedDB because it would fall into a now-removed default
handler.

Modified storage/indexeddb/transaction-basics.html to test this.

  • bindings/v8/V8Binding.cpp:

(WebCore::v8ValueToWebCoreDOMStringList):

LayoutTests:

  • storage/indexeddb/transaction-basics-expected.txt:
  • storage/indexeddb/transaction-basics.html:
8:19 PM Changeset in webkit [103017] by adamk@chromium.org
  • 2 edits in trunk/Source/WebCore

Make Element::setAttributeInternal inline in an attempt to avoid function call overhead
https://bugs.webkit.org/show_bug.cgi?id=74638

Reviewed by Andreas Kling.

In r102695, I factored common code in setAttribute into
Element::setAttributeInternal. This may have caused a perf regression
due to the extra function call, which inlining should eliminate.

Running Dromaeo locally suggests that this will improve performance
by ~9% on the "dom-attr element.property = value" test (which assigns
a value to an element's id).

  • dom/Element.cpp:

(WebCore::Element::setAttributeInternal):

8:03 PM Changeset in webkit [103016] by commit-queue@webkit.org
  • 1 edit
    1 add in trunk/Source/WebCore

Upstream FileSystemBlackBerry.cpp into WebCore/platform/blackberry
https://bugs.webkit.org/show_bug.cgi?id=74491

Patch by Mary Wu <mary.wu@torchmobile.com.cn> on 2011-12-15
Reviewed by Rob Buis.

We are using POSIX porting of FileSystem, so here only implement other
necessary functions.

Initial upstream, no new tests.

  • platform/blackberry/FileSystemBlackBerry.cpp: Added.

(WebCore::homeDirectoryPath):
(WebCore::fileSystemRepresentation):
(WebCore::unloadModule):
(WebCore::openTemporaryFile):

7:43 PM Changeset in webkit [103015] by enne@google.com
  • 3 edits in trunk/Source/WebCore

[chromium] Clean up unnecessary leaf functions in GraphicsLayerChromium
https://bugs.webkit.org/show_bug.cgi?id=74140

Reviewed by James Robinson.

Tested by existing compositor layout tests.

This is a follow-on cleanup to r102196, which made some of these
functions less useful than they had been in the past.

  • platform/graphics/chromium/GraphicsLayerChromium.cpp:

(WebCore::GraphicsLayerChromium::setContentsOpaque):
(WebCore::GraphicsLayerChromium::setBackfaceVisibility):
(WebCore::GraphicsLayerChromium::updateLayerPreserves3D):

  • platform/graphics/chromium/GraphicsLayerChromium.h:
7:41 PM Changeset in webkit [103014] by dpranke@chromium.org
  • 3 edits in trunk/Tools

webkitpy: clean up TestPort to (mostly) not create a new filesystem
https://bugs.webkit.org/show_bug.cgi?id=74556

This change modifies the TestPort to be ready to add tests to an
existing filesystem instead of creating a new filesystem; we
leave unit_test_filesystem() in for now for compatibility.

  • Scripts/webkitpy/common/host_mock.py:

(MockHost.init):

  • call add_unit_tests_to_mock_filesystem by default to make the MockHost more generally useful for layout_test unit tests.
  • Scripts/webkitpy/layout_tests/port/test.py:

(TestInstance.init):
(add_unit_tests_to_mock_filesystem):
(add_file):
(unit_test_filesystem):
(TestPort.init):
(TestPort._set_default_overriding_none):

7:05 PM Changeset in webkit [103013] by kbr@google.com
  • 9 edits in trunk

Unreviewed, rolling out r103000.
http://trac.webkit.org/changeset/103000
https://bugs.webkit.org/show_bug.cgi?id=74658

Does not handle text/plain documents correctly.

Source/WebCore:

  • html/parser/HTMLTokenizer.cpp:
  • html/parser/HTMLTokenizer.h:
  • html/parser/HTMLTreeBuilder.cpp:
  • html/parser/HTMLTreeBuilder.h:
  • xml/parser/MarkupTokenizerBase.h:

LayoutTests:

  • html5lib/runner-expected.txt:
  • platform/chromium/html5lib/runner-expected.txt:
7:02 PM Changeset in webkit [103012] by dpranke@chromium.org
  • 5 edits in trunk/Tools

webkitpy: cleanup prior to systemhostifying the layout_test/port* classes
https://bugs.webkit.org/show_bug.cgi?id=74551

This is some minor cleanup prior to making all of the host/port
changes described in bug 74138.

  • Scripts/webkitpy/common/host_mock.py:

(MockHost.init):

  • make sure the scm object is initialized with the same mock executive and filesystem objects.
  • Scripts/webkitpy/common/system/filesystem_mock.py:

(MockFileSystem.clear_written_files):

  • add a routine that will be useful in testing.

(MockFileSystem.maybe_make_directory):
(MockFileSystem.write_binary_file):

  • fix bugs to make sure directories are created properly.
  • Scripts/webkitpy/layout_tests/controllers/manager_worker_broker.py:

(_Process.run):

  • add clarifying comments.
  • Scripts/webkitpy/layout_tests/port/mock_drt.py:

(MockDRTPort.init):
(MockDRT.init):

  • add clarifying comments.
6:32 PM Changeset in webkit [103011] by jamesr@google.com
  • 13 edits in trunk

[chromium] Set the CCLayerTreeHost pointer on LayerChromium instances eagerly
https://bugs.webkit.org/show_bug.cgi?id=74477

Reviewed by Kenneth Russell.

Source/WebCore:

This enforces that the m_layerTreeHost pointer on LayerChromium instances is always up to date, instead of
lazily setting it in the paintContents loop. There are two invariants:
1.) If a LayerChromium is the root layer of a CCLayerTreeHost, or is reachable via the children, mask, or
replica pointers from the root layer of a CCLayerTreeHost, then that LayerChromium's m_layerTreeHost pointer
refers to that CCLayerTreeHost
2.) If a LayerChromium is not a root layer or reachable from a root layer of any CCLayerTreeHost, its
CCLayerTreeHost pointer is nil.

Covered by several new layout tests in LayerChromiumTest

  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::setLayerTreeHost):
(WebCore::LayerChromium::setParent):
(WebCore::LayerChromium::setMaskLayer):
(WebCore::LayerChromium::setReplicaLayer):

  • platform/graphics/chromium/LayerChromium.h:
  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::createTile):

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::setRootLayer):
(WebCore::CCLayerTreeHost::paintMaskAndReplicaForRenderSurface):
(WebCore::CCLayerTreeHost::paintLayerContents):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

Source/WebKit/chromium:

Add some new tests for LayerChromium::m_layerTreeHost behavior.

  • tests/CCLayerTreeHostTest.cpp:

(::MockLayerTreeHost::create):
(::MockLayerTreeHost::MockLayerTreeHost):
(::CCLayerTreeHostTestShortlived1::beginTest):
(::CCLayerTreeHostTestShortlived2::beginTest):
(::CCLayerTreeHostTestShortlived3::beginTest):

  • tests/LayerChromiumTest.cpp:

LayoutTests:

  • platform/chromium/test_expectations.txt:
6:32 PM Changeset in webkit [103010] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add support for accelerated compositing to the tiled Core Animation drawing area
https://bugs.webkit.org/show_bug.cgi?id=74675

Reviewed by Andreas Kling.

Add a layer flush scheduler and get rid of the content layer since WebCore will manage that for us.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
(WebKit::TiledCoreAnimationDrawingArea::~TiledCoreAnimationDrawingArea):
(WebKit::TiledCoreAnimationDrawingArea::setNeedsDisplay):
(WebKit::TiledCoreAnimationDrawingArea::scroll):
(WebKit::TiledCoreAnimationDrawingArea::setRootCompositingLayer):
(WebKit::TiledCoreAnimationDrawingArea::scheduleCompositingLayerSync):
(WebKit::TiledCoreAnimationDrawingArea::flushLayers):
(WebKit::TiledCoreAnimationDrawingArea::updateGeometry):

6:15 PM Changeset in webkit [103009] by commit-queue@webkit.org
  • 13 edits in trunk/Source

Unreviewed, rolling out r102652 and r102717.
http://trac.webkit.org/changeset/102652
http://trac.webkit.org/changeset/102717
https://bugs.webkit.org/show_bug.cgi?id=74674

Broke too many webs. (Requested by kling on #webkit).

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

Source/WebCore:

  • WebCore.exp.in:

Source/WebKit2:

  • UIProcess/API/mac/WKView.mm:

(-[WKView _updateWindowAndViewFrames]):

  • UIProcess/WebPageProxy.h:
  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::windowAndViewFramesChanged):

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::windowAndViewFramesChanged):

  • WebProcess/Plugins/PluginView.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::windowRect):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::windowAndViewFramesChanged):

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::windowFrameInScreenCoordinates):
(WebKit::WebPage::viewFrameInWindowCoordinates):
(WebKit::WebPage::accessibilityPosition):

  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:

(-[WKAccessibilityWebPageObject accessibilityAttributeValue:]):

6:00 PM Changeset in webkit [103008] by andersca@apple.com
  • 4 edits in trunk

Source/JavaScriptCore: Regression (r102866): Navigating away from or closing a page with a plugin crashes
https://bugs.webkit.org/show_bug.cgi?id=74655
<rdar://problem/10590024>

Reviewed by Sam Weinig.

Rewrite HasRefAndDeref to work if ref and deref are implemented in base classes,
using a modified version of the technique described here:
http://groups.google.com/group/comp.lang.c++.moderated/msg/e5fbc9305539f699

  • wtf/Functional.h:

Tools: Regression (r102866): Navigating away from or closing a page with a plugin crashes
https://bugs.webkit.org/show_bug.cgi?id=74655

Reviewed by Sam Weinig.

Add a bunch of tests.

  • TestWebKitAPI/Tests/WTF/Functional.cpp:
5:50 PM Changeset in webkit [103007] by andersca@apple.com
  • 7 edits in trunk/Source/WebCore

Lazily create the scrolling coordinator and add a setting for enabling it
https://bugs.webkit.org/show_bug.cgi?id=74667

Reviewed by Darin Adler.

  • WebCore.xcodeproj/project.pbxproj:

Make ScrollingCoordinator.h a private header so it can be used in WebKit.

  • page/Page.cpp:

(WebCore::Page::Page):
Don't create the scrolling coordinator.

(WebCore::Page::~Page):
Check for a null scrolling coordinator.

(WebCore::Page::scrollingCoordinator):
Create the scrolling coordinator lazily.

  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h:

(WebCore::Settings::setScrollingCoordinatorEnabled):
(WebCore::Settings::scrollingCoordinatorEnabled):
Add a setting for enabling the scrolling coordinator.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::RenderLayerBacking):
Use a tile cache layer for the main frame when the scrolling coordinator is neabled.

5:33 PM Changeset in webkit [103006] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebCore

Unreviewed. Fix build break when data-transfer-items is enabled.

  • platform/efl/ClipboardEfl.cpp:

(WebCore::ClipboardEfl::items):

  • platform/efl/ClipboardEfl.h:
5:19 PM Changeset in webkit [103005] by abarth@webkit.org
  • 5 edits in trunk

<ruby><div><p><rp> parses incorrectly
https://bugs.webkit.org/show_bug.cgi?id=74668

Reviewed by Darin Adler.

Source/WebCore:

This patch updates our implementation to match a change to the HTML5
specification regarding how <ruby> elements parse. Previously, <rp>
and similar tags used to pop the stack up to the <ruby> element. Now
the popping does not occur.

Tests: html5lib/runner.html

  • html/parser/HTMLTreeBuilder.cpp:

LayoutTests:

Update test results to show progression.

  • html5lib/runner-expected.txt:
  • platform/chromium/html5lib/runner-expected.txt:
5:17 PM Changeset in webkit [103004] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Chromium] Avoid strdup() for extra argument when tracing is disabled.
https://bugs.webkit.org/show_bug.cgi?id=74637

Patch by Daniel Sievers <sievers@chromium.org> on 2011-12-15
Reviewed by James Robinson.

  • platform/chromium/TraceEvent.h:

(WebCore::internal::ScopeTracer::ScopeTracer):

5:12 PM Changeset in webkit [103003] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Warnings fixes in Interpreter.cpp and PrivateExecute.cpp
https://bugs.webkit.org/show_bug.cgi?id=74624

Patch by Andy Wingo <wingo@igalia.com> on 2011-12-15
Reviewed by Darin Adler.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::privateExecute): Fix variables unused in
release mode.

  • wtf/ParallelJobsGeneric.cpp:

(WTF::ParallelEnvironment::ParallelEnvironment): Fix
signed/unsigned comparison warning, with a cast.

5:08 PM Changeset in webkit [103002] by Stephanie Lewis
  • 7 edits in trunk/Tools

https://bugs.webkit.org/show_bug.cgi?id=74469
Escape paths to svn commands so our tools can handle filenames with @ symbols.

Reviewed by Adam Roben.

  • Scripts/VCSUtils.pm:

(scmMoveOrRenameFile):
(scmAddExecutableBit):
(scmRemoveExecutableBit):
(determineSVNRoot):
(svnRevisionForDirectory):
(pathRelativeToSVNRepositoryRootForPath):
(svnStatus):
(escapeSubversionPath):

  • Scripts/parse-malloc-history:

(main):

  • Scripts/prepare-ChangeLog:

(diffCommand):
(statusCommand):
(findOriginalFileFromSvn):
(determinePropertyChanges):

  • Scripts/resolve-ChangeLogs:

(conflictFiles):
(resolveConflict):
(showStatus):

  • Scripts/svn-apply:

(patch):
(scmCopy):
(scmAdd):
(scmRemove):

  • Scripts/svn-create-patch:

(findBaseUrl):
(findMimeType):
(findSourceFileAndRevision):
(generateDiff):
(generateFileList):
(manufacturePatchForAdditionWithHistory):

  • Scripts/svn-unapply:

(patch):
(revertDirectories):

4:59 PM Changeset in webkit [103001] by adamk@chromium.org
  • 17 edits
    1 copy
    1 add in trunk/Source/WebCore

[MutationObservers] Add a document-level flag that can trivially be checked to avoid doing unnessary work if mutation observers absent
https://bugs.webkit.org/show_bug.cgi?id=74641

Patch by Rafael Weinstein <rafaelw@chromium.org> on 2011-12-15
Reviewed by Ojan Vafai.

This patch adds a byte of flags to Document, of which three bits are used to signal if any
node owned by the document has a Mutation Observer of the given type. This is used to
reduce the cost of discovering there are none to a single (inlined) method call and bit-check.
Also, a similar byte of flags which was used to optimize a particular case when mutation observers
are present has been removed, with the reasoning that we should first focus on minimizing impact on
the null-case before optimizing particular in-use cases.

Also, MutationObserverInterestGroup is broken out into its own file (which probably should have happened
earlier, but now avoids a circular header dependency).

No tests needed. This patch is just a refactor.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSMutableStyleDeclaration.cpp:
  • dom/CharacterData.cpp:
  • dom/ChildListMutationScope.cpp:
  • dom/Document.cpp:

(WebCore::Document::Document):

  • dom/Document.h:

(WebCore::Document::hasMutationObserversOfType):
(WebCore::Document::hasMutationObservers):
(WebCore::Document::addMutationObserverTypes):

  • dom/Element.cpp:
  • dom/MutationObserverInterestGroup.cpp: Added.

(WebCore::MutationObserverInterestGroup::createIfNeeded):
(WebCore::MutationObserverInterestGroup::MutationObserverInterestGroup):
(WebCore::MutationObserverInterestGroup::isOldValueRequested):
(WebCore::MutationObserverInterestGroup::enqueueMutationRecord):

  • dom/MutationObserverInterestGroup.h: Copied from Source/WebCore/dom/WebKitMutationObserver.h.

(WebCore::MutationObserverInterestGroup::createForChildListMutation):
(WebCore::MutationObserverInterestGroup::createForCharacterDataMutation):
(WebCore::MutationObserverInterestGroup::createForAttributesMutation):
(WebCore::MutationObserverInterestGroup::hasOldValue):

  • dom/Node.cpp:

(WebCore::Node::didMoveToNewOwnerDocument):
(WebCore::Node::getRegisteredMutationObserversOfType):
(WebCore::Node::notifyMutationObserversNodeWillDetach):

  • dom/Node.h:
  • dom/WebKitMutationObserver.cpp:

(WebCore::WebKitMutationObserver::observe):

  • dom/WebKitMutationObserver.h:
4:51 PM Changeset in webkit [103000] by abarth@webkit.org
  • 9 edits in trunk

<!DOCTYPE html><pre>&#x0a;&#x0a;A</pre> doesn't parse correctly
https://bugs.webkit.org/show_bug.cgi?id=74658

Reviewed by Darin Adler.

Source/WebCore:

Previously, we handled skipping newlines after <pre> in the tokenizer,
which isn't how the spec handles them. Instead, the spec skips them in
the tree builder. This isn't usually observable, except in the case of
an HTML entity. In that case, the tokenzier sees '&' (because the
entity hasn't been decoded yet), but the tree builder sees '\n' (the
decoded entity). This patch fixes the bug by more closely aligning our
implementation with the spec.

Test: html5lib/runner.html

  • html/parser/HTMLTokenizer.cpp:

(WebCore::HTMLTokenizer::reset):
(WebCore::HTMLTokenizer::nextToken):

  • html/parser/HTMLTokenizer.h:
  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipAtMostOneLeadingNewline):
(WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
(WebCore::HTMLTreeBuilder::processStartTagForInBody):
(WebCore::HTMLTreeBuilder::processCharacterBuffer):

  • html/parser/HTMLTreeBuilder.h:
  • xml/parser/MarkupTokenizerBase.h:

LayoutTests:

Shows test progression.

  • html5lib/runner-expected.txt:
4:44 PM Changeset in webkit [102999] by kbr@google.com
  • 9 edits in trunk/Source/WebCore

Unreviewed, rolling out r102989.
http://trac.webkit.org/changeset/102989
https://bugs.webkit.org/show_bug.cgi?id=74580

Caused SHOULD NOT BE REACHED assertions in debug builds.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(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:
4:41 PM Changeset in webkit [102998] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit

[BlackBerry] Regression: lots of checkerboarding
https://bugs.webkit.org/show_bug.cgi?id=74611

Patch by Jacky Jiang <zhajiang@rim.com> on 2011-12-15
Reviewed by Daniel Bates.

Fix a regression caused by r102843 which introduced a lot of unnecessary
checkerboarding. R102843 changed behavior by removing a check for blit
based on whether the render actually took place and whether the
backingstore was in the midst of suspended updates.
The initial anthor is Adam Treat <atreat@rim.com>.

  • blackberry/Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::repaint):
(BlackBerry::WebKit::BackingStorePrivate::slowScroll):
(BlackBerry::WebKit::BackingStorePrivate::renderVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::renderBackingStore):

  • blackberry/Api/BackingStore_p.h:

(BlackBerry::WebKit::BackingStorePrivate::isSuspended):

4:37 PM Changeset in webkit [102997] by commit-queue@webkit.org
  • 2 edits
    1 add
    4 deletes in trunk/LayoutTests

Create reftest for render-region-renderer
https://bugs.webkit.org/show_bug.cgi?id=74518

Patch by Larry McLister <lmcliste@adobe.com> on 2011-12-15
Reviewed by Tony Chang.

  • fast/regions/render-region-renderer-expected.html: Added.
  • platform/chromium/test_expectations.txt:
  • platform/efl/fast/regions/render-region-renderer-expected.png: Removed.
  • platform/efl/fast/regions/render-region-renderer-expected.txt: Removed.
  • platform/mac/fast/regions/render-region-renderer-expected.png: Removed.
  • platform/mac/fast/regions/render-region-renderer-expected.txt: Removed.
4:32 PM Changeset in webkit [102996] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[qt][wk2] MiniBrowser: Add pressed state for viewport info button.
https://bugs.webkit.org/show_bug.cgi?id=74617

Patch by Michael Bruning <michael.bruning@nokia.com> on 2011-12-15
Reviewed by Kenneth Rohde Christiansen.

  • MiniBrowser/qt/qml/BrowserWindow.qml: Added state dependent coloring

for viewport info button, adjusted height and added rounded corners.

4:25 PM Changeset in webkit [102995] by bashi@chromium.org
  • 2 edits
    10 adds in trunk/LayoutTests

Unreviewed Chromium test expectations update.
Rebaseline fast/text/unicode-variation-selector.html.

  • platform/chromium-cg-mac-leopard/fast/text/unicode-variation-selector-expected.png: Added.
  • platform/chromium-cg-mac-snowleopard/fast/text/unicode-variation-selector-expected.png: Added.
  • platform/chromium-linux/fast/text/unicode-variation-selector-expected.png: Added.
  • platform/chromium-linux/fast/text/unicode-variation-selector-expected.txt: Added.
  • platform/chromium-mac-leopard/fast/text/unicode-variation-selector-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/text/unicode-variation-selector-expected.png: Added.
  • platform/chromium-win/fast/text/unicode-variation-selector-expected.png: Added.
  • platform/chromium-win/fast/text/unicode-variation-selector-expected.txt: Added.
  • platform/chromium/fast/text/unicode-variation-selector-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
4:18 PM Changeset in webkit [102994] by aestes@apple.com
  • 2 edits in trunk/Tools

TestFailures: store the name of the buildbot results directory in a property
https://bugs.webkit.org/show_bug.cgi?id=74663

Reviewed by Adam Barth.

Store the name of the results directory as a property on Buildbot's
prototype. This allows subclasses of Buildbot to customize the results
directory.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/Buildbot.js:

(Buildbot.prototype.resultsDirectoryURL):

4:02 PM Changeset in webkit [102993] by kubo@profusion.mobi
  • 5 edits in trunk

[CMake] Remove ENABLE_DATAGRID from the buildsystem.
https://bugs.webkit.org/show_bug.cgi?id=74640

Reviewed by Antonio Gomes.

r84991 removed Datagrid from the tree, but the options in CMake were
kept.

  • Source/cmake/OptionsBlackBerry.cmake:
  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsWinCE.cmake:
  • Source/cmakeconfig.h.cmake:
3:50 PM Changeset in webkit [102992] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Touch make_name.pl in an attempt to make Qt bots happy.

  • dom/make_names.pl:

(printNamesHeaderFile):

3:48 PM Changeset in webkit [102991] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

Unreviewed. Rebaselined run-bindings-tests results.

  • bindings/scripts/test/JS/JSFloat64Array.cpp:
  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
  • bindings/scripts/test/JS/JSTestObj.cpp:
3:46 PM Changeset in webkit [102990] by tony@chromium.org
  • 2 edits in trunk/Tools

[chromium] pass --delete_unversioned_trees to gclient on the bots
https://bugs.webkit.org/show_bug.cgi?id=74565

Reviewed by Kenneth Russell.

It was temporarily removed in r102891 to keep the bots green. Now
that the bots have cycled, we can add it back.

  • Scripts/update-webkit-chromium:
3:44 PM Changeset in webkit [102989] by macpherson@chromium.org
  • 9 edits in trunk/Source/WebCore

Separate box alignment and box pack values into separate enums.
https://bugs.webkit.org/show_bug.cgi?id=74580

Reviewed by Darin Adler.

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:
3:13 PM Changeset in webkit [102988] by haraken@chromium.org
  • 2 edits in trunk/Tools

[Refactoring] In prepare-ChangeLog, make several global variables be used only through parameter passing
https://bugs.webkit.org/show_bug.cgi?id=74497

Reviewed by Ryosuke Niwa.

We are planning to write unit-tests for prepare-ChangeLog in a run-leaks_unittest
manner. This bug is one of the incremental refactorings to remove all top-level
code and global variables from prepare-ChangeLog. In this patch,
we make the following global variables be used only through parameter passing.

  • $bugDescription
  • $bugNumber
  • $name
  • $emailAddress
  • $gitReviewer
  • $writeChangeLogs
  • Scripts/prepare-ChangeLog:

(fetchBugDescriptionFromURL):
(generateNewChangeLogs):
(reviewerAndDescriptionForGitCommit):

3:10 PM Changeset in webkit [102987] by haraken@chromium.org
  • 2 edits
    10 adds in trunk/Source/WebCore

REGRESSION(r102663): generate-bindings.pl runs every time
https://bugs.webkit.org/show_bug.cgi?id=74481

Reviewed by Adam Barth.

See the comment #1 of bug 74481 for the cause of this bug.

This patch fixes generate-bindings.pl so that it generates .h and .cpp files
even for IDL files that do not need .h and .cpp files. This is just to prevent
build scripts from trying to generate .h and .cpp files at every build.

No new tests. No change in behavior.

  • bindings/scripts/generate-bindings.pl:

(generateEmptyHeaderAndCpp): Generates .h and .cpp files for IDL files
that do not need .h and .cpp files.

  • bindings/scripts/test/CPP/CPPTestSupplemental.cpp: Added.
  • bindings/scripts/test/CPP/CPPTestSupplemental.h: Added.
  • bindings/scripts/test/GObject/GObjectTestSupplemental.cpp: Added.
  • bindings/scripts/test/GObject/GObjectTestSupplemental.h: Added.
  • bindings/scripts/test/JS/JSTestSupplemental.cpp: Added.
  • bindings/scripts/test/JS/JSTestSupplemental.h: Added.
  • bindings/scripts/test/ObjC/ObjCTestSupplemental.cpp: Added.
  • bindings/scripts/test/ObjC/ObjCTestSupplemental.h: Added.
  • bindings/scripts/test/V8/V8TestSupplemental.cpp: Added.
  • bindings/scripts/test/V8/V8TestSupplemental.h: Added.
2:53 PM Changeset in webkit [102986] by Lucas Forschler
  • 1 copy in tags/Safari-534.53.11

New tag.

2:19 PM Changeset in webkit [102985] by kbr@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed Chromium test expectations update; pull up some
downstream suppressions.

  • platform/chromium/test_expectations.txt:
2:17 PM Changeset in webkit [102984] by jarred@sencha.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix. Mac build broken when CSS Filters enabled.
Needed to move Filter headers out as private headers in WebCore.framework.

  • WebCore.xcodeproj/project.pbxproj:
2:00 PM Changeset in webkit [102983] by eric@webkit.org
  • 5 edits in trunk/Source/WebCore

WebCore has two (disconnected) ways to keep track of updated widgets, should be unified
https://bugs.webkit.org/show_bug.cgi?id=74367

Reviewed by Adam Barth.

It seems the FrameView updateWidgets set is needed for now,
so just making FrameView::addWidgetToUpdate mark the DOM node
as needing a widget update and later when it goes to call
updateWidget() checking first if it needs an update.

No new tests, just adding an assert.

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::updateWidget):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::updateWidget):

  • html/HTMLPlugInImageElement.h:

(WebCore::HTMLPlugInImageElement::needsWidgetUpdate):
(WebCore::HTMLPlugInImageElement::setNeedsWidgetUpdate):

  • page/FrameView.cpp:

(WebCore::FrameView::addWidgetToUpdate):
(WebCore::FrameView::updateWidget):

1:56 PM Changeset in webkit [102982] by Alexandru Chiculita
  • 2 edits in trunk/Source/WebCore

Windows project file is broken. It has a missing </File> enclosing tag
https://bugs.webkit.org/show_bug.cgi?id=74632

Reviewed by Anders Carlsson.

No new tests, just fixing the project file.

  • WebCore.vcproj/WebCore.vcproj:
1:35 PM Changeset in webkit [102981] by abarth@webkit.org
  • 11 edits in trunk

<table><tr><td><svg><desc><td> parses incorrectly
https://bugs.webkit.org/show_bug.cgi?id=68106

Reviewed by Eric Seidel.

Source/WebCore:

This patch updates our implementation of the HTML5 parser to account
for recent changes in the spec. The main change in this patch is to
remove the "in foreign content" state from the tree builder. Rather
than maintaining this as a separate state, the parser now introspects
on the stack of open elements to determine whether the parser is in
foriegn content. In the process, I've deleted some now-unused
machinery in the tree builder.

Tested by the html5lib LayoutTests. These tests show the progression
in our spec compliance.

  • html/parser/HTMLElementStack.cpp:
  • html/parser/HTMLElementStack.h:
  • html/parser/HTMLTreeBuilder.cpp:
  • html/parser/HTMLTreeBuilder.h:
  • mathml/mathattrs.in:

LayoutTests:

  • html5lib/resources/webkit01.dat:
    • This test had an incorrect expectation that matched our previous behavior. The new expected result matches Firefox's implemenation as well.
  • html5lib/runner-expected.txt:
  • platform/chromium/html5lib/runner-expected.txt:
    • Updated to show test progressions. The one non-monotonic improvement is some churn in which of the unsafe-text tests we pass. I'll look into this issue in a future patch.
1:34 PM Changeset in webkit [102980] by nduca@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] Add forUseOnAnotherThread to WebGraphicsContext3D::Attributes
https://bugs.webkit.org/show_bug.cgi?id=74557

Reviewed by Kenneth Russell.

  • public/platform/WebGraphicsContext3D.h:

(WebKit::WebGraphicsContext3D::Attributes::Attributes):

  • src/GraphicsContext3DChromium.cpp:
1:30 PM Changeset in webkit [102979] by rniwa@webkit.org
  • 11 edits in trunk/Source/WebCore

m_hasCounterNodeMap and m_everHadLayout should be private to RenderObject
https://bugs.webkit.org/show_bug.cgi?id=74645

Reviewed by Eric Seidel.

Made them private and added getters and setters as needed.

  • rendering/RenderCounter.cpp:

(WebCore::makeCounterNode):
(WebCore::RenderCounter::destroyCounterNodes):
(WebCore::updateCounters):
(WebCore::RenderCounter::rendererStyleChanged):
(showCounterRendererTree):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::layout):

  • rendering/RenderObject.h:

(WebCore::RenderObject::hasCounterNodeMap):
(WebCore::RenderObject::setHasCounterNodeMap):
(WebCore::RenderObject::everHadLayout):

  • rendering/svg/RenderSVGForeignObject.cpp:

(WebCore::RenderSVGForeignObject::layout):

  • rendering/svg/RenderSVGImage.cpp:

(WebCore::RenderSVGImage::layout):

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::layout):

  • rendering/svg/RenderSVGResourceMarker.cpp:

(WebCore::RenderSVGResourceMarker::layout):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::layout):

  • rendering/svg/RenderSVGShape.cpp:

(WebCore::RenderSVGShape::layout):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::layout):

1:29 PM Changeset in webkit [102978] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Use more macrology in JSC::Options
https://bugs.webkit.org/show_bug.cgi?id=72938

Patch by Andy Wingo <wingo@igalia.com> on 2011-12-15
Reviewed by Filip Pizlo.

  • runtime/Options.cpp:

(JSC::Options::initializeOptions):

  • runtime/Options.h: Use macros to ensure that all heuristics are

declared and have initializers.

1:07 PM Changeset in webkit [102977] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

Not able to navigate the Resource tab options properly with arrow keys after adding the sticky-notes.
https://bugs.webkit.org/show_bug.cgi?id=72013

Reviewed by Pavel Feldman.

  • inspector/front-end/DatabaseQueryView.js:

(WebInspector.DatabaseQueryView):
(WebInspector.DatabaseQueryView.prototype._messagesClicked):

  • inspector/front-end/ResourcesPanel.js:

(WebInspector.DatabaseTreeElement.prototype.onexpand):

12:46 PM Changeset in webkit [102976] by leviw@chromium.org
  • 345 edits in branches/subpixellayout/LayoutTests

Checking in updated 'fast' test expectations for sub-pixel positioning.

12:44 PM Changeset in webkit [102975] by andersca@apple.com
  • 6 edits
    2 adds in trunk/Source

Add ScrollingCoordinator class and ENABLE_THREADED_SCROLLING define
https://bugs.webkit.org/show_bug.cgi?id=74639

Reviewed by Andreas Kling.

Source/JavaScriptCore:

Add ENABLE_THREADED_SCROLLING #define.

  • wtf/Platform.h:

Source/WebCore:

Add a ScrollingCoordinator class and make it a member of Page. Tear it down
when the page goes away.

  • WebCore.xcodeproj/project.pbxproj:
  • page/Page.cpp:

(WebCore::Page::Page):
(WebCore::Page::~Page):

  • page/Page.h:

(WebCore::Page::scrollingCoordinator):

  • page/ScrollingCoordinator.cpp: Added.

(WebCore::ScrollingCoordinator::create):
(WebCore::ScrollingCoordinator::ScrollingCoordinator):
(WebCore::ScrollingCoordinator::~ScrollingCoordinator):
(WebCore::ScrollingCoordinator::pageDestroyed):

  • page/ScrollingCoordinator.h: Added.
12:32 PM Changeset in webkit [102974] by tommyw@google.com
  • 3 edits
    1 delete in trunk/Source/WebKit/chromium

[chromium] MediaStream API: Fixing #include statements and removing forwarding header file
https://bugs.webkit.org/show_bug.cgi?id=74598

Reviewed by Darin Fisher.

WebMediaStreamSource.h had some issues when accessed from chromium. Also cleaned up the forwarding header.

  • WebKit.gyp:
  • public/WebMediaStreamSource.h: Removed.
  • public/platform/WebMediaStreamSource.h:
12:06 PM BuildingGtk edited by Martin Robinson
(diff)
11:54 AM Changeset in webkit [102973] by kbr@google.com
  • 19 edits
    3 moves in trunk

Rename WEBKIT_lose_context to WEBKIT_WEBGL_lose_context
https://bugs.webkit.org/show_bug.cgi?id=71870

Reviewed by James Robinson.

Re-landing after original commit was rolled out.

Source/WebCore:

Rename largely done with do-webcore-rename with a couple of
necessary manual fixups. Ran WebGL layout tests.

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSWebGLRenderingContextCustom.cpp:

(WebCore::toJS):

  • bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:

(WebCore::toV8Object):

  • html/canvas/WebGLExtension.h:
  • html/canvas/WebGLLoseContext.cpp: Copied from Source/WebCore/html/canvas/WebKitLoseContext.cpp.

(WebCore::WebGLLoseContext::WebGLLoseContext):
(WebCore::WebGLLoseContext::~WebGLLoseContext):
(WebCore::WebGLLoseContext::getName):
(WebCore::WebGLLoseContext::create):
(WebCore::WebGLLoseContext::loseContext):
(WebCore::WebGLLoseContext::restoreContext):

  • html/canvas/WebGLLoseContext.h: Copied from Source/WebCore/html/canvas/WebKitLoseContext.h.
  • html/canvas/WebGLLoseContext.idl: Copied from Source/WebCore/html/canvas/WebKitLoseContext.idl.
  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::getExtension):
(WebCore::WebGLRenderingContext::getSupportedExtensions):
(WebCore::WebGLRenderingContext::maybeRestoreContext):

  • html/canvas/WebGLRenderingContext.h:
  • html/canvas/WebKitLoseContext.cpp: Removed.
  • html/canvas/WebKitLoseContext.h: Removed.
  • html/canvas/WebKitLoseContext.idl: Removed.

LayoutTests:

Synchronized context-lost-restored.html and context-lost.html with
Khronos repository; upstream tests must check for multiple vendor
prefixes.

  • fast/canvas/webgl/WebGLContextEvent.html:
  • fast/canvas/webgl/context-destroyed-crash.html:
  • fast/canvas/webgl/context-lost-expected.txt:
  • fast/canvas/webgl/context-lost-restored.html:
  • fast/canvas/webgl/context-lost.html:
11:47 AM Changeset in webkit [102972] by senorblanco@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r102956.
http://trac.webkit.org/changeset/102956
https://bugs.webkit.org/show_bug.cgi?id=74334

Broke Chromium/Win build.

  • features.gypi:
11:45 AM Changeset in webkit [102971] by kubo@profusion.mobi
  • 3 edits in trunk/Source/WebKit/efl

[EFL] Clean up and refactor the memory cache functions in ewk_settings.
https://bugs.webkit.org/show_bug.cgi?id=72140

Reviewed by Antonio Gomes.

Use a better naming prefix, as "ewk_settings_cache" was too general,
and make it possible to pass all parameters to
MemoryCache::setCapacities().

  • ewk/ewk_settings.cpp:

(ewk_settings_object_cache_capacity_set):
(ewk_settings_object_cache_enable_get):
(ewk_settings_object_cache_enable_set):

  • ewk/ewk_settings.h:
11:34 AM Changeset in webkit [102970] by kbr@google.com
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Disable flaky tests. Built and tested on Linux.
https://bugs.webkit.org/show_bug.cgi?id=74623

  • tests/CCLayerTreeHostTest.cpp:

(WTF::TEST_F):

11:28 AM Changeset in webkit [102969] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=74631
HTMLMediaElement should not register for document activation callbacks as it doesn't use them

Reviewed by Eric Carlson.

No new tests. (No behavior change, pruning useless code)

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement):
(WebCore::HTMLMediaElement::~HTMLMediaElement):
(WebCore::HTMLMediaElement::willMoveToNewOwnerDocument):
(WebCore::HTMLMediaElement::didMoveToNewOwnerDocument):

11:18 AM Changeset in webkit [102968] by eric.carlson@apple.com
  • 14 edits
    7 adds in trunk

Text tracks should be treated differently according to their kind
https://bugs.webkit.org/show_bug.cgi?id=72547

Reviewed by Sam Weinig.

Source/WebCore:

Tests: media/track/track-default-attribute.html

media/track/track-mode-not-changed-by-new-track.html
media/track/track-mode-triggers-loading.html

  • html/HTMLAudioElement.cpp:

(WebCore::HTMLAudioElement::HTMLAudioElement): Add "createdByParser" parameter.
(WebCore::HTMLAudioElement::create): Ditto.
(WebCore::HTMLAudioElement::createForJSConstructor): Deal with constructor change.

  • html/HTMLAudioElement.h:
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement): Add "createdByParser" parameter. Initialize m_parsingInProgress.
(WebCore::HTMLMediaElement::finishParsingChildren): Clear m_parsingInProgress. Schedule track

loading if necessary.

(WebCore::HTMLMediaElement::loadTimerFired): Call configureTextTracks not call scheduleLoad,

it just schedules the load timer again.

(WebCore::HTMLMediaElement::prepareForLoad): Add all non-disabled track elements to a vector

so we can prevent the media element's readyState from reaching HAVE_METADATA until the
tracks are ready.

(WebCore::HTMLMediaElement::textTracksAreReady): New. Return false unless all tracks that were

not disabled when loading started have loaded or failed.

(WebCore::HTMLMediaElement::textTrackReadyStateChanged): Call setReadyState when a track is

stops loading.

(WebCore::HTMLMediaElement::textTrackModeChanged): Trigger <track> loading when the mode

changes to hidden or showing for the first time.

(WebCore::HTMLMediaElement::setReadyState): Do not advance to HAVE_METADATA or higher while

track elements are loading.

(WebCore::HTMLMediaElement::addTrack): Removed.
(WebCore::HTMLMediaElement::showingTrackWithSameKind): New.
(WebCore::HTMLMediaElement::trackWasAdded):
(WebCore::HTMLMediaElement::trackWillBeRemoved): Flag a track as unconfigured so it will be

reconfigured if it is added to another element.

(WebCore::HTMLMediaElement::userIsInterestedInThisLanguage): New.
(WebCore::HTMLMediaElement::userIsInterestedInThisTrack): New. Consider user preferences.
(WebCore::HTMLMediaElement::configureTextTrack): New. Configure a track as per the user's preferences.
(WebCore::HTMLMediaElement::configureTextTracks): New. Configure all track elements.

  • html/HTMLMediaElement.h:
  • html/HTMLMediaElement.h:
  • html/HTMLTagNames.in: Add constructorNeedsCreatedByParser to audio and video.
  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::HTMLTrackElement): Initialize m_hasBeenConfigured.

  • html/HTMLTrackElement.h:

(WebCore::HTMLTrackElement::hasBeenConfigured):
(WebCore::HTMLTrackElement::setHasBeenConfigured):

  • html/HTMLVideoElement.cpp:

(WebCore::HTMLVideoElement::HTMLVideoElement): Add "createdByParser" parameter.
(WebCore::HTMLVideoElement::create): Ditto.

  • html/HTMLVideoElement.h:
  • html/TextTrack.cpp:

(WebCore::TextTrack::TextTrack): Initialize m_mode to DISABLED, not HIDDEN. Initialize m_showingByDefault.
(WebCore::TextTrack::setMode): Clear the "showing by default" flag when a track's mode is

explicitly set to SHOWING.

(WebCore::TextTrack::mode): Return SHOWING whenever the "showing by default" flag is set.

  • html/TextTrack.h:

(WebCore::TextTrack::showingByDefault):
(WebCore::TextTrack::setShowingByDefault):

  • html/TextTrackCue.cpp:

(WebCore::TextTrackCue::isActive): Return false if a cue has no track, or if its track is disabled.
(WebCore::TextTrackCue::setIsActive): Don't enable a cue if it has no track, or if its track

is disabled.

LayoutTests:

  • media/track/captions-webvtt/metadata.vtt: Added.
  • media/track/track-default-attribute-expected.txt: Added.
  • media/track/track-default-attribute.html: Added.
  • media/track/track-mode-not-changed-by-new-track-expected.txt: Added.
  • media/track/track-mode-not-changed-by-new-track.html: Added.
  • media/track/track-mode-triggers-loading-expected.txt: Added.
  • media/track/track-mode-triggers-loading.html: Added.
11:13 AM Changeset in webkit [102967] by kbr@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed Chromium test expectations update; add suppression.
https://bugs.webkit.org/show_bug.cgi?id=74634

  • platform/chromium/test_expectations.txt:
11:11 AM Changeset in webkit [102966] by kubo@profusion.mobi
  • 7 edits in trunk

[EFL] Add a few more web database functions to ewk_settings.
https://bugs.webkit.org/show_bug.cgi?id=72148

Reviewed by Antonio Gomes.

Source/WebKit/efl:

Add code to change the default quota (there as only a getter so far)
and one to clear the databases.

  • ewk/ewk_settings.cpp:

(ewk_settings_web_database_default_quota_set):
(ewk_settings_web_database_clear):

  • ewk/ewk_settings.h:

Tools:

  • DumpRenderTree/efl/LayoutTestControllerEfl.cpp:

(LayoutTestController::clearAllDatabases):
(LayoutTestController::setDatabaseQuota):

LayoutTests:

LayoutTestController::setDatabaseQuota is implemented now.

  • platform/efl/Skipped:
11:07 AM Changeset in webkit [102965] by kov@webkit.org
  • 2 edits in trunk/Source/WebKit2

[GTK] New API test for WindowProperties fails
https://bugs.webkit.org/show_bug.cgi?id=74630

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2011-12-15
Reviewed by Martin Robinson.

  • UIProcess/API/gtk/tests/TestWebKitWebView.cpp:

(WindowProperties::viewReadyToShow): assert each member to make
assertion error messages more useful, and avoid asserting x and y,
since we are getting bad values from WebCore, for some reason.
(testWebViewWindowProperties): use smaller values that fit inside the
800x600 screen used by the bots.

11:04 AM Changeset in webkit [102964] by beidson@apple.com
  • 2 edits in trunk/LayoutTests

https://bugs.webkit.org/show_bug.cgi?id=74607
Removed a skipped test after rolling out r102829

Unreviewed.

  • platform/qt/Skipped:
10:56 AM Changeset in webkit [102963] by andersca@apple.com
  • 9 edits in trunk/Source

EventDispatcher should handle wheel events on the connection queue
https://bugs.webkit.org/show_bug.cgi?id=74627

Reviewed by Andreas Kling.

Source/JavaScriptCore:

Add a BoundFunctionImpl specialization that takes three parameters.

  • wtf/Functional.h:

(WTF::C::):
(WTF::R):
(WTF::bind):

Source/WebKit2:

Send wheel events to the EventDispatcher, which handles them on the connection work queue, and
immediately bounces them to the main thread (for now).

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::handleWheelEvent):
(WebKit::WebPageProxy::didReceiveEvent):

  • WebProcess/WebPage/EventDispatcher.cpp:

(WebKit::EventDispatcher::wheelEvent):
(WebKit::EventDispatcher::dispatchWheelEvent):

  • WebProcess/WebPage/EventDispatcher.h:
  • WebProcess/WebPage/EventDispatcher.messages.in:
  • WebProcess/WebPage/WebPage.h:
10:50 AM Changeset in webkit [102962] by beidson@apple.com
  • 4 edits
    3 deletes in trunk

Unreviewed, rolling out r102829.
http://trac.webkit.org/changeset/102829
https://bugs.webkit.org/show_bug.cgi?id=74533

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

Source/WebCore:

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
(WebCore::HTMLPlugInImageElement::willMoveToNewOwnerDocument):
(WebCore::HTMLPlugInImageElement::didMoveToNewOwnerDocument):
(WebCore::HTMLPlugInImageElement::documentWillBecomeInactive):
(WebCore::HTMLPlugInImageElement::documentDidBecomeActive):

  • html/HTMLPlugInImageElement.h:

LayoutTests:

  • media/crash-closing-page-with-media-as-plugin-fallback-expected.txt: Removed.
  • media/crash-closing-page-with-media-as-plugin-fallback.html: Removed.
  • media/resources/video-with-poster-as-object-fallback.html: Removed.
10:45 AM Changeset in webkit [102961] by simonjam@chromium.org
  • 21 edits
    1 copy
    1 add in trunk

[Navigation Timing] Use monotonicallyIncreasingTime() instead of currentTime()
https://bugs.webkit.org/show_bug.cgi?id=58354

Reviewed by Pavel Feldman.

Source/WebCore:

No new tests. Relies on existing webtiming-* tests.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/Document.cpp: Use monotonic times.

(WebCore::Document::setReadyState):
(WebCore::Document::finishedParsing):

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::didFinishLoadingImpl): Convert monotonicFinishTime to wall time if needed.

  • inspector/InspectorResourceAgent.cpp:

(WebCore::buildObjectForTiming): Convert monotonic requestTime to wall time.
(WebCore::buildObjectForResourceResponse): Plumbing for above.
(WebCore::buildObjectForCachedResource): Ditto.
(WebCore::InspectorResourceAgent::willSendRequest): Ditto.
(WebCore::InspectorResourceAgent::didReceiveResponse): Ditto.
(WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache): Ditto.

  • loader/DocumentLoadTiming.cpp: Added.

(WebCore::DocumentLoadTiming::DocumentLoadTiming):
(WebCore::DocumentLoadTiming::setNavigationStart): Determine reference time and root reference time.
(WebCore::DocumentLoadTiming::addRedirect): Moved logic from MainResourceLoader.
(WebCore::DocumentLoadTiming::convertMonotonicTimeToDocumentTime): Helper to compute wall time from monotonic time.

  • loader/DocumentLoadTiming.h: Turned into class. Made times monotonic.

(WebCore::DocumentLoadTiming::setUnloadEventStart):
(WebCore::DocumentLoadTiming::setUnloadEventEnd):
(WebCore::DocumentLoadTiming::setRedirectStart):
(WebCore::DocumentLoadTiming::setRedirectEnd):
(WebCore::DocumentLoadTiming::setFetchStart):
(WebCore::DocumentLoadTiming::setResponseEnd):
(WebCore::DocumentLoadTiming::setLoadEventStart):
(WebCore::DocumentLoadTiming::setLoadEventEnd):
(WebCore::DocumentLoadTiming::setHasSameOriginAsPreviousDocument):
(WebCore::DocumentLoadTiming::navigationStart):
(WebCore::DocumentLoadTiming::unloadEventStart):
(WebCore::DocumentLoadTiming::unloadEventEnd):
(WebCore::DocumentLoadTiming::redirectStart):
(WebCore::DocumentLoadTiming::redirectEnd):
(WebCore::DocumentLoadTiming::redirectCount):
(WebCore::DocumentLoadTiming::fetchStart):
(WebCore::DocumentLoadTiming::responseEnd):
(WebCore::DocumentLoadTiming::loadEventStart):
(WebCore::DocumentLoadTiming::loadEventEnd):
(WebCore::DocumentLoadTiming::hasCrossOriginRedirect):
(WebCore::DocumentLoadTiming::hasSameOriginAsPreviousDocument):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::stopLoading):
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
(WebCore::FrameLoader::loadProvisionalItemFromCachedPage):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::continueAfterNavigationPolicy):
(WebCore::MainResourceLoader::willSendRequest): Moved logic to DocumentLoadTiming.
(WebCore::MainResourceLoader::didReceiveData): Use monotonic time.
(WebCore::MainResourceLoader::didFinishLoading): Ditto.
(WebCore::MainResourceLoader::load):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::dispatchLoadEvent):

  • page/DOMWindow.h: Removed dispatchTimedEvent. It doesn't really help in the new model.
  • page/PerformanceNavigation.cpp:

(WebCore::PerformanceNavigation::redirectCount):

  • page/PerformanceTiming.cpp: Removed skew correction code. This should never happen now.

(WebCore::PerformanceTiming::navigationStart):
(WebCore::PerformanceTiming::unloadEventStart):
(WebCore::PerformanceTiming::unloadEventEnd):
(WebCore::PerformanceTiming::redirectStart):
(WebCore::PerformanceTiming::redirectEnd):
(WebCore::PerformanceTiming::fetchStart):
(WebCore::PerformanceTiming::responseEnd):
(WebCore::PerformanceTiming::domLoading):
(WebCore::PerformanceTiming::domInteractive):
(WebCore::PerformanceTiming::domContentLoadedEventStart):
(WebCore::PerformanceTiming::domContentLoadedEventEnd):
(WebCore::PerformanceTiming::domComplete):
(WebCore::PerformanceTiming::loadEventStart):
(WebCore::PerformanceTiming::loadEventEnd):
(WebCore::PerformanceTiming::resourceLoadTimeRelativeToAbsolute): Used for ResourceLoadTiming.
(WebCore::PerformanceTiming::monotonicTimeToIntegerMilliseconds): Used for DocumentTiming and DocumentLoadTiming.

  • page/PerformanceTiming.h:
  • platform/network/ResourceLoadTiming.cpp:

(WebCore::ResourceLoadTiming::convertResourceLoadTimeToDocumentTime):

  • platform/network/ResourceLoadTiming.h: Added helper function to convert to wall times. Added instructions for use.

LayoutTests:

  • fast/dom/script-tests/webtiming.js: Current monotonic time is unknown until performance.now() is available. Use 0 until then.
10:44 AM Changeset in webkit [102960] by jonlee@apple.com
  • 11 edits in trunk/Source/WebKit2

[WK2] Extend WebNotification to include its origin https://bugs.webkit.org/show_bug.cgi?id=74615 <rdar://problem/10587164>

Reviewed by Sam Weinig.

  • Shared/API/c/WKSecurityOrigin.h: Expose API that converts the security origin to database

identifier.

  • Shared/API/c/WKSecurityOrigin.cpp:

(WKSecurityOriginCopyDatabaseIdentifier):

  • UIProcess/Notifications/WebNotification.h: Extend WebNotification to include the origin.

(WebKit::WebNotification::create):
(WebKit::WebNotification::origin):

  • UIProcess/Notifications/WebNotification.cpp: Remove unneeded encode() and decode() functions.

(WebKit::WebNotification::WebNotification):

  • UIProcess/API/C/WKNotification.h: Expose WebNotification's origin().
  • UIProcess/API/C/WKNotification.cpp:

(WKNotificationGetSecurityOrigin):

  • UIProcess/Notifications/WebNotificationManagerProxy.messages.in: Update show() to include the

origin of the notification.

  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::show):

  • UIProcess/Notifications/WebNotificationManagerProxy.h:
  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::show): Pass the notification's exec context's origin as
identifier.

10:39 AM Changeset in webkit [102959] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[Qt][WK2] Add test for download policy on navigation request
https://bugs.webkit.org/show_bug.cgi?id=74541

Patch by Rafael Brandao <rafael.lobo@openbossa.org> on 2011-12-15
Reviewed by Tor Arne Vestbø.

  • UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_navigationRequested.qml:
  • UIProcess/API/qt/tests/qmltests/WebView/tst_download.qml: Make it wait for a

downloadFinished signal to finish the test.

10:28 AM Changeset in webkit [102958] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

plugin crash

[GTK] Plugins sometimes crash WebKitGTK+ with Gdk-CRITICAL : gdk_window_get_toplevel: assertion `GDK_IS_WINDOW (window)' failed
https://bugs.webkit.org/show_bug.cgi?id=73719

Patch by Martin Robinson <mrobinson@igalia.com> on 2011-12-15
Reviewed by Philippe Normand.

No new tests. It's difficult to test or reproduce this exact situation
as it only occurs when running plugins under nspluginwrapper.

  • plugins/gtk/PluginViewGtk.cpp:

(WebCore::PluginView::platformGetValue): Properly handle when the plugin tries to
get the window value when the GtkSocket is no longer realized.

10:21 AM Changeset in webkit [102957] by kbr@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed Chromium expectations update. Mark another flaky compositing test.

  • platform/chromium/test_expectations.txt:
10:20 AM Changeset in webkit [102956] by senorblanco@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Enable CSS_FILTERS in Chromium.
https://bugs.webkit.org/show_bug.cgi?id=74334

Reviewed by Kenneth Russell.

  • features.gypi:
10:17 AM Changeset in webkit [102955] by commit-queue@webkit.org
  • 19 edits
    2 adds in trunk

Fix find on web pages with -webkit-user-select: none for Chromium
https://bugs.webkit.org/show_bug.cgi?id=72281

Patch by Martin Kosiba <mkosiba@google.com> on 2011-12-15
Reviewed by Ryosuke Niwa.

Source/WebCore:

Adding findStringAndScrollToVisible to Editor. This new method returns
the new match as a range rather than modify the active selection.

Test: editing/text-iterator/findString-selection-disabled.html

  • editing/Editor.cpp:

(WebCore::Editor::findStringAndScrollToVisible):

  • editing/Editor.h:

Source/WebKit/chromium:

This will make it possible to search for text that has
selection disabled (via the webkit-user-select attribute).

WebFrameImpl::find will use findStringAndScrollToVisible, which is
similar to findString except that it uses Range directly rather
than passing the find result in the active selection.

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::find):

Tools:

Provided a partial findString implementation. This doesn't support
all of the FindOptions since they're not exposed via WebFindOptions.

  • DumpRenderTree/chromium/LayoutTestController.cpp:

(LayoutTestController::LayoutTestController):
(LayoutTestController::findString):

  • DumpRenderTree/chromium/LayoutTestController.h:

LayoutTests:

Adding a layout test to verify that find works correctly on pages
that prevent text selection.

  • editing/text-iterator/findString-selection-disabled-expected.txt: Added.
  • editing/text-iterator/findString-selection-disabled.html: Added.
  • platform/efl/Skipped:
  • platform/gtk-wk2/Skipped:
  • platform/mac-lion/Skipped:
  • platform/mac-snowleopard/Skipped:
  • platform/mac/Skipped:
  • platform/qt-5.0/Skipped:
  • platform/qt-mac/Skipped:
  • platform/qt-wk2/Skipped:
  • platform/wk2/Skipped:
10:15 AM Changeset in webkit [102954] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Move WorkQueue Mach handlers over to WTF::Function
https://bugs.webkit.org/show_bug.cgi?id=74620

Reviewed by Sam Weinig.

  • Platform/CoreIPC/mac/ConnectionMac.cpp:

(CoreIPC::Connection::open):
(CoreIPC::Connection::initializeDeadNameSource):

  • Platform/WorkQueue.h:
  • Platform/mac/WorkQueueMac.cpp:

(WorkQueue::EventSource::EventSource):
(WorkQueue::EventSource::eventHandler):
(WorkQueue::registerMachPortEventHandler):

10:05 AM Changeset in webkit [102953] by andersca@apple.com
  • 8 edits in trunk/Source

Add WTF::Function to wtf/Forward.h
https://bugs.webkit.org/show_bug.cgi?id=74576

Reviewed by Adam Roben.

Source/JavaScriptCore:

  • jsc.cpp:

Work around a name conflict in the readline library.

  • wtf/Forward.h:

Add Function.

Source/WebCore:

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):
Add a JSC:: qualifier to the Function flags to avoid ambiguities.

Source/WebKit2:

  • Platform/RunLoop.h:
  • Platform/WorkQueue.h:

Remove forward declarations and just include wtf/Forward.h.

9:55 AM Changeset in webkit [102952] by jchaffraix@webkit.org
  • 7 edits
    12 adds in trunk

Hardware-backed renderLayer could avoid repainting during a positioned movement layout
https://bugs.webkit.org/show_bug.cgi?id=74370

Reviewed by Simon Fraser.

Source/WebCore:

Tests: compositing/absolute-position-changed-in-composited-layer.html

compositing/absolute-position-changed-with-composited-parent-layer.html
compositing/fixed-position-changed-in-composited-layer.html
compositing/fixed-position-changed-within-composited-parent-layer.html

To be able to properly skip repainting after a positioned movement layout only, we
needed to add more state to the current |setNeedsFullRepaint| method. As part of that
we refactored the callers and internal fields to better match the new meaning.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::styleDidChange):
Explicitely gave the RepaintStatus to setRepaintStatus.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::removeOnlyThisLayer):
Updated those function after the renamings.

(WebCore::RenderLayer::updateLayerPositions):
Ditto. Also added a sholdRepaintAfterLayout check.

(WebCore::RenderLayer::shouldRepaintAfterLayout):
Heart of the optimization, if we just did a positioned movement layout of composited RenderLayer,
then don't repaint. All the other cases should still trigger a repaint.

  • rendering/RenderLayer.h:

(WebCore::RenderLayer::setRepaintStatus):
Renamed setNeedsFullRepaint to setRepaintStatus. Also added a new enum RepaintStatus.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::setLayerNeedsFullRepaint):
Updated after the renamings.

(WebCore::RenderObject::setLayerNeedsFullRepaintForPositionedMovementLayout):
New method that pass a new value to the RenderLayer.

  • rendering/RenderObject.h:

(WebCore::RenderObject::setNeedsPositionedMovementLayout):
Switched the call to the dedicated method.

LayoutTests:

I did not find any test covering positioned movement layout with composited layers
so I added some testing.

  • compositing/absolute-position-changed-in-composited-layer-expected.png: Added.
  • compositing/absolute-position-changed-in-composited-layer-expected.txt: Added.
  • compositing/absolute-position-changed-in-composited-layer.html: Added.
  • compositing/absolute-position-changed-with-composited-parent-layer-expected.png: Added.
  • compositing/absolute-position-changed-with-composited-parent-layer-expected.txt: Added.
  • compositing/absolute-position-changed-with-composited-parent-layer.html: Added.
  • compositing/fixed-position-changed-in-composited-layer-expected.png: Added.
  • compositing/fixed-position-changed-in-composited-layer-expected.txt: Added.
  • compositing/fixed-position-changed-in-composited-layer.html: Added.
  • compositing/fixed-position-changed-within-composited-parent-layer-expected.png: Added.
  • compositing/fixed-position-changed-within-composited-parent-layer-expected.txt: Added.
  • compositing/fixed-position-changed-within-composited-parent-layer.html: Added.
9:53 AM Changeset in webkit [102951] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Don't invoke CSSStyleSelector::pushParent before Text::recalcTextStyle
https://bugs.webkit.org/show_bug.cgi?id=74575

Reviewed by Darin Adler.

Text::recalcTextStyle never enters the style selector so pushing the state is not necessary

  • dom/Element.cpp:

(WebCore::Element::recalcStyle):

9:50 AM Changeset in webkit [102950] by kbr@google.com
  • 10 edits in trunk

[chromium] Add DRT support for WebKitPageCacheSupportsPluginsPreferenceKey
https://bugs.webkit.org/show_bug.cgi?id=74581

Reviewed by Darin Fisher.

Source/WebKit/chromium:

  • public/WebSettings.h:
  • src/WebSettingsImpl.cpp:

(WebKit::WebSettingsImpl::setPageCacheSupportsPlugins):

  • src/WebSettingsImpl.h:

Tools:

  • DumpRenderTree/chromium/LayoutTestController.cpp:

(LayoutTestController::overridePreference):

  • DumpRenderTree/chromium/WebPreferences.cpp:

(WebPreferences::reset):
(WebPreferences::applyTo):

  • DumpRenderTree/chromium/WebPreferences.h:

LayoutTests:

Unskip one test which now passes. The other one will continue to
be covered under the other bug.

  • platform/chromium/test_expectations.txt:
9:49 AM WebKitGTK/1.6.x edited by Martin Robinson
(diff)
9:33 AM Changeset in webkit [102949] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit

Patch by Adam Treat <atreat@rim.com> on 2011-12-15
Reviewed by Rob Buis.

https://bugs.webkit.org/show_bug.cgi?id=74609
PR 122703

For certain configurations of webpage content and zoom level we were
failing to produce a valid backingstore matrix by being to strict on
whether a given matrix fits the preferred matrix orientation.
This patch fixes this by insisting on storing a candidate divisor
whether or not it agrees with the preferred matrix orientation and then
comparing all subsequent divisors.

  • blackberry/Api/BackingStore.cpp:

(BlackBerry::WebKit::divisorIsPerfectWidth):
(BlackBerry::WebKit::divisorIsPerfectHeight):
(BlackBerry::WebKit::divisorIsPreferredDirection):
(BlackBerry::WebKit::bestDivisor):

9:21 AM Changeset in webkit [102948] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

[Qt][WK2] Move WebPreferences into experimental
https://bugs.webkit.org/show_bug.cgi?id=74404

Patch by Rafael Brandao <rafael.lobo@openbossa.org> on 2011-12-15
Reviewed by Tor Arne Vestbø.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewExperimental::preferences):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_messaging.qml:
  • UIProcess/API/qt/tests/qmltests/WebView/tst_preferences.qml:
9:09 AM Changeset in webkit [102947] by cmarrin@apple.com
  • 1 edit in trunk/Source/WebCore/ChangeLog

Fixed error in Target.pri.

Unreviewed.

  • Target.pri:
9:09 AM Changeset in webkit [102946] by cmarrin@apple.com
  • 2 edits in trunk/Source/WebCore

Fixed error in Target.pri.

Unreviewed.

  • Target.pri:
8:58 AM Changeset in webkit [102945] by leviw@chromium.org
  • 1 edit in branches/subpixellayout/Source/WebCore/rendering/RenderLayer.cpp

Correcting positioning of scrollbars to use pixelSnapped logic instead of enclosingIntRect

8:55 AM Changeset in webkit [102944] by leviw@chromium.org
  • 23 edits in branches/subpixellayout/Source/WebCore
  • Changing Renderer offsetLeft/Top/Width/Height to be LayoutUnits. Adding pixelSnapped versions as well.
  • Changing AppUnit version of adjustForAbsoluteZoom to return an int and behave like the int version. This is needed to get zoomed values to read back properly.
  • Moved snapSizeToPixel to AppUnit.h.
8:46 AM Changeset in webkit [102943] by apavlov@chromium.org
  • 7 edits in trunk

Web Inspector: #hex colors are not highlighted in CSS files
https://bugs.webkit.org/show_bug.cgi?id=74570

Reviewed by Pavel Feldman.

Source/WebCore:

Drive by: highlight color keywords as colors, not as keywords.

  • inspector/front-end/CSSKeywordCompletions.js:

(WebInspector.CSSKeywordCompletions.colors):

  • inspector/front-end/SourceCSSTokenizer.js:

(WebInspector.SourceCSSTokenizer):
(WebInspector.SourceCSSTokenizer.prototype.nextToken):

  • inspector/front-end/SourceCSSTokenizer.re2js:

LayoutTests:

  • inspector/syntax-highlight-css-expected.txt:
  • inspector/syntax-highlight-css.html:
8:42 AM Changeset in webkit [102942] by cmarrin@apple.com
  • 7 edits
    4 moves in trunk/Source/WebCore

Hardware acceleration of W3C Filter Effects
https://bugs.webkit.org/show_bug.cgi?id=68479

Reviewed by Simon Fraser.

Move FilterOperation(s) to platform/graphics/filters so it can be used to pass filter information
down to GraphicsLayer for hardware acceleration. This leaves the CustomFilterOperation subclass in
rendering/style since it has dependencies outside platform. Some part of that class will
eventually need to be down in platform.

8:40 AM Changeset in webkit [102941] by kenneth@webkit.org
  • 2 edits in trunk/Tools

[Qt] Improve the look of the viewport info overlay

Reviewed by Tor Arne Vestbø.

  • MiniBrowser/qt/qml/ViewportInfoItem.qml:
8:40 AM Changeset in webkit [102940] by vsevik@chromium.org
  • 4 edits
    1 copy in trunk/LayoutTests

Unreviewed test expectations fix.

  • http/tests/inspector/console-resource-errors-expected.txt:
  • http/tests/inspector/console-xhr-logging-expected.txt:
  • platform/chromium/http/tests/inspector/console-xhr-logging-expected.txt: Copied from LayoutTests/http/tests/inspector/console-xhr-logging-expected.txt.
  • platform/qt/Skipped:
8:27 AM Changeset in webkit [102939] by igor.oliveira@openbossa.org
  • 8 edits in trunk

[Qt] Support requestAnimationFrame API
https://bugs.webkit.org/show_bug.cgi?id=74528

Source/JavaScriptCore:

Let Qt port use REQUEST_ANIMATION_FRAME_TIMER.

Reviewed by Kenneth Rohde Christiansen.

  • wtf/Platform.h:

Source/WebCore:

Add necessary files to Target.pri when enabling requestAnimationFrame option.

Reviewed by Kenneth Rohde Christiansen.

  • Target.pri:

Tools:

Add build-option for requestAnimationFrame feature.

Reviewed by Kenneth Rohde Christiansen.

  • qmake/mkspecs/features/features.prf:

LayoutTests:

Enable requestAnimationFrame tests.

Reviewed by Kenneth Rohde Christiansen.

  • platform/qt/Skipped:
8:21 AM Changeset in webkit [102938] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt/Skipped: Skip new failing tests (regressions).
  • platform/qt/fast/dom/Window/window-property-descriptors-expected.txt: Updated after r102918.
7:53 AM Changeset in webkit [102937] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Removing BlackBerryCookieCache from the build system
https://bugs.webkit.org/show_bug.cgi?id=74318

Patch by Otto Cheung <ocheung@rim.com> on 2011-12-15
Reviewed by Rob Buis.

Removing any references to BlackBerryCookieCache in files that are upstreamed.

We are removing the BlackBerryCookieCache because the CookieManager cookie structure has been
refactored to have a similar structure to the cache. Since the read speeds in both structures
are similar, we no longer need the cache to speed up read performance.

No new tests, this patch by itself will not work. This patch is only removing
the references to BlackBerryCookieCache in files that are upstreamed.

  • PlatformBlackBerry.cmake:
  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::handleNotifyHeaderReceived):

7:36 AM Changeset in webkit [102936] by commit-queue@webkit.org
  • 2 edits in trunk

Web Inspector: [Chromium] Call LowMemoryNotification instead of IdleNotification
https://bugs.webkit.org/show_bug.cgi?id=71821

Patch by Ulan Degenbaev <ulan@chromium.org> on 2011-12-15
Reviewed by Yury Semikhatsky.

  • Source/WebCore/bindings/v8/ScriptProfiler.cpp:
7:11 AM Changeset in webkit [102935] by Carlos Garcia Campos
  • 12 edits
    1 copy
    2 adds in trunk/Source/WebKit2

[GTK] Add WebKitWindowProperties to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=74595

Reviewed by Gustavo Noronha Silva.

  • GNUmakefile.am: Add new files to compilation.
  • UIProcess/API/gtk/WebKitUIClient.cpp:

(createNewPage): Pass the dictionary containing the window
features to webkitWebViewCreateNewPage().
(toolbarsAreVisible): Return
WebKitWindowProperties:toolbar-visible.
(setToolbarsAreVisible): Set
WebKitWindowProperties:toolbar-visible.
(menuBarIsVisible): Return WebKitWindowProperties:menu-visible.
(setMenuBarIsVisible): Set WebKitWindowProperties:menu-visible.
(statusBarIsVisible): Return
WebKitWindowProperties:status-visible.
(setStatusBarIsVisible): Set
WebKitWindowProperties:status-visible.
(isResizable): Return WebKitWindowProperties:resizable.
(setIsResizable): Set WebKitWindowProperties:resizable.
(getWindowFrame): Return WebKitWindowProperties:geometry.
(setWindowFrame): Set WebKitWindowProperties:geometry.
(webkitUIClientAttachUIClientToPage): Initialize the UI client for
the given page.

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkit_web_view_init): Create a WebKitWindowProperties object for
the view.
(webkit_web_view_class_init):
(webkitWebViewCreateNewPage): Update the WebKitWindowProperties
object using the window features dictionary.
(webkit_web_view_get_window_properties): Return the
WebKitWindowProperties object of the view.

  • UIProcess/API/gtk/WebKitWebView.h:
  • UIProcess/API/gtk/WebKitWebViewPrivate.h:
  • UIProcess/API/gtk/WebKitWindowProperties.cpp: Added.

(webkitWindowPropertiesFinalize):
(webkitWindowPropertiesGetProperty):
(webkitWindowPropertiesSetProperty):
(webkit_window_properties_class_init):
(webkit_window_properties_init):
(webkitWindowPropertiesCreate): Create a new
WebKitWindowProperties object.
(webkitWindowPropertiesSetGeometry):
(webkitWindowPropertiesSetToolbarVisible):
(webkitWindowPropertiesSetMenubarVisible):
(webkitWindowPropertiesSetStatusbarVisible):
(webkitWindowPropertiesSetLocationbarVisible):
(webkitWindowPropertiesSetScrollbarsVisible):
(webkitWindowPropertiesSetResizable):
(webkitWindowPropertiesSetFullscreen):
(webkitWindowPropertiesUpdateFromWKWindowFeatures): Parse the
window features dictionary and update the WebKitWindowProperties
object accordingly.
(webkit_window_properties_get_geometry):
(webkit_window_properties_get_toolbar_visible):
(webkit_window_properties_get_statusbar_visible):
(webkit_window_properties_get_scrollbars_visible):
(webkit_window_properties_get_menubar_visible):
(webkit_window_properties_get_locationbar_visible):
(webkit_window_properties_get_resizable):
(webkit_window_properties_get_fullscreen):

  • UIProcess/API/gtk/WebKitWindowProperties.h: Added.
  • UIProcess/API/gtk/WebKitWindowPropertiesPrivate.h: Copied from Source/WebKit2/UIProcess/API/gtk/WebKitWebViewPrivate.h.
  • UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add new section for

WebKitWindowProperties.

  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
  • UIProcess/API/gtk/docs/webkit2gtk.types: Add

webkit_window_properties_get_type.

  • UIProcess/API/gtk/tests/TestWebKitWebView.cpp:

(WindowProperties::windowPropertiesNotifyCallback):
(WindowProperties::viewReadyToShow):
(WindowProperties::viewCreate):
(WindowProperties::setExpectedWindowProperties):
(testWebViewWindowProperties):
(beforeAll):

  • UIProcess/API/gtk/webkit2.h: Include WebKitWindowProperties.h.
  • UIProcess/WebUIClient.cpp:

(WebKit::WebUIClient::createNewPage): Add also "locationBarVisible"
to the window features dictionary.

6:59 AM Changeset in webkit [102934] by kenneth@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt] Mobile theme improvements

Rubberstamped by Simon Hausmann.

  • Invert the gradient on the checkboxes
  • Make the buttons on the multi select combobox work on floats
  • Mini cleanups
  • platform/qt/RenderThemeQtMobile.cpp:

(WebCore::StylePainterMobile::drawCheckableBackground):
(WebCore::StylePainterMobile::drawMultipleComboButton):
(WebCore::StylePainterMobile::getButtonImageSize):
(WebCore::StylePainterMobile::drawComboBox):

6:19 AM Changeset in webkit [102933] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: CodeGeneratorInspector.py convert script conditions to precompiler #ifs
https://bugs.webkit.org/show_bug.cgi?id=74534

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

Generator is rewritten to add #if's to output.

  • inspector/CodeGeneratorInspector.py:

(DomainNameFixes.get_fixed_data.Res.get_guard.Guard.generate_open):
(DomainNameFixes.get_fixed_data.Res.get_guard.Guard):
(DomainNameFixes.get_fixed_data.Res.get_guard.Guard.generate_close):
(DomainNameFixes.get_fixed_data.Res):
(DomainNameFixes.get_fixed_data.Res.get_guard):
(Generator.go):
(Generator.process_event):
(Generator.process_command):
(Generator.process_types):

6:09 AM Changeset in webkit [102932] by caio.oliveira@openbossa.org
  • 14 edits
    2 deletes in trunk/Source/WebKit2

[Qt] [WK2] Remove QtWebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=74540

Reviewed by Kenneth Rohde Christiansen.

Move WebPageProxy* to QQuickWebViewPrivate. The remaining functions in
QtWebPageProxy were simple wrappers to WebKit functionality (text zoom, page zoom
and user agent setting). Since those wrappers are unused, they were removed. The
signal in the class was also unused.

This patch also remove the code from WebContextMenuProxyQt, it was remains of a
previous QMenu-based implementation. We want to rewrite this code for QML anyway,
so I reverted to an empty state.

Farewell, QtWebPageProxy!

  • Target.pri:
  • UIProcess/API/qt/qquickwebpage.cpp:
  • UIProcess/API/qt/qquickwebpage_p.h:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::~QQuickWebViewPrivate):
(QQuickWebViewPrivate::initialize):
(QQuickWebViewPrivate::processDidCrash):
(QQuickWebViewPrivate::createDrawingAreaProxy):
(QQuickWebViewPrivate::updateVisibleContentRectAndScale):
(QQuickWebViewPrivate::_q_viewportTrajectoryVectorChanged):
(QQuickWebViewPrivate::_q_onVisibleChanged):
(QQuickWebViewPrivate::updateViewportSize):
(QQuickWebViewPrivate::computeViewportConstraints):
(QQuickWebViewPrivate::setUseTraditionalDesktopBehaviour):
(QQuickWebViewPrivate::setNavigatorQtObjectEnabled):
(QQuickWebViewExperimental::postMessage):
(QQuickWebView::load):
(QQuickWebView::goBack):
(QQuickWebView::goForward):
(QQuickWebView::stop):
(QQuickWebView::reload):
(QQuickWebView::url):
(QQuickWebView::canGoBack):
(QQuickWebView::canGoForward):
(QQuickWebView::loading):
(QQuickWebView::canReload):
(QQuickWebView::title):
(QQuickWebView::pageRef):
(QQuickWebView::loadHtml):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/API/qt/qwebnavigationhistory_p_p.h:
  • UIProcess/API/qt/qwebpreferences.cpp:

(QWebPreferencesPrivate::preferencesRef):

  • UIProcess/PageClient.h:
  • UIProcess/qt/QtPageClient.cpp:

(QtPageClient::QtPageClient):
(QtPageClient::initialize):
(QtPageClient::createPopupMenuProxy):
(QtPageClient::createContextMenuProxy):

  • UIProcess/qt/QtPageClient.h:
  • UIProcess/qt/QtWebPageProxy.cpp: Removed.
  • UIProcess/qt/QtWebPageProxy.h: Removed.
  • UIProcess/qt/WebContextMenuProxyQt.cpp:

(WebKit::WebContextMenuProxyQt::WebContextMenuProxyQt):
(WebKit::WebContextMenuProxyQt::create):
(WebKit::WebContextMenuProxyQt::showContextMenu):
(WebKit::WebContextMenuProxyQt::hideContextMenu):

  • UIProcess/qt/WebContextMenuProxyQt.h:
5:45 AM Changeset in webkit [102931] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Minor refactor to Parser::parseTryStatement
https://bugs.webkit.org/show_bug.cgi?id=74507

Patch by Andy Wingo <wingo@igalia.com> on 2011-12-15
Reviewed by Geoffrey Garen.

  • parser/Parser.cpp (JSC::Parser::parseTryStatement): Use the

Parser's declareVariable instead of going directly to the scope.
This will facilitate future checks related to harmony block
scoping.

5:36 AM Changeset in webkit [102930] by vsevik@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

Unreviewed chromium test rebaseline.

  • platform/chromium/http/tests/inspector/network/script-as-text-loading-expected.txt: Added.
5:32 AM Changeset in webkit [102929] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK rebaseline.

  • platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
5:26 AM Changeset in webkit [102928] by caseq@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Web Inspector: [Chromium] add support to inspector test suite to fetch test execution results from console
https://bugs.webkit.org/show_bug.cgi?id=74208

Reviewed by Yury Semikhatsky.

This adds waitForTestResultsInConsole, a test suite method that monitors console for a message containing
either PASS or FAIL and sets result accordingly. This is used by tests running in the extension context to
communicate test results to the test driver (see devtools_sanity_unittest.cc for an example).

  • src/js/Tests.js:

(.TestSuite.prototype.testWaitForResultsInConsole.onConsoleMessage):
(.TestSuite.prototype.testWaitForResultsInConsole):

5:19 AM Changeset in webkit [102927] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2] Eliminate unnecessary GTK/QT ifdefs for shared memory implementation
https://bugs.webkit.org/show_bug.cgi?id=74602

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2011-12-15
Reviewed by Kenneth Rohde Christiansen.

For shared memory Qt was using shm_open, Gtk was using files in /tmp. There
is no reason to obfuscate the code with #ifdefs or let Gtk use an inferior
method of opening shared memory. So this patch makes SharedMemoryUnix.cpp
truly Qt and Gtk independent.

  • Platform/unix/SharedMemoryUnix.cpp:

(WebKit::SharedMemory::create):

5:18 AM Changeset in webkit [102926] by jesus@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt][WK2] Setting Download as action for navigation request crashes WebProcess
https://bugs.webkit.org/show_bug.cgi?id=74526

Reviewed by Simon Hausmann.

Adding checks for networkcontext and networkAccessManager
and return true in case they don't exist, following the same
logic as if the CookieJar doesn't exist.

  • platform/qt/ThirdPartyCookiesQt.cpp:

(WebCore::thirdPartyCookiePolicyPermits):

5:16 AM Changeset in webkit [102925] by vestbo@webkit.org
  • 4 edits in trunk

[Qt] Don't add WebCoreSupport and WebKit APIs to include WebCore's include path

Reviewed Simon Hausmann.

5:04 AM Changeset in webkit [102924] by Simon Hausmann
  • 2 edits in trunk/Source/WebKit2

[Qt] Cleanup: Remove unnecessary const_cast

Reviewed by Kenneth Christiansen.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebView::preferences):

4:40 AM Changeset in webkit [102923] by vestbo@webkit.org
  • 5 edits in trunk/Source

[Qt] Get rid of layering violation in PluginViewQt

PluginViewQt has a layering violation in relying on QWebPagePrivate for
the check if running under DRT. We remove this and add a specific flag
in the PluginView for this check, enabled from DRTSupport. This isn't
pretty, but an improvement over what's currently there.

Reviewed by Simon Hausmann.

4:38 AM Changeset in webkit [102922] by commit-queue@webkit.org
  • 14 edits
    4 adds in trunk

[QT][WK2]Add (experimental) viewport info view to Minibrowser/qt.
https://bugs.webkit.org/show_bug.cgi?id=72893

Patch by Michael Brüning <michael.bruning@nokia.com> on 2011-12-15
Reviewed by Kenneth Rohde Christiansen.

This patch extends QQuickWebViewExperimental by a property named
viewportInfo, which contains the viewport scalability and
layout and contents size information. This property is exposed to
QML through the experimental extension for QQuickWebView.

.:

  • Source/qtwebkit-export.map:

Source/WebKit/qt:

  • declarative/experimental/plugin.cpp:

Source/WebKit2:

  • Target.pri:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::didChangeContentsSize):
(QQuickWebViewPrivate::computeViewportConstraints):
(QQuickWebViewPrivate::PostTransitionState::apply): Added applying
contentsSize to viewportInfo.
(QQuickWebViewExperimental::QQuickWebViewExperimental):
(QQuickWebViewExperimental::viewportInfo):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h: Moved PostTransitionState::apply

to qquickwebview.cpp. Added friend QWebViewportInfo.

  • UIProcess/API/qt/qwebviewportinfo.cpp: Added.

(QWebViewportInfo::QWebViewportInfo):
(QWebViewportInfo::~QWebViewportInfo):
(QWebViewportInfo::contentsSize):
(QWebViewportInfo::currentScale):
(QWebViewportInfo::devicePixelRatio):
(QWebViewportInfo::initialScale):
(QWebViewportInfo::minimumScale):
(QWebViewportInfo::maximumScale):
(QWebViewportInfo::isScalable):
(QWebViewportInfo::layoutSize):
(QWebViewportInfo::didUpdateContentsSize):
(QWebViewportInfo::didUpdateCurrentScale):
(QWebViewportInfo::didUpdateViewportConstraints):

  • UIProcess/API/qt/qwebviewportinfo_p.h: Added.
  • UIProcess/qt/QtViewportInteractionEngine.h:

(WebKit::QtViewportInteractionEngine::Constraints::Constraints): Added layoutSize.
(WebKit::QtViewportInteractionEngine::constraints): Added property to access m_contraints.

Tools:

  • MiniBrowser/qt/MiniBrowser.pro:
  • MiniBrowser/qt/MiniBrowser.qrc:
  • MiniBrowser/qt/icons/info.png: Added.
  • MiniBrowser/qt/qml/BrowserWindow.qml:
  • MiniBrowser/qt/qml/ViewportInfoItem.qml: Added.
4:35 AM Changeset in webkit [102921] by peter@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Enable TestNetscapePlugIn to link for Android
https://bugs.webkit.org/show_bug.cgi?id=74597

Reviewed by Tony Gentilcore.

The -nostdlib linker flag is being passed to all targets being build
for Android, which conflicts with the shared library the
TestNetscapePlugIn target created. Explicitly exclude the flag.

  • WebKit.gyp:
4:31 AM Changeset in webkit [102920] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2] WebPage::m_useFixedLayout variable unininitialized
https://bugs.webkit.org/show_bug.cgi?id=74596

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2011-12-15
Reviewed by Kenneth Rohde Christiansen.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): Avoid uninitialized use through
initialization in the constructor.

4:16 AM Changeset in webkit [102919] by vsevik@chromium.org
  • 6 edits in trunk

Web Inspector: Console should show network messages origins.
https://bugs.webkit.org/show_bug.cgi?id=74521

Reviewed by Pavel Feldman.

Source/WebCore:

  • inspector/front-end/ConsoleMessage.js:

(WebInspector.ConsoleMessageImpl.prototype._formatMessage):

LayoutTests:

  • http/tests/inspector/console-resource-errors-expected.txt:
  • http/tests/inspector/console-xhr-logging-expected.txt:
  • platform/chromium/http/tests/inspector/console-resource-errors-expected.txt:
4:02 AM Changeset in webkit [102918] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

"user-select none" causes selection to incorrectly escape from clicked container
https://bugs.webkit.org/show_bug.cgi?id=57289

Patch by Rakesh KN <rakesh.kn@motorola.com> on 2011-12-15
Reviewed by Ryosuke Niwa.

Source/WebCore:

Not selecting the nearest word from the target node if target node has -webkit-user-select:none

Test: fast/events/mouse-double-triple-click-should-not-select-next-node-for-user-select-none.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::updateSelectionForMouseDownDispatchingSelectStart):
If target node has webkit-user-select:none style then do not update the selection.

LayoutTests:

  • fast/events/mouse-double-triple-click-should-not-select-next-node-for-user-select-none-expected.txt: Added.
  • fast/events/mouse-double-triple-click-should-not-select-next-node-for-user-select-none.html: Added.
  • fast/js/resources/js-test-pre.js:

(shouldNotBe):
Added new helper function to check for inequality.

4:01 AM Changeset in webkit [102917] by commit-queue@webkit.org
  • 22 edits
    2 moves in trunk/Source/JavaScriptCore

Rename JSC::Heuristics to JSC::Options
https://bugs.webkit.org/show_bug.cgi?id=72889

Patch by Andy Wingo <wingo@igalia.com> on 2011-12-15
Reviewed by Filip Pizlo.

  • runtime/Options.cpp: Renamed from Source/JavaScriptCore/runtime/Heuristics.cpp.
  • runtime/Options.h: Renamed from Source/JavaScriptCore/runtime/Heuristics.h.
  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::shouldOptimizeNow):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::likelyToTakeSlowCase):
(JSC::CodeBlock::couldTakeSlowCase):
(JSC::CodeBlock::likelyToTakeSpecialFastCase):
(JSC::CodeBlock::likelyToTakeDeepestSlowCase):
(JSC::CodeBlock::likelyToTakeAnySlowCase):
(JSC::CodeBlock::reoptimizationRetryCounter):
(JSC::CodeBlock::countReoptimization):
(JSC::CodeBlock::counterValueForOptimizeAfterWarmUp):
(JSC::CodeBlock::counterValueForOptimizeAfterLongWarmUp):
(JSC::CodeBlock::optimizeNextInvocation):
(JSC::CodeBlock::dontOptimizeAnytimeSoon):
(JSC::CodeBlock::optimizeSoon):
(JSC::CodeBlock::largeFailCountThreshold):
(JSC::CodeBlock::largeFailCountThresholdForLoop):
(JSC::CodeBlock::shouldReoptimizeNow):
(JSC::CodeBlock::shouldReoptimizeFromLoopNow):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleInlining):

  • dfg/DFGCapabilities.h:

(JSC::DFG::mightCompileEval):
(JSC::DFG::mightCompileProgram):
(JSC::DFG::mightCompileFunctionForCall):
(JSC::DFG::mightCompileFunctionForConstruct):
(JSC::DFG::mightInlineFunctionForCall):
(JSC::DFG::mightInlineFunctionForConstruct):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::OSRExit::considerAddingAsFrequentExitSiteSlow):

  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGVariableAccessData.h:

(JSC::DFG::VariableAccessData::shouldUseDoubleFormatAccordingToVote):

  • heap/MarkStack.cpp:

(JSC::MarkStackSegmentAllocator::allocate):
(JSC::MarkStackSegmentAllocator::shrinkReserve):
(JSC::MarkStackArray::MarkStackArray):
(JSC::MarkStackArray::donateSomeCellsTo):
(JSC::MarkStackArray::stealSomeCellsFrom):
(JSC::MarkStackThreadSharedData::MarkStackThreadSharedData):
(JSC::SlotVisitor::donateSlow):
(JSC::SlotVisitor::drain):
(JSC::SlotVisitor::drainFromShared):

  • heap/MarkStack.h:

(JSC::MarkStack::mergeOpaqueRootsIfProfitable):
(JSC::MarkStack::addOpaqueRoot):
(JSC::MarkStackArray::canDonateSomeCells):

  • heap/SlotVisitor.h:

(JSC::SlotVisitor::donate):

  • jit/JIT.cpp:

(JSC::JIT::emitOptimizationCheck):

  • runtime/InitializeThreading.cpp:

(JSC::initializeThreadingOnce): Adapt callers and build systems.

  • testRegExp.cpp:

(CommandLine::CommandLine):

  • jsc.cpp:

(CommandLine::CommandLine):
Rename from Options, to avoid name conflict.

3:58 AM Changeset in webkit [102916] by caseq@chromium.org
  • 17 edits in trunk

Web Inspector: Generated HAR is missing pages.startedDateTime
https://bugs.webkit.org/show_bug.cgi?id=74188

Reviewed by Pavel Feldman.

Source/WebCore:

  • inspector/front-end/HAREntry.js:

(WebInspector.HARLog.prototype._buildPages):

  • inspector/front-end/NetworkLog.js:

(WebInspector.NetworkLog):
(WebInspector.NetworkLog.prototype.get mainResourceStartTime):
(WebInspector.NetworkLog.prototype._mainFrameNavigated):

  • inspector/front-end/NetworkPanel.js:

(WebInspector.NetworkLogView.prototype._updateSummaryBar):

LayoutTests:

  • http/tests/inspector/inspector-test.js:

(initialize_InspectorTest.InspectorTest.formatRecentTime):
(initialize_InspectorTest.InspectorTest.addObject):

  • http/tests/inspector/resource-har-conversion-expected.txt:
  • http/tests/inspector/resource-parameters-expected.txt:
  • http/tests/inspector/resources-test.js:
  • platform/chromium/http/tests/inspector/resource-har-conversion-expected.txt:
  • platform/mac-snowleopard/http/tests/inspector/resource-har-conversion-expected.txt:
3:57 AM Changeset in webkit [102915] by bashi@chromium.org
  • 16 edits
    3 adds in trunk

Supports Unicode variation selector
https://bugs.webkit.org/show_bug.cgi?id=50999

Reviewed by Nikolas Zimmermann.

Source/WebCore:

Adds SimpleFontData::updateGlyphWithVariationSelector() which substitutes the
glyph in question based on the selector. WidthIterator::advance() calls it
when an unicode variation selector follows the character.

Test: fast/text/unicode-variation-selector.html

  • platform/graphics/SimpleFontData.h: Added updateGlyphWithVariationSelector().
  • platform/graphics/SurrogatePairAwareTextIterator.cpp:

(WebCore::isUnicodeBMPVariationSelector): Added.
(WebCore::isUnicodeSupplementaryVariationSelector): Added.
(WebCore::SurrogatePairAwareTextIterator::hasTrailingVariationSelector): Added.

  • platform/graphics/SurrogatePairAwareTextIterator.h:
  • platform/graphics/WidthIterator.cpp:

(WebCore::WidthIterator::advance): Changed to detect variation selectors.

  • platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:

(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Added.

  • platform/graphics/chromium/SimpleFontDataLinux.cpp:

(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.

  • platform/graphics/freetype/SimpleFontDataFreeType.cpp:

(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.

  • platform/graphics/mac/SimpleFontDataMac.mm:

(WebCore::decomposeToUTF16): Ditto.
(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.

  • platform/graphics/pango/SimpleFontDataPango.cpp:

(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.

  • platform/graphics/qt/SimpleFontDataQt.cpp:

(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.

  • platform/graphics/win/SimpleFontDataWin.cpp:

(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.

  • platform/graphics/wince/SimpleFontDataWinCE.cpp:

(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.

  • platform/graphics/wx/SimpleFontDataWx.cpp:

(WebCore::SimpleFontData::updateGlyphWithVariationSelector): Ditto.

LayoutTests:

Add test for unicode variation selector support.
A tiny font (gw432047.ttf), which comes from glyphwiki.org and is used by Mozilla, is added for the test.

  • fast/text/resources/gw432047-license.txt: Added.
  • fast/text/resources/gw432047.ttf: Added.
  • fast/text/unicode-variation-selector.html: Added.
  • platform/chromium/test_expectations.txt: Added fast/text/unicode-variation-selector.html. This test need rebaseline.
3:44 AM Changeset in webkit [102914] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[chromium] WebViewHost::requestCheckingOfText should return immediately if text is empty.
https://bugs.webkit.org/show_bug.cgi?id=74586

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

No new tests. Covered by existing tests.

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::requestCheckingOfText):

Returns immediately if text is empty.

3:21 AM Changeset in webkit [102913] by apavlov@chromium.org
  • 3 edits
    2 adds in trunk

[v8] Expose the "filter" property in V8CSSStyleDeclaration
https://bugs.webkit.org/show_bug.cgi?id=73426

Source/WebCore:

Reviewed by Adam Barth.

Test: fast/css/style-enumerate-properties.html

The "filter" CSS property used to be masked to be compliant with JSC, but JSC has supported
this property for quite a while.

  • bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:

(WebCore::hasCSSPropertyNamePrefix): clean up WTF prefixes
(WebCore::cssPropertyInfo): remove the "wasFilter" flag
(WebCore::V8CSSStyleDeclaration::namedPropertyEnumerator): remove the "filter" check
(WebCore::V8CSSStyleDeclaration::namedPropertyGetter): return the "filter" value as v8String

LayoutTests:

The original version of this test should have landed in r102578 but was lost
during the "revert-reland" cycle.

Reviewed by Adam Barth.

  • fast/css/style-enumerate-properties-expected.txt: Added.
  • fast/css/style-enumerate-properties.html: Added.
2:58 AM Changeset in webkit [102912] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/qt

[Qt] Remove unnecessary methods and members from DeviceOrientationClientQt
https://bugs.webkit.org/show_bug.cgi?id=74588

Patch by Alexander Færøy <ahf@0x90.dk> on 2011-12-15
Reviewed by Simon Hausmann.

Remove the unused method changeDeviceOrientation() from
DeviceOrientationClientQt and remove the DeviceOrientationController
member since it is unused.

  • WebCoreSupport/DeviceOrientationClientQt.cpp:

(WebCore::DeviceOrientationClientQt::DeviceOrientationClientQt):
(WebCore::DeviceOrientationClientQt::setController):

  • WebCoreSupport/DeviceOrientationClientQt.h:
2:58 AM Changeset in webkit [102911] by morrita@google.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix attempt for Chromium Mac.

  • page/PerformanceTiming.h:
2:09 AM Changeset in webkit [102910] by apavlov@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, build fix after r102906 (poor merge).

  • inspector/front-end/ProfileView.js:

(WebInspector.CPUProfileType.prototype.buttonClicked):

2:06 AM Changeset in webkit [102909] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt] r102849 broke the Qt build on Mac OS X.
https://bugs.webkit.org/show_bug.cgi?id=74594

Patch by Alexander Færøy <ahf@0x90.dk> on 2011-12-15
Reviewed by Simon Hausmann.

The APPLE macro is defined on all standard OS X compilers, which
leads to various CoreGraphics headers to be included in the Qt build.

  • config.h:
1:59 AM Changeset in webkit [102908] by vsevik@chromium.org
  • 21 edits
    2 deletes in trunk

Unreviewed revert of r102696 ([Navigation Timing] Use monotonicallyIncreasingTime() instead of currentTime()).
Breaks inspector's network panel timeline on chromium.

Source/WebCore:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/Document.cpp:

(WebCore::Document::setReadyState):
(WebCore::Document::finishedParsing):

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::didFinishLoadingImpl):

  • inspector/InspectorResourceAgent.cpp:

(WebCore::buildObjectForTiming):
(WebCore::buildObjectForResourceResponse):
(WebCore::buildObjectForCachedResource):
(WebCore::InspectorResourceAgent::willSendRequest):
(WebCore::InspectorResourceAgent::didReceiveResponse):
(WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):

  • loader/DocumentLoadTiming.cpp: Removed.
  • loader/DocumentLoadTiming.h:

(WebCore::DocumentLoadTiming::DocumentLoadTiming):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::stopLoading):
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
(WebCore::FrameLoader::loadProvisionalItemFromCachedPage):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::continueAfterNavigationPolicy):
(WebCore::MainResourceLoader::willSendRequest):
(WebCore::MainResourceLoader::didReceiveData):
(WebCore::MainResourceLoader::didFinishLoading):
(WebCore::MainResourceLoader::load):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::dispatchLoadEvent):
(WebCore::DOMWindow::dispatchTimedEvent):

  • page/DOMWindow.h:
  • page/PerformanceNavigation.cpp:

(WebCore::PerformanceNavigation::redirectCount):

  • page/PerformanceTiming.cpp:

(WebCore::getPossiblySkewedTimeInKnownRange):
(WebCore::PerformanceTiming::navigationStart):
(WebCore::PerformanceTiming::unloadEventStart):
(WebCore::PerformanceTiming::unloadEventEnd):
(WebCore::PerformanceTiming::redirectStart):
(WebCore::PerformanceTiming::redirectEnd):
(WebCore::PerformanceTiming::fetchStart):
(WebCore::PerformanceTiming::responseEnd):
(WebCore::PerformanceTiming::domLoading):
(WebCore::PerformanceTiming::domInteractive):
(WebCore::PerformanceTiming::domContentLoadedEventStart):
(WebCore::PerformanceTiming::domContentLoadedEventEnd):
(WebCore::PerformanceTiming::domComplete):
(WebCore::PerformanceTiming::loadEventStart):
(WebCore::PerformanceTiming::loadEventEnd):
(WebCore::PerformanceTiming::resourceLoadTimeRelativeToAbsolute):

  • page/PerformanceTiming.h:
  • platform/network/ResourceLoadTiming.cpp: Removed.
  • platform/network/ResourceLoadTiming.h:

LayoutTests:

  • fast/dom/script-tests/webtiming.js:
1:45 AM Changeset in webkit [102907] by apavlov@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, fix Closure compiler warnings after r102905.

  • inspector/front-end/CSSStyleModel.js: Add JSDoc annotations
1:37 AM Changeset in webkit [102906] by apavlov@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: make ProfilesPanel scale as the number of ProfileTypes grows
https://bugs.webkit.org/show_bug.cgi?id=74391

Reviewed by Pavel Feldman.

Whenever a profile is started, this change disables all profile recording buttons, except the one
that correponds to the running profile. Once the profiling is finished, all buttons get enabled back again.

  • English.lproj/localizedStrings.js:
  • inspector/front-end/ProfileView.js:

(WebInspector.CPUProfileView.profileCallback):
(WebInspector.CPUProfileType.prototype.get buttonTooltip):
(WebInspector.CPUProfileType.prototype.get buttonStyle):
(WebInspector.CPUProfileType.prototype.buttonClicked):

  • inspector/front-end/ProfilesPanel.js:

(WebInspector.ProfilesPanel.prototype.get statusBarItems.clickHandler):
(WebInspector.ProfilesPanel.prototype.get statusBarItems):
(WebInspector.ProfilesPanel.prototype._addProfileHeader):
(WebInspector.ProfilesPanel.prototype.updateProfileTypeButtons):
(WebInspector.ProfilesPanel.prototype._updateInterface):
(WebInspector.ProfilesPanel.prototype.setRecordingProfile):
(WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):
(WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
(WebInspector.ProfilerDispatcher.prototype.setRecordingProfile):

  • inspector/front-end/inspector.css:

(.record-cpu-profile-status-bar-item .glyph):
(.record-cpu-profile-status-bar-item.toggled-on .glyph):

1:33 AM Changeset in webkit [102905] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[Qt] QtWebKit fails to build on Mac OS X after r102776
https://bugs.webkit.org/show_bug.cgi?id=74593

Patch by Alexander Færøy <ahf@0x90.dk> on 2011-12-15
Reviewed by Simon Hausmann.

CONFIG =+ link_pkgconfig is needed such that the correct parameters
are passed to the compiler.

  • DumpRenderTree/qt/DumpRenderTree.pro:
1:29 AM Changeset in webkit [102904] by zherczeg@webkit.org
  • 3 edits
    1 add in trunk/LayoutTests

Unreviewed, Qt rebaseline after r102149 and r102846.

  • platform/qt/editing/pasteboard/paste-text-013-expected.txt:
  • platform/qt/editing/pasteboard/paste-text-014-expected.txt:
  • platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Added.
1:23 AM Changeset in webkit [102903] by apavlov@chromium.org
  • 11 edits in trunk/Source/WebCore

Web Inspector: [Styles] Update selected DOM element styles whenever applicable media queries change
https://bugs.webkit.org/show_bug.cgi?id=74292

The change introduces and handles in the frontend a new event type for the CSS domain,
"mediaQueryResultChanged", which gets fired every time a viewport-dependent media feature
changes its value. This allows users to see live changes of the (media-dependent) matched
rules for inspected elements.

Reviewed by Pavel Feldman.

  • inspector/CodeGeneratorInspector.py:

(DomainNameFixes):

  • inspector/Inspector.json:
  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::InspectorCSSAgent):
(WebCore::InspectorCSSAgent::setFrontend):
(WebCore::InspectorCSSAgent::clearFrontend):
(WebCore::InspectorCSSAgent::restore):
(WebCore::InspectorCSSAgent::enable):
(WebCore::InspectorCSSAgent::disable):
(WebCore::InspectorCSSAgent::mediaQueryResultChanged):

  • inspector/InspectorCSSAgent.h:
  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::mediaQueryResultChangedImpl):

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::mediaQueryResultChanged):

  • inspector/front-end/CSSStyleModel.js:

(WebInspector.CSSStyleModel):
(WebInspector.CSSStyleModel.prototype.mediaQueryResultChanged):
(WebInspector.CSSDispatcher):
(WebInspector.CSSDispatcher.prototype.mediaQueryResultChanged):

  • inspector/front-end/MetricsSidebarPane.js:

(WebInspector.MetricsSidebarPane):
(WebInspector.MetricsSidebarPane.prototype._styleSheetOrMediaQueryResultChanged):

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylesSidebarPane):
(WebInspector.StylesSidebarPane.prototype._styleSheetOrMediaQueryResultChanged):

  • page/FrameView.cpp:

(WebCore::FrameView::layout):

1:21 AM Changeset in webkit [102902] by morrita@google.com
  • 1 edit
    5 deletes in trunk/LayoutTests

Unreviewed, removing incorrect expectaions.

  • platform/chromium-cg-mac-leopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Removed.
  • platform/chromium-cg-mac-snowleopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Removed.
  • platform/chromium-mac-leopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Removed.
  • platform/chromium-mac-snowleopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Removed.
  • platform/chromium-win-xp/media/video-poster-blocked-by-willsendrequest-expected.txt: Removed.
1:12 AM Changeset in webkit [102901] by vsevik@chromium.org
  • 2 edits in branches/chromium/963/Source/WebCore/inspector/front-end

Merge 102756 - Web Inspector: [Regression] Scripts panel debug sidebar toolbar should not be scrolled out of the screen.
https://bugs.webkit.org/show_bug.cgi?id=74447

Reviewed by Pavel Feldman.

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.wasShown):

  • inspector/front-end/scriptsPanel.css:

(#scripts-debug-toolbar):
(#scripts-debug-sidebar-contents):

TBR=vsevik@chromium.org
BUG=107420
Review URL: http://codereview.chromium.org/8949013

1:09 AM Changeset in webkit [102900] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, add fast/images/move-image-to-new-document.html in GTK
test_expectations.

  • platform/gtk/test_expectations.txt:
1:08 AM Changeset in webkit [102899] by vsevik@chromium.org
  • 1 edit in branches/chromium/963/Source/WebCore/inspector/front-end/treeoutline.js

Merge 102757 - Web Inspector: TreeOutline's is broken when li elements have padding-left different from 14px.
https://bugs.webkit.org/show_bug.cgi?id=74445

Reviewed by Pavel Feldman.

  • inspector/front-end/treeoutline.js:

(TreeElement.prototype.isEventWithinDisclosureTriangle):

TBR=vsevik@chromium.org
BUG=107418
Review URL: http://codereview.chromium.org/8952012

12:52 AM Changeset in webkit [102898] by vsevik@chromium.org
  • 4 edits
    3 adds in trunk

Web Inspector: [Regression] Network manager fails to show resource type and MIME type in incorrect MIME type console message.
https://bugs.webkit.org/show_bug.cgi?id=74516

Reviewed by Pavel Feldman.

Source/WebCore:

Test: http/tests/inspector/network/script-as-text-loading.html

  • inspector/front-end/ConsoleMessage.js:

(WebInspector.ConsoleMessageImpl.prototype._formatMessage):

  • inspector/front-end/NetworkManager.js:

(WebInspector.NetworkDispatcher.prototype._updateResourceWithResponse):

LayoutTests:

  • http/tests/inspector/network/resources/script-as-text.php: Added.
  • http/tests/inspector/network/script-as-text-loading-expected.txt: Added.
  • http/tests/inspector/network/script-as-text-loading.html: Added.
12:10 AM Changeset in webkit [102897] by Philippe Normand
  • 3 edits
    1 add in trunk/LayoutTests

Unreviewed, GTK rebaseline after r102149 and r102846.

  • platform/gtk/editing/pasteboard/paste-text-013-expected.txt:
  • platform/gtk/editing/pasteboard/paste-text-014-expected.txt:
  • platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Added.

Dec 14, 2011:

11:00 PM Changeset in webkit [102896] by tkent@chromium.org
  • 5 edits
    2 adds in trunk

A spin button changes the value incorrectly if it is clicked after touch events.
https://bugs.webkit.org/show_bug.cgi?id=71181

Reviewed by Ryosuke Niwa.

Source/WebCore:

SpinButtonElement assumed setHovered(true) was always called before a
mousemove event in the element. It is not true for touch events.

We should not reset m_upDownState to Indetermiante in setHovered(true),
and should reset it when the mouse pointer moves out.

This change fixes the flakiness of fast/forms/input-step-as-double.html.

Test: fast/events/touch/touch-before-pressing-spin-button.html

  • html/shadow/TextControlInnerElements.cpp:

(WebCore::SpinButtonElement::defaultEventHandler):
Add an assertion that m_upDownState should not be Indetermiante.
Reset m_upDownState to Indeterminate when the mouse pointer moves out
from the element.
(WebCore::SpinButtonElement::setHovered):
Reset m_upDownState to Indeterminate when the element becomes unhovered.

LayoutTests:

  • fast/events/touch/touch-before-pressing-spin-button-expected.txt: Added.
  • fast/events/touch/touch-before-pressing-spin-button.html: Added.
  • platform/chromium/test_expectations.txt: Remove the flakiness of fast/forms/input-step-as-double.html.
  • platform/qt/Skipped: ditto.
10:57 PM Changeset in webkit [102895] by Lucas Forschler
  • 2 edits
    1 add in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=74543
Add CSS*.cpp to a new CSSAllInOne.cpp file with two exceptions:

CSSProperty.cpp
CSSPrimitiveValue.cpp

Adding these two broke things with a templates problem that was not easily fixable.

Reviewed by Steve Falkenburg.

  • WebCore.vcproj/WebCore.vcproj:
  • css/CSSAllInOne.cpp: Added.
10:51 PM Changeset in webkit [102894] by levin@chromium.org
  • 3 edits
    2 adds in trunk

[chromium] DatabaseObserver needs threadsafe fixes and other clean-up.
https://bugs.webkit.org/show_bug.cgi?id=74558

Reviewed by Dmitry Titov.

Source/WebKit/chromium:

The important part of this fix is the removal of AllowCrossThreadAccess so
that ref counting happens appropriately.

Minor clean up throughout: Removed unnecessary WTF prefix in many
of these places and unnecessary String().

  • src/DatabaseObserver.cpp:

(WebKit::AllowDatabaseMainThreadBridge::create):
(WebKit::AllowDatabaseMainThreadBridge::signalCompleted): Get rid of
AllowCrossThreadAccess so that "this" get ref counted and remove mode from being
a member variable since a String in a ThreadSafeRefCounted class is bad.
(WebKit::AllowDatabaseMainThreadBridge::AllowDatabaseMainThreadBridge): Ditto.
(WebKit::AllowDatabaseMainThreadBridge::allowDatabaseTask): Pass through mode
and minor code cleaning to do only one call to signalCompleted.
(WebKit::allowDatabaseForWorker): Just removed unnecessary String()'s.

LayoutTests:

Added a test which would fail without some of these fixes.

  • http/tests/workers/interrupt-database-sync-open-crash.html: Added.
  • http/tests/workers/resources/open-database-sync.js: Added.

(onmessage):

10:48 PM Changeset in webkit [102893] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebCore

Generated images should respect the accelerated state of the context they're going to be drawn into
https://bugs.webkit.org/show_bug.cgi?id=74577
<rdar://problem/10584392>

Reviewed by Simon Fraser.

The tiled code path for GeneratorGeneratedImage and CrossfadeGeneratedImage blindly creates
an unaccelerated ImageBuffer. Instead, take into account the accelerated state of the destination context.

No new tests, as this is a simple performance improvement.

  • platform/graphics/CrossfadeGeneratedImage.cpp:

(WebCore::CrossfadeGeneratedImage::drawPattern):

  • platform/graphics/GeneratorGeneratedImage.cpp:

(WebCore::GeneratorGeneratedImage::drawPattern):

10:36 PM Changeset in webkit [102892] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebKit/efl

[EFL] Change efl style variable name with WebKit style for internal functions.
https://bugs.webkit.org/show_bug.cgi?id=74474

Reviewed by Ryosuke Niwa.

In order to be more compliant with WebKit coding style, variable names of internal functions
should be changed with WebKit coding style.

  • ewk/ewk_private.h:
  • ewk/ewk_view.cpp:

(ewk_view_scroll):

10:34 PM Changeset in webkit [102891] by tony@chromium.org
  • 4 edits in trunk

[chromium] Remove redundant third_party entries from chromium DEPS
https://bugs.webkit.org/show_bug.cgi?id=74472

Reviewed by Kenneth Russell.

Source/WebKit/chromium:

Removed redundant DEPS entries for third_party subdirectories
coming from chromium_svn, which were causing intermittent gclient
failures on the bots.

  • DEPS:

Tools:

  • Scripts/update-webkit-chromium: Temporarily keep unversioned trees.
10:32 PM Changeset in webkit [102890] by haraken@chromium.org
  • 2 edits in trunk/Tools

[Refactoring] In prepare-ChangeLog, replace $isGit and $isSVN with
VCSUtils::isGit() and VCSUtils::isSVN().
https://bugs.webkit.org/show_bug.cgi?id=74485

Reviewed by David Kilzer.

We are planning to write unit-tests for prepare-ChangeLog in a run-leaks_unittest
manner. This bug is one of the incremental refactorings to remove all top-level
code and global variables from prepare-ChangeLog. This patch replaces $isGit and $isSVN
with VCSUtils::isGit() and VCSUtils::isSVN(). This patch also removes firstDirectoryOrCwd(),
assuming that no user will mix Git/SVN checkouts and thus we can judge SVN or Git
just by looking at the current working directory.

  • Scripts/prepare-ChangeLog: Removed firstDirectoryOrCwd().

(diffFromToString):
(diffCommand):
(statusCommand):
(createPatchCommand):
(diffHeaderFormat):
(generateFileList):
(isAddedStatus):
(isConflictStatus):
(statusDescription):
(extractLineRange):

10:25 PM Changeset in webkit [102889] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: cleanup unused variable introduced at r102803

  • inspector/front-end/NetworkManager.js:

(WebInspector.NetworkManager.prototype.enableResourceTracking):
(WebInspector.NetworkManager.prototype.disableResourceTracking):

10:14 PM Changeset in webkit [102888] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

fast path to accelerate processing in AudioBus::processWithGainFromMonoStereo
https://bugs.webkit.org/show_bug.cgi?id=74054

Patch by Wei James <james.wei@intel.com> on 2011-12-14
Reviewed by Kenneth Russell.

Avoid de-zippering when the gain has converged on the targetGain.
It can get about 75% performance gain at most when all frames don't need
de-zippering.

  • platform/audio/AudioBus.cpp:

(WebCore::AudioBus::processWithGainFromMonoStereo):

10:14 PM Changeset in webkit [102887] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Increase maximum number of gamepad buttons in Chromium port interface
https://bugs.webkit.org/show_bug.cgi?id=74559

Patch by Scott Graham <scottmg@chromium.org> on 2011-12-14
Reviewed by Darin Fisher.

  • public/platform/WebGamepad.h:
9:55 PM Changeset in webkit [102886] by tkent@chromium.org
  • 7 edits
    3 copies
    7 adds
    2 deletes in trunk/LayoutTests

[Chromium] Test expectatino update.

  • Rebaseline for basic-selects.html.
  • Move menulist-onchange-fired-with-key-up-down.html to the WONTFIX section.
  • Remove a duplicated entry.
  • platform/chromium-cg-mac-leopard/fast/forms/basic-selects-expected.png:
  • platform/chromium-cg-mac-leopard/fast/forms/basic-selects-expected.txt: Added.
  • platform/chromium-cg-mac-snowleopard/fast/forms/basic-selects-expected.png: Added.
  • platform/chromium-cg-mac-snowleopard/fast/forms/basic-selects-expected.txt: Added.
  • platform/chromium-cg-mac/fast/forms/basic-selects-expected.png: Removed.
  • platform/chromium-linux-x86/fast/forms/basic-selects-expected.txt: Copied from LayoutTests/platform/chromium-linux/fast/forms/basic-selects-expected.txt.
  • platform/chromium-linux/fast/forms/basic-selects-expected.png:
  • platform/chromium-linux/fast/forms/basic-selects-expected.txt:
  • platform/chromium-mac-leopard/fast/forms/basic-selects-expected.png: Added.
  • platform/chromium-mac-leopard/fast/forms/basic-selects-expected.txt: Added.
  • platform/chromium-mac-snowleopard/fast/forms/basic-selects-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/forms/basic-selects-expected.txt: Added.
  • platform/chromium-mac/fast/forms/basic-selects-expected.png: Removed.
  • platform/chromium-win-vista/fast/forms/basic-selects-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/forms/basic-selects-expected.txt.
  • platform/chromium-win-xp/fast/forms/basic-selects-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/forms/basic-selects-expected.txt.
  • platform/chromium-win/fast/forms/basic-selects-expected.png:
  • platform/chromium-win/fast/forms/basic-selects-expected.txt:
  • platform/chromium/test_expectations.txt:
9:48 PM Changeset in webkit [102885] by weinig@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Revert unintentional change to JavaScriptCore.def

9:47 PM Changeset in webkit [102884] by tkent@chromium.org
  • 2 edits in trunk/LayoutTests

[Mac] Skip menulist-popup-crash.html because of timeout.
https://bugs.webkit.org/show_bug.cgi?id=73304

  • platform/mac/Skipped:
9:40 PM Changeset in webkit [102883] by tkent@chromium.org
  • 3 edits in trunk/Source/WebKit/wince

Opening two popup menus by dispatchEvent() makes problems.
https://bugs.webkit.org/show_bug.cgi?id=73304

Patch by Jing Zhao <jingzhao@chromium.org> on 2011-12-14
Reviewed by Ryosuke Niwa.

  • WebCoreSupport/ChromeClientWinCE.cpp:

(WebKit::ChromeClientWinCE::hasOpenedPopup): Not implemented.

  • WebCoreSupport/ChromeClientWinCE.h: Overrides hasOpenedPopup().
9:26 PM Changeset in webkit [102882] by adamk@chromium.org
  • 3 edits in trunk/Source/WebCore

Optimize MutationObserverInterestGroup construction
https://bugs.webkit.org/show_bug.cgi?id=74563

Reviewed by Ojan Vafai.

Inline MutationObserverInterestGroup's creation methods and fix an
accidental pass-by-value in an attempt to further reduce the CPU
footprint of MutationObservers.

No new tests, refactor only.

  • dom/WebKitMutationObserver.cpp:

(WebCore::MutationObserverInterestGroup::MutationObserverInterestGroup): Pass observers HashMap by reference.

  • dom/WebKitMutationObserver.h:

(WebCore::MutationObserverInterestGroup::createForChildListMutation): Inline.
(WebCore::MutationObserverInterestGroup::createForCharacterDataMutation): Inline.
(WebCore::MutationObserverInterestGroup::createForAttributesMutation): Inline.
(WebCore::MutationObserverInterestGroup::hasOldValue): Remove spurious inline keyword.

9:22 PM Changeset in webkit [102881] by bashi@chromium.org
  • 4 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r102873.
http://trac.webkit.org/changeset/102873
https://bugs.webkit.org/show_bug.cgi?id=64434

Break the build

Patch by Kenichi Ishibashi <bashi@chromium.org> on 2011-12-14

  • public/WebPlugin.h:
  • src/WebPluginContainerImpl.cpp:
  • src/WebPluginContainerImpl.h:
9:20 PM Changeset in webkit [102880] by morrita@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed test_expectations.txt update.

  • platform/chromium/test_expectations.txt:
9:08 PM Changeset in webkit [102879] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit/mac

Mac build fix after r102874.

  • WebCoreSupport/WebChromeClient.mm:
8:52 PM Changeset in webkit [102878] by morrita@google.com
  • 1 edit
    1 delete in trunk/LayoutTests

Unreviewed expectation update.

  • platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt: Removed.
8:40 PM Changeset in webkit [102877] by dmazzoni@google.com
  • 8 edits
    1 add
    2 deletes in trunk

Seeing crash in DRT after loading-iframe-sends-notification.html land
https://bugs.webkit.org/show_bug.cgi?id=72624

Source/WebCore:

When an iframe finishes loading, send an accessibility notification
on the renderer, rather than on a parent node. The only reason it was
being posted on a parent before was because there was no way to detect
that in a test. This is simpler and now covered by the test.

Reviewed by Chris Fleizach.

Updates existing test:
accessibility/loading-iframe-sends-notification.html

  • dom/Document.cpp:

(WebCore::Document::implicitClose):

LayoutTests:

Rewrite test to use a global addNotificationListener, which makes it
more robust and cross-platform.

Reviewed by Chris Fleizach.

  • accessibility/loading-iframe-sends-notification-expected.txt: Added.
  • accessibility/loading-iframe-sends-notification.html:
  • platform/chromium/accessibility/loading-iframe-sends-notification-expected.txt: Removed.
  • platform/chromium/test_expectations.txt:
  • platform/gtk/Skipped:
  • platform/gtk/accessibility/loading-iframe-sends-notification-expected.txt: Removed.
  • platform/mac/Skipped:
  • platform/win/Skipped:
8:37 PM Changeset in webkit [102876] by nduca@chromium.org
  • 14 edits in trunk/Source

[chromium] Add inhibitDraw to CCScheduler and drop root impl to prevent background flash on tab restore
https://bugs.webkit.org/show_bug.cgi?id=74351

Reviewed by James Robinson.

Source/WebCore:

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::setNeedsCommit):
(WebCore::CCLayerTreeHost::didBecomeInvisibleOnImplThread):

  • platform/graphics/chromium/cc/CCScheduler.cpp:

(WebCore::CCScheduler::getNextAction):
(WebCore::CCScheduler::processScheduledActions):

  • platform/graphics/chromium/cc/CCScheduler.h:
  • platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:

(WebCore::CCSchedulerStateMachine::CCSchedulerStateMachine):
(WebCore::CCSchedulerStateMachine::nextAction):

  • platform/graphics/chromium/cc/CCSchedulerStateMachine.h:

(WebCore::CCSchedulerStateMachine::setInhibitDraw):

  • platform/graphics/chromium/cc/CCThreadProxy.cpp:

(WebCore::CCThreadProxy::setVisibleOnImplThread):
(WebCore::CCThreadProxy::inhibitDraw):

  • platform/graphics/chromium/cc/CCThreadProxy.h:

Source/WebKit/chromium:

  • tests/CCSchedulerStateMachineTest.cpp:

(WebCore::StateMachine::inhibitDraw):
(WebCore::TEST):

  • tests/CCSchedulerTest.cpp:

(WebKitTests::FakeCCSchedulerClient::setInhibitDraw):
(WebKitTests::FakeCCSchedulerClient::inhibitDraw):
(WebKitTests::SchedulerClientThatSetNeedsDrawInsideDraw::inhibitDraw):
(WebKitTests::SchedulerClientThatSetNeedsCommitInsideDraw::inhibitDraw):

8:19 PM Changeset in webkit [102875] by commit-queue@webkit.org
  • 6 edits
    2 adds in trunk

Crash due to incorrect parsing of isolates
https://bugs.webkit.org/show_bug.cgi?id=74311
When <bdi> content is wrapped, all hell breaks loose
https://bugs.webkit.org/show_bug.cgi?id=74396

Patch by Ken Buchanan <kenrb@chromium.org> on 2011-12-14
Reviewed by Eric Seidel.

Source/WebCore:

When an isolate was encountered during run layout, the entire isolate
would be parsed, even if the run started in the middle of the isolate.
This would sometimes cause parts of the isolate to be added multiple
times as runs. This patch marks the starting position within the
isolate so nothing is parsed twice.

This patch changes appendRun() so that when a run is added that is
inside an isolate, it saves the start position of the run rather than
the root. This allows constructBidiRuns() to resume parsing the
isolate from the correct position.

The change to RenderBox partially reverts a previous change I had
done. It makes sense to screen for the condition, as was previously
the case.

This patch does not add the test case from 74396 because a separate
bug is preventing it from rendering correctly.

  • rendering/InlineIterator.h:

(WebCore::addPlaceholderRunForIsolatedInline)
(WebCore::IsolateTracker::addFakeRunIfNecessary)
(WebCore::InlineBidiResolver::appendRun)

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockLineLayout::constructBidiRuns)

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::positionLineBox)

LayoutTests:

Layout test has multiple lines inside an isolate to ensure each run
is created only once.

The test that is in bug 74396 will have to be added once bug 74489 is
fixed.

  • LayoutTests/fast/text/international/multiline-and-object-inside-isolate-crash-expected.txt: Added
  • LayoutTests/fast/text/international/multiline-and-object-inside-isolate-crash.html: Added
8:16 PM Changeset in webkit [102874] by commit-queue@webkit.org
  • 28 edits
    2 adds in trunk

Opening two popup menus by dispatchEvent() makes problems.
https://bugs.webkit.org/show_bug.cgi?id=73304

Patch by Jing Zhao <jingzhao@chromium.org> on 2011-12-14
Reviewed by Kent Tamura.

Source/WebCore:

By using element.dispatchEvent(), a user written script can open two
popup menus, which causes various problems in different platforms.

Add a hasOpenedPopup() method in ChromeClient and a wrapper in Chrome.
In RenderMenuList::showPopup(), check if there is an opened popup menu
before opening a new popup menu.

Test: fast/forms/select-popup-crash.html

  • loader/EmptyClients.h: Overrides hasOpenedPopup().

(WebCore::EmptyChromeClient::hasOpenedPopup): Returns false as a default case.

  • page/Chrome.cpp:

(WebCore::Chrome::hasOpenedPopup): Calls ChromeClient::hasOpenedPopup().

  • page/Chrome.h: Declares hasOpenedPopup().
  • page/ChromeClient.h: Declares hasOpenedPopup() as a pure virtual function.
  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::showPopup): Calls Chrome::hasOpenedPopup() before opening a new popup menu.

Source/WebKit/chromium:

By using element.dispatchEvent(), a user written script can open two
popup menus, which causes the assertion in WebViewImpl::popupOpened()
fail.

ChromeClientImpl::hasOpenedPopup() is called by Chrome::hasOpenedPopup()
in RenderMenuList::showPopup(), to check if there is an opened popup
menu before opening a new popup menu.

  • src/ChromeClientImpl.cpp:

(WebKit::ChromeClientImpl::hasOpenedPopup): Checks the popup in WebViewImpl.

  • src/ChromeClientImpl.h: Overrides hasOpenedPopup().

Source/WebKit/efl:

  • WebCoreSupport/ChromeClientEfl.cpp:

(WebCore::ChromeClientEfl::hasOpenedPopup): Not implemented.

  • WebCoreSupport/ChromeClientEfl.h: Overrides hasOpenedPopup().

Source/WebKit/gtk:

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::hasOpenedPopup): Not implemented.

  • WebCoreSupport/ChromeClientGtk.h: Overrides hasOpenedPopup().

Source/WebKit/mac:

  • WebCoreSupport/WebChromeClient.h: Overrides hasOpenedPopup().
  • WebCoreSupport/WebChromeClient.mm:

(WebChromeClient::hasOpenedPopup): Not implemented.

Source/WebKit/qt:

  • WebCoreSupport/ChromeClientQt.cpp:

(WebCore::ChromeClientQt::hasOpenedPopup): Not implemented.

  • WebCoreSupport/ChromeClientQt.h: Overrides hasOpenedPopup().

Source/WebKit/win:

  • WebCoreSupport/WebChromeClient.cpp:

(WebChromeClient::hasOpenedPopup): Not implemented.

  • WebCoreSupport/WebChromeClient.h: Overrides hasOpenedPopup().

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::hasOpenedPopup): Not implemented.

  • WebProcess/WebCoreSupport/WebChromeClient.h: Overrides hasOpenedPopup().

LayoutTests:

  • fast/forms/select/menulist-popup-crash-expected.txt: Added.
  • fast/forms/select/menulist-popup-crash.html: Added.
7:39 PM Changeset in webkit [102873] by bashi@chromium.org
  • 4 edits in trunk/Source/WebKit/chromium

[Chromium] Implement PluginViewBase::getFormValue
https://bugs.webkit.org/show_bug.cgi?id=64434

Adds getFormValue() to WebPluginContainerImpl as an implementation of PluginViewBase::getFormValue().

Reviewed by Darin Fisher.

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().
7:24 PM Changeset in webkit [102872] by tony@chromium.org
  • 2 edits in trunk/Source/WebCore

Clean up style in CSSStyleSelector.cpp
https://bugs.webkit.org/show_bug.cgi?id=74548

Reviewed by Ojan Vafai.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::styleForElement):
(WebCore::CSSStyleSelector::pseudoStyleForElement):

7:22 PM Changeset in webkit [102871] by kbr@google.com
  • 4 edits in trunk/Source/WebCore

Unreviewed, rolling out r102794.
http://trac.webkit.org/changeset/102794
https://bugs.webkit.org/show_bug.cgi?id=74220

Reapplying patch since it is not the cause of the problems
described in bug 74220.

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::reportUnsafeAccessTo):

  • bindings/v8/V8Proxy.h:
  • bindings/v8/custom/V8CustomXPathNSResolver.cpp:

(WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):

6:30 PM Changeset in webkit [102870] by morrita@google.com
  • 6 edits
    1 copy
    1 move
    5 adds
    2 deletes in trunk/LayoutTests

Unreviewed expectation update.

  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/chromium-cg-mac-leopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
  • platform/chromium-cg-mac-snowleopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
  • platform/chromium-cg-mac-snowleopard/platform/chromium/compositing/huge-layer-rotated-expected.png:
  • platform/chromium-mac-leopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
  • platform/chromium-mac-snowleopard/media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
  • platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt: Renamed from LayoutTests/platform/chromium/svg/css/getComputedStyle-basic-expected.txt.
  • platform/chromium-win-xp/media/video-poster-blocked-by-willsendrequest-expected.txt: Added.
  • platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
  • platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
  • platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
  • platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Copied from LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt.
  • platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
6:28 PM Changeset in webkit [102869] by mrowe@apple.com
  • 21 edits in trunk/Source

Build fix.

Clear the executable bit from header files. They don't need it.

6:20 PM Changeset in webkit [102868] by Lucas Forschler
  • 12 edits
    3 copies in tags/Safari-535.13.1/Source/WebKit2

Merged r102640.

6:14 PM Changeset in webkit [102867] by weinig@apple.com
  • 89 edits in trunk/Source

Remove whitespace from InheritedPropertySheets attributes in
vsprops files to appease the Visual Studio project migrator.

Patch by Sam Weinig <weinig@apple.com> on 2011-12-14
Reviewed by Adam Roben.

Source/JavaScriptCore:

Source/WebCore:

  • WebCore.vcproj/QTMovieWinDebug.vsprops:
  • WebCore.vcproj/QTMovieWinDebugAll.vsprops:
  • WebCore.vcproj/QTMovieWinDebugCairoCFLite.vsprops:
  • WebCore.vcproj/QTMovieWinProduction.vsprops:
  • WebCore.vcproj/QTMovieWinRelease.vsprops:
  • WebCore.vcproj/QTMovieWinReleaseCairoCFLite.vsprops:
  • WebCore.vcproj/WebCoreDebug.vsprops:
  • WebCore.vcproj/WebCoreDebugAll.vsprops:
  • WebCore.vcproj/WebCoreDebugCairoCFLite.vsprops:
  • WebCore.vcproj/WebCoreProduction.vsprops:
  • WebCore.vcproj/WebCoreRelease.vsprops:
  • WebCore.vcproj/WebCoreReleaseCairoCFLite.vsprops:

Source/WebKit/win:

  • WebKit.vcproj/InterfacesDebug.vsprops:
  • WebKit.vcproj/InterfacesDebugAll.vsprops:
  • WebKit.vcproj/InterfacesDebugCairoCFLite.vsprops:
  • WebKit.vcproj/InterfacesProduction.vsprops:
  • WebKit.vcproj/InterfacesRelease.vsprops:
  • WebKit.vcproj/InterfacesReleaseCairoCFLite.vsprops:
  • WebKit.vcproj/WebKitGUIDDebug.vsprops:
  • WebKit.vcproj/WebKitGUIDDebugAll.vsprops:
  • WebKit.vcproj/WebKitGUIDDebugCairoCFLite.vsprops:
  • WebKit.vcproj/WebKitGUIDProduction.vsprops:
  • WebKit.vcproj/WebKitGUIDRelease.vsprops:
  • WebKit.vcproj/WebKitGUIDReleaseCairoCFLite.vsprops:
  • WebKit.vcproj/WebKitLibDebug.vsprops:
  • WebKit.vcproj/WebKitLibDebugAll.vsprops:
  • WebKit.vcproj/WebKitLibDebugCairoCFLite.vsprops:
  • WebKit.vcproj/WebKitLibProduction.vsprops:
  • WebKit.vcproj/WebKitLibRelease.vsprops:
  • WebKit.vcproj/WebKitLibReleaseCairoCFLite.vsprops:

Source/WebKit2:

  • win/WebKit2Debug.vsprops:
  • win/WebKit2DebugAll.vsprops:
  • win/WebKit2DebugCairoCFLite.vsprops:
  • win/WebKit2Production.vsprops:
  • win/WebKit2Release.vsprops:
  • win/WebKit2ReleaseCairoCFLite.vsprops:
  • win/WebKit2WebProcessDebug.vsprops:
  • win/WebKit2WebProcessDebugAll.vsprops:
  • win/WebKit2WebProcessDebugCairoCFLite.vsprops:
  • win/WebKit2WebProcessProduction.vsprops:
  • win/WebKit2WebProcessRelease.vsprops:
  • win/WebKit2WebProcessReleaseCairoCFLite.vsprops:
6:10 PM Changeset in webkit [102866] by andersca@apple.com
  • 8 edits in trunk/Source/WebKit2

Add WorkQueue::dispatch and RunLoop::dispatch which both take WTF::Function objects
https://bugs.webkit.org/show_bug.cgi?id=74574

Reviewed by Sam Weinig.

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::SyncMessageState::processIncomingMessage):
(CoreIPC::Connection::addQueueClient):
(CoreIPC::Connection::removeQueueClient):
(CoreIPC::Connection::invalidate):
(CoreIPC::Connection::sendMessage):
(CoreIPC::Connection::postConnectionDidCloseOnConnectionWorkQueue):
(CoreIPC::Connection::connectionDidClose):
(CoreIPC::Connection::enqueueIncomingMessage):
Switch over to dispatch.

  • Platform/RunLoop.cpp:

(RunLoop::dispatch):
Create a FunctionWorkItem and call scheduleWork.

  • Platform/RunLoop.h:

Add dispatch.

  • Platform/WorkItem.h:

(FunctionWorkItem::FunctionWorkItem):
(FunctionWorkItem::execute):
(WorkItem::create):
Add a helper work item that wraps a WTF::Function.

  • Platform/WorkQueue.cpp:

(WorkQueue::dispatch):
Create a FunctionWorkItem and call scheduleWork.

  • Platform/WorkQueue.h:

Add dispatch.

  • UIProcess/Launcher/ProcessLauncher.cpp:

(WebKit::ProcessLauncher::ProcessLauncher):
Switch over to dispatch.

6:05 PM Changeset in webkit [102865] by Lucas Forschler
  • 2 edits in tags/Safari-535.13.1/Source/WebKit/mac

Merged r102856.

6:04 PM Changeset in webkit [102864] by enrica@apple.com
  • 2 edits in trunk/Source/WebCore

One more attempt to fix the release build (hopefully the last)

Unreviewed.

  • editing/ReplaceSelectionCommand.cpp: Added NodeRenderStyle.h
6:02 PM Changeset in webkit [102863] by commit-queue@webkit.org
  • 2 edits in trunk/Source

[chromium] Fix CCLayerTreeHostTest shutdown race
https://bugs.webkit.org/show_bug.cgi?id=73926

This patch fixes a shutdown race condition in CCLayerTreeHostTest which
may happen if endTest() is called from within the drawLayersOnCCThread()
test hook. The sequence of events leading to the problem is:

  1. CCThreadProxy::scheduledActionDrawAndSwap() is called when a frame begins.
  2. CCThreadProxy calls drawLayersOnCCThread(), which in turn calls endTest().
  3. Seeing it's not running in the main thread, endTest() posts a task calling itself in the main thread.
  4. CCThreadProxy posts a task for calling didCommitAndDrawFrame() in the main thread.

The race is between the task posted in step #3 and the CC thread running
in scheduledActionDrawAndSwap(). If the endTask() task is scheduled
before the CC thread reaches step #4, it drains the pending message
queue (CCLayerTreeHostTest.cpp:369) before the task in step #4 is
posted.

The result is that the didCommitAndDrawFrame() task is executed after
the test fixture has been torn down, causing a read of unallocated
memory in CCScopedThreadProxy::runTaskIfNotShutdown (as m_targetThread
is no longer valid).

The fix is check m_shutdown before touching m_targetThread in
CCScopedThreadProxy. That is, events will still be queued after shutdown
but they will not be processed.

Patch by Sami Kyostila <skyostil@chromium.org> on 2011-12-14
Reviewed by James Robinson.

6:01 PM Changeset in webkit [102862] by weinig@apple.com
  • 57 edits in trunk/Tools

Remove whitespace from InheritedPropertySheets attributes in
vsprops files to appease the Visual Studio project migrator.

Patch by Sam Weinig <weinig@apple.com> on 2011-12-14
Reviewed by Adam Roben.

  • DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginDebug.vsprops:
  • DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginDebugAll.vsprops:
  • DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginDebugCairoCFLite.vsprops:
  • DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginProduction.vsprops:
  • DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginRelease.vsprops:
  • DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePluginReleaseCairoCFLite.vsprops:
  • DumpRenderTree/win/DumpRenderTreeDebug.vsprops:
  • DumpRenderTree/win/DumpRenderTreeDebugAll.vsprops:
  • DumpRenderTree/win/DumpRenderTreeDebugCairoCFLite.vsprops:
  • DumpRenderTree/win/DumpRenderTreeProduction.vsprops:
  • DumpRenderTree/win/DumpRenderTreeRelease.vsprops:
  • DumpRenderTree/win/DumpRenderTreeReleaseCairoCFLite.vsprops:
  • DumpRenderTree/win/ImageDiffDebug.vsprops:
  • DumpRenderTree/win/ImageDiffDebugAll.vsprops:
  • DumpRenderTree/win/ImageDiffDebugCairoCFLite.vsprops:
  • DumpRenderTree/win/ImageDiffProduction.vsprops:
  • DumpRenderTree/win/ImageDiffRelease.vsprops:
  • DumpRenderTree/win/ImageDiffReleaseCairoCFLite.vsprops:
  • MiniBrowser/Configurations/MiniBrowserDebug.vsprops:
  • MiniBrowser/Configurations/MiniBrowserDebugAll.vsprops:
  • MiniBrowser/Configurations/MiniBrowserDebugCairoCFLite.vsprops:
  • MiniBrowser/Configurations/MiniBrowserProduction.vsprops:
  • MiniBrowser/Configurations/MiniBrowserRelease.vsprops:
  • MiniBrowser/Configurations/MiniBrowserReleaseCairoCFLite.vsprops:
  • TestWebKitAPI/Configurations/TestWebKitAPIRelease.vsprops:
  • TestWebKitAPI/Configurations/TestWebKitAPIReleaseCairoCFLite.vsprops:
  • WebKitLauncherWin/WebKitLauncherWinDebug.vsprops:
  • WebKitLauncherWin/WebKitLauncherWinDebugAll.vsprops:
  • WebKitLauncherWin/WebKitLauncherWinDebugCairoCFLite.vsprops:
  • WebKitLauncherWin/WebKitLauncherWinProduction.vsprops:
  • WebKitLauncherWin/WebKitLauncherWinRelease.vsprops:
  • WebKitLauncherWin/WebKitLauncherWinReleaseCairoCFLite.vsprops:
  • WebKitTestRunner/win/InjectedBundleDebug.vsprops:
  • WebKitTestRunner/win/InjectedBundleDebugAll.vsprops:
  • WebKitTestRunner/win/InjectedBundleDebugCairoCFLite.vsprops:
  • WebKitTestRunner/win/InjectedBundleProduction.vsprops:
  • WebKitTestRunner/win/InjectedBundleRelease.vsprops:
  • WebKitTestRunner/win/InjectedBundleReleaseCairoCFLite.vsprops:
  • WebKitTestRunner/win/WebKitTestRunnerDebug.vsprops:
  • WebKitTestRunner/win/WebKitTestRunnerDebugAll.vsprops:
  • WebKitTestRunner/win/WebKitTestRunnerDebugCairoCFLite.vsprops:
  • WebKitTestRunner/win/WebKitTestRunnerProduction.vsprops:
  • WebKitTestRunner/win/WebKitTestRunnerRelease.vsprops:
  • WebKitTestRunner/win/WebKitTestRunnerReleaseCairoCFLite.vsprops:
  • WinLauncher/WinLauncherDebug.vsprops:
  • WinLauncher/WinLauncherDebugAll.vsprops:
  • WinLauncher/WinLauncherDebugCairoCFLite.vsprops:
  • WinLauncher/WinLauncherProduction.vsprops:
  • WinLauncher/WinLauncherRelease.vsprops:
  • WinLauncher/WinLauncherReleaseCairoCFLite.vsprops:
  • record-memory-win/record-memory-winDebug.vsprops:
  • record-memory-win/record-memory-winDebugAll.vsprops:
  • record-memory-win/record-memory-winDebugCairoCFLite.vsprops:
  • record-memory-win/record-memory-winProduction.vsprops:
  • record-memory-win/record-memory-winRelease.vsprops:
  • record-memory-win/record-memory-winReleaseCairoCFLite.vsprops:
5:59 PM Changeset in webkit [102861] by Lucas Forschler
  • 3 edits in tags/Safari-535.13.1/Source/JavaScriptCore

Merged r102728.

5:57 PM Changeset in webkit [102860] by andersca@apple.com
  • 2 edits in trunk/Tools

Windows build fix.

Move CHECKs out of the destructor.

  • TestWebKitAPI/Tests/WTF/Functional.cpp:

(TestWebKitAPI::B::~B):
(TestWebKitAPI::TEST):

5:51 PM Changeset in webkit [102859] by Lucas Forschler
  • 6 edits in tags/Safari-535.13.1

Merged r102709.

5:38 PM Changeset in webkit [102858] by kbr@google.com
  • 6 edits in trunk/Source/WebCore

Unreviewed, rolling out r102816.
http://trac.webkit.org/changeset/102816
https://bugs.webkit.org/show_bug.cgi?id=74415

Implicated in font-related crashes on Chromium canaries.

  • platform/graphics/chromium/FontChromiumWin.cpp:

(WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
(WebCore::Font::drawGlyphs):

  • platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:

(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::operator=):
(WebCore::FontPlatformData::~FontPlatformData):

  • platform/graphics/chromium/FontPlatformDataChromiumWin.h:

(WebCore::FontPlatformData::size):
(WebCore::FontPlatformData::hash):

  • platform/graphics/skia/SkiaFontWin.cpp:

(WebCore::setupPaintForFont):
(WebCore::paintSkiaText):

  • platform/graphics/skia/SkiaFontWin.h:
5:37 PM Changeset in webkit [102857] by andersca@apple.com
  • 4 edits in trunk

binding a member function should ref/deref the object pointer if needed
https://bugs.webkit.org/show_bug.cgi?id=74552

Reviewed by Sam Weinig.

Source/JavaScriptCore:

Add a HasRefAndDeref helper class template which checks if a given class type has ref and deref
member functions which the right type. Use this to determine if we should ref/deref the first parameter.

  • wtf/Functional.h:

(WTF::R):
(WTF::C::):
(WTF::RefAndDeref::ref):
(WTF::RefAndDeref::deref):

Tools:

Add new tests.

  • TestWebKitAPI/Tests/WTF/Functional.cpp:

(TestWebKitAPI::B::B):
(TestWebKitAPI::B::~B):
(TestWebKitAPI::B::ref):
(TestWebKitAPI::B::deref):
(TestWebKitAPI::B::f):
(TestWebKitAPI::B::g):
(TestWebKitAPI::TEST):

5:30 PM Changeset in webkit [102856] by msaboff@apple.com
  • 2 edits in trunk/Source/WebKit/mac
5:30 PM Changeset in webkit [102855] by Simon Fraser
  • 9 edits in trunk

Filter amounts should accept percentages
https://bugs.webkit.org/show_bug.cgi?id=74531

Source/WebCore:

Reviewed by Chris Marrin.

Support percentage arguments for some filter functions, using the FPercent flag
to validUnit(). Fix CSSStyleSelector::createFilterOperations() to do the divide by 100
for percentages.

Replaced isValidFilterArgument(), which just tested arguments one by one for validity, with
parseBuiltinFilterArguments() which tests and creates the CSSValues at the same time, which
is a little more efficient. It also allows filter-specific behavior to be more localized in this
method.

Covered by existing tests.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseBuiltinFilterArguments):
(WebCore::CSSParser::parseFilter):

  • css/CSSParser.h:
  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::createFilterOperations):

LayoutTests:

Reviewed by Chris Marrin.

Adjust test results now that percentages are allowed for some
filter arguments, and add testing of percentage arguments to filter-property-computed-style.js

  • css3/filters/filter-property-computed-style-expected.txt:
  • css3/filters/filter-property-parsing-invalid-expected.txt:
  • css3/filters/script-tests/filter-property-computed-style.js:
  • css3/filters/script-tests/filter-property-parsing-invalid.js:
5:24 PM Changeset in webkit [102854] by enrica@apple.com
  • 2 edits in trunk/Source/WebCore

Build fix.

Unreviewed.

  • editing/ReplaceSelectionCommand.cpp: Added include RenderStyle.h
5:17 PM Changeset in webkit [102853] by enrica@apple.com
  • 3 edits in trunk/LayoutTests

Updating test results after r102846

Unreviewed.

  • platform/chromium-win/editing/pasteboard/paste-text-013-expected.txt:
  • platform/chromium-win/editing/pasteboard/paste-text-014-expected.txt:
5:15 PM Changeset in webkit [102852] by Lucas Forschler
  • 3 edits in tags/Safari-535.13.1/Source/WebCore

Merge 102691.

5:08 PM Changeset in webkit [102851] by Lucas Forschler
  • 2 edits in branches/safari-534.53-branch/LayoutTests

Merged r97524.

5:07 PM Changeset in webkit [102850] by Lucas Forschler
  • 4 edits
    2 copies in branches/safari-534.53-branch

Merged r97502.

4:51 PM Changeset in webkit [102849] by commit-queue@webkit.org
  • 28 edits
    2 copies
    7 adds in trunk

JS_INLINE and WTF_INLINE should be visible from WebCore
https://bugs.webkit.org/show_bug.cgi?id=73191

Source/JavaScriptCore:

  • Moved Export related macro definitions from config.h to ExportMacros.h and JSExportMacros.h.
  • Moved WTF_USE_JSC and WTF_USE_V8 from various config.h family to Platform.h.
  • Replaced JS_EXPORTDATA in wtf moudule with newly introduced WTF_EXPORTDATA.

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • config.h:
  • runtime/JSExportMacros.h: Added.
  • wtf/ExportMacros.h:
  • wtf/Platform.h:
  • wtf/WTFThreadData.h:
  • wtf/text/AtomicString.h:
  • wtf/text/StringStatics.cpp:

Source/JavaScriptGlue:

  • Extracted export related macro definitions to ExportMacros.h and JSExportMacros.h
  • Added forwarding headers which used in config.h

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

  • ForwardingHeaders/runtime/JSExportMacros.h: Added.
  • ForwardingHeaders/wtf/ExportMacros.h: Added.
  • config.h:

Source/WebCore:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

  • Moved export related definitions from config.h to ExportMacros.h, JSExportMacros.h and PlatformExportMacros.h
  • Added forwarding headers which are referred from config.h

No new tests. Only build related changes.

  • ForwardingHeaders/runtime/JSExportMacros.h: Added.
  • ForwardingHeaders/wtf/ExportMacros.h: Added.
  • WebCore.xcodeproj/project.pbxproj:
  • config.h:
  • platform/PlatformExportMacros.h: Copied from Source/JavaScriptCore/wtf/ExportMacros.h.

Source/WebKit/cf:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

  • WebCoreSupport/WebInspectorClientCF.cpp:

Source/WebKit/mac:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

  • WebKitPrefix.h:

Source/WebKit/qt:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

Added a INCLUDEPATH to make JSExportMacros.h visible.

  • tests/MIMESniffing/MIMESniffing.pro

Source/WebKit2:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

  • config.h:

Tools:

Patch by Hajime Morrita <morrita@chromium.org> on 2011-12-14
Reviewed by Kevin Ollivier.

Removed macro definitions which is now provided by Platform.h

  • DumpRenderTree/chromium/config.h:
  • DumpRenderTree/config.h:
  • DumpRenderTree/ForwardingHeaders/runtime/JSExportMacros.h: Added.
  • DumpRenderTree/ForwardingHeaders/wtf/ExportMacros.h: Added.
  • DumpRenderTree/win/DumpRenderTreePreBuild.cmd: Add new ForwardingHeaders.
  • TestWebKitAPI/config.h:
  • WebKitTestRunner/config.h:
4:44 PM Changeset in webkit [102848] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

[Mac] Sandbox violation opening AppleSNBFBUserClient
https://bugs.webkit.org/show_bug.cgi?id=74560
<rdar://problem/10410896>

Reviewed by Darin Adler.

  • WebProcess/com.apple.WebProcess.sb: Just allow it.
4:41 PM Changeset in webkit [102847] by dslomov@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed: more specific bug for suppression of fast/workers/storage.
Bug https://bugs.webkit.org/show_bug.cgi?id=74554 with investigation results filed.

  • platform/chromium/test_expectations.txt:
4:32 PM Changeset in webkit [102846] by enrica@apple.com
  • 12 edits
    2 adds in trunk

Need a way to produce leaner markup when pasting a fragment containing verbose markup
https://bugs.webkit.org/show_bug.cgi?id=74514
<rdar://problem/10208653>

Reviewed by Ryosuke Niwa.

Source/WebCore:

This patch is another step in the direction of reducing the verbosity of the markup
produced with editing operations.
After the copied fragment is inserted in the document, it is analyzed to remove all
the elements that don't contribute to the style. The decision is made comparing the
render styles. As part of the cleanup, unstyled divs with single child element are
removed. The logic to determine the blocks that can be removed is the same used in
DeleteSelectionCommand and has been moved in CompositeEditCommand.

Test: editing/pasteboard/paste-and-sanitize.html

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::isRemovableBlock): Implements logic to determine
if a block can be removed.

  • editing/CompositeEditCommand.h: Added isRemovableBlock declaration.
  • editing/DeleteSelectionCommand.cpp:

(WebCore::DeleteSelectionCommand::removeRedundantBlocks): Implemented using
isRemovableBlock from CompositeEditCommand.

  • editing/Editor.cpp:

(WebCore::Editor::replaceSelectionWithFragment): Added SanitizeFragment option.

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand): Added initialization
of m_sanitizeFragment member.
(WebCore::ReplaceSelectionCommand::removeRedundantMarkup): New method implementing
the cleanup logic.
(WebCore::ReplaceSelectionCommand::doApply): Added call to removeRedundantMarkup
after the fragment is inserted in the document.

  • editing/ReplaceSelectionCommand.h: Added new value to the enum CommandOption,

a new member variable and the new method declaration.

LayoutTests:

  • editing/pasteboard/paste-and-sanitize-expected.txt: Added.
  • editing/pasteboard/paste-and-sanitize.html: Added.
  • editing/pasteboard/paste-text-012-expected.txt: Updated to reflect cleanup.
  • editing/pasteboard/testcase-9507-expected.txt: Updated to reflect cleanup.
  • platform/mac/editing/pasteboard/paste-text-013-expected.txt: Updated to reflect cleanup.
  • platform/mac/editing/pasteboard/paste-text-014-expected.txt: Updated to reflect cleanup.
4:28 PM Changeset in webkit [102845] by kbr@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed Chromium test expectations update. Skip a problematic
test which will be fixed with the fix for an existing bug, and
mark another failure; the latter seems serious and a high-priority
bug has been filed.

  • platform/chromium/test_expectations.txt:
4:24 PM Changeset in webkit [102844] by Lucas Forschler
  • 5 edits in tags/Safari-535.13.1/Source

Versioning.

4:16 PM Changeset in webkit [102843] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit

[BlackBerry] Refactor code and add some debug messages in backing store
https://bugs.webkit.org/show_bug.cgi?id=74539

Patch by Jacky Jiang <zhajiang@rim.com> on 2011-12-14
Reviewed by Antonio Gomes.

Refactor and get rid of the confusing and unnecessary
'renderContentOnly' flag from the family of render methods in the
backing store.
Remove the overload of the render method that takes a list of rects from
the backing store since it is just a for loop and only one place calls it.
Add a debug message to illustrate when we start showing checkerboard and
when we stop.
Fix the debug messages in the DEBUG_BACKINGSTORE so that they actually compile
and add a new message for debugging WebCore invalidation requests.
The original author is Adam Treat <atreat@rim.com>

  • blackberry/Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::resumeScreenAndBackingStoreUpdates):
(BlackBerry::WebKit::BackingStorePrivate::repaint):
(BlackBerry::WebKit::BackingStorePrivate::slowScroll):
(BlackBerry::WebKit::BackingStorePrivate::renderDirectToWindow):
(BlackBerry::WebKit::BackingStorePrivate::render):
(BlackBerry::WebKit::BackingStorePrivate::renderVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::renderBackingStore):
(BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::blitContents):
(BlackBerry::WebKit::BackingStorePrivate::updateTile):
(BlackBerry::WebKit::BackingStorePrivate::invalidateWindow):

  • blackberry/Api/BackingStore_p.h:
4:15 PM Changeset in webkit [102842] by ojan@chromium.org
  • 4 edits in trunk/LayoutTests

Add new expected results that were missed in r102837.

  • fast/css/getComputedStyle/computed-style-expected.txt:
  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • svg/css/getComputedStyle-basic-expected.txt:
4:12 PM Changeset in webkit [102841] by haraken@chromium.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r102761.
http://trac.webkit.org/changeset/102761
https://bugs.webkit.org/show_bug.cgi?id=74485

we came up with a better fix than this (see comments in bug
74485)

  • Scripts/prepare-ChangeLog:

(generateFunctionLists):
(printDiff):
(diffCommand):
(statusCommand):
(createPatchCommand):
(generateFileList):
(isAddedStatus):
(isConflictStatus):
(statusDescription):
(extractLineRange):

3:59 PM Changeset in webkit [102840] by Lucas Forschler
  • 1 copy in tags/Safari-535.13.1

New Tag.

3:55 PM Changeset in webkit [102839] by andersca@apple.com
  • 4 edits in trunk

Work around a bug in the MSVC2005 compiler
https://bugs.webkit.org/show_bug.cgi?id=74550

Reviewed by Sam Weinig.

Source/JavaScriptCore:

Add template parameters for the return types of the partial specializations of BoundFunctionImpl.

  • wtf/Functional.h:

(WTF::R):

Tools:

Re-enable tests.

  • TestWebKitAPI/Tests/WTF/Functional.cpp:
3:50 PM Changeset in webkit [102838] by enne@google.com
  • 14 edits
    16 adds in trunk

[chromium] Refactor tile drawing to be more data-driven
https://bugs.webkit.org/show_bug.cgi?id=73059

Reviewed by James Robinson.

Source/WebCore:

Partially tested by compositor layout tests. Debug borders and
checkerboarding tested manually.

This is the first part of a move towards rendering quads on screen
from a bag of data rather than in virtual CCLayerImpl::draw functions.

CCDrawQuad-derived classes store material-specific pieces of data to
use when rendering. CCLayerImpl classes now create these CCDrawQuad
objects rather than issuing direct GL commands. Where this data is
shared between quads that come from the same layer, that data is
stored in a CCSharedQuadState object rather than duplicated.

CCRenderPass is the class that holds the list of quads and the target
surface that they draw into. Drawing a frame consists of drawing a
series of render passes onto their respective surfaces.

CCLayerTreeHostImpl constructs these render passes from the output of
calculateDrawTransformsAndVisibility by asking each layer to insert
quads into a list and hands them off to LayerRendererChromium for
rendering.

  • WebCore.gypi:
  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::clearSurfaceForDebug):
(WebCore::LayerRendererChromium::beginDrawingFrame):
(WebCore::LayerRendererChromium::drawRenderPass):
(WebCore::LayerRendererChromium::drawQuad):
(WebCore::LayerRendererChromium::drawDebugBorderQuad):
(WebCore::LayerRendererChromium::drawRenderSurfaceQuad):
(WebCore::LayerRendererChromium::drawSolidColorQuad):
(WebCore::tileUniformLocation):
(WebCore::findTileProgramUniforms):
(WebCore::LayerRendererChromium::drawTileQuad):
(WebCore::LayerRendererChromium::drawCustomLayerQuad):
(WebCore::LayerRendererChromium::finishDrawingFrame):
(WebCore::LayerRendererChromium::useRenderSurface):

  • platform/graphics/chromium/LayerRendererChromium.h:
  • platform/graphics/chromium/ShaderChromium.h:

(WebCore::FragmentTexAlphaBinding::edgeLocation):
(WebCore::FragmentTexAlphaBinding::fragmentTexTransformLocation):
(WebCore::FragmentTexOpaqueBinding::edgeLocation):
(WebCore::FragmentTexOpaqueBinding::fragmentTexTransformLocation):

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::pushPropertiesTo):

  • platform/graphics/chromium/cc/CCCustomLayerDrawQuad.cpp: Added.

(WebCore::CCCustomLayerDrawQuad::create):
(WebCore::CCCustomLayerDrawQuad::CCCustomLayerDrawQuad):

  • platform/graphics/chromium/cc/CCCustomLayerDrawQuad.h: Added.

(WebCore::CCCustomLayerDrawQuad::layer):

  • platform/graphics/chromium/cc/CCDebugBorderDrawQuad.cpp: Added.

(WebCore::CCDebugBorderDrawQuad::create):
(WebCore::CCDebugBorderDrawQuad::CCDebugBorderDrawQuad):

  • platform/graphics/chromium/cc/CCDebugBorderDrawQuad.h: Added.

(WebCore::CCDebugBorderDrawQuad::color):
(WebCore::CCDebugBorderDrawQuad::width):

  • platform/graphics/chromium/cc/CCDrawQuad.cpp: Added.

(WebCore::CCDrawQuad::CCDrawQuad):
(WebCore::CCDrawQuad::toDebugBorderDrawQuad):
(WebCore::CCDrawQuad::toRenderSurfaceDrawQuad):
(WebCore::CCDrawQuad::toSolidColorDrawQuad):
(WebCore::CCDrawQuad::toTileDrawQuad):
(WebCore::CCDrawQuad::toCustomLayerDrawQuad):

  • platform/graphics/chromium/cc/CCDrawQuad.h: Added.

(WebCore::CCDrawQuad::quadRect):
(WebCore::CCDrawQuad::quadTransform):
(WebCore::CCDrawQuad::layerTransform):
(WebCore::CCDrawQuad::layerRect):
(WebCore::CCDrawQuad::clipRect):
(WebCore::CCDrawQuad::opacity):
(WebCore::CCDrawQuad::drawsOpaque):
(WebCore::CCDrawQuad::needsBlending):
(WebCore::CCDrawQuad::isLayerAxisAlignedIntRect):
(WebCore::CCDrawQuad::material):

  • platform/graphics/chromium/cc/CCLayerImpl.cpp:

(WebCore::CCLayerImpl::createSharedQuadState):
(WebCore::CCLayerImpl::appendQuads):
(WebCore::CCLayerImpl::appendDebugBorderQuad):
(WebCore::CCLayerImpl::quadTransform):

  • platform/graphics/chromium/cc/CCLayerImpl.h:
  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::trackDamageForAllSurfaces):
(WebCore::computeScreenSpaceTransformForSurface):
(WebCore::damageInSurfaceSpace):
(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
(WebCore::CCLayerTreeHostImpl::drawLayers):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
  • platform/graphics/chromium/cc/CCRenderPass.cpp: Added.

(WebCore::CCRenderPass::create):
(WebCore::CCRenderPass::CCRenderPass):
(WebCore::CCRenderPass::appendQuadsForLayer):
(WebCore::CCRenderPass::appendQuadsForRenderSurfaceLayer):

  • platform/graphics/chromium/cc/CCRenderPass.h: Added.

(WebCore::CCRenderPass::quadList):
(WebCore::CCRenderPass::targetSurface):
(WebCore::CCRenderPass::setSurfaceDamageRect):
(WebCore::CCRenderPass::surfaceDamageRect):

  • platform/graphics/chromium/cc/CCRenderSurfaceDrawQuad.cpp: Added.

(WebCore::CCRenderSurfaceDrawQuad::create):
(WebCore::CCRenderSurfaceDrawQuad::CCRenderSurfaceDrawQuad):

  • platform/graphics/chromium/cc/CCRenderSurfaceDrawQuad.h: Added.

(WebCore::CCRenderSurfaceDrawQuad::layer):
(WebCore::CCRenderSurfaceDrawQuad::surfaceDamageRect):

  • platform/graphics/chromium/cc/CCSharedQuadState.cpp: Added.

(WebCore::CCSharedQuadState::create):
(WebCore::CCSharedQuadState::CCSharedQuadState):
(WebCore::CCSharedQuadState::isLayerAxisAlignedIntRect):

  • platform/graphics/chromium/cc/CCSharedQuadState.h: Added.

(WebCore::CCSharedQuadState::quadTransform):
(WebCore::CCSharedQuadState::layerTransform):
(WebCore::CCSharedQuadState::layerRect):
(WebCore::CCSharedQuadState::clipRect):
(WebCore::CCSharedQuadState::opacity):
(WebCore::CCSharedQuadState::isOpaque):

  • platform/graphics/chromium/cc/CCSolidColorDrawQuad.cpp: Added.

(WebCore::CCSolidColorDrawQuad::create):
(WebCore::CCSolidColorDrawQuad::CCSolidColorDrawQuad):

  • platform/graphics/chromium/cc/CCSolidColorDrawQuad.h: Added.

(WebCore::CCSolidColorDrawQuad::color):

  • platform/graphics/chromium/cc/CCTileDrawQuad.cpp: Added.

(WebCore::CCTileDrawQuad::create):
(WebCore::CCTileDrawQuad::CCTileDrawQuad):

  • platform/graphics/chromium/cc/CCTileDrawQuad.h: Added.

(WebCore::CCTileDrawQuad::textureId):
(WebCore::CCTileDrawQuad::textureOffset):
(WebCore::CCTileDrawQuad::textureSize):
(WebCore::CCTileDrawQuad::textureFilter):
(WebCore::CCTileDrawQuad::swizzleContents):
(WebCore::CCTileDrawQuad::leftEdgeAA):
(WebCore::CCTileDrawQuad::topEdgeAA):
(WebCore::CCTileDrawQuad::rightEdgeAA):
(WebCore::CCTileDrawQuad::bottomEdgeAA):
(WebCore::CCTileDrawQuad::isAntialiased):

  • platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

(WebCore::CCTiledLayerImpl::CCTiledLayerImpl):
(WebCore::CCTiledLayerImpl::quadTransform):
(WebCore::CCTiledLayerImpl::appendQuads):

  • platform/graphics/chromium/cc/CCTiledLayerImpl.h:

(WebCore::CCTiledLayerImpl::setContentsSwizzled):
(WebCore::CCTiledLayerImpl::contentsSwizzled):

LayoutTests:

Mark three tests as failing with small pixel differences. These just
need rebaselining.

  • platform/chromium/test_expectations.txt:
3:39 PM Changeset in webkit [102837] by ojan@chromium.org
  • 19 edits in trunk

Implement flexDirection and flexWrap and make flexFlow a proper shorthand.
https://bugs.webkit.org/show_bug.cgi?id=74542

Reviewed by Tony Chang.

Source/WebCore:

In a followup patch, I'll cleanup all the *Flow methods in RenderFlexibleBox.

Existing tests cover all the rendering behaviors, so only need to test
the css property parsing.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSMutableStyleDeclaration.cpp:

(WebCore::CSSMutableStyleDeclaration::getPropertyValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EFlexDirection):

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty):

  • css/CSSPropertyLonghand.cpp:

(WebCore::initShorthandMap):

  • css/CSSPropertyNames.in:
  • css/CSSStyleApplyProperty.cpp:

(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::sizesToIntrinsicLogicalWidth):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::isColumnFlow):
(WebCore::RenderFlexibleBox::isLeftToRightFlow):
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
(WebCore::RenderFlexibleBox::alignChildren):

  • rendering/style/RenderStyle.h:

(WebCore::InheritedFlags::flexDirection):
(WebCore::InheritedFlags::isColumnFlexDirection):
(WebCore::InheritedFlags::setFlexDirection):
(WebCore::InheritedFlags::initialFlexDirection):

  • rendering/style/RenderStyleConstants.h:
  • rendering/style/StyleFlexibleBoxData.cpp:

(WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
(WebCore::StyleFlexibleBoxData::operator==):

  • rendering/style/StyleFlexibleBoxData.h:

LayoutTests:

  • css3/flexbox/css-properties-expected.txt:
  • css3/flexbox/script-tests/css-properties.js:

(testFlexFlowValue):

3:32 PM Changeset in webkit [102836] by jonlee@apple.com
  • 8 edits in trunk/Source

Enable notifications on Mac.

Reviewed by Sam Weinig.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
3:21 PM Changeset in webkit [102835] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

COMPILE_ASSERT in CSSStyleSelector.cpp doesn't compile on Windows
https://bugs.webkit.org/show_bug.cgi?id=74327

Reviewed by Darin Adler.

Always use unsigned instead of bool and unsigned in the bitfields of RuleData to shrink
its size under MSVC.

Unlike gcc and clang, MSVC pads each consecutive member variables of the same type
in bitfields. e.g. if you have:
sturct AB {

unsigned m_1 : 31;
bool m_2 : 1;

}
then MSVC pads m_1 and allocates sizeof(unsigned) * 2 for AB whereas gcc and clang
only allocate sizeof(unsigned) * 1 for AB.

  • css/CSSStyleSelector.cpp:

(WebCore::RuleData::RuleData):

3:18 PM Changeset in webkit [102834] by rniwa@webkit.org
  • 19 edits
    2 adds in trunk

NodeChildList shouldn't be in NodeListNodeData
https://bugs.webkit.org/show_bug.cgi?id=73969

Source/WebCore:

Reviewed by Sam Weinig.

Move NodeChildList out of NodeListNodeData to separate it from the other node lists in order to
resolve the bug 73853. Unlike other DynamicNodeList, we don't need to invalidate NodeChildList
on ancestors when children change. Moving ChildNodeList out of NodeListNodeData makes this difference
apparent and makes DynamicNodeList::Caches in NodeListNodeData always held by a DynamicSubtreeNodeList,
eliminating the need for hasOwnCaches() checks in various places.

Also renamed the existing DynamicNodeList to DynamicSubtreeNodeList and re-introduced DynamicNodeList
from which DynamicSubtreeNodeList and ChildNodeList both inherit to share the code for itemWithName.

In addition, renamed registerDynamicNodeList and unregisterDynamicNodeList, which updates a counter for
TreeScope::hasNodeListCaches, to registerDynamicSubtreeNodeList and unregisterDynamicSubtreeNodeList
respectively. They are no longer called by ChildNodeList in order to avoid walking up the DOM tree
inside invalidateNodeListsCacheAfterAttributeChanged and invalidateNodeListsCacheAfterChildrenChanged.

Test: fast/dom/childnode-item-after-itemname.html

  • bindings/js/JSNodeListCustom.cpp:

(WebCore::JSNodeListOwner::isReachableFromOpaqueRoots):

  • dom/ChildNodeList.cpp:

(WebCore::ChildNodeList::ChildNodeList):
(WebCore::ChildNodeList::length):
(WebCore::ChildNodeList::item):
(WebCore::ChildNodeList::nodeMatches):

  • dom/ChildNodeList.h:
  • dom/ClassNodeList.cpp:

(WebCore::ClassNodeList::ClassNodeList):
(WebCore::ClassNodeList::~ClassNodeList):

  • dom/ClassNodeList.h:
  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::childrenChanged):

  • dom/DynamicNodeList.cpp:

(WebCore::DynamicSubtreeNodeList::DynamicSubtreeNodeList):
(WebCore::DynamicSubtreeNodeList::~DynamicSubtreeNodeList):
(WebCore::DynamicSubtreeNodeList::length):
(WebCore::DynamicSubtreeNodeList::itemForwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::itemBackwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::item):
(WebCore::DynamicNodeList::itemWithName):
(WebCore::DynamicSubtreeNodeList::isDynamicNodeList):
(WebCore::DynamicSubtreeNodeList::invalidateCache):
(WebCore::DynamicSubtreeNodeList::Caches::Caches):
(WebCore::DynamicSubtreeNodeList::Caches::create):
(WebCore::DynamicSubtreeNodeList::Caches::reset):

  • dom/DynamicNodeList.h:

(WebCore::DynamicNodeList::DynamicNodeList):
(WebCore::DynamicNodeList::~DynamicNodeList):
(WebCore::DynamicNodeList::node):
(WebCore::DynamicSubtreeNodeList::rootNode):

  • dom/NameNodeList.cpp:

(WebCore::NameNodeList::NameNodeList):
(WebCore::NameNodeList::~NameNodeList):

  • dom/NameNodeList.h:
  • dom/Node.cpp:

(WebCore::Node::childNodes):
(WebCore::Node::registerDynamicSubtreeNodeList):
(WebCore::Node::unregisterDynamicSubtreeNodeList):
(WebCore::Node::invalidateNodeListsCacheAfterAttributeChanged):
(WebCore::Node::invalidateNodeListsCacheAfterChildrenChanged):
(WebCore::Node::removeCachedClassNodeList):
(WebCore::Node::removeCachedNameNodeList):
(WebCore::Node::removeCachedTagNodeList):
(WebCore::Node::removeCachedLabelsNodeList):
(WebCore::NodeListsNodeData::invalidateCaches):
(WebCore::NodeListsNodeData::isEmpty):
(WebCore::NodeRareData::clearChildNodeListCache):

  • dom/Node.h:
  • dom/NodeRareData.h:

(WebCore::NodeRareData::nodeLists):
(WebCore::NodeRareData::ensureChildNodeListCache):

  • dom/TagNodeList.cpp:

(WebCore::TagNodeList::TagNodeList):
(WebCore::TagNodeList::~TagNodeList):

  • dom/TagNodeList.h:
  • html/LabelsNodeList.cpp:

(WebCore::LabelsNodeList::LabelsNodeList):

  • html/LabelsNodeList.h:

LayoutTests:

Added a regression test for ChildNodeList; it catches a bug caught in the review process.

  • fast/dom/childnode-item-after-itemname-expected.txt: Added.
  • fast/dom/childnode-item-after-itemname.html: Added.
3:16 PM Changeset in webkit [102833] by rniwa@webkit.org
  • 18 edits in trunk/Source/WebCore

Push more member functions from EditCommand to CompositeEditCommand
https://bugs.webkit.org/show_bug.cgi?id=74249

Reviewed by Enrica Casucci.

Moved startingRootEditableElement and endingRootEditableElement from EditCommand to EditCommandComposition,
and isTypingCommand, preservesTypingStyle, shouldRetainAutocorrectionIndicator,
setShouldRetainAutocorrectionIndicator, and shouldStopCaretBlinking from EditCommand to CompositeEditCommand.
Also removed EditCommand::updateLayout().

  • editing/ApplyBlockElementCommand.cpp:

(WebCore::ApplyBlockElementCommand::doApply):

  • editing/ApplyStyleCommand.cpp:

(WebCore::ApplyStyleCommand::applyBlockStyle):
(WebCore::ApplyStyleCommand::applyInlineStyle):

  • editing/CompositeEditCommand.cpp:

(WebCore::EditCommandComposition::EditCommandComposition):
(WebCore::EditCommandComposition::setStartingSelection):
(WebCore::EditCommandComposition::setEndingSelection):
(WebCore::CompositeEditCommand::preservesTypingStyle):
(WebCore::CompositeEditCommand::isTypingCommand):
(WebCore::CompositeEditCommand::shouldRetainAutocorrectionIndicator):
(WebCore::CompositeEditCommand::setShouldRetainAutocorrectionIndicator):
(WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
(WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
(WebCore::CompositeEditCommand::moveParagraphs):

  • editing/CompositeEditCommand.h:

(WebCore::EditCommandComposition::startingRootEditableElement):
(WebCore::EditCommandComposition::endingRootEditableElement):
(WebCore::CompositeEditCommand::shouldStopCaretBlinking):

  • editing/DeleteSelectionCommand.cpp:

(WebCore::DeleteSelectionCommand::removeNode):
(WebCore::DeleteSelectionCommand::fixupWhitespace):

  • editing/EditCommand.cpp:

(WebCore::EditCommand::apply):
(WebCore::EditCommand::unapply):
(WebCore::EditCommand::reapply):
(WebCore::EditCommand::setStartingSelection):
(WebCore::EditCommand::setEndingSelection):
(WebCore::EditCommand::setParent):

  • editing/EditCommand.h:

(WebCore::EditCommand::isEditCommandComposition):

  • editing/Editor.cpp:

(WebCore::dispatchEditableContentChangedEvents):
(WebCore::Editor::appliedEditing):
(WebCore::Editor::unappliedEditing):
(WebCore::Editor::reappliedEditing):

  • editing/Editor.h:

(WebCore::Editor::lastEditCommand):

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::updateAppearance):

  • editing/IndentOutdentCommand.cpp:

(WebCore::IndentOutdentCommand::outdentParagraph):

  • editing/InsertLineBreakCommand.cpp:

(WebCore::InsertLineBreakCommand::doApply):

  • editing/InsertParagraphSeparatorCommand.cpp:

(WebCore::InsertParagraphSeparatorCommand::doApply):

  • editing/TypingCommand.cpp:

(WebCore::TypingCommand::lastTypingCommandIfStillOpenForTyping):

  • editing/TypingCommand.h:

(WebCore::TypingCommand::shouldRetainAutocorrectionIndicator):

3:08 PM Changeset in webkit [102832] by tony@chromium.org
  • 2 edits in trunk/Source/WebCore

Fix compile on gcc on Mac.

css/CSSStyleSelector.cpp:1254:166: error: unused parameter 'regionForStyling' [-Werror,-Wunused-parameter,3]
css/CSSStyleSelector.cpp:1425:134: error: unused parameter 'regionForStyling' [-Werror,-Wunused-parameter,3]

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::styleForElement):
(WebCore::CSSStyleSelector::pseudoStyleForElement):

3:03 PM Changeset in webkit [102831] by ddkilzer@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Remove definition of old ENABLE(YARR) macro
<http://webkit.org/b/74532>

Reviewed by Darin Adler.

  • wtf/Platform.h: Removed ENABLE_YARR macros.
2:57 PM Changeset in webkit [102830] by commit-queue@webkit.org
  • 3 edits
    1 copy
    4 deletes in trunk/LayoutTests

Create reftest for outline-sides-in-region
https://bugs.webkit.org/show_bug.cgi?id=74428

Patch by Ethan Malasky <emalasky@adobe.com> on 2011-12-14
Reviewed by Darin Adler.

  • fast/regions/outline-sides-in-region-expected.html: Added.
  • fast/regions/outline-sides-in-region.html:
  • platform/chromium/test_expectations.txt:
  • platform/efl/fast/regions/outline-sides-in-region-expected.png: Removed.
  • platform/efl/fast/regions/outline-sides-in-region-expected.txt: Removed.
  • platform/mac/fast/regions/outline-sides-in-region-expected.png: Removed.
  • platform/mac/fast/regions/outline-sides-in-region-expected.txt: Removed.
2:52 PM Changeset in webkit [102829] by beidson@apple.com
  • 4 edits
    3 adds in trunk

<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

Switch HTMLPlugInImageElement from using document activation callbacks to using the ActiveDOMObject
mechanism which will prevent the unnecessary (and crashy) work at Document teardown:

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
(WebCore::HTMLPlugInImageElement::canSuspend):
(WebCore::HTMLPlugInImageElement::suspend):
(WebCore::HTMLPlugInImageElement::resume):

  • html/HTMLPlugInImageElement.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.
2:38 PM Changeset in webkit [102828] by enne@google.com
  • 2 edits in trunk/Source/WebCore

[chromium] Compositor needs to set texture filtering on canvas layers
https://bugs.webkit.org/show_bug.cgi?id=74530

Reviewed by James Robinson.

  • platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:

(WebCore::CCCanvasLayerImpl::draw):

2:21 PM Changeset in webkit [102827] by Lucas Forschler
  • 1 delete in branches/safari-534.54-branch/safari-534.53-branch

delete branch

2:20 PM Changeset in webkit [102826] by Lucas Forschler
  • 1 copy in branches/safari-534.54-branch/safari-534.53-branch

New branch.

2:19 PM Changeset in webkit [102825] by tony@chromium.org
  • 2 edits in trunk/Source/WebCore

Remove added calls to CSSStyleSelector to gain back another 2% in page cyclers
https://bugs.webkit.org/show_bug.cgi?id=74537

Reviewed by Ojan Vafai.

In r102234, calls to initForRegionStyling() were added in CSSStyleSelector.
There's still a 2% perf regression in chromium page cyclers, so try removing
these calls.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::styleForElement):
(WebCore::CSSStyleSelector::pseudoStyleForElement):

2:13 PM Changeset in webkit [102824] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

My last unreviewed buildfix for this crazy bug.

  • qmake/mkspecs/features/features.prf:
2:13 PM Changeset in webkit [102823] by mrowe@apple.com
  • 319 edits
    5 copies
    3 moves
    64 adds in branches/safari-534.54-branch

Ensure that safari-534.54-branch contains all changes from safari-534.53-branch.

2:09 PM Changeset in webkit [102822] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/qt

[Qt] DeviceOrientationClientQt should initialize m_controller to zero.
https://bugs.webkit.org/show_bug.cgi?id=74522

Patch by Alexander Færøy <ahf@0x90.dk> on 2011-12-14
Reviewed by Kenneth Rohde Christiansen.

  • WebCoreSupport/DeviceOrientationProviderQt.cpp:

(WebCore::DeviceOrientationProviderQt::DeviceOrientationProviderQt):

2:00 PM Changeset in webkit [102821] by andersca@apple.com
  • 2 edits in trunk/Tools

Another attempt at fixing the Windows build.

Disable all the tests until I can figure out what's going on here.

  • TestWebKitAPI/Tests/WTF/Functional.cpp:
1:53 PM Changeset in webkit [102820] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Skip fast/forms/select/menulist-onchange-fired-with-key-up-down.html on Mac since
it has been failing since it was introduced. The failure is tracked by the bug 74384.

  • platform/mac/Skipped:
1:30 PM Changeset in webkit [102819] by mrowe@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/10573872> NPN_GetValueForURL returns wrong value for NPNURLVProxy

Reviewed by Anders Carlsson.

  • PluginProcess/PluginControllerProxy.cpp:

(WebKit::PluginControllerProxy::proxiesForURL): Fix a copy-paste error.

1:27 PM Changeset in webkit [102818] by andersca@apple.com
  • 2 edits in trunk/Tools

Fix the Windows build.

Disable some of the tests for now.

  • TestWebKitAPI/Tests/WTF/Functional.cpp:
1:25 PM Changeset in webkit [102817] by commit-queue@webkit.org
  • 12 edits in trunk/Source

[chromium] Plumb through flag for enabling partial swap
https://bugs.webkit.org/show_bug.cgi?id=74513

Patch by Jonathan Backer <backer@chromium.org> on 2011-12-14
Reviewed by James Robinson.

Source/WebCore:

  • page/Settings.h:

(WebCore::Settings::setPartialSwapEnabled):
(WebCore::Settings::partialSwapEnabled):

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::initialize):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(WebCore::CCSettings::CCSettings):

Source/WebKit/chromium:

  • public/WebSettings.h:
  • public/platform/WebLayerTreeView.h:

(WebKit::WebLayerTreeView::Settings::Settings):

  • src/WebLayerTreeView.cpp:

(WebKit::WebLayerTreeView::Settings::operator CCSettings):

  • src/WebSettingsImpl.cpp:

(WebKit::WebSettingsImpl::setPartialSwapEnabled):

  • src/WebSettingsImpl.h:
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

1:21 PM Changeset in webkit [102816] by reed@google.com
  • 6 edits in trunk/Source/WebCore

[skia] cache typeface in FontPlatformData
https://bugs.webkit.org/show_bug.cgi?id=74415

Reviewed by Stephen White.

No new tests. Existing tests apply, this is just an optimization
to avoid looking up the typeface on each drawText call.

  • platform/graphics/chromium/FontChromiumWin.cpp:

(WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
(WebCore::Font::drawGlyphs):

  • platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:

(WebCore::createTypefaceFromHFont):
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::operator=):
(WebCore::FontPlatformData::~FontPlatformData):

  • platform/graphics/chromium/FontPlatformDataChromiumWin.h:

(WebCore::FontPlatformData::typeface):
(WebCore::FontPlatformData::lfQuality):
(WebCore::FontPlatformData::hash):
(WebCore::FontPlatformData::operator==):

  • platform/graphics/skia/SkiaFontWin.cpp:

(WebCore::setupPaintForFont):
(WebCore::paintSkiaText):

  • platform/graphics/skia/SkiaFontWin.h:
1:16 PM Changeset in webkit [102815] by Simon Fraser
  • 17 edits
    2 adds in trunk

Make -webkit-filter animatable
https://bugs.webkit.org/show_bug.cgi?id=68476

Source/WebCore:

Reviewed by Chris Marrin.

Add -webkit-filter to the list of CSS properties that are animatable. Animate
it like we do transforms, by looking for matching lists of filter functions.
Each kind of filter operation has a blend() method that handles blending
for that filter.

Test: css3/filters/filter-animation.html

  • GNUmakefile.list.am: Add FilterOperation.cpp to the build.
  • Target.pri: Ditto
  • WebCore.gypi: Ditto
  • WebCore.vcproj/WebCore.vcproj: Ditto
  • WebCore.xcodeproj/project.pbxproj: Ditto
  • page/animation/AnimationBase.cpp:

(WebCore::blendFunc): New blendFunc() for FilterOperations, which does per-filter blending.
(WebCore::AnimationBase::ensurePropertyMap): Make PropertyWrapper for filters.
(WebCore::AnimationBase::AnimationBase): Adjust initialization order.

  • page/animation/AnimationBase.h: Adjusted the member variable order to minimize padding.

(WebCore::AnimationBase::filterFunctionListsMatch): Accessor for the flag.

  • page/animation/ImplicitAnimation.cpp:

(WebCore::ImplicitAnimation::reset):
(WebCore::ImplicitAnimation::validateTransformFunctionList): Adjust comment. The "is valid" terminology is confusing.
(WebCore::ImplicitAnimation::checkForMatchingFilterFunctionLists): New method to check for matching lists
of filter functions.

  • page/animation/ImplicitAnimation.h:
  • page/animation/KeyframeAnimation.cpp:

(WebCore::KeyframeAnimation::KeyframeAnimation):
(WebCore::KeyframeAnimation::checkForMatchingFilterFunctionLists): New method to check for matching lists
of filter functions.

  • page/animation/KeyframeAnimation.h:
  • rendering/style/FilterOperation.cpp: Added.

(WebCore::BasicColorMatrixFilterOperation::blend):
(WebCore::BasicColorMatrixFilterOperation::passthroughAmount):
(WebCore::BasicComponentTransferFilterOperation::blend):
(WebCore::BasicComponentTransferFilterOperation::passthroughAmount): Different filters have
different values for m_amount for the "passthrough" behavior. This method returns the appropriate value.
(WebCore::GammaFilterOperation::blend):
(WebCore::BlurFilterOperation::blend):
(WebCore::DropShadowFilterOperation::blend):

  • rendering/style/FilterOperation.h:

(WebCore::FilterOperation::blend):
(WebCore::PassthroughFilterOperation::create): New "no-op" filter.
(WebCore::PassthroughFilterOperation::operator==):
(WebCore::PassthroughFilterOperation::PassthroughFilterOperation):

  • rendering/style/FilterOperations.cpp:

(WebCore::FilterOperations::operationsMatch):

  • rendering/style/FilterOperations.h:

LayoutTests:

Reviewed by Chris Marrin.

New test for filter animation, and enhancements to animation-test-helpers.js
for filters.

  • animations/resources/animation-test-helpers.js:

(getFilterParameters):
(filterParametersMatch):
(checkExpectedValue):

  • css3/filters/filter-animation.html: Added.
1:14 PM Changeset in webkit [102814] by adamk@chromium.org
  • 8 edits in trunk

Broaden support for mutation observation of attributes
https://bugs.webkit.org/show_bug.cgi?id=74448

Reviewed by Ryosuke Niwa.

Source/WebCore:

The previously-landed MutationObserver support for attributes was incomplete:
it didn't support mutations related to Attr nodes (methods on Attrs,
setAttributeNode/removeAttributeNode on Element, or methods on NamedNodeMap).

This patch adds full support of mutation observation for all these cases,
and adds test cases for all these situations.

  • dom/Attr.cpp:

(WebCore::Attr::setValue): Enqueue a mutation record when Attr.value is set from JS.
(WebCore::Attr::childrenChanged): Enqueue a mutation record when an Attr's value
changes to due additions/removals of Text children.

  • dom/Element.cpp:

(WebCore::Element::enqueueAttributesMutationRecordIfRequested): Previously a static,
expose as part of Element's interface to allow it to be re-used by NamedNodeMap and Attr.
(WebCore::Element::removeAttribute): Remove enqueue call now handled by NamedNodeMap.
(WebCore::Element::setAttributeInternal): Fixup call of enqueueAttributesMutationRecordIfRequested.

  • dom/Element.h:
  • dom/NamedNodeMap.cpp:

(WebCore::NamedNodeMap::setNamedItem): Enqueue a mutation record when an attribute
is changed via Element.attributes.setNamedItem from JS.
(WebCore::NamedNodeMap::removeNamedItem): Enqueue a mutation record when an
attribute is removed, either via Element.attributes.removeNamedItem or Element.removeAttribute.

LayoutTests:

Add tests covering attribute mutation via Attr nodes.

  • fast/mutation/observe-attributes-expected.txt:
  • fast/mutation/observe-attributes.html:
1:12 PM Keeping the Tree Green edited by rniwa@webkit.org
Fix the list item for Chromium. (diff)
1:03 PM Keeping the Tree Green edited by rniwa@webkit.org
Add a link to Chrome WebKit Merge calendar (diff)
12:59 PM Changeset in webkit [102813] by andersca@apple.com
  • 4 edits in trunk

bind should handle member functions
https://bugs.webkit.org/show_bug.cgi?id=74529

Reviewed by Sam Weinig.

Source/JavaScriptCore:

Add FunctionWrapper partial specializations for member function pointers.

  • wtf/Functional.h:

(WTF::C::):

Tools:

Add tests.

  • TestWebKitAPI/Tests/WTF/Functional.cpp:

(TestWebKitAPI::A::A):
(TestWebKitAPI::A::f):
(TestWebKitAPI::A::addF):
(TestWebKitAPI::TEST):

12:56 PM Changeset in webkit [102812] by leviw@chromium.org
  • 2 edits in branches/subpixellayout/Source/WebCore

Fixing improper float conversions that had some unpleasant results with large numbers.

12:51 PM Changeset in webkit [102811] by barraclough@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

DFG relies on returning a struct in registers
https://bugs.webkit.org/show_bug.cgi?id=74527

Reviewed by Geoff Garen.

This will not work on all platforms. Returning a uint64_t will more reliably achieve
what we want, on 32-bit platforms (on 64-bit, stick with the struct return).

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:

(JSC::DFG::DFGHandler::dfgHandlerEncoded):

12:34 PM BuildingGtk edited by Martin Robinson
Add "sudo" for maximum copy and pasting glory (diff)
12:33 PM Changeset in webkit [102810] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Patch by Raymond Toy <Raymond Toy> on 2011-12-14

  • platform/audio/Distance.h (WebCore):

Incorrect calculation for DistanceEffect linearGain
https://bugs.webkit.org/show_bug.cgi?id=72871

Reviewed by Kenneth Russell.

Tests still need to be written for all distance models. This
does not add a new API and just corrects an implementation error.

  • platform/audio/Distance.cpp:

(WebCore::DistanceEffect::linearGain): Implement correct
linearGain function. (Fix proposed by davidgaleano@hotmail.com.)

  • platform/audio/Distance.h: Add link to Open AL specification.
12:00 PM Changeset in webkit [102809] by caio.oliveira@openbossa.org
  • 7 edits in trunk/Source/WebKit2

[Qt] [WK2] Move QWebPreferences out of QtWebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=74525

Reviewed by Luiz Agostini.

This patch also uses internal WebKit API to set the Accelerate Compositing
directly instead of going thru QWebPreferencesPrivate. The previous approach was
always causing the QWebPreferences to be created making the "lazy initialization"
useless.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::initialize):
(QQuickWebViewPrivate::navigatorQtObjectEnabled):
(QQuickWebViewPrivate::setNavigatorQtObjectEnabled):
(QQuickWebViewExperimental::postMessage):
(QQuickWebView::preferences):

  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/API/qt/qwebpreferences.cpp:

(QWebPreferencesPrivate::createPreferences):
(QWebPreferencesPrivate::testAttribute):
(QWebPreferencesPrivate::setAttribute):
(QWebPreferences::navigatorQtObjectEnabled):
(QWebPreferences::setNavigatorQtObjectEnabled):
(QWebPreferencesPrivate::preferencesRef):

  • UIProcess/API/qt/qwebpreferences_p_p.h:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::QtWebPageProxy):

  • UIProcess/qt/QtWebPageProxy.h:
11:55 AM Changeset in webkit [102808] by andersca@apple.com
  • 4 edits in trunk

Add unary and binary bind overloads
https://bugs.webkit.org/show_bug.cgi?id=74524

Reviewed by Sam Weinig.

Source/JavaScriptCore:

  • wtf/Functional.h:

(WTF::R):
(WTF::FunctionWrapper::ResultType):
(WTF::bind):

Tools:

Add tests.

  • TestWebKitAPI/Tests/WTF/Functional.cpp:

(TestWebKitAPI::TEST):
(TestWebKitAPI::multiplyByTwo):
(TestWebKitAPI::multiplyByOneAndAHalf):
(TestWebKitAPI::multiply):
(TestWebKitAPI::subtract):

11:49 AM Changeset in webkit [102807] by Lucas Forschler
  • 5 edits in branches/safari-534.53-branch/Source

Versioning.

11:43 AM Changeset in webkit [102806] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

MIPS and SH4 buildfix after r102776 and r102795.

Patch by Holger Hans Peter Freyther <holger@moiji-mobile.com> on 2011-12-14
Reviewed by Csaba Osztrogonác.

  • qmake/mkspecs/features/features.prf:
11:41 AM Changeset in webkit [102805] by Lucas Forschler
  • 1 copy in tags/Safari-534.53.10

New tag.

11:38 AM Changeset in webkit [102804] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[GTK] Page size should be 0,0 when view widget is not realized
https://bugs.webkit.org/show_bug.cgi?id=74523

Reviewed by Martin Robinson.

We currently return 1,1 because GTK+ initializes widget allocation
as -1,-1,1,1.

  • UIProcess/API/gtk/PageClientImpl.cpp:

(WebKit::PageClientImpl::viewSize): Check whether widget is
realized and return IntSize() in that case.

11:33 AM Changeset in webkit [102803] by loislo@chromium.org
  • 4 edits in trunk/Source/WebCore

2011-12-14 Ilya Tikhonovsky <loislo@chromium.org>

Web Inspector: consider disabling network tracking while running the CPU profile.
https://bugs.webkit.org/show_bug.cgi?id=74221

The WebCore instrumentation on the backend affects the performance of inspected page.
As the result the CPU profiler's stats data are far away from the reality.
Solution: the profiler code will temporary disable the resource tracking on backend.
Side effect: the resource tree gets out of sinc because it uses Network Agent's notifications for updating the resource tree.
Solution: NetworkManager will report about the changes of the resource tracking state and ResourcePanel will re-fetch the resources tree.

Reviewed by Pavel Feldman.

  • inspector/front-end/NetworkManager.js: (WebInspector.NetworkManager.prototype.enableResourceTracking.networkAgentEnabled): (WebInspector.NetworkManager.prototype.enableResourceTracking): (WebInspector.NetworkManager.prototype.disableResourceTracking.networkAgentDisabled): (WebInspector.NetworkManager.prototype.disableResourceTracking): (WebInspector.NetworkManager.prototype.inflightResourceForURL):
  • inspector/front-end/ProfileView.js: (WebInspector.CPUProfileType.prototype.buttonClicked):
  • inspector/front-end/ResourceTreeModel.js: (WebInspector.ResourceTreeModel): (WebInspector.ResourceTreeModel.prototype._onResourceTrackingEnabled):
11:18 AM Changeset in webkit [102802] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

[GTK] Fix PlatformScreen::screenAvailableRect when there's no view widget
https://bugs.webkit.org/show_bug.cgi?id=74520

Reviewed by Martin Robinson.

Use the default screen to get the available screen area instead of
just returning an empty rectangle. This is useful for WebKit2,
since there's no view widget in the web process.

  • platform/gtk/PlatformScreenGtk.cpp:

(WebCore::screenAvailableRect):

11:09 AM Changeset in webkit [102801] by rniwa@webkit.org
  • 1 edit
    1 add in trunk

Add a manual test for caret blinking during forward deletion
https://bugs.webkit.org/show_bug.cgi?id=74494

Reviewed by Dan Bernstein.

Add a test to forward delete 200 characters. Caret should not blink during the deletion.
This is a follow up for r102413.

  • ManualTests/caret-blink-during-forward-delete.html: Added.
10:59 AM Changeset in webkit [102800] by eric.carlson@apple.com
  • 5 edits
    2 adds in trunk

Media url with fragment may not load
https://bugs.webkit.org/show_bug.cgi?id=74443

Reviewed by Darin Adler.

Source/WebCore:

Test: media/media-extension-with-fragment.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::loadResource): Pass the KURL to MediaPlayer, let it extract a

String when it needs it.

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::load): Take a KURL, not a String. Look for the file extension in the

last path component so we don't examine fragments and/or queries.

  • platform/graphics/MediaPlayer.h:

LayoutTests:

  • media/media-extension-with-fragment-expected.txt: Added.
  • media/media-extension-with-fragment.html: Added.
10:52 AM Changeset in webkit [102799] by kbr@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed Chromium test expectations update. Suppress another
intermittent compositing test failure.

  • platform/chromium/test_expectations.txt:
10:47 AM Changeset in webkit [102798] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Remove some duplicate entries in Source/WebCore/PlatformBlackBerry.cmake
https://bugs.webkit.org/show_bug.cgi?id=74484

Patch by Jacky Jiang <zhajiang@rim.com> on 2011-12-14
Reviewed by Daniel Bates.

Trivial fix, so no new tests.

  • PlatformBlackBerry.cmake:
10:36 AM Changeset in webkit [102797] by andersca@apple.com
  • 7 edits in trunk/Source

Add back the callOnMainThread overload that takes a WTF::Function
https://bugs.webkit.org/show_bug.cgi?id=74512

Reviewed by Darin Adler.

Source/JavaScriptCore:

Add back the overload; the changes to WebCore should hopefully keep Windows building.

  • wtf/MainThread.cpp:

(WTF::callFunctionObject):
(WTF::callOnMainThread):

  • wtf/MainThread.h:

Source/WebCore:

Explicitly qualify the Function enum flag, since MSVC2005 is too stupid to disambiguate
the Function class template and the enum flag.

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertyDescriptor):

  • bindings/js/JSHistoryCustom.cpp:

(WebCore::JSHistory::getOwnPropertySlotDelegate):
(WebCore::JSHistory::getOwnPropertyDescriptorDelegate):

  • bindings/js/JSLocationCustom.cpp:

(WebCore::JSLocation::getOwnPropertySlotDelegate):
(WebCore::JSLocation::getOwnPropertyDescriptorDelegate):

10:30 AM Changeset in webkit [102796] by ojan@chromium.org
  • 3 edits in trunk/Websites/bugs.webkit.org

Give a resize handle for sidebyside diffs.
https://bugs.webkit.org/show_bug.cgi?id=74465

Reviewed by Ryosuke Niwa.

This gives a drag handle so you can make the side-by-side
diff not be 50/50 on a per-file-diff basis. This is useful
for cases like new files where there's no value on the
left side.

  • PrettyPatch/PrettyPatch.rb:
  • code-review.js:
10:14 AM Changeset in webkit [102795] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[Qt] Unreviewed speculative MIPS and SH4 buildfix after r102776.

  • qmake/mkspecs/features/features.prf:
10:03 AM Changeset in webkit [102794] by kbr@google.com
  • 4 edits in trunk/Source/WebCore

Unreviewed, rolling out r102688.
http://trac.webkit.org/changeset/102688
https://bugs.webkit.org/show_bug.cgi?id=74220

Under the hypothesis that it might be the cause of
browser_tests and ui_tests crashes on Chromium canaries --
will reland if not.

  • bindings/v8/V8Proxy.cpp:

(WebCore::addMessageToConsole):
(WebCore::logInfo):
(WebCore::V8Proxy::reportUnsafeAccessTo):

  • bindings/v8/V8Proxy.h:
  • bindings/v8/custom/V8CustomXPathNSResolver.cpp:

(WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):

9:48 AM Changeset in webkit [102793] by vsevik@chromium.org
  • 3 edits
    2 adds in trunk

Web Inspector: DatabaseTableView should escape table name.
https://bugs.webkit.org/show_bug.cgi?id=74503

Reviewed by Pavel Feldman.

Source/WebCore:

Test: inspector/database-table-name-excaping.html

  • inspector/front-end/DatabaseTableView.js:

(WebInspector.DatabaseTableView.prototype._escapeTableName):
(WebInspector.DatabaseTableView.prototype.update):

LayoutTests:

  • inspector/database-table-name-excaping-expected.txt: Added.
  • inspector/database-table-name-excaping.html: Added.
9:41 AM Changeset in webkit [102792] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

  • platform/qt-5.0/Skipped: Unskip a bunch of now passing tests - part 4. : svg
  • platform/qt-wk2/Skipped: Skip 2 flakey tests.
9:26 AM Changeset in webkit [102791] by Philippe Normand
  • 4 edits in trunk/Source/WebCore

[GStreamer] padTemplate leak in webkitwebaudiosrc
https://bugs.webkit.org/show_bug.cgi?id=74495

Reviewed by Martin Robinson.

Use a GstPadTemplate smart pointer in webkit_web_audio_src_init to
avoid a memory leak after the ghost pad creation.

  • platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:

(webkit_web_audio_src_init):

  • platform/graphics/gstreamer/GRefPtrGStreamer.cpp:

(WTF::adoptGRef):
(WTF::GstPadTemplate):

  • platform/graphics/gstreamer/GRefPtrGStreamer.h:
9:20 AM Changeset in webkit [102790] by kling@webkit.org
  • 2 edits in trunk/Tools

Make my e-mail address a little more awesome.

  • Scripts/webkitpy/common/config/committers.py:
9:17 AM Changeset in webkit [102789] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[Qt] [Gardening] editing/pasteboard/4242293-1.html now passes.
https://bugs.webkit.org/show_bug.cgi?id=73417

Patch by João Paulo Rechi Vita <jprvita@openbossa.org> on 2011-12-14
Reviewed by Csaba Osztrogonác.

Remove this test from the skip list since it is passing now.

  • platform/qt-5.0/Skipped:
  • platform/qt-wk2/Skipped:
9:15 AM Changeset in webkit [102788] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

  • platform/qt-5.0/Skipped: Unskip a bunch of now passing tests - part 3. : editing
9:13 AM Changeset in webkit [102787] by jchaffraix@webkit.org
  • 9 edits
    2 adds in trunk

Crash in RenderBox::paintBoxDecorations when documentElement has no renderer
https://bugs.webkit.org/show_bug.cgi?id=64284

Reviewed by Ryosuke Niwa.

Source/WebCore:

Test: fast/dynamic/crash-paint-no-documentElement-renderer.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::paintBackground): Check the documentElement's
renderer before using it which matches what RenderView does.

LayoutTests:

  • fast/dynamic/crash-paint-no-documentElement-renderer-expected.png: Added.
  • fast/dynamic/crash-paint-no-documentElement-renderer-expected.txt: Added.
  • fast/dynamic/crash-paint-no-documentElement-renderer.html: Added.
  • platform/chromium/test_expectations.txt:
  • platform/efl/Skipped:
  • platform/gtk/test_expectations.txt:
  • platform/mac/test_expectations.txt:
  • platform/qt/test_expectations.txt:
  • platform/win/test_expectations.txt:

The test hits the ASSERT from bug 68859 in Debug. However it works well in Release.

9:03 AM Changeset in webkit [102786] by tsepez@chromium.org
  • 6 edits
    3 copies
    2 adds in trunk

DocumentLoader should ref its mainResourceLoader.
https://bugs.webkit.org/show_bug.cgi?id=74424

Reviewed by Adam Barth.

Source/WebCore:

Tests: platform/chromium/http/tests/security/mixedContent/insecure-iframe-in-main-frame-allowed.html

platform/chromium/http/tests/security/mixedContent/insecure-iframe-in-main-frame-blocked.html

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::startLoadingMainResource):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::loadNow):

LayoutTests:

More tests for insecure iframes blocked inside of https frames.

  • http/tests/security/mixedContent/resources/frame-with-insecure-iframe.html: Added.
  • platform/chromium/http/tests/security/mixedContent/insecure-iframe-in-main-frame-allowed-expected.txt: Added.
  • platform/chromium/http/tests/security/mixedContent/insecure-iframe-in-main-frame-allowed.html: Added.
  • platform/chromium/http/tests/security/mixedContent/insecure-iframe-in-main-frame-blocked-expected.txt: Added.
  • platform/chromium/http/tests/security/mixedContent/insecure-iframe-in-main-frame-blocked.html: Added.
  • platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-allowed-expected.txt:
  • platform/chromium/http/tests/security/mixedContent/insecure-image-in-main-frame-allowed.html:
8:59 AM Changeset in webkit [102785] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

  • platform/qt-5.0/Skipped: Unskip a bunch of now passing tests - part 2. : tables
8:47 AM Changeset in webkit [102784] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

  • platform/qt-5.0/Skipped: Unskip a bunch of now passing tests - part 1. : css2.1, css3
8:45 AM Changeset in webkit [102783] by senorblanco@chromium.org
  • 3 edits in trunk/Source/WebCore

CSS Filters should support GPU acceleration
https://bugs.webkit.org/show_bug.cgi?id=74441

Reviewed by Darin Adler.

Will be covered by existing CSS filters tests, when run in GPU mode.

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::prepare):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateOrRemoveFilterEffect):

8:37 AM Changeset in webkit [102782] by commit-queue@webkit.org
  • 4 edits in trunk

Source/WebCore: [CHROMIUM/SKIA] Handle put[Un/Pre]multipliedImageData conversions in Skia rather than ImageBuffer
https://bugs.webkit.org/show_bug.cgi?id=73953

Patch by Brian Salomon <bsalomon@google.com> on 2011-12-14
Reviewed by Stephen White.

Tested by existing canvas2d layout tests.

  • platform/graphics/skia/ImageBufferSkia.cpp:

(WebCore::putImageData):
(WebCore::ImageBuffer::putUnmultipliedImageData):
(WebCore::ImageBuffer::putPremultipliedImageData):

LayoutTests: [CHROMIUM] Make canvas/philip/tests/2d.imageData.put.unchanged.html be expected to fail
on the GPU due to slight difference in alpha-premul computation.

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

Patch by Brian Salomon <bsalomon@google.com> on 2011-12-14
Reviewed by Stephen White.

  • platform/chromium/test_expectations.txt:
8:29 AM Changeset in webkit [102781] by Csaba Osztrogonác
  • 4 edits in trunk

[Qt] Rollout r102769, because it broke Qt-4.8 builds.

.:

  • Source/api.pri:

Tools:

  • qmake/mkspecs/features/webcore.prf:
8:20 AM Changeset in webkit [102780] by commit-queue@webkit.org
  • 1 edit
    1 delete in trunk/Source/WebCore

Remove SharedBufferBlackBerry.cpp from WebCore/platform/blackberry
https://bugs.webkit.org/show_bug.cgi?id=74488

Patch by Mary Wu <mary.wu@torchmobile.com.cn> on 2011-12-14
Reviewed by Rob Buis.

Remove dead code, no new tests.

  • platform/blackberry/SharedBufferBlackBerry.cpp: Removed.
8:04 AM Changeset in webkit [102779] by caio.oliveira@openbossa.org
  • 9 edits in trunk/Source/WebKit2

[Qt] [WK2] Move download handling out of QtWebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=74506

Reviewed by Kenneth Rohde Christiansen.

Also moves the creation of QtWebContext out of QtWebPageProxy.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):
(QQuickWebViewPrivate::handleDownloadRequest):
(QQuickWebViewPrivate::_q_onReceivedResponseFromDownload):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/API/qt/qwebdownloaditem_p.h:
  • UIProcess/qt/QtPageClient.cpp:

(QtPageClient::handleDownloadRequest):

  • UIProcess/qt/QtPageClient.h:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::QtWebPageProxy):

  • UIProcess/qt/QtWebPageProxy.h:
8:03 AM Changeset in webkit [102778] by vsevik@chromium.org
  • 1 edit
    2 copies in branches/chromium/963

Merge 102699 - Web Inspector: Network item view does not correctly decode "+" in request parameters.
https://bugs.webkit.org/show_bug.cgi?id=74422

Reviewed by Pavel Feldman.

Source/WebCore:

Test: http/tests/inspector/network/request-parameters-decoding.html

  • inspector/front-end/ResourceHeadersView.js:

(WebInspector.ResourceHeadersView.prototype._formatParameter):
(WebInspector.ResourceHeadersView.prototype._refreshParms):

LayoutTests:

  • http/tests/inspector/network/request-parameters-decoding-expected.txt: Added.
  • http/tests/inspector/network/request-parameters-decoding.html: Added.

TBR=vsevik@chromium.org
BUG=105690
Review URL: http://codereview.chromium.org/8907036

7:56 AM Changeset in webkit [102777] by Csaba Osztrogonác
  • 1 edit
    76 deletes in trunk/LayoutTests

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

Unreviewed gardening, remove unnecessary Qt5 specific expected files.

  • platform/qt-5.0/animations/cross-fade-background-image-expected.png: Removed.
  • platform/qt-5.0/animations/cross-fade-background-image-expected.txt: Removed.
  • platform/qt-5.0/animations/cross-fade-border-image-source-expected.png: Removed.
  • platform/qt-5.0/animations/cross-fade-border-image-source-expected.txt: Removed.
  • platform/qt-5.0/animations/cross-fade-list-style-image-expected.png: Removed.
  • platform/qt-5.0/animations/cross-fade-list-style-image-expected.txt: Removed.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-box-image-expected.png: Removed.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-box-image-expected.txt: Removed.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-image-expected.png: Removed.
  • platform/qt-5.0/animations/cross-fade-webkit-mask-image-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-001-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-001-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-002-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-002-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-003-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-003-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-004-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-004-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-005-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-005-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-006-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-006-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-007-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-007-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-008-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-008-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-009-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/background-intrinsic-009-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/border-spacing-applies-to-015-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-001-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-001-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-002-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-002-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-003-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-003-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-004-expected.png: Removed.
  • platform/qt-5.0/css2.1/20110323/dynamic-top-change-004-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/empty-inline-001-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/empty-inline-002-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/empty-inline-003-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/table-caption-001-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/table-caption-002-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/table-caption-horizontal-alignment-001-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/table-caption-margins-001-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/table-caption-optional-001-expected.txt: Removed.
  • platform/qt-5.0/css2.1/20110323/table-caption-optional-002-expected.txt: Removed.
  • platform/qt-5.0/editing/execCommand/indent-nested-lists-3-expected.txt: Removed.
  • platform/qt-5.0/fast/css/child-style-can-override-visited-style-expected.txt: Removed.
  • platform/qt-5.0/fast/css/empty-inline-003-quirksmode-expected.txt: Removed.
  • platform/qt-5.0/fast/css/empty-inline-line-height-first-line-expected.txt: Removed.
  • platform/qt-5.0/fast/css/empty-inline-line-height-first-line-quirksmode-expected.txt: Removed.
  • platform/qt-5.0/fast/css/font-face-descending-unicode-range-expected.txt: Removed.
  • platform/qt-5.0/fast/dom/rtl-scroll-to-leftmost-and-resize-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/block-axis-horizontal-bt-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/block-axis-horizontal-tb-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/block-axis-vertical-lr-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/block-axis-vertical-rl-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/pagination-h-horizontal-bt-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/pagination-h-horizontal-tb-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/pagination-h-vertical-rl-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/pagination-v-horizontal-bt-expected.txt: Removed.
  • platform/qt-5.0/fast/multicol/pagination-v-vertical-lr-expected.txt: Removed.
  • platform/qt-5.0/svg/as-background-image/background-image-preserveaspectRatio-support-expected.txt: Removed.
  • platform/qt-5.0/svg/as-image/animated-svg-as-image-no-fixed-intrinsic-size-expected.txt: Removed.
  • platform/qt-5.0/svg/as-image/animated-svg-as-image-same-image-expected.txt: Removed.
  • platform/qt-5.0/svg/as-image/same-image-two-instances-expected.txt: Removed.
  • platform/qt-5.0/svg/as-image/svg-image-change-content-size-expected.txt: Removed.
  • platform/qt-5.0/svg/as-object/svg-embedded-in-html-in-iframe-expected.txt: Removed.
  • platform/qt-5.0/svg/custom/pointer-events-image-css-transform-expected.txt: Removed.
  • platform/qt-5.0/svg/custom/pointer-events-text-css-transform-expected.txt: Removed.
  • platform/qt-5.0/svg/transforms/svg-css-transforms-clip-path-expected.txt: Removed.
  • platform/qt-5.0/svg/transforms/svg-css-transforms-expected.txt: Removed.
  • platform/qt-5.0/transitions/cross-fade-background-image-expected.png: Removed.
  • platform/qt-5.0/transitions/cross-fade-background-image-expected.txt: Removed.
  • platform/qt-5.0/transitions/cross-fade-border-image-expected.png: Removed.
  • platform/qt-5.0/transitions/cross-fade-border-image-expected.txt: Removed.
7:55 AM Changeset in webkit [102776] by Csaba Osztrogonác
  • 10 edits
    4 adds in trunk/Tools

[Qt] Test fonts are not used with Qt5
https://bugs.webkit.org/show_bug.cgi?id=72513

Patch by Balazs Kelemen <kbalazs@webkit.org> on 2011-12-14
Reviewed by Simon Hausmann.

Don't depend on Q_WS_X11 anymore since it's not the Qt5
way to detect the platform. Make the guards depend
on our own configtest for fontconfig. For Qt4 we can still
use the preassumption that we have it on Linux.

  • DumpRenderTree/qt/DumpRenderTree.pro:
  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::DumpRenderTree::open):
(WebCore::DumpRenderTree::initializeFonts):

  • DumpRenderTree/qt/DumpRenderTreeQt.h:
  • DumpRenderTree/qt/main.cpp:

(main): Additionally remove a nonsense piece of code that was
trying to reset the font settings - which is not necessary -
after we have already returned from main.

  • WebKitTestRunner/InjectedBundle/Target.pri:
  • WebKitTestRunner/InjectedBundle/qt/ActivateFontsQt.cpp:

(WTR::activateFonts):

  • WebKitTestRunner/Target.pri: Remove unnecessary fontconfig linkage

from WTR. It is not needed. We set up the fonts via the injected bundle.

  • qmake/config.tests/fontconfig/fontconfig.cpp: Added.

(main):

  • qmake/config.tests/fontconfig/fontconfig.pro: Added.
  • qmake/mkspecs/features/features.prf:
  • qmake/sync.profile:
7:33 AM Changeset in webkit [102775] by kbalazs@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed Qt-WK2 gardening.

[Qt][WK2] fast/dom/rtl-scroll-to-leftmost-and-resize.html fails
https://bugs.webkit.org/show_bug.cgi?id=74504

[Qt][WK2] css3/unicode-bidi-isolate-aharon-failing.html fails
https://bugs.webkit.org/show_bug.cgi?id=74505

Skip failing tests.

  • platform/qt-wk2/Skipped:
6:13 AM Changeset in webkit [102774] by haraken@chromium.org
  • 3 edits
    1 add in trunk/Source/WebCore

Use [Supplemental] IDL in WebSocket
https://bugs.webkit.org/show_bug.cgi?id=74160

Reviewed by Adam Barth.

By using the [Supplemental] IDL, this patch moves declarations of WebSocket
attributes from DOMWindow.idl to websocket/DOMWindowWebSocket.idl,
which helps make WebSocket a self-contained module.

No new tests, no change in behavior.
Confirm that http/tests/websocket/* pass.

  • WebCore.gypi: Added DOMWindowWebSocket.idl.
  • page/DOMWindow.idl: Added the [Supplemented] IDL to WebSocket-related attributes. This [Supplemented] IDL will be removed after all platforms support the [Supplemental] IDL (See bug 73394 for more details).
  • websockets/DOMWindowWebSocket.idl: Added. Used the [Supplemental=DOMWindow] IDL. The attributes in this IDL file are treated as if they are described in DOMWindow.idl.
6:08 AM Changeset in webkit [102773] by pierre.rossi@gmail.com
  • 2 edits in trunk/Source/WebCore

Unreviewed fix after mobile theme changes.

5:58 AM Changeset in webkit [102772] by peter@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Roll chromium DEPS (r113807 -> r114356)
https://bugs.webkit.org/show_bug.cgi?id=74496

Reviewed by Tony Gentilcore.

Roll deps to r114356 and update the location of sfntly to
pick up the change at Chromium.

  • DEPS:
5:57 AM Changeset in webkit [102771] by caio.oliveira@openbossa.org
  • 8 edits in trunk/Source/WebKit2

[Qt] [WK2] Move QWebNavigationHistory to QQuickWebView
https://bugs.webkit.org/show_bug.cgi?id=74442

Reviewed by Simon Hausmann.

QWebNavigationHistory used QtWebPageProxy to be QObject parent of the inner models,
this patch change that to use OwnPtr instead. When creating the history object we pass
only the WKPageRef and let it get the backForwardList.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):
(QQuickWebViewPrivate::didChangeBackForwardList):
(QQuickWebViewExperimental::navigationHistory):
(QQuickWebViewExperimental::goForwardTo):
(QQuickWebViewExperimental::goBackTo):

  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/API/qt/qwebnavigationhistory.cpp:

(QWebNavigationListModelPrivate::createWebNavigationModel):
(QWebNavigationHistoryPrivate::QWebNavigationHistoryPrivate):
(QWebNavigationHistoryPrivate::createHistory):
(QWebNavigationHistoryPrivate::goBackTo):
(QWebNavigationHistoryPrivate::goForwardTo):
(QWebNavigationListModel::QWebNavigationListModel):
(QWebNavigationHistory::backItems):
(QWebNavigationHistory::forwardItems):

  • UIProcess/API/qt/qwebnavigationhistory_p.h:
  • UIProcess/API/qt/qwebnavigationhistory_p_p.h:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::QtWebPageProxy):

  • UIProcess/qt/QtWebPageProxy.h:
5:51 AM Changeset in webkit [102770] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Add different salt to different types of selectors. So the CSS fast
path can tell the different between tags and class attributes with
otherwise identical values.
https://bugs.webkit.org/show_bug.cgi?id=74284

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2011-12-14
Reviewed by Antti Koivisto.

  • css/SelectorChecker.cpp:

(WebCore::collectElementIdentifierHashes):
(WebCore::collectDescendantSelectorIdentifierHashes):

  • css/SelectorChecker.h:
5:48 AM Changeset in webkit [102769] by vestbo@webkit.org
  • 4 edits in trunk

[Qt] Don't add WebCoreSupport and WebKit APIs to include WebCore's include path

Followup to r102679

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

Reviewed by Simon Hausmann.

5:20 AM Changeset in webkit [102768] by pierre.rossi@gmail.com
  • 8 edits
    1 add in trunk

[Qt] Mobile theme could use a little refresh
https://bugs.webkit.org/show_bug.cgi?id=74293

Source/WebCore:

The look and feel of the "mobile theme" we're
using in QtWebKit dates back to the maemo 5 days.
This is an attempt at making it look less out of
place, and also support progress and range.

Reviewed by Kenneth Rohde Christiansen.

No new tests, this is still not the default theme
for tests.

  • DerivedSources.pri:
  • css/mobileThemeQt.css: Added.

(input[type="submit"], select):
(input[type="submit"]:disabled, input[type="submit"]:disabled:active, select:disabled, input[type="text"]:disabled):
(input[type="submit"]:active):

  • platform/qt/RenderThemeQt.cpp:

(WebCore::RenderThemeQt::extraDefaultStyleSheet):
(WebCore::StylePainter::StylePainter):
(WebCore::StylePainter::init):
(WebCore::StylePainter::~StylePainter):

  • platform/qt/RenderThemeQt.h:
  • platform/qt/RenderThemeQtMobile.cpp:

(WebCore::drawRectangularControlBackground):
(WebCore::shrinkRectToSquare):
(WebCore::StylePainterMobile::StylePainterMobile):
(WebCore::StylePainterMobile::~StylePainterMobile):
(WebCore::StylePainterMobile::drawCheckableBackground):
(WebCore::StylePainterMobile::sizeForPainterScale):
(WebCore::StylePainterMobile::drawChecker):
(WebCore::StylePainterMobile::findCheckBox):
(WebCore::StylePainterMobile::drawRadio):
(WebCore::StylePainterMobile::findRadio):
(WebCore::StylePainterMobile::drawMultipleComboButton):
(WebCore::StylePainterMobile::drawSimpleComboButton):
(WebCore::StylePainterMobile::getButtonImageSize):
(WebCore::StylePainterMobile::findComboButton):
(WebCore::StylePainterMobile::drawLineEdit):
(WebCore::StylePainterMobile::drawCheckBox):
(WebCore::StylePainterMobile::drawRadioButton):
(WebCore::StylePainterMobile::drawPushButton):
(WebCore::StylePainterMobile::drawComboBox):
(WebCore::StylePainterMobile::drawProgress):
(WebCore::StylePainterMobile::drawSliderThumb):
(WebCore::RenderThemeQtMobile::paintButton):
(WebCore::RenderThemeQtMobile::paintTextField):
(WebCore::RenderThemeQtMobile::setPopupPadding):
(WebCore::RenderThemeQtMobile::paintMenuList):
(WebCore::RenderThemeQtMobile::paintMenuListButton):
(WebCore::RenderThemeQtMobile::animationDurationForProgressBar):
(WebCore::RenderThemeQtMobile::paintProgressBar):
(WebCore::RenderThemeQtMobile::paintSliderTrack):
(WebCore::RenderThemeQtMobile::paintSliderThumb):
(WebCore::RenderThemeQtMobile::adjustSliderThumbSize):

  • platform/qt/RenderThemeQtMobile.h:

Tools:

Have MiniBrowser use the mobile theme when not
passed --desktop.

Reviewed by Kenneth Rohde Christiansen.

  • MiniBrowser/qt/MiniBrowserApplication.cpp:

(MiniBrowserApplication::handleUserOptions):

5:00 AM Changeset in webkit [102767] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

[Non-Mac] Change event should be fired when changing option by using keyboard.
https://bugs.webkit.org/show_bug.cgi?id=74384

Patch by Rakesh KN <rakesh.kn@motorola.com> on 2011-12-14
Reviewed by Kent Tamura.

Source/WebCore:

Fire onchange event when option is changed using up/down/right/left/pageup/pagedown/home/end keys.

Test: fast/forms/select/menulist-onchange-fired-with-key-up-down.html

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::menuListDefaultEventHandler):
Setting the DispatchChangeEvent selection option flag when the option is selected using
up/down/right/left/pageup/pagedown/home/end keys.

LayoutTests:

Fire onchange event when option is changed using up/down/right/left/pageup/pagedown/home/end keys.

  • fast/forms/select/menulist-onchange-fired-with-key-up-down-expected.txt: Added.
  • fast/forms/select/menulist-onchange-fired-with-key-up-down.html: Added.
  • platform/chromium/test_expectations.txt:

Skipped for Chromium MAC.

  • platform/mac/Skipped:

Skipped for Apple MAC.

4:50 AM Changeset in webkit [102766] by alexis.menard@openbossa.org
  • 4 edits
    1 delete in trunk

[Qt] [Gardening] Remove qt-4.7 layout tests dir
https://bugs.webkit.org/show_bug.cgi?id=74426

Building trunk now depends on Qt >= 4.8, so no need to keep this directory
on the tree.

Patch by João Paulo Rechi Vita <jprvita@openbossa.org> on 2011-12-14
Reviewed by Csaba Osztrogonác.

Tools:

  • Scripts/webkitpy/layout_tests/port/qt.py:

(QtPort.qt_version):
(QtPort.baseline_search_path):
(QtPort._skipped_file_search_paths):

  • Scripts/webkitpy/layout_tests/port/qt_unittest.py:

(QtPortTest._assert_search_path):

LayoutTests:

  • platform/qt-4.7/Skipped: Removed.
4:50 AM Changeset in webkit [102765] by caio.oliveira@openbossa.org
  • 13 edits in trunk/Source/WebKit2

[Qt][WK2] Remove DrawingArea and QtWebPageEventHandler code from QtWebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=74414

Reviewed by Simon Hausmann.

This also moves QtWebPageEventHandler to inside QQuickWebPagePrivate, to avoid
the WebPage having a backpointer to the QQuickWebView.

  • Target.pri:
  • UIProcess/API/qt/qquickwebpage.cpp:

(QQuickWebPage::geometryChanged):
(QQuickWebPage::event):
(QQuickWebPagePrivate::QQuickWebPagePrivate):
(QQuickWebPagePrivate::initialize):
(QQuickWebPagePrivate::setDrawingAreaSize):
(QQuickWebPagePrivate::paintToCurrentGLContext):
(QQuickWebPagePrivate::resetPaintNode):

  • UIProcess/API/qt/qquickwebpage_p.h:
  • UIProcess/API/qt/qquickwebpage_p_p.h:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):
(QQuickWebViewPrivate::initializeDesktop):
(QQuickWebViewPrivate::initializeTouch):
(QQuickWebViewPrivate::_q_resume):
(QQuickWebViewPrivate::processDidCrash):
(QQuickWebViewPrivate::didRelaunchProcess):
(QQuickWebViewPrivate::createDrawingAreaProxy):
(QQuickWebViewPrivate::updateVisibleContentRectAndScale):
(QQuickWebViewPrivate::_q_viewportTrajectoryVectorChanged):
(QQuickWebViewPrivate::updateViewportSize):

  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/qt/QtPageClient.cpp:

(QtPageClient::createDrawingAreaProxy):

  • UIProcess/qt/QtPageClient.h:

(QtPageClient::findStringInCustomRepresentation):
(QtPageClient::countStringMatchesInCustomRepresentation):

  • UIProcess/qt/QtWebPageEventHandler.cpp:

(QtWebPageEventHandler::QtWebPageEventHandler):
(QtWebPageEventHandler::startDrag):

  • UIProcess/qt/QtWebPageEventHandler.h:
  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::init):

  • UIProcess/qt/QtWebPageProxy.h:
3:42 AM Changeset in webkit [102764] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, skip 2 tests failing on 32-bit GTK bot.

  • platform/gtk/Skipped:
3:27 AM Changeset in webkit [102763] by commit-queue@webkit.org
  • 9 edits in trunk

[Qt] Fix compilation of QtWebKit with --orientation-events without ENABLE_DEVICE_ORIENTATION
https://bugs.webkit.org/show_bug.cgi?id=74492

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2011-12-14
Reviewed by Simon Hausmann.

.:

  • Source/api.pri:

Source/WebKit/qt:

  • Api/qwebframe.cpp:

(QWebFramePrivate::_q_orientationChanged):

  • Api/qwebframe_p.h:
  • WebCoreSupport/DeviceMotionProviderQt.cpp:
  • WebCoreSupport/DeviceMotionProviderQt.h:
  • WebCoreSupport/DeviceOrientationProviderQt.cpp:
  • WebCoreSupport/DeviceOrientationProviderQt.h:
3:10 AM Changeset in webkit [102762] by commit-queue@webkit.org
  • 4 edits in trunk/LayoutTests

[Gtk] rebaseline test results for editing/selection/transformed-selection-rects.html
https://bugs.webkit.org/show_bug.cgi?id=74307

Patch by Zan Dobersek <zandobersek@gmail.com> on 2011-12-14
Reviewed by Philippe Normand.

Update test results for editing/selection/transformed-selection-rects.html
and unskip the test.

  • platform/gtk/Skipped:
  • platform/gtk/editing/selection/transformed-selection-rects-expected.png:
  • platform/gtk/editing/selection/transformed-selection-rects-expected.txt:
2:31 AM Changeset in webkit [102761] by haraken@chromium.org
  • 2 edits in trunk/Tools

[Refactoring] In prepare-ChangeLog, make $isGit and $isSVN be used only
through parameter passing
https://bugs.webkit.org/show_bug.cgi?id=74485

Reviewed by Ryosuke Niwa.

We are planning to write unit-tests for prepare-ChangeLog in a run-leaks_unittest
manner. This bug is one of the incremental refactorings to remove all top-level
code and global variables from prepare-ChangeLog. In this patch,
we make the following global variables be used only through parameter passing.

  • $isGit
  • $isSVN
  • Scripts/prepare-ChangeLog:

(generateFunctionLists):
(printDiff):
(diffFromToString):
(diffCommand):
(statusCommand):
(createPatchCommand):
(diffHeaderFormat):
(generateFileList):
(isAddedStatus):
(isConflictStatus):
(statusDescription):
(extractLineRange):

2:23 AM Changeset in webkit [102760] by commit-queue@webkit.org
  • 2 edits in trunk

[Qt] [WK2] Linking fails if GStreamer not installed after r102493
https://bugs.webkit.org/show_bug.cgi?id=74412

Patch by Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com> on 2011-12-14
Reviewed by Simon Hausmann.

Add -lrt to fix WK2 linking when gstreamer is not used.

  • Source/api.pri:
2:16 AM Changeset in webkit [102759] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit/qt

Fix compilation for Qt with --minimal option after r102755.

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2011-12-14
Reviewed by Csaba Osztrogonác.

  • Api/qwebpage.cpp:

(QWebPagePrivate::QWebPagePrivate):

2:09 AM Changeset in webkit [102758] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, mark a GTK accessibility test flaky and fix
expectation of http/tests/security/cross-origin-xsl-redirect-BLOCKED.html.

  • platform/gtk/test_expectations.txt:

platform/gtk/accessibility/unknown-roles-not-exposed.html is flaky.

2:06 AM Changeset in webkit [102757] by vsevik@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: TreeOutline's is broken when li elements have padding-left different from 14px.
https://bugs.webkit.org/show_bug.cgi?id=74445

Reviewed by Pavel Feldman.

  • inspector/front-end/treeoutline.js:

(TreeElement.prototype.isEventWithinDisclosureTriangle):

2:04 AM Changeset in webkit [102756] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [Regression] Scripts panel debug sidebar toolbar should not be scrolled out of the screen.
https://bugs.webkit.org/show_bug.cgi?id=74447

Reviewed by Pavel Feldman.

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.wasShown):

  • inspector/front-end/scriptsPanel.css:

(#scripts-debug-toolbar):
(#scripts-debug-sidebar-contents):

1:57 AM Changeset in webkit [102755] by commit-queue@webkit.org
  • 17 edits
    2 deletes in trunk

[Qt] DeviceOrientationClientMockQt should be removed in favor of DeviceOrientationClientMock
https://bugs.webkit.org/show_bug.cgi?id=74417

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2011-12-14
Reviewed by Simon Hausmann.

Based on original patch by Kenneth Christiansen.

.:

  • Source/api.pri:

Source/WebCore:

Already covered by current tests.

  • dom/DeviceOrientationController.h:

(WebCore::DeviceOrientationController::client):

Source/WebKit/qt:

Already covered by current tests.

  • Api/qwebpage.cpp:

(QWebPagePrivate::QWebPagePrivate):

  • WebCoreSupport/DeviceMotionProviderQt.cpp:

(WebCore::DeviceMotionProviderQt::DeviceMotionProviderQt):
(WebCore::DeviceMotionProviderQt::filter):

  • WebCoreSupport/DeviceMotionProviderQt.h:
  • WebCoreSupport/DeviceOrientationClientMockQt.cpp: Removed.
  • WebCoreSupport/DeviceOrientationClientMockQt.h: Removed.
  • WebCoreSupport/DeviceOrientationClientQt.cpp:

(WebCore::DeviceOrientationClientQt::DeviceOrientationClientQt):
(WebCore::DeviceOrientationClientQt::~DeviceOrientationClientQt):
(WebCore::DeviceOrientationClientQt::lastOrientation):

  • WebCoreSupport/DeviceOrientationClientQt.h:
  • WebCoreSupport/DeviceOrientationProviderQt.cpp:

(WebCore::DeviceOrientationProviderQt::DeviceOrientationProviderQt):
(WebCore::DeviceOrientationProviderQt::setController):
(WebCore::DeviceOrientationProviderQt::start):
(WebCore::DeviceOrientationProviderQt::stop):
(WebCore::DeviceOrientationProviderQt::filter):

  • WebCoreSupport/DeviceOrientationProviderQt.h:

(WebCore::DeviceOrientationProviderQt::isActive):
(WebCore::DeviceOrientationProviderQt::lastOrientation):
(WebCore::DeviceOrientationProviderQt::hasAlpha):

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(toDeviceOrientationClientMock):
(DumpRenderTreeSupportQt::setMockDeviceOrientation):

  • WebCoreSupport/DumpRenderTreeSupportQt.h:

Tools:

Already covered by current tests.

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::DumpRenderTree::DumpRenderTree):
(WebCore::DumpRenderTree::~DumpRenderTree):

  • DumpRenderTree/qt/LayoutTestControllerQt.cpp:

(LayoutTestController::setMockDeviceOrientation):

1:51 AM Changeset in webkit [102754] by leo.yang@torchmobile.com.cn
  • 1 edit
    2 adds in trunk/Source/WebKit

[BlackBerry] Add notification support for the BlackBerry port
https://bugs.webkit.org/show_bug.cgi?id=73194

Patch by Robin Qiu <robin.qiu@torchmobile.com.cn> on 2011-12-14
Reviewed by Nikolas Zimmermann.

Contributed by Torch team, the main contributor is Robin Qiu
<robin.qiu@torchmobile.com.cn>.

Initial upstream, no new tests.

  • blackberry/WebCoreSupport/NotificationPresenterImpl.cpp: Added.

(WebKit::NotificationPresenterImpl::instance):
(WebKit::NotificationPresenterImpl::NotificationPresenterImpl):
(WebKit::NotificationPresenterImpl::~NotificationPresenterImpl):
(WebKit::NotificationPresenterImpl::show):
(WebKit::NotificationPresenterImpl::cancel):
(WebKit::NotificationPresenterImpl::notificationObjectDestroyed):
(WebKit::NotificationPresenterImpl::requestPermission):
(WebKit::NotificationPresenterImpl::onPermission):
(WebKit::NotificationPresenterImpl::cancelRequestsForPermission):
(WebKit::NotificationPresenterImpl::checkPermission):
(WebKit::NotificationPresenterImpl::notificationClicked):

  • blackberry/WebCoreSupport/NotificationPresenterImpl.h: Added.

There is already a header file: Source/WebCore/notifications/NotificationPresenter.h.
To avoid conflicting with the it, I name my header file to NotificationPresenterImpl.

1:50 AM Changeset in webkit [102753] by Philippe Normand
  • 1 edit
    20 adds in trunk/LayoutTests

Unreviewed, GTK baselines for new tests.

  • platform/gtk/accessibility/img-alt-tag-only-whitespace-expected.txt: Added.
  • platform/gtk/css1/box_properties/acid_test-expected.txt: Added.
  • platform/gtk/svg/clip-path/clip-path-css-transform-1-expected.txt: Added.
  • platform/gtk/svg/clip-path/clip-path-css-transform-2-expected.txt: Added.
  • platform/gtk/svg/custom/clip-path-with-css-transform-1-expected.txt: Added.
  • platform/gtk/svg/custom/clip-path-with-css-transform-2-expected.txt: Added.
  • platform/gtk/svg/custom/no-inherited-dashed-stroke-expected.txt: Added.
  • platform/gtk/svg/custom/path-moveto-only-rendering-expected.txt: Added.
  • platform/gtk/svg/custom/pointer-events-image-css-transform-expected.txt: Added.
  • platform/gtk/svg/custom/pointer-events-text-css-transform-expected.txt: Added.
  • platform/gtk/svg/custom/recursive-filter-expected.txt: Added.
  • platform/gtk/svg/custom/relative-sized-shadow-tree-content-with-symbol-expected.txt: Added.
  • platform/gtk/svg/custom/relative-sized-use-on-symbol-expected.txt: Added.
  • platform/gtk/svg/custom/subpaths-moveto-only-rendering-expected.txt: Added.
  • platform/gtk/svg/custom/use-on-symbol-inside-pattern-expected.txt: Added.
  • platform/gtk/svg/stroke/zero-length-arc-linecaps-rendering-expected.txt: Added.
  • platform/gtk/svg/text/non-bmp-positioning-lists-expected.txt: Added.
  • platform/gtk/svg/transforms/svg-css-transforms-clip-path-expected.txt: Added.
  • platform/gtk/svg/transforms/svg-css-transforms-expected.txt: Added.
1:41 AM Changeset in webkit [102752] by morrita@google.com
  • 3 edits in trunk/LayoutTests

Unreviewed expectation update.

  • platform/chromium-win/fast/gradients/css3-radial-gradients-expected.png:
  • platform/chromium-win/fast/gradients/css3-repeating-radial-gradients-expected.png:
1:29 AM Changeset in webkit [102751] by Philippe Normand
  • 35 edits
    1 add in trunk/LayoutTests

Unreviewed, GTK rebaseline after r102748.

  • platform/gtk/css1/font_properties/font-expected.txt:
  • platform/gtk/css1/font_properties/font_variant-expected.txt:
  • platform/gtk/css1/pseudo/firstline-expected.txt:
  • platform/gtk/css1/pseudo/multiple_pseudo_elements-expected.txt:
  • platform/gtk/css2.1/t051201-c23-first-line-00-b-expected.txt:
  • platform/gtk/css2.1/t051202-c26-psudo-nest-00-c-expected.txt:
  • platform/gtk/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt:
  • platform/gtk/css2.1/t1505-c524-font-var-00-b-expected.txt:
  • platform/gtk/css2.1/t1508-c527-font-00-b-expected.txt:
  • platform/gtk/css2.1/t1508-c527-font-04-b-expected.txt:
  • platform/gtk/css2.1/t1508-c527-font-05-b-expected.txt:
  • platform/gtk/css2.1/t1508-c527-font-06-b-expected.txt:
  • platform/gtk/css2.1/t1508-c527-font-07-b-expected.txt:
  • platform/gtk/css2.1/t1508-c527-font-10-c-expected.txt:
  • platform/gtk/fast/css/font-face-cache-bug-expected.txt: Added.
  • platform/gtk/fast/css/font-face-multiple-faces-expected.txt:
  • platform/gtk/fast/css/font-face-opentype-expected.txt:
  • platform/gtk/fast/css/font-face-remote-expected.txt:
  • platform/gtk/fast/css/font-face-woff-expected.txt:
  • platform/gtk/fast/inline/absolute-positioned-inline-in-centred-block-expected.txt:
  • platform/gtk/fast/inline/left-right-center-inline-alignment-in-ltr-and-rtl-blocks-expected.txt:
  • platform/gtk/fast/repaint/text-emphasis-h-expected.txt:
  • platform/gtk/fast/repaint/text-emphasis-v-expected.txt:
  • platform/gtk/fast/text/emphasis-avoid-ruby-expected.txt:
  • platform/gtk/fast/text/emphasis-combined-text-expected.txt:
  • platform/gtk/fast/text/emphasis-expected.txt:
  • platform/gtk/fast/text/emphasis-overlap-expected.txt:
  • platform/gtk/fast/text/emphasis-vertical-expected.txt:
  • platform/gtk/fast/writing-mode/broken-ideograph-small-caps-expected.txt:
  • platform/gtk/fast/writing-mode/broken-ideographic-font-expected.txt:
  • platform/gtk/fast/writing-mode/japanese-rl-text-with-broken-font-expected.txt:
  • platform/gtk/fonts/custom-font-missing-glyphs-expected.txt:
  • platform/gtk/fonts/font-face-with-complex-text-expected.txt:
  • platform/gtk/fonts/synthetic-oblique-positioning-expected.txt:
  • platform/gtk/svg/W3C-SVG-1.1/fonts-desc-02-t-expected.txt:
1:12 AM Changeset in webkit [102750] by commit-queue@webkit.org
  • 6 edits in trunk

[BlackBerry] Switch to libjpeg for decoding
https://bugs.webkit.org/show_bug.cgi?id=74475

Patch by Jacky Jiang <zhajiang@rim.com> on 2011-12-14
Reviewed by Daniel Bates.

.:

Find libjpeg instead of libimg.

  • Source/cmake/OptionsBlackBerry.cmake:

Source/WebCore:

Switch to cross platform JPEG image decoder for decoding as this keeps
us inline with other ports and less to maintain.

  • PlatformBlackBerry.cmake:

Source/WebKit:

Append libjpeg instead of libimg.

  • blackberry/CMakeListsBlackBerry.txt:
1:10 AM Changeset in webkit [102749] by mrowe@apple.com
  • 2 edits in branches/safari-534.53-branch/Source/WebKit2

Fix <rdar://problem/10565568>.

Reviewed by Anders Carlsson.

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::snapshot): Base the backing store size on the correct member variable.

12:35 AM Changeset in webkit [102748] by Philippe Normand
  • 5 edits in trunk

[GTK] Bad text rendering since r101343
https://bugs.webkit.org/show_bug.cgi?id=73744

Reviewed by Martin Robinson.

Source/WebCore:

  • platform/graphics/freetype/FontPlatformDataFreeType.cpp:

(WebCore::setCairoFontOptionsFromFontConfigPattern): Keep Cairo
hint metrics unchanged for better visual font rendering results.

Tools:

Turn cairo hint metrics off for better font metrics reporting in
the tests. This is especially important for SVG.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(initializeGtkFontSettings):

  • WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:

(WTR::initializeGtkSettings):

12:25 AM Changeset in webkit [102747] by commit-queue@webkit.org
  • 1 edit
    4 adds in trunk/Source/WebKit

Upstream text codec and web string files of BlackBerry API
https://bugs.webkit.org/show_bug.cgi?id=73586

Patch by Jacky Jiang <zhajiang@rim.com> on 2011-12-14
Reviewed by Daniel Bates.

Initial upstream, no new tests.

  • blackberry/Api/WebKitTextCodec.cpp: Added.

(BlackBerry::WebKit::isSameEncoding):
(BlackBerry::WebKit::isASCIICompatibleEncoding):
(BlackBerry::WebKit::transcode):
(BlackBerry::WebKit::base64DecodePolicyForWebCore):
(BlackBerry::WebKit::base64Decode):
(BlackBerry::WebKit::base64Encode):
(BlackBerry::WebKit::unescapeURL):
(BlackBerry::WebKit::escapeURL):
(BlackBerry::WebKit::getExtensionForMimeType):

  • blackberry/Api/WebKitTextCodec.h: Added.
  • blackberry/Api/WebString.cpp: Added.

(BlackBerry::WebKit::WebString::WebString):
(BlackBerry::WebKit::WebString::~WebString):
(BlackBerry::WebKit::WebString::fromUtf8):
(BlackBerry::WebKit::WebString::operator=):
(BlackBerry::WebKit::WebString::utf8):
(BlackBerry::WebKit::WebString::characters):
(BlackBerry::WebKit::WebString::length):
(BlackBerry::WebKit::WebString::isEmpty):
(BlackBerry::WebKit::WebString::equal):
(BlackBerry::WebKit::WebString::equalIgnoringCase):

  • blackberry/Api/WebString.h: Added.
12:24 AM Changeset in webkit [102746] by morrita@google.com
  • 3 edits in trunk/LayoutTests

Unreviewed expectation update.

  • platform/chromium-linux/fast/gradients/css3-radial-gradients-expected.png:
  • platform/chromium-linux/fast/gradients/css3-repeating-radial-gradients-expected.png:
12:01 AM Changeset in webkit [102745] by morrita@google.com
  • 2 edits in trunk/Source/WebCore

Unreviewed attempt for fixing windows build.

  • Included <wtf/MathExtras.h> which defined portable version of lround().
  • Add some static_cast<> to suppress warnings.
  • platform/animation/AnimationUtilities.h:

(WebCore::blend):

Note: See TracTimeline for information about the timeline view.