Timeline



Jun 28, 2014:

7:44 PM Changeset in webkit [170572] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] Pinching into a video (fullscreen gesture) leaves page zoomed in
https://bugs.webkit.org/show_bug.cgi?id=134433
<rdar://problem/16630794>

Reviewed by Eric Carlson.

Detect the number of target touches (those directly on the
video element) and disable the page zoom if it looks
like the user is trying to trigger fullscreen.

  • Modules/mediacontrols/mediaControlsiOS.js:

(ControllerIOS.prototype.handleBaseGestureStart): If we are seeing
two touches in this video element, don't trigger fullscreen. The
exception is if we haven't yet started playback.
(ControllerIOS.prototype.handleBaseGestureChange): Don't allow fullscreen
if we haven't started playback (iOS 7 behaviour).
(ControllerIOS.prototype.handleWrapperTouchStart): Keep track of the
number of targetted touches.

4:49 PM Changeset in webkit [170571] by fpizlo@apple.com
  • 17 edits in branches/ftlopt/Source/JavaScriptCore

[ftlopt] Reduce the GC's influence on optimization decisions
https://bugs.webkit.org/show_bug.cgi?id=134427

Reviewed by Oliver Hunt.

This is a slight speed-up on some platforms, that arises from a bunch of fixes that I made
while trying to make the GC keep more structures alive
(https://bugs.webkit.org/show_bug.cgi?id=128072).

The fixes are, roughly:

  • If the GC clears an inline cache, then this no longer causes the IC to be forever polymorphic.


  • If we exit in inlined code into a function that tries to OSR enter, then we jettison sooner.


  • Some variables being uninitialized led to rage-recompilations.


This is a pretty strong step in the direction of keeping more Structures alive and not
blowing away code just because a Structure died. But, it seems like there is still a slight
speed-up to be had from blowing away code that references dead Structures.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpAssumingJITType):
(JSC::shouldMarkTransition):
(JSC::CodeBlock::propagateTransitions):
(JSC::CodeBlock::determineLiveness):

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeForStubInfo):

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeForStubInfo):

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::isSupportedForInlining):
(JSC::DFG::mightInlineFunctionForCall):
(JSC::DFG::mightInlineFunctionForClosureCall):
(JSC::DFG::mightInlineFunctionForConstruct):

  • dfg/DFGCapabilities.h:
  • dfg/DFGCommonData.h:
  • dfg/DFGDesiredWeakReferences.cpp:

(JSC::DFG::DesiredWeakReferences::reallyAdd):

  • dfg/DFGOSREntry.cpp:

(JSC::DFG::prepareOSREntry):

  • dfg/DFGOSRExitCompilerCommon.cpp:

(JSC::DFG::handleExitCounts):

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • ftl/FTLForOSREntryJITCode.cpp:

(JSC::FTL::ForOSREntryJITCode::ForOSREntryJITCode): These variables being uninitialized is benign in terms of correctness but can sometimes cause rage-recompilations. For some reason it took this patch to reveal this.

  • ftl/FTLOSREntry.cpp:

(JSC::FTL::prepareOSREntry):

  • runtime/Executable.cpp:

(JSC::ExecutableBase::destroy):
(JSC::NativeExecutable::destroy):
(JSC::ScriptExecutable::ScriptExecutable):
(JSC::ScriptExecutable::destroy):
(JSC::ScriptExecutable::installCode):
(JSC::EvalExecutable::EvalExecutable):
(JSC::ProgramExecutable::ProgramExecutable):

  • runtime/Executable.h:

(JSC::ScriptExecutable::setDidTryToEnterInLoop):
(JSC::ScriptExecutable::didTryToEnterInLoop):
(JSC::ScriptExecutable::addressOfDidTryToEnterInLoop):
(JSC::ScriptExecutable::ScriptExecutable): Deleted.

  • runtime/StructureInlines.h:

(JSC::Structure::storedPrototypeObject):
(JSC::Structure::storedPrototypeStructure):

3:39 PM Changeset in webkit [170570] by timothy_horton@apple.com
  • 10 edits in trunk/Source/WebKit2

[iOS][WK2] PDFs never load inline again after the Web process crashes
https://bugs.webkit.org/show_bug.cgi?id=134432
<rdar://problem/17484205>

Reviewed by Dan Bernstein.

After a crash, the WebPage never gets mimeTypesWithCustomContentProviders filled back in.

  • Shared/WebPageCreationParameters.cpp:

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

  • Shared/WebPageCreationParameters.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::creationParameters):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
Add mimeTypesWithCustomContentProviders to WebPageCreationParameters.

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

(-[WKWebViewContentProviderRegistry addPage:]):
We don't need to send the MIME types across when a page is added, because it already got them in its creation parameters.

(-[WKWebViewContentProviderRegistry removePage:]):
(-[WKWebViewContentProviderRegistry _mimeTypesWithCustomContentProviders]):
Return a vector of all registered MIME types.

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

(WebKit::PageClientImpl::mimeTypesWithCustomContentProviders):

  • UIProcess/PageClient.h:

Add (iOS only for now) mimeTypesWithCustomContentProviders to PageClient.

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

REGRESSION: WebPageProxy::attributedSubstringForCharacterRangeAsync never calls its callback function
https://bugs.webkit.org/show_bug.cgi?id=134429

Reviewed by Tim Horton.

  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::attributedSubstringForCharacterRangeAsync):

7:50 AM Changeset in webkit [170568] by Simon Fraser
  • 7 edits in trunk/Source

[iOS WK2] position:fixed inside accelerated overflow:scroll is jumpy
https://bugs.webkit.org/show_bug.cgi?id=134426
<rdar://problem/17474523>

Reviewed by Tim Horton.

After committing a new layer tree (with possibly stale position:fixed layer
positions), we need the scrolling tree to update those positions based on
the current scroll offset.

Source/WebCore:
Give ScrollingTreeScrollingNode an implementation of updateLayersAfterAncestorChange()
which is required to update fixed/sticky child nodes.

  • WebCore.exp.in:
  • page/scrolling/ScrollingTreeScrollingNode.cpp:

(WebCore::ScrollingTreeScrollingNode::updateLayersAfterAncestorChange):

  • page/scrolling/ScrollingTreeScrollingNode.h:

Source/WebKit2:
To achieve that, implement ScrollingTreeOverflowScrollingNodeIOS::updateLayersAfterAncestorChange()
and have it add to the cumulative delta the difference between the last committed scroll
position and the current scroll position.

Also make sure that ScrollingTreeOverflowScrollingNodeIOS doesn't call back to scrollViewDidScroll()
when we're updating its scroll position inside a scrolling tree commit.

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

(WebKit::ScrollingTreeOverflowScrollingNodeIOS::ScrollingTreeOverflowScrollingNodeIOS):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateAfterChildren):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateLayersAfterAncestorChange):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::scrollViewDidScroll):

2:06 AM Changeset in webkit [170567] by commit-queue@webkit.org
  • 11 edits in trunk/Source/WebCore

[GTK] Use public getter/setter in GObject DOM bindings properties implementation.
https://bugs.webkit.org/show_bug.cgi?id=134390.

Patch by Juan A. Suarez Romero <jasuarez@igalia.com> and Carlos Garcia Campos <cgarcia@igalia.com> on 2014-06-28
Reviewed by Carlos Garcia Campos.

The current GObject DOM bindings generator is duplicating code when
implementing the get/set_property methods and the public
getters/setters, instead of making one invoking the other.

This commit changes this behaviour so the code is not duplicated,
making it easier to maintain.

No new tests needed.

  • bindings/scripts/CodeGeneratorGObject.pm:

(GenerateProperty):
(GenerateProperties):
(WriteData):
(GetCoreObject): Deleted.

  • bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.cpp:

(webkit_dom_test_active_dom_object_get_property):

  • bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.cpp:

(webkit_dom_test_event_constructor_get_property):

  • bindings/scripts/test/GObject/WebKitDOMTestException.cpp:

(webkit_dom_test_exception_get_property):

  • bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:

(webkit_dom_test_interface_set_property):
(webkit_dom_test_interface_get_property):

  • bindings/scripts/test/GObject/WebKitDOMTestNondeterministic.cpp:

(webkit_dom_test_nondeterministic_set_property):
(webkit_dom_test_nondeterministic_get_property):

  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:

(webkit_dom_test_obj_set_property):
(webkit_dom_test_obj_get_property):

  • bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:

(webkit_dom_test_serialized_script_value_interface_get_property):

  • bindings/scripts/test/GObject/WebKitDOMTestTypedefs.cpp:

(webkit_dom_test_typedefs_set_property):
(webkit_dom_test_typedefs_get_property):

  • bindings/scripts/test/GObject/WebKitDOMattribute.cpp:

(webkit_dom_test_exception_get_property):
(webkit_dom_attribute_get_property):

1:44 AM Changeset in webkit [170566] by stavila@adobe.com
  • 3 edits
    2 adds in trunk

[New Multicolumn] Elements with rounded corners and overflow:hidden do not properly clip their content
https://bugs.webkit.org/show_bug.cgi?id=133941

Reviewed by Darin Adler.

Source/WebCore:
When having a multicol element inside an element with overflow:hidden and border-radius,
the fragments representing the columns need to have the border radius set also, to ensure
proper clipping.

Test: fast/multicol/newmulticol/multicol-clip-rounded-corners.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::collectFragments):

LayoutTests:
Added test for multicol element inside an element with overflow:hidden and border radius.

  • fast/multicol/newmulticol/multicol-clip-rounded-corners-expected.html: Added.
  • fast/multicol/newmulticol/multicol-clip-rounded-corners.html: Added.

Jun 27, 2014:

10:51 PM Changeset in webkit [170565] by timothy_horton@apple.com
  • 2 edits in trunk/Tools

check-webkit-style should check the order of #imports as well as #includes
https://bugs.webkit.org/show_bug.cgi?id=134428

Reviewed by Dan Bernstein.

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

Allow "import" in addition to "include", so that the sort order of headers in ObjC files is checked.

10:43 PM Changeset in webkit [170564] by fpizlo@apple.com
  • 38 edits
    1 add
    2 deletes in branches/ftlopt

[ftlopt] If a CodeBlock is jettisoned due to a watchpoint then it should be possible to figure out something about that watchpoint
https://bugs.webkit.org/show_bug.cgi?id=134333

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

This is engineered to provide loads of information to the profiler without incurring any
costs when the profiler is disabled. It's the oldest trick in the book: the thing that
fires the watchpoint doesn't actually create anything to describe the reason why it was
fired; instead it creates a stack-allocated FireDetail subclass instance. Only if the
FireDetail::dump() virtual method is called does anything happen.

Currently we use this to produce very fine-grained data for Structure watchpoints and
some cases of variable watchpoints. For all other situations, the given reason is just a
string constant, by using StringFireDetail. If we find a situation where that string
constant is insufficient to diagnose an issue then we can change it to provide more
fine-grained information.

(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::jettison):

  • bytecode/CodeBlock.h:
  • bytecode/CodeBlockJettisoningWatchpoint.cpp:

(JSC::CodeBlockJettisoningWatchpoint::fireInternal):

  • bytecode/CodeBlockJettisoningWatchpoint.h:
  • bytecode/ProfiledCodeBlockJettisoningWatchpoint.cpp: Removed.
  • bytecode/ProfiledCodeBlockJettisoningWatchpoint.h: Removed.
  • bytecode/StructureStubClearingWatchpoint.cpp:

(JSC::StructureStubClearingWatchpoint::fireInternal):

  • bytecode/StructureStubClearingWatchpoint.h:
  • bytecode/VariableWatchpointSet.h:

(JSC::VariableWatchpointSet::invalidate):
(JSC::VariableWatchpointSet::finalizeUnconditionally):

  • bytecode/VariableWatchpointSetInlines.h:

(JSC::VariableWatchpointSet::notifyWrite):

  • bytecode/Watchpoint.cpp:

(JSC::StringFireDetail::dump):
(JSC::WatchpointSet::fireAll):
(JSC::WatchpointSet::fireAllSlow):
(JSC::WatchpointSet::fireAllWatchpoints):
(JSC::InlineWatchpointSet::fireAll):

  • bytecode/Watchpoint.h:

(JSC::FireDetail::FireDetail):
(JSC::FireDetail::~FireDetail):
(JSC::StringFireDetail::StringFireDetail):
(JSC::Watchpoint::fire):
(JSC::WatchpointSet::fireAll):
(JSC::WatchpointSet::touch):
(JSC::WatchpointSet::invalidate):
(JSC::InlineWatchpointSet::fireAll):
(JSC::InlineWatchpointSet::touch):

  • dfg/DFGCommonData.h:
  • dfg/DFGOperations.cpp:
  • interpreter/Interpreter.cpp:

(JSC::Interpreter::execute):

  • jsc.cpp:

(WTF::Masquerader::create):

  • profiler/ProfilerCompilation.cpp:

(JSC::Profiler::Compilation::setJettisonReason):
(JSC::Profiler::Compilation::toJS):

  • profiler/ProfilerCompilation.h:

(JSC::Profiler::Compilation::setJettisonReason): Deleted.

  • runtime/ArrayBuffer.cpp:

(JSC::ArrayBuffer::transfer):

  • runtime/ArrayBufferNeuteringWatchpoint.cpp:

(JSC::ArrayBufferNeuteringWatchpoint::fireAll):

  • runtime/ArrayBufferNeuteringWatchpoint.h:
  • runtime/CommonIdentifiers.h:
  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/Identifier.cpp:

(JSC::Identifier::dump):

  • runtime/Identifier.h:
  • runtime/JSFunction.cpp:

(JSC::JSFunction::put):
(JSC::JSFunction::defineOwnProperty):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::addFunction):
(JSC::JSGlobalObject::haveABadTime):

  • runtime/JSSymbolTableObject.cpp:

(JSC::VariableWriteFireDetail::dump):

  • runtime/JSSymbolTableObject.h:

(JSC::VariableWriteFireDetail::VariableWriteFireDetail):
(JSC::symbolTablePut):
(JSC::symbolTablePutWithAttributes):

  • runtime/PropertyName.h:

(JSC::PropertyName::dump):

  • runtime/Structure.cpp:

(JSC::Structure::notifyTransitionFromThisStructure):

  • runtime/Structure.h:

(JSC::Structure::notifyTransitionFromThisStructure): Deleted.

  • runtime/SymbolTable.cpp:

(JSC::SymbolTableEntry::notifyWriteSlow):
(JSC::SymbolTable::WatchpointCleanup::finalizeUnconditionally):

  • runtime/SymbolTable.h:

(JSC::SymbolTableEntry::notifyWrite):

  • runtime/VM.cpp:

(JSC::VM::addImpureProperty):

Source/WebCore:

No new tests because no change in behavior.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):

Tools:

  • Scripts/display-profiler-output:
6:34 PM Changeset in webkit [170563] by Alan Bujtas
  • 4 edits
    2 adds in trunk

Subpixel rendering: Background clipping with subpixel behaves differently when composited.
https://bugs.webkit.org/show_bug.cgi?id=134422

Reviewed by Simon Fraser.

Adjust cliprect with the subpixel offset from the graphics layer the same way we do it for painting.
It ensures that cliprect starts from the right position when graphics layer is not on the same
coordinates as the associated render layer.

Source/WebCore:
Test: compositing/hidpi-compositing-layer-with-subpixel-offset-accumulation-clipping.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::clipToRect):
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::applyFilters):
(WebCore::RenderLayer::paintTransformedLayerIntoFragments):
(WebCore::RenderLayer::paintBackgroundForFragments):
(WebCore::RenderLayer::paintForegroundForFragments):
(WebCore::RenderLayer::paintForegroundForFragmentsWithPhase):
(WebCore::RenderLayer::paintOutlineForFragments):
(WebCore::RenderLayer::paintMaskForFragments):
(WebCore::RenderLayer::paintOverflowControlsForFragments):
(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderLayer.h:

LayoutTests:

  • compositing/hidpi-compositing-layer-with-subpixel-offset-accumulation-clipping-expected.html: Added.
  • compositing/hidpi-compositing-layer-with-subpixel-offset-accumulation-clipping.html: Added.
5:19 PM Changeset in webkit [170562] by Brent Fulgham
  • 18 edits
    4 adds in trunk/Source

[Win] Implement parts of the AVFOUNDATION_LOADER_DELEGATE logic for Windows
https://bugs.webkit.org/show_bug.cgi?id=134418

Reviewed by Eric Carlson.

../WebCore:
Land an initial implementation of AVFOUNDATION_LOADER_DELEGATE for
Windows.

  • DerivedSources.cpp: Add new IDL files
  • DerivedSources.make: Add check for AVFOUNDATION_LOADER_DELEGATE.
  • Modules/encryptedmedia/CDMPrivateMediaPlayer.cpp: Added (ported from

Objective C.)

  • WebCore.vcxproj/WebCore.vcxproj: Update for new files.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
  • WebCore.vcxproj/WebCoreCommon.props: Add new search paths.
  • WebCore.vcxproj/WebCoreTestSupport.vcxproj: Update for new files.
  • WebCore.vcxproj/WebCoreTestSupport.vcxproj.filters: Ditto.
  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::extractKeyURIKeyIDAndCertificateFromInitData):
Moved from MediaPlayerPrivateAVFoundationObjC.

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
  • platform/graphics/avfoundation/cf/AVFoundationCFSoftLinking.h:

Update for new API calls.

  • platform/graphics/avfoundation/cf/CDMSessionAVFoundationCF.cpp: Added.
  • platform/graphics/avfoundation/cf/CDMSessionAVFoundationCF.h: Added.
  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

Updated for new AVFOUNDATION_LOADER_DELEGATE methods.

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
  • platform/graphics/avfoundation/cf/WebCoreAVCFResourceLoader.cpp: Added.
  • platform/graphics/avfoundation/cf/WebCoreAVCFResourceLoader.h: Added.
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

Remove method that was moved to base class.

../WebKit:

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

export.

4:32 PM Changeset in webkit [170561] by benjamin@webkit.org
  • 5 edits in trunk/Source/WebCore

Remove BufferForAppendingHyphen
https://bugs.webkit.org/show_bug.cgi?id=134376

Reviewed by Darin Adler.

It is legacy, from a time when that code was using a Vector.

The problem is that StringBuilder's memory was also implicitly used to keep
the string alive for the lifespan of the TextRun. That seems quite dangerous
as changes in StringBuilder could have changed that.

To fix the lifetime issue, my first idea was to make it explicit by passing
a String reference to hold the memory alive, and a boolean to say if the text
need an hyphen. The problem with that is this code is very hot and I made things
worse.

The solution with this patch is to just pass a pointer to a String to do both
the buffer reference, and the decision to add the hyphen. Having a single
argument with 2 meanings is not pretty but that's not worse than the old buffer.

  • editing/TextIterator.cpp:
  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::localSelectionRect):
(WebCore::InlineTextBox::paint):
(WebCore::InlineTextBox::paintSelection):
(WebCore::InlineTextBox::constructTextRun):
(WebCore::adjustCharactersAndLengthForHyphen): Deleted.

  • rendering/InlineTextBox.h:

(WebCore::BufferForAppendingHyphen::BufferForAppendingHyphen): Deleted.

  • rendering/RenderText.cpp:
4:28 PM Changeset in webkit [170560] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Lazily link frameworks in WebVideoFullscreenInterfaceAVKit.
https://bugs.webkit.org/show_bug.cgi?id=134407

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-06-27
Reviewed by Eric Carlson.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(-[WebAVPlayerController init]):
Load AVPlayerController on use.
(WebVideoFullscreenInterfaceAVKit::WebVideoFullscreenInterfaceAVKit):
Remove loading on construction.
(WebVideoFullscreenInterfaceAVKit::setCurrentTime): Load AVValueTiming on use.
(WebVideoFullscreenInterfaceAVKit::setupFullscreen): Load several classes on use.
(WebVideoFullscreenInterfaceAVKit::exitFullscreen): Load UIColor on use.

3:29 PM Changeset in webkit [170559] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove extra operations from 64-bit or on armv7.
https://bugs.webkit.org/show_bug.cgi?id=134408

Patch by Alex Christensen <achristensen@webkit.org> on 2014-06-27
Reviewed by Geoffrey Garen.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::addFlagsToElementStyleFromContext):
Only do or operations if it would change values.
Often we're only setting one flag, so half the operations are not necessary.

3:12 PM Changeset in webkit [170558] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

ScrollView::rootViewToTotalContents() needs to take topContentInset into account
https://bugs.webkit.org/show_bug.cgi?id=134415
-and corresponding-
<rdar://problem/17473633>

Reviewed by Simon Fraser.

This affects hit testing in headers aka PageBanners.

The root view will be anchored above the start of the total contents if there is a
topContentInset, so the inset value should be subtracted to get into the right
coordinate space here.

  • platform/ScrollView.cpp:

(WebCore::ScrollView::rootViewToTotalContents):

2:58 PM Changeset in webkit [170557] by Antti Koivisto
  • 15 edits
    1 add in trunk/Source

Flush throttling with remote layers
https://bugs.webkit.org/show_bug.cgi?id=134398

Reviewed by Darin Adler.

Source/WebCore:
With remote layer trees the flush scheduling lives in the WebKit2 layer. The throttling code
needs to live there as well.

Add the required callbacks and disable the existing throttling code in RenderLayerCompositor
when remote layers are in use. Later we can get rid of the RenderLayerCompositor throttling code.

  • WebCore.xcodeproj/project.pbxproj:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::loadProgressingStatusChanged):

  • page/ChromeClient.h:

(WebCore::ChromeClient::adjustLayerFlushThrottling):

  • page/FrameView.cpp:

(WebCore::FrameView::disableLayerFlushThrottlingTemporarilyForInteraction):
(WebCore::FrameView::loadProgressingStatusChanged):

Factor the progress status change activities to a function.

(WebCore::FrameView::updateLayerFlushThrottling):
(WebCore::FrameView::setExposedRect):

Move the call to adjustTiledBackingCoverage from WebKit to here.

(WebCore::FrameView::updateLayerFlushThrottlingInAllFrames): Deleted.

  • page/FrameView.h:
  • page/LayerFlushThrottleState.h: Added.
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::RenderLayerCompositor):

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::adjustLayerFlushThrottling):

  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm:
  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::adjustLayerFlushThrottling):

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

(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
(WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect):
(WebKit::RemoteLayerTreeDrawingArea::scheduleCompositingLayerFlush):

Delay layer flushes during page loading.
If use interacts with the page the next flush in unthrottled even if loading is in progress.

(WebKit::RemoteLayerTreeDrawingArea::adjustLayerFlushThrottling):

Compute the new delay. The first visual flush uses a shorter delay.
Flush immediately when we are no longer throttling.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::updateScrolledExposedRect):

2:57 PM Changeset in webkit [170556] by msaboff@apple.com
  • 2 edits in branches/ftlopt/Source/JavaScriptCore

Unreviewed build fix after r169795.

Fixed ASSERT for 32 bit build.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::silentSavePlanForGPR):

2:44 PM Changeset in webkit [170555] by fpizlo@apple.com
  • 4 edits
    1 add in trunk/Source/JavaScriptCore

Don't fold a UInt32ToNumber with DoOverflow to Identity since that would result in an Identity that takes an Int32 and returns a DoubleRep
https://bugs.webkit.org/show_bug.cgi?id=134412

Reviewed by Mark Hahnenberg.

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::setReplacement):

  • dfg/DFGStrengthReductionPhase.cpp:

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

  • dfg/DFGValidate.cpp:

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

  • tests/stress/uint32-to-number-fold-constant-with-do-overflow.js: Added.

(foo):
(bar):
(baz):

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

[iOS][WK2] <select> tapping "next" does not save new picker value
https://bugs.webkit.org/show_bug.cgi?id=134409

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-06-27
Reviewed by Enrica Casucci.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView accessoryTab:]):
We know the assisted node will change, so call endEditing
before the assisted node changes in the WebProcess.

(-[WKContentView _stopAssistingNode]):
Ensure we call endEditing to trigger controlEndEditing.

  • UIProcess/ios/forms/WKFormSelectPicker.mm:

(-[WKMultipleSelectPicker initWithView:]):
(-[WKMultipleSelectPicker pickerView:row:column:checked:]):
(-[WKSelectSinglePicker dealloc]):
Style fixes.

2:11 PM Changeset in webkit [170553] by beidson@apple.com
  • 6 edits in trunk/Source/WebCore

The user pressing a button on a gamepad should cause gamepads to become visible to all NavigatorGamepads.
https://bugs.webkit.org/show_bug.cgi?id=134375

Reviewed by Darin Adler.

No new tests (Not yet a tested config)

  • Modules/gamepad/GamepadManager.cpp:

(WebCore::GamepadManager::platformGamepadConnected): Also call to makeGamepadsVisibileToBlindNavigators.
(WebCore::GamepadManager::platformGamepadDisconnected):
(WebCore::GamepadManager::platformGamepadInputActivity): Call makeGamepadsVisibileToBlindNavigators.
(WebCore::GamepadManager::makeGamepadsVisibileToBlindNavigators): Walk through each blind navigator

notifying it of each connected Gamepad.

(WebCore::GamepadManager::registerNavigator): Also add to the blind navigator set.
(WebCore::GamepadManager::unregisterNavigator): Also remove from the blind navigator set.

  • Modules/gamepad/GamepadManager.h:
  • platform/GamepadProviderClient.h: Added platformGamepadInputActivity.
  • platform/mac/HIDGamepadProvider.cpp:

(WebCore::HIDGamepadProvider::HIDGamepadProvider):
(WebCore::HIDGamepadProvider::valuesChanged): Set the input notification timer which will notify the clients

that a button was pressed.

(WebCore::HIDGamepadProvider::inputNotificationTimerFired): Perform that notification.

  • platform/mac/HIDGamepadProvider.h:
2:04 PM Changeset in webkit [170552] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit/mac

InfoClick (from Nisus Software) dies on viewing found items
<rdar://problem/17395601>
https://bugs.webkit.org/show_bug.cgi?id=134410

Reviewed by Andy Estes.

InfoClick was calling -[WebPreferences setPrivateBrowsingEnabled:] before
setting up a WebView (or anything else that would have set up WebKitSystemInterface),
which now requires a set up WebKitSystemInterface. We can fix this by initializing
it from +[WebPreferences initialize].

  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]):
Add call to InitWebCoreSystemInterface().

(+[WebPreferences _switchNetworkLoaderToNewTestingSession]):
Remove now unnecessary call to InitWebCoreSystemInterface().

2:03 PM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
1:53 PM Changeset in webkit [170551] by beidson@apple.com
  • 3 edits in trunk/Source/WebCore

HIDGamepads should populate themselves with initial input values
https://bugs.webkit.org/show_bug.cgi?id=134381

Reviewed by Darin Adler.

No new tests (Not yet a tested config)

  • platform/mac/HIDGamepad.cpp:

(WebCore::HIDGamepad::getCurrentValueForElement):
(WebCore::HIDGamepad::initElements): Loop through all the saved elements to get current values.
(WebCore::HIDGamepad::maybeAddButton):
(WebCore::HIDGamepad::maybeAddAxis):

  • platform/mac/HIDGamepad.h:

(WebCore::HIDGamepadElement::HIDGamepadElement):
(WebCore::HIDGamepadButton::HIDGamepadButton):
(WebCore::HIDGamepadAxis::HIDGamepadAxis):

1:47 PM Changeset in webkit [170550] by commit-queue@webkit.org
  • 8 edits in trunk/Source

Source/JavaScriptCore: Add feature flag for link long-press gesture.

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

Reviewed by Enrica Casucci.

  • Configurations/FeatureDefines.xcconfig: Add ENABLE_LINK_LONG_PRESS.

Patch by Peyton Randolph <prandolph@apple.com> on 2014-06-27

Source/WebCore: Add feature flag for link long-press gesture.
https://bugs.webkit.org/show_bug.cgi?id=134262

Patch by Peyton Randolph <prandolph@apple.com> on 2014-06-27
Reviewed by Enrica Casucci.

  • Configurations/FeatureDefines.xcconfig:

Add ENABLE_LINK_LONG_PRESS.

Source/WebKit/mac: Add feature flag for link long-press gesture.
https://bugs.webkit.org/show_bug.cgi?id=134262

Patch by Peyton Randolph <prandolph@apple.com> on 2014-06-27
Reviewed by Enrica Casucci.

  • Configurations/FeatureDefines.xcconfig:

Add ENABLE_LINK_LONG_PRESS.

Source/WebKit2: Add feature flag for link long-press gesture.

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

Reviewed by Enrica Casucci.

  • Configurations/FeatureDefines.xcconfig: Add ENABLE_LINK_LONG_PRESS.

Patch by Peyton Randolph <prandolph@apple.com> on 2014-06-27

1:35 PM Changeset in webkit [170549] by beidson@apple.com
  • 4 edits in trunk/Source/WebCore

HIDGamepadProvider should only be active when someone is interested in Gamepads.
https://bugs.webkit.org/show_bug.cgi?id=134374

Reviewed by Darin Adler.

No new tests (Not yet a tested config)

  • Modules/gamepad/GamepadManager.cpp:

(WebCore::GamepadManager::registerNavigator): Add some logging.
(WebCore::GamepadManager::unregisterNavigator): Ditto.

  • platform/mac/HIDGamepadProvider.cpp:

(WebCore::HIDGamepadProvider::HIDGamepadProvider):
(WebCore::HIDGamepadProvider::connectionDelayTimerFired): Stop suppressing connection callbacks
(WebCore::HIDGamepadProvider::openAndScheduleManager):
(WebCore::HIDGamepadProvider::closeAndUnscheduleManager): Stop listening for gamepad events, and clear

all current gamepads.

(WebCore::HIDGamepadProvider::startMonitoringGamepads): If the first client, call openAndScheduleManager
(WebCore::HIDGamepadProvider::stopMonitoringGamepads): If the last client, call closeAndUnscheduleManager
(WebCore::HIDGamepadProvider::deviceAdded): If this callback came while we were suppressing connection

callbacks, it is a startup event for already-connected gamepads. Stop suppressing callbacks in a later
spin of the runloop.

(WebCore::HIDGamepadProvider::deviceRemoved):

  • platform/mac/HIDGamepadProvider.h:

(WebCore::HIDGamepadProvider::setShouldDispatchCallbacks): Deleted.

1:31 PM Changeset in webkit [170548] by achristensen@apple.com
  • 3 edits in trunk/Source/WebCore

Prevent unnecessary register saving in css jit.
https://bugs.webkit.org/show_bug.cgi?id=133955

Reviewed by Geoff Garen.

  • cssjit/FunctionCall.h:

(WebCore::FunctionCall::prepareAndCall):
(WebCore::FunctionCall::cleanupPostCall):
(WebCore::FunctionCall::saveAllocatedCallerSavedRegisters):
(WebCore::FunctionCall::restoreAllocatedCallerSavedRegisters):
(WebCore::FunctionCall::saveAllocatedRegisters): Renamed to saveAllocatedCallerSavedRegisters.
(WebCore::FunctionCall::restoreAllocatedRegisters): Renamed to restoreAllocatedCallerSavedRegisters.
Only push caller saved registers before function calls.

  • cssjit/RegisterAllocator.h:

(WebCore::RegisterAllocator::isValidRegister):
Corrected register ranges.
(WebCore::RegisterAllocator::isCallerSavedRegister): Added.

12:54 PM Changeset in webkit [170547] by jer.noble@apple.com
  • 35 edits in trunk/LayoutTests

Unreviewed gardening; fix whitespace issues in the W3C Media Source expected results.

  • http/tests/media/media-source/mediasource-addsourcebuffer-expected.txt:
  • http/tests/media/media-source/mediasource-append-buffer-expected.txt:
  • http/tests/media/media-source/mediasource-append-stream-expected.txt:
  • http/tests/media/media-source/mediasource-appendwindow-expected.txt:
  • http/tests/media/media-source/mediasource-buffered-expected.txt:
  • http/tests/media/media-source/mediasource-closed-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-mp4-a-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-mp4-av-audio-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-mp4-av-framesize-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-mp4-av-video-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-mp4-v-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-mp4-v-framerate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-mp4-v-framesize-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-webm-a-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-webm-av-audio-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-webm-av-framesize-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-webm-av-video-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-webm-v-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-webm-v-framerate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-webm-v-framesize-expected.txt:
  • http/tests/media/media-source/mediasource-duration-expected.txt:
  • http/tests/media/media-source/mediasource-endofstream-invaliderror-expected.txt:
  • http/tests/media/media-source/mediasource-endofstream-invaliderror.html:
  • http/tests/media/media-source/mediasource-getvideoplaybackquality-expected.txt:
  • http/tests/media/media-source/mediasource-is-type-supported-expected.txt:
  • http/tests/media/media-source/mediasource-multiple-attach-expected.txt:
  • http/tests/media/media-source/mediasource-play-expected.txt:
  • http/tests/media/media-source/mediasource-play-then-seek-back-expected.txt:
  • http/tests/media/media-source/mediasource-redundant-seek-expected.txt:
  • http/tests/media/media-source/mediasource-remove-expected.txt:
  • http/tests/media/media-source/mediasource-seek-beyond-duration-expected.txt:
  • http/tests/media/media-source/mediasource-seek-during-pending-seek-expected.txt:
  • http/tests/media/media-source/mediasource-sourcebuffer-mode-expected.txt:
  • http/tests/media/media-source/mediasource-sourcebufferlist-expected.txt:
12:22 PM Changeset in webkit [170546] by Beth Dakin
  • 6 edits in trunk/Source/WebCore

Custom scrollbars should not create ScrollbarPainters on Mac
https://bugs.webkit.org/show_bug.cgi?id=134406
-and corresponding-
<rdar://problem/16178301>

Reviewed by Tim Horton.

The solution here is to return early in ScrollbarThemeMac::registerScrollbar() if
the scrollbar is custom. However, since this function is called during the
RenderScrollbar and Scrollbar constructor, we need to re-implement
Scrollbar::isCustomScrollbar() to return a member variable that is passed into the
constructor. Otherwise, we will get Scrollbar’s implementation is
isCustomScrollbar() wrongfully returning false since instead of the derived
class’s implementation.

Scrollbar constructor now has an option parameter isCustomScrollbar that defaults
to false. That value is returned by isCustomScrollbar()

  • platform/Scrollbar.cpp:

(WebCore::Scrollbar::Scrollbar):

  • platform/Scrollbar.h:

Return early if this is a custom scrollbar since the rest of the function deals
with creating a native scrollbar and getting it in the right state.

  • platform/mac/ScrollbarThemeMac.mm:

(WebCore::ScrollbarThemeMac::registerScrollbar):

Send true to the Scrollbar constructor to indicate that this is a custom
scrollbar.

  • rendering/RenderScrollbar.cpp:

(WebCore::RenderScrollbar::RenderScrollbar):

  • rendering/RenderScrollbar.h:
12:17 PM Changeset in webkit [170545] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

[Mac] AVMetadataKeySpaceISOUserData not defined on 10.8
https://bugs.webkit.org/show_bug.cgi?id=134401

Reviewed by Jer Noble.

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

(WebCore::metadataType): Use SOFT_LINK_POINTER_OPTIONAL for AVMetadataKeySpaceISOUserData

so we don't have problems on OS versions where it isn't defined.

11:55 AM Changeset in webkit [170544] by mhodovan.u-szeged@partner.samsung.com
  • 3 edits
    2 adds in trunk

REGRESSION (r168685): css calc() expression fails
https://bugs.webkit.org/show_bug.cgi?id=134059

Source/WebCore:
The expression 'calc((100% - 20px) / 3' did not work properly after r168685,
because primitiveType() function in CSSCalculationValue.cpp has handled
CalcPercentLength and CalcPercentNumber categories as if they were angles.
The patch fixes this incorrect behavior.

Reviewed by Simon Fraser.

Test: fast/css/calc-percentage-pixel.html

  • css/CSSCalculationValue.cpp:

LayoutTests:
Added test demonstrates that expressions like
'calc((100% - 20px) / 3' work correctly again.

Reviewed by Simon Fraser.

  • fast/css/calc-percentage-pixel-expected.html: Added.
  • fast/css/calc-percentage-pixel.html: Added.
11:45 AM Changeset in webkit [170543] by jer.noble@apple.com
  • 3 edits in trunk/Source/WebCore

[MSE] http/tests/media/media-source/mediasource-append-buffer.html is failing
https://bugs.webkit.org/show_bug.cgi?id=134389

Reviewed by Eric Carlson.

Two subtests in mediasource-append-buffer.html are failing. Bring setDuration() up to spec
by throwing an exception if the duration is called while any SourceBuffer is updating. Do
not cancel pending events when a SourceBuffer is removed from its MediaSource. And mark the
SourceBuffer as having pending activity if there are pending events to be fired.

  • Modules/mediasource/MediaSource.cpp:

(WebCore::MediaSource::setDuration):

  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::removedFromMediaSource):
(WebCore::SourceBuffer::hasPendingActivity):

11:43 AM Changeset in webkit [170542] by jer.noble@apple.com
  • 47 edits
    22 copies
    46 adds
    44 deletes in trunk/LayoutTests

[MSE] Import latest Media Source tests from W3C test suite
https://bugs.webkit.org/show_bug.cgi?id=134388

Reviewed by Eric Carlson.

Import the most recent Media Source tests from the proposed W3C test suite:
<https://github.com/acolwell/web-platform-tests/tree/submission/acolwell/media-source/media-source>

No ports currently enable these tests, so update the expected results for each
test with the ideal expected result.

  • http/tests/media/media-source/mediasource-addsourcebuffer-expected.txt:
  • http/tests/media/media-source/mediasource-addsourcebuffer.html:
  • http/tests/media/media-source/mediasource-append-buffer-expected.txt:
  • http/tests/media/media-source/mediasource-append-buffer.html:
  • http/tests/media/media-source/mediasource-append-stream-expected.txt: Added.
  • http/tests/media/media-source/mediasource-append-stream.html: Added.
  • http/tests/media/media-source/mediasource-appendwindow-expected.txt: Added.
  • http/tests/media/media-source/mediasource-appendwindow.html: Added.
  • http/tests/media/media-source/mediasource-buffered-expected.txt:
  • http/tests/media/media-source/mediasource-buffered.html:
  • http/tests/media/media-source/mediasource-closed-expected.txt:
  • http/tests/media/media-source/mediasource-closed.html:
  • http/tests/media/media-source/mediasource-config-change-mp4-a-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-mp4-a-bitrate.html:
  • http/tests/media/media-source/mediasource-config-change-mp4-av-audio-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-mp4-av-audio-bitrate.html:
  • http/tests/media/media-source/mediasource-config-change-mp4-av-framesize-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-mp4-av-framesize.html:
  • http/tests/media/media-source/mediasource-config-change-mp4-av-video-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-mp4-av-video-bitrate.html:
  • http/tests/media/media-source/mediasource-config-change-mp4-v-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-mp4-v-bitrate.html:
  • http/tests/media/media-source/mediasource-config-change-mp4-v-framerate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-mp4-v-framerate.html:
  • http/tests/media/media-source/mediasource-config-change-mp4-v-framesize-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-mp4-v-framesize.html:
  • http/tests/media/media-source/mediasource-config-change-webm-a-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-webm-a-bitrate.html:
  • http/tests/media/media-source/mediasource-config-change-webm-av-audio-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-webm-av-audio-bitrate.html:
  • http/tests/media/media-source/mediasource-config-change-webm-av-framesize-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-webm-av-framesize.html:
  • http/tests/media/media-source/mediasource-config-change-webm-av-video-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-webm-av-video-bitrate.html:
  • http/tests/media/media-source/mediasource-config-change-webm-v-bitrate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-webm-v-bitrate.html:
  • http/tests/media/media-source/mediasource-config-change-webm-v-framerate-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-webm-v-framerate.html:
  • http/tests/media/media-source/mediasource-config-change-webm-v-framesize-expected.txt:
  • http/tests/media/media-source/mediasource-config-change-webm-v-framesize.html:
  • http/tests/media/media-source/mediasource-config-changes.js:
  • http/tests/media/media-source/mediasource-duration-expected.txt: Added.
  • http/tests/media/media-source/mediasource-duration.html: Added.
  • http/tests/media/media-source/mediasource-endofstream-invaliderror-expected.txt: Added.
  • http/tests/media/media-source/mediasource-endofstream-invaliderror.html: Added.
  • http/tests/media/media-source/mediasource-getvideoplaybackquality-expected.txt: Added.
  • http/tests/media/media-source/mediasource-getvideoplaybackquality.html: Added.
  • http/tests/media/media-source/mediasource-is-type-supported-expected.txt:
  • http/tests/media/media-source/mediasource-is-type-supported.html:
  • http/tests/media/media-source/mediasource-multiple-attach-expected.txt:
  • http/tests/media/media-source/mediasource-multiple-attach.html:
  • http/tests/media/media-source/mediasource-play-expected.txt:
  • http/tests/media/media-source/mediasource-play-then-seek-back-expected.txt: Added.
  • http/tests/media/media-source/mediasource-play-then-seek-back.html: Added.
  • http/tests/media/media-source/mediasource-play.html:
  • http/tests/media/media-source/mediasource-redundant-seek-expected.txt: Added.
  • http/tests/media/media-source/mediasource-redundant-seek.html: Added.
  • http/tests/media/media-source/mediasource-remove-expected.txt: Added.
  • http/tests/media/media-source/mediasource-remove.html: Added.
  • http/tests/media/media-source/mediasource-seek-beyond-duration-expected.txt: Added.
  • http/tests/media/media-source/mediasource-seek-beyond-duration.html: Added.
  • http/tests/media/media-source/mediasource-seek-during-pending-seek-expected.txt: Added.
  • http/tests/media/media-source/mediasource-seek-during-pending-seek.html: Added.
  • http/tests/media/media-source/mediasource-sourcebuffer-mode-expected.txt: Added.
  • http/tests/media/media-source/mediasource-sourcebuffer-mode.html: Added.
  • http/tests/media/media-source/mediasource-sourcebufferlist-expected.txt:
  • http/tests/media/media-source/mediasource-sourcebufferlist.html:
  • http/tests/media/media-source/mediasource-util.js:
  • http/tests/media/media-source/mp4/test-a-128k-44100Hz-1ch-manifest.json: Added.
  • http/tests/media/media-source/mp4/test-a-128k-44100Hz-1ch.mp4: Added.
  • http/tests/media/media-source/mp4/test-a-192k-44100Hz-1ch-manifest.json: Added.
  • http/tests/media/media-source/mp4/test-a-192k-44100Hz-1ch.mp4: Added.
  • http/tests/media/media-source/mp4/test-av-384k-44100Hz-1ch-320x240-30fps-10kfr-manifest.json: Added.
  • http/tests/media/media-source/mp4/test-av-384k-44100Hz-1ch-320x240-30fps-10kfr.mp4: Added.
  • http/tests/media/media-source/mp4/test-av-384k-44100Hz-1ch-640x480-30fps-10kfr-manifest.json: Added.
  • http/tests/media/media-source/mp4/test-av-384k-44100Hz-1ch-640x480-30fps-10kfr.mp4: Added.
  • http/tests/media/media-source/mp4/test-av-448k-44100Hz-1ch-640x480-30fps-10kfr-manifest.json: Added.
  • http/tests/media/media-source/mp4/test-av-448k-44100Hz-1ch-640x480-30fps-10kfr.mp4: Added.
  • http/tests/media/media-source/mp4/test-av-640k-44100Hz-1ch-640x480-30fps-10kfr-manifest.json: Added.
  • http/tests/media/media-source/mp4/test-av-640k-44100Hz-1ch-640x480-30fps-10kfr.mp4: Added.
  • http/tests/media/media-source/mp4/test-v-128k-320x240-24fps-8kfr-manifest.json: Added.
  • http/tests/media/media-source/mp4/test-v-128k-320x240-24fps-8kfr.mp4: Added.
  • http/tests/media/media-source/mp4/test-v-128k-320x240-30fps-10kfr-manifest.json: Added.
  • http/tests/media/media-source/mp4/test-v-128k-320x240-30fps-10kfr.mp4: Added.
  • http/tests/media/media-source/mp4/test-v-128k-640x480-30fps-10kfr-manifest.json: Added.
  • http/tests/media/media-source/mp4/test-v-128k-640x480-30fps-10kfr.mp4: Added.
  • http/tests/media/media-source/mp4/test-v-256k-320x240-30fps-10kfr-manifest.json: Added.
  • http/tests/media/media-source/mp4/test-v-256k-320x240-30fps-10kfr.mp4: Added.
  • http/tests/media/media-source/mp4/test.mp4: Added.
  • http/tests/media/media-source/seek-to-end-after-duration-change-expected.txt: Removed.
  • http/tests/media/media-source/seek-to-end-after-duration-change.html: Removed.
  • http/tests/media/media-source/video-media-source-abort-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-abort.html: Removed.
  • http/tests/media/media-source/video-media-source-add-and-remove-buffers-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-add-and-remove-buffers.html: Removed.
  • http/tests/media/media-source/video-media-source-append-in-ended-state-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-append-in-ended-state.html: Removed.
  • http/tests/media/media-source/video-media-source-append-with-offset-in-ended-state-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-append-with-offset-in-ended-state.html: Removed.
  • http/tests/media/media-source/video-media-source-async-events-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-async-events.html: Removed.
  • http/tests/media/media-source/video-media-source-closed-on-htmlmediaelement-destruction-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-closed-on-htmlmediaelement-destruction.html: Removed.
  • http/tests/media/media-source/video-media-source-duration-boundaryconditions-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-duration-boundaryconditions.html: Removed.
  • http/tests/media/media-source/video-media-source-duration-changed-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-duration-changed.html: Removed.
  • http/tests/media/media-source/video-media-source-duration-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-duration.html: Removed.
  • http/tests/media/media-source/video-media-source-errors-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-errors.html: Removed.
  • http/tests/media/media-source/video-media-source-event-attributes-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-event-attributes.html: Removed.
  • http/tests/media/media-source/video-media-source-garbage-collection-before-sourceopen-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-garbage-collection-before-sourceopen.html: Removed.
  • http/tests/media/media-source/video-media-source-is-type-supported-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-is-type-supported.html: Removed.
  • http/tests/media/media-source/video-media-source-objects-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-objects.html: Removed.
  • http/tests/media/media-source/video-media-source-play-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-play.html: Removed.
  • http/tests/media/media-source/video-media-source-reject-append-after-reopening-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-reject-append-after-reopening.html: Removed.
  • http/tests/media/media-source/video-media-source-seek-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-seek.html: Removed.
  • http/tests/media/media-source/video-media-source-sourcebufferlist-crash-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-sourcebufferlist-crash.html: Removed.
  • http/tests/media/media-source/video-media-source-state-changes-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-state-changes.html: Removed.
  • http/tests/media/media-source/video-media-source-zero-byte-append-in-ended-state-expected.txt: Removed.
  • http/tests/media/media-source/video-media-source-zero-byte-append-in-ended-state.html: Removed.
  • http/tests/media/media-source/webm/segment-info.js: Added.
  • http/tests/media/media-source/webm/test-a-128k-44100Hz-1ch-manifest.json: Added.
  • http/tests/media/media-source/webm/test-a-128k-44100Hz-1ch.webm: Added.
  • http/tests/media/media-source/webm/test-a-192k-44100Hz-1ch-manifest.json: Added.
  • http/tests/media/media-source/webm/test-a-192k-44100Hz-1ch.webm: Added.
  • http/tests/media/media-source/webm/test-av-384k-44100Hz-1ch-320x240-30fps-10kfr-manifest.json: Added.
  • http/tests/media/media-source/webm/test-av-384k-44100Hz-1ch-320x240-30fps-10kfr.webm: Added.
  • http/tests/media/media-source/webm/test-av-384k-44100Hz-1ch-640x480-30fps-10kfr-manifest.json: Added.
  • http/tests/media/media-source/webm/test-av-384k-44100Hz-1ch-640x480-30fps-10kfr.webm: Added.
  • http/tests/media/media-source/webm/test-av-448k-44100Hz-1ch-640x480-30fps-10kfr-manifest.json: Added.
  • http/tests/media/media-source/webm/test-av-448k-44100Hz-1ch-640x480-30fps-10kfr.webm: Added.
  • http/tests/media/media-source/webm/test-av-640k-44100Hz-1ch-640x480-30fps-10kfr-manifest.json: Added.
  • http/tests/media/media-source/webm/test-av-640k-44100Hz-1ch-640x480-30fps-10kfr.webm: Added.
  • http/tests/media/media-source/webm/test-v-128k-320x240-24fps-8kfr-manifest.json: Added.
  • http/tests/media/media-source/webm/test-v-128k-320x240-24fps-8kfr.webm: Added.
  • http/tests/media/media-source/webm/test-v-128k-320x240-30fps-10kfr-manifest.json: Added.
  • http/tests/media/media-source/webm/test-v-128k-320x240-30fps-10kfr.webm: Added.
  • http/tests/media/media-source/webm/test-v-128k-640x480-30fps-10kfr-manifest.json: Added.
  • http/tests/media/media-source/webm/test-v-128k-640x480-30fps-10kfr.webm: Added.
  • http/tests/media/media-source/webm/test-v-256k-320x240-30fps-10kfr-manifest.json: Added.
  • http/tests/media/media-source/webm/test-v-256k-320x240-30fps-10kfr.webm: Added.
  • http/tests/media/media-source/webm/test-vp8-vorbis-webvtt.webm: Added.
  • http/tests/media/media-source/webm/test.webm: Added.
11:28 AM Changeset in webkit [170541] by Simon Fraser
  • 14 edits in trunk/Source

[iOS WK2] Fix touch-scrollable elements with overflow:scroll on just one axis, and RTL scrolling
https://bugs.webkit.org/show_bug.cgi?id=134377
<rdar://problem/16762224>

Reviewed by Tim Horton.

Source/WebCore:

Make -webkit-overflow-scrolling:touch scrolling work correctly when one axis
has overflow:scroll and the other overflow:hidden. Also fix scrolling in RTL
contexts.

An RTL scroller with overflow-x:hidden will have a non-zero scroll origin,
and needs to truncate the scrolled content on the left side. To pass the
correct geometry to the UI process, we need to introduce the concept of
"reachable" size as well as total content size; normally these are the same,
but will differ when scrolling is only allowed on one axis but there is overflow
on both axes.

To get the reachable size, add RenderLayer::scrollableContentsSize().

RenderLayer::visibleSize() was wrong; the function should return the size of the
scrollable portion, but used layer size which includes borders. Fix to use pixelSnappedClientWidth()/Height(),
which is what we use for scrollbar computations.

  • WebCore.exp.in:
  • page/scrolling/AsyncScrollingCoordinator.cpp:

(WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated):
(WebCore::AsyncScrollingCoordinator::updateFrameScrollingNode):
(WebCore::AsyncScrollingCoordinator::updateOverflowScrollingNode):

  • page/scrolling/ScrollingCoordinator.h:
  • page/scrolling/ScrollingStateScrollingNode.cpp:

(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
(WebCore::ScrollingStateScrollingNode::setReachableContentsSize):

  • page/scrolling/ScrollingStateScrollingNode.h:

(WebCore::ScrollingStateScrollingNode::reachableContentsSize):

  • page/scrolling/ScrollingTreeScrollingNode.cpp:

(WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):

  • page/scrolling/ScrollingTreeScrollingNode.h:

(WebCore::ScrollingTreeScrollingNode::reachableContentsSize):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::visibleSize):
(WebCore::RenderLayer::scrollableContentsSize):

  • rendering/RenderLayer.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::updateScrollingLayerWithClient):
(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer):

Source/WebKit2:

Make -webkit-overflow-scrolling:touch scrolling work correctly when one axis
has overflow:scroll and the other overflow:hidden. Also fix scrolling in RTL
contexts.

An RTL scroller with overflow-x:hidden will have a non-zero scroll origin,
and needs to truncate the scrolled content on the left side. To pass the
correct geometry to the UI process, we need to introduce the concept of
"reachable" size as well as total content size; normally these are the same,
but will differ when scrolling is only allowed on one axis but there is overflow
on both axes.

ScrollingTreeOverflowScrollingNodeIOS::updateAfterChildren() uses the total and
reachable content sizes to set a negative edge inset on the left (for RTL) or top
(for bottom-to-top) so prevent scrolling into these areas.

  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:

(ArgumentCoder<ScrollingStateScrollingNode>::encode):
(ArgumentCoder<ScrollingStateScrollingNode>::decode):
(WebKit::RemoteScrollingTreeTextStream::dump):

  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:

(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateAfterChildren):

11:13 AM Changeset in webkit [170540] by Joseph Pecoraro
  • 2 edits in trunk/Source/WebKit2

Fix various leaks, RetainPtrs should adopt allocs
https://bugs.webkit.org/show_bug.cgi?id=134308

Reviewed by Alexey Proskuryakov.

  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(-[WKWebProcessPlugInBrowserContextController _remoteObjectRegistry]):

11:13 AM Changeset in webkit [170539] by betravis@adobe.com
  • 4 edits in trunk/Source/WebCore

[Feature Queries] Fix feature queries build on Mac
https://bugs.webkit.org/show_bug.cgi?id=134359

Reviewed by Antti Koivisto.

Update the XCode project and Feature Queries code to build on Mac.

There are existing tests for supports in the LayoutTests/css3 directory.

  • WebCore.xcodeproj/project.pbxproj: Add the Feature Queries files

to the XCode project.

  • css/CSSGrammar.y.in: Update CSSParserExpression to CSSParserValueList.
  • css/DOMWindowCSS.idl: Add ImplementationLacksVTable metadata.
11:09 AM Changeset in webkit [170538] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove unused definitions that were mistakenly added back in r170323 and then again in r170329
https://bugs.webkit.org/show_bug.cgi?id=134397

Reviewed by Geoff Garen.

  • UIProcess/API/Cocoa/WKBackForwardList.mm:
11:08 AM Changeset in webkit [170537] by commit-queue@webkit.org
  • 17 edits
    7 adds in trunk/LayoutTests

[GTK] Unreviewed GTK gardening.

Rebaseline tests after r170207, r170249, r170304, r170418 and r170433.
Update expectations for new crashing tests.

Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-06-27

  • platform/gtk/TestExpectations: Report and mark new crashing tests. Adjust some tests expectations.
  • platform/gtk/fast/canvas/canvas-blend-image-expected.txt: Rebaseline after r170433.
  • platform/gtk/fast/canvas/canvas-blend-solid-expected.txt: Rebaseline after r170433.
  • platform/gtk/fast/dom/navigator-detached-no-crash-expected.txt: Rebaseline after r170249.
  • platform/gtk/fast/dynamic/text-combine-expected.txt: Rebaseline after r170418.
  • platform/gtk/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.txt: Added. Add baseline after r170304.
  • platform/gtk/fast/regions/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Rebaseline after r170418.
  • platform/gtk/fast/repaint/japanese-rl-selection-clear-expected.txt: Added. Rebaseline after r170418.
  • platform/gtk/fast/repaint/japanese-rl-selection-repaint-expected.txt: Added. Rebaseline after r170418.
  • platform/gtk/fast/text/decorations-with-text-combine-expected.txt: Rebaseline after r170418.
  • platform/gtk/fast/text/emphasis-vertical-expected.txt: Rebaseline after r170418.
  • platform/gtk/fast/text/international/002-expected.txt: Rebaseline after r170418.
  • platform/gtk/fast/text/international/text-combine-image-test-expected.txt: Rebaseline after r170418.
  • platform/gtk/fast/text/international/text-spliced-font-expected.txt: Rebaseline after r170418.
  • platform/gtk/fast/text/international/wrap-CJK-001-expected.txt: Added. Rebaseline after r170418.
  • platform/gtk/fast/text/khmer-lao-font-expected.txt: Added. Add baseline after r170207.
  • platform/gtk/fast/writing-mode/border-vertical-lr-expected.txt: Rebaseline after r170418.
  • platform/gtk/fast/writing-mode/japanese-lr-selection-expected.txt: Rebaseline after r170418.
  • platform/gtk/fast/writing-mode/japanese-lr-text-expected.txt: Rebaseline after r170418.
  • platform/gtk/fast/writing-mode/japanese-rl-selection-expected.txt: Rebaseline after r170418.
  • platform/gtk/fast/writing-mode/japanese-rl-text-expected.txt: Rebaseline after r170418.
  • platform/gtk/svg/W3C-SVG-1.1/filters-blend-01-b-expected.txt: Added. Rebaseline after r170433.
  • platform/gtk/svg/filters/feBlend-all-blendmodes-expected.txt: Added. Add baseline after r170433.
11:06 AM Changeset in webkit [170536] by akling@apple.com
  • 2 edits in trunk/Source/WTF

[ARMv7] Skip one particularly expensive fastFree() alignment check.
<https://webkit.org/b/134402>

The size class alignment check in fastFree() was crazy expensive on ARMv7
due to its use of modulo. Disabling it shaves 470ms off of PLT main thread
time in the web process.

Note that this was very hard to identify in profiles due to TCO.

Reviewed by Gavin Barraclough.

  • wtf/FastMalloc.cpp:

(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):

10:50 AM Changeset in webkit [170535] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[MSE] media/media-source/media-source-tracks.html is crashy
https://bugs.webkit.org/show_bug.cgi?id=134385

Reviewed by Eric Carlson.

Fix the refactoring error (self assignment) introduced by r170488.

  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveInitializationSegment):

10:49 AM Changeset in webkit [170534] by mhahnenberg@apple.com
  • 3 edits
    2 adds in trunk

XHR should keep attributes on instance
https://bugs.webkit.org/show_bug.cgi?id=134363

Reviewed by Sam Weinig.

Source/WebCore:
Test: js/dom/xhr-prototype-define-property.html

Having them on the prototype broke some sites due to the fact that these DOM attributes are currently
not configurable. Once we make them configurable, we can move XHR attributes back to the prototype.

  • bindings/scripts/CodeGeneratorJS.pm:

(InterfaceRequiresAttributesOnInstanceForCompatibility):

LayoutTests:
Added a new test for defining properties on XHR prototype.

  • js/dom/xhr-prototype-define-property-expected.txt: Added.
  • js/dom/xhr-prototype-define-property.html: Added.
10:06 AM Changeset in webkit [170533] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

removeCodedFrames should modify ref to TrackBuffer no a copy.
https://bugs.webkit.org/show_bug.cgi?id=134380

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-06-27
Reviewed by Daniel Bates.

  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::removeCodedFrames):
Iterate with a reference.

9:55 AM Changeset in webkit [170532] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Set cliprect radius unconditionally in RenderLayer.
https://bugs.webkit.org/show_bug.cgi?id=134396

Reviewed by Simon Fraser.

No change in functionality.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateClipRects):

9:41 AM Changeset in webkit [170531] by Manuel Rego Casasnovas
  • 8 edits
    4 adds in trunk

[CSS Grid Layout] Interaction between auto-placement and column / row spanning
https://bugs.webkit.org/show_bug.cgi?id=110633

Reviewed by Sergio Villar Senin.

Source/WebCore:
Modify auto-placement algorithm in order to support span in both
definite and automatic positions.

This patch fixes examples like:
grid-row: auto;
grid-column: 2 / span 3;

And also:
grid-row: auto;
grid-column: span 3;

Tests: fast/css-grid-layout/grid-item-auto-placement-automatic-span.html

fast/css-grid-layout/grid-item-auto-placement-definite-span.html

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::GridIterator::isEmptyAreaEnough): New method that
checks if a grid area is or not empty.
(WebCore::RenderGrid::GridIterator::nextEmptyGridArea): Updated method
that now receives two arguments with the span value in both directions.
(WebCore::RenderGrid::ensureGridSize): Renamed from gridRow(). Adapted
method to grow in both directions at the same time if needed. It ensures
that the grid is big enough to insert a new item.
(WebCore::RenderGrid::insertItemIntoGrid): Only leave the method that
receives a GridCoordinate. It uses ensureGridSize() before inserting the
item in the grid.
(WebCore::RenderGrid::populateExplicitGridAndOrderIterator): Ensure that
the grid is big enough to place the largest span for auto-positioned
items.
(WebCore::RenderGrid::createEmptyGridAreaAtSpecifiedPositionsOutsideGrid):
New method that returns a GridCoordinate outside current grid with the
requested dimensions.
(WebCore::RenderGrid::placeSpecifiedMajorAxisItemsOnGrid): Adapted
method to calculate the item's span and use the new version of
nextEmptyGridArea(). If an empty area is not found it uses
createEmptyGridAreaAtSpecifiedPositionsOutsideGrid() to place the item.
(WebCore::RenderGrid::placeAutoMajorAxisItemOnGrid): Ditto.
(WebCore::RenderGrid::growGrid): Renamed to ensureGridSize().

  • rendering/RenderGrid.h: Modify methods headers and add new method

signature.

  • rendering/style/GridCoordinate.h:

(WebCore::GridSpan::integerSpan): Add new simple method to return the
span value of a position.

  • rendering/style/GridResolvedPosition.cpp:

(WebCore::GridResolvedPosition::resolveGridPositionsFromAutoPlacementPosition):
Implement method to take into account span in auto-placement algorithm.
(WebCore::GridResolvedPosition::adjustGridPositionsFromStyle): Add new
checks related with named grid line spans in auto-positioned items,
which is not allowed according to the spec.

  • rendering/style/GridResolvedPosition.h: Update method header.

LayoutTests:
Add new specific test cases for span in auto-placement algorithm.

  • fast/css-grid-layout/grid-item-auto-placement-automatic-span-expected.txt: Added.
  • fast/css-grid-layout/grid-item-auto-placement-automatic-span.html: Added.
  • fast/css-grid-layout/grid-item-auto-placement-definite-span-expected.txt: Added.
  • fast/css-grid-layout/grid-item-auto-placement-definite-span.html: Added.
  • fast/css-grid-layout/grid-item-spanning-resolution.html: Update test

case now that span in auto-positioned items is supported.

9:01 AM Changeset in webkit [170530] by commit-queue@webkit.org
  • 3 edits
    5 adds in trunk

[XHR] open method must uppercase only standard method types
https://bugs.webkit.org/show_bug.cgi?id=134264

Patch by Mahesh Kulkarni <mahesh.kk@samsung.com> on 2014-06-27
Reviewed by Darin Adler.

Source/WebCore:
As per step-5 of http://xhr.spec.whatwg.org/#the-open()-method only
DELETE, PUT, GET, POST, OPTIONS, HEAD are standard. Use other methods as is without case change.
All tests from w3c-test suite pass http://w3c-test.org/XMLHttpRequest/open-method-case-sensitive.htm.
This merges blink changes from r176592.

Tests: http/tests/xmlhttprequest/xmlhttprequest-open-method-allowed.html

http/tests/xmlhttprequest/xmlhttprequest-open-method-case-insensitive.html

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::uppercaseKnownHTTPMethod):

LayoutTests:
All tests from w3c-test suite pass http://w3c-test.org/XMLHttpRequest/open-method-case-sensitive.htm.
This merges blink changes from r176592.

  • http/tests/xmlhttprequest/resources/echo-request-method.php: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-open-method-allowed-expected.txt: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-open-method-allowed.html: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-open-method-case-insensitive-expected.txt: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-open-method-case-insensitive.html: Added.
8:51 AM Changeset in webkit [170529] by Andre Moreira Magalhaes
  • 2 edits in trunk/Source/WebCore

Increase priority on SharedTimer source.
http://bugs.webkit.org/show_bug.cgi?id=134109

While running webkit on a Debian virtual machine I stumbled upon an issue where JS
setTimeout callbacks were not being properly invoked due to machine limitations and the
usage of a low priority on setTimeout timers.

This patch increases the SharedTimer source priority to use the default glib priority which
fixes the issue, making setTimeout JS calls work properly on the test environment.

Reviewed by Gustavo Noronha Silva.

  • platform/gtk/SharedTimerGtk.cpp:

(WebCore::setSharedTimerFireInterval):

7:20 AM Changeset in webkit [170528] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Remove redundant offsetFromAncestor() call from RenderLayer::localClipRect().
https://bugs.webkit.org/show_bug.cgi?id=134378

Reviewed by Simon Fraser.

No change in functionality.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateClipRects):

7:00 AM Changeset in webkit [170527] by Michał Pakuła vel Rutka
  • 6 edits in trunk/Tools

[EFL] Remove efl-wk2 from baseline search path
https://bugs.webkit.org/show_bug.cgi?id=134391

Reviewed by Gyuyoung Kim.

As WebKit1 EFL is removed and platform/efl and platform/efl-wk2 baselines and test expectations files
are merged efl-wk2 search path should be removed.

  • Scripts/webkitpy/port/base.py:

(Port.test_expectations_file_postion): Added method to determine port test expectations file position in expectations_dict.

  • Scripts/webkitpy/port/efl.py:

(EflPort._search_paths): Changed baseline search paths from efl-wk2 -> wk2 -> efl -> generic is changed to: efl -> wk2 -> generic.
(EflPort.test_expectations_file_postion): Added method to determine EFL port specific test expectation file position.

  • Scripts/webkitpy/port/port_testcase.py:

(PortTestCase.test_expectations_ordering): Changed constant value to one returned from test_expectations_file_postion().

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

(TestExpectationsTestCase.test_determine_port_from_expectations_path): Removed efl-wk2 test case.

  • Scripts/webkitpy/tool/commands/rebaseline_unittest.py:

(TestRebaselineTest.test_baseline_directory): Changed directory name in assertion from platform/efl-wk2 to platform/efl.

5:10 AM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
4:33 AM WebKitGTK/2.4.x edited by Philippe Normand
(diff)
4:28 AM Changeset in webkit [170526] by Philippe Normand
  • 3 edits in trunk/Source/WebCore

[GTK] 8tracks.com triggers annoying pop-up window/installation of "About protocol source plugin" (GStreamer?)
https://bugs.webkit.org/show_bug.cgi?id=133605

Reviewed by Carlos Garcia Campos.

Don't attempt to load blank URLs with the GStreamer media
player. Those URLs trigger the codec installer which is useless in
this scenario. This patch also renames some of the variables of
the ::load method, as suggested by Carlos.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
Check video-sink validity before disconnecting its signal handlers.
(WebCore::MediaPlayerPrivateGStreamer::load): Don't load blank
URLs (about:blank).

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):
Disconnect repaint handler only if it's valid.

12:28 AM Changeset in webkit [170525] by llango.u-szeged@partner.samsung.com
  • 7 edits in trunk/Source/JavaScriptCore

[JavaScriptCore] FTL buildfix for EFL platform.
https://bugs.webkit.org/show_bug.cgi?id=133546

Reviewed by Darin Adler.

  • ftl/FTLAbstractHeap.cpp:

(JSC::FTL::IndexedAbstractHeap::IndexedAbstractHeap):

  • ftl/FTLLocation.cpp:

(JSC::FTL::Location::forStackmaps):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::opposite):

  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileStub):

  • ftl/FTLStackMaps.cpp:

(JSC::FTL::StackMaps::Constant::dump):

  • llvm/InitializeLLVMPOSIX.cpp:

(JSC::initializeLLVMPOSIX):

12:27 AM Changeset in webkit [170524] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebCore

[GTK] Expose getter and setter functions for attributes named type
https://bugs.webkit.org/show_bug.cgi?id=134300

Reviewed by Martin Robinson.

We skip those because the getter conflicts with the get_type()
function of all GObjects. We should use a different name for them. As
a general rule we use the last word of the class name, something like:

webkit_dom_blob_get_type() -> webkit_dom_blob_get_blob_type()
webkit_dom_event_get_type() -> webkit_dom_event_get_event_type()

It's consistent with other existing DOM methods like
webkit_dom_xpath_result_get_result_type() or webkit_dom_css_value_get_css_value_type().
This patch also adds some exceptions for particular cases.

  • bindings/gobject/webkitdom.symbols: Add new public symbols.
  • bindings/scripts/CodeGeneratorGObject.pm:

(GetFunctionSigName): Helper function to return the function name
that takes into account all exceptions when generating getters and
setters of attributes named type. Otherwise the name is returned unmodified.
(GenerateFunction): Use GetFunctionSigName().
(GenerateFunctions): Do not skip functions for type attributes.

12:18 AM Changeset in webkit [170523] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove unnecessary #include in HistoryController
https://bugs.webkit.org/show_bug.cgi?id=134369

Patch by Sungmann Cho <sungmann.cho@navercorp.com> on 2014-06-27
Reviewed by Daniel Bates.

After the landing of https://webkit.org/b/130099, HistoryController doesn't need
WebCore::Settings class. So we can remove the related header.

  • loader/HistoryController.cpp:
Note: See TracTimeline for information about the timeline view.