Timeline



Mar 1, 2013:

11:52 PM WebKitGTK/WebKit2Roadmap edited by Carlos Garcia Campos
(diff)
11:51 PM WebKitGTK/WebKit2Roadmap edited by Carlos Garcia Campos
Update roadmap (diff)
11:46 PM Changeset in webkit [144533] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

Tried to fix the build after r144530.

  • platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.h: Include the header for the

base class.

11:00 PM Changeset in webkit [144532] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Adding failure expectations for IndexedDB tests

that regressed on platforms using JavaScriptCore with r144517.

10:41 PM Changeset in webkit [144531] by tdanderson@chromium.org
  • 2 edits in trunk/Source/WebCore

Remove unused member variable m_useLatchedEventNode from PlatformWheelEvent.h
https://bugs.webkit.org/show_bug.cgi?id=107314

Reviewed by Darin Adler.

EventHandler::handleGestureScrollCore() was removed in http://trac.webkit.org/changeset/140177,
and this was the only place where the member variable |m_useLatchedEventNode| in
PlatformWheelEvent was mutated. This variable is no longer needed and so it should be removed.

No change in behavior, so no new tests needed.

  • platform/PlatformWheelEvent.h:

(WebCore::PlatformWheelEvent::PlatformWheelEvent):
(WebCore::PlatformWheelEvent::useLatchedEventNode):
(PlatformWheelEvent):

10:36 PM Changeset in webkit [144530] by ap@apple.com
  • 208 edits
    7 adds in trunk/Source

Reduce amount of rebuilding when touching networking headers
https://bugs.webkit.org/show_bug.cgi?id=111035

Reviewed by Eric Seidel.

This uses a number of common unsurprising techniques. One interesting observation
is that including CachedResource related headers is very expensive. We can usually
get away with their Client counterparts, and with CachedResourceHandle.

  • page/Frame.cpp:
  • page/Frame.h: Don't include FrameLoader, greatly reducing include graph for most non-loader files. This required making Frame::init() non-inline - I'm not sure why it ever was.
  • loader/FrameLoader.cpp:
  • loader/FrameLoader.h: Even though FrameLoader is logically on loading side of WebCore, it's included in too many places. Not including PolicyChecker.h and ResourceHandle.h was among the largest wins. As a future improvement, we should probably convert other members to OwnPtrs.
  • css/CSSCrossfadeValue.h: Initializing CachedResourceHandle with 0 requires a definition of a class it holds, but default construction does not.
  • loader/CrossOriginAccessControl.h: This file among others only needs ResourceHandleTypes.h, not ResourceHandle.h. This header is semi-recent, so not all include sites were updated.
  • loader/cache/CachedFont.h:
  • loader/cache/CachedFontClient.h: Added.
  • loader/cache/CachedRawResource.h:
  • loader/cache/CachedRawResourceClient.h: Added.
  • loader/cache/CachedSVGDocument.h:
  • loader/cache/CachedSVGDocumentClient.h: Added. These types were defining client types in the same headers, making it impossible to avoid including networking headers through CachedResource. Moved clients into separate files.
  • plugins/PluginStream.h:
  • plugins/PluginStreamClient.h: Added. Similar situation here.
  • loader/cache/CachedResourceHandle.cpp:
  • loader/cache/CachedResourceHandle.h: Moved functions that need to know about CachedResource to .cpp file. This is another huge win. Added a destructor, so that CachedResource woudn't be needed in all files that include CachedResourceHandle.
  • loader/cache/CachedSVGDocumentReference.cpp: Added.
  • loader/cache/CachedSVGDocumentReference.h: Moved constructor and virtual function implementations to a .cpp file - they need not inlining, and this lets us avoid including CachedSVGDocument.h in the header.
  • platform/graphics/filters/FilterOperation.cpp:
  • platform/graphics/filters/FilterOperation.h: Avoid including CachedSVGDocumentReference.h. This is not such a big win now that CachedSVGDocumentReference.h itself is smaller, but FilterOperation is so clearly rendering code that it seems best to cut any ties with resources and loading. Added a virtual destrutor in .cpp file, because inline destructors in polymorphic classes are generally harmful (due to code bloat).
  • plugins/PluginRequest.h: Added.
  • plugins/PluginView.h: Moved PluginRequest into a separate file, it was out of place in a view hierarchy class file.
  • rendering/RenderImageResource.cpp:
  • rendering/RenderImageResource.h: Moved definitions of virtual functions to a .cpp file. Thre is no win from having them inline, and now we don't need CachedImage.h in the header.
  • rendering/style/StyleCustomFilterProgram.cpp: Added.
  • rendering/style/StyleCustomFilterProgram.h: Ditto.
  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/mediastream/RTCPeerConnection.cpp:
  • Modules/notifications/Notification.cpp:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/ScriptControllerBase.cpp:
  • bindings/js/JSNodeCustom.cpp:
  • bindings/js/ScriptController.cpp:
  • bindings/js/ScriptSourceCode.h:
  • bindings/objc/DOM.mm:
  • bindings/v8/ScriptController.cpp:
  • bindings/v8/V8DOMWindowShell.cpp:
  • bindings/v8/custom/V8DOMWindowCustom.cpp:
  • css/CSSFontFaceSource.h:
  • css/CSSFontSelector.cpp:
  • css/WebKitCSSSVGDocumentValue.cpp:
  • css/WebKitCSSSVGDocumentValue.h:
  • dom/Clipboard.cpp:
  • dom/ContainerNode.cpp:
  • dom/DOMImplementation.cpp:
  • dom/PendingScript.h:
  • dom/ScriptElement.cpp:
  • dom/ScriptElement.h:
  • history/CachedFrame.cpp:
  • html/DOMURL.cpp:
  • html/HTMLAnchorElement.cpp:
  • html/HTMLAppletElement.cpp:
  • html/HTMLElement.cpp:
  • html/HTMLEmbedElement.cpp:
  • html/HTMLFrameSetElement.cpp:
  • html/HTMLHtmlElement.cpp:
  • html/HTMLImageElement.cpp:
  • html/HTMLObjectElement.cpp:
  • html/HTMLPlugInElement.cpp:
  • html/ImageDocument.cpp:
  • html/ImageInputType.cpp:
  • html/MediaDocument.cpp:
  • html/PluginDocument.cpp:
  • html/canvas/WebGLRenderingContext.cpp:
  • html/parser/HTMLConstructionSite.cpp:
  • html/parser/HTMLParserOptions.cpp:
  • html/parser/HTMLScriptRunner.h:
  • html/parser/XSSAuditor.cpp:
  • html/parser/XSSAuditorDelegate.cpp:
  • inspector/InspectorDebuggerAgent.cpp:
  • inspector/InspectorFileSystemAgent.cpp:
  • inspector/InspectorFrontendHost.cpp:
  • inspector/InspectorInstrumentation.h:
  • inspector/InspectorPageAgent.cpp:
  • inspector/NetworkResourcesData.cpp:
  • inspector/NetworkResourcesData.h:
  • loader/CookieJar.cpp:
  • loader/CrossOriginAccessControl.cpp:
  • loader/CrossOriginPreflightResultCache.h:
  • loader/DocumentThreadableLoader.h:
  • loader/ImageLoader.cpp:
  • loader/ImageLoader.h:
  • loader/LinkLoader.h:
  • loader/MainResourceLoader.cpp:
  • loader/MainResourceLoader.h:
  • loader/MixedContentChecker.cpp:
  • loader/PingLoader.cpp:
  • loader/PolicyChecker.h:
  • loader/ProgressTracker.cpp:
  • loader/SubframeLoader.cpp:
  • loader/SubresourceLoader.cpp:
  • loader/TextTrackLoader.cpp:
  • loader/TextTrackLoader.h:
  • loader/ThreadableLoader.h:
  • loader/appcache/ApplicationCacheGroup.cpp:
  • loader/appcache/ApplicationCacheGroup.h:
  • loader/appcache/ApplicationCacheHost.cpp:
  • loader/archive/cf/LegacyWebArchive.cpp:
  • loader/cache/CachedFont.cpp:
  • loader/cache/CachedImage.cpp:
  • loader/cache/CachedRawResource.cpp:
  • loader/cache/CachedResource.cpp:
  • loader/cache/CachedStyleSheetClient.h:
  • loader/cache/MemoryCache.cpp:
  • loader/cache/MemoryCache.h:
  • loader/chromium/CachedRawResourceChromium.cpp:
  • loader/icon/IconController.cpp:
  • loader/icon/IconLoader.h:
  • loader/mac/ResourceLoaderMac.mm:
  • page/DOMWindowExtension.cpp:
  • page/DragController.cpp:
  • page/PerformanceNavigation.cpp:
  • page/PerformanceTiming.cpp:
  • page/PointerLockController.cpp:
  • page/Settings.cpp:
  • page/animation/CSSPropertyAnimation.cpp:
  • platform/chromium/PasteboardChromium.cpp:
  • platform/efl/ErrorsEfl.cpp:
  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
  • platform/gtk/ErrorsGtk.cpp:
  • platform/gtk/PasteboardGtk.cpp:
  • platform/gtk/PasteboardHelper.h:
  • platform/mac/ClipboardMac.h:
  • platform/mac/ClipboardMac.mm:
  • platform/mac/HTMLConverter.mm:
  • platform/mac/PasteboardMac.mm:
  • platform/network/AuthenticationChallengeBase.cpp:
  • platform/network/cf/CookieJarCFNet.cpp:
  • platform/network/cf/ResourceRequestCFNet.cpp:
  • platform/network/mac/CookieStorageMac.mm:
  • platform/qt/PasteboardQt.cpp:
  • plugins/DOMMimeType.cpp:
  • plugins/PluginView.cpp:
  • rendering/HitTestResult.cpp:
  • rendering/InlineFlowBox.cpp:
  • rendering/RenderBox.cpp:
  • rendering/RenderEmbeddedObject.cpp:
  • rendering/RenderImage.cpp:
  • rendering/RenderImageResourceStyleImage.cpp:
  • rendering/RenderLayer.cpp:
  • rendering/RenderLayerBacking.cpp:
  • rendering/RenderLayerFilterInfo.h:
  • rendering/RenderListItem.cpp:
  • rendering/RenderListMarker.cpp:
  • rendering/RenderSnapshottedPlugIn.cpp:
  • rendering/RenderTableCol.cpp:
  • rendering/RenderTableRow.cpp:
  • rendering/RenderTableSection.cpp:
  • rendering/style/StyleCachedShader.h:
  • svg/SVGFEImageElement.h:
  • svg/SVGFontFaceUriElement.h:
  • svg/SVGImageLoader.cpp:
  • svg/SVGUseElement.cpp:
  • svg/SVGUseElement.h:
  • svg/graphics/SVGImageCache.cpp:
  • testing/MockPagePopupDriver.cpp:
  • xml/XSLStyleSheet.h:
  • xml/XSLTProcessorLibxslt.cpp:
  • xml/parser/XMLDocumentParser.cpp:
  • xml/parser/XMLDocumentParser.h:
  • xml/parser/XMLDocumentParserLibxml2.cpp: Many self-evident changes - removing unnecessary header includes, adding smaller more local ones that are now necessary.
10:14 PM Changeset in webkit [144529] by hyatt@apple.com
  • 4 edits
    6 adds in trunk

[New Multicolumn] Transformed objects inside fragmented transparent objects don't render
https://bugs.webkit.org/show_bug.cgi?id=111221.

Reviewed by Simon Fraser.

Source/WebCore:

Improve transparencyClipBox so that it understands when moving into descendants
that it does in fact have to break up the transformed clip rect across the
fragments.

Make sure when handling fragmented transforms using multiple paints that
the test that determines the extent of the transform within the fragments
uses transparencyClipBox. This gives us an accurate set of columns that the
final transformed result will paint across.

Tests: fast/multicol/mixed-opacity-fixed-test.html

fast/multicol/mixed-opacity-test.html
fast/multicol/transform-inside-opacity.html

  • rendering/RenderLayer.cpp:

(WebCore::transparencyClipBox):
(WebCore::expandClipRectForDescendantsAndReflection):
Break transformed boxes up into fragments when they are
being requested by an ancestor.

(WebCore::RenderLayer::collectFragments):
(WebCore::RenderLayer::paintTransformedLayerIntoFragments):
(WebCore::RenderLayer::hitTestTransformedLayerInFragments):

  • rendering/RenderLayer.h:

(RenderLayer):
Modify collectFragments so that we pass in the correct range
within the columns that can possibly cover the fragmented
transformed box.

LayoutTests:

  • fast/multicol/mixed-opacity-fixed-test-expected.html: Added.
  • fast/multicol/mixed-opacity-fixed-test.html: Added.
  • fast/multicol/mixed-opacity-test-expected.html: Added.
  • fast/multicol/mixed-opacity-test.html: Added.
  • fast/multicol/transform-inside-opacity-expected.html: Added.
  • fast/multicol/transform-inside-opacity.html: Added.
9:53 PM Changeset in webkit [144528] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Remove call to set task priority of WebKit2 processes on Mac
https://bugs.webkit.org/show_bug.cgi?id=111239

Patch by Kiran Muppala <cmuppala@apple.com> on 2013-03-01
Reviewed by Darin Adler.

Remove call to set task prioirty of WebKit2 processes on Mac as it
is no longer necessary.

  • Shared/mac/ChildProcessMac.mm:

(WebKit::ChildProcess::platformInitialize): Remove call to setpriority().

9:23 PM Changeset in webkit [144527] by loislo@chromium.org
  • 11 edits in trunk

Web Inspector: Native Memory Instrumentation: do not visit raw pointers by default.
https://bugs.webkit.org/show_bug.cgi?id=110943

Reviewed by Yury Semikhatsky.

Unfortunately in many cases raw pointer may point to an object that has been deleted.
There is no working solution to solve this problem in general.
It could be solved only on case by case basis.

Source/WebCore:

  • inspector/HeapGraphSerializer.cpp:

(WebCore::HeapGraphSerializer::HeapGraphSerializer):
(WebCore::HeapGraphSerializer::reportLeaf):

  • loader/cache/MemoryCache.cpp:

(WebCore::MemoryCache::reportMemoryUsage):

  • platform/graphics/BitmapImage.cpp:

(WebCore::FrameData::reportMemoryUsage):

  • platform/graphics/skia/MemoryInstrumentationSkia.cpp:

(reportMemoryUsage):

Source/WTF:

  • wtf/MemoryInstrumentation.h:

(WTF::MemoryInstrumentation::addObject):
(WTF::MemoryInstrumentation::MemberTypeTraits::addObject):
(WTF::MemoryClassInfo::addMember):
(WTF::MemoryInstrumentation::addObjectImpl):

  • wtf/MemoryInstrumentationString.h:

(WTF::reportMemoryUsage):

Tools:

  • TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:
  • TestWebKitAPI/Tests/WebCore/HeapGraphSerializerTest.cpp:

(TestWebKitAPI::TEST):

9:18 PM Changeset in webkit [144526] by haraken@chromium.org
  • 9 edits
    2 adds in trunk

Style recalculation takes too long when adding whitespace text nodes
https://bugs.webkit.org/show_bug.cgi?id=110786

Reviewed by Darin Adler.

Source/WebCore:

This takes 216 msec.
for (var i = 0; i < 1500; ++i) {

document.body.appendChild(document.createTextNode('x'));
document.body.appendChild(document.createElement('div'));
document.body.appendChild(document.createTextNode('x'));

}

But this takes 25.3 seconds.
for (var i = 0; i < 1500; ++i) {

document.body.appendChild(document.createTextNode(' '));
document.body.appendChild(document.createElement('div'));
document.body.appendChild(document.createTextNode(' '));

}

The reason is that we do not create renderers for empty text
nodes and thus we are hitting the worst O(N2) case in Node::attach().
(See FIXME in Node::attach().)

This patch adds a logic to bail out the loop to avoid the O(N2) case.
Specifically, the patch bails out the loop if we encounter a text node
for which we again decided not to create a renderer. This bail out is
reasonable because the fact that we again decided not to create a renderer
for the text node indicates that there will be no affect of the result
of Text::textRendererIsNeeded() of the rest of the sibling nodes.

Performance test: https://bugs.webkit.org/attachment.cgi?id=190545
Performance result in Chromium/Linux: 25.3 sec => 48 msec !

Test: perf/append-text-nodes-without-renderers.html (for performance)

fast/dynamic/create-renderer-for-whitespace-only-text.html (for correctness)

The loop was introduced in r29054. We have to make sure that
all layout tests that were updated in r29054 pass with this patch.
See http://trac.webkit.org/changeset/29054.

  • dom/Node.cpp:

(WebCore::Node::attach):

LayoutTests:

  • fast/html/details-nested-2-expected.txt: Sometimes anonymous blocks are left without

being cleaned up (for some reason). With this patch, one anonymouse block is removed at
the clean-up phase (for some reason). Anyway the new behavior is an expected behavior.

  • platform/chromium-mac/fast/html/details-nested-2-expected.txt: Ditto.
  • platform/chromium-win/fast/html/details-nested-2-expected.txt: Ditto.
  • platform/efl/fast/html/details-nested-2-expected.txt: Ditto.
  • platform/mac/fast/html/details-nested-2-expected.txt: Ditto.
  • platform/qt/fast/html/details-nested-2-expected.txt: Ditto.
  • perf/append-text-nodes-without-renderers-expected.txt: Added. For performance test.
  • perf/append-text-nodes-without-renderers.html: Added. Ditto.
9:17 PM Changeset in webkit [144525] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit/win

Add a missing symbol after r144524.

Unreviewed.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-03-01

  • WebKit.vcproj/WebKitExports.def.in:
9:06 PM Changeset in webkit [144524] by commit-queue@webkit.org
  • 40 edits in trunk

Source/WebCore: Moved markerTextForListItem from TestRunner to Internals
https://bugs.webkit.org/show_bug.cgi?id=110939

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-03-01
Reviewed by Benjamin Poulain.

TestRunner framework is an old way of testing webkit, it would be
better to incorporate the testing frame directly into the WebCore itself
as to make it more compatible with WK2.

  • testing/Internals.cpp:

(WebCore::Internals::markerTextForListItem):
(WebCore):

  • testing/Internals.h:
  • testing/Internals.idl:

Source/WebKit/efl: Move markerTextForListItem from TestRunner to Internals
https://bugs.webkit.org/show_bug.cgi?id=110939

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-03-01
Reviewed by Benjamin Poulain.

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
  • WebCoreSupport/DumpRenderTreeSupportEfl.h:

Source/WebKit/gtk: Move markerTextForListItem from TestRunner to Internals
https://bugs.webkit.org/show_bug.cgi?id=110939

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-03-01
Reviewed by Benjamin Poulain.

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
  • WebCoreSupport/DumpRenderTreeSupportGtk.h:

(DumpRenderTreeSupportGtk):

Source/WebKit/mac: Move markerTextForListItem from TestRunner to Internals
https://bugs.webkit.org/show_bug.cgi?id=110939

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-03-01
Reviewed by Benjamin Poulain.

  • DOM/WebDOMOperations.mm:
  • DOM/WebDOMOperationsPrivate.h:

Source/WebKit/qt: Move markerTextForListItem from TestRunner to Internals
https://bugs.webkit.org/show_bug.cgi?id=110939

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-03-01
Reviewed by Benjamin Poulain.

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:
  • WebCoreSupport/DumpRenderTreeSupportQt.h:

Tools: Move markerTextForListItem from TestRunner to Internals
https://bugs.webkit.org/show_bug.cgi?id=110939

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-03-01
Reviewed by Benjamin Poulain.

  • DumpRenderTree/TestRunner.cpp:

(TestRunner::staticFunctions):

  • DumpRenderTree/TestRunner.h:

(TestRunner):

  • DumpRenderTree/blackberry/TestRunnerBlackBerry.cpp:
  • DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:

(WebTestRunner::TestRunner::TestRunner):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.h:

(TestRunner):

  • DumpRenderTree/efl/TestRunnerEfl.cpp:
  • DumpRenderTree/gtk/TestRunnerGtk.cpp:
  • DumpRenderTree/mac/TestRunnerMac.mm:
  • DumpRenderTree/qt/TestRunnerQt.cpp:
  • DumpRenderTree/qt/TestRunnerQt.h:

(TestRunnerQt):

  • DumpRenderTree/win/TestRunnerWin.cpp:
  • DumpRenderTree/wx/TestRunnerWx.cpp:
  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:
  • WebKitTestRunner/InjectedBundle/TestRunner.h:

(TestRunner):

LayoutTests: Move markerTextForListItem from TestRunner to Internals
https://bugs.webkit.org/show_bug.cgi?id=110939

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-03-01
Reviewed by Benjamin Poulain.

  • fast/lists/resources/dump-list.js:

(dumpListItemAsHTML):
(testListItemMarkerEqualsListItemText):

  • fast/lists/w3-css3-list-styles-numeric.html:
7:44 PM Changeset in webkit [144523] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled Chromium DEPS to r185662. Requested by
"James Robinson" <jamesr@chromium.org> via sheriffbot.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-03-01

  • DEPS:
6:35 PM Changeset in webkit [144522] by commit-queue@webkit.org
  • 6 edits
    1 add in trunk

Don't leak Documents when using MutationObserver from extensions
https://bugs.webkit.org/show_bug.cgi?id=111234

Patch by Elliott Sprehn <Elliott Sprehn> on 2013-03-01
Reviewed by Adam Barth.

.:

  • ManualTests/leak-observer-nonmain-world.html: Added.

Source/WebCore:

MutationObserverCallback holds a WorldContextHandle which secretly isn't
a handle to anything when it's for the main world. When it's for a non-main
world though, like those used in extensions, it becomes a strong reference
to the v8::Context which results in leaks by creating cycles:

MutationObserver -> Callback -> World -> Document -> Node -> MutationObserver.

Instead we should keep a RefPtr to a DOMWrapperWorld in the callback and then
get the v8::Context from that inside handleEvent.

Tests: ManualTests/leak-observer-nonmain-world.html

  • bindings/v8/V8Binding.cpp:

(WebCore::toV8Context): Added overload that takes a DOMWrapperWorld.

  • bindings/v8/V8Binding.h:
  • bindings/v8/V8MutationCallback.cpp:

(WebCore::V8MutationCallback::V8MutationCallback):
(WebCore::V8MutationCallback::handleEvent):

  • bindings/v8/V8MutationCallback.h:

(V8MutationCallback):

5:31 PM Changeset in webkit [144521] by ddkilzer@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

BUILD FIX: testapi should link to Foundation, not CoreFoundation

link to Foundation.framework instead of CoreFoundation.framework
since it uses NS types.

5:16 PM Changeset in webkit [144520] by betravis@adobe.com
  • 6 edits in trunk/Source/WebCore

[css exclusions] Move ExclusionShapeInsideInfo into RenderBlockRareData
https://bugs.webkit.org/show_bug.cgi?id=110995

Reviewed by Julien Chaffraix.

This patch moves ExclusionShapeInsideInfo into the RenderBlockRareData struct,
which enables us to move away from the global ExclusionShapeInsideInfo map.
Some additional refactoring was done to remove ExclusionShapeInsideInfo's
dependency on InlineIterator, which depended on RenderBlock. This work required
adding a new LineSegmentIterator struct.

Refactoring, no new tests.

  • rendering/ExclusionShapeInsideInfo.cpp:

(WebCore):
(WebCore::LineSegmentRange::LineSegmentRange): Moving the InlineIterator
constructor to the .cpp file, as InlineIterator is now forward declared in
the .h file.
(WebCore::ExclusionShapeInsideInfo::isEnabledFor): Moving isEnabledFor to
the .cpp file, as RenderBlock is now forward declared in the .h file.

  • rendering/ExclusionShapeInsideInfo.h:

(WebCore):
(LineSegmentIterator): A simple struct for containing segment positions for
layout.
(WebCore::LineSegmentIterator::LineSegmentIterator): Constructor.
(LineSegmentRange): Transitioning to store LineSegmentIterator.
(WebCore::LineSegmentRange::LineSegmentRange): Ditto.
(ExclusionShapeInsideInfo):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::willBeDestroyed): Destroying a block will now destroy
its ExclusionShapeInsideInfo, so there is no need to remove it from the map.
(WebCore):
(WebCore::RenderBlock::updateExclusionShapeInsideInfoAfterStyleChange): Use
the RenderBlockRareData struct rather than the global map.

  • rendering/RenderBlock.h:

(WebCore):
(WebCore::RenderBlock::ensureExclusionShapeInsideInfo): Ensure an info struct
is present if the shape-inside style is set.
(WebCore::RenderBlock::exclusionShapeInsideInfo): Look up the info struct for
the current block.
(WebCore::RenderBlock::setExclusionShapeInsideInfo): Update the info struct
for the current block.
(RenderBlockRareData): Add the ExclusionShapeInsideInfo member.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::constructBidiRunsForLine): Construct the appropriate offsets during
layout based on the stored LineSegmentIterators.

5:08 PM Changeset in webkit [144519] by tdanderson@chromium.org
  • 15 edits
    4 copies
    8 adds in trunk

EventHandler::handleGestureScrollUpdate() should invoke the user-generated scroll routines
so its behavior matches other user-initiated scrolls
https://bugs.webkit.org/show_bug.cgi?id=109769

Reviewed by James Robinson.

Source/WebCore:

To ensure that the scrolling behavior of GestureScrollUpdate events are consistent with
the scrolling behavior of mousewheel events, use the existing user-generated scroll logic
instead of calling into RenderLayer::scrollByRecursively(). This patch fixes the bug
reported in https://bugs.webkit.org/show_bug.cgi?id=109316, where the example page can
be scrolled using touch but cannot be scrolled using mousewheels.

Note that this patch does not use any of the mousewheel event-handling code.

Tests: fast/events/touch/gesture/touch-gesture-noscroll-body-propagated.html

fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden.html
fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden.html
fast/events/touch/gesture/touch-gesture-noscroll-body.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::clear):
(WebCore::EventHandler::handleGestureEvent):
(WebCore::EventHandler::handleGestureScrollBegin):
(WebCore::EventHandler::handleGestureScrollUpdate):
(WebCore::EventHandler::sendScrollEventToView):

By calling this function at the start of handleGestureScrollUpdate() in the case
where |m_scrollGestureHandlingNode| is null, we ensure that the scroll updates
can still scroll the page itself, if possible.

(WebCore):
(WebCore::EventHandler::clearGestureScrollNodes):

  • page/EventHandler.h:

(EventHandler):

  • platform/PlatformWheelEvent.h:

(WebCore::PlatformWheelEvent::setHasPreciseScrollingDeltas):

Source/WebKit/chromium:

Clear the nodes corresponding to a fling scroll event when the event ends.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::updateAnimations):

LayoutTests:

Four new layout tests have been added and touch-gesture-scroll-page.html has been
modified to demonstrate that this patch fixes two existing bugs. See the inline
comments below for details.

Because I am now using the existing user-generated scroll logic, the delta for a single
GestureScrollUpdate event will not be propagated to the parent of the targeted node
unless the targeted node has no remaining scrollable area. So the changes to the
existing layout tests have been made to ensure that the targeted node has been fully
scrolled before subsequent GestureScrollUpdate events will scroll the parent(s) of
the targeted node.

I have also removed the function recordScroll() from the existing layout tests
because this function already exists in the included file resources/gesture-helpers.js.

  • fast/events/touch/gesture/touch-gesture-noscroll-body-expected.txt: Added.
  • fast/events/touch/gesture/touch-gesture-noscroll-body-propagated-expected.txt: Added.
  • fast/events/touch/gesture/touch-gesture-noscroll-body-propagated.html: Copied from LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-page.html.
  • fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden-expected.txt: Added.
  • fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden.html: Copied from LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-page.html.
  • fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden-expected.txt: Added.
  • fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden.html: Copied from LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-page.html.
  • fast/events/touch/gesture/touch-gesture-noscroll-body.html: Copied from LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-page.html.
  • fast/events/touch/gesture/touch-gesture-scroll-div-not-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-div-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-div-twice-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-iframe-not-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-iframe-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-page-not-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-page-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-page.html:

I modified this layout test in order to add test coverage for another bug
which is fixed by this patch: if the hit test performed on a GestureScrollBegin
does not target a specific node, the subsequent GestureScrollUpdate events should
still attempt to scroll the page itself. This is consistent with how mousewheel
events behave.

  • platform/chromium/fast/events/touch/gesture/touch-gesture-noscroll-body-expected.txt: Added.
  • platform/chromium/fast/events/touch/gesture/touch-gesture-noscroll-body-propagated-expected.txt: Added.
  • platform/chromium/fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden-expected.txt: Added.
  • platform/chromium/fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden-expected.txt: Added.

These four new layout tests verify that a non-scrollable body will not scroll,
as reported in https://bugs.webkit.org/show_bug.cgi?id=109316.

5:05 PM Changeset in webkit [144518] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Revert r143827 to restore WebHelperPluginImpl's call to frameDetached()
https://bugs.webkit.org/show_bug.cgi?id=111232

Patch by David Dorwin <ddorwin@chromium.org> on 2013-03-01
Reviewed by Adam Barth.

This patch reverts r143827, which causes a crash in failure conditions:
http://crbug.com/178848

  • src/WebHelperPluginImpl.cpp:

(WebKit::WebHelperPluginImpl::destoryPage):

5:04 PM Changeset in webkit [144517] by alecflett@chromium.org
  • 4 edits in trunk/Source/WebCore

IndexedDB: Avoid ScriptValue copies in IDBAny
https://bugs.webkit.org/show_bug.cgi?id=111002

Reviewed by Adam Barth.

This avoids some v8 handle thrashing in the long term,
and protects us against some crashes in the short term.

The crashes will be fixed in
https://bugs.webkit.org/show_bug.cgi?id=110206.

  • Modules/indexeddb/IDBAny.cpp:

(WebCore::IDBAny::createNull):
(WebCore::IDBAny::createString):
(WebCore::IDBAny::IDBAny):
(WebCore::IDBAny::scriptValue):

  • Modules/indexeddb/IDBAny.h:

(WebCore::IDBAny::create):
(IDBAny):
(WebCore::IDBAny::keyPath):

  • bindings/v8/custom/V8IDBAnyCustom.cpp:

(WebCore::toV8):
(WebCore):

5:01 PM Changeset in webkit [144516] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening of AppleWin port.

  • platform/win/TestExpectations:
5:00 PM Changeset in webkit [144515] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Upstream smart selection
https://bugs.webkit.org/show_bug.cgi?id=111226

Patch by Iris Wu <shuwu@rim.com> on 2013-03-01
Reviewed by Rob Buis.

  1. Extend the touch hold text selection to next paragraph.
  2. Draw and expand overlay over text as touch hold selection expands.

Select paragraph when it's entirely covered by overlay.

  1. Start scrolling at a constant rate when the end of

next pargraph is not in the viewport.

Reviewed Internally By Genevieve Mak and Mike Fenton.
PR 217897 238485 258279 279042 299779

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::selectAtDocumentPoint):
(BlackBerry::WebKit::WebPage::expandSelection):
(WebKit):
(BlackBerry::WebKit::WebPage::setOverlayExpansionPixelHeight):
(BlackBerry::WebKit::WebPagePrivate::setOverlayExpansionPixelHeight):
(BlackBerry::WebKit::WebPage::setParagraphExpansionPixelScrollMargin):

  • Api/WebPage.h:
  • Api/WebPageClient.h:
  • Api/WebPage_p.h:

(WebPagePrivate):

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::cancelSelection):
(BlackBerry::WebKit::SelectionHandler::selectAtPoint):
(BlackBerry::WebKit::isInvalidLine):
(WebKit):
(BlackBerry::WebKit::isInvalidParagraph):
(BlackBerry::WebKit::SelectionHandler::selectNextParagraph):
(BlackBerry::WebKit::SelectionHandler::drawOverlay):
(BlackBerry::WebKit::SelectionHandler::findNextOverlayRegion):
(BlackBerry::WebKit::SelectionHandler::expandSelection):
(BlackBerry::WebKit::SelectionHandler::ensureSelectedTextVisible):
(BlackBerry::WebKit::SelectionHandler::setParagraphExpansionScrollMargin):
(BlackBerry::WebKit::SelectionHandler::expandSelectionToGranularity):

  • WebKitSupport/SelectionHandler.h:

(SelectionHandler):
(BlackBerry::WebKit::SelectionHandler::setOverlayExpansionHeight):

4:55 PM Changeset in webkit [144514] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening of AppleWin port.

  • platform/win/TestExpectations:
3:46 PM Changeset in webkit [144513] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening of AppleWin port.

  • platform/win/TestExpectations:
3:22 PM Changeset in webkit [144512] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Mark some software compositing tests as failing before landing anti-aliasing changes
https://bugs.webkit.org/show_bug.cgi?id=111224

  • platform/chromium/TestExpectations:
3:05 PM Changeset in webkit [144511] by beidson@apple.com
  • 14 edits in branches/safari-536.29-branch

Merge 143988

2013-02-25 Anders Carlsson <andersca@apple.com>

Source/WebKit2:

Add a new unavailablePluginButtonClicked callback that takes a WKDictionary of plug-in information
https://bugs.webkit.org/show_bug.cgi?id=110821

Reviewed by Beth Dakin.

  • UIProcess/API/C/WKPage.cpp: (WKPageGetPluginInformationPluginspageAttributeURLKey): (WKPageGetPluginInformationPluginURLKey): Add two new API key getters.


  • UIProcess/API/C/WKPage.h: Add a new callback and deprecate the old callback.


  • UIProcess/WebLoaderClient.cpp: (WebKit::WebLoaderClient::didFailToInitializePlugin): (WebKit::WebLoaderClient::didBlockInsecurePluginVersion): (WebKit::WebLoaderClient::pluginLoadPolicy): Make the pluginInformationDictionary a static member function of WebPageProxy so it can be called from WebUIClient as well.


  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::getPluginPath): Pass the bundle version as well.

(WebKit::WebPageProxy::pluginInformationPluginspageAttributeURLKey):
(WebKit::WebPageProxy::pluginInformationPluginURLKey):
Add two new keys.

(WebKit::WebPageProxy::pluginInformationDictionary):
Handle more keys.

(WebKit::WebPageProxy::unavailablePluginButtonClicked):
Get the plug-in bundle identifier and version.

  • UIProcess/WebPageProxy.messages.in: Pass along more information; the frame and page URLs.
  • UIProcess/WebUIClient.cpp: (WebKit::WebUIClient::unavailablePluginButtonClicked): Call the new callback if it's supported.
  • UIProcess/WebUIClient.h: (WebUIClient):
  • UIProcess/mac/WebInspectorProxyMac.mm: (WebKit::WebInspectorProxy::platformCreateInspectorPage): Update for API changes.
  • WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::WebChromeClient::unavailablePluginButtonClicked): Ensure that the pluginspage attribute is a valid URL.

Tools:

Add a new unavailablePluginButtonClicked callback that takes a WKDictionary of plug-in information
https://bugs.webkit.org/show_bug.cgi?id=110821
<rdar://problem/13265303>

Reviewed by Beth Dakin.

Update for WebKit2 changes.

  • MiniBrowser/mac/WK2BrowserWindowController.m: (-[WK2BrowserWindowController awakeFromNib]):
  • WebKitTestRunner/TestController.cpp: (WTR::TestController::createOtherPage): (WTR::TestController::createWebViewWithOptions): (WTR::TestController::unavailablePluginButtonClicked):
  • WebKitTestRunner/TestController.h: (TestController):
2:55 PM Changeset in webkit [144510] by rniwa@webkit.org
  • 4 edits in trunk/Tools

Don't use legacy test names when returning results from PerfTest.run
https://bugs.webkit.org/show_bug.cgi?id=111148

Reviewed by Dirk Pranke.

  • Scripts/webkitpy/performance_tests/perftest.py:

(PerfTestMetric.name): Renamed from metric.
(PerfTest.test_name_without_file_extension): Extracted from legacy_chromium_bot_compatible_test_name.
(PerfTest.run): Use metric name instead of the legacy name to store iteration values.
(ChromiumStylePerfTest.parse_and_log_output): Use the metric name to store results as done in PerfTest.run.

  • Scripts/webkitpy/performance_tests/perftest_unittest.py:

(TestPerfTestMetric.test_init_set_time_metric):
(TestPerfTestMetric.legacy_chromium_bot_compatible_test_name): Removed. The integration tests test this.
(TestReplayPerfTest.test_run_with_driver_accumulates_results):
(TestReplayPerfTest.test_run_with_driver_accumulates_memory_results):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner.init):
(PerfTestsRunner._generate_results_dict): Updated to iterate over (test, metrics) pair. Use view_source_url
to obtain the trac URL instead of hard coding it.
(PerfTestsRunner._run_tests_set):

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

[chromium] Mark more flaky tests related to scrollbar ordering
https://bugs.webkit.org/show_bug.cgi?id=111199

Unreviewed gardening.

  • platform/chromium/TestExpectations:
2:42 PM Changeset in webkit [144508] by vcarbune@chromium.org
  • 4 edits
    2 adds in trunk

Support padding, margin and border for internal UA cue styling
https://bugs.webkit.org/show_bug.cgi?id=110703

Reviewed by Eric Carlson.

Source/WebCore:

For some particular user agent styling this allows the possibility
of making the window around the cue text bigger to match some user
styles (see CaptionUserPreferencesMac::captionsStyleSheetOverride).

These properties *cannot* be set through by using the ::cue
pseudo-element and, as specified, are used only internally.

Note: This patch is identical to the previously commited one,
as it was rolled back without related tests failing.

Test: media/track/track-cue-rendering-with-padding.html

  • css/mediaControls.css:

(video::-webkit-media-text-track-display): Set the CSS box model
to include in the specified width or height the values of
padding / margin / border by using -webkit-box-sizing and avoid
overflow over 100% width because of having these properties set.

  • rendering/RenderTextTrackCue.cpp:

(WebCore::RenderTextTrackCue::isOutside): To not interfere with
the regular WebVTT positioning algorithm, the check is done for
the absolute content box.
(WebCore::RenderTextTrackCue::repositionCueSnapToLinesSet): Added
an extra adjustment step to accomodate vertical padding (and not
overflow the cue container)

LayoutTests:

  • media/track/track-cue-rendering-with-padding-expected.txt: Added.
  • media/track/track-cue-rendering-with-padding.html: Added.
2:39 PM Changeset in webkit [144507] by aestes@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION (r125809): CFStrings created via StringImpl::createCFString() might reference freed memory when Objective-C garbage collection is enabled
https://bugs.webkit.org/show_bug.cgi?id=111219

Reviewed by Benjamin Poulain.

StringImpl::createCFString() uses CFStringCreateWithBytesNoCopy() in
order to create CFString without making an unnecessary copy. In order
to ensure that the the StringImpl's backing buffer isn't deallocated
while the CFString is still alive, we use a custom CFAllocator to
ref/deref the StringImpl at the appropriate times.

However, custom allocators aren't supported when Objective-C garbage
collection is enabled, so in this case we use the default CF allocator.
Since we can't guarantee the lifetime of the StringImpl in this case,
we should just fall back to copying the string, as we did prior to r125809.

  • platform/text/cf/StringImplCF.cpp:

(garbageCollectionEnabled): Moved the check for whether garbage
collection is enabled from StringWrapperCFAllocator::create() to here.
(WTF::StringWrapperCFAllocator::create): Call garbageCollectionEnabled().
(WTF::StringImpl::createCFString): If garbage collection is enabled,
call the variants of CFStringCreate that copy the string.

2:38 PM Changeset in webkit [144506] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/gtk

[GTK] Expose more of the configuration step to the gyp build
https://bugs.webkit.org/show_bug.cgi?id=111213

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-03-01
Reviewed by Dirk Pranke.

Expose more of the configuration phase to the gyp build, including WebKit features
and binary paths.

  • gyp/Configuration.gypi.in: Add templatized gyp variables for the new configuration bits.
  • gyp/autogen.sh: Properly link up the WebKit features script. So we can access it

relatively as if we were at the top-level of the source directory.

  • gyp/configure.ac: Export the WebKit features.
2:26 PM Changeset in webkit [144505] by beidson@apple.com
  • 13 edits in branches/safari-536.29-branch

Merge 143976

2013-02-25 Anders Carlsson <andersca@apple.com>

Add a new pluginDidFail callback that takes a WKDictionary of plug-in information
https://bugs.webkit.org/show_bug.cgi?id=110793
<rdar://problem/13265303>

Reviewed by Sam Weinig.

Source/WebKit2:

Add a new pluginDidFail callback that takes a WKDictionaryRef and also pass in the
frame and page URLs.

  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebLoaderClient.cpp: (WebKit::pluginInformationDictionary): (WebKit::WebLoaderClient::didFailToInitializePlugin): (WebKit::WebLoaderClient::didBlockInsecurePluginVersion): (WebKit::WebLoaderClient::pluginLoadPolicy):
  • UIProcess/WebLoaderClient.h:
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::didFailToInitializePlugin): (WebKit::WebPageProxy::didBlockInsecurePluginVersion):
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/Plugins/PluginView.cpp: (WebKit::PluginView::didFailToInitializePlugin):
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: (WebKit::WebFrameLoaderClient::createJavaAppletWidget):
  • WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::createPlugin):

Tools:

Update for WebKit2 API changes.

  • MiniBrowser/mac/WK2BrowserWindowController.m: (-[WK2BrowserWindowController awakeFromNib]):
  • WebKitTestRunner/TestController.cpp: (WTR::TestController::createWebViewWithOptions):
2:22 PM Changeset in webkit [144504] by Chris Fleizach
  • 1 edit
    68 adds in trunk/LayoutTests

AX: Upstream iOS Accessibility layout tests
https://bugs.webkit.org/show_bug.cgi?id=111187

Reviewed by David Kilzer.

Upstream the latest iOS Accessibility layout tests.

  • platform/iphone-simulator: Added.
  • platform/iphone-simulator/accessibility: Added.
  • platform/iphone-simulator/accessibility/accessibility-aria-table-children-expected.txt: Added.
  • platform/iphone-simulator/accessibility/accessibility-aria-table-children.html: Added.
  • platform/iphone-simulator/accessibility/accessibility-crash-in-axcontainer-expected.txt: Added.
  • platform/iphone-simulator/accessibility/accessibility-crash-in-axcontainer.html: Added.
  • platform/iphone-simulator/accessibility/accessibility-hint-expected.txt: Added.
  • platform/iphone-simulator/accessibility/accessibility-hint.html: Added.
  • platform/iphone-simulator/accessibility/aria-pressed-state-expected.txt: Added.
  • platform/iphone-simulator/accessibility/aria-pressed-state.html: Added.
  • platform/iphone-simulator/accessibility/centerpoint-expected.txt: Added.
  • platform/iphone-simulator/accessibility/centerpoint.html: Added.
  • platform/iphone-simulator/accessibility/dom-focus-fires-on-correct-element-expected.txt: Added.
  • platform/iphone-simulator/accessibility/dom-focus-fires-on-correct-element.html: Added.
  • platform/iphone-simulator/accessibility/focus-change-notifications-expected.txt: Added.
  • platform/iphone-simulator/accessibility/focus-change-notifications.html: Added.
  • platform/iphone-simulator/accessibility/header-elements-expected.txt: Added.
  • platform/iphone-simulator/accessibility/header-elements.html: Added.
  • platform/iphone-simulator/accessibility/identifier-expected.txt: Added.
  • platform/iphone-simulator/accessibility/identifier.html: Added.
  • platform/iphone-simulator/accessibility/internal-link-expected.txt: Added.
  • platform/iphone-simulator/accessibility/internal-link.html: Added.
  • platform/iphone-simulator/accessibility/link-with-images-text-expected.txt: Added.
  • platform/iphone-simulator/accessibility/link-with-images-text.html: Added.
  • platform/iphone-simulator/accessibility/link-with-only-image-expected.txt: Added.
  • platform/iphone-simulator/accessibility/link-with-only-image.html: Added.
  • platform/iphone-simulator/accessibility/math-expected.txt: Added.
  • platform/iphone-simulator/accessibility/math.html: Added.
  • platform/iphone-simulator/accessibility/mixed-checkboxes-expected.txt: Added.
  • platform/iphone-simulator/accessibility/mixed-checkboxes.html: Added.
  • platform/iphone-simulator/accessibility/no-child-link-header-expected.txt: Added.
  • platform/iphone-simulator/accessibility/no-child-link-header.html: Added.
  • platform/iphone-simulator/accessibility/non-contiguous-link-expected.txt: Added.
  • platform/iphone-simulator/accessibility/non-contiguous-link.html: Added.
  • platform/iphone-simulator/accessibility/password-value-expected.txt: Added.
  • platform/iphone-simulator/accessibility/password-value.html: Added.
  • platform/iphone-simulator/accessibility/placeholder-value-expected.txt: Added.
  • platform/iphone-simulator/accessibility/placeholder-value.html: Added.
  • platform/iphone-simulator/accessibility/popup-button-value-label-expected.txt: Added.
  • platform/iphone-simulator/accessibility/popup-button-value-label.html: Added.
  • platform/iphone-simulator/accessibility/radio-button-expected.txt: Added.
  • platform/iphone-simulator/accessibility/radio-button.html: Added.
  • platform/iphone-simulator/accessibility/secure-text-field-expected.txt: Added.
  • platform/iphone-simulator/accessibility/secure-text-field.html: Added.
  • platform/iphone-simulator/accessibility/selected-buttons-expected.txt: Added.
  • platform/iphone-simulator/accessibility/selected-buttons.html: Added.
  • platform/iphone-simulator/accessibility/selected-text-expected.txt: Added.
  • platform/iphone-simulator/accessibility/selected-text.html: Added.
  • platform/iphone-simulator/accessibility/tab-role-expected.txt: Added.
  • platform/iphone-simulator/accessibility/tab-role.html: Added.
  • platform/iphone-simulator/accessibility/table-cell-for-row-col-expected.txt: Added.
  • platform/iphone-simulator/accessibility/table-cell-for-row-col.html: Added.
  • platform/iphone-simulator/accessibility/table-cell-ranges-expected.txt: Added.
  • platform/iphone-simulator/accessibility/table-cell-ranges.html: Added.
  • platform/iphone-simulator/accessibility/tables-lists-expected.txt: Added.
  • platform/iphone-simulator/accessibility/tables-lists.html: Added.
  • platform/iphone-simulator/accessibility/text-line-no-ignored-elements-expected.txt: Added.
  • platform/iphone-simulator/accessibility/text-line-no-ignored-elements.html: Added.
  • platform/iphone-simulator/accessibility/text-marker-list-item-expected.txt: Added.
  • platform/iphone-simulator/accessibility/text-marker-list-item.html: Added.
  • platform/iphone-simulator/accessibility/text-marker-validation-expected.txt: Added.
  • platform/iphone-simulator/accessibility/text-marker-validation.html: Added.
  • platform/iphone-simulator/accessibility/text-role-expected.txt: Added.
  • platform/iphone-simulator/accessibility/text-role.html: Added.
  • platform/iphone-simulator/accessibility/textfield-in-axvalue-expected.txt: Added.
  • platform/iphone-simulator/accessibility/textfield-in-axvalue.html: Added.
  • platform/iphone-simulator/accessibility/url-test-expected.txt: Added.
  • platform/iphone-simulator/accessibility/url-test.html: Added.
2:14 PM Changeset in webkit [144503] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed AppleWin build fix.

  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::ResourceHandle::createCFURLConnection):

2:03 PM Changeset in webkit [144502] by commit-queue@webkit.org
  • 2 edits
    1 add in trunk/Source/WebCore

[GTK] Allow sharing the WebCore include list with the Chromium build
https://bugs.webkit.org/show_bug.cgi?id=110241

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-03-01
Reviewed by Dirk Pranke.

  • WebCore.gyp/WebCoreGTK.gyp: Added. A skeleton gyp file for WebCoreGTK+.
  • WebCore.gypi: Added shared include directories.
2:02 PM Changeset in webkit [144501] by beidson@apple.com
  • 11 edits in branches/safari-536.29-branch/Source

Merge 143815

2013-02-22 Anders Carlsson <andersca@apple.com>

pluginLoadStrategy should take a WKDictionaryRef for extensibility
https://bugs.webkit.org/show_bug.cgi?id=110656
<rdar://problem/13265303>

Reviewed by Jessie Berlin.

Source/WebCore:

Export a symbol needed by WebKit2.

  • WebCore.exp.in:

Source/WebKit2:

Change pluginLoadStrategy to take a WKDictionaryRef instead of a number of parameters;
this lets us add more plug-in information if needed. Also add the page URL and rename documentURL to frameURL.

  • UIProcess/API/C/WKPage.cpp: (WKPageGetPluginInformationBundleIdentifierKey): (WKPageGetPluginInformationBundleVersionKey): (WKPageGetPluginInformationDisplayNameKey): (WKPageGetPluginInformationFrameURLKey): (WKPageGetPluginInformationMIMETypeKey): (WKPageGetPluginInformationPageURLKey):
  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebLoaderClient.cpp: (WebKit): (WebKit::WebLoaderClient::pluginLoadPolicy):
  • UIProcess/WebLoaderClient.h: (WebLoaderClient):
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::getPluginPath): (WebKit::WebPageProxy::pluginInformationBundleIdentifierKey): (WebKit): (WebKit::WebPageProxy::pluginInformationBundleVersionKey): (WebKit::WebPageProxy::pluginInformationDisplayNameKey): (WebKit::WebPageProxy::pluginInformationFrameURLKey): (WebKit::WebPageProxy::pluginInformationMIMETypeKey): (WebKit::WebPageProxy::pluginInformationPageURLKey):
  • UIProcess/WebPageProxy.h: (WebPageProxy):
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::createPlugin): (WebKit::WebPage::canPluginHandleResponse):
2:02 PM Changeset in webkit [144500] by roger_fong@apple.com
  • 1 edit
    5 adds in trunk/Tools

Unreviewed. Add an extra project that assembles all project build logs on Windows into a single file.
https://bugs.webkit.org/show_bug.cgi?id=111202

This is useful for running VCExpress builds from command line because there is
no unified solution output, only per project build logs.
The project will be run as the last project in the solution.

  • win/AssembleBuildLogs: Added.
  • win/AssembleBuildLogs/AssembleBuildLogs.vcxproj: Added.
  • win/AssembleBuildLogs/AssembleBuildLogs.vcxproj.filters: Added.
  • win/AssembleBuildLogs/AssembleLogs.cmd: Added.
  • win/AssembleBuildLogs/README: Added.
2:00 PM Changeset in webkit [144499] by ap@apple.com
  • 11 edits
    8 adds in trunk/Source

Make in-memory blobs work in NetworkProcess
https://bugs.webkit.org/show_bug.cgi?id=111132

Reviewed by Sam Weinig.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::NetworkConnectionToWebProcess::registerBlobURL): (WebKit::NetworkConnectionToWebProcess::registerBlobURLFromURL): (WebKit::NetworkConnectionToWebProcess::unregisterBlobURL):
  • NetworkProcess/NetworkConnectionToWebProcess.h: Implement BlobRegistry interface by using BlobRegistryImpl (same one as used in WebProcess in non-PPT mode).
  • NetworkProcess/NetworkConnectionToWebProcess.messages.in: Added three messages needed for BlobRegistry.
  • NetworkProcess/NetworkProcess.cpp:
  • NetworkProcess/NetworkProcessPlatformStrategies.cpp: Added.
  • NetworkProcess/NetworkProcessPlatformStrategies.h: Added. Added a mostly empty platform strategy, just for FormData to talk to BlobRegistry. Perhaps we'll find a way to avoid this WebCore code path in NetworkProcess, because we obviously know which registry implementation is in use in this process.
  • Shared/FileAPI: Added.
  • Shared/FileAPI/BlobRegistrationData.cpp: Added.
  • Shared/FileAPI/BlobRegistrationData.h: Added. Added a class for passing BlobData and extension handles over IPC. This uses a trick with mutable a member to avoid copying decoded BlobStorageData.
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/FileAPI: Added.
  • WebProcess/FileAPI/BlobRegistryProxy.cpp: Added.
  • WebProcess/FileAPI/BlobRegistryProxy.h: Added. A proxy implementation of BlobRegistry that just sends requests over IPC. We only need async ones.
  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: (WebKit::WebPlatformStrategies::createBlobRegistry):
  • WebProcess/WebCoreSupport/WebPlatformStrategies.h: Create an appropriate BlobRegistry.
1:53 PM Changeset in webkit [144498] by eric@webkit.org
  • 19 edits in trunk/Source

Threaded HTML Parser has an extra copy of every byte from the network
https://bugs.webkit.org/show_bug.cgi?id=111135

Reviewed by Adam Barth.

Source/WebCore:

Every LayoutTest executes this code in threaded parsing mode.

  • dom/DecodedDataDocumentParser.cpp:

(WebCore::DecodedDataDocumentParser::appendBytes):

  • Pass ownership of the decoded string to the parser.

(WebCore::DecodedDataDocumentParser::flush):

  • Same.
  • dom/DecodedDataDocumentParser.h:

(DecodedDataDocumentParser):

  • dom/Document.cpp:

(WebCore::Document::setContent):

  • dom/DocumentParser.h:

(DocumentParser):

  • dom/RawDataDocumentParser.h:

(WebCore::RawDataDocumentParser::append):

  • html/FTPDirectoryDocument.cpp:

(FTPDirectoryDocumentParser):
(WebCore::FTPDirectoryDocumentParser::append):

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::append):

  • html/parser/HTMLDocumentParser.h:

(HTMLDocumentParser):

  • html/parser/HTMLViewSourceParser.cpp:

(WebCore::HTMLViewSourceParser::append):

  • html/parser/HTMLViewSourceParser.h:

(HTMLViewSourceParser):

  • html/parser/TextDocumentParser.cpp:

(WebCore::TextDocumentParser::append):

  • html/parser/TextDocumentParser.h:

(TextDocumentParser):

  • loader/DocumentWriter.cpp:

(WebCore::DocumentWriter::replaceDocument):

  • xml/parser/XMLDocumentParser.cpp:

(WebCore::XMLDocumentParser::append):

  • xml/parser/XMLDocumentParser.h:

(XMLDocumentParser):

  • xml/parser/XMLDocumentParserLibxml2.cpp:

(WebCore::XMLDocumentParser::resumeParsing):

Source/WTF:

The threaded html parser needs to accept ownership
of a string buffer. The easiest way to do this seemed
to be to use a PassRefPtr<StringImpl>, but there was no way
to generated one from a String (easily), so I added one.

  • wtf/text/WTFString.h:

(WTF::String::releaseImpl):

1:44 PM Changeset in webkit [144497] by hyatt@apple.com
  • 21 edits
    2 adds in trunk

[New Multicolumn] Change inRenderFlowThread to follow containing block chain
https://bugs.webkit.org/show_bug.cgi?id=111206

Reviewed by Simon Fraser.

Source/WebCore:

This patch removes inRenderFlowThread and changes enclosingRenderFlowThread()
to flowThreadContainingBlock(). flowThreadContainingBlock() now follows
the containing block chain instead of the parent chain when outside of layout.
(It already did the right thing when called during layout.)

By removing inRenderFlowThread (which was following the parent chain), all
code that is checking for flow thread containment now correctly uses the
containing block chain. This allows for content to escape in-flow flow threads
and do the right thing without asserting.

Test: fast/multicol/positioned-outside-of-columns.html

  • dom/WebKitNamedFlow.cpp:

(WebCore::inFlowThread):
(WebCore::WebKitNamedFlow::getRegionsByContent):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::removeLeftoverAnonymousBlock):
(WebCore::RenderBlock::collapseAnonymousBoxChild):
(WebCore::RenderBlock::updateRegionsAndExclusionsLogicalSize):
(WebCore::RenderBlock::computeRegionRangeForBlock):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::computeOverflow):
(WebCore::RenderBlock::determineLogicalLeftPositionForChild):
(WebCore::RenderBlock::computeLogicalLocationForFloat):
(WebCore::RenderBlock::logicalLeftOffsetForContent):
(WebCore::RenderBlock::logicalRightOffsetForContent):
(WebCore::RenderBlock::hasNextPage):
(WebCore::RenderBlock::applyBeforeBreak):
(WebCore::RenderBlock::applyAfterBreak):
(WebCore::RenderBlock::pageLogicalTopForOffset):
(WebCore::RenderBlock::pageLogicalHeightForOffset):
(WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
(WebCore::RenderBlock::adjustForUnsplittableChild):
(WebCore::RenderBlock::adjustLinePositionForPagination):
(WebCore::RenderBlock::lineWidthForPaginatedLineChanged):
(WebCore::RenderBlock::offsetFromLogicalTopOfFirstPage):
(WebCore::RenderBlock::regionAtBlockOffset):
(WebCore::RenderBlock::setStaticInlinePositionForChild):
(WebCore::RenderBlock::logicalWidthChangedInRegions):
(WebCore::RenderBlock::clampToStartAndEndRegions):

  • rendering/RenderBlock.h:

(RenderBlock):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::layoutExclusionShapeInsideInfo):
(WebCore::LineLayoutState::LineLayoutState):
(WebCore::LineLayoutState::flowThread):
(WebCore::LineLayoutState::setFlowThread):
(LineLayoutState):
(WebCore::RenderBlock::layoutRunsAndFloatsInRange):
(WebCore::RenderBlock::linkToEndLineIfNeeded):
(WebCore::RenderBlock::layoutInlineChildren):
(WebCore::RenderBlock::determineStartPosition):
(WebCore::RenderBlock::checkPaginationAndFloatsAtEndLine):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::clearRenderBoxRegionInfo):
(WebCore::RenderBox::renderBoxRegionInfo):
(WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
(WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
(WebCore::RenderBox::computePositionedLogicalWidth):
(WebCore::RenderBox::computePositionedLogicalHeight):

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::objectInFlowRegion):

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::layoutBlock):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::updateAlwaysCreateLineBoxes):

  • rendering/RenderLayer.cpp:

(WebCore::accumulateOffsetTowardsAncestor):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::canBeComposited):

  • rendering/RenderMedia.cpp:

(WebCore::RenderMedia::layout):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::locateFlowThreadContainingBlock):
(WebCore::RenderObject::containerForRepaint):
(WebCore::RenderObject::willBeRemovedFromTree):
(WebCore::RenderObject::removeFromRenderFlowThread):
(WebCore::RenderObject::removeFromRenderFlowThreadRecursive):

  • rendering/RenderObject.h:

(RenderObject):
(WebCore::RenderObject::flowThreadContainingBlock):

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::setObjectStyleInRegion):

  • rendering/RenderView.cpp:

(WebCore::RenderView::addChild):
(WebCore::RenderView::initializeLayoutState):
(WebCore::RenderView::setSelection):

  • rendering/RenderView.h:

(WebCore::RenderView::pushLayoutState):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::containingRegion):
(WebCore::RootInlineBox::setContainingRegion):

LayoutTests:

  • fast/multicol/positioned-outside-of-columns-expected.html: Added.
  • fast/multicol/positioned-outside-of-columns.html: Added.
1:36 PM Changeset in webkit [144496] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

Uncomment ENABLE_SVG guards to avoid having WebKitPluginProcess link
against libWebCoreSVG.la when SVG is disabled.

Rubber-stamped by Gustavo Noronha.

  • GNUmakefile.am:
1:32 PM Changeset in webkit [144495] by weinig@apple.com
  • 15 edits in trunk/Source

Add SPI for marking a WebView as doing things on behalf of another process
https://bugs.webkit.org/show_bug.cgi?id=111125

Reviewed by Alexey Proskuryakov.

Source/WebCore:

  • platform/network/NetworkingContext.h:

(NetworkingContext):

  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::ResourceHandle::createCFURLConnection):

  • platform/network/mac/ResourceHandleMac.mm:

(WebCore::ResourceHandle::createNSURLConnection):
Set the sourceApplicationAuditData on the URL connection if available.

Source/WebKit/mac:

  • WebCoreSupport/WebFrameNetworkingContext.h:

(WebFrameNetworkingContext):

  • WebCoreSupport/WebFrameNetworkingContext.mm:

(WebFrameNetworkingContext::sourceApplicationAuditData):

  • WebView/WebView.mm:

(-[WebView _setSourceApplicationAuditData:]):
(-[WebView _sourceApplicationAuditData]):

  • WebView/WebViewData.h:
  • WebView/WebViewData.mm:

(-[WebViewPrivate dealloc]):

  • WebView/WebViewPrivate.h:

Add SPI for setting a source application for a WebView.

Source/WebKit2:

  • NetworkProcess/mac/RemoteNetworkingContext.h:
  • NetworkProcess/mac/RemoteNetworkingContext.mm:

(WebKit::RemoteNetworkingContext::sourceApplicationAuditData):

  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:

(WebKit::WebFrameNetworkingContext::sourceApplicationAuditData):
Stub out sourceApplicationAuditData() client function.

1:31 PM Changeset in webkit [144494] by zhajiang@rim.com
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Screen went black while navigating back/forward on the reddit.com page
https://bugs.webkit.org/show_bug.cgi?id=111192

Patch by Jacky Jiang <zhajiang@rim.com>.
Reviewed by Rob Buis.
Internally reviewed by Jakob Petsovits.

PR: 299783
When going back to the previous reddit.com page, the actual contents
size was much less than the history contents size. However, we expanded
the actual contents size to history contents size which caused a huge
black area below the actual contents.
To fix that, don't restore the contents size from history contents size
and scroll back to the valid contents area if we are about to overscroll.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::restoreHistoryViewState):

  • Api/WebPage_p.h:

(WebPagePrivate):

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::restoreViewState):

1:26 PM Changeset in webkit [144493] by roger_fong@apple.com
  • 2 edits in trunk/Tools

Unreviewed. Increase number of patches processed before clean building on WinEWS bots.

  • EWSTools/start-queue-win.sh:
1:25 PM Changeset in webkit [144492] by beidson@apple.com
  • 10 edits in branches/safari-536.29-branch

Merge r143790

2013-02-22 Anders Carlsson <andersca@apple.com>

Source/WebKit2:

Move pluginLoadPolicy to the page loader client
https://bugs.webkit.org/show_bug.cgi?id=110635
<rdar://problem/13265303>


Reviewed by Sam Weinig.

Move the pluginLoadPolicy callback to the page loader client where it belongs.

  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebLoaderClient.cpp: (WebKit::toWKPluginLoadPolicy): (WebKit): (WebKit::toPluginModuleLoadPolicy): (WebKit::WebLoaderClient::pluginLoadPolicy):
  • UIProcess/WebLoaderClient.h: (WebLoaderClient):
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::getPluginPath):
  • UIProcess/WebUIClient.cpp: (WebKit):
  • UIProcess/WebUIClient.h: (WebUIClient):
  • UIProcess/mac/WebInspectorProxyMac.mm: (WebKit::WebInspectorProxy::platformCreateInspectorPage):

Tools:

Move pluginLoadPolicy to the page loader client
https://bugs.webkit.org/show_bug.cgi?id=110635

Reviewed by Sam Weinig.

  • MiniBrowser/mac/WK2BrowserWindowController.m: (-[WK2BrowserWindowController awakeFromNib]):
  • WebKitTestRunner/TestController.cpp: (WTR::TestController::createOtherPage): (WTR::TestController::createWebViewWithOptions):
1:18 PM Changeset in webkit [144491] by bfulgham@webkit.org
  • 3 edits in trunk/Source/WebCore

[Windows] Unreviewed VS2010 build fix.

  • WebCore.vcxproj/WebCore.vcxproj: Add missing TimelineTraceEventProcessor files to the project.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
1:18 PM Changeset in webkit [144490] by commit-queue@webkit.org
  • 1 edit
    3 adds in trunk/Source/ThirdParty/ANGLE

[GTK] Add ANGLE to the GTK+ gyp build
https://bugs.webkit.org/show_bug.cgi?id=111128

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-03-01
Reviewed by Dirk Pranke.

Add files that build an ANGLE static library for GTK+ using gyp.

  • ANGLE.gyp/ANGLE.gyp: Added.
  • ANGLE.gypi: Added.
1:14 PM Changeset in webkit [144489] by mhahnenberg@apple.com
  • 5 edits
    2 deletes in trunk/Source/JavaScriptCore

Objective-C API: Passing JS functions to Objective-C callbacks causes JSValue to leak
https://bugs.webkit.org/show_bug.cgi?id=107836

Reviewed by Oliver Hunt.

We've decided to remove support for this feature from the API because there's no way to automatically manage
the memory for clients in a satisfactory manner. Clients can still pass JS functions to Objective-C methods,
but the methods must accept plain JSValues instead of Objective-C blocks.

We now ignore functions that are part of a protocol that inherits from JSExport that accept blocks as arguments.

  • API/JSBlockAdaptor.h: Removed.
  • API/JSBlockAdaptor.mm: Removed.
  • API/ObjCCallbackFunction.mm:

(ArgumentTypeDelegate::typeBlock): Return nil to signal that we want to ignore this function when copying it
to the object from the protocol.

  • API/tests/testapi.mm: Added a test to make sure that we ignore methods declared as part of a JSExport-ed protocol

that have block arguments.
(-[TestObject bogusCallback:]):

1:07 PM Changeset in webkit [144488] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Improve input bounds clipping for search fields.
https://bugs.webkit.org/show_bug.cgi?id=111204

Reviewed by Rob Buis.

PR 292673.

Use the standardized InputHandler function to get the
bounds of an input field so that search fields are
truncated smaller to account for the X.

Reviewed Internally by Gen Mak.

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::setCaretPosition):

1:02 PM Changeset in webkit [144487] by betravis@adobe.com
  • 7 edits
    2 adds in trunk

[css exclusions] setting shape-inside on a parent does not relayout child blocks' inline content
https://bugs.webkit.org/show_bug.cgi?id=108128

Reviewed by David Hyatt.

Source/WebCore:

Ensure that blocks lay out when their parent's shape-inside changes.
ExclusionShapeInsideInfo now stores an additional flag indicating whether
the shape has changed and its block's children require layout. Each block
can look up the flag via LayoutState to determine whether it needs to lay
out its children.

Test: fast/exclusions/shape-inside/shape-inside-dynamic-nested.html

  • rendering/ExclusionShapeInfo.h:

(WebCore::ExclusionShapeInfo::shapeSizeDirty): Add a method to determine
if the shape has changed.
(ExclusionShapeInfo):

  • rendering/ExclusionShapeInsideInfo.h:

(WebCore::ExclusionShapeInsideInfo::setNeedsLayout): Set the flag indicating
layout is necessary.
(WebCore::ExclusionShapeInsideInfo::needsLayout): Retrieve the layout flag.
(ExclusionShapeInsideInfo):
(WebCore::ExclusionShapeInsideInfo::ExclusionShapeInsideInfo): Initialize
the layout flag.

  • rendering/RenderBlock.cpp:

(WebCore::exclusionInfoRequiresRelayout): Return true if the shape info should
cause a relayout. Also update the needsLayout flag on the ExclusionShapeInsideInfo.
(WebCore):
(WebCore::RenderBlock::updateRegionsAndExclusionsLogicalSize): Return a boolean
indicating whether regions or exclusions updates should cause a relayout.
(WebCore::RenderBlock::layoutBlock): Relayout children if the shape inside has
changed.

  • rendering/RenderBlock.h:

(RenderBlock):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutExclusionShapeInsideInfo): Changing to be a
class method.
(WebCore::LineWidth::LineWidth): Changing to use class method.
(WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Ditto.
(WebCore::constructBidiRunsForLine): Ditto.
(WebCore::RenderBlock::layoutRunsAndFloatsInRange): Ditto.
(WebCore::RenderBlock::LineBreaker::nextLineBreak): Ditto.

LayoutTests:

Test that setting and resetting shape-inside and shape-outside correctly lay out
content inside of child blocks.

  • fast/exclusions/shape-inside/shape-inside-dynamic-nested-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-dynamic-nested.html: Added.
12:57 PM Changeset in webkit [144486] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG Branch(LogicalNot) peephole should not try to optimize and work-around the case where LogicalNot may be otherwise live
https://bugs.webkit.org/show_bug.cgi?id=111209

Reviewed by Oliver Hunt.

Even if it is then everything will work just fine. It's not necessary to check the ref count here.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

12:49 PM Changeset in webkit [144485] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

getComputedStyle not implemented for -webkit-column-rule shorthand
https://bugs.webkit.org/show_bug.cgi?id=111203

Patch by Uday Kiran <udaykiran@motorola.com> on 2013-03-01
Reviewed by Alexis Menard.

Source/WebCore:

Implement getComputedStyle for -webkit-column-rule property.

Test: fast/css/getComputedStyle/getComputedStyle-column-rule.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

LayoutTests:

Add test to check getComputedStyle for -webkit-column-rule.

  • fast/css/getComputedStyle/getComputedStyle-column-rule-expected.txt: Added.
  • fast/css/getComputedStyle/getComputedStyle-column-rule.html: Added.
12:46 PM Changeset in webkit [144484] by hyatt@apple.com
  • 6 edits in trunk/Source/WebCore

REGRESSION(r144318) 1-7% perf. regression on SVG/SvgHitTesting
https://bugs.webkit.org/show_bug.cgi?id=111117

Make sure the allocated vector has a capacity of 1, since that is
far and away the most common case.

Reviewed by Andreas Kling.

  • rendering/RenderFlowThread.h:

(WebCore):

  • rendering/RenderLayer.h:

(WebCore):

  • rendering/RenderMultiColumnSet.cpp:

(WebCore::RenderMultiColumnSet::collectLayerFragments):

  • rendering/RenderMultiColumnSet.h:
  • rendering/RenderRegion.h:

(WebCore):
(WebCore::RenderRegion::collectLayerFragments):

12:43 PM Changeset in webkit [144483] by enrica@apple.com
  • 2 edits in trunk/Source/WebCore

Crash at WebCore::SharedBuffer::hasPlatformData writing an image to the pasteboard.
https://bugs.webkit.org/show_bug.cgi?id=111211.
<rdar://problem/8772758>

Reviewed by Ryosuke Niwa.

This is a speculative fix since we don't have a solid repro case.
Adding null check every time we build a SharedBuffer from an NSData
we have obtained manipulating data from the pasteboard.

  • platform/mac/PasteboardMac.mm:

(WebCore::writeFileWrapperAsRTFDAttachment):
(WebCore::Pasteboard::writeImage):

12:42 PM Changeset in webkit [144482] by beidson@apple.com
  • 4 edits
    2 adds in branches/safari-536.29-branch

Merge r142919

2013-02-14 Anders Carlsson <andersca@apple.com>

Add WKContextIsPlugInUpdateAvailable
https://bugs.webkit.org/show_bug.cgi?id=109862
<rdar://problem/13173140>

Reviewed by Sam Weinig.

Source/WebKit2:

  • UIProcess/API/C/mac/WKContextPrivateMac.h:
  • UIProcess/API/C/mac/WKContextPrivateMac.mm: Renamed from Source/WebKit2/UIProcess/API/C/mac/WKContextPrivateMac.cpp. (WKContextGetProcessSuppressionEnabled): (WKContextSetProcessSuppressionEnabled): (WKContextIsPlugInUpdateAvailable):
  • WebKit2.xcodeproj/project.pbxproj:

WebKitLibraries:

Roll WebKitSystemInterface DEPS.

  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLion.a:
  • libWebKitSystemInterfaceMountainLion.a:
12:40 PM Changeset in webkit [144481] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG CSE phase shouldn't rely on ref count of nodes, since it doesn't have to
https://bugs.webkit.org/show_bug.cgi?id=111205

Reviewed by Oliver Hunt.

I don't understand the intuition behind setLocalStoreElimination() validating that the SetLocal's ref count
is 1. I believe this is a hold-over from when setLocalStoreElimination() would match one SetLocal to another,
and then try to eliminate the first SetLocal. But that's not how it works now. Now, setLocalStoreElimination()
is actually Flush elimination: it eliminates any Flush that anchors a SetLocal if it proves that every path
from the SetLocal to the Flush is devoid of operations that may observe the local. It doesn't actually kill
the SetLocal itself: if the SetLocal is live because of other things (other Flushes or GetLocals in other
basic blocks), then the SetLocal will naturally still be alive because th Flush was only keeping the SetLocal
alive by one count rather than being solely responsible for its liveness.

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::setLocalStoreElimination):
(JSC::DFG::CSEPhase::eliminate):
(JSC::DFG::CSEPhase::performNodeCSE):

12:32 PM Changeset in webkit [144480] by Lucas Forschler
  • 18 edits in tags/Safari-537.31.12/Source

Merged r144397. <rdar://problem/13291412>

12:26 PM Changeset in webkit [144479] by enrica@apple.com
  • 2 edits in trunk/Source/WebCore

Crash at WebCore::SharedBuffer::hasPlatformData during paste.
https://bugs.webkit.org/show_bug.cgi?id=111207.
<rdar://problem/13024528>

Reviewed by Ryosuke Niwa.

This is a speculative fix since we don't have a solid repro case.
Adding null check every time we get a SharedBuffer from the pasteboard.

  • platform/mac/PasteboardMac.mm:

(WebCore::Pasteboard::plainText):
(WebCore::documentFragmentWithRTF):

12:04 PM Changeset in webkit [144478] by rniwa@webkit.org
  • 5 edits in trunk/Tools

Don't return statistics in PerfTest.run
https://bugs.webkit.org/show_bug.cgi?id=111145

Reviewed by Dirk Pranke.

Simply return a list of values obtained in each iteration from PerfTest.run.
Also simplify various methods as needed.

  • Scripts/webkitpy/performance_tests/perftest.py:

(PerfTestMetric.init): Moved the code to convert 'Time' metric to 'FrameRate' and 'Runs'
as needed from PerfTestsRunner._generate_results_dict.

(PerfTestMetric.legacy_chromium_bot_compatible_test_name): Always append the metric name now
that we don't have to worry about the backward compatibility here.

(PerfTestMetric.iteration_values): Added.
(PerfTestMetric.unit): Added.
(PerfTestMetric.metric_to_unit):
(PerfTestMetric.time_unit_to_metric): Extracted from PerfTestsRunner._generate_results_dict.

(PerfTest.run):
(PerfTest.log_statistics): Merged compute_statistics and self.output_statistics.

  • Scripts/webkitpy/performance_tests/perftest_unittest.py:

(TestPerfTestMetric.test_init_set_missing_unit):
(TestPerfTestMetric.test_init_set_time_metric): Added.
(TestPerfTestMetric.test_legacy_chromium_bot_compatible_test_name):
(TestPerfTestMetric.test_append):
(TestPerfTestMetric.test_compute_statistics): Removed. Integration tests check some of these
test cases and it's not critical to keep math right as they're not used in output JSON anymore.
(TestPerfTest._assert_results_are_correct):
(TestReplayPerfTest.test_run_with_driver_accumulates_results):
(TestReplayPerfTest.test_run_with_driver_accumulates_memory_results):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._generate_results_dict):

  • Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:

(EventTargetWrapperTestData): The metric name shows up at the end of the test name as expected.
(SomeParserTestData): Ditto.
(MemoryTestData): Ditto.

11:51 AM Changeset in webkit [144477] by fpizlo@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Rename MovHint to MovHintEvent so I can create a NodeType called MovHint

Rubber stamped by Mark Hahnenberg.

This is similar to the SetLocal/SetLocalEvent naming scheme, where SetLocal is the
NodeType and SetLocalEvent is the VariableEventKind.

  • dfg/DFGVariableEvent.cpp:

(JSC::DFG::VariableEvent::dump):

  • dfg/DFGVariableEvent.h:

(JSC::DFG::VariableEvent::movHint):
(JSC::DFG::VariableEvent::id):
(JSC::DFG::VariableEvent::operand):
(VariableEvent):

  • dfg/DFGVariableEventStream.cpp:

(JSC::DFG::VariableEventStream::reconstruct):

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

[chromium] Mark rtl-iframe-absolute-overflow-scrolled as flaky.
https://bugs.webkit.org/show_bug.cgi?id=111199

Unreviewed gardening.

  • platform/chromium/TestExpectations:
11:17 AM Changeset in webkit [144475] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

Build fix for builds with BLOB disabled. This fixes it for me on Mac at least.

  • platform/network/BlobRegistryImpl.cpp:
11:13 AM Changeset in webkit [144474] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[Curl] Session cookies should not be persistent.
https://bugs.webkit.org/show_bug.cgi?id=111060

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-03-01
Reviewed by Brent Fulgham.

Curl saves both persistent cookies, and session cookies to the cookie file.
The session cookies should be deleted before starting a new session.

  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::ResourceHandleManager::ResourceHandleManager): Call method to initialize cookie session.
(WebCore::ResourceHandleManager::initCookieSession): Added method to initialize cookie session.

  • platform/network/curl/ResourceHandleManager.h: Added method to initialize cookie session.
11:04 AM Changeset in webkit [144473] by beidson@apple.com
  • 8 edits in branches/safari-536.29-branch/Source/WebKit2

Merge r142017

2013-02-06 Anders Carlsson <andersca@apple.com>

Pass the document source URL to the pluginLoadPolicy callback
https://bugs.webkit.org/show_bug.cgi?id=109084
<rdar://problem/13154516>

Reviewed by Andreas Kling.

  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::getPluginPath):
  • UIProcess/WebPageProxy.h: (WebPageProxy):
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/WebUIClient.cpp: (WebKit::WebUIClient::pluginLoadPolicy):
  • UIProcess/WebUIClient.h: (WebUIClient):
  • WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::createPlugin): (WebKit::WebPage::canPluginHandleResponse):
10:53 AM Changeset in webkit [144472] by beidson@apple.com
  • 5 edits in branches/safari-536.29-branch/Source/WebKit2

Merge r141923

2013-02-05 Anders Carlsson <andersca@apple.com>

WebKit clients should be able to override loading of blocked plug-ins
https://bugs.webkit.org/show_bug.cgi?id=108968
<rdar://problem/13154516>

Reviewed by Sam Weinig.

Replace the shouldInstantiatePlugin callback with a new pluginLoadPolicy which is called regardless
of whether the plug-in is blocked or not. This lets clients override the plug-in load policy and
force loading of blacklisted plug-ins (and vice versa).

  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::getPluginPath):
  • UIProcess/WebUIClient.cpp: (WebKit::toWKPluginLoadPolicy): (WebKit): (WebKit::toPluginModuleLoadPolicy): (WebKit::WebUIClient::pluginLoadPolicy):
  • UIProcess/WebUIClient.h: (WebUIClient):
10:32 AM Changeset in webkit [144471] by Lucas Forschler
  • 4 edits in tags/Safari-537.31.12/Source

Versioning.

10:28 AM Changeset in webkit [144470] by Lucas Forschler
  • 1 copy in tags/Safari-537.31.12

New Tag.

10:11 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
10:10 AM Changeset in webkit [144469] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore

Merge r143973 - Build fix for gtk2-based library.

Reviewed by Martin Robinson.

  • platform/gtk/WidgetRenderingContext.cpp: move gtk2 check to after the config.h

include, which is the one that includes autotoolsconfig.h, where the gtk2 define
lives.

10:07 AM Changeset in webkit [144468] by Carlos Garcia Campos
  • 34 edits in releases/WebKitGTK/webkit-2.0

Merge r143869 - [GTK] GTK+ 2 build broken since GTK_API_VERSION_2 moved to autoconfig.h
https://bugs.webkit.org/show_bug.cgi?id=110702

Reviewed by Martin Robinson.

Source/WebCore:

No tests. Build fix, no behaviour change.

  • platform/gtk/GtkVersioning.h: include the autotoolsconfig.h header,

which contains the GTK_API_VERSION_2 define now.

Source/WebKit/gtk:

  • tests/testapplicationcache.c: include autotoolsconfig.h.
  • tests/testatk.c: ditto.
  • tests/testatkroles.c: ditto.
  • tests/testcontextmenu.c: ditto.
  • tests/testcopyandpaste.c: ditto.
  • tests/testdomdocument.c: ditto.
  • tests/testdomdomwindow.c: ditto.
  • tests/testdomnode.c: ditto.
  • tests/testdownload.c: ditto.
  • tests/testfavicondatabase.c: ditto.
  • tests/testglobals.c: ditto.
  • tests/testhittestresult.c: ditto.
  • tests/testhttpbackend.c: ditto.
  • tests/testkeyevents.c: ditto.
  • tests/testloading.c: ditto.
  • tests/testmimehandling.c: ditto.
  • tests/testnetworkrequest.c: ditto.
  • tests/testnetworkresponse.c: ditto.
  • tests/testwebbackforwardlist.c: ditto.
  • tests/testwebdatasource.c: ditto.
  • tests/testwebframe.c: ditto.
  • tests/testwebhistoryitem.c: ditto.
  • tests/testwebinspector.c: ditto.
  • tests/testwebplugindatabase.c: ditto.
  • tests/testwebresource.c: ditto.
  • tests/testwebsettings.c: ditto.
  • tests/testwebview.c: ditto.
  • tests/testwindow.c: ditto.

Tools:

  • GtkLauncher/main.c: include autotoolsconfig.h.
  • Scripts/webkitpy/style/checker.py: make GtkLauncher/main.c exempt of

the include ordering check, since it uses autotoolsconfig.h which needs to
come first.

9:57 AM Changeset in webkit [144467] by vsevik@chromium.org
  • 13 edits
    2 adds
    2 deletes in trunk

Web Inspector: Navigator should show tree element for each folder in the source path.
https://bugs.webkit.org/show_bug.cgi?id=108943

Reviewed by Pavel Feldman.

Source/WebCore:

NavigatorView now renders tree element for each folder in uiSourceCode uri.
Merging several folders into one tree elememnt when folder has only one folder as a child is supported.
ScriptsNavigator has horizontal scroll now.
Projects are shown in ScriptsNavigator by their displayName. This allows us to show several root file system folders
with the same name in the navigator (e.g. 'Source/WebCore/inspector' and 'LayoutTests/inspector').

Test: inspector/debugger/navigator-view.html: Renamed from scripts-file-selector.html

  • English.lproj/localizedStrings.js:
  • inspector/front-end/NavigatorView.js:

(WebInspector.NavigatorView):
(WebInspector.NavigatorView.iconClassForType):
(WebInspector.NavigatorView.prototype.addUISourceCode):
(WebInspector.NavigatorView.prototype._getProjectNode):
(WebInspector.NavigatorView.prototype._createProjectNode):
(WebInspector.NavigatorView.prototype._getOrCreateProjectNode):
(WebInspector.NavigatorView.prototype._getFolderNode):
(WebInspector.NavigatorView.prototype._createFolderNode):
(WebInspector.NavigatorView.prototype._getOrCreateFolderNode):
(WebInspector.NavigatorView.prototype._getUISourceCodeParentNode):
(WebInspector.NavigatorView.prototype._getOrCreateUISourceCodeParentNode):
(WebInspector.NavigatorView.prototype.revealUISourceCode):
(WebInspector.NavigatorView.prototype.removeUISourceCode):
(WebInspector.NavigatorView.prototype.rename):
(WebInspector.NavigatorView.prototype.reset):
(.typeWeight):
(WebInspector.NavigatorTreeOutline._treeElementsCompare):
(WebInspector.BaseNavigatorTreeElement):
(WebInspector.BaseNavigatorTreeElement.prototype.type):
(WebInspector.NavigatorFolderTreeElement):
(WebInspector.NavigatorFolderTreeElement.prototype.onpopulate):
(WebInspector.NavigatorFolderTreeElement.prototype.onattach):
(WebInspector.NavigatorSourceTreeElement):
(WebInspector.NavigatorTreeNode):
(WebInspector.NavigatorTreeNode.prototype.treeElement):
(WebInspector.NavigatorTreeNode.prototype.dispose):
(WebInspector.NavigatorTreeNode.prototype.isRoot):
(WebInspector.NavigatorTreeNode.prototype.hasChildren):
(WebInspector.NavigatorTreeNode.prototype.populate):
(WebInspector.NavigatorTreeNode.prototype.wasPopulated):
(WebInspector.NavigatorTreeNode.prototype.didAddChild):
(WebInspector.NavigatorTreeNode.prototype.willRemoveChild):
(WebInspector.NavigatorTreeNode.prototype.isPopulated):
(WebInspector.NavigatorTreeNode.prototype.isEmpty):
(WebInspector.NavigatorTreeNode.prototype.child):
(WebInspector.NavigatorTreeNode.prototype.children):
(WebInspector.NavigatorTreeNode.prototype.appendChild):
(WebInspector.NavigatorTreeNode.prototype.removeChild):
(WebInspector.NavigatorTreeNode.prototype.reset):
(WebInspector.NavigatorRootTreeNode):
(WebInspector.NavigatorRootTreeNode.prototype.isRoot):
(WebInspector.NavigatorRootTreeNode.prototype.treeElement):
(WebInspector.NavigatorRootTreeNode.prototype.wasPopulated):
(WebInspector.NavigatorRootTreeNode.prototype.didAddChild):
(WebInspector.NavigatorRootTreeNode.prototype.willRemoveChild):
(WebInspector.NavigatorUISourceCodeTreeNode):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.treeElement):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.updateTitle):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.hasChildren):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.dispose):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype._titleChanged):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype._workingCopyChanged):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype._workingCopyCommitted):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype._formattedChanged):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.reveal):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename.commitHandler):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename.cancelHandler):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename.afterEditing):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename):
(WebInspector.NavigatorFolderTreeNode):
(WebInspector.NavigatorFolderTreeNode.prototype.treeElement):
(WebInspector.NavigatorFolderTreeNode.prototype._createTreeElement):
(WebInspector.NavigatorFolderTreeNode.prototype.wasPopulated):
(WebInspector.NavigatorFolderTreeNode.prototype._addChildrenRecursive):
(WebInspector.NavigatorFolderTreeNode.prototype._shouldMerge):
(WebInspector.NavigatorFolderTreeNode.prototype.didAddChild):
(WebInspector.NavigatorFolderTreeNode.prototype.willRemoveChild):

  • inspector/front-end/ScriptsNavigator.js:
  • inspector/front-end/SimpleWorkspaceProvider.js:

(WebInspector.SimpleProjectDelegate.prototype.displayName):

  • inspector/front-end/navigatorView.css:

(.navigator > ol):
(.navigator .base-navigator-tree-element-title):
(.navigator-tabbed-pane .navigator-container):

LayoutTests:

  • http/tests/inspector/debugger-test.js:

(initialize_DebuggerTest.):
(initialize_DebuggerTest):

  • http/tests/inspector/workspace-test.js:

(initialize_WorkspaceTest.InspectorTest.createWorkspace):

  • inspector/debugger/navigator-view-expected.txt: Added.
  • inspector/debugger/navigator-view.html: Added.
  • inspector/debugger/scripts-file-selector-expected.txt: Removed.
  • inspector/debugger/scripts-file-selector.html: Removed.
  • inspector/debugger/scripts-panel-expected.txt:
  • inspector/debugger/scripts-panel.html:
  • inspector/debugger/scripts-sorting-expected.txt:
  • inspector/debugger/scripts-sorting.html:
9:49 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
9:48 AM Changeset in webkit [144466] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.0/LayoutTests

Merge r144045 - REGRESSION (r143931): set-cookie-on-redirect.html breaks subsequent tests
https://bugs.webkit.org/show_bug.cgi?id=110844

Patch by Sergio Villar Senin <svillar@igalia.com> on 2013-02-26
Reviewed by Alexey Proskuryakov.

Clean up cookies at the beginning and after finishing the test in
order not to break other tests behavior.

  • http/tests/cookies/resources/set-cookie-on-redirect.php: clear cookie before returning.
  • http/tests/cookies/set-cookie-on-redirect.html: clear all cookies before starting the test.
9:43 AM Changeset in webkit [144465] by anilsson@rim.com
  • 36 edits
    5 deletes in trunk/Source/WebCore

[BlackBerry] Upstream BlackBerry::Platform::Graphics::GraphicsContext integration related changes in platform/graphics/blackberry
https://bugs.webkit.org/show_bug.cgi?id=111072

Reviewed by Rob Buis.

BlackBerry PR 293208

This patch contains contributions from many members of the BlackBerry
WebKit team:

Rob Buis
Robin Cao
Michael Carmody
Max Feil
Eli Fidler
Antonio Gomes
Jacky Jiang
Mike Lattanzio
Yong Li
Andrew Lo
Maxim Mogilnitsky
Joshua Netterfield
Arvid Nilsson
Jakob Petsovits
Konrad Piascik
Jeff Rogers
Artem Simonov
Filip Spacek
George Staikos
Cosmin Truta

Covered by existing tests.

  • platform/graphics/blackberry/CanvasLayerWebKitThread.cpp:

(WebCore::CanvasLayerWebKitThread::deleteTextures):
(CanvasLayerCompositingThreadClient):
(WebCore::CanvasLayerCompositingThreadClient::layerCompositingThreadDestroyed):
(WebCore::CanvasLayerCompositingThreadClient::layerVisibilityChanged):
(WebCore::CanvasLayerCompositingThreadClient::uploadTexturesIfNeeded):
(WebCore::CanvasLayerCompositingThreadClient::clearBuffer):
(WebCore):
(WebCore::CanvasLayerCompositingThreadClient::CanvasLayerCompositingThreadClient):
(WebCore::CanvasLayerCompositingThreadClient::drawTextures):
(WebCore::CanvasLayerCompositingThreadClient::deleteTextures):
(WebCore::CanvasLayerCompositingThreadClient::commitPendingTextureUploads):
(WebCore::CanvasLayerWebKitThread::CanvasLayerWebKitThread):
(WebCore::CanvasLayerWebKitThread::~CanvasLayerWebKitThread):
(WebCore::CanvasLayerWebKitThread::clearBuffer):

  • platform/graphics/blackberry/CanvasLayerWebKitThread.h:

(WebCore):
(WebCore::CanvasLayerWebKitThread::create):
(CanvasLayerWebKitThread):

  • platform/graphics/blackberry/DisplayRefreshMonitorBlackBerry.cpp:

(WebCore::DisplayRefreshMonitor::displayLinkFired):

  • platform/graphics/blackberry/DrawingBufferBlackBerry.cpp:

(WebCore::DrawingBuffer::DrawingBuffer):
(WebCore):
(WebCore::DrawingBuffer::publishToPlatformLayer):
(WebCore::DrawingBuffer::platformLayer):

  • platform/graphics/blackberry/EGLImageLayerCompositingThreadClient.cpp:

(WebCore::EGLImageLayerCompositingThreadClient::~EGLImageLayerCompositingThreadClient):
(WebCore::EGLImageLayerCompositingThreadClient::uploadTexturesIfNeeded):
(WebCore::EGLImageLayerCompositingThreadClient::drawTextures):
(WebCore::EGLImageLayerCompositingThreadClient::deleteTextures):
(WebCore::EGLImageLayerCompositingThreadClient::bindContentsTexture):
(WebCore::EGLImageLayerCompositingThreadClient::setTextureAccessor):

  • platform/graphics/blackberry/EGLImageLayerCompositingThreadClient.h:

(Graphics):
(EGLImageLayerCompositingThreadClient):
(WebCore::EGLImageLayerCompositingThreadClient::EGLImageLayerCompositingThreadClient):

  • platform/graphics/blackberry/EGLImageLayerWebKitThread.cpp:

(WebCore::EGLImageLayerWebKitThread::EGLImageLayerWebKitThread):
(WebCore::EGLImageLayerWebKitThread::~EGLImageLayerWebKitThread):
(WebCore::EGLImageLayerWebKitThread::updateFrontBuffer):
(WebCore::EGLImageLayerWebKitThread::deleteFrontBuffer):
(WebCore::EGLImageLayerWebKitThread::commitPendingTextureUploads):
(WebCore::EGLImageLayerWebKitThread::createTextureIfNeeded):
(WebCore::EGLImageLayerWebKitThread::blitToFrontBuffer):

  • platform/graphics/blackberry/EGLImageLayerWebKitThread.h:

(Graphics):
(EGLImageLayerWebKitThread):

  • platform/graphics/blackberry/FloatRectBlackBerry.cpp:

(WebCore::FloatRect::normalized):
(WebCore):

  • platform/graphics/blackberry/FontCacheBlackberry.cpp: Removed.
  • platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:

(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::paintToCanvas):
(WebCore::GraphicsContext3D::getImageData):
(WebCore):

  • platform/graphics/blackberry/GraphicsLayerBlackBerry.cpp:

(WebCore::GraphicsLayerBlackBerry::GraphicsLayerBlackBerry):
(WebCore::GraphicsLayerBlackBerry::setBackgroundColor):
(WebCore::GraphicsLayerBlackBerry::clearBackgroundColor):
(WebCore):
(WebCore::GraphicsLayerBlackBerry::setContentsNeedsDisplay):
(WebCore::GraphicsLayerBlackBerry::setNeedsDisplay):
(WebCore::GraphicsLayerBlackBerry::setNeedsDisplayInRect):
(WebCore::GraphicsLayerBlackBerry::updateLayerBackgroundColor):
(WebCore::GraphicsLayerBlackBerry::setupContentsLayer):

  • platform/graphics/blackberry/GraphicsLayerBlackBerry.h:

(GraphicsLayerBlackBerry):
(WebCore::GraphicsLayerBlackBerry::notifySyncRequired):

  • platform/graphics/blackberry/ImageBlackBerry.cpp:

(WebCore::ImageFrame::asNewNativeImage):
(WebCore):
(WebCore::FrameData::clear):
(WebCore::BitmapImage::BitmapImage):
(WebCore::BitmapImage::checkForSolidColor):
(WebCore::BitmapImage::invalidatePlatformData):
(WebCore::BitmapImage::draw):
(WebCore::Image::drawPattern):

  • platform/graphics/blackberry/InstrumentedPlatformCanvas.h: Removed.
  • platform/graphics/blackberry/LayerCompositingThread.cpp:

(WebCore::LayerCompositingThread::drawTextures):
(WebCore::LayerCompositingThread::drawSurface):
(WebCore::LayerCompositingThread::contentsTexture):
(WebCore::LayerCompositingThread::commitPendingTextureUploads):
(WebCore):

  • platform/graphics/blackberry/LayerCompositingThread.h:

(Graphics):
(LayerCompositingThread):

  • platform/graphics/blackberry/LayerCompositingThreadClient.h:

(Graphics):
(WebCore):
(LayerCompositingThreadClient):
(WebCore::LayerCompositingThreadClient::contentsTexture):
(WebCore::LayerCompositingThreadClient::commitPendingTextureUploads):

  • platform/graphics/blackberry/LayerData.h:

(WebCore::LayerData::LayerData):
(WebCore::LayerData::contentsResolutionIndependent):
(LayerData):
(WebCore::LayerData::layerProgram):
(WebCore::LayerData::isContainerForFixedPositionLayers):
(WebCore::LayerData::isFixedToTop):
(WebCore::LayerData::isFixedToLeft):
(WebCore::LayerData::frameVisibleRect):
(WebCore::LayerData::frameContentsSize):
(WebCore::LayerData::contentsScale):

  • platform/graphics/blackberry/LayerFilterRenderer.cpp:

(WebCore::LayerFilterRendererAction::LayerFilterRendererAction):
(WebCore::LayerFilterRenderer::initializeSharedGLObjects):
(WebCore::LayerFilterRenderer::ping):
(WebCore::LayerFilterRenderer::pong):
(WebCore::LayerFilterRenderer::pushSnapshot):
(WebCore::LayerFilterRenderer::popSnapshot):
(WebCore::LayerFilterRenderer::applyActions):

  • platform/graphics/blackberry/LayerRenderer.cpp:

(WebCore):
(WebCore::LayerRenderer::LayerRenderer):
(WebCore::LayerRenderer::~LayerRenderer):
(WebCore::LayerRenderer::setViewport):
(WebCore::LayerRenderer::compositeLayers):
(WebCore::LayerRenderer::compositeBuffer):
(WebCore::LayerRenderer::drawColor):
(WebCore::LayerRenderer::useSurface):
(WebCore::LayerRenderer::drawLayersOnSurfaces):
(WebCore::glRound):
(WebCore::LayerRenderer::toOpenGLWindowCoordinates):
(WebCore::LayerRenderer::drawDebugBorder):
(WebCore::LayerRenderer::drawHolePunchRect):
(WebCore::LayerRenderer::updateLayersRecursive):
(WebCore::LayerRenderer::compositeLayersRecursive):
(WebCore::LayerRenderer::createProgram):
(WebCore::LayerRenderer::useProgram):
(WebCore::LayerRenderer::useLayerProgram):

  • platform/graphics/blackberry/LayerRenderer.h:

(LayerRenderer):

  • platform/graphics/blackberry/LayerRendererSurface.cpp:

(WebCore::LayerRendererSurface::ensureTexture):

  • platform/graphics/blackberry/LayerTile.cpp:

(WebCore::LayerTile::LayerTile):
(WebCore::LayerTile::setContents):
(WebCore::LayerTile::updateContents):

  • platform/graphics/blackberry/LayerTile.h:

(LayerTile):
(WebCore::LayerTile::renderState):
(WebCore::LayerTile::needsRender):
(WebCore::LayerTile::setNeedsRender):
(WebCore::LayerTile::setRenderPending):
(WebCore::LayerTile::setRenderDone):

  • platform/graphics/blackberry/LayerTileIndex.h:
  • platform/graphics/blackberry/LayerTiler.cpp:

(WebCore):
(WebCore::defaultTileSize):
(WebCore::LayerTiler::LayerTiler):
(WebCore::LayerTiler::updateTextureContentsIfNeeded):
(WebCore::LayerTiler::createBuffer):
(WebCore::LayerTiler::willCommit):
(WebCore::LayerTiler::commitPendingTextureUploads):
(WebCore::LayerTiler::layerVisibilityChanged):
(WebCore::LayerTiler::uploadTexturesIfNeeded):
(WebCore::LayerTiler::processTextureJob):
(WebCore::LayerTiler::addTileJob):
(WebCore::LayerTiler::performTileJob):
(WebCore::LayerTiler::drawTile):
(WebCore::LayerTiler::drawTextures):
(WebCore::LayerTiler::pruneTextures):
(WebCore::LayerTiler::updateTileSize):
(WebCore::LayerTiler::setNeedsBacking):
(WebCore::LayerTiler::contentsTexture):

  • platform/graphics/blackberry/LayerTiler.h:

(WebCore::LayerTiler::tileSize):
(LayerTiler):
(WebCore::LayerTiler::TextureJob::TextureJob):
(WebCore::LayerTiler::TextureJob::setContents):
(WebCore::LayerTiler::TextureJob::updateContents):
(TextureJob):
(WebCore::LayerTiler::needsRender):
(WebCore::LayerTiler::removeUpdateContentsJobs):

  • platform/graphics/blackberry/LayerWebKitThread.cpp:

(WebCore::LayerWebKitThread::LayerWebKitThread):
(WebCore::LayerWebKitThread::~LayerWebKitThread):
(WebCore::LayerWebKitThread::paintContents):
(WebCore::LayerWebKitThread::commitPendingTextureUploads):
(WebCore::LayerWebKitThread::setContents):
(WebCore::LayerWebKitThread::setNeedsCommit):
(WebCore::LayerWebKitThread::notifyAnimationsStarted):
(WebCore::LayerWebKitThread::commitOnWebKitThread):
(WebCore::LayerWebKitThread::startAnimations):
(WebCore::LayerWebKitThread::updateTextureContents):
(WebCore::LayerWebKitThread::commitOnCompositingThread):
(WebCore::LayerWebKitThread::addSublayer):
(WebCore):
(WebCore::LayerWebKitThread::addOverlay):
(WebCore::LayerWebKitThread::insert):
(WebCore::LayerWebKitThread::removeFromSuperlayer):
(WebCore::LayerWebKitThread::removeSublayerOrOverlay):
(WebCore::LayerWebKitThread::remove):
(WebCore::LayerWebKitThread::replaceSublayer):
(WebCore::LayerWebKitThread::filtersCanBeComposited):
(WebCore::LayerWebKitThread::removeAll):
(WebCore::LayerWebKitThread::setSublayers):
(WebCore::LayerWebKitThread::updateLayerHierarchy):
(WebCore::LayerWebKitThread::setIsMask):
(WebCore::LayerWebKitThread::releaseLayerResources):

  • platform/graphics/blackberry/LayerWebKitThread.h:

(WebCore::LayerWebKitThread::insertSublayer):
(LayerWebKitThread):
(WebCore::LayerWebKitThread::isMask):
(WebCore::LayerWebKitThread::removeAllSublayers):
(WebCore::LayerWebKitThread::setFixedPosition):
(WebCore::LayerWebKitThread::setIsContainerForFixedPositionLayers):
(WebCore::LayerWebKitThread::setFixedToTop):
(WebCore::LayerWebKitThread::setFixedToLeft):
(WebCore::LayerWebKitThread::setFrameVisibleRect):
(WebCore::LayerWebKitThread::setFrameContentsSize):
(WebCore::LayerWebKitThread::setLayerProgram):

  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:

(WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
(WebCore::MediaPlayerPrivate::play):
(WebCore::MediaPlayerPrivate::supportsFullscreen):
(WebCore::MediaPlayerPrivate::paintCurrentFrameInContext):
(WebCore::MediaPlayerPrivate::prepareForRendering):
(WebCore):
(WebCore::MediaPlayerPrivate::resizeSourceDimensions):
(WebCore::MediaPlayerPrivate::percentLoaded):
(WebCore::MediaPlayerPrivate::updateStates):
(WebCore::MediaPlayerPrivate::waitMetadataTimerFired):
(WebCore::MediaPlayerPrivate::onAuthenticationNeeded):
(WebCore::MediaPlayerPrivate::notifyChallengeResult):
(WebCore::MediaPlayerPrivate::isProcessingUserGesture):
(WebCore::loadBufferingImageData):
(WebCore::MediaPlayerPrivate::setBuffering):
(WebCore::MediaPlayerPrivate::drawBufferingAnimation):
(WebCore::MediaPlayerPrivate::onConditionallyEnterFullscreen):
(WebCore::MediaPlayerPrivate::onExitFullscreen):
(WebCore::MediaPlayerPrivate::onCreateHolePunchRect):
(WebCore::MediaPlayerPrivate::onDestroyHolePunchRect):

  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:

(BlackBerry):
(Platform):
(Graphics):
(MediaPlayerPrivate):

  • platform/graphics/blackberry/PluginLayerWebKitThread.cpp:

(WebCore::PluginLayerWebKitThread::setPluginView):

  • platform/graphics/blackberry/Texture.cpp:

(WebCore::Texture::Texture):
(WebCore::Texture::updateContents):
(WebCore::Texture::setContentsToColor):
(WebCore::Texture::protect):

  • platform/graphics/blackberry/Texture.h:

(Texture):
(WebCore::Texture::textureId):
(WebCore::Texture::isDirty):
(WebCore::Texture::hasTexture):
(WebCore::Texture::sizeInBytes):
(WebCore::Texture::setTextureId):
(WebCore::Texture::setSize):

  • platform/graphics/blackberry/TextureCacheCompositingThread.cpp:

(WebCore::TextureCacheCompositingThread::allocateTextureId):
(WebCore::freeTextureId):
(WebCore::TextureCacheCompositingThread::collectGarbage):
(WebCore::TextureCacheCompositingThread::textureSizeInBytesChanged):
(WebCore):
(WebCore::TextureCacheCompositingThread::textureDestroyed):
(WebCore::TextureCacheCompositingThread::install):
(WebCore::TextureCacheCompositingThread::resizeTexture):
(WebCore::TextureCacheCompositingThread::evict):
(WebCore::TextureCacheCompositingThread::prune):
(WebCore::TextureCacheCompositingThread::clear):
(WebCore::TextureCacheCompositingThread::textureForTiledContents):
(WebCore::TextureCacheCompositingThread::updateContents):

  • platform/graphics/blackberry/TextureCacheCompositingThread.h:

(TextureCacheCompositingThread):
(WebCore::TextureCacheCompositingThread::ZombieTexture::ZombieTexture):
(ZombieTexture):

  • platform/graphics/blackberry/skia/ImageBufferDataSkia.h: Removed.
  • platform/graphics/blackberry/skia/PlatformSupport.cpp: Removed.
  • platform/graphics/blackberry/skia/PlatformSupport.h: Removed.
9:30 AM Changeset in webkit [144464] by jocelyn.turcotte@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt] Fix the Mac build with the current qtbase/dev branch
https://bugs.webkit.org/show_bug.cgi?id=111190

Reviewed by Allan Sandfeld Jensen.

QMAKE_MACOSX_DEPLOYMENT_TARGET now influences
MAC_OS_X_VERSION_MIN_REQUIRED through -mmacosx-version-min after
changes in qtbase to support iOS.

Having only WebCore defining it to 10.5 would create a mismatch of
ENABLE_THREADING_LIBDISPATCH with WTF to cause undefined symbols
while linking both together at the end.

Fix it by removing the statement which isn't needed anymore.
qtbase/mkspecs/common/mac-minimum-version.conf already defines
10.6 as the minimum Mac version.

  • Target.pri:
9:06 AM Changeset in webkit [144463] by vsevik@chromium.org
  • 7 edits in trunk

Web Inspector: [Regression] Snippets renaming is broken.
https://bugs.webkit.org/show_bug.cgi?id=111181

Reviewed by Alexander Pavlov.

Source/WebCore:

  • inspector/front-end/NavigatorView.js:
  • inspector/front-end/ScriptSnippetModel.js:
  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.set _fileRenamed):

  • inspector/front-end/UISourceCode.js:

(WebInspector.UISourceCode.prototype.rename):

LayoutTests:

  • inspector/debugger/script-snippet-model.html:
9:04 AM Changeset in webkit [144462] by hyatt@apple.com
  • 2 edits in trunk/Source/WebCore

Fix a misspelled word in RenderObject.h. staticly -> statically.

Reviewed by Dean Jackson.

  • rendering/RenderObject.h:

(WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
(WebCore::RenderObject::RenderObjectBitfields::isPositioned):

8:58 AM Changeset in webkit [144461] by hyatt@apple.com
  • 9 edits in trunk/Source/WebCore

[New Multicolumn] Change flow thread containment to be a state.
https://bugs.webkit.org/show_bug.cgi?id=111110

Change m_inRenderFlowThread from a single bit to an actual state. This
will let us track whether we're inside a multicolumn (in-flow) flow thread
or a named (out-of-flow) flow thread. In the former case, we're going to have
to do more work to maintain this state, but for now I've kept all the logic
the same just for the initial landing.

Reviewed by Andreas Kling.

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::createRendererForElementIfNeeded):
(WebCore::NodeRenderingContext::createRendererForTextIfNeeded):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::clone):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::RenderFlowThread):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::clone):

  • rendering/RenderMultiColumnFlowThread.cpp:

(WebCore::RenderMultiColumnFlowThread::RenderMultiColumnFlowThread):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::setFlowThreadStateIncludingDescendants):
(WebCore::RenderObject::removeFromRenderFlowThreadRecursive):

  • rendering/RenderObject.h:

(WebCore::RenderObject::setParent):
(RenderObject):
(WebCore::RenderObject::inRenderFlowThread):
(WebCore::RenderObject::flowThreadState):
(WebCore::RenderObject::setFlowThreadState):
(WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
(RenderObjectBitfields):
(WebCore::RenderObject::RenderObjectBitfields::flowThreadState):
(WebCore::RenderObject::RenderObjectBitfields::setFlowThreadState):

  • rendering/RenderView.cpp:

(WebCore::RenderView::addChild):

8:46 AM Changeset in webkit [144460] by jberlin@webkit.org
  • 2 edits in trunk/Source/WebCore

Build fix.

Roll out r144431 because it was a build fix for r144422, which was rolled out in r144446.

  • platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.h:
8:28 AM Changeset in webkit [144459] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

BUILD FIX (r144358): Add UNUSED_PARAM() macros to WebCore::Extensions3DOpenGL::drawBuffersEXT()
<http://webkit.org/b/109331>

Fixes the following build failures:

Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp:218:51: error: unused parameter 'n' [-Werror,-Wunused-parameter]
void Extensions3DOpenGL::drawBuffersEXT(GC3Dsizei n, const GC3Denum* bufs)


Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp:218:70: error: unused parameter 'bufs' [-Werror,-Wunused-parameter]
void Extensions3DOpenGL::drawBuffersEXT(GC3Dsizei n, const GC3Denum* bufs)


2 errors generated.

  • platform/graphics/opengl/Extensions3DOpenGL.cpp:

(WebCore::Extensions3DOpenGL::drawBuffersEXT): Add UNUSED_PARAM()
macros.

8:24 AM Changeset in webkit [144458] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

[v8] ScriptValue has dangerous copy semantics
https://bugs.webkit.org/show_bug.cgi?id=110206

Patch by Dan Carney <dcarney@google.com> on 2013-03-01
Reviewed by Kentaro Hara.

Update ScriptValue to used a SharedPersistent,
making it impossible to return dead references.

No new tests. No change in functionality.

  • bindings/v8/ScriptValue.cpp:

(WebCore::ScriptValue::serialize):
(WebCore::ScriptValue::getString):
(WebCore::ScriptValue::toString):
(WebCore::ScriptValue::toInspectorValue):

  • bindings/v8/ScriptValue.h:

(WebCore::ScriptValue::ScriptValue):
(WebCore::ScriptValue::operator=):
(WebCore::ScriptValue::operator==):
(WebCore::ScriptValue::isEqual):
(WebCore::ScriptValue::isFunction):
(WebCore::ScriptValue::isNull):
(WebCore::ScriptValue::isUndefined):
(WebCore::ScriptValue::isObject):
(WebCore::ScriptValue::hasNoValue):
(WebCore::ScriptValue::clear):
(ScriptValue):
(WebCore::ScriptValue::v8Value):
(WebCore::ScriptValue::v8ValueRaw):

  • bindings/v8/SharedPersistent.h:
  • bindings/v8/custom/V8InjectedScriptHostCustom.cpp:

(WebCore::InjectedScriptHost::scriptValueAsNode):

  • bindings/v8/custom/V8MessageEventCustom.cpp:

(WebCore::V8MessageEvent::dataAttrGetterCustom):

7:49 AM Changeset in webkit [144457] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt/TestExpectations: Skipped failing test.
7:47 AM Changeset in webkit [144456] by jchaffraix@webkit.org
  • 3 edits in trunk/Source/WebCore

Add FeatureObserver for marquee and reflection
https://bugs.webkit.org/show_bug.cgi?id=111118

Reviewed by Simon Fraser.

Refactoring covered by existing tests.

  • page/FeatureObserver.h:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::styleChanged):
Added some instrumentation for reflection and marquee as they are both prefixed and this would help
to know their popularity on the web. Marquee was split between <marquee> (HTMLMarqueeElement) and
overflow: -webkit-marquee (CSSOverflowMarquee).

7:37 AM Changeset in webkit [144455] by apavlov@chromium.org
  • 16 edits in trunk

Web Inspector: Introduce opaque SecurityOrigin string identifiers in the frontend
https://bugs.webkit.org/show_bug.cgi?id=111165

Reviewed by Vsevolod Vlasov.

Source/WebCore:

A plain string security origin value has been replaced by WebInspector.SecurityOrigin all over the code,
containing a URL (which holds a stringified security origin) and an identifier (which is now used
as a key in place of the stringified security origin in various maps). To avoid the ResourceTreeModel
code clutter, the security origin tracking code has been extracted into a separate type,
WebInspector.SecurityOriginTracker, which works as a helper on the ResourceTreeModel.

No new tests, as it is a refactoring.

  • inspector/front-end/DOMStorage.js:

(WebInspector.DOMStorage.storageId):
(WebInspector.DOMStorage.prototype.id):
(WebInspector.DOMStorage.prototype.getItems):
(WebInspector.DOMStorage.prototype.setItem):
(WebInspector.DOMStorage.prototype.removeItem):
(WebInspector.DOMStorageModel.prototype._securityOriginAdded):
(WebInspector.DOMStorageModel.prototype._securityOriginRemoved):
(WebInspector.DOMStorageModel.prototype._storageKey):

  • inspector/front-end/ExtensionAuditCategory.js:
  • inspector/front-end/FileSystemModel.js:

(WebInspector.FileSystemModel.prototype._reset):
(WebInspector.FileSystemModel.prototype._securityOriginAdded):
(WebInspector.FileSystemModel.prototype._securityOriginRemoved):
(WebInspector.FileSystemModel.prototype._addOrigin):
(WebInspector.FileSystemModel.prototype._removeOrigin):
(WebInspector.FileSystemModel.prototype._requestFileSystemRoot):
(WebInspector.FileSystemModel.prototype._fileSystemRootReceived):
(WebInspector.FileSystemModel.prototype._removeFileSystem):
(WebInspector.FileSystemModel.FileSystem.prototype.get name):

  • inspector/front-end/IndexedDBModel.js:

(WebInspector.IndexedDBModel.prototype._reset):
(WebInspector.IndexedDBModel.prototype.refreshDatabaseNames):
(WebInspector.IndexedDBModel.prototype._securityOriginAdded):
(WebInspector.IndexedDBModel.prototype._securityOriginRemoved):
(WebInspector.IndexedDBModel.prototype._addOrigin):
(WebInspector.IndexedDBModel.prototype._removeOrigin):
(WebInspector.IndexedDBModel.prototype._updateOriginDatabaseNames):
(WebInspector.IndexedDBModel.prototype._loadDatabaseNames):
(WebInspector.IndexedDBModel.prototype._loadDatabase):
(WebInspector.IndexedDBModel.prototype.):
(WebInspector.IndexedDBModel.prototype._requestData):
(WebInspector.IndexedDBModel.DatabaseId.prototype.equals):

  • inspector/front-end/IndexedDBViews.js:

(WebInspector.IDBDatabaseView.prototype._refreshDatabase):

  • inspector/front-end/ResourceTreeModel.js:

(WebInspector.ResourceTreeModel.prototype._addFrame):
(WebInspector.ResourceTreeModel.prototype.securityOriginForId):
(WebInspector.ResourceTreeModel.prototype.securityOrigins):
(WebInspector.ResourceTreeModel.prototype._handleMainFrameDetached):
(WebInspector.ResourceTreeModel.prototype._frameNavigated):
(WebInspector.ResourceTreeModel.prototype._frameDetached):
(WebInspector.ResourceTreeModel.SecurityOriginTracker):
(WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._addSecurityOrigin):
(WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._removeSecurityOrigin):
(WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._bindSecurityOrigin):
(WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._unbindSecurityOrigin):
(WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._detachMainFrame):
(WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._securityOriginForId):
(WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._securityOrigins):
(WebInspector.ResourceTreeFrame.prototype._navigate):
(WebInspector.SecurityOrigin.prototype.id):
(WebInspector.SecurityOrigin.prototype.url):
(WebInspector.SecurityOrigin.prototype.uiTitle):
(WebInspector.SecurityOrigin.prototype.toProtocol):

  • inspector/front-end/ResourcesPanel.js:

(WebInspector.IDBDatabaseTreeElement):
(WebInspector.IDBDatabaseTreeElement.prototype.get itemURL):
(WebInspector.IDBObjectStoreTreeElement.prototype.get itemURL):
(WebInspector.IDBIndexTreeElement.prototype.get itemURL):
(WebInspector.DOMStorageTreeElement):
(WebInspector.DOMStorageTreeElement.prototype.get itemURL):
(WebInspector.FileSystemTreeElement):

LayoutTests:

Follow the string -> object conversion of the security origin.

  • http/tests/inspector-enabled/dom-storage-open.html:
  • http/tests/inspector/filesystem/delete-entry.html:
  • http/tests/inspector/filesystem/request-filesystem-root.html:
  • http/tests/inspector/indexeddb/database-data.html:
  • http/tests/inspector/indexeddb/database-names.html:
  • http/tests/inspector/indexeddb/database-structure.html:
  • http/tests/inspector/resource-tree/resource-tree-events.html:
7:25 AM Changeset in webkit [144454] by nghanavatian@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Reverse the base and extent of a selection when reversing its handles
https://bugs.webkit.org/show_bug.cgi?id=111098

Reviewed by Yong Li.

PR283969
Swap the base and extent if base does not come first, and set the new selection.

Internally reviewed by Mike Fenton

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::setSelection):

7:15 AM Changeset in webkit [144453] by eustas@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: [Timeline] Show "curtains" when mouse is over CPU bar.
https://bugs.webkit.org/show_bug.cgi?id=108930

Reviewed by Pavel Feldman.

This feature will help developers to focus on events
that caused CPU bar.

  • inspector/front-end/Popover.js: Added "arrowDirection" parameter.
  • inspector/front-end/TimelineGrid.js:

(WebInspector.TimelineGrid): Added "curtains".

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelinePanel.prototype._mouseMove): Show/hide "curtains"
when mouse is over CPU bar.

  • inspector/front-end/timelinePanel.css: Added "curtains" style rules.
7:10 AM Changeset in webkit [144452] by rakuco@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[JSC] Fix sign comparison warning/error after r144340.
https://bugs.webkit.org/show_bug.cgi?id=111164

Reviewed by Mark Hahnenberg.

gcc (both 4.2.1 and 4.7.2) complain about comparing signed and
unsigned terms (clang accepts it just fine).

Work around that by casting the 1 to an uintptr_t as well.

  • dfg/DFGEdge.h:

(JSC::DFG::Edge::makeWord):

6:47 AM Changeset in webkit [144451] by apavlov@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [Styles] Implement navigation to UI locations of property names/values in the source code
Relanding fixed r144449.
https://bugs.webkit.org/show_bug.cgi?id=105285

Reviewed by Vsevolod Vlasov.

Users can now Ctrl/Cmd-click CSS property names/values whose UI locations are found in
an external stylesheet/sass/other file. Inline stylesheets are not navigable,
since their start position is not detectable inside the surrounding HTML as of yet.

No new tests, a UI change.

  • inspector/front-end/CSSStyleModel.js:

(WebInspector.CSSRule.prototype.isSourceNavigable): Whether the rule contains reliable source code information.
(WebInspector.CSSProperty.prototype.uiLocation): Returns a UILocation for the property name of value.

  • inspector/front-end/StylesSidebarPane.js: Add navigation code.

(WebInspector.StylesSidebarPane.prototype._innerRebuildUpdate):
(WebInspector.StylePropertiesSection):

6:34 AM Changeset in webkit [144450] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, rolling out r144449.
http://trac.webkit.org/changeset/144449
https://bugs.webkit.org/show_bug.cgi?id=111175

Breaks style-related inspector tests (Requested by apavlov on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-03-01

  • inspector/front-end/CSSStyleModel.js:

(WebInspector.CSSRule.prototype.get isRegular):
(WebInspector.CSSProperty.prototype.setDisabled):

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylesSidebarPane.prototype._innerRebuildUpdate):
(WebInspector.StylePropertiesSection):
(.event):
(.isRevert):

6:12 AM Changeset in webkit [144449] by apavlov@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [Styles] Implement navigation to UI locations of property names/values in the source code
https://bugs.webkit.org/show_bug.cgi?id=105285

Reviewed by Vsevolod Vlasov.

Users can now Ctrl/Cmd-click CSS property names/values whose UI locations are found in
an external stylesheet/sass/other file. Inline stylesheets are not navigable,
since their start position is not detectable inside the surrounding HTML as of yet.

No new tests, a UI change.

  • inspector/front-end/CSSStyleModel.js:

(WebInspector.CSSRule.prototype.isSourceNavigable): Whether the rule contains reliable source code information.
(WebInspector.CSSProperty.prototype.uiLocation): Returns a UILocation for the property name of value.

  • inspector/front-end/StylesSidebarPane.js: Add navigation code.

(WebInspector.StylesSidebarPane.prototype._innerRebuildUpdate):
(WebInspector.StylePropertiesSection):

6:02 AM Changeset in webkit [144448] by toyoshim@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium gardening, update image expectation again

  • platform/chromium-mac-snowleopard/svg/custom/foreign-object-skew-expected.png:
5:38 AM Changeset in webkit [144447] by commit-queue@webkit.org
  • 4 edits
    2 deletes in trunk

Unreviewed, rolling out r144443.
http://trac.webkit.org/changeset/144443
https://bugs.webkit.org/show_bug.cgi?id=111169

Caused 2 tests to crash by segv on Chromium Mac10.6 (Requested
by toyoshim on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-03-01

Source/WebCore:

  • css/mediaControls.css:

(video::-webkit-media-text-track-display):

  • rendering/RenderTextTrackCue.cpp:

(WebCore::RenderTextTrackCue::isOutside):
(WebCore::RenderTextTrackCue::repositionCueSnapToLinesSet):

LayoutTests:

  • media/track/track-cue-rendering-with-padding-expected.txt: Removed.
  • media/track/track-cue-rendering-with-padding.html: Removed.
5:30 AM Changeset in webkit [144446] by commit-queue@webkit.org
  • 208 edits
    7 deletes in trunk/Source

Unreviewed, rolling out r144422 and r144424.
http://trac.webkit.org/changeset/144422
http://trac.webkit.org/changeset/144424
https://bugs.webkit.org/show_bug.cgi?id=111167

Caused over 20 tests to fail assertion on Chromium Win port as
ASSERTION FAILED: m_platformRequestUpdated (Requested by
toyoshim on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-03-01

Source/WebCore:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/mediastream/RTCPeerConnection.cpp:
  • Modules/notifications/Notification.cpp:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/ScriptControllerBase.cpp:
  • bindings/js/JSNodeCustom.cpp:
  • bindings/js/ScriptController.cpp:
  • bindings/js/ScriptSourceCode.h:
  • bindings/objc/DOM.mm:
  • bindings/v8/ScriptController.cpp:
  • bindings/v8/V8DOMWindowShell.cpp:
  • bindings/v8/custom/V8DOMWindowCustom.cpp:
  • css/CSSCrossfadeValue.h:

(WebCore::CSSCrossfadeValue::CSSCrossfadeValue):
(WebCore::CSSCrossfadeValue::CrossfadeSubimageObserverProxy::CrossfadeSubimageObserverProxy):

  • css/CSSFontFaceSource.h:
  • css/CSSFontSelector.cpp:
  • css/WebKitCSSSVGDocumentValue.cpp:
  • css/WebKitCSSSVGDocumentValue.h:

(WebCore):

  • dom/Clipboard.cpp:

(WebCore::Clipboard::Clipboard):

  • dom/ContainerNode.cpp:
  • dom/DOMImplementation.cpp:
  • dom/PendingScript.h:
  • dom/ScriptElement.cpp:
  • dom/ScriptElement.h:
  • history/CachedFrame.cpp:
  • html/DOMURL.cpp:
  • html/HTMLAnchorElement.cpp:
  • html/HTMLAppletElement.cpp:
  • html/HTMLElement.cpp:
  • html/HTMLEmbedElement.cpp:
  • html/HTMLFrameSetElement.cpp:
  • html/HTMLHtmlElement.cpp:
  • html/HTMLImageElement.cpp:
  • html/HTMLObjectElement.cpp:
  • html/HTMLPlugInElement.cpp:
  • html/ImageDocument.cpp:
  • html/ImageInputType.cpp:
  • html/MediaDocument.cpp:
  • html/PluginDocument.cpp:
  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):

  • html/parser/HTMLConstructionSite.cpp:
  • html/parser/HTMLParserOptions.cpp:
  • html/parser/HTMLScriptRunner.h:
  • html/parser/XSSAuditor.cpp:
  • html/parser/XSSAuditorDelegate.cpp:
  • inspector/InspectorDebuggerAgent.cpp:
  • inspector/InspectorFileSystemAgent.cpp:
  • inspector/InspectorFrontendHost.cpp:
  • inspector/InspectorInstrumentation.h:

(WebCore):

  • inspector/InspectorPageAgent.cpp:
  • inspector/NetworkResourcesData.cpp:
  • inspector/NetworkResourcesData.h:

(WebCore):

  • loader/CookieJar.cpp:
  • loader/CrossOriginAccessControl.cpp:
  • loader/CrossOriginAccessControl.h:

(WebCore):

  • loader/CrossOriginPreflightResultCache.h:
  • loader/DocumentThreadableLoader.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::FrameLoader):

  • loader/FrameLoader.h:

(WebCore):
(WebCore::FrameLoader::policyChecker):

  • loader/ImageLoader.cpp:
  • loader/ImageLoader.h:
  • loader/LinkLoader.h:
  • loader/MainResourceLoader.cpp:
  • loader/MainResourceLoader.h:
  • loader/MixedContentChecker.cpp:
  • loader/PingLoader.cpp:
  • loader/PolicyChecker.h:

(WebCore):

  • loader/ProgressTracker.cpp:
  • loader/SubframeLoader.cpp:
  • loader/SubresourceLoader.cpp:
  • loader/TextTrackLoader.cpp:
  • loader/TextTrackLoader.h:
  • loader/ThreadableLoader.h:
  • loader/appcache/ApplicationCacheGroup.cpp:
  • loader/appcache/ApplicationCacheGroup.h:

(WebCore):

  • loader/appcache/ApplicationCacheHost.cpp:
  • loader/archive/cf/LegacyWebArchive.cpp:
  • loader/cache/CachedFont.cpp:
  • loader/cache/CachedFont.h:

(CachedFontClient):
(WebCore::CachedFontClient::~CachedFontClient):
(WebCore::CachedFontClient::expectedType):
(WebCore::CachedFontClient::resourceClientType):
(WebCore::CachedFontClient::fontLoaded):
(WebCore):

  • loader/cache/CachedFontClient.h: Removed.
  • loader/cache/CachedImage.cpp:
  • loader/cache/CachedRawResource.cpp:
  • loader/cache/CachedRawResource.h:

(WebCore):
(CachedRawResourceClient):
(WebCore::CachedRawResourceClient::~CachedRawResourceClient):
(WebCore::CachedRawResourceClient::expectedType):
(WebCore::CachedRawResourceClient::resourceClientType):
(WebCore::CachedRawResourceClient::dataSent):
(WebCore::CachedRawResourceClient::responseReceived):
(WebCore::CachedRawResourceClient::dataReceived):
(WebCore::CachedRawResourceClient::redirectReceived):
(WebCore::CachedRawResourceClient::dataDownloaded):

  • loader/cache/CachedRawResourceClient.h: Removed.
  • loader/cache/CachedResource.cpp:
  • loader/cache/CachedResourceHandle.cpp:
  • loader/cache/CachedResourceHandle.h:

(WebCore::CachedResourceHandleBase::~CachedResourceHandleBase):
(WebCore::CachedResourceHandleBase::CachedResourceHandleBase):

  • loader/cache/CachedSVGDocument.h:

(CachedSVGDocumentClient):
(WebCore::CachedSVGDocumentClient::~CachedSVGDocumentClient):
(WebCore::CachedSVGDocumentClient::expectedType):
(WebCore::CachedSVGDocumentClient::resourceClientType):
(WebCore):

  • loader/cache/CachedSVGDocumentClient.h: Removed.
  • loader/cache/CachedSVGDocumentReference.cpp: Removed.
  • loader/cache/CachedSVGDocumentReference.h:

(WebCore::CachedSVGDocumentReference::CachedSVGDocumentReference):
(WebCore::CachedSVGDocumentReference::~CachedSVGDocumentReference):

  • loader/cache/CachedStyleSheetClient.h:
  • loader/cache/MemoryCache.cpp:
  • loader/cache/MemoryCache.h:

(WebCore):
(MemoryCache):

  • loader/chromium/CachedRawResourceChromium.cpp:
  • loader/icon/IconController.cpp:
  • loader/icon/IconLoader.h:
  • loader/mac/ResourceLoaderMac.mm:
  • page/DOMWindowExtension.cpp:
  • page/DragController.cpp:
  • page/Frame.cpp:

(WebCore::Frame::Frame):
(WebCore::Frame::reportMemoryUsage):

  • page/Frame.h:

(WebCore):
(Frame):
(WebCore::Frame::init):
(WebCore::Frame::loader):

  • page/PerformanceNavigation.cpp:
  • page/PerformanceTiming.cpp:
  • page/PointerLockController.cpp:
  • page/Settings.cpp:
  • page/animation/CSSPropertyAnimation.cpp:
  • platform/chromium/PasteboardChromium.cpp:
  • platform/efl/ErrorsEfl.cpp:
  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/filters/FilterOperation.cpp:
  • platform/graphics/filters/FilterOperation.h:

(WebCore::FilterOperation::ReferenceFilterOperation::setCachedSVGDocumentReference):
(WebCore::FilterOperation::ReferenceFilterOperation::ReferenceFilterOperation):

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
  • platform/gtk/ErrorsGtk.cpp:
  • platform/gtk/PasteboardGtk.cpp:
  • platform/gtk/PasteboardHelper.h:
  • platform/mac/ClipboardMac.h:
  • platform/mac/ClipboardMac.mm:
  • platform/mac/HTMLConverter.mm:
  • platform/mac/PasteboardMac.mm:
  • platform/network/AuthenticationChallengeBase.cpp:
  • platform/network/cf/CookieJarCFNet.cpp:
  • platform/network/cf/ResourceRequestCFNet.cpp:
  • platform/network/mac/CookieStorageMac.mm:
  • platform/qt/PasteboardQt.cpp:
  • plugins/DOMMimeType.cpp:
  • plugins/PluginRequest.h: Removed.
  • plugins/PluginStream.h:

(PluginStreamClient):
(WebCore::PluginStreamClient::~PluginStreamClient):
(WebCore::PluginStreamClient::streamDidFinishLoading):
(WebCore):

  • plugins/PluginStreamClient.h: Removed.
  • plugins/PluginView.cpp:
  • plugins/PluginView.h:

(WebCore):
(PluginRequest):
(WebCore::PluginRequest::PluginRequest):
(WebCore::PluginRequest::frameLoadRequest):
(WebCore::PluginRequest::notifyData):
(WebCore::PluginRequest::sendNotification):
(WebCore::PluginRequest::shouldAllowPopups):

  • rendering/HitTestResult.cpp:
  • rendering/InlineFlowBox.cpp:
  • rendering/RenderBox.cpp:
  • rendering/RenderEmbeddedObject.cpp:
  • rendering/RenderImage.cpp:
  • rendering/RenderImageResource.cpp:

(WebCore::RenderImageResource::RenderImageResource):

  • rendering/RenderImageResource.h:

(WebCore::RenderImageResource::image):
(WebCore::RenderImageResource::errorOccurred):
(WebCore::RenderImageResource::usesImageContainerSize):
(WebCore::RenderImageResource::imageHasRelativeWidth):
(WebCore::RenderImageResource::imageHasRelativeHeight):
(WebCore::RenderImageResource::imageSize):

  • rendering/RenderImageResourceStyleImage.cpp:
  • rendering/RenderLayer.cpp:
  • rendering/RenderLayerBacking.cpp:
  • rendering/RenderLayerFilterInfo.h:
  • rendering/RenderListItem.cpp:
  • rendering/RenderListMarker.cpp:
  • rendering/RenderSnapshottedPlugIn.cpp:
  • rendering/RenderTableCol.cpp:
  • rendering/RenderTableRow.cpp:
  • rendering/RenderTableSection.cpp:
  • rendering/style/StyleCachedShader.h:
  • rendering/style/StyleCustomFilterProgram.cpp: Removed.
  • rendering/style/StyleCustomFilterProgram.h:

(WebCore):
(WebCore::StyleCustomFilterProgram::vertexShaderString):
(StyleCustomFilterProgram):
(WebCore::StyleCustomFilterProgram::fragmentShaderString):
(WebCore::StyleCustomFilterProgram::isLoaded):
(WebCore::StyleCustomFilterProgram::willHaveClients):
(WebCore::StyleCustomFilterProgram::didRemoveLastClient):
(WebCore::StyleCustomFilterProgram::notifyFinished):

  • svg/SVGFEImageElement.h:
  • svg/SVGFontFaceUriElement.h:

(SVGFontFaceUriElement):

  • svg/SVGImageLoader.cpp:
  • svg/SVGUseElement.cpp:
  • svg/SVGUseElement.h:
  • svg/graphics/SVGImageCache.cpp:
  • testing/MockPagePopupDriver.cpp:
  • xml/XSLStyleSheet.h:
  • xml/XSLTProcessorLibxslt.cpp:
  • xml/parser/XMLDocumentParser.cpp:
  • xml/parser/XMLDocumentParser.h:
  • xml/parser/XMLDocumentParserLibxml2.cpp:

Source/WebKit/chromium:

  • src/ApplicationCacheHost.cpp:
  • src/AssociatedURLLoader.cpp:
  • src/EditorClientImpl.cpp:
  • src/SharedWorkerRepository.cpp:
  • src/WebDataSourceImpl.cpp:
  • src/WebFrameImpl.h:

(WebCore):

  • src/WebNode.cpp:
  • src/WebSharedWorkerImpl.cpp:
  • tests/FrameLoaderClientImplTest.cpp:

Source/WebKit/efl:

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
  • ewk/ewk_frame.cpp:

Source/WebKit/gtk:

  • webkit/webkitwebpolicydecision.cpp:

Source/WebKit/mac:

  • DOM/WebDOMOperations.mm:
  • Misc/WebNSPasteboardExtras.mm:
  • WebCoreSupport/WebFrameNetworkingContext.mm:
  • WebView/WebRenderLayer.mm:
  • WebView/WebRenderNode.mm:

Source/WebKit/qt:

  • WebCoreSupport/NotificationPresenterClientQt.cpp:
  • WebCoreSupport/QWebPageAdapter.cpp:

Source/WebKit2:

  • NetworkProcess/HostRecord.h:
  • NetworkProcess/NetworkResourceLoadScheduler.h:
  • NetworkProcess/NetworkResourceLoader.h:

(WebCore):

  • Shared/WebRenderLayer.cpp:
  • Shared/WebRenderObject.cpp:
  • WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
  • WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:
  • WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
  • WebProcess/Plugins/PDF/PDFPlugin.mm:
  • WebProcess/Plugins/PluginView.cpp:
  • WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
  • WebProcess/WebCoreSupport/WebEditorClient.cpp:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
  • WebProcess/WebPage/mac/WebPageMac.mm:
  • WebProcess/WebProcess.cpp:
  • WebProcess/soup/WebProcessSoup.cpp:
4:59 AM Changeset in webkit [144445] by toyoshim@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium gardening, cleanup lint errors #2
Remove duplicated entries.

  • platform/chromium/TestExpectations:
4:57 AM Changeset in webkit [144444] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: fix closure compiler warnings in ProfilesPanel
https://bugs.webkit.org/show_bug.cgi?id=111163

Patch by Alexei Filippov <alph@chromium.org> on 2013-03-01
Reviewed by Vsevolod Vlasov.

  • inspector/front-end/ProfileLauncherView.js:

(WebInspector.ProfileLauncherView.prototype.addProfileType):

  • inspector/front-end/ProfilesPanel.js:
4:32 AM Changeset in webkit [144443] by vcarbune@chromium.org
  • 4 edits
    2 adds in trunk

Support padding, margin and border for internal UA cue styling
https://bugs.webkit.org/show_bug.cgi?id=110703

Reviewed by Eric Carlson.

Source/WebCore:

For some particular user agent styling this allows the possibility
of making the window around the cue text bigger to match some user
styles (see CaptionUserPreferencesMac::captionsStyleSheetOverride).

These properties *cannot* be set through by using the ::cue
pseudo-element and, as specified, are used only internally.

Test: media/track/track-cue-rendering-with-padding.html

  • css/mediaControls.css:

(video::-webkit-media-text-track-display): Set the CSS box model
to include in the specified width or height the values of
padding / margin / border by using -webkit-box-sizing and avoid
overflow over 100% width because of having these properties set.

  • rendering/RenderTextTrackCue.cpp:

(WebCore::RenderTextTrackCue::isOutside): To not interfere with
the regular WebVTT positioning algorithm, the check is done for
the absolute content box.
(WebCore::RenderTextTrackCue::repositionCueSnapToLinesSet): Added
an extra adjustment step to accomodate vertical padding (and not
overflow the cue container)

LayoutTests:

  • media/track/track-cue-rendering-with-padding-expected.txt: Added.
  • media/track/track-cue-rendering-with-padding.html: Added.
4:26 AM Changeset in webkit [144442] by toyoshim@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium gardening

  • platform/chromium/TestExpectations:
4:17 AM Changeset in webkit [144441] by allan.jensen@digia.com
  • 4 edits in trunk

[Qt] Enable LINK_PREFETCH
https://bugs.webkit.org/show_bug.cgi?id=111158

Reviewed by Simon Hausmann.

Tools:

  • qmake/mkspecs/features/features.pri:

LayoutTests:

Unskip tests depending on LINK_PREFETCH.

  • platform/qt/TestExpectations:
4:13 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
4:05 AM Changeset in webkit [144440] by abecsi@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt][WK2] Fix failing API tests after r143935
https://bugs.webkit.org/show_bug.cgi?id=111086

Reviewed by Jocelyn Turcotte.

Convert a leftorver resume call to the new resumeAndUpdateContent() call
in PageViewportControllerClientQt so that the notifications about zoom
animation state changes reach the API tests.

  • UIProcess/qt/PageViewportControllerClientQt.cpp:

(WebKit::PageViewportControllerClientQt::scaleAnimationStateChanged):

4:04 AM Changeset in webkit [144439] by eustas@chromium.org
  • 7 edits in trunk

Web Inspector: Save/load timeline should preserve DOMContentLoaded and Load event markers
https://bugs.webkit.org/show_bug.cgi?id=110819

Reviewed by Pavel Feldman.

To create event divider TimelinePresentation model checks if record
frame is main frame. With this patch check is moved to backend and
result is saved in record to avoid incoherence.

  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
Record "isMainFrame" flag.
(WebCore::InspectorTimelineAgent::didMarkLoadEvent): Ditto.

  • inspector/TimelineRecordFactory.cpp:

(WebCore::TimelineRecordFactory::createMarkData):
Added data object constructor.

  • inspector/TimelineRecordFactory.h: Ditto.
  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel.isEventDivider):
Use saved flag value instead of comparing with "current" main frame.

4:01 AM Changeset in webkit [144438] by allan.jensen@digia.com
  • 2 edits in trunk/Tools

[Qt] Update features.pri with new features
https://bugs.webkit.org/show_bug.cgi?id=111157

Reviewed by Jocelyn Turcotte.

  • qmake/mkspecs/features/features.pri:
3:46 AM Changeset in webkit [144437] by eustas@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [DataGrid] Columns are misaligned after rows being refreshed.
https://bugs.webkit.org/show_bug.cgi?id=111077

Reviewed by Pavel Feldman.

Analysis: DataGridNode.refresh removes all cells and then recreates them.
The issue is that mandatory "corner" cell is not recreated.

  • inspector/front-end/DataGrid.js:

(WebInspector.DataGridNode.prototype.refresh):
Added "corner" cell restoration code.

3:39 AM Changeset in webkit [144436] by g.czajkowski@samsung.com
  • 20 edits
    2 adds in trunk/Source/WebKit2

[WK2] Asynchronous spell checking implementation
https://bugs.webkit.org/show_bug.cgi?id=109577

Patch by Grzegorz Czajkowski <g.czajkowski@samsung.com>, Mariusz Grzegorczyk <mariusz.g@samsung.com> on 2013-03-01
Reviewed by Enrica Casucci.

Associate the abstract 'WebCore::TextCheckingRequest' object with the unique identifier
on WebProcess side. The request data from the 'TextCheckingRequest' are retrieved and
passed to the UIProcess. The WK2 client (TextChecker{Gtk/Mac/Efl/Qt}.cpp) gets
the 'TextCheckerCompletion' object with the request data and possibility to notify
the WebProcess about the spelling results.
Finally, the WebPage object calls on the proper 'TextCheckingRequest' object
didSuccess/didCancel method to notify the WebCore about the spelling result.

  • CMakeLists.txt:
  • GNUmakefile.list.am:

Add 'TextCheckerCompletion.{h/cpp}' to the WebKit2 cmake based and
WK2-Gtk+ builds.

  • Scripts/webkit2/messages.py:

(headers_for_type):
Add exception for 'TextCheckingRequestData' class to properly find header
file for it.

  • Shared/WebCoreArgumentCoders.cpp:
  • Shared/WebCoreArgumentCoders.h:

Teach 'ArgumentCoder' how to encode/decode 'TextCheckingRequestData' class.

  • Target.pri:

Add 'TextCheckerCompletion.{h/cpp}' to the WK2-Qt build.

  • UIProcess/TextChecker.h:

Add 'requestCheckingOfString' method to the TextChecker's interface.

  • UIProcess/TextCheckerCompletion.cpp: Added.

(WebKit::TextCheckerCompletion::create):
(WebKit::TextCheckerCompletion::TextCheckerCompletion):

(WebKit::TextCheckerCompletion::spellDocumentTag):
Return the WebPageProxy's spellDocumentTag as the client might be
interested in from which page the request came.

(WebKit::TextCheckerCompletion::textCheckingRequestData):
Allow to retrieve 'TextCheckingRequestData' object.

(WebKit::TextCheckerCompletion::didFinishCheckingText):
(WebKit::TextCheckerCompletion::didCancelCheckingText):
Notify the 'WebPageProxy' object that the given request has been
handled or canceled.

  • UIProcess/TextCheckerCompletion.h: Added.

Introduce a new class for WK2 to retrieve the request data and
call didFinishCheckingText/didCancelCheckingText.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::requestCheckingOfString):
Create 'TextCheckerCompletion' object and pass it
to the 'TextChecker::requestCheckingOfString' method.

(WebKit::WebPageProxy::didFinishCheckingText):
(WebKit::WebPageProxy::didCancelCheckingText):
Send the messages to WebProcess that the given request has been
handled or canceled.

  • UIProcess/WebPageProxy.h:

(WebPageProxy):
Add public declarations for 'didFinishCheckingText', 'didCancelCheckingText'.
Add private declarations for 'requestCheckingOfString'.
Move the 'spellDocumentTag()' method to to the public section to be
accessible from 'TextCheckerCompletion' class.

  • UIProcess/WebPageProxy.messages.in:

A new entry for 'RequestCheckingOfString'.

  • UIProcess/efl/TextCheckerEfl.cpp:

(WebKit::TextChecker::requestCheckingOfString):
(WebKit):

  • UIProcess/gtk/TextCheckerGtk.cpp:

(WebKit::TextChecker::requestCheckingOfString):
(WebKit):

  • UIProcess/mac/TextCheckerMac.mm:

(WebKit::TextChecker::requestCheckingOfString):
(WebKit):

  • UIProcess/qt/TextCheckerQt.cpp:

(WebKit::TextChecker::requestCheckingOfString):
(WebKit):
Add dummy implementations for 'requestCheckingOfString'.

  • WebKit2.xcodeproj/project.pbxproj:

Add 'TextCheckerCompletion.{h/cpp} to Mac build.

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::generateTextCheckingRequestID):
Helper function to generate the unique identifier for the abstract
'TextCheckingRequest' object.

(WebKit::WebEditorClient::requestCheckingOfString):
Associate 'TextCheckingRequest' with the unique identifier and add them
to the map object.
Get the request data and send it to the UIProcess.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::addTextCheckingRequest):
Add the identifier and the request to the map object.

(WebKit::WebPage::didFinishCheckingText):
(WebKit::WebPage::didCancelCheckingText):
Call didSucceed/didCancel on the 'TextCheckingRequest' to notify the WebCore
about spellcheking results.
Remove the request from the map object.

  • WebProcess/WebPage/WebPage.h:

Add declarations for 'addTextCheckingRequest', 'didFinishCheckingText' and
'didCancelCheckingText.'

  • WebProcess/WebPage/WebPage.messages.in:

Add a new entry for DidFinishCheckingText, DidCancelCheckingText.

3:36 AM Changeset in webkit [144435] by vsevik@chromium.org
  • 4 edits in trunk/LayoutTests

Flaky test: http/tests/inspector/resource-tree/resource-request-content-while-loading.html
https://bugs.webkit.org/show_bug.cgi?id=111123

Reviewed by Alexander Pavlov.

  • TestExpectations:
  • http/tests/inspector/resource-tree/resource-request-content-while-loading.html:
  • platform/chromium/TestExpectations:
2:33 AM Changeset in webkit [144434] by apavlov@chromium.org
  • 18 edits
    5 adds in trunk

Web Inspector: Selector's raw start position in its line is considered to be 0 when computing UILocation
https://bugs.webkit.org/show_bug.cgi?id=110732

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Test: inspector/styles/selector-line.html

  • inspector/ContentSearchUtils.cpp:

(WebCore::ContentSearchUtils::sizetExtractor): Utility for binary search.
(WebCore::ContentSearchUtils::textPositionFromOffset): Converts absolute raw text offset into line:column.
(WebCore::ContentSearchUtils::getRegularExpressionMatchesByLines): Refactor.
(WebCore::ContentSearchUtils::lineEndings): Factored out of getRegularExpressionMatchesByLines.
(WebCore::ContentSearchUtils::buildObjectForSearchMatch): Drive-by: pass String by reference.

  • inspector/ContentSearchUtils.h:
  • inspector/Inspector.json: Use line:column for SourceRange boundaries rather than raw offsets.
  • inspector/InspectorStyleSheet.cpp:

(ParsedStyleSheet::text): ASSERT(m_hasText).
(WebCore::InspectorStyle::buildObjectForStyle): Supply the lineEndings argument.
(WebCore::buildSourceRangeObject): Follow the protocol change.
(WebCore::InspectorStyle::setPropertyText): Refactor.
(WebCore::InspectorStyle::toggleProperty): Ditto.
(WebCore::InspectorStyle::styleText): Ditto.
(WebCore::InspectorStyle::populateAllProperties): Ditto.
(WebCore::InspectorStyle::styleWithProperties): Convert relative property range offsets into absolute ones.
(WebCore::InspectorStyle::extractSourceData): Factored out.
(WebCore::InspectorStyle::newLineAndWhitespaceDelimiters): Supply the lineEndings argument.
(WebCore::InspectorStyleSheet::buildObjectForSelectorList): Ditto.
(WebCore::InspectorStyleSheet::lineEndings): Compute line endings for ordinary stylesheets.
(WebCore::InspectorStyleSheetForInlineStyle::lineEndings): Ditto for bogus inline style stylesheets.

  • inspector/InspectorStyleSheet.h:
  • inspector/front-end/AuditRules.js: Removed the byte counting for unused CSS.
  • inspector/front-end/CSSStyleModel.js:

(WebInspector.CSSRule): Set selector rawLocation based on the selectorList range or sourceLine.
(WebInspector.CSSRule.prototype._setRawLocation): Added.

  • inspector/front-end/SASSSourceMapping.js:

(WebInspector.SASSSourceMapping.prototype._bindUISourceCode): Fix call order when binding scss sourcecodes.

LayoutTests:

Changed tests have been rebaselined to follow the new source range structure.

  • http/tests/inspector/elements-test.js:

(initialize_ElementTest.InspectorTest.rangeText): Fix source range dumping format.

  • inspector/audits/audits-panel-functional-expected.txt:
  • inspector/audits/audits-panel-noimages-functional-expected.txt:
  • inspector/styles/get-set-stylesheet-text-expected.txt:
  • inspector/styles/parse-stylesheet-errors-expected.txt:
  • inspector/styles/resources/selector-line.css: Added.
  • inspector/styles/resources/selector-line.css.map: Added.
  • inspector/styles/resources/selector-line.scss: Added.
  • inspector/styles/selector-line-expected.txt: Added.
  • inspector/styles/selector-line.html: Added.
  • inspector/styles/styles-new-API-expected.txt:
  • inspector/styles/styles-source-offsets-expected.txt:
  • inspector/styles/styles-source-offsets.html:
2:19 AM Changeset in webkit [144433] by jochen@chromium.org
  • 2 edits in trunk/Tools

[chromium] put WebTestProxy::scheduleComposite back in place
https://bugs.webkit.org/show_bug.cgi?id=111146

Reviewed by Nico Weber.

The call was removed in http://trac.webkit.org/changeset/144398 because
DRT doesn't need it. However, content shell depends on this call.

  • DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:

(WebTestRunner::WebTestProxy::scheduleComposite):

2:13 AM Changeset in webkit [144432] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Get rid of two silly static null Strings
https://bugs.webkit.org/show_bug.cgi?id=111151

Reviewed by Eric Seidel.

We have a global null String through nullAtom, there is no need
for local static null strings.

  • page/Page.cpp:

(WebCore::Page::groupName):

  • rendering/RenderListItem.cpp:

(WebCore::RenderListItem::markerText):

2:03 AM Changeset in webkit [144431] by mrowe@apple.com
  • 2 edits in trunk/Source/WebCore

Build fix.

  • platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.h: Add a missing #include.
1:45 AM Changeset in webkit [144430] by mkwst@chromium.org
  • 5 edits
    1 add in trunk/LayoutTests

[Mac] [WK1] http/tests/xmlhttprequest/navigation-should-abort.html fails
https://bugs.webkit.org/show_bug.cgi?id=111052

Reviewed by Alexey Proskuryakov.

Currently, this test is failing to output the textual content of the
'data:' URL to which the test navigates. Replacing this 'data:' URL
with a "real" HTML file ensures that Mac WK1 behaves the same way as
the other ports for this test.

This doesn't really address the issue raised: navigation to a 'data:'
URL should behave in the same way as a "real" URL; filed
http://wkbug.com/111152 to track that issue.

  • http/tests/xmlhttprequest/resources/navigation-target.html: Added.

Add an actual file to which we can navigate.

  • http/tests/xmlhttprequest/navigation-should-abort-expected.txt:
  • http/tests/xmlhttprequest/navigation-should-abort.html:

Navigate to the new HTML file during the test rather than an inlined
data: URL.

  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:

Remove the expectations set in r144277.

1:44 AM Changeset in webkit [144429] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk-wk1/TestExpectations: Removing expectation for the fast/canvas/canvas-currentPath-crash.html test.
  • platform/gtk/media/video-playing-and-pause-expected.txt: Rebaselining.
1:37 AM Changeset in webkit [144428] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: fix code-mirror experiment to work in debug mode
https://bugs.webkit.org/show_bug.cgi?id=111064

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-03-01
Reviewed by Pavel Feldman.

No new tests: no change in behaviour.

Improve importScript function to try load a script from the root
directory iff its loading from the given path failed.

  • inspector/front-end/utilities.js:
1:18 AM Changeset in webkit [144427] by aandrey@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [Canvas] capture a WebGL extension by it's name in lower case
https://bugs.webkit.org/show_bug.cgi?id=110745

Reviewed by Pavel Feldman.

WebGL's getExtension accepts a name that is tested against an ASCII case-insensitive match.
Just force lower case for extension names.

  • inspector/InjectedScriptCanvasModuleSource.js:

(.):

1:07 AM Changeset in webkit [144426] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

Fix definition of DatePickerClient::setValue()
https://bugs.webkit.org/show_bug.cgi?id=110336

Patch by Alberto Garcia <albgarcia@rim.com> on 2013-03-01
Reviewed by Carlos Garcia Campos.

The definition of DatePickerClient::setValue() introduced in
r142987 does not match the prototype.

  • WebCoreSupport/DatePickerClient.cpp:

(WebCore::DatePickerClient::setValue):

12:47 AM Changeset in webkit [144425] by mkwst@chromium.org
  • 2 edits in trunk/Source/WebCore

XSSAuditor should use threadSafeMatch when relevant.
https://bugs.webkit.org/show_bug.cgi?id=111099

Reviewed by Adam Barth.

Given the work on breaking parsing out into a background thread, we
should compare QualifiedNames in a thread-safe manner. Rather than
casting the result of QualifiedName::localName to a String, we can
call out to threadSafeMatch to do the comparison.

This patch leaves one use of equalIgnoringNullity in
XSSAuditor::findAttributeWithName. That usage seems safe, since we're
creating a new string against which to compare.

  • html/parser/XSSAuditor.cpp:

(WebCore::hasName):

Replace call to equalIgnoringNullity(Vector<UChar...>, String)
with threadSafeMatch(String, QualifiedName).

12:23 AM Changeset in webkit [144424] by jochen@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

REGRESSION(r144422): Broke compilation on chromium-mac
https://bugs.webkit.org/show_bug.cgi?id=111150

Unreviewed build fix.

  • src/WebFrameImpl.h:

(WebCore):

Feb 28, 2013:

11:48 PM Changeset in webkit [144423] by keishi@webkit.org
  • 2 edits in trunk/Source/WebCore

Add calendar table view for the new calendar picker
https://bugs.webkit.org/show_bug.cgi?id=110970

Reviewed by Kent Tamura.

The calendar table that will be used in the new calendar picker (Bug 109439).

No new tests. Code is not used yet.

  • Resources/pagepopups/calendarPicker.js:

(DayCell): Cell which represents one day in the calendar.
(DayCell.recycleOrCreate):
(DayCell.prototype._recycleBin):
(DayCell.prototype.throwAway):
(DayCell.prototype.setHighlighted): Sets the highlighted class on the element.
(DayCell.prototype.setDisabled): Sets the disabled class on the element.
(DayCell.prototype.setIsInCurrentMonth): Sets the current-month class on the element.
(DayCell.prototype.setIsToday): Sets the today class on the element.
(DayCell.prototype.reset): Resets the day cell to be reused.
(WeekNumberCell): Cell used for the week number column.
(WeekNumberCell.prototype._recycleBin):
(WeekNumberCell.recycleOrCreate):
(WeekNumberCell.prototype.reset):
(WeekNumberCell.prototype.throwAway):
(WeekNumberCell.prototype.setHighlighted): Sets the highlighted class on the element.
(WeekNumberCell.prototype.setDisabled): Sets the disabled class on the element.
(CalendarTableHeaderView): Header for the calendar table. Contains the column labels.
(CalendarRowCell): Row containing day cells and maybe a week number cell.
(CalendarRowCell.prototype._recycleBin):
(CalendarRowCell.prototype.reset):
(CalendarRowCell.prototype.throwAway):
(CalendarTableView): A list view showing a grid of days.
(CalendarTableView.prototype.rowAtScrollOffset): Returns the row number currently at the scroll offset.
(CalendarTableView.prototype.scrollOffsetForRow): Returns the current scroll offset for the given row.
(CalendarTableView.prototype.onClick): If the click is on a DayCell or WeekNumberCell, select the appropriate date range.
(CalendarTableView.prototype.onMouseOver): If the click is on a DayCell or WeekNumberCell, highlight the appropriate date range.
(CalendarTableView.prototype.onMouseOut):
(CalendarTableView.prototype.prepareNewCell): Prepares a new row cell by recycling or creating a new one.
(CalendarTableView.prototype.height): Returns the height of the view in pixels.
(CalendarTableView.prototype.setHeight): Sets the height of the view in pixels.
(CalendarTableView.prototype.scrollToMonth): Scrolls to reveal the given month.
(CalendarTableView.prototype.dayAtColumnAndRow): Day at a given column and row. Column number doesn't count week number column.
(CalendarTableView.prototype.columnAndRowForDay): Column and row for the given day.
(CalendarTableView.prototype.updateCells): Update the position and appearance of the cell.s
(CalendarTableView.prototype.prepareNewDayCell): Prepares a new day cell. The cell is registered to this._dayCells.
(CalendarTableView.prototype.prepareNewWeekNumberCell): Prepares a new week number cell. The cell is registered to this._weekNumberCells.
(CalendarTableView.prototype.throwAwayDayCell): The cell is unregistered from this._dayCells.
(CalendarTableView.prototype.throwAwayWeekNumberCell): The cell is unregistered from this._weekNumberCells.

11:26 PM Changeset in webkit [144422] by ap@apple.com
  • 208 edits
    5 copies
    2 adds in trunk/Source

Reduce amount of rebuilding when touching networking headers
https://bugs.webkit.org/show_bug.cgi?id=111035

Reviewed by Eric Seidel.

Source/WebCore:

This uses a number of common unsurprising techniques. One interesting observation
is that including CachedResource related headers is very expensive. We can usually
get away with their Client counterparts, and with CachedResourceHandle.

  • page/Frame.cpp:
  • page/Frame.h:

Don't include FrameLoader, greatly reducing include graph for most non-loader files.
This required making Frame::init() non-inline - I'm not sure why it ever was.

  • loader/FrameLoader.cpp:
  • loader/FrameLoader.h:

Even though FrameLoader is logically on loading side of WebCore, it's included in
too many places. Not including PolicyChecker.h and ResourceHandle.h was among the
largest wins. As a future improvement, we should probably convert other members
to OwnPtrs.

  • css/CSSCrossfadeValue.h: Initializing CachedResourceHandle with 0 requires a

definition of a class it holds, but default construction does not.

  • loader/CrossOriginAccessControl.h: This file among others only needs ResourceHandleTypes.h,

not ResourceHandle.h. This header is semi-recent, so not all include sites were updated.

  • loader/cache/CachedFont.h:
  • loader/cache/CachedFontClient.h: Added.
  • loader/cache/CachedRawResource.h:
  • loader/cache/CachedRawResourceClient.h: Added.
  • loader/cache/CachedSVGDocument.h:
  • loader/cache/CachedSVGDocumentClient.h: Added.

These types were defining client types in the same headers, making it impossible
to avoid including networking headers through CachedResource. Moved clients into
separate files.

  • plugins/PluginStream.h:
  • plugins/PluginStreamClient.h: Added.

Similar situation here.

  • loader/cache/CachedResourceHandle.cpp:
  • loader/cache/CachedResourceHandle.h:

Moved functions that need to know about CachedResource to .cpp file. This is another
huge win. Added a destructor, so that CachedResource woudn't be needed in all files
that include CachedResourceHandle.

  • loader/cache/CachedSVGDocumentReference.cpp: Added.
  • loader/cache/CachedSVGDocumentReference.h:

Moved constructor and virtual function implementations to a .cpp file - they need
not inlining, and this lets us avoid including CachedSVGDocument.h in the header.

  • platform/graphics/filters/FilterOperation.cpp:
  • platform/graphics/filters/FilterOperation.h:

Avoid including CachedSVGDocumentReference.h. This is not such a big win now that
CachedSVGDocumentReference.h itself is smaller, but FilterOperation is so clearly
rendering code that it seems best to cut any ties with resources and loading.
Added a virtual destrutor in .cpp file, because inline destructors in polymorphic
classes are generally harmful (due to code bloat).

  • plugins/PluginRequest.h: Added.
  • plugins/PluginView.h:

Moved PluginRequest into a separate file, it was out of place in a view hierarchy
class file.

  • rendering/RenderImageResource.cpp:
  • rendering/RenderImageResource.h:

Moved definitions of virtual functions to a .cpp file. Thre is no win from having
them inline, and now we don't need CachedImage.h in the header.

  • rendering/style/StyleCustomFilterProgram.cpp: Added.
  • rendering/style/StyleCustomFilterProgram.h:

Ditto.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/mediastream/RTCPeerConnection.cpp:
  • Modules/notifications/Notification.cpp:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/ScriptControllerBase.cpp:
  • bindings/js/JSNodeCustom.cpp:
  • bindings/js/ScriptController.cpp:
  • bindings/js/ScriptSourceCode.h:
  • bindings/objc/DOM.mm:
  • bindings/v8/ScriptController.cpp:
  • bindings/v8/V8DOMWindowShell.cpp:
  • bindings/v8/custom/V8DOMWindowCustom.cpp:
  • css/CSSFontFaceSource.h:
  • css/CSSFontSelector.cpp:
  • css/WebKitCSSSVGDocumentValue.cpp:
  • css/WebKitCSSSVGDocumentValue.h:
  • dom/Clipboard.cpp:
  • dom/ContainerNode.cpp:
  • dom/DOMImplementation.cpp:
  • dom/PendingScript.h:
  • dom/ScriptElement.cpp:
  • dom/ScriptElement.h:
  • history/CachedFrame.cpp:
  • html/DOMURL.cpp:
  • html/HTMLAnchorElement.cpp:
  • html/HTMLAppletElement.cpp:
  • html/HTMLElement.cpp:
  • html/HTMLEmbedElement.cpp:
  • html/HTMLFrameSetElement.cpp:
  • html/HTMLHtmlElement.cpp:
  • html/HTMLImageElement.cpp:
  • html/HTMLObjectElement.cpp:
  • html/HTMLPlugInElement.cpp:
  • html/ImageDocument.cpp:
  • html/ImageInputType.cpp:
  • html/MediaDocument.cpp:
  • html/PluginDocument.cpp:
  • html/canvas/WebGLRenderingContext.cpp:
  • html/parser/HTMLConstructionSite.cpp:
  • html/parser/HTMLParserOptions.cpp:
  • html/parser/HTMLScriptRunner.h:
  • html/parser/XSSAuditor.cpp:
  • html/parser/XSSAuditorDelegate.cpp:
  • inspector/InspectorDebuggerAgent.cpp:
  • inspector/InspectorFileSystemAgent.cpp:
  • inspector/InspectorFrontendHost.cpp:
  • inspector/InspectorInstrumentation.h:
  • inspector/InspectorPageAgent.cpp:
  • inspector/NetworkResourcesData.cpp:
  • inspector/NetworkResourcesData.h:
  • loader/CookieJar.cpp:
  • loader/CrossOriginAccessControl.cpp:
  • loader/CrossOriginPreflightResultCache.h:
  • loader/DocumentThreadableLoader.h:
  • loader/ImageLoader.cpp:
  • loader/ImageLoader.h:
  • loader/LinkLoader.h:
  • loader/MainResourceLoader.cpp:
  • loader/MainResourceLoader.h:
  • loader/MixedContentChecker.cpp:
  • loader/PingLoader.cpp:
  • loader/PolicyChecker.h:
  • loader/ProgressTracker.cpp:
  • loader/SubframeLoader.cpp:
  • loader/SubresourceLoader.cpp:
  • loader/TextTrackLoader.cpp:
  • loader/TextTrackLoader.h:
  • loader/ThreadableLoader.h:
  • loader/appcache/ApplicationCacheGroup.cpp:
  • loader/appcache/ApplicationCacheGroup.h:
  • loader/appcache/ApplicationCacheHost.cpp:
  • loader/archive/cf/LegacyWebArchive.cpp:
  • loader/cache/CachedFont.cpp:
  • loader/cache/CachedImage.cpp:
  • loader/cache/CachedRawResource.cpp:
  • loader/cache/CachedResource.cpp:
  • loader/cache/CachedStyleSheetClient.h:
  • loader/cache/MemoryCache.cpp:
  • loader/cache/MemoryCache.h:
  • loader/chromium/CachedRawResourceChromium.cpp:
  • loader/icon/IconController.cpp:
  • loader/icon/IconLoader.h:
  • loader/mac/ResourceLoaderMac.mm:
  • page/DOMWindowExtension.cpp:
  • page/DragController.cpp:
  • page/PerformanceNavigation.cpp:
  • page/PerformanceTiming.cpp:
  • page/PointerLockController.cpp:
  • page/Settings.cpp:
  • page/animation/CSSPropertyAnimation.cpp:
  • platform/chromium/PasteboardChromium.cpp:
  • platform/efl/ErrorsEfl.cpp:
  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
  • platform/gtk/ErrorsGtk.cpp:
  • platform/gtk/PasteboardGtk.cpp:
  • platform/gtk/PasteboardHelper.h:
  • platform/mac/ClipboardMac.h:
  • platform/mac/ClipboardMac.mm:
  • platform/mac/HTMLConverter.mm:
  • platform/mac/PasteboardMac.mm:
  • platform/network/AuthenticationChallengeBase.cpp:
  • platform/network/cf/CookieJarCFNet.cpp:
  • platform/network/cf/ResourceRequestCFNet.cpp:
  • platform/network/mac/CookieStorageMac.mm:
  • platform/qt/PasteboardQt.cpp:
  • plugins/DOMMimeType.cpp:
  • plugins/PluginView.cpp:
  • rendering/HitTestResult.cpp:
  • rendering/InlineFlowBox.cpp:
  • rendering/RenderBox.cpp:
  • rendering/RenderEmbeddedObject.cpp:
  • rendering/RenderImage.cpp:
  • rendering/RenderImageResourceStyleImage.cpp:
  • rendering/RenderLayer.cpp:
  • rendering/RenderLayerBacking.cpp:
  • rendering/RenderLayerFilterInfo.h:
  • rendering/RenderListItem.cpp:
  • rendering/RenderListMarker.cpp:
  • rendering/RenderSnapshottedPlugIn.cpp:
  • rendering/RenderTableCol.cpp:
  • rendering/RenderTableRow.cpp:
  • rendering/RenderTableSection.cpp:
  • rendering/style/StyleCachedShader.h:
  • svg/SVGFEImageElement.h:
  • svg/SVGFontFaceUriElement.h:
  • svg/SVGImageLoader.cpp:
  • svg/SVGUseElement.cpp:
  • svg/SVGUseElement.h:
  • svg/graphics/SVGImageCache.cpp:
  • testing/MockPagePopupDriver.cpp:
  • xml/XSLStyleSheet.h:
  • xml/XSLTProcessorLibxslt.cpp:
  • xml/parser/XMLDocumentParser.cpp:
  • xml/parser/XMLDocumentParser.h:
  • xml/parser/XMLDocumentParserLibxml2.cpp:

Many self-evident changes - removing unnecessary header includes, adding smaller
more local ones that are now necessary.

Source/WebKit/chromium:

Adding includes that are now necessary because WebCore headers don't have them
any more.

  • src/ApplicationCacheHost.cpp:
  • src/AssociatedURLLoader.cpp:
  • src/EditorClientImpl.cpp:
  • src/SharedWorkerRepository.cpp:
  • src/WebDataSourceImpl.cpp:
  • src/WebFrameImpl.h:
  • src/WebNode.cpp:
  • src/WebSharedWorkerImpl.cpp:
  • tests/FrameLoaderClientImplTest.cpp:

Source/WebKit/efl:

Adding includes that are now necessary because WebCore headers don't have them
any more.

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
  • ewk/ewk_frame.cpp:

Source/WebKit/gtk:

Adding includes that are now necessary because WebCore headers don't have them
any more.

  • webkit/webkitwebpolicydecision.cpp:

Source/WebKit/mac:

Adding includes that are now necessary because WebCore headers don't have them
any more.

  • DOM/WebDOMOperations.mm:
  • Misc/WebNSPasteboardExtras.mm:
  • WebCoreSupport/WebFrameNetworkingContext.mm:
  • WebView/WebRenderLayer.mm:
  • WebView/WebRenderNode.mm:

Source/WebKit/qt:

Adding includes that are now necessary because WebCore headers don't have them
any more.

  • WebCoreSupport/NotificationPresenterClientQt.cpp:
  • WebCoreSupport/QWebPageAdapter.cpp:

Source/WebKit2:

Adding includes that are now necessary because WebCore headers don't have them
any more.

  • NetworkProcess/HostRecord.h:
  • NetworkProcess/NetworkResourceLoadScheduler.h:
  • NetworkProcess/NetworkResourceLoader.h:
  • Shared/WebRenderLayer.cpp:
  • Shared/WebRenderObject.cpp:
  • WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
  • WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:
  • WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
  • WebProcess/Plugins/PDF/PDFPlugin.mm:
  • WebProcess/Plugins/PluginView.cpp:
  • WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
  • WebProcess/WebCoreSupport/WebEditorClient.cpp:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
  • WebProcess/WebPage/mac/WebPageMac.mm:
  • WebProcess/WebProcess.cpp:
  • WebProcess/soup/WebProcessSoup.cpp:
10:34 PM Changeset in webkit [144421] by rniwa@webkit.org
  • 3 edits in trunk/Tools

Merge PerfTestRunner._run_single_test into PerfTestRunner._run_tests_set
https://bugs.webkit.org/show_bug.cgi?id=111142

Reviewed by Adam Barth.

Merged _run_single_test into _run_tests_set. The code looks much cleaner now.

Also removed _print_status since it's never used anywhere.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner.run):
(PerfTestsRunner._run_tests_set):

  • Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:

(MainTest.run_test):
(MainTest.test_run_test_set):
(MainTest.test_run_test_set_kills_drt_per_run):
(MainTest.test_run_test_set_for_parser_tests):

10:28 PM Changeset in webkit [144420] by toyoshim@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium gardening
https://bugs.webkit.org/show_bug.cgi?id=111141

  • platform/chromium/TestExpectations:
10:24 PM Changeset in webkit [144419] by commit-queue@webkit.org
  • 11 edits in trunk/Source/WebCore

[V8] Added V8CustomIndexedGetter to IDLs that correspond to existing custom indexedPropertyGetter.
https://bugs.webkit.org/show_bug.cgi?id=110852

Patch by Koji Hara <kojih@chromium.org> on 2013-02-28
Reviewed by Kentaro Hara.

Add V8CustomIndexedGetter attribute that indicates the interface have custom implementation of a getter of indexed properties.
(Also added to the wiki)
https://trac.webkit.org/wiki/WebKitIDL#V8CustomIndexedGetter
Add V8CustomIndexedGetter to IDLs that correspond to existing custom indexedPropertyGetter.
We want to clean up CodeGeneratorV8.pm.
The problem is that all implementations of indexed properties and named properties are currently delegated to custom bindings.
We want to auto-generate as much code as possible.
As a starting point, this commit assures a interface has [V8CustomIndexedGetter] ==> there's custom implementation of indexed getter.

No test. Simple refactoring.

  • bindings/scripts/IDLAttributes.txt: Add V8CustomIndexedGetter attribute.
  • dom/NamedNodeMap.idl: Add V8CustomIndexedGetter attribute.
  • html/HTMLAppletElement.idl: Add V8CustomIndexedGetter attribute.
  • html/HTMLEmbedElement.idl: Add V8CustomIndexedGetter attribute.
  • html/HTMLFormElement.idl: Add V8CustomIndexedGetter attribute.
  • html/HTMLObjectElement.idl: Add V8CustomIndexedGetter attribute.
  • html/HTMLOptionsCollection.idl: Add V8CustomIndexedGetter attribute.
  • html/HTMLSelectElement.idl: Add V8CustomIndexedGetter attribute.
  • page/DOMWindow.idl: Add V8CustomIndexedGetter attribute.
  • storage/Storage.idl: Add V8CustomIndexedGetter attribute.
10:23 PM Changeset in webkit [144418] by eustas@chromium.org
  • 2 edits in branches/chromium/1410/Source/WebCore

Merge 144161

Web Inspector: timeline stops working on certain sites
https://bugs.webkit.org/show_bug.cgi?id=110955

Reviewed by Alexander Pavlov.

Analysis: "timerId" value is number,
so it is not wrapped to node as expected.

Solution: wrap values of all types except Node.

  • inspector/front-end/TimelinePresentationModel.js:

Wrap nonstring values to text nodes.

TBR=eustas@chromium.org
Review URL: https://codereview.chromium.org/12389044

10:07 PM Changeset in webkit [144417] by xingnan.wang@intel.com
  • 3 edits in trunk/Source/WebCore

Heap-use-after-free in WebCore::AudioNodeInput::updateInternalBus
https://bugs.webkit.org/show_bug.cgi?id=108542

Replace the wrong AudioNodeOutput::bus() usage out of safe peroid,
which causes this issue.

Reviewed by Chris Rogers.

  • Modules/webaudio/AudioNodeInput.cpp:

(WebCore::AudioNodeInput::numberOfChannels):

  • Modules/webaudio/AudioNodeOutput.cpp:

(WebCore::AudioNodeOutput::bus):

9:59 PM Changeset in webkit [144416] by beidson@apple.com
  • 11 edits in branches/safari-536.29-branch

Merge r141486

2013-01-30 Brian Weinstein <bweinstein@apple.com>

Add a call to the page UI client to determine if a plug-in should load
https://bugs.webkit.org/show_bug.cgi?id=108407
<rdar://problem/13066332>

Source/WebKit2:

Reviewed by Anders Carlsson.

This patch adds a client call to the WKPageUIClient to be called to determine
whether or not a plug-in should load.

  • UIProcess/API/C/WKPage.h: Add shouldLoadPlugin.
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::getPluginPath): Moved from WebProcessProxy, and added a call to

m_uiClient.shouldInstantiatePlugin.

  • UIProcess/WebPageProxy.h:
  • UIProcss/WebPageProxy.messages.in: Moved GetPluginPath from WebProcessProxy to WebPageProxy.
  • UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::getPluginPath): Moved to WebPageProxy.
  • UIProcess/WebProcessProxy.h:
  • UIProcess/WebUIClient.cpp: (WebKit::WebUIClient::shouldInstantiatePlugin): Return that we should load the plug-in if

the client function isn't defined, and call the function if it is.

  • UIProcess/WebUIClient.h:
  • UIProcess/mac/WebInspectorProxyMac.mm: (WebKit::WebInspectorProxy::platformCreateInspectorPage): Add an entry for the new

client function.

  • WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::createPlugin): Send the message to the WebPageProxy, not the WebProcessProxy. (WebKit::WebPage::canPluginHandleResponse): Made a member function, so it can call sendSync, and

send the message to the WebPageProxy, not the WebProcessProxy.

  • WebProcess/WebPage/WebPage.h:

Tools:

Add entries for the new function in the necessary structs.

Reviewed by Anders Carlsson.

  • MiniBrowser/mac/WK2BrowserWindowController.m: (-[WK2BrowserWindowController awakeFromNib]):
  • WebKitTestRunner/TestController.cpp: (WTR::TestController::createOtherPage): (WTR::TestController::createWebViewWithOptions):
9:46 PM Changeset in webkit [144415] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Disable window occlusion detection for WebKitTestRunner Web View on Mac
https://bugs.webkit.org/show_bug.cgi?id=111116

Patch by Kiran Muppala <cmuppala@apple.com> on 2013-02-28
Reviewed by Simon Fraser.

Window occlusion notifications were causing WebKitTestRunner's Web View
to be detected as occluded and causing a few JavaScript timer layout
tests to fail. https://bugs.webkit.org/show_bug.cgi?id=111025, fixed this
by initializing the page visibility to "visible" after creating the view.
But a better solution is to disable window occlusion detection, so that
not only the page but also the view is treated as visible.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createWebViewWithOptions): Remove call to
setVisibilityState, since it is no longer necessary.

  • WebKitTestRunner/mac/PlatformWebViewMac.mm:

(WTR::PlatformWebView::PlatformWebView): Disable window occlusion
detection for the created WKView.

9:41 PM Changeset in webkit [144414] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Gardening for some inspector tests
https://bugs.webkit.org/show_bug.cgi?id=111131

Unreviewed gardening.

Patch by Seokju Kwon <Seokju Kwon> on 2013-02-28

  • platform/efl-wk1/TestExpectations:
9:03 PM Changeset in webkit [144413] by commit-queue@webkit.org
  • 5 edits in trunk

Unreviewed, rolling out r144370.
http://trac.webkit.org/changeset/144370
https://bugs.webkit.org/show_bug.cgi?id=111136

Caused 21 assertion failure at DocumentLoader.cpp(436)
(Requested by toyoshim on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-28

Source/WebCore:

  • dom/Document.cpp:

(WebCore::Document::decrementActiveParserCount):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::isLoading):
(WebCore::DocumentLoader::checkLoadComplete):

LayoutTests:

  • platform/mac/TestExpectations:
8:40 PM Changeset in webkit [144412] by toyoshim@chromium.org
  • 3 edits in trunk/LayoutTests

Unreviewed, chromium gardening; update expected image for Snow Leopard

  • platform/chromium-mac-snowleopard/svg/custom/foreign-object-skew-expected.png:
  • platform/chromium/TestExpectations:
8:39 PM Changeset in webkit [144411] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[WK2] Refactoring : Fix indentation and braces in WebInspectorClient.h|cpp
https://bugs.webkit.org/show_bug.cgi?id=109925

Patch by Seokju Kwon <Seokju Kwon> on 2013-02-28
Reviewed by Benjamin Poulain.

The contents of an outermost namespace block should not be indented.
And One-line control clauses should not use braces.

  • WebProcess/WebCoreSupport/WebInspectorClient.cpp:

(WebKit::WebInspectorClient::closeInspectorFrontend):

  • WebProcess/WebCoreSupport/WebInspectorClient.h:

(WebCore):

8:37 PM Changeset in webkit [144410] by li.yin@intel.com
  • 4 edits in trunk

[chromium] Events can't be triggered on MediaStreamTrack
https://bugs.webkit.org/show_bug.cgi?id=110930

Reviewed by Kentaro Hara.

Source/WebCore:

Spec: http://dev.w3.org/2011/webrtc/editor/getusermedia.html#mediastreamtrack
ended event handler should be triggered, when stop() is called.

No new tests because the test fast/mediastream/MediaStreamTrack.html
had covered it already.

  • platform/mediastream/chromium/MediaStreamCenterChromium.cpp:

(WebCore::MediaStreamCenterChromium::didStopLocalMediaStream):

Tools:

Related code was moved to MediaStreamCenterChromium::didStopLocalMediaStream

  • DumpRenderTree/chromium/TestRunner/src/MockWebMediaStreamCenter.cpp:

(WebTestRunner::MockWebMediaStreamCenter::didStopLocalMediaStream):

8:18 PM Changeset in webkit [144409] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

Add a pre-bootstrap message for NetworkProcess XPC service
https://bugs.webkit.org/show_bug.cgi?id=111127

Patch by Kiran Muppala <cmuppala@apple.com> on 2013-02-28
Reviewed by Sam Weinig.

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:

(WebKit::XPCServiceEventHandler): Hold on to the pre-bootstrap message.

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:

(WebKit::XPCServiceEventHandler): Ditto.

  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::connectToService): Send a pre-bootstrap message for NetworkProcess
XPC service.

7:35 PM Changeset in webkit [144408] by commit-queue@webkit.org
  • 5 edits
    3 adds in trunk/Source

WebKit API for enabling DOM logging for certain worlds
https://bugs.webkit.org/show_bug.cgi?id=110779

Source/WebCore:

Patch by Ankur Taly <ataly@google.com> on 2013-02-28
Reviewed by Adam Barth.

Adds additional static methods to DOMWrapperWorld for managing the
mapping between worldIDs and logger objects (where DOM logging messages
are sent), and also defines a class (V8DOMActivityLogger) for logger
objects.

  • WebCore.gypi:
  • bindings/v8/DOMWrapperWorld.cpp:

(WebCore):
(WebCore::domActivityLoggers):
(WebCore::DOMWrapperWorld::setDOMActivityLogger):
(WebCore::DOMWrapperWorld::getDOMActivityLogger):

  • bindings/v8/DOMWrapperWorld.h:

(DOMWrapperWorld):

  • bindings/v8/V8DOMActivityLogger.h: Added.

(WebCore):
(V8DOMActivityLogger):
(WebCore::V8DOMActivityLogger::~V8DOMActivityLogger):
(WebCore::V8DOMActivityLogger::log):

Source/WebKit/chromium:

Patch by Ankur Taly <ataly@google.com> on 2013-02-28
Reviewed by Adam Barth.

This patch adds initial plumbing for enabling logging of DOM
activity by JavaScript code running withing v8, on a
per-world basis. In particular it adds methods to the chromium
WebKit API for associating a logger object with world ids for which
DOM activity logging is enabled.

  • WebKit.gyp:
  • public/WebDOMActivityLogger.h: Added.

(v8):
(WebKit):
(WebDOMActivityLogger):
(WebKit::WebDOMActivityLogger::~WebDOMActivityLogger):
(WebKit::WebDOMActivityLogger::log):

  • src/WebDOMActivityLogger.cpp: Added.

(WebKit):
(DOMActivityLoggerContainer):
(WebKit::DOMActivityLoggerContainer::DOMActivityLoggerContainer):
(WebKit::DOMActivityLoggerContainer::~DOMActivityLoggerContainer):
(WebKit::DOMActivityLoggerContainer::log):
(WebKit::hasDOMActivityLogger):
(WebKit::setDOMActivityLogger):

6:12 PM Changeset in webkit [144407] by abarth@webkit.org
  • 4 edits in trunk/Source/WebCore

The threaded HTML parser shouldn't need to invalidate the speculation buffer on every document.write
https://bugs.webkit.org/show_bug.cgi?id=111130

Reviewed by Eric Seidel.

Previously, the threaded HTML parser always invalidated its speculation
buffer when it received a document.write. That means we performed
poorly on web sites that contained document.write calls early in the
page.

This patch teaches the HTMLDocumentParser that we don't need to discard
the speculation buffer in the common case of starting and ending in the
DataState.

  • html/parser/BackgroundHTMLParser.cpp:

(WebCore::BackgroundHTMLParser::sendTokensToMainThread):

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::checkForSpeculationFailure):
(WebCore::HTMLDocumentParser::didFailSpeculation):

  • html/parser/HTMLDocumentParser.h:

(WebCore):
(ParsedChunk):

6:11 PM Changeset in webkit [144406] by schenney@chromium.org
  • 3 edits in trunk/LayoutTests

[Chromium] Rebaselines for Win decorations-with-text-combine.html

Unreviewed expectations update.

  • platform/chromium-win-xp/fast/text/decorations-with-text-combine-expected.png:
  • platform/chromium-win/fast/text/decorations-with-text-combine-expected.png:
5:58 PM Changeset in webkit [144405] by commit-queue@webkit.org
  • 4 edits
    3 adds in trunk

WebInspector: Switch hide element shortcut in ElementsPanel to use a selector
https://bugs.webkit.org/show_bug.cgi?id=110641

Patch by Eberhard Graether <egraether@google.com> on 2013-02-28
Reviewed by Pavel Feldman.

This change switches the shortcut for adding visibility:hidden to an element's style
to toggling a class name on the element and injecting a style rule into the element's
document instead. This way it is possible to change the visibility of all child
elements as well.

Test: inspector/elements/hide-shortcut.html

Source/WebCore:

  • inspector/front-end/CSSStyleModel.js:
  • inspector/front-end/ElementsTreeOutline.js:

(WebInspector.ElementsTreeOutline.prototype._onkeydown):
(WebInspector.ElementsTreeOutline.prototype.resolvedNode.toggleClassAndInjectStyleRule):
(WebInspector.ElementsTreeOutline.prototype.):
(WebInspector.ElementsTreeOutline.prototype._toggleHideShortcut):

LayoutTests:

  • inspector/elements/hide-shortcut-expected.txt: Added.
  • inspector/elements/hide-shortcut.html: Added.
  • inspector/elements/resources/hide-shortcut-iframe.html: Added.
5:53 PM Changeset in webkit [144404] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebCore

[EFL] Build break with --no-web-audio and --no-video
https://bugs.webkit.org/show_bug.cgi?id=111055

Unreviewed build fix.

  • platform/graphics/gstreamer/GStreamerUtilities.cpp:
5:51 PM Changeset in webkit [144403] by commit-queue@webkit.org
  • 4 edits in trunk

[EFL] Focus problem in inspector/extensions/extensions-panel.html
https://bugs.webkit.org/show_bug.cgi?id=97077

Patch by Seokju Kwon <Seokju Kwon> on 2013-02-28
Reviewed by Laszlo Gombos.

Source/WebKit/efl:

  • WebCoreSupport/InspectorClientEfl.cpp:

(WebCore::InspectorFrontendClientEfl::bringToFront): Set focus on inspectorView.

LayoutTests:

Remove inspector/extensions/extensions-panel.html from TestExpectations.

  • platform/efl-wk1/TestExpectations:
5:50 PM Changeset in webkit [144402] by xingnan.wang@intel.com
  • 2 edits in trunk/Source/WebCore

Implement the memory report on IPP FFTFrame on Web Audio
https://bugs.webkit.org/show_bug.cgi?id=111039

Reviewed by Yury Semikhatsky.

Covered by existing test.

  • platform/audio/FFTFrame.cpp:

(WebCore::FFTFrame::reportMemoryUsage):

5:32 PM Changeset in webkit [144401] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG CFA should not do liveness pruning
https://bugs.webkit.org/show_bug.cgi?id=111119

Reviewed by Mark Hahnenberg.

It adds complexity and probably buys nothing. Moreover, I'm transitioning to having
liveness only available at the bitter end of compilation, so this will stop working
after https://bugs.webkit.org/show_bug.cgi?id=109389 anyway.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::initialize):
(JSC::DFG::AbstractState::mergeStateAtTail):

5:24 PM Changeset in webkit [144400] by leviw@chromium.org
  • 3 edits
    2 adds in trunk

Stale FrameSelection in removed iframe causes crash
https://bugs.webkit.org/show_bug.cgi?id=108696

Reviewed by Ryosuke Niwa.

Source/WebCore:

Catching a specific issue where selectFrameElementInParentIfFullySelected in a nested
iFrame that is removed can leave the outer frame's selection referencing stale nodes.
Instead, in this case, we keep the frame alive long enough to check for this condition
and clear our selection if we hit it.

Test: editing/selection/selection-in-iframe-removed-crash.html

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::setSelection):

LayoutTests:

  • editing/selection/selection-in-iframe-removed-crash-expected.txt: Added.
  • editing/selection/selection-in-iframe-removed-crash.html: Added.
5:01 PM Changeset in webkit [144399] by roger_fong@apple.com
  • 3 edits in trunk/Source/WebCore

Unreviewed. AppleWin VS2010 build fix.

  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
4:50 PM Changeset in webkit [144398] by jamesr@google.com
  • 4 edits in trunk/Tools

[chromium] Use DumpRenderTree-specific interface for DRT's compositor embedding
https://bugs.webkit.org/show_bug.cgi?id=111017

Reviewed by Adam Barth.

This decouples DumpRenderTree from WebLayerTreeViewClient.

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHostDRTLayerTreeViewClient):
(WebViewHostDRTLayerTreeViewClient::WebViewHostDRTLayerTreeViewClient):
(WebViewHostDRTLayerTreeViewClient::~WebViewHostDRTLayerTreeViewClient):
(WebViewHostDRTLayerTreeViewClient::Layout):
(WebViewHostDRTLayerTreeViewClient::ScheduleComposite):
(WebViewHost::initializeLayerTreeView):

  • DumpRenderTree/chromium/WebViewHost.h:

(webkit_support):
(WebViewHost):

4:47 PM Changeset in webkit [144397] by commit-queue@webkit.org
  • 18 edits in trunk/Source

Need API to control page underlay color
https://bugs.webkit.org/show_bug.cgi?id=110918

Patch by Conrad Shultz <Conrad Shultz> on 2013-02-28
Reviewed by Simon Fraser.

Source/WebCore:

  • page/ChromeClient.h:

(ChromeClient):
Declare underlayColor().

  • platform/ScrollbarTheme.h:

(WebCore::ScrollbarTheme::setUpOverhangAreasLayerContents):
Have setUpOverhangAreasLayerContents() take a background color parameter.

  • platform/mac/ScrollbarThemeMac.h:

(ScrollbarThemeMac):
Ditto.

  • platform/mac/ScrollbarThemeMac.mm:

Include ColorMac.h.
(WebCore::ScrollbarThemeMac::setUpOverhangAreasLayerContents):
Use the passed-in background color, if valid, for the overhang area layer.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateOverflowControlsLayers):
Get the underlay color from the chrome client and pass it into setUpOverhangAreasLayerContents().

Source/WebKit2:

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode):
Encode underlayColor.
(WebKit::WebPageCreationParameters::decode):
Decode underlayColor.

  • Shared/WebPageCreationParameters.h:

(WebPageCreationParameters):
Add underlayColor member.

  • UIProcess/API/mac/WKView.mm:

(-[WKView underlayColor]):
Accessor; retrieves the WebCore::Color from the WebPageProxy and converts it to an NSColor.
(-[WKView setUnderlayColor:]):
Mutator; converts the NSColor to a WebCore::Color and passes it to the WebPageProxy.

  • UIProcess/API/mac/WKViewPrivate.h:

Add underlayColor @property.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::setUnderlayColor):
Mutator; dispatches SetUnderlayColor to WebPage.
(WebKit::WebPageProxy::creationParameters):
Set the parameters' underlayColor member appropriately.

  • UIProcess/WebPageProxy.h:

Declare new member functions and variable.
(WebKit::WebPageProxy::underlayColor):
Accessor.

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::underlayColor):
Return the associated WebPage's underlayColor.

  • WebProcess/WebCoreSupport/WebChromeClient.h:

(WebChromeClient):
Declare underlayColor().

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
Apply any underlayColor that was supplied as part of the WebPageCreationParameters.

  • WebProcess/WebPage/WebPage.h:

Declare new member functions and variable.
(WebKit::WebPage::underlayColor):
Accessor.

  • WebProcess/WebPage/WebPage.messages.in:

Add SetUnderlayColor message.

4:46 PM Changeset in webkit [144396] by schenney@chromium.org
  • 3 edits in trunk/LayoutTests

[Chromium] Rebaselines for Mac decorations-with-text-combine.html

Unreviewed expectations update.

  • platform/chromium-mac-lion/fast/text/decorations-with-text-combine-expected.png:
  • platform/chromium-mac/fast/text/decorations-with-text-combine-expected.png:
4:42 PM Changeset in webkit [144395] by Beth Dakin
  • 3 edits in trunk/Source/WebCore

RelevantRepaintedObjects heuristic should ensure there is some coverage in the
bottom half of the relevant view rect
https://bugs.webkit.org/show_bug.cgi?id=111124
-and corresponding-
<rdar://problem/12257164>

Reviewed by Simon Fraser.

We need two Regions now -- one for the top and another for the bottom. Make sure
we have at least half of our desired coverage in both.

  • page/Page.cpp:

(WebCore::Page::resetRelevantPaintedObjectCounter):
(WebCore::Page::addRelevantRepaintedObject):
(WebCore::Page::reportMemoryUsage):

  • page/Page.h:
4:30 PM Changeset in webkit [144394] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Skip storage tests on Windows.

  • platform/win/TestExpectations:
4:29 PM Changeset in webkit [144393] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled Chromium DEPS to r185341. Requested by
"James Robinson" <jamesr@chromium.org> via sheriffbot.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-28

  • DEPS:
4:21 PM Changeset in webkit [144392] by Chris Fleizach
  • 2 edits in trunk/Source/WebCore

WebSpeech: support pitch change
https://bugs.webkit.org/show_bug.cgi?id=107348

Reviewed by Beth Dakin.

Implement a policy for the Mac synthesizer to convert from the utterance's pitch rate
to something sensible for the platform.

  • platform/mac/PlatformSpeechSynthesizerMac.mm:

(-[WebSpeechSynthesisWrapper initWithSpeechSynthesizer:WebCore::]):
(-[WebSpeechSynthesisWrapper convertPitchToNSSpeechValue:]):
(-[WebSpeechSynthesisWrapper updateBasePitchForSynthesizer]):
(-[WebSpeechSynthesisWrapper speakUtterance:WebCore::]):

4:19 PM Changeset in webkit [144391] by ryuan.choi@samsung.com
  • 2 edits in trunk/Tools

Unreviewed, add my secondary email address to the list.

  • Scripts/webkitpy/common/config/committers.py:
4:03 PM Changeset in webkit [144390] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Add the notion of an allowed connection to SessionStorageNamespace
https://bugs.webkit.org/show_bug.cgi?id=111122

Reviewed by Sam Weinig.

Group together each session storage namespace with an allowed connection.
This will help ensure that rouge web processes will not be able to access session storage
from pages in other processes.

  • UIProcess/Storage/StorageManager.cpp:

(StorageManager::SessionStorageNamespace):
(WebKit::StorageManager::SessionStorageNamespace::allowedConnection):
(WebKit::StorageManager::SessionStorageNamespace::create):
(WebKit::StorageManager::SessionStorageNamespace::SessionStorageNamespace):
(WebKit::StorageManager::SessionStorageNamespace::setAllowedConnection):
Add an m_allowedConnection member variable, as well as setters and getters.

(WebKit::StorageManager::createSessionStorageNamespace):
Take an optional allowed connection. (It can be null if the process has not finished launching).

(WebKit::StorageManager::setAllowedSessionStorageNamespaceConnection):
New function to set the allowed connection for a session storage namespace.

(WebKit::StorageManager::createStorageArea):
Add another FIXME.

(WebKit::StorageManager::createSessionStorageNamespaceInternal):
Pass the connection to the SessionStorageNamespace constructor.

(WebKit::StorageManager::setAllowedSessionStorageNamespaceConnectionInternal):
Set the allowed connection.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
Pass the connection to createSessionStorageNamespace.

(WebKit::WebPageProxy::connectionWillOpen):
Call setAllowedSessionStorageNamespaceConnection.

(WebKit::WebPageProxy::connectionWillClose):
Call setAllowedSessionStorageNamespaceConnection with a null connection.

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::connectionWillOpen):
Call connectionWillOpen on all pages.

(WebKit::WebProcessProxy::connectionWillClose):
Call connectionWillClose on all pages.

3:59 PM Changeset in webkit [144389] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

Add private API to disable WKView window occlusion detection
https://bugs.webkit.org/show_bug.cgi?id=111107

Patch by Kiran Muppala <cmuppala@apple.com> on 2013-02-28
Reviewed by Simon Fraser.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _enableWindowOcclusionNotifications]): Check if occlusion
detection is enabled before enabling notifications.
(windowBecameOccluded): Ditto before changing window occlusion state.
(-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
Initialize occlusion detection enabled flag to "YES".
(-[WKView windowOcclusionDetectionEnabled]):
(-[WKView setWindowOcclusionDetectionEnabled:]):

  • UIProcess/API/mac/WKViewPrivate.h:
3:54 PM Changeset in webkit [144388] by Vineet
  • 2 edits in trunk/Source/WebCore

Unreviewed. Bindings test results update after r144376.

  • bindings/scripts/test/JS/JSTestObj.cpp:
3:52 PM Changeset in webkit [144387] by pdr@google.com
  • 2 edits in trunk/Tools

Add Philip Rogers as a reviewer.

Unreviewed update of committers.py.

  • Scripts/webkitpy/common/config/committers.py:
3:43 PM Changeset in webkit [144386] by andersca@apple.com
  • 6 edits in trunk/Source/WebKit2

Add the notion of an allowed connection to SessionStorageNamespace
https://bugs.webkit.org/show_bug.cgi?id=111122

Reviewed by Sam Weinig.

Group together each session storage namespace with an allowed connection.
This will help ensure that rouge web processes will not be able to access session storage
from pages in other processes.

  • UIProcess/Storage/StorageManager.cpp:

(StorageManager::SessionStorageNamespace):
(WebKit::StorageManager::SessionStorageNamespace::allowedConnection):
(WebKit::StorageManager::SessionStorageNamespace::create):
(WebKit::StorageManager::SessionStorageNamespace::SessionStorageNamespace):
(WebKit::StorageManager::SessionStorageNamespace::setAllowedConnection):
Add an m_allowedConnection member variable, as well as setters and getters.

(WebKit::StorageManager::createSessionStorageNamespace):
Take an optional allowed connection. (It can be null if the process has not finished launching).

(WebKit::StorageManager::setAllowedSessionStorageNamespaceConnection):
New function to set the allowed connection for a session storage namespace.

(WebKit::StorageManager::createStorageArea):
Add another FIXME.

(WebKit::StorageManager::createSessionStorageNamespaceInternal):
Pass the connection to the SessionStorageNamespace constructor.

(WebKit::StorageManager::setAllowedSessionStorageNamespaceConnectionInternal):
Set the allowed connection.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
Pass the connection to createSessionStorageNamespace.

(WebKit::WebPageProxy::connectionWillOpen):
Call setAllowedSessionStorageNamespaceConnection.

(WebKit::WebPageProxy::connectionWillClose):
Call setAllowedSessionStorageNamespaceConnection with a null connection.

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::connectionWillOpen):
Call connectionWillOpen on all pages.

(WebKit::WebProcessProxy::connectionWillClose):
Call connectionWillClose on all pages.

3:38 PM Changeset in webkit [144385] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed. AppleWin Build fix.

  • WebCore.vcproj/WebCore.vcproj:
3:37 PM Changeset in webkit [144384] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a flaky failure expectation to http/tests/inspector/resource-tree/resource-request-content-while-loading.html
on all platforms per bug 111123.

3:33 PM Changeset in webkit [144383] by dpranke@chromium.org
  • 7 edits in trunk/LayoutTests

Unreviewed, rebaselining fast/forms/date-appearance/basic.html for chromium.

  • platform/chromium-linux/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium-mac-lion/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium-mac/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium-win/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium/TestExpectations:
3:30 PM Changeset in webkit [144382] by dpranke@chromium.org
  • 6 edits
    2 adds
    1 delete in trunk/LayoutTests

Unreviewed, rebaselining media/track/track-cue-rendering-vertical.html on chromium

  • platform/chromium-linux/media/track/track-cue-rendering-vertical-expected.txt: Removed.
  • platform/chromium-mac-lion/media/track/track-cue-rendering-vertical-expected.png: Added.
  • platform/chromium-mac-lion/media/track/track-cue-rendering-vertical-expected.txt: Added.
  • platform/chromium-mac-snowleopard/media/track/track-cue-rendering-vertical-expected.png:
  • platform/chromium-win-xp/media/track/track-cue-rendering-vertical-expected.png:
  • platform/chromium-win/media/track/track-cue-rendering-vertical-expected.png:
  • platform/chromium-win/media/track/track-cue-rendering-vertical-expected.txt:
  • platform/chromium/TestExpectations:
3:25 PM Changeset in webkit [144381] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

[V8] Remove the world->isMainWorld() check from minorGCPrologue()
https://bugs.webkit.org/show_bug.cgi?id=111114

Reviewed by Adam Barth.

A couple of weeks ago, I introduced the following check to minorGCPrologue() in r142419.

void minorGCPrologue() {

A minor GC can handle the main world only.
DOMWrapperWorld* world = worldForEnteredContextWithoutContextCheck();
if (world && world->isMainWorld()) {

MinorGCWrapperVisitor visitor(isolate);
v8::V8::VisitHandlesForPartialDependence(isolate, &visitor);
visitor.notifyFinished();

}

}

  • The check makes no sense. A GC should not care about what world we are in.

There is no concept of worlds in GC.

  • worldForEnteredContextWithoutContextCheck() returns 0 for the main world.

So if a GC runs in the main world, the minor DOM GC is skipped.

  • worldForEnteredContextWithoutContextCheck() caused a Chromium crash

(https://code.google.com/p/chromium/issues/detail?id=177587)

We should remove the check.

No tests. No change in behavior.

  • bindings/v8/DOMWrapperWorld.h:

(WebCore::DOMWrapperWorld::getWorld):

  • bindings/v8/V8Binding.h:
  • bindings/v8/V8GCController.cpp:

(WebCore::V8GCController::minorGCPrologue):

3:24 PM Changeset in webkit [144380] by dpranke@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, updating chromium TestExpectations to remove passing tests.

  • platform/chromium/TestExpectations:
3:23 PM Changeset in webkit [144379] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Don't try to emit profiling if you don't have the DFG JIT.

Rubber stamped by Mark Hahnenberg.

  • jit/JIT.h:

(JSC::JIT::shouldEmitProfiling):

3:17 PM Changeset in webkit [144378] by Bruno de Oliveira Abinader
  • 12 edits in trunk/Source/WebCore

Create GraphicsContext3DState to aggregate state objects
https://bugs.webkit.org/show_bug.cgi?id=110817

Reviewed by Kenneth Russell.

Aggregate context state-related objects on a GraphicsContext3DState
struct, in a similar fashion as GraphicsContext does. This is useful to
avoid duplicated values for platform-specific initialization lists.

No behavior changes, thus covered by existing tests.

  • platform/graphics/GraphicsContext3D.h:

(WebCore::GraphicsContext3D::GraphicsContext3DState::GraphicsContext3DState):
(GraphicsContext3DState):
(GraphicsContext3D):
Moved m_boundFBO, m_activeTexture and m_boundTexture0 to GraphicsContext3DState.

  • platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:

(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::reshapeFBOs):

  • platform/graphics/cairo/GraphicsContext3DCairo.cpp:

(WebCore::GraphicsContext3D::GraphicsContext3D):

  • platform/graphics/cairo/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):

  • platform/graphics/efl/GraphicsContext3DEfl.cpp:

(WebCore::GraphicsContext3D::GraphicsContext3D):

  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::copyToGraphicsSurface):

  • platform/graphics/mac/GraphicsContext3DMac.mm:

(WebCore::GraphicsContext3D::GraphicsContext3D):

  • platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:

(WebCore::GraphicsContext3D::reshapeFBOs):
(WebCore::GraphicsContext3D::readPixels):

  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::prepareTexture):
(WebCore::GraphicsContext3D::readRenderingResults):
(WebCore::GraphicsContext3D::reshape):
(WebCore::GraphicsContext3D::activeTexture):
(WebCore::GraphicsContext3D::bindFramebuffer):
(WebCore::GraphicsContext3D::bindTexture):
(WebCore::GraphicsContext3D::copyTexImage2D):
(WebCore::GraphicsContext3D::copyTexSubImage2D):
(WebCore::GraphicsContext3D::deleteFramebuffer):
(WebCore::GraphicsContext3D::deleteTexture):

  • platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:

(WebCore::GraphicsContext3D::readPixels):
(WebCore::GraphicsContext3D::readPixelsAndConvertToBGRAIfNecessary):
(WebCore::GraphicsContext3D::reshapeFBOs):

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(WebCore::GraphicsContext3DPrivate::createOffscreenBuffers):
(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
(WebCore::GraphicsContext3DPrivate::blitMultisampleFramebuffer):
(WebCore::GraphicsContext3D::GraphicsContext3D):
Removed initialization list values not needed anymore and reassigned
calls to m_boundFBO, m_boundTexture0 and m_activeTexture to m_state
respectives.

3:06 PM Changeset in webkit [144377] by hyatt@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix. A merge error led to a duplication of a single line.
Just removing the duplicate line.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::createLocalTransformState):

2:57 PM Changeset in webkit [144376] by Kaustubh Atrawalkar
  • 18 edits
    2 adds
    4 deletes in trunk

Notification.requestPermission callback should be optional
https://bugs.webkit.org/show_bug.cgi?id=108196

Reviewed by Kentaro Hara.

Spec says it should be optional.
http://notifications.spec.whatwg.org/#notification

Source/WebCore:

Test: fast/notifications/notifications-request-permission-optional.html

  • GNUmakefile.list.am:
  • Modules/notifications/Notification.h:

(Notification):

  • Modules/notifications/Notification.idl:
  • Modules/notifications/NotificationCenter.cpp:

(WebCore::NotificationCenter::NotificationRequestCallback::timerFired):

  • Modules/notifications/NotificationCenter.h:

(NotificationCenter):

  • Modules/notifications/NotificationCenter.idl:
  • Target.pri:
  • UseJSC.cmake:
  • UseV8.cmake:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSDesktopNotificationsCustom.cpp: Removed.
  • bindings/js/JSNotificationCustom.cpp: Removed.
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateParametersCheck):

  • bindings/v8/custom/V8NotificationCenterCustom.cpp: Removed.
  • bindings/v8/custom/V8NotificationCustom.cpp: Removed.

LayoutTests:

  • fast/notifications/notifications-request-permission-optional-expected.txt: Added.
  • fast/notifications/notifications-request-permission-optional.html: Added.
2:54 PM Changeset in webkit [144375] by commit-queue@webkit.org
  • 3 edits in trunk

Underline should round to match other content.
https://bugs.webkit.org/show_bug.cgi?id=111005

Patch by Ben Wagner <bungeman@chromium.org> on 2013-02-28
Reviewed by Stephen White.

Test: fast/text/decorations-with-text-combine.html

  • platform/graphics/skia/GraphicsContextSkia.cpp:

(WebCore::GraphicsContext::drawLineForText):
Round (instead of floor) underlines to match other content.

2:51 PM Changeset in webkit [144374] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

Refine Ryosuke's r144367 fix.

Rubber-stamped by Ryosuke Niwa.

  • page/PageGroup.cpp:

(WebCore::PageGroup::captionPreferences):

2:48 PM Changeset in webkit [144373] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG Phantom node should be honest about the fact that it can exit
https://bugs.webkit.org/show_bug.cgi?id=111115

Reviewed by Mark Hahnenberg.

The chances of this having cause serious issues are low, since most clients of the
NodeDoesNotExit flag run after CFA and CFA updates this properly. But one possible
case of badness is if the ByteCodeParser inserted a Phantom with a type check in
between a LogicalNot and a Branch; then that peephole optimization in Fixup might
go slightly wrong.

  • dfg/DFGNodeType.h:

(DFG):

2:46 PM Changeset in webkit [144372] by ap@apple.com
  • 5 edits in trunk/Source/WebCore

Windows build fix.

Removing ENABLE(BLOB) checks that I added in bug 111100. Many, many more are needed
to cleanly disable blob code.

  • platform/network/BlobData.h:
  • platform/network/BlobRegistryImpl.cpp:
  • platform/network/BlobRegistryImpl.h:
  • platform/network/BlobStorageData.h:
2:33 PM Changeset in webkit [144371] by Lucas Forschler
  • 2 edits in tags/Safari-537.32/Source/WebKit2

Merged r144324. <rdar://problem/13264712>

2:33 PM Changeset in webkit [144370] by eric@webkit.org
  • 4 edits in trunk

Threaded HTML parser hits ASSERTION FAILED: this == frameLoader()->activeDocumentLoader()
https://bugs.webkit.org/show_bug.cgi?id=110937

Reviewed by Adam Barth.

Remove the #ifdef guards added to work around this ASSERT.
This was fixed by https://bugs.webkit.org/show_bug.cgi?id=110951
as now DocumentLoader::checkLoadComplete() will ignore the call
if the DocumentLoader is not the active document loader for the Document.

  • dom/Document.cpp:

(WebCore::Document::decrementActiveParserCount):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::isLoading):
(WebCore::DocumentLoader::checkLoadComplete):

2:08 PM Changeset in webkit [144369] by Lucas Forschler
  • 1 edit in trunk/Tools/Scripts/webkitpy/common/config/committers.py

Rollout r144366.

2:06 PM Changeset in webkit [144368] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Move html5linb tests to be Slow rather than Timeout

Unreviewed expectations. Requested by Eric Seidel.

  • platform/chromium/TestExpectations:
2:02 PM Changeset in webkit [144367] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Revert an erroneous change in r144336.

Rubber-stamped by Eric Carlson.

  • page/PageGroup.cpp:

(WebCore::PageGroup::captionPreferences):

2:01 PM Changeset in webkit [144366] by Lucas Forschler
  • 1 edit in trunk/Tools/Scripts/webkitpy/common/config/committers.py

Give Damian Committer privs.

1:57 PM Changeset in webkit [144365] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Add casts in DFGGPRInfo.h to suppress warnings
https://bugs.webkit.org/show_bug.cgi?id=111104

Reviewed by Filip Pizlo.

With certain flags on, we get compiler warnings on ARM. We should do the proper casts to make these warnings go away.

  • dfg/DFGGPRInfo.h:

(JSC::DFG::GPRInfo::toIndex):
(JSC::DFG::GPRInfo::debugName):

1:52 PM Changeset in webkit [144364] by hyatt@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for Windows. Make sure the new bits are unsigned and not bools.

  • rendering/RenderBlock.h:
1:52 PM Changeset in webkit [144363] by rniwa@webkit.org
  • 3 edits in trunk/Tools

Merge more methods on PerfTest
https://bugs.webkit.org/show_bug.cgi?id=111030

Reviewed by Dirk Pranke.

Merged parse_output into _run_with_driver as it was the only caller. Also merged _should_ignore_line_in_stderr
and _should_ignore_line_in_parser_test_result into _filter_output since it was their only caller.

This makes the control flow a lot more comprehensible.

  • Scripts/webkitpy/performance_tests/perftest.py:

(PerfTest._run_with_driver):
(PerfTest._should_ignore_line):
(PerfTest._filter_output):

  • Scripts/webkitpy/performance_tests/perftest_unittest.py:

(TestPerfTest._assert_results_are_correct):
(test_ignored_stderr_lines):

1:51 PM Changeset in webkit [144362] by fpizlo@apple.com
  • 16 edits in trunk/Source/JavaScriptCore

It should be easy to determine if a DFG node exits forward or backward when doing type checks
https://bugs.webkit.org/show_bug.cgi?id=111102

Reviewed by Mark Hahnenberg.

This adds a NodeExitsForward flag, which tells you the exit directionality of
type checks performed by the node. Even if you convert the node to a Phantom
and use the Edge UseKind for type checks, you'll still get the same exit
directionality that the original node would have wanted.

  • dfg/DFGArgumentsSimplificationPhase.cpp:

(JSC::DFG::ArgumentsSimplificationPhase::run):

  • dfg/DFGArrayifySlowPathGenerator.h:

(JSC::DFG::ArrayifySlowPathGenerator::ArrayifySlowPathGenerator):

  • dfg/DFGCFGSimplificationPhase.cpp:

(JSC::DFG::CFGSimplificationPhase::run):
(JSC::DFG::CFGSimplificationPhase::mergeBlocks):

  • dfg/DFGCPSRethreadingPhase.cpp:

(JSC::DFG::CPSRethreadingPhase::canonicalizeFlushOrPhantomLocalFor):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::setReplacement):
(JSC::DFG::CSEPhase::eliminate):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::checkArray):

  • dfg/DFGNode.h:

(Node):
(JSC::DFG::Node::setOpAndDefaultNonExitFlags):
(JSC::DFG::Node::convertToPhantom):

  • dfg/DFGNodeFlags.cpp:

(JSC::DFG::nodeFlagsAsString):

  • dfg/DFGNodeFlags.h:

(DFG):

  • dfg/DFGNodeType.h:

(DFG):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::backwardSpeculationCheck):
(DFG):
(JSC::DFG::SpeculativeJIT::speculationCheck):
(JSC::DFG::SpeculativeJIT::speculationWatchpoint):
(JSC::DFG::SpeculativeJIT::forwardSpeculationCheck):
(JSC::DFG::SpeculativeJIT::backwardTypeCheck):
(JSC::DFG::SpeculativeJIT::typeCheck):
(JSC::DFG::SpeculativeJIT::forwardTypeCheck):
(JSC::DFG::SpeculativeJIT::fillStorage):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
(JSC::DFG::SpeculativeJIT::compileValueToInt32):
(JSC::DFG::SpeculativeJIT::compileInt32ToDouble):

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):
(JSC::DFG::SpeculateIntegerOperand::SpeculateIntegerOperand):
(JSC::DFG::SpeculateIntegerOperand::gpr):
(SpeculateIntegerOperand):
(JSC::DFG::SpeculateDoubleOperand::SpeculateDoubleOperand):
(JSC::DFG::SpeculateDoubleOperand::fpr):
(SpeculateDoubleOperand):
(JSC::DFG::SpeculateCellOperand::SpeculateCellOperand):
(JSC::DFG::SpeculateCellOperand::gpr):
(SpeculateCellOperand):
(JSC::DFG::SpeculateBooleanOperand::SpeculateBooleanOperand):
(JSC::DFG::SpeculateBooleanOperand::gpr):
(SpeculateBooleanOperand):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntStrict):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntStrict):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compile):

1:48 PM Changeset in webkit [144361] by robert@webkit.org
  • 2 edits in trunk/Tools

Update my IRC nick

Unreviewed.

  • Scripts/webkitpy/common/config/committers.py:
1:45 PM Changeset in webkit [144360] by jochen@chromium.org
  • 4 edits
    2 adds in trunk

Meta referrer isn't honored for window.open
https://bugs.webkit.org/show_bug.cgi?id=111076

Reviewed by Adam Barth.

Source/WebCore:

Test: http/tests/security/referrer-policy-window-open.html

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::urlSelected): loadFrameRequest() will set the correct referrer
(WebCore::createWindow): This code is required for the inspector which doesn't set the referrer

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::createWindow):

LayoutTests:

  • http/tests/security/referrer-policy-window-open-expected.txt: Added.
  • http/tests/security/referrer-policy-window-open.html: Added.
1:37 PM Changeset in webkit [144359] by Bruno de Oliveira Abinader
  • 2 edits in trunk/Source/WebCore

[texmap] Remove redundant defines on TextureMapperGL
https://bugs.webkit.org/show_bug.cgi?id=111090

Reviewed by Antonio Gomes.

driverSupportsSubImage() already uses OpenGL ES defines to return
correct support, thus no need for these additional defines.

No behavior changes, thus covered by existing tests.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::BitmapTextureGL::updateContentsNoSwizzle):

1:35 PM Changeset in webkit [144358] by zmo@google.com
  • 28 edits
    3 adds in trunk/Source

EXT_draw_buffers needs implementation
https://bugs.webkit.org/show_bug.cgi?id=109331

Reviewed by Kenneth Russell.

Source/Platform:

Add EXT_draw_buffers support for chromium port.

  • chromium/public/WebGraphicsContext3D.h:

(WebGraphicsContext3D):
(WebKit::WebGraphicsContext3D::drawBuffersEXT):

Source/WebCore:

This patch adds support for EXT_draw_buffers for WebGL.
mac OpenGL port is passing khronos WebGL conformance test with this patch. OpenGL ES port implementation isn't added in this patch.
Also, it has the WebKit side support for chromium port, but pending command buffer implementation.

Besides the basic extension implementation, we also added drawBuffers() wrapper to work around a mac driver bug: i.e., do not enable a buffer if there is no attachment added.

  • CMakeLists.txt:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSWebGLRenderingContextCustom.cpp:

(WebCore::toJS):

  • bindings/v8/V8Binding.h:

(WebCore):
(WebCore::toInt32):
(WebCore::toUInt32):
(WebCore::toFloat):
(WebCore::toInt64):

  • bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:

(WebCore::toV8Object):

  • html/canvas/EXTDrawBuffers.cpp: Added.

(WebCore):
(WebCore::EXTDrawBuffers::EXTDrawBuffers):
(WebCore::EXTDrawBuffers::~EXTDrawBuffers):
(WebCore::EXTDrawBuffers::getName):
(WebCore::EXTDrawBuffers::create):
(WebCore::EXTDrawBuffers::supported):
(WebCore::EXTDrawBuffers::drawBuffersEXT):

  • html/canvas/EXTDrawBuffers.h: Added.

(WebCore):
(EXTDrawBuffers):

  • html/canvas/EXTDrawBuffers.idl: Added.
  • html/canvas/WebGLExtension.h:
  • html/canvas/WebGLFramebuffer.cpp:

(WebCore::WebGLFramebuffer::setAttachmentForBoundFramebuffer):
(WebCore::WebGLFramebuffer::removeAttachmentFromBoundFramebuffer):
(WebCore::WebGLFramebuffer::drawBuffers):
(WebCore):
(WebCore::WebGLFramebuffer::drawBuffersIfNecessary):

  • html/canvas/WebGLFramebuffer.h:

(WebGLFramebuffer):

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::initializeNewContext):
(WebCore::WebGLRenderingContext::framebufferRenderbuffer):
(WebCore::WebGLRenderingContext::getExtension):
(WebCore::WebGLRenderingContext::getParameter):
(WebCore::WebGLRenderingContext::getSupportedExtensions):
(WebCore::WebGLRenderingContext::validateFramebufferFuncParameters):
(WebCore::WebGLRenderingContext::getMaxDrawBuffers):
(WebCore::WebGLRenderingContext::getMaxColorAttachments):

  • html/canvas/WebGLRenderingContext.h:

(WebCore):
(WebGLRenderingContext):

  • platform/chromium/support/Extensions3DChromium.cpp:

(WebCore::Extensions3DChromium::drawBuffersEXT):
(WebCore):

  • platform/graphics/Extensions3D.h:

(Extensions3D):

  • platform/graphics/GraphicsContext3D.cpp:

(WebCore::GraphicsContext3D::getClearBitsByAttachmentType):

  • platform/graphics/chromium/Extensions3DChromium.h:

(Extensions3DChromium):

  • platform/graphics/opengl/Extensions3DOpenGL.cpp:

(WebCore::Extensions3DOpenGL::supportsExtension):
(WebCore::Extensions3DOpenGL::drawBuffersEXT):
(WebCore):

  • platform/graphics/opengl/Extensions3DOpenGL.h:

(Extensions3DOpenGL):

  • platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:

(WebCore::Extensions3DOpenGLCommon::ensureEnabled):

  • platform/graphics/opengl/Extensions3DOpenGLCommon.h:

(Extensions3DOpenGLCommon):

  • platform/graphics/opengl/Extensions3DOpenGLES.cpp:

(WebCore::Extensions3DOpenGLES::drawBuffersEXT):
(WebCore):
(WebCore::Extensions3DOpenGLES::supportsExtension):

  • platform/graphics/opengl/Extensions3DOpenGLES.h:

(Extensions3DOpenGLES):

1:32 PM Changeset in webkit [144357] by commit-queue@webkit.org
  • 2 edits
    2 adds in trunk/LayoutTests

[EFL][WebGL] Enable compositing/webgl/webgl-reflection.html.
https://bugs.webkit.org/show_bug.cgi?id=110688

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2013-02-28
Reviewed by Laszlo Gombos.

This patch adds platform specific test expectation files for the
test and enables it for efl port.

  • platform/efl/TestExpectations:
  • platform/efl/compositing/webgl/webgl-reflection-expected.png: Added.
  • platform/efl/compositing/webgl/webgl-reflection-expected.txt: Added.
1:31 PM Changeset in webkit [144356] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

CodeBlock::valueProfile() has a bogus assertion
https://bugs.webkit.org/show_bug.cgi?id=111106
<rdar://problem/13131427>

Reviewed by Mark Hahnenberg.

This was just a bad assertion: m_bytecodeOffset == -1 means that the value profile is constructed but not initialized.
ValueProfile constructs itself in a safe way; you can call any method you want on a constructed but not initialized
ValueProfile. CodeBlock first constructs all ValueProfiles (by growing the ValueProfile vector) and then initializes
their m_bytecodeOffset later. This is necessary because the initialization is linking bytecode instructions to their
ValueProfiles, so at that point we don't want the ValueProfile vector to resize, which implies that we want all of
them to already be constructed. A GC can happen during this phase, and the GC may want to walk all ValueProfiles.
This is safe, but one of the ValueProfile getters (CodeBlock::valueProfile()) was asserting that any value profile
you get has had its m_bytecodeOffset initialized. This need not be the case and nothing will go wrong if it isn't.

The solution is to remove the assertion, which I believe was put there to ensure that my m_valueProfiles refactoring
a long time ago was sound: it used to be that a ValueProfile with m_bytecodeOffset == -1 was an argument profile; now
all argument profiles are in m_argumentValueProfiles instead. I think it's safe to say that this refactoring was done
soundly since it was a long time ago. So we should kill the assertion - I don't see an easy way to make the assertion
sound with respect to the GC-during-CodeBlock-construction issue, and I don't believe that the assertion is buying us
anything at this point.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::valueProfile):

1:30 PM Changeset in webkit [144355] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Maintain the directionality of the selection after modifying the selection using key events.
https://bugs.webkit.org/show_bug.cgi?id=111078

Reviewed by Yong Li.

PR 295224.

When using the key navigation to modify the selection, reset the
directionality of the selection to the original to prevent
changing the anchor.

Reviewed Internally by Nima Ghanavatian.

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::updateOrHandleInputSelection):

1:08 PM Changeset in webkit [144354] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

Create BlobRegistry through a strategy
https://bugs.webkit.org/show_bug.cgi?id=111100

Chromium build fix.

  • platform/network/BlobRegistry.cpp: Use destructor for chromium too.
1:04 PM Changeset in webkit [144353] by ap@apple.com
  • 21 edits
    1 add in trunk/Source/WebCore

Create BlobRegistry through a strategy
https://bugs.webkit.org/show_bug.cgi?id=111100

Reviewed by Sam Weinig.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj: Added BlobRegistry.cpp.
  • WebCore.exp.in:
  • loader/LoaderStrategy.cpp: (WebCore::LoaderStrategy::createBlobRegistry):
  • loader/LoaderStrategy.h: Addxed a function to create BlobRegistry, with default implementation being in-process WebKit1 one.
  • platform/network/BlobData.h: Added ENABLE(BLOB).
  • platform/network/BlobRegistry.cpp: Added. Moved singleton to a separate file.
  • platform/network/BlobRegistry.h: Made destructor non-inline. Cleaned up includes.
  • platform/network/BlobRegistryImpl.cpp:
  • platform/network/BlobRegistryImpl.h: Cleaned up includes, made functions that are only called through base class private. Added ENABLE(BLOB).
  • platform/network/BlobStorageData.h: Added ENABLE(BLOB).
  • platform/network/FormData.cpp: (WebCore::appendBlobResolved): Check blob registry type before upcasting. It's a public function, and we should not depend on high level understanding of process model to prove that the cast is safe.
  • platform/network/ResourceHandle.cpp:
  • platform/network/cf/FormDataStreamCFNet.cpp:
  • platform/network/mac/ResourceHandleMac.mm: Cleaned up includes.
12:59 PM Changeset in webkit [144352] by tkent@chromium.org
  • 12 edits in trunk

REGRESSION: INPUT_MULTIPLE_FIELDS_UI: Changing CSS display property on input[type=date] unexpectedly makes another line for ::-webkit-calendar-picker-indicator
https://bugs.webkit.org/show_bug.cgi?id=110974

Reviewed by Kentaro Hara.

Source/WebCore:

Input elements with the multiple fields UI require flexible box
layout.

  • If display:inline or display:inline-block is specified, we replace it with display:inline-flex.
  • If display:block is specified, we replace it with display:flex.
  • If other display value is specified, we use it as is, but it won't wrap inside an input element because we have display:inline-block for ::-webkit-calendar-pixker-indicaotor.

r144184 was incomplete. It avoided the wrapping issue, but it
didn't make spin buttons and calendar arrows right-aligned.

Tests: Update fast/forms/date/date-apparance-basic.html

  • css/html.css:

(input::-webkit-calendar-picker-indicator):
Add display:inline-block in orde to avoid line-wrapping.

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::customStyleForRenderer):
Move the code to BaseMultipleFieldsDateAndTimeInputType::customStyleForRenderer.

  • html/InputType.cpp:

(WebCore::InputType::customStyleForRenderer): Added.

  • html/InputType.h:

(InputType): Add customStyleForRenderer, and remove
shouldApplyLocaleDirection.

  • html/BaseMultipleFieldsDateAndTimeInputType.cpp:

(WebCore::BaseMultipleFieldsDateAndTimeInputType::customStyleForRenderer):
Moved the code from HTMLInputElement::customStyleForRenderer, and
add display property updatting code.

  • html/BaseMultipleFieldsDateAndTimeInputType.h:

(BaseMultipleFieldsDateAndTimeInputType):
Add customStyleForRenderer, and remove shouldApplyLocaleDirection.

LayoutTests:

  • fast/forms/date/date-appearance-basic-expected.txt:
  • fast/forms/date/date-appearance-basic.html:
  • platform/chromium-mac/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium/TestExpectations:
12:51 PM Changeset in webkit [144351] by andersca@apple.com
  • 7 edits in trunk/Source

Implement more StorageAreaProxy member functions
https://bugs.webkit.org/show_bug.cgi?id=111103

Reviewed by Sam Weinig.

Source/WebCore:

Export two more StorageMap symbols required by WebKit2.

  • WebCore.exp.in:

Source/WebKit2:

  • Shared/SecurityOriginData.cpp:

(WebKit::SecurityOriginData::securityOrigin):

  • Shared/SecurityOriginData.h:

Add helper to create a WebCore::SecurityOrigin from a SecurityOriginData object.

  • WebProcess/Storage/StorageAreaProxy.cpp:

(WebKit::StorageAreaProxy::key):
Fill the storage map and call through to StorageMap::key.

(WebKit::StorageAreaProxy::contains):
Fill the storage map and call through to StorageMap::contains.

(WebKit::StorageAreaProxy::memoryBytesUsedByCache):
Return 0; this matches StorageAreaImpl.

12:38 PM Changeset in webkit [144350] by wangxianzhu@chromium.org
  • 28 edits
    2 adds in trunk

Focus ring for a child layer is incorrectly offset by ancestor composited layer's position
https://bugs.webkit.org/show_bug.cgi?id=110895

Reviewed by Simon Fraser.

Source/WebCore:

Test: compositing/sub-layer-focus-ring.html

The problem occurs in RenderBlock::addFocusRingRects() where the absolute position of a sub-layer is used to calculate the focus ring rect of the layer.
Should use the relative position to the current paintContainer instead.

To fix the issue:

  • RenderLayer passes LayerPaintingInfo.rootLayer to PaintInfo.paintContainer
  • Let RenderObject::paintFocusRing() and RenderObject::paintOutline() take PaintInfo instead of GraphicsContext* so that the paintContainer can be passed
  • RenderBlock::addFocusRingRects() uses localToContainerPoint(FloatPoint(), paintContainer) instead of localToAbsolute() to calculate the focus ring rect of a sublayer.
  • rendering/PaintInfo.h:

(WebCore):
(WebCore::PaintInfo::PaintInfo): Add a field paintContainer (the RenderLayerModelObject which originates the current painting)
(PaintInfo):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::paintObject):
(WebCore::RenderBlock::paintContinuationOutlines):
(WebCore::RenderBlock::addFocusRingRects): Use the added paintContainer parameter to calculate the relative offset of the child layer.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintBackgroundForFragments): Pass LayerPaintingInfo.rootLayer to PaintInfo.paintContainer.
(WebCore::RenderLayer::paintForegroundForFragmentsWithPhase): Ditto.
(WebCore::RenderLayer::paintOutlineForFragments): Ditto.
(WebCore::RenderLayer::paintMaskForFragments): Ditto.

  • rendering/RenderLayer.cpp:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::paintFocusRing): Now takes PaintInfo instead of GraphicsContext*. Pass paintInfo.paintContainer to addFocusRingRects().
(WebCore::RenderObject::paintOutline): Now takes PaintInfo instead of GraphicsContext*.
(WebCore::RenderObject::absoluteFocusRingQuads):

  • rendering/RenderObject.h:

(WebCore::RenderObject::addFocusRingRects): Add paintContainer parameter.

LayoutTests:

New ref test for the bug.

  • compositing/sub-layer-focus-ring-expected.html: Added.
  • compositing/sub-layer-focus-ring.html: Added.
12:31 PM Changeset in webkit [144349] by junov@google.com
  • 3 edits in trunk/LayoutTests

Re-baselining expected pixels for fast/borders/border-radius-percent.html on linux
https://bugs.webkit.org/show_bug.cgi?id=110889

Unreviewed

  • TestExpectations:
  • platform/chromium-linux/fast/borders/border-radius-percent-expected.png:
12:18 PM Changeset in webkit [144348] by Lucas Forschler
  • 2 edits in tags/Safari-537.31.11/Source/WebCore

Merged r143684. <rdar://problem/13315270>

12:15 PM Changeset in webkit [144347] by Lucas Forschler
  • 3 edits in tags/Safari-537.31.11/Source/WebCore

Merged r143680. <rdar://problem/13315270>

12:13 PM Changeset in webkit [144346] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

Crash in JSC::MarkedBlock::FreeList JSC::MarkedBlock::sweepHelper
https://bugs.webkit.org/show_bug.cgi?id=111059

Reviewed by Ryosuke Niwa.

Sometimes C++'s implicit operator conversion rules suck.
Add explicit operator== and !=.

  • wtf/FastMalloc.cpp:

(WTF::HardenedSLL::operator!=):
(WTF::HardenedSLL::operator==):
(HardenedSLL):

12:09 PM Changeset in webkit [144345] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed gardening, update expectation

  • platform/chromium/TestExpectations: Add Win modifier for compositing/rtl/rtl-iframe-fixed-overflow-scrolled.html

and remove modifiers for fast/forms/textarea/textarea-state-restore.html

11:59 AM Changeset in webkit [144344] by hyatt@apple.com
  • 5 edits in trunk/Source/WebCore

Remove the quirk margin bits from RenderObject and put them back in RenderBlock.
https://bugs.webkit.org/show_bug.cgi?id=111089

Reviewed by Dan Bernstein.

This patch removes the marginBeforeQuirk and marginAfterQuirk bits from RenderObject
and puts them into RenderBlock instead. I also did some renaming and clean-up after
moving them, e.g., to hasMarginBeforeQuirk and hasMarginAfterQuirk.

Even though it's pretty irrelevant, I also made the code writing-mode-correct so that
the correct child margin quirk is propagated across differing writing mode
boundaries.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::MarginInfo::MarginInfo):
(WebCore::RenderBlock::RenderBlock):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::collapseMargins):
(WebCore::RenderBlock::marginBeforeEstimateForChild):
(WebCore::RenderBlock::setCollapsedBottomMargin):
(WebCore::RenderBlock::handleAfterSideOfBlock):
(WebCore::RenderBlock::hasMarginBeforeQuirk):
(WebCore):
(WebCore::RenderBlock::hasMarginAfterQuirk):

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::setHasMarginBeforeQuirk):
(WebCore::RenderBlock::setHasMarginAfterQuirk):
(RenderBlock):
(WebCore::RenderBlock::hasMarginBeforeQuirk):
(WebCore::RenderBlock::hasMarginAfterQuirk):
(MarginInfo):
(WebCore::RenderBlock::MarginInfo::setHasMarginBeforeQuirk):
(WebCore::RenderBlock::MarginInfo::setHasMarginAfterQuirk):
(WebCore::RenderBlock::MarginInfo::hasMarginBeforeQuirk):
(WebCore::RenderBlock::MarginInfo::hasMarginAfterQuirk):

  • rendering/RenderObject.h:

(RenderObject):
(WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
(RenderObjectBitfields):

  • rendering/style/RenderStyle.h:
11:55 AM Changeset in webkit [144343] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

Remove these supressions now that we've reverted http://trac.webkit.org/changeset/144126.

  • platform/chromium/TestExpectations:
11:48 AM Changeset in webkit [144342] by Lucas Forschler
  • 8 edits in tags/Safari-537.31.11/Source/WebKit2

Merged r144217. <rdar://problem/13229828>

11:46 AM Changeset in webkit [144341] by commit-queue@webkit.org
  • 15 edits
    2 adds
    2 deletes in trunk

Unreviewed, rolling out r144126 and r144176.
http://trac.webkit.org/changeset/144126
http://trac.webkit.org/changeset/144176
https://bugs.webkit.org/show_bug.cgi?id=111096

Caused fast/notifications/notifications-request-
permission.html to crash (Requested by abarth on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-28

Source/WebCore:

  • GNUmakefile.list.am:
  • Modules/notifications/Notification.h:

(Notification):

  • Modules/notifications/Notification.idl:
  • Target.pri:
  • UseJSC.cmake:
  • UseV8.cmake:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSNotificationCustom.cpp: Added.

(WebCore):
(WebCore::JSNotification::requestPermission):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateParametersCheck):

  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/v8/custom/V8NotificationCustom.cpp: Added.

(WebCore):
(WebCore::V8Notification::requestPermissionMethodCustom):

LayoutTests:

  • fast/notifications/notifications-request-permission-optional-expected.txt: Removed.
  • fast/notifications/notifications-request-permission-optional.html: Removed.
11:45 AM Changeset in webkit [144340] by fpizlo@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

DFG CFA should leave behind information in Edge that says if the Edge's type check is proven to succeed
https://bugs.webkit.org/show_bug.cgi?id=110840

Reviewed by Mark Hahnenberg.

This doesn't add any observable functionality to the compiler, yet. But it does give
every phase that runs after CFA the ability to know, in O(1) time, whether an edge
will need to execute a type check.

  • dfg/DFGAbstractState.h:

(JSC::DFG::AbstractState::filterEdgeByUse):
(JSC::DFG::AbstractState::filterByType):

  • dfg/DFGCommon.cpp:

(WTF):
(WTF::printInternal):

  • dfg/DFGCommon.h:

(JSC::DFG::isProved):
(DFG):
(JSC::DFG::proofStatusForIsProved):
(WTF):

  • dfg/DFGEdge.cpp:

(JSC::DFG::Edge::dump):

  • dfg/DFGEdge.h:

(JSC::DFG::Edge::Edge):
(JSC::DFG::Edge::setNode):
(JSC::DFG::Edge::useKindUnchecked):
(JSC::DFG::Edge::setUseKind):
(Edge):
(JSC::DFG::Edge::proofStatusUnchecked):
(JSC::DFG::Edge::proofStatus):
(JSC::DFG::Edge::setProofStatus):
(JSC::DFG::Edge::isProved):
(JSC::DFG::Edge::needsCheck):
(JSC::DFG::Edge::shift):
(JSC::DFG::Edge::makeWord):

11:43 AM Changeset in webkit [144339] by Lucas Forschler
  • 3 edits
    1 copy
    2 deletes in tags/Safari-537.31.11/Source/WebKit2

Merged r144217. <rdar://problem/13229828>

11:40 AM Changeset in webkit [144338] by Nate Chapin
  • 3 edits
    3 adds in trunk

Source/WebCore: Crash in CachedRawResource::responseReceived().
https://bugs.webkit.org/show_bug.cgi?id=110482

Reviewed by Adam Barth.

Test: http/tests/security/XFrameOptions/x-frame-options-deny-multiple-clients.html

  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::responseReceived):

LayoutTests: Test for https://bugs.webkit.org/show_bug.cgi?id=110482

Reviewed by Adam Barth.

  • http/tests/security/XFrameOptions/x-frame-options-deny-multiple-clients-expected.txt: Added.
  • http/tests/security/XFrameOptions/x-frame-options-deny-multiple-clients.html: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-multiple-clients-expected.txt: Added.
11:37 AM Changeset in webkit [144337] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WTF

Enable DFG JIT for Qt on Mac
https://bugs.webkit.org/show_bug.cgi?id=111095

Rubber-stamped by Simon Hausmann

  • wtf/Platform.h:
11:35 AM Changeset in webkit [144336] by eric.carlson@apple.com
  • 6 edits in trunk/Source

[Mac] use HAVE() macro instead of version check
https://bugs.webkit.org/show_bug.cgi?id=111087

Reviewed by Dean Jackson.

Source/WebCore:

No new tests, covered by existing tests.

  • page/CaptionUserPreferencesMac.h: Use HAVE(MEDIA_ACCESSIBILITY_FRAMEWORK).
  • page/CaptionUserPreferencesMac.mm: Ditto.

(WebCore::CaptionUserPreferencesMac::CaptionUserPreferencesMac): Ditto.
(WebCore::CaptionUserPreferencesMac::~CaptionUserPreferencesMac): Ditto.

  • page/PageGroup.cpp:

(WebCore::PageGroup::captionPreferences): Ditto.

Source/WTF:

  • wtf/Platform.h: Define HAVE_MEDIA_ACCESSIBILITY_FRAMEWORK.
11:33 AM Changeset in webkit [144335] by Chris Fleizach
  • 7 edits
    2 adds in trunk

WebSpeech: support the boundary event
https://bugs.webkit.org/show_bug.cgi?id=107350

Reviewed by Beth Dakin.

Source/WebCore:

Generate boundary events for speech synthesis and have them fire the appropriate events.
This implements for the Mac platform, as well as simulating these events in the mock
synthesizer for testing purposes.

Test: platform/mac/fast/speechsynthesis/speech-synthesis-boundary-events.html

  • Modules/speech/SpeechSynthesis.cpp:

(WebCore):
(WebCore::SpeechSynthesis::boundaryEventOccurred):

  • Modules/speech/SpeechSynthesis.h:

(SpeechSynthesis):

  • platform/PlatformSpeechSynthesizer.h:

(WebCore):
(PlatformSpeechSynthesizerClient):

  • platform/mac/PlatformSpeechSynthesizerMac.mm:

(-[WebSpeechSynthesisWrapper speechSynthesizer:willSpeakWord:ofString:]):

  • platform/mock/PlatformSpeechSynthesizerMock.cpp:

(WebCore::PlatformSpeechSynthesizerMock::speak):

LayoutTests:

  • platform/mac/fast/speechsynthesis/speech-synthesis-boundary-events-expected.txt: Added.
  • platform/mac/fast/speechsynthesis/speech-synthesis-boundary-events.html: Added.
11:23 AM Changeset in webkit [144334] by Lucas Forschler
  • 2 edits in tags/Safari-537.31.11/Source/WebCore

Merged r142958. <rdar://problem/13237306>

11:16 AM Changeset in webkit [144333] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

PDFPlugin: PDF orientation isn't respected when printing or print-previewing
https://bugs.webkit.org/show_bug.cgi?id=110925
<rdar://problem/13008621>

Reviewed by Alexey Proskuryakov.

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::drawPDFPage): Teach drawPDFPage about PDFPage's rotation property, and use it
to swap the PDF's cropbox. Painting now matches PDFViewController's historical behavior.

11:11 AM Changeset in webkit [144332] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

Add new webkit API to invoke a context menu.
https://bugs.webkit.org/show_bug.cgi?id=111040

Patch by Varun Jain <varunjain@chromium.org> on 2013-02-28
Reviewed by Adam Barth.

  • public/WebView.h:

(WebView):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::showContextMenu):
(WebKit):

  • src/WebViewImpl.h:
11:06 AM Changeset in webkit [144331] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

This timeout also happens in Release.

  • platform/chromium/TestExpectations:
11:04 AM Changeset in webkit [144330] by dgrogan@chromium.org
  • 2 edits in trunk/Source/WebCore

IndexedDB: Histogram all exits from IDBBackingStore::open
https://bugs.webkit.org/show_bug.cgi?id=110677

Reviewed by Tony Chang.

No tests because this only changes logging code.

  • Modules/indexeddb/IDBBackingStore.cpp:

(WebCore::IDBBackingStore::open):

11:03 AM Changeset in webkit [144329] by Lucas Forschler
  • 4 edits in tags/Safari-537.31.11/Source

Versioning.

11:00 AM Changeset in webkit [144328] by acolwell@chromium.org
  • 15 edits
    6 copies in trunk/Source

Factor SourceBuffer methods out of MediaSourcePrivate & WebMediaSource
into SourceBufferPrivate & WebSourceBuffer respectively.
https://bugs.webkit.org/show_bug.cgi?id=110798

Reviewed by Adam Barth, Jer Noble.

Source/WebCore:

No new tests. No user visible behavior has changed.

  • Modules/mediasource/MediaSource.cpp:

(WebCore::MediaSource::addSourceBuffer):
(WebCore::MediaSource::removeSourceBuffer):

  • Modules/mediasource/MediaSource.h:

(MediaSource):

  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::create):
(WebCore):
(WebCore::SourceBuffer::SourceBuffer):
(WebCore::SourceBuffer::buffered):
(WebCore::SourceBuffer::setTimestampOffset):
(WebCore::SourceBuffer::append):
(WebCore::SourceBuffer::abort):
(WebCore::SourceBuffer::removedFromMediaSource):
(WebCore::SourceBuffer::isRemoved):
(WebCore::SourceBuffer::isOpen):
(WebCore::SourceBuffer::isEnded):

  • Modules/mediasource/SourceBuffer.h:

(WebCore):
(SourceBuffer):

  • Modules/mediasource/SourceBufferList.cpp:

(WebCore::SourceBufferList::SourceBufferList):
(WebCore::SourceBufferList::remove):
(WebCore::SourceBufferList::clear):

  • Modules/mediasource/SourceBufferList.h:

(SourceBufferList):

  • html/HTMLMediaElement.cpp:
  • platform/graphics/MediaSourcePrivate.h:

(WebCore):
(MediaSourcePrivate):

  • platform/graphics/SourceBufferPrivate.h:

(WebCore):
(SourceBufferPrivate): Contains methods extracted from MediaPlayerPrivate.
(WebCore::SourceBufferPrivate::SourceBufferPrivate):
(WebCore::SourceBufferPrivate::~SourceBufferPrivate):

Source/WebKit/chromium:

  • WebKit.gyp:
  • public/WebMediaSourceClient.h:

(WebKit):
(WebMediaSourceClient):

  • public/WebSourceBuffer.h:

(WebKit):
(WebSourceBuffer): Contains SourceBuffer methods extracted from WebMediaSource.
(WebKit::WebSourceBuffer::~WebSourceBuffer):

  • src/AssertMatchingEnums.cpp:
  • src/MediaSourcePrivateImpl.cpp:

(WebKit):
(WebKit::MediaSourcePrivateImpl::MediaSourcePrivateImpl):
(WebKit::MediaSourcePrivateImpl::addSourceBuffer):
(WebKit::MediaSourcePrivateImpl::duration):
(WebKit::MediaSourcePrivateImpl::setDuration):
(WebKit::MediaSourcePrivateImpl::endOfStream):

  • src/MediaSourcePrivateImpl.h:

(WebKit):
(MediaSourcePrivateImpl): Adapts MediaSourcePrivate interface to WebMediaSourceClient.
(WebKit::MediaSourcePrivateImpl::~MediaSourcePrivateImpl):

  • src/SourceBufferPrivateImpl.cpp:

(WebKit):
(WebKit::SourceBufferPrivateImpl::SourceBufferPrivateImpl):
(WebKit::SourceBufferPrivateImpl::buffered):
(WebKit::SourceBufferPrivateImpl::append):
(WebKit::SourceBufferPrivateImpl::abort):
(WebKit::SourceBufferPrivateImpl::setTimestampOffset):
(WebKit::SourceBufferPrivateImpl::removedFromMediaSource):

  • src/SourceBufferPrivateImpl.h:

(WebKit):
(SourceBufferPrivateImpl): Adapts SourceBufferPrivate interface to WebSourceBuffer.
(WebKit::SourceBufferPrivateImpl::~SourceBufferPrivateImpl):

  • src/WebMediaPlayerClientImpl.cpp:

(WebMediaSourceClientImpl):
(WebKit):
(WebSourceBufferImpl): Temporary implementation of WebSourceBuffer to keep things working

until the Chromium side changes land.

(WebKit::WebMediaSourceClientImpl::addSourceBuffer):
(WebKit::WebMediaSourceClientImpl::duration):
(WebKit::WebMediaSourceClientImpl::setDuration):
(WebKit::WebMediaSourceClientImpl::endOfStream):
(WebKit::WebSourceBufferImpl::WebSourceBufferImpl):
(WebKit::WebSourceBufferImpl::buffered):
(WebKit::WebSourceBufferImpl::append):
(WebKit::WebSourceBufferImpl::abort):
(WebKit::WebSourceBufferImpl::setTimestampOffset):
(WebKit::WebSourceBufferImpl::removedFromMediaSource):

  • src/WebMediaSourceImpl.cpp:
10:55 AM Changeset in webkit [144327] by Lucas Forschler
  • 1 copy in tags/Safari-537.31.11

New Tag.

10:53 AM Changeset in webkit [144326] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Handle Set-Cookie immediately even when loading is deferred
https://bugs.webkit.org/show_bug.cgi?id=111083

Patch by Joe Mason <jmason@rim.com> on 2013-02-28
Reviewed by Yong Li.

Internal PR: 298805
Internally Reviewed By: Leo Yang

Handle Set-Cookie headers immediately, even if loading is being deferred, since any request
created while loading is deferred should include all cookies received. (This especially
affects Set-Cookie headers sent with a 401 response - often this causes an auth dialog to be
opened, which defers loading, but the followup request using the credentials from the dialog
needs to include the cookie.)

This is safe because handleSetCookieHeader only updates the cookiejar, it doesn't call back
into the loader.

  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::notifyHeadersReceived):
(WebCore::NetworkJob::handleNotifyHeaderReceived):

10:51 AM Changeset in webkit [144325] by Lucas Forschler
  • 4 edits in trunk/Source

Versioning.

10:16 AM Changeset in webkit [144324] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Don't install unused XPCServices on Lion
<rdar://problem/13264712>

Rubber-stamped by Anders Carlsson

  • Configurations/BaseXPCService.xcconfig:
10:11 AM Changeset in webkit [144323] by dgrogan@chromium.org
  • 7 edits
    1 add in trunk/Source

IndexedDB: IO error when checking schema should destroy LevelDB directory
https://bugs.webkit.org/show_bug.cgi?id=110675

Reviewed by Adam Barth.

Source/WebCore:

Also some refactoring to remove IDBBackingStore's dependence on
static LevelDBDatabase methods. This facilitated the unit test.

New unit test - IDBIOErrorTest.CleanUpTest

  • Modules/indexeddb/IDBBackingStore.cpp:

(DefaultLevelDBFactory):
Wraps the previous behavior.
(WebCore::IDBBackingStore::open):
The default parameter provides the previous behavior, which is what
non-tests want.

  • Modules/indexeddb/IDBBackingStore.h:
  • platform/leveldb/LevelDBDatabase.h:

Source/WebKit/chromium:

  • WebKit.gyp:

This was cargo-culted. The component build wouldn't run otherwise.

  • WebKit.gypi:
  • tests/IDBCleanupOnIOErrorTest.cpp: Added.
10:00 AM Changeset in webkit [144322] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

Unreviewed, rolling out r144157.
http://trac.webkit.org/changeset/144157
https://bugs.webkit.org/show_bug.cgi?id=110794

It broke chromium windows build

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNamedConstructor):

  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:

(WebCore::V8TestNamedConstructorConstructorCallback):
(WebCore::V8TestNamedConstructorConstructor::GetTemplate):

  • bindings/v8/custom/V8HTMLImageElementConstructor.cpp:

(WebCore::v8HTMLImageElementConstructorMethodCustom):
(WebCore::V8HTMLImageElementConstructor::GetTemplate):

9:19 AM Changeset in webkit [144321] by peter@chromium.org
  • 2 edits in branches/chromium/1410/Source/WebKit/chromium

Merge 143917

[Chromium] Disable registerProtocolHandler on Android
https://bugs.webkit.org/show_bug.cgi?id=110481

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-02-25
Reviewed by Julien Chaffraix.

Chromium for Android has been exposing registerProtocolHandler, but the feature wasn't
actually wired up internally. Disable the feature to avoid breaking feature detection until
we can implement it properly. Previous attempt is at http://trac.webkit.org/changeset/133465
See the discussion of the future implementation at http://crbug.com/156386

  • features.gypi: Disable the flag for Android, enable it only for non-Android platforms.
  • src/ChromeClientImpl.h: Declaration is now guarded by the flag, not to break Android.

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/12382019

9:16 AM Changeset in webkit [144320] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Marking one more html5 test as timeout

Unreviewed expectations, removing a Debug modifier.

  • platform/chromium/TestExpectations:
9:16 AM Changeset in webkit [144319] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebKit2

BUILD FIX (r144221): SetSmartInsertDeleteEnabled should be wrapped in PLATFORM(MAC)

  • WebProcess/WebPage/WebPage.messages.in: Move

SetSmartInsertDeleteEnabled from USE(APPKIT) to PLATFORM(MAC).

9:05 AM Changeset in webkit [144318] by hyatt@apple.com
  • 14 edits
    2 adds in trunk

[New Multicolumn] Rewrite the painting/stacking model to be spec compliant.
https://bugs.webkit.org/show_bug.cgi?id=110624.

Reviewed by Simon Fraser.

Source/WebCore:

This patch implements a new painting and hit testing model for columns that is
spec-compliant with Section 3.5 of the multicolumn specification, which states:

"All column boxes in a multi-column element are in the same stacking context and
the drawing order of their contents is as specified in CSS 2.1. Column boxes do
not establish new stacking contexts."

What this statement means is that you cannot paint a layer and all its stacking
context descendants in a strip in each column, since some of those descendants
might actually "break out" of the pagination (like fixed positioned descendants)
and overlap multiple columns. In addition clips may apply across pagination
boundaries, and any overlap caused by opacity has to do the right thing and
treat the paginated and unpaginated components together as a single unit.

The solution to this problem is to introduce the concept of a LayerFragment. Now
all layers when painting or hit testing compute a fragment list, and that list
is then walked in order to do painting and hit testing of layers. In the simple
unpaginated case, a layer has one LayerFragment, but in the case of columns the
layer may be broken up into multiple fragments representing boxes in separate
columns.

Much of this patch consists of refactoring all of the painting and hit testing
code to operate on these fragments.

Test: fast/multicol/mixed-positioning-stacking-order.html.

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::collectLayerFragments):
This method is called by the RenderLayer code to fetch the layer fragments from
the regions of a flow thread. The flow thread just turns around and calls into
each of its regions one by one to get the fragments from each region.

(WebCore::RenderFlowThread::fragmentsBoundingBox):
A new function that collects LayerFragments and then determines the bounding
box that encloses all of the fragments.

  • rendering/RenderFlowThread.h:

Declarations of the new methods for obtaining layer fragments and bounding
box information for fragments.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::updateLayerPositions):
(WebCore::RenderLayer::updatePagination):
RenderLayers now track an enclosing pagination layer. If this is set, then the layer knows it
needs to check with the enclosing pagination layer's flow thread renderer to
obtain layer fragments.

(WebCore::transparencyClipBox):
Modified to obtain a fragments bounding box so that opacity can operate correctly on
column boxes.

(WebCore::accumulateOffsetTowardsAncestor):
This method has been patched to allow for fixed positioned objects to escape
in-flow RenderFlowThreads. Our in-flow RenderFlowThreads behave differently from
CSS Regions flow threads in that they aren't necesssarily acting as the containing
block for all of their descendants. Content is allowed to "escape" from the flow
thread.

(WebCore::RenderLayer::collectFragments):
A new method that collects fragments from the flow thread and sets up the appropriate
clips and translations on each fragment.

(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::paintList):
(WebCore::RenderLayer::updatePaintingInfoForFragments):
(WebCore::RenderLayer::paintTransformedLayerIntoFragments):
(WebCore::RenderLayer::paintBackgroundForFragments):
(WebCore::RenderLayer::paintForegroundForFragments):
(WebCore::RenderLayer::paintForegroundForFragmentsWithPhase):
(WebCore::RenderLayer::paintOutlineForFragments):
(WebCore::RenderLayer::paintMaskForFragments):
(WebCore::RenderLayer::paintOverflowControlsForFragments):
Refactoring of painting to break all individual painting steps out into methods that walk over
fragment boxes. This actually had the side effect of making the main painting function,
paintLayerContents, much cleaner and easier to read. :)

(WebCore::RenderLayer::hitTest):
(WebCore::RenderLayer::createLocalTransformState):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::hitTestContentsForFragments):
(WebCore::RenderLayer::hitTestResizerInFragments):
(WebCore::RenderLayer::hitTestTransformedLayerInFragments):
(WebCore::RenderLayer::hitTestContents):
(WebCore::RenderLayer::hitTestList):
Refactoring of hit testing to break all individual hit testing steps out into methods that walk over
fragment boxes.

(WebCore::RenderLayer::backgroundClipRect):
Modified to avoid using the clip rects cache when crossing into different pagination contexts,
e.g., from unpaginated to paginated.

(WebCore::RenderLayer::intersectsDamageRect):
(WebCore::RenderLayer::boundingBox):
Modified boundingBox to work with fragments. A new flag is used to indicate whether or not
the bounds of fragments or the original unsplit box are being computed.

(WebCore::RenderLayer::collectLayers):
Fix layer collection so that in-flow RenderFlowThreads can still be collected, since in-flow
RenderFlowThreads do not establish stacking contexts.

  • rendering/RenderLayer.h:

(WebCore::ClipRect::moveBy):
Added a moveBy method that just wrap the corresponding LayoutRect method.

(LayerFragment):
(WebCore::LayerFragment::LayerFragment):
(WebCore::LayerFragment::setRects):
(WebCore::LayerFragment::moveBy):
(WebCore::LayerFragment::intersect):
(WebCore::RenderLayer::enclosingPaginationLayer):
The new LayerFragment struct. Holds clips and translation information for each fragment box.

(WebCore::RenderLayer::isOutOfFlowRenderFlowThread):
Helper method for determining if the renderer is an out-of-flow RenderFlowThread.

  • rendering/RenderMultiColumnBlock.cpp:

(WebCore::createMultiColumnFlowThreadStyle):
Change the flow thread style to no longer establish a stacking context.

(WebCore::RenderMultiColumnBlock::layoutBlock):
Patched to move the flow thread to a position that allows it to be untranslated in the
initial column.

(WebCore):

  • rendering/RenderMultiColumnBlock.h:

(RenderMultiColumnBlock):
layoutBlock is subclassed to tweak the flow thread's position.

  • rendering/RenderMultiColumnFlowThread.h:

(RenderMultiColumnFlowThread):
The flow thread for multi-column blocks implements collectLayerFragments to hand back LayerFragment
information based off its RenderMultiColumnSets.

  • rendering/RenderMultiColumnSet.cpp:

(WebCore::RenderMultiColumnSet::paintObject):
Changed to no longer paint column contents, since the layer code is just doing that now.

(WebCore::RenderMultiColumnSet::collectLayerFragments):
The method that figures out what columns are intersected by a layer and hands back
initial fragment information.

  • rendering/RenderMultiColumnSet.h:

(RenderMultiColumnSet):
Declaration of collectLayerFragments.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::container):
Patch container() to allow fixed positioned objects to escape in-flow RenderFlowThreads.

  • rendering/RenderObject.h:

(WebCore::RenderObject::isInFlowRenderFlowThread):
(WebCore::RenderObject::isOutOfFlowRenderFlowThread):
Methods for distinguishing between in-flow and out-of-flow RenderFlowThreads.

(WebCore::RenderObject::canContainFixedPositionObjects):
Patch canContainFixedPositionObjects() to allow fixed positioned objects to escape
in-flow RenderFlowThreads.

  • rendering/RenderRegion.h:

(WebCore::RenderRegion::collectLayerFragments):
(RenderRegion):
The virtual functions on Region for fragment collection.

LayoutTests:

  • fast/multicol/mixed-positioning-stacking-order-expected.html: Added.
  • fast/multicol/mixed-positioning-stacking-order.html: Added.
8:57 AM Changeset in webkit [144317] by vivek.vg@samsung.com
  • 2 edits in trunk/Source/WebCore

Web Inspector: Adding existing key in DOMStorageItemsView leaves it inconsistent state
https://bugs.webkit.org/show_bug.cgi?id=111061

Reviewed by Alexander Pavlov.

The view must be checked for all the rows with the matching keys. Only the first one would be updated
with the new value while the others must be removed from the grid. Also in case there are various key/value
pairs, the changed node should be selected and revealed in the grid.

No new tests as UI related minor change.

  • inspector/front-end/DOMStorageItemsView.js:

(WebInspector.DOMStorageItemsView.prototype._domStorageItemUpdated):

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

[BlackBerry] User credentials is not correctly handled
https://bugs.webkit.org/show_bug.cgi?id=110994

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-02-28
Reviewed by Yong Li.

WTF::String::utf8 no longer receives a bool, see r134173.

  • platform/network/blackberry/CredentialBackingStore.cpp:

(WebCore::CredentialBackingStore::encryptedString):

8:06 AM Changeset in webkit [144315] by Lucas Forschler
  • 1 copy in tags/Safari-537.32

New Tag.

7:27 AM Changeset in webkit [144314] by kareng@chromium.org
  • 2 edits in branches/chromium/1425/Source/WebCore/bindings

Revert 144142

[V8] Remove Event::dataTransferAttrGetterCustom() and Event::valueAttrSetterCustom()
https://bugs.webkit.org/show_bug.cgi?id=110666

Reviewed by Adam Barth.

Event::dataTransferAttrGetterCustom() is not used
(i.e. the custom method is not registered to V8).
Event::valueAttrSetterCustom() is declared but not
implemented. We can remove them.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeaderCustomCall):

  • bindings/v8/custom/V8EventCustom.cpp:

TBR=haraken@chromium.org
Review URL: https://codereview.chromium.org/12386021

7:26 AM Changeset in webkit [144313] by kareng@chromium.org
  • 3 edits in branches/chromium/1425/Source/WebCore/bindings

Revert 144157

[V8] Generate a wrapper function for named constructor callbacks
https://bugs.webkit.org/show_bug.cgi?id=110794

Reviewed by Adam Barth.

This would be the final step of generating wrapper functions.
The patch generates the following wrapper function for named
constructor callbacks.

Handle<Value> namedConstructorCallback(...)
{

return namedConstructor(...);

}

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNamedConstructor):

  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:

(WebCore::namedConstructor):
(WebCore::namedConstructorCallback):
(WebCore):
(WebCore::V8TestNamedConstructorConstructor::GetTemplate):

  • bindings/v8/custom/V8HTMLImageElementConstructor.cpp:

(WebCore::namedConstructor):
(WebCore::namedConstructorCallback):
(WebCore):
(WebCore::V8HTMLImageElementConstructor::GetTemplate):

TBR=haraken@chromium.org
Review URL: https://codereview.chromium.org/12377018

7:25 AM Changeset in webkit [144312] by kareng@chromium.org
  • 3 edits in branches/chromium/1425/Source/WebCore/bindings/scripts

Revert 144194

[V8] Generate a wrapper function for ReplaceableAttrSetter()
https://bugs.webkit.org/show_bug.cgi?id=110781

Reviewed by Adam Barth.

This is one of steps to insert TRACE_EVENT_STATE() macros
into DOM bindings. This patch introduces an indirection function
for xxxReplaceableAttrSetter(), like this:

For non-custom replaceable setters (Note: One implementation
is enough for all replaceable setters in one interface.)
void V8XXX:::ReplaceableAttrSetterCallback(...) {

V8XXX::ReplaceableAttrSetter(...);

}

For custom replaceable setters. (Note: This is treated as
a normal custom setter.)
void xxxAttrSetterCallback(...) {

return xxxAttrSetterCustom(...);

}

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateReplaceableAttrSetterCallback):
(GenerateReplaceableAttrSetter):
(GenerateSingleBatchedAttribute):
(GenerateImplementation):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::TestObjReplaceableAttrSetterCallback):
(TestObjV8Internal):
(WebCore):

  • bindings/scripts/test/V8/V8TestTypedefs.cpp:

(WebCore::TestTypedefsV8Internal::TestTypedefsReplaceableAttrSetterCallback):
(TestTypedefsV8Internal):

TBR=haraken@chromium.org
Review URL: https://codereview.chromium.org/12389023

7:24 AM Changeset in webkit [144311] by kareng@chromium.org
  • 1 add in branches/chromium/1425/codereview.settings

for drovering

7:19 AM Changeset in webkit [144310] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.
https://bugs.webkit.org/show_bug.cgi?id=111058.

  • platform/qt/TestExpectations: Skipped failing test after r144236.
7:17 AM Changeset in webkit [144309] by liachen@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Disable auto-filling password in forms when auto-form-filling is not enabled.
https://bugs.webkit.org/show_bug.cgi?id=111006

Internal PR: 295181
Internal reviewed by Joe Mason.

Reviewed by Yong Li.

Check WebSettings::isFormAutofillEnabled() before doing user credential form fill stuff.

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchDidFinishLoad):
(WebCore::FrameLoaderClientBlackBerry::dispatchWillSendSubmitEvent):

7:15 AM Changeset in webkit [144308] by kareng@chromium.org
  • 1 copy in branches/chromium/1425

brachning for 1425

7:14 AM Changeset in webkit [144307] by liachen@rim.com
  • 2 edits in trunk/Source/WebCore

[BlackBerry] User credentials are not correctly handled for non-browser usage
https://bugs.webkit.org/show_bug.cgi?id=111032

Internal PR: 295181
Internal reviewed by Joe Mason.

Reviewed by Yong Li.

Use encrypted password as binary data when calling SQLiteStatement::bindBlob(), in
stead of using it as a normal WTF::String.

No new tests as this causes no expected behaviour change.

  • platform/network/blackberry/CredentialBackingStore.cpp:

(WebCore::CredentialBackingStore::addLogin):
(WebCore::CredentialBackingStore::updateLogin):

7:03 AM Changeset in webkit [144306] by abecsi@webkit.org
  • 3 edits in trunk/Tools

[Qt] Enable thin archives before parsing the project files

Rubber-stamped by Simon Hausmann.

The targetSubDir() function can be called before default_post.prf has been
parsed therefore the gnu_thin_archives option has to be set in default_pre.prf
which is parsed before the main project file.
This issue was revealed by r144299 and fixes the clean build.

  • qmake/mkspecs/features/default_post.prf:
  • qmake/mkspecs/features/default_pre.prf:
6:53 AM Changeset in webkit [144305] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: "loadScript" function to load scripts via xhr
https://bugs.webkit.org/show_bug.cgi?id=110879

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-02-28
Reviewed by Pavel Feldman.

Create an alias for "importScript" function and use it in those cases
which assume lazy script loading.

No new tests.

  • inspector/front-end/Panel.js:

(WebInspector.PanelDescriptor.prototype.panel):

  • inspector/front-end/SourceFrame.js:

(WebInspector.SourceFrame):

  • inspector/front-end/utilities.js:
6:43 AM Changeset in webkit [144304] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Web Inspector: Move profiler tools into separate panels
https://bugs.webkit.org/show_bug.cgi?id=109832

Patch by Alexei Filippov <alph@chromium.org> on 2013-02-28
Reviewed by Yury Semikhatsky.

This is a first part of the fix that puts each profiler tool into a separate panel.
The fix introduces separate panels for each profiler type.
There are now six panel (including experimental):

  1. JS CPU profiler
  2. CSS Selector profiler
  3. JS Heap profiler
  4. Canvas profier
  5. Native memory snapshots
  6. Native memory distribution

The new functionality is put behind experimental flag.

  • inspector/front-end/ProfileLauncherView.js:

(WebInspector.ProfileLauncherView):
(WebInspector.ProfileLauncherView.prototype.addProfileType):

  • inspector/front-end/ProfilesPanel.js:

(WebInspector.ProfileHeader.prototype.view):
(WebInspector.ProfileHeader.prototype.createView):
(WebInspector.ProfilesPanel):
(WebInspector.ProfilesPanel.prototype._handleContextMenuEvent):
(WebInspector.ProfilesPanel.prototype._addProfileHeader):
(WebInspector.ProfilesPanel.prototype._removeProfileHeader):
(WebInspector.ProfilesPanel.prototype._showProfile):
(WebInspector.ProfilesPanel.prototype._searchableViews):
(WebInspector.ProfileSidebarTreeElement.prototype.handleContextMenuEvent):
(WebInspector.ProfileGroupSidebarTreeElement):
(WebInspector.ProfileGroupSidebarTreeElement.prototype.onselect):
(WebInspector.CPUProfilerPanel):
(WebInspector.CSSSelectorProfilerPanel):
(WebInspector.HeapProfilerPanel):
(WebInspector.CanvasProfilerPanel):
(WebInspector.MemoryChartProfilerPanel):
(WebInspector.NativeMemoryProfilerPanel):

  • inspector/front-end/Settings.js:

(WebInspector.ExperimentsSettings):

  • inspector/front-end/inspector.css:

(.toolbar-item.cpu-profiler .toolbar-icon):
(.toolbar-item.css-profiler .toolbar-icon):
(.toolbar-item.heap-profiler .toolbar-icon):
(.toolbar-item.canvas-profiler .toolbar-icon):
(.toolbar-item.memory-chart-profiler .toolbar-icon):
(.toolbar-item.memory-snapshot-profiler .toolbar-icon):

  • inspector/front-end/inspector.js:

(WebInspector._panelDescriptors):

6:34 AM Changeset in webkit [144303] by schenney@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

RenderTableCellDeathTest unit test fails on mac
https://bugs.webkit.org/show_bug.cgi?id=110992

Unreviewed revert of all changes. The problem seems to have resolved.

  • tests/RenderTableCellTest.cpp: Remove Mac disable code.
6:22 AM Changeset in webkit [144302] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening, update expectation

  • platform/chromium/TestExpectations: Add ImageOnlyFailure for compositing/rtl/rtl-iframe-fixed-overflow.html
6:16 AM Changeset in webkit [144301] by toyoshim@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, quick test breakage fix for android
https://bugs.webkit.org/show_bug.cgi?id=110740

Patch by Seigo Nonaka <nona@chromium.org> on 2013-02-27

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::textInputInfo): Reconstruct condition check order

5:57 AM Changeset in webkit [144300] by allan.jensen@digia.com
  • 4 edits in trunk

[Qt] Enable CANVAS_PATH flag
https://bugs.webkit.org/show_bug.cgi?id=108508

Reviewed by Simon Hausmann.

Tools:

Also enable CANVAS_PATH flag for Qt.

  • qmake/mkspecs/features/features.pri:

LayoutTests:

Unskip CANVAS_PATH tests.

  • platform/qt/TestExpectations:
5:41 AM Changeset in webkit [144299] by abecsi@webkit.org
  • 3 edits in trunk/Tools

[Qt][TestWebKitAPI] The activeBuildConfig() function has been replaced with targetSubDir()

Rubber-stamped by Csaba Osztrogonác.

Besides suppressing a warning about the non-existing function this
fixes the build if there is a subdirectory (eg. debug-and-release).

  • TestWebKitAPI/InjectedBundle.pri:
  • TestWebKitAPI/TestWebKitAPI.pri:
5:05 AM Changeset in webkit [144298] by keishi@webkit.org
  • 2 edits in trunk/Source/WebCore

Add calendar header for new calendar picker
https://bugs.webkit.org/show_bug.cgi?id=110967

Reviewed by Kent Tamura.

The calendar header showing the current month and containing navigation
buttons, which will be part of the new calendar picker (Bug 109439).

No new tests. Code is not yet used.

  • Resources/pagepopups/calendarPicker.js:

(MonthPopupButton): Button that opens the month popup.
(MonthPopupButton.prototype._shouldUseShortMonth): Returns true if we should use the short month format in order to fit in the available width.
(MonthPopupButton.prototype.setCurrentMonth): Sets the month to the button label.
(MonthPopupButton.prototype.onClick): Dispatches buttonClick event which will tell the calendar picker to open the month popup.
(CalendarNavigationButton): A square button that fires repeatedly while the mouse is pressed down.
(CalendarNavigationButton.prototype.setDisabled):
(CalendarNavigationButton.prototype.onClick):
(CalendarNavigationButton.prototype.onMouseDown): Sets the timer to fire while the mouse is pressed down.
(CalendarNavigationButton.prototype.onWindowMouseUp):
(CalendarNavigationButton.prototype.onRepeatingClick):
(CalendarHeaderView): View containing month popup button and the navigation buttons.
(CalendarHeaderView.prototype.onCurrentMonthChanged): Sets the MonthPopupButton label and checks if the navigation buttons should be disabled.
(CalendarHeaderView.prototype.onNavigationButtonClick):
(CalendarHeaderView.prototype.setDisabled): Used to disable all the buttons while the month popup is open.

4:55 AM Changeset in webkit [144297] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled Chromium DEPS to r184931. Requested by
"Takashi Toyoshima" <toyoshim@chromium.org> via sheriffbot.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-28

  • DEPS:
4:33 AM Changeset in webkit [144296] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt/TestExpectations: Skipped failing test after r144265.
4:28 AM Changeset in webkit [144295] by pfeldman@chromium.org
  • 6 edits in trunk

Web Inspector: class console-formatted-string renamed to console-formatted- ?
https://bugs.webkit.org/show_bug.cgi?id=110881

Reviewed by Vsevolod Vlasov.

Source/WebCore:

  • inspector/front-end/ConsoleMessage.js:

(WebInspector.ConsoleMessageImpl.prototype._renderPropertyPreview):

LayoutTests:

  • http/tests/inspector/console-test.js:

(initialize_ConsoleTest.InspectorTest.dumpConsoleMessages):

  • inspector/console/console-object-preview-expected.txt:
  • inspector/console/console-object-preview.html:
4:28 AM Changeset in webkit [144294] by mikhail.pozdnyakov@intel.com
  • 2 edits in trunk/Tools

[EFL][WTR] WTR cannot load injected bundle
https://bugs.webkit.org/show_bug.cgi?id=111063

Reviewed by Csaba Osztrogonác.

WTR was not able to load injected bundle because of undefined
symbols for AccessibilityUIElement::scrollToMakeVisible().
Adding empty implementation of this function to AccessibilityUIElementAtk.cpp
solves the problem.

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::scrollToMakeVisible):

4:26 AM Changeset in webkit [144293] by toyoshim@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening, update expectation

  • platform/chromium/TestExpectations:
4:22 AM Changeset in webkit [144292] by mkwst@chromium.org
  • 5 edits
    4 adds in trunk

XSSAuditor should strip formaction attributes from input and button elements.
https://bugs.webkit.org/show_bug.cgi?id=110975

Reviewed by Daniel Bates.

Source/WebCore:

The 'formaction' attribute of 'input' and 'button' elements is just as
dangerous as the 'action' attribute of 'form' elements. This patch
teaches the XSSAuditor how to avoid them.

Tests: http/tests/security/xssAuditor/formaction-on-button.html

http/tests/security/xssAuditor/formaction-on-input.html

  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::filterStartToken):
(WebCore::XSSAuditor::filterInputToken): Added.
(WebCore::XSSAuditor::filterButtonToken): Added.

  • html/parser/XSSAuditor.h:

Create filters for 'input' and 'button' elements, which currently
only have the effect of filtering the 'formaction' attribute.

LayoutTests:

  • http/tests/security/xssAuditor/formaction-on-button-expected.txt: Added.
  • http/tests/security/xssAuditor/formaction-on-button.html: Added.
  • http/tests/security/xssAuditor/formaction-on-input-expected.txt: Added.
  • http/tests/security/xssAuditor/formaction-on-input.html: Added.
  • http/tests/security/xssAuditor/resources/echo-intertag.pl:

Support 'showFormaction' as a new option to write out formaction values.

4:08 AM Changeset in webkit [144291] by toyoshim@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening, clean up expectations to remove lint errors #1.

  • platform/chromium/TestExpectations:
3:58 AM Changeset in webkit [144290] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

REGRESSION(r144169): It broke clipping
https://bugs.webkit.org/show_bug.cgi?id=111065

Reviewed by Noam Rosenthal.

The clipstack was not marked dirty when new clips were added
leading to clipping never being applied.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::ClipStack::push):

3:50 AM Changeset in webkit [144289] by commit-queue@webkit.org
  • 3 edits
    1 add in trunk/Source/WebCore

OpenCL implementation of FEImage SVG Filter.
https://bugs.webkit.org/show_bug.cgi?id=110752

Patch by Tamas Czene <tczene@inf.u-szeged.hu> on 2013-02-28
Reviewed by Zoltan Herczeg.

The result of the image is uploaded to an OpenCL buffer.

  • Target.pri:
  • platform/graphics/gpu/opencl/OpenCLFEImage.cpp: Added.

(WebCore):
(WebCore::FEImage::platformApplyOpenCL):

  • svg/graphics/filters/SVGFEImage.h:

(FEImage):

3:35 AM Changeset in webkit [144288] by mkwst@chromium.org
  • 5 edits
    2 adds in trunk

Web Inspector: Make it obvious where command line functions come from
https://bugs.webkit.org/show_bug.cgi?id=62367

Reviewed by Pavel Feldman.

Source/WebCore:

This patch adds a custom .toString() method on the various command-line
API methods that are bound in the inspector. Rather than dumping the
function text, we now model the response after that of native methods:
"function () { [Command Line API] }".

Test: inspector/console/console-native-function-to-string.html

  • inspector/InjectedScriptSource.js:

Added a function to the CommandLineAPI constructor that creates a
custom toString() method for each command-line API method.

LayoutTests:

  • inspector/console/console-native-function-to-string-expected.txt: Added.
  • inspector/console/console-native-function-to-string.html: Added.
3:15 AM Changeset in webkit [144287] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviwed gardening. Skip test that made to crash other test.

  • platform/qt-5.0-wk1/TestExpectations:
3:06 AM Changeset in webkit [144286] by toyoshim@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening, update test expectation

  • platform/chromium/TestExpectations:
2:47 AM Changeset in webkit [144285] by toyoshim@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, gardening.
https://bugs.webkit.org/show_bug.cgi?id=111062

  • platform/chromium/TestExpectations:
2:35 AM Changeset in webkit [144284] by zandobersek@gmail.com
  • 9 edits
    7 adds in trunk/LayoutTests

Unreviewed GTK gardening.

Generating missing baselines for an octet of media tests and removing related expectations.

  • platform/gtk/TestExpectations: Also removing expectation for

fast/multicol/newmulticol/column-rules-fixed-height.html, the test is now passing.

  • platform/gtk/media/audio-controls-rendering-expected.png: Added.
  • platform/gtk/media/audio-controls-rendering-expected.txt: Added.
  • platform/gtk/media/controls-after-reload-expected.png: Added.
  • platform/gtk/media/controls-after-reload-expected.txt:
  • platform/gtk/media/controls-strict-expected.png: Added.
  • platform/gtk/media/controls-strict-expected.txt:
  • platform/gtk/media/controls-styling-strict-expected.txt:
  • platform/gtk/media/controls-without-preload-expected.png: Added.
  • platform/gtk/media/controls-without-preload-expected.txt:
  • platform/gtk/media/video-controls-rendering-expected.png:
  • platform/gtk/media/video-controls-rendering-expected.txt:
  • platform/gtk/media/video-display-toggle-expected.png: Added.
  • platform/gtk/media/video-display-toggle-expected.txt:
  • platform/gtk/media/video-playing-and-pause-expected.png: Added.
  • platform/gtk/media/video-playing-and-pause-expected.txt:
2:15 AM Changeset in webkit [144283] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Adding failure expectations for tests added in r144236 and r144258.
2:07 AM Changeset in webkit [144282] by mkwst@chromium.org
  • 2 edits in trunk/LayoutTests

Cleanup: XSSAuditor's form[action] tests should be manually executable.
https://bugs.webkit.org/show_bug.cgi?id=111049

Reviewed by Daniel Bates.

We currently check whether we're running in a DRT-like world before
creating user-visible output for XSSAuditor's form[action] tests. This
patch removes that restriction in order to allow manually-run tests
to show some reasonable output.

  • http/tests/security/xssAuditor/resources/echo-intertag.pl:

Drop the 'if (window.testRunner)' from the 'showAction' branch in
order to allow manually running the test.

1:49 AM Changeset in webkit [144281] by toyoshim@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening
https://bugs.webkit.org/show_bug.cgi?id=111054

  • platform/chromium/TestExpectations:
1:41 AM Changeset in webkit [144280] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skipped failing ref html tests.

  • platform/qt/TestExpectations:
1:39 AM Changeset in webkit [144279] by Simon Hausmann
  • 2 edits in trunk/Source/JavaScriptCore

[Qt][Mac] Fix massive parallel builds

Reviewed by Tor Arne Vestbø.

There exists a race condition that LLIntDesiredOffsets.h is written to
by two parllel instances of the ruby script. This patch ensures that similar to the output file,
the generated file is also prefixed according to the build configuration.

  • LLIntOffsetsExtractor.pro:
1:39 AM Changeset in webkit [144278] by ddkilzer@apple.com
  • 4 edits in trunk/Source/WebCore

ResourceRequestCFNet.cpp won't compile after r144216
<http://webkit.org/b/111034>

Reviewed by Alexey Proskuryakov.

  • WebCore.exp.in: Move Mac-only symbol into !PLATFORM(IOS)

section. Update iOS-only symbol to add argument.

  • platform/network/cf/ResourceRequest.h: Remove unused method

declaration.

  • platform/network/cf/ResourceRequestCFNet.cpp:

(WebCore::ResourceRequest::doUpdatePlatformHTTPBody): Fix typos.
Add static_cast<CFStringRef>().
(WebCore::ResourceRequest::doUpdateResourceHTTPBody): Fix another
typo.

1:33 AM Changeset in webkit [144277] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Add a failing test expectation to navigation-should-abort.html on Mac WebKit1.
The failure is tracked by the bug 111052.

  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:
1:32 AM Changeset in webkit [144276] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Misc build fixes
https://bugs.webkit.org/show_bug.cgi?id=110448

Patch by Alberto Garcia <albgarcia@rim.com> on 2013-02-28
Reviewed by Rob Buis.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::executeJavaScript):
WebString was replaced with BlackBerry::Platform::String in r131316.
(BlackBerry::WebKit::WebPagePrivate::didChangeSettings):
Some webdatabase APIs are encapuslated in DatabaseManager since r137520.
(BlackBerry::WebKit::WebPagePrivate::postponeDocumentStyleRecalc):
Document::isPendingStyleRecalc() was renamed to hasPendingStyleRecalc() in r129844.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::updateFormState):
Add closing brace that was missing in r142482.

1:26 AM Changeset in webkit [144275] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[BlackBerry] TestRunnerBlackBerry: remove layerTreeAsText, it's gone from upstream
https://bugs.webkit.org/show_bug.cgi?id=110464

Patch by Alberto Garcia <albgarcia@rim.com> on 2013-02-28
Reviewed by Rob Buis.

  • DumpRenderTree/blackberry/TestRunnerBlackBerry.cpp:
1:25 AM Changeset in webkit [144274] by commit-queue@webkit.org
  • 5 edits in trunk

[BlackBerry] DumpRenderTreeSupport: update the set position methods
https://bugs.webkit.org/show_bug.cgi?id=110578

Patch by Xan Lopez <xlopez@rim.com> on 2013-02-28
Reviewed by Rob Buis.

TestRunner::setMockGeolocationPosition() changed in r130416:
http://trac.webkit.org/changeset/130416/trunk/Tools/DumpRenderTree/TestRunner.h

Source/WebKit/blackberry:

  • WebKitSupport/DumpRenderTreeSupport.cpp:

(DumpRenderTreeSupport::setMockGeolocationPosition):

  • WebKitSupport/DumpRenderTreeSupport.h:

(DumpRenderTreeSupport):

Tools:

DumpRenderTreeSupport::setMockGeolocationError() was renamed to
setMockGeolocationPositionUnavailableError() in r129444:
http://trac.webkit.org/changeset/129444/trunk/Source/WebKit/blackberry/WebKitSupport/DumpRenderTreeSupport.h

  • DumpRenderTree/blackberry/TestRunnerBlackBerry.cpp:

(TestRunner::setMockGeolocationPosition):
(TestRunner::setMockGeolocationPositionUnavailableError):

1:17 AM Changeset in webkit [144273] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[BlackBerry] WorkQueueItemBlackBerry: use the new FrameLoader API
https://bugs.webkit.org/show_bug.cgi?id=110465

Patch by Xan Lopez <xlopez@rim.com> on 2013-02-28
Reviewed by Rob Buis.

  • DumpRenderTree/blackberry/WorkQueueItemBlackBerry.cpp:

(LoadItem::invoke):

1:12 AM Changeset in webkit [144272] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

A couple more tweaks to TestExpectations after the threaded parser.

  • platform/chromium/TestExpectations:
12:56 AM Changeset in webkit [144271] by tkent@chromium.org
  • 8 edits in trunk

Unreviewed, rolling out r144184.
http://trac.webkit.org/changeset/144184
https://bugs.webkit.org/show_bug.cgi?id=110974

The change didn't fix all of the problems.

Source/WebCore:

  • html/BaseMultipleFieldsDateAndTimeInputType.cpp:
  • html/BaseMultipleFieldsDateAndTimeInputType.h:

(BaseMultipleFieldsDateAndTimeInputType):

LayoutTests:

  • fast/forms/date/date-appearance-basic-expected.txt:
  • fast/forms/date/date-appearance-basic.html:
  • platform/chromium-mac/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium/TestExpectations:
12:42 AM Changeset in webkit [144270] by toyoshim@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening, mark two tests as slow.
https://bugs.webkit.org/show_bug.cgi?id=111038
https://bugs.webkit.org/show_bug.cgi?id=111046

  • platform/chromium/TestExpectations:
12:27 AM WebKitIDL edited by kojih@chromium.org
(diff)
12:18 AM Changeset in webkit [144269] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

Apparently Failure does not include ImageOnlyFailure.

  • platform/chromium/TestExpectations:
12:07 AM Changeset in webkit [144268] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed.

The version of this file I landed in
http://trac.webkit.org/changeset/144262 appears to have been
ever-so-slightly incorrect.

  • platform/chromium/inspector/timeline/timeline-script-tag-1-expected.txt:

Feb 27, 2013:

11:57 PM Changeset in webkit [144267] by rniwa@webkit.org
  • 2 edits in trunk/Tools

PerfTestRunner doesn't need _needs_http and _has_http_lock
https://bugs.webkit.org/show_bug.cgi?id=111037

Reviewed by Adam Barth.

Delete these variables in favor of using a local variable.

Member variables are like global variables. They introduce implicit dependencies
between member functions.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner.init):
(PerfTestsRunner._start_http_servers):
(PerfTestsRunner):
(PerfTestsRunner._stop_http_servers):
(PerfTestsRunner.run):

11:55 PM Changeset in webkit [144266] by commit-queue@webkit.org
  • 7 edits
    1 add in trunk

Unreviewed, rolling out r144224.
http://trac.webkit.org/changeset/144224
https://bugs.webkit.org/show_bug.cgi?id=111045

Caused plugins/pass-different-npp-struct.html to time out
(Requested by abarth on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-27

Tools:

  • DumpRenderTree/TestNetscapePlugIn/Tests/PassDifferentNPPStruct.cpp:

(PassDifferentNPPStruct::NPP_SetWindow):

  • DumpRenderTree/TestNetscapePlugIn/main.cpp:

(NPP_SetWindow):

LayoutTests:

  • platform/mac-wk2/plugins/netscape-plugin-setwindow-size-2-expected.txt: Added.
  • plugins/netscape-plugin-setwindow-size-2.html:
  • plugins/netscape-plugin-setwindow-size.html:
  • plugins/pass-different-npp-struct.html:
11:50 PM Changeset in webkit [144265] by eustas@chromium.org
  • 7 edits in trunk/Source/WebCore

Web Inspector: [Protocol] Genarate JS enum definitions.
https://bugs.webkit.org/show_bug.cgi?id=110461

Reviewed by Pavel Feldman.

Generating corresponding type annotations
would help to compiler to point errors.

  • inspector/CodeGeneratorInspector.py: Generate "registerEnum" records.
  • inspector/InjectedScriptSource.js: Shadow compiler warning.
  • inspector/front-end/InspectorBackend.js:

Added "registerEnum". Added "registerEnum" generation.

  • inspector/front-end/NetworkManager.js: Use enum instead of literal.
  • inspector/generate_protocol_externs.py: Generate enum typedefs.
11:44 PM Changeset in webkit [144264] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed.

Update some test expectations based on the threaded parser behavior.
These look like test integration issues rather than actual bugs in the
parser. We will investigate them offline.

  • platform/chromium/TestExpectations:
10:44 PM Changeset in webkit [144263] by commit-queue@webkit.org
  • 12 edits
    2 adds in trunk

INPUT_MULTIPLE_FIELDS_UI: Step-up/-down of hour field should respect min/max attributes
https://bugs.webkit.org/show_bug.cgi?id=109555

Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2013-02-27
Reviewed by Kent Tamura.

Source/WebCore:

Make step-up/-down of the hour field respect the min/max attributes of the element.
Note that it still accepts any keyboard inputs (the element
becomes 'invalid' state when out-of-range values entered).
Also, disable the hour field and/or the AMPM field when there is only single possible value.

Test: fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-readonly-subfield.html

fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-stepup-stepdown-from-renderer.html
fast/forms/time-multiple-fields/time-multiple-fields-readonly-subfield.html
fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer.html

  • html/TimeInputType.cpp:

(WebCore::TimeInputType::setupLayoutParameters): Populates layoutParameters.{minimum,maximum}.

  • html/shadow/DateTimeEditElement.cpp:

(DateTimeEditBuilder): Add data fields for min/max of day and hour fields.
(WebCore::DateTimeEditBuilder::DateTimeEditBuilder): Set newly added data members.
(WebCore::DateTimeEditBuilder::visitField): Pass minimum/maximum value to the month field constructors.
(WebCore::DateTimeEditBuilder::shouldAMPMFieldDisabled): Added.
(WebCore::DateTimeEditBuilder::shouldDayOfMonthFieldDisabled):
(WebCore::DateTimeEditBuilder::shouldHourFieldDisabled):
Disables the hour field when min, max, and value have the same hour, except when the minute
field is disabled (by step attribute), because we need to leave at least one field editable.

  • html/shadow/DateTimeFieldElements.cpp:

(WebCore::DateTimeHourFieldElementBase::DateTimeHourFieldElementBase):
(WebCore::DateTimeHourFieldElementBase::initialize):
(WebCore::DateTimeHourFieldElementBase::setValueAsDate):
(WebCore::DateTimeHourFieldElementBase::setValueAsDateTimeFieldsState):
(WebCore::DateTimeHour11FieldElement::DateTimeHour11FieldElement):
(WebCore::DateTimeHour11FieldElement::create):
(WebCore::DateTimeHour11FieldElement::populateDateTimeFieldsState):
(WebCore::DateTimeHour11FieldElement::setValueAsInteger):
(WebCore::DateTimeHour11FieldElement::clampValueForHardLimits):
(WebCore::DateTimeHour12FieldElement::DateTimeHour12FieldElement):
(WebCore::DateTimeHour12FieldElement::create):
(WebCore::DateTimeHour12FieldElement::populateDateTimeFieldsState):
(WebCore::DateTimeHour12FieldElement::setValueAsInteger):
(WebCore::DateTimeHour12FieldElement::clampValueForHardLimits):
(WebCore::DateTimeHour23FieldElement::DateTimeHour23FieldElement):
(WebCore::DateTimeHour23FieldElement::create):
(WebCore::DateTimeHour23FieldElement::populateDateTimeFieldsState):
(WebCore::DateTimeHour23FieldElement::setValueAsInteger):
(WebCore::DateTimeHour23FieldElement::clampValueForHardLimits):
(WebCore::DateTimeHour24FieldElement::DateTimeHour24FieldElement):
(WebCore::DateTimeHour24FieldElement::create):
(WebCore::DateTimeHour24FieldElement::populateDateTimeFieldsState):
(WebCore::DateTimeHour24FieldElement::setValueAsInteger):
(WebCore::DateTimeHour24FieldElement::clampValueForHardLimits):

  • html/shadow/DateTimeFieldElements.h: Splitted DateTimeHourFieldElement into a base class and four derived classes that represents different hour formats.

(DateTimeHourFieldElementBase): Added.
(DateTimeHour11FieldElement): Added. Represents 0-11 hour format.
(DateTimeHour12FieldElement): Added. Represents 1-12 hour format.
(DateTimeHour23FieldElement): Added. Represents 0-23 hour format.
(DateTimeHour24FieldElement): Added. Represents 1-24 hour format.

LayoutTests:

Added test cases with min/max attributes.

  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-readonly-subfield-expected.txt:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-readonly-subfield.html:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-stepup-stepdown-from-renderer-expected.txt: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-stepup-stepdown-from-renderer.html: Added.
  • fast/forms/time-multiple-fields/time-multiple-fields-readonly-subfield-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-readonly-subfield.html:
  • fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-stepup-stepdown-from-renderer.html:
10:41 PM Changeset in webkit [144262] by abarth@webkit.org
  • 11 edits
    15 adds
    2 deletes in trunk

[Chromium] Enable threaded HTML parser by default in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=110907

Reviewed by Eric Seidel.

Tools:

This patch changes --enable-threaded-html-parser into
--disable-threaded-html-parser and thereby enables the threaded HTML
parser by default for the Chromium port.

  • DumpRenderTree/chromium/DumpRenderTree.cpp:
  • DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:

(WebTestRunner::WebPreferences::reset):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):

LayoutTests:

Update test results to show subtle differences in FrameLoaderClient callbacks.

  • platform/chromium-mac/security/block-test-no-port-expected.txt: Removed.
  • platform/chromium-win/fast/images/support-broken-image-delegate-expected.txt:
  • platform/chromium-win/security/block-test-no-port-expected.txt: Removed.
  • platform/chromium/fast/images/support-broken-image-delegate-expected.txt:
  • platform/chromium/fast/loader/main-document-url-for-non-http-loads-expected.txt: Added.
  • platform/chromium/http/tests/loading/307-after-303-after-post-expected.txt: Added.
  • platform/chromium/http/tests/misc/favicon-loads-with-images-disabled-expected.txt: Added.
  • platform/chromium/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:
  • platform/chromium/http/tests/misc/window-dot-stop-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-invalid-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt: Added.
  • platform/chromium/inspector/debugger/pause-in-inline-script-expected.txt: Added.
  • platform/chromium/inspector/timeline/timeline-script-tag-1-expected.txt: Added.
  • platform/chromium/security/block-test-no-port-expected.txt:
10:31 PM FeatureFlags edited by tkent@chromium.org
Sort CSS3_* flags, update comments for form flags (diff)
10:25 PM FeatureFlags edited by tkent@chromium.org
Add STREAM and CSS3_TEXT_LINE_BREAK (diff)
10:14 PM EnableFormFeatures edited by tkent@chromium.org
(diff)
9:53 PM Changeset in webkit [144261] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Should not return WebTextInputTypeNone for date input element.
https://bugs.webkit.org/show_bug.cgi?id=110740

Patch by Seigo Nonaka <nona@chromium.org> on 2013-02-27
Reviewed by Kent Tamura.

In the case of Windows 8, text input state including on-screen keyboard is controlled by the
value of WebTextInputType returned from WebViewImpl::textInputType().
In past, it returned WebTextInputTypeDate for date text input but now it returns
WebTextInputTypeNone.
WebTextInputTypeNone is used for non editable node, so on-screen keyboard will be hidden if
the date text input is focused. So there is no way to input on Windows 8 tablet without
physical keyboard except tapping small up/down arrow.

  • public/WebTextInputType.h: Introduces WebTextInputTypeDateTimeField.
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::textInputInfo): Fills type filed regardless of editable or not. It is
safe because textInputType returns editable type only for known editable element.
(WebKit::WebViewImpl::textInputType): Returns WebTextInputTypeDateTimeField for the date
time field element.

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

Need to re-layout fixed position elements after scale when using settings()->fixedElementsLayoutRelativeToFrame()
https://bugs.webkit.org/show_bug.cgi?id=105486

Patch by Tien-Ren Chen <trchen@chromium.org> on 2013-02-27
Reviewed by James Robinson.

In settings()->fixedElementsLayoutRelativeToFrame() mode, fixed-position
elements are layout relative to the current visible viewport, which can
be different from the layout viewport when using fixed-layout mode.
We need to re-layout fixed-position elements in case of visible content
size changes.

The test is currently chromium-specific due to difficulties to make this
test works on Mac. The mac port seems to work very differently with
visible content size when a page is scaled. And there is no reliable way
to hide scrollbars in mac-wk1 that doesn't cause a side effect.

Source/WebCore:

Test: platform/chromium/fast/repaint/relayout-fixed-position-after-scale.html

  • page/FrameView.h:

(FrameView):

  • page/Page.cpp:

(WebCore::Page::setPageScaleFactor):

LayoutTests:

  • platform/chromium/fast/repaint/relayout-fixed-position-after-scale-expected.html: Added.
  • platform/chromium/fast/repaint/relayout-fixed-position-after-scale.html: Added.
7:51 PM Changeset in webkit [144259] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Initialize page visibility after creating WebKitTestRunner WebView on Mac
https://bugs.webkit.org/show_bug.cgi?id=111025

Patch by Kiran Muppala <cmuppala@apple.com> on 2013-02-27
Reviewed by Simon Fraser.

Set page visibility to "visible" after creating WebView to override
visibility state inferred from window occlusion notifications on Mac.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createWebViewWithOptions): Add call to
setVisibilityState.

7:31 PM Changeset in webkit [144258] by hmuller@adobe.com
  • 7 edits
    8 adds in trunk

[CSS Exclusions] Enable shape-inside rectangle support for shape-padding
https://bugs.webkit.org/show_bug.cgi?id=110500

Reviewed by Dirk Schulze.

Source/WebCore:

Added support for CSS shape-padding for shapes defined with shape-inside.

Tests: fast/exclusions/shape-inside/shape-inside-circle-padding.html

fast/exclusions/shape-inside/shape-inside-ellipse-padding.html
fast/exclusions/shape-inside/shape-inside-rectangle-padding.html
fast/exclusions/shape-inside/shape-inside-rounded-rectangle-padding.html

  • rendering/ExclusionRectangle.cpp:

(WebCore::FloatRoundedRect::paddingBounds): Inset the rounded rectangle to reflect the padding parameter.
(WebCore::FloatRoundedRect::marginBounds): Expand the rounded rectangle to reflect the margin parameter.
(WebCore::FloatRoundedRect::cornerInterceptForWidth): Moved this method from ExclusionRectangle to FloatRoundedRect.
(WebCore::ExclusionRectangle::shapePaddingBounds): Lazily compute the bounds of the padding box.
(WebCore::ExclusionRectangle::shapeMarginBounds): Lazily compute the bounds of the margin box.
(WebCore::ExclusionRectangle::getExcludedIntervals): This computuation is now based on the (new) margin box.
(WebCore::ExclusionRectangle::getIncludedIntervals): This computation is now base don the (new) padding box.
(WebCore::ExclusionRectangle::firstIncludedIntervalLogicalTop): This computation is now base don the (new) padding box.

  • rendering/ExclusionRectangle.h:

(FloatRoundedRect): A subclass of FloatRect that includes corner radii specified as CSS shapes do.
(WebCore::FloatRoundedRect::FloatRoundedRect):
(WebCore::FloatRoundedRect::rx):
(WebCore::FloatRoundedRect::ry):
(WebCore::ExclusionRectangle::ExclusionRectangle):

  • rendering/ExclusionShape.cpp:

(WebCore::ExclusionShape::createExclusionShape): Initialize the new shapeMargin and shapePadding properties.

  • rendering/ExclusionShape.h:

(ExclusionShape):
(WebCore::ExclusionShape::shapeMargin): Added a public read-only property for shapeMargin.
(WebCore::ExclusionShape::shapePadding): Added a public read-only property for shapePadding.

  • rendering/ExclusionShapeInfo.cpp:

(WebCore::::computedShape): Pass the values of the CSS shape-margin and shapp-padding properties to createExclusionShape().

LayoutTests:

Added one shape-inside, shape-padding test for each CSS shape type.

  • fast/exclusions/shape-inside/shape-inside-circle-padding-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-circle-padding.html: Added.
  • fast/exclusions/shape-inside/shape-inside-ellipse-padding-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-ellipse-padding.html: Added.
  • fast/exclusions/shape-inside/shape-inside-rectangle-padding-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-rectangle-padding.html: Added.
  • fast/exclusions/shape-inside/shape-inside-rounded-rectangle-padding-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-rounded-rectangle-padding.html: Added.
7:09 PM Changeset in webkit [144257] by hclam@chromium.org
  • 2 edits in trunk/Source/WebCore

More style cleanup in GIFImageReader
https://bugs.webkit.org/show_bug.cgi?id=110776

Reviewed by Allan Sandfeld Jensen.

Renamed variable q to currentComponent which more accurately represent
the purpose.

No test. Simple refactoring.

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

(GIFImageReader::decodeInternal):

6:58 PM Changeset in webkit [144256] by schenney@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

[Chromium] Rebaseline after r144236
https://bugs.webkit.org/show_bug.cgi?id=109879

Unreviewed expectations update

  • platform/chromium-linux/plugins/plugin-clip-subframe-expected.txt: Added.
6:29 PM Changeset in webkit [144255] by rniwa@webkit.org
  • 3 edits in trunk/Tools

Merge PageLoadingPerfTest into ReplayPerfTest
https://bugs.webkit.org/show_bug.cgi?id=111027

Reviewed by Dirk Pranke.

Merged two classes.

We should really move ahead with the bug 100991 and get rid of PageLoadingPerfTest
part of ReplayPerfTest.

  • Scripts/webkitpy/performance_tests/perftest.py:

(ReplayPerfTest): Moved _FORCE_GC_FILE here.
(ReplayPerfTest.init):
(ReplayPerfTest._run_with_driver): Moved from PageLoadingPerfTest.
(ReplayPerfTest.run_single): Load the GC page as run_single on PageLoadingPerfTest did.

  • Scripts/webkitpy/performance_tests/perftest_unittest.py:

(TestReplayPerfTest):
(TestReplayPerfTest.test_run_single.run_test):
(TestReplayPerfTest.test_run_single): Make sure test_time is passed down properly from output.
(TestReplayPerfTest.test_run_with_driver_accumulates_results): Renamed from
TestPageLoadingPerfTest.test_run.
(TestReplayPerfTest.test_run_with_driver_accumulates_results.mock_run_signle):
(TestReplayPerfTest.test_run_with_driver_accumulates_memory_results): Renamed from
TestPageLoadingPerfTest.test_run_with_memory_output
(TestReplayPerfTest.test_run_with_driver_accumulates_memory_results.mock_run_signle):
(TestReplayPerfTest.test_prepare_calls_run_single):

6:24 PM Changeset in webkit [144254] by keishi@webkit.org
  • 2 edits in trunk/Source/WebCore

Add month popup for new calendar picker
https://bugs.webkit.org/show_bug.cgi?id=110830

Reviewed by Kent Tamura.

Adding month popup view for use in the new calendar picker (Bug 109439).
YearListCell will grow in height when selected to reveal the buttons for
selecting the month.

No new tests. Code is not used yet.

  • Resources/pagepopups/calendarPicker.js:

(YearListCell): A row inside the month popup. Contains buttons for choosing a month.
(YearListCell.prototype._recycleBin):
(YearListCell.prototype.reset): Resets a thrown away cell for reuse at the given row.
(YearListCell.prototype.height):
(YearListCell.prototype.setHeight):
(YearListView): List view showing YearListCells.
(YearListView.prototype.onMouseOver): If the mouse is over a month button, highlights it.
(YearListView.prototype.onMouseOut): De-highlights the month button.
(YearListView.prototype.setWidth): Set scroll view width to leave space for the scroll bar.
(YearListView.prototype.setHeight): Sets the scroll bar height as well.
(YearListView.prototype._animateRow): Animates the row height to open/close the YearListCell.
(YearListView.prototype.onCellHeightAnimatorDidStop): Keep this._runningAnimators and this._animatingRows up to date.
(YearListView.prototype.onCellHeightAnimatorStep): Update the cell height and position.
(YearListView.prototype.onClick): If this is a click on a month button, select the month.
(YearListView.prototype.rowAtScrollOffset): Calculates the row currently at the given offset.
(YearListView.prototype.scrollOffsetForRow): Calculates the current scroll offset of the given row.
(YearListView.prototype.prepareNewCell): Prepares a new or recycled YearListCell.
(YearListView.prototype.updateCells): Updates the position of the visible cells.
(YearListView.prototype.deselect): Deselects a row.
(YearListView.prototype.deselectWithoutAnimating): Deselects a row without the closing animation.
(YearListView.prototype.select): Selects a row.
(YearListView.prototype.selectWithoutAnimating): Deselects a row without the opening animation.
(YearListView.prototype.buttonForMonth): Returns the month button for a given month. Returns null if the cell is not visible.
(YearListView.prototype.dehighlightMonth): Dehighlights the month button.
(YearListView.prototype.highlightMonth): Highlights the month button.
(YearListView.prototype.show): Call when showing the year list view. Shows the given month as highlighted.
(YearListView.prototype.hide): Dispatches a did hide event which will be picked up by the CalendarPicker and the MonthPopupView will close.
(YearListView.prototype._moveHighlightTo): Used to move the month highlight in response to a key event.
(YearListView.prototype.onKeyDown): Arrow keys and PageUp/PageDown keys work.
(MonthPopupView): The popup view to be overlayed over the calendar picker.
(MonthPopupView.prototype.show): Takes the initialMonth to show and the calendarTableRect so we can overlay the year list view right on top of it.
(MonthPopupView.prototype.hide):
(MonthPopupView.prototype.onClick): Hides itself if the use clicks outside the year list view.

5:33 PM Changeset in webkit [144253] by eric@webkit.org
  • 3 edits in trunk/Tools

Add --additional-drt-flag option to run-perf-tests to make it easy to test runtime options
https://bugs.webkit.org/show_bug.cgi?id=111021

Reviewed by Dirk Pranke.

The underlying code (which is shared with run-webkit-tests)
already knew how to support this option, it just wasn't exposed
via the run-perf-tests front-end. This patch fixes that.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):

4:56 PM Changeset in webkit [144252] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Stop uploading results to webkit-perf.appspot.com
https://bugs.webkit.org/show_bug.cgi?id=110954

Reviewed by Benjamin Poulain.

Pass in perf.webkit.org instead of webkit-perf.appspot.com as the test results server.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(RunAndUploadPerfTests):

4:42 PM Changeset in webkit [144251] by schenney@chromium.org
  • 1 edit
    2 adds
    1 delete in trunk/LayoutTests

[Chromium] Rebaseline after r144236
https://bugs.webkit.org/show_bug.cgi?id=109879

Unreviewed expectations update

  • platform/chromium-mac/plugins/plugin-clip-subframe-expected.txt: Added.
  • platform/chromium-win-xp/plugins: Removed.
  • platform/chromium-win/plugins/plugin-clip-subframe-expected.txt: Added.
4:41 PM AddingFeatures edited by Laszlo Gombos
GTK port is now using SetupWebKitFeatures.m4 (diff)
4:17 PM Changeset in webkit [144250] by abarth@webkit.org
  • 3 edits in trunk/Source/WebCore

Use FeatureObserver to see how often web sites use multipart main documents
https://bugs.webkit.org/show_bug.cgi?id=111015

Reviewed by Nate Chapin.

Multipart main documents add sigificant complexity to the loader. It
would be interesting to know how often this complexity is used.

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::responseReceived):

  • page/FeatureObserver.h:
3:50 PM Changeset in webkit [144249] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, rolling out r144168.
http://trac.webkit.org/changeset/144168
https://bugs.webkit.org/show_bug.cgi?id=111019

It broke the build and tronical is unavailable (Requested by
Ossy_night on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-27

  • LLIntOffsetsExtractor.pro:
3:47 PM Changeset in webkit [144248] by simonjam@chromium.org
  • 22 edits
    2 adds in trunk

[chromium] Lower priority of preloaded images
https://bugs.webkit.org/show_bug.cgi?id=110527

Source/WebCore:

Reviewed by Nate Chapin.

This improves Speed Index by ~5%, because it encourages us to load images that are needed for
painting over speculative preloads. Ideally, all embedders would use this, but it relies on
ResourceHandle::didChangePriority being implemented. Currently, only Chrome does that.

Test: http/tests/loading/promote-img-preload-priority.html

  • loader/FrameLoaderClient.h:

(FrameLoaderClient):
(WebCore::FrameLoaderClient::dispatchDidChangeResourcePriority): Added callback to enable testing.

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::setLoadPriority): Signal callback.

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::preload): Actual behavior change.

Source/WebKit/chromium:

Plumb the didChangePriority signal into DRT so it can be tested.

Reviewed by Nate Chapin.

  • public/WebFrameClient.h:

(WebKit):
(WebKit::WebFrameClient::didChangeResourcePriority):
(WebFrameClient):

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::dispatchDidChangeResourcePriority):
(WebKit):

  • src/FrameLoaderClientImpl.h:

(FrameLoaderClientImpl):

Tools:

Plumb the didChangePriority signal into DRT so it can be tested.

Reviewed by Nate Chapin.

  • DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:

(WebKit):
(WebTestRunner::WebTestProxy::didChangeResourcePriority):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:

(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::reset):
(WebTestRunner::TestRunner::shouldDumpResourcePriorities):
(WebTestRunner):
(WebTestRunner::TestRunner::dumpResourceRequestPriorities):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.h:

(TestRunner):

  • DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:

(WebTestRunner::WebTestProxyBase::assignIdentifierToRequest):
(WebTestRunner::WebTestProxyBase::willSendRequest):
(WebTestRunner::WebTestProxyBase::didChangeResourcePriority):
(WebTestRunner):

LayoutTests:

Reviewed by Nate Chapin.

  • http/tests/loading/promote-img-preload-priority-expected.txt: Added.
  • http/tests/loading/promote-img-preload-priority.html: Added.
3:25 PM Changeset in webkit [144247] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

Unreviewed trivial buildfix after r144190.

Patch by Csaba Osztrogonác <Csaba Osztrogonác> on 2013-02-27

  • platform/graphics/surfaces/win/GraphicsSurfaceWin.cpp:

(WebCore::GraphicsSurface::platformPaintToTextureMapper):

3:13 PM Changeset in webkit [144246] by Csaba Osztrogonác
  • 5 edits in trunk/Source/WebKit2

[WK2] One more unreviewed buildfix for EFL, GTK and Qt after r144218.

Patch by Csaba Osztrogonác <Csaba Osztrogonác> on 2013-02-27

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebProcess/Storage/StorageNamespaceProxy.cpp:

(WebKit::StorageNamespaceProxy::copy):

3:04 PM Changeset in webkit [144245] by pdr@google.com
  • 2 edits
    2 adds in trunk/LayoutTests

Rebaseline 2 SVG tests after WK108429

This patch rebaselines svg/repaint after WK108429 and removes a stale
test expectations entry for svg/custom/text-ctm.

Unreviewed update of test expectations.

  • platform/chromium-win/svg/repaint/svgsvgelement-repaint-children-expected.png: Added.
  • platform/chromium-win/svg/repaint/svgsvgelement-repaint-children-expected.txt: Added.
  • platform/chromium/TestExpectations:
2:55 PM Changeset in webkit [144244] by Chris Fleizach
  • 7 edits
    2 adds in trunk

WebSpeech: support speech cancel
https://bugs.webkit.org/show_bug.cgi?id=107349

Reviewed by Beth Dakin.

Source/WebCore:

Add the ability to cancel speech utterances and make it work with Mac
and the mock speech synthesizer.

Test: platform/mac/fast/speechsynthesis/speech-synthesis-cancel.html

  • Modules/speech/SpeechSynthesis.cpp:

(WebCore::SpeechSynthesis::pending):
(WebCore::SpeechSynthesis::cancel):
(WebCore::SpeechSynthesis::handleSpeakingCompleted):

  • platform/PlatformSpeechSynthesizer.h:

(PlatformSpeechSynthesizer):

  • platform/mac/PlatformSpeechSynthesizerMac.mm:

(-[WebSpeechSynthesisWrapper cancel]):
(WebCore::PlatformSpeechSynthesizer::cancel):
(WebCore):

  • platform/mock/PlatformSpeechSynthesizerMock.cpp:

(WebCore::PlatformSpeechSynthesizerMock::cancel):
(WebCore):
(WebCore::PlatformSpeechSynthesizerMock::speak):

  • platform/mock/PlatformSpeechSynthesizerMock.h:

(PlatformSpeechSynthesizerMock):

LayoutTests:

  • platform/mac/fast/speechsynthesis/speech-synthesis-cancel-expected.txt: Added.
  • platform/mac/fast/speechsynthesis/speech-synthesis-cancel.html: Added.
2:53 PM Changeset in webkit [144243] by zandobersek@gmail.com
  • 5 edits in trunk/Source/WebKit2

Unreviewed (speculative) build fixes for EFL, GTK and Qt after r144218.

  • CMakeLists.txt:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
2:49 PM Changeset in webkit [144242] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Unlock partially decoded images after passing them to the ImageDecodingStore
https://bugs.webkit.org/show_bug.cgi?id=110778

Patch by Min Qin <qinmin@chromium.org> on 2013-02-27
Reviewed by Stephen White.

Source/WebCore:

For partially decoded images, we need to unlock them so that the memory can be freed.
This change unlocks all the image frames after they are passed to ImageDecodingStore.
Unit tests are added in ImageFrameGeneratorTest.

  • platform/graphics/chromium/ImageFrameGenerator.cpp:

(WebCore::ImageFrameGenerator::tryToResumeDecodeAndScale):
(WebCore::ImageFrameGenerator::tryToDecodeAndScale):
(WebCore::ImageFrameGenerator::decode):

  • platform/image-decoders/ImageDecoder.h:

(ImageDecoder):
(WebCore::ImageDecoder::lockFrameBuffers):
(WebCore::ImageDecoder::unlockFrameBuffers):

Source/WebKit/chromium:

Test for testing that image frames are unlocked after passing to ImageDecodingStore.

  • tests/ImageFrameGeneratorTest.cpp:

(WebCore::ImageFrameGeneratorTest::SetUp):
(WebCore::ImageFrameGeneratorTest::frameBuffersUnlocked):
(ImageFrameGeneratorTest):
(WebCore::ImageFrameGeneratorTest::frameBuffersLocked):
(WebCore::TEST_F):

  • tests/MockImageDecoder.h:

(WebCore::MockImageDecoderClient::frameBuffersLocked):
(WebCore::MockImageDecoderClient::frameBuffersUnlocked):
(WebCore::MockImageDecoder::unlockFrameBuffers):
(WebCore::MockImageDecoder::lockFrameBuffers):
(MockImageDecoder):

2:44 PM Changeset in webkit [144241] by kbr@google.com
  • 4 edits in trunk

Insufficient validation when uploading depth textures to WebGL
https://bugs.webkit.org/show_bug.cgi?id=110931

Reviewed by Abhishek Arya.

Source/WebCore:

Updated webgl/conformance/extensions/webgl-depth-texture.html
layout test with additional test cases.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::texImage2D):
(WebCore::WebGLRenderingContext::texSubImage2DImpl):
(WebCore::WebGLRenderingContext::texSubImage2D):

Check for valid format/type combinations, depth, and
depth+stencil formats when uploading HTML elements and
ImageData as textures.

LayoutTests:

Updated webgl/conformance/extensions/webgl-depth-texture.html
layout test with additional test cases. These changes will be
added to the Khronos repository.

  • webgl/resources/webgl_test_files/conformance/extensions/webgl-depth-texture.html:

Added more test cases.

2:39 PM Changeset in webkit [144240] by abarth@webkit.org
  • 3 edits in trunk/Source/WebCore

Threaded HTML Parser fails fast/dom/HTMLAnchorElement/anchor-no-multiple-windows.html in debug
https://bugs.webkit.org/show_bug.cgi?id=110951

Reviewed by Eric Seidel.

We were triggering this ASSERT because we didn't understand that a
given frame might have multiple DocumentLoaders in various states. That
caused us to think that a DocumentLoader in the provisional state was
actually loading.

  • dom/Document.cpp:

(WebCore::Document::decrementActiveParserCount):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::isLoading):

2:24 PM Changeset in webkit [144239] by pdr@google.com
  • 7 edits
    2 copies in branches/chromium/1410

Merge 143541

Account for transform in SVG background images
https://bugs.webkit.org/show_bug.cgi?id=110295

Reviewed by Dirk Schulze.

Source/WebCore:

Tiled SVG background images are rendererd by drawing the SVG content into a temporary
image buffer, then stamping out a tiled pattern using this buffer. Previously the
image buffer did not account for CSS transforms which could result in pixelated backgrounds.

This patch takes advantage of the context's transform when sizing the temporary tiling
image buffer. Because the context's transform also includes scale, this patch simplifies
the SVG image code to no longer track scale.

Test: svg/as-background-image/svg-transformed-background.html

  • loader/cache/CachedImage.cpp:

(WebCore):
(WebCore::CachedImage::imageForRenderer):

CachedImage::lookupOrCreateImageForRenderer no longer creates images so it has been
refactored into just "imageForRenderer". Previously there were two versions of
lookupOrCreateImageForRenderer; these have been folded into imageForRenderer.

  • loader/cache/CachedImage.h:
  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::drawPatternForContainer):

To create the temporary tiling image buffer, the final size in screen coordinates is
needed. This is now computed using the current context's CTM. Because the CTM
already includes the page scale, all page scale tracking can be removed.

The adjustments to srcRect and the pattern transform are the same as before, just
refactored to use imageBufferScale which has x and y components.

  • svg/graphics/SVGImage.h:
  • svg/graphics/SVGImageCache.cpp:

(WebCore::SVGImageCache::setContainerSizeForRenderer):

Because the page scale needed to be cached between calls to
setContainerSizeForRenderer, this function was written to modify an existing cache
entry. Because the page scale no longer needs to be tracked, this code has been
simplified to re-write any existing cache entry.

(WebCore::SVGImageCache::imageSizeForRenderer):

This function has been simplified by calling SVGImageForContainer::size() instead
of computing this value manually. The value returned remains the same, containing
the container size multiplied by zoom.

(WebCore::SVGImageCache::imageForRenderer):

Previously we set the page scale on every call to imageForRenderer. Because page scale
no longer needs to be tracked, this function has been simplified to simply return
the cached SVGImageForContainer.

  • svg/graphics/SVGImageForContainer.cpp:

(WebCore::SVGImageForContainer::drawPattern):

  • svg/graphics/SVGImageForContainer.h:

(WebCore::SVGImageForContainer::create):
(WebCore::SVGImageForContainer::SVGImageForContainer):
(SVGImageForContainer):

LayoutTests:

  • svg/as-background-image/svg-transformed-background-expected.html: Added.
  • svg/as-background-image/svg-transformed-background.html: Added.

TBR=pdr@google.com
Review URL: https://codereview.chromium.org/12314169

2:22 PM Changeset in webkit [144238] by pdr@google.com
  • 1 edit
    2 copies in branches/chromium/1410

Merge 143257

Fix scaling of tiled SVG backgrounds on high-dpi displays
https://bugs.webkit.org/show_bug.cgi?id=110047

Reviewed by Dirk Schulze.

Source/WebCore:

This patch fixes the scaling of SVG when used for drawing patterns. Tiled/patterend SVG
images are first drawn into an image buffer and then the image buffer is used to stamp
out tiles. Because it is a raster source, the size of the image buffer needs to
be scaled to the final resolution of the device. After scaling the image buffer, the
source rect and pattern transforms need to be adjusted so they align in device pixel
coordinates. This adjustment was not done before this patch, causing pixelated rendering.

Additionally, a FIXME has been added due to webkit.org/b/110065 and the image buffer
has been manually scaled (using "zoomedAndScaledContainerRect") instead of relying
on the ImageBuffer's resolutionScale parameter.

Test: svg/as-background-image/tiled-background-image.html

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::drawPatternForContainer):

Note that fixing the FIXME does not change that the source rect and transform need
to be adjusted for page scale.

LayoutTests:

  • svg/as-background-image/tiled-background-image-expected.html: Added.
  • svg/as-background-image/tiled-background-image.html: Added.

TBR=pdr@google.com
Review URL: https://codereview.chromium.org/12326167

2:10 PM Changeset in webkit [144237] by Chris Fleizach
  • 10 edits
    2 adds in trunk

AX: Mac platform should support ability to scroll an element into visible
https://bugs.webkit.org/show_bug.cgi?id=109860

Reviewed by Beth Dakin.

Source/WebCore:

Support the scrollToMakeVisible() action for MacOS accessibility clients.

Tests: platform/mac/accessibility/scroll-to-visible-action.html

  • accessibility/mac/WebAccessibilityObjectWrapper.mm:

(-[WebAccessibilityObjectWrapper accessibilityActionNames]):
(-[WebAccessibilityObjectWrapper accessibilityScrollToVisible]):
(-[WebAccessibilityObjectWrapper accessibilityPerformAction:]):

Tools:

  • DumpRenderTree/AccessibilityUIElement.cpp:

(scrollToMakeVisibleCallback):
(AccessibilityUIElement::getJSClass):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::scrollToMakeVisible):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:

(WTR::AccessibilityUIElement::scrollToMakeVisible):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:

(AccessibilityUIElement):

  • WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::AccessibilityUIElement::scrollToMakeVisible):
(WTR):

LayoutTests:

  • platform/mac/accessibility/scroll-to-visible-action.html: Added.
  • platform/mac/accessibility/scroll-to-visible-action-expected.txt: Added.
2:05 PM Changeset in webkit [144236] by commit-queue@webkit.org
  • 20 edits
    5 adds in trunk

Plugin in iframe may not display
https://bugs.webkit.org/show_bug.cgi?id=109879

Patch by John Bauman <jbauman@chromium.org> on 2013-02-27
Reviewed by Simon Fraser.

Source/WebCore:

Changing the cliprect on a layer containing an iframe may change the
cliprect of plugins inside the iframe, so recursively tell all plugins
in iframes that their cliprect has changed after doing layout on the
outer frame.

Test: plugins/plugin-clip-subframe.html

  • platform/ScrollView.cpp:

(WebCore::ScrollView::clipRectChanged):

  • platform/ScrollView.h:
  • platform/Widget.h:

(WebCore::Widget::clipRectChanged):

  • plugins/PluginView.cpp:

(WebCore::PluginView::clipRectChanged):

  • plugins/PluginView.h:
  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::setWidgetGeometry):

Source/WebKit/chromium:

Use clipRectChanged to update the geometry.

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::clipRectChanged):

  • src/WebPluginContainerImpl.h:

Source/WebKit/mac:

Ensure NetscapePluginWidget informs the plugin view of the cliprect change directly.

  • Plugins/WebBaseNetscapePluginView.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:

(NetscapePluginWidget::clipRectChanged):

Source/WebKit2:

Update geometry when cliprect changes.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::clipRectChanged):

  • WebProcess/Plugins/PluginView.h:

Tools:

LogNPPSetWindow will be used with other ports as well.

  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:

LayoutTests:

Use log-npp-set-window to ensure plugin clip changes correctly.

  • platform/mac-wk2/plugins/plugin-clip-subframe-expected.txt: Added.
  • platform/mac/plugins/plugin-clip-subframe-expected.txt: Added.
  • plugins/plugin-clip-subframe-expected.txt: Added.
  • plugins/plugin-clip-subframe.html: Added.
  • plugins/resources/plugin-clip-subframe-iframe.html: Added.
1:46 PM Changeset in webkit [144235] by crogers@google.com
  • 12 edits
    2 adds in trunk

Implement channel up-mixing and down-mixing rules
https://bugs.webkit.org/show_bug.cgi?id=110812

Reviewed by Kenneth Russell.

Source/WebCore:

Please see Web Audio specification for details of the AudioNode mixing rules attributes:
https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#UpMix

Test: webaudio/audionode-channel-rules.html

  • Modules/webaudio/AudioNode.cpp:

(WebCore::AudioNode::AudioNode):
(WebCore::AudioNode::channelCount):
(WebCore):
(WebCore::AudioNode::setChannelCount):
(WebCore::AudioNode::channelCountMode):
(WebCore::AudioNode::setChannelCountMode):
(WebCore::AudioNode::channelInterpretation):
(WebCore::AudioNode::setChannelInterpretation):
(WebCore::AudioNode::updateChannelsForInputs):

  • Modules/webaudio/AudioNode.h:

(AudioNode):
(WebCore::AudioNode::internalChannelCountMode):
(WebCore::AudioNode::internalChannelInterpretation):

  • Modules/webaudio/AudioNode.idl:
  • Modules/webaudio/AudioNodeInput.cpp:

(WebCore::AudioNodeInput::numberOfChannels):
(WebCore::AudioNodeInput::bus):
(WebCore::AudioNodeInput::internalSummingBus):
(WebCore::AudioNodeInput::sumAllConnections):
(WebCore::AudioNodeInput::pull):

  • Modules/webaudio/AudioNodeInput.h:

(AudioNodeInput):

  • Modules/webaudio/ConvolverNode.cpp:

(WebCore::ConvolverNode::ConvolverNode):

  • Modules/webaudio/DefaultAudioDestinationNode.cpp:

(WebCore::DefaultAudioDestinationNode::DefaultAudioDestinationNode):

  • Modules/webaudio/PannerNode.cpp:

(WebCore::PannerNode::PannerNode):

  • platform/audio/AudioBus.cpp:

(WebCore::AudioBus::speakersCopyFrom):
(WebCore::AudioBus::speakersSumFrom):
(WebCore::AudioBus::speakersSumFrom5_1_ToMono):
(WebCore):

  • platform/audio/AudioBus.h:

(AudioBus):

LayoutTests:

  • webaudio/audionode-channel-rules-expected.txt: Added.
  • webaudio/audionode-channel-rules.html: Added.
1:42 PM Changeset in webkit [144234] by schenney@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

RenderTableCellDeathTest unit test fails on mac
https://bugs.webkit.org/show_bug.cgi?id=110992

Unreviewed second attempt. Trying to get the right define for the OS.

  • tests/RenderTableCellTest.cpp:
1:35 PM WebKitGTK/2.0.x edited by zandobersek@gmail.com
(diff)
1:30 PM Changeset in webkit [144233] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Need WebPage API for animating scroll position & zoom changes
https://bugs.webkit.org/show_bug.cgi?id=110912

Patch by Andrew Lo <anlo@rim.com> on 2013-02-27
Reviewed by Rob Buis.

Internally reviewed by Jakob Petsovits.
Internal PR 285468.

Add an API to WebPage for animated scroll position & zoom level
adjustments.

Have InputHandler use the new API.

Rename some variables to reflect the fact that they are not only
used by block zoom now.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::zoomBlock):
(BlackBerry::WebKit::WebPage::blockZoom):
(BlackBerry::WebKit::WebPagePrivate::animateToScaleAndDocumentScrollPosition):
(WebKit):
(BlackBerry::WebKit::WebPage::animateToScaleAndDocumentScrollPosition):

  • Api/WebPage.h:
  • Api/WebPage_p.h:

(WebPagePrivate):

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):

1:23 PM Changeset in webkit [144232] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

Threaded HTML parser hits ASSERTION FAILED: this == frameLoader()->activeDocumentLoader()
https://bugs.webkit.org/show_bug.cgi?id=110937

Reviewed by Darin Adler.

This patch restores the ASSERT behind an ifdef so that we can continue
to get converage from the ASSERT while we investigate why it is
triggering in the threaded parser.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::checkLoadComplete):

1:20 PM Changeset in webkit [144231] by jochen@chromium.org
  • 3 edits
    1 add in trunk/Source/Platform

[chromium] Introduce WebHyphenator class to consolidate hyphenation related method on WebKit::Platform
https://bugs.webkit.org/show_bug.cgi?id=110953

Reviewed by Adam Barth.

This patch makes it easier to mock the hyphenation related methods.

  • Platform.gypi:
  • chromium/public/Platform.h:

(WebKit):
(Platform):
(WebKit::Platform::hyphenator):

  • chromium/public/WebHyphenator.h: Added.

(WebKit):
(WebHyphenator):
(WebKit::WebHyphenator::canHyphenate):
(WebKit::WebHyphenator::computeLastHyphenLocation):
(WebKit::WebHyphenator::~WebHyphenator):

12:58 PM Changeset in webkit [144230] by jochen@chromium.org
  • 2 edits in trunk/LayoutTests

Skip media tests that fail on content_shell

Unreviewed gardening.

  • platform/chromium/ContentShellTestExpectations:
12:50 PM Changeset in webkit [144229] by liachen@rim.com
  • 9 edits in trunk/Source

[BlackBerry] User credentials is not correctly handled
https://bugs.webkit.org/show_bug.cgi?id=110994

Source/WebCore:

Internal PR: 280990
Internal reviewed by Leo Yang.

Reviewed by Yong Li.

Following changes are made:

Remove url from generating the hash to index user credential.
Remove url from database.
Use new CertMgrWrapper API to remove password from CertMgr.
Handle encrypted password as binary data, instead of normal text string.
When authentication fails, remove the saved user credential only when they match.
Remove some url related API from CredentialBackingStore, as they are obsolete now.

No new tests as this is platform specific change about user credential.

  • platform/network/blackberry/CredentialBackingStore.cpp:

(WebCore::hashCredentialInfo):
(WebCore::CredentialBackingStore::CredentialBackingStore):
(WebCore::CredentialBackingStore::~CredentialBackingStore):
(WebCore::CredentialBackingStore::open):
(WebCore::CredentialBackingStore::addLogin):
(WebCore::CredentialBackingStore::updateLogin):
(WebCore::CredentialBackingStore::hasLogin):
(WebCore::CredentialBackingStore::getLogin):
(WebCore::CredentialBackingStore::removeLogin):
(WebCore::CredentialBackingStore::addNeverRemember):
(WebCore::CredentialBackingStore::encryptedString):
(WebCore::CredentialBackingStore::decryptedString):

  • platform/network/blackberry/CredentialBackingStore.h:

(CredentialBackingStore):

  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::sendRequestWithCredentials):
(WebCore::NetworkJob::purgeCredentials):

Source/WebKit/blackberry:

Reviewed by Yong Li.

Following change are made:

Remove url from CredentialTransformData, as url is not used anymore.
Adapt to updated CredentialBackingStore API about removing url.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):

  • WebCoreSupport/CredentialManager.cpp:

(WebCore::CredentialManager::autofillPasswordForms):
(WebCore::CredentialManager::saveCredentialIfConfirmed):

  • WebCoreSupport/CredentialTransformData.cpp:

(WebCore::CredentialTransformData::CredentialTransformData):

  • WebCoreSupport/CredentialTransformData.h:

(CredentialTransformData):

12:44 PM Changeset in webkit [144228] by jer.noble@apple.com
  • 4 edits in trunk/Source/WebKit2

REGRESSION (48533): Full-frame plugins stopped working (download instead of loading the plugin)
https://bugs.webkit.org/show_bug.cgi?id=111003

Reviewed by Anders Carlsson.

Also query the Page's pluginData when determining whether a given MIME type can be shown.

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

(WKBundlePageCanShowMIMEType):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::canShowMIMEType):

  • WebProcess/WebPage/WebPage.h:
12:43 PM Changeset in webkit [144227] by schenney@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

RenderTableCellDeathTest unit test fails on mac
https://bugs.webkit.org/show_bug.cgi?id=110992

Unreviewed disabling of test that is hanging or crashing on Mac.

  • tests/RenderTableCellTest.cpp:
12:40 PM Changeset in webkit [144226] by hyatt@apple.com
  • 3 edits in trunk/Source/WebCore

Refactor transform painting/hit testing code in RenderLayer.
https://bugs.webkit.org/show_bug.cgi?id=110998

Reviewed by Eric Seidel.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerByApplyingTransform):
Pull the code that applies the transform for painting into a new
function that can also apply an additional translation offset. This
offset will be used by the new columns code when that patch lands.

(WebCore::RenderLayer::createLocalTransformState):
Also patched to be able to apply an additional translation offset.

(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::hitTestLayerByApplyingTransform):
Same as with painting, pull the code that applies the transform into
its own function and also enable an extra translation offset to be
applied.

  • rendering/RenderLayer.h:

Added the new functions to the header.

12:39 PM Changeset in webkit [144225] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] Remove suppression invalidation logic from WebViewImpl
https://bugs.webkit.org/show_bug.cgi?id=110999

Patch by James Robinson <jamesr@chromium.org> on 2013-02-27
Reviewed by Adrienne Walker.

This suppression logic is now handled on the embedder side. In fact, scheduleComposite() is now only used
by DumpRenderTree.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::suppressInvalidations):
(WebKit::WebViewImpl::scheduleComposite):

  • src/WebViewImpl.h:
12:38 PM Changeset in webkit [144224] by jochen@chromium.org
  • 7 edits
    1 delete in trunk

plugins/netscape-plugin-setwindow-size*.html and plugins/pass-different-npp-struct.html should be async
https://bugs.webkit.org/show_bug.cgi?id=110973

Reviewed by Adam Barth.

There is nothing that ensures that the log messages from the plugin
come in before the layout test finished loading.

Tools:

  • DumpRenderTree/TestNetscapePlugIn/Tests/PassDifferentNPPStruct.cpp:

(PassDifferentNPPStruct::NPP_SetWindow):

  • DumpRenderTree/TestNetscapePlugIn/main.cpp:

(NPP_SetWindow):

LayoutTests:

  • platform/mac-wk2/plugins/netscape-plugin-setwindow-size-2-expected.txt: Removed.
  • plugins/netscape-plugin-setwindow-size-2.html:
  • plugins/netscape-plugin-setwindow-size.html:
  • plugins/pass-different-npp-struct.html:
12:37 PM Changeset in webkit [144223] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

Touch CSSGrammar.y.in to fix an internal buildbot

  • css/CSSGrammar.y.in: Add copyright dates based on previous

commits.

12:21 PM Changeset in webkit [144222] by zandobersek@gmail.com
  • 2 edits in trunk

[GTK] Disable MathML support in release builds
https://bugs.webkit.org/show_bug.cgi?id=110981

Patch by Zan Dobersek <zdobersek@igalia.com> on 2013-02-27
Reviewed by Martin Robinson.

  • Source/autotools/SetupWebKitFeatures.m4: Disable the MathML support in release builds

as the code is not yet deemed production-ready.

12:20 PM Changeset in webkit [144221] by commit-queue@webkit.org
  • 19 edits in trunk

Add smartInsertDeleteEnabled setting to WebCore::Page
https://bugs.webkit.org/show_bug.cgi?id=107840

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-02-27
Reviewed by Ryosuke Niwa.

Source/WebCore:

Covered by editing/deleting/smart-editing-disabled.html.

  • page/Settings.in: Add new setting with true as initial value.

Source/WebKit2:

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode): Remove code related to
isSmartInsertDeleteEnabled.

  • Shared/WebPageCreationParameters.h:

(WebPageCreationParameters): Remove isSmartInsertDeleteEnabled.

  • Shared/WebPreferencesStore.h:

(WebKit): Add macro for smartInsertDeleteEnabled setting.

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetSmartInsertDeleteEnabled):
(WKPreferencesGetSmartInsertDeleteEnabled): Implement methods using the
new setting.

  • UIProcess/API/C/WKPreferencesPrivate.h: Add new methods headers.
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::initializeWebPage): Set smartInsertDeleteEnabled
setting using m_isSmartInsertDeleteEnabled to keep initial value on Mac.
(WebKit::WebPageProxy::creationParameters): Remove usage of
parameters.isSmartInsertDeleteEnabled.

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::smartInsertDeleteEnabled): Enable method for
all platforms.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): Remove m_isSmartInsertDeleteEnabled
initialization.
(WebKit::WebPage::updatePreferences): Set smartInsertDeleteEnabled
setting.
(WebKit::WebPage::isSmartInsertDeleteEnabled): Implement method using
settings.
(WebKit):
(WebKit::WebPage::setSmartInsertDeleteEnabled): Implement method using
settings.

  • WebProcess/WebPage/WebPage.h:

(WebPage): Enable methods dealing with smartInsertDeleteEnabled for all
platforms and remove m_isSmartInsertDeleteEnabled as it will be a
setting.

LayoutTests:

Replace testRunner.setSmartInsertDeleteEnabled by
internals.settings.setSmartInsertDeleteEnabled in tests.

  • editing/deleting/smart-editing-disabled.html:
  • editing/selection/doubleclick-beside-cr-span.html:
  • editing/selection/doubleclick-whitespace-crash.html:
  • editing/selection/doubleclick-whitespace-img-crash.html:
  • editing/selection/doubleclick-whitespace.html:
  • platform/wk2/TestExpectations: Unflag

editing/deleting/smart-editing-disabled.html as it passes now.

12:14 PM Changeset in webkit [144220] by Chris Fleizach
  • 8 edits
    2 adds in trunk

WebSpeech: Support pause/resume ability
https://bugs.webkit.org/show_bug.cgi?id=107345

Reviewed by Beth Dakin.

Source/WebCore:

Add in the pause/resume functionality to SpeechSynthesis. Also hook up
the callback events.

Test: platform/mac/fast/speechsynthesis/speech-synthesis-pause-resume.html

  • Modules/speech/SpeechSynthesis.cpp:

(WebCore::SpeechSynthesis::SpeechSynthesis):
(WebCore::SpeechSynthesis::pending):
(WebCore::SpeechSynthesis::paused):
(WebCore::SpeechSynthesis::startSpeakingImmediately):
(WebCore::SpeechSynthesis::pause):
(WebCore::SpeechSynthesis::resume):
(WebCore):
(WebCore::SpeechSynthesis::didPauseSpeaking):
(WebCore::SpeechSynthesis::didResumeSpeaking):

  • Modules/speech/SpeechSynthesis.h:

(SpeechSynthesis):

  • platform/PlatformSpeechSynthesizer.h:

(PlatformSpeechSynthesizerClient):
(PlatformSpeechSynthesizer):

  • platform/mac/PlatformSpeechSynthesizerMac.mm:

(-[WebSpeechSynthesisWrapper speakUtterance:WebCore::]):
(-[WebSpeechSynthesisWrapper pause]):
(-[WebSpeechSynthesisWrapper resume]):
(-[WebSpeechSynthesisWrapper speechSynthesizer:didFinishSpeaking:]):
(WebCore::PlatformSpeechSynthesizer::pause):
(WebCore):
(WebCore::PlatformSpeechSynthesizer::resume):

LayoutTests:

  • platform/mac/fast/speechsynthesis/speech-synthesis-pause-resume-expected.txt: Added.
  • platform/mac/fast/speechsynthesis/speech-synthesis-pause-resume.html: Added.
12:11 PM Changeset in webkit [144219] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Disable some unsound DFG DCE
https://bugs.webkit.org/show_bug.cgi?id=110948

Reviewed by Michael Saboff.

DCE of bitops is not sound since the bitops might call some variant of valueOf.

This used to work right because ValueToInt32 was MustGenerate. From the DFG IR
standpoint it feels weird to make ValueToInt32 be MustGenerate since that node is
implemented entirely as a pure conversion. If we ever gave the DFG the ability to
do effectful bitops, we would most likely implement them as special nodes not
related to the ValueToInt32 and bitop nodes we have now.

This change is performance neutral.

  • dfg/DFGNodeType.h:

(DFG):

12:04 PM Changeset in webkit [144218] by andersca@apple.com
  • 6 edits
    1 add in trunk/Source/WebKit2

More storage scaffolding
https://bugs.webkit.org/show_bug.cgi?id=110997

Reviewed by Andreas Kling.

  • DerivedSources.make:

Add StorageAreaProxy.

  • UIProcess/Storage/StorageManager.cpp:

(WebKit::StorageManager::setItem):
Send back a DidSetItem message.

  • WebKit2.xcodeproj/project.pbxproj:

Add generated files.

  • WebProcess/Storage/StorageAreaProxy.cpp:

(WebKit::StorageAreaProxy::StorageAreaProxy):
Add the message receiver.

(WebKit::StorageAreaProxy::~StorageAreaProxy):
Remove the message receiver.

(WebKit::StorageAreaProxy::didSetItem):
add stub.

  • WebProcess/Storage/StorageAreaProxy.h:

(StorageAreaProxy):

  • WebProcess/Storage/StorageAreaProxy.messages.in: Added.
11:40 AM Changeset in webkit [144217] by weinig@apple.com
  • 8 edits in trunk/Source/WebKit2

REGRESSION: Loading flash switches to discrete graphics, 100 MB on membuster
<rdar://problem/13229828>

Reviewed by Dan Bernstein.

Due the change in CFBundleIdentifier, the WebProcess and PluginProcess were
unnecessarily muxing (they used to be whitelisted by OpenGL) to the discrete
GPU.

  • PluginProcess/EntryPoint/mac/LegacyProcess/Info.plist:
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist:
  • PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist:
  • WebProcess/EntryPoint/mac/LegacyProcess/Info.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist:

Add NSSupportsAutomaticGraphicsSwitching YES.

  • WebKit2.xcodeproj/project.pbxproj:

Re-add the PluginService.32-64.Info.plist plist to the project file.

11:14 AM Changeset in webkit [144216] by ap@apple.com
  • 34 edits in trunk/Source

Don't add a body to platform request until necessary
https://bugs.webkit.org/show_bug.cgi?id=110900

Reviewed by NOBODY (OOPS!).

Reviewed by Brady Eidson.

ResourceRequest now has more state for syncing between resource and platform parts.
In addition to tracking which is up to date, we also track which has up to date
HTTP Body.

The reason is that we don't need the body on request before it's actually sent,
and we actually cannot build it when networking is out of process.

  • WebCore.exp.in: Updated exports.
  • platform/network/ResourceRequestBase.h:
  • platform/network/ResourceRequestBase.cpp: (WebCore::ResourceRequestBase::setHTTPBody): Update HTTP body before returning it. (WebCore::ResourceRequestBase::updatePlatformRequest): Update according to HTTPBodyUpdatePolicy. (WebCore::ResourceRequestBase::updateResourceRequest): Ditto.
  • platform/network/cf/FormDataStreamCFNet.cpp: (WebCore::formDataStreamLengthPropertyName): (WebCore::formCopyProperty): (WebCore::setHTTPBody): Changed to not update Content-Length in platform request directly. We need to keep it in sync with resource request, and it's easier to do in a caller. Exposed computed length as a property do avoid duplicating the work.
  • platform/network/cf/FormDataStreamCFNet.h: Removed unnecessary httpBodyFromStream().
  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::willSendRequest): (WebCore::didReceiveResponse): (WebCore::ResourceHandle::createCFURLConnection): Update body when necessary.

(WebCore::ResourceRequest::nsURLRequest):
(WebCore::ResourceRequest::doUpdateResourceRequest):
(WebCore::ResourceRequest::doUpdateResourceHTTPBody):
(WebCore):
(WebCore::ResourceRequest::doUpdatePlatformRequest):
(WebCore::ResourceRequest::doUpdatePlatformHTTPBody):
(WebCore::ResourceRequest::updateFromDelegatePreservingOldHTTPBody):
(WebCore::ResourceRequest::applyWebArchiveHackForMail):
Ditto.

  • platform/network/cf/ResourceRequest.h: Track body up-to-date state.
  • platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::cfURLRequest): Honor HTTPBodyUpdatePolicy. (WebCore::ResourceRequest::doUpdatePlatformRequest): Don't update body here. (WebCore::ResourceRequest::doUpdatePlatformHTTPBody): Update the body, and make sure that Content-Length is correct. (WebCore::ResourceRequest::doUpdateResourceRequest): Don't update body here. (WebCore::ResourceRequest::doUpdateResourceHTTPBody): Update the body, fixing a bug where body stream was lost if this function got called. (WebCore::ResourceRequest::applyWebArchiveHackForMail): No need to update body for this one.
  • platform/network/mac/ResourceRequestMac.mm: Ditto (but this didn't have a bug with streams in doUpdateResourceRequest()).
  • platform/network/mac/FormDataStreamMac.h: Forward declare formDataStreamLengthPropertyName().
  • platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::createNSURLConnection): (WebCore::ResourceHandle::start): (WebCore::ResourceHandle::platformLoadResourceSynchronously): (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]): (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]): Update body when necessary.
  • platform/network/blackberry/ResourceRequest.h:
  • platform/network/chromium/ResourceRequest.h:
  • platform/network/curl/ResourceRequest.h:
  • platform/network/qt/ResourceRequest.h:
  • platform/network/soup/ResourceRequest.h:
  • platform/network/win/ResourceRequest.h: Added stubs for new functions. These ports don't keep a platform request in ResourceRequest, and don't need updating.
11:03 AM Changeset in webkit [144215] by schenney@chromium.org
  • 8 edits
    4 adds in trunk/LayoutTests

[Chromium] Test expectations updates

Unreviewed expectations after recent bug fixes.

  • platform/chromium-mac-lion/fast/borders/border-radius-percent-expected.png: Added.
  • platform/chromium-mac-lion/svg/css/text-shadow-multiple-expected.png:
  • platform/chromium-mac-snowleopard/fast/borders/border-radius-percent-expected.png: Added.
  • platform/chromium-mac-snowleopard/svg/css/text-shadow-multiple-expected.png:
  • platform/chromium-mac/fast/borders/border-radius-percent-expected.png: Added.
  • platform/chromium-mac/svg/css/text-shadow-multiple-expected.png:
  • platform/chromium-mac/svg/custom/transform-with-shadow-and-gradient-expected.png:
  • platform/chromium-win/fast/borders/border-radius-percent-expected.png: Added.
  • platform/chromium-win/svg/css/text-shadow-multiple-expected.png:
  • platform/chromium-win/svg/custom/transform-with-shadow-and-gradient-expected.png:
  • platform/chromium/TestExpectations:
10:46 AM Changeset in webkit [144214] by glenn@skynav.com
  • 19 edits in trunk

Add ENABLE_CSS3_TEXT_LINE_BREAK flag.
https://bugs.webkit.org/show_bug.cgi?id=110944

Reviewed by Dean Jackson.

.:

  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

No new tests.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/chromium:

  • features.gypi:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Tools:

  • Scripts/webkitperl/FeatureList.pm:
  • qmake/mkspecs/features/features.pri:

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.vsprops:
  • win/tools/vsprops/FeatureDefinesCairo.vsprops:
10:43 AM Changeset in webkit [144213] by abucur@adobe.com
  • 10 edits in trunk

REGRESSION(r124739): fast/lists/list-marker-remove-crash.html hits an assertion in MoveParagraphs
https://bugs.webkit.org/show_bug.cgi?id=93247

Reviewed by Darin Adler.

Source/WebCore:

The listifyParagraph function inside InsertListCommand triggered a layout for the new list and updated
only the "start" Position. The insertion and layout may have changed the "end" Position as well. The patch
makes sure "end" is also recomputed.

Test: No new test, the patch fixes a regression.

  • editing/InsertListCommand.cpp:

(WebCore::InsertListCommand::listifyParagraph):

LayoutTests:

Update TestExpectations because the test doesn't crash any more.

  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt-4.8/TestExpectations:
  • platform/qt-mac/TestExpectations:
  • platform/qt/TestExpectations:
10:38 AM Changeset in webkit [144212] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Add ENABLE_STREAM guards to FileReaderLoader
https://bugs.webkit.org/show_bug.cgi?id=110938

Patch by Zach Kuznia <zork@chromium.org> on 2013-02-27
Reviewed by Hajime Morrita.

  • fileapi/FileReaderLoader.cpp:
  • fileapi/FileReaderLoader.h:
10:38 AM Changeset in webkit [144211] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed. Remove myself from watchlist.

Patch by Yong Li <yong.li.webkit@outlook.com> on 2013-02-27

  • Scripts/webkitpy/common/config/watchlist:
10:34 AM Changeset in webkit [144210] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix build when DFG_JIT is not enabled
https://bugs.webkit.org/show_bug.cgi?id=110991

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

  • jit/JIT.h:

(JSC::JIT::canBeOptimizedOrInlined):

10:19 AM Changeset in webkit [144209] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

Fix bug in HTML5 Fullscreen API implementation that was preventing YouTube HTML5 media controls fullscreen button from working properly.
https://bugs.webkit.org/show_bug.cgi?id=110905

Patch by John Griggs <jgriggs@rim.com> on 2013-02-27
Reviewed by Yong Li.

Return true from ChromeClientBlackBerry::supportsFullScreenForElement instead of the negation of the boolean flag (withKeyboard) passed in.

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::supportsFullScreenForElement):

10:18 AM Changeset in webkit [144208] by allan.jensen@digia.com
  • 4 edits in trunk

Switch QtWebKit to GStreamer 1.0.
https://bugs.webkit.org/show_bug.cgi?id=106669.

Original patch by Sebastian Dröge.
Reviewed by Csaba Osztrogonác.

Source/WebCore:

  • WebCore.pri:

Tools:

Build with GStreamer 1.0 if available, but support GStreamer 0.10
temporarily to make upgrading easy and the patch suitable for Qt5.

  • qmake/mkspecs/features/features.prf:
10:01 AM Changeset in webkit [144207] by commit-queue@webkit.org
  • 2 edits in trunk/Websites/planet.webkit.org

Add Martin Robinson's blog to the planet
https://bugs.webkit.org/show_bug.cgi?id=110990

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-02-27
Reviewed by Eric Seidel.

  • config.ini: Add my blog to the planet.
9:53 AM Changeset in webkit [144206] by jamesr@google.com
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Remove WebViewImpl::animate shimmy out through compositor
https://bugs.webkit.org/show_bug.cgi?id=110935

Reviewed by Adrienne Walker.

WebViewImpl::animate() and WebViewImpl::updateAnimations() are confusingly similar. ::animate() implements
the WebWidget API and is called by content::RenderWidget and WebViewHost. ::updateAnimations() implements
the WebLayerTreeViewClient API and is called by content::RenderWidgetCompositor and by ::animate(). The
important part of this indirection is that whenever the compositor is active, all animation calls must
route through cc::LayerTreeHost before entering into WebCore's animation code so that the compositor
can set the appropriate rate limiting state. Animations may originate from
content::RenderWidget::AnimateIfNeeded when in software and single threaded mode or from
cc::LayerTreeHost::updateAnimations in threaded compositing mode. In the long ago, content::RenderWidget had no
idea if compositing was active or not and always called WebWidget::animate(), so WebViewImpl::animate() had to
redirect to the compositor when appropriate.

Now (as of chromium r180947) RenderWidget calls WebWidget::animate only when in software mode and otherwise
calls directly into the compositor. Thus WebViewImpl::animate() no longer needs to do this check. In a
follow-up, WebViewImpl::updateAnimations will go away completely in favor of just calling WebWidget::animate in
all cases.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::animate):
(WebKit::WebViewImpl::updateAnimations):

9:48 AM Changeset in webkit [144205] by efidler@rim.com
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Fix BlackBerry::Platform::String to WTF::String conversion when the string is Latin-1-encoded.
https://bugs.webkit.org/show_bug.cgi?id=110986

Reviewed by Yong Li.

Internally reviewed by Nima Ghanavatian.
BlackBerry PR 292922

We were assuming all platform strings were valid UTF-8, which isn't true for Latin-1 strings.

  • platform/text/blackberry/StringBlackBerry.cpp:

(WTF::String::String):

9:42 AM Changeset in webkit [144204] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[TexMap] REGRESSION(144183): It make negative delay tests fails
https://bugs.webkit.org/show_bug.cgi?id=110989

Reviewed by Noam Rosenthal.

Do not apply a negative offset to the animation starttime send to the GraphicLayerClient,
it needs the actual animation start not a virtual start.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::addAnimation):

9:35 AM Changeset in webkit [144203] by acolwell@chromium.org
  • 3 edits
    2 adds in trunk

Fix SourceBufferList so SourceBuffer.append() calls are always rejected after the MediaSource is closed.
https://bugs.webkit.org/show_bug.cgi?id=110917

Reviewed by Eric Carlson.

Source/WebCore:

Test: http/tests/media/media-source/video-media-source-reject-append-after-reopening.html

  • Modules/mediasource/SourceBufferList.cpp:

(WebCore::SourceBufferList::clear):

LayoutTests:

  • http/tests/media/media-source/video-media-source-reject-append-after-reopening-expected.txt: Added.
  • http/tests/media/media-source/video-media-source-reject-append-after-reopening.html: Added.
9:25 AM AddingFeatures edited by Martin Robinson
(diff)
9:20 AM Changeset in webkit [144202] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Context menu cannot be invoked after doing text selection in landscape mode
https://bugs.webkit.org/show_bug.cgi?id=110860

Patch by Sean Wang <Xuewen.Wang@torchmobile.com.cn> on 2013-02-27
Reviewed by Yong Li.

PR 290248 Internally reviewed by Mike Fenton

Add a parameter to notify the webpage client which parts of selection have
changed in visual or in its selected DOM content. Refactor the selection details
parameter to platform repo.

The reason of this issue is that when javascript triggers webpage layout, the selection
will update its apperance event when the selected content is not changed. We want
to hide the context menu only when the selected content is changed not when only its
visual is changed.

9:18 AM Changeset in webkit [144201] by Szilárd LEDÁN
  • 2 edits in trunk/Tools

Unreviewed. Added myself to committers.py

  • Scripts/webkitpy/common/config/committers.py:
9:12 AM Changeset in webkit [144200] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] The virtual keyboard hides part of Signing In dialog
https://bugs.webkit.org/show_bug.cgi?id=110836

Patch by Sean Wang <Xuewen.Wang@torchmobile.com.cn> on 2013-02-27
Reviewed by Yong Li.

PR # 283427 Internally reviewed by Mike Fenton.

Store form credentials before javascript "onSubmit" event and notify
webpage client to save credentials after that event since javascript
may check credentials and stop the submission in its event handler.

  • WebCoreSupport/CredentialTransformData.cpp:

(WebCore::CredentialTransformData::CredentialTransformData):
(WebCore):

  • WebCoreSupport/CredentialTransformData.h:

(CredentialTransformData):

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchWillSubmitForm):
(WebCore::FrameLoaderClientBlackBerry::dispatchWillSendSubmitEvent):

  • WebCoreSupport/FrameLoaderClientBlackBerry.h:

(FrameLoaderClientBlackBerry):

9:07 AM Changeset in webkit [144199] by Szilárd LEDÁN
  • 2 edits in trunk/Tools

Unreviewed, rolling out r144192.
http://trac.webkit.org/changeset/144192
https://bugs.webkit.org/show_bug.cgi?id=110984

Stored svn password on wrong computer (Requested by kkristof
on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-27

  • Scripts/webkitpy/common/config/committers.py:
9:02 AM Changeset in webkit [144198] by pilgrim@chromium.org
  • 2 edits in trunk/Source/Platform

[Chromium] Remove unused WebKitPlatformSupport class
https://bugs.webkit.org/show_bug.cgi?id=110982

Reviewed by Adam Barth.

Part of a larger refactoring series; see tracking bug 82948.

  • chromium/public/Platform.h:
8:59 AM Changeset in webkit [144197] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskipp inspector tests after r144071.

  • platform/qt/TestExpectations:
8:48 AM Changeset in webkit [144196] by junov@google.com
  • 4 edits
    3 adds in trunk

REGRESSION (r134631) of border-radius percentage with border pixel
https://bugs.webkit.org/show_bug.cgi?id=110889

Reviewed by Simon Fraser.

Source/WebCore:

Fixing background color filling to handle "non renderable" rounded
rectangles.

Test: fast/borders/border-radius-percent.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintFillLayerExtended):

LayoutTests:

Adding new pixel test to verify the correct rendering of
rounded rectangle backgrounds with inner border radii that
exceed the dimensions of the inner edge of the border.

  • fast/borders/border-radius-percent-expected.txt: Added.
  • fast/borders/border-radius-percent.html: Added.
  • platform/chromium-linux/fast/borders/border-radius-percent-expected.png: Added.
  • platform/chromium/TestExpectations:
8:45 AM Changeset in webkit [144195] by fmalita@chromium.org
  • 6 edits in trunk

[Chromium] Layout Test svg/custom/transform-with-shadow-and-gradient.svg is failing
https://bugs.webkit.org/show_bug.cgi?id=76557

Reviewed by Stephen Chenney.

Source/WebCore:

Always use kDst_Mode transfer for the shadow looper. Using kSrc_Mode to enforce CSS
box-shadow opaqueness at this level is not necessary since the RenderBoxModel box
decoration code already makes sure that shadows are filled with opaque black.

This change aligns the SVG shadow behavior (and pixel results) with CG/Safari.

No new tests, coverage provided by existing tests.

  • platform/graphics/skia/GraphicsContextSkia.cpp:

(WebCore::GraphicsContext::setPlatformShadow):

LayoutTests:

  • platform/chromium-linux/svg/css/text-shadow-multiple-expected.png:
  • platform/chromium-linux/svg/custom/transform-with-shadow-and-gradient-expected.png:
  • platform/chromium/TestExpectations:
8:42 AM Changeset in webkit [144194] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

[V8] Generate a wrapper function for ReplaceableAttrSetter()
https://bugs.webkit.org/show_bug.cgi?id=110781

Reviewed by Adam Barth.

This is one of steps to insert TRACE_EVENT_STATE() macros
into DOM bindings. This patch introduces an indirection function
for xxxReplaceableAttrSetter(), like this:

For non-custom replaceable setters (Note: One implementation
is enough for all replaceable setters in one interface.)
void V8XXX:::ReplaceableAttrSetterCallback(...) {

V8XXX::ReplaceableAttrSetter(...);

}

For custom replaceable setters. (Note: This is treated as
a normal custom setter.)
void xxxAttrSetterCallback(...) {

return xxxAttrSetterCustom(...);

}

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateReplaceableAttrSetterCallback):
(GenerateReplaceableAttrSetter):
(GenerateSingleBatchedAttribute):
(GenerateImplementation):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::TestObjReplaceableAttrSetterCallback):
(TestObjV8Internal):
(WebCore):

  • bindings/scripts/test/V8/V8TestTypedefs.cpp:

(WebCore::TestTypedefsV8Internal::TestTypedefsReplaceableAttrSetterCallback):
(TestTypedefsV8Internal):

8:26 AM Changeset in webkit [144193] by mifenton@rim.com
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Accept key events even when composing region is active.
https://bugs.webkit.org/show_bug.cgi?id=110617

Reviewed by Rob Buis.

PR 293598.

Fix a regression in the previous patch caused
by an unhandled Alt key down being sent through
by IMF.

Reviewed Internally by Nima Ghanavatian.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::updateFormState):

  • WebKitSupport/InputHandler.h:

(InputHandler):

8:21 AM Changeset in webkit [144192] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/Tools

Unreviewed. Added myself to committers.py

  • Scripts/webkitpy/common/config/committers.py:
8:18 AM Changeset in webkit [144191] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt] Flash objects won't load until scrolling page
https://bugs.webkit.org/show_bug.cgi?id=110149

Reviewed by Simon Hausmann.

Revert r134222. The issue from bug 101836 is no longer reproducable,
and the fix was causing flash objects to not load properly.

  • plugins/PluginPackage.cpp:

(WebCore::PluginPackage::determineQuirks):

8:16 AM Changeset in webkit [144190] by commit-queue@webkit.org
  • 36 edits
    7 adds in trunk

[Texmap] TextureMapper is too eager to use intermediate surfaces
https://bugs.webkit.org/show_bug.cgi?id=110762

Patch by No'am Rosenthal <Noam Rosenthal> on 2013-02-27
Reviewed by Allan Sandfeld Jensen.

Source/WebCore:

Refactor the way intermediate surfaces are handled in TextureMapperLayer.
Beforehand, we would create an intermediate surface whenever there is a chance of overlap, and
the intermediate surface would be the largest possible. The result would then be drawn to the
target surface with the layer's opacity and mask.

This would make it so that (1) surfaces are created even when they're not needed, i.e. when there
is no actual overlap, and (2) mask wouldn't be applied correctly.

In this patch the behavior is changed so that the area to be painted is divided to "overlapping"
and "non overlapping" regions. The non-overlapping regions are painted directly, while the overlapping
regions are tiled to smaller rectangles painted using an intermediate surface.
Masks are applied to those intermediate surfaces based on the transform of the actual mask, not drawn
together with the content texture like before.

This optimizes for the more common case of opacity animations on a large tree, while making the quite
rare case of composited masks slightly less optimized but always correct.

Tests: compositing/overlap-blending/children-opacity-huge.html

compositing/overlap-blending/reflection-opacity-huge.html
compositing/overlap-blending/children-opacity-no-overlap.html

  • platform/graphics/cairo/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):

  • platform/graphics/cairo/GraphicsContext3DPrivate.h:

(GraphicsContext3DPrivate):

  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):

  • platform/graphics/efl/GraphicsContext3DPrivate.h:

(GraphicsContext3DPrivate):

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):

  • platform/graphics/qt/MediaPlayerPrivateQt.cpp:

(WebCore::MediaPlayerPrivateQt::paintToTextureMapper):

  • platform/graphics/qt/MediaPlayerPrivateQt.h:

(MediaPlayerPrivateQt):

  • platform/graphics/surfaces/GraphicsSurface.cpp:

(WebCore::GraphicsSurface::paintToTextureMapper):

  • platform/graphics/surfaces/GraphicsSurface.h:

(GraphicsSurface):

  • platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:

(WebCore::GraphicsSurface::platformPaintToTextureMapper):

  • platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:

(WebCore::GraphicsSurface::platformPaintToTextureMapper):

  • platform/graphics/surfaces/win/GraphicsSurfaceWin.cpp:

(WebCore::GraphicsSurface::platformPaintToTextureMapper):

  • platform/graphics/texmap/TextureMapperBackingStore.h:

(TextureMapperBackingStore):

  • platform/graphics/texmap/TextureMapperPlatformLayer.h:

(TextureMapperPlatformLayer):

  • platform/graphics/texmap/TextureMapperSurfaceBackingStore.cpp:

(WebCore::TextureMapperSurfaceBackingStore::paintToTextureMapper):

  • platform/graphics/texmap/TextureMapperSurfaceBackingStore.h:

(TextureMapperSurfaceBackingStore):

  • platform/graphics/texmap/TextureMapperTile.cpp:

(WebCore::TextureMapperTile::paint):

  • platform/graphics/texmap/TextureMapperTile.h:

(TextureMapperTile):

  • platform/graphics/texmap/TextureMapperTiledBackingStore.cpp:

(WebCore::TextureMapperTiledBackingStore::paintToTextureMapper):

  • platform/graphics/texmap/TextureMapperTiledBackingStore.h:

(TextureMapperTiledBackingStore):

  • platform/graphics/texmap/coordinated/CoordinatedBackingStore.cpp:

(WebCore::CoordinatedBackingStore::paintTilesToTextureMapper):
(WebCore::CoordinatedBackingStore::paintToTextureMapper):

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

(CoordinatedBackingStore):

Removed the "mask" parameter from TextureMapperPlatformLayer and overrides, since
we no longer paint the contents and the mask in the same pass.

  • platform/graphics/texmap/TextureMapper.cpp:

(WebCore::TextureMapper::TextureMapper):

  • platform/graphics/texmap/TextureMapper.h:

(WebCore::TextureMapper::setMaskMode):
(TextureMapper):
(WebCore::TextureMapper::isInMaskMode):

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::drawNumber):
(WebCore::TextureMapperGL::drawTexture):
(WebCore::TextureMapperGL::draw):
(WebCore):
(WebCore::TextureMapperGL::drawTexturedQuadWithProgram):
(WebCore::TextureMapperGL::drawFiltered):

  • platform/graphics/texmap/TextureMapperGL.h:

(TextureMapperGL):

  • platform/graphics/texmap/TextureMapperImageBuffer.cpp:

(WebCore::TextureMapperImageBuffer::drawTexture):
(WebCore::TextureMapperImageBuffer::drawSolidColor):

  • platform/graphics/texmap/TextureMapperImageBuffer.h:

(TextureMapperImageBuffer):

Instead of painting the mask together with the texture/color, paint the mask
by drawing with DestinationIn to an existing surface.

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(TextureMapperPaintOptions):
(WebCore::TextureMapperLayer::paintSelf):
(WebCore::TextureMapperLayer::shouldBlend):
(WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica):
(WebCore::TextureMapperLayer::replicaTransform):
(WebCore):
(WebCore::applyFilters):
(WebCore::resolveOverlaps):
(WebCore::TextureMapperLayer::computeOverlapRegions):
(WebCore::TextureMapperLayer::paintUsingOverlapRegions):
(WebCore::TextureMapperLayer::applyMask):
(WebCore::TextureMapperLayer::paintIntoSurface):
(WebCore::commitSurface):
(WebCore::TextureMapperLayer::paintWithIntermediateSurface):
(WebCore::TextureMapperLayer::paintRecursive):

  • platform/graphics/texmap/TextureMapperLayer.h:

(WebCore):
(TextureMapperLayer):
(WebCore::TextureMapperLayer::hasFilters):

  • platform/graphics/texmap/TextureMapperShaderProgram.cpp:

(WebCore):
(WebCore::TextureMapperShaderProgram::create):

  • platform/graphics/texmap/TextureMapperShaderProgram.h:

LayoutTests:

Added a few ref-tests for correct overlap blending in accelearated compositing mode.
Skipping the new reflection test on Mac/Chromium since it's not rendered
properly on those platforms.

  • compositing/overlap-blending/children-opacity-huge-expected.html: Added.
  • compositing/overlap-blending/children-opacity-huge.html: Added.
  • compositing/overlap-blending/children-opacity-no-overlap-expected.html: Added.
  • compositing/overlap-blending/children-opacity-no-overlap.html: Added.
  • compositing/overlap-blending/reflection-opacity-huge-expected.html: Added.
  • compositing/overlap-blending/reflection-opacity-huge.html: Added.
8:13 AM Changeset in webkit [144189] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Template element support is already enabled in

development builds. Removing skip entries for related tests as they all pass.

8:11 AM Changeset in webkit [144188] by zandobersek@gmail.com
  • 5 edits
    3 adds in trunk/LayoutTests

Unreviewed GTK gardening.

Rebaselining after r144096.

  • platform/gtk/TestExpectations:
  • platform/gtk/css2.1/20110323/replaced-elements-001-expected.txt:
  • platform/gtk/css2.1/replaced-elements-001-expected.png: Added.
  • platform/gtk/css3/flexbox/button-expected.png: Added.
  • platform/gtk/css3/flexbox/button-expected.txt: Added.
  • platform/gtk/svg/custom/foreign-object-skew-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug92647-2-expected.txt:
8:03 AM Changeset in webkit [144187] by jochen@chromium.org
  • 2 edits in trunk/LayoutTests

Add plugins test expectations for content_shell

Unreviewed gardening.

  • platform/chromium/ContentShellTestExpectations:
7:48 AM Changeset in webkit [144186] by apavlov@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [REGRESSION] [Audits] Disabled "Run" button styling is the same as the enabled one
https://bugs.webkit.org/show_bug.cgi?id=110971

Reviewed by Yury Semikhatsky.

Split out PanelEnablerView-related rules into panelEnabledView.css and restored the missing rules
in inspector.css.

  • inspector/front-end/inspector.css:
  • inspector/front-end/panelEnablerView.css:
7:35 AM Changeset in webkit [144185] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r144179.
http://trac.webkit.org/changeset/144179
https://bugs.webkit.org/show_bug.cgi?id=110980

Breaks compilation (Requested by vsevik on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-27

  • public/WebTextInputType.h:
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::textInputInfo):
(WebKit::WebViewImpl::textInputType):

7:29 AM Changeset in webkit [144184] by tkent@chromium.org
  • 8 edits in trunk

REGRESSION: INPUT_MULTIPLE_FIELDS_UI: Changing CSS display property on input[type=date] unexpectedly makes another line for ::-webkit-calendar-picker-indicator
https://bugs.webkit.org/show_bug.cgi?id=110974

Reviewed by Kentaro Hara.

Source/WebCore:

Input elements with the multiple fields UI require flexible box
layout. We should use RenderFlexibleBox regardless of display
property values.

Tests: Update fast/forms/date/date-apparance-basic.html

  • html/BaseMultipleFieldsDateAndTimeInputType.cpp:

(WebCore::BaseMultipleFieldsDateAndTimeInputType::createRenderer):
Always use RenderFlexibleBox.

  • html/BaseMultipleFieldsDateAndTimeInputType.h:

(BaseMultipleFieldsDateAndTimeInputType): Declare createRenderer.

LayoutTests:

  • fast/forms/date/date-appearance-basic-expected.txt:
  • fast/forms/date/date-appearance-basic.html:
  • platform/chromium-mac/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium/TestExpectations:
7:27 AM Changeset in webkit [144183] by allan.jensen@digia.com
  • 3 edits in trunk/Source/WebCore

[TexMap] Flickering after transitions on Apple HTML5 demo
https://bugs.webkit.org/show_bug.cgi?id=102501

Reviewed by Noam Rosenthal.

Notify about animation start after the new animation is actually commited.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
(WebCore::GraphicsLayerTextureMapper::commitLayerChanges):
(WebCore::GraphicsLayerTextureMapper::addAnimation):

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:

(GraphicsLayerTextureMapper):

7:11 AM Changeset in webkit [144182] by vivek.vg@samsung.com
  • 9 edits
    1 add in trunk

Web Inspector: Refactor AuditsPanel with AuditController as newly introduced entity
https://bugs.webkit.org/show_bug.cgi?id=110866

Reviewed by Alexander Pavlov.

Source/WebCore:

AuditController is being introduced in order to follow MVC pattern with the Audits.
This is the first step about the refactoring. Moving the methods from the AuditsPanel
into AuditController would ease the event driven approach to de-couple the AuditsPanel
and the AuditLauncherView.

No new tests as code refactoring.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/AuditController.js: Added.

(WebInspector.AuditController):
(WebInspector.AuditController.prototype.ruleResultReadyCallback):
(WebInspector.AuditController.prototype.categoryDoneCallback):
(WebInspector.AuditController.prototype._executeAudit):
(WebInspector.AuditController.prototype._auditFinishedCallback):
(WebInspector.AuditController.prototype.startAuditWhenResourcesReady):
(WebInspector.AuditController.prototype.initiateAudit):
(WebInspector.AuditController.prototype._reloadResources):
(WebInspector.AuditController.prototype._didMainResourceLoad):

  • inspector/front-end/AuditLauncherView.js:

(WebInspector.AuditLauncherView):
(WebInspector.AuditLauncherView.prototype._startAudit):

  • inspector/front-end/AuditsPanel.js:

(WebInspector.AuditsPanel):
(WebInspector.AuditsPanel.prototype.auditFinishedCallback):

  • inspector/front-end/WebKit.qrc:

LayoutTests:

  • inspector/extensions/extensions-audits-tests.js:
7:11 AM Changeset in webkit [144181] by schenney@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] GIFImageDecoderTest.parseAndDecodeByteByByte failing on Android
https://bugs.webkit.org/show_bug.cgi?id=110922

Unreviewed build fix.

  • tests/GIFImageDecoderTest.cpp:

(WebKit):
(WebKit::TEST): Disable the entire test on Android.

7:00 AM Changeset in webkit [144180] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
6:54 AM Changeset in webkit [144179] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Should not return WebTextInputTypeNone for date input element.
https://bugs.webkit.org/show_bug.cgi?id=110740

Patch by Seigo Nonaka <nona@chromium.org> on 2013-02-27
Reviewed by Kent Tamura.

In the case of Windows 8, text input state including on-screen keyboard is controlled by the
value of WebTextInputType returned from WebViewImpl::textInputType().
In past, it returned WebTextInputTypeDate for date text input but now it returns
WebTextInputTypeNone.
WebTextInputTypeNone is used for non editable node, so on-screen keyboard will be hidden if
the date text input is focused. So there is no way to input on Windows 8 tablet without
physical keyboard except tapping small up/down arrow.

  • public/WebTextInputType.h: Introduces WebTextInputTypeDateTimeField.
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::textInputInfo): Fills type filed regardless of editable or not. It is
safe because textInputType returns editable type only for known editable element.
(WebKit::WebViewImpl::textInputType): Returns WebTextInputTypeDateTimeField for the date
time field element.

6:50 AM Changeset in webkit [144178] by commit-queue@webkit.org
  • 3 edits
    8 adds in trunk

[CSS Regions] Region overset property is not properly computed when there is a region break
https://bugs.webkit.org/show_bug.cgi?id=92497

Patch by Mihai Maerean <Mihai Maerean> on 2013-02-27
Reviewed by David Hyatt.

Source/WebCore:

For "paginated" content in regions that has -webkit-region-break-after:always, the bottom margin was being passed
along for the next region in the chain, which shouldn't happen.

The fix is, at layout, to clear the bottom margin for the nodes (inside paginated contexts) that have
-webkit-region-break-after:always.

Tests: fast/multicol/break-after-always-bottom-margin.html

fast/regions/overset-break-nested.html
fast/regions/overset-break-with-sibling.html
fast/regions/overset-break.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::applyAfterBreak):

LayoutTests:

  • fast/multicol/break-after-always-bottom-margin-expected.txt: Added.
  • fast/multicol/break-after-always-bottom-margin.html: Added.
  • fast/regions/overset-break-expected.txt: Added.
  • fast/regions/overset-break-nested-expected.txt: Added.
  • fast/regions/overset-break-nested.html: Added.
  • fast/regions/overset-break-with-sibling-expected.txt: Added.
  • fast/regions/overset-break-with-sibling.html: Added.
  • fast/regions/overset-break.html: Added.
6:47 AM Changeset in webkit [144177] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
6:46 AM Changeset in webkit [144176] by schenney@chromium.org
  • 2 edits in trunk/Source/WebCore

Bindings test results update after r144126
https://bugs.webkit.org/show_bug.cgi?id=108196

Unreviewed test update.

  • bindings/scripts/test/JS/JSTestObj.cpp: Add include of CallbackFunction.h
5:49 AM Changeset in webkit [144175] by commit-queue@webkit.org
  • 5 edits in trunk/LayoutTests

[chromium] Adapt test expectations to V8 proto changes.
https://bugs.webkit.org/show_bug.cgi?id=110887

Patch by Michael Starzinger <mstarzinger@chromium.org> on 2013-02-27
Reviewed by Stephen Chenney.

ad window-custom-prototype) This is expected bahavior, consistent with
SpiderMonkey. The test expectation is broken. Assigning 'null' to
'proto' makes the accessor installed on Object.prototype disappear.

ad JSON-parse) The result of JSON.parse() doesn't match the result we
get when evaluating the same string through eval() as V8 still has
special handling of the proto property for object literals.

ad cyclic-prototypes) Test fully matches the WebKit expectation now and
no longer fails. However the exception message has a slightly different
format and hence causes a text diff.

  • platform/chromium/TestExpectations: Temporary mark tests failing.
  • platform/chromium/fast/dom/Window/window-custom-prototype-expected.txt:
  • platform/chromium/fast/js/JSON-parse-expected.txt:
  • platform/chromium/fast/js/cyclic-prototypes-expected.txt:
5:34 AM Changeset in webkit [144174] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Bug in atomicIncrement implementation for MIPS GCC
https://bugs.webkit.org/show_bug.cgi?id=110969

Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-02-27
Reviewed by Csaba Osztrogonác.

Fix of sync_[add|sub]_and_fetch_8 for GCC patch.

  • wtf/Atomics.cpp:
5:07 AM Changeset in webkit [144173] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

Unreviewed inspector front-end closure compilaiton fix.

  • inspector/front-end/ScriptsNavigator.js:

(WebInspector.SnippetsNavigatorView.prototype._handleEvaluateSnippet):
(WebInspector.SnippetsNavigatorView.prototype._handleRemoveSnippet):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.set _fileRenamed):

4:49 AM Changeset in webkit [144172] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
4:38 AM Changeset in webkit [144171] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
4:09 AM Changeset in webkit [144170] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

REGRESSION(r137994): It made JSC tests hang and layout tests fail on ARM Thumb2 / Linux
https://bugs.webkit.org/show_bug.cgi?id=108632

Patch by Simon Hausmann <simon.hausmann@digia.com> on 2013-02-27
Reviewed by Csaba Osztrogonác.

It appears that mprotect() is very slow on ARM/Linux, so disable the
approach of unreserved mappings there and fall back to overcomitting
memory, based on Uli Schlachter's recommendation.

  • wtf/OSAllocatorPosix.cpp:

(WTF::OSAllocator::reserveUncommitted):
(WTF::OSAllocator::decommit):

4:05 AM Changeset in webkit [144169] by Bruno de Oliveira Abinader
  • 3 edits in trunk/Source/WebCore

[texmap] Do not apply clip state if redundant
https://bugs.webkit.org/show_bug.cgi?id=110790

Reviewed by Noam Rosenthal.

Add a bool to check if clip state has changed since last apply.

No behavior changes, thus covered by existing tests.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::ClipStack::reset):
(WebCore::TextureMapperGL::ClipStack::pop):
(WebCore::TextureMapperGL::ClipStack::apply):

  • platform/graphics/texmap/TextureMapperGL.h:

(WebCore::TextureMapperGL::ClipStack::ClipStack):
(ClipStack):

4:05 AM Changeset in webkit [144168] by Simon Hausmann
  • 2 edits in trunk/Source/JavaScriptCore

[Qt][Mac] Fix massive parallel builds

Reviewed by Tor Arne Vestbø.

There exists a race condition that LLIntDesiredOffsets.h is written to
by two parllel instances of the ruby script. This patch ensures that similar to the output file,
the generated file is also prefixed according to the build configuration.

  • LLIntOffsetsExtractor.pro:
4:03 AM Changeset in webkit [144167] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
3:51 AM Changeset in webkit [144166] by li.yin@intel.com
  • 3 edits in trunk/LayoutTests

MediaStream constructor test should cover ended MediaStreamTrack.
https://bugs.webkit.org/show_bug.cgi?id=110941

Reviewed by Kentaro Hara.

Spec: http://dev.w3.org/2011/webrtc/editor/getusermedia.html#mediastream
If tracks has ended, it should skip these tracks and continue with the next one.

  • fast/mediastream/MediaStreamConstructor-expected.txt:
  • fast/mediastream/MediaStreamConstructor.html:
3:40 AM Changeset in webkit [144165] by michael.bruning@digia.com
  • 7 edits in trunk/Source/WebKit2

[Qt][WK2] Replace use of WebPreferences with use of WKPrefences C API
https://bugs.webkit.org/show_bug.cgi?id=108952

Reviewed by Simon Hausmann.

Signed off for WebKit2 by Benjamin Poulain.

This patch moves the view classes and preferences in the Qt API
to use the C API for accessing and manipulating preferences as
part of the cleanup and move towards using the C API as base for
the Qt WebKit2 API.

Adds the function WebKit::adoptToQString for convenience when
dealing with QString and copied String objects.

Removes the ScrollAnimatorEnabled options from QWebPreferences.

  • UIProcess/API/cpp/qt/WKStringQt.cpp:

(WebKit::adoptToQString):

  • UIProcess/API/cpp/qt/WKStringQt.h:

(WebKit):

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):

  • UIProcess/API/qt/qwebpreferences.cpp:

(QWebPreferencesPrivate::testAttribute):
(QWebPreferencesPrivate::setAttribute):
(QWebPreferencesPrivate::setFontFamily):
(QWebPreferencesPrivate::fontFamily):
(QWebPreferencesPrivate::setFontSize):
(QWebPreferencesPrivate::fontSize):

  • UIProcess/API/qt/qwebpreferences_p.h:
  • UIProcess/API/qt/qwebpreferences_p_p.h:
3:07 AM Changeset in webkit [144164] by thiago.santos@intel.com
  • 1 edit
    1 add in trunk/LayoutTests

[EFL] Unreviewed gardening

Updated tests baselines.

  • platform/efl/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt: Added.
2:53 AM Changeset in webkit [144163] by mkwst@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

XHR should fire 'abort' event when navigation interrupts a request.
https://bugs.webkit.org/show_bug.cgi?id=110867

Reviewed by Alexey Proskuryakov.

Adding a layout test to ensure that navigation-canceled XMLHttpRequests
fire an 'abort' event rather than an 'error' event.

  • http/tests/xmlhttprequest/navigation-should-abort-expected.txt: Added.
  • http/tests/xmlhttprequest/navigation-should-abort.html: Added.
2:16 AM Changeset in webkit [144162] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Build fix after r144155. The report page is located at /api/report, not /api/test/report.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._upload_json):

2:15 AM Changeset in webkit [144161] by eustas@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: timeline stops working on certain sites
https://bugs.webkit.org/show_bug.cgi?id=110955

Reviewed by Alexander Pavlov.

Analysis: "timerId" value is number,
so it is not wrapped to node as expected.

Solution: wrap values of all types except Node.

  • inspector/front-end/TimelinePresentationModel.js:

Wrap nonstring values to text nodes.

2:03 AM Changeset in webkit [144160] by thiago.santos@intel.com
  • 2 edits in trunk/LayoutTests

[EFL] Unreviewed gardening

Mark custom elements tests as failures until we enable them.

  • platform/efl/TestExpectations:
1:22 AM Changeset in webkit [144159] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Remove test related to html5lib after r144032
https://bugs.webkit.org/show_bug.cgi?id=110946

Unreviewed, EFL gardening.

Test was removed after r144032. And remove it from TestExpectations.
html5lib/generated/run-template.html.

Patch by Seokju Kwon <Seokju Kwon> on 2013-02-27

  • platform/efl/TestExpectations:
1:21 AM Changeset in webkit [144158] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

HTMLDocumentParser::didReceiveParsedChunkFromBackgroundParser can trigger ASSERT(m_speculations.isEmpty())
https://bugs.webkit.org/show_bug.cgi?id=110949

Reviewed by Eric Seidel.

We can hit this ASSERT if didReceiveParsedChunkFromBackgroundParser is
called from the background thread while we're processing
m_speculations (i.e., if processing m_speculations is taking a while
and we've yielded to the event loop).

It's hard to write a deterministic test for this patch, but it's hit
quite often with existing LayoutTests.

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::didReceiveParsedChunkFromBackgroundParser):

1:09 AM Changeset in webkit [144157] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

[V8] Generate a wrapper function for named constructor callbacks
https://bugs.webkit.org/show_bug.cgi?id=110794

Reviewed by Adam Barth.

This would be the final step of generating wrapper functions.
The patch generates the following wrapper function for named
constructor callbacks.

Handle<Value> namedConstructorCallback(...)
{

return namedConstructor(...);

}

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNamedConstructor):

  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:

(WebCore::namedConstructor):
(WebCore::namedConstructorCallback):
(WebCore):
(WebCore::V8TestNamedConstructorConstructor::GetTemplate):

  • bindings/v8/custom/V8HTMLImageElementConstructor.cpp:

(WebCore::namedConstructor):
(WebCore::namedConstructorCallback):
(WebCore):
(WebCore::V8HTMLImageElementConstructor::GetTemplate):

1:02 AM Changeset in webkit [144156] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
12:56 AM Changeset in webkit [144155] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Stop uploading results to webkit-perf.appspot.com
https://bugs.webkit.org/show_bug.cgi?id=110954

Reviewed by Benjamin Poulain.

When the specified test results server was webkit-perf.appspot.com, replace it by perf.webkit.org.
Also, always use the new JSON format. Removed the code to generate the old format.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._generate_and_show_results):
(PerfTestsRunner._generate_results_dict):
(PerfTestsRunner._merge_slave_config_json):
(PerfTestsRunner._generate_output_files):

12:37 AM Changeset in webkit [144154] by caseq@chromium.org
  • 12 edits in trunk

Web Inspector: show raster tasks on Timeline
https://bugs.webkit.org/show_bug.cgi?id=105851

  • add DeferPaint, Paint & RasterTask trace events handling to trace event processor;
  • upon begin frame, emit aggregated background event for all raster tasks related to inspected page.

Reviewed by Pavel Feldman.

  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::willPaintImpl):
(InstrumentationEvents):
(InstrumentationEventArguments):

  • inspector/InspectorInstrumentation.h:

(InstrumentationEvents):
(WebCore):
(InstrumentationEventArguments):

  • inspector/InspectorTimelineAgent.cpp:

(TimelineRecordType):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::didBeginFrame):

  • inspector/InspectorTimelineAgent.h:

(TimelineRecordType):
(WebCore):

  • inspector/TimelineRecordFactory.cpp:

(WebCore::TimelineRecordFactory::createRasterData):
(WebCore):

  • inspector/TimelineRecordFactory.h:

(TimelineRecordFactory):

  • inspector/TimelineTraceEventProcessor.cpp:

(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::registerHandler):
(WebCore::TimelineTraceEventProcessor::shutdown):
(WebCore::TimelineTraceEventProcessor::TraceEvent::findParameter):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::onBeginFrame):
(WebCore::TimelineTraceEventProcessor::onPaintLayerBegin):
(WebCore::TimelineTraceEventProcessor::onPaintLayerEnd):
(WebCore::TimelineTraceEventProcessor::onRasterTaskBegin):
(WebCore::TimelineTraceEventProcessor::onRasterTaskEnd):
(WebCore::TimelineTraceEventProcessor::onLayerDeleted):
(WebCore::TimelineTraceEventProcessor::onPaint):
(WebCore::TimelineTraceEventProcessor::flushRasterizerStatistics):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):

  • inspector/TimelineTraceEventProcessor.h:

(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::id):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(TimelineTraceEventProcessor):

  • inspector/front-end/TimelineModel.js:
  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel._initRecordStyles):

12:33 AM Changeset in webkit [144153] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
12:23 AM Changeset in webkit [144152] by benjamin@webkit.org
  • 12 edits in trunk/LayoutTests

Fix the tests based on computedStyleIncludingVisitedInfo for asynchronous update of the visited style
https://bugs.webkit.org/show_bug.cgi?id=110708

Reviewed by Ryosuke Niwa.

The tests using computedStyleIncludingVisitedInfo were using the asumption that visited style
is updated synchronously with the loading of resources.
This assumption is valid for Mac WebKit1, but does not hold for multiprocess
WebKit because the list of visited URLs is maintained outside the WebProcess.

This patch changes the tests to use the 'shouldBecomeXXX' test functions in order to wait
for the asynchronous update. With the change, all the tests succeed reliably on WebKit2.

  • fast/history/multiple-classes-visited-expected.txt:
  • fast/history/multiple-classes-visited.html:
  • fast/history/nested-visited-test-expected.txt:
  • fast/history/nested-visited-test.html:
  • fast/history/self-is-visited-expected.txt:
  • fast/history/self-is-visited.html:
  • fast/history/sibling-visited-test-expected.txt:
  • fast/history/sibling-visited-test.html:
  • fast/js/resources/js-test-pre.js:

(.condition):
(.failureHandler):
(shouldBecomeDifferent):

  • platform/wk2/TestExpectations:
  • platform/chromium/TestExpectations: The tests can now also timeout due to

computedStyleIncludingVisitedInfo missing from Chromium's DRT.

12:09 AM Changeset in webkit [144151] by zandobersek@gmail.com
  • 3 edits
    1 add in trunk/LayoutTests

Unreviewed gardening.

  • platform/efl/TestExpectations: Removing expectation for html5lib/runner.html, the test was removed in r144032.
  • platform/gtk/TestExpectations: Ditto.
  • platform/gtk/http/tests/security/XFrameOptions/x-frame-options-allowall-expected.txt: Added. Required after r144105.
12:04 AM Changeset in webkit [144150] by commit-queue@webkit.org
  • 11 edits
    2 copies
    15 deletes in trunk

Unreviewed, rolling out r144136, r144143, and r144147.
http://trac.webkit.org/changeset/144136
http://trac.webkit.org/changeset/144143
http://trac.webkit.org/changeset/144147
https://bugs.webkit.org/show_bug.cgi?id=110950

Caused some timeouts and flaky crashes (Requested by abarth on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-27

Tools:

  • DumpRenderTree/chromium/DumpRenderTree.cpp:

(main):

  • DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:

(WebTestRunner::WebPreferences::reset):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):

LayoutTests:

  • platform/chromium-mac/security/block-test-no-port-expected.txt: Copied from LayoutTests/platform/chromium/security/block-test-no-port-expected.txt.
  • platform/chromium-win/fast/images/support-broken-image-delegate-expected.txt:
  • platform/chromium-win/http/tests/loading/redirect-methods-expected.txt:
  • platform/chromium-win/security/block-test-no-port-expected.txt: Copied from LayoutTests/platform/chromium/security/block-test-no-port-expected.txt.
  • platform/chromium/TestExpectations:
  • platform/chromium/fast/images/support-broken-image-delegate-expected.txt:
  • platform/chromium/fast/loader/main-document-url-for-non-http-loads-expected.txt: Removed.
  • platform/chromium/http/tests/loading/307-after-303-after-post-expected.txt: Removed.
  • platform/chromium/http/tests/misc/favicon-loads-with-images-disabled-expected.txt: Removed.
  • platform/chromium/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:
  • platform/chromium/http/tests/misc/window-dot-stop-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-allowall-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-invalid-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow-expected.txt: Removed.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt: Removed.
  • platform/chromium/inspector/debugger/pause-in-inline-script-expected.txt: Removed.
  • platform/chromium/inspector/timeline/timeline-script-tag-1-expected.txt: Removed.
  • platform/chromium/security/block-test-no-port-expected.txt:

Feb 26, 2013:

11:32 PM Changeset in webkit [144149] by Csaba Osztrogonác
  • 8 edits in trunk/LayoutTests

One more unreviewed fix after r144032 and r144051.
https://bugs.webkit.org/show_bug.cgi?id=110734

Patch by Csaba Osztrogonác <Csaba Osztrogonác> on 2013-02-26

  • TestExpectations: Unskip tests.
  • html5lib/generated/run-template-write.html: Revert an accidental change by r144051.
  • platform/gtk/TestExpectations: Skip run-template-data.html and run-template-write.html instead of run-template.html
  • platform/mac/TestExpectations: Ditto.
  • platform/qt/TestExpectations: Ditto.
  • platform/win/TestExpectations: Ditto.
  • platform/wincairo/TestExpectations: Ditto.
11:17 PM Changeset in webkit [144148] by vsevik@chromium.org
  • 6 edits in trunk/Source

Unreviewed, rolling out r144129.
http://trac.webkit.org/changeset/144129
https://bugs.webkit.org/show_bug.cgi?id=110947

Breaks compilation on chromium mac and win (Requested by
vsevik on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-26

Source/Platform:

  • chromium/public/WebLayerTreeViewClient.h:

(WebLayerTreeViewClient):
(WebKit::WebLayerTreeViewClient::willBeginFrame):
(WebKit::WebLayerTreeViewClient::didBeginFrame):

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::willBeginFrame):
(WebKit):
(WebKit::WebViewImpl::didBeginFrame):

  • src/WebViewImpl.h:
  • tests/WebLayerTreeViewTestCommon.h:
10:18 PM Changeset in webkit [144147] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed.

Note another multipart failure to work through.

  • platform/chromium/TestExpectations:
10:16 PM Changeset in webkit [144146] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

getPropertyValue for -webkit-column-rule returns null, should compute the shorthand value
https://bugs.webkit.org/show_bug.cgi?id=110698

Patch by Uday Kiran <udaykiran@motorola.com> on 2013-02-26
Reviewed by Alexander Pavlov.

Source/WebCore:

Test: fast/css/getPropertyValue-column-rule.html

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::getPropertyValue):

LayoutTests:

  • fast/css/getPropertyValue-column-rule-expected.txt: Added.
  • fast/css/getPropertyValue-column-rule.html: Added.
10:14 PM Changeset in webkit [144145] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

getPropertyValue for -webkit-margin-collapse returns null, should compute the shorthand value
https://bugs.webkit.org/show_bug.cgi?id=110903

Patch by Uday Kiran <udaykiran@motorola.com> on 2013-02-26
Reviewed by Alexander Pavlov.

Source/WebCore:

getPropertyValue("-webkit-margin-collapse") should compute shorthand value
when -webkit-margin-collapse is specified in CSS.

Test: fast/css/getPropertyValue-webkit-margin-collapse.html

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::getPropertyValue):

LayoutTests:

Added test for getPropertyValue("-webkit-margin-collapse").

  • fast/css/getPropertyValue-webkit-margin-collapse-expected.txt: Added.
  • fast/css/getPropertyValue-webkit-margin-collapse.html: Added.
10:06 PM Changeset in webkit [144144] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

getPropertyValue for -webkit-marquee returns null, should compute the shorthand value
https://bugs.webkit.org/show_bug.cgi?id=110816

Patch by Uday Kiran <udaykiran@motorola.com> on 2013-02-26
Reviewed by Alexander Pavlov.

Source/WebCore:

Compute the shorthand value for '-webkit-marquee' specified in CSS.

Test: fast/css/getPropertyValue-webkit-marquee.html

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::getPropertyValue):

LayoutTests:

Added testcases to check getPropertyValue for -webkit-marquee shorthand.

  • fast/css/getPropertyValue-webkit-marquee-expected.txt: Added.
  • fast/css/getPropertyValue-webkit-marquee.html: Added.
9:51 PM Changeset in webkit [144143] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed.

Update expectations to show new FrameLoaderClient callbacks. I missed
this test earlier because it doesn't run on Linux.

  • platform/chromium-win/http/tests/loading/redirect-methods-expected.txt:
9:11 PM Changeset in webkit [144142] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

[V8] Remove Event::dataTransferAttrGetterCustom() and Event::valueAttrSetterCustom()
https://bugs.webkit.org/show_bug.cgi?id=110666

Reviewed by Adam Barth.

Event::dataTransferAttrGetterCustom() is not used
(i.e. the custom method is not registered to V8).
Event::valueAttrSetterCustom() is declared but not
implemented. We can remove them.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeaderCustomCall):

  • bindings/v8/custom/V8EventCustom.cpp:
9:02 PM Changeset in webkit [144141] by rniwa@webkit.org
  • 5 edits
    1 add in trunk

Use perf.webkit.org JSON format in results page
https://bugs.webkit.org/show_bug.cgi?id=110842

Reviewed by Benjamin Poulain.

PerformanceTests:

Updated the results page template to use the new JSON format.

Since new JSON format doesn't contain statistics such as stdev and min, added statistics.js to compute
these values. Also use 95% percentile confidence interval instead of standard deviation in various places.

  • resources/results-template.html: Added statistics.js as dependency.

(TestResult): Updated to take a metric instead of its test. Replaced stdev() with confidenceIntervalDelta()
now that we have a fancy Statistics class.

(TestRun.webkitRevision):
(PerfTestMetric): Renamed from PerfTest since this object now encapsulates each measurement (such as time,
JS heap, and malloc) in test. Also added a conversion table from a metric name to a unit since new format
doesn't contain units.
(PerfTestMetric.name): Updated to compute the full metric name from test name and metric name, matching
the old behavior.
(PerfTestMetric.isMemoryTest): Explicitly look for 'JSHeap' and 'Malloc' tests.
(PerfTestMetric.smallerIsBetter):

(attachPlot): Deleted the code to deal with tests that don't provide individual iteration measurement
since such tests no longer exist. Also fixed up the code compute y-axis range.

(createTableRow.markupForRun): Updated to use confidenceIntervalDelta() instead of stdev().

(init.addTests): Added. Recursively add metrics.

  • resources/statistics.js: Added. Imported from perf.webkit.org.

(Statistics.max):
(Statistics.min):
(Statistics.sum):
(Statistics.squareSum):
(Statistics.sampleStandardDeviation):
(Statistics.supportedConfidenceLevels):
(Statistics.confidenceIntervalDelta):
(Statistics.confidenceInterval):

Tools:

Change the default JSON format from that of webkit-perf.appspot.com to that of perf.webkit.org.

A whole bunch of integration tests have been updated to use the new JSON format.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._generate_and_show_results): Renamed output and output_path to legacy_output
and legacy_output_json_path respectively.
(PerfTestsRunner._generate_results_dict): Don't assume meta build information is always available.
(PerfTestsRunner._generate_output_files): Make json_output, which is used to generate the default
JSON file and the results page out of perf_webkit_output instead of legacy_output.

  • Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:

(MainTest.test_run_memory_test):
(MainTest._test_run_with_json_output.mock_upload_json):
(MainTest):
(MainTest.test_run_with_json_output):
(MainTest.test_run_with_description):
(MainTest.test_run_generates_json_by_default):
(MainTest.test_run_merges_output_by_default):
(MainTest.test_run_respects_reset_results):
(MainTest.test_run_generates_and_show_results_page):
(MainTest.test_run_with_slave_config_json):
(MainTest.test_run_with_multiple_repositories):
(MainTest.test_run_with_upload_json):
(MainTest.test_run_with_upload_json_should_generate_perf_webkit_json):

8:34 PM Changeset in webkit [144140] by Dimitri Glazkov
  • 2 edits in trunk/Source/WebCore

SelectorQuery should not ever use ResolvingStyle mode.
https://bugs.webkit.org/show_bug.cgi?id=110843

It looks like we accidentally used ResolvingStyle mode for webkitMatchesSelector, and I exacerbated the problem
in r143858 by switching all of SelectorQuery to use it. There aren't any visible effects, but the style bits
of elements are unnecessarily twiddled when if we do that. Let's not do it.

Reviewed by Eric Seidel.

No public-facing behavior change, covered by existing tests.

  • dom/SelectorQuery.cpp:

(WebCore::SelectorDataList::selectorMatches): Switched to always use QueryingRules mode.

8:32 PM Changeset in webkit [144139] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

Silence this ASSERT. It is triggered by the threaded HTML parser.
Investigation to follow in https://bugs.webkit.org/show_bug.cgi?id=110937

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::checkLoadComplete):

8:26 PM Changeset in webkit [144138] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled Chromium DEPS to r184829. Requested by
"Mark Pilgrim" <pilgrim@chromium.org> via sheriffbot.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-26

  • DEPS:
7:52 PM Changeset in webkit [144137] by fpizlo@apple.com
  • 15 edits
    3 adds in trunk

DFG OSR exit doesn't know which virtual register to use for the last result register for post_inc and post_dec
https://bugs.webkit.org/show_bug.cgi?id=109036
<rdar://problem/13292139>

Source/JavaScriptCore:

Reviewed by Gavin Barraclough.

This was a two-fold problem:

1) post_inc/dec has two results - the new value of the variable, and the old value of the variable. DFG OSR exit

assumed that the "last result" used for the Baseline JIT's register allocation would be the new value. It was
wrong in this assumption.


2) The Baseline JIT knew to disable its last result optimization in cases where it might confuse the DFG. But it

was doing this only for code blocks that could be totally optimized, but not code blocks that could only be
optimized when inlined.


This patch introduces a more rigorous notion of when the Baseline JIT emits profiling, when it does extra work
to account for the possibility of OSR exit, and when it does extra work to account for the possibility of OSR
entry. These notions are called shouldEmitProfiling(), canBeOptimizedOrInlined(), and canBeOptimized(),
respectively.

This is performance-neutral and fixes the reported bug. It probably fixes other bugs as well, since previously
we for example weren't doing the more conservative implementation of op_mov in the Baseline JIT for code blocks
that could be inlined but not optimized. So, if such a code block OSR exited at just the right point, you'd get
symptoms similar to this bug.

  • dfg/DFGCapabilities.h:

(JSC::DFG::canCompileOpcode):

  • dfg/DFGCommon.h:
  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • jit/JIT.h:

(JSC::JIT::compilePatchGetArrayLength):
(JSC::JIT::canBeOptimizedOrInlined):
(JIT):

  • jit/JITArithmetic.cpp:

(JSC::JIT::emit_op_post_inc):
(JSC::JIT::emit_op_post_dec):

  • jit/JITArithmetic32_64.cpp:

(JSC::JIT::emit_op_post_inc):
(JSC::JIT::emit_op_post_dec):

  • jit/JITCall.cpp:

(JSC::JIT::emit_op_call_put_result):
(JSC::JIT::compileOpCall):

  • jit/JITCall32_64.cpp:

(JSC::JIT::compileOpCall):

  • jit/JITInlines.h:

(JSC::JIT::emitArrayProfilingSite):
(JSC::JIT::map):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_mov):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::privateCompilePutByIdTransition):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::privateCompilePutByIdTransition):

LayoutTests:

Reviewed by Gavin Barraclough.

  • fast/js/dfg-post-inc-then-exit-expected.txt: Added.
  • fast/js/dfg-post-inc-then-exit.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-post-inc-then-exit.js: Added.

(foo):

7:00 PM Changeset in webkit [144136] by abarth@webkit.org
  • 10 edits
    16 adds
    2 deletes in trunk

[Chromium] Enable threaded HTML parser by default in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=110907

Reviewed by Eric Seidel.

Tools:

This patch changes --enable-threaded-html-parser into
--disable-threaded-html-parser and thereby enables the threaded HTML
parser by default for the Chromium port.

  • DumpRenderTree/chromium/DumpRenderTree.cpp:
  • DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:

(WebTestRunner::WebPreferences::reset):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):

LayoutTests:

Update test results to show subtle differences in FrameLoaderClient callbacks.

  • platform/chromium-mac/security/block-test-no-port-expected.txt: Removed.
  • platform/chromium-win/fast/images/support-broken-image-delegate-expected.txt:
  • platform/chromium-win/security/block-test-no-port-expected.txt: Removed.
  • platform/chromium/fast/images/support-broken-image-delegate-expected.txt:
  • platform/chromium/fast/loader/main-document-url-for-non-http-loads-expected.txt: Added.
  • platform/chromium/http/tests/loading/307-after-303-after-post-expected.txt: Added.
  • platform/chromium/http/tests/misc/favicon-loads-with-images-disabled-expected.txt: Added.
  • platform/chromium/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:
  • platform/chromium/http/tests/misc/window-dot-stop-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-invalid-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow-expected.txt: Added.
  • platform/chromium/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt: Added.
  • platform/chromium/inspector/debugger/pause-in-inline-script-expected.txt: Added.
  • platform/chromium/inspector/timeline/timeline-script-tag-1-expected.txt: Added.
  • platform/chromium/security/block-test-no-port-expected.txt:
6:51 PM Changeset in webkit [144135] by mark.lam@apple.com
  • 2 edits in trunk/Source/WebCore

SQLTransactionBackend::doCleanup() should not nullify its current
statement and transaction error fields.
https://bugs.webkit.org/show_bug.cgi?id=110826.

Reviewed by Geoffrey Garen.

The reason for this is because the frontend SQLTransaction may have
tasks that are already registered via callOnMainThread(), and may
invoke transaction state functions that access these objects in the
SQLTransactionBackend. This proves to be problematic if the database
was interrupted resulting in doCleanup() being called concurrently
while those states are executing.

Instead, we leave their clean up to the SQLTransactionBackend destructor
which is guaranteed to only be called when the SQLTransaction is also
destructing i.e. these objects are no longer needed.

No new tests.

  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::doCleanup):

6:40 PM Changeset in webkit [144134] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

Crashes in fast/notifications/notifications-request-permission.html after r144126
https://bugs.webkit.org/show_bug.cgi?id=108196

Unreviewed expectations update.

  • platform/chromium/TestExpectations:
6:34 PM Changeset in webkit [144133] by schenney@chromium.org
  • 1 edit
    1 delete in trunk/LayoutTests

Deleting extraneous baseline after feDisplacementMap fix
https://bugs.webkit.org/show_bug.cgi?id=10592

Unreviewed expectations update. Slow build bot to blame.

  • platform/chromium-win-xp/svg/filters/feDisplacementMap-expected.png: Removed.
6:04 PM Changeset in webkit [144132] by roger_fong@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed. AppleWin VS2010 build fix.

  • JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExports.def.in:
5:45 PM Changeset in webkit [144131] by fpizlo@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

The DFG backend's and OSR's decision to unbox a variable should be based on whether it's used in a typed context
https://bugs.webkit.org/show_bug.cgi?id=110433

Reviewed by Oliver Hunt and Mark Hahnenberg.

This introduces the equivalent of a liveness analysis, except for type checking.
A variable is said to be "profitable for unboxing" (i.e. live at a type check)
if there exists a type check on a GetLocal of that variable, and the type check
is consistent with the variable's prediction. Variables that are not profitable
for unboxing aren't unboxed. Previously they would have been.

This is a slight speed-up on some things but mostly neutral.

  • dfg/DFGArgumentPosition.h:

(JSC::DFG::ArgumentPosition::ArgumentPosition):
(JSC::DFG::ArgumentPosition::mergeShouldNeverUnbox):
(JSC::DFG::ArgumentPosition::mergeArgumentPredictionAwareness):
(JSC::DFG::ArgumentPosition::mergeArgumentUnboxingAwareness):
(ArgumentPosition):
(JSC::DFG::ArgumentPosition::isProfitableToUnbox):
(JSC::DFG::ArgumentPosition::shouldUseDoubleFormat):

  • dfg/DFGCommon.h:

(JSC::DFG::checkAndSet):
(DFG):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::run):
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::fixupSetLocalsInBlock):
(FixupPhase):
(JSC::DFG::FixupPhase::alwaysUnboxSimplePrimitives):
(JSC::DFG::FixupPhase::setUseKindAndUnboxIfProfitable):

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::doRoundOfDoubleVoting):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::checkArgumentTypes):

  • dfg/DFGVariableAccessData.h:

(JSC::DFG::VariableAccessData::VariableAccessData):
(JSC::DFG::VariableAccessData::mergeIsCaptured):
(JSC::DFG::VariableAccessData::mergeIsProfitableToUnbox):
(VariableAccessData):
(JSC::DFG::VariableAccessData::isProfitableToUnbox):
(JSC::DFG::VariableAccessData::shouldUnboxIfPossible):
(JSC::DFG::VariableAccessData::mergeStructureCheckHoistingFailed):
(JSC::DFG::VariableAccessData::mergeIsArgumentsAlias):
(JSC::DFG::VariableAccessData::shouldUseDoubleFormat):
(JSC::DFG::VariableAccessData::mergeFlags):

5:20 PM Changeset in webkit [144130] by andersca@apple.com
  • 7 edits in trunk/Source

Implement StorageAreaProxy::getItem and StorageAreaProxy::setItem
https://bugs.webkit.org/show_bug.cgi?id=110927

Reviewed by Sam Weinig.

Source/WebCore:

Export StorageMap::getItem and StorageMap::setItem.

  • WebCore.exp.in:

Source/WebKit2:

  • UIProcess/Storage/StorageManager.cpp:

(WebKit::StorageManager::setItem):

  • UIProcess/Storage/StorageManager.h:

Add empty stub.

  • UIProcess/Storage/StorageManager.messages.in:

Add SetItem message.

  • WebProcess/Storage/StorageAreaProxy.cpp:

(WebKit::StorageAreaProxy::getItem):
Fill the storage map and get the item from it.

(WebKit::StorageAreaProxy::setItem):
Update the storage map and send a SetItem message to the UI process.

5:09 PM Changeset in webkit [144129] by jamesr@google.com
  • 6 edits in trunk/Source

[chromium] Remove WebLayerTreeViewClient::(will|did)BeginFrame
https://bugs.webkit.org/show_bug.cgi?id=110928

Reviewed by Adrienne Walker.

Source/Platform:

  • chromium/public/WebLayerTreeViewClient.h:

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:
  • src/WebViewImpl.h:
  • tests/WebLayerTreeViewTestCommon.h:
5:05 PM Changeset in webkit [144128] by adamk@chromium.org
  • 4 edits
    5 adds in trunk

Parsing of HTML tags in MathML Text Insertion Points leads to bogus parser behavior
https://bugs.webkit.org/show_bug.cgi?id=110808

Reviewed by Adam Barth.

Source/WebCore:

When looking for various table tags in the HTMLElementStack, compare
QualifiedNames rather than just local names, where necessary.

Note that not all uses have been "fixed"; I've only changed for which
I could write a test with differing behavior. A followup patch to
rationalize the use of QualifiedName vs local names would be ideal.

Tests: html5lib/generated/run-math-data.html

html5lib/generated/run-math-write.html

  • html/parser/HTMLElementStack.cpp:

(WebCore::inScopeCommon): Added a version of inScopeCommon that
handles QualifiedNames instead of just localNames.
(WebCore::HTMLElementStack::inTableScope): When given a QualifiedName,
call the new version of inScopeCommon().

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processStartTag):
(WebCore::HTMLTreeBuilder::processEndTagForInTableBody):
(WebCore::HTMLTreeBuilder::processTrEndTagForInRow):

LayoutTests:

  • html5lib/generated/run-math-data-expected.txt: Added.
  • html5lib/generated/run-math-data.html: Added.
  • html5lib/generated/run-math-write-expected.txt: Added.
  • html5lib/generated/run-math-write.html: Added.
  • html5lib/resources/math.dat: Added.
5:01 PM Changeset in webkit [144127] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix windows build.

4:52 PM Changeset in webkit [144126] by Kaustubh Atrawalkar
  • 14 edits
    2 adds
    2 deletes in trunk

Notification.requestPermission callback should be optional
https://bugs.webkit.org/show_bug.cgi?id=108196

Reviewed by Adam Barth.

Source/WebCore:

Spec says it should be optional.
http://notifications.spec.whatwg.org/#notification

Test: fast/notifications/notifications-request-permission-optional.html

  • GNUmakefile.list.am:
  • Modules/notifications/Notification.h:

(Notification):

  • Modules/notifications/Notification.idl:
  • Target.pri:
  • UseJSC.cmake:
  • UseV8.cmake:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSNotificationCustom.cpp: Removed.
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateParametersCheck):

  • bindings/v8/custom/V8NotificationCustom.cpp: Removed.

LayoutTests:

Specs says it should be optional.
http://notifications.spec.whatwg.org/#notification

  • fast/notifications/notifications-request-permission-optional-expected.txt: Added.
  • fast/notifications/notifications-request-permission-optional.html: Added.
4:45 PM Changeset in webkit [144125] by jsbell@chromium.org
  • 3 edits
    1 add in trunk/Source/WebCore

IndexedDB: Add temporary diagnostic code to IDBRequest.result getter
https://bugs.webkit.org/show_bug.cgi?id=110916

Reviewed by Kentaro Hara.

Implement a custom getter for IDBRequest.result that does one additional hidden
property set, to try and isolate the flaky crash seen in wkbug.com/105363 which is
difficult to repro locally. If the crash moves to the new line it will point
the investigation in a new direction. Also add an assertion that probes string
wrappers (the expected type).

  • Modules/indexeddb/IDBRequest.idl: Mark attribute as [Custom]
  • WebCore.gypi: New file.
  • bindings/v8/custom/V8IDBRequestCustom.cpp: Added.

(WebCore::V8IDBRequest::resultAttrGetterCustom): Implementation - copy/paste from
generated code, plus extra setNamedHiddenReference call and string ASSERT.

4:44 PM Changeset in webkit [144124] by hclam@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] GIFImageDecoderTest.parseAndDecodeByteByByte failing on Android
https://bugs.webkit.org/show_bug.cgi?id=110922

Unreviewed. Build fix.

  • tests/GIFImageDecoderTest.cpp:

(WebKit):

4:42 PM Changeset in webkit [144123] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] TestExpectations addition

Unreviewed addition of fast/js/regress/inlined-put-by-id-transition.html which crashes occasionally.

  • platform/chromium/TestExpectations:
4:38 PM Changeset in webkit [144122] by oliver@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Web Inspector: REGRESSION: [JSC] SourceProvider reuses IDs
https://bugs.webkit.org/show_bug.cgi?id=99674

Reviewed by Gavin Barraclough.

Simple incrementing counter for SourceProvider IDs. Uses a
lock to incrementing the counter so we don't increment reuse
counter values or reassign the ID for a given SourceProvider.

  • parser/SourceProvider.cpp:

(JSC::SourceProvider::SourceProvider):
(JSC):
(JSC::SourceProvider::getID):

  • parser/SourceProvider.h:

(JSC::SourceProvider::asID):
(SourceProvider):

4:34 PM Changeset in webkit [144121] by schenney@chromium.org
  • 50 edits
    3 deletes in trunk/LayoutTests

New baselines after feDisplacementMap fix
https://bugs.webkit.org/show_bug.cgi?id=10592

Unreviewed expectations update.

  • platform/chromium-linux-x86/svg/filters/feDisplacementMap-expected.png: Removed.
  • platform/chromium-linux/svg/filters/feDisplacementMap-expected.png: Removed.
  • platform/chromium-mac-lion/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
  • platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
  • platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
  • platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
  • platform/chromium-mac-snowleopard/svg/filters/feDisplacementMap-expected.png: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
  • platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
  • platform/chromium-mac/svg/filters/feDisplacementMap-expected.png:
  • platform/chromium-mac/svg/filters/filterRes-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
  • platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
  • platform/chromium-win/svg/filters/feDisplacementMap-expected.png:
  • platform/chromium-win/svg/filters/filterRes-expected.png:
  • platform/chromium/TestExpectations:
4:31 PM Changeset in webkit [144120] by jamesr@google.com
  • 6 edits in trunk/Source

[chromium] Remove unused WebLayerTreeViewClient calls
https://bugs.webkit.org/show_bug.cgi?id=110923

Reviewed by Adrienne Walker.

These notifications existed for instrumentation, but now the instrumentation routes
through WebDevToolsAgent.

Source/Platform:

  • chromium/public/WebLayerTreeViewClient.h:

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:
  • src/WebViewImpl.h:
  • tests/WebLayerTreeViewTestCommon.h:
4:28 PM Changeset in webkit [144119] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Add a couple of symbols needed by WebKit2.

  • WebCore.exp.in:
4:19 PM Changeset in webkit [144118] by Michelangelo De Simone
  • 4 edits
    4 adds in trunk

[CSS Shaders] Implement color and luminosity non-separable blend modes
https://bugs.webkit.org/show_bug.cgi?id=106226

Source/WebCore:

Added the following GLSL helper functions to the CustomFilterValidatedProgram:

  • css_Lum(C): returns the luminosity for the color C
  • css_ClipColor(C): clips color C
  • css_SetLum(C, l): sets the luminosity l on the color C

The above functions are being used for the "color" and "luminosity" non-separable
blend modes, the relevant spec for such modes is at URL:
https://dvcs.w3.org/hg/FXTF/rawfile/tip/compositing/index.html#blendingnonseparable

Reviewed by Dean Jackson.

Tests: css3/filters/custom/custom-filter-nonseparable-blend-mode-color.html

css3/filters/custom/custom-filter-nonseparable-blend-mode-luminosity.html

  • platform/graphics/filters/CustomFilterValidatedProgram.cpp:

(WebCore::CustomFilterValidatedProgram::blendFunctionString):

LayoutTests:

Added relevant tests for the "color" and "luminosity" non-separable blend modes.
These tests are currently skipped on Mac due to a slight color difference; please
see relevant bug: http://webkit.org/b/107487.

Reviewed by Dean Jackson.

  • css3/filters/custom/custom-filter-nonseparable-blend-mode-color-expected.html: Added.
  • css3/filters/custom/custom-filter-nonseparable-blend-mode-color.html: Added.
  • css3/filters/custom/custom-filter-nonseparable-blend-mode-luminosity-expected.html: Added.
  • css3/filters/custom/custom-filter-nonseparable-blend-mode-luminosity.html: Added.
4:13 PM Changeset in webkit [144117] by andersca@apple.com
  • 5 edits in trunk/Source

StorageAreaProxy should hold on to a StorageMap and not a HashMap
https://bugs.webkit.org/show_bug.cgi?id=110919

Reviewed by Jessie Berlin.

Source/WebCore:

StorageMap should be a private header.

  • WebCore.xcodeproj/project.pbxproj:

Source/WebKit2:

Create a storage map instead of a hash map.

  • WebProcess/Storage/StorageAreaProxy.cpp:

(WebKit::StorageAreaProxy::length):
(WebKit::StorageAreaProxy::loadValuesIfNeeded):

  • WebProcess/Storage/StorageAreaProxy.h:

(WebCore):
(StorageAreaProxy):

3:43 PM Changeset in webkit [144116] by dpranke@chromium.org
  • 4 edits in trunk

[chromium] Re-enable the fixed version of freetype on linux
https://bugs.webkit.org/show_bug.cgi?id=110542

Reviewed by Tony Chang.

Tools:

Re-land the change in r143794 to switch to building with a fixed
version of FreeType for just DumpRenderTree. This allows us to share
one version of pixel baselines for both Lucid and Precise, and run the
layout tests in a stock Precise install (instead of a Lucid chroot).
Going forward, this approach isolates us from os-level changes to the
version of FreeType. Note that Chromium itself still uses the system
FreeType and is unaffected by this change.

This setting can still be turned off (at compile/gyp-time) by
manually setting use_custom_freetype=0.

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:

LayoutTests:

Re-add entries for two tests that pass on Lucid but fail on Precise
even with the Freetype change. This isn't worth adding in
Lucid and Precise keywords for just these two tests.

  • platform/chromium/TestExpectations:
3:18 PM Changeset in webkit [144115] by dpranke@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Roll Chromium DEPS from r183905 -> r184646.

Unreviewed.

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

Fix a copy/paste error in WebLoaderClient::didBlockInsecurePluginVersion
https://bugs.webkit.org/show_bug.cgi?id=110914
<rdar://problem/13297581>

Reviewed by Beth Dakin.

Pass kWKErrorCodeInsecurePlugInVersion to the pluginDidFail callback.

  • UIProcess/WebLoaderClient.cpp:

(WebKit::WebLoaderClient::didBlockInsecurePluginVersion):

2:57 PM Changeset in webkit [144113] by commit-queue@webkit.org
  • 14 edits
    1 delete in trunk/Source/JavaScriptCore

Unreviewed, rolling out r144074.
http://trac.webkit.org/changeset/144074
https://bugs.webkit.org/show_bug.cgi?id=110897

Causing 20+ crashes on Mac (Requested by bradee-oh on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-26

(JSC::JSGlobalData::JSGlobalData):

  • runtime/JSGlobalData.h:

(JSGlobalData):

  • runtime/PropertyMapHashTable.h:

(PropertyTable):
(JSC::PropertyTable::PropertyTable):
(JSC):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::copy):

  • runtime/PropertyTable.cpp: Removed.
  • runtime/Structure.cpp:

(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):
(JSC::Structure::visitChildren):

  • runtime/Structure.h:

(JSC):
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):
(Structure):

  • runtime/StructureInlines.h:
2:49 PM Changeset in webkit [144112] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] Remove unused WebWidget::instrument calls
https://bugs.webkit.org/show_bug.cgi?id=110906

Patch by James Robinson <jamesr@chromium.org> on 2013-02-26
Reviewed by Jochen Eisinger.

These calls are now routed through WebDevToolsAgent.

  • public/WebWidget.h:
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::willBeginFrame):

  • src/WebViewImpl.h:
2:40 PM Changeset in webkit [144111] by roger_fong@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed. AppleWin VS2010 build fix.

  • JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGeneratorCommon.props:
2:33 PM Changeset in webkit [144110] by schenney@chromium.org
  • 24 edits
    4 adds in trunk

feDisplacementMap filter gets color space wrong
https://bugs.webkit.org/show_bug.cgi?id=105929

Reviewed by Dirk Schulze.

Source/WebCore:

Tests: svg/filters/feDisplacementMap-color-interpolation-filters-expected.svg

svg/filters/feDisplacementMap-color-interpolation-filters.svg
svg/filters/feDisplacementMap-filterUnits-expected.svg
svg/filters/feDisplacementMap-filterUnits.svg

According to the spec, the SVG feDisplacementMap filter should not
change the color space on its first input, and other vendors seem to
agree that this also means that the output should be in the first
input's color space. That makes sense: we are displacing the input,
not otherwise manipulating colors.

This change improves color space handling for filters by more
explicitly tracking which color space is used for the filter's
operation and which is used for the filter's result. It provides a
means for filter effects to override the color-interpolation-filters
property as defined by the spec. feFlood and feDisplacementMap use
this new feature to enforce the spec requirements.

  • platform/graphics/filters/FEDisplacementMap.cpp:

(WebCore::FEDisplacementMap::setResultColorSpace): Override the default color space with the

same color space as the first input filter.

(WebCore):
(WebCore::FEDisplacementMap::transformResultColorSpace): Only transform the color space on

the second filter input.

(WebCore::FEDisplacementMap::platformApplySoftware): Make the application code more efficient,

and give slightly better numerical accuracy.

  • platform/graphics/filters/FEDisplacementMap.h:

(FEDisplacementMap): Declare setResultColorSpace.

  • platform/graphics/filters/FEFlood.cpp:

(WebCore::FEFlood::platformApplySoftware): Remove the call that forces

the result color space. We do it now in the setResultColorSpace.

  • platform/graphics/filters/FEFlood.h:

(FEFlood): Add setResultColorSPace override that enforces sRGB color space. But not if using

CG, which apparently does this this already internally.

  • platform/graphics/filters/FilterEffect.cpp:

(WebCore::FilterEffect::FilterEffect): Rename m_colorSpace to m_operatingColorSpace.
(WebCore::FilterEffect::apply): Allow filter effects to

override the color space conversion of their inputs.

(WebCore::FilterEffect::createImageBufferResult): Always create the

image buffer with the result color space.

  • platform/graphics/filters/FilterEffect.h:

(WebCore::FilterEffect::operatingColorSpace): New accessor.
(WebCore::FilterEffect::setOperatingColorSpace): New accessor.
(WebCore::FilterEffect::resultColorSpace): New accessor.
(WebCore::FilterEffect::setResultColorSpace): New accessor.
(FilterEffect):
(WebCore::FilterEffect::transformResultColorSpace): A new virtual

method that allows filter effects individual control over the color
space conversion of their inputs.

  • platform/graphics/filters/SourceGraphic.h:

(WebCore::SourceGraphic::SourceGraphic): Variable rename.

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::build): Use accessors to set color

space to enable per-effect overrides.

  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::buildPrimitives): Use accessors to set color.

LayoutTests:

Add two new feDisplacementMap tests to get better coverage. And update some results.

  • platform/chromium-linux/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
  • platform/chromium-linux/svg/filters/feDisplacementMap-expected.png:
  • platform/chromium-linux/svg/filters/filterRes-expected.png:
  • svg/filters/feDisplacementMap-color-interpolation-filters-expected.svg: Added.
  • svg/filters/feDisplacementMap-color-interpolation-filters.svg: Added.
  • svg/filters/feDisplacementMap-filterUnits-expected.svg: Added.
  • svg/filters/feDisplacementMap-filterUnits.svg: Added.
2:29 PM Changeset in webkit [144109] by roger_fong@apple.com
  • 4 edits in trunk/Source/WebKit

Unreviewed AppleWin build fix following r143996.

  • WebKit.vcproj/WebKitExportGeneratorCommon.vsprops:
  • WebKit.vcxproj/WebKitExportGenerator/WebKitExportGeneratorCommon.props:
2:21 PM Changeset in webkit [144108] by cevans@google.com
  • 2 edits
    2 copies in branches/chromium/1364

Merge 143454
BUG=176738
Review URL: https://codereview.chromium.org/12334104

2:15 PM Changeset in webkit [144107] by jschuh@chromium.org
  • 1 edit in branches/chromium/1410/Source/WebCore/rendering/RenderArena.cpp

Merge 143811
BUG=webkit.org/b/110394
TBR=jschuh@chromium.org
Review URL: https://codereview.chromium.org/12321148

2:13 PM Changeset in webkit [144106] by jschuh@chromium.org
  • 1 edit in branches/chromium/1364/Source/WebCore/rendering/RenderArena.cpp

Merge 143811
BUG=webkit.org/b/110394
TBR=jschuh@chromium.org
Review URL: https://codereview.chromium.org/12334103

2:00 PM Changeset in webkit [144105] by mkwst@chromium.org
  • 4 edits
    3 adds in trunk

X-Frame-Options should accept ALLOWALL as a valid value.
https://bugs.webkit.org/show_bug.cgi?id=110857

Reviewed by Adam Barth.

Source/WebCore:

DoubleClick, among others, serves ALLOWALL as a 'X-Frame-Options' value
with the intent of (shock!) allowing a resource to be framed by all
origins. Given its prevelance, and the fact that IE supports the header,
we shouldn't call it out as invalid.

This patch tweaks the warning logic to only throw the warning if the
header's value isn't 'ALLOWALL', 'DENY', or 'SAMEORIGIN'.

Test: http/tests/security/XFrameOptions/x-frame-options-allowall.html

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions):

LayoutTests:

  • http/tests/security/XFrameOptions/resources/x-frame-options-allowall.cgi: Added.
  • http/tests/security/XFrameOptions/x-frame-options-allowall-expected.txt: Added.
  • http/tests/security/XFrameOptions/x-frame-options-allowall.html: Added.

Exciting new test!

  • http/tests/security/XFrameOptions/x-frame-options-cached-expected.txt:

Exciting new baseline for an old test that was already using ALLOWALL!

1:58 PM Changeset in webkit [144104] by tony@chromium.org
  • 5 edits
    2 adds in trunk

CSS Flexbox: dynamically applied align-items doesn't affect item alignment
https://bugs.webkit.org/show_bug.cgi?id=110341

Reviewed by Ojan Vafai.

Source/WebCore:

If flex items don't change width, we don't lay them out again. This causes problems
when an item goes from stretch to non-stretch since we need to relayout to get the
smaller height. Fix this by marking flex items that were stretch as needing layout.

Test: css3/flexbox/relayout-align-items.html

  • rendering/RenderFlexibleBox.cpp:

(WebCore::resolveAlignment): Pull out common code for computing flex item style.
(WebCore::RenderFlexibleBox::styleDidChange): Mark children as needing layout.
(WebCore::RenderFlexibleBox::alignmentForChild): Use resolveAlignment.

  • rendering/RenderFlexibleBox.h:

LayoutTests:

Also fix a typo causing align-self-* classes from not applying. There
was only one test that tried to use the align-self classes and it was
testing all values behaved the same.

  • css3/flexbox/relayout-align-items-expected.txt: Added.
  • css3/flexbox/relayout-align-items.html: Added.
  • css3/flexbox/resources/flexbox.css:

(.align-self-auto):
(.align-self-flex-start):
(.align-self-flex-end):
(.align-self-center):
(.align-self-baseline):
(.align-self-stretch):

1:54 PM Changeset in webkit [144103] by andersca@apple.com
  • 6 edits in trunk/Source/WebCore

StorageMap can just import an entire map of items at once
https://bugs.webkit.org/show_bug.cgi?id=110904

Reviewed by Beth Dakin.

Instead of iterating over the map inside StorageAreaSync, just pass it directly
(through StorageAreaImpl) to StorageMap and iterate over it there.

  • storage/StorageAreaImpl.cpp:

(WebCore::StorageAreaImpl::importItems):

  • storage/StorageAreaImpl.h:

(StorageAreaImpl):

  • storage/StorageAreaSync.cpp:

(WebCore::StorageAreaSync::performImport):

  • storage/StorageMap.cpp:

(WebCore::StorageMap::importItems):

  • storage/StorageMap.h:

(StorageMap):

1:40 PM Changeset in webkit [144102] by Lucas Forschler
  • 8 edits in tags/Safari-537.31.10/Source

Merged r144091. <rdar://problem/13254985>

1:40 PM Changeset in webkit [144101] by Vineet
  • 6 edits in trunk/Source/WebCore

[JSC] static methods with Callback should not have this pointer
https://bugs.webkit.org/show_bug.cgi?id=110846

Reviewed by Kentaro Hara.

Fixing the JSC Codegenerator not to use 'this' pointer in static methods.

No new tests.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateParametersCheck):

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

(WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackAndOptionalArg):
(WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackArg):

  • bindings/scripts/test/JS/JSTestObj.h:
  • bindings/scripts/test/TestObj.idl:
  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::staticMethodWithCallbackAndOptionalArgMethod):
(TestObjV8Internal):
(WebCore::TestObjV8Internal::staticMethodWithCallbackAndOptionalArgMethodCallback):
(WebCore::TestObjV8Internal::staticMethodWithCallbackArgMethod):
(WebCore::TestObjV8Internal::staticMethodWithCallbackArgMethodCallback):
(WebCore::ConfigureV8TestObjTemplate):

1:38 PM Changeset in webkit [144100] by hclam@chromium.org
  • 7 edits
    2 adds in trunk/Source

GIFImageReader to read from source data directly
https://bugs.webkit.org/show_bug.cgi?id=109662

Reviewed by Stephen White.

Source/WebCore:

This is the first patch to improve GIF image decoding.

GIFImageReader has an internal 256 bytes buffer to saving incoming
bytes. This mechanism is out-dated because WebKit holds the entire
file in memory and it is not necessary to hold data in an intermediate
buffer.

This is also a blocker for later work to parse and decode GIF
incrementally.

This change removed the imtermediate 'hold' buffer and uses an index
for data position to keep track of parsing of the GIF file. Buffer for
global colormap and local colormap are also removed because they can be
referenced from the data stream.

This change is tested by:

Layout tests
All tests passed under fast/images.

Unit tests
Added GIFImageDecoderTest for Chromium.

Local testing
I tested this implementation against a set of 50k GIF images and
there's no crashes and produces bit-exact results as previous code.

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

(WebCore::GIFImageDecoder::setData):
(WebCore::GIFImageDecoder::frameCount):
(WebCore::GIFImageDecoder::haveDecodedRow):
(WebCore::GIFImageDecoder::decode):

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

(GIFImageReader::doLZW):
(GIFImageReader::decode):
(GIFImageReader::decodeInternal):
(GIFImageReader::setRemainingBytes):

  • platform/image-decoders/gif/GIFImageReader.h:

(GIFFrameContext):
(GIFFrameContext::GIFFrameContext):
(GIFFrameContext::~GIFFrameContext):
(GIFImageReader::GIFImageReader):
(GIFImageReader::~GIFImageReader):
(GIFImageReader::setData):
(GIFImageReader):
(GIFImageReader::globalColormap):
(GIFImageReader::localColormap):
(GIFImageReader::localColormapSize):
(GIFImageReader::data):
(GIFImageReader::colormap):

Source/WebKit/chromium:

Added the following unit tests to test new logic in GIFImageDecoder:

GIFImageDecoderTest.decodeTwoFrames
Test that it can decode a multi-frame GIF image correctly.

GIFImageDecoderTest.parseAndDecode
First perform a parse operation and then a decode operation. Expect
that parse and decode operates correctly.

GIFImageDecoderTest.parseByteByByte
Test that multi-frame GIF image can be parsed correctly byte by byte.

GIFImageDecoderTest.parseAndDecodeByteByByte
Run a loop to feed decoder byte by byte, perform a parse and then
decode operation and make sure frames are decoded correctly.

GIFImageDecoderTest.brokenSecondFrame
Decode a GIF image with second frame broken. Expect that the first
frame can be decoded correctly.

  • WebKit.gypi:
  • tests/GIFImageDecoderTest.cpp: Added.

(WebKit):
(WebKit::readFile):
(WebKit::TEST):

  • tests/data/broken.gif: Added.
1:35 PM Changeset in webkit [144099] by Lucas Forschler
  • 10 edits in tags/Safari-537.31.10/Source

Merged r143984. <rdar://problem/13254985>

1:12 PM Changeset in webkit [144098] by Lucas Forschler
  • 2 edits in tags/Safari-537.31.10/Source/JavaScriptCore

Merged r143509. <rdar://problem/13254985>

1:09 PM Changeset in webkit [144097] by Lucas Forschler
  • 6 edits
    2 copies in tags/Safari-537.31.10/Source/WebCore

Merged r143259. <rdar://problem/13254985>

1:08 PM Changeset in webkit [144096] by commit-queue@webkit.org
  • 17 edits
    5 adds in trunk

Empty <button>s should collapse; empty <input type="button"> should not collapse
https://bugs.webkit.org/show_bug.cgi?id=110654

Patch by Christian Biesinger <cbiesinger@chromium.org> on 2013-02-26
Reviewed by Ojan Vafai.

Source/WebCore:

This patch also fixes other height computation issues with flex boxes
related to scroll bars and hasLineIfEmpty()=true. See below for
details.

Tests: css3/flexbox/button.html

css3/flexbox/position-absolute-child-with-contenteditable.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::layoutBlock): Add a FIXME to make
border/padding/scrollbar inclusion more consistent with other
renderers.

  • rendering/RenderButton.h:

(WebCore::RenderButton::hasLineIfEmpty): We only want a line for
<input type=button|submit|reset>, for consistency with Firefox.

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock): Start out layoutBlock by
setting the logical height to border + padding + scrollbar height to
ensure that we have space for the scrollbar even without children. The
layoutFlexItems change below is not enough because we also need this
when hasLineIfEmpty() is false.
(WebCore::RenderFlexibleBox::layoutFlexItems): Ensure we have a line
when hasLineIfEmpty() is true by calling setLogicalHeight(border+
padding+scrollbar+lineHeight()) if we don't have a flex line.

LayoutTests:

  • css3/flexbox/button-expected.png: Added.
  • css3/flexbox/button-expected.txt: Added.
  • css3/flexbox/button.html: Added.

Test empty buttons, <input type=button>, and buttons with
overflow:scroll;

  • css3/flexbox/position-absolute-child-with-contenteditable-expected.html: Added.
  • css3/flexbox/position-absolute-child-with-contenteditable.html: Added.

Test flex boxes with hasLineIfEmpty()=true and absolute positioned
children. Uses contenteditable=true to get that effect.

  • platform/chromium-linux/css2.1/20110323/replaced-elements-001-expected.png:
  • platform/chromium-linux/css2.1/20110323/replaced-elements-001-expected.txt:
  • platform/chromium-linux/svg/custom/foreign-object-skew-expected.png:
  • platform/chromium-linux/svg/custom/foreign-object-skew-expected.txt:
  • platform/chromium-linux/tables/mozilla/bugs/bug92647-2-expected.png:
  • platform/chromium-linux/tables/mozilla/bugs/bug92647-2-expected.txt:

Regenerate test cases that use <input type=button>.

  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:

Mark tests for rebaselining.

1:07 PM Changeset in webkit [144095] by Lucas Forschler
  • 7 edits in tags/Safari-537.31.10/Source/WebCore

Merged r143072. <rdar://problem/13254985>

1:04 PM Changeset in webkit [144094] by Lucas Forschler
  • 10 edits in tags/Safari-537.31.10

Merged r142918. <rdar://problem/13254985>

1:01 PM Changeset in webkit [144093] by Lucas Forschler
  • 5 edits in tags/Safari-537.31.10/Source/WebCore

Merged r142819. <rdar://problem/13254985>

12:52 PM Changeset in webkit [144092] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebCore

Unreviewed, rolling out r143941.
http://trac.webkit.org/changeset/143941
https://bugs.webkit.org/show_bug.cgi?id=110901

This is a step in the wrong direction as it ties us to what
grid-{row|column} expect (see
https://bugs.webkit.org/show_bug.cgi?id=110777 for the right
direction) (Requested by jchaffraix on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-26

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::valueForGridPosition):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/StyleResolver.cpp:

(WebCore::createGridPosition):
(WebCore::StyleResolver::applyProperty):

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::maximumIndexInDirection):
(WebCore::RenderGrid::placeItemsOnGrid):
(WebCore::RenderGrid::placeSpecifiedMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemOnGrid):
(WebCore::RenderGrid::autoPlacementMajorAxisPositionForChild):
(WebCore::RenderGrid::autoPlacementMinorAxisPositionForChild):

  • rendering/RenderGrid.h:
  • rendering/style/GridPosition.h:
  • rendering/style/RenderStyle.h:
  • rendering/style/StyleGridItemData.h:

(StyleGridItemData):

12:51 PM Changeset in webkit [144091] by jer.noble@apple.com
  • 8 edits in trunk/Source

Unreviewed build fix; use correct macro for platform name in FeatureDefines.xcconfig.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
12:48 PM Changeset in webkit [144090] by Lucas Forschler
  • 10 edits in tags/Safari-537.31.10/Source

Merged r144067. <rdar://problem/13250271>

12:44 PM Changeset in webkit [144089] by cevans@google.com
  • 3 edits in branches/chromium/1364/Source

Merge 143347
BUG=174627
Review URL: https://codereview.chromium.org/12310146

12:36 PM Changeset in webkit [144088] by Lucas Forschler
  • 6 edits in tags/Safari-537.31.10/Source

Merged r143650. <rdar://problem/13250271>

12:33 PM Changeset in webkit [144087] by Lucas Forschler
  • 4 edits in tags/Safari-537.31.10/Source

Versioning.

12:28 PM Changeset in webkit [144086] by Lucas Forschler
  • 1 copy in tags/Safari-537.31.10

New Tag.

12:13 PM Changeset in webkit [144085] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Animated images not animating on accelerated compositing layers
https://bugs.webkit.org/show_bug.cgi?id=110886

Patch by Andrew Lo <anlo@rim.com> on 2013-02-26
Reviewed by Rob Buis.

Internally reviewed by Arvid Nilsson.
Internal PR 299598.

Animated images on AC layers call GraphicsLayer::setContentsToImage
on each frame with the same Image.

We need to set needs display in that case so that the frames are
displayed.

No new tests are needed since there is no new functionality.

  • platform/graphics/blackberry/LayerWebKitThread.cpp:

(WebCore::LayerWebKitThread::setContents):

11:48 AM WebKitGTK/2.0.x edited by Manuel Rego Casasnovas
(diff)
11:43 AM Changeset in webkit [144084] by commit-queue@webkit.org
  • 5 edits in trunk/Source

Unreviewed, rolling out r144065.
http://trac.webkit.org/changeset/144065
https://bugs.webkit.org/show_bug.cgi?id=110896

Causing failures and crashes on Chromium Win7 and Win XP
(Requested by schenney on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-26

Source/WebCore:

  • platform/graphics/harfbuzz/HarfBuzzShaper.cpp:

(WebCore::normalizeCharacters):
(WebCore::HarfBuzzShaper::HarfBuzzShaper):

  • platform/graphics/harfbuzz/HarfBuzzShaperBase.cpp:

(WebCore::HarfBuzzShaperBase::setNormalizedBuffer):

Source/WebKit/chromium:

  • features.gypi:
11:37 AM Changeset in webkit [144083] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Potential crash in YARR JIT generated code when building 64 bit
https://bugs.webkit.org/show_bug.cgi?id=110893

Reviewed by Gavin Barraclough.

The ABI doesn't define the behavior for the upper bits of a value that takes less than 64 bits.
Therefore, we zero extend both the count and length registers to assure that these unsigned values
don't have garbage upper bits.

  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::generateEnter):

11:25 AM Changeset in webkit [144082] by roger_fong@apple.com
  • 2 edits in trunk/Source/WTF

Unreviewed. Build fix for VS2010 solution, take 2.

  • WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py:
11:21 AM Changeset in webkit [144081] by thakis@chromium.org
  • 2 edits in trunk/Tools

[chromium] content shell drt: Enable WebKit::setLayoutTestMode()
https://bugs.webkit.org/show_bug.cgi?id=110890

Reviewed by Jochen Eisinger.

Several functions in webkit check that bit to change rendering
in layout test mode. For example, platform/graphics/skia/FrontSkia.cpp
disables font smoothing in this mode. TestShell and DRT both set
this flag, so content shell drt should set it too.

  • DumpRenderTree/chromium/TestRunner/src/TestInterfaces.cpp:

(WebTestRunner::TestInterfaces::TestInterfaces):

11:12 AM Changeset in webkit [144080] by roger_fong@apple.com
  • 2 edits in trunk/Source/WTF

Unreviewed. Unreviewed build fix for VS2010 solution.

  • WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py:
11:03 AM Changeset in webkit [144079] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed gardening.

Adding failure expectations for three html5lib tests that are failing after r144032
on EFL and GTK, most likely due to the ports sharing Libsoup as the network backend.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
11:00 AM Changeset in webkit [144078] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

[TexMap] Ignore layer repaint request when drawsContent is false
https://bugs.webkit.org/show_bug.cgi?id=110888

Reviewed by Noam Rosenthal.

As long as drawsContent is false we should ignore requests for repaints.
A full repaint will be requested when drawsContent is changed to true.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::setNeedsDisplay):
(WebCore::GraphicsLayerTextureMapper::setNeedsDisplayInRect):
(WebCore::GraphicsLayerTextureMapper::setDrawsContent):

10:55 AM Changeset in webkit [144077] by commit-queue@webkit.org
  • 4 edits
    1 add in trunk/Source/WTF

Fix the atomicIncrement implementation for MIPS GCC
https://bugs.webkit.org/show_bug.cgi?id=106739

Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-02-26
Reviewed by Oliver Hunt.

Implementation of missing sync_[add|sub]_and_fetch_8 functions.

Some architectures, like MIPS32, don't have GCC implementation for
builtin sync_* functions with 64 bits variable size. GCC answer
for the problem: If a target doesn't support atomic operations on
certain variable sizes, you are out of luck with atomicity in that
case (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56296). GCC >= 4.8
will support
atomic_* builtin functions for this purpose for all
the GCC targets, but for current compilers we have to include our
own implementation.

  • GNUmakefile.list.am:
  • WTF.pro:
  • wtf/Atomics.cpp: Added.

(WTF):
(WTF::getSwapLock):
(WTF::atomicStep):

  • wtf/CMakeLists.txt:
10:50 AM Changeset in webkit [144076] by vivek.vg@samsung.com
  • 2 edits in trunk/Tools

new-commit-bot: Fix the unit test newcommitbot-unittest.py due to r144040
https://bugs.webkit.org/show_bug.cgi?id=110884

Reviewed by Csaba Osztrogonác.

Adding the missing spaces before ':' in the unit test.

  • Scripts/webkitpy/tool/commands/newcommitbot_unittest.py:
10:44 AM Changeset in webkit [144075] by jsbell@chromium.org
  • 3 edits
    2 adds in trunk

IndexedDB: IDBObjectStore.index() doesn't report errors after deleteIndex()
https://bugs.webkit.org/show_bug.cgi?id=110792

Reviewed by Tony Chang.

Source/WebCore:

The object store's metadata wasn't updated if the index hadn't been accessed
by script and hence placed in the name->object map. Make sure the metadata
is always updated.

Test: storage/indexeddb/deleteIndex-bug110792.html

  • Modules/indexeddb/IDBObjectStore.cpp:

(WebCore::IDBObjectStore::deleteIndex): Always update the object store's metadata.

LayoutTests:

Added regression test for bug.

  • storage/indexeddb/deleteIndex-bug110792-expected.txt: Added.
  • storage/indexeddb/deleteIndex-bug110792.html: Added.
10:43 AM Changeset in webkit [144074] by akling@apple.com
  • 14 edits
    1 add in trunk/Source/JavaScriptCore

Unused Structure property tables waste 14MB on Membuster.
<http://webkit.org/b/110854>
<rdar://problem/13292104>

Reviewed by Filip Pizlo.

Turn PropertyTable into a GC object and have Structure drop unpinned tables when marking.
14 MB progression on Membuster3.

Added PropertyTable.cpp.

  • runtime/PropertyTable.cpp: Added.

(JSC::PropertyTable::create):
(JSC::PropertyTable::clone):
(JSC::PropertyTable::PropertyTable):
(JSC::PropertyTable::destroy):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::visitChildren):

Moved marking of property table values here from Structure::visitChildren().

  • runtime/StructureInlines.h:

(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):

Moved these to StructureInlines.h to break header dependency cycle between Structure/PropertyTable.

  • runtime/Structure.cpp:

(JSC::Structure::visitChildren):

Null out m_propertyTable if the table is unpinned. This'll cause the table to get GC'd.

(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):

  • runtime/Structure.h:

(Structure):

  • runtime/JSGlobalData.cpp:

(JSC::JSGlobalData::JSGlobalData):

  • runtime/JSGlobalData.h:

(JSGlobalData):

  • runtime/PropertyMapHashTable.h:

(PropertyTable):
(JSC::PropertyTable::createStructure):
(JSC::PropertyTable::copy):

10:38 AM Changeset in webkit [144073] by commit-queue@webkit.org
  • 11 edits in trunk

Unreviewed, rolling out r144019.
http://trac.webkit.org/changeset/144019
https://bugs.webkit.org/show_bug.cgi?id=110892

due to 8% perf regression on chromium-win7 intl1 page cycler,
see https://bugs.webkit.org/show_bug.cgi?id=110872 (Requested
by gasubic on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-26

Source/WebCore:

  • platform/text/LineBreakIteratorPoolICU.h:

(WebCore::LineBreakIteratorPool::take):
(WebCore::LineBreakIteratorPool::put):
(LineBreakIteratorPool):

  • platform/text/TextBreakIterator.h:

(WebCore):
(WebCore::LazyLineBreakIterator::LazyLineBreakIterator):
(WebCore::LazyLineBreakIterator::get):
(WebCore::LazyLineBreakIterator::reset):
(LazyLineBreakIterator):

  • platform/text/TextBreakIteratorICU.cpp:

(WebCore::acquireLineBreakIterator):
(WebCore::releaseLineBreakIterator):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::LineBreaker::nextSegmentBreak):

  • rendering/RenderText.cpp:

(WebCore::RenderText::computePreferredLogicalWidths):

  • rendering/RenderText.h:

(WebCore):

  • rendering/break_lines.cpp:

(WebCore):
(WebCore::isBreakableSpace):
(WebCore::needsLineBreakIterator):
(WebCore::nextBreakablePosition):
(WebCore::nextBreakablePositionIgnoringNBSP):

  • rendering/break_lines.h:

(WebCore):
(WebCore::isBreakable):

LayoutTests:

  • platform/mac/TestExpectations:
10:35 AM Changeset in webkit [144072] by danakj@chromium.org
  • 6 edits in trunk/Source

Create the SharedGraphicsContext3D through its own method.
https://bugs.webkit.org/show_bug.cgi?id=109345

Reviewed by James Robinson.

Source/Platform:

Add Platform API methods to get shared contexts from the embedder.

  • chromium/public/Platform.h:

(Platform):
(WebKit::Platform::sharedOffscreenGraphicsContext3D):
(WebKit::Platform::sharedOffscreenGrContext):

Source/WebCore:

Allow creating a GraphicsContext3DPrivate from an externally owned
WebGraphicsContext3D and GrContext. Then create the shared graphics
context from these provided by the embedder.

This falls back to the old path if the new methods return NULL to
let us land this immediately and then transition the chromium side
over to this path.

  • platform/chromium/support/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore):
(WebCore::GraphicsContext3DPrivate::createGraphicsContextFromExternalWebContextAndGrContext):
(WebCore::GraphicsContext3DPrivate::grContext):

  • platform/chromium/support/GraphicsContext3DPrivate.h:

(GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::webContext):

  • platform/graphics/gpu/SharedGraphicsContext3D.cpp:

(WebCore::SharedGraphicsContext3DImpl::getOrCreateContext):

10:32 AM Changeset in webkit [144071] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

Appease the QT bots.

10:29 AM Changeset in webkit [144070] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2][GTK] REGRESSION (r143463): unit test failure in WebKit2APITests/TestContextMenu
https://bugs.webkit.org/show_bug.cgi?id=110869

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-02-26
Reviewed by Martin Robinson.

Test was failing because of new media controls needs more space to be
painted than just 10x10 pixels.

  • UIProcess/API/gtk/tests/TestContextMenu.cpp:

(testContextMenuDefaultMenu): Modified test in order to give more space
to the media controls.

10:04 AM Changeset in webkit [144069] by yoli@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Use APIEntryShim when making JS call
https://bugs.webkit.org/show_bug.cgi?id=110787

Reviewed by Rob Buis.

PR# 301451.
Use APIEntryShim to fix an assert and ensure it is thread-safe.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::executeJavaScriptFunction):

9:50 AM Changeset in webkit [144068] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

REGRESSION(r143986): fast/files/revoke-blob-url.html asserts
https://bugs.webkit.org/show_bug.cgi?id=110885

Reviewed by Alexey Proskuryakov.

The ResourceRequest string constructor assumes that the string is a valid URL. Use KURL constructor instead.

  • html/DOMURL.cpp:

(WebCore::DOMURL::revokeObjectURL):

9:16 AM Changeset in webkit [144067] by dino@apple.com
  • 10 edits in trunk/Source

Draw intermediate snapshots if possible
https://bugs.webkit.org/show_bug.cgi?id=110811

Reviewed by Simon Fraser.

After http://webkit.org/b/110495 we delayed snapshotting until we've
received a nice image, but this made the page look like it is broken.
We should draw any intermediate snapshots that we find, which might
include content such as progress bars/spinners.

Source/WebCore:

  • html/HTMLPlugInElement.h:

(WebCore::HTMLPlugInElement::isPlugInImageElement): Expose virtual method
to indicate if this is a HTMLPlugInImageElement or not.

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::updateSnapshot): If we have
a RenderEmbeddedObject renderer, then tell it to repaint.

  • html/HTMLPlugInImageElement.h:

(WebCore::HTMLPlugInImageElement::snapshotImage): Expose an
accessor for snapshot images.

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::paintSnapshotImage): New helper
method to render an image directly. This code is similar to
that in RenderSnapshottedPlugIn.
(WebCore::RenderEmbeddedObject::paintContents): The virtual implementation
of this method for use when we have a snapshot to paint. If we are a plugin that is
in the process of being snapshotted, ask our HTMLPlugInImageElement for a
snapshot and paint that instead. In the case where we are not snapshotting,
or we do not yet have a snapshot, this will call back into the RenderWidget code.

  • rendering/RenderEmbeddedObject.h:

(RenderEmbeddedObject): New methods paintSnapshotImage and paintContents

  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::paintContents): New method called in the middle
of paint() that can be overridden by RenderEmbeddedObject. The code here was
simply moved out of the previous paint().
(WebCore::RenderWidget::paint): Call paintContents at the appropriate time.

  • rendering/RenderWidget.h:

(RenderWidget): New virtual method paintContents.

Source/WebKit2:

  • WebProcess/Plugins/PluginView.cpp:

(WebKit): Reinstate 60 attempts at snapshots before giving up.
(WebKit::PluginView::isAcceleratedCompositingEnabled): We do not
want accelerated compositing enabled when we are trying to capture
snapshots.

9:15 AM Changeset in webkit [144066] by abecsi@webkit.org
  • 2 edits in trunk/Source/WebKit2

Remove nonexistent StringPairVector.h from Target.pri after r142839

Unreviewed gardening.

  • Target.pri:
9:08 AM Changeset in webkit [144065] by leviw@chromium.org
  • 5 edits in trunk/Source

Add support for 8 bit TextRuns for Chromium/HarfBuzz
https://bugs.webkit.org/show_bug.cgi?id=99393

Reviewed by Eric Seidel.

Source/WebCore:

Adding support for 8 bit TextRuns for platforms using HarfBuzz. To accomplish this,
8 bit text runs are upconverted to 16 bit in the complex text path during string
normalization, as HarfBuzz operates on UChars.

No new tests. No change in behavior.

(WebCore::HarfBuzzShaperBase::setNormalizedBuffer):

  • platform/graphics/harfbuzz/HarfBuzzShaperBase.h:
  • platform/graphics/harfbuzz/HarfBuzzShaper.cpp:

(WebCore::normalizeCharacters):
(WebCore::HarfBuzzShaper::HarfBuzzShaper):

Source/WebKit/chromium:

Enabling 8 bit text runs for Chromium.

  • features.gypi:
8:51 AM WebKitGTK edited by kov@webkit.org
(diff)
8:37 AM Changeset in webkit [144064] by commit-queue@webkit.org
  • 17 edits in trunk/Source

Merged Tip and Debug log levels for web console.
https://bugs.webkit.org/show_bug.cgi?id=109919

Patch by Dmitry Zvorygin <zvorygin@chromium.org> on 2013-02-26
Reviewed by Pavel Feldman.

In every component either TIP or DEBUG level was used for reporting,
but not both. This patch is prerequisite for Web Inspector console log filtering.

Source/WebCore:

  • css/MediaList.cpp:

(WebCore::addResolutionWarningMessageToConsole):

  • inspector/ConsoleMessage.cpp:

(WebCore::messageLevelValue):

  • loader/appcache/ApplicationCacheGroup.cpp:

(WebCore::ApplicationCacheGroup::abort):

  • page/Console.cpp:

(WebCore::printMessageSourceAndLevelPrefix):

  • page/ConsoleTypes.h:
  • xml/XSLTProcessorLibxslt.cpp:

(WebCore::XSLTProcessor::parseErrorFunc):

  • xml/XSLTProcessorQt.cpp:

(WebCore::XSLTMessageHandler::handleMessage):

Source/WebKit/chromium:

  • public/WebConsoleMessage.h:
  • src/AssertMatchingEnums.cpp:
  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::addMessageToConsole):

Source/WebKit/mac:

  • WebCoreSupport/WebChromeClient.mm:

(stringForMessageLevel):

  • WebView/WebUIDelegatePrivate.h:

Source/WebKit/wx:

  • WebView.h:
8:28 AM Changeset in webkit [144063] by commit-queue@webkit.org
  • 10 edits
    4 adds in trunk/Source

[BlackBerry] Upstream the datalist support UI
https://bugs.webkit.org/show_bug.cgi?id=110736

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-02-26
Reviewed by Rob Buis.

Original code by Otto Derek Cheung <otcheung@rim.com>

Source/WebCore:

  • css/themeBlackBerry.css:

(input::-webkit-suggestion-dropdown-box):
(input::-webkit-suggestion-dropdown-box-item):
(input::-webkit-suggestion-prefix-text):
(input::-webkit-suggestion-dropdown-box-item-last):

  • platform/blackberry/RenderThemeBlackBerry.cpp:

(WebCore::RenderThemeBlackBerry::supportsDataListUI):
(WebCore):

  • platform/blackberry/RenderThemeBlackBerry.h:

(RenderThemeBlackBerry):

Source/WebKit:

  • PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

  • WebCoreSupport/SuggestionBoxElement.cpp: Added.

(WebCore):
(WebCore::SuggestionBoxElement::SuggestionBoxElement):
(WebCore::SuggestionBoxElement::~SuggestionBoxElement):
(WebCore::SuggestionBoxElement::create):
(WebCore::SuggestionBoxElement::defaultEventHandler):

  • WebCoreSupport/SuggestionBoxElement.h: Added.

(WebCore):
(SuggestionBoxElement):

  • WebCoreSupport/SuggestionBoxHandler.cpp: Added.

(WebCore):
(WebCore::SuggestionBoxHandler::SuggestionBoxHandler):
(WebCore::SuggestionBoxHandler::~SuggestionBoxHandler):
(WebCore::SuggestionBoxHandler::create):
(WebCore::SuggestionBoxHandler::setInputElementAndUpdateDisplay):
(WebCore::SuggestionBoxHandler::showDropdownBox):
(WebCore::SuggestionBoxHandler::hideDropdownBox):
(WebCore::SuggestionBoxHandler::changeInputElementInnerTextValue):
(WebCore::SuggestionBoxHandler::parseSuggestions):
(WebCore::SuggestionBoxHandler::insertSuggestionsToDropdownBox):
(WebCore::adjustDropdownBoxPosition):
(WebCore::SuggestionBoxHandler::buildDropdownBoxTree):

  • WebCoreSupport/SuggestionBoxHandler.h: Added.

(WebCore):
(SuggestionBoxHandler):
(WebCore::SuggestionBoxHandler::focusedElement):

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::setElementUnfocused):
(BlackBerry::WebKit::InputHandler::updateFormState):

  • WebKitSupport/InputHandler.h:

(WebCore):
(InputHandler):

  • WebKitSupport/TouchEventHandler.cpp:

(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

8:22 AM Changeset in webkit [144062] by caseq@chromium.org
  • 17 edits
    2 adds in trunk/Source

Source/WebCore: Web Inspector: plumb trace events to Timeline agent
https://bugs.webkit.org/show_bug.cgi?id=105796

Reviewed by Pavel Feldman.

  • plumb trace events to Timeline;
  • add TimelineTraceEventProcessor to process selected trace events;
  • emit timeline events from TimelineTraceEventProcessor.

Note that actual event processing logic is a separate change.

  • CMakeLists.txt: Added TimelineTraceEventProcessor.{h,cpp}.
  • GNUmakefile.list.am: Ditto.
  • Target.pri: Ditto.
  • WebCore.gypi: Ditto.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • inspector/InspectorAllInOne.cpp: Ditto.
  • inspector/InspectorClient.h:

(InspectorClient):
(WebCore::InspectorClient::setTraceEventCallback):

  • inspector/InspectorTimelineAgent.cpp: create/destroy trace event processor on start/stop.

(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::page):
(WebCore):

  • inspector/InspectorTimelineAgent.h:

(WebCore):
(InspectorTimelineAgent):

  • inspector/TimelineTraceEventProcessor.cpp: Added.

(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::processEvent):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):

  • inspector/TimelineTraceEventProcessor.h: Added.

(WebCore):
(TimelineTraceEventProcessor):
(TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::timestamp):
(WebCore::TimelineTraceEventProcessor::TraceEvent::phase):
(WebCore::TimelineTraceEventProcessor::TraceEvent::name):
(WebCore::TimelineTraceEventProcessor::TraceEvent::threadIdentifier):
(WebCore::TimelineTraceEventProcessor::TraceEvent::argumentCount):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asBool):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asDouble):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asString):
(WebCore::TimelineTraceEventProcessor::EventTypeEntry::EventTypeEntry):
(EventTypeEntry):

Source/WebKit/chromium: Plumbing trace events to Timeline

Web Inspector: plumb trace events to Timeline agent
https://bugs.webkit.org/show_bug.cgi?id=105796

Reviewed by Pavel Feldman.

  • public/WebDevToolsAgentClient.h:

(WebDevToolsAgentClient):
(WebKit::WebDevToolsAgentClient::setTraceEventCallback):

  • src/InspectorClientImpl.cpp:

(WebKit::InspectorClientImpl::setTraceEventCallback):
(WebKit):

  • src/InspectorClientImpl.h:

(InspectorClientImpl):

  • src/WebDevToolsAgentImpl.cpp:

(WebKit::WebDevToolsAgentImpl::setTraceEventCallback):
(WebKit):

  • src/WebDevToolsAgentImpl.h:

(WebDevToolsAgentImpl):

8:14 AM Changeset in webkit [144061] by eustas@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Web Inspector: Specify return type of WebInspector.UIString
https://bugs.webkit.org/show_bug.cgi?id=110095

Reviewed by Pavel Feldman.

Specify return type of WebInspector.UIString.
Fix new js-compiler warnings.

This change will increase type coverage by 0.4% (to 81%)

  • inspector/front-end/ObjectPropertiesSection.js: Fix type errors.
  • inspector/front-end/UIString.js:

(WebInspector.UIString): Return type specified.

8:08 AM Changeset in webkit [144060] by eustas@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [Resources] Cookies table looks empty.
https://bugs.webkit.org/show_bug.cgi?id=110870

Reviewed by Pavel Feldman.

Fixed data-grid selector.

  • inspector/front-end/resourcesPanel.css:

(.storage-view .data-grid): Fixed selector.

8:05 AM Changeset in webkit [144059] by schenney@chromium.org
  • 1 edit
    5 adds
    3 deletes in trunk/LayoutTests

[Chromium] New baselines for css3-modsel-15c

Unreviewed test expectations update.

  • platform/chromium-linux-x86/css3/selectors3/xml: Removed.
  • platform/chromium-linux/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
  • platform/chromium-mac-lion/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
  • platform/chromium-mac-snowleopard/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
  • platform/chromium-win/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
  • platform/chromium-win/css3/selectors3/xml/css3-modsel-15c-expected.txt: Added.
  • platform/chromium/css3/selectors3/xml/css3-modsel-15c-expected.png: Removed.
  • platform/chromium/css3/selectors3/xml/css3-modsel-15c-expected.txt: Removed.
7:59 AM Changeset in webkit [144058] by vsevik@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Migrate FileSystem inspection support to ResourceTreeModel's SecurityOriginAdded/Removed events.
https://bugs.webkit.org/show_bug.cgi?id=110878

Reviewed by Alexander Pavlov.

Recently added SecurityOriginAdded/Removed events support was essentially duplicated in
FileSystemModel. This patch migrates FileSystem inspection support to new events.

  • inspector/front-end/FileSystemModel.js:

(WebInspector.FileSystemModel):
(WebInspector.FileSystemModel.prototype._reset):
(WebInspector.FileSystemModel.prototype._securityOriginAdded):
(WebInspector.FileSystemModel.prototype._securityOriginRemoved):
(WebInspector.FileSystemModel.prototype._addOrigin):
(WebInspector.FileSystemModel.prototype._removeOrigin):
(WebInspector.FileSystemModel.prototype.refreshFileSystemList):

7:57 AM Changeset in webkit [144057] by Antoine Quint
  • 5 edits in trunk

Web Inspector: Cannot deep expand an element that has previously been partially expanded
https://bugs.webkit.org/show_bug.cgi?id=110424

In the case where the children from the provided node have already been pushed, traverse children at the depth provided until we find children that have not been pushed yet.

Reviewed by Pavel Feldman.

7:53 AM Changeset in webkit [144056] by akling@apple.com
  • 14 edits
    1 delete in trunk/Source/JavaScriptCore

Unreviewed, rolling out r144054.
http://trac.webkit.org/changeset/144054
https://bugs.webkit.org/show_bug.cgi?id=110854

broke builds

(JSC::JSGlobalData::JSGlobalData):

  • runtime/JSGlobalData.h:

(JSGlobalData):

  • runtime/PropertyMapHashTable.h:

(PropertyTable):
(JSC::PropertyTable::PropertyTable):
(JSC):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::copy):

  • runtime/PropertyTable.cpp: Removed.
  • runtime/Structure.cpp:

(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):
(JSC::Structure::visitChildren):

  • runtime/Structure.h:

(JSC):
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):
(Structure):

  • runtime/StructureInlines.h:
7:43 AM Changeset in webkit [144055] by commit-queue@webkit.org
  • 6 edits in trunk

REGRESSION (r143619): Crashes in three layout tests
https://bugs.webkit.org/show_bug.cgi?id=110588

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-02-26
Reviewed by Gustavo Noronha Silva.

Source/WebKit/gtk:

Guard against null main resource identifiers. The main resource
identifier can be null at various times during the load. A null
identifier is never equal to the ones we are looking to remove.

  • WebCoreSupport/FrameLoaderClientGtk.cpp:

(WebKit::FrameLoaderClient::dispatchDidFinishLoading): Use the new webkitWebViewRemoveSubresource helper.
(WebKit::FrameLoaderClient::dispatchDidFailLoading): ditto.

  • webkit/webkitwebview.cpp:

(webkitWebViewRemoveSubresource): Added this helper which removes a subresource, but
never touches the main resource. This is adapted from the old method, for which the
main resource branch was dead code.

  • webkit/webkitwebviewprivate.h: Update the method list.

LayoutTests:

  • platform/gtk/TestExpectations: Unskip some tests which are no longer

crashing.

7:36 AM WebKitGTK/2.0.x edited by sergio@webkit.org
(diff)
7:32 AM Changeset in webkit [144054] by akling@apple.com
  • 14 edits
    1 add in trunk/Source/JavaScriptCore

Unused Structure property tables waste 14MB on Membuster.
<http://webkit.org/b/110854>
<rdar://problem/13292104>

Reviewed by Filip Pizlo.

Turn PropertyTable into a GC object and have Structure drop unpinned tables when marking.
14 MB progression on Membuster3.

Added PropertyTable.cpp.

  • runtime/PropertyTable.cpp: Added.

(JSC::PropertyTable::create):
(JSC::PropertyTable::clone):
(JSC::PropertyTable::PropertyTable):
(JSC::PropertyTable::destroy):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::visitChildren):

Moved marking of property table values here from Structure::visitChildren().

  • runtime/StructureInlines.h:

(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):

Moved these to StructureInlines.h to break header dependency cycle between Structure/PropertyTable.

  • runtime/Structure.cpp:

(JSC::Structure::visitChildren):

Null out m_propertyTable if the table is unpinned. This'll cause the table to get GC'd.

(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):

  • runtime/Structure.h:

(Structure):

  • runtime/JSGlobalData.cpp:

(JSC::JSGlobalData::JSGlobalData):

  • runtime/JSGlobalData.h:

(JSGlobalData):

  • runtime/PropertyMapHashTable.h:

(PropertyTable):
(JSC::PropertyTable::createStructure):
(JSC::PropertyTable::copy):

6:22 AM Changeset in webkit [144053] by caseq@chromium.org
  • 25 edits
    2 deletes in trunk

Unreviewed, rolling out r144041, r144044, and r144048.
http://trac.webkit.org/changeset/144041
http://trac.webkit.org/changeset/144044
http://trac.webkit.org/changeset/144048
https://bugs.webkit.org/show_bug.cgi?id=105796

Broke build

Source/WebCore:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorClient.h:
  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::willPaintImpl):

  • inspector/InspectorInstrumentation.h:
  • inspector/InspectorTimelineAgent.cpp:

(TimelineRecordType):
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::didBeginFrame):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):

  • inspector/InspectorTimelineAgent.h:

(WebCore):
(InspectorTimelineAgent):

  • inspector/TimelineRecordFactory.cpp:
  • inspector/TimelineRecordFactory.h:
  • inspector/TimelineTraceEventProcessor.cpp: Removed.
  • inspector/TimelineTraceEventProcessor.h: Removed.
  • inspector/front-end/TimelineModel.js:
  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel._initRecordStyles):

Source/WebKit/chromium:

  • public/WebDevToolsAgentClient.h:
  • src/InspectorClientImpl.cpp:
  • src/InspectorClientImpl.h:

(InspectorClientImpl):

  • src/WebDevToolsAgentImpl.cpp:
  • src/WebDevToolsAgentImpl.h:

(WebDevToolsAgentImpl):

LayoutTests:

  • inspector/timeline/timeline-enum-stability-expected.txt:
6:20 AM Changeset in webkit [144052] by vsevik@chromium.org
  • 9 edits in trunk

Web Inspector: Migrate IndexedDB support to ResourceTreeModel's SecurityOriginAdded/Removed events.
https://bugs.webkit.org/show_bug.cgi?id=110863

Reviewed by Alexander Pavlov.

Source/WebCore:

Recently added SecurityOriginAdded/Removed events support was essentially duplicated in
IndexedDBModel. This patch migrates IndexedDB support to new events.

  • inspector/Inspector.json:
  • inspector/InspectorIndexedDBAgent.cpp:

(WebCore):
(WebCore::InspectorIndexedDBAgent::requestDatabaseNames):
(WebCore::InspectorIndexedDBAgent::requestDatabase):
(WebCore::InspectorIndexedDBAgent::requestData):

  • inspector/InspectorIndexedDBAgent.h:

(InspectorIndexedDBAgent):

  • inspector/front-end/IndexedDBModel.js:

(WebInspector.IndexedDBModel):
(WebInspector.IndexedDBModel.prototype._reset):
(WebInspector.IndexedDBModel.prototype.refreshDatabaseNames):
(WebInspector.IndexedDBModel.prototype._securityOriginAdded):
(WebInspector.IndexedDBModel.prototype._securityOriginRemoved):
(WebInspector.IndexedDBModel.prototype._addOrigin):
(WebInspector.IndexedDBModel.prototype._removeOrigin):
(WebInspector.IndexedDBModel.prototype._updateOriginDatabaseNames):
(WebInspector.IndexedDBModel.prototype._loadDatabaseNames):
(WebInspector.IndexedDBModel.prototype._loadDatabase):
(WebInspector.IndexedDBModel.prototype.):
(WebInspector.IndexedDBModel.prototype._requestData):

  • inspector/front-end/ResourceTreeModel.js:

(WebInspector.ResourceTreeModel.prototype.securityOrigins):

LayoutTests:

  • http/tests/inspector/indexeddb/database-names-expected.txt:
  • http/tests/inspector/indexeddb/database-names.html:
5:57 AM Changeset in webkit [144051] by Csaba Osztrogonác
  • 9 edits
    6 copies in trunk/LayoutTests

Unreviewed fix after r144032.
https://bugs.webkit.org/show_bug.cgi?id=110734

Update expected files due to JSC/V8 differences.

Patch by Csaba Osztrogonác <Csaba Osztrogonác> on 2013-02-26

  • TestExpectations: Skip 2 failing tests until proper fix.
  • html5lib/generated/run-template-write.html:
  • html5lib/generated/run-tests1-data-expected.txt:
  • html5lib/generated/run-tests1-write-expected.txt:
  • html5lib/generated/run-tests18-data-expected.txt:
  • html5lib/generated/run-tests18-write-expected.txt:
  • html5lib/generated/run-tests7-data-expected.txt:
  • html5lib/generated/run-tests7-write-expected.txt:
  • platform/chromium/html5lib/generated/run-tests1-data-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests1-data-expected.txt.
  • platform/chromium/html5lib/generated/run-tests1-write-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests1-write-expected.txt.
  • platform/chromium/html5lib/generated/run-tests18-data-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests18-data-expected.txt.
  • platform/chromium/html5lib/generated/run-tests18-write-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests18-write-expected.txt.
  • platform/chromium/html5lib/generated/run-tests7-data-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests7-data-expected.txt.
  • platform/chromium/html5lib/generated/run-tests7-write-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests7-write-expected.txt.
5:51 AM Changeset in webkit [144050] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
5:51 AM Changeset in webkit [144049] by apavlov@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: in protocol make field "securityOrigin" in type Page.Frame mandatory
https://bugs.webkit.org/show_bug.cgi?id=80857

Reviewed by Vsevolod Vlasov.

Frame.securityOrigin has always been set to a valid value, so this change just fixes
the protocol flaw.

  • inspector/Inspector.json:
  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::buildObjectForFrame):

  • inspector/front-end/ResourceTreeModel.js:

(WebInspector.ResourceTreeFrame):
(WebInspector.ResourceTreeFrame.prototype._navigate):

5:44 AM Changeset in webkit [144048] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix following r144041.

  • inspector/TimelineTraceEventProcessor.h:

(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):

5:43 AM Changeset in webkit [144047] by vivek.vg@samsung.com
  • 2 edits in trunk/Source/WebCore

Web Inspector: DataGrid should reveal and select next/previous DataGridNode upon deletion of selected node
https://bugs.webkit.org/show_bug.cgi?id=110862

Reviewed by Alexander Pavlov.

While deleting entries in the DataGrid, deleting of selected node should trigger selection of
next possible (backward/forward) DataGridNode.

  • inspector/front-end/DataGrid.js:

(WebInspector.DataGrid.prototype._keyDown):
(WebInspector.DataGridNode.prototype.get leftPadding):
(WebInspector.DataGridNode.prototype.isEventWithinDisclosureTriangle):

5:42 AM Changeset in webkit [144046] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] TestExpectations cleanup.

Unreviewed removal of expectations for tests that are now passing.

  • platform/chromium/TestExpectations:
5:37 AM Changeset in webkit [144045] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

REGRESSION (r143931): set-cookie-on-redirect.html breaks subsequent tests
https://bugs.webkit.org/show_bug.cgi?id=110844

Patch by Sergio Villar Senin <svillar@igalia.com> on 2013-02-26
Reviewed by Alexey Proskuryakov.

Clean up cookies at the beginning and after finishing the test in
order not to break other tests behavior.

  • http/tests/cookies/resources/set-cookie-on-redirect.php: clear cookie before returning.
  • http/tests/cookies/set-cookie-on-redirect.html: clear all cookies before starting the test.
5:12 AM Changeset in webkit [144044] by caseq@chromium.org
  • 13 edits in trunk

Source/WebCore: Web Inspector: show raster tasks on Timeline
https://bugs.webkit.org/show_bug.cgi?id=105851

  • add PaintLayer, Paint & RasterTask trace events handling to trace event processor;
  • upon begin frame, emit aggregated background event for all raster tasks related to the inspected page.

Reviewed by Pavel Feldman.

  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::willPaintImpl):
(InstrumentationEvents):
(InstrumentationEventArguments):

  • inspector/InspectorInstrumentation.h:

(InstrumentationEvents):
(WebCore):
(InstrumentationEventArguments):

  • inspector/InspectorTimelineAgent.cpp:

(TimelineRecordType):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::didBeginFrame):

  • inspector/InspectorTimelineAgent.h:

(TimelineRecordType):
(WebCore):

  • inspector/TimelineRecordFactory.cpp:

(WebCore::TimelineRecordFactory::createRasterData):
(WebCore):

  • inspector/TimelineRecordFactory.h:

(TimelineRecordFactory):

  • inspector/TimelineTraceEventProcessor.cpp:

(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::registerHandler):
(WebCore::TimelineTraceEventProcessor::shutdown):
(WebCore::TimelineTraceEventProcessor::TraceEvent::findParameter):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::onBeginFrame):
(WebCore::TimelineTraceEventProcessor::onPaintLayerBegin):
(WebCore::TimelineTraceEventProcessor::onPaintLayerEnd):
(WebCore::TimelineTraceEventProcessor::onRasterTaskBegin):
(WebCore::TimelineTraceEventProcessor::onRasterTaskEnd):
(WebCore::TimelineTraceEventProcessor::onLayerDeleted):
(WebCore::TimelineTraceEventProcessor::onPaint):
(WebCore::TimelineTraceEventProcessor::flushRasterizerStatistics):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):

  • inspector/TimelineTraceEventProcessor.h:

(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::id):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asBool):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asDouble):
(TimelineTraceEventProcessor):

  • inspector/front-end/TimelineModel.js:
  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel._initRecordStyles):

LayoutTests: Web Inspector: show deferred paints on Timeline
https://bugs.webkit.org/show_bug.cgi?id=105851

Reviewed by Pavel Feldman.

  • inspector/timeline/timeline-enum-stability-expected.txt: Added "Rasterize" record type.
5:11 AM WebKitGtkLayoutTests edited by Manuel Rego Casasnovas
Add explanation to launch a single unit test (diff)
5:04 AM Changeset in webkit [144043] by jocelyn.turcotte@digia.com
  • 9 edits
    1 add in trunk/Source

Implement JIT on Windows 64 bits
https://bugs.webkit.org/show_bug.cgi?id=107965

Reviewed by Simon Hausmann.

Source/JavaScriptCore:

  1. MSVC doesn't support inline assembly for 64 bits, implements the trampoline in a separate ASM file.
  1. Windows 64 bits has a different calling convention than other OSes following the AMD64 ABI.

Differences that we have to handle here:

  • Registers passed parameters are RCX, RDX, R8 and R9 instead of RDI, RSI, RDX, RCX, R8 and R9
  • RDI and RSI must be preserved by callee
  • Only return values <= 8 bytes can be returned by register (RDX can't be used to return a second word)
  • There is no red-zone after RIP on the stack, but instead 4 reserved words before it
  • Target.pri:
  • jit/JITStubs.cpp:
  • jit/JITStubs.h:

(JSC):
(JITStackFrame):
(JSC::JITStackFrame::returnAddressSlot):

  • jit/JITStubsMSVC64.asm: Added.
  • jit/JSInterfaceJIT.h:

(JSInterfaceJIT):

  • jit/ThunkGenerators.cpp:

(JSC::nativeForGenerator):

  • yarr/YarrJIT.cpp:

(YarrGenerator):
(JSC::Yarr::YarrGenerator::generateEnter):
(JSC::Yarr::YarrGenerator::generateReturn):

Source/WTF:

  • wtf/Platform.h:
5:01 AM Changeset in webkit [144042] by jocelyn.turcotte@digia.com
  • 2 edits in trunk/Source/WebCore

Work around a MSVC 2012 Update 1 bug causing a crash on x86
https://bugs.webkit.org/show_bug.cgi?id=110488

Reviewed by Anders Carlsson.

The crash happens when building with /O2, where TextEncodingNameHash::equal is
incorrectly optimized with the inlined toASCIILower and uses a register already in use.
The function returns false incorrectly, causing a mismatch of text encoding name which
then results in a null pointer access.

Slightly rewording the use of the inline function lets the compiler produce correct code.

The bug has already been reported and should be fixed in the next release of MSVS later this year.
https://connect.microsoft.com/VisualStudio/feedback/details/777533/vs2012-c-optimizing-bug-when-using-inline-and-char-return-type-x86-target-only

  • platform/text/TextEncodingRegistry.cpp:
4:52 AM Changeset in webkit [144041] by caseq@chromium.org
  • 17 edits
    2 adds in trunk/Source

Web Inspector: plumb trace events to Timeline agent
https://bugs.webkit.org/show_bug.cgi?id=105796

Reviewed by Pavel Feldman.

Source/WebCore:

  • plumb trace events to Timeline;
  • add TimelineTraceEventProcessor to process selected trace events;
  • emit timeline events from TimelineTraceEventProcessor.

Note that actual event processing logic is a separate change.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/Inspector.json:
  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorClient.h:

(InspectorClient):
(WebCore::InspectorClient::setTraceEventCallback):

  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::appendBackgroundThreadRecord):
(WebCore):
(WebCore::InspectorTimelineAgent::page):

  • inspector/InspectorTimelineAgent.h:

(WebCore):
(InspectorTimelineAgent):

  • inspector/TimelineTraceEventProcessor.cpp: Added.

(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::processEvent):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):

  • inspector/TimelineTraceEventProcessor.h: Added.

(WebCore):
(TimelineTraceEventProcessor):
(TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::timestamp):
(WebCore::TimelineTraceEventProcessor::TraceEvent::phase):
(WebCore::TimelineTraceEventProcessor::TraceEvent::name):
(WebCore::TimelineTraceEventProcessor::TraceEvent::threadIdentifier):
(WebCore::TimelineTraceEventProcessor::TraceEvent::argumentCount):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asBool):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asDouble):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asString):
(WebCore::TimelineTraceEventProcessor::EventTypeEntry::EventTypeEntry):
(EventTypeEntry):

  • inspector/front-end/TimelineFrameController.js:

(WebInspector.TimelineFrameController.prototype._addRecord):

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelineRecordListRow.prototype.update):
(WebInspector.TimelineRecordGraphRow.prototype.update):

  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel.Record):
(WebInspector.TimelinePresentationModel.insertRetrospecitveRecord):
(WebInspector.TimelinePresentationModel.Record.prototype.get isBackground):

  • inspector/front-end/timelinePanel.css:

(.timeline-tree-item.background .timeline-tree-icon):
(.timeline-graph-side.background .timeline-graph-bar):

Source/WebKit/chromium:

Plumb trace events to Inspector.

  • public/WebDevToolsAgentClient.h:

(WebDevToolsAgentClient):
(WebKit::WebDevToolsAgentClient::setTraceEventCallback):

  • src/InspectorClientImpl.cpp:

(WebKit::InspectorClientImpl::setTraceEventCallback):
(WebKit):

  • src/InspectorClientImpl.h:

(InspectorClientImpl):

  • src/WebDevToolsAgentImpl.cpp:

(WebKit::WebDevToolsAgentImpl::setTraceEventCallback):
(WebKit):

  • src/WebDevToolsAgentImpl.h:

(WebDevToolsAgentImpl):

4:52 AM Changeset in webkit [144040] by vivek.vg@samsung.com
  • 2 edits in trunk/Tools

new-commit-bot: Some IRC clients doesn't linkify rollout messages
https://bugs.webkit.org/show_bug.cgi?id=110861

Reviewed by Ryosuke Niwa.

Adding the space before ':' in order to fix the links shown for the rollout message.

  • Scripts/webkitpy/tool/commands/newcommitbot.py:

(NewCommitBot._summarize_commit_log):

4:42 AM Changeset in webkit [144039] by caseq@chromium.org
  • 8 edits in trunk/Source/WebCore

Web Inspector: display background events on Timeline
https://bugs.webkit.org/show_bug.cgi?id=108599

Reviewed by Pavel Feldman.

  • add optional `thread' field to timeline event;
  • if thread field is present, display the event as 'background' (hollow bar / list icon), align to nearest foreground event;
  • do not account background events in Frame mode of overview.
  • inspector/Inspector.json:
  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::appendBackgroundThreadRecord):
(WebCore):

  • inspector/InspectorTimelineAgent.h:

(InspectorTimelineAgent):

  • inspector/front-end/TimelineFrameController.js:

(WebInspector.TimelineFrameController.prototype._addRecord):

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelineRecordListRow.prototype.update):
(WebInspector.TimelineRecordGraphRow.prototype.update):

  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel.Record):
(WebInspector.TimelinePresentationModel.insertRetrospecitveRecord):
(WebInspector.TimelinePresentationModel.Record.prototype.get isBackground):

  • inspector/front-end/timelinePanel.css:

(.timeline-tree-item.background .timeline-tree-icon):
(.timeline-graph-side.background .timeline-graph-bar):

4:33 AM Changeset in webkit [144038] by haraken@chromium.org
  • 12 edits in trunk/Source/WebCore

[V8] Rename BatchedCallback to BatchedMethod
https://bugs.webkit.org/show_bug.cgi?id=110791

Reviewed by Adam Barth.

Now 'Callback' is used to refer to functions that are called back
by V8. DOM methods should be referred to as 'Method's.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateImplementation):

  • bindings/scripts/test/V8/V8Float64Array.cpp:

(WebCore):
(WebCore::ConfigureV8Float64ArrayTemplate):

  • bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:

(WebCore):
(WebCore::ConfigureV8TestCustomNamedGetterTemplate):

  • bindings/scripts/test/V8/V8TestEventTarget.cpp:

(WebCore):
(WebCore::ConfigureV8TestEventTargetTemplate):

  • bindings/scripts/test/V8/V8TestInterface.cpp:

(WebCore):
(WebCore::ConfigureV8TestInterfaceTemplate):

  • bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:

(WebCore):
(WebCore::ConfigureV8TestMediaQueryListListenerTemplate):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore):
(WebCore::ConfigureV8TestObjTemplate):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:

(WebCore):
(WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):

  • bindings/scripts/test/V8/V8TestTypedefs.cpp:

(WebCore):
(WebCore::ConfigureV8TestTypedefsTemplate):

  • bindings/v8/V8DOMConfiguration.cpp:

(WebCore::V8DOMConfiguration::batchConfigureCallbacks):
(WebCore::V8DOMConfiguration::configureTemplate):

  • bindings/v8/V8DOMConfiguration.h:

(V8DOMConfiguration):

4:08 AM WebKitGTK/2.0.x edited by Manuel Rego Casasnovas
(diff)
4:01 AM Changeset in webkit [144037] by toyoshim@chromium.org
  • 3 edits
    3 adds in trunk

Add User-Agent header in opening handshake headers.
https://bugs.webkit.org/show_bug.cgi?id=110601

Reviewed by Alexey Proskuryakov.

RFC-6455 doesn't require to send User-Agent header, but allow it.
Many web application developers want to have it, and Firefox already
did it. This patch adds User-Agent header in opening handshake also in
WebKit ports.

Test: http/tests/websocket/tests/hybi/useragent-in-openinghandshake.html

Source/WebCore:

  • Modules/websockets/WebSocketHandshake.cpp:

(WebCore::WebSocketHandshake::clientHandshakeMessage):
(WebCore::WebSocketHandshake::clientHandshakeRequest):

LayoutTests:

  • http/tests/websocket/tests/hybi/sendback_ua_wsh.py: Added.

(web_socket_do_extra_handshake):
(web_socket_transfer_data):

  • http/tests/websocket/tests/hybi/useragent-in-openinghandshake-expected.txt: Added.
  • http/tests/websocket/tests/hybi/useragent-in-openinghandshake.html: Added.
4:01 AM WebKitGTK/2.0.x edited by Manuel Rego Casasnovas
(diff)
3:41 AM Changeset in webkit [144036] by mkwst@chromium.org
  • 2 edits in trunk/Source/WebCore

XSSAuditor: Don't rely on implicit casting when copying the document's KURL to String.
https://bugs.webkit.org/show_bug.cgi?id=110859

Reviewed by Jochen Eisinger.

XSSAuditor::init should explicitly make a thread-safe copy of the
document's URL as a String rather than relying on implicit casting from
a copy of the KURL.

This shouldn't change any visible behavior; all existing XSSAuditor
tests should continue to pass. They'll now just be a bit more smug while
doing so.

  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::init):

3:38 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
3:31 AM Changeset in webkit [144035] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Updating expectations for two inspector tests.

Expanding expectation for media/encrypted-media/encrypted-media-syntax.html to expect timeouts as well.
Adding a flaky failure expectation for svg/custom/animation-currentColor.svg.

3:30 AM WebKitGTK/2.0.x edited by Claudio Saavedra
(diff)
3:28 AM WebKitGTK/1.10.x edited by Claudio Saavedra
(diff)
3:22 AM Changeset in webkit [144034] by jochen@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

[chromium] add content shell specific TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=110710

Reviewed by Eric Seidel.

For now, add tests that pass on content shell but fail on DRT.
Next, I will file bugs for all the remaining failing tests and skip
them here to ease the transition from DRT.

  • platform/chromium/ContentShellTestExpectations: Added.
3:09 AM Changeset in webkit [144033] by zarvai@inf.u-szeged.hu
  • 1 edit
    3 moves
    1 add in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt-5.0-wk1/http/tests/navigation/forward-and-cancel-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/navigation/forward-and-cancel-expected.txt.
  • platform/qt-5.0-wk1/http/tests/navigation/postredirect-frames-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/navigation/postredirect-frames-expected.txt.
  • platform/qt-5.0-wk1/http/tests/navigation/postredirect-goback2-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/navigation/postredirect-goback2-expected.txt.
3:05 AM Changeset in webkit [144032] by eric@webkit.org
  • 4 edits
    82 copies
    7 moves
    93 adds
    50 deletes in trunk/LayoutTests

Layout Test Multiple html5lib/ tests are too slow and should be split.
https://bugs.webkit.org/show_bug.cgi?id=110734

Reviewed by Adam Barth.

Split all of the html5lib tests into write and data variants
instead of running both in sequence in each test.
I added a script to autogenerate all of the test harness files
from the *.dat files in resources/ (which we sync with the
upstream html5lib tests.

I removed all the old tests and expectations as well as TestExpectation entries.
All of these tests should now be fast enough to avoid timeout on all platforms.
I set the expectations from my chromium-linux (v8) machine, thus someone
from a jsc port will need to rebaseline appropriately from their machine.

(WrapperGenerator):
(_files_in_directory_with_suffix):
(_last_path_component_removing_suffix):
(_remove_harness_prefix):
(_remove_harness_type):
(_test_name_from_harness_name):
(_remove_stale_tests):
(_input_path):
(_harness_path):
(_harness_content):
(_write_harness):
(main):

  • html5lib/generated/run-adoption01-data-expected.txt: Added.
  • html5lib/generated/run-adoption01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-adoption01-write-expected.txt: Added.
  • html5lib/generated/run-adoption01-write.html: Renamed from LayoutTests/html5lib/generated/run-template.html.
  • html5lib/generated/run-adoption02-data-expected.txt: Added.
  • html5lib/generated/run-adoption02-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-adoption02-write-expected.txt: Added.
  • html5lib/generated/run-adoption02-write.html: Renamed from LayoutTests/html5lib/generated/run-tests11.html.
  • html5lib/generated/run-comments01-data-expected.txt: Added.
  • html5lib/generated/run-comments01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-comments01-write-expected.txt: Added.
  • html5lib/generated/run-comments01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-doctype01-data-expected.txt: Added.
  • html5lib/generated/run-doctype01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-doctype01-write-expected.txt: Added.
  • html5lib/generated/run-doctype01-write.html: Renamed from LayoutTests/html5lib/generated/run-tests10.html.
  • html5lib/generated/run-domjs-unsafe-data-expected.txt: Added.
  • html5lib/generated/run-domjs-unsafe-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-domjs-unsafe-write-expected.txt: Added.
  • html5lib/generated/run-domjs-unsafe-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-entities01-data-expected.txt: Added.
  • html5lib/generated/run-entities01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-entities01-write-expected.txt: Added.
  • html5lib/generated/run-entities01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-entities02-data-expected.txt: Added.
  • html5lib/generated/run-entities02-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-entities02-write-expected.txt: Added.
  • html5lib/generated/run-entities02-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-html5test-com-data-expected.txt: Added.
  • html5lib/generated/run-html5test-com-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-html5test-com-write-expected.txt: Added.
  • html5lib/generated/run-html5test-com-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-inbody01-data-expected.txt: Added.
  • html5lib/generated/run-inbody01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-inbody01-write-expected.txt: Added.
  • html5lib/generated/run-inbody01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-isindex-data-expected.txt: Added.
  • html5lib/generated/run-isindex-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-isindex-write-expected.txt: Added.
  • html5lib/generated/run-isindex-write.html: Renamed from LayoutTests/html5lib/generated/run-tests2.html.
  • html5lib/generated/run-pending-spec-changes-data-expected.txt: Added.
  • html5lib/generated/run-pending-spec-changes-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-pending-spec-changes-plain-text-unsafe-data-expected.txt: Added.
  • html5lib/generated/run-pending-spec-changes-plain-text-unsafe-data.html: Added.
  • html5lib/generated/run-pending-spec-changes-plain-text-unsafe-write-expected.txt: Added.
  • html5lib/generated/run-pending-spec-changes-plain-text-unsafe-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-pending-spec-changes-write-expected.txt: Added.
  • html5lib/generated/run-pending-spec-changes-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-plain-text-unsafe-data-expected.txt: Added.
  • html5lib/generated/run-plain-text-unsafe-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-plain-text-unsafe-write-expected.txt: Added.
  • html5lib/generated/run-plain-text-unsafe-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-scriptdata01-data-expected.txt: Added.
  • html5lib/generated/run-scriptdata01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-scriptdata01-write-expected.txt: Added.
  • html5lib/generated/run-scriptdata01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tables01-data-expected.txt: Added.
  • html5lib/generated/run-tables01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tables01-write-expected.txt: Added.
  • html5lib/generated/run-tables01-write.html: Renamed from LayoutTests/html5lib/generated/run-tests22.html.
  • html5lib/generated/run-template-data-expected.txt: Added.
  • html5lib/generated/run-template-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-template-expected.txt: Removed.
  • html5lib/generated/run-template-write-expected.txt: Added.
  • html5lib/generated/run-template-write.html: Renamed from LayoutTests/html5lib/generated/run-tests3.html.
  • html5lib/generated/run-tests1-data-expected.txt: Added.
  • html5lib/generated/run-tests1-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests1-expected.txt: Removed.
  • html5lib/generated/run-tests1-write-expected.txt: Added.
  • html5lib/generated/run-tests1-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests10-data-expected.txt: Added.
  • html5lib/generated/run-tests10-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests10-expected.txt: Removed.
  • html5lib/generated/run-tests10-write-expected.txt: Added.
  • html5lib/generated/run-tests10-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests11-data-expected.txt: Added.
  • html5lib/generated/run-tests11-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests11-expected.txt: Removed.
  • html5lib/generated/run-tests11-write-expected.txt: Added.
  • html5lib/generated/run-tests11-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests12-data-expected.txt: Added.
  • html5lib/generated/run-tests12-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests12-expected.txt: Removed.
  • html5lib/generated/run-tests12-write-expected.txt: Added.
  • html5lib/generated/run-tests12-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests12.html: Removed.
  • html5lib/generated/run-tests14-data-expected.txt: Added.
  • html5lib/generated/run-tests14-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests14-expected.txt: Removed.
  • html5lib/generated/run-tests14-write-expected.txt: Added.
  • html5lib/generated/run-tests14-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests14.html: Removed.
  • html5lib/generated/run-tests15-data-expected.txt: Added.
  • html5lib/generated/run-tests15-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests15-expected.txt: Removed.
  • html5lib/generated/run-tests15-write-expected.txt: Added.
  • html5lib/generated/run-tests15-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests15.html: Removed.
  • html5lib/generated/run-tests16-data-expected.txt: Added.
  • html5lib/generated/run-tests16-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests16-expected.txt: Removed.
  • html5lib/generated/run-tests16-write-expected.txt: Added.
  • html5lib/generated/run-tests16-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests16.html: Removed.
  • html5lib/generated/run-tests17-data-expected.txt: Added.
  • html5lib/generated/run-tests17-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests17-expected.txt: Removed.
  • html5lib/generated/run-tests17-write-expected.txt: Added.
  • html5lib/generated/run-tests17-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests17.html: Removed.
  • html5lib/generated/run-tests18-data-expected.txt: Added.
  • html5lib/generated/run-tests18-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests18-expected.txt: Removed.
  • html5lib/generated/run-tests18-write-expected.txt: Added.
  • html5lib/generated/run-tests18-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests18.html: Removed.
  • html5lib/generated/run-tests19-data-expected.txt: Added.
  • html5lib/generated/run-tests19-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests19-expected.txt: Removed.
  • html5lib/generated/run-tests19-write-expected.txt: Added.
  • html5lib/generated/run-tests19-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests19.html: Removed.
  • html5lib/generated/run-tests2-data-expected.txt: Added.
  • html5lib/generated/run-tests2-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests2-expected.txt: Removed.
  • html5lib/generated/run-tests2-write-expected.txt: Added.
  • html5lib/generated/run-tests2-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests20-data-expected.txt: Added.
  • html5lib/generated/run-tests20-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests20-expected.txt: Removed.
  • html5lib/generated/run-tests20-write-expected.txt: Added.
  • html5lib/generated/run-tests20-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests20.html: Removed.
  • html5lib/generated/run-tests21-data-expected.txt: Added.
  • html5lib/generated/run-tests21-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests21-expected.txt: Removed.
  • html5lib/generated/run-tests21-write-expected.txt: Added.
  • html5lib/generated/run-tests21-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests21.html: Removed.
  • html5lib/generated/run-tests22-data-expected.txt: Added.
  • html5lib/generated/run-tests22-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests22-expected.txt: Removed.
  • html5lib/generated/run-tests22-write-expected.txt: Added.
  • html5lib/generated/run-tests22-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests23-data-expected.txt: Added.
  • html5lib/generated/run-tests23-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests23-expected.txt: Removed.
  • html5lib/generated/run-tests23-write-expected.txt: Added.
  • html5lib/generated/run-tests23-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests23.html: Removed.
  • html5lib/generated/run-tests24-data-expected.txt: Added.
  • html5lib/generated/run-tests24-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests24-expected.txt: Removed.
  • html5lib/generated/run-tests24-write-expected.txt: Added.
  • html5lib/generated/run-tests24-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests24.html: Removed.
  • html5lib/generated/run-tests25-data-expected.txt: Added.
  • html5lib/generated/run-tests25-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests25-expected.txt: Removed.
  • html5lib/generated/run-tests25-write-expected.txt: Added.
  • html5lib/generated/run-tests25-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests25.html: Removed.
  • html5lib/generated/run-tests26-data-expected.txt: Added.
  • html5lib/generated/run-tests26-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests26-expected.txt: Removed.
  • html5lib/generated/run-tests26-write-expected.txt: Added.
  • html5lib/generated/run-tests26-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests26.html: Removed.
  • html5lib/generated/run-tests3-data-expected.txt: Added.
  • html5lib/generated/run-tests3-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests3-expected.txt: Removed.
  • html5lib/generated/run-tests3-write-expected.txt: Added.
  • html5lib/generated/run-tests3-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests4-data-expected.txt: Added.
  • html5lib/generated/run-tests4-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests4-expected.txt: Removed.
  • html5lib/generated/run-tests4-write-expected.txt: Added.
  • html5lib/generated/run-tests4-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests4.html: Removed.
  • html5lib/generated/run-tests5-data-expected.txt: Added.
  • html5lib/generated/run-tests5-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests5-expected.txt: Removed.
  • html5lib/generated/run-tests5-write-expected.txt: Added.
  • html5lib/generated/run-tests5-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests5.html: Removed.
  • html5lib/generated/run-tests6-data-expected.txt: Added.
  • html5lib/generated/run-tests6-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests6-expected.txt: Removed.
  • html5lib/generated/run-tests6-write-expected.txt: Added.
  • html5lib/generated/run-tests6-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests6.html: Removed.
  • html5lib/generated/run-tests7-data-expected.txt: Added.
  • html5lib/generated/run-tests7-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests7-expected.txt: Removed.
  • html5lib/generated/run-tests7-write-expected.txt: Added.
  • html5lib/generated/run-tests7-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests7.html: Removed.
  • html5lib/generated/run-tests8-data-expected.txt: Added.
  • html5lib/generated/run-tests8-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests8-expected.txt: Removed.
  • html5lib/generated/run-tests8-write-expected.txt: Added.
  • html5lib/generated/run-tests8-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests8.html: Removed.
  • html5lib/generated/run-tests9-data-expected.txt: Added.
  • html5lib/generated/run-tests9-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests9-expected.txt: Removed.
  • html5lib/generated/run-tests9-write-expected.txt: Added.
  • html5lib/generated/run-tests9-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests9.html: Removed.
  • html5lib/generated/run-tests_innerHTML_1-data-expected.txt: Added.
  • html5lib/generated/run-tests_innerHTML_1-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tests_innerHTML_1-write-expected.txt: Added.
  • html5lib/generated/run-tests_innerHTML_1-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tricky01-data-expected.txt: Added.
  • html5lib/generated/run-tricky01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-tricky01-write-expected.txt: Added.
  • html5lib/generated/run-tricky01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-webkit01-data-expected.txt: Added.
  • html5lib/generated/run-webkit01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-webkit01-write-expected.txt: Added.
  • html5lib/generated/run-webkit01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-webkit02-data-expected.txt: Added.
  • html5lib/generated/run-webkit02-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/generated/run-webkit02-write-expected.txt: Added.
  • html5lib/generated/run-webkit02-write.html: Renamed from LayoutTests/html5lib/generated/run-tests1.html.
  • html5lib/resources/runner.js:

(window.onload):

  • html5lib/runner-expected.txt: Removed.
  • html5lib/runner.html: Removed.
  • platform/chromium/TestExpectations:
  • platform/chromium/html5lib/generated/run-tests1-expected.txt: Removed.
  • platform/chromium/html5lib/generated/run-tests18-expected.txt: Removed.
  • platform/chromium/html5lib/generated/run-tests7-expected.txt: Removed.
2:51 AM Changeset in webkit [144031] by tasak@google.com
  • 3 edits
    2 adds in trunk

Shadow DOM styles appear to be over-eagerly shared
https://bugs.webkit.org/show_bug.cgi?id=110797

Reviewed by Dimitri Glazkov.

Source/WebCore:

A style of a distributed node should not be shared, because the node
might be affected by styles in a shadow dom tree, i.e. :distributed
or something.

Test: fast/dom/shadow/no-style-sharing-with-distributed-nodes.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::locateCousinList):
Skip shadow hosts, because children of shadow hosts are distributed
nodes and cannot share their styles.

LayoutTests:

  • fast/dom/shadow/no-style-sharing-with-distributed-nodes-expected.html: Added.
  • fast/dom/shadow/no-style-sharing-with-distributed-nodes.html: Added.
2:40 AM Changeset in webkit [144030] by adamk@chromium.org
  • 2 edits in trunk/Source/WebCore

Remove unused conditional includes of {MathML,SVG}Names.h
https://bugs.webkit.org/show_bug.cgi?id=110809

Reviewed by Eric Seidel.

  • html/parser/HTMLConstructionSite.cpp:
2:30 AM Changeset in webkit [144029] by kadam@inf.u-szeged.hu
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Update platform specific expected file after r143836.

  • platform/qt/TestExpectations: Skipped after r143300.
  • platform/qt/fast/forms/select-baseline-expected.txt: Update after r143836.
2:05 AM Changeset in webkit [144028] by joone.hur@intel.com
  • 2 edits in trunk/Tools

[GTK] Add Clutter to jhbuild
https://bugs.webkit.org/show_bug.cgi?id=110245

Reviewed by Martin Robinson.

Add clutter, cogl, clutter-gtk, and atk to the optional moduleset.
This allows to build WebKitGtk+ with clutter as an acceleration backend
within the jhbuild environment.

  • gtk/jhbuild-optional.modules:
1:57 AM Changeset in webkit [144027] by eric@webkit.org
  • 2 edits in trunk/Source/WebCore

Threaded HTML parser fails fast/loader/stateobjects/state-attribute-history-getter.html
https://bugs.webkit.org/show_bug.cgi?id=110801

Reviewed by Adam Barth.

This causes 6 more tests to pass for the threaded parser,
an solves all of our timeout issues.

These tests which were failing were racy, we just were never
hitting the race due to using file urls. This change fixes
the threaded parser to emulate one more of the EOF quirks from
the loader/main-thread-parser interaction.

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):

1:47 AM Changeset in webkit [144026] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Kill another analyzer warning in javascriptcore
https://bugs.webkit.org/show_bug.cgi?id=110802

Reviewed by Benjamin Poulain.

Add null checks.

  • profiler/LegacyProfiler.cpp:

(JSC::LegacyProfiler::startProfiling):
(JSC::LegacyProfiler::stopProfiling):

1:15 AM Changeset in webkit [144025] by apavlov@chromium.org
  • 7 edits in trunk

Web Inspector: CSSAgent.setStyleSheetText crashes on inline styles
https://bugs.webkit.org/show_bug.cgi?id=110359

Reviewed by Pavel Feldman.

Source/WebCore:

  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::SetStyleSheetTextAction::undo): Pass ExceptionCode into setText().
(WebCore::InspectorCSSAgent::SetStyleSheetTextAction::redo): Ditto.

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyleSheet::setText): Make use of checkPageStyleSheet().
(WebCore::InspectorStyleSheet::setRuleSelector): Ditto.
(WebCore::InspectorStyleSheet::addRule): Ditto.
(WebCore::InspectorStyleSheet::deleteRule): Ditto.
(WebCore::InspectorStyleSheet::checkPageStyleSheet):

Return NOT_SUPPORTED_ERR if no m_pageStyleSheet.

(WebCore::InspectorStyleSheet::setStyleText): Check field directly.

  • inspector/InspectorStyleSheet.h:

LayoutTests:

  • inspector/styles/styles-new-API-expected.txt:
  • inspector/styles/styles-new-API.html:
1:13 AM Changeset in webkit [144024] by commit-queue@webkit.org
  • 26 edits
    9 copies
    42 adds in trunk

Implement coordinated scrollbar for subframes and overflow:scroll
https://bugs.webkit.org/show_bug.cgi?id=109560

Patch by Tien-Ren Chen <trchen@chromium.org> on 2013-02-26
Reviewed by James Robinson.

Source/WebCore:

This patch obsoletes ScrollingCoordinatorPrivate for the Chromium
implementation. Also removes the concept of a single main scrolling
layer. Should use HashMap to keep track resources for multiple
scrollable objects.

Many of the callbacks are extended to support ScrollableArea instead
of just FrameView. Now ScrollingCoordinatorChromium coordinates
scrollbars for both subframes and overflow:scroll.

Some drive-by change:

  1. Remove the GraphicsLayer parameter for layer change callbacks. Should be able to get the latest layer from the ScrollableArea anyway.
  2. Should start from main frame document when updating touch event target rects.

New chromium test: ScrollingCoordinatorChromiumTest.iframeScrolling

  • page/Frame.cpp:

(WebCore::Frame::willDetachPage):

  • page/FrameView.cpp:

(WebCore::FrameView::prepareForDetach):
(WebCore::FrameView::layerForScrolling):
(WebCore):

  • page/FrameView.h:

(FrameView):

  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::scrollLayerForScrollableArea):
(WebCore):
(WebCore::ScrollingCoordinator::horizontalScrollbarLayerForScrollableArea):
(WebCore::ScrollingCoordinator::verticalScrollbarLayerForScrollableArea):

  • page/scrolling/ScrollingCoordinator.h:

(WebCore::ScrollingCoordinator::willDestroyScrollableArea):
(WebCore::ScrollingCoordinator::scrollableAreaScrollLayerDidChange):
(WebCore::ScrollingCoordinator::scrollableAreaScrollbarLayerDidChange):
(ScrollingCoordinator):

  • page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:

(WebCore::scrollingWebLayerForGraphicsLayer):
(WebCore::ScrollingCoordinatorChromium::scrollingWebLayerForScrollableArea):
(WebCore::ScrollingCoordinatorChromium::ScrollingCoordinatorChromium):
(WebCore::ScrollingCoordinatorChromium::~ScrollingCoordinatorChromium):
(WebCore::ScrollingCoordinatorChromium::frameViewLayoutUpdated):
(WebCore::ScrollingCoordinatorChromium::touchEventTargetRectsDidChange):
(WebCore::createScrollbarLayer):
(WebCore::detachScrollbarLayer):
(WebCore::setupScrollbarLayer):
(WebCore::ScrollingCoordinatorChromium::willDestroyScrollableArea):
(WebCore::ScrollingCoordinatorChromium::scrollableAreaScrollbarLayerDidChange):
(WebCore::ScrollingCoordinatorChromium::setNonFastScrollableRegion):
(WebCore::ScrollingCoordinatorChromium::setTouchEventTargetRects):
(WebCore::ScrollingCoordinatorChromium::setWheelEventHandlerCount):
(WebCore::ScrollingCoordinatorChromium::setShouldUpdateScrollLayerPositionOnMainThread):
(WebCore::ScrollingCoordinatorChromium::setLayerIsContainerForFixedPositionLayers):
(WebCore::ScrollingCoordinatorChromium::setLayerIsFixedToContainerLayer):
(WebCore::ScrollingCoordinatorChromium::scrollableAreaScrollLayerDidChange):
(WebCore::ScrollingCoordinatorChromium::addWebScrollbarLayer):
(WebCore):
(WebCore::ScrollingCoordinatorChromium::getWebScrollbarLayer):
(WebCore::ScrollingCoordinatorChromium::removeWebScrollbarLayer):

  • page/scrolling/chromium/ScrollingCoordinatorChromium.h:

(WebCore):
(ScrollingCoordinatorChromium):

  • page/scrolling/mac/ScrollingCoordinatorMac.h:

(ScrollingCoordinatorMac):

  • page/scrolling/mac/ScrollingCoordinatorMac.mm:

(WebCore::ScrollingCoordinatorMac::scrollableAreaScrollbarLayerDidChange):

  • platform/ScrollableArea.h:

(ScrollableArea):
(WebCore::ScrollableArea::layerForScrolling):

  • platform/graphics/GraphicsLayer.h:

(GraphicsLayer):
(WebCore::GraphicsLayer::setContentsToPlatformLayer):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::~RenderLayer):
(WebCore::RenderLayer::layerForScrolling):
(WebCore):

  • rendering/RenderLayer.h:

(RenderLayer):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateOverflowControlsLayers):
(WebCore::RenderLayerBacking::positionOverflowControlsLayers):
(WebCore::RenderLayerBacking::updateScrollingLayers):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::frameViewDidScroll):
(WebCore::RenderLayerCompositor::scrollingLayerDidChange):
(WebCore::RenderLayerCompositor::updateOverflowControlsLayers):

Source/WebKit/chromium:

Added ScrollingCoordinatorChromiumTest.iframeScrolling to verify
impl-side scrolling and impl-side scrollbars for frames.

Update ScrollingCoordinatorChromiumTest.overflowScrolling to verify
impl-side scrollbars.

  • tests/ScrollingCoordinatorChromiumTest.cpp:

(WebKit::ScrollingCoordinatorChromiumTest::ScrollingCoordinatorChromiumTest):
(WebKit::TEST_F):
(WebKit):

  • tests/data/iframe-scrolling-inner.html: Added.
  • tests/data/iframe-scrolling.html: Added.

LayoutTests:

Coordinated scrollbars changes drawsContent flag on scrollbar GraphicsLayers,
test expectation are updated.

  • platform/chromium-linux/compositing/iframes/become-overlapped-iframe-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/composited-parent-iframe-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/connect-compositing-iframe-delayed-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/connect-compositing-iframe-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/connect-compositing-iframe2-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/connect-compositing-iframe3-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/enter-compositing-iframe-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/iframe-resize-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/iframe-size-from-zero-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/invisible-nested-iframe-show-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/overlapped-iframe-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/resizer-expected.txt: Added.
  • platform/chromium-linux/compositing/iframes/scrolling-iframe-expected.txt: Added.
  • platform/chromium-linux/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/compositing/overflow/scrolling-content-clip-to-viewport-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt:
  • platform/chromium-linux/compositing/overflow/textarea-scroll-touch-expected.txt: Added.
  • platform/chromium-linux/compositing/overflow/updating-scrolling-content-expected.txt:
  • platform/chromium-linux/compositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
  • platform/chromium-linux/compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
  • platform/chromium-linux/compositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
  • platform/chromium-linux/compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/compositing/force-compositing-mode/overflow-iframe-enter-compositing-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-auto-with-touch-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-auto-with-touch-toggle-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-overlay-with-touch-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/scrolling-content-clip-to-viewport-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/scrolling-without-painting-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/textarea-scroll-touch-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/updating-scrolling-content-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/become-overlapped-iframe-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/composited-parent-iframe-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe-delayed-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe2-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/connect-compositing-iframe3-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/enter-compositing-iframe-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/iframe-resize-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/iframe-size-from-zero-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/invisible-nested-iframe-show-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/overlapped-iframe-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/resizer-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/iframes/scrolling-iframe-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/scrolling-content-clip-to-viewport-expected.txt: Copied from LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/scrolling-without-painting-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/textarea-scroll-touch-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/updating-scrolling-content-expected.txt:
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
  • platform/chromium-linux/platform/chromium/virtual/softwarecompositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
  • platform/chromium/TestExpectations:
1:07 AM Changeset in webkit [144023] by commit-queue@webkit.org
  • 5 edits in trunk/Source/JavaScriptCore

Unreviewed, rolling out r144004.
http://trac.webkit.org/changeset/144004
https://bugs.webkit.org/show_bug.cgi?id=110858

This iOS change is outdated (Requested by notbenjamin on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-26

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::emitNode):
(JSC::BytecodeGenerator::emitNodeInConditionContext):
(BytecodeGenerator):

  • parser/Parser.cpp:

(JSC::::Parser):

  • parser/Parser.h:

(JSC::Parser::canRecurse):
(Parser):

1:06 AM Changeset in webkit [144022] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

[V8] Overloaded constructors don't need header declarations
https://bugs.webkit.org/show_bug.cgi?id=110799

Reviewed by Adam Barth.

They are implemented as static functions in cpp files.
Header declarations are not needed.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):

  • bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
1:04 AM Changeset in webkit [144021] by commit-queue@webkit.org
  • 4 edits
    1 delete in trunk/Source

Unreviewed, rolling out r144016.
http://trac.webkit.org/changeset/144016
https://bugs.webkit.org/show_bug.cgi?id=110856

Breaks compilation on chromium mac (Requested by vsevik on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-26

Source/WebCore:

  • platform/chromium/KeyCodeConversionGtk.cpp:

(WebCore::windowsKeyCodeForKeyEvent):

Source/WebKit/chromium:

  • WebKit.gypi:
  • tests/KeyCodeConversionTest.cpp: Removed.
12:49 AM Changeset in webkit [144020] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

Appease static analyzer warning about null string passed to strlen
https://bugs.webkit.org/show_bug.cgi?id=110658

Reviewed by Benjamin Poulain.

Add a null check before calling strlen

  • wtf/Threading.cpp:

(WTF::createThread):

12:42 AM Changeset in webkit [144019] by glenn@skynav.com
  • 11 edits in trunk

Source/WebCore: Add support to -webkit-line-break property for CSS3 Text line-break property values and semantics.
https://bugs.webkit.org/show_bug.cgi?id=89235

Reviewed by Eric Seidel.

This patch adds semantic support for the CSS3 line-break property (qua -webkit-line-break),
and enables testing on (apple) mac ports. Follow on patches will enable these tests on
other ports as they are incrementally verified.

See also wiki documentation at:
[1] http://trac.webkit.org/wiki/LineBreaking
[2] http://trac.webkit.org/wiki/LineBreakingCSS3Mapping

Tests: css3/line-break/line-break-auto-centered.html

css3/line-break/line-break-auto-half-kana.html
css3/line-break/line-break-auto-hyphens.html
css3/line-break/line-break-auto-inseparables.html
css3/line-break/line-break-auto-iteration-marks.html
css3/line-break/line-break-auto-postfixes.html
css3/line-break/line-break-auto-prefixes.html
css3/line-break/line-break-auto-sound-marks.html
css3/line-break/line-break-loose-centered.html
css3/line-break/line-break-loose-half-kana.html
css3/line-break/line-break-loose-hyphens.html
css3/line-break/line-break-loose-inseparables.html
css3/line-break/line-break-loose-iteration-marks.html
css3/line-break/line-break-loose-postfixes.html
css3/line-break/line-break-loose-prefixes.html
css3/line-break/line-break-loose-sound-marks.html
css3/line-break/line-break-normal-centered.html
css3/line-break/line-break-normal-half-kana.html
css3/line-break/line-break-normal-hyphens.html
css3/line-break/line-break-normal-inseparables.html
css3/line-break/line-break-normal-iteration-marks.html
css3/line-break/line-break-normal-postfixes.html
css3/line-break/line-break-normal-prefixes.html
css3/line-break/line-break-normal-sound-marks.html
css3/line-break/line-break-strict-centered.html
css3/line-break/line-break-strict-half-kana.html
css3/line-break/line-break-strict-hyphens.html
css3/line-break/line-break-strict-inseparables.html
css3/line-break/line-break-strict-iteration-marks.html
css3/line-break/line-break-strict-postfixes.html
css3/line-break/line-break-strict-prefixes.html
css3/line-break/line-break-strict-sound-marks.html

These tests were previously added in http://trac.webkit.org/changeset/143378, but skipped
in generic TestExpectations. In this patch, they are marked as Pass for the (apple) mac ports.

  • platform/text/LineBreakIteratorPoolICU.h:

(WebCore::LineBreakIteratorPool::makeLocaleWithBreakKeyword):
Add static function to construct ICU locale argument (also used as pool key) with additional
break keyword.
(LineBreakIteratorPool):
(WebCore::LineBreakIteratorPool::take):
(WebCore::LineBreakIteratorPool::put):
Remove direct dependency from ICU library (and types), moving that dependency into
new {open,close}LineBreakIterator() functions (defined in TextBreakIteratorICU.cpp).
Update to take line break mode into account.
Create (and cache) different break iterators depending on line break mode (in addition to locale),
which entails expanding pool entry key format to optionally append "@break=" +
"loose"|"normal"|"strict" keyword to locale string.

  • platform/text/TextBreakIterator.h:

(WebCore::LazyLineBreakIterator::LazyLineBreakIterator):
(WebCore::LazyLineBreakIterator::isLooseCJKMode):
(WebCore::LazyLineBreakIterator::get):
(WebCore::LazyLineBreakIterator::reset):
(LazyLineBreakIterator):
Define LineBreakIteratorMode enumeration for use in TextBreakIterator et al.
Add state member to indicate line break mode.

  • platform/text/TextBreakIteratorICU.cpp:

(WebCore::acquireLineBreakIterator):
Use new line break mode when making iterator from pool.
Handle change of return type of LineBreakIteratorPool::take() to non-ICU type,
i.e., TextBreakIterator* instead of ICU's UBreakIterator*.
(WebCore::releaseLineBreakIterator):
Handle change of parameter type of LineBreakIteratorPool::put() to non-ICU type,
i.e., TextBreakIterator* instead of ICU's UBreakIterator*.
(WebCore):
(WebCore::isCJKLocale):
New functions for determining if CJK rules apply.
(WebCore::openLineBreakIterator):
New function for abstracting opening of ICU style line break iterator. This is now
used in LineBreakIteratorPoolICU.h rather than having direct ICU API dependency there.
This function also takes into account the line break mode.
(WebCore::closeLineBreakIterator):
(WebCore::mapLineIteratorModeToRules):
New function for abstracting closing of ICU style line break iterator. This is now
used in LineBreakIteratorPoolICU.h rather than having direct ICU API dependency there.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
Pass line break iterator mode flag when reseting LazyLineBreakIterator.
Add looseMode local variable to prevent need for computing under isBreakable().

  • rendering/RenderText.cpp:

(WebCore::mapLineBreakToIteratorMode):
Add implementation for mapLineBreakToIteratorMode(), used by both RenderText::computePreferredLogicalWidths
and RenderBlock::LineBreaker::nextLineBreak.
(WebCore):
(WebCore::RenderText::computePreferredLogicalWidths):
Ensure (lazy line) breakIterator is initialized for line break mode.
Ensure isBreakable() is passed loose mode flag to match behavior in RenderBlock::LineBreaker::nextLineBreak.

  • rendering/RenderText.h:

(WebCore):
Add declaration for mapLineBreakToIteratorMode(), used by both RenderText::computePreferredLogicalWidths
and RenderBlock::LineBreaker::nextLineBreak.

  • rendering/break_lines.cpp:

(WebCore):
Introduce (local) enum NBSPBehavior for expanding template on nextBreakablePosition.
(WebCore::isBreakableSpace):
Add externally specified loose mode parameter to prevent need to invoke line break iterator
accessor method on each invocation. Use new loose mode flavors off NBP functions.
(WebCore::needsLineBreakIterator):
Use enum NBSP behavior template parameter rather than boolean.
(WebCore::nextBreakablePositionNonLoosely):
Extend name to distinguish from loose flavor of this function.
(WebCore::nextBreakablePositionLoosely):
Add loose flavor of NBP invoked only when loose mode applies, in which case ASCII shortcut
table cannot be used.
(WebCore::nextBreakablePosition):
(WebCore::nextBreakablePositionIgnoringNBSP):
Use (renamed) non-loose flavor of NBP.
(WebCore::nextBreakablePositionLoose):
(WebCore::nextBreakablePositionIgnoringNBSPLoose):
Introduce loose flavor of NBP template expansions.

  • rendering/break_lines.h:

(WebCore):
(WebCore::isBreakable):
Add externally specified loose mode parameter to prevent need to invoke line break iterator
accessor method on each invocation.

LayoutTests: CSS3: line-break property support
https://bugs.webkit.org/show_bug.cgi?id=89235

Reviewed by Eric Seidel.

  • platform/mac/TestExpectations: Mark css3/line-break tests as passing.
12:38 AM Changeset in webkit [144018] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskipp now passing tests after r144005.
https://bugs.webkit.org/show_bug.cgi?id=110756.

Reviewed by Geoffrey Garen.

  • platform/qt/TestExpectations:
12:34 AM Changeset in webkit [144017] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] Fix continuous painting mode
https://bugs.webkit.org/show_bug.cgi?id=110788

Patch by James Robinson <jamesr@chromium.org> on 2013-02-26
Reviewed by Adrienne Walker.

Recent instrumentation shuffling caused WebViewImpl::didBeginFrame to no longer be called, which
broke continuous painting. Since continuous painting mode is meant to simply invalidate layers
on each frame, it's a better fit for the animation system. This moves the invalidation calls
into WebViewImpl::updateAnimations along with other animation type things.

Tested manually by enabling continuous painting mode in the inspector. There aren't any automated
tests in WebKit for this feature.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setContinuousPaintingEnabled):
(WebKit::WebViewImpl::didBeginFrame):
(WebKit::WebViewImpl::updateAnimations):

  • src/painting/ContinuousPainter.cpp:

(WebKit::ContinuousPainter::setNeedsDisplayRecursive):

12:32 AM Changeset in webkit [144016] by commit-queue@webkit.org
  • 4 edits
    1 add in trunk/Source

keydown and keyup events have zero keycode for some numeric pad keys under Chromium on Linux
https://bugs.webkit.org/show_bug.cgi?id=85642

Source/WebCore:

Add missing key mappings for GDK_KP_Begin, GDK_KP_Insert, GDK_KP_Delete and GDK_ISO_Level3_Shift.

Patch by James Weatherall <wez@chromium.org> on 2013-02-26
Reviewed by Ojan Vafai.

  • platform/chromium/KeyCodeConversionGtk.cpp:

(WebCore::windowsKeyCodeForKeyEvent):

Source/WebKit/chromium:

Add tests to verify that the fixed keys generate the same keyCode values
as their equivalents.

Patch by James Weatherall <wez@chromium.org> on 2013-02-26
Reviewed by Ojan Vafai.

  • WebKit.gypi:
  • tests/KeyCodeConversionTest.cpp: Added.

(WebCore):
(WebCore::TEST):

12:28 AM Changeset in webkit [144015] by Simon Hausmann
  • 2 edits in trunk/Source/WebKit2

Unreviewed trivial !ENABLE(NETSCAPE_PLUGIN_API) build fix

Add an intermediate pluginName string variable instead of
accessing plugin.info outside the feature #ifdef.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::unavailablePluginButtonClicked):

Feb 25, 2013:

11:57 PM Changeset in webkit [144014] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Another fix attempt after r143991 since having \r? after a greedy match doesn't help.

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

(SVN.value_from_svn_info):

11:56 PM Changeset in webkit [144013] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
11:47 PM Changeset in webkit [144012] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

Coordinated Graphics: remove redundant update of non compositing layer.
https://bugs.webkit.org/show_bug.cgi?id=110444

Patch by Huang Dongsung <luxtella@company100.net> on 2013-02-25
Reviewed by Noam Rosenthal.

Currently, we update non compositing layer when the page scrolled. However, it
is not needed, because TiledBackingStore can scroll without tile update.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::scrollNonCompositedContents):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:

(CoordinatedLayerTreeHost):

11:42 PM Changeset in webkit [144011] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

REGRESSION(r143981): Crash in WebFrameLoaderClient::dispatchDidStartProvisionalLoad()
https://bugs.webkit.org/show_bug.cgi?id=110848

Reviewed by Ryosuke Niwa.

NULL-check the result of document->documentElement().

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):

11:21 PM Changeset in webkit [144010] by abarth@webkit.org
  • 9 edits in trunk/Source/WebCore

6% regression in intl1 page cycler on chromium-mac
https://bugs.webkit.org/show_bug.cgi?id=110784

Unreviewed.

This patch restores the code that I rolled out in
http://trac.webkit.org/changeset/143960 and
http://trac.webkit.org/changeset/143983. Rolling out those patches did
not heal the bot.

  • dom/Element.cpp:

(WebCore::Element::addAttributeInternal):
(WebCore::ShareableElementData::ShareableElementData):
(WebCore::UniqueElementData::makeShareableCopy):
(WebCore::UniqueElementData::addAttribute):
(WebCore::UniqueElementData::removeAttribute):
(WebCore::ElementData::reportMemoryUsage):
(WebCore::UniqueElementData::getAttributeItem):
(WebCore):
(WebCore::UniqueElementData::attributeItem):

  • dom/Element.h:

(ElementData):
(UniqueElementData):
(WebCore::isShadowHost):
(WebCore::ElementData::length):
(WebCore::ElementData::attributeItem):

  • html/parser/BackgroundHTMLParser.cpp:

(WebCore::BackgroundHTMLParser::resumeFrom):
(WebCore::BackgroundHTMLParser::pumpTokenizer):
(WebCore::BackgroundHTMLParser::sendTokensToMainThread):

  • html/parser/CSSPreloadScanner.cpp:

(WebCore):
(WebCore::CSSPreloadScanner::scanCommon):
(WebCore::CSSPreloadScanner::scan):
(WebCore::CSSPreloadScanner::emitRule):

  • html/parser/CSSPreloadScanner.h:

(CSSPreloadScanner):

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::startBackgroundParser):

  • html/parser/HTMLPreloadScanner.cpp:

(WebCore::TokenPreloadScanner::tagIdFor):
(WebCore):
(WebCore::TokenPreloadScanner::initiatorFor):
(WebCore::TokenPreloadScanner::StartTagScanner::processAttributes):
(TokenPreloadScanner::StartTagScanner):
(WebCore::TokenPreloadScanner::StartTagScanner::createPreloadRequest):
(WebCore::TokenPreloadScanner::createCheckpoint):
(WebCore::TokenPreloadScanner::rewindTo):
(WebCore::TokenPreloadScanner::scan):
(WebCore::TokenPreloadScanner::scanCommon):
(WebCore::TokenPreloadScanner::updatePredictedBaseURL):
(WebCore::HTMLPreloadScanner::scan):

  • html/parser/HTMLPreloadScanner.h:

(TokenPreloadScanner):
(WebCore::TokenPreloadScanner::isSafeToSendToAnotherThread):
(WebCore::TokenPreloadScanner::Checkpoint::Checkpoint):
(Checkpoint):

11:01 PM Changeset in webkit [144009] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
10:32 PM Changeset in webkit [144008] by noel.gordon@gmail.com
  • 2 edits in trunk/Tools

GCE EWS bots failing intermittently on HTTP 502 error while updating their status
https://bugs.webkit.org/show_bug.cgi?id=110845

Unreviewed EWS bot fix.

Switch the Queue Status Server address the EWS bots use to a more direct URL that
doesn't seem to be having problems from GCE like queues.webkit.org.

Patch by Alan Cutter <alancutter@chromium.org> on 2013-02-25

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

(StatusServer):

10:24 PM TestExpectations edited by glenn@skynav.com
editorial cleanup (diff)
10:13 PM TestExpectations edited by glenn@skynav.com
editorial cleanup (diff)
10:10 PM TestExpectations edited by glenn@skynav.com
describe how to learn which expectations files apply (diff)
10:00 PM TestExpectations edited by glenn@skynav.com
editorial cleanup; add info on generic test expectations file (diff)
9:57 PM TestExpectations edited by glenn@skynav.com
editorial cleanup (diff)
9:54 PM TestExpectations edited by glenn@skynav.com
editorial cleanup (diff)
9:53 PM Changeset in webkit [144007] by crogers@google.com
  • 2 edits in trunk/Source/WebCore

AudioDestinationChromium should pass in inputDeviceId when creating WebKit::WebAudioDevice
https://bugs.webkit.org/show_bug.cgi?id=110796

Reviewed by Kenneth Russell.

  • platform/audio/chromium/AudioDestinationChromium.cpp:

(WebCore::AudioDestinationChromium::AudioDestinationChromium):

9:51 PM TestExpectations edited by glenn@skynav.com
clarify usage of WontFix | Skip (diff)
9:49 PM TestExpectations edited by glenn@skynav.com
ensure grammaticality (diff)
9:47 PM TestExpectations edited by glenn@skynav.com
qualify "equivalent" (diff)
9:36 PM Creating and Submitting Layout Tests and Patches edited by glenn@skynav.com
add description about using webkit-patch upload instead of svn-create-patch (diff)
9:06 PM Changeset in webkit [144006] by mark.lam@apple.com
  • 25 edits
    4 deletes in trunk/Source/WebCore

Need a more robust WebSQL disk usage computation.
https://bugs.webkit.org/show_bug.cgi?id=110805.

Reviewed by Geoffrey Garen.

  • Changed DatabaseTracker::usageForOrigin() to compute the disk usage for a specified origin by fetching database sizes from the file system instead of using cached file size values.
  • The OriginQuotaManager and OriginUsageRecord are no longer needed. Updated build files to reflect this.
  • Removed getMaxSizeForDatabase() from DatabaseManager, DatabaseServer, and AbstractDatabaseServer since it is only needed in the backend.
  • DatabaseTracker::getMaxSizeForDatabase() now calls usageForOrigin() to get the disk usage for its computation.
  • The performance difference for this changes is a 1.6% degradation per additional database whose size needs to be fetched. This is a worst case estimated based on the disk-stat-speed-test.html benchmark (attached to bugzilla). The benchmark writes an average of 16 bytes per transaction. Most real-world transactions will likely write more content than that. Since disk write IO time will dominate over memory read time for fetching the file size, the degradation ratio will only reduce with larger workloads.

No layout test, but there is a quota-test.html attached to bugzilla.
The test is a webpage that can be loaded into multiple tabs to
consuming storage space. While the test is running, we can run a
"du -k; du -k *" on the database directory to verify that the total
disk usage does not far exceed the allowed quota (some small error
is expected). Without this change, each database from each tab may
exceed the quota by that same maginitude of error.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/webdatabase/AbstractDatabaseServer.h:
  • Modules/webdatabase/Database.cpp:
  • Modules/webdatabase/Database.h:
  • Modules/webdatabase/DatabaseBackendBase.cpp:

(WebCore::DatabaseBackendBase::maximumSize):

  • Modules/webdatabase/DatabaseManager.cpp:
  • Modules/webdatabase/DatabaseManager.h:
  • Modules/webdatabase/DatabaseServer.cpp:
  • Modules/webdatabase/DatabaseServer.h:
  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::hasAdequateQuotaForOrigin):
(WebCore::DatabaseTracker::canEstablishDatabase):
(WebCore::DatabaseTracker::retryCanEstablishDatabase):
(WebCore::DatabaseTracker::getMaxSizeForDatabase):
(WebCore::DatabaseTracker::fullPathForDatabaseNoLock):
(WebCore::DatabaseTracker::fullPathForDatabase):
(WebCore::DatabaseTracker::addOpenDatabase):
(WebCore::DatabaseTracker::removeOpenDatabase):
(WebCore::DatabaseTracker::usageForOrigin):
(WebCore::DatabaseTracker::deleteOrigin):
(WebCore::DatabaseTracker::deleteDatabase):

  • Modules/webdatabase/DatabaseTracker.h:
  • Modules/webdatabase/OriginQuotaManager.cpp: Removed.
  • Modules/webdatabase/OriginQuotaManager.h: Removed.
  • Modules/webdatabase/OriginUsageRecord.cpp: Removed.
  • Modules/webdatabase/OriginUsageRecord.h: Removed.
  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::runCurrentStatementAndGetNextState):

  • Modules/webdatabase/SQLTransactionBackendSync.cpp:

(WebCore::SQLTransactionBackendSync::executeSQL):

  • Modules/webdatabase/SQLTransactionClient.cpp:
  • Modules/webdatabase/SQLTransactionClient.h:
  • Modules/webdatabase/chromium/SQLTransactionClientChromium.cpp:
  • Target.pri:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
8:25 PM Changeset in webkit [144005] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(r143654): some jquery test asserts on 32 bit debug build
https://bugs.webkit.org/show_bug.cgi?id=110756

Reviewed by Geoffrey Garen.

TypeOf does speculations manually, so it should mark its JSValueOperand as doing ManualOperandSpeculation.

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

8:13 PM Changeset in webkit [144004] by benjamin@webkit.org
  • 5 edits in trunk/Source/JavaScriptCore

[JSC] Upstream iOS Stack bound checking
https://bugs.webkit.org/show_bug.cgi?id=110813

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-02-25
Reviewed by Filip Pizlo.

On iOS, the StackBounds cannot be cached because the stack
can be in one of two threads (the web thread or the UI thread).

We simply always consider the current stack bound when testing
stack boundaries.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::emitNode):
(JSC::BytecodeGenerator::emitNodeInConditionContext):
(BytecodeGenerator):

  • parser/Parser.cpp:

(JSC::::Parser):

  • parser/Parser.h:

(JSC::Parser::canRecurse):
(Parser):

8:04 PM Changeset in webkit [144003] by Bruno de Oliveira Abinader
  • 3 edits in trunk/Source/WebCore

[texmap] Rename TextureMapperGL::ClipStack::init to reset
https://bugs.webkit.org/show_bug.cgi?id=110783

Reviewed by Noam Rosenthal.

Functions named init() are usually called inside ctor's to initialize
member variables that were unable to be assigned on an initialization
list, which is not the case, and also because reset() better reflects
the behavior (clears the clip stack and assigns a value to the initial
clip state).

No behavior changes, thus covered by existing tests.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::ClipStack::reset):
(WebCore::TextureMapperGL::beginPainting):
(WebCore::BitmapTextureGL::initializeDepthBuffer):

  • platform/graphics/texmap/TextureMapperGL.h:

(ClipStack):

7:18 PM Changeset in webkit [144002] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

Add expandedToParagraph() method to WebRange
https://bugs.webkit.org/show_bug.cgi?id=110618

Patch by Rouslan Solomakhin <rouslan@chromium.org> on 2013-02-25
Reviewed by Adam Barth.

Add a method expandedToParagraph() to WebRange to return a copy of the
range expanded to paragraph boundaries. This method is to be used to
query the spelling context around the misspelled word under cursor.

  • public/WebRange.h:

(WebRange): Added expandedToParagraph() method declaration.

  • src/WebRange.cpp:

(WebKit::WebRange::expandedToParagraph): Added method to copy range, expand the copied range to paragraph boundaries, and return the resulting range.
(WebKit): Added expandedToParagraph() method definition.

7:02 PM Changeset in webkit [144001] by rniwa@webkit.org
  • 2 edits in trunk/Source/WTF

Build fix attempt after r143996.

  • wtf/FastMalloc.cpp:

(WTF):

6:36 PM Changeset in webkit [144000] by abarth@webkit.org
  • 5 edits in trunk/Source/WebCore

Threaded HTML parser should pass fast/parser/iframe-sets-parent-to-javascript-url.html
https://bugs.webkit.org/show_bug.cgi?id=110637

Reviewed by Eric Seidel.

With the main thread parser, we always parse the first chunk of content
returned as the result of evaluating a JavaScript URL synchronously. In
particular, if the first chunk has an inline script, we'll execute it
synchronously.

Previous to this patch, the threaded parser would always parse this
content asynchronously. It's conceivable that there could be some
content relying on the synchronous behavior, so this patch introduces
the notion of "pinning" a parser to the main thread and uses that
concept to force the result of JavaScript URLs to be parsed on the main
thread (which is probably desirable anyway because they're likely to be
quite short).

This patch fixes fast/parser/iframe-sets-parent-to-javascript-url.html
and fast/dom/javascript-url-crash-function.html with the threaded
parser with --enable-threaded-html-parser.

  • dom/DocumentParser.h:

(WebCore::DocumentParser::pinToMainThread):
(DocumentParser):

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::HTMLDocumentParser):
(WebCore):
(WebCore::HTMLDocumentParser::pinToMainThread):

  • html/parser/HTMLDocumentParser.h:

(HTMLDocumentParser):
(WebCore::HTMLDocumentParser::shouldUseThreading):

  • loader/DocumentWriter.cpp:

(WebCore::DocumentWriter::replaceDocument):

6:33 PM Changeset in webkit [143999] by jberlin@webkit.org
  • 2 edits in trunk/Source/WebCore

Update the localizable strings file.

Rubber-stamped by Anders Carlsson.

  • English.lproj/Localizable.strings:
6:25 PM Changeset in webkit [143998] by jamesr@google.com
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] WebViewImpl::m_client can be null in some unit tests, check it before calling
https://bugs.webkit.org/show_bug.cgi?id=110834

Reviewed by Adrienne Walker.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::suppressInvalidations):
(WebKit::WebViewImpl::setRootGraphicsLayer):

6:25 PM Changeset in webkit [143997] by roger_fong@apple.com
  • 2 edits in trunk/Source/WTF

Unreviewed. Fix script to use WEBKIT_SOURCE for VS2010 property sheets instead of WEBKIT_LIBRARIES.

  • WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py:
6:13 PM Changeset in webkit [143996] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

Add cookies to FastMalloc spans
https://bugs.webkit.org/show_bug.cgi?id=110827

Reviewed by Michael Saboff.

Add a cookie to spans, and move some of the hardening around so
that it's more useful.

  • wtf/FastMalloc.cpp:

(WTF::internalEntropyValue):
(WTF::spanInitializerCookie):
(WTF::Span::initCookie):
(WTF::Span::clearCookie):
(WTF::Span::isValid):
(Span):
(WTF::NewSpan):
(WTF::DeleteSpan):
(WTF::TCMalloc_ThreadCache_FreeList::Validate):
(WTF::TCMalloc_Central_FreeList::Populate):
(WTF::TCMalloc_ThreadCache::Deallocate):
(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):

6:10 PM Changeset in webkit [143995] by dpranke@chromium.org
  • 2 edits in trunk/Tools

Forgot to delete a no-longer-needed unit test after r143980.

Unreviewed, build fix.

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

(ChromiumWinTest.test_path_to_image_diff):

6:10 PM Changeset in webkit [143994] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

For JSVALUE32_64, maxOffsetRelativeToPatchedStorage() doesn't compute the maximum negative offset
https://bugs.webkit.org/show_bug.cgi?id=110828

Reviewed by Oliver Hunt.

  • runtime/JSObject.h:

(JSC::maxOffsetRelativeToPatchedStorage): Only add the OBJECT_OFFSETOF(tag) for positive offsets.
That way this function will return the offset farthest from 0 needed to access either the payload
or tag.

6:06 PM Changeset in webkit [143993] by commit-queue@webkit.org
  • 5 edits
    4 adds in trunk

Flexbox should ignore firstLetter pseudo element.
https://bugs.webkit.org/show_bug.cgi?id=105126

Patch by Xueqing Huang <huangxueqing@baidu.com> on 2013-02-25
Reviewed by Tony Chang.

Source/WebCore:

The CSS WG decided that first-line and first-letter should not
apply to flex containers.
http://dev.w3.org/csswg/css3-flexbox/issue-cr-2012#issue-13

tests:
css3/flexbox/flexbox-ignore-firstLetter.html
css3/flexbox/flexbox-ignore-container-firstLetter.html

  • rendering/RenderBlock.cpp:

(WebCore::findFirstLetterBlock):

LayoutTests:

The CSS WG decided that first-line and first-letter should not
apply to flex containers.
http://dev.w3.org/csswg/css3-flexbox/issues-cr-2012#issue-13

  • css3/flexbox/flexbox-ignore-container-firstLetter-expected.txt: Added.
  • css3/flexbox/flexbox-ignore-container-firstLetter.html: Added.
  • css3/flexbox/flexbox-ignore-firstLetter-expected.txt: Added.
  • css3/flexbox/flexbox-ignore-firstLetter.html: Added.
  • css3/flexbox/inline-flex-crash-expected.txt:
  • css3/flexbox/inline-flex-crash2-expected.txt:
5:35 PM Changeset in webkit [143992] by zmo@google.com
  • 2 edits in branches/chromium/1410/Source/WebCore

Merge 142545

WEBGL_compressed_texture_s3tc extension can be enabled even when not supported
https://bugs.webkit.org/show_bug.cgi?id=109508

Reviewed by Kenneth Russell.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore):
(WebCore::WebGLRenderingContext::getExtension): Check whether the extension support is there before returning the extension pointer.

TBR=zmo@google.com
Review URL: https://codereview.chromium.org/12334083

5:24 PM Changeset in webkit [143991] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Build fix. run-perf-tests was reporting with revision numbers ending with \r.
Don't include \r at the end of svn info lines on Windows.

This is similar to r143839.

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

(SVN.value_from_svn_info):

5:22 PM Changeset in webkit [143990] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Lots of unnecessary DidLayout notifications when scrolling zoomed page with iframes
https://bugs.webkit.org/show_bug.cgi?id=110824

Reviewed by Tim Horton.

RenderWidget::setWidgetGeometry() compares the old and new frame rects to decide
if the geometry changed. However, it use implicit IntRect->LayoutRect promotion in
the comparison, and then roundedIntRect() in setting. Thus the code would think
that the geometry changed, even when the final assigned frame did not.

Fix by computing the new frame using roundedIntRect(), and using that to determine
whether the geometry changed.

No way to test DidLayout notifications in DRT/WTR.

  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::setWidgetGeometry):

5:13 PM Changeset in webkit [143989] by simonjam@chromium.org
  • 10 edits
    22 moves
    3 adds in trunk

[Resource Timing] Update test suite so it can be exported to the W3C
https://bugs.webkit.org/show_bug.cgi?id=107343

Reviewed by Tony Gentilcore.

Tools:

  • Scripts/export-w3c-performance-wg-tests: Clean up output.
  • Scripts/import-w3c-performance-wg-tests:

LayoutTests:

  • http/tests/w3c/webperf/resources/webperftestharness.js: Removed unneeded functions and moved new ones to extension.
  • http/tests/w3c/webperf/resources/webperftestharnessextension.js:

(test_resource_entries):

  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_attribute_order-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_attribute_order-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_attribute_order.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_attribute_order.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_cached-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_cached-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_cached.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_cached.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_connection_reuse-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_connection_reuse-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_connection_reuse.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_connection_reuse.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_dynamic_insertion-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_dynamic_insertion-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_dynamic_insertion.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_dynamic_insertion.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_frame_initiator_type-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_frame_initiator_type-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_frame_initiator_type.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_frame_initiator_type.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_ignore_data_url-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_data_url-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_ignore_data_url.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_data_url.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_ignore_failures-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_failures-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_ignore_failures.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_ignore_failures.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_initiator_types-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_initiator_types-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_initiator_types.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_initiator_types.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_redirects-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_redirects-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_redirects.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_redirects.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_reparenting-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_reparenting-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_reparenting.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_reparenting.html.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_script_types-expected.txt: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_script_types-expected.txt.
  • http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_script_types.html: Renamed from LayoutTests/http/tests/w3c/webperf/submission/resource-timing/html/test_resource_script_types.html.
  • platform/chromium/TestExpectations: Moved directories...
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
5:06 PM Changeset in webkit [143988] by andersca@apple.com
  • 16 edits in trunk

Source/WebKit2: Add a new unavailablePluginButtonClicked callback that takes a WKDictionary of plug-in information
https://bugs.webkit.org/show_bug.cgi?id=110821

Reviewed by Beth Dakin.

  • UIProcess/API/C/WKPage.cpp:

(WKPageGetPluginInformationPluginspageAttributeURLKey):
(WKPageGetPluginInformationPluginURLKey):
Add two new API key getters.

  • UIProcess/API/C/WKPage.h:

Add a new callback and deprecate the old callback.

  • UIProcess/WebLoaderClient.cpp:

(WebKit::WebLoaderClient::didFailToInitializePlugin):
(WebKit::WebLoaderClient::didBlockInsecurePluginVersion):
(WebKit::WebLoaderClient::pluginLoadPolicy):
Make the pluginInformationDictionary a static member function of WebPageProxy so it
can be called from WebUIClient as well.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::getPluginPath):
Pass the bundle version as well.

(WebKit::WebPageProxy::pluginInformationPluginspageAttributeURLKey):
(WebKit::WebPageProxy::pluginInformationPluginURLKey):
Add two new keys.

(WebKit::WebPageProxy::pluginInformationDictionary):
Handle more keys.

(WebKit::WebPageProxy::unavailablePluginButtonClicked):
Get the plug-in bundle identifier and version.

  • UIProcess/WebPageProxy.messages.in:

Pass along more information; the frame and page URLs.

  • UIProcess/WebUIClient.cpp:

(WebKit::WebUIClient::unavailablePluginButtonClicked):
Call the new callback if it's supported.

  • UIProcess/WebUIClient.h:

(WebUIClient):

  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::WebInspectorProxy::platformCreateInspectorPage):
Update for API changes.

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::unavailablePluginButtonClicked):
Ensure that the pluginspage attribute is a valid URL.

Tools: Add a new unavailablePluginButtonClicked callback that takes a WKDictionary of plug-in information
https://bugs.webkit.org/show_bug.cgi?id=110821
<rdar://problem/13265303>

Reviewed by Beth Dakin.

Update for WebKit2 changes.

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController awakeFromNib]):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createOtherPage):
(WTR::TestController::createWebViewWithOptions):
(WTR::TestController::unavailablePluginButtonClicked):

  • WebKitTestRunner/TestController.h:

(TestController):

4:50 PM Changeset in webkit [143987] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

Remove browser patching mechanism for handling javascript dialogs in chromium port
https://bugs.webkit.org/show_bug.cgi?id=110531

Patch by Ken Kania <kkania@chromium.org> on 2013-02-25
Reviewed by Pavel Feldman.

  • public/WebDevToolsAgent.h:
  • src/WebDevToolsAgentImpl.cpp:

(WebKit::WebDevToolsAgentImpl::handleJavaScriptDialog):
(WebKit::browserHintToString):
(WebKit::browserHintFromString):
(WebKit::WebDevToolsAgent::patchWithBrowserData):

4:49 PM Changeset in webkit [143986] by jpfau@apple.com
  • 37 edits
    7 adds in trunk

Optionally partition cache to prevent using cache for tracking
https://bugs.webkit.org/show_bug.cgi?id=110269

Reviewed by Maciej Stachowiak.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig: Add defines for cache partitioning and public suffix list usage

Source/WebCore:

Implement memory cache partitioning by passing the cache name through
resource requests into a new version of resourceForURL.

Test: http/tests/cache/partitioned-cache.html

  • Configurations/FeatureDefines.xcconfig: Add defines for cache partitioning and public suffix list usage
  • WebCore.exp.in: Export new functions for WKSI and test suite
  • WebCore.xcodeproj/project.pbxproj:
  • html/DOMURL.cpp:

(WebCore::DOMURL::revokeObjectURL): Retrofit for new resourceForRequest function

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::cachedResource): Retrofit for new resourceForRequest function

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::replayXHR): Retrofit for new resourceForRequest function

  • loader/DocumentLoader.h:

(DocumentLoader):
(WebCore::DocumentLoader::recordMemoryCacheLoadForFutureClientNotification): Retrofit for new resourceForRequest function
(WebCore::DocumentLoader::takeMemoryCacheLoadsForClientNotification): Retrofit for new resourceForRequest function

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::loadedResourceFromMemoryCache): Retrofit for new resourceForRequest function
(WebCore::FrameLoader::tellClientAboutPastMemoryCacheLoads): Retrofit for new resourceForRequest function

  • loader/archive/cf/LegacyWebArchive.cpp:

(WebCore::LegacyWebArchive::create): Retrofit for new resourceForRequest function

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::~CachedResource):

  • loader/cache/CachedResource.h: Retrofit for new resourceForRequest function

(CachedResource):
(WebCore::CachedResource::cachePartition):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestUserCSSStyleSheet): Retrofit for new resourceForRequest function
(WebCore::CachedResourceLoader::requestResource): Retrofit for new resourceForRequest function
(WebCore::CachedResourceLoader::loadResource): Retrofit for new resourceForRequest function

  • loader/cache/MemoryCache.cpp:

(WebCore):
(WebCore::partitionName): Add function for determining absolute partition name
(WebCore::MemoryCache::add): Retrofit for partition mapping
(WebCore::MemoryCache::revalidationSucceeded): Retrofit for partition mapping
(WebCore::MemoryCache::resourceForURL): Call into new resourceForRequest
(WebCore::MemoryCache::resourceForRequest): Retrofit for partition mapping
(WebCore::MemoryCache::evict): Retrofit for partition mapping
(WebCore::MemoryCache::removeResourcesWithOrigin): Retrofit for partition mapping
(WebCore::MemoryCache::getOriginsWithCache): Retrofit for partition mapping
(WebCore::MemoryCache::removeUrlFromCache): Retrofit for partition mapping
(WebCore::MemoryCache::removeRequestFromCache): Retrofit for partition mapping
(WebCore::MemoryCache::removeRequestFromCacheImpl): Retrofit for partition mapping
(WebCore::MemoryCache::crossThreadRemoveRequestFromCache): Add function for calling removeRequestFromCacheImpl that takes a CrossThreadResourceRequestData
(WebCore::MemoryCache::getStatistics): Retrofit for partition mapping
(WebCore::MemoryCache::setDisabled): Retrofit for partition mapping

  • loader/cache/MemoryCache.h:

(MemoryCache):

  • page/SecurityOrigin.cpp:

(WebCore):
(WebCore::SecurityOrigin::cachePartition): Add function for determining the cache partition name

  • page/SecurityOrigin.h:

(SecurityOrigin):

  • platform/PublicSuffix.h: Added.

(WebCore):

  • platform/mac/PublicSuffixMac.mm: Added.

(WebCore):
(WebCore::isPublicSuffix):
(WebCore::topPrivatelyControlledDomain):

  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:
  • platform/network/cf/ResourceRequest.h:

(ResourceRequest):
(WebCore::ResourceRequest::cachePartition):
(WebCore::ResourceRequest::setCachePartition):
(CrossThreadResourceRequestData):

  • platform/network/cf/ResourceRequestCFNet.cpp:

(WebCore::ResourceRequest::doPlatformCopyData): Pass through cache partition name
(WebCore):
(WebCore::ResourceRequest::doPlatformAdopt): Pass through cache partition name

  • platform/network/mac/ResourceRequestMac.mm:

(WebCore::ResourceRequest::doUpdateResourceRequest): Pass through cache partition name
(WebCore::ResourceRequest::doUpdatePlatformRequest): Pass through cache partition name

Source/WebKit/mac:

Update WKSI bindings and add feature defines.

  • Configurations/FeatureDefines.xcconfig: Add defines for cache partitioning and public suffix list usage
  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

Source/WebKit2:

Update WKSI bindings and add feature defines.

  • Configurations/FeatureDefines.xcconfig: Add defines for cache partitioning and public suffix list usage
  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

Tools:

Add test suite for public suffix functions on Mac.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/mac/PublicSuffix.mm: Added.

(TestWebKitAPI):
(TestWebKitAPI::TEST_F):

WebKitLibraries:

Update WKSI bindings.

  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLion.a:
  • libWebKitSystemInterfaceMountainLion.a:

LayoutTests:

Added tests for ensuring the cache partitioning functions

  • http/tests/cache/partitioned-cache-expected.txt: Added.
  • http/tests/cache/partitioned-cache.html: Added.
  • http/tests/cache/resources/echo-cookie.cgi: Added.
  • http/tests/cache/resources/partitioned-cache-loader.html: Added.
4:44 PM Changeset in webkit [143985] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[chromium] Plumb WebViewImpl's compositor scheduling suppression out to WebWidgetClient
https://bugs.webkit.org/show_bug.cgi?id=110640

Patch by James Robinson <jamesr@chromium.org> on 2013-02-25
Reviewed by Adrienne Walker.

This plumbs the WebViewImpl::m_suppressInvalidations logic out to the WebWidgetClient so
it can be implemented by the embedder. The existing logic is left in place for now,
once the embedder side has landed WebViewImpl will be purely a pass-through.

  • public/WebWidgetClient.h:

(WebWidgetClient):
(WebKit::WebWidgetClient::suppressCompositorScheduling):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::suppressInvalidations):
(WebKit::WebViewImpl::setRootGraphicsLayer):

4:21 PM Changeset in webkit [143984] by jer.noble@apple.com
  • 10 edits in trunk/Source

Normalize ENABLE_ENCRYPTED_MEDIA definitions across all FeatureDefines files.
https://bugs.webkit.org/show_bug.cgi?id=110806

Source/WebCore:

Reviewed by Alexey Proskuryakov.

Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.

  • Configurations/FeatureDefines.xcconfig:

Fix some build errors which occurred when both ENCRYPTED_MEDIA and
ENCRYPTED_MEDIA_V2 were enabled:

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::webkitGenerateKeyRequest):
(WebCore::HTMLMediaElement::webkitAddKey):

  • page/DOMWindow.idl:

Source/WebKit/mac:

Reviewed by Alexey Proskuryakov.

Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.

Reviewed by Alexey Proskuryakov.

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

Reviewed by Alexey Proskuryakov.

Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.

  • wtf/FeatureDefines.h:
4:12 PM Changeset in webkit [143983] by abarth@webkit.org
  • 3 edits in trunk/Source/WebCore

6% regression in intl1 page cycler on chromium-mac
https://bugs.webkit.org/show_bug.cgi?id=110784

Reviewed by Eric Seidel.

This patch reverts http://trac.webkit.org/changeset/143014 to see if
that's the cause of the PLT regression. If it's not the cause, I'll
roll it back in.

  • dom/Element.cpp:

(WebCore::Element::addAttributeInternal):
(WebCore::ShareableElementData::ShareableElementData):
(WebCore::UniqueElementData::makeShareableCopy):
(WebCore::ElementData::addAttribute):
(WebCore::ElementData::removeAttribute):
(WebCore::ElementData::reportMemoryUsage):

  • dom/Element.h:

(ElementData):
(UniqueElementData):
(WebCore::ElementData::mutableAttributeVector):
(WebCore):
(WebCore::ElementData::immutableAttributeArray):
(WebCore::ElementData::length):
(WebCore::ElementData::getAttributeItem):
(WebCore::ElementData::attributeItem):

3:48 PM Changeset in webkit [143982] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

Full screen mode should not exit when application resigns active state.
https://bugs.webkit.org/show_bug.cgi?id=106129

Reviewed by Darin Adler.

Now that full screen windows get their own full screen space, there is no reason to exit full
screen mode when the application resigns active state. Instead, the windowserver will bring the
space containing the newly active application to the foreground. The user can then swipe back
to the full screen space (or use Mission Control) to get back to the full screen window.

  • UIProcess/mac/WKFullScreenWindowController.mm:

(-[WKFullScreenWindowController windowDidLoad]): Remove the applicationDidResignActive: notification from WKFullScreenWindowController.

3:39 PM Changeset in webkit [143981] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

Safari shows empty window and paints webpage in full-screen background
https://bugs.webkit.org/show_bug.cgi?id=103712

Reviewed by Darin Adler.

When canceling full screen mode due to a provisional load, exit normally instead of closing the
full screen window controller. Additionally, to ensure full screen is cancelled when the enclosing
frame around a full screen iframe is navigated, check to see if the navigating document contains
a full screen element, rather than checking whether the document itself is full screen.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):

3:36 PM Changeset in webkit [143980] by dpranke@chromium.org
  • 2 edits in trunk/Tools

nrwt: reenable multiple http shards on chromium win
https://bugs.webkit.org/show_bug.cgi?id=110814

Reviewed by Tony Chang.

The underlying bug in DumpRenderTree that was causing us to look for a
pac file and timeout under load was fixed a while ago.

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

(ChromiumWinPort.relative_test_filename):

3:32 PM Changeset in webkit [143979] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Page::m_isInWindow is uninitialized
https://bugs.webkit.org/show_bug.cgi?id=110807

Reviewed by Simon Fraser.

Ideally m_isInWindow and m_isOnscreen would default to false, and be flipped to true
when the Page is put in-window or on-screen. However, only the Mac port seems to ever
call setIsInWindow/didMoveOnscreen. So, we have to default to true and flip it to false
immediately after construction on Mac.

This is just matching the behaviour of the existing m_isOnscreen.

  • page/Page.cpp:

(WebCore::Page::Page): Initialize m_isInWindow to true.

3:02 PM Changeset in webkit [143978] by dpranke@chromium.org
  • 2 edits in trunk/Tools

Make ninja the default w/ build-webkit --chromium on windows.
https://bugs.webkit.org/show_bug.cgi?id=110731

Unreviewed - TBR'ing thakis :).

  • Scripts/update-webkit-chromium:
2:58 PM Changeset in webkit [143977] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix build.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didBlockInsecurePluginVersion):

2:38 PM Changeset in webkit [143976] by andersca@apple.com
  • 13 edits in trunk

Add a new pluginDidFail callback that takes a WKDictionary of plug-in information
https://bugs.webkit.org/show_bug.cgi?id=110793
<rdar://problem/13265303>

Reviewed by Sam Weinig.

Source/WebKit2:

Add a new pluginDidFail callback that takes a WKDictionaryRef and also pass in the
frame and page URLs.

  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebLoaderClient.cpp:

(WebKit::pluginInformationDictionary):
(WebKit::WebLoaderClient::didFailToInitializePlugin):
(WebKit::WebLoaderClient::didBlockInsecurePluginVersion):
(WebKit::WebLoaderClient::pluginLoadPolicy):

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

(WebKit::WebPageProxy::didFailToInitializePlugin):
(WebKit::WebPageProxy::didBlockInsecurePluginVersion):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::didFailToInitializePlugin):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::createJavaAppletWidget):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::createPlugin):

Tools:

Update for WebKit2 API changes.

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController awakeFromNib]):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::createWebViewWithOptions):

2:27 PM Changeset in webkit [143975] by eric@webkit.org
  • 8 edits
    18 copies
    11 moves
    28 adds
    44 deletes in trunk/LayoutTests

Move html5lib/run-test* into html5lib/generated in preparation for generating these harnesses
https://bugs.webkit.org/show_bug.cgi?id=110795

Reviewed by Ojan Vafai.

  • html5lib/generated/run-template-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-template.html: Added.
  • html5lib/generated/run-tests1-expected.txt: Renamed from LayoutTests/html5lib/run-test7-expected.txt.
  • html5lib/generated/run-tests1.html: Added.
  • html5lib/generated/run-tests10-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests10.html: Added.
  • html5lib/generated/run-tests11-expected.txt: Renamed from LayoutTests/html5lib/run-test11-expected.txt.
  • html5lib/generated/run-tests11.html: Added.
  • html5lib/generated/run-tests12-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests12.html: Added.
  • html5lib/generated/run-tests14-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests14.html: Added.
  • html5lib/generated/run-tests15-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests15.html: Added.
  • html5lib/generated/run-tests16-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests16.html: Added.
  • html5lib/generated/run-tests17-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests17.html: Added.
  • html5lib/generated/run-tests18-expected.txt: Renamed from LayoutTests/html5lib/run-test18-expected.txt.
  • html5lib/generated/run-tests18.html: Added.
  • html5lib/generated/run-tests19-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests19.html: Added.
  • html5lib/generated/run-tests2-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests2.html: Added.
  • html5lib/generated/run-tests20-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests20.html: Added.
  • html5lib/generated/run-tests21-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests21.html: Added.
  • html5lib/generated/run-tests22-expected.txt: Renamed from LayoutTests/html5lib/run-test10-expected.txt.
  • html5lib/generated/run-tests22.html: Added.
  • html5lib/generated/run-tests23-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests23.html: Added.
  • html5lib/generated/run-tests24-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests24.html: Added.
  • html5lib/generated/run-tests25-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests25.html: Added.
  • html5lib/generated/run-tests26-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests26.html: Added.
  • html5lib/generated/run-tests3-expected.txt: Renamed from LayoutTests/html5lib/run-test14-expected.txt.
  • html5lib/generated/run-tests3.html: Added.
  • html5lib/generated/run-tests4-expected.txt: Renamed from LayoutTests/html5lib/run-test12-expected.txt.
  • html5lib/generated/run-tests4.html: Added.
  • html5lib/generated/run-tests5-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests5.html: Added.
  • html5lib/generated/run-tests6-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests6.html: Added.
  • html5lib/generated/run-tests7-expected.txt: Renamed from LayoutTests/html5lib/run-test1-expected.txt.
  • html5lib/generated/run-tests7.html: Added.
  • html5lib/generated/run-tests8-expected.txt: Copied from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests8.html: Added.
  • html5lib/generated/run-tests9-expected.txt: Renamed from LayoutTests/html5lib/run-template-expected.txt.
  • html5lib/generated/run-tests9.html: Added.
  • html5lib/run-template.html: Removed.
  • html5lib/run-test1.html: Removed.
  • html5lib/run-test10.html: Removed.
  • html5lib/run-test11.html: Removed.
  • html5lib/run-test12.html: Removed.
  • html5lib/run-test14.html: Removed.
  • html5lib/run-test15-expected.txt: Removed.
  • html5lib/run-test15.html: Removed.
  • html5lib/run-test16-expected.txt: Removed.
  • html5lib/run-test16.html: Removed.
  • html5lib/run-test17-expected.txt: Removed.
  • html5lib/run-test17.html: Removed.
  • html5lib/run-test18.html: Removed.
  • html5lib/run-test19-expected.txt: Removed.
  • html5lib/run-test19.html: Removed.
  • html5lib/run-test2-expected.txt: Removed.
  • html5lib/run-test2.html: Removed.
  • html5lib/run-test20-expected.txt: Removed.
  • html5lib/run-test20.html: Removed.
  • html5lib/run-test21-expected.txt: Removed.
  • html5lib/run-test21.html: Removed.
  • html5lib/run-test22-expected.txt: Removed.
  • html5lib/run-test22.html: Removed.
  • html5lib/run-test23-expected.txt: Removed.
  • html5lib/run-test23.html: Removed.
  • html5lib/run-test24-expected.txt: Removed.
  • html5lib/run-test24.html: Removed.
  • html5lib/run-test25-expected.txt: Removed.
  • html5lib/run-test25.html: Removed.
  • html5lib/run-test26-expected.txt: Removed.
  • html5lib/run-test26.html: Removed.
  • html5lib/run-test3-expected.txt: Removed.
  • html5lib/run-test3.html: Removed.
  • html5lib/run-test4-expected.txt: Removed.
  • html5lib/run-test4.html: Removed.
  • html5lib/run-test5-expected.txt: Removed.
  • html5lib/run-test5.html: Removed.
  • html5lib/run-test6-expected.txt: Removed.
  • html5lib/run-test6.html: Removed.
  • html5lib/run-test7.html: Removed.
  • html5lib/run-test8-expected.txt: Removed.
  • html5lib/run-test8.html: Removed.
  • html5lib/run-test9-expected.txt: Removed.
  • html5lib/run-test9.html: Removed.
  • platform/chromium/TestExpectations:
  • platform/chromium/html5lib/generated/run-tests1-expected.txt: Renamed from LayoutTests/platform/chromium/html5lib/run-test7-expected.txt.
  • platform/chromium/html5lib/generated/run-tests18-expected.txt: Renamed from LayoutTests/platform/chromium/html5lib/run-test18-expected.txt.
  • platform/chromium/html5lib/generated/run-tests7-expected.txt: Renamed from LayoutTests/platform/chromium/html5lib/run-test1-expected.txt.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
2:21 PM Changeset in webkit [143974] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

Unreviewed build fix after r143965.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateOverloadedConstructorCallback):

  • bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:

(WebCore::TestOverloadedConstructorsV8Internal::constructor):

2:15 PM WebKitGTK/2.0.x edited by kov@webkit.org
(diff)
2:12 PM Changeset in webkit [143973] by kov@webkit.org
  • 2 edits in trunk/Source/WebCore

Build fix for gtk2-based library.

Reviewed by Martin Robinson.

  • platform/gtk/WidgetRenderingContext.cpp: move gtk2 check to after the config.h

include, which is the one that includes autotoolsconfig.h, where the gtk2 define
lives.

2:06 PM Changeset in webkit [143972] by commit-queue@webkit.org
  • 8 edits
    2 deletes in trunk/Source

Unreviewed, rolling out r143936.
http://trac.webkit.org/changeset/143936
https://bugs.webkit.org/show_bug.cgi?id=110789

Causes webkit_unit_tests failures on android dbg (Requested by
vollick on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-25

Source/WebCore:

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

(WebCore::GIFImageDecoder::GIFImageDecoder):
(WebCore::GIFImageDecoder::setData):
(WebCore::GIFImageDecoder::frameCount):
(WebCore::GIFImageDecoder::decodingHalted):
(WebCore):
(WebCore::GIFImageDecoder::haveDecodedRow):
(WebCore::GIFImageDecoder::decode):

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

(GIFImageDecoder):

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

(GIFImageReader::doLZW):
(GIFImageReader::read):

  • platform/image-decoders/gif/GIFImageReader.h:

(GIFFrameContext):
(GIFFrameContext::GIFFrameContext):
(GIFFrameContext::~GIFFrameContext):
(GIFImageReader::GIFImageReader):
(GIFImageReader::~GIFImageReader):
(GIFImageReader):
(GIFImageReader::globalColormap):
(GIFImageReader::globalColormapSize):

Source/WebKit/chromium:

  • WebKit.gyp:
  • WebKit.gypi:
  • tests/GIFImageDecoderTest.cpp: Removed.
  • tests/data/broken.gif: Removed.
1:48 PM Changeset in webkit [143971] by Lucas Forschler
  • 2 edits in tags/Safari-537.31.9/Source/WebKit2

Merged r143829. <rdar://problem/13236883>

1:47 PM Changeset in webkit [143970] by roger_fong@apple.com
  • 4 edits in trunk/Source

Unreviewed. VS2010 solution build fix.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
  • JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGeneratorCommon.props:
1:44 PM Changeset in webkit [143969] by Lucas Forschler
  • 4 edits in tags/Safari-537.31.9/Source

Versioning.

1:40 PM Changeset in webkit [143968] by Lucas Forschler
  • 1 copy in tags/Safari-537.31.9

New Tag.

1:31 PM Changeset in webkit [143967] by haraken@chromium.org
  • 11 edits in trunk/Source/WebCore

[V8] Generate a wrapper function for method callbacks
https://bugs.webkit.org/show_bug.cgi?id=110769

Reviewed by Adam Barth.

This is one of steps to insert TRACE_EVENT_STATE() macros
into DOM bindings. This patch introduces an indirection
function for xxxMethod(), like this:

For non-custom methods
void xxxMethodCallback(...) {

xxxMethod(...);

}

For custom methods
void xxxMethodCallback(...) {

return xxxMethodCustom(...);

}

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateDomainSafeFunctionGetter):
(GenerateOverloadedFunction):
(GenerateFunctionCallback):
(GenerateFunction):
(GenerateNonStandardFunction):
(GenerateImplementation):
(GenerateFunctionCallString):

  • bindings/scripts/test/V8/V8Float64Array.cpp:

(WebCore::Float64ArrayV8Internal::fooMethodCallback):
(Float64ArrayV8Internal):
(WebCore::Float64ArrayV8Internal::setMethodCallback):
(WebCore):
(WebCore::ConfigureV8Float64ArrayTemplate):

  • bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:

(WebCore::TestActiveDOMObjectV8Internal::excitingFunctionMethodCallback):
(TestActiveDOMObjectV8Internal):
(WebCore::TestActiveDOMObjectV8Internal::postMessageMethodCallback):
(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
(WebCore::ConfigureV8TestActiveDOMObjectTemplate):

  • bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:

(WebCore::TestCustomNamedGetterV8Internal::anotherFunctionMethodCallback):
(TestCustomNamedGetterV8Internal):
(WebCore):

  • bindings/scripts/test/V8/V8TestEventTarget.cpp:

(WebCore::TestEventTargetV8Internal::itemMethodCallback):
(TestEventTargetV8Internal):
(WebCore::TestEventTargetV8Internal::addEventListenerMethodCallback):
(WebCore::TestEventTargetV8Internal::removeEventListenerMethodCallback):
(WebCore::TestEventTargetV8Internal::dispatchEventMethodCallback):
(WebCore):
(WebCore::ConfigureV8TestEventTargetTemplate):

  • bindings/scripts/test/V8/V8TestInterface.cpp:

(WebCore::TestInterfaceV8Internal::supplementalMethod1MethodCallback):
(TestInterfaceV8Internal):
(WebCore::TestInterfaceV8Internal::supplementalMethod2MethodCallback):
(WebCore::TestInterfaceV8Internal::supplementalMethod3MethodCallback):
(WebCore::TestInterfaceV8Internal::supplementalMethod4MethodCallback):
(WebCore):
(WebCore::ConfigureV8TestInterfaceTemplate):

  • bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:

(WebCore::TestMediaQueryListListenerV8Internal::methodMethodCallback):
(TestMediaQueryListListenerV8Internal):
(WebCore):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::voidMethodMethodCallback):
(TestObjV8Internal):
(WebCore::TestObjV8Internal::voidMethodWithArgsMethodCallback):
(WebCore::TestObjV8Internal::longMethodMethodCallback):
(WebCore::TestObjV8Internal::longMethodWithArgsMethodCallback):
(WebCore::TestObjV8Internal::objMethodMethod):
(WebCore::TestObjV8Internal::objMethodMethodCallback):
(WebCore::TestObjV8Internal::objMethodWithArgsMethodCallback):
(WebCore::TestObjV8Internal::methodWithSequenceArgMethodCallback):
(WebCore::TestObjV8Internal::methodReturningSequenceMethodCallback):
(WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsMethodCallback):
(WebCore::TestObjV8Internal::serializedValueMethodCallback):
(WebCore::TestObjV8Internal::optionsObjectMethodCallback):
(WebCore::TestObjV8Internal::methodWithExceptionMethodCallback):
(WebCore::TestObjV8Internal::customMethodMethodCallback):
(WebCore::TestObjV8Internal::customMethodWithArgsMethodCallback):
(WebCore::TestObjV8Internal::addEventListenerMethodCallback):
(WebCore::TestObjV8Internal::removeEventListenerMethodCallback):
(WebCore::TestObjV8Internal::withScriptStateVoidMethodCallback):
(WebCore::TestObjV8Internal::withScriptStateObjMethodCallback):
(WebCore::TestObjV8Internal::withScriptStateVoidExceptionMethodCallback):
(WebCore::TestObjV8Internal::withScriptStateObjExceptionMethodCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextMethodCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateMethodCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateObjExceptionMethodCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesMethodCallback):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackMethodCallback):
(WebCore::TestObjV8Internal::methodWithOptionalArgMethodCallback):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndOptionalArgMethodCallback):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndTwoOptionalArgsMethodCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringMethodCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsUndefinedMethodCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsNullStringMethodCallback):
(WebCore::TestObjV8Internal::methodWithCallbackArgMethodCallback):
(WebCore::TestObjV8Internal::methodWithNonCallbackArgAndCallbackArgMethodCallback):
(WebCore::TestObjV8Internal::methodWithCallbackAndOptionalArgMethodCallback):
(WebCore::TestObjV8Internal::conditionalMethod1MethodCallback):
(WebCore::TestObjV8Internal::conditionalMethod2MethodCallback):
(WebCore::TestObjV8Internal::conditionalMethod3MethodCallback):
(WebCore::TestObjV8Internal::overloadedMethodMethodCallback):
(WebCore::TestObjV8Internal::classMethodMethodCallback):
(WebCore::TestObjV8Internal::classMethodWithOptionalMethodCallback):
(WebCore::TestObjV8Internal::classMethod2MethodCallback):
(WebCore::TestObjV8Internal::overloadedMethod1MethodCallback):
(WebCore::TestObjV8Internal::classMethodWithClampMethodCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod1MethodCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod2MethodCallback):
(WebCore::TestObjV8Internal::enabledPerContextMethod1MethodCallback):
(WebCore::TestObjV8Internal::enabledPerContextMethod2MethodCallback):
(WebCore::TestObjV8Internal::stringArrayFunctionMethodCallback):
(WebCore::TestObjV8Internal::domStringListFunctionMethodCallback):
(WebCore::TestObjV8Internal::getSVGDocumentMethodCallback):
(WebCore::TestObjV8Internal::convert1MethodCallback):
(WebCore::TestObjV8Internal::convert2MethodCallback):
(WebCore::TestObjV8Internal::convert4MethodCallback):
(WebCore::TestObjV8Internal::convert5MethodCallback):
(WebCore::TestObjV8Internal::mutablePointFunctionMethodCallback):
(WebCore::TestObjV8Internal::immutablePointFunctionMethodCallback):
(WebCore::TestObjV8Internal::orangeMethodCallback):
(WebCore::TestObjV8Internal::strictFunctionMethodCallback):
(WebCore::TestObjV8Internal::variadicStringMethodMethodCallback):
(WebCore::TestObjV8Internal::variadicDoubleMethodMethodCallback):
(WebCore::TestObjV8Internal::variadicNodeMethodMethodCallback):
(WebCore):
(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::installPerContextPrototypeProperties):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:

(WebCore::TestSerializedScriptValueInterfaceV8Internal::acceptTransferListMethodCallback):
(TestSerializedScriptValueInterfaceV8Internal):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::multiTransferListMethodCallback):
(WebCore):

  • bindings/scripts/test/V8/V8TestTypedefs.cpp:

(WebCore::TestTypedefsV8Internal::funcMethodCallback):
(TestTypedefsV8Internal):
(WebCore::TestTypedefsV8Internal::multiTransferListMethodCallback):
(WebCore::TestTypedefsV8Internal::setShadowMethodCallback):
(WebCore::TestTypedefsV8Internal::methodWithSequenceArgMethodCallback):
(WebCore::TestTypedefsV8Internal::nullableArrayArgMethodCallback):
(WebCore::TestTypedefsV8Internal::funcWithClampMethodCallback):
(WebCore::TestTypedefsV8Internal::immutablePointFunctionMethodCallback):
(WebCore::TestTypedefsV8Internal::stringArrayFunctionMethodCallback):
(WebCore::TestTypedefsV8Internal::stringArrayFunction2MethodCallback):
(WebCore::TestTypedefsV8Internal::methodWithExceptionMethodCallback):
(WebCore):
(WebCore::ConfigureV8TestTypedefsTemplate):

1:29 PM Changeset in webkit [143966] by pdr@google.com
  • 2 edits in trunk/LayoutTests

Remove two stale entries from TestExpectations

Unreviewed patch of test expectations.

  • platform/chromium/TestExpectations:
1:28 PM Changeset in webkit [143965] by haraken@chromium.org
  • 11 edits in trunk/Source/WebCore

[V8] Generate a wrapper method for constructor callbacks
https://bugs.webkit.org/show_bug.cgi?id=110765

Reviewed by Adam Barth.

This is one of steps to insert TRACE_EVENT_STATE() macros
into DOM bindings. This patch introduces an indirection
function for constructor(), like this:

For non-custom constructors
void constructorCallback(...) {

return constructor(...);

}

For custom constructors
void constructorCallback(...) {

return constructorCustom(...);

}

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(GenerateOverloadedConstructorCallback):
(GenerateSingleConstructorCallback):
(GenerateConstructorCallback):
(GenerateConstructor):
(GenerateEventConstructor):
(GenerateTypedArrayConstructor):
(GenerateNamedConstructor):
(GenerateConstructorHeader):
(GenerateImplementation):

  • bindings/scripts/test/V8/V8Float64Array.cpp:

(WebCore::Float64ArrayV8Internal::constructor):
(Float64ArrayV8Internal):
(WebCore::V8Float64Array::constructorCallback):

  • bindings/scripts/test/V8/V8TestEventConstructor.cpp:

(WebCore::TestEventConstructorV8Internal::constructor):
(WebCore):
(WebCore::V8TestEventConstructor::constructorCallback):

  • bindings/scripts/test/V8/V8TestInterface.cpp:

(WebCore::TestInterfaceV8Internal::constructor):
(TestInterfaceV8Internal):
(WebCore::V8TestInterface::constructorCallback):

  • bindings/scripts/test/V8/V8TestNamedConstructor.cpp:

(WebCore::V8TestNamedConstructorConstructorCallback):

  • bindings/scripts/test/V8/V8TestNode.cpp:

(WebCore::TestNodeV8Internal::constructor):
(TestNodeV8Internal):
(WebCore::V8TestNode::constructorCallback):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::constructor):
(TestObjV8Internal):
(WebCore::V8TestObj::constructorCallback):

  • bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:

(WebCore::TestOverloadedConstructorsV8Internal::constructor1):
(WebCore::TestOverloadedConstructorsV8Internal::constructor2):
(WebCore::TestOverloadedConstructorsV8Internal::constructor3):
(WebCore::TestOverloadedConstructorsV8Internal::constructor4):
(WebCore::TestOverloadedConstructorsV8Internal::constructor):
(WebCore):
(WebCore::V8TestOverloadedConstructors::constructorCallback):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:

(WebCore::TestSerializedScriptValueInterfaceV8Internal::constructor):
(TestSerializedScriptValueInterfaceV8Internal):
(WebCore::V8TestSerializedScriptValueInterface::constructorCallback):

  • bindings/scripts/test/V8/V8TestTypedefs.cpp:

(WebCore::TestTypedefsV8Internal::constructor):
(TestTypedefsV8Internal):
(WebCore::V8TestTypedefs::constructorCallback):

1:26 PM Changeset in webkit [143964] by haraken@chromium.org
  • 6 edits in trunk/Source/WebCore

[V8] Generate xxxAttrSetterCallback()
https://bugs.webkit.org/show_bug.cgi?id=110726

Reviewed by Adam Barth.

This is one of steps to insert TRACE_EVENT_STATE() macros into DOM bindings.
This patch introduces an indirection function for xxxAttrSetter(), like this:

For non-custom setters
void xxxAttrSetterCallback(...) {

xxxAttrSetter(...);

}

For custom setters.
void xxxAttrSetterCallback(...) {

return xxxAttrSetterCustom(...);

}

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNormalAttrSetterCallback):
(GenerateNormalAttrSetter):
(GenerateSingleBatchedAttribute):
(GenerateImplementation):

  • bindings/scripts/test/V8/V8TestInterface.cpp:

(WebCore::TestInterfaceV8Internal::supplementalStaticAttrAttrSetterCallback):
(TestInterfaceV8Internal):
(WebCore::TestInterfaceV8Internal::supplementalStr2AttrSetterCallback):
(WebCore::TestInterfaceV8Internal::supplementalStr3AttrSetterCallback):
(WebCore::TestInterfaceV8Internal::supplementalNodeAttrSetterCallback):
(WebCore):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjV8Internal::staticStringAttrAttrSetterCallback):
(TestObjV8Internal):
(WebCore::TestObjV8Internal::enumAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::shortAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::unsignedShortAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::longAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::longLongAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::unsignedLongLongAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::stringAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::testObjAttrAttrSetter):
(WebCore::TestObjV8Internal::testObjAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::XMLObjAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::createAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedStringAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedIntegralAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedUnsignedIntegralAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedBooleanAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedURLAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedCustomIntegralAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedCustomBooleanAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::reflectedCustomURLAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::typedArrayAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::attrWithGetterExceptionAttrSetterCallback):
(WebCore::TestObjV8Internal::attrWithSetterExceptionAttrSetterCallback):
(WebCore::TestObjV8Internal::stringAttrWithGetterExceptionAttrSetterCallback):
(WebCore::TestObjV8Internal::stringAttrWithSetterExceptionAttrSetterCallback):
(WebCore::TestObjV8Internal::customAttrAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptStateAttributeAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrSetterCallback):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrSetterCallback):
(WebCore::TestObjV8Internal::conditionalAttr1AttrSetterCallback):
(WebCore::TestObjV8Internal::conditionalAttr2AttrSetterCallback):
(WebCore::TestObjV8Internal::conditionalAttr3AttrSetterCallback):
(WebCore::TestObjV8Internal::anyAttributeAttrSetterCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeAttr1AttrSetterCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeAttr2AttrSetterCallback):
(WebCore::TestObjV8Internal::enabledPerContextAttr1AttrSetterCallback):
(WebCore::TestObjV8Internal::enabledPerContextAttr2AttrSetterCallback):
(WebCore::TestObjV8Internal::floatArrayAttrSetterCallback):
(WebCore::TestObjV8Internal::doubleArrayAttrSetterCallback):
(WebCore::TestObjV8Internal::mutablePointAttrSetterCallback):
(WebCore::TestObjV8Internal::immutablePointAttrSetterCallback):
(WebCore::TestObjV8Internal::strawberryAttrSetterCallback):
(WebCore::TestObjV8Internal::strictFloatAttrSetterCallback):
(WebCore::TestObjV8Internal::idAttrSetterCallback):
(WebCore):
(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::installPerContextProperties):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:

(WebCore::TestSerializedScriptValueInterfaceV8Internal::valueAttrSetterCallback):
(TestSerializedScriptValueInterfaceV8Internal):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrSetterCallback):
(WebCore):

  • bindings/scripts/test/V8/V8TestTypedefs.cpp:

(WebCore::TestTypedefsV8Internal::unsignedLongLongAttrAttrSetterCallback):
(TestTypedefsV8Internal):
(WebCore::TestTypedefsV8Internal::immutableSerializedScriptValueAttrSetterCallback):
(WebCore::TestTypedefsV8Internal::attrWithGetterExceptionAttrSetterCallback):
(WebCore::TestTypedefsV8Internal::attrWithSetterExceptionAttrSetterCallback):
(WebCore::TestTypedefsV8Internal::stringAttrWithGetterExceptionAttrSetterCallback):
(WebCore::TestTypedefsV8Internal::stringAttrWithSetterExceptionAttrSetterCallback):
(WebCore):

1:24 PM Changeset in webkit [143963] by pdr@google.com
  • 16 edits in trunk/LayoutTests

Rebaseline 3 svg/as-image/ tests

Unreviewed rebaseline of test expectations.

  • platform/chromium-linux/svg/as-image/animated-svg-as-image-expected.png:
  • platform/chromium-linux/svg/as-image/animated-svg-as-image-same-image-expected.png:
  • platform/chromium-linux/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-mac-lion/svg/as-image/animated-svg-as-image-expected.png:
  • platform/chromium-mac-lion/svg/as-image/animated-svg-as-image-same-image-expected.png:
  • platform/chromium-mac-lion/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-mac-snowleopard/svg/as-image/animated-svg-as-image-expected.png:
  • platform/chromium-mac-snowleopard/svg/as-image/animated-svg-as-image-same-image-expected.png:
  • platform/chromium-mac-snowleopard/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-mac/svg/as-image/animated-svg-as-image-expected.png:
  • platform/chromium-mac/svg/as-image/animated-svg-as-image-same-image-expected.png:
  • platform/chromium-mac/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
  • platform/chromium-win/svg/as-image/animated-svg-as-image-expected.png:
  • platform/chromium-win/svg/as-image/animated-svg-as-image-same-image-expected.png:
  • platform/chromium-win/svg/as-image/img-preserveAspectRatio-support-1-expected.png:
1:16 PM Changeset in webkit [143962] by timothy_horton@apple.com
  • 8 edits in trunk/Source/WebKit2

PDFPlugin: Tab between text annotations
https://bugs.webkit.org/show_bug.cgi?id=106539
<rdar://problem/12751789>

Reviewed by Darin Adler.

Use [PDFLayerController activateNextAnnotation:] to advance focus when the tab key is hit while inside a PDF form.

Also, a drive-by fix to make the lifetime of PDFPluginAnnotationEventListener's m_annotation pointer more explicit.

  • WebProcess/Plugins/PDF/PDFLayerControllerDetails.h: Add activateNextAnnotation: SPI.
  • WebProcess/Plugins/PDF/PDFPlugin.h:

(PDFPlugin): Add focus(Next|Previous)Annotation.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::focusNextAnnotation): Ask PDFLayerController to focus the next annotation.
(WebKit::PDFPlugin::focusPreviousAnnotation): Ask PDFLayerController to focus the next annotation.

  • WebProcess/Plugins/PDF/PDFPluginAnnotation.h: Drive-by, initialize m_parent to 0.

(WebKit::PDFPluginAnnotation::PDFPluginAnnotationEventListener::setAnnotation): Added.

  • WebProcess/Plugins/PDF/PDFPluginAnnotation.mm:

(WebKit::PDFPluginAnnotation::attach): Use eventNames() instead of string literals.
(WebKit::PDFPluginAnnotation::~PDFPluginAnnotation): Clear the event listener's reference to its annotation.
(WebKit::PDFPluginAnnotation::PDFPluginAnnotationEventListener::handleEvent): Null-check the event listener's annotation.

  • WebProcess/Plugins/PDF/PDFPluginTextAnnotation.h:

(WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotation): Create our PDFPluginTextAnnotationEventListener.
(PDFPluginTextAnnotationEventListener): Added an event listener (for keydown events in form fields).
(WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotationEventListener::create):
(WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotationEventListener::setTextAnnotation):
(WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotationEventListener::PDFPluginTextAnnotationEventListener):

  • WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:

(WebKit::PDFPluginTextAnnotation::~PDFPluginTextAnnotation): Unregister our keydown event listener.
(WebKit::PDFPluginTextAnnotation::createAnnotationElement): Register our keydown event listener.
(WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotationEventListener::handleEvent): Ask PDFPlugin to focus
the next/previous annotation when the tab key is pressed (Shift-Tab goes backwards).

1:13 PM Changeset in webkit [143961] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

Build fix for Debug.

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::startBackgroundParser):

12:58 PM Changeset in webkit [143960] by abarth@webkit.org
  • 6 edits in trunk/Source/WebCore

6% regression in intl1 page cycler on chromium-mac
https://bugs.webkit.org/show_bug.cgi?id=110784

Reviewed by Eric Seidel.

This patch attempts to heal the regression by reverting all the changes
to the preload scanner up to (and including)
http://trac.webkit.org/changeset/143020/.

  • html/parser/BackgroundHTMLParser.cpp:

(WebCore::BackgroundHTMLParser::resumeFrom):
(WebCore::BackgroundHTMLParser::pumpTokenizer):
(WebCore::BackgroundHTMLParser::sendTokensToMainThread):

  • html/parser/CSSPreloadScanner.cpp:

(WebCore::CSSPreloadScanner::scan):
(WebCore::CSSPreloadScanner::emitRule):

  • html/parser/CSSPreloadScanner.h:

(CSSPreloadScanner):

  • html/parser/HTMLPreloadScanner.cpp:

(WebCore::isStartTag):
(WebCore):
(WebCore::isStartOrEndTag):
(WebCore::TokenPreloadScanner::identifierFor):
(WebCore::TokenPreloadScanner::inititatorFor):
(WebCore::TokenPreloadScanner::StartTagScanner::processAttributes):
(WebCore::TokenPreloadScanner::StartTagScanner::createPreloadRequest):
(WebCore::TokenPreloadScanner::processPossibleTemplateTag):
(WebCore::TokenPreloadScanner::processPossibleStyleTag):
(WebCore::TokenPreloadScanner::processPossibleBaseTag):
(WebCore::TokenPreloadScanner::scan):
(WebCore::HTMLPreloadScanner::scan):

  • html/parser/HTMLPreloadScanner.h:

(TokenPreloadScanner):

12:54 PM Changeset in webkit [143959] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/12976385> Remove rule to silence attempts to create the ~/Library/Caches/com.apple.WebKit2.WebProcessService directory

Reviewed by Anders Carlsson.

  • WebProcess/com.apple.WebProcess.sb.in: Remove the obsolete rule. We no longer have a "WebProcessService".
12:48 PM Changeset in webkit [143958] by fpizlo@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

DFG::Edge should have more bits for UseKind, and DFG::Allocator should be simpler
https://bugs.webkit.org/show_bug.cgi?id=110722

Reviewed by Oliver Hunt.

This rolls out the DFG::Allocator part of http://trac.webkit.org/changeset/143654,
and changes Edge to have more room for UseKinds and possibly other things.

This is performance-neutral on both 32-bit and 64-bit. It reduces the size of
DFG::Node on 64-bit (by virtue of getting rid of the 16-byte alignment of Node)
and increases it slightly on 32-bit (by 4 bytes total - 16-byte alignment led to
80 bytes, but the base size of Node plus the 12 bytes of new m_encodedWords in
Edge gets 84 bytes). But, it will mean that we don't have to increase Node by
another 16 bytes if we ever want to add more UseKinds or other things to Edge.

  • dfg/DFGAllocator.h:

(DFG):
(Allocator):
(JSC::DFG::Allocator::Region::headerSize):
(JSC::DFG::Allocator::Region::numberOfThingsPerRegion):
(JSC::DFG::Allocator::Region::data):
(JSC::DFG::Allocator::Region::isInThisRegion):
(JSC::DFG::::Allocator):
(JSC::DFG::::~Allocator):
(JSC::DFG::::allocate):
(JSC::DFG::::free):
(JSC::DFG::::freeAll):
(JSC::DFG::::reset):
(JSC::DFG::::indexOf):
(JSC::DFG::::allocatorOf):
(JSC::DFG::::bumpAllocate):
(JSC::DFG::::freeListAllocate):
(JSC::DFG::::allocateSlow):
(JSC::DFG::::freeRegionsStartingAt):
(JSC::DFG::::startBumpingIn):

  • dfg/DFGEdge.h:

(JSC::DFG::Edge::Edge):
(Edge):
(JSC::DFG::Edge::node):
(JSC::DFG::Edge::setNode):
(JSC::DFG::Edge::useKindUnchecked):
(JSC::DFG::Edge::setUseKind):
(JSC::DFG::Edge::operator==):
(JSC::DFG::Edge::operator!=):
(JSC::DFG::Edge::makeWord):

  • dfg/DFGNodeAllocator.h:

(DFG):

12:27 PM Changeset in webkit [143957] by pdr@google.com
  • 2 edits
    2 copies in branches/chromium/1410

Merge 143640

Stop starting animations when leaving a page
https://bugs.webkit.org/show_bug.cgi?id=110257

Reviewed by Stephen Chenney.

Source/WebCore:

SVGImage::resetAnimation() incorrectly started animations which could cause a crash
when leaving the page. This patch fixes resetAnimation to only stop the animation,
similar to BitmapImage::resetAnimation().

Additionally, this patch removes an unneeded call to Document::updateStyleForAllDocuments()
that was present in the animation loop. This makes the animation code more resistant to
similar bugs in the future.

Both of these changes are functionally covered with existing tests.

Test: svg/animations/reset-animation-crash.html

  • svg/animation/SMILTimeContainer.cpp:

(WebCore::SMILTimeContainer::updateAnimations):

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::resetAnimation):

LayoutTests:

  • svg/animations/reset-animation-crash-expected.html: Added.
  • svg/animations/reset-animation-crash.html: Added.

TBR=pdr@google.com
Review URL: https://codereview.chromium.org/12310113

12:23 PM Changeset in webkit [143956] by pdr@google.com
  • 12 edits
    6 copies in branches/chromium/1410

Merge 142765

Replace SVG bitmap cache with directly-rendered SVG
https://bugs.webkit.org/show_bug.cgi?id=106159

Reviewed by Tim Horton.

Source/WebCore:

This patch removes the caching of SVG bitmaps so SVG images are rendered directly. This
enables WebKit to pass the IE Chalkboard demo in 10s on a Z620:
http://ie.microsoft.com/testdrive/Performance/Chalkboard/

On a simple scaled SVG benchmark similar to the IE10 Chalkboard demo
(http://philbit.com/SvgImagePerformance/viewport.html):

without patch: ~20FPS
with patch: ~55FPS

The bitmap SVG image cache had several shortcomings:

  • The bitmap cache prevented viewport rendering. (WK104693)
  • Bitmap memory usage was high. (WK106484)
  • Caching animating images was expensive.

This change removes almost all of the SVGImageCache implementation, replacing it with
directly-rendered SVG. Instead of caching bitmaps, an SVGImageForContainer is cached which
is a thin wrapper around an SVG image with the associated container size and scale.
When rendering patterns (e.g., tiled backgrounds), a temporary bitmap is used for
performance. This change also removes the redraw timer of the old cache, instead relying
on the SVG image to notify clients if the image changes (e.g., during animations).

This patch fixes two existing bugs (WK99481 and WK104189) that were due to caching bitmaps
at a fixed size. A test has been added for each of these bugs.

Tests: svg/as-image/svg-image-scaled.html

svg/as-image/svg-image-viewbox.html

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::lookupOrCreateImageForRenderer):
(WebCore::CachedImage::setContainerSizeForRenderer):
(WebCore::CachedImage::clear):
(WebCore::CachedImage::changedInRect):

SVG images are no longer special-cased here. When the SVG image changes, users are
notified through this function, and users can then request their content to be redrawn.

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::setContainerSize):
(WebCore::SVGImage::drawForContainer):

drawForContainer lays out the SVG content for a specific container size and renders it.
The logic is fairly straightforward but a note about the scales and zooms here:

the destination rect parameter is zoomed but not scaled
the source rect parameter is zoomed but not scaled
the context is scaled but not zoomed

SVGImage::draw(...) only accepts a source and destination rect but does not consider
scale or zoom. Therefore, drawForContainer removes the zoom component from the source
so SVGImage::draw(...) will draw from the pre-zoom source to the post-zoom destination.

(WebCore::SVGImage::drawPatternForContainer):

For performance, drawPatternForContainer renders the SVG content onto a bitmap, then
has the bitmap image draw the pattern. This is necessary because drawPattern is used
for tiling.

(WebCore):
(WebCore::SVGImage::startAnimation):
(WebCore::SVGImage::stopAnimation):
(WebCore::SVGImage::resetAnimation):
(WebCore::SVGImage::reportMemoryUsage):

  • svg/graphics/SVGImage.h:

(WebCore):
(SVGImage):

  • svg/graphics/SVGImageCache.cpp:

Instead of storing a SizeAndScales values for each renderer, a SVGImageForContainer
is stored which is just a thin wrapper around an SVG image that contains container
sizing information. By combining the image and size information, the two maps of
SVGImageCache have been merged into one.

To make this patch easier to review, SVGImageCache still exists and works similar to
how it did before the patch. Now, SVGImageCache simply stores the SVGImageForContainers.
In a followup patch it will be removed.

Note: the redraw timer of SVGImageCache has been removed because animation
invalidation is now properly propagated back to the image clients.

(WebCore):
(WebCore::SVGImageCache::SVGImageCache):
(WebCore::SVGImageCache::~SVGImageCache):
(WebCore::SVGImageCache::removeClientFromCache):
(WebCore::SVGImageCache::setContainerSizeForRenderer):
(WebCore::SVGImageCache::imageSizeForRenderer):

Previously, this function returned the scaled image size which was incorrect. The image
size is used by clients such as GraphicsContext2D to determine the source size
for drawing the image. draw() accepts zoomed but not scaled values, so this has been
changed.

(WebCore::SVGImageCache::imageForRenderer):

A FIXME has been added here to not set the scale on every lookup. This can be improved
by setting the page scale factor in setContainerSizeForRenderer() in a future patch.

  • svg/graphics/SVGImageCache.h:

(WebCore):
(SVGImageCache):

  • svg/graphics/SVGImageForContainer.cpp: Added.

(WebCore):

SVGImageForContainer is a thin wrapper around an SVG image. The lifetime of the
SVGImage will be longer than the image cache.

(WebCore::SVGImageForContainer::size):

This is the only logic in SVGImageForContainer. The size returned needs to be zoomed
but not scaled because it is used (e.g., by RenderImage) to pass back into draw() which
takes zoomed but not scaled values.

(WebCore::SVGImageForContainer::draw):
(WebCore::SVGImageForContainer::drawPattern):

  • svg/graphics/SVGImageForContainer.h: Added.

(WebCore):
(SVGImageForContainer):

In a future patch SVGImageForContainer can be made immutable but without a refactoring
for not setting the page scale factor in SVGImageCache::lookupOrCreateImageForRenderer,
setters are needed.

(WebCore::SVGImageForContainer::create):
(WebCore::SVGImageForContainer::containerSize):
(WebCore::SVGImageForContainer::pageScale):
(WebCore::SVGImageForContainer::zoom):
(WebCore::SVGImageForContainer::setSize):
(WebCore::SVGImageForContainer::setZoom):
(WebCore::SVGImageForContainer::setPageScale):
(WebCore::SVGImageForContainer::SVGImageForContainer):
(WebCore::SVGImageForContainer::destroyDecodedData):
(WebCore::SVGImageForContainer::decodedSize):

LayoutTests:

This patch fixes two existing bugs (WK99481 and WK104189) that were due to caching bitmaps
at a fixed size. A test has been added for each of these bugs.

  • platform/chromium/TestExpectations:
  • svg/as-image/svg-image-scaled-expected.html: Added.
  • svg/as-image/svg-image-scaled.html: Added.
  • svg/as-image/svg-image-viewbox-expected.html: Added.
  • svg/as-image/svg-image-viewbox.html: Added.

TBR=pdr@google.com
Review URL: https://codereview.chromium.org/12319101

12:23 PM Changeset in webkit [143955] by fpizlo@apple.com
  • 14 edits in trunk/Source/JavaScriptCore

The DFG special case checks for isCreatedThisArgument are fragile
https://bugs.webkit.org/show_bug.cgi?id=110535

Reviewed by Oliver Hunt.

There may be many situations in which we want to force a variable to never be
unboxed. Capturing is one such case, and the created this argument is another.
Previously all code that dealt with this issue had to query both scenarios.

Now DFG::VariableAccessData knows these things. You just have to ask
VariableAccessData for whether a variable should be unboxed. Anyone wishing to
force a variable to never be unboxed just tells VariableAccessData.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::initialize):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):
(DFG):

  • dfg/DFGCFGSimplificationPhase.cpp:

(CFGSimplificationPhase):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGGraph.h:

(Graph):

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::doRoundOfDoubleVoting):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGUnificationPhase.cpp:

(JSC::DFG::UnificationPhase::run):

  • dfg/DFGVariableAccessData.h:

(JSC::DFG::VariableAccessData::VariableAccessData):
(JSC::DFG::VariableAccessData::mergeIsCaptured):
(JSC::DFG::VariableAccessData::mergeShouldNeverUnbox):
(VariableAccessData):
(JSC::DFG::VariableAccessData::shouldNeverUnbox):
(JSC::DFG::VariableAccessData::shouldUnboxIfPossible):
(JSC::DFG::VariableAccessData::shouldUseDoubleFormat):
(JSC::DFG::VariableAccessData::tallyVotesForShouldUseDoubleFormat):

11:50 AM FeatureFlags edited by Laszlo Gombos
CSS_REGIONS - see r88148 (diff)
11:36 AM Changeset in webkit [143954] by mark.lam@apple.com
  • 2 edits in trunk/Source/WebCore

Changed DatabaseTracker::getMaxSizeForDatabase() to return the previous
database size instead of 0 when the quota limit has been reached.
https://bugs.webkit.org/show_bug.cgi?id=110557.

Reviewed by Geoffrey Garen.

Testing of concurrent multi-process consumption of database quota shows that
returning a value of 0 when the quota is exceeded still allows some databases
to run away with unbounded growth. However, if getMaxSizeForDatabase() returns
the existing database size, the underlying sqlite3 database will successfully
reject new growth.

The value returned by DatabaseTracker::getMaxSizeForDatabase() is used to set
the SQLite3 database size using a sql command "PRAGMA max_page_count = <size>".
The SQLite3 documentation on this pragma says, "The maximum page count cannot
be reduced below the current database size."

It is undefined what setting it to a reduced size will do. So, we're changing
getMaxSizeForDatabase() to return the existing size instead.

No new tests.

  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::getMaxSizeForDatabase):

11:29 AM Changeset in webkit [143953] by thakis@chromium.org
  • 2 edits in trunk/Tools

Fix python unit tests after yoli's email address update in http://trac.webkit.org/changeset/143922
https://bugs.webkit.org/show_bug.cgi?id=110775

Unreviewed, basically a rebaseline.

  • Scripts/webkitpy/common/config/watchlist:
11:28 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
11:27 AM Changeset in webkit [143952] by Carlos Garcia Campos
  • 3 edits
    3 adds in releases/WebKitGTK/webkit-2.0

Merge r143931 - [soup] "Too many redirects" error loading chat in plus.google.com
https://bugs.webkit.org/show_bug.cgi?id=64575

Reviewed by Martin Robinson.

Source/WebCore:

Set the firstPartyForCookies for the new request on redirects to
the URL used for redirection.

Test: http/tests/cookies/set-cookie-on-redirect.html

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::doRedirect):

LayoutTests:

This new test checks firstPartyForCookies is properly set to the
new URL on redirects.

  • http/tests/cookies/resources/set-cookie-on-redirect.php: Added.
  • http/tests/cookies/set-cookie-on-redirect-expected.txt: Added.
  • http/tests/cookies/set-cookie-on-redirect.html: Added.
11:23 AM Changeset in webkit [143951] by thakis@chromium.org
  • 2 edits in trunk/Tools

[chromium] Try to get the webkit builder to use msvs again
https://bugs.webkit.org/show_bug.cgi?id=110771

Reviewed by Eric Seidel.

The msvs gyp generator apparently doesn't write the sln file on every
run, so check the vcxproj file instead.

  • Scripts/webkitdirs.pm:

(determineIsChromiumNinja):

11:14 AM Changeset in webkit [143950] by tony@chromium.org
  • 3 edits in trunk/Source/WebCore

Refactor logic for relaying out children out of RenderBlock::styleDidChange
https://bugs.webkit.org/show_bug.cgi?id=110661

Reviewed by David Hyatt.

Instead of having styleDidChange need to know which children to mark as needing layout,
use a bool to keep track of border and padding width changes so at layout time, we know
we need to set relayoutChildren=true.

We steal a bit from m_lineHeight reducing the possible line height from around 500 million pixels
to 250 million pixels.

No new tests, this should be covered by fast/block/positioning/border-change-relayout-test.html and
fast/block/dynamic-padding-border.html.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::RenderBlock): Fix indent and initialize m_hasBorderOrPaddingLogicalWidthChanged.
(WebCore::RenderBlock::styleDidChange): Remove logic for setting children as needing layout.
(WebCore::RenderBlock::updateLogicalWidthAndColumnWidth): Return true if border or padding width changed.

  • rendering/RenderBlock.h:

(RenderBlock): Steal a bit from m_lineHeight and give it to m_hasBorderOrPaddingLogicalWidthChanged.

10:56 AM Changeset in webkit [143949] by ggaren@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Do one lookup per code cache insertion instead of two
https://bugs.webkit.org/show_bug.cgi?id=110674

Reviewed by Sam Weinig.

Deployed the idiomatic "add null value" trick to avoid a second hash
lookup when inserting an item.

  • runtime/CodeCache.cpp:

(JSC::CodeCacheMap::pruneSlowCase): Factored this into a helper function
to improve clarity and get some code off the hot path.

(JSC::CodeCache::getCodeBlock):
(JSC::CodeCache::getFunctionExecutableFromGlobalCode): Use the add() API
to avoid two hash lookups. Be sure to remove items if parsing fails,
otherwise we'll leave nulls in the table. (I'm guessing that caching parse
errors is not a win.)

  • runtime/CodeCache.h:

(JSC::SourceCodeValue::SourceCodeValue):
(CodeCacheMap):
(JSC::CodeCacheMap::add): Combined find() and set() into add().

(JSC::CodeCacheMap::remove):
(JSC::CodeCacheMap::age):
(JSC::CodeCacheMap::prune): Refactored to support above changes.

10:56 AM Changeset in webkit [143948] by alexis@webkit.org
  • 5 edits in trunk

transition-property property doesn't accept "all, <IDENT>".
https://bugs.webkit.org/show_bug.cgi?id=110074

Reviewed by Dean Jackson.

Source/WebCore:

http://dev.w3.org/csswg/css3-transitions/#transition-property-property
allows all, <IDENT> as a value for the transition-property property. In
fact thanks to http://trac.webkit.org/changeset/143019 we correctly
implemented that behavior for transition shorthand property while
fixing bugs on the previous implementation. We did introduce a
AnimationParseContext to track whether the parsing of the
transition-property was finished or not in relation to the keyword.
This patch extend that mechanism to the longhand by renaming the
boolean and the functions to use it in the context class and set it
correctly while parsing the longhand property.

Test: LayoutTests/transitions/transitions-parsing.html

  • css/CSSParser.cpp:

(WebCore::AnimationParseContext::AnimationParseContext):
(WebCore::AnimationParseContext::commitAnimationPropertyKeyword):
(WebCore::AnimationParseContext::animationPropertyKeywordAllowed):
(AnimationParseContext):
(WebCore::CSSParser::parseAnimationShorthand):
(WebCore::CSSParser::parseTransitionShorthand):
(WebCore::CSSParser::parseAnimationProperty): We can remove the
condition inShorthand() here, if 'none' is parsed then no more keyword
can appear, if 'all' is parsed then we can continue the parsing but
invalidate the property if another keyword is encountered. These
conditions are valid for the shorthand and the longhand.

LayoutTests:

Extend exising test to cover the bug.

  • transitions/transitions-parsing-expected.txt:
  • transitions/transitions-parsing.html:
10:39 AM Changeset in webkit [143947] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[Texmap] LayoutTests/compositing/animation/state-at-end-event-transform-layer.html shows a red square where it shouldn't
https://bugs.webkit.org/show_bug.cgi?id=110685

Patch by No'am Rosenthal <Noam Rosenthal> on 2013-02-25
Reviewed by Martin Robinson.

Removed m_shouldUpdateCurrentTransformFromGraphicsLayer etc., as they don't do
what they're supposed to do. No flickers observed.

LayoutTests/compositing/animation/state-at-end-event-transform-layer.html now works correctly.

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::setAnimatedTransform):
(WebCore::TextureMapperLayer::setAnimatedOpacity):
(WebCore::TextureMapperLayer::setAnimatedFilters):
(WebCore::TextureMapperLayer::syncAnimations):

  • platform/graphics/texmap/TextureMapperLayer.h:

(WebCore::TextureMapperLayer::TextureMapperLayer):
(TextureMapperLayer):

10:27 AM Changeset in webkit [143946] by thakis@chromium.org
  • 2 edits in trunk/Tools

[chromium] try to unbreak run-chromium-webkit-unit-tests on the mac bots
https://bugs.webkit.org/show_bug.cgi?id=110767

Reviewed by Eric Seidel.

The tester runs gyp, which generates out/Release/build.ninja. The bot
scripts use existence (and timestamp) of that file to decide if the
current build is supposed to be ninja or xcodebuild. The file exists,
so the snapshot is extracted to out/Release. The snapshot doesn't
contain build.ninja however due to
http://trac.webkit.org/changeset/140375 , so after extracting the
snapshot the scripts think that this is an xcodebuild build. So remove
the part of that revision that removed ninja files from the archive,
and the bots should be happy again.

  • BuildSlaveSupport/built-product-archive:

(archiveBuiltProduct):

10:24 AM Changeset in webkit [143945] by jer.noble@apple.com
  • 6 edits in trunk/Source/WebCore

AVFoundation.framework and QTKit.framework are lazy-loaded on every WebProcess launch
https://bugs.webkit.org/show_bug.cgi?id=110725

Reviewed by Eric Carlson.

When settings are changed, do not re-query the media engines (which causes their respective
frameworks to load). Instead, merely clear any previously loaded media engines so that
the media engine list will be re-queried the next time installedMediaEngines() is called.

(WebCore::MediaPlayer::resetMediaEngines): Renamed from requeryMediaEngines.

  • platform/graphics/MediaPlayer.h:
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::resetMediaEngines): Ditto.

  • html/HTMLMediaElement.h:
  • page/Settings.cpp:

(WebCore::Settings::setAVFoundationEnabled): Call renamed method.
(WebCore::Settings::setQTKitEnabled): Ditto.

  • platform/graphics/MediaPlayer.cpp:

(WebCore::installedMediaEngines): Only clear out previously queried engines.

10:21 AM Changeset in webkit [143944] by Martin Robinson
  • 2 edits in trunk/Source/WebCore

Try to fix the Windows gyp build after r143937

  • WebCore.gypi: Update the filename in the source list.
10:13 AM Changeset in webkit [143943] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Add isInputMode() method to WebPage class.
https://bugs.webkit.org/show_bug.cgi?id=110754

Patch by Yongxin Dai <yodai@rim.com> on 2013-02-25
Reviewed by Rob Buis.

PR #262569.

There is a case we need to know if the active node is content editable
from TouchHandlerWebKitThread class. WebPage::isInputMode() just delegates
InputHandler::isInputMode().

Reviewed Internally by Mike Fenton.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::isInputMode):
(WebKit):

  • Api/WebPage.h:
10:10 AM Changeset in webkit [143942] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Force form submission when implicit submission fails.
https://bugs.webkit.org/show_bug.cgi?id=110627

Reviewed by Rob Buis.

PR 286023.

When implicit form submission does not submit the form
do a direct submission of the form.

Reviewed Internally by Nima Ghanavatian.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::updateFormState):

10:08 AM Changeset in webkit [143941] by jchaffraix@webkit.org
  • 8 edits in trunk/Source/WebCore

[CSS Grid Layout] Refactor RenderStyle's grid position storage in preparation to supporting spanning
https://bugs.webkit.org/show_bug.cgi?id=110651

Reviewed by Ojan Vafai.

The current code stores grid-{row|column} as a single GridPosition value. While this works well currently,
we want to be able to handle 2 GridPosition as this enables row / column spanning.

That's what this refactoring achieves: it replaces the internal storage by a GridPositions that contains a
single GridPosition for now. The rest is mechanical updates.

Refactoring covered by existing tests.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::valueForGridPositions):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
Added the simple wrapper valueForGridPositions and updated the rest of the code.

  • css/StyleResolver.cpp:

(WebCore::createGridPositions):
(WebCore::StyleResolver::applyProperty):
Ditto with createGridPositions.

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::maximumIndexInDirection):
(WebCore::RenderGrid::placeItemsOnGrid):
(WebCore::RenderGrid::placeSpecifiedMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemOnGrid):
(WebCore::RenderGrid::autoPlacementMajorAxisPositionsForChild):
(WebCore::RenderGrid::autoPlacementMinorAxisPositionsForChild):
Updated the code after adding the indirection: s/GridPosition/GridPositions/ and
use the firstPosition helper.

  • rendering/RenderGrid.h:
  • rendering/style/GridPosition.h:

(WebCore::GridPositions::GridPositions):
(WebCore::GridPositions::firstPosition):
(WebCore::GridPositions::operator==):
Added this class to add the indirection. For now, it only wraps the single GridPosition.

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

Updated to store / take / return a GridPositions.

10:02 AM Changeset in webkit [143940] by Dimitri Glazkov
  • 13 edits in trunk/Source/WebCore

Revert r143840 because it caused flaky crashes.
https://bugs.webkit.org/show_bug.cgi?id=110766

9:57 AM Changeset in webkit [143939] by ap@apple.com
  • 4 edits in trunk/Source/WebCore

Remove an obsolete workaround for relaxing 3rd party cookie policy
https://bugs.webkit.org/show_bug.cgi?id=110664

Reviewed by Benjamin Poulain.

Removed shouldRelaxThirdPartyCookiePolicy(). This workaround is no longer needed,
because CFNetwork performs the same check starting with 10.6.8.

Also, the workaround was not quite correct and harmful for performance, as it
was always changing main document URL to an untrue value, which caused ResourceRequest
regeneration.

  • platform/network/ResourceHandle.h:
  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::ResourceHandle::createCFURLConnection):
(WebCore::ResourceHandle::start):
(WebCore::ResourceHandle::platformLoadResourceSynchronously):

  • platform/network/mac/ResourceHandleMac.mm:

(WebCore::ResourceHandle::createNSURLConnection):
(WebCore::ResourceHandle::start):
(WebCore::ResourceHandle::platformLoadResourceSynchronously):

9:47 AM Changeset in webkit [143938] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

WebInspector: Do not keep track of resources unless they have a valid loader identifier.
https://bugs.webkit.org/show_bug.cgi?id=110761

Reviewed by Pavel Feldman.

  • inspector/NetworkResourcesData.cpp:

(WebCore::NetworkResourcesData::responseReceived):
(WebCore::NetworkResourcesData::setResourceType):
(WebCore::NetworkResourcesData::resourceType):
(WebCore::NetworkResourcesData::setResourceContent):
(WebCore::NetworkResourcesData::maybeAddResourceData):
(WebCore::NetworkResourcesData::maybeDecodeDataToContent):
(WebCore::NetworkResourcesData::addCachedResource):
(WebCore::NetworkResourcesData::addResourceSharedBuffer):
(WebCore::NetworkResourcesData::data):
(WebCore::NetworkResourcesData::xhrReplayData):
(WebCore::NetworkResourcesData::setXHRReplayData):
(WebCore::NetworkResourcesData::reuseXHRReplayData):
(WebCore::NetworkResourcesData::resourceDataForRequestId):
(WebCore::NetworkResourcesData::ensureNoDataForRequestId):
(WebCore::NetworkResourcesData::ensureFreeSpace):

  • inspector/NetworkResourcesData.h:

(NetworkResourcesData):

9:30 AM Changeset in webkit [143937] by commit-queue@webkit.org
  • 4 edits
    1 move
    1 add in trunk/Source/WebCore

[EFL][GTK] Move text selection/focus notification for a11y from gtk to atk directory
https://bugs.webkit.org/show_bug.cgi?id=110221

Patch by Mariusz Grzegorczyk <mariusz.g@samsung.com> on 2013-02-25
Reviewed by Martin Robinson.

Share implementation between efl and gtk.
Update build with changes made.

  • GNUmakefile.list.am: Change WebCore/editing/gtk/FrameSelectionGtk.cpp to WebCore/editing/atk/FrameSelectionAtk.cpp to build.
  • PlatformEfl.cmake: Add WebCore/editing/atk to include directories, add Webcore/editing/atk/FrameSelectionAtk.cpp to build.
  • editing/FrameSelection.h: Omit notifyAccessibilityForSelectionChange() stub for EFL port.

(WebCore):

  • editing/atk/FrameSelectionAtk.cpp: Renamed from Source/WebCore/editing/gtk/FrameSelectionGtk.cpp.

(WebCore):
(WebCore::emitTextSelectionChange):
(WebCore::maybeEmitTextFocusChange):
(WebCore::FrameSelection::notifyAccessibilityForSelectionChange):

9:27 AM Changeset in webkit [143936] by hclam@chromium.org
  • 8 edits
    2 adds in trunk/Source

GIFImageReader to read from source data directly
https://bugs.webkit.org/show_bug.cgi?id=109662

Reviewed by Stephen White.

Source/WebCore:

This is the first patch to improve GIF image decoding.

GIFImageReader has an internal 256 bytes buffer to saving incoming
bytes. This mechanism is out-dated because WebKit holds the entire
file in memory and it is not necessary to hold data in an intermediate
buffer.

This is also a blocker for later work to parse and decode GIF
incrementally.

This change removed the imtermediate 'hold' buffer and uses an index
for data position to keep track of parsing of the GIF file. Buffer for
global colormap and local colormap are also removed because they can be
referenced from the data stream.

This change is tested by:

Layout tests
All tests passed under fast/images.

Unit tests
Added GIFImageDecoderTest for Chromium.

Local testing
I tested this implementation against a set of 50k GIF images and
there's no crashes and produces bit-exact results as previous code.

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

(WebCore::GIFImageDecoder::setData):
(WebCore::GIFImageDecoder::frameCount):
(WebCore::GIFImageDecoder::haveDecodedRow):
(WebCore::GIFImageDecoder::decode):

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

(GIFImageReader::doLZW):
(GIFImageReader::decode):
(GIFImageReader::decodeInternal):
(GIFImageReader::setRemainingBytes):

  • platform/image-decoders/gif/GIFImageReader.h:

(GIFFrameContext):
(GIFFrameContext::GIFFrameContext):
(GIFFrameContext::~GIFFrameContext):
(GIFImageReader::GIFImageReader):
(GIFImageReader::~GIFImageReader):
(GIFImageReader::setData):
(GIFImageReader):
(GIFImageReader::globalColormap):
(GIFImageReader::localColormap):
(GIFImageReader::localColormapSize):
(GIFImageReader::data):
(GIFImageReader::colormap):

Source/WebKit/chromium:

Added the following unit tests to test new logic in GIFImageDecoder:

GIFImageDecoderTest.decodeTwoFrames
Test that it can decode a multi-frame GIF image correctly.

GIFImageDecoderTest.parseAndDecode
First perform a parse operation and then a decode operation. Expect
that parse and decode operates correctly.

GIFImageDecoderTest.parseByteByByte
Test that multi-frame GIF image can be parsed correctly byte by byte.

GIFImageDecoderTest.parseAndDecodeByteByByte
Run a loop to feed decoder byte by byte, perform a parse and then
decode operation and make sure frames are decoded correctly.

GIFImageDecoderTest.brokenSecondFrame
Decode a GIF image with second frame broken. Expect that the first
frame can be decoded correctly.

  • WebKit.gyp:
  • WebKit.gypi:
  • tests/GIFImageDecoderTest.cpp: Added.

(WebKit):
(WebKit::readFile):
(WebKit::TEST):

  • tests/data/broken.gif: Added.
9:14 AM Changeset in webkit [143935] by abecsi@webkit.org
  • 7 edits in trunk/Source/WebKit2

[Qt][WK2] Remove unneeded method didResumeContent from PageViewportController clients
https://bugs.webkit.org/show_bug.cgi?id=110751

Reviewed by Jocelyn Turcotte.

This is a clean-up in the PageViewportController clients that removes leftover
code from previous design that is partially unused and unnecessary, to simplify
the interaction between PageViewportController and clients.

  • UIProcess/PageViewportController.cpp:

(WebKit::PageViewportController::resumeContent):

  • UIProcess/PageViewportControllerClient.h:

(PageViewportControllerClient):

  • UIProcess/efl/PageViewportControllerClientEfl.cpp:
  • UIProcess/efl/PageViewportControllerClientEfl.h:

(PageViewportControllerClientEfl):

  • UIProcess/qt/PageViewportControllerClientQt.cpp:

(WebKit::PageViewportControllerClientQt::animateContentRectVisible):
(WebKit::PageViewportControllerClientQt::flickMoveEnded):
(WebKit::PageViewportControllerClientQt::resumeAndUpdateContent):
(WebKit::PageViewportControllerClientQt::pinchGestureCancelled):

  • UIProcess/qt/PageViewportControllerClientQt.h:

(PageViewportControllerClientQt):

9:05 AM Changeset in webkit [143934] by peter@chromium.org
  • 20 edits
    2 copies in branches/chromium/1410

Merge 143356

Text Autosizing: prevent oscillation of font sizes during autosizing
https://bugs.webkit.org/show_bug.cgi?id=108205

Patch by Tim Volodine <timvolodine@chromium.org> on 2013-02-19
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

On some websites autosized font-sizes oscillate due to layouts caused by
hovering or incremental page loading (and on other sites font sizes do
eventually stabilize, but it takes many layouts before they reach a steady
size). To prevent all these cases, we no longer allow the autosizing
multiplier to change after it has been set (to a value other than 1).

This won't always give exactly the same results, but testing on 2000 top
sites shows that this makes little difference in practice, and it prevents
these very jarring cases. As a happy side-effect, this speeds up layouts
as font sizes change less.

Test: fast/text-autosizing/oscillation-javascript-fontsize-change.html

  • page/FrameView.cpp:

(WebCore::FrameView::setFrameRect):

  • page/Settings.cpp:

(WebCore::Settings::setTextAutosizingFontScaleFactor):

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizer::recalculateMultipliers):
(WebCore):
(WebCore::TextAutosizer::processContainer):

  • rendering/TextAutosizer.h:

(TextAutosizer):

LayoutTests:

Added overflow-y:hidden to some existing tests, since previously those tests
would start off with incorrect multipliers (because mainFrame->view()-layoutSize()
is initially 785 instead of 800 as ScrollView wrongly guesses a scrollbar will
be needed), and then the multipliers would get corrected on a subsequent layout.
Now that we don't allow the multiplier to change after being set, it needs to be
right first time.
Also added specific oscillation test triggered by javascript.

  • fast/text-autosizing/constrained-height-body-expected.html:
  • fast/text-autosizing/constrained-height-body.html:
  • fast/text-autosizing/constrained-then-float-ancestors-expected.html:
  • fast/text-autosizing/constrained-then-float-ancestors.html:
  • fast/text-autosizing/constrained-then-position-fixed-ancestors-expected.html:
  • fast/text-autosizing/constrained-then-position-fixed-ancestors.html:
  • fast/text-autosizing/nested-em-line-height-expected.html:
  • fast/text-autosizing/nested-em-line-height.html:
  • fast/text-autosizing/oscillation-javascript-fontsize-change-expected.html: Added.
  • fast/text-autosizing/oscillation-javascript-fontsize-change.html: Added.
  • fast/text-autosizing/simple-paragraph-expected.html:
  • fast/text-autosizing/simple-paragraph.html:
  • fast/text-autosizing/span-child-expected.html:
  • fast/text-autosizing/span-child.html:
  • fast/text-autosizing/unwrappable-blocks-expected.html:
  • fast/text-autosizing/unwrappable-blocks.html:
  • fast/text-autosizing/unwrappable-inlines-expected.html:
  • fast/text-autosizing/unwrappable-inlines.html:

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/12310107

8:59 AM Changeset in webkit [143933] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry]Adjust fatfinger detection rect size.
https://bugs.webkit.org/show_bug.cgi?id=108678

Patch by Tiancheng Jiang <tijiang@rim.com> on 2013-02-25
Reviewed by Rob Buis.

Fix a typo in function names.

  • WebKitSupport/FatFingers.cpp:

(BlackBerry::WebKit::FatFingers::getNodesFromRect):

8:56 AM Changeset in webkit [143932] by peter@chromium.org
  • 4 edits in branches/chromium/1410

Merge 143318

[Text Autosizing] Combine narrow descendants of a cluster into groups that should be autosized with the same multiplier.
https://bugs.webkit.org/show_bug.cgi?id=109825

Source/WebCore:

Enhancement of the approach introduced in https://bugs.webkit.org/show_bug.cgi?id=109573.
Instead of using the same text size multiplier for all narrow descendants of any autosizing
cluster, group the descendants by how much narrower they are than the cluster's
|blockContainingAllText| and process each group separately with a different multiplier for
each one.
For example, we want nested comments on the page to be autosized as a group but separately
from a sidebar on the same page.

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-02-19
Reviewed by Kenneth Rohde Christiansen.

Updated the existing test to verify the patch.

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizer::processClusterInternal):

Splits the narrow descendants of the autosizing cluster into groups before processing
each group individually.

(WebCore::TextAutosizer::getNarrowDescendantsGroupedByWidth):

Sorts the narrow descendants of the given cluster into groups, combining them by the
difference between their content widths. If sorted by width, two consecutive nodes
belong to the same group if their width difference is no greater than 100 CSS units.

  • rendering/TextAutosizer.h:

New method definitions.

LayoutTests:

Verify that narrow descendants are grouped and autosized separately according to the
difference between the descendant's width and the width of its enclosing cluster's
|blockContainingAllText|.

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-02-19
Reviewed by Kenneth Rohde Christiansen.

  • fast/text-autosizing/narrow-descendants-combined-expected.html:
  • fast/text-autosizing/narrow-descendants-combined.html:

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/12317102

8:56 AM Changeset in webkit [143931] by sergio@webkit.org
  • 3 edits
    3 adds in trunk

[soup] "Too many redirects" error loading chat in plus.google.com
https://bugs.webkit.org/show_bug.cgi?id=64575

Reviewed by Martin Robinson.

Source/WebCore:

Set the firstPartyForCookies for the new request on redirects to
the URL used for redirection.

Test: http/tests/cookies/set-cookie-on-redirect.html

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::doRedirect):

LayoutTests:

This new test checks firstPartyForCookies is properly set to the
new URL on redirects.

  • http/tests/cookies/resources/set-cookie-on-redirect.php: Added.
  • http/tests/cookies/set-cookie-on-redirect-expected.txt: Added.
  • http/tests/cookies/set-cookie-on-redirect.html: Added.
8:52 AM Changeset in webkit [143930] by peter@chromium.org
  • 2 edits
    2 copies in branches/chromium/1410

Merge 142866

[Text Autosizing] Process narrow descendants with the same multiplier for the font size.
https://bugs.webkit.org/show_bug.cgi?id=109573

Source/WebCore:

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-02-14
Reviewed by Julien Chaffraix.

Combine narrow descendants of the same autosizing cluster into a group that is autosized
with the same multiplier.

For example, on sites with a sidebar, sometimes the paragraphs next to the sidebar will have
a large margin individually applied (via a CSS selector), causing them all to individually
appear narrower than their enclosing blockContainingAllText. Rather than making each of
these paragraphs into a separate cluster, we want them all to share the same multiplier, as
if they were a single cluster.

Test: fast/text-autosizing/narrow-descendants-combined.html

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizer::processClusterInternal):

Common implementation for processCluster() and processCompositeCluster that accepts the
text width and whether the cluster should be autosized as parameters instead of
calculating it inline.

(WebCore::TextAutosizer::processCluster):

Calculates the text width for a single cluster and whether it should be autosized, then
calls processClusterInternal() to apply the multiplier and process the cluster's
descendants.

(WebCore::TextAutosizer::processCompositeCluster):

Calculates the text width for a group of renderers and if the group should be autosized,
then calls processClusterInternal() repeatedly with the same multiplier to apply it and
process all the descendants of the group.

(WebCore::TextAutosizer::clusterShouldBeAutosized):

Calls the multiple renderers version to avoid code duplication.

(WebCore::TextAutosizer::compositeClusterShouldBeAutosized):

The multiple renderers version of clusterShouldBeAutosized.

  • rendering/TextAutosizer.h:

Updated method declarations.

LayoutTests:

Test to verify that all narrow descendants of a cluster are autosized with the same
multiplier.

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-02-14
Reviewed by Julien Chaffraix.

  • fast/text-autosizing/narrow-descendants-combined-expected.html: Added.
  • fast/text-autosizing/narrow-descendants-combined.html: Added.

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/12326104

8:51 AM Changeset in webkit [143929] by thakis@chromium.org
  • 2 edits in trunk/Tools

Fix tests after r143910
https://bugs.webkit.org/show_bug.cgi?id=110757

Reviewed by Andreas Kling.

While here, also add a test for the bug r143910 fixed.

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

(ScriptErrorTest.test_message_with_output):
(ScriptErrorTest):
(ScriptErrorTest.test_message_with_tuple):

8:46 AM Changeset in webkit [143928] by peter@chromium.org
  • 1 edit in branches/chromium/1410/Source/WebCore/rendering/TextAutosizer.cpp

Merge 142534

[Text Autosizing] Collect narrow descendants and process them separately. Refactoring for
a change to follow.
https://bugs.webkit.org/show_bug.cgi?id=109054

Preparational change to combine narrow descendants of the same autosizing cluster into
groups by the width difference between the descendant and the block containing all text of
the parent autosizing cluster. The groups will be autosized with the same multiplier.

For example, on sites with a sidebar, sometimes the paragraphs next to the sidebar will have
a large margin individually applied (via a CSS selector), causing them all to individually
appear narrower than their enclosing blockContainingAllText. Rather than making each of
these paragraphs into a separate cluster, we eventually want to be able to merge them back
together into one (or a few) descendant clusters.

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-02-11
Reviewed by Julien Chaffraix.

No behavioral changes thus no new tests or test changes.

  • rendering/TextAutosizer.cpp:

(TextAutosizingClusterInfo): Vector of narrow descendants.
(WebCore::TextAutosizer::processCluster): Process narrow descendants separately.
(WebCore::TextAutosizer::processContainer):

Remember narrow descendants of the parent cluster for later processing.

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/12315083

8:09 AM Changeset in webkit [143927] by thakis@chromium.org
  • 2 edits in trunk/Tools

[chromium] Apparently built-product-archive is written in Python, not Perl :-/
https://bugs.webkit.org/show_bug.cgi?id=110755

Reviewed by Jochen Eisinger.

  • BuildSlaveSupport/built-product-archive:

(archiveBuiltProduct):
(extractBuiltProduct):

7:51 AM WebKitGTK/2.0.x edited by Martin Robinson
(diff)
7:50 AM WebKitGTK/2.0.x edited by Martin Robinson
(diff)
7:49 AM Changeset in webkit [143926] by akling@apple.com
  • 52 edits in trunk/Source

Reduce amount of code that includes StylePropertySet.h
<http://webkit.org/b/101149>

Reviewed by Antti Koivisto.

Source/WebCore:

StylePropertySet.h and dependents were getting included by the majority of WebKit
through either StyledElement.h or CSSStyleDeclaration.h. This change removes those includes
and moves inclusion to .cpp files instead. After this change, it's possible to hack most
of WebCore/css/ and rebuild <100 files instead of >1000.

The only real code change in here is changing CSSStyleDeclaration::cssPropertyMatches()
to take a CSSPropertyID/CSSValue* combo instead of a StylePropertySet::Reference.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::cssPropertyMatches):

  • css/CSSComputedStyleDeclaration.h:

(CSSComputedStyleDeclaration):

  • css/CSSStyleDeclaration.h:

(CSSStyleDeclaration):

  • css/PropertySetCSSStyleDeclaration.cpp:

(WebCore::PropertySetCSSStyleDeclaration::cssPropertyMatches):

  • css/PropertySetCSSStyleDeclaration.h:
  • css/SelectorChecker.h:
  • css/SelectorCheckerFastPath.cpp:
  • css/SelectorFilter.cpp:
  • css/SelectorFilter.h:
  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::propertyMatches):
(WebCore::StylePropertySet::removeEquivalentProperties):

  • css/StylePropertySet.h:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::MatchedProperties::MatchedProperties):
(WebCore::StyleResolver::MatchedProperties::~MatchedProperties):

  • css/StyleResolver.h:

(MatchedProperties):

  • css/StyleRule.cpp:
  • css/ViewportStyleResolver.cpp:

(WebCore::ViewportStyleResolver::~ViewportStyleResolver):

  • css/ViewportStyleResolver.h:

(ViewportStyleResolver):

  • css/WebKitCSSKeyframeRule.cpp:

(WebCore::StyleKeyframe::StyleKeyframe):
(WebCore::StyleKeyframe::~StyleKeyframe):

  • css/WebKitCSSKeyframeRule.h:

(StyleKeyframe):

  • dom/Attr.cpp:
  • dom/Document.cpp:
  • dom/Element.cpp:
  • dom/StyledElement.cpp:

(WebCore::StyledElement::addPropertyToPresentationAttributeStyle):

  • dom/StyledElement.h:

(StyledElement):

  • editing/FrameSelection.cpp:
  • editing/RemoveCSSPropertyCommand.cpp:

(WebCore::RemoveCSSPropertyCommand::~RemoveCSSPropertyCommand):

  • editing/RemoveCSSPropertyCommand.h:

(RemoveCSSPropertyCommand):

  • editing/RemoveFormatCommand.cpp:
  • html/HTMLBodyElement.cpp:
  • html/HTMLElement.cpp:

(WebCore::HTMLElement::addHTMLLengthToStyle):
(WebCore::HTMLElement::addHTMLColorToStyle):

  • html/HTMLElement.h:

(HTMLElement):

  • html/HTMLFontElement.cpp:
  • html/HTMLHRElement.cpp:
  • html/HTMLPreElement.cpp:
  • html/HTMLTableElement.cpp:
  • html/HTMLTablePartElement.cpp:
  • html/canvas/CanvasStyle.cpp:
  • html/shadow/MediaControlElementTypes.cpp:
  • inspector/InspectorStyleSheet.cpp:
  • page/PageSerializer.cpp:
  • rendering/RenderTableCell.cpp:
  • svg/SVGAnimateElement.cpp:
  • svg/SVGElementRareData.h:
  • svg/SVGFontFaceElement.cpp:

Source/WebKit/gtk:

  • WebCoreSupport/EditorClientGtk.cpp:

Source/WebKit/mac:

  • WebCoreSupport/WebEditorClient.mm:
  • WebView/WebFrame.mm:
  • WebView/WebView.mm:

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:
7:46 AM Changeset in webkit [143925] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip asserting tests.
https://bugs.webkit.org/show_bug.cgi?id=110756

  • platform/qt/TestExpectations:
7:42 AM Changeset in webkit [143924] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r143895.
http://trac.webkit.org/changeset/143895
https://bugs.webkit.org/show_bug.cgi?id=110758

broke a bunch of tests (Requested by thakis on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-25

  • Scripts/update-webkit-chromium:
7:22 AM Changeset in webkit [143923] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Web Inspector: Remove CPU profile from a group causes exception
https://bugs.webkit.org/show_bug.cgi?id=110466

Patch by Alexei Filippov <alph@chromium.org> on 2013-02-25
Reviewed by Yury Semikhatsky.

WebInspector.ProfilesPanel._removeProfileHandle did not handle
profile removal from a group. The fix takes care of this case.

Test: inspector/profiler/cpu-profiler-profile-removal.html

Source/WebCore:

  • inspector/front-end/ProfilesPanel.js:

(WebInspector.ProfilesPanel.prototype.addProfileHeader):
(WebInspector.ProfilesPanel.prototype._removeProfileHeader):

LayoutTests:

  • inspector/profiler/cpu-profiler-profile-removal-expected.txt: Added.
  • inspector/profiler/cpu-profiler-profile-removal.html: Added.
7:15 AM Changeset in webkit [143922] by yoli@rim.com
  • 1 edit in trunk/Tools/Scripts/webkitpy/common/config/committers.py

Unreviewed. Edit my personal info.

  • Scripts/webkitpy/common/config/committers.py:
7:10 AM Changeset in webkit [143921] by caseq@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed follow-up to r143725, reduce chances test flakes on a slow box.

  • src/js/Tests.js:

(.TestSuite.prototype.testPageOverlayUpdate.step2):

6:53 AM Changeset in webkit [143920] by mkwst@chromium.org
  • 3 edits
    1 copy
    1 move
    40 adds
    13 deletes in trunk/LayoutTests

XSSAuditor tests shouldn't depend on IFrames's load order.
https://bugs.webkit.org/show_bug.cgi?id=110737

Reviewed by Jochen Eisinger.

Various tests under http/tests/security/xssAuditor actually wrap up
multiple test cases under a single HTML file by loading a variety of
IFrames. Currently, the error messages that these tests expect aren't
detailed enough to distinguish between the order in which the IFrames
load: they all generate the same error, so the ordering is irrelevant.

Before we increase the error message detail in webkit.org/b/110733, we
need to ensure that these tests don't rely on load order. One option
is to serialize the IFrame loading by chaining onload events, but that
seems like a slow way of doing things. This patch takes a different
approach, breaking the multiple-IFrame tests into many single-IFrame
tests (which should be more shardable, and actually execute more quickly
in the long run).

  • http/tests/security/xssAuditor/open-iframe-src-expected.txt: Removed.
  • http/tests/security/xssAuditor/open-iframe-src.html: Removed.
  • http/tests/security/xssAuditor/open-script-src-expected.txt: Removed.
  • http/tests/security/xssAuditor/open-script-src.html: Removed.
  • http/tests/security/xssAuditor/property-escape-comment-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-comment.html: Removed.
  • http/tests/security/xssAuditor/property-escape-entity-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-entity.html: Removed.
  • http/tests/security/xssAuditor/property-escape-quote-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-quote.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-comma-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-comma.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated.html: Removed.

Removed these tests, breaking them into multiple single-IFrame HTML files.

  • http/tests/security/xssAuditor/open-iframe-src-01.html: Added.
  • http/tests/security/xssAuditor/open-iframe-src-02.html: Added.
  • http/tests/security/xssAuditor/open-script-src-01-expected.txt: Added.
  • http/tests/security/xssAuditor/open-script-src-01.html: Added.
  • http/tests/security/xssAuditor/open-script-src-02-expected.txt: Added.
  • http/tests/security/xssAuditor/open-script-src-02.html: Added.
  • http/tests/security/xssAuditor/open-script-src-03-expected.txt: Added.
  • http/tests/security/xssAuditor/open-script-src-03.html: Added.
  • http/tests/security/xssAuditor/open-script-src-04-expected.txt: Added.
  • http/tests/security/xssAuditor/open-script-src-04.html: Added.
  • http/tests/security/xssAuditor/property-escape-comment-01-expected.txt: Added.
  • http/tests/security/xssAuditor/property-escape-comment-01.html: Added.
  • http/tests/security/xssAuditor/property-escape-comment-02-expected.txt: Added.
  • http/tests/security/xssAuditor/property-escape-comment-02.html: Added.
  • http/tests/security/xssAuditor/property-escape-comment-03-expected.txt: Added.
  • http/tests/security/xssAuditor/property-escape-comment-03.html: Added.
  • http/tests/security/xssAuditor/property-escape-entity-01-expected.txt: Added.
  • http/tests/security/xssAuditor/property-escape-entity-01.html: Added.
  • http/tests/security/xssAuditor/property-escape-entity-02-expected.txt: Added.
  • http/tests/security/xssAuditor/property-escape-entity-02.html: Added.
  • http/tests/security/xssAuditor/property-escape-entity-03-expected.txt: Added.
  • http/tests/security/xssAuditor/property-escape-entity-03.html: Added.
  • http/tests/security/xssAuditor/property-escape-quote-01.html: Added.
  • http/tests/security/xssAuditor/property-escape-quote-02.html: Added.
  • http/tests/security/xssAuditor/property-escape-quote-03.html: Added.
  • http/tests/security/xssAuditor/script-tag-with-comma-01-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-with-comma-01.html: Added.
  • http/tests/security/xssAuditor/script-tag-with-comma-02-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-with-comma-02.html: Added.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-01-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-01.html: Added.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-02-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-02.html: Added.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-03-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-03.html: Added.
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment5.html: Added.

These tests perform the same validation as the combined tests, they
simply do it without introducing load-order dependencies.

6:38 AM Changeset in webkit [143919] by tommyw@google.com
  • 6 edits in branches/chromium/1410/Source

Merge 142773

MediaStream API: Use the source id when creating new tracks
https://bugs.webkit.org/show_bug.cgi?id=109688

Reviewed by Adam Barth.

Source/Platform:

Added id to initialize and renamed audio/videoSources to audio/videoTracks.

  • chromium/public/WebMediaStream.h:

(WebKit):
(WebMediaStream):
(WebKit::WebMediaStream::audioSources):
(WebKit::WebMediaStream::videoSources):

  • chromium/public/WebMediaStreamTrack.h:

(WebMediaStreamTrack):

Source/WebCore:

This patch reuses the ids from the source when creating tracks instead of creating a new one.
This was requested by the chromium port to greatly simplify their implementation.
In the longer run the API should be rewritten to only use tracks instead of sources.

Covered by existing tests.

  • platform/chromium/support/WebMediaStream.cpp:

(WebKit::WebMediaStream::audioTracks):
(WebKit::WebMediaStream::videoTracks):
(WebKit::WebMediaStream::initialize):
(WebKit):

  • platform/chromium/support/WebMediaStreamTrack.cpp:

(WebKit::WebMediaStreamTrack::initialize):
(WebKit):

  • platform/mediastream/MediaStreamComponent.h:

(WebCore::MediaStreamComponent::create):
(MediaStreamComponent):
(WebCore::MediaStreamComponent::MediaStreamComponent):
(WebCore):

  • platform/mediastream/MediaStreamDescriptor.h:

(WebCore::MediaStreamDescriptor::create):
(MediaStreamDescriptor):
(WebCore::MediaStreamDescriptor::MediaStreamDescriptor):

Tools:

Switching mock to new API.

  • DumpRenderTree/chromium/TestRunner/src/WebUserMediaClientMock.cpp:

(WebTestRunner::WebUserMediaClientMock::requestUserMedia):

TBR=dharani@google.com
Review URL: https://codereview.chromium.org/12326102

6:14 AM Changeset in webkit [143918] by akling@apple.com
  • 2 edits in trunk/Tools

Unreviewed, fix simple mistake in r143903.
<http://webkit.org/b/110746>

Reviewed by Andreas Kling.

Pass git revision, not svn revision, to git shell command.

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

(Git.timestamp_of_latest_commit):

6:06 AM Changeset in webkit [143917] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

[Chromium] Disable registerProtocolHandler on Android
https://bugs.webkit.org/show_bug.cgi?id=110481

Patch by Anton Vayvod <avayvod@chromium.org> on 2013-02-25
Reviewed by Julien Chaffraix.

Chromium for Android has been exposing registerProtocolHandler, but the feature wasn't
actually wired up internally. Disable the feature to avoid breaking feature detection until
we can implement it properly. Previous attempt is at http://trac.webkit.org/changeset/133465
See the discussion of the future implementation at http://crbug.com/156386

  • features.gypi: Disable the flag for Android, enable it only for non-Android platforms.
  • src/ChromeClientImpl.h: Declaration is now guarded by the flag, not to break Android.
6:06 AM Changeset in webkit [143916] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
5:59 AM Changeset in webkit [143915] by thakis@chromium.org
  • 2 edits in trunk/Tools

[chromium] Let built-product-archive log which directory it's archiving from and extracting to
https://bugs.webkit.org/show_bug.cgi?id=110748

Reviewed by Jochen Eisinger.

One of the mac testers runs DRT from out/ but WebKitUnitTests from
xcodebuild. I'm trying to understand what's going on.

  • BuildSlaveSupport/built-product-archive:

(archiveBuiltProduct):
(extractBuiltProduct):

5:50 AM Changeset in webkit [143914] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
5:37 AM Changeset in webkit [143913] by loislo@chromium.org
  • 13 edits in trunk

Web Inspector: Native Memory Instrumentation: replace String with const char* in MemoryObjectInfo
https://bugs.webkit.org/show_bug.cgi?id=110599

Reviewed by Yury Semikhatsky.

Due to potentially dynamic nature of names and classNames we need to make a copy of the strings
that were given us via MemoryInstrumentation calls.
So I extended client api with registerString method that pushes the strings
down to the serializer.

Source/WebCore:

  • css/InspectorCSSOMWrappers.h:
  • inspector/HeapGraphSerializer.cpp:

(WebCore::HeapGraphSerializer::HeapGraphSerializer):
(WebCore::HeapGraphSerializer::reportNodeImpl):
(WebCore::HeapGraphSerializer::reportEdgeImpl):
(WebCore::HeapGraphSerializer::registerString):
(WebCore::HeapGraphSerializer::registerTypeString):
(WebCore::HeapGraphSerializer::addRootNode):

  • inspector/HeapGraphSerializer.h:

(HeapGraphSerializer):

  • inspector/MemoryInstrumentationImpl.cpp:

(WebCore::MemoryInstrumentationClientImpl::registerString):
(WebCore):

  • inspector/MemoryInstrumentationImpl.h:

(MemoryInstrumentationClientImpl):

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::reportMemoryUsage):

Source/WTF:

  • wtf/MemoryInstrumentation.h:

(MemoryInstrumentationClient):

  • wtf/MemoryObjectInfo.h:

(WTF::MemoryObjectInfo::MemoryObjectInfo):
(WTF::MemoryObjectInfo::setClassName):
(WTF::MemoryObjectInfo::classNameId):
(WTF::MemoryObjectInfo::setName):
(WTF::MemoryObjectInfo::nameId):
(MemoryObjectInfo):

Tools:

  • TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:
  • TestWebKitAPI/Tests/WebCore/HeapGraphSerializerTest.cpp:

(TestWebKitAPI::Helper::Helper):
(Helper):
(TestWebKitAPI::Helper::addNode):
(TestWebKitAPI::TEST):

5:21 AM Changeset in webkit [143912] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
5:20 AM Changeset in webkit [143911] by keishi@webkit.org
  • 2 edits in trunk/Source/WebCore

Add a scrollbar class for the new calendar picker
https://bugs.webkit.org/show_bug.cgi?id=110589

Reviewed by Kent Tamura.

Adding a scrollbar to be used in the new calendar picker (Bug 109439).

No new tests. Code is not used yet.

  • Resources/pagepopups/calendarPicker.js:

(ScrubbyScrollBar):
(ScrubbyScrollBar.prototype.height):
(ScrubbyScrollBar.prototype.setHeight):
(ScrubbyScrollBar.prototype.setThumbHeight): Sets the height of the scroll bar thumb.
(ScrubbyScrollBar.prototype._setThumbPositionFromEvent): Sets the thumb position from a mouse event.
(ScrubbyScrollBar.prototype.onMouseDown):
(ScrubbyScrollBar.prototype.onWindowMouseMove):
(ScrubbyScrollBar.prototype.onWindowMouseUp):
(ScrubbyScrollBar.prototype.onThumbStyleTopAnimationStep): Animates the thumb back to the center position.
(ScrubbyScrollBar.prototype.onScrollTimer): Fires repeatedly while the thumb is being dragged.

5:16 AM Changeset in webkit [143910] by thakis@chromium.org
  • 2 edits in trunk/Tools

Make ScriptError not crash when args is a tuple
https://bugs.webkit.org/show_bug.cgi?id=110747

Reviewed by Jochen Eisinger.

I'm trying to understand the error on
http://build.webkit.org/builders/Chromium%20Win%20Release%20%28Tests%29/builds/34563/steps/layout-test/logs/stdio
better. I'll likely have to revert the ninja switch on windows, but
having error reporting code that doesn't itself crash sounds like a
good thing to have anyways.

The problem is that '%s' % (1, 2) errors out, and args is sometimes a
tuple not a list.

  • Scripts/run-chromium-webkit-unit-tests:
  • Scripts/webkitpy/common/system/executive.py:

(ScriptError.init):

5:13 AM Changeset in webkit [143909] by commit-queue@webkit.org
  • 11 edits in trunk/Source/JavaScriptCore

[BlackBerry][ARM] Fix cast-align warnings in JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=110738

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-02-25
Reviewed by Rob Buis.

Use reinterpret_cast_ptr instead of reinterpret_cast for
pointers.

  • dfg/DFGOperations.cpp:
  • heap/CopiedBlock.h:

(JSC::CopiedBlock::zeroFillWilderness):

  • heap/WeakBlock.h:

(JSC::WeakBlock::asWeakImpl):
(JSC::WeakBlock::asFreeCell):
(JSC::WeakBlock::weakImpls):

  • heap/WeakImpl.h:

(JSC::WeakImpl::asWeakImpl):

  • interpreter/JSStack.cpp:

(JSC::JSStack::disableErrorStackReserve):

  • interpreter/JSStack.h:

(JSC::JSStack::reservationEnd):

  • runtime/ArrayStorage.h:

(JSC::ArrayStorage::from):

  • runtime/Butterfly.h:

(JSC::Butterfly::indexingPayload):

  • runtime/IndexingHeader.h:

(JSC::IndexingHeader::propertyStorage):

  • runtime/JSActivation.h:

(JSC::JSActivation::tearOff):
(JSC::JSActivation::isTornOff):
(JSC::JSActivation::storage):

5:10 AM Changeset in webkit [143908] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
5:02 AM Changeset in webkit [143907] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
4:56 AM Changeset in webkit [143906] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
4:47 AM FeatureFlags edited by tkent@chromium.org
CUSTOM_ELEMENTS (diff)
4:36 AM Changeset in webkit [143905] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] Align feature defaults
https://bugs.webkit.org/show_bug.cgi?id=110715

Enable 3D_RENDERING in FeatureList.pm as it is enabled by default in
OptionsEfl.cmake.

Patch by Laszlo Gombos <Laszlo Gombos> on 2013-02-25
Reviewed by Gyuyoung Kim.

  • Scripts/webkitperl/FeatureList.pm:
4:31 AM Changeset in webkit [143904] by loislo@chromium.org
  • 3 edits in trunk/Source/WebCore

Unreviewed. Fix of closure type annotations.

  • inspector/front-end/UISourceCode.js:
  • inspector/front-end/utilities.js:
4:26 AM Changeset in webkit [143903] by rniwa@webkit.org
  • 7 edits in trunk/Tools

run-perf-tests reports wrong commit time
https://bugs.webkit.org/show_bug.cgi?id=110746

Reviewed by Andreas Kling.

The bug was caused by running "svn info" on a subdirectory, which returns a timestamp
of when the subdirectory was last modified.

Run "svn info -r <revision> <repository root>" instead. Specifying revision number is
insufficient since running "svn log -r <revision>" on a partial checkout only returns
an empty result if the revision didn't modify the subdirectory.

For git, there is no partial checkout, so we just need to pass in "-r" option to keep
the interface compatible with svn.

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

(Git.timestamp_of_latest_commit):

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

(SCM.timestamp_of_latest_commit):

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

(MockSCM.timestamp_of_latest_commit):

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

(test_timestamp_of_latest_commit):

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

(SVN.timestamp_of_latest_commit):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._generate_results_dict):

3:45 AM Changeset in webkit [143902] by eustas@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: [Network] Timeline bars and dividers are positioned in different coordinate systems.
https://bugs.webkit.org/show_bug.cgi?id=109943

Reviewed by Pavel Feldman.

Look at network log: red bar (on load) is positioned to the right of
the last required load.

This is incorrect. For exmaple, in case of short event it should be
positioned in the center of the bar.

  • inspector/front-end/DataGrid.js:

Fix - hidden columns can have non-zero width.

  • inspector/front-end/NetworkPanel.js: Use correct width for calculator.
  • inspector/front-end/networkLogView.css: Removed parasite paddinds.

Extracted common absolute "paddings".

3:31 AM Changeset in webkit [143901] by keishi@webkit.org
  • 2 edits in trunk/Source/WebCore

Add list view for new calendar picker
https://bugs.webkit.org/show_bug.cgi?id=110140

Reviewed by Kent Tamura.

Adding list view class to be used in the new calendar picker (Bug 109439).

No new tests. Code is not yet used.

  • Resources/pagepopups/calendarPicker.js:

(ListCell): One row inside the list view. We reuse
list cells to avoid animation hiccups caused by memory allocation.
(ListCell.prototype._recycleBin): Returns array to
store thrown away list cells so we can reuse them.
(ListCell.prototype.throwAway): Hides the cell and puts it in the recycle bin.
(ListCell.prototype.show):
(ListCell.prototype.hide): Hide the cell when we don't need the cell any more.
(ListCell.prototype.width):
(ListCell.prototype.setWidth):
(ListCell.prototype.position):
(ListCell.prototype.setPosition): Sets the CSS transform to position the cell.
(ListCell.prototype.setSelected): Adds selected CSS class.
(ListView): Shows a scrolling list.
(ListView.prototype.onAnimationFrameWillFinish): Calls updateCells if the cells need to be updated.
(ListView.prototype.setNeedsUpdateCells): Mark the cells as need to be updated.
(ListView.prototype.cellAtRow): Returns the cell at a given row. If the cell is not visible and doesn't exist, returns undefined.
(ListView.prototype.rowAtScrollOffset): The row that is displayed at the given scroll offset.
(ListView.prototype.scrollOffsetForRow): The scroll offset for the top of a given row.
(ListView.prototype.addCellIfNecessary): Adds the cell for a given row.
(ListView.prototype.prepareNewCell): Prepares a new or recycled cell for a given row.
(ListView.prototype.throwAwayCell): Throws a way a cell.
(ListView.prototype.firstVisibleRow): The first visible row at the top of the view.
(ListView.prototype.lastVisibleRow): The last visible row at the bottom of the view.
(ListView.prototype.scrollViewDidChangeContentOffset):
(ListView.prototype.scrollViewDidChangeHeight):
(ListView.prototype.scrollViewDidChangePartition):
(ListView.prototype.updateCells): Updates all the cells that are visible.
(ListView.prototype.width):
(ListView.prototype.setWidth):
(ListView.prototype.height):
(ListView.prototype.setHeight):
(ListView.prototype.onClick): Clicking on a row selects it.
(ListView.prototype.select):
(ListView.prototype.deselect):
(ListView.prototype.scrollToRow): Scrolls to a given row.

2:53 AM Changeset in webkit [143900] by commit-queue@webkit.org
  • 15 edits in trunk

Web Inspector: move profile type specific code out of ProfilesPanel (refactor)
https://bugs.webkit.org/show_bug.cgi?id=110597

Patch by Alexei Filippov <alph@chromium.org> on 2013-02-25
Reviewed by Yury Semikhatsky.

Move profile type specific functionality out of ProfilesPanel class.
This is a first part of WebInspector.ProfilesPanel refactoring.

No new tests as the functionality isn't changed.

Source/WebCore:

  • English.lproj/localizedStrings.js:
  • inspector/front-end/CPUProfileView.js:

(WebInspector.CPUProfileType):
(WebInspector.CPUProfileType.prototype.addProfileHeader):
(WebInspector.CPUProfileType.prototype.removeProfile):
(WebInspector.CPUProfileType.prototype._requestProfilesFromBackend):
(WebInspector.CPUProfileType.prototype.resetProfiles):
(WebInspector.CPUProfileType.prototype.addHeapSnapshotChunk):
(WebInspector.CPUProfileType.prototype.finishHeapSnapshot):
(WebInspector.CPUProfileType.prototype.reportHeapSnapshotProgress):

  • inspector/front-end/CSSSelectorProfileView.js:

(WebInspector.CSSSelectorProfileType.prototype.buttonClicked):
(WebInspector.CSSSelectorProfileType.prototype._startRecordingProfile):
(WebInspector.CSSSelectorProfileType.prototype._stopRecordingProfile):

  • inspector/front-end/CanvasProfileView.js:

(WebInspector.CanvasProfileType.prototype.buttonClicked):
(WebInspector.CanvasProfileType.prototype._runSingleFrameCapturing):
(WebInspector.CanvasProfileType.prototype._startFrameCapturing):
(WebInspector.CanvasProfileType.prototype._didStartCapturingFrame):
(WebInspector.CanvasProfileType.prototype._reset):
(WebInspector.CanvasProfileType.prototype.removeProfile):
(WebInspector.CanvasProfileHeader.prototype.dispose):

  • inspector/front-end/HeapSnapshotView.js:

(WebInspector.HeapSnapshotView.prototype._profiles):
(WebInspector.HeapSnapshotProfileType):
(WebInspector.HeapSnapshotProfileType.prototype.buttonClicked):
(WebInspector.HeapSnapshotProfileType.prototype.addProfileHeader):
(WebInspector.HeapSnapshotProfileType.prototype.addHeapSnapshotChunk):
(WebInspector.HeapSnapshotProfileType.prototype.finishHeapSnapshot):
(WebInspector.HeapSnapshotProfileType.prototype.reportHeapSnapshotProgress):
(WebInspector.HeapSnapshotProfileType.prototype.resetProfiles):
(WebInspector.HeapSnapshotProfileType.prototype.removeProfile):
(WebInspector.HeapSnapshotProfileType.prototype._requestProfilesFromBackend):
(WebInspector.HeapProfileHeader.prototype._updateTransferProgress):

  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.NativeSnapshotProfileType):
(WebInspector.NativeSnapshotProfileType.prototype.addNativeSnapshotChunk):

  • inspector/front-end/ProfilesPanel.js:

(WebInspector.ProfileType):
(WebInspector.ProfileType.prototype.buttonClicked):
(WebInspector.ProfileType.prototype.get description):
(WebInspector.ProfileType.prototype.getProfiles):
(WebInspector.ProfileType.prototype.getProfile):
(WebInspector.ProfileType.prototype._makeKey):
(WebInspector.ProfileType.prototype.addProfile):
(WebInspector.ProfileType.prototype.removeProfile):
(WebInspector.ProfileType.prototype.findTemporaryProfile):
(WebInspector.ProfileType.prototype._reset):
(WebInspector.ProfileType.prototype._requestProfilesFromBackend):
(WebInspector.ProfileHeader):
(WebInspector.ProfileHeader.prototype.dispose):
(WebInspector.ProfilesPanel):
(WebInspector.ProfilesPanel.prototype._loadFromFile):
(WebInspector.ProfilesPanel.prototype.toggleRecordButton):
(WebInspector.ProfilesPanel.prototype._populateAllProfiles):
(WebInspector.ProfilesPanel.prototype.wasShown):
(WebInspector.ProfilesPanel.prototype._profilerWasEnabled):
(WebInspector.ProfilesPanel.prototype._reset):
(WebInspector.ProfilesPanel.prototype._registerProfileType.onAddProfileHeader):
(WebInspector.ProfilesPanel.prototype._registerProfileType.onRemoveProfileHeader):
(WebInspector.ProfilesPanel.prototype._registerProfileType.onProgressUpdated):
(WebInspector.ProfilesPanel.prototype._registerProfileType):
(WebInspector.ProfilesPanel.prototype._addProfileHeader):
(WebInspector.ProfilesPanel.prototype._removeProfileHeader):
(WebInspector.ProfilesPanel.prototype._createTemporaryProfile):
(WebInspector.ProfilesPanel.prototype._removeTemporaryProfile):
(WebInspector.ProfilesPanel.prototype.getProfile):
(WebInspector.ProfilesPanel.prototype.showProfile):
(WebInspector.ProfilesPanel.prototype._getAllProfiles):
(WebInspector.ProfilesPanel.prototype._searchableViews):
(WebInspector.ProfilesPanel.prototype.searchCanceled):
(WebInspector.ProfilesPanel.prototype.setRecordingProfile):
(WebInspector.ProfilesPanel.prototype._reportProfileProgress):

LayoutTests:

  • inspector/profiler/canvas2d/canvas-replay-log-grid.html:
  • inspector/profiler/heap-snapshot-inspect-dom-wrapper-expected.txt:
  • inspector/profiler/heap-snapshot-inspect-dom-wrapper.html:
  • inspector/profiler/heap-snapshot-loader.html:
  • inspector/profiler/heap-snapshot-test.js:

(initialize_HeapSnapshotTest.):
(initialize_HeapSnapshotTest):

  • inspector/profiler/profiler-test.js:

(initialize_ProfilerTest.InspectorTest.startProfilerTest.startTest):
(initialize_ProfilerTest.InspectorTest.startProfilerTest):

2:40 AM Changeset in webkit [143899] by kadam@inf.u-szeged.hu
  • 4 edits
    4 deletes in trunk/LayoutTests

[Qt] Unreviewed gardening. Skipped failing tests.

  • platform/qt-5.0-wk2/fast/forms/select-baseline-expected.png: Removed.
  • platform/qt-5.0-wk2/fast/forms/select-baseline-expected.txt: Removed.
  • platform/qt-5.0/fast/forms/select-baseline-expected.png: Removed.
  • platform/qt-5.0/fast/forms/select-baseline-expected.txt: Removed.
  • platform/qt/TestExpectations:
  • platform/qt/fast/forms/select-baseline-expected.png: Update after r143836.
  • platform/qt/fast/forms/select-baseline-expected.txt: Update after r143836.
2:33 AM Changeset in webkit [143898] by jochen@chromium.org
  • 3 edits in trunk/Tools

[chromium] move WebRuntimeFeatures configuration to TestRunner library
https://bugs.webkit.org/show_bug.cgi?id=110712

Reviewed by Nico Weber.

  • DumpRenderTree/chromium/TestRunner/src/TestInterfaces.cpp:

(WebTestRunner::TestInterfaces::TestInterfaces):

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):

2:04 AM Changeset in webkit [143897] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
1:56 AM Changeset in webkit [143896] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskip tests after r143800.

  • platform/qt/TestExpectations:
1:48 AM Changeset in webkit [143895] by thakis@chromium.org
  • 2 edits in trunk/Tools

Make ninja the default build system for build-webkit --chromium on windows
https://bugs.webkit.org/show_bug.cgi?id=110731

Reviewed by Jochen Eisinger.

With http://crbug.com/169945 fixed, this should now work.

  • Scripts/update-webkit-chromium:
1:48 AM Changeset in webkit [143894] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed fix of type annotation for this._liveLocations.

  • inspector/front-end/UISourceCode.js:

(WebInspector.UISourceCode):

1:42 AM Changeset in webkit [143893] by tkent@chromium.org
  • 6 edits in trunk/Source/WebCore

Fix style errors in WebCore/editing/{htmlediting,markup,visible_units}.*
https://bugs.webkit.org/show_bug.cgi?id=110721

Reviewed by Ryosuke Niwa.

No new tests. This should not make any bahevior changes.

  • editing/htmlediting.cpp:

(WebCore::lowestEditableAncestor):
(WebCore):
(WebCore::isSpecialElement):
(WebCore::enclosingListChild):
(WebCore::canMergeLists):
(WebCore::tabSpanNode):
(WebCore::isNodeRendered):
(WebCore::caretMaxOffset):

  • editing/htmlediting.h:

(WebCore):

  • editing/markup.cpp:

(WebCore::StyledMarkupAccumulator::appendElement):

  • editing/markup.h:

(WebCore):

  • editing/visible_units.cpp:

(WebCore::previousRootInlineBoxCandidatePosition):
(WebCore::nextRootInlineBoxCandidatePosition):
(WebCore::wordBreakIteratorForMinOffsetBoundary):
(WebCore::previousBoundary):
(WebCore::endOfLine):
(WebCore::previousLinePosition):
(WebCore::nextLinePosition):
(WebCore::nextSentencePositionBoundary):
(WebCore::startOfParagraph):
(WebCore::endOfParagraph):

1:41 AM Changeset in webkit [143892] by zandobersek@gmail.com
  • 3 edits
    2 deletes in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Giving up on individually listing slow sputnik tests, replaced all

the expectations with a single one covering the whole directory in both release and debug builds.
Also removing duplicate expectations and adding an expectation for tests that require custom elements support.

  • platform/gtk/editing/selection/extend-by-sentence-001-expected.txt: Rebaselining.
  • platform/gtk/media/audio-controls-rendering-expected.png: Removed. Requires a new baseline.
  • platform/gtk/media/audio-controls-rendering-expected.txt: Removed. Ditto.
1:29 AM Changeset in webkit [143891] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/TestExpectations:
1:11 AM Changeset in webkit [143890] by keishi@webkit.org
  • 6 edits
    3 copies in branches/chromium/1410

Merge 142572

REGRESSION (r140778):Calendar Picker buttons are wrong when rtl
https://bugs.webkit.org/show_bug.cgi?id=109158

Reviewed by Kent Tamura.

Source/WebCore:

The calendar picker button's icon and position where wrong when rtl.

Test: platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-ar.html

  • Resources/pagepopups/calendarPicker.css:

(.year-month-button-left .year-month-button): Use -webkit-margin-end so the margin is applide to the right side.
(.year-month-button-right .year-month-button): Use -webkit-margin-start so the margin is applide to the right side.
(.today-clear-area .today-button): Use -webkit-margin-end so the margin is applide to the right side.

  • Resources/pagepopups/calendarPicker.js:

(YearMonthController.prototype._attachLeftButtonsTo): Flip icon image when rtl.
(YearMonthController.prototype._attachRightButtonsTo): Ditto.

LayoutTests:

  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-ar-expected.png: Added.
  • platform/chromium-mac/platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-required-ar-expected.png:
  • platform/chromium/TestExpectations:
  • platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-ar-expected.txt: Added.
  • platform/chromium/fast/forms/calendar-picker/calendar-picker-appearance-ar.html: Added.

TBR=keishi@webkit.org

1:10 AM Changeset in webkit [143889] by loislo@chromium.org
  • 7 edits in trunk

Web Inspector: Improve speed of Linkifier.reset operation.
https://bugs.webkit.org/show_bug.cgi?id=110696

Reviewed by Yury Semikhatsky.

Linkifier calls Location.dispose N times and each dispose method calls Array.remove
which scans entire array and does splice. So the complexity of Linkifier.reset
is O(N2). I replaced the arrays with Set and got O(N) complexity.

Drive by fix: The identifier generator was slightly changed.
Now it produces identifiers that couldn't be converted into a number.
So the engine will never convert Set/Map object into an array.

Source/WebCore:

  • inspector/front-end/Script.js:

(WebInspector.Script):
(WebInspector.Script.prototype.updateLocations):
(WebInspector.Script.prototype.createLiveLocation):

  • inspector/front-end/UISourceCode.js:

(WebInspector.UISourceCode):
(WebInspector.UISourceCode.prototype.addLiveLocation):
(WebInspector.UISourceCode.prototype.updateLiveLocations):

  • inspector/front-end/utilities.js:

LayoutTests:

  • inspector/debugger/callstack-placards-discarded.html:
  • inspector/debugger/linkifier.html:
12:49 AM WebKitGTK/2.0.x edited by sergio@webkit.org
(diff)
12:09 AM Changeset in webkit [143888] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] ChromeClientBlackBerry: fix variable names
https://bugs.webkit.org/show_bug.cgi?id=110562

Patch by Alberto Garcia <albgarcia@rim.com> on 2013-02-25
Reviewed by Rob Buis.

manager was incorrectly renamed back to tracker in r138696:
http://trac.webkit.org/changeset/138696/trunk/Source/WebKit/blackberry/WebCoreSupport/ChromeClientBlackBerry.cpp

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::exceededDatabaseQuota):

Note: See TracTimeline for information about the timeline view.