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

Timeline



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:
Note: See TracTimeline for information about the timeline view.