Timeline



Oct 23, 2015:

10:53 PM Changeset in webkit [191533] by Chris Dumez
  • 13 edits in trunk

RadioNodeList should be exposed on Window
https://bugs.webkit.org/show_bug.cgi?id=148869
<rdar://problem/22589828>

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

Rebaseline existing W3C tests now that more checks are passing.

  • web-platform-tests/html/dom/interfaces-expected.txt:
  • web-platform-tests/html/semantics/forms/the-form-element/form-elements-nameditem-01-expected.txt:

Source/WebCore:

RadioNodeList should be exposed on on the global Window object, as per
the HTML specification:
https://html.spec.whatwg.org/multipage/infrastructure.html#radionodelist

This patch addresses the issue, and aligns our behavior with Firefox
and Chrome.

No new tests, already covered by existing tests.

  • html/RadioNodeList.idl:

LayoutTests:

Rebaseline existing layout test now that RadioNodeList is exposed on the
global Window object.

  • js/dom/global-constructors-attributes-expected.txt:
  • platform/efl/js/dom/global-constructors-attributes-expected.txt:
  • platform/gtk/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac/js/dom/global-constructors-attributes-expected.txt:
  • platform/win/js/dom/global-constructors-attributes-expected.txt:
8:58 PM Changeset in webkit [191532] by commit-queue@webkit.org
  • 15 edits in trunk/Source

Web Inspector: Remove unused ScrollLayer Timeline EventType
https://bugs.webkit.org/show_bug.cgi?id=150518

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-10-23
Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

  • inspector/protocol/Timeline.json:

Source/WebCore:

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::willScrollLayerImpl): Deleted.
(WebCore::InspectorInstrumentation::didScrollLayerImpl): Deleted.

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::willScrollLayer): Deleted.
(WebCore::InspectorInstrumentation::didScrollLayer): Deleted.

  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::willScroll): Deleted.
(WebCore::InspectorTimelineAgent::didScroll): Deleted.

  • inspector/InspectorTimelineAgent.h:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::scrollTo): Deleted.

Source/WebInspectorUI:

  • UserInterface/Protocol/Legacy/7.0/InspectorBackendCommands.js:
  • UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js:
  • UserInterface/Protocol/Legacy/9.0/InspectorBackendCommands.js:
  • Versions/Inspector-iOS-7.0.json:
  • Versions/Inspector-iOS-8.0.json:
  • Versions/Inspector-iOS-9.0.json:
8:56 PM Changeset in webkit [191531] by commit-queue@webkit.org
  • 24 edits
    1 delete in trunk/Source

Web Inspector: Clean up InspectorInstrumentation includes
https://bugs.webkit.org/show_bug.cgi?id=150523

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-10-23
Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

  • inspector/agents/InspectorConsoleAgent.cpp:

(Inspector::InspectorConsoleAgent::consoleMessageArgumentCounts): Deleted.

  • inspector/agents/InspectorConsoleAgent.h:

Source/WebCore:

  • Modules/webdatabase/DatabaseManager.cpp:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • css/MediaQueryEvaluator.cpp:
  • dom/EventDispatcher.cpp:
  • dom/ExtensionStyleSheets.cpp:
  • inspector/InspectorController.h:
  • inspector/InspectorDOMDebuggerAgent.cpp:
  • inspector/InspectorDatabaseInstrumentation.h: Removed.
  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::didOpenDatabase):

  • inspector/InspectorPageAgent.cpp:
  • inspector/InspectorTimelineAgent.cpp:

(WebCore::toProtocol): Deleted.

  • loader/ResourceLoadScheduler.cpp:
  • loader/mac/ResourceLoaderMac.mm:
  • page/Screen.cpp:
  • rendering/TextAutosizer.cpp:
  • testing/Internals.cpp:

(WebCore::Internals::consoleMessageArgumentCounts): Deleted.

  • testing/Internals.h:
  • testing/Internals.idl:
  • workers/AbstractWorker.cpp:
6:45 PM Changeset in webkit [191530] by msaboff@apple.com
  • 16 edits
    3 adds in trunk

REGRESSION (r179357-r179359): WebContent Crash using AOL Mail @ com.apple.JavascriptCore JSC::linkPolymorphicCall(JSC::ExecState*, JSC::CallLinkInfo&, JSC::CallVariant, JSC::RegisterPreservationMode) + 1584
https://bugs.webkit.org/show_bug.cgi?id=150513

Reviewed by Saam Barati.

Source/JavaScriptCore:

Add check in linkPolymorphicCall() to make sure we have a CodeBlock for the newly added variant.
If not, we turn the call into a virtual call.

The bug was caused by a stack overflow when preparing the function for execution. This properly
threw an exception, however linkPolymorphicCall() didn't check for this error case.

Added a new test function "failNextNewCodeBlock()" to test tools to simplify the testing.

  • API/JSCTestRunnerUtils.cpp:

(JSC::failNextNewCodeBlock):
(JSC::numberOfDFGCompiles):

  • API/JSCTestRunnerUtils.h:
  • jit/Repatch.cpp:

(JSC::linkPolymorphicCall):

  • jsc.cpp:

(GlobalObject::finishCreation):
(functionTransferArrayBuffer):
(functionFailNextNewCodeBlock):
(functionQuit):

  • runtime/Executable.cpp:

(JSC::ScriptExecutable::prepareForExecutionImpl):

  • runtime/TestRunnerUtils.cpp:

(JSC::optimizeNextInvocation):
(JSC::failNextNewCodeBlock):
(JSC::numberOfDFGCompiles):

  • runtime/TestRunnerUtils.h:
  • runtime/VM.h:

(JSC::VM::setFailNextNewCodeBlock):
(JSC::VM::getAndClearFailNextNewCodeBlock):
(JSC::VM::stackPointerAtVMEntry):

Tools:

Added a new test function, failNextNewCodeBlock() to simplify the writing of a regression test.

  • DumpRenderTree/TestRunner.cpp:

(simulateWebNotificationClickCallback):
(failNextCodeBlock):
(numberOfDFGCompiles):
(TestRunner::staticFunctions):

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::setBlockAllPlugins):
(WTR::TestRunner::failNextCodeBlock):
(WTR::TestRunner::numberOfDFGCompiles):

  • WebKitTestRunner/InjectedBundle/TestRunner.h:

LayoutTests:

New regression test.

  • js/regress-150513-expected.txt: Added.
  • js/regress-150513.html: Added.
  • js/script-tests/regress-150513.js: Added.

(test):

  • resources/standalone-pre.js: Added failNextNewCodeBlock to testRunner object.
6:26 PM Changeset in webkit [191529] by commit-queue@webkit.org
  • 24 edits
    10 deletes in trunk/Source/JavaScriptCore

Unreviewed, rolling out r191500.
https://bugs.webkit.org/show_bug.cgi?id=150526

Broke two JSC regression tests (Requested by msaboff on
#webkit).

Reverted changeset:

"[ES6] Add DFG/FTL support for accessor put operations"
https://bugs.webkit.org/show_bug.cgi?id=148860
http://trac.webkit.org/changeset/191500

6:11 PM Changeset in webkit [191528] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fix CMake compile error and add correct null check
https://bugs.webkit.org/show_bug.cgi?id=150520

Patch by Alex Christensen <achristensen@webkit.org> on 2015-10-23
Reviewed by Simon Fraser.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _doAfterNextPresentationUpdate:]):

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

Removing [ Release ] flag from flaky imported blink tests that are timing out in debug too
https://bugs.webkit.org/show_bug.cgi?id=150050

Patch by Ryan Haddad <Ryan Haddad> on 2015-10-23
Reviewed by Tim Horton.

  • platform/mac-wk1/TestExpectations:
5:57 PM Changeset in webkit [191526] by matthew_hanson@apple.com
  • 5 edits in branches/safari-601.1.46-branch/Source

Versioning

5:52 PM Changeset in webkit [191525] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Avoid SVG-induced layouts inside Element::absoluteEventBounds()
https://bugs.webkit.org/show_bug.cgi?id=150516

Reviewed by Zalan Bujtas.

Speculative fix for a crash under RenderObject::localToContainerQuad() when
computing the wheel event handler region, which uses Element::absoluteEventHandlerBounds().
Element::absoluteEventBounds() was calling SVGElement::getBoundingBox() in a way
that could trigger a layout.

  • dom/Element.cpp:

(WebCore::Element::absoluteEventBounds):

5:46 PM Changeset in webkit [191524] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Remove unnecessary details from Other Crashes section
https://bugs.webkit.org/show_bug.cgi?id=150514
<rdar://problem/23235458>

Patch by Aakash Jain <aakash_jain@apple.com> on 2015-10-23
Reviewed by Alexey Proskuryakov.

  • fast/harness/results.html: Create separate other-crash-tests-table.
5:44 PM Changeset in webkit [191523] by matthew_hanson@apple.com
  • 1 copy in tags/Safari-601.3.6

New Tag.

5:43 PM Changeset in webkit [191522] by matthew_hanson@apple.com
  • 1 copy in tags/Safari-601.1.46.43

New Tag.

5:42 PM Changeset in webkit [191521] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Marking more http/tests/xmlhttprequest/timeout/ tests as flaky, removing Yosemite-only flag
https://bugs.webkit.org/show_bug.cgi?id=150378

Patch by Ryan Haddad <Ryan Haddad> on 2015-10-23
Reviewed by Alexey Proskuryakov.

  • platform/mac-wk2/TestExpectations:
5:26 PM Changeset in webkit [191520] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit/mac

Invoke the context menu delegate callback right before we return the menu
https://bugs.webkit.org/show_bug.cgi?id=150521

Reviewed by Tim Horton.

Move the getCustomMenuFromDefaultItems to WebHTMLView wholesale. This will allow us to get rid of the ContextMenuClient function from WebCore.

  • WebCoreSupport/WebContextMenuClient.mm:

(WebContextMenuClient::getCustomMenuFromDefaultItems):
(isPreVersion3Client): Deleted.
(isPreInspectElementTagClient): Deleted.
(fixMenusToSendToOldClients): Deleted.
(fixMenusReceivedFromOldClients): Deleted.

  • WebView/WebHTMLView.mm:

(isPreVersion3Client):
(isPreInspectElementTagClient):
(fixMenusToSendToOldClients):
(fixMenusReceivedFromOldClients):
(customMenuFromDefaultItems):
(-[WebHTMLView menuForEvent:]):

5:24 PM Changeset in webkit [191519] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebInspectorUI

Web Inspector: xlink:href should be linkified
https://bugs.webkit.org/show_bug.cgi?id=150505

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-10-23
Reviewed by Timothy Hatcher.

  • UserInterface/Base/Main.js:

When opening a URL with a fragment, prefer opening a resource
that has the same URL without the fragment, otherwise this would
open in a new tab.

  • UserInterface/Base/URLUtilities.js:

(absoluteURL):
Better handling absoluteURL("#frag", baseURL).

  • UserInterface/Views/CodeMirrorAdditions.js:
  • UserInterface/Views/DOMTreeElement.js:

(WebInspector.DOMTreeElement.prototype._buildAttributeDOM):
Allow for more "href" style attributes, such as XML namespaced
"xlink:href" attribute names.

4:55 PM Changeset in webkit [191518] by achristensen@apple.com
  • 9 edits
    2 deletes in trunk/Source

Progress towards CMake on Mac
https://bugs.webkit.org/show_bug.cgi?id=150517

Reviewed by Tim Horton.

Source/WebCore:

  • PlatformMac.cmake:

Source/WebKit:

  • PlatformMac.cmake:

Source/WebKit2:

  • CMakeLists.txt:
  • PlatformEfl.cmake:
  • PlatformGTK.cmake:
  • PlatformMac.cmake:
  • WebProcess/Cookies/cf/WebCookieManagerCFNet.cpp: Removed.
  • WebProcess/Cookies/curl/WebCookieManagerCurl.cpp: Removed.
4:47 PM Changeset in webkit [191517] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit/mac

More context menu simplification
https://bugs.webkit.org/show_bug.cgi?id=150519

Reviewed by Tim Horton.

There's no need to convert the menu items back to ContextMenuItems just so we can check whether its
represented object is the sharing service picker. Also, move the check to the second loop.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView menuForEvent:]):

4:07 PM Changeset in webkit [191516] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Updating test expectation for animations/fill-forwards-end-state.html
https://bugs.webkit.org/show_bug.cgi?id=150328#c11

Patch by Ryan Haddad <Ryan Haddad> on 2015-10-23
Reviewed by Alexey Proskuryakov.

  • animations/fill-forwards-end-state-expected.txt:
4:03 PM Changeset in webkit [191515] by matthew_hanson@apple.com
  • 6 edits in branches/safari-601-branch

Rollout r191395. rdar://problem/22847057

3:45 PM Changeset in webkit [191514] by matthew_hanson@apple.com
  • 6 edits in branches/safari-601.1.46-branch

Rollout r191395. rdar://problem/22846455

3:32 PM Changeset in webkit [191513] by matthew_hanson@apple.com
  • 5 edits in branches/safari-601-branch/Source

Merge r191484.

2:34 PM Changeset in webkit [191512] by andersca@apple.com
  • 4 edits in trunk

Simplify the WebKitLegacy menu conversion code
https://bugs.webkit.org/show_bug.cgi?id=150509

Reviewed by Andreas Kling.

Source/WebKit/mac:

  • WebCoreSupport/WebContextMenuClient.mm:

(fixMenusToSendToOldClients):
(fixMenusReceivedFromOldClients):
(WebContextMenuClient::getCustomMenuFromDefaultItems):

Tools:

Implement the context menu delegate method so we'll test that code path.

  • MiniBrowser/mac/WK1BrowserWindowController.m:

(-[WK1BrowserWindowController webView:contextMenuItemsForElement:defaultMenuItems:]):

2:25 PM Changeset in webkit [191511] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174

  • UIProcess/Cocoa/WebViewImpl.h:

Whoops.

2:03 PM Changeset in webkit [191510] by timothy_horton@apple.com
  • 6 edits in trunk/Source/WebKit2

WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKView.mm:

(-[WKView hitTest:]):
(-[WKView _processDidExit]):
(-[WKView _setThumbnailView:]):
(-[WKView _thumbnailView]):
(-[WKFlippedView isFlipped]): Deleted.
(-[WKView dealloc]): Deleted.
(-[WKView _setAcceleratedCompositingModeRootLayer:]): Deleted.
(-[WKView _acceleratedCompositingModeRootLayer]): Deleted.
(-[WKView _updateThumbnailViewLayer]): Deleted.
(-[WKView _reparentLayerTreeInThumbnailView]): Deleted.

  • UIProcess/API/mac/WKViewInternal.h:
  • UIProcess/Cocoa/WebViewImpl.h:

(WebKit::WebViewImpl::acceleratedCompositingRootLayer):
(WebKit::WebViewImpl::layerHostingView):
(WebKit::WebViewImpl::thumbnailView):

  • UIProcess/Cocoa/WebViewImpl.mm:

(-[WKFlippedView isFlipped]):
(WebKit::WebViewImpl::~WebViewImpl):
(WebKit::WebViewImpl::setAcceleratedCompositingRootLayer):
(WebKit::WebViewImpl::setThumbnailView):
(WebKit::WebViewImpl::reparentLayerTreeInThumbnailView):
(WebKit::WebViewImpl::updateThumbnailViewLayer):

  • UIProcess/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::enterAcceleratedCompositingMode):
(WebKit::PageClientImpl::exitAcceleratedCompositingMode):
(WebKit::PageClientImpl::updateAcceleratedCompositingMode):
(WebKit::PageClientImpl::setAcceleratedCompositingRootLayer):
(WebKit::PageClientImpl::acceleratedCompositingRootLayer):
Move accelerated compositing and thumbnail view code.

1:50 PM Changeset in webkit [191509] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebKit2

WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _superRemoveTrackingRect:]):
(-[WKView addTrackingRect:owner:userData:assumeInside:]):
(-[WKView _addTrackingRect:owner:userData:assumeInside:useTrackingNum:]):
(-[WKView _addTrackingRects:owner:userDataList:assumeInsideList:trackingNums:count:]):
(-[WKView removeTrackingRect:]):
(-[WKView _removeTrackingRects:count:]):
(-[WKView view:stringForToolTip:point:userData:]):
(-[WKView _toolTipChangedFrom:to:]):
(-[WKView _setAcceleratedCompositingModeRootLayer:]): Deleted.
(-[WKView _acceleratedCompositingModeRootLayer]): Deleted.
(takeWindowSnapshot): Deleted.

  • UIProcess/Cocoa/WebViewImpl.h:
  • UIProcess/Cocoa/WebViewImpl.mm:

(WebKit::WebViewImpl::addTrackingRect):
(WebKit::WebViewImpl::addTrackingRectWithTrackingNum):
(WebKit::WebViewImpl::addTrackingRectsWithTrackingNums):
(WebKit::WebViewImpl::removeTrackingRect):
(WebKit::WebViewImpl::removeTrackingRects):
(WebKit::WebViewImpl::sendToolTipMouseExited):
(WebKit::WebViewImpl::sendToolTipMouseEntered):
(WebKit::WebViewImpl::stringForToolTip):
(WebKit::WebViewImpl::toolTipChanged):
Move tooltip code.

1:49 PM Changeset in webkit [191508] by timothy_horton@apple.com
  • 6 edits in trunk/Source/WebKit2

WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKView.mm:

(-[WKView _interpretKeyEvent:completionHandler:]):
(-[WKView inputContext]):
(-[WKView performKeyEquivalent:]):
(-[WKView keyDown:]):
(-[WKView _doneWithKeyEvent:eventWasHandled:]):
(-[WKView _setPluginComplexTextInputState:]): Deleted.
(-[WKView _disableComplexTextInputIfNecessary]): Deleted.
(-[WKView _handlePluginComplexTextInputKeyDown:]): Deleted.
(-[WKView _tryHandlePluginComplexTextInputKeyDown:]): Deleted.
(-[WKView _tryPostProcessPluginComplexTextInputKeyDown:]): Deleted.
(-[WKView _pluginFocusOrWindowFocusChanged:pluginComplexTextInputIdentifier:]): Deleted.
(-[WKView _setPluginComplexTextInputState:pluginComplexTextInputIdentifier:]): Deleted.

  • UIProcess/API/mac/WKViewInternal.h:
  • UIProcess/Cocoa/WebViewImpl.h:

(WebKit::WebViewImpl::pluginComplexTextInputState):
(WebKit::WebViewImpl::pluginComplexTextInputIdentifier):

  • UIProcess/Cocoa/WebViewImpl.mm:

(WebKit::WebViewImpl::setPluginComplexTextInputState):
(WebKit::WebViewImpl::setPluginComplexTextInputStateAndIdentifier):
(WebKit::WebViewImpl::disableComplexTextInputIfNecessary):
(WebKit::WebViewImpl::handlePluginComplexTextInputKeyDown):
(WebKit::WebViewImpl::tryHandlePluginComplexTextInputKeyDown):
(WebKit::WebViewImpl::pluginFocusOrWindowFocusChanged):
(WebKit::WebViewImpl::tryPostProcessPluginComplexTextInputKeyDown):

  • UIProcess/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::pluginFocusOrWindowFocusChanged):
(WebKit::PageClientImpl::setPluginComplexTextInputState):
Move a few more methods.

1:21 PM Changeset in webkit [191507] by peavo@outlook.com
  • 4 edits in trunk

[WinCairo] Improve test results for fast layouttests.
https://bugs.webkit.org/show_bug.cgi?id=150464

Reviewed by Alex Christensen.

Source/WebCore:

Disable the Mac ascent hack for WinCairo.

  • platform/graphics/win/SimpleFontDataCairoWin.cpp:

(WebCore::Font::platformInit):

Tools:

Set custom device scale factor to 1.0.

  • DumpRenderTree/win/DumpRenderTree.cpp:

(createWebViewAndOffscreenWindow):

12:19 PM Changeset in webkit [191506] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Don't override already existing represented objects on menu items
https://bugs.webkit.org/show_bug.cgi?id=150508

Reviewed by Tim Horton.

This fixes a crash/exception when a client implements webView:contextMenuItemsForElement:defaultMenuItems: and
the default menu has a share menu item.

  • WebCoreSupport/WebContextMenuClient.mm:

(WebContextMenuClient::getCustomMenuFromDefaultItems):

12:06 PM Changeset in webkit [191505] by commit-queue@webkit.org
  • 1 edit
    3 adds in trunk/LayoutTests

[Content Extensions] Add test for hiding content on <a ping> pings
https://bugs.webkit.org/show_bug.cgi?id=150499

Patch by Roopesh Chander <roop@roopc.net> on 2015-10-23
Reviewed by Alex Christensen.

Test for ensuring that <a ping> pings are subject to
'css-display-none' content blocking rules.

  • http/tests/contentextensions/hide-on-ping-expected.txt: Added.
  • http/tests/contentextensions/hide-on-ping.html: Added.
  • http/tests/contentextensions/hide-on-ping.html.json: Added.
12:01 PM Changeset in webkit [191504] by eric.carlson@apple.com
  • 3 edits in trunk/Source/WebKit2

[MediaStream] Fix UserMediaPermissionRequestProxy::invalidate
https://bugs.webkit.org/show_bug.cgi?id=150503
<rdar://problem/23235386>

Reviewed by Dean Jackson.

  • UIProcess/UserMediaPermissionRequestProxy.cpp:

(WebKit::UserMediaPermissionRequestProxy::UserMediaPermissionRequestProxy): m_manager is a pointer.
(WebKit::UserMediaPermissionRequestProxy::allow): Return early if m_manager is null, clear it after

calling the manager.

(WebKit::UserMediaPermissionRequestProxy::deny): Ditto.
(WebKit::UserMediaPermissionRequestProxy::invalidate): Clear m_manager.

  • UIProcess/UserMediaPermissionRequestProxy.h: Change m_manager from a reference to a pointer so it can be cleared.
11:41 AM Changeset in webkit [191503] by Claudio Saavedra
  • 3 edits in trunk/Source/WebKit2

[GTK] Minor web editor fixes
https://bugs.webkit.org/show_bug.cgi?id=150501

Reviewed by Carlos Garcia Campos.

  • UIProcess/gtk/KeyBindingTranslator.cpp: Remove

"MoveParagraphForward/Backward" as these commands do not exist in
WebKit (anymore?).

  • WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:

(WebKit::WebEditorClient::executePendingEditorCommands):
Editor::Command can take a String, no need to convert to a C char.

11:29 AM Changeset in webkit [191502] by Simon Fraser
  • 4 edits
    2 adds in trunk

REGRESSION (r187121): Multiple-keyframe animations not honouring ' forwards' fill-mode
https://bugs.webkit.org/show_bug.cgi?id=150328

Reviewed by Dean Jackson.

Source/WebCore:

AnimationBase::getElapsedTime() for a finished animation would return 1 (a progress),
rather than a time value as the caller expects. Fix it to return the total duration
if the animation has finished. This fixes the bug.

Change CompositeAnimation::pauseAnimationAtTime() to be more permissive, allowing
testing of filling-forwards animations with the pause API.

Test: animations/fill-forwards-end-state.html

  • page/animation/AnimationBase.cpp:

(WebCore::AnimationBase::getElapsedTime):

  • page/animation/CompositeAnimation.cpp:

(WebCore::CompositeAnimation::pauseAnimationAtTime):

LayoutTests:

Filling-forwards test with an animation whose duration is greater than one second,
which showed the bug.

  • animations/fill-forwards-end-state-expected.txt: Added.
  • animations/fill-forwards-end-state.html: Added.
11:07 AM Changeset in webkit [191501] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix the build by unapplying review comments.

  • UIProcess/Cocoa/WebViewImpl.h:
11:05 AM Changeset in webkit [191500] by Yusuke Suzuki
  • 24 edits
    10 adds in trunk/Source/JavaScriptCore

[ES6] Add DFG/FTL support for accessor put operations
https://bugs.webkit.org/show_bug.cgi?id=148860

Reviewed by Geoffrey Garen.

This patch introduces accessor defining ops into DFG and FTL.
The following DFG nodes are introduced.

op_put_getter_by_id => PutGetterById
op_put_setter_by_id => PutSetterById
op_put_getter_setter => PutGetterSetterById
op_put_getter_by_val => PutGetterByVal
op_put_setter_by_val => PutSetterByVal

These DFG nodes just call operations. But it does not prevent compiling in DFG/FTL.

To use operations defined for baseline JIT, we clean up existing operations.
And reuse these operations in DFG and FTL.

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::capabilityLevel):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC):

  • dfg/DFGFixupPhase.cpp:

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

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasIdentifier):
(JSC::DFG::Node::hasAccessorAttributes):
(JSC::DFG::Node::accessorAttributes):

  • dfg/DFGNodeType.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compilePutAccessorById):
(JSC::DFG::SpeculativeJIT::compilePutGetterSetterById):
(JSC::DFG::SpeculativeJIT::compilePutAccessorByVal):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callOperation):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLIntrinsicRepository.h:
  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileNode):
(JSC::FTL::DFG::LowerDFGToLLVM::compilePutAccessorById):
(JSC::FTL::DFG::LowerDFGToLLVM::compilePutGetterSetterById):
(JSC::FTL::DFG::LowerDFGToLLVM::compilePutAccessorByVal):

  • jit/JIT.h:
  • jit/JITInlines.h:

(JSC::JIT::callOperation):

  • jit/JITOperations.cpp:
  • jit/JITOperations.h:
  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_put_getter_by_id):
(JSC::JIT::emit_op_put_setter_by_id):
(JSC::JIT::emit_op_put_getter_setter):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_put_getter_by_id):
(JSC::JIT::emit_op_put_setter_by_id):
(JSC::JIT::emit_op_put_getter_setter):

  • tests/stress/dfg-put-accessors-by-id-class.js: Added.

(shouldBe):
(testAttribute):
(getter.Cocoa.prototype.get hello):
(getter.Cocoa):
(getter):
(setter.Cocoa):
(setter.Cocoa.prototype.set hello):
(setter):
(accessors.Cocoa):
(accessors.Cocoa.prototype.get hello):
(accessors.Cocoa.prototype.set hello):
(accessors):

  • tests/stress/dfg-put-accessors-by-id.js: Added.

(shouldBe):
(testAttribute):
(getter.object.get hello):
(getter):
(setter.object.set hello):
(setter):
(accessors.object.get hello):
(accessors.object.set hello):
(accessors):

  • tests/stress/dfg-put-getter-by-id-class.js: Added.

(shouldBe):
(testAttribute):
(getter.Cocoa):
(getter.Cocoa.prototype.get hello):
(getter.Cocoa.prototype.get name):
(getter):

  • tests/stress/dfg-put-getter-by-id.js: Added.

(shouldBe):
(testAttribute):
(getter.object.get hello):
(getter):

  • tests/stress/dfg-put-getter-by-val-class.js: Added.

(shouldBe):
(testAttribute):
(getter.Cocoa):
(getter.Cocoa.prototype.get name):
(getter):

  • tests/stress/dfg-put-getter-by-val.js: Added.

(shouldBe):
(testAttribute):
(getter.object.get name):
(getter):

  • tests/stress/dfg-put-setter-by-id-class.js: Added.

(shouldBe):
(testAttribute):
(getter.Cocoa):
(getter.Cocoa.prototype.set hello):
(getter.Cocoa.prototype.get name):
(getter):

  • tests/stress/dfg-put-setter-by-id.js: Added.

(shouldBe):
(testAttribute):
(setter.object.set hello):
(setter):

  • tests/stress/dfg-put-setter-by-val-class.js: Added.

(shouldBe):
(testAttribute):
(setter.Cocoa):
(setter.Cocoa.prototype.set name):
(setter):

  • tests/stress/dfg-put-setter-by-val.js: Added.

(shouldBe):
(testAttribute):
(setter.object.set name):
(setter):

10:57 AM Changeset in webkit [191499] by timothy_horton@apple.com
  • 9 edits in trunk/Source/WebKit2

WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKView.mm:

(-[WKView renewGState]):
(-[WKView writeSelectionToPasteboard:types:]):
(-[WKView centerSelectionInVisibleArea:]):
(-[WKView scrollWheel:]):
(-[WKView swipeWithEvent:]):
(-[WKView mouseMoved:]):
(-[WKView mouseDown:]):
(-[WKView mouseUp:]):
(-[WKView mouseDragged:]):
(-[WKView pressureChangeWithEvent:]):
(-[WKView acceptsFirstMouse:]):
(-[WKView shouldDelayWindowOrderingForEvent:]):
(-[WKView performKeyEquivalent:]):
(-[WKView keyUp:]):
(-[WKView keyDown:]):
(-[WKView flagsChanged:]):
(-[WKView _superQuickLookWithEvent:]):
(-[WKView _addFontPanelObserver]):
(-[WKView viewWillMoveToWindow:]):
(-[WKView viewDidMoveToWindow]):
(-[WKView viewDidChangeBackingProperties]):
(-[WKView enableAccessibilityIfNecessary]):
(-[WKView quickLookWithEvent:]):
(-[WKView _colorSpace]):
(-[WKView _didRelaunchProcess]):
(-[WKView _setTextIndicator:]):
(-[WKView _setTextIndicator:withLifetime:]):
(-[WKView _clearTextIndicatorWithAnimation:]):
(-[WKView _setTextIndicatorAnimationProgress:]):
(-[WKView initWithFrame:processPool:configuration:webView:]):
(-[WKView _didPerformImmediateActionHitTest:contentPreventsDefault:userData:]):
(-[WKView _internalImmediateActionAnimationControllerForHitTestResult:withType:userData:]):
(-[WKView _internalPrepareForImmediateActionAnimation]):
(-[WKView _internalCancelImmediateActionAnimation]):
(-[WKView _internalCompleteImmediateActionAnimation]):
(-[WKView _internalDismissContentRelativeChildWindowsWithAnimation:]):
(-[WKView beginDeferringViewInWindowChanges]):
(-[WKView endDeferringViewInWindowChanges]):
(-[WKView endDeferringViewInWindowChangesSync]):
(-[WKView _prepareForMoveToWindow:withCompletionHandler:]):
(-[WKView isDeferringViewInWindowChanges]):
(-[WKView allowsLinkPreview]):
(-[WKView setAllowsLinkPreview:]):
(-[WKView _setIgnoresAllEvents:]):
(-[WKView _setIgnoresNonWheelMouseEvents:]):
(-[WKView _setIgnoresNonWheelEvents:]):
(-[WKView _ignoresNonWheelEvents]):
(-[WKView _ignoresAllEvents]):
(-[WKView _setOverrideDeviceScaleFactor:]):
(-[WKView _overrideDeviceScaleFactor]):
(-[WKView _setTopContentInset:]):
(-[WKView _topContentInset]):
(-[WKView _dismissContentRelativeChildWindows]):
(-[WKView _dismissContentRelativeChildWindowsWithAnimation:]):
(-[WKView _setAutomaticallyAdjustsContentInsets:]):
(-[WKView _automaticallyAdjustsContentInsets]):
(-[WKWindowVisibilityObserver initWithView:]): Deleted.
(-[WKWindowVisibilityObserver startObserving:]): Deleted.
(-[WKWindowVisibilityObserver stopObserving:]): Deleted.
(-[WKWindowVisibilityObserver _windowDidOrderOnScreen:]): Deleted.
(-[WKWindowVisibilityObserver _windowDidOrderOffScreen:]): Deleted.
(-[WKView dealloc]): Deleted.
(-[WKView _updateWindowAndViewFrames]): Deleted.
(-[WKView updateFontPanelIfNeeded]): Deleted.
(-[WKView _selectionChanged]): Deleted.
(-[WKView addWindowObserversForWindow:]): Deleted.
(-[WKView removeWindowObservers]): Deleted.
(-[WKView doWindowDidChangeScreen]): Deleted.
(-[WKView _windowDidBecomeKey:]): Deleted.
(-[WKView _windowDidChangeScreen:]): Deleted.
(-[WKView _windowDidChangeLayerHosting:]): Deleted.
(-[WKView _windowDidResignKey:]): Deleted.
(-[WKView _windowDidMiniaturize:]): Deleted.
(-[WKView _windowDidDeminiaturize:]): Deleted.
(-[WKView _windowDidMove:]): Deleted.
(-[WKView _windowDidResize:]): Deleted.
(-[WKView _windowDidOrderOffScreen:]): Deleted.
(-[WKView _windowDidOrderOnScreen:]): Deleted.
(-[WKView _windowDidChangeBackingProperties:]): Deleted.
(-[WKView _windowDidChangeOcclusionState:]): Deleted.
(-[WKView _prepareForDictionaryLookup]): Deleted.
(-[WKView _dictionaryLookupPopoverWillClose:]): Deleted.
(-[WKView _accessibilityRegisterUIProcessTokens]): Deleted.
(-[WKView _postFakeMouseMovedEventForFlagsChangedEvent:]): Deleted.
(-[WKView _intrinsicDeviceScaleFactor]): Deleted.
(-[WKView _preferencesDidChange]): Deleted.
(-[WKView _targetWindowForMovePreparation]): Deleted.
(-[WKView _updateContentInsetsIfAutomatic]): Deleted.
(-[WKView observeValueForKeyPath:ofObject:change:context:]): Deleted.
(-[WKView _dispatchSetTopContentInset]): Deleted.

  • UIProcess/API/mac/WKViewInternal.h:
  • UIProcess/Cocoa/WebViewImpl.h:

(WebKit::WebViewImpl::automaticallyAdjustsContentInsets):
(WebKit::WebViewImpl::topContentInset):
(WebKit::WebViewImpl::overrideDeviceScaleFactor):
(WebKit::WebViewImpl::isDeferringViewInWindowChanges):
(WebKit::WebViewImpl::targetWindowForMovePreparation):
(WebKit::WebViewImpl::lastPressureEvent):
(WebKit::WebViewImpl::allowsLinkPreview):
(WebKit::WebViewImpl::ignoresNonWheelEvents):
(WebKit::WebViewImpl::ignoresAllEvents):
(WebKit::WebViewImpl::createWeakPtr):

  • UIProcess/Cocoa/WebViewImpl.mm:

(SOFT_LINK_CONSTANT_MAY_FAIL):
(-[WKWindowVisibilityObserver initWithView:impl:]):
(-[WKWindowVisibilityObserver dealloc]):
(-[WKWindowVisibilityObserver startObserving:]):
(-[WKWindowVisibilityObserver stopObserving:]):
(-[WKWindowVisibilityObserver startObservingFontPanel]):
(-[WKWindowVisibilityObserver startObservingLookupDismissal]):
(-[WKWindowVisibilityObserver _windowDidOrderOnScreen:]):
(-[WKWindowVisibilityObserver _windowDidOrderOffScreen:]):
(-[WKWindowVisibilityObserver _windowDidBecomeKey:]):
(-[WKWindowVisibilityObserver _windowDidResignKey:]):
(-[WKWindowVisibilityObserver _windowDidMiniaturize:]):
(-[WKWindowVisibilityObserver _windowDidDeminiaturize:]):
(-[WKWindowVisibilityObserver _windowDidMove:]):
(-[WKWindowVisibilityObserver _windowDidResize:]):
(-[WKWindowVisibilityObserver _windowDidChangeBackingProperties:]):
(-[WKWindowVisibilityObserver _windowDidChangeScreen:]):
(-[WKWindowVisibilityObserver _windowDidChangeLayerHosting:]):
(-[WKWindowVisibilityObserver _windowDidChangeOcclusionState:]):
(-[WKWindowVisibilityObserver observeValueForKeyPath:ofObject:change:context:]):
(-[WKWindowVisibilityObserver _dictionaryLookupPopoverWillClose:]):
(-[WKEditCommandObjC initWithWebEditCommandProxy:]):
(-[WKEditCommandObjC command]):
(-[WKEditorUndoTargetObjC undoEditing:]):
(-[WKEditorUndoTargetObjC redoEditing:]):
(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::~WebViewImpl):
(WebKit::WebViewImpl::becomeFirstResponder):
(WebKit::WebViewImpl::resignFirstResponder):
(WebKit::WebViewImpl::renewGState):
(WebKit::WebViewImpl::updateWindowAndViewFrames):
(WebKit::WebViewImpl::setAutomaticallyAdjustsContentInsets):
(WebKit::WebViewImpl::updateContentInsetsIfAutomatic):
(WebKit::WebViewImpl::setTopContentInset):
(WebKit::WebViewImpl::dispatchSetTopContentInset):
(WebKit::WebViewImpl::setOverrideDeviceScaleFactor):
(WebKit::WebViewImpl::intrinsicDeviceScaleFactor):
(WebKit::WebViewImpl::windowDidOrderOffScreen):
(WebKit::WebViewImpl::windowDidOrderOnScreen):
(WebKit::WebViewImpl::windowDidBecomeKey):
(WebKit::WebViewImpl::windowDidResignKey):
(WebKit::WebViewImpl::windowDidMiniaturize):
(WebKit::WebViewImpl::windowDidDeminiaturize):
(WebKit::WebViewImpl::windowDidMove):
(WebKit::WebViewImpl::windowDidResize):
(WebKit::WebViewImpl::windowDidChangeBackingProperties):
(WebKit::WebViewImpl::windowDidChangeScreen):
(WebKit::WebViewImpl::windowDidChangeLayerHosting):
(WebKit::WebViewImpl::windowDidChangeOcclusionState):
(WebKit::WebViewImpl::viewWillMoveToWindow):
(WebKit::WebViewImpl::viewDidMoveToWindow):
(WebKit::WebViewImpl::viewDidChangeBackingProperties):
(WebKit::WebViewImpl::postFakeMouseMovedEventForFlagsChangedEvent):
(WebKit::WebViewImpl::colorSpace):
(WebKit::WebViewImpl::beginDeferringViewInWindowChanges):
(WebKit::WebViewImpl::endDeferringViewInWindowChanges):
(WebKit::WebViewImpl::endDeferringViewInWindowChangesSync):
(WebKit::WebViewImpl::prepareForMoveToWindow):
(WebKit::WebViewImpl::pressureChangeWithEvent):
(WebKit::WebViewImpl::isEditable):
(WebKit::WebViewImpl::executeEditCommand):
(WebKit::WebViewImpl::registerEditCommand):
(WebKit::WebViewImpl::clearAllEditCommands):
(WebKit::WebViewImpl::writeSelectionToPasteboard):
(WebKit::WebViewImpl::centerSelectionInVisibleArea):
(WebKit::WebViewImpl::selectionDidChange):
(WebKit::WebViewImpl::startObservingFontPanel):
(WebKit::WebViewImpl::updateFontPanelIfNeeded):
(WebKit::WebViewImpl::preferencesDidChange):
(WebKit::WebViewImpl::setTextIndicator):
(WebKit::WebViewImpl::clearTextIndicatorWithAnimation):
(WebKit::WebViewImpl::setTextIndicatorAnimationProgress):
(WebKit::WebViewImpl::dismissContentRelativeChildWindows):
(WebKit::WebViewImpl::quickLookWithEvent):
(WebKit::WebViewImpl::prepareForDictionaryLookup):
(WebKit::WebViewImpl::setAllowsLinkPreview):
(WebKit::WebViewImpl::immediateActionAnimationControllerForHitTestResult):
(WebKit::WebViewImpl::prepareForImmediateActionAnimation):
(WebKit::WebViewImpl::cancelImmediateActionAnimation):
(WebKit::WebViewImpl::completeImmediateActionAnimation):
(WebKit::WebViewImpl::setIgnoresNonWheelEvents):
(WebKit::WebViewImpl::setIgnoresAllEvents):
(WebKit::WebViewImpl::accessibilityRegisterUIProcessTokens):

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

(WebKit::PageClientImpl::activeWindow):
(WebKit::PageClientImpl::preferencesDidChange):
(WebKit::PageClientImpl::registerEditCommand):
(WebKit::PageClientImpl::clearAllEditCommands):
(WebKit::PageClientImpl::selectionDidChange):
(WebKit::PageClientImpl::didPerformDictionaryLookup):
(-[WKEditCommandObjC initWithWebEditCommandProxy:]): Deleted.
(-[WKEditCommandObjC command]): Deleted.
(-[WKEditorUndoTargetObjC undoEditing:]): Deleted.
(-[WKEditorUndoTargetObjC redoEditing:]): Deleted.
(WebKit::PageClientImpl::PageClientImpl): Deleted.
Move more things to WebViewImpl.
This also introduces an unfortunate pattern that is required for things which
clients override on WKView, where we have a flow like this:

  • somebody (PageClient, etc.) calls WebViewImpl::x
  • WebViewImpl::x does nothing except call [WKView _x]
  • [WKView _x] calls WebViewImpl::xFromViewOnly, which does the real work

As long as no clients call the -FromViewOnly variant, this will mean that
all callers are bottlenecked through the overridable WKView method.
How this works with WKWebView, I am not sure yet.

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

(-[WKImmediateActionController initWithPage:view:viewImpl:recognizer:]):
(-[WKImmediateActionController willDestroyView:]):
(-[WKImmediateActionController immediateActionRecognizerWillPrepare:]):
(-[WKImmediateActionController immediateActionRecognizerDidCancelAnimation:]):
(-[WKImmediateActionController immediateActionRecognizerDidCompleteAnimation:]):
(-[WKImmediateActionController menuItem:viewAtScreenPoint:]):
(-[WKImmediateActionController menuItem:previewItemAtPoint:]):
(-[WKImmediateActionController menuItem:itemFrameForPoint:]):
(-[WKImmediateActionController menuItem:maxSizeForPoint:]):
(-[WKImmediateActionController _animationControllerForDataDetectedText]):
(-[WKImmediateActionController _animationControllerForDataDetectedLink]):
(-[WKImmediateActionController _animationControllerForText]):
(-[WKImmediateActionController initWithPage:view:recognizer:]): Deleted.
Keep a generic NSView, use the WebViewImpl for WK*View related things.

10:55 AM Changeset in webkit [191498] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] update-webkitgtk-libs should use mesa tarball

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

update-webkitgtk-libs downloads all build dependencies; in fixing
bug 148941 mesa was switched from ftp to git access. Now an http
tarball is available, which is preferred over accessing via git.

Patch by Mark Salisbury <mark.salisbury@hp.com> on 2015-10-23
Reviewed by Philippe Normand

  • gtk/jhbuild.modules:

Mesa access changed to http tarball.

10:47 AM Changeset in webkit [191497] by Chris Dumez
  • 4 edits in trunk

A label element not in a document should not label an element in a document
https://bugs.webkit.org/show_bug.cgi?id=148863
<rdar://problem/22589300>

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

Rebaseline W3C HTML test now that one more check is passing.

  • web-platform-tests/html/semantics/forms/the-label-element/label-attributes-expected.txt:

Source/WebCore:

As per the HTML specification, a label element's 'for' attribute may be
specified to indicate a form control with which the caption is to be
associated. If the attribute is specified, the attribute's value must
be the ID of a labelable element in the same Document as the label
element:
https://html.spec.whatwg.org/multipage/forms.html#attr-label-for

However, our code was failing to check if the label element was actually
in the document before calling document.getElementById(). In such case,
we would potentially return a labelable Element that is not in the same
document as the label Element. This patch fixes the problem.

The new behavior is consistent with Firefox.

No new tests, already covered by existing test.

  • html/HTMLLabelElement.cpp:

(WebCore::HTMLLabelElement::control):

10:11 AM Changeset in webkit [191496] by Nikita Vasilyev
  • 4 edits in trunk/Source/WebInspectorUI

Web Inspector: Command-Enter in Debugger should show a popover with evaluation result
https://bugs.webkit.org/show_bug.cgi?id=149195

Currenty, the only way to display the popover is to hover over the text with a mouse cursor.
Provide a way to display it via a keyboard shortcut.

Reviewed by Timothy Hatcher.

  • UserInterface/Controllers/CodeMirrorCompletionController.js:

(WebInspector.CodeMirrorCompletionController): Deleted.
(WebInspector.CodeMirrorCompletionController.prototype._generateJavaScriptCompletions): Deleted.
Don't evaluate selected text from Debugger or Sources in the console.

  • UserInterface/Controllers/CodeMirrorTokenTrackingController.js:

(WebInspector.CodeMirrorTokenTrackingController):
(WebInspector.CodeMirrorTokenTrackingController.prototype._handleCommandEnterKey):
(WebInspector.CodeMirrorTokenTrackingController.prototype._hidePopover):
Cmd-Enter triggers the popover, Esc hides it.

(WebInspector.CodeMirrorTokenTrackingController.prototype.set mode):
(WebInspector.CodeMirrorTokenTrackingController.prototype.removeHighlightedRange):
Don't use delete.

(WebInspector.CodeMirrorTokenTrackingController.prototype._mouseMovedWithMarkedText):
When a token isn't hovered, hide it only when it was triggered not by the keyboard.

(WebInspector.CodeMirrorTokenTrackingController.prototype._markedTextIsNoLongerHovered):
Don't use delete.

(WebInspector.CodeMirrorTokenTrackingController.prototype._updateHoveredTokenInfo):
(WebInspector.CodeMirrorTokenTrackingController.prototype._getTokenInfoForPosition):
Abstract out a no side effects _getTokenInfoForPosition method, which is also used by _handleCommandEnterKey.

(WebInspector.CodeMirrorTokenTrackingController.prototype._mouseMovedOutOfEditor):
(WebInspector.CodeMirrorTokenTrackingController.prototype._mouseButtonWasReleasedOverEditor):
Don't use delete.

(WebInspector.CodeMirrorTokenTrackingController.prototype._processNewHoveredToken):
(WebInspector.CodeMirrorTokenTrackingController.prototype._processNonSymbolToken):
(WebInspector.CodeMirrorTokenTrackingController.prototype._processJavaScriptExpression):
Pass tokenInfo as an argument to explicitly state that these methods require it.

(WebInspector.CodeMirrorTokenTrackingController.prototype._resetTrackingStates):
Don't use delete.

  • UserInterface/Views/SourceCodeTextEditor.js:

(WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerHighlightedRangeReleased):
Allow to hide the popover regardless of mouse position. Used when the text cursor moves or
when Esc key is pressed.

7:07 AM Changeset in webkit [191495] by matthew_hanson@apple.com
  • 10 edits in branches/safari-601.1.46-branch

Merge r191487. rdar://problem/22811325

1:39 AM Changeset in webkit [191494] by commit-queue@webkit.org
  • 11 edits
    6 adds in trunk

Support for SVG beginEvent event and onbegin attribute
https://bugs.webkit.org/show_bug.cgi?id=150442

Patch by Antoine Quint <Antoine Quint> on 2015-10-23
Reviewed by Dean Jackson.

Source/WebCore:

Add support for the SVG beginEvent event, which is fired as an SVG timing element enters its active interval.
Also add support for the SVG onbegin attribute which allows the definition of a JS event listener declaratively
for the SVG beginEvent event.

Tests: svg/animations/begin-event-attribute.svg

svg/animations/begin-event-script.svg
svg/animations/begin-event-syncbase.svg

  • dom/EventNames.h:
  • svg/animation/SVGSMILElement.cpp:

(WebCore::smilBeginEventSender):
(WebCore::smilEndEventSender):
(WebCore::SVGSMILElement::~SVGSMILElement):
(WebCore::SVGSMILElement::parseAttribute):
(WebCore::SVGSMILElement::progress):
(WebCore::SVGSMILElement::dispatchPendingEvent):

  • svg/svgattrs.in:

LayoutTests:

  • svg/animations/begin-event-attribute-expected.svg: Added.
  • svg/animations/begin-event-attribute.svg: Added.

Test for the newly supported onbegin attribute.

  • svg/animations/begin-event-script-expected.svg: Added.
  • svg/animations/begin-event-script.svg: Added.

Test for the newly supported beginEvent event handled via addEventListener().

  • svg/animations/begin-event-syncbase-expected.svg: Added.
  • svg/animations/begin-event-syncbase.svg: Added.

Test for the newly supported beginEvent event used as a syncbase value in a
timing attribute.

  • svg/animations/end-event-attribute-expected.svg:
  • svg/animations/end-event-attribute.svg:
  • svg/animations/end-event-script-expected.svg:
  • svg/animations/end-event-script.svg:
  • svg/animations/end-event-syncbase-expected.svg:
  • svg/animations/end-event-syncbase.svg:

Cleaned up tests previously added to remove unnecessary XLink namespace, DOCTYPE and
processing instruction to match new tests.

1:36 AM WebKitW3CTesting edited by youenn.fablet@crf.canon.fr
(diff)
1:10 AM Changeset in webkit [191493] by commit-queue@webkit.org
  • 13 edits in trunk/Source/WebInspectorUI

Web Inspector: Visual sidebar should support multiple backgrounds
https://bugs.webkit.org/show_bug.cgi?id=148310

Patch by Devin Rousso <Devin Rousso> on 2015-10-23
Reviewed by Timothy Hatcher.

Changes the layout of the Background - Style section in the Visual sidebar
to be a list instead of a single editable field for a background-image URL.
Allows for comma-separated background properties (both shorthand and
longhand) and displays them all in a single list for editing.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Views/VisualStyleColorPicker.js:

(WebInspector.VisualStyleColorPicker):

  • UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.css:

(.visual-style-property-container.comma-separated-keyword-editor):

  • UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.js:

(WebInspector.VisualStyleCommaSeparatedKeywordEditor):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._generateTextFromLonghandProperties.propertyValue):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype._generateTextFromLonghandProperties):
(WebInspector.VisualStyleCommaSeparatedKeywordEditor.prototype.modifyPropertyText):
Comma separated properties will now try to assemble a value from related longhand
properties so that a single shorthand property with commas may be used.

  • UserInterface/Views/VisualStyleDetailsPanel.css:

(.sidebar > .panel.details.css-style .visual > .details-section.background .details-section.background-style .visual-style-property-container.comma-separated-keyword-editor.background):

  • UserInterface/Views/VisualStyleDetailsPanel.js:

(WebInspector.VisualStyleDetailsPanel.prototype._populateBackgroundStyleSection):
(WebInspector.VisualStyleDetailsPanel.prototype._populateBoxShadowSection):
(WebInspector.VisualStyleDetailsPanel.prototype._populateTransitionSection):
(WebInspector.VisualStyleDetailsPanel.prototype._noRemainingCommaSeparatedEditorItems):
(WebInspector.VisualStyleDetailsPanel.prototype._selectedCommaSeparatedEditorItemValueChanged):
(WebInspector.VisualStyleDetailsPanel.prototype._commaSeparatedEditorTreeItemSelected):
(WebInspector.VisualStyleDetailsPanel.prototype._populateBoxShadowSection.noRemainingTreeItems): Deleted.
(WebInspector.VisualStyleDetailsPanel.prototype._populateBoxShadowSection.selectedBoxShadowItemValueChanged): Deleted.
(WebInspector.VisualStyleDetailsPanel.prototype._populateBoxShadowSection.boxShadowItemSelected): Deleted.
(WebInspector.VisualStyleDetailsPanel.prototype._populateTransitionSection.noRemainingTreeItems): Deleted.
(WebInspector.VisualStyleDetailsPanel.prototype._populateTransitionSection.selectedtransitionItemValueChanged): Deleted.
(WebInspector.VisualStyleDetailsPanel.prototype._populateTransitionSection.transitionItemSelected): Deleted.
Made the "background-image" property into a comma separated editor.

  • UserInterface/Views/VisualStyleFontFamilyListEditor.js:

(WebInspector.VisualStyleFontFamilyListEditor):

  • UserInterface/Views/VisualStyleKeywordIconList.js:

(WebInspector.VisualStyleKeywordIconList.prototype.set value):
(WebInspector.VisualStyleKeywordIconList.prototype._handleKeywordChanged):
(WebInspector.VisualStyleKeywordIconList):

  • UserInterface/Views/VisualStyleKeywordPicker.js:

(WebInspector.VisualStyleKeywordPicker.prototype.updateEditorValues):
(WebInspector.VisualStyleKeywordPicker.prototype._setValue):

  • UserInterface/Views/VisualStyleNumberInputBox.js:

(WebInspector.VisualStyleNumberInputBox.prototype.set value):

  • UserInterface/Views/VisualStylePropertyCombiner.js:

(WebInspector.VisualStylePropertyCombiner):
(WebInspector.VisualStylePropertyCombiner.prototype.updateValuesFromText.updateCompatibleEditor):
(WebInspector.VisualStylePropertyCombiner.prototype.updateValuesFromText):

  • UserInterface/Views/VisualStylePropertyEditor.js:

(WebInspector.VisualStylePropertyEditor):
(WebInspector.VisualStylePropertyEditor.prototype.update):
(WebInspector.VisualStylePropertyEditor.prototype.getValuesFromText):
(WebInspector.VisualStylePropertyEditor.prototype.get propertyMissing):
(WebInspector.VisualStylePropertyEditor.prototype._valueDidChange):
Moved "propertyMissing" into a member variable for better access.

  • UserInterface/Views/VisualStyleURLInput.js:

(WebInspector.VisualStyleURLInput):
(WebInspector.VisualStyleURLInput.prototype.get synthesizedValue):
(WebInspector.VisualStyleURLInput.prototype.parseValue):
Added support for specific keywords to be used in the input field.

12:37 AM Changeset in webkit [191492] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

Source/WebCore:
ConvolverNode.buffer must have same sample-rate as the AudioContext
https://bugs.webkit.org/show_bug.cgi?id=150385

Patch by Hyemi Shin <hyemi.sin@samsung.com> on 2015-10-23
Reviewed by Chris Dumez.

ConvolverNode.buffer must be of the same sample-rate as the AudioContext
or an NOT_SUPPORTED_ERR exception MUST be thrown.

Test : webaudio/convolver-setBuffer-different-samplerate.html

  • Modules/webaudio/ConvolverNode.cpp:

(WebCore::ConvolverNode::setBuffer):

  • Modules/webaudio/ConvolverNode.h:
  • Modules/webaudio/ConvolverNode.idl:

LayoutTests:
ConvolverNode.buffer must have same sample rate as the AudioContext
https://bugs.webkit.org/show_bug.cgi?id=150385

Patch by Hyemi Shin <hyemi.sin@samsung.com> on 2015-10-23
Reviewed by Chris Dumez.

  • webaudio/convolver-setBuffer-different-samplerate-expected.txt: Added.
  • webaudio/convolver-setBuffer-different-samplerate.html: Added.

Oct 22, 2015:

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

[GTK] Fix build break since r191471
https://bugs.webkit.org/show_bug.cgi?id=150487

Patch by Joonghun Park <jh718.park@samsung.com> on 2015-10-22
Reviewed by Žan Doberšek.

  • UIProcess/API/gtk/WebKitContextMenuClient.cpp:
  • UIProcess/gtk/WebContextMenuProxyGtk.cpp:

(WebKit::WebContextMenuProxyGtk::populate):

9:21 PM Changeset in webkit [191490] by Gyuyoung Kim
  • 2 edits in trunk/Source/WebKit2

[EFL] Build break since r191472 and r191473
https://bugs.webkit.org/show_bug.cgi?id=150485

Unreviewed build fix.

  • CMakeLists.txt: Remove icu include path and move page include path.
7:53 PM Changeset in webkit [191489] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

[OS X] Migrate GraphicsContext::drawLineForDocumentMarker() away from LocalCurrentGraphicsContext
https://bugs.webkit.org/show_bug.cgi?id=150483

Reviewed by Simon Fraser.

LocalCurrentGraphicsContext is an ugly hack to work around the problem that many NS* functions
operate on the current context rather than a context passed as an argument. This patch
migrates from NSRectFillUsingOperation() which has this behavior to CGContextDrawTiledImage()
which performs the same operation but with a passed-in CGContextRef. An added benefit is that
we don't have to mess around with pattern-based NSColors.

No new tests because there is no behavior change.

  • platform/graphics/mac/GraphicsContextMac.mm:

(WebCore::findImage):
(WebCore::GraphicsContext::updateDocumentMarkerResources):
(WebCore::GraphicsContext::drawLineForDocumentMarker):
(WebCore::makePatternColor): Deleted.

6:10 PM Changeset in webkit [191488] by timothy@apple.com
  • 26 edits
    6 adds
    16 deletes in trunk/Source/WebInspectorUI

Web Inspector: Remove generateColoredImagesForCSS and its clients
https://bugs.webkit.org/show_bug.cgi?id=150474

Reviewed by Joseph Pecoraro.

  • UserInterface/Base/ImageUtilities.js:

(generateColoredImage): Deleted.
(imageLoaded): Deleted.
(ensureImageIsLoaded): Deleted.
(restoreImages.restoreActiveImages): Deleted.
(restoreImages): Deleted.
(restoreImage): Deleted.
(update): Deleted.
(generateImage): Deleted.
(generateColoredImagesForCSS): Deleted.

  • UserInterface/Base/Main.js:

(WebInspector.loaded): Deleted call to _generateDisclosureTriangleImages.
(WebInspector._generateDisclosureTriangleImages): Deleted.
(WebInspector.createGoToArrowButton): Deleted code to generate the states.

  • UserInterface/Images/BackArrow.svg: Removed.
  • UserInterface/Images/BackForwardArrows.svg: Added.
  • UserInterface/Images/DisclosureTriangleSmallClosed.svg: Removed.
  • UserInterface/Images/DisclosureTriangleSmallOpen.svg: Removed.
  • UserInterface/Images/DisclosureTriangleTinyClosed.svg: Removed.
  • UserInterface/Images/DisclosureTriangleTinyOpen.svg: Removed.
  • UserInterface/Images/DisclosureTriangles.svg: Added.
  • UserInterface/Images/ForwardArrow.svg: Removed.
  • UserInterface/Images/GoToArrow.svg:
  • UserInterface/Images/Locked.svg: Moved fill color here.
  • UserInterface/Images/SortIndicatorArrows.svg: Added.
  • UserInterface/Images/SortIndicatorDownArrow.svg: Removed.
  • UserInterface/Images/SortIndicatorUpArrow.svg: Removed.
  • UserInterface/Images/gtk/BackArrow.svg: Removed.
  • UserInterface/Images/gtk/BackForwardArrows.svg: Added.
  • UserInterface/Images/gtk/DisclosureTriangleSmallClosed.svg: Removed.
  • UserInterface/Images/gtk/DisclosureTriangleSmallOpen.svg: Removed.
  • UserInterface/Images/gtk/DisclosureTriangleTinyClosed.svg: Removed.
  • UserInterface/Images/gtk/DisclosureTriangleTinyOpen.svg: Removed.
  • UserInterface/Images/gtk/DisclosureTriangles.svg: Added.
  • UserInterface/Images/gtk/ForwardArrow.svg: Removed.
  • UserInterface/Images/gtk/GoToArrow.svg:
  • UserInterface/Images/gtk/Locked.svg: Moved fill color here.
  • UserInterface/Images/gtk/SortIndicatorArrows.svg: Added.
  • UserInterface/Images/gtk/SortIndicatorDownArrow.svg: Removed.
  • UserInterface/Images/gtk/SortIndicatorUpArrow.svg: Removed.
  • UserInterface/Views/CSSStyleDeclarationSection.css:

(.style-declaration-section.locked > .header::before):

  • UserInterface/Views/CSSStyleDeclarationSection.js:

(WebInspector.CSSStyleDeclarationSection): Deleted.

  • UserInterface/Views/ConsoleMessageView.css:

(.console-message.expandable .console-top-level-message::before):
(.console-message.expandable.expanded .console-top-level-message::before):

  • UserInterface/Views/ContentBrowser.js:

(WebInspector.ContentBrowser): Use BackForwardArrows.svg.

  • UserInterface/Views/DOMTreeOutline.css:

(.dom-tree-outline li.parent::before):
(.dom-tree-outline:focus li.parent.selected::before):
(.dom-tree-outline li.parent.expanded::before):
(.dom-tree-outline:focus li.parent.expanded.selected::before):

  • UserInterface/Views/DataGrid.css:

(.data-grid th.sort-ascending > div:first-child::after):
(.data-grid th.sort-descending > div:first-child::after):
(.data-grid tr.parent td.disclosure::before):
(.data-grid tr.parent.expanded td.disclosure::before):
(.data-grid:matches(:focus, .force-focus) tr.parent.selected td.disclosure::before):
(.data-grid:matches(:focus, .force-focus) tr.parent.expanded.selected td.disclosure::before):

  • UserInterface/Views/DataGrid.js:

(WebInspector.DataGrid): Deleted call to _generateSortIndicatorImagesIfNeeded.
(WebInspector.DataGrid.prototype._generateSortIndicatorImagesIfNeeded): Deleted.

  • UserInterface/Views/DetailsSection.css:

(.details-section > .header::before):
(.details-section > .header:not(.mouse-over-options-element):active::before):
(.details-section.collapsed > .header::before):
(.details-section.collapsed > .header:not(.mouse-over-options-element):active::before):

  • UserInterface/Views/DetailsSection.js:

(WebInspector.DetailsSection): Deleted call to _generateDisclosureTrianglesIfNeeded.
(WebInspector.DetailsSection.prototype._generateDisclosureTrianglesIfNeeded): Deleted.

  • UserInterface/Views/ErrorObjectView.css:

(.error-object > .formatted-error::before):
(.error-object.expanded > .formatted-error::before):

  • UserInterface/Views/FindBanner.css:

(.find-banner > button.segmented.left > .glyph):
(.find-banner > button.segmented.left:active:not(:disabled) > .glyph):
(.find-banner > button.segmented.right > .glyph):
(.find-banner > button.segmented.right:active:not(:disabled) > .glyph):

  • UserInterface/Views/FindBanner.js:

(WebInspector.FindBanner): Deleted call to _generateButtonsGlyphsIfNeeded.
(WebInspector.FindBanner.prototype._generateButtonsGlyphsIfNeeded): Deleted.

  • UserInterface/Views/LogContentView.css:

(.console-group-title::before):
(.console-group.collapsed .console-group-title::before):

  • UserInterface/Views/Main.css:

(.go-to-arrow):
(.go-to-arrow:active):
(:matches(:focus, .force-focus) .selected .go-to-arrow):
(:matches(:focus, .force-focus) .selected .go-to-arrow:active):

  • UserInterface/Views/NavigationSidebarPanel.css:

(.navigation-sidebar-panel-content-tree-outline .item .disclosure-button):
(.navigation-sidebar-panel-content-tree-outline:matches(:focus, .force-focus) .item.selected .disclosure-button):
(.navigation-sidebar-panel-content-tree-outline .item.expanded .disclosure-button):
(.navigation-sidebar-panel-content-tree-outline:matches(:focus, .force-focus) .item.selected.expanded .disclosure-button):

  • UserInterface/Views/NavigationSidebarPanel.js:

(WebInspector.NavigationSidebarPanel): Deleted call to _generateDisclosureTrianglesIfNeeded.
(WebInspector.NavigationSidebarPanel.prototype._generateDisclosureTrianglesIfNeeded): Deleted.

  • UserInterface/Views/ObjectTreePropertyTreeElement.css:

(.object-tree-property.parent > .disclosure-button):
(.object-tree-property.parent.expanded > .disclosure-button):
(.object-tree-property .read-only): Deleted.

  • UserInterface/Views/ObjectTreeView.css:

(.object-tree > :matches(.title, .object-preview)::before):
(.object-tree.expanded > :matches(.title, .object-preview)::before):

  • UserInterface/Views/TypeTreeElement.css:

(.type-tree-element.parent > .disclosure-button):
(.type-tree-element.parent.expanded > .disclosure-button):

5:09 PM Changeset in webkit [191487] by weinig@apple.com
  • 11 edits in trunk

Navigations on the same host (but with different schemes and ports) should not trigger universal links
<rdar://problem/22811325>
https://bugs.webkit.org/show_bug.cgi?id=150481

Reviewed by Dan Bernstein.

Source/WebCore:

Add new helper which efficiently compares the hosts of two URLs.

  • platform/URL.cpp:

(WebCore::hostsAreEqual):

  • platform/URL.h:

Source/WebKit/mac:

  • WebCoreSupport/WebFrameLoaderClient.mm:

(shouldTryAppLink):
Update the policy for following universal links to only take host into consideration.

Source/WebKit2:

Update the policy for following universal links to only take host into consideration.

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageUIClient):

  • UIProcess/Cocoa/UIDelegate.mm:

(WebKit::UIDelegate::UIClient::createNewPage):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::decidePolicyForNavigationAction):
(WebKit::WebPageProxy::decidePolicyForNewWindowAction):
(WebKit::WebPageProxy::createNewPage):
(WebKit::WebPageProxy::showPage):

Tools:

  • TestWebKitAPI/Tests/WebKit2Cocoa/ShouldOpenExternalURLsInNewWindowActions.mm:

Update test to test that navigations on the same host but with different schemes does not
trigger universal links, but that changes in the host do.

4:31 PM Changeset in webkit [191486] by Matt Baker
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: CSS Data URIs count against page weight twice
https://bugs.webkit.org/show_bug.cgi?id=150101

Reviewed by Timothy Hatcher.

  • UserInterface/Models/DefaultDashboard.js:

(WebInspector.DefaultDashboard.prototype._resourceSizeDidChange):
Exclude resources with a data URI from the total page weight.

  • UserInterface/Models/Resource.js:

(WebInspector.Resource):
(WebInspector.Resource.prototype.updateForRedirectResponse):
(WebInspector.Resource.prototype.updateForResponse):
(WebInspector.Resource.prototype.markAsFinished):
Removed uses of delete.

3:56 PM Changeset in webkit [191485] by commit-queue@webkit.org
  • 12 edits in trunk/Source

Web Inspector: Remove unused Timeline GCEvent Record type
https://bugs.webkit.org/show_bug.cgi?id=150477

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-10-22
Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

Garbage Collection events go through the Heap domain, not the
Timeline domain (long time ago for Chromium).

  • inspector/protocol/Timeline.json:

Source/WebCore:

This event is dispatched through the Heap domain, not Timelines.

  • inspector/TimelineRecordFactory.cpp:

(WebCore::TimelineRecordFactory::createGCEventData): Deleted.

  • inspector/TimelineRecordFactory.h:

Source/WebInspectorUI:

iOS backends never emitted a GCEvent timeline event.

  • UserInterface/Protocol/Legacy/7.0/InspectorBackendCommands.js:
  • UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js:
  • UserInterface/Protocol/Legacy/9.0/InspectorBackendCommands.js:
  • Versions/Inspector-iOS-7.0.json:
  • Versions/Inspector-iOS-8.0.json:
  • Versions/Inspector-iOS-9.0.json:
3:36 PM Changeset in webkit [191484] by commit-queue@webkit.org
  • 5 edits in trunk/Source

Fix build for clang-700.0.59.5 by replacing deprecated calls to convert points between screen and window coordinates for Mac.
https://bugs.webkit.org/show_bug.cgi?id=150379

Patch by Gordon Sheridan <gordon_sheridan@apple.com> on 2015-10-22
Reviewed by Andy Estes.

Source/WebCore:

Provide WAKWindow versions of the non-deprecated methods for converting an NSRect between
window and screen coordinates, which replace the deprecated methods that operated on an NSPoint.

  • platform/ios/wak/WAKWindow.h:
  • platform/ios/wak/WAKWindow.mm:

(-[WAKWindow convertRectToScreen:]): Added.
(-[WAKWindow convertRectFromScreen:]): Added.

Source/WebKit/mac:

  • WebView/WebHTMLView.mm:

(-[WebHTMLView characterIndexForPoint:]):
Convert point to rect, and replace call to deprecated convertScreenToBase: with convertRectFromScreen:.

(-[WebHTMLView firstRectForCharacterRange:]):
Replace call to deprecated convertBaseToScreen: with convertRectToScreen:.

3:33 PM Changeset in webkit [191483] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

Fix Mac CMake build after r191433.

  • PlatformMac.cmake:

Use CMakeLists.txt to generate UserAgentScripts.h and cpp.

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

Simplify menu creation
https://bugs.webkit.org/show_bug.cgi?id=150476

Reviewed by Tim Horton.

Instead of creating vectors of NSMenuItem objects, just simply build the menu recursively.

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

(WebKit::WebContextMenuProxyMac::createContextMenuFromItems):
(WebKit::WebContextMenuProxyMac::createContextMenuItem):
(WebKit::WebContextMenuProxyMac::showContextMenu):
(WebKit::populateNSMenu): Deleted.
(WebKit::nsMenuItem): Deleted.
(WebKit::nsMenuItemVector): Deleted.

3:25 PM Changeset in webkit [191481] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

ERROR: Unhandled web process message 'StorageAreaMap:DispatchStorageEvent'
https://bugs.webkit.org/show_bug.cgi?id=150315

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2015-10-22
Reviewed by Andreas Kling.

It was introduced in r184930, that keeps the session storage area
maps alive in the UI process when they are destroyed by the web
process. The problem is that we also keep the listeners, so that
events are also dispatched to the listeners of destroyed areas,
and the message handlers were removed in the web process.

  • UIProcess/Storage/StorageManager.cpp:

(WebKit::StorageManager::createTransientLocalStorageMap): Add a
listener for the new storage map ID when the map is reused.
(WebKit::StorageManager::destroyStorageMap): Always remove
listeners of destroyed maps.

3:14 PM Changeset in webkit [191480] by dbates@webkit.org
  • 4 edits
    12 deletes in trunk

Unreviewed, rolling out r191113.

Rollout r144451 since it regressed the visibility of the
search cancel button when a search field is empty or showing
placeholder text. Further investigation is needed.

Reverted changeset:

"[iOS] DOM click event may not be dispatched when page has
:active style and <input type="search">"
https://bugs.webkit.org/show_bug.cgi?id=144451
http://trac.webkit.org/changeset/191113

2:54 PM Changeset in webkit [191479] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

Add a SPI variant of loadData that accepts user data to WKWebView
https://bugs.webkit.org/show_bug.cgi?id=150475

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _loadData:MIMEType:characterEncodingName:baseURL:userData:]):

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
2:37 PM Changeset in webkit [191478] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: srcset attributes should have hyperlinks to the resources
https://bugs.webkit.org/show_bug.cgi?id=150409

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-10-22
Reviewed by Timothy Hatcher.

Follow-up tweaks and fixes that were intended to be landed.

  • UserInterface/Views/CodeMirrorAdditions.js:

(tokenizeSrcSetString):
Multiline parsing has issues recovering the state CodeMirror
expects, so we just bail in those cases. Leading whitespace
is also handled poorly, but expected to be rare.

  • UserInterface/Views/DOMTreeElement.js:

(WebInspector.DOMTreeElement.prototype._buildAttributeDOM):
Trim to eliminate leading whitespace.

2:33 PM Changeset in webkit [191477] by matthew_hanson@apple.com
  • 6 edits in branches/safari-601-branch

Merge r191395. rdar://problem/22847057

2:33 PM Changeset in webkit [191476] by matthew_hanson@apple.com
  • 3 edits
    3 adds in branches/safari-601-branch

Merge r191364. rdar://problem/22862879

2:33 PM Changeset in webkit [191475] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebCore

Merge r191357. rdar://problem/23103279

2:29 PM Changeset in webkit [191474] by Simon Fraser
  • 5 edits in trunk/Source/WebCore

Add ways to log to log channels via a functional syntax, and via a TextStream
https://bugs.webkit.org/show_bug.cgi?id=150472

Reviewed by Tim Horton.

Make it possible to write to a WTFLogChannel with a std::function that returns
a const char*, and with stream syntax.

Enhance TextStream to allow it to generate single-line output.

  • platform/Logging.cpp:

(WebCore::logFunctionResult):

  • platform/Logging.h:
  • platform/text/TextStream.cpp:

(WebCore::TextStream::startGroup):
(WebCore::TextStream::endGroup):
(WebCore::TextStream::nextLine):
(WebCore::TextStream::writeIndent):

  • platform/text/TextStream.h:

(WebCore::TextStream::TextStream):

2:17 PM Changeset in webkit [191473] by achristensen@apple.com
  • 9 edits in trunk/Source

Progress towards CMake on Mac
https://bugs.webkit.org/show_bug.cgi?id=150466

Reviewed by Chris Dumez.

Source/WebCore:

  • PlatformMac.cmake:
  • crypto/mac/SerializedCryptoKeyWrapMac.mm:

(WebCore::createAndStoreMasterKey):

  • page/mac/WheelEventDeltaFilterMac.mm:
  • platform/spi/mac/NSImmediateActionGestureRecognizerSPI.h:

Source/WebKit2:

  • CMakeLists.txt:
  • PlatformMac.cmake:
  • UIProcess/Cocoa/WebProcessPoolCocoa.mm:
2:14 PM Changeset in webkit [191472] by andersca@apple.com
  • 7 edits
    4 deletes in trunk/Source/WebKit2

NativeContextMenuItem isn't needed anymore, remove it
https://bugs.webkit.org/show_bug.cgi?id=150473

Reviewed by Tim Horton.

  • PlatformEfl.cmake:
  • PlatformGTK.cmake:
  • Shared/NativeContextMenuItem.h: Removed.

(WebKit::NativeContextMenuItem::~NativeContextMenuItem): Deleted.
(WebKit::NativeContextMenuItem::nsMenuItem): Deleted.

  • Shared/WebContextMenuItem.cpp:

(WebKit::WebContextMenuItem::WebContextMenuItem): Deleted.

  • Shared/WebContextMenuItem.h:

(WebKit::WebContextMenuItem::create): Deleted.
(WebKit::WebContextMenuItem::nativeContextMenuItem): Deleted.

  • Shared/efl/NativeContextMenuItemEfl.cpp: Removed.

(WebKit::NativeContextMenuItem::NativeContextMenuItem): Deleted.

  • Shared/gtk/NativeContextMenuItemGtk.cpp: Removed.

(WebKit::NativeContextMenuItem::NativeContextMenuItem): Deleted.

  • Shared/mac/NativeContextMenuItem.mm: Removed.

(WebKit::NativeContextMenuItem::NativeContextMenuItem): Deleted.

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(WebKit::nsMenuItem): Deleted.

  • WebKit2.xcodeproj/project.pbxproj:
2:00 PM Changeset in webkit [191471] by andersca@apple.com
  • 8 edits in trunk/Source/WebKit2

CTTE WebContextMenuItemData
https://bugs.webkit.org/show_bug.cgi?id=150471

Reviewed by Tim Horton.

  • Shared/API/c/WKContextMenuItem.cpp:

(WKContextMenuItemGetTag):
(WKContextMenuItemGetType):
(WKContextMenuItemCopyTitle):
(WKContextMenuItemGetEnabled):
(WKContextMenuItemGetChecked):

  • Shared/WebContextMenuItem.cpp:

(WebKit::WebContextMenuItem::create):

  • Shared/WebContextMenuItem.h:

(WebKit::WebContextMenuItem::data):

  • UIProcess/API/C/WKPage.cpp:

(WKPageSelectContextMenuItem):

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(WebKit::nsMenuItem):

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

(WKBundlePageClickMenuItem):

  • WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:

(WebKit::InjectedBundlePageContextMenuClient::getCustomMenuFromDefaultItems):

1:37 PM Changeset in webkit [191470] by beidson@apple.com
  • 2 edits in trunk/LayoutTests

Skip a racey test until it can be made proper.
https://bugs.webkit.org/show_bug.cgi?id=150455 and
https://bugs.webkit.org/show_bug.cgi?id=150468

  • platform/mac-wk1/TestExpectations: Skip storage/indexeddb/modern/createobjectstore-basic.html
1:28 PM Changeset in webkit [191469] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Handle nil menu items.

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(WebKit::nsMenuItemVector):

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

Wait to convert the share menu item to a real share menu until after calling out to the client
https://bugs.webkit.org/show_bug.cgi?id=150465

Reviewed by Tim Horton.

This will let us simplify more code in upcoming patches.

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

(WebKit::nsMenuItem):
(WebKit::nsMenuItemVector):
(WebKit::WebContextMenuProxyMac::showContextMenu):

12:59 PM Changeset in webkit [191467] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit/win

Move menu creation to WebView
https://bugs.webkit.org/show_bug.cgi?id=150463

Reviewed by Tim Horton.

  • WebView.cpp:

(createContextMenuFromItems):
(WebView::createContextMenu):

12:50 PM Changeset in webkit [191466] by mmaxfield@apple.com
  • 12 edits in trunk/Source

[Cocoa] Migrate WKSetPatternPhaseInUserSpace() and WKGetUserToBaseCTM() from WKSI
https://bugs.webkit.org/show_bug.cgi?id=150460

Reviewed by Tim Horton.

Source/WebCore:

No reason to use WKSI for these calls.

No new tests because there is no behavior change.

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::applyStrokePattern):
(WebCore::GraphicsContext::applyFillPattern):
(WebCore::GraphicsContext::setPlatformShadow):

  • platform/graphics/cg/GraphicsContextCG.h:

(WebCore::getUserToBaseCTM):

  • platform/graphics/cg/ImageBufferCG.cpp:

(WebCore::ImageBuffer::putByteArray):

  • platform/graphics/mac/GraphicsContextMac.mm:

(WebCore::setPatternPhaseInUserSpace):
(WebCore::GraphicsContext::drawLineForDocumentMarker):

  • platform/ios/WebCoreSystemInterfaceIOS.mm:
  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:

Source/WebKit/mac:

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface): Deleted.

Source/WebKit2:

  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface): Deleted.

12:10 PM Changeset in webkit [191465] by beidson@apple.com
  • 33 edits
    2 copies
    7 adds in trunk

Modern IDB: Basic createObjectStore implementation.
https://bugs.webkit.org/show_bug.cgi?id=150455

Reviewed by Alex Christensen.

Source/WebCore:

Tests: storage/indexeddb/modern/createobjectstore-basic.html

storage/indexeddb/modern/createobjectstore-failures.html

  • CMakeLists.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • Modules/indexeddb/client/IDBConnectionToServer.cpp:

(WebCore::IDBClient::IDBConnectionToServer::createObjectStore):
(WebCore::IDBClient::IDBConnectionToServer::didCreateObjectStore):

  • Modules/indexeddb/client/IDBConnectionToServer.h:
  • Modules/indexeddb/client/IDBConnectionToServerDelegate.h:
  • Modules/indexeddb/client/IDBDatabaseImpl.cpp:

(WebCore::IDBClient::IDBDatabase::objectStoreNames):
(WebCore::IDBClient::IDBDatabase::createObjectStore):
(WebCore::IDBClient::IDBDatabase::didAbortTransaction):

  • Modules/indexeddb/client/IDBDatabaseImpl.h:

(WebCore::IDBClient::IDBDatabase::serverConnection):

  • Modules/indexeddb/client/IDBObjectStoreImpl.cpp: Added.

(WebCore::IDBClient::IDBObjectStore::create):
(WebCore::IDBClient::IDBObjectStore::IDBObjectStore):
(WebCore::IDBClient::IDBObjectStore::~IDBObjectStore):
(WebCore::IDBClient::IDBObjectStore::id):
(WebCore::IDBClient::IDBObjectStore::name):
(WebCore::IDBClient::IDBObjectStore::keyPathAny):
(WebCore::IDBClient::IDBObjectStore::keyPath):
(WebCore::IDBClient::IDBObjectStore::indexNames):
(WebCore::IDBClient::IDBObjectStore::transaction):
(WebCore::IDBClient::IDBObjectStore::autoIncrement):
(WebCore::IDBClient::IDBObjectStore::add):
(WebCore::IDBClient::IDBObjectStore::put):
(WebCore::IDBClient::IDBObjectStore::openCursor):
(WebCore::IDBClient::IDBObjectStore::get):
(WebCore::IDBClient::IDBObjectStore::deleteFunction):
(WebCore::IDBClient::IDBObjectStore::clear):
(WebCore::IDBClient::IDBObjectStore::createIndex):
(WebCore::IDBClient::IDBObjectStore::index):
(WebCore::IDBClient::IDBObjectStore::deleteIndex):
(WebCore::IDBClient::IDBObjectStore::count):

  • Modules/indexeddb/client/IDBObjectStoreImpl.h: Added.
  • Modules/indexeddb/client/IDBOpenDBRequestImpl.cpp:

(WebCore::IDBClient::IDBOpenDBRequest::requestCompleted):

  • Modules/indexeddb/client/IDBTransactionImpl.cpp:

(WebCore::IDBClient::IDBTransaction::serverConnection):
(WebCore::IDBClient::IDBTransaction::objectStore):
(WebCore::IDBClient::IDBTransaction::scheduleOperation):
(WebCore::IDBClient::IDBTransaction::operationTimerFired):
(WebCore::IDBClient::IDBTransaction::finishAbortOrCommit):
(WebCore::IDBClient::IDBTransaction::didAbort):
(WebCore::IDBClient::IDBTransaction::didCommit):
(WebCore::IDBClient::IDBTransaction::createObjectStore):
(WebCore::IDBClient::IDBTransaction::createObjectStoreOnServer):
(WebCore::IDBClient::IDBTransaction::didCreateObjectStoreOnServer):

  • Modules/indexeddb/client/IDBTransactionImpl.h:

(WebCore::IDBClient::IDBTransaction::originalDatabaseInfo):
(WebCore::IDBClient::IDBTransaction::isVersionChange):

  • Modules/indexeddb/client/TransactionOperation.h: Added.

(WebCore::IDBClient::TransactionOperation::perform):
(WebCore::IDBClient::TransactionOperation::completed):
(WebCore::IDBClient::TransactionOperation::identifier):
(WebCore::IDBClient::TransactionOperation::transactionIdentifier):
(WebCore::IDBClient::TransactionOperation::TransactionOperation):
(WebCore::IDBClient::createTransactionOperation):

  • Modules/indexeddb/server/IDBConnectionToClient.cpp:

(WebCore::IDBServer::IDBConnectionToClient::didCreateObjectStore):

  • Modules/indexeddb/server/IDBConnectionToClient.h:
  • Modules/indexeddb/server/IDBConnectionToClientDelegate.h:
  • Modules/indexeddb/server/IDBServer.cpp:

(WebCore::IDBServer::IDBServer::createObjectStore):

  • Modules/indexeddb/server/IDBServer.h:
  • Modules/indexeddb/server/UniqueIDBDatabase.cpp:

(WebCore::IDBServer::UniqueIDBDatabase::createObjectStore):
(WebCore::IDBServer::UniqueIDBDatabase::performCreateObjectStore):
(WebCore::IDBServer::UniqueIDBDatabase::didPerformCreateObjectStore):
(WebCore::IDBServer::UniqueIDBDatabase::performAbortTransaction):
(WebCore::IDBServer::UniqueIDBDatabase::didPerformAbortTransaction):
(WebCore::IDBServer::UniqueIDBDatabase::abortTransaction): Deleted.

  • Modules/indexeddb/server/UniqueIDBDatabase.h:
  • Modules/indexeddb/server/UniqueIDBDatabaseConnection.cpp:

(WebCore::IDBServer::UniqueIDBDatabaseConnection::didCreateObjectStore):

  • Modules/indexeddb/server/UniqueIDBDatabaseConnection.h:
  • Modules/indexeddb/server/UniqueIDBDatabaseTransaction.cpp:

(WebCore::IDBServer::UniqueIDBDatabaseTransaction::isVersionChange):
(WebCore::IDBServer::UniqueIDBDatabaseTransaction::createObjectStore):

  • Modules/indexeddb/server/UniqueIDBDatabaseTransaction.h:
  • Modules/indexeddb/shared/IDBDatabaseInfo.cpp:

(WebCore::IDBDatabaseInfo::hasObjectStore):
(WebCore::IDBDatabaseInfo::createNewObjectStore):
(WebCore::IDBDatabaseInfo::addExistingObjectStore):
(WebCore::IDBDatabaseInfo::objectStoreNames):

  • Modules/indexeddb/shared/IDBDatabaseInfo.h:
  • Modules/indexeddb/shared/IDBObjectStoreInfo.cpp: Copied from Source/WebCore/Modules/indexeddb/shared/IDBDatabaseInfo.cpp.

(WebCore::IDBObjectStoreInfo::IDBObjectStoreInfo):
(WebCore::IDBObjectStoreInfo::isolatedCopy):

  • Modules/indexeddb/shared/IDBObjectStoreInfo.h: Copied from Source/WebCore/Modules/indexeddb/shared/IDBDatabaseInfo.h.

(WebCore::IDBObjectStoreInfo::identifier):
(WebCore::IDBObjectStoreInfo::name):
(WebCore::IDBObjectStoreInfo::keyPath):
(WebCore::IDBObjectStoreInfo::autoIncrement):

  • Modules/indexeddb/shared/IDBRequestData.cpp:

(WebCore::IDBRequestData::IDBRequestData):
(WebCore::IDBRequestData::requestIdentifier):
(WebCore::IDBRequestData::transactionIdentifier):

  • Modules/indexeddb/shared/IDBRequestData.h:

(WebCore::IDBRequestData::databaseIdentifier):
(WebCore::IDBRequestData::requestIdentifier): Deleted.

  • Modules/indexeddb/shared/IDBResultData.cpp:

(WebCore::IDBResultData::IDBResultData):
(WebCore::IDBResultData::createObjectStoreSuccess):

  • Modules/indexeddb/shared/IDBResultData.h:
  • Modules/indexeddb/shared/InProcessIDBServer.cpp:

(WebCore::InProcessIDBServer::didCreateObjectStore):
(WebCore::InProcessIDBServer::createObjectStore):

  • Modules/indexeddb/shared/InProcessIDBServer.h:
  • platform/CrossThreadCopier.cpp:

(WebCore::IDBObjectStoreInfo>::copy):

  • platform/CrossThreadCopier.h:

LayoutTests:

  • storage/indexeddb/modern/createobjectstore-basic-expected.txt: Added.
  • storage/indexeddb/modern/createobjectstore-basic.html: Added.
  • storage/indexeddb/modern/createobjectstore-failures-expected.txt: Added.
  • storage/indexeddb/modern/createobjectstore-failures.html: Added.
11:42 AM Changeset in webkit [191464] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Restore :not(:placeholder-shown) behavior on search bars with comments
https://bugs.webkit.org/show_bug.cgi?id=150452

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-10-22
Reviewed by Timothy Hatcher.

  • UserInterface/Views/FindBanner.css:

(.find-banner.console-find-banner > input[type="search"]:not(:placeholder-shown)):

  • UserInterface/Views/SearchBar.css:

(.search-bar > input[type="search"]:not(:placeholder-shown)):
Add back the placeholder-shown related styles and add a comment about what they are for.

11:36 AM Changeset in webkit [191463] by matthew_hanson@apple.com
  • 6 edits in branches/safari-601.1.46-branch

Merge r191395. rdar://problem/22846455

11:36 AM Changeset in webkit [191462] by matthew_hanson@apple.com
  • 3 edits
    3 adds in branches/safari-601.1.46-branch

Merge r191364. rdar://problem/22864960

11:36 AM Changeset in webkit [191461] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r191357. rdar://problem/23103005

11:36 AM Changeset in webkit [191460] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebCore

Merge r191223. rdar://problem/22900764

11:35 AM Changeset in webkit [191459] by matthew_hanson@apple.com
  • 24 edits
    3 deletes in branches/safari-601.1.46-branch

Merge r191063. rdar://problem/22900764

11:35 AM Changeset in webkit [191458] by matthew_hanson@apple.com
  • 14 edits
    3 adds in branches/safari-601.1.46-branch

Merge r190510. rdar://problem/22900764

11:00 AM Changeset in webkit [191457] by achristensen@apple.com
  • 9 edits
    2 adds in trunk/Source

Initial NSURLSession WebResourceLoader implementation
https://bugs.webkit.org/show_bug.cgi?id=150355

Reviewed by Antti Koivisto.

Source/WebCore:

  • platform/network/cf/AuthenticationChallenge.h:

(WebCore::AuthenticationChallenge::AuthenticationChallenge): Export constructor for use in WebKit2.

Source/WebKit2:

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload):
(WebKit::NetworkConnectionToWebProcess::cookiesForDOM):

  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::~NetworkResourceLoader):
(WebKit::NetworkResourceLoader::startNetworkLoad):
(WebKit::NetworkResourceLoader::setDefersLoading):
(WebKit::NetworkResourceLoader::cleanup):
(WebKit::NetworkResourceLoader::didConvertHandleToDownload):
(WebKit::NetworkResourceLoader::abort):
(WebKit::NetworkResourceLoader::willPerformHTTPRedirection):
(WebKit::NetworkResourceLoader::didReceiveChallenge):
(WebKit::NetworkResourceLoader::didReceiveResponse):
(WebKit::NetworkResourceLoader::didReceiveData):
(WebKit::NetworkResourceLoader::didCompleteWithError):
(WebKit::NetworkResourceLoader::didReceiveResponseAsync):
(WebKit::NetworkResourceLoader::willSendRequestAsync):
(WebKit::NetworkResourceLoader::continueWillSendRequest):
(WebKit::NetworkResourceLoader::continueDidReceiveResponse):
(WebKit::NetworkResourceLoader::didSendData):
(WebKit::NetworkResourceLoader::receivedCancellation):
(WebKit::NetworkResourceLoader::startBufferingTimerIfNeeded):
(WebKit::NetworkResourceLoader::bufferingTimerFired):
(WebKit::NetworkResourceLoader::validateCacheEntry):
(WebKit::NetworkResourceLoader::sendAbortingOnFailure):
(WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceAsync):
(WebKit::NetworkResourceLoader::continueCanAuthenticateAgainstProtectionSpace):
(WebKit::NetworkResourceLoader::supportsDataArray):

  • NetworkProcess/NetworkResourceLoader.h:

(WebKit::NetworkResourceLoader::create):
(WebKit::NetworkResourceLoader::currentRequest):
(WebKit::NetworkResourceLoader::handle):

  • NetworkProcess/NetworkSession.h: Added.

(WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient):
(WebKit::NetworkingDataTask::client):
(WebKit::NetworkingDataTask::clearClient):
(WebKit::NetworkSession::~NetworkSession):

  • NetworkProcess/cocoa/NetworkSessionCocoa.mm: Added.

(toNSURLSessionResponseDisposition):
(toNSURLSessionAuthChallengeDisposition):
(-[NetworkSessionDelegate initWithNetworkSession:]):
(-[NetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]):
(-[NetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]):
(-[NetworkSessionDelegate URLSession:task:didCompleteWithError:]):
(-[NetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]):
(-[NetworkSessionDelegate URLSession:dataTask:didReceiveData:]):
(WebKit::NetworkSession::create):
(WebKit::NetworkSession::singleton):
(WebKit::configurationForType):
(WebKit::NetworkSession::NetworkSession):
(WebKit::NetworkSession::createDataTaskWithRequest):
(WebKit::NetworkSession::dataTaskForIdentifier):
(WebKit::NetworkingDataTask::NetworkingDataTask):
(WebKit::NetworkingDataTask::~NetworkingDataTask):
(WebKit::NetworkingDataTask::suspend):
(WebKit::NetworkingDataTask::resume):
(WebKit::NetworkingDataTask::taskIdentifier):

  • NetworkProcess/mac/NetworkResourceLoaderMac.mm:

(WebKit::NetworkResourceLoader::willCacheResponseAsync):

  • WebKit2.xcodeproj/project.pbxproj:
  • config.h:
10:17 AM Changeset in webkit [191456] by fred.wang@free.fr
  • 8 edits in trunk

[Mac] Add support for the USE_TYPO_METRICS flag
https://bugs.webkit.org/show_bug.cgi?id=150394

Reviewed by Myles C. Maxfield.

Source/WebCore:

Make the Cocoa backend use the typo metrics for fonts with a MATH table when the OS/2 USE_TYPO_METRICS flag is set.

No new tests because this is already tested by fonts/use-typo-metrics-1.html

  • platform/graphics/cocoa/FontCocoa.mm:

(WebCore::fontHasMathTable): Add a function to verify whether a font has a MATH table.
(WebCore::Font::platformInit): Verify whether the OS/2 USE_TYPO_METRICS flag is set and use the typo metrics if that is the case.

LayoutTests:

Update font, reference and Mac expectation for fonts/use-typo-metrics-1.html

  • fonts/lineheight5000-typolineheight2300.woff: Add a MATH table.
  • platform/mac-mavericks/mathml/opentype/opentype-stretchy-horizontal-expected.txt: Updated.
  • platform/mac/TestExpectations: Remove Mac failure expectation.
  • platform/mac/mathml/opentype/opentype-stretchy-expected.txt: Updated.
  • platform/mac/mathml/opentype/opentype-stretchy-horizontal-expected.txt: Updated.
9:12 AM Changeset in webkit [191455] by msaboff@apple.com
  • 5 edits
    3 adds in trunk

REGRESSION(r191360): Repro Crash: com.apple.WebKit.WebContent at JavaScriptCore:JSC::ExecState::bytecodeOffset + 174
https://bugs.webkit.org/show_bug.cgi?id=150434

Reviewed by Mark Lam.

Source/JavaScriptCore:

Pass the current frame instead of the caller frame to operationVMHandleException when processing an
exception in one of the native thunks.

  • jit/JITExceptions.cpp:

(JSC::genericUnwind): Made debug printing of CodeBlock safe for call frames without one.

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::privateCompileCTINativeCall):

  • jit/ThunkGenerators.cpp:

(JSC::nativeForGenerator):

LayoutTests:

New regression test.

  • js/regress-150434-expected.txt: Added.
  • js/regress-150434.html: Added.
  • js/script-tests/regress-150434.js: Added.

(bar):
(foo):
(test):

8:48 AM Changeset in webkit [191454] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Tabbing over CSS properties prepended by * doesn't move the highlighted range
https://bugs.webkit.org/show_bug.cgi?id=150294

Patch by Devin Rousso <Devin Rousso> on 2015-10-22
Reviewed by Timothy Hatcher.

Moving the selected text when tabbing and shift-tabbing now relies upon
the last index of ";" if it exists instead of whether the line ends with it.

  • UserInterface/Views/CSSStyleDeclarationTextEditor.js:

(WebInspector.CSSStyleDeclarationTextEditor.prototype._handleShiftTabKey):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._handleTabKey):

7:24 AM Changeset in webkit [191453] by Philippe Normand
  • 3 edits in trunk/Source/WebKit2

Unreviewed, GTK build fix for disabled redirected XComposite window support.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp: Add USE(REDIRECTED_XCOMPOSITE_WINDOW) guards.
  • UIProcess/DrawingAreaProxyImpl.h: Mark virtual methods as override to avoid compilation warnings.
6:54 AM Changeset in webkit [191452] by Wenson Hsieh
  • 18 edits
    7 adds in trunk

Implement touch-action: manipulation; for iOS
https://bugs.webkit.org/show_bug.cgi?id=149854
<rdar://problem/23017145>

Reviewed by Benjamin Poulain.

Source/WebCore:

Implements the manipulation value for the CSS property touch-action. Adds support for
parsing the touch-action property and two of its values: auto and manipulation.

Tests: css3/touch-action/touch-action-computed-style.html

css3/touch-action/touch-action-manipulation-fast-clicks.html
css3/touch-action/touch-action-parsing.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator TouchAction):

  • css/CSSPropertyNames.in:
  • css/CSSValueKeywords.in:
  • dom/Element.cpp:

(WebCore::Element::allowsDoubleTapGesture): Here, we determine whether an element that resulted from

hit-testing a touch should allow double-tap gestures. To do this, we walk up the element's parents,
stopping when we detect an element that disallows double tap gestures by having a touch-action other
than auto or by hitting the root node.

  • dom/Element.h:
  • dom/Node.h:

(WebCore::Node::allowsDoubleTapGesture):

  • rendering/style/RenderStyle.h:
  • rendering/style/RenderStyleConstants.h:
  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):

  • rendering/style/StyleRareNonInheritedData.h:

Source/WebKit2:

Implements the manipulation value for the CSS property touch-action. Performs hit-testing upon receiving a potential
tap to determine whether to disable double-tap gesture recognition over the duration of the tap. If so, sends a message
from the web process to the UI process indicating that double-tapping should be disabled, allowing single taps to
avoid the delay.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::potentialTapAtPosition):

LayoutTests:

Add tests to check that the manipulation and auto values of the touch-action property can be
properly parsed and can be obtained through computed style. Also tests that putting touch-action:
manipulation on an element and tapping repeatedly on it will fire clicks instead of recognizing
double taps and causing the viewport to zoom.

  • TestExpectations:
  • css3/touch-action/touch-action-computed-style-expected.txt: Added.
  • css3/touch-action/touch-action-computed-style.html: Added.
  • css3/touch-action/touch-action-manipulation-fast-clicks-expected.txt: Added.
  • css3/touch-action/touch-action-manipulation-fast-clicks.html: Added.
  • css3/touch-action/touch-action-parsing-expected.txt: Added.
  • css3/touch-action/touch-action-parsing.html: Added.
  • platform/ios-simulator-wk2/TestExpectations:
4:37 AM Changeset in webkit [191451] by rniwa@webkit.org
  • 16 edits
    1 add in trunk

REGRESSION (r181972): Scroll position changes to top of youtube page when switching tabs
https://bugs.webkit.org/show_bug.cgi?id=150428

Reviewed by Antti Koivisto.

Source/WebCore:

The bug was caused by updateFocusAppearance in WebPage::restoreSelectionInFocusedEditableElement
revealing the focused element which was added in r181972. Fixed the bug by adding an option to
suppress this behavior here.

  • dom/Document.cpp:

(WebCore::Document::Document):
(WebCore::Document::updateFocusAppearanceSoon):

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

(WebCore::Element::focus):
(WebCore::Element::updateFocusAppearanceAfterAttachIfNeeded):
(WebCore::Element::updateFocusAppearance):

  • dom/Element.h:
  • history/CachedPage.cpp:

(WebCore::CachedPage::restore):

  • html/HTMLAreaElement.cpp:

(WebCore::HTMLAreaElement::updateFocusAppearance):

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

(WebCore::HTMLInputElement::updateFocusAppearance):
(WebCore::HTMLInputElement::runPostTypeUpdateTasks):
(WebCore::HTMLInputElement::didAttachRenderers):

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

(WebCore::HTMLTextAreaElement::updateFocusAppearance):

  • html/HTMLTextAreaElement.h:

Source/WebKit2:

Call updateFocusAppearance with RevealMode::DoNotReveal to avoid revealing the focused element.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::restoreSelectionInFocusedEditableElement):

Tools:

Added a regression test using WebKit API test.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/mac/FirstResponderScrollingPosition.mm: Added.

(TestWebKitAPI::didFinishLoadForFrame):
(TestWebKitAPI::TEST):

3:50 AM Changeset in webkit [191450] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] Fix build break since r191439
https://bugs.webkit.org/show_bug.cgi?id=150441

Patch by Joonghun Park <jh718.park@samsung.com> on 2015-10-22
Reviewed by Csaba Osztrogonác.

No new tests, no new behaviours.

  • platform/Logging.cpp:

(WebCore::registerNotifyCallback):

2:49 AM Changeset in webkit [191449] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebKit2

Unreviewed. Fix a crash in GTk+ after r191402.

Since r191402 WebContextMenuProxy is no longer refcounted, and
std::unique_ptr is used instead. This means that when we show the
context menu for the second time in a web view, a new
WebContextMenuProxy is created and the previous one is
destroyed. We were setting the active context menu of the WebView
in the constructor of WebContextMenuProxy, and unsetting it in the
destructor. Now the constructor of the new WebContextMenuProxy
happens before the destructor of the current one that unsets the
WebView active context menu. This patch simply makes the web view
unset its active context menu when it's unmapped and a new one
hasn't been set.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(activeContextMenuUnmapped):
(webkitWebViewBaseSetActiveContextMenuProxy):

  • UIProcess/gtk/WebContextMenuProxyGtk.cpp:

(WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk):

1:56 AM Changeset in webkit [191448] by Carlos Garcia Campos
  • 10 edits in trunk

Unreviewed. Fix GTK+ build after r191423.

Source/WebCore:

Deprecate removed class WebKitDOMHTMLBaseFontElement.

  • PlatformGTK.cmake:
  • bindings/gobject/WebKitDOMDeprecated.cpp:

(webkit_dom_html_base_font_element_init):
(webkit_dom_html_base_font_element_class_init):
(webkit_dom_html_base_font_element_get_color):
(webkit_dom_html_base_font_element_set_color):
(webkit_dom_html_base_font_element_get_face):
(webkit_dom_html_base_font_element_set_face):
(webkit_dom_html_base_font_element_get_size):
(webkit_dom_html_base_font_element_set_size):

  • bindings/gobject/WebKitDOMDeprecated.h:
  • bindings/gobject/WebKitDOMDeprecated.symbols:
  • bindings/gobject/WebKitDOMHTMLPrivate.cpp:
  • html/HTMLBaseFontElement.h:
  • html/HTMLBaseFontElement.idl:

Tools:

Add WebKitDOMHTMLBaseFontElement to the list of deleted classes.

  • gtk/webkitdom.py:

(WebKitDOMDocGenerator):

1:08 AM Changeset in webkit [191447] by Carlos Garcia Campos
  • 5 edits in trunk/Source/WebKit2

[GTK] Try to fix the build after r191402.
https://bugs.webkit.org/show_bug.cgi?id=150435

Patch by Hunseop Jeong <Hunseop Jeong> on 2015-10-22
Reviewed by Carlos Garcia Campos.

  • UIProcess/API/gtk/PageClientImpl.cpp:

(WebKit::PageClientImpl::createPopupMenuProxy):
(WebKit::PageClientImpl::createContextMenuProxy):
(WebKit::PageClientImpl::createColorPicker):

  • UIProcess/API/gtk/PageClientImpl.h:
  • UIProcess/gtk/WebContextMenuProxyGtk.cpp:

(WebKit::WebContextMenuProxyGtk::populate):
(WebKit::WebContextMenuProxyGtk::show):
(WebKit::WebContextMenuProxyGtk::WebContextMenuProxyGtk):
(WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk):
(WebKit::WebContextMenuProxyGtk::menuPositionFunction):
(WebKit::WebContextMenuProxyGtk::showContextMenu): Deleted.
(WebKit::WebContextMenuProxyGtk::hideContextMenu): Deleted.
(WebKit::WebContextMenuProxyGtk::cancelTracking): Deleted.

  • UIProcess/gtk/WebContextMenuProxyGtk.h:

(WebKit::WebContextMenuProxyGtk::gtkMenu):
(WebKit::WebContextMenuProxyGtk::create): Deleted.

12:51 AM Changeset in webkit [191446] by calvaris@igalia.com
  • 9 edits in trunk

[Streams API] Add writable stream attributes
https://bugs.webkit.org/show_bug.cgi?id=150389

Reviewed by Darin Adler.

Source/WebCore:

This patch adds the three writable stream attributes, which are closed, ready and state. They are implemented
according to the spec.

Current test set suffices, expectations were adjusted accordingly.

  • Modules/streams/WritableStream.js:

(initializeWritableStream): Style fix.
(closed):
(ready):
(state): Implemented according to the spec.

  • Modules/streams/WritableStreamInternals.js:

(isWritableStream): Implemented according to the spec.

LayoutTests:

Expectations for the implementation of writable stream attributes.

  • streams/reference-implementation/brand-checks-expected.txt:
  • streams/reference-implementation/count-queuing-strategy-expected.txt:
  • streams/reference-implementation/pipe-to-expected.txt:
  • streams/reference-implementation/readable-stream-templated-expected.txt:
  • streams/reference-implementation/writable-stream-expected.txt:
12:17 AM Changeset in webkit [191445] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[Win][EFL][GTK] webkitpy test failed after r191374.
https://bugs.webkit.org/show_bug.cgi?id=150433

Patch by Aakash Jain <aakash_jain@apple.com> on 2015-10-22
Reviewed by Alexey Proskuryakov.

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

(CrashLogsTest.test_find_all_log_darwin): Check platform before running test.
(CrashLogsTest.test_find_log_darwin): Same.

12:16 AM Changeset in webkit [191444] by fred.wang@free.fr
  • 8 edits in trunk

Rollout r190440 for the moment. It broke the build.

Source/WebCore:

  • platform/graphics/cocoa/FontCocoa.mm:

(WebCore::Font::platformInit): Deleted.

LayoutTests:

  • fonts/lineheight5000-typolineheight2300.woff:
  • platform/mac-mavericks/mathml/opentype/opentype-stretchy-horizontal-expected.txt:
  • platform/mac/TestExpectations:
  • platform/mac/mathml/opentype/opentype-stretchy-expected.txt:
  • platform/mac/mathml/opentype/opentype-stretchy-horizontal-expected.txt:
12:09 AM Changeset in webkit [191443] by fred.wang@free.fr
  • 2 edits in trunk/Source/WebCore

Unreviewed compilation fix on Mac.

  • platform/graphics/cocoa/FontCocoa.mm:

(WebCore::Font::platformInit): Use a pointer for the third argument of CFArrayContainsValue.

12:07 AM Changeset in webkit [191442] by Philippe Normand
  • 2 edits in trunk

[GTK][Mac] ICU-related build fixes
https://bugs.webkit.org/show_bug.cgi?id=150032

Rubber-stamped by Darin Adler.

  • Source/cmake/FindICU.cmake: Use pkg-config to hint at icu-i18n's library location.

Oct 21, 2015:

11:59 PM Changeset in webkit [191441] by fred.wang@free.fr
  • 2 edits in trunk/Source/WebCore

Unreviewed compilation fix on Mac.

  • platform/graphics/cocoa/FontCocoa.mm:

(WebCore::Font::platformInit): Add missing font argument.

11:45 PM Changeset in webkit [191440] by fred.wang@free.fr
  • 8 edits in trunk

[Mac] Add support for the USE_TYPO_METRICS flag
https://bugs.webkit.org/show_bug.cgi?id=150394

Reviewed by Myles C. Maxfield.

Source/WebCore:

Make the Cocoa backend use the typo metrics for fonts with a MATH table when the OS/2 USE_TYPO_METRICS flag is set.

No new tests because this is already tested by fonts/use-typo-metrics-1.html

  • platform/graphics/cocoa/FontCocoa.mm:

(WebCore::Font::platformInit): Verify whether the OS/2 USE_TYPO_METRICS flag is set and use the typo metrics if that is the case.

LayoutTests:

Update font, reference and Mac expectation for fonts/use-typo-metrics-1.html

  • fonts/lineheight5000-typolineheight2300.woff: Add a MATH table.
  • platform/mac-mavericks/mathml/opentype/opentype-stretchy-horizontal-expected.txt: Updated.
  • platform/mac/TestExpectations: Remove Mac failure expectation.
  • platform/mac/mathml/opentype/opentype-stretchy-expected.txt: Updated.
  • platform/mac/mathml/opentype/opentype-stretchy-horizontal-expected.txt: Updated.
11:10 PM Changeset in webkit [191439] by Alan Bujtas
  • 4 edits in trunk/Source/WebCore

Print out the render tree from command line.
https://bugs.webkit.org/show_bug.cgi?id=150416

Use system-wide notification server (https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man3/notify_register_dispatch.3.html)
to print out the render tree for the live documents.

Usage: notifyutil -p com.apple.WebKit.showRenderTree

Reviewed by Simon Fraser.

No change in functionality.

  • platform/Logging.cpp:

(WebCore::registerNotifyCallback):

  • platform/Logging.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::RenderObject):
(WebCore::printRenderTreeForLiveDocuments):

10:50 PM Changeset in webkit [191438] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

Fix CMake clean build after r191423.

  • CMakeLists.txt:

HTMLBaseFontElement.idl no longer generates any JavaScript bindings.

10:26 PM Changeset in webkit [191437] by BJ Burg
  • 2 edits in trunk/Tools

Unreviewed, update watchlist for JS builtins.

Add a category for JS builtins code generator, similar to other generators.

Add a nag message to rebaseline builtins generator tests when touching
code generator files in Source/JavaScriptCore/Scripts/builtins/.

  • Scripts/webkitpy/common/config/watchlist:
10:13 PM Changeset in webkit [191436] by Gyuyoung Kim
  • 2 edits in trunk/Source/WebKit2

Unreviewed EFL build fix. Remove customizeMenu implementation.

  • WebProcess/WebCoreSupport/WebContextMenuClient.cpp:

(WebKit::WebContextMenuClient::customizeMenu): Deleted.

9:51 PM Changeset in webkit [191435] by BJ Burg
  • 2 edits in trunk/Source/WebCore

Unreviewed, CMake build fix after r191433.

  • CMakeLists.txt: add WritableStreamInternals.js to WebCore_BUILTINS_SOURCES.
9:45 PM Changeset in webkit [191434] by achristensen@apple.com
  • 2 edits in trunk/Source/WebKit2

Speculative EFL build fix.

  • WebProcess/WebCoreSupport/WebContextMenuClient.h:

Remove another customizeMenu call.

9:39 PM Changeset in webkit [191433] by BJ Burg
  • 14 edits
    6 copies
    1 move
    35 adds
    2 deletes in trunk

Restructure generate-js-bindings script to be modular and testable
https://bugs.webkit.org/show_bug.cgi?id=149929

Reviewed by Alex Christensen.

Source/JavaScriptCore:

This is a new code generator, based on the replay inputs code generator and
the inspector protocol code generator, which produces various files for JS
builtins.

Relative to the generator it replaces, this one consolidates two scripts in
JavaScriptCore and WebCore into a single script with multiple files. Parsed
information about the builtins file is stored in backend-independent model
objects. Each output file has its own code generator that uses the model to
produce resulting code. Generators are additionally parameterized by the target
framework (to choose correct macros and includes) and output mode (one
header/implementation file per builtin or per framework).

It includes a few simple tests of the generator's functionality. These result-
based tests will become increasingly more important as we start to add support
for builtins annotation such as @optional, @internal, etc. to the code generator.

Some of these complexities, such as having two output modes, will be removed in
subsequent patches. This patch is intended to exactly replace the existing
functionality with a unified script that makes additional cleanups straightforward.

Additional cleanup and consolidation between inspector code generator scripts
and this script will be pursued in followup patches.

New tests:

Scripts/tests/builtins/JavaScriptCore-Builtin.Promise-Combined.js
Scripts/tests/builtins/JavaScriptCore-Builtin.Promise-Separate.js
Scripts/tests/builtins/JavaScriptCore-Builtin.prototype-Combined.js
Scripts/tests/builtins/JavaScriptCore-Builtin.prototype-Separate.js
Scripts/tests/builtins/JavaScriptCore-BuiltinConstructor-Combined.js
Scripts/tests/builtins/JavaScriptCore-BuiltinConstructor-Separate.js
Scripts/tests/builtins/WebCore-GuardedBuiltin-Separate.js
Scripts/tests/builtins/WebCore-GuardedInternalBuiltin-Separate.js
Scripts/tests/builtins/WebCore-UnguardedBuiltin-Separate.js
Scripts/tests/builtins/WebCore-xmlCasingTest-Separate.js

  • CMakeLists.txt:

Copy the scripts that are used by other targets to a staging directory inside
${DERIVED_SOURCES_DIR}/ForwardingHeaders/JavaScriptCore/Scripts.
Define JavaScriptCore_SCRIPTS_DIR to point here so that the add_custom_command
and shared file lists are identical between JavaScriptCore and WebCore. The staged
scripts are a dependency of the main JavaScriptCore target so that they are
always staged, even if JavaScriptCore itself does not use a particular script.

The output files additionally depend on all builtin generator script files
and input files that are combined into the single header/implementation file.

  • DerivedSources.make:

Define JavaScriptCore_SCRIPTS_DIR explicitly so the rule for code generation and
shared file lists are identical between JavaScriptCore and WebCore.

The output files additionally depend on all builtin generator script files
and input files that are combined into the single header/implementation file.

Mark the new builtins generator files as private headers so we can use them from
WebCore.

  • Scripts/UpdateContents.py: Renamed from Source/JavaScriptCore/UpdateContents.py.
  • Scripts/builtins/init.py: Added.
  • Scripts/builtins/builtins.py: Added.
  • Scripts/builtins/builtins_generator.py: Added. This file contains the base generator.

(WK_lcfirst):
(WK_ucfirst):
(BuiltinsGenerator):
(BuiltinsGenerator.init):
(BuiltinsGenerator.model):
(BuiltinsGenerator.generate_license):
(BuiltinsGenerator.generate_includes_from_entries):
(BuiltinsGenerator.generate_output):
(BuiltinsGenerator.output_filename):
(BuiltinsGenerator.mangledNameForFunction):
(BuiltinsGenerator.mangledNameForFunction.toCamel):
(BuiltinsGenerator.generate_embedded_code_string_section_for_function):

  • Scripts/builtins/builtins_model.py: Added. This file contains builtins model objects.

(ParseException):
(Framework):
(Framework.init):
(Framework.setting):
(Framework.fromString):
(Frameworks):
(BuiltinObject):
(BuiltinObject.init):
(BuiltinFunction):
(BuiltinFunction.init):
(BuiltinFunction.fromString):
(BuiltinFunction.str):
(BuiltinsCollection):
(BuiltinsCollection.init):
(BuiltinsCollection.parse_builtins_file):
(BuiltinsCollection.copyrights):
(BuiltinsCollection.all_functions):
(BuiltinsCollection._parse_copyright_lines):
(BuiltinsCollection._parse_functions):

  • Scripts/builtins/builtins_templates.py: Added.

(BuiltinsGeneratorTemplates):

  • Scripts/builtins/builtins_generate_combined_header.py: Added.

(BuiltinsCombinedHeaderGenerator):
(BuiltinsCombinedHeaderGenerator.init):
(BuiltinsCombinedHeaderGenerator.output_filename):
(BuiltinsCombinedHeaderGenerator.generate_output):
(BuiltinsCombinedHeaderGenerator.generate_forward_declarations):
(FunctionExecutable):
(VM):
(ConstructAbility):
(generate_section_for_object):
(generate_externs_for_object):
(generate_macros_for_object):
(generate_defines_for_object):
(generate_section_for_code_table_macro):
(generate_section_for_code_name_macro):

  • Scripts/builtins/builtins_generate_combined_implementation.py: Added.

(BuiltinsCombinedImplementationGenerator):
(BuiltinsCombinedImplementationGenerator.init):
(BuiltinsCombinedImplementationGenerator.output_filename):
(BuiltinsCombinedImplementationGenerator.generate_output):
(BuiltinsCombinedImplementationGenerator.generate_header_includes):

  • Scripts/builtins/builtins_generate_separate_header.py: Added.

(BuiltinsSeparateHeaderGenerator):
(BuiltinsSeparateHeaderGenerator.init):
(BuiltinsSeparateHeaderGenerator.output_filename):
(BuiltinsSeparateHeaderGenerator.macro_prefix):
(BuiltinsSeparateHeaderGenerator.generate_output):
(BuiltinsSeparateHeaderGenerator.generate_forward_declarations):
(FunctionExecutable):
(generate_header_includes):
(generate_section_for_object):
(generate_externs_for_object):
(generate_macros_for_object):
(generate_defines_for_object):
(generate_section_for_code_table_macro):
(generate_section_for_code_name_macro):

  • Scripts/builtins/builtins_generate_separate_implementation.py: Added.

(BuiltinsSeparateImplementationGenerator):
(BuiltinsSeparateImplementationGenerator.init):
(BuiltinsSeparateImplementationGenerator.output_filename):
(BuiltinsSeparateImplementationGenerator.macro_prefix):
(BuiltinsSeparateImplementationGenerator.generate_output):
(BuiltinsSeparateImplementationGenerator.generate_header_includes):

  • Scripts/builtins/builtins_generate_separate_wrapper.py: Added.

(BuiltinsSeparateWrapperGenerator):
(BuiltinsSeparateWrapperGenerator.init):
(BuiltinsSeparateWrapperGenerator.output_filename):
(BuiltinsSeparateWrapperGenerator.macro_prefix):
(BuiltinsSeparateWrapperGenerator.generate_output):
(BuiltinsSeparateWrapperGenerator.generate_header_includes):

  • Scripts/generate-js-builtins.py: Added.

Parse command line options, decide which generators and output modes to use.

(generate_bindings_for_builtins_files):

  • Scripts/lazywriter.py: Copied from the inspector protocol generator.

(LazyFileWriter):
(LazyFileWriter.init):
(LazyFileWriter.write):
(LazyFileWriter.close):

  • Scripts/tests/builtins/JavaScriptCore-Builtin.Promise-Combined.js: Added.
  • Scripts/tests/builtins/JavaScriptCore-Builtin.Promise-Separate.js: Added.
  • Scripts/tests/builtins/JavaScriptCore-Builtin.prototype-Combined.js: Added.
  • Scripts/tests/builtins/JavaScriptCore-Builtin.prototype-Separate.js: Added.
  • Scripts/tests/builtins/JavaScriptCore-BuiltinConstructor-Combined.js: Added.
  • Scripts/tests/builtins/JavaScriptCore-BuiltinConstructor-Separate.js: Added.
  • Scripts/tests/builtins/WebCore-GuardedBuiltin-Separate.js: Added.
  • Scripts/tests/builtins/WebCore-GuardedInternalBuiltin-Separate.js: Added.
  • Scripts/tests/builtins/WebCore-UnguardedBuiltin-Separate.js: Added.
  • Scripts/tests/builtins/WebCore-xmlCasingTest-Separate.js: Added.
  • Scripts/tests/builtins/expected/JavaScriptCore-Builtin.Promise-Combined.js-result: Added.
  • Scripts/tests/builtins/expected/JavaScriptCore-Builtin.Promise-Separate.js-result: Added.
  • Scripts/tests/builtins/expected/JavaScriptCore-Builtin.prototype-Combined.js-result: Added.
  • Scripts/tests/builtins/expected/JavaScriptCore-Builtin.prototype-Separate.js-result: Added.
  • Scripts/tests/builtins/expected/JavaScriptCore-BuiltinConstructor-Combined.js-result: Added.
  • Scripts/tests/builtins/expected/JavaScriptCore-BuiltinConstructor-Separate.js-result: Added.
  • Scripts/tests/builtins/expected/WebCore-GuardedBuiltin-Separate.js-result: Added.
  • Scripts/tests/builtins/expected/WebCore-GuardedInternalBuiltin-Separate.js-result: Added.
  • Scripts/tests/builtins/expected/WebCore-UnguardedBuiltin-Separate.js-result: Added.
  • Scripts/tests/builtins/expected/WebCore-xmlCasingTest-Separate.js-result: Added.
  • builtins/BuiltinExecutables.cpp:

(JSC::BuiltinExecutables::BuiltinExecutables):

  • builtins/BuiltinExecutables.h:
  • create_hash_table:

Update the generated builtin macro names.

  • generate-js-builtins: Removed.

Source/WebCore:

  • CMakeLists.txt:

Define JavaScriptCore_SCRIPTS_DIR explicitly so the add_custom_command and
shared file lists are identical between JavaScriptCore and WebCore.

The output files additionally depend on all builtin generator script files.

  • DerivedSources.make:

Use JavaScriptCore_SCRIPTS_DIR so that the rule for code generation and
shared file lists are identical between JavaScriptCore and WebCore.

The output files additionally depend on all builtin generator script files.

  • WebCore.xcodeproj/project.pbxproj:

Define JavaScriptCore_SCRIPTS_DIR before calling DerivedSources.make.
This will eventually be merged with the other similar script paths.

  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::JSDOMWindowBase::finishCreation):

Update the generated builtin macro names.

  • generate-js-builtins: Removed.

Tools:

Add a stub shell script and basic webkitpy support for running builtins
generator tests.

  • Scripts/run-builtins-generator-tests: Added.

(main):

  • Scripts/webkitpy/codegen/init.py: Added.
  • Scripts/webkitpy/codegen/main.py: Added.

The only interesting difference here from the inspector protocol
generator equivalent is that this implementation decodes the target
framework and output mode (combined or separate) from the test's file name.

(BuiltinsGeneratorTests):
(BuiltinsGeneratorTests.init):
(BuiltinsGeneratorTests.generate_from_js_builtins):
(BuiltinsGeneratorTests.write_error_file):
(BuiltinsGeneratorTests.detect_changes):
(BuiltinsGeneratorTests.run_tests):
(BuiltinsGeneratorTests.main):

8:17 PM Changeset in webkit [191432] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

Recommit r191428.

I don't think it was supposed to be reverted in r191429, and it really does fix the build.

  • loader/EmptyClients.h:

(WebCore::EmptyContextMenuClient::~EmptyContextMenuClient):
Remove customizeMenu again.

7:55 PM Changeset in webkit [191431] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Adding http/tests/media/video-load-suspend.html to the list of flaky media tests
https://bugs.webkit.org/show_bug.cgi?id=150408

Patch by Ryan Haddad <Ryan Haddad> on 2015-10-21
Reviewed by Alexey Proskuryakov.

  • platform/mac/TestExpectations:
7:49 PM Changeset in webkit [191430] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Marking imported/blink/fast/overflow/hidden-html-auto-body.html as flaky
https://bugs.webkit.org/show_bug.cgi?id=150419

Patch by Ryan Haddad <Ryan Haddad> on 2015-10-21
Reviewed by Alexey Proskuryakov.

  • platform/mac-wk2/TestExpectations:
7:27 PM Changeset in webkit [191429] by Gyuyoung Kim
  • 12 edits in trunk/Source

[EFL][GTK][WK2] Fix build break since r191402, r191401
https://bugs.webkit.org/show_bug.cgi?id=150432

Unreviewed EFL and GTK build fix.

Source/WebCore:

  • loader/EmptyClients.h:

Source/WebKit2:

  • CMakeLists.txt:
  • UIProcess/CoordinatedGraphics/WebView.cpp:

(WebKit::WebView::createContextMenuProxy):

  • UIProcess/CoordinatedGraphics/WebView.h:
  • UIProcess/efl/WebContextMenuProxyEfl.cpp:

(WebKit::WebContextMenuProxyEfl::show):

  • UIProcess/efl/WebContextMenuProxyEfl.h:

(WebKit::WebContextMenuProxyEfl::create): Deleted.

  • UIProcess/efl/WebViewEfl.cpp:

(WebKit::WebViewEfl::createContextMenuProxy):

  • UIProcess/efl/WebViewEfl.h:
  • WebProcess/WebCoreSupport/WebContextMenuClient.cpp:

(WebKit::WebContextMenuClient::customizeMenu):

  • WebProcess/WebCoreSupport/WebContextMenuClient.h:
7:18 PM Changeset in webkit [191428] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

Build fix after r191422.

  • page/ContextMenuClient.h:

(WebCore::ContextMenuClient::~ContextMenuClient):
Completely remove customizeMenu.

7:02 PM Changeset in webkit [191427] by Gyuyoung Kim
  • 2 edits in trunk/Source/WebCore

Remove unnecessary default quota setting in DatabaseContext::databaseExceededQuota
https://bugs.webkit.org/show_bug.cgi?id=150356

Reviewed by Darin Adler.

All ports have supported DatabaseContext::databaseExceededQuota(). Thus we don't need to
keep a test code to extend database quota anymore.

  • Modules/webdatabase/DatabaseContext.cpp:

(WebCore::DatabaseContext::databaseExceededQuota): Deleted.

6:58 PM Changeset in webkit [191426] by benjamin@webkit.org
  • 4 edits in trunk/Source/JavaScriptCore

[JSC] Remove FTL Native Inlining, it is dead code
https://bugs.webkit.org/show_bug.cgi?id=150429

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-10-21
Reviewed by Filip Pizlo.

The code is not used and it is in the way of other changes.

  • ftl/FTLAbbreviations.h:

(JSC::FTL::getFirstInstruction): Deleted.
(JSC::FTL::getNextInstruction): Deleted.
(JSC::FTL::getFirstBasicBlock): Deleted.
(JSC::FTL::getNextBasicBlock): Deleted.

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::isInlinableSize): Deleted.

  • runtime/Options.h:
6:57 PM Changeset in webkit [191425] by benjamin@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[JSC] Remove two useless temporaries from the PutByOffset codegen
https://bugs.webkit.org/show_bug.cgi?id=150421

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-10-21
Reviewed by Geoffrey Garen.

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile): Deleted.
Looks like they were added by accident in r160796.

6:46 PM Changeset in webkit [191424] by fpizlo@apple.com
  • 11 edits
    1 add
    1 delete in trunk/Source

Factor out the graph node worklists from DFG into WTF
https://bugs.webkit.org/show_bug.cgi?id=150411

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Rewrite the DFGBlockWorklist.h file as a bunch of typedefs and aliases for things in
wtf/GraphNodeWorklist.h. Most users won't notice, except that some small things got
renamed. For example PreOrder becomes VisitOrder::Pre and item.block becomes item.node.

  • CMakeLists.txt:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGBlockWorklist.cpp: Removed.
  • dfg/DFGBlockWorklist.h:

(JSC::DFG::BlockWorklist::notEmpty): Deleted.
(JSC::DFG::BlockWith::BlockWith): Deleted.
(JSC::DFG::BlockWith::operator bool): Deleted.
(JSC::DFG::ExtendedBlockWorklist::ExtendedBlockWorklist): Deleted.
(JSC::DFG::ExtendedBlockWorklist::forcePush): Deleted.
(JSC::DFG::ExtendedBlockWorklist::push): Deleted.
(JSC::DFG::ExtendedBlockWorklist::notEmpty): Deleted.
(JSC::DFG::ExtendedBlockWorklist::pop): Deleted.
(JSC::DFG::BlockWithOrder::BlockWithOrder): Deleted.
(JSC::DFG::BlockWithOrder::operator bool): Deleted.
(JSC::DFG::PostOrderBlockWorklist::push): Deleted.
(JSC::DFG::PostOrderBlockWorklist::notEmpty): Deleted.

  • dfg/DFGDominators.cpp:

(JSC::DFG::Dominators::compute):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::blocksInPostOrder):

  • dfg/DFGPrePostNumbering.cpp:

(JSC::DFG::PrePostNumbering::compute):

Source/WTF:

The new GraphNodeWorklist.h file is basically just the functionality from the old
DFGBlockWorklist.h, but templatized to work for any graph node type and any kind of graph
node set.

  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/GraphNodeWorklist.h: Added.

(WTF::GraphNodeWorklist::push):
(WTF::GraphNodeWorklist::notEmpty):
(WTF::GraphNodeWorklist::pop):
(WTF::GraphNodeWith::GraphNodeWith):
(WTF::GraphNodeWith::operator bool):
(WTF::ExtendedGraphNodeWorklist::ExtendedGraphNodeWorklist):
(WTF::ExtendedGraphNodeWorklist::forcePush):
(WTF::ExtendedGraphNodeWorklist::push):
(WTF::ExtendedGraphNodeWorklist::notEmpty):
(WTF::ExtendedGraphNodeWorklist::pop):
(WTF::GraphNodeWithOrder::GraphNodeWithOrder):
(WTF::GraphNodeWithOrder::operator bool):
(WTF::PostOrderGraphNodeWorklist::PostOrderGraphNodeWorklist):
(WTF::PostOrderGraphNodeWorklist::~PostOrderGraphNodeWorklist):
(WTF::PostOrderGraphNodeWorklist::pushPre):
(WTF::PostOrderGraphNodeWorklist::pushPost):
(WTF::PostOrderGraphNodeWorklist::push):
(WTF::PostOrderGraphNodeWorklist::notEmpty):
(WTF::PostOrderGraphNodeWorklist::pop):

  • wtf/HashTable.h:

(WTF::HashTableAddResult::HashTableAddResult):
(WTF::HashTableAddResult::operator bool):

5:58 PM Changeset in webkit [191423] by Chris Dumez
  • 40 edits
    24 deletes in trunk

Un-expose obsolete HTMLBaseFontElement
https://bugs.webkit.org/show_bug.cgi?id=150397

Reviewed by Anders Carlsson.

LayoutTests/imported/w3c:

Rebaseline a couple of W3C HTML tests now that more checks are passing.

  • web-platform-tests/html/dom/interfaces-expected.txt:
  • web-platform-tests/html/semantics/interfaces-expected.txt:

Source/WebCore:

Un-expose obsolete HTMLBaseFontElement:

This means that we no longer expose HTMLBaseFontElement on the global
Window object. Firefox and Chrome do not expose it either.

Also, document.createElement("basefont") now returns an HTMLUnknownElement
as per the specification. Firefox and Chrome return a generic HTMLElement
instead but I don't think this is a big compatibility risk.

No new tests, already covered by existing tests.

  • html/HTMLBaseFontElement.cpp:

(WebCore::HTMLBaseFontElement::HTMLBaseFontElement):

  • html/HTMLBaseFontElement.h:
  • html/HTMLBaseFontElement.idl:
  • html/HTMLTagNames.in:

LayoutTests:

Update existing layout tests to stop expecting HTMLBaseFontElement to
be exposed.

  • dom/html/level2/html/HTMLBaseFontElement01-expected.txt: Removed.
  • dom/html/level2/html/HTMLBaseFontElement01.html: Removed.
  • dom/html/level2/html/HTMLBaseFontElement01.js: Removed.
  • dom/html/level2/html/HTMLBaseFontElement02-expected.txt: Removed.
  • dom/html/level2/html/HTMLBaseFontElement02.html: Removed.
  • dom/html/level2/html/HTMLBaseFontElement02.js: Removed.
  • dom/html/level2/html/HTMLBaseFontElement03-expected.txt: Removed.
  • dom/html/level2/html/HTMLBaseFontElement03.html: Removed.
  • dom/html/level2/html/HTMLBaseFontElement03.js: Removed.
  • dom/html/level2/html/basefont01-expected.txt: Removed.
  • dom/html/level2/html/basefont01.html: Removed.
  • dom/html/level2/html/basefont01.js: Removed.
  • dom/xhtml/level2/html/HTMLBaseFontElement01-expected.txt: Removed.
  • dom/xhtml/level2/html/HTMLBaseFontElement01.js: Removed.
  • dom/xhtml/level2/html/HTMLBaseFontElement01.xhtml: Removed.
  • dom/xhtml/level2/html/HTMLBaseFontElement02-expected.txt: Removed.
  • dom/xhtml/level2/html/HTMLBaseFontElement02.js: Removed.
  • dom/xhtml/level2/html/HTMLBaseFontElement02.xhtml: Removed.
  • dom/xhtml/level2/html/HTMLBaseFontElement03-expected.txt: Removed.
  • dom/xhtml/level2/html/HTMLBaseFontElement03.js: Removed.
  • dom/xhtml/level2/html/HTMLBaseFontElement03.xhtml: Removed.
  • dom/xhtml/level2/html/basefont01-expected.txt: Removed.
  • dom/xhtml/level2/html/basefont01.js: Removed.
  • dom/xhtml/level2/html/basefont01.xhtml: Removed.

Drop Legacy W3C DOM level 2 basefont tests.

  • fast/dom/Window/element-constructors-on-window-expected.txt:
  • fast/dom/Window/element-constructors-on-window.html:
  • fast/dom/Window/get-set-properties-expected.txt:
  • fast/dom/Window/get-set-properties.html:
  • fast/dom/Window/resources/window-properties.js:
  • fast/dom/Window/window-lookup-precedence-expected.txt:
  • fast/dom/dom-constructors-expected.txt:
  • fast/dom/dom-constructors.html:
  • fast/dom/element-attribute-js-null-expected.txt:
  • fast/dom/element-attribute-js-null.html:
  • fast/dom/html-attribute-types-expected.txt:
  • fast/dom/html-attribute-types.html:
  • fast/dom/wrapper-classes-expected.txt:
  • fast/dom/wrapper-classes.html:
  • js/dom/global-constructors-attributes-expected.txt:
  • platform/efl/js/dom/global-constructors-attributes-expected.txt:
  • platform/gtk/fast/dom/Window/window-lookup-precedence-expected.txt:
  • platform/gtk/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt:
  • platform/mac/js/dom/global-constructors-attributes-expected.txt:
  • platform/win/js/dom/global-constructors-attributes-expected.txt:
5:50 PM Changeset in webkit [191422] by andersca@apple.com
  • 10 edits in trunk/Source

Get rid of WebContextMenuClient::customizeMenu, it's no longer used
https://bugs.webkit.org/show_bug.cgi?id=150427

Reviewed by Tim Horton.
Source/WebCore:

  • loader/EmptyClients.cpp:

(WebCore::EmptyContextMenuClient::customizeMenu): Deleted.

  • loader/EmptyClients.h:
  • page/ContextMenuController.cpp:

(WebCore::ContextMenuController::showContextMenu):

Source/WebKit/win:

  • WebCoreSupport/WebContextMenuClient.cpp:

(WebContextMenuClient::customizeMenu): Deleted.

  • WebCoreSupport/WebContextMenuClient.h:

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebContextMenuClient.cpp:

(WebKit::WebContextMenuClient::customizeMenu): Deleted.

  • WebProcess/WebCoreSupport/WebContextMenuClient.h:
5:50 PM Changeset in webkit [191421] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: srcset attributes should have hyperlinks to the resources
https://bugs.webkit.org/show_bug.cgi?id=150409

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-10-21
Reviewed by Timothy Hatcher.

The "srcset" attribute parsing is a simplification of:
https://html.spec.whatwg.org/multipage/embedded-content.html#attr-img-srcset

The "srcset" attribute value is expected to be in comma
separated groups. Within each group we always expect a link,
and an optional descriptor. We want to linkify the link.

  • UserInterface/Views/CodeMirrorAdditions.js:

(tokenizeSrcSetString):
(extendedXMLToken):
When parsing srcset attribute, parse links as link tokens
so that they are linkified in resource content views.

  • UserInterface/Views/DOMTreeElement.js:

(WebInspector.DOMTreeElement.prototype._buildAttributeDOM):
When creating the DOMTree DOM for srcset attributes,
create link elements for the link values of attribute value.

5:46 PM Changeset in webkit [191420] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

Remove dead MHTML code
https://bugs.webkit.org/show_bug.cgi?id=150426

Reviewed by Tim Horton.

  • loader/archive/mhtml/MHTMLArchive.cpp:

(WebCore::MHTMLArchive::generateMHTMLData):
(WebCore::MHTMLArchive::generateMHTMLDataUsingBinaryEncoding): Deleted.

  • loader/archive/mhtml/MHTMLArchive.h:
5:31 PM Changeset in webkit [191419] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Autocompletion previews in the CSS sidebar do not apply
https://bugs.webkit.org/show_bug.cgi?id=147720

Patch by Devin Rousso <Devin Rousso> on 2015-10-21
Reviewed by Timothy Hatcher.

When autocompletion hints are added to styles or the console, the history
object used by CodeMirror was edited to remove the last entry. Instead of
using this method (which caused glitchy behaviour when undo-ing), call
CodeMirror.undo() and adjust accordingly. In addition, a marker was being
used as the completion hint instead of applying text, whereas these
changes use actual text, ensuring that completions are previewed in the page.

  • UserInterface/Controllers/CodeMirrorCompletionController.js:

(WebInspector.CodeMirrorCompletionController):
(WebInspector.CodeMirrorCompletionController.prototype.close):
(WebInspector.CodeMirrorCompletionController.prototype._applyCompletionHint.update):
(WebInspector.CodeMirrorCompletionController.prototype._commitCompletionHint.update):
(WebInspector.CodeMirrorCompletionController.prototype._removeCompletionHint.update):
(WebInspector.CodeMirrorCompletionController.prototype._removeCompletionHint):
(WebInspector.CodeMirrorCompletionController.prototype._handleBeforeChange):
(WebInspector.CodeMirrorCompletionController.prototype._createCompletionHintMarker): Deleted.
(WebInspector.CodeMirrorCompletionController.prototype._removeCompletionHint.clearMarker): Deleted.

5:29 PM Changeset in webkit [191418] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Add forgotten WebInspector.UIString from r190521
https://bugs.webkit.org/show_bug.cgi?id=150425

Patch by Devin Rousso <Devin Rousso> on 2015-10-21
Reviewed by Timothy Hatcher.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Views/CSSStyleDeclarationTextEditor.js:

(UserInterface/Views/CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded)

5:26 PM Changeset in webkit [191417] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebInspectorUI

Web Inspector: Adjust usages of classList.toggle to ensure a true/false value instead of undefined
https://bugs.webkit.org/show_bug.cgi?id=150424

Patch by Devin Rousso <Devin Rousso> on 2015-10-21
Reviewed by Timothy Hatcher.

Adds "!!" in front of force parameters in classList.toggle calls that
could possibly be undefined (thereby breaking the UI).

  • UserInterface/Views/ScopeBarItem.js:

(WebInspector.ScopeBarItem):

  • UserInterface/Views/VisualStyleDetailsPanel.js:

(WebInspector.VisualStyleDetailsPanel.prototype._updateSections):

  • UserInterface/Views/VisualStylePropertyEditor.js:

(WebInspector.VisualStylePropertyEditor):

5:13 PM Changeset in webkit [191416] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Option-Up doesn't increment certain attribute values
https://bugs.webkit.org/show_bug.cgi?id=149257

Patch by Devin Rousso <Devin Rousso> on 2015-10-21
Reviewed by Brian Burg.

If the user tries to modify a numerical attribute in HTML and the cursor
was at the beginning of the attribute value, the range of the selection
was within a sibling element instead of the text node containin the value.
This patch fixes this issue and ensures that the correct text is selected.

  • UserInterface/Views/EditingSupport.js:

(WebInspector.startEditing.handleEditingResult):
Replaced var with let.

5:07 PM Changeset in webkit [191415] by timothy_horton@apple.com
  • 5 edits
    1 add
    2 deletes in trunk/Source/WebKit2

API-ify the FindMatches client
https://bugs.webkit.org/show_bug.cgi?id=150422

Reviewed by Anders Carlsson.

  • UIProcess/API/APIFindMatchesClient.h: Renamed from Source/WebKit2/UIProcess/WebFindClient.h.

(API::FindMatchesClient::~FindMatchesClient):
(API::FindMatchesClient::didFindStringMatches):
(API::FindMatchesClient::didGetImageForMatchResult):

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageFindMatchesClient):

  • UIProcess/WebFindClient.cpp: Removed.
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::setFindMatchesClient):
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::didGetImageForFindMatch):
(WebKit::WebPageProxy::didFindStringMatches):
(WebKit::WebPageProxy::initializeFindMatchesClient): Deleted.

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::findMatchesClient):

  • WebKit2.xcodeproj/project.pbxproj:
5:02 PM Changeset in webkit [191414] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

WebProcess crashes when accessibility bundle is not found.
https://bugs.webkit.org/show_bug.cgi?id=150414

Reviewed by Dan Bernstein.

The uninitialized pointer to NSError causes the print function to crash.

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::registerWithAccessibility):

4:54 PM Changeset in webkit [191413] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit/win

Simplify context menu handling on Windows
https://bugs.webkit.org/show_bug.cgi?id=150423

Reviewed by Tim Horton.

Instead of converting a ContextMenu to a HMENU, then back to a ContextMenu, and then back to a HMENU again
just convert it once right before showing it and let the UIDelegate return a new menu at at time where we don't
have to convert it back.

  • WebCoreSupport/WebContextMenuClient.cpp:

(WebContextMenuClient::customizeMenu):

  • WebView.cpp:

(WebView::createContextMenu):
(WebView::handleContextMenuEvent):

  • WebView.h:
4:14 PM Changeset in webkit [191412] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Move services menu handling out into a separate function
https://bugs.webkit.org/show_bug.cgi?id=150420

Reviewed by Tim Horton.

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

(WebKit::WebContextMenuProxyMac::showServicesMenu):
(WebKit::WebContextMenuProxyMac::show):
(WebKit::WebContextMenuProxyMac::showContextMenu):
(WebKit::WebContextMenuProxyMac::populate): Deleted.

4:10 PM Changeset in webkit [191411] by bshafiei@apple.com
  • 13 edits
    3 deletes in tags/Safari-602.1.8

Roll out r191360. rdar://problem/23205990

4:05 PM Changeset in webkit [191410] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

run-webkit-tests does not copy all crash logs for layout test failures on Mac
https://bugs.webkit.org/show_bug.cgi?id=150407
<rdar://problem/22239750>

Patch by Aakash Jain <aakash_jain@apple.com> on 2015-10-21
Reviewed by Alexey Proskuryakov.

  • Scripts/webkitpy/port/mac.py:

(MacPort._merge_crash_logs): Merge unique crash logs from two dictionaries.
(MacPort._look_for_all_crash_logs_in_log_dir): Get the crash logs from
the log directory.
(MacPort.look_for_new_crash_logs): Uses above method to get crash logs
from log directory and merge them with the list of already crashed tests.

3:30 PM Changeset in webkit [191409] by Wenson Hsieh
  • 3 edits in trunk/Source/WebKit2

Single tapping clickable elements in unscalable pages should show a tap highlight
https://bugs.webkit.org/show_bug.cgi?id=150382

Reviewed by Simon Fraser.

When the double tap gesture recognizer is disabled ahead of time (as in the case of unscalable pages) the tap is
committed before the geometries come in. To fix this, we introduce a flag that allows the single tap to be
committed before the tap highlight arrives. This allows the tap highlight to be immediately animated when receiving
the tap highlight geometries only in the case where double tapping is disabled when recognizing the single tap.

  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView setupInteraction]):
(-[WKContentView cleanupInteraction]):
(-[WKContentView _didGetTapHighlightForRequest:color:quads:topLeftRadius:topRightRadius:bottomLeftRadius:bottomRightRadius:]):
(-[WKContentView _singleTapRecognized:]):
(-[WKContentView _singleTapCommited:]):

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

Get rid of useBinaryEncoding from WKPageGetContentsAsMHTMLData
https://bugs.webkit.org/show_bug.cgi?id=150417

Reviewed by Tim Horton.

The useBinaryEncoding parameter is always false, so just get rid of it.

  • UIProcess/API/C/WKPage.cpp:

(WKPageGetContentsAsMHTMLData):

  • UIProcess/API/C/WKPage.h:
  • UIProcess/API/efl/ewk_view.cpp:

(ewk_view_page_contents_get):

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkit_web_view_save):
(webkit_web_view_save_to_file):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::getContentsAsMHTMLData):

  • UIProcess/WebPageProxy.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::getContentsAsMHTMLData):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
3:17 PM Changeset in webkit [191407] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

WebContextMenuProxyMac::setupServicesMenu doesn't need to take a context parameter
https://bugs.webkit.org/show_bug.cgi?id=150418

Reviewed by Tim Horton.

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

(WebKit::WebContextMenuProxyMac::setupServicesMenu):
(WebKit::WebContextMenuProxyMac::populate):

3:14 PM Changeset in webkit [191406] by Sukolsak Sakshuwong
  • 10 edits in trunk

[INTL] Implement Intl.Collator.prototype.resolvedOptions ()
https://bugs.webkit.org/show_bug.cgi?id=147601

Reviewed by Benjamin Poulain.

Source/JavaScriptCore:

This patch implements Intl.Collator.prototype.resolvedOptions() according
to the ECMAScript 2015 Internationalization API spec (ECMA-402 2nd edition.)
It also implements the abstract operations InitializeCollator, ResolveLocale,
LookupMatcher, and BestFitMatcher.

  • runtime/CommonIdentifiers.h:
  • runtime/IntlCollator.h:

(JSC::IntlCollator::usage):
(JSC::IntlCollator::setUsage):
(JSC::IntlCollator::locale):
(JSC::IntlCollator::setLocale):
(JSC::IntlCollator::collation):
(JSC::IntlCollator::setCollation):
(JSC::IntlCollator::numeric):
(JSC::IntlCollator::setNumeric):
(JSC::IntlCollator::sensitivity):
(JSC::IntlCollator::setSensitivity):
(JSC::IntlCollator::ignorePunctuation):
(JSC::IntlCollator::setIgnorePunctuation):

  • runtime/IntlCollatorConstructor.cpp:

(JSC::sortLocaleData):
(JSC::searchLocaleData):
(JSC::initializeCollator):
(JSC::constructIntlCollator):
(JSC::callIntlCollator):

  • runtime/IntlCollatorPrototype.cpp:

(JSC::IntlCollatorPrototypeFuncResolvedOptions):

  • runtime/IntlObject.cpp:

(JSC::defaultLocale):
(JSC::getIntlBooleanOption):
(JSC::getIntlStringOption):
(JSC::removeUnicodeLocaleExtension):
(JSC::lookupMatcher):
(JSC::bestFitMatcher):
(JSC::resolveLocale):
(JSC::lookupSupportedLocales):

  • runtime/IntlObject.h:

LayoutTests:

  • js/intl-collator-expected.txt:
  • js/script-tests/intl-collator.js:

(testCollator):

3:08 PM Changeset in webkit [191405] by bshafiei@apple.com
  • 1 copy in tags/Safari-602.1.8

New tag.

2:49 PM Changeset in webkit [191404] by sbarati@apple.com
  • 9 edits in trunk/Source/JavaScriptCore

C calls in PolymorphicAccess shouldn't assume that the top of the stack looks like a JSC JIT frame and enable *ByIdFlush in FTL
https://bugs.webkit.org/show_bug.cgi?id=125711

Reviewed by Filip Pizlo.

This patch ensures that anytime we need to make a C call inside
PolymorphicAccess, we ensure there is enough space on the stack to do so.

This patch also enables GetByIdFlush/PutByIdFlush inside the FTL.
Because PolymorphicAccess now spills the necessary registers
before making a JS/C call, any registers that LLVM report as
being in use for the patchpoint will be spilled before making
a call by PolymorphicAccess.

  • bytecode/PolymorphicAccess.cpp:

(JSC::AccessGenerationState::restoreScratch):
(JSC::AccessGenerationState::succeed):
(JSC::AccessGenerationState::calculateLiveRegistersForCallAndExceptionHandling):
(JSC::AccessCase::generate):
(JSC::PolymorphicAccess::regenerate):

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileNode):
(JSC::FTL::DFG::LowerDFGToLLVM::compileGetById):
(JSC::FTL::DFG::LowerDFGToLLVM::emitStoreBarrier):

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::emitTypeOf):
(JSC::AssemblyHelpers::makeSpaceOnStackForCCall):
(JSC::AssemblyHelpers::reclaimSpaceOnStackForCCall):

  • jit/RegisterSet.cpp:

(JSC::RegisterSet::webAssemblyCalleeSaveRegisters):
(JSC::RegisterSet::registersToNotSaveForJSCall):
(JSC::RegisterSet::registersToNotSaveForCCall):
(JSC::RegisterSet::allGPRs):
(JSC::RegisterSet::registersToNotSaveForCall): Deleted.

  • jit/RegisterSet.h:

(JSC::RegisterSet::set):

  • jit/ScratchRegisterAllocator.cpp:

(JSC::ScratchRegisterAllocator::allocateScratchGPR):
(JSC::ScratchRegisterAllocator::allocateScratchFPR):
(JSC::ScratchRegisterAllocator::preserveReusedRegistersByPushing):
(JSC::ScratchRegisterAllocator::restoreReusedRegistersByPopping):
These methods now take an extra parameter indicating if they
should create space for a C call at the top of the stack if
there are any reused registers to spill.

(JSC::ScratchRegisterAllocator::usedRegistersForCall):

  • jit/ScratchRegisterAllocator.h:

(JSC::ScratchRegisterAllocator::usedRegisters):

2:45 PM Changeset in webkit [191403] by dino@apple.com
  • 4 edits
    2 adds in trunk

Null dereference loading Blink layout test svg/filters/display-none-filter-primitive.html
https://bugs.webkit.org/show_bug.cgi?id=150212
<rdar://problem/23137376>

Reviewed by Brent Fulgham.

Source/WebCore:

Handle the case where a filter element doesn't have a renderer. Inspired by the Blink
commit:
https://chromium.googlesource.com/chromium/src.git/+/fb79f7fc46552d45127acd2959a23662ad8f271e

Test: svg/filters/display-none-filter-primitive.html

  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::buildPrimitives):

  • svg/graphics/filters/SVGFilterBuilder.cpp:

(WebCore::SVGFilterBuilder::appendEffectToEffectReferences):

LayoutTests:

  • svg/filters/display-none-filter-primitive-expected.txt: Added.
  • svg/filters/display-none-filter-primitive.html: Added.
2:26 PM Changeset in webkit [191402] by andersca@apple.com
  • 11 edits in trunk/Source/WebKit2

WebContextMenuProxy doesn't have to be ref-counted
https://bugs.webkit.org/show_bug.cgi?id=150415

Reviewed by Tim Horton.

Change WebContextMenuProxy to not inherit from RefCounted. Instead of using RefPtr, use std::unique_ptr.
Get rid of cancelTracking and hideContextMenu and dismiss the menu whenever the menu proxy is destroyed.
Also, rename showContextMenu to show.

  • UIProcess/PageClient.h:
  • UIProcess/WebContextMenuProxy.h:

(WebKit::WebContextMenuProxy::cancelTracking): Deleted.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::internalShowContextMenu):

  • UIProcess/WebPageProxy.h:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::createContextMenuProxy):

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

(WebKit::PageClientImpl::createContextMenuProxy):

  • UIProcess/mac/WebContextMenuProxyMac.h:

(WebKit::WebContextMenuProxyMac::create): Deleted.

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(WebKit::WebContextMenuProxyMac::~WebContextMenuProxyMac):
(WebKit::WebContextMenuProxyMac::show):
(WebKit::WebContextMenuProxyMac::showContextMenu): Deleted.
(WebKit::WebContextMenuProxyMac::hideContextMenu): Deleted.
(WebKit::WebContextMenuProxyMac::cancelTracking): Deleted.

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

Stop using a popup menu button cell(!) for context menus
https://bugs.webkit.org/show_bug.cgi?id=150413

Reviewed by Tim Horton.

Just use a regular NSMenu. Also, have the service menu code path store the service menu
in the same member variable.

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

(WebKit::WebContextMenuProxyMac::setupServicesMenu):
(WebKit::WebContextMenuProxyMac::clearServicesMenu):
(WebKit::WebContextMenuProxyMac::populate):
(WebKit::WebContextMenuProxyMac::showContextMenu):
(WebKit::WebContextMenuProxyMac::hideContextMenu):
(WebKit::WebContextMenuProxyMac::cancelTracking):
(WebKit::WebContextMenuProxyMac::~WebContextMenuProxyMac): Deleted.

1:22 PM Changeset in webkit [191400] by beidson@apple.com
  • 30 edits
    2 copies
    4 adds in trunk

Modern IDB: Add basic transaction aborting.
https://bugs.webkit.org/show_bug.cgi?id=150148

Reviewed by Alex Christensen.

Source/WebCore:

Tests: storage/indexeddb/modern/double-abort.html

storage/indexeddb/modern/versionchange-abort-then-reopen.html

  • CMakeLists.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • Modules/indexeddb/IndexedDB.h:
  • Modules/indexeddb/client/IDBConnectionToServer.cpp:

(WebCore::IDBClient::IDBConnectionToServer::abortTransaction):
(WebCore::IDBClient::IDBConnectionToServer::didAbortTransaction):

  • Modules/indexeddb/client/IDBConnectionToServer.h:
  • Modules/indexeddb/client/IDBConnectionToServerDelegate.h:
  • Modules/indexeddb/client/IDBDatabaseImpl.cpp:

(WebCore::IDBClient::IDBDatabase::abortTransaction):
(WebCore::IDBClient::IDBDatabase::didCommitOrAbortTransaction):

  • Modules/indexeddb/client/IDBDatabaseImpl.h:
  • Modules/indexeddb/client/IDBTransactionImpl.cpp:

(WebCore::IDBClient::IDBTransaction::IDBTransaction):
(WebCore::IDBClient::IDBTransaction::abort):
(WebCore::IDBClient::IDBTransaction::isFinishedOrFinishing):
(WebCore::IDBClient::IDBTransaction::activationTimerFired):
(WebCore::IDBClient::IDBTransaction::didAbort):

  • Modules/indexeddb/client/IDBTransactionImpl.h:
  • Modules/indexeddb/server/IDBBackingStore.h:
  • Modules/indexeddb/server/IDBConnectionToClient.cpp:

(WebCore::IDBServer::IDBConnectionToClient::didAbortTransaction):

  • Modules/indexeddb/server/IDBConnectionToClient.h:
  • Modules/indexeddb/server/IDBConnectionToClientDelegate.h:
  • Modules/indexeddb/server/IDBServer.cpp:

(WebCore::IDBServer::IDBServer::abortTransaction):

  • Modules/indexeddb/server/IDBServer.h:
  • Modules/indexeddb/server/MemoryBackingStoreTransaction.cpp:

(WebCore::IDBServer::MemoryBackingStoreTransaction::create):
(WebCore::IDBServer::MemoryBackingStoreTransaction::MemoryBackingStoreTransaction):
(WebCore::IDBServer::MemoryBackingStoreTransaction::~MemoryBackingStoreTransaction):
(WebCore::IDBServer::MemoryBackingStoreTransaction::abort):
(WebCore::IDBServer::MemoryBackingStoreTransaction::commit):

  • Modules/indexeddb/server/MemoryBackingStoreTransaction.h:

(WebCore::IDBServer::MemoryBackingStoreTransaction::isVersionChange):

  • Modules/indexeddb/server/MemoryIDBBackingStore.cpp:

(WebCore::IDBServer::MemoryIDBBackingStore::setDatabaseInfo):
(WebCore::IDBServer::MemoryIDBBackingStore::beginTransaction):
(WebCore::IDBServer::MemoryIDBBackingStore::abortTransaction):
(WebCore::IDBServer::MemoryIDBBackingStore::commitTransaction):

  • Modules/indexeddb/server/MemoryIDBBackingStore.h:
  • Modules/indexeddb/server/UniqueIDBDatabase.cpp:

(WebCore::IDBServer::UniqueIDBDatabase::startVersionChangeTransaction):
(WebCore::IDBServer::UniqueIDBDatabase::beginTransactionInBackingStore):
(WebCore::IDBServer::UniqueIDBDatabase::commitTransaction):
(WebCore::IDBServer::UniqueIDBDatabase::performCommitTransaction):
(WebCore::IDBServer::UniqueIDBDatabase::didPerformCommitTransaction):
(WebCore::IDBServer::UniqueIDBDatabase::abortTransaction):
(WebCore::IDBServer::UniqueIDBDatabase::performAbortTransaction):
(WebCore::IDBServer::UniqueIDBDatabase::didPerformAbortTransaction):

  • Modules/indexeddb/server/UniqueIDBDatabase.h:
  • Modules/indexeddb/server/UniqueIDBDatabaseConnection.cpp:

(WebCore::IDBServer::UniqueIDBDatabaseConnection::didAbortTransaction):

  • Modules/indexeddb/server/UniqueIDBDatabaseConnection.h:
  • Modules/indexeddb/server/UniqueIDBDatabaseTransaction.cpp:

(WebCore::IDBServer::UniqueIDBDatabaseTransaction::UniqueIDBDatabaseTransaction):
(WebCore::IDBServer::UniqueIDBDatabaseTransaction::originalDatabaseInfo):
(WebCore::IDBServer::UniqueIDBDatabaseTransaction::abort):

  • Modules/indexeddb/server/UniqueIDBDatabaseTransaction.h:
  • Modules/indexeddb/shared/IDBError.cpp:

(WebCore::idbErrorName):
(WebCore::idbErrorDescription):

  • Modules/indexeddb/shared/IDBError.h:
  • Modules/indexeddb/shared/InProcessIDBServer.cpp:

(WebCore::InProcessIDBServer::didAbortTransaction):
(WebCore::InProcessIDBServer::abortTransaction):

  • Modules/indexeddb/shared/InProcessIDBServer.h:

LayoutTests:

  • storage/indexeddb/modern/double-abort-expected.txt: Added.
  • storage/indexeddb/modern/double-abort.html: Added.
  • storage/indexeddb/modern/versionchange-abort-then-reopen-expected.txt: Added.
  • storage/indexeddb/modern/versionchange-abort-then-reopen.html: Added.
1:07 PM Changeset in webkit [191399] by commit-queue@webkit.org
  • 10 edits
    1 copy in trunk/Source/WebInspectorUI

Web Inspector: Use some CSS Variables in Web Inspector
https://bugs.webkit.org/show_bug.cgi?id=150405

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-10-21
Reviewed by Timothy Hatcher.

  • UserInterface/Main.html:

Include the new variables stylesheet.

  • UserInterface/Views/Variables.css: Added.

(:root):
Introduce new global variables.

  • UserInterface/Views/CSSStyleDeclarationTextEditor.css:

(.css-style-text-editor > .CodeMirror .cm-link):

  • UserInterface/Views/ConsoleMessageView.css:

(.console-message-preview-divider):
(.console-message-enclosed):
(.console-message .console-message-extra-parameters-container > li::before):
(.console-saved-variable):

  • UserInterface/Views/DOMTreeOutline.css:

(.dom-tree-outline li.selected > span::after):

  • UserInterface/Views/FormattedValue.css:

(:matches(.formatted-array, .formatted-map, .formatted-set, .formatted-weakmap, .formatted-weakset) > .size):
(.formatted-number):
(.formatted-boolean):
(.formatted-string):
(.formatted-regexp):
(.formatted-symbol):

  • UserInterface/Views/ObjectPreviewView.css:

(.object-preview > .size):

  • UserInterface/Views/ObjectTreeArrayIndexTreeElement.css:

(.object-tree-array-index .index-name):

  • UserInterface/Views/SyntaxHighlightingDefaultTheme.css:

(.syntax-highlighted :matches(.css-keyword, .css-tag, .css-at-rule, .css-important, .javascript-keyword, .html-tag)):
(.syntax-highlighted :matches(.css-number, .javascript-number)):
(.syntax-highlighted :matches(.css-string, .javascript-string, .html-attribute-value)):
(.syntax-highlighted .javascript-regexp):

  • UserInterface/Views/TypeTokenView.css:

(.type-token-symbol):
Make use of variables.

1:04 PM Changeset in webkit [191398] by Chris Dumez
  • 5 edits in trunk

bgsound should use HTMLUnknownElement interface
https://bugs.webkit.org/show_bug.cgi?id=148857
<rdar://problem/22589036>

Reviewed by Sam Weinig.

LayoutTests/imported/w3c:

Rebaseline a couple of W3C HTML tests now that more checks are passing.

  • web-platform-tests/html/dom/interfaces-expected.txt:
  • web-platform-tests/html/semantics/interfaces-expected.txt:

Source/WebCore:

The blink, bgsound, isindex, multicol, nextid, and spacer elements must
use the HTMLUnknownElement interface, as per the HTML specification:
https://html.spec.whatwg.org/multipage/obsolete.html#other-elements,-attributes-and-apis

WebKit was using HTMLUnknownElement for all of them except bgsound.
This patch fixes the issue and aligns our behavior with Chrome and
Firefox.

No new tests, already covered by existing tests.

  • html/HTMLTagNames.in:
12:56 PM Changeset in webkit [191397] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Web Inspector: Array previews with Symbol objects have too few preview values
https://bugs.webkit.org/show_bug.cgi?id=150404

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-10-21
Reviewed by Timothy Hatcher.

  • inspector/InjectedScriptSource.js:

(InjectedScript.RemoteObject.prototype._appendPropertyPreviews):
We should be continuing inside this loop not returning.

11:53 AM Changeset in webkit [191396] by bshafiei@apple.com
  • 5 edits in trunk/Source

Versioning.

11:45 AM Changeset in webkit [191395] by fpizlo@apple.com
  • 6 edits in trunk

Failures in PutStackSinkingPhase should be less severe
https://bugs.webkit.org/show_bug.cgi?id=150400

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Make the PutStackSinkingPhase abort instead of asserting. To test that it's OK to not have
PutStackSinkingPhase run, this adds a test mode where we run without PutStackSinkingPhase.

  • dfg/DFGPlan.cpp: Make it possible to not run PutStackSinkingPhase for tests.

(JSC::DFG::Plan::compileInThreadImpl):

  • dfg/DFGPutStackSinkingPhase.cpp: PutStackSinkingPhase should abort instead of asserting, except when validation is enabled.
  • runtime/Options.h: Add an option for disabling PutStackSinkingPhase.

Tools:

Add a test mode for no PutStackSinkingPhase.

  • Scripts/run-jsc-stress-tests:
11:44 AM Changeset in webkit [191394] by sbarati@apple.com
  • 10 edits in trunk/Source/JavaScriptCore

The FTL should place the CallSiteIndex on the call frame for JS calls when it fills in the patchpoint
https://bugs.webkit.org/show_bug.cgi?id=150104

Reviewed by Filip Pizlo.

We lower JS Calls to patchpoints in LLVM. LLVM may decide to duplicate
these patchpoints (or remove them). We eagerly store the CallSiteIndex on the
call frame when lowering DFG to LLVM. But, because the patchpoint we lower to may
be duplicated, we really don't know the unique CallSiteIndex until we've
actually seen the resulting patchpoints after LLVM has completed its transformations.
To solve this, we now store the unique CallSiteIndex on the call frame header
when generating code to fill into the patchpoint.

  • ftl/FTLCompile.cpp:

(JSC::FTL::mmAllocateDataSection):

  • ftl/FTLJSCall.cpp:

(JSC::FTL::JSCall::JSCall):
(JSC::FTL::JSCall::emit):

  • ftl/FTLJSCall.h:

(JSC::FTL::JSCall::stackmapID):

  • ftl/FTLJSCallBase.cpp:

(JSC::FTL::JSCallBase::JSCallBase):
(JSC::FTL::JSCallBase::emit):
(JSC::FTL::JSCallBase::link):

  • ftl/FTLJSCallBase.h:
  • ftl/FTLJSCallVarargs.cpp:

(JSC::FTL::JSCallVarargs::JSCallVarargs):
(JSC::FTL::JSCallVarargs::numSpillSlotsNeeded):
(JSC::FTL::JSCallVarargs::emit):

  • ftl/FTLJSCallVarargs.h:

(JSC::FTL::JSCallVarargs::node):
(JSC::FTL::JSCallVarargs::stackmapID):

  • ftl/FTLJSTailCall.cpp:

(JSC::FTL::JSTailCall::JSTailCall):
(JSC::FTL::m_instructionOffset):
(JSC::FTL::JSTailCall::emit):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileCallOrConstruct):
(JSC::FTL::DFG::LowerDFGToLLVM::compileCallOrConstructVarargs):
(JSC::FTL::DFG::LowerDFGToLLVM::callPreflight):
(JSC::FTL::DFG::LowerDFGToLLVM::codeOriginDescriptionOfCallSite):
(JSC::FTL::DFG::LowerDFGToLLVM::callCheck):

11:42 AM Changeset in webkit [191393] by ggaren@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Date creation should share a little code
https://bugs.webkit.org/show_bug.cgi?id=150399

Reviewed by Filip Pizlo.

I want to fix a bug in this code, but I don't want to fix it in two
different places. (See https://bugs.webkit.org/show_bug.cgi?id=150386.)

  • runtime/DateConstructor.cpp:

(JSC::DateConstructor::getOwnPropertySlot):
(JSC::milliseconds): Factored out a shared helper function. If you look
closely, you'll see that one copy of this code previously checked isfinite
while the other checked isnan. isnan returning nan was obviously a no-op,
so I removed it. isfinite, it turns out, is also a no-op -- but less
obviously so, so I kept it for now.

(JSC::constructDate):
(JSC::dateUTC): Use the helper function.

11:29 AM Changeset in webkit [191392] by commit-queue@webkit.org
  • 5 edits
    2 copies
    2 moves in trunk

Support for the SVG onend attribute
https://bugs.webkit.org/show_bug.cgi?id=150393

Patch by Antoine Quint <Antoine Quint> on 2015-10-21
Reviewed by Dean Jackson.

Source/WebCore:

Add support for the SVG onend attribute to SVG timing and animation elements, which allow the definition
of a JS event listener declaratively for the SVG endEvent event.

Tests: svg/animations/end-event-attribute-expected.svg

svg/animations/end-event-attribute.svg
svg/animations/end-event-syncbase-expected.svg
svg/animations/end-event-syncbase.svg

  • dom/EventNames.h:
  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::parseAttribute):

  • svg/svgattrs.in:

LayoutTests:

Create a new test for the onend attribute and rename the previously-named "end-event-declarative.svg" test to
"end-event-syncbase.svg" since the term "declarative" was a little loose.

  • svg/animations/end-event-attribute-expected.svg: Copied from LayoutTests/svg/animations/end-event-declarative-expected.svg.
  • svg/animations/end-event-attribute.svg: Copied from LayoutTests/svg/animations/end-event-declarative.svg.
  • svg/animations/end-event-syncbase-expected.svg: Renamed from LayoutTests/svg/animations/end-event-declarative-expected.svg.
  • svg/animations/end-event-syncbase.svg: Renamed from LayoutTests/svg/animations/end-event-declarative.svg.
10:46 AM Changeset in webkit [191391] by n_wang@apple.com
  • 9 edits
    2 moves in trunk

AX: Expose table size and cell indexes on iOS
https://bugs.webkit.org/show_bug.cgi?id=150366

Source/WebCore:

Add support to expose table row/column count and cell indexes on iOS.

Reviewed by Chris Fleizach.

Test: accessibility/aria-table-attributes.html

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper tableParent]):
(-[WebAccessibilityObjectWrapper accessibilityElementForRow:andColumn:]):
(-[WebAccessibilityObjectWrapper accessibilityRowCount]):
(-[WebAccessibilityObjectWrapper accessibilityColumnCount]):
(-[WebAccessibilityObjectWrapper accessibilityARIARowCount]):
(-[WebAccessibilityObjectWrapper accessibilityARIAColumnCount]):
(-[WebAccessibilityObjectWrapper accessibilityARIARowIndex]):
(-[WebAccessibilityObjectWrapper accessibilityARIAColumnIndex]):
(-[WebAccessibilityObjectWrapper accessibilityRowRange]):

Tools:

Reviewed by Chris Fleizach.

  • DumpRenderTree/ios/AccessibilityUIElementIOS.mm:

(AccessibilityUIElement::rowCount):
(AccessibilityUIElement::columnCount):
(AccessibilityUIElement::indexInTable):
(AccessibilityUIElement::numberAttributeValue):

  • WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:

(WTR::AccessibilityUIElement::numberAttributeValue):
(WTR::AccessibilityUIElement::rowCount):
(WTR::AccessibilityUIElement::columnCount):
(WTR::AccessibilityUIElement::indexInTable):

LayoutTests:

Reviewed by Chris Fleizach.

  • accessibility/aria-table-attributes-expected.txt: Added.
  • accessibility/aria-table-attributes.html: Added.
  • accessibility/mac/aria-table-attributes-expected.txt: Removed.
  • accessibility/mac/aria-table-attributes.html: Removed.
  • platform/gtk/TestExpectations:
  • platform/ios-simulator/TestExpectations:
  • platform/win/TestExpectations:
10:12 AM Changeset in webkit [191390] by Chris Dumez
  • 2 edits in trunk/Source/WebKit2

Add assertions to NetworkCache::Entry constructor to make sure a key's type is "resource"
https://bugs.webkit.org/show_bug.cgi?id=150369

Reviewed by Antti Koivisto.

Add assertions to NetworkCache::Entry constructor to make sure a key's
type is "resource" now that the NetworkCache storage supports other
types of entries.

  • NetworkProcess/cache/NetworkCacheEntry.cpp:

(WebKit::NetworkCache::Entry::Entry):

10:12 AM WebKitNightlyElCapWorkaround edited by timothy@apple.com
(diff)
10:08 AM Changeset in webkit [191389] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

llint: align stack pointer on mips too

[MIPS] LLInt: align stack pointer on MIPS too
https://bugs.webkit.org/show_bug.cgi?id=150380

Patch by Guillaume Emont <guijemont@igalia.com> on 2015-10-21
Reviewed by Michael Saboff.

  • llint/LowLevelInterpreter32_64.asm:
10:00 AM Changeset in webkit [191388] by Chris Dumez
  • 7 edits
    2 adds in trunk

HTMLIFrameElement.sandbox should be a DOMSettableTokenList
https://bugs.webkit.org/show_bug.cgi?id=150377

Reviewed by Ryosuke Niwa.

Source/WebCore:

HTMLIFrameElement.sandbox should be a DOMSettableTokenList as per the
HTML specification:

Chrome and Firefox match the specification but Safari/WebKit was uding
a DOMString.

Test: fast/frames/sandbox-attribute.html

  • html/HTMLIFrameElement.cpp:

(WebCore::HTMLIFrameElement::sandbox):
(WebCore::HTMLIFrameElement::parseAttribute):

  • html/HTMLIFrameElement.h:
  • html/HTMLIFrameElement.idl:

LayoutTests:

  • fast/frames/sandbox-attribute-expected.txt: Added.
  • fast/frames/sandbox-attribute.html: Added.

Add layout test to check that HTMLIframeElement.sandbox is now a
DOMSettableTokenList.

  • fast/frames/sandboxed-iframe-navigation-allowed-expected.txt:
  • fast/frames/sandboxed-iframe-navigation-allowed.html:

Update test that was using shouldBe() with HTMLIframeElement.sandbox.
shouldBe() does an === check but which now fails before
HTMLIframeElement.sandbox is now a DOMSettableTokenList that can be
stringified, rather than a String.

6:36 AM Changeset in webkit [191387] by Nikita Vasilyev
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Typo in a property name: style.inerhited
https://bugs.webkit.org/show_bug.cgi?id=150391

Reviewed by Csaba Osztrogonác.

  • UserInterface/Views/RulesStyleDetailsPanel.js:

(WebInspector.RulesStyleDetailsPanel.prototype.refresh):

5:52 AM Changeset in webkit [191386] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

ASSERTION FAILED: markFontData in FontCascade::emphasisMarkHeight
https://bugs.webkit.org/show_bug.cgi?id=150171

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2015-10-21
Reviewed by Myles C. Maxfield.

It happens with several tests like fast/ruby/text-emphasis.html in
the GTK Debug bot. The tests seem to pass in Release and the rendering
looks correct as well removing the assert. The thing is that
for some reason we can get an empty GlyphData from
FontCascade::getEmphasisMarkGlyphData() when it ends up falling
back to system (FontCascadeFonts::glyphDataForSystemFallback).

  • platform/graphics/FontCascade.cpp:

(WebCore::FontCascade::getEmphasisMarkGlyphData): Return
Optional<GlyphData> instead of returning a boolean and an out
parameter. If we get an invalid GlyphData, Nullopt is
returned. Also use a SurrogatePairAwareTextIterator to handle
surrogate pairs.
(WebCore::FontCascade::emphasisMarkAscent):
(WebCore::FontCascade::emphasisMarkDescent):
(WebCore::FontCascade::emphasisMarkHeight):
(WebCore::FontCascade::drawEmphasisMarks):

  • platform/graphics/FontCascade.h:
  • platform/graphics/GlyphPage.h:

(WebCore::GlyphData::isValid): Return whether the GlyphData is valid.

4:47 AM Changeset in webkit [191385] by svillar@igalia.com
  • 3 edits
    2 adds in trunk

Source/WebCore:
[css-grid] Fix availableLogicalSpace computation with non-zero baseSize flex tracks
https://bugs.webkit.org/show_bug.cgi?id=150359

Reviewed by Zalan Bujtas.

The availableLogicalSpace computation was incorrect whenever
the flex tracks had a non-zero baseSize before the 1fr unit
size resolution. That happened because when assigning the new
baseSize to the flex track, we were unconditionally
subtracting the whole baseSize to the
availableLogicalSpace. That's correct if the track is a "pure"
flex track, i.e. 2fr, but if the track had a non-zero baseSize
(like minmax(10px, 1fr)) then both the new and the old base
sizes were incorrectly used to compute the
availableLogicalSpace.

We can test the amount of remaining freeSpace by using content
distribution to align and item place on a non-zero baseSize
flex track. The content distribution will be accurate if and
only if the availableLogicalSpace computation is correct.

Test: fast/css-grid-layout/flex-content-distribution.html

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::computeUsedBreadthOfGridTracks):

LayoutTests:
[css-grid] Fix freeSpace computation with non-zero baseSize flex tracks
https://bugs.webkit.org/show_bug.cgi?id=150359

Reviewed by Zalan Bujtas.

  • fast/css-grid-layout/flex-content-distribution-expected.txt: Added.
  • fast/css-grid-layout/flex-content-distribution.html: Added.
1:52 AM Changeset in webkit [191384] by youenn.fablet@crf.canon.fr
  • 2 edits in trunk/LayoutTests

Remove commented lines in TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=150387

Unreviewed.

1:34 AM Changeset in webkit [191383] by calvaris@igalia.com
  • 22 edits
    1 copy in trunk

[Streams API] Construct a writable stream
https://bugs.webkit.org/show_bug.cgi?id=150360

Reviewed by Darin Adler.

Source/WebCore:

This patch initializes a writable stream according to the spec. To do it we need two internal functions, which
are syncWritableStreamStateWithQueue and errorWritableStream, which are also implemented as a quite direct
translation from the spec.

Current test set suffices, expectations are updated accordingly.

  • CMakeLists.txt:
  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSDOMWindowBase.cpp:
  • bindings/js/WebCoreBuiltinNames.h:
  • bindings/js/WebCoreJSBuiltinInternals.h:
  • bindings/js/WebCoreJSBuiltins.cpp:
  • bindings/js/WebCoreJSBuiltins.h: Build infrastructure.
  • Modules/streams/WritableStream.js:

(initializeWritableStream): Function that acts as constructor of WritableStream.

  • Modules/streams/WritableStreamInternals.js:

(syncWritableStreamStateWithQueue):
(errorWritableStream): As per spec.

LayoutTests:

Expectations for the writable stream initialization.

  • streams/reference-implementation/bad-strategies-expected.txt:
  • streams/reference-implementation/bad-underlying-sinks-expected.txt:
  • streams/reference-implementation/brand-checks-expected.txt:
  • streams/reference-implementation/byte-length-queuing-strategy-expected.txt:
  • streams/reference-implementation/count-queuing-strategy-expected.txt:
  • streams/reference-implementation/pipe-through-expected.txt:
  • streams/reference-implementation/pipe-to-expected.txt:
  • streams/reference-implementation/pipe-to-options-expected.txt:
  • streams/reference-implementation/readable-stream-templated-expected.txt:
  • streams/reference-implementation/writable-stream-abort-expected.txt:
  • streams/reference-implementation/writable-stream-expected.txt:
1:18 AM Changeset in webkit [191382] by fred.wang@free.fr
  • 3 edits in trunk/LayoutTests

Unreviewed gardening. Test expectation for use-typo-metrics-1 on Mac and Windows should be "ImageOnlyFailure" not "Failure".

  • platform/mac/TestExpectations:
  • platform/win/TestExpectations:
1:08 AM Changeset in webkit [191381] by Carlos Garcia Campos
  • 24 edits in trunk/Source

NetworkProcess: DNS prefetch happens in the Web Process
https://bugs.webkit.org/show_bug.cgi?id=147824

Reviewed by Chris Dumez.

Source/WebCore:

Use FrameLoaderClient to do the DNS prefetch.

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::parseAttribute):

  • loader/EmptyClients.h:
  • loader/FrameLoaderClient.h:
  • loader/LinkLoader.cpp:

(WebCore::LinkLoader::loadLink):

  • page/Chrome.cpp:

(WebCore::Chrome::mouseDidMoveOverElement):

Source/WebKit/mac:

Implement FrameLoaderClient::prefetchDNS().

  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:

Source/WebKit/win:

Implement FrameLoaderClient::prefetchDNS().

  • WebCoreSupport/WebFrameLoaderClient.cpp:

(WebFrameLoaderClient::prefetchDNS):

  • WebCoreSupport/WebFrameLoaderClient.h:

Source/WebKit2:

DNS prefetch requests started in the WebProcess should be sent to
the network process when it's enabled.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::prefetchDNS): Use NetworkProcess::prefetchDNS().

  • NetworkProcess/NetworkConnectionToWebProcess.h:
  • NetworkProcess/NetworkConnectionToWebProcess.messages.in: Add

PrefetchDNS message.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::prefetchDNS): Do the actual DNS prefetch.

  • NetworkProcess/NetworkProcess.h:
  • WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:

(webkitWebExtensionDidReceiveMessage): Use WebProcess::prefetchDNS().

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::prefetchDNS): Use WebProcess::prefetchDNS().

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::sendTapHighlightForNodeIfNecessary): Use
FrameLoaderClient to do the DNS prefetch.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess): Initialize the DNS prefetched
hosts cleanup hysteresis activity. Clear the cache of DNS
prefetched when hysteresis activity stopped.
(WebKit::WebProcess::prefetchDNS): Send the request to the network
process if it's enabled, otherwise do the actual DNS prefetch.

  • WebProcess/WebProcess.h:
12:53 AM Changeset in webkit [191380] by youenn.fablet@crf.canon.fr
  • 8 edits in trunk

W3C test importer should not import reference files as regular tests
https://bugs.webkit.org/show_bug.cgi?id=150331

Reviewed by Darin Adler.

LayoutTests/imported/w3c:

  • resources/ImportExpectations: Removed some Skip expectations as test importer no longer will handle these files as tests, but as reference files.

Tools:

Updated test_parser to return information that a file can be a referencefile or a manual test.
Updated test importer to skip those files.
Updated/Added test parser unit tests accordingly.

Updated test importer to import all not-test files, as they are usually used by tests and lead to test failing or timing out.
Updated test importer to log these 'resource' files that are not in a resources folder, and suggest to import script user
to mark these files as Skip, since they are not direct tests.

  • Scripts/webkitpy/w3c/test_importer.py:

(TestImporter.init):
(TestImporter.find_importable_tests):
(TestImporter.import_tests):

  • Scripts/webkitpy/w3c/test_parser.py:

(TestParser.analyze_test):

  • Scripts/webkitpy/w3c/test_parser_unittest.py:

(test_analyze_non_html_file):
(test_reference_test):

LayoutTests:

  • TestExpectations: Adding Skip expectations for web-platform-test resource files (currently commented out as not all are yet imported).
12:44 AM Changeset in webkit [191379] by youenn.fablet@crf.canon.fr
  • 196 edits
    22 copies
    59 adds
    16 deletes in trunk/LayoutTests

Update web-platform-tests tests to the same revision as tools
https://bugs.webkit.org/show_bug.cgi?id=149656

Reviewed by Darin Adler.

LayoutTests/imported/w3c:

Syncing tests with WPT repository.
Some files previously in resources folder are now in not-resources folder.
Updated TestExpectations to skip those files.
web-platform-tests/dom/nodes/resources should be removed for a later patch.

  • web-platform-tests/common/failing-test.html: Removed.
  • web-platform-tests/common/w3c-import.log:
  • web-platform-tests/dom/collections/HTMLCollection-supported-property-names.html:
  • web-platform-tests/dom/collections/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/image-maps/w3c-import.log.
  • web-platform-tests/dom/events/w3c-import.log: Added.
  • web-platform-tests/dom/historical-expected.txt:
  • web-platform-tests/dom/historical.html:
  • web-platform-tests/dom/interfaces-expected.txt:
  • web-platform-tests/dom/interfaces.html:
  • web-platform-tests/dom/lists/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-meter-element/w3c-import.log.
  • web-platform-tests/dom/nodes/DOMImplementation-createDocument-expected.txt:
  • web-platform-tests/dom/nodes/DOMImplementation-createDocument.html:
  • web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument-expected.txt:
  • web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument.html:
  • web-platform-tests/dom/nodes/Document-adoptNode.html:
  • web-platform-tests/dom/nodes/Document-characterSet-normalization-expected.txt:
  • web-platform-tests/dom/nodes/Document-characterSet-normalization.html:
  • web-platform-tests/dom/nodes/Document-constructor-expected.txt:
  • web-platform-tests/dom/nodes/Document-constructor.html:
  • web-platform-tests/dom/nodes/Document-contentType/contentType/w3c-import.log: Added.
  • web-platform-tests/dom/nodes/Document-contentType/resources/w3c-import.log: Added.
  • web-platform-tests/dom/nodes/Document-contentType/support/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/disabled-elements/w3c-import.log.
  • web-platform-tests/dom/nodes/Document-createAttribute-expected.txt:
  • web-platform-tests/dom/nodes/Document-createAttribute.html:
  • web-platform-tests/dom/nodes/Document-createElement-namespace-expected.txt:
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_mathml.html: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_mathml.svg: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_mathml.xhtml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_mathml.xml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_svg.html: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_svg.svg: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_svg.xhtml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_svg.xml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_xhtml.html: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_xhtml.svg: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_xhtml.xhtml: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/bare_xhtml.xml: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.html: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.svg: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.xhtml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.xml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/generate.py: Added.

(main):

  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/mathml.html: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/mathml.svg: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/mathml.xhtml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/mathml.xml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/minimal_html.html: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/minimal_html.svg: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/minimal_html.xhtml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/minimal_html.xml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/svg.html: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/svg.svg: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/svg.xhtml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/svg.xml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/w3c-import.log: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml.html: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml.svg: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml.xhtml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml.xml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_changed.html: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_changed.svg: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_changed.xhtml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_changed.xml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_removed.html: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_removed.svg: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_removed.xhtml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/xhtml_ns_removed.xml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace.html:
  • web-platform-tests/dom/nodes/Document-doctype.html:
  • web-platform-tests/dom/nodes/Document-getElementById.html:
  • web-platform-tests/dom/nodes/Element-matches.html:
  • web-platform-tests/dom/nodes/MutationObserver-characterData-expected.txt:
  • web-platform-tests/dom/nodes/MutationObserver-characterData.html:
  • web-platform-tests/dom/nodes/Node-compareDocumentPosition.html:
  • web-platform-tests/dom/nodes/Node-contains.html:
  • web-platform-tests/dom/nodes/Node-lookupPrefix.xhtml:
  • web-platform-tests/dom/nodes/Node-parentNode-iframe.html: Added.
  • web-platform-tests/dom/nodes/Node-parentNode.html:
  • web-platform-tests/dom/nodes/Node-properties-expected.txt:
  • web-platform-tests/dom/nodes/Node-properties.html:
  • web-platform-tests/dom/nodes/ParentNode-querySelector-All-content.html: Added.
  • web-platform-tests/dom/nodes/ParentNode-querySelector-All-content.xht: Added.
  • web-platform-tests/dom/nodes/ParentNode-querySelector-All.html:
  • web-platform-tests/dom/nodes/getElementsByClassName-14.htm:
  • web-platform-tests/dom/nodes/getElementsByClassName-28.htm:
  • web-platform-tests/dom/nodes/w3c-import.log: Added.
  • web-platform-tests/dom/ranges/w3c-import.log: Added.
  • web-platform-tests/dom/traversal/TreeWalker-acceptNode-filter.html:
  • web-platform-tests/dom/traversal/TreeWalker-basic.html:
  • web-platform-tests/dom/traversal/TreeWalker-currentNode.html:
  • web-platform-tests/dom/traversal/TreeWalker-previousNodeLastChildReject.html:
  • web-platform-tests/dom/traversal/TreeWalker-previousSiblingLastChildSkip.html:
  • web-platform-tests/dom/traversal/TreeWalker-traversal-reject.html:
  • web-platform-tests/dom/traversal/TreeWalker-traversal-skip-most.html:
  • web-platform-tests/dom/traversal/TreeWalker-traversal-skip.html:
  • web-platform-tests/dom/traversal/TreeWalker-walking-outside-a-tree.html:
  • web-platform-tests/dom/traversal/w3c-import.log: Added.
  • web-platform-tests/dom/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/document-metadata/the-meta-element/w3c-import.log.
  • web-platform-tests/domparsing/DOMParser-parseFromString-html-expected.txt:
  • web-platform-tests/domparsing/DOMParser-parseFromString-html.html:
  • web-platform-tests/domparsing/w3c-import.log:
  • web-platform-tests/html/dom/documents/dom-tree-accessors/document.getElementsByName/w3c-import.log: Added.
  • web-platform-tests/html/dom/documents/dom-tree-accessors/w3c-import.log: Added.
  • web-platform-tests/html/dom/documents/resource-metadata-management/document-lastModified-01.html:
  • web-platform-tests/html/dom/documents/resource-metadata-management/w3c-import.log: Added.
  • web-platform-tests/html/dom/dynamic-markup-insertion/closing-the-input-stream/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/disabled-elements/w3c-import.log.
  • web-platform-tests/html/dom/dynamic-markup-insertion/document-write/w3c-import.log: Added.
  • web-platform-tests/html/dom/dynamic-markup-insertion/document-writeln/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/document-metadata/the-meta-element/w3c-import.log.
  • web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/010-1.html: Added.
  • web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/010-2.html: Added.
  • web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/010-expected.txt:
  • web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/010.html: Added.
  • web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/w3c-import.log: Added.
  • web-platform-tests/html/dom/elements/content-models/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-meter-element/w3c-import.log.
  • web-platform-tests/html/dom/elements/element-definitions/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/w3c-import.log.
  • web-platform-tests/html/dom/elements/elements-in-the-dom/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/disabled-elements/w3c-import.log.
  • web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-001.html:
  • web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-002.html:
  • web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-003.html:
  • web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-004.html:
  • web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-005.html:
  • web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-006.html:
  • web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-007.html:
  • web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-008.html:
  • web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-009.html:
  • web-platform-tests/html/dom/elements/global-attributes/the-lang-attribute-010.html:
  • web-platform-tests/html/dom/elements/global-attributes/w3c-import.log: Added.
  • web-platform-tests/html/dom/elements/wai-aria/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/image-maps/w3c-import.log.
  • web-platform-tests/html/dom/interfaces-expected.txt:
  • web-platform-tests/html/dom/interfaces.html:
  • web-platform-tests/html/dom/w3c-import.log: Added.
  • web-platform-tests/html/resources/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-meter-element/w3c-import.log.
  • web-platform-tests/html/semantics/disabled-elements/w3c-import.log:
  • web-platform-tests/html/semantics/document-metadata/styling/support/w3c-import.log:
  • web-platform-tests/html/semantics/document-metadata/the-base-element/base_multiple.html:
  • web-platform-tests/html/semantics/document-metadata/the-base-element/example.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/document-metadata/the-base-element/resources/example.html.
  • web-platform-tests/html/semantics/document-metadata/the-base-element/example2.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/document-metadata/the-base-element/resources/example2.html.
  • web-platform-tests/html/semantics/document-metadata/the-base-element/w3c-import.log:
  • web-platform-tests/html/semantics/document-metadata/the-link-element/link-style-error-01-expected.txt:
  • web-platform-tests/html/semantics/document-metadata/the-link-element/link-style-error-01.html:
  • web-platform-tests/html/semantics/document-metadata/the-link-element/w3c-import.log:
  • web-platform-tests/html/semantics/document-metadata/the-meta-element/w3c-import.log:
  • web-platform-tests/html/semantics/document-metadata/the-style-element/style-error-01-expected.txt:
  • web-platform-tests/html/semantics/document-metadata/the-style-element/style-error-01.html:
  • web-platform-tests/html/semantics/document-metadata/the-style-element/w3c-import.log:
  • web-platform-tests/html/semantics/document-metadata/the-title-element/w3c-import.log:
  • web-platform-tests/html/semantics/edits/the-del-element/w3c-import.log:
  • web-platform-tests/html/semantics/edits/the-ins-element/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/image-maps/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLMediaElement/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCue/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackCueList/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrackList/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TrackEvent/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/mime-types/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/resources/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/user-interface/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-area-element/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-audio-element/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-canvas-element/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-embed-element/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01.htm: Removed.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script-expected.txt:
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script.html: Removed.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01.html: Removed.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02.html: Removed.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03.html: Removed.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04.html: Removed.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/resources/sandbox_allow_script.html: Removed.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/sandbox_allow_script.html: Removed.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-img-element/current-pixel-density/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-img-element/environment-changes/iframed.sub.html: Added.
  • web-platform-tests/html/semantics/embedded-content/the-img-element/environment-changes/viewport-change-expected.txt:
  • web-platform-tests/html/semantics/embedded-content/the-img-element/environment-changes/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/parse-a-sizes-attribute-expected.txt:
  • web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/sizes-iframed.sub.html: Added.
  • web-platform-tests/html/semantics/embedded-content/the-img-element/sizes/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-img-element/srcset/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-img-element/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-object-element/object-handler.html:
  • web-platform-tests/html/semantics/embedded-content/the-object-element/test0.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-object-element/resources/test0.html.
  • web-platform-tests/html/semantics/embedded-content/the-object-element/test1.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-object-element/resources/test1.html.
  • web-platform-tests/html/semantics/embedded-content/the-object-element/test2.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-object-element/resources/test2.html.
  • web-platform-tests/html/semantics/embedded-content/the-object-element/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-video-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr-iframe.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/attributes-common-to-form-controls/resources/dirname-ltr-iframe.html.
  • web-platform-tests/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr.html:
  • web-platform-tests/html/semantics/forms/attributes-common-to-form-controls/w3c-import.log:
  • web-platform-tests/html/semantics/forms/constraints/form-validation-validity-tooLong-expected.txt:
  • web-platform-tests/html/semantics/forms/constraints/form-validation-validity-tooLong.html:
  • web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt:
  • web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing.html:
  • web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt:
  • web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate.html:
  • web-platform-tests/html/semantics/forms/constraints/support/validator.js:

(validator.test_reportValidity):
(validator.set_conditions):
(validator.set_dirty):

  • web-platform-tests/html/semantics/forms/constraints/support/w3c-import.log:
  • web-platform-tests/html/semantics/forms/constraints/w3c-import.log:
  • web-platform-tests/html/semantics/forms/form-control-infrastructure/w3c-import.log:
  • web-platform-tests/html/semantics/forms/form-submission-0/w3c-import.log:
  • web-platform-tests/html/semantics/forms/introduction-1/w3c-import.log:
  • web-platform-tests/html/semantics/forms/resetting-a-form/w3c-import.log:
  • web-platform-tests/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange-expected.txt:
  • web-platform-tests/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html:
  • web-platform-tests/html/semantics/forms/textfieldselection/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-button-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-datalist-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-fieldset-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-form-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-input-element/input-textselection-01-expected.txt:
  • web-platform-tests/html/semantics/forms/the-input-element/input-textselection-01.html:
  • web-platform-tests/html/semantics/forms/the-input-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-label-element/label-attributes.html:
  • web-platform-tests/html/semantics/forms/the-label-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-legend-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-meter-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-option-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-output-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-progress-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-select-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-textarea-element/w3c-import.log:
  • web-platform-tests/html/semantics/grouping-content/the-dd-element/w3c-import.log:
  • web-platform-tests/html/semantics/grouping-content/the-div-element/w3c-import.log:
  • web-platform-tests/html/semantics/grouping-content/the-dl-element/w3c-import.log:
  • web-platform-tests/html/semantics/grouping-content/the-dt-element/w3c-import.log:
  • web-platform-tests/html/semantics/grouping-content/the-figcaption-element/w3c-import.log:
  • web-platform-tests/html/semantics/grouping-content/the-figure-element/w3c-import.log:
  • web-platform-tests/html/semantics/grouping-content/the-hr-element/w3c-import.log:
  • web-platform-tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-ref-expected.html: Removed.
  • web-platform-tests/html/semantics/grouping-content/the-li-element/grouping-li-reftest-002-ref.html: Removed.
  • web-platform-tests/html/semantics/grouping-content/the-li-element/w3c-import.log:
  • web-platform-tests/html/semantics/grouping-content/the-ol-element/reversed-1a.html: Added.
  • web-platform-tests/html/semantics/grouping-content/the-ol-element/reversed-1b.html: Added.
  • web-platform-tests/html/semantics/grouping-content/the-ol-element/reversed-1c.html: Added.
  • web-platform-tests/html/semantics/grouping-content/the-ol-element/w3c-import.log:
  • web-platform-tests/html/semantics/grouping-content/the-p-element/w3c-import.log:
  • web-platform-tests/html/semantics/grouping-content/the-pre-element/w3c-import.log:
  • web-platform-tests/html/semantics/grouping-content/the-ul-element/w3c-import.log:
  • web-platform-tests/html/semantics/interactive-elements/commands/w3c-import.log:
  • web-platform-tests/html/semantics/interactive-elements/the-details-element/w3c-import.log:
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/w3c-import.log:
  • web-platform-tests/html/semantics/interactive-elements/the-menu-element/w3c-import.log:
  • web-platform-tests/html/semantics/interfaces-expected.txt:
  • web-platform-tests/html/semantics/interfaces.js:
  • web-platform-tests/html/semantics/links/downloading-resources/w3c-import.log:
  • web-platform-tests/html/semantics/links/linktypes/w3c-import.log:
  • web-platform-tests/html/semantics/scripting-1/the-script-element/w3c-import.log:
  • web-platform-tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/w3c-import.log:
  • web-platform-tests/html/semantics/scripting-1/the-template-element/additions-to-serializing-xhtml-documents/w3c-import.log:
  • web-platform-tests/html/semantics/scripting-1/the-template-element/additions-to-the-css-user-agent-style-sheet/w3c-import.log:
  • web-platform-tests/html/semantics/scripting-1/the-template-element/additions-to-the-steps-to-clone-a-node/w3c-import.log:
  • web-platform-tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type-expected.txt:
  • web-platform-tests/html/semantics/scripting-1/the-template-element/definitions/template-contents-owner-document-type.html:
  • web-platform-tests/html/semantics/scripting-1/the-template-element/definitions/w3c-import.log:
  • web-platform-tests/html/semantics/scripting-1/the-template-element/innerhtml-on-templates/w3c-import.log:
  • web-platform-tests/html/semantics/scripting-1/the-template-element/resources/w3c-import.log:
  • web-platform-tests/html/semantics/scripting-1/the-template-element/serializing-html-templates/w3c-import.log:
  • web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset-expected.txt:
  • web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/template-descendant-frameset.html:
  • web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/w3c-import.log:
  • web-platform-tests/html/semantics/sections/headings-and-sections/w3c-import.log:
  • web-platform-tests/html/semantics/sections/the-h1-h2-h3-h4-h5-and-h6-elements/w3c-import.log:
  • web-platform-tests/html/semantics/selectors/pseudo-classes/disabled-expected.txt:
  • web-platform-tests/html/semantics/selectors/pseudo-classes/disabled.html:
  • web-platform-tests/html/semantics/selectors/pseudo-classes/focus-iframe.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/selectors/pseudo-classes/resources/focus-iframe.html.
  • web-platform-tests/html/semantics/selectors/pseudo-classes/focus.html:
  • web-platform-tests/html/semantics/selectors/pseudo-classes/w3c-import.log:
  • web-platform-tests/html/semantics/tabular-data/attributes-common-to-td-and-th-elements/w3c-import.log:
  • web-platform-tests/html/semantics/tabular-data/processing-model-1/w3c-import.log:
  • web-platform-tests/html/semantics/tabular-data/the-caption-element/w3c-import.log:
  • web-platform-tests/html/semantics/tabular-data/the-table-element/w3c-import.log:
  • web-platform-tests/html/semantics/tabular-data/the-tbody-element/w3c-import.log:
  • web-platform-tests/html/semantics/tabular-data/the-tr-element/w3c-import.log:
  • web-platform-tests/html/semantics/text-level-semantics/the-a-element/w3c-import.log:
  • web-platform-tests/html/semantics/text-level-semantics/the-bdi-element/w3c-import.log:
  • web-platform-tests/html/semantics/text-level-semantics/the-bdo-element/w3c-import.log:
  • web-platform-tests/html/semantics/text-level-semantics/the-br-element/w3c-import.log:
  • web-platform-tests/html/semantics/text-level-semantics/the-time-element/w3c-import.log:
  • web-platform-tests/html/semantics/text-level-semantics/the-wbr-element/w3c-import.log:
  • web-platform-tests/html/semantics/text-level-semantics/the-wbr-element/wbr-element-expected.html:
  • web-platform-tests/html/semantics/text-level-semantics/the-wbr-element/wbr-element-ref.html: Removed.
  • web-platform-tests/html/semantics/text-level-semantics/the-wbr-element/wbr-element.html:
  • web-platform-tests/html/semantics/w3c-import.log:

LayoutTests:

  • TestExpectations: Skipping imported resource files that are not in 'resources' folder.
12:05 AM Changeset in webkit [191378] by fred.wang@free.fr
  • 5 edits
    3 adds in trunk

[FreeType] Add support for the USE_TYPO_METRICS flag
https://bugs.webkit.org/show_bug.cgi?id=150340

Reviewed by Martin Robinson.

Source/WebCore:

Test: fonts/use-typo-metrics-1.html

Make the FreeType backend use the typo metrics when the OS/2 USE_TYPO_METRICS flag is set.
Similar work should be done for other backends, see bug 131839.

  • platform/graphics/freetype/SimpleFontDataFreeType.cpp:

(WebCore::Font::platformInit): Verify whether the OS/2 USE_TYPO_METRICS flag is set and use the typo metrics if that's the case.

LayoutTests:

Add a test to verify that the line height of a font is calculated from the typo metrics when the OS/2 USE_TYPO_METRICS flag is set. Currently, the test only passes with the FreeType backend.

  • fonts/lineheight5000-typolineheight2300.woff: Added.
  • fonts/use-typo-metrics-1-expected.html: Added.
  • fonts/use-typo-metrics-1.html: Added.
  • platform/mac/TestExpectations: Mark as failing.
  • platform/win/TestExpectations: Mark as failing.

Oct 20, 2015:

11:41 PM Changeset in webkit [191377] by Chris Dumez
  • 7 edits in trunk/Source/WebKit2

[WK2] Generalize NetworkCacheStorage API so it can store different types of metadata
https://bugs.webkit.org/show_bug.cgi?id=150221
<rdar://problem/23149771>

Reviewed by Darin Adler and Antti Koivisto.

Generalize NetworkCacheStorage API so it can store different types of
metadata alongside the network resources. This is a pre-requirement to
making our NetworkCache smarter by storing information about the
resources.

To keep the code simple, the entry type is now part of the entry key and
we store records of a specific type in a 'type' subfolder. The cache
structure looks like so:

  • WebKitCache/Version 5/[Partition]/[Type]/[Hash]
  • WebKitCache/Version 5/[Partition]/[Type]/[Hash]-blob (Optional)

Existing cache entries now that the 'resource' type as these are network
resources.

  • NetworkProcess/cache/NetworkCache.cpp:
  • NetworkProcess/cache/NetworkCacheKey.cpp:
  • NetworkProcess/cache/NetworkCacheKey.h:
  • NetworkProcess/cache/NetworkCacheStatistics.cpp:
  • NetworkProcess/cache/NetworkCacheStorage.cpp:
  • NetworkProcess/cache/NetworkCacheStorage.h:
11:20 PM Changeset in webkit [191376] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Marking http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-simple.html as flaky on Yosemite
https://bugs.webkit.org/show_bug.cgi?id=150378

Patch by Ryan Haddad <Ryan Haddad> on 2015-10-20
Reviewed by Alexey Proskuryakov.

  • platform/mac-wk2/TestExpectations:
11:08 PM Changeset in webkit [191375] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Marking http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-twice.html as flaky on Yosemite
https://bugs.webkit.org/show_bug.cgi?id=150363

Patch by Ryan Haddad <Ryan Haddad> on 2015-10-20
Reviewed by Alexey Proskuryakov.

  • platform/mac-wk2/TestExpectations:
10:36 PM Changeset in webkit [191374] by commit-queue@webkit.org
  • 10 edits in trunk

run-webkit-tests does not copy all crash logs for layout test failures on iOS
https://bugs.webkit.org/show_bug.cgi?id=150056
Tools:

<rdar://problem/9280656>

Patch by Aakash Jain <aakash_jain@apple.com> on 2015-10-20
Reviewed by Alexey Proskuryakov.

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

(CrashLogs.find_all_logs): Generic method to find all crash logs.
(CrashLogs._find_all_logs_darwin): Darwin based method to find all crash logs.
It iterates through log directory and returns all the logs based on timestamp.

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

(CrashLogsTest.create_crash_logs_darwin): Creates sample crash logs and verify them.
(CrashLogsTest.test_find_all_log_darwin): Testcase for above find_all_logs method
(CrashLogsTest.test_find_log_darwin): Restructured to share code with other methods.

  • Scripts/webkitpy/layout_tests/controllers/manager.py:

(Manager.run): Modified start_time to start counting before simulator launch
so that we can capture crashes during simualator launch.
(Manager._look_for_new_crash_logs): Browse through list of crashes and append
any test which is not already marked as CRASH to the run_results.

  • Scripts/webkitpy/layout_tests/models/test_expectations.py:

(TestExpectationsModel.get_expectations_string): return PASS in case there
are no expectations defined for this test.

  • Scripts/webkitpy/layout_tests/models/test_run_results.py:

(summarize_results): Add other_crashes in a separte category in full_results.json.

  • Scripts/webkitpy/port/ios.py:

(IOSSimulatorPort._merge_crash_logs): Merge unique crash logs from two dictionaries.
(IOSSimulatorPort._look_for_all_crash_logs_in_log_dir): Get the crash logs
from the log directory.
(IOSSimulatorPort.look_for_new_crash_logs): Uses above method to get crash
logs from log directory and merge them with the list of already crashed tests.

LayoutTests:

<rdar://problem/22239750>

Patch by Aakash Jain <aakash_jain@apple.com> on 2015-10-20
Reviewed by Alexey Proskuryakov.

  • fast/harness/results.html: Added the column for Other crashes, this contain

all the newly find crashes from the crash-log directory. Added method forOtherCrashes
which processes othre_crashes section from full_results.json. Also fixed the method
splitExtension to handle the case when there is no extension.

10:09 PM Changeset in webkit [191373] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/mac

Unreviewed, rolling out r191370.
https://bugs.webkit.org/show_bug.cgi?id=150384

Broke iOS 9 build (Requested by ap on #webkit).

Reverted changeset:

"Fix build for clang-700.0.59.5 by replacing deprecated calls
to convertScreenToBase: with convertRectFromScreen:."
https://bugs.webkit.org/show_bug.cgi?id=150379
http://trac.webkit.org/changeset/191370

9:51 PM Changeset in webkit [191372] by dburkart@apple.com
  • 2 edits in trunk/Tools

Fix the build

Unreviewed.

My previous patch was missing a necessary space character.

  • Scripts/webkitperl/VCSUtils_unittest/decodeGitBinaryPatch.pl:
9:25 PM Changeset in webkit [191371] by Nikita Vasilyev
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Pressing Command-S while focused on the styles sidebar should save CSS file
https://bugs.webkit.org/show_bug.cgi?id=150298

Reviewed by Timothy Hatcher.

  • UserInterface/Views/CSSStyleDeclarationSection.js:

(WebInspector.CSSStyleDeclarationSection):
Beep when saving didn't work. Inline CSS and CSS in style attributes aren't curently supported.

7:21 PM Changeset in webkit [191370] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/mac

Fix build for clang-700.0.59.5 by replacing deprecated calls to convertScreenToBase: with convertRectFromScreen:.
https://bugs.webkit.org/show_bug.cgi?id=150379

Patch by Gordon Sheridan <gordon_sheridan@apple.com> on 2015-10-20
Reviewed by Simon Fraser.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView characterIndexForPoint:]):
Convert point to rect, and call convertRectFromScreen:.

(-[WebHTMLView firstRectForCharacterRange:]):
Replace convertBaseToScreen: with convertRectToScreen:.

7:12 PM Changeset in webkit [191369] by Hunseop Jeong
  • 50 edits in trunk/Source/WebCore

Replace 0 and NULL with nullptr in WebCore/loader.
https://bugs.webkit.org/show_bug.cgi?id=149657

Reviewed by Darin Adler.

No new tests because there is no behavior change.

  • loader/CookieJar.cpp:

(WebCore::networkingContext):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::DocumentLoader):
(WebCore::DocumentLoader::frameLoader):
(WebCore::DocumentLoader::popArchiveForSubframe):
(WebCore::DocumentLoader::clearArchiveResources):
(WebCore::DocumentLoader::clearMainResource):
(WebCore::DocumentLoader::subresourceLoaderFinishedLoadingOnePart):

  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::cancel):
(WebCore::DocumentThreadableLoader::setDefersLoading):
(WebCore::DocumentThreadableLoader::clearResource):

  • loader/EmptyClients.cpp:

(WebCore::EmptyFrameLoaderClient::createJavaAppletWidget):
(WebCore::EmptyFrameLoaderClient::createNetworkingContext):

  • loader/EmptyClients.h:
  • loader/FTPDirectoryParser.cpp:

(WebCore::parseOneFTPLine):

  • loader/FTPDirectoryParser.h:

(WebCore::ListResult::clear):

  • loader/FormSubmission.cpp:

(WebCore::FormSubmission::create):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::clear):
(WebCore::FrameLoader::stopAllLoaders):
(WebCore::FrameLoader::clearProvisionalLoad):
(WebCore::FrameLoader::transitionToCommitted):
(WebCore::FrameLoader::closeAndRemoveChild):
(WebCore::FrameLoader::detachFromParent):
(WebCore::FrameLoader::detachViewsAndDocumentLoader):
(WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
(WebCore::FrameLoader::continueLoadAfterNavigationPolicy):

  • loader/FrameLoader.h:

(WebCore::FrameLoader::stateMachine):

  • loader/FrameNetworkingContext.h:

(WebCore::FrameNetworkingContext::invalidate):

  • loader/HistoryController.cpp:

(WebCore::HistoryController::replaceState):

  • loader/ImageLoader.cpp:

(WebCore::ImageLoader::ImageLoader):
(WebCore::ImageLoader::updateFromElement):

  • loader/NetscapePlugInStreamLoader.cpp:

(WebCore::NetscapePlugInStreamLoader::releaseResources):

  • loader/ResourceLoadNotifier.h:
  • loader/ResourceLoadScheduler.cpp:

(WebCore::resourceLoadScheduler):

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::releaseResources):

  • loader/TextResourceDecoder.cpp:

(WebCore::TextResourceDecoder::TextResourceDecoder):

  • loader/ThreadableLoaderClientWrapper.h:

(WebCore::ThreadableLoaderClientWrapper::clearClient):
(WebCore::ThreadableLoaderClientWrapper::done):

  • loader/appcache/ApplicationCache.cpp:

(WebCore::fallbackURLLongerThan):
(WebCore::ApplicationCache::ApplicationCache):
(WebCore::ApplicationCache::resourceForRequest):

  • loader/appcache/ApplicationCache.h:

(WebCore::ApplicationCache::fallbackURLs):

  • loader/appcache/ApplicationCacheGroup.cpp:

(WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
(WebCore::ApplicationCacheGroup::fallbackCacheForMainRequest):
(WebCore::ApplicationCacheGroup::selectCache):
(WebCore::ApplicationCacheGroup::finishedLoadingMainResource):
(WebCore::ApplicationCacheGroup::failedLoadingMainResource):
(WebCore::ApplicationCacheGroup::manifestNotFound):
(WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):

  • loader/appcache/ApplicationCacheHost.cpp:

(WebCore::ApplicationCacheHost::ApplicationCacheHost):
(WebCore::ApplicationCacheHost::setApplicationCache):

  • loader/appcache/ApplicationCacheHost.h:

(WebCore::ApplicationCacheHost::candidateApplicationCacheGroup):

  • loader/appcache/ApplicationCacheStorage.cpp:

(WebCore::StorageIDJournal::Record::Record):
(WebCore::StorageIDJournal::Record::restore):
(WebCore::ApplicationCacheStorage::loadCacheGroup):
(WebCore::ApplicationCacheStorage::cacheGroupForURL):
(WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL):
(WebCore::ApplicationCacheStorage::cacheGroupDestroyed):
(WebCore::ApplicationCacheStorage::loadCache):

  • loader/appcache/DOMApplicationCache.cpp:

(WebCore::DOMApplicationCache::disconnectFrameForPageCache):
(WebCore::DOMApplicationCache::willDestroyGlobalObjectInFrame):
(WebCore::DOMApplicationCache::applicationCacheHost):
(WebCore::DOMApplicationCache::scriptExecutionContext):
(WebCore::DOMApplicationCache::toEventType):

  • loader/archive/ArchiveFactory.cpp:

(WebCore::ArchiveFactory::create):
(WebCore::ArchiveFactory::registerKnownArchiveMIMETypes):

  • loader/archive/ArchiveResourceCollection.cpp:

(WebCore::ArchiveResourceCollection::archiveResourceForURL):

  • loader/archive/cf/LegacyWebArchive.cpp:

(WebCore::LegacyWebArchive::createPropertyListRepresentation):
(WebCore::LegacyWebArchive::createResource):
(WebCore::LegacyWebArchive::create):
(WebCore::LegacyWebArchive::rawDataRepresentation):

  • loader/archive/cf/LegacyWebArchiveMac.mm:

(WebCore::LegacyWebArchive::createPropertyListRepresentation):

  • loader/archive/mhtml/MHTMLArchive.cpp:

(WebCore::MHTMLArchive::create):
(WebCore::MHTMLArchive::generateMHTMLData):

  • loader/archive/mhtml/MHTMLParser.cpp:

(WebCore::MHTMLParser::parseArchiveWithHeader):
(WebCore::MHTMLParser::parseNextPart):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::CachedImage):

  • loader/cache/CachedImageClient.h:

(WebCore::CachedImageClient::imageChanged):
(WebCore::CachedImageClient::newImageAnimationFrameAvailable):

  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::calculateIncrementalDataChunk):

  • loader/cache/CachedRawResourceClient.h:

(WebCore::CachedRawResourceClient::dataReceived):
(WebCore::CachedRawResourceClient::redirectReceived):
(WebCore::CachedRawResourceClient::getOrCreateReadBuffer):

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::CachedResource):
(WebCore::CachedResource::clearResourceToRevalidate):

  • loader/cache/CachedResourceClientWalker.h:

(WebCore::CachedResourceClientWalker::next):

  • loader/cache/CachedResourceHandle.cpp:

(WebCore::CachedResourceHandleBase::CachedResourceHandleBase):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::createResource):
(WebCore::CachedResourceLoader::CachedResourceLoader):
(WebCore::CachedResourceLoader::~CachedResourceLoader):
(WebCore::CachedResourceLoader::canRequest): Return value is bool.
(WebCore::CachedResourceLoader::requestResource):

  • loader/cache/CachedResourceLoader.h:

(WebCore::CachedResourceLoader::document):
(WebCore::CachedResourceLoader::setDocument):
(WebCore::CachedResourceLoader::clearDocumentLoader):

  • loader/cache/CachedSVGDocumentReference.cpp:

(WebCore::CachedSVGDocumentReference::CachedSVGDocumentReference):

  • loader/cf/ResourceLoaderCFNet.cpp:

(WebCore::ResourceLoader::shouldCacheResponse): Return value is bool.

  • loader/icon/IconDatabase.cpp:

(WebCore::IconDatabase::synchronousIconForPageURL):
(WebCore::IconDatabase::synchronousNativeIconForPageURL):
(WebCore::IconDatabase::setIconDataForIconURL):
(WebCore::IconDatabase::getOrCreatePageURLRecord):
(WebCore::IconDatabase::cleanupSyncThread):

  • loader/icon/IconDatabaseBase.cpp:

(WebCore::IconDatabaseBase::open):
(WebCore::iconDatabase):

  • loader/icon/IconDatabaseBase.h:

(WebCore::EnumCallback::performCallback):
(WebCore::EnumCallback::invalidate):
(WebCore::ObjectCallback::performCallback):
(WebCore::ObjectCallback::invalidate):

  • loader/icon/PageURLRecord.cpp:

(WebCore::PageURLRecord::~PageURLRecord):
(WebCore::PageURLRecord::setIconRecord):

  • loader/mac/ResourceLoaderMac.mm:

(WebCore::ResourceLoader::willCacheResponse):

  • loader/soup/CachedRawResourceSoup.cpp:

(WebCore::CachedRawResource::getOrCreateReadBuffer):

6:53 PM Changeset in webkit [191368] by Hunseop Jeong
  • 2 edits in trunk/Source/WebKit2

[EFL] ContextMenu doesn't work correctly on MiniBrowser after r191194.
https://bugs.webkit.org/show_bug.cgi?id=150311

Reviewed by Gyuyoung Kim.

Restore the test_ewk2_context_menu API test to check the context menu whether it works correctly.

  • PlatformEfl.cmake:
6:41 PM Changeset in webkit [191367] by dburkart@apple.com
  • 3 edits
    1 add in trunk/Tools

svn-apply fails to apply binary diffs in some cases
https://bugs.webkit.org/show_bug.cgi?id=64647

Reviewed by Daniel Bates.

  • Scripts/VCSUtils.pm:

(decodeGitBinaryPatchDeltaSize): Modified.
We need to handle the case where the binary diff is the last in the patch; so we match on "-- \n" or "\Z".

  • Tools/Scripts/webkitperl/VCSUtils_unittest/decodeGitBinaryPatch.pl: Added.
6:10 PM Changeset in webkit [191366] by Conrad Shultz
  • 3 edits in trunk/Source/WebKit2

_WKThumbnailView should support a snapshot-only mode
https://bugs.webkit.org/show_bug.cgi?id=150106

Reviewed by Tim Horton.

Add a new property to _WKThumbnailView, exclusivelyUsesSnapshot, which causes _WKThumbnailView
to bypass both layer tree reparenting and event suppression on the associated WKView.

Add a new method, -requestSnapshot, which clients can use to force _WKThumbnailView to refresh
on demand.

  • UIProcess/API/Cocoa/_WKThumbnailView.h:
  • UIProcess/API/Cocoa/_WKThumbnailView.mm:

(-[_WKThumbnailView requestSnapshot]):
Extracted from -_requestSnapshotIfNeeded:.
(-[_WKThumbnailView _viewWasUnparented]):
(-[_WKThumbnailView _viewWasParented]):
(-[_WKThumbnailView _requestSnapshotIfNeeded]):

4:40 PM Changeset in webkit [191365] by ap@apple.com
  • 3 edits in trunk/Source/WebKit2

Build fix.

  • UIProcess/ios/forms/WKAirPlayRoutePicker.mm:
  • UIProcess/ios/forms/WKFileUploadPanel.mm:
4:38 PM Changeset in webkit [191364] by mark.lam@apple.com
  • 3 edits
    3 adds in trunk

YarrPatternConstructor::containsCapturingTerms() should not assume that its terms.size() is greater than 0.
https://bugs.webkit.org/show_bug.cgi?id=150372

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • yarr/YarrPattern.cpp:

(JSC::Yarr::CharacterClassConstructor::CharacterClassConstructor):
(JSC::Yarr::YarrPatternConstructor::optimizeBOL):
(JSC::Yarr::YarrPatternConstructor::containsCapturingTerms):
(JSC::Yarr::YarrPatternConstructor::optimizeDotStarWrappedExpressions):

LayoutTests:

  • js/regress-150372-expected.txt: Added.
  • js/regress-150372.html: Added.
  • js/script-tests/regress-150372.js: Added.
4:15 PM Changeset in webkit [191363] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

ASSERT when right clicking on SVG Image generating Share menu - can break Web Inspector
https://bugs.webkit.org/show_bug.cgi?id=150374

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-10-20
Reviewed by Brian Burg.

When there is no absolute URL or downloadable media URL no system share
menu is created, but we were still appending the null context menu to
the list of context menu items.

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(WebKit::WebContextMenuProxyMac::shareMenuItem):
Bail early if the context menu is null.

(WebKit::WebContextMenuProxyMac::showContextMenu):
Only append the share context menu item if it is non-null.
This matches ContextMenuController.cpp in WebCore.

3:49 PM Changeset in webkit [191362] by ap@apple.com
  • 3 edits in branches/safari-601.1.46-branch/Source/WebKit2

Build fix.

  • UIProcess/ios/forms/WKAirPlayRoutePicker.mm:
  • UIProcess/ios/forms/WKFileUploadPanel.mm:

(photoLibraryIcon):

3:38 PM Changeset in webkit [191361] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Unreviewed, GTK API test fix after r191351.

Reverted API change for GTK bindings.

  • html/HTMLOptionsCollection.idl:
  • html/HTMLSelectElement.idl:
3:02 PM Changeset in webkit [191360] by msaboff@apple.com
  • 13 edits
    3 adds in trunk

REGRESSION (r191175): OSR Exit from an inlined tail callee trashes callee save registers
https://bugs.webkit.org/show_bug.cgi?id=150336

Reviewed by Mark Lam.

Source/JavaScriptCore:

During OSR exit, we need to restore and transform the active stack into what the baseline
JIT expects. Inlined call frames become true call frames. When we reify an inlined call
frame and it is a tail call which we will be continuing from, we need to restore the tag
constant callee save registers with what was saved by the outermost caller.

Re-enabled tail calls and restored tests for tail calls.

  • dfg/DFGOSRExitCompilerCommon.cpp:

(JSC::DFG::reifyInlinedCallFrames): Select whether or not we use the callee save tag register
contents or what was saved by the inlining caller when populating an inlined callee's
callee save registers.

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::emitSaveCalleeSavesFor): This function no longer needs a stack offset.
(JSC::AssemblyHelpers::emitSaveOrCopyCalleeSavesFor): New helper.

  • runtime/Options.h: Turned tail calls back on.
  • tests/es6.yaml:
  • tests/stress/dfg-tail-calls.js:

(nonInlinedTailCall.callee):

  • tests/stress/mutual-tail-call-no-stack-overflow.js:

(shouldThrow):

  • tests/stress/tail-call-in-inline-cache.js:

(tail):

  • tests/stress/tail-call-no-stack-overflow.js:

(shouldThrow):

  • tests/stress/tail-call-recognize.js:

(callerMustBeRun):

  • tests/stress/tail-call-varargs-no-stack-overflow.js:

(shouldThrow):

LayoutTests:

Added a new regression test and restored tail call test results for js/caller-property.

  • js/caller-property-expected.txt:
  • js/regress-150336-expected.txt: Added.
  • js/regress-150336.html: Added.
  • js/script-tests/regress-150336.js: Added.

(bar):
(foo):
(test):

3:00 PM Changeset in webkit [191359] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Unreviewed, Another GTK build fix after r191351.

  • html/HTMLCollection.idl:
2:51 PM Changeset in webkit [191358] by Chris Dumez
  • 4 edits in trunk/Source/WebCore

Unreviewed, Another GTK build fix after r191351.

  • html/HTMLFieldSetElement.cpp:

(WebCore::HTMLFieldSetElement::elementsForNativeBindings):
(WebCore::HTMLFieldSetElement::elementsForObjC): Deleted.

  • html/HTMLFieldSetElement.h:
  • html/HTMLFieldSetElement.idl:
2:34 PM Changeset in webkit [191357] by Chris Fleizach
  • 2 edits in trunk/Source/WebCore

AX: CrashTracer: com.apple.WebKit.WebContent at com.apple.WebCore: WebCore::AccessibilityTable::tableElement const + 116
https://bugs.webkit.org/show_bug.cgi?id=150349

Reviewed by Brent Fulgham.

The crash point for this bug says that the parentElement of the firstBody is garbage when it's accessed.
Unfortunately, I could not reproduce this in-situ or with a test.
So my speculative solution is to recalculate those body elements to ensure that they're valid before we access.

  • accessibility/AccessibilityTable.cpp:

(WebCore::AccessibilityTable::tableElement):
(WebCore::AccessibilityTable::isDataTable):

1:54 PM Changeset in webkit [191356] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Take 2 on rebaselining fast/dynamic/insert-before-table-part-in-continuation.html
https://bugs.webkit.org/show_bug.cgi?id=150126

Patch by Ryan Haddad <Ryan Haddad> on 2015-10-20
Reviewed by Zalan Bujtas.

  • platform/win/fast/dynamic/insert-before-table-part-in-continuation-expected.txt:
1:48 PM Changeset in webkit [191355] by Joseph Pecoraro
  • 12 edits
    2 adds in trunk

Web Inspector: JavaScriptCore should parse sourceURL and sourceMappingURL directives
https://bugs.webkit.org/show_bug.cgi?id=150096

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • inspector/ContentSearchUtilities.cpp:

(Inspector::ContentSearchUtilities::scriptCommentPattern): Deleted.
(Inspector::ContentSearchUtilities::findScriptSourceURL): Deleted.
(Inspector::ContentSearchUtilities::findScriptSourceMapURL): Deleted.

  • inspector/ContentSearchUtilities.h:

No longer need to search script content.

  • inspector/ScriptDebugServer.cpp:

(Inspector::ScriptDebugServer::dispatchDidParseSource):
Carry over the sourceURL and sourceMappingURL from the SourceProvider.

  • inspector/agents/InspectorDebuggerAgent.cpp:

(Inspector::InspectorDebuggerAgent::sourceMapURLForScript):
(Inspector::InspectorDebuggerAgent::didParseSource):
No longer do content searching.

  • parser/Lexer.cpp:

(JSC::Lexer<T>::setCode):
(JSC::Lexer<T>::skipWhitespace):
(JSC::Lexer<T>::parseCommentDirective):
(JSC::Lexer<T>::parseCommentDirectiveValue):
(JSC::Lexer<T>::consume):
(JSC::Lexer<T>::lex):

  • parser/Lexer.h:

(JSC::Lexer::sourceURL):
(JSC::Lexer::sourceMappingURL):
(JSC::Lexer::sourceProvider): Deleted.
Give lexer the ability to detect script comment directives.
This just consumes characters in single line comments and
ultimately sets the sourceURL or sourceMappingURL found.

  • parser/Parser.h:

(JSC::Parser<LexerType>::parse):

  • parser/SourceProvider.h:

(JSC::SourceProvider::url):
(JSC::SourceProvider::sourceURL):
(JSC::SourceProvider::sourceMappingURL):
(JSC::SourceProvider::setSourceURL):
(JSC::SourceProvider::setSourceMappingURL):
After parsing a script, update the Source Provider with the
value of directives that may have been found in the script.

Source/WebInspectorUI:

  • UserInterface/Test/InspectorProtocol.js:

(InspectorProtocol._sendMessage):
(InspectorProtocol.dispatchMessageFromBackend):
This is only used for tests, so avoid console.log
and just dump directly to the system console.

LayoutTests:

  • inspector/debugger/sourceURLs-expected.txt: Added.
  • inspector/debugger/sourceURLs.html: Added.

sourceURL and sourceMappingURL detection.

1:47 PM Changeset in webkit [191354] by Chris Dumez
  • 7 edits in trunk/Source/WebKit2

Unreviewed, rolling out r191306.
https://bugs.webkit.org/show_bug.cgi?id=150371

"May have caused a significant warm PLT regression" (Requested
by cdumez_ on #webkit).

Reverted changeset:

"[WK2] Generalize NetworkCacheStorage API so it can store
different types of metadata"
https://bugs.webkit.org/show_bug.cgi?id=150221
http://trac.webkit.org/changeset/191306

Patch by Commit Queue <commit-queue@webkit.org> on 2015-10-20

1:42 PM WebKitNightlyElCapWorkaround edited by timothy@apple.com
(diff)
1:42 PM Changeset in webkit [191353] by Chris Dumez
  • 4 edits in trunk/Source/WebCore

Unreviewed, GTK build fix after r191351.

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::elementsForNativeBindings):
(WebCore::HTMLFormElement::elementsForObjC): Deleted.

  • html/HTMLFormElement.h:
  • html/HTMLFormElement.idl:
1:38 PM Changeset in webkit [191352] by Simon Fraser
  • 17 edits in trunk/Source/WebCore

Add basic TextStream output for Images
https://bugs.webkit.org/show_bug.cgi?id=150350

Reviewed by Darin Adler.

Add a TextStream output operator for Image, and virtual dump() member functions
that the various image types override to dump their own data.

Add isFoo() functions for each image type (surprising that these didn't already
exist) so we can print the image type.

Make isAnimated() const, and isBitmapImage() private.

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::dump):

  • platform/graphics/BitmapImage.h:
  • platform/graphics/CrossfadeGeneratedImage.cpp:

(WebCore::CrossfadeGeneratedImage::dump):

  • platform/graphics/CrossfadeGeneratedImage.h:
  • platform/graphics/GeneratedImage.cpp:
  • platform/graphics/GeneratedImage.h:
  • platform/graphics/GradientImage.cpp:

(WebCore::GradientImage::dump):

  • platform/graphics/GradientImage.h:
  • platform/graphics/Image.cpp:

(WebCore::Image::dump):
(WebCore::operator<<):

  • platform/graphics/Image.h:

(WebCore::Image::isGeneratedImage):
(WebCore::Image::isCrossfadeGeneratedImage):
(WebCore::Image::isNamedImageGeneratedImage):
(WebCore::Image::isGradientImage):
(WebCore::Image::isSVGImage):
(WebCore::Image::isAnimated):

  • platform/graphics/NamedImageGeneratedImage.cpp:

(WebCore::NamedImageGeneratedImage::dump):

  • platform/graphics/NamedImageGeneratedImage.h:
  • platform/graphics/cg/PDFDocumentImage.cpp:

(WebCore::PDFDocumentImage::dump):

  • platform/graphics/cg/PDFDocumentImage.h:
  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::dump):

  • svg/graphics/SVGImage.h:
11:48 AM WebKitNightlyElCapWorkaround edited by timothy@apple.com
(diff)
11:48 AM Changeset in webkit [191351] by Chris Dumez
  • 27 edits in trunk/Source/WebCore

Use tighter typing for collections / node lists' item() / namedItem() methods
https://bugs.webkit.org/show_bug.cgi?id=150347

Reviewed by Darin Adler.

Use tighter typing for collections / node lists' item() / namedItem() methods.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::getDocumentLinks):

  • dom/LiveNodeList.h:
  • dom/StaticNodeList.cpp:

(WebCore::StaticElementList::item):

  • dom/StaticNodeList.h:
  • html/CachedHTMLCollection.h:
  • html/HTMLAllCollection.idl:
  • html/HTMLCollection.idl:
  • html/HTMLFieldSetElement.cpp:

(WebCore::HTMLFieldSetElement::elements):
(WebCore::HTMLFieldSetElement::elementsForObjC):

  • html/HTMLFieldSetElement.h:
  • html/HTMLFieldSetElement.idl:
  • html/HTMLFormControlsCollection.cpp:

(WebCore::HTMLFormControlsCollection::customElementAfter):

  • html/HTMLFormControlsCollection.h:
  • html/HTMLFormControlsCollection.idl:
  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::item):
(WebCore::HTMLFormElement::elements):
(WebCore::HTMLFormElement::elementsForObjC):

  • html/HTMLFormElement.h:
  • html/HTMLFormElement.idl:
  • html/HTMLOptionsCollection.cpp:

(WebCore::HTMLOptionsCollection::add):

  • html/HTMLOptionsCollection.h:
  • html/HTMLOptionsCollection.idl:
  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::namedItem):
(WebCore::HTMLSelectElement::item):
(WebCore::HTMLSelectElement::setOption):

  • html/HTMLSelectElement.idl:
  • html/HTMLTableRowElement.cpp:

(WebCore::HTMLTableRowElement::deleteCell):

  • html/HTMLTableSectionElement.cpp:

(WebCore::HTMLTableSectionElement::deleteRow):

  • html/RadioNodeList.cpp:

(WebCore::toRadioButtonInputElement):
(WebCore::RadioNodeList::value):
(WebCore::RadioNodeList::setValue):

  • html/RadioNodeList.h:
  • html/RadioNodeList.idl:
11:45 AM WebKitNightlyElCapWorkaround edited by timothy@apple.com
(diff)
11:43 AM WebKitNightlyElCapWorkaround edited by timothy@apple.com
(diff)
11:37 AM Changeset in webkit [191350] by sbarati@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

GCAwareJITStubRoutineWithExceptionHandler has a stale CodeBlock pointer in its destructor
https://bugs.webkit.org/show_bug.cgi?id=150351

Reviewed by Mark Lam.

We may regenerate many GCAwareJITStubRoutineWithExceptionHandler stubs per one PolymorphicAccess.
Only the last GCAwareJITStubRoutineWithExceptionHandler stub that was generated will get the CodeBlock's aboutToDie()
notification. All other GCAwareJITStubRoutineWithExceptionHandler stubs will still be holding a stale CodeBlock pointer
that they will use in their destructor. The solution is to have GCAwareJITStubRoutineWithExceptionHandler remove its
exception handler in observeZeroRefCount() instead of its destructor. observeZeroRefCount() will run when a PolymorphicAccess
replaces its m_stubRoutine.

  • jit/GCAwareJITStubRoutine.cpp:

(JSC::GCAwareJITStubRoutineWithExceptionHandler::aboutToDie):
(JSC::GCAwareJITStubRoutineWithExceptionHandler::observeZeroRefCount):
(JSC::createJITStubRoutine):
(JSC::GCAwareJITStubRoutineWithExceptionHandler::~GCAwareJITStubRoutineWithExceptionHandler): Deleted.

  • jit/GCAwareJITStubRoutine.h:
11:33 AM Changeset in webkit [191349] by Chris Dumez
  • 3 edits
    2 adds in trunk

Only HTML spaces should be stripped from a <script>'s 'for' / 'event' attributes
https://bugs.webkit.org/show_bug.cgi?id=150335

Reviewed by Darin Adler.

Source/WebCore:

Only HTML spaces should be stripped from a <script>'s 'for' / 'event' attributes:
https://html.spec.whatwg.org/multipage/scripting.html#prepare-a-script (step 12.3)
https://html.spec.whatwg.org/multipage/infrastructure.html#space-character

Previously, we were uding the wrong stripping function and we were stripping
some non-HTML spaces.

Test: fast/dom/script-for-event-spaces.html

  • dom/ScriptElement.cpp:

(WebCore::ScriptElement::isScriptForEventSupported):

LayoutTests:

Add a layout test to check that U+000B does not get stripped from the
script's 'for' / 'event' attributes.

  • fast/dom/script-for-event-spaces-expected.txt: Added.
  • fast/dom/script-for-event-spaces.html: Added.
11:30 AM WebKitNightlyElCapWorkaround edited by timothy@apple.com
(diff)
11:15 AM Changeset in webkit [191348] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba4444.html flakily times out on Mavericks WK1
https://bugs.webkit.org/show_bug.cgi?id=150367

Patch by Ryan Haddad <Ryan Haddad> on 2015-10-20
Reviewed by Darin Adler.

  • platform/mac-wk1/TestExpectations:
11:00 AM Changeset in webkit [191347] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WTF

Try to fix the build by disabling MAC_GESTURE_EVENTS on 10.9 and 10.10

  • wtf/FeatureDefines.h:
10:56 AM Changeset in webkit [191346] by ap@apple.com
  • 2 edits in branches/safari-601.1.46-branch/Source/WebKit2

Touch a file to trigger a build.

  • UIProcess/ios/forms/WKAirPlayRoutePicker.mm:

(-[WKAirPlayRoutePicker initWithView:]):

10:24 AM WebKitNightlyElCapWorkaround edited by timothy@apple.com
(diff)
10:23 AM WebKitNightlyElCapWorkaround edited by timothy@apple.com
(diff)
10:23 AM WebKitNightlyElCapWorkaround edited by timothy@apple.com
(diff)
10:23 AM WebKitNightlyElCapWorkaround edited by timothy@apple.com
(diff)
10:20 AM WebKitNightlyElCapWorkaround created by timothy@apple.com
Initial workaround steps.
10:19 AM Changeset in webkit [191345] by ap@apple.com
  • 3 edits in trunk/Tools

Mac Debug EWS never finishes when there are failures
https://bugs.webkit.org/show_bug.cgi?id=150334

Reviewed by Daniel Bates.

  • Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
  • Scripts/webkitpy/tool/commands/queues.py:
10:16 AM Changeset in webkit [191344] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

Fix the !ENABLE(CSS_GRID_LAYOUT) build after r191128
https://bugs.webkit.org/show_bug.cgi?id=150321

Reviewed by Darin Adler.

  • css/CSSGrammar.y.in: Typo fix.
9:41 AM Changeset in webkit [191343] by timothy_horton@apple.com
  • 8 edits in trunk/Source

Try to fix the build by disabling MAC_GESTURE_EVENTS on 10.9 and 10.10

9:02 AM Changeset in webkit [191342] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Unreviewed, rolling out r191333.
https://bugs.webkit.org/show_bug.cgi?id=150362

Caused assertions on regression tests (Requested by ap on
#webkit).

Reverted changeset:

"ERROR: Unhandled web process message
'StorageAreaMap:DispatchStorageEvent'"
https://bugs.webkit.org/show_bug.cgi?id=150315
http://trac.webkit.org/changeset/191333

8:04 AM Changeset in webkit [191341] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[UNIX] ASSERTION FAILED: m_shouldWaitForSyncReplies in Connection::connectionDidClose()
https://bugs.webkit.org/show_bug.cgi?id=150361

Reviewed by Martin Robinson.

It doesn't always happen because it depends on how sockets are
closed, and the state of the threads. The problem is that we are
not handling the case when the read fails because we closed the
connection. In that case we log the error and call
Connection::connectionDidClose(). But it was connectionDidClose()
the one closing the socket. So, in this particular case it's not an
error but a normal termination, and we shouldn't try to close the
connection again. Something similar can happen while sending a
message, and we get a broken pipe error, but in that case we are
only printing the error, so it's harmless.

  • Platform/IPC/unix/ConnectionUnix.cpp:

(IPC::Connection::readyReadHandler): Only print error and call
connectionDidClose() if we are still connected when read fails.
(IPC::Connection::sendOutgoingMessage): Only print error if we are
still connected when send fails.

5:03 AM Changeset in webkit [191340] by Carlos Garcia Campos
  • 18 edits in trunk/Source/WebKit2

[GTK] Graphics corruption when entering/leaving AC mode quickly
https://bugs.webkit.org/show_bug.cgi?id=150323

Reviewed by Mario Sanchez Prada.

The UI process is notified when entering accelerated compositing
mode after the layers have been flushed and rendered to avoid
flickering. However, this is producing flickering in the GTK+
port, because we use an offscreen redirected window that is
resized to a minimium size to save memory when not in AC mode. The
web process always uses the current size of the redirected window,
so when entering AC mode, contents are rendered into the 1x1
window, then the UI process is notified, the redirected window is
resized to its actual size, and we force a resize to ask the web
process to render again, now at the correct size. Rendering at 1x1
and then resizing the window is what produces the flickering when
entering AC mode, but it's also inefficient, since we need to
render again after the redirected window is resized. So, this
patch adds a WillEnterAcceleratedCompositing message that is sent
to the UI process when the layer tree host is created but before
the contents have been composited and rendered. This is
implemented by the GTK+ port to prepare for entering AC mode, by
resizing the redirected window. When we actually enter AC mode,
the contents have already been rendered in the web process at the
correct size, so we can just use the redirected window surface
instead of the drawing area one, and paint in the web view without
any flickering. We no longer need the forceResize either.
When leaving accelerated compositing mode, we now clear the redirected
window resources after a short delay. This ensures that we have
already rendered the update sent in the ExitAcceleratedCompositingMode
message, but also that entering/leaving AC mode quickly doesn't
produce any redirected window resize.

  • UIProcess/API/gtk/PageClientImpl.cpp:

(WebKit::PageClientImpl::willEnterAcceleratedCompositingMode):

  • UIProcess/API/gtk/PageClientImpl.h:
  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseClearRedirectedWindowSoon):
(webkitWebViewBaseWillEnterAcceleratedCompositingMode):
(webkitWebViewBaseEnterAcceleratedCompositingMode):
(webkitWebViewBaseExitAcceleratedCompositingMode):

  • UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
  • UIProcess/CoordinatedGraphics/WebView.h:
  • UIProcess/DrawingAreaProxy.h:

(WebKit::DrawingAreaProxy::willEnterAcceleratedCompositingMode):

  • UIProcess/DrawingAreaProxy.messages.in:
  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::willEnterAcceleratedCompositingMode):

  • UIProcess/DrawingAreaProxyImpl.h:

(WebKit::DrawingAreaProxyImpl::forceResize): Deleted.

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

(WebKit::WebPageProxy::willEnterAcceleratedCompositingMode):

  • UIProcess/WebPageProxy.h:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::willEnterAcceleratedCompositingMode):

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

(WebKit::PageClientImpl::willEnterAcceleratedCompositingMode):

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode):

4:37 AM Changeset in webkit [191339] by Philippe Normand
  • 3 edits in trunk/Tools

[GTK] Enable OpenWebRTC test video/audio sources in tests

This is needed because we can't expect the buildbots to have
webcam/mic devices plugged in.

Rubber-stamped by Carlos Garcia Campos.

  • Scripts/run-gtk-tests:

(TestRunner._setup_testing_environment):

  • Scripts/webkitpy/port/gtk.py:

(GtkPort.setup_environ_for_server):

3:40 AM Changeset in webkit [191338] by svillar@igalia.com
  • 2 edits in trunk/Source/WebKit2

[GTK] Fix build for ENABLE_PLUGIN_PROCESS_GTK2=OFF
https://bugs.webkit.org/show_bug.cgi?id=150086

Reviewed by Darin Adler.

  • UIProcess/cairo/BackingStoreCairo.cpp:

(WebKit::BackingStore::createBackend):

3:07 AM Changeset in webkit [191337] by calvaris@igalia.com
  • 3 edits in trunk/LayoutTests

[Streams API] Update readable-stream-templated tests to latest spec
https://bugs.webkit.org/show_bug.cgi?id=149668

Reviewed by Darin Adler.

  • streams/reference-implementation/readable-stream-expected.txt: Updated expectations.
  • streams/reference-implementation/readable-stream.html: Updated tests.
2:57 AM Changeset in webkit [191336] by svillar@igalia.com
  • 3 edits
    2 adds in trunk

ASSERTION FAILED: computeMainAxisExtentForChild(child, MainOrPreferredSize, mainSize) in WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax
https://bugs.webkit.org/show_bug.cgi?id=149459

Reviewed by Darin Adler.

Source/WebCore:

This was regressed after 189567 where min-height|width:auto
support was added to flex items. The merge from Blink changes
was not correctly done for assertions. In particular we were
asserting if the resolved main size was not strictly greater
than 0, but 0 is actually a valid value.

Test: fast/flexbox/crash-resolved-main-size-zero.html

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax):

LayoutTests:

  • fast/flexbox/crash-resolved-main-size-zero-expected.txt: Added.
  • fast/flexbox/crash-resolved-main-size-zero.html: Added.
2:51 AM Changeset in webkit [191335] by calvaris@igalia.com
  • 14 edits
    1 add in trunk/Source

[Streams API] Rework some readable stream internals that can be common to writable streams
https://bugs.webkit.org/show_bug.cgi?id=150133

Reviewed by Darin Adler.

Source/JavaScriptCore:

  • runtime/CommonIdentifiers.h:
  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::init): Added RangeError also as native functions.

Source/WebCore:

There are some things in ReadableStream internals that be be used also for Writable Streams so it was necessary
to move some functions and refactor some code that can be shared by both implementations.

Queue was written with the functions declared at the implementation and keeping the improvement of having the
total size calculated instead of having to transverse the whole array.

The strategy is kept as an object and a common method is used to validate it as per spec.

Promises are reworked to keep in an internal slot inside the promise object the resolve and reject
functions. For convinience three functions were written, one to create the promise (and keep internally the
resolve and reject functions), one to resolve and another to reject. Promises can still be created with
Promise.resolve or reject as the resolve and rejectStreamsPromise functions operate under the assumption that
the internal slots might not exist.

invokeOrNoop and promiseInvokeOrNoop were moved to the common code as they will be also used by WritableStream.

Current test set suffices.

  • CMakeLists.txt:
  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSDOMWindowBase.cpp:
  • bindings/js/WebCoreJSBuiltinInternals.h:
  • bindings/js/WebCoreJSBuiltins.cpp:
  • bindings/js/WebCoreJSBuiltins.h: Build infrastructure.
  • Modules/streams/ReadableStream.js:

(initializeReadableStream): Reworked queue and strategy.

  • Modules/streams/ReadableStreamInternals.js:

(privateInitializeReadableStreamReader):
(errorReadableStream):
(getReadableStreamDesiredSize):
(cancelReadableStream):
(closeReadableStream):
(closeReadableStreamReader):
(enqueueInReadableStream):
(readFromReadableStreamReader): Reworked queue, strategy and promises.
(invokeOrNoop): Deleted.
(promiseInvokeOrNoop): Deleted.

  • Modules/streams/StreamInternals.js: Added.

(invokeOrNoop):
(promiseInvokeOrNoop): Moved from ReadableStreamInternals.js.
(validateAndNormalizeQueuingStrategy):
(createNewStreamsPromise):
(resolveStreamsPromise):
(rejectStreamsPromise):
(newQueue):
(dequeueValue):
(enqueueValueWithSize): Added according to the spec.

  • bindings/js/WebCoreBuiltinNames.h: Updated private names according to the new slots.
2:49 AM Changeset in webkit [191334] by yoav@yoav.ws
  • 24 edits in trunk

Rename the PICTURE_SIZES flag to CURRENTSRC
https://bugs.webkit.org/show_bug.cgi?id=150275

Reviewed by Dean Jackson.

.:

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/OptionsMac.cmake:
  • Source/cmake/OptionsWin.cmake:
  • Source/cmake/WebKitFeatures.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

No new tests, since there is no functional change.

  • Configurations/FeatureDefines.xcconfig:
  • html/HTMLImageElement.cpp:
  • html/HTMLImageElement.h:
  • html/HTMLImageElement.idl:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

  • wtf/FeatureDefines.h:

Tools:

  • Scripts/webkitperl/FeatureList.pm:

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.props:
  • win/tools/vsprops/FeatureDefinesCairo.props:

Oct 19, 2015:

11:21 PM Changeset in webkit [191333] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

ERROR: Unhandled web process message 'StorageAreaMap:DispatchStorageEvent'
https://bugs.webkit.org/show_bug.cgi?id=150315

Reviewed by Andreas Kling.

It was introduced in r184930, that keeps the session storage area
maps alive in the UI process when they are destroyed by the web
process. The problem is that we also keep the listeners, so that
events are also dispatched to the listeners of destroyed areas,
and the message handlers were removed in the web process.

  • UIProcess/Storage/StorageManager.cpp:

(WebKit::StorageManager::createTransientLocalStorageMap): Add a
listener for the new storage map ID when the map is reused.
(WebKit::StorageManager::destroyStorageMap): Always remove
listeners of destroyed maps.

11:18 PM Changeset in webkit [191332] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebCore

ASSERTION FAILED: m_state == Initialized in SubresourceLoader::didReceiveResponse()
https://bugs.webkit.org/show_bug.cgi?id=150327

Reviewed by Antti Koivisto.

This is how it happens:

  1. print() is called while the document is still loading, so m_shouldPrintWhenFinishedLoading is set to true
  2. DataURLDecoder::decode() finishes in the work queue thread, the completion handler is scheduled in the main thread
  3. The load is cancelled 3.1. SubresourceLoader::willCancel sets m_state = Finishing 3.2. DOMWindow::finishedLoading() is called, and since

m_shouldPrintWhenFinishedLoading is true, it does the print.

3.3. Cancellation finishes and ResourceLoader::releaseResources()

is called that sets m_reachedTerminalState = true

So, between 3.1 and 3.3, the state is Finishing, but
m_reachedTerminalState is false. What happens, in the GTK+ port at
least, is that the nested main loop used to make print()
synchronous, processes the DataURLDecoder::decode() completion
handler that was pending. The completion handler returns early if
m_reachedTerminalState is true, but it's not yet in this
particular case. So, it ends up calling didReceiveResponse,
because the decode didn't fail, when the subresource loader state
is Finishing.

I think there are two things here. One is that we shouldn't start
a print that was waiting for the load to finish when it
failed. That would fix the problem. But it's probably a good idea
to also check for cancellation in the DataURLDecoder::decode()
completion handler.

Fixes printing/print-close-crash.html in GTK+ Debug.

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::loadDataURL): Return early from
DataURLDecoder::decode() completion handler if the load was cancelled.

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::finishedLoading): Do not start a print that
was witing for the load to finish when it failed.

9:55 PM Changeset in webkit [191331] by mmaxfield@apple.com
  • 13 edits
    2 adds in trunk

FontCascade::typesettingFeatures() is not privy to font-variant-* nor font-feature-settings
https://bugs.webkit.org/show_bug.cgi?id=149775

Reviewed by Darin Adler.

Source/WebCore:

This patch has two pieces:

We used to have a boolean, enableLigatures, which affected how we perform shaping in both our
simple and complex text codepaths. However, in this brave new world of font-feature-settings
and font-variant-*, there are many properties which may affect shaping (and multiple kinds
of ligatures). This patch renames this boolean to requiresShaping, and teaches it about all
the various properties which affect text shaping.

Similarly, one of the places which used this enableLigatures boolean was to tell CoreText
if it should disable ligatures. However, we now have much finer-grained control over
ligatures during font creation. This patch moves the responsibility of dictating which
font features should be enabled entirely to the Font. Therefore, getCFStringAttributes()
doesn't know anything about ligatures anymore; the logic inside font creation is used
instead.

An added benefit of moving all the font feature logic to one place is that we can implement
the feature resolution algorithm described in the CSS3 fonts spec. This patch adds a test to
makes sure that text-rendering, font-feature-settings, and font-variant-* play together
nicely.

Test: fast/text/multiple-feature-properties.html

  • platform/graphics/Font.cpp:

(WebCore::Font::applyTransforms):

  • platform/graphics/Font.h:
  • platform/graphics/FontCascade.cpp:

(WebCore::FontCascade::FontCascade):
(WebCore::FontCascade::operator=):
(WebCore::FontCascade::update):
(WebCore::FontCascade::drawText):
(WebCore::FontCascade::drawEmphasisMarks):
(WebCore::FontCascade::width):
(WebCore::FontCascade::adjustSelectionRectForText):
(WebCore::FontCascade::offsetForPosition):
(WebCore::FontCascade::codePath):
(WebCore::FontCascade::floatWidthForSimpleText):

  • platform/graphics/FontCascade.h:

(WebCore::FontCascade::requiresShaping):
(WebCore::FontCascade::computeRequiresShaping):
(WebCore::FontCascade::enableLigatures): Deleted.
(WebCore::FontCascade::computeEnableLigatures): Deleted.

  • platform/graphics/WidthIterator.cpp:

(WebCore::WidthIterator::WidthIterator):
(WebCore::WidthIterator::applyFontTransforms):

  • platform/graphics/WidthIterator.h:
  • platform/graphics/cocoa/FontCacheCoreText.cpp:

(WebCore::preparePlatformFont):

  • platform/graphics/cocoa/FontCocoa.mm:

(WebCore::Font::canRenderCombiningCharacterSequence):

  • platform/graphics/mac/ComplexTextControllerCoreText.mm:

(WebCore::ComplexTextController::collectComplexTextRunsForCharacters):

  • platform/graphics/mac/SimpleFontDataCoreText.cpp:

(WebCore::Font::getCFStringAttributes):

  • svg/SVGFontData.h:

LayoutTests:

  • fast/text/multiple-feature-properties-expected.html: Added.
  • fast/text/multiple-feature-properties.html: Added.
9:22 PM Changeset in webkit [191330] by mmaxfield@apple.com
  • 5 edits in trunk/Source/WebCore

Shadow GraphicsContext's ImageInterpolationQuality inside GraphicsContextState
https://bugs.webkit.org/show_bug.cgi?id=150306

Reviewed by Simon Fraser.

When getting the ImageInterpolationQuality, there is no need to round-trip through
the platform's graphics context. This patch migrates this piece of state to the
existing idiom of having a setter in GraphicsContext.cpp which sets the relevent
state in GraphicsContextState and then calls into a platform-specific setter.

No new tests because there is no behavior change.

  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::setImageInterpolationQuality):

  • platform/graphics/GraphicsContext.h:

(WebCore::GraphicsContext::imageInterpolationQuality):

  • platform/graphics/cairo/GraphicsContextCairo.cpp:

(WebCore::GraphicsContext::setPlatformImageInterpolationQuality):
(WebCore::GraphicsContext::setImageInterpolationQuality): Deleted.
(WebCore::GraphicsContext::imageInterpolationQuality): Deleted.

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::convertInterpolationQuality):
(WebCore::GraphicsContext::platformInit):
(WebCore::GraphicsContext::setPlatformImageInterpolationQuality):
(WebCore::GraphicsContext::setImageInterpolationQuality): Deleted.
(WebCore::GraphicsContext::imageInterpolationQuality): Deleted.

8:39 PM Changeset in webkit [191329] by matthew_hanson@apple.com
  • 5 edits in branches/safari-601-branch/Source

Versioning.

8:37 PM Changeset in webkit [191328] by matthew_hanson@apple.com
  • 1 copy in tags/Safari-601.3.5

New Tag.

8:29 PM Changeset in webkit [191327] by Chris Dumez
  • 18 edits in trunk/Source/WebCore

Drop unnecessary Node::toInputElement() virtual function
https://bugs.webkit.org/show_bug.cgi?id=150341

Reviewed by Darin Adler.

Drop unnecessary Node::toInputElement() virtual function and use the
usual is<HTMLInputElement>() / downcast< HTMLInputElement >() instead.

7:43 PM Changeset in webkit [191326] by commit-queue@webkit.org
  • 12 edits in trunk/Source/WebCore

Unreviewed, rolling out r191324.
https://bugs.webkit.org/show_bug.cgi?id=150352

Shadowing CTM's state is not necessary (Requested by litherum
on #webkit).

Reverted changeset:

"Host GraphicsContext's CTM inside GraphicsContextState"
https://bugs.webkit.org/show_bug.cgi?id=150146
http://trac.webkit.org/changeset/191324

7:23 PM Changeset in webkit [191325] by Hunseop Jeong
  • 2 edits in trunk/Tools

Unreviewed, add myself to the committers list.

  • Scripts/webkitpy/common/config/contributors.json:
5:36 PM Changeset in webkit [191324] by mmaxfield@apple.com
  • 12 edits in trunk/Source/WebCore

Host GraphicsContext's CTM inside GraphicsContextState
https://bugs.webkit.org/show_bug.cgi?id=150146

There are 6 operations which interact with CTMs:

  • Get
  • Set
  • Concatenate
  • Scale
  • Rotate
  • Translate

This patch modifies all these operations so that these operations shadow the
platform's CTM inside GraphicsContextState. This way, we don't have to consult
with the underlying graphics context in order to know the current CTM.

There are currently many places in the Core Graphics ports where we will change
the platform's CTM out from under the GraphicsContext. This patch migrates
those users to going through GraphicsContext, thereby preserving the integrity
of the shadowed state.

No new tests because there is no behavior change.

  • platform/graphics/GraphicsContext.cpp: Setters deletate to platform calls.

The getter can just consult with the shadowed state.
(WebCore::GraphicsContext::concatCTM):
(WebCore::GraphicsContext::scale):
(WebCore::GraphicsContext::rotate):
(WebCore::GraphicsContext::translate):
(WebCore::GraphicsContext::setCTM):
(WebCore::GraphicsContext::getCTM):
(WebCore::GraphicsContext::beginTransparencyLayer):
(WebCore::GraphicsContext::applyDeviceScaleFactor):

  • platform/graphics/GraphicsContext.h:

(WebCore::GraphicsContext::scale):
(WebCore::GraphicsContext::checkCTMInvariants): Make sure the shadowed state
matches the platform graphics context's state.

  • platform/graphics/Image.h:

(WebCore::Image::nativeImageForCurrentFrame):

  • platform/graphics/cairo/GraphicsContextCairo.cpp: Renaming functions.

(WebCore::GraphicsContext::resetPlatformCTM):
(WebCore::GraphicsContext::getPlatformCTM):
(WebCore::GraphicsContext::translatePlatformCTM):
(WebCore::GraphicsContext::concatPlatformCTM):
(WebCore::GraphicsContext::setPlatformCTM):
(WebCore::GraphicsContext::rotatePlatformCTM):
(WebCore::GraphicsContext::scalePlatformCTM):
(WebCore::GraphicsContext::getCTM): Deleted.
(WebCore::GraphicsContext::translate): Deleted.
(WebCore::GraphicsContext::concatCTM): Deleted.
(WebCore::GraphicsContext::setCTM): Deleted.
(WebCore::GraphicsContext::rotate): Deleted.
(WebCore::GraphicsContext::scale): Deleted.

  • platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:

Renaming functions.
(WebCore::GraphicsContextPlatformPrivate::save):
(WebCore::GraphicsContextPlatformPrivate::restore):
(WebCore::GraphicsContextPlatformPrivate::flush):
(WebCore::GraphicsContextPlatformPrivate::clip):
(WebCore::GraphicsContextPlatformPrivate::scalePlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::rotatePlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::translatePlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::concatPlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::setPlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::scale): Deleted.
(WebCore::GraphicsContextPlatformPrivate::rotate): Deleted.
(WebCore::GraphicsContextPlatformPrivate::translate): Deleted.
(WebCore::GraphicsContextPlatformPrivate::concatCTM): Deleted.
(WebCore::GraphicsContextPlatformPrivate::setCTM): Deleted.

  • platform/graphics/cg/GraphicsContextCG.cpp: Renaming functions. Also,

migrate CTM setters to go through GraphicsContext.
(WebCore::GraphicsContext::resetPlatformCTM):
(WebCore::GraphicsContext::platformInit):
(WebCore::GraphicsContext::drawNativeImage):
(WebCore::GraphicsContext::drawPattern):
(WebCore::GraphicsContext::fillPath):
(WebCore::GraphicsContext::scalePlatformCTM):
(WebCore::GraphicsContext::rotatePlatformCTM):
(WebCore::GraphicsContext::translatePlatformCTM):
(WebCore::GraphicsContext::concatPlatformCTM):
(WebCore::GraphicsContext::setPlatformCTM):
(WebCore::GraphicsContext::getPlatformCTM):
(WebCore::GraphicsContext::scale): Deleted.
(WebCore::GraphicsContext::rotate): Deleted.
(WebCore::GraphicsContext::translate): Deleted.
(WebCore::GraphicsContext::concatCTM): Deleted.
(WebCore::GraphicsContext::setCTM): Deleted.
(WebCore::GraphicsContext::getCTM): Deleted.

  • platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:

(WebCore::GraphicsContextPlatformPrivate::save):
(WebCore::GraphicsContextPlatformPrivate::restore):
(WebCore::GraphicsContextPlatformPrivate::flush):
(WebCore::GraphicsContextPlatformPrivate::clip):
(WebCore::GraphicsContextPlatformPrivate::scalePlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::rotatePlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::translatePlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::concatPlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::setPlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::scale): Deleted.
(WebCore::GraphicsContextPlatformPrivate::rotate): Deleted.
(WebCore::GraphicsContextPlatformPrivate::translate): Deleted.
(WebCore::GraphicsContextPlatformPrivate::concatCTM): Deleted.
(WebCore::GraphicsContextPlatformPrivate::setCTM): Deleted.

  • platform/graphics/transforms/AffineTransform.h:

(WebCore::AffineTransform::isEssentiallyEqualTo): Equality comparison on floats
is not a good idea. Instead, this function is more valuable. (However, note that
it is expected for values in a CTM to hold values close to 0, which means that
this function might erroneously return false (similar to operator=()).

  • platform/graphics/win/GraphicsContextWin.cpp:

(WebCore::GraphicsContextPlatformPrivate::scalePlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::rotatePlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::translatePlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::concatPlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::setPlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::scale): Deleted.
(WebCore::GraphicsContextPlatformPrivate::rotate): Deleted.
(WebCore::GraphicsContextPlatformPrivate::translate): Deleted.
(WebCore::GraphicsContextPlatformPrivate::concatCTM): Deleted.
(WebCore::GraphicsContextPlatformPrivate::setCTM): Deleted.

  • platform/mac/DragImageMac.mm:

(WebCore::drawAtPoint):

  • platform/spi/cg/CoreGraphicsSPI.h:
5:17 PM Changeset in webkit [191323] by timothy_horton@apple.com
  • 24 edits in trunk/Source

Remove unused support for long presses from WebKit
https://bugs.webkit.org/show_bug.cgi?id=150345

Reviewed by Beth Dakin.

  • Shared/WebPreferencesDefinitions.h:
  • UIProcess/API/APIUIClient.h:

(API::UIClient::didBeginTrackingPotentialLongMousePress): Deleted.
(API::UIClient::didRecognizeLongMousePress): Deleted.
(API::UIClient::didCancelTrackingPotentialLongMousePress): Deleted.

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageUIClient): Deleted.

  • UIProcess/API/C/WKPageUIClient.h:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesGetLongMousePressEnabled):
(WKPreferencesSetLongMousePressEnabled): Deleted.

  • UIProcess/API/C/WKPreferencesRefPrivate.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didBeginTrackingPotentialLongMousePress): Deleted.
(WebKit::WebPageProxy::didRecognizeLongMousePress): Deleted.
(WebKit::WebPageProxy::didCancelTrackingPotentialLongMousePress): Deleted.

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h:

(API::InjectedBundle::PageUIClient::didBeginTrackingPotentialLongMousePress): Deleted.
(API::InjectedBundle::PageUIClient::didRecognizeLongMousePress): Deleted.
(API::InjectedBundle::PageUIClient::didCancelTrackingPotentialLongMousePress): Deleted.

  • WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h:
  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:

(WebKit::InjectedBundlePageUIClient::didBeginTrackingPotentialLongMousePress): Deleted.
(WebKit::InjectedBundlePageUIClient::didRecognizeLongMousePress): Deleted.
(WebKit::InjectedBundlePageUIClient::didCancelTrackingPotentialLongMousePress): Deleted.

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::didBeginTrackingPotentialLongMousePress): Deleted.
(WebKit::WebChromeClient::didRecognizeLongMousePress): Deleted.
(WebKit::WebChromeClient::didCancelTrackingPotentialLongMousePress): Deleted.

  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences): Deleted.

  • page/Chrome.cpp:

(WebCore::Chrome::didBeginTrackingPotentialLongMousePress): Deleted.
(WebCore::Chrome::didRecognizeLongMousePress): Deleted.
(WebCore::Chrome::didCancelTrackingPotentialLongMousePress): Deleted.

  • page/Chrome.h:
  • page/ChromeClient.h:
  • page/EventHandler.cpp:

(WebCore::EventHandler::EventHandler): Deleted.
(WebCore::EventHandler::clear): Deleted.
(WebCore::EventHandler::handleMousePressEvent): Deleted.
(WebCore::EventHandler::eventMayStartDrag): Deleted.
(WebCore::EventHandler::handleMouseReleaseEvent): Deleted.
(WebCore::EventHandler::beginTrackingPotentialLongMousePress): Deleted.
(WebCore::EventHandler::recognizeLongMousePress): Deleted.
(WebCore::EventHandler::cancelTrackingPotentialLongMousePress): Deleted.
(WebCore::EventHandler::clearLongMousePressState): Deleted.
(WebCore::EventHandler::handleLongMousePressMouseMovedEvent): Deleted.
(WebCore::EventHandler::handleMouseMoveEvent): Deleted.
(WebCore::EventHandler::handleDrag): Deleted.

  • page/EventHandler.h:
  • page/Settings.in:
5:05 PM Changeset in webkit [191322] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

Don't dump GestureEvent constructor attributes for now

Rubber-stamped by Alexey Proskuryakov.

  • js/dom/script-tests/global-constructors-attributes.js:
5:01 PM Changeset in webkit [191321] by Chris Dumez
  • 2 edits in trunk/Source/WebKit2

Make sure development Safari does not delete the stable Safari cache storage.
https://bugs.webkit.org/show_bug.cgi?id=150343

Reviewed by Antti Koivisto.

Make sure development Safari does not delete the stable Safari disk cache
storage. Development Safari now uses Version 5, while the last stable
Safari uses Version 4. Since the 2 versions can co-exist, it is best not
to drop the old cache version (4) at this point.

  • NetworkProcess/cache/NetworkCacheStorage.cpp:

(WebKit::NetworkCache::Storage::deleteOldVersions):

3:32 PM Changeset in webkit [191320] by timothy_horton@apple.com
  • 12 edits
    3 adds in trunk/Source

WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174

Reviewed by Darin Adler.

No new tests, just moving code around.

  • WebCore.xcodeproj/project.pbxproj:
  • platform/spi/mac/NSWindowSPI.h: Added.
  • UIProcess/API/mac/WKView.mm:
  • UIProcess/API/mac/WKViewInternal.h:
  • UIProcess/Cocoa/WebViewImpl.h: Added.
  • UIProcess/Cocoa/WebViewImpl.mm: Added.

(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::~WebViewImpl):
(WebKit::WebViewImpl::setDrawsBackground):
(WebKit::WebViewImpl::drawsBackground):
(WebKit::WebViewImpl::setDrawsTransparentBackground):
(WebKit::WebViewImpl::drawsTransparentBackground):
(WebKit::WebViewImpl::acceptsFirstResponder):
(WebKit::WebViewImpl::becomeFirstResponder):
(WebKit::WebViewImpl::resignFirstResponder):
(WebKit::WebViewImpl::isFocused):
(WebKit::WebViewImpl::viewWillStartLiveResize):
(WebKit::WebViewImpl::viewDidEndLiveResize):
(WebKit::WebViewImpl::setFrameSize):
(WebKit::WebViewImpl::disableFrameSizeUpdates):
(WebKit::WebViewImpl::enableFrameSizeUpdates):
(WebKit::WebViewImpl::frameSizeUpdatesDisabled):
(WebKit::WebViewImpl::setFrameAndScrollBy):
(WebKit::WebViewImpl::setFixedLayoutSize):
(WebKit::WebViewImpl::fixedLayoutSize):
(WebKit::WebViewImpl::setDrawingAreaSize):
(WebKit::WebViewImpl::setContentPreparationRect):
(WebKit::WebViewImpl::updateViewExposedRect):
(WebKit::WebViewImpl::setClipsToVisibleRect):
(WebKit::WebViewImpl::setIntrinsicContentSize):
(WebKit::WebViewImpl::intrinsicContentSize):
(WebKit::WebViewImpl::setViewScale):
(WebKit::WebViewImpl::viewScale):
(WebKit::WebViewImpl::layoutMode):
(WebKit::WebViewImpl::setLayoutMode):
(WebKit::WebViewImpl::supportsArbitraryLayoutModes):
(WebKit::WebViewImpl::updateSupportsArbitraryLayoutModes):
(WebKit::WebViewImpl::updateSecureInputState):
(WebKit::WebViewImpl::resetSecureInputState):
(WebKit::WebViewImpl::notifyInputContextAboutDiscardedComposition):
(WebKit::WebViewImpl::hasFullScreenWindowController):
(WebKit::WebViewImpl::fullScreenWindowController):
(WebKit::WebViewImpl::closeFullScreenWindowController):
(WebKit::WebViewImpl::fullScreenPlaceholderView):
(WebKit::WebViewImpl::createFullScreenWindow):
Move the actual implementation of a number of WKView methods into a
C++ class, WebViewImpl, which WKView calls directly into.
Eventually, we will move all of the logic of WKView into WebViewImpl,
and then duplicate the necessary forwarding in WKWebView and remove
WKWebView's inner WKView.

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

(WebKit::PageClientImpl::isViewFocused):
(WebKit::PageClientImpl::didCommitLoadForMainFrame):
(WebKit::PageClientImpl::updateSecureInputState):
(WebKit::PageClientImpl::resetSecureInputState):
(WebKit::PageClientImpl::notifyInputContextAboutDiscardedComposition):
(WebKit::PageClientImpl::beganEnterFullScreen):
(WebKit::PageClientImpl::beganExitFullScreen):
For now, forward PageClient requests that can be answered by WebViewImpl
to WebViewImpl. Eventually, we'll probably fold PageClientImpl and WebViewImpl
together into one class, and these things will collapse down.

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

(-[WKFullScreenWindowController initWithWindow:webView:page:]):
(-[WKFullScreenWindowController enterFullScreen:]):
(-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
(-[WKFullScreenWindowController exitFullScreen]):
(-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):
(-[WKFullScreenWindowController completeFinishExitFullScreenAnimationAfterRepaint]):
(-[WKFullScreenWindowController _manager]):
(-[WKFullScreenWindowController _startEnterFullScreenAnimationWithDuration:]):
(-[WKFullScreenWindowController _startExitFullScreenAnimationWithDuration:]):
(-[WKFullScreenWindowController initWithWindow:webView:]): Deleted.
(-[WKFullScreenWindowController _page]): Deleted.

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

(+[WKViewLayoutStrategy layoutStrategyWithPage:view:viewImpl:mode:]):
(-[WKViewLayoutStrategy initWithPage:view:viewImpl:mode:]):
(-[WKViewLayoutStrategy invalidate]):
(-[WKViewLayoutStrategy didChangeFrameSize]):
(-[WKViewViewSizeLayoutStrategy initWithPage:view:viewImpl:mode:]):
(-[WKViewFixedSizeLayoutStrategy initWithPage:view:viewImpl:mode:]):
(-[WKViewDynamicSizeComputedFromViewScaleLayoutStrategy initWithPage:view:viewImpl:mode:]):
(-[WKViewDynamicSizeComputedFromViewScaleLayoutStrategy updateLayout]):
(-[WKViewDynamicSizeComputedFromViewScaleLayoutStrategy didChangeFrameSize]):
(-[WKViewDynamicSizeComputedFromMinimumDocumentSizeLayoutStrategy initWithPage:view:viewImpl:mode:]):
(+[WKViewLayoutStrategy layoutStrategyWithPage:view:mode:]): Deleted.
(-[WKViewLayoutStrategy initWithPage:view:mode:]): Deleted.
(-[WKViewLayoutStrategy willDestroyView:]): Deleted.
(-[WKViewViewSizeLayoutStrategy initWithPage:view:mode:]): Deleted.
(-[WKViewFixedSizeLayoutStrategy initWithPage:view:mode:]): Deleted.
(-[WKViewDynamicSizeComputedFromViewScaleLayoutStrategy initWithPage:view:mode:]): Deleted.
(-[WKViewDynamicSizeComputedFromMinimumDocumentSizeLayoutStrategy initWithPage:view:mode:]): Deleted.
Make WKViewLayoutStrategy and WKFullScreenWindowController operate in terms of generic
NSViews instead of WKView, so that eventually they will be able to work for either
WKView or WKWebView, and so that they can sit underneath WebViewImpl.

  • WebKit2.xcodeproj/project.pbxproj:
3:20 PM Changeset in webkit [191319] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Restore an assertion to the way it was before r191310, which was correct.

  • platform/graphics/GraphicsTypes.cpp:

(WebCore::compositeOperatorName):

2:39 PM Changeset in webkit [191318] by Beth Dakin
  • 5 edits in trunk/Source

Build fix.

Source/WebCore:

  • dom/EventNames.in:
  • dom/make_event_factory.pl:

(generateImplementation):

Source/WTF:

  • wtf/FeatureDefines.h:
2:25 PM Changeset in webkit [191317] by matthew_hanson@apple.com
  • 3 edits in branches/safari-601-branch/Source/WebInspectorUI

Merge r190437. rdar://problem/23166302

2:21 PM Changeset in webkit [191316] by Csaba Osztrogonác
  • 3 edits in trunk/Source/WebCore

Fix the binding generator after r191176
https://bugs.webkit.org/show_bug.cgi?id=150320

Reviewed by Darin Adler.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateConstructorHelperMethods):

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

(WebCore::JSTestInterfaceConstructor::getConstructData):

1:39 PM Changeset in webkit [191315] by commit-queue@webkit.org
  • 12 edits
    3 deletes in trunk/Source

Unreviewed, rolling out r191307.
https://bugs.webkit.org/show_bug.cgi?id=150338

broke lots of API tests, need time to figure out whats up
(Requested by thorton on #webkit).

Reverted changeset:

"WKView being inside WKWebView leads to weird API issues"
https://bugs.webkit.org/show_bug.cgi?id=150174
http://trac.webkit.org/changeset/191307

1:32 PM Changeset in webkit [191314] by commit-queue@webkit.org
  • 12 edits in trunk/Source/WebCore

Unreviewed, rolling out r191295, r191297, and r191301.
https://bugs.webkit.org/show_bug.cgi?id=150337

ASSERTs in 5 tests (Requested by litherum on #webkit).

Reverted changesets:

"Host GraphicsContext's CTM inside GraphicsContextState"
https://bugs.webkit.org/show_bug.cgi?id=150146
http://trac.webkit.org/changeset/191295

"[iOS] Build fix after r191295"
http://trac.webkit.org/changeset/191297

"Unreviewed build fix after r191295."
http://trac.webkit.org/changeset/191301

1:29 PM Changeset in webkit [191313] by sbarati@apple.com
  • 12 edits in trunk/Source/JavaScriptCore

FTL should generate a unique OSR exit for each duplicated OSR exit stackmap intrinsic.
https://bugs.webkit.org/show_bug.cgi?id=149970

Reviewed by Filip Pizlo.

When we lower DFG to LLVM, we generate a stackmap intrnsic for OSR
exits. We also recorded the OSR exit inside FTL::JITCode during lowering.
This stackmap intrinsic may be duplicated or even removed by LLVM.
When the stackmap intrinsic is duplicated, we used to generate just
a single OSR exit data structure. Then, when we compiled an OSR exit, we
would look for the first record in the record list that had the same stackmap ID
as what the OSR exit data structure had. We did this even when the OSR exit
stackmap intrinsic was duplicated. This would lead us to grab the wrong FTL::StackMaps::Record.

Now, each OSR exit knows exactly which FTL::StackMaps::Record it corresponds to.
We accomplish this by having an OSRExitDescriptor that is recorded during
lowering. Each descriptor may be referenced my zero, one, or more OSRExits.
Now, no more than one stackmap intrinsic corresponds to the same index inside
JITCode's OSRExit Vector. Also, each OSRExit jump now jumps to a code location.

  • ftl/FTLCompile.cpp:

(JSC::FTL::mmAllocateDataSection):

  • ftl/FTLJITCode.cpp:

(JSC::FTL::JITCode::validateReferences):
(JSC::FTL::JITCode::liveRegistersToPreserveAtExceptionHandlingCallSite):

  • ftl/FTLJITCode.h:
  • ftl/FTLJITFinalizer.cpp:

(JSC::FTL::JITFinalizer::finalizeFunction):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileInvalidationPoint):
(JSC::FTL::DFG::LowerDFGToLLVM::compileIsUndefined):
(JSC::FTL::DFG::LowerDFGToLLVM::appendOSRExit):
(JSC::FTL::DFG::LowerDFGToLLVM::emitOSRExitCall):
(JSC::FTL::DFG::LowerDFGToLLVM::buildExitArguments):
(JSC::FTL::DFG::LowerDFGToLLVM::callStackmap):

  • ftl/FTLOSRExit.cpp:

(JSC::FTL::OSRExitDescriptor::OSRExitDescriptor):
(JSC::FTL::OSRExitDescriptor::validateReferences):
(JSC::FTL::OSRExit::OSRExit):
(JSC::FTL::OSRExit::codeLocationForRepatch):
(JSC::FTL::OSRExit::validateReferences): Deleted.

  • ftl/FTLOSRExit.h:

(JSC::FTL::OSRExit::considerAddingAsFrequentExitSite):

  • ftl/FTLOSRExitCompilationInfo.h:

(JSC::FTL::OSRExitCompilationInfo::OSRExitCompilationInfo):

  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileStub):
(JSC::FTL::compileFTLOSRExit):

  • ftl/FTLStackMaps.cpp:

(JSC::FTL::StackMaps::computeRecordMap):

  • ftl/FTLStackMaps.h:
1:18 PM Changeset in webkit [191312] by BJ Burg
  • 9 edits
    6 moves
    1 add in trunk/Source

Unify handling of JavaScriptCore scripts that are used in WebCore
https://bugs.webkit.org/show_bug.cgi?id=150245

Reviewed by Alex Christensen.

Source/JavaScriptCore:

Move all standalone JavaScriptCore scripts that are used by WebCore into the
JavaScriptCore/Scripts directory. Use JavaScriptCore_SCRIPTS_DIR to refer
to the path for these scripts.

  • DerivedSources.make:

Define and use JavaScriptCore_SCRIPTS_DIR.

Make a new group in the Xcode project and clean up references.

  • PlatformWin.cmake:

For Windows, copy these scripts over to ForwardingHeaders/Scripts since they
cannot be used directly from JAVASCRIPTCORE_DIR in AppleWin builds. Do the same
thing for both Windows variants to be consistent about it.

  • Scripts/cssmin.py: Renamed from Source/JavaScriptCore/inspector/scripts/cssmin.py.
  • Scripts/generate-combined-inspector-json.py: Renamed from Source/JavaScriptCore/inspector/scripts/generate-combined-inspector-json.py.
  • Scripts/generate-js-builtins: Renamed from Source/JavaScriptCore/generate-js-builtins.
  • Scripts/inline-and-minify-stylesheets-and-scripts.py: Renamed from Source/JavaScriptCore/inspector/scripts/inline-and-minify-stylesheets-and-scripts.py.
  • Scripts/jsmin.py: Renamed from Source/JavaScriptCore/inspector/scripts/jsmin.py.
  • Scripts/xxd.pl: Renamed from Source/JavaScriptCore/inspector/scripts/xxd.pl.

Source/WebCore:

Use the new JavaScriptCore_SCRIPTS_DIR variable.

  • CMakeLists.txt:
  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:

No need to export other variables like InspectorScripts anymore.

1:07 PM Changeset in webkit [191311] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Try again to fix the 32-bit build.

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(WebKit::WebContextMenuProxyMac::setupServicesMenu):

1:07 PM Changeset in webkit [191310] by Simon Fraser
  • 12 edits
    2 adds in trunk/Source/WebCore

Add TextStream formatters for FillLayer and all it entails
https://bugs.webkit.org/show_bug.cgi?id=150312

Reviewed by Tim Horton.

Add TextStream output formatters for FillLayer, and all the enum
types used by it.

Drive-by fixes for CompositeOperator and BlendMode string conversions.
compositeOperatorNames was missing the "difference" string, and compositeOperatorName()
would do an OOB memory access if blendOp was zero.

  • CMakeLists.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/Length.cpp:

(WebCore::operator<<):

  • platform/Length.h:
  • platform/LengthSize.cpp: Added.

(WebCore::operator<<):

  • platform/LengthSize.h:
  • platform/text/TextStream.h:
  • rendering/style/FillLayer.cpp:

(WebCore::operator<<):

  • rendering/style/FillLayer.h:
  • rendering/style/RenderStyleConstants.cpp: Added.

(WebCore::operator<<):

  • rendering/style/RenderStyleConstants.h:
12:53 PM Changeset in webkit [191309] by Wenson Hsieh
  • 17 edits in trunk/Source/WebKit2

Extend fast-clicking behavior to trigger on elements that have negligible zoom
https://bugs.webkit.org/show_bug.cgi?id=150248
<rdar://problem/23140069>

Reviewed by Simon Fraser.

Currently, fast-clicking only triggers on pages that have unscalable viewports. To allow more websites to benefit from fast-clicking
behavior, we generalize fast-clicking to also occur when tapping on elements for which double-tap-to-zoom would zoom the element in
or out by an insignificant amount. We define an insignificant amount of zoom to mean that zooming would increase the viewport scale
by less than a configurable threshold, or decrease the viewport scale by more than a configurable threshold. We accomplish this by
temporarily disabling the double tap gesture recognizer for the duration of the tap. This patch refactors some logic used to compute
zoomed viewports to make it possible to predict the change in viewport scale when double tapping to zoom. See the changes in
SmartMagnificationController and ViewGestureGeometryCollector for more details.

There are no new tests, since this patch does not change existing behavior. Instead, this patch adds the machinery needed for zoom-
dependent fast-clicking: by setting the preferences WebKitFastClickingEnabled and WebKitFastClickZoomThreshold, we will be able to tweak
the behavior dynamically.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _didCommitLayerTree:]):
(-[WKWebView _contentZoomScale]):
(-[WKWebView _targetContentZoomScaleForRect:currentScale:fitEntireRect:minimumScale:maximumScale:]):
(-[WKWebView _zoomToRect:withOrigin:fitEntireRect:minimumScale:maximumScale:minimumScrollDistance:]):
(-[WKWebView _viewportIsUserScalable]):

  • UIProcess/API/Cocoa/WKWebViewInternal.h:
  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::disableDoubleTapGesturesUntilTapIsFinishedIfNecessary):

  • UIProcess/ios/SmartMagnificationController.h:
  • UIProcess/ios/SmartMagnificationController.mm:

(WebKit::SmartMagnificationController::adjustSmartMagnificationTargetRectAndZoomScales):
(WebKit::SmartMagnificationController::didCollectGeometryForSmartMagnificationGesture):
(WebKit::SmartMagnificationController::magnify):

  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _didGetTapHighlightForRequest:color:quads:topLeftRadius:topRightRadius:bottomLeftRadius:bottomRightRadius:]):
(-[WKContentView _fastClickZoomThreshold]):
(-[WKContentView _allowDoubleTapToZoomForCurrentZoomScale:andTargetZoomScale:]):
(-[WKContentView _disableDoubleTapGesturesUntilTapIsFinishedIfNecessary:allowsDoubleTapZoom:targetRect:isReplaced:minimumScale:maximumScale:]):
(-[WKContentView _highlightLongPressRecognized:]):
(-[WKContentView _endPotentialTapAndEnableDoubleTapGesturesIfNecessary]):
(-[WKContentView _singleTapRecognized:]):
(cancelPotentialTapIfNecessary):
(-[WKContentView _singleTapCommited:]):
(-[WKContentView webSelectionRects]): Deleted.

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::disableDoubleTapGesturesUntilTapIsFinishedIfNecessary):

  • WebProcess/WebPage/ViewGestureGeometryCollector.cpp:

(WebKit::ViewGestureGeometryCollector::collectGeometryForSmartMagnificationGesture):
(WebKit::ViewGestureGeometryCollector::computeZoomInformationForNode):

  • WebProcess/WebPage/ViewGestureGeometryCollector.h:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::potentialTapAtPosition):

12:37 PM Changeset in webkit [191308] by ap@apple.com
  • 2 edits in trunk/Tools

Add new EWS queues to bot watcher's dashboard
https://bugs.webkit.org/show_bug.cgi?id=150297

Reviewed by Darin Adler.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:

(BubbleQueueServer):

12:23 PM Changeset in webkit [191307] by timothy_horton@apple.com
  • 12 edits
    3 adds in trunk/Source

WKView being inside WKWebView leads to weird API issues
https://bugs.webkit.org/show_bug.cgi?id=150174

Reviewed by Darin Adler.

No new tests, just moving code around.

  • WebCore.xcodeproj/project.pbxproj:
  • platform/spi/mac/NSWindowSPI.h: Added.
  • UIProcess/API/mac/WKView.mm:
  • UIProcess/API/mac/WKViewInternal.h:
  • UIProcess/Cocoa/WebViewImpl.h: Added.
  • UIProcess/Cocoa/WebViewImpl.mm: Added.

(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::~WebViewImpl):
(WebKit::WebViewImpl::setDrawsBackground):
(WebKit::WebViewImpl::drawsBackground):
(WebKit::WebViewImpl::setDrawsTransparentBackground):
(WebKit::WebViewImpl::drawsTransparentBackground):
(WebKit::WebViewImpl::acceptsFirstResponder):
(WebKit::WebViewImpl::becomeFirstResponder):
(WebKit::WebViewImpl::resignFirstResponder):
(WebKit::WebViewImpl::isFocused):
(WebKit::WebViewImpl::viewWillStartLiveResize):
(WebKit::WebViewImpl::viewDidEndLiveResize):
(WebKit::WebViewImpl::setFrameSize):
(WebKit::WebViewImpl::disableFrameSizeUpdates):
(WebKit::WebViewImpl::enableFrameSizeUpdates):
(WebKit::WebViewImpl::frameSizeUpdatesDisabled):
(WebKit::WebViewImpl::setFrameAndScrollBy):
(WebKit::WebViewImpl::setFixedLayoutSize):
(WebKit::WebViewImpl::fixedLayoutSize):
(WebKit::WebViewImpl::setDrawingAreaSize):
(WebKit::WebViewImpl::setContentPreparationRect):
(WebKit::WebViewImpl::updateViewExposedRect):
(WebKit::WebViewImpl::setClipsToVisibleRect):
(WebKit::WebViewImpl::setIntrinsicContentSize):
(WebKit::WebViewImpl::intrinsicContentSize):
(WebKit::WebViewImpl::setViewScale):
(WebKit::WebViewImpl::viewScale):
(WebKit::WebViewImpl::layoutMode):
(WebKit::WebViewImpl::setLayoutMode):
(WebKit::WebViewImpl::supportsArbitraryLayoutModes):
(WebKit::WebViewImpl::updateSupportsArbitraryLayoutModes):
(WebKit::WebViewImpl::updateSecureInputState):
(WebKit::WebViewImpl::resetSecureInputState):
(WebKit::WebViewImpl::notifyInputContextAboutDiscardedComposition):
(WebKit::WebViewImpl::hasFullScreenWindowController):
(WebKit::WebViewImpl::fullScreenWindowController):
(WebKit::WebViewImpl::closeFullScreenWindowController):
(WebKit::WebViewImpl::fullScreenPlaceholderView):
(WebKit::WebViewImpl::createFullScreenWindow):
Move the actual implementation of a number of WKView methods into a
C++ class, WebViewImpl, which WKView calls directly into.
Eventually, we will move all of the logic of WKView into WebViewImpl,
and then duplicate the necessary forwarding in WKWebView and remove
WKWebView's inner WKView.

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

(WebKit::PageClientImpl::isViewFocused):
(WebKit::PageClientImpl::didCommitLoadForMainFrame):
(WebKit::PageClientImpl::updateSecureInputState):
(WebKit::PageClientImpl::resetSecureInputState):
(WebKit::PageClientImpl::notifyInputContextAboutDiscardedComposition):
(WebKit::PageClientImpl::beganEnterFullScreen):
(WebKit::PageClientImpl::beganExitFullScreen):
For now, forward PageClient requests that can be answered by WebViewImpl
to WebViewImpl. Eventually, we'll probably fold PageClientImpl and WebViewImpl
together into one class, and these things will collapse down.

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

(-[WKFullScreenWindowController initWithWindow:webView:page:]):
(-[WKFullScreenWindowController enterFullScreen:]):
(-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
(-[WKFullScreenWindowController exitFullScreen]):
(-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):
(-[WKFullScreenWindowController completeFinishExitFullScreenAnimationAfterRepaint]):
(-[WKFullScreenWindowController _manager]):
(-[WKFullScreenWindowController _startEnterFullScreenAnimationWithDuration:]):
(-[WKFullScreenWindowController _startExitFullScreenAnimationWithDuration:]):
(-[WKFullScreenWindowController initWithWindow:webView:]): Deleted.
(-[WKFullScreenWindowController _page]): Deleted.

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

(+[WKViewLayoutStrategy layoutStrategyWithPage:view:viewImpl:mode:]):
(-[WKViewLayoutStrategy initWithPage:view:viewImpl:mode:]):
(-[WKViewLayoutStrategy invalidate]):
(-[WKViewLayoutStrategy didChangeFrameSize]):
(-[WKViewViewSizeLayoutStrategy initWithPage:view:viewImpl:mode:]):
(-[WKViewFixedSizeLayoutStrategy initWithPage:view:viewImpl:mode:]):
(-[WKViewDynamicSizeComputedFromViewScaleLayoutStrategy initWithPage:view:viewImpl:mode:]):
(-[WKViewDynamicSizeComputedFromViewScaleLayoutStrategy updateLayout]):
(-[WKViewDynamicSizeComputedFromViewScaleLayoutStrategy didChangeFrameSize]):
(-[WKViewDynamicSizeComputedFromMinimumDocumentSizeLayoutStrategy initWithPage:view:viewImpl:mode:]):
(+[WKViewLayoutStrategy layoutStrategyWithPage:view:mode:]): Deleted.
(-[WKViewLayoutStrategy initWithPage:view:mode:]): Deleted.
(-[WKViewLayoutStrategy willDestroyView:]): Deleted.
(-[WKViewViewSizeLayoutStrategy initWithPage:view:mode:]): Deleted.
(-[WKViewFixedSizeLayoutStrategy initWithPage:view:mode:]): Deleted.
(-[WKViewDynamicSizeComputedFromViewScaleLayoutStrategy initWithPage:view:mode:]): Deleted.
(-[WKViewDynamicSizeComputedFromMinimumDocumentSizeLayoutStrategy initWithPage:view:mode:]): Deleted.
Make WKViewLayoutStrategy and WKFullScreenWindowController operate in terms of generic
NSViews instead of WKView, so that eventually they will be able to work for either
WKView or WKWebView, and so that they can sit underneath WebViewImpl.

  • WebKit2.xcodeproj/project.pbxproj:
12:21 PM Changeset in webkit [191306] by Chris Dumez
  • 7 edits in trunk/Source/WebKit2

[WK2] Generalize NetworkCacheStorage API so it can store different types of metadata
https://bugs.webkit.org/show_bug.cgi?id=150221
<rdar://problem/23149771>

Reviewed by Darin Adler and Antti Koivisto.

Generalize NetworkCacheStorage API so it can store different types of
metadata alongside the network resources. This is a pre-requirement to
making our NetworkCache smarter by storing information about the
resources.

To keep the code simple, the entry type is now part of the entry key and
we store records of a specific type in a 'type' subfolder. The cache
structure looks like so:

  • WebKitCache/Version 5/[Partition]/[Type]/[Hash]
  • WebKitCache/Version 5/[Partition]/[Type]/[Hash]-blob (Optional)

Existing cache entries now that the 'resource' type as these are network
resources.

  • NetworkProcess/cache/NetworkCache.cpp:
  • NetworkProcess/cache/NetworkCacheKey.cpp:
  • NetworkProcess/cache/NetworkCacheKey.h:
  • NetworkProcess/cache/NetworkCacheStatistics.cpp:
  • NetworkProcess/cache/NetworkCacheStorage.cpp:
  • NetworkProcess/cache/NetworkCacheStorage.h:
12:19 PM Changeset in webkit [191305] by timothy_horton@apple.com
  • 8 edits in trunk/Source

Try to fix the iOS build

  • Configurations/FeatureDefines.xcconfig:
12:11 PM Changeset in webkit [191304] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Rebaselining fast/dynamic/insert-before-table-part-in-continuation.html for win
https://bugs.webkit.org/show_bug.cgi?id=150126

Patch by Ryan Haddad <Ryan Haddad> on 2015-10-19
Reviewed by Zalan Bujtas.

  • platform/win/fast/dynamic/insert-before-table-part-in-continuation-expected.txt:
12:09 PM Changeset in webkit [191303] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Try to fix the 32-bit build.

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(WebKit::WebContextMenuProxyMac::setupServicesMenu):

11:59 AM Changeset in webkit [191302] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Fix image service menus somewhat
https://bugs.webkit.org/show_bug.cgi?id=150265

Reviewed by Tim Horton.

  • Shared/ContextMenuContextData.cpp:

(WebKit::ContextMenuContextData::ContextMenuContextData):
It's a service menu if we have a controlled image.

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(WebKit::WebContextMenuProxyMac::setupServicesMenu):
Use an item provider.

11:50 AM Changeset in webkit [191301] by achristensen@apple.com
  • 3 edits in trunk/Source/WebCore

Unreviewed build fix after r191295.

  • platform/graphics/cairo/GraphicsContextCairo.cpp:

(WebCore::GraphicsContext::translatePlatformCTM):
(WebCore::GraphicsContext::setPlatformFillColor):
(WebCore::GraphicsContext::concatPlatformCTM):
(WebCore::GraphicsContext::setPlatformCTM):
(WebCore::GraphicsContext::setPlatformShadow):
(WebCore::GraphicsContext::rotatePlatformCTM):
(WebCore::GraphicsContext::scalePlatformCTM):
(WebCore::GraphicsContext::clipOut):

  • platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:

(WebCore::GraphicsContextPlatformPrivate::save):
(WebCore::GraphicsContextPlatformPrivate::restore):
(WebCore::GraphicsContextPlatformPrivate::flush):
(WebCore::GraphicsContextPlatformPrivate::clip):
(WebCore::GraphicsContextPlatformPrivate::scalePlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::rotatePlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::translatePlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::concatPlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::setPlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::syncContext):
(WebCore::GraphicsContextPlatformPrivate::scale): Deleted.
(WebCore::GraphicsContextPlatformPrivate::rotate): Deleted.
(WebCore::GraphicsContextPlatformPrivate::translate): Deleted.
(WebCore::GraphicsContextPlatformPrivate::concatCTM): Deleted.
(WebCore::GraphicsContextPlatformPrivate::setCTM): Deleted.

11:32 AM Changeset in webkit [191300] by keith_miller@apple.com
  • 11 edits in trunk/Source/JavaScriptCore

Add regression tests for TypedArray.prototype functions' error messages.
https://bugs.webkit.org/show_bug.cgi?id=150288

Reviewed by Darin Adler.

Fix a typo in the text passed by TypedArrray.prototype.filter type error message.
Add tests that check the actual error message text for all the TypeArray.prototype
functions that throw.

  • builtins/TypedArray.prototype.js:

(filter):

  • tests/stress/typedarray-every.js:
  • tests/stress/typedarray-filter.js:
  • tests/stress/typedarray-find.js:
  • tests/stress/typedarray-findIndex.js:
  • tests/stress/typedarray-forEach.js:
  • tests/stress/typedarray-map.js:
  • tests/stress/typedarray-reduce.js:
  • tests/stress/typedarray-reduceRight.js:
  • tests/stress/typedarray-some.js:
11:10 AM Changeset in webkit [191299] by timothy_horton@apple.com
  • 37 edits
    6 adds in trunk/Source

Add magnify and rotate gesture event support for Mac
https://bugs.webkit.org/show_bug.cgi?id=150179
<rdar://problem/8036240>

Reviewed by Darin Adler.

No new tests.

  • Configurations/FeatureDefines.xcconfig:

New feature flag.

  • Configurations/WebCore.xcconfig:

Don't exclude generated gesture sources; they are already #ifdef-guarded.

  • DerivedSources.make:

Add GestureEvent.idl for ENABLE_MAC_GESTURE_EVENTS too.

  • WebCore.xcodeproj/project.pbxproj:

Add GestureEvents.cpp.

  • bindings/objc/DOMEvents.mm:

(kitClass):
Support DOMGestureEvent on Mac if the new flag is enabled.

  • dom/mac/GestureEvents.cpp: Added.
  • page/mac/EventHandlerMac.mm:
  • page/EventHandler.cpp:

(WebCore::EventHandler::clear):

  • page/EventHandler.h:

Enable some gesture-related code on Mac if the new flag is enabled.

  • platform/PlatformEvent.h:
  • Configurations/FeatureDefines.xcconfig:

New feature flag.

  • Shared/NativeWebGestureEvent.h: Added.

(WebKit::NativeWebGestureEvent::nativeEvent):

  • Shared/WebEvent.h:
  • Shared/WebEventConversion.cpp:

(WebKit::WebKit2PlatformGestureEvent::WebKit2PlatformGestureEvent):
(WebKit::platform):

  • Shared/WebEventConversion.h:
  • Shared/mac/NativeWebGestureEventMac.mm: Added.

(WebKit::webEventTypeForNSEvent):
(WebKit::pointForEvent):
(WebKit::NativeWebGestureEvent::NativeWebGestureEvent):
Add and plumb a new native event that wraps a NSEvent of type
NSEventTypeMagnify or NSEventTypeRotate (gesture events).

  • Shared/mac/WebGestureEvent.cpp: Added.

(WebKit::WebGestureEvent::encode):
(WebKit::WebGestureEvent::decode):
(WebKit::WebGestureEvent::isGestureEventType):

  • Shared/mac/WebGestureEvent.h: Added.

(WebKit::WebGestureEvent::WebGestureEvent):
(WebKit::WebGestureEvent::position):
(WebKit::WebGestureEvent::gestureScale):
(WebKit::WebGestureEvent::gestureRotation):
Add IPC plumbing for WebGestureEvent, which becomes a WebCore::PlatformGestureEvent.

  • UIProcess/API/Cocoa/WKViewPrivate.h:

Remove unnecessary iPhone-only WKView code.
Add _gestureEventWasNotHandledByWebCore, SPI which can be overridden
to react when WebCore decides not to handle a gesture event.

  • UIProcess/API/mac/WKView.mm:

(-[WKView magnifyWithEvent:]):
Route magnification gesture events to the page, unless we're already
in an active view zoom gesture, in which case we'll bypass the page
and send the event straight to ViewGestureController.

(-[WKView rotateWithEvent:]):
Route rotation gesture events to the page.

(-[WKView _gestureEventWasNotHandledByWebCore:]):
Let ViewGestureController know that WebCore didn't handle a gesture event.
We always give WebCore the first crack at the event if we're not in a zoom,
because it could preventDefault() on the Begin phase event, and that should
prevent pinch-zoom from starting.

  • UIProcess/PageClient.h:
  • UIProcess/mac/PageClientImpl.h:
  • UIProcess/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::gestureEventWasNotHandledByWebCore):
Plumb gestureEventWasNotHandledByWebCore back from WebPageProxy to WKView.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::handleGestureEvent):
(WebKit::WebPageProxy::didReceiveEvent):

  • UIProcess/WebPageProxy.h:

Forward gesture events to EventDispatcher, and let WKView know when WebCore
passes on handling them.

  • UIProcess/mac/ViewGestureController.h:

(WebKit::ViewGestureController::hasActiveMagnificationGesture):

  • UIProcess/mac/ViewGestureControllerMac.mm:

(WebKit::ViewGestureController::gestureEventWasNotHandledByWebCore):
(WebKit::ViewGestureController::handleMagnificationGestureEvent):
Don't try to start a zoom with anything other than a Begin phase event.
Try to start a zoom with any events that WebCore doesn't handle.
Move dispatch of endMagnificationGesture into ViewGestureController;
there is no reason for that to be in WKView anymore.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/EventDispatcher.cpp:

(WebKit::EventDispatcher::gestureEvent):
(WebKit::EventDispatcher::dispatchGestureEvent):

  • WebProcess/WebPage/EventDispatcher.h:
  • WebProcess/WebPage/EventDispatcher.messages.in:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::handleGestureEvent):
(WebKit::WebPage::gestureEvent):

  • WebProcess/WebPage/WebPage.h:

Dispatch to the main thread and hand off the gesture event to WebCore,
asynchronously informing the UI process of whether the event was handled or not.

  • Configurations/FeatureDefines.xcconfig:

New feature flag.

  • Configurations/FeatureDefines.xcconfig:

New feature flag.

11:01 AM Changeset in webkit [191298] by ChangSeok Oh
  • 2 edits in trunk/Tools

REGRESSION(r190262): User media unit test failures after r190262
https://bugs.webkit.org/show_bug.cgi?id=149580

Reviewed by Carlos Garcia Campos.

The test failures on usermedia-permission-requests and WebKit2.UserMediaBasic have gone.
So we do not need to skip them anymore.

  • Scripts/run-gtk-tests:

(TestRunner): Deleted.

10:58 AM Changeset in webkit [191297] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] Build fix after r191295

Unreviewed.

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::resetPlatformCTM):

10:54 AM Changeset in webkit [191296] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Removing Yosemite-only flag for flaky test http/tests/media/video-query-url.html
https://bugs.webkit.org/show_bug.cgi?id=141085

Patch by Ryan Haddad <Ryan Haddad> on 2015-10-19
Reviewed by Alexey Proskuryakov.

  • platform/mac-wk2/TestExpectations:
10:28 AM Changeset in webkit [191295] by mmaxfield@apple.com
  • 11 edits in trunk/Source/WebCore

Host GraphicsContext's CTM inside GraphicsContextState
https://bugs.webkit.org/show_bug.cgi?id=150146

Reviewed by Simon Fraser.

There are 6 operations which interact with CTMs:

  • Get
  • Set
  • Concatenate
  • Scale
  • Rotate
  • Translate

This patch modifies all these operations so that these operations shadow the
platform's CTM inside GraphicsContextState. This way, we don't have to consult
with the underlying graphics context in order to know the current CTM.

There are currently many places in the Core Graphics ports where we will change
the platform's CTM out from under the GraphicsContext. This patch migrates
those users to going through GraphicsContext, thereby preserving the integrity
of the shadowed state.

No new tests because there is no behavior change.

  • platform/graphics/GraphicsContext.cpp: Setters deletate to platform calls.

The getter can just consult with the shadowed state.
(WebCore::GraphicsContext::concatCTM):
(WebCore::GraphicsContext::scale):
(WebCore::GraphicsContext::rotate):
(WebCore::GraphicsContext::translate):
(WebCore::GraphicsContext::setCTM):
(WebCore::GraphicsContext::getCTM):
(WebCore::GraphicsContext::beginTransparencyLayer):
(WebCore::GraphicsContext::applyDeviceScaleFactor):

  • platform/graphics/GraphicsContext.h:

(WebCore::GraphicsContext::scale):
(WebCore::GraphicsContext::checkCTMInvariants): Make sure the shadowed state
matches the platform graphics context's state.

  • platform/graphics/cairo/GraphicsContextCairo.cpp: Renaming functions.

(WebCore::GraphicsContext::resetPlatformCTM):
(WebCore::GraphicsContext::getPlatformCTM):
(WebCore::GraphicsContext::translatePlatformCTM):
(WebCore::GraphicsContext::concatPlatformCTM):
(WebCore::GraphicsContext::setPlatformCTM):
(WebCore::GraphicsContext::rotatePlatformCTM):
(WebCore::GraphicsContext::scalePlatformCTM):
(WebCore::GraphicsContext::getCTM): Deleted.
(WebCore::GraphicsContext::translate): Deleted.
(WebCore::GraphicsContext::concatCTM): Deleted.
(WebCore::GraphicsContext::setCTM): Deleted.
(WebCore::GraphicsContext::rotate): Deleted.
(WebCore::GraphicsContext::scale): Deleted.

  • platform/graphics/cg/GraphicsContextCG.cpp: Renaming functions. Also,

migrate CTM setters to go through GraphicsContext.
(WebCore::GraphicsContext::resetPlatformCTM):
(WebCore::GraphicsContext::platformInit):
(WebCore::GraphicsContext::drawNativeImage):
(WebCore::drawPatternCallback):
(WebCore::GraphicsContext::drawPattern):
(WebCore::GraphicsContext::fillPath):
(WebCore::GraphicsContext::strokePath):
(WebCore::GraphicsContext::fillRect):
(WebCore::GraphicsContext::strokeRect):
(WebCore::GraphicsContext::scalePlatformCTM):
(WebCore::GraphicsContext::rotatePlatformCTM):
(WebCore::GraphicsContext::translatePlatformCTM):
(WebCore::GraphicsContext::concatPlatformCTM):
(WebCore::GraphicsContext::setPlatformCTM):
(WebCore::GraphicsContext::getPlatformCTM):
(WebCore::GraphicsContext::scale): Deleted.
(WebCore::GraphicsContext::rotate): Deleted.
(WebCore::GraphicsContext::translate): Deleted.
(WebCore::GraphicsContext::concatCTM): Deleted.
(WebCore::GraphicsContext::setCTM): Deleted.
(WebCore::GraphicsContext::getCTM): Deleted.

  • platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:

(WebCore::GraphicsContextPlatformPrivate::save):
(WebCore::GraphicsContextPlatformPrivate::restore):
(WebCore::GraphicsContextPlatformPrivate::flush):
(WebCore::GraphicsContextPlatformPrivate::clip):
(WebCore::GraphicsContextPlatformPrivate::scale):
(WebCore::GraphicsContextPlatformPrivate::rotate):
(WebCore::GraphicsContextPlatformPrivate::translate):
(WebCore::GraphicsContextPlatformPrivate::concatCTM):
(WebCore::GraphicsContextPlatformPrivate::setCTM):

  • platform/graphics/transforms/AffineTransform.h:

(WebCore::AffineTransform::isEssentiallyEqualTo): Equality comparison on floats
is not a good idea. Instead, this function is more valuable. (However, note that
it is expected for values in a CTM to hold values close to 0, which means that
this function might erroneously return false (similar to operator=()).

  • platform/graphics/win/GraphicsContextWin.cpp:

(WebCore::GraphicsContextPlatformPrivate::scale):
(WebCore::GraphicsContextPlatformPrivate::concatPlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::setPlatformCTM):
(WebCore::GraphicsContextPlatformPrivate::concatCTM): Deleted.
(WebCore::GraphicsContextPlatformPrivate::setCTM): Deleted.

  • platform/mac/DragImageMac.mm:

(WebCore::drawAtPoint):

9:52 AM Changeset in webkit [191294] by Chris Dumez
  • 5 edits in trunk

Null dereference loading Blink layout test fast/forms/color/input-color-onchange-event.html
https://bugs.webkit.org/show_bug.cgi?id=150192
<rdar://problem/23135050>

Reviewed by Darin Adler.

Source/WebCore:

Calling internals.selectColorInColorChooser() with a non-Element would
cause a null dereference. This is because in such case, the implementation
method is passed a null pointer and we would fail to null-check it. This
patch now does the null-check.

No new tests, existing test was updated.

  • testing/Internals.cpp:

(WebCore::Internals::selectColorInColorChooser):

LayoutTests:

Import more checks from the corresponding Blink test.

  • fast/forms/color/input-color-onchange-event-expected.txt:
  • fast/forms/color/input-color-onchange-event.html:
9:36 AM Changeset in webkit [191293] by calvaris@igalia.com
  • 3 edits in trunk/LayoutTests

[Streams API] Update readable-stream-reader tests to latest spec
https://bugs.webkit.org/show_bug.cgi?id=149699

Reviewed by Darin Adler.

  • streams/reference-implementation/readable-stream-reader-expected.txt: Updated expectations.
  • streams/reference-implementation/readable-stream-reader.html: Updated tests.
9:34 AM Changeset in webkit [191292] by calvaris@igalia.com
  • 2 edits in trunk/LayoutTests

[Streams API] Update readable-stream-controller-error tests against latest reference
https://bugs.webkit.org/show_bug.cgi?id=149700

Reviewed by Darin Adler.

  • streams/readable-stream-controller-error.html: Updated tests.
9:20 AM Changeset in webkit [191291] by Csaba Osztrogonác
  • 4 edits in trunk/Source/JavaScriptCore

Fix the ENABLE(WEBASSEMBLY) build after r190827
https://bugs.webkit.org/show_bug.cgi?id=150330

Reviewed by Geoffrey Garen.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock): Removed the duplicated VM argument.

  • bytecode/CodeBlock.h:

(JSC::WebAssemblyCodeBlock::create): Added new parameters to finishCreation() calls.
(JSC::WebAssemblyCodeBlock::WebAssemblyCodeBlock): Change VM parameter to pointer to match *CodeBlock classes.

  • runtime/Executable.cpp:

(JSC::WebAssemblyExecutable::prepareForExecution): Removed extra ")" and pass pointer as it is expected.

9:13 AM Changeset in webkit [191290] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

DoubleRep fails to convert SpecBoolean values.
https://bugs.webkit.org/show_bug.cgi?id=150313

Reviewed by Geoffrey Garen.

This was uncovered by the op_sub stress test on 32-bit builds. On 32-bit builds,
DoubleRep will erroneously convert 'true' to a 'NaN' instead of a double 1.
On 64-bit, the same issue exists but is masked by another bug in DoubleRep where
boolean values will always erroneously trigger a BadType OSR exit.

The erroneous conversion of 'true' to 'NaN' is because the 'true' case in
compileDoubleRep() is missing a jump to the "done" destination. Instead, it
fall through to the "isUndefined" case where it produces a NaN.

The 64-bit erroneous BadType OSR exit is due to the boolean type check being
implemented incorrectly. It was checking if any bits other than bit 0 were set.
However, boolean JS values always have TagBitBool (the 3rd bit) set. Hence, the
check will always fail if we have a boolean value.

This patch fixes both of these issues.

No new test is needed because these issues are already covered by scenarios in
the op_sub.js stress test. This patch also fixes the op_sub.js test to throw an
exception if any failures are encountered (as expected by the stress test
harness). This patch also re-worked the test code to provide more accurate
descriptions of each test scenario for error reporting.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileDoubleRep):

  • tests/stress/op_sub.js:

(generateScenarios):
(func):
(initializeTestCases):
(runTest):
(stringify): Deleted.

9:10 AM Changeset in webkit [191289] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

Fix the !ENABLE(CSS_GRID_LAYOUT) build after r190840
https://bugs.webkit.org/show_bug.cgi?id=150322

Reviewed by Ryosuke Niwa.

  • html/HTMLDetailsElement.cpp:
3:45 AM Changeset in webkit [191288] by youenn.fablet@crf.canon.fr
  • 6 edits in trunk/Source/WebCore

Binding generator should generate names for JSBuiltins partial interface methods using ImplementedBy value
https://bugs.webkit.org/show_bug.cgi?id=150163

Reviewed by Darin Adler.

Covered by updated binding tests.

Updating generation of JS built-in function/attribute name to use the ImplementedBy value of the interface if any.
This allows splitting JS built-ins just like is done for IDLs.
Updated accordingly the JS Builtin header include.

  • bindings/scripts/CodeGeneratorJS.pm:

(GetAttributeGetterName): Updated to pass function object and not only function name.
(GetAttributeSetterName): Ditto.
(GetFunctionName): Removed unneeded code plus updated to pass function object and not only function name.
(GenerateConstructorHelperMethods): Making direct use of GetJSBuiltinFunctionNameFromString since there is no function object for the constructor.
(GetJSBuiltinFunctionName): Updated to take into accound ImplementedBy value if any.
(GetJSBuiltinFunctionNameFromString):
(GetJSBuiltinScopeName): Returns either the interface name or its ImplementedBy value.
(AddJSBuiltinIncludesIfNeeded): Updating name of the header in case of partial interface.

  • bindings/scripts/test/JS/JSTestInterface.cpp:
  • bindings/scripts/test/ObjC/DOMTestInterface.h:
  • bindings/scripts/test/ObjC/DOMTestInterface.mm:

(-[DOMTestInterface builtinAttribute]):
(-[DOMTestInterface setBuiltinAttribute:]):
(-[DOMTestInterface builtinFunction]):

  • bindings/scripts/test/TestSupplemental.idl: Added JSBuiltin attribute and function.
3:36 AM Changeset in webkit [191287] by youenn.fablet@crf.canon.fr
  • 14 edits
    1 add in trunk/Source/WebCore

Binding generator should allow generating private JS functions
https://bugs.webkit.org/show_bug.cgi?id=150167

Reviewed by Darin Adler.

Introducing the "Private" keyword for that purpose.
Applying it to MediaDevices.getUserMedia which can be used directly or through navigator.webkitGetUserMedia
which could be implemented as JS builtin based on it.

"Private" functions are added to the prototype with a corresponding private symbol.
This symbol must be defined in bindings/js/WebCoreBuiltinNames.h.

Adding a getUserMediaFromJS function visible from builtins script.
Implementing MediaDevices.getUserMedia as a JS builtin based on it.

Adding binding generator test.

  • CMakeLists.txt: Adding MediaDevices.js.
  • DerivedSources.make: Ditto.
  • Modules/mediastream/MediaDevices.h:

(WebCore::MediaDevices::getUserMediaFromJS):

  • Modules/mediastream/MediaDevices.idl: Marking getUserMediaFromJS private and getUserMedia JSBuiltin.
  • Modules/mediastream/MediaDevices.js: Added.

(getUserMedia):

  • bindings/js/WebCoreBuiltinNames.h:
  • bindings/js/WebCoreJSBuiltins.cpp:
  • bindings/js/WebCoreJSBuiltins.h:

(WebCore::JSBuiltinFunctions::JSBuiltinFunctions):
(WebCore::JSBuiltinFunctions::mediaDevicesBuiltins):

  • bindings/scripts/CodeGeneratorGObject.pm: Skipping generation of Private functions.

(SkipFunction):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation): Disabling addition of private function in table and adding private member field to the prototype.

  • bindings/scripts/CodeGeneratorObjC.pm: Skipping generation of Private functions.

(SkipFunction):

  • bindings/scripts/IDLAttributes.txt: Adding Private keyword.
  • bindings/scripts/test/JS/JSTestObj.cpp: Adding Private keyword test.

(WebCore::JSTestObjPrototype::finishCreation):
(WebCore::jsTestObjPrototypeFunctionPrivateMethod):

  • bindings/scripts/test/TestObj.idl:
3:16 AM Changeset in webkit [191286] by Yusuke Suzuki
  • 8 edits in trunk/Source/JavaScriptCore

Drop !newTarget check since it always becomes true
https://bugs.webkit.org/show_bug.cgi?id=150308

Reviewed by Geoffrey Garen.

In a context of calling a constructor, newTarget should not become JSEmpty.
So !newTarget always becomes true. This patch drops this unneccessary check.
And to ensure the implementation of the constructor is only called under
the context of calling it as a constructor, we change these functions to
static and only use them for constructor implementations of InternalFunction.

  • runtime/IntlCollatorConstructor.cpp:

(JSC::constructIntlCollator):
(JSC::callIntlCollator):

  • runtime/IntlCollatorConstructor.h:
  • runtime/IntlDateTimeFormatConstructor.cpp:

(JSC::constructIntlDateTimeFormat):
(JSC::callIntlDateTimeFormat):

  • runtime/IntlDateTimeFormatConstructor.h:
  • runtime/IntlNumberFormatConstructor.cpp:

(JSC::constructIntlNumberFormat):
(JSC::callIntlNumberFormat):

  • runtime/IntlNumberFormatConstructor.h:
  • runtime/JSPromiseConstructor.cpp:

(JSC::constructPromise):

3:09 AM Changeset in webkit [191285] by youenn.fablet@crf.canon.fr
  • 5 edits in trunk

[Streams API] Implement ReadableStream tee
https://bugs.webkit.org/show_bug.cgi?id=146315

Reviewed by Darin Adler.

Source/WebCore:

Covered by rebased test.

  • Modules/streams/ReadableStream.js:

(tee): Removing not implemented exception throwing.

  • Modules/streams/ReadableStreamInternals.js:

(teeReadableStream): Implementing as per spec.
(teeReadableStreamPullFunction): Ditto.
(teeReadableStreamBranch2CancelFunction): Ditto.

LayoutTests:

  • streams/reference-implementation/readable-stream-tee-expected.txt:
2:48 AM Changeset in webkit [191284] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[GTK] ASSERTION FAILED: parent in WebInspectorProxy::platformDetach()
https://bugs.webkit.org/show_bug.cgi?id=150319

Reviewed by Žan Doberšek.

This happens when the inspector is shown/closed very
quickly. Since we start the inspector attached by default, when
the web inspector is created m_isAttached is set to true, so that
when opened, it's attached to the view. If the inspector is closed
before it has been actually attached, the inspector view doesn't
have a parent, even if the m_isAttached is true. So, we should
handle this case instead of asserting. This is what happens in
test http/tests/xmlhttprequest/access-control-repeated-failed-preflight-crash.html.

  • UIProcess/gtk/WebInspectorProxyGtk.cpp:

(WebKit::WebInspectorProxy::platformDetach): Remove the view from
its parent container if it was actually attached.

2:46 AM Changeset in webkit [191283] by calvaris@igalia.com
  • 30 edits
    2 adds in trunk

[Streams API] Add skeleton for initial WritableStream support
https://bugs.webkit.org/show_bug.cgi?id=149951

Reviewed by Darin Adler.

Source/WebCore:

This basically adds an empty WritableStream object without initializing the object. It also adds all empty
methods by raising an exception.

The reason why the object is not fully initialized is that it requires some other support and some refactorings
to share more code with ReadableStream and we will make in following patches.

Tests are covered by current set and their expectations are properly updated.

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/WebCoreJSBuiltins.cpp:
  • bindings/js/WebCoreJSBuiltins.h: Build infrastructure.
  • Modules/streams/WritableStream.idl: Added all methods and attributes.
  • Modules/streams/WritableStream.js:

(initializeWritableStream):
(abort):
(close):
(write):
(closed):
(ready):
(state): Added all by throwing an EvalError.

Source/WebInspectorUI:

  • UserInterface/Models/NativeFunctionParameters.js: Added support for WritableStream.

LayoutTests:

Changed expectations to accomodate the WritableStream skeleton, including global-constructors-attributes.

  • js/dom/global-constructors-attributes-expected.txt:
  • platform/efl/js/dom/global-constructors-attributes-expected.txt:
  • platform/gtk/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac/js/dom/global-constructors-attributes-expected.txt:
  • platform/win/js/dom/global-constructors-attributes-expected.txt:
  • streams/reference-implementation/bad-strategies-expected.txt:
  • streams/reference-implementation/bad-underlying-sinks-expected.txt:
  • streams/reference-implementation/brand-checks-expected.txt:
  • streams/reference-implementation/byte-length-queuing-strategy-expected.txt:
  • streams/reference-implementation/count-queuing-strategy-expected.txt:
  • streams/reference-implementation/pipe-through-expected.txt:
  • streams/reference-implementation/pipe-to-expected.txt:
  • streams/reference-implementation/pipe-to-options-expected.txt:
  • streams/reference-implementation/readable-stream-templated-expected.txt:
  • streams/reference-implementation/writable-stream-abort-expected.txt:
  • streams/reference-implementation/writable-stream-expected.txt:
2:13 AM Changeset in webkit [191282] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[EFL] Implement WebContextMenuProxyEfl::showContextMenu after r191194
https://bugs.webkit.org/show_bug.cgi?id=150310

Patch by Hunseop Jeong <Hunseop Jeong> on 2015-10-19
Reviewed by Gyuyoung Kim.

showContextMenu() doesn't work correctly after r191194 in EFL port.
This patch implements WebContextMenuProxyEfl::showContextMenu.

  • UIProcess/efl/WebContextMenuProxyEfl.cpp:

(WebKit::WebContextMenuProxyEfl::WebContextMenuProxyEfl):
(WebKit::WebContextMenuProxyEfl::showContextMenu):
(WebKit::WebContextMenuProxyEfl::hideContextMenu):

  • UIProcess/efl/WebContextMenuProxyEfl.h:
1:56 AM Changeset in webkit [191281] by jcraig@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: AX: console list 'input'/'output' markers are not perceivable
https://bugs.webkit.org/show_bug.cgi?id=133045

Enabling WebKit Web Inspector console pseudo-element labels using the new CSS4 'alt' property.

Reviewed by Brian Burg.

  • UserInterface/Views/LogContentView.css:

(.search-in-progress .console-item:not(.filtered-out-by-search) .highlighted.selected):
(.console-messages:focus .console-item.selected .console-user-command-result.console-log-level::before):
(@media reader): Deleted.

12:17 AM Changeset in webkit [191280] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

Add historical addresses to contributors.json
https://bugs.webkit.org/show_bug.cgi?id=150227

Reviewed by Darin Adler.

  • Scripts/webkitpy/common/config/contributors.json:
12:08 AM Changeset in webkit [191279] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

[WK2] Simplify unused return warning in WKRetainPtr.h
https://bugs.webkit.org/show_bug.cgi?id=150173

Reviewed by Darin Adler.

  • UIProcess/API/cpp/WKRetainPtr.h:

(WebKit::attribute):
(WebKit::adoptWK): Deleted.

Note: See TracTimeline for information about the timeline view.