Aug 4, 2013:

2:29 PM Changeset in webkit [153701] by Alan Bujtas
  • 8 edits
    1 add in trunk

Background doesn't fully repaint when body has margins.

Reviewed by Simon Fraser.

Ensure that background-color changes do not leave unpainted areas when
body has margins.

Both <body> and <html> background-color get propagated up to the viewport.
If <body> has background-color attribute set, while <html> doesn't, the color is
applied not only on the <body> but on both the <html> and the viewport. However,
it's not enough to mark the RenderView dirty because with tiles backing on,
there could be areas outside of the viewport that need repaint. By marking
the RenderView's graphics layer dirty instead, we ensure that all the related
tiles get marked dirty too and the new background color covers all areas.

Manual test added. When forcing top-level composition on (even with embedded iframe to
make sure we don't do paintsIntoWindow rendering), the test case execution changes so much,
that the repaint rects don't reflect the functionality difference anymore.


Reviewed by Simon Fraser.

  • ManualTests/compositing/background-color-change-on-body-with-margin.html: Added.


  • page/FrameView.cpp:


  • page/FrameView.h:


  • rendering/RenderBox.cpp:


  • rendering/RenderObjectChildList.cpp:


  • rendering/RenderView.cpp:


  • rendering/RenderView.h:
9:17 AM Changeset in webkit [153700] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Document needn't expose its active element.

Reviewed by Antonio Gomes.

The Document::m_activeElement pointer is only used inside updateHoverActiveState(),
so we can remove the activeElement()/setActiveElement() accessors.

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


8:57 AM Changeset in webkit [153699] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Inserting a rule into an empty style sheet shouldn't trigger style recalc unless necessary.

Reviewed by Antti Koivisto.

This is kind of a cheesy optimization, but it turns out that the use case is quite common.
The pattern goes like this:

(1) Create <style> element.
(2) Add it to the document's <head>.
(3) .addRule() one rule through the CSSOM API.

Prior to this patch, (3) would always cause a full (deferred) style recalc.

Now that we exclude empty style sheets from the document's (effective) active set,
we can piggyback on the style invalidation analysis when transitioning from an empty
sheet to a single-rule sheet.

In other words, add a special code path for the first rule insertion into an empty,
in-document style sheet to minimize the amount of invalidation that happens.

  • css/CSSStyleSheet.cpp:


  • css/CSSStyleSheet.h:


7:35 AM Changeset in webkit [153698] by Claudio Saavedra
  • 2 edits in trunk/Source/WebCore

[GTK] Fix a C++11 warning.

Rubber-stamped by Martin Robinson.

  • platform/gtk/FileSystemGtk.cpp:

(WebCore::sharedResourcesPath): Fix a C++11 warning.

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

[GTK] Remove legacy hack in CodeGeneratorGObject.pm

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2013-08-04
Reviewed by Carlos Garcia Campos.

There's a checking that sets gtype to uint in case it's ushort. gtype
is a value obtained from GetGValueTypeName(), which never returns

  • bindings/scripts/CodeGeneratorGObject.pm:

(GenerateProperty): remove unnecessary glitch

12:41 AM Changeset in webkit [153696] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

[Mac] Disable screen font substitution at WebCore-level in OS X 10.9+

Reviewed by Dan Bernstein.

Disable screen font substitution by default in Settings so internal WebCore clients
such as SVG-as-image will get the right default setting.

  • page/Settings.cpp:


  • page/Settings.h:


  • page/Settings.in:
  • page/mac/SettingsMac.mm:


Aug 3, 2013:

9:13 PM Changeset in webkit [153695] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebCore

Refine the unavailable plug-in indicator

Reviewed by Oliver Hunt.

Add a border, flip the text and background colors, and make the indicator
much higher contrast, to be more visible on a variety of sites.
Also, refine the arrow to be less blocky and inlaid inside a circle.

  • rendering/RenderEmbeddedObject.cpp:


  • rendering/RenderEmbeddedObject.h:
9:00 PM Changeset in webkit [153694] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebKit2

Unreviewed, build and style fix for r153693.

  • UIProcess/WebProcessProxy.cpp:
  • WebProcess/Plugins/PDF/PDFPlugin.h:
  • WebProcess/WebPage/WebPage.cpp:
8:50 PM Changeset in webkit [153693] by timothy_horton@apple.com
  • 6 edits in trunk/Source/WebKit2

Remove SimplePDFPlugin

Reviewed by Alexey Proskuryakov.

  • UIProcess/WebProcessProxy.cpp:


  • WebProcess/WebPage/WebPage.cpp:

Don't add SimplePDFPlugin, nor try to instantiate it.

  • WebProcess/Plugins/PDF/PDFPlugin.h:
  • WebProcess/Plugins/PDF/PDFPlugin.mm:

Merge previously inherited behavior in from SimplePDFPlugin.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/Plugins/PDF/SimplePDFPlugin.h: Removed.
  • WebProcess/Plugins/PDF/SimplePDFPlugin.mm: Removed.

Remove SimplePDFPlugin.

5:31 PM Changeset in webkit [153692] by timothy_horton@apple.com
  • 15 edits in trunk/Source/WebKit2

Remove pageOverlayShouldApplyFadeWhenPainting() and adopt composited fade for the Mac port

Reviewed by Simon Fraser.

Mac is the only holdout that performs non-composited fades of page
overlays. We should adopt that mechanism (as a precursor to doing a
CA-accelerated fade) and remove the now-unnecessary property.

  • WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:

Always return 1 (fully-faded-in) so that clients who attempt to use this
to bake the fade opacity into their painting will paint at full opacity,
allowing us to do the composited fade separately.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
  • WebProcess/WebPage/DrawingArea.h:
  • WebProcess/WebPage/DrawingAreaImpl.cpp:
  • WebProcess/WebPage/DrawingAreaImpl.h:
  • WebProcess/WebPage/LayerTreeHost.h:
  • WebProcess/WebPage/PageOverlay.cpp:


  • WebProcess/WebPage/PageOverlay.h:

Remove pageOverlayShouldApplyFadeWhenPainting and fractionFadedIn().

  • WebProcess/WebPage/FindController.cpp:

Draw the find overlay without taking the PageOverlay's fade into account.

  • WebProcess/WebPage/TapHighlightController.cpp:

Remove pageOverlayShouldApplyFadeWhenPainting. Since it's always
"false" for all ports now, take the second path here.

  • WebProcess/WebPage/mac/LayerTreeHostMac.h:
  • WebProcess/WebPage/mac/LayerTreeHostMac.mm:


  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

Implement setPageOverlayOpacity for DrawingAreaImpl
and TiledCoreAnimationDrawingArea.

5:12 PM Changeset in webkit [153691] by fpizlo@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

hasIndexingHeader() ought really to be a property of an object and its structure, not just its structure

Reviewed by Oliver Hunt.

Structure can still tell you if the object "could" (in the conservative sense)
have an indexing header; that's used by the compiler.

Most of the time if you want to know if there's an indexing header, you ask the

In some cases, the JSObject wants to know if it would have an indexing header if
it had a different structure; then it uses Structure::hasIndexingHeader(JSCell*).

  • dfg/DFGRepatch.cpp:


  • dfg/DFGSpeculativeJIT.cpp:


  • runtime/ButterflyInlines.h:


  • runtime/JSObject.cpp:


  • runtime/JSObject.h:


  • runtime/Structure.h:


10:49 AM Changeset in webkit [153690] by Simon Fraser
  • 2 edits in trunk/LayoutTests

webaudio/audiobuffersource-loop-points.html always times out

Skip this test.

  • platform/mac-wk2/TestExpectations:
8:56 AM BadContent edited by zandobersek@gmail.com
Add a spamming account to the blocked list. (diff)
6:43 AM Changeset in webkit [153689] by commit-queue@webkit.org
  • 6 edits
    4 adds in trunk

PreloadScanner preloads external CSS with non-matching media attribute

Patch by Yoav Weiss <yoav@yoav.ws> on 2013-08-03
Reviewed by Dean Jackson.


Test: http/tests/loading/preload-css-test.html

  • html/parser/HTMLPreloadScanner.cpp:

Remove m_linkMediaAttributeIsScreen
Remove MediaQueryEvaluator calls
Add m_mediaAttribute that gets the value of the "media" attribute
Pass m_mediaAttribute to PreloadRequest

  • html/parser/HTMLResourcePreloader.cpp:

Add MediaQueryEvaluator calls to see if "media" matches
Perform preload only to resource with a matching media (if media exists)

  • html/parser/HTMLResourcePreloader.h:

Add a constructor with a mediaAttribute value
Add m_mediaAttribute & its getter.


  • http/tests/loading/preload-css-test-expected.txt: Added.
  • http/tests/loading/preload-css-test.html: Added.
  • http/tests/loading/resources/big_mq.css: Added.
  • http/tests/loading/resources/small_mq.css: Added.
  • http/tests/local/link-stylesheet-load-order-preload-expected.txt:
3:15 AM Changeset in webkit [153688] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

RenderBoxModelObject::firstLetterRemainingText should be a RenderTextFragment*.

Reviewed by Sam Weinig.

De-generalize this code a bit since we know that the firstLetterRemainingText() is always
going to be a RenderTextFragment.

  • rendering/RenderBoxModelObject.h:
  • rendering/RenderBoxModelObject.cpp:


Make these two deal in RenderTextFragment*.

  • rendering/RenderBlock.cpp:


Tighten up some pointer types so we don't have to cast as much.

Aug 2, 2013:

10:11 PM Changeset in webkit [153687] by gyuyoung.kim@samsung.com
  • 4 edits in trunk/Source/WebCore

Introduce toSVGMaskElement(), and use it

Reviewed by Andreas Kling.

As a step to change static_cast with toSVGXXX, static_cast<SVGMaskElement*> can
be changed with toSVGMaskElement().

Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=155432

  • rendering/svg/RenderSVGResourceMasker.cpp:


  • rendering/svg/RenderSVGResourceMasker.h:
  • svg/SVGMaskElement.h:


8:33 PM Changeset in webkit [153686] by benjamin@webkit.org
  • 3 edits in trunk/Source/WTF

Remove a bunch of redundant checks for empty string in StringImpl

Reviewed by Ryosuke Niwa.

The first thing done by createUninitialized() is check if the length passed
is zero. Internally, there are many cases for which we know the check will never succeed.

Clang is usually really smart for those kind of things, but there are a few cases where
the condition to avoid returning empty() is not simply a check for the length.
This patch adds an internal initializer to deal with that.

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::createInternal): Create internal has a special case for null pointer
for the characters. The test also check length, the second check for length cannot fail.
(WTF::StringImpl::create8BitIfPossible): ditto.
(WTF::StringImpl::lower): 3 of the calls cannot be reached for empty length. On an empty length,
the test for (noUpper && !(ored & ~0x7F)) would have caused the function to return "this".

For the last createUninitialized(), there is no guarantee the realLength is not zero.

(WTF::StringImpl::replace): The first thing we do in replace(UChar,UChar) is check if there is anything
to replace. The check for length will never succeed as there must be a character to replace at that point.

  • wtf/text/StringImpl.h:
8:09 PM Changeset in webkit [153685] by benjamin@webkit.org
  • 3 edits
    2 adds in trunk

REGRESSION (r153005): Crash in SpaceSplitString::spaceSplitStringContainsValue on Facebook

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-08-02
Reviewed by Alexey Proskuryakov.


When removing the "rel" attribute from HTMLAnchorElement, we parse the attribute for no value.
Following r153005, we no longer checked for null String, which caused a crash in that case.

Creating a SpaceSplitString from a null string causes the SpaceSplitString to be null. In that case
SpaceSplitString::contains() would always return false.
This patch modify SpaceSplitString::spaceSplitStringContainsValue() to follow the exact same

Test: fast/dom/HTMLAnchorElement/remove-rel-attribute.html

  • dom/SpaceSplitString.cpp:



  • fast/dom/HTMLAnchorElement/remove-rel-attribute.html: Added.
  • fast/dom/HTMLAnchorElement/remove-rel-attribute-expected.txt: Added.
5:54 PM Changeset in webkit [153684] by Lucas Forschler
  • 5 edits
    2 copies in branches/safari-537-branch

Merged r153681. <rdar://problem/14638695>

5:51 PM Changeset in webkit [153683] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebCore

Merged r153672. <rdar://problem/14631785>

5:24 PM Changeset in webkit [153682] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebCore

Merged r153632. <rdar://problem/14628760>

5:06 PM Changeset in webkit [153681] by dino@apple.com
  • 5 edits
    2 adds in trunk

Force elements with perspective or preserve-3d to disallow direct composited backgrounds

Reviewed by Simon Fraser.


Bug 119461 (http://wkb.ug/119461) describes how a directly composited
background color can intersect with its children. It's not clear exactly
what the best way to fix that is, but for the moment we should disallow
any element that has perspective or a preserve-3d transform style from
getting a directly composited background.

Test: compositing/background-color/no-composited-background-color-when-perspective.html

  • rendering/RenderLayerBacking.cpp:

(WebCore::hasPerspectiveOrPreserves3D): New static helper.
(WebCore::supportsDirectBoxDecorationsComposition): Return false if the above function is true.


  • compositing/background-color/no-composited-background-color-when-perspective-expected.html: Added.
  • compositing/background-color/no-composited-background-color-when-perspective.html: Added.
  • compositing/geometry/preserve-3d-switching-expected.txt: Rebaselined.
  • compositing/overflow-trumps-transform-style-expected.txt: Rebaselined.
5:05 PM Changeset in webkit [153680] by oliver@apple.com
  • 4 edits in trunk/Source/WebCore

Update binding test results

5:04 PM Changeset in webkit [153679] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

Give the error object's stack property accessor attributes.


Patch by Chris Curtis <chris_curtis@apple.com> on 2013-08-02
Reviewed by Geoffrey Garen.

Changed the attributes of error object's stack property to allow developers to write
and delete the stack property. This will match the functionality of Chrome. Firefox
allows developers to write the error's stack, but not delete it.

  • interpreter/Interpreter.cpp:


  • runtime/ErrorInstance.cpp:



Patch by Chris Curtis <chris_curtis@apple.com> on 2013-08-02
Reviewed by Geoffrey Garen.

  • fast/dom/DOMException/stack-trace-expected.txt:

New tests to show that the error object's stack property is writable and deleteable.

  • fast/js/error-object-write-and-detele-for-stack-property-expected.txt: Added.
  • fast/js/error-object-write-and-detele-for-stack-property.html: Added.
5:01 PM Changeset in webkit [153678] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip failing canvas blending tests on AppleWin port.

  • platform/win/TestExpectations:
4:40 PM Changeset in webkit [153677] by barraclough@apple.com
  • 12 edits in trunk/Source

Remove no-arguments constructor to PropertySlot

Reviewed by Geoff Garen.

This constructor was unsafe if getValue is subsequently called,
and the property is a getter. Simplest to just remove it.


  • bindings/js/JSDOMWindowCustom.cpp:


  • bindings/js/JSHistoryCustom.cpp:


  • bindings/js/JSLocationCustom.cpp:


  • bindings/js/JSPluginElementFunctions.cpp:


  • bindings/js/JSStorageCustom.cpp:


  • bindings/scripts/CodeGeneratorJS.pm:


  • bridge/runtime_array.cpp:


  • bridge/runtime_method.cpp:


  • bridge/runtime_object.cpp:



  • WebProcess/Plugins/Netscape/JSNPObject.cpp:


4:23 PM Changeset in webkit [153676] by mark.lam@apple.com
  • 2 edits in trunk/Source/WTF

Gardening: Touched a line in Platform.h to get all bots to do a clean build.

Not reviewed.

  • wtf/Platform.h:
4:09 PM Changeset in webkit [153675] by Lucas Forschler
  • 1 edit in branches/safari-537-branch/Source/JavaScriptCore/dfg/DFGAbstractState.cpp

Apply patch from <rdar://problem/14580940>.

3:38 PM Changeset in webkit [153674] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Incorrect type speculation reported by ToPrimitive

Reviewed by Mark Hahnenberg.

Make sure that we report the correct type possibilities for the output
from ToPrimitive

  • dfg/DFGAbstractInterpreterInlines.h:


3:30 PM Changeset in webkit [153673] by barraclough@apple.com
  • 12 edits in trunk/Source/JavaScriptCore

Remove no-arguments constructor to PropertySlot

Reviewed by Geoff Garen.

This constructor was unsafe if getValue is subsequently called,
and the property is a getter. Simplest to just remove it.

  • runtime/Arguments.cpp:


  • runtime/JSActivation.cpp:


  • runtime/JSFunction.cpp:


  • runtime/JSGlobalObject.cpp:


  • runtime/JSGlobalObject.h:


  • runtime/JSNameScope.cpp:


  • runtime/JSONObject.cpp:


  • runtime/JSObject.cpp:


  • runtime/Lookup.h:


  • runtime/ObjectConstructor.cpp:


  • runtime/PropertySlot.h:
3:11 PM Changeset in webkit [153672] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Removing a <link> element with an empty stylesheet shouldn't trigger style recalc.

Reviewed by Antti Koivisto.

Let Document decide whether or not to do a style recalc after a <link> element is removed.
This avoids unnecessary work when removing a <link> that refers to an empty style sheet.

Some Facebook pages have a <link rel="stylesheet" href="data:text/css;base64,"> that gets
removed during the initial page load, causing style recalc.

  • html/HTMLLinkElement.cpp:


Use DeferRecalcStyleIfNeeded. Since the style sheet is being removed, it will either
cause a recalc (because it's no longer in the set of active sheets) or do nothing.

2:50 PM Changeset in webkit [153671] by mhahnenberg@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

DFG validation can cause assertion failures due to dumping

Reviewed by Geoffrey Garen.

  • bytecode/CodeBlock.cpp:


  • bytecode/CodeBlock.h:
2:35 PM Changeset in webkit [153670] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Forms: color] WebColorPickerMac deconstructor shouldn't assert a variable
<rdar://problem/14627633> and https://bugs.webkit.org/show_bug.cgi?id=119419

Patch by Ruth Fong <ruth_fong@apple.com> on 2013-08-02
Reviewed by Tim Horton.

  • UIProcess/mac/WebColorPickerMac.mm:

(WebKit::WebColorPickerMac::~WebColorPickerMac): If the m_colorPickerUI variable

is not null, then properly destroy it first before destroying WebColorPickerMac object.

2:32 PM Changeset in webkit [153669] by commit-queue@webkit.org
  • 7 edits in trunk

Have vm's exceptionStack match java's vm's exceptionStack.


Patch by Chris Curtis <chris_curtis@apple.com> on 2013-08-02
Reviewed by Geoffrey Garen.

The error object's stack is only updated if it does not exist yet. This matches
the functionality of other browsers, and Java VMs.

  • interpreter/Interpreter.cpp:


  • runtime/VM.cpp:


  • runtime/VM.h:



Patch by Chris Curtis <chris_curtis@apple.com> on 2013-08-02
Reviewed by Geoffrey Garen.

All modifications to the tests below are column number changes. If the thrown
object was created by the user the column number references the error object,
otherwise it references the the throw.

  • fast/events/window-onerror5-expected.txt:
  • fast/js/line-column-numbers-expected.txt:
  • fast/js/stack-trace-expected.txt:
  • http/tests/workers/worker-importScriptsOnError-expected.txt:
2:30 PM Changeset in webkit [153668] by Patrick Gansterer
  • 3 edits in trunk/Source/WebCore

Remove WebCore folder from include statements

Reviewed by Darin Adler.

This aligns the style of the changed files with the other WebCore code.

  • platform/network/curl/CurlDownload.cpp:
  • platform/network/curl/CurlDownload.h:
2:27 PM Changeset in webkit [153667] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Forms: color] The positioning of the popover color well is inverted
<rdar://problem/14635621> and https://bugs.webkit.org/show_bug.cgi?id=119455

Patch by Ruth Fong <ruth_fong@apple.com> on 2013-08-02
Reviewed by Tim Horton.

This patch converts the coordinates of the <input type='color'> element to
the window's base coordinate system.

  • UIProcess/mac/WebColorPickerMac.mm:

(-[WKColorPopoverMac initWithFrame:inView:]):

2:07 PM Changeset in webkit [153666] by Simon Fraser
  • 2 edits in trunk/LayoutTests

webaudio/javascriptaudionode-downmix8-2channel-input.html sometimes asserts

  • platform/mac-wk2/TestExpectations:
1:28 PM Changeset in webkit [153665] by Lucas Forschler
  • 6 edits in branches/safari-537-branch/Source/WebCore

Merged r153641. <rdar://problem/14629045>

1:10 PM Changeset in webkit [153664] by achristensen@apple.com
  • 10 edits
    2 adds in trunk/Source/ThirdParty/ANGLE

Soft link ANGLE on Windows.

Reviewed by Dean Jackson.

  • ANGLE.vcxproj/libEGL.vcxproj:
  • ANGLE.vcxproj/libEGL.vcxproj.filters:
  • ANGLE.vcxproj/libGLESv2.vcxproj:
  • ANGLE.vcxproj/libGLESv2.vcxproj.filters:

Added soft linking headers.

  • ANGLE.vcxproj/libEGLCommon.props:
  • ANGLE.vcxproj/libGLESv2Common.props:
  • ANGLE.vcxproj/translatorCommon.props:

Added ANGLE_WEBKIT_WIN macro definition for egl.h and gl2.h.

  • include/EGL/egl.h:
  • include/GLES2/gl2.h:

Conditionally include soft linking headers based on ANGLE_WEBKIT_WIN macro.

  • include/EGL/eglsoftlinking.h: Added.
  • include/GLES2/gl2softlinking.h: Added.
12:56 PM Changeset in webkit [153663] by Lucas Forschler
  • 5 edits
    4 copies in branches/safari-537-branch

Merged r153649. <rdar://problem/14601124>

12:51 PM Changeset in webkit [153662] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WTF

Merged r153635. <rdar://problem/14528244>

12:34 PM Changeset in webkit [153661] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

FormAssociatedElement shouldn't create out-of-tree FormAttributeTargetObserver

Reviewed by Kent Tamura.

Merge https://chromium.googlesource.com/chromium/blink/+/6fbdcbf311de539107bc28711b3f7a527176e97b.

I'm not merging the test since the attached test case only works when the shadow DOM API is enabled.

  • html/FormAssociatedElement.cpp:


11:52 AM Changeset in webkit [153660] by Christophe Dumez
  • 9 edits in trunk

compareDocumentPosition() should report PRECEDING or FOLLOWING information even if nodes are disconnected

Reviewed by Ryosuke Niwa.


As per the latest specification, compareDocumentPosition() should report PRECEDING or FOLLOWING
information even if nodes are disconnected:

This behavior is consistent with both IE10, Firefox 22 and since recently Blink.

No new tests, covered by existing tests.

  • dom/Node.cpp:



Update fast/dom/compare-document-position-disconnected-nodes.html to check that compareDocumentPosition()
now returns one of the following values for disconnected nodes:


Several dom/xhtml/level3 are skipped and marked as WonfFix because they are outdated and no longer match
the DOM4 specification. They expect compareDocumentPosition() not to return PRECEDING / FOLLOWING
information for disconnected nodes.

  • TestExpectations:
  • dom/xhtml/level3/core/nodecomparedocumentposition38-expected.txt:
  • fast/dom/compare-document-position-disconnected-nodes-expected.txt:
  • fast/dom/compare-document-position-disconnected-nodes.html:
  • fast/dom/shadow/compare-document-position-expected.txt:
  • fast/dom/shadow/compare-document-position.html:
11:45 AM Changeset in webkit [153659] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(FTL): Fix mips implementation of ctiVMThrowTrampolineSlowpath.

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-08-02
Reviewed by Geoffrey Garen.

Fix .cpload, update call frame and do not restore registers from JIT stack frame in
mips implementation of ctiVMThrowTrampolineSlowpath. This change is similar to
r153583 (sh4) and r153648 (ARM).

  • jit/JITStubsMIPS.h:
11:42 AM Changeset in webkit [153658] by commit-queue@webkit.org
  • 1 edit
    45 adds in trunk/LayoutTests

Implement canvas blending test that should validate the following scenarios:
Validate that all blending operators work as expected for the following layer combinations:


Patch by Mihai Tica <mitica@adobe.com> on 2013-08-02
Reviewed by Dirk Schulze.

  • fast/canvas/canvas-blending-clipping-expected.txt: Added.
  • fast/canvas/canvas-blending-clipping.html: Added.
  • fast/canvas/canvas-blending-color-over-color-expected.txt: Added.
  • fast/canvas/canvas-blending-color-over-color.html: Added.
  • fast/canvas/canvas-blending-color-over-gradient-expected.txt: Added.
  • fast/canvas/canvas-blending-color-over-gradient.html: Added.
  • fast/canvas/canvas-blending-color-over-image-expected.txt: Added.
  • fast/canvas/canvas-blending-color-over-image.html: Added.
  • fast/canvas/canvas-blending-color-over-pattern-expected.txt: Added.
  • fast/canvas/canvas-blending-color-over-pattern.html: Added.
  • fast/canvas/canvas-blending-fill-style-expected.txt: Added.
  • fast/canvas/canvas-blending-fill-style.html: Added.
  • fast/canvas/canvas-blending-global-alpha-expected.txt: Added.
  • fast/canvas/canvas-blending-global-alpha.html: Added.
  • fast/canvas/canvas-blending-gradient-over-color-expected.txt: Added.
  • fast/canvas/canvas-blending-gradient-over-color.html: Added.
  • fast/canvas/canvas-blending-gradient-over-gradient-expected.txt: Added.
  • fast/canvas/canvas-blending-gradient-over-gradient.html: Added.
  • fast/canvas/canvas-blending-gradient-over-image-expected.txt: Added.
  • fast/canvas/canvas-blending-gradient-over-image.html: Added.
  • fast/canvas/canvas-blending-gradient-over-pattern-expected.txt: Added.
  • fast/canvas/canvas-blending-gradient-over-pattern.html: Added.
  • fast/canvas/canvas-blending-helpers.js: Added.


  • fast/canvas/canvas-blending-image-over-color-expected.txt: Added.
  • fast/canvas/canvas-blending-image-over-color.html: Added.
  • fast/canvas/canvas-blending-image-over-gradient-expected.txt: Added.
  • fast/canvas/canvas-blending-image-over-gradient.html: Added.
  • fast/canvas/canvas-blending-image-over-image-expected.txt: Added.
  • fast/canvas/canvas-blending-image-over-image.html: Added.
  • fast/canvas/canvas-blending-image-over-pattern-expected.txt: Added.
  • fast/canvas/canvas-blending-image-over-pattern.html: Added.
  • fast/canvas/canvas-blending-pattern-over-color-expected.txt: Added.
  • fast/canvas/canvas-blending-pattern-over-color.html: Added.
  • fast/canvas/canvas-blending-pattern-over-gradient-expected.txt: Added.
  • fast/canvas/canvas-blending-pattern-over-gradient.html: Added.
  • fast/canvas/canvas-blending-pattern-over-image-expected.txt: Added.
  • fast/canvas/canvas-blending-pattern-over-image.html: Added.
  • fast/canvas/canvas-blending-pattern-over-pattern-expected.txt: Added.
  • fast/canvas/canvas-blending-pattern-over-pattern.html: Added.
  • fast/canvas/canvas-blending-shadow-expected.txt: Added.
  • fast/canvas/canvas-blending-shadow.html: Added.
  • fast/canvas/canvas-blending-text-expected.txt: Added.
  • fast/canvas/canvas-blending-text.html: Added.
  • fast/canvas/canvas-blending-transforms-expected.txt: Added.
  • fast/canvas/canvas-blending-transforms.html: Added.
11:27 AM Changeset in webkit [153657] by fpizlo@apple.com
  • 9 edits in trunk/Source/JavaScriptCore

hasIndexingHeader should be a property of the Structure, not just the IndexingType

Reviewed by Oliver Hunt.

This simplifies some code and also allows Structure to claim that an object
has an indexing header even if it doesn't have indexed properties.

I also changed some calls to use hasIndexedProperties() since in some cases,
that's what we actually meant. Currently the two are synonyms.

  • dfg/DFGRepatch.cpp:


  • dfg/DFGSpeculativeJIT.cpp:


  • runtime/ButterflyInlines.h:


  • runtime/IndexingType.h:
  • runtime/JSObject.cpp:


  • runtime/JSObject.h:


  • runtime/JSPropertyNameIterator.cpp:


  • runtime/Structure.h:


11:16 AM Changeset in webkit [153656] by Lucas Forschler
  • 5 edits in tags/Safari-537.54.1/Source


11:03 AM Changeset in webkit [153655] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Revert r153632, since it caused fast/forms/change-form-element-document-crash.html
to assert.

  • html/FormAssociatedElement.cpp:


10:50 AM Changeset in webkit [153654] by Lucas Forschler
  • 1 copy in tags/Safari-537.54.1

New Tag.

9:40 AM Changeset in webkit [153653] by mark.lam@apple.com
  • 2 edits in branches/safari-537-branch/LayoutTests

Bot greening: changed test to not use test functions not yet available in this branch.

Not reviewed.

  • fast/js/script-tests/dfg-make-rope-side-effects.js:


9:02 AM Changeset in webkit [153652] by mario@webkit.org
  • 4 edits in trunk/Source

Implement atk_text_get_text_*_offset for WORD

Reviewed by Martin Robinson.


Re-implement this functions without using GailTextUtil nor Pango.

  • accessibility/atk/WebKitAccessibleInterfaceText.cpp:

(textForObject): Made the parameter a const, to avoid warnings.
(getSelectionOffsetsForObject): Add special cases for END boundaries.
(emptyTextSelectionAtOffset): Convenience function to be used in
early returns from functions returning both text and offsets.
(webkitAccessibleTextGetChar): Use emptyTextSelectionAtOffset(),
and remove checks that are now done outside of this function, in
(nextWordStartPosition): Helper function to reliably find the
start of the next word as and user would do it by navigating with
Ctrl and the arrows (considering spaces and punctuation).
(previousWordEndPosition): Similar to nextWordStartPosition, but
written to help find the end of the previous one.
(wordAtPositionForAtkBoundary): Helper function to find the word
at a given position considering values of AtkTextBoundary.
(numberOfReplacedElementsBeforeOffset): Helper function to help
figure out how many embedded objects we have exposed for an
AtkText object, used to adjust offsets coming from outside.
(webkitAccessibleTextGetWordForBoundary): New function,
implementing atk_text_get_text_*_offset for WORD.
(webkitAccessibleTextGetTextForOffset): Replace usage of Gail for
WORD boundaries with webkitAccessibleTextGetWordForBoundary().
Also, moved the initialization of the start and end offsets to the
bottom, into the gail/pango section, since those values will be
from now on initialized in getSelectionOffsetsForObject().
(webkitAccessibleTextGetSelection): Removed the initialization of
the start and end offsets, since those values will be from now on
initialized in getSelectionOffsetsForObject().


Updated current unit tests and add a new one specific for embedded
objects, to ensure we are covering even more cases than before.

  • tests/testatk.c:

(testWebkitAtkGetTextAtOffsetWithEmbeddedObjects): New.
(main): Added new test to the test suite.

8:52 AM Changeset in webkit [153651] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] REGRESSION after r153432: some accessibility tests crash.

Patch by Mario Sanchez Prada <mario.prada@samsung.com> on 2013-08-02
Reviewed by Gustavo Noronha Silva.

Add missing null-check to avoid dereferencing a non-existent parent.

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::attributesOfElement): Ditto.

8:40 AM Changeset in webkit [153650] by zarvai@inf.u-szeged.hu
  • 3 edits in trunk/Source/WebCore

Buildfix for !ENABLE(SVG) platforms after r153581.

Reviewed by Andreas Kling.

Adding missing guards.

  • css/StylePropertyShorthand.cpp:


  • css/StylePropertyShorthand.h:
8:18 AM Changeset in webkit [153649] by beidson@apple.com
  • 5 edits
    2 copies
    2 adds in trunk

REGRESSION (r130783): Scrolling is broken going back to a cached page from a page that still has outstanding subresources.
<rdar://problem/14601124> and https://bugs.webkit.org/show_bug.cgi?id=119416

Reviewed by Darin Adler.


Test: http/tests/loading/unfinished-load-back-to-cached-page-callbacks.html

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::stopLoading): Always explicitly cancel the Document parser when stopLoading is called.


  • http/tests/loading/resources/page-with-slow-loading-subresource.html: Added.
  • http/tests/loading/resources/slowimage.php: Added.
  • http/tests/loading/unfinished-load-back-to-cached-page-callbacks-expected.txt:
  • http/tests/loading/unfinished-load-back-to-cached-page-callbacks.html:
  • http/tests/loading/unfinished-main-resource-back-to-cached-page-callbacks-expected.txt: Copied from LayoutTests/http/tests/loading/unfinished-load-back-to-cached-page-callbacks-expected.txt.
  • http/tests/loading/unfinished-main-resource-back-to-cached-page-callbacks.html: Copied from LayoutTests/http/tests/loading/unfinished-load-back-to-cached-page-callbacks.html.
7:59 AM Changeset in webkit [153648] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

REGRESSION: ARM still crashes after change set r153612.

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-08-02
Reviewed by Michael Saboff.

Update call frame and do not restore registers from JIT stack frame in ARM and ARMv7
implementations of ctiVMThrowTrampolineSlowpath. This change is similar to r153583
for sh4 architecture.

  • jit/JITStubsARM.h:
  • jit/JITStubsARMv7.h:
7:58 AM Changeset in webkit [153647] by Antoine Quint
  • 36 edits
    4 adds in trunk

<input type="search"> doesn't correctly handle the "size" attribute


We weren't taking into account the decorations for search fields (results and close buttons)
when computing the preferred logical width for these fields based on the "size" attribute
and as a result we would not guarantee that we could show the number of characters set by
the "size" attribute.

To make the process of reporting extra width due to decorations cleaner, we add a new decorationWidth()
method for InputType subclasses to override and called through HTMLInputElement::decorationWidth()
and have NumberInputType and SearchInputType return custom decoration widths.

Reviewed by Darin Adler.

Test: fast/forms/search/search-size-with-decorations.html

  • html/HTMLInputElement.cpp:


  • html/HTMLInputElement.h:
  • html/InputType.cpp:


  • html/InputType.h:

Expose a new method to get the width for the input's decoration through the InputType.

  • html/NumberInputType.cpp:


  • html/NumberInputType.h:

Override InputType::decorationWidth() to return the decoration width for a number input
using the same code previously used in RenderTextControlSingleLine::preferredContentLogicalWidth().

  • html/SearchInputType.cpp:

Override InputType::sizeShouldIncludeDecoration() to return true since search fields
have custom decoration adding to the size of the field.

Return the combined size of the results and cancel buttons, as available.

  • html/SearchInputType.h:
  • rendering/RenderTextControlSingleLine.cpp:

Remove the code specific to NumberInputType (which was moved to InputType::decorationWidth())
and replace it with a call to HTMLInputElement::decorationWidth() since this method will now
return the extra decoration width for an input element should it have any.


New test fast/forms/search/search-size-with-decorations.html that checks the different
decorations for search fields and the resulting sizes.

Also rebaselining the following tests since the rendering of search fields changed:


Reviewed by Darin Adler.

  • fast/forms/placeholder-position-expected.txt:
  • fast/forms/search/search-size-with-decorations-expected.txt: Added.
  • fast/forms/search/search-size-with-decorations.html: Added.
  • fast/repaint/search-field-cancel-expected.txt:
  • platform/mac/fast/css/input-search-padding-expected.txt:
  • platform/mac/fast/css/text-overflow-input-expected.png:
  • platform/mac/fast/css/text-overflow-input-expected.txt:
  • platform/mac/fast/forms/box-shadow-override-expected.png:
  • platform/mac/fast/forms/box-shadow-override-expected.txt:
  • platform/mac/fast/forms/control-restrict-line-height-expected.png:
  • platform/mac/fast/forms/control-restrict-line-height-expected.txt:
  • platform/mac/fast/forms/input-appearance-height-expected.png:
  • platform/mac/fast/forms/input-appearance-height-expected.txt:
  • platform/mac/fast/forms/placeholder-position-expected.png:
  • platform/mac/fast/forms/placeholder-pseudo-style-expected.png:
  • platform/mac/fast/forms/placeholder-pseudo-style-expected.txt:
  • platform/mac/fast/forms/search-cancel-button-style-sharing-expected.png:
  • platform/mac/fast/forms/search-cancel-button-style-sharing-expected.txt:
  • platform/mac/fast/forms/search-display-none-cancel-button-expected.txt:
  • platform/mac/fast/forms/search-rtl-expected.png:
  • platform/mac/fast/forms/search-rtl-expected.txt:
  • platform/mac/fast/forms/search-styled-expected.txt:
  • platform/mac/fast/forms/search-vertical-alignment-expected.png:
  • platform/mac/fast/forms/search-vertical-alignment-expected.txt:
  • platform/mac/fast/forms/search/search-size-with-decorations-expected.png: Added.
  • platform/mac/fast/forms/searchfield-heights-expected.png:
  • platform/mac/fast/forms/searchfield-heights-expected.txt:
  • platform/mac/fast/repaint/search-field-cancel-expected.png:
7:46 AM Changeset in webkit [153646] by msaboff@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

REGRESSION(r153612): It made jsc and layout tests crash

Reviewed by Csaba Osztrogonác.

Made the changes if changeset r153612 only apply to 32 bit builds.

  • jit/JITExceptions.cpp:
  • jit/JITExceptions.h:
  • jit/JITStubs.cpp:


  • jit/JITStubs.h:
5:19 AM Changeset in webkit [153645] by Patrick Gansterer
  • 3 edits in trunk/Source/WebCore

[WIN] Fix build without precompiled header.

  • accessibility/win/AccessibilityObjectWrapperWin.h: Added missing include.
  • rendering/RenderThemeWin.cpp: Ditto.
4:37 AM Changeset in webkit [153644] by Patrick Gansterer
  • 2 edits in trunk/Source/JavaScriptCore

Add JSCTestRunnerUtils to the list of forwarding headers to fix build.

  • CMakeLists.txt:
3:49 AM Changeset in webkit [153643] by bw80.lee@samsung.com
  • 2 edits in trunk/Source/WebCore

Remove redundant call of argsList->current() from loops in CSSParser.

Reviewed by Christophe Dumez.

while loops in CSSParser call argList->current() function at the start
of each iteration, but this is redundant because argsList->next() at
the end of the iteration calls the argList->current() and returns the

Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=155402

  • css/CSSParser.cpp:


2:22 AM Changeset in webkit [153642] by akling@apple.com
  • 1 edit in trunk/Source/WebCore/ChangeLog

Correct bugzilla link in my last commit.

2:15 AM Changeset in webkit [153641] by akling@apple.com
  • 6 edits in trunk/Source/WebCore

Removing an empty style sheet shouldn't trigger style recalc.

Reviewed by Antti Koivisto.

Teach DocumentStyleSheetCollection to filter out empty style sheets when deciding whether
or not to trigger a style recalc. We can then be clever when an empty style sheet is removed
from the document, and avoid causing extra work.

Some pages use this pattern:

(1) Create a <style> element.
(2) Add it to the document's <head> element.
(3) Insert some CSS as a text child of the <style> element.

Since the <style> element is already inside the document at (3), we had to treat this as an
old style sheet being removed, even though it was just an empty sheet of nothing.

With this patch, Document gains enough smarts to know that removing/adding an empty sheet
won't affect layout/rendering in any meaningful way, thus a style recalc can be avoided.

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


Add a DeferRecalcStyleIfNeeded mode to styleResolverChanged().

  • css/CSSStyleSheet.h:
  • css/CSSStyleSheet.cpp:


Use DeferRecalcStyleIfNeeded when saying bye from a CSSStyleSheet and let Document decide
if removing the sheet should trigger style recalc instead of always assuming it should.

  • dom/DocumentStyleSheetCollection.cpp:


Exclude empty sheets from the activeAuthorStyleSheets() collection. They are still
visible through CSSOM's document.styleSheets.

1:58 AM Changeset in webkit [153640] by Alan Bujtas
  • 5 edits
    3 adds in trunk

Frame flattening: Change the logic on whether resize event needs to be dispatched.

Reviewed by Simon Fraser.

http://trac.webkit.org/changeset/149287 changed the logic so that resize events are
sent out from FrameView::setFrameRect() too. Checking whether frame flattening is
enabled is sufficient enough to ensure that no extra resize events are dispatched.


Test: fast/frames/flattening/iframe-flattening-resize-event-count.html

  • page/FrameView.cpp:


  • page/FrameView.h:
  • rendering/RenderFrameBase.cpp:



  • fast/frames/flattening/iframe-flattening-resize-event-count-expected.txt: Added.
  • fast/frames/flattening/iframe-flattening-resize-event-count.html: Added.
  • fast/frames/flattening/resources/iframe-to-resize.html: Added.
1:32 AM Changeset in webkit [153639] by Patrick Gansterer
  • 2 edits in trunk/Tools

Add --rmdir option to git svn dcommit

Reviewed by Ryosuke Niwa.

Add this option tells git-svn to remove empty directories
from the svn tree so they do not leave over there.

  • Scripts/webkitpy/common/checkout/scm/git.py:


1:20 AM Changeset in webkit [153638] by mikhail.pozdnyakov@intel.com
  • 2 edits in trunk/Source/WTF

Check WTF::Vector size with '0' inline capacity

Reviewed by Andreas Kling.

Putting in place the compile assertion that had been removed with r153514.

  • wtf/SizeLimits.cpp:
12:51 AM Changeset in webkit [153637] by mrowe@apple.com
  • 2 edits in trunk/Source/WTF

<http://webkit.org/b/119169> RetainPtr should support ARC for Objective-C objects.

While RetainPtr is not necessary under ARC, having it available makes it easier to transition
existing code from manual retain / release to ARC.

Under ARC, the object member of RetainPtr is treated as a strong reference by the compiler.
This means that merely assigning to the member variable is sufficient to retain the object,
and clearing the member variable is sufficient to release it. We still need to explicitly
CFRetain / CFRelease CoreFoundation types so the explicit calls to these functions are
moved in to helper functions and overloading is used to have the Objective-C object versions
of them be no-ops under ARC.

Reviewed by Anders Carlsson.

  • wtf/RetainPtr.h:

(WTF::retain): Continue to always CFRetain / CFRelease CoreFoundation objects. Only CFRetain / CFRelease
Objective-C objects when using manual retain / release.
(WTF::release): Ditto.
(WTF::adoptNSReference): Adopting references will be handled automatically by the compiler
when possible under ARC by eliminating redundant retain / release pairs.
(WTF::RetainPtr::ImplicitConversionToBoolIsNotAllowed): A new method that exists only to be used by the
conversion to the unspecified bool type.
(WTF::RetainPtr::operator UnspecifiedBoolType): Switch to using a pointer to a member function as the
unspecified bool type to avoid warnings from the compiler when casting Objective-C object types under ARC.

(WTF::RetainPtr::RetainPtr): Switch to our retain / release helper functions.
(WTF::RetainPtr::~RetainPtr): Ditto.
(WTF::::RetainPtr): Ditto.
(WTF::::clear): Ditto.
(WTF::=): Ditto.
(WTF::adoptCF): Annotate the argument with CF_RELEASES_ARGUMENT on both the declaration and the definition.

Aug 1, 2013:

11:09 PM Changeset in webkit [153636] by mrowe@apple.com
  • 2 edits in trunk/Source/WTF

<rdar://problem/14235491> FastMalloc zone enumerator responding to MALLOC_PTR_REGION_RANGE_TYPE with individual allocations

Teach PageMapMemoryUsageRecorder::recordPendingRegions to only record data of the type that it's asked for.
This also fixes the vmmap output to associate some regions with the FastMalloc malloc zone that were previously
associated with it only via the VM tag, meaning they were incorrectly being omitted from the malloc statistics
section of the report.

Reviewed by Dan Bernstein.

  • wtf/FastMalloc.cpp:

(WTF::PageMapMemoryUsageRecorder::recordPendingRegions): Report the individual allocations only when requested. Add
the ability to report the regions containing pointers separately from the allocations.

11:01 PM Changeset in webkit [153635] by mrowe@apple.com
  • 2 edits in trunk/Source/WTF

<rdar://problem/14528244> False-positive leaks from FastMalloc.

A logic error in the page map enumeration code within FastMalloc could result in a subset of the memory regions
owned by FastMalloc being skipped by the malloc zone enumeration code used by leaks and other performance tools.
If the only reference to an allocated object lived within one of the skipped memory regions, leaks would believe
it had been leaked since it would not find any references to the object.

The logic error manifested when a FastMalloc span owned a region of memory that crossed a 16MB address space boundary,
and when there was one or more other spans immediately after it in the address space. Crossing the 16MB address space
boundary means that the start and end points of the span are in different leaf nodes of the page map trie, and the
code within the page map's visitValues method didn't correctly account this case when skipping to the end of the span
after visiting it. It would resume iterating from the start of the next leaf node rather than continuing to skip values
until the end of the span was passed. The value representing the end of the span would then be processed as if it were
the start of a new span, and more values would be skipped even though they may contain actual spans.

The solution is to rework the algorithm used in visitValues so that it will skip the correct number of values even when
some of the values are in different leaf nodes. This is a more involved change than it may seem since it's also necessary
to deal with the case where a memory region spans two separate root nodes, which can happen if the region happens to cross
a 64GB boundary in the address space.

Reviewed by Geoff Garen.

  • wtf/TCPageMap.h:

(TCMalloc_PageMap3::visitValues): Use a single loop to iterate, with the loop index being the key in to the page map in the
same form as used by get and set. This allows us to correctly deal with the index being skipped to a different intermediate or
root node as a result of visiting a span that crosses a 16MB boundary in memory.
(TCMalloc_PageMap2::visitValues): Ditto, but without having to deal with intermediate nodes.

7:39 PM Changeset in webkit [153634] by commit-queue@webkit.org
  • 3 edits
    2 deletes in trunk

Unreviewed, rolling out r153608.

Snorkled fast/multicol/overflow-content-expected.html
(Requested by kling on #webkit).


  • css/StyleResolver.cpp:



  • fast/css/identical-logical-height-decl-expected.html: Removed.
  • fast/css/identical-logical-height-decl.html: Removed.
7:07 PM Changeset in webkit [153633] by commit-queue@webkit.org
  • 14 edits in trunk/Source

[Forms: color] <input type='color'> popover color well implementation
<rdar://problem/14411008> and https://bugs.webkit.org/show_bug.cgi?id=119356

Patch by Ruth Fong <ruth_fong@apple.com> on 2013-08-01
Reviewed by Benjamin Poulain.


  • Configurations/FeatureDefines.xcconfig: Added and enabled INPUT_TYPE_COLOR_POPOVER.


  • Configurations/FeatureDefines.xcconfig: Added and enabled INPUT_TYPE_COLOR_POPOVER.


  • Configurations/FeatureDefines.xcconfig: Added and enabled INPUT_TYPE_COLOR_POPOVER.


This patch adds an popover implementation of <input type='color'>.

  • Configurations/FeatureDefines.xcconfig: Added and enabled INPUT_TYPE_COLOR_POPOVER.
  • UIProcess/API/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::createColorPicker): Updated to pass the

coordinates of the <input type='color'> element and the WKView
object for the window.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::viewWillStartLiveResize): Close popover color

picker when the view is resized.

(WebKit::WebPageProxy::viewInWindowStateDidChange): Close popover color

picker when the view is no longer in the window.

(WebKit::WebPageProxy::showColorPicker): Updated to show either a color panel

or a popover color picker depending on whether INPUT_TYPE_COLOR_POPOVER is enabled.

  • UIProcess/mac/WebColorPickerMac.h:
  • UIProcess/mac/WebColorPickerMac.mm:

Methods updated to handle both the color panel implementation and

the popover implementation; also renamed m_panel to m_colorPickerUI.

(-[WKColorPopoverMac initWithFrame:WebCore::inView:]):
(-[WKColorPopoverMac setAndShowPicker:WebKit::withColor:]):
(-[WKColorPopoverMac dealloc]):
(-[WKColorPopoverMac invalidate]):
(-[WKColorPopoverMac windowWillClose:]):
(-[WKColorPopoverMac didChooseColor:]):
(-[WKColorPopoverMac setColor:]):
WKColorPopoverMac provides the popover implementation of <input type='color'>.

(-[WKColorPanelMac didChooseColor:]): Updated to match the interface of



  • wtf/FeatureDefines.h: Added and enabled INPUT_TYPE_COLOR_POPOVER.
6:57 PM Changeset in webkit [153632] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

FormAssociatedElement shouldn't create out-of-tree FormAttributeTargetObserver

Reviewed by Kent Tamura.

Merge https://chromium.googlesource.com/chromium/blink/+/6fbdcbf311de539107bc28711b3f7a527176e97b.

I'm not merging the test since the attached test case only works when the shadow DOM API is enabled.

  • html/FormAssociatedElement.cpp:


6:00 PM Changeset in webkit [153631] by rwlbuis@webkit.org
  • 11 edits
    6 adds in trunk

selectors should match attribute name with case sensitivity based on element & document type

Reviewed by Darin Adler.


Support case-sensitive attribute name selecting for non HTML. In order to do this we have to
store the attribute name in the selector as-is when css parsing, and get the lowercase localName
on demand for case-insensitive matching. The only time we want case-insensitive matching is when
we try to match a HTML element in a HTML document.

Tests: fast/dom/SelectorAPI/attrname-case-insensitive.html


  • css/CSSGrammar.y.in: do not lowercase attribute selector name.
  • css/CSSParserValues.h:


  • css/CSSSelector.cpp:


  • css/CSSSelector.h: allow access to lowered version of attribute localName if needed.


  • css/SelectorChecker.cpp:

(WebCore::anyAttributeMatches): do only case-insensitive matching for HTML.

  • css/SelectorChecker.h:

(WebCore::SelectorChecker::checkExactAttribute): do only case-insensitive matching for HTML.

  • css/SelectorCheckerFastPath.cpp:


  • css/SelectorCheckerFastPath.h:


  • dom/Attribute.h:

(WebCore::Attribute::matches): use more convenient parameters.


Results matches FireFox nightly.

  • fast/dom/SelectorAPI/attrname-case-insensitive-expected.txt: Added.
  • fast/dom/SelectorAPI/attrname-case-insensitive.html: Check that in HTML documents CSS selectors

use case-insensitive attribute name matching for HTML elements, case-sensitive otherwise.

  • fast/dom/SelectorAPI/attrname-case-sensitive-expected.txt: Added.
  • fast/dom/SelectorAPI/attrname-case-sensitive.xhtml: Check that in XHTML documents CSS selectors

always use case-sensitive attribute name matching.

  • svg/css/case-sensitive-attrname-selectors-expected.txt: Added.
  • svg/css/case-sensitive-attrname-selectors.html: Check that in HTML documents CSS selectors in stylesheets

use case-insensitive attribute name matching for HTML elements, case-sensitive otherwise.

5:44 PM Changeset in webkit [153630] by mark.lam@apple.com
  • 4 edits in branches/safari-537-branch

Bot greening. Merge r153629.

2013-08-01 Alexey Proskuryakov <ap@apple.com>

<rdar://problem/14625616> http/tests/download/basic-ascii.html and http/tests/download/literal-utf-8.html fails

Changed the PHP files to not have a BOM, which confuses some versions of PHP.
They are both ASCII anyway.

  • http/tests/download/resources/basic-ascii.php:
  • http/tests/download/resources/literal-utf-8.php:
5:23 PM Changeset in webkit [153629] by ap@apple.com
  • 3 edits in trunk/LayoutTests

<rdar://problem/14625616> http/tests/download/basic-ascii.html and http/tests/download/literal-utf-8.html fails

Changed the PHP files to not have a BOM, which confuses some versions of PHP.
They are both ASCII anyway.

  • http/tests/download/resources/basic-ascii.php:
  • http/tests/download/resources/literal-utf-8.php:
5:07 PM Changeset in webkit [153628] by Brent Fulgham
  • 11 edits in trunk

[Windows] WebKit1 Fullscreen Video Play is Broken

Reviewed by Jer Noble.


  • platform/graphics/avfoundation/cf/AVFoundationCFSoftLinking.h: Add

call for ACFPlayerLayerSetFrame

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

Tear down video player when leaving Fullscreen mode and not using
the newer Fullscreen feature.
Disconnect from notifications for AVCFPlayerItemPresentationSizeChangedNotification,
AVCFPlayerItemDuratoinChangedNotification, and disconnect any
LegibleOutput items added to the player item.
(WebCore::AVFWrapper::createPlayerItem): Add notifications for
(WebCore::LayerClient::platformCALayerLayoutSublayersOfLayer): Notify
the AVCFPLayerLayer when the display size has changed.

  • platform/graphics/ca/win/CACFLayerTreeHost.h:

(WebCore::CACFLayerTreeHost::manualCreateRenderer): Added.

  • platform/graphics/ca/win/WKCACFViewLayerTreeHost.h:

(WebCore::WKCACFViewLayerTreeHost::manualCreateRenderer): Added.

  • platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:

(WebCore::MediaPlayerPrivateFullscreenWindow::createWindow): Minor
Make sure a Direct3D renderer is created when building the full screen
window for Video playback.


  • WebPreferences.cpp:

(WebPreferences::initializeDefaultSettings): Set accelerated
rendering on by default on systems that support it.

  • WebView.cpp:

(WebView::exitFullscreen): Clean up Fullscreen video controller
once it is no longer used. This was preventing users from being
able to reenter Fullscreen mode after leaving it.
(WebView::fullScreenClientForceRepaint): Change assert to
match the member actually being used in the method.


  • WinLauncher/WinLauncher.cpp:

(dllLauncherEntryPoint): Activate full screen mode via
IWebPreferencesInternal interface.

5:02 PM Changeset in webkit [153627] by dino@apple.com
  • 5 edits
    12 adds in trunk

srcset algorithm breaks base64 src attributes

Reviewed by Darin Adler.


Base64 encoded src attributes typically have a COMMA
character which was breaking in the candidate matching
algorithm. Make sure to handle that case, and to unescape
any incoming URLs.

Slight cleanup of the srcset matching algorithm. The
candidates are now gathered from a single update
method. I've renamed the methods in the process.
This means we now reparse the srcset attribute if
only the src changes, but I think the code is
cleaner this way.

Tests: fast/hidpi/image-srcset-data-src.html


  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::HTMLImageElement): No need to initialise m_bestFitImageURL.
(WebCore::HTMLImageElement::imageSourceURL): Use isEmpty() rather than checking for nullAtom.
(WebCore::HTMLImageElement::determineBestImageForScaleFactor): New renamed method that selects the best
candidate for the image source.
(WebCore::HTMLImageElement::collectImageCandidatesFromSrcSet): Gather the srcset images. Changes include
simplifying the whitespace and skipping candidates that we don't yet support.
(WebCore::HTMLImageElement::collectImageCandidateFromSrc): Add the src attribute to the list of candidates.
(WebCore::HTMLImageElement::parseAttribute): Now both attributes call determineBestImageForScaleFactor.

  • html/HTMLImageElement.h: No need for m_srcImageIndex any more.


Four new tests that exercise candidate matching. In particular:

  • base64 encoded src attributes
  • base64 encoded srcset attributes that are escaped
  • attributes without scale modifiers
  • attributes that have modifiers other than scale
  • fast/hidpi/image-srcset-change-dynamically-from-js.html: Minor change to add scale modifier.
  • fast/hidpi/image-srcset-data-src.html: Added.
  • fast/hidpi/image-srcset-data-srcset.html: Added.
  • fast/hidpi/image-srcset-nomodifier.html: Added.
  • fast/hidpi/image-srcset-viewport-modifiers.html: Added.
  • platform/mac/fast/hidpi/image-srcset-data-src-expected.png: Added.
  • platform/mac/fast/hidpi/image-srcset-data-src-expected.txt: Added.
  • platform/mac/fast/hidpi/image-srcset-data-srcset-expected.png: Added.
  • platform/mac/fast/hidpi/image-srcset-data-srcset-expected.txt: Added.
  • platform/mac/fast/hidpi/image-srcset-nomodifier-expected.png: Added.
  • platform/mac/fast/hidpi/image-srcset-nomodifier-expected.txt: Added.
  • platform/mac/fast/hidpi/image-srcset-viewport-modifiers-expected.png: Added.
  • platform/mac/fast/hidpi/image-srcset-viewport-modifiers-expected.txt: Added.
5:02 PM Changeset in webkit [153626] by Lucas Forschler
  • 3 edits
    3 copies in branches/safari-537-branch

Merged r153615. <rdar://problem/14625273>

5:01 PM Changeset in webkit [153625] by dino@apple.com
  • 12 edits
    3 adds in trunk/LayoutTests

Minor cleanup for srcset tests

Reviewed by Tim Horton.

Other than small typos and style tweaks, there are three
main changes here:

  1. Collect duplicated code into a helper file.
  2. Make sure the tests that add or remove the attributes

can run standalone outside of DRT.

  1. Update the -simple test with new images that make it

more clear what srcset is doing.

  • fast/hidpi/image-srcset-change-dynamically-from-js.html:
  • fast/hidpi/image-srcset-invalid-inputs-correct-src.html:
  • fast/hidpi/image-srcset-invalid-inputs-except-one.html:
  • fast/hidpi/image-srcset-invalid-inputs.html:
  • fast/hidpi/image-srcset-only-src-attribute.html:
  • fast/hidpi/image-srcset-remove-dynamically-from-js.html:
  • fast/hidpi/image-srcset-same-alternative-for-both-attributes.html:
  • fast/hidpi/image-srcset-simple.html:
  • fast/hidpi/image-srcset-src-selection.html:
  • fast/hidpi/resources/image-set-1x.png: Added.
  • fast/hidpi/resources/image-set-2x.png: Added.
  • fast/hidpi/resources/srcset-helper.js: Added.
  • platform/mac/fast/hidpi/image-srcset-simple-expected.png:
  • platform/mac/fast/hidpi/image-srcset-simple-expected.txt:
5:00 PM Changeset in webkit [153624] by dino@apple.com
  • 6 edits
    27 adds in trunk

Implement img element's srcset attribute

Patch by Romain Perier <Romain Perier> on 2013-08-01
Reviewed by Dean Jackson.


Tests: fast/hidpi/image-srcset-simple.html


  • html/HTMLAttributeNames.in: Add srcset attribute.
  • html/HTMLImageElement.cpp:

Adding initialization for new variables member.
Override this method to return the choosen image transparently to the ImageLoader.
New method to select the good image candidate dependending on the scale factor. This method is separated from
parsing because it will be useful for selecting a new image candidate on the fly if the device scale factor changes.
New method for parsing the srcset attribute and build a list of images with the corresponding scale factor.
Adding support for processing the image candidates, select the good one and call ImageLoader for rendering.

  • html/HTMLImageElement.h:
  • Adding new methods declarations.
  • Adding new type definition.
  • Adding new variable member to store the URL of the choosen image.
  • Adding new variable member to store the index of the src image.
  • Adding new Vector to store the list of images after parsing.
  • html/HTMLImageElement.idl: Adding srcset attribute for the differents existing bidings.


  • fast/hidpi/image-srcset-simple.html: Ensures that the good image

is selected from srcset by the user agent according to the choosen scale factor.

  • fast/hidpi/image-srcset-src-selection.html: Ensures that the image

from the src attribute is collected by the parsing algorithm and selected by the user agent
when no other candidate matches the scale factor.

  • fast/hidpi/image-srcset-only-src-attribute.html: Ensures that the algorithms used for srcset

does not change the behaviour of the src attribute when the srcset attribute is not defined,
even using scale factor greater than 1.

  • fast/hidpi/image-srcset-same-alternative-for-both-attributes.html: Ensures that the good image

is selected by the user agent when src and srcset contain an image with a scale factor of 1.

  • fast/hidpi/image-srcset-invalid-inputs.html: Ensures that the parsing and the selection

algorithms support invalid inputs. Theses ones are simply ignored.

  • fast/hidpi/image-srcset-invalid-inputs-except-one.html: Ensures that a valid image

is selected even if this one is part of a set containing invalid inputs.

  • fast/hidpi/image-srcset-invalid-inputs-correct-src.html: Ensures that the image from

the src attribute is choosen when srcset contains only invalid inputs, this selection
should not depend on the scale factor.

  • fast/hidpi/image-srcset-change-dynamically-from-js.html: Ensures that src and srcset attributes

can be changed dynamically from javascript.

  • fast/hidpi/image-srcset-remove-dynamically-from-js.html: Ensures that src attribute

can be removed dynamically from javascript.

  • platform/mac/fast/hidpi/image-srcset-simple-expected.png:
  • platform/mac/fast/hidpi/image-srcset-simple-expected.txt:
  • platform/mac/fast/hidpi/image-srcset-src-selection-expected.png:
  • platform/mac/fast/hidpi/image-srcset-src-selection-expected.txt:
  • platform/mac/fast/hidpi/image-srcset-only-src-attribute-expected.png:
  • platform/mac/fast/hidpi/image-srcset-only-src-attribute-expected.txt:
  • platform/mac/fast/hidpi/image-srcset-same-alternative-for-both-attributes-expected.png:
  • platform/mac/fast/hidpi/image-srcset-same-alternative-for-both-attributes-expected.txt:
  • platform/mac/fast/hidpi/image-srcset-invalid-inputs-expected.png:
  • platform/mac/fast/hidpi/image-srcset-invalid-inputs-expected.txt:
  • platform/mac/fast/hidpi/image-srcset-invalid-inputs-except-one-expected.png:
  • platform/mac/fast/hidpi/image-srcset-invalid-inputs-except-one-expected.txt:
  • platform/mac/fast/hidpi/image-srcset-invalid-inputs-correct-src-expected.png:
  • platform/mac/fast/hidpi/image-srcset-invalid-inputs-correct-src-expected.txt:
  • platform/mac/fast/hidpi/image-srcset-change-dynamically-from-js-expected.png:
  • platform/mac/fast/hidpi/image-srcset-change-dynamically-from-js-expected.txt:
  • platform/mac/fast/hidpi/image-srcset-remove-dynamically-from-js-expected.png:
  • platform/mac/fast/hidpi/image-srcset-remove-dynamically-from-js-expected.txt:
4:44 PM Changeset in webkit [153623] by Bem Jones-Bey
  • 2 edits
    2 adds
    4 deletes in trunk/LayoutTests

[CSS Shapes] New positioning model: support for stacked floats with shape-outside

Reviewed by Alexandru Chiculita.

Import new test for stacked floats from the CSSWG's repository to
replace the old tests. The simple horizontal rectangle test is no
longer applicable now that float stacking ignores shapes, so it has
just been removed.

  • TestExpectations: Remove skipping for replaced tests.
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-stacked-000-expected.html: Added.
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-stacked-000.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-rectangle-horizontal-multiple-expected.html: Removed.
  • fast/shapes/shape-outside-floats/shape-outside-floats-simple-rectangle-horizontal-multiple.html: Removed.
  • fast/shapes/shape-outside-floats/shape-outside-floats-stacked-expected.html: Removed.
  • fast/shapes/shape-outside-floats/shape-outside-floats-stacked.html: Removed.
4:17 PM Changeset in webkit [153622] by Bem Jones-Bey
  • 4 edits in trunk/LayoutTests

Update polygon shape-outside tests for upstream changes

Reviewed by Alexandru Chiculita.

The refs were updated upstream to make them work properly in Blink.
This pulls in that change to keep things in sync.

  • csswg/submitted/shapes/shape-outside/shape-outside-floats-polygon-001-expected.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-polygon-001.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-polygon-002-expected.html:
3:53 PM Changeset in webkit [153621] by Lucas Forschler
  • 3 edits in branches/safari-537-branch/Source/JavaScriptCore

Merge patch for <rdar://problem/14527940>.

3:42 PM Changeset in webkit [153620] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebCore

Merged r153595. <rdar://problem/14615802>

3:40 PM Changeset in webkit [153619] by Lucas Forschler
  • 3 edits
    4 copies in branches/safari-537-branch

Merged r153553. <rdar://problem/14612613>

3:36 PM Changeset in webkit [153618] by ChangSeok Oh
  • 2 edits in trunk/Tools

Unreviewed. Add an alternative address to show my affiliation in team.html.

  • Scripts/webkitpy/common/config/contributors.json:
3:34 PM Changeset in webkit [153617] by Lucas Forschler
  • 3 edits in branches/safari-537-branch/Source/WTF

Merged r153514. <rdar://problem/14598360>

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

Lots of leaks under WebContext::pluginInfoStoreDidLoadPlugins()

Reviewed by Simon Fraser.

For some sick reason, the WKContextClient plugInInformationBecameAvailable callback function
expects a +1 reference to the plug-in array. Isolate that hack to WebContextClient so that
we don't leak the array if there is no WKContextClient.

  • UIProcess/WebContext.cpp:


  • UIProcess/WebContextClient.cpp:


3:18 PM Changeset in webkit [153615] by oliver@apple.com
  • 3 edits
    3 adds in trunk

DFG is not enforcing correct ordering of ToString conversion in MakeRope

Reviewed by Filip Pizlo.


Construct ToString and Phantom nodes in advance of MakeRope
nodes to ensure that ordering is ensured, and correct values
will be reified on OSR exit.

  • dfg/DFGByteCodeParser.cpp:



Add tests

  • fast/js/dfg-make-rope-side-effects-expected.txt: Added.
  • fast/js/dfg-make-rope-side-effects.html: Added.
  • fast/js/script-tests/dfg-make-rope-side-effects.js: Added.


3:15 PM Changeset in webkit [153614] by Lucas Forschler
  • 3 edits in branches/safari-537-branch/Source/WebKit2

Merged r153499. <rdar://problem/14267833>

3:14 PM Changeset in webkit [153613] by fpizlo@apple.com
  • 4 edits
    3 adds in trunk

DFG optimizations don't handle neutered arrays properly

Reviewed by Mark Hahnenberg and Oliver Hunt.


Test: fast/js/dfg-typed-array-neuter.

  • bindings/js/SerializedScriptValue.cpp:


  • bindings/js/SerializedScriptValue.h:


  • fast/js/dfg-typed-array-neuter-expected.txt: Added.
  • fast/js/dfg-typed-array-neuter.html: Added.
  • fast/js/script-tests/dfg-typed-array-neuter.js: Added.


2:57 PM Changeset in webkit [153612] by msaboff@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

REGRESSION: Crash beneath cti_vm_throw_slowpath due to invalid CallFrame pointer

Reviewed by Filip Pizlo.

Ensure that ExceptionHandler is returned by functions in two registers by encoding the value as a 64 bit int.

  • jit/JITExceptions.cpp:


  • jit/JITExceptions.h:
  • jit/JITStubs.cpp:


  • jit/JITStubs.h:
2:50 PM Changeset in webkit [153611] by kseo@webkit.org
  • 2 edits in trunk/Source/WebKit2

Remove return statement in void function

Reviewed by Darin Adler.

It does not make sense to return a value in void function.

  • WebProcess/WebProcess.cpp:


2:48 PM Changeset in webkit [153610] by kseo@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2] Add USE(SOUP) guard in WebProcess::destroyPrivateBrowsingSession

Reviewed by Darin Adler.

The is a followup to r153355. I missed to add USE(SOUP) guard in

  • WebProcess/WebProcess.cpp:


2:41 PM Changeset in webkit [153609] by Simon Fraser
  • 2 edits in trunk/Source/WTF

REGRESSION(r145592): AutodrainedPool.h. RunLoopTimer.h, SchedulePair.h are being copied into the wrong location

Reviewed by Sam Weinig.

AutodrainedPool.h and SchedulePair.h should just be project headers, not
private headers, so they get copied into <build dir>/usr/local/include/wtf
not <build dir>/usr/local/include

  • WTF.xcodeproj/project.pbxproj:
2:25 PM Changeset in webkit [153608] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

REGRESSION (Safari 6 - ToT): Incorrectly assumes that RenderStyle data can be shared


Before sharing CSS properties with an element in the cache, we need to
check that the new element is suitable for this, just like we check
elements before inserting them into the cache.

Patch by Morten Stenshorne <mstensho@opera.com> on 2013-08-01
Reviewed by Andreas Kling.

Test: fast/css/identical-logical-height-decl.html

  • css/StyleResolver.cpp:



Patch by Morten Stenshorne <mstensho@opera.com> on 2013-08-01
Reviewed by Andreas Kling.

  • fast/css/identical-logical-height-decl-expected.html: Added.
  • fast/css/identical-logical-height-decl.html: Added.
2:13 PM Changeset in webkit [153607] by mark.lam@apple.com
  • 29 edits in trunk/Source/WebCore

Fixed expected test results for run-bindings-tests after r153532, r153537.

Reviewed by Simon Fraser.

No new tests.

  • bindings/scripts/test/JS/JSFloat64Array.cpp:


  • bindings/scripts/test/JS/JSFloat64Array.h:
  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:


  • bindings/scripts/test/JS/JSTestActiveDOMObject.h:
  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:


  • bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:


  • bindings/scripts/test/JS/JSTestEventConstructor.h:
  • bindings/scripts/test/JS/JSTestEventTarget.cpp:


  • bindings/scripts/test/JS/JSTestEventTarget.h:
  • bindings/scripts/test/JS/JSTestException.cpp:


  • bindings/scripts/test/JS/JSTestException.h:
  • bindings/scripts/test/JS/JSTestInterface.cpp:


  • bindings/scripts/test/JS/JSTestInterface.h:
  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:


  • bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:


  • bindings/scripts/test/JS/JSTestNamedConstructor.h:
  • bindings/scripts/test/JS/JSTestNode.cpp:


  • bindings/scripts/test/JS/JSTestNode.h:
  • bindings/scripts/test/JS/JSTestObj.cpp:


  • bindings/scripts/test/JS/JSTestObj.h:
  • bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:


  • bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:


  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
  • bindings/scripts/test/JS/JSTestTypedefs.cpp:


  • bindings/scripts/test/JS/JSTestTypedefs.h:
2:07 PM Changeset in webkit [153606] by Simon Fraser
  • 2 edits in trunk/LayoutTests

Mark some ref tests that sometimes file becaues of colorspace
issues as both Pass and ImageOnlyFailure.

  • platform/mac/TestExpectations:
2:01 PM Changeset in webkit [153605] by Lucas Forschler
  • 3 edits in branches/safari-537-branch/Source/WebCore

Merged r153494. <rdar://problem/14588132>

1:56 PM Changeset in webkit [153604] by Lucas Forschler
  • 4 edits in branches/safari-537-branch/Source/WebKit2

Merged r153488. <rdar://problem/13368226>

1:54 PM Changeset in webkit [153603] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebKit2

Merged r153482. <rdar://problem/14582393>

1:34 PM Changeset in webkit [153602] by jer.noble@apple.com
  • 3 edits in trunk/LayoutTests

REGRESSION (r153448) video-controls-captions-trackmenu.html is failing

Reviewed by Simon Fraser.

Call showMenu() before attempting to click on the caption menu items.

  • media/video-controls-captions-trackmenu.html:
  • platform/mac/TestExpectations:
1:24 PM Changeset in webkit [153601] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

Copy eglplatform.h to be found by Windows WebGL build.

Reviewed by Brent Fulgham.

  • WebCore.vcxproj/WebCorePreBuild.cmd: Copy eglplatform.h.
1:21 PM Changeset in webkit [153600] by achristensen@apple.com
  • 3 edits in trunk/Source/ThirdParty/ANGLE

Fixed wrong static_casting in ANGLE from r153064.

Reviewed by Dean Jackson.

  • src/compiler/Intermediate.cpp:

Undid erroneous static_cast change.

  • src/compiler/intermediate.h:

Made getters use size_t instead of int.

1:10 PM Changeset in webkit [153599] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Crash in WebCore:  WebCore::AudioSession::beganAudioInterruption + 62

Reviewed by Eric Carlson.

Unregister for AudioSession interruption events when being destroyed.

  • platform/audio/ios/AudioDestinationIOS.cpp:


1:04 PM Changeset in webkit [153598] by Beth Dakin
  • 26 edits
    2 deletes in branches/safari-537-branch

<rdar://problem/14616729> REGRESSION (r144350): Overflow bounding boxes are way
too big; prevents VoiceOver taps from activating the right elements

Reviewed by Darin Adler.


This is a partial-rollout of http://trac.webkit.org/changeset/144350 which is the
change that caused this regression. This patch rolls out most of that patch, and
it only leaves in the part that added a paintContainer variable to PaintInfo since
that is now used in other places in the code. All uses of the paintContainer that
were added with this patch have been removed since they contribute to the

  • rendering/RenderBlock.cpp:


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


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


  • rendering/RenderInline.h:
  • rendering/RenderLineBoxList.cpp:


  • rendering/RenderListBox.cpp:


  • rendering/RenderListBox.h:
  • rendering/RenderObject.cpp:


  • rendering/RenderObject.h:


  • rendering/RenderReplaced.cpp:


  • rendering/RenderTable.cpp:


  • rendering/RenderTableRow.cpp:


  • rendering/RenderTableSection.cpp:


  • rendering/RenderTextControl.cpp:


  • rendering/RenderTextControl.h:
  • rendering/RenderWidget.cpp:


  • rendering/svg/RenderSVGContainer.cpp:


  • rendering/svg/RenderSVGContainer.h:
  • rendering/svg/RenderSVGImage.cpp:


  • rendering/svg/RenderSVGImage.h:
  • rendering/svg/RenderSVGShape.cpp:


  • rendering/svg/RenderSVGShape.h:


Rollout http://trac.webkit.org/changeset/144350

  • compositing/sub-layer-focus-ring-expected.html: Removed.
  • compositing/sub-layer-focus-ring.html: Removed.
12:39 PM Changeset in webkit [153597] by Lucas Forschler
  • 1 edit in branches/safari-537-branch/LayoutTests/ChangeLog

Rollout of r153596, it had already been merged.

12:33 PM Changeset in webkit [153596] by Lucas Forschler
  • 1 edit in branches/safari-537-branch/LayoutTests/ChangeLog

Merged r153498. <rdar://problem/14597172>

12:19 PM Changeset in webkit [153595] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Layout should force a StyleResolver rebuild if there isn't one at all.

Reviewed by Antti Koivisto.

We can't tell if viewport-dependent media queries have been invalidated at layout,
unless we have a StyleResolver to ask about this.
In case there isn't one, take the same path as we would with an invalidated query
instead of relying on ensureStyleResolver() to build it.

  • page/FrameView.cpp:


11:58 AM Changeset in webkit [153594] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

Crashing Test: fast/forms/color/input-color-onchange-event.html
<rdar://problem/14621667> and https://bugs.webkit.org/show_bug.cgi?id=119403

Patch by Ruth Fong <ruth_fong@apple.com> on 2013-08-01
Reviewed by Tim Horton.

  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:
11:43 AM Changeset in webkit [153593] by Antoine Quint
  • 1 edit in trunk/Tools/Scripts/webkitpy/common/config/contributors.json

Adding myself to list of reviewers since I am one (see https://www.webkit.org/blog/2691/antoine-quint-is-now-a-webkit-reviewer/).

11:12 AM Changeset in webkit [153592] by zhajiang@rim.com
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Crash at absoluteClippedOverflowRect() in PluginView::calculateClipRect()

Patch by Jacky Jiang <zhajiang@blackberry.com> on 2013-08-01.
Reviewed by George Staikos.

JIRA 462881
The renderer of the PluginView's element has been detached due to transition
to a new load. We should return an empty contentRect if there even isn't
a renderer. This is a speculative fix based on the stack trace provided.

  • plugins/blackberry/PluginViewBlackBerry.cpp:


10:59 AM Changeset in webkit [153591] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Unavailable plug-in indicator arrow should be inside the rounded rect, not in its own circle

Reviewed by Anders Carlsson.

  • rendering/RenderEmbeddedObject.cpp:

Shift the arrow in by 9px, and make the text's rounded rect include it,
instead of having the arrow in a separate circle.

10:39 AM Changeset in webkit [153590] by Bem Jones-Bey
  • 2 edits in trunk/Tools

Duplicate property names can cause test to fail

Reviewed by Dirk Pranke.

This problem was noticed when porting the patch for
http://wkb.ug/119357 to Blink: a test would fail because the converted
and test property lists weren't the same length, but they contained
all of the same property names. It looks like this is actually caused
by a bug in converting the HTML, which is being currently rewritten.
In the meantime, as long as this compares the number of unique
properties, it makes the test more robust.

  • Scripts/webkitpy/w3c/test_converter_unittest.py:


10:07 AM Changeset in webkit [153589] by Patrick Gansterer
  • 2 edits
    1 add
    1 delete in trunk/Source/WebCore

Merge FrameWinCE into FrameWin

Reviewed by Brent Fulgham.

Reuse the code from FrameWin.cpp instead of duplicating it.

  • PlatformWinCE.cmake:
  • page/win/FrameGdiWin.cpp: Added.


  • page/wince/FrameWinCE.cpp: Removed.
9:53 AM Changeset in webkit [153588] by achristensen@apple.com
  • 6 edits in trunk/Source/WebCore

Made OESTextureHalfFloat work on Windows.

Reviewed by Christophe Dumez.

  • DerivedSources.cpp: Added JSOESTextureHalfFloat.cpp inside of #if ENABLE(WEBGL).
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:

Added JSOESTextureHalfFloat.cpp and JSOESTextureHalfFloat.h.

  • html/canvas/OESTextureHalfFloat.idl: Added newline to end of file.
  • html/canvas/WebGLObject.cpp: Removed unused #includes.
9:47 AM Changeset in webkit [153587] by Bem Jones-Bey
  • 2 edits in trunk/Tools

Unreviewed. Adding my expertise.

  • Scripts/webkitpy/common/config/contributors.json:
9:23 AM Changeset in webkit [153586] by Patrick Gansterer
  • 7 edits in trunk/Source

Rearrange the code of FrameWin

Reviewed by Brent Fulgham.


Move code from the CG implementation into the general file so we can
share the code with Windows CE port in a next step. In a first step
it only shares more code between the CG and Cairo implementations.
Also use OwnPtr instead of plain pointers to make ownership more clear.

  • page/win/FrameCGWin.cpp:


  • page/win/FrameCairoWin.cpp:


  • page/win/FrameWin.cpp:


  • page/win/FrameWin.h:


  • WebView.cpp:


8:35 AM Changeset in webkit [153585] by Simon Fraser
  • 2 edits in trunk/LayoutTests

http/tests/multipart/invalid-image-data-standalone.html needs to skipped, not
just marked as failing, otherwise it gets listed as a test that times out.

  • platform/mac/TestExpectations:
8:03 AM Changeset in webkit [153584] by ChangSeok Oh
  • 2 edits in trunk/Tools

Unreviewed. Add myself as a committer. Yoo-hoo! \o/

  • Scripts/webkitpy/common/config/contributors.json:
6:28 AM Changeset in webkit [153583] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(FTL): Fix sh4 implementation of ctiVMThrowTrampolineSlowpath.

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-08-01
Reviewed by Csaba Osztrogonác.

  • jit/JITStubsSH4.h: Fix ctiVMThrowTrampolineSlowpath implementation:
    • Call frame is in r14 register.
    • Do not restore registers from JIT stack frame here.
6:03 AM Changeset in webkit [153582] by commit-queue@webkit.org
  • 3 edits
    24 adds in trunk

mask-repeat: round bug


Added the round functionality to -webkit-mask-repeat and background-repeat. The tile size of the
image is scaled so that the image can fit a whole number of times in the background.

Patch by Andrei Parvu <parvu@adobe.com> on 2013-08-01
Reviewed by Dirk Schulze.

Tests: css3/masking/mask-repeat-round-auto1.html


  • rendering/RenderBoxModelObject.cpp:



Added tests for the -webkit-mask-repeat: round property.

Patch by Andrei Parvu <parvu@adobe.com> on 2013-08-01
Reviewed by Dirk Schulze.

  • css3/masking/mask-repeat-round-auto1-expected.html: Added.
  • css3/masking/mask-repeat-round-auto1.html: Added.
  • css3/masking/mask-repeat-round-auto2-expected.html: Added.
  • css3/masking/mask-repeat-round-auto2.html: Added.
  • css3/masking/mask-repeat-round-border-expected.html: Added.
  • css3/masking/mask-repeat-round-border.html: Added.
  • css3/masking/mask-repeat-round-content-expected.html: Added.
  • css3/masking/mask-repeat-round-content.html: Added.
  • css3/masking/mask-repeat-round-padding-expected.html: Added.
  • css3/masking/mask-repeat-round-padding.html: Added.
  • css3/masking/resources/circle.png: Added.
  • css3/background/background-repeat-round-auto1-expected.html: Added.
  • css3/background/background-repeat-round-auto1.html: Added.
  • css3/background/background-repeat-round-auto2-expected.html: Added.
  • css3/background/background-repeat-round-auto2.html: Added.
  • css3/background/background-repeat-round-border-expected.html: Added.
  • css3/background/background-repeat-round-border.html: Added.
  • css3/background/background-repeat-round-content-expected.html: Added.
  • css3/background/background-repeat-round-content.html: Added.
  • css3/background/background-repeat-round-padding-expected.html: Added.
  • css3/background/background-repeat-round-padding.html: Added.
  • css3/background/resources/circle.png: Added.
5:26 AM Changeset in webkit [153581] by alexis@webkit.org
  • 10 edits in trunk/Source/WebCore

Reduce CSSProperty's StylePropertyMetadata memory footprint by half when used inside a ImmutableStylePropertySet.

Reviewed by Andreas Kling.

Today CSSProperty holds its metadata in the following way :

| m_propertyID : 14 We use 14 bits because CSSPropertyIDs start at 1001. |
| m_shorthandID : 14 id of the shorthand this property was set, 0 if not part of a shorthand|
| m_important : 1 |
| m_implicit : 1 |
| m_inherited : 1 |

The proposal to decrease the memory footprint on CSSProperty's metadata
only stand when stored inside ImmutableStylePropertySet which uses a custom
way to allocate and lay out the StylePropertyMetadata and the CSSValues in
memory because the idea behind is that the content will not change.
The MutableStylePropertySet uses a regular vector to retrieve, remove
and modify the CSSProperties. ImmutableStylePropertySet is used by default
when parsing up until someone start to access the CSSOM like
div.style which will convert the immutable to a mutable set. It is also good
to note that a CSSProperty is created for every single statement inside a block
in a stylesheet so we do have quite a bunch around. Another consideration is
that the only client to the m_shorthandID is the inspector which uses it
to group the longhands into a shorthand drop down list.

The new proposal is the following one :

  • Reduce m_propertyID to 10 bits by not starting the CSSPropertyIDs from

1001 but rather 0 (or 3 as two are hardcoded CSSPropertyInvalid and CSSPropertyVariable).

  • Use the fact that we statically know which longhand belong to which shorthand. So

we create a static mapping between longhands and shorthands.

Here is the new layout :

| m_propertyID : 10 (up to 1024 properties), we have less than 400 today |
| m_isSetFromShorthand : 1 and then use the mapping in StylePropertyShorthand |
| m_indexInShorthandsVector : 2 |
| m_important : 1 (unchanged) |
| m_implicit : 1 (unchanged) |
| m_inherited : 1 (unchanged) |

it was set from using the new code in StylePropertyShorthand.

  • m_indexInShorthandsVector : 2 bits, unfortunately there are few longhands which belong to multiple

shorthands so we need to store which was this longhand was part at parsing time. Notice
that it does not store the CSSPropertyID of the matching shorthand but rather its position
in the vector of matching shorthands. CSSProperty::m_shorthandID() method make it transparent
for call sites and return the actual CSSPropertyID of the shorthand. So far 2 bits seems
enough as there is only few longhands with ambiguity and they belong to 3 shorthands.

Profiling the benchmark with Intel Vtune to find out the performance regression
showed that copying uint16_t, so StylePropertyMetadata, is not
a fast operation in term of assembly code and has a big penalty on Windows
MSVC over unsigned for example. The latter produces a much faster code
when using unsigned over uint16_t (45% difference in the benchmark).

The patch avoid the copies of StylePropertyMetadata when applicable (by using const ref).

The second part of the fix is avoiding the conversion from an int (enum) to
an uint16_t in a tight loop such as StylePropertySet::findPropertyIndex
(which is the hotspot of the benchmark).

On my Windows 7 64 bits Core i5 machine CSSPropertySetterGetter results are :

  • avg : 2714 runs/s with the patch
  • avg : 2696 runs/s without the patch

According to Andreas Kling this patch save up ~1.8Mb on membuster.

No new tests : refactor, old ones should cover.

  • css/CSSComputedStyleDeclaration.cpp:


  • css/CSSParser.cpp:


  • css/CSSProperty.cpp:


  • css/CSSProperty.h:

(WebCore::StylePropertyMetadata::StylePropertyMetadata): Use uint16_t type for bitfields so sizeof() returns 2 bytes.

  • css/StylePropertySet.cpp:


  • css/StylePropertySet.h:


  • css/StylePropertyShorthand.cpp:


  • css/StylePropertyShorthand.h:


  • css/makeprop.pl:
4:06 AM Changeset in webkit [153580] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

[Qt] Enable QML handling of crashed/unresponsive QtWebProcess

Forward the processDidCrash, didRelaunchProcess, processDidBecomeUnresponsive
and processDidBecomeResponsive signals to QML's WebView.experimental.

Patch by Milian Wolff <milian.wolff@kdab.com> on 2013-08-01
Reviewed by Jocelyn Turcotte.

  • UIProcess/API/qt/qquickwebview.cpp:


  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:


2:42 AM Changeset in webkit [153579] by zarvai@inf.u-szeged.hu
  • 62 edits
    6 adds in trunk/LayoutTests

[Qt] Unreviewed expected pixel test result update after r153522.

  • platform/qt-5.0-wk2/compositing/overflow/overflow-compositing-descendant-expected.png:
  • platform/qt-5.0-wk2/compositing/overflow/scroll-ancestor-update-expected.png:
  • platform/qt-5.0-wk2/compositing/visibility/visibility-simple-video-layer-expected.png:
  • platform/qt-5.0-wk2/css2.1/20110323/replaced-min-max-001-expected.png:
  • platform/qt-5.0-wk2/css2.1/t170602-bdr-conflct-w-14-d-expected.png:
  • platform/qt-5.0-wk2/css2.1/t170602-bdr-conflct-w-24-d-expected.png:
  • platform/qt-5.0-wk2/css2.1/t170602-bdr-conflct-w-34-d-expected.png:
  • platform/qt-5.0-wk2/css2.1/t170602-bdr-conflct-w-44-d-expected.png:
  • platform/qt-5.0-wk2/css2.1/t170602-bdr-conflct-w-54-d-expected.png:
  • platform/qt-5.0-wk2/css2.1/t170602-bdr-conflct-w-64-d-expected.png:
  • platform/qt-5.0-wk2/css2.1/t170602-bdr-conflct-w-74-d-expected.png:
  • platform/qt-5.0-wk2/css2.1/t170602-bdr-conflct-w-84-d-expected.png:
  • platform/qt-5.0-wk2/css3/compositing/effect-background-blend-mode-expected.png: Added.
  • platform/qt-5.0-wk2/css3/compositing/effect-background-blend-mode-stacking-expected.png:
  • platform/qt-5.0-wk2/fast/backgrounds/size/backgroundSize09-expected.png: Added.
  • platform/qt-5.0-wk2/fast/backgrounds/size/backgroundSize10-expected.png: Added.
  • platform/qt-5.0-wk2/fast/backgrounds/size/backgroundSize11-expected.png: Added.
  • platform/qt-5.0-wk2/fast/backgrounds/size/contain-and-cover-expected.png: Added.
  • platform/qt-5.0-wk2/fast/backgrounds/size/contain-and-cover-zoomed-expected.png:
  • platform/qt-5.0-wk2/fast/borders/border-image-side-reduction-expected.png:
  • platform/qt-5.0-wk2/fast/fast-mobile-scrolling/no-fixed-position-elements-expected.png: Added.
  • platform/qt-5.0-wk2/fast/repaint/block-layout-inline-children-replaced-expected.png:
  • platform/qt-5.0-wk2/fast/repaint/fixed-position-transparency-with-overflow-expected.png:
  • platform/qt-5.0-wk2/fast/replaced/width100percent-image-expected.png:
  • platform/qt-5.0-wk2/scrollbars/overflow-scrollbar-combinations-expected.png:
  • platform/qt-5.0-wk2/svg/W3C-SVG-1.1/animate-elem-30-t-expected.png:
  • platform/qt-5.0-wk2/svg/W3C-SVG-1.1/animate-elem-40-t-expected.png:
  • platform/qt-5.0-wk2/svg/W3C-SVG-1.1/coords-viewattr-02-b-expected.png:
  • platform/qt-5.0-wk2/svg/custom/createImageElement-expected.png:
  • platform/qt-5.0-wk2/svg/custom/createImageElement2-expected.png:
  • platform/qt-5.0-wk2/svg/custom/image-parent-translation-expected.png:
  • platform/qt-5.0-wk2/svg/custom/js-update-image-and-display-expected.png:
  • platform/qt-5.0-wk2/svg/custom/js-update-image-and-display2-expected.png:
  • platform/qt-5.0-wk2/svg/custom/js-update-image-and-display3-expected.png:
  • platform/qt-5.0-wk2/svg/custom/js-update-image-expected.png:
  • platform/qt-5.0-wk2/svg/custom/pointer-events-image-css-transform-expected.png:
  • platform/qt-5.0-wk2/svg/custom/pointer-events-image-expected.png:
  • platform/qt-5.0-wk2/svg/custom/text-image-opacity-expected.png:
  • platform/qt-5.0-wk2/svg/custom/use-on-g-containing-foreignObject-and-image-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGImageElement-dom-height-attr-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGImageElement-dom-preserveAspectRatio-attr-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGImageElement-dom-width-attr-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGImageElement-dom-x-attr-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGImageElement-dom-y-attr-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGImageElement-svgdom-height-prop-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGImageElement-svgdom-preserveAspectRatio-prop-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGImageElement-svgdom-width-prop-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGImageElement-svgdom-x-prop-expected.png:
  • platform/qt-5.0-wk2/svg/dynamic-updates/SVGImageElement-svgdom-y-prop-expected.png:
  • platform/qt-5.0-wk2/svg/hixie/perf/004-expected.png:
  • platform/qt-5.0-wk2/svg/transforms/animated-path-inside-transformed-html-expected.png:
  • platform/qt-5.0-wk2/svg/wicd/test-rightsizing-b-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/bugs/bug101674-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/bugs/bug11026-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/bugs/bug1188-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/bugs/bug1296-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/bugs/bug1430-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/bugs/bug2981-2-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/bugs/bug4284-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/bugs/bug4427-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/bugs/bug56563-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/bugs/bug625-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/bugs/bug97383-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/core/bloomberg-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/core/misc-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla/other/cell_widths-expected.png:
  • platform/qt-5.0-wk2/tables/mozilla_expected_failures/bugs/bug6933-expected.png:
2:17 AM Changeset in webkit [153578] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

Unreviewed, rolling out r153518.

The Jhbuild dep bump of GTK+ is not actually required by
layout testing, is causing pango dep problems (Requested by
zdobersek on #webkit).

Patch by Commit Queue <commit-queue@webkit.org> on 2013-08-01

  • gtk/jhbuild.modules:
2:13 AM Changeset in webkit [153577] by calvaris@igalia.com
  • 2 edits in trunk/Tools

Unreviewed. Add myself as a committer.

  • Scripts/webkitpy/common/config/contributors.json:
12:33 AM Changeset in webkit [153576] by bshafiei@apple.com
  • 5 edits in branches/safari-537-branch/Source


12:07 AM Changeset in webkit [153575] by ljaehun.lim@samsung.com
  • 2 edits in trunk/Tools

Unreviewed. Add myself as a committer.

  • Scripts/webkitpy/common/config/contributors.json:
12:02 AM Changeset in webkit [153574] by jinwoo7.song@samsung.com
  • 2 edits in trunk/Tools

Unreviewed. Add myself as a committer.

  • Scripts/webkitpy/common/config/contributors.json:

Jul 31, 2013:

11:44 PM Changeset in webkit [153573] by bshafiei@apple.com
  • 1 copy in tags/Safari-537.54

New tag.

10:55 PM Changeset in webkit [153572] by berto@igalia.com
  • 2 edits in trunk/Tools

Unreviewed. Add myself as a committer.

  • Scripts/webkitpy/common/config/contributors.json:
10:23 PM Changeset in webkit [153571] by Seokju Kwon
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed gardening

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Remove duplicated entry.
9:41 PM Changeset in webkit [153570] by Seokju Kwon
  • 2 edits in trunk/Tools

Unreviewed. Add myself as a committer.

  • Scripts/webkitpy/common/config/contributors.json:
9:25 PM Changeset in webkit [153569] by Simon Fraser
  • 2 edits in trunk/LayoutTests

Skip media/track/track-language-preference.html and media/track/track-prefer-captions.html
rather than just marking them as [ Pass Fail ] since they timeout so often and slow
everything down.

  • platform/mac/TestExpectations:
9:06 PM Changeset in webkit [153568] by Simon Fraser
  • 2 edits in trunk/LayoutTests

Clobbering window.console is not cool because it makes debugging tests

  • media/video-test.js:


8:43 PM Changeset in webkit [153567] by Simon Fraser
  • 2 edits in trunk/LayoutTests

r153462 erroneously unskipped http/tests/multipart/invalid-image-data-standalone.html
so put it back.

  • platform/mac/TestExpectations:
8:42 PM Changeset in webkit [153566] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

FINALize StyleSheet subclasses.

Reviewed by Anders Carlsson.

CSSStyleSheet and XSLStyleSheet have no further subclasses so make them final.

  • css/CSSStyleSheet.h:
  • xml/XSLStyleSheet.h:
8:34 PM Changeset in webkit [153565] by Simon Fraser
  • 2 edits in trunk/LayoutTests

compositing/patterns/direct-pattern-compositing tests suffer
from colorspace issues that cause image failures on some machines.

  • platform/mac/TestExpectations:
8:30 PM Changeset in webkit [153564] by Simon Fraser
  • 2 edits in trunk/LayoutTests

media/video-controls-captions-trackmenu.html either crashes,
fails or passes.

  • platform/mac/TestExpectations:
8:17 PM Changeset in webkit [153563] by Simon Fraser
  • 2 edits in trunk/LayoutTests


webkit.org/b/119374 fast/workers/termination-early.html [ Pass Crash ]
webkit.org/b/119375 fast/workers/worker-call.html [ Failure ]

  • platform/mac/TestExpectations:
7:20 PM Changeset in webkit [153562] by zhajiang@rim.com
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Page scrolls when width equals device width and initial scale is greater than 0.92

Patch by Jacky Jiang <zhajiang@blackberry.com> on 2013-07-31
Reviewed by Rob Buis.
Internally reviewed by Gen Mak and Konrad Piascik.

JIRA 445423
layoutSize (deviceScreenSize/devicePixelRatio) is FloatSize as devicePixelRatio
is float. We have to round that to IntSize as ScrollView needs IntSize
fixedLayoutSize. Based on conversion result, zoomToFitWidthScale will
hardly equal to zoomToFitHeightScale in this case. And unfortunately
zoomToFitHeightScale is a little bit greater than zoomToFitWidthScale
in this case so that we have to pick up zoomToFitHeightScale which makes
the page scollable horizontally.
The way to fix that is to define an accurate contentsSize area which
potentially has float layoutSize rounding error and can cause upexpected
scroll based on the ideal contentsSize area first, and then don't scroll
only if the scale is zoomToFitScale as "contentsSize > visibleViewportSize"
still works well if the scale is larger than zoomToFitScale.

  • Api/WebPage.cpp:


  • Api/WebPage_p.h:
  • WebKitSupport/WebKitThreadViewportAccessor.cpp:


  • WebKitSupport/WebKitThreadViewportAccessor.h:
7:17 PM Changeset in webkit [153561] by gyuyoung.kim@samsung.com
  • 6 edits in trunk/Source/WebCore

Introduce toSVGFontFaceElement, and use it

Reviewed by Andreas Kling.

As a step to change static_cast with toSVGXXX, static_cast<SVGFontFaceElement*> can
be changed with toSVGFontFaceElement().

Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=155082

  • css/CSSFontFaceSource.cpp:


  • svg/SVGFontFaceElement.h:


  • svg/SVGFontFaceFormatElement.cpp:


  • svg/SVGFontFaceSrcElement.cpp:


  • svg/SVGFontFaceUriElement.cpp:


6:49 PM Changeset in webkit [153560] by Simon Fraser
  • 2 edits in branches/safari-537-branch/LayoutTests

Merge r153498.

2013-07-30 Alexey Proskuryakov <ap@apple.com>

REGRESSION(r139282): Fix document leak when selection is created inside the document

OK'd by Ryosuke Niwa.

The added test was very flaky. Trying to make it better with a gc() call at the beginning.

  • editing/selection/leak-document-with-selection-inside.html:
6:34 PM Changeset in webkit [153559] by gyuyoung.kim@samsung.com
  • 5 edits in trunk/Source/WebCore

Introduce toSVGSMILElement, and use it

Reviewed by Darin Adler.

As a step to change static_cast with toSVGXXX, static_cast<SVGSMILElement*> can
be changed with toSVGSMILElement().

Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=155048

  • svg/SVGAElement.cpp:


  • svg/animation/SMILTimeContainer.cpp:


  • svg/animation/SVGSMILElement.cpp:


  • svg/animation/SVGSMILElement.h:


6:31 PM Changeset in webkit [153558] by Simon Fraser
  • 2 edits in branches/safari-537-branch/LayoutTests

Merge r151893

2013-06-23 Brent Fulgham <bfulgham@gmail.com>

AX: Rebaseline test after r151868

Rubber stamped by Chris Fleizach.

  • platform/mac/accessibility/lists-expected.txt:
6:25 PM Changeset in webkit [153557] by Simon Fraser
  • 3 edits in branches/safari-537-branch/LayoutTests

Merge r152847

2013-07-18 Zalan Bujtas <Alan Bujtas>

fullscreen/full-screen-iframe-with-max-width-height.html is flaky

Reviewed by Andreas Kling.

Don't start the test until after the iframe has finished loading.

  • fullscreen/full-screen-iframe-with-max-width-height-expected.txt:
  • fullscreen/full-screen-iframe-with-max-width-height.html:
  • platform/mac/TestExpectations:
6:09 PM Changeset in webkit [153556] by barraclough@apple.com
  • 9 edits in trunk/Source/JavaScriptCore

More cleanup in PropertySlot

Reviewed by Geoff Garen.

m_slotBase is overloaded to store the (receiver) thisValue and the object that contains the property,
This is confusing, and means that slotBase cannot be typed correctly (can only be a JSObject).

  • dfg/DFGRepatch.cpp:


  • No need to ASSERT slotBase is an object.
  • jit/JITStubs.cpp:


  • No need to ASSERT slotBase is an object.
  • runtime/JSObject.cpp:


  • Pass an object through to setGetterSlot.
  • runtime/JSObject.h:


  • Moved from PropertySlot (need to know anout JSObject).
  • runtime/PropertySlot.cpp:


  • update per member name changes
  • runtime/PropertySlot.h:


  • Argument to constructor set to 'thisValue'.


  • This returns a JSObject*.


  • slotBase is a JSObject*, make setGetterSlot set slotBase for consistency.
  • runtime/SparseArrayValueMap.cpp:


  • Pass an object through to setGetterSlot.
  • runtime/SparseArrayValueMap.h:
    • Pass an object through to setGetterSlot.
6:08 PM Changeset in webkit [153555] by Simon Fraser
  • 3 edits in trunk/LayoutTests

Clobbering window.console is not cool

Reviewed by Tim Horton.

full-screen-test.js overrides window.console, which is hella
confusing if you're trying to use console.log to debug a fullscreen test.

  • fullscreen/full-screen-test.js:


  • fullscreen/resources/not-allowed.html:
5:57 PM Changeset in webkit [153554] by mark.lam@apple.com
  • 2 edits in trunk/LayoutTests

Gardening: changing expectation for fast/forms/color/input-color-onchange-event.html
to "Crash Pass" instead of "Skip".

Not reviewed.

5:51 PM Changeset in webkit [153553] by rniwa@webkit.org
  • 3 edits
    4 adds in trunk

Reuse of XMLHttpRequests causes character corruption in response text

Reviewed by Anders Carlsson.


Merge https://chromium.googlesource.com/chromium/blink/+/6496e7bb9a0b46bc79032b86d5993b25f127a4cb

Test: http/tests/xmlhttprequest/reopen-encoding.html

  • xml/XMLHttpRequest.cpp:



  • http/tests/xmlhttprequest/reopen-encoding-expected.txt: Added.
  • http/tests/xmlhttprequest/reopen-encoding.html: Added.
  • http/tests/xmlhttprequest/resources/get-utf-8.cgi: Added.
  • http/tests/xmlhttprequest/resources/get-windows-1251.cgi: Added.
5:28 PM Changeset in webkit [153552] by mark.lam@apple.com
  • 2 edits in trunk/LayoutTests

Bot greening.

Not reviewed.

5:21 PM Changeset in webkit [153551] by ap@apple.com
  • 19 edits in trunk/Source/WebCore

Make ActiveDOMObject overrides private

Reviewed by Sam Weinig.

There is no need to call these through derived classes. And it's quite harmful for
anyone except for ScriptExecutionContext to call suspend/resume in particular -
ScriptExecutionContext won't know, and it will try to manage the state on its own.

  • Modules/filesystem/DOMFileSystem.h:
  • Modules/filesystem/FileWriter.h:
  • Modules/geolocation/Geolocation.h:
  • Modules/indexeddb/IDBDatabase.h:
  • Modules/indexeddb/IDBRequest.h:
  • Modules/indexeddb/IDBTransaction.h:
  • Modules/mediasource/MediaSource.h:
  • Modules/notifications/Notification.h:
  • Modules/notifications/NotificationCenter.h:
  • Modules/websockets/WebSocket.h:
  • fileapi/FileReader.h:
  • html/HTMLMediaElement.h:
  • html/canvas/WebGLRenderingContext.h:
  • page/DOMTimer.h:
  • page/EventSource.h:
  • page/SuspendableTimer.h:
  • workers/AbstractWorker.h:
  • xml/XMLHttpRequest.h:
5:10 PM Changeset in webkit [153550] by Bem Jones-Bey
  • 3 edits in trunk/Tools

W3C test import script prefixes some properties that it shouldn't

Reviewed by Dirk Pranke.

Some prefixed properties also have unprefixed implemetations, but when
the implementations aren't identical, they aren't declared in
CSSPropertyNames.in on the same line. This fixes the import script so
that it catches all instances of prefixed properties that have an
unprefixed variant, and does not add the prefix in those cases.

  • Scripts/webkitpy/w3c/test_converter.py:

(W3CTestConverter.read_webkit_prefixed_css_property_list): Read all of
the properties on every line and record if they are prefixed or not.
Use this information to only return prefixed properties that do not
have any unprefixed variant. The prefixed property list has also
changed to not include the '-webkit-' prefix, making it much easier to
do the comparison, and removing the need to remove the prefix later.
(W3CTestConverter.add_webkit_prefix_to_unprefixed_properties): This no
longer needs to remove the '-webkit-' prefix, but needs to add it in
the case where a property that needs a prefix is found.

  • Scripts/webkitpy/w3c/test_converter_unittest.py:

(W3CTestConverterTest.test_read_prefixed_property_list): Remove assert
for '-webkit-' prefix, as it is no longer included in the properties
in the prefixed property list.

5:06 PM Changeset in webkit [153549] by timothy_horton@apple.com
  • 6 edits in trunk/Source

Remove didFinishLoad order quirk

Reviewed by Alexey Proskuryakov.


  • loader/FrameLoader.cpp:

Remove the quirk.

  • page/Settings.in:

Remove the setting controlling the quirk.


  • Misc/WebKitVersionChecks.h:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):
Don't set the now-removed preference.

5:03 PM Changeset in webkit [153548] by kseo@webkit.org
  • 3 edits in trunk/Source/WebCore

Replace CRASH() on overflow with Checked<>

Reviewed by Oliver Hunt.

Use a checked type that allows us to automate bound checks. We use a
non-recording Checked<> to keep the behavior.

No behavior change, no new tests needed.

  • dom/Text.cpp:


  • platform/audio/AudioArray.h:


4:57 PM Changeset in webkit [153547] by commit-queue@webkit.org
  • 4 edits in trunk/Source/JavaScriptCore

Reduce JSC API static value setter/getter overhead.

Patch by Yi Shen <max.hong.shen@gmail.com> on 2013-07-31
Reviewed by Geoffrey Garen.

Add property name to the static value entry, so that OpaqueJSString::create() doesn't
need to get called every time when set or get the static value.

  • API/JSCallbackObjectFunctions.h:


  • API/JSClassRef.cpp:


  • API/JSClassRef.h:


4:54 PM Changeset in webkit [153546] by kseo@webkit.org
  • 13 edits in trunk/Source

Use emptyString instead of String("")

Reviewed by Darin Adler.

Use emptyString() instead of String("") because it is better style and
faster. This is a followup to r116908, removing all occurrences of
String("") from WebKit.


  • runtime/RegExpConstructor.cpp:


  • runtime/RegExpPrototype.cpp:


  • runtime/StringPrototype.cpp:



No behavior change, no new tests needed.

  • platform/graphics/blackberry/LayerAnimation.h:


  • platform/mac/PlatformEventFactoryMac.mm:



  • WebCoreSupport/WebFrameLoaderClient.mm:



  • WebCoreSupport/ChromeClientQt.cpp:



  • Shared/mac/WebEventFactory.mm:


4:21 PM Changeset in webkit [153545] by Bem Jones-Bey
  • 3 edits in trunk/Tools

Update location of w3c shapes tests to reflect new import location

Reviewed by Dirk Pranke.

Partial imports should not be imported to the same place as the full
import, so this adds an option to allow importing to a different
location than the default. In doing that, I found that imports from
contributor directories didn't seem to be working correctly, so I
updated the import to be smarter about both contributor directories
and the test status directories. It should now be more likely that the
script guesses the root directory properly.

  • Scripts/webkitpy/w3c/test_importer.py: Remove comment about the

script not working with the full set of contributors, as that is
no longer true, and I didn't see a good way to keep that behavior.
Also update documentation to properly explain what happens when a
contributor dir is imported.

(main): Attempt to find the proper repo dir by looking at the

directory above the "test status" in the given path, this is still
not exactly right, but is less error prone than just trimming.

(parse_args): Add -d option to set the import directory.
(TestImporter.init): Stop appending the subdirs to the

destination_directory because it was making things more complex
and isn't really needed.

(TestImporter.update_test_status): Remove hardcoded strings and use

the TEST_STATUS constants instead.

  • Scripts/webkitpy/w3c/test_importer_unittest.py:

(TestImporterTest.test_import_dir_with_no_tests_and_no_hg): Add

support for new option.

(TestImporterTest.test_import_dir_with_no_tests): Ditto.

4:08 PM Changeset in webkit [153544] by Brent Fulgham
  • 2 edits in trunk/Tools

[Windows] Winlauncher shouldn't look for Safari Install Directory

Reviewed by Darin Adler.

  • win/DLLLauncher/DLLLauncherMain.cpp: Don't check registry for

the Safari install location. Instead, use the proper support
library path for the build architecture.

2:09 PM Changeset in webkit [153543] by rwlbuis@webkit.org
  • 1 edit
    2 adds
    2 deletes in trunk/LayoutTests

Convert SVG test from r153433 to a reftest

Reviewed by Philip Rogers.

Reftest taken from https://chromium.googlesource.com/chromium/blink/+/ac10e305a870c8fd500b42e90075aee3aa48da8d.

  • platform/qt/svg/animations/attributeNameAndAttributeTypeMissmatch-expected.txt: Removed.
  • svg/animations/attributeNameAndAttributeTypeMismatch-expected.html: Added.
  • svg/animations/attributeNameAndAttributeTypeMismatch.html: Added.
  • svg/animations/attributeNameAndAttributeTypeMissmatch.svg: Removed.
2:04 PM Changeset in webkit [153542] by benjamin@webkit.org
  • 1 edit
    5 adds in trunk/Websites/webkit.org

Upload images for a potential blog post

  • blog-files/size-matters: Added.
  • blog-files/size-matters/JavaScript-growth.png: Added.
  • blog-files/size-matters/WebCore-growth-baseline.png: Added.
  • blog-files/size-matters/WebCore-growth.png: Added.
  • blog-files/size-matters/WebKit-growth.png: Added.
1:47 PM Changeset in webkit [153541] by commit-queue@webkit.org
  • 34 edits
    2 adds in trunk

<input type=color> Mac UI behaviour
<rdar://problem/10269922> and https://bugs.webkit.org/show_bug.cgi?id=61276


Patch by Ruth Fong <ruth_fong@apple.com> on 2013-07-31
Reviewed by Brady Eidson.

  • Configurations/FeatureDefines.xcconfig: Enabled INPUT_TYPE_COLOR.


Patch by Ruth Fong <ruth_fong@apple.com> on 2013-07-31
Reviewed by Brady Eidson.

This patch turns on INPUT_TYPE_COLOR and implements it using the native
Mac color panel.

No new tests added.

Currently, there are no automated ways to test the types of changes made in this patch. (i.e. checking
which color is being displayed in the color panel, checking which color element is currently
associated to the color panel, checking the state of color elements after directing away and
being directed back to its page, etc.)

  • Configurations/FeatureDefines.xcconfig: Enabled INPUT_TYPE_COLOR.
  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • html/ColorInputType.cpp:

(WebCore::ColorInputType::handleDOMActivateEvent): Reattaches the color picker if

a color picker has already been shown for an element

(WebCore::ColorInputType::shouldResetOnDocumentActivation): Always returns true, needed to

detach the color picker when caching a page.

  • html/ColorInputType.h:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::documentDidResumeFromPageCache): For <input type='color'>,

don't reset the element.

(WebCore::HTMLInputElement::documentWillSuspendForPageCache): For <input type='color'>, call detach().

  • html/HTMLInputElement.h:
  • platform/ColorChooser.h:

(WebCore::ColorChooser::reattachColorChooser): Added definition.


Patch by Ruth Fong <ruth_fong@apple.com> on 2013-07-31
Reviewed by Brady Eidson.

  • Configurations/FeatureDefines.xcconfig: Enabled INPUT_TYPE_COLOR.
  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm:

(WebChromeClient::createColorPicker): Added stub implementation.


Implemented <input type='color'> on Mac using the native color picker.

Patch by Ruth Fong <ruth_fong@apple.com> on 2013-07-31
Reviewed by Brady Eidson.

Code for WebColorPickerMac is derived from Chromium's color_chooser_mac.mm:

  • Configurations/FeatureDefines.xcconfig: Enabled INPUT_TYPE_COLOR.
  • UIProcess/API/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::createColorPicker): Replaced stub implementation

and return a WebColorPickerMac object.

  • UIProcess/WebColorPicker.cpp:

(WebKit::WebColorPicker::invalidate): Updated to call endChooser().
(WebKit::WebColorPicker::showColorPicker): Added stub implementation.

  • UIProcess/WebColorPicker.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::close): Removed invalidation of removed color picker objects.
(WebKit::WebPageProxy::showColorPicker): Updated so that it works for

multiple <input type='color'> elements on a page.

(WebKit::WebPageProxy::didEndColorPicker): Removed cleanup of removed color picker objects.
(WebKit::WebPageProxy::resetStateAfterProcessExited): Removed cleanup of removed color picker objects.

  • UIProcess/mac/WebColorPickerMac.h: Added.
  • UIProcess/mac/WebColorPickerMac.mm: Added.

WebColorPickerMac contains a reference to a WKColorPanelMac object

and is responsible for maintaining the color picker UI.

(-[WKColorPanelMac setAndShowPicker:withColor:]):
(-[WKColorPanelMac invalidate]):
(-[WKColorPanelMac windowWillClose:]):
(-[WKColorPanelMac didChooseColor:]):
(-[WKColorPanelMac setColor:]):
WKColorPanelMac is a wrapper for a NSColorPanel object and

is responsible for the color picker UI.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::createColorChooser): Updated to always create a

WebColorChooser object.

  • WebProcess/WebCoreSupport/WebColorChooser.cpp:

(WebKit::WebColorChooser::reattachColorChooser): Sets the page's

active color chooser to the current object and pings the UIProcess
to show the color picker.

(WebKit::WebColorChooser::setSelectedColor): Only sets the color in the

color picker if the WebColorChooser object is the active color element.

  • WebProcess/WebCoreSupport/WebColorChooser.h:


Patch by Ruth Fong <ruth_fong@apple.com> on 2013-07-31
Reviewed by Brady Eidson.

  • wtf/FeatureDefines.h: Enabled INPUT_TYPE_COLOR on Mac port.


Patch by Ruth Fong <ruth_fong@apple.com> on 2013-07-31
Reviewed by Brady Eidson.

Updated tests to reflect <input type='color'> being implemented with a native color picker.

  • fast/forms/color/input-color-onchange-event-expected.txt:
  • platform/mac/TestExpectations: Enabled fast/form/color tests on Mac.
  • platform/mac/accessibility/color-well-expected.txt:
  • platform/mac/accessibility/role-subrole-roledescription-expected.txt:
  • platform/mac/accessibility/role-subrole-roledescription.html:
  • platform/mac/fast/forms/color/input-appearance-color-expected.txt: Updated test expectations

on Mac to reflect the fact that the list attribute for <input type='color'> is not yet supported.

1:24 PM Changeset in webkit [153540] by mhahnenberg@apple.com
  • 3 edits
    3 adds in trunk

DFG doesn't account for inlining of functions with switch statements that haven't been executed by the baseline JIT

Reviewed by Geoffrey Garen.


Prior to this patch, the baseline JIT was responsible for resizing the ctiOffsets Vector for
SimpleJumpTables to be equal to the size of the branchOffsets Vector. The DFG implicitly relied
on code it compiled with any switch statements to have been run in the baseline JIT first.
However, if the DFG chooses to inline a function that has never been compiled by the baseline
JIT then this resizing never happens and we crash at link time in the DFG.

We can fix this by also doing the resize in the DFG to catch this case.

  • dfg/DFGJITCompiler.cpp:



  • fast/js/dfg-inline-switch-imm-expected.txt: Added.
  • fast/js/dfg-inline-switch-imm.html: Added.
  • fast/js/script-tests/dfg-inline-switch-imm.js: Added.


12:55 PM Changeset in webkit [153539] by Lucas Forschler
  • 5 edits
    2 copies in branches/safari-537-branch

Merged r153511. <rdar://problem/14213012>

12:51 PM Changeset in webkit [153538] by Lucas Forschler
  • 2 edits in branches/safari-537-branch/Source/WebKit2

Merged r153487. <rdar://problem/14502050>

12:32 PM Changeset in webkit [153537] by barraclough@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Speculative Windows build fix.

Reviewed by NOBODY

  • runtime/JSString.cpp:


  • runtime/JSString.h:
12:27 PM Changeset in webkit [153536] by timothy_horton@apple.com
  • 3 edits in trunk/LayoutTests

RenderEmbeddedObject::isReplacementObscured is wrong if an obscuring element has pointer-events: none set

Reviewed by Dean Jackson.

Change the expected outcome of the test to want a visually-obscured
but clickable embed (because the obscuring element has pointer-events: none)
to be considered obscured.

Also, adjust the test so that it runs all of the subtests even if
some of them fail.

  • plugins/unavailable-plugin-indicator-obscurity-expected.txt:
  • plugins/unavailable-plugin-indicator-obscurity.html:
12:26 PM Changeset in webkit [153535] by Bem Jones-Bey
  • 9 edits in trunk/Tools

Update scripts to reference contributors.json instead of committers.py in messaging

Reviewed by Ryosuke Niwa.

Change the scripts to point people to contributors.json instead of
committers.py since the latter no longer contains the list of

  • Scripts/webkitpy/common/config/committervalidator.py:


  • Scripts/webkitpy/common/config/committervalidator_unittest.py:


  • Scripts/webkitpy/common/net/bugzilla/bugzilla.py:


  • Scripts/webkitpy/common/watchlist/watchlistparser.py:


  • Scripts/webkitpy/common/watchlist/watchlistparser_unittest.py:


  • Scripts/webkitpy/tool/bot/feeders_unittest.py:
  • Scripts/webkitpy/tool/commands/queues_unittest.py:
  • Scripts/webkitpy/tool/steps/validatereviewer.py:


12:22 PM Changeset in webkit [153534] by roger_fong@apple.com
  • 2 edits in trunk/Tools

Unreviewed. Re-enable WinEWS tests following r153527.

  • Scripts/webkitpy/common/config/ews.json:
12:20 PM Changeset in webkit [153533] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. AppleWin port.

  • platform/win/editing/selection/move-left-right-expected.txt:
12:03 PM Changeset in webkit [153532] by barraclough@apple.com
  • 80 edits in trunk/Source

Some cleanup in JSValue::get

Reviewed by Geoff Garen.


JSValue::get is implemented to:

1) Check if the value is a cell – if not, synthesize a prototype to search,
2) call getOwnPropertySlot on the cell,
3) if this returns false, cast to JSObject to get the prototype, and walk the prototype chain.

By all rights this should crash when passed a string and accessing a property that does not exist, because
the string is a cell, getOwnPropertySlot should return false, and the cast to JSObject should be unsafe.
To work around this, JSString::getOwnPropertySlot actually implements 'get' functionality - searching the
prototype chain, and faking out a return value of undefined if no property is found.

This is a huge hazard, since fixing JSString::getOwnPropertySlot or calling getOwnPropertySlot on cells
from elsewhere would introduce bugs. Fortunately it is only ever called in this one place.

The fix here is to move getOwnPropertySlot onto JSObjecte and end this madness - cells don't have property
slots anyway.

Interesting changes are in JSCJSValueInlines.h, JSString.cpp - the rest is pretty much all JSCell -> JSObject.


  • WebCore.exp.in:
  • bindings/js/JSDOMWindowCustom.cpp:


  • bindings/scripts/CodeGeneratorJS.pm:


  • bridge/objc/objc_runtime.h:
  • bridge/objc/objc_runtime.mm:


  • bridge/runtime_array.cpp:


  • bridge/runtime_array.h:
  • bridge/runtime_method.cpp:


  • bridge/runtime_method.h:
  • bridge/runtime_object.cpp:


  • bridge/runtime_object.h:
    • getOwnPropertySlot, JSCell -> JSObject


  • WebProcess/Plugins/Netscape/JSNPObject.cpp:


  • WebProcess/Plugins/Netscape/JSNPObject.h:
    • getOwnPropertySlot, JSCell -> JSObject
11:48 AM Changeset in webkit [153531] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION (r153406): DOM intervals are not properly restarted when resumed

Reviewed by Sam Weinig.

  • page/SuspendableTimer.cpp: (WebCore::SuspendableTimer::suspend): Call base class version of repeatInterval(), not our version that will just return the current value of m_savedRepeatInterval in this situation.
11:44 AM Changeset in webkit [153530] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Avoid calling nextRenderer() in some cases

Reviewed by Andreas Kling.

Merge https://chromium.googlesource.com/chromium/blink/+/3207cfda52082f4fd6a04c7819c18a980de58beb.

  • dom/Text.cpp:


11:41 AM Changeset in webkit [153529] by rniwa@webkit.org
  • 8 edits in trunk/Source/WebCore

Convert most callers of setInlineStyleProperty passing strings to enums or doubles instead

Reviewed by Andreas Kling.

Merge https://chromium.googlesource.com/chromium/blink/+/8157dd9381716759f183fabbfed29c52962be746

  • editing/DeleteButtonController.cpp:


  • html/HTMLTextFormControlElement.cpp:


  • html/ImageDocument.cpp:


  • html/shadow/MediaControlElements.cpp:


  • html/track/TextTrackCue.cpp:


  • html/track/TextTrackCueGeneric.cpp:


  • rendering/RenderLayer.cpp:


11:18 AM Changeset in webkit [153528] by Bem Jones-Bey
  • 27 edits in trunk/LayoutTests

[CSS Shapes] Stop using internals in shape-outside tests

Reviewed by Alexandru Chiculita.

We no longer need to use window.internals for shape-outside, since it
is enabled by default on ports where it is compiled in. To make the
w3c spec test cleaner, that reference has been removed from all of the

  • csswg/submitted/shapes/shape-outside/shape-outside-floats-circle-000.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-000.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-001-expected.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-001.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-002-expected.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-002.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-003.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-004.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-inset-rectangle-000.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-inset-rectangle-001.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-inset-rectangle-002.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-polygon-000.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-polygon-001.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-polygon-002.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-001.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-002.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-003.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-004.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-square-000.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-square-border-000.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-vertical-rectangle-000.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-vertical-rectangle-001-expected.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-vertical-rectangle-001.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-vertical-rectangle-002-expected.html:
  • csswg/submitted/shapes/shape-outside/shape-outside-floats-vertical-rectangle-002.html:
  • csswg/submitted/shapes/shape-outside/w3c-import.log:
11:03 AM Changeset in webkit [153527] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

[Win] JavaScript crash.

Reviewed by Mark Hahnenberg.

  • jit/JITStubsX86.h: Implement ctiVMThrowTrampoline and

ctiVMThrowTrampolineSlowpath the same way as the gcc x86 version does.

10:47 AM Changeset in webkit [153526] by rniwa@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Test assignment to indexed window properties

Reviewed by Geoffrey Garen.

Merge https://chromium.googlesource.com/chromium/blink/+/bdeca10fa79477f669cab1e5b081a480e743fd3f

  • http/tests/security/xss-DENIED-window-index-assign-expected.txt: Added.
  • http/tests/security/xss-DENIED-window-index-assign.html: Added.
9:52 AM Changeset in webkit [153525] by rniwa@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Add a test to ensure SelectElement removes an option when null is assigned by indexed setter

Reviewed by Alexey Proskuryakov.

Merge a test in https://chromium.googlesource.com/chromium/blink/+/da5c8d908b87f75c5ba3d1457c2353642e999963
even though the regression never existed in WebKit.

  • fast/forms/select/select-assign-null-expected.txt: Added.
  • fast/forms/select/select-assign-null.html: Added.
9:24 AM Changeset in webkit [153524] by Bem Jones-Bey
  • 2 edits in trunk/Tools

Unreviewed: Adding myself to the committers' list.

  • Scripts/webkitpy/common/config/contributors.json:
9:08 AM Changeset in webkit [153523] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Coordinated Graphics] Use m_ prefix only for member variable

Patch by Jae Hyun Park <jae.park@company100.net> on 2013-07-31
Reviewed by Noam Rosenthal.

WebKit coding style suggests to use m_ prefix only for data members.
This patch also removes unnecessary copy by passing const-reference
parameter values.

  • platform/graphics/texmap/coordinated/CoordinatedCustomFilterProgram.h:


7:39 AM Changeset in webkit [153522] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt] Images are down-scaled badly

Reviewed by Jocelyn Turcotte.

QPainter only does bilinear filtering, which means it will downscaling beyond
0.5x will start skipping pixel and start to degrade the end result. Scaling in
QImage and QPixmap however uses a better but much more expensive sampling that
counts all pixels.

To get the high quality downscaling we must therefore prescale the images before
painting them. To avoid a performance impact on repeated paints the prescaled
image are saved in the QPixmapCache.

  • platform/graphics/qt/ImageQt.cpp:


7:35 AM Changeset in webkit [153521] by simon.pena@samsung.com
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed gardening. Remove flaky tests from TestExpectations.

  • platform/gtk/TestExpectations: Remove tests no longer flaky after

webkit.org/b/100688 was fixed in r140166.

6:09 AM Changeset in webkit [153520] by allan.jensen@digia.com
  • 6 edits in trunk

[Qt] Build WebKit with C++11

Reviewed by Csaba Osztrogonác.


We no longer need to enable C++11 specifically for WebKit2.

  • WebKit2.pri:


Enable building with C++11.

  • qmake/mkspecs/features/default_pre.prf:
  • qmake/mkspecs/features/unix/default_post.prf:
  • qmake/mkspecs/features/unix/default_pre.prf:
5:49 AM Changeset in webkit [153519] by allan.jensen@digia.com
  • 2 edits in trunk/Tools

[Qt] ASSERTS trigger in release builds

Reviewed by Jocelyn Turcotte.

Ensure the qmake also defaults to release if no configuration is known.

  • qmake/mkspecs/features/default_post.prf:
5:42 AM Changeset in webkit [153518] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

[texmap][GStreamer][GTK] composited video shows tearing

Reviewed by Martin Robinson.

  • gtk/jhbuild.modules: Bump the Jhbuild versions of the Gdk-Pixbuf and GTK+ packages to 2.27.3 and 3.8.2, respectively.

The first is required by the second, and the GTK+ bump introduces proper display framerate synchronization that removes
screen tearing when enabling accelerated compositing and performing graphically heavy operations like viewing HD videos.

5:12 AM Changeset in webkit [153517] by michael.bruning@digia.com
  • 2 edits in trunk/Source/WebKit/qt

[Qt][WK1] navigator.plugins shows too few entries.

Reviewed by Jocelyn Turcotte.

Based on input by Choon Sik Cho.

PlatformStrategiesQt::getPluginInfo was using the
WTF::Vector::resize method wrongly.

This patch removes the call to Vector::resize as
Vector::append will take care of increasing capacity
if needed.

  • WebCoreSupport/PlatformStrategiesQt.cpp:


4:56 AM Changeset in webkit [153516] by commit-queue@webkit.org
  • 5 edits
    6 adds in trunk/Source

[Qt] Add interface API for origin whitelisting

Patch by Deepjyoti Saha <deesaha@cisco.com> on 2013-07-31
Reviewed by Jocelyn Turcotte.

Adding interface APIs in QWebSecurityOrigin to add and remove whiteList entires.

Re-used most of the test cases written by Carol Szabo <carol.szabo@nokia.com>
for https://bugs.webkit.org/show_bug.cgi?id=31875 and added the same.

  • Api/qwebsecurityorigin.cpp:


  • Api/qwebsecurityorigin.h:
  • tests/qwebsecurityorigin: Added.
  • tests/qwebsecurityorigin/qwebsecurityorigin.pro: Added.
  • tests/qwebsecurityorigin/resources: Added.
  • tests/qwebsecurityorigin/resources/test.html: Added.
  • tests/qwebsecurityorigin/tst_qwebsecurityorigin.cpp: Added.


  • tests/qwebsecurityorigin/tst_qwebsecurityorigin.qrc: Added.
2:44 AM Changeset in webkit [153515] by g.czajkowski@samsung.com
  • 6 edits in trunk/Source/WebCore

Remove guessesVector param from isUngrammatical

Reviewed by Ryosuke Niwa.

TextCheckingHelper::isUngrammatical(Vector<String>& guessesVector) doesn't return
guesses for ungrammatical phrases through its parameter.
Editor::isSelectionUngrammatical() uses it to check whether the selection
is ungrammatical.

r71009 showed that isUngrammatical(Vector<String>& guessesVector) had not supported
grammar guesses.

The grammar guesses can be retrieved by guessesForMisspelledOrUngrammaticalRange

No new tests, this is dead code due to no WebKit port implements grammar using
legacy text checker.

  • WebCore.exp.in: Removed ZN7WebCore6Editor32guessesForUngrammaticalSelectionEv.
  • editing/Editor.cpp:


  • editing/Editor.h: Removed guessesForUngrammaticalSelection. Dead code.
  • editing/TextCheckingHelper.cpp:


  • editing/TextCheckingHelper.h:
1:12 AM Changeset in webkit [153514] by akling@apple.com
  • 3 edits in trunk/Source/WTF

Shrink Vectors with inline capacity.

Reviewed by Anders Carlsson.

Pack Vector::m_size next to VectorBufferBase::m_capacity so there's no space wasted
on padding when sizeof(T) >= 8. Since m_size is not conceptually part of the buffer,
I just using'ed it into Vector.

  • wtf/SizeLimits.cpp:
  • wtf/Vector.h:


1:06 AM Changeset in webkit [153513] by g.czajkowski@samsung.com
  • 3 edits in trunk/Source/WebCore

Unnecessary const_cast<TextCheckingHelper*>(this)->findFirstBadGrammar

Reviewed by Ryosuke Niwa.

Added missing const modifier to findFirstBadGrammar (and findFirstGrammarDetail
respectively) to call it in 'isUngrammatical() const' without const casting.

No new tests, no behavior change.

  • editing/TextCheckingHelper.cpp:

Added const.

Now const_cast can be removed.

  • editing/TextCheckingHelper.h:
12:23 AM Changeset in webkit [153512] by g.czajkowski@samsung.com
  • 3 edits in trunk/Source/WebCore

findFirstGrammarDetail doesn't need to be exposed.

Reviewed by Darin Adler.

Make TextCheckingHelper::findFirstGrammarDetail private.
Remove badGrammarPhraseLength param. It's not used any longer.

No new tests, no behavior change.

  • editing/TextCheckingHelper.cpp:


  • editing/TextCheckingHelper.h:
Note: See TracTimeline for information about the timeline view.