Timeline



Dec 17, 2013:

11:37 PM Changeset in webkit [160755] by jer.noble@apple.com
  • 3 edits
    2 adds in trunk

[MSE] Periodically monitor source buffers.
https://bugs.webkit.org/show_bug.cgi?id=125898

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/media-source/media-source-monitor-source-buffers.html

The MSE spec requires that the SourceBuffer Monitoring step is run
periodically during playback. No specific update interval is specified
so we will re-use the existing HTMLMediaElement playback progress
timer to signal the media source monitoring.

  • html/HTMLMediaElement.cpp:

(HTMLMediaElement::playbackProgressTimerFired):

LayoutTests:

  • media/media-source/media-source-monitor-source-buffers-expected.txt: Added.
  • media/media-source/media-source-monitor-source-buffers.html: Added.
10:49 PM Changeset in webkit [160754] by jer.noble@apple.com
  • 8 edits in trunk/Source/WebCore

[MSE] Add per-track signalling between SourceBuffer and SourceBufferPrivate.
https://bugs.webkit.org/show_bug.cgi?id=125899

Reviewed by Eric Carlson.

To accommodate the future addition of audio support to MSE in the Mac
port, add the concept of trackIDs to the communication between
SourceBuffer and SourceBufferPrivate.

The following virtual methods now take a trackID parameter:

  • platform/graphics/SourceBufferPrivate.h:

(WebCore::SourceBufferPrivate::isReadyForMoreSamples):
(WebCore::SourceBufferPrivate::stopAskingForMoreSamples):
(WebCore::SourceBufferPrivate::notifyClientWhenReadyForMoreSamples):

  • platform/graphics/SourceBufferPrivateClient.h:

(WebCore::SourceBufferPrivateClient::sourceBufferPrivateDidBecomeReadyForMoreSamples):

Update overridden methods in subclasses:

  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::sourceBufferPrivateDidBecomeReadyForMoreSamples):

  • Modules/mediasource/SourceBuffer.h:
  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:

(WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled):
(WebCore::SourceBufferPrivateAVFObjC::isReadyForMoreSamples):

  • platform/mock/mediasource/MockSourceBufferPrivate.h:

Change the logic in provideMediaData to update a single TrackBuffer
rather than iterating over all of them:

  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::sourceBufferPrivateSeekToTime):
(WebCore::SourceBuffer::appendBufferTimerFired):
(WebCore::SourceBuffer::provideMediaData):

10:27 PM Changeset in webkit [160753] by commit-queue@webkit.org
  • 12 edits in trunk/Source/WebCore

Web Inspector: Remove InspectorAgent::hasFrontend
https://bugs.webkit.org/show_bug.cgi?id=125907

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-12-17
Reviewed by Timothy Hatcher.

Remove InspectorAgent::hasFrontend only used by
InspectorInstrumentation::collectingHTMLParseErrors. However,
following the single callers of that, the result is unused
in the HTMLDocumentParser and HTMLTreeBuilder. So remove
more stale / unused code.

  • html/FTPDirectoryDocument.cpp:

(WebCore::FTPDirectoryDocumentParser::FTPDirectoryDocumentParser):

  • html/HTMLDocument.cpp:

(WebCore::HTMLDocument::createParser):

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::HTMLDocumentParser):

  • html/parser/HTMLDocumentParser.h:

(WebCore::HTMLDocumentParser::create):

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::HTMLTreeBuilder):

  • html/parser/HTMLTreeBuilder.h:

(WebCore::HTMLTreeBuilder::create):

  • html/parser/TextDocumentParser.cpp:

(WebCore::TextDocumentParser::TextDocumentParser):

  • inspector/DOMPatchSupport.cpp:

(WebCore::DOMPatchSupport::patchDocument):

  • inspector/InspectorAgent.h:
  • inspector/InspectorInstrumentation.cpp:
  • inspector/InspectorInstrumentation.h:
10:24 PM Changeset in webkit [160752] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: Some basic InjectedScriptHost cleanup
https://bugs.webkit.org/show_bug.cgi?id=125902

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-12-17
Reviewed by Timothy Hatcher.

Remove InjectedScriptHost::scriptDebugServer. Nobody accesses
the ScriptDebugServer through the injected script host. This
also lets us remove the reference to the DebuggerAgent.

  • inspector/InjectedScriptHost.cpp:
  • inspector/InjectedScriptHost.h:

(WebCore::InjectedScriptHost::init):

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):

  • inspector/WorkerInspectorController.cpp:

(WebCore::WorkerInspectorController::WorkerInspectorController):

10:22 PM Changeset in webkit [160751] by commit-queue@webkit.org
  • 10 edits
    3 deletes in trunk

Web Inspector: Remove InspectorFrontendHost.setInjectedScriptForOrigin
https://bugs.webkit.org/show_bug.cgi?id=125906

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-12-17
Reviewed by Timothy Hatcher.

Source/WebCore:

Remove stale code related to a since removed feature,
Inspector extensions. This allows us to remove a number
of entry points into InspectorAgent.

  • inspector/InspectorAgent.cpp:

(WebCore::InspectorAgent::InspectorAgent):
(WebCore::InspectorAgent::willDestroyFrontendAndBackend):

  • inspector/InspectorAgent.h:

(WebCore::InspectorAgent::create):
Remove setInjectedScriptForOrigin and InjectedScript management.

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):

  • inspector/InspectorController.h:
  • inspector/InspectorFrontendHost.cpp:
  • inspector/InspectorFrontendHost.h:
  • inspector/InspectorFrontendHost.idl:

Remove the API and calling through InspectorController.

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::didClearWindowObjectInWorldImpl):
(WebCore::InspectorInstrumentation::domContentLoadedEventFiredImpl):
(WebCore::InspectorInstrumentation::didCommitLoadImpl):
Remove now unnecessary calls into InspectorAgent.

LayoutTests:

  • http/tests/inspector/injected-script-for-origin-expected.txt: Removed.
  • http/tests/inspector/injected-script-for-origin.html: Removed.
  • http/tests/inspector/resources/injected-script-for-origin-frame.html: Removed.
10:04 PM Changeset in webkit [160750] by jae.park@company100.net
  • 10 edits in trunk/Source/WebKit2

[GTK] Build fix after r160737

Unreviewed.

Rename WebURLRequest to API::URLRequest

  • GNUmakefile.list.am:
  • UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:

(didReceiveWebViewMessageFromInjectedBundle):

  • UIProcess/API/gtk/WebKitNavigationPolicyDecision.cpp:

(webkitNavigationPolicyDecisionCreate):

  • UIProcess/API/gtk/WebKitNavigationPolicyDecisionPrivate.h:
  • UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:

(webkitResponsePolicyDecisionCreate):

  • UIProcess/API/gtk/WebKitResponsePolicyDecisionPrivate.h:
  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkit_web_view_load_request):

  • UIProcess/API/gtk/WebKitWindowProperties.cpp:
  • WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:

(willSendRequestForFrame):

9:37 PM Changeset in webkit [160749] by jer.noble@apple.com
  • 6 edits
    1 add in trunk

Fix TimeRanges::intersectWith
https://bugs.webkit.org/show_bug.cgi?id=118802

Source/WebCore:

Test: TestWebKitAPI/Tests/WebCore/TimeRanges.cpp.

Reviewed by Eric Carlson.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • html/TimeRanges.cpp:

(TimeRanges::invert):
(TimeRanges::intersectWith):

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

Tools:

Reviewed by Eric Carlson.

Add unit tests for WebCore/TimeRanges.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebCore/TimeRanges.cpp: Added.

(TestWebKitAPI::ToString):
(TestWebKitAPI::TEST):

8:32 PM Changeset in webkit [160748] by eric.carlson@apple.com
  • 3 edits
    2 adds in trunk

ASSERT setting pseudoID with registered DOMSubtreeModified listener
https://bugs.webkit.org/show_bug.cgi?id=125900

Reviewed by Ryosuke Niwa.

Source/WebCore:

Test: fast/dom/attribute-set-before-element-in-tree.html

  • dom/Node.cpp:

(WebCore::Node::dispatchSubtreeModifiedEvent): Return early if the node does not have a

parent and does not have a DOMSubtreeModified listener.

LayoutTests:

  • fast/dom/attribute-set-before-element-in-tree-expected.txt: Added.
  • fast/dom/attribute-set-before-element-in-tree.html: Added.
8:18 PM Changeset in webkit [160747] by rniwa@webkit.org
  • 7 edits in trunk/Source/WebCore

Remove dead code for reflected attributes from audio, video, and track elements
https://bugs.webkit.org/show_bug.cgi?id=125838

Reviewed by Eric Carlson.

Merge https://chromium.googlesource.com/chromium/blink/+/310514e2f0fd934975b841d463bad0cd62e6fd64

Where [Reflect] is used in the IDL, the getters and setters in C++ are
only for internal convenience, and these were unused.

  • html/HTMLMediaElement.cpp:
  • html/HTMLMediaElement.h:
  • html/HTMLTrackElement.cpp:
  • html/HTMLTrackElement.h:
  • html/HTMLVideoElement.cpp:
  • html/HTMLVideoElement.h:
7:45 PM Changeset in webkit [160746] by msaboff@apple.com
  • 5 edits in branches/jsCStack/Source/JavaScriptCore

CStack Branch: Fix varargs calls to work on C stack
https://bugs.webkit.org/show_bug.cgi?id=125903

Reviewed by Filip Pizlo.

Fixed up the stack pointer after the sizeAndAllocFrameForVarargs() has been called in both the
LLInt and baseline JIT code. Adjusted the callee frame calculations in sizeAndAllocFrameForVarargs()
and compileLoadVarargs() to create aligned callee frames.

  • interpreter/Interpreter.cpp:

(JSC::sizeAndAllocFrameForVarargs):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • jit/JITCall.cpp:

(JSC::JIT::compileLoadVarargs):

  • llint/LowLevelInterpreter.asm:
7:38 PM Changeset in webkit [160745] by mark.lam@apple.com
  • 11 edits in branches/jsCStack/Source/JavaScriptCore

frameRegisterCount() should include maxFrameExtentForSlowPathCall.
https://bugs.webkit.org/show_bug.cgi?id=125881.

Reviewed by Geoffrey Garen, Michael Saboff, and Filip Pizlo.

  • assembler/MaxFrameExtentForSlowPathCall.h:
  • Added CallerFrameAndPCSize to all the maxFrameExtentForSlowPathCall values.
  • bytecode/VirtualRegister.h:

(JSC::VirtualRegister::offsetInBytes):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::frameRegisterCount):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):
(JSC::JIT::frameRegisterCountFor):

  • jit/JIT.h:
  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_catch):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_catch):

  • llint/LLIntData.cpp:

(JSC::LLInt::Data::performAssertions):

  • Adjusted maxFrameExtentForSlowPathCall values for CallerFrameAndPCSize.
  • llint/LLIntEntrypoint.cpp:

(JSC::LLInt::frameRegisterCountFor):

  • llint/LowLevelInterpreter.asm:
  • Adjusted maxFrameExtentForSlowPathCall values for CallerFrameAndPCSize.
7:25 PM Changeset in webkit [160744] by ap@apple.com
  • 3 edits in trunk/Tools

Botwatcher's dashboard ceases to update itself after a while
https://bugs.webkit.org/show_bug.cgi?id=125885

Reviewed by Timothy Hatcher.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:

Removed code that checked for the view being hidden. It's none of model's business.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:

(BuildbotQueueView): Find out what platform the view is for. Initlialize update timer.
(BuildbotQueueView.prototype._updateHiddenState): Start or stop update timer as appropriate.
We now stop the timer for hidden views.
(BuildbotQueueView.prototype._updateQueues): Removed the logic for ignoring some updates.

6:16 PM Changeset in webkit [160743] by ryuan.choi@samsung.com
  • 3 edits in trunk/Source/WebKit2

Unreviewed build fix on EFL port after r160737

Rename WebURLRequest to API::URLRequest

  • CMakeLists.txt:
  • UIProcess/API/efl/ewk_url_request_private.h:
6:00 PM Changeset in webkit [160742] by Simon Fraser
  • 7 edits in trunk/Source

Rename "canRubberBands" to "canRubberBand"
https://bugs.webkit.org/show_bug.cgi?id=125897

Reviewed by Anders Carlsson.

Rename "canRubberBands" to "canRubberBand" in various places.

Source/WebCore:

  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::setCanRubberBandState):

  • page/scrolling/ScrollingTree.h:

Source/WebKit2:

  • WebProcess/WebPage/EventDispatcher.cpp:

(WebKit::EventDispatcher::wheelEvent):

  • WebProcess/WebPage/EventDispatcher.h:
  • WebProcess/WebPage/EventDispatcher.messages.in:
5:28 PM Changeset in webkit [160741] by andersca@apple.com
  • 3 edits in trunk/Tools

Fix the 32-bit build.

  • MiniBrowser/MiniBrowserWebProcessPlugIn.h:
  • MiniBrowser/MiniBrowserWebProcessPlugIn.m:
5:05 PM Changeset in webkit [160740] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

WebKit2 View Gestures: Fix the shadow layer restore-from-overpinched animation
https://bugs.webkit.org/show_bug.cgi?id=125884

Reviewed by Anders Carlsson.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::commitTransientZoom):
Set to-values on the right animations.

(WebKit::TiledCoreAnimationDrawingArea::adjustTransientZoom):
(WebKit::TiledCoreAnimationDrawingArea::applyTransientZoomToPage):
We don't need to explicitly set the shadow path, because PlatformCALayer::setBounds does it for us now.

4:57 PM Changeset in webkit [160739] by jer.noble@apple.com
  • 5 edits
    2 adds in trunk

[MSE] Update duration after appending samples, per spec.
https://bugs.webkit.org/show_bug.cgi?id=125703

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/media-source/media-source-duration-after-append.html

After appending a sample, update the MediaSource duration if the sample's
presentation end time is greater than the existing duration.

  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample):

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
  • platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:

(WebCore::MediaSourcePrivateAVFObjC::setDuration): Notify the MediaPlayer.

LayoutTests:

  • media/media-source/media-source-duration-after-append-expected.txt: Added.
  • media/media-source/media-source-duration-after-append.html: Added.
4:56 PM Changeset in webkit [160738] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[MSE][Mac] Null-deref in CMSampleBufferIsRandomAccess().
https://bugs.webkit.org/show_bug.cgi?id=125698

Reviewed by Sam Weinig.

If a given CMSampleBufferRef does not have a sample attachments array (which is unlikely, but
possible), CMSampleBufferGetAttachmentsArray() will return a null value.

Additionally, the CMSampleBuffer documentation states that "samples are assumed to be sync
samples by default", so the absence of an attachment array (or the absense of a
kCMSampleAttachmentKey_NotSync entry in any of the attachment dictionaries) indicates the
sample is sync.

  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:

(WebCore::CMSampleBufferIsRandomAccess):

4:54 PM Changeset in webkit [160737] by weinig@apple.com
  • 22 edits
    2 moves in trunk/Source/WebKit2

[WK2] Rename WebURLRequest to API::URLRequest
https://bugs.webkit.org/show_bug.cgi?id=125886

Reviewed by Anders Carlsson.

  • Shared/API/c/WKSharedAPICast.h:

(WebKit::toAPI):

  • Shared/API/c/WKURLRequest.cpp:

(WKURLRequestGetTypeID):
(WKURLRequestCreateWithWKURL):
(WKURLRequestSetDefaultTimeoutInterval):

  • Shared/API/c/mac/WKURLRequestNS.mm:

(WKURLRequestCreateWithNSURLRequest):

  • Shared/APIString.h:
  • Shared/APIURLRequest.cpp: Copied from Source/WebKit2/Shared/WebURLRequest.cpp.

(API::URLRequest::URLRequest):
(API::URLRequest::defaultTimeoutInterval):
(API::URLRequest::setDefaultTimeoutInterval):
(API::URLRequest::encode):
(API::URLRequest::decode):

  • Shared/APIURLRequest.h: Copied from Source/WebKit2/Shared/WebURLRequest.h.

(API::URLRequest::create):

  • Shared/UserData.cpp:

(WebKit::UserData::encode):
(WebKit::UserData::decode):

  • Shared/UserMessageCoders.h:

(WebKit::UserMessageEncoder::baseEncode):
(WebKit::UserMessageDecoder::baseDecode):

  • Shared/WebURLRequest.cpp: Removed.
  • Shared/WebURLRequest.h: Removed.
  • UIProcess/API/C/WKContext.cpp:
  • UIProcess/API/C/WKDownload.cpp:

(WKDownloadCopyRequest):

  • UIProcess/API/C/WKNavigationDataRef.cpp:

(WKNavigationDataCopyOriginalRequest):

  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:

(-[WKBrowsingContextController loadRequest:userData:]):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createNewWebProcess):

  • UIProcess/WebInspectorProxy.cpp:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::loadURLRequest):

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

(WebKit::WebPolicyClient::decidePolicyForNavigationAction):
(WebKit::WebPolicyClient::decidePolicyForNewWindowAction):
(WebKit::WebPolicyClient::decidePolicyForResponse):

  • UIProcess/WebUIClient.cpp:

(WebKit::WebUIClient::createNewPage):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
  • WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp:

(WebKit::InjectedBundlePagePolicyClient::decidePolicyForNavigationAction):
(WebKit::InjectedBundlePagePolicyClient::decidePolicyForNewWindowAction):
(WebKit::InjectedBundlePagePolicyClient::decidePolicyForResponse):

  • WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:

(WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame):

4:24 PM Changeset in webkit [160736] by andersca@apple.com
  • 3 edits
    6 adds in trunk/Tools

Give the MiniBrowser a bundle
https://bugs.webkit.org/show_bug.cgi?id=125882

Reviewed by Sam Weinig.

  • MiniBrowser/Configurations/MiniBrowserBundle.xcconfig: Added.
  • MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:
  • MiniBrowser/MiniBrowserWebProcessPlugIn.h: Added.
  • MiniBrowser/MiniBrowserWebProcessPlugIn.m: Added.

(-[MiniBrowserWebProcessPlugIn webProcessPlugIn:initializeWithObject:]):

  • MiniBrowser/mac/AppDelegate.m:

(-[BrowserAppDelegate init]):

  • MiniBrowser/mac/Bundle/Info.plist: Added.
  • MiniBrowser/mac/Bundle/MiniBrowserBundle_Prefix.pch: Added.
4:20 PM Changeset in webkit [160735] by matthew_hanson@apple.com
  • 2 edits in branches/safari-537.74-branch/Source/JavaScriptCore

Merge the patch attached to <rdar://problem/15684269>

4:16 PM Changeset in webkit [160734] by rniwa@webkit.org
  • 3 edits
    2 adds in trunk

Video element's width and height content attributes should not influence intrinsic width and height
https://bugs.webkit.org/show_bug.cgi?id=125822

Reviewed by Darin Adler.

Source/WebCore:

Merge https://chromium.googlesource.com/chromium/blink/+/022ce34efb5b70cb964c3ca29f23c8980ffaef05

The width/height content attributes already influence specified style via
HTMLVideoElement::collectStyleForPresentationAttribute, to also influence the intrinsic size has never
been part of the spec: http://www.w3.org/TR/2013/WD-html51-20130528/embedded-content-0.html#dom-dim-width

The test case passes in Firefox Nightly and IE11 Release Preview, but fails in Opera Presto, which has
no default intrinsic size.

Test: media/video-intrinsic-width-height.html

  • rendering/RenderVideo.cpp:

(WebCore::RenderVideo::calculateIntrinsicSize):

LayoutTests:

  • media/video-intrinsic-width-height-expected.txt: Added.
  • media/video-intrinsic-width-height.html: Added.
4:15 PM Changeset in webkit [160733] by dbates@webkit.org
  • 72 edits
    3 adds in trunk/Source

[iOS] Upstream WebCore/html changes
https://bugs.webkit.org/show_bug.cgi?id=125765

Reviewed by Darin Adler.

Source/WebCore:

  • WebCore.xcodeproj/project.pbxproj:
  • html/Autocapitalize.cpp: Added.
  • html/Autocapitalize.h: Added. Also, added FIXME comment to forward declare AtomicString once we upstream

more of the iOS port.

  • html/BaseChooserOnlyDateAndTimeInputType.cpp:

(WebCore::BaseChooserOnlyDateAndTimeInputType::handleDOMActivateEvent): Opt out of code when building for iOS.

  • html/BaseDateAndTimeInputType.cpp:

(WebCore::BaseDateAndTimeInputType::isKeyboardFocusable): Added; iOS-specific.

  • html/BaseDateAndTimeInputType.h:
  • html/FileInputType.cpp:

(WebCore::FileInputType::FileInputType): Added iOS-specific code.
(WebCore::FileInputType::~FileInputType): Opt out of code when building for iOS. Also, added FIXME comment.
(WebCore::FileInputType::requestIcon): Ditto.
(WebCore::FileInputType::filesChosen): Added; iOS-specific.
(WebCore::FileInputType::displayString): Added; iOS-specific.
(WebCore::FileInputType::receiveDroppedFiles): Guarded code with ENABLE(DRAG_SUPPORT).

  • html/FileInputType.h:
  • html/FormController.cpp:

(WebCore::FormController::formElementsCharacterCount): Added.

  • html/FormController.h:
  • html/HTMLAppletElement.cpp:

(WebCore::HTMLAppletElement::updateWidget): Opt out of code when building for iOS.

  • html/HTMLAreaElement.cpp:

(WebCore::HTMLAreaElement::computePath): Changed argument datatype from RenderElement* to RenderObject*.
Also, added FIXME comment to fix this up once we upstream iOS's DOMUIKitExtensions.{h, mm}.
(WebCore::HTMLAreaElement::computeRect): Ditto.

  • html/HTMLAreaElement.h:
  • html/HTMLAttributeNames.in: Added attributes ongesture{start, change, end}, autocorrect, autocapitalize,

data-youtube-id, onwebkit{currentplaybacktargetiswirelesschanged, playbacktargetavailabilitychanged}, webkit-playsinline,
x-webkit-airplay, and x-webkit-wirelessvideoplaybackdisabled.

  • html/HTMLBodyElement.cpp:

(WebCore::HTMLBodyElement::scrollLeft): Added iOS-specific code.
(WebCore::HTMLBodyElement::scrollTop): Ditto.

  • html/HTMLCanvasElement.cpp:

(WebCore::HTMLCanvasElement::HTMLCanvasElement): Added iOS-specific code and FIXME comment.
(WebCore::HTMLCanvasElement::createImageBuffer): Added iOS-specific code.

  • html/HTMLCanvasElement.h: Added iOS-specific code and FIXME comment.
  • html/HTMLDocument.cpp:

(WebCore::HTMLDocument::HTMLDocument): Added argument isSynthesized (default to false), which is
passed through to Document::Document(), to create a synthesized document.

  • html/HTMLDocument.h:

(WebCore::HTMLDocument::createSynthesizedDocument): Added.

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::collectStyleForPresentationAttribute): Added iOS-specific code.
(WebCore::populateEventNameForAttributeLocalNameMap): Ditto.
(WebCore::HTMLElement::willRespondToMouseMoveEvents): Added; iOS-specific.
(WebCore::HTMLElement::willRespondToMouseWheelEvents): Added; iOS-specific.
(WebCore::HTMLElement::willRespondToMouseClickEvents): Added; iOS-specific.

  • html/HTMLElement.h:
  • html/HTMLFormControlElement.cpp: Added FIXME comment to share more code with class HTMLFormElement.

(WebCore::HTMLFormControlElement::autocorrect): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormControlElement::setAutocorrect): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormControlElement::autocapitalizeType): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormControlElement::autocapitalize): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormControlElement::setAutocapitalize): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).

  • html/HTMLFormControlElement.h:
  • html/HTMLFormElement.cpp: Added FIXME comment to share more code with class HTMLFormControlElement.

(WebCore::HTMLFormElement::submitImplicitly): Modified to code to allow implicit submission of multi-input
forms only if Settings::allowMultiElementImplicitSubmission() returns true. Such behavior is expected by older
iOS apps. Also, changed datatype of variable submissionTriggerCount from int to unsigned because it represents
a non-negative value.
(WebCore::HTMLFormElement::autocorrect): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormElement::setAutocorrect): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormElement::autocapitalizeType): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormElement::autocapitalize): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormElement::setAutocapitalize): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).

  • html/HTMLFormElement.h:
  • html/HTMLFormElement.idl: Added iOS-specific attributes: autocorrect and autocapitalize.
  • html/HTMLIFrameElement.h:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::displayString): Added; guarded by PLATFORM(IOS).
(WebCore::HTMLInputElement::dateType): Added; guarded by PLATFORM(IOS).

  • html/HTMLInputElement.h:
  • html/HTMLInputElement.idl: Added iOS-specific attributes: autocorrect and autocapitalize.
  • html/HTMLLabelElement.cpp:

(WebCore::HTMLLabelElement::willRespondToMouseClickEvents): Added iOS-specific code.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement): Added iOS-specific code and FIXME comment.
(WebCore::HTMLMediaElement::~HTMLMediaElement): Added iOS-specific code.
(WebCore::HTMLMediaElement::parseMediaPlayerAttribute): Added; iOS-specific.
(WebCore::HTMLMediaElement::parseAttribute): Added iOS-specific code.
(WebCore::HTMLMediaElement::insertedInto): Ditto.
(WebCore::HTMLMediaElement::load): Ditto.
(WebCore::HTMLMediaElement::prepareForLoad): Ditto.
(WebCore::HTMLMediaElement::autoplay): Ditto.
(WebCore::HTMLMediaElement::play): Ditto.
(WebCore::HTMLMediaElement::playInternal): Ditto.
(WebCore::HTMLMediaElement::pauseInternal): Ditto.
(WebCore::HTMLMediaElement::setVolumne): Opt out of code when building for iOS.
(WebCore::HTMLMediaElement::setMuted): Ditto.
(WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Added iOS-specific code.
(WebCore::HTMLMediaElement::updateVolume): Ditto.
(WebCore::HTMLMediaElement::updatePlayState): Ditto.
(WebCore::HTMLMediaElement::userCancelledLoad): Added iOS-specific code and FIXME comment.
(WebCore::HTMLMediaElement::resume): Added iOS-specific comment. See <rdar://problem/9751303>.
(WebCore::HTMLMediaElement::deliverNotification): Added iOS-specific code.
(WebCore::HTMLMediaElement::getPluginProxyParams): Added iOS-specific code. Also, changed src() to getNonEmptyURLAttribute()
in the non-iOS code as their doesn't exist a method called src in this class or its superclasses.
(WebCore::HTMLMediaElement::webkitShowPlaybackTargetPicker): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLMediaElement::webkitCurrentPlaybackTargetIsWireless): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLMediaElement::mediaPlayerCurrentPlaybackTargetIsWirelessChanged): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLMediaElement::mediaPlayerPlaybackTargetAvailabilityChanged): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLMediaElement::addEventListener): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLMediaElement::removeEventListener): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLMediaElement::enqueuePlaybackTargetAvailabilityChangedEvent): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLMediaElement::enterFullscreen): Added iOS-specific code.
(WebCore::HTMLMediaElement::exitFullscreen): Ditto.
(WebCore::HTMLMediaElement::createMediaPlayer): Added ENABLE(IOS_AIRPLAY)-guarded code.
(WebCore::HTMLMediaElement::userRequestsMediaLoading): Added; guarded by PLATFORM(IOS).
(WebCore::HTMLMediaElement::shouldUseVideoPluginProxy): Use dot operator instead of dereference operator (->)
when accessing Document::settings().
(WebCore::HTMLMediaElement::didAddUserAgentShadowRoot): Added ENABLE(PLUGIN_PROXY_FOR_VIDEO)-guarded code.

  • html/HTMLMediaElement.h:

(WebCore::HTMLMediaElement::userGestureRequiredToShowPlaybackTargetPicker): Added; guarded by ENABLE(IOS_AIRPLAY).

  • html/HTMLMediaElement.idl: Added ENABLE_IOS_AIRPLAY-guarded attributes and functions:webkitCurrentPlaybackTargetIsWireless,

onwebkit{currentplaybacktargetiswirelesschanged, playbacktargetavailabilitychanged}, and webkitShowPlaybackTargetPicker().

  • html/HTMLMetaElement.cpp:

(WebCore::HTMLMetaElement::process): Added iOS-specific code.

  • html/HTMLObjectElement.cpp:

(WebCore::shouldNotPerformURLAdjustment): Added; iOS-specific.
(WebCore::HTMLObjectElement::parametersForPlugin): Modified to call shouldNotPerformURLAdjustment() when
building for iOS.

  • html/HTMLPlugInElement.h:
  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::createRenderer): Added iOS-specific code.
(WebCore::HTMLPlugInImageElement::createShadowIFrameSubtree): Added; iOS-specific.

  • html/HTMLPlugInImageElement.h:
  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::usesMenuList): Added iOS-specific code.
(WebCore::HTMLSelectElement::createRenderer): Ditto.
(WebCore::HTMLSelectElement::childShouldCreateRenderer): Ditto.
(WebCore::HTMLSelectElement::willRespondToMouseClickEvents): Added; iOS-specific.
(WebCore::HTMLSelectElement::updateListBoxSelection): Added iOS-specific code.
(WebCore::HTMLSelectElement::scrollToSelection): Ditto.
(WebCore::HTMLSelectElement::setOptionsChangedOnRenderer): Ditto.
(WebCore::HTMLSelectElement::menuListDefaultEventHandler): Opt out of code when building for iOS.
(WebCore::HTMLSelectElement::defaultEventHandler): Added iOS-specific code.

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

(WebCore::HTMLTextAreaElement::willRespondToMouseClickEvents): Added; iOS-specific.

  • html/HTMLTextAreaElement.h:
  • html/HTMLTextAreaElement.idl: Added iOS-specific attributes: autocorrect and autocapitalize.
  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::select): Added iOS-specific code and FIXME comment.
(WebCore::HTMLTextFormControlElement::setSelectionRange): Opt out of code when building for iOS.
(WebCore::HTMLTextFormControlElement::hidePlaceholder): Added; guarded by PLATFORM(IOS).
(WebCore::HTMLTextFormControlElement::showPlaceholderIfNecessary): Added; guarded by PLATFORM(IOS).

  • html/HTMLTextFormControlElement.h:
  • html/HTMLVideoElement.cpp:

(WebCore::HTMLVideoElement::createRenderer): Fix up call to HTMLMediaElement::createRenderer().
(WebCore::HTMLVideoElement::parseAttribute): Added iOS-specific code.
(WebCore::HTMLVideoElement::supportsFullscreen): Ditto.
(WebCore::HTMLVideoElement::webkitWirelessVideoPlaybackDisabled): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLVideoElement::setWebkitWirelessVideoPlaybackDisabled): Added; guarded by ENABLE(IOS_AIRPLAY).

  • html/HTMLVideoElement.h:
  • html/HTMLVideoElement.idl: Added ENABLE_IOS_AIRPLAY-guarded attribute: webkitWirelessVideoPlaybackDisabled.
  • html/ImageDocument.cpp:

(WebCore::ImageDocument::createDocumentStructure): Added iOS-specific code.
(WebCore::ImageDocument::scale): Ditto.
(WebCore::ImageDocument::resizeImageToFit): Ditto.
(WebCore::ImageDocument::imageClicked): Ditto.
(WebCore::ImageDocument::imageFitsInWindow): Ditto.
(WebCore::ImageDocument::windowSizeChanged): Ditto.

  • html/InputType.cpp:

(WebCore::InputType::dateType): Added; guarded by PLATFORM(IOS).
(WebCore::InputType::isKeyboardFocusable): Added iOS-specific code.
(WebCore::InputType::displayString): Added; guarded by PLATFORM(IOS).

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

(WebCore::PluginDocumentParser::createDocumentStructure): Added iOS-specific code.

  • html/RangeInputType.cpp:

(WebCore::RangeInputType::handleTouchEvent): Ditto.
(WebCore::RangeInputType::disabledAttributeChanged): Added; iOS-specific.

  • html/RangeInputType.h:
  • html/SearchInputType.cpp:

(WebCore::SearchInputType::addSearchResult): Opt out of code when building for iOS.

  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::isKeyboardFocusable): Added iOS-specific code.

  • html/TextFieldInputType.h:
  • html/WebAutocapitalize.h: Added.
  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::createImageData): Added iOS-specific code.
(WebCore::CanvasRenderingContext2D::getImageData): Ditto.

  • html/parser/HTMLConstructionSite.h:

(WebCore::HTMLConstructionSite::isTelephoneNumberParsingEnabled): Added; guarded by PLATFORM(IOS).

  • html/parser/HTMLParserScheduler.h:

(WebCore::HTMLParserScheduler::checkForYieldBeforeToken): Added iOS-specific code.

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::insertPhoneNumberLink): Added; guarded by PLATFORM(IOS).
(WebCore::HTMLTreeBuilder::linkifyPhoneNumbers): Added; guarded by PLATFORM(IOS).
(WebCore::disallowTelephoneNumberParsing): Added; guarded by PLATFORM(IOS).
(WebCore::shouldParseTelephoneNumbersInNode): Added; guarded by PLATFORM(IOS).
(WebCore::HTMLTreeBuilder::processCharacterBufferForInBody): Added iOS-specific code.

  • html/parser/HTMLTreeBuilder.h:
  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlClosedCaptionsTrackListElement::MediaControlClosedCaptionsTrackListElement): Guarded member initialization of m_controls with ENABLE(VIDEO_TRACK). Also added UNUSED_PARAM(event) when building with
VIDEO_TRACK disabled.
(WebCore::MediaControlClosedCaptionsTrackListElement::defaultEventHandler): Added UNUSED_PARAM(event) when
building with VIDEO_TRACK disabled.

  • html/shadow/MediaControls.h:
  • html/shadow/SliderThumbElement.cpp:

(WebCore::SliderThumbElement::SliderThumbElement): Added iOS-specific code.
(WebCore::SliderThumbElement::dragFrom): Opt out of code when building for iOS.
(WebCore::SliderThumbElement::willDetachRenderers): Added iOS-specific code.
(WebCore::SliderThumbElement::exclusiveTouchIdentifier): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::setExclusiveTouchIdentifier): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::clearExclusiveTouchIdentifier): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::findTouchWithIdentifier): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::handleTouchStart): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::handleTouchMove): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::handleTouchEndAndCancel): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::didAttachRenderers): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::handleTouchEvent): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::shouldAcceptTouchEvents): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::registerForTouchEvents): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::unregisterForTouchEvents): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::disabledAttributeChanged): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).

  • html/shadow/SliderThumbElement.h:
  • html/shadow/TextControlInnerElements.cpp:

(WebCore::SearchFieldResultsButtonElement::defaultEventHandler): Opt out of code when building for iOS.

  • html/shadow/TextControlInnerElements.h:
  • page/Settings.in: Added setting allowMultiElementImplicitSubmission to enable/disable multi-input implicit form

submission (disabled by default). Also added FIXME comment to rename this setting to allowMultiElementImplicitFormSubmission
once we upstream the iOS changes to WebView.mm.

Source/WTF:

Defined ENABLE_IOS_AUTOCORRECT_AND_AUTOCAPITALIZE, enabled by default on iOS.

  • wtf/FeatureDefines.h:
4:12 PM Changeset in webkit [160732] by beidson@apple.com
  • 37 edits in trunk/Source

DatabaseProcess: Pipe through object store IDs and transaction mode for "openTransaction"
https://bugs.webkit.org/show_bug.cgi?id=125872

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Make these enums into enum classes.
Add const maximums for each enum class that might be serialized to allow for conversion later:

  • Modules/indexeddb/IndexedDB.h:

Add cross-thread copying for these new enum classes.

  • platform/CrossThreadCopier.cpp:

(WebCore::::copy):

  • platform/CrossThreadCopier.h:

Adopt the new enum classes throughout the rest of WebCore:

  • Modules/indexeddb/IDBCursor.cpp:

(WebCore::IDBCursor::continueFunction):
(WebCore::IDBCursor::stringToDirection):
(WebCore::IDBCursor::directionToString):

  • Modules/indexeddb/IDBCursor.h:
  • Modules/indexeddb/IDBCursorBackend.cpp:

(WebCore::IDBCursorBackend::deleteFunction):

  • Modules/indexeddb/IDBCursorBackend.h:

(WebCore::IDBCursorBackend::value):

  • Modules/indexeddb/IDBDatabaseBackend.cpp:

(WebCore::IDBDatabaseBackend::createObjectStore):
(WebCore::IDBDatabaseBackend::deleteObjectStore):
(WebCore::IDBDatabaseBackend::createIndex):
(WebCore::IDBDatabaseBackend::deleteIndex):
(WebCore::IDBDatabaseBackend::get):
(WebCore::IDBDatabaseBackend::put):
(WebCore::IDBDatabaseBackend::setIndexKeys):
(WebCore::IDBDatabaseBackend::openCursor):
(WebCore::IDBDatabaseBackend::deleteRange):
(WebCore::IDBDatabaseBackend::clearObjectStore):
(WebCore::IDBDatabaseBackend::transactionStarted):
(WebCore::IDBDatabaseBackend::transactionFinished):
(WebCore::IDBDatabaseBackend::transactionFinishedAndAbortFired):
(WebCore::IDBDatabaseBackend::transactionFinishedAndCompleteFired):
(WebCore::IDBDatabaseBackend::createTransaction):
(WebCore::IDBDatabaseBackend::runIntVersionChangeTransaction):
(WebCore::IDBDatabaseBackend::deleteDatabase):

  • Modules/indexeddb/IDBDatabaseBackend.h:
  • Modules/indexeddb/IDBFactory.cpp:

(WebCore::IDBFactory::open):
(WebCore::IDBFactory::openInternal):
(WebCore::IDBFactory::deleteDatabase):

  • Modules/indexeddb/IDBIndex.cpp:

(WebCore::IDBIndex::openCursor):
(WebCore::IDBIndex::openKeyCursor):

  • Modules/indexeddb/IDBObjectStore.cpp:

(WebCore::IDBObjectStore::openCursor):

  • Modules/indexeddb/IDBOpenDBRequest.cpp:

(WebCore::IDBOpenDBRequest::onUpgradeNeeded):

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::IDBRequest):
(WebCore::IDBRequest::setResultCursor):
(WebCore::IDBRequest::onSuccess):

  • Modules/indexeddb/IDBTransaction.cpp:

(WebCore::IDBTransaction::create):
(WebCore::IDBTransaction::IDBTransaction):
(WebCore::IDBTransaction::stringToMode):
(WebCore::IDBTransaction::modeToString):

  • Modules/indexeddb/IDBTransaction.h:
  • Modules/indexeddb/IDBTransactionBackendOperations.cpp:

(WebCore::PutOperation::perform):

  • Modules/indexeddb/IDBTransactionCoordinator.cpp:

(WebCore::IDBTransactionCoordinator::processStartedTransactions):
(WebCore::IDBTransactionCoordinator::canRunTransaction):

  • Modules/indexeddb/IDBVersionChangeEvent.h:

(WebCore::IDBVersionChangeEvent::create):
(WebCore::IDBVersionChangeEvent::newVersion):

  • Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:

(WebCore::objectStoreCursorOptions):
(WebCore::indexCursorOptions):

  • Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:

(WebCore::IDBServerConnectionLevelDB::get):
(WebCore::IDBServerConnectionLevelDB::openCursor):
(WebCore::IDBServerConnectionLevelDB::count):
(WebCore::IDBServerConnectionLevelDB::deleteRange):
(WebCore::IDBServerConnectionLevelDB::cursorPrefetchIteration):

  • WebCore.exp.in:

Source/WebKit2:

Pipe through the objectStoreIDs and mode:

  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:

(WebKit::DatabaseProcessIDBConnection::openTransaction):

  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:

Rework postTransactionOperation to take a pre-made AsyncTask to allow for different
transaction operation function signatures:

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::openTransaction): Pipe through the objectStoreIDs and mode:
(WebKit::UniqueIDBDatabase::beginTransaction):
(WebKit::UniqueIDBDatabase::commitTransaction):
(WebKit::UniqueIDBDatabase::resetTransaction):
(WebKit::UniqueIDBDatabase::rollbackTransaction):
(WebKit::UniqueIDBDatabase::postTransactionOperation):
(WebKit::UniqueIDBDatabase::openBackingStoreTransaction):

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:

Pipe through the objectStoreIDs and mode:

  • DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::establishTransaction):

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
  • Platform/Logging.h: Add an IDB logging channel.
  • Shared/AsyncTask.h:

(WebKit::createAsyncTask): Add a 3-argument variant.

  • Shared/WebCrossThreadCopier.cpp:

(WebCore::::copy): Add a Vector<int64_t> copier.

  • Shared/WebCrossThreadCopier.h:

Add logging throughout currently implemented methods:

  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:

(WebKit::WebIDBServerConnection::getOrEstablishIDBDatabaseMetadata):
(WebKit::WebIDBServerConnection::didGetOrEstablishIDBDatabaseMetadata):
(WebKit::WebIDBServerConnection::openTransaction): Pipe through the objectStoreIDs and mode.
(WebKit::WebIDBServerConnection::didOpenTransaction):
(WebKit::WebIDBServerConnection::beginTransaction):
(WebKit::WebIDBServerConnection::didBeginTransaction):
(WebKit::WebIDBServerConnection::commitTransaction):
(WebKit::WebIDBServerConnection::didCommitTransaction):
(WebKit::WebIDBServerConnection::resetTransaction):
(WebKit::WebIDBServerConnection::didResetTransaction):
(WebKit::WebIDBServerConnection::rollbackTransaction):
(WebKit::WebIDBServerConnection::didRollbackTransaction):

3:42 PM Changeset in webkit [160731] by barraclough@apple.com
  • 19 edits in trunk

Remove PageVisibilityStateUnloaded
https://bugs.webkit.org/show_bug.cgi?id=125869

Reviewed by Anders Carlsson.

This is not currently supported by WebKit, remove this enum value.
We can always add this back later if/when we add support for this state.

Source/WebCore:

  • page/PageVisibilityState.cpp:

(WebCore::pageVisibilityStateString):

  • page/PageVisibilityState.h:
    • removed PageVisibilityStateUnloaded

Source/WebKit/mac:

  • WebView/WebView.mm:

(core):
(kit):

  • WebView/WebViewPrivate.h:
    • removed PageVisibilityStateUnloaded/WebPageVisibilityStateUnloaded

Source/WebKit2:

  • Shared/API/c/WKPageVisibilityTypes.h:
  • Shared/API/c/WKSharedAPICast.h:

(WebKit::toPageVisibilityState):

  • removed PageVisibilityStateUnloaded/kWKPageVisibilityStateUnloaded

Tools:

  • DumpRenderTree/mac/TestRunnerMac.mm:

(TestRunner::setPageVisibility):

  • TestWebKitAPI/Tests/WebKit2/PageVisibilityState.cpp:

(TestWebKitAPI::didRunStep3StateChangePrerenderToUnloaded):

  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::setPageVisibility):

  • remove test for visibility state "unloaded"; this is no longer supported (it never really was).

LayoutTests:

  • fast/events/page-visibility-transition-test-expected.txt:
  • fast/events/page-visibility-transition-test.html:
    • remove test for visibility state "unloaded"; this is no longer supported (it never really was).
3:30 PM Changeset in webkit [160730] by mark.lam@apple.com
  • 2 edits in branches/jsCStack/Source/JavaScriptCore

Introduce a maxFrameExtentForSlowPathCallInRegisters value.
https://bugs.webkit.org/show_bug.cgi?id=125877.

Reviewed by Michael Saboff.

Sometimes, we need this max frame extent value in units of Registers.
So, might as well provide it at the source.

  • assembler/MaxFrameExtentForSlowPathCall.h:
2:19 PM Changeset in webkit [160729] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Sanitize skip entries for pop-up menu tests.

Pop-up menus are native controls on Mac, and block test progress when opened.

  • platform/mac/TestExpectations: Combined entries for these tests together, and

updated comments.

1:52 PM Changeset in webkit [160728] by Martin Robinson
  • 10 edits
    2 adds in trunk

[GTK] [CMake] Build the plugin process against GTK+ 2
https://bugs.webkit.org/show_bug.cgi?id=116374

Reviewed by Gustavo Noronha Silva.

.:

  • Source/cmake/FindGDK2.cmake: Added.
  • Source/cmake/FindGTK2.cmake: Added.
  • Source/cmake/OptionsGTK.cmake: Look for GTK2 and GDK2.
  • Source/cmake/WebKitMacros.cmake: Abstract WebKit2 IPC generation here so it

can be shared between the WebKit2 library and the plugin process.

Source/WebCore:

  • PlatformGTK.cmake: Split off the GTK+-dependent sources into

libWebCorePlatformGTK and compile libWebCorePlatformGTK2 when
WebKit2 is enabled.

Source/WebKit2:

  • CMakeLists.txt: Use the new GENERATE_WEBKIT2_MESSAGE_SOURCES macro so we

can share messaging file generation with the plugin process.

  • PlatformGTK.cmake: Add more files to the plugin process source list. Properly

generate message sources, add the appropriate include paths, defines, and libraries
for the plugin process.

Tools:

  • TestWebKitAPI/PlatformGTK.cmake: Add WebCorePlatformGTK to the list of

libraries required for WebCore unit tests.

1:30 PM Changeset in webkit [160727] by andersca@apple.com
  • 7 edits in trunk/Source/WebKit2

Back out r159982
https://bugs.webkit.org/show_bug.cgi?id=125870
<rdar://problem/15598485>

Reviewed by Dan Bernstein.

Looks like r159982 caused intermittent crashes. Back it out for now.

  • UIProcess/WebContextUserMessageCoders.h:

(WebKit::WebContextUserMessageEncoder::encode):
(WebKit::WebContextUserMessageDecoder::decode):

  • UIProcess/WebPageGroup.cpp:
  • UIProcess/WebPageGroup.h:

(WebKit::WebPageGroup::sendToAllProcessesInGroup):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::initializeWebPage):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::disconnect):

  • UIProcess/WebProcessProxy.h:
1:20 PM Changeset in webkit [160726] by Brent Fulgham
  • 2 edits in trunk/Tools

[Win] Revise filter-build-webkit to deal with Windows build logs
https://bugs.webkit.org/show_bug.cgi?id=125866

Reviewed by David Kilzer.

Enhance the script to accept a 'platform' argument. When platform
'win' is provided, use processing for the Windows build file format.
Otherwise, process the files as normal.

  • Scripts/filter-build-webkit:

(usageAndExit): Add a 'platform' argument
(shouldIgnoreLine): When platform == 'win' use the new Windows
rules for processing the build file.

1:18 PM Changeset in webkit [160725] by commit-queue@webkit.org
  • 5 edits in trunk/Source

Compile fix for WebGL on Windows without GRAPHICS_SURFACE.
https://bugs.webkit.org/show_bug.cgi?id=125867

Patch by Alex Christensen <achristensen@webkit.org> on 2013-12-17
Reviewed by Martin Robinson.

Source/WebCore:

  • platform/graphics/opengl/GLPlatformSurface.cpp:

(WebCore::GLPlatformSurface::createOffScreenSurface):
Protect reference to EGLOffScreenSurface with USE(GRAPHICS_SURFACE).

Source/WTF:

  • wtf/FeatureDefines.h:

Removed unused ENABLE_GLIB_SUPPORT macro.

  • wtf/Platform.h:

Don't use GRAPHICS_SURFACE for WebGL on Windows.

12:48 PM Changeset in webkit [160724] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

Unreviewed test update for Windows.

  • platform/win/TestExpectations: Exclude a few more media-based

test files.

12:34 PM Changeset in webkit [160723] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Layout Test webaudio/delaynode-max-default-delay.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=121646

  • platform/mac/TestExpectations: Marking as such.
12:22 PM Changeset in webkit [160722] by ap@apple.com
  • 3 edits in trunk/Tools

Update style checker now that ENUM_CLASS is gone
https://bugs.webkit.org/show_bug.cgi?id=125864

Reviewed by Anders Carlsson.

  • Scripts/webkitpy/style/checkers/cpp.py:

(_EnumState.process_clean_line):
(check_braces):

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(NoNonVirtualDestructorsTest.test_enum_casing.Foo):
(NoNonVirtualDestructorsTest.test_enum_casing):
(NoNonVirtualDestructorsTest.test_enum_casing.Enum123):
(NoNonVirtualDestructorsTest.test_enum_trailing_semicolon.CPP11EnumClass):
(NoNonVirtualDestructorsTest.test_enum_trailing_semicolon.MyEnum):
(WebKitStyleTest.test_braces.CPP11EnumClass):

12:13 PM Changeset in webkit [160721] by stavila@adobe.com
  • 3 edits
    6 adds in trunk

[CSS Regions] Positioned elements in regions get clipped if they fall outside the region
https://bugs.webkit.org/show_bug.cgi?id=117120

Reviewed by Mihnea Ovidenie.

Source/WebCore:

Fixed the computing of the box decorations clip rect when having statically positioned
elements inside positioned elements. The existing algorithm computed the rect in a loop
running up the containing block chain and only checked for positioned elements before
starting the loop. If a positioned elements was found in the middle of a loop (as would
be the case with a positioned element parenting a non-positioned element), it was not
correctly handled.
Also changed it so the clip is only performed in the fragmentation direction as that was
the original purpose of this method.

Tests: fast/regions/absolute-in-relative-overflow.html

fast/regions/static-in-relative-overflow.html
fast/regions/sticky-border-overflow.html

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::decorationsClipRectForBoxInRegion):

LayoutTests:

Added tests for the correct painting of the borders of differently positioned elements overflowing regions.

  • fast/regions/absolute-in-relative-overflow-expected.html: Added.
  • fast/regions/absolute-in-relative-overflow.html: Added.
  • fast/regions/static-in-relative-overflow-expected.html: Added.
  • fast/regions/static-in-relative-overflow.html: Added.
  • fast/regions/sticky-border-overflow-expected.html: Added.
  • fast/regions/sticky-border-overflow.html: Added.
12:11 PM Changeset in webkit [160720] by commit-queue@webkit.org
  • 4 edits
    4 deletes in trunk

Unreviewed, rolling out r160717.
http://trac.webkit.org/changeset/160717
https://bugs.webkit.org/show_bug.cgi?id=125863

New tests are failing, and possibly broke an existing test
(Requested by ap on #webkit).

Source/WebCore:

  • rendering/FlowThreadController.cpp:

(WebCore::FlowThreadController::collectFixedPositionedLayers):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintFixedLayersInNamedFlows):
(WebCore::RenderLayer::hitTestFixedLayersInNamedFlows):

LayoutTests:

  • fast/regions/repaint/fixed-in-named-flow-cb-changed-expected.txt: Removed.
  • fast/regions/repaint/fixed-in-named-flow-cb-changed.html: Removed.
  • fast/regions/repaint/fixed-in-named-flow-cb-changed2-expected.txt: Removed.
  • fast/regions/repaint/fixed-in-named-flow-cb-changed2.html: Removed.
12:10 PM Changeset in webkit [160719] by rniwa@webkit.org
  • 3 edits
    2 adds in trunk

Invalid dir attributes should resolve to ltr
https://bugs.webkit.org/show_bug.cgi?id=125830

Source/WebCore:

Reviewed by Darin Adler.

Merge https://chromium.googlesource.com/chromium/blink/+/2d592d1c998bec9438e421e1ce1ee6caba05a884

The dir attribute should resolve to direction: ltr by default when the attribute value is
"not in a defined state": http://www.w3.org/TR/2013/WD-html51-20130528/dom.html#the-directionality

Test: fast/dom/HTMLElement/set-and-clear-dir-attribute.html

  • html/HTMLElement.cpp:

(WebCore::isLTROrRTLIgnoringCase): Extracted from HTMLElement::directionality.
(WebCore::HTMLElement::collectStyleForPresentationAttribute):
(WebCore::HTMLElement::directionality):

LayoutTests:

Reviewed by Darin Adler.

  • fast/dom/HTMLElement/set-and-clear-dir-attribute-expected.txt: Added.
  • fast/dom/HTMLElement/set-and-clear-dir-attribute.html: Added.
11:46 AM Changeset in webkit [160718] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Fixed an assertion failure seen running some mixed-content tests.
https://bugs.webkit.org/show_bug.cgi?id=125862

Reviewed by Alexey Proskuryakov.

  • UIProcess/PageLoadState.cpp:

(WebKit::PageLoadState::didDisplayOrRunInsecureContent): Removed an assertion about the URL
of the main frame when dealing with a notification that could have come from any frame.

10:46 AM Changeset in webkit [160717] by mihnea@adobe.com
  • 4 edits
    4 adds in trunk

[CSSRegions] Incorrect repaint of fixed element with transformed parent
https://bugs.webkit.org/show_bug.cgi?id=125756

Reviewed by Darin Adler.

Source/WebCore:

When collecting the layers for fixed positioned elements with named flow
as a containing block, use layers collection at named flow layer level
instead of relying on the positioned elements collection.

Modified also FlowThreadController::collectFixedPositionedLayers function
to always return the layers sorted by z-index, as this operation was always
done at the call sites.

Tests: fast/regions/repaint/fixed-in-named-flow-cb-changed.html

fast/regions/repaint/fixed-in-named-flow-cb-changed2.html

  • rendering/FlowThreadController.cpp:

(WebCore::compareZIndex):
(WebCore::FlowThreadController::collectFixedPositionedLayers):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintFixedLayersInNamedFlows):
(WebCore::RenderLayer::hitTestFixedLayersInNamedFlows):

LayoutTests:

Add tests for a fixed positioned element with a parent that:

  1. dynamically gets a transform, in which case the fixed positioned element should be positioned

relative to its parent

  1. dynamically loses its transform, in which case the fixed positioned element should be positioned

relative to the view.

  • fast/regions/repaint/fixed-in-named-flow-cb-changed-expected.txt: Added.
  • fast/regions/repaint/fixed-in-named-flow-cb-changed.html: Added.
  • fast/regions/repaint/fixed-in-named-flow-cb-changed2-expected.txt: Added.
  • fast/regions/repaint/fixed-in-named-flow-cb-changed2.html: Added.
10:45 AM Changeset in webkit [160716] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WTF

[Win] Fixed linker error with GStreamer.
https://bugs.webkit.org/show_bug.cgi?id=124861

Patch by Alex Christensen <achristensen@webkit.org> on 2013-12-17
Reviewed by Martin Robinson.

  • wtf/gobject/GOwnPtr.cpp:

(WTF::GError):

  • wtf/gobject/GOwnPtr.h:

Added WTF_EXPORT_PRIVATE to freeOwnedGPtr<GError> declaration and definition.

10:38 AM Changeset in webkit [160715] by Bem Jones-Bey
  • 5 edits in trunk

REGRESSION(r159166?): fast/block/float/float-with-fractional-height-vertical-lr.html, fast/block/float/float-with-fractional-height.html are failing
https://bugs.webkit.org/show_bug.cgi?id=124506

Reviewed by Dirk Schulze.

Source/WebCore:

Floor the endpoints of the floating object interval to keep the old
behavior until a better fix can be created.

No new tests, fixes regression in existing tests.

  • rendering/FloatingObjects.cpp:

(WebCore::FloatingObjects::intervalForFloatingObject):

LayoutTests:

Remove lines for tests that have been fixed by this patch.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
10:25 AM Changeset in webkit [160714] by msaboff@apple.com
  • 3 edits in branches/jsCStack/Source/JavaScriptCore

CStack Branch: Fix callee frame access in virtualForThunkGenerator when we don't emit prologue code
https://bugs.webkit.org/show_bug.cgi?id=125828

Not yet reviewed.

Added helpers to access the callee frame using the stack pointer taking into account that
the caller frame hasn't been pushed onto the stack.

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::emitPutToCallFrameHeaderBeforePrologue):
(JSC::AssemblyHelpers::emitPutPayloadToCallFrameHeaderBeforePrologue):
(JSC::AssemblyHelpers::emitPutTagToCallFrameHeaderBeforePrologue):

  • jit/ThunkGenerators.cpp:

(JSC::virtualForThunkGenerator):

10:14 AM Changeset in webkit [160713] by alex.christensen@flexsim.com
  • 2 edits in trunk/Source/WebCore

[Win] Visual Studio workaround for compiling WebGL.
https://bugs.webkit.org/show_bug.cgi?id=125808

Reviewed by Darin Adler.

  • platform/graphics/GraphicsContext3D.cpp:

Don't inline outermost function to prevent Visual Studio crash.

10:08 AM Changeset in webkit [160712] by mario.prada@samsung.com
  • 12 edits in trunk

[ATK] Expose accessibility objects for <dl>, <dt> and <dd>
https://bugs.webkit.org/show_bug.cgi?id=125857

Reviewed by Chris Fleizach.

Source/WebCore:

Map description lists to the newly introduced ATK roles
ATK_ROLE_DESCRIPTION_LIST, ATK_ROLE_DESCRIPTION_TERM and
ATK_ROLE_DESCRIPTION_VALUE, introduced in ATK 2.11.4.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(atkRole): Do the right mapping.
(webkitAccessibleGetRole): Update call to atkRole, now that it
receives an AccessibilityObject* as parameter.

Tools:

Add mappings to DRT & WKTR for the newly exposed roles, and
increase the version of ATK used by the internal jhbuild.

  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
  • gtk/jhbuild.modules: Raise version of ATK up to 2.11.4.

LayoutTests:

Update test to update expectations.

  • platform/gtk/accessibility/roles-exposed-expected.txt:
  • platform/gtk/accessibility/roles-exposed.html:

Updated test expectations for other test using description lists.

  • platform/efl-wk1/accessibility/lists-expected.txt:
  • platform/efl-wk2/accessibility/lists-expected.txt:
  • platform/gtk/accessibility/lists-expected.txt:
9:56 AM Changeset in webkit [160711] by commit-queue@webkit.org
  • 6 edits
    4 adds in trunk

Ensure inferred mrows for msqrt, mstyle, merror, mphantom and math.
https://bugs.webkit.org/show_bug.cgi?id=124841

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-12-17
Reviewed by Darin Adler.

Source/WebCore:

Tests: mathml/presentation/inferred-mrow-baseline.html

mathml/presentation/inferred-mrow-stretchy.html

  • css/mathml.css: make merror, mphantom and mstyle behave like an mrow.

(mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle):
(math, mrow, mfenced, msqrt, mroot, merror, mphantom, mstyle):

  • mathml/MathMLInlineContainerElement.cpp: ditto

(WebCore::MathMLInlineContainerElement::createRenderer):

  • mathml/mathtags.in: ditto
  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::paint): fix failure in mathml/presentation/phantom.html now that phantom can stretch operators.

LayoutTests:

  • mathml/presentation/inferred-mrow-baseline-expected.txt: Added.
  • mathml/presentation/inferred-mrow-baseline.html: Added.
  • mathml/presentation/inferred-mrow-stretchy-expected.txt: Added.
  • mathml/presentation/inferred-mrow-stretchy.html: Added.
9:40 AM Changeset in webkit [160710] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Add properties related to the user agent string
https://bugs.webkit.org/show_bug.cgi?id=125856

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKBrowsingContextController.h: Declared new properties.
  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:

(-[WKBrowsingContextController applicationNameForUserAgent]): Added accessor.
(-[WKBrowsingContextController setApplicationNameForUserAgent:]): Ditto.
(-[WKBrowsingContextController customUserAgent]): Ditto.
(-[WKBrowsingContextController setCustomUserAgent:]): Ditto.

9:27 AM Changeset in webkit [160709] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Win] Temporarily disable mediate tests to get bots green.

  • platform/win/TestExpectations: Turn off additional media-related

tests. These will be reactivated soon.

8:58 AM Changeset in webkit [160708] by mihnea@adobe.com
  • 5 edits
    33 moves
    4 adds
    1 delete in trunk/LayoutTests

[CSS Regions] Move regions tests from fast/repaint into fast/regions
https://bugs.webkit.org/show_bug.cgi?id=78786

Reviewed by Dirk Schulze.

Moved regions repaint tests from fast/repaint into fast/regions/repaint.
Moved regions repaint tests from fast/regions into fast/regions/repaint.
Adjusted paths, TestExpectations.

  • fast/regions/repaint/element-in-named-flow-absolute-from-fixed-expected.txt: Renamed from LayoutTests/fast/regions/element-in-named-flow-absolute-from-fixed-expected.txt.
  • fast/regions/repaint/element-in-named-flow-absolute-from-fixed.html: Renamed from LayoutTests/fast/regions/element-in-named-flow-absolute-from-fixed.html.
  • fast/regions/repaint/element-in-named-flow-fixed-from-absolute-expected.txt: Renamed from LayoutTests/fast/regions/element-in-named-flow-fixed-from-absolute-expected.txt.
  • fast/regions/repaint/element-in-named-flow-fixed-from-absolute.html: Renamed from LayoutTests/fast/regions/element-in-named-flow-fixed-from-absolute.html.
  • fast/regions/repaint/element-inflow-fixed-from-outflow-static-expected.txt: Renamed from LayoutTests/fast/regions/element-inflow-fixed-from-outflow-static-expected.txt.
  • fast/regions/repaint/element-inflow-fixed-from-outflow-static.html: Renamed from LayoutTests/fast/regions/element-inflow-fixed-from-outflow-static.html.
  • fast/regions/repaint/element-outflow-static-from-inflow-fixed-expected.txt: Renamed from LayoutTests/fast/regions/element-outflow-static-from-inflow-fixed-expected.txt.
  • fast/regions/repaint/element-outflow-static-from-inflow-fixed.html: Renamed from LayoutTests/fast/regions/element-outflow-static-from-inflow-fixed.html.
  • fast/regions/repaint/fixed-in-named-flow-scroll-expected.txt: Renamed from LayoutTests/fast/regions/fixed-in-named-flow-scroll-expected.txt.
  • fast/regions/repaint/fixed-in-named-flow-scroll.html: Renamed from LayoutTests/fast/regions/fixed-in-named-flow-scroll.html.
  • fast/regions/repaint/increasing-region-content-height-expected.txt: Renamed from LayoutTests/fast/repaint/increasing-region-content-height-expected.txt.
  • fast/regions/repaint/increasing-region-content-height.html: Renamed from LayoutTests/fast/repaint/increasing-region-content-height.html.
  • fast/regions/repaint/japanese-rl-selection-repaint-in-regions.html: Renamed from LayoutTests/fast/repaint/japanese-rl-selection-repaint-in-regions.html.
  • fast/regions/repaint/line-flow-with-floats-in-regions.html: Added.
  • fast/regions/repaint/overflow-flipped-writing-mode-block-in-regions.html: Renamed from LayoutTests/fast/repaint/overflow-flipped-writing-mode-block-in-regions.html.
  • fast/regions/repaint/region-painting-composited-element-expected.html: Renamed from LayoutTests/fast/repaint/region-painting-composited-element-expected.html.
  • fast/regions/repaint/region-painting-composited-element.html: Renamed from LayoutTests/fast/repaint/region-painting-composited-element.html.
  • fast/regions/repaint/region-painting-in-composited-view-expected.html: Renamed from LayoutTests/fast/repaint/region-painting-in-composited-view-expected.html.
  • fast/regions/repaint/region-painting-in-composited-view.html: Renamed from LayoutTests/fast/repaint/region-painting-in-composited-view.html.
  • fast/regions/repaint/region-painting-invalidation.html: Renamed from LayoutTests/fast/repaint/region-painting-invalidation.html.
  • fast/regions/repaint/region-painting-via-layout.html: Renamed from LayoutTests/fast/repaint/region-painting-via-layout.html.
  • fast/regions/repaint/repaint-regions-overflow-expected.txt: Renamed from LayoutTests/fast/repaint/repaint-regions-overflow-expected.txt.
  • fast/regions/repaint/repaint-regions-overflow.html: Renamed from LayoutTests/fast/repaint/repaint-regions-overflow.html.
  • fast/repaint/line-flow-with-floats-in-regions.html: Removed.
  • platform/efl/TestExpectations:
  • platform/efl/fast/regions/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Renamed from LayoutTests/platform/efl/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt.
  • platform/gtk/TestExpectations:
  • platform/mac/fast/regions/repaint/japanese-rl-selection-repaint-in-regions-expected.png: Renamed from LayoutTests/platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png.
  • platform/mac/fast/regions/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Renamed from LayoutTests/platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt.
  • platform/mac/fast/regions/repaint/line-flow-with-floats-in-regions-expected.png: Renamed from LayoutTests/platform/mac/fast/repaint/line-flow-with-floats-in-regions-expected.png.
  • platform/mac/fast/regions/repaint/line-flow-with-floats-in-regions-expected.txt: Renamed from LayoutTests/platform/mac/fast/repaint/line-flow-with-floats-in-regions-expected.txt.
  • platform/mac/fast/regions/repaint/overflow-flipped-writing-mode-block-in-regions-expected.png: Renamed from LayoutTests/platform/mac/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.png.
  • platform/mac/fast/regions/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt: Renamed from LayoutTests/platform/mac/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt.
  • platform/mac/fast/regions/repaint/region-painting-invalidation-expected.png: Renamed from LayoutTests/platform/mac/fast/repaint/region-painting-invalidation-expected.png.
  • platform/mac/fast/regions/repaint/region-painting-invalidation-expected.txt: Renamed from LayoutTests/platform/mac/fast/repaint/region-painting-invalidation-expected.txt.
  • platform/mac/fast/regions/repaint/region-painting-via-layout-expected.png: Renamed from LayoutTests/platform/mac/fast/repaint/region-painting-via-layout-expected.png.
  • platform/mac/fast/regions/repaint/region-painting-via-layout-expected.txt: Renamed from LayoutTests/platform/mac/fast/repaint/region-painting-via-layout-expected.txt.
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
8:55 AM Changeset in webkit [160707] by commit-queue@webkit.org
  • 4 edits in trunk

Source/WebKit/win: [WinCairo] Compile fixes for GStreamer on Windows.
https://bugs.webkit.org/show_bug.cgi?id=124867

Patch by Alex Christensen <achristensen@webkit.org> on 2013-12-17
Reviewed by Philippe Normand.

  • WebView.cpp:

(WebView::enterFullscreenForNode):
(WebView::exitFullscreen):
GStreamer in WebKit does not support fullscreen, so
I added #if !USE(GSTREAMER) to the fullscreen code to get it to compile.

Tools: [WinCairo] Adding support for GStreamer and GLib.
https://bugs.webkit.org/show_bug.cgi?id=124867

Patch by Alex Christensen <achristensen@webkit.org> on 2013-12-17
Reviewed by Philippe Normand.

  • WinLauncher/WinLauncher.cpp:

(wWinMain):
Added g_main_context_iteration in main event loop.

8:18 AM Changeset in webkit [160706] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Fix for C++ should have the & or * beside the type not the variable name check.
https://bugs.webkit.org/show_bug.cgi?id=125846

Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2013-12-17
Reviewed by Darin Adler.

  • Scripts/webkitpy/style/checkers/cpp.py:

(check_spacing):

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(CppStyleTest.test_pointer_reference_marker_location):

7:22 AM Changeset in webkit [160705] by commit-queue@webkit.org
  • 2 edits in trunk/Source/ThirdParty/ANGLE

[GTK] Some ANGLE headers missing from dist
https://bugs.webkit.org/show_bug.cgi?id=125782

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-12-17
Reviewed by Carlos Garcia Campos.

  • GNUmakefile.am: add a few headers that were missing from the build,

causing build failures when the system headers were incompatible.

7:06 AM Changeset in webkit [160704] by simon.pena@samsung.com
  • 4 edits in trunk

[NIX] Enable full debug builds by having ar creating thin archives
https://bugs.webkit.org/show_bug.cgi?id=125850

Reviewed by Csaba Osztrogonác.

By default, CMake uses ar to generate libWebCore.a with cr parameters
(do not warn if the library has to be created, and replace existing
files in the archive). That results in a very large file, and ar fails
with sizes over 4GB.

.:

Previously, debug builds on NIX were overriding CFLAGS in order to reduce
the size of the WebCore library. Once that ar creates thin archives, overriding
CFLAGS is no longer needed.

  • Source/cmake/OptionsNix.cmake: Remove CFLAGS override for debug builds.

Source/WebCore:

By using thin archives (the T option of ar), the generated
libWebCore.a is much smaller, and can be successfully archived. As a
result, we can generate a full debug build. This patch is based on Xan
López's webkit.org/b/110580.

  • PlatformNix.cmake: Instruct cmake to invoke ar with T option.
5:30 AM Changeset in webkit [160703] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Fix armv7 and sh4 builds.
https://bugs.webkit.org/show_bug.cgi?id=125848

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-12-17
Reviewed by Csaba Osztrogonác.

  • assembler/ARMv7Assembler.h: Include limits.h for INT_MIN.
  • assembler/SH4Assembler.h: Include limits.h for INT_MIN.
5:30 AM Changeset in webkit [160702] by mario.prada@samsung.com
  • 3 edits in trunk/LayoutTests

[GTK][WK2] rowAtIndex is not implemented in DRT/WKTR
https://bugs.webkit.org/show_bug.cgi?id=116971

Unreviewed. Moving test expectation to the right place, as this is
an issue that actually affects both to Webkit1 and Webkit2.

  • platform/gtk-wk2/TestExpectations: Removed expectation.
  • platform/gtk/TestExpectations: Added expectation.
4:26 AM Changeset in webkit [160701] by mihnea@adobe.com
  • 1 edit
    6 deletes in trunk/LayoutTests

[CSSRegions] Remove left-over test expectations in fast/regions/layers
https://bugs.webkit.org/show_bug.cgi?id=125841

Reviewed by Dirk Schulze.

The original tests were removed part of https://bugs.webkit.org/show_bug.cgi?id=121828
and added back as expectations only when https://bugs.webkit.org/show_bug.cgi?id=118665
landed.
They should be removed.

  • fast/regions/layers/dynamic-layer-added-with-no-layout-expected.txt: Removed.
  • fast/regions/layers/dynamic-layer-removed-with-no-layout-expected.txt: Removed.
  • fast/regions/layers/regions-promoted-to-layers-expected.txt: Removed.
  • fast/regions/layers/regions-promoted-to-layers-horizontal-bt-expected.txt: Removed.
  • fast/regions/layers/regions-promoted-to-layers-vertical-lr-expected.txt: Removed.
  • fast/regions/layers/regions-promoted-to-layers-vertical-rl-expected.txt: Removed.
4:03 AM Changeset in webkit [160700] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

Unreviewed. Update GObject DOM symbols file after r160336.

  • bindings/gobject/webkitdom.symbols: Add new methods exposed for

VideoPlaybackQuality.

2:43 AM Changeset in webkit [160699] by commit-queue@webkit.org
  • 3 edits
    6 adds in trunk

Fix hit testing for divs with a hierarchy of css transformed and non-transformed elements
https://bugs.webkit.org/show_bug.cgi?id=124777

Patch by Mihai Maerean <Mihai Maerean> on 2013-12-17
Reviewed by Darin Adler.

Source/WebCore:

After bug #124647, the hit test will still behave incorrectly for transformed divs with non
transformed siblings that are all inside a transformed element (tested by the
hover-rotated-with-children-negative-z.html layout test).

The fix is to not take zOffset into account during hit-testing when child layers are in the
same 3D rendering context. Only when preserve3d is true, should hit-testing compute the
zOffset of the layers with transformations and, when two layers overlap, to return the layer
with the highest zOffset.

The patch includes the work of a.renevier from https://codereview.chromium.org/79943002/

Tests: transforms/3d/hit-testing/hover-rotated-with-children-negative-z.html

transforms/3d/hit-testing/negative-zoffset-hit-test.html
transforms/3d/hit-testing/overlapping-layers-hit-test.html

  • rendering/RenderLayer.cpp:

(WebCore::computeZOffset):
(WebCore::RenderLayer::hitTestLayer):

LayoutTests:

  • transforms/3d/hit-testing/hover-rotated-with-children-negative-z.html: Added.
  • transforms/3d/hit-testing/hover-rotated-with-children-negative-z-expected.txt: Added.
  • transforms/3d/hit-testing/negative-zoffset-hit-test.html: Added.
  • transforms/3d/hit-testing/negative-zoffset-hit-test-expected.txt: Added.
  • transforms/3d/hit-testing/overlapping-layers-hit-test.html: Added.
  • transforms/3d/hit-testing/overlapping-layers-hit-test-expected.txt: Added.
2:41 AM Changeset in webkit [160698] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

Remove a few more guards mistakenly added in r160367

Reviewed by Martin Robinson.

r160367 was too liberal in hiding APIs from the GObject DOM bindings.

  • Modules/battery/NavigatorBattery.idl: Expose NavigatorBattery.
2:39 AM Changeset in webkit [160697] by benjamin@webkit.org
  • 4 edits
    2 adds in trunk/Source

Add a simple register allocator to WebCore for x86_64
https://bugs.webkit.org/show_bug.cgi?id=125771

Reviewed by Geoffrey Garen.

Source/WebCore:

Add a brain dead register allocator to simplify the use of registers
when writting code generators.

RegisterAllocator has two purposes:
-make it easy to name registers properly.
-make it hard to reuse a register accidentally.

A helper class LocalRegister is also defined to provide an easy
way to work with registers within a C++ scope. For example:

LocalRegister elementPointer(allocator);
assembler.load(address, elementPointer);

RegisterAllocator makes no attempt at optimizing register allocations, but it reduces
implicit dependencies by returning used register at the end of the queue, making it less
likely they will be reused before their last instruction is executed.

The current implementation only support unix x86_64, it only uses caller saved registers.

  • WebCore.xcodeproj/project.pbxproj:
  • cssjit/RegisterAllocator.h: Added.

(WebCore::RegisterAllocator::allocateRegister): Provides any available register.
To restrict runtime exploitation of compiler bugs, the method crashes in release
if the register pool is empty.

(WebCore::RegisterAllocator::reserveRegister): Reserve a particular register.
(WebCore::RegisterAllocator::returnRegister): Return a previously allocated or reserved register.

(WebCore::RegisterAllocator::allocatedRegisters):
(WebCore::LocalRegister::LocalRegister):
(WebCore::LocalRegister::~LocalRegister):
(WebCore::LocalRegister::operator JSC::MacroAssembler::RegisterID):
(WebCore::RegisterAllocator::RegisterAllocator):

Source/WTF:

  • wtf/Platform.h: Add a new flag "CSS_SELECTOR_JIT" to guard

an experimental JIT compiler in WebCore.

Dec 16, 2013:

11:48 PM Changeset in webkit [160696] by barraclough@apple.com
  • 20 edits in trunk/Source/WebKit2

Add layer hosting mode to ViewState
https://bugs.webkit.org/show_bug.cgi?id=125803

Unreviewed - reverting last commit - might have broken tests. :-(

  • Shared/ViewState.h:
  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode):

  • Shared/WebPageCreationParameters.h:
  • UIProcess/API/mac/PageClientImpl.h:
  • UIProcess/API/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::PageClientImpl):
(WebKit::PageClientImpl::viewWillMoveToAnotherWindow):
(WebKit::PageClientImpl::viewLayerHostingMode):

  • UIProcess/DrawingAreaProxy.h:

(WebKit::DrawingAreaProxy::layerHostingModeDidChange):

  • UIProcess/PageClient.h:

(WebKit::PageClient::viewLayerHostingMode):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::updateViewState):
(WebKit::WebPageProxy::viewStateDidChange):
(WebKit::WebPageProxy::initializeCreationParameters):

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::layerHostingMode):

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

(WebKit::TiledCoreAnimationDrawingAreaProxy::layerHostingModeDidChange):

  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::resumePainting):
(WebKit::DrawingArea::setLayerHostingMode):

  • WebProcess/WebPage/DrawingArea.messages.in:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
(WebKit::WebPage::~WebPage):
(WebKit::WebPage::scalePage):
(WebKit::WebPage::setDeviceScaleFactor):
(WebKit::WebPage::setActive):
(WebKit::WebPage::setViewState):
(WebKit::WebPage::setWindowIsVisible):
(WebKit::WebPage::windowAndViewFramesChanged):

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::layerHostingMode):

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::setLayerHostingMode):

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

(WebKit::TiledCoreAnimationDrawingArea::setLayerHostingMode):

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::sendComplexTextInputToPlugin):
(WebKit::WebPage::setLayerHostingMode):

11:46 PM Changeset in webkit [160695] by barraclough@apple.com
  • 20 edits in trunk/Source/WebKit2

Add layer hosting mode to ViewState
https://bugs.webkit.org/show_bug.cgi?id=125803

Reviewed by Anders Carlsson.

When the view state of the page is updated the layer mode may also
change. Currently this is passed by a separate message, remove this
and fold it into ViewState.

Previously the setLayerHostingMode message would be passed to the
DrawingArea, which would inform the WebPage. Since the WebPage is
passed the SetVisibilityState messgae reverse this.

WebPageProxy had a policy of only updating the hosting mode when
visible - the value is sticky whilst the view is not visible. Make
this policy explicit in the PageClientImpl, rather then implicit
from the flow control.

  • Shared/ViewState.h:
    • Added ViewState::IsLayerWindowServerHosted.
  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode):

  • Shared/WebPageCreationParameters.h:
    • removed layerHostingMode.
  • UIProcess/API/mac/PageClientImpl.h:
  • UIProcess/API/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::PageClientImpl):
(WebKit::PageClientImpl::isLayerWindowServerHosted):
(WebKit::PageClientImpl::viewWillMoveToAnotherWindow):

  • viewLayerHostingMode -> isLayerWindowServerHosted, added m_layerHostingMode.
  • UIProcess/DrawingAreaProxy.h:
    • removed layerHostingModeDidChange.
  • UIProcess/PageClient.h:
    • viewLayerHostingMode -> isLayerWindowServerHosted.
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):

  • removed m_layerHostingMode.

(WebKit::WebPageProxy::updateViewState):

  • added IsLayerWindowServerHosted.

(WebKit::WebPageProxy::viewStateDidChange):

  • changes to ViewState::IsInWindow implies ViewState::IsLayerWindowServerHosted may change too.
  • remove special handling (separate message) for LayerHostingMode.

(WebKit::WebPageProxy::initializeCreationParameters):

  • removed m_layerHostingMode.
  • UIProcess/WebPageProxy.h:
    • removed m_layerHostingMode.
  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
    • removed layerHostingModeDidChange.
  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::setLayerHostingMode):
(WebKit::DrawingArea::didUpdate):

  • setLayerHostingMode takes a LayerHostingMode.
  • WebProcess/WebPage/DrawingArea.messages.in:
    • SetLayerHostingMode is no longer a message.
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

  • removed m_layerHostingMode.

(WebKit::WebPage::setViewState):

  • handle ViewState::IsLayerWindowServerHosted.

(WebKit::WebPage::setLayerHostingMode):

  • moved from ~Mac.mm (matching other ViewState setters), calls to DrawingArea.
  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::layerHostingMode):

  • layerHostingMode queries m_viewState, removed m_layerHostingMode.
  • WebProcess/WebPage/ios/WebPageIOS.mm:
    • removed setLayerHostingMode.
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::setLayerHostingMode):

  • setLayerHostingMode takes a LayerHostingMode, WebPage now calls to DrawingArea.
  • WebProcess/WebPage/mac/WebPageMac.mm:
    • removed setLayerHostingMode.
10:09 PM Changeset in webkit [160694] by msaboff@apple.com
  • 9 edits in branches/jsCStack/Source/JavaScriptCore

CStack Branch: Need an implementation of sanitizeStack for C stack
https://bugs.webkit.org/show_bug.cgi?id=125719

Reviewed by Geoffrey Garen.

Implemented sanitizeStackForVM() as a LLInt stub. It clears memory beyond
the top of stack through the last stack top, which is stored in the VM.

  • dfg/DFGOSREntry.cpp:

(JSC::DFG::prepareOSREntry):

  • heap/Heap.cpp:

(JSC::Heap::markRoots):

  • interpreter/JSStack.cpp:

(JSC::JSStack::sanitizeStack):

  • llint/LowLevelInterpreter.asm:
  • runtime/VM.cpp:

(JSC::VM::VM):
(JSC::sanitizeStackForVM):

  • runtime/VM.h:

(JSC::VM::lastStackTop):
(JSC::VM::setLastStackTop):

  • runtime/VMEntryScope.cpp:

(JSC::VMEntryScope::VMEntryScope):
(JSC::VMEntryScope::~VMEntryScope):

  • runtime/VMEntryScope.h:
8:12 PM Changeset in webkit [160693] by thiago.lacerda@openbossa.org
  • 10 edits
    11 adds in trunk

Checking RTCPeerConnection signalingState before setting local/remoteDescription
https://bugs.webkit.org/show_bug.cgi?id=125655

Reviewed by Eric Carlson.

Before setting a session description RTCPeerConnection must check if it is in valid state for that SDP type.

Source/WebCore:

New tests: fast/mediastream/RTCPeerConnection-have-local-answer.html

fast/mediastream/RTCPeerConnection-have-local-offer.html
fast/mediastream/RTCPeerConnection-have-local-pranswer.html
fast/mediastream/RTCPeerConnection-have-remote-offer.html
fast/mediastream/RTCPeerConnection-have-remote-pranswer.html
fast/mediastream/RTCPeerConnection-stable.html

Modified: fast/mediastream/RTCPeerConnection-remoteDescription.html

  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::checkStateForLocalDescription): Checks if the current state of RTCPeerConnection is
valid for the local SDP that is being set.
(WebCore::RTCPeerConnection::checkStateForRemoteDescription): Checks if the current state of RTCPeerConnection
is valid for the remote SDP that is being set.
(WebCore::RTCPeerConnection::setLocalDescription): Now calls checkStateForLocalDescription prior to set the
local SDP.
(WebCore::RTCPeerConnection::setRemoteDescription): Now Calls checkStateForRemoteDescription prior to set the
remote SDP.

  • Modules/mediastream/RTCPeerConnection.h:
  • platform/mock/RTCNotifiersMock.cpp: Adding new class to notify RTCPeerConnection about a signaling state

change: SignalingStateNotifier.
(WebCore::SignalingStateNotifier::SignalingStateNotifier):
(WebCore::SignalingStateNotifier::fire):

  • platform/mock/RTCNotifiersMock.h:
  • platform/mock/RTCPeerConnectionHandlerMock.cpp:

(WebCore::RTCPeerConnectionHandlerMock::signalingStateFromSDP): Defines the new state that RTCPeerConnection
should be, according the SDP that is being set.
(WebCore::RTCPeerConnectionHandlerMock::setLocalDescription): Calls signalingStateFromSDP, in order to get the
new signaling state and notify RTCPeerConnection object.
(WebCore::RTCPeerConnectionHandlerMock::setRemoteDescription): Ditto.

  • platform/mock/RTCPeerConnectionHandlerMock.h:

LayoutTests:

  • fast/mediastream/RTCPeerConnection-have-local-answer.html: Added.
  • fast/mediastream/RTCPeerConnection-have-local-offer-expected.txt: Added.
  • fast/mediastream/RTCPeerConnection-have-local-offer.html: Added.
  • fast/mediastream/RTCPeerConnection-have-local-pranswer-expected.txt: Added.
  • fast/mediastream/RTCPeerConnection-have-local-pranswer.html: Added.
  • fast/mediastream/RTCPeerConnection-have-remote-offer-expected.txt: Added.
  • fast/mediastream/RTCPeerConnection-have-remote-offer.html: Added.
  • fast/mediastream/RTCPeerConnection-have-remote-pranswer-expected.txt: Added.
  • fast/mediastream/RTCPeerConnection-have-remote-pranswer.html: Added.
  • fast/mediastream/RTCPeerConnection-remoteDescription-expected.txt:
  • fast/mediastream/RTCPeerConnection-remoteDescription.html:
  • fast/mediastream/RTCPeerConnection-stable-expected.txt: Added.
  • fast/mediastream/RTCPeerConnection-stable.html: Added.
7:48 PM Changeset in webkit [160692] by weinig@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Remove unused contentAnchor SPI from WKView
https://bugs.webkit.org/show_bug.cgi?id=125826

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/WKViewPrivate.h:
  • UIProcess/API/mac/WKView.mm:

(-[WKView setFrameSize:]):
(-[WKView _setDrawingAreaSize:]):
(-[WKView _setAcceleratedCompositingModeRootLayer:]):
(-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):

7:06 PM Changeset in webkit [160691] by alex.christensen@flexsim.com
  • 2 edits in trunk/Source/WebKit

[Win] Unreviewed build fix for 64-bit.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

Corrected 64-bit linker symbols.

6:56 PM Changeset in webkit [160690] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Revert a mysterious and inexplicable part of http://trac.webkit.org/changeset/160685

  • platform/KeyedCoding.h:

(WebCore::KeyedEncoder::encodeEnum):
(WebCore::KeyedEncoder::encodeObject):
(WebCore::KeyedEncoder::encodeConditionalObject):
(WebCore::KeyedEncoder::encodeObjects):

6:43 PM Changeset in webkit [160689] by rwlbuis@webkit.org
  • 2 edits in trunk/Tools

Add my Samsung email address.

Unreviewed.

  • Scripts/webkitpy/common/config/contributors.json:
6:43 PM Changeset in webkit [160688] by oliver@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Avoid indirect function calls for custom getters
https://bugs.webkit.org/show_bug.cgi?id=125821

Reviewed by Mark Hahnenberg.

Rather than invoking a helper function to perform an indirect call
through a function pointer, just have the JIT call the function directly.

Unfortunately this only works in JSVALUE64 at the moment as there
is not an obvious way to pass two EncodedJSValues uniformly over
the various effected JITs.

  • jit/CCallHelpers.h:

(JSC::CCallHelpers::setupArguments):

  • jit/Repatch.cpp:

(JSC::generateProtoChainAccessStub):
(JSC::tryBuildGetByIDList):

6:27 PM Changeset in webkit [160687] by andersca@apple.com
  • 19 edits
    1 delete in trunk/Source

Remove EnumClass.h from WTF
https://bugs.webkit.org/show_bug.cgi?id=125820

Reviewed by Darin Adler.

Source/WebCore:

Replace uses of ENUM_CLASS with real enum class declarations.

  • Modules/webdatabase/DatabaseBasicTypes.h:
  • Modules/webdatabase/DatabaseError.h:
  • Modules/webdatabase/SQLTransactionState.h:
  • bindings/js/JSSubtleCryptoCustom.cpp:
  • bindings/js/SerializedScriptValue.cpp:
  • crypto/CryptoAlgorithmIdentifier.h:
  • crypto/CryptoAlgorithmParameters.h:
  • crypto/CryptoKey.h:
  • crypto/CryptoKeyData.h:
  • crypto/CryptoKeyType.h:
  • crypto/keys/CryptoKeyDataRSAComponents.h:
  • inspector/InspectorTimelineAgent.h:

Source/WTF:

All compilers we build on now support real strongly typed enums, so we can remove the ENUM_CLASS version.

  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CheckedArithmetic.h:
  • wtf/EnumClass.h: Removed.
6:16 PM Changeset in webkit [160686] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

WebKit2 View Gestures: Pinching beyond the extremes doesn't animate back to the min/max
https://bugs.webkit.org/show_bug.cgi?id=125750

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::commitTransientZoom):
Remove some accidentally included commented out code.

6:12 PM Changeset in webkit [160685] by timothy_horton@apple.com
  • 7 edits in trunk/Source

WebKit2 View Gestures: Pinching beyond the extremes doesn't animate back to the min/max
https://bugs.webkit.org/show_bug.cgi?id=125750

Reviewed by Simon Fraser.

When you let go of a pinch where you exceeded the maximum or minimum scale,
the view should animate back to the limit instead of snapping back.

  • UIProcess/mac/ViewGestureController.cpp:

(WebKit::ViewGestureController::endMagnificationGesture):
Unscrolling the scaled origin here is wrong; we should send the same
value for 'origin' for commitTransientZoom that we do for adjustTransientZoom.
The drawing area can deal with transforming that however it needs to call scalePage().

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

(WebKit::TiledCoreAnimationDrawingArea::beginTransientZoom):
Drive-by use WebPage::mainFrameView().

(WebKit::TiledCoreAnimationDrawingArea::adjustTransientZoom):
Update the shadow layer's bounds, position, and shadow path while zooming,
instead of hiding it.

(WebKit::transientZoomSnapAnimationForKeyPath):
Create a CABasicAnimation that stays applied to its target when it finishes,
lasts for a quarter second, and uses the ease-in-ease-out timing function.

(WebKit::constrainZoomOriginForFrameView):
When we land a transient zoom, there may be overhang areas (linen, in the case of Mac)
visible. During the commit animation, we should move the RenderView layer appropriately
so that the page covers the entire view and there are no overhang areas visible.
Adapt some code from ScrollableArea to constrain the zoom origin to do so.

(WebKit::TiledCoreAnimationDrawingArea::commitTransientZoom):
Animate the RenderView layer's transform, and the shadow layer's bounds, position, and path.
When they complete, apply the zoom via scalePage() and flush the layer tree (otherwise there
can be a flash between removing the animations and the next flush with the new scale).

(WebKit::TiledCoreAnimationDrawingArea::applyTransientZoomToPage):
Move the code to land the transient zoom (via scalePage) and to put the shadow back
in the state WebCore left it out into its own function, so it can be called both from the
animation completion callback and from the short-circuit in the case where we don't need to animate.

  • WebCore.exp.in:

Export a few things so WebKit2 can use them.

6:02 PM Changeset in webkit [160684] by ryuan.choi@samsung.com
  • 5 edits in trunk/Source/WebKit2

Unreviewed. Fix GTK+ build after r160653.

Renamed WebData to API::Data

  • GNUmakefile.list.am: Added APIData.cpp and APIData.h
  • UIProcess/API/gtk/WebKitURISchemeRequest.cpp:

(webkitURISchemeRequestReadCallback):

  • UIProcess/API/gtk/WebKitWebResource.cpp:
  • UIProcess/API/gtk/WebKitWebView.cpp:
6:00 PM Changeset in webkit [160683] by commit-queue@webkit.org
  • 8 edits in trunk/Source

Fix some whitespace issues in inspector code
https://bugs.webkit.org/show_bug.cgi?id=125814

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-12-16
Reviewed by Darin Adler.

Source/JavaScriptCore:

  • inspector/protocol/Debugger.json:
  • inspector/protocol/Runtime.json:
  • inspector/scripts/CodeGeneratorInspector.py:

(Generator.process_command):

Source/WebCore:

  • inspector/protocol/DOM.json:
  • inspector/protocol/DOMStorage.json:
  • inspector/protocol/Timeline.json:
5:36 PM Changeset in webkit [160682] by commit-queue@webkit.org
  • 10 edits
    2 deletes in trunk/Source/WebCore

Web Inspector: Use JSC::SourceID and JSC::BreakpointID instead of WebCore dups
https://bugs.webkit.org/show_bug.cgi?id=125818

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-12-16
Reviewed by Mark Lam.

Remove the WebCore typedefs of JSC types. Prefer JSC namespace
prefixed types throughout WebCore's Inspector code.

  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/BreakpointID.h: Removed.
  • bindings/js/ScriptDebugServer.cpp:

(WebCore::ScriptDebugServer::setBreakpoint):
(WebCore::ScriptDebugServer::removeBreakpoint):
(WebCore::ScriptDebugServer::dispatchDidParseSource):

  • bindings/js/ScriptDebugServer.h:
  • bindings/js/SourceID.h: Removed.
  • inspector/InspectorDebuggerAgent.cpp:

(WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
(WebCore::parseLocation):
(WebCore::InspectorDebuggerAgent::setBreakpoint):
(WebCore::InspectorDebuggerAgent::continueToLocation):
(WebCore::InspectorDebuggerAgent::resolveBreakpoint):
(WebCore::InspectorDebuggerAgent::searchInContent):
(WebCore::InspectorDebuggerAgent::getScriptSource):
(WebCore::InspectorDebuggerAgent::didParseSource):
(WebCore::InspectorDebuggerAgent::didPause):
(WebCore::InspectorDebuggerAgent::clear):

  • inspector/InspectorDebuggerAgent.h:
  • inspector/ScriptDebugListener.h:
5:35 PM Changeset in webkit [160681] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2][iOS] WKView sends unscaled scroll position to WKContentView
https://bugs.webkit.org/show_bug.cgi?id=125819

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-12-16
Reviewed by Anders Carlsson.

WKView was sending untransformed scroll coordinates to WKContentView. The scroll position
seen by WebKit was wrong when the content is scaled.

  • UIProcess/API/ios/WKView.mm:

(-[WKView _didScroll]):
(-[WKView scrollViewDidEndDragging:willDecelerate:]):
(-[WKView scrollViewDidEndDecelerating:]):
(-[WKView scrollViewDidScrollToTop:]):

5:33 PM Changeset in webkit [160680] by mhahnenberg@apple.com
  • 8 edits in trunk/Source/JavaScriptCore

Add some missing functions to MacroAssembler
https://bugs.webkit.org/show_bug.cgi?id=125809

Reviewed by Oliver Hunt.

  • assembler/AbstractMacroAssembler.h:
  • assembler/AssemblerBuffer.h:
  • assembler/LinkBuffer.cpp:
  • assembler/MacroAssembler.h:

(JSC::MacroAssembler::storePtr):
(JSC::MacroAssembler::andPtr):

  • assembler/MacroAssemblerARM64.h:

(JSC::MacroAssemblerARM64::and64):
(JSC::MacroAssemblerARM64::branchTest8):

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::branchTest8):

  • assembler/X86Assembler.h:
5:32 PM Changeset in webkit [160679] by dbates@webkit.org
  • 40 edits in trunk/Source/WebCore

[iOS] Upstream WebCore/dom changes
https://bugs.webkit.org/show_bug.cgi?id=125646

Reviewed by David Kilzer.

  • WebCore.exp.in: Added symbol ZN7WebCore8Settings17setLayoutIntervalEi and removed symbol

ZN7WebCore24cLayoutScheduleThresholdE.

  • dom/ActiveDOMObject.h: Add suspension reason DocumentWillBePaused.
  • dom/DOMImplementation.cpp:

(WebCore::DOMImplementation::createDocument): Opt-out of ENABLE(VIDEO) logic when
building for iOS.

  • dom/DeviceMotionClient.h: Made class non-copyable.

(WebCore::DeviceMotionClient::DeviceMotionClient): Added;

  • dom/DeviceMotionController.cpp: Added FIXME comment to reconcile iOS and OpenSource differences.

(WebCore::DeviceMotionController::suspendUpdates): Added; guarded by PLATFORM(IOS).
(WebCore::DeviceMotionController::resumeUpdates): Added; guarded by PLATFORM(IOS).

  • dom/DeviceMotionController.h: Added FIXME comment to reconcile iOS and OpenSource differences.
  • dom/DeviceOrientationClient.h: Made class non-copyable.

(WebCore::DeviceOrientationClient::DeviceOrientationClient): Added.

  • dom/DeviceOrientationController.cpp: Added FIXME comment to reconcile iOS and OpenSource differences.

(WebCore::DeviceOrientationController::DeviceOrientationController):
(WebCore::DeviceOrientationController::suspendUpdates): Added; guarded by PLATFORM(IOS).
(WebCore::DeviceOrientationController::resumeUpdates): Added; guarded by PLATFORM(IOS).

  • dom/DeviceOrientationController.h: Added FIXME comment to reconcile iOS and OpenSource differences.
  • dom/DeviceOrientationData.cpp:

(WebCore::DeviceOrientationData::create): Added; iOS-specific. Added FIXME comment.
(WebCore::DeviceOrientationData::DeviceOrientationData): Added iOS-specific code.
(WebCore::DeviceOrientationData::compassHeading): Added; guarded by PLATFORM(IOS).
(WebCore::DeviceOrientationData::compassAccuracy): Added; guarded by PLATFORM(IOS).
(WebCore::DeviceOrientationData::canProvideCompassHeading): Added; guarded by PLATFORM(IOS).
(WebCore::DeviceOrientationData::canProvideCompassAccuracy): Added; guarded by PLATFORM(IOS).

  • dom/DeviceOrientationData.h:
  • dom/DeviceOrientationEvent.idl: Added iOS-specific code.
  • dom/Document.cpp: Moved constant cLayoutScheduleThreshold to Settings.cpp and renamed it

layoutScheduleThreshold towards allowing a port to configure the layout interval.
(WebCore::Document::Document): Added optional argument isSynthesized, defaults false.
(WebCore::Document::~Document): Added iOS-specific code to destroy the device motion
and device orientation controllers.
(WebCore::Document::didBecomeCurrentDocumentInFrame): Added iOS-specific code with FIXME comment.
(WebCore::Document::prepareForDestruction): Added iOS-specific touch event code.
(WebCore::Document::removeAllEventListeners): Ditto.
(WebCore::Document::platformSuspendOrStopActiveDOMObjects): Added; compiles to an empty function on
non-iOS port.
(WebCore::Document::suspendActiveDOMObjects): Modified to call platformSuspendOrStopActiveDOMObjects().
(WebCore::Document::resumeActiveDOMObjects): Ditto.
(WebCore::Document::stopActiveDOMObjects): Added.
(WebCore::Document::implicitClose): Modified to query Settings::layoutInterval().
(WebCore::Document::minimumLayoutDelay): Ditto.
(WebCore::Document::processViewport): Added iOS-specific code.
(WebCore::Document::updateViewportArguments): Ditto.
(WebCore::setParserFeature): Added; guarded by PLATFORM(IOS).
(WebCore::Document::processFormatDetection): Added; guarded by PLATFORM(IOS).
(WebCore::Document::processWebAppOrientations): Added; guarded by PLATFORM(IOS).
(WebCore::Document::isTelephoneNumberParsingEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::Document::setIsTelephoneNumberParsingAllowed): Added; guarded by PLATFORM(IOS).
(WebCore::Document::isTelephoneNumberParsingAllowed): Added; guarded by PLATFORM(IOS).
(WebCore::Document::initSecurityContext): Added iOS-specific code.
(WebCore::Document::suspendScheduledTasks): Added; guarded by PLATFORM(IOS).
(WebCore::Document::deviceMotionController): Added; iOS-specific.
(WebCore::Document::deviceOrientationController): Added; iOS-specific.
(WebCore::Document::adjustFloatQuadsForScrollAndAbsoluteZoomAndFrameScale): Added iOS-specific code.
(WebCore::Document::adjustFloatRectForScrollAndAbsoluteZoomAndFrameScale): Added iOS-specific code.

  • dom/Document.h: Register gesture events gesture{change, end, start}; guarded by ENABLE(IOS_GESTURE_EVENTS).

(WebCore::Document::isSynthesized): Added.
(WebCore::Document::platformSuspendOrStopActiveDOMObjects): Added.

  • dom/Document.idl:
  • dom/DocumentMarker.h: Added iOS-specific changes. We should look to reconcile the differences between

iOS and OpenSource. See <rdar://problem/11306422>.
(WebCore::DocumentMarker::AllMarkers::AllMarkers):
(WebCore::DocumentMarker::DocumentMarker): Added; iOS-specific.
(WebCore::DocumentMarker::alternatives): Added; iOS-specific.
(WebCore::DocumentMarker::setAlternative): Added; iOS-specific.
(WebCore::DocumentMarker::metadata): Added; iOS-specific.
(WebCore::DocumentMarker::setMetadata): Added; iOS-specific.

  • dom/DocumentMarkerController.cpp:

(WebCore::DocumentMarkerController::addMarker):
(WebCore::DocumentMarkerController::addDictationPhraseWithAlternativesMarker):
(WebCore::DocumentMarkerController::addDictationResultMarker):
(WebCore::DocumentMarkerController::shiftMarkers):

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

(WebCore::Element::focus): Add iOS-specific workaround for <rdar://problem/6699741>.

  • dom/Element.h: Register gesture events gesture{change, end, start}; guarded by ENABLE(IOS_GESTURE_EVENTS).
  • dom/EventContext.cpp: Opt-out of ENABLE(TOUCH_EVENTS)-guarded code when building the iOS port.
  • dom/EventContext.h: Ditto.
  • dom/EventDispatcher.cpp:

(WebCore::EventRelatedNodeResolver::EventRelatedNodeResolver): Ditto.
(WebCore::EventDispatcher::dispatchEvent): Ditto.
(WebCore::EventPath::EventPath): Ditto.

  • dom/EventNames.h: Added events webkit{currentplaybacktargetiswirelesschanged, playbacktargetavailabilitychanged}

and gesture{change, end, start}.

  • dom/EventNames.in: Added event names GestureEvent and WebKitPlaybackTargetAvailabilityEvent conditioned on

the macro defines ENABLE_IOS_GESTURE_EVENTS and ENABLE_IOS_AIRPLAY.

  • dom/MouseRelatedEvent.cpp:

(WebCore::contentsScrollOffset): Added iOS-specific code.
(WebCore::MouseRelatedEvent::MouseRelatedEvent): Ditto.

  • dom/Node.cpp:

(WebCore::Node::willBeDeletedFrom): Ditto.
(WebCore::Node::isDescendantOf): Fixed style issue in function prototype; moved '*' to the left side.
(WebCore::Node::isDescendantOrShadowDescendantOf): Added.
(WebCore::tryAddEventListener): Added iOS-specific code; also added FIXME comment.
(WebCore::tryRemoveEventListener): Ditto.
(WebCore::Node::dispatchEvent): Opt-out of ENABLE(TOUCH_EVENTS)-guarded code when building the iOS port.
(WebCore::Node::defaultEventHandler): Added iOS-specific code.
(WebCore::Node::willRespondToMouseMoveEvents): Added iOS-specific code; also added FIXME comment.
(WebCore::Node::willRespondToMouseClickEvents): Added iOS-specific code; also added FIXME comment.
(WebCore::Node::willRespondToMouseWheelEvents): Added.

  • dom/Node.h:
  • dom/Position.h:

(WebCore::operator<): Added.
(WebCore::operator>): Added.
(WebCore::operator>=): Added.
(WebCore::operator<=): Added.

  • dom/Range.cpp:

(WebCore::Range::create): Added iOS-specific code; also added FIXME comment.
(WebCore::intervalsSufficientlyOverlap): Added; guarded by PLATFORM(IOS).
(WebCore::printRects): Added; guarded by PLATFORM(IOS).
(WebCore::adjustLineHeightOfSelectionRects): Added; guarded by PLATFORM(IOS).
(WebCore::coalesceSelectionRects): Added; guarded by PLATFORM(IOS).
(WebCore::Range::collectSelectionRects): Added; guarded by PLATFORM(IOS).

  • dom/Range.h:
  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::suspendActiveDOMObjects): Added iOS-specific code.
(WebCore::ScriptExecutionContext::dispatchErrorEvent): Ditto.

  • dom/TreeScope.cpp:

(WebCore::nodeFromPoint): Ditto.

  • dom/ViewportArguments.cpp:

(WebCore::computeViewportAttributes): Ditto.
(WebCore::setViewportFeature): Added iOS-specific code.
(WebCore::finalizeViewportArguments): Added; iOS-specific.

  • dom/ViewportArguments.h:
  • dom/make_names.pl: Added support to find the path to gcc with respect to the environment

variable SDKROOT.

  • html/HTMLMediaElement.cpp:

(HTMLMediaElement::suspend):

  • page/Settings.cpp:

(WebCore::Settings::Settings): Initialize setting m_layoutInterval to layoutScheduleThreshold.
(WebCore::Settings::setLayoutInterval): Added.

  • page/Settings.h:

(WebCore::Settings::layoutInterval): Added.

5:12 PM Changeset in webkit [160678] by beidson@apple.com
  • 14 edits in trunk/Source/WebKit2

DatabaseProcess: Plumb through messaging for the 4 basic transaction operations
https://bugs.webkit.org/show_bug.cgi?id=125816

Reviewed by Alexey Proskuryakov.

The messaging begins and ends in the WebProcess:

  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:

(WebKit::WebIDBServerConnection::beginTransaction):
(WebKit::WebIDBServerConnection::didBeginTransaction):
(WebKit::WebIDBServerConnection::commitTransaction):
(WebKit::WebIDBServerConnection::didCommitTransaction):
(WebKit::WebIDBServerConnection::resetTransaction):
(WebKit::WebIDBServerConnection::didResetTransaction):
(WebKit::WebIDBServerConnection::rollbackTransaction):
(WebKit::WebIDBServerConnection::didRollbackTransaction):

  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:

It travels from the WebProcess to the DatabaseProcess connection:

  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:

(WebKit::DatabaseProcessIDBConnection::beginTransaction):
(WebKit::DatabaseProcessIDBConnection::commitTransaction):
(WebKit::DatabaseProcessIDBConnection::resetTransaction):
(WebKit::DatabaseProcessIDBConnection::rollbackTransaction):

  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:

It travels from the connection to the appropriate UniqueIDBDatabase:

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::openTransaction):
(WebKit::UniqueIDBDatabase::beginTransaction):
(WebKit::UniqueIDBDatabase::commitTransaction):
(WebKit::UniqueIDBDatabase::resetTransaction):
(WebKit::UniqueIDBDatabase::rollbackTransaction):
(WebKit::UniqueIDBDatabase::postTransactionOperation):
(WebKit::UniqueIDBDatabase::didCompleteTransactionOperation):
(WebKit::UniqueIDBDatabase::openBackingStoreTransaction):
(WebKit::UniqueIDBDatabase::beginBackingStoreTransaction):
(WebKit::UniqueIDBDatabase::commitBackingStoreTransaction):
(WebKit::UniqueIDBDatabase::resetBackingStoreTransaction):
(WebKit::UniqueIDBDatabase::rollbackBackingStoreTransaction):

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:

The UniqueIDBDatabase object performs the operation with the backing store:

  • DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::establishTransaction):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::beginTransaction):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::commitTransaction):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::resetTransaction):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::rollbackTransaction):

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

And the SQLite backing store calls the appropriate method on the SQLite transaction:

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.cpp:

(WebKit::SQLiteIDBTransaction::begin): Stubbed for now.
(WebKit::SQLiteIDBTransaction::commit): Ditto.
(WebKit::SQLiteIDBTransaction::reset): Ditto.
(WebKit::SQLiteIDBTransaction::rollback): Ditto.

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.h:
4:55 PM Changeset in webkit [160677] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

Attempt to fix the Windows build after r160672.

  • platform/graphics/ca/win/PlatformCALayerWin.cpp:

(PlatformCALayerWin::PlatformCALayerWin):

  • platform/graphics/ca/win/PlatformCALayerWin.h:
4:44 PM Changeset in webkit [160676] by ryuan.choi@samsung.com
  • 5 edits in trunk/Source/WebKit2

Unreviewed build fix on EFL port after r160653

Rename WebData to API::Data

  • CMakeLists.txt: Added APIData.cpp to include list.
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::sessionStateData):
(WebKit::WebPageProxy::restoreFromSessionStateData):

  • UIProcess/soup/WebSoupRequestManagerProxy.cpp:

(WebKit::WebSoupRequestManagerProxy::didHandleURIRequest):
(WebKit::WebSoupRequestManagerProxy::didReceiveURIRequestData):
(WebKit::WebSoupRequestManagerProxy::didReceiveURIRequest):

  • UIProcess/soup/WebSoupRequestManagerProxy.h:
4:35 PM Changeset in webkit [160675] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebKit2

WKView.magnification should include magnification due to the active gesture
https://bugs.webkit.org/show_bug.cgi?id=125813

Reviewed by Simon Fraser.

Make WKView.magnification respect active pinch-zoom gestures.

  • UIProcess/API/mac/WKView.mm:

(-[WKView magnification]):
If we have a ViewGestureController, defer to it for the current magnification.

  • UIProcess/mac/ViewGestureController.cpp:

(WebKit::ViewGestureController::magnification):
Return either the current pinch-zoom magnification, if we're in the middle of a gesture,
or the pageScaleFactor, if we're not.

  • UIProcess/mac/ViewGestureController.h:
4:29 PM Changeset in webkit [160674] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Win] Unreviewed build fix.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Correct typo that added a '\' at the

end of a line of the file.

4:24 PM Changeset in webkit [160673] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2] Remove the constraint that highlight rects must be smaller than the scrollview bounds
https://bugs.webkit.org/show_bug.cgi?id=125812

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-12-16
Reviewed by Dan Bernstein.

Currently, _scrollView is never set on WKInteractionView and all highlight rects are discarded.

Eventually, the constraint rect should be computed from the useful area of ScrollView and the scale
of the document. In the meantime, the constraint code is just causing troubles.

The issue is tracked by <rdar://problem/15673655>.

  • UIProcess/API/ios/WKInteractionView.mm:

(-[WKInteractionView _didGetTapHighlightForRequest:color:WebCore::quads:WebCore::topLeftRadius:WebCore::topRightRadius:WebCore::bottomLeftRadius:WebCore::bottomRightRadius:WebCore::]):

4:13 PM Changeset in webkit [160672] by Simon Fraser
  • 19 edits in trunk/Source

Apply overhang shadow and linen to UI-side layers
https://bugs.webkit.org/show_bug.cgi?id=125807

Source/WebCore:

Reviewed by Tim Horton.

With UI-side compositing, we need to apply the overhang shadow and linen
background to layers in the UI process. Achieve this by setting a "custom
appearance" flag on layers that need a shadow or linen background, and
migrating this flag to the UI process. Static functions on ScrollbarThemeMac
are exposed to do the actual setting.

  • WebCore.exp.in: Export ScrollbarThemeMac and GraphicsLayerCA functions.
  • WebCore.xcodeproj/project.pbxproj: ScrollbarThemeMac.h and ScrollbarThemeComposite.h

need to be Private.

  • platform/graphics/GraphicsLayer.cpp: Initialize m_customAppearance.

(WebCore::GraphicsLayer::GraphicsLayer):

  • platform/graphics/GraphicsLayer.h: Getter/setter for CustomAppearance.

(WebCore::GraphicsLayer::setCustomAppearance):
(WebCore::GraphicsLayer::customAppearance):

  • platform/graphics/ca/GraphicsLayerCA.cpp: Update CustomAppearanceChanged as

we do other properties.
(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
(WebCore::GraphicsLayerCA::updateCustomAppearance):
(WebCore::GraphicsLayerCA::setCustomAppearance):

  • platform/graphics/ca/GraphicsLayerCA.h:
  • platform/graphics/ca/PlatformCALayer.h:
  • platform/graphics/ca/mac/PlatformCALayerMac.h:
  • platform/graphics/ca/mac/PlatformCALayerMac.mm: When we have a custom

appearance, use ScrollbarThemeMac functions to update the layer. Ensure
that if the bounds change, we update the shadow (whose path depends on the bounds).
(PlatformCALayerMac::PlatformCALayerMac):
(PlatformCALayerMac::clone):
(PlatformCALayerMac::setBounds):
(PlatformCALayerMac::requiresCustomAppearanceUpdateOnBoundsChange):
(PlatformCALayerMac::updateCustomAppearance):

  • platform/mac/ScrollbarThemeMac.h: Export some static functions.
  • platform/mac/ScrollbarThemeMac.mm: Change code to use static functions.

(WebCore::ScrollbarThemeMac::setUpOverhangAreaBackground):
(WebCore::ScrollbarThemeMac::removeOverhangAreaBackground):
(WebCore::ScrollbarThemeMac::setUpOverhangAreaShadow):
(WebCore::ScrollbarThemeMac::removeOverhangAreaShadow):
(WebCore::ScrollbarThemeMac::setUpOverhangAreasLayerContents):
(WebCore::ScrollbarThemeMac::setUpContentShadowLayer):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateRootLayerPosition): No need to call
setUpContentShadowLayer() now when size changes; PlatformCALayer takes
care of that.
(WebCore::RenderLayerCompositor::updateOverflowControlsLayers): Now set
custom appearance via GraphicsLayer.

Source/WebKit2:

Reviewed by Tim Horton.

With UI-side compositing, we need to apply the overhang shadow and linen
background to layers in the UI process. Achieve this by setting a "custom
appearance" flag on layers that need a shadow or linen background, and
migrating this flag to the UI process. Static functions on ScrollbarThemeMac
are exposed to do the actual setting.

  • Shared/mac/RemoteLayerTreePropertyApplier.mm:

(WebKit::updateCustomAppearance): Use ScrollbarThemeMac to update the
appearance.
(WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer):

  • Shared/mac/RemoteLayerTreeTransaction.h:
  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
(WebKit::dumpChangedLayers):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(PlatformCALayerRemote::setBounds): If the bounds change, also set the
CustomAppearanceChanged bit so that the UI side updates the shadow bounds
(done here because the UI side is not stateful).
(PlatformCALayerRemote::requiresCustomAppearanceUpdateOnBoundsChange):
(PlatformCALayerRemote::customAppearance):
(PlatformCALayerRemote::updateCustomAppearance):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.h:
4:06 PM Changeset in webkit [160671] by Brent Fulgham
  • 18 edits in trunk/Source

Source/JavaScriptCore: [Win] Remove dead code after conversion to VS2013
https://bugs.webkit.org/show_bug.cgi?id=125795

Reviewed by Darin Adler.

  • API/tests/testapi.c: Remove local nan implementation

Source/WebCore: [Win] Remove dead code after converstion to VS2013
https://bugs.webkit.org/show_bug.cgi?id=125795

Reviewed by Darin Adler.

  • WebCorePrefix.h: Remove VS2012 include kludge.
  • loader/FTPDirectoryParser.cpp: Remove gmtime workaround code.
  • page/DOMWindow.cpp: Remove older pointer-based open implementation.
  • page/DOMWindow.h: Ditto
  • platform/text/TextEncodingRegistry.cpp:

(WebCore::TextEncodingNameHash::equal): Remove optimization bug workaround

  • testing/Internals.cpp:

(WebCore::Internals::openDummyInspectorFrontend): Remove compiler workaround

Source/WebKit: [Win] Remove dead code after conversion to VS2013
https://bugs.webkit.org/show_bug.cgi?id=125795

Reviewed by Darin Adler.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

Remove unused function exports.

Source/WTF: [Win] Remove dead code after conversion to VS2013
https://bugs.webkit.org/show_bug.cgi?id=125795

Reviewed by Darin Adler.

  • wtf/Assertions.h: Include <inttypes.h> now that it exists.
  • wtf/Compiler.h: Update compiler checks for VS2013, and

enable support for NEVER_INLINE

  • wtf/HashFunctions.h:

(WTF::PtrHash::hash): Remove compiler workaround.

  • wtf/MathExtras.h: Remove C99 functions that are now supplied

by the MS runtime library.

  • wtf/Platform.h: Remove old MSVC support flags.
  • wtf/StdLibExtras.h: Remove old MSVC workaround code.
4:01 PM Changeset in webkit [160670] by oliver@apple.com
  • 7 edits
    18 adds in trunk

Cache getters and custom accessors on the prototype chain
https://bugs.webkit.org/show_bug.cgi?id=125602

Reviewed by Michael Saboff.

Source/JavaScriptCore:

Support caching of custom getters and accessors on the prototype chain.
This is relatively trivial and just requires a little work compared to
the direct access mode as we're under more register pressure.

  • bytecode/StructureStubInfo.h: Removed the unsued initGetByIdProto as it was confusing to still have it present.
  • jit/Repatch.cpp:

(JSC::generateProtoChainAccessStub):
(JSC::tryCacheGetByID):
(JSC::tryBuildGetByIDList):

Tools:

Make sure bencher scripts also make noInline exist

  • Scripts/bencher:

LayoutTests:

Added a bunch of new tests

  • js/regress/chain-custom-getter-expected.txt: Added.
  • js/regress/chain-custom-getter.html: Added.
  • js/regress/chain-getter-access-expected.txt: Added.
  • js/regress/chain-getter-access.html: Added.
  • js/regress/proto-custom-getter-expected.txt: Added.
  • js/regress/proto-custom-getter.html: Added.
  • js/regress/proto-getter-access-expected.txt: Added.
  • js/regress/proto-getter-access.html: Added.
  • js/regress/resources/regress-pre.js: Made sure that noInline always exists (either using testRunner.neverInlineFunction or a no-op function if nothing else is available)
  • js/regress/script-tests/chain-custom-getter.js: Added.

(foo):

  • js/regress/script-tests/chain-getter-access.js: Added.

(o.get value):
(foo):

  • js/regress/script-tests/proto-custom-getter.js: Added.

(foo):

  • js/regress/script-tests/proto-getter-access.js: Added.

(o.get value):
(foo):

  • js/regress/script-tests/simple-custom-getter.js: Added.

(cycles.30000.numberObject.Number.foo):

  • js/regress/script-tests/simple-getter-access.js: Added.

(o.get value):
(foo):

  • js/regress/simple-custom-getter-expected.txt: Added.
  • js/regress/simple-custom-getter.html: Added.
  • js/regress/simple-getter-access-expected.txt: Added.
  • js/regress/simple-getter-access.html: Added.
3:54 PM Changeset in webkit [160669] by dbates@webkit.org
  • 10 edits in trunk/Source/WebCore

[iOS] Upstream WebCore/history changes
https://bugs.webkit.org/show_bug.cgi?id=125769

Reviewed by Darin Adler.

  • history/BackForwardClient.h:
  • history/BackForwardList.cpp:

(WebCore::BackForwardList::current): Added; guard by PLATFORM(IOS). Also added FIXME comment.
(WebCore::BackForwardList::setCurrent): Added; guard by PLATFORM(IOS). Also added FIXME comment.
(WebCore::BackForwardList::clearAllPageCaches): Added; guarded by PLATFORM(IOS).

  • history/BackForwardList.h:
  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore): Added iOS-specific code.
(WebCore::CachedFrame::CachedFrame): Ditto.

  • history/CachedPage.cpp:

(WebCore::CachedPage::restore): Ditto.

  • history/HistoryItem.cpp:

(WebCore::HistoryItem::HistoryItem): Ditto.

  • history/HistoryItem.h:

(WebCore::HistoryItem::scale): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::scaleIsInitial): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::setScale): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::viewportArguments): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::setViewportArguments): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::bookmarkID): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::setBookmarkID): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::sharedLinkUniqueIdentifier): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::setSharedLinkUniqueIdentifier): Added; guarded by PLATFORM(IOS).

  • history/PageCache.cpp:

(WebCore::logCanCacheFrameDecision): Added iOS-specific code.
(WebCore::logCanCachePageDecision): Ditto.
(WebCore::PageCache::canCachePageContainingThisFrame): Ditto.
(WebCore::PageCache::canCache): Ditto.
(WebCore::PageCache::pruneToCapacityNow): Added.

  • history/PageCache.h:
3:25 PM Changeset in webkit [160668] by dbates@webkit.org
  • 4 edits in trunk/Source/WebCore

[iOS] Upstream WebCore/svg changes
https://bugs.webkit.org/show_bug.cgi?id=125784

Reviewed by Darin Adler.

  • svg/SVGAElement.cpp:

(WebCore::SVGAElement::willRespondToMouseClickEvents): Added.

  • svg/SVGAElement.h:
  • svg/SVGElement.cpp:

(WebCore::SVGElement::parseAttribute): Added attribute listeners for touch{cancel, end, move, start},
and gesture{change, end, start}.

3:23 PM Changeset in webkit [160667] by beidson@apple.com
  • 15 edits
    2 copies
    1 add in trunk/Source/WebKit2

DatabaseProcess: Implement openTransaction()
https://bugs.webkit.org/show_bug.cgi?id=125794

Reviewed by Darin Adler.

This patch hooks up all of the necessary infrastructure to open a uniquely
identified transaction in the DatabaseProcess backing store.

The transaction itself is not yet functional.

Add openTransaction messaging to the WebProcess side:

  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:

(WebKit::WebIDBServerConnection::isClosed):
(WebKit::WebIDBServerConnection::getOrEstablishIDBDatabaseMetadata):
(WebKit::WebIDBServerConnection::didGetOrEstablishIDBDatabaseMetadata):
(WebKit::WebIDBServerConnection::openTransaction):
(WebKit::WebIDBServerConnection::didOpenTransaction):
(WebKit::WebIDBServerConnection::deleteObjectStore):

  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
  • WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:

Add openTransaction messaging to the DatabaseProcess side:

  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:

(WebKit::DatabaseProcessIDBConnection::openTransaction):

  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:

Add a hashable identifier that represents a connection/transactionID pair:

  • DatabaseProcess/IndexedDB/IDBTransactionIdentifier.h: Added.

(WebKit::IDBTransactionIdentifier::IDBTransactionIdentifier):
(WebKit::IDBTransactionIdentifier::isolatedCopy):
(WebKit::IDBTransactionIdentifier::isEmpty):
(WebKit::IDBTransactionIdentifier::hash):
(WebKit::IDBTransactionIdentifier::operator==):
(WebKit::IDBTransactionIdentifier::isHashTableDeletedValue):
(WebKit::IDBTransactionIdentifierHash::hash):
(WebKit::IDBTransactionIdentifierHash::equal):
(WebKit::IDBTransactionIdentifierHashTraits::isEmptyValue):

Allow that identifier to be cross-thread copied:

  • Shared/WebCrossThreadCopier.cpp:

(WebCore::::copy):

  • Shared/WebCrossThreadCopier.h:

Ask the backing store to open this uniquely identified transaction:

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::openTransaction):
(WebKit::UniqueIDBDatabase::openBackingStoreTransaction):
(WebKit::UniqueIDBDatabase::didOpenBackingStoreTransaction):

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:

Add the backing store implementation for opening a transaction:

  • DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::~UniqueIDBDatabaseBackingStoreSQLite):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::establishTransaction):

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

Object to represent the backing store transaction itself, to be used in future patches:

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.cpp:

(WebKit::SQLiteIDBTransaction::SQLiteIDBTransaction):

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.h:

(WebKit::SQLiteIDBTransaction::create):
(WebKit::SQLiteIDBTransaction::identifier):

  • WebKit2.xcodeproj/project.pbxproj:
2:59 PM Changeset in webkit [160666] by mark.lam@apple.com
  • 4 edits in branches/jsCStack/Source

Merged r160665 from trunk.

2013-12-16 Mark Lam <mark.lam@apple.com>

Change slow path result to take a void* instead of a ExecState*.
https://bugs.webkit.org/show_bug.cgi?id=125802.

Reviewed by Filip Pizlo.

This is in preparation for C Stack OSR entry work that is coming soon.
In the OSR entry case, we'll be returning a topOfFrame pointer value
instead of the ExecState*.

  • offlineasm/cloop.rb:
  • runtime/CommonSlowPaths.h: (JSC::encodeResult): (JSC::decodeResult):
2:52 PM Changeset in webkit [160665] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Change slow path result to take a void* instead of a ExecState*.
https://bugs.webkit.org/show_bug.cgi?id=125802.

Reviewed by Filip Pizlo.

This is in preparation for C Stack OSR entry work that is coming soon.
In the OSR entry case, we'll be returning a topOfFrame pointer value
instead of the ExecState*.

  • offlineasm/cloop.rb:
  • runtime/CommonSlowPaths.h:

(JSC::encodeResult):
(JSC::decodeResult):

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

Fix crash when trying to load a null HTML string
https://bugs.webkit.org/show_bug.cgi?id=125801

Reviewed by Dan Bernstein.

Source/WebKit2:

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::loadString):
Check that the string is not null before calling is8Bit(). Also, Use the latin1 encoding for
8-bit strings, since Latin 1 strings are not necessarily valid UTF-8 strings.

Tools:

  • TestWebKitAPI/Tests/WebKit2/WillLoad.cpp:

(TestWebKitAPI::TEST_F):
Update test results.

2:41 PM Changeset in webkit [160663] by jpfau@apple.com
  • 2 edits in trunk/Source/WebCore

[Mac] Cache partitioning asserts when associated NSURLRequest is nil
https://bugs.webkit.org/show_bug.cgi?id=125716

Reviewed by Darin Adler.

  • platform/network/mac/ResourceRequestMac.mm:

(WebCore::ResourceRequest::doUpdateResourceRequest):

2:17 PM Changeset in webkit [160662] by mitz@apple.com
  • 6 edits in trunk/Source/WebKit2

[Cocoa] Expose whether the page contains only secure content
https://bugs.webkit.org/show_bug.cgi?id=125758

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:

(-[WKBrowsingContextController hasOnlySecureContent]): Added a getter that calls
PageLoadState::hasOnlySecureContent.

  • UIProcess/API/Cocoa/WKBrowsingContextControllerPrivate.h: Declared new property.
  • UIProcess/PageLoadState.cpp:

(WebKit::PageLoadState::commitChanges): Notify observers of hasOnlySecureContent() changes.
(WebKit::PageLoadState::reset): Reset hasInsecureContent in the uncommitted state.
(WebKit::PageLoadState::hasOnlySecureContent): Added. Returns true if there is no insecure
content and the URL is an HTTPS URL.
(WebKit::PageLoadState::didCommitLoad): Set hasInsecureContent to false in the uncommitted
state.
(WebKit::PageLoadState::didDisplayOrRunInsecureContent): Set hasInsecureContent to true in
the uncommitted state.

  • UIProcess/PageLoadState.h:

(WebKit::PageLoadState::Data::Data): Added hasInsecureContent member.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didDisplayInsecureContentForFrame): Call
PageLoadState::didDisplayOrRunInsecureContent and commit the change before calling out to
the client.
(WebKit::WebPageProxy::didRunInsecureContentForFrame): Ditto.

2:07 PM Changeset in webkit [160661] by benjamin@webkit.org
  • 3 edits
    2 adds
    1 delete in trunk/Source/WebKit2

[WK2] The NetworkProcess tries to load SecItemShim.dylib on iOS
https://bugs.webkit.org/show_bug.cgi?id=125800

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-12-16
Reviewed by Dan Bernstein.

Give the NetworkService its own Info.plist configured without the Shim.

  • Configurations/NetworkService.xcconfig:
  • NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX.plist: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info.plist.
  • NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-iOS.plist: Renamed from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info.plist.
  • WebKit2.xcodeproj/project.pbxproj:
1:31 PM Changeset in webkit [160660] by msaboff@apple.com
  • 7 edits in branches/jsCStack/Source/JavaScriptCore

CStack Branch: Eliminate topOfStack parameter from callToJavaScript() and callToNativeFunction()
https://bugs.webkit.org/show_bug.cgi?id=125791

Reviewed by Geoffrey Garen.

Eliminated topOfStack from the callToJavaScript() and callToNativeFunction() calling chains.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::execute):
(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):

  • jit/JITCode.cpp:

(JSC::JITCode::execute):

  • jit/JITCode.h:
  • jit/JITStubs.h:
  • llint/LLIntThunks.h:
  • llint/LowLevelInterpreter.asm:
1:26 PM Changeset in webkit [160659] by beidson@apple.com
  • 4 edits in trunk/Source

DatabaseProcess: Fix a few bugs with opening an IDB connection
https://bugs.webkit.org/show_bug.cgi?id=125798

Reviewed by Alexey Proskuryakov.

Source/WebCore:

  • Modules/indexeddb/IDBDatabaseBackend.cpp:

(WebCore::IDBDatabaseBackend::processPendingCalls): As the comment says, we should only

early return when there *are* pending delete calls. The logic here was backwards,
preventing the backend from ever getting to processPendingOpenCalls().

Source/WebKit2:

Database metadata always needs a non-zero database identifier, unique at runtime.

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::generateDatabaseId):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getOrEstablishMetadata):

1:23 PM Changeset in webkit [160658] by msaboff@apple.com
  • 2 edits in branches/jsCStack/Source/JavaScriptCore

CStack Branch: REGRESSION(r160600) ASSERT failure in Heap::collect()
https://bugs.webkit.org/show_bug.cgi?id=125789

Reviewed by Geoffrey Garen.

Restored the shouldCollect() check so we don't collect on start up.
Eliminated the Options::disableGC() check since it is part of the
isDeferred() check.

  • heap/Heap.cpp:

(JSC::Heap::collectIfNecessaryOrDefer):

12:47 PM Changeset in webkit [160657] by andersca@apple.com
  • 4 edits
    1 add in trunk/Source/WebKit2

UserData should encode and decode API::Data objects
https://bugs.webkit.org/show_bug.cgi?id=125799

Reviewed by Beth Dakin.

  • Shared/APIData.cpp: Added.

(API::Data::encode):
(API::Data::decode):

  • Shared/APIData.h:
  • Shared/UserData.cpp:

(WebKit::UserData::encode):
(WebKit::UserData::decode):

  • WebKit2.xcodeproj/project.pbxproj:
12:46 PM Changeset in webkit [160656] by mark.lam@apple.com
  • 7 edits in branches/jsCStack/Source/JavaScriptCore

Fix exception handling for the baseline JIT.
https://bugs.webkit.org/show_bug.cgi?id=125736.

Reviewed by Geoffrey Garen.

  • interpreter/Interpreter.cpp:

(JSC::unwindCallFrame):
Removed some unneeded code.

  1. Removed use of the oldCodeBlock variable which is only a copy of the codeBlock variable. There is no longer any reason to use a copy. Just use codeBlock directly instead.
  2. There's no need to set VM::topCallFrame. The UnwindFunctor automatically updates the incoming callFrame pointer reference to the frame that should be catching / handling the exception, and that is adequate for what we need.
  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_catch):

  • Restored sp.
  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::privateCompileCTINativeCall):
(JSC::JIT::emit_op_catch):

  • jit/ThunkGenerators.cpp:

(JSC::nativeForGenerator):
Fixed 2 issues:

  1. After returning from a native / host function, the thunk did not pop the native / host frame before executing exception handling code. This resulted in the VM trying to "unwind" the native / host frame which is not possible, and crashes ensue.
  2. After returning from a native / host function and discovering the need to handle an exception, the thunk was wrongly popping a non-existant return address off the stack. This caused the callerFrame pointer of the current frame to be popped off the stack, and havoc ensues.
  • llint/LowLevelInterpreter32_64.asm:
  • Updated to match exception handling code in LowLevelInterpreter64.asm.
  • runtime/VM.h:
  • Removed dead code.
12:44 PM Changeset in webkit [160655] by commit-queue@webkit.org
  • 43 edits in trunk

Fixed Win64 build on VS2013.
https://bugs.webkit.org/show_bug.cgi?id=125753

Patch by Alex Christensen <achristensen@webkit.org> on 2013-12-16
Reviewed by Brent Fulgham.

Source/JavaScriptCore:

Added correct PlatformToolset for 64-bit builds.

Source/ThirdParty/ANGLE:

  • ANGLE.vcxproj/libGLESv2.vcxproj:
  • ANGLE.vcxproj/preprocessor.vcxproj:
  • ANGLE.vcxproj/translator_common.vcxproj:
  • ANGLE.vcxproj/translator_glsl.vcxproj:
  • ANGLE.vcxproj/translator_hlsl.vcxproj:

Added correct PlatformToolset for 64-bit builds.

Source/WebCore:

  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCoreTestSupport.vcxproj:

Added correct PlatformToolset for 64-bit builds.

Source/WebInspectorUI:

  • WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:

Added 64-bit configuration.

Source/WebKit:

  • WebKit.vcxproj/WebKit.sln:

Use new 64-bit WebInspectorUI configurations.

  • WebKit.vcxproj/Interfaces/Interfaces.vcxproj:
  • WebKit.vcxproj/WebKit/WebKit.vcxproj:
  • WebKit.vcxproj/WebKitExportGenerator/WebKitExportGenerator.vcxproj:
  • WebKit.vcxproj/WebKitGUID/WebKitGUID.vcxproj:

Added correct PlatformToolset for 64-bit builds.

Source/WTF:

  • WTF.vcxproj/WTF.vcxproj:

Added correct PlatformToolset for 64-bit builds.

Tools:

  • DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTree.vcxproj:
  • DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTreeLauncher.vcxproj:
  • DumpRenderTree/DumpRenderTree.vcxproj/ImageDiff/ImageDiff.vcxproj:
  • DumpRenderTree/DumpRenderTree.vcxproj/ImageDiff/ImageDiffLauncher.vcxproj:
  • DumpRenderTree/DumpRenderTree.vcxproj/TestNetscapePlugin/TestNetscapePlugin.vcxproj:
  • TestWebKitAPI/TestWebKitAPI.vcxproj/TestWebKitAPI.vcxproj:
  • WinLauncher/WinLauncher.vcxproj/WinLauncher.vcxproj:
  • WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj:
  • win/record-memory/record-memory.vcxproj:

Added correct PlatformToolset for 64-bit builds.

12:41 PM Changeset in webkit [160654] by Simon Fraser
  • 4 edits in trunk/Tools

Add a menu option to MiniBrowser to enable UI-side compositing
https://bugs.webkit.org/show_bug.cgi?id=125793

Reviewed by Anders Carlsson.

Make it possible to test UI-side compositing in MiniBrowser WK2 windows.

  • MiniBrowser/mac/BrowserWindowController.h: Add optional protocol method

to toggle UI-side compositing.

  • MiniBrowser/mac/MainMenu.xib: Add menu item to Debug menu.
  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController validateMenuItem:]):
(-[WK2BrowserWindowController isUISideCompositingEnabled]):
(-[WK2BrowserWindowController toggleUISideCompositing:]):
(-[WK2BrowserWindowController observeValueForKeyPath:ofObject:change:context:]):
Adjust the window title to indicate whether the window is using UI-side compositing.

12:21 PM Changeset in webkit [160653] by andersca@apple.com
  • 31 edits
    1 move in trunk/Source/WebKit2

Rename WebData to API::Data
https://bugs.webkit.org/show_bug.cgi?id=125797

Reviewed by Beth Dakin.

  • Shared/API/Cocoa/WKRemoteObjectCoder.mm:

(-[WKRemoteObjectEncoder encodeBytes:length:forKey:]):
(-[WKRemoteObjectDecoder decodeBytesForKey:returnedLength:]):

  • Shared/API/c/WKData.cpp:

(WKDataGetTypeID):
(WKDataCreate):

  • Shared/API/c/WKSharedAPICast.h:
  • Shared/API/c/mac/WKWebArchive.cpp:

(WKWebArchiveCopyData):

  • Shared/API/c/mac/WKWebArchiveResource.cpp:

(WKWebArchiveResourceCopyData):

  • Shared/APIData.h: Renamed from Source/WebKit2/Shared/WebData.h.

(API::Data::createWithoutCopying):
(API::Data::create):
(API::Data::~Data):
(API::Data::bytes):
(API::Data::size):
(API::Data::dataReference):
(API::Data::Data):
(API::Data::fastFreeBytes):

  • Shared/Cocoa/WKNSData.h:

(WebKit::wrapper):

  • Shared/Cocoa/WKNSData.mm:

(-[WKNSData dealloc]):

  • Shared/UserMessageCoders.h:

(WebKit::UserMessageEncoder::baseEncode):
(WebKit::UserMessageDecoder::baseDecode):

  • Shared/WebArchive.cpp:

(WebKit::WebArchive::create):
(WebKit::WebArchive::WebArchive):
(WebKit::WebArchive::data):

  • Shared/WebArchive.h:
  • Shared/WebArchiveResource.cpp:

(WebKit::WebArchiveResource::create):
(WebKit::WebArchiveResource::WebArchiveResource):
(WebKit::WebArchiveResource::data):

  • Shared/WebArchiveResource.h:
  • UIProcess/API/C/WKPage.cpp:
  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:

(-[WKBrowsingContextController loadData:MIMEType:textEncodingName:baseURL:userData:]):

  • UIProcess/API/mac/WKPrintingView.mm:

(pageDidDrawToPDF):

  • UIProcess/Downloads/DownloadProxy.cpp:

(WebKit::createData):
(WebKit::DownloadProxy::didFail):
(WebKit::DownloadProxy::didCancel):

  • UIProcess/Downloads/DownloadProxy.h:

(WebKit::DownloadProxy::resumeData):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::loadData):
(WebKit::WebPageProxy::loadWebArchiveData):
(WebKit::WebPageProxy::dataCallback):
(WebKit::WebPageProxy::saveDataToFileInDownloadsFolder):
(WebKit::WebPageProxy::savePDFToFileInDownloadsFolder):

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

(WebKit::WebUIClient::saveDataToFileInDownloadsFolder):

  • UIProcess/WebUIClient.h:
  • UIProcess/cf/WebPageProxyCF.cpp:

(WebKit::WebPageProxy::sessionStateData):
(WebKit::WebPageProxy::restoreFromSessionStateData):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:

(WKBundleCreateWKDataFromUInt8Array):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::createWebDataFromUint8Array):

  • WebProcess/InjectedBundle/InjectedBundle.h:
  • WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:

(WebKit::InjectedBundlePageEditorClient::getPasteboardDataForRange):

  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:

(WebKit::InjectedBundlePageLoaderClient::willLoadDataRequest):

  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::loadDataImpl):

11:57 AM Changeset in webkit [160652] by Simon Fraser
  • 8 edits in trunk/Source/WebCore

Package up some data about scrollability into a struct for use in the scrolling tree
https://bugs.webkit.org/show_bug.cgi?id=125792

Reviewed by Beth Dakin.

Both scrolling state nodes and scrolling nodes share a set of parameters
relating to scrollability and rubberbanding, so package them into a struct
for re-use. Send the struct wholesale to the scrolling thread.

  • page/scrolling/ScrollingCoordinator.h:

(WebCore::ScrollableAreaParameters::ScrollableAreaParameters): New struct.
(WebCore::ScrollableAreaParameters::operator==):

  • page/scrolling/ScrollingStateScrollingNode.cpp:

(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode): Reordering.
(WebCore::ScrollingStateScrollingNode::setScrollOrigin): Moved.
(WebCore::ScrollingStateScrollingNode::setScrollableAreaParameters): Set the parameters all at once.
(WebCore::ScrollingStateScrollingNode::setRequestedScrollPosition):

  • page/scrolling/ScrollingStateScrollingNode.h: Getters access the struct. Reorder member variables.
  • page/scrolling/ScrollingTreeScrollingNode.cpp:

(WebCore::ScrollingTreeScrollingNode::ScrollingTreeScrollingNode):
(WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):

  • page/scrolling/ScrollingTreeScrollingNode.h:

(WebCore::ScrollingTreeScrollingNode::scrollOrigin):
(WebCore::ScrollingTreeScrollingNode::horizontalScrollElasticity):
(WebCore::ScrollingTreeScrollingNode::verticalScrollElasticity):
(WebCore::ScrollingTreeScrollingNode::hasEnabledHorizontalScrollbar):
(WebCore::ScrollingTreeScrollingNode::hasEnabledVerticalScrollbar):
(WebCore::ScrollingTreeScrollingNode::canHaveScrollbars):

  • page/scrolling/mac/ScrollingCoordinatorMac.h:
  • page/scrolling/mac/ScrollingCoordinatorMac.mm: Removed setScrollParametersForNode().

(WebCore::ScrollingCoordinatorMac::frameViewLayoutUpdated): Set the params in this
function. Reordering.

11:23 AM Changeset in webkit [160651] by commit-queue@webkit.org
  • 45 edits in trunk/Source/WebCore

CTTE: Convert more of SVG to use references
https://bugs.webkit.org/show_bug.cgi?id=125762

Patch by Sam Weinig <sam@webkit.org> on 2013-12-16
Reviewed by Darin Adler.

  • rendering/svg/RenderSVGImage.cpp:

(WebCore::RenderSVGImage::imageChanged):

  • rendering/svg/RenderSVGResource.cpp:

(WebCore::removeFromCacheAndInvalidateDependencies):
(WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation):

  • rendering/svg/RenderSVGResource.h:
  • rendering/svg/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::removeClientFromCache):

  • rendering/svg/RenderSVGResourceClipper.h:
  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation):
(WebCore::RenderSVGResourceContainer::markAllClientLayersForInvalidation):
(WebCore::RenderSVGResourceContainer::markClientForInvalidation):
(WebCore::RenderSVGResourceContainer::removeClient):

  • rendering/svg/RenderSVGResourceContainer.h:
  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::removeClientFromCache):
(WebCore::RenderSVGResourceFilter::postApplyResource):
(WebCore::RenderSVGResourceFilter::primitiveAttributeChanged):

  • rendering/svg/RenderSVGResourceFilter.h:
  • rendering/svg/RenderSVGResourceGradient.cpp:

(WebCore::RenderSVGResourceGradient::removeClientFromCache):

  • rendering/svg/RenderSVGResourceGradient.h:
  • rendering/svg/RenderSVGResourceMarker.cpp:

(WebCore::RenderSVGResourceMarker::removeClientFromCache):

  • rendering/svg/RenderSVGResourceMarker.h:
  • rendering/svg/RenderSVGResourceMasker.cpp:

(WebCore::RenderSVGResourceMasker::removeClientFromCache):

  • rendering/svg/RenderSVGResourceMasker.h:
  • rendering/svg/RenderSVGResourcePattern.cpp:

(WebCore::RenderSVGResourcePattern::removeClientFromCache):

  • rendering/svg/RenderSVGResourcePattern.h:
  • rendering/svg/RenderSVGResourceSolidColor.h:

(WebCore::RenderSVGResourceSolidColor::removeClientFromCache):

  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::invalidateResourcesOfChildren):

  • rendering/svg/SVGResources.cpp:

(WebCore::SVGResources::removeClientFromCache):

  • rendering/svg/SVGResources.h:
  • rendering/svg/SVGResourcesCache.cpp:

(WebCore::SVGResourcesCache::clientLayoutChanged):
(WebCore::SVGResourcesCache::clientStyleChanged):
(WebCore::SVGResourcesCache::clientWasAddedToTree):
(WebCore::SVGResourcesCache::clientWillBeRemovedFromTree):
(WebCore::SVGResourcesCache::clientDestroyed):

  • svg/SVGAnimateMotionElement.cpp:

(WebCore::SVGAnimateMotionElement::applyResultsToTarget):

  • svg/SVGCircleElement.cpp:

(WebCore::SVGCircleElement::svgAttributeChanged):

  • svg/SVGEllipseElement.cpp:

(WebCore::SVGEllipseElement::svgAttributeChanged):

  • svg/SVGFEImageElement.cpp:

(WebCore::SVGFEImageElement::notifyFinished):

  • svg/SVGFELightElement.cpp:

(WebCore::SVGFELightElement::childrenChanged):

  • svg/SVGFilterPrimitiveStandardAttributes.cpp:

(WebCore::invalidateFilterPrimitiveParent):

  • svg/SVGFilterPrimitiveStandardAttributes.h:

(WebCore::SVGFilterPrimitiveStandardAttributes::invalidate):
(WebCore::SVGFilterPrimitiveStandardAttributes::primitiveAttributeChanged):

  • svg/SVGForeignObjectElement.cpp:

(WebCore::SVGForeignObjectElement::svgAttributeChanged):

  • svg/SVGGElement.cpp:

(WebCore::SVGGElement::svgAttributeChanged):

  • svg/SVGGraphicsElement.cpp:

(WebCore::SVGGraphicsElement::svgAttributeChanged):

  • svg/SVGImageElement.cpp:

(WebCore::SVGImageElement::svgAttributeChanged):

  • svg/SVGLineElement.cpp:

(WebCore::SVGLineElement::svgAttributeChanged):

  • svg/SVGPathElement.cpp:

(WebCore::SVGPathElement::svgAttributeChanged):
(WebCore::SVGPathElement::invalidateMPathDependencies):
(WebCore::SVGPathElement::pathSegListChanged):

  • svg/SVGPolyElement.cpp:

(WebCore::SVGPolyElement::svgAttributeChanged):

  • svg/SVGRectElement.cpp:

(WebCore::SVGRectElement::svgAttributeChanged):

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::svgAttributeChanged):
(WebCore::SVGSVGElement::setupInitialView):

  • svg/SVGStopElement.cpp:

(WebCore::SVGStopElement::svgAttributeChanged):

  • svg/SVGTRefElement.cpp:

(WebCore::SVGTRefElement::svgAttributeChanged):

  • svg/SVGTextContentElement.cpp:

(WebCore::SVGTextContentElement::svgAttributeChanged):

  • svg/SVGTextPathElement.cpp:

(WebCore::SVGTextPathElement::svgAttributeChanged):

  • svg/SVGTextPositioningElement.cpp:

(WebCore::SVGTextPositioningElement::svgAttributeChanged):

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::svgAttributeChanged):

11:08 AM Changeset in webkit [160650] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r160645.
http://trac.webkit.org/changeset/160645
https://bugs.webkit.org/show_bug.cgi?id=125787

Change breaks test-webkitpy (Requested by bfulgham on
#webkit).

  • Scripts/prepare-ChangeLog:

(get_selector_line_ranges_for_css):

10:17 AM Changeset in webkit [160649] by dfarler@apple.com
  • 3 edits in trunk/Tools

[ASAN] WebKitLauncher: Include libasancrashreporter.dylib in DYLD_INSERT_LIBRARIES if it exists
https://bugs.webkit.org/show_bug.cgi?id=124610

Reviewed by Mark Rowe.

  • WebKitLauncher/WebKitNightlyEnabler.m:

(enableWebKitNightlyBehaviour):
Add libasancrashreporter.dylib to DYLD_INSERT_LIBRARIES.

  • WebKitLauncher/main.m:

(main):
Include both libasancrashreporter and the nightly enabler to
the list of libraries to insert.

10:15 AM WebKitGTK/2.2.x edited by vjaquez@igalia.com
(diff)
10:10 AM Changeset in webkit [160648] by commit-queue@webkit.org
  • 13 edits in trunk/Source

Delete RVCT related code parts.
https://bugs.webkit.org/show_bug.cgi?id=125626

Patch by Peter Szanka <h868064@stud.u-szeged.hu> on 2013-12-16
Reviewed by Darin Adler.

Source/JavaScriptCore:

  • assembler/ARMAssembler.cpp:
  • assembler/ARMAssembler.h:

(JSC::ARMAssembler::cacheFlush):

  • assembler/MacroAssemblerARM.cpp:

(JSC::isVFPPresent):

  • jit/JITStubsARM.h:
  • jit/JITStubsARMv7.h:

Source/WebKit/blackberry:

  • WebKitSupport/AboutData.cpp:

(BlackBerry::WebKit::configPage):

Source/WTF:

  • wtf/Assertions.h:
  • wtf/Compiler.h:
  • wtf/FastMalloc.h:
  • wtf/Platform.h:
10:04 AM Changeset in webkit [160647] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Resolve inconsistant style warning caused by r160319.
https://bugs.webkit.org/show_bug.cgi?id=125772

Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2013-12-16
Reviewed by Darin Adler.

  • Scripts/webkitpy/style/checkers/cpp.py:

(check_for_extra_new_line_at_eof):

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(CppStyleTest.test_newline_at_eof):
(CppStyleTest.test_extra_newlines_at_eof):

10:01 AM Changeset in webkit [160646] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Remove mock_drt.py: parse_options() - --test-shell and --pixel-tests=<path>
https://bugs.webkit.org/show_bug.cgi?id=125780

Patch by Eva Balazsfalvi <balazsfalvi.eva@stud.u-szeged.hu> on 2013-12-16
Reviewed by Darin Adler.

  • Scripts/webkitpy/port/mock_drt.py:

(main):
(parse_options):
(MockDRT.write_test_output):

  • Scripts/webkitpy/port/mock_drt_unittest.py:

(MockDRTTest.assertTest):
(MockDRTTest.test_reftest_mismatch):

9:58 AM Changeset in webkit [160645] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

prepare-Changelog treats CSS keyframes as mismatched parentheses.
https://bugs.webkit.org/show_bug.cgi?id=125435

Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2013-12-16
Reviewed by Darin Adler.

  • Scripts/prepare-ChangeLog:

(get_selector_line_ranges_for_css):

9:55 AM Changeset in webkit [160644] by hmuller@adobe.com
  • 6 edits
    2 adds in trunk

[CSS Shapes] Add support for the computing the included intervals for a BoxShape
https://bugs.webkit.org/show_bug.cgi?id=124605

Reviewed by Andreas Kling.

Source/WebCore:

Setting shape-inside to content-box now works.

Changed FloatRoundedRect::xInterceptsAtY() to include the bottom edge of
the rectangle and to check for the special cases where any or all of the
corner radii are empty.

Test: fast/shapes/shape-inside/shape-inside-content-box.html

  • platform/graphics/FloatRoundedRect.cpp:

(WebCore::FloatRoundedRect::xInterceptsAtY):

  • rendering/shapes/BoxShape.cpp:

(WebCore::BoxShape::getIncludedIntervals): Replaced the stub implementation with logic that's similar to getExcludedIntervals().

  • rendering/shapes/ShapeInfo.cpp:

(WebCore::::computedShape): Removed a meaningless assert.

  • rendering/shapes/ShapeInsideInfo.cpp:

(WebCore::ShapeInsideInfo::isEnabledFor):

LayoutTests:

Check that shape-inside:content-box works with and without border radii.

  • fast/shapes/shape-inside/shape-inside-content-box-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-content-box.html: Added.
9:01 AM Changeset in webkit [160643] by Michał Pakuła vel Rutka
  • 2 edits in trunk/Source/WebKit2

Fix build warning in files including DrawingAreaProxy.h
https://bugs.webkit.org/show_bug.cgi?id=125778

Reviewed by Anders Carlsson.

Remove unused parameters from method declaration.

  • UIProcess/DrawingAreaProxy.h:

(WebKit::DrawingAreaProxy::adjustTransientZoom):
(WebKit::DrawingAreaProxy::commitTransientZoom):

8:45 AM Changeset in webkit [160642] by commit-queue@webkit.org
  • 2 edits in trunk/Websites/bugs.webkit.org

PrettyPatch.rb doesn't handle diffs where lines matching /--/ are missing properly
https://bugs.webkit.org/show_bug.cgi?id=54928

Patch by Dániel Bátyai <Batyai.Daniel@stud.u-szeged.hu> on 2013-12-16
Reviewed by Adam Roben.

PrettyPatch will now check if the next line after /--- / matches /+++ /, and if not,
then it's just a normal line

  • PrettyPatch/PrettyPatch.rb:
8:18 AM Changeset in webkit [160641] by mario.prada@samsung.com
  • 8 edits in trunk

[ATK] Expose accessibility objects for more WAI-ARIA roles
https://bugs.webkit.org/show_bug.cgi?id=125596

Reviewed by Chris Fleizach.

Source/WebCore:

Exposed accessibility objects with the proper AtkRoles, some of
them to be provided by the next stable release of ATK.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(atkRole):

Tools:

Add mappings to DRT & WKTR for the newly exposed roles.

  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

LayoutTests:

Update test to update expectations.

  • platform/gtk/accessibility/roles-exposed-expected.txt:
  • platform/gtk/accessibility/roles-exposed.html:
8:04 AM Changeset in webkit [160640] by eric.carlson@apple.com
  • 5 edits
    1 add in trunk

Fix QuickTime plug-in replacement scripting bugs
https://bugs.webkit.org/show_bug.cgi?id=125717

Reviewed by Sam Weinig.

Source/WebCore:

No new tests, existing test updated.

  • Modules/plugins/QuickTimePluginReplacement.js:

(Replacement): Change to "" to avoid "Empty character constant" warning when creating

Derived Sources.

(Replacement.prototype.createVideoElement): Handle qtsrc attribute. Remember base url.
(Replacement.prototype.setURL): Resolve urls relative to base.

LayoutTests:

  • plugins/quicktime-plugin-replacement-expected.txt:
  • plugins/quicktime-plugin-replacement.html: Update to test 'qtsrc' attribute, and to check

that relative urls are resolved correctly.

  • plugins/resources/yellow.mov: Added.
8:00 AM Changeset in webkit [160639] by Darin Adler
  • 2 edits in trunk/Source/WebCore

Catch callers who forget to use initializeStyle
https://bugs.webkit.org/show_bug.cgi?id=125763

Reviewed by Andreas Kling.

A recent fix was because a caller used setStyle first rather than using
initializeStyle. This patch adds an assertion to catch cases where we do
that so we see the mistake right away instead of indirectly later.

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::initializeStyle): Simplified an assertion.
(WebCore::RenderElement::setStyle): Added an assertion that m_hasInitializedStyle
is true, with an exception for RenderView, which needs to be created before we
have the correct style computed for it (at least for now). Also broke out an
assertion that was using &&, since we would prefer to know which clause failed,
making separate assertions more useful than a combined assertion.

7:58 AM Changeset in webkit [160638] by mario.prada@samsung.com
  • 8 edits in trunk

[ATK] Expose accessibility objects with ATK_ROLE_CHECK_MENU_ITEM
https://bugs.webkit.org/show_bug.cgi?id=125594

Reviewed by Chris Fleizach.

Source/WebCore:

Exposed accessibility objects with checkmenuitem role with the
proper AtkRole, to be provided by the next stable release of ATK.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(atkRole):

Tools:

Add mappings to DRT & WKTR for checkmenuitem role.

  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

LayoutTests:

Update test to update expectations.

  • platform/gtk/accessibility/roles-exposed-expected.txt:
  • platform/gtk/accessibility/roles-exposed.html:
7:17 AM Changeset in webkit [160637] by mario.prada@samsung.com
  • 9 edits in trunk

[ATK] Expose accessibility objects with ATK_ROLE_ARTICLE
https://bugs.webkit.org/show_bug.cgi?id=125587

Reviewed by Chris Fleizach.

Source/WebCore:

Exposed accessibility objects with article role with the proper
AtkRole, to be provided by the next stable release of ATK.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(atkRole):

Tools:

Add mappings to DRT & WKTR for article roles.

  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

LayoutTests:

Update test to unskip article objects and update expectations.

  • accessibility/aria-mappings-expected.txt:
  • platform/gtk/accessibility/roles-exposed-expected.txt:
  • platform/gtk/accessibility/roles-exposed.html:
7:08 AM Changeset in webkit [160636] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[FTL] Allow EFL to build FTL with the build-jsc script.
https://bugs.webkit.org/show_bug.cgi?id=125774

Patch by Dániel Bátyai <Dániel Bátyai> on 2013-12-16
Reviewed by Zoltan Herczeg.

  • Scripts/build-jsc:
6:56 AM Changeset in webkit [160635] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fix GTK+ build after r160549.

  • GNUmakefile.am: Fix the include paths to make sure we include

the WebKit2 config.h file when building libWebKit2Platform.

5:19 AM Changeset in webkit [160634] by k.czech@samsung.com
  • 2 edits in trunk/Tools

Add myself as a committer

Unreviewed.

  • Scripts/webkitpy/common/config/contributors.json:
4:08 AM Changeset in webkit [160633] by svillar@igalia.com
  • 6 edits in trunk

[CSS Grid Layout] Fix the preferred logical widths code to work with spanning grid items
https://bugs.webkit.org/show_bug.cgi?id=123994

Reviewed by Andreas Kling.

From Blink r159189 by <jchaffraix@chromium.org>

Source/WebCore:

There was no definition in the specs for the intrinsic / preferred
logical widths on the grid element. The following was proposed to
the WG and later accepted:

  • The sum of the grid tracks' UsedBreadth is the minimum logical width
  • The sum of the grid tracks' MaxBreadth is the maximum logical width

http://lists.w3.org/Archives/Public/www-style/2013Oct/0054.html
for more information.

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::computeIntrinsicLogicalWidths):
(WebCore::RenderGrid::computedUsedBreadthOfGridTracks):
(WebCore::RenderGrid::minContentForChild):
(WebCore::RenderGrid::maxContentForChild):

  • rendering/RenderGrid.h:

LayoutTests:

Extended the test case to include spanning grid items.

  • fast/css-grid-layout/grid-preferred-logical-widths-expected.txt:
  • fast/css-grid-layout/grid-preferred-logical-widths.html:
3:15 AM Changeset in webkit [160632] by svillar@igalia.com
  • 7 edits in trunk/Source/WebKit2

[GTK] can't build from trunk: WebKitCookieManager: 'WebString' was not declared in this scope
https://bugs.webkit.org/show_bug.cgi?id=125759

Reviewed by Carlos Garcia Campos.

Renamed WebString to API::String after r160608.

  • UIProcess/API/gtk/WebKitCookieManager.cpp:

(webkitCookieManagerGetDomainsWithCookiesCallback):

  • UIProcess/API/gtk/WebKitFileChooserRequest.cpp:

(webkit_file_chooser_request_get_mime_types):
(webkit_file_chooser_request_get_mime_types_filter):
(webkit_file_chooser_request_get_selected_files):

  • UIProcess/API/gtk/WebKitFormSubmissionRequest.cpp:

(webkit_form_submission_request_get_text_fields):

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(webkit_web_context_set_web_extensions_directory):
(webkit_web_context_prefetch_dns):

  • UIProcess/API/gtk/WebKitWebViewGroup.cpp:

(toAPIArray):

  • WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:

(webkitWebExtensionDidReceiveMessage):

Dec 15, 2013:

10:53 PM Changeset in webkit [160631] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

Add support for maction@toggle
https://bugs.webkit.org/show_bug.cgi?id=120059

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-12-15
Reviewed by Chris Fleizach.

Source/WebCore:

Test: mathml/presentation/maction-toggle.html

  • mathml/MathMLSelectElement.cpp:

(WebCore::MathMLSelectElement::getSelectedChildAndIndex):
(WebCore::MathMLSelectElement::updateSelectedChild):
(WebCore::MathMLSelectElement::defaultEventHandler):
(WebCore::MathMLSelectElement::willRespondToMouseClickEvents):
(WebCore::MathMLSelectElement::toggle):

  • mathml/MathMLSelectElement.h:

LayoutTests:

  • mathml/presentation/maction-toggle-expected.html: Added.
  • mathml/presentation/maction-toggle.html: Added.
10:39 PM Changeset in webkit [160630] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

WebKit2 View Gestures: Can't pinch in past the maximum scale
https://bugs.webkit.org/show_bug.cgi?id=125749

Reviewed by Anders Carlsson.

Pinching in past the maximum scale should result in the zoom resisting, but continuing.

  • UIProcess/mac/ViewGestureController.cpp:

(WebKit::resistanceForDelta):
Clean up the logic and apply resistance to pinching in past the maximum.

(WebKit::ViewGestureController::handleMagnificationGesture):
(WebKit::ViewGestureController::endMagnificationGesture):

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::commitTransientZoom):

10:34 PM Changeset in webkit [160629] by Darin Adler
  • 2 edits in trunk/Source/WebCore

More nullptr in RenderElement
https://bugs.webkit.org/show_bug.cgi?id=125764

Reviewed by Andreas Kling.

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::uncachedFirstLineStyle):
(WebCore::RenderElement::updateShapeImage):
(WebCore::RenderElement::destroyLeftoverChildren):
(WebCore::RenderElement::findNextLayer):
Use nullptr in a few more places.

9:56 PM Changeset in webkit [160628] by rniwa@webkit.org
  • 20 edits
    17 adds
    1 delete in trunk

REGRESSION: 2x regression on Dromaeo DOM query tests
https://bugs.webkit.org/show_bug.cgi?id=125377

Reviewed by Filip Pizlo.

PerformanceTests:

Added a micro-benchmark for updating a named property on document.

  • Bindings/update-name-getter.html: Added.
  • Skipped:

Source/JavaScriptCore:

The bug was caused by JSC not JIT'ing property access on "document" due to its type info having
HasImpureGetOwnPropertySlot flag.

Fixed the bug by new type info flag NewImpurePropertyFiresWatchpoints, which allows the baseline
JIT to generate byte code for access properties on an object with named properties (a.k.a.
custom name getter) in DOM. When a new named property appears on the object, VM is notified via
VM::addImpureProperty and fires StructureStubClearingWatchpoint added during the repatch.

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFromLLInt): Take the slow path if we have any object with impure
properties in the prototype chain.
(JSC::GetByIdStatus::computeForChain): Ditto.

  • jit/Repatch.cpp:

(JSC::repatchByIdSelfAccess): Throw away the byte code when a new impure property is added on any
object in the prototype chain via StructureStubClearingWatchpoint.
(JSC::generateProtoChainAccessStub): Ditto.
(JSC::tryCacheGetByID):
(JSC::tryBuildGetByIDList):
(JSC::tryRepatchIn): Ditto.

  • runtime/JSTypeInfo.h: Added NewImpurePropertyFiresWatchpoints.

(JSC::TypeInfo::newImpurePropertyFiresWatchpoints): Added.

  • runtime/Operations.h:

(JSC::normalizePrototypeChainForChainAccess): Don't exit early if VM will be notified of new
impure property even if the object had impure properties.

  • runtime/Structure.h:

(JSC::Structure::takesSlowPathInDFGForImpureProperty): Added. Wraps hasImpureGetOwnPropertySlot and
asserts that newImpurePropertyFiresWatchpoints is true whenever hasImpureGetOwnPropertySlot is true.

  • runtime/VM.cpp:

(JSC::VM::registerWatchpointForImpureProperty): Added.
(JSC::VM::addImpureProperty): Added. HTMLDocument calls it to notify JSC of a new impure property.

  • runtime/VM.h:

Source/WebCore:

The bug was caused by JSC not JIT'ing property accesses on document because of its having
custom named getter (named properties). This resulted in resolution of methods on document
such as getElementById to happen inside the interpreter.

Fixed the bug by using the new JSC type info flag which tells JSC to JIT property access on
document, and then notifying JSC whenever a new named property appeared on document.

Tests: js/dom/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps-2.html

js/dom/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps-3.html
js/dom/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps-4.html
js/dom/prototype-chain-caching-with-impure-get-own-property-slot-traps-2.html
js/dom/prototype-chain-caching-with-impure-get-own-property-slot-traps-3.html
js/dom/prototype-chain-caching-with-impure-get-own-property-slot-traps-4.html

  • bindings/js/JSDOMBinding.cpp:

(WebCore::addImpureProperty): Wraps VM::addImpureProperty.

  • bindings/js/JSDOMBinding.h:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader): Added the support for NewImpurePropertyFiresWatchpoints.

  • bindings/scripts/IDLAttributes.txt: Ditto.
  • html/HTMLDocument.cpp:

(WebCore::HTMLDocument::addDocumentNamedItem): Calls addImpureProperty.

  • html/HTMLDocument.idl: Added NewImpurePropertyFiresWatchpoints.

LayoutTests:

Added more regression tests for throwing away byte code when a new named property appears.

  • js/dom/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps-expected: Rebaselined.
  • js/dom/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps.html: Fixed the test to use dfgShouldBe.
  • js/dom/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps-2-expected.txt: Added.
  • js/dom/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps-2.html: Added.
  • js/dom/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps-3-expected.txt: Added.
  • js/dom/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps-3.html: Added.
  • js/dom/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps-4-expected.txt: Added.
  • js/dom/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps-4.html: Added.
  • js/dom/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps-5-expected.txt: Added.
  • js/dom/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps-5.html: Added.
  • js/dom/prototype-chain-caching-with-impure-get-own-property-slot-traps-2-expected.txt: Added.
  • js/dom/prototype-chain-caching-with-impure-get-own-property-slot-traps-2.html: Added.
  • js/dom/prototype-chain-caching-with-impure-get-own-property-slot-traps-3-expected.txt: Added.
  • js/dom/prototype-chain-caching-with-impure-get-own-property-slot-traps-3.html: Added.
  • js/dom/prototype-chain-caching-with-impure-get-own-property-slot-traps-4-expected.txt: Added.
  • js/dom/prototype-chain-caching-with-impure-get-own-property-slot-traps-4.html: Added.
  • js/dom/prototype-chain-caching-with-impure-get-own-property-slot-traps-5-expected.txt: Added.
  • js/dom/prototype-chain-caching-with-impure-get-own-property-slot-traps-5.html: Added.
  • js/dom/script-tests/dfg-prototype-chain-caching-with-impure-get-own-property-slot-traps.js: Removed.
8:58 PM Changeset in webkit [160627] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk/Tools

Refactor option handling in WebKitTestRunner.
https://bugs.webkit.org/show_bug.cgi?id=123185

Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2013-12-15
Reviewed by Darin Adler.

Option handling is refactored (according to the FIXME) that allows
to automatically generate the help message.

  • WebKitTestRunner/CMakeLists.txt:
  • WebKitTestRunner/GNUmakefile.am:
  • WebKitTestRunner/Options.cpp: Added.

(WTR::Options::Options):
(WTR::handleOptionTimeout):
(WTR::handleOptionNoTimeout):
(WTR::handleOptionNoTimeoutAtAll):
(WTR::handleOptionVerbose):
(WTR::handleOptionGcBetweenTests):
(WTR::handleOptionPixelTests):
(WTR::handleOptionPrintSupportedFeatures):
(WTR::handleOptionComplexText):
(WTR::handleOptionAcceleratedDrawing):
(WTR::handleOptionRemoteLayerTree):
(WTR::handleOptionUnmatched):
(WTR::OptionsHandler::OptionsHandler):
(WTR::Option::Option):
(WTR::Option::matches):
(WTR::OptionsHandler::parse):
(WTR::OptionsHandler::printHelp):

  • WebKitTestRunner/Options.h: Added.
  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::initialize):

  • WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
8:04 PM Changeset in webkit [160626] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Expose the certificate chain for the main frame
https://bugs.webkit.org/show_bug.cgi?id=125760

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKBrowsingContextController.h: Declared certificateChain property.
  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:

(-[WKBrowsingContextController certificateChain]): Added this getter, which calls through
to WebFrameProxy::certificateInfo.

7:28 PM Changeset in webkit [160625] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[WIn] Unreviewed build fix after r160599

  • rendering/RenderMediaControls.cpp:

(WebCore::determineState): RenderObject::theme now returns
a reference.

6:28 PM Changeset in webkit [160624] by Brent Fulgham
  • 3 edits
    2 deletes in trunk/Source

Source/WebCore: [Win] Unreviewed build fix

The build system continues to attempt to build QTMovieWin, even
though it is excluded from the build solution. I'm actually
removing the project files to prevent this.

  • WebCore.vcxproj/QTMovieWin/QTMovieWin.vcxproj: Removed.
  • WebCore.vcxproj/QTMovieWin/QTMovieWin.vcxproj.filters: Removed.

Source/WebKit: [Win] Unreviewed build fix.

  • WebKit.vcxproj/WebKit.sln: Remove reference to QTMovieWin,

which we do not wish to build.

2:34 PM Changeset in webkit [160623] by rwlbuis@webkit.org
  • 5 edits in trunk

[CSS Shapes] shape-outside animation does not handle 'auto' well
https://bugs.webkit.org/show_bug.cgi?id=125700

Reviewed by Dirk Schulze.

Source/WebCore:

Handle the case where we are blending/animating with a null ShapeValue due to 'auto'.

Adapted LayoutTests/fast/shapes/shape-outside-floats/shape-outside-animation.html for testing this.

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::blendFunc):

LayoutTests:

Test a shape-outside animation where one keyframe uses 'auto'.

  • fast/shapes/shape-outside-floats/shape-outside-animation-expected.txt:
  • fast/shapes/shape-outside-floats/shape-outside-animation.html:
1:13 PM Changeset in webkit [160622] by aestes@apple.com
  • 57 edits in trunk/Source/WebKit/mac

[iOS] Upstream changes to WebKit Public and Private headers
https://bugs.webkit.org/show_bug.cgi?id=125745

Reviewed by Dan Bernstein.

  • Configurations/WebKit.xcconfig: Ignore headers that are completely

excluded on iOS. This prevents empty headers from being installed into
the iOS SDK.

  • DOM/WebDOMOperationsPrivate.h: Upstream iOS changes.
  • History/WebBackForwardListPrivate.h: Ditto.
  • History/WebHistoryItem.h: Ditto.
  • History/WebHistoryItemPrivate.h: Ditto.
  • Misc/WebCache.h: Ditto.
  • Misc/WebIconDatabase.h: Ditto.
  • Misc/WebIconDatabasePrivate.h: Ditto.
  • Misc/WebKitNSStringExtras.h: Ditto.
  • Misc/WebLocalizableStrings.h: Ditto.
  • Misc/WebNSEventExtras.h: Ditto.
  • Misc/WebNSFileManagerExtras.h: Ditto.
  • Misc/WebNSPasteboardExtras.h: Ditto.
  • Misc/WebNSURLExtras.h: Ditto.
  • Misc/WebNSViewExtras.h: Ditto.
  • Misc/WebNSWindowExtras.h: Ditto.
  • Panels/WebPanelAuthenticationHandler.h: Ditto.
  • Plugins/WebPlugin.h: Ditto.
  • Plugins/WebPluginContainer.h: Ditto.
  • Plugins/WebPluginContainerPrivate.h: Ditto.
  • Plugins/WebPluginDatabase.h: Ditto.
  • Plugins/WebPluginPrivate.h: Ditto.
  • Plugins/WebPluginViewFactory.h: Ditto.
  • Plugins/WebPluginsPrivate.h: Ditto.
  • Storage/WebDatabaseManagerPrivate.h: Ditto.
  • WebCoreSupport/WebApplicationCache.h: Ditto.
  • WebCoreSupport/WebJavaScriptTextInputPanel.h: Ditto.
  • WebCoreSupport/WebKeyGenerator.h: Ditto.
  • WebCoreSupport/WebSecurityOriginPrivate.h: Ditto.
  • WebView/WebDashboardRegion.h: Ditto.
  • WebView/WebDataSource.h: Ditto.
  • WebView/WebDataSourcePrivate.h: Ditto.
  • WebView/WebDocument.h: Ditto.
  • WebView/WebDocumentPrivate.h: Ditto.
  • WebView/WebDynamicScrollBarsView.h: Ditto.
  • WebView/WebEditingDelegate.h: Ditto.
  • WebView/WebEditingDelegatePrivate.h: Ditto.
  • WebView/WebFormDelegate.h: Ditto.
  • WebView/WebFrameLoadDelegate.h: Ditto.
  • WebView/WebFramePrivate.h: Ditto.
  • WebView/WebFrameView.h: Ditto.
  • WebView/WebFrameViewPrivate.h: Ditto.
  • WebView/WebHTMLRepresentation.h: Ditto.
  • WebView/WebHTMLView.h: Ditto.
  • WebView/WebHTMLViewPrivate.h: Ditto.
  • WebView/WebPolicyDelegate.h: Ditto.
  • WebView/WebPreferenceKeysPrivate.h: Ditto.
  • WebView/WebPreferences.h: Ditto.
  • WebView/WebPreferencesPrivate.h: Ditto.
  • WebView/WebRenderLayer.h: Ditto.
  • WebView/WebResourceLoadDelegatePrivate.h: Ditto.
  • WebView/WebResourcePrivate.h: Ditto.
  • WebView/WebUIDelegate.h: Ditto.
  • WebView/WebUIDelegatePrivate.h: Ditto.
  • WebView/WebView.h: Ditto.
  • WebView/WebViewPrivate.h: Ditto.
1:08 PM Changeset in webkit [160621] by aestes@apple.com
  • 8 edits in trunk/Source

[iOS] Upstream changes to FeatureDefines.xcconfig
https://bugs.webkit.org/show_bug.cgi?id=125742

Reviewed by Dan Bernstein.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
10:27 AM Changeset in webkit [160620] by mitz@apple.com
  • 3 edits in trunk/Tools

32-bit build fix.

  • TestWebKitAPI/mac/TestBrowsingContextLoadDelegate.h:
  • TestWebKitAPI/mac/TestBrowsingContextLoadDelegate.mm:
10:16 AM Changeset in webkit [160619] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Build fix for 32-bit clients.

  • UIProcess/API/Cocoa/WKBrowsingContextLoadDelegate.h:
8:40 AM Changeset in webkit [160618] by Darin Adler
  • 4 edits
    2 adds in trunk

Crash in CSSImageGeneratorValue and RenderScrollbar
https://bugs.webkit.org/show_bug.cgi?id=125702

Reviewed by Alexey Proskuryakov.

Source/WebCore:

This crash had two causes at two different levels. The crash fixes both.

At the RenderScrollbar level, we were setting up a new renderer, a
RenderScrollbarPart, and never calling initializeStyle. This meant that
we did not do proper style setup, which meant we did not end up calling
CSSImageGeneratorValue::addClient and so had a removeClient that was not
properly balanced by an addClient. This is the primary bug.

At the CSSImageGeneratorValue level, the addClient and removeClient
functions were not properly handling possibly-mismatched calls. It was
easy to fix the functions to work even if the calls are not perfectly
matched up, which makes the consequences of a missed addClient call
much less dire, no longer messing up reference counting. Fixing this
mitigates the risk if we made this same mistake elsewhere, although I
could not find any other places with some quick searches.

Test: fast/css/scrollbar-image-crash.html

  • css/CSSImageGeneratorValue.cpp:

(WebCore::CSSImageGeneratorValue::addClient): Only call ref if this will
add the first client.
(WebCore::CSSImageGeneratorValue::removeClient): Only call deref if this
removes the last client. Also added an assertion that can fire if we call
removeClient without first calling addClient, which is illegal. However,
the function handles that case without over-deref'ing itself.

  • rendering/RenderScrollbar.cpp:

(WebCore::RenderScrollbar::updateScrollbarPart): Simplify the logic for
needRenderer a bit. Use initializeStyle rather than setStyle when first
creating the RenderScrollbarPart. Also use add and take properly so we
don't do extra hash lookups the old code did with get/set and get/remove.

LayoutTests:

  • fast/css/scrollbar-image-crash-expected.txt: Added.
  • fast/css/scrollbar-image-crash.html: Added.
4:48 AM Changeset in webkit [160617] by Michał Pakuła vel Rutka
  • 3 edits in trunk/Source/WebKit2

Unreviewed EFL build fix after r160608.

  • UIProcess/WebGrammarDetail.cpp:

(WebKit::WebGrammarDetail::WebGrammarDetail):
(WebKit::WebGrammarDetail::guesses):

  • UIProcess/WebTextCheckerClient.cpp:

(WebKit::WebTextCheckerClient::guessesForWord):

Dec 14, 2013:

10:32 PM Changeset in webkit [160616] by commit-queue@webkit.org
  • 4 edits
    1 copy in trunk/Source/WebKit2

Add page load delegate for WebProcessPlugInBrowsingContextController.
https://bugs.webkit.org/show_bug.cgi?id=125697

Add page load delegate for WebProcessPlugInBrowsingContextController so that a
WebProcess injected bundle can listen to page load events.

Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2013-12-14
Reviewed by Sam Weinig.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h: Added.
  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.h:
  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(didStartProvisionalLoadForFrame):
(didFinishLoadForFrame):
(globalObjectIsAvailableForFrame):
(setUpPageLoaderClient):
(-[WKWebProcessPlugInBrowserContextController loadDelegate]):
(-[WKWebProcessPlugInBrowserContextController setLoadDelegate:]):

10:20 PM Changeset in webkit [160615] by commit-queue@webkit.org
  • 12 edits in trunk/Source/WebCore

CTTE: SVGResourcesCache::cachedResourcesForRenderObject() should take a reference
https://bugs.webkit.org/show_bug.cgi?id=125743

Patch by Sam Weinig <sam@webkit.org> on 2013-12-14
Reviewed by Dan Bernstein.

  • rendering/svg/RenderSVGContainer.cpp:

(WebCore::RenderSVGContainer::selfWillPaint):

  • rendering/svg/RenderSVGImage.cpp:

(WebCore::RenderSVGImage::imageChanged):

  • rendering/svg/RenderSVGResource.cpp:

(WebCore::requestPaintingResource):
(WebCore::removeFromCacheAndInvalidateDependencies):
(WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation):

  • rendering/svg/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::applyClippingToContext):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::paintReplaced):

  • rendering/svg/RenderSVGShape.cpp:

(WebCore::RenderSVGShape::shouldGenerateMarkerPositions):
(WebCore::RenderSVGShape::markerRect):
(WebCore::RenderSVGShape::drawMarkers):

  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::invalidateResourcesOfChildren):
(WebCore::SVGRenderSupport::layoutChildren):
(WebCore::SVGRenderSupport::intersectRepaintRectWithResources):
(WebCore::SVGRenderSupport::filtersForceContainerLayout):
(WebCore::SVGRenderSupport::pointInClippingArea):

  • rendering/svg/SVGRenderingContext.cpp:

(WebCore::SVGRenderingContext::prepareToRenderSVGContent):

  • rendering/svg/SVGResourcesCache.cpp:

(WebCore::SVGResourcesCache::cachedResourcesForRenderObject):
(WebCore::SVGResourcesCache::clientLayoutChanged):
(WebCore::SVGResourcesCache::clientDestroyed):

  • rendering/svg/SVGResourcesCache.h:
  • rendering/svg/SVGResourcesCycleSolver.cpp:

(WebCore::SVGResourcesCycleSolver::resourceContainsCycles):

9:56 PM Changeset in webkit [160614] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Win] Unreviewed build fix

QTMovieWin should not be build at the moment, but some builders
are continuing to attempt it. This change marks the project
file as excluded from building.

  • WebKit.vcxproj/WebKit.sln: Mark QTMovieWin as excluded from build.
9:41 PM Changeset in webkit [160613] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

FTL should *really* know when things are flushed
https://bugs.webkit.org/show_bug.cgi?id=125747

Reviewed by Sam Weinig.

Fix more codegen badness. This makes V8v7's crypto am3() function run faster in the FTL
than in DFG. This means that even if we just compile those functions in V8v7 that don't
make calls, the FTL gives us a 2% speed-up over the DFG. That's pretty good considering
that we have still more optimizations to fix and we can make calls work.

  • dfg/DFGSSAConversionPhase.cpp:

(JSC::DFG::SSAConversionPhase::run):

  • ftl/FTLCompile.cpp:

(JSC::FTL::fixFunctionBasedOnStackMaps):

9:29 PM Changeset in webkit [160612] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Win] Disable media tests while we sort out QTSDK issues.
Unreviewed patch to get test bots green

  • platform/win/TestExpectations
8:47 PM Changeset in webkit [160611] by timothy_horton@apple.com
  • 2 edits
    1 add in trunk/Tools

stylebot should warn when FeatureDefines differ
https://bugs.webkit.org/show_bug.cgi?id=125748

Reviewed by Dan Bernstein.

Add a stylebot checker that ensures that FeatureDefines.xcconfig files
are always exactly equal (and warns people adding new FeatureDefines.xcconfig files,
an unlikely occurrance, to add them to the list).

It's a bit nontraditional for stylebot because it will warn on existing errors in the tree,
but that is the most straightforward way to implement it (and we're at zero diffs right now).

  • Scripts/webkitpy/style/checker.py:

(_all_categories):
(FileType):
(CheckerDispatcher._file_type):
(CheckerDispatcher._create_checker):

  • Scripts/webkitpy/style/checkers/featuredefines.py: Added.

(FeatureDefinesChecker):
(FeatureDefinesChecker.init):
(FeatureDefinesChecker.check):

7:08 PM Changeset in webkit [160610] by fpizlo@apple.com
  • 3 edits in branches/jsCStack/Source/JavaScriptCore

FTL should *really* know when things are flushed
https://bugs.webkit.org/show_bug.cgi?id=125747

Not yet reviewed.

Fix more codegen badness. This makes V8v7's crypto am3() function run faster in the FTL
than in DFG. This means that even if we just compile those functions in V8v7 that don't
make calls, the FTL gives us a 2% speed-up over the DFG. That's pretty good considering
that we have still more optimizations to fix and we can make calls work.

  • dfg/DFGSSAConversionPhase.cpp:

(JSC::DFG::SSAConversionPhase::run):

  • ftl/FTLCompile.cpp:

(JSC::FTL::fixFunctionBasedOnStackMaps):

5:16 PM Changeset in webkit [160609] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

[iOS] Implement NetworkProcess::allowSpecificHTTPSCertificateForHost
https://bugs.webkit.org/show_bug.cgi?id=125744

Reviewed by Sam Weinig.

  • NetworkProcess/ios/NetworkProcessIOS.mm:

(WebKit::NetworkProcess::allowSpecificHTTPSCertificateForHost): Implemented by calling
+[NSURLRequest setAllowsSpecificHTTPSCertificate:forHost:].

5:09 PM Changeset in webkit [160608] by weinig@apple.com
  • 43 edits
    1 move in trunk/Source/WebKit2

[WK2] Rename WebString to API::String
https://bugs.webkit.org/show_bug.cgi?id=125726

Reviewed by Anders Carlsson.

  • Shared/API/Cocoa/WKRemoteObjectCoder.mm:
  • Shared/API/Cocoa/WKRemoteObjectRegistry.mm:
  • Shared/API/c/WKPluginInformation.cpp:
  • Shared/API/c/WKSharedAPICast.h:
  • Shared/API/c/WKString.cpp:
  • Shared/API/c/cf/WKStringCF.mm:
  • Shared/APIArray.cpp:
  • Shared/APIArray.h:
  • Shared/APIString.h: Copied from Source/WebKit2/Shared/WebString.h.
  • Shared/Cocoa/WKNSString.h:
  • Shared/Cocoa/WKNSString.mm:
  • Shared/ImmutableDictionary.cpp:
  • Shared/Plugins/Netscape/PluginInformation.cpp:
  • Shared/Plugins/Netscape/mac/PluginInformationMac.mm:
  • Shared/UserData.cpp:
  • Shared/UserMessageCoders.h:
  • Shared/WebArchiveResource.h:
  • Shared/WebOpenPanelParameters.cpp:
  • Shared/WebRenderLayer.cpp:
  • Shared/WebRenderObject.cpp:
  • Shared/WebString.h: Removed.
  • UIProcess/API/C/WKCredential.cpp:
  • UIProcess/API/C/WKDatabaseManager.cpp:
  • UIProcess/API/C/WKPage.cpp:
  • UIProcess/API/C/mac/WKContextPrivateMac.mm:
  • UIProcess/API/Cocoa/WKBrowsingContextGroup.mm:
  • UIProcess/APINavigationData.h:
  • UIProcess/Authentication/WebCredential.h:
  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:
  • UIProcess/Plugins/PlugInAutoStartProvider.cpp:
  • UIProcess/Plugins/WebPluginSiteDataManager.cpp:
  • UIProcess/WebContext.cpp:
  • UIProcess/WebDatabaseManagerProxy.cpp:
  • UIProcess/WebFormClient.cpp:
  • UIProcess/WebLoaderClient.cpp:
  • UIProcess/WebPageGroup.cpp:
  • UIProcess/WebUIClient.cpp:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:
  • WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
  • WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
  • WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
4:43 PM Changeset in webkit [160607] by fpizlo@apple.com
  • 2 edits in branches/jsCStack/Source/JavaScriptCore

Unreviewed, revert r156746, "FTL: split overflow checks into non-overflow arithmetic and an additional call to the overflow intrinsic check."

This introduces redundancies that LLVM can't handle. Reverting this change brings the
FTL up to being on-par with the DFG on V8v7/encrypt.

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileAddSub):
(JSC::FTL::LowerDFGToLLVM::compileArithMul):
(JSC::FTL::LowerDFGToLLVM::compileArithNegate):

4:21 PM Changeset in webkit [160606] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

Clean up the project after r160487

  • WebCore.xcodeproj/project.pbxproj: Moved reference to Security.framework from the top

level of the project to the Frameworks group, and made it SDK-relative.

4:11 PM Changeset in webkit [160605] by aestes@apple.com
  • 6 edits in trunk/Source

Unify FeatureDefines.xcconfig
https://bugs.webkit.org/show_bug.cgi?id=125741

Rubber-stamped by Dan Bernstein.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig: Enable ENABLE_MEDIA_SOURCE.

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig: Remove a stray space in

FEATURE_DEFINES.

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig: Remove a space in

FEATURE_DEFINES and fix a typo in ENABLE_CSS3_TEXT_DECORATION.

3:57 PM Changeset in webkit [160604] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

iOS build fix.

  • UIProcess/API/Cocoa/WKBrowsingContextController.h: Declared

observedRenderingProgressEvents as nonatomic.

3:28 PM Changeset in webkit [160603] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Expose WebContext::allowSpecificHTTPSCertificateForHost
https://bugs.webkit.org/show_bug.cgi?id=125738

Reviewed by Mark Rowe.

  • UIProcess/API/Cocoa/WKProcessGroup.mm:

(-[WKProcessGroup _setAllowsSpecificHTTPSCertificate:forHost:]): Added. Calls through to
WebContext::allowSpecificHTTPSCertificateForHost.

  • UIProcess/API/Cocoa/WKProcessGroupPrivate.h: Declared new method.
3:24 PM Changeset in webkit [160602] by mitz@apple.com
  • 4 edits in trunk/Source/WebKit2

[Cocoa] Expose some layout milestones
https://bugs.webkit.org/show_bug.cgi?id=125721

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKBrowsingContextController.h:

(WKRenderingProgressEvents): Declared new enum.
(@interface WKBrowsingContextController): Declared new observedRenderingProgressEvents
property.

  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:

(layoutMilestones): Added helper to translate rendering progress events into layout
milestones.
(-[WKBrowsingContextController setObservedRenderingProgressEvents:]): Added this setter.
Sets the ivar and calls WebPageProxy::listenForLayoutMilestones.
(renderingProgressEvents): Added helper to translate layout milestones into rendering
progress events.
(didLayout): Implemented this WKPageLoaderClient callback by calling the load delegate.
(setUpPageLoaderClient): Set the above callback in the client structure.

  • UIProcess/API/Cocoa/WKBrowsingContextLoadDelegate.h: Declared new delegate method.
1:49 PM Changeset in webkit [160601] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Clarify Owners’ role
https://bugs.webkit.org/show_bug.cgi?id=125739

Reviewed by Anders Carlsson.

  • Owners: Clarify that a patch authored by an Owner does not have to be reviewed by one, as

decided during the 2013 WebKit Contributors Meeting.

1:38 PM Changeset in webkit [160600] by fpizlo@apple.com
  • 31 edits in branches/jsCStack

cStack: Calling into FTL-generated code should be fast
https://bugs.webkit.org/show_bug.cgi?id=125649

Not yet reviewed.

  • assembler/AbstractMacroAssembler.h:
  • bytecode/StructureStubInfo.h:
  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedPutById):

  • ftl/FTLAbbreviations.h:

(JSC::FTL::arrayType):

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLCompile.cpp:

(JSC::FTL::fixFunctionBasedOnStackMaps):

  • ftl/FTLExitValue.h:

(JSC::FTL::ExitValue::withVirtualRegister):

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

(JSC::FTL::JITCode::initializeEntrypoint):
(JSC::FTL::JITCode::initializeAddressForCall):
(JSC::FTL::JITCode::addressForCall):
(JSC::FTL::JITCode::executableAddressAtOffset):

  • ftl/FTLJITCode.h:
  • ftl/FTLJITFinalizer.cpp:

(JSC::FTL::JITFinalizer::finalizeFunction):

  • ftl/FTLLink.cpp:

(JSC::FTL::link):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::lower):
(JSC::FTL::LowerDFGToLLVM::compileGetById):
(JSC::FTL::LowerDFGToLLVM::compilePutById):
(JSC::FTL::LowerDFGToLLVM::buildExitArguments):
(JSC::FTL::LowerDFGToLLVM::payloadFor):
(JSC::FTL::LowerDFGToLLVM::tagFor):
(JSC::FTL::LowerDFGToLLVM::addressFor):

  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileStub):

  • ftl/FTLOutput.h:

(JSC::FTL::Output::ptrToInt):

  • ftl/FTLSlowPathCall.cpp:

(JSC::FTL::callOperation):

  • ftl/FTLSlowPathCall.h:
  • ftl/FTLState.h:
  • ftl/FTLThunks.cpp:

(JSC::FTL::osrExitGenerationThunkGenerator):

  • ftl/FTLThunks.h:
  • heap/Heap.cpp:

(JSC::Heap::collectIfNecessaryOrDefer):

  • heap/Heap.h:

(JSC::Heap::isDeferred):

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::tagFor):
(JSC::AssemblyHelpers::payloadFor):

  • jit/JITInlineCacheGenerator.cpp:

(JSC::JITByIdGenerator::JITByIdGenerator):
(JSC::JITPutByIdGenerator::JITPutByIdGenerator):

  • jit/JITInlineCacheGenerator.h:

(JSC::JITGetByIdGenerator::JITGetByIdGenerator):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::emit_op_put_by_id):

  • jit/Repatch.cpp:

(JSC::tryBuildGetByIDList):
(JSC::emitPutTransitionStub):

  • runtime/JSCJSValue.h:
  • runtime/Options.h:
10:58 AM Changeset in webkit [160599] by akling@apple.com
  • 42 edits in trunk/Source

Page::theme() should return a reference.
<https://webkit.org/b/125737>

There's always a RenderTheme, and not a single call site was checking
for null pointers anyway. Updated RenderObject::theme() as well.

Reviewed by Antti Koivisto.

10:05 AM Changeset in webkit [160598] by weinig@apple.com
  • 53 edits in trunk/Source/WebCore

CTTE: Convert Element and RenderObject iterator usage to use range-based for loops
https://bugs.webkit.org/show_bug.cgi?id=125731

Reviewed by Andreas Kling.

Perform straight forward conversions. A few stragglers that do odd things remain.

9:53 AM Changeset in webkit [160597] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Small string improvements to JSInjectedScriptHost::type and other bindings
https://bugs.webkit.org/show_bug.cgi?id=125722

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-12-14
Reviewed by Timothy Hatcher.

  • bindings/js/JSInjectedScriptHostCustom.cpp:

(WebCore::JSInjectedScriptHost::type):
Use SmallStrings, jsNontrivialString and ASCIILiteral.

  • bindings/js/JSJavaScriptCallFrameCustom.cpp:

(WebCore::JSJavaScriptCallFrame::type):
Use jsNontrivialString.

  • bridge/c/c_instance.cpp:

(JSC::Bindings::CInstance::stringValue):
Use jsNontrivialString and ASCIILiteral.

4:40 AM Changeset in webkit [160596] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

Move a couple of inlines from RenderObject to RenderElement.
<https://webkit.org/b/125734>

Take most of the inline functions on RenderObject that call style()
and move them over to RenderElement where style() is branchless.

Reviewed by Antti Koivisto.

4:39 AM Changeset in webkit [160595] by akling@apple.com
  • 6 edits in trunk/Source/WebCore

RenderElement::rendererForRootBackground() should return a reference.
<https://webkit.org/b/125735>

This function always finds a renderer to return.

Reviewed by Antti Koivisto.

2:13 AM Changeset in webkit [160594] by mrowe@apple.com
  • 4 edits in trunk/Source

Build fix after r160557.

Source/JavaScriptCore:

r160557 added the first generated header to JavaScriptCore that needs to be installed in to
the framework wrapper. Sadly JavaScriptCore's Derived Sources target was not set to generate
headers when invoked as part of the installhdrs action. This resulted in the build failing
due to Xcode being unable to find the header file to install. The fix for this is to configure
the Derived Sources target to use JavaScriptCore.xcconfig, which sets INSTALLHDRS_SCRIPT_PHASE
to YES and allows Xcode to generate derived sources during the installhdrs action.

Enabling INSTALLHDRS_SCRIPT_PHASE required tweaking the Generate Derived Sources script build
phase to skip running code related to offlineasm that depends on JSCLLIntOffsetExtractor
having been compiled, which isn't the case at installhdrs time.

Source/WebCore:

  • Configurations/WebCore.xcconfig: Find JavaScriptCore.framework below SDKROOT so that we'll pick

up the built version in production builds rather than the system version.

1:03 AM Changeset in webkit [160593] by b.long@cablelabs.com
  • 3 edits in trunk/Source/WebCore

[GStreamer] Use GMutexLocker instead of g_mutex_lock
https://bugs.webkit.org/show_bug.cgi?id=125588

Reviewed by Philippe Normand.

No new tests because this is just code simplification.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::MediaPlayerPrivateGStreamerBase::updateTexture):
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
(WebCore::MediaPlayerPrivateGStreamerBase::paint):

  • platform/graphics/gstreamer/VideoSinkGStreamer.cpp:

(webkitVideoSinkTimeoutCallback):
(webkitVideoSinkRender):
(unlockBufferMutex):
(webkitVideoSinkUnlockStop):
(webkitVideoSinkStart):

Dec 13, 2013:

11:53 PM Changeset in webkit [160592] by commit-queue@webkit.org
  • 8 edits in trunk

Some Set and Map prototype functions have incorrect function lengths
https://bugs.webkit.org/show_bug.cgi?id=125732

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-12-13
Reviewed by Oliver Hunt.

Source/JavaScriptCore:

  • runtime/MapPrototype.cpp:

(JSC::MapPrototype::finishCreation):

  • runtime/SetPrototype.cpp:

(JSC::SetPrototype::finishCreation):

LayoutTests:

  • js/basic-map-expected.txt:
  • js/basic-set-expected.txt:
  • js/script-tests/basic-map.js:
  • js/script-tests/basic-set.js:
11:43 PM Changeset in webkit [160591] by msaboff@apple.com
  • 10 edits in branches/jsCStack/Source

CStack Branch: Remove WTF_USE_SEPARATE_C_AND_JS_STACK
https://bugs.webkit.org/show_bug.cgi?id=125733

Reviewed by Mark Lam.

WTF_USE_SEPARATE_C_AND_JS_STACK is only set for ENABLE(LLINT_C_LOOP) and is
therefore not needed. Replaced #if USE(SEPARATE_C_AND_JS_STACK) with
#if ENABLE(LLINT_C_LOOP) and eliminated WTF_USE_SEPARATE_C_AND_JS_STACK.

Source/JavaScriptCore:

  • assembler/MaxFrameExtentForSlowPathCall.h:
  • heap/Heap.cpp:

(JSC::Heap::markRoots):

  • interpreter/JSStack.cpp:

(JSC::JSStack::gatherConservativeRoots):

  • interpreter/JSStackInlines.h:

(JSC::JSStack::updateStackLimit):

  • runtime/CommonSlowPaths.h:

(JSC::CommonSlowPaths::arityCheckFor):

  • runtime/VM.cpp:

(JSC::VM::VM):

  • runtime/VM.h:

Source/WTF:

  • wtf/Platform.h:
11:29 PM Changeset in webkit [160590] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

Move RenderObject::repaintAfterLayoutIfNeeded() to RenderElement.
<https://webkit.org/b/125712>

This function is only ever called on RenderElements, so move it there.
Removes some RenderObject::style() branchiness.

Reviewed by Darin Adler.

11:17 PM Changeset in webkit [160589] by msaboff@apple.com
  • 5 edits in branches/jsCStack/Source

cStack: Crypto crashes in GC
https://bugs.webkit.org/show_bug.cgi?id=125730

Reviewed by Filip Pizlo.

Need to disable visiting the JSStack when we are on the C stack.
Made visiting the JSStack conditional on USE(SEPARATE_C_AND_JS_STACK)
and then turned off WTF_USE_SEPARATE_C_AND_JS_STACK in platform.h.

Source/JavaScriptCore:

  • heap/Heap.cpp:

(JSC::Heap::markRoots):

  • interpreter/JSStack.cpp:

(JSC::JSStack::gatherConservativeRoots):

Source/WTF:

  • wtf/Platform.h:
10:50 PM Changeset in webkit [160588] by Joseph Pecoraro
  • 26 edits
    2 moves
    1 add in trunk

Web Inspector: Move Inspector and Debugger protocol domains into JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=125707

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

  • CMakeLists.txt:
  • DerivedSources.make:
  • GNUmakefile.am:
  • inspector/protocol/Debugger.json: Renamed from Source/WebCore/inspector/protocol/Debugger.json.
  • inspector/protocol/GenericTypes.json: Added.
  • inspector/protocol/InspectorDomain.json: Renamed from Source/WebCore/inspector/protocol/InspectorDomain.json.

Add new files to inspector generation.

  • inspector/scripts/CodeGeneratorInspector.py:

(Generator.go):
Only build TypeBuilder output if the domain only has types. Avoid
backend/frontend dispatchers and backend commands.

(TypeBindings.create_type_declaration_.EnumBinding.get_setter_value_expression_pattern):
(format_setter_value_expression):
(Generator.process_command):
(Generator.generate_send_method):

  • inspector/scripts/CodeGeneratorInspectorStrings.py:

Export and name the get{JS,Web}EnumConstant function.

Source/WebCore:

  • Switch TypeBuilder::Page::SearchMatch to TypeBuilder::GenericTypes::SearchMatch which comes from InspectorJSTypeBuilders.
  • Remove domains that moved to JavaScriptCore.

No new tests, this only moves code around. There are no functional changes.

  • CMakeLists.txt:
  • DerivedSources.make:
  • GNUmakefile.am:

Add new files.

  • inspector/ContentSearchUtils.cpp:

(WebCore::ContentSearchUtils::buildObjectForSearchMatch):
(WebCore::ContentSearchUtils::searchInTextByLines):

  • inspector/ContentSearchUtils.h:
  • inspector/InspectorAgent.cpp:
  • inspector/InspectorAgent.h:
  • inspector/InspectorDebuggerAgent.h:
  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::searchInResource):

  • inspector/InspectorPageAgent.h:
  • inspector/protocol/Page.json:

Update includes and type builder type names.

  • inspector/InspectorDebuggerAgent.cpp:

(WebCore::breakpointActionTypeForString):
(WebCore::InspectorDebuggerAgent::searchInContent):

  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::innerAddRecordToTimeline):
Use the new getEnum function names.

Source/WebInspectorUI:

  • UserInterface/InspectorJSBackendCommands.js:
  • UserInterface/InspectorWebBackendCommands.js:

Regenerate now that domains have moved around.

LayoutTests:

  • http/tests/inspector-protocol/resources/InspectorTest.js:

(InspectorTest.checkForError):
Since having a protocol error is likely wrong, make the output
for it as detailed as possible.

10:33 PM Changeset in webkit [160587] by fpizlo@apple.com
  • 32 edits in trunk/Source/JavaScriptCore

Get rid of forward exit on UInt32ToNumber by adding an op_unsigned bytecode instruction
https://bugs.webkit.org/show_bug.cgi?id=125553

Reviewed by Oliver Hunt.

UInt32ToNumber was a super complicated node because it had to do a speculation, but it
would do it after we already had computed the urshift. It couldn't just back to the
beginning of the urshift because the inputs to the urshift weren't necessarily live
anymore. We couldn't jump forward to the beginning of the next instruction because the
result of the urshift was not yet unsigned-converted.

For a while we solved this by forward-exiting in UInt32ToNumber. But that's really
gross and I want to get rid of all forward exits. They cause a lot of bugs.

We could also have turned UInt32ToNumber to a backwards exit by forcing the inputs to
the urshift to be live. I figure that this might be a bit too extreme.

So, I just created a new place that we can exit to: I split op_urshift into op_urshift
followed by op_unsigned. op_unsigned is an "unsigned cast" along the lines of what
UInt32ToNumber does. This allows me to get rid of all of the nastyness in the DFG for
forward exiting in UInt32ToNumber.

This patch enables massive code carnage in the DFG and FTL, and brings us closer to
eliminating one of the DFG's most confusing concepts. On the flipside, it does make the
bytecode slightly more complex (one new instruction). This is a profitable trade. We
want the DFG and FTL to trend towards simplicity, since they are both currently too
complicated.

  • bytecode/BytecodeUseDef.h:

(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):

  • bytecode/Opcode.h:

(JSC::padOpcodeName):

  • bytecode/ValueRecovery.cpp:

(JSC::ValueRecovery::dumpInContext):

  • bytecode/ValueRecovery.h:

(JSC::ValueRecovery::gpr):

  • bytecompiler/NodesCodegen.cpp:

(JSC::BinaryOpNode::emitBytecode):
(JSC::emitReadModifyAssignment):

  • dfg/DFGByteCodeParser.cpp:

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

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

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

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileMovHint):
(JSC::DFG::SpeculativeJIT::compileUInt32ToNumber):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:
  • dfg/DFGSpeculativeJIT64.cpp:
  • dfg/DFGStrengthReductionPhase.cpp:

(JSC::DFG::StrengthReductionPhase::handleNode):
(JSC::DFG::StrengthReductionPhase::convertToIdentityOverChild):
(JSC::DFG::StrengthReductionPhase::convertToIdentityOverChild1):
(JSC::DFG::StrengthReductionPhase::convertToIdentityOverChild2):

  • ftl/FTLFormattedValue.h:

(JSC::FTL::int32Value):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileUInt32ToNumber):

  • ftl/FTLValueFormat.cpp:

(JSC::FTL::reboxAccordingToFormat):
(WTF::printInternal):

  • ftl/FTLValueFormat.h:
  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):

  • jit/JIT.h:
  • jit/JITArithmetic.cpp:

(JSC::JIT::emit_op_urshift):
(JSC::JIT::emitSlow_op_urshift):
(JSC::JIT::emit_op_unsigned):
(JSC::JIT::emitSlow_op_unsigned):

  • jit/JITArithmetic32_64.cpp:

(JSC::JIT::emitRightShift):
(JSC::JIT::emitRightShiftSlowCase):
(JSC::JIT::emit_op_unsigned):
(JSC::JIT::emitSlow_op_unsigned):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/CommonSlowPaths.h:
10:25 PM Changeset in webkit [160586] by msaboff@apple.com
  • 2 edits in branches/jsCStack/Source/JavaScriptCore

cStack: Crypto doesn't work at all unless LLInt is disabled
https://bugs.webkit.org/show_bug.cgi?id=125729

Reviewed by Filip Pizlo.

At the end of the functionArityCheck() macro, updated the stack pointer with the
amount the frame moved. This change has already been made in the
arityFixup thunk generator.

  • llint/LowLevelInterpreter64.asm:
8:55 PM Changeset in webkit [160585] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Exception: TypeError: undefined is not a function (evaluating 'marker.find()')
https://bugs.webkit.org/show_bug.cgi?id=125724

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-12-13
Reviewed by Darin Adler.

  • UserInterface/CSSStyleDeclarationTextEditor.js:

(WebInspector.CSSStyleDeclarationTextEditor.prototype.):
(WebInspector.CSSStyleDeclarationTextEditor.prototype._createColorSwatches):
The callback changed to returning WebInspector.TextMarkers, however
this class expected a raw CodeMirror marker. Since this class knows
about CodeMirror and expects to access these markers later go
directly to the CodeMirror marker.

8:42 PM Changeset in webkit [160584] by benjamin@webkit.org
  • 6 edits in trunk/Source/WebKit2

[WK2] Fix the build and enable the NetworkProcess by default on iOS
https://bugs.webkit.org/show_bug.cgi?id=125723

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-12-13
Reviewed by Sam Weinig.

  • Configurations/WebKit2.xcconfig:

Fix the list of excluded file to get the processes building.

  • NetworkProcess/ios/NetworkProcessIOS.mm:

(WebKit::NetworkProcess::allowSpecificHTTPSCertificateForHosAt):
Update PlatformCertificateInfo->CertificateInfo match the new name after r159647.

  • UIProcess/API/Cocoa/WKProcessGroup.mm:

(-[WKProcessGroup initWithInjectedBundleURL:]):
Enable the NetworkProcess by default.

  • UIProcess/Network/mac/NetworkProcessProxyMac.mm:

(WebKit::shouldUseXPC):
Use the right macro.

  • WebKit2Prefix.h:

Eanble the flags NETWORK_PROCESS and CUSTOM_PROTOCOLS.

7:41 PM Changeset in webkit [160583] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Demoted ActivityAssertion.h to a project header.

Rubber-stamped by Sam Weinig.

  • WebKit2.xcodeproj/project.pbxproj:
7:16 PM Changeset in webkit [160582] by weinig@apple.com
  • 2 edits in trunk/Tools

Fix API tests.

  • TestWebKitAPI/Tests/WebKit2/WillLoad.cpp:

(TestWebKitAPI::TEST_F):

7:14 PM Changeset in webkit [160581] by Brent Fulgham
  • 10 edits in trunk

Source/WebCore: [Win] Remove pre-VS2013 support code.
https://bugs.webkit.org/show_bug.cgi?id=125693

Reviewed by Darin Adler.

  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::setQuota): Use C99 format arguments

  • loader/FTPDirectoryParser.cpp:

(WebCore::parseOneFTPLine): Ditto

  • loader/icon/IconDatabase.cpp:

(WebCore::IconDatabase::pruneUnretainedIcons): Ditto

  • platform/sql/SQLiteDatabase.cpp:

(WebCore::SQLiteDatabase::setMaximumSize): Ditto

Source/WTF: [Win] Remove Pre-VS2013 support code.
https://bugs.webkit.org/show_bug.cgi?id=125693

Reviewed by Darin Adler.

  • wtf/StringPrintStream.cpp:

(WTF::StringPrintStream::vprintf): Use va_copy, like a civilized person.

Tools: [Win] Remove Pre-VS2013 support code.
https://bugs.webkit.org/show_bug.cgi?id=125693

Reviewed by Darin Adler.

  • DumpRenderTree/cg/ImageDiffCG.cpp: Remove strtof stub now supplied by

the math library.

  • DumpRenderTree/win/ImageDiffCairo.cpp: Ditto.
6:53 PM Changeset in webkit [160580] by Darin Adler
  • 2 edits in trunk/Source/WTF

Incorrect handling of non-ASCII characters in WTF::base64DecodeInternal
https://bugs.webkit.org/show_bug.cgi?id=125658

Reviewed by Alexey Proskuryakov.

  • wtf/text/Base64.cpp:

(WTF::base64EncodeInternal): Use a reference to an array instead of a pointer
for the table argument type so we check the size of the array at the call site.
(WTF::base64DecodeInternal): Ditto. Also added an bounds check before using the
table so we don't load some random value for non-ASCII characters.

6:02 PM Changeset in webkit [160579] by Brent Fulgham
  • 2 edits in trunk/WebKitLibraries

[Win] Unreviewed build fix for VS2013

  • win/lib32/WebKitSystemInterface.lib: Updated to use VS2013 _MSC_VER symbols

for linking.

5:53 PM Changeset in webkit [160578] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

SVG bindings are improperly being generated with "fastGetAttribute"
https://bugs.webkit.org/show_bug.cgi?id=125670

Reviewed by Darin Adler.

A bug was introduced in r152845 that improperly called the
IsSVGAnimatedType using the $attribute hash, rather than the
expected $attribute->signature->type.

  • bindings/scripts/CodeGenerator.pm:

(GetterExpression): Clean up attribute type confusion.

5:43 PM Changeset in webkit [160577] by Brent Fulgham
  • 3 edits in trunk/Source/WebCore

[Win] Unreviewed build fix after r160548

  • WebCore.vcxproj/WebCore.vcxproj: Exclude MediaPlayerPrivateQuickTimeVisualContext from

Windows build.

  • platform/graphics/MediaPlayer.cpp: Don't use QuickTime as the PlatformMediaEngine.
5:23 PM Changeset in webkit [160576] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

Unreviewed build correction after r160548.

  • WebKit.vcxproj/WebKit/WebKitApple.props: Exclude linking with QTMoveWin, which does

not build with VS2013.

5:16 PM Changeset in webkit [160575] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

Unreviewed build correction after r160548

  • WebKit.vcxproj/WebKit.sln: Revise build order to avoid errors with ANGLE included.
5:01 PM Changeset in webkit [160574] by Brent Fulgham
  • 9 edits in trunk/Source

[Win] Unreviewed build fix after r160548

Source/ThirdParty/ANGLE:

I missed the ANGLE files, since we aren't building these
on the Apple Windows port at the moment.

  • ANGLE.vcxproj/libEGL.vcxproj: Update to VS2013
  • ANGLE.vcxproj/libGLESv2.vcxproj: Ditto
  • ANGLE.vcxproj/preprocessor.vcxproj: Ditto
  • ANGLE.vcxproj/translator_common.vcxproj: Ditto
  • ANGLE.vcxproj/translator_glsl.vcxproj: Ditto
  • ANGLE.vcxproj/translator_hlsl.vcxproj: Ditto

Source/WebKit:

  • WebKit.vcxproj/WebKit.sln: Revised to build under VS2013.
4:39 PM Changeset in webkit [160573] by mark.lam@apple.com
  • 7 edits in branches/jsCStack/Source/JavaScriptCore

Fix exception handling for the LLINT.
https://bugs.webkit.org/show_bug.cgi?id=125672.

Reviewed by Geoffrey Garen.

The baseline JIT exception handling is still broken.

  • JavaScriptCore.order:
  • llint/LLIntSlowPaths.cpp:
  • llint/LLIntSlowPaths.h:
  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • updated the 32bit file with some of the changes to keep track with the 64bit one though it doesn't build yet. The build failure will clearly tell us some of the things that need to be fixed later.
  • llint/LowLevelInterpreter64.asm:
  • Called restoreStackPointerAfterCall() in op_catch and nativeCallTrampoline to restore the appropriate stack pointer.
  • Renamed the restoreStackPointerAfterJSCall() macro to restoreStackPointerAfterCall because we also need to call it after a call to a native / host function.
  • Removed llint_throw_from_native_call because it no longer does anything useful.
  • Moved call to functionEpilogue() in nativeCallTrampoline before the exception check because we should have returned from the native / host function already.

The Interpreter::unwind() code also relies on this. The VM will unwind and "pop"
JS frames, but will stop at host frames. The host frame should pop itself. Then,
we call Interpreter::unwind() again to continue for caller frames further up
the stack.

  • Removed the check for the sentinel frame in handleUncaughtException because we're guaranteed to be at the frame above the sentinel frame.
3:59 PM Changeset in webkit [160572] by weinig@apple.com
  • 9 edits in trunk/Source/WebKit2

[WK2] Start removing calls to String::characters()
https://bugs.webkit.org/show_bug.cgi?id=125699

Reviewed by Anders Carlsson.

  • Shared/mac/WebCoreArgumentCodersMac.mm:

(CoreIPC::::decodePlatformData):

  • UIProcess/Plugins/PluginInfoStore.cpp:

(WebKit::PluginInfoStore::defaultLoadPolicyForPlugin):
(WebKit::PluginInfoStore::findPlugin):

  • UIProcess/Plugins/PluginInfoStore.h:
  • UIProcess/Plugins/mac/PluginInfoStoreMac.mm:

(WebKit::PluginInfoStore::pluginsDirectories):
(WebKit::PluginInfoStore::pluginPathsInDirectory):

  • UIProcess/cf/WebPreferencesCF.cpp:

(WebKit::makeKey):

  • WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:

(WebKit::InjectedBundle::load):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::loadStringImpl):
(WebKit::WebPage::loadHTMLString):
(WebKit::WebPage::loadAlternateHTMLString):
(WebKit::WebPage::loadPlainTextString):
(WebKit::WebPage::loadWebArchiveData):

  • WebProcess/WebPage/WebPage.h:
3:57 PM Changeset in webkit [160571] by mhahnenberg@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

LLInt should not conditionally branch to to labels outside of its function
https://bugs.webkit.org/show_bug.cgi?id=125713

Reviewed by Geoffrey Garen.

Conditional branches are insufficient for jumping to out-of-function labels.
The fix is to use an unconditional jmp to the label combined with a conditional branch around the jmp.

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
3:56 PM Changeset in webkit [160570] by roger_fong@apple.com
  • 2 edits in trunk/Websites/webkit.org

Update build instructions for Windows following upgrade to VS2013.

  • building/tools.html:
3:29 PM Changeset in webkit [160569] by Lucas Forschler
  • 2 edits in trunk/Tools

Update Webkit bots.

Unreviewed.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
3:28 PM Changeset in webkit [160568] by Joseph Pecoraro
  • 6 edits in trunk

[GTK] Remove Warnings in building about duplicate INSPECTOR variables
https://bugs.webkit.org/show_bug.cgi?id=125710

Reviewed by Tim Horton.

  • GNUmakefile.am:

Source/JavaScriptCore:

  • GNUmakefile.am:

Source/WebCore:

  • GNUmakefile.am:
3:04 PM Changeset in webkit [160567] by roger_fong@apple.com
  • 6 edits in trunk

[WebGL] Check for global variable precision mismatch between vertex and fragment shaders.
https://bugs.webkit.org/show_bug.cgi?id=125546.
<rdar://problem/15203364>

Reviewed by Brent Fulgham.

Covered Khronos conformances tests:
webgl/1.0.2/glsl/misc/shader-with-global-variable-precision-mismatch.html

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::linkProgram):

  • platform/graphics/GraphicsContext3D.h: Rename areProgramSymbolsValid since it currently only serves one purpose.
  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::precisionsMatch):

  • platform/mac/TestExpectations:

Unskip webgl/1.0.2/glsl/misc/shader-with-global-variable-precision-mismatch.html

2:09 PM Changeset in webkit [160566] by enrica@apple.com
  • 13 edits in trunk/Source/WebKit2

WK2: Add support for inline candidates on iOS.
https://bugs.webkit.org/show_bug.cgi?id=125667

Reviewed by Benjamin Poulain.

The state required to support inline candidates is cached in the UI process.
Asynchronous messages are used to set and confirm the composition.

  • Shared/EditorState.cpp:

(WebKit::EditorState::encode):
(WebKit::EditorState::decode):

  • Shared/EditorState.h:
  • UIProcess/API/ios/WKInteractionView.mm:

(-[WKInteractionView textFirstRect]):
(-[WKInteractionView textLastRect]):
(-[WKInteractionView hasMarkedText]):
(-[WKInteractionView markedText]):
(-[WKInteractionView setMarkedText:selectedRange:]):
(-[WKInteractionView unmarkText]):
(-[WKInteractionView _selectionChanged]):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::editorStateChanged):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::setComposition):
(WebKit::WebPageProxy::confirmComposition):
(WebKit::WebPageProxy::notifyRevealedSelection):

  • WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm:

(WebKit::WebChromeClient::notifyRevealedSelectionByScrollingFrame):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::editorState):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::setComposition):
(WebKit::WebPage::confirmComposition):

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

Cleanup CodeGeneratorInspectorStrings a bit
https://bugs.webkit.org/show_bug.cgi?id=125705

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-12-13
Reviewed by Timothy Hatcher.

  • inspector/scripts/CodeGeneratorInspectorStrings.py:

Use ${foo} variable syntax and add an ASCIILiteral.

1:52 PM Changeset in webkit [160564] by Brent Fulgham
  • 2 edits in trunk/Source/JavaScriptCore

[Win] Unreviewed build fix after r160563

  • JavaScriptCore.vcxproj/JavaScriptCoreGenerated.vcxproj: Missed the Debug

target in my last patch.

1:49 PM Changeset in webkit [160563] by Brent Fulgham
  • 10 edits in trunk

[Win] Unreviewed build fix after r160548

Source/JavaScriptCore:

that we are using the vs12_xp target for Makefile-based projects.

  • JavaScriptCore.vcxproj/LLInt/LLIntAssembly/LLIntAssembly.vcxproj: Ditto
  • JavaScriptCore.vcxproj/LLInt/LLIntDesiredOffsets/LLIntDesiredOffsets.vcxproj: Ditto.

Source/WebCore:

  • WebCore.vcxproj/WebCoreGenerated.vcxproj: Specify that we are

using the vs120_xp build target for Makefile-based projects.

Source/WTF:

  • WTF.vcxproj/WTFGenerated.vcxproj: Specify that we are using

the vs12_xp target for Makefile-based projects.

Tools:

  • win/AssembleBuildLogs/AssembleBuildLogs.vcxproj: Specify

we are using vs12_xp target for Makefile-based projects.

1:36 PM Changeset in webkit [160562] by msaboff@apple.com
  • 4 edits in branches/jsCStack/Source/JavaScriptCore

jsCStack:REGRESSION: "print(“My object: “ + { });” crashes LLINT in op_call
https://bugs.webkit.org/show_bug.cgi?id=125694

Reviewed by Filip Pizlo.

We were clobbering the rbx value saved on the stack at the top of callToJavaScript
and callToNativeFunction. This is due to a difference between the JSStack's notion
of top of stack being the first usable location and the stack pointer register
pointing to the last used location. I changed the allocation of the sentinel frame
accordingly.

In the process I cleaned up the rounding of paddedArgsCount in ProtoCallFrame::init
to use WTF::roundUpToMultipleOf<> since the rounding had to change to keep the stack
pointer aligned.

  • interpreter/ProtoCallFrame.cpp:

(JSC::ProtoCallFrame::init):

  • llint/LowLevelInterpreter64.asm:
1:36 PM Changeset in webkit [160561] by andersca@apple.com
  • 5 edits in trunk/Source/WTF

Require variadic templates to build WebKit
https://bugs.webkit.org/show_bug.cgi?id=125701

Reviewed by Andreas Kling.

  • wtf/Compiler.h:

Add an #error if variadic templates are disabled.

  • wtf/NeverDestroyed.h:
  • wtf/PassRef.h:
  • wtf/StdLibExtras.h:

Remove a bunch of COMPILER_SUPPORTS(CXX_VARIADIC_TEMPLATES) #ifdefs.

1:26 PM Changeset in webkit [160560] by Lucas Forschler
  • 2 edits in trunk/Tools

Update Apple Webkit Bots

Unreviewed.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
1:18 PM Changeset in webkit [160559] by aestes@apple.com
  • 2 edits in trunk/Source/WebKit

Post-process exported WebKit headers based on PLATFORM_NAME
https://bugs.webkit.org/show_bug.cgi?id=125682

Reviewed by Dan Bernstein.

Added a build phase that calls unifdef(1) on each of WebKit's Public
and Private headers, defining TARGET_OS_EMBEDDED, TARGET_OS_IPHONE, and
TARGET_IPHONE_SIMULATOR based on the value of PLATFORM_NAME. This has
the effect of stripping out bits not needed by the SDK being built for.

  • WebKit.xcodeproj/project.pbxproj:
1:08 PM Changeset in webkit [160558] by Joseph Pecoraro
  • 2 edits in trunk/Source/JavaScriptCore

Make inspector folder groups smarter in JavaScriptCore.xcodeproj
https://bugs.webkit.org/show_bug.cgi?id=125663

Reviewed by Darin Adler.

1:07 PM Changeset in webkit [160557] by Joseph Pecoraro
  • 78 edits
    7 moves
    6 adds in trunk

Web Inspector: Add Inspector Code Generation to JavaScriptCore for Runtime Domain
https://bugs.webkit.org/show_bug.cgi?id=125595

Reviewed by Timothy Hatcher.

  • GNUmakefile.am:

Source/JavaScriptCore:

  • Move CodeGeneration scripts from WebCore into JavaScriptCore/inspector/scripts
  • For ports that build WebKit frameworks separately, export the scripts as PrivateHeaders
  • Update CodeGeneratorInspector.py in a few ways:
    • output dynamic filenames, so JavaScriptCore generates InspectorJSFoo.* and WebCore generates InspectorWebFoo.*
    • take in more then one protocol JSON file. The first contains domains to generate, the others are dependencies that are generated elsewhere that we can depend on for Types.
  • Add DerivedSources build step to generate the Inspector Interfaces

Add scripts and code generation.

  • inspector/protocol/Runtime.json: Renamed from Source/WebCore/inspector/protocol/Runtime.json.

Move protocol file into JavaScriptCore so its types will be generated in JavaScriptCore.

  • inspector/scripts/CodeGeneratorInspector.py: Renamed from Source/WebCore/inspector/CodeGeneratorInspector.py.

Updates to the script as listed above.

  • inspector/scripts/CodeGeneratorInspectorStrings.py: Renamed from Source/WebCore/inspector/CodeGeneratorInspectorStrings.py.
  • inspector/scripts/generate-combined-inspector-json.py: Renamed from Source/WebCore/inspector/Scripts/generate-combined-inspector-json.py.

Moved from WebCore into JavaScriptCore for code generation.

Source/WebCore:

  • CodeGeneration changed to output Frontend and Backend dispatchers in namespace Inspector. So update all the agent's appropriately.
  • Update Derived Sources code generation to use the Scripts that had moved to JavaScriptCore. Some ports just use JSC/inspector/scripts directly, but others have to use the Scripts exported by JSC in JavaScriptCore's PrivateHeaders.
  • Add ForwardingHeaders for the files generated in JavaScriptCore.
  • Update the names of Inspector DerivedSources files, since they were renamed to InspectorWeb*.

No new tests, this only moves code around. There are no functional changes.

  • CMakeLists.txt:
  • DerivedSources.make:
  • ForwardingHeaders/inspector/InspectorJSBackendDispatchers.h: Added.
  • ForwardingHeaders/inspector/InspectorJSFrontendDispatchers.h: Added.
  • ForwardingHeaders/inspector/InspectorJSTypeBuilders.h: Added.
  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.vcxproj/build-generated-files.sh:
  • WebCore.xcodeproj/project.pbxproj:

Remove files, rename files, update code generation.

  • make-generated-sources.sh:

Update this standalone developer script to fill in the new InspectorScripts variable.

  • inspector/ConsoleMessage.h:
  • inspector/InjectedScriptHost.cpp:
  • inspector/InspectorAgent.cpp:
  • inspector/InspectorAgent.h:
  • inspector/InspectorApplicationCacheAgent.cpp:
  • inspector/InspectorApplicationCacheAgent.h:
  • inspector/InspectorCSSAgent.h:
  • inspector/InspectorCanvasAgent.cpp:
  • inspector/InspectorCanvasAgent.h:
  • inspector/InspectorConsoleAgent.cpp:
  • inspector/InspectorConsoleAgent.h:
  • inspector/InspectorController.cpp:
  • inspector/InspectorDOMAgent.cpp:
  • inspector/InspectorDOMAgent.h:
  • inspector/InspectorDOMDebuggerAgent.cpp:
  • inspector/InspectorDOMDebuggerAgent.h:
  • inspector/InspectorDOMStorageAgent.cpp:
  • inspector/InspectorDOMStorageAgent.h:
  • inspector/InspectorDatabaseAgent.cpp:
  • inspector/InspectorDatabaseAgent.h:
  • inspector/InspectorDatabaseResource.cpp:
  • inspector/InspectorDatabaseResource.h:
  • inspector/InspectorDebuggerAgent.cpp:
  • inspector/InspectorDebuggerAgent.h:
  • inspector/InspectorFrontendClientLocal.cpp:
  • inspector/InspectorHeapProfilerAgent.h:
  • inspector/InspectorIndexedDBAgent.cpp:
  • inspector/InspectorIndexedDBAgent.h:
  • inspector/InspectorInputAgent.h:
  • inspector/InspectorLayerTreeAgent.cpp:
  • inspector/InspectorLayerTreeAgent.h:
  • inspector/InspectorMemoryAgent.cpp:
  • inspector/InspectorMemoryAgent.h:
  • inspector/InspectorPageAgent.cpp:
  • inspector/InspectorPageAgent.h:
  • inspector/InspectorProfilerAgent.cpp:
  • inspector/InspectorProfilerAgent.h:
  • inspector/InspectorResourceAgent.cpp:
  • inspector/InspectorResourceAgent.h:
  • inspector/InspectorRuntimeAgent.h:
  • inspector/InspectorTimelineAgent.cpp:
  • inspector/InspectorTimelineAgent.h:
  • inspector/InspectorWorkerAgent.cpp:
  • inspector/InspectorWorkerAgent.h:
  • inspector/PageRuntimeAgent.h:
  • inspector/ScriptCallFrame.cpp:
  • inspector/WorkerInspectorController.cpp:
  • inspector/WorkerRuntimeAgent.h:

Updates header names and class namespace changes.

Source/WebInspectorUI:

  • Scripts/copy-user-interface-resources.sh:

Copy all the different backend commands files.

  • Scripts/update-InspectorBackendCommands.rb:

Update with respect to new script location and new file names.

  • WebInspectorUI.xcodeproj/project.pbxproj:

Remove Inputs and Outputs of build phase, which were wrong.
Now this build phase always runs, and not by accident.

  • UserInterface/InspectorJSBackendCommands.js: Added.
  • UserInterface/InspectorWebBackendCommands.js: Renamed from Source/WebInspectorUI/UserInterface/InspectorBackendCommands.js.
  • UserInterface/Legacy/6.0/InspectorWebBackendCommands.js: Renamed from Source/WebInspectorUI/UserInterface/Legacy/6.0/InspectorBackendCommands.js.
  • UserInterface/Legacy/7.0/InspectorWebBackendCommands.js: Renamed from Source/WebInspectorUI/UserInterface/Legacy/7.0/InspectorBackendCommands.js.
  • UserInterface/LoadInspectorBackendCommands.js:
  • WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
  • WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters:

LayoutTests:

  • http/tests/inspector-protocol/resources/InspectorTest.js:

(InspectorTest.importInspectorScripts):
Update for the new backend commands files.

12:54 PM Changeset in webkit [160556] by Brent Fulgham
  • 2 edits in trunk/Tools

Unreviewed build fix after r160548.

  • Scripts/webkitdirs.pm:

(setupCygwinEnv): VCExpress.exe is now called WDExpress.exe.

12:43 PM Changeset in webkit [160555] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix the build.

Work around a problem in Functional.h by making the DatabaseProcess destructor public.

  • DatabaseProcess/DatabaseProcess.h:
12:15 PM Changeset in webkit [160554] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

[wk2] Handle pinch-to-zoom gesture
https://bugs.webkit.org/show_bug.cgi?id=125604

Reviewed by Sam Weinig.

  • UIProcess/API/mac/WKView.mm:

(-[WKView magnifyWithEvent:]):
(-[WKView endGestureWithEvent:]):
Forward the event up the chain if we're not going to handle it.

12:04 PM Changeset in webkit [160553] by thiago.lacerda@openbossa.org
  • 22 edits
    2 moves in trunk

Adding RTCPeerConnectionErrorCallback
https://bugs.webkit.org/show_bug.cgi?id=125574

Reviewed by Eric Carlson.

According to the spec there should be a RTCPeerConnectionErrorCallback function type for createOffer/Answer,
setLocal/RemoteDescription and updateIce function calls. This callback must handle a DOMError object.

Source/WebCore:

Existing tests were updated.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::createOffer):
(WebCore::RTCPeerConnection::createAnswer):
(WebCore::RTCPeerConnection::setLocalDescription):
(WebCore::RTCPeerConnection::setRemoteDescription):
(WebCore::RTCPeerConnection::addIceCandidate):

  • Modules/mediastream/RTCErrorCallback.h: Removed.
  • Modules/mediastream/RTCErrorCallback.idl: Removed.
  • Modules/mediastream/RTCPeerConnection.h:
  • Modules/mediastream/RTCPeerConnection.idl:
  • Modules/mediastream/RTCPeerConnectionErrorCallback.h: Added.
  • Modules/mediastream/RTCPeerConnectionErrorCallback.idl: Added.
  • Modules/mediastream/RTCSessionDescriptionRequestImpl.cpp:

(WebCore::RTCSessionDescriptionRequestImpl::create):
(WebCore::RTCSessionDescriptionRequestImpl::RTCSessionDescriptionRequestImpl):
(WebCore::RTCSessionDescriptionRequestImpl::requestFailed):

  • Modules/mediastream/RTCSessionDescriptionRequestImpl.h:
  • Modules/mediastream/RTCVoidRequestImpl.cpp:

(WebCore::RTCVoidRequestImpl::create):
(WebCore::RTCVoidRequestImpl::RTCVoidRequestImpl):
(WebCore::RTCVoidRequestImpl::requestFailed):

  • Modules/mediastream/RTCVoidRequestImpl.h:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/mediastream/RTCPeerConnectionHandler.cpp:

(WebCore::RTCPeerConnectionHandler::incompatibleConstraintsErrorName):
(WebCore::RTCPeerConnectionHandler::invalidSessionDescriptionErrorName):
(WebCore::RTCPeerConnectionHandler::incompatibleSessionDescriptionErrorName):
(WebCore::RTCPeerConnectionHandler::internalErrorName):

  • platform/mediastream/RTCPeerConnectionHandler.h:
  • platform/mock/RTCNotifiersMock.cpp:

(WebCore::SessionRequestNotifier::SessionRequestNotifier):
(WebCore::SessionRequestNotifier::fire):
(WebCore::VoidRequestNotifier::VoidRequestNotifier):
(WebCore::VoidRequestNotifier::fire):

  • platform/mock/RTCNotifiersMock.h:
  • platform/mock/RTCPeerConnectionHandlerMock.cpp:

(WebCore::RTCPeerConnectionHandlerMock::createOffer):
(WebCore::RTCPeerConnectionHandlerMock::createAnswer):

LayoutTests:

  • fast/mediastream/RTCPeerConnection-createAnswer-expected.txt:
  • fast/mediastream/RTCPeerConnection-createAnswer.html:
  • fast/mediastream/RTCPeerConnection-createOffer-expected.txt:
  • fast/mediastream/RTCPeerConnection-createOffer.html:
11:32 AM Changeset in webkit [160552] by Antoine Quint
  • 7 edits
    1 add in trunk/Source/WebInspectorUI

Web Inspector: provide an abstraction for CodeMirror's TextMarker
https://bugs.webkit.org/show_bug.cgi?id=125695

Reviewed by Timothy Hatcher.

Introduce a new WebInspector.TextMarker class which is used by code with CodeMirror knowledge
to return information related to text markers to objects that should have no direct knowledge
of CodeMirror. Start using this class in TextEditor and SourceCodeTextEditor to remove the
last remaining pieces of CodeMirror knowledge added to SourceCodeTextEditor to fix
https://webkit.org/b/124364.

  • UserInterface/CodeMirrorAdditions.js:

Stop using markedColor to identify a color marker and instead use the type on the matching
WebInspector.TextMarker. Additionally, create a WebInspector.TextMarker with type
WebInspector.TextMarker.Type.Color in createColorMarkers().

  • UserInterface/CodeMirrorColorEditingController.js:

(WebInspector.CodeMirrorColorEditingController):
Use a WebInspector.TextRange to track the edited range and obtain it directly from the
WebInspector.TextMaker used to instantiate the object. We also use the new "text" public
property to create the color.

(WebInspector.CodeMirrorColorEditingController.prototype.set color):
Simply assing the serialized color to the new "text" public property.

(WebInspector.CodeMirrorColorEditingController.prototype.get text):
(WebInspector.CodeMirrorColorEditingController.prototype.set text):
New public property to set get and set the text for the edited range, automatically updating
the range upon setting to a new text.

(WebInspector.CodeMirrorColorEditingController.prototype.presentHoverMenu):
Obtain the bounds directly from the WebInspector.TextMarker object.

  • UserInterface/CodeMirrorTokenTrackingController.js:

(WebInspector.CodeMirrorTokenTrackingController.prototype._updateHoveredTokenInfo):
Since we're now tracking the hoveredMarker as a WebInspector.TextMarker, get the CodeMirror
TextMarker from that object to check if it's contained within the text markers at the
hovered position.

  • UserInterface/Main.html:

Add the new TextMarker class source.

  • UserInterface/SourceCodeTextEditor.js:

(WebInspector.SourceCodeTextEditor.prototype._hasColorMarkers):
Use the WebInspector.TextMarker type to identify a given text marker is marking a color.

(WebInspector.SourceCodeTextEditor.prototype.tokenTrackingControllerNewHighlightCandidate):
Use the renamed markersAtPosition() method from TextEditor.

(WebInspector.SourceCodeTextEditor.prototype._tokenTrackingControllerHighlightedMarkedExpression):
Use the WebInspector.TextMarker type to identify a given text marker is marking a color.

(WebInspector.SourceCodeTextEditor.prototype.colorEditingControllerDidFinishEditing):
Since the CodeMirrorColorEditingController is now using a WebInspector.TextRange for its range,
update to use a WebInspector.TextRange API to get the range's start line.

  • UserInterface/TextEditor.js:

(WebInspector.TextEditor.prototype.get markers):
Return WebInspector.TextMarker objects instead of CodeMirror TextRange objects.

(WebInspector.TextEditor.prototype.markersAtPosition):
Rename method to a better name instead of using the CodeMirror-influenced name. Also, return
WebInspector.TextMarker objects instead of CodeMirror TextRange objects.

  • UserInterface/TextMarker.js: Added.

(WebInspector.TextMarker):
Create a WebInspector.TextMarker with a CodeMirror TextMarker and an optional type.

(WebInspector.TextMarker.textMarkerForCodeMirrorTextMarker):
Static method to either obtain the existing WebInspector.TextMarker for a given CodeMirror
TextMarker, or create a new WebInspector.TextMarker.

(WebInspector.TextMarker.prototype.get codeMirrorTextMarker):
Public property to access the CodeMirror TextMarker objects for classes that have direct
knowledge of CodeMirror.

(WebInspector.TextMarker.prototype.get type):
Public property to access the type used to create this text marker.

(WebInspector.TextMarker.prototype.get range):
(WebInspector.TextMarker.prototype.get bounds):
Public properties allowing easy access to generally useful information related to marked text.

(WebInspector.TextMarker.prototype.clear):
Wrapper for the CodeMirror TextMarker clear() method.

11:27 AM Changeset in webkit [160551] by Lucas Forschler
  • 2 edits in trunk/Tools

Update Apple bots.

Unreviewed.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
11:24 AM Changeset in webkit [160550] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Delete INTEL C compiler related code parts.
https://bugs.webkit.org/show_bug.cgi?id=125625

Patch by Peter Szanka <h868064@stud.u-szeged.hu> on 2013-12-13
Reviewed by Darin Adler.

Source/JavaScriptCore:

  • jsc.cpp:
  • testRegExp.cpp:

Source/WTF:

  • wtf/Assertions.h:
  • wtf/Compiler.h:
11:21 AM Changeset in webkit [160549] by andersca@apple.com
  • 8 edits in trunk/Source/WebKit2

Put classes in the IPC directory in the IPC namespace
https://bugs.webkit.org/show_bug.cgi?id=125665

Reviewed by Sam Weinig.

Also add a hack to config.h that lets us use CoreIPC and IPC interchangeably.

  • Platform/IPC/DataReference.cpp:
  • Platform/IPC/DataReference.h:
  • Platform/IPC/MessageSender.cpp:
  • Platform/IPC/MessageSender.h:
  • Platform/IPC/StringReference.cpp:
  • Platform/IPC/StringReference.h:
  • config.h:
11:17 AM Changeset in webkit [160548] by Brent Fulgham
  • 34 edits in trunk

[Win] Switch WebKit solution to Visual Studio 2013
https://bugs.webkit.org/show_bug.cgi?id=125192

Reviewed by Anders Carlsson.

Source/JavaScriptCore:

  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Update for VS2013
  • JavaScriptCore.vcxproj/LLInt/LLIntOffsetsExtractor/LLIntOffsetsExtractor.vcxproj:

Ditto

Source/ThirdParty:

  • gtest/msvc/gtest-md.vcxproj: Update for VS2013

Source/WebCore:

  • WebCore.vcxproj/WebCore.vcxproj: Update for VS2013
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto
  • WebCore.vcxproj/WebCoreTestSupport.vcxproj: Ditto

Source/WebInspectorUI:

  • WebInspectorUI.vcxproj/WebInspectorUI.vcxproj: Update for VS2013

Source/WebKit:

  • WebKit.vcxproj/Interfaces/Interfaces.vcxproj: Update for VS2013
  • WebKit.vcxproj/WebKit.sln: Ditto
  • WebKit.vcxproj/WebKit/WebKit.vcxproj: Ditto
  • WebKit.vcxproj/WebKitExportGenerator/WebKitExportGenerator.vcxproj: Ditto
  • WebKit.vcxproj/WebKitGUID/WebKitGUID.vcxproj: Ditto

Source/WTF:

  • WTF.vcxproj/WTF.vcxproj: Update for VS2013
  • WTF.vcxproj/WTF.vcxproj.filters: Ditto

Tools:

Project files must reference vs12_xp for 32-bit builds.

  • DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTree.vcxproj:

Update for VS2013

  • DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTreeLauncher.vcxproj:

Ditto

  • DumpRenderTree/DumpRenderTree.vcxproj/ImageDiff/ImageDiff.vcxproj:

Ditto

  • DumpRenderTree/DumpRenderTree.vcxproj/ImageDiff/ImageDiffLauncher.vcxproj:

Ditto

  • DumpRenderTree/DumpRenderTree.vcxproj/TestNetscapePlugin/TestNetscapePlugin.vcxproj:

Ditto

  • Scripts/webkitdirs.pm:

(visualStudioInstallDir): Specify VS2013
(visualStudioVersion): Ditto.
(setupAppleWinEnv): Use VS2013 in messages
(setupCygwinEnv): Ditto

  • TestWebKitAPI/TestWebKitAPI.vcxproj/TestWebKitAPI.vcxproj:

Update for VS2013

  • WinLauncher/WinLauncher.vcxproj/WinLauncher.vcxproj:

Ditto

  • WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj:

Ditto

  • win/record-memory/record-memory.vcxproj:

Ditto

11:10 AM Changeset in webkit [160547] by ap@apple.com
  • 32 edits in trunk

WebCrypto Key.usages should be ordered alphabetically
https://bugs.webkit.org/show_bug.cgi?id=125696

Reviewed by Darin Adler.

Source/WebCore:

  • crypto/CryptoKey.cpp: (WebCore::CryptoKey::usages): Do it.

LayoutTests:

  • crypto/subtle/aes-cbc-192-encrypt-decrypt-expected.txt:
  • crypto/subtle/aes-cbc-192-encrypt-decrypt.html:
  • crypto/subtle/aes-cbc-256-encrypt-decrypt-expected.txt:
  • crypto/subtle/aes-cbc-256-encrypt-decrypt.html:
  • crypto/subtle/aes-cbc-encrypt-decrypt-expected.txt:
  • crypto/subtle/aes-cbc-encrypt-decrypt-with-padding-expected.txt:
  • crypto/subtle/aes-cbc-encrypt-decrypt-with-padding.html:
  • crypto/subtle/aes-cbc-encrypt-decrypt.html:
  • crypto/subtle/aes-cbc-generate-key-expected.txt:
  • crypto/subtle/aes-cbc-generate-key.html:
  • crypto/subtle/aes-cbc-invalid-length-expected.txt:
  • crypto/subtle/aes-cbc-invalid-length.html:
  • crypto/subtle/aes-kw-wrap-unwrap-aes-expected.txt:
  • crypto/subtle/aes-kw-wrap-unwrap-aes.html:
  • crypto/subtle/aes-postMessage-expected.txt:
  • crypto/subtle/aes-postMessage.html:
  • crypto/subtle/hmac-postMessage-expected.txt:
  • crypto/subtle/hmac-postMessage.html:
  • crypto/subtle/jwk-import-use-values-expected.txt:
  • crypto/subtle/jwk-import-use-values.html:
  • crypto/subtle/postMessage-worker-expected.txt:
  • crypto/subtle/postMessage-worker.html:
  • crypto/subtle/resources/postMessage-worker.js:

(onmessage):

  • crypto/subtle/rsa-oaep-key-manipulation-expected.txt:
  • crypto/subtle/rsa-oaep-key-manipulation.html:
  • crypto/subtle/rsa-oaep-wrap-unwrap-aes-expected.txt:
  • crypto/subtle/rsa-oaep-wrap-unwrap-aes.html:
  • crypto/subtle/rsaes-pkcs1-v1_5-wrap-unwrap-aes-expected.txt:
  • crypto/subtle/rsaes-pkcs1-v1_5-wrap-unwrap-aes.html:
8:27 AM Changeset in webkit [160546] by Darin Adler
  • 2 edits in trunk/Source/WebCore

Make some optimizations for DOM bindings involving vectors
https://bugs.webkit.org/show_bug.cgi?id=125680

Reviewed by Andreas Kling.

  • bindings/js/JSDOMBinding.h:

(WebCore::toJS): Removed unnecessary copying of vectors when converting them
to JavaScript values.
(WebCore::toRefPtrNativeArray): Use reserveInitialCapacity and uncheckedAppend.
(WebCore::toNativeArray): Ditto.
(WebCore::toNativeArguments): Ditto.

7:41 AM Changeset in webkit [160545] by Carlos Garcia Campos
  • 5 edits in trunk/Source/WebCore

REGRESSION(r155784): [GTK] Some methods incorrectly removed in r155784 and deprecated in r158662
https://bugs.webkit.org/show_bug.cgi?id=125692

Reviewed by Martin Robinson.

In r155784 the build was fixed by skipping Console::profile() and
Console::profileEnd(), but the patch also skipped other methods
containing the profile method name. Those were incorrectly
deprecated in r158662 thinking that the property had been removed
in the idl.

  • bindings/gobject/WebKitDOMDeprecated.cpp: Undeprecate

webkit_dom_html_head_element_get_profile and
webkit_dom_html_head_element_set_profile.

  • bindings/gobject/WebKitDOMDeprecated.h: Ditto.
  • bindings/gobject/WebKitDOMDeprecated.symbols: Ditto.
  • bindings/scripts/CodeGeneratorGObject.pm:

(SkipFunction): Skip webkit_dom_console_profile and
webkit_dom_console_profile_end.

6:13 AM Changeset in webkit [160544] by rwlbuis@webkit.org
  • 5 edits
    2 adds in trunk

Clean up SVGScriptElement
https://bugs.webkit.org/show_bug.cgi?id=125527

Reviewed by Darin Adler.

Source/WebCore:

From the Blink port of this bug it becomes clear that svg/dom/SVGScriptElement/script-set-href.svg and
svg/dom/svg-element-attribute-js-null.xhtml still hit an assert in Debug because SVGNames::typeAttr can't
be used with fastGetAttribute in all cases, because it can be animatable. However for SVGScriptElement
it is not animatable, so make isAnimatableAttribute virtual (note Debug only method) and allow typeAttr
in the SVGScriptElement case to be useable for fastGetAttribute.

Test: svg/dom/SVGScriptElement/script-type-attribute.svg

  • svg/SVGElement.h:
  • svg/SVGScriptElement.cpp:

(WebCore::SVGScriptElement::isAnimatableAttribute):

  • svg/SVGScriptElement.h:

LayoutTests:

Add test to verify the new type getter/setter behavior on SVScriptElement.
Specifically, the old behavior was setting the JS type property did not reflect in
the actual content attribute being set, the new behavior is to do set the content
attribute when setting the JS type property.

  • svg/dom/SVGScriptElement/script-type-attribute-expected.txt: Added.
  • svg/dom/SVGScriptElement/script-type-attribute.svg: Added.
4:40 AM Changeset in webkit [160543] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebCore

[GTK] Expose also webkit_dom_document_get_url
https://bugs.webkit.org/show_bug.cgi?id=125691

Reviewed by Martin Robinson.

For some reason we expose the URL property, so it can be accessed
with g_object_get(), but we have a special case to not provide a
public getter.

  • bindings/gobject/webkitdom.symbols: Add new symbol.
  • bindings/scripts/CodeGeneratorGObject.pm:

(GenerateFunctions): Remove the special case of URL property.

4:36 AM Changeset in webkit [160542] by Michał Pakuła vel Rutka
  • 1 edit
    2 deletes in trunk/LayoutTests

Unreviewed EFL gardening

Remove wrong http baselines.

  • platform/efl/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt: Removed.
  • platform/efl/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Removed.
  • platform/efl/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Removed.
2:32 AM Changeset in webkit [160541] by akling@apple.com
  • 6 edits in trunk/Source/WebCore

CSSFilterImageValue constructor should require both image and filter.
<https://webkit.org/b/125056>

Make the CSSFilterImageValue::create() helper take both the image and
filter CSSValues by PassRef since they should never be null.

Tweaked ComputedStyleExtractor::valueForFilter() to return a PassRef
for this to work.

Reviewed by Anders Carlsson.

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

[GTK] Add a unit tests to WebKit2 to test node names
https://bugs.webkit.org/show_bug.cgi?id=125686

Reviewed by Gustavo Noronha Silva.

  • UIProcess/API/gtk/tests/DOMNodeTest.cpp:

(WebKitDOMNodeTest::testTagNames):
(WebKitDOMNodeTest::runTest):
(registerTests):

  • UIProcess/API/gtk/tests/TestDOMNode.cpp:

(testWebKitDOMNodeTagNames):
(beforeAll):

1:56 AM Changeset in webkit [160539] by akling@apple.com
  • 7 edits in trunk/Source/WebCore

StyleResolver::adjustRenderStyle() should take RenderStyle references.
<https://webkit.org/b/125623>

This function doesn't handle null styles being passed, so prevent
it at compile time.

Reviewed by Anders Carlsson.

1:41 AM Changeset in webkit [160538] by zandobersek@gmail.com
  • 2 edits in trunk

[GTK] Remove the -Wno-c++11-extensions compiler option for Clang builds
https://bugs.webkit.org/show_bug.cgi?id=125639

Reviewed by Anders Carlsson.

  • Source/autotools/SetupCompilerFlags.m4: The -Wno-c++11-extensions compiler option was in use

when building with Clang. It is now removed as the C++11 standard is enabled throughout the project.

1:16 AM Changeset in webkit [160537] by zandobersek@gmail.com
  • 3 edits in trunk/Source/WebKit2

Unreviewed. Further GTK WK2 build fixes after r160504.

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkit_web_view_get_snapshot):

  • WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:

(didInitiateLoadForResource):
(willSendRequestForFrame):
(didReceiveResponseForResource):
(didReceiveContentLengthForResource):
(didFinishLoadForResource):
(didFailLoadForResource):
(webkitWebPageDidReceiveMessage):

1:14 AM Changeset in webkit [160536] by Darin Adler
  • 7 edits in trunk/Source/WebCore

Eliminate awkward virtualComputedStyle construction
https://bugs.webkit.org/show_bug.cgi?id=125681

Reviewed by Andreas Kling.

  • dom/Element.cpp:

(WebCore::Element::computedStyle): Tweak coding style a bit.

  • dom/Element.h: Marked computedStyle virtual and got rid of virtualComputedStyle.

This fixes a bug that we would not call SVGElement::computedStyle if we called
it through an Element pointer or reference. Not sure how to get test coverage for this.

  • dom/Node.cpp:

(WebCore::Node::computedStyle): Use a loop instead of recursive virtual calls.

  • dom/Node.h: Made computedStyle virtual and got rid of virtualComputedStyle.
  • svg/SVGElement.cpp:

(WebCore::SVGElement::computedStyle): Tweak coding style a bit.

  • svg/SVGElement.h: Made computedStyle virtual (and FINAL) and got rid fo

virtualComputedStyle.

1:10 AM Changeset in webkit [160535] by Darin Adler
  • 2 edits in trunk/Source/WebCore

Fix a couple stray uses of RefPtr that should release
https://bugs.webkit.org/show_bug.cgi?id=125679

Reviewed by Andreas Kling.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseFilter): Add calls to release, in
one case rearranging the order of operations slightly so we
don't release the pointer before using it.

12:56 AM Changeset in webkit [160534] by ap@apple.com
  • 3 edits
    4 adds in trunk

WebCrypto wrapKey operation doesn't check key usage
https://bugs.webkit.org/show_bug.cgi?id=125675

Reviewed by Darin Adler.

Source/WebCore:

Tests: crypto/subtle/unwrapKey-check-usage.html

crypto/subtle/wrapKey-check-usage.html

  • bindings/js/JSSubtleCryptoCustom.cpp: (WebCore::JSSubtleCrypto::wrapKey):

Added accidentally omitted code. Other operations are fine.

LayoutTests:

  • crypto/subtle/unwrapKey-check-usage-expected.txt: Added.
  • crypto/subtle/unwrapKey-check-usage.html: Added.
  • crypto/subtle/wrapKey-check-usage-expected.txt: Added.
  • crypto/subtle/wrapKey-check-usage.html: Added.
12:35 AM Changeset in webkit [160533] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed GTK build fix after r160509.

  • GNUmakefile.list.am: MessageSender.(cpp|h) files were moved to Platform/IPC.
12:24 AM Changeset in webkit [160532] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

GTK buildfix after r160504.

Patch by Dániel Bátyai <Batyai.Daniel@stud.u-szeged.hu> on 2013-12-13
Reviewed by Csaba Osztrogonác.

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(webkit_web_context_prefetch_dns):

12:16 AM Changeset in webkit [160531] by Martin Robinson
  • 4 edits
    1 add in trunk

Adding a .ycm_extra_conf file for webkitGtk
https://bugs.webkit.org/show_bug.cgi?id=119618

Patch by Martin Robinson <mrobinson@igalia.com> and Danilo Cesar Lemes de Paula <danilo.cesar@collabora.co.uk> on 2013-12-11
Reviewed by Gustavo Noronha Silva.

Added a YouCompleteMe flag discovery script for Vim and the GTK+ port. The script
read the GTK+ build files to determine dynamically what flags to compile a source
file with. This allows Vim to provide auto-complete for C++/C language. See
https://github.com/Valloric/YouCompleteMe for how to use this file.

.:

  • .gitignore: Ignore the YCM symlinks in the tree.

Tools:

  • gtk/common.py:

(get_build_path): Added a fatal argument to build_path to avoid crashing YCM on failure.

  • gtk/ycm_extra_conf.py: Added.
Note: See TracTimeline for information about the timeline view.