Timeline



Feb 26, 2014:

11:36 PM Changeset in webkit [164779] by Philippe Normand
  • 2 edits in trunk/Source/WebKit2

Unreviewed GTK build fix after r164751.

  • GNUmakefile.list.am:
11:15 PM Changeset in webkit [164778] by Julien Brianceau
  • 2 edits in trunk/Websites/webkit.org

Add Cisco to team.html
https://bugs.webkit.org/show_bug.cgi?id=129405

Reviewed by Andreas Kling.

  • team.html:
10:55 PM Changeset in webkit [164777] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

iOS build fix.

  • UIProcess/ios/forms/WKFormPopover.h:
  • UIProcess/ios/forms/WKFormPopover.mm:
10:48 PM Changeset in webkit [164776] by mitz@apple.com
  • 71 edits in trunk/Source/WebKit2

Replaced use of the EXCLUDED_SOURCE_FILE_NAMES build setting with #if PLATFORM(…) guards in
the files themselves.

Rubber-stamped by Sam Weinig.

  • Configurations/WebKit2.xcconfig: Cleared out EXCLUDED_SOURCE_FILE_NAMES_macosx, and left

EXCLUDED_SOURCE_FILE_NAMES_iphoneos containing just the names of resources the should be
excluded from Copy Files build phases.

  • NetworkProcess/ios/NetworkProcessIOS.mm:
  • NetworkProcess/mac/NetworkProcessMac.mm:
  • Shared/Downloads/ios/DownloadIOS.mm:
  • Shared/Downloads/mac/DownloadMac.mm:
  • Shared/NativeWebTouchEvent.h:
  • Shared/WebPlatformTouchPoint.cpp:
  • Shared/WebTouchEvent.cpp:
  • Shared/ios/NativeWebKeyboardEventIOS.mm:
  • Shared/ios/NativeWebTouchEventIOS.mm:
  • Shared/ios/WebIOSEventFactory.h:
  • Shared/ios/WebIOSEventFactory.mm:
  • Shared/mac/PasteboardTypes.h:
  • Shared/mac/PasteboardTypes.mm:
  • Shared/mac/PrintInfoMac.mm:
  • UIProcess/API/C/WKInspector.cpp:
  • UIProcess/API/Cocoa/WKThumbnailView.h:
  • UIProcess/API/Cocoa/WKThumbnailView.mm:
  • UIProcess/API/Cocoa/WKThumbnailViewInternal.h:
  • UIProcess/API/ios/WKViewIOS.mm:
  • UIProcess/API/mac/WKView.mm:
  • UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:
  • UIProcess/ios/TextCheckerIOS.mm:
  • UIProcess/ios/ViewGestureControllerIOS.mm:
  • UIProcess/ios/WKActionSheet.h:
  • UIProcess/ios/WKActionSheet.mm:
  • UIProcess/ios/WKActionSheetAssistant.h:
  • UIProcess/ios/WKActionSheetAssistant.mm:
  • UIProcess/ios/WKContentView.mm:
  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:
  • UIProcess/ios/WKGeolocationProviderIOS.h:
  • UIProcess/ios/WKGeolocationProviderIOS.mm:
  • UIProcess/ios/WKGeolocationProviderIOSObjCSecurityOrigin.mm:
  • UIProcess/ios/WKScrollView.h:
  • UIProcess/ios/WKScrollView.mm:
  • UIProcess/ios/WebInspectorProxyIOS.mm:
  • UIProcess/ios/WebPageProxyIOS.mm:
  • UIProcess/ios/WebProcessProxyIOS.mm:
  • UIProcess/ios/forms/WKFormInputControl.h:
  • UIProcess/ios/forms/WKFormInputControl.mm:
  • UIProcess/ios/forms/WKFormPopover.h:
  • UIProcess/ios/forms/WKFormPopover.mm:
  • UIProcess/mac/FindIndicatorWindow.h:
  • UIProcess/mac/FindIndicatorWindow.mm:
  • UIProcess/mac/PageClientImpl.h:
  • UIProcess/mac/PageClientImpl.mm:
  • UIProcess/mac/TextCheckerMac.mm:
  • UIProcess/mac/WKFullKeyboardAccessWatcher.h:
  • UIProcess/mac/WKFullKeyboardAccessWatcher.mm:
  • UIProcess/mac/WKPrintingView.h:
  • UIProcess/mac/WKPrintingView.mm:
  • UIProcess/mac/WebContextMenuProxyMac.h:
  • UIProcess/mac/WebContextMenuProxyMac.mm:
  • UIProcess/mac/WebInspectorProxyMac.mm:
  • UIProcess/mac/WebPageProxyMac.mm:
  • UIProcess/mac/WebProcessProxyMac.mm:
  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm:
  • WebProcess/WebCoreSupport/ios/WebDatabaseManagerIOS.mm:
  • WebProcess/WebCoreSupport/ios/WebEditorClientIOS.mm:
  • WebProcess/WebCoreSupport/ios/WebFrameLoaderClientIOS.mm:
  • WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
  • WebProcess/WebPage/ios/WebBackForwardListProxyIOS.mm:
  • WebProcess/WebPage/ios/WebPageIOS.mm:
  • WebProcess/WebPage/mac/WKAccessibilityWebPageObject.h:
  • WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
  • WebProcess/WebPage/mac/WebPageMac.mm:
9:25 PM Changeset in webkit [164775] by alex.christensen@flexsim.com
  • 2 edits in trunk/Source/WebKit

[WinCairo] Fixed linking after disabling WebGL.

  • WebKit.vcxproj/WebKit/WebKitCFLite.props:

Don't link to ANGLE libraries, which are no longer built.

7:41 PM Changeset in webkit [164774] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

r164764 broke the ARM build
https://bugs.webkit.org/show_bug.cgi?id=129415

Reviewed by Geoffrey Garen.

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::branch32WithPatch): Missing this function.

7:37 PM Changeset in webkit [164773] by rniwa@webkit.org
  • 1 edit in trunk/Source/WebCore/ChangeLog

Remove the second change log entry erroneously added in the previous commit.

7:35 PM Changeset in webkit [164772] by rniwa@webkit.org
  • 9 edits in trunk/Source/WebCore

Extract named items caches in HTMLCollection as a class
https://bugs.webkit.org/show_bug.cgi?id=129365

Reviewed by Antti Koivisto.

Extracted CollectionNamedElementCache, like CollectionIndexCache, out of HTMLCollection.
We can move more named item related functions into this class in the future.

HTMLCollection's member variables m_isNameCacheValid, m_idCache, and m_nameCache were replaced by
a single unique_ptr that holds an instance of CollectionNamedElementCache since this object rarely
exists in most HTMLCollections.

Also removed m_isItemRefElementsCacheValid since it was only used by Microdata API removed in r153772
and renamed a whole bunch of member functions and variables for consistency.

  • dom/Document.cpp:

(WebCore::Document::collectionCachedIdNameMap):
(WebCore::Document::collectionWillClearIdNameMap):

  • dom/Document.h:
  • dom/NodeRareData.h:

(WebCore::NodeListsNodeData::adoptDocument):

  • html/HTMLAllCollection.cpp:

(WebCore::HTMLAllCollection::namedItemWithIndex):

  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::HTMLCollection):
(WebCore::HTMLCollection::~HTMLCollection):
(WebCore::HTMLCollection::invalidateCache):
(WebCore::HTMLCollection::invalidateNamedElementCache): Renamed from invalidateIdNameCacheMaps.
(WebCore::HTMLCollection::namedItem):
(WebCore::HTMLCollection::updateNamedElementCache): Renamed from updateNameCache.
(WebCore::HTMLCollection::namedItems):

  • html/HTMLCollection.h:

(WebCore::CollectionNamedElementCache::findElementsWithId): Renamed from HTMLCollection::idCache.
(WebCore::CollectionNamedElementCache::findElementsWithName): Renamed from HTMLCollection::nameCache.
(WebCore::CollectionNamedElementCache::appendIdCache): Moved from HTMLCollection.
(WebCore::CollectionNamedElementCache::appendNameCache): Ditto.
(WebCore::CollectionNamedElementCache::find): Ditto.
(WebCore::CollectionNamedElementCache::append): Ditto.

(WebCore::HTMLCollection::invalidateCache):
(WebCore::HTMLCollection::hasNamedElementCache): Renamed from hasIdNameCache.
(WebCore::HTMLCollection::createNameItemCache): Added.
(WebCore::HTMLCollection::namedItemCaches): Added.

  • html/HTMLFormControlsCollection.cpp:

(WebCore::HTMLFormControlsCollection::updateNamedElementCache):

  • html/HTMLFormControlsCollection.h:
7:01 PM Changeset in webkit [164771] by Bem Jones-Bey
  • 2 edits in trunk/Websites/webkit.org

Update style guide to use nullptr instead of 0 for C++ null pointers.
https://bugs.webkit.org/show_bug.cgi?id=129413

Reviewed by Ryosuke Niwa.

  • coding/coding-style.html:
6:23 PM Changeset in webkit [164770] by rniwa@webkit.org
  • 5 edits
    2 adds in trunk

Indenting an indented image element resulted in an extra indentation
https://bugs.webkit.org/show_bug.cgi?id=129201

Reviewed by Enrica Casucci.

Source/WebCore:

The bug was caused by endOfParagraph returning a position at the beginning of a block when the position
passed into the function was at the beginning of the block. Consider the following DOM:
<blockquote><img></blockquote>

When endOfParagraph is called on (blockquote, 0), the condition r->isBR()
isBlock(n) in endOfParagraph

matches immediately on startNode and it returns (blockquote, 0) again.

This resulted in moveParagraphWithClones invoked by indentIntoBlockquote to erroneously clone the inner
blockquote. Worked around this bug in ApplyBlockElementCommand::formatSelection by checking this specific
condition and moving the position to the end of the block. Unfortunately, a lot of existing code depends
on the current behavior of endOfParagraph so fixing the function itself was not possible.

There was another bug in indentIntoBlockquote to incorrectly insert a new blockquote into the existing
blockquote due to the code introduced in r99594 to avoid inserting before the root editable element.
Since this happens only if outerBlock is the root editable element, which is nodeToSplitTo or an ancestor
of nodeToSplitTo, explicitly look for this condition.

Test: editing/execCommand/indent-img-twice.html

  • editing/ApplyBlockElementCommand.cpp:

(WebCore::ApplyBlockElementCommand::formatSelection):
(WebCore::isNewLineAtPosition):

  • editing/IndentOutdentCommand.cpp:

(WebCore::IndentOutdentCommand::indentIntoBlockquote):

  • editing/VisibleUnits.cpp:

(WebCore::endOfParagraph): Added a FIXME.

LayoutTests:

Added a regression test.

  • editing/execCommand/indent-img-twice-expected.txt: Added.
  • editing/execCommand/indent-img-twice.html: Added.
6:16 PM Changeset in webkit [164769] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Fix two assertions/crashes in compositing code
https://bugs.webkit.org/show_bug.cgi?id=129414

Reviewed by Dean Jackson.

Fix two issues introduced in r164759.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::removeFromScrollCoordinatedLayers): Don't call
ourselves recursively!
(WebCore::RenderLayerCompositor::detachScrollCoordinatedLayer): We call this
function unconditionally on layer teardown, so this assertion is bogus.

6:08 PM Changeset in webkit [164768] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

VisitedLinkProvider should know which pages it belongs to
https://bugs.webkit.org/show_bug.cgi?id=129410

Reviewed by Dan Bernstein.

  • UIProcess/VisitedLinkProvider.cpp:

(WebKit::VisitedLinkProvider::~VisitedLinkProvider):
(WebKit::VisitedLinkProvider::addPage):
(WebKit::VisitedLinkProvider::removePage):

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

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

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

Fix the build with some compiler configurations.

  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
(WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
(WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):

5:53 PM Changeset in webkit [164766] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

EFL build fix

  • dfg/DFGSpeculativeJIT32_64.cpp: Remove unused variables.

(JSC::DFG::SpeculativeJIT::compileObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):

5:46 PM Changeset in webkit [164765] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

Build fix.

Unexpected line break.

  • Configurations/WebKit2.xcconfig:
5:27 PM Changeset in webkit [164764] by mhahnenberg@apple.com
  • 105 edits
    3 adds in trunk/Source/JavaScriptCore

Make JSCells have 32-bit Structure pointers
https://bugs.webkit.org/show_bug.cgi?id=123195

Reviewed by Filip Pizlo.

This patch changes JSCells such that they no longer have a full 64-bit Structure
pointer in their header. Instead they now have a 32-bit index into
a per-VM table of Structure pointers. 32-bit platforms still use normal Structure
pointers.

This change frees up an additional 32 bits of information in our object headers.
We then use this extra space to store the indexing type of the object, the JSType
of the object, some various type flags, and garbage collection data (e.g. mark bit).
Because this inline type information is now faster to read, it pays for the slowdown
incurred by having to perform an extra indirection through the StructureIDTable.

This patch also threads a reference to the current VM through more of the C++ runtime
to offset the cost of having to look up the VM to get the actual Structure pointer.

  • API/JSContext.mm:

(-[JSContext setException:]):
(-[JSContext wrapperForObjCObject:]):
(-[JSContext wrapperForJSObject:]):

  • API/JSContextRef.cpp:

(JSContextGroupRelease):
(JSGlobalContextRelease):

  • API/JSObjectRef.cpp:

(JSObjectIsFunction):
(JSObjectCopyPropertyNames):

  • API/JSValue.mm:

(containerValueToObject):

  • API/JSWrapperMap.mm:

(tryUnwrapObjcObject):

(JSC::MacroAssembler::patchableBranch32WithPatch):
(JSC::MacroAssembler::patchableBranch32):

  • assembler/MacroAssemblerARM64.h:

(JSC::MacroAssemblerARM64::branchPtrWithPatch):
(JSC::MacroAssemblerARM64::patchableBranch32WithPatch):
(JSC::MacroAssemblerARM64::canJumpReplacePatchableBranch32WithPatch):
(JSC::MacroAssemblerARM64::startOfPatchableBranch32WithPatchOnAddress):
(JSC::MacroAssemblerARM64::revertJumpReplacementToPatchableBranch32WithPatch):

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::store8):
(JSC::MacroAssemblerARMv7::branch32WithPatch):
(JSC::MacroAssemblerARMv7::patchableBranch32WithPatch):
(JSC::MacroAssemblerARMv7::canJumpReplacePatchableBranch32WithPatch):
(JSC::MacroAssemblerARMv7::startOfPatchableBranch32WithPatchOnAddress):
(JSC::MacroAssemblerARMv7::revertJumpReplacementToPatchableBranch32WithPatch):

  • assembler/MacroAssemblerX86.h:

(JSC::MacroAssemblerX86::branch32WithPatch):
(JSC::MacroAssemblerX86::canJumpReplacePatchableBranch32WithPatch):
(JSC::MacroAssemblerX86::startOfPatchableBranch32WithPatchOnAddress):
(JSC::MacroAssemblerX86::revertJumpReplacementToPatchableBranch32WithPatch):

  • assembler/MacroAssemblerX86_64.h:

(JSC::MacroAssemblerX86_64::store32):
(JSC::MacroAssemblerX86_64::moveWithPatch):
(JSC::MacroAssemblerX86_64::branch32WithPatch):
(JSC::MacroAssemblerX86_64::canJumpReplacePatchableBranch32WithPatch):
(JSC::MacroAssemblerX86_64::startOfBranch32WithPatchOnRegister):
(JSC::MacroAssemblerX86_64::startOfPatchableBranch32WithPatchOnAddress):
(JSC::MacroAssemblerX86_64::revertJumpReplacementToPatchableBranch32WithPatch):

  • assembler/RepatchBuffer.h:

(JSC::RepatchBuffer::startOfPatchableBranch32WithPatchOnAddress):
(JSC::RepatchBuffer::revertJumpReplacementToPatchableBranch32WithPatch):

  • assembler/X86Assembler.h:

(JSC::X86Assembler::revertJumpTo_movq_i64r):
(JSC::X86Assembler::revertJumpTo_movl_i32r):

  • bytecode/ArrayProfile.cpp:

(JSC::ArrayProfile::computeUpdatedPrediction):

  • bytecode/ArrayProfile.h:

(JSC::ArrayProfile::ArrayProfile):
(JSC::ArrayProfile::addressOfLastSeenStructureID):
(JSC::ArrayProfile::observeStructure):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::heap):

  • bytecode/UnlinkedCodeBlock.h:
  • debugger/Debugger.h:
  • dfg/DFGAbstractHeap.h:
  • dfg/DFGArrayifySlowPathGenerator.h:
  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::branchWeakStructure):
(JSC::DFG::JITCompiler::branchStructurePtr):

  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompilerCommon.cpp:

(JSC::DFG::osrWriteBarrier):
(JSC::DFG::adjustAndJumpToTarget):

  • dfg/DFGOperations.cpp:

(JSC::DFG::putByVal):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::checkArray):
(JSC::DFG::SpeculativeJIT::arrayify):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectEquality):
(JSC::DFG::SpeculativeJIT::compileInstanceOfForObject):
(JSC::DFG::SpeculativeJIT::compileInstanceOf):
(JSC::DFG::SpeculativeJIT::compileToStringOnCell):
(JSC::DFG::SpeculativeJIT::speculateObject):
(JSC::DFG::SpeculativeJIT::speculateFinalObject):
(JSC::DFG::SpeculativeJIT::speculateObjectOrOther):
(JSC::DFG::SpeculativeJIT::speculateString):
(JSC::DFG::SpeculativeJIT::speculateStringObject):
(JSC::DFG::SpeculativeJIT::speculateStringOrStringObject):
(JSC::DFG::SpeculativeJIT::emitSwitchChar):
(JSC::DFG::SpeculativeJIT::emitSwitchString):
(JSC::DFG::SpeculativeJIT::genericWriteBarrier):
(JSC::DFG::SpeculativeJIT::writeBarrier):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::emitAllocateJSCell):
(JSC::DFG::SpeculativeJIT::speculateStringObjectForStructure):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compileObjectOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::writeBarrier):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compileObjectOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::writeBarrier):

  • dfg/DFGWorklist.cpp:
  • ftl/FTLAbstractHeapRepository.cpp:

(JSC::FTL::AbstractHeapRepository::AbstractHeapRepository):

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

(JSC::FTL::LowerDFGToLLVM::compileCheckStructure):
(JSC::FTL::LowerDFGToLLVM::compileArrayifyToStructure):
(JSC::FTL::LowerDFGToLLVM::compilePutStructure):
(JSC::FTL::LowerDFGToLLVM::compileToString):
(JSC::FTL::LowerDFGToLLVM::compileMultiGetByOffset):
(JSC::FTL::LowerDFGToLLVM::compileMultiPutByOffset):
(JSC::FTL::LowerDFGToLLVM::speculateTruthyObject):
(JSC::FTL::LowerDFGToLLVM::allocateCell):
(JSC::FTL::LowerDFGToLLVM::equalNullOrUndefined):
(JSC::FTL::LowerDFGToLLVM::isObject):
(JSC::FTL::LowerDFGToLLVM::isString):
(JSC::FTL::LowerDFGToLLVM::isArrayType):
(JSC::FTL::LowerDFGToLLVM::hasClassInfo):
(JSC::FTL::LowerDFGToLLVM::isType):
(JSC::FTL::LowerDFGToLLVM::speculateStringOrStringObject):
(JSC::FTL::LowerDFGToLLVM::speculateStringObjectForCell):
(JSC::FTL::LowerDFGToLLVM::speculateStringObjectForStructureID):
(JSC::FTL::LowerDFGToLLVM::speculateNonNullObject):
(JSC::FTL::LowerDFGToLLVM::loadMarkByte):
(JSC::FTL::LowerDFGToLLVM::loadStructure):
(JSC::FTL::LowerDFGToLLVM::weakStructure):

  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileStub):

  • ftl/FTLOutput.h:

(JSC::FTL::Output::store8):

  • heap/GCAssertions.h:
  • heap/Heap.cpp:

(JSC::Heap::getConservativeRegisterRoots):
(JSC::Heap::collect):
(JSC::Heap::writeBarrier):

  • heap/Heap.h:

(JSC::Heap::structureIDTable):

  • heap/MarkedSpace.h:

(JSC::MarkedSpace::forEachBlock):

  • heap/SlotVisitorInlines.h:

(JSC::SlotVisitor::internalAppend):

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::branchIfCellNotObject):
(JSC::AssemblyHelpers::genericWriteBarrier):
(JSC::AssemblyHelpers::emitLoadStructure):
(JSC::AssemblyHelpers::emitStoreStructureWithTypeInfo):

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

(JSC::JIT::compileOpCall):
(JSC::JIT::privateCompileClosureCall):

  • jit/JITCall32_64.cpp:

(JSC::JIT::emit_op_ret_object_or_this):
(JSC::JIT::compileOpCall):
(JSC::JIT::privateCompileClosureCall):

  • jit/JITInlineCacheGenerator.cpp:

(JSC::JITByIdGenerator::generateFastPathChecks):

  • jit/JITInlineCacheGenerator.h:
  • jit/JITInlines.h:

(JSC::JIT::emitLoadCharacterString):
(JSC::JIT::checkStructure):
(JSC::JIT::emitJumpIfCellNotObject):
(JSC::JIT::emitAllocateJSObject):
(JSC::JIT::emitArrayProfilingSiteWithCell):
(JSC::JIT::emitArrayProfilingSiteForBytecodeIndexWithCell):
(JSC::JIT::branchStructure):
(JSC::branchStructure):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_check_has_instance):
(JSC::JIT::emit_op_instanceof):
(JSC::JIT::emit_op_is_undefined):
(JSC::JIT::emit_op_is_string):
(JSC::JIT::emit_op_ret_object_or_this):
(JSC::JIT::emit_op_to_primitive):
(JSC::JIT::emit_op_jeq_null):
(JSC::JIT::emit_op_jneq_null):
(JSC::JIT::emit_op_get_pnames):
(JSC::JIT::emit_op_next_pname):
(JSC::JIT::emit_op_eq_null):
(JSC::JIT::emit_op_neq_null):
(JSC::JIT::emit_op_to_this):
(JSC::JIT::emitSlow_op_to_this):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_check_has_instance):
(JSC::JIT::emit_op_instanceof):
(JSC::JIT::emit_op_is_undefined):
(JSC::JIT::emit_op_is_string):
(JSC::JIT::emit_op_to_primitive):
(JSC::JIT::emit_op_jeq_null):
(JSC::JIT::emit_op_jneq_null):
(JSC::JIT::emitSlow_op_eq):
(JSC::JIT::emitSlow_op_neq):
(JSC::JIT::compileOpStrictEq):
(JSC::JIT::emit_op_eq_null):
(JSC::JIT::emit_op_neq_null):
(JSC::JIT::emit_op_get_pnames):
(JSC::JIT::emit_op_next_pname):
(JSC::JIT::emit_op_to_this):

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

(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emit_op_get_by_pname):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::emitLoadWithStructureCheck):
(JSC::JIT::emitSlow_op_get_from_scope):
(JSC::JIT::emitSlow_op_put_to_scope):
(JSC::JIT::checkMarkWord):
(JSC::JIT::emitWriteBarrier):
(JSC::JIT::addStructureTransitionCheck):
(JSC::JIT::emitIntTypedArrayGetByVal):
(JSC::JIT::emitFloatTypedArrayGetByVal):
(JSC::JIT::emitIntTypedArrayPutByVal):
(JSC::JIT::emitFloatTypedArrayPutByVal):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::emit_op_get_by_pname):
(JSC::JIT::emitLoadWithStructureCheck):

  • jit/JSInterfaceJIT.h:

(JSC::JSInterfaceJIT::emitJumpIfNotType):

  • jit/Repatch.cpp:

(JSC::repatchByIdSelfAccess):
(JSC::addStructureTransitionCheck):
(JSC::replaceWithJump):
(JSC::generateProtoChainAccessStub):
(JSC::tryCacheGetByID):
(JSC::tryBuildGetByIDList):
(JSC::writeBarrier):
(JSC::emitPutReplaceStub):
(JSC::emitPutTransitionStub):
(JSC::tryBuildPutByIdList):
(JSC::tryRepatchIn):
(JSC::linkClosureCall):
(JSC::resetGetByID):
(JSC::resetPutByID):

  • jit/SpecializedThunkJIT.h:

(JSC::SpecializedThunkJIT::loadJSStringArgument):
(JSC::SpecializedThunkJIT::loadArgumentWithSpecificClass):

  • jit/ThunkGenerators.cpp:

(JSC::virtualForThunkGenerator):
(JSC::arrayIteratorNextThunkGenerator):

  • jit/UnusedPointer.h:
  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/Arguments.cpp:

(JSC::Arguments::createStrictModeCallerIfNecessary):
(JSC::Arguments::createStrictModeCalleeIfNecessary):

  • runtime/Arguments.h:

(JSC::Arguments::createStructure):

  • runtime/ArrayPrototype.cpp:

(JSC::shift):
(JSC::unshift):
(JSC::arrayProtoFuncToString):
(JSC::arrayProtoFuncPop):
(JSC::arrayProtoFuncReverse):
(JSC::performSlowSort):
(JSC::arrayProtoFuncSort):
(JSC::arrayProtoFuncSplice):
(JSC::arrayProtoFuncUnShift):

  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/Executable.h:

(JSC::ExecutableBase::isFunctionExecutable):
(JSC::ExecutableBase::clearCodeVirtual):
(JSC::ScriptExecutable::unlinkCalls):

  • runtime/GetterSetter.cpp:

(JSC::callGetter):
(JSC::callSetter):

  • runtime/InitializeThreading.cpp:
  • runtime/JSArray.cpp:

(JSC::JSArray::unshiftCountSlowCase):
(JSC::JSArray::setLength):
(JSC::JSArray::pop):
(JSC::JSArray::push):
(JSC::JSArray::shiftCountWithArrayStorage):
(JSC::JSArray::shiftCountWithAnyIndexingType):
(JSC::JSArray::unshiftCountWithArrayStorage):
(JSC::JSArray::unshiftCountWithAnyIndexingType):
(JSC::JSArray::sortNumericVector):
(JSC::JSArray::sortNumeric):
(JSC::JSArray::sortCompactedVector):
(JSC::JSArray::sort):
(JSC::JSArray::sortVector):
(JSC::JSArray::fillArgList):
(JSC::JSArray::copyToArguments):
(JSC::JSArray::compactForSorting):

  • runtime/JSCJSValueInlines.h:

(JSC::JSValue::toThis):
(JSC::JSValue::put):
(JSC::JSValue::putByIndex):
(JSC::JSValue::equalSlowCaseInline):

  • runtime/JSCell.cpp:

(JSC::JSCell::put):
(JSC::JSCell::putByIndex):
(JSC::JSCell::deleteProperty):
(JSC::JSCell::deletePropertyByIndex):

  • runtime/JSCell.h:

(JSC::JSCell::clearStructure):
(JSC::JSCell::mark):
(JSC::JSCell::isMarked):
(JSC::JSCell::structureIDOffset):
(JSC::JSCell::typeInfoFlagsOffset):
(JSC::JSCell::typeInfoTypeOffset):
(JSC::JSCell::indexingTypeOffset):
(JSC::JSCell::gcDataOffset):

  • runtime/JSCellInlines.h:

(JSC::JSCell::JSCell):
(JSC::JSCell::finishCreation):
(JSC::JSCell::type):
(JSC::JSCell::indexingType):
(JSC::JSCell::structure):
(JSC::JSCell::visitChildren):
(JSC::JSCell::isObject):
(JSC::JSCell::isString):
(JSC::JSCell::isGetterSetter):
(JSC::JSCell::isProxy):
(JSC::JSCell::isAPIValueWrapper):
(JSC::JSCell::setStructure):
(JSC::JSCell::methodTable):
(JSC::Heap::writeBarrier):

  • runtime/JSDataView.cpp:

(JSC::JSDataView::createStructure):

  • runtime/JSDestructibleObject.h:

(JSC::JSCell::classInfo):

  • runtime/JSFunction.cpp:

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

  • runtime/JSGenericTypedArrayView.h:

(JSC::JSGenericTypedArrayView::createStructure):

  • runtime/JSObject.cpp:

(JSC::getCallableObjectSlow):
(JSC::JSObject::copyButterfly):
(JSC::JSObject::visitButterfly):
(JSC::JSFinalObject::visitChildren):
(JSC::JSObject::getOwnPropertySlotByIndex):
(JSC::JSObject::put):
(JSC::JSObject::putByIndex):
(JSC::JSObject::enterDictionaryIndexingModeWhenArrayStorageAlreadyExists):
(JSC::JSObject::enterDictionaryIndexingMode):
(JSC::JSObject::notifyPresenceOfIndexedAccessors):
(JSC::JSObject::createInitialIndexedStorage):
(JSC::JSObject::createInitialUndecided):
(JSC::JSObject::createInitialInt32):
(JSC::JSObject::createInitialDouble):
(JSC::JSObject::createInitialContiguous):
(JSC::JSObject::createArrayStorage):
(JSC::JSObject::convertUndecidedToInt32):
(JSC::JSObject::convertUndecidedToDouble):
(JSC::JSObject::convertUndecidedToContiguous):
(JSC::JSObject::constructConvertedArrayStorageWithoutCopyingElements):
(JSC::JSObject::convertUndecidedToArrayStorage):
(JSC::JSObject::convertInt32ToDouble):
(JSC::JSObject::convertInt32ToContiguous):
(JSC::JSObject::convertInt32ToArrayStorage):
(JSC::JSObject::genericConvertDoubleToContiguous):
(JSC::JSObject::convertDoubleToArrayStorage):
(JSC::JSObject::convertContiguousToArrayStorage):
(JSC::JSObject::ensureInt32Slow):
(JSC::JSObject::ensureDoubleSlow):
(JSC::JSObject::ensureContiguousSlow):
(JSC::JSObject::ensureArrayStorageSlow):
(JSC::JSObject::ensureArrayStorageExistsAndEnterDictionaryIndexingMode):
(JSC::JSObject::switchToSlowPutArrayStorage):
(JSC::JSObject::setPrototype):
(JSC::JSObject::setPrototypeWithCycleCheck):
(JSC::JSObject::putDirectNonIndexAccessor):
(JSC::JSObject::deleteProperty):
(JSC::JSObject::hasOwnProperty):
(JSC::JSObject::deletePropertyByIndex):
(JSC::JSObject::getPrimitiveNumber):
(JSC::JSObject::hasInstance):
(JSC::JSObject::getPropertySpecificValue):
(JSC::JSObject::getPropertyNames):
(JSC::JSObject::getOwnPropertyNames):
(JSC::JSObject::getOwnNonIndexPropertyNames):
(JSC::JSObject::seal):
(JSC::JSObject::freeze):
(JSC::JSObject::preventExtensions):
(JSC::JSObject::reifyStaticFunctionsForDelete):
(JSC::JSObject::removeDirect):
(JSC::JSObject::putByIndexBeyondVectorLengthWithoutAttributes):
(JSC::JSObject::putByIndexBeyondVectorLength):
(JSC::JSObject::putDirectIndexBeyondVectorLengthWithArrayStorage):
(JSC::JSObject::putDirectIndexBeyondVectorLength):
(JSC::JSObject::getNewVectorLength):
(JSC::JSObject::countElements):
(JSC::JSObject::increaseVectorLength):
(JSC::JSObject::ensureLengthSlow):
(JSC::JSObject::growOutOfLineStorage):
(JSC::JSObject::getOwnPropertyDescriptor):
(JSC::putDescriptor):
(JSC::JSObject::defineOwnNonIndexProperty):

  • runtime/JSObject.h:

(JSC::getJSFunction):
(JSC::JSObject::getArrayLength):
(JSC::JSObject::getVectorLength):
(JSC::JSObject::putByIndexInline):
(JSC::JSObject::canGetIndexQuickly):
(JSC::JSObject::getIndexQuickly):
(JSC::JSObject::tryGetIndexQuickly):
(JSC::JSObject::getDirectIndex):
(JSC::JSObject::canSetIndexQuickly):
(JSC::JSObject::canSetIndexQuicklyForPutDirect):
(JSC::JSObject::setIndexQuickly):
(JSC::JSObject::initializeIndex):
(JSC::JSObject::hasSparseMap):
(JSC::JSObject::inSparseIndexingMode):
(JSC::JSObject::getDirect):
(JSC::JSObject::getDirectOffset):
(JSC::JSObject::isSealed):
(JSC::JSObject::isFrozen):
(JSC::JSObject::flattenDictionaryObject):
(JSC::JSObject::ensureInt32):
(JSC::JSObject::ensureDouble):
(JSC::JSObject::ensureContiguous):
(JSC::JSObject::rageEnsureContiguous):
(JSC::JSObject::ensureArrayStorage):
(JSC::JSObject::arrayStorage):
(JSC::JSObject::arrayStorageOrNull):
(JSC::JSObject::ensureLength):
(JSC::JSObject::currentIndexingData):
(JSC::JSObject::getHolyIndexQuickly):
(JSC::JSObject::currentRelevantLength):
(JSC::JSObject::isGlobalObject):
(JSC::JSObject::isVariableObject):
(JSC::JSObject::isStaticScopeObject):
(JSC::JSObject::isNameScopeObject):
(JSC::JSObject::isActivationObject):
(JSC::JSObject::isErrorInstance):
(JSC::JSObject::inlineGetOwnPropertySlot):
(JSC::JSObject::fastGetOwnPropertySlot):
(JSC::JSObject::getPropertySlot):
(JSC::JSObject::putDirectInternal):
(JSC::JSObject::setStructureAndReallocateStorageIfNecessary):

  • runtime/JSPropertyNameIterator.h:

(JSC::JSPropertyNameIterator::createStructure):

  • runtime/JSProxy.cpp:

(JSC::JSProxy::getOwnPropertySlot):
(JSC::JSProxy::getOwnPropertySlotByIndex):
(JSC::JSProxy::put):
(JSC::JSProxy::putByIndex):
(JSC::JSProxy::defineOwnProperty):
(JSC::JSProxy::deleteProperty):
(JSC::JSProxy::deletePropertyByIndex):
(JSC::JSProxy::getPropertyNames):
(JSC::JSProxy::getOwnPropertyNames):

  • runtime/JSScope.cpp:

(JSC::JSScope::objectAtScope):

  • runtime/JSString.h:

(JSC::JSString::createStructure):
(JSC::isJSString):

  • runtime/JSType.h:
  • runtime/JSTypeInfo.h:

(JSC::TypeInfo::TypeInfo):
(JSC::TypeInfo::isObject):
(JSC::TypeInfo::structureIsImmortal):
(JSC::TypeInfo::zeroedGCDataOffset):
(JSC::TypeInfo::inlineTypeFlags):

  • runtime/MapData.h:
  • runtime/ObjectConstructor.cpp:

(JSC::objectConstructorGetOwnPropertyNames):
(JSC::objectConstructorKeys):
(JSC::objectConstructorDefineProperty):
(JSC::defineProperties):
(JSC::objectConstructorSeal):
(JSC::objectConstructorFreeze):
(JSC::objectConstructorIsSealed):
(JSC::objectConstructorIsFrozen):

  • runtime/ObjectPrototype.cpp:

(JSC::objectProtoFuncDefineGetter):
(JSC::objectProtoFuncDefineSetter):
(JSC::objectProtoFuncToString):

  • runtime/Operations.cpp:

(JSC::jsTypeStringForValue):
(JSC::jsIsObjectType):

  • runtime/Operations.h:

(JSC::normalizePrototypeChainForChainAccess):
(JSC::normalizePrototypeChain):

  • runtime/PropertyMapHashTable.h:

(JSC::PropertyTable::createStructure):

  • runtime/RegExp.h:

(JSC::RegExp::createStructure):

  • runtime/SparseArrayValueMap.h:
  • runtime/Structure.cpp:

(JSC::Structure::Structure):
(JSC::Structure::~Structure):
(JSC::Structure::prototypeChainMayInterceptStoreTo):

  • runtime/Structure.h:

(JSC::Structure::id):
(JSC::Structure::idBlob):
(JSC::Structure::objectInitializationFields):
(JSC::Structure::structureIDOffset):

  • runtime/StructureChain.h:

(JSC::StructureChain::createStructure):

  • runtime/StructureIDTable.cpp: Added.

(JSC::StructureIDTable::StructureIDTable):
(JSC::StructureIDTable::~StructureIDTable):
(JSC::StructureIDTable::resize):
(JSC::StructureIDTable::flushOldTables):
(JSC::StructureIDTable::allocateID):
(JSC::StructureIDTable::deallocateID):

  • runtime/StructureIDTable.h: Added.

(JSC::StructureIDTable::base):
(JSC::StructureIDTable::get):

  • runtime/SymbolTable.h:
  • runtime/TypedArrayType.cpp:

(JSC::typeForTypedArrayType):

  • runtime/TypedArrayType.h:
  • runtime/WeakMapData.h:
5:26 PM Changeset in webkit [164763] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

Ranges given to createMarkupInternal might not be canonicalized
https://bugs.webkit.org/show_bug.cgi?id=129408

Reviewed by Ryosuke Niwa.

When WebKit clients (such as Mail) call WKWebArchiveCreateFromRange() with a range,
that range is not necessarily canonicalized. Therefore, comparing it for equality
with a canonicalized range might return a false negative. Instead, we should compare
canonicalized ranges.

No new tests because this codepath will only be reached via SPI.

  • editing/markup.cpp:

(WebCore::createMarkupInternal):

5:21 PM Changeset in webkit [164762] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

Build fix.

WKFormInputControl.mm and WKFormPopover.mm should be excluded from OS X builds.

  • Configurations/WebKit2.xcconfig:
5:09 PM Changeset in webkit [164761] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unconditional logging in compileFTLOSRExit
https://bugs.webkit.org/show_bug.cgi?id=129407

Reviewed by Michael Saboff.

This was causing tests to fail with the FTL enabled.

  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileFTLOSRExit):

5:06 PM Changeset in webkit [164760] by enrica@apple.com
  • 11 edits
    7 adds in trunk/Source

[iOS WebKit2] Form controls handling: implement date and time controls.
https://bugs.webkit.org/show_bug.cgi?id=129344

Reviewed by Simon Fraser and Joseph Pecoraro.

../WebCore:

Adding one localizable string.

  • English.lproj/Localizable.strings:

../WebKit2:

This is another step in the implementation of form controls on iOS
for WebKit2. This adds support for date and time input elements supporting
the different look and feel for iPhone and iPad.
WKDateTimePicker implements iPhone UI and
WKDateTimePopover implements iPad UI.
WKFormRotatingAccessoryPopover and WKRotatingPopover are
classes that implement the popover object handling the rotation
and they will be used as base class for the select controls as well.

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

(-[WKContentView _displayFormNodeInputView]):
(-[WKContentView inputView]):
(-[WKContentView _startAssistingNode:]):
(-[WKContentView _stopAssistingNode]):

  • UIProcess/ios/WKFormInputControl.h: Added.
  • UIProcess/ios/WKFormInputControl.mm: Added.

(-[WKDateTimePicker datePicker]):
(-[WKDateTimePicker initWithView:datePickerMode:]):
(-[WKDateTimePicker dealloc]):
(-[WKDateTimePicker controlView]):
(-[WKDateTimePicker _timeZoneOffsetFromGMT:]):
(-[WKDateTimePicker _sanitizeInputValueForFormatter:]):
(-[WKDateTimePicker _dateChangedSetAsNumber]):
(-[WKDateTimePicker _dateChangedSetAsString]):
(-[WKDateTimePicker _dateChanged]):
(-[WKDateTimePicker _dateChangeHandler:]):
(-[WKDateTimePicker controlBeginEditing]):
(-[WKDateTimePicker controlEndEditing]):
(-[WKFormInputControl initWithView:]):
(+[WKFormInputControl createPeripheralWithView:]):
(-[WKFormInputControl beginEditing]):
(-[WKFormInputControl endEditing]):
(-[WKFormInputControl assistantView]):
(-[WKDateTimePopoverViewController initWithView:datePickerMode:]):
(-[WKDateTimePopoverViewController innerControl]):
(-[WKDateTimePopoverViewController loadView]):
(-[WKDateTimePopover clear:]):
(-[WKDateTimePopover initWithView:datePickerMode:]):
(-[WKDateTimePopover viewController]):
(-[WKDateTimePopover controlBeginEditing]):
(-[WKDateTimePopover controlEndEditing]):
(-[WKDateTimePopover controlView]):

  • UIProcess/ios/WKFormPeripheral.h: Added.
  • UIProcess/ios/WKFormPopover.h: Added.
  • UIProcess/ios/WKFormPopover.mm: Added.

(-[WKFormRotatingAccessoryPopover initWithView:]):
(-[WKFormRotatingAccessoryPopover accessoryDone]):
(-[WKFormRotatingAccessoryPopover popoverArrowDirections]):
(-[WKFormRotatingAccessoryPopover popoverWasDismissed:]):
(-[WKRotatingPopover initWithView:]):
(-[WKRotatingPopover dealloc]):
(-[WKRotatingPopover popoverController]):
(-[WKRotatingPopover setPopoverController:]):
(-[WKRotatingPopover popoverArrowDirections]):
(-[WKRotatingPopover presentPopoverAnimated:]):
(-[WKRotatingPopover dismissPopoverAnimated:]):
(-[WKRotatingPopover willRotate:]):
(-[WKRotatingPopover didRotate:]):
(-[WKRotatingPopover popoverControllerDidDismissPopover:]):

  • UIProcess/ios/WKFormSelectControl.h: Added.
  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::setAssistedNodeValue):
(WebKit::WebPageProxy::setAssistedNodeValueAsNumber):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::setAssistedNodeValue):
(WebKit::WebPage::setAssistedNodeValueAsNumber):

5:04 PM Changeset in webkit [164759] by Simon Fraser
  • 7 edits in trunk/Source/WebCore

Prepare for overflow scrolling nodes in the scrolling tree
https://bugs.webkit.org/show_bug.cgi?id=129398

Reviewed by Tim Horton.

Lay some groundwork for overflow:scrolling nodes in the scrolling tree.
Change terminology to refer to "scroll-coordinatored" layers now, not just viewport-constrained
layers.

A given layer can be both viewport-constrained and overflow-scrolling (e.g. position:fixed,
overflow:scroll), so handle that in RenderLayerBacking, and use some "reason" flags
in RenderLayerCompositor.

  • page/FrameView.cpp:

(WebCore::FrameView::scrollLayerID): Rename

  • page/scrolling/ScrollingStateTree.cpp:

(WebCore::ScrollingStateTree::attachNode): Remove invalid assertion.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::RenderLayerBacking):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::updateScrollingLayers): Simplify the logic with
an early return.
(WebCore::RenderLayerBacking::detachFromScrollingCoordinator):
Allow a layer to play both viewport-constrained and scrolling roles
in the scrolling tree.

  • rendering/RenderLayerBacking.h:

(WebCore::RenderLayerBacking::viewportConstrainedNodeID):
(WebCore::RenderLayerBacking::setViewportConstrainedNodeID):
(WebCore::RenderLayerBacking::scrollingNodeID):
(WebCore::RenderLayerBacking::setScrollingNodeID):
(WebCore::RenderLayerBacking::scrollingNodeIDForChildren):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::flushPendingLayerChanges):
(WebCore::RenderLayerCompositor::didFlushChangesForLayer):
(WebCore::RenderLayerCompositor::updateBacking):
(WebCore::RenderLayerCompositor::layerWillBeRemoved):
(WebCore::RenderLayerCompositor::fixedRootBackgroundLayerChanged):
(WebCore::RenderLayerCompositor::clearBackingForLayerIncludingDescendants):
(WebCore::RenderLayerCompositor::requiresCompositingLayer):
(WebCore::RenderLayerCompositor::requiresOwnBackingStore):
(WebCore::RenderLayerCompositor::reasonsForCompositing):
(WebCore::RenderLayerCompositor::requiresCompositingForScrolling):
(WebCore::isViewportConstrainedFixedOrStickyLayer):
(WebCore::isMainFrameScrollingOrOverflowScrolling):
(WebCore::RenderLayerCompositor::rootLayerAttachmentChanged):
(WebCore::RenderLayerCompositor::updateScrollCoordinatedStatus):
(WebCore::RenderLayerCompositor::removeFromScrollCoordinatedLayers):
(WebCore::nearestScrollCoordinatedAncestor):
(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer):
(WebCore::RenderLayerCompositor::detachScrollCoordinatedLayer):
(WebCore::RenderLayerCompositor::registerAllViewportConstrainedLayers):
(WebCore::RenderLayerCompositor::willRemoveScrollingLayer):
(WebCore::RenderLayerCompositor::didAddScrollingLayer):

  • rendering/RenderLayerCompositor.h:
4:52 PM Changeset in webkit [164758] by psolanki@apple.com
  • 2 edits in trunk/Source/WebKit2

[iOS][Webkit2] Enable codesigning entitlement for web process
https://bugs.webkit.org/show_bug.cgi?id=129401
<rdar://problem/16173873>

Reviewed by Geoffrey Garen.

  • Configurations/WebContent-iOS.entitlements:
4:19 PM Changeset in webkit [164757] by aestes@apple.com
  • 10 edits
    1 add
    1 delete in trunk/Source

[iOS] Support network state notification using CPNetworkObserver
https://bugs.webkit.org/show_bug.cgi?id=129358

Reviewed by Dan Bernstein.

Source/WebCore:

Add iOS support for navigator.onLine and online/offline events. Since
it can be expensive to query CPNetworkObserver, wait to do so until
someone calls NetworkStateObserver::onLine() or
NetworkStateObserver::addNetworkStateChangeListener(). For clients that
don't wish to observe network reachability at all, add a global opt-out.
These clients will only pay the cost of CPNetworkObserver if they load
a page that explicitly accesses navigator.onLine.

No new tests. Covered by existing tests.

  • WebCore.exp.in: Stopped exporting NetworkStateNotifier::setIsOnLine()

and started exporting Settings::gShouldOptOutOfNetworkStateObservation.

  • WebCore.xcodeproj/project.pbxproj: Renamed NetworkStateNotifierIOS.cpp

to NetworkStateNotifierIOS.mm.

  • page/Settings.cpp: Defaulted gShouldOptOutOfNetworkStateObservation

to false.

  • page/Settings.h:

(WebCore::Settings::setShouldOptOutOfNetworkStateObservation):
(WebCore::Settings::shouldOptOutOfNetworkStateObservation):

  • platform/network/NetworkStateNotifier.cpp:

(WebCore::NetworkStateNotifier::addNetworkStateChangeListener): Ignored
the listener if Settings::shouldOptOutOfNetworkStateObservation().
Called registerObserverIfNecessary() and added the listener otherwise.
(WebCore::NetworkStateNotifier::notifyNetworkStateChange): Const qualified.

  • platform/network/NetworkStateNotifier.h

(NetworkStateNotifier::onLine):

  • platform/network/ios/NetworkStateNotifierIOS.cpp: Removed.
  • platform/network/ios/NetworkStateNotifierIOS.mm: Added.

(-[NetworkStateObserver initWithNotifier:WebCore::]): Registered self
as a network reachable observer on CPNetworkObserver.
(-[NetworkStateObserver dealloc]): Removed self as a network reachable
observer.
(-[NetworkStateObserver networkStateChanged:]): Called setOnLine() on
the web thread, passing the reachability value from the notification.
(WebCore::NetworkStateNotifier::NetworkStateNotifier):
(WebCore::NetworkStateNotifier::~NetworkStateNotifier): Cleared
m_observer's pointer back to us.
(WebCore::NetworkStateNotifier::registerObserverIfNecessary): Initialized
m_observer if necessary.
(WebCore::NetworkStateNotifier::onLine): Called
registerObserverIfNecessary() and set an initial value for m_isOnLine
if m_isOnLineInitialized is false. Returned m_isOnLine.
(WebCore::setOnLine): Set m_isOnLine and called
notifyNetworkStateChange() if needed. Unconditionally set
m_isOnLineInitialized to true.

Source/WebKit/mac:

  • WebView/WebView.mm:

(-[WebView _setNetworkStateIsOnline:]): Retained an empty
implementation for binary compatibility for UIKit.
(+[WebView _doNotStartObservingNetworkReachability]): Called
Settings::setShouldOptOutOfNetworkStateObservation(true).

  • WebView/WebViewPrivate.h: Removed declaration of

_setNetworkStateIsOnline: and declared
_doNotStartObservingNetworkReachability.

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

Give VisitedLinkProviders an identifier and send them to the web process
https://bugs.webkit.org/show_bug.cgi?id=129400

Reviewed by Dan Bernstein.

  • Shared/WebPageCreationParameters.cpp:

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

  • Shared/WebPageCreationParameters.h:
  • UIProcess/API/Cocoa/WKVisitedLinkProviderInternal.h:
  • UIProcess/VisitedLinkProvider.cpp:

(WebKit::generateIdentifier):
(WebKit::VisitedLinkProvider::VisitedLinkProvider):

  • UIProcess/VisitedLinkProvider.h:

(WebKit::VisitedLinkProvider::identifier):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::createWebPage):

  • UIProcess/WebPageProxy.cpp:

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

  • UIProcess/WebPageProxy.h:
3:43 PM Changeset in webkit [164755] by Julien Brianceau
  • 2 edits in trunk/Tools

Unreviewed. Add myself as a committer.

  • Scripts/webkitpy/common/config/contributors.json:
3:25 PM Changeset in webkit [164754] by jinwoo7.song@samsung.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed CMAKE build fix after r164751.

  • CMakeLists.txt: Renamed WebVisitedLinkProvider.cpp to VisitedLinkTableController.cpp.
3:20 PM Changeset in webkit [164753] by BJ Burg
  • 4 edits in trunk/Source/WebCore

Unreviewed build fix for !ENABLE(CONTEXT_MENUS).

I forgot to add guards to handleContextMenuEvent().

  • replay/UserInputBridge.cpp:
  • replay/UserInputBridge.h:
3:14 PM Changeset in webkit [164752] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

[WebGL] Only skip context error retrieval if a pending context
https://bugs.webkit.org/show_bug.cgi?id=129397

Reviewed by Tim Horton.

A lost context should still ask the GC3D what the error is. Only
a pending context should return early.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::getError):

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

Rename WebVisitedLinkProvider to VisitedLinkTableController
https://bugs.webkit.org/show_bug.cgi?id=129396

Reviewed by Dan Bernstein.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/VisitedLinkTableController.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/WebVisitedLinkProvider.cpp.

(WebKit::VisitedLinkTableController::create):
(WebKit::VisitedLinkTableController::VisitedLinkTableController):
(WebKit::VisitedLinkTableController::~VisitedLinkTableController):
(WebKit::VisitedLinkTableController::isLinkVisited):
(WebKit::VisitedLinkTableController::addVisitedLink):

  • WebProcess/WebPage/VisitedLinkTableController.h: Renamed from Source/WebKit2/WebProcess/WebPage/WebVisitedLinkProvider.h.
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

2:30 PM Changeset in webkit [164750] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

Keyboard keeps showing up when clicking links after being shown once.
https://bugs.webkit.org/show_bug.cgi?id=129392

Reviewed by Benjamin Poulain.

This is a regression introduced by http://trac.webkit.org/changeset/164690.
_requiresKeyboardWhenFirstResponder should always return NO, if there is
no assisted node.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _requiresKeyboardWhenFirstResponder]):

2:20 PM Changeset in webkit [164749] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebKit2

WebProcessProxy::updateProcessState() is causing duplicate symbol linker errors
https://bugs.webkit.org/show_bug.cgi?id=129390

Reviewed by Tim Horton.

Caused by r164737. WebProcessProxy::updateProcessState() is defined in a header, outside of
a class, but isn't inlined.

  • UIProcess/WebProcessProxy.h:

(WebKit::WebProcessProxy::updateProcessState):

2:10 PM Changeset in webkit [164748] by lvidacs.u-szeged@partner.samsung.com
  • 2 edits in trunk/Tools

Unreviewed. Moved myself to the list of committers.

  • Scripts/webkitpy/common/config/contributors.json:
1:49 PM Changeset in webkit [164747] by oliver@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Remove unused access types
https://bugs.webkit.org/show_bug.cgi?id=129385

Reviewed by Filip Pizlo.

Remove unused cruft.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::printGetByIdCacheStatus):

  • bytecode/StructureStubInfo.cpp:

(JSC::StructureStubInfo::deref):

  • bytecode/StructureStubInfo.h:

(JSC::isGetByIdAccess):
(JSC::isPutByIdAccess):

1:44 PM Changeset in webkit [164746] by mrowe@apple.com
  • 19 edits
    2 deletes in trunk/Source

Roll out r164732 since it broke Production Mac builds.

1:41 PM Changeset in webkit [164745] by BJ Burg
  • 13 edits
    2 adds in trunk/Source

Web Replay: route through UserInputBridge when delivering user inputs to WebCore
https://bugs.webkit.org/show_bug.cgi?id=128150

Reviewed by Timothy Hatcher.

Source/WebCore:

Add an UserInputBridge instance to each Page. WebKit2 routes a page's user inputs through
the WebCore page's user input bridge so that the inputs can be selectively captured, filtered,
and replayed using instrumentation inside the UserInputBridge.

For now, the routing methods of UserInputBridge have no replay-specific code paths, and just
put the input delivery code inside WebCore rather than its external clients. Replay-specific
code paths will be added once https://bugs.webkit.org/show_bug.cgi?id=128782 is fixed. However,
once complete the code will work as follows:

  • When neither capturing or replaying, behavior is unchanged.
  • When capturing user inputs, each external input is saved into a replay log as it crosses

the bridge from outside WebCore.

  • When replaying, the bridge closes and user inputs from WebKit2 are not accepted. Instead,

the saved inputs from the replay log are re-dispatched as if they had crossed the bridge.

  • CMakeLists.txt:
  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • WebCore.exp.in: Add symbols for input routing methods.
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • page/Page.cpp:

(WebCore::Page::Page): Initialize the owned UserInputBridge in the Page constructor.

  • page/Page.h:

(WebCore::Page::inputBridge): Added a by-reference getter.

  • replay/UserInputBridge.cpp: Added.

(WebCore::UserInputBridge::UserInputBridge):
(WebCore::UserInputBridge::~UserInputBridge):
(WebCore::UserInputBridge::handleContextMenuEvent):
(WebCore::UserInputBridge::handleMousePressEvent):
(WebCore::UserInputBridge::handleMouseReleaseEvent):
(WebCore::UserInputBridge::handleMouseMoveEvent):
(WebCore::UserInputBridge::handleMouseMoveOnScrollbarEvent):
(WebCore::UserInputBridge::handleKeyEvent):
(WebCore::UserInputBridge::handleAccessKeyEvent):
(WebCore::UserInputBridge::handleWheelEvent):
(WebCore::UserInputBridge::focusSetActive):
(WebCore::UserInputBridge::focusSetFocused):
(WebCore::UserInputBridge::scrollRecursively):
(WebCore::UserInputBridge::logicalScrollRecursively):
(WebCore::UserInputBridge::loadRequest):
(WebCore::UserInputBridge::reloadFrame):
(WebCore::UserInputBridge::stopLoadingFrame):
(WebCore::UserInputBridge::tryClosePage):

  • replay/UserInputBridge.h: Added.

Source/WebKit2:

When delivering user inputs to WebCore, route calls through the page's UserInputBridge.
This allows us to capture and replay user inputs from WebKit2 solely within WebCore.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::tryClose):
(WebKit::WebPage::loadRequest):
(WebKit::WebPage::stopLoadingFrame):
(WebKit::WebPage::stopLoading):
(WebKit::WebPage::reload):
(WebKit::WebPage::contextMenuAtPointInWindow):
(WebKit::handleContextMenuEvent):
(WebKit::handleMouseEvent):
(WebKit::handleWheelEvent):
(WebKit::handleKeyEvent):
(WebKit::WebPage::scroll):
(WebKit::WebPage::logicalScroll):

1:31 PM Changeset in webkit [164744] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

[WebGL] Protect more WebGL entry points for pending contexts
https://bugs.webkit.org/show_bug.cgi?id=129386

Reviewed by Tim Horton.

There are entry points into a WebGLRenderingContext that don't
come from the web-exposed API directly, such as drawImage with
the WebGL canvas. Protect these by returning early if we're
a pending context.

Also a bunch of drive-by 0 -> nullptr changes.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::markLayerComposited):
(WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas):
(WebCore::WebGLRenderingContext::paintRenderingResultsToImageData):
(WebCore::WebGLRenderingContext::reshape):
(WebCore::WebGLRenderingContext::createBuffer):
(WebCore::WebGLRenderingContext::createFramebuffer):
(WebCore::WebGLRenderingContext::createTexture):
(WebCore::WebGLRenderingContext::createProgram):
(WebCore::WebGLRenderingContext::createRenderbuffer):
(WebCore::WebGLRenderingContext::createShader):
(WebCore::WebGLRenderingContext::getActiveAttrib):
(WebCore::WebGLRenderingContext::getActiveUniform):
(WebCore::WebGLRenderingContext::getContextAttributes):
(WebCore::WebGLRenderingContext::getError):
(WebCore::WebGLRenderingContext::getExtension):
(WebCore::WebGLRenderingContext::getShaderPrecisionFormat):
(WebCore::WebGLRenderingContext::getUniformLocation):
(WebCore::WebGLRenderingContext::drawImageIntoBuffer):
(WebCore::WebGLRenderingContext::videoFrameToImage):
(WebCore::WebGLRenderingContext::validateBufferDataParameters):
(WebCore::WebGLRenderingContext::LRUImageBufferCache::imageBuffer):

1:27 PM Changeset in webkit [164743] by Bem Jones-Bey
  • 3 edits
    4 adds in trunk

[CSS Shapes] inset and inset-rectangle trigger assert with replaced element and large percentage dimension
https://bugs.webkit.org/show_bug.cgi?id=129060

Reviewed by Simon Fraser.

Source/WebCore:

A bounds check was omitted when computing the width and height for inset
rectangles, making it possible for the width or height to end up being
negative. This patch adds in that check for both. It seems that only
replaced elements like iframe and img trigger this problem.

Tests: fast/shapes/shape-outside-floats/shape-outside-floats-img-inset-negative-width-crash.html

fast/shapes/shape-outside-floats/shape-outside-floats-img-inset-rectangle-negative-width-crash.html

  • rendering/shapes/Shape.cpp:

(WebCore::Shape::createShape):

LayoutTests:

  • fast/shapes/shape-outside-floats/shape-outside-floats-img-inset-negative-width-crash-expected.txt: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-img-inset-negative-width-crash.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-img-inset-rectangle-negative-width-crash-expected.txt: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-img-inset-rectangle-negative-width-crash.html: Added.
1:17 PM Changeset in webkit [164742] by barraclough@apple.com
  • 2 edits in trunk/Source/WTF

FastMalloc should use vm_page_shift intead of PAGE_SHIFT.
https://bugs.webkit.org/show_bug.cgi?id=129370

Reviewed by Mark Rowe.

"Doesn't this lead to the page map using fewer bits than it was before?
It seems like this will cause some page addresses to no longer be
representable in the map when using 4K pages. Am I missing something?"

  • wtf/FastMalloc.cpp:
    • bdash raises a valid point. This should make the TCMalloc_PageMap larger than absolutely necessary, rather than potentially too small.
1:13 PM Changeset in webkit [164741] by mmaxfield@apple.com
  • 3 edits
    2 adds in trunk

Underlines are too thick when zoomed in
https://bugs.webkit.org/show_bug.cgi?id=129352

Reviewed by Dean Jackson.

Source/WebCore:

The input to the underline drawing code is in user-space, not device-space.
The underlines were getting scaled twice, once in InlineTextBox and the other
in GraphicsContext.

Test: fast/css3-text/css3-text-decoration/text-decoration-scaled.html

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::paintDecoration):

LayoutTests:

This test changes the page scale factor to a very large value, simulating
the user zooming in with a trackpad. It then positions the viewport
to a place where the underline should not be drawn. It then compares this
to a completely white page.

This explanation cannot be in the test itself because the test sets the
scale factor too high for the tester to be able to read text.

  • fast/css3-text/css3-text-decoration/text-decoration-scaled-expected.html: Added.
  • fast/css3-text/css3-text-decoration/text-decoration-scaled.html: Added.
12:58 PM Changeset in webkit [164740] by timothy@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

Fix an issue where the Timeline filter scope bars were not applying.

Reviewed by Joseph Pecoraro.

  • UserInterface/Views/TimelineDataGrid.js:

(TimelineDataGrid.prototype.treeElementMatchesActiveScopeFilters): Use .get() to access the ScopeBar.

12:54 PM Changeset in webkit [164739] by Martin Robinson
  • 6 edits in trunk/Tools

[GTK] Reduplicate common.top_level_path in scripts
https://bugs.webkit.org/show_bug.cgi?id=129291

Reviewed by Philippe Normand.

Duplicate common.top_level_path and avoid polluting many scripts with awkward system
path manipulation and weird dependencies on the jhbuild infrastructure.

  • Scripts/run-gtk-tests: Use common again.

(TestRunner._setup_testing_environment): Ditto.

  • gtk/check-gdom-symbols: Ditto.
  • gtk/common.py:

(top_level_path): Re-add top_level_path..
(get_build_path): Use the builtin top_level_path again.

  • gtk/find-make-dist-errors: Use common again.

(get_missing_headers): Ditto.

  • gtk/generate-inspector-gresource-manifest.py: Ditto.
12:40 PM Changeset in webkit [164738] by oliver@apple.com
  • 3 edits
    3 adds in trunk

Function.prototype.apply has a bad time with the spread operator
https://bugs.webkit.org/show_bug.cgi?id=129381

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

Make sure our apply logic handle the spread operator correctly.
To do this we simply emit the enumeration logic that we'd normally
use for other enumerations, but only store the first two results
to registers. Then perform a varargs call.

  • bytecompiler/NodesCodegen.cpp:

(JSC::ApplyFunctionCallDotNode::emitBytecode):

LayoutTests:

Add tests

  • js/regress/call-spread-apply-expected.txt: Added.
  • js/regress/call-spread-apply.html: Added.
  • js/regress/script-tests/call-spread-apply.js: Added.

(testFunction):
(test2):
(test3):

12:39 PM Changeset in webkit [164737] by psolanki@apple.com
  • 7 edits in trunk/Source/WebKit2

[iOS][WebKit2] Adopt SPI for managing tabs
https://bugs.webkit.org/show_bug.cgi?id=129188
<rdar://problem/15939827>

Reviewed by Gavin Barraclough.

Call into assertions SPI to mark tabs as foreground and background.

  • Configurations/WebKit2.xcconfig:
  • Platform/IPC/Connection.h:

(IPC::Connection::xpcConnection): Expose the xpc_connection_t.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::viewStateDidChange):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didFinishLaunching):

  • UIProcess/WebProcessProxy.h:

(WebKit::WebProcessProxy::updateProcessState):

  • UIProcess/ios/WebProcessProxyIOS.mm:

(WebKit::WebProcessProxy::updateProcessState): Added. This goes through the list of
WebPageProxies and sets the process state to foreground if one of them is in a window.
Otherwise, it sets it to background.

12:18 PM Changeset in webkit [164736] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk/Source/WebKit2

Unreviewed, rolling out r164725 and r164731.
http://trac.webkit.org/changeset/164725
http://trac.webkit.org/changeset/164731
https://bugs.webkit.org/show_bug.cgi?id=129382

WebKitTestRunner build is broken on IOS (Requested by smfr on
#webkit).

  • UIProcess/API/Cocoa/WKView.h:
  • UIProcess/API/ios/WKViewIOS.mm: Added.

(-[WKView initWithCoder:]):
(-[WKView initWithFrame:processGroup:browsingContextGroup:]):
(-[WKView initWithFrame:processGroup:browsingContextGroup:relatedToView:]):
(-[WKView dealloc]):
(-[WKView setFrame:]):
(-[WKView setBounds:]):
(-[WKView scrollView]):
(-[WKView browsingContextController]):
(-[WKView setAllowsBackForwardNavigationGestures:]):
(-[WKView allowsBackForwardNavigationGestures]):
(-[WKView viewForZoomingInScrollView:]):
(-[WKView scrollViewWillBeginZooming:withView:]):
(-[WKView scrollViewWillBeginDragging:]):
(-[WKView _didFinishScrolling]):
(-[WKView scrollViewDidEndDragging:willDecelerate:]):
(-[WKView scrollViewDidEndDecelerating:]):
(-[WKView scrollViewDidScrollToTop:]):
(-[WKView scrollViewDidScroll:]):
(-[WKView scrollViewDidZoom:]):
(-[WKView scrollViewDidEndZooming:withView:atScale:]):
(-[WKView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
(-[WKView _frameOrBoundsChanged]):
(-[WKView _updateVisibleContentRects]):
(-[WKView _keyboardChangedWithInfo:adjustScrollView:]):
(-[WKView _keyboardWillChangeFrame:]):
(-[WKView _keyboardDidChangeFrame:]):
(-[WKView _keyboardWillShow:]):
(-[WKView _keyboardWillHide:]):
(-[WKView pageRef]):
(-[WKView initWithFrame:contextRef:pageGroupRef:]):
(-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
(-[WKView minimumLayoutSizeOverride]):
(-[WKView setMinimumLayoutSizeOverride:]):
(-[WKView _obscuredInsets]):
(-[WKView _setObscuredInsets:]):
(-[WKView _beginInteractiveObscuredInsetsChange]):
(-[WKView _endInteractiveObscuredInsetsChange]):
(-[WKView _pageExtendedBackgroundColor]):
(-[WKView _setBackgroundExtendsBeyondPage:]):
(-[WKView _backgroundExtendsBeyondPage]):

  • WebKit2.xcodeproj/project.pbxproj:
12:15 PM Changeset in webkit [164735] by akling@apple.com
  • 20 edits
    2 deletes in trunk/Source

Remove unused InspectorCounters.
<https://webkit.org/b/129367>

The InspectorCounters code was only used to implement two layout test
APIs (window.internals.numberOfLive{Nodes,Documents}) yet it had hooks
in crazy places like Node construction and destruction.

Rewrote the internals APIs to iterate over all live Documents instead,
totaling up their referencing Node count. Added a process-global
Document::allDocuments() HashSet to make this whole thing possible.

Reviewed by Sam Weinig.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.exp.in:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSEventListener.cpp:
  • dom/Document.cpp:

(WebCore::Document::allDocuments):
(WebCore::Document::Document):
(WebCore::Document::~Document):

  • dom/Document.h:

(WebCore::Node::Node):

  • dom/Node.cpp:

(WebCore::Node::~Node):

  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorCounters.cpp: Removed.
  • inspector/InspectorCounters.h: Removed.
  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::innerAddRecordToTimeline):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):

  • inspector/InspectorTimelineAgent.h:
  • inspector/protocol/Timeline.json:
  • platform/ThreadGlobalData.cpp:
  • testing/Internals.cpp:

(WebCore::Internals::numberOfLiveNodes):
(WebCore::Internals::numberOfLiveDocuments):

  • testing/Internals.h:
  • testing/Internals.idl:
12:13 PM Changeset in webkit [164734] by mark.lam@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Compilation policy management belongs in operationOptimize(), not the DFG Driver.
<https://webkit.org/b/129355>

Reviewed by Filip Pizlo.

By compilation policy, I mean the rules for determining whether to
compile, when to compile, when to attempt compilation again, etc. The
few of these policy decisions that were previously being made in the
DFG driver are now moved to operationOptimize() where we keep the rest
of the policy logic. Decisions that are based on the capabilities
supported by the DFG are moved to DFG capabiliityLevel().

I've run the following benchmarks:

  1. the collection of jsc benchmarks on the jsc executable vs. its baseline.
  2. Octane 2.0 in browser without the WebInspector.
  3. Octane 2.0 in browser with the WebInspector open and a breakpoint set somewhere where it won't break.

In all of these, the results came out to be a wash as expected.

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::isSupported):
(JSC::DFG::mightCompileEval):
(JSC::DFG::mightCompileProgram):
(JSC::DFG::mightCompileFunctionForCall):
(JSC::DFG::mightCompileFunctionForConstruct):
(JSC::DFG::mightInlineFunctionForCall):
(JSC::DFG::mightInlineFunctionForClosureCall):
(JSC::DFG::mightInlineFunctionForConstruct):

  • dfg/DFGCapabilities.h:
  • dfg/DFGDriver.cpp:

(JSC::DFG::compileImpl):

  • jit/JITOperations.cpp:
11:54 AM Changeset in webkit [164733] by Simon Fraser
  • 2 edits in trunk/Source/WebKit2

Build fix: ContextMenuContextData.* should not be in the Copy Files
phase.

  • WebKit2.xcodeproj/project.pbxproj:
11:45 AM Changeset in webkit [164732] by msaboff@apple.com
  • 19 edits
    2 adds in trunk/Source

Auto generate bytecode information for bytecode parser and LLInt
https://bugs.webkit.org/show_bug.cgi?id=129181

Reviewed by Mark Lam.

Source/JavaScriptCore:

Added new bytecode/BytecodeList.json that contains a list of bytecodes and related
helpers. It also includes bytecode length and other information used to generate files.
Added a new generator, generate-bytecode-files that generates Bytecodes.h and InitBytecodes.asm
in DerivedSources/JavaScriptCore/.

Added the generation of these files to the "DerivedSource" build step.
Slighty changed the build order, since the Bytecodes.h file is needed by
JSCLLIntOffsetsExtractor. Moved the offline assembly to a separate step since it needs
to be run after JSCLLIntOffsetsExtractor.

Made related changes to OPCODE macros and their use.

  • CMakeLists.txt:
  • DerivedSources.make:
  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
  • JavaScriptCore.vcxproj/copy-files.cmd:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/BytecodeList.json: Added.
  • bytecode/Opcode.h:

(JSC::padOpcodeName):

  • generate-bytecode-files: Added.
  • llint/LLIntCLoop.cpp:

(JSC::LLInt::CLoop::initialize):

  • llint/LLIntCLoop.h:
  • llint/LLIntData.cpp:

(JSC::LLInt::initialize):

  • llint/LLIntOpcode.h:
  • llint/LowLevelInterpreter.asm:

Source/WebKit:

Added ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR} to WebKit_INCLUDE_DIRECTORIES due to new
generated Bytecodes.h include file.

  • CMakeLists.txt:

Source/WebKit2:

Added ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR} to WebKit2_INCLUDE_DIRECTORIES due to new
generated Bytecodes.h include file.

  • CMakeLists.txt:
11:44 AM Changeset in webkit [164731] by Simon Fraser
  • 2 edits in trunk/Source/WebKit2

Fix MiniBrowser/WebKitTestRunner link errors; WKView still
needs to be exported while these tools are using it.

  • UIProcess/API/Cocoa/WKView.h:
11:34 AM Changeset in webkit [164730] by Joseph Pecoraro
  • 12 edits in trunk

Web Inspector: Remove console.profiles from window.console API
https://bugs.webkit.org/show_bug.cgi?id=116883

Reviewed by Timothy Hatcher.

Source/WebCore:

console.profiles has been removed or never implemented by other
browsers. We should remove it as well. However, since tests
rely on it, keep it as window.internals.consoleProfiles.

  • WebCore.exp.in:
  • page/Console.idl:
  • testing/Internals.cpp:

(WebCore::Internals::consoleProfiles):

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

Source/WebKit:

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

LayoutTests:

  • fast/profiler/resources/profiler-test-JS-resources.js:

(printHeavyProfilesDataWithoutTime):
(printProfilesDataWithoutTime):

11:22 AM Changeset in webkit [164729] by Simon Fraser
  • 2 edits in trunk/Source/WebKit2

Fix the iOS build by wrapping some context menu stuff in #if ENABLE(CONTEXT_MENUS)

  • UIProcess/WebPageProxy.h:
11:17 AM Changeset in webkit [164728] by barraclough@apple.com
  • 2 edits in trunk/Source/WTF

FastMalloc should use vm_page_shift intead of PAGE_SHIFT.
https://bugs.webkit.org/show_bug.cgi?id=129370

Reviewed by Geoff Garen.

Previously we used PAGE_SHIFT to initialize kPageShift.
Since this was a constant, it could be used to calculate other
contants used in the code. Some of these values are used in the
definition of certain data structures (specifiying the length of
some array members).

Make kPageShift & dependent properties variables setup during
initialization. Add upper bound values (K_PAGE_SHIFT_MAX,
K_NUM_CLASSES_MAX) for use in cases where we need a constant.

  • wtf/FastMalloc.cpp:

(WTF::InitSizeClasses):

  • initialize kPageShift, kNumClasses, kPageSize, kMaxValidPages.

(WTF::pages):

  • added ASSERT.

(WTF::AllocationSize):

  • added ASSERT.

(WTF::TCMalloc_PageHeap::FreeBytes):

  • added ASSERT.

(WTF::TCMalloc_PageHeap::init):

  • COMPILE_ASSERT -> ASSERT

(WTF::TCMalloc_PageHeap::scavenge):

  • added ASSERT.

(WTF::TCMalloc_PageHeap::Carve):

  • added ASSERT.

(WTF::mergeDecommittedStates):

  • added ASSERT.

(WTF::TCMalloc_PageHeap::IncrementalScavenge):

  • added ASSERT.

(WTF::TCMalloc_PageHeap::ReturnedBytes):

  • added ASSERT.

(WTF::PagesToMB):

  • added ASSERT.

(WTF::TCMalloc_PageHeap::GrowHeap):

  • added ASSERT.

(WTF::TCMalloc_PageHeap::ReleaseFreeList):

  • kNumClasses -> K_NUM_CLASSES_MAX

(WTF::TCMalloc_ThreadCache::enumerateFreeObjects):

  • added ASSERT.

(WTF::TCMalloc_Central_FreeList::Init):

  • added ASSERT.

(WTF::TCMalloc_Central_FreeList::ReleaseToSpans):

  • added ASSERT.

(WTF::TCMalloc_Central_FreeList::EvictRandomSizeClass):

  • added ASSERT.

(WTF::TCMalloc_Central_FreeList::MakeCacheSpace):

  • added ASSERT.

(WTF::TCMalloc_Central_FreeList::InsertRange):

  • added ASSERT.

(WTF::TCMalloc_Central_FreeList::Populate):

  • added ASSERT.

(WTF::TCMalloc_ThreadCache::Init):

  • added ASSERT.

(WTF::TCMalloc_ThreadCache::Cleanup):

  • added ASSERT.

(WTF::TCMalloc_ThreadCache::Scavenge):

  • added ASSERT.

(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):

  • added ASSERT.
11:16 AM Changeset in webkit [164727] by mhahnenberg@apple.com
  • 2 edits in trunk/Tools

runscript: line 42: /bin/ls: Argument list too long
https://bugs.webkit.org/show_bug.cgi?id=129376

Reviewed by Michael Saboff.

The "test_script_*" can expand to more things than can be passed as arguments on the command line.
We should use find instead, which generates the list of files rather than expanding them all on
the command line and spitting them back out.

  • Scripts/jsc-stress-test-helpers/shell-runner.sh:
11:05 AM Changeset in webkit [164726] by commit-queue@webkit.org
  • 42 edits
    2 copies in trunk/Source

Create SessionID value-style class for session IDs.
https://bugs.webkit.org/show_bug.cgi?id=129141

Source/WebCore:

Patch by Martin Hock <mhock@apple.com> on 2014-02-26
Reviewed by Sam Weinig.

  • GNUmakefile.list.am:
  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • page/Page.cpp: Add SessionID member.

(WebCore::Page::Page):
(WebCore::Page::sessionID): Retrieve sessionID or use settings if not set.

  • page/Page.h:

(WebCore::Page::isSessionIDSet):
(WebCore::Page::setSessionID):

  • page/SessionID.h: Session ID class consisting solely of its uint64_t session ID.

(WebCore::SessionID::SessionID):
(WebCore::SessionID::isValid): Not empty.
(WebCore::SessionID::isEphemeral):
(WebCore::SessionID::sessionID):
(WebCore::SessionID::operator==): Value-based equality.
(WebCore::SessionID::operator!=):
(WebCore::SessionID::emptySessionID): Zero value also used for HashTraits emptyValue.
(WebCore::SessionID::defaultSessionID):
(WebCore::SessionID::legacyPrivateSessionID):

  • page/SessionIDHash.h:

(WTF::SessionIDHash::hash): Just the casted session ID (low order bytes)
(WTF::SessionIDHash::equal):
(WTF::HashTraits<WebCore::SessionID>::emptyValue): Equal to emptySessionID.
(WTF::HashTraits<WebCore::SessionID>::constructDeletedValue): -1 value.
(WTF::HashTraits<WebCore::SessionID>::isDeletedValue):

Source/WebKit2:

The below changes deal solely with mechanical changes to use the SessionID value class instead of uint64_t except where noted.

Patch by Martin Hock <mhock@apple.com> on 2014-02-26
Reviewed by Sam Weinig.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::storageSession):
(WebKit::NetworkConnectionToWebProcess::startDownload):
(WebKit::NetworkConnectionToWebProcess::cookiesForDOM):
(WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM):
(WebKit::NetworkConnectionToWebProcess::cookiesEnabled):
(WebKit::NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue):
(WebKit::NetworkConnectionToWebProcess::getRawCookies):
(WebKit::NetworkConnectionToWebProcess::deleteCookie):

  • NetworkProcess/NetworkConnectionToWebProcess.h:
  • NetworkProcess/NetworkConnectionToWebProcess.messages.in:
  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::initializeNetworkProcess):
(WebKit::NetworkProcess::ensurePrivateBrowsingSession):
(WebKit::NetworkProcess::destroyPrivateBrowsingSession):

  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkProcess.messages.in:
  • NetworkProcess/NetworkResourceLoader.h:
  • NetworkProcess/RemoteNetworkingContext.h:
  • NetworkProcess/mac/RemoteNetworkingContext.mm:

(WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):

  • NetworkProcess/soup/RemoteNetworkingContextSoup.cpp:

(WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):

  • Shared/Network/NetworkResourceLoadParameters.cpp:

(WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):

  • Shared/Network/NetworkResourceLoadParameters.h:
  • Shared/SessionTracker.cpp:

(WebKit::staticSessionMap):
(WebKit::storageSessionToID):
(WebKit::SessionTracker::sessionMap):
(WebKit::SessionTracker::session):
(WebKit::SessionTracker::sessionID):
(WebKit::SessionTracker::setSession):
(WebKit::SessionTracker::destroySession):

  • Shared/SessionTracker.h: Move code to SessionID class.
  • Shared/WebCoreArgumentCoders.cpp: Add encode and decode for SessionID.

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

  • Shared/WebCoreArgumentCoders.h:
  • Shared/mac/CookieStorageShim.mm:

(WebKit::webKitCookieStorageCopyRequestHeaderFieldsForURL):

  • UIProcess/APISession.cpp:

(API::generateID):
(API::Session::defaultSession):
(API::Session::legacyPrivateSession):
(API::Session::Session):
(API::Session::isEphemeral):
(API::Session::getID):

  • UIProcess/APISession.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::setAnyPageGroupMightHavePrivateBrowsingEnabled):
(WebKit::WebContext::createNewWebProcess):

  • UIProcess/WebContext.h:
  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::sessionID):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::setPrivateBrowsingEnabled):

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::WebResourceLoadScheduler::scheduleLoad):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::loadResourceSynchronously):

  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:

(WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
(WebKit::WebFrameNetworkingContext::storageSession):

  • WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:

(WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
(WebKit::WebFrameNetworkingContext::storageSession):

  • WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
  • WebProcess/WebPage/WebPage.cpp: Move sessionID to Page to allow WebCore to access it.

(WebKit::WebPage::WebPage):
(WebKit::WebPage::sessionID):
(WebKit::WebPage::isUsingEphemeralSession):
(WebKit::WebPage::setSessionID):
(WebKit::WebPage::updatePreferences):

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

(WebKit::WebProcess::ensurePrivateBrowsingSession):
(WebKit::WebProcess::destroyPrivateBrowsingSession):

  • WebProcess/WebProcess.h:
  • WebProcess/WebProcess.messages.in:
10:59 AM Changeset in webkit [164725] by andersca@apple.com
  • 3 edits
    1 delete in trunk/Source/WebKit2

Get rid of WKViewIOS.mm
https://bugs.webkit.org/show_bug.cgi?id=129378

Reviewed by Simon Fraser.

  • UIProcess/API/Cocoa/WKView.h:
  • UIProcess/API/ios/WKViewIOS.mm: Removed.
  • WebKit2.xcodeproj/project.pbxproj:
10:48 AM Changeset in webkit [164724] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

Fix builds that don't define IMAGE_CONTROLS.

  • page/ContextMenuContext.cpp:

(WebCore::ContextMenuContext::ContextMenuContext):

10:36 AM Changeset in webkit [164723] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

Build fix for OS X after r164720.

  • page/ContextMenuContext.cpp:
10:35 AM Changeset in webkit [164722] by Martin Robinson
  • 2 edits in trunk/Tools

ENABLE_PROMISES is improperly specified as ENABLE_PROMISE in Features.pm
https://bugs.webkit.org/show_bug.cgi?id=129377

Reviewed by Csaba Osztrogonác.

  • Scripts/webkitperl/FeatureList.pm: Properly specify the promises feature as ENABLE_PROMISES.
10:15 AM Changeset in webkit [164721] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

[iOS] Remove some erroneously captured blocks
https://bugs.webkit.org/show_bug.cgi?id=129362

Reviewed by Sam Weinig.

Remove unused captured Objective-C block variables (capturing these doesn't work anyway).

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView requestAutocorrectionRectsForString:withCompletionHandler:]):
(-[WKContentView requestAutocorrectionContextWithCompletionHandler:]):

10:02 AM Changeset in webkit [164720] by beidson@apple.com
  • 17 edits
    4 adds in trunk/Source

Pipe experimental image controls menu up to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=129339

Reviewed by Simon Fraser.

Source/WebCore:

Handle events for the image control, starting down the context menu code path if appropriate:

  • html/shadow/mac/ImageControlsRootElementMac.cpp:

(WebCore::ImageControlsRootElementMac::defaultEventHandler):

  • html/shadow/mac/ImageControlsRootElementMac.h:

Add a class to hold a HitTestResult and addition info about the current ContextMenu invocation:

  • page/ContextMenuContext.cpp: Added.

(WebCore::ContextMenuContext::ContextMenuContext):

  • page/ContextMenuContext.h: Added.

(WebCore::ContextMenuContext::hitTestResult):
(WebCore::ContextMenuContext::isImageControl):

Update ContextMenuController to work with ContextMenuContext instead of HitTestResult directly:

  • page/ContextMenuController.cpp:

(WebCore::ContextMenuController::showContextMenu):
(WebCore::ContextMenuController::createContextMenu):
(WebCore::ContextMenuController::contextMenuItemSelected):
(WebCore::ContextMenuController::populate):
(WebCore::ContextMenuController::addInspectElementItem):
(WebCore::ContextMenuController::checkOrEnableIfNeeded):
(WebCore::ContextMenuController::showImageControlsMenu):

  • page/ContextMenuController.h:

(WebCore::ContextMenuController::contextMenu):
(WebCore::ContextMenuController::setContextMenuContext):
(WebCore::ContextMenuController::context):
(WebCore::ContextMenuController::hitTestResult):

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.xcodeproj/project.pbxproj:

Source/WebKit2:

Add a WebKit object to represent the data from a ContextMenuContext object that can be shared via IPC:

  • Shared/ContextMenuContextData.cpp: Added.

(WebKit::ContextMenuContextData::ContextMenuContextData):
(WebKit::ContextMenuContextData::encode):
(WebKit::ContextMenuContextData::decode):

  • Shared/ContextMenuContextData.h: Added.

(WebKit::ContextMenuContextData::webHitTestResultData):
(WebKit::ContextMenuContextData::isImageControl):

Update the rest of WK2 to use this object instead of WebHitTestResult::Data directly:

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::showContextMenu):
(WebKit::WebPageProxy::internalShowContextMenu): Also make an ENABLE(IMAGE_CONTROLS) change here.

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebPage/WebContextMenu.cpp:

(WebKit::WebContextMenu::show):

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebKit2.xcodeproj/project.pbxproj:
10:00 AM Changeset in webkit [164719] by svillar@igalia.com
  • 5 edits in trunk/LayoutTests

[CSS Grid Layout] Check default getComputedStyle() return values for grid properties
https://bugs.webkit.org/show_bug.cgi?id=129092

Reviewed by Darin Adler.

Added checks for several CSS Grid Layout properties. According to
the specs, the ones we have implemented so far should be all of
them "auto" but grid-template-{rows|columns}, grid-auto-flow and
grid-template-areas that should be "none" by default.

  • fast/css/getComputedStyle/computed-style-expected.txt:
  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • fast/css/getComputedStyle/resources/property-names.js:
  • svg/css/getComputedStyle-basic-expected.txt:
9:54 AM Changeset in webkit [164718] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

REGRESSION(r162947): Document::topDocument() returns an incorrect reference for cached Documents
https://bugs.webkit.org/show_bug.cgi?id=128175

Reviewed by Antti Koivisto.

  • dom/Document.cpp:

(WebCore::Document::topDocument): Fall back to pre-r162947 way of determining the top document
when the Document is in page cache or is in the middle of having its render tree destroyed.
In the first case, the determined top document is actually the document currently loaded in the
Frame to which the cached document is still connected, which is obviously not desired. In the
second case the top document is similarly incorrectly deduced, leading to non-deletion of the
proper top document's AXObjectCache. Because of this AccessibilityRenderObjects are not detached
which results in assertions in RenderObject destructor where the objects are found to be still
flagged as in use by the AX cache.

8:42 AM Changeset in webkit [164717] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

ASSERTION FAILED: m_heap->vm()->currentThreadIsHoldingAPILock() in inspector-protocol/*.
<https://webkit.org/b/129364>

Reviewed by Alexey Proskuryakov.

InjectedScriptModule::ensureInjected() needs an APIEntryShim.

  • inspector/InjectedScriptModule.cpp:

(Inspector::InjectedScriptModule::ensureInjected):

  • Added the needed but missing APIEntryShim.
7:12 AM WebKitGTK/2.4.x edited by desrt@desrt.ca
add missing libgen.h bug to 'changes on track' (diff)
6:01 AM Changeset in webkit [164716] by mihnea@adobe.com
  • 2 edits in trunk/Source/WebCore

[CSSRegions] Remove unused method RenderFlowThread::updateLayerToRegionMappings()
https://bugs.webkit.org/show_bug.cgi?id=129368

Reviewed by Andrei Bucur.

Remove unused code, no new tests.

  • rendering/RenderFlowThread.h:
5:51 AM Changeset in webkit [164715] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

WebKitFindOptions shouldn't expose WEBKIT_FIND_OPTIONS_SHOW_{OVERLAY,FIND_INDICATOR,HIGHLIGHT}
https://bugs.webkit.org/show_bug.cgi?id=129263

Patch by Enrique Ocaña González <eocanha@igalia.com> on 2014-02-26
Reviewed by Sergio Villar Senin.

Avoided the need of WEBKIT_FIND_OPTIONS_SHOW_* fields by changing the semantics
of the findOptions field in WebKitFindOptions.

  • UIProcess/API/gtk/WebKitFindController.cpp: Now

_WebKitFindControllerPrivate.findOptions is interpreted as WebKit::FindOptions
instead of WebKitFindOptions like before. Now the conversion has to be done in
both ways.
(toWebKitFindOptions): Added conversion function from WebKit::FindOptions to
WebKitFindOptions.
(webkit_find_controller_get_options):
(webKitFindControllerPerform):
(webkit_find_controller_search):
(webkit_find_controller_search_next):
(webkit_find_controller_search_previous):
(webkit_find_controller_count_matches):

  • UIProcess/API/gtk/WebKitFindController.h: Removed values that shouldn't be

exposed.

5:40 AM Changeset in webkit [164714] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Inspector server should be enabled only when the web sockets is enabled too.
https://bugs.webkit.org/show_bug.cgi?id=129304

Patch by Gergo Balogh <gbalogh.u-szeged@partner.samsung.com> on 2014-02-26
Reviewed by Csaba Osztrogonác.

  • config.h:
3:32 AM Changeset in webkit [164713] by Manuel Rego Casasnovas
  • 3 edits in trunk/Tools

[GTK] Re-enable gtk-doc in EWS
https://bugs.webkit.org/show_bug.cgi?id=128369

Reviewed by Carlos Garcia Campos.

Enable again gtk-doc generation in EWS once bug #128417 has been fixed.

  • Scripts/webkitpy/common/config/ports.py:

(GtkPort.build_webkit_command): Add --disable-gtk-doc arg.
(GtkWK2Port.build_webkit_command): Ditto.

  • Scripts/webkitpy/common/config/ports_unittest.py:

(DeprecatedPortTest.test_gtk_port): Ditto.
(DeprecatedPortTest.test_gtk_wk2_port): Ditto.

3:24 AM Changeset in webkit [164712] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r164583 - Remove unused error.h header.
https://bugs.webkit.org/show_bug.cgi?id=126774

Patch by Koop Mast <kwm@FreeBSD.org> on 2014-02-24
Reviewed by Anders Carlsson.

This header doesn't exists on FreeBSD. According to
https://www.gnu.org/software/gnulib/manual/html_node/error_002eh.html
the function that this header implements are not present in the file.
So there isn't any need for this header.

  • NetworkProcess/unix/NetworkProcessMainUnix.cpp:
3:19 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
3:16 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
1:41 AM Changeset in webkit [164711] by calvaris@igalia.com
  • 5 edits in trunk

[GTK] Regression when showing the captions menu
https://bugs.webkit.org/show_bug.cgi?id=129106

Reviewed by Martin Robinson.

Source/WebCore:

In some cases, when clicking the captions button the menu was not
shown.

Updated test: media/video-controls-captions-trackmenu.html

  • Modules/mediacontrols/mediaControlsGtk.js:

(ControllerGtk.prototype.buildCaptionMenu):
(ControllerGtk.prototype.showCaptionMenu): Specify sizes in
pixels.

LayoutTests:

Checked in an existing test that the menu is shown then the
captions button is clicked.

  • media/trackmenu-test.js:

(startTrackMenuTest): Deactivated animations

  • media/video-controls-captions-trackmenu.html: Added check for

the regression we are testing.

1:02 AM Changeset in webkit [164710] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fix GTK+ build after r164702.

  • UIProcess/DrawingAreaProxy.cpp:
12:42 AM Changeset in webkit [164709] by bshafiei@apple.com
  • 5 edits in branches/safari-537.75-branch/Source

Versioning.

12:37 AM Changeset in webkit [164708] by bshafiei@apple.com
  • 1 copy in tags/Safari-537.75.2

New tag.

12:26 AM Changeset in webkit [164707] by rniwa@webkit.org
  • 7 edits in trunk/Source/WebCore

Avoid unnecessary HTML Collection invalidations for id and name attribute changes
https://bugs.webkit.org/show_bug.cgi?id=129361

Reviewed by Benjamin Poulain.

Before this patch, setting id and name attributes resulted in traversing all the ancestors to invalidate
HTML collections on those nodes whenever we had more than one HTMLCollection alive.

Avoid the traversal when HTMLCollections don't have any valid id and name map caches by making each
HTMLCollection explicitly call collectionCachedIdNameMap and collectionWillClearIdNameMap when it caches
or clears the id and name map.

Inspired by https://chromium.googlesource.com/chromium/blink/+/5b06b91b79098f7d42e480f85be32198315d2440

  • dom/Document.cpp:

(WebCore::Document::registerCollection): Takes a boolean to indicate whether collection has a valid cache
for the id and name map.
(WebCore::Document::unregisterCollection): Ditto.
(WebCore::Document::collectionCachedIdNameMap): Added.
(WebCore::Document::collectionWillClearIdNameMap): Added.

  • dom/Document.h:
  • dom/NodeRareData.h:

(WebCore::NodeListsNodeData::adoptDocument): Call invalidateCache on HTML collections after, not before,
calling unregisterCollection and registerCollection since collections' owner nodes have already been
moved to the new document here and invalidateCache uses owner node's document to call
collectionWillClearIdNameMap. So calling invalidateCache before calling unregister/registerCollection
would result in collectionWillClearIdNameMap getting called on a wrong document.

  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::HTMLCollection):
(WebCore::HTMLCollection::~HTMLCollection):
(WebCore::HTMLCollection::invalidateCache):
(WebCore::HTMLCollection::invalidateIdNameCacheMaps): Added the code to uncount itself from the number
of live node lists and HTML collections that need to be invalidated upon id and name attribute changes.
(WebCore::HTMLCollection::updateNameCache):

  • html/HTMLCollection.h:

(WebCore::HTMLCollection::invalidateCache):
(WebCore::HTMLCollection::hasIdNameCache): Renamed from hasNameCache.
(WebCore::HTMLCollection::setHasIdNameCache): Renamed from setHasIdNameCache.

  • html/HTMLFormControlsCollection.cpp:

(WebCore::HTMLFormControlsCollection::updateNameCache):

12:23 AM Changeset in webkit [164706] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WTF

Merge r164220 - Enable DFG_JIT on FreeBSD
https://bugs.webkit.org/show_bug.cgi?id=128898

Patch by Ryan Lortie <desrt@desrt.ca> on 2014-02-17
Reviewed by Csaba Osztrogonác.

  • wtf/Platform.h:
12:12 AM Changeset in webkit [164705] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore

Merge r163534 - Use system default compiler instead of gcc, as final fall through.
https://bugs.webkit.org/show_bug.cgi?id=126773

Patch by Koop Mast <kwm@FreeBSD.org> on 2014-02-06
Reviewed by Alexey Proskuryakov.

  • dom/make_names.pl:
12:12 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
12:11 AM Changeset in webkit [164704] by commit-queue@webkit.org
  • 6 edits in trunk

[GTK] generate-gtkdoc can fail with WebKit1 or WebKit2 only builds
https://bugs.webkit.org/show_bug.cgi?id=129319

Patch by Martin Robinson <mrobinson@igalia.com> on 2014-02-26
Reviewed by Carlos Garcia Campos.

Source/WebKit/gtk:

  • GNUmakefile.am: Do not generate the documentation configuration file if the port

is disabled.

Source/WebKit2:

  • GNUmakefile.am: Do not generate the documentation configuration file if the port

is disabled.

Tools:

  • gtk/generate-gtkdoc:

(get_generator_for_config): Properly handle the situation where the pkgconfig file is missing.

12:06 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)

Feb 25, 2014:

11:53 PM Changeset in webkit [164703] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r164578 - [GTK] Remove unneeded method webkitWebViewBaseRequestExitFullScreen
https://bugs.webkit.org/show_bug.cgi?id=129245

Reviewed by Sergio Villar Senin.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseKeyPressEvent): Call FullscreenManager::requestExitFullScreen() directly.

  • UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
11:43 PM Changeset in webkit [164702] by benjamin@webkit.org
  • 22 edits
    5 adds in trunk/Source/WebKit2

[iOS][WK2] Split the rects/scale updates in 3 internally consistent groups
https://bugs.webkit.org/show_bug.cgi?id=129354

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-25
Reviewed by Sam Weinig.

During scaling, the scale and rect of UIScrollView, WebPageProxy, DrawingAreaProxy,
DrawingArea and WebPage were in completely inconsistent states.

Some of those disconnect were temporary (like when setting the rect and scale in two different
messages), some were lasting the time of a tile update (like the UIProcess view of the scale).
This was causing various visual glitches.

To fix this, all the updates from the UIProcess are funneled through a single path and the values
are split into 3 different groups/types.
When updating the scale/rects, the UIProcess sends the new information to the WebProcess on a queue
through ViewUpdateDispatcher. There, the updates are accumulated until the MainThread is available.
Once the main thread is "unblocked" from the previous frame, all the data are updated at once from
the last known state in ViewUpdateDispatcher. The new tiles are created for the new converage information
and they are sent to the UIProcess.

At any point, there are 3 types of scale and rects used for different purpose:
-In the UIProcess, there is the UIScrollView scale and rects which represent the "true" state or what

is currently on screen.
That information is mirrored into WebPageProxy for the other classes needing it like DrawingAreaProxy.

-In the WebProcess, there is the last known state. That state is always lagging a little behind the "true"

state.

-Back in the UIProcess, we have the tile states that is attached to RemoteLayerTreeTransaction. It is used

to setup the rendering.

With this change, there are two paths for updating the page scale factor:
-The UI drives the change, the updates goes WKWebView->WKContentView->WebPageProxy->ViewUpdateDispatcher

->WebPage->RemoteLayerTreeDrawingArea->RemoteLayerTreeDrawingAreaProxy->WKContentView->WKWebView.

-If changes in the content force scaling parameters, the updates goes: WebPage->RemoteLayerTreeDrawingArea

->RemoteLayerTreeDrawingAreaProxy->WKContentView->WKWebView.

The two kind of updates frequently conflicts during loading. We differentiate those through the flag
scaleWasSetByUIProcess passed with the updates. In cases of conflicts, the user always wins.

  • DerivedSources.make:
  • Scripts/webkit2/messages.py:

(struct_or_class):

  • Shared/VisibleContentRectUpdateInfo.cpp: Added.

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

  • Shared/VisibleContentRectUpdateInfo.h: Added.

(WebKit::VisibleContentRectUpdateInfo::VisibleContentRectUpdateInfo):
(WebKit::VisibleContentRectUpdateInfo::exposedRect):
(WebKit::VisibleContentRectUpdateInfo::unobscuredRect):
(WebKit::VisibleContentRectUpdateInfo::scale):
(WebKit::operator==):

  • Shared/mac/RemoteLayerTreeTransaction.h:

(WebKit::RemoteLayerTreeTransaction::scaleWasSetByUIProcess):
(WebKit::RemoteLayerTreeTransaction::setScaleWasSetByUIProcess):

  • Shared/mac/RemoteLayerTreeTransaction.mm:

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

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView contentView:didCommitLayerTree:WebKit::]):
(-[WKWebView _didFinishScrolling]):
(-[WKWebView scrollViewDidScroll:]):
(-[WKWebView scrollViewDidZoom:]):
(-[WKWebView scrollViewDidEndZooming:withView:atScale:]):
(-[WKWebView _frameOrBoundsChanged]):
(-[WKWebView _updateVisibleContentRectsWithStableState:]):
(-[WKWebView _setObscuredInsets:]):
(-[WKWebView _endInteractiveObscuredInsetsChange]):

  • UIProcess/API/ios/WKViewIOS.mm:

(-[WKView _updateVisibleContentRects]):

  • UIProcess/DrawingAreaProxy.cpp:

(WebKit::DrawingAreaProxy::DrawingAreaProxy):
(WebKit::DrawingAreaProxy::setCustomFixedPositionRect):

  • UIProcess/DrawingAreaProxy.h:

(WebKit::DrawingAreaProxy::updateDebugIndicator):

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::displayedContentScale):
(WebKit::WebPageProxy::exposedContentRect):
(WebKit::WebPageProxy::unobscuredContentRect):

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

(-[WKContentView didUpdateVisibleRect:unobscuredRect:scale:inStableState:]):
(-[WKContentView didFinishScrolling]):
(-[WKContentView didZoomToScale:]):

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::updateVisibleContentRects):

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

(WebKit::RemoteLayerTreeDrawingAreaProxy::scaledExposedRect):
(WebKit::RemoteLayerTreeDrawingAreaProxy::indicatorLocation):
(WebKit::RemoteLayerTreeDrawingAreaProxy::indicatorScale):
(WebKit::RemoteLayerTreeDrawingAreaProxy::updateDebugIndicator):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/ViewUpdateDispatcher.cpp: Added.

(WebKit::ViewUpdateDispatcher::create):
(WebKit::ViewUpdateDispatcher::ViewUpdateDispatcher):
(WebKit::ViewUpdateDispatcher::~ViewUpdateDispatcher):
(WebKit::ViewUpdateDispatcher::initializeConnection):
(WebKit::ViewUpdateDispatcher::visibleContentRectUpdate):
(WebKit::ViewUpdateDispatcher::dispatchVisibleContentRectUpdate):

  • WebProcess/WebPage/ViewUpdateDispatcher.h: Added.
  • WebProcess/WebPage/ViewUpdateDispatcher.messages.in: Added.
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
(WebKit::WebPage::scalePage):

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::scaleWasSetByUIProcess):

  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::tapHighlightAtPosition):
(WebKit::WebPage::updateVisibleContentRects):
(WebKit::WebPage::willStartUserTriggeredZooming):

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::flushLayers):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initializeConnection):

  • WebProcess/WebProcess.h:
11:35 PM Changeset in webkit [164701] by Mihai Maerean
  • 2 edits in trunk/Tools

Unreviewed. Add myself as a committer.

10:52 PM Changeset in webkit [164700] by fred.wang@free.fr
  • 6 edits
    4 adds in trunk

Add support for minsize/maxsize attributes.
https://bugs.webkit.org/show_bug.cgi?id=122567

Reviewed by Chris Fleizach.

Source/WebCore:

This change implements the minsize/maxsize attributes of the mo element.
We also switch stretch sizes from int to LayoutUnit to improve accuracy.

Tests: mathml/presentation/stretchy-minsize-maxsize-dynamic.html

mathml/presentation/stretchy-minsize-maxsize.html

  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::SetOperatorProperties):
(WebCore::RenderMathMLOperator::stretchTo):

  • rendering/mathml/RenderMathMLOperator.h:
  • rendering/mathml/RenderMathMLRow.cpp:

(WebCore::RenderMathMLRow::layout):

LayoutTests:

Add some reftests for the minsize/maxsize attributes of the mo element.

  • platform/mac/mathml/presentation/mo-stretch-expected.txt:
  • mathml/presentation/stretchy-minsize-maxsize-dynamic-expected.html: Added.
  • mathml/presentation/stretchy-minsize-maxsize-dynamic.html: Added.
  • mathml/presentation/stretchy-minsize-maxsize-expected.html: Added.
  • mathml/presentation/stretchy-minsize-maxsize.html: Added.
10:43 PM Changeset in webkit [164699] by mihnea@adobe.com
  • 5 edits in trunk/Source/WebCore

[CSSRegions] Small clean-up of flow threads accelerated compositing code
https://bugs.webkit.org/show_bug.cgi?id=129312

Reviewed by Andrei Bucur.

Some clean-up for the code used for regions in accelerated compositing functionality:

  1. Rename updateRenderFlowThreadLayersIfNeeded -> updateFlowThreadsLayerToRegionMappingsIfNeeded

as the function updates the mapping between the flow threads layers and their corresponding regions

  1. Remove RenderLayerCompositor::updateRenderFlowThreadLayersIfNeeded and move the code in place

at call site since the function body does not require a dedicated function.

No new functionality, no new tests.

  • rendering/FlowThreadController.cpp:

(WebCore::FlowThreadController::updateFlowThreadsLayerToRegionMappingsIfNeeded):
Now that the regions are always layers, we do not need to iterate backwards.

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

(WebCore::RenderLayerCompositor::updateCompositingLayers):

  • rendering/RenderLayerCompositor.h:
10:24 PM Changeset in webkit [164698] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Subpixel rendering: Ensure consistent border painting width.
https://bugs.webkit.org/show_bug.cgi?id=129259

Reviewed by Simon Fraser.

Border edges are painted as (semi)independent rectangles. When snapping an edge rectangle
to device pixels, its painted dimensions depend on its size and its fractional position.
Specific combination of position and border width can result in painting edges sized differently.
Using device snapped border width to calculate inner/outer rectangles helps to maintain
uniform border width.

Currently not testable.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::BorderEdge::BorderEdge):
(WebCore::BorderEdge::shouldRender):
(WebCore::BorderEdge::presentButInvisible):
(WebCore::BorderEdge::widthForPainting):
(WebCore::BorderEdge::getDoubleBorderStripeWidths):
(WebCore::RenderBoxModelObject::paintOneBorderSide):
(WebCore::calculateSideRect):
(WebCore::RenderBoxModelObject::paintBorderSides):
(WebCore::RenderBoxModelObject::paintBorder):
(WebCore::RenderBoxModelObject::drawBoxSideFromPath):
(WebCore::calculateSideRectIncludingInner):

10:23 PM Changeset in webkit [164697] by Alan Bujtas
  • 15 edits in trunk/Source/WebCore

Subpixel layout: Remove explicit static_cast<LayoutUnit> conversions.
https://bugs.webkit.org/show_bug.cgi?id=129359

Reviewed by Simon Fraser.

No testable change in behavior.

  • css/LengthFunctions.cpp:

(WebCore::minimumValueForLength):

  • page/FrameView.cpp:

(WebCore::FrameView::forceLayoutForPagination):

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::paintFillLayer):

  • rendering/InlineFlowBox.h:

(WebCore::InlineFlowBox::logicalLeftVisualOverflow):
(WebCore::InlineFlowBox::logicalRightVisualOverflow):

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::isSelected):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::computeColumnCountAndWidth):
(WebCore::getBPMWidth):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::adjustForBorderFit):

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):

  • rendering/RenderFieldset.cpp:

(WebCore::RenderFieldset::paintBoxDecorations):

  • rendering/RenderTable.h:

(WebCore::RenderTable::borderSpacingInRowDirection):

  • rendering/RenderTextControlMultiLine.cpp:

(WebCore::RenderTextControlMultiLine::preferredContentLogicalWidth):

  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::RenderTextControlSingleLine::preferredContentLogicalWidth):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::beforeAnnotationsAdjustment):
(WebCore::RootInlineBox::ascentAndDescentForBox):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::resolveLengthAttributeForSVG):

10:01 PM Changeset in webkit [164696] by andersca@apple.com
  • 5 edits in trunk/Source/WebCore

Build fixes.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
9:03 PM Changeset in webkit [164695] by bshafiei@apple.com
  • 5 edits in branches/safari-537.75-branch/Source

Versioning.

8:33 PM Changeset in webkit [164694] by bshafiei@apple.com
  • 5 edits in branches/safari-537.60-branch/Source

Versioning.

8:19 PM Changeset in webkit [164693] by bshafiei@apple.com
  • 1 copy in tags/Safari-537.60.16

New tag.

7:51 PM Changeset in webkit [164692] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Build fix for OS X after r164690

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-25

  • WebCore.exp.in:
7:23 PM Changeset in webkit [164691] by andersca@apple.com
  • 12 edits
    4 moves in trunk/Source

Rename WebCore::VisitedLinkProvider to WebCore::VisitedLinkStore
https://bugs.webkit.org/show_bug.cgi?id=129357

Reviewed by Sam Weinig.

Source/WebCore:

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/VisitedLinkState.cpp:

(WebCore::VisitedLinkState::determineLinkStateSlowCase):

  • loader/HistoryController.cpp:

(WebCore::addVisitedLink):

  • page/DefaultVisitedLinkStore.cpp: Renamed from Source/WebCore/page/DefaultVisitedLinkProvider.cpp.

(WebCore::DefaultVisitedLinkStore::create):
(WebCore::DefaultVisitedLinkStore::DefaultVisitedLinkStore):
(WebCore::DefaultVisitedLinkStore::~DefaultVisitedLinkStore):
(WebCore::DefaultVisitedLinkStore::isLinkVisited):
(WebCore::DefaultVisitedLinkStore::addVisitedLink):

  • page/DefaultVisitedLinkStore.h: Renamed from Source/WebCore/page/DefaultVisitedLinkProvider.h.
  • page/Page.cpp:

(WebCore::Page::Page):
(WebCore::Page::visitedLinkStore):

  • page/Page.h:
  • page/PageGroup.cpp:

(WebCore::PageGroup::visitedLinkStore):

  • page/PageGroup.h:
  • page/VisitedLinkStore.cpp: Renamed from Source/WebCore/page/VisitedLinkProvider.cpp.

(WebCore::VisitedLinkStore::VisitedLinkStore):
(WebCore::VisitedLinkStore::~VisitedLinkStore):

  • page/VisitedLinkStore.h: Renamed from Source/WebCore/page/VisitedLinkProvider.h.

Source/WebKit2:

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

  • WebProcess/WebPage/WebVisitedLinkProvider.h:
7:05 PM Changeset in webkit [164690] by enrica@apple.com
  • 15 edits
    2 adds in trunk/Source

[WebKit2] Form controls handling.
https://bugs.webkit.org/show_bug.cgi?id=129344
<rdar://problem/16053643>

Reviewed by Simon Fraser and Joseph Pecoraro.

../WebCore:

Adding some exports.

  • WebCore.exp.in:

../WebKit2:

This is the step toward adding support for
form controls iOS style. It adds the logic to
select the appropriate keyboard type based on the
element type and introduces the AssistedNodeInformation
structure used currently for the keyboard type selection
and that will be used to populate pickers and popovers.
It also provides information to enable/disable next/previous
buttons in the accessory view.

  • Scripts/webkit2/messages.py:

(struct_or_class):

  • Shared/AssistedNodeInformation.cpp: Added.

(WebKit::AssistedNodeInformation::encode):
(WebKit::AssistedNodeInformation::decode):

  • Shared/AssistedNodeInformation.h: Added.

(WebKit::AssistedNodeInformation::AssistedNodeInformation):

  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::startAssistingNode):

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

(-[WKContentView _requiresKeyboardWhenFirstResponder]):
(-[WKContentView _updateAccessory]):
(toUITextAutocapitalize):
(-[WKContentView textInputTraits]):
(-[WKContentView assistedNodeInformation]):
(-[WKContentView _startAssistingNode:]):
(-[WKContentView _stopAssistingNode]):

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::startAssistingNode):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::isAssistableNode):
(WebKit::hasFocusableNode):
(WebKit::WebPage::getAssistedNodeInformation):
(WebKit::WebPage::elementDidFocus):

6:50 PM Changeset in webkit [164689] by commit-queue@webkit.org
  • 1 edit
    5 adds
    4 deletes in trunk/LayoutTests

Web Inspector: Port some profiler tests to inspector-protocol
https://bugs.webkit.org/show_bug.cgi?id=129353

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-02-25
Reviewed by Timothy Hatcher.

  • inspector-obsolete/profiler/cpu-profiler-parameterless-profile-end-crash-expected.txt: Removed.
  • inspector-obsolete/profiler/cpu-profiler-parameterless-profile-end-crash.html: Removed.
  • inspector-obsolete/profiler/cpu-profiler-profiling-without-inspector-expected.txt: Removed.
  • inspector-obsolete/profiler/cpu-profiler-profiling-without-inspector.html: Removed.
  • inspector-protocol/profiler/console-profile-expected.txt: Added.
  • inspector-protocol/profiler/console-profile.html: Added.
  • inspector-protocol/profiler/console-profileEnd-parameterless-expected.txt: Added.
  • inspector-protocol/profiler/console-profileEnd-parameterless.html: Added.
6:28 PM Changeset in webkit [164688] by Brent Fulgham
  • 3 edits in branches/safari-537.60-branch/Source/WebCore

Merge r164660

2014-02-25 Brent Fulgham <Brent Fulgham>

[Win] Gracefully recover from missing 'naturalSize' parameter for media
https://bugs.webkit.org/show_bug.cgi?id=129278

Reviewed by Eric Carlson.

  • platform/graphics/avfoundation/cf/AVFoundationCFSoftLinking.h: Add declaration for missing function call.
  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp: (WebCore::createMetadataKeyNames): (WebCore::MediaPlayerPrivateAVFoundationCF::assetStatus): Don't treat missing 'naturalSize' as a fatal error. (WebCore::MediaPlayerPrivateAVFoundationCF::tracksChanged): Handle case of asset track not being available yet. (WebCore::MediaPlayerPrivateAVFoundationCF::sizeChanged): If the 'naturalSize' is empty, use the Player Item's 'presentationSize' instead. (WebCore::AVFWrapper::processNotification): Add missing handler for duration changed.
6:12 PM Changeset in webkit [164687] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Web Inspector: CRASH when evaluating in console of JSContext RWI with disabled breakpoints.
<https://webkit.org/b/128766>

Reviewed by Geoffrey Garen.

Make the JSLock::grabAllLocks() work the same way as for the C loop LLINT.
The reasoning is that we don't know of any clients that need unordered
re-entry into the VM from different threads. So, we're enforcing ordered
re-entry i.e. we must re-grab locks in the reverse order of dropping locks.

The crash in this bug happened because we were allowing unordered re-entry,
and the following type of scenario occurred:

  1. Thread T1 locks the VM, and enters the VM to execute some JS code.
  2. On entry, T1 detects that VM::m_entryScope is null i.e. this is the first time it entered the VM. T1 sets VM::m_entryScope to T1's entryScope.
  3. T1 drops all locks.
  1. Thread T2 locks the VM, and enters the VM to execute some JS code. On entry, T2 sees that VM::m_entryScope is NOT null, and therefore does not set the entryScope.
  2. T2 drops all locks.
  1. T1 re-grabs locks.
  2. T1 returns all the way out of JS code. On exit from the outer most JS function, T1 clears VM::m_entryScope (because T1 was the one who set it).
  3. T1 unlocks the VM.
  1. T2 re-grabs locks.
  2. T2 proceeds to execute some code and expects VM::m_entryScope to be

NOT null, but it turns out to be null. Assertion failures and
crashes ensue.

With ordered re-entry, at step 6, T1 will loop and yield until T2 exits
the VM. Hence, the issue will no longer manifest.

  • runtime/JSLock.cpp:

(JSC::JSLock::dropAllLocks):
(JSC::JSLock::grabAllLocks):

  • runtime/JSLock.h:

(JSC::JSLock::DropAllLocks::dropDepth):

5:45 PM Changeset in webkit [164686] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

VisitedLinkProvider should be refcounted
https://bugs.webkit.org/show_bug.cgi?id=129351

Reviewed by Sam Weinig.

  • UIProcess/VisitedLinkProvider.cpp:

(WebKit::VisitedLinkProvider::create):
(WebKit::VisitedLinkProvider::~VisitedLinkProvider):

  • UIProcess/VisitedLinkProvider.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::WebContext):
(WebKit::WebContext::processDidFinishLaunching):
(WebKit::WebContext::disconnectProcess):
(WebKit::WebContext::addVisitedLinkHash):

  • UIProcess/WebContext.h:
5:27 PM Changeset in webkit [164685] by Samuel White
  • 7 edits in trunk

Add accessibility search predicate support for AXOutlines
https://bugs.webkit.org/show_bug.cgi?id=123748

Reviewed by Chris Fleizach.

Source/WebCore:

Added new AXOutlineSearchKey to support finding elements with aria role=tree.

No new tests, updated existing search-predicate.html test to cover AXOutlineSearchKey.

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::isAccessibilityObjectSearchMatchAtIndex):

  • accessibility/AccessibilityObject.h:
  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(createAccessibilitySearchKeyMap):

LayoutTests:

Updated test to validate support for AXOutlineSearchKey (elements with aria role=tree).

  • platform/mac/accessibility/search-predicate-expected.txt:
  • platform/mac/accessibility/search-predicate.html:
5:06 PM Changeset in webkit [164684] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Make WebContext handle populating visited links
https://bugs.webkit.org/show_bug.cgi?id=129348

Reviewed by Tim Horton.

This makes it possible to decouple VisitedLinkProvider from WebContext.

  • UIProcess/VisitedLinkProvider.cpp:

(WebKit::VisitedLinkProvider::VisitedLinkProvider):
(WebKit::VisitedLinkProvider::processDidFinishLaunching):

  • UIProcess/VisitedLinkProvider.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::WebContext):
(WebKit::WebContext::processDidFinishLaunching):

  • UIProcess/WebContext.h:
5:03 PM Changeset in webkit [164683] by mark.lam@apple.com
  • 10 edits in trunk/Source

Need to initialize VM stack data even when the VM is on an exclusive thread.
<https://webkit.org/b/129265>

Not reviewed.

Source/JavaScriptCore:

Relanding r164627 now that <https://webkit.org/b/129341> is fixed.

  • API/APIShims.h:

(JSC::APIEntryShim::APIEntryShim):
(JSC::APICallbackShim::shouldDropAllLocks):

  • heap/MachineStackMarker.cpp:

(JSC::MachineThreads::addCurrentThread):

  • runtime/JSLock.cpp:

(JSC::JSLockHolder::JSLockHolder):
(JSC::JSLockHolder::init):
(JSC::JSLockHolder::~JSLockHolder):
(JSC::JSLock::JSLock):
(JSC::JSLock::setExclusiveThread):
(JSC::JSLock::lock):
(JSC::JSLock::unlock):
(JSC::JSLock::currentThreadIsHoldingLock):
(JSC::JSLock::dropAllLocks):
(JSC::JSLock::grabAllLocks):

  • runtime/JSLock.h:

(JSC::JSLock::hasExclusiveThread):
(JSC::JSLock::exclusiveThread):

  • runtime/VM.cpp:

(JSC::VM::VM):

  • runtime/VM.h:

(JSC::VM::hasExclusiveThread):
(JSC::VM::exclusiveThread):
(JSC::VM::setExclusiveThread):
(JSC::VM::currentThreadIsHoldingAPILock):

Source/WebCore:

No new tests.

Relanding r164627 now that <https://webkit.org/b/129341> is fixed.

  • bindings/js/JSDOMBinding.cpp:

(WebCore::reportException):

  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::JSDOMWindowBase::commonVM):

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

DrawingAreaProxy is using WebCore's Timer
https://bugs.webkit.org/show_bug.cgi?id=129347
<rdar://problem/16078133>

Reviewed by Tim Horton.

Use a RunLoop::Timer instead.

  • UIProcess/DrawingAreaProxy.cpp:

(WebKit::DrawingAreaProxy::DrawingAreaProxy):
(WebKit::DrawingAreaProxy::exposedRectChangedTimerFired):

  • UIProcess/DrawingAreaProxy.h:
4:38 PM Changeset in webkit [164681] by andersca@apple.com
  • 5 edits
    4 copies in trunk/Source/WebKit2

Add WKVisitedLinkProvider
https://bugs.webkit.org/show_bug.cgi?id=129343

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKVisitedLinkProvider.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.h.
  • UIProcess/API/Cocoa/WKVisitedLinkProvider.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.h.
  • UIProcess/API/Cocoa/WKVisitedLinkProviderInternal.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.h.
  • UIProcess/API/Cocoa/WKVisitedLinkProviderPrivate.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.h.
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):

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

(-[WKWebViewConfiguration visitedLinkProvider]):
(-[WKWebViewConfiguration setVisitedLinkProvider:]):

  • WebKit2.xcodeproj/project.pbxproj:
4:12 PM Changeset in webkit [164680] by Brent Fulgham
  • 3 edits in branches/safari-537.75-branch/Source/WebCore

Merge r164660

2014-02-25 Brent Fulgham <Brent Fulgham>

[Win] Gracefully recover from missing 'naturalSize' parameter for media
https://bugs.webkit.org/show_bug.cgi?id=129278

Reviewed by Eric Carlson.

  • platform/graphics/avfoundation/cf/AVFoundationCFSoftLinking.h: Add declaration for missing function call.
  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp: (WebCore::createMetadataKeyNames): (WebCore::MediaPlayerPrivateAVFoundationCF::assetStatus): Don't treat missing 'naturalSize' as a fatal error. (WebCore::MediaPlayerPrivateAVFoundationCF::tracksChanged): Handle case of asset track not being available yet. (WebCore::MediaPlayerPrivateAVFoundationCF::sizeChanged): If the 'naturalSize' is empty, use the Player Item's 'presentationSize' instead. (WebCore::AVFWrapper::processNotification): Add missing handler for duration changed.
3:53 PM Changeset in webkit [164679] by mark.lam@apple.com
  • 2 edits in trunk/Source/WebCore

JSDOMPromise methods should acquire VM lock before calling into JS.
<https://webkit.org/b/129341>

Reviewed by Geoffrey Garen.

No new tests.

  • bindings/js/JSDOMPromise.h:

(WebCore::DeferredWrapper::resolve):
(WebCore::DeferredWrapper::reject):
(WebCore::DeferredWrapper::resolve<String>):
(WebCore::DeferredWrapper::resolve<bool>):
(WebCore::char>>):
(WebCore::DeferredWrapper::reject<String>):

3:28 PM Changeset in webkit [164678] by andersca@apple.com
  • 7 edits in trunk/Source

Simplify visited link style invalidation
https://bugs.webkit.org/show_bug.cgi?id=129340

Reviewed by Dan Bernstein.

Source/WebCore:

Get rid of the static Page::allVisitedStateChanged and Page::visitedStateChanged
member functions and add functions to invalidate all styles on a single page or the style
for a single link hash on a single page.

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

(WebCore::Page::invalidateStylesForAllLinks):
(WebCore::Page::invalidateStylesForLink):

  • page/Page.h:
  • page/PageGroup.cpp:

(WebCore::PageGroup::addVisitedLink):
(WebCore::PageGroup::removeVisitedLink):
(WebCore::PageGroup::removeVisitedLinks):

Source/WebKit2:

  • UIProcess/VisitedLinkProvider.cpp:

(WebKit::VisitedLinkProvider::addVisitedLink):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::visitedLinkStateChanged):
(WebKit::WebProcess::allVisitedLinkStateChanged):

3:17 PM Changeset in webkit [164677] by akling@apple.com
  • 8 edits in trunk/Source/WebCore

Remove unused ThreadSpecificInspectorCounters.
<https://webkit.org/b/129337>

We were keeping count of all the JS event listeners in every thread
to support an old Chromium feature that's no longer relevant.

Removing this gets rid of expensive thread-local storage lookups.

Reviewed by Anders Carlsson.

  • bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::JSEventListener):
(WebCore::JSEventListener::~JSEventListener):

  • inspector/InspectorCounters.cpp:
  • inspector/InspectorCounters.h:
  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::setDOMCounters):

  • inspector/protocol/Timeline.json:
  • platform/ThreadGlobalData.cpp:

(WebCore::ThreadGlobalData::ThreadGlobalData):
(WebCore::ThreadGlobalData::destroy):

  • platform/ThreadGlobalData.h:
3:03 PM Changeset in webkit [164676] by Brent Fulgham
  • 2 edits in branches/safari-537.75-branch/WebKitLibraries

Unreviewed build fix.

  • win/tools/vsprops/production.props: Production build needs to have 'OFFICIAL_BUILD' set

in the environment for build sub-processes.

3:02 PM Changeset in webkit [164675] by Brent Fulgham
  • 2 edits in branches/safari-537.75-branch/Source/WTF

Unreviewed build fix.

  • WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py: Handle unset 'WEBKIT_LIBRARIES' properly

since this is expected to be unset in the production build environmenet.

2:31 PM Changeset in webkit [164674] by lvidacs.u-szeged@partner.samsung.com
  • 3 edits
    8 adds in trunk

display:table with padding and/or borders in border-box calculates height incorrectly
https://bugs.webkit.org/show_bug.cgi?id=126576

Reviewed by David Hyatt.

Based on blink issue https://codereview.chromium.org/25206002/

Source/WebCore:

Tests: fast/box-sizing/css-table-collapse.html

fast/box-sizing/css-table-no-collapse.html
fast/box-sizing/table-collapse.html
fast/box-sizing/table-no-collapse.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computePositionedLogicalHeightUsing):

LayoutTests:

  • fast/box-sizing/css-table-collapse-expected.txt: Added.
  • fast/box-sizing/css-table-collapse.html: Added.
  • fast/box-sizing/css-table-no-collapse-expected.txt: Added.
  • fast/box-sizing/css-table-no-collapse.html: Added.
  • fast/box-sizing/table-collapse-expected.txt: Added.
  • fast/box-sizing/table-collapse.html: Added.
  • fast/box-sizing/table-no-collapse-expected.txt: Added.
  • fast/box-sizing/table-no-collapse.html: Added.
2:18 PM Changeset in webkit [164673] by fpizlo@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

Inline caching in the FTL on ARM64 should "work"
https://bugs.webkit.org/show_bug.cgi?id=129334

Reviewed by Mark Hahnenberg.

Gets us to the point where simple tests that use inline caching are passing.

  • assembler/LinkBuffer.cpp:

(JSC::LinkBuffer::copyCompactAndLinkCode):
(JSC::LinkBuffer::shrink):

  • ftl/FTLInlineCacheSize.cpp:

(JSC::FTL::sizeOfGetById):
(JSC::FTL::sizeOfPutById):
(JSC::FTL::sizeOfCall):

  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileFTLOSRExit):

  • ftl/FTLThunks.cpp:

(JSC::FTL::osrExitGenerationThunkGenerator):

  • jit/GPRInfo.h:
  • offlineasm/arm64.rb:
1:42 PM Changeset in webkit [164672] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Fix build.

Remove VisitedLinkStrategy.

  • NetworkProcess/NetworkProcessPlatformStrategies.cpp:
  • NetworkProcess/NetworkProcessPlatformStrategies.h:
  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:
1:37 PM Changeset in webkit [164671] by ap@apple.com
  • 2 edits in trunk/LayoutTests

inspector-protocol/page/deny-X-FrameOption.html is very flaky
https://bugs.webkit.org/show_bug.cgi?id=129331

1:35 PM Changeset in webkit [164670] by andersca@apple.com
  • 18 edits
    1 delete in trunk/Source

Get rid of VisitedLinkStrategy
https://bugs.webkit.org/show_bug.cgi?id=129324

Reviewed by Dan Bernstein.

Source/WebCore:

  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/PlatformStrategies.h:

(WebCore::PlatformStrategies::PlatformStrategies):

  • platform/VisitedLinkStrategy.h: Removed.

Source/WebKit/efl:

  • WebCoreSupport/PlatformStrategiesEfl.cpp:

(PlatformStrategiesEfl::getPluginInfo):

  • WebCoreSupport/PlatformStrategiesEfl.h:

Source/WebKit/gtk:

  • WebCoreSupport/PlatformStrategiesGtk.cpp:

(PlatformStrategiesGtk::getPluginInfo):

  • WebCoreSupport/PlatformStrategiesGtk.h:

Source/WebKit/mac:

  • WebCoreSupport/WebPlatformStrategies.h:
  • WebCoreSupport/WebPlatformStrategies.mm:

Source/WebKit/win:

  • WebCoreSupport/WebPlatformStrategies.cpp:

(WebPlatformStrategies::getPluginInfo):

  • WebCoreSupport/WebPlatformStrategies.h:
1:29 PM Changeset in webkit [164669] by ap@apple.com
  • 42 edits
    2 deletes in trunk/Source

Rolling out http://trac.webkit.org/changeset/164611, because it broke
WebKit2.PrivateBrowsingPushStateNoHistoryCallback API test

The change was for:

Source/WebCore:

https://bugs.webkit.org/show_bug.cgi?id=129141
Create SessionID class

Source/WebKit2:

https://bugs.webkit.org/show_bug.cgi?id=129141
Create SessionID class

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

REGRESSION: All inspector-protocol/model very frequently assert in IDBRequest::~IDBRequest
https://bugs.webkit.org/show_bug.cgi?id=129328

inspector-protocol/indexeddb/basics.html fails
https://bugs.webkit.org/show_bug.cgi?id=129327

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

Unreviewed, rolling out r164627.
http://trac.webkit.org/changeset/164627
https://bugs.webkit.org/show_bug.cgi?id=129325

Broke SubtleCrypto tests (Requested by ap on #webkit).

Source/JavaScriptCore:

  • API/APIShims.h:

(JSC::APIEntryShim::APIEntryShim):
(JSC::APICallbackShim::shouldDropAllLocks):

  • heap/MachineStackMarker.cpp:

(JSC::MachineThreads::addCurrentThread):

  • runtime/JSLock.cpp:

(JSC::JSLockHolder::JSLockHolder):
(JSC::JSLockHolder::init):
(JSC::JSLockHolder::~JSLockHolder):
(JSC::JSLock::JSLock):
(JSC::JSLock::lock):
(JSC::JSLock::unlock):
(JSC::JSLock::currentThreadIsHoldingLock):
(JSC::JSLock::dropAllLocks):
(JSC::JSLock::grabAllLocks):

  • runtime/JSLock.h:
  • runtime/VM.cpp:

(JSC::VM::VM):

  • runtime/VM.h:

(JSC::VM::currentThreadIsHoldingAPILock):

Source/WebCore:

  • bindings/js/JSDOMBinding.cpp:

(WebCore::reportException):

  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::JSDOMWindowBase::commonVM):

1:10 PM Changeset in webkit [164666] by mitz@apple.com
  • 8 edits
    1 add in trunk/Source/WebKit2

[Cocoa] Add delegate method for customizing actions on activated elements
https://bugs.webkit.org/show_bug.cgi?id=129290

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKUIDelegatePrivate.h: Added. Declared new delegate method.
  • UIProcess/API/Cocoa/_WKActivatedElementInfo.h:

(_WKActivatedElementType): Defined enum of element types.

  • UIProcess/API/Cocoa/_WKActivatedElementInfo.mm:

(-[_WKActivatedElementInfo _initWithType:URL:location:title:rect:]): Added type parameter
to the initializer, used to set the new type property.

  • UIProcess/API/Cocoa/_WKActivatedElementInfoInternal.h:
  • UIProcess/Cocoa/UIClient.h:
  • UIProcess/Cocoa/UIClient.mm:

(WebKit::UIClient::setDelegate): Initialize webViewActionsForElementDefaultActions member
of m_delegateMethods.
(WebKit::UIClient::actionsForElement): Added. Calls out to the new delegate method if
implemented. Otherwise returns the default actions.

  • UIProcess/ios/WKActionSheetAssistant.mm:

(-[WKActionSheetAssistant actionSheet:clickedButtonAtIndex:]): Use new _elementInfo ivar
instead of creating element info here.
(-[WKActionSheetAssistant showImageSheet]): Create element info here and assign it to
_elementInfo ivar if presenting a sheet. Call the UI client to get custom actions.
(-[WKActionSheetAssistant showLinkSheet]): Ditto.
(-[WKActionSheetAssistant cleanupSheet]): Clear _elementInfo ivar.

  • WebKit2.xcodeproj/project.pbxproj: Added reference to WKUIDelegatePrivate.h.
12:56 PM Changeset in webkit [164665] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

DefaultVisitedLinkProvider can just call into the page group directly
https://bugs.webkit.org/show_bug.cgi?id=129320

Reviewed by Andreas Kling.

  • page/DefaultVisitedLinkProvider.cpp:

(WebCore::DefaultVisitedLinkProvider::isLinkVisited):
(WebCore::DefaultVisitedLinkProvider::addVisitedLink):

12:55 PM Changeset in webkit [164664] by Michał Pakuła vel Rutka
  • 2 edits in trunk/Source/WebKit2

Unreviewed EFL build fix attempt after r164562

  • CMakeLists.txt: Added WebVisitedLinkProvider.cpp.
12:48 PM Changeset in webkit [164663] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

ARM64 rshift64 should be an arithmetic shift
https://bugs.webkit.org/show_bug.cgi?id=129323

Reviewed by Mark Hahnenberg.

  • assembler/MacroAssemblerARM64.h:

(JSC::MacroAssemblerARM64::rshift64):

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

Unreviewed, rolling out r164638.
http://trac.webkit.org/changeset/164638
https://bugs.webkit.org/show_bug.cgi?id=129321

Broke Windows build. (Requested by bfulgham on #webkit).

  • dom/ContainerNode.h:

(WebCore::ChildNodesLazySnapshot::takeSnapshot):
(WebCore::ChildNodesLazySnapshot::hasSnapshot):

  • dom/Element.cpp:

(WebCore::ensureAttrNodeListForElement):
(WebCore::Element::attributes):

  • dom/ElementIteratorAssertions.h:

(WebCore::ElementIteratorAssertions::ElementIteratorAssertions):

  • dom/ElementRareData.h:

(WebCore::ElementRareData::create):
(WebCore::ElementRareData::setAttributeMap):

  • dom/MutationObserverRegistration.cpp:

(WebCore::MutationObserverRegistration::create):
(WebCore::MutationObserverRegistration::observedSubtreeNodeWillDetach):
(WebCore::MutationObserverRegistration::clearTransientRegistrations):
(WebCore::MutationObserverRegistration::addRegistrationNodesToSet):

  • dom/MutationObserverRegistration.h:
  • dom/NamedNodeMap.h:

(WebCore::NamedNodeMap::create):
(WebCore::NamedNodeMap::NamedNodeMap):

  • dom/Node.cpp:

(WebCore::Node::ensureRareData):
(WebCore::Node::didMoveToNewDocument):
(WebCore::Node::ensureEventTargetData):
(WebCore::Node::mutationObserverRegistry):
(WebCore::Node::registerMutationObserver):
(WebCore::Node::unregisterMutationObserver):
(WebCore::Node::notifyMutationObserversNodeWillDetach):

  • dom/Node.h:
  • dom/NodeRareData.h:

(WebCore::NodeListsNodeData::create):
(WebCore::NodeListsNodeData::NodeListsNodeData):
(WebCore::NodeMutationObserverData::create):
(WebCore::NodeMutationObserverData::NodeMutationObserverData):
(WebCore::NodeRareData::create):
(WebCore::NodeRareData::clearNodeLists):
(WebCore::NodeRareData::ensureNodeLists):
(WebCore::NodeRareData::ensureMutationObserverData):
(WebCore::NodeRareData::NodeRareData):

  • dom/StyledElement.cpp:

(WebCore::StyledElement::rebuildPresentationAttributeStyle):

12:29 PM Changeset in webkit [164661] by eric.carlson@apple.com
  • 14 edits in trunk/Source/WebCore

[iOS] Show status image when playing video to external device
https://bugs.webkit.org/show_bug.cgi?id=129277

Reviewed by Jer Noble.

  • Modules/mediacontrols/mediaControlsApple.js:

(Controller.prototype.handleEvent): Restructure the code so it is possible to handle events

that target the video element which aren't in the HandledVideoEvents array.

  • Modules/mediacontrols/mediaControlsiOS.js:

(ControllerIOS.prototype.currentPlaybackTargetIsWireless): webkitCurrentPlaybackTargetIsWireless

is an attribute, not a function.

(ControllerIOS.prototype.updateWirelessPlaybackStatus): Fix style.
(ControllerIOS.prototype.updateWirelessTargetAvailable): Ditto.
(ControllerIOS.prototype.updateProgress): Ditto.
(ControllerIOS.prototype.handleWrapperTouchStart): Show the controls if the wireless status

display is touched.

(ControllerIOS.prototype.handleFullscreenButtonClicked): Fix style
(ControllerIOS.prototype.handleWirelessPlaybackChange): Ditto.
(ControllerIOS.prototype.handleWirelessTargetAvailableChange):
(ControllerIOS.prototype.handleWirelessPickerButtonClicked): Ditto. Stop even propagation.

Move "playback target" logic into HTMLMediaSession.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::~HTMLMediaElement): Call media session.
(WebCore::HTMLMediaElement::loadResource): Tell media session to apply media player

restrictions now that it has a url.

(WebCore::HTMLMediaElement::invalidateCachedTime): Only log when cached time is not

already invalie.

(WebCore::HTMLMediaElement::webkitShowPlaybackTargetPicker): Call media session.
(WebCore::HTMLMediaElement::webkitCurrentPlaybackTargetIsWireless): Ditto.
(WebCore::HTMLMediaElement::mediaPlayerCurrentPlaybackTargetIsWirelessChanged): Ditto.
(WebCore::HTMLMediaElement::addEventListener): Ditto.
(WebCore::HTMLMediaElement::removeEventListen): Ditto.
(WebCore::HTMLMediaElement::enqueuePlaybackTargetAvailabilityChangedEvent): Ditto.
(WebCore::HTMLMediaElement::createMediaPlayer): Ditto.

  • html/HTMLMediaSession.cpp:

(WebCore::restrictionName): Log new WirelessVideoPlaybackDisabled restriction.
(WebCore::HTMLMediaSession::showingPlaybackTargetPickerPermitted): Return false if there

is no page, or if wireless playback is disabled.

(WebCore::HTMLMediaSession::currentPlaybackTargetIsWireless): New, logic from HTMLMediaElement.
(WebCore::HTMLMediaSession::showPlaybackTargetPicker): Ditto.
(WebCore::HTMLMediaSession::hasWirelessPlaybackTargets): Ditto.
(WebCore::HTMLMediaSession::wirelessVideoPlaybackDisabled): Ditto.
(WebCore::HTMLMediaSession::setWirelessVideoPlaybackDisabled): Ditto.
(WebCore::HTMLMediaSession::setHasPlaybackTargetAvailabilityListeners): Ditto.
(WebCore::HTMLMediaSession::applyMediaPlayerRestrictions): New, apply media player specific

restriction.

  • html/HTMLMediaSession.h:

Move "playback target" logic into HTMLMediaSession.

  • html/HTMLVideoElement.cpp:

(WebCore::HTMLVideoElement::parseAttribute): Call media session.
(WebCore::HTMLVideoElement::webkitWirelessVideoPlaybackDisabled): Call media session.

  • platform/audio/MediaSessionManager.h:

(WebCore::MediaSessionManager::showPlaybackTargetPicker): New method, does nothing in base class.

  • platform/audio/ios/MediaSessionManagerIOS.h:
  • platform/audio/ios/MediaSessionManagerIOS.mm:

(WebCore::MediaSessionManageriOS::showPlaybackTargetPicker): Add non-functional stub.

Implement wireless playback control and status API.

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification): Dispatch TargetIsWirelessChanged.
(WebCore::MediaPlayerPrivateAVFoundation::playbackTargetIsWirelessChanged): Pass through to

media element.

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC): Initialize

m_allowsWirelessVideoPlayback.

(WebCore::MediaPlayerPrivateAVFoundationObjC::cancelLoad): Remove "externalPlaybackActive" observer.
(WebCore::MediaPlayerPrivateAVFoundationObjC::destroyVideoLayer): Fix broken logging.
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayer): Add "externalPlaybackActive" observer,

set initial wireless playback.

(WebCore::MediaPlayerPrivateAVFoundationObjC::createPixelBuffer): Fix broken logging.
(WebCore::MediaPlayerPrivateAVFoundationObjC::languageOfPrimaryAudioTrack): Ditto.
(WebCore::MediaPlayerPrivateAVFoundationObjC::isCurrentPlaybackTargetWireless): New.
(WebCore::MediaPlayerPrivateAVFoundationObjC::wirelessVideoPlaybackDisabled): New.
(WebCore::MediaPlayerPrivateAVFoundationObjC::setWirelessVideoPlaybackDisabled): New.
(WebCore::MediaPlayerPrivateAVFoundationObjC::playbackTargetIsWirelessDidChange): New.
(-[WebCoreAVFMovieObserver observeValueForKeyPath:ofObject:change:context:]): Deal with

externalPlaybackActive.

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

[Win] Gracefully recover from missing 'naturalSize' parameter for media
https://bugs.webkit.org/show_bug.cgi?id=129278

Reviewed by Eric Carlson.

  • platform/graphics/avfoundation/cf/AVFoundationCFSoftLinking.h: Add declaration for

missing function call.

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::MediaPlayerPrivateAVFoundationCF::assetStatus): Don't treat missing 'naturalSize'
as a fatal error.
(WebCore::MediaPlayerPrivateAVFoundationCF::tracksChanged): Handle case of asset track
not being available yet.
(WebCore::MediaPlayerPrivateAVFoundationCF::sizeChanged): If the 'naturalSize' is empty,
use the Player Item's 'presentationSize' instead.
(WebCore::AVFWrapper::processNotification): Add missing handler for duration changed.

11:10 AM Changeset in webkit [164659] by svillar@igalia.com
  • 50 edits in trunk

[CSS Grid Layout] Add ENABLE flag
https://bugs.webkit.org/show_bug.cgi?id=129153

Reviewed by Simon Fraser.

.:

Added the ENABLE_CSS_GRID_LAYOUT feature flag to the cmake and
autotools build systems. The feature is disabled by default for
production builds.

  • Source/autotools/SetupWebKitFeatures.m4:
  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig: added ENABLE_CSS_GRID_LAYOUT feature flag.

Source/WebCore:

Added ENABLE_CSS_GRID_LAYOUT feature flag.

  • Configurations/FeatureDefines.xcconfig:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::isLayoutDependent):
(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSGridTemplateAreasValue.cpp:
  • css/CSSGridTemplateAreasValue.h:
  • css/CSSParser.cpp:

(WebCore::CSSParserContext::CSSParserContext):
(WebCore::operator==):
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):

  • css/CSSParser.h:
  • css/CSSParserMode.h:
  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):

  • css/CSSPropertyNames.in:
  • css/CSSValue.cpp:

(WebCore::CSSValue::equals):
(WebCore::CSSValue::cssText):
(WebCore::CSSValue::destroy):

  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):

  • css/StyleProperties.cpp:

(WebCore::StyleProperties::getPropertyValue):

  • css/StylePropertyShorthand.cpp:

(WebCore::shorthandForProperty):
(WebCore::matchingShorthandsForLonghand):

  • css/StyleResolver.cpp:

(WebCore::equivalentBlockDisplay):
(WebCore::StyleResolver::adjustRenderStyle):
(WebCore::StyleResolver::applyProperty):

  • css/StyleResolver.h:
  • dom/Document.cpp:
  • dom/Document.h:
  • rendering/RenderElement.cpp:

(WebCore::RenderElement::createFor):

  • rendering/RenderGrid.cpp:
  • rendering/RenderGrid.h:
  • rendering/style/GridCoordinate.h:
  • rendering/style/GridLength.h:
  • rendering/style/GridPosition.h:
  • rendering/style/GridTrackSize.h:
  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::changeRequiresLayout):

  • rendering/style/RenderStyle.h:
  • rendering/style/RenderStyleConstants.h:
  • rendering/style/StyleAllInOne.cpp:
  • rendering/style/StyleGridData.cpp:
  • rendering/style/StyleGridData.h:
  • rendering/style/StyleGridItemData.cpp:
  • rendering/style/StyleGridItemData.h:
  • rendering/style/StyleRareNonInheritedData.cpp:

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

  • rendering/style/StyleRareNonInheritedData.h:

Source/WebKit/mac:

Added ENABLE_CSS_GRID_LAYOUT feature flag.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Added ENABLE_CSS_GRID_LAYOUT feature flag.

  • Configurations/FeatureDefines.xcconfig:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

Tools:

Added ENABLE_CSS_GRID_LAYOUT feature flag. It's on by default for
all ports for developer builds.

  • Scripts/webkitperl/FeatureList.pm:
10:53 AM Changeset in webkit [164658] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed GTK build fix after r164652.

  • GNUmakefile.list.am: Add WebVisitedLinkProvider build targets.
10:38 AM WebKitOrgShortLinks created by BJ Burg
10:34 AM WikiStart edited by BJ Burg
syntax is hard (diff)
10:33 AM Changeset in webkit [164657] by Dániel Bátyai
  • 2 edits in trunk/Tools

Added myself as a committer.

Unreviewed.

  • Scripts/webkitpy/common/config/contributors.json:
10:33 AM WikiStart edited by BJ Burg
Start an index of all the webkit.org/shortlinks (diff)
10:24 AM Changeset in webkit [164656] by jer.noble@apple.com
  • 3 edits in trunk/Source/WebCore

[EME][Mac] Fix a few issues in CDMSessionMediaSourceAVFObjC.
https://bugs.webkit.org/show_bug.cgi?id=129310

Reviewed by Eric Carlson.

Only send a 'keyerror' event if an actual error code was returned, not just
when no key was added:

  • Modules/encryptedmedia/MediaKeySession.cpp:

(WebCore::MediaKeySession::addKeyTimerFired):

The 'length' parameter to a typed ArrayBufferView is the number of entries
in the array, not the byte length:

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

(WebCore::CDMSessionMediaSourceAVFObjC::generateKeyRequest):

The return value of streamingContentKeyRequestDataForApp:contentIdentifier:trackId:options:error
is autoreleased; do not wrap it in an adoptNS:

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

(WebCore::CDMSessionMediaSourceAVFObjC::update):

10:18 AM Changeset in webkit [164655] by thiago.lacerda@openbossa.org
  • 2 edits
    1 add in trunk/Source/WebCore

[MediaStream] Adding mock implementation of UserMediaClient
https://bugs.webkit.org/show_bug.cgi?id=129274

Reviewed by Eric Carlson.

  • platform/mock/UserMediaClientMock.h: Added.

(WebCore::UserMediaClientRequestNotifier::UserMediaClientRequestNotifier):

  • testing/Internals.cpp:

(WebCore::Internals::Internals):

9:57 AM Changeset in webkit [164654] by rniwa@webkit.org
  • 16 edits in trunk/Source/WebCore

Tighten bitfields in live NodeLists and HTMLCollections
https://bugs.webkit.org/show_bug.cgi?id=129300

Reviewed by Geoffrey Garen.

Reduce the number of bits used for m_rootType and m_type in LiveNodeList.
Also use enum class for LiveNodeList types. We keep "Type" suffix not to
confuse old-ish compilers.

  • dom/ClassNodeList.cpp:

(WebCore::ClassNodeList::ClassNodeList):

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::getElementsByTagName):
(WebCore::ContainerNode::getElementsByName):
(WebCore::ContainerNode::getElementsByClassName):
(WebCore::ContainerNode::radioNodeList):

  • dom/LiveNodeList.cpp:

(WebCore::LiveNodeList::collectionFirst):
(WebCore::LiveNodeList::collectionTraverseForward):

  • dom/LiveNodeList.h:

(WebCore::LiveNodeList::LiveNodeList):

  • dom/NameNodeList.cpp:

(WebCore::NameNodeList::NameNodeList):

  • dom/NameNodeList.h:

(WebCore::NameNodeList::create):

  • dom/NodeRareData.h:

(WebCore::NodeListsNodeData::namedNodeListKey):

  • dom/TagNodeList.cpp:

(WebCore::HTMLTagNodeList::HTMLTagNodeList):

  • dom/TagNodeList.h:

(WebCore::TagNodeList::create):
(WebCore::HTMLTagNodeList::create):

  • html/HTMLCollection.h:
  • html/LabelableElement.cpp:

(WebCore::LabelableElement::labels):

  • html/LabelsNodeList.cpp:

(WebCore::LabelsNodeList::LabelsNodeList):

  • html/LabelsNodeList.h:
  • html/RadioNodeList.cpp:

(WebCore::RadioNodeList::RadioNodeList):

  • html/RadioNodeList.h:

(WebCore::RadioNodeList::create):

9:53 AM Changeset in webkit [164653] by msaboff@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

JIT Engines use the wrong stack limit for stack checks
https://bugs.webkit.org/show_bug.cgi?id=129314

Reviewed by Filip Pizlo.

Change the Baseline and DFG code to use VM::m_stackLimit for stack limit checks.

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compileFunction):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • jit/JITCall.cpp:

(JSC::JIT::compileLoadVarargs):

  • jit/JITCall32_64.cpp:

(JSC::JIT::compileLoadVarargs):

  • runtime/VM.h:

(JSC::VM::addressOfStackLimit):

9:48 AM Changeset in webkit [164652] by andersca@apple.com
  • 8 edits
    2 adds in trunk/Source

Make it possible to set the visited link provider on a per page basis
https://bugs.webkit.org/show_bug.cgi?id=129288

Reviewed by Andreas Kling.

Source/WebCore:

  • WebCore.exp.in:

Export symbols needed by WebKit2.

  • WebCore.xcodeproj/project.pbxproj:

Make VisitedLinkProvider a private header.

  • page/Page.cpp:

(WebCore::Page::Page):
Take the visited link provider from the PageClients object.

(WebCore::Page::visitedLinkProvider):
If the page has a visited link provider set, return it.

  • page/Page.h:

Add VisitedLinkProvider to Page and PageClients.

Source/WebKit2:

Add WebVisitedLinkProvider which just calls the web process.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

  • WebProcess/WebPage/WebVisitedLinkProvider.cpp: Added.

(WebKit::WebVisitedLinkProvider::create):
(WebKit::WebVisitedLinkProvider::WebVisitedLinkProvider):
(WebKit::WebVisitedLinkProvider::~WebVisitedLinkProvider):
(WebKit::WebVisitedLinkProvider::isLinkVisited):
(WebKit::WebVisitedLinkProvider::addVisitedLink):

  • WebProcess/WebPage/WebVisitedLinkProvider.h: Added.
9:47 AM Changeset in webkit [164651] by fpizlo@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

Unreviewed, roll out http://trac.webkit.org/changeset/164493.

It causes crashes, apparently because it's removing too many barriers. I will investigate
later.

  • bytecode/SpeculatedType.cpp:

(JSC::speculationToAbbreviatedString):

  • bytecode/SpeculatedType.h:
  • dfg/DFGFixupPhase.cpp:

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

  • dfg/DFGNode.h:
  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compareEqObjectOrOtherToObject):
(JSC::FTL::LowerDFGToLLVM::equalNullOrUndefined):
(JSC::FTL::LowerDFGToLLVM::isNotNully):
(JSC::FTL::LowerDFGToLLVM::isNully):
(JSC::FTL::LowerDFGToLLVM::speculate):
(JSC::FTL::LowerDFGToLLVM::speculateObjectOrOther):
(JSC::FTL::LowerDFGToLLVM::speculateNotCell):

9:15 AM Changeset in webkit [164650] by Brent Fulgham
  • 2 edits in branches/safari-537.60-branch/Source/WTF

Merge r152973

2013-07-22 Brent Fulgham <Brent Fulgham>

[Windows] Unreviewed build fix.

  • WTF.vcxproj/WTFGenerated.make: Stop triggering a "Build All" when things have not changed.
8:10 AM Changeset in webkit [164649] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

[New Multicolumn] -webkit-column-break-inside:avoid doesn't work
https://bugs.webkit.org/show_bug.cgi?id=129299

Patch by Morten Stenshorne <mstensho@opera.com> on 2014-02-25
Reviewed by Andrei Bucur.

Source/WebCore:

adjustForUnsplittableChild() simply forgot to check whether we
were inside flow thread based multicol.

Test: fast/multicol/newmulticol/avoid-column-break-inside.html

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::adjustForUnsplittableChild):

LayoutTests:

  • fast/multicol/newmulticol/avoid-column-break-inside-expected.html: Added.
  • fast/multicol/newmulticol/avoid-column-break-inside.html: Added.
7:08 AM Changeset in webkit [164648] by tgergely.u-szeged@partner.samsung.com
  • 2 edits in trunk/Tools

Unreviewed. Moved myself to the list of committers.

  • Scripts/webkitpy/common/config/contributors.json:
6:53 AM Changeset in webkit [164647] by pmolnar.u-szeged@partner.samsung.com
  • 2 edits in trunk/Tools

Move myself to the committers list.

Unreviewed.

  • Scripts/webkitpy/common/config/contributors.json:
6:51 AM Changeset in webkit [164646] by mihnea@adobe.com
  • 2 edits in trunk/Source/WebCore

[CSSRegions] Remove unused function RenderFlowThread::regionForCompositedLayer
https://bugs.webkit.org/show_bug.cgi?id=129303

Reviewed by Andrei Bucur.

Cleanup, no funtionality change, no new tests.

  • rendering/RenderFlowThread.h:
6:48 AM Changeset in webkit [164645] by llango.u-szeged@partner.samsung.com
  • 2 edits in trunk/Tools

Unreviewed. Add myself as a committer.

  • Scripts/webkitpy/common/config/contributors.json:
6:07 AM Changeset in webkit [164644] by Manuel Rego Casasnovas
  • 3 edits in trunk/Tools

Unreviewed, rolling out r164639.
http://trac.webkit.org/changeset/164639
https://bugs.webkit.org/show_bug.cgi?id=129302

gtk-doc still have problems in EWS (Requested by rego on
#webkit).

Patch by Commit Queue <commit-queue@webkit.org> on 2014-02-25

  • Scripts/webkitpy/common/config/ports.py:

(GtkPort.build_webkit_command):
(GtkWK2Port.build_webkit_command):

  • Scripts/webkitpy/common/config/ports_unittest.py:

(DeprecatedPortTest.test_gtk_port):
(DeprecatedPortTest.test_gtk_wk2_port):

5:31 AM Changeset in webkit [164643] by g.czajkowski@samsung.com
  • 7 edits
    3 adds
    9 deletes in trunk/LayoutTests

Refactoring inline_spelling_markers.html to use asynchronous spellchecking
https://bugs.webkit.org/show_bug.cgi?id=127284

Reviewed by Ryosuke Niwa.

Use asynchronous text checking in inline-spelling-markers.html and
inline-spelling-markers-hidpi.html

Rename the test to inline-spelling-markers.html to match the naming convention.

  • editing/spelling/inline-spelling-markers-expected.txt: Added.

Make cross platform text expectation by dumping spelling/grammar markers
instead of whole tree which in terms of spellchecking says nothing.

  • editing/spelling/inline-spelling-markers.html: Added.

Remove unnecessary new lines from div elements so position of markers can be given from 0.
Activate text checking by adding a word separator so WebKit starts performing spell and grammar
checking. Selection change does not invoke grammar checking unless we start editing the input
element's content.

  • platform/efl/editing/spelling/inline_spelling_markers-expected.png: Removed.
  • platform/efl/editing/spelling/inline_spelling_markers-expected.txt: Removed.
  • platform/gtk/editing/spelling/inline_spelling_markers-expected.png: Removed.
  • platform/gtk/editing/spelling/inline_spelling_markers-expected.txt: Removed.
  • platform/mac/editing/spelling/inline_spelling_markers-expected.png: Removed.
  • platform/mac/editing/spelling/inline_spelling_markers-expected.txt: Removed.

Those are not needed as pixel tests don't introduce anything special here.
Let's keep them in hidpi test only.

  • editing/spelling/inline-spelling-markers-hidpi-expected.txt:
  • editing/spelling/inline-spelling-markers-hidpi.html:

Apply changes from inline-spelling-markers.html

  • platform/mac/editing/spelling/inline-spelling-markers-hidpi-expected.png: Added.
  • platform/efl/editing/spelling/inline-spelling-markers-hidpi-expected.png: Removed.
  • platform/gtk/editing/spelling/inline-spelling-markers-hidpi-expected.png: Removed.

Remove wrong baselines due to missing grammar markers.

  • platform/efl-wk2/TestExpectations:
  • platform/gtk/TestExpectations:

Mark inline-spelling-markers.html and its hidpi version as failures
since EFL and GTK do not implement grammar checking.

  • platform/mac-wk2/TestExpectations:
  • platform/win/TestExpectations:

Mark inline-spelling-markers.html and its hidpi version as failures
due to missing TextChecker::requestCheckingOfString() implementation.

5:27 AM WebKitGTK/2.4.x edited by desrt@desrt.ca
BSD DFG JIT PLZ (diff)
4:44 AM Changeset in webkit [164642] by commit-queue@webkit.org
  • 2 edits in trunk/Websites/bugs.webkit.org

PrettyPatch.rb should be more descriptive for "git diff -M" styled patches
https://bugs.webkit.org/show_bug.cgi?id=125514

Patch by Jozsef Berta <jberta.u-szeged@partner.samsung.com> on 2014-02-25
Reviewed by Csaba Osztrogonác.

  • PrettyPatch/PrettyPatch.rb: PrettyPatch.rb is modified to show which file was renamed or moved.
2:33 AM Changeset in webkit [164641] by stavila@adobe.com
  • 1 edit
    4 adds in trunk/LayoutTests

[CSS Regions] scrollIntoView for elements flowed into regions
https://bugs.webkit.org/show_bug.cgi?id=129151

Reviewed by Mihnea Ovidenie.

Added tests for scrollIntoView on elements flowed inside regions.

  • fast/regions/scroll-into-view-expected.html: Added.
  • fast/regions/scroll-into-view-relative-expected.html: Added.
  • fast/regions/scroll-into-view-relative.html: Added.
  • fast/regions/scroll-into-view.html: Added.
2:16 AM Changeset in webkit [164640] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

[CSS Blending] -webkit-mix-blend-mode should force transform-style: flat.
https://bugs.webkit.org/show_bug.cgi?id=126158

Patch by Mihai Tica <mitica@adobe.com> on 2014-02-25
Reviewed by Mihnea Ovidenie.

Source/WebCore:

As stated in the http://www.w3.org/TR/css3-transforms/#propdef-transform-style, an element with blending
should force transform-style: flat.

Test: css3/compositing/blend-mode-transform-style.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::adjustRenderStyle): If blending is detected, set transform-style to flat.

LayoutTests:

For an element with -webkit-mix-blend-mode, test that the value of -webkit-transform-style computes to flat.

  • css3/compositing/blend-mode-transform-style-expected.txt: Added.
  • css3/compositing/blend-mode-transform-style.html: Added.
2:05 AM Changeset in webkit [164639] by Manuel Rego Casasnovas
  • 3 edits in trunk/Tools

[GTK] Re-enable gtk-doc in EWS
https://bugs.webkit.org/show_bug.cgi?id=128369

Reviewed by Carlos Garcia Campos.

Enable again gtk-doc generation in EWS once bug #128417 has been fixed.

  • Scripts/webkitpy/common/config/ports.py:

(GtkPort.build_webkit_command): Add --disable-gtk-doc arg.
(GtkWK2Port.build_webkit_command): Ditto.

  • Scripts/webkitpy/common/config/ports_unittest.py:

(DeprecatedPortTest.test_gtk_port): Ditto.
(DeprecatedPortTest.test_gtk_wk2_port): Ditto.

12:47 AM Changeset in webkit [164638] by zandobersek@gmail.com
  • 12 edits in trunk/Source/WebCore

Move to using std::unique_ptr for Element, Node and related classes
https://bugs.webkit.org/show_bug.cgi?id=129058

Reviewed by Anders Carlsson.

Replace uses of OwnPtr and PassOwnPtr in Element, Node and the related
classes with std::unique_ptr and move semantics.

  • dom/ContainerNode.h:

(WebCore::ChildNodesLazySnapshot::takeSnapshot):
(WebCore::ChildNodesLazySnapshot::hasSnapshot):

  • dom/Element.cpp:

(WebCore::ensureAttrNodeListForElement):
(WebCore::Element::attributes):

  • dom/ElementIteratorAssertions.h:

(WebCore::ElementIteratorAssertions::ElementIteratorAssertions):

  • dom/ElementRareData.h:

(WebCore::ElementRareData::setAttributeMap):

  • dom/MutationObserverRegistration.cpp:

(WebCore::MutationObserverRegistration::observedSubtreeNodeWillDetach):
(WebCore::MutationObserverRegistration::clearTransientRegistrations):
(WebCore::MutationObserverRegistration::addRegistrationNodesToSet):

  • dom/MutationObserverRegistration.h:
  • dom/NamedNodeMap.h:

(WebCore::NamedNodeMap::NamedNodeMap):

  • dom/Node.cpp:

(WebCore::Node::ensureRareData):
(WebCore::Node::didMoveToNewDocument):
(WebCore::Node::ensureEventTargetData):
(WebCore::Node::mutationObserverRegistry):
(WebCore::Node::registerMutationObserver):
(WebCore::Node::unregisterMutationObserver):
(WebCore::Node::notifyMutationObserversNodeWillDetach):

  • dom/Node.h:
  • dom/NodeRareData.h:

(WebCore::NodeListsNodeData::NodeListsNodeData):
(WebCore::NodeRareData::NodeRareData):
(WebCore::NodeRareData::clearNodeLists):
(WebCore::NodeRareData::ensureNodeLists):
(WebCore::NodeRareData::ensureMutationObserverData):

  • dom/StyledElement.cpp:

(WebCore::StyledElement::rebuildPresentationAttributeStyle):

12:19 AM Changeset in webkit [164637] by akling@apple.com
  • 16 edits
    3 deletes in trunk/Source

Prune dead code for Web Inspector memory instrumentation.
<https://webkit.org/b/129286>

Source/WebCore:

This was leftover code from Chromium's inspector. It's not used by
today's WebKit inspector.

Reviewed by Sam Weinig.

  • CMakeLists.txt:
  • DerivedSources.make:
  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):

  • inspector/InspectorController.h:
  • inspector/InspectorMemoryAgent.cpp: Removed.
  • inspector/InspectorMemoryAgent.h: Removed.
  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):

  • inspector/InspectorTimelineAgent.h:
  • inspector/WorkerInspectorController.cpp:

(WebCore::WorkerInspectorController::WorkerInspectorController):

  • inspector/protocol/Memory.json: Removed.

Source/WebInspectorUI:

Reviewed by Sam Weinig.

  • UserInterface/Protocol/InspectorWebBackendCommands.js:
12:09 AM Changeset in webkit [164636] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Build fix for case-sensitive filesystems.

  • WebProcess/ios/WebVideoFullscreenManager.cpp:
12:08 AM Changeset in webkit [164635] by Chris Fleizach
  • 9 edits
    2 adds in trunk

AX: Support abbr, acronym
https://bugs.webkit.org/show_bug.cgi?id=128860

Reviewed by Mario Sanchez Prada.

Source/WebCore:

Expose the data in <abbr>, <acronym> and <th abbr=""> as an
alternateTextValue() parameter.

Test: platform/mac/accessibility/abbr-acronym-tags.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::hasTagName):

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::alternateTextValue):
(WebCore::AccessibilityObject::supportsAlternateTextValue):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::alternateTextValue):
(WebCore::AccessibilityRenderObject::supportsAlternateTextValue):

  • accessibility/AccessibilityRenderObject.h:
  • accessibility/AccessibilityTableCell.cpp:

(WebCore::AccessibilityTableCell::alternateTextValue):
(WebCore::AccessibilityTableCell::supportsAlternateTextValue):

  • accessibility/AccessibilityTableCell.h:
  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(AXAttributeStringSetAlternateTextValue):
(AXAttributedStringAppendText):
(-[WebAccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

LayoutTests:

  • platform/mac/accessibility/abbr-acronym-tags-expected.txt: Added.
  • platform/mac/accessibility/abbr-acronym-tags.html: Added.

Feb 24, 2014:

11:51 PM Changeset in webkit [164634] by Carlos Garcia Campos
  • 8 edits in trunk

[GTK] Mark view source mode methods as deprecated
https://bugs.webkit.org/show_bug.cgi?id=128920

Reviewed by Martin Robinson.

Source/WebKit/gtk:

  • webkit/webkitwebview.cpp: Mark set/get_view_source_mode as

deprecated in the documentation.

  • webkit/webkitwebview.h: Add deprecation guards.

Source/WebKit2:

Mark WEBKIT_VIEW_MODE_SOURCE as deprecated in documentation and
only show warnings when set_view_mode is used with WEBKIT_VIEW_MODE_SOURCE.

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkit_web_view_set_view_mode):
(webkit_web_view_get_view_mode):

  • UIProcess/API/gtk/WebKitWebView.h:

Tools:

  • TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:

(beforeAll): Remove view mode test.

11:49 PM Changeset in webkit [164633] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

[Mac] Stop looking for plug-in profiles in /S/L/Sandbox/Profiles
https://bugs.webkit.org/show_bug.cgi?id=129262
<rdar://problem/16149420>

Reviewed by Sam Weinig.

Remove unused code.

  • Shared/Plugins/mac/PluginSandboxProfile.mm:

(WebKit::pluginSandboxProfileDirectory):
(WebKit::pluginSandboxCommonProfile):
(WebKit::pluginSandboxProfile):
(WebKit::pluginHasSandboxProfile):

11:30 PM Changeset in webkit [164632] by Martin Robinson
  • 16 edits in trunk

[GTK] generate-gtkdoc should not generate documentation for source files for unbuilt source files
https://bugs.webkit.org/show_bug.cgi?id=128417

Reviewed by Carlos Garcia Campos.

.:

  • Source/cmake/OptionsGTK.cmake: Define the paths to the pkgconfig files here, so that they

may one day be used in the webkitdom config file generation.

Source/WebCore:

  • bindings/gobject/GNUmakefile.am: Generate a config file for webkitdom documentation generation.

Source/WebKit:

  • PlatformGTK.cmake: Correct the definition of WebKitGTK_ENUM_GENERATION_HEADERS and generate

a gtkdoc-webkitgtk.cfg file to be used by generate-gtkdoc.

Source/WebKit/gtk:

  • GNUmakefile.am: Generate a config file for generate-gtkdoc.

Source/WebKit2:

  • GNUmakefile.am: Generate a config file for generate-gtkdoc.
  • PlatformGTK.cmake: Ditto.

Tools:

  • gtk/GNUmakefile.am: Make the documentation process depend on the configuration files.
  • gtk/generate-gtkdoc: Switch from using hard-coded configurations to reading them from

a makefile. This allows accepting a header list from the build system, which can be used
to dynamically build a list of ignored files. We can ignore any source file that doesn't
have a corresponding header file on the header list.

  • gtk/gtkdoc.py: Now accept a headers parameter, which can be used instead of passing just

source directories to gtkdoc-scan.

11:13 PM Changeset in webkit [164631] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix build.

10:59 PM Changeset in webkit [164630] by oliver@apple.com
  • 20 edits
    3 adds in trunk

Spread operator has a bad time when applied to call function
https://bugs.webkit.org/show_bug.cgi?id=128853

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Follow on from the previous patch the added an extra slot to
op_call_varargs (and _call, _call_eval, _construct). We now
use the slot as an offset to in effect act as a 'slice' on
the spread subject. This allows us to automatically retain
all our existing argument and array optimisatons. Most of
this patch is simply threading the offset around.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitCall):
(JSC::BytecodeGenerator::emitCallVarargs):

  • bytecompiler/BytecodeGenerator.h:
  • bytecompiler/NodesCodegen.cpp:

(JSC::getArgumentByVal):
(JSC::CallFunctionCallDotNode::emitBytecode):
(JSC::ApplyFunctionCallDotNode::emitBytecode):

  • interpreter/Interpreter.cpp:

(JSC::sizeFrameForVarargs):
(JSC::loadVarargs):

  • interpreter/Interpreter.h:
  • jit/CCallHelpers.h:

(JSC::CCallHelpers::setupArgumentsWithExecState):

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

(JSC::JIT::compileLoadVarargs):

  • jit/JITInlines.h:

(JSC::JIT::callOperation):

  • jit/JITOperations.cpp:
  • jit/JITOperations.h:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • runtime/Arguments.cpp:

(JSC::Arguments::copyToArguments):

  • runtime/Arguments.h:
  • runtime/JSArray.cpp:

(JSC::JSArray::copyToArguments):

  • runtime/JSArray.h:

LayoutTests:

Test case all the things!

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

(testFunction):
(test2):
(test3):

10:46 PM Changeset in webkit [164629] by timothy@apple.com
  • 19 edits in trunk/Source/WebInspectorUI

Switch from prefixed CSS gradient to unprefixed.

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

Reviewed by Andreas Kling.

  • UserInterface/Views/BreakpointActionView.css:

(.breakpoint-action-append-button):
(.breakpoint-action-remove-button):

  • UserInterface/Views/CSSStyleDeclarationTextEditor.css:

(.css-style-text-editor > .CodeMirror .CodeMirror-lines .color-swatch):

  • UserInterface/Views/CompletionSuggestionsView.css:

(.completion-suggestions-container > .item:active):

  • UserInterface/Views/DashboardView.css:

(.toolbar .dashboard):

  • UserInterface/Views/DataGrid.css:

(.data-grid th):
(.data-grid table.data):
(.data-grid th.sortable:not(.mouse-over-collapser):active):
(.data-grid th.sort-ascending, .data-grid th.sort-descending):
(.data-grid th.sortable.sort-ascending:not(.mouse-over-collapser):active, .data-grid th.sortable.sort-descending:not(.mouse-over-collapser):active):
(body.window-inactive .data-grid th.sort-descending):

  • UserInterface/Views/DetailsSection.css:

(.details-section > .header):
(.details-section .details-section > .header):

  • UserInterface/Views/DividerNavigationItem.css:

(.navigation-bar .item.divider):

  • UserInterface/Views/FindBanner.css:

(.find-banner > button:active:not(:disabled)):

  • UserInterface/Views/Main.css:

(#split-content-browser > .navigation-bar):

  • UserInterface/Views/NavigationSidebarPanel.css:

(.sidebar > .panel.navigation > .overflow-shadow):
(.navigation-sidebar-panel-content-tree-outline .item.selected):
(.navigation-sidebar-panel-content-tree-outline:focus .item.selected):
(body.window-inactive .navigation-sidebar-panel-content-tree-outline .item.selected):

  • UserInterface/Views/ProbeSetDataGrid.css:

(.details-section.probe-set .data-grid > .data-container td.unknown-value):
(.details-section.probe-set .data-grid th):

  • UserInterface/Views/RadioButtonNavigationItem.css:

(.navigation-bar .item.radio.button.text-only.selected):

  • UserInterface/Views/TextEditor.css:

(.text-editor .bouncy-highlight):

  • UserInterface/Views/TimelineContentView.css:

(.content-view.timeline > .view-container > .timeline-view > .data-grid table.data):

  • UserInterface/Views/TimelineDataGrid.css:

(.timeline-data-grid-tree-outline .item:hover):

  • UserInterface/Views/TimelineRuler.css:

(.timeline-ruler > .header > .divider):

  • UserInterface/Views/TimelineSidebarPanel.css:

(.sidebar > .panel.timeline > .title-bar):
(.sidebar > .panel.timeline > .content > .stripe-background):

  • UserInterface/Views/Toolbar.css:

(body:not(.mac-platform) .toolbar):
(body.docked.mac-platform.mavericks .toolbar):

9:45 PM Changeset in webkit [164628] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

32-bit build fix.

  • UIProcess/API/Cocoa/_WKElementAction.mm:

(+[_WKElementAction elementActionWithType:customTitle:]):

8:44 PM Changeset in webkit [164627] by mark.lam@apple.com
  • 10 edits in trunk/Source

Need to initialize VM stack data even when the VM is on an exclusive thread.
<https://webkit.org/b/129265>

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

We check VM::exclusiveThread as an optimization to forego the need to do
JSLock locking. However, we recently started piggy backing on JSLock's
lock() and unlock() to initialize VM stack data (stackPointerAtVMEntry
and lastStackTop) to appropriate values for the current thread. This is
needed because we may be acquiring the lock to enter the VM on a different
thread.

As a result, we ended up not initializing the VM stack data when
VM::exclusiveThread causes us to bypass the locking activity. Even though
the VM::exclusiveThread will not have to deal with the VM being entered
on a different thread, it still needs to initialize the VM stack data.
The VM relies on that data being initialized properly once it has been
entered.

With this fix, we push the check for exclusiveThread down into the JSLock,
and handle the bypassing of unneeded locking activity there while still
executing the necessary the VM stack data initialization.

  • API/APIShims.h:

(JSC::APIEntryShim::APIEntryShim):
(JSC::APICallbackShim::shouldDropAllLocks):

  • heap/MachineStackMarker.cpp:

(JSC::MachineThreads::addCurrentThread):

  • runtime/JSLock.cpp:

(JSC::JSLockHolder::JSLockHolder):
(JSC::JSLockHolder::init):
(JSC::JSLockHolder::~JSLockHolder):
(JSC::JSLock::JSLock):
(JSC::JSLock::setExclusiveThread):
(JSC::JSLock::lock):
(JSLock::unlock):
(JSLock::currentThreadIsHoldingLock):
(JSLock::dropAllLocks):
(JSLock::grabAllLocks):

  • runtime/JSLock.h:

(JSC::JSLock::exclusiveThread):

  • runtime/VM.cpp:

(JSC::VM::VM):

  • runtime/VM.h:

(JSC::VM::exclusiveThread):
(JSC::VM::setExclusiveThread):
(JSC::VM::currentThreadIsHoldingAPILock):

Source/WebCore:

No new tests.

  • bindings/js/JSDOMBinding.cpp:

(WebCore::reportException):

  • Added an assertion to ensure that we are holding the JSLock.
  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::JSDOMWindowBase::commonVM):

  • Updated to use the new VM::setExclusiveThread().
8:00 PM Changeset in webkit [164626] by mitz@apple.com
  • 5 edits
    6 adds in trunk/Source/WebKit2

[Cocoa] Start adding API for customizing actions on activated elements
https://bugs.webkit.org/show_bug.cgi?id=129284

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/_WKActivatedElementInfo.h: Added. Includes the public interface of what

was WKElementActionInfo.

  • UIProcess/API/Cocoa/_WKActivatedElementInfo.m: Added.

(-[_WKActivatedElementInfo _initWithURL:location:title:rect:]): Moved and renamed internal
initializer from WKElementActionInfo.
(-[_WKActivatedElementInfo dealloc]): Moved from WKElementActionInfo.
(-[_WKActivatedElementInfo _boundingRect]): Added private accessor.
(-[_WKActivatedElementInfo _interactionLocation]): Ditto.

  • UIProcess/API/Cocoa/_WKActivatedElementInfoInternal.h: Added.
  • UIProcess/API/Cocoa/_WKElementAction.h: Added.

(_WKElementActionType): Moved from WKActionSheet.h and turned into a proper NS_ENUM.

  • UIProcess/API/Cocoa/_WKElementAction.mm: Added.

(-[_WKElementAction _initWithTitle:actionHandler:type:]): Moved and renamed internal
initializer from WKActionSheet.mm.
(-[_WKElementAction dealloc]): Moved from WKActionSheet.mm.
(+[_WKElementAction elementActionWithTitle:actionHandler:]): Moved and renamed.
(copyElement): Moved from WKActionSheet.mm.
(saveImage): Ditto.
(addToReadingList): Ditto.
(+[_WKElementAction elementActionWithType:customTitle:]): Moved and renamed.
(+[_WKElementAction elementActionWithType:]): Ditto.
(-[_WKElementAction _runActionWithElementInfo:view:]): Moved from WKActionSheet.mm.

  • UIProcess/API/Cocoa/WKElementActionInternal.h: Added.
  • UIProcess/ios/WKActionSheet.h: Removed declarations that were moved elsewhere.
  • UIProcess/ios/WKActionSheet.mm: Removed code that was moved elsewhere.
  • UIProcess/ios/WKActionSheetAssistant.mm:

(-[WKActionSheetAssistant actionSheet:clickedButtonAtIndex:]):
(-[WKActionSheetAssistant showImageSheet]):
(-[WKActionSheetAssistant showLinkSheet]):
(-[WKActionSheetAssistant showDataDetectorsSheet]):

  • WebKit2.xcodeproj/project.pbxproj: Added references to new files. Changed the Objective-C

class name check to allow _WK as a class name prefix.

7:34 PM Changeset in webkit [164625] by dino@apple.com
  • 2 edits in trunk/Source/ThirdParty/ANGLE

Unreviewed. This file should not be marked as executable (copied in from ANGLE).

  • include/KHR/khrplatform.h:
7:33 PM Changeset in webkit [164624] by andersca@apple.com
  • 16 edits
    2 copies in trunk

Add a DefaultVisitedLinkProvider and route visited link actions through it
https://bugs.webkit.org/show_bug.cgi?id=129285

Reviewed by Dan Bernstein.

Source/WebCore:

DefaultVisitedLinkProvider currently just forwards everything to the visited link strategy,
but will soon take over the responsibilities of visited link handling from PageGroup.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/VisitedLinkState.cpp:

(WebCore::VisitedLinkState::determineLinkStateSlowCase):

  • loader/HistoryController.cpp:

(WebCore::addVisitedLink):
(WebCore::HistoryController::updateForStandardLoad):
(WebCore::HistoryController::updateForRedirectWithLockedBackForwardList):
(WebCore::HistoryController::updateForClientRedirect):
(WebCore::HistoryController::updateForSameDocumentNavigation):
(WebCore::HistoryController::pushState):
(WebCore::HistoryController::replaceState):

  • page/DefaultVisitedLinkProvider.cpp: Copied from Source/WebCore/page/VisitedLinkProvider.h.

(WebCore::DefaultVisitedLinkProvider::create):
(WebCore::DefaultVisitedLinkProvider::DefaultVisitedLinkProvider):
(WebCore::DefaultVisitedLinkProvider::~DefaultVisitedLinkProvider):
(WebCore::DefaultVisitedLinkProvider::isLinkVisited):
(WebCore::DefaultVisitedLinkProvider::addVisitedLink):

  • page/DefaultVisitedLinkProvider.h: Copied from Source/WebCore/page/VisitedLinkProvider.h.
  • page/Page.cpp:

(WebCore::Page::visitedLinkProvider):

  • page/Page.h:
  • page/PageGroup.cpp:

(WebCore::PageGroup::PageGroup):
(WebCore::PageGroup::visitedLinkProvider):

  • page/PageGroup.h:
  • page/VisitedLinkProvider.h:

Tools:

  • MiniBrowser/mac/AppDelegate.m:

(-[BrowserAppDelegate applicationDidFinishLaunching:]):
Set a shared history so we'll get visited link tracking.

  • MiniBrowser/mac/WK1BrowserWindowController.m:

(-[WK1BrowserWindowController awakeFromNib]):
Set a group name.

7:00 PM Changeset in webkit [164623] by timothy@apple.com
  • 7 edits in trunk/Source/WebInspectorUI

Fix the missing navigation bar in the Debugger sidebar panel.

Sorting the CSS resources caused specificity issue.

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

Reviewed by Joseph Pecoraro.

  • UserInterface/Views/DebuggerSidebarPanel.css:

(.sidebar > .panel.navigation.debugger > .content):
(.sidebar > .panel.navigation.debugger > .navigation-bar):

  • UserInterface/Views/LayoutTimelineView.css:

(.sidebar > .panel.navigation.timeline.timeline-content-view-showing .navigation-sidebar-panel-content-tree-outline.layout .item .subtitle):

  • UserInterface/Views/NetworkTimelineView.css:

(.sidebar > .panel.navigation.timeline.timeline-content-view-showing .navigation-sidebar-panel-content-tree-outline.network .item .subtitle):

  • UserInterface/Views/ResourceSidebarPanel.css:

(.sidebar > .panel.navigation.resource > .empty-content-placeholder):
(.sidebar > .panel.navigation.resource > .search-bar):
(.sidebar > .panel.navigation.resource > .search-bar > input[type="search"]):

  • UserInterface/Views/ScriptTimelineView.css:

(.sidebar > .panel.navigation.timeline.timeline-content-view-showing .navigation-sidebar-panel-content-tree-outline.script .item .subtitle):

  • UserInterface/Views/TimelineSidebarPanel.css:

(.sidebar > .panel.navigation.timeline > .status-bar):
(.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph):
(.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.recording):
(.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph:hover):
(.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.recording:hover):
(.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.forced):
(.sidebar > .panel.navigation.timeline > .status-bar > .record-glyph.recording.forced):
(.sidebar > .panel.navigation.timeline > .status-bar > .record-status):
(.sidebar > .panel.navigation.timeline > .title-bar):
(.sidebar > .panel.navigation.timeline > .title-bar.timelines):
(.sidebar > .panel.navigation.timeline > .title-bar.timeline-events):
(.sidebar > .panel.navigation.timeline > .timelines-content):
(.sidebar > .panel.navigation.timeline > .timelines-content .close-button):
(.sidebar > .panel.navigation.timeline > .timelines-content li.item .icon):
(.sidebar > .panel.navigation.timeline > .timelines-content li.item.selected .close-button):
(.sidebar > .panel.navigation.timeline > .timelines-content li.item:not(.selected):nth-child(even)):
(.sidebar > .panel.navigation.timeline > .timelines-content li.item:not(.selected):not(:first-child)):
(.sidebar > .panel.navigation.timeline > .timelines-content li.item.selected + li.item):
(.sidebar > .panel.navigation.timeline > .timelines-content :focus li.item.selected + li.item):
(.sidebar > .panel.navigation.timeline > .timelines-content .close-button:active):
(.sidebar > .panel.navigation.timeline > .empty-content-placeholder):
(.sidebar > .panel.navigation.timeline.timeline-content-view-showing > .content):
(.sidebar > .panel.navigation.timeline > .content > .stripe-background):
(.sidebar > .panel.navigation.timeline.timeline-content-view-showing > .content > .stripe-background):

6:59 PM Changeset in webkit [164622] by Simon Fraser
  • 3 edits in trunk/Source/WebKit2

Use RetainPtrs for two WKContentView data members
https://bugs.webkit.org/show_bug.cgi?id=129276

Reviewed by Benjamin Poulain.

The UITextInputTraits were leaked. Fix with RetainPtr goodness.

Rename the obscure _accessory to _formAccessoryView and
make it a RetainPtr.

Rearrange the data members of the WKContentView class extension
for better packing and readability.

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

(-[WKContentView cleanupInteraction]):
(-[WKContentView inputAccessoryView]):
(-[WKContentView _updateAccessory]):
(-[WKContentView textInputTraits]):

6:40 PM Changeset in webkit [164621] by Simon Fraser
  • 13 edits
    2 moves
    1 delete in trunk/Source/WebKit2

Remove WKInteractionView, move code into WKContentView
https://bugs.webkit.org/show_bug.cgi?id=129275

Reviewed by Benjamin Poulain.

WKInteractionView as an interim solution as WebKit2 on iOS was being
brought up, and should be removed.

Move its code into a category on WKContentView, mostly unchanged. The
WKContentView (WKInteraction) categroy now implements the various protocols
that WKInteractionView implemented.

WKContentView is not an API class, so no longer has WK_API_CLASS, and can
have implementation-related data members. WKContentViewInternal.h is removed.

WKContentView now exposes a WebPageProxy* rather than a WKPageRef.

Other changes: WKActionSheetAssistant no longer stores a WebPageProxy,
getting it from the WKContentView instead.

WKAutoCorrectionData and InteractionInformationAtPosition are stored via unique_ptr
to reduce class size, and avoid having to expose their details in the header.

  • Configurations/WebKit2.xcconfig:
  • UIProcess/API/Cocoa/WKWebViewInternal.h:
  • UIProcess/API/ios/WKViewIOS.mm:

(-[WKView setAllowsBackForwardNavigationGestures:]):
(-[WKView pageRef]):
(-[WKView _pageExtendedBackgroundColor]):
(-[WKView _setBackgroundExtendsBeyondPage:]):
(-[WKView _backgroundExtendsBeyondPage]):

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

(-[WKActionSheet initWithView:]):
(+[WKElementAction customElementActionWithTitle:actionHandler:]):
(copyElement):
(saveImage):
(+[WKElementAction standardElementActionWithType:customTitle:]):
(-[WKElementAction runActionWithElementInfo:view:]):

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

(-[WKActionSheetAssistant initWithView:]):
(-[WKActionSheetAssistant dealloc]):
(-[WKActionSheetAssistant initialPresentationRectInHostViewForSheet]):
(-[WKActionSheetAssistant presentationRectInHostViewForSheet]):
(-[WKActionSheetAssistant actionSheet:clickedButtonAtIndex:]):
(-[WKActionSheetAssistant _createSheetWithElementActions:showLinkTitle:]):
(-[WKActionSheetAssistant showImageSheet]):
(-[WKActionSheetAssistant showLinkSheet]):
(-[WKActionSheetAssistant showDataDetectorsSheet]):
(-[WKActionSheetAssistant cleanupSheet]):

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

(-[WKContentView initWithFrame:context:WebKit::configuration:WebKit::]):
(-[WKContentView dealloc]):
(-[WKContentView page]):
(-[WKContentView isAssistingNode]):
(-[WKContentView didFinishScrolling]):
(-[WKContentView willStartZoomOrScroll]):
(-[WKContentView willStartUserTriggeredScroll]):
(-[WKContentView willStartUserTriggeredZoom]):
(-[WKContentView didZoomToScale:]):
(-[WKContentView _didCommitLoadForMainFrame]):
(-[WKContentView _didCommitLayerTree:WebKit::]):

  • UIProcess/ios/WKContentViewInteraction.h: Renamed from Source/WebKit2/UIProcess/ios/WKInteractionView.h.
  • UIProcess/ios/WKContentViewInteraction.mm: Renamed from Source/WebKit2/UIProcess/ios/WKInteractionView.mm.

(-[WKContentView setupInteraction]):
(-[WKContentView cleanupInteraction]):
(-[WKContentView positionInformation]):
(-[WKContentView setInputDelegate:]):
(-[WKContentView inputDelegate]):
(-[WKContentView isEditable]):
(-[WKContentView canBecomeFirstResponder]):
(-[WKContentView resignFirstResponder]):
(-[WKContentView _webTouchEventsRecognized:]):
(inflateQuad):
(-[WKContentView _webTouchEvent:WebKit::preventsNativeGestures:]):
(-[WKContentView _didGetTapHighlightForRequest:color:WebCore::quads:WebCore::topLeftRadius:WebCore::topRightRadius:WebCore::bottomLeftRadius:WebCore::bottomRightRadius:WebCore::]):
(-[WKContentView _cancelLongPressGestureRecognizer]):
(-[WKContentView _didScroll]):
(-[WKContentView _requiresKeyboardResetOnReload]):
(-[WKContentView gestureRecognizer:canPreventGestureRecognizer:]):
(-[WKContentView gestureRecognizer:canBePreventedByGestureRecognizer:]):
(isSamePair):
(-[WKContentView gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:]):
(-[WKContentView _showImageSheet]):
(-[WKContentView _showLinkSheet]):
(-[WKContentView _showDataDetectorsSheet]):
(-[WKContentView _actionForLongPress]):
(-[WKContentView ensurePositionInformationIsUpToDate:]):
(-[WKContentView _updatePositionInformation]):
(-[WKContentView gestureRecognizerShouldBegin:]):
(-[WKContentView _cancelInteraction]):
(-[WKContentView hasSelectablePositionAtPoint:]):
(-[WKContentView pointIsInAssistedNode:]):
(-[WKContentView webSelectionRects]):
(-[WKContentView _highlightLongPressRecognized:]):
(-[WKContentView _longPressRecognized:]):
(-[WKContentView _singleTapRecognized:]):
(-[WKContentView _doubleTapRecognized:]):
(-[WKContentView _twoFingerDoubleTapRecognized:]):
(-[WKContentView _twoFingerPanRecognized:]):
(-[WKContentView _attemptClickAtLocation:]):
(-[WKContentView useSelectionAssistantWithMode:]):
(-[WKContentView clearSelection]):
(-[WKContentView _positionInformationDidChange:]):
(-[WKContentView _willStartScrollingOrZooming]):
(-[WKContentView _willStartUserTriggeredScrollingOrZooming]):
(-[WKContentView _didEndScrollingOrZooming]):
(-[WKContentView inputAccessoryView]):
(-[WKContentView supportedPasteboardTypesForCurrentSelection]):
(-[WKContentView _addShortcut:]):
(-[WKContentView _promptForReplace:]):
(-[WKContentView replace:]):
(-[WKContentView canPerformAction:withSender:]):
(-[WKContentView _resetShowingTextStyle:]):
(-[WKContentView _performAction:]):
(-[WKContentView copy:]):
(-[WKContentView cut:]):
(-[WKContentView paste:]):
(-[WKContentView select:]):
(-[WKContentView selectAll:]):
(-[WKContentView toggleBoldface:]):
(-[WKContentView toggleItalics:]):
(-[WKContentView toggleUnderline:]):
(-[WKContentView _showTextStyleOptions:]):
(-[WKContentView _showDictionary:]):
(-[WKContentView _define:]):
(toWKGestureType):
(toUIWKGestureType):
(toWKSelectionTouch):
(toUIWKSelectionTouch):
(toWKGestureRecognizerState):
(toUIGestureRecognizerState):
(toUIWKSelectionFlags):
(toWKHandlePosition):
(selectionChangedWithGesture):
(selectionChangedWithTouch):
(-[WKContentView _didUpdateBlockSelectionWithTouch:WebKit::withFlags:WebKit::growThreshold:shrinkThreshold:]):
(-[WKContentView changeSelectionWithGestureAt:withGesture:withState:]):
(-[WKContentView changeSelectionWithTouchAt:withSelectionTouch:baseIsStart:]):
(-[WKContentView changeSelectionWithTouchesFrom:to:withGesture:withState:]):
(-[WKContentView changeBlockSelectionWithTouchAt:withSelectionTouch:forHandle:]):
(-[WKContentView autocorrectionData]):
(-[WKContentView requestAutocorrectionRectsForString:withCompletionHandler:]):
(-[WKContentView textFirstRect]):
(-[WKContentView textLastRect]):
(-[WKContentView applyAutocorrection:toString:withCompletionHandler:]):
(-[WKContentView requestAutocorrectionContextWithCompletionHandler:]):
(-[WKContentView accessoryDone]):
(-[WKContentView accessoryTab:]):
(-[WKContentView accessoryAutoFill]):
(-[WKContentView accessoryClear]):
(-[WKContentView _updateAccessory]):
(-[WKContentView textInRange:]):
(-[WKContentView replaceRange:withText:]):
(-[WKContentView selectedTextRange]):
(-[WKContentView caretRectForPosition:]):
(-[WKContentView selectionRectsForRange:]):
(-[WKContentView setSelectedTextRange:]):
(-[WKContentView hasMarkedText]):
(-[WKContentView markedText]):
(-[WKContentView markedTextRange]):
(-[WKContentView markedTextStyle]):
(-[WKContentView setMarkedTextStyle:]):
(-[WKContentView setMarkedText:selectedRange:]):
(-[WKContentView unmarkText]):
(-[WKContentView beginningOfDocument]):
(-[WKContentView endOfDocument]):
(-[WKContentView textRangeFromPosition:toPosition:]):
(-[WKContentView positionFromPosition:offset:]):
(-[WKContentView positionFromPosition:inDirection:offset:]):
(-[WKContentView comparePosition:toPosition:]):
(-[WKContentView offsetFromPosition:toPosition:]):
(-[WKContentView tokenizer]):
(-[WKContentView positionWithinRange:farthestInDirection:]):
(-[WKContentView characterRangeByExtendingPosition:inDirection:]):
(-[WKContentView baseWritingDirectionForPosition:inDirection:]):
(-[WKContentView setBaseWritingDirection:forRange:]):
(-[WKContentView firstRectForRange:]):
(-[WKContentView closestPositionToPoint:]):
(-[WKContentView closestPositionToPoint:withinRange:]):
(-[WKContentView characterRangeAtPoint:]):
(-[WKContentView deleteBackward]):
(-[WKContentView insertText:]):
(-[WKContentView hasText]):
(-[WKContentView textInputTraits]):
(-[WKContentView interactionAssistant]):
(-[WKContentView webSelectionAssistant]):
(-[WKContentView selectionRange]):
(-[WKContentView rectForNSRange:]):
(-[WKContentView _markedTextNSRange]):
(-[WKContentView selectedDOMRange]):
(-[WKContentView setSelectedDOMRange:affinityDownstream:]):
(-[WKContentView replaceRangeWithTextWithoutClosingTyping:replacementText:]):
(-[WKContentView rectContainingCaretSelection]):
(-[WKContentView requiresKeyEvents]):
(-[WKContentView handleKeyWebEvent:]):
(-[WKContentView _interpretKeyEvent:isCharEvent:]):
(-[WKContentView setBottomBufferHeight:]):
(-[WKContentView automaticallySelectedOverlay]):
(-[WKContentView selectionGranularity]):
(-[WKContentView insertDictationResult:withCorrectionIdentifier:]):
(-[WKContentView metadataDictionariesForDictationResults]):
(-[WKContentView previousUnperturbedDictationResultBoundaryFromPosition:]):
(-[WKContentView nextUnperturbedDictationResultBoundaryFromPosition:]):
(-[WKContentView moveBackward:]):
(-[WKContentView moveForward:]):
(-[WKContentView characterBeforeCaretSelection]):
(-[WKContentView wordContainingCaretSelection]):
(-[WKContentView wordRangeContainingCaretSelection]):
(-[WKContentView setMarkedText:]):
(-[WKContentView hasContent]):
(-[WKContentView selectAll]):
(-[WKContentView textColorForCaretSelection]):
(-[WKContentView fontForCaretSelection]):
(-[WKContentView hasSelection]):
(-[WKContentView isPosition:atBoundary:inDirection:]):
(-[WKContentView positionFromPosition:toBoundary:inDirection:]):
(-[WKContentView isPosition:withinTextUnit:inDirection:]):
(-[WKContentView rangeEnclosingPosition:withGranularity:inDirection:]):
(-[WKContentView takeTraitsFrom:]):
(-[WKContentView _startAssistingKeyboard]):
(-[WKContentView _stopAssistingKeyboard]):
(-[WKContentView _startAssistingNode]):
(-[WKContentView _stopAssistingNode]):
(-[WKContentView _selectionChanged]):
(-[WKContentView shouldIgnoreWebTouch]):
(-[WKContentView isAnyTouchOverActiveArea:]):
(-[WKTextRange _isCaret]):
(-[WKTextRange _isRanged]):
(+[WKTextRange textRangeWithState:isRange:isEditable:startRect:endRect:selectionRects:selectedTextLength:]):
(-[WKTextRange dealloc]):
(-[WKTextRange description]):
(-[WKTextRange start]):
(-[WKTextRange end]):
(-[WKTextRange isEmpty]):
(-[WKTextRange isEqual:]):
(+[WKTextPosition textPositionWithRect:]):
(-[WKTextPosition isEqual:]):
(-[WKTextPosition description]):
(-[WKTextSelectionRect initWithWebRect:]):
(-[WKTextSelectionRect dealloc]):
(+[WKTextSelectionRect textSelectionRectsWithWebRects:]):
(-[WKTextSelectionRect rect]):
(-[WKTextSelectionRect writingDirection]):
(-[WKTextSelectionRect range]):
(-[WKTextSelectionRect containsStart]):
(-[WKTextSelectionRect containsEnd]):
(-[WKTextSelectionRect isVertical]):
(+[WKAutocorrectionRects autocorrectionRectsWithRects:lastRect:]):
(+[WKAutocorrectionContext autocorrectionContextWithData:markedText:selectedText:afterText:selectedRangeInMarkedText:]):
(-[WKAutocorrectionContext dealloc]):

  • UIProcess/ios/WKContentViewInternal.h: Removed.
  • WebKit2.xcodeproj/project.pbxproj:
6:02 PM Changeset in webkit [164620] by fpizlo@apple.com
  • 26 edits
    8 adds in trunk

FTL should do polymorphic PutById inlining
https://bugs.webkit.org/show_bug.cgi?id=129210

Source/JavaScriptCore:

Reviewed by Mark Hahnenberg and Oliver Hunt.

This makes PutByIdStatus inform us about polymorphic cases by returning an array of
PutByIdVariants. The DFG now has a node called MultiPutByOffset that indicates a
selection of multiple inlined PutByIdVariants.

MultiPutByOffset is almost identical to MultiGetByOffset, which we added in
http://trac.webkit.org/changeset/164207.

This also does some FTL refactoring to make MultiPutByOffset share code with some nodes
that generate similar code.

1% speed-up on V8v7 due to splay improving by 6.8%. Splay does the thing where it
sometimes swaps field insertion order, creating fake polymorphism.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFromLLInt):
(JSC::PutByIdStatus::computeFor):
(JSC::PutByIdStatus::computeForStubInfo):
(JSC::PutByIdStatus::dump):

  • bytecode/PutByIdStatus.h:

(JSC::PutByIdStatus::PutByIdStatus):
(JSC::PutByIdStatus::isSimple):
(JSC::PutByIdStatus::numVariants):
(JSC::PutByIdStatus::variants):
(JSC::PutByIdStatus::at):
(JSC::PutByIdStatus::operator[]):

  • bytecode/PutByIdVariant.cpp: Added.

(JSC::PutByIdVariant::dump):
(JSC::PutByIdVariant::dumpInContext):

  • bytecode/PutByIdVariant.h: Added.

(JSC::PutByIdVariant::PutByIdVariant):
(JSC::PutByIdVariant::replace):
(JSC::PutByIdVariant::transition):
(JSC::PutByIdVariant::kind):
(JSC::PutByIdVariant::isSet):
(JSC::PutByIdVariant::operator!):
(JSC::PutByIdVariant::structure):
(JSC::PutByIdVariant::oldStructure):
(JSC::PutByIdVariant::newStructure):
(JSC::PutByIdVariant::structureChain):
(JSC::PutByIdVariant::offset):

  • dfg/DFGAbstractInterpreterInlines.h:

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

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::emitPrototypeChecks):
(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::emitPutById):
(JSC::DFG::ByteCodeParser::handlePutById):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::checkStructureElimination):
(JSC::DFG::CSEPhase::structureTransitionWatchpointElimination):
(JSC::DFG::CSEPhase::putStructureStoreElimination):
(JSC::DFG::CSEPhase::getByOffsetLoadElimination):
(JSC::DFG::CSEPhase::putByOffsetStoreElimination):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):
(JSC::DFG::ConstantFoldingPhase::emitPutByOffset):

  • dfg/DFGFixupPhase.cpp:

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

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

  • dfg/DFGGraph.h:
  • dfg/DFGNode.cpp:

(JSC::DFG::MultiPutByOffsetData::writesStructures):
(JSC::DFG::MultiPutByOffsetData::reallocatesStorage):

  • dfg/DFGNode.h:

(JSC::DFG::Node::convertToPutByOffset):
(JSC::DFG::Node::hasMultiPutByOffsetData):
(JSC::DFG::Node::multiPutByOffsetData):

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

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

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • dfg/DFGTypeCheckHoistingPhase.cpp:

(JSC::DFG::TypeCheckHoistingPhase::identifyRedundantStructureChecks):
(JSC::DFG::TypeCheckHoistingPhase::identifyRedundantArrayChecks):

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compilePutStructure):
(JSC::FTL::LowerDFGToLLVM::compileAllocatePropertyStorage):
(JSC::FTL::LowerDFGToLLVM::compileReallocatePropertyStorage):
(JSC::FTL::LowerDFGToLLVM::compileGetByOffset):
(JSC::FTL::LowerDFGToLLVM::compileMultiGetByOffset):
(JSC::FTL::LowerDFGToLLVM::compilePutByOffset):
(JSC::FTL::LowerDFGToLLVM::compileMultiPutByOffset):
(JSC::FTL::LowerDFGToLLVM::loadProperty):
(JSC::FTL::LowerDFGToLLVM::storeProperty):
(JSC::FTL::LowerDFGToLLVM::addressOfProperty):
(JSC::FTL::LowerDFGToLLVM::storageForTransition):
(JSC::FTL::LowerDFGToLLVM::allocatePropertyStorage):
(JSC::FTL::LowerDFGToLLVM::reallocatePropertyStorage):
(JSC::FTL::LowerDFGToLLVM::emitStoreBarrier):

  • tests/stress/fold-multi-put-by-offset-to-put-by-offset.js: Added.
  • tests/stress/multi-put-by-offset-reallocation-butterfly-cse.js: Added.
  • tests/stress/multi-put-by-offset-reallocation-cases.js: Added.

LayoutTests:

Reviewed by Mark Hahnenberg and Oliver Hunt.

Add a microbenchmark for polymorphic PutById.

  • js/regress/polymorphic-put-by-id-expected.txt: Added.
  • js/regress/polymorphic-put-by-id.html: Added.
  • js/regress/script-tests/polymorphic-put-by-id.js: Added.

(foo):

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

WKProcessPool should use secondary processes + network process
https://bugs.webkit.org/show_bug.cgi?id=129282

Reviewed by Simon Fraser.

  • UIProcess/API/Cocoa/WKProcessPool.mm:

(-[WKProcessPool initWithConfiguration:]):

5:41 PM Changeset in webkit [164618] by andersca@apple.com
  • 6 edits
    2 adds in trunk/Source/WebKit

Add WebViewGroup
https://bugs.webkit.org/show_bug.cgi?id=129280

Reviewed by Dan Bernstein.

Source/WebKit:

Add new files.

  • WebKit.xcodeproj/project.pbxproj:

Source/WebKit/mac:

This is a first step towards getting rid of page groups in WebCore. The idea is that
everything that is per page group in WebCore will be per page. In order to retain WebKit1 compatibility
WebViewGroup is going to take over more and more responsibility from WebCore::PageGroup.

  • WebCoreSupport/WebViewGroup.h: Added.
  • WebCoreSupport/WebViewGroup.mm: Added.

(webViewGroups):
(WebViewGroup::getOrCreate):
(WebViewGroup::WebViewGroup):
(WebViewGroup::~WebViewGroup):
(WebViewGroup::addWebView):
(WebViewGroup::removeWebView):

  • WebView/WebView.mm:

(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
(-[WebView _close]):
(-[WebView setGroupName:]):

  • WebView/WebViewData.h:
  • WebView/WebViewData.mm:
4:40 PM Changeset in webkit [164617] by commit-queue@webkit.org
  • 19 edits in trunk/Source

WK2 AVKit fullscreen doesn't display video.
https://bugs.webkit.org/show_bug.cgi?id=128564

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-02-24
Reviewed by Simon Fraser.

Source/WebCore:

  • WebCore.exp.in:

Export WebCore::PlatformCALayer::platformCALayer()

  • platform/ios/WebVideoFullscreenInterface.h:
  • platform/ios/WebVideoFullscreenInterfaceAVKit.h:

Remove SetVideoLayerID().

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(WebVideoFullscreenInterfaceAVKit::setVideoLayer):
Wrap make video layer look like an AVAVPlayerLayer with WebAVPlayerLayer

  • platform/ios/WebVideoFullscreenModelMediaElement.mm:

(WebVideoFullscreenModelMediaElement::setMediaElement):
Pass along the videoLayer before borrowing it so the interface will be ready to
catch the transaction that removes it.

Source/WebKit2:

  • Shared/mac/RemoteLayerTreeTransaction.h:

Add a property to track video layer pending fullscreen.

(WebKit::RemoteLayerTreeTransaction::isVideoLayerIDPendingFullscreen):
(WebKit::RemoteLayerTreeTransaction::addVideoLayerIDPendingFullscreen):
Add a property to track video layer pending fullscreen.

  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::encode):
(WebKit::RemoteLayerTreeTransaction::decode):
Encode and decode m_videoLayerIDsPendingFullscreen.

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::didCommitLayerTree):
Let WebVideoFullscreenManagerProxy see the RemoteLayerTreeTransaction.

  • UIProcess/ios/WebVideoFullscreenManagerProxy.cpp:

(WebKit::WebVideoFullscreenManagerProxy::didCommitLayerTree):
Look for video layer pending fullscreen on the transaction to initiate
fullscreen.

(WebKit::WebVideoFullscreenManagerProxy::setVideoLayerID):
Start looking for the video layer pending fullscreen in the transaction.

(WebKit::WebVideoFullscreenManagerProxy::enterFullscreen):
Override to prevent fullscreen from happening before the layer
is pending fullscreen.

  • UIProcess/ios/WebVideoFullscreenManagerProxy.h:
  • UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in:

Pass a more specific videoLayerID in SetVideoLayerID,
i.e. WebCore::GraphicsLayer::PlatformLayerID.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::willCommitLayerTree):
Move webPage specific transaction building here, including,
giving WebVideoFullscreenManager a chance to modify the transaction.

  • WebProcess/WebPage/WebPage.h:

Add willCommitLayerTree();

  • WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:

(PlatformCALayerRemoteCustom::PlatformCALayerRemoteCustom):
(PlatformCALayerRemoteCustom::~PlatformCALayerRemoteCustom):
Make and break the connection from CALayer to PlatformCALayerRemoteCustom,
the same way it is done for PlatformCALayerMac.

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::flushLayers):
Move WebPage specific transaction building into WebPage::willCommitLayerTree.

  • WebProcess/ios/WebVideoFullscreenManager.cpp:

(WebKit::WebVideoFullscreenManager::willCommitLayerTree):
addVideoLayerIDPendingFullscreen on RemoteLayerTreeTransaction when needed.

(WebKit::WebVideoFullscreenManager::setVideoLayer):
Pass along the video layerID.

  • WebProcess/ios/WebVideoFullscreenManager.h:

Add willCommitLayerTree() and remove setVideoLayerID().
Add a member to retain the unparented PlatformCALayer.

4:29 PM Changeset in webkit [164616] by Samuel White
  • 3 edits
    2 adds in trunk

AX: AccessibilityObject::findMatchingObjects should never include 'this' in results.
https://bugs.webkit.org/show_bug.cgi?id=129243

Reviewed by Chris Fleizach.

Source/WebCore:

Fix removes the container object from the search results when searching backwards. This
makes backwards & forwards search results consistent with each other.

Test: platform/mac/accessibility/search-predicate-container-not-included.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::findMatchingObjects):

LayoutTests:

Added test to ensure that the container you are searching in can never be a search result.

  • platform/mac/accessibility/search-predicate-container-not-included-expected.txt: Added.
  • platform/mac/accessibility/search-predicate-container-not-included.html: Added.
4:08 PM Changeset in webkit [164615] by Samuel White
  • 3 edits
    2 adds in trunk

AX: findMatchingObjects backwards start position inconsistent with forwards start position when startObject == nullptr.
https://bugs.webkit.org/show_bug.cgi?id=129266

Reviewed by Chris Fleizach.

Source/WebCore:

When searching forward with no start object, the first thing considered is the first child of
the container. However, when searching backwards with no start object nothing in the container
is considered; this basically negates the search. This patch makes backwards searching without
a start object start from the last child of the container to match forward search expectations.

Test: platform/mac/accessibility/search-predicate-start-not-specified.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::findMatchingObjects):

LayoutTests:

Added test to ensure that searching backward & forward without a start object produces similar
results. Backward will begin from the end of the container and forward will begin from the start.

  • platform/mac/accessibility/search-predicate-start-not-specified-expected.txt: Added.
  • platform/mac/accessibility/search-predicate-start-not-specified.html: Added.
3:25 PM Changeset in webkit [164614] by akling@apple.com
  • 15 edits
    5 deletes in trunk/Source/WebCore

Prune dead code for Web Inspector canvas instrumentation.
<https://webkit.org/b/129269>

This was leftover code from Chromium's inspector. It's not used by
today's WebKit inspector.

Reviewed by Timothy Hatcher.

  • CMakeLists.txt:
  • DerivedSources.make:
  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSHTMLCanvasElementCustom.cpp:

(WebCore::JSHTMLCanvasElement::getContext):

  • inspector/InjectedScriptCanvasModule.cpp: Removed.
  • inspector/InjectedScriptCanvasModule.h: Removed.
  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorCanvasAgent.cpp: Removed.
  • inspector/InspectorCanvasAgent.h: Removed.
  • inspector/InspectorCanvasInstrumentation.h: Removed.
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::didBeginFrame):

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::frameDetachedFromParentImpl):
(WebCore::InspectorInstrumentation::didCommitLoadImpl):

  • inspector/InspectorInstrumentation.h:
  • inspector/InstrumentingAgents.cpp:

(WebCore::InstrumentingAgents::InstrumentingAgents):
(WebCore::InstrumentingAgents::reset):

  • inspector/InstrumentingAgents.h:
3:10 PM Changeset in webkit [164613] by zoltan@webkit.org
  • 5 edits
    2 adds in trunk

[CSS Shapes] Adjust lineTop position to the next available wrapping location at shape-outsides
https://bugs.webkit.org/show_bug.cgi?id=128693

Reviewed by David Hyatt.

Source/WebCore:

When we don't have space next to the floating container, but we have space inside the floating-container next
to the defined shape-outside, we should wrap around the shape-outside. This patch fixes the behavior both for
cases when there is no space to fit at the first line, and for the additional lines cases.

Test: fast/shapes/shape-outside-floats/shape-outside-floats-linetop-adjustment.html

  • rendering/line/BreakingContextInlineHeaders.h:

(WebCore::BreakingContext::handleText):
(WebCore::BreakingContext::commitAndUpdateLineBreakIfNeeded):

  • rendering/line/LineWidth.cpp:

(WebCore::availableWidthAtOffset):
(WebCore::LineWidth::updateLineDimension): Added new helper.
(WebCore::isWholeLineFit): Added new helper.
(WebCore::LineWidth::wrapNextToShapeOutside): Added new helper.
(WebCore::LineWidth::fitBelowFloats): Add optional parameter for the function.

  • rendering/line/LineWidth.h:

LayoutTests:

  • fast/shapes/shape-outside-floats/shape-outside-floats-linetop-adjustment-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-linetop-adjustment.html: Added.
2:57 PM Changeset in webkit [164612] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

JSC regressions after r164494
https://bugs.webkit.org/show_bug.cgi?id=129272

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-02-24
Reviewed by Mark Lam.

  • offlineasm/x86.rb: Only avoid reverse opcode (fdivr) for Windows.
2:48 PM Changeset in webkit [164611] by commit-queue@webkit.org
  • 42 edits
    2 copies in trunk/Source

Create SessionID value-style class for session IDs.
https://bugs.webkit.org/show_bug.cgi?id=129141

Source/WebCore:

Patch by Martin Hock <mhock@apple.com> on 2014-02-24
Reviewed by Brady Eidson.

  • GNUmakefile.list.am:
  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • page/Page.cpp: Add SessionID member.

(WebCore::Page::Page):
(WebCore::Page::sessionID): Retrieve sessionID or use settings if not set.

  • page/Page.h:

(WebCore::Page::setSessionID):

  • page/SessionID.h: Session ID class consisting solely of its uint64_t session ID.

(WebCore::SessionID::SessionID):
(WebCore::SessionID::isValid): Not empty.
(WebCore::SessionID::isEphemeral):
(WebCore::SessionID::sessionID):
(WebCore::SessionID::operator==): Value-based equality.
(WebCore::SessionID::operator!=):
(WebCore::SessionID::emptySessionID): Zero value also used for HashTraits emptyValue.
(WebCore::SessionID::defaultSessionID):
(WebCore::SessionID::legacyPrivateSessionID):

  • page/SessionIDHash.h:

(WTF::SessionIDHash::hash): Just the casted session ID (low order bytes)
(WTF::SessionIDHash::equal):
(WTF::HashTraits<WebCore::SessionID>::emptyValue): Equal to emptySessionID.
(WTF::HashTraits<WebCore::SessionID>::constructDeletedValue): -1 value.
(WTF::HashTraits<WebCore::SessionID>::isDeletedValue):

Source/WebKit2:

The below changes deal solely with mechanical changes to use the SessionID value class instead of uint64_t except where noted.

Patch by Martin Hock <mhock@apple.com> on 2014-02-24
Reviewed by Brady Eidson.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::storageSession):
(WebKit::NetworkConnectionToWebProcess::startDownload):
(WebKit::NetworkConnectionToWebProcess::cookiesForDOM):
(WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM):
(WebKit::NetworkConnectionToWebProcess::cookiesEnabled):
(WebKit::NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue):
(WebKit::NetworkConnectionToWebProcess::getRawCookies):
(WebKit::NetworkConnectionToWebProcess::deleteCookie):

  • NetworkProcess/NetworkConnectionToWebProcess.h:
  • NetworkProcess/NetworkConnectionToWebProcess.messages.in:
  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::initializeNetworkProcess):
(WebKit::NetworkProcess::ensurePrivateBrowsingSession):
(WebKit::NetworkProcess::destroyPrivateBrowsingSession):

  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkProcess.messages.in:
  • NetworkProcess/NetworkResourceLoader.h:
  • NetworkProcess/RemoteNetworkingContext.h:
  • NetworkProcess/mac/RemoteNetworkingContext.mm:

(WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):

  • NetworkProcess/soup/RemoteNetworkingContextSoup.cpp:

(WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):

  • Shared/Network/NetworkResourceLoadParameters.cpp:

(WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):

  • Shared/Network/NetworkResourceLoadParameters.h:
  • Shared/SessionTracker.cpp:

(WebKit::staticSessionMap):
(WebKit::storageSessionToID):
(WebKit::SessionTracker::sessionMap):
(WebKit::SessionTracker::session):
(WebKit::SessionTracker::sessionID):
(WebKit::SessionTracker::setSession):
(WebKit::SessionTracker::destroySession):

  • Shared/SessionTracker.h: Move code to SessionID class.
  • Shared/WebCoreArgumentCoders.cpp: Add encode and decode for SessionID.

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

  • Shared/WebCoreArgumentCoders.h:
  • Shared/mac/CookieStorageShim.mm:

(WebKit::webKitCookieStorageCopyRequestHeaderFieldsForURL):

  • UIProcess/APISession.cpp:

(API::generateID):
(API::Session::defaultSession):
(API::Session::legacyPrivateSession):
(API::Session::Session):
(API::Session::isEphemeral):
(API::Session::getID):

  • UIProcess/APISession.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::setAnyPageGroupMightHavePrivateBrowsingEnabled):
(WebKit::WebContext::createNewWebProcess):

  • UIProcess/WebContext.h:
  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::sessionID):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::setPrivateBrowsingEnabled):

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::WebResourceLoadScheduler::scheduleLoad):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::loadResourceSynchronously):

  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:

(WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
(WebKit::WebFrameNetworkingContext::storageSession):

  • WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:

(WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
(WebKit::WebFrameNetworkingContext::storageSession):

  • WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
  • WebProcess/WebPage/WebPage.cpp: Move sessionID to Page to allow WebCore to access it.

(WebKit::WebPage::WebPage):
(WebKit::WebPage::sessionID):
(WebKit::WebPage::isUsingEphemeralSession):
(WebKit::WebPage::setSessionID):
(WebKit::WebPage::updatePreferences):

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

(WebKit::WebProcess::ensurePrivateBrowsingSession):
(WebKit::WebProcess::destroyPrivateBrowsingSession):

  • WebProcess/WebProcess.h:
  • WebProcess/WebProcess.messages.in:
2:48 PM Changeset in webkit [164610] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebKit

[WinCairo] Disable ANGLE build on WinCairo port.

  • WebKit.vcxproj/WebKit.sln:
2:29 PM Changeset in webkit [164609] by commit-queue@webkit.org
  • 28 edits in trunk

[CSS Grid Layout] handle undefined RemainingSpace in computeUsedBreadthOfGridTracks algorithm
https://bugs.webkit.org/show_bug.cgi?id=128372

Patch by Javier Fernandez <jfernandez@igalia.com> on 2014-02-24
Reviewed by David Hyatt.

From Blink r165692 by <svillar@igalia.com>

Source/WebCore:

The spec defines a different code path for the computeUsedBreadthOfGridTracks algorithm
http://dev.w3.org/csswg/css-grid/#function-ComputeUsedBreadthOfGridTracks.

Basically the track breadth is different when the available size is undefined and thus,
cannot be taken into account during the computations.
The available size is undefined whenever the height is auto or the grid element has a
shrink-to-fit behavior.

It was also renamed the function to match the specs so the function name starts with
'compute' instead of 'computed'.

No new tests, but added new cases to some of them.

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::computeIntrinsicLogicalWidths):
(WebCore::RenderGrid::computeUsedBreadthOfGridTracks):
(WebCore::gridElementIsShrinkToFit):
(WebCore::RenderGrid::computeNormalizedFractionBreadth):
(WebCore::RenderGrid::layoutGridItems):

  • rendering/RenderGrid.h:

LayoutTests:

Adapt tests to consider also cases for undefined RemainingSpace.

  • fast/css-grid-layout/flex-and-minmax-content-resolution-rows-expected.txt:
  • fast/css-grid-layout/flex-and-minmax-content-resolution-rows.html:
  • fast/css-grid-layout/flex-content-resolution-rows-expected.txt:
  • fast/css-grid-layout/flex-content-resolution-rows.html:
  • fast/css-grid-layout/grid-auto-columns-rows-update-expected.txt:
  • fast/css-grid-layout/grid-auto-columns-rows-update.html:
  • fast/css-grid-layout/grid-dynamic-updates-relayout-expected.txt:
  • fast/css-grid-layout/grid-dynamic-updates-relayout.html:
  • fast/css-grid-layout/grid-item-addition-track-breadth-update-expected.txt:
  • fast/css-grid-layout/grid-item-addition-track-breadth-update.html:
  • fast/css-grid-layout/grid-item-multiple-minmax-content-resolution-expected.txt:
  • fast/css-grid-layout/grid-item-multiple-minmax-content-resolution.html:
  • fast/css-grid-layout/grid-item-removal-track-breadth-update-expected.txt:
  • fast/css-grid-layout/grid-item-removal-track-breadth-update.html:
  • fast/css-grid-layout/grid-item-with-percent-height-in-auto-height-grid-resolution-expected.txt:
  • fast/css-grid-layout/grid-item-with-percent-height-in-auto-height-grid-resolution.html:
  • fast/css-grid-layout/implicit-position-dynamic-change-expected.txt:
  • fast/css-grid-layout/implicit-position-dynamic-change.html:
  • fast/css-grid-layout/minmax-max-content-resolution-rows-expected.txt:
  • fast/css-grid-layout/minmax-max-content-resolution-rows.html:
  • fast/css-grid-layout/minmax-min-content-column-resolution-rows-expected.txt:
  • fast/css-grid-layout/minmax-min-content-column-resolution-rows.html:
  • fast/css-grid-layout/minmax-spanning-resolution-rows-expected.txt:
  • fast/css-grid-layout/minmax-spanning-resolution-rows.html:
2:21 PM Changeset in webkit [164608] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebCore

[Windows] Unreviewed pre-emptive build fix.

  • WebCore.vcxproj/WebCoreCommon.props: Add replay directory to include path.
2:14 PM Changeset in webkit [164607] by alex.christensen@flexsim.com
  • 2 edits in trunk/Source/WTF

Disabled WebGL on WinCairo.

Unreviewed.

  • wtf/FeatureDefines.h:

Removed ENABLE_WEBGL definition for WinCairo port.
WebGL has not worked on WinCairo since r163079
and it was not compiling with a recent ANGLE update.

1:59 PM Changeset in webkit [164606] by beidson@apple.com
  • 9 edits
    1 copy in trunk/Source/WebCore

Break out ImageControls style into an external stylesheet
https://bugs.webkit.org/show_bug.cgi?id=129273

Reviewed by Jer Noble.

  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSDefaultStyleSheets.cpp:

(WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):

  • css/CSSDefaultStyleSheets.h:
  • html/shadow/mac/ImageControlsRootElementMac.cpp:

(WebCore::ImageControlsRootElementMac::maybeCreate):

  • html/shadow/mac/imageControlsMac.css:

(.x-webkit-imagemenu):
(.x-webkit-imagemenu:hover):

  • rendering/RenderTheme.h:

(WebCore::RenderTheme::mediaControlsScript):
(WebCore::RenderTheme::imageControlsStyleSheet):

  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::imageControlsStyleSheet):

1:35 PM Changeset in webkit [164605] by Simon Fraser
  • 1 edit
    2 deletes in trunk/Source/WebKit2

Remove PDFViewController.*, which is unused
https://bugs.webkit.org/show_bug.cgi?id=129270

Reviewed by Tim Horton.

  • UIProcess/mac/PDFViewController.h: Removed.
  • UIProcess/mac/PDFViewController.mm: Removed.
1:15 PM Changeset in webkit [164604] by timothy@apple.com
  • 4 edits in trunk/Source/WebInspectorUI

Give non-Mac platforms a default toolbar background so it isn't just white.

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

Reviewed by Joseph Pecoraro.

  • UserInterface/Base/Main.js:

(WebInspector.contentLoaded): Style the boby with platform classes.

  • UserInterface/Base/Utilities.js:

(String.prototype.contains): Added.

  • UserInterface/Views/Toolbar.css:

(body.docked .toolbar, body:not(.mac-platform) .toolbar): Added. Default toolbar background.
(body.docked.mac-platform.mavericks .toolbar, body.docked.mac-platform.mountain-lion): Added.
(body.mac-platform:not(.docked) .toolbar .item.button > .label): Only apply to Mac.

1:10 PM Changeset in webkit [164603] by andersca@apple.com
  • 14 edits
    7 copies
    1 move in trunk/Source/WebKit2

Rename WKProcessClass to WKProcessPool
https://bugs.webkit.org/show_bug.cgi?id=129268

Reviewed by Dan Bernstein.

Stage this rename by adding back WKProcessClass and WKProcessClassConfiguration as subclasses of the renamed classes.

  • Shared/Cocoa/APIObject.mm:

(API::Object::newObject):

  • UIProcess/API/Cocoa/WKProcessClass.h:
  • UIProcess/API/Cocoa/WKProcessClass.mm:
  • UIProcess/API/Cocoa/WKProcessClassConfiguration.h:
  • UIProcess/API/Cocoa/WKProcessClassConfiguration.mm:
  • UIProcess/API/Cocoa/WKProcessClassConfigurationPrivate.h:
  • UIProcess/API/Cocoa/WKProcessClassPrivate.h:
  • UIProcess/API/Cocoa/WKProcessPool.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKProcessClass.h.
  • UIProcess/API/Cocoa/WKProcessPool.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKProcessClass.mm.

(-[WKProcessPool init]):
(-[WKProcessPool initWithConfiguration:]):
(-[WKProcessPool dealloc]):
(-[WKProcessPool description]):
(-[WKProcessPool configuration]):
(-[WKProcessPool API::]):
(-[WKProcessPool _setAllowsSpecificHTTPSCertificate:forHost:]):

  • UIProcess/API/Cocoa/WKProcessPoolConfiguration.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKProcessClassConfiguration.h.
  • UIProcess/API/Cocoa/WKProcessPoolConfiguration.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKProcessClassConfiguration.mm.

(-[WKProcessPoolConfiguration _injectedBundleURL]):
(-[WKProcessPoolConfiguration _setInjectedBundleURL:]):
(-[WKProcessPoolConfiguration description]):
(-[WKProcessPoolConfiguration copyWithZone:]):

  • UIProcess/API/Cocoa/WKProcessPoolConfigurationPrivate.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKProcessClassConfigurationPrivate.h.
  • UIProcess/API/Cocoa/WKProcessPoolInternal.h: Renamed from Source/WebKit2/UIProcess/API/Cocoa/WKProcessClassInternal.h.

(WebKit::wrapper):

  • UIProcess/API/Cocoa/WKProcessPoolPrivate.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKProcessClassPrivate.h.
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):

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

(-[WKWebViewConfiguration description]):
(-[WKWebViewConfiguration copyWithZone:]):
(-[WKWebViewConfiguration processPool]):
(-[WKWebViewConfiguration setProcessPool:]):

  • UIProcess/API/Cocoa/WKWebViewConfigurationToBeRemoved.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKProcessClassPrivate.h.

(-[WKWebViewConfiguration setProcessClass:]):
(-[WKWebViewConfiguration processClass]):

  • UIProcess/API/mac/WKView.mm:
  • UIProcess/ios/WKContentView.mm:

(-[WKContentView _decidePolicyForGeolocationRequestFromOrigin:frame:request:]):

  • WebKit2.xcodeproj/project.pbxproj:
1:00 PM Changeset in webkit [164602] by thiago.lacerda@openbossa.org
  • 28 edits in trunk

[WebRTC] Validating RTCConfiguration according to the spec
https://bugs.webkit.org/show_bug.cgi?id=129182

Reviewed by Eric Carlson.

Spec states that:

  • iceServers should not be an empty list
  • the entry in the configuration dictionary is "urls", instead of "url"
  • urls can be either a list or a string

Fixing all that in RTCConfiguration validation when creating a RTCPeerConnection

Source/WebCore:

Existing tests were updated.

  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::appendIceServer): Added.
(WebCore::processIceServer): Added.
(WebCore::RTCPeerConnection::parseConfiguration):

LayoutTests:

  • fast/mediastream/RTCPeerConnection-AddRemoveStream.html:
  • fast/mediastream/RTCPeerConnection-createAnswer.html:
  • fast/mediastream/RTCPeerConnection-createOffer.html:
  • fast/mediastream/RTCPeerConnection-datachannel.html:
  • fast/mediastream/RTCPeerConnection-dtmf.html:
  • fast/mediastream/RTCPeerConnection-events.html:
  • fast/mediastream/RTCPeerConnection-expected.txt:
  • fast/mediastream/RTCPeerConnection-have-local-answer.html:
  • fast/mediastream/RTCPeerConnection-have-local-offer.html:
  • fast/mediastream/RTCPeerConnection-have-local-pranswer.html:
  • fast/mediastream/RTCPeerConnection-have-remote-offer.html:
  • fast/mediastream/RTCPeerConnection-have-remote-pranswer.html:
  • fast/mediastream/RTCPeerConnection-ice-expected.txt:
  • fast/mediastream/RTCPeerConnection-ice.html:
  • fast/mediastream/RTCPeerConnection-localDescription.html:
  • fast/mediastream/RTCPeerConnection-onnegotiationneeded.html:
  • fast/mediastream/RTCPeerConnection-remoteDescription.html:
  • fast/mediastream/RTCPeerConnection-stable.html:
  • fast/mediastream/RTCPeerConnection-state-expected.txt:
  • fast/mediastream/RTCPeerConnection-state.html:
  • fast/mediastream/RTCPeerConnection-stats-expected.txt:
  • fast/mediastream/RTCPeerConnection-stats.html:
  • fast/mediastream/RTCPeerConnection-statsSelector-expected.txt:
  • fast/mediastream/RTCPeerConnection-statsSelector.html:
  • fast/mediastream/RTCPeerConnection.html:
12:53 PM Changeset in webkit [164601] by Simon Fraser
  • 2 edits
    10 moves in trunk/Source/WebKit2

Move non-API files out of WebKit2/UIProcess/API/mac
https://bugs.webkit.org/show_bug.cgi?id=129267

Reviewed by Anders Carlsson.

  • UIProcess/mac/FindIndicatorWindow.h: Renamed from Source/WebKit2/UIProcess/API/mac/FindIndicatorWindow.h.
  • UIProcess/mac/FindIndicatorWindow.mm: Renamed from Source/WebKit2/UIProcess/API/mac/FindIndicatorWindow.mm.
  • UIProcess/mac/PDFViewController.h: Renamed from Source/WebKit2/UIProcess/API/mac/PDFViewController.h.
  • UIProcess/mac/PDFViewController.mm: Renamed from Source/WebKit2/UIProcess/API/mac/PDFViewController.mm.
  • UIProcess/mac/WKPrintingView.h: Renamed from Source/WebKit2/UIProcess/API/mac/WKPrintingView.h.
  • UIProcess/mac/WKPrintingView.mm: Renamed from Source/WebKit2/UIProcess/API/mac/WKPrintingView.mm.
  • UIProcess/mac/WKTextInputWindowController.h: Renamed from Source/WebKit2/UIProcess/API/mac/WKTextInputWindowController.h.
  • UIProcess/mac/WKTextInputWindowController.mm: Renamed from Source/WebKit2/UIProcess/API/mac/WKTextInputWindowController.mm.
  • WebKit2.xcodeproj/project.pbxproj:
12:51 PM Changeset in webkit [164600] by stavila@adobe.com
  • 3 edits
    2 adds in trunk

[CSS Regions] Relative positioned elements overflowing the region do not get painted into the next tile
https://bugs.webkit.org/show_bug.cgi?id=129254

Reviewed by Antti Koivisto.

Source/WebCore:

The painting of the region's layer should not be aborted so early if the region's fragment shouldn't be painted
because that would prevent all the layer's children from being painted.

Another problem this patch addresses is that clipping should also be performed when the clip rect is empty,
which is what happens when painting in a tile in which the flowed element would normally be painted
if it wasn't clipped by the region.

Test: fast/regions/content-relative-next-tile.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintFlowThreadIfRegionForFragments):

LayoutTests:

Added test for the painting across tiles of relative positioned elements flowed into regions.

  • fast/regions/content-relative-next-tile-expected.html: Added.
  • fast/regions/content-relative-next-tile.html: Added.
12:31 PM Changeset in webkit [164599] by Simon Fraser
  • 2 edits
    16 moves in trunk/Source/WebKit2

Move non-API files in the API/ios directory out to UIProcess/ios
https://bugs.webkit.org/show_bug.cgi?id=129264

Reviewed by Anders Carlsson.

  • UIProcess/ios/PageClientImplIOS.h: Renamed from Source/WebKit2/UIProcess/API/ios/PageClientImplIOS.h.
  • UIProcess/ios/PageClientImplIOS.mm: Renamed from Source/WebKit2/UIProcess/API/ios/PageClientImplIOS.mm.
  • UIProcess/ios/WKActionSheet.h: Renamed from Source/WebKit2/UIProcess/API/ios/WKActionSheet.h.
  • UIProcess/ios/WKActionSheet.mm: Renamed from Source/WebKit2/UIProcess/API/ios/WKActionSheet.mm.
  • UIProcess/ios/WKContentViewInternal.h: Renamed from Source/WebKit2/UIProcess/API/ios/WKContentViewInternal.h.
  • UIProcess/ios/WKGeolocationProviderIOS.h: Renamed from Source/WebKit2/UIProcess/API/ios/WKGeolocationProviderIOS.h.
  • UIProcess/ios/WKGeolocationProviderIOS.mm: Renamed from Source/WebKit2/UIProcess/API/ios/WKGeolocationProviderIOS.mm.
  • UIProcess/ios/WKInteractionView.h: Renamed from Source/WebKit2/UIProcess/API/ios/WKInteractionView.h.
  • UIProcess/ios/WKInteractionView.mm: Renamed from Source/WebKit2/UIProcess/API/ios/WKInteractionView.mm.
  • UIProcess/ios/WKScrollView.h: Renamed from Source/WebKit2/UIProcess/API/ios/WKScrollView.h.
  • UIProcess/ios/WKScrollView.mm: Renamed from Source/WebKit2/UIProcess/API/ios/WKScrollView.mm.
  • WebKit2.xcodeproj/project.pbxproj:
12:18 PM Changeset in webkit [164598] by Simon Fraser
  • 3 edits in trunk/Source/WebKit2

Rename PageClientImplIOS::m_view to m_contentView
https://bugs.webkit.org/show_bug.cgi?id=129124

Reviewed by Benjamin Poulain.

Simple rename of m_view to m_contentView in preparation for
also holding onto the WKView.

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

(WebKit::PageClientImpl::PageClientImpl):
(WebKit::PageClientImpl::createDrawingAreaProxy):
(WebKit::PageClientImpl::viewSize):
(WebKit::PageClientImpl::isViewInWindow):
(WebKit::PageClientImpl::processDidExit):
(WebKit::PageClientImpl::didRelaunchProcess):
(WebKit::PageClientImpl::decidePolicyForGeolocationPermissionRequest):
(WebKit::PageClientImpl::didCommitLoadForMainFrame):
(WebKit::PageClientImpl::interpretKeyEvent):
(WebKit::PageClientImpl::positionInformationDidChange):
(WebKit::PageClientImpl::selectionDidChange):
(WebKit::PageClientImpl::screenToRootView):
(WebKit::PageClientImpl::rootViewToScreen):
(WebKit::PageClientImpl::setAcceleratedCompositingRootLayer):
(WebKit::PageClientImpl::takeViewSnapshot):
(WebKit::PageClientImpl::didGetTapHighlightGeometries):
(WebKit::PageClientImpl::didCommitLayerTree):
(WebKit::PageClientImpl::startAssistingNode):
(WebKit::PageClientImpl::stopAssistingNode):

11:43 AM Changeset in webkit [164597] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

REGRESSION(r164438): [GTK] Tests /webkit2/WebKitWebView/tls-errors-policy and /webkit2/WebKitWebContext/uri-scheme fail
https://bugs.webkit.org/show_bug.cgi?id=129252

Patch by Enrique Ocaña González <eocanha@igalia.com> on 2014-02-24
Reviewed by Carlos Garcia Campos.

  • UIProcess/API/gtk/WebKitPrivate.cpp: Manage error values generated by the user application and not present in WebCore

(toWebKitError):
(toWebCoreError):

11:23 AM Changeset in webkit [164596] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/gtk

REGRESSION(r164438): [GTK] Tests /WebKitGtk/testcontextmenu, /WebKitGtk/testmimehandling, /WebKitGtk/testloading assert in Debug build
https://bugs.webkit.org/show_bug.cgi?id=129256

Patch by Enrique Ocaña González <eocanha@igalia.com> on 2014-02-24
Reviewed by Carlos Garcia Campos.

  • WebCoreSupport/FrameLoaderClientGtk.cpp: Manage error values not present in WebCore

(WebKit::toWebKitNetworkError):

11:13 AM Changeset in webkit [164595] by mitz@apple.com
  • 2 edits in trunk/Tools

iOS build fix after r164577.

  • DumpRenderTree/ios/AccessibilityUIElementIOS.mm:

(AccessibilityUIElement::selectedChildrenCount):
(AccessibilityUIElement::selectedChildAtIndex):

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

Get rid of the unused 'immediate' parameters from repaint related functions
https://bugs.webkit.org/show_bug.cgi?id=129111

Patch by Renata Hodovan <rhodovan.u-szeged@partner.samsung.com> on 2014-02-24
Reviewed by Simon Fraser.

Removing the 'immediate' parameters from repaint related functions - accoring
to the FIXME in RenderView::repaintViewRectangle() - since they have no effect.

Source/WebCore:

No new tests are necessary because there is no behavior change

  • dom/Element.cpp:

(WebCore::Element::setActive):

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

(WebCore::Chrome::invalidateRootView):
(WebCore::Chrome::invalidateContentsAndRootView):
(WebCore::Chrome::invalidateContentsForSlowScroll):

  • page/Chrome.h:
  • page/ChromeClient.h:
  • page/Frame.cpp:

(WebCore::Frame::tiledBackingStorePaintEnd):

  • page/FrameView.cpp:

(WebCore::FrameView::invalidateRect):
(WebCore::FrameView::scrollContentsFastPath):
(WebCore::FrameView::repaintContentRectangle):
(WebCore::FrameView::shouldUpdate):

  • page/FrameView.h:
  • platform/HostWindow.h:
  • platform/ScrollView.cpp:

(WebCore::ScrollView::scrollContents):
(WebCore::ScrollView::scrollContentsSlowPath):
(WebCore::ScrollView::repaintContentRectangle):
(WebCore::ScrollView::updateOverhangAreas):
(WebCore::ScrollView::addPanScrollIcon):
(WebCore::ScrollView::removePanScrollIcon):
(WebCore::ScrollView::platformRepaintContentRectangle):

  • platform/ScrollView.h:
  • rendering/RenderBox.cpp:

(WebCore::RenderBox::repaintLayerRectsForImage):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::repaintRectangleInRegions):

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

(WebCore::RenderLayer::setFilterBackendNeedsRepaintingInRect):

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

(WebCore::RenderMultiColumnSet::repaintFlowThreadContent):

  • rendering/RenderMultiColumnSet.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::repaintUsingContainer):
(WebCore::RenderObject::repaint):
(WebCore::RenderObject::repaintRectangle):
(WebCore::RenderObject::repaintSlowRepaintObject):

  • rendering/RenderObject.h:
  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::repaintFlowThreadContent):
(WebCore::RenderRegion::repaintFlowThreadContentRectangle):

  • rendering/RenderRegion.h:
  • rendering/RenderView.cpp:

(WebCore::RenderView::repaintViewRectangle):
(WebCore::RenderView::flushAccumulatedRepaintRegion):
(WebCore::RenderView::repaintRectangleInViewAndCompositedLayers):

  • rendering/RenderView.h:
  • svg/graphics/SVGImageChromeClient.h:

Source/WebKit/efl:

  • WebCoreSupport/ChromeClientEfl.cpp:

(WebCore::ChromeClientEfl::invalidateContents):
(WebCore::ChromeClientEfl::invalidateRootView):
(WebCore::ChromeClientEfl::invalidateContentsAndRootView):
(WebCore::ChromeClientEfl::invalidateContentsForSlowScroll):

  • WebCoreSupport/ChromeClientEfl.h:

Source/WebKit/gtk:

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::invalidateRootView):
(WebKit::ChromeClient::invalidateContentsAndRootView):
(WebKit::ChromeClient::invalidateContentsForSlowScroll):

  • WebCoreSupport/ChromeClientGtk.h:

Source/WebKit/win:

  • WebCoreSupport/WebChromeClient.cpp:

(WebChromeClient::invalidateRootView):
(WebChromeClient::invalidateContentsAndRootView):
(WebChromeClient::invalidateContentsForSlowScroll):

  • WebCoreSupport/WebChromeClient.h:

Source/WebKit/wince:

  • WebCoreSupport/ChromeClientWinCE.cpp:

(WebKit::ChromeClientWinCE::invalidateRootView):
(WebKit::ChromeClientWinCE::invalidateContentsAndRootView):
(WebKit::ChromeClientWinCE::invalidateContentsForSlowScroll):
(WebKit::ChromeClientWinCE::scroll):

  • WebCoreSupport/ChromeClientWinCE.h:
10:49 AM Changeset in webkit [164593] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/16059894> Update AppleConnect sandbox profile for XPC process names.

Patch by Ivan Krstić, reviewed and landed by me.

  • Resources/PlugInSandboxProfiles/com.apple.ist.ds.appleconnect.webplugin.sb:
10:34 AM Changeset in webkit [164592] by krit@webkit.org
  • 2 edits
    6 moves
    30 adds
    20 deletes in trunk/LayoutTests

Transform more clip-path pixel tests to reference tests
https://bugs.webkit.org/show_bug.cgi?id=129230

Reviewed by Andreas Kling.

  • svg/clip-path/clip-path-content-use-007-expected.svg: Added.
  • svg/clip-path/clip-path-content-use-007.svg: Added.
  • svg/clip-path/clip-path-css-transform-003-expected.svg: Added.
  • svg/clip-path/clip-path-css-transform-003.svg: Added.
  • svg/clip-path/clip-path-css-transform-004-expected.svg: Added.
  • svg/clip-path/clip-path-css-transform-004.svg: Added.
  • svg/clip-path/clip-path-document-change-assert-expected.txt: Renamed from LayoutTests/svg/custom/clip-path-document-change-assert-expected.txt.
  • svg/clip-path/clip-path-document-change-assert.html: Renamed from LayoutTests/svg/custom/clip-path-document-change-assert.html.
  • svg/clip-path/clip-path-dom-child-changes-expected.svg: Added.
  • svg/clip-path/clip-path-dom-child-changes.svg: Added.
  • svg/clip-path/clip-path-dom-clippathunits-expected.svg: Added.
  • svg/clip-path/clip-path-dom-clippathunits.svg: Added.
  • svg/clip-path/clip-path-dom-href-expected.svg: Added.
  • svg/clip-path/clip-path-dom-href.svg: Added.
  • svg/clip-path/clip-path-dom-id-expected.svg: Added.
  • svg/clip-path/clip-path-dom-id.svg: Added.
  • svg/clip-path/clip-path-negative-scale-expected.svg: Added.
  • svg/clip-path/clip-path-negative-scale.svg: Added.
  • svg/clip-path/clip-path-no-content-004-expected.svg: Added.
  • svg/clip-path/clip-path-no-content-004.svg: Added.
  • svg/clip-path/clip-path-on-marker-001-expected.svg: Added.
  • svg/clip-path/clip-path-on-marker-001.svg: Added.
  • svg/clip-path/clip-path-on-marker-002-expected.svg: Added.
  • svg/clip-path/clip-path-on-marker-002.svg: Added.
  • svg/clip-path/clip-path-on-marker-003-expected.svg: Added.
  • svg/clip-path/clip-path-on-marker-003.svg: Added.
  • svg/clip-path/clip-path-recursion-001-expected.svg: Renamed from LayoutTests/svg/custom/circular-clip-path-references-crash-expected.svg.
  • svg/clip-path/clip-path-recursion-001.svg: Renamed from LayoutTests/svg/custom/circular-clip-path-references-crash.svg.
  • svg/clip-path/clip-path-recursion-002-expected.svg: Added.
  • svg/clip-path/clip-path-recursion-002.svg: Added.
  • svg/clip-path/clip-path-shape-stroke-expected.svg:
  • svg/clip-path/clip-path-with-transform-expected.svg: Added.
  • svg/clip-path/clip-path-with-transform.svg: Added.
  • svg/clip-path/mask-nested-clip-path-010-expected.svg: Renamed from LayoutTests/svg/custom/clamped-masking-clipping-expected.svg.
  • svg/clip-path/mask-nested-clip-path-010.svg: Renamed from LayoutTests/svg/custom/clamped-masking-clipping.svg.
  • svg/custom/clip-mask-negative-scale-expected.txt: Removed.
  • svg/custom/clip-mask-negative-scale.svg: Removed.
  • svg/custom/clip-path-child-changes-expected.txt: Removed.
  • svg/custom/clip-path-child-changes.svg: Removed.
  • svg/custom/clip-path-href-changes-expected.txt: Removed.
  • svg/custom/clip-path-href-changes.svg: Removed.
  • svg/custom/clip-path-id-changes-expected.txt: Removed.
  • svg/custom/clip-path-id-changes.svg: Removed.
  • svg/custom/clip-path-referencing-use.svg: Removed.
  • svg/custom/clip-path-referencing-use2.svg: Removed.
  • svg/custom/clip-path-units-changes-expected.txt: Removed.
  • svg/custom/clip-path-units-changes.svg: Removed.
  • svg/custom/clip-path-with-css-transform-1-expected.txt: Removed.
  • svg/custom/clip-path-with-css-transform-1.svg: Removed.
  • svg/custom/clip-path-with-css-transform-2-expected.txt: Removed.
  • svg/custom/clip-path-with-css-transform-2.svg: Removed.
  • svg/custom/clip-path-with-transform-expected.txt: Removed.
  • svg/custom/clip-path-with-transform.svg: Removed.
  • svg/custom/empty-clip-path.svg: Removed.
  • svg/custom/recursive-clippath.svg: Removed.
  • svg/masking/mask-negative-scale.svg: Added.
  • svg/masking/mast-negative-scale-expected.svg: Added.
10:32 AM Changeset in webkit [164591] by krit@webkit.org
  • 1 edit
    36 deletes in trunk/LayoutTests

Transform more clip-path pixel tests to reference tests
https://bugs.webkit.org/show_bug.cgi?id=129230

Reviewed by Andreas Kling.

Remove unnecessary pixel test results.

  • platform/efl/svg/custom/clip-mask-negative-scale-expected.png: Removed.
  • platform/gtk/svg/custom/clip-mask-negative-scale-expected.png: Removed.
  • platform/gtk/svg/custom/clip-mask-negative-scale-expected.txt: Removed.
  • platform/gtk/svg/custom/clip-path-child-changes-expected.png: Removed.
  • platform/gtk/svg/custom/clip-path-href-changes-expected.png: Removed.
  • platform/gtk/svg/custom/clip-path-id-changes-expected.png: Removed.
  • platform/gtk/svg/custom/clip-path-referencing-use-expected.png: Removed.
  • platform/gtk/svg/custom/clip-path-referencing-use-expected.txt: Removed.
  • platform/gtk/svg/custom/clip-path-referencing-use2-expected.png: Removed.
  • platform/gtk/svg/custom/clip-path-referencing-use2-expected.txt: Removed.
  • platform/gtk/svg/custom/clip-path-units-changes-expected.png: Removed.
  • platform/gtk/svg/custom/clip-path-with-css-transform-1-expected.png: Removed.
  • platform/gtk/svg/custom/clip-path-with-css-transform-2-expected.png: Removed.
  • platform/gtk/svg/custom/clip-path-with-transform-expected.png: Removed.
  • platform/gtk/svg/custom/empty-clip-path-expected.png: Removed.
  • platform/gtk/svg/custom/empty-clip-path-expected.txt: Removed.
  • platform/gtk/svg/custom/recursive-clippath-expected.png: Removed.
  • platform/gtk/svg/custom/recursive-clippath-expected.txt: Removed.
  • platform/mac/svg/custom/clip-mask-negative-scale-expected.png: Removed.
  • platform/mac/svg/custom/clip-path-child-changes-expected.png: Removed.
  • platform/mac/svg/custom/clip-path-display-none-child-expected.png: Removed.
  • platform/mac/svg/custom/clip-path-display-none-child-expected.txt: Removed.
  • platform/mac/svg/custom/clip-path-href-changes-expected.png: Removed.
  • platform/mac/svg/custom/clip-path-id-changes-expected.png: Removed.
  • platform/mac/svg/custom/clip-path-referencing-use-expected.png: Removed.
  • platform/mac/svg/custom/clip-path-referencing-use-expected.txt: Removed.
  • platform/mac/svg/custom/clip-path-referencing-use2-expected.png: Removed.
  • platform/mac/svg/custom/clip-path-referencing-use2-expected.txt: Removed.
  • platform/mac/svg/custom/clip-path-units-changes-expected.png: Removed.
  • platform/mac/svg/custom/clip-path-with-css-transform-1-expected.png: Removed.
  • platform/mac/svg/custom/clip-path-with-css-transform-2-expected.png: Removed.
  • platform/mac/svg/custom/clip-path-with-transform-expected.png: Removed.
  • platform/mac/svg/custom/empty-clip-path-expected.png: Removed.
  • platform/mac/svg/custom/empty-clip-path-expected.txt: Removed.
  • platform/mac/svg/custom/recursive-clippath-expected.png: Removed.
  • platform/mac/svg/custom/recursive-clippath-expected.txt: Removed.
10:15 AM Changeset in webkit [164590] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/WTF

Turn GenGC on for 32-bit systems
https://bugs.webkit.org/show_bug.cgi?id=128824

Reviewed by Geoffrey Garen.

  • wtf/Platform.h:
9:07 AM Changeset in webkit [164589] by ddkilzer@apple.com
  • 2 edits in trunk/Tools

[ASan] Remove methods from ignore list that no longer cause crashes
<http://webkit.org/b/129257>

Reviewed by Anders Carlsson.

  • asan/webkit-asan-ignore.txt: Remove old methods.
9:05 AM Changeset in webkit [164588] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebInspectorUI

Web Inspector: Remove single quote characters from Web Inspector JavaScript files
https://bugs.webkit.org/show_bug.cgi?id=129253

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2014-02-24
Reviewed by Timothy Hatcher.

  • UserInterface/Base/Main.js:

(WebInspector.openURL):

  • UserInterface/Views/CookieStorageContentView.js:

(WebInspector.cookieDomainMatchesResourceDomain):

  • UserInterface/Views/DOMTreeElement.js:

(WebInspector.DOMTreeElement.prototype._insertInLastAttributePosition):
(WebInspector.DOMTreeElement.prototype._startEditingTagName.editingComitted):
(WebInspector.DOMTreeElement.prototype._startEditingTagName.editingCancelled):
(WebInspector.DOMTreeElement.prototype._startEditingTagName):

  • UserInterface/Views/DOMTreeOutline.js:

(WebInspector.DOMTreeOutline.prototype._ondragover):

  • UserInterface/Views/DataGrid.js:

(WebInspector.DataGrid.prototype.addPlaceholderNode):

7:52 AM Changeset in webkit [164587] by commit-queue@webkit.org
  • 12 edits in trunk/Source

Code cleanup: remove leftover ENABLE(WORKERS) macros and support.
https://bugs.webkit.org/show_bug.cgi?id=129255

Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2014-02-24
Reviewed by Csaba Osztrogonác.

Source/JavaScriptCore:

ENABLE_WORKERS macro was removed in r159679.
Support is now also removed from xcconfig files.

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

ENABLE_WORKERS macro was removed in r159679, but r161589 added back some occurrences.
Support is now also removed from xcconfig files.

No new tests needed.

  • Configurations/FeatureDefines.xcconfig:
  • platform/ThreadGlobalData.cpp:
  • platform/ThreadGlobalData.h:
  • platform/Timer.h:

(WebCore::TimerBase::isActive):

  • platform/ios/wak/WebCoreThread.mm:

(RunWebThread):
(StartWebThread):

Source/WebKit/mac:

ENABLE_WORKERS macro was removed in r159679.
Support is now also removed from xcconfig files.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

ENABLE_WORKERS macro was removed in r159679.
Support is now also removed from xcconfig files.

  • Configurations/FeatureDefines.xcconfig:
7:47 AM Changeset in webkit [164586] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[CMake] Get rid of "FIXME: The Blackberry port ..." from WebCore/CmakeLists.txt
https://bugs.webkit.org/show_bug.cgi?id=129152

Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-02-24
Reviewed by Gyuyoung Kim.

  • CMakeLists.txt:
7:45 AM Changeset in webkit [164585] by commit-queue@webkit.org
  • 9 edits
    1 add
    1 delete in trunk/Tools

Extract common parts from jhbuildrc files.
https://bugs.webkit.org/show_bug.cgi?id=125986

Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-02-24
Reviewed by Csaba Osztrogonác.

Co-authored with Peter Szanka <h868064@stud.u-szeged.hu>.

  • Scripts/run-gtk-tests:

(TestRunner._setup_testing_environment):

  • efl/common.py: Removed.
  • efl/jhbuildrc:
  • gtk/check-gdom-symbols:
  • gtk/common.py:

(binary_build_path):
(get_build_path):

  • gtk/find-make-dist-errors:

(get_missing_headers):

  • gtk/generate-gtkdoc:

(get_webkit2_options):
(get_webkit1_options.src_path):
(get_webkit1_options):
(get_webkitdom_options.src_path):
(get_webkitdom_options):

  • gtk/generate-inspector-gresource-manifest.py:
  • gtk/jhbuildrc:
  • jhbuild/jhbuildrc_common.py: Added.

(script_path):
(top_level_path):
(init):

7:42 AM WebKitGTK/2.4.x edited by desrt@desrt.ca
add a patch for backport (diff)
7:24 AM Changeset in webkit [164584] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[GTK] Wrong active context when destroying GL objects.
https://bugs.webkit.org/show_bug.cgi?id=129244

Patch by Iago Toral Quiroga <itoral@igalia.com> on 2014-02-24
Reviewed by Martin Robinson.

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:

(WebKit::LayerTreeHostGtk::invalidate): make context current before destroying GL objects.

7:06 AM Changeset in webkit [164583] by berto@igalia.com
  • 2 edits in trunk/Source/WebKit2

Remove unused error.h header.
https://bugs.webkit.org/show_bug.cgi?id=126774

Patch by Koop Mast <kwm@FreeBSD.org> on 2014-02-24
Reviewed by Anders Carlsson.

This header doesn't exists on FreeBSD. According to
https://www.gnu.org/software/gnulib/manual/html_node/error_002eh.html
the function that this header implements are not present in the file.
So there isn't any need for this header.

  • NetworkProcess/unix/NetworkProcessMainUnix.cpp:
7:03 AM WebKitGTK/2.4.x edited by berto@igalia.com
(diff)
4:19 AM Changeset in webkit [164582] by Manuel Rego Casasnovas
  • 2 edits in trunk/Tools

Unreviewed. Fix code indentation and spacing.

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2014-02-24

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

(SingleQuoteChecker.check):

3:24 AM Changeset in webkit [164581] by ddkilzer@apple.com
  • 8 edits in trunk/Source

Remove redundant setting in FeatureDefines.xcconfig

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
3:14 AM Changeset in webkit [164580] by ddkilzer@apple.com
  • 4 edits in trunk/Source/ThirdParty/ANGLE

ANGLE: Stop using unsafe strcpy method
<http://webkit.org/b/129237>
<rdar://problem/11077580>

Reviewed by Dean Jackson.

  • include/GLSLANG/ShaderLang.h:
  • Drive-by fix for header documentation.
  • src/compiler/translator/ShaderLang.cpp:

(ShGetInfoLog):
(ShGetObjectCode):

  • src/libGLESv2/Program.cpp:

(gl::InfoLog::append):

  • Switch to use strncpy(), and explicitly set NULL terminator at the end of the buffer.
2:02 AM Changeset in webkit [164579] by commit-queue@webkit.org
  • 5 edits
    9 adds in trunk

[CSS Blending] An element having -webkit-mix-blend-mode should only blend with the contents of the parent stacking context
https://bugs.webkit.org/show_bug.cgi?id=129154

Patch by Mihai Tica <mitica@adobe.com> on 2014-02-24
Reviewed by Dean Jackson.

Source/WebCore:

The blending operation of an element having -webkit-mix-blend-mode should be restricted to the parent stacking context.
This change isolates blending, preventing it from blending with other underlying elements besides the parent stacking context.

Tests: css3/compositing/blend-mode-isolated-group-1.html

css3/compositing/blend-mode-isolated-group-2.html
css3/compositing/blend-mode-isolated-group-3.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer): Initialize added members to false.
(WebCore::RenderLayer::updateBlendMode): Check if a blend mode was set or unset. If so, set the m_updateParentStackingContextShouldIsolateBlendingDirty to true.
(WebCore::RenderLayer::updateParentStackingContextShouldIsolateBlending): Traverse to the parent stacking context and update the
m_isolatesBlending member accordingly.

  • rendering/RenderLayer.h:
  • Add isolatesBlending() as a condition for creating a transparency layer in the paintsWithTransparency method.
  • Add m_updateParentStackingContextShouldIsolateBlendingDirty member.
  • Add m_isolatesBlending member and getter.
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::computeCompositingRequirements): Call updateParentStackingContextShouldIsolateBlending.

LayoutTests:

Test that isolation is performed for blending, in other words, an element having -webkit-mix-blend-mode is blending with the
contents of the parent stacking context, but not with any of the underlying content.

  • css3/compositing/blend-mode-isolated-group-1.html: Added.
  • css3/compositing/blend-mode-isolated-group-2.html: Added.
  • css3/compositing/blend-mode-isolated-group-3.html: Added.
  • platform/mac/css3/compositing/blend-mode-isolated-group-1-expected.png: Added.
  • platform/mac/css3/compositing/blend-mode-isolated-group-1-expected.txt: Added.
  • platform/mac/css3/compositing/blend-mode-isolated-group-2-expected.png: Added.
  • platform/mac/css3/compositing/blend-mode-isolated-group-2-expected.txt: Added.
  • platform/mac/css3/compositing/blend-mode-isolated-group-3-expected.png: Added.
  • platform/mac/css3/compositing/blend-mode-isolated-group-3-expected.txt: Added.
1:31 AM Changeset in webkit [164578] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebKit2

[GTK] Remove unneeded method webkitWebViewBaseRequestExitFullScreen
https://bugs.webkit.org/show_bug.cgi?id=129245

Reviewed by Sergio Villar Senin.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseKeyPressEvent): Call FullscreenManager::requestExitFullScreen() directly.

  • UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
1:31 AM Changeset in webkit [164577] by k.czech@samsung.com
  • 13 edits
    2 adds in trunk

[ATK] Wrong selected element at a given index in a list box.
https://bugs.webkit.org/show_bug.cgi?id=129039

Reviewed by Chris Fleizach.

Source/WebCore:

Test: accessibility/select-element-at-index.html

The selected element at a given index was wrong. One should be considered among the
all children of a list box, not only selected ones.

  • accessibility/atk/WebKitAccessibleInterfaceSelection.cpp:

(core):
(listObjectForSelection):
(optionFromList):
(optionFromSelection):
(webkitAccessibleSelectionRefSelection):

Tools:

Added missing implementation and proposed some new function for testing selection
in a list boxes.

  • DumpRenderTree/AccessibilityUIElement.cpp:

(setSelectedChildAtIndexCallback):
(removeSelectionAtIndexCallback):
(AccessibilityUIElement::getJSClass):

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:

(AccessibilityUIElement::selectedChildrenCount):
(AccessibilityUIElement::selectedChildAtIndex):
(AccessibilityUIElement::setSelectedChildAtIndex):
(AccessibilityUIElement::removeSelectionAtIndex):

  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::selectedChildrenCount):
(AccessibilityUIElement::selectedChildAtIndex):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:

(WTR::AccessibilityUIElement::setSelectedChildAtIndex):
(WTR::AccessibilityUIElement::removeSelectionAtIndex):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
  • WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::selectedChildAtIndex):
(WTR::AccessibilityUIElement::selectedChildrenCount):
(WTR::AccessibilityUIElement::setSelectedChildAtIndex):
(WTR::AccessibilityUIElement::removeSelectionAtIndex):

LayoutTests:

Proposed test that checks whether correct element at a given index is retrieved.
Also testing some other scenarios such as removing selection from rows, counting all
selected rows and setting selection.

  • accessibility/select-element-at-index-expected.txt: Added.
  • accessibility/select-element-at-index.html: Added.
  • platform/mac/TestExpectations: Skipping test in Mac, missing implementation.

Feb 23, 2014:

9:29 PM Changeset in webkit [164576] by mitz@apple.com
  • 6 edits in trunk/Source/WebKit2

<rdar://problem/16144508> [iOS] Some definitions of INSTALL_PATH don’t account for INSTALL_PATH_PREFIX
https://bugs.webkit.org/show_bug.cgi?id=129241

Reviewed by Mark Rowe.

  • Configurations/Base.xcconfig: Define INSTALL_PATH here in terms of INSTALL_PATH_ACTUAL.
  • Configurations/BaseLegacyProcess.xcconfig: Define only INSTALL_PATH_ACTUAL.
  • Configurations/BaseTarget.xcconfig: Simplify the definition of

NORMAL_WEBKIT2_FRAMEWORKS_DIR, now that it shouldn’t include SDKROOT for the Simulator.

  • Configurations/BaseXPCService.xcconfig: Define only INSTALL_PATH_ACTUAL.
  • Configurations/WebKit2.xcconfig: Ditto.
6:24 PM Changeset in webkit [164575] by Brent Fulgham
  • 11 edits in trunk/Source/ThirdParty/ANGLE

[WinCairo] Unreviewed build fix after r164565.

  • ANGLE.vcxproj/libEGL.vcxproj: Use correct path to files.
  • ANGLE.vcxproj/libGLESv2.vcxproj: Ditto.
  • ANGLE.vcxproj/libGLESv2.vcxproj.filters: Ditto.
  • ANGLE.vcxproj/preprocessor.vcxproj: Ditto.
  • ANGLE.vcxproj/translator_common.vcxproj: Ditto.
  • ANGLE.vcxproj/translator_common.vcxproj.filters: Ditto.
  • ANGLE.vcxproj/translator_glsl.vcxproj: Ditto.
  • ANGLE.vcxproj/translator_glsl.vcxproj.filters: Ditto.
  • ANGLE.vcxproj/translator_hlsl.vcxproj: Ditto.
  • ANGLE.vcxproj/translator_hlsl.vcxproj.filters: Ditto.
6:11 PM Changeset in webkit [164574] by dino@apple.com
  • 4 edits in trunk

[WebGL] Allow ANGLE to initialize unused varyings
https://bugs.webkit.org/show_bug.cgi?id=129240
<rdar://problem/15203342>

Reviewed by Sam Weinig.

Source/WebCore:

Covered by: conformance/glsl/misc/shaders-with-varyings.html

  • platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:

(WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE):
Add SH_INIT_VARYINGS_WITHOUT_STATIC_USE to compiler flags.

LayoutTests:

Unskip conformance/glsl/misc/shaders-with-varyings.html.

  • platform/mac/TestExpectations:
6:01 PM Changeset in webkit [164573] by weinig@apple.com
  • 8 edits in trunk/Source

Update FeatureDefines.xcconfig

Rubber-stamped by Anders Carlsson.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
5:59 PM Changeset in webkit [164572] by dino@apple.com
  • 4 edits in trunk/Source

Sort the project file with sort-Xcode-project-file.

Rubber-stamped by Sam Weinig.

Source/JavaScriptCore:

Source/WebCore:

  • WebCore.xcodeproj/project.pbxproj:
5:54 PM Changeset in webkit [164571] by weinig@apple.com
  • 3 edits in trunk/Source/WebKit2

[WebKit2] Add C-SPI to enable/disable telephone number detection
https://bugs.webkit.org/show_bug.cgi?id=129239

Reviewed by Dean Jackson.

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetTelephoneNumberParsingEnabled):
(WKPreferencesGetTelephoneNumberParsingEnabled):

  • UIProcess/API/C/WKPreferencesPrivate.h:
5:43 PM Changeset in webkit [164570] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

Fix incorrectly commented out code.

  • platform/TelephoneNumberDetector.h:
5:35 PM Changeset in webkit [164569] by weinig@apple.com
  • 3 edits
    2 adds in trunk/Source/WebCore

Extract platform specific parts of telephone number detection
https://bugs.webkit.org/show_bug.cgi?id=129238

Reviewed by Dean Jackson.

  • WebCore.xcodeproj/project.pbxproj:

Add new files.

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::linkifyPhoneNumbers):
(WebCore::HTMLTreeBuilder::processCharacterBufferForInBody):

  • platform/TelephoneNumberDetector.h: Added.
  • platform/cocoa/TelephoneNumberDetectorCocoa.cpp: Added.

(WebCore::TelephoneNumberDetector::phoneNumbersScanner):
(WebCore::TelephoneNumberDetector::isSupported):
(WebCore::TelephoneNumberDetector::find):
Move code to TelephoneNumberDetector.

5:23 PM Changeset in webkit [164568] by gyuyoung.kim@samsung.com
  • 11 edits in trunk/Source

Change a url parameter type with URL in NavigatorContentUtils
https://bugs.webkit.org/show_bug.cgi?id=129202

Reviewed by Sam Weinig.

It would be good if we use *URL* for url parameters instead of using String.

Merge from blink. https://src.chromium.org/viewvc/blink?view=rev&revision=165458.

Source/WebCore:

  • Modules/navigatorcontentutils/NavigatorContentUtils.cpp:

(WebCore::verifyCustomHandlerURL):
(WebCore::NavigatorContentUtils::registerProtocolHandler):
(WebCore::NavigatorContentUtils::isProtocolHandlerRegistered):
(WebCore::NavigatorContentUtils::unregisterProtocolHandler):

  • Modules/navigatorcontentutils/NavigatorContentUtilsClient.h:

Source/WebKit/efl:

  • WebCoreSupport/NavigatorContentUtilsClientEfl.cpp:

(WebCore::NavigatorContentUtilsClientEfl::registerProtocolHandler):
(WebCore::NavigatorContentUtilsClientEfl::isProtocolHandlerRegistered):
(WebCore::NavigatorContentUtilsClientEfl::unregisterProtocolHandler):

  • WebCoreSupport/NavigatorContentUtilsClientEfl.h:

Source/WebKit/gtk:

  • WebCoreSupport/NavigatorContentUtilsClientGtk.cpp:

(WebKit::NavigatorContentUtilsClient::registerProtocolHandler):

  • WebCoreSupport/NavigatorContentUtilsClientGtk.h:

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebNavigatorContentUtilsClient.h:

(WebKit::WebNavigatorContentUtilsClient::isProtocolHandlerRegistered):
(WebKit::WebNavigatorContentUtilsClient::unregisterProtocolHandler):

4:58 PM Changeset in webkit [164567] by dino@apple.com
  • 1 edit
    197 adds in trunk/Source/ThirdParty/ANGLE

Missing files from previous commit.

4:51 PM Changeset in webkit [164566] by mitz@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

Removed -Wno-format-y2k from WARNING_CFLAGS

Rubber-stamped by Sam Weinig.

  • Configurations/Base.xcconfig:
4:43 PM Changeset in webkit [164565] by dino@apple.com
  • 51 edits
    192 deletes in trunk/Source

Update ANGLE to 836bd2176e5607b14846cf1fbc5932dbc91318f4
https://bugs.webkit.org/show_bug.cgi?id=129232

Reviewed by Brent Fulgham.

Source/ThirdParty/ANGLE:

I also reapplied some of our changes from previous updates, including disabling the clang deprecation
warnings in some files, adding the Apple note about license and defining YY_NO_INPUT.

Huge list of source changes omitted.

Source/WebCore:

New files added, derived sources compiled directly, and generated
steps removed for both EFL and GTK, with much-needed help from
Sergio Correia.

  • CMakeLists.txt:
  • GNUMakefile.am:
3:43 PM Changeset in webkit [164564] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

Move RenderMathMLMenclose.h/cpp to the right place in the Xcode project and sort.

Rubber-stamped by Anders Carlsson.

  • WebCore.xcodeproj/project.pbxproj:
3:37 PM Changeset in webkit [164563] by weinig@apple.com
  • 14 edits in trunk/Source

Move telephone number detection behind its own ENABLE macro
https://bugs.webkit.org/show_bug.cgi?id=129236

Reviewed by Dean Jackson.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Add ENABLE_TELEPHONE_NUMBER_DETECTION.

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:

Add ENABLE_TELEPHONE_NUMBER_DETECTION.

  • dom/Document.cpp:

(WebCore::Document::Document):

  • dom/Document.h:
  • html/parser/HTMLConstructionSite.h:
  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processCharacterBufferForInBody):

  • html/parser/HTMLTreeBuilder.h:

Use ENABLE(TELEPHONE_NUMBER_DETECTION).

  • platform/mac/SoftLinking.h:

Remove PLATOFORM(IOS) from SOFT_LINK_PRIVATE_FRAMEWORK_OPTIONAL, it is not iOS specific.

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Add ENABLE_TELEPHONE_NUMBER_DETECTION.

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Add ENABLE_TELEPHONE_NUMBER_DETECTION.

2:44 PM Changeset in webkit [164562] by commit-queue@webkit.org
  • 6 edits in trunk

[GTK] Fix build after Web Inspector code reorganization (r164543)
https://bugs.webkit.org/show_bug.cgi?id=129231

Patch by Diego Pino García <Diego Pino Garcia> on 2014-02-23
Reviewed by Dean Jackson.

Source/WebInspectorUI:

  • GNUmakefile.am:

Modify paths to Web Inspector code.

Source/WebKit2:

  • PlatformGTK.cmake:

Modify paths to Web Inspector code.

Tools:

  • gtk/generate-inspector-gresource-manifest.py:

Modify paths to Web Inspector code.

1:43 PM Changeset in webkit [164561] by graouts@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: color picker sliders aren't laid out correctly
https://bugs.webkit.org/show_bug.cgi?id=129234

Reviewed by Joseph Pecoraro.

While it's unclear to me what happened, the "position" property for the color picker sliders
wasn't being computed as expected and used relative positioning. I assume this is related to
r164543 when the order of CSS files changed.

  • UserInterface/Views/Slider.css:

(.slider):

1:41 PM Changeset in webkit [164560] by Martin Robinson
  • 3 edits in trunk/Tools

[GTK] generate-gtkdoc should use argparse
https://bugs.webkit.org/show_bug.cgi?id=128418

Reviewed by Carlos Garcia Campos.

  • gtk/generate-gtkdoc: Get all arguments from argparse, pass then as parameters

to all functions, and guard the main routine with a name == main check.

1:39 PM Changeset in webkit [164559] by Martin Robinson
  • 2 edits in trunk/Tools

[GTK][CMake] Many plugin tests fail when running WebKit1 layout tests
https://bugs.webkit.org/show_bug.cgi?id=129191

Reviewed by Anders Carlsson.

  • DumpRenderTree/PlatformGTK.cmake: Properly specify the library build directory

for the GTK+ DumpRenderTree build. We could manually construct this path, but the
name of the directory is "lib" and not "libs". Instead we should use the CMake
variable specifically assigned to this task.

10:48 AM Changeset in webkit [164558] by fpizlo@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

Refine DFG+FTL inlining and compilation limits
https://bugs.webkit.org/show_bug.cgi?id=129212

Reviewed by Mark Hahnenberg.

Allow larger functions to be DFG-compiled. Institute a limit on FTL compilation,
and set that limit quite high. Institute a limit on inlining-into. The idea here is
that large functions tend to be autogenerated, and code generators like emscripten
appear to leave few inlining opportunities anyway. Also, we don't want the code
size explosion that we would risk if we allowed compilation of a large function and
then inlined a ton of stuff into it.

This is a 0.5% speed-up on Octane v2 and almost eliminates the typescript
regression. This is a 9% speed-up on AsmBench.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::noticeIncomingCall):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleInlining):

  • dfg/DFGCapabilities.h:

(JSC::DFG::isSmallEnoughToInlineCodeInto):

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLState.h:

(JSC::FTL::shouldShowDisassembly):

  • runtime/Options.h:
10:06 AM Changeset in webkit [164557] by ddkilzer@apple.com
  • 2 edits in trunk/Tools

[ASan] Add JSC::DFG::prepareOSREntry() to ignore list
<http://webkit.org/b/129209>

Reviewed by Geoffrey Garen.

  • asan/webkit-asan-ignore.txt: Add DFG::prepareOSREntry() to the

ignore list to make ASan builds usable again. Follow-up
investigation is tracked by <rdar://problem/16055903>.

8:25 AM Changeset in webkit [164556] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

Subpixel rendering: Fix bleed avoidance subpixel calculation.
https://bugs.webkit.org/show_bug.cgi?id=129225

Reviewed by Simon Fraser.

static_cast<LayoutUnit>(int value) only produces the desired result when subpixel is off.

Currently not testable.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::getBackgroundRoundedRect):
(WebCore::shrinkRectByOneDevicePixel):
(WebCore::RenderBoxModelObject::borderInnerRectAdjustedForBleedAvoidance):
(WebCore::RenderBoxModelObject::backgroundRoundedRectAdjustedForBleedAvoidance):
(WebCore::RenderBoxModelObject::paintFillLayerExtended):

  • rendering/RenderBoxModelObject.h:
8:22 AM Changeset in webkit [164555] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Subpixel rendering: Add devicepixel based computation to BorderEdge class.
https://bugs.webkit.org/show_bug.cgi?id=129224

Reviewed by Simon Fraser.

To produce correct width (and type) results, BorderEdge class needs to take device pixel ratio into account.

Currently not testable.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::BorderEdge::BorderEdge):
(WebCore::BorderEdge::obscuresBackgroundEdge):
(WebCore::BorderEdge::getDoubleBorderStripeWidths): this does not always produce the same
result as before, but the sum of inner and outer is not different.
(WebCore::BorderEdge::borderWidthInDevicePixel):
(WebCore::RenderBoxModelObject::getBorderEdgeInfo):

6:30 AM UpdatingANGLE edited by dino@apple.com
(diff)

Feb 22, 2014:

9:44 PM Changeset in webkit [164554] by mitz@apple.com
  • 25 edits in trunk/Source

REGRESSION (r164507): Crash beneath JSGlobalObjectInspectorController::reportAPIException at facebook.com, twitter.com, youtube.com
https://bugs.webkit.org/show_bug.cgi?id=129227

Reviewed by Eric Carlson.

Reverted r164507.

Source/JavaScriptCore:

  • API/JSBase.cpp:

(JSEvaluateScript):
(JSCheckScriptSyntax):

  • API/JSObjectRef.cpp:

(JSObjectMakeFunction):
(JSObjectMakeArray):
(JSObjectMakeDate):
(JSObjectMakeError):
(JSObjectMakeRegExp):
(JSObjectGetProperty):
(JSObjectSetProperty):
(JSObjectGetPropertyAtIndex):
(JSObjectSetPropertyAtIndex):
(JSObjectDeleteProperty):
(JSObjectCallAsFunction):
(JSObjectCallAsConstructor):

  • API/JSValue.mm:

(valueToArray):
(valueToDictionary):

  • API/JSValueRef.cpp:

(JSValueIsEqual):
(JSValueIsInstanceOfConstructor):
(JSValueCreateJSONString):
(JSValueToNumber):
(JSValueToStringCopy):
(JSValueToObject):

  • inspector/ConsoleMessage.cpp:

(Inspector::ConsoleMessage::ConsoleMessage):
(Inspector::ConsoleMessage::autogenerateMetadata):

  • inspector/ConsoleMessage.h:
  • inspector/JSGlobalObjectInspectorController.cpp:

(Inspector::JSGlobalObjectInspectorController::JSGlobalObjectInspectorController):

  • inspector/JSGlobalObjectInspectorController.h:
  • inspector/ScriptCallStack.cpp:
  • inspector/ScriptCallStack.h:
  • inspector/ScriptCallStackFactory.cpp:

(Inspector::createScriptCallStack):
(Inspector::createScriptCallStackForConsole):
(Inspector::createScriptCallStackFromException):

  • inspector/ScriptCallStackFactory.h:
  • inspector/agents/InspectorConsoleAgent.cpp:

(Inspector::InspectorConsoleAgent::enable):
(Inspector::InspectorConsoleAgent::addMessageToConsole):
(Inspector::InspectorConsoleAgent::count):

  • inspector/agents/JSGlobalObjectDebuggerAgent.cpp:

(Inspector::JSGlobalObjectDebuggerAgent::breakpointActionLog):

Source/WebCore:

  • bindings/js/JSDOMBinding.cpp:

(WebCore::reportException):

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::buildInitiatorObject):

  • inspector/PageDebuggerAgent.cpp:

(WebCore::PageDebuggerAgent::breakpointActionLog):

  • inspector/TimelineRecordFactory.cpp:

(WebCore::TimelineRecordFactory::createGenericRecord):

  • page/Console.cpp:

(WebCore::internalAddMessage):
(WebCore::Console::profile):
(WebCore::Console::profileEnd):
(WebCore::Console::timeEnd):

  • page/ContentSecurityPolicy.cpp:

(WebCore::gatherSecurityPolicyViolationEventData):
(WebCore::ContentSecurityPolicy::reportViolation):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::postMessage):

Source/WebInspectorUI:

  • UserInterface/Views/ConsoleMessageImpl.js:

(WebInspector.ConsoleMessageImpl.prototype._formatMessage):
(WebInspector.ConsoleMessageImpl.prototype._populateStackTraceTreeElement):

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

Remove some unreachable code (-Wunreachable-code)
https://bugs.webkit.org/show_bug.cgi?id=129220

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-02-22
Reviewed by Eric Carlson.

Source/JavaScriptCore:

  • API/tests/testapi.c:

(EvilExceptionObject_convertToType):

  • disassembler/udis86/udis86_decode.c:

(decode_operand):

Source/WebCore:

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processCharacterBuffer):
(WebCore::HTMLTreeBuilder::processEndTag):
The only tricky case. Here there was a break inside the
#if, but not the #else, and a break after the #endif.
Remove the break inside the #if, and always use the
break after the #endif.

  • Modules/indexeddb/IDBTransaction.cpp:

(WebCore::IDBTransaction::modeToString):

  • bindings/js/JSTrackCustom.cpp:

(WebCore::toJS):

  • bindings/js/JSWebGLRenderingContextCustom.cpp:

(WebCore::functionForUniform):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

  • page/CaptionUserPreferencesMediaAF.cpp:

(WebCore::CaptionUserPreferencesMediaAF::captionDisplayMode):

Source/WebKit2:

  • WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:

(WebKit::toAPI):

3:59 PM Changeset in webkit [164552] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

Letterpress effect disabled for synthetic italic
https://bugs.webkit.org/show_bug.cgi?id=129218
<rdar://problem/15997846>

Reviewed by Dan Bernstein.

There was no need to guard against synthetic italics and letterpress.

  • platform/graphics/mac/FontMac.mm:

(WebCore::Font::drawGlyphs): Remove !useLetterpressEffect from conditional.

3:56 PM Changeset in webkit [164551] by weinig@apple.com
  • 10 edits in trunk/Source

Expose phase and momentum phase as SPI on DOMWheelEvent
<rdar://problem/16110871>
https://bugs.webkit.org/show_bug.cgi?id=129184

Reviewed by Anders Carlsson.

../WebCore:

  • WebCore.exp.in:

Export core(DOMWheelEvent).

  • WebCore.xcodeproj/project.pbxproj:

Make DOMWheelEventInternal.h available in WebKit.

  • dom/Element.cpp:

(WebCore::Element::dispatchWheelEvent):

  • dom/WheelEvent.cpp:

(WebCore::determineDeltaMode):
(WebCore::WheelEvent::WheelEvent):
(WebCore::WheelEvent::initWheelEvent):
(WebCore::WheelEvent::initWebKitWheelEvent):
Move PlatformWheelEvent -> DOMWheelEvent conversion to DOMWheelEvent.

  • dom/WheelEvent.h:

(WebCore::WheelEvent::create):
(WebCore::WheelEvent::phase):
(WebCore::WheelEvent::momentumPhase):
Store phase and momentumPhase on the WheelEvent.

../WebKit/mac:

  • DOM/WebDOMOperations.mm:

(toNSEventPhase):
(-[DOMWheelEvent _phase]):
(-[DOMWheelEvent _momentumPhase]):

  • DOM/WebDOMOperationsPrivate.h:

Expose _phase and _momentumPhase as SPI.

  • MigrateHeaders.make:

Make DOMWheelEventInternal.h to WebKit.

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

[Cocoa] WKUIDelegate.h is a project header
https://bugs.webkit.org/show_bug.cgi?id=129215

Reviewed by Anders Carlsson.

  • WebKit2.xcodeproj/project.pbxproj: Make it a public header.
12:03 PM Changeset in webkit [164549] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, ARMv7 build fix.

  • assembler/ARMv7Assembler.h:
11:55 AM Changeset in webkit [164548] by fpizlo@apple.com
  • 8 edits in trunk/Source/JavaScriptCore

It should be possible for a LinkBuffer to outlive the MacroAssembler and still be useful
https://bugs.webkit.org/show_bug.cgi?id=124733

Reviewed by Oliver Hunt.

This also takes the opportunity to de-duplicate some branch compaction code.

  • assembler/ARM64Assembler.h:
  • assembler/ARMv7Assembler.h:

(JSC::ARMv7Assembler::buffer):

  • assembler/AssemblerBuffer.h:

(JSC::AssemblerData::AssemblerData):
(JSC::AssemblerBuffer::AssemblerBuffer):
(JSC::AssemblerBuffer::storage):
(JSC::AssemblerBuffer::grow):

  • assembler/LinkBuffer.h:

(JSC::LinkBuffer::LinkBuffer):
(JSC::LinkBuffer::executableOffsetFor):
(JSC::LinkBuffer::applyOffset):

  • assembler/MacroAssemblerARM64.h:

(JSC::MacroAssemblerARM64::link):

  • assembler/MacroAssemblerARMv7.h:
10:44 AM Changeset in webkit [164547] by mitz@apple.com
  • 11 edits in trunk/Source/WebKit2

<rdar://problem/12500358> [Cocoa] Development variants of XPC services should not be installed in WebKit2.framework/XPCServices
https://bugs.webkit.org/show_bug.cgi?id=129197

Reviewed by Sam Weinig.

  • Configurations/BaseXPCService.xcconfig: Made INSTALL_PATH vary based on

WK_XPC_SERVICE_VARIANT. For the Development variant, use an install path outside the
framework. Note that engineering builds using the build action continue to have the
Development variants copied into the framework by a script build phase.

  • Configurations/DatabaseService.Development.xcconfig: Set WK_XPC_SERVICE_VARIANT.
  • Configurations/DatabaseService.xcconfig: Ditto.
  • Configurations/NetworkService.Development.xcconfig: Ditto.
  • Configurations/NetworkService.xcconfig: Ditto.
  • Configurations/PluginService.32.xcconfig: Ditto.
  • Configurations/PluginService.64.xcconfig: Ditto.
  • Configurations/PluginService.Development.xcconfig: Ditto.
  • Configurations/WebContentService.Development.xcconfig: Ditto.
  • Configurations/WebContentService.xcconfig: Ditto.
10:10 AM Changeset in webkit [164546] by ap@apple.com
  • 11 edits in trunk

Rename JWK key_ops values from wrap/unwrap to wrapKey/unwrapKey
https://bugs.webkit.org/show_bug.cgi?id=129121

Reviewed by Sam Weinig.

Source/WebCore:

  • bindings/js/JSCryptoKeySerializationJWK.cpp:

(WebCore::JSCryptoKeySerializationJWK::reconcileUsages): Updated to newer names.
(WebCore::addUsagesToJSON): Ditto.
(WebCore::JSCryptoKeySerializationJWK::serialize): rsa-oaep-key-manipulation test
started ot fail, because RSA-OAEP with 2048 bit key and sha-1 can only encrypt
214 bytes, and the new longer names made JSON serialization slightly longer.
Compensate by not doing any indentation in JSON.

LayoutTests:

  • crypto/subtle/aes-export-key-expected.txt:
  • crypto/subtle/aes-export-key.html:
  • crypto/subtle/jwk-export-use-values-expected.txt:
  • crypto/subtle/jwk-export-use-values.html:
  • crypto/subtle/jwk-import-use-values-expected.txt:
  • crypto/subtle/jwk-import-use-values.html:
  • crypto/subtle/rsa-oaep-key-manipulation-expected.txt:
  • crypto/subtle/rsa-oaep-key-manipulation.html:
9:50 AM Changeset in webkit [164545] by timothy@apple.com
  • 1 edit in trunk/LayoutTests/http/tests/inspector-protocol/resources/InspectorTest.js

Fix tests.

9:48 AM Changeset in webkit [164544] by timothy@apple.com
  • 2 edits in trunk

Fix production builds and tests.

9:33 AM Changeset in webkit [164543] by timothy@apple.com
  • 5 edits
    416 moves
    5 adds
    7 deletes in trunk/Source/WebInspectorUI

Organize WebInspectorUI/UserInterface into sub-directories.

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

Rubber-stamped by Joseph Pecoraro.

  • Scripts/copy-user-interface-resources.sh: Fix Image URLs and Protocol paths.
  • UserInterface/Base: Added.
  • UserInterface/Controllers: Added.
  • UserInterface/Images: Added.
  • UserInterface/Main.html: Updated.
  • UserInterface/Models Added.
  • UserInterface/Protocol Added.
  • UserInterface/Views: Added.
9:31 AM Changeset in webkit [164542] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Revert r164434 since it actually broke ASan builds
<http://webkit.org/b/128871>

  • Configurations/WebKit.xcconfig: This caused -asan-blacklist to

be included twice on every compiler command, which caused clang
to error out.

8:06 AM Changeset in webkit [164541] by timothy@apple.com
  • 16 edits
    13 adds in trunk

Add inspection user interface for IndexedDB.

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

Reviewed by Joseph Pecoraro.

Source/WebInspectorUI:

  • Localizations/en.lproj/localizedStrings.js: Updated.
  • UserInterface/ContentView.js:

(WebInspector.ContentView):
(WebInspector.ContentView.isViewable):

  • UserInterface/IndexedDatabase.js: Added.

(WebInspector.IndexedDatabase):
(WebInspector.IndexedDatabase.prototype.get name):
(WebInspector.IndexedDatabase.prototype.get securityOrigin):
(WebInspector.IndexedDatabase.prototype.get host):
(WebInspector.IndexedDatabase.prototype.get version):
(WebInspector.IndexedDatabase.prototype.get objectStores):
(WebInspector.IndexedDatabase.prototype.saveIdentityToCookie):

  • UserInterface/IndexedDatabaseEntryDataGridNode.js: Added.

(WebInspector.IndexedDatabaseEntryDataGridNode):
(WebInspector.IndexedDatabaseEntryDataGridNode.prototype.get entry):
(WebInspector.IndexedDatabaseEntryDataGridNode.prototype.createCellContent):

  • UserInterface/IndexedDatabaseHostTreeElement.js: Added.

(WebInspector.IndexedDatabaseHostTreeElement):
(WebInspector.IndexedDatabaseHostTreeElement.prototype.get name):
(WebInspector.IndexedDatabaseHostTreeElement.prototype.get categoryName):

  • UserInterface/IndexedDatabaseObjectStore.js: Added.

(WebInspector.IndexedDatabaseObjectStore):
(WebInspector.IndexedDatabaseObjectStore.prototype.get name):
(WebInspector.IndexedDatabaseObjectStore.prototype.get keyPath):
(WebInspector.IndexedDatabaseObjectStore.prototype.get autoIncrement):
(WebInspector.IndexedDatabaseObjectStore.prototype.get parentDatabase):
(WebInspector.IndexedDatabaseObjectStore.prototype.get indexes):
(WebInspector.IndexedDatabaseObjectStore.prototype.saveIdentityToCookie):
(WebInspector.IndexedDatabaseObjectStore.prototype.establishRelationship):

  • UserInterface/IndexedDatabaseObjectStoreContentView.css: Added.

(.content-view.indexed-database-object-store > .data-grid):
(.content-view.indexed-database-object-store > .data-grid td .section .header):
(.content-view.indexed-database-object-store > .data-grid td .section .header::before):
(.content-view.indexed-database-object-store > .data-grid td .section .header .title):
(.content-view.indexed-database-object-store > .data-grid table.data):
(.content-view.indexed-database-object-store > .data-grid table.data tr:nth-child(even)):
(.content-view.indexed-database-object-store > .data-grid table.data tr:nth-child(odd)):
(.content-view.indexed-database-object-store > .data-grid table.data tr.filler):
(.content-view.indexed-database-object-store > .data-grid :focus tr.selected td .section .header::before):
(.content-view.indexed-database-object-store > .data-grid :focus tr.selected td .section.expanded .header::before):
(.content-view.indexed-database-object-store > .data-grid :focus tr.selected td .properties-tree li.parent::before):
(.content-view.indexed-database-object-store > .data-grid :focus tr.selected td .properties-tree li.parent.expanded::before):
(.content-view.indexed-database-object-store > .data-grid :focus tr.selected td .properties-tree li *):

  • UserInterface/IndexedDatabaseObjectStoreContentView.js: Added.

(WebInspector.IndexedDatabaseObjectStoreContentView.displayKeyPath):
(WebInspector.IndexedDatabaseObjectStoreContentView):
(WebInspector.IndexedDatabaseObjectStoreContentView.prototype.closed):
(WebInspector.IndexedDatabaseObjectStoreContentView.prototype.saveToCookie):
(WebInspector.IndexedDatabaseObjectStoreContentView.prototype.updateLayout):
(WebInspector.IndexedDatabaseObjectStoreContentView.prototype._reset):
(WebInspector.IndexedDatabaseObjectStoreContentView.prototype._dataGridScrolled):
(WebInspector.IndexedDatabaseObjectStoreContentView.prototype._fetchMoreData.processEntries):
(WebInspector.IndexedDatabaseObjectStoreContentView.prototype._fetchMoreData):

  • UserInterface/IndexedDatabaseObjectStoreIndex.js: Added.

(WebInspector.IndexedDatabaseObjectStoreIndex):
(WebInspector.IndexedDatabaseObjectStoreIndex.prototype.get name):
(WebInspector.IndexedDatabaseObjectStoreIndex.prototype.get keyPath):
(WebInspector.IndexedDatabaseObjectStoreIndex.prototype.get unique):
(WebInspector.IndexedDatabaseObjectStoreIndex.prototype.get multiEntry):
(WebInspector.IndexedDatabaseObjectStoreIndex.prototype.get parentObjectStore):
(WebInspector.IndexedDatabaseObjectStoreIndex.prototype.saveIdentityToCookie):
(WebInspector.IndexedDatabaseObjectStoreIndex.prototype.establishRelationship):

  • UserInterface/IndexedDatabaseObjectStoreIndexTreeElement.js: Added.

(WebInspector.IndexedDatabaseObjectStoreIndexTreeElement):
(WebInspector.IndexedDatabaseObjectStoreIndexTreeElement.prototype.get objectStoreIndex):

  • UserInterface/IndexedDatabaseObjectStoreTreeElement.js: Added.

(WebInspector.IndexedDatabaseObjectStoreTreeElement):
(WebInspector.IndexedDatabaseObjectStoreTreeElement.prototype.get objectStore):
(WebInspector.IndexedDatabaseObjectStoreTreeElement.prototype.oncollapse):
(WebInspector.IndexedDatabaseObjectStoreTreeElement.prototype.onpopulate):

  • UserInterface/IndexedDatabaseTreeElement.js: Added.

(WebInspector.IndexedDatabaseTreeElement):
(WebInspector.IndexedDatabaseTreeElement.prototype.get indexedDatabase):
(WebInspector.IndexedDatabaseTreeElement.prototype.oncollapse):
(WebInspector.IndexedDatabaseTreeElement.prototype.onpopulate):

  • UserInterface/Main.html:
  • UserInterface/Main.js:

(WebInspector.sidebarPanelForRepresentedObject):

  • UserInterface/ResourceSidebarPanel.js:

(WebInspector.ResourceSidebarPanel):
(WebInspector.ResourceSidebarPanel.prototype._treeElementSelected):
(WebInspector.ResourceSidebarPanel.prototype._indexedDatabaseWasAdded):
(WebInspector.ResourceSidebarPanel.prototype._storageCleared):

  • UserInterface/StorageManager.js:

(WebInspector.StorageManager):
(WebInspector.StorageManager.prototype.initialize):
(WebInspector.StorageManager.prototype.processData):
(WebInspector.StorageManager.prototype.requestIndexedDatabaseData):
(WebInspector.StorageManager.prototype._mainResourceDidChange):
(WebInspector.StorageManager.prototype._addIndexedDBDatabasesIfNeeded.processDatabaseNames):
(WebInspector.StorageManager.prototype._addIndexedDBDatabasesIfNeeded.processDatabase):
(WebInspector.StorageManager.prototype._addIndexedDBDatabasesIfNeeded):
(WebInspector.StorageManager.prototype._addIndexedDBDatabasesIfNeeded.processObjectStore):
(WebInspector.StorageManager.prototype._addIndexedDBDatabasesIfNeeded.processObjectStoreIndex):
(WebInspector.StorageManager.prototype._securityOriginDidChange):

  • UserInterface/URLUtilities.js:

(parseSecurityOrigin):

LayoutTests:

  • http/tests/inspector-protocol/resources/InspectorTest.js:

(InspectorTest.initializeInspectorModels): Add IndexedDatabase models and StorageManager.

  • inspector-protocol/indexeddb/basics-expected.txt: Added.
  • inspector-protocol/indexeddb/basics.html: Added.
7:29 AM Changeset in webkit [164540] by graouts@webkit.org
  • 4 edits
    2 moves
    1 add in trunk/Source/WebInspectorUI

Web Inspector: allow drag-to-adjust on angle input of gradients editor
https://bugs.webkit.org/show_bug.cgi?id=129095

Reviewed by Timothy Hatcher.

Rename CodeMirrorDragToAlterNumberController to CodeMirrorDragToAdjustNumberController and move
the core logic of a drag-to-adjust behavior out of it to a new generic class DragToAdjustController.
We use this new class from CodeMirrorGradientEditingController to provide drag-to-adjust behavior
in the angle input field of the gradient editor and also as a supporting object for the CodeMirror-
specific class.

  • UserInterface/CodeMirrorDragToAdjustNumberController.css: Renamed from Source/WebInspectorUI/UserInterface/CodeMirrorDragToAlterNumberController.css.

(.CodeMirror.drag-to-adjust .CodeMirror-lines):

  • UserInterface/CodeMirrorDragToAdjustNumberController.js: Added.

Removed the UI logic and use the new DragToAdjustController as a supporting object instead. We implement
the various DragToAdjustController delegate methods in order to customize its behavior to work within the
context of a CodeMirror editor, specifically to prevent activation when the editor is read-only and to
prevent adjustment when the hovered token isn't a number.

(WebInspector.CodeMirrorDragToAdjustNumberController):
(WebInspector.CodeMirrorDragToAdjustNumberController.prototype.get enabled):
(WebInspector.CodeMirrorDragToAdjustNumberController.prototype.set enabled):
(WebInspector.CodeMirrorDragToAdjustNumberController.prototype.dragToAdjustControllerActiveStateChanged):
(WebInspector.CodeMirrorDragToAdjustNumberController.prototype.dragToAdjustControllerCanBeActivated):
(WebInspector.CodeMirrorDragToAdjustNumberController.prototype.dragToAdjustControllerCanBeAdjusted):
(WebInspector.CodeMirrorDragToAdjustNumberController.prototype.dragToAdjustControllerWasAdjustedByAmount):
(WebInspector.CodeMirrorDragToAdjustNumberController.prototype.dragToAdjustControllerDidReset):
(WebInspector.CodeMirrorDragToAdjustNumberController.prototype.dragToAdjustControllerCanAdjustObjectAtPoint):

  • UserInterface/CodeMirrorGradientEditingController.css:

(.gradient-editing-controller > label.drag-to-adjust > input):

  • UserInterface/CodeMirrorGradientEditingController.js:

Adopt the new DragToAdjustController to make the angle input field value adjustable by dragging.

(WebInspector.CodeMirrorGradientEditingController.prototype.popoverWillPresent):
(WebInspector.CodeMirrorGradientEditingController.prototype.dragToAdjustControllerWasAdjustedByAmount):
(WebInspector.CodeMirrorGradientEditingController.prototype._handleInputEvent):
(WebInspector.CodeMirrorGradientEditingController.prototype._angleInputValueDidChange):

  • UserInterface/DragToAdjustController.js: Renamed from Source/WebInspectorUI/UserInterface/CodeMirrorDragToAlterNumberController.js.

New DragToAdjustController class exposing only the core UI logic of a drag-to-adjust behavior in the context
of a DOM element, exposing a few delegation methods to customize the controller's behavior:

  • dragToAdjustControllerActiveStateChanged() notifies that the .active property has changed, allowing bringup

and cleanup work to be performed.

  • dragToAdjustControllerDidReset() notifies that the various tracking states of the controller have been reset

allowing other state objects used by clients to be cleared.

  • dragToAdjustControllerCanBeActivated() is used to check whether the controller may enter the active state upon

first hovering the target element.

  • dragToAdjustControllerCanBeAdjusted() is used to check whether adjustment can be performed at the moment when

the user actually is about to engage in a drag-to-adjust interaction.

  • dragToAdjustControllerCanAdjustObjectAtPoint() is used to check whether the object at the provided point (mouse

location) is an adjustable value.

  • dragToAdjustControllerWasAdjustedByAmount() notifies that there is a new amount to add to the current value

following a drag-to-adjust interaction.

(WebInspector.DragToAdjustController):
(WebInspector.DragToAdjustController.prototype.get element):
(WebInspector.DragToAdjustController.prototype.set element):
(WebInspector.DragToAdjustController.prototype.set enabled):
(WebInspector.DragToAdjustController.prototype.get active):
(WebInspector.DragToAdjustController.prototype.set active):
(WebInspector.DragToAdjustController.prototype.reset):
(WebInspector.DragToAdjustController.prototype.handleEvent):
(WebInspector.DragToAdjustController.prototype._setDragging):
(WebInspector.DragToAdjustController.prototype._setTracksMouseClickAndDrag):
(WebInspector.DragToAdjustController.prototype._modifiersDidChange):
(WebInspector.DragToAdjustController.prototype._mouseMoved):
(WebInspector.DragToAdjustController.prototype._mouseWasPressed):
(WebInspector.DragToAdjustController.prototype._mouseWasDragged):
(WebInspector.DragToAdjustController.prototype._mouseWasReleased):

  • UserInterface/Main.html:

Link in new source files.

5:58 AM Changeset in webkit [164539] by krit@webkit.org
  • 1 edit
    114 deletes in trunk/LayoutTests

Replace svg/clip-path pixel tests by reference tests
https://bugs.webkit.org/show_bug.cgi?id=129177

Patch by Dirk Schulze <krit@webkit.org> on 2014-02-21
Rubber-stamped by Ryosuke Niwa.

This patch removes all pixel tests.

  • platform/efl/svg/clip-path/clip-in-mask-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-childs-clipped-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-clipped-evenodd-twice-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-clipped-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-clipped-nonzero-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-css-transform-1-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-css-transform-2-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-objectBoundingBox-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-on-clipped-use-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-on-g-and-child-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-on-g-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-on-svg-and-child-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-on-svg-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-pixelation-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-text-and-stroke-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-text-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-transform-2-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-tspan-and-stroke-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-use-as-child-expected.png: Removed.
  • platform/efl/svg/clip-path/clip-path-userSpaceOnUse-expected.png: Removed.
  • platform/efl/svg/clip-path/deep-nested-clip-in-mask-different-unitTypes-expected.png: Removed.
  • platform/efl/svg/clip-path/deep-nested-clip-in-mask-different-unitTypes-expected.txt: Removed.
  • platform/efl/svg/clip-path/deep-nested-clip-in-mask-expected.png: Removed.
  • platform/efl/svg/clip-path/deep-nested-clip-in-mask-panning-expected.png: Removed.
  • platform/efl/svg/clip-path/nested-clip-in-mask-image-based-clipping-expected.png: Removed.
  • platform/efl/svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping-expected.png: Removed.
  • platform/efl/svg/clip-path/nested-clip-in-mask-path-based-clipping-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-in-mask-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-child-clipped-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-childs-clipped-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-clipped-evenodd-twice-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-clipped-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-clipped-nonzero-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-css-transform-1-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-css-transform-2-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-evenodd-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-evenodd-nonzero-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-nonzero-evenodd-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-nonzero-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-objectBoundingBox-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-on-clipped-use-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-on-g-and-child-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-on-g-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-on-svg-and-child-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-on-svg-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-pixelation-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-text-and-shape-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-text-and-stroke-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-text-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-transform-2-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-tspan-and-stroke-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-use-as-child-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-userSpaceOnUse-expected.png: Removed.
  • platform/gtk/svg/clip-path/clip-path-with-text-clipped-expected.png: Removed.
  • platform/gtk/svg/clip-path/deep-nested-clip-in-mask-different-unitTypes-expected.png: Removed.
  • platform/gtk/svg/clip-path/deep-nested-clip-in-mask-different-unitTypes-expected.txt: Removed.
  • platform/gtk/svg/clip-path/deep-nested-clip-in-mask-expected.png: Removed.
  • platform/gtk/svg/clip-path/deep-nested-clip-in-mask-panning-expected.png: Removed.
  • platform/gtk/svg/clip-path/nested-clip-in-mask-image-based-clipping-expected.png: Removed.
  • platform/gtk/svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping-expected.png: Removed.
  • platform/gtk/svg/clip-path/nested-clip-in-mask-path-based-clipping-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-in-clip-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-in-mask-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-in-mask-objectBoundingBox-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-in-mask-userSpaceOnUse-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-child-clipped-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-childs-clipped-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-clipped-evenodd-twice-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-clipped-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-clipped-no-content-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-clipped-nonzero-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-css-transform-1-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-css-transform-2-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-evenodd-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-evenodd-nonzero-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-nonzero-evenodd-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-nonzero-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-objectBoundingBox-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-on-clipped-use-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-on-g-and-child-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-on-g-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-on-svg-and-child-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-on-svg-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-pixelation-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-pixelation-expected.txt: Removed.
  • platform/mac/svg/clip-path/clip-path-recursive-call-by-child-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-recursive-call-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-text-and-shape-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-text-and-shape-expected.txt: Removed.
  • platform/mac/svg/clip-path/clip-path-text-and-stroke-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-text-and-stroke-expected.txt: Removed.
  • platform/mac/svg/clip-path/clip-path-text-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-text-expected.txt: Removed.
  • platform/mac/svg/clip-path/clip-path-transform-1-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-transform-2-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-tspan-and-stroke-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-tspan-and-stroke-expected.txt: Removed.
  • platform/mac/svg/clip-path/clip-path-use-as-child-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-use-as-child2-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-use-as-child3-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-use-as-child4-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-use-as-child5-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-userSpaceOnUse-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-with-container-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-with-different-unittypes-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-with-different-unittypes2-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-with-invisibile-child-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-with-text-clipped-expected.png: Removed.
  • platform/mac/svg/clip-path/clip-path-with-text-clipped-expected.txt: Removed.
  • platform/mac/svg/clip-path/clipper-placement-issue-expected.png: Removed.
  • platform/mac/svg/clip-path/deep-nested-clip-in-mask-different-unitTypes-expected.png: Removed.
  • platform/mac/svg/clip-path/deep-nested-clip-in-mask-expected.png: Removed.
  • platform/mac/svg/clip-path/deep-nested-clip-in-mask-expected.txt: Removed.
  • platform/mac/svg/clip-path/deep-nested-clip-in-mask-panning-expected.png: Removed.
  • platform/mac/svg/clip-path/deep-nested-clip-in-mask-panning-expected.txt: Removed.
  • platform/mac/svg/clip-path/nested-clip-in-mask-image-based-clipping-expected.png: Removed.
  • platform/mac/svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping-expected.png: Removed.
  • platform/mac/svg/clip-path/nested-clip-in-mask-path-based-clipping-expected.png: Removed.
  • svg/clip-path/clip-in-clip-expected.png: Removed.
  • svg/clip-path/clip-in-clip-expected.txt: Removed.
  • svg/clip-path/clip-in-clip.svg: Removed.
  • svg/clip-path/clip-in-mask-expected.txt: Removed.
  • svg/clip-path/clip-in-mask-objectBoundingBox-expected.txt: Removed.
  • svg/clip-path/clip-in-mask-objectBoundingBox.svg: Removed.
  • svg/clip-path/clip-in-mask-userSpaceOnUse-expected.txt: Removed.
  • svg/clip-path/clip-in-mask-userSpaceOnUse.svg: Removed.
  • svg/clip-path/clip-in-mask.svg: Removed.
  • svg/clip-path/clip-path-child-clipped-expected.txt: Removed.
  • svg/clip-path/clip-path-child-clipped.svg: Removed.
  • svg/clip-path/clip-path-childs-clipped-expected.txt: Removed.
  • svg/clip-path/clip-path-childs-clipped.svg: Removed.
  • svg/clip-path/clip-path-clipped-evenodd-twice-expected.txt: Removed.
  • svg/clip-path/clip-path-clipped-evenodd-twice.svg: Removed.
  • svg/clip-path/clip-path-clipped-expected.txt: Removed.
  • svg/clip-path/clip-path-clipped-no-content-expected.png: Removed.
  • svg/clip-path/clip-path-clipped-no-content-expected.txt: Removed.
  • svg/clip-path/clip-path-clipped-no-content.svg: Removed.
  • svg/clip-path/clip-path-clipped-nonzero-expected.txt: Removed.
  • svg/clip-path/clip-path-clipped-nonzero.svg: Removed.
  • svg/clip-path/clip-path-clipped.svg: Removed.
  • svg/clip-path/clip-path-css-transform-1-expected.txt: Removed.
  • svg/clip-path/clip-path-css-transform-1.svg: Removed.
  • svg/clip-path/clip-path-css-transform-2-expected.txt: Removed.
  • svg/clip-path/clip-path-css-transform-2.svg: Removed.
  • svg/clip-path/clip-path-evenodd-expected.txt: Removed.
  • svg/clip-path/clip-path-evenodd-nonzero-expected.txt: Removed.
  • svg/clip-path/clip-path-evenodd-nonzero.svg: Removed.
  • svg/clip-path/clip-path-evenodd.svg: Removed.
  • svg/clip-path/clip-path-nonzero-evenodd-expected.txt: Removed.
  • svg/clip-path/clip-path-nonzero-evenodd.svg: Removed.
  • svg/clip-path/clip-path-nonzero-expected.txt: Removed.
  • svg/clip-path/clip-path-nonzero.svg: Removed.
  • svg/clip-path/clip-path-objectBoundingBox-expected.txt: Removed.
  • svg/clip-path/clip-path-objectBoundingBox.svg: Removed.
  • svg/clip-path/clip-path-on-clipped-use-expected.txt: Removed.
  • svg/clip-path/clip-path-on-clipped-use.svg: Removed.
  • svg/clip-path/clip-path-on-g-and-child-expected.txt: Removed.
  • svg/clip-path/clip-path-on-g-and-child.svg: Removed.
  • svg/clip-path/clip-path-on-g-expected.txt: Removed.
  • svg/clip-path/clip-path-on-g.svg: Removed.
  • svg/clip-path/clip-path-on-svg-and-child-expected.txt: Removed.
  • svg/clip-path/clip-path-on-svg-and-child.svg: Removed.
  • svg/clip-path/clip-path-on-svg-expected.txt: Removed.
  • svg/clip-path/clip-path-on-svg.svg: Removed.
  • svg/clip-path/clip-path-pixelation-expected.txt: Removed.
  • svg/clip-path/clip-path-pixelation.svg: Removed.
  • svg/clip-path/clip-path-recursive-call-by-child-expected.png: Removed.
  • svg/clip-path/clip-path-recursive-call-by-child-expected.txt: Removed.
  • svg/clip-path/clip-path-recursive-call-by-child.svg: Removed.
  • svg/clip-path/clip-path-recursive-call-expected.png: Removed.
  • svg/clip-path/clip-path-recursive-call-expected.txt: Removed.
  • svg/clip-path/clip-path-recursive-call.svg: Removed.
  • svg/clip-path/clip-path-text-and-shape-expected.txt: Removed.
  • svg/clip-path/clip-path-text-and-shape.svg: Removed.
  • svg/clip-path/clip-path-text-and-stroke-expected.txt: Removed.
  • svg/clip-path/clip-path-text-and-stroke.svg: Removed.
  • svg/clip-path/clip-path-text-expected.txt: Removed.
  • svg/clip-path/clip-path-text.svg: Removed.
  • svg/clip-path/clip-path-transform-1-expected.txt: Removed.
  • svg/clip-path/clip-path-transform-1.svg: Removed.
  • svg/clip-path/clip-path-transform-2-expected.txt: Removed.
  • svg/clip-path/clip-path-transform-2.svg: Removed.
  • svg/clip-path/clip-path-tspan-and-stroke-expected.txt: Removed.
  • svg/clip-path/clip-path-tspan-and-stroke.svg: Removed.
  • svg/clip-path/clip-path-use-as-child-expected.txt: Removed.
  • svg/clip-path/clip-path-use-as-child.svg: Removed.
  • svg/clip-path/clip-path-use-as-child2-expected.png: Removed.
  • svg/clip-path/clip-path-use-as-child2-expected.txt: Removed.
  • svg/clip-path/clip-path-use-as-child2.svg: Removed.
  • svg/clip-path/clip-path-use-as-child3-expected.png: Removed.
  • svg/clip-path/clip-path-use-as-child3-expected.txt: Removed.
  • svg/clip-path/clip-path-use-as-child3.svg: Removed.
  • svg/clip-path/clip-path-use-as-child4-expected.png: Removed.
  • svg/clip-path/clip-path-use-as-child4-expected.txt: Removed.
  • svg/clip-path/clip-path-use-as-child4.svg: Removed.
  • svg/clip-path/clip-path-use-as-child5-expected.png: Removed.
  • svg/clip-path/clip-path-use-as-child5-expected.txt: Removed.
  • svg/clip-path/clip-path-use-as-child5.svg: Removed.
  • svg/clip-path/clip-path-userSpaceOnUse-expected.txt: Removed.
  • svg/clip-path/clip-path-userSpaceOnUse.svg: Removed.
  • svg/clip-path/clip-path-with-container-expected.png: Removed.
  • svg/clip-path/clip-path-with-container-expected.txt: Removed.
  • svg/clip-path/clip-path-with-container.svg: Removed.
  • svg/clip-path/clip-path-with-different-unittypes-expected.png: Removed.
  • svg/clip-path/clip-path-with-different-unittypes-expected.txt: Removed.
  • svg/clip-path/clip-path-with-different-unittypes.svg: Removed.
  • svg/clip-path/clip-path-with-different-unittypes2-expected.png: Removed.
  • svg/clip-path/clip-path-with-different-unittypes2-expected.txt: Removed.
  • svg/clip-path/clip-path-with-different-unittypes2.svg: Removed.
  • svg/clip-path/clip-path-with-invisibile-child-expected.png: Removed.
  • svg/clip-path/clip-path-with-invisibile-child-expected.txt: Removed.
  • svg/clip-path/clip-path-with-invisibile-child.svg: Removed.
  • svg/clip-path/clip-path-with-text-clipped-expected.txt: Removed.
  • svg/clip-path/clip-path-with-text-clipped.svg: Removed.
  • svg/clip-path/clipper-placement-issue-expected.png: Removed.
  • svg/clip-path/clipper-placement-issue-expected.txt: Removed.
  • svg/clip-path/clipper-placement-issue.svg: Removed.
  • svg/clip-path/deep-nested-clip-in-mask-different-unitTypes-expected.txt: Removed.
  • svg/clip-path/deep-nested-clip-in-mask-different-unitTypes.svg: Removed.
  • svg/clip-path/deep-nested-clip-in-mask-expected.txt: Removed.
  • svg/clip-path/deep-nested-clip-in-mask-panning-expected.txt: Removed.
  • svg/clip-path/deep-nested-clip-in-mask-panning.svg: Removed.
  • svg/clip-path/deep-nested-clip-in-mask.svg: Removed.
  • svg/clip-path/nested-clip-in-mask-image-based-clipping-expected.txt: Removed.
  • svg/clip-path/nested-clip-in-mask-image-based-clipping.svg: Removed.
  • svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping-expected.txt: Removed.
  • svg/clip-path/nested-clip-in-mask-path-and-image-based-clipping.svg: Removed.
  • svg/clip-path/nested-clip-in-mask-path-based-clipping-expected.txt: Removed.
  • svg/clip-path/nested-clip-in-mask-path-based-clipping.svg: Removed.
2:21 AM Changeset in webkit [164538] by fred.wang@free.fr
  • 5 edits in trunk

Only skip stretchy operators when determining the stretch height.
https://bugs.webkit.org/show_bug.cgi?id=126842

Reviewed by Chris Fleizach.

Source/WebCore:

The MathML code only takes into account non-mo children for the computation of the stretch size. This change includes non-stretchy mo in that computation. A new test is added into mathml/presentation/stretchy-depth-height.html.

  • rendering/mathml/RenderMathMLRow.cpp:

(WebCore::RenderMathMLRow::layout):

LayoutTests:

  • mathml/presentation/stretchy-depth-height.html: Add a test with non-stretchy mo siblings.
2:14 AM Changeset in webkit [164537] by fred.wang@free.fr
  • 4 edits
    2 adds in trunk

Implement asymmetric/symmetric stretching of vertical operators.
https://bugs.webkit.org/show_bug.cgi?id=124827.

Reviewed by Chris Fleizach.

Source/WebCore:

The MathML code stretches vertical operators asymmetrically by default. This patch takes into account the symmetric attribute or the symmetric property of the operator dictionary to stretch operators symmetrically.

Test: mathml/presentation/stretchy-depth-height-symmetric.html

  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::stretchTo):
(WebCore::RenderMathMLOperator::updateFromElement):
(WebCore::RenderMathMLOperator::updateStyle):

LayoutTests:

Add a new test to verify the symmetric property of operators (either implicit by the operator dictionary or explicit via an mo attribute).

  • LayoutTests/platform/mac/mathml/presentation/mo-stretch-expected.txt: rebased.
  • mathml/presentation/stretchy-depth-height-symmetric-expected.txt: Added.
  • mathml/presentation/stretchy-depth-height-symmetric.html: Added.
2:08 AM Changeset in webkit [164536] by fred.wang@free.fr
  • 8 edits
    2 adds in trunk

Bug 119043 - Large stretch size error for MathML operators.
https://bugs.webkit.org/show_bug.cgi?id=119043

Reviewed by Chris Fleizach.

Source/WebCore:

The MathML code used some arbitrary gOperatorExpansion factor for the
stretch size and 2/3 1/2 constants for the baseline. This change tries
to consider height/depth of siblings of the stretchy operator so that
the stretchy operator now matches its target.

Test: mathml/presentation/stretchy-depth-height.html

  • rendering/RenderObject.h:

(WebCore::RenderObject::isRenderMathMLTable):

  • rendering/mathml/RenderMathMLBlock.h:
  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::RenderMathMLOperator):
(WebCore::RenderMathMLOperator::stretchTo):
(WebCore::RenderMathMLOperator::findAcceptableStretchyCharacter):
(WebCore::RenderMathMLOperator::updateStyle):
(WebCore::RenderMathMLOperator::firstLineBaseline):
(WebCore::RenderMathMLOperator::computeLogicalHeight):

  • rendering/mathml/RenderMathMLOperator.h:
  • rendering/mathml/RenderMathMLRow.cpp:

(WebCore::RenderMathMLRow::layout):

LayoutTests:

This adds a test to check that the depth/height of stretchy operators match the maximum of their siblings. This also fixes the reference of mo-stretch.html to ignore the stretch error.

  • mathml/presentation/stretchy-depth-height-expected.txt: Added.
  • mathml/presentation/stretchy-depth-height.html: Added.
  • platform/mac/mathml/presentation/mo-stretch-expected.txt:
1:57 AM Changeset in webkit [164535] by fred.wang@free.fr
  • 8 edits
    2 deletes in trunk

Unreviewed, rolling out r164534.
http://trac.webkit.org/changeset/164534
https://bugs.webkit.org/show_bug.cgi?id=119043

missing tests

Source/WebCore:

  • rendering/RenderObject.h:
  • rendering/mathml/RenderMathMLBlock.h:
  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::RenderMathMLOperator):
(WebCore::RenderMathMLOperator::expandedStretchHeight):
(WebCore::RenderMathMLOperator::stretchToHeight):
(WebCore::RenderMathMLOperator::findAcceptableStretchyCharacter):
(WebCore::RenderMathMLOperator::updateStyle):
(WebCore::RenderMathMLOperator::firstLineBaseline):
(WebCore::RenderMathMLOperator::computeLogicalHeight):

  • rendering/mathml/RenderMathMLOperator.h:
  • rendering/mathml/RenderMathMLRow.cpp:

(WebCore::RenderMathMLRow::layout):

LayoutTests:

  • mathml/presentation/stretchy-depth-height-expected.txt: Removed.
  • mathml/presentation/stretchy-depth-height.html: Removed.
  • platform/mac/mathml/presentation/mo-stretch-expected.txt:
1:50 AM Changeset in webkit [164534] by fred.wang@free.fr
  • 8 edits
    2 adds in trunk

Bug 119043 - Large stretch size error for MathML operators.
https://bugs.webkit.org/show_bug.cgi?id=119043

Reviewed by Chris Fleizach.

Source/WebCore:

The MathML code used some arbitrary gOperatorExpansion factor for the
stretch size and 2/3 1/2 constants for the baseline. This change tries
to consider height/depth of siblings of the stretchy operator so that
the stretchy operator now matches its target.

Test: mathml/presentation/stretchy-depth-height.html

  • rendering/RenderObject.h:

(WebCore::RenderObject::isRenderMathMLTable):

  • rendering/mathml/RenderMathMLBlock.h:
  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::RenderMathMLOperator):
(WebCore::RenderMathMLOperator::stretchTo):
(WebCore::RenderMathMLOperator::findAcceptableStretchyCharacter):
(WebCore::RenderMathMLOperator::updateStyle):
(WebCore::RenderMathMLOperator::firstLineBaseline):
(WebCore::RenderMathMLOperator::computeLogicalHeight):

  • rendering/mathml/RenderMathMLOperator.h:
  • rendering/mathml/RenderMathMLRow.cpp:

(WebCore::RenderMathMLRow::layout):

LayoutTests:

This adds a test to check that the depth/height of stretchy operators match the maximum of their siblings. This also fixes the reference of mo-stretch.html to ignore the stretch error.

  • mathml/presentation/stretchy-depth-height-expected.txt: Added.
  • mathml/presentation/stretchy-depth-height.html: Added.
  • platform/mac/mathml/presentation/mo-stretch-expected.txt:
1:23 AM Changeset in webkit [164533] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed, EFL WK2 gardening. Skip a webgl test because of crashing.
Besides a bug is filed and assigned to those crash tests.

  • platform/efl-wk2/TestExpectations:
Note: See TracTimeline for information about the timeline view.