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

Timeline



Jun 11, 2014:

11:36 PM Changeset in webkit [169882] by dburkart@apple.com
  • 3 edits in tags/Safari-538.39.41/WebKitLibraries

Rolling out r169873

11:36 PM Changeset in webkit [169881] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebKit2

Fix build break on EFL and GTK ports since r169820
https://bugs.webkit.org/show_bug.cgi?id=133786

Reviewed by Philippe Normand.

ENABLE_PRIMARY_SNAPSHOTTED_PLUGIN_HEURISTIC macro are missing in PluginView::pluginSnapshotTimerFired().

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::pluginSnapshotTimerFired):

11:18 PM Changeset in webkit [169880] by Csaba Osztrogonác
  • 5 edits in trunk/Source

[EFL][GTK] Ultimate fix not to have build failures
in the future because of "#if TARGET_OS_IPHONE" guards.

Unreviewed buildfix.

Source/WebKit2:
Revert the previous wrong fix attempt r169879.

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

Source/WTF:

  • wtf/Platform.h: Define TARGET_OS_IPHONE to 0 on EFL and GTK.
10:45 PM Changeset in webkit [169879] by Csaba Osztrogonác
  • 3 edits in trunk/Source/WebKit2

Fix build break on EFL port since r169869
https://bugs.webkit.org/show_bug.cgi?id=133785

Unreviewed, fix a build break on EFL port.

Patch by Gyuyoung Kim <gyuyoung.kim@samsung.com> on 2014-06-11

  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: Use defined(TARGET_OS_IPHONE).
  • WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h: ditto.
10:22 PM Changeset in webkit [169878] by commit-queue@webkit.org
  • 2 edits in trunk

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

rollout wrong build fix approach for EFL port (Requested by
gyuyoung on #webkit).

Reverted changeset:

"Unreviewed, EFL build fix since r169869."
http://trac.webkit.org/changeset/169877

10:03 PM Changeset in webkit [169877] by gyuyoung.kim@samsung.com
  • 2 edits in trunk

Unreviewed, EFL build fix since r169869.

Additionally literal-suffix is removed in EFL compile flag, because it is duplicated.

  • Source/cmake/WebKitHelpers.cmake: Treat undef error as build warning.
8:24 PM Changeset in webkit [169876] by bshafiei@apple.com
  • 2 edits in tags/Safari-538.39.41/Source/WebCore

Re-merged r169855. <rdar://problem/16746383>

8:12 PM Changeset in webkit [169875] by bshafiei@apple.com
  • 2 edits in tags/Safari-538.39.41/Source/WebCore

Re-merged r169843. <rdar://problem/16746383>

8:09 PM Changeset in webkit [169874] by bshafiei@apple.com
  • 11 edits in tags/Safari-538.39.41/Source/WebCore

Re-merged r169830. <rdar://problem/16746383>

7:55 PM Changeset in webkit [169873] by bshafiei@apple.com
  • 3 edits in tags/Safari-538.39.41/WebKitLibraries

Re-merged r169817. <rdar://problem/17009091>

7:24 PM Changeset in webkit [169872] by mmaxfield@apple.com
  • 4 edits
    2 adds in trunk

SVGGlyphToPathTranslator ASSERTs when encountering a missing glyph in an SVG font
https://bugs.webkit.org/show_bug.cgi?id=133528

Reviewed by Simon Fraser.

Source/WebCore:
Turns out this assertion is benign. We can take an early out of advance() (which
is then handled properly by Font::dashesForIntersectionsWithRect()

Test: svg/custom/skip-underline-missing-glyph.html

  • platform/graphics/mac/FontMac.mm:

(WebCore::Font::dashesForIntersectionsWithRect): Rather than skip partial results,
don't skip anything at all to be consistent.

  • rendering/svg/SVGTextRunRenderingContext.cpp:

(WebCore::SVGGlyphToPathTranslator::advance): Take an early out to avoid an ASSERT.

LayoutTests:
Make sure that no ASSERT occurs in this situation. In addition, make sure that the
whole element doesn't get skip:ink gaps. This will need to be updated when we
support SVG + non-SVG mixed runs.

  • svg/custom/skip-underline-missing-glyph-expected.html: Added
  • svg/custom/skip-underline-missing-glyph.html: Added
7:11 PM Changeset in webkit [169871] by dburkart@apple.com
  • 3 edits in tags/Safari-538.39.41/WebKitLibraries

Roll out changes from 17009091

7:10 PM Changeset in webkit [169870] by dburkart@apple.com
  • 12 edits in tags/Safari-538.39.41/Source/WebCore

Roll out changes for 16746383.

7:03 PM Changeset in webkit [169869] by Simon Fraser
  • 14 edits in trunk

[iOS WK2] Give WebKitTestRunner a viewport configuration with initial scale=1 for testing
https://bugs.webkit.org/show_bug.cgi?id=133779

Reviewed by Benjamin Poulain.

Source/WebCore:

Add a "testing" viewport configuration with initial scale of 1.

  • WebCore.exp.in:
  • page/ViewportConfiguration.cpp:

(WebCore::ViewportConfiguration::testingParameters):

  • page/ViewportConfiguration.h:

Source/WebKit2:

Support a custom viewport configuration for testing, on iOS.

  • UIProcess/API/ios/WKViewIOS.mm:

(-[WKView _frameOrBoundsChanged]): Call setViewportConfigurationMinimumLayoutSize()
just as WKWebView does.

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

(WKBundlePageSetUseTestingViewportConfiguration): New SPI to set a viewport config for testing.

  • WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h: Ditto.
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::setUseTestingViewportConfiguration):
(WebKit::WebPage::isUsingTestingViewportConfiguration):

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::resetViewportDefaultConfiguration):

Tools:

Tell the WebPage to use the testing viewport configuration from the injected bundle.

  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::didReceiveMessage): Code cleanup.

  • WebKitTestRunner/InjectedBundle/cocoa/InjectedBundlePageCocoa.mm:

(WTR::InjectedBundlePage::platformDidStartProvisionalLoadForFrame): Call WKBundlePageSetUseTestingViewportConfiguration()
on iOS.

5:46 PM Changeset in webkit [169868] by psolanki@apple.com
  • 2 edits in trunk/Source/WebCore

Keep CFDataRefs in SharedBuffer instead of merging them
https://bugs.webkit.org/show_bug.cgi?id=133775

Reviewed by Alexey Proskuryakov.

Instead of merging the CFDataRefs into one buffer, save them in as CFDataRefs in
SharedBuffer. They will get merged when code calls buffer() later on.

No new tests because no functional changes.

  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::ResourceHandle::handleDataArray):

5:39 PM Performance Tests edited by clopez@igalia.com
Update ports and links (diff)
5:32 PM Changeset in webkit [169867] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/mac

WebFrameNetworkContext should not have a sourceApplicationIdentifier in WK1.
https://bugs.webkit.org/show_bug.cgi?id=133772

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-06-11
Reviewed by Jer Noble.

Return empty string from sourceApplicationIdentifier for WK1.

  • WebCoreSupport/WebFrameNetworkingContext.mm:

(WebFrameNetworkingContext::sourceApplicationIdentifier):

5:30 PM Changeset in webkit [169866] by ap@apple.com
  • 4 edits in trunk

editing/selection/selection-in-iframe-removed-crash.html or selection-invalid-offset.html crashes intermittently
https://bugs.webkit.org/show_bug.cgi?id=111521
<rdar://problem/15159351>

Reviewed by Brady Eidson.

Source/WebCore:
Covered by existing tests.

  • loader/DocumentLoader.cpp: (WebCore::DocumentLoader::commitData): Bail out if the

load was canceled from under receivedFirstData(). Since this is where we commit the
load, there are ample opportunities for scripts or clients to do anything.

LayoutTests:

  • platform/mac/TestExpectations: Removed expectations for the tests.
5:30 PM Changeset in webkit [169865] by dburkart@apple.com
  • 3 edits in tags/Safari-538.39.41/Source/WebCore

Merged r169855.

5:25 PM Changeset in webkit [169864] by fpizlo@apple.com
  • 15 edits in branches/ftlopt/Source/JavaScriptCore

Readded native calling to the FTL and Split the DFG nodes
Call and Construct into NativeCall and NativeConstruct
to better represent their semantics.
https://bugs.webkit.org/show_bug.cgi?id=133660

Reviewed by Filip Pizlo.

  • dfg/DFGAbstractInterpreterInlines.h: (JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects): Added NativeCall and NativeConstruct case
  • dfg/DFGByteCodeParser.cpp: (JSC::DFG::ByteCodeParser::addCall): added NativeCall case. (JSC::DFG::ByteCodeParser::handleCall): set to return NativeCall or NativeConstruct instead of Call or Construct in the presence of a native function.
  • dfg/DFGClobberize.h: (JSC::DFG::clobberize): added NativeCall and NativeConstruct case.
  • dfg/DFGDoesGC.cpp: (JSC::DFG::doesGC): added NativeCall and NativeConstruct case.
  • dfg/DFGFixupPhase.cpp: (JSC::DFG::FixupPhase::fixupNode): added NativeCall and NativeConstruct case.
  • dfg/DFGNode.h: (JSC::DFG::Node::hasHeapPrediction): added NativeCall and NativeConstruct case. (JSC::DFG::Node::canBeKnownFunction): changed to NativeCall and NativeConstruct. (JSC::DFG::Node::hasKnownFunction): changed to NativeCall and NativeConstruct.
  • dfg/DFGNodeType.h: added NativeCall and NativeConstruct.
  • dfg/DFGPredictionPropagationPhase.cpp: (JSC::DFG::PredictionPropagationPhase::propagate): added NativeCall and NativeConstruct case.
  • dfg/DFGSafeToExecute.h: (JSC::DFG::safeToExecute): added NativeCall and NativeConstruct case.
  • dfg/DFGSpeculativeJIT32_64.cpp: (JSC::DFG::SpeculativeJIT::emitCall): ditto (JSC::DFG::SpeculativeJIT::compile): ditto
  • dfg/DFGSpeculativeJIT64.cpp: (JSC::DFG::SpeculativeJIT::emitCall): ditto (JSC::DFG::SpeculativeJIT::compile): ditto
  • ftl/FTLCapabilities.cpp: (JSC::FTL::canCompile): ditto
  • ftl/FTLLowerDFGToLLVM.cpp: (JSC::FTL::LowerDFGToLLVM::lower): ditto (JSC::FTL::LowerDFGToLLVM::compileNode): ditto. (JSC::FTL::LowerDFGToLLVM::compileNativeCallOrConstruct): Added. (JSC::FTL::LowerDFGToLLVM::compileCallOrConstruct): removed NativeCall and NativeConstruct functionality. (JSC::FTL::LowerDFGToLLVM::didOverflowStack): added NativeCall and NativeConstruct case.
  • runtime/JSCJSValue.h: added JS_EXPORT_PRIVATE to toInteger as it is apparently needed.

Patch by Matthew Mirman <mmirman@apple.com> on 2014-06-11

5:14 PM Changeset in webkit [169863] by timothy_horton@apple.com
  • 10 edits in trunk/Source/WebKit2

Remove unused VisibleContentRectUpdateInfo update ID
https://bugs.webkit.org/show_bug.cgi?id=133777

Reviewed by Benjamin Poulain.

Remove some unused code.

  • Shared/VisibleContentRectUpdateInfo.cpp:

(WebKit::VisibleContentRectUpdateInfo::encode):
(WebKit::VisibleContentRectUpdateInfo::decode):

  • Shared/VisibleContentRectUpdateInfo.h:

(WebKit::VisibleContentRectUpdateInfo::VisibleContentRectUpdateInfo):
(WebKit::operator==):
(WebKit::VisibleContentRectUpdateInfo::updateID): Deleted.

  • Shared/mac/RemoteLayerTreeTransaction.h:

(WebKit::RemoteLayerTreeTransaction::setLastVisibleContentRectUpdateID): Deleted.
(WebKit::RemoteLayerTreeTransaction::lastVisibleContentRectUpdateID): Deleted.

  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::encode):
(WebKit::RemoteLayerTreeTransaction::decode):

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::nextVisibleContentRectUpdateID): Deleted.
(WebKit::WebPageProxy::lastVisibleContentRectUpdateID): Deleted.

  • UIProcess/ios/WKContentView.mm:

(-[WKContentView didUpdateVisibleRect:unobscuredRect:unobscuredRectInScrollViewCoordinates:scale:minimumScale:inStableState:isChangingObscuredInsetsInteractively:]):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
(WebKit::WebPage::willCommitLayerTree):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::updateVisibleContentRects):

5:14 PM Changeset in webkit [169862] by Alan Bujtas
  • 3 edits
    2 adds in trunk

Subpixel rendering: RenderBox's content clipping should clip on device pixel boundary.
https://bugs.webkit.org/show_bug.cgi?id=133767
<rdar://problem/17272365>

Reviewed by Simon Fraser.

Push RenderBox's content clipping to device pixel boundaries. Integral snapping makes
content cut off prematurely.

Source/WebCore:
Test: fast/inline-block/hidpi-margin-top-with-subpixel-value-and-overflow-hidden.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::pushContentsClip):

LayoutTests:

  • fast/inline-block/hidpi-margin-top-with-subpixel-value-and-overflow-hidden-expected.html: Added.
  • fast/inline-block/hidpi-margin-top-with-subpixel-value-and-overflow-hidden.html: Added.
4:57 PM Changeset in webkit [169861] by andersca@apple.com
  • 4 edits in trunk/Source/WebCore

Remove XHRReplayData::addHeader
https://bugs.webkit.org/show_bug.cgi?id=133776

Reviewed by Antti Koivisto.

Just pass the HTTP header map to XHRReplayData::create directly.

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::willLoadXHR):

  • inspector/NetworkResourcesData.cpp:

(WebCore::XHRReplayData::create):
(WebCore::XHRReplayData::XHRReplayData):
(WebCore::XHRReplayData::addHeader): Deleted.

  • inspector/NetworkResourcesData.h:
4:53 PM Changeset in webkit [169860] by Lucas Forschler
  • 5 edits in branches/safari-537.60-branch/Source

Versioning.

4:49 PM Changeset in webkit [169859] by Lucas Forschler
  • 1 copy in tags/Safari-537.60.18

New Tag.

4:43 PM Changeset in webkit [169858] by dburkart@apple.com
  • 5 edits in tags/Safari-538.39.41/Source

Version bump.

4:42 PM Changeset in webkit [169857] by dburkart@apple.com
  • 2 edits in tags/Safari-538.39.41/Source/WebCore

Merge r169843.

4:17 PM Changeset in webkit [169856] by Brent Fulgham
  • 3 edits in branches/safari-537.60-branch/Source/WebCore

Merge r169842.

2014-06-11 Brent Fulgham <Brent Fulgham>

[Win] Avoid deadlock with AVFoundation
https://bugs.webkit.org/show_bug.cgi?id=133762
<rdar://problem/17128248>

Reviewed by Eric Carlson.

Always invoke our notifications asynchronously so that we do not
execute long-running code while holding the AVFWrapper map mutex
lock. AVFoundationCF callbacks can deadlock if we call into AVF
while holding this lock.

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp: (WebCore::MediaPlayerPrivateAVFoundation::scheduleMainThreadNotification):
  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp: (WebCore::AVFWrapper::legibleOutputCallback): Correct bad assertion.
4:12 PM Changeset in webkit [169855] by aestes@apple.com
  • 3 edits in trunk/Source/WebCore

Fix the Mac build.

  • WebCore.exp.in: Exported ZN7WebCore19ResourceRequestBase15setHTTPReferrerERKN3WTF6StringE
  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm: Moved ivar declarations to @interface to account for the 32-bit legacy runtime.
4:06 PM Changeset in webkit [169854] by mitz@apple.com
  • 3 edits
    2 adds in trunk/Source/WebKit2

[Cocoa] Move CompletionHandlerCallChecker into a separate file
https://bugs.webkit.org/show_bug.cgi?id=133774

Reviewed by Anders Carlsson.

  • Shared/Cocoa/CompletionHandlerCallChecker.h: Added.
  • Shared/Cocoa/CompletionHandlerCallChecker.mm: Added.

(WebKit::CompletionHandlerCallChecker::create):
(WebKit::CompletionHandlerCallChecker::CompletionHandlerCallChecker):
(WebKit::CompletionHandlerCallChecker::~CompletionHandlerCallChecker):
(WebKit::CompletionHandlerCallChecker::didCallCompletionHandler):
(WebKit::CompletionHandlerCallChecker::classImplementingDelegateMethod):

  • UIProcess/Cocoa/UIDelegate.mm:

(WebKit::CompletionHandlerCallChecker::create): Deleted.
(WebKit::CompletionHandlerCallChecker::~CompletionHandlerCallChecker): Deleted.
(WebKit::CompletionHandlerCallChecker::didCallCompletionHandler): Deleted.
(WebKit::CompletionHandlerCallChecker::CompletionHandlerCallChecker): Deleted.
(WebKit::CompletionHandlerCallChecker::classImplementingDelegateMethod): Deleted.

  • WebKit2.xcodeproj/project.pbxproj:
3:55 PM Changeset in webkit [169853] by mhahnenberg@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Inline caching should try to flatten uncacheable dictionaries
https://bugs.webkit.org/show_bug.cgi?id=133683

Reviewed by Geoffrey Garen.

There exists a body of JS code that deletes properties off of objects (especially function/constructor objects),
which puts them into an uncacheable dictionary state. This prevents all future inline caching for these objects.
If properties are deleted out of the object during its initialization, we can enable caching for that object by
attempting to flatten it when we see we're trying to do inline caching with that object. We then record that we
performed this flattening optimization in the object's Structure. If it ever re-enters the uncacheable dictionary
state then we can just give up on caching that object.

In refactoring some of the code in tryCacheGetById and tryBuildGetByIdList to reduce some duplication, I added
the InlineCacheAction enum, a new way to indicate the success or failure of an inline caching attempt. I changed
the other inline caching functions to return this enum rather than the opaque booleans that we were previously
returning.

  • jit/Repatch.cpp:

(JSC::actionForCell):
(JSC::tryCacheGetByID):
(JSC::repatchGetByID):
(JSC::tryBuildGetByIDList):
(JSC::buildGetByIDList):
(JSC::tryCachePutByID):
(JSC::repatchPutByID):
(JSC::tryBuildPutByIdList):
(JSC::buildPutByIdList):
(JSC::tryRepatchIn):
(JSC::repatchIn):

  • runtime/Structure.cpp:

(JSC::Structure::Structure):
(JSC::Structure::flattenDictionaryStructure):

  • runtime/Structure.h:

(JSC::Structure::hasBeenFlattenedBefore):

3:52 PM Changeset in webkit [169852] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

Make FrameView 8 bytes smaller
https://bugs.webkit.org/show_bug.cgi?id=133771

Reviewed by Anders Carlsson.

m_borderX and m_borderY were historical cruft.

  • page/FrameView.cpp:

(WebCore::FrameView::reset):

  • page/FrameView.h:
3:49 PM Changeset in webkit [169851] by mhock@apple.com
  • 6 edits in trunk/Source/WebKit2

[iOS] Clear UIProcess visual state after WebProcess crash
https://bugs.webkit.org/show_bug.cgi?id=133664
<rdar://problem/16952742>

Reviewed by Benjamin Poulain.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _didRelaunchProcess]):

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::didRelaunchProcess):

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

(WebKit::RemoteLayerTreeHost::~RemoteLayerTreeHost):
(WebKit::RemoteLayerTreeHost::clearLayers):

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

Implement swipeWithEvent for non-fluid swipes
https://bugs.webkit.org/show_bug.cgi?id=133766
<rdar://problem/17126889>

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKView.mm:

(-[WKView swipeWithEvent:]):
On non-fluid swipes, go back or forward depending on the swipe direction.

3:41 PM Changeset in webkit [169849] by ddkilzer@apple.com
  • 3 edits
    3 adds in trunk

WindowFeatures arguments shoud ignore invalid characters in values
<http://webkit.org/b/133703>
<rdar://problem/17254118>

Reviewed by Andy Estes.

Source/WebCore:

Test: fast/dom/Window/window-property-invalid-characters-ignored.html

  • page/WindowFeatures.cpp:

(WebCore::WindowFeatures::WindowFeatures): Set |length| based on
|buffer|, not |features|. Switch to using a for loop. Switch
to unsigned types since we are working with positive offsets
into a String.

LayoutTests:

  • fast/dom/Window/resources/window-property-invalid-characters-ignored.html: Added.
  • fast/dom/Window/window-property-invalid-characters-ignored-expected.txt: Added.
  • fast/dom/Window/window-property-invalid-characters-ignored.html: Added.
3:40 PM Changeset in webkit [169848] by ddkilzer@apple.com
  • 3 edits
    2 adds in trunk

Viewport arguments should ignore invalid characters in values
<http://webkit.org/b/133555>
<rdar://problem/17179650>

Reviewed by Daniel Bates.

Source/WebCore:

Test: fast/viewport/viewport-warnings-7.html

  • dom/Document.cpp:

(WebCore::Document::processArguments): Set |length| based on
|buffer|, not |features|. Switch to using a for loop. Switch
to unsigned types since we are working with positive offsets
into a String.

LayoutTests:

  • fast/viewport/viewport-warnings-7-expected.txt: Added.
  • fast/viewport/viewport-warnings-7.html: Added.
3:34 PM Changeset in webkit [169847] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

Move some HTTP header field accessors to ResourceRequestBase.cpp
https://bugs.webkit.org/show_bug.cgi?id=133773

Reviewed by Andreas Kling.

This will avoid having to include HTTPHeaderNames.h from ResourceRequestBase.h.

  • platform/network/ResourceRequestBase.cpp:

(WebCore::ResourceRequestBase::httpContentType):
(WebCore::ResourceRequestBase::setHTTPContentType):
(WebCore::ResourceRequestBase::httpReferrer):
(WebCore::ResourceRequestBase::setHTTPReferrer):
(WebCore::ResourceRequestBase::httpOrigin):
(WebCore::ResourceRequestBase::setHTTPOrigin):
(WebCore::ResourceRequestBase::httpUserAgent):
(WebCore::ResourceRequestBase::setHTTPUserAgent):
(WebCore::ResourceRequestBase::httpAccept):
(WebCore::ResourceRequestBase::setHTTPAccept):

  • platform/network/ResourceRequestBase.h:

(WebCore::ResourceRequestBase::httpContentType): Deleted.
(WebCore::ResourceRequestBase::setHTTPContentType): Deleted.
(WebCore::ResourceRequestBase::httpReferrer): Deleted.
(WebCore::ResourceRequestBase::setHTTPReferrer): Deleted.
(WebCore::ResourceRequestBase::httpOrigin): Deleted.
(WebCore::ResourceRequestBase::setHTTPOrigin): Deleted.
(WebCore::ResourceRequestBase::httpUserAgent): Deleted.
(WebCore::ResourceRequestBase::setHTTPUserAgent): Deleted.
(WebCore::ResourceRequestBase::httpAccept): Deleted.
(WebCore::ResourceRequestBase::setHTTPAccept): Deleted.

3:31 PM Changeset in webkit [169846] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Xcode cannot infer that the WebKit target implicitly depends on WebCore.framework
https://bugs.webkit.org/show_bug.cgi?id=133765

Reviewed by Anders Carlsson.

  • Configurations/WebKit.xcconfig: Move linking against WebCore from OTHER_LDFLAGS here...
  • WebKit2.xcodeproj/project.pbxproj: ...to the Link Binary With Libraries build phase here.
3:08 PM Changeset in webkit [169845] by Simon Fraser
  • 7 edits in trunk/Tools

WTR cleanup: push per-test viewport configuration into TestController, where platforms can customize it
https://bugs.webkit.org/show_bug.cgi?id=133770

Reviewed by Anders Carlsson.

Push the per-test view configuration up to TestController, so that platforms
can modify the behavior. This also allows platform-specific changes (e.g.
for threaded scrolling) to made without #ifefs.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::updateWebViewSizeForTest):
(WTR::TestController::updateWindowScaleForTest):
(WTR::shouldUseFixedLayout):
(WTR::TestController::updateLayoutTypeForTest):
(WTR::TestController::platformConfigureViewForTest):
(WTR::TestController::configureViewForTest):

  • WebKitTestRunner/TestController.h:
  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::invoke):
(WTR::sizeWebViewForCurrentTest): Deleted.
(WTR::changeWindowScaleIfNeeded): Deleted.
(WTR::shouldUseThreadedScrolling): Deleted.
(WTR::updateThreadedScrollingForCurrentTest): Deleted.
(WTR::shouldUseFixedLayout): Deleted.
(WTR::updateLayoutType): Deleted.

  • WebKitTestRunner/TestInvocation.h:

(WTR::TestInvocation::pathOrURL):

  • WebKitTestRunner/ios/TestControllerIOS.mm:

(WTR::shouldMakeViewportFlexible):
(WTR::TestController::platformConfigureViewForTest):

  • WebKitTestRunner/mac/TestControllerMac.mm:

(WTR::shouldUseThreadedScrolling):
(WTR::TestController::platformConfigureViewForTest):

3:01 PM Changeset in webkit [169844] by andersca@apple.com
  • 4 edits in trunk/Source/WebCore

Remove some more unneeded member functions from HTTPHeaderMap
https://bugs.webkit.org/show_bug.cgi?id=133768

Reviewed by Simon Fraser.

  • loader/CrossOriginAccessControl.cpp:

(WebCore::createAccessControlPreflightRequest):

  • platform/network/HTTPHeaderMap.cpp:

(WebCore::HTTPHeaderMap::find): Deleted.
(WebCore::HTTPHeaderMap::keys): Deleted.

  • platform/network/HTTPHeaderMap.h:
2:57 PM Changeset in webkit [169843] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviwed Mac release build fix; mark the keyPath parameter as unused.

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

(-[WebAVSampleBufferErrorListener observeValueForKeyPath:ofObject:change:context:]):

2:49 PM WebKitGTK/KeepingTheTreeGreen edited by ltilve@igalia.com
(diff)
2:43 PM Changeset in webkit [169842] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[Win] Avoid deadlock with AVFoundation
https://bugs.webkit.org/show_bug.cgi?id=133762
<rdar://problem/17128248>

Reviewed by Eric Carlson.

Always invoke our notifications asynchronously so that we do not
execute long-running code while holding the AVFWrapper map mutex
lock. AVFoundationCF callbacks can deadlock if we call into AVF
while holding this lock.

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::scheduleMainThreadNotification):

2:42 PM Changeset in webkit [169841] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

[CMake] One more URTBF after r169826.

  • CMakeLists.txt: Generate files to the proper place.
2:38 PM Changeset in webkit [169840] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Tools

[EFL] Add dependencies packages to efl install-dependencies file
https://bugs.webkit.org/show_bug.cgi?id=133720

Reviewed by Csaba Osztrogonác.

After r169785, EFL port starts to use efl 1.9 ver. EFL port needs to
install doxygen and libssl-dev because efl 1.9 depends on those libraries.

  • efl/install-dependencies:
2:33 PM Changeset in webkit [169839] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

[CMake]URTBF after r169826.

  • CMakeLists.txt: Typo fix.
2:32 PM Changeset in webkit [169838] by dburkart@apple.com
  • 11 edits in tags/Safari-538.39.41/Source/WebCore

Merge r169830.

2:29 PM Changeset in webkit [169837] by zoltan@webkit.org
  • 2 edits in trunk/Tools

Unreviewed. Moving myself to the list of reviewers.

  • Scripts/webkitpy/common/config/contributors.json:
2:28 PM Changeset in webkit [169836] by andersca@apple.com
  • 4 edits in trunk/Source/WebCore

Get rid of an unneeded HTTPHeaderMap::remove overload
https://bugs.webkit.org/show_bug.cgi?id=133763

Reviewed by Andreas Kling.

Change HTTPHeaderMap::remove to return whether an entry was removed or not and simplify
ResourceRequestBase::clearHTTPAuthorization.

  • platform/network/HTTPHeaderMap.cpp:

(WebCore::HTTPHeaderMap::remove):

  • platform/network/HTTPHeaderMap.h:
  • platform/network/ResourceRequestBase.cpp:

(WebCore::ResourceRequestBase::clearHTTPAuthorization):

2:28 PM Changeset in webkit [169835] by dburkart@apple.com
  • 3 edits in tags/Safari-538.39.41/WebKitLibraries

Update WKSI for <rdar://problem/17009091>.

Rubber stamped by Eric Carlson.

  • libWebKitSystemInterfaceMavericks.a:
  • libWebKitSystemInterfaceMountainLion.a:
2:28 PM Changeset in webkit [169834] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

[EFL] URTBF after r169823.

  • bindings/ScriptValue.cpp: Missing include added.
2:21 PM Changeset in webkit [169833] by dburkart@apple.com
  • 1 copy in tags/Safari-538.39.41

Tagging.

2:11 PM Changeset in webkit [169832] by ddkilzer@apple.com
  • 2 edits
    9 adds in trunk/LayoutTests

[iOS] Enable fast/viewport tests
<http://webkit.org/b/133754>

Reviewed by Andy Estes.

  • platform/ios-sim/Skipped:
  • Stop skipping fast/viewport tests.
  • platform/ios-sim/fast/viewport/viewport-legacy-handheldfriendly-expected.txt: Added.
  • platform/ios-sim/fast/viewport/viewport-legacy-mobileoptimized-2-expected.txt: Added.
  • platform/ios-sim/fast/viewport/viewport-legacy-mobileoptimized-3-expected.txt: Added.
  • platform/ios-sim/fast/viewport/viewport-legacy-mobileoptimized-expected.txt: Added.
  • platform/ios-sim/fast/viewport/viewport-legacy-ordering-5-expected.txt: Added.
  • platform/ios-sim/fast/viewport/viewport-legacy-ordering-6-expected.txt: Added.
  • platform/ios-sim/fast/viewport/viewport-legacy-xhtmlmp-expected.txt: Added.
  • platform/ios-sim/fast/viewport/viewport-legacy-xhtmlmp-remove-and-add-expected.txt: Added.
  • iOS never supported these "legacy" viewport modes, so add platform-specific results with current behavior.
2:04 PM Changeset in webkit [169831] by rniwa@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Remove an unnecessary asObject(this) call inside JSObject::fastGetOwnPropertySlot.

Rubber-stamped by Andreas Kling.

  • runtime/JSObject.h:

(JSC::JSObject::fastGetOwnPropertySlot):

2:02 PM Changeset in webkit [169830] by jer.noble@apple.com
  • 11 edits in trunk/Source/WebCore

[EME][Mac] Propagate errors from AVSampleBufferDisplayLayer through to MSE
https://bugs.webkit.org/show_bug.cgi?id=133747

Reviewed by Eric Carlson.

Abstract out the delivery of errors in MediaKeySession into its own method, which can be triggered by
CDMSession objects through the CDMSessionClient interface:

  • Modules/encryptedmedia/MediaKeySession.cpp:

(WebCore::MediaKeySession::keyRequestTimerFired):
(WebCore::MediaKeySession::addKeyTimerFired):
(WebCore::MediaKeySession::sendMessage):
(WebCore::MediaKeySession::sendError):

  • Modules/encryptedmedia/MediaKeySession.h:
  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveRenderingError):

  • Modules/mediasource/SourceBuffer.h:
  • platform/graphics/SourceBufferPrivateClient.h:
  • platform/graphics/CDMSession.h:

Add an Objective-C object which can listen for error KVO notifications:

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

(WebCore::SourceBufferPrivateAVFObjCErrorClient::~SourceBufferPrivateAVFObjCErrorClient):

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

(-[WebAVSampleBufferErrorListener initWithParent:WebCore::]):
(-[WebAVSampleBufferErrorListener dealloc]):
(-[WebAVSampleBufferErrorListener invalidate]):
(-[WebAVSampleBufferErrorListener beginObservingLayer:]):
(-[WebAVSampleBufferErrorListener stopObservingLayer:]):
(-[WebAVSampleBufferErrorListener beginObservingRenderer:]):
(-[WebAVSampleBufferErrorListener stopObservingRenderer:]):
(-[WebAVSampleBufferErrorListener observeValueForKeyPath:ofObject:change:context:]):
(-[WebAVSampleBufferErrorListener layerFailedToDecode:]):
(WebCore::SourceBufferPrivateAVFObjC::SourceBufferPrivateAVFObjC):
(WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled):
(WebCore::SourceBufferPrivateAVFObjC::registerForErrorNotifications):
(WebCore::SourceBufferPrivateAVFObjC::unregisterForErrorNotifications):
(WebCore::SourceBufferPrivateAVFObjC::layerDidReceiveError):
(WebCore::SourceBufferPrivateAVFObjC::rendererDidReceiveError):

Register for the new error notifications:

  • platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h:

(WebCore::CDMSessionMediaSourceAVFObjC::~CDMSessionMediaSourceAVFObjC): Moved to source file.

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

(WebCore::CDMSessionMediaSourceAVFObjC::CDMSessionMediaSourceAVFObjC): Register for error notifications.
(WebCore::CDMSessionMediaSourceAVFObjC::~CDMSessionMediaSourceAVFObjC): Unregister for error notifications.
(WebCore::CDMSessionMediaSourceAVFObjC::layerDidReceiveError): Pass through to CDMSessionClient.
(WebCore::CDMSessionMediaSourceAVFObjC::rendererDidReceiveError): Ditto.

1:49 PM Changeset in webkit [169829] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Don't force CharacterData to override getOwnPropertySlot.
<https://webkit.org/b/133717>

This was preventing us from taking the GetByVal fast path for Text nodes
since they inherit from CharacterData and having a "length" attribute
meant we gave them a custom getOwnPropertySlot, despite not actually
needing it for anything.

Reviewed by Anders Carlsson.

  • bindings/scripts/CodeGeneratorJS.pm:

(AttributeShouldBeOnInstance):

1:46 PM Changeset in webkit [169828] by ap@apple.com
  • 2 edits in trunk/LayoutTests

inspector-protocol/debugger/breakpoint-action-detach.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=133761

  • TestExpectations: Skipped it. Updated bug number for another inspector-protocol

test while at it.

1:43 PM Changeset in webkit [169827] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

[wk2] Don't dispatch view state changes immediately
https://bugs.webkit.org/show_bug.cgi?id=133713

Reviewed by Simon Fraser.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::viewStateDidChange):
(WebKit::WebPageProxy::dispatchViewStateChange):
(WebKit::WebPageProxy::updateViewState): Deleted.

  • UIProcess/WebPageProxy.h:

On PLATFORM(COCOA), wait until just before CA is going to commit the UI process layer
tree to dispatch view state changes to the Web process. This avoids sending multiple
view state change messages to the Web process within one run-loop cycle, for example
when a view is moved around in the view hierarchy but the view state otherwise remains the same.

1:42 PM Changeset in webkit [169826] by andersca@apple.com
  • 5 edits
    2 adds in trunk/Source/WebCore

Add a script that generates a gperf hash for HTTP header names
https://bugs.webkit.org/show_bug.cgi?id=133760

Reviewed by Andreas Kling.

This is the first step towards getting rid of AtomicString from HTTPHeaderMap.

  • CMakeLists.txt:
  • DerivedSources.make:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/network/HTTPHeaderNames.in: Added.
  • platform/network/create-http-header-name-table: Added.

(HTTPHeaderName):

1:37 PM Changeset in webkit [169825] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

Make it possible for waitForAndDispatchImmediately to bail if a sync message comes in from the other direction
https://bugs.webkit.org/show_bug.cgi?id=133708

Reviewed by Anders Carlsson.

  • Platform/IPC/Connection.cpp:

(IPC::WaitForMessageState):
(IPC::Connection::Connection):
(IPC::Connection::waitForMessage):
(IPC::Connection::processIncomingMessage):
(IPC::Connection::connectionDidClose):

  • Platform/IPC/Connection.h:

(IPC::Connection::waitForAndDispatchImmediately):
Remove the waitForMessageMap, and assert that we're only ever waiting for one message at a time.
This simplifies this code a bit, and we never wait on more than one message at a time, so it was unnecessary.

Add a flag to waitForAndDispatchImmediately, InterruptWaitingIfSyncMessageArrives, which will cause
waitForAndDispatchImmediately to bail if a sync message arrives, to avoid pointlessly blocking both processes
for the entire timeout.

1:21 PM Changeset in webkit [169824] by rniwa@webkit.org
  • 6 edits in trunk/Source

Turning on DUMP_PROPERTYMAP_STATS causes a build failure
https://bugs.webkit.org/show_bug.cgi?id=133673

Reviewed by Andreas Kling.

Source/JavaScriptCore:
Rewrote the property map statistics code because the old code wasn't building,
and it was also mixing numbers for lookups and insertions/removals.

New logging code records the number of calls to PropertyTable::find (finds) and
PropertyTable::get/PropertyTable::findWithString separately so that we can quantify
the number of probing during updates and lookups.

  • jsc.cpp:
  • runtime/PropertyMapHashTable.h:

(JSC::PropertyTable::find):
(JSC::PropertyTable::get):
(JSC::PropertyTable::findWithString):
(JSC::PropertyTable::add):
(JSC::PropertyTable::remove):
(JSC::PropertyTable::reinsert):
(JSC::PropertyTable::rehash):

  • runtime/Structure.cpp:

(JSC::PropertyMapStatisticsExitLogger::PropertyMapStatisticsExitLogger):
(JSC::PropertyMapStatisticsExitLogger::~PropertyMapStatisticsExitLogger):

Source/WTF:
Added DEFINE_GLOBAL_FOR_LOGGING to allow running a destructor in logging code
that needs to be enabled in release builds (e.g. for JavaScriptCore).

  • wtf/StdLibExtras.h:
1:16 PM Changeset in webkit [169823] by akling@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Always inline JSValue::get() and Structure::get().
<https://webkit.org/b/133755>

Reviewed by Ryosuke Niwa.

These functions get really hot, so ask the compiler to be more
aggressive about inlining them.

~28% speed-up on Ryosuke's microbenchmark for accessing nextSibling
through GetByVal.

  • runtime/JSArrayIterator.cpp:
  • runtime/JSCJSValue.cpp:
  • runtime/JSCJSValueInlines.h:

(JSC::JSValue::get):

  • runtime/JSPromiseDeferred.cpp:
  • runtime/StructureInlines.h:

(JSC::Structure::get):

1:15 PM Changeset in webkit [169822] by rniwa@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Structure::get should instantiate DeferGC only when materializing property map
https://bugs.webkit.org/show_bug.cgi?id=133727

Rubber-stamped by Andreas Kling.

Make materializePropertyMapIfNecessary always inline.

This is ~12% improvement on the microbenchmark attached in the bug.

  • runtime/Structure.h:

(JSC::Structure::materializePropertyMapIfNecessary):
(JSC::Structure::materializePropertyMapIfNecessaryForPinning):

1:13 PM Changeset in webkit [169821] by oliver@apple.com
  • 2 edits in trunk/Source/WebKit2

Restrict database process profile
https://bugs.webkit.org/show_bug.cgi?id=133750

Reviewed by Alexey Proskuryakov.

Make the sandbox profile much more restrictive.

  • Resources/SandboxProfiles/ios/com.apple.WebKit.Databases.sb:
12:59 PM Changeset in webkit [169820] by roger_fong@apple.com
  • 5 edits in trunk/Source/WebKit2

Don't snapshot offscreen plugins that would normally be considered primary plugins after they are moved in view.
https://bugs.webkit.org/show_bug.cgi?id=133667.
<rdar://problem/16743250>

Reviewed by Tim Horton.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::PluginView):
(WebKit::PluginView::pluginSnapshotTimerFired):
Set the display state to Playing if the following is true:
The plugin in question is large enough to be considered the primary snapshot and either:
a) The maximum number of snapshot retries has been reached and no good snapshot has been found.
b) The plugin is moved to be on-screen while the snapshot attempts are in progress.

  • WebProcess/Plugins/PluginView.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::plugInIntersectsSearchRect): Re-factor out intersection logic.
(WebKit::WebPage::plugInIsPrimarySize): Re-factor out primary plugin size logic.
(WebKit::WebPage::determinePrimarySnapshottedPlugIn): Use the above two methods here.

  • WebProcess/WebPage/WebPage.h:
12:55 PM Changeset in webkit [169819] by fpizlo@apple.com
  • 2 edits in branches/ftlopt/Source/JavaScriptCore

Ensured Native Calls and Construct and associated checks
are only emitted during ftl mode.
https://bugs.webkit.org/show_bug.cgi?id=133718

Patch by Matthew Mirman <mmirman@apple.com> on 2014-06-11
Reviewed by Filip Pizlo.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleCall): Added check for ftl mode
before attaching the native function to Call or Construct.

12:49 PM Changeset in webkit [169818] by andersca@apple.com
  • 7 edits in trunk/Source/WebKit2

Move more WKPreferences to WKWebViewConfiguration
https://bugs.webkit.org/show_bug.cgi?id=133756
<rdar://problem/17271468>

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/WKPreferences.h:
  • UIProcess/API/Cocoa/WKPreferences.mm:

(-[WKPreferences setMinimumFontSize:]):
(-[WKPreferences suppressesIncrementalRendering]): Deleted.
(-[WKPreferences setSuppressesIncrementalRendering:]): Deleted.
(-[WKPreferences allowsInlineMediaPlayback]): Deleted.
(-[WKPreferences setAllowsInlineMediaPlayback:]): Deleted.
(-[WKPreferences mediaPlaybackRequiresUserAction]): Deleted.
(-[WKPreferences setMediaPlaybackRequiresUserAction:]): Deleted.
(-[WKPreferences mediaPlaybackAllowsAirPlay]): Deleted.
(-[WKPreferences setMediaPlaybackAllowsAirPlay:]): Deleted.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):

  • UIProcess/API/Cocoa/WKWebViewConfiguration.h:
  • UIProcess/API/Cocoa/WKWebViewConfiguration.mm:

(-[WKWebViewConfiguration copyWithZone:]):

  • WebKit2.xcodeproj/project.pbxproj:
12:31 PM Changeset in webkit [169817] by jer.noble@apple.com
  • 3 edits in trunk/WebKitLibraries

Update WKSI for <rdar://problem/17009091>.

Rubber stamped by Eric Carlson.

  • libWebKitSystemInterfaceMavericks.a:
  • libWebKitSystemInterfaceMountainLion.a:
12:29 PM Changeset in webkit [169816] by rniwa@webkit.org
  • 5 edits in trunk/Source/JavaScriptCore

Structure::get should instantiate DeferGC only when materializing property map
https://bugs.webkit.org/show_bug.cgi?id=133727

Reviewed by Geoffrey Garen.

DeferGC instances in Structure::get was added in http://trac.webkit.org/r157539 in order to avoid
collecting the property table newly created by materializePropertyMapIfNecessary since GC can happen
when GCSafeConcurrentJITLocker goes out of scope.

However, always instantiating DeferGC inside Structure::get introduced a new performance bottleneck
in JSObject::getPropertySlot because frequently incrementing and decrementing a counter in vm.m_heap
and running a release assertion inside Heap::incrementDeferralDepth() is expensive.

Work around this by instantiating DeferGC only when we're actually calling materializePropertyMap,
and immediately storing a pointer to the newly created property table in the stack before DeferGC
goes out of scope so that the property table will be marked.

This shows 13-16% improvement on the microbenchmark attached in the bug.

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

(JSC::JSObject::fastGetOwnPropertySlot):

  • runtime/Structure.h:

(JSC::Structure::materializePropertyMapIfNecessary):

  • runtime/StructureInlines.h:

(JSC::Structure::get):

11:40 AM Changeset in webkit [169815] by akling@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Some JSValue::get() micro-optimzations.
<https://webkit.org/b/133739>

Tighten some of the property lookup code to improve performance of the
eagerly reified prototype attributes:

  • Instead of converting the property name to an integer at every step in the prototype chain, move that to a separate pass at the end since it should be a rare case.
  • Cache the StructureIDTable in a local instead of fetching it from the Heap on every step.
  • Make fillCustomGetterPropertySlot inline. It was out-of-lined based on the assumption that clients would mostly be cacheable GetByIds, and it gets pretty hot (~1%) in GetByVal.
  • Pass the Structure directly to fillCustomGetterPropertySlot instead of refetching it from the StructureIDTable.

Reviewed by Geoff Garen.

  • runtime/JSObject.cpp:

(JSC::JSObject::fillCustomGetterPropertySlot): Deleted.

  • runtime/JSObject.h:

(JSC::JSObject::inlineGetOwnPropertySlot):
(JSC::JSObject::fillCustomGetterPropertySlot):
(JSC::JSObject::getOwnPropertySlot):
(JSC::JSObject::fastGetOwnPropertySlot):
(JSC::JSObject::getPropertySlot):
(JSC::JSObject::getOwnPropertySlotSlow): Deleted.

11:36 AM Changeset in webkit [169814] by Brent Fulgham
  • 3 edits in trunk/Source/WebCore

ROLLOUT: r153510: Broke Table borders on Wikipedia
https://bugs.webkit.org/show_bug.cgi?id=132802
<rdar://problem/16792562>

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::paintCollapsedBorders):
(WebCore::RenderTableCell::alignLeftRightBorderPaintRect): Deleted.
(WebCore::RenderTableCell::alignTopBottomBorderPaintRect): Deleted.

  • rendering/RenderTableCell.h:
11:06 AM Changeset in webkit [169813] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

WebKit2 iOS: Unable to open UI menu for "open in new tab" for links on yahoo.com.
https://bugs.webkit.org/show_bug.cgi?id=133749
<rdar://problem/17165992>

Reviewed by Brady Eidson.

The URL returned to the UIProcess as string needs to be encoded.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::getPositionInformation):

10:44 AM Changeset in webkit [169812] by andersca@apple.com
  • 7 edits in trunk/Source/WebKit2

Move suppressesIncrementalRendering to WKWebViewConfiguration
https://bugs.webkit.org/show_bug.cgi?id=133707
<rdar://problem/17271468>

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKPreferences.h:

Get rid of suppressesIncrementalRendering.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):
Set the suppressesIncrementalRenderingKey key in webPageConfiguration.preferenceValues.

  • UIProcess/API/Cocoa/WKWebViewConfiguration.h:

Add suppressesIncrementalRendering.

  • UIProcess/API/Cocoa/WKWebViewConfiguration.mm:

(-[WKWebViewConfiguration copyWithZone:]):
Assign suppressesIncrementalRendering.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
Copy webPageConfiguration.preferenceValues to m_configurationPreferenceValues.

(WebKit::WebPageProxy::preferencesStore):
If m_configurationPreferenceValues is empty, just return m_preferences->store(). Otherwise,
copy the store and apply the configuration preference values.

(WebKit::WebPageProxy::preferencesDidChange):
Call preferencesStore() so we'll get the configuration preference values as well.

(WebKit::WebPageProxy::creationParameters):
Ditto.

  • UIProcess/WebPageProxy.h:
10:27 AM Changeset in webkit [169811] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

[Curl] Empty headers in request response.
https://bugs.webkit.org/show_bug.cgi?id=133483

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-06-11
Reviewed by Brent Fulgham.

When a request is taken from the cache, its cached response headers are empty, if the cache entry was created in the same session.
It is only when the cache entry is loaded from disc, that the response headers are properly set.
We need to set the cached response headers in both cases.
There is also an issue if two jobs are loading the same url at the same time.
Both jobs will then write to the cache content file, and create invalid content.
This can be fixed by only letting the first request write to the content file.

  • platform/network/curl/CurlCacheEntry.cpp:

(WebCore::CurlCacheEntry::CurlCacheEntry):
(WebCore::CurlCacheEntry::isLoading): Added method to check if cache entry is loading the content.
(WebCore::CurlCacheEntry::saveResponseHeaders): Set the cached response headers when response is saved.
(WebCore::CurlCacheEntry::invalidate): To be on the safe side, close content file when entry is invalidated.
(WebCore::CurlCacheEntry::parseResponseHeaders): Made parameter const.

  • platform/network/curl/CurlCacheEntry.h: Keep track of which job is creating this cache entry.

(WebCore::CurlCacheEntry::getJob):

  • platform/network/curl/CurlCacheManager.cpp:

(WebCore::CurlCacheManager::loadIndex): When cache entry is loaded from disc, there is no associated job.
(WebCore::CurlCacheManager::didReceiveResponse): Bail out if cache entry is already currently loading,
otherwise associate this job with the new cache entry.
(WebCore::CurlCacheManager::didFinishLoading): Changed parameter type.
(WebCore::CurlCacheManager::isCached): Don't report the url as cached if it's currently loading content.
(WebCore::CurlCacheManager::didReceiveData): Don't write to the content file if the entry is not associated with the job.
(WebCore::CurlCacheManager::didFail): Changed parameter type.

  • platform/network/curl/CurlCacheManager.h: Changed parameter type.
  • platform/network/curl/ResourceHandleManager.cpp: Ditto.

(WebCore::writeCallback):
(WebCore::ResourceHandleManager::downloadTimerCallback):

10:03 AM Changeset in webkit [169810] by weinig@apple.com
  • 19 edits in trunk/Source/WebCore

REGRESSION (r133705): Layout Test js/dom/webidl-type-mapping.html is failing
https://bugs.webkit.org/show_bug.cgi?id=133736

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):
Turns out we can't remove the HashTable yet after all, as JavaScriptCore
relies on hasSetterOrReadonlyProperties bit to make put work correctly. We
can, however, skip creating the table, and just use the value array during
reification.

9:12 AM Changeset in webkit [169809] by Chris Fleizach
  • 2 edits in trunk/Source/WebCore

AX: iOS: VoiceOver ignores input type = date in Safari on iOS7
https://bugs.webkit.org/show_bug.cgi?id=133709

Reviewed by Mario Sanchez Prada.

The date field on iOS appears as a popup button, which is not a type we had encountered for <input> types.
This returns an appropriate role in that case.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

8:37 AM Changeset in webkit [169808] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Tools

[EFL] Drop to maintain EFL 32bit release bot
https://bugs.webkit.org/show_bug.cgi?id=133710

Reviewed by Csaba Osztrogonác.

  • BuildSlaveSupport/build.webkit.org-config/config.json: Removed EFL 32bit bot.
8:36 AM Changeset in webkit [169807] by Antti Koivisto
  • 4 edits
    2 adds in trunk/Source/WebKit2

Wrap NSURLRequest in bundle API
https://bugs.webkit.org/show_bug.cgi?id=133732
<rdar://problem/17267217>

Reviewed by Andreas Kling.

Patch by Dan Bernstein.

We don't want to construct actual NSURLRequests in the web process side unless really needed as it is slow.

  • Shared/Cocoa/APIObject.mm:

(API::Object::newObject):

  • Shared/Cocoa/WKNSURLRequest.h: Added.

(WebKit::wrapper):

  • Shared/Cocoa/WKNSURLRequest.mm: Added.


Add a wrapper object that initializes the underlying NSURLRequest on-demand.

(-[WKNSURLRequest _web_createTarget]):
(-[WKNSURLRequest URL]):
(-[WKNSURLRequest copyWithZone:]):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(willSendRequestForFrame):
(didInitiateLoadForResource):

7:42 AM Changeset in webkit [169806] by commit-queue@webkit.org
  • 1 edit
    1 add
    2 deletes in trunk/LayoutTests

[GTK] Unreviewed GTK gardening

Add missing GTK expectations file after test added at r169390, and removed specific
ones for tests now passing with default ones after r169403.

Patch by Lorenzo Tilve <ltilve@igalia.com> on 2014-06-11

  • platform/gtk/fast/dom/webtiming-document-open-expected.txt: Removed.
  • platform/gtk/fast/dom/webtiming-navigate-within-document-expected.txt: Removed.
  • platform/gtk/fast/multicol/pagination/nested-transforms-expected.txt: Added.
7:30 AM Changeset in webkit [169805] by mitz@apple.com
  • 10 edits in trunk/Source/WebKit2

<rdar://problem/17218629> [Cocoa] WKWebView’s canGoBack and canGoForward properties are not KVO-compliant
https://bugs.webkit.org/show_bug.cgi?id=133722

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKBrowsingContextController.mm: Added no-op overrides of new

PageLoadStateObserver member functions.

  • UIProcess/API/Cocoa/WKWebView.h: Documented the canGoBack and canGoForward properties as

being KVO-compliant.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView canGoBack]): Changed to get the return value from the page load state.
(-[WKWebView canGoForward]): Ditto.

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

(WebKit::NavigationState::willChangeCanGoBack): Override this new PageLoadStateObserver
member function by sending the appropriate KVO change message to the WKWebView.
(WebKit::NavigationState::didChangeCanGoBack): Ditto.
(WebKit::NavigationState::willChangeCanGoForward): Ditto.
(WebKit::NavigationState::didChangeCanGoForward): Ditto.

  • UIProcess/PageLoadState.cpp:

(WebKit::PageLoadState::commitChanges): Check for changes to canGoBack and canGoForward
and call the observers if needed.
(WebKit::PageLoadState::canGoBack): Added. Returns the value from the committed state.
(WebKit::PageLoadState::setCanGoBack): Added. Sets the value in the uncommitted state.
(WebKit::PageLoadState::canGoForward): Added. Returns the value from the committed state.
(WebKit::PageLoadState::setCanGoForward): Added. Sets the value in the uncommitted state.

  • UIProcess/PageLoadState.h:

(WebKit::PageLoadState::Data::Data): Added canGoBack and canGoForward boolean members.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didChangeBackForwardList): Update the page load state with the new
state of canGoBack and canGoForward.

  • UIProcess/WebPageProxy.h: Removed unused member variables m_canGoBack and m_canGoForward.
5:50 AM Changeset in webkit [169804] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Updated expectations for accessibility/lists.html test
https://bugs.webkit.org/show_bug.cgi?id=132818

Patch by Rohit Kumar <kumar.rohit@samsung.com> on 2014-06-11
Reviewed by Mario Sanchez Prada.

  • platform/efl-wk1/accessibility/lists-expected.txt:
5:22 AM Changeset in webkit [169803] by zandobersek@gmail.com
  • 3 edits in trunk/Source/WebKit2

Avoid Vector copies in WebNotificationManagerProxy::providerDidCloseNotifications(), FindController::findStringMatches()
https://bugs.webkit.org/show_bug.cgi?id=133676

Reviewed by Andreas Kling.

  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::providerDidCloseNotifications): Move the newly-created
Vector object into the HashMap<>::add() call.

  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::findStringMatches): Movethe newly-create Vector object into the
Vector<>::append() call.

5:20 AM Changeset in webkit [169802] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

Avoid FontGlyphsCacheKey copy in FontGlyphsCacheEntry constructor
https://bugs.webkit.org/show_bug.cgi?id=133674

Reviewed by Andreas Kling.

  • platform/graphics/Font.cpp:

(WebCore::FontGlyphsCacheEntry::FontGlyphsCacheEntry): The FontGlyphsCacheKey
variable is already passed-in as an rvalue reference, so it should be moved
into the constructor of the corresponding member variable instead of copied.

4:56 AM Changeset in webkit [169801] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[EFL][WK2] Add missing test cases for EWK2ViewTest.
https://bugs.webkit.org/show_bug.cgi?id=133715

Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-06-11
Reviewed by Gyuyoung Kim.

Add missing test cases for ewk_view.h APIs, ewk_view_stop(), ewk_view_html_string_load(), ewk_view_theme_get(),
ewk_view_feed_touch_event(), ewk_view_text_find_highlight_clear(), ewk_view_text_find(), ewk_view_text_matches_count(),
ewk_view_page_contents_get(), ewk_view_script_execute().

  • PlatformEfl.cmake:
  • UIProcess/API/efl/tests/test_ewk2_view.cpp:

(TEST_F):

3:46 AM Changeset in webkit [169800] by aestes@apple.com
  • 2 edits in trunk/Source/WebCore

Fix the build after after r169789 on platforms that build with -Wunused-const-variable

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHashTable): Don't create the value array if it'll never be used.

12:38 AM Changeset in webkit [169799] by Carlos Garcia Campos
  • 15 edits
    1 add in trunk

[GTK] Use a different user agent string depending on the site
https://bugs.webkit.org/show_bug.cgi?id=132681

Reviewed by Anders Carlsson.

Source/WebCore:
We have changed the user agent string several times to try to fix
broken websites that require specific things in the UA string to
properly work. But everytime we change the UA string to fix a
website we break others. We could use different UA string
depending on the website. UserAgentGtk code has also been cleaned
up, using NeverDestroyed instead of DEPRECATED_DEFINE_STATIC_LOCAL
and avoiding unneeded conversions to UTF-8.

  • platform/gtk/UserAgentGtk.cpp:

(WebCore::UserAgentQuirks::UserAgentQuirks): New helper private
class to handle user agent quirks.
(WebCore::UserAgentQuirks::add):
(WebCore::UserAgentQuirks::contains):
(WebCore::UserAgentQuirks::isEmpty):
(WebCore::platformForUAString): Bring back this method that was
removed to always pretend to be Macintosh.
(WebCore::platformVersionForUAString): Return a different platform
version depending on the actual platform.
(WebCore::versionForUAString): Return the WebKit version.
(WebCore::buildUserAgentString): Helper function to build the user
agent taking into account the UserAgentQuirks received.
(WebCore::standardUserAgentStatic): Standard user agent string
when no quirks are present.
(WebCore::standardUserAgent):
(WebCore::standardUserAgentForURL): New method that returns the
user agent string for the given URL.

  • platform/gtk/UserAgentGtk.h:

Source/WebKit2:

  • UIProcess/API/gtk/WebKitSettings.cpp:

(webkit_settings_class_init): Enable site specific quirks setting
by default.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::userAgent): Pass the given URL to WebPage.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::userAgent): Try to get the user agent for the
URL received falling back to the current one otherwise.

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::platformUserAgent): Added.

  • WebProcess/WebPage/efl/WebPageEfl.cpp:

(WebKit::WebPage::platformUserAgent): Return null String.

  • WebProcess/WebPage/gtk/WebPageGtk.cpp:

(WebKit::WebPage::platformUserAgent): Use WebCore::standardUserAgentForURL() when site specific quirks
setting is enabled.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::platformUserAgent): Return null String.

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::platformUserAgent): Return null String.

Tools:
Add a unit test to check user agent quirks.

  • TestWebKitAPI/PlatformGTK.cmake:
  • TestWebKitAPI/Tests/WebCore/gtk/UserAgentQuirks.cpp: Added.

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp:

(testWebKitSettings): Site specific quirks setting is now enabled
by default.

12:13 AM Changeset in webkit [169798] by gyuyoung.kim@samsung.com
  • 2 edits in trunk

Unreviewed, EFL build fix. Treat literal-suffix error as build warning.

  • Source/cmake/WebKitHelpers.cmake:
12:02 AM Changeset in webkit [169797] by achristensen@apple.com
  • 4 edits in trunk/Source

[Win] Unreviewed build fix.

Source/WebCore:

  • platform/network/curl/ResourceRequest.h:

Include missing PassOwnPtr.h.

Source/WebKit:

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

Fixed 64-bit linker symbol.

Jun 10, 2014:

10:44 PM Changeset in webkit [169796] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

Actually only generate tables for History and Location.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

9:52 PM Changeset in webkit [169795] by fpizlo@apple.com
  • 54 edits
    4 adds in branches/ftlopt/Source/JavaScriptCore

[ftlopt] DFG should use its own notion of JSValue, which we should call FrozenValue, that will carry around a copy of its structure
https://bugs.webkit.org/show_bug.cgi?id=133426

Reviewed by Geoffrey Garen.

The impetus for this was to provide some sense and reason to race conditions arising from
cell constants having their structure changed on the main thread - this is harmess because
we defend against it, but when it goes wrong, it can be difficult to reproduce because it
requires a race. Giving the DFG the ability to "freeze" a cell's structure fixes this.

But this patch goes quite a bit further, and completely rationalizes how the DFG reasons
about constants. It no longer relies on the CodeBlock constant pool at all, which allows
for a more object-oriented approach: for example a Node that has a constant can tell you
what constant it has without needing a CodeBlock.

(JSC::CallLinkStatus::computeExitSiteData):

  • bytecode/ExitKind.cpp:

(JSC::exitKindToString):
(JSC::exitKindIsCountable):

  • bytecode/ExitKind.h:

(JSC::isWatchpoint): Deleted.

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::hasExitSite):

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::hasExitSite):

  • dfg/DFGAbstractInterpreter.h:

(JSC::DFG::AbstractInterpreter::filterByValue):
(JSC::DFG::AbstractInterpreter::setBuiltInConstant):
(JSC::DFG::AbstractInterpreter::setConstant):

  • dfg/DFGAbstractInterpreterInlines.h:

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

  • dfg/DFGAbstractValue.cpp:

(JSC::DFG::AbstractValue::setOSREntryValue):
(JSC::DFG::AbstractValue::set):
(JSC::DFG::AbstractValue::filterByValue):
(JSC::DFG::AbstractValue::setMostSpecific): Deleted.

  • dfg/DFGAbstractValue.h:
  • dfg/DFGArgumentsSimplificationPhase.cpp:

(JSC::DFG::ArgumentsSimplificationPhase::run):

  • dfg/DFGBackwardsPropagationPhase.cpp:

(JSC::DFG::BackwardsPropagationPhase::isNotNegZero):
(JSC::DFG::BackwardsPropagationPhase::isNotPosZero):
(JSC::DFG::BackwardsPropagationPhase::isWithinPowerOfTwoForConstant):
(JSC::DFG::BackwardsPropagationPhase::isWithinPowerOfTwo):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::ByteCodeParser):
(JSC::DFG::ByteCodeParser::getDirect):
(JSC::DFG::ByteCodeParser::get):
(JSC::DFG::ByteCodeParser::getLocal):
(JSC::DFG::ByteCodeParser::setLocal):
(JSC::DFG::ByteCodeParser::setArgument):
(JSC::DFG::ByteCodeParser::jsConstant):
(JSC::DFG::ByteCodeParser::weakJSConstant):
(JSC::DFG::ByteCodeParser::cellConstantWithStructureCheck):
(JSC::DFG::ByteCodeParser::InlineStackEntry::remapOperand):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::emitFunctionChecks):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::handleMinMax):
(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::handleConstantInternalFunction):
(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::prepareToParseBlock):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::buildOperandMapsIfNecessary):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):
(JSC::DFG::ByteCodeParser::parseCodeBlock):
(JSC::DFG::ByteCodeParser::addConstant): Deleted.
(JSC::DFG::ByteCodeParser::getJSConstantForValue): Deleted.
(JSC::DFG::ByteCodeParser::getJSConstant): Deleted.
(JSC::DFG::ByteCodeParser::isJSConstant): Deleted.
(JSC::DFG::ByteCodeParser::isInt32Constant): Deleted.
(JSC::DFG::ByteCodeParser::valueOfJSConstant): Deleted.
(JSC::DFG::ByteCodeParser::valueOfInt32Constant): Deleted.
(JSC::DFG::ByteCodeParser::constantUndefined): Deleted.
(JSC::DFG::ByteCodeParser::constantNull): Deleted.
(JSC::DFG::ByteCodeParser::one): Deleted.
(JSC::DFG::ByteCodeParser::constantNaN): Deleted.
(JSC::DFG::ByteCodeParser::cellConstant): Deleted.
(JSC::DFG::ByteCodeParser::inferredConstant): Deleted.
(JSC::DFG::ByteCodeParser::ConstantRecord::ConstantRecord): Deleted.

  • dfg/DFGCFGSimplificationPhase.cpp:

(JSC::DFG::CFGSimplificationPhase::run):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::constantCSE):
(JSC::DFG::CSEPhase::checkFunctionElimination):
(JSC::DFG::CSEPhase::performNodeCSE):
(JSC::DFG::CSEPhase::weakConstantCSE): Deleted.

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGCommon.h:
  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):
(JSC::DFG::ConstantFoldingPhase::emitGetByOffset):
(JSC::DFG::ConstantFoldingPhase::addStructureTransitionCheck):

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::fixupMakeRope):
(JSC::DFG::FixupPhase::truncateConstantToInt32):
(JSC::DFG::FixupPhase::attemptToMakeGetTypedArrayByteLength):
(JSC::DFG::FixupPhase::injectTypeConversionsForEdge):

  • dfg/DFGFrozenValue.cpp: Added.

(JSC::DFG::FrozenValue::emptySingleton):
(JSC::DFG::FrozenValue::dumpInContext):
(JSC::DFG::FrozenValue::dump):

  • dfg/DFGFrozenValue.h: Added.

(JSC::DFG::FrozenValue::FrozenValue):
(JSC::DFG::FrozenValue::operator!):
(JSC::DFG::FrozenValue::value):
(JSC::DFG::FrozenValue::structure):
(JSC::DFG::FrozenValue::strengthenTo):
(JSC::DFG::FrozenValue::strength):
(JSC::DFG::FrozenValue::freeze):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::Graph):
(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::tryGetActivation):
(JSC::DFG::Graph::tryGetFoldableView):
(JSC::DFG::Graph::registerFrozenValues):
(JSC::DFG::Graph::visitChildren):
(JSC::DFG::Graph::freezeFragile):
(JSC::DFG::Graph::freeze):
(JSC::DFG::Graph::freezeStrong):
(JSC::DFG::Graph::convertToConstant):
(JSC::DFG::Graph::convertToStrongConstant):
(JSC::DFG::Graph::assertIsWatched):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::addImmediateShouldSpeculateInt32):
(JSC::DFG::Graph::convertToConstant): Deleted.
(JSC::DFG::Graph::constantRegisterForConstant): Deleted.
(JSC::DFG::Graph::getJSConstantSpeculation): Deleted.
(JSC::DFG::Graph::isConstant): Deleted.
(JSC::DFG::Graph::isJSConstant): Deleted.
(JSC::DFG::Graph::isInt32Constant): Deleted.
(JSC::DFG::Graph::isDoubleConstant): Deleted.
(JSC::DFG::Graph::isNumberConstant): Deleted.
(JSC::DFG::Graph::isBooleanConstant): Deleted.
(JSC::DFG::Graph::isCellConstant): Deleted.
(JSC::DFG::Graph::isFunctionConstant): Deleted.
(JSC::DFG::Graph::isInternalFunctionConstant): Deleted.
(JSC::DFG::Graph::valueOfJSConstant): Deleted.
(JSC::DFG::Graph::valueOfInt32Constant): Deleted.
(JSC::DFG::Graph::valueOfNumberConstant): Deleted.
(JSC::DFG::Graph::valueOfBooleanConstant): Deleted.
(JSC::DFG::Graph::valueOfFunctionConstant): Deleted.
(JSC::DFG::Graph::mulImmediateShouldSpeculateInt32): Deleted.

  • dfg/DFGInPlaceAbstractState.cpp:

(JSC::DFG::InPlaceAbstractState::initialize):

  • dfg/DFGInsertionSet.h:

(JSC::DFG::InsertionSet::insertConstant):
(JSC::DFG::InsertionSet::insertConstantForUse):

  • dfg/DFGIntegerCheckCombiningPhase.cpp:

(JSC::DFG::IntegerCheckCombiningPhase::rangeKeyAndAddend):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::link):

  • dfg/DFGLazyJSValue.cpp:

(JSC::DFG::LazyJSValue::getValue):
(JSC::DFG::LazyJSValue::strictEqual):
(JSC::DFG::LazyJSValue::dumpInContext):

  • dfg/DFGLazyJSValue.h:

(JSC::DFG::LazyJSValue::LazyJSValue):
(JSC::DFG::LazyJSValue::tryGetValue):
(JSC::DFG::LazyJSValue::value):
(JSC::DFG::LazyJSValue::switchLookupValue):

  • dfg/DFGMinifiedNode.cpp:

(JSC::DFG::MinifiedNode::fromNode):

  • dfg/DFGMinifiedNode.h:

(JSC::DFG::belongsInMinifiedGraph):
(JSC::DFG::MinifiedNode::hasConstant):
(JSC::DFG::MinifiedNode::constant):
(JSC::DFG::MinifiedNode::hasConstantNumber): Deleted.
(JSC::DFG::MinifiedNode::constantNumber): Deleted.
(JSC::DFG::MinifiedNode::hasWeakConstant): Deleted.
(JSC::DFG::MinifiedNode::weakConstant): Deleted.

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasConstant):
(JSC::DFG::Node::constant):
(JSC::DFG::Node::convertToConstant):
(JSC::DFG::Node::asJSValue):
(JSC::DFG::Node::isInt32Constant):
(JSC::DFG::Node::asInt32):
(JSC::DFG::Node::asUInt32):
(JSC::DFG::Node::isDoubleConstant):
(JSC::DFG::Node::isNumberConstant):
(JSC::DFG::Node::asNumber):
(JSC::DFG::Node::isMachineIntConstant):
(JSC::DFG::Node::asMachineInt):
(JSC::DFG::Node::isBooleanConstant):
(JSC::DFG::Node::asBoolean):
(JSC::DFG::Node::isCellConstant):
(JSC::DFG::Node::asCell):
(JSC::DFG::Node::dynamicCastConstant):
(JSC::DFG::Node::function):
(JSC::DFG::Node::isWeakConstant): Deleted.
(JSC::DFG::Node::constantNumber): Deleted.
(JSC::DFG::Node::convertToWeakConstant): Deleted.
(JSC::DFG::Node::weakConstant): Deleted.
(JSC::DFG::Node::valueOfJSConstant): Deleted.

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

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

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::silentSavePlanForGPR):
(JSC::DFG::SpeculativeJIT::silentSavePlanForFPR):
(JSC::DFG::SpeculativeJIT::silentFill):
(JSC::DFG::SpeculativeJIT::compileIn):
(JSC::DFG::SpeculativeJIT::compilePeepHoleBooleanBranch):
(JSC::DFG::SpeculativeJIT::compilePeepHoleInt32Branch):
(JSC::DFG::SpeculativeJIT::compileCurrentBlock):
(JSC::DFG::SpeculativeJIT::compileDoubleRep):
(JSC::DFG::SpeculativeJIT::jumpForTypedArrayOutOfBounds):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compileAdd):
(JSC::DFG::SpeculativeJIT::compileArithSub):
(JSC::DFG::SpeculativeJIT::compileArithMod):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::valueOfJSConstantAsImm64):
(JSC::DFG::SpeculativeJIT::initConstantInfo):
(JSC::DFG::SpeculativeJIT::isConstant): Deleted.
(JSC::DFG::SpeculativeJIT::isJSConstant): Deleted.
(JSC::DFG::SpeculativeJIT::isInt32Constant): Deleted.
(JSC::DFG::SpeculativeJIT::isDoubleConstant): Deleted.
(JSC::DFG::SpeculativeJIT::isNumberConstant): Deleted.
(JSC::DFG::SpeculativeJIT::isBooleanConstant): Deleted.
(JSC::DFG::SpeculativeJIT::isFunctionConstant): Deleted.
(JSC::DFG::SpeculativeJIT::valueOfInt32Constant): Deleted.
(JSC::DFG::SpeculativeJIT::valueOfNumberConstant): Deleted.
(JSC::DFG::SpeculativeJIT::addressOfDoubleConstant): Deleted.
(JSC::DFG::SpeculativeJIT::valueOfJSConstant): Deleted.
(JSC::DFG::SpeculativeJIT::valueOfBooleanConstant): Deleted.
(JSC::DFG::SpeculativeJIT::valueOfFunctionConstant): Deleted.
(JSC::DFG::SpeculativeJIT::isNullConstant): Deleted.
(JSC::DFG::SpeculativeJIT::isInteger): Deleted.

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt32Internal):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt32Internal):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt52):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGStrengthReductionPhase.cpp:

(JSC::DFG::StrengthReductionPhase::handleNode):

  • dfg/DFGValidate.cpp:

(JSC::DFG::Validate::validate):

  • dfg/DFGValueStrength.cpp: Added.

(WTF::printInternal):

  • dfg/DFGValueStrength.h: Added.

(JSC::DFG::merge):

  • dfg/DFGVariableEventStream.cpp:

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

  • dfg/DFGVariableEventStream.h:
  • dfg/DFGWatchableStructureWatchingPhase.cpp:

(JSC::DFG::WatchableStructureWatchingPhase::run):
(JSC::DFG::WatchableStructureWatchingPhase::tryWatch):

  • dfg/DFGWatchpointCollectionPhase.cpp:

(JSC::DFG::WatchpointCollectionPhase::handle):

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLink.cpp:

(JSC::FTL::link):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileDoubleConstant):
(JSC::FTL::LowerDFGToLLVM::compileInt52Constant):
(JSC::FTL::LowerDFGToLLVM::compileCheckStructure):
(JSC::FTL::LowerDFGToLLVM::compileCheckFunction):
(JSC::FTL::LowerDFGToLLVM::compileCompareEqConstant):
(JSC::FTL::LowerDFGToLLVM::compileCompareStrictEqConstant):
(JSC::FTL::LowerDFGToLLVM::lowInt32):
(JSC::FTL::LowerDFGToLLVM::lowCell):
(JSC::FTL::LowerDFGToLLVM::lowBoolean):
(JSC::FTL::LowerDFGToLLVM::lowJSValue):
(JSC::FTL::LowerDFGToLLVM::tryToSetConstantExitArgument):
(JSC::FTL::LowerDFGToLLVM::compileWeakJSConstant): Deleted.

  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileStub):

  • runtime/JSCJSValue.cpp:

(JSC::JSValue::dumpInContext):
(JSC::JSValue::dumpInContextAssumingStructure):

  • runtime/JSCJSValue.h:
9:32 PM Changeset in webkit [169794] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Tools

Unreviewed, update my list of email addresses in contributors.json.

  • Scripts/webkitpy/common/config/contributors.json:
9:31 PM Changeset in webkit [169793] by fpizlo@apple.com
  • 15 edits in branches/ftlopt/Source/JavaScriptCore

Unreviewed, roll out http://trac.webkit.org/changeset/169786.
It broke a lot of tests on 32-bit.

  • dfg/DFGAbstractInterpreterInlines.h:

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

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::handleCall):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC):

  • dfg/DFGFixupPhase.cpp:

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

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasHeapPrediction):
(JSC::DFG::Node::canBeKnownFunction):
(JSC::DFG::Node::hasKnownFunction):

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

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

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::lower):
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileCallOrConstruct):
(JSC::FTL::LowerDFGToLLVM::possiblyCompileInlineableNativeCall):
(JSC::FTL::LowerDFGToLLVM::didOverflowStack):
(JSC::FTL::LowerDFGToLLVM::compileNativeCallOrConstruct): Deleted.

  • runtime/JSCJSValue.h:
9:19 PM Changeset in webkit [169792] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

Attempt to fix the tests.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):
Keep generating HashTables for History and Location, since they use them in
their custom getOwnPropertySlot delegates.

8:52 PM Changeset in webkit [169791] by benjamin@webkit.org
  • 17 edits in trunk/Source

[iOS][WK2] ScrollingTreeOverflowScrollingNode does not use asynchronous touch dispatch
https://bugs.webkit.org/show_bug.cgi?id=133702

Source/WebCore:

Reviewed by Simon Fraser.

  • page/scrolling/ScrollingTree.h:

(WebCore::ScrollingTree::scrollingTreeNodeWillStartPanGesture):

Source/WebKit2:
<rdar://problem/17259261>

Reviewed by Simon Fraser.

Notify the WKWebView and the TouchGestureRecognizer when on of the internal UIScrollView
starts scrolling in response to a gesture.

  • UIProcess/PageClient.h:
  • UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.h:
  • UIProcess/Scrolling/RemoteScrollingTree.cpp:

(WebKit::RemoteScrollingTree::scrollingTreeNodeWillStartPanGesture):

  • UIProcess/Scrolling/RemoteScrollingTree.h:
  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:

(-[WKOverflowScrollViewDelegate scrollViewWillBeginDragging:]):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::scrollViewWillStartPanGesture):

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

(WebKit::PageClientImpl::scrollViewWillStartPanGesture):

  • UIProcess/ios/RemoteScrollingCoordinatorProxyIOS.mm:

(WebKit::RemoteScrollingCoordinatorProxy::scrollingTreeNodeWillStartPanGesture):

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::scrollViewWillStartPanGesture):

8:35 PM Changeset in webkit [169790] by benjamin@webkit.org
  • 6 edits in trunk/Source/WebCore

Reduce the overhead of updating the animatable style on ARMv7
https://bugs.webkit.org/show_bug.cgi?id=133618

Reviewed by Simon Fraser.

While updating the style for animations, most of the time spent was pure calling overhead.

This patch should reduce this a bit on ARMv7:
1) Get the frame directly from the document instead of document->view->framview->frame.
2) Inline RenderObject::animation(). This is just 3 loads, setting up the registers on the call

site is more expensive than loading the values directly.

3) Inline RenderElement::setAnimatableStyle(). It has only one call site and the call is mostly

overhead.

  • css/CSSComputedStyleDeclaration.cpp:
  • rendering/RenderElement.cpp:

(WebCore::RenderElement::setAnimatableStyle): Deleted.

  • rendering/RenderElement.h:

(WebCore::RenderElement::setAnimatableStyle):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::adjustRectForOutlineAndShadow):
(WebCore::RenderObject::animation): Deleted.

  • rendering/RenderObject.h:

(WebCore::RenderObject::animation):

  • rendering/RenderView.h:

(WebCore::RenderObject::frame):

8:09 PM Changeset in webkit [169789] by weinig@apple.com
  • 21 edits in trunk/Source

Don't create a HashTable for JSObjects that use eager reification
https://bugs.webkit.org/show_bug.cgi?id=133705

Reviewed by Geoffrey Garen.

../JavaScriptCore:

  • runtime/Lookup.h:

(JSC::reifyStaticProperties):
Add a version of reifyStaticProperties that takes an array of HashTableValues
rather than a HashTable.

../WebCore:
It is unnecessary to create the CompactHashIndex or HashTable for JSObjects
that use eager reification, since we will never look up properties directly.
Instead, we can iterate the HashTableValue array directly during reification.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):
Only generate the value array for prototypes that use eager reification.

(GenerateHashTableValueArray):
Extract out into a helper.

(GenerateHashTable):
Add a parameter, $justGenerateValueArray, that if true, means we only
should generate the value array.

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:
  • bindings/scripts/test/JS/JSTestEventTarget.cpp:
  • bindings/scripts/test/JS/JSTestException.cpp:
  • bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
  • bindings/scripts/test/JS/JSTestInterface.cpp:
  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
  • bindings/scripts/test/JS/JSTestNode.cpp:
  • bindings/scripts/test/JS/JSTestNondeterministic.cpp:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
  • bindings/scripts/test/JS/JSTestTypedefs.cpp:
  • bindings/scripts/test/JS/JSattribute.cpp:
  • bindings/scripts/test/JS/JSreadonly.cpp:
7:28 PM Changeset in webkit [169788] by Simon Fraser
  • 3 edits in trunk/Tools

Always switch to an sRGB screen color profile when running tests
https://bugs.webkit.org/show_bug.cgi?id=133712

Reviewed by Tim Horton.

Switch the screen color profile to sRGB when running tests, because even ref
tests need the screen to use the correct color profile.

  • DumpRenderTree/mac/LayoutTestHelper.m:

(installLayoutTestColorProfile):

  • Scripts/webkitpy/port/mac.py:

(MacPort.start_helper):

6:53 PM Changeset in webkit [169787] by fpizlo@apple.com
  • 4 edits
    1 add in trunk/Source/JavaScriptCore

Prediction propagator should make sure everyone knows that a variable that is in an argument position where other versions of that variable are not MachineInts cannot possibly be flushed as Int52
https://bugs.webkit.org/show_bug.cgi?id=133698

Reviewed by Geoffrey Garen and Mark Hahnenberg.

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate): Use the new utility to figure out if a variable could ever represent an Int52.

  • dfg/DFGVariableAccessData.cpp:

(JSC::DFG::VariableAccessData::couldRepresentInt52): Add a new utility to detect early on if a variable could possibly be Int52.
(JSC::DFG::VariableAccessData::couldRepresentInt52Impl):
(JSC::DFG::VariableAccessData::flushFormat):

  • dfg/DFGVariableAccessData.h:
  • tests/stress/int52-inlined-call-argument.js: Added.

(foo):
(bar):

6:51 PM Changeset in webkit [169786] by fpizlo@apple.com
  • 15 edits in branches/ftlopt/Source/JavaScriptCore

Added native calling to the FTL and Split the DFG nodes
Call and Construct into NativeCall and NativeConstruct
to better represent their semantics.
https://bugs.webkit.org/show_bug.cgi?id=133660

Patch by Matthew Mirman <mmirman@apple.com> on 2014-06-09
Reviewed by Filip Pizlo.

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
Added NativeCall and NativeConstruct case

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::addCall): added NativeCall case.
(JSC::DFG::ByteCodeParser::handleCall):
set to return NativeCall or NativeConstruct instead of Call or Construct
in the presence of a native function.

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize): added NativeCall and NativeConstruct case.

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC): added NativeCall and NativeConstruct case.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode): added NativeCall and NativeConstruct case.

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasHeapPrediction): added NativeCall and NativeConstruct case.
(JSC::DFG::Node::canBeKnownFunction): changed to NativeCall and NativeConstruct.
(JSC::DFG::Node::hasKnownFunction): changed to NativeCall and NativeConstruct.

  • dfg/DFGNodeType.h: added NativeCall and NativeConstruct.
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate): added NativeCall and NativeConstruct case.

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute): added NativeCall and NativeConstruct case.

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall): ditto
(JSC::DFG::SpeculativeJIT::compile): ditto

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall): ditto
(JSC::DFG::SpeculativeJIT::compile): ditto

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile): ditto

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::lower): ditto
(JSC::FTL::LowerDFGToLLVM::compileNode): ditto.
(JSC::FTL::LowerDFGToLLVM::compileNativeCallOrConstruct): Added.
(JSC::FTL::LowerDFGToLLVM::compileCallOrConstruct): removed NativeCall and NativeConstruct functionality.
(JSC::FTL::LowerDFGToLLVM::didOverflowStack): added NativeCall and NativeConstruct case.

  • runtime/JSCJSValue.h: added JS_EXPORT_PRIVATE to toInteger as it is apparently needed.
6:38 PM Changeset in webkit [169785] by ryuan.choi@samsung.com
  • 6 edits in trunk/Tools

[EFL] Bump EFL libraries to 1.9
https://bugs.webkit.org/show_bug.cgi?id=125479

Patch by Martin Hodovan <mhodovan@partner.samsung.com> on 2014-06-10
Reviewed by Gyuyoung Kim.

Based on the work of Ryuan Choi <ryuan.choi@samsung.com>
and László Langó <llango.u-szeged@partner.samsung.com>.

  • ImageDiff/CMakeLists.txt:
  • MiniBrowser/efl/CMakeLists.txt:
  • efl/install-dependencies:
  • efl/jhbuild.modules:
  • efl/jhbuildrc:
6:04 PM Changeset in webkit [169784] by Chris Fleizach
  • 2 edits in trunk/Source/WebCore

AX: iOS: Return the language for attributed text marker queries
https://bugs.webkit.org/show_bug.cgi?id=133682

Reviewed by Mario Sanchez Prada.

Add language to the list of objects being returned for attributed text.

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(AXAttributeStringSetLanguage):
(AXAttributedStringAppendText):

5:06 PM Changeset in webkit [169783] by dfarler@apple.com
  • 3 edits in trunk/Tools

old-run-webkit-tests: Create CoreSimulator device on demand and find it by name
https://bugs.webkit.org/show_bug.cgi?id=133663

Reviewed by David Kilzer.

  • Scripts/old-run-webkit-tests:

(installAndLaunchDumpToolAppUsingNotification):

  • Remove obsolete notification keys
  • Key off of mandatory device UDID (a UUID)
  • Create a device on demand via CoreSimulator if necessary

-- Grab the UDID from the created device plist.

  • Scripts/webkitdirs.pm:

(iOSSimulatorDevicesPath): Added
(iOSSimulatorDevices): Added
(createiOSSimulatorDevice): Added
(deleteiOSSimulatorDevice): Added

5:01 PM Changeset in webkit [169782] by mitz@apple.com
  • 33 edits in trunk/Source

Source/WebCore: WebCore part of [Cocoa] Handling authentication challenges should not require multiple delegate methods
https://bugs.webkit.org/show_bug.cgi?id=133697

Reviewed by Anders Carlsson.

  • platform/network/AuthenticationClient.h: Declared new virtual member functions for

requesting default handling of a challenge and rejecting a challenge.

  • platform/network/ResourceHandle.h: Override new AuthenticationClient functions.
  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::ResourceHandle::receivedRequestToPerformDefaultHandling): Added. Calls
CFURLConnectionPerformDefaultHandlingForChallenge.
(WebCore::ResourceHandle::receivedChallengeRejection): Added. Calls
CFURLConnectionRejectChallenge.

  • platform/network/cf/SocketStreamHandle.h: Override new AuthenticationClient functions.
  • platform/network/cf/SocketStreamHandleCFNet.cpp:

(WebCore::SocketStreamHandle::receivedRequestToPerformDefaultHandling): Added empty
override.
(WebCore::SocketStreamHandle::receivedChallengeRejection): Ditto.

Source/WebKit2: WebKit2 part of [Cocoa] Handling authentication challenges should not require multiple delegate methods
https://bugs.webkit.org/show_bug.cgi?id=133697

Reviewed by Anders Carlsson.

  • Shared/Authentication/AuthenticationManager.cpp:

(WebKit::AuthenticationManager::performDefaultHandling): Added. Calls the new
AuthenticationClient function receivedRequestToPerformDefaultHandling.
(WebKit::AuthenticationManager::rejectProtectionSpaceAndContinue): Added. Calls the new
AuthenticationClient function receivedChallengeRejection.

  • Shared/Authentication/AuthenticationManager.h:
  • Shared/Authentication/AuthenticationManager.messages.in: Added new messages

PerformDefaultHandling and RejectProtectionSpaceAndContinue.

  • Shared/Downloads/DownloadAuthenticationClient.h: Override new AuthenticationClient member

functions.

  • Shared/Downloads/ios/DownloadIOS.mm:

(WebKit::Download::receivedRequestToPerformDefaultHandling): Added empty implementation.
(WebKit::Download::receivedChallengeRejection): Ditto.

  • Shared/Downloads/mac/DownloadMac.mm:

(WebKit::Download::receivedRequestToPerformDefaultHandling): Added. Forwards to the sender.
(WebKit::Download::receivedChallengeRejection): Ditto.

  • UIProcess/API/Cocoa/WKNSURLAuthenticationChallenge.mm:

(checkChallenge): Factored out a bit of code into this helper function.
(-[WKNSURLAuthenticationChallengeSender cancelAuthenticationChallenge:]): Use new helper.
(-[WKNSURLAuthenticationChallengeSender continueWithoutCredentialForAuthenticationChallenge:]):
Ditto.
(-[WKNSURLAuthenticationChallengeSender useCredential:forAuthenticationChallenge:]): Ditto.
(-[WKNSURLAuthenticationChallengeSender performDefaultHandlingForAuthenticationChallenge:]):
Implemented this optional NSURLAuthenticationChallengeSender protocol method by forwarding
to the decision listener.
(-[WKNSURLAuthenticationChallengeSender rejectProtectionSpaceAndContinueWithChallenge:]):
Ditto.

  • UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h: Declared new delegate method.
  • UIProcess/Authentication/AuthenticationChallengeProxy.cpp:

(WebKit::AuthenticationChallengeProxy::performDefaultHandling): Added. Sends a message to
the authentication manager.
(WebKit::AuthenticationChallengeProxy::rejectProtectionSpaceAndContinue): Ditto.

  • UIProcess/Authentication/AuthenticationChallengeProxy.h:
  • UIProcess/Authentication/AuthenticationDecisionListener.cpp:

(WebKit::AuthenticationDecisionListener::performDefaultHandling): Added. Forwards to the
authentication challenge proxy.
(WebKit::AuthenticationDecisionListener::rejectProtectionSpaceAndContinue): Ditto.

  • UIProcess/Authentication/AuthenticationDecisionListener.h:
  • UIProcess/Cocoa/NavigationState.h: Added flag in m_navigationDelegateMethods struct.
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::setNavigationDelegate): Initialize
webViewWillSendRequestForAuthenticationChallenge flag in the delegate methods struct.
(WebKit::NavigationState::LoaderClient::canAuthenticateAgainstProtectionSpaceInFrame): If
the delegate implements -_webView:willSendRequestForAuthenticationChallenge:, return true
here; the delegate will respond with -rejectProtectionSpaceAndContinueWithChallenge: if
it cannot authenticate.
(WebKit::NavigationState::LoaderClient::didReceiveAuthenticationChallengeInFrame): If the
delegate implements -_webView:willSendRequestForAuthenticationChallenge:, send that message.

4:30 PM Changeset in webkit [169781] by Brent Fulgham
  • 3 edits in trunk/Source/WebCore

REGRESSION (r167962): Out of bounds read in JSC::StructureIDTable::get()
https://bugs.webkit.org/show_bug.cgi?id=133463
<rdar://problem/17098100>

Reviewed by Geoffrey Garen.

Revise MediaControllerHost implementation so that instead of holding its
own pointer to the JS Controller object, it uses new properties added to
the internal media controls DOM hierarchy. This allows the GC to see the
needed lifecycle of the various media control objects and avoids the
premature deallocation that caused this bug.

  • Modules/mediacontrols/MediaControlsHost.h:

(WebCore::MediaControlsHost::controllerJSValue): Deleted.
(WebCore::MediaControlsHost::setControllerJSValue): Deleted.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::controllerJSValue): Added convenience function
to share logic for retrieving the controller object.
(WebCore::HTMLMediaElement::updateCaptionContainer): Revise to use new method
for accessing the controller.
(WebCore::HTMLMediaElement::didAddUserAgentShadowRoot): Connect the media
elements JS wrapper object to the MediaControlsHost JS wrapper. Then connect
the MediaControlsHost JS wrapper to the Controller JS object.
(WebCore::HTMLMediaElement::pageScaleFactorChanged): Revise to use new method
for accessing the controller.

4:23 PM Changeset in webkit [169780] by mmaxfield@apple.com
  • 7 edits
    2 deletes in trunk

Japanese text in Google search is rendered too low and clipped
https://bugs.webkit.org/show_bug.cgi?id=133595

Reviewed by Simon Fraser.

This is a revert of r155324.

Source/WebCore:
By forcing line-height to be normal, r155324 was forcing WebKit to inspect font metrics
to determine the height of a line. This means that if a fallback font was required to
draw a line of text, and the fallback font had a higher ascent than the primary font,
the entire line of text would be pushed down. If we don't force line-height to be normal,
then we use the line-height value instead, which short circuits this mechanism, thereby
not pushing text down.

No new tests (because this is simply a revert)

  • css/html.css:

(input): Deleted.

LayoutTests:

  • fast/dom/HTMLInputElement/input-line-height-expected.txt: Removed.
  • fast/dom/HTMLInputElement/input-line-height.html: Removed.
  • fast/forms/placeholder-position-expected.txt:
  • platform/mac/fast/forms/placeholder-position-expected.png:
  • platform/mac/fast/forms/placeholder-position-expected.txt:
  • platform/mac-mountainlion/fast/forms/placeholder-position-expected.txt:
4:13 PM Changeset in webkit [169779] by Alan Bujtas
  • 9 edits
    2 adds in trunk

REGRESSION (r167937): Do not use effective zoom factor while resolving media query's min-, max-(device)width/height values.
https://bugs.webkit.org/show_bug.cgi?id=133681

Reviewed by Simon Fraser.

We lost the default multiplier(zoom) value of 1 with r167937 at template<typename T> T computeLength().
Now MediaQueryEvaluator takes the current page zoom factor into account while resolving min-, max- width values.

This patch explicitly sets the multiplier value to 1 to ensure zoom independent media query value resolving.

Source/WebCore:
Test: fast/media/media-query-with-scaled-content.html

  • css/CSSToLengthConversionData.cpp:

(WebCore::CSSToLengthConversionData::viewportWidthFactor):
(WebCore::CSSToLengthConversionData::viewportHeightFactor):

  • css/CSSToLengthConversionData.h:
  • css/MediaQueryEvaluator.cpp:

(WebCore::MediaQueryEvaluator::eval):

  • testing/Internals.cpp:

(WebCore::Internals::setPageZoomFactor):

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

LayoutTests:

  • fast/media/media-query-with-scaled-content-expected.html: Added.
  • fast/media/media-query-with-scaled-content.html: Added.
3:50 PM Changeset in webkit [169778] by matthew_hanson@apple.com
  • 5 edits in tags/Safari-538.39.40/Source/WebCore

Merge r169681. <rdar://problem/16850492>

3:47 PM Changeset in webkit [169777] by Simon Fraser
  • 4 edits in trunk

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

Revert the part of r169733 that caused this test to start failing.

Source/WebCore:

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange):

LayoutTests:

  • platform/mac/TestExpectations:
3:39 PM Changeset in webkit [169776] by matthew_hanson@apple.com
  • 2 edits in tags/Safari-538.39.40/Source/WebCore

Merge r169685. <rdar://problem/16478676>

3:30 PM Changeset in webkit [169775] by timothy_horton@apple.com
  • 10 edits
    2 adds in trunk/Source

Factor repeated CFRunLoopObserver code out
https://bugs.webkit.org/show_bug.cgi?id=133690

Reviewed by Simon Fraser.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/cf/RunLoopObserver.cpp: Added.

(WebCore::RunLoopObserver::create):
(WebCore::RunLoopObserver::~RunLoopObserver):
(WebCore::RunLoopObserver::runLoopObserverFired):
(WebCore::RunLoopObserver::schedule):
(WebCore::RunLoopObserver::invalidate):

  • platform/cf/RunLoopObserver.h: Added.

(WebCore::RunLoopObserver::isScheduled):
(WebCore::RunLoopObserver::RunLoopObserver):
Factor CFRunLoopObserver management code out of LayerFlushScheduler and WebKit2.

  • platform/graphics/ca/LayerFlushScheduler.h:
  • platform/graphics/ca/mac/LayerFlushSchedulerMac.cpp:

(WebCore::LayerFlushScheduler::LayerFlushScheduler):
(WebCore::LayerFlushScheduler::~LayerFlushScheduler):
(WebCore::LayerFlushScheduler::layerFlushCallback):
(WebCore::LayerFlushScheduler::schedule):
(WebCore::LayerFlushScheduler::invalidate):
(WebCore::LayerFlushScheduler::runLoopObserverCallback): Deleted.
Make use of WebCore::RunLoopObserver.

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

(WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
(WebKit::RemoteLayerTreeDrawingAreaProxy::~RemoteLayerTreeDrawingAreaProxy):
(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
(WebKit::RemoteLayerTreeDrawingAreaProxy::showDebugIndicator):
(WebKit::coreAnimationDidCommitLayersCallback): Deleted.
(WebKit::RemoteLayerTreeDrawingAreaProxy::scheduleCoreAnimationLayerCommitObserver): Deleted.
(WebKit::RemoteLayerTreeDrawingAreaProxy::coreAnimationDidCommitLayers): Deleted.
Make use of WebCore::RunLoopObserver.

  • WebView/WebViewData.h:
3:25 PM Changeset in webkit [169774] by matthew_hanson@apple.com
  • 1 edit in tags/Safari-538.39.40/Source/WebCore/ChangeLog

Merge r167907. <rdar://problem/16478676>

3:14 PM Changeset in webkit [169773] by Simon Fraser
  • 4 edits in trunk/Source/WebCore

Modernize loop code in scrolling tree code
https://bugs.webkit.org/show_bug.cgi?id=133688

Reviewed by Anders Carlsson.

Use new loop syntax for walking children.

  • page/scrolling/ScrollingStateNode.cpp:

(WebCore::ScrollingStateNode::cloneAndResetChildren):
(WebCore::ScrollingStateNode::removeChild):
(WebCore::ScrollingStateNode::willBeRemovedFromStateTree):
(WebCore::ScrollingStateNode::dump):

  • page/scrolling/ScrollingTreeNode.cpp:

(WebCore::ScrollingTreeNode::removeChild):

  • page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:

(WebCore::ScrollingTreeFrameScrollingNodeMac::setScrollLayerPosition):

3:10 PM Changeset in webkit [169772] by matthew_hanson@apple.com
  • 5 edits in tags/Safari-538.39.40/Source

Versioning.

2:56 PM Changeset in webkit [169771] by aestes@apple.com
  • 2 edits in trunk/LayoutTests

Use [ Pass Failure ] instead of [ Skip ] for the tests skipped in r169767.

  • platform/mac/TestExpectations:
2:53 PM Changeset in webkit [169770] by matthew_hanson@apple.com
  • 1 copy in tags/Safari-538.39.40

New Tag.

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

Fix availability declaration.

  • UIProcess/API/Cocoa/WKError.h:
2:40 PM Changeset in webkit [169768] by vjaquez@igalia.com
  • 2 edits in trunk/Tools

[GTK][gtkdoc] remove -Wcast-align
https://bugs.webkit.org/show_bug.cgi?id=133640

Apparently gcc warns that GParamSpec is not castable to
GParamSpecInt64/GParamSpecUInt64/GParamSpecDouble due they are 64bit, even
though ARM hackers claim that those only need 4byte alignment. As long as gcc
behaves that way, this warning is not very useful, also they break the Debian
packaging.

This patch appends the compiler flag -Wno-align-cast for the gtkdoc
scanner compilation, thus the compiler ignores the previous
-Waling-cast flag.

Reviewed by Martin Robinson.

  • gtk/generate-gtkdoc:

(get_generator_for_config):

2:36 PM Changeset in webkit [169767] by aestes@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (6/9/2014): Several TextTrackCue tests became very flaky
https://bugs.webkit.org/show_bug.cgi?id=133686

  • platform/mac/TestExpectations: Skipped the flaky tests
2:36 PM Changeset in webkit [169766] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Address a comment about a comment.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView evaluateJavaScript:completionHandler:]):

2:25 PM Changeset in webkit [169765] by andersca@apple.com
  • 10 edits
    1 copy in trunk/Source

Add -[WKWebView evaluateJavaScript:completionHandler:]
https://bugs.webkit.org/show_bug.cgi?id=133689
<rdar://problem/17152685>

Reviewed by Geoffrey Garen.

Source/WebCore:

  • English.lproj/Localizable.strings:

Add new localizable strings.

Source/WebKit2:

  • Shared/API/c/WKErrorRef.h:

Remove WKErrorCode typedef from here.

  • UIProcess/API/C/WKPageLoaderClient.h:

Use uint32_t instead of WKErrorCode.

  • UIProcess/API/Cocoa/WKError.h:

(NS_ENUM):
Add a WKErrorDomain and a WKErrorCode enum.

  • UIProcess/API/Cocoa/WKError.mm:

(localizedDescriptionForErrorCode):
Helper that returns the localized description given an error code.

(createNSError):
Helper that creates an NSError with the correct localized description given an error code.

  • UIProcess/API/Cocoa/WKErrorInternal.h:

Add helpers.

  • UIProcess/API/Cocoa/WKWebView.h:

Add evaluateJavaScript:completionHandler: method.

  • UIProcess/API/Cocoa/WKWebView.mm:

(callbackErrorCode):
Helper that returns a WKErrorCode from a WebKit::CallbackBase::Error enum.

(-[WKWebView evaluateJavaScript:completionHandler:]):
Run the JavaScript code and handle all the error cases.

(-[WKWebView _runJavaScriptInMainFrame:]):
Reimplement this using the API method.

  • WebKit2.xcodeproj/project.pbxproj:

Add new files.

2:20 PM Changeset in webkit [169764] by ap@apple.com
  • 2 edits in trunk/LayoutTests

[WK2] http/tests/navigation/new-window-redirect-history.html crashes
https://bugs.webkit.org/show_bug.cgi?id=127683

  • platform/wk2/TestExpectations: Changed expectation from Crash to Skip, because

it crashes every time, and generating more crash logs only makes other tests more
flaky without providing useful information.

1:56 PM Changeset in webkit [169763] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Don't call Connection::terminateSoon if the connection is null
https://bugs.webkit.org/show_bug.cgi?id=133695
<rdar://problem/17069024>

Reviewed by Tim Horton.

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::removeWebPage):

1:54 PM Changeset in webkit [169762] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Skip some more flaky tests.
https://bugs.webkit.org/show_bug.cgi?id=133696
<rdar://problem/17257097>

  • platform/wk2/TestExpectations:
1:47 PM Changeset in webkit [169761] by aestes@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (r169733): compositing/iframes/become-composited-nested-iframes.html fails on WebKit1 bots
https://bugs.webkit.org/show_bug.cgi?id=133694

  • platform/mac/TestExpectations: Marked the test as failing
1:41 PM Changeset in webkit [169760] by ap@apple.com
  • 2 edits in trunk/LayoutTests

fast/dom/beforeload/remove-frame-in-beforeload-listener.html and related tests are flaky
https://bugs.webkit.org/show_bug.cgi?id=133685

  • platform/wk2/TestExpectations: Skipped more affected tests.
1:33 PM Changeset in webkit [169759] by oliver@apple.com
  • 6 edits
    1 copy in trunk/Source/WebKit2

Add process entitlements
https://bugs.webkit.org/show_bug.cgi?id=133693

Reviewed by Alexey Proskuryakov.

Add entitlements description for Database process, and
ensure that we reference the correct seatbelt profiles.

  • Configurations/DatabaseService.Development.xcconfig:
  • Configurations/DatabaseService.xcconfig:
  • Configurations/Databases-iOS.entitlements:
  • Configurations/Network-iOS.entitlements:
  • Configurations/WebContent-iOS.entitlements:
  • WebKit2.xcodeproj/project.pbxproj:
1:29 PM Changeset in webkit [169758] by mark.lam@apple.com
  • 4 edits in trunk

Assertion failure at JSC::Structure::checkOffsetConsistency() const + 234.
<https://webkit.org/b/133356>

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:
The root cause of this issue is that a nonPropertyTransition can transition
a pinned dictionary structure to an unpinned dictionary structure. The new
structure will get a copy of the property table from the original structure.
However, when a GC occurs, the property table in the new structure will be
cleared because it is unpinned. This leads to complications in subsequent
derivative structures when flattening occurs, which eventually leads to the
assertion failure in this bug.

The fix is to ensure that the new dictionary structure generated by the
nonPropertyTransition will have a copy of its predecessor's property table
and is pinned.

  • runtime/Structure.cpp:

(JSC::Structure::nonPropertyTransition):

LayoutTests:

  • TestExpectations:
  • Undoing expectation for js/primitive-property-access-edge-cases.html now that the bug is fixed.
1:00 PM Changeset in webkit [169757] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix crashes on some plug-in tests.
https://bugs.webkit.org/show_bug.cgi?id=133691
<rdar://problem/17255836>

Reviewed by Anders Carlsson.

  • PluginProcess/PluginControllerProxy.cpp: (WebKit::PluginControllerProxy::initialize):

Cannot use TemporaryChange here, because the object may go away before stack unwinds.

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

platform/mac-wk2/plugins/destroy-during-async-npp-new.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=133692

  • platform/mac-wk2/TestExpectations: Skipped the test.
12:07 PM Changeset in webkit [169755] by Antti Koivisto
  • 5 edits in trunk/Source

Serialize ResourceRequests without platform request
https://bugs.webkit.org/show_bug.cgi?id=133679

Reviewed by Alexey Proskuryakov.

Source/WebCore:
We create platform requests in the web process just so we can serialize them. This is unnecessary work.

  • platform/network/ResourceRequestBase.h:

(WebCore::ResourceRequestBase::encodingRequiresPlatformData):
(WebCore::ResourceRequestBase::encodeWithoutPlatformData):
(WebCore::ResourceRequestBase::decodeWithoutPlatformData):

Add encoding and decoding functions here to avoid exposing internals.

  • platform/network/cf/ResourceRequest.h:

(WebCore::ResourceRequest::encodingRequiresPlatformData):

Allow encoding without platform data if it hasn't been created yet and there is no request body.

Source/WebKit2:

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<ResourceRequest>::encode):
(IPC::ArgumentCoder<ResourceRequest>::decode):

Encode ResourceRequest directly if possible.

11:47 AM Changeset in webkit [169754] by Brian Burg
  • 6 edits in trunk/Source/WebInspectorUI

Web Inspector: recording is overused as both noun and verb in TimelineManager
https://bugs.webkit.org/show_bug.cgi?id=132878

Reviewed by Joseph Pecoraro.

Rename most uses of the verb 'recording' to the verb 'capturing' for timelines.
Rename getter for the recording to activeRecording, and recordingEnabled to isCapturing().

When the timeline manager can handle multiple timeline data sets (i.e., 'recordings'),
it will be very confusing to have 'recording' as a plural noun and verb in the model.

  • UserInterface/Controllers/TimelineManager.js:

(WebInspector.TimelineManager):
(WebInspector.TimelineManager.prototype.get activeRecording):
(WebInspector.TimelineManager.prototype.isCapturing):
(WebInspector.TimelineManager.prototype.startCapturing):
(WebInspector.TimelineManager.prototype.stopCapturing):
(WebInspector.TimelineManager.prototype.eventRecorded.processRecord):
(WebInspector.TimelineManager.prototype.eventRecorded):
(WebInspector.TimelineManager.prototype._addRecord):
(WebInspector.TimelineManager.prototype._startAutoCapturing):
(WebInspector.TimelineManager.prototype._stopAutoRecordingSoon):
(WebInspector.TimelineManager.prototype._resetAutoRecordingDeadTimeTimeout):
(WebInspector.TimelineManager.prototype._mainResourceDidChange):
(WebInspector.TimelineManager.prototype._resourceWasAdded):
(WebInspector.TimelineManager.prototype.get recording): Deleted.
(WebInspector.TimelineManager.prototype.get recordingEnabled): Deleted.
(WebInspector.TimelineManager.prototype.startRecording): Deleted.
(WebInspector.TimelineManager.prototype.stopRecording): Deleted.
(WebInspector.TimelineManager.prototype._startAutoRecording): Deleted.

  • UserInterface/Models/DefaultDashboard.js:

(WebInspector.DefaultDashboard):
(WebInspector.DefaultDashboard.prototype._mainResourceDidChange):
(WebInspector.DefaultDashboard.prototype._capturingStopped):
(WebInspector.DefaultDashboard.prototype._recordingStopped): Deleted.

  • UserInterface/Protocol/InspectorFrontendAPI.js:

(InspectorFrontendAPI.isTimelineProfilingEnabled):
(InspectorFrontendAPI.setTimelineProfilingEnabled):

  • UserInterface/Views/TimelineContentView.js:

(WebInspector.TimelineContentView.prototype._capturingStarted):
(WebInspector.TimelineContentView.prototype._capturingStopped):
(WebInspector.TimelineContentView.prototype._recordingStarted): Deleted.
(WebInspector.TimelineContentView.prototype._recordingStopped): Deleted.

  • UserInterface/Views/TimelineSidebarPanel.js:

(WebInspector.TimelineSidebarPanel.prototype.initialize):
(WebInspector.TimelineSidebarPanel.prototype._capturingStarted):
(WebInspector.TimelineSidebarPanel.prototype._capturingStopped):
(WebInspector.TimelineSidebarPanel.prototype._recordGlyphMousedOver):
(WebInspector.TimelineSidebarPanel.prototype._recordGlyphMousedOut):
(WebInspector.TimelineSidebarPanel.prototype._recordGlyphClicked):
(WebInspector.TimelineSidebarPanel.prototype._replayCaptureButtonClicked):
(WebInspector.TimelineSidebarPanel.prototype._recordingStarted): Deleted.
(WebInspector.TimelineSidebarPanel.prototype._recordingStopped): Deleted.

11:33 AM Changeset in webkit [169753] by fpizlo@apple.com
  • 2 edits in branches/ftlopt/Source/JavaScriptCore

[ftlopt] Structure::dfgShouldWatchIfPossible() is unsound
https://bugs.webkit.org/show_bug.cgi?id=133624

Reviewed by Mark Hahnenberg.

  • runtime/Structure.h:

(JSC::Structure::dfgShouldWatchIfPossible): Make it sound and add some verbiage.

11:03 AM Changeset in webkit [169752] by ap@apple.com
  • 2 edits in trunk/LayoutTests

fast/dom/beforeload/remove-frame-in-beforeload-listener.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=133685

  • platform/wk2/TestExpectations: Skipped the test.
10:58 AM Changeset in webkit [169751] by msaboff@apple.com
  • 4 edits
    3 adds in trunk

In a certain app state, Array.prototype.filter() returns incorrect results
https://bugs.webkit.org/show_bug.cgi?id=133577

Reviewed by Oliver Hunt.

Source/JavaScriptCore:
Fixed the LLInt processing of op_put_by_val_direct to have the same hole check as op_put_by_val.

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:

LayoutTests:
New test to check that the llint handles writing to an array hole from a built-in
function.

  • js/regress/put-by-val-direct-expected.txt: Added.
  • js/regress/put-by-val-direct.html: Added.
  • js/regress/script-tests/put-by-val-direct.js: Added.

(test):

10:52 AM Changeset in webkit [169750] by beidson@apple.com
  • 4 edits in trunk/Source/WebCore

Send more context about text selection to telephone number scanner
<rdar://problem/16874385> and https://bugs.webkit.org/show_bug.cgi?id=133684

Reviewed by Enrica Casucci.

  • dom/Range.cpp:

(WebCore::rangesOverlap):Add a utility to check if two ranges overlap.

  • dom/Range.h:
  • editing/Editor.cpp:

(WebCore::Editor::scanSelectionForTelephoneNumbers): Create a range that is wider than the

actual selection to search for phone numbers that are not completely selected yet.

10:42 AM Changeset in webkit [169749] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] Another unreviewed build fix after r169746.

  • platform/cocoa/MemoryPressureHandlerCocoa.mm:

Prevent another unused value error.

10:37 AM Changeset in webkit [169748] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] Unreviewed build fix after r169746.

  • platform/cocoa/MemoryPressureHandlerCocoa.mm:

(WebCore::MemoryPressureHandler::respondToMemoryPressure):
Protect startTime with !PLATFORM(IOS) to prevent a unused variable build error.

10:19 AM Changeset in webkit [169747] by Chris Fleizach
  • 4 edits in trunk/Source/WebCore

AX: WK2: iOS: text editing does not work
https://bugs.webkit.org/show_bug.cgi?id=133666

Reviewed by Mario Sanchez Prada.

In WK2, all the text editing is handled by the WebProcess, so selectedTextRange and setSelectedTextRange
need to be implemented, as well as posting the right value change notification.

  • accessibility/ios/AXObjectCacheIOS.mm:

(WebCore::AXObjectCache::postPlatformNotification):

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.h:
  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper postValueChangedNotification]):
(-[WebAccessibilityObjectWrapper _accessibilitySelectedTextRange]):
(-[WebAccessibilityObjectWrapper _accessibilitySetSelectedTextRange:]):

9:02 AM Changeset in webkit [169746] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

[iOS WebKit2] Stay in "memory pressure" mode until told otherwise.
<https://webkit.org/b/133671>

When we receive the first memory pressure signal, flip the flag in
MemoryPressureHandler so that isUnderMemoryPressure() returns true
from then on, until the system tells us pressure levels are back
to normal.

The hold-off mechanism is disabled for iOS, that wasn't actually
needed in the first place, since the system is not going to spam
you with tons of notifications.

Also propagate the "critical" flag all the way from the system
to the pressure handler. Note that we don't actually do anything
differently based on the flag yet.

Reviewed by Sam Weinig.

  • platform/MemoryPressureHandler.cpp:

(WebCore::MemoryPressureHandler::respondToMemoryPressure):

  • platform/MemoryPressureHandler.h:

(WebCore::MemoryPressureHandler::setUnderMemoryPressure):

  • platform/cocoa/MemoryPressureHandlerCocoa.mm:

(WebCore::MemoryPressureHandler::install):
(WebCore::MemoryPressureHandler::respondToMemoryPressure):

8:46 AM Changeset in webkit [169745] by Simon Fraser
  • 8 edits in trunk

Fix logging of sticky scrolling tree nodes
https://bugs.webkit.org/show_bug.cgi?id=133670

Reviewed by Sam Weinig.

Source/WebCore:

ScrollingStateStickyNode::dumpProperties() dumped stickyBoxRect() twice and
didn't dump constrainingRectAtLastLayout(), so fix that.

  • page/scrolling/ScrollingStateStickyNode.cpp:

(WebCore::ScrollingStateStickyNode::dumpProperties):

LayoutTests:

Rebaselined.

  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/frames/coordinated-frame-in-fixed-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/sticky/negative-scroll-offset-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/sticky/sticky-horizontal-expected.txt:
  • platform/mac-wk2/tiled-drawing/scrolling/sticky/sticky-vertical-expected.txt:
3:23 AM Changeset in webkit [169744] by svillar@igalia.com
  • 6 edits
    2 adds in trunk

[CSS Grid Layout] Simplify the named grid lines resolution algorithm
https://bugs.webkit.org/show_bug.cgi?id=133543

Reviewed by Darin Adler.

Source/WebCore:
Named grid lines resolution algorithm can be heavily simplified by
inserting the implicit named grid lines generated by each grid
area (<area-name>-{start|end} for rows and columns), into the list
of user defined named grid lines. This way we would only have to
deal with named grid lines and forget about the named grid areas
(as described in the specs
http://dev.w3.org/csswg/css-grid/#grid-placement-slot).

As a nice side effect, we'll get for free the implementation of the
use case described in section 5.2.2 Implicit Named Areas.

Test: fast/css-grid-layout/named-grid-lines-with-named-grid-areas-dynamic-get-set.html

  • css/StyleResolver.cpp:

(WebCore::createImplicitNamedGridLinesFromGridArea):
(WebCore::StyleResolver::applyProperty):

  • rendering/RenderGrid.cpp:

(WebCore::isStartSide):
(WebCore::gridLinesForSide):
(WebCore::implicitNamedGridLineForSide):
(WebCore::isNonExistentNamedLineOrArea):
(WebCore::RenderGrid::adjustGridPositionsFromStyle):
(WebCore::RenderGrid::resolveNamedGridLinePositionFromStyle):
(WebCore::RenderGrid::resolveGridPositionFromStyle):
(WebCore::RenderGrid::resolveNamedGridLinePositionAgainstOppositePosition):
(WebCore::gridLineDefinedBeforeGridArea): Deleted.
(WebCore::setNamedLinePositionIfDefinedBeforeArea): Deleted.
(WebCore::RenderGrid::adjustNamedGridItemPosition): Deleted.

LayoutTests:
Added a new test that checks that named grid lines and areas are
correctly set after dynamically changing them with JS. It also
verifies that we properly recompute the resolution of named grid
lines/areas when the positioning properties change.

Also appended a new test case to verify that explicitly adding
named lines of the form <foo-start>/<foo-end> effectively creates
implicit named grid areas so that we could use them in grid
placement properties (for example -webkit-grid-column: foo).

No need to add more tests for named grid lines/areas resolution as
we already have a quite good coverage (the feature was already
there, we're simplifying/improving the implementation).

  • fast/css-grid-layout/named-grid-lines-with-named-grid-areas-dynamic-get-set-expected.txt: Added.
  • fast/css-grid-layout/named-grid-lines-with-named-grid-areas-dynamic-get-set.html: Added.
  • fast/css-grid-layout/named-grid-lines-with-named-grid-areas-resolution-expected.txt:
  • fast/css-grid-layout/named-grid-lines-with-named-grid-areas-resolution.html:
3:17 AM Changeset in webkit [169743] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

[MediaStream] Add getTracks() support to MediaStream.
https://bugs.webkit.org/show_bug.cgi?id=133641

Patch by Kiran <kiran.guduru@samsung.com> on 2014-06-10
Reviewed by Eric Carlson.

Source/WebCore:
A new method named getTracks is proposed to retrieve all the tracks
of a MediaStream irrespective of the type. This method has been implementd.

Test: fast/mediastream/MediaStream-getTracks.html

  • Modules/mediastream/MediaStream.cpp:

(WebCore::MediaStream::getTracks):

  • Modules/mediastream/MediaStream.h:
  • Modules/mediastream/MediaStream.idl:

LayoutTests:

  • fast/mediastream/MediaStream-getTracks-expected.txt: Added.
  • fast/mediastream/MediaStream-getTracks.html: Added.
Note: See TracTimeline for information about the timeline view.