⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



May 20, 2011:

11:44 PM Changeset in webkit [87011] by krit@webkit.org
  • 5 edits in trunk/Source/WebCore

2011-05-20 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

Share more code in PathTraversalState
https://bugs.webkit.org/show_bug.cgi?id=61238

Share more code between SVGPathTraversalStateBuilder and Path in PathTraversalState.

No change in functionality, so no new tests.

  • platform/graphics/Path.cpp: (WebCore::pathLengthApplierFunction):
  • platform/graphics/PathTraversalState.cpp: (WebCore::PathTraversalState::processSegment):
  • platform/graphics/PathTraversalState.h:
  • svg/SVGPathTraversalStateBuilder.cpp: (WebCore::SVGPathTraversalStateBuilder::continueConsuming):
11:15 PM Changeset in webkit [87010] by Nikolas Zimmermann
  • 126 edits in trunk/Source/WebCore

2011-05-21 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Rob Buis.

SVG svgAttributeChanged/synchronizeProperty/parseMappedAttribute should be optimized
https://bugs.webkit.org/show_bug.cgi?id=61183

Example: rect.x.baseVal.value = 100;
What happens: SVGRectElement::svgAttributeChanged(const QualifiedName& attrName) is invoked with "SVGNames::rectAttr" as parameter.

void SVGRectElement::svgAttributeChanged(const QualifiedName& attrName)
{

SVGStyledTransformableElement::svgAttributeChanged(attrName);
Handle my own attribute changes...

}

Currently we always traverse the base class hierarchy, when invoking svgAttributeChanged. Every svgAttributeChanged call from a class
like SVGRectElement has to reach the base class SVGStyledElement::svgAttributeChanged, as it handles invalidation of the instances of
an element. Say that a <rect> is referenced by a <use> and we change the 'x' attribute of the <rect>, then SVGStyledElement::svgAttributeChanged,
calls SVGElementInstance::invalidateAllInstancesOfElement(this), so that the <use> can rebuild its shadow tree...
That's the only reason all svgAttributeChanged implementations call the base class immediately, so SVGStyledElement is always reached.

Switch to a more efficient pattern, by providing a "bool isSupportedAttribute(const QualifiedName&);" function for all SVG*Elements.
It contains all attributes the particular SVG*Element class handles (but not its parent classes attributes). For example SVGRectElement
contains x/y/width/height/rx/ry attributes, and the ones from SVGTests/SVGLangSpace/SVGExternalResourcesRequired (xml:space/lang, etc.),
but not eg. transform as that's handled by the parent class SVGStyledTransformableElement.

void SVGRectElement::svgAttributeChanged(const QualifiedName& attrName)
{

if (!isSupportedAttribute.contains(attrName)) {

SVGStyledTransformableElement::svgAttributeChanged(attrName);
return;

}

When we get here, we know for sure it's one of our attributes that has changed.
Note for eg. SVGNames::transformAttr, the call from SVGRectElement::svgAttributeChanged, would be immediately forwarded to the base class, which handles transformAttr changes)

if (attrName == SVGNames::xAttr) { do_work(); return; }
if (attrName == SVGNames::yAttr) { do_work(); return; }
...
Assure that we handled all properties we claim support for in "isSupportedAttribute()".
ASSERT_NOT_REACHED();

}

Exactly the same pattern can be applied to synchronizeProperty and parseMappedAttribute to speed them up as well.

Add "SVGElementInstance::InvalidationGuard guard(this)" statements in all svgAttributeChanged implementations, that calls invalidateAllInstancesOfElement(this)
upon destruction, after we've reacted to the svg attribute change. This assures we never forget to call the invalidation method anywhere, and don't
need to rely on the base class svgAttributeChanged() call to do it.


It's a slight overal performance progression.

  • svg/SVGAElement.cpp: (WebCore::SVGAElement::isSupportedAttribute): (WebCore::SVGAElement::parseMappedAttribute): (WebCore::SVGAElement::svgAttributeChanged): (WebCore::SVGAElement::synchronizeProperty):
  • svg/SVGAElement.h:
  • svg/SVGAnimateMotionElement.cpp: (WebCore::SVGAnimateMotionElement::isSupportedAttribute): (WebCore::SVGAnimateMotionElement::parseMappedAttribute):
  • svg/SVGAnimateMotionElement.h:
  • svg/SVGAnimateTransformElement.cpp: (WebCore::SVGAnimateTransformElement::isSupportedAttribute): (WebCore::SVGAnimateTransformElement::parseMappedAttribute):
  • svg/SVGAnimateTransformElement.h:
  • svg/SVGAnimationElement.cpp: (WebCore::SVGAnimationElement::isSupportedAttribute): (WebCore::SVGAnimationElement::parseMappedAttribute):
  • svg/SVGAnimationElement.h:
  • svg/SVGCircleElement.cpp: (WebCore::SVGCircleElement::isSupportedAttribute): (WebCore::SVGCircleElement::parseMappedAttribute): (WebCore::SVGCircleElement::svgAttributeChanged): (WebCore::SVGCircleElement::synchronizeProperty):
  • svg/SVGCircleElement.h:
  • svg/SVGClipPathElement.cpp: (WebCore::SVGClipPathElement::isSupportedAttribute): (WebCore::SVGClipPathElement::parseMappedAttribute): (WebCore::SVGClipPathElement::svgAttributeChanged): (WebCore::SVGClipPathElement::synchronizeProperty):
  • svg/SVGClipPathElement.h:
  • svg/SVGComponentTransferFunctionElement.cpp: (WebCore::SVGComponentTransferFunctionElement::isSupportedAttribute): (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute): (WebCore::SVGComponentTransferFunctionElement::synchronizeProperty):
  • svg/SVGComponentTransferFunctionElement.h:
  • svg/SVGCursorElement.cpp: (WebCore::SVGCursorElement::isSupportedAttribute): (WebCore::SVGCursorElement::parseMappedAttribute): (WebCore::SVGCursorElement::svgAttributeChanged): (WebCore::SVGCursorElement::synchronizeProperty):
  • svg/SVGCursorElement.h:
  • svg/SVGElementInstance.h: (WebCore::SVGElementInstance::InvalidationGuard::InvalidationGuard): (WebCore::SVGElementInstance::InvalidationGuard::~InvalidationGuard):
  • svg/SVGEllipseElement.cpp: (WebCore::SVGEllipseElement::isSupportedAttribute): (WebCore::SVGEllipseElement::parseMappedAttribute): (WebCore::SVGEllipseElement::svgAttributeChanged): (WebCore::SVGEllipseElement::synchronizeProperty):
  • svg/SVGEllipseElement.h:
  • svg/SVGExternalResourcesRequired.cpp: (WebCore::SVGExternalResourcesRequired::addSupportedAttributes):
  • svg/SVGExternalResourcesRequired.h:
  • svg/SVGFEBlendElement.cpp: (WebCore::SVGFEBlendElement::isSupportedAttribute): (WebCore::SVGFEBlendElement::parseMappedAttribute): (WebCore::SVGFEBlendElement::svgAttributeChanged): (WebCore::SVGFEBlendElement::synchronizeProperty):
  • svg/SVGFEBlendElement.h:
  • svg/SVGFEColorMatrixElement.cpp: (WebCore::SVGFEColorMatrixElement::isSupportedAttribute): (WebCore::SVGFEColorMatrixElement::parseMappedAttribute): (WebCore::SVGFEColorMatrixElement::svgAttributeChanged): (WebCore::SVGFEColorMatrixElement::synchronizeProperty):
  • svg/SVGFEColorMatrixElement.h:
  • svg/SVGFEComponentTransferElement.cpp: (WebCore::SVGFEComponentTransferElement::isSupportedAttribute): (WebCore::SVGFEComponentTransferElement::parseMappedAttribute): (WebCore::SVGFEComponentTransferElement::synchronizeProperty):
  • svg/SVGFEComponentTransferElement.h:
  • svg/SVGFECompositeElement.cpp: (WebCore::SVGFECompositeElement::isSupportedAttribute): (WebCore::SVGFECompositeElement::parseMappedAttribute): (WebCore::SVGFECompositeElement::svgAttributeChanged): (WebCore::SVGFECompositeElement::synchronizeProperty):
  • svg/SVGFECompositeElement.h:
  • svg/SVGFEConvolveMatrixElement.cpp: (WebCore::SVGFEConvolveMatrixElement::isSupportedAttribute): (WebCore::SVGFEConvolveMatrixElement::parseMappedAttribute): (WebCore::SVGFEConvolveMatrixElement::svgAttributeChanged): (WebCore::SVGFEConvolveMatrixElement::synchronizeProperty):
  • svg/SVGFEConvolveMatrixElement.h:
  • svg/SVGFEDiffuseLightingElement.cpp: (WebCore::SVGFEDiffuseLightingElement::isSupportedAttribute): (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute): (WebCore::SVGFEDiffuseLightingElement::svgAttributeChanged): (WebCore::SVGFEDiffuseLightingElement::synchronizeProperty):
  • svg/SVGFEDiffuseLightingElement.h:
  • svg/SVGFEDisplacementMapElement.cpp: (WebCore::SVGFEDisplacementMapElement::isSupportedAttribute): (WebCore::SVGFEDisplacementMapElement::parseMappedAttribute): (WebCore::SVGFEDisplacementMapElement::svgAttributeChanged): (WebCore::SVGFEDisplacementMapElement::synchronizeProperty):
  • svg/SVGFEDisplacementMapElement.h:
  • svg/SVGFEDropShadowElement.cpp: (WebCore::SVGFEDropShadowElement::isSupportedAttribute): (WebCore::SVGFEDropShadowElement::parseMappedAttribute): (WebCore::SVGFEDropShadowElement::svgAttributeChanged): (WebCore::SVGFEDropShadowElement::synchronizeProperty):
  • svg/SVGFEDropShadowElement.h:
  • svg/SVGFEGaussianBlurElement.cpp: (WebCore::SVGFEGaussianBlurElement::isSupportedAttribute): (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute): (WebCore::SVGFEGaussianBlurElement::svgAttributeChanged): (WebCore::SVGFEGaussianBlurElement::synchronizeProperty):
  • svg/SVGFEGaussianBlurElement.h:
  • svg/SVGFEImageElement.cpp: (WebCore::SVGFEImageElement::isSupportedAttribute): (WebCore::SVGFEImageElement::parseMappedAttribute): (WebCore::SVGFEImageElement::svgAttributeChanged): (WebCore::SVGFEImageElement::synchronizeProperty):
  • svg/SVGFEImageElement.h:
  • svg/SVGFELightElement.cpp: (WebCore::SVGFELightElement::isSupportedAttribute): (WebCore::SVGFELightElement::parseMappedAttribute): (WebCore::SVGFELightElement::svgAttributeChanged): (WebCore::SVGFELightElement::synchronizeProperty):
  • svg/SVGFELightElement.h:
  • svg/SVGFEMergeNodeElement.cpp: (WebCore::SVGFEMergeNodeElement::isSupportedAttribute): (WebCore::SVGFEMergeNodeElement::parseMappedAttribute): (WebCore::SVGFEMergeNodeElement::svgAttributeChanged): (WebCore::SVGFEMergeNodeElement::synchronizeProperty):
  • svg/SVGFEMergeNodeElement.h:
  • svg/SVGFEMorphologyElement.cpp: (WebCore::SVGFEMorphologyElement::isSupportedAttribute): (WebCore::SVGFEMorphologyElement::parseMappedAttribute): (WebCore::SVGFEMorphologyElement::svgAttributeChanged): (WebCore::SVGFEMorphologyElement::synchronizeProperty):
  • svg/SVGFEMorphologyElement.h:
  • svg/SVGFEOffsetElement.cpp: (WebCore::SVGFEOffsetElement::isSupportedAttribute): (WebCore::SVGFEOffsetElement::parseMappedAttribute): (WebCore::SVGFEOffsetElement::svgAttributeChanged): (WebCore::SVGFEOffsetElement::synchronizeProperty):
  • svg/SVGFEOffsetElement.h:
  • svg/SVGFESpecularLightingElement.cpp: (WebCore::SVGFESpecularLightingElement::isSupportedAttribute): (WebCore::SVGFESpecularLightingElement::parseMappedAttribute): (WebCore::SVGFESpecularLightingElement::svgAttributeChanged): (WebCore::SVGFESpecularLightingElement::synchronizeProperty):
  • svg/SVGFESpecularLightingElement.h:
  • svg/SVGFETileElement.cpp: (WebCore::SVGFETileElement::isSupportedAttribute): (WebCore::SVGFETileElement::parseMappedAttribute): (WebCore::SVGFETileElement::svgAttributeChanged): (WebCore::SVGFETileElement::synchronizeProperty):
  • svg/SVGFETileElement.h:
  • svg/SVGFETurbulenceElement.cpp: (WebCore::SVGFETurbulenceElement::isSupportedAttribute): (WebCore::SVGFETurbulenceElement::parseMappedAttribute): (WebCore::SVGFETurbulenceElement::svgAttributeChanged): (WebCore::SVGFETurbulenceElement::synchronizeProperty):
  • svg/SVGFETurbulenceElement.h:
  • svg/SVGFilterElement.cpp: (WebCore::SVGFilterElement::isSupportedAttribute): (WebCore::SVGFilterElement::parseMappedAttribute): (WebCore::SVGFilterElement::svgAttributeChanged): (WebCore::SVGFilterElement::synchronizeProperty):
  • svg/SVGFilterElement.h:
  • svg/SVGFilterPrimitiveStandardAttributes.cpp: (WebCore::SVGFilterPrimitiveStandardAttributes::isSupportedAttribute): (WebCore::SVGFilterPrimitiveStandardAttributes::parseMappedAttribute): (WebCore::SVGFilterPrimitiveStandardAttributes::svgAttributeChanged): (WebCore::SVGFilterPrimitiveStandardAttributes::synchronizeProperty):
  • svg/SVGFilterPrimitiveStandardAttributes.h:
  • svg/SVGFitToViewBox.cpp: (WebCore::SVGFitToViewBox::parseMappedAttribute): (WebCore::SVGFitToViewBox::synchronizeProperties): (WebCore::SVGFitToViewBox::addSupportedAttributes):
  • svg/SVGFitToViewBox.h:
  • svg/SVGForeignObjectElement.cpp: (WebCore::SVGForeignObjectElement::isSupportedAttribute): (WebCore::SVGForeignObjectElement::parseMappedAttribute): (WebCore::SVGForeignObjectElement::svgAttributeChanged): (WebCore::SVGForeignObjectElement::synchronizeProperty):
  • svg/SVGForeignObjectElement.h:
  • svg/SVGGElement.cpp: (WebCore::SVGGElement::isSupportedAttribute): (WebCore::SVGGElement::parseMappedAttribute): (WebCore::SVGGElement::svgAttributeChanged): (WebCore::SVGGElement::synchronizeProperty):
  • svg/SVGGElement.h:
  • svg/SVGGradientElement.cpp: (WebCore::SVGGradientElement::isSupportedAttribute): (WebCore::SVGGradientElement::parseMappedAttribute): (WebCore::SVGGradientElement::svgAttributeChanged): (WebCore::SVGGradientElement::synchronizeProperty):
  • svg/SVGGradientElement.h:
  • svg/SVGImageElement.cpp: (WebCore::SVGImageElement::isSupportedAttribute): (WebCore::SVGImageElement::parseMappedAttribute): (WebCore::SVGImageElement::svgAttributeChanged): (WebCore::SVGImageElement::synchronizeProperty):
  • svg/SVGImageElement.h:
  • svg/SVGLangSpace.cpp: (WebCore::SVGLangSpace::addSupportedAttributes):
  • svg/SVGLangSpace.h:
  • svg/SVGLineElement.cpp: (WebCore::SVGLineElement::isSupportedAttribute): (WebCore::SVGLineElement::parseMappedAttribute): (WebCore::SVGLineElement::svgAttributeChanged): (WebCore::SVGLineElement::synchronizeProperty):
  • svg/SVGLineElement.h:
  • svg/SVGLinearGradientElement.cpp: (WebCore::SVGLinearGradientElement::isSupportedAttribute): (WebCore::SVGLinearGradientElement::parseMappedAttribute): (WebCore::SVGLinearGradientElement::svgAttributeChanged): (WebCore::SVGLinearGradientElement::synchronizeProperty):
  • svg/SVGLinearGradientElement.h:
  • svg/SVGMPathElement.cpp: (WebCore::SVGMPathElement::isSupportedAttribute): (WebCore::SVGMPathElement::parseMappedAttribute): (WebCore::SVGMPathElement::synchronizeProperty):
  • svg/SVGMPathElement.h:
  • svg/SVGMarkerElement.cpp: (WebCore::SVGMarkerElement::isSupportedAttribute): (WebCore::SVGMarkerElement::parseMappedAttribute): (WebCore::SVGMarkerElement::svgAttributeChanged): (WebCore::SVGMarkerElement::synchronizeProperty):
  • svg/SVGMarkerElement.h:
  • svg/SVGMaskElement.cpp: (WebCore::SVGMaskElement::isSupportedAttribute): (WebCore::SVGMaskElement::parseMappedAttribute): (WebCore::SVGMaskElement::svgAttributeChanged): (WebCore::SVGMaskElement::synchronizeProperty):
  • svg/SVGMaskElement.h:
  • svg/SVGPathElement.cpp: (WebCore::SVGPathElement::isSupportedAttribute): (WebCore::SVGPathElement::parseMappedAttribute): (WebCore::SVGPathElement::svgAttributeChanged): (WebCore::SVGPathElement::synchronizeProperty):
  • svg/SVGPathElement.h:
  • svg/SVGPatternElement.cpp: (WebCore::SVGPatternElement::isSupportedAttribute): (WebCore::SVGPatternElement::parseMappedAttribute): (WebCore::SVGPatternElement::svgAttributeChanged): (WebCore::SVGPatternElement::synchronizeProperty):
  • svg/SVGPatternElement.h:
  • svg/SVGPolyElement.cpp: (WebCore::SVGPolyElement::isSupportedAttribute): (WebCore::SVGPolyElement::parseMappedAttribute): (WebCore::SVGPolyElement::svgAttributeChanged):
  • svg/SVGPolyElement.h:
  • svg/SVGRadialGradientElement.cpp: (WebCore::SVGRadialGradientElement::isSupportedAttribute): (WebCore::SVGRadialGradientElement::parseMappedAttribute): (WebCore::SVGRadialGradientElement::svgAttributeChanged): (WebCore::SVGRadialGradientElement::synchronizeProperty):
  • svg/SVGRadialGradientElement.h:
  • svg/SVGRectElement.cpp: (WebCore::SVGRectElement::isSupportedAttribute): (WebCore::SVGRectElement::parseMappedAttribute): (WebCore::SVGRectElement::svgAttributeChanged): (WebCore::SVGRectElement::synchronizeProperty):
  • svg/SVGRectElement.h:
  • svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::svgAttributeChanged): (WebCore::SVGSVGElement::synchronizeProperty):
  • svg/SVGScriptElement.cpp: (WebCore::SVGScriptElement::isSupportedAttribute): (WebCore::SVGScriptElement::parseMappedAttribute): (WebCore::SVGScriptElement::svgAttributeChanged): (WebCore::SVGScriptElement::synchronizeProperty):
  • svg/SVGScriptElement.h:
  • svg/SVGStopElement.cpp: (WebCore::SVGStopElement::isSupportedAttribute): (WebCore::SVGStopElement::parseMappedAttribute): (WebCore::SVGStopElement::svgAttributeChanged): (WebCore::SVGStopElement::synchronizeProperty):
  • svg/SVGStopElement.h:
  • svg/SVGStyleElement.cpp: (WebCore::SVGStyleElement::isSupportedAttribute): (WebCore::SVGStyleElement::parseMappedAttribute):
  • svg/SVGStyleElement.h:
  • svg/SVGStyledElement.cpp: (WebCore::SVGStyledElement::parseMappedAttribute): (WebCore::SVGStyledElement::svgAttributeChanged): (WebCore::SVGStyledElement::synchronizeProperty):
  • svg/SVGStyledTransformableElement.cpp: (WebCore::SVGStyledTransformableElement::isSupportedAttribute): (WebCore::SVGStyledTransformableElement::parseMappedAttribute): (WebCore::SVGStyledTransformableElement::svgAttributeChanged): (WebCore::SVGStyledTransformableElement::synchronizeProperty):
  • svg/SVGStyledTransformableElement.h:
  • svg/SVGSymbolElement.cpp: (WebCore::SVGSymbolElement::isSupportedAttribute): (WebCore::SVGSymbolElement::parseMappedAttribute): (WebCore::SVGSymbolElement::svgAttributeChanged): (WebCore::SVGSymbolElement::synchronizeProperty):
  • svg/SVGSymbolElement.h:
  • svg/SVGTRefElement.cpp: (WebCore::SVGTRefElement::isSupportedAttribute): (WebCore::SVGTRefElement::parseMappedAttribute): (WebCore::SVGTRefElement::svgAttributeChanged): (WebCore::SVGTRefElement::synchronizeProperty):
  • svg/SVGTRefElement.h:
  • svg/SVGTests.cpp: (WebCore::SVGTests::addSupportedAttributes):
  • svg/SVGTests.h:
  • svg/SVGTextContentElement.cpp: (WebCore::SVGTextContentElement::isSupportedAttribute): (WebCore::SVGTextContentElement::parseMappedAttribute): (WebCore::SVGTextContentElement::synchronizeProperty): (WebCore::SVGTextContentElement::svgAttributeChanged):
  • svg/SVGTextContentElement.h:
  • svg/SVGTextElement.cpp: (WebCore::SVGTextElement::isSupportedAttribute): (WebCore::SVGTextElement::parseMappedAttribute): (WebCore::SVGTextElement::svgAttributeChanged): (WebCore::SVGTextElement::synchronizeProperty):
  • svg/SVGTextElement.h:
  • svg/SVGTextPathElement.cpp: (WebCore::SVGTextPathElement::isSupportedAttribute): (WebCore::SVGTextPathElement::parseMappedAttribute): (WebCore::SVGTextPathElement::svgAttributeChanged): (WebCore::SVGTextPathElement::synchronizeProperty):
  • svg/SVGTextPathElement.h:
  • svg/SVGTextPositioningElement.cpp: (WebCore::SVGTextPositioningElement::isSupportedAttribute): (WebCore::SVGTextPositioningElement::parseMappedAttribute): (WebCore::SVGTextPositioningElement::svgAttributeChanged): (WebCore::SVGTextPositioningElement::synchronizeProperty):
  • svg/SVGTextPositioningElement.h:
  • svg/SVGTransformable.cpp:
  • svg/SVGTransformable.h:
  • svg/SVGURIReference.cpp: (WebCore::SVGURIReference::addSupportedAttributes):
  • svg/SVGURIReference.h:
  • svg/SVGUseElement.cpp: (WebCore::SVGUseElement::isSupportedAttribute): (WebCore::SVGUseElement::parseMappedAttribute): (WebCore::SVGUseElement::svgAttributeChanged): (WebCore::SVGUseElement::synchronizeProperty):
  • svg/SVGUseElement.h:
  • svg/SVGViewElement.cpp: (WebCore::SVGViewElement::isSupportedAttribute): (WebCore::SVGViewElement::parseMappedAttribute): (WebCore::SVGViewElement::synchronizeProperty):
  • svg/SVGViewElement.h:
  • svg/SVGZoomAndPan.cpp: (WebCore::SVGZoomAndPan::addSupportedAttributes):
  • svg/SVGZoomAndPan.h:
9:20 PM Changeset in webkit [87009] by Simon Fraser
  • 4 edits
    3 adds in trunk

2011-05-20 Simon Fraser <Simon Fraser>

Reviewed by Dan Bernstein.

Allow ShadowBlur to do tiling when the context is scaled
https://bugs.webkit.org/show_bug.cgi?id=61232

If the GraphicsContext is scaled or rotated by a multiple of 90deg, have ShadowBlur
use the tiling code path, to avoid blurring large areas on pages like cracked.com
when the context is scaled.

  • platform/graphics/ShadowBlur.cpp: (WebCore::ShadowBlur::drawRectShadow): Call preservesAxisAlignment() to decide when to not use tiling. (WebCore::ShadowBlur::drawInsetShadow): Ditto. (WebCore::ShadowBlur::drawLayerPieces): Round to device pixels when drawing tiles to avoid pixel cracks in scaled contexts.
  • platform/graphics/transforms/AffineTransform.h: (WebCore::AffineTransform::preservesAxisAlignment): Return true if there is the matrix contains a transform that results in axis alignment (no rotation or skew, or rotations which are multiples of 90deg).
6:15 PM Changeset in webkit [87008] by ap@apple.com
  • 6 edits
    2 adds in trunk

2011-05-20 Alexey Proskuryakov <ap@apple.com>

Reviewed by Kent Tamura.

Special characters can be inserted in text field having reached maxlength
https://bugs.webkit.org/show_bug.cgi?id=19479
<rdar://problem/7828739>

  • platform/mac/editing/input/maxlength-expected.txt: Added.
  • platform/mac/editing/input/maxlength.html: Added.
  • fast/forms/input-number-commit-valid-only-expected.txt:
  • fast/forms/script-tests/input-number-commit-valid-only.js: The user can make a number field empty by deleting its content, so there is no reason why execCommand shouldn't be able to make it empty.

2011-05-20 Alexey Proskuryakov <ap@apple.com>

Reviewed by Kent Tamura.

Special characters can be inserted in text field having reached maxlength
https://bugs.webkit.org/show_bug.cgi?id=19479
<rdar://problem/7828739>

Test: platform/mac/editing/input/maxlength.html

  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::insertTextIntoNode): (WebCore::CompositeEditCommand::replaceTextInNode): Avoid hitting an assertion below, now that we can get here with empty text.
  • editing/TypingCommand.cpp: (WebCore::TypingCommand::insertText): There is still work to do even if beforetextinput removed all text from the event. At the very least, we should delete the current selection.
6:07 PM Changeset in webkit [87007] by aestes@apple.com
  • 5 edits in trunk

2011-05-20 Andy Estes <aestes@apple.com>

Reviewed by Darin Adler.

REGRESSION (r70748): WebKit cannot play videos created by Podcast Producer.
https://bugs.webkit.org/show_bug.cgi?id=61229

Test that an object element with a non-empty classid, a valid MIME
type and no fallback content is allowed to load.

  • fast/replaced/object-with-non-empty-classid-triggers-fallback-expected.txt:
  • fast/replaced/object-with-non-empty-classid-triggers-fallback.html:

2011-05-20 Andy Estes <aestes@apple.com>

Reviewed by Darin Adler.

REGRESSION (r70748): WebKit cannot play videos created by Podcast Producer.
https://bugs.webkit.org/show_bug.cgi?id=61229

Podcast Producer uses an object tag with a classid attribute to embed
QuickTime Player into a page. In r70748, we changed our behavior to
render the object's fallback content when a non-empty classid is
encountered, per HTML5. Since Podcast Producer videos have no fallback
content, this change in behavior causes the video to fail to load.

Since the object tag has a valid type attribute, we would be able to
load it if weren't for the non-empty classid. This patch changes our
policy to allow objects with non-empty classids if there is no fallback
content. We still continue to prefer fallback content if it exists,
however.

  • html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::hasValidClassId): Treat a non-empty classid as valid if the object has no fallback content.
5:52 PM Changeset in webkit [87006] by jchaffraix@webkit.org
  • 4 edits
    5 adds in trunk

2011-05-20 Kulanthaivel Palanichamy <kulanthaivel@codeaurora.org>

Reviewed by Simon Fraser.

If both border-radius and box-shadow applied, shadow is not fully visible
https://bugs.webkit.org/show_bug.cgi?id=59577

  • fast/css/box-shadow-and-border-radius.html: Added.
  • platform/qt/fast/css/box-shadow-and-border-radius-expected.png: Added.
  • platform/qt/fast/css/box-shadow-and-border-radius-expected.txt: Added.
  • platform/win/fast/css/box-shadow-and-border-radius-expected.png: Added.
  • platform/win/fast/css/box-shadow-and-border-radius-expected.txt: Added.

2011-05-20 Kulanthaivel Palanichamy <kulanthaivel@codeaurora.org>

Reviewed by Simon Fraser.

If both border-radius and box-shadow applied, shadow is not fully visible
https://bugs.webkit.org/show_bug.cgi?id=59577

The current implementation of RoundedIntRect::inflateWithRadii() inflates
its rect size and corner radii out of sync. This leads to validation failure in
Path::addRoundedRect() and results in ignoring radii in the path.
When this invalid path is used to clip out the rounded corner box before painting
the box shadow, the entire rectangle is clipped out without the corner radii.

This patch implements RoundedIntRect::inflateWithRadii() properly to inflate
rounded rect radii based on inflate ratios of rect size.

Test: fast/css/box-shadow-and-border-radius.html

  • platform/graphics/RoundedIntRect.cpp: (WebCore::RoundedIntRect::inflateWithRadii):
  • platform/graphics/RoundedIntRect.h:
5:48 PM Changeset in webkit [87005] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

2011-05-20 Jeremy Noble <jer.noble@apple.com>

Reviewed by Mark Rowe.

Crash in WebFullScreenManager::didExitFullScreen when closing a window in Safari.
https://bugs.webkit.org/show_bug.cgi?id=61228

Do not attempt to exit full screen if we aren't in full screen to begin with, as the WebProcess
won't be expecting will/didExitFullScreen notifications.

  • UIProcess/mac/WKFullScreenWindowController.mm: (-[WKFullScreenWindowController close]):
5:42 PM Changeset in webkit [87004] by kbr@google.com
  • 1 edit
    2 adds in trunk/LayoutTests

2011-05-20 Kenneth Russell <kbr@google.com>

Unreviewed. Manually pulled missing layout test result from Mesa bots.

  • platform/chromium-gpu-mac/compositing/animation/busy-indicator-actual.png: Added.
  • platform/chromium-gpu-win/compositing/animation/busy-indicator-actual.png: Added.
5:29 PM Changeset in webkit [87003] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit/mac

2011-05-20 Jeremy Noble <jer.noble@apple.com>

Reviewed by Simon Fraser.

Stack overflow in WebFullScreenController when built on Leopard and run on SnowLeopard.
https://bugs.webkit.org/show_bug.cgi?id=61224

Remove the CATransaction(SnowLeopardConvenience) functions, and replace them with the Leopard
versions of same.

  • WebView/WebFullScreenController.mm: (-[WebFullScreenController windowDidEnterFullscreen:]): (-[WebFullScreenController enterFullscreen:]): (-[WebFullScreenController exitFullscreen]): (-[WebFullscreenWindow setRendererLayer:]):
5:20 PM Changeset in webkit [87002] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

2011-05-20 Leon Scroggins <scroggo@google.com>

Reviewed by Kenneth Russell.

gpu canvas alpha tests failing on the chromium canaries
https://bugs.webkit.org/show_bug.cgi?id=59768

Remove tests which are now passing from test_expectations.

  • platform/chromium/test_expectations.txt:
4:48 PM Changeset in webkit [87001] by Michael Nordman
  • 9 edits in trunk/Source

2011-05-20 Michael Nordman <Michael Nordman>

Reviewed by Darin Fisher.

[Chromium] Support the new webkit apis so the WebDatabase system participates
in the unified quota management system.
https://bugs.webkit.org/show_bug.cgi?id=60985

No change in functionality, no new tests.

  • platform/chromium/PlatformBridge.h:
  • storage/chromium/QuotaTracker.cpp: (WebCore::QuotaTracker::getDatabaseSizeAndSpaceAvailableToOrigin): (WebCore::QuotaTracker::updateDatabaseSize): (WebCore::QuotaTracker::updateSpaceAvailableToOrigin): (WebCore::QuotaTracker::resetSpaceAvailableToOrigin):
  • storage/chromium/QuotaTracker.h:

2011-05-20 Michael Nordman <Michael Nordman>

Reviewed by Darin Fisher.

Changes to allow the WebDatabase system to participate in Chrome's unified quota
management system. Now that changes outside of the database system affect the space
available to the database system, we need new ways of getting the limit to renderers.

Split WebDatabase::updateDatabaseSizeAndSpaceAvailable() into three methods.

  • WebDatabase::updateDatababaseSize()
  • WebDatabase::updateSpaceAvailable()
  • WebDatabase::resetSpaceAvailable() The WebDatabase methods are used to 'push' size and space available info into renderers. The space available can change independently of a database having changed size.

Also provide a means for the renderer to 'pull' the space available from the main
process if that value has not been pushed into it.

  • WebCore::PlatformBridge::databaseGetSpaceAvailableForOrigin()
  • WebKit::WebKitClient::databaseGetSpaceAvailableForOrigin()

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

  • public/WebDatabase.h:
  • public/WebKitClient.h: (WebKit::WebKitClient::databaseGetSpaceAvailableForOrigin):
  • src/PlatformBridge.cpp: (WebCore::PlatformBridge::databaseGetSpaceAvailableForOrigin):
  • src/WebDatabase.cpp: (WebKit::WebDatabase::updateDatabaseSize): (WebKit::WebDatabase::updateSpaceAvailable): (WebKit::WebDatabase::resetSpaceAvailable):
4:38 PM Changeset in webkit [87000] by bfulgham@webkit.org
  • 8 edits in trunk/Source/WebKit/win

Implement the ability to add C++ event listeners to html dom
elements and dom window.
https://bugs.webkit.org/show_bug.cgi?id=60269

Patch by Anthony Johnson <anthony.johnson@flexsim.com> on 2011-05-18
Reviewed by Brent Fulgham.

  • DOMCoreClasses.cpp: Add new DOMWindow class and implementations.

(DOMNode::QueryInterface): Report that the DOMNode implements

the IDomEventTarget interface.

(DOMNode::addEventListener): Add implementation of a COM-based

event listener.

(DOMNode::removeEventListener):
(DOMNode::dispatchEvent):
(DOMDocument::createInstance):
(DOMWindow::QueryInterface): New implementation.
(DOMWindow::document): New implementation.
(DOMWindow::getComputedStyle): Stub.
(DOMWindow::getMatchedCSSRules): Stub.
(DOMWindow::devicePixelRatio): Stub.
(DOMWindow::addEventListener): New implementation.
(DOMWindow::removeEventListener): New implementation.
(DOMWindow::dispatchEvent): New implementation.
(DOMWindow::DOMWindow): New implementation.
(DOMWindow::~DOMWindow): New implementation.
(DOMWindow::createInstance): New implementation.

  • DOMCoreClasses.h: Add new DOMWindow class and declarations.

(DOMWindow::AddRef): New declaration.
(DOMWindow::Release): New declaration.
(DOMWindow::throwException): New declaration.
(DOMWindow::callWebScriptMethod): New declaration.
(DOMWindow::evaluateWebScript): New declaration.
(DOMWindow::removeWebScriptKey): New declaration.
(DOMWindow::stringRepresentation): New declaration.
(DOMWindow::webScriptValueAtIndex): New declaration.
(DOMWindow::setWebScriptValueAtIndex): New declaration.
(DOMWindow::setException): New declaration.
(DOMWindow::window): New declaration.

  • DOMEventsClasses.cpp: Add new WebEventListener and implementation.

(DOMEventListener::handleEvent): New implementation.
(WebEventListener::WebEventListener): New implementation.
(WebEventListener::~WebEventListener): New implementation.
(WebEventListener::operator==): New implementation.
(WebEventListener::handleEvent): New implementation.
(WebEventListener::create): New implementation.

  • DOMEventsClasses.h: Add new WebEventListener class declaration.
  • Interfaces/IWebFrame.idl: Add new DOMWindow accessor to the main Web Frame interface.
  • WebFrame.cpp: Add implementation of new DOMWindow creation method.

(WebFrame::DOMWindow):

  • WebFrame.h: Add DOMWindow declaration.
4:20 PM Changeset in webkit [86999] by oliver@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

2011-05-20 Oliver Hunt <oliver@apple.com>

Reviewed by Gavin Barraclough.

Reduce size of inline cache path of get_by_id on ARMv7
https://bugs.webkit.org/show_bug.cgi?id=61221

This reduces the code size of get_by_id by 20 bytes

  • assembler/ARMv7Assembler.h: (JSC::ARMv7Assembler::ldrCompact): (JSC::ARMv7Assembler::repatchCompact): (JSC::ARMv7Assembler::setUInt7ForLoad):
  • assembler/MacroAssemblerARMv7.h: (JSC::MacroAssemblerARMv7::load32WithCompactAddressOffsetPatch):
  • jit/JIT.h:
4:13 PM Changeset in webkit [86998] by ap@apple.com
  • 2 edits in trunk/Websites/webkit.org

2011-05-20 Alexey Proskuryakov <ap@apple.com>

Reviewed by Dan Bernstein.

Building instructions should not talk about Tiger
https://bugs.webkit.org/show_bug.cgi?id=61210

  • building/tools.html: Removed steps that are only necessary on Tiger, and changed required Xcode version to the latest Leopard one.
3:59 PM Changeset in webkit [86997] by jschuh@chromium.org
  • 2 edits in trunk/LayoutTests

2011-05-20 Justin Schuh <jschuh@chromium.org>

Unreviewed.

Chromium expectations exception for:
svg/W3C-SVG-1.1-SE/struct-use-14-f.svg

  • platform/chromium/test_expectations.txt:
3:56 PM Changeset in webkit [86996] by Lucas Forschler
  • 5 edits in branches/safari-534-branch/Source

Versioning.

3:51 PM Changeset in webkit [86995] by aestes@apple.com
  • 9 edits
    1 add in trunk/Source

2011-05-20 Andy Estes <aestes@apple.com>

Reviewed by Darin Adler.

WebView loses firstResponder status when entering full-screen mode.
https://bugs.webkit.org/show_bug.cgi?id=61153

No test possible via DRT. Add a manual test instead.

  • manual-tests/full-screen-keypress.html: Added.

2011-05-20 Andy Estes <aestes@apple.com>

Reviewed by Darin Adler.

WebView loses firstResponder status when entering full-screen mode.
https://bugs.webkit.org/show_bug.cgi?id=61153

  • WebKit.xcodeproj/project.pbxproj: Export WebNSWindowExtras.h as a private header so that WebKit2 can include it.

2011-05-20 Andy Estes <aestes@apple.com>

Reviewed by Darin Adler.

WebView loses firstResponder status when entering full-screen mode.
https://bugs.webkit.org/show_bug.cgi?id=61153

  • Misc/WebNSWindowExtras.h:
  • Misc/WebNSWindowExtras.m: (-[NSWindow makeResponder:firstResponderIfDescendantOfView:]): Add a convenience method to NSWindow that makes the given NSResponder first responder only if it is a descendant of the given view.
  • WebView/WebFullScreenController.mm: (-[WebFullScreenController windowDidEnterFullscreen:]): If the WebView was a descendant of the browser window's first responder when entering full-screen mode, set the full-screen window's first responder to that same NSResponder. (-[WebFullScreenController exitFullscreen]): Do the reverse of what is done in windowDidEnterFullscreen:.

2011-05-20 Andy Estes <aestes@apple.com>

Reviewed by Darin Adler.

WebView loses firstResponder status when entering full-screen mode.
https://bugs.webkit.org/show_bug.cgi?id=61153

  • UIProcess/mac/WKFullScreenWindowController.mm: (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): If the WebView was a descendant of the browser window's first responder when entering full-screen mode, set the full-screen window's first responder to that same NSResponder. (-[WKFullScreenWindowController beganExitFullScreenAnimation]): Do the reverse of what is done in finishedEnterFullScreenAnimation:.
3:47 PM Changeset in webkit [86994] by Lucas Forschler
  • 5 edits in branches/safari-534-branch/Source

Versioning.

3:43 PM Changeset in webkit [86993] by Lucas Forschler
  • 1 copy in tags/Safari-534.37

New tag.

3:36 PM Changeset in webkit [86992] by jer.noble@apple.com
  • 10 edits in trunk/Source

2011-05-20 Jeremy Noble <jer.noble@apple.com>

Reviewed by Maciej Stachowiak.

WebKit2: Exit full screen mode if the WebProcess crashes.
https://bugs.webkit.org/show_bug.cgi?id=61151

  • platform/graphics/win/FullScreenController.h:
  • platform/graphics/win/FullScreenController.cpp: (FullScreenController::close): Added. Close the full-screen window without animation

if called.

2011-05-20 Jeremy Noble <jer.noble@apple.com>

Reviewed by Maciej Stachowiak.

WebKit2: Exit full screen mode if the WebProcess crashes.
https://bugs.webkit.org/show_bug.cgi?id=61151

If the WebProcess crashes, exit full-screen mode to avoid getting stuck. Move the
WebFullScreenManagerProxy::invalidate() implementation into the platform-specific
files, and have them close their respective platform's full-screen window.

  • UIProcess/WebFullScreenManagerProxy.cpp:
  • UIProcess/gtk/WebFullScreenManagerProxyGtk.cpp: (WebKit::WebFullScreenManagerProxy::invalidate): Added. Copied from main implementation.
  • UIProcess/mac/WKFullScreenWindowController.h:
  • UIProcess/mac/WKFullScreenWindowController.mm: (-[WKFullScreenWindowController close]): Added.
  • UIProcess/mac/WebFullScreenManagerProxyMac.mm: (WebKit::WebFullScreenManagerProxy::invalidate): Added.
  • UIProcess/win/WebFullScreenManagerProxyWin.cpp: (WebKit::WebFullScreenManagerProxy::invalidate): Added.
3:34 PM Changeset in webkit [86991] by Lucas Forschler
  • 1 move in branches/safari-534-branch

rename branch.

3:31 PM Changeset in webkit [86990] by andersca@apple.com
  • 9 edits
    17 deletes in trunk/Source/WebKit2

2011-05-20 Anders Carlsson <andersca@apple.com>

Reviewed by Dan Bernstein.

Remove the chunked update drawing area
https://bugs.webkit.org/show_bug.cgi?id=61216

The chunked update drawing area is no longer used in any port, so remove all traces of it.

Qt still uses UpdateChunks for the tiled drawing area so keep the Shared/qt/UpdateChunk.* classes for now.

  • GNUmakefile.am:
  • Shared/DrawingAreaInfo.h:
  • Shared/gtk/UpdateChunk.cpp: Removed.
  • Shared/gtk/UpdateChunk.h: Removed.
  • Shared/mac/UpdateChunk.cpp: Removed.
  • Shared/mac/UpdateChunk.h: Removed.
  • Shared/win/UpdateChunk.cpp: Removed.
  • Shared/win/UpdateChunk.h: Removed.
  • UIProcess/ChunkedUpdateDrawingAreaProxy.cpp: Removed.
  • UIProcess/ChunkedUpdateDrawingAreaProxy.h: Removed.
  • UIProcess/gtk/ChunkedUpdateDrawingAreaProxyGtk.cpp: Removed.
  • UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm: Removed.
  • UIProcess/qt/ChunkedUpdateDrawingAreaProxyQt.cpp: Removed.
  • UIProcess/win/ChunkedUpdateDrawingAreaProxyWin.cpp: Removed.
  • UIProcess/win/WebView.cpp: (WebKit::WebView::paint): (WebKit::WebView::createDrawingAreaProxy): (WebKit::WebView::enterAcceleratedCompositingMode): (WebKit::WebView::exitAcceleratedCompositingMode):
  • WebKit2.pro:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp: Removed.
  • WebProcess/WebPage/ChunkedUpdateDrawingArea.h: Removed.
  • WebProcess/WebPage/DrawingArea.cpp: (WebKit::DrawingArea::create):
  • WebProcess/WebPage/mac/ChunkedUpdateDrawingAreaMac.cpp: Removed.
  • WebProcess/WebPage/qt/ChunkedUpdateDrawingAreaQt.cpp: Removed.
  • WebProcess/WebPage/win/ChunkedUpdateDrawingAreaWin.cpp: Removed.
  • win/WebKit2.vcproj:
3:29 PM Changeset in webkit [86989] by rniwa@webkit.org
  • 5 edits in trunk/LayoutTests

2011-05-20 Ryosuke Niwa <rniwa@webkit.org>

Rebaselines after r86983.

  • platform/chromium-win/editing/pasteboard/smart-paste-003-expected.txt:
  • platform/chromium-win/editing/pasteboard/smart-paste-004-expected.txt:
  • platform/gtk/editing/pasteboard/paste-xml-expected.txt:
  • platform/win/editing/pasteboard/paste-xml-expected.txt:
3:26 PM Changeset in webkit [86988] by enrica@apple.com
  • 10 edits in trunk/Source

Add delegate methods about focus and blur to all elements.
https://bugs.webkit.org/show_bug.cgi?id=61218

Reviewed by David Kilzer.

Source/WebCore:

We want to have delegates for these events for all the elements, not only the form elements.
The patch moves the call to the delegate in the Node class and changes the name
of the methods not to be form element specific.

  • dom/Node.cpp:

(WebCore::Node::dispatchFocusEvent): Added call to delegate with the new name.
(WebCore::Node::dispatchBlurEvent): Added call to delegate with the new name.

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::dispatchBlurEvent): Removed code that calls the delegate since
it has been moved into Node.

  • html/HTMLFormControlElement.h: Removed dispatchFocusEvent, since we are using the default inplementation in Node.
  • loader/EmptyClients.h:

(WebCore::EmptyChromeClient::elementDidFocus): Name changed.
(WebCore::EmptyChromeClient::elementDidBlur): Name changed.

  • page/ChromeClient.h:

(WebCore::ChromeClient::elementDidFocus): Name changed.
(WebCore::ChromeClient::elementDidBlur): Name changed.

Source/WebKit/mac:

We want to have delegates for these events for all the elements, not only the form elements.
The patch changes the name of the methods in a way that is not form element specific.

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm:

(WebChromeClient::elementDidFocus):
(WebChromeClient::elementDidBlur):

  • WebView/WebUIDelegatePrivate.h:
3:18 PM Changeset in webkit [86987] by jschuh@chromium.org
  • 2 edits in trunk/LayoutTests

2011-05-20 Justin Schuh <jschuh@chromium.org>

Unreviewed.

Chromium expectations update.

  • platform/chromium/test_expectations.txt:
3:03 PM Changeset in webkit [86986] by scherkus@chromium.org
  • 1 edit
    5 adds in trunk/LayoutTests

2011-05-20 Andrew Scherkus <scherkus@chromium.org>

Unreviewed, checking in baselines for media/media-document-audio-repaint.html for chromium-{mac,linux,win}.

  • platform/chromium-linux/media/media-document-audio-repaint-expected.png: Added.
  • platform/chromium-mac/media/media-document-audio-repaint-expected.png: Added.
  • platform/chromium-mac/media/media-document-audio-repaint-expected.txt: Added.
  • platform/chromium-win/media/media-document-audio-repaint-expected.png: Added.
  • platform/chromium-win/media/media-document-audio-repaint-expected.txt: Added.
2:40 PM Changeset in webkit [86985] by mdelaney@apple.com
  • 2 edits in trunk/Source/WebKit2

2011-05-20 Matthew Delaney <mdelaney@apple.com>

Reviewed by Steve Falkenburg.

Default min DOM Timer interval is not set soon enough for first page to pick it up in WK2
https://bugs.webkit.org/show_bug.cgi?id=61215

  • WebProcess/WebPage/WebPage.cpp: Simply moving the DOM min timer interval setting to before the first page creation.
2:28 PM Changeset in webkit [86984] by jschuh@chromium.org
  • 2 edits in trunk/LayoutTests

2011-05-20 Justin Schuh <jschuh@chromium.org>

Unreviewed.

Chromium expectaions update.

  • platform/chromium/test_expectations.txt:
2:23 PM Changeset in webkit [86983] by rniwa@webkit.org
  • 18 edits in trunk

2011-05-20 Ryosuke Niwa <rniwa@webkit.org>

Reviewed by Enrica Casucci.

Wrap copied contents by one style span instead of two
https://bugs.webkit.org/show_bug.cgi?id=60988

Rebaselined tests due to the change in how WebKit preserves style in copy and paste.

  • editing/pasteboard/4930986-2-expected.txt: Whitespace change.
  • editing/pasteboard/5065605-expected.txt: No longer adds redundant inline style declaration.
  • editing/pasteboard/paste-4039777-fix-expected.txt: Progression; Now we hit the list merging logic in ReplaceSelectionCommand: isStyleSpan(refNode.get()) && isListElement(refNode->firstChild()).
  • editing/pasteboard/paste-list-001-expected.txt: Ditto.
  • editing/pasteboard/paste-text-011-expected.txt: An extra style span was added.
  • editing/pasteboard/paste-text-012-expected.txt: Ditto.
  • editing/pasteboard/smart-paste-003-trailing-whitespace-expected.txt: No longer adds redundant style span.
  • platform/chromium-win/editing/pasteboard/paste-text-003-expected.txt: No longer adds empty anonymous nodes.
  • platform/chromium-win/editing/pasteboard/paste-text-011-expected.txt: Ditto.
  • platform/gtk/editing/pasteboard/paste-text-003-expected.txt: Ditto.
  • platform/mac/editing/pasteboard/paste-text-003-expected.txt: Ditto.
  • platform/qt/editing/pasteboard/paste-text-003-expected.txt: Ditto.

2011-05-20 Ryosuke Niwa <rniwa@webkit.org>

Reviewed by Enrica Casucci.

Wrap copied contents by one style span instead of two
https://bugs.webkit.org/show_bug.cgi?id=60988

Replaced sourceDocumentStyleSpan and copiedRangeStyleSpan by one wrapping style span. Instead
of wrapping the copied contents by user-applied style and document default style in serialization,
take the difference with the document default's style in paste code.

This will dramatically simplify our copy and paste code and pave a way to fix the bug 60914.

No new tests because copy & paste is tested by existing layout tests.

  • editing/EditingStyle.cpp: (WebCore::EditingStyle::prepareToApplyAt): Remove the color property if RGBA values of color matches that of the computed style at the specified position.
  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::handleStyleSpans): Replaced sourceDocumentStyleSpan and copiedRangeStyleSpan by wrappingStyleSpan. When pasting as a quotation, compare style against the document's default style to avoid keeping the document default style (tested by editing/pasteboard/4930986-3.html).
  • editing/ReplaceSelectionCommand.h:
  • editing/markup.cpp: (WebCore::createMarkup): Only use one style span to wrap the serialized contents.
2:12 PM Changeset in webkit [86982] by jschuh@chromium.org
  • 2 edits in trunk/LayoutTests

2011-05-20 Justin Schuh <jschuh@chromium.org>

Unreviewed.

Chromium expectaions update.

  • platform/chromium/test_expectations.txt:
2:00 PM Changeset in webkit [86981] by Simon Fraser
  • 19 edits in trunk

2011-05-20 Simon Fraser <Simon Fraser>

Reviewed by Sam Weinig.

numberOfActiveAnimations() can include animations from documents in the page cache
https://bugs.webkit.org/show_bug.cgi?id=53641

Some transition tests using layoutTestController.numberOfActiveAnimations() failed
in WebKit2 because numberOfActiveAnimations() could include those from other documents
in the page cache.

Fix by passing in the document for which we wish to count animations.

  • WebCore.exp.in:
  • page/animation/AnimationController.cpp: (WebCore::AnimationControllerPrivate::numberOfActiveAnimations): (WebCore::AnimationController::numberOfActiveAnimations):
  • page/animation/AnimationController.h:
  • page/animation/AnimationControllerPrivate.h:
1:58 PM Changeset in webkit [86980] by abarth@webkit.org
  • 4 edits in trunk/Source/WebCore

2011-05-20 Adam Barth <abarth@webkit.org>

Reviewed by Alexey Proskuryakov.

Factor CORS request preparation out of DocumentThreadableLoader
https://bugs.webkit.org/show_bug.cgi?id=61209

DocumentThreadableLoader has two jobs:

1) Proxy loads between threads.
2) Run the CORS state machine.

This patch begins the work of separating those concerns, allowing CORS
to be used elsewhere in the loading pipeline. In particular, this
patch moves knowledge of how to prepare CORS requests out of
DocumentThreadableLoder.

  • loader/CrossOriginAccessControl.cpp: (WebCore::isOnAccessControlSimpleRequestHeaderWhitelist): (WebCore::updateRequestForAccessControl): (WebCore::createAccessControlPreflightRequest):
  • loader/CrossOriginAccessControl.h:
  • loader/DocumentThreadableLoader.cpp: (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest): (WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequestWithPreflight):
1:11 PM Changeset in webkit [86979] by krit@webkit.org
  • 2 edits
    1 delete in trunk/LayoutTests

2011-05-20 Dirk Schulze <krit@webkit.org>

Unreviewed rebaseline of Qt. One of the two tests doesn't even need a platform specific result anymore.

SVGPathSegList needs better getTotalLength, getSegmentAtLength path traversal code
https://bugs.webkit.org/show_bug.cgi?id=12047

  • platform/qt/svg/custom/path-getTotalLength-expected.txt: Removed.
  • platform/qt/svg/custom/path-textPath-simulation-expected.txt:
12:53 PM Changeset in webkit [86978] by rwlbuis@webkit.org
  • 4 edits
    3 adds in trunk

2011-05-20 Rob Buis <rbuis@rim.com>

Reviewed by Dirk Schulze.

Use test from ietestcenter fails
https://bugs.webkit.org/show_bug.cgi?id=60844

When an id changes on an in-document element, we need to check whether the id
is part of the pending elements. Since this is the same thing as happens in
insertedIntoDocument, split out the common code into buildPendingResourcesIfNeeded.

Test: svg/W3C-SVG-1.1-SE/struct-use-14-f.svg

  • svg/SVGStyledElement.cpp: (WebCore::SVGStyledElement::svgAttributeChanged): (WebCore::SVGStyledElement::insertedIntoDocument): (WebCore::SVGStyledElement::buildPendingResourcesIfNeeded):
  • svg/SVGStyledElement.h:

2011-05-20 Rob Buis <rbuis@rim.com>

Reviewed by Dirk Schulze.

Use test from ietestcenter fails
https://bugs.webkit.org/show_bug.cgi?id=60844

  • platform/mac/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.png: Added.
  • platform/mac/svg/W3C-SVG-1.1-SE/struct-use-14-f-expected.txt: Added.
  • svg/W3C-SVG-1.1-SE/struct-use-14-f.svg: Added.
12:43 PM Changeset in webkit [86977] by Simon Fraser
  • 11 edits in trunk

2011-05-20 Simon Fraser <Simon Fraser>

Reviewed by Sam Weinig.

WebKitTestRunner needs layoutTestController.pauseTransitionAtTimeOnElementWithId
https://bugs.webkit.org/show_bug.cgi?id=42550

Implement pauseTransitionAtTimeOnElementWithId in WebKitTestRunner.

  • WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
  • WebKitTestRunner/InjectedBundle/LayoutTestController.cpp: Copy the code for pausing animations, FIXME comments and all. (WTR::LayoutTestController::pauseTransitionAtTimeOnElementWithId):
  • WebKitTestRunner/InjectedBundle/LayoutTestController.h:

2011-05-20 Simon Fraser <Simon Fraser>

Reviewed by Sam Weinig.

WebKitTestRunner needs layoutTestController.pauseTransitionAtTimeOnElementWithId
https://bugs.webkit.org/show_bug.cgi?id=42550

Plumb through methods to pause a transition of a given property on an element.

  • WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: (WKBundleFramePauseAnimationOnElementWithId): (WKBundleFramePauseTransitionOnElementWithId):
  • WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
  • WebProcess/WebPage/WebFrame.cpp: (WebKit::WebFrame::pauseTransitionOnElementWithId):
  • WebProcess/WebPage/WebFrame.h:
12:36 PM Changeset in webkit [86976] by inferno@chromium.org
  • 5 edits
    2 adds in trunk

2011-05-20 Abhishek Arya <inferno@chromium.org>

Reviewed by Kent Tamura.

Tests that we do not crash when auto-focus triggers a attach.
https://bugs.webkit.org/show_bug.cgi?id=32882

  • fast/forms/input-element-attach-crash-expected.txt: Added.
  • fast/forms/input-element-attach-crash.html: Added.

2011-05-20 Abhishek Arya <inferno@chromium.org>

Reviewed by Kent Tamura.

Make auto-focus a post attach callback in
HTMLFormControlElement::attach().
https://bugs.webkit.org/show_bug.cgi?id=32882

Original patch by Darin Adler. This one uses a part of it.


Test: fast/forms/input-element-attach-crash.html

  • dom/Document.cpp: (WebCore::Document::recalcStyle): Make sure that m_inStyleRecalc is already false by the time post-attach callbacks are done so that layout triggered inside those callbacks can work properly.
  • html/HTMLFormControlElement.cpp: (WebCore::shouldAutofocus): Helper function that expresses the rule for which form control elements should auto-focus. (WebCore::focusPostAttach): Called post-attach to focus an element if we discover it should be focused during attach. (WebCore::HTMLFormControlElement::attach): Refactored code for which elements need auto-focus into a separate function. Instead of focusing right away, use the focusPostAttach function to focus after attach is done. Also added calls to suspendPostAttachCallbacks and resumePostAttachCallbacks so post-attach callbacks happen late enough. Before, they could run inside the base attach function.
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::attach): Added calls to suspendPostAttachCallbacks and resumePostAttachCallbacks so post-attach callbacks happen late enough
12:28 PM Changeset in webkit [86975] by alokp@chromium.org
  • 10 edits in trunk/Source/WebCore

2011-05-20 Alok Priyadarshi <alokp@chromium.org>

Reviewed by James Robinson.

[chromium] Remove LayerRendererChromium::useShader
https://bugs.webkit.org/show_bug.cgi?id=61143

GPU compositor tests should be sufficient.

  • platform/graphics/chromium/LayerRendererChromium.cpp: (WebCore::LayerRendererChromium::LayerRendererChromium):
  • platform/graphics/chromium/LayerRendererChromium.h:
  • platform/graphics/chromium/LayerTilerChromium.cpp: (WebCore::LayerTilerChromium::draw):
  • platform/graphics/chromium/RenderSurfaceChromium.cpp: (WebCore::RenderSurfaceChromium::drawSurface):
  • platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp: (WebCore::CCCanvasLayerImpl::draw):
  • platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp: (WebCore::CCHeadsUpDisplay::draw):
  • platform/graphics/chromium/cc/CCLayerImpl.cpp: (WebCore::CCLayerImpl::drawDebugBorder):
  • platform/graphics/chromium/cc/CCPluginLayerImpl.cpp: (WebCore::CCPluginLayerImpl::draw):
  • platform/graphics/chromium/cc/CCVideoLayerImpl.cpp: (WebCore::CCVideoLayerImpl::drawYUV): (WebCore::CCVideoLayerImpl::drawRGBA):
12:06 PM Changeset in webkit [86974] by commit-queue@webkit.org
  • 8 edits in trunk/Source/JavaScriptCore

2011-05-20 Zoltan Herczeg <zherczeg@inf.u-szeged.hu>

Reviewed by Oliver Hunt.

Zombies should "live" forever
https://bugs.webkit.org/show_bug.cgi?id=61170

Reusing zombie cells could still hide garbage
collected cell related bugs.

  • JavaScriptCore.pro:
  • heap/MarkedBlock.cpp: (JSC::MarkedBlock::clearMarks):
  • heap/MarkedBlock.h:
  • heap/MarkedSpace.cpp: (JSC::MarkedSpace::destroy):
  • runtime/JSCell.h: (JSC::JSCell::JSValue::isZombie):
  • runtime/JSZombie.h: (JSC::JSZombie::~JSZombie):
  • runtime/WriteBarrier.h: (JSC::WriteBarrierBase::setWithoutWriteBarrier):
12:04 PM Changeset in webkit [86973] by krit@webkit.org
  • 6 edits in trunk/Source/WebCore

2011-05-20 Dirk Schulze <krit@webkit.org>

Reviewed by Darin Adler.

SVGPathSegList needs better getTotalLength, getSegmentAtLength path traversal code
https://bugs.webkit.org/show_bug.cgi?id=12047

Right now SVGPathElement::getTotalLength and SVGPathElement::getPointAtLength use toPathData()
to transform a SVGPathByteStream to a Path. This Path gets traversed to find the searched value.
With this patch both functions use the SVGPathByteStream directly together with the existing
traversing code in SVG. This avoids the intermediate transforming to a platform path and gives
platform independent results.
The traversal code in SVG needed to be extended to support all PathTraversalActions.

No new tests added. The existing tests cover the changes.

  • svg/SVGPathElement.cpp: (WebCore::SVGPathElement::getTotalLength): (WebCore::SVGPathElement::getPointAtLength):
  • svg/SVGPathParserFactory.cpp: (WebCore::SVGPathParserFactory::getTotalLengthOfSVGPathByteStream): (WebCore::SVGPathParserFactory::getPointAtLengthOfSVGPathByteStream):
  • svg/SVGPathParserFactory.h:
  • svg/SVGPathTraversalStateBuilder.cpp: (WebCore::SVGPathTraversalStateBuilder::continueConsuming): (WebCore::SVGPathTraversalStateBuilder::totalLength): (WebCore::SVGPathTraversalStateBuilder::currentPoint):
  • svg/SVGPathTraversalStateBuilder.h:
11:56 AM SVG TODO List - Short notes edited by rwlbuis@webkit.org
Bugs are fixed, removing (diff)
11:53 AM SVG TODO List - Short notes edited by rwlbuis@webkit.org
All bugs in this section are fixed (diff)
11:46 AM Changeset in webkit [86972] by beidson@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

<rdar://problem/9472883> and https://bugs.webkit.org/show_bug.cgi?id=61203
Horrendous bug in callOnMainThreadAndWait

Reviewed by Sam Weinig.

  • wtf/MainThread.cpp:

(WTF::dispatchFunctionsFromMainThread): Before signaling the background thread with the

syncFlag condition, reacquire the mutex first.

11:39 AM Changeset in webkit [86971] by kerz@chromium.org
  • 2 edits in branches/chromium/742/Source/WebCore

Revert 86910 - 2011-05-19 James Robinson <jamesr@chromium.org>

This caused chromium beta builders to fail on all platforms.

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

Add a speculative null check to see if it reduces the crashrate.

http://code.google.com/p/chromium-os/issues/detail?id=15377

  • rendering/RenderObject.cpp: (WebCore::RenderObject::repaintUsingContainer):

TBR=jamesr@google.com
Review URL: http://codereview.chromium.org/7054014

11:32 AM WebCoreRendering edited by rwlbuis@webkit.org
Fix typo (diff)
11:30 AM Changeset in webkit [86970] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

2011-05-20 Mark Pilgrim <pilgrim@chromium.org>

Reviewed by Tony Chang.

IndexedDB createObjectStore should throw if name is null
https://bugs.webkit.org/show_bug.cgi?id=58465

  • storage/indexeddb/mozilla/create-objectstore-null-name-expected.txt: Added.
  • storage/indexeddb/mozilla/create-objectstore-null-name.html: Added.

2011-05-20 Mark Pilgrim <pilgrim@chromium.org>

Reviewed by Tony Chang.

IndexedDB createObjectStore should throw if name is null
https://bugs.webkit.org/show_bug.cgi?id=58465

Test: storage/indexeddb/mozilla/create-objectstore-null-name.html

  • storage/IDBDatabase.idl:
  • storage/IDBDatabaseBackendImpl.cpp: (WebCore::IDBDatabaseBackendImpl::createObjectStore):
11:23 AM Changeset in webkit [86969] by alokp@chromium.org
  • 2 edits in trunk/Tools

2011-05-20 Alok Priyadarshi <alokp@chromium.org>

Reviewed by Stephen White.

Adding myself to the committers list.

  • Scripts/webkitpy/common/config/committers.py:
11:20 AM Changeset in webkit [86968] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

2011-05-20 Oliver Hunt <oliver@apple.com>

Reviewed by Sam Weinig.

Remove unnecessary double->int conversion at the end of op_div
https://bugs.webkit.org/show_bug.cgi?id=61198

We don't attempt this conversion on 64bit, removing it actually speeds
up sunspider and v8 slightly, and it reduces code size.

  • jit/JITArithmetic32_64.cpp: (JSC::JIT::emit_op_div):
11:18 AM Changeset in webkit [86967] by weinig@apple.com
  • 7 edits in trunk/Source/WebKit2

2011-05-20 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

WebKit2: Media files cannot be saved in the Application Cache due to a sandbox violation
https://bugs.webkit.org/show_bug.cgi?id=61199

Instead of using a sandbox extension to give permission to the application cache directory,
initialize the sandbox with access to it like we do for other databases.

  • Shared/WebProcessCreationParameters.cpp: (WebKit::WebProcessCreationParameters::encode): (WebKit::WebProcessCreationParameters::decode):
  • Shared/WebProcessCreationParameters.h:
  • UIProcess/WebContext.cpp: (WebKit::WebContext::ensureWebProcess):
  • WebProcess/WebProcess.cpp: (WebKit::WebProcess::initializeWebProcess):
  • WebProcess/com.apple.WebProcess.sb:
  • WebProcess/mac/WebProcessMac.mm: (WebKit::initializeSandbox):
10:45 AM Changeset in webkit [86966] by xji@chromium.org
  • 5 edits in trunk

2011-05-20 Xiaomei Ji <xji@chromium.org>

Reviewed by Ryosuke Niwa.

ctrl-arrow does not work on words separated by multiple spaces.
https://bugs.webkit.org/show_bug.cgi?id=57543.

Add the leftmost boundary of a box in RTL block or the rightmost boundary of a box in LTR
block as word break if its inlineBox is the current box and it is a word break.

  • editing/visible_units.cpp: (WebCore::previousWordBreakInBoxInsideBlockWithSameDirectionality): Add the rightmost boundary of a box in LTR block or leftmost boundary of a box in RTL block as visually first word break. (WebCore::nextWordBreakInBoxInsideBlockWithDifferentDirectionality): (WebCore::collectWordBreaksInBoxInsideBlockWithDifferntDirectionality): (WebCore::leftWordBoundary): Fix bug change "box" to "adjacentBox". (WebCore::rightWordBoundary): Fix bug change "box" to "adjacentBox".

2011-05-20 Xiaomei Ji <xji@chromium.org>

Reviewed by Ryosuke Niwa.

ctrl-arrow does not work on words separated by multiple spaces.
https://bugs.webkit.org/show_bug.cgi?id=57543.

Add more test cases for mutiplespaces.

  • editing/selection/move-by-word-visually-expected.txt:
  • editing/selection/move-by-word-visually.html:
10:20 AM Changeset in webkit [86965] by evan@chromium.org
  • 9 edits in trunk/Source

2011-05-19 Evan Martin <evan@chromium.org>

Reviewed by Tony Chang.

[chromium] remove <(library) variable
https://bugs.webkit.org/show_bug.cgi?id=61158

This was for a build experiment; we can just use the correct value now.

2011-05-19 Evan Martin <evan@chromium.org>

Reviewed by Tony Chang.

[chromium] remove <(library) variable
https://bugs.webkit.org/show_bug.cgi?id=61158

This was for a build experiment; we can just use the correct value now.

  • glu/glu.gyp:
  • gyp/test/library/src/library.gyp:

2011-05-19 Evan Martin <evan@chromium.org>

Reviewed by Tony Chang.

[chromium] remove <(library) variable
https://bugs.webkit.org/show_bug.cgi?id=61158

This was for a build experiment; we can just use the correct value now.

  • WebCore.gyp/WebCore.gyp:

2011-05-19 Evan Martin <evan@chromium.org>

Reviewed by Tony Chang.

[chromium] remove <(library) variable
https://bugs.webkit.org/show_bug.cgi?id=61158

This was for a build experiment; we can just use the correct value now.

  • WebKit.gyp:
9:36 AM Changeset in webkit [86964] by scherkus@chromium.org
  • 2 edits in trunk/LayoutTests

2011-05-20 Andrew Scherkus <scherkus@chromium.org>

Unreviewed, updating media/event-attributes.html as passing for Chromium.

  • platform/chromium/test_expectations.txt:
9:25 AM Changeset in webkit [86963] by podivilov@chromium.org
  • 2 edits in trunk/Source/WebCore

2011-05-20 Pavel Podivilov <podivilov@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: breakpoints disappear from ui after navigation.
https://bugs.webkit.org/show_bug.cgi?id=61133

  • inspector/front-end/DebuggerPresentationModel.js: (WebInspector.DebuggerPresentationModel.prototype._debuggerWasEnabled): (WebInspector.DebuggerPresentationModel.prototype._saveBreakpoints):
9:20 AM Changeset in webkit [86962] by tkent@chromium.org
  • 2 edits in trunk/LayoutTests

[Windows] fast/dom/HTMLFormElement/associated-elements-after-index-assertion-fail1.html failing since r86936
https://bugs.webkit.org/show_bug.cgi?id=61190

  • platform/win/Skipped: Skip it because the test uses <progress> and Windows doesn't have <progress> support.
9:20 AM Changeset in webkit [86961] by podivilov@chromium.org
  • 2 edits in trunk/Source/WebCore

2011-05-20 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r86958.
http://trac.webkit.org/changeset/86958
https://bugs.webkit.org/show_bug.cgi?id=61195

broke breakpoints persisting (Requested by podivilov on
#webkit).

  • inspector/front-end/DebuggerPresentationModel.js: (WebInspector.DebuggerPresentationModel.prototype._debuggerWasEnabled): (WebInspector.DebuggerPresentationModel.prototype._saveBreakpoints):
9:19 AM Changeset in webkit [86960] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

2011-05-20 Oliver Hunt <oliver@apple.com>

Reviewed by Sam Weinig.

Interpreter uses wrong bytecode offset for determining exception handler
https://bugs.webkit.org/show_bug.cgi?id=61191

The bytecode offset given for the returnPC from the JIT is
actually the offset for the start of the instruction triggering
the call, whereas in the interpreter it is the actual return
VPC. This means if the next instruction following a call was
in an exception region we would incorrectly redirect to its
handler. Long term we want to completely redo how exceptions
are handled anyway so the simplest and lowest risk fix here is
to simply subtract one from the return vPC so that we have an
offset in the triggering instruction.

It turns out this is caught by a couple of tests already.

  • interpreter/Interpreter.cpp: (JSC::Interpreter::unwindCallFrame):
9:15 AM Changeset in webkit [86959] by yurys@chromium.org
  • 14 edits
    7 adds in trunk

2011-05-19 Sergey Vorobyev <sergeyvorobyev@google.com>

Reviewed by Yury Semikhatsky.

Web Inspector: Background network events collection - add GUI to Inspector.
https://bugs.webkit.org/show_bug.cgi?id=58652

Move reopenFrontend() to inspector-test.js
Add first test for background events collection.

  • http/tests/inspector/inspector-test.js: ():
  • http/tests/inspector/network-test.js: Added. (initialize_NetworkTest.InspectorTest.enableBackgroundEventCollection): (initialize_NetworkTest.InspectorTest.disableBackgroundEventCollection):
  • http/tests/inspector/network/network-clear-after-disabled-expected.txt: Added.
  • http/tests/inspector/network/network-clear-after-disabled.html: Added.
  • http/tests/inspector/network/network-close-load-open-expected.txt: Added.
  • http/tests/inspector/network/network-close-load-open.html: Added.
  • http/tests/inspector/network/network-open-load-reopen-expected.txt: Added.
  • http/tests/inspector/network/network-open-load-reopen.html: Added.
  • inspector/debugger/open-close-open-expected.txt:
  • inspector/debugger/open-close-open.html:
  • platform/qt/Skipped:

2011-05-19 Sergey Vorobyev <sergeyvorobyev@google.com>

Reviewed by Yury Semikhatsky.

Web Inspector: Background network events collection - add GUI to Inspector.
https://bugs.webkit.org/show_bug.cgi?id=58652

Now in WebInspector Network panel avalaible new checkbox item in context menu:
"Background events collection". It allows to save all network events when inspector
frontend closed. Events that occur before collection enabling are not preserved after
frontend reopening. Property unique for each page. Disabled by default.

Tests: http/tests/inspector/network/network-clear-after-disabled.html

http/tests/inspector/network/network-close-load-open.html
http/tests/inspector/network/network-open-load-reopen.html

  • inspector/EventsCollector.cpp: (WebCore::EventsCollector::clear):
  • inspector/EventsCollector.h:
  • inspector/Inspector.json:
  • inspector/InspectorFrontendProxy.cpp: (WebCore::InspectorFrontendProxy::inspectorFrontendChannel):
  • inspector/InspectorFrontendProxy.h:
  • inspector/InspectorResourceAgent.cpp: (WebCore::InspectorResourceAgent::setFrontend): (WebCore::InspectorResourceAgent::clearFrontend): (WebCore::InspectorResourceAgent::isBackgroundEventsCollectionEnabled): (WebCore::InspectorResourceAgent::setBackgroundEventsCollectionEnabled): (WebCore::InspectorResourceAgent::initializeBackgroundCollection): (WebCore::InspectorResourceAgent::InspectorResourceAgent):
  • inspector/InspectorResourceAgent.h:
  • inspector/front-end/NetworkPanel.js: (WebInspector.NetworkPanel): (WebInspector.NetworkPanel.prototype._contextMenu): (WebInspector.NetworkPanel.prototype._toggleBackgroundEventsCollection):
9:11 AM Changeset in webkit [86958] by podivilov@chromium.org
  • 2 edits in trunk/Source/WebCore

2011-05-20 Pavel Podivilov <podivilov@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: breakpoints disappear from ui after navigation.
https://bugs.webkit.org/show_bug.cgi?id=61133

  • inspector/front-end/DebuggerPresentationModel.js: (WebInspector.DebuggerPresentationModel.prototype._debuggerWasEnabled): (WebInspector.DebuggerPresentationModel.prototype._saveBreakpoints):
8:55 AM Changeset in webkit [86957] by xan@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

2011-05-20 Xan Lopez <xlopez@igalia.com>

Reviewed by Oliver Hunt.

JIT requires VM overcommit (particularly on x86-64), Linux does not by default support this without swap?
https://bugs.webkit.org/show_bug.cgi?id=42756

Use the MAP_NORESERVE flag for mmap on Linux to skip the kernel
check of the available memory. This should give us an
overcommit-like behavior in most systems, which is what we want.

  • wtf/OSAllocatorPosix.cpp: (WTF::OSAllocator::reserveAndCommit): pass MAP_NORSERVE to mmap.
8:50 AM Changeset in webkit [86956] by jer.noble@apple.com
  • 10 edits in trunk/Source

2011-05-20 Jer Noble <jer.noble@apple.com>

Reviewed by Maciej Stachowiak.

Win: non-full-screen content is briefly seen when entering full-screen mode (and vice versa)
https://bugs.webkit.org/show_bug.cgi?id=61108

Instead of repainting the full- and non-full-screen windows in WebCore, delegate that
responsibility to the FullScreenControllerClient. Because the repaint operation may
be asynchronous, add a new method for clients to use to indicate repainting has completed.

  • platform/graphics/win/FullScreenController.cpp: (FullScreenController::Private::Private): Added new ivars. (FullScreenController::enterFullScreen): Split into two functions (pre-and post repaint) (FullScreenController::enterFullScreenRepaintCompleted): Ditto. (FullScreenController::exitFullScreen): Ditto. (FullScreenController::exitFullScreenRepaintCompleted): Ditto. (FullScreenController::repaintCompleted): Call the appropriated repaint completed function.
  • platform/graphics/win/FullScreenController.h:
  • platform/graphics/win/FullScreenControllerClient.h:

2011-05-20 Jer Noble <jer.noble@apple.com>

Reviewed by Maciej Stachowiak.

Win: non-full-screen content is briefly seen when entering full-screen mode (and vice versa)
https://bugs.webkit.org/show_bug.cgi?id=61108

  • WebView.cpp: (WebView::fullScreenClientForceRepaint): Repaint the view and immediately notify the

full screen controller.

  • WebView.h:

2011-05-20 Jer Noble <jer.noble@apple.com>

Reviewed by Maciej Stachowiak.

Win: non-full-screen content is briefly seen when entering full-screen mode (and vice versa)
https://bugs.webkit.org/show_bug.cgi?id=61108

When the fullScreenController asks us to repaint, make an async repaint request, and when the
callback is fired, notify the fullScreenController that repaint has completed.

  • UIProcess/win/WebView.cpp: (WebKit::fullScreenClientForceRepaintCompleted): Added. (WebKit::WebView::fullScreenClientForceRepaint): Added.
  • UIProcess/win/WebView.h:
8:18 AM Changeset in webkit [86955] by yurys@chromium.org
  • 3 edits in trunk/Source/WebCore

2011-05-20 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: use RefPtr instead of OwnPtr to store InspectorBackendDispatcher
https://bugs.webkit.org/show_bug.cgi?id=61188

  • inspector/WorkerInspectorController.cpp: (WebCore::WorkerInspectorController::connectFrontend): (WebCore::WorkerInspectorController::disconnectFrontend):
  • inspector/WorkerInspectorController.h:
8:04 AM Changeset in webkit [86954] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Skip failing tests.

  • platform/qt-arm/Skipped:
7:29 AM Changeset in webkit [86953] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit/qt

2011-05-20 Csaba Osztrogonác <Csaba Osztrogonác>

Reviewed by Benjamin Poulain.

[Qt] tst_QWebElement::style() fails because QWebElement::InlineStyle doesn't work as expected
https://bugs.webkit.org/show_bug.cgi?id=60372

  • tests/qwebelement/tst_qwebelement.cpp: Mark failing test case as expected fail. (tst_QWebElement::style):
7:27 AM Changeset in webkit [86952] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit/qt

2011-05-20 Csaba Osztrogonác <Csaba Osztrogonác>

Reviewed by Benjamin Poulain.

[Qt] Fix tst_QDeclarativeWebView::basicProperties() and historyNav() autotests
https://bugs.webkit.org/show_bug.cgi?id=61042

  • tests/qdeclarativewebview/tst_qdeclarativewebview.cpp: Mark failing test cases as expected fails. (tst_QDeclarativeWebView::basicProperties): (tst_QDeclarativeWebView::historyNav):
7:19 AM Changeset in webkit [86951] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit/qt

[Qt] Fix tst_QWebPage::testOptionalJSObjects() autotest
https://bugs.webkit.org/show_bug.cgi?id=61045

Reviewed by Benjamin Poulain.

  • tests/qwebpage/tst_qwebpage.cpp:

(tst_QWebPage::testOptionalJSObjects): Mark failing test cases as expected fails.

7:03 AM Changeset in webkit [86950] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

2011-05-20 Tonis Tiigi <tonistiigi@gmail.com>

Reviewed by Pavel Feldman.

Web Inspector: Network panel should only show pointer cursor over valid resources
https://bugs.webkit.org/show_bug.cgi?id=55240

Cursor style removed from filler area.

  • inspector/front-end/networkPanel.css: (.network-sidebar .data-grid tr:not(.filler) td.name-column):
6:57 AM Changeset in webkit [86949] by pvarga@webkit.org
  • 20 edits in trunk/Source

2011-05-20 Peter Varga <pvarga@webkit.org>

Reviewed by Simon Hausmann.

[Qt][V8] Use qtscript-staging's shipped version of V8 when building with --v8
https://bugs.webkit.org/show_bug.cgi?id=56649

Use the provided V8 and functionality of
http://qt.gitorious.org/+qt-developers/qt/qtscript-staging to build QtWebKit+V8.
Based on the original patch of Andras Becsi <abecsi@webkit.org>.

No new tests needed.

  • CodeGenerators.pri: Add generating of DebuggerScriptSource.h
  • WebCore.pri: Fix the options for V8 build.
  • WebCore.pro: Ditto.
  • bindings/v8/NPV8Object.cpp: (WebCore::npObjectTypeInfo): Add missing initializer.
  • bindings/v8/ScriptController.cpp: (WebCore::ScriptController::disableEval): Temporarily disable unsupported feature on Qt.
  • bindings/v8/ScriptControllerQt.cpp: (WebCore::ScriptController::qtScriptEngine): use the QtScriptEngine constructor of qtscript-staging.
  • bindings/v8/custom/V8HTMLAudioElementConstructor.cpp: Add missing initializer.
  • bindings/v8/custom/V8HTMLImageElementConstructor.cpp: Ditto.
  • bindings/v8/custom/V8HTMLOptionElementConstructor.cpp: Ditto.
  • loader/appcache/ApplicationCacheGroup.cpp: Add missing header.
  • loader/cache/CachedResourceRequest.cpp: Ditto.
  • page/PageSerializer.cpp: Ditto.
  • page/qt/FrameQt.cpp: Ditto.
  • storage/StorageEventDispatcher.cpp: Ditto.

2011-05-20 Peter Varga <pvarga@webkit.org>

Reviewed by Simon Hausmann.

[Qt][V8] Use qtscript-staging's shipped version of V8 when building with --v8
https://bugs.webkit.org/show_bug.cgi?id=56649

Use the provided V8 and functionality of
http://qt.gitorious.org/+qt-developers/qt/qtscript-staging to build QtWebKit+V8.
Based on the original patch of Andras Becsi <abecsi@webkit.org>.

  • Api/qwebframe.cpp: (QWebFrame::addToJavaScriptWindowObject): Fix QString deprecated warning.
  • QtWebKit.pro: Adding the V8 library should happen in the final build step.
  • WebCoreSupport/ChromeClientQt.cpp: Add missing head.
  • WebCoreSupport/DumpRenderTreeSupportQt.cpp: Ditto.
6:49 AM Changeset in webkit [86948] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

2011-05-20 Tonis Tiigi <tonistiigi@gmail.com>

Reviewed by Pavel Feldman.

Web Inspector: console.log(XMLDocument) should be case preserving
https://bugs.webkit.org/show_bug.cgi?id=60765

Changes the XML document checking from base documents MIME type
to xmlVersion parameter.

  • inspector/InspectorDOMAgent.cpp: (WebCore::InspectorDOMAgent::buildObjectForNode):
  • inspector/front-end/DOMAgent.js: (WebInspector.DOMNode):
  • inspector/front-end/ElementsTreeOutline.js: (WebInspector.ElementsTreeOutline.prototype.set rootDOMNode):
6:46 AM Changeset in webkit [86947] by mnaganov@chromium.org
  • 7 edits in trunk/Source/WebCore

2011-05-20 Mikhail Naganov <mnaganov@chromium.org>

Reviewed by Yury Semikhatsky.

Web Inspector: [Chromium] Use bottom-up CPU profile tree built in VM,
instead of building it on Inspector's side.
https://bugs.webkit.org/show_bug.cgi?id=61185

  • bindings/js/ScriptProfile.cpp: (WebCore::ScriptProfile::bottomUpHead): (WebCore::ScriptProfile::buildInspectorObjectForBottomUpHead):
  • bindings/js/ScriptProfile.h:
  • bindings/v8/ScriptProfile.cpp: (WebCore::ScriptProfile::bottomUpHead): (WebCore::ScriptProfile::buildInspectorObjectForBottomUpHead):
  • bindings/v8/ScriptProfile.h:
  • inspector/InspectorProfilerAgent.cpp: (WebCore::InspectorProfilerAgent::getProfile):
  • inspector/front-end/ProfileView.js: (WebInspector.CPUProfileView.prototype.get bottomUpProfileDataGridTree):
6:32 AM Changeset in webkit [86946] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit/qt

2011-05-20 Csaba Osztrogonác <Csaba Osztrogonác>

Reviewed by Benjamin Poulain.

[Qt]Fix tst_QWebFrame::setUrlToInvalid() autotest after r84762
https://bugs.webkit.org/show_bug.cgi?id=59345

  • tests/qwebframe/tst_qwebframe.cpp: (tst_QWebFrame::setUrlToInvalid): Mark failing test cases as expected fails.
6:24 AM Changeset in webkit [86945] by Adam Roben
  • 7 edits
    2 adds in trunk

Don't try to process DownloadProxy messages twice (and robustify code that runs if we do)

Fixes <http://webkit.org/b/61142> <rdar://problem/9471680> REGRESSION (r86812): Crash
(preceded by assertion) in fastMalloc when downloading a file

Reviewed by Darin Adler.

Source/WebKit2:

  • Platform/CoreIPC/ArgumentDecoder.cpp:

(CoreIPC::alignedBufferIsLargeEnoughToContain): Added. This helper function checks that the
given buffer is large enough to hold |size| bytes (and correctly handles the case where
we're already at the end or beyond the end of the buffer).

(CoreIPC::ArgumentDecoder::alignBufferPosition):
(CoreIPC::ArgumentDecoder::bufferIsLargeEnoughToContain):
Replaced old code that was vulnerable to underflow with the new helper function.

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didReceiveSyncMessage): Added back an early return that was
mistakenly removed in r86812 so that we don't mistakenly pass DownloadProxy messages on to
a WebPageProxy after we've already handled them.

Tools:

Test that the WebKit2 UI process doesn't crash when starting a download

  • TestWebKitAPI/Tests/WebKit2/18-characters.html: Added.
  • TestWebKitAPI/Tests/WebKit2/DownloadDecideDestinationCrash.cpp: Added.

(TestWebKitAPI::decidePolicyForNavigationAction): Start a download.
(TestWebKitAPI::decideDestinationWithSuggestedFilename): Record that the download was
started, cancel the download, and return a bogus string.

(TestWebKitAPI::setContextDownloadClient):
(TestWebKitAPI::setPagePolicyClient):
Simple helper functions.

(TestWebKitAPI::TEST): Load 18-characters.html, which should trigger a download thanks to
our policy client, and run until we know that the download was started. If we haven't
crashed, we win!

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/win/TestWebKitAPI.vcproj:
  • TestWebKitAPI/win/copy-resources.cmd:

Added new files.

5:52 AM Changeset in webkit [86944] by Adam Roben
  • 2 edits in trunk/Source/WebCore

Mac build fix after r86936

  • WebCore.xcodeproj/project.pbxproj: Added preprocessor.pm like the

other .pm files.

5:44 AM Changeset in webkit [86943] by vitalyr@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

2011-05-20 Vitaly Repeshko <vitalyr@chromium.org>

Unreviewed.

[chromium] Updating chromium DEPS.

  • DEPS:
5:43 AM Changeset in webkit [86942] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][Mac] Skip one more plugins test after r86938.

  • platform/qt-mac/Skipped:
5:26 AM Changeset in webkit [86941] by tkent@chromium.org
  • 2 edits in trunk/Source/WebCore

2011-05-20 Kent Tamura <tkent@chromium.org>

Try to fix Windows CE build.
Touch html.css to kick UA style sheet generation.

  • css/html.css:
5:18 AM Changeset in webkit [86940] by tkent@chromium.org
  • 2 edits in trunk/Source/WebCore

2011-05-20 Kent Tamura <tkent@chromium.org>

Try to fix Windows CE build.

  • CMakeLists.txt: Add --preprocessor flag.
4:45 AM Changeset in webkit [86939] by robert@webkit.org
  • 2 edits in trunk/LayoutTests

2011-05-20 Robert Hogan <robert@webkit.org>

Rubber-stamped by Csaba Osztrogonác.

[Qt-mac] Skip two plugins test

Unskipped in platform/qt/ so need to skip in qt-mac as the build
does not support plugins (?)

  • platform/qt-mac/Skipped: plugins/get-url-with-javascript-url.html

plugins/windowless_plugin_paint_test.html

4:35 AM Changeset in webkit [86938] by robert@webkit.org
  • 2 edits in trunk/LayoutTests

2011-05-20 Robert Hogan <robert@webkit.org>

Rubber-stamped by Csaba Osztrogonác.

[Qt] plugins/keyboard-events.html fails after r72717

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

keyboard-events.html now passes thanks to the buildbot
upgrades. It was blocked by a bug in Xvfb on xorg-server
1.4.2.

  • platform/qt/Skipped:
4:29 AM Changeset in webkit [86937] by Csaba Osztrogonác
  • 1 edit
    32 deletes in trunk/LayoutTests

[Qt] Unreviewed. Remove unnecessary Qt specific expected files.

  • platform/qt/editing/execCommand/5062376-expected.txt: Removed.
  • platform/qt/editing/execCommand/insert-list-with-id-expected.txt: Removed.
  • platform/qt/editing/inserting/insert-before-link-1-expected.txt: Removed.
  • platform/qt/editing/pasteboard/4840662-expected.txt: Removed.
  • platform/qt/editing/pasteboard/5245519-expected.txt: Removed.
  • platform/qt/editing/pasteboard/copy-in-password-field-expected.txt: Removed.
  • platform/qt/editing/pasteboard/page-zoom-expected.txt: Removed.
  • platform/qt/editing/undo/redo-style-expected.txt: Removed.
  • platform/qt/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
  • platform/qt/fast/dom/frame-loading-via-document-write-expected.txt: Removed.
  • platform/qt/fast/dom/wrapper-classes-expected.txt: Removed.
  • platform/qt/fast/dynamic/dirty-float-in-clean-line-expected.txt: Removed.
  • platform/qt/fast/dynamic/float-at-line-break-expected.txt: Removed.
  • platform/qt/fast/dynamic/unicode-bidi-expected.txt: Removed.
  • platform/qt/fast/encoding/preload-encoding-expected.txt: Removed.
  • platform/qt/fast/lists/alpha-list-wrap-expected.txt: Removed.
  • platform/qt/fast/lists/decimal-leading-zero-expected.txt: Removed.
  • platform/qt/fast/lists/li-values-expected.txt: Removed.
  • platform/qt/fast/lists/list-style-type-dynamic-change-expected.txt: Removed.
  • platform/qt/fast/repaint/svg-layout-root-style-attr-update-expected.txt: Removed.
  • platform/qt/fast/text/bidi-embedding-pop-and-push-same-2-expected.txt: Removed.
  • platform/qt/fast/text/justify-nbsp-expected.txt: Removed.
  • platform/qt/fast/text/setData-dirty-lines-expected.txt: Removed.
  • platform/qt/fast/text/splitText-dirty-lines-expected.txt: Removed.
  • platform/qt/http/tests/security/cross-frame-access-call-expected.txt: Removed.
  • platform/qt/http/tests/security/cross-frame-access-get-expected.txt: Removed.
  • platform/qt/plugins/document-open-expected.txt: Removed.
  • platform/qt/plugins/resize-from-plugin-expected.txt: Removed.
  • platform/qt/svg/custom/animation-currentColor-expected.txt: Removed.
  • platform/qt/svg/custom/radial-gradient-with-outstanding-focalPoint-expected.txt: Removed.
  • platform/qt/svg/custom/text-zoom-expected.txt: Removed.
  • platform/qt/svg/custom/transformedMaskFails-expected.txt: Removed.
3:47 AM Changeset in webkit [86936] by tkent@chromium.org
  • 11 edits
    1 add in trunk/Source/WebCore

2011-05-20 Kent Tamura <tkent@chromium.org>

Reviewed by Hajime Morita.

Apply feature flags to user-agent style sheets
https://bugs.webkit.org/show_bug.cgi?id=52612

A user-agent style sheet should not have style definitions for disabled
features because such definitions makes feature detection harder and
causes incorrect behavior (See Bug 52214).

We have handled such feature-dependent style definitions by providing
separated CSS files and selecting them in build files. Adding such style
definition was hard because we need to update each of build files. This
change simplifies the process to add such style definitions by applying
preprocessor to the CSS files.

Implementation:
make-css-file-arrays.pl invokes a preprocessor if it has --defines
option. Otherwise, it just remove lines beginning with #.
In this change, we pass --defines on Mac, Windows, Chromium, GTK, and
CMake platforms. Qt and Android have no behavior change.

  • CMakeLists.txt:
    • IDL handling depends on preprocessor.pm.
    • Pass --defines option to make-css-file-arrays.pl
    • Add WebCore/bindings/scripts to @INC for make-css-file-arrays.pl
  • CodeGenerators.pri: IDL handling depends on preprocessor.pm.
  • DerivedSources.make: ditto.
  • GNUmakefile.am: ditto.
  • WebCore.gyp/WebCore.gyp: ditto.
  • WebCore.gyp/scripts/action_useragentstylesheets.py: Change parameter order to support perl modules and options. Many code is taken from rule_bindings.py.
  • WebCore.vcproj/MigrateScripts: Handles preprocessor.pm.
  • bindings/scripts/IDLParser.pm: Move the preprocessor code to preprocessor.pm.
  • bindings/scripts/preprocessor.pm: Added. The code was moved from IDLParser.pm
  • css/html.css: Enclose some style definitions with #if-#endif.
  • css/make-css-file-arrays.pl:
    • Add --defines and --preprocessor options.
    • Invoke a preprocessor if --defines is specified.
3:16 AM Changeset in webkit [86935] by krit@webkit.org
  • 2 edits in trunk/Source/WebCore

2011-05-20 Dirk Schulze <krit@webkit.org>

Rubber-stamped by Nikolas Zimmermann.

Remove unnecessary class Path inlcude from PathTraversalState.

  • platform/graphics/PathTraversalState.h:
2:56 AM Changeset in webkit [86934] by sergio@webkit.org
  • 1 edit
    12 adds in trunk/LayoutTests

2011-05-20 Sergio Villar Senin <svillar@igalia.com>

Unreviewed, new GTK+ test results.

  • platform/gtk/fast/html/details-add-details-child-1-expected.png: Added.
  • platform/gtk/fast/html/details-add-details-child-1-expected.txt: Added.
  • platform/gtk/fast/html/details-nested-1-expected.png: Added.
  • platform/gtk/fast/html/details-nested-1-expected.txt: Added.
  • platform/gtk/fast/html/details-nested-2-expected.png: Added.
  • platform/gtk/fast/html/details-nested-2-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.png: Added.
  • platform/gtk/svg/W3C-SVG-1.1-SE/painting-marker-07-f-expected.txt: Added.
  • platform/gtk/svg/custom/painting-marker-07-f-inherit-expected.png: Added.
  • platform/gtk/svg/custom/painting-marker-07-f-inherit-expected.txt: Added.
  • platform/gtk/svg/custom/small-rect-scale-expected.png: Added.
  • platform/gtk/svg/custom/small-rect-scale-expected.txt: Added.
2:33 AM Changeset in webkit [86933] by sergio@webkit.org
  • 2 edits in trunk/LayoutTests

2011-05-20 Sergio Villar Senin <svillar@igalia.com>

Unreviewed, new GTK+ test expectations after r86920.

  • platform/gtk/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
2:32 AM Changeset in webkit [86932] by podivilov@chromium.org
  • 3 edits in trunk/Source/WebCore

2011-05-19 Pavel Podivilov <podivilov@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: ctrl+s should not switch source frame to read only mode.
https://bugs.webkit.org/show_bug.cgi?id=61125

  • inspector/front-end/SourceFrame.js: (WebInspector.SourceFrame.prototype.commitEditing.didEditContent): (WebInspector.SourceFrame.prototype.commitEditing):
  • inspector/front-end/inspector.js: (WebInspector.documentKeyDown):
1:53 AM Changeset in webkit [86931] by loki@webkit.org
  • 3 edits in trunk/Source/WebCore

2011-05-20 Piroska András <Piroska.Andras@stud.u-szeged.hu>

Reviewed by Nikolas Zimmermann.

Apply the ParallelJobs support to FEConvolveMatrix
https://bugs.webkit.org/show_bug.cgi?id=61171

The FEConvolveMatrix filter of SVG can consume lots of resources if it is
applied to a large area. The computation can be distributed to multiple
cores if the architecture supports.
The average performance progression is 20-30% on dual-core machines.

Developed in cooperation with Gabor Loki.

  • platform/graphics/filters/FEConvolveMatrix.cpp: (WebCore::FEConvolveMatrix::fastSetInteriorPixels): (WebCore::FEConvolveMatrix::setInteriorPixels): (WebCore::FEConvolveMatrix::setInteriorPixelsWorker): (WebCore::FEConvolveMatrix::apply):
  • platform/graphics/filters/FEConvolveMatrix.h:
1:48 AM Changeset in webkit [86930] by tkent@chromium.org
  • 32 edits in trunk/Tools

2011-05-20 Kent Tamura <tkent@chromium.org>

Reviewed by Ryosuke Niwa.

Fix style errors in DumpRenderTree/chromium/.
https://bugs.webkit.org/show_bug.cgi?id=61172

  • DumpRenderTree/chromium/CppBoundClass.cpp: (CppBoundClass::getAsCppVariant): (CppBoundClass::bindToJavascript):
  • DumpRenderTree/chromium/CppBoundClass.h: (CppBoundClass::GetterCallback::~GetterCallback): (CppBoundClass::CppBoundClass): (CppBoundClass::Callback::~Callback): (CppBoundClass::MemberCallback::MemberCallback): (CppBoundClass::MemberCallback::~MemberCallback): (CppBoundClass::MemberGetterCallback::MemberGetterCallback): (CppBoundClass::MemberGetterCallback::~MemberGetterCallback):
  • DumpRenderTree/chromium/CppVariant.h:
  • DumpRenderTree/chromium/DRTDevToolsAgent.h: (DRTDevToolsAgent::~DRTDevToolsAgent):
  • DumpRenderTree/chromium/DRTDevToolsClient.cpp: (DRTDevToolsClient::sendFrontendLoaded):
  • DumpRenderTree/chromium/DRTDevToolsClient.h:
  • DumpRenderTree/chromium/DumpRenderTree.cpp: (main):
  • DumpRenderTree/chromium/EventSender.cpp: (SavedEvent::SavedEvent): (EventSender::EventSender): (EventSender::keyDown):
  • DumpRenderTree/chromium/EventSender.h:
  • DumpRenderTree/chromium/ImageDiff.cpp: (Image::Image):
  • DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (LayoutTestController::WorkQueue::reset): (WorkItemBackForward::WorkItemBackForward): (WorkItemLoadingScript::WorkItemLoadingScript): (WorkItemNonLoadingScript::WorkItemNonLoadingScript): (WorkItemLoad::WorkItemLoad): (WorkItemLoadHTMLString::WorkItemLoadHTMLString): (LayoutTestController::pathToLocalResource):
  • DumpRenderTree/chromium/LayoutTestController.h: (LayoutTestController::WorkItem::~WorkItem): (LayoutTestController::WorkQueue::WorkQueue):
  • DumpRenderTree/chromium/MockSpellCheck.cpp: (MockSpellCheck::MockSpellCheck): (MockSpellCheck::~MockSpellCheck):
  • DumpRenderTree/chromium/MockSpellCheck.h:
  • DumpRenderTree/chromium/NotificationPresenter.h: (NotificationPresenter::NotificationPresenter):
  • DumpRenderTree/chromium/Task.cpp: (WebTask::WebTask):
  • DumpRenderTree/chromium/Task.h: (TaskList::TaskList):
  • DumpRenderTree/chromium/TestEventPrinter.cpp: (DRTPrinter::DRTPrinter): (TestShellPrinter::TestShellPrinter):
  • DumpRenderTree/chromium/TestNavigationController.cpp: (TestNavigationEntry::TestNavigationEntry): (TestNavigationEntry::~TestNavigationEntry): (TestNavigationController::TestNavigationController): (TestNavigationController::reload): (TestNavigationController::loadEntry): (TestNavigationController::didNavigateToEntry):
  • DumpRenderTree/chromium/TestNavigationController.h: (TestShellExtraData::TestShellExtraData):
  • DumpRenderTree/chromium/TestShell.cpp: (dumpHistoryItem):
  • DumpRenderTree/chromium/TestShell.h: (TestParams::TestParams):
  • DumpRenderTree/chromium/TestShellWin.cpp: (TestShell::waitTestFinished):
  • DumpRenderTree/chromium/TestWebWorker.h: (TestWebWorker::startWorkerContext): (TestWebWorker::terminateWorkerContext): (TestWebWorker::postMessageToWorkerContext): (TestWebWorker::clientDestroyed): (TestWebWorker::postMessageToWorkerObject): (TestWebWorker::postExceptionToWorkerObject): (TestWebWorker::postConsoleMessageToWorkerObject): (TestWebWorker::confirmMessageFromWorkerObject): (TestWebWorker::reportPendingActivity): (TestWebWorker::workerContextClosed): (TestWebWorker::~TestWebWorker):
  • DumpRenderTree/chromium/TextInputController.cpp:
  • DumpRenderTree/chromium/WebThemeControlDRTWin.h:
  • DumpRenderTree/chromium/WebThemeEngineDRTMac.h:
  • DumpRenderTree/chromium/WebThemeEngineDRTWin.cpp: (WebThemeEngineDRTWin::paintButton): (WebThemeEngineDRTWin::paintMenuList): (WebThemeEngineDRTWin::paintTrackbar):
  • DumpRenderTree/chromium/WebThemeEngineDRTWin.h: (WebThemeEngineDRTWin::WebThemeEngineDRTWin):
  • DumpRenderTree/chromium/WebViewHost.cpp: (WebViewHost::navigate): (WebViewHost::updateSessionHistory): (WebViewHost::paintInvalidatedRegion):
  • DumpRenderTree/chromium/WebViewHost.h:
1:14 AM Changeset in webkit [86929] by commit-queue@webkit.org
  • 31 edits
    7 deletes in trunk

2011-05-20 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r86920.
http://trac.webkit.org/changeset/86920
https://bugs.webkit.org/show_bug.cgi?id=61173

It cause compile error on some buildbot in chromium. e.g.
http://build.chromium.org/p/chromium.memory/builders/Chromium%20Mac%20Builder%20%28valgrind%29/builds/12336/steps/compile/logs/stdio#error1
(Requested by ukai_ on #webkit).

  • css3/images/optimize-contrast-canvas-expected.png: Removed.
  • css3/images/optimize-contrast-canvas-expected.txt: Removed.
  • css3/images/optimize-contrast-canvas.html: Removed.
  • css3/images/optimize-contrast-image-expected.png: Removed.
  • css3/images/optimize-contrast-image-expected.txt: Removed.
  • css3/images/optimize-contrast-image.html: Removed.
  • fast/css/getComputedStyle/computed-style-expected.txt:
  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • svg/css/getComputedStyle-basic-expected.txt:

2011-05-20 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r86920.
http://trac.webkit.org/changeset/86920
https://bugs.webkit.org/show_bug.cgi?id=61173

It cause compile error on some buildbot in chromium. e.g.
http://build.chromium.org/p/chromium.memory/builders/Chromium%20Mac%20Builder%20%28valgrind%29/builds/12336/steps/compile/logs/stdio#error1
(Requested by ukai_ on #webkit).

  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue):
  • css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::operator EImageRendering):
  • css/CSSPropertyNames.in:
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • css/CSSValueKeywords.in:
  • css/SVGCSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
  • css/SVGCSSPropertyNames.in:
  • css/SVGCSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applySVGProperty):
  • css/SVGCSSValueKeywords.in:
  • html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::paint):
  • html/HTMLCanvasElement.h:
  • platform/graphics/ImageRenderingMode.h: Removed.
  • rendering/RenderBoxModelObject.cpp: (WebCore::ImageQualityController::shouldPaintAtLowQuality):
  • rendering/RenderHTMLCanvas.cpp: (WebCore::RenderHTMLCanvas::paintReplaced):
  • rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::diff):
  • rendering/style/RenderStyle.h:
  • rendering/style/RenderStyleConstants.h:
  • rendering/style/SVGRenderStyle.cpp: (WebCore::SVGRenderStyle::diff):
  • rendering/style/SVGRenderStyle.h: (WebCore::SVGRenderStyle::initialImageRendering): (WebCore::SVGRenderStyle::setImageRendering): (WebCore::SVGRenderStyle::imageRendering): (WebCore::SVGRenderStyle::InheritedFlags::operator==): (WebCore::SVGRenderStyle::setBitDefaults):
  • rendering/style/SVGRenderStyleDefs.h:
  • rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator==):
  • rendering/style/StyleRareInheritedData.h:
  • rendering/svg/SVGRenderTreeAsText.cpp: (WebCore::writeStyle):
1:01 AM Changeset in webkit [86928] by krit@webkit.org
  • 4 edits
    2 adds in trunk

2011-05-20 Dirk Schulze <krit@webkit.org>

Reviewed by Eric Seidel.

SVG Large curve path segment OOM crash
https://bugs.webkit.org/show_bug.cgi?id=42079

Limit the depth of repeatedly splitting a segment on length calculation to 20. The limitation
is necessary for very big segments that would be splitter into millions of parts otherwise.
The limitation just cause a less accurate approximation.
At the moment the limit is fixed to 20. This is comparable with splitting the segment into
~1 million parts as a worst case. We might want to be more flexible later.

Test: svg/custom/path-getTotalLength-on-big-segment-crash.svg

  • platform/graphics/PathTraversalState.cpp: (WebCore::midPoint): (WebCore::curveLength): (WebCore::PathTraversalState::PathTraversalState): (WebCore::PathTraversalState::moveTo): (WebCore::PathTraversalState::quadraticBezierTo): (WebCore::PathTraversalState::cubicBezierTo):
  • platform/graphics/PathTraversalState.h:

2011-05-20 Dirk Schulze <krit@webkit.org>

Reviewed by Eric Seidel.

SVG Large curve path segment OOM crash
https://bugs.webkit.org/show_bug.cgi?id=42079

Added a test to verify, that the browser does not crash on calculating the total length on big segments.
It makes no sense to add the result of getTotalLength(), since they differ a lot bewteen platforms.
This is caused by the platform graphic libraries. See comment #9 on the bug.

  • svg/custom/path-getTotalLength-on-big-segment-crash-expected.txt: Added.
  • svg/custom/path-getTotalLength-on-big-segment-crash.svg: Added.
12:56 AM Changeset in webkit [86927] by leo.yang@torchmobile.com.cn
  • 3 edits in trunk/Source/WebCore

2011-05-20 Leo Yang <leo.yang@torchmobile.com.cn>

Reviewed by Nikolas Zimmermann.

SVGRootInlineBox triggers calculateBoundaries twice in layout
https://bugs.webkit.org/show_bug.cgi?id=60979

SVGRootInlineBox was calculating boundaries for children twice
in computePerCharacterLayoutInformation(). The first time of
calculation was in layoutChildBoxes() which is called by
computePerCharacterLayoutInformation(), and the second time of
calculation was in layoutRootBox() following layoutChildBoxes().

This patch calculates rectangle of children in layoutChildBoxes()
and then uses the rectange in layoutRootBox() to reduce a pass
of calculating child boundaries.

No functionality change, no new tests.

  • rendering/svg/SVGRootInlineBox.cpp: (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation): (WebCore::SVGRootInlineBox::layoutChildBoxes): (WebCore::SVGRootInlineBox::layoutRootBox):
  • rendering/svg/SVGRootInlineBox.h:

May 19, 2011:

11:37 PM Changeset in webkit [86926] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

2011-05-19 Naoki Takano <takano.naoki@gmail.com>

Reviewed by Kent Tamura.

Fix a problem that updating HTMLInputElement::value sets the cursor to a wrong position.
https://bugs.webkit.org/show_bug.cgi?id=61163

Manual test input-number-localization.html.
Because we can't assume any number formats in various WebKit ports.

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::setValue): The cursor must be the last position of visibleValue(), not m_value.
  • manual-tests/input-number-localization.html: Added manual test to check the cursor correctly moved to the last poisition of the input.
11:25 PM Changeset in webkit [86925] by ukai@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed.

Chromium expectations update.

  • platform/chromium/test_expectations.txt: add BUGWK61169
10:31 PM Changeset in webkit [86924] by jer.noble@apple.com
  • 5 edits in trunk/Source

2011-05-19 Jer Noble <jer.noble@apple.com>

Reviewed by Maciej Stachowiak.

WebKit2: Flashing when entering and exiting full screen mode
https://bugs.webkit.org/show_bug.cgi?id=56957

Guard against the parameter of setAnimating() matching the ivar value it's
setting, thus avoiding tearing down the renderer's layer backing.

  • rendering/RenderFullScreen.cpp: (RenderFullScreen::setAnimating):

2011-05-19 Jer Noble <jer.noble@apple.com>

Reviewed by Maciej Stachowiak.

WebKit2: Flashing when entering and exiting full screen mode
https://bugs.webkit.org/show_bug.cgi?id=56957

In the WKFullscreenWindowController, when exiting accelerated compositing mode,
force a repaint, and don't actually remove the animation layer until the repaint
completes. Also, move back to parenting the WebView in a layer-backed view, and
work around the SnowLeopard bug which causes a crash in those situations. We no
longer need to do a bunch of work in finishedEnterFullScreenAnimation, because
the animation layer is "hiding" all the drawing happening in the webView underneath.

In the WebFullScreenManagerMac, when asked to tear down the root layer, instead
remove all its children, and set its contents to a flattened image of the full
screen element and its children. This helps patch over the time where everything
is re-rendering and helps give the appearance of continuousness in the animation.

  • UIProcess/mac/WKFullScreenWindowController.mm: (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): (-[WKFullScreenWindowController beganExitFullScreenAnimation]): (-[WKFullScreenWindowController enterAcceleratedCompositingMode:WebKit::]): (-[WKFullScreenWindowController exitAcceleratedCompositingMode]): (-[WKFullScreenWindowController exitCompositedModeRepaintCompleted]): (exitCompositedModeRepaintCompleted): (-[WKFullScreenWindowController _page]): (-[WKFullScreenWindowController _manager]): (-[WKFullScreenWindow initWithContentRect:styleMask:backing:defer:]):
  • WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: (WebKit::WebFullScreenManagerMac::setRootFullScreenLayer):
10:27 PM Changeset in webkit [86923] by loki@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix ARM build after r86919

  • assembler/ARMAssembler.h:

(JSC::ARMAssembler::nop):

9:10 PM Changeset in webkit [86922] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

2011-05-19 Dmitry Lomov <dslomov@google.com>

Reviewed by Adam Roben.

Detect hangs in run-api-tests
https://bugs.webkit.org/show_bug.cgi?id=48043

  • Scripts/run-api-tests: Added test timeouts
7:39 PM Changeset in webkit [86921] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

2011-05-19 Julien Chaffraix <jchaffraix@codeaurora.org>

Reviewed by Adam Barth.

Remove Node::deprecatedParserAddChild
https://bugs.webkit.org/show_bug.cgi?id=60818

Refactoring only so no new tests.

This patch fails short of one instance of deprecatedParserAddChild which will
require a refactoring of <input> shadow DOM to be removed.

  • dom/XMLDocumentParser.cpp: (WebCore::XMLDocumentParser::pushCurrentNode): Updated to use a ContainerNode. (WebCore::XMLDocumentParser::clearCurrentNodeStack): We now need to clear up m_leafTextNode too.

(WebCore::XMLDocumentParser::enterText):
(WebCore::XMLDocumentParser::exitText):
Those methods were updated to use m_leafTextNode instead of m_currentNode.

  • dom/XMLDocumentParser.h: Changed the currentNode logic to use ContainerNode. Also fixed the style of the forward declarations.
  • dom/XMLDocumentParserLibxml2.cpp: (WebCore::XMLDocumentParser::startElementNs): (WebCore::XMLDocumentParser::endElementNs): (WebCore::XMLDocumentParser::characters): (WebCore::XMLDocumentParser::processingInstruction): (WebCore::XMLDocumentParser::cdataBlock): (WebCore::XMLDocumentParser::comment):
  • dom/XMLDocumentParserQt.cpp: (WebCore::XMLDocumentParser::parse): (WebCore::XMLDocumentParser::parseStartElement): (WebCore::XMLDocumentParser::parseEndElement): (WebCore::XMLDocumentParser::parseCharacters): (WebCore::XMLDocumentParser::parseProcessingInstruction): (WebCore::XMLDocumentParser::parseCdata): (WebCore::XMLDocumentParser::parseComment): Removed the calls to deprecatedParserAddChild, changed the code to use m_leafTextNode when it made sense and used ContainerNode instead of Node for m_currentNode.
7:01 PM Changeset in webkit [86920] by commit-queue@webkit.org
  • 31 edits
    8 adds in trunk

2011-05-19 Mike Lawther <mikelawther@chromium.org>

Reviewed by Simon Fraser.

implement image-rendering: optimize-contrast (with a vendor prefix) as defined in CSS3 image values
https://bugs.webkit.org/show_bug.cgi?id=56627

  • css3/images/optimize-contrast-canvas-expected.checksum: Added.
  • css3/images/optimize-contrast-canvas-expected.png: Added.
  • css3/images/optimize-contrast-canvas-expected.txt: Added.
  • css3/images/optimize-contrast-canvas.html: Added.
  • css3/images/optimize-contrast-image-expected.checksum: Added.
  • css3/images/optimize-contrast-image-expected.png: Added.
  • css3/images/optimize-contrast-image-expected.txt: Added.
  • css3/images/optimize-contrast-image.html: Added.

2011-05-19 Mike Lawther <mikelawther@chromium.org>

Reviewed by Simon Fraser.

implement image-rendering: optimize-contrast (with a vendor prefix) as defined in CSS3 image values
https://bugs.webkit.org/show_bug.cgi?id=56627

Tests: css3/images/optimize-contrast-canvas.html

css3/images/optimize-contrast-image.html

  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue):
  • css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::operator EImageRendering):
  • css/CSSPropertyNames.in:
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • css/CSSValueKeywords.in:
  • css/SVGCSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
  • css/SVGCSSPropertyNames.in:
  • css/SVGCSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applySVGProperty):
  • css/SVGCSSValueKeywords.in:
  • html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::paint):
  • html/HTMLCanvasElement.h:
  • platform/graphics/ImageRenderingMode.h: Added.
  • rendering/RenderBoxModelObject.cpp: (WebCore::ImageQualityController::shouldPaintAtLowQuality):
  • rendering/RenderHTMLCanvas.cpp: (WebCore::RenderHTMLCanvas::paintReplaced):
  • rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::diff):
  • rendering/style/RenderStyle.h: (WebCore::InheritedFlags::imageRendering): (WebCore::InheritedFlags::setImageRendering): (WebCore::InheritedFlags::initialImageRendering):
  • rendering/style/RenderStyleConstants.h:
  • rendering/style/SVGRenderStyle.cpp: (WebCore::SVGRenderStyle::diff):
  • rendering/style/SVGRenderStyle.h: (WebCore::SVGRenderStyle::InheritedFlags::operator==): (WebCore::SVGRenderStyle::setBitDefaults):
  • rendering/style/SVGRenderStyleDefs.h:
  • rendering/svg/SVGRenderTreeAsText.cpp: (WebCore::writeStyle):
6:33 PM Changeset in webkit [86919] by oliver@apple.com
  • 12 edits in trunk/Source/JavaScriptCore

2011-05-19 Oliver Hunt <oliver@apple.com>

Reviewed by Gavin Barraclough.

Randomise code starting location a little
https://bugs.webkit.org/show_bug.cgi?id=61161

Add a nop() function to the Assemblers so that we
can randomise code offsets slightly at no real cost.

  • assembler/ARMAssembler.h: (JSC::ARMAssembler::nop):
  • assembler/ARMv7Assembler.h: (JSC::ARMv7Assembler::nop):
  • assembler/MacroAssemblerARM.h: (JSC::MacroAssemblerARM::nop):
  • assembler/MacroAssemblerARMv7.h: (JSC::MacroAssemblerARMv7::nop):
  • assembler/MacroAssemblerMIPS.h: (JSC::MacroAssemblerMIPS::nop):
  • assembler/MacroAssemblerSH4.h: (JSC::MacroAssemblerSH4::nop):
  • assembler/MacroAssemblerX86Common.h: (JSC::MacroAssemblerX86Common::nop):
  • assembler/X86Assembler.h: (JSC::X86Assembler::nop):
  • jit/JIT.cpp: (JSC::JIT::JIT): (JSC::JIT::privateCompile):
  • jit/JIT.h:
  • runtime/WeakRandom.h: (JSC::WeakRandom::getUint32):
6:25 PM Changeset in webkit [86918] by Lucas Forschler
  • 6 edits
    2 copies in branches/safari-534.36-branch

Merge r86852.

6:18 PM Changeset in webkit [86917] by Lucas Forschler
  • 3 edits in branches/safari-534.36-branch/Source/WebKit2

Merge r86851.

6:16 PM Changeset in webkit [86916] by Lucas Forschler
  • 2 edits in branches/safari-534.36-branch/Source/JavaScriptCore

Merge r86850.

6:13 PM Changeset in webkit [86915] by Lucas Forschler
  • 5 edits in branches/safari-534.36-branch

Merge r86827.

6:13 PM Changeset in webkit [86914] by jschuh@chromium.org
  • 2 edits in trunk/LayoutTests

2011-05-19 Justin Schuh <jschuh@chromium.org>

Unreviewed.

Chromium expectations update.

  • platform/chromium/test_expectations.txt:
6:11 PM Changeset in webkit [86913] by Lucas Forschler
  • 2 edits in branches/safari-534.36-branch/Source/JavaScriptCore

Merge r86809.

6:04 PM Changeset in webkit [86912] by Lucas Forschler
  • 16 edits in branches/safari-534.36-branch/Source

Merge r86785.

6:03 PM Changeset in webkit [86911] by jer.noble@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed; added new test to gtk Skipped list.

  • platform/gtk/Skipped:
6:01 PM Changeset in webkit [86910] by jamesr@google.com
  • 2 edits in branches/chromium/742/Source/WebCore

2011-05-19 James Robinson <jamesr@chromium.org>

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

Add a speculative null check to see if it reduces the crashrate.

http://code.google.com/p/chromium-os/issues/detail?id=15377

  • rendering/RenderObject.cpp: (WebCore::RenderObject::repaintUsingContainer):
5:56 PM Changeset in webkit [86909] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-534.36-branch

Merge r86748.

5:20 PM Changeset in webkit [86908] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix windows build.

5:12 PM Changeset in webkit [86907] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

2011-05-19 Dmitry Lomov <dslomov@google.com>

Reviewed by Adam Roben.

run-api-tests should run one test per process
https://bugs.webkit.org/show_bug.cgi?id=61088

  • Scripts/run-api-tests: Resurrecting the previous revison of this file, with fixes to system call under Windows, return code, and parsing GTest output format.
4:46 PM Changeset in webkit [86906] by oliver@apple.com
  • 11 edits in trunk/Source/JavaScriptCore

2011-05-19 Oliver Hunt <oliver@apple.com>

Reviewed by Gavin Barraclough.

Add guard pages to each end of the memory region used by the fixedvm allocator
https://bugs.webkit.org/show_bug.cgi?id=61150

Add mechanism to notify the OSAllocator that pages at either end of an
allocation should be considered guard pages. Update PageReservation,
PageAllocation, etc to handle this.

  • JavaScriptCore.exp:
  • jit/ExecutableAllocatorFixedVMPool.cpp: (JSC::FixedVMPoolAllocator::FixedVMPoolAllocator):
  • wtf/OSAllocator.h:
  • wtf/OSAllocatorPosix.cpp: (WTF::OSAllocator::reserveUncommitted): (WTF::OSAllocator::reserveAndCommit):
  • wtf/PageAllocation.h: (WTF::PageAllocation::PageAllocation):
  • wtf/PageAllocationAligned.h: (WTF::PageAllocationAligned::PageAllocationAligned):
  • wtf/PageBlock.h: (WTF::PageBlock::PageBlock):
  • wtf/PageReservation.h: (WTF::PageReservation::reserve): (WTF::PageReservation::reserveWithGuardPages):

Add a new function to make a reservation that will add guard
pages to the ends of an allocation.

(WTF::PageReservation::PageReservation):

4:43 PM Changeset in webkit [86905] by kbr@google.com
  • 8 edits
    5 adds in trunk

2011-05-18 Kenneth Russell <kbr@google.com>

Reviewed by James Robinson.

[chromium] Disable blending in compositor for WebGL layers with alpha=false
https://bugs.webkit.org/show_bug.cgi?id=61091

  • compositing/webgl/webgl-no-alpha.html: Added.
  • platform/chromium-gpu/compositing/webgl/webgl-no-alpha-expected.png: Added.
  • platform/chromium-gpu/compositing/webgl/webgl-no-alpha-expected.txt: Added.
  • platform/mac-wk2/Skipped:
  • platform/mac/compositing/webgl/webgl-no-alpha-expected.png: Added.
  • platform/mac/compositing/webgl/webgl-no-alpha-expected.txt: Added.

2011-05-18 Kenneth Russell <kbr@google.com>

Reviewed by James Robinson.

[chromium] Disable blending in compositor for WebGL layers with alpha=false
https://bugs.webkit.org/show_bug.cgi?id=61091

Test: compositing/webgl/webgl-no-alpha.html

  • platform/graphics/chromium/CanvasLayerChromium.cpp: (WebCore::CanvasLayerChromium::CanvasLayerChromium): (WebCore::CanvasLayerChromium::pushPropertiesTo):
  • platform/graphics/chromium/CanvasLayerChromium.h:
  • platform/graphics/chromium/WebGLLayerChromium.cpp: (WebCore::WebGLLayerChromium::setContext):
  • platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp: (WebCore::CCCanvasLayerImpl::CCCanvasLayerImpl): (WebCore::CCCanvasLayerImpl::draw):
  • platform/graphics/chromium/cc/CCCanvasLayerImpl.h: (WebCore::CCCanvasLayerImpl::setHasAlpha):
4:17 PM Changeset in webkit [86904] by jer.noble@apple.com
  • 3 edits
    2 adds in trunk

2011-05-18 Jeremy Noble <jer.noble@apple.com>

Reviewed by Darin Adler.

Poster is not shown in Safari for video element with no playable source elements.
https://bugs.webkit.org/show_bug.cgi?id=61109

  • media/video-src-invalid-poster-expected.txt: Added.
  • media/video-src-invalid-poster.html: Added.

2011-05-18 Jeremy Noble <jer.noble@apple.com>

Reviewed by Darin Adler.

Poster is not shown in Safari for video element with no playable source elements.
https://bugs.webkit.org/show_bug.cgi?id=61109

Test: media/video-src-invalid-poster.html

In the case where no video sources are playable, update the display state and
renderer, allowing the poster image to display.

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::waitForSourceChange):
3:53 PM Changeset in webkit [86903] by Lucas Forschler
  • 3 edits in branches/safari-534.36-branch/Source/WebKit2

Merge r86820.

3:51 PM Changeset in webkit [86902] by Lucas Forschler
  • 3 edits in branches/safari-534.36-branch/Source/WebKit2

Merge r86814.

3:46 PM Changeset in webkit [86901] by Lucas Forschler
  • 13 edits in branches/safari-534.36-branch/Source

Merge r86806.

3:39 PM Changeset in webkit [86900] by Lucas Forschler
  • 12 edits in branches/safari-534.36-branch/Source

Merge r86793.

3:29 PM Changeset in webkit [86899] by atwilson@chromium.org
  • 6 edits in trunk

2011-05-19 Andrew Wilson <atwilson@chromium.org>

Reviewed by Darin Adler.

MessagePortArray cloning code needs to verify source before copying
https://bugs.webkit.org/show_bug.cgi?id=61130

  • fast/events/message-port-multi-expected.txt:
  • fast/events/resources/message-port-multi.js: Added test for "passing an array with an item at a really large index" to postMessage().

2011-05-19 Andrew Wilson <atwilson@chromium.org>

Reviewed by Darin Adler.

MessagePortArray cloning code needs to verify source before copying.
https://bugs.webkit.org/show_bug.cgi?id=61130

  • bindings/js/JSMessagePortCustom.cpp: (WebCore::fillMessagePortArray): Changed code to not pre-allocate the destination array.
  • bindings/v8/custom/V8MessagePortCustom.cpp: (WebCore::getMessagePortArray): Changed code to not pre-allocate the destination array.
3:13 PM Changeset in webkit [86898] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Address a review comment by Sam Weinig.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::didUpdateHistoryTitle):

3:13 PM Changeset in webkit [86897] by Lucas Forschler
  • 4 edits
    2 copies in branches/safari-534.36-branch/Source/WebKit2

Merge r86792.

3:10 PM Changeset in webkit [86896] by Lucas Forschler
  • 2 edits in branches/safari-534.36-branch/Source/WebKit2

Merge r86783.

3:10 PM Changeset in webkit [86895] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

2011-05-19 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Hang UI appears when WebProcess isn't running
https://bugs.webkit.org/show_bug.cgi?id=61147
<rdar://problem/9413683>

This fixes two bugs:

  1. The HistoryClient related message handlers in WebContext could get invoked for pages that have been closed, and thus didn't have any subframes. Since we have a MESSAGE_CHECK that checks that the frame exists, we'd mark the currently dispatched message as invalid, which would end up calling Connection::Client::didReceiveInvalidMessage. Fix this by checking that the page exists first.
  1. In the call to WebProcessProxy::didReceiveInvalidMessage we'd first invalidate the CoreIPC connection to make sure that we won't get any further messages from this connection. We'd then go ahead and terminate the web process, but because we've already invalidated the CoreIPC connection we would never get the Connection::Client::didClose callback that would call WebPageProxy::processDidCrash. Fix this by explicitly calling WebProcessProxy::didClose. Also, add logging when we receive an invalid message
  • UIProcess/WebContext.cpp: (WebKit::WebContext::didNavigateWithNavigationData): (WebKit::WebContext::didPerformClientRedirect): (WebKit::WebContext::didPerformServerRedirect): (WebKit::WebContext::didUpdateHistoryTitle):
  • UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::didReceiveInvalidMessage):
3:08 PM Changeset in webkit [86894] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-534.36-branch

Merge r86781.

3:06 PM Changeset in webkit [86893] by bweinstein@apple.com
  • 2 edits in trunk/Source/WebKit2

Crash when detaching Web Inspector when parent is in process of closing.
https://bugs.webkit.org/show_bug.cgi?id=61141
<rdar://problem/9470027>

Reviewed by Adam Roben.

We were trying to send a WM_SIZE to a window that was in the process of closing. Switch
to using PostMessage, so the window will finish closing, and then it won't need to
process the WM_SIZE message anymore.

  • UIProcess/win/WebInspectorProxyWin.cpp:

(WebKit::WebInspectorProxy::platformAttach): Call PostMessage instead of SendMessage.
(WebKit::WebInspectorProxy::platformDetach): Ditto.

3:06 PM Changeset in webkit [86892] by inferno@chromium.org
  • 1 edit
    2 copies in branches/chromium/742

Merge 86781
BUG=79075
Review URL: http://codereview.chromium.org/7048016

3:05 PM Changeset in webkit [86891] by Lucas Forschler
  • 5 edits
    4 copies in branches/safari-534.36-branch

Merge r86741.

3:00 PM Changeset in webkit [86890] by Lucas Forschler
  • 5 edits in trunk/Source

Versioning.

2:41 PM Changeset in webkit [86889] by Lucas Forschler
  • 5 edits
    4 deletes in branches/safari-534.36-branch

rollout last change... merged the wrong changeset.

2:18 PM Changeset in webkit [86888] by jschuh@chromium.org
  • 2 edits in trunk/LayoutTests

2011-05-19 Justin Schuh <jschuh@chromium.org>

Unreviewed.

Chromium expectations update.

  • platform/chromium/test_expectations.txt:
1:39 PM Changeset in webkit [86887] by robert@webkit.org
  • 4 edits in trunk

2011-05-15 Robert Hogan <robert@webkit.org>

Reviewed by Antonio Gomes.

[Qt][GTK] plugins/get-url-with-javascript-url.html fails
https://bugs.webkit.org/show_bug.cgi?id=60834
Fix unix test plugin for plugins/get-url-with-javascript-url.html

  • platform/qt/Skipped:

2011-05-15 Robert Hogan <robert@webkit.org>

Reviewed by Antonio Gomes.

[Qt][GTK] plugins/get-url-with-javascript-url.html fails
https://bugs.webkit.org/show_bug.cgi?id=60834
Fix unix test plugin for plugins/get-url-with-javascript-url.html

  • DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp: (webkit_test_plugin_new_stream): (webkit_test_plugin_write_ready): (webkit_test_plugin_write):
1:36 PM Changeset in webkit [86886] by jschuh@chromium.org
  • 2 edits in trunk/LayoutTests

2011-05-19 Justin Schuh <jschuh@chromium.org>

Unreviewed.

Chromium expectations update.


  • platform/chromium/test_expectations.txt:
1:26 PM Changeset in webkit [86885] by mrowe@apple.com
  • 4 moves in branches/old

Move aside some old branches.

1:19 PM Changeset in webkit [86884] by Lucas Forschler
  • 5 edits
    4 copies in branches/safari-534.36-branch

Merge r86741.

1:18 PM Changeset in webkit [86883] by oliver@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

2011-05-19 Oliver Hunt <oliver@apple.com>

Reviewed by Geoffrey Garen.

Make Executables release their JIT code as soon as they become dead
https://bugs.webkit.org/show_bug.cgi?id=61134

Add an ability to clear an Executable's jit code without requiring
it to be destroyed, and then call that from a finalizer.

  • heap/Weak.h: (JSC::Weak::Weak): (JSC::Weak::leak):
  • jit/JITCode.h: (JSC::JITCode::clear):
  • runtime/Executable.cpp: (JSC::ExecutableFinalizer::finalize): (JSC::ExecutableBase::executableFinalizer):
  • runtime/Executable.h: (JSC::ExecutableBase::ExecutableBase): (JSC::ExecutableBase::clearExecutableCode):
1:18 PM Changeset in webkit [86882] by jschuh@chromium.org
  • 1 edit
    5 adds in trunk/LayoutTests

2011-05-19 Justin Schuh <jschuh@chromium.org>

Unreviewed.

Chromium gradient expectations update.

  • platform/chromium-linux-x86/fast/gradients: Added.
  • platform/chromium-linux-x86/fast/gradients/css3-linear-right-angle-gradients-expected.png: Added.
  • platform/chromium-linux/fast/gradients/css3-linear-right-angle-gradients-expected.png: Added.
  • platform/chromium-mac-leopard/fast/gradients/css3-linear-right-angle-gradients-expected.png: Added.
  • platform/chromium-win-vista/fast/gradients/css3-linear-right-angle-gradients-expected.png: Added.
1:13 PM Changeset in webkit [86881] by Lucas Forschler
  • 4 edits in branches/safari-534.36-branch/Source/WebKit2

Merge r86738.

1:11 PM Changeset in webkit [86880] by Lucas Forschler
  • 9 edits in branches/safari-534.36-branch

Merge r86737.

1:10 PM Changeset in webkit [86879] by Dimitri Glazkov
  • 21 edits
    11 deletes in trunk

2011-05-19 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r86869, r86873, r86875, and r86877.
http://trac.webkit.org/changeset/86869
http://trac.webkit.org/changeset/86873
http://trac.webkit.org/changeset/86875
http://trac.webkit.org/changeset/86877
https://bugs.webkit.org/show_bug.cgi?id=61139

broke builds and debug DRT (Requested by rniwa on #webkit).

  • fast/dom/Window/script-tests/window-property-descriptors.js:
  • fast/dom/Window/window-properties.html:
  • fast/dom/script-tests/prototype-inheritance-2.js:
  • fast/dom/script-tests/prototype-inheritance.js:
  • fast/harness/internals-object-expected.txt: Removed.
  • fast/harness/internals-object.html: Removed.
  • platform/gtk/Skipped:
  • platform/mac-wk2/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:

2011-05-19 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r86869, r86873, r86875, and r86877.
http://trac.webkit.org/changeset/86869
http://trac.webkit.org/changeset/86873
http://trac.webkit.org/changeset/86875
http://trac.webkit.org/changeset/86877
https://bugs.webkit.org/show_bug.cgi?id=61139

broke builds and debug DRT (Requested by rniwa on #webkit).

  • DerivedSources.make:
  • WebCore.exp.in:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • testing/Internals.cpp: Removed.
  • testing/Internals.h: Removed.
  • testing/Internals.idl: Removed.
  • testing/js/WebCoreTestSupport.cpp: Removed.
  • testing/js/WebCoreTestSupport.h: Removed.
  • testing/v8/WebCoreTestSupport.cpp: Removed.
  • testing/v8/WebCoreTestSupport.h: Removed.

2011-05-19 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r86869, r86873, r86875, and r86877.
http://trac.webkit.org/changeset/86869
http://trac.webkit.org/changeset/86873
http://trac.webkit.org/changeset/86875
http://trac.webkit.org/changeset/86877
https://bugs.webkit.org/show_bug.cgi?id=61139

broke builds and debug DRT (Requested by rniwa on #webkit).

  • WebKit.gyp:
  • public/WebTestingSupport.h: Removed.
  • src/WebTestingSupport.cpp: Removed.

2011-05-19 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r86869, r86873, r86875, and r86877.
http://trac.webkit.org/changeset/86869
http://trac.webkit.org/changeset/86873
http://trac.webkit.org/changeset/86875
http://trac.webkit.org/changeset/86877
https://bugs.webkit.org/show_bug.cgi?id=61139

broke builds and debug DRT (Requested by rniwa on #webkit).

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/chromium/TestShell.cpp: (TestShell::bindJSObjectsToWindow):
  • DumpRenderTree/mac/FrameLoadDelegate.mm: (-[FrameLoadDelegate didClearWindowObjectInStandardWorldForFrame:]):
1:05 PM Changeset in webkit [86878] by Lucas Forschler
  • 2 edits in branches/safari-534.36-branch/Source/WebKit2

Merge r86734.

1:01 PM Changeset in webkit [86877] by Dimitri Glazkov
  • 2 edits in trunk/Source/WebCore

2011-05-19 Dimitri Glazkov <Dimitri Glazkov>

One more fix after r86869.

  • WebCore.exp.in: Made ZN7WebCore12JSDOMWrapperD2Ev only export for debug builds.
12:55 PM Changeset in webkit [86876] by Lucas Forschler
  • 47 edits in branches/safari-534.36-branch

Merge r86727.

12:45 PM Changeset in webkit [86875] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Add two more symbols needed by the window.internals library.

  • WebCore.exp.in:
12:44 PM Changeset in webkit [86874] by Lucas Forschler
  • 3 edits
    2 copies in branches/safari-534.36-branch

Merge r86725.

12:26 PM Changeset in webkit [86873] by Dimitri Glazkov
  • 2 edits in trunk/Source/WebCore

2011-05-19 Dimitri Glazkov <Dimitri Glazkov>

Fix Leopard build after r86869.

  • WebCore.exp.in: Moved now-always-used exported symbols out of the conditional guard.
12:24 PM Changeset in webkit [86872] by jschuh@chromium.org
  • 2 edits in trunk/LayoutTests

2011-05-19 Justin Schuh <jschuh@chromium.org>

Unreviewed.

Chromium expectations update.

  • platform/chromium/test_expectations.txt:
12:05 PM Changeset in webkit [86871] by Lucas Forschler
  • 5 edits in branches/safari-534.36-branch/Source

Versioning.

11:59 AM Changeset in webkit [86870] by robert@webkit.org
  • 6 edits in trunk

2011-05-19 Robert Hogan <robert@webkit.org>

Reviewed by Andreas Kling.

[Qt] Fix plugins/windowless_plugin_paint_test.html
https://bugs.webkit.org/show_bug.cgi?id=60992

  • platform/qt/Skipped:

2011-05-19 Robert Hogan <robert@webkit.org>

Reviewed by Andreas Kling.

[Qt] Fix plugins/windowless_plugin_paint_test.html
https://bugs.webkit.org/show_bug.cgi?id=60992

Call gdk_init_check before gdk_display_get_default().
If we don't do this, gdk_display_get_default() will hang
the next time it's called.

  • plugins/qt/PluginViewQt.cpp: (WebCore::getPluginDisplay):

2011-05-19 Robert Hogan <robert@webkit.org>

Reviewed by Andreas Kling.

[Qt] Fix plugins/windowless_plugin_paint_test.html

Call gdk_init_check before gdk_display_get_default().
If we don't do this, gdk_display_get_default() will hang
the next time it's called.

  • WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp: (WebKit::getPluginDisplay):
11:54 AM Changeset in webkit [86869] by Dimitri Glazkov
  • 20 edits
    14 adds in trunk

2011-05-18 Dimitri Glazkov <Dimitri Glazkov>

Reviewed by Darin Adler.

Add build logistics and plumbing for window.internals object.
https://bugs.webkit.org/show_bug.cgi?id=60313

  • fast/dom/Window/script-tests/window-property-descriptors.js: Added internals object to list of properties to skip.
  • fast/dom/Window/window-properties.html: Ditto.
  • fast/dom/script-tests/prototype-inheritance-2.js: Ditto.
  • fast/dom/script-tests/prototype-inheritance.js: Ditto.
  • fast/harness/internals-object-expected.txt: Added.
  • fast/harness/internals-object.html: Added.
  • platform/gtk/Skipped: Skipped the newly added test until platform supports window.internals.
  • platform/mac-wk2/Skipped: Ditto.
  • platform/qt/Skipped: Ditto.
  • platform/win/Skipped: Ditto.

2011-05-18 Dimitri Glazkov <Dimitri Glazkov>

Reviewed by Darin Adler.

Add build logistics and plumbing for window.internals object.
https://bugs.webkit.org/show_bug.cgi?id=60313

Test: fast/harness/internals-object.html

  • DerivedSources.make: Added support for generating from Internals.idl.
  • WebCore.gyp/WebCore.gyp: Added new webcore_test_support library.
  • WebCore.gypi: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Added WebCoreTestSupport library.
  • testing/Internals.cpp: Added.
  • testing/Internals.h: Added.
  • testing/Internals.idl: Added.
  • testing/js/WebCoreTestSupport.cpp: Added.
  • testing/js/WebCoreTestSupport.h: Added.
  • testing/v8/WebCoreTestSupport.cpp: Added.
  • testing/v8/WebCoreTestSupport.h: Added.

2011-05-18 Dimitri Glazkov <Dimitri Glazkov>

Reviewed by Darin Adler.

Add build logistics and plumbing for window.internals object.
https://bugs.webkit.org/show_bug.cgi?id=60313

  • WebKit.gyp: Added linking new webkit_test_support library.
  • public/WebTestingSupport.h: Added.
  • src/WebTestingSupport.cpp: Added.

2011-05-18 Dimitri Glazkov <Dimitri Glazkov>

Reviewed by Darin Adler.

Add build logistics and plumbing for window.internals object.
https://bugs.webkit.org/show_bug.cgi?id=60313

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Added linking new WebCoreTestSupport library.
  • DumpRenderTree/chromium/TestShell.cpp: (TestShell::bindJSObjectsToWindow): Added injection code.
  • DumpRenderTree/mac/FrameLoadDelegate.mm: (-[FrameLoadDelegate didClearWindowObjectInStandardWorldForFrame:]): Ditto.
11:51 AM Changeset in webkit [86868] by rniwa@webkit.org
  • 7 edits in branches/chromium/696/Source/WebCore

Merge 84265 - 2011-04-19 Ryosuke Niwa <rniwa@webkit.org>

Reviewed by Dimitri Glazkov.

REGRESSION(r74228-75294): removing nodes is 200+ times slower when selection is inside a shadow DOM
https://bugs.webkit.org/show_bug.cgi?id=57061

The bug was caused by Range::compareNode's incorrectly returning NODE_INSIDE when the selection is inside
a shadow DOM and the node is outside of the shadow DOM. This caused respondToNodeModification to call
RenderView::clearSelection every time a node is removed when selection is in a shadow DOM and resulted in
a significant performance regression.

Fixed Ranged::compareNode by making Range::compareBoundaryPoints throw a WRONG_DOCUMENT_ERR when there are
no common ancestors between containerA and containerB. This will force compareNode to also throw an exception
and prevents respondToNodeModification from clearing selection.

No new tests because this is a performance improvement and the fix in Range cannot be tested since shadow DOM
isn't exposed to JavaScript.

  • dom/Range.cpp: (WebCore::Range::setStart): Calls compareBoundaryPoints; since we ensures that the root container noes of start and end nodes are same, we should never get an exception from compareBoundaryPoints. (WebCore::Range::setEnd): Ditto. (WebCore::Range::isPointInRange): Calls compareBoundaryPoints; returns false when compareBoundaryPoints throws an exception. (WebCore::Range::comparePoint): Calls compareBoundaryPoints; exit early when an exception is thrown by compareBoundaryPoints. (WebCore::Range::compareBoundaryPoints): Throws an exception when two containers do not have a common ancestor. (WebCore::Range::boundaryPointsValid): Calls compareBoundaryPoints and checks that it didn't throw an exception.
  • dom/Range.h:
  • editing/SelectionController.cpp: (WebCore::SelectionController::respondToNodeModification):
  • editing/htmlediting.cpp: (WebCore::comparePositions): Calls compareBoundaryPoints.
  • editing/markup.cpp: (WebCore::createMarkup): Calls compareBoundaryPoints; since startNode and pastEnd are both in the same document and neither are in a shadow DOM, it should never throw an exception.
  • page/DOMSelection.cpp: (WebCore::DOMSelection::containsNode): Calls compareBoundaryPoints; node is fully selected only if no exception was thrown.

ISSUE=83197
TBR=rniwa@webkit.org

11:45 AM Changeset in webkit [86867] by inferno@chromium.org
  • 1 edit
    2 copies in branches/chromium/696

Merge 86748
BUG=82516

11:43 AM Changeset in webkit [86866] by inferno@chromium.org
  • 1 edit
    2 copies in branches/chromium/742

Merge 86748
BUG=82516
Review URL: http://codereview.chromium.org/7048008

11:43 AM Changeset in webkit [86865] by cdn@chromium.org
  • 4 edits
    2 copies in branches/chromium/742

Merge 86358 - 2011-05-12 Carol Szabo <carol@webkit.org>

Reviewed by David Hyatt.

Fix reparenting and destruction of counter nodes.
https://bugs.webkit.org/show_bug.cgi?id=57929

Fixed several issues related to not met assertions.
See below in the per file description.

Test: fast/css/counters/element-removal-crash.xhtml

  • dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren): Fixed the fact that Node::detach() used to be called while the DOM tree was in an inconsistent state.
  • rendering/RenderCounter.cpp: (WebCore::RenderCounter::rendererRemovedFromTree): Introduced this function to remove counters from descendents of renderers removed from the renderer tree not only from the removed renderers themselves.
  • rendering/RenderCounter.h:
  • rendering/RenderObjectChildList.cpp: (WebCore::RenderObjectChildList::removeChildNode): Changed to call RenderCounter::rendererRemovedFromTree instead of RenderCounter::destroyCounters.

BUG=78572
Review URL: http://codereview.chromium.org/7049017

11:40 AM Changeset in webkit [86864] by cdn@chromium.org
  • 4 edits
    2 copies in branches/chromium/696

Merge 86358 - 2011-05-12 Carol Szabo <carol@webkit.org>

Reviewed by David Hyatt.

Fix reparenting and destruction of counter nodes.
https://bugs.webkit.org/show_bug.cgi?id=57929

Fixed several issues related to not met assertions.
See below in the per file description.

Test: fast/css/counters/element-removal-crash.xhtml

  • dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren): Fixed the fact that Node::detach() used to be called while the DOM tree was in an inconsistent state.
  • rendering/RenderCounter.cpp: (WebCore::RenderCounter::rendererRemovedFromTree): Introduced this function to remove counters from descendents of renderers removed from the renderer tree not only from the removed renderers themselves.
  • rendering/RenderCounter.h:
  • rendering/RenderObjectChildList.cpp: (WebCore::RenderObjectChildList::removeChildNode): Changed to call RenderCounter::rendererRemovedFromTree instead of RenderCounter::destroyCounters.

BUG=78572

11:40 AM Changeset in webkit [86863] by Dimitri Glazkov
  • 2 edits in trunk/Source/WebCore

2011-05-19 Dimitri Glazkov <Dimitri Glazkov>

Accept XCode's decisions to keep modifying WebCore.xcodeproj.

  • WebCore.xcodeproj/project.pbxproj: Opened in XCode then closed.
11:39 AM Changeset in webkit [86862] by inferno@chromium.org
  • 1 edit
    2 copies in branches/chromium/742

Merge 86448
BUG=82546
Review URL: http://codereview.chromium.org/7050016

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

2011-05-19 Andrew Wason <rectalogic@rectalogic.com>

Reviewed by Darin Adler.

Fix GraphicsContext3DQt.cpp compile error
https://bugs.webkit.org/show_bug.cgi?id=61128

  • platform/graphics/qt/GraphicsContext3DQt.cpp: (WebCore::GraphicsContext3D::GraphicsContext3D): clear() m_internal OwnPtr.
11:38 AM Changeset in webkit [86860] by inferno@chromium.org
  • 1 edit
    2 copies in branches/chromium/696

Merge 86448
BUG=82546

11:35 AM Changeset in webkit [86859] by inferno@chromium.org
  • 1 edit
    2 copies in branches/chromium/742

Merge 86500
BUG=82633
Review URL: http://codereview.chromium.org/7033030

11:33 AM Changeset in webkit [86858] by inferno@chromium.org
  • 1 edit
    2 copies in branches/chromium/696

Merge 86500
BUG=82633

11:31 AM Changeset in webkit [86857] by cdn@chromium.org
  • 2 edits
    2 copies in branches/chromium/742

Merge 85977 - 2011-05-06 Justin Schuh <jschuh@chromium.org>

Reviewed by Adam Barth.

[Chromium] Whitelist input events interpreted as user gestures
https://bugs.webkit.org/show_bug.cgi?id=60213

  • public/WebInputEvent.h: (WebKit::WebInputEvent::isUserGestureEventType):
  • src/WebViewImpl.cpp: (WebKit::WebViewImpl::handleInputEvent):

BUG=72189
Review URL: http://codereview.chromium.org/7051008

11:27 AM Changeset in webkit [86856] by cdn@chromium.org
  • 2 edits
    2 copies in branches/chromium/696

Merge 85977 - 2011-05-06 Justin Schuh <jschuh@chromium.org>

Reviewed by Adam Barth.

[Chromium] Whitelist input events interpreted as user gestures
https://bugs.webkit.org/show_bug.cgi?id=60213

  • public/WebInputEvent.h: (WebKit::WebInputEvent::isUserGestureEventType):
  • src/WebViewImpl.cpp: (WebKit::WebViewImpl::handleInputEvent):

BUG=72189

11:14 AM Changeset in webkit [86855] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

2011-05-19 Tonis Tiigi <tonistiigi@gmail.com>

Reviewed by Pavel Feldman.

Web Inspector: Resizing columns in the network panel is weird
https://bugs.webkit.org/show_bug.cgi?id=55238

Makes network panel column resizing more usable by adding "first only" and "last only"
resizing methods to WebInspector.DataGrid. Current behavior is named "nearest" and
remains default. Network panels datagrid is set to use method "last".

  • inspector/front-end/DataGrid.js: (WebInspector.DataGrid.prototype.get resizeMethod): (WebInspector.DataGrid.prototype.set resizeMethod): (WebInspector.DataGrid.prototype._resizerDragging):
  • inspector/front-end/NetworkPanel.js: (WebInspector.NetworkPanel.prototype._createTable):
10:46 AM Changeset in webkit [86854] by rniwa@webkit.org
  • 10 edits
    2 deletes in trunk/Source/WebCore

2011-05-19 Ryosuke Niwa <rniwa@webkit.org>

Reviewed by Darin Adler.

JoinTextNodesCommand is never used
https://bugs.webkit.org/show_bug.cgi?id=61089

Deleted JoinTextNodesCommand because it's never used.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • editing/CompositeEditCommand.cpp:
  • editing/CompositeEditCommand.h:
  • editing/EditingAllInOne.cpp:
  • editing/JoinTextNodesCommand.cpp: Removed.
  • editing/JoinTextNodesCommand.h: Removed.
10:27 AM Changeset in webkit [86853] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

2011-05-19 Ryosuke Niwa <rniwa@webkit.org>

Make Mac Leopard bot happy after r81176.

  • platform/mac-leopard/svg/W3C-SVG-1.1-SE/types-dom-05-b-expected.txt:
10:22 AM Changeset in webkit [86852] by rniwa@webkit.org
  • 6 edits
    2 adds in trunk

2011-05-19 Ryosuke Niwa <rniwa@webkit.org>

Reviewed by Darin Adler.

REGRESSION (r83322): Many crashes in Mail.app in WebCore::Node::nodeIndex
https://bugs.webkit.org/show_bug.cgi?id=61012

Added a test to ensure WebKit does not crash when inserting a content immediately after
a styled element inside a Mail blockquote. Regrettably the expected result is incorrect,
but it matches the behavior of WebKit before r83322.

  • editing/pasteboard/5065605-expected.txt: Reintroduced redundant style spans.
  • editing/pasteboard/paste-text-011-expected.txt: Ditto.
  • platform/chromium-win/editing/pasteboard/paste-text-011-expected.txt: Ditto.
  • editing/pasteboard/paste-after-inline-style-element-expected.txt: Added.
  • editing/pasteboard/paste-after-inline-style-element.html: Added.

2011-05-19 Ryosuke Niwa <rniwa@webkit.org>

Reviewed by Darin Adler.

REGRESSION (r83322): Many crashes in Mail.app in WebCore::Node::nodeIndex
https://bugs.webkit.org/show_bug.cgi?id=61012

The crash was caused by ReplaceSelectionCommand's inserting content into a middle of the paragraph
being moved when the insertion position's container node is the node to split to. Fixed the crash
by not changing the insertion position in such a case.

Unfortunately, this fix caused markup to bloat in some tests but we'll take this regression since
it's much better than crashing.

Test: editing/pasteboard/paste-after-inline-style-element.html

  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply):
10:17 AM Changeset in webkit [86851] by cmarrin@apple.com
  • 3 edits in trunk/Source/WebKit2

2011-05-18 Chris Marrin <cmarrin@apple.com>

Reviewed by Anders Carlsson.

Plug-ins at YouTube, cnn.com, nytimes vanish when their top/left is scrolled out of view when zoomed
https://bugs.webkit.org/show_bug.cgi?id=61101

Scale both bounding boxes sent to m_plugin->geometryDidChange(), not just the frameRect. This fools
the plugin into thinking it is drawing into an unscaled box with an unscaled view even when scaled.

  • WebProcess/Plugins/PluginView.cpp: (WebKit::PluginView::frame):Made this const so it can be used in clipRectInWindowCoordinates() (WebKit::PluginView::viewGeometryDidChange):Used IntRect::scale() rather than scaling by hand (WebKit::PluginView::clipRectInWindowCoordinates):Added scale of clipRect.
  • WebProcess/Plugins/PluginView.h:
10:15 AM Changeset in webkit [86850] by Adam Roben
  • 2 edits in trunk/Source/JavaScriptCore

Remove a redundant and broken data export

Data can't be exported from JavaScriptCore.dll by listing it in the .def file. The
JS_EXPORTDATA macro must be used instead. (In this case it was already being used, leading
to a linker warning about multiple definitions.)

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def: Removed JSGlobalData::s_info.
10:15 AM Changeset in webkit [86849] by Lucas Forschler
  • 1 copy in branches/safari-534.36-branch

New Branch.

9:51 AM Changeset in webkit [86848] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

2011-05-19 Carlos Garcia Campos <cgarcia@igalia.com>

Reviewed by Anders Carlsson.

Fix build with ENABLE_PLUGIN_PROCESS=1 for non-mac platforms after r86578
https://bugs.webkit.org/show_bug.cgi?id=61113

  • PluginProcess/PluginControllerProxy.cpp: (WebKit::PluginControllerProxy::tryToShortCircuitInvoke): (WebKit::PluginControllerProxy::tryToShortCircuitEvaluate):
9:33 AM Changeset in webkit [86847] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Try to fix SUPPORT_AUTOCORRECTION_PANEL build.

  • editing/SpellingCorrectionController.cpp:

(WebCore::SpellingCorrectionController::recordSpellcheckerResponseForModifiedCorrection):
(WebCore::SpellingCorrectionController::processMarkersOnTextToBeReplacedByResult):

9:28 AM Changeset in webkit [86846] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Skip failing test after r86841.

  • platform/qt-arm/Skipped:
9:22 AM Changeset in webkit [86845] by Darin Adler
  • 2 edits in trunk/Source/WebCore

Try to fix SUPPORT_AUTOCORRECTION_PANEL build.

  • editing/SpellingCorrectionController.cpp:

(WebCore::markersHaveIdenticalDescription): Call description() function.

8:12 AM Changeset in webkit [86844] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Skip failing tests after r86834.

  • platform/qt-arm/Skipped:
6:08 AM Changeset in webkit [86843] by Philippe Normand
  • 2 edits in trunk/LayoutTests

2011-05-19 Philippe Normand <pnormand@igalia.com>

Unreviewed, skip 2 failing tests on GTK.

  • platform/gtk/Skipped: Skip http/tests/appcache/interrupted-update.html and http/tests/navigation/post-307-response.html
5:44 AM Changeset in webkit [86842] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

2011-05-19 Andrey Adaikin <aandrey@google.com>

Reviewed by Pavel Feldman.

Web Inspector: switch to Scripts panel is too slow
https://bugs.webkit.org/show_bug.cgi?id=61030

  • It is very expensive to listen to the DOM mutation events, thus we remove the listeners whenever we do any internal DOM manipulations (such as expand/collapse line rows) and set the listeners back when we are finished.
  • Also, when we switch to the Scripts panel that have a non-zero scrollTop offset, we would do the rendering work twice.
  • inspector/front-end/SourceFrame.js: (WebInspector.SourceFrame.prototype.show):
  • inspector/front-end/TextViewer.js: (WebInspector.TextEditorMainPanel): (WebInspector.TextEditorMainPanel.prototype.beginDomUpdates): (WebInspector.TextEditorMainPanel.prototype.endDomUpdates): (WebInspector.TextEditorMainPanel.prototype._enableDOMNodeRemovedListener): (WebInspector.TextEditorMainChunk): (WebInspector.TextEditorMainChunk.prototype.set expanded): (WebInspector.TextEditorMainChunk.prototype._createRow):
5:39 AM Changeset in webkit [86841] by Csaba Osztrogonác
  • 9 edits in trunk

[Qt] Implement eventSender.scalePageBy
https://bugs.webkit.org/show_bug.cgi?id=60015

Patch by Zsolt Fehér <h490267@stud.u-szeged.hu> on 2011-05-19
Reviewed by Csaba Osztrogonác.

Source/WebKit/qt:

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::scalePageBy):

  • WebCoreSupport/DumpRenderTreeSupportQt.h:

Tools:

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(WebCore::DumpRenderTree::resetToConsistentStateBeforeTesting):

  • DumpRenderTree/qt/EventSenderQt.cpp:

(EventSender::scalePageBy):

  • DumpRenderTree/qt/EventSenderQt.h:

LayoutTests:

  • platform/qt/Skipped: Unskip fast/transforms/selection-bounds-in-transformed-view.html.
5:35 AM Changeset in webkit [86840] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Skip failing tests after r86834.

  • platform/qt-mac/Skipped:
  • platform/qt-wk2/Skipped:
5:13 AM Changeset in webkit [86839] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

2011-05-19 Pavel Feldman <pfeldman@google.com>

Not reviewed: inspector protocol tests fixed.

  • inspector/InjectedScriptSource.js:
5:03 AM Changeset in webkit [86838] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

2011-05-19 David Grogan <dgrogan@chromium.org>

Reviewed by David Levin.

Make EventQueue post a Task to the task queue for each asynchronous event
https://bugs.webkit.org/show_bug.cgi?id=60790

Currently EventQueue queues up events to be fired asynchronously and
fires each of them when a single DOMTimer goes off. In the words of
dimich, "Having 2 queues will sooner or later cause problems with
ordering of tasks, termination, suspension and other things that all
require some control on how queues operate."

No new tests; this is just a refactoring to avoid potential future
problems.

  • dom/EventQueue.cpp: (WebCore::EventQueue::EventQueue): (WebCore::EventQueue::EventDispatcherTask::create): (WebCore::EventQueue::EventDispatcherTask::dispatchEvent): (WebCore::EventQueue::EventDispatcherTask::performTask): (WebCore::EventQueue::EventDispatcherTask::cancel): (WebCore::EventQueue::EventDispatcherTask::EventDispatcherTask): (WebCore::EventQueue::removeEvent): (WebCore::EventQueue::enqueueEvent): (WebCore::EventQueue::enqueueOrDispatchScrollEvent): (WebCore::EventQueue::cancelEvent): (WebCore::EventQueue::cancelQueuedEvents):
  • dom/EventQueue.h:
4:47 AM Changeset in webkit [86837] by yurys@chromium.org
  • 13 edits
    2 adds in trunk

2011-05-18 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Pavel Feldman.

InjectedScriptSource.js - "Don't be eval()."
https://bugs.webkit.org/show_bug.cgi?id=60800

  • inspector/console/console-eval-blocked-expected.txt: Added.
  • inspector/console/console-eval-blocked.html: Added.

2011-05-18 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Pavel Feldman.

InjectedScriptSource.js - "Don't be eval()."
https://bugs.webkit.org/show_bug.cgi?id=60800

Thanks to Adam Barth for providing JSC implementation!

InjectedScriptHost.evaluate is used to perform script evaluations for
inspector needs. This method is not affected by CSP and should fix inspector
on pages with CSP restrictions.

Test: inspector/console/console-eval-blocked.html

  • bindings/js/JSInjectedScriptHostCustom.cpp: (WebCore::JSInjectedScriptHost::evaluate):
  • bindings/v8/custom/V8InjectedScriptHostCustom.cpp: (WebCore::V8InjectedScriptHost::evaluateCallback): (WebCore::V8InjectedScriptHost::inspectedNodeCallback):
  • inspector/InjectedScriptHost.idl:
  • inspector/InjectedScriptSource.js: (.):
4:10 AM Changeset in webkit [86836] by pfeldman@chromium.org
  • 5 edits in trunk

2011-05-19 Pavel Feldman <pfeldman@google.com>

Reviewed by Yury Semikhatsky.

Web Inspector: expose object class name as a part of RemoteObject mirror.
https://bugs.webkit.org/show_bug.cgi?id=61067

  • inspector/InjectedScriptSource.js:
  • inspector/Inspector.json:
4:09 AM Changeset in webkit [86835] by pfeldman@chromium.org
  • 5 edits in trunk/Source/WebCore

2011-05-19 Pavel Feldman <pfeldman@google.com>

Reviewed by Yury Semikhatsky.

Web Inspector: make "this" a part of callFrame, not scope in the protocol.
https://bugs.webkit.org/show_bug.cgi?id=61057

  • inspector/InjectedScriptSource.js:
  • inspector/Inspector.json:
  • inspector/front-end/ScopeChainSidebarPane.js: (WebInspector.ScopeChainSidebarPane.prototype.update):
4:04 AM Changeset in webkit [86834] by commit-queue@webkit.org
  • 32 edits
    35 adds in trunk/LayoutTests

2011-05-19 Chang Shu <cshu@webkit.org>

Reviewed by Csaba Osztrogonác.

[Qt] Rebaseline editing/style tests that are working
https://bugs.webkit.org/show_bug.cgi?id=61075

Also based on digging of Zsolt Fehér.

  • platform/qt/Skipped:
  • platform/qt/editing/style/5046875-1-expected.png: Added.
  • platform/qt/editing/style/5046875-1-expected.txt:
  • platform/qt/editing/style/5046875-2-expected.png: Added.
  • platform/qt/editing/style/5046875-2-expected.txt:
  • platform/qt/editing/style/5065910-expected.png: Added.
  • platform/qt/editing/style/5065910-expected.txt:
  • platform/qt/editing/style/5084241-expected.png: Added.
  • platform/qt/editing/style/5084241-expected.txt:
  • platform/qt/editing/style/5279521-expected.png: Added.
  • platform/qt/editing/style/5279521-expected.txt:
  • platform/qt/editing/style/block-style-004-expected.png: Added.
  • platform/qt/editing/style/block-style-005-expected.png: Added.
  • platform/qt/editing/style/block-style-006-expected.png: Added.
  • platform/qt/editing/style/create-block-for-style-001-expected.png: Added.
  • platform/qt/editing/style/create-block-for-style-001-expected.txt:
  • platform/qt/editing/style/create-block-for-style-002-expected.png: Added.
  • platform/qt/editing/style/create-block-for-style-002-expected.txt:
  • platform/qt/editing/style/create-block-for-style-003-expected.png: Added.
  • platform/qt/editing/style/create-block-for-style-003-expected.txt:
  • platform/qt/editing/style/create-block-for-style-004-expected.png: Added.
  • platform/qt/editing/style/create-block-for-style-004-expected.txt:
  • platform/qt/editing/style/create-block-for-style-005-expected.png: Added.
  • platform/qt/editing/style/create-block-for-style-005-expected.txt:
  • platform/qt/editing/style/create-block-for-style-006-expected.png: Added.
  • platform/qt/editing/style/create-block-for-style-006-expected.txt:
  • platform/qt/editing/style/create-block-for-style-007-expected.png: Added.
  • platform/qt/editing/style/create-block-for-style-007-expected.txt:
  • platform/qt/editing/style/create-block-for-style-008-expected.png: Added.
  • platform/qt/editing/style/create-block-for-style-008-expected.txt:
  • platform/qt/editing/style/create-block-for-style-009-expected.png: Added.
  • platform/qt/editing/style/create-block-for-style-009-expected.txt:
  • platform/qt/editing/style/create-block-for-style-010-expected.png: Added.
  • platform/qt/editing/style/create-block-for-style-010-expected.txt:
  • platform/qt/editing/style/create-block-for-style-011-expected.png: Added.
  • platform/qt/editing/style/create-block-for-style-011-expected.txt:
  • platform/qt/editing/style/create-block-for-style-012-expected.png: Added.
  • platform/qt/editing/style/create-block-for-style-012-expected.txt:
  • platform/qt/editing/style/create-block-for-style-013-expected.png: Added.
  • platform/qt/editing/style/create-block-for-style-013-expected.txt:
  • platform/qt/editing/style/font-family-with-space-expected.png: Added.
  • platform/qt/editing/style/font-family-with-space-expected.txt:
  • platform/qt/editing/style/fontsize-1-expected.png: Added.
  • platform/qt/editing/style/non-inheritable-styles-expected.png: Added.
  • platform/qt/editing/style/non-inheritable-styles-expected.txt:
  • platform/qt/editing/style/relative-font-size-change-001-expected.png: Added.
  • platform/qt/editing/style/relative-font-size-change-001-expected.txt:
  • platform/qt/editing/style/relative-font-size-change-002-expected.png: Added.
  • platform/qt/editing/style/relative-font-size-change-002-expected.txt:
  • platform/qt/editing/style/relative-font-size-change-003-expected.png: Added.
  • platform/qt/editing/style/relative-font-size-change-003-expected.txt:
  • platform/qt/editing/style/relative-font-size-change-004-expected.png: Added.
  • platform/qt/editing/style/relative-font-size-change-004-expected.txt:
  • platform/qt/editing/style/smoosh-styles-001-expected.png: Added.
  • platform/qt/editing/style/smoosh-styles-001-expected.txt:
  • platform/qt/editing/style/smoosh-styles-003-expected.png: Added.
  • platform/qt/editing/style/smoosh-styles-003-expected.txt:
  • platform/qt/editing/style/style-3690704-fix-expected.png: Added.
  • platform/qt/editing/style/style-3998892-fix-expected.png: Added.
  • platform/qt/editing/style/style-3998892-fix-expected.txt:
  • platform/qt/editing/style/style-boundary-001-expected.png: Added.
  • platform/qt/editing/style/style-boundary-001-expected.txt:
  • platform/qt/editing/style/style-boundary-004-expected.png: Added.
  • platform/qt/editing/style/style-boundary-004-expected.txt:
  • platform/qt/editing/style/table-selection-expected.png: Added.
  • platform/qt/editing/style/table-selection-expected.txt:
3:23 AM Changeset in webkit [86833] by Philippe Normand
  • 2 edits in trunk/LayoutTests

2011-05-19 Philippe Normand <pnormand@igalia.com>

Unreviewed, skip failing GTK fullscreen test

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

  • platform/gtk/Skipped: Skip fullscreen/full-screen-keyboard-enabled.html
2:50 AM Changeset in webkit [86832] by tkent@chromium.org
  • 11 edits in trunk

2011-05-19 Kent Tamura <tkent@chromium.org>

Reviewed by Hajime Morita.

tooLong validity should not be true for a value set by a script
https://bugs.webkit.org/show_bug.cgi?id=60948

Update existing tests for the new behavior.

  • fast/forms/ValidityState-tooLong-input-expected.txt:
  • fast/forms/ValidityState-tooLong-textarea-expected.txt:
  • fast/forms/resources/textarea-live-pseudo-selectors.js:
  • fast/forms/script-tests/ValidityState-tooLong-input.js:
  • fast/forms/script-tests/ValidityState-tooLong-textarea.js:

2011-05-19 Kent Tamura <tkent@chromium.org>

Reviewed by Hajime Morita.

tooLong validity should not be true for a value set by a script
https://bugs.webkit.org/show_bug.cgi?id=60948

The specification has been updated so that tooLong should be true only
for user-edit values.

Introduce m_wasModifiedByUser flag to HTMLInputElement and
HTMLTextAreaElemnt. It is set to true when a renderer updates the
value, and is cleared when the value is updated by others.

  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::HTMLInputElement): Initialize m_wasModifiedByUser. (WebCore::HTMLInputElement::tooLong): Skip the check if m_wasModifiedByUser is false. (WebCore::HTMLInputElement::updateType): Clear m_wasModifiedByUser. (WebCore::HTMLInputElement::copyNonAttributeProperties): (WebCore::HTMLInputElement::setValue): If sendChange is true, m_wasModifiedByUser should be true because sendChange is set in a case of form auto-fill. We assume a value set by form auto-fill is a kind of user-edit. (WebCore::HTMLInputElement::setValueFromRenderer): m_wasModifiedByUser should be true for the update by a renderer.
  • html/HTMLInputElement.h: Declare m_wasModifiedByUser.
  • html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::HTMLTextAreaElement): Initialize m_wasModifiedByUser. (WebCore::HTMLTextAreaElement::updateValue): m_wasModifiedByUser should be true for the update by a renderer. (WebCore::HTMLTextAreaElement::setValueCommon): Clear m_wasModifiedByUser. (WebCore::HTMLTextAreaElement::tooLong): Skip the check if m_wasModifiedByUser is false.
  • html/HTMLTextAreaElement.h: Declare m_wasModifiedByUser.
2:47 AM Changeset in webkit [86831] by yuzo@google.com
  • 1 edit
    1 add in trunk/LayoutTests

2011-05-19 Yuzo Fujishima <yuzo@google.com>

Unreviewed Chromium test expectation change.

svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr.html needs new reference image on Leopard.

  • platform/chromium-mac-leopard/svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr-expected.png: Added.
2:45 AM Changeset in webkit [86830] by commit-queue@webkit.org
  • 4 edits
    3 adds in trunk

2011-05-19 David Barr <davidbarr@chromium.org>

Reviewed by Simon Fraser.

CSS3: We fail 'border radius sum of radii' test
https://bugs.webkit.org/show_bug.cgi?id=38788

  • fast/css/border-radius-non-negative-expected.txt: Added.
  • fast/css/border-radius-non-negative.html: Added.
  • platform/mac/fast/css/border-radius-non-negative-expected.png: Added.

2011-05-19 David Barr <davidbarr@chromium.org>

Reviewed by Simon Fraser.

CSS3: We fail 'border radius sum of radii' test
https://bugs.webkit.org/show_bug.cgi?id=38788

Ignore border-radius properties with negative values.

Test: fast/css/border-radius-non-negative.html

  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseBorderRadius):
2:33 AM Changeset in webkit [86829] by yutak@chromium.org
  • 3 edits in trunk/Source/WebCore

2011-05-19 Yuta Kitamura <yutak@chromium.org>

Reviewed by Kent Tamura.

WebSocket: Use ScriptContext::Task to hold pending events of ThreadableWebSocketChannelClientWrapper
https://bugs.webkit.org/show_bug.cgi?id=61034

Refactoring only. No new tests.

  • websockets/ThreadableWebSocketChannelClientWrapper.cpp: (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper): (WebCore::ThreadableWebSocketChannelClientWrapper::didConnect): (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessage): (WebCore::ThreadableWebSocketChannelClientWrapper::didClose): (WebCore::ThreadableWebSocketChannelClientWrapper::resume): (WebCore::ThreadableWebSocketChannelClientWrapper::processPendingTasks): (WebCore::ThreadableWebSocketChannelClientWrapper::didConnectCallback): (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessageCallback): (WebCore::ThreadableWebSocketChannelClientWrapper::didCloseCallback):
  • websockets/ThreadableWebSocketChannelClientWrapper.h: Remove m_pendingConnected, m_pendingMessages and m_pendingClosed, and use ScriptContext::Task to hold these pending events.
2:22 AM Changeset in webkit [86828] by commit-queue@webkit.org
  • 5 edits
    5 adds in trunk

2011-05-19 Kenichi Ishibashi <bashi@chromium.org>

Reviewed by Kent Tamura.

[Chromium] IME candidate window appears wrong position in an iframe
https://bugs.webkit.org/show_bug.cgi?id=61023

Added a test which ensures the IME candidate position is located
at suitable position.

  • platform/chromium-mac/editing/input/ime-candidate-window-position-expected.txt: Added.
  • platform/chromium-mac/editing/input/ime-candidate-window-position.html: Added.
  • platform/chromium-mac/editing/resources/ime-candidate-window-position-iframe.html: Added.

2011-05-19 Kenichi Ishibashi <bashi@chromium.org>

Reviewed by Kent Tamura.

[Chromium] IME candidate window appears wrong position in an iframe
https://bugs.webkit.org/show_bug.cgi?id=61023

Always adjusts the range to window relative coordinates.

  • src/WebFrameImpl.cpp: (WebKit::WebFrameImpl::firstRectForCharacterRange): Removed condition which excludes editable selectionRoot from adjusting.

2011-05-19 Kenichi Ishibashi <bashi@chromium.org>

Reviewed by Kent Tamura.

[Chromium] IME candidate window appears wrong position in an iframe
https://bugs.webkit.org/show_bug.cgi?id=61023

Call the focused frame's firstRectForCharacterRange() instead of the
main frame so that DRT behaves as the same as Chromium.

  • DumpRenderTree/chromium/TextInputController.cpp: (TextInputController::firstRectForCharacterRange):
2:21 AM Changeset in webkit [86827] by eae@chromium.org
  • 5 edits in trunk

2011-05-19 Emil A Eklund <eae@chromium.org>

Reviewed by Alexey Proskuryakov.

REGRESSION (r80808): Multiple <select> - Selection reset to first element from multiple selected ones
https://bugs.webkit.org/show_bug.cgi?id=60986

  • fast/dom/HTMLSelectElement/change-multiple-preserve-selection-expected.txt:
  • fast/dom/HTMLSelectElement/change-multiple-preserve-selection.html:

2011-05-19 Emil A Eklund <eae@chromium.org>

Reviewed by Alexey Proskuryakov.

REGRESSION (r80808): Multiple <select> - Selection reset to first element from multiple selected ones
https://bugs.webkit.org/show_bug.cgi?id=60986

  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::setMultiple): Don't restore selection if the multiple attribute hasn't changed.
2:19 AM Changeset in webkit [86826] by commit-queue@webkit.org
  • 2 edits
    3 adds in trunk

2011-05-19 Mihnea Ovidenie <mihnea@adobe.com>

Reviewed by Simon Fraser.

Gradients not horizontal using 270deg with odd div width
https://bugs.webkit.org/show_bug.cgi?id=60157

When the angle of the linear gradient is 270, the endpoint should
be computed in the same way as for 0, 90, 180 cases since tan(270)
is undefined.

  • fast/gradients/css3-linear-right-angle-gradients-expected.txt: Added.
  • fast/gradients/css3-linear-right-angle-gradients.html: Added.
  • platform/mac/fast/gradients/css3-linear-right-angle-gradients-expected.png: Added.
1:55 AM Changeset in webkit [86825] by Philippe Normand
  • 2 edits in trunk/Source/WebKit2

2011-05-19 Philippe Normand <pnormand@igalia.com>

Unreviewed, follow-up fix of the messages python unittests after r86812.

[WebKit2] handleMessageDelayed leaks replyEncoder if decoding fails
https://bugs.webkit.org/show_bug.cgi?id=60872

  • Scripts/webkit2/messages_unittest.py:
1:16 AM Changeset in webkit [86824] by yuzo@google.com
  • 1 edit
    1 add in trunk/LayoutTests

2011-05-19 Yuzo Fujishima <yuzo@google.com>

Unreviewed Chromium test expectation change.

svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr.html needs new reference image on Snow Leopard.

  • platform/chromium-mac/svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr-expected.png: Added.
12:28 AM Changeset in webkit [86823] by Nikolas Zimmermann
  • 59 edits in trunk/LayoutTests

2011-05-19 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed.

Update mac pixel test baseline, had marginal differences in the filter results and the text selection rectangles since a while.
The baseline passes again on my 32bit and 64bit machine, using run-webkit-tests --tolerance 0.011 -p svg

  • platform/mac/svg/W3C-SVG-1.1/filters-color-01-b-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/filters-turb-01-f-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/filters-turb-02-f-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/text-tselect-02-f-expected.png:
  • platform/mac/svg/batik/filters/feTile-expected.png:
  • platform/mac/svg/custom/feComponentTransfer-Discrete-expected.png:
  • platform/mac/svg/custom/feComponentTransfer-Gamma-expected.png:
  • platform/mac/svg/custom/feComponentTransfer-Linear-expected.png:
  • platform/mac/svg/custom/feComponentTransfer-Table-expected.png:
  • platform/mac/svg/custom/foreign-object-skew-expected.png:
  • platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-preserveAlpha-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetX-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-dom-targetY-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-edgeMode-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-preserveAlpha-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetX-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGFEConvolveMatrixElement-svgdom-targetY-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGFETurbulenceElement-dom-baseFrequency-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGFETurbulenceElement-dom-stitchTiles-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGFETurbulenceElement-svgdom-stitchTiles-prop-expected.png:
  • platform/mac/svg/filters/feTile-expected.png:
  • platform/mac/svg/filters/filterRes-expected.png:
  • platform/mac/svg/filters/filterRes1-expected.png:
  • platform/mac/svg/filters/filterRes3-expected.png:
  • platform/mac/svg/filters/parent-children-with-same-filter-expected.png:
  • platform/mac/svg/filters/subRegion-one-effect-expected.png:
  • platform/mac/svg/filters/subRegion-two-effects-expected.png:
  • platform/mac/svg/text/select-textLength-spacing-stretch-4-expected.png:
  • platform/mac/svg/text/text-align-01-b-expected.png:
  • platform/mac/svg/text/text-align-02-b-expected.png:
  • platform/mac/svg/text/text-align-04-b-expected.png:
  • platform/mac/svg/text/text-align-05-b-expected.png:
  • platform/mac/svg/text/text-align-06-b-expected.png:
  • platform/mac/svg/text/text-altglyph-01-b-expected.png:
  • platform/mac/svg/text/text-deco-01-b-expected.png:
  • platform/mac/svg/text/text-fonts-01-t-expected.png:
  • platform/mac/svg/text/text-fonts-02-t-expected.png:
  • platform/mac/svg/text/text-intro-05-t-expected.png:
  • platform/mac/svg/text/text-path-01-b-expected.png:
  • platform/mac/svg/text/text-text-01-b-expected.png:
  • platform/mac/svg/text/text-text-03-b-expected.png:
  • platform/mac/svg/text/text-text-04-t-expected.png:
  • platform/mac/svg/text/text-text-05-t-expected.png:
  • platform/mac/svg/text/text-text-06-t-expected.png:
  • platform/mac/svg/text/text-text-07-t-expected.png:
  • platform/mac/svg/text/text-text-08-b-expected.png:
  • platform/mac/svg/text/text-tref-01-b-expected.png:
  • platform/mac/svg/text/text-tselect-01-b-expected.png:
  • platform/mac/svg/text/text-tselect-02-f-expected.png:
  • platform/mac/svg/text/text-tspan-01-b-expected.png:
  • platform/mac/svg/text/text-ws-01-t-expected.png:
  • platform/mac/svg/text/text-ws-02-t-expected.png:
  • platform/mac/svg/zoom/text/zoom-foreignObject-expected.png:
12:12 AM BuildingQtOnOSX edited by dominicc@chromium.org
Added note about installing the debug variant of the qt4-mac port, … (diff)
Note: See TracTimeline for information about the timeline view.