WebKit-https.git
3 years agoWebRTC video does not resume receiving when switching back to Safari 11 on iOS
commit-queue@webkit.org [Mon, 25 Sep 2017 23:23:27 +0000 (23:23 +0000)]
WebRTC video does not resume receiving when switching back to Safari 11 on iOS
https://bugs.webkit.org/show_bug.cgi?id=175472
<rdar://problem/33860863>

Patch by Youenn Fablet <youenn@apple.com> on 2017-09-25
Reviewed by Darin Adler.

Source/ThirdParty/libwebrtc:

Adding a method to disable any decoding/encoding task.
When reenabling the decoder, the decoder will request an I frame after failing the first initial decoding task.

* Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/decoder.h:
(webrtc::H264VideoToolboxDecoder::SetActive):
* Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/decoder.mm:
(webrtc::H264VideoToolboxDecoder::Decode):
* Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/encoder.h:
* Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/encoder.mm:
(webrtc::H264VideoToolboxEncoder::Encode):

Source/WebCore:

Test: webrtc/video-interruption.html and manual testing.

Using new SetActive method from libwebrtc encoder/decoder to enable/disable them based on interuptions.
For that purpose, LibWebRTCProvider is now storing the peer connection factory and keeping track of the encoder/decoder factories.
LibWebRTCProvider is then notified by WebPage when backgrounded/foregrounded.

* WebCore.xcodeproj/project.pbxproj:
* platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:
(WebCore::staticFactoryAndThreads):
(WebCore::initializePeerConnectionFactoryAndThreads):
(WebCore::LibWebRTCProvider::factory):
(WebCore::LibWebRTCProvider::setPeerConnectionFactory):
(WebCore::LibWebRTCProvider::createPeerConnection):
(WebCore::LibWebRTCProvider::setActive):
(WebCore::LibWebRTCProvider::webRTCAvailable):
(WebCore::LibWebRTCProvider::mayResumePlayback): Deleted.
(WebCore::LibWebRTCProvider::suspendPlayback): Deleted.
* platform/mediastream/libwebrtc/LibWebRTCProvider.h:
* platform/mediastream/libwebrtc/VideoToolBoxDecoderFactory.cpp: Copied from Source/WebCore/platform/mediastream/libwebrtc/VideoToolBoxEncoderFactory.cpp.
(WebCore::VideoToolboxVideoDecoderFactory::setActive):
(WebCore::VideoToolboxVideoDecoderFactory::CreateVideoDecoder):
(WebCore::VideoToolboxVideoDecoderFactory::DestroyVideoDecoder):
* platform/mediastream/libwebrtc/VideoToolBoxDecoderFactory.h: Copied from Source/WebCore/platform/mediastream/libwebrtc/VideoToolBoxEncoderFactory.h.
* platform/mediastream/libwebrtc/VideoToolBoxEncoderFactory.cpp:
(WebCore::VideoToolboxVideoEncoderFactory::setActive):
(WebCore::VideoToolboxVideoEncoderFactory::CreateSupportedVideoEncoder):
(WebCore::VideoToolboxVideoEncoderFactory::DestroyVideoEncoder):
* platform/mediastream/libwebrtc/VideoToolBoxEncoderFactory.h:
* testing/Internals.cpp:
(WebCore::Internals::resetToConsistentState):
* testing/MockLibWebRTCPeerConnection.cpp:
(WebCore::useRealRTCPeerConnectionFactory):
(WebCore::useMockRTCPeerConnectionFactory):
* testing/MockLibWebRTCPeerConnection.h:

Source/WebKit:

Notifying LibWebRTC of backgrounding/foregrouding.

* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::applicationDidEnterBackground):
(WebKit::WebPage::applicationWillEnterForeground):

LayoutTests:

* webrtc/video-interruption-expected.txt: Added.
* webrtc/video-interruption.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222478 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoRemove unused EditorClient functions
commit-queue@webkit.org [Mon, 25 Sep 2017 23:17:07 +0000 (23:17 +0000)]
Remove unused EditorClient functions
https://bugs.webkit.org/show_bug.cgi?id=177463

Patch by Sam Weinig <sam@webkit.org> on 2017-09-25
Reviewed by Alex Christensen.

Remove unused EditorClient functions.

Source/WebCore:

* loader/EmptyClients.cpp:
* page/EditorClient.h:

Source/WebKit:

* WebProcess/WebCoreSupport/WebEditorClient.h:
* WebProcess/WebCoreSupport/ios/WebEditorClientIOS.mm:
(WebKit::WebEditorClient::canonicalizeURL): Deleted.
(WebKit::WebEditorClient::canonicalizeURLString): Deleted.
(WebKit::WebEditorClient::writeDataToPasteboard): Deleted.
(WebKit::WebEditorClient::supportedPasteboardTypesForCurrentSelection): Deleted.
(WebKit::WebEditorClient::readDataFromPasteboard): Deleted.
(WebKit::WebEditorClient::pasteboardChangeCount): Deleted.
* WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
(WebKit::WebEditorClient::canonicalizeURL): Deleted.
(WebKit::WebEditorClient::canonicalizeURLString): Deleted.

Source/WebKitLegacy/mac:

* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::canonicalizeURL): Deleted.
(WebEditorClient::canonicalizeURLString): Deleted.
(WebEditorClient::writeDataToPasteboard): Deleted.
(WebEditorClient::supportedPasteboardTypesForCurrentSelection): Deleted.
(WebEditorClient::readDataFromPasteboard): Deleted.
(WebEditorClient::pasteboardChangeCount): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222477 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoAdding per-platform libwebrtc export files
commit-queue@webkit.org [Mon, 25 Sep 2017 23:13:35 +0000 (23:13 +0000)]
Adding per-platform libwebrtc export files
https://bugs.webkit.org/show_bug.cgi?id=177465

Patch by Youenn Fablet <youenn@apple.com> on 2017-09-25
Reviewed by Alex Christensen.

Using per platform export symbol files for libwebrtc.dylib.
This allows exporting platform-specific symbols that are used by libwebrtc unit tests.

* Configurations/libwebrtc.iOS.exp: Added.
* Configurations/libwebrtc.iOSsim.exp: Added.
* Configurations/libwebrtc.mac.exp: Added.
* Configurations/libwebrtc.exp: Removed.
* Configurations/libwebrtc.xcconfig:
* libwebrtc.xcodeproj/project.pbxproj: Adding ISAC/fix codec files used for
by audio codec unit tests to libwebrtc.dylib. This files will allow us to add support to the ISAC/fix codec.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222476 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUnreviewed follow-up to r222470.
joepeck@webkit.org [Mon, 25 Sep 2017 23:02:17 +0000 (23:02 +0000)]
Unreviewed follow-up to r222470.

* UserInterface/Main.html:
Remove reference to css file that doesn't exist yet.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222475 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoCrash in WebCore::TreeScope::documentScope
pvollan@apple.com [Mon, 25 Sep 2017 22:56:11 +0000 (22:56 +0000)]
Crash in WebCore::TreeScope::documentScope
https://bugs.webkit.org/show_bug.cgi?id=176159

Reviewed by Ryosuke Niwa.

Source/WebCore:

When all children are replaced with a new node in ContainerNode::replaceAllChildren,
the treescope of the new node should be set after the call to willRemoveChildren,
since this call can fire events, and execute JS code, which might change the treescope
of the container node.

Test: fast/dom/crash-moving-subtree-between-documents.html

* dom/ContainerNode.cpp:
(WebCore::ContainerNode::replaceAllChildren):

LayoutTests:

* fast/dom/crash-moving-subtree-between-documents-expected.txt: Added.
* fast/dom/crash-moving-subtree-between-documents.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222474 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoMake Attribute an enum class
achristensen@apple.com [Mon, 25 Sep 2017 22:37:03 +0000 (22:37 +0000)]
Make Attribute an enum class
https://bugs.webkit.org/show_bug.cgi?id=177414

Reviewed by Yusuke Suzuki.

Source/JavaScriptCore:

I've had enough of these naming collisions.  This is what enum classes are for.
Unfortunately a lot of static_cast<unsigned> is necessary until those functions take
an OptionSet<Attribute> instead of an unsigned parameter, but this is a big step
towards where we ought to be.

* API/JSCallbackObjectFunctions.h:
(JSC::JSCallbackObject<Parent>::getOwnPropertySlot):
* API/JSObjectRef.cpp:
(JSObjectMakeConstructor):
* Scripts/builtins/builtins_generate_internals_wrapper_implementation.py:
(BuiltinsInternalsWrapperImplementationGenerator.property_macro):
* bytecode/GetByIdStatus.cpp:
(JSC::GetByIdStatus::computeFromLLInt):
(JSC::GetByIdStatus::computeForStubInfoWithoutExitSiteFeedback):
(JSC::GetByIdStatus::computeFor):
* bytecode/PropertyCondition.cpp:
(JSC::PropertyCondition::isStillValidAssumingImpurePropertyWatchpoint const):
(JSC::PropertyCondition::isValidValueForAttributes):
* bytecode/PutByIdStatus.cpp:
(JSC::PutByIdStatus::computeFor):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::instantiateLexicalVariables):
(JSC::BytecodeGenerator::variable):
* bytecompiler/BytecodeGenerator.h:
(JSC::Variable::isReadOnly const):
(JSC::Variable::setIsReadOnly):
* bytecompiler/NodesCodegen.cpp:
(JSC::PropertyListNode::emitBytecode):
* create_hash_table:
* debugger/DebuggerScope.cpp:
(JSC::DebuggerScope::getOwnPropertySlot):
* dfg/DFGOperations.cpp:
* inspector/JSInjectedScriptHostPrototype.cpp:
(Inspector::JSInjectedScriptHostPrototype::finishCreation):
* inspector/JSJavaScriptCallFramePrototype.cpp:
(Inspector::JSJavaScriptCallFramePrototype::finishCreation):
* jit/Repatch.cpp:
(JSC::tryCacheGetByID):
* jsc.cpp:
(WTF::CustomGetter::getOwnPropertySlot):
(WTF::RuntimeArray::getOwnPropertySlot):
(WTF::RuntimeArray::getOwnPropertySlotByIndex):
(WTF::DOMJITGetter::finishCreation):
(WTF::DOMJITGetterComplex::finishCreation):
(WTF::DOMJITFunctionObject::finishCreation):
(WTF::DOMJITCheckSubClassObject::finishCreation):
(GlobalObject::finishCreation):
* runtime/ArrayConstructor.cpp:
(JSC::ArrayConstructor::finishCreation):
* runtime/ArrayIteratorPrototype.cpp:
(JSC::ArrayIteratorPrototype::finishCreation):
* runtime/ArrayPrototype.cpp:
(JSC::ArrayPrototype::finishCreation):
* runtime/AsyncFromSyncIteratorPrototype.cpp:
(JSC::AsyncFromSyncIteratorPrototype::finishCreation):
* runtime/AsyncFunctionConstructor.cpp:
(JSC::AsyncFunctionConstructor::finishCreation):
* runtime/AsyncFunctionPrototype.cpp:
(JSC::AsyncFunctionPrototype::finishCreation):
* runtime/AsyncGeneratorFunctionConstructor.cpp:
(JSC::AsyncGeneratorFunctionConstructor::finishCreation):
* runtime/AsyncGeneratorFunctionPrototype.cpp:
(JSC::AsyncGeneratorFunctionPrototype::finishCreation):
* runtime/AsyncGeneratorPrototype.cpp:
(JSC::AsyncGeneratorPrototype::finishCreation):
* runtime/AsyncIteratorPrototype.cpp:
(JSC::AsyncIteratorPrototype::finishCreation):
* runtime/AtomicsObject.cpp:
(JSC::AtomicsObject::finishCreation):
* runtime/BooleanConstructor.cpp:
(JSC::BooleanConstructor::finishCreation):
* runtime/ClonedArguments.cpp:
(JSC::ClonedArguments::createStructure):
(JSC::ClonedArguments::getOwnPropertySlot):
(JSC::ClonedArguments::materializeSpecials):
* runtime/CommonSlowPaths.cpp:
(JSC::SLOW_PATH_DECL):
* runtime/ConsoleObject.cpp:
(JSC::ConsoleObject::finishCreation):
* runtime/DateConstructor.cpp:
(JSC::DateConstructor::finishCreation):
* runtime/DatePrototype.cpp:
(JSC::DatePrototype::finishCreation):
* runtime/DirectArguments.cpp:
(JSC::DirectArguments::overrideThings):
* runtime/Error.cpp:
(JSC::addErrorInfo):
* runtime/ErrorConstructor.cpp:
(JSC::ErrorConstructor::finishCreation):
* runtime/ErrorInstance.cpp:
(JSC::ErrorInstance::finishCreation):
* runtime/ErrorPrototype.cpp:
(JSC::ErrorPrototype::finishCreation):
* runtime/FunctionConstructor.cpp:
(JSC::FunctionConstructor::finishCreation):
* runtime/FunctionPrototype.cpp:
(JSC::FunctionPrototype::finishCreation):
(JSC::FunctionPrototype::addFunctionProperties):
(JSC::FunctionPrototype::initRestrictedProperties):
* runtime/GeneratorFunctionConstructor.cpp:
(JSC::GeneratorFunctionConstructor::finishCreation):
* runtime/GeneratorFunctionPrototype.cpp:
(JSC::GeneratorFunctionPrototype::finishCreation):
* runtime/GeneratorPrototype.cpp:
(JSC::GeneratorPrototype::finishCreation):
* runtime/GenericArgumentsInlines.h:
(JSC::GenericArguments<Type>::getOwnPropertySlot):
(JSC::GenericArguments<Type>::getOwnPropertySlotByIndex):
* runtime/InternalFunction.cpp:
(JSC::InternalFunction::finishCreation):
* runtime/IntlCollatorConstructor.cpp:
(JSC::IntlCollatorConstructor::finishCreation):
* runtime/IntlDateTimeFormatConstructor.cpp:
(JSC::IntlDateTimeFormatConstructor::finishCreation):
* runtime/IntlDateTimeFormatPrototype.cpp:
(JSC::IntlDateTimeFormatPrototype::finishCreation):
* runtime/IntlNumberFormatConstructor.cpp:
(JSC::IntlNumberFormatConstructor::finishCreation):
* runtime/IntlObject.cpp:
(JSC::IntlObject::finishCreation):
* runtime/IteratorPrototype.cpp:
(JSC::IteratorPrototype::finishCreation):
* runtime/JSArray.cpp:
(JSC::JSArray::getOwnPropertySlot):
(JSC::JSArray::setLengthWithArrayStorage):
* runtime/JSArrayBufferConstructor.cpp:
(JSC::JSArrayBufferConstructor::finishCreation):
* runtime/JSArrayBufferPrototype.cpp:
(JSC::JSArrayBufferPrototype::finishCreation):
* runtime/JSBoundFunction.cpp:
(JSC::JSBoundFunction::finishCreation):
* runtime/JSCJSValue.cpp:
(JSC::JSValue::putToPrimitive):
* runtime/JSDataView.cpp:
(JSC::JSDataView::getOwnPropertySlot):
* runtime/JSDataViewPrototype.cpp:
(JSC::JSDataViewPrototype::finishCreation):
* runtime/JSFunction.cpp:
(JSC::JSFunction::finishCreation):
(JSC::JSFunction::getOwnPropertySlot):
(JSC::JSFunction::defineOwnProperty):
(JSC::JSFunction::reifyLength):
(JSC::JSFunction::reifyName):
(JSC::JSFunction::reifyLazyBoundNameIfNeeded):
* runtime/JSGenericTypedArrayViewConstructorInlines.h:
(JSC::JSGenericTypedArrayViewConstructor<ViewClass>::finishCreation):
* runtime/JSGenericTypedArrayViewInlines.h:
(JSC::JSGenericTypedArrayView<Adaptor>::getOwnPropertySlot):
(JSC::JSGenericTypedArrayView<Adaptor>::getOwnPropertySlotByIndex):
* runtime/JSGenericTypedArrayViewPrototypeInlines.h:
(JSC::JSGenericTypedArrayViewPrototype<ViewClass>::finishCreation):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
(JSC::JSGlobalObject::addStaticGlobals):
* runtime/JSLexicalEnvironment.cpp:
(JSC::JSLexicalEnvironment::getOwnNonIndexPropertyNames):
* runtime/JSModuleNamespaceObject.cpp:
(JSC::JSModuleNamespaceObject::finishCreation):
(JSC::JSModuleNamespaceObject::getOwnPropertySlotCommon):
* runtime/JSONObject.cpp:
(JSC::JSONObject::finishCreation):
* runtime/JSObject.cpp:
(JSC::getClassPropertyNames):
(JSC::JSObject::getOwnPropertySlotByIndex):
(JSC::ordinarySetSlow):
(JSC::JSObject::putInlineSlow):
(JSC::JSObject::putGetter):
(JSC::JSObject::putSetter):
(JSC::JSObject::putDirectAccessor):
(JSC::JSObject::putDirectCustomAccessor):
(JSC::JSObject::putDirectNonIndexAccessor):
(JSC::JSObject::deleteProperty):
(JSC::JSObject::deletePropertyByIndex):
(JSC::JSObject::getOwnPropertyNames):
(JSC::JSObject::putIndexedDescriptor):
(JSC::JSObject::defineOwnIndexedProperty):
(JSC::JSObject::attemptToInterceptPutByIndexOnHoleForPrototype):
(JSC::JSObject::putDirectIndexSlowOrBeyondVectorLength):
(JSC::JSObject::getOwnPropertyDescriptor):
(JSC::putDescriptor):
(JSC::validateAndApplyPropertyDescriptor):
* runtime/JSObject.h:
(JSC::JSObject::putDirect):
* runtime/JSObjectInlines.h:
(JSC::JSObject::putDirectWithoutTransition):
(JSC::JSObject::putDirectInternal):
* runtime/JSPromiseConstructor.cpp:
(JSC::JSPromiseConstructor::finishCreation):
(JSC::JSPromiseConstructor::addOwnInternalSlots):
* runtime/JSPromisePrototype.cpp:
(JSC::JSPromisePrototype::finishCreation):
(JSC::JSPromisePrototype::addOwnInternalSlots):
* runtime/JSString.cpp:
(JSC::JSString::getStringPropertyDescriptor):
* runtime/JSString.h:
(JSC::JSString::getStringPropertySlot):
* runtime/JSSymbolTableObject.cpp:
(JSC::JSSymbolTableObject::getOwnNonIndexPropertyNames):
* runtime/JSSymbolTableObject.h:
(JSC::symbolTableGet):
* runtime/JSTypedArrayViewConstructor.cpp:
(JSC::JSTypedArrayViewConstructor::finishCreation):
* runtime/JSTypedArrayViewPrototype.cpp:
(JSC::JSTypedArrayViewPrototype::finishCreation):
* runtime/LazyClassStructure.cpp:
(JSC::LazyClassStructure::Initializer::setConstructor):
* runtime/Lookup.cpp:
(JSC::reifyStaticAccessor):
(JSC::setUpStaticFunctionSlot):
* runtime/Lookup.h:
(JSC::HashTableValue::intrinsic const):
(JSC::HashTableValue::builtinGenerator const):
(JSC::HashTableValue::function const):
(JSC::HashTableValue::functionLength const):
(JSC::HashTableValue::propertyGetter const):
(JSC::HashTableValue::propertyPutter const):
(JSC::HashTableValue::domJIT const):
(JSC::HashTableValue::signature const):
(JSC::HashTableValue::accessorGetter const):
(JSC::HashTableValue::accessorSetter const):
(JSC::HashTableValue::constantInteger const):
(JSC::HashTableValue::lazyCellPropertyOffset const):
(JSC::HashTableValue::lazyClassStructureOffset const):
(JSC::HashTableValue::lazyPropertyCallback const):
(JSC::HashTableValue::builtinAccessorGetterGenerator const):
(JSC::HashTableValue::builtinAccessorSetterGenerator const):
(JSC::getStaticPropertySlotFromTable):
(JSC::putEntry):
(JSC::reifyStaticProperty):
* runtime/MapConstructor.cpp:
(JSC::MapConstructor::finishCreation):
* runtime/MapIteratorPrototype.cpp:
(JSC::MapIteratorPrototype::finishCreation):
* runtime/MapPrototype.cpp:
(JSC::MapPrototype::finishCreation):
* runtime/MathObject.cpp:
(JSC::MathObject::finishCreation):
* runtime/NativeErrorConstructor.cpp:
(JSC::NativeErrorConstructor::finishCreation):
* runtime/NativeErrorPrototype.cpp:
(JSC::NativeErrorPrototype::finishCreation):
* runtime/NumberConstructor.cpp:
(JSC::NumberConstructor::finishCreation):
* runtime/NumberPrototype.cpp:
(JSC::NumberPrototype::finishCreation):
* runtime/ObjectConstructor.cpp:
(JSC::ObjectConstructor::finishCreation):
(JSC::objectConstructorAssign):
(JSC::objectConstructorValues):
(JSC::objectConstructorDefineProperty):
* runtime/ObjectPrototype.cpp:
(JSC::ObjectPrototype::finishCreation):
(JSC::objectProtoFuncLookupGetter):
(JSC::objectProtoFuncLookupSetter):
* runtime/ProgramExecutable.cpp:
(JSC::ProgramExecutable::initializeGlobalProperties):
* runtime/PropertyDescriptor.cpp:
(JSC::PropertyDescriptor::writable const):
(JSC::PropertyDescriptor::enumerable const):
(JSC::PropertyDescriptor::configurable const):
(JSC::PropertyDescriptor::setUndefined):
(JSC::PropertyDescriptor::setDescriptor):
(JSC::PropertyDescriptor::setCustomDescriptor):
(JSC::PropertyDescriptor::setAccessorDescriptor):
(JSC::PropertyDescriptor::setWritable):
(JSC::PropertyDescriptor::setEnumerable):
(JSC::PropertyDescriptor::setConfigurable):
(JSC::PropertyDescriptor::setSetter):
(JSC::PropertyDescriptor::setGetter):
(JSC::PropertyDescriptor::attributesEqual const):
(JSC::PropertyDescriptor::attributesOverridingCurrent const):
* runtime/PropertySlot.cpp:
(JSC::PropertySlot::customGetter const):
* runtime/PropertySlot.h:
(JSC::operator| ):
(JSC::operator&):
(JSC::operator<):
(JSC::operator~):
(JSC::operator|=):
(JSC::PropertySlot::setUndefined):
* runtime/ProxyConstructor.cpp:
(JSC::makeRevocableProxy):
(JSC::ProxyConstructor::finishCreation):
* runtime/ProxyObject.cpp:
(JSC::ProxyObject::performHasProperty):
* runtime/ProxyRevoke.cpp:
(JSC::ProxyRevoke::finishCreation):
* runtime/ReflectObject.cpp:
(JSC::ReflectObject::finishCreation):
(JSC::reflectObjectDefineProperty):
* runtime/RegExpConstructor.cpp:
(JSC::RegExpConstructor::finishCreation):
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::getOwnPropertySlot):
* runtime/RegExpPrototype.cpp:
(JSC::RegExpPrototype::finishCreation):
* runtime/ScopedArguments.cpp:
(JSC::ScopedArguments::overrideThings):
* runtime/SetConstructor.cpp:
(JSC::SetConstructor::finishCreation):
* runtime/SetIteratorPrototype.cpp:
(JSC::SetIteratorPrototype::finishCreation):
* runtime/SetPrototype.cpp:
(JSC::SetPrototype::finishCreation):
* runtime/SparseArrayValueMap.cpp:
(JSC::SparseArrayValueMap::putDirect):
(JSC::SparseArrayEntry::put):
* runtime/StringConstructor.cpp:
(JSC::StringConstructor::finishCreation):
* runtime/StringIteratorPrototype.cpp:
(JSC::StringIteratorPrototype::finishCreation):
* runtime/StringPrototype.cpp:
(JSC::StringPrototype::finishCreation):
* runtime/Structure.cpp:
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::isSealed):
(JSC::Structure::isFrozen):
(JSC::Structure::getPropertyNamesFromStructure):
(JSC::Structure::prototypeChainMayInterceptStoreTo):
* runtime/StructureInlines.h:
(JSC::Structure::add):
* runtime/SymbolConstructor.cpp:
(JSC::SymbolConstructor::finishCreation):
* runtime/SymbolPrototype.cpp:
(JSC::SymbolPrototype::finishCreation):
* runtime/SymbolTable.h:
(JSC::SymbolTableEntry::Fast::getAttributes const):
(JSC::SymbolTableEntry::SymbolTableEntry):
(JSC::SymbolTableEntry::setAttributes):
* runtime/TemplateRegistry.cpp:
(JSC::TemplateRegistry::getTemplateObject):
* runtime/WeakMapConstructor.cpp:
(JSC::WeakMapConstructor::finishCreation):
* runtime/WeakMapPrototype.cpp:
(JSC::WeakMapPrototype::finishCreation):
* runtime/WeakSetConstructor.cpp:
(JSC::WeakSetConstructor::finishCreation):
* runtime/WeakSetPrototype.cpp:
(JSC::WeakSetPrototype::finishCreation):
* tools/JSDollarVMPrototype.cpp:
(JSC::JSDollarVMPrototype::finishCreation):
* wasm/js/WebAssemblyCompileErrorConstructor.cpp:
(JSC::WebAssemblyCompileErrorConstructor::finishCreation):
* wasm/js/WebAssemblyInstanceConstructor.cpp:
(JSC::WebAssemblyInstanceConstructor::finishCreation):
* wasm/js/WebAssemblyLinkErrorConstructor.cpp:
(JSC::WebAssemblyLinkErrorConstructor::finishCreation):
* wasm/js/WebAssemblyMemoryConstructor.cpp:
(JSC::WebAssemblyMemoryConstructor::finishCreation):
* wasm/js/WebAssemblyMemoryPrototype.cpp:
* wasm/js/WebAssemblyModuleConstructor.cpp:
(JSC::WebAssemblyModuleConstructor::finishCreation):
* wasm/js/WebAssemblyRuntimeErrorConstructor.cpp:
(JSC::WebAssemblyRuntimeErrorConstructor::finishCreation):
* wasm/js/WebAssemblyTableConstructor.cpp:
(JSC::WebAssemblyTableConstructor::finishCreation):

Source/WebCore:

No change in behavior.

* bindings/js/JSDOMGlobalObject.cpp:
(WebCore::JSDOMGlobalObject::addBuiltinGlobals):
* bindings/js/JSDOMMapLike.cpp:
(WebCore::initializeBackingMap):
(WebCore::createBackingMap):
* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::finishCreation):
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::jsDOMWindowGetOwnPropertySlotRestrictedAccess):
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertySlotByIndex):
* bindings/js/JSDOMWindowProperties.cpp:
(WebCore::jsDOMWindowPropertiesGetOwnPropertySlotNamedItemGetter):
* bindings/js/JSImageDataCustom.cpp:
(WebCore::toJSNewlyCreated):
* bindings/js/JSLocationCustom.cpp:
(WebCore::getOwnPropertySlotCommon):
* bindings/js/JSPluginElementFunctions.cpp:
(WebCore::pluginElementCustomGetOwnPropertySlot):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateIndexedGetter):
(GenerateNamedGetter):
(GetJSCAttributesForAttribute):
(GeneratePropertiesHashTable):
(addUnscopableProperties):
(GenerateImplementation):
(GenerateCallbackImplementationContent):
(GenerateHashTableValueArray):
(GenerateConstructorHelperMethods):
(ComputeFunctionSpecial):
* bindings/scripts/test/JS/JSInterfaceName.cpp:
(WebCore::JSInterfaceNameConstructor::initializeProperties):
* bindings/scripts/test/JS/JSMapLike.cpp:
(WebCore::JSMapLikeConstructor::initializeProperties):
(WebCore::JSMapLikePrototype::finishCreation):
* bindings/scripts/test/JS/JSReadOnlyMapLike.cpp:
(WebCore::JSReadOnlyMapLikeConstructor::initializeProperties):
(WebCore::JSReadOnlyMapLikePrototype::finishCreation):
* bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
(WebCore::JSTestActiveDOMObjectConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestCEReactions.cpp:
(WebCore::JSTestCEReactionsConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:
(WebCore::JSTestCEReactionsStringifierConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestCallTracer.cpp:
(WebCore::JSTestCallTracerConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestCallbackInterface.cpp:
(WebCore::JSTestCallbackInterfaceConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestClassWithJSBuiltinConstructor.cpp:
(WebCore::JSTestClassWithJSBuiltinConstructorConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestCustomConstructorWithNoInterfaceObject.cpp:
(WebCore::JSTestCustomConstructorWithNoInterfaceObjectConstructor::initializeProperties):
(WebCore::jsTestCustomConstructorWithNoInterfaceObjectConstructor):
* bindings/scripts/test/JS/JSTestDOMJIT.cpp:
(WebCore::JSTestDOMJITConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:
(WebCore::JSTestEnabledBySettingConstructor::initializeProperties):
(WebCore::JSTestEnabledBySetting::finishCreation):
* bindings/scripts/test/JS/JSTestEventConstructor.cpp:
(WebCore::JSTestEventConstructorConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::JSTestEventTargetConstructor::initializeProperties):
(WebCore::JSTestEventTarget::getOwnPropertySlot):
(WebCore::JSTestEventTarget::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestException.cpp:
(WebCore::JSTestExceptionConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
(WebCore::JSTestGenerateIsReachableConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestGlobalObject.cpp:
(WebCore::JSTestGlobalObjectConstructor::initializeProperties):
(WebCore::JSTestGlobalObject::finishCreation):
* bindings/scripts/test/JS/JSTestIndexedSetterNoIdentifier.cpp:
(WebCore::JSTestIndexedSetterNoIdentifierConstructor::initializeProperties):
(WebCore::JSTestIndexedSetterNoIdentifier::getOwnPropertySlot):
(WebCore::JSTestIndexedSetterNoIdentifier::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestIndexedSetterThrowingException.cpp:
(WebCore::JSTestIndexedSetterThrowingExceptionConstructor::initializeProperties):
(WebCore::JSTestIndexedSetterThrowingException::getOwnPropertySlot):
(WebCore::JSTestIndexedSetterThrowingException::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestIndexedSetterWithIdentifier.cpp:
(WebCore::JSTestIndexedSetterWithIdentifierConstructor::initializeProperties):
(WebCore::JSTestIndexedSetterWithIdentifier::getOwnPropertySlot):
(WebCore::JSTestIndexedSetterWithIdentifier::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterfaceConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestInterfaceLeadingUnderscore.cpp:
(WebCore::JSTestInterfaceLeadingUnderscoreConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestIterable.cpp:
(WebCore::JSTestIterableConstructor::initializeProperties):
(WebCore::JSTestIterablePrototype::finishCreation):
* bindings/scripts/test/JS/JSTestJSBuiltinConstructor.cpp:
(WebCore::JSTestJSBuiltinConstructorConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
(WebCore::JSTestMediaQueryListListenerConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestNamedAndIndexedSetterNoIdentifier.cpp:
(WebCore::JSTestNamedAndIndexedSetterNoIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedAndIndexedSetterNoIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedAndIndexedSetterNoIdentifier::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedAndIndexedSetterThrowingException.cpp:
(WebCore::JSTestNamedAndIndexedSetterThrowingExceptionConstructor::initializeProperties):
(WebCore::JSTestNamedAndIndexedSetterThrowingException::getOwnPropertySlot):
(WebCore::JSTestNamedAndIndexedSetterThrowingException::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedAndIndexedSetterWithIdentifier.cpp:
(WebCore::JSTestNamedAndIndexedSetterWithIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedAndIndexedSetterWithIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedAndIndexedSetterWithIdentifier::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
(WebCore::JSTestNamedConstructorConstructor::initializeProperties):
(WebCore::JSTestNamedConstructorNamedConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestNamedDeleterNoIdentifier.cpp:
(WebCore::JSTestNamedDeleterNoIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedDeleterNoIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedDeleterNoIdentifier::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedDeleterThrowingException.cpp:
(WebCore::JSTestNamedDeleterThrowingExceptionConstructor::initializeProperties):
(WebCore::JSTestNamedDeleterThrowingException::getOwnPropertySlot):
(WebCore::JSTestNamedDeleterThrowingException::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedDeleterWithIdentifier.cpp:
(WebCore::JSTestNamedDeleterWithIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedDeleterWithIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedDeleterWithIdentifier::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedDeleterWithIndexedGetter.cpp:
(WebCore::JSTestNamedDeleterWithIndexedGetterConstructor::initializeProperties):
(WebCore::JSTestNamedDeleterWithIndexedGetter::getOwnPropertySlot):
(WebCore::JSTestNamedDeleterWithIndexedGetter::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedGetterCallWith.cpp:
(WebCore::JSTestNamedGetterCallWithConstructor::initializeProperties):
(WebCore::JSTestNamedGetterCallWith::getOwnPropertySlot):
(WebCore::JSTestNamedGetterCallWith::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedGetterNoIdentifier.cpp:
(WebCore::JSTestNamedGetterNoIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedGetterNoIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedGetterNoIdentifier::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedGetterWithIdentifier.cpp:
(WebCore::JSTestNamedGetterWithIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedGetterWithIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedGetterWithIdentifier::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedSetterNoIdentifier.cpp:
(WebCore::JSTestNamedSetterNoIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedSetterNoIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedSetterNoIdentifier::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedSetterThrowingException.cpp:
(WebCore::JSTestNamedSetterThrowingExceptionConstructor::initializeProperties):
(WebCore::JSTestNamedSetterThrowingException::getOwnPropertySlot):
(WebCore::JSTestNamedSetterThrowingException::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedSetterWithIdentifier.cpp:
(WebCore::JSTestNamedSetterWithIdentifierConstructor::initializeProperties):
(WebCore::JSTestNamedSetterWithIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedSetterWithIdentifier::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetter.cpp:
(WebCore::JSTestNamedSetterWithIndexedGetterConstructor::initializeProperties):
(WebCore::JSTestNamedSetterWithIndexedGetter::getOwnPropertySlot):
(WebCore::JSTestNamedSetterWithIndexedGetter::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetterAndSetter.cpp:
(WebCore::JSTestNamedSetterWithIndexedGetterAndSetterConstructor::initializeProperties):
(WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::getOwnPropertySlot):
(WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedSetterWithOverrideBuiltins.cpp:
(WebCore::JSTestNamedSetterWithOverrideBuiltinsConstructor::initializeProperties):
(WebCore::JSTestNamedSetterWithOverrideBuiltins::getOwnPropertySlot):
(WebCore::JSTestNamedSetterWithOverrideBuiltins::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedSetterWithUnforgableProperties.cpp:
(WebCore::JSTestNamedSetterWithUnforgablePropertiesConstructor::initializeProperties):
(WebCore::JSTestNamedSetterWithUnforgableProperties::getOwnPropertySlot):
(WebCore::JSTestNamedSetterWithUnforgableProperties::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins.cpp:
(WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsConstructor::initializeProperties):
(WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins::getOwnPropertySlot):
(WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestNode.cpp:
(WebCore::JSTestNodeConstructor::initializeProperties):
(WebCore::JSTestNodePrototype::finishCreation):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObjConstructor::initializeProperties):
(WebCore::JSTestObjPrototype::finishCreation):
(WebCore::JSTestObj::getOwnPropertySlot):
(WebCore::JSTestObj::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
(WebCore::JSTestOverloadedConstructorsConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp:
(WebCore::JSTestOverloadedConstructorsWithSequenceConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp:
(WebCore::JSTestOverrideBuiltinsConstructor::initializeProperties):
(WebCore::JSTestOverrideBuiltins::getOwnPropertySlot):
(WebCore::JSTestOverrideBuiltins::getOwnPropertySlotByIndex):
* bindings/scripts/test/JS/JSTestPluginInterface.cpp:
(WebCore::JSTestPluginInterfaceConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestPromiseRejectionEvent.cpp:
(WebCore::JSTestPromiseRejectionEventConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestSerialization.cpp:
(WebCore::JSTestSerializationConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestSerializationIndirectInheritance.cpp:
(WebCore::JSTestSerializationIndirectInheritanceConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestSerializationInherit.cpp:
(WebCore::JSTestSerializationInheritConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp:
(WebCore::JSTestSerializationInheritFinalConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::JSTestSerializedScriptValueInterfaceConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestStringifier.cpp:
(WebCore::JSTestStringifierConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestStringifierAnonymousOperation.cpp:
(WebCore::JSTestStringifierAnonymousOperationConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestStringifierNamedOperation.cpp:
(WebCore::JSTestStringifierNamedOperationConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestStringifierOperationImplementedAs.cpp:
(WebCore::JSTestStringifierOperationImplementedAsConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestStringifierOperationNamedToString.cpp:
(WebCore::JSTestStringifierOperationNamedToStringConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestStringifierReadOnlyAttribute.cpp:
(WebCore::JSTestStringifierReadOnlyAttributeConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:
(WebCore::JSTestStringifierReadWriteAttributeConstructor::initializeProperties):
* bindings/scripts/test/JS/JSTestTypedefs.cpp:
(WebCore::JSTestTypedefsConstructor::initializeProperties):
* bridge/runtime_array.cpp:
(JSC::RuntimeArray::getOwnPropertySlot):
(JSC::RuntimeArray::getOwnPropertySlotByIndex):
* bridge/runtime_method.cpp:
(JSC::RuntimeMethod::getOwnPropertySlot):
* bridge/runtime_object.cpp:
(JSC::Bindings::RuntimeObject::getOwnPropertySlot):
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::didAddUserAgentShadowRoot):

Source/WebKit:

* WebProcess/Plugins/Netscape/JSNPObject.cpp:
(WebKit::JSNPObject::getOwnPropertySlot):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222473 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoStop using PolicyCallback
achristensen@apple.com [Mon, 25 Sep 2017 22:33:19 +0000 (22:33 +0000)]
Stop using PolicyCallback
https://bugs.webkit.org/show_bug.cgi?id=176088

Reviewed by Andy Estes.

Source/WebCore:

This is what lambdas are for. No change in behavior.
Cancelling the callback is now the responsibility of the FrameLoaderClient, to whom we have given the lambda.
That is why there are changes in WebKit and WebKitLegacy where the FrameLoaderClient::cancelPolicyCheck finds the lambda it has stored.

* CMakeLists.txt:
* WebCore.xcodeproj/project.pbxproj:
* loader/DocumentLoader.cpp:
* loader/FrameLoader.cpp:
* loader/FrameLoaderClient.h:
* loader/PolicyCallback.cpp: Removed.
* loader/PolicyCallback.h: Removed.
* loader/PolicyChecker.cpp:
(WebCore::PolicyChecker::checkNavigationPolicy):
(WebCore::PolicyChecker::checkNewWindowPolicy):
(WebCore::PolicyChecker::stopCheck):
(WebCore::PolicyChecker::continueAfterNavigationPolicy): Deleted.
* loader/PolicyChecker.h:
(WebCore::PolicyChecker::setSuggestedFilename): Deleted.

Source/WebKit:

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
* WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::invalidatePolicyListener):
* WebProcess/WebPage/WebFrame.h:
* WebProcess/WebPage/WebInspector.cpp:

Source/WebKitLegacy/mac:

* WebCoreSupport/WebFrameLoaderClient.mm:
(-[WebFramePolicyListener invalidate]):
(-[WebFramePolicyListener receivedPolicyDecision:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222472 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoMediaStreamTrack.getSettings should compute its deviceId/groupId like enumerateDevices
commit-queue@webkit.org [Mon, 25 Sep 2017 21:46:46 +0000 (21:46 +0000)]
MediaStreamTrack.getSettings should compute its deviceId/groupId like enumerateDevices
https://bugs.webkit.org/show_bug.cgi?id=177433

Patch by Youenn Fablet <youenn@apple.com> on 2017-09-25
Reviewed by Jer Noble.

Source/WebCore:

Covered by improved test.

Hash the deviceId returned by getSettings as done by enumerateDevices/getUserMedia.
Do the same thing for groupId.
Make sure mock sources have their deviceId set consistently with mock devices.

* Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::getSettings const):
* Modules/mediastream/MediaStreamTrack.h:
* Modules/mediastream/MediaStreamTrack.idl:
* platform/mediastream/mac/MockRealtimeAudioSourceMac.h:
* platform/mediastream/mac/MockRealtimeAudioSourceMac.mm:
(WebCore::MockRealtimeAudioSource::create):
(WebCore::MockRealtimeAudioSourceMac::MockRealtimeAudioSourceMac):
* platform/mediastream/mac/MockRealtimeVideoSourceMac.h:
* platform/mediastream/mac/MockRealtimeVideoSourceMac.mm:
(WebCore::MockRealtimeVideoSource::create):
(WebCore::MockRealtimeVideoSourceMac::MockRealtimeVideoSourceMac):
* platform/mock/MockRealtimeAudioSource.cpp:
(WebCore::MockRealtimeAudioSource::create):
(WebCore::MockRealtimeAudioSource::createMuted):
(WebCore::MockRealtimeAudioSource::MockRealtimeAudioSource):
* platform/mock/MockRealtimeAudioSource.h:
* platform/mock/MockRealtimeVideoSource.cpp:
(WebCore::MockRealtimeVideoSource::create):
(WebCore::MockRealtimeVideoSource::createMuted):
(WebCore::MockRealtimeVideoSource::MockRealtimeVideoSource):
* platform/mock/MockRealtimeVideoSource.h:

LayoutTests:

* fast/mediastream/get-user-media-device-id.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222471 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoWeb Inspector: Include a table in New Network Tab
joepeck@webkit.org [Mon, 25 Sep 2017 21:43:54 +0000 (21:43 +0000)]
Web Inspector: Include a table in New Network Tab
https://bugs.webkit.org/show_bug.cgi?id=177206

Reviewed by Matt Baker and Brian Burg.

This includes an initial implementation of the NetworkTableContentView,
and a generic Table / TableColumn implementation ported from DataGrid.

* Localizations/en.lproj/localizedStrings.js:
* UserInterface/Main.html:
New strings and files.

* UserInterface/Views/NetworkGridContentView.css:
(.content-view:matches(.network, .network-grid) > .data-grid .cache-type):
(.cache-type): Deleted.
* UserInterface/Views/ResourceDetailsSidebarPanel.css:
(.sidebar > .panel.resource-details .cache-type):
Make the .cache-type selector more specific for the legacy cases.

* UserInterface/Views/NetworkTabContentView.css: Copied from Source/WebInspectorUI/UserInterface/Views/NetworkGridContentView.css.
(.content-view.network > .content-browser):
* UserInterface/Views/NetworkTabContentView.js:
(WI.NetworkTabContentView.prototype.shown):
(WI.NetworkTabContentView.prototype.hidden):
(WI.NetworkTabContentView.prototype.closed):
NetworkTabContentView has a ContentBrowser so it should be passing
ContentBrowser lifecycle events (shown, hidden, closed) through to
the sub-content browser.

* UserInterface/Views/TableColumn.js: Added.
(WI.TableColumn.prototype.get identifier):
(WI.TableColumn.prototype.get name):
(WI.TableColumn.prototype.get width):
(WI.TableColumn.prototype.get minWidth):
(WI.TableColumn.prototype.get maxWidth):
(WI.TableColumn.prototype.get hidden):
(WI.TableColumn.prototype.get defaultHidden):
(WI.TableColumn.prototype.get sortable):
(WI.TableColumn.prototype.get align):
(WI.TableColumn.prototype.get locked):
(WI.TableColumn.prototype.get flexible):
(WI.TableColumn.prototype.setWidth):
(WI.TableColumn.prototype.setHidden):
Model object for a column. Values are getter only. Columns may express
size constraints (min width / max width) that are respected as much as
possible. When a column is resized it dispatches an event.

* UserInterface/Views/Table.js: Added.
(WI.Table):
(WI.Table.prototype.get element):
(WI.Table.prototype.get identifier):
(WI.Table.prototype.get dataSource):
(WI.Table.prototype.get delegate):
(WI.Table.prototype.get rowHeight):
(WI.Table.prototype.get selectedRow):
(WI.Table.prototype.get sortOrder):
(WI.Table.prototype.set sortOrder):
(WI.Table.prototype.get sortColumnIdentifier):
(WI.Table.prototype.set sortColumnIdentifier):
(WI.Table.prototype.resize):
(WI.Table.prototype.reloadData):
(WI.Table.prototype.reloadDataAddedToEndOnly):
(WI.Table.prototype.reloadRow):
(WI.Table.prototype.reloadCell):
(WI.Table.prototype.selectRow):
(WI.Table.prototype.clearSelectedRow):
(WI.Table.prototype.columnWithIdentifier):
(WI.Table.prototype.addColumn):
(WI.Table.prototype.showColumn):
(WI.Table.prototype.hideColumn):
(WI.Table.prototype.restoreScrollPosition):
(WI.Table.prototype.initialLayout):
(WI.Table.prototype.layout):
(WI.Table.prototype.resizerDragStarted):
(WI.Table.prototype.resizerDragging.growableSize):
(WI.Table.prototype.resizerDragging.shrinkableSize):
(WI.Table.prototype.resizerDragging.canGrow):
(WI.Table.prototype.resizerDragging.canShrink):
(WI.Table.prototype.resizerDragging.columnToResize):
(WI.Table.prototype.resizerDragging):
(WI.Table.prototype.resizerDragEnded):
(WI.Table.prototype._needsLayout):
(WI.Table.prototype._createHeaderCell):
(WI.Table.prototype._createFillerCell):
(WI.Table.prototype._createCell):
(WI.Table.prototype._getOrCreateRow):
(WI.Table.prototype._populatedCellForColumnAndRow):
(WI.Table.prototype._populateRow):
(WI.Table.prototype._resizeColumnsAndFiller.distributeRemainingPixels):
(WI.Table.prototype._resizeColumnsAndFiller.bestFit):
(WI.Table.prototype._resizeColumnsAndFiller):
(WI.Table.prototype._updateVisibleRows):
(WI.Table.prototype._applyColumnWidths):
(WI.Table.prototype._positionResizerElements):
(WI.Table.prototype._isRowVisible):
(WI.Table.prototype._indexToInsertColumn):
(WI.Table.prototype._handleScroll):
(WI.Table.prototype._handleKeyDown):
(WI.Table.prototype._handleClick):
(WI.Table.prototype._handleContextMenu):
(WI.Table.prototype._handleHeaderCellClicked):
(WI.Table.prototype._handleHeaderContextMenu):
Table is mostly a re-implementation of DataGrid. Much of its functionality
was a direct copy that was then modified and simplified for a smaller
and simpler feature set.

Table behaves more like Cocoa's NSTableView. A datasource supplies the
number of rows, which Table uses to resize appropriately. A delegate is
then called to populate cells in a row when they become visible. Table
does minimal caching, and in the event of data source changes
(resorting, adding rows, modifying rows, etc) the visible rows are
simply recreated from scratch. Clients should therefore make generating
a cell's contents as simple and performant as possible.

Unlike DataGrid, rows are just an <li> with a bunch of cells. Since the
number of rows are limited to (roughly) those that are visible, most
operations, like resizing, creates / modifies each of the visible cells.

Finally, Table's resizing operations behave more like flexible content
than DataGrid's neighbor only approach. This makes resizing the table
generally easier to do, but may need refinement to decide which columns
we would prefer to distribute columns during resizing.

* UserInterface/Views/Table.css: Added.
(.table):
(.table > .header):
(.table > .header > .sortable:active):
(.table > .header > :matches(.sort-ascending, .sort-descending)):
(.table > .header > :matches(.sort-ascending, .sort-descending)::after):
(body[dir=ltr] .table > .header > :matches(.sort-ascending, .sort-descending)):
(body[dir=rtl] .table > .header > :matches(.sort-ascending, .sort-descending)):
(body[dir=ltr] .table > .header > :matches(.sort-ascending, .sort-descending)::after):
(body[dir=rtl] .table > .header > :matches(.sort-ascending, .sort-descending)::after):
(.table > .header > .sort-ascending::after):
(.table > .header > .sort-descending::after):
(.table > .data-container):
(.table > .data-container.not-scrollable):
(.table > .data-container > .data-list):
(.table > .data-container > .data-list.odd-first-zebra-stripe):
(.table > .data-container > .data-list > li):
(.table > .data-container > .data-list > li.selected):
(.table:focus > .data-container > .data-list li.selected):
(.table .cell):
(body[dir=ltr] .table .cell:not(:last-child)):
(body[dir=rtl] .table .cell:not(:last-child)):
(body[dir=ltr] .table .cell:first-child):
(body[dir=rtl] .table .cell:first-child):
(.table :not(.header) .cell:first-of-type):
(.table .cell.align-right):
(.table .cell.align-left):
(.table .cell.align-center):
Styles mostly taken from DataGrid with a few minor tweaks.

* UserInterface/Views/NetworkTableContentView.css: Copied from Source/WebInspectorUI/UserInterface/Views/NetworkGridContentView.css.
(.content-view.network .table .icon):
(body[dir=ltr] .content-view.network .table .icon):
(body[dir=rtl] .content-view.network .table .icon):
(.content-view.network .table li:not(.filler) .cell.name):
(.content-view.network .table .cache-type):
(.content-view.network .table .error):
* UserInterface/Views/NetworkTableContentView.js:
(WI.NetworkTableContentView):
(WI.NetworkTableContentView.shortDisplayNameForResourceType):
(WI.NetworkTableContentView.prototype.get navigationItems):
(WI.NetworkTableContentView.prototype.shown):
(WI.NetworkTableContentView.prototype.closed):
(WI.NetworkTableContentView.prototype.reset):
(WI.NetworkTableContentView.prototype.tableNumberOfRows):
(WI.NetworkTableContentView.prototype.tableSortChanged):
(WI.NetworkTableContentView.prototype.tableCellClicked):
(WI.NetworkTableContentView.prototype.tableCellContextMenuClicked):
(WI.NetworkTableContentView.prototype.tableSelectedRowChanged):
(WI.NetworkTableContentView.prototype.tablePopulateCell):
(WI.NetworkTableContentView.prototype._populateNameCell):
(WI.NetworkTableContentView.prototype._populateTransferSizeCell):
(WI.NetworkTableContentView.prototype._generateSortComparator):
(WI.NetworkTableContentView.prototype.initialLayout):
(WI.NetworkTableContentView.prototype.layout):
(WI.NetworkTableContentView.prototype._processPendingEntries):
(WI.NetworkTableContentView.prototype._rowIndexForResource):
(WI.NetworkTableContentView.prototype._updateEntryForResource):
(WI.NetworkTableContentView.prototype._mainResourceDidChange):
(WI.NetworkTableContentView.prototype._resourceLoadingDidFinish):
(WI.NetworkTableContentView.prototype._resourceLoadingDidFail):
(WI.NetworkTableContentView.prototype._resourceTransferSizeDidChange):
(WI.NetworkTableContentView.prototype._networkTimelineRecordAdded):
(WI.NetworkTableContentView.prototype._isDefaultSort):
(WI.NetworkTableContentView.prototype._insertResourceAndReloadTable):
(WI.NetworkTableContentView.prototype._displayType):
(WI.NetworkTableContentView.prototype._entryForResource):
(WI.NetworkTableContentView.prototype._passFilter):
(WI.NetworkTableContentView.prototype._updateSortAndFilteredEntries):
(WI.NetworkTableContentView.prototype._updateFilteredEntries):
(WI.NetworkTableContentView.prototype._generateTypeFilter):
(WI.NetworkTableContentView.prototype._areFilterListsIdentical):
(WI.NetworkTableContentView.prototype._typeFilterScopeBarSelectionChanged):
(WI.NetworkTableContentView.prototype._tableNameColumnDidChangeWidth):
The NetworkTableContentView has a Table and it is the table's data source
and delegate. It contains a complete list of entries, and a filtered list
of entries, which is the backing list of rows for the table. As entries
are created, updated, or filters modified, this generally modifies
entries, sorts, filters, and reloads the table. As much as possible it
batches operations in the usual layout loop.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222470 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoAdd High Sierra bots to buildbot and dashboard.
ryanhaddad@apple.com [Mon, 25 Sep 2017 21:30:55 +0000 (21:30 +0000)]
Add High Sierra bots to buildbot and dashboard.
https://bugs.webkit.org/show_bug.cgi?id=177437

Reviewed by Alexey Proskuryakov.

* BuildSlaveSupport/build.webkit.org-config/config.json: Add High Sierra queues, move Leaks and JSC queues over from Sierra.
* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py: Update expected results.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js: Add High Sierra.
(WebKitBuildbot):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222469 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[WK2] Add API to query if a download was user-initiated
cdumez@apple.com [Mon, 25 Sep 2017 21:28:01 +0000 (21:28 +0000)]
[WK2] Add API to query if a download was user-initiated
https://bugs.webkit.org/show_bug.cgi?id=177435
<rdar://problem/34498422>

Reviewed by Alex Christensen.

Source/WebKit:

Add C and Cocoa private API to query if a download was user-initiated.

For clarity, we now construct navigation object for subframe loads
as well (we used to do so only for main frame loads). This allows us
to store the user-intiated flag and the redirect chain on the navigation
object instead of the WebFrameProxy.

* UIProcess/API/APINavigation.cpp:
(API::Navigation::Navigation):
(API::Navigation::appendRedirectionURL):
* UIProcess/API/APINavigation.h:
(API::Navigation::takeRedirectChain):
(API::Navigation::setWasUserInitiated):
(API::Navigation::wasUserInitiated const):
* UIProcess/API/C/WKDownload.cpp:
(WKDownloadGetWasUserInitiated):
* UIProcess/API/C/WKDownload.h:
* UIProcess/API/Cocoa/_WKDownload.h:
* UIProcess/API/Cocoa/_WKDownload.mm:
(-[_WKDownload wasUserInitiated]):
* UIProcess/Downloads/DownloadProxy.h:
(WebKit::DownloadProxy::setWasUserInitiated):
(WebKit::DownloadProxy::wasUserInitiated const):
* UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::didStartProvisionalLoad):
(WebKit::WebFrameProxy::didReceiveServerRedirectForProvisionalLoad):
(WebKit::WebFrameProxy::didFailProvisionalLoad):
(WebKit::WebFrameProxy::didFinishLoad):
(WebKit::WebFrameProxy::didFailLoad):
* UIProcess/WebFrameProxy.h:
(WebKit::WebFrameProxy::title const):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::receivedPolicyDecision):
(WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
(WebKit::WebPageProxy::decidePolicyForResponse):
(WebKit::WebPageProxy::decidePolicyForResponseSync):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):

Tools:

Add API test coverage.

* TestWebKitAPI/Tests/WebKit/mac/ContextMenuDownload.mm:
(TestWebKitAPI::decideDestinationWithSuggestedFilename):
* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(-[DownloadDelegate _downloadDidStart:]):
(-[DownloadDelegate _downloadDidFinish:]):
(runTest):
(TEST):
(-[BlobDownloadDelegate _downloadDidStart:]):
(-[BlobDownloadDelegate _downloadDidFinish:]):
(-[RedirectedDownloadDelegate _downloadDidStart:]):
(-[RedirectedDownloadDelegate _downloadDidFinish:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222468 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoMake StoredCredentials an enum class and rename its header
cdumez@apple.com [Mon, 25 Sep 2017 21:17:43 +0000 (21:17 +0000)]
Make StoredCredentials an enum class and rename its header
https://bugs.webkit.org/show_bug.cgi?id=177455

Reviewed by Youenn Fablet.

Make StoredCredentials an enum class and rename its header for clarity. This was error-prone because 0 meant
"allow" and and 1 meant "do not allow". It was trivial to convert it to a boolean by mistake and get the
opposite behavior.

Source/WebCore:

* WebCore.xcodeproj/project.pbxproj:
* css/StyleRuleImport.cpp:
(WebCore::StyleRuleImport::requestStyleSheet):
* loader/CrossOriginAccessControl.cpp:
(WebCore::updateRequestForAccessControl):
(WebCore::createAccessControlPreflightRequest):
(WebCore::passesAccessControlCheck):
(WebCore::validatePreflightResponse):
* loader/CrossOriginAccessControl.h:
* loader/CrossOriginPreflightChecker.cpp:
(WebCore::CrossOriginPreflightChecker::validatePreflightResponse):
(WebCore::CrossOriginPreflightChecker::doPreflight):
* loader/CrossOriginPreflightResultCache.cpp:
(WebCore::CrossOriginPreflightResultCacheItem::allowsRequest const):
(WebCore::CrossOriginPreflightResultCache::canSkipPreflight):
* loader/CrossOriginPreflightResultCache.h:
(WebCore::CrossOriginPreflightResultCacheItem::CrossOriginPreflightResultCacheItem):
* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::startLoadingMainResource):
* loader/DocumentThreadableLoader.cpp:
(WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
(WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequest):
(WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest):
(WebCore::DocumentThreadableLoader::redirectReceived):
(WebCore::DocumentThreadableLoader::preflightSuccess):
(WebCore::DocumentThreadableLoader::loadRequest):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadResourceSynchronously):
* loader/FrameLoader.h:
* loader/LoaderStrategy.h:
* loader/MediaResourceLoader.cpp:
(WebCore::MediaResourceLoader::requestResource):
* loader/NetscapePlugInStreamLoader.cpp:
(WebCore::NetscapePlugInStreamLoader::NetscapePlugInStreamLoader):
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::shouldUseCredentialStorage):
(WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
* loader/ResourceLoaderOptions.h:
(WebCore::ResourceLoaderOptions::ResourceLoaderOptions):
* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::checkResponseCrossOriginAccessControl):
(WebCore::SubresourceLoader::checkRedirectionCrossOriginAccessControl):
* loader/ThreadableLoader.cpp:
(WebCore::ThreadableLoaderOptions::isolatedCopy const):
* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::loadFrom):
* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::defaultCachedResourceOptions):
* loader/cache/CachedResourceRequest.cpp:
(WebCore::CachedResourceRequest::setAsPotentiallyCrossOrigin):
(WebCore::CachedResourceRequest::updateForAccessControl):
* loader/icon/IconLoader.cpp:
(WebCore::IconLoader::startLoading):
* platform/graphics/avfoundation/cf/WebCoreAVCFResourceLoader.cpp:
(WebCore::WebCoreAVCFResourceLoader::startLoading):
* platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:
(WebCore::WebCoreAVFResourceLoader::startLoading):
* platform/network/BlobRegistryImpl.cpp:
(WebCore::loadBlobResourceSynchronously):
* platform/network/ResourceHandle.cpp:
(WebCore::ResourceHandle::loadResourceSynchronously):
* platform/network/ResourceHandle.h:
* platform/network/StoredCredentialsPolicy.h: Renamed from Source/WebCore/platform/network/ResourceHandleTypes.h.
* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::ResourceHandle::platformLoadResourceSynchronously):
* platform/network/curl/ResourceHandleCurl.cpp:
(WebCore::ResourceHandle::platformLoadResourceSynchronously):
* platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::platformLoadResourceSynchronously):
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::ResourceHandle::platformLoadResourceSynchronously):
* style/StylePendingResources.cpp:
(WebCore::Style::loadPendingImage):
* xml/XSLTProcessorLibxslt.cpp:
(WebCore::docLoaderFunc):
* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::openFunc):

Source/WebKit:

* NetworkProcess/Downloads/DownloadManager.cpp:
(WebKit::DownloadManager::startDownload):
* NetworkProcess/NetworkCORSPreflightChecker.cpp:
(WebKit::NetworkCORSPreflightChecker::didCompleteWithError):
* NetworkProcess/NetworkCORSPreflightChecker.h:
* NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::loadPing):
* NetworkProcess/NetworkDataTask.cpp:
(WebKit::NetworkDataTask::create):
(WebKit::NetworkDataTask::NetworkDataTask):
* NetworkProcess/NetworkDataTask.h:
* NetworkProcess/NetworkDataTaskBlob.cpp:
(WebKit::NetworkDataTaskBlob::NetworkDataTaskBlob):
* NetworkProcess/NetworkLoad.cpp:
(WebKit::NetworkLoad::shouldUseCredentialStorage):
* NetworkProcess/NetworkLoadParameters.h:
* NetworkProcess/NetworkResourceLoadParameters.cpp:
(WebKit::NetworkResourceLoadParameters::encode const):
(WebKit::NetworkResourceLoadParameters::decode):
* NetworkProcess/PingLoad.cpp:
(WebKit::PingLoad::willPerformHTTPRedirection):
(WebKit::PingLoad::makeCrossOriginAccessRequest):
(WebKit::PingLoad::makeSimpleCrossOriginAccessRequest):
(WebKit::PingLoad::makeCrossOriginAccessRequestWithPreflight):
(WebKit::PingLoad::preflightSuccess):
* NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp:
(WebKit::NetworkCache::SpeculativeLoad::SpeculativeLoad):
* NetworkProcess/capture/NetworkDataTaskReplay.cpp:
(WebKit::NetworkCapture::NetworkDataTaskReplay::NetworkDataTaskReplay):
* NetworkProcess/cocoa/NetworkDataTaskCocoa.h:
* NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
(WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa):
(WebKit::NetworkDataTaskCocoa::~NetworkDataTaskCocoa):
(WebKit::NetworkDataTaskCocoa::tryPasswordBasedAuthentication):
* NetworkProcess/cocoa/NetworkSessionCocoa.h:
* NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(-[WKNetworkSessionDelegate existingTask:]):
(WebKit::NetworkSessionCocoa::dataTaskForIdentifier):
* NetworkProcess/soup/NetworkDataTaskSoup.cpp:
(WebKit::NetworkDataTaskSoup::NetworkDataTaskSoup):
(WebKit::NetworkDataTaskSoup::createRequest):
(WebKit::NetworkDataTaskSoup::authenticate):
(WebKit::NetworkDataTaskSoup::continueAuthenticate):
(WebKit::NetworkDataTaskSoup::continueHTTPRedirection):
* NetworkProcess/soup/NetworkDataTaskSoup.h:
* WebProcess/Network/WebLoaderStrategy.cpp:
(WebKit::WebLoaderStrategy::scheduleLoad):
(WebKit::WebLoaderStrategy::loadResourceSynchronously):
(WebKit::WebLoaderStrategy::startPingLoad):
* WebProcess/Network/WebLoaderStrategy.h:

Source/WebKitLegacy:

* WebCoreSupport/WebResourceLoadScheduler.cpp:
(WebResourceLoadScheduler::loadResourceSynchronously):
* WebCoreSupport/WebResourceLoadScheduler.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222467 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoSpeedometer: Fix typo
commit-queue@webkit.org [Mon, 25 Sep 2017 21:11:35 +0000 (21:11 +0000)]
Speedometer: Fix typo
https://bugs.webkit.org/show_bug.cgi?id=177425

Patch by Mathias Bynens <mathias@qiwi.be> on 2017-09-25
Reviewed by Ryosuke Niwa.

* Speedometer/InteractiveRunner.html: Fix typo: “Arithemtic Mean” → “Arithmetic Mean”.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222466 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoRemove unnecessary userVisibleString EditorClient function
commit-queue@webkit.org [Mon, 25 Sep 2017 21:08:10 +0000 (21:08 +0000)]
Remove unnecessary userVisibleString EditorClient function
https://bugs.webkit.org/show_bug.cgi?id=177456

Patch by Sam Weinig <sam@webkit.org> on 2017-09-25
Reviewed by Dan Bernstein.

Source/WebCore:

The implementation of userVisibleString has been in WebCore for sometime (in WebCoreNSURLExtras)
so there is no need to call through the EditorClient, just for it to call back to WebCore.

* editing/Editor.h:

    Keep userVisibleString helper function but make it static, as it no longer needs
    any state. It is useful to have this helper, so non-ObjC code in Editor can get a
    userVisibleString.

* editing/cocoa/EditorCocoa.mm:
(WebCore::Editor::userVisibleString):

    Call through to the WebCoreNSURLExtras implementation.

* editing/mac/EditorMac.mm:
(WebCore::Editor::plainTextFromPasteboard):
(WebCore::Editor::writeImageToPasteboard):
(WebCore::Editor::userVisibleString): Deleted.
* editing/mac/WebContentReaderMac.mm:
(WebCore::WebContentReader::readFilenames):

    Replace client calls with direct calls.

* loader/EmptyClients.cpp:
* page/EditorClient.h:

    Remove client function.

* testing/Internals.mm:
(WebCore::Internals::userVisibleString):

    Replace client call with direct call.

Source/WebKit:

* WebProcess/WebCoreSupport/WebEditorClient.h:
* WebProcess/WebCoreSupport/ios/WebEditorClientIOS.mm:
(WebKit::WebEditorClient::userVisibleString): Deleted.
* WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
(WebKit::WebEditorClient::userVisibleString): Deleted.

    Remove userVisibleString client function.

Source/WebKitLegacy/mac:

* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::userVisibleString): Deleted.

    Remove userVisibleString client function.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222465 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoFix the build with <attachment> disabled
timothy_horton@apple.com [Mon, 25 Sep 2017 21:05:06 +0000 (21:05 +0000)]
Fix the build with <attachment> disabled

* editing/mac/WebContentReaderMac.mm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222464 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUnreviewed Windows build fix.
pvollan@apple.com [Mon, 25 Sep 2017 20:50:48 +0000 (20:50 +0000)]
Unreviewed Windows build fix.

* platform/graphics/avfoundation/cf/InbandTextTrackPrivateAVCF.cpp:
(WebCore::InbandTextTrackPrivateAVCF::readNativeSampleBuffer):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222463 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUnreviewed, rolling out r222455.
commit-queue@webkit.org [Mon, 25 Sep 2017 20:38:23 +0000 (20:38 +0000)]
Unreviewed, rolling out r222455.
https://bugs.webkit.org/show_bug.cgi?id=177460

broke iOS build (Requested by alexchristensen on #webkit).

Reverted changeset:

"Add WKContentRuleList notify action type"
https://bugs.webkit.org/show_bug.cgi?id=177013
http://trac.webkit.org/changeset/222455

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222462 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUnreviewed GTK test gardening
mcatanzaro@igalia.com [Mon, 25 Sep 2017 20:20:21 +0000 (20:20 +0000)]
Unreviewed GTK test gardening

* platform/gtk/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222461 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[Win] run-api-tests is failing.
pvollan@apple.com [Mon, 25 Sep 2017 20:07:35 +0000 (20:07 +0000)]
[Win] run-api-tests is failing.
https://bugs.webkit.org/show_bug.cgi?id=177454

Reviewed by Brent Fulgham.

TestWebKit.exe has changed name to TestWebKitLegacy.exe.

* Scripts/run-api-tests:
(testToolPaths):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222460 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoBuilding release with -DLOG_DISABLED=0 fails
clopez@igalia.com [Mon, 25 Sep 2017 20:06:12 +0000 (20:06 +0000)]
Building release with -DLOG_DISABLED=0 fails
https://bugs.webkit.org/show_bug.cgi?id=177441

Reviewed by Michael Catanzaro.

No new tests, it is a build fix.

* Modules/indexeddb/IDBKeyPath.cpp:
* Modules/indexeddb/IDBKeyPath.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222459 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[Win] Cygwin 64-bit EWS process cannot find Visual Studio installation.
pvollan@apple.com [Mon, 25 Sep 2017 19:55:31 +0000 (19:55 +0000)]
[Win] Cygwin 64-bit EWS process cannot find Visual Studio installation.
https://bugs.webkit.org/show_bug.cgi?id=177244

Reviewed by Alex Christensen.

The 64-bit EWS shell process should try to find Visual Studio in the 32-bit program files folder.

* EWSTools/start-queue-win.sh:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222458 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoSwitch back to partitioning (rather than blocking) prevalent origins without interaction
bfulgham@apple.com [Mon, 25 Sep 2017 19:47:50 +0000 (19:47 +0000)]
Switch back to partitioning (rather than blocking) prevalent origins without interaction
https://bugs.webkit.org/show_bug.cgi?id=177452
<rdar://problem/34632618>

Reviewed by Chris Dumez.

Temporarily revert to "partition-only" behavior, due to site compatibility issues with
full blocking.

* platform/network/cf/NetworkStorageSessionCFNet.cpp:
(WebCore::NetworkStorageSession::setPrevalentDomainsToPartitionOrBlockCookies):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222457 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoSeparate form submission from PolicyChecker infrastructure
achristensen@apple.com [Mon, 25 Sep 2017 19:18:50 +0000 (19:18 +0000)]
Separate form submission from PolicyChecker infrastructure
https://bugs.webkit.org/show_bug.cgi?id=177396

Reviewed by Geoffrey Garen.

Source/WebCore:

We used PolicyChecker for WillSubmitForm even though we just need a completion handler
with no parameters.  That is what lambdas and WTF::Functions are for.

No change in behavior.

* loader/EmptyClients.cpp:
(WebCore::EmptyFrameLoaderClient::dispatchWillSubmitForm):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
(WebCore::FrameLoader::continueLoadAfterWillSubmitForm): Deleted.
* loader/FrameLoader.h:
* loader/FrameLoaderClient.h:
* loader/PolicyChecker.cpp:
(WebCore::PolicyChecker::continueLoadAfterWillSubmitForm): Deleted.
* loader/PolicyChecker.h:

Source/WebKit:

* UIProcess/API/APIFormClient.h:
(API::FormClient::willSubmitForm):
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _setInputDelegate:]):
* UIProcess/WebFormClient.cpp:
(WebKit::WebFormClient::willSubmitForm):
* UIProcess/WebFormClient.h:
* UIProcess/WebFormSubmissionListenerProxy.cpp:
(WebKit::WebFormSubmissionListenerProxy::continueSubmission):
(WebKit::WebFormSubmissionListenerProxy::WebFormSubmissionListenerProxy): Deleted.
* UIProcess/WebFormSubmissionListenerProxy.h:
(WebKit::WebFormSubmissionListenerProxy::create):
(WebKit::WebFormSubmissionListenerProxy::WebFormSubmissionListenerProxy):
(): Deleted.
(WebKit::WebFormSubmissionListenerProxy::operator new): Deleted.
* UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::setUpFormSubmissionListenerProxy): Deleted.
* UIProcess/WebFrameProxy.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::willSubmitForm):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
(WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
* WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::setUpWillSubmitFormListener):
(WebKit::WebFrame::continueWillSubmitForm):
* WebProcess/WebPage/WebFrame.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::continueWillSubmitForm):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:

Source/WebKitLegacy/mac:

* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchWillSubmitForm):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222456 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoAdd WKContentRuleList notify action type
achristensen@apple.com [Mon, 25 Sep 2017 19:17:28 +0000 (19:17 +0000)]
Add WKContentRuleList notify action type
https://bugs.webkit.org/show_bug.cgi?id=177013
<rdar://problem/31073936>

Reviewed by Darin Adler.

Source/WebCore:

Covered by new API tests.

* contentextensions/ContentExtensionActions.h:
(WebCore::ContentExtensions::hasStringArgument):
* contentextensions/ContentExtensionCompiler.cpp:
(WebCore::ContentExtensions::resolvePendingDisplayNoneActions):
(WebCore::ContentExtensions::serializeActions):
* contentextensions/ContentExtensionError.cpp:
(WebCore::ContentExtensions::contentExtensionErrorCategory):
* contentextensions/ContentExtensionError.h:
* contentextensions/ContentExtensionParser.cpp:
(WebCore::ContentExtensions::loadAction):
* contentextensions/ContentExtensionRule.cpp:
(WebCore::ContentExtensions::Action::deserialize):
(WebCore::ContentExtensions::Action::deserializeType):
(WebCore::ContentExtensions::Action::serializedLength):
* contentextensions/ContentExtensionRule.h:
(WebCore::ContentExtensions::Action::Action):
* contentextensions/ContentExtensionsBackend.cpp:
(WebCore::ContentExtensions::ContentExtensionsBackend::processContentExtensionRulesForLoad):
(WebCore::ContentExtensions::ContentExtensionsBackend::processContentExtensionRulesForPingLoad):
(WebCore::ContentExtensions::applyBlockedStatusToRequest):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadResourceSynchronously):
* loader/PingLoader.cpp:
(WebCore::processContentExtensionRulesForLoad):
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::willSendRequestInternal):
* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::requestResource):
* loader/cache/CachedResourceRequest.cpp:
(WebCore::CachedResourceRequest::applyBlockedStatus):
* loader/cache/CachedResourceRequest.h:
* page/ChromeClient.h:

Source/WebKit:

* NetworkProcess/PingLoad.cpp:
(WebKit::PingLoad::processContentExtensionRulesForLoad):
* UIProcess/API/APINavigationClient.h:
(API::NavigationClient::contentRuleListNotification):
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPageNavigationClient):
* UIProcess/API/C/WKPageNavigationClient.h:
* UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h:
* UIProcess/Cocoa/NavigationState.h:
* UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::setNavigationDelegate):
(WebKit::NavigationState::NavigationClient::contentRuleListNotification):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::contentRuleListNotification):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::contentRuleListNotification):
* WebProcess/WebCoreSupport/WebChromeClient.h:

Tools:

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
(WebCore::ContentExtensions::operator<<):
(TestWebKitAPI::InMemoryCompiledContentExtension::create):
(TestWebKitAPI::InMemoryCompiledContentExtension::data):
(TestWebKitAPI::InMemoryCompiledContentExtension::InMemoryCompiledContentExtension):
(TestWebKitAPI::makeBackend):
(TestWebKitAPI::TEST_F):
(TestWebKitAPI::actionsEqual):
(TestWebKitAPI::sequenceInstances):
(TestWebKitAPI::InMemoryCompiledContentExtension::createFromFilter): Deleted.
(TestWebKitAPI::InMemoryCompiledContentExtension::~InMemoryCompiledContentExtension): Deleted.
* TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm: Added.
(-[ContentRuleListNotificationDelegate _webView:URL:contentRuleListIdentifiers:notifications:]):
(-[ContentRuleListNotificationDelegate webView:startURLSchemeTask:]):
(-[ContentRuleListNotificationDelegate webView:stopURLSchemeTask:]):
(-[ContentRuleListNotificationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
(makeWarnContentRuleList):
(TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222455 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[WebIDL] Remove GetterMayThrowException
weinig@apple.com [Mon, 25 Sep 2017 19:16:14 +0000 (19:16 +0000)]
[WebIDL] Remove GetterMayThrowException
https://bugs.webkit.org/show_bug.cgi?id=177422

Reviewed by Youenn Fablet.

* bindings/js/JSDOMConvertBase.h:
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

    Add overloads of toJS and toJSNewlyCreated that take ThrowScopes and a value that
    is not an ExceptionOr (keeping the existing overloads that take an ExceptionOr).
    This allows NativeToJSValue to not need to know of a conversion can throw, as the
    c++ type system will now make the determination for it.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateSerializerDefinition):
(NativeToJSValueUsingReferences):
(NativeToJSValueUsingPointers):
(NativeToJSValue):

    Always assume an exception can be thrown for attributes now that the converters will
    do the right thing based on whether the value is an ExceptionOr or not. Also, remove
    $suppressExceptionCheck and $excludeNullability, they were never being set.

* bindings/scripts/IDLAttributes.json:

    Remove GetterMayThrowException from the list of supported extended attributes.

* Modules/indexeddb/IDBRequest.idl:
* Modules/mediasource/SourceBuffer.idl:
* Modules/webdatabase/SQLResultSet.idl:
* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/TestTypedefs.idl:
* dom/Document.idl:
* html/HTMLInputElement.idl:
* page/DOMWindow.idl:
* page/History.idl:
* svg/SVGLength.idl:
* xml/XMLHttpRequest.idl:
* xml/XPathResult.idl:

    Remove GetterMayThrowException extended attribute from IDL files.

* bindings/scripts/test/JS/JSMapLike.cpp:
* bindings/scripts/test/JS/JSReadOnlyMapLike.cpp:
* bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
* bindings/scripts/test/JS/JSTestCEReactions.cpp:
* bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:
* bindings/scripts/test/JS/JSTestCallTracer.cpp:
* bindings/scripts/test/JS/JSTestDOMJIT.cpp:
* bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:
* bindings/scripts/test/JS/JSTestEventConstructor.cpp:
* bindings/scripts/test/JS/JSTestException.cpp:
* bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
* bindings/scripts/test/JS/JSTestGlobalObject.cpp:
* bindings/scripts/test/JS/JSTestInterface.cpp:
* bindings/scripts/test/JS/JSTestInterfaceLeadingUnderscore.cpp:
* bindings/scripts/test/JS/JSTestNamedSetterWithUnforgableProperties.cpp:
* bindings/scripts/test/JS/JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins.cpp:
* bindings/scripts/test/JS/JSTestNode.cpp:
* bindings/scripts/test/JS/JSTestObj.cpp:
* bindings/scripts/test/JS/JSTestPromiseRejectionEvent.cpp:
* bindings/scripts/test/JS/JSTestSerialization.cpp:
* bindings/scripts/test/JS/JSTestSerializationInherit.cpp:
* bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
* bindings/scripts/test/JS/JSTestStringifierReadOnlyAttribute.cpp:
* bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:
* bindings/scripts/test/JS/JSTestTypedefs.cpp:

    Update test results.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222454 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoMake progress on getting Mac CMake building again
timothy_horton@apple.com [Mon, 25 Sep 2017 19:03:00 +0000 (19:03 +0000)]
Make progress on getting Mac CMake building again
https://bugs.webkit.org/show_bug.cgi?id=177443

Unreviewed, just "fixing" the build.

.:

* Source/cmake/OptionsMac.cmake:
Turn on WEB_CRYPTO on Mac. We need to do a bigger cleanup of feature
defines, but this one is important because we have SUBTLE_CRYPTO on
and there is some amount of interdependency.

Source/WebCore:

* PlatformMac.cmake:
Add some missing files and include paths.

Source/WebCore/PAL:

* pal/PlatformMac.cmake:
Add some missing files and include paths.

Source/WebKit:

* PlatformMac.cmake:
Add some missing files and include paths.

Source/WebKitLegacy:

* PlatformMac.cmake:
Set up dependencies correctly for our mig-generated files.
MAIN_DEPENDENCY is for VS, not what it sounds like.

Add mig-generated files to WebKitLegacy, not WebKit (I think this was
missed in the WebKit2 rename).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222452 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoMark fast/loader/form-submission-after-beforeunload-cancel.html as flaky.
ryanhaddad@apple.com [Mon, 25 Sep 2017 18:41:26 +0000 (18:41 +0000)]
Mark fast/loader/form-submission-after-beforeunload-cancel.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=177445

Unreviewed test gardening.

* platform/ios/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222451 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoMark imported/w3c/web-platform-tests/fetch/security/embedded-credentials.tentative...
ryanhaddad@apple.com [Mon, 25 Sep 2017 17:43:06 +0000 (17:43 +0000)]
Mark imported/w3c/web-platform-tests/fetch/security/embedded-credentials.tentative.sub.html as flaky on iOS.
https://bugs.webkit.org/show_bug.cgi?id=177323

Unreviewed test gardening.

* platform/ios/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222450 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoMark http/tests/cache-storage/cache-representation.https.html as flaky.
ryanhaddad@apple.com [Mon, 25 Sep 2017 17:33:58 +0000 (17:33 +0000)]
Mark http/tests/cache-storage/cache-representation.https.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=177438

Unreviewed test gardening.

* platform/ios/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222449 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUpdate TestExpectations for WPT LayoutTests that crash.
ryanhaddad@apple.com [Mon, 25 Sep 2017 17:26:52 +0000 (17:26 +0000)]
Update TestExpectations for WPT LayoutTests that crash.

Unreviewed test gardening.

* TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222448 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agowebrtc/peer-connection-audio-mute.html is sometimes flaky
commit-queue@webkit.org [Mon, 25 Sep 2017 16:01:47 +0000 (16:01 +0000)]
webrtc/peer-connection-audio-mute.html is sometimes flaky
https://bugs.webkit.org/show_bug.cgi?id=172649

Patch by Youenn Fablet <youenn@apple.com> on 2017-09-25
Reviewed by Darin Adler.

Iterating until getting the expected result to make test more stable.

* webrtc/peer-connection-audio-mute.html:
* webrtc/peer-connection-remote-audio-mute.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222447 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoMake captureCanvas-webrtc.html more robust
commit-queue@webkit.org [Mon, 25 Sep 2017 16:00:42 +0000 (16:00 +0000)]
Make captureCanvas-webrtc.html more robust
https://bugs.webkit.org/show_bug.cgi?id=177334

Patch by Youenn Fablet <youenn@apple.com> on 2017-09-25
Reviewed by Darin Adler.

Making test more robust by printing synchronously the canvas and increasing.
the threshold for pixel comparison.
Minor refactoring for improving the readability.

* webrtc/captureCanvas-webrtc.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222446 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoLayoutTest webrtc/video-mute.html is very often failing
commit-queue@webkit.org [Mon, 25 Sep 2017 15:59:58 +0000 (15:59 +0000)]
LayoutTest webrtc/video-mute.html is very often failing
https://bugs.webkit.org/show_bug.cgi?id=177331

Patch by Youenn Fablet <youenn@apple.com> on 2017-09-25
Reviewed by Darin Adler.

* webrtc/video-mute.html: using getStats instead of internals to check whether black frames are received.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222445 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUpdate waitSync and the TIMEOUT_IGNORED constant to use signed integers.
Ms2ger@igalia.com [Mon, 25 Sep 2017 13:38:57 +0000 (13:38 +0000)]
Update waitSync and the TIMEOUT_IGNORED constant to use signed integers.
https://bugs.webkit.org/show_bug.cgi?id=177239

Reviewed by Žan Doberšek.

This matches the specification.

Source/WebCore:

Test: fast/canvas/webgl/webgl2/constants.html

* html/canvas/WebGL2RenderingContext.cpp:
(WebCore::WebGL2RenderingContext::waitSync):
* html/canvas/WebGL2RenderingContext.h:
* html/canvas/WebGL2RenderingContext.idl:

LayoutTests:

* fast/canvas/webgl/webgl2/constants-expected.txt: Added.
* fast/canvas/webgl/webgl2/constants.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222444 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoAlign Media Source Extension IDL with spec
nael.ouedraogo@crf.canon.fr [Mon, 25 Sep 2017 12:27:37 +0000 (12:27 +0000)]
Align Media Source Extension IDL with spec
https://bugs.webkit.org/show_bug.cgi?id=177369

Reviewed by Sam Weinig.

Align IDL as per specification:
 - https://www.w3.org/TR/media-source/

* Modules/mediasource/AudioTrackMediaSource.idl:
* Modules/mediasource/SourceBuffer.idl:
* Modules/mediasource/TextTrackMediaSource.idl:
* Modules/mediasource/VideoTrackMediaSource.idl:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222443 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoREGRESSION(r222160) [GTK] [Debug] Internal compiler error on the buildbot (huge memor...
clopez@igalia.com [Mon, 25 Sep 2017 12:21:47 +0000 (12:21 +0000)]
REGRESSION(r222160) [GTK] [Debug] Internal compiler error on the buildbot (huge memory usage by GCC)
https://bugs.webkit.org/show_bug.cgi?id=177223

Reviewed by Carlos Garcia Campos.

When the user environment sets the variable NUMBER_OF_PROCESSORS
this should be passed down to the build system (ninja or make) always.

Playing with the number of this variable is needed when using icecc
(as you usually want to launch more parallel build process than your
number of cores), or when you want to limit the number of parallel
build process for hardware capacity reasons.

* Scripts/build-webkit:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222442 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[css-grid] Small refactoring adding RenderGrid::contentAlignment()
rego@igalia.com [Mon, 25 Sep 2017 08:39:48 +0000 (08:39 +0000)]
[css-grid] Small refactoring adding RenderGrid::contentAlignment()
https://bugs.webkit.org/show_bug.cgi?id=177130

Reviewed by Sergio Villar Senin.

As a follow-up of r221931, this patch does a small refactoring
adding a new method RenderGrid::contentAlignment()
that is used from RenderGrid and GridTrackSizingAlgorithm.

No new tests, no change of behavior.

* rendering/GridTrackSizingAlgorithm.cpp:
(WebCore::GridTrackSizingAlgorithm::stretchAutoTracks):
* rendering/RenderGrid.cpp:
(WebCore::contentAlignmentNormalBehaviorGrid):
(WebCore::RenderGrid::contentAlignment const):
(WebCore::RenderGrid::computeContentPositionAndDistributionOffset const):
(WebCore::RenderGrid::contentAlignmentNormalBehaviorGrid): Deleted.
* rendering/RenderGrid.h:
* rendering/style/RenderStyle.cpp:
(WebCore::resolvedContentAlignment):
(WebCore::RenderStyle::resolvedAlignContent const):
(WebCore::RenderStyle::resolvedJustifyContent const):
* rendering/style/RenderStyle.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222441 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[css-grid] fit-content() tracks shouldn't stretch
rego@igalia.com [Mon, 25 Sep 2017 07:28:07 +0000 (07:28 +0000)]
[css-grid] fit-content() tracks shouldn't stretch
https://bugs.webkit.org/show_bug.cgi?id=177300

Reviewed by Sergio Villar Senin.

LayoutTests/imported/w3c:

Imported a new test in WPT covering several cases for this issue.

* web-platform-tests/css/css-grid-1/alignment/grid-fit-content-tracks-dont-stretch-001-expected.txt: Added.
* web-platform-tests/css/css-grid-1/alignment/grid-fit-content-tracks-dont-stretch-001.html: Added.
* web-platform-tests/css/css-grid-1/alignment/w3c-import.log:

Source/WebCore:

The spec is pretty clear regarding this
(https://drafts.csswg.org/css-grid/#algo-stretch):
  "This step sizes expands tracks that have an auto max track sizing
   function by dividing any remaining positive, definite free space
   equally amongst them."

The fit-content() tracks don't have an auto max track sizing function,
so they shouldn't be considered in this step of the algorithm.

The patch modifies GridTrackSizingAlgorithm::initializeTrackSizes()
so it doesn't consider fit-content() tracks as auto sized ones
(which are the ones later stretched in the last step of the algorithm).

Test: imported/w3c/web-platform-tests/css/css-grid-1/alignment/grid-fit-content-tracks-dont-stretch-001.html

* rendering/GridTrackSizingAlgorithm.cpp:
(WebCore::GridTrackSizingAlgorithm::initializeTrackSizes):
(WebCore::GridTrackSizingAlgorithm::stretchAutoTracks):
(WebCore::GridTrackSizingAlgorithm::setup):
(WebCore::GridTrackSizingAlgorithm::reset):
* rendering/GridTrackSizingAlgorithm.h:

LayoutTests:

Added new case to an existent test and also modified
the expected result in another one.

* fast/css-grid-layout/grid-content-alignment-stretch-only-valid-for-auto-sized-tracks-expected.txt:
* fast/css-grid-layout/grid-content-alignment-stretch-only-valid-for-auto-sized-tracks.html:
* fast/css-grid-layout/grid-intrinsic-maximums-expected.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222440 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[GTK] Incremental builds fail every time Web Inspector icons are removed
commit-queue@webkit.org [Mon, 25 Sep 2017 05:57:01 +0000 (05:57 +0000)]
[GTK] Incremental builds fail every time Web Inspector icons are removed
https://bugs.webkit.org/show_bug.cgi?id=177349

Patch by Fujii Hironori <Hironori.Fujii@sony.com> on 2017-09-24
Reviewed by Carlos Garcia Campos.

Removing GTK WebInspector image files always breaks the GTK and
WPE ports incremental builds.

* Scripts/webkitdirs.pm:
(shouldRemoveCMakeCache): Check the timestamp of
Source/WebInspectorUI/UserInterface/Images/gtk directory if
isGtk() or isWPE().

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222439 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoViewport fit is no longer experimental
mcatanzaro@igalia.com [Mon, 25 Sep 2017 03:02:24 +0000 (03:02 +0000)]
Viewport fit is no longer experimental
https://bugs.webkit.org/show_bug.cgi?id=177417

Reviewed by Darin Adler.

* Shared/WebPreferencesDefinitions.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222438 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[GTK] Unreviewed, move webkit_hit_test_result_context_is_scrollbar in documentation
mcatanzaro@igalia.com [Sun, 24 Sep 2017 23:52:28 +0000 (23:52 +0000)]
[GTK] Unreviewed, move webkit_hit_test_result_context_is_scrollbar in documentation

* UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222437 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoWeb Inspector: Reduce work during resizing
commit-queue@webkit.org [Sun, 24 Sep 2017 18:55:03 +0000 (18:55 +0000)]
Web Inspector: Reduce work during resizing
https://bugs.webkit.org/show_bug.cgi?id=177402

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2017-09-24
Reviewed by Matt Baker.

* UserInterface/Views/ConsolePrompt.js:
(WI.ConsolePrompt.prototype.layout):
In the most common case there is no text so avoid doing work in CodeMirror.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222436 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoRemove CSS regions related fields from RenderStyle
antti@apple.com [Sun, 24 Sep 2017 18:30:54 +0000 (18:30 +0000)]
Remove CSS regions related fields from RenderStyle
https://bugs.webkit.org/show_bug.cgi?id=177415

Reviewed by Sam Weinig.

* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::operator RegionFragment const): Deleted.
* css/StyleResolver.cpp:
(WebCore::StyleResolver::adjustRenderStyle):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::avoidsFloats const): Deleted.
* rendering/RenderBlock.h:
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::hasNextPage const):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects const):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::changeRequiresLayout const):
* rendering/style/RenderStyle.h:
(WebCore::pseudoElementRendererIsNeeded):
(WebCore::RenderStyle::hasFlowInto const): Deleted.
(WebCore::RenderStyle::flowThread const): Deleted.
(WebCore::RenderStyle::hasFlowFrom const): Deleted.
(WebCore::RenderStyle::regionThread const): Deleted.
(WebCore::RenderStyle::regionFragment const): Deleted.
(WebCore::RenderStyle::setFlowThread): Deleted.
(WebCore::RenderStyle::setRegionThread): Deleted.
(WebCore::RenderStyle::setRegionFragment): Deleted.
(WebCore::RenderStyle::initialFlowThread): Deleted.
(WebCore::RenderStyle::initialRegionThread): Deleted.
(WebCore::RenderStyle::initialRegionFragment): Deleted.
* rendering/style/RenderStyleConstants.h:
* rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator== const):
* rendering/style/StyleRareNonInheritedData.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222435 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoAlphabetize experimental features list
mcatanzaro@igalia.com [Sun, 24 Sep 2017 15:07:32 +0000 (15:07 +0000)]
Alphabetize experimental features list
https://bugs.webkit.org/show_bug.cgi?id=177374

Reviewed by Darin Adler.

* Shared/WebPreferencesDefinitions.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222434 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[ATK] Object attributes are missing for ARIA live region roles
jdiggs@igalia.com [Sun, 24 Sep 2017 11:52:36 +0000 (11:52 +0000)]
[ATK] Object attributes are missing for ARIA live region roles
https://bugs.webkit.org/show_bug.cgi?id=171174

Reviewed by Chris Fleizach.

Source/WebCore:

Expose the values of aria-live, aria-atomic, and aria-relevant via AtkObject
attributes on live region elements and their descendants. In order to accomplish
exposure on descendants, add AccessibilityObject::ariaLiveRegionAncestor(). Add an
optional argument, excludeIfOff, to AccessibilityObject::isInsideARIALiveRegion()
and AccessibilityObject::supportsARIALiveRegion(). This is needed because we need
to expose live region properties via ATK even in the case where the live region
is disabled/off, but supportsARIALiveRegion() deliberately checks if the live
region is enabled.

Tests: accessibility/aria-liveregion-marquee-default.html
       accessibility/aria-liveregions-attributes.html

* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::isInsideARIALiveRegion const):
(WebCore::AccessibilityObject::ariaLiveRegionAncestor const):
(WebCore::AccessibilityObject::supportsARIALiveRegion const):
* accessibility/AccessibilityObject.h:
* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetAttributes):

Tools:

Add support for testing property values for AXARIALive, AXARIAAtomic, and
AXARIARelevant. Also add handling for testing whether AXElementBusy is
"supported" (in ATK, busy is a state and is supported on all elements
regardless of whether the state is present or absent from the state set).

* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::boolAttributeValue):
(WTR::AccessibilityUIElement::isAttributeSupported):

LayoutTests:

Move two macOS tests to the shared layout test set.

* accessibility/aria-liveregion-marquee-default-expected.txt: Renamed from LayoutTests/accessibility/mac/aria-liveregion-marquee-default-expected.txt.
* accessibility/aria-liveregion-marquee-default.html: Renamed from LayoutTests/accessibility/mac/aria-liveregion-marquee-default.html.
* accessibility/aria-liveregions-attributes-expected.txt: Renamed from LayoutTests/accessibility/mac/aria-liveregions-attributes-expected.txt.
* accessibility/aria-liveregions-attributes.html: Renamed from LayoutTests/accessibility/mac/aria-liveregions-attributes.html.
* platform/win/TestExpectations: Add the above tests to the list of known failures.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222433 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[WebKit] Changing EME setting through InjectedBundle should update WebPreferencesStore
zandobersek@gmail.com [Sun, 24 Sep 2017 10:32:49 +0000 (10:32 +0000)]
[WebKit] Changing EME setting through InjectedBundle should update WebPreferencesStore
https://bugs.webkit.org/show_bug.cgi?id=177312

Reviewed by Carlos Garcia Campos.

Source/WebKit:

When enabling EME through the InjectedBundle for testing purposes, it's
only enabled in RuntimeEnabledFeatures, but not in WebPreferencesStore.
This causes failures on imported W3C tests that cover EME persistent
state licenses and perform parts of that test in a new window, where
the original RuntimeEnabledFeatures state doesn't have any effect.

To avoid those failures, when enabling EME feature for testing purposes
through InjectedBundle, the feature should also be enabled in the
WebPreferencesStore.

* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):

LayoutTests:

Update test baselines for two tests that now properly execute (even if
they still fail) due to EME setting now also being updated in
WebPreferencesStore.

* platform/wpe/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-retrieve-destroy-persistent-license-expected.txt:
* platform/wpe/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-retrieve-persistent-license-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222432 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoExport libwebrtc symbols through an export file
commit-queue@webkit.org [Sun, 24 Sep 2017 03:53:23 +0000 (03:53 +0000)]
Export libwebrtc symbols through an export file
https://bugs.webkit.org/show_bug.cgi?id=177344

Patch by Youenn Fablet <youenn@apple.com> on 2017-09-23
Reviewed by Darin Adler.

Removing export changes made to libwebrtc.
Exporting based on libwebrtc.exp file.

* Configurations/Base.xcconfig:
* Configurations/libwebrtc.exp: Added.
* Configurations/libwebrtc.xcconfig:
* Source/webrtc/api/jsep.h:
(): Deleted.
* Source/webrtc/api/mediatypes.h:
* Source/webrtc/api/peerconnectioninterface.h:
* Source/webrtc/api/rtcerror.h:
* Source/webrtc/api/stats/rtcstats.h:
* Source/webrtc/api/stats/rtcstatsreport.h:
(): Deleted.
* Source/webrtc/api/video/i420_buffer.h:
* Source/webrtc/api/video/video_frame.h:
(): Deleted.
* Source/webrtc/api/video/video_frame_buffer.h:
* Source/webrtc/base/asyncpacketsocket.h:
* Source/webrtc/base/asyncresolverinterface.h:
(): Deleted.
* Source/webrtc/base/checks.h:
(): Deleted.
* Source/webrtc/base/copyonwritebuffer.h:
(): Deleted.
* Source/webrtc/base/event.h:
(): Deleted.
* Source/webrtc/base/export.h: Removed.
* Source/webrtc/base/helpers.h:
* Source/webrtc/base/ipaddress.h:
* Source/webrtc/base/location.h:
(): Deleted.
* Source/webrtc/base/logging.h:
* Source/webrtc/base/messagehandler.h:
* Source/webrtc/base/network.h:
* Source/webrtc/base/proxyinfo.h:
* Source/webrtc/base/socketaddress.h:
(): Deleted.
* Source/webrtc/base/thread.h:
* Source/webrtc/common_video/include/i420_buffer_pool.h:
(): Deleted.
* Source/webrtc/common_video/include/video_frame_buffer.h:
(): Deleted.
* Source/webrtc/common_video/libyuv/include/webrtc_libyuv.h:
* Source/webrtc/media/engine/webrtcvideoencoderfactory.h:
(): Deleted.
* Source/webrtc/p2p/base/basicpacketsocketfactory.h:
(): Deleted.
* Source/webrtc/p2p/client/basicportallocator.h:
* Source/webrtc/pc/mediastream.h:
* Source/webrtc/sdk/objc/Framework/Classes/Video/corevideo_frame_buffer.h:
(): Deleted.
* Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/encoder.h:
(): Deleted.
* Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/videocodecfactory.h:
(): Deleted.
* libwebrtc.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222430 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoRemove SetterMayThrowException
commit-queue@webkit.org [Sun, 24 Sep 2017 02:38:07 +0000 (02:38 +0000)]
Remove SetterMayThrowException
https://bugs.webkit.org/show_bug.cgi?id=177408

Patch by Youenn Fablet <youenn@apple.com> on 2017-09-23
Reviewed by Sam Weinig.

No change of behavior.

Updating IDLs to remove SetterMayThrowException as it is no longer needed.
Updating AttributeSetter to compute the return type using Functor.

* Modules/indexeddb/IDBIndex.idl:
* Modules/indexeddb/IDBObjectStore.idl:
* Modules/mediasource/MediaSource.idl:
* Modules/mediasource/SourceBuffer.idl:
* Modules/mediastream/RTCDataChannel.idl:
* Modules/webaudio/AnalyserNode.idl:
* Modules/webaudio/AudioNode.idl:
* Modules/webaudio/ConvolverNode.idl:
* Modules/webaudio/OscillatorNode.idl:
* Modules/websockets/WebSocket.idl:
* bindings/js/JSDOMAttribute.h:
(WebCore::AttributeSetter::call):
(WebCore::AttributeSetter<ExceptionOr<void>>::call): Deleted.
(WebCore::AttributeSetter<void>::call): Deleted.
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateAttributeSetterBodyDefinition):
* bindings/scripts/IDLAttributes.json:
* bindings/scripts/test/JS/JSTestCEReactions.cpp:
* bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:
* bindings/scripts/test/JS/JSTestCallTracer.cpp:
* bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:
* bindings/scripts/test/JS/JSTestGlobalObject.cpp:
* bindings/scripts/test/JS/JSTestInterface.cpp:
* bindings/scripts/test/JS/JSTestNode.cpp:
* bindings/scripts/test/JS/JSTestObj.cpp:
* bindings/scripts/test/JS/JSTestSerialization.cpp:
* bindings/scripts/test/JS/JSTestSerializationInherit.cpp:
* bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
* bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:
* bindings/scripts/test/JS/JSTestTypedefs.cpp:
* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/TestTypedefs.idl:
* css/CSSRule.idl:
* css/CSSStyleDeclaration.idl:
* css/DeprecatedCSSOMValue.idl:
* css/FontFace.idl:
* css/MediaList.idl:
* dom/Document.idl:
* dom/Element.idl:
* dom/Node.idl:
* dom/ShadowRoot.idl:
* html/DOMURL.idl:
* html/HTMLElement.idl:
* html/HTMLInputElement.idl:
* html/HTMLMarqueeElement.idl:
* html/HTMLMediaElement.idl:
* html/HTMLOptionsCollection.idl:
* html/HTMLSelectElement.idl:
* html/HTMLTableElement.idl:
* html/HTMLTextAreaElement.idl:
* html/MediaController.idl:
* html/track/VTTCue.idl:
* html/track/VTTRegion.idl:
* page/History.idl:
* page/Location.idl:
* svg/SVGAltGlyphElement.idl:
* svg/SVGAngle.idl:
* svg/SVGAnimatedBoolean.idl:
* svg/SVGAnimatedEnumeration.idl:
* svg/SVGAnimatedInteger.idl:
* svg/SVGAnimatedNumber.idl:
* svg/SVGAnimatedString.idl:
* svg/SVGLength.idl:
* svg/SVGMatrix.idl:
* svg/SVGNumber.idl:
* svg/SVGPoint.idl:
* svg/SVGPreserveAspectRatio.idl:
* svg/SVGRect.idl:
* svg/SVGViewSpec.idl:
* xml/XMLHttpRequest.idl:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222429 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoFix infinite looping test262 test
keith_miller@apple.com [Sun, 24 Sep 2017 00:46:49 +0000 (00:46 +0000)]
Fix infinite looping test262 test
https://bugs.webkit.org/show_bug.cgi?id=177412

Reviewed by Yusuke Suzuki.

This test was poorly designed since failing it would cause the vm
to inifinite loop. I've fixed it locally and will fix it on github pending
the results of next weeks tc39 meeting.

* test262.yaml:
* test262/test/language/statements/for-of/iterator-next-reference.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222428 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoImages may render partial frames even after loading all the encoded data
commit-queue@webkit.org [Sat, 23 Sep 2017 21:05:52 +0000 (21:05 +0000)]
Images may render partial frames even after loading all the encoded data
https://bugs.webkit.org/show_bug.cgi?id=177406

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2017-09-23
Reviewed by Simon Fraser.

Source/WebCore:

Because we do not want to block the main thread waiting for the image decoding
thread to terminate, we let the decoding thread finish its work even it will
be thrown away. If a new decoding thread is created and the SynchronizedFixedQueue
is reopened, the terminating decoding thread might have the chance to process
a new frame request. After it finishes decoding it, it realize that it is
terminating so it will drop the decoded frame to the floor. So the new request
was not processed by the new thread and because it was processed by the
terminating thread, nothing will be reported to the BitmapImage object and
the renderer will not be repainted.

The fix is to create a new SynchronizedFixedQueue every time a decoding
thread is created. This will guarantee that the terminating thread won't
have access to the new frame request and will shut down after being notified
by the old SynchronizedFixedQueue that it has been closed.

* platform/graphics/ImageFrameCache.cpp:
(WebCore::ImageFrameCache::frameRequestQueue):
(WebCore::ImageFrameCache::startAsyncDecodingQueue):
(WebCore::ImageFrameCache::requestFrameAsyncDecodingAtIndex):
(WebCore::ImageFrameCache::stopAsyncDecodingQueue):
* platform/graphics/ImageFrameCache.h:

Source/WTF:

Make it possible to create a RefPtr<SynchronizedFixedQueue>.

* wtf/SynchronizedFixedQueue.h:
(WTF::SynchronizedFixedQueue::create):
(WTF::SynchronizedFixedQueue::enqueue):
(WTF::SynchronizedFixedQueue::dequeue):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222427 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUnreviewed Mac CMake build fixup after r222194
mcatanzaro@igalia.com [Sat, 23 Sep 2017 19:17:32 +0000 (19:17 +0000)]
Unreviewed Mac CMake build fixup after r222194

* DumpRenderTree/PlatformMac.cmake:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222426 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[ESNext] Async iteration - Implement Async Generator - optimization
gskachkov@gmail.com [Sat, 23 Sep 2017 15:05:53 +0000 (15:05 +0000)]
[ESNext] Async iteration - Implement Async Generator - optimization
https://bugs.webkit.org/show_bug.cgi?id=175891

Reviewed by Yusuke Suzuki.

Add small optimization for async generators:
1. merging async generator queue to async generator itself
generator.@first / generator.@last is enough, by doing so,
  we remove one unnecessary object alloc.
2. merging request with queue.

* builtins/AsyncGeneratorPrototype.js:
(globalPrivate.asyncGeneratorQueueIsEmpty):
(globalPrivate.asyncGeneratorQueueCreateItem):
(globalPrivate.asyncGeneratorQueueEnqueue):
(globalPrivate.asyncGeneratorQueueDequeue):
(globalPrivate.asyncGeneratorDequeue):
(globalPrivate.isSuspendYieldState):
(globalPrivate.asyncGeneratorEnqueue):
* builtins/BuiltinNames.h:
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitPutAsyncGeneratorFields):
* bytecompiler/BytecodeGenerator.h:
* bytecompiler/NodesCodegen.cpp:
(JSC::FunctionNode::emitBytecode):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222425 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agotest262: $.agent became $262.agent in test262 update
commit-queue@webkit.org [Sat, 23 Sep 2017 11:01:02 +0000 (11:01 +0000)]
test262: $.agent became $262.agent in test262 update
https://bugs.webkit.org/show_bug.cgi?id=177407

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2017-09-23
Reviewed by Yusuke Suzuki.

JSTests:

* test262.yaml:
~320 tests pass now that we correctly make $262 available.

Source/JavaScriptCore:

* jsc.cpp:
(GlobalObject::finishCreation):
Alias `$` and `$262` for now.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222424 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoRemove tests for CSS Regions
antti@apple.com [Sat, 23 Sep 2017 06:57:13 +0000 (06:57 +0000)]
Remove tests for CSS Regions
https://bugs.webkit.org/show_bug.cgi?id=177348

Reviewed by Sam Weinig.

* TestExpectations:
* compositing/regions: Removed.
* compositing/regions/abs-in-named-flow-from-fixed-in-named-flow-expected.txt: Removed.
* compositing/regions/abs-in-named-flow-from-fixed-in-named-flow.html: Removed.
* compositing/regions/abs-transformed-dynamic-update-expected.html: Removed.
* compositing/regions/abs-transformed-dynamic-update.html: Removed.
* compositing/regions/composited-content-fixed-region-scrolled-expected.txt: Removed.
* compositing/regions/composited-content-fixed-region-scrolled.html: Removed.
* compositing/regions/crash-transform-inside-region-expected.html: Removed.
* compositing/regions/crash-transform-inside-region.html: Removed.
* compositing/regions/fixed-empty-region-scrolled-expected.txt: Removed.
* compositing/regions/fixed-empty-region-scrolled.html: Removed.
* compositing/regions/fixed-in-diff-named-flows-zIndex-expected.html: Removed.
* compositing/regions/fixed-in-diff-named-flows-zIndex.html: Removed.
* compositing/regions/fixed-in-named-flow-clip-descendant-expected.txt: Removed.
* compositing/regions/fixed-in-named-flow-clip-descendant.html: Removed.
* compositing/regions/fixed-in-named-flow-expected.txt: Removed.
* compositing/regions/fixed-in-named-flow-from-abs-in-named-flow-expected.txt: Removed.
* compositing/regions/fixed-in-named-flow-from-abs-in-named-flow.html: Removed.
* compositing/regions/fixed-in-named-flow-from-outflow-expected.txt: Removed.
* compositing/regions/fixed-in-named-flow-from-outflow.html: Removed.
* compositing/regions/fixed-in-named-flow-got-transformed-parent-expected.txt: Removed.
* compositing/regions/fixed-in-named-flow-got-transformed-parent.html: Removed.
* compositing/regions/fixed-in-named-flow-lost-transformed-parent-expected.txt: Removed.
* compositing/regions/fixed-in-named-flow-lost-transformed-parent.html: Removed.
* compositing/regions/fixed-in-named-flow-overlap-composited-expected.txt: Removed.
* compositing/regions/fixed-in-named-flow-overlap-composited.html: Removed.
* compositing/regions/fixed-in-named-flow-position-changed-expected.html: Removed.
* compositing/regions/fixed-in-named-flow-position-changed.html: Removed.
* compositing/regions/fixed-in-named-flow-transformed-parent-expected.txt: Removed.
* compositing/regions/fixed-in-named-flow-transformed-parent.html: Removed.
* compositing/regions/fixed-in-named-flow-zIndex-expected.html: Removed.
* compositing/regions/fixed-in-named-flow-zIndex.html: Removed.
* compositing/regions/fixed-in-named-flow.html: Removed.
* compositing/regions/fixed-transformed-in-named-flow-expected.txt: Removed.
* compositing/regions/fixed-transformed-in-named-flow.html: Removed.
* compositing/regions/floated-region-with-transformed-child-expected.html: Removed.
* compositing/regions/floated-region-with-transformed-child.html: Removed.
* compositing/regions/inline-replaced-transformed-in-region-expected.html: Removed.
* compositing/regions/inline-replaced-transformed-in-region.html: Removed.
* compositing/regions/move-layer-from-one-region-to-another-expected.html: Removed.
* compositing/regions/move-layer-from-one-region-to-another.html: Removed.
* compositing/regions/paint-inside-composited-region-overflow-hidden-versus-div-expected.html: Removed.
* compositing/regions/paint-inside-composited-region-overflow-hidden-versus-div.html: Removed.
* compositing/regions/paint-inside-composited-region-overflow-hidden-versus-region-expected.html: Removed.
* compositing/regions/paint-inside-composited-region-overflow-hidden-versus-region.html: Removed.
* compositing/regions/position-layer-inside-overflow-hidden-expected.html: Removed.
* compositing/regions/position-layer-inside-overflow-hidden.html: Removed.
* compositing/regions/position-layer-inside-region-overflow-hidden-expected.html: Removed.
* compositing/regions/position-layer-inside-region-overflow-hidden.html: Removed.
* compositing/regions/position-layers-inside-region-overflow-hidden-expected.html: Removed.
* compositing/regions/position-layers-inside-region-overflow-hidden.html: Removed.
* compositing/regions/position-layers-inside-regions-overflow-hidden-expected.html: Removed.
* compositing/regions/position-layers-inside-regions-overflow-hidden.html: Removed.
* compositing/regions/propagate-region-box-shadow-border-padding-expected.html: Removed.
* compositing/regions/propagate-region-box-shadow-border-padding-for-video-expected.html: Removed.
* compositing/regions/propagate-region-box-shadow-border-padding-for-video.html: Removed.
* compositing/regions/propagate-region-box-shadow-border-padding.html: Removed.
* compositing/regions/region-as-layer-in-another-flowthread-expected.html: Removed.
* compositing/regions/region-as-layer-in-another-flowthread.html: Removed.
* compositing/regions/transform-transparent-positioned-video-inside-region-expected.html: Removed.
* compositing/regions/transform-transparent-positioned-video-inside-region.html: Removed.
* compositing/regions/transformed-layer-inside-transformed-layer-expected.html: Removed.
* compositing/regions/transformed-layer-inside-transformed-layer.html: Removed.
* compositing/regions/video-in-overflow-region-expected.txt: Removed.
* compositing/regions/video-in-overflow-region.html: Removed.
* compositing/regions/webkit-flow-renderer-layer-compositing-expected.html: Removed.
* compositing/regions/webkit-flow-renderer-layer-compositing.html: Removed.
* compositing/regions/z-index-expected.html: Removed.
* compositing/regions/z-index-update-expected.html: Removed.
* compositing/regions/z-index-update.html: Removed.
* compositing/regions/z-index.html: Removed.
* fast/regions: Removed.
* fast/regions/absolute-in-relative-overflow-expected.html: Removed.
* fast/regions/absolute-in-relative-overflow.html: Removed.
* fast/regions/absolute-pos-elem-in-named-flow-expected.txt: Removed.
* fast/regions/absolute-pos-elem-in-named-flow.html: Removed.
* fast/regions/absolute-pos-elem-in-region-expected.html: Removed.
* fast/regions/absolute-pos-elem-in-region.html: Removed.
* fast/regions/animated-image-in-region-expected.txt: Removed.
* fast/regions/animated-image-in-region.html: Removed.
* fast/regions/animation-element-in-region-flowed-to-other-thread-expected.html: Removed.
* fast/regions/animation-element-in-region-flowed-to-other-thread.html: Removed.
* fast/regions/assert-flow-thread-compositing-expected.txt: Removed.
* fast/regions/assert-flow-thread-compositing.html: Removed.
* fast/regions/assert-hit-test-image-expected.txt: Removed.
* fast/regions/assert-hit-test-image.html: Removed.
* fast/regions/assert-hit-test-multicol-in-region-expected.txt: Removed.
* fast/regions/assert-hit-test-multicol-in-region.html: Removed.
* fast/regions/auto-size: Removed.
* fast/regions/auto-size/abspos-autoheight-nested-region-expected.txt: Removed.
* fast/regions/auto-size/abspos-autoheight-nested-region.html: Removed.
* fast/regions/auto-size/autoheight-abspos-bottom-align-expected.txt: Removed.
* fast/regions/auto-size/autoheight-abspos-bottom-align.html: Removed.
* fast/regions/auto-size/autoheight-abspos-region-expected.html: Removed.
* fast/regions/auto-size/autoheight-abspos-region.html: Removed.
* fast/regions/auto-size/autoheight-allregions-expected.html: Removed.
* fast/regions/auto-size/autoheight-allregions-nobreaks-expected.html: Removed.
* fast/regions/auto-size/autoheight-allregions-nobreaks.html: Removed.
* fast/regions/auto-size/autoheight-allregions.html: Removed.
* fast/regions/auto-size/autoheight-break-after-expected.html: Removed.
* fast/regions/auto-size/autoheight-break-after.html: Removed.
* fast/regions/auto-size/autoheight-breakafteralways-maxheight-expected.html: Removed.
* fast/regions/auto-size/autoheight-breakafteralways-maxheight.html: Removed.
* fast/regions/auto-size/autoheight-breakbefore-wrongheight-expected.txt: Removed.
* fast/regions/auto-size/autoheight-breakbefore-wrongheight.html: Removed.
* fast/regions/auto-size/autoheight-breakbeforealways-expected.html: Removed.
* fast/regions/auto-size/autoheight-breakbeforealways.html: Removed.
* fast/regions/auto-size/autoheight-correct-region-for-lines-2-expected.html: Removed.
* fast/regions/auto-size/autoheight-correct-region-for-lines-2.html: Removed.
* fast/regions/auto-size/autoheight-correct-region-for-lines-expected.html: Removed.
* fast/regions/auto-size/autoheight-correct-region-for-lines.html: Removed.
* fast/regions/auto-size/autoheight-definedheight-changenotdetected-expected.html: Removed.
* fast/regions/auto-size/autoheight-definedheight-changenotdetected.html: Removed.
* fast/regions/auto-size/autoheight-dynamic-update-expected.html: Removed.
* fast/regions/auto-size/autoheight-dynamic-update.html: Removed.
* fast/regions/auto-size/autoheight-firstregion-breakalways-expected.html: Removed.
* fast/regions/auto-size/autoheight-firstregion-breakalways.html: Removed.
* fast/regions/auto-size/autoheight-flexbox-expected.html: Removed.
* fast/regions/auto-size/autoheight-flexbox.html: Removed.
* fast/regions/auto-size/autoheight-floatright-region-expected.html: Removed.
* fast/regions/auto-size/autoheight-floatright-region.html: Removed.
* fast/regions/auto-size/autoheight-horizontal-bt-expected.html: Removed.
* fast/regions/auto-size/autoheight-horizontal-bt.html: Removed.
* fast/regions/auto-size/autoheight-inlineblock-normalflow-region-expected.html: Removed.
* fast/regions/auto-size/autoheight-inlineblock-normalflow-region.html: Removed.
* fast/regions/auto-size/autoheight-lastregion-overflowauto-breaksignored-expected.html: Removed.
* fast/regions/auto-size/autoheight-lastregion-overflowauto-breaksignored.html: Removed.
* fast/regions/auto-size/autoheight-lastregion-overflowauto-expected.html: Removed.
* fast/regions/auto-size/autoheight-lastregion-overflowauto.html: Removed.
* fast/regions/auto-size/autoheight-maxheight-mixed-break-expected.txt: Removed.
* fast/regions/auto-size/autoheight-maxheight-mixed-break.html: Removed.
* fast/regions/auto-size/autoheight-maxheight-region-expected.html: Removed.
* fast/regions/auto-size/autoheight-maxheight-region.html: Removed.
* fast/regions/auto-size/autoheight-maxheight-simple-break-expected.txt: Removed.
* fast/regions/auto-size/autoheight-maxheight-simple-break.html: Removed.
* fast/regions/auto-size/autoheight-maxheight-simple-nobreak-expected.txt: Removed.
* fast/regions/auto-size/autoheight-maxheight-simple-nobreak.html: Removed.
* fast/regions/auto-size/autoheight-middleregion-expected.html: Removed.
* fast/regions/auto-size/autoheight-middleregion.html: Removed.
* fast/regions/auto-size/autoheight-minheight-region-expected.html: Removed.
* fast/regions/auto-size/autoheight-minheight-region.html: Removed.
* fast/regions/auto-size/autoheight-minmaxheight-mixed-break-expected.txt: Removed.
* fast/regions/auto-size/autoheight-minmaxheight-mixed-break-hbt-expected.txt: Removed.
* fast/regions/auto-size/autoheight-minmaxheight-mixed-break-hbt.html: Removed.
* fast/regions/auto-size/autoheight-minmaxheight-mixed-break-vlr-expected.txt: Removed.
* fast/regions/auto-size/autoheight-minmaxheight-mixed-break-vlr.html: Removed.
* fast/regions/auto-size/autoheight-minmaxheight-mixed-break-vrl-expected.txt: Removed.
* fast/regions/auto-size/autoheight-minmaxheight-mixed-break-vrl.html: Removed.
* fast/regions/auto-size/autoheight-minmaxheight-mixed-break.html: Removed.
* fast/regions/auto-size/autoheight-minmaxheight-simple-break-expected.txt: Removed.
* fast/regions/auto-size/autoheight-minmaxheight-simple-break.html: Removed.
* fast/regions/auto-size/autoheight-minmaxheight-simple-nobreak-expected.txt: Removed.
* fast/regions/auto-size/autoheight-minmaxheight-simple-nobreak.html: Removed.
* fast/regions/auto-size/autoheight-mixed-nested-complex-regions-expected.txt: Removed.
* fast/regions/auto-size/autoheight-mixed-nested-complex-regions.html: Removed.
* fast/regions/auto-size/autoheight-mixed-nested-regions-expected.txt: Removed.
* fast/regions/auto-size/autoheight-mixed-nested-regions.html: Removed.
* fast/regions/auto-size/autoheight-mixed-parallel-regions-expected.txt: Removed.
* fast/regions/auto-size/autoheight-mixed-parallel-regions.html: Removed.
* fast/regions/auto-size/autoheight-nested-regions-expected.txt: Removed.
* fast/regions/auto-size/autoheight-nested-regions.html: Removed.
* fast/regions/auto-size/autoheight-normalflow-region-expected.html: Removed.
* fast/regions/auto-size/autoheight-normalflow-region.html: Removed.
* fast/regions/auto-size/autoheight-region-decrease-maxheight-expected.txt: Removed.
* fast/regions/auto-size/autoheight-region-decrease-maxheight.html: Removed.
* fast/regions/auto-size/autoheight-region-decrease-minheight-expected.txt: Removed.
* fast/regions/auto-size/autoheight-region-decrease-minheight.html: Removed.
* fast/regions/auto-size/autoheight-region-decrease-width-expected.txt: Removed.
* fast/regions/auto-size/autoheight-region-decrease-width.html: Removed.
* fast/regions/auto-size/autoheight-region-increase-maxheight-expected.txt: Removed.
* fast/regions/auto-size/autoheight-region-increase-maxheight.html: Removed.
* fast/regions/auto-size/autoheight-region-increase-minheight-expected.txt: Removed.
* fast/regions/auto-size/autoheight-region-increase-minheight.html: Removed.
* fast/regions/auto-size/autoheight-region-increase-width-expected.txt: Removed.
* fast/regions/auto-size/autoheight-region-increase-width.html: Removed.
* fast/regions/auto-size/autoheight-region-new-maxheight-expected.txt: Removed.
* fast/regions/auto-size/autoheight-region-new-maxheight-vrl-expected.txt: Removed.
* fast/regions/auto-size/autoheight-region-new-maxheight-vrl.html: Removed.
* fast/regions/auto-size/autoheight-region-new-maxheight.html: Removed.
* fast/regions/auto-size/autoheight-region-new-minheight-expected.txt: Removed.
* fast/regions/auto-size/autoheight-region-new-minheight-vlr-expected.txt: Removed.
* fast/regions/auto-size/autoheight-region-new-minheight-vlr.html: Removed.
* fast/regions/auto-size/autoheight-region-new-minheight.html: Removed.
* fast/regions/auto-size/autoheight-region-remove-maxheight-expected.txt: Removed.
* fast/regions/auto-size/autoheight-region-remove-maxheight.html: Removed.
* fast/regions/auto-size/autoheight-region-remove-minheight-expected.txt: Removed.
* fast/regions/auto-size/autoheight-region-remove-minheight.html: Removed.
* fast/regions/auto-size/autoheight-region-valid-from-invalid-expected.html: Removed.
* fast/regions/auto-size/autoheight-region-valid-from-invalid.html: Removed.
* fast/regions/auto-size/autoheight-regions-mark.html: Removed.
* fast/regions/auto-size/autoheight-secondregion-breakoutside-expected.html: Removed.
* fast/regions/auto-size/autoheight-secondregion-breakoutside.html: Removed.
* fast/regions/auto-size/autoheight-secondregion-expected.html: Removed.
* fast/regions/auto-size/autoheight-secondregion.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-breakafteralways-expected.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-breakafteralways-maxheight-expected.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-breakafteralways-maxheight.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-breakafteralways.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-breakaftermargin-expected.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-breakaftermargin.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-breakbeforealways-expected.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-breakbeforealways-minheight-expected.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-breakbeforealways-minheight.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-breakbeforealways.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-multiplebreaks-expected.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-multiplebreaks.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-overflowauto-breaksignored-expected.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-overflowauto-breaksignored.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-overflowauto-expected.html: Removed.
* fast/regions/auto-size/autoheight-singleregion-overflowauto.html: Removed.
* fast/regions/auto-size/autoheight-two-pass-layout-complex-001-expected.txt: Removed.
* fast/regions/auto-size/autoheight-two-pass-layout-complex-001.html: Removed.
* fast/regions/auto-size/autoheight-two-pass-layout-complex-002-expected.txt: Removed.
* fast/regions/auto-size/autoheight-two-pass-layout-complex-002.html: Removed.
* fast/regions/auto-size/autoheight-vertical-lr-expected.html: Removed.
* fast/regions/auto-size/autoheight-vertical-lr.html: Removed.
* fast/regions/auto-size/autoheight-vertical-rl-expected.html: Removed.
* fast/regions/auto-size/autoheight-vertical-rl.html: Removed.
* fast/regions/auto-size/autosize-abspos-anchoredregion-expected.txt: Removed.
* fast/regions/auto-size/autosize-abspos-anchoredregion-vertlr-expected.txt: Removed.
* fast/regions/auto-size/autosize-abspos-anchoredregion-vertlr.html: Removed.
* fast/regions/auto-size/autosize-abspos-anchoredregion.html: Removed.
* fast/regions/auto-size/autosize-region-container-resize-expected.html: Removed.
* fast/regions/auto-size/autosize-region-container-resize.html: Removed.
* fast/regions/auto-size/autosize-region-window-resize-expected.html: Removed.
* fast/regions/auto-size/autosize-region-window-resize.html: Removed.
* fast/regions/auto-size/autowidth-abspos-expected.html: Removed.
* fast/regions/auto-size/autowidth-abspos-regionchain-expected.html: Removed.
* fast/regions/auto-size/autowidth-abspos-regionchain.html: Removed.
* fast/regions/auto-size/autowidth-abspos.html: Removed.
* fast/regions/auto-size/autowidth-attachedinvalidregion-expected.txt: Removed.
* fast/regions/auto-size/autowidth-attachedinvalidregion.html: Removed.
* fast/regions/auto-size/autowidth-float-expected.html: Removed.
* fast/regions/auto-size/autowidth-float.html: Removed.
* fast/regions/auto-size/autowidth-inlineblock-expected.html: Removed.
* fast/regions/auto-size/autowidth-inlineblock.html: Removed.
* fast/regions/auto-size/autowidth-nonreplaced-abspos-expected.html: Removed.
* fast/regions/auto-size/autowidth-nonreplaced-abspos.html: Removed.
* fast/regions/auto-size/autowidth-nonreplacedblock-normalflow-expected.html: Removed.
* fast/regions/auto-size/autowidth-nonreplacedblock-normalflow.html: Removed.
* fast/regions/auto-size/autowidth-normalflow-expected.html: Removed.
* fast/regions/auto-size/autowidth-normalflow-maxwidth-expected.html: Removed.
* fast/regions/auto-size/autowidth-normalflow-maxwidth.html: Removed.
* fast/regions/auto-size/autowidth-normalflow-minmaxwidth-expected.html: Removed.
* fast/regions/auto-size/autowidth-normalflow-minmaxwidth.html: Removed.
* fast/regions/auto-size/autowidth-normalflow-minwidth-expected.html: Removed.
* fast/regions/auto-size/autowidth-normalflow-minwidth.html: Removed.
* fast/regions/auto-size/autowidth-normalflow-vertrl-expected.html: Removed.
* fast/regions/auto-size/autowidth-normalflow-vertrl.html: Removed.
* fast/regions/auto-size/autowidth-normalflow.html: Removed.
* fast/regions/auto-size/region-height-auto-to-defined-expected.txt: Removed.
* fast/regions/auto-size/region-height-auto-to-defined.html: Removed.
* fast/regions/auto-size/region-height-defined-to-auto-expected.txt: Removed.
* fast/regions/auto-size/region-height-defined-to-auto.html: Removed.
* fast/regions/auto-size/region-same-height-as-div-with-inline-child-expected.txt: Removed.
* fast/regions/auto-size/region-same-height-as-div-with-inline-child.html: Removed.
* fast/regions/bottom-overflow-out-of-first-region-absolute-expected.html: Removed.
* fast/regions/bottom-overflow-out-of-first-region-absolute.html: Removed.
* fast/regions/bottom-overflow-out-of-first-region-expected.html: Removed.
* fast/regions/bottom-overflow-out-of-first-region.html: Removed.
* fast/regions/box-decorations-over-region-padding-expected.html: Removed.
* fast/regions/box-decorations-over-region-padding-fragmented-expected.html: Removed.
* fast/regions/box-decorations-over-region-padding-fragmented.html: Removed.
* fast/regions/box-decorations-over-region-padding-horiz-bt-expected.html: Removed.
* fast/regions/box-decorations-over-region-padding-horiz-bt.html: Removed.
* fast/regions/box-decorations-over-region-padding-vert-lr-expected.html: Removed.
* fast/regions/box-decorations-over-region-padding-vert-lr.html: Removed.
* fast/regions/box-decorations-over-region-padding-vert-rl-expected.html: Removed.
* fast/regions/box-decorations-over-region-padding-vert-rl.html: Removed.
* fast/regions/box-decorations-over-region-padding.html: Removed.
* fast/regions/br-content-node-crash-expected.txt: Removed.
* fast/regions/br-content-node-crash.xhtml: Removed.
* fast/regions/clip-to-padding-box-expected.html: Removed.
* fast/regions/clip-to-padding-box-margins-expected.html: Removed.
* fast/regions/clip-to-padding-box-margins.html: Removed.
* fast/regions/clip-to-padding-box-vertical-lr-expected.html: Removed.
* fast/regions/clip-to-padding-box-vertical-lr.html: Removed.
* fast/regions/clip-to-padding-box.html: Removed.
* fast/regions/collapse-anonymous-region-expected.html: Removed.
* fast/regions/collapse-anonymous-region.html: Removed.
* fast/regions/collect-html-in-named-flow-expected.txt: Removed.
* fast/regions/collect-html-in-named-flow.html: Removed.
* fast/regions/content-flowed-into-pseudo-regions-expected.html: Removed.
* fast/regions/content-flowed-into-pseudo-regions.html: Removed.
* fast/regions/content-flowed-into-regions-dynamically-added-expected.html: Removed.
* fast/regions/content-flowed-into-regions-dynamically-added.html: Removed.
* fast/regions/content-flowed-into-regions-dynamically-inserted-expected.html: Removed.
* fast/regions/content-flowed-into-regions-dynamically-inserted.html: Removed.
* fast/regions/content-flowed-into-regions-dynamically-removed-expected.html: Removed.
* fast/regions/content-flowed-into-regions-dynamically-removed.html: Removed.
* fast/regions/content-flowed-into-regions-expected.html: Removed.
* fast/regions/content-flowed-into-regions-no-scroll-expected.txt: Removed.
* fast/regions/content-flowed-into-regions-no-scroll.html: Removed.
* fast/regions/content-flowed-into-regions.html: Removed.
* fast/regions/content-relative-next-tile-expected.html: Removed.
* fast/regions/content-relative-next-tile.html: Removed.
* fast/regions/counters: Removed.
* fast/regions/counters/extract-list-items-001-expected.html: Removed.
* fast/regions/counters/extract-list-items-001.html: Removed.
* fast/regions/counters/extract-list-items-002-expected.html: Removed.
* fast/regions/counters/extract-list-items-002.html: Removed.
* fast/regions/counters/extract-list-items-003-expected.html: Removed.
* fast/regions/counters/extract-list-items-003.html: Removed.
* fast/regions/counters/extract-list-items-004-expected.html: Removed.
* fast/regions/counters/extract-list-items-004.html: Removed.
* fast/regions/counters/extract-list-items-005-expected.html: Removed.
* fast/regions/counters/extract-list-items-005.html: Removed.
* fast/regions/counters/extract-list-items-006-expected.html: Removed.
* fast/regions/counters/extract-list-items-006.html: Removed.
* fast/regions/counters/extract-list-items-007-expected.html: Removed.
* fast/regions/counters/extract-list-items-007.html: Removed.
* fast/regions/counters/extract-list-items-008-expected.html: Removed.
* fast/regions/counters/extract-list-items-008.html: Removed.
* fast/regions/counters/extract-list-items-009-expected.html: Removed.
* fast/regions/counters/extract-list-items-009.html: Removed.
* fast/regions/counters/extract-list-items-010-expected.html: Removed.
* fast/regions/counters/extract-list-items-010.html: Removed.
* fast/regions/counters/extract-list-items-011-expected.html: Removed.
* fast/regions/counters/extract-list-items-011.html: Removed.
* fast/regions/counters/extract-list-items-012-expected.html: Removed.
* fast/regions/counters/extract-list-items-012.html: Removed.
* fast/regions/counters/extract-list-items-013-expected.html: Removed.
* fast/regions/counters/extract-list-items-013.html: Removed.
* fast/regions/counters/extract-list-items-014-expected.html: Removed.
* fast/regions/counters/extract-list-items-014.html: Removed.
* fast/regions/counters/extract-list-items-015-expected.html: Removed.
* fast/regions/counters/extract-list-items-015.html: Removed.
* fast/regions/counters/extract-numbered-paragraphs-divs-001-expected.html: Removed.
* fast/regions/counters/extract-numbered-paragraphs-divs-001.html: Removed.
* fast/regions/counters/extract-numbered-paragraphs-divs-002-expected.html: Removed.
* fast/regions/counters/extract-numbered-paragraphs-divs-002.html: Removed.
* fast/regions/counters/extract-numbered-paragraphs-expected.html: Removed.
* fast/regions/counters/extract-numbered-paragraphs.html: Removed.
* fast/regions/counters/extract-numbered-spans-display-only-some-expected.html: Removed.
* fast/regions/counters/extract-numbered-spans-display-only-some.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-001-expected.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-001.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-002-expected.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-002.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-003-expected.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-003.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-001-expected.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-001.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-002-expected.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-002.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-003-expected.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-003.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-004-expected.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-004.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-005-expected.html: Removed.
* fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-005.html: Removed.
* fast/regions/counters/extract-unordered-lists-in-regions-expected.html: Removed.
* fast/regions/counters/extract-unordered-lists-in-regions.html: Removed.
* fast/regions/crash-div-outside-body-vertical-rl-expected.html: Removed.
* fast/regions/crash-div-outside-body-vertical-rl.html: Removed.
* fast/regions/crash-reflow-inline-content-in-variable-width-regions-expected.txt: Removed.
* fast/regions/crash-reflow-inline-content-in-variable-width-regions.html: Removed.
* fast/regions/crash-when-renderer-is-in-multiple-selection-subtrees-expected.txt: Removed.
* fast/regions/crash-when-renderer-is-in-multiple-selection-subtrees.html: Removed.
* fast/regions/crash-when-renderer-is-in-multiple-selection-subtrees2-expected.txt: Removed.
* fast/regions/crash-when-renderer-is-in-multiple-selection-subtrees2.html: Removed.
* fast/regions/cssom: Removed.
* fast/regions/cssom/client-rects-fixed-content-expected.txt: Removed.
* fast/regions/cssom/client-rects-fixed-content.html: Removed.
* fast/regions/cssom/client-rects-forced-breaks-expected.txt: Removed.
* fast/regions/cssom/client-rects-forced-breaks.html: Removed.
* fast/regions/cssom/client-rects-inline-complex-expected.txt: Removed.
* fast/regions/cssom/client-rects-inline-complex.html: Removed.
* fast/regions/cssom/client-rects-inline-expected.txt: Removed.
* fast/regions/cssom/client-rects-inline.html: Removed.
* fast/regions/cssom/client-rects-nested-regions-expected.txt: Removed.
* fast/regions/cssom/client-rects-nested-regions.html: Removed.
* fast/regions/cssom/client-rects-positioned-expected.txt: Removed.
* fast/regions/cssom/client-rects-positioned.html: Removed.
* fast/regions/cssom/client-rects-relative-position-expected.txt: Removed.
* fast/regions/cssom/client-rects-relative-position.html: Removed.
* fast/regions/cssom/client-rects-simple-block-expected.txt: Removed.
* fast/regions/cssom/client-rects-simple-block.html: Removed.
* fast/regions/cssom/client-rects-transforms-expected.txt: Removed.
* fast/regions/cssom/client-rects-transforms.html: Removed.
* fast/regions/cssom/client-rects-unsplittable-float-expected.txt: Removed.
* fast/regions/cssom/client-rects-unsplittable-float.html: Removed.
* fast/regions/cssom/element-region-overset-state-expected.txt: Removed.
* fast/regions/cssom/element-region-overset-state-negative-letter-spacing-expected.txt: Removed.
* fast/regions/cssom/element-region-overset-state-negative-letter-spacing.html: Removed.
* fast/regions/cssom/element-region-overset-state-vertical-rl-expected.txt: Removed.
* fast/regions/cssom/element-region-overset-state-vertical-rl-negative-letter-spacing-expected.txt: Removed.
* fast/regions/cssom/element-region-overset-state-vertical-rl-negative-letter-spacing.html: Removed.
* fast/regions/cssom/element-region-overset-state-vertical-rl.html: Removed.
* fast/regions/cssom/element-region-overset-state.html: Removed.
* fast/regions/cssom/flowed-content-bounding-client-rect-expected.txt: Removed.
* fast/regions/cssom/flowed-content-bounding-client-rect-horizontal-bt-expected.txt: Removed.
* fast/regions/cssom/flowed-content-bounding-client-rect-horizontal-bt.html: Removed.
* fast/regions/cssom/flowed-content-bounding-client-rect-vertical-expected.txt: Removed.
* fast/regions/cssom/flowed-content-bounding-client-rect-vertical-rl-expected.txt: Removed.
* fast/regions/cssom/flowed-content-bounding-client-rect-vertical-rl.html: Removed.
* fast/regions/cssom/flowed-content-bounding-client-rect-vertical.html: Removed.
* fast/regions/cssom/flowed-content-bounding-client-rect.html: Removed.
* fast/regions/cssom/flowed-content-transform-bounding-client-rect-expected.txt: Removed.
* fast/regions/cssom/flowed-content-transform-bounding-client-rect.html: Removed.
* fast/regions/cssom/flowed-inline-content-bounding-client-rect-expected.txt: Removed.
* fast/regions/cssom/flowed-inline-content-bounding-client-rect.html: Removed.
* fast/regions/cssom/get-region-flow-ranges-absolute-pos-expected.txt: Removed.
* fast/regions/cssom/get-region-flow-ranges-absolute-pos.html: Removed.
* fast/regions/cssom/get-region-flow-ranges-content-nodes-expected.txt: Removed.
* fast/regions/cssom/get-region-flow-ranges-content-nodes.html: Removed.
* fast/regions/cssom/get-region-flow-ranges-display-none-expected.txt: Removed.
* fast/regions/cssom/get-region-flow-ranges-display-none.html: Removed.
* fast/regions/cssom/get-region-flow-ranges-empty-regions-expected.txt: Removed.
* fast/regions/cssom/get-region-flow-ranges-empty-regions.html: Removed.
* fast/regions/cssom/get-region-flow-ranges-expected.txt: Removed.
* fast/regions/cssom/get-region-flow-ranges-fixed-pos-expected.txt: Removed.
* fast/regions/cssom/get-region-flow-ranges-fixed-pos.html: Removed.
* fast/regions/cssom/get-region-flow-ranges-horiz-bt-expected.txt: Removed.
* fast/regions/cssom/get-region-flow-ranges-horiz-bt.html: Removed.
* fast/regions/cssom/get-region-flow-ranges-inline-only-expected.txt: Removed.
* fast/regions/cssom/get-region-flow-ranges-inline-only.html: Removed.
* fast/regions/cssom/get-region-flow-ranges-inline-svg-expected.txt: Removed.
* fast/regions/cssom/get-region-flow-ranges-inline-svg.html: Removed.
* fast/regions/cssom/get-region-flow-ranges-text-expected.txt: Removed.
* fast/regions/cssom/get-region-flow-ranges-text-vert-lr-expected.txt: Removed.
* fast/regions/cssom/get-region-flow-ranges-text-vert-lr.html: Removed.
* fast/regions/cssom/get-region-flow-ranges-text.html: Removed.
* fast/regions/cssom/get-region-flow-ranges-vert-lr-expected.txt: Removed.
* fast/regions/cssom/get-region-flow-ranges-vert-lr.html: Removed.
* fast/regions/cssom/get-region-flow-ranges-vert-rl-expected.txt: Removed.
* fast/regions/cssom/get-region-flow-ranges-vert-rl.html: Removed.
* fast/regions/cssom/get-region-flow-ranges-writing-modes-rl-rb-lr-expected.txt: Removed.
* fast/regions/cssom/get-region-flow-ranges-writing-modes-rl-rb-lr.html: Removed.
* fast/regions/cssom/get-region-flow-ranges-writing-modes-tb-rl-lr-expected.txt: Removed.
* fast/regions/cssom/get-region-flow-ranges-writing-modes-tb-rl-lr.html: Removed.
* fast/regions/cssom/get-region-flow-ranges.html: Removed.
* fast/regions/cssom/get-regions-by-content-expected.txt: Removed.
* fast/regions/cssom/get-regions-by-content-horiz-bt-expected.txt: Removed.
* fast/regions/cssom/get-regions-by-content-horiz-bt.html: Removed.
* fast/regions/cssom/get-regions-by-content-horiz-tb-expected.txt: Removed.
* fast/regions/cssom/get-regions-by-content-horiz-tb.html: Removed.
* fast/regions/cssom/get-regions-by-content-pseudo-expected.txt: Removed.
* fast/regions/cssom/get-regions-by-content-pseudo.html: Removed.
* fast/regions/cssom/get-regions-by-content-vert-lr-expected.txt: Removed.
* fast/regions/cssom/get-regions-by-content-vert-lr.html: Removed.
* fast/regions/cssom/get-regions-by-content-vert-rl-expected.txt: Removed.
* fast/regions/cssom/get-regions-by-content-vert-rl.html: Removed.
* fast/regions/cssom/get-regions-by-content.html: Removed.
* fast/regions/cssom/get-regions-by-content2-expected.txt: Removed.
* fast/regions/cssom/get-regions-by-content2.html: Removed.
* fast/regions/cssom/offsetLeft-offsetTop-in-multiple-regions-expected.txt: Removed.
* fast/regions/cssom/offsetLeft-offsetTop-in-multiple-regions.html: Removed.
* fast/regions/cssom/offsetLeft-offsetTop-in-region-absolute-sticky-fixed-expected.txt: Removed.
* fast/regions/cssom/offsetLeft-offsetTop-in-region-absolute-sticky-fixed.html: Removed.
* fast/regions/cssom/offsetLeft-offsetTop-in-region-float-expected.txt: Removed.
* fast/regions/cssom/offsetLeft-offsetTop-in-region-float-vert-rl-expected.txt: Removed.
* fast/regions/cssom/offsetLeft-offsetTop-in-region-float-vert-rl.html: Removed.
* fast/regions/cssom/offsetLeft-offsetTop-in-region-float.html: Removed.
* fast/regions/cssom/offsetLeft-offsetTop-inlines-region-in-element-expected.txt: Removed.
* fast/regions/cssom/offsetLeft-offsetTop-inlines-region-in-element.html: Removed.
* fast/regions/cssom/offsetParent-body-in-flow-thread-expected.txt: Removed.
* fast/regions/cssom/offsetParent-body-in-flow-thread.html: Removed.
* fast/regions/cssom/offsetParent-in-flow-thread-expected.txt: Removed.
* fast/regions/cssom/offsetParent-in-flow-thread.html: Removed.
* fast/regions/cssom/overset-break-expected.txt: Removed.
* fast/regions/cssom/overset-break-nested-expected.txt: Removed.
* fast/regions/cssom/overset-break-nested.html: Removed.
* fast/regions/cssom/overset-break-with-sibling-expected.txt: Removed.
* fast/regions/cssom/overset-break-with-sibling.html: Removed.
* fast/regions/cssom/overset-break.html: Removed.
* fast/regions/cssom/region-range-for-box-crash-expected.txt: Removed.
* fast/regions/cssom/region-range-for-box-crash.html: Removed.
* fast/regions/cssom/webkit-named-flow-collection-crash-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-collection-crash.html: Removed.
* fast/regions/cssom/webkit-named-flow-collection-empty-getters-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-collection-empty-getters.html: Removed.
* fast/regions/cssom/webkit-named-flow-collection-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-collection.html: Removed.
* fast/regions/cssom/webkit-named-flow-event-add-to-flow-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-event-add-to-flow.html: Removed.
* fast/regions/cssom/webkit-named-flow-event-auto-height-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-event-auto-height.html: Removed.
* fast/regions/cssom/webkit-named-flow-event-crash-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-event-crash.html: Removed.
* fast/regions/cssom/webkit-named-flow-event-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-event-no-regions-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-event-no-regions.html: Removed.
* fast/regions/cssom/webkit-named-flow-event-region-in-flexbox-no-overset-change-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-event-region-in-flexbox-no-overset-change.html: Removed.
* fast/regions/cssom/webkit-named-flow-event-region-in-flexbox-overset-change-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-event-region-in-flexbox-overset-change.html: Removed.
* fast/regions/cssom/webkit-named-flow-event-remove-from-dom-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-event-remove-from-dom.html: Removed.
* fast/regions/cssom/webkit-named-flow-event-remove-from-flow-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-event-remove-from-flow.html: Removed.
* fast/regions/cssom/webkit-named-flow-event-target-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-event-target.html: Removed.
* fast/regions/cssom/webkit-named-flow-event-to-null-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-event-to-null.html: Removed.
* fast/regions/cssom/webkit-named-flow-event.html: Removed.
* fast/regions/cssom/webkit-named-flow-existing-flow-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-existing-flow.html: Removed.
* fast/regions/cssom/webkit-named-flow-first-empty-region-index-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-first-empty-region-index.html: Removed.
* fast/regions/cssom/webkit-named-flow-flow-added-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-flow-added.html: Removed.
* fast/regions/cssom/webkit-named-flow-get-content-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-get-content.html: Removed.
* fast/regions/cssom/webkit-named-flow-get-regions-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-get-regions-pseudo-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-get-regions-pseudo.html: Removed.
* fast/regions/cssom/webkit-named-flow-get-regions.html: Removed.
* fast/regions/cssom/webkit-named-flow-invalid-name-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-invalid-name.html: Removed.
* fast/regions/cssom/webkit-named-flow-modified-flow-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-modified-flow.html: Removed.
* fast/regions/cssom/webkit-named-flow-name-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-name.html: Removed.
* fast/regions/cssom/webkit-named-flow-non-existing-flow-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-non-existing-flow.html: Removed.
* fast/regions/cssom/webkit-named-flow-overset-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-overset.html: Removed.
* fast/regions/cssom/webkit-named-flow-removed-flow-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-removed-flow.html: Removed.
* fast/regions/cssom/webkit-named-flow-same-object-expected.txt: Removed.
* fast/regions/cssom/webkit-named-flow-same-object.html: Removed.
* fast/regions/detaching-regions-with-anonymous-blocks-expected.txt: Removed.
* fast/regions/detaching-regions-with-anonymous-blocks.html: Removed.
* fast/regions/drag-scrollbars-of-content-expected.html: Removed.
* fast/regions/drag-scrollbars-of-content.html: Removed.
* fast/regions/flexbox-in-region-crash-expected.txt: Removed.
* fast/regions/flexbox-in-region-crash.html: Removed.
* fast/regions/float-pushed-width-change-2-expected.html: Removed.
* fast/regions/float-pushed-width-change-2.html: Removed.
* fast/regions/float-pushed-width-change-expected.html: Removed.
* fast/regions/float-pushed-width-change.html: Removed.
* fast/regions/float-slicing-on-forced-break-expected.html: Removed.
* fast/regions/float-slicing-on-forced-break.html: Removed.
* fast/regions/floats-basic-in-variable-width-regions-expected.html: Removed.
* fast/regions/floats-basic-in-variable-width-regions.html: Removed.
* fast/regions/flow-anonymous-children-expected.txt: Removed.
* fast/regions/flow-anonymous-children.html: Removed.
* fast/regions/flow-body-in-html-expected.txt: Removed.
* fast/regions/flow-body-in-html.html: Removed.
* fast/regions/flow-content-basic-expected.html: Removed.
* fast/regions/flow-content-basic-vertical-expected.html: Removed.
* fast/regions/flow-content-basic-vertical-rl-expected.html: Removed.
* fast/regions/flow-content-basic-vertical-rl.html: Removed.
* fast/regions/flow-content-basic-vertical.html: Removed.
* fast/regions/flow-content-basic.html: Removed.
* fast/regions/flow-fixed-element-transformed-parent-expected.txt: Removed.
* fast/regions/flow-fixed-element-transformed-parent.html: Removed.
* fast/regions/flow-fragment-as-anonymous-block-crash-expected.txt: Removed.
* fast/regions/flow-fragment-as-anonymous-block-crash.html: Removed.
* fast/regions/flow-region-into-itself-crash-expected.txt: Removed.
* fast/regions/flow-region-into-itself-crash.html: Removed.
* fast/regions/flows-dependency-dynamic-remove.html: Removed.
* fast/regions/flows-dependency-same-flow.html: Removed.
* fast/regions/flowthread-getranges-box-cast-expected.txt: Removed.
* fast/regions/flowthread-getranges-box-cast.html: Removed.
* fast/regions/forced-break-inside-avoid-break-expected.txt: Removed.
* fast/regions/forced-break-inside-avoid-break.html: Removed.
* fast/regions/fragmentation-after-float-overflow-single-region-expected.html: Removed.
* fast/regions/fragmentation-after-float-overflow-single-region.html: Removed.
* fast/regions/fragmentation-after-monolithic-overflow-expected.html: Removed.
* fast/regions/fragmentation-after-monolithic-overflow-self-collapsed-expected.html: Removed.
* fast/regions/fragmentation-after-monolithic-overflow-self-collapsed.html: Removed.
* fast/regions/fragmentation-after-monolithic-overflow-single-region-expected.html: Removed.
* fast/regions/fragmentation-after-monolithic-overflow-single-region.html: Removed.
* fast/regions/fragmentation-after-monolithic-overflow.html: Removed.
* fast/regions/frame-view-overflow-scroll-expected.html: Removed.
* fast/regions/frame-view-overflow-scroll.html: Removed.
* fast/regions/fullscreen: Removed.
* fast/regions/fullscreen/full-screen-video-from-region-expected.txt: Removed.
* fast/regions/fullscreen/full-screen-video-from-region.html: Removed.
* fast/regions/fullscreen/full-screen-video-in-region-crash-expected.txt: Removed.
* fast/regions/fullscreen/full-screen-video-in-region-crash.html: Removed.
* fast/regions/generated-content: Removed.
* fast/regions/generated-content/firstletter-inside-flowthread-expected.html: Removed.
* fast/regions/generated-content/firstletter-inside-flowthread.html: Removed.
* fast/regions/generated-content/pseudo-after-content-node-expected.txt: Removed.
* fast/regions/generated-content/pseudo-after-content-node.html: Removed.
* fast/regions/generated-content/pseudo-before-content-node-expected.txt: Removed.
* fast/regions/generated-content/pseudo-before-content-node.html: Removed.
* fast/regions/generated-content/pseudo-first-letter-content-node-expected.txt: Removed.
* fast/regions/generated-content/pseudo-first-letter-content-node.html: Removed.
* fast/regions/generated-content/pseudo-first-line-content-node-expected.txt: Removed.
* fast/regions/generated-content/pseudo-first-line-content-node.html: Removed.
* fast/regions/hidpi-region-with-auto-margin-on-subpixel-position-expected.html: Removed.
* fast/regions/hidpi-region-with-auto-margin-on-subpixel-position.html: Removed.
* fast/regions/hit-test-abspos-overflow-region-expected.txt: Removed.
* fast/regions/hit-test-abspos-overflow-region.html: Removed.
* fast/regions/hit-test-box-non-containing-region-expected.txt: Removed.
* fast/regions/hit-test-box-non-containing-region.html: Removed.
* fast/regions/hit-test-float-expected.txt: Removed.
* fast/regions/hit-test-float.html: Removed.
* fast/regions/hit-test-region-expected.txt: Removed.
* fast/regions/hit-test-region-preserve3d-container-expected.txt: Removed.
* fast/regions/hit-test-region-preserve3d-container.html: Removed.
* fast/regions/hit-test-region.html: Removed.
* fast/regions/hover-and-js-in-visual-overflow-expected.html: Removed.
* fast/regions/hover-and-js-in-visual-overflow-hidden-expected.html: Removed.
* fast/regions/hover-and-js-in-visual-overflow-hidden.html: Removed.
* fast/regions/hover-and-js-in-visual-overflow.html: Removed.
* fast/regions/hover-content-inside-iframe-in-region-expected.html: Removed.
* fast/regions/hover-content-inside-iframe-in-region.html: Removed.
* fast/regions/hover-element-flowed-second-region-expected.html: Removed.
* fast/regions/hover-element-flowed-second-region.html: Removed.
* fast/regions/hover-in-region-grandparent-expected.txt: Removed.
* fast/regions/hover-in-region-grandparent.html: Removed.
* fast/regions/hover-in-region-parent-skip-inlines-anonymous-expected.txt: Removed.
* fast/regions/hover-in-region-parent-skip-inlines-anonymous.html: Removed.
* fast/regions/hover-in-second-region-expected.html: Removed.
* fast/regions/hover-in-second-region.html: Removed.
* fast/regions/hover-on-child-in-region-expected.txt: Removed.
* fast/regions/hover-on-child-in-region-in-region-expected.txt: Removed.
* fast/regions/hover-on-child-in-region-in-region.html: Removed.
* fast/regions/hover-on-child-in-region.html: Removed.
* fast/regions/hover-on-child-parent-different-regions-expected.txt: Removed.
* fast/regions/hover-on-child-parent-different-regions.html: Removed.
* fast/regions/hover-overflow-hidden-expected.html: Removed.
* fast/regions/hover-overflow-hidden.html: Removed.
* fast/regions/hover-single-flow-from-none-expected.html: Removed.
* fast/regions/hover-single-flow-from-none-overflow-expected.html: Removed.
* fast/regions/hover-single-flow-from-none-overflow-top-expected.html: Removed.
* fast/regions/hover-single-flow-from-none-overflow-top.html: Removed.
* fast/regions/hover-single-flow-from-none-overflow.html: Removed.
* fast/regions/hover-single-flow-from-none.html: Removed.
* fast/regions/hover-single-flow-from-other-expected.html: Removed.
* fast/regions/hover-single-flow-from-other.html: Removed.
* fast/regions/hover-single-flow-into-none-expected.html: Removed.
* fast/regions/hover-single-flow-into-none.html: Removed.
* fast/regions/hover-single-flow-into-other-expected.html: Removed.
* fast/regions/hover-single-flow-into-other.html: Removed.
* fast/regions/iframe-html-collected.html: Removed.
* fast/regions/imbricated-flow-threads-crash-expected.txt: Removed.
* fast/regions/imbricated-flow-threads-crash.html: Removed.
* fast/regions/inline-block-flowed-in-regions-expected.html: Removed.
* fast/regions/inline-block-flowed-in-regions.html: Removed.
* fast/regions/inline-block-inline-children-flowed-in-regions-expected.html: Removed.
* fast/regions/inline-block-inline-children-flowed-in-regions.html: Removed.
* fast/regions/inline-block-inside-anonymous-overflow-expected.html: Removed.
* fast/regions/inline-block-inside-anonymous-overflow-with-covered-controls-expected.html: Removed.
* fast/regions/inline-block-inside-anonymous-overflow-with-covered-controls.html: Removed.
* fast/regions/inline-block-inside-anonymous-overflow.html: Removed.
* fast/regions/inline-block-overflow-expected.html: Removed.
* fast/regions/inline-block-overflow.html: Removed.
* fast/regions/inline-block-shifted-region-expected.txt: Removed.
* fast/regions/inline-block-shifted-region.html: Removed.
* fast/regions/inline-blocks-dyn-enlarged-regions-expected.html: Removed.
* fast/regions/inline-blocks-dyn-enlarged-regions.html: Removed.
* fast/regions/inline-blocks-dyn-shrunk-regions-expected.html: Removed.
* fast/regions/inline-blocks-dyn-shrunk-regions.html: Removed.
* fast/regions/inline-blocks-in-two-regions-expected.html: Removed.
* fast/regions/inline-blocks-in-two-regions.html: Removed.
* fast/regions/inline-strike-through-expected.txt: Removed.
* fast/regions/inline-strike-through.html: Removed.
* fast/regions/inlineblock-child-inlineblock-contentnode-in-region-expected.html: Removed.
* fast/regions/inlineblock-child-inlineblock-contentnode-in-region.html: Removed.
* fast/regions/input-box-with-region-assert-expected.txt: Removed.
* fast/regions/input-box-with-region-assert.html: Removed.
* fast/regions/intrinsic-sized-regions-expected.txt: Removed.
* fast/regions/intrinsic-sized-regions.html: Removed.
* fast/regions/last-region-border-radius-expected.html: Removed.
* fast/regions/last-region-border-radius.html: Removed.
* fast/regions/layers: Removed.
* fast/regions/layers/float-region-promoted-to-layer-expected.html: Removed.
* fast/regions/layers/float-region-promoted-to-layer.html: Removed.
* fast/regions/layers/region-normalflow-stacking-context-expected.html: Removed.
* fast/regions/layers/region-normalflow-stacking-context.html: Removed.
* fast/regions/layers/region-removed-during-animation-expected.html: Removed.
* fast/regions/layers/region-removed-during-animation.html: Removed.
* fast/regions/layers/region-zIndex-computedStyle-expected.txt: Removed.
* fast/regions/layers/region-zIndex-computedStyle.html: Removed.
* fast/regions/layers/stacking-context-paint-order-expected.html: Removed.
* fast/regions/layers/stacking-context-paint-order.html: Removed.
* fast/regions/line-containing-region-crash-expected.txt: Removed.
* fast/regions/line-containing-region-crash.html: Removed.
* fast/regions/list-item-as-region-expected.html: Removed.
* fast/regions/list-item-as-region.html: Removed.
* fast/regions/listmarker-inside-flowthread-expected.html: Removed.
* fast/regions/listmarker-inside-flowthread.html: Removed.
* fast/regions/mathml-crash-expected.txt: Removed.
* fast/regions/mathml-crash.html: Removed.
* fast/regions/move-anonymous-block-inside-named-flow-crash-expected.txt: Removed.
* fast/regions/move-anonymous-block-inside-named-flow-crash.html: Removed.
* fast/regions/moved-content-node-crash-expected.txt: Removed.
* fast/regions/moved-content-node-crash.html: Removed.
* fast/regions/multicol: Removed.
* fast/regions/multicol/multicol-as-region-prevented-expected.html: Removed.
* fast/regions/multicol/multicol-as-region-prevented.html: Removed.
* fast/regions/multicol/nested-multicol-into-region-dynamic-expected.txt: Removed.
* fast/regions/multicol/nested-multicol-into-region-dynamic.html: Removed.
* fast/regions/multicol/regions-in-multicol-bt-expected.html: Removed.
* fast/regions/multicol/regions-in-multicol-bt.html: Removed.
* fast/regions/multicol/regions-in-multicol-expected.html: Removed.
* fast/regions/multicol/regions-in-multicol-hover-expected.html: Removed.
* fast/regions/multicol/regions-in-multicol-hover-overflow-expected.html: Removed.
* fast/regions/multicol/regions-in-multicol-hover-overflow.html: Removed.
* fast/regions/multicol/regions-in-multicol-hover.html: Removed.
* fast/regions/multicol/regions-in-multicol-lr-expected.html: Removed.
* fast/regions/multicol/regions-in-multicol-lr.html: Removed.
* fast/regions/multicol/regions-in-multicol-rl-expected.html: Removed.
* fast/regions/multicol/regions-in-multicol-rl.html: Removed.
* fast/regions/multicol/regions-in-multicol.html: Removed.
* fast/regions/multiple-directionality-changes-in-variable-width-regions.html: Removed.
* fast/regions/named-flow-content-order-1-expected.html: Removed.
* fast/regions/named-flow-content-order-1.html: Removed.
* fast/regions/named-flow-content-order-2-expected.html: Removed.
* fast/regions/named-flow-content-order-2.html: Removed.
* fast/regions/named-flow-content-order-3-expected.html: Removed.
* fast/regions/named-flow-content-order-3.html: Removed.
* fast/regions/nested-floated-region-expected.html: Removed.
* fast/regions/nested-floated-region.html: Removed.
* fast/regions/no-split-line-box-expected.txt: Removed.
* fast/regions/no-split-line-box.html: Removed.
* fast/regions/outline-sides-in-region-expected.html: Removed.
* fast/regions/outline-sides-in-region.html: Removed.
* fast/regions/overflow: Removed.
* fast/regions/overflow/overflow-3dtransformed-region-expected.txt: Removed.
* fast/regions/overflow/overflow-3dtransformed-region.html: Removed.
* fast/regions/overflow/overflow-auto-after-float-expected.html: Removed.
* fast/regions/overflow/overflow-auto-after-float.html: Removed.
* fast/regions/overflow/overflow-content-transform-rotate-expected.html: Removed.
* fast/regions/overflow/overflow-content-transform-rotate.html: Removed.
* fast/regions/overflow/overflow-content-zero-height-region-expected.html: Removed.
* fast/regions/overflow/overflow-content-zero-height-region.html: Removed.
* fast/regions/overflow/overflow-first-and-last-regions-expected.html: Removed.
* fast/regions/overflow/overflow-first-and-last-regions-in-container-hidden-expected.html: Removed.
* fast/regions/overflow/overflow-first-and-last-regions-in-container-hidden.html: Removed.
* fast/regions/overflow/overflow-first-and-last-regions.html: Removed.
* fast/regions/overflow/overflow-in-uniform-regions-dynamic-expected.html: Removed.
* fast/regions/overflow/overflow-in-uniform-regions-dynamic.html: Removed.
* fast/regions/overflow/overflow-in-uniform-regions-expected.html: Removed.
* fast/regions/overflow/overflow-in-uniform-regions.html: Removed.
* fast/regions/overflow/overflow-in-variable-width-regions-expected.html: Removed.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-bt-expected.html: Removed.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-bt.html: Removed.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-continuation-expected.html: Removed.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-continuation.html: Removed.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-expected.html: Removed.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-lr-expected.html: Removed.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-lr.html: Removed.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-rl-expected.html: Removed.
* fast/regions/overflow/overflow-in-variable-width-regions-inline-rl.html: Removed.
* fast/regions/overflow/overflow-in-variable-width-regions-inline.html: Removed.
* fast/regions/overflow/overflow-in-variable-width-regions.html: Removed.
* fast/regions/overflow/overflow-last-region-horiz-bt-expected.html: Removed.
* fast/regions/overflow/overflow-last-region-horiz-bt.html: Removed.
* fast/regions/overflow/overflow-last-region-vert-lr-expected.html: Removed.
* fast/regions/overflow/overflow-last-region-vert-lr.html: Removed.
* fast/regions/overflow/overflow-last-region-vert-rl-expected.html: Removed.
* fast/regions/overflow/overflow-last-region-vert-rl.html: Removed.
* fast/regions/overflow/overflow-moving-below-floats-in-variable-width-regions-expected.html: Removed.
* fast/regions/overflow/overflow-moving-below-floats-in-variable-width-regions.html: Removed.
* fast/regions/overflow/overflow-nested-regions-expected.html: Removed.
* fast/regions/overflow/overflow-nested-regions.html: Removed.
* fast/regions/overflow/overflow-not-moving-below-floats-in-variable-width-regions-expected.html: Removed.
* fast/regions/overflow/overflow-not-moving-below-floats-in-variable-width-regions.html: Removed.
* fast/regions/overflow/overflow-region-float-expected.html: Removed.
* fast/regions/overflow/overflow-region-float.html: Removed.
* fast/regions/overflow/overflow-region-inline-expected.html: Removed.
* fast/regions/overflow/overflow-region-inline.html: Removed.
* fast/regions/overflow/overflow-region-transform-expected.html: Removed.
* fast/regions/overflow/overflow-region-transform.html: Removed.
* fast/regions/overflow/overflow-rtl-in-variable-width-regions-expected.html: Removed.
* fast/regions/overflow/overflow-rtl-in-variable-width-regions.html: Removed.
* fast/regions/overflow/overflow-scrollable-1-expected.html: Removed.
* fast/regions/overflow/overflow-scrollable-1.html: Removed.
* fast/regions/overflow/overflow-scrollable-2-expected.html: Removed.
* fast/regions/overflow/overflow-scrollable-2.html: Removed.
* fast/regions/overflow/overflow-scrollable-3-expected.html: Removed.
* fast/regions/overflow/overflow-scrollable-3.html: Removed.
* fast/regions/overflow/overflow-scrollable-fit-complex-expected.html: Removed.
* fast/regions/overflow/overflow-scrollable-fit-complex.html: Removed.
* fast/regions/overflow/overflow-scrollable-fit-expected.html: Removed.
* fast/regions/overflow/overflow-scrollable-fit.html: Removed.
* fast/regions/overflow/overflow-scrollable-nested-expected.txt: Removed.
* fast/regions/overflow/overflow-scrollable-nested.html: Removed.
* fast/regions/overflow/overflow-scrollable-rel-pos-fragment-expected.html: Removed.
* fast/regions/overflow/overflow-scrollable-rel-pos-fragment.html: Removed.
* fast/regions/overflow/overflow-scrollable-rotated-fragment-expected.html: Removed.
* fast/regions/overflow/overflow-scrollable-rotated-fragment.html: Removed.
* fast/regions/overflow/overflow-scrollable-unsplittable-fragment-expected.html: Removed.
* fast/regions/overflow/overflow-scrollable-unsplittable-fragment.html: Removed.
* fast/regions/overflow/overflow-scrollable-varying-width-1-expected.html: Removed.
* fast/regions/overflow/overflow-scrollable-varying-width-1.html: Removed.
* fast/regions/overflow/overflow-scrollable-varying-width-2-expected.html: Removed.
* fast/regions/overflow/overflow-scrollable-varying-width-2.html: Removed.
* fast/regions/overflow/overflow-size-change-in-variable-width-regions-expected.html: Removed.
* fast/regions/overflow/overflow-size-change-in-variable-width-regions.html: Removed.
* fast/regions/overflow/overflow-size-change-with-stacking-context-expected.html: Removed.
* fast/regions/overflow/overflow-size-change-with-stacking-context-rtl-expected.html: Removed.
* fast/regions/overflow/overflow-size-change-with-stacking-context-rtl.html: Removed.
* fast/regions/overflow/overflow-size-change-with-stacking-context.html: Removed.
* fast/regions/parsing: Removed.
* fast/regions/parsing/webkit-flow-from-parsing-expected.txt: Removed.
* fast/regions/parsing/webkit-flow-from-parsing.html: Removed.
* fast/regions/parsing/webkit-flow-into-parsing-expected.txt: Removed.
* fast/regions/parsing/webkit-flow-into-parsing.html: Removed.
* fast/regions/parsing/webkit-region-fragment-parsing-expected.txt: Removed.
* fast/regions/parsing/webkit-region-fragment-parsing.html: Removed.
* fast/regions/percentage-margins-mixed-ltr-dominant-regions-expected.html: Removed.
* fast/regions/percentage-margins-mixed-ltr-dominant-regions.html: Removed.
* fast/regions/percentage-margins-mixed-rtl-dominant-regions-expected.html: Removed.
* fast/regions/percentage-margins-mixed-rtl-dominant-regions.html: Removed.
* fast/regions/percentage-margins-rtl-variable-width-regions-expected.html: Removed.
* fast/regions/percentage-margins-rtl-variable-width-regions.html: Removed.
* fast/regions/percentage-margins-variable-width-regions-expected.html: Removed.
* fast/regions/percentage-margins-variable-width-regions.html: Removed.
* fast/regions/position-writing-modes-in-variable-width-regions-expected.html: Removed.
* fast/regions/position-writing-modes-in-variable-width-regions.html: Removed.
* fast/regions/positioning: Removed.
* fast/regions/positioning/fixed-element-transformed-parent-expected.txt: Removed.
* fast/regions/positioning/fixed-element-transformed-parent.html: Removed.
* fast/regions/positioning/fixed-in-named-flow-position-changed-expected.html: Removed.
* fast/regions/positioning/fixed-in-named-flow-position-changed.html: Removed.
* fast/regions/positioning/fixed-inside-fixed-in-named-flow-expected.html: Removed.
* fast/regions/positioning/fixed-inside-fixed-in-named-flow.html: Removed.
* fast/regions/positioning/fixed-inside-named-flow-zIndex-expected.html: Removed.
* fast/regions/positioning/fixed-inside-named-flow-zIndex.html: Removed.
* fast/regions/positioning/fixed-pos-content-fragmented-expected.html: Removed.
* fast/regions/positioning/fixed-pos-content-fragmented.html: Removed.
* fast/regions/positioning/fixed-pos-elem-in-named-flow-expected.txt: Removed.
* fast/regions/positioning/fixed-pos-elem-in-named-flow.html: Removed.
* fast/regions/positioning/fixed-pos-elem-in-named-flow2-expected.txt: Removed.
* fast/regions/positioning/fixed-pos-elem-in-named-flow2.html: Removed.
* fast/regions/positioning/fixed-pos-elem-in-namedflow-noregions-expected.html: Removed.
* fast/regions/positioning/fixed-pos-elem-in-namedflow-noregions.html: Removed.
* fast/regions/positioning/fixed-pos-elem-in-region-expected.html: Removed.
* fast/regions/positioning/fixed-pos-elem-in-region.html: Removed.
* fast/regions/positioning/fixed-pos-region-in-nested-flow-expected.html: Removed.
* fast/regions/positioning/fixed-pos-region-in-nested-flow.html: Removed.
* fast/regions/positioning/fixed-pos-region-overflow-content-expected.html: Removed.
* fast/regions/positioning/fixed-pos-region-overflow-content.html: Removed.
* fast/regions/positioning/positioned-fragmented-content-expected.html: Removed.
* fast/regions/positioning/positioned-fragmented-content.html: Removed.
* fast/regions/positioning/positioned-object-inline-cb-crash-expected.txt: Removed.
* fast/regions/positioning/positioned-object-inline-cb-crash.html: Removed.
* fast/regions/positioning/positioned-objects-block-static-in-regions-expected.html: Removed.
* fast/regions/positioning/positioned-objects-block-static-in-regions.html: Removed.
* fast/regions/positioning/positioned-objects-block-static-in-rtl-regions-expected.html: Removed.
* fast/regions/positioning/positioned-objects-block-static-in-rtl-regions.html: Removed.
* fast/regions/positioning/positioned-objects-block-static-spanning-regions-expected.html: Removed.
* fast/regions/positioning/positioned-objects-block-static-spanning-regions-rtl-expected.html: Removed.
* fast/regions/positioning/positioned-objects-block-static-spanning-regions-rtl.html: Removed.
* fast/regions/positioning/positioned-objects-block-static-spanning-regions.html: Removed.
* fast/regions/positioning/positioned-objects-clipped-spanning-regions-expected.html: Removed.
* fast/regions/positioning/positioned-objects-clipped-spanning-regions.html: Removed.
* fast/regions/positioning/positioned-objects-in-regions-expected.html: Removed.
* fast/regions/positioning/positioned-objects-in-regions.html: Removed.
* fast/regions/positioning/positioned-objects-in-rtl-regions-expected.html: Removed.
* fast/regions/positioning/positioned-objects-in-rtl-regions.html: Removed.
* fast/regions/positioning/positioned-objects-inline-static-in-regions-expected.html: Removed.
* fast/regions/positioning/positioned-objects-inline-static-in-regions.html: Removed.
* fast/regions/positioning/positioned-objects-inline-static-in-rtl-regions-expected.html: Removed.
* fast/regions/positioning/positioned-objects-inline-static-in-rtl-regions.html: Removed.
* fast/regions/positioning/positioned-objects-inline-static-spanning-regions-expected.html: Removed.
* fast/regions/positioning/positioned-objects-inline-static-spanning-regions-rtl-expected.html: Removed.
* fast/regions/positioning/positioned-objects-inline-static-spanning-regions-rtl.html: Removed.
* fast/regions/positioning/positioned-objects-inline-static-spanning-regions.html: Removed.
* fast/regions/positioning/positioned-objects-perpendicular-flows-in-regions-expected.html: Removed.
* fast/regions/positioning/positioned-objects-perpendicular-flows-in-regions.html: Removed.
* fast/regions/positioning/positioned-objects-spanning-regions-expected.html: Removed.
* fast/regions/positioning/positioned-objects-spanning-regions.html: Removed.
* fast/regions/positioning/positioned-slider-in-regions-expected.html: Removed.
* fast/regions/positioning/positioned-slider-in-regions.html: Removed.
* fast/regions/positioning/positioned-vrl-in-named-flow-expected.txt: Removed.
* fast/regions/positioning/positioned-vrl-in-named-flow.html: Removed.
* fast/regions/positioning/positioned-vrl-in-parent-named-flow-expected.txt: Removed.
* fast/regions/positioning/positioned-vrl-in-parent-named-flow.html: Removed.
* fast/regions/positioning/positioned-with-vrl-parent-in-named-flow-expected.txt: Removed.
* fast/regions/positioning/positioned-with-vrl-parent-in-named-flow.html: Removed.
* fast/regions/region-as-bfc-avoids-float-expected.html: Removed.
* fast/regions/region-as-bfc-avoids-float.html: Removed.
* fast/regions/region-attached-wrong-flow-crash-expected.txt: Removed.
* fast/regions/region-attached-wrong-flow-crash.html: Removed.
* fast/regions/region-border-radius-overflow-clip-expected.html: Removed.
* fast/regions/region-border-radius-overflow-clip.html: Removed.
* fast/regions/region-child-not-flowed-expected.html: Removed.
* fast/regions/region-child-not-flowed.html: Removed.
* fast/regions/region-clipping-expected.html: Removed.
* fast/regions/region-clipping.html: Removed.
* fast/regions/region-content-flown-into-region-expected.html: Removed.
* fast/regions/region-content-flown-into-region.html: Removed.
* fast/regions/region-content-node-child-clone-crash-expected.txt: Removed.
* fast/regions/region-content-node-child-clone-crash.html: Removed.
* fast/regions/region-dynamic-after-before.html: Removed.
* fast/regions/region-element-display-change-expected.txt: Removed.
* fast/regions/region-element-display-change.html: Removed.
* fast/regions/region-element-display-restriction-expected.txt: Removed.
* fast/regions/region-element-display-restriction.html: Removed.
* fast/regions/region-element-dynamic-attach-flow-expected.txt: Removed.
* fast/regions/region-element-dynamic-attach-flow.html: Removed.
* fast/regions/region-element-dynamic-detach-flow-expected.txt: Removed.
* fast/regions/region-element-dynamic-detach-flow.html: Removed.
* fast/regions/region-flow-reattach-crash-expected.txt: Removed.
* fast/regions/region-flow-reattach-crash.html: Removed.
* fast/regions/region-generated-content-before-after.html: Removed.
* fast/regions/region-min-max-width-support-expected.txt: Removed.
* fast/regions/region-min-max-width-support.html: Removed.
* fast/regions/region-overflow-auto-overflow-hidden-expected.html: Removed.
* fast/regions/region-overflow-auto-overflow-hidden.html: Removed.
* fast/regions/region-overflow-auto-overflow-visible-expected.html: Removed.
* fast/regions/region-overflow-auto-overflow-visible.html: Removed.
* fast/regions/region-overflow-break-expected.html: Removed.
* fast/regions/region-overflow-break.html: Removed.
* fast/regions/region-padding-overflow-hidden-expected.html: Removed.
* fast/regions/region-padding-overflow-hidden.html: Removed.
* fast/regions/region-sibling-paint-order-expected.html: Removed.
* fast/regions/region-sibling-paint-order.html: Removed.
* fast/regions/region-styling: Removed.
* fast/regions/region-styling/parse-incomplete-region-rule-expected.txt: Removed.
* fast/regions/region-styling/parse-incomplete-region-rule.html: Removed.
* fast/regions/region-styling/parsing-region-style-rule-expected.txt: Removed.
* fast/regions/region-styling/parsing-region-style-rule.html: Removed.
* fast/regions/region-styling/region-rule-nested-region-rule-expected.html: Removed.
* fast/regions/region-styling/region-rule-nested-region-rule.html: Removed.
* fast/regions/region-styling/region-style-block-background-color-expected.html: Removed.
* fast/regions/region-styling/region-style-block-background-color.html: Removed.
* fast/regions/region-styling/region-style-block-background-color2-expected.html: Removed.
* fast/regions/region-styling/region-style-block-background-color2.html: Removed.
* fast/regions/region-styling/region-style-color-expected.html: Removed.
* fast/regions/region-styling/region-style-color.html: Removed.
* fast/regions/region-styling/region-style-image-background-color-expected.html: Removed.
* fast/regions/region-styling/region-style-image-background-color.html: Removed.
* fast/regions/region-styling/region-style-in-columns-expected.html: Removed.
* fast/regions/region-styling/region-style-in-columns.html: Removed.
* fast/regions/region-styling/region-style-inline-background-color-expected.html: Removed.
* fast/regions/region-styling/region-style-inline-background-color.html: Removed.
* fast/regions/region-styling/region-style-not-supported-properties-expected.html: Removed.
* fast/regions/region-styling/region-style-not-supported-properties.html: Removed.
* fast/regions/region-styling/region-style-rule-position-expected.html: Removed.
* fast/regions/region-styling/region-style-rule-position.html: Removed.
* fast/regions/region-styling/region-style-rule-specificity-expected.html: Removed.
* fast/regions/region-styling/region-style-rule-specificity.html: Removed.
* fast/regions/region-styling/region-styling-mediaquery-expected.html: Removed.
* fast/regions/region-styling/region-styling-mediaquery.html: Removed.
* fast/regions/region-styling/region-withstyling-valid-from-invalid-expected.html: Removed.
* fast/regions/region-styling/region-withstyling-valid-from-invalid.html: Removed.
* fast/regions/region-styling/remove-leftover-anon-block-crash-expected.txt: Removed.
* fast/regions/region-styling/remove-leftover-anon-block-crash.html: Removed.
* fast/regions/region-styling/removed-element-style-in-region-crash-expected.txt: Removed.
* fast/regions/region-styling/removed-element-style-in-region-crash.html: Removed.
* fast/regions/region-styling/render-region-custom-style-mark-expected.html: Removed.
* fast/regions/region-styling/render-region-custom-style-mark.html: Removed.
* fast/regions/region-styling/set-box-style-in-region-crash-expected.txt: Removed.
* fast/regions/region-styling/set-box-style-in-region-crash.html: Removed.
* fast/regions/region-styling/webkit-region-rule-expected.txt: Removed.
* fast/regions/region-styling/webkit-region-rule.html: Removed.
* fast/regions/region-visual-overflow-transform-expected.html: Removed.
* fast/regions/region-visual-overflow-transform.html: Removed.
* fast/regions/region-width-change-relayout-1-expected.html: Removed.
* fast/regions/region-width-change-relayout-1.html: Removed.
* fast/regions/region-width-change-relayout-2-expected.html: Removed.
* fast/regions/region-width-change-relayout-2.html: Removed.
* fast/regions/region-width-change-relayout-3-expected.html: Removed.
* fast/regions/region-width-change-relayout-3.html: Removed.
* fast/regions/region-with-float-parent-expected.txt: Removed.
* fast/regions/region-with-float-parent.html: Removed.
* fast/regions/region-with-multicolumn-embedded-crash-expected.txt: Removed.
* fast/regions/region-with-multicolumn-embedded-crash.html: Removed.
* fast/regions/regions-overflow-tile-expected.html: Removed.
* fast/regions/regions-overflow-tile.html: Removed.
* fast/regions/regions-widows-and-orphans-expected.txt: Removed.
* fast/regions/regions-widows-and-orphans.html: Removed.
* fast/regions/regions-widows-float-top-aligned-expected.html: Removed.
* fast/regions/regions-widows-float-top-aligned.html: Removed.
* fast/regions/regions-widows-stack-overflow-expected.html: Removed.
* fast/regions/regions-widows-stack-overflow.html: Removed.
* fast/regions/relative-borders-overflow-expected.html: Removed.
* fast/regions/relative-borders-overflow.html: Removed.
* fast/regions/relative-in-absolute-borders-overflow-expected.html: Removed.
* fast/regions/relative-in-absolute-borders-overflow.html: Removed.
* fast/regions/remove-box-info-assert-expected.txt: Removed.
* fast/regions/remove-box-info-assert.html: Removed.
* fast/regions/remove-flow-thread-crash-expected.txt: Removed.
* fast/regions/remove-flow-thread-crash.html: Removed.
* fast/regions/render-region-renderer-expected.html: Removed.
* fast/regions/render-region-renderer.html: Removed.
* fast/regions/repaint: Removed.
* fast/regions/repaint/element-in-named-flow-absolute-from-fixed-expected.txt: Removed.
* fast/regions/repaint/element-in-named-flow-absolute-from-fixed.html: Removed.
* fast/regions/repaint/element-in-named-flow-fixed-from-absolute-expected.txt: Removed.
* fast/regions/repaint/element-in-named-flow-fixed-from-absolute.html: Removed.
* fast/regions/repaint/element-inflow-fixed-from-outflow-static-expected.txt: Removed.
* fast/regions/repaint/element-inflow-fixed-from-outflow-static.html: Removed.
* fast/regions/repaint/element-outflow-static-from-inflow-fixed-expected.txt: Removed.
* fast/regions/repaint/element-outflow-static-from-inflow-fixed.html: Removed.
* fast/regions/repaint/fixed-in-named-flow-cb-changed-expected.html: Removed.
* fast/regions/repaint/fixed-in-named-flow-cb-changed.html: Removed.
* fast/regions/repaint/fixed-in-named-flow-cb-changed2-expected.html: Removed.
* fast/regions/repaint/fixed-in-named-flow-cb-changed2.html: Removed.
* fast/regions/repaint/fixed-in-named-flow-scroll-expected.txt: Removed.
* fast/regions/repaint/fixed-in-named-flow-scroll.html: Removed.
* fast/regions/repaint/hover-border-radius-expected.txt: Removed.
* fast/regions/repaint/hover-border-radius.html: Removed.
* fast/regions/repaint/invalid-region-repaint-crash-expected.txt: Removed.
* fast/regions/repaint/invalid-region-repaint-crash.html: Removed.
* fast/regions/repaint/japanese-rl-selection-repaint-in-regions.html: Removed.
* fast/regions/repaint/line-flow-with-floats-in-regions.html: Removed.
* fast/regions/repaint/overflow-flipped-writing-mode-block-in-regions.html: Removed.
* fast/regions/repaint/region-painting-composited-element-expected.html: Removed.
* fast/regions/repaint/region-painting-composited-element.html: Removed.
* fast/regions/repaint/region-painting-in-composited-view-expected.html: Removed.
* fast/regions/repaint/region-painting-in-composited-view.html: Removed.
* fast/regions/repaint/region-painting-invalidation.html: Removed.
* fast/regions/repaint/region-painting-via-layout.html: Removed.
* fast/regions/repaint/repaint-absolute-pushed-to-next-region-expected.txt: Removed.
* fast/regions/repaint/repaint-absolute-pushed-to-next-region.html: Removed.
* fast/regions/repaint/repaint-element-inside-relative-region-expected.txt: Removed.
* fast/regions/repaint/repaint-element-inside-relative-region.html: Removed.
* fast/regions/repaint/repaint-regions-overflow-expected.txt: Removed.
* fast/regions/repaint/repaint-regions-overflow.html: Removed.
* fast/regions/resources: Removed.
* fast/regions/resources/helper.js: Removed.
* fast/regions/resources/iframe-in-region-source.html: Removed.
* fast/regions/resources/ipad.jpg: Removed.
* fast/regions/resources/region-style.css: Removed.
* fast/regions/resources/transparent.png: Removed.
* fast/regions/script-tests: Removed.
* fast/regions/script-tests/css-regions-disabled.js: Removed.
* fast/regions/script-tests/webkit-flow-from-parsing.js: Removed.
* fast/regions/script-tests/webkit-flow-into-parsing.js: Removed.
* fast/regions/script-tests/webkit-region-fragment-parsing.js: Removed.
* fast/regions/scrolling: Removed.
* fast/regions/scrolling/scroll-into-view-expected.html: Removed.
* fast/regions/scrolling/scroll-into-view-relative-expected.html: Removed.
* fast/regions/scrolling/scroll-into-view-relative.html: Removed.
* fast/regions/scrolling/scroll-into-view.html: Removed.
* fast/regions/scrolling/scrollable-first-region-expected.html: Removed.
* fast/regions/scrolling/scrollable-first-region.html: Removed.
* fast/regions/scrolling/scrollable-last-region-expected.html: Removed.
* fast/regions/scrolling/scrollable-last-region.html: Removed.
* fast/regions/scrolling/scrollable-paragraph-unsplittable-expected.html: Removed.
* fast/regions/scrolling/scrollable-paragraph-unsplittable.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size-expected.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size-horiz-bt-expected.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size-horiz-bt.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size-no-overflow-expected.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size-no-overflow-horiz-bt-expected.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size-no-overflow-horiz-bt.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size-no-overflow-vert-rl-expected.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size-no-overflow-vert-rl.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size-no-overflow.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size-relative-expected.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size-relative.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size-vert-rl-expected.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size-vert-rl.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size-vertical-lr-expected.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size-vertical-lr.html: Removed.
* fast/regions/scrolling/scrollable-region-content-size.html: Removed.
* fast/regions/scrolling/scrollable-region-scrollable-absolute-content-background-expected.html: Removed.
* fast/regions/scrolling/scrollable-region-scrollable-absolute-content-background.html: Removed.
* fast/regions/scrolling/scrollable-region-scrollable-content-background-expected.html: Removed.
* fast/regions/scrolling/scrollable-region-scrollable-content-background.html: Removed.
* fast/regions/scrolling/scrollable-region-scrollable-content-expected.html: Removed.
* fast/regions/scrolling/scrollable-region-scrollable-content.html: Removed.
* fast/regions/scrolling/scrollable-regions-hit-testing-inside-expected.html: Removed.
* fast/regions/scrolling/scrollable-regions-hit-testing-inside.html: Removed.
* fast/regions/scrolling/scrollable-single-region-bt-expected.html: Removed.
* fast/regions/scrolling/scrollable-single-region-bt.html: Removed.
* fast/regions/scrolling/scrollable-single-region-expected.html: Removed.
* fast/regions/scrolling/scrollable-single-region-lr-expected.html: Removed.
* fast/regions/scrolling/scrollable-single-region-lr.html: Removed.
* fast/regions/scrolling/scrollable-single-region-relative-element-expected.html: Removed.
* fast/regions/scrolling/scrollable-single-region-relative-element.html: Removed.
* fast/regions/scrolling/scrollable-single-region-rl-expected.html: Removed.
* fast/regions/scrolling/scrollable-single-region-rl.html: Removed.
* fast/regions/scrolling/scrollable-single-region.html: Removed.
* fast/regions/scrolling/wheel-scroll-abspos-expected.html: Removed.
* fast/regions/scrolling/wheel-scroll-abspos.html: Removed.
* fast/regions/scrolling/wheel-scroll-expected.html: Removed.
* fast/regions/scrolling/wheel-scroll.html: Removed.
* fast/regions/scrolling/wheel-scrollable-single-region-expected.html: Removed.
* fast/regions/scrolling/wheel-scrollable-single-region.html: Removed.
* fast/regions/select-in-region-crash-expected.txt: Removed.
* fast/regions/select-in-region-crash.html: Removed.
* fast/regions/select-multiple-in-region-expected.txt: Removed.
* fast/regions/select-multiple-in-region.html: Removed.
* fast/regions/selection: Removed.
* fast/regions/selection/crash-deselect-expected.txt: Removed.
* fast/regions/selection/crash-deselect.html: Removed.
* fast/regions/selection/crash-select-all-expected.txt: Removed.
* fast/regions/selection/crash-select-all.html: Removed.
* fast/regions/selection/crash-when-element-is-inside-column-and-the-containing-block-is-inside-flow-expected.txt: Removed.
* fast/regions/selection/crash-when-element-is-inside-column-and-the-containing-block-is-inside-flow.html: Removed.
* fast/regions/selection/invalid-region-selection-crash-expected.txt: Removed.
* fast/regions/selection/invalid-region-selection-crash.html: Removed.
* fast/regions/selection/position-for-point-1-expected.txt: Removed.
* fast/regions/selection/position-for-point-1-vert-lr-expected.txt: Removed.
* fast/regions/selection/position-for-point-1-vert-lr.html: Removed.
* fast/regions/selection/position-for-point-1-vert-rl-expected.txt: Removed.
* fast/regions/selection/position-for-point-1-vert-rl.html: Removed.
* fast/regions/selection/position-for-point-1.html: Removed.
* fast/regions/selection/position-for-point-expected.txt: Removed.
* fast/regions/selection/position-for-point-inline-content-node-expected.txt: Removed.
* fast/regions/selection/position-for-point-inline-content-node.html: Removed.
* fast/regions/selection/position-for-point-vert-lr-expected.txt: Removed.
* fast/regions/selection/position-for-point-vert-lr.html: Removed.
* fast/regions/selection/position-for-point-vert-rl-expected.txt: Removed.
* fast/regions/selection/position-for-point-vert-rl.html: Removed.
* fast/regions/selection/position-for-point.html: Removed.
* fast/regions/selection/select-all-without-regions-expected.txt: Removed.
* fast/regions/selection/select-all-without-regions.html: Removed.
* fast/regions/selection/selecting-text-ignoring-region-expected.html: Removed.
* fast/regions/selection/selecting-text-ignoring-region-horiz-bt-expected.html: Removed.
* fast/regions/selection/selecting-text-ignoring-region-horiz-bt.html: Removed.
* fast/regions/selection/selecting-text-ignoring-region-vert-lr-expected.html: Removed.
* fast/regions/selection/selecting-text-ignoring-region-vert-lr.html: Removed.
* fast/regions/selection/selecting-text-ignoring-region-vert-rl-expected.html: Removed.
* fast/regions/selection/selecting-text-ignoring-region-vert-rl.html: Removed.
* fast/regions/selection/selecting-text-ignoring-region.html: Removed.
* fast/regions/selection/selecting-text-in-2-regions-expected.html: Removed.
* fast/regions/selection/selecting-text-in-2-regions-horiz-bt-expected.html: Removed.
* fast/regions/selection/selecting-text-in-2-regions-horiz-bt.html: Removed.
* fast/regions/selection/selecting-text-in-2-regions-vert-lr-expected.html: Removed.
* fast/regions/selection/selecting-text-in-2-regions-vert-lr.html: Removed.
* fast/regions/selection/selecting-text-in-2-regions-vert-rl-expected.html: Removed.
* fast/regions/selection/selecting-text-in-2-regions-vert-rl.html: Removed.
* fast/regions/selection/selecting-text-in-2-regions.html: Removed.
* fast/regions/selection/selecting-text-in-empty-region-expected.txt: Removed.
* fast/regions/selection/selecting-text-in-empty-region.html: Removed.
* fast/regions/selection/selecting-text-including-region-expected.html: Removed.
* fast/regions/selection/selecting-text-including-region.html: Removed.
* fast/regions/selection/selecting-text-through-different-region-flows-2-expected.html: Removed.
* fast/regions/selection/selecting-text-through-different-region-flows-2.html: Removed.
* fast/regions/selection/selecting-text-through-different-region-flows-expected.html: Removed.
* fast/regions/selection/selecting-text-through-different-region-flows.html: Removed.
* fast/regions/selection/selection-direction-expected.html: Removed.
* fast/regions/selection/selection-direction.html: Removed.
* fast/regions/selection/selection-ended-in-empty-region-expected.txt: Removed.
* fast/regions/selection/selection-ended-in-empty-region.html: Removed.
* fast/regions/selection/selection-gaps-paint-crash-expected.txt: Removed.
* fast/regions/selection/selection-gaps-paint-crash.html: Removed.
* fast/regions/selection/selection-in-overflow-expected.html: Removed.
* fast/regions/selection/selection-in-overflow-hit-testing-expected.html: Removed.
* fast/regions/selection/selection-in-overflow-hit-testing.html: Removed.
* fast/regions/selection/selection-in-overflow.html: Removed.
* fast/regions/selection/selection-in-text-after-overflow-hit-testing-expected.html: Removed.
* fast/regions/selection/selection-in-text-after-overflow-hit-testing.html: Removed.
* fast/regions/shape-outside-floats: Removed.
* fast/regions/shape-outside-floats/regions-shape-outside-content-flows-multiple-regions-expected.html: Removed.
* fast/regions/shape-outside-floats/regions-shape-outside-content-flows-multiple-regions.html: Removed.
* fast/regions/shape-outside-floats/regions-shape-outside-floats-inset-expected.html: Removed.
* fast/regions/shape-outside-floats/regions-shape-outside-floats-inset.html: Removed.
* fast/regions/shape-outside-floats/regions-shape-outside-region-polygon-floats-expected.html: Removed.
* fast/regions/shape-outside-floats/regions-shape-outside-region-polygon-floats.html: Removed.
* fast/regions/simplified-layout-no-regions-expected.txt: Removed.
* fast/regions/simplified-layout-no-regions.html: Removed.
* fast/regions/static-in-relative-overflow-expected.html: Removed.
* fast/regions/static-in-relative-overflow.html: Removed.
* fast/regions/sticky-border-overflow-expected.html: Removed.
* fast/regions/sticky-border-overflow.html: Removed.
* fast/regions/subtree-with-horiz-bt-expected.html: Removed.
* fast/regions/subtree-with-horiz-bt.html: Removed.
* fast/regions/subtree-with-horiz-tb-expected.html: Removed.
* fast/regions/subtree-with-horiz-tb.html: Removed.
* fast/regions/subtree-with-vert-lr-expected.html: Removed.
* fast/regions/subtree-with-vert-lr.html: Removed.
* fast/regions/subtree-with-vert-rl-expected.html: Removed.
* fast/regions/subtree-with-vert-rl.html: Removed.
* fast/regions/svg: Removed.
* fast/regions/svg/svg-doc-fragment-not-collected-expected.html: Removed.
* fast/regions/svg/svg-doc-fragment-not-collected.html: Removed.
* fast/regions/svg/svg-element-not-collected-expected.html: Removed.
* fast/regions/svg/svg-element-not-collected.html: Removed.
* fast/regions/svg/svg-root-element-collected-expected.txt: Removed.
* fast/regions/svg/svg-root-element-collected.html: Removed.
* fast/regions/svg/symbol-in-named-flow-crash-expected.txt: Removed.
* fast/regions/svg/symbol-in-named-flow-crash.svg: Removed.
* fast/regions/table-caption-as-region-expected.html: Removed.
* fast/regions/table-caption-as-region.html: Removed.
* fast/regions/table-cell-as-region-expected.html: Removed.
* fast/regions/table-cell-as-region.html: Removed.
* fast/regions/text-break-properties-expected.txt: Removed.
* fast/regions/text-break-properties.html: Removed.
* fast/regions/text-region-breaks-expected.txt: Removed.
* fast/regions/text-region-breaks.html: Removed.
* fast/regions/text-region-split-after-resize-expected.txt: Removed.
* fast/regions/text-region-split-after-resize.html: Removed.
* fast/regions/text-region-split-expected.txt: Removed.
* fast/regions/text-region-split-horizontal-bt-expected.txt: Removed.
* fast/regions/text-region-split-horizontal-bt.html: Removed.
* fast/regions/text-region-split-small-pagination.html: Removed.
* fast/regions/text-region-split-vertical-expected.txt: Removed.
* fast/regions/text-region-split-vertical-rl-expected.txt: Removed.
* fast/regions/text-region-split-vertical-rl.html: Removed.
* fast/regions/text-region-split-vertical.html: Removed.
* fast/regions/text-region-split.html: Removed.
* fast/regions/top-overflow-out-of-second-region-expected.html: Removed.
* fast/regions/top-overflow-out-of-second-region.html: Removed.
* fast/regions/universal-selector-children-to-the-same-region-expected.txt: Removed.
* fast/regions/universal-selector-children-to-the-same-region.html: Removed.
* fast/regions/unsplittable-nested-region-expected.html: Removed.
* fast/regions/unsplittable-nested-region.html: Removed.
* fast/regions/visibility-hidden-expected.html: Removed.
* fast/regions/visibility-hidden.html: Removed.
* fast/regions/webkit-background-clip-text-expected.html: Removed.
* fast/regions/webkit-background-clip-text.html: Removed.
* fast/regions/webkit-flow-double-pagination-float-push-expected.html: Removed.
* fast/regions/webkit-flow-double-pagination-float-push.html: Removed.
* fast/regions/webkit-flow-float-pushed-to-last-region-expected.html: Removed.
* fast/regions/webkit-flow-float-pushed-to-last-region.html: Removed.
* fast/regions/webkit-flow-float-unable-to-push-expected.html: Removed.
* fast/regions/webkit-flow-float-unable-to-push.html: Removed.
* fast/regions/webkit-flow-floats-inside-regions-bounds-expected.html: Removed.
* fast/regions/webkit-flow-floats-inside-regions-bounds.html: Removed.
* fast/regions/webkit-flow-inlines-dynamic-expected.html: Removed.
* fast/regions/webkit-flow-inlines-dynamic.html: Removed.
* fast/regions/webkit-flow-inlines-inside-regions-bounds-expected.html: Removed.
* fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-expected.html: Removed.
* fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-rl-expected.html: Removed.
* fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-rl.html: Removed.
* fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical.html: Removed.
* fast/regions/webkit-flow-inlines-inside-regions-bounds.html: Removed.
* fast/regions/webkit-flow-renderer-expected.html: Removed.
* fast/regions/webkit-flow-renderer-layer-expected.html: Removed.
* fast/regions/webkit-flow-renderer-layer.html: Removed.
* fast/regions/webkit-flow-renderer-nested-expected.html: Removed.
* fast/regions/webkit-flow-renderer-nested.html: Removed.
* fast/regions/webkit-flow-renderer.html: Removed.
* fast/regions/webkit-region-syntax-space-expected.txt: Removed.
* fast/regions/webkit-region-syntax-space.html: Removed.
* fast/regions/writing-mode: Removed.
* fast/regions/writing-mode/changing-writing-mode-2-expected.html: Removed.
* fast/regions/writing-mode/changing-writing-mode-2.html: Removed.
* fast/regions/writing-mode/changing-writing-mode-3-expected.html: Removed.
* fast/regions/writing-mode/changing-writing-mode-3.html: Removed.
* fast/regions/writing-mode/changing-writing-mode-4-expected.html: Removed.
* fast/regions/writing-mode/changing-writing-mode-4.html: Removed.
* fast/regions/writing-mode/changing-writing-mode-5-expected.html: Removed.
* fast/regions/writing-mode/changing-writing-mode-5.html: Removed.
* fast/regions/writing-mode/changing-writing-mode-expected.html: Removed.
* fast/regions/writing-mode/changing-writing-mode.html: Removed.
* fast/regions/writing-mode/invalid-first-region-with-writing-mode-2-expected.html: Removed.
* fast/regions/writing-mode/invalid-first-region-with-writing-mode-2.html: Removed.
* fast/regions/writing-mode/invalid-first-region-with-writing-mode-expected.html: Removed.
* fast/regions/writing-mode/invalid-first-region-with-writing-mode.html: Removed.
* fast/ruby/ruby-rt-with-region-crash-expected.txt: Removed.
* fast/ruby/ruby-rt-with-region-crash.html: Removed.
* fast/shapes/shape-outside-floats/shape-outside-floats-layout-after-initial-layout-pass-expected.html: Removed.
* fast/shapes/shape-outside-floats/shape-outside-floats-layout-after-initial-layout-pass.html: Removed.
* platform/gtk-wayland/TestExpectations:
* platform/gtk/TestExpectations:
* platform/ios-device/TestExpectations:
* platform/ios-simulator-wk1/TestExpectations:
* platform/ios-simulator-wk2/TestExpectations:
* platform/ios-wk1/TestExpectations:
* platform/ios-wk2/TestExpectations:
* platform/ios/TestExpectations:
* platform/mac-wk2/TestExpectations:
* platform/mac/TestExpectations:
* platform/win/TestExpectations:
* platform/wpe/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222423 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoWeakPtrFactory should populate m_ref lazily.
zalan@apple.com [Sat, 23 Sep 2017 04:38:45 +0000 (04:38 +0000)]
WeakPtrFactory should populate m_ref lazily.
https://bugs.webkit.org/show_bug.cgi?id=177375

Reviewed by Geoffrey Garen.

Source/WebCore:

* Modules/encryptedmedia/CDM.cpp:
(WebCore::CDM::CDM):
* Modules/encryptedmedia/CDM.h:
(WebCore::CDM::createWeakPtr):
* Modules/encryptedmedia/MediaKeySession.cpp:
(WebCore::MediaKeySession::MediaKeySession):
(WebCore::MediaKeySession::generateRequest):
(WebCore::MediaKeySession::load):
(WebCore::MediaKeySession::update):
(WebCore::MediaKeySession::close):
(WebCore::MediaKeySession::remove):
* Modules/encryptedmedia/MediaKeys.cpp:
(WebCore::MediaKeys::MediaKeys):
(WebCore::MediaKeys::createSession):
* Modules/mediastream/MediaDevices.cpp:
(WebCore::MediaDevices::MediaDevices):
* Modules/mediastream/MediaDevices.h:
(WebCore::MediaDevices::createWeakPtr):
* Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::MediaStreamTrack):
* Modules/mediastream/MediaStreamTrack.h:
(WebCore::MediaStreamTrack::createWeakPtr):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::AccessibilityRenderObject):
* accessibility/AccessibilityRenderObject.h:
(WebCore::AccessibilityRenderObject::createWeakPtr):
* animation/WebAnimation.cpp:
(WebCore::WebAnimation::WebAnimation):
* animation/WebAnimation.h:
* css/FontFace.cpp:
(WebCore::FontFace::FontFace):
(WebCore::FontFace::createWeakPtr):
(WebCore::FontFace::createWeakPtr const): Deleted.
* css/FontFace.h:
* css/StyleSheetContents.h:
* dom/DataTransferItemList.cpp:
(WebCore::DataTransferItemList::DataTransferItemList):
(WebCore::DataTransferItemList::add):
(WebCore::DataTransferItemList::ensureItems const):
(WebCore::DataTransferItemList::didSetStringData):
* dom/Document.cpp:
(WebCore::Document::postTask):
* dom/Document.h:
(WebCore::Document::createWeakPtr):
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement):
* html/HTMLMediaElement.h:
(WebCore::HTMLMediaElement::createWeakPtr):
* html/HTMLPictureElement.h:
* html/parser/HTMLResourcePreloader.h:
(WebCore::HTMLResourcePreloader::HTMLResourcePreloader):
(WebCore::HTMLResourcePreloader::createWeakPtr):
* loader/LinkLoader.cpp:
(WebCore::LinkLoader::LinkLoader):
* loader/LinkLoader.h:
(WebCore::LinkLoader::createWeakPtr):
* loader/MediaResourceLoader.cpp:
(WebCore::MediaResourceLoader::MediaResourceLoader):
* loader/MediaResourceLoader.h:
* page/DOMWindow.cpp:
(WebCore::DOMWindow::DOMWindow):
* page/DOMWindow.h:
* platform/GenericTaskQueue.cpp:
(WebCore::TaskDispatcher<Timer>::TaskDispatcher):
(WebCore::TaskDispatcher<Timer>::postTask):
* platform/GenericTaskQueue.h:
(WebCore::GenericTaskQueue::GenericTaskQueue):
(WebCore::GenericTaskQueue::enqueueTask):
* platform/ScrollableArea.h:
(WebCore::ScrollableArea::createWeakPtr):
* platform/Scrollbar.cpp:
(WebCore::Scrollbar::Scrollbar):
* platform/Scrollbar.h:
(WebCore::Scrollbar::createWeakPtr):
* platform/Widget.h:
(WebCore::Widget::createWeakPtr):
* platform/audio/mac/AudioHardwareListenerMac.cpp:
(WebCore::AudioHardwareListenerMac::AudioHardwareListenerMac):
* platform/graphics/FontCascade.cpp:
(WebCore::FontCascade::FontCascade):
* platform/graphics/FontCascade.h:
(WebCore::FontCascade::createWeakPtr const):
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
(WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
(WebCore::MediaPlayerPrivateAVFoundation::createWeakPtr):
* platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.h:
(WebCore::CDMSessionAVFoundationObjC::createWeakPtr):
* platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.mm:
(WebCore::CDMSessionAVFoundationObjC::CDMSessionAVFoundationObjC):
* platform/graphics/avfoundation/objc/CDMSessionAVStreamSession.mm:
(WebCore::CDMSessionAVStreamSession::CDMSessionAVStreamSession):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
(WebCore::MediaPlayerPrivateAVFoundationObjC::createWeakPtr):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::createWeakPtr):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::sizeWillChangeAtTime):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::MediaPlayerPrivateMediaStreamAVFObjC):
* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::SourceBufferPrivateAVFObjC):
(WebCore::SourceBufferPrivateAVFObjC::append):
(WebCore::SourceBufferPrivateAVFObjC::abort):
* platform/graphics/cv/TextureCacheCV.mm:
(WebCore::TextureCacheCV::TextureCacheCV):
(WebCore::TextureCacheCV::textureFromImage):
* platform/graphics/mac/DisplayRefreshMonitorMac.cpp:
(WebCore::DisplayRefreshMonitorMac::DisplayRefreshMonitorMac):
(WebCore::DisplayRefreshMonitorMac::displayLinkFired):
* platform/ios/RemoteCommandListenerIOS.h:
(WebCore::RemoteCommandListenerIOS::createWeakPtr):
* platform/ios/RemoteCommandListenerIOS.mm:
(WebCore::RemoteCommandListenerIOS::RemoteCommandListenerIOS):
* platform/mac/RemoteCommandListenerMac.h:
(WebCore::RemoteCommandListenerMac::createWeakPtr):
* platform/mediastream/MediaStreamPrivate.cpp:
(WebCore::MediaStreamPrivate::MediaStreamPrivate):
* platform/mediastream/MediaStreamPrivate.h:
(WebCore::MediaStreamPrivate::createWeakPtr):
* platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::RealtimeMediaSource):
* platform/mediastream/RealtimeMediaSource.h:
* platform/mock/MockMediaEndpoint.cpp:
(WebCore::MockMediaEndpoint::MockMediaEndpoint):
(WebCore::MockMediaEndpoint::generateDtlsInfo):
* rendering/RenderMultiColumnSpannerPlaceholder.cpp:
(WebCore::RenderMultiColumnSpannerPlaceholder::RenderMultiColumnSpannerPlaceholder):
* rendering/RenderMultiColumnSpannerPlaceholder.h:
* rendering/RenderView.cpp:
(WebCore::RenderView::RenderView):
* rendering/RenderView.h:
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::RenderWidget):
* rendering/RenderWidget.h:
(WebCore::RenderWidget::createWeakPtr):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::RootInlineBox):
* rendering/RootInlineBox.h:
(WebCore::RootInlineBox::createWeakPtr):
* svg/SVGPathElement.cpp:
(WebCore::SVGPathElement::SVGPathElement):
* svg/SVGPathElement.h:
* svg/properties/SVGMatrixTearOff.h:
* testing/MockCDMFactory.cpp:
(WebCore::MockCDMFactory::MockCDMFactory):
(WebCore::MockCDMFactory::createCDM):
(WebCore::MockCDM::MockCDM):
(WebCore::MockCDM::createInstance):
(WebCore::m_weakPtrFactory): Deleted.

Source/WebCore/PAL:

* pal/system/mac/SystemSleepListenerMac.mm:
(PAL::SystemSleepListenerMac::SystemSleepListenerMac):

Source/WebKit:

* UIProcess/ApplePay/WebPaymentCoordinatorProxy.cpp:
(WebKit::WebPaymentCoordinatorProxy::WebPaymentCoordinatorProxy):
(WebKit::WebPaymentCoordinatorProxy::canMakePaymentsWithActiveCard):
(WebKit::WebPaymentCoordinatorProxy::openPaymentSetup):
* UIProcess/ApplePay/mac/WebPaymentCoordinatorProxyMac.mm:
(WebKit::WebPaymentCoordinatorProxy::platformShowPaymentUI):
* UIProcess/ApplicationStateTracker.mm:
(WebKit::ApplicationStateTracker::ApplicationStateTracker):
* UIProcess/Cocoa/WebViewImpl.h:
(WebKit::WebViewImpl::createWeakPtr):
* UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::WebViewImpl):
* UIProcess/Launcher/ProcessLauncher.cpp:
(WebKit::ProcessLauncher::ProcessLauncher):
* UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::ProcessLauncher::launchProcess):
* UIProcess/ProcessAssertion.h:
(WebKit::ProcessAssertion::createWeakPtr):
* UIProcess/WebPageProxy.cpp:
(WebKit::m_configurationPreferenceValues):
(WebKit::m_weakPtrFactory): Deleted.
* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::createWeakPtr const):
* WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.h:
(WebKit::RemoteLayerTreeDrawingArea::createWeakPtr):
* WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):

Source/WebKitLegacy/mac:

* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::WebEditorClient):
(WebEditorClient::requestCandidatesForSelection):

Source/WTF:

This helps us with the overhead of initializing WeakPtrFactory for
objects that rarely end up creating the weak reference.
-This is in preparation for introducing WeakPtr to RenderObject.

All credit to Geoffrey Garen.

* wtf/WeakPtr.h:
(WTF::WeakReference::get const):
(WTF::WeakReference::clear):
(WTF::WeakReference::WeakReference):
(WTF::WeakPtrFactory::~WeakPtrFactory):
(WTF::WeakPtrFactory::createWeakPtr const):
(WTF::WeakPtrFactory::revokeAll):
(WTF::WeakPtrFactory::WeakPtrFactory): Deleted.

Tools:

* TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
(TestWebKitAPI::TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222422 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoSpeculatively change iteration protocall to use the same next function
keith_miller@apple.com [Sat, 23 Sep 2017 02:08:04 +0000 (02:08 +0000)]
Speculatively change iteration protocall to use the same next function
https://bugs.webkit.org/show_bug.cgi?id=175653

Reviewed by Saam Barati.

JSTests:

Change test to match the new iteration behavior.

* stress/spread-optimized-properly.js:

Source/JavaScriptCore:

This patch speculatively makes a change to the iteration protocall to fetch the next
property immediately after calling the Symbol.iterator function. This is, in theory,
a breaking change, so we will see if this breaks things (most likely it won't as this
is a relatively subtle point).

See: https://github.com/tc39/ecma262/issues/976

* builtins/IteratorHelpers.js:
(performIteration):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitEnumeration):
(JSC::BytecodeGenerator::emitIteratorNext):
(JSC::BytecodeGenerator::emitIteratorNextWithValue):
(JSC::BytecodeGenerator::emitDelegateYield):
* bytecompiler/BytecodeGenerator.h:
* bytecompiler/NodesCodegen.cpp:
(JSC::ArrayPatternNode::bindValue const):
* inspector/JSInjectedScriptHost.cpp:
(Inspector::JSInjectedScriptHost::iteratorEntries):
* runtime/IteratorOperations.cpp:
(JSC::iteratorNext):
(JSC::iteratorStep):
(JSC::iteratorClose):
(JSC::iteratorForIterable):
* runtime/IteratorOperations.h:
(JSC::forEachInIterable):
* runtime/JSGenericTypedArrayViewConstructorInlines.h:
(JSC::constructGenericTypedArrayViewFromIterator):
(JSC::constructGenericTypedArrayViewWithArguments):

LayoutTests:

Change test to match the new iteration behavior.

* js/sequence-iterator-protocol-2-expected.txt:
* js/sequence-iterator-protocol-2.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222421 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoWeb Inspector: Remove SidebarPanel show/hide and added/removed
mattbaker@apple.com [Sat, 23 Sep 2017 00:55:23 +0000 (00:55 +0000)]
Web Inspector: Remove SidebarPanel show/hide and added/removed
https://bugs.webkit.org/show_bug.cgi?id=177387

Reviewed by Devin Rousso.

* UserInterface/Views/DebuggerTabContentView.js:
(WI.DebuggerTabContentView.prototype.showDetailsSidebarPanels):
* UserInterface/Views/SearchSidebarPanel.js:
(WI.SearchSidebarPanel.prototype.focusSearchField):
* UserInterface/Views/Sidebar.js:
(WI.Sidebar.prototype.insertSidebarPanel):
(WI.Sidebar.prototype.removeSidebarPanel):
* UserInterface/Views/SidebarPanel.js:
(WI.SidebarPanel.prototype.show): Deleted.
(WI.SidebarPanel.prototype.hide): Deleted.
(WI.SidebarPanel.prototype.added): Deleted.
(WI.SidebarPanel.prototype.removed): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222420 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoWebRTC test gardening for iOS.
ryanhaddad@apple.com [Sat, 23 Sep 2017 00:55:01 +0000 (00:55 +0000)]
WebRTC test gardening for iOS.

Unreviewed test gardening.

* platform/ios/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222419 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoMove flaky expectation for imported/w3c/web-platform-tests/payment-request/payment...
ryanhaddad@apple.com [Sat, 23 Sep 2017 00:40:52 +0000 (00:40 +0000)]
Move flaky expectation for imported/w3c/web-platform-tests/payment-request/payment-request-show-method.https.html.
https://bugs.webkit.org/show_bug.cgi?id=177391

Unreviewed test gardening.

* platform/ios-wk2/TestExpectations:
* platform/ios/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222418 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[Win64] Crashes in Yarr JIT compiled code
commit-queue@webkit.org [Sat, 23 Sep 2017 00:27:47 +0000 (00:27 +0000)]
[Win64] Crashes in Yarr JIT compiled code
https://bugs.webkit.org/show_bug.cgi?id=177293

Patch by Fujii Hironori <Hironori.Fujii@sony.com> on 2017-09-22
Reviewed by Yusuke Suzuki.

In x64 Windows, rcx register is used for the address of allocated
space for the return value. But, rcx is used for regT1 since
r221052. Save rcx in the stack.

* yarr/YarrJIT.cpp:
(JSC::Yarr::YarrGenerator::generateEnter): Push ecx.
(JSC::Yarr::YarrGenerator::generateReturn): Pop ecx.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222417 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoWeb Inspector: View should automatically layout when it becomes attached to the DOM
mattbaker@apple.com [Sat, 23 Sep 2017 00:27:38 +0000 (00:27 +0000)]
Web Inspector: View should automatically layout when it becomes attached to the DOM
https://bugs.webkit.org/show_bug.cgi?id=177189

Reviewed by Devin Rousso.

This guarantees that a layout is always scheduled as soon as a view is
attached to the DOM. Now that nearly all views are created lazily, it
is safe to make this change even without having a visibility concept in
the View class that would prevent layouts for background views.

* UserInterface/Views/View.js:
(WI.View):
Remove `this._needsLayoutWhenAttachedToRoot` flag, which is now implicit.
This was set if a layout was requested before the view had been attached
to the DOM.

(WI.View.prototype.get element):
(WI.View.prototype.get layoutPending):
(WI.View.prototype.get parentView):
(WI.View.prototype.get subviews):
(WI.View.prototype.get isAttached):
(WI.View.prototype.insertSubviewBefore):
(WI.View.prototype.removeSubview):
(WI.View.prototype.removeAllSubviews):
(WI.View.prototype.attached):
(WI.View.prototype.detached):
Hooks for subclasses to define behavior added or removed from the DOM.
(WI.View.prototype._didMoveToParent):
(WI.View.prototype._didMoveToWindow):
(WI.View._scheduleLayoutForView):
(WI.View.prototype.didMoveToWindow): Deleted.
(WI.View.prototype.didMoveToParent): Deleted.
These were only used by View, and have been made private.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222416 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoRe-enable configuration.HTTPCookieStorage on session without credentials
wilander@apple.com [Fri, 22 Sep 2017 23:37:23 +0000 (23:37 +0000)]
Re-enable configuration.HTTPCookieStorage on session without credentials
https://bugs.webkit.org/show_bug.cgi?id=177393

This patch rolls back the crucial change to the network session
without credentials that landed in r221632:
<http://trac.webkit.org/changeset/221632>

Reviewed by Brent Fulgham.

* NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::NetworkSessionCocoa::NetworkSessionCocoa):
    Commented out the disabled cookie jar and added a FIXME
    referring to https://bugs.webkit.org/show_bug.cgi?id=177394.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222414 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoWSL should report an error if you try to create an operator overload that will never...
fpizlo@apple.com [Fri, 22 Sep 2017 23:27:23 +0000 (23:27 +0000)]
WSL should report an error if you try to create an operator overload that will never be called
https://bugs.webkit.org/show_bug.cgi?id=177092

Reviewed by JF Bastien.

This adds all kinds of checks to ensure that your operator overloads make sense. This adds all
kinds of tests for those checks.

In the process of writing those tests, I hit an awesome bug: function instantiation was
instantiating all types, which meant that if that instantiated function needed to resolve calls
to protocol functions, we'd fail because we would have cloned top-level struct types. We need
to preserve the uninstantiated argument types, type arguments, and return type (for casts) in
order to be able to resolve protocol calls. But we also need the instantiated version of the
type arguments for execution. So, this adds some more stuff to the CallExpression class.

* WebGPUShadingLanguageRI/All.js:
* WebGPUShadingLanguageRI/ArrayRefType.js:
(ArrayRefType.prototype.unifyImpl):
* WebGPUShadingLanguageRI/ArrayType.js:
(ArrayType.prototype.get isArray):
* WebGPUShadingLanguageRI/CallExpression.js:
(CallExpression.resolve):
(CallExpression.prototype.resolve):
(CallExpression.prototype.resolveToOverload):
* WebGPUShadingLanguageRI/Checker.js:
(Checker.prototype._checkOperatorOverload):
(Checker.prototype.visitFuncDef):
(Checker.prototype.visitProtocolDecl):
(Checker.prototype.visitMakeArrayRefExpression):
* WebGPUShadingLanguageRI/EBufferBuilder.js:
(EBufferBuilder.prototype._createEPtr):
* WebGPUShadingLanguageRI/EPtr.js:
(EPtr):
* WebGPUShadingLanguageRI/Evaluator.js:
(Evaluator.prototype._snapshot):
(Evaluator.prototype._runBody):
(Evaluator.prototype.visitFunctionLikeBlock):
(Evaluator.prototype.visitCallExpression):
(Evaluator):
(Evaluator.prototype.runFunc): Deleted.
* WebGPUShadingLanguageRI/ExternalOrigin.js: Added.
* WebGPUShadingLanguageRI/Func.js:
(Func.prototype.toDeclString):
* WebGPUShadingLanguageRI/FuncInstantiator.js:
(FuncInstantiator.prototype.getUnique.InstantiationSubstitution.prototype.visitCallExpression):
(FuncInstantiator.prototype.getUnique.InstantiationSubstitution):
(FuncInstantiator.prototype.getUnique.InstantiationInstantiateImmediates.prototype.visitCallExpression):
(FuncInstantiator.prototype.getUnique.InstantiationInstantiateImmediates):
(FuncInstantiator.prototype.getUnique.Instantiate.prototype.visitFuncDef):
* WebGPUShadingLanguageRI/Intrinsics.js:
(Intrinsics):
* WebGPUShadingLanguageRI/LateChecker.js:
(LateChecker.prototype.visitReferenceType):
(LateChecker.prototype._checkShaderType):
* WebGPUShadingLanguageRI/Lexer.js:
(Lexer._textIsIdentifierImpl):
(Lexer.textIsIdentifier):
(Lexer.prototype.next):
(Lexer):
* WebGPUShadingLanguageRI/NameResolver.js:
(NameResolver.prototype.visitProtocolDecl):
* WebGPUShadingLanguageRI/Parse.js:
(parseType.getAddressSpace):
(parseType):
* WebGPUShadingLanguageRI/Prepare.js:
(let.prepare):
* WebGPUShadingLanguageRI/PtrType.js:
(PtrType.prototype.unifyImpl):
* WebGPUShadingLanguageRI/ReferenceType.js:
(ReferenceType):
* WebGPUShadingLanguageRI/Rewriter.js:
(Rewriter.prototype.visitReferenceType):
(Rewriter.prototype.processDerivedCallData):
* WebGPUShadingLanguageRI/StandardLibrary.js:
(intToString):
* WebGPUShadingLanguageRI/StatementCloner.js:
(StatementCloner.prototype.visitFuncDef):
* WebGPUShadingLanguageRI/StructLayoutBuilder.js:
(StructLayoutBuilder.prototype.visitCallExpression):
(StructLayoutBuilder):
* WebGPUShadingLanguageRI/Substitution.js:
(Substitution.prototype.visitTypeRef):
* WebGPUShadingLanguageRI/Test.html:
* WebGPUShadingLanguageRI/Test.js:
(checkNumber):
(set target):
(tests.literalBool):
(tests.identityBool):
(tests.intSimpleMath):
(tests.uintSimpleMath):
(tests.uint8SimpleMath):
(tests.equality):
(tests.logicalNegation):
(tests.notEquality):
(tests.equalityTypeFailure):
(tests.generalNegation):
(tests.add1):
(tests.simpleGeneric):
(tests.nameResolutionFailure):
(tests.simpleVariable):
(tests.simpleAssignment):
(tests.simpleDefault):
(tests.simpleDereference):
(tests.dereferenceStore):
(tests.simpleMakePtr):
(tests.threadArrayLoad):
(tests.threadArrayLoadIntLiteral):
(tests.deviceArrayLoad):
(tests.threadArrayStore):
(tests.deviceArrayStore):
(tests.deviceArrayStoreIntLiteral):
(tests.simpleProtocol):
(tests.typeMismatchReturn):
(tests.typeMismatchVariableDecl):
(tests.typeMismatchAssignment):
(tests.typeMismatchReturnParam):
(tests.badAdd):
(tests.lexerKeyword):
(tests.simpleNoReturn):
(tests.simpleUnreachableCode):
(tests.simpleStruct):
(tests.genericStructInstance):
(tests.doubleGenericCallsDoubleGeneric):
(tests.doubleGenericCallsSingleGeneric):
(tests.loadNull):
(tests.storeNull):
(tests.returnNull):
(tests.dereferenceDefaultNull):
(tests.defaultInitializedNull):
(tests.passNullToPtrMonomorphic):
(tests.passNullToPtrPolymorphic):
(tests.passNullToPolymorphic):
(tests.loadNullArrayRef):
(tests.storeNullArrayRef):
(tests.returnNullArrayRef):
(tests.dereferenceDefaultNullArrayRef):
(tests.defaultInitializedNullArrayRef):
(tests.defaultInitializedNullArrayRefIntLiteral):
(tests.passNullToPtrMonomorphicArrayRef):
(tests.passNullToPtrPolymorphicArrayRef):
(tests.returnIntLiteralUint):
(tests.returnIntLiteralDouble):
(tests.badIntLiteralForInt):
(tests.badIntLiteralForUint):
(tests.badIntLiteralForDouble):
(tests.passNullAndNotNull):
(tests.passNullAndNotNullFullPoly):
(tests.passNullAndNotNullFullPolyReverse):
(tests.nullTypeVariableUnify):
(tests.doubleNot):
(tests.simpleRecursion):
(tests.protocolMonoSigPolyDef):
(tests.protocolPolySigPolyDef):
(tests.protocolDoublePolySigDoublePolyDef):
(tests.protocolDoublePolySigDoublePolyDefExplicit):
(tests.variableShadowing):
(tests.ifStatement):
(tests.ifElseStatement):
(tests.ifElseIfStatement):
(tests.ifElseIfElseStatement):
(tests.returnIf):
(tests.simpleWhile):
(tests.protocolMonoPolySigDoublePolyDefExplicit):
(tests.ambiguousOverloadSimple):
(tests.ambiguousOverloadOverlapping):
(tests.ambiguousOverloadTieBreak):
(tests.intOverloadResolution):
(tests.intOverloadResolutionReverseOrder):
(tests.intOverloadResolutionGeneric):
(tests.intLiteralGeneric):
(tests.intLiteralGenericWithProtocols):
(tests.uintLiteralGeneric):
(tests.uintLiteralGenericWithProtocols):
(tests.intLiteralGenericSpecific):
(tests.simpleConstexpr):
(tests.break):
(tests.continue):
(tests.doWhile):
(tests.forLoop):
(tests.chainConstexpr):
(tests.chainGeneric):
(tests.chainStruct):
(tests.chainStructNewlyValid):
(tests.chainStructDevice):
(tests.paramChainStructDevice):
(tests.simpleProtocolExtends):
(tests.protocolExtendsTwo):
(tests.prefixPlusPlus):
(tests.prefixPlusPlusResult):
(tests.postfixPlusPlus):
(tests.postfixPlusPlusResult):
(tests.prefixMinusMinus):
(tests.prefixMinusMinusResult):
(tests.postfixMinusMinus):
(tests.postfixMinusMinusResult):
(tests.plusEquals):
(tests.plusEqualsResult):
(tests.minusEquals):
(tests.minusEqualsResult):
(tests.timesEquals):
(tests.timesEqualsResult):
(tests.divideEquals):
(tests.divideEqualsResult):
(tests.twoIntLiterals):
(tests.unifyDifferentLiterals):
(tests.unifyDifferentLiteralsBackwards):
(tests.unifyVeryDifferentLiterals):
(tests.unifyVeryDifferentLiteralsBackwards):
(tests.assignUintToInt):
(tests.buildArrayThenSumIt):
(tests.buildArrayThenSumItUsingArrayReference):
(tests.overrideSubscriptStruct):
(tests.overrideSubscriptStructAndDoStores):
(tests.overrideSubscriptStructAndUsePointers):
(tests.overrideSubscriptStructAndUsePointersIncorrectly):
(tests.makeArrayRefFromLocal):
(tests.makeArrayRefFromPointer):
(tests.makeArrayRefFromArrayRef):
(tests.simpleLength):
(tests.nonArrayRefArrayLengthSucceed):
(tests.nonArrayRefArrayLengthFail):
(tests.constexprIsNotLValuePtr):
(tests.constexprIsNotLValueAssign):
(tests.constexprIsNotLValueRMW):
(tests.assignLength):
(tests.assignLengthHelper):
(tests.simpleGetter):
(tests.simpleSetter):
(tests.genericAccessors):
(tests.bitSubscriptAccessor):
(tests.nestedSubscriptLValueEmulationSimple):
(tests.nestedSubscriptLValueEmulationGeneric):
(tests.boolBitAnd):
(tests.boolBitOr):
(tests.boolBitXor):
(tests.boolBitNot):
(tests.intBitAnd):
(tests.intBitOr):
(tests.intBitXor):
(tests.intBitNot):
(tests.intLShift):
(tests.intRShift):
(tests.uintBitAnd):
(tests.uintBitOr):
(tests.uintBitXor):
(tests.uintBitNot):
(tests.uintLShift):
(tests.uintRShift):
(tests.uint8BitAnd):
(tests.uint8BitOr):
(tests.uint8BitXor):
(tests.uint8BitNot):
(tests.uint8LShift):
(tests.uint8RShift):
(tests.floatMath):
(tests.genericCastInfer):
(tests.booleanMath):
(tests.typedefArray):
(tests.shaderTypes):
(tests.builtinVectors):
(tests.instantiateStructInStruct):
(tests.instantiateStructInStructWithInt2):
(tests.simpleEnum):
(tests.enumWithManualValues):
(tests.enumWithoutZero):
(tests.enumDuplicates):
(tests.enumWithSomeManualValues):
(tests.enumConstexprGenericFunction):
(tests.enumConstexprGenericStruct):
(tests.trap):
(tests.swizzle):
(tests.enumWithExplicitIntBase):
(tests.enumWithUintBase):
(tests.enumFloatBase):
(tests.enumPtrBase):
(tests.enumArrayRefBase):
(tests.emptyStruct):
(tests.enumStructBase):
(tests.enumNoMembers):
(tests.simpleSwitch):
(tests.exhaustiveUint8Switch):
(tests.notQuiteExhaustiveUint8Switch):
(tests.notQuiteExhaustiveUint8SwitchWithDefault):
(tests.switchFallThrough):
(tests.switchBreak):
(tests.enumSwitchBreakExhaustive):
(tests.enumSwitchBreakNotQuiteExhaustive):
(tests.enumSwitchBreakNotQuiteExhaustiveWithDefault):
(tests.simpleRecursiveStruct):
(tests.mutuallyRecursiveStruct):
(tests.mutuallyRecursiveStructWithPointersBroken):
(tests.mutuallyRecursiveStructWithPointers):
(tests.linkedList):
(tests.pointerToPointer):
(tests.arrayRefToArrayRef):
(tests.pointerGetter):
(tests.loneSetter):
(tests.setterWithMismatchedType):
(tests.setterWithMatchedType):
(tests.operatorWithUninferrableTypeVariable):
(tests.operatorWithoutUninferrableTypeVariable):
(tests.operatorCastWithUninferrableTypeVariable):
(tests.operatorCastWithTypeVariableInferredFromReturnType):
(tests.incWrongArgumentLength):
(tests.decWrongArgumentLength):
(tests.incWrongTypes):
(tests.decWrongTypes):
(tests.plusWrongArgumentLength):
(tests.minusWrongArgumentLength):
(tests.timesWrongArgumentLength):
(tests.divideWrongArgumentLength):
(tests.moduloWrongArgumentLength):
(tests.bitAndWrongArgumentLength):
(tests.bitOrWrongArgumentLength):
(tests.bitXorWrongArgumentLength):
(tests.lShiftWrongArgumentLength):
(tests.rShiftWrongArgumentLength):
(tests.bitNotWrongArgumentLength):
(tests.equalsWrongArgumentLength):
(tests.lessThanWrongArgumentLength):
(tests.lessEqualWrongArgumentLength):
(tests.greaterWrongArgumentLength):
(tests.greaterEqualWrongArgumentLength):
(tests.equalsWrongReturnType):
(tests.notEqualsOverload):
(tests.lessThanWrongReturnType):
(tests.lessEqualWrongReturnType):
(tests.greaterThanWrongReturnType):
(tests.greaterEqualWrongReturnType):
(tests.dotOperatorWrongArgumentLength):
(tests.dotOperatorSetterWrongArgumentLength):
(tests.loneSetterPointer):
(tests.setterWithNoGetterOverload):
(tests.setterWithNoGetterOverloadFixed):
(tests.anderWithNothingWrong):
(tests.anderWithWrongNumberOfArguments):
(tests.anderDoesntReturnPointer):
(tests.anderDoesntTakeReference):
(tests.anderWithArrayRef):
(tests.pointerIndexGetter):
(tests.loneIndexSetter):
(tests.notLoneIndexSetter):
(tests.indexSetterWithMismatchedType):
(tests.indexOperatorWrongArgumentLength):
(tests.indexOperatorSetterWrongArgumentLength):
(tests.loneIndexSetterPointer):
(tests.indexSetterWithNoGetterOverload):
(tests.indexSetterWithNoGetterOverloadFixed):
(tests.indexAnderWithNothingWrong):
(tests.indexAnderWithWrongNumberOfArguments):
(tests.indexAnderDoesntReturnPointer):
(tests.indexAnderDoesntTakeReference):
(tests.indexAnderWithArrayRef):
(tests.devicePtrPtr):
(tests.threadgroupPtrPtr):
(tests.constantPtrPtr):
(tests.pointerIndexGetterInProtocol):
(tests.loneIndexSetterInProtocol):
(tests.notLoneIndexSetterInProtocol):
(tests.indexSetterWithMismatchedTypeInProtocol):
(tests.indexOperatorWrongArgumentLengthInProtocol):
(tests.indexOperatorSetterWrongArgumentLengthInProtocol):
(tests.loneIndexSetterPointerInProtocol):
(tests.indexSetterWithNoGetterOverloadInProtocol):
(tests.indexSetterWithNoGetterOverloadFixedInProtocol):
(tests.indexAnderWithNothingWrongInProtocol):
(tests.indexAnderWithWrongNumberOfArgumentsInProtocol):
(tests.indexAnderDoesntReturnPointerInProtocol):
(tests.indexAnderDoesntTakeReferenceInProtocol):
(tests.indexAnderWithArrayRefInProtocol):
(doTest):
(this.window.let._.of.doTest):
(TEST_literalBool): Deleted.
(TEST_identityBool): Deleted.
(TEST_intSimpleMath): Deleted.
(TEST_uintSimpleMath): Deleted.
(TEST_uint8SimpleMath): Deleted.
(TEST_equality): Deleted.
(TEST_logicalNegation): Deleted.
(TEST_notEquality): Deleted.
(TEST_equalityTypeFailure): Deleted.
(): Deleted.
(TEST_add1): Deleted.
(TEST_simpleGeneric): Deleted.
(TEST_nameResolutionFailure): Deleted.
(TEST_simpleAssignment): Deleted.
(TEST_simpleDefault): Deleted.
(TEST_simpleDereference): Deleted.
(TEST_dereferenceStore): Deleted.
(TEST_simpleMakePtr): Deleted.
(TEST_threadArrayLoad): Deleted.
(TEST_threadArrayLoadIntLiteral): Deleted.
(TEST_deviceArrayLoad): Deleted.
(TEST_threadArrayStore): Deleted.
(TEST_deviceArrayStore): Deleted.
(TEST_deviceArrayStoreIntLiteral): Deleted.
(TEST_simpleProtocol): Deleted.
(TEST_typeMismatchReturn): Deleted.
(TEST_simpleNoReturn): Deleted.
(TEST_genericStructInstance): Deleted.
(TEST_doubleGenericCallsDoubleGeneric): Deleted.
(TEST_doubleGenericCallsSingleGeneric): Deleted.
(TEST_dereferenceDefaultNull): Deleted.
(TEST_dereferenceDefaultNullArrayRef): Deleted.
(TEST_returnIntLiteralDouble): Deleted.
(TEST_badIntLiteralForInt): Deleted.
(TEST_passNullAndNotNullFullPoly): Deleted.
(TEST_passNullAndNotNullFullPolyReverse): Deleted.
(TEST_nullTypeVariableUnify.recurse): Deleted.
(TEST_nullTypeVariableUnify.everyOrder): Deleted.
(TEST_nullTypeVariableUnify.everyPair): Deleted.
(TEST_nullTypeVariableUnify): Deleted.
(TEST_simpleRecursion): Deleted.
(TEST_protocolPolySigPolyDef): Deleted.
(TEST_protocolDoublePolySigDoublePolyDef): Deleted.
(TEST_protocolDoublePolySigDoublePolyDefExplicit): Deleted.
(TEST_variableShadowing): Deleted.
(TEST_ifStatement): Deleted.
(TEST_ifElseStatement): Deleted.
(TEST_ifElseIfStatement): Deleted.
(TEST_ifElseIfElseStatement): Deleted.
(TEST_returnIf): Deleted.
(TEST_simpleWhile): Deleted.
(TEST_protocolMonoPolySigDoublePolyDefExplicit): Deleted.
(TEST_intOverloadResolution): Deleted.
(TEST_intOverloadResolutionReverseOrder): Deleted.
(TEST_intOverloadResolutionGeneric): Deleted.
(TEST_intLiteralGeneric): Deleted.
(TEST_intLiteralGenericWithProtocols): Deleted.
(TEST_uintLiteralGeneric): Deleted.
(TEST_uintLiteralGenericWithProtocols): Deleted.
(TEST_intLiteralGenericSpecific): Deleted.
(TEST_simpleConstexpr): Deleted.
(TEST_break): Deleted.
(TEST_forLoop): Deleted.
(TEST_chainConstexpr): Deleted.
(TEST_chainGeneric): Deleted.
(TEST_chainStruct): Deleted.
(TEST_chainStructNewlyValid): Deleted.
(TEST_chainStructDevice): Deleted.
(TEST_paramChainStructDevice): Deleted.
(TEST_simpleProtocolExtends): Deleted.
(TEST_protocolExtendsTwo): Deleted.
(TEST_prefixPlusPlus): Deleted.
(TEST_prefixPlusPlusResult): Deleted.
(TEST_postfixPlusPlus): Deleted.
(TEST_postfixPlusPlusResult): Deleted.
(TEST_prefixMinusMinus): Deleted.
(TEST_prefixMinusMinusResult): Deleted.
(TEST_postfixMinusMinus): Deleted.
(TEST_postfixMinusMinusResult): Deleted.
(TEST_plusEquals): Deleted.
(TEST_plusEqualsResult): Deleted.
(TEST_minusEquals): Deleted.
(TEST_minusEqualsResult): Deleted.
(TEST_timesEquals): Deleted.
(TEST_timesEqualsResult): Deleted.
(TEST_divideEquals): Deleted.
(TEST_divideEqualsResult): Deleted.
(TEST_twoIntLiterals): Deleted.
(TEST_unifyDifferentLiterals): Deleted.
(TEST_buildArrayThenSumItUsingArrayReference): Deleted.
(TEST_overrideSubscriptStruct): Deleted.
(TEST_overrideSubscriptStructAndDoStores): Deleted.
(TEST_overrideSubscriptStructAndUsePointers): Deleted.
(TEST_overrideSubscriptStructAndUsePointersIncorrectly): Deleted.
(TEST_makeArrayRefFromPointer): Deleted.
(TEST_makeArrayRefFromArrayRef): Deleted.
(TEST_nonArrayRefArrayLengthSucceed): Deleted.
(TEST_nonArrayRefArrayLengthFail): Deleted.
(TEST_simpleSetter): Deleted.
(TEST_genericAccessors): Deleted.
(TEST_bitSubscriptAccessor): Deleted.
(TEST_nestedSubscriptLValueEmulationSimple): Deleted.
(TEST_nestedSubscriptLValueEmulationGeneric): Deleted.
(TEST_boolBitAnd): Deleted.
(TEST_boolBitOr): Deleted.
(TEST_boolBitXor): Deleted.
(TEST_boolBitNot): Deleted.
(TEST_intBitAnd): Deleted.
(TEST_intBitOr): Deleted.
(TEST_intBitXor): Deleted.
(TEST_intBitNot): Deleted.
(TEST_intLShift): Deleted.
(TEST_intRShift): Deleted.
(TEST_uintBitAnd): Deleted.
(TEST_uintBitOr): Deleted.
(TEST_uintBitXor): Deleted.
(TEST_uintBitNot): Deleted.
(TEST_uintLShift): Deleted.
(TEST_uintRShift): Deleted.
(TEST_uint8BitAnd): Deleted.
(TEST_uint8BitOr): Deleted.
(TEST_uint8BitXor): Deleted.
(TEST_uint8BitNot): Deleted.
(TEST_uint8LShift): Deleted.
(TEST_uint8RShift): Deleted.
(TEST_floatMath): Deleted.
(TEST_booleanMath): Deleted.
(TEST_typedefArray): Deleted.
(TEST_shaderTypes): Deleted.
(TEST_instantiateStructInStruct): Deleted.
(TEST_instantiateStructInStructWithInt2): Deleted.
(TEST_simpleEnum): Deleted.
(TEST_enumWithManualValues): Deleted.
(TEST_enumWithoutZero): Deleted.
(TEST_enumConstexprGenericFunction): Deleted.
(TEST_enumConstexprGenericStruct): Deleted.
(TEST_trap): Deleted.
(TEST_enumWithExplicitIntBase): Deleted.
(TEST_enumWithUintBase): Deleted.
(TEST_enumFloatBase): Deleted.
(TEST_enumStructBase): Deleted.
(TEST_simpleSwitch): Deleted.
(TEST_exhaustiveUint8Switch): Deleted.
(TEST_notQuiteExhaustiveUint8Switch): Deleted.
(TEST_switchFallThrough): Deleted.
(TEST_switchBreak): Deleted.
(TEST_enumSwitchBreakExhaustive): Deleted.
(TEST_enumSwitchBreakNotQuiteExhaustive): Deleted.
(TEST_simpleRecursiveStruct): Deleted.
(TEST_linkedList): Deleted.
* WebGPUShadingLanguageRI/Type.js:
(Type.prototype.get isArray):
* WebGPUShadingLanguageRI/TypeRef.js:
(TypeRef.wrap):
* WebGPUShadingLanguageRI/TypeVariableTracker.js:
(TypeVariableTracker.prototype.set get return):
(TypeVariableTracker.prototype.visitVariableRef):
(TypeVariableTracker):
* WebGPUShadingLanguageRI/Visitor.js:
(Visitor.prototype.visitProtocolDecl):
* WebGPUShadingLanguageRI/index.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222413 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoEnable File and Directory Entries API at runtime
cdumez@apple.com [Fri, 22 Sep 2017 23:16:06 +0000 (23:16 +0000)]
Enable File and Directory Entries API at runtime
https://bugs.webkit.org/show_bug.cgi?id=176616
<rdar://problem/34330942>

Reviewed by Geoffrey Garen.

Enable File and Directory Entries API at runtime on Mac/WebKit2,
now that DataTransfer.items is enabled there.

* Shared/WebPreferencesDefinitions.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222412 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoMark fast/mediastream/RTCPeerConnection-overloaded-operations.html as flaky.
ryanhaddad@apple.com [Fri, 22 Sep 2017 23:13:47 +0000 (23:13 +0000)]
Mark fast/mediastream/RTCPeerConnection-overloaded-operations.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=177395

Unreviewed test gardening.

* platform/ios/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222411 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoMark imported/w3c/web-platform-tests/payment-request/payment-request-show-method...
ryanhaddad@apple.com [Fri, 22 Sep 2017 22:31:02 +0000 (22:31 +0000)]
Mark imported/w3c/web-platform-tests/payment-request/payment-request-show-method.https.html as flaky on iOS.
https://bugs.webkit.org/show_bug.cgi?id=177391

Unreviewed test gardening.

* platform/ios/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222410 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoMark imported/w3c/web-platform-tests/css/css-ui-3/text-overflow-022.html as an image...
ryanhaddad@apple.com [Fri, 22 Sep 2017 21:47:40 +0000 (21:47 +0000)]
Mark imported/w3c/web-platform-tests/css/css-ui-3/text-overflow-022.html as an image failure.

Unreviewed test gardening.

* platform/ios-wk2/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222409 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoWeb Inspector: Styles Redesign: support toggling properties
nvasilyev@apple.com [Fri, 22 Sep 2017 21:37:15 +0000 (21:37 +0000)]
Web Inspector: Styles Redesign: support toggling properties
https://bugs.webkit.org/show_bug.cgi?id=176643

Reviewed by Joseph Pecoraro.

Add a primitive UI to make CSS property names and values editable. Autocomplete, syntax highlighting,
and proper keyboard navigation will be added later.

Display !important when it's specified. Before this patch !important wasn't shown in the redesigned
styles sidebar.

* UserInterface/Models/CSSProperty.js:
(WI.CSSProperty.prototype.update):
(WI.CSSProperty.prototype.get name):
(WI.CSSProperty.prototype.set name):
(WI.CSSProperty.prototype.get value):
(WI.CSSProperty.prototype.get rawValue):
(WI.CSSProperty.prototype.set rawValue):
CSSProperty.prototype.value returns the same value as before. !important remains stripped.
CSSProperty.prototype.rawValue returns a raw value from the payload. It may include !important.

(WI.CSSProperty.prototype._updateStyle):
(WI.CSSProperty.prototype._updateOwnerStyleText):
(WI.CSSProperty):
* UserInterface/Models/DOMNodeStyles.js:
(WI.DOMNodeStyles.prototype._parseStylePropertyPayload):
* UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.css:
(.spreadsheet-style-declaration-editor :matches(.name, .value):focus):
* UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.js:
(WI.SpreadsheetStyleProperty.prototype._update):
(WI.SpreadsheetStyleProperty.prototype._handleNameChange):
(WI.SpreadsheetStyleProperty.prototype._handleValueChange):
(WI.SpreadsheetStyleProperty):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222408 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoMark fast/forms/listbox-typeahead-greek.html as failing on Windows.
pvollan@apple.com [Fri, 22 Sep 2017 21:29:06 +0000 (21:29 +0000)]
Mark fast/forms/listbox-typeahead-greek.html as failing on Windows.
https://bugs.webkit.org/show_bug.cgi?id=177385

Unreviewed test gardening.

* platform/win/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222407 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoMark fast/forms/listbox-typeahead-cyrillic.html as failing on Windows.
pvollan@apple.com [Fri, 22 Sep 2017 21:24:01 +0000 (21:24 +0000)]
Mark fast/forms/listbox-typeahead-cyrillic.html as failing on Windows.
https://bugs.webkit.org/show_bug.cgi?id=177378

Unreviewed test gardening.

* platform/win/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222406 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoWeb Inspector: NavigationBar should coalesce consecutive dividers when items are...
mattbaker@apple.com [Fri, 22 Sep 2017 21:08:27 +0000 (21:08 +0000)]
Web Inspector: NavigationBar should coalesce consecutive dividers when items are hidden
https://bugs.webkit.org/show_bug.cgi?id=177379

Reviewed by Joseph Pecoraro.

* UserInterface/Views/NavigationBar.js:
(WI.NavigationBar.prototype.layout):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222405 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoAdd env() as an alias of constant()
timothy_horton@apple.com [Fri, 22 Sep 2017 20:15:14 +0000 (20:15 +0000)]
Add env() as an alias of constant()
https://bugs.webkit.org/show_bug.cgi?id=177371

Reviewed by Simon Fraser.

Source/WebCore:

* css/CSSValueKeywords.in:
* css/CSSVariableData.cpp:
(WebCore::CSSVariableData::checkVariablesForCyclesWithRange const):
(WebCore::CSSVariableData::resolveTokenRange const):
* css/parser/CSSVariableParser.cpp:
(WebCore::classifyBlock):
Add env() as an alias of constant() everywhere it is mentioned.

Source/WebInspectorUI:

* UserInterface/Models/CSSKeywordCompletions.js:
(WI.CSSKeywordCompletions.forProperty):
(WI.CSSKeywordCompletions.forFunction):
Add autocomplete support for env().

LayoutTests:

* TestExpectations:
* platform/ios-11/TestExpectations:
Duplicated constant() tests with env() instead.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222402 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[Win] WebKit is built as a static library, and not as a dll.
pvollan@apple.com [Fri, 22 Sep 2017 19:57:11 +0000 (19:57 +0000)]
[Win] WebKit is built as a static library, and not as a dll.
https://bugs.webkit.org/show_bug.cgi?id=177365

Reviewed by Brent Fulgham.

Set target type for WebKitLegacy target.

* Source/cmake/OptionsWin.cmake:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222401 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUnreviewed, rolling out r222394.
jlewis3@apple.com [Fri, 22 Sep 2017 19:56:05 +0000 (19:56 +0000)]
Unreviewed, rolling out r222394.

This broke the Windows Debug Build.

Reverted changeset:

"Remove build-webkit's notion of feature flags having a
default value"
https://bugs.webkit.org/show_bug.cgi?id=177338
http://trac.webkit.org/changeset/222394

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222400 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUnreviewed test gardening for iOS.
ryanhaddad@apple.com [Fri, 22 Sep 2017 19:31:22 +0000 (19:31 +0000)]
Unreviewed test gardening for iOS.

* platform/ios-simulator/TestExpectations:
* platform/ios-wk2/imported/w3c/web-platform-tests/WebCryptoAPI/import_export/test_rsa_importKey.https-expected.txt: Removed.
* platform/ios/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222399 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUsage of ErrorInstance::m_stackTrace on the mutator is racy with the collector
sbarati@apple.com [Fri, 22 Sep 2017 19:18:33 +0000 (19:18 +0000)]
Usage of ErrorInstance::m_stackTrace on the mutator is racy with the collector
https://bugs.webkit.org/show_bug.cgi?id=177368

Reviewed by Keith Miller.

* runtime/ErrorInstance.cpp:
(JSC::ErrorInstance::finishCreation):
(JSC::ErrorInstance::materializeErrorInfoIfNeeded):
(JSC::ErrorInstance::visitChildren):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222398 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[Curl] Use didReceiveBuffer instead of didReceiveData
commit-queue@webkit.org [Fri, 22 Sep 2017 19:01:25 +0000 (19:01 +0000)]
[Curl] Use didReceiveBuffer instead of didReceiveData
https://bugs.webkit.org/show_bug.cgi?id=177260

Patch by Basuke Suzuki <Basuke.Suzuki@sony.com> on 2017-09-22
Reviewed by Alex Christensen.

* platform/network/curl/CurlCacheEntry.cpp:
(WebCore::CurlCacheEntry::readCachedData):
* platform/network/curl/MultipartHandle.cpp:
(WebCore::MultipartHandle::didReceiveData):
* platform/network/curl/ResourceHandleCurlDelegate.cpp:
(WebCore::ResourceHandleCurlDelegate::didReceiveContentData):
(WebCore::ResourceHandleCurlDelegate::handleDataURL):
(WebCore::ResourceHandleCurlDelegate::didReceiveData):
(WebCore::ResourceHandleCurlDelegate::didReceiveDataCallback):
* platform/network/curl/ResourceHandleCurlDelegate.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222397 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoNon-prevalent resources should be allowed access to existing cookies in a third-party...
wilander@apple.com [Fri, 22 Sep 2017 18:53:32 +0000 (18:53 +0000)]
Non-prevalent resources should be allowed access to existing cookies in a third-party context
https://bugs.webkit.org/show_bug.cgi?id=177336
<rdar://problem/34578257>

Reviewed by Brent Fulgham.

Source/WebCore:

No new tests. I will update existing tests and add at least
one new test in a follow-up patch,
see https://bugs.webkit.org/show_bug.cgi?id=177337. Need to
land this to meet submission deadline and fix the regression.

This patch restructures what is communicated to the network process,
from two vectors - with user interaction and without user interaction -
to three vectors - to partition, to block, to neither partition nor block.
The previous two vectors did not allow proper categorization into which
domains should be partitioned, blocked, or left alone. That was the cause
of the regression where non-prevalent third-party domains erroneously had
their cookies blocked when they should fall back to the old behavior of
access but no new cookies allowed to be set.

* loader/ResourceLoadStatistics.cpp:
(WebCore::ResourceLoadStatistics::toString const):
(WebCore::ResourceLoadStatistics::merge):
* loader/ResourceLoadStatistics.h:
* platform/network/NetworkStorageSession.h:
* platform/network/cf/NetworkStorageSessionCFNet.cpp:
(WebCore::NetworkStorageSession::shouldPartitionCookies const):
(WebCore::NetworkStorageSession::shouldBlockThirdPartyCookies const):
(WebCore::NetworkStorageSession::shouldBlockCookies const):
(WebCore::NetworkStorageSession::setPrevalentDomainsToPartitionOrBlockCookies):
(WebCore::NetworkStorageSession::removePrevalentDomains):
(WebCore::NetworkStorageSession::shouldAllowThirdPartyCookies const): Deleted.
(WebCore::NetworkStorageSession::setPrevalentDomainsWithAndWithoutInteraction): Deleted.
* platform/network/mac/CookieJarMac.mm:
(WebCore::cookiesInBlockedForURL):
(WebCore::cookiesForURL):

Source/WebKit:

This patch restructures what is communicated to the network process,
from two vectors - with user interaction and without user interaction -
to three vectors - to partition, to block, to neither partition nor block.
The previous two vectors did not allow proper categorization into which
domains should be partitioned, blocked, or left alone. That was the cause
of the regression where non-prevalent third-party domains erroneously had
their cookies blocked when they should fall back to the old behavior of
access but no new cookies allowed to be set.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::updatePrevalentDomainsToPartitionOrBlockCookies):
(WebKit::NetworkProcess::updatePrevalentDomainsWithAndWithoutInteraction): Deleted.
* NetworkProcess/NetworkProcess.h:
* NetworkProcess/NetworkProcess.messages.in:
* UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(-[WKWebsiteDataStore _resourceLoadStatisticsSetShouldPartitionCookies:forHost:]):
* UIProcess/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore):
(WebKit::WebResourceLoadStatisticsStore::logUserInteraction):
(WebKit::WebResourceLoadStatisticsStore::scheduleCookiePartitioningUpdateForDomains):
(WebKit::WebResourceLoadStatisticsStore::clearInMemory):
(WebKit::WebResourceLoadStatisticsStore::shouldPartitionCookies const):
(WebKit::WebResourceLoadStatisticsStore::shouldBlockCookies const):
(WebKit::WebResourceLoadStatisticsStore::updateCookiePartitioning):
(WebKit::WebResourceLoadStatisticsStore::updateCookiePartitioningForDomains):
(WebKit::WebResourceLoadStatisticsStore::clearPartitioningStateForDomains):
(WebKit::WebResourceLoadStatisticsStore::resetCookiePartitioningState):
* UIProcess/WebResourceLoadStatisticsStore.h:
* UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::updatePrevalentDomainsToPartitionOrBlockCookies):
(WebKit::WebsiteDataStore::enableResourceLoadStatisticsAndSetTestingCallback):
(WebKit::WebsiteDataStore::updatePrevalentDomainsWithAndWithoutInteraction): Deleted.
* UIProcess/WebsiteData/WebsiteDataStore.h:

LayoutTests:

This patch restructures what is communicated to the network process,
from two vectors - with user interaction and without user interaction -
to three vectors - to partition, to block, to neither partition nor block.
The previous two vectors did not allow proper categorization into which
domains should be partitioned, blocked, or left alone. That was the cause
of the regression where non-prevalent third-party domains erroneously had
their cookies blocked when they should fall back to the old behavior of
access but no new cookies allowed to be set.

See follow-up bug to assess these tests:
https://bugs.webkit.org/show_bug.cgi?id=177337

* http/tests/loading/resourceLoadStatistics/partitioned-and-unpartitioned-cookie-with-network-process-crash.html:
* http/tests/loading/resourceLoadStatistics/third-party-cookie-with-and-without-user-interaction.html:
* platform/mac-wk2/TestExpectations:
    Marked two new failures since the need to be reworked in:
    https://bugs.webkit.org/show_bug.cgi?id=177337

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222396 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[CMake][Win] EventTargetInterfaces.h are generated twice
commit-queue@webkit.org [Fri, 22 Sep 2017 18:44:54 +0000 (18:44 +0000)]
[CMake][Win] EventTargetInterfaces.h are generated twice
https://bugs.webkit.org/show_bug.cgi?id=177286

Patch by Fujii Hironori <Hironori.Fujii@sony.com> on 2017-09-22
Reviewed by Brent Fulgham.

EventTargetInterfaces.h are generated twice in both
WebCoreDerivedSources.vcxproj and WebCore.vcxproj. This causes
unnecessary recompilation in CMake VisualStudio build.

WebCore target already has a dependency to WebCoreDerivedSources
target by calling add_dependencies. WebCore target doesn't need to
generate it.

* CMakeLists.txt: Don't ADD_SOURCE_WEBCORE_DERIVED_DEPENDENCIES with EventTargetInterfaces.h.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222395 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoRemove build-webkit's notion of feature flags having a default value
mcatanzaro@igalia.com [Fri, 22 Sep 2017 18:11:51 +0000 (18:11 +0000)]
Remove build-webkit's notion of feature flags having a default value
https://bugs.webkit.org/show_bug.cgi?id=177338

Reviewed by Alex Christensen.

.:

Add an ENABLE_EXPERIMENTAL_FEATURES flag and use it to enable certain features.

* Source/cmake/OptionsGTK.cmake:
* Source/cmake/OptionsWPE.cmake:
* Source/cmake/WebKitFeatures.cmake:

Source/WebKit:

Use ENABLE_EXPERIMENTAL_FEATURES instead of ENABLE_DEVELOPER_MODE to enable runtime
experimental features.

* Shared/WebPreferencesDefinitions.h:

Tools:

Delegate feature flag default values to the build system.
(FeatureDefines.xcconfig for Xcode, WebKitFeatures.cmake and Options*.cmake for CMake, and FeatureDefines.h for everyone)

* BuildSlaveSupport/build.webkit.org-config/config.json:
* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(Factory.__init__):
Update GTK and WPE buildbot configuration to use --no-experimental-features on old stable
bots instead of --default-cmake-features.

* Scripts/build-webkit:
(cMakeArgsFromFeatures):
Default feature values to 'undef'.
Remove the --default-cmake-features argument; it is now the default.
Add --no-experimental-features to replace it.
Stop printing the default feature flag value in the help.
Avoid propagating undefined values to the build system;
only mention flags that are overridden on the command line.

This has the nice side effect of using the default CMake features
for CMake builds, but still allowing toggling of them using the
prettier --FEATURE and --no-FEATURE arguments.

* Scripts/webkitdirs.pm:
(generateBuildSystemFromCMakeProject):
No longer need to suppress CMake warnings about unused arguments.

* Scripts/webkitperl/FeatureList.pm:
Remove the default values from the feature list.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222394 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoAdd asserts against layout time render tree mutations
antti@apple.com [Fri, 22 Sep 2017 17:45:09 +0000 (17:45 +0000)]
Add asserts against layout time render tree mutations
https://bugs.webkit.org/show_bug.cgi?id=177361

Reviewed by Zalan Bujtas.

We don't have any mutations left. Add asserts.

* rendering/RenderElement.cpp:
(WebCore::RenderElement::insertChildInternal):
(WebCore::RenderElement::removeChildInternal):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222393 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUse high resolution timestamp for event time
cdumez@apple.com [Fri, 22 Sep 2017 17:13:06 +0000 (17:13 +0000)]
Use high resolution timestamp for event time
https://bugs.webkit.org/show_bug.cgi?id=154246
<rdar://problem/34333304>

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

Rebaseline WPT test now that more checks are passing.

* web-platform-tests/dom/events/Event-timestamp-high-resolution-expected.txt:

Source/WebCore:

Have event.timeStamp return a DOMHighResTimeStamp instead of a DOMResTimeStamp. It now
has better precision, is monotonic and is relative to PerformanceTiming.navigationStart.

This is as per:
- https://dom.spec.whatwg.org/#interface-event

Chrome, Firefox and Edge all already ship this so the compatibility risk should be low.

Also use WallTime / MonotonicTime instead of double type for clarity.

Test: imported/w3c/web-platform-tests/dom/events/Event-timestamp-high-resolution.html

* WebCore.xcodeproj/project.pbxproj:
* dom/DOMHighResTimeStamp.h: Copied from Source/WebKit/Shared/WebTouchEvent.cpp.
* dom/Element.cpp:
(WebCore::Element::dispatchMouseForceWillBegin):
* dom/Event.cpp:
(WebCore::Event::Event):
(WebCore::Event::timeStampForBindings const):
* dom/Event.h:
(WebCore::Event::timeStamp const):
* dom/Event.idl:
* dom/KeyboardEvent.cpp:
(WebCore::KeyboardEvent::KeyboardEvent):
* dom/MouseEvent.cpp:
(WebCore::MouseEvent::create):
(WebCore::MouseEvent::MouseEvent):
* dom/MouseEvent.h:
* dom/MouseRelatedEvent.cpp:
(WebCore::MouseRelatedEvent::MouseRelatedEvent):
* dom/MouseRelatedEvent.h:
* dom/SimulatedClick.cpp:
* dom/TouchEvent.cpp:
(WebCore::TouchEvent::TouchEvent):
* dom/UIEvent.cpp:
(WebCore::UIEvent::UIEvent):
* dom/UIEvent.h:
* dom/UIEventWithKeyState.h:
(WebCore::UIEventWithKeyState::UIEventWithKeyState):
* dom/WheelEvent.cpp:
(WebCore::WheelEvent::WheelEvent):
* html/TypeAhead.cpp:
(WebCore::TypeAhead::TypeAhead):
(WebCore::TypeAhead::handleEvent):
* html/TypeAhead.h:
* page/AutoscrollController.cpp:
(WebCore::AutoscrollController::AutoscrollController):
(WebCore::AutoscrollController::updateDragAndDrop):
(WebCore::AutoscrollController::autoscrollTimerFired):
* page/AutoscrollController.h:
* page/ContextMenuController.cpp:
(WebCore::ContextMenuController::showContextMenuAt):
* page/DragController.cpp:
(WebCore::createMouseEvent):
* page/EventHandler.cpp:
(WebCore::EventHandler::dispatchDragEvent):
(WebCore::EventHandler::sendContextMenuEventForKey):
(WebCore::EventHandler::fakeMouseMoveEventTimerFired):
* page/EventHandler.h:
* page/Performance.cpp:
(WebCore::Performance::now const):
(WebCore::Performance::relativeTimeFromTimeOriginInReducedResolution const):
* page/Performance.h:
* page/ios/EventHandlerIOS.mm:
(WebCore::EventHandler::tryToBeginDataInteractionAtPoint):
* page/win/EventHandlerWin.cpp:
* platform/PlatformEvent.h:
(WebCore::PlatformEvent::timestamp const):
(WebCore::PlatformEvent::PlatformEvent):
* platform/PlatformKeyboardEvent.h:
(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
* platform/PlatformMouseEvent.h:
(WebCore::PlatformMouseEvent::PlatformMouseEvent):
* platform/PlatformWheelEvent.h:
(WebCore::PlatformWheelEvent::PlatformWheelEvent):
* platform/cocoa/ScrollController.mm:
(WebCore::ScrollController::handleWheelEvent):
* platform/glib/EventHandlerGLib.cpp:
* platform/gtk/ScrollAnimatorGtk.cpp:
(WebCore::ScrollAnimatorGtk::computeVelocity):
(WebCore::ScrollAnimatorGtk::handleWheelEvent):
* platform/ios/PlatformEventFactoryIOS.mm:
(WebCore::PlatformMouseEventBuilder::PlatformMouseEventBuilder):
(WebCore::PlatformWheelEventBuilder::PlatformWheelEventBuilder):
(WebCore::PlatformKeyboardEventBuilder::PlatformKeyboardEventBuilder):
(WebCore::PlatformTouchEventBuilder::PlatformTouchEventBuilder):
* platform/mac/PlatformEventFactoryMac.h:
* platform/mac/PlatformEventFactoryMac.mm:
(WebCore::eventTimeStampSince1970):

Source/WebKit:

Use WallTime / MonotonicTime instead of double type for clarity.

* Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<WallTime>::encode):
(IPC::ArgumentCoder<WallTime>::decode):
* Shared/WebCoreArgumentCoders.h:
* Shared/WebEvent.cpp:
(WebKit::WebEvent::WebEvent):
* Shared/WebEvent.h:
(WebKit::WebEvent::timestamp const):
(WebKit::WebTouchEvent::WebTouchEvent):
* Shared/WebKeyboardEvent.cpp:
(WebKit::WebKeyboardEvent::WebKeyboardEvent):
* Shared/WebMouseEvent.cpp:
(WebKit::WebMouseEvent::WebMouseEvent):
* Shared/WebTouchEvent.cpp:
(WebKit::WebTouchEvent::WebTouchEvent):
* Shared/WebWheelEvent.cpp:
(WebKit::WebWheelEvent::WebWheelEvent):
* Shared/gtk/WebEventFactory.cpp:
(WebKit::WebEventFactory::createWebMouseEvent):
(WebKit::WebEventFactory::createWebWheelEvent):
(WebKit::WebEventFactory::createWebKeyboardEvent):
(WebKit::WebEventFactory::createWebTouchEvent):
* Shared/ios/NativeWebTouchEventIOS.mm:
(WebKit::NativeWebTouchEvent::NativeWebTouchEvent):
* Shared/ios/WebIOSEventFactory.mm:
(WebIOSEventFactory::createWebKeyboardEvent):
* Shared/mac/NativeWebGestureEventMac.mm:
(WebKit::NativeWebGestureEvent::NativeWebGestureEvent):
* Shared/mac/WebEventFactory.mm:
(WebKit::WebEventFactory::createWebMouseEvent):
(WebKit::WebEventFactory::createWebWheelEvent):
(WebKit::WebEventFactory::createWebKeyboardEvent):
* Shared/mac/WebGestureEvent.h:
(WebKit::WebGestureEvent::WebGestureEvent):
* Shared/wpe/WebEventFactory.cpp:
(WebKit::WebEventFactory::createWebKeyboardEvent):
(WebKit::WebEventFactory::createWebMouseEvent):
(WebKit::WebEventFactory::createWebWheelEvent):
(WebKit::WebEventFactory::createWebTouchEvent):
* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageSimulateMouseDown):
(WKBundlePageSimulateMouseUp):
(WKBundlePageSimulateMouseMotion):
* WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::showContextMenuAtPoint):
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::createWebEvent const):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::navigateToPDFLinkWithSimulatedClick):
(WebKit::WebPage::contextMenuAtPointInWindow):
(WebKit::WebPage::dragEnded):
(WebKit::WebPage::simulateMouseDown):
(WebKit::WebPage::simulateMouseUp):
(WebKit::WebPage::simulateMouseMotion):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::handleSyntheticClick):
(WebKit::WebPage::completeSyntheticClick):
(WebKit::WebPage::requestAdditionalItemsForDragSession):
(WebKit::WebPage::inspectorNodeSearchMovedToPosition):

Source/WebKitLegacy/ios:

Use WallTime / MonotonicTime instead of double type for clarity.

* WebView/WebPDFViewPlaceholder.mm:
(-[WebPDFViewPlaceholder simulateClickOnLinkToURL:]):

Source/WebKitLegacy/mac:

Use WallTime / MonotonicTime instead of double type for clarity.

* DOM/DOMEvent.mm:
(-[DOMEvent timeStamp]):
* WebView/WebFrame.mm:
(-[WebFrame _dragSourceEndedAt:operation:]):
* WebView/WebPDFView.mm:
(-[WebPDFView PDFViewWillClickOnLink:withURL:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222392 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUpdate some links in demos
timothy_horton@apple.com [Fri, 22 Sep 2017 16:33:11 +0000 (16:33 +0000)]
Update some links in demos

* demos/safe-area-insets/1-default.html:
* demos/safe-area-insets/2-viewport-fit.html:
* demos/safe-area-insets/3-safe-area-constants.html:
* demos/safe-area-insets/4-min-max.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222391 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoMove test expectations from 'ios-11' to 'ios' directory.
ryanhaddad@apple.com [Fri, 22 Sep 2017 16:23:45 +0000 (16:23 +0000)]
Move test expectations from 'ios-11' to 'ios' directory.
https://bugs.webkit.org/show_bug.cgi?id=177167

Unreviewed test gardening.

* platform/ios-11/TestExpectations: Removed.
* platform/ios-11/fast/text/emoji-expected.txt: Removed.
* platform/ios-11/fast/text/international/system-language/system-font-punctuation-expected.txt: Removed.
* platform/ios-11/http/tests/security/contentSecurityPolicy/audio-redirect-blocked-expected.txt: Removed.
* platform/ios-11/http/tests/security/contentSecurityPolicy/video-redirect-blocked-expected.txt: Removed.
* platform/ios-11/mathml/presentation/mo-stretch-expected.txt: Removed.
* platform/ios-11/mathml/presentation/roots-expected.txt: Removed.
* platform/ios-11/mathml/radical-fallback-expected.txt: Removed.
* platform/ios/TestExpectations:
* platform/ios/crypto/subtle/rsa-generate-key-malformed-parameters-expected.txt: Renamed from LayoutTests/platform/ios-11/crypto/subtle/rsa-generate-key-malformed-parameters-expected.txt.
* platform/ios/crypto/subtle/rsa-import-key-malformed-parameters-expected.txt: Renamed from LayoutTests/platform/ios-11/crypto/subtle/rsa-import-key-malformed-parameters-expected.txt.
* platform/ios/fast/css/getComputedStyle/computed-style-font-family-expected.txt: Renamed from LayoutTests/platform/ios-11/fast/css/getComputedStyle/computed-style-font-family-expected.txt.
* platform/ios/fast/text/font-selection-font-face-parse-expected.txt: Renamed from LayoutTests/platform/ios-11/fast/text/font-selection-font-face-parse-expected.txt.
* platform/ios/fast/text/font-selection-font-loading-api-parse-expected.txt: Renamed from LayoutTests/platform/ios-11/fast/text/font-selection-font-loading-api-parse-expected.txt.
* platform/ios/fast/text/font-stretch-parse-expected.txt: Renamed from LayoutTests/platform/ios-11/fast/text/font-stretch-parse-expected.txt.
* platform/ios/fast/text/font-style-parse-expected.txt: Renamed from LayoutTests/platform/ios-11/fast/text/font-style-parse-expected.txt.
* platform/ios/fast/text/font-weight-parse-expected.txt: Renamed from LayoutTests/platform/ios-11/fast/text/font-weight-parse-expected.txt.
* platform/ios/fast/text/international/system-language/system-font-punctuation-expected.txt:
* platform/ios/http/tests/quicklook/at-import-stylesheet-blocked-expected.txt: Renamed from LayoutTests/platform/ios-11/http/tests/quicklook/at-import-stylesheet-blocked-expected.txt.
* platform/ios/http/tests/quicklook/base-url-blocked-expected.txt: Renamed from LayoutTests/platform/ios-11/http/tests/quicklook/base-url-blocked-expected.txt.
* platform/ios/http/tests/quicklook/cross-origin-iframe-blocked-expected.txt: Renamed from LayoutTests/platform/ios-11/http/tests/quicklook/cross-origin-iframe-blocked-expected.txt.
* platform/ios/http/tests/quicklook/csp-header-ignored-expected.txt: Renamed from LayoutTests/platform/ios-11/http/tests/quicklook/csp-header-ignored-expected.txt.
* platform/ios/http/tests/quicklook/document-domain-is-empty-string-expected.txt: Renamed from LayoutTests/platform/ios-11/http/tests/quicklook/document-domain-is-empty-string-expected.txt.
* platform/ios/http/tests/quicklook/external-stylesheet-blocked-expected.txt: Renamed from LayoutTests/platform/ios-11/http/tests/quicklook/external-stylesheet-blocked-expected.txt.
* platform/ios/http/tests/quicklook/hide-referer-on-navigation-expected.txt: Renamed from LayoutTests/platform/ios-11/http/tests/quicklook/hide-referer-on-navigation-expected.txt.
* platform/ios/http/tests/quicklook/submit-form-blocked-expected.txt: Renamed from LayoutTests/platform/ios-11/http/tests/quicklook/submit-form-blocked-expected.txt.
* platform/ios/http/tests/quicklook/top-navigation-blocked-expected.txt: Renamed from LayoutTests/platform/ios-11/http/tests/quicklook/top-navigation-blocked-expected.txt.
* platform/ios/http/tests/security/contentSecurityPolicy/audio-redirect-blocked-expected.txt:
* platform/ios/http/tests/security/contentSecurityPolicy/video-redirect-blocked-expected.txt:
* platform/ios/http/tests/websocket/tests/hybi/secure-cookie-secure-connection-expected.txt: Renamed from LayoutTests/platform/ios-11/http/tests/websocket/tests/hybi/secure-cookie-secure-connection-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.worker-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.worker-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/derive_bits_keys/test_pbkdf2_long_empty.https-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/derive_bits_keys/test_pbkdf2_long_empty.https-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/derive_bits_keys/test_pbkdf2_short_empty.https-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/derive_bits_keys/test_pbkdf2_short_empty.https-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/generateKey/failures_RSA-PSS.worker-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/generateKey/failures_RSA-PSS.worker-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/generateKey/successes_RSA-PSS.worker-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/generateKey/successes_RSA-PSS.worker-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/generateKey/test_failures.https-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/generateKey/test_failures.https-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/generateKey/test_failures_RSA-PSS.https-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/generateKey/test_failures_RSA-PSS.https-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/generateKey/test_successes_RSA-PSS.https-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/generateKey/test_successes_RSA-PSS.https-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/import_export/rsa_importKey.worker-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/import_export/rsa_importKey.worker-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/import_export/test_rsa_importKey.https-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/import_export/test_rsa_importKey.https-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/sign_verify/rsa_pkcs.worker-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/sign_verify/rsa_pkcs.worker-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/sign_verify/rsa_pss.worker-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/sign_verify/rsa_pss.worker-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/sign_verify/test_rsa_pkcs.https-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/sign_verify/test_rsa_pkcs.https-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/sign_verify/test_rsa_pss.https-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/sign_verify/test_rsa_pss.https-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/wrapKey_unwrapKey/test_wrapKey_unwrapKey.https-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/wrapKey_unwrapKey/test_wrapKey_unwrapKey.https-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/WebCryptoAPI/wrapKey_unwrapKey/wrapKey_unwrapKey.worker-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/WebCryptoAPI/wrapKey_unwrapKey/wrapKey_unwrapKey.worker-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/XMLHttpRequest/send-blob-with-no-mime-type-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/XMLHttpRequest/send-blob-with-no-mime-type-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/fetch/api/basic/request-headers.any-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/fetch/api/basic/request-headers.any-expected.txt.
* platform/ios/imported/w3c/web-platform-tests/fetch/api/basic/request-headers.any.worker-expected.txt: Renamed from LayoutTests/platform/ios-11/imported/w3c/web-platform-tests/fetch/api/basic/request-headers.any.worker-expected.txt.
* platform/ios/mathml/presentation/mo-stretch-expected.txt:
* platform/ios/mathml/presentation/roots-expected.txt:
* platform/ios/mathml/radical-fallback-expected.txt:
* platform/ios/platform/ios/ios/fast/text/opticalFont-expected.txt: Renamed from LayoutTests/platform/ios-11/platform/ios/ios/fast/text/opticalFont-expected.txt.
* platform/ios/platform/ios/ios/fast/text/opticalFontWithTextStyle-expected.txt: Renamed from LayoutTests/platform/ios-11/platform/ios/ios/fast/text/opticalFontWithTextStyle-expected.txt.
* platform/ios/platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt: Renamed from LayoutTests/platform/ios-11/platform/ios/ios/fast/text/opticalFontWithWeight-expected.txt.
* platform/ios/quicklook/excel-expected.txt: Renamed from LayoutTests/platform/ios-11/quicklook/excel-expected.txt.
* platform/ios/quicklook/excel-legacy-expected.txt: Renamed from LayoutTests/platform/ios-11/quicklook/excel-legacy-expected.txt.
* platform/ios/quicklook/excel-macro-enabled-expected.txt: Renamed from LayoutTests/platform/ios-11/quicklook/excel-macro-enabled-expected.txt.
* platform/ios/quicklook/powerpoint-expected.txt: Renamed from LayoutTests/platform/ios-11/quicklook/powerpoint-expected.txt.
* platform/ios/quicklook/powerpoint-legacy-expected.txt: Renamed from LayoutTests/platform/ios-11/quicklook/powerpoint-legacy-expected.txt.
* platform/ios/quicklook/word-expected.txt: Renamed from LayoutTests/platform/ios-11/quicklook/word-expected.txt.
* platform/ios/quicklook/word-legacy-expected.txt: Renamed from LayoutTests/platform/ios-11/quicklook/word-legacy-expected.txt.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222390 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[GTK] HTMLMediaElement resize event not fired when video size changes
nael.ouedraogo@crf.canon.fr [Fri, 22 Sep 2017 15:43:24 +0000 (15:43 +0000)]
[GTK] HTMLMediaElement resize event not fired when video size changes
https://bugs.webkit.org/show_bug.cgi?id=174582

Reviewed by Xabier Rodriguez-Calvar.

Modify AppendPipeline to notify MediaPlayerPrivateGStreamerMSE that a track is detected
not only for the initial track detection but also for subsequent in particular when the
video size has changed.

Update test expectation for new passing tests.

Source/WebCore:

* platform/graphics/gstreamer/mse/AppendPipeline.cpp:
(WebCore::AppendPipeline::appsinkCapsChanged):
(WebCore::AppendPipeline::connectDemuxerSrcPadToAppsink):
* platform/graphics/gstreamer/mse/AppendPipeline.h:
* platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
(WebCore::MediaPlayerPrivateGStreamerMSE::trackDetected):
* platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.h:
* platform/graphics/gstreamer/mse/PlaybackPipeline.cpp:
(WebCore::PlaybackPipeline::reattachTrack):
* platform/graphics/gstreamer/mse/PlaybackPipeline.h:

LayoutTests:

* platform/gtk/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222388 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[GTK] Couple of pasteboard related tests are failing after r222228
Ms2ger@igalia.com [Fri, 22 Sep 2017 14:45:48 +0000 (14:45 +0000)]
[GTK] Couple of pasteboard related tests are failing after r222228
https://bugs.webkit.org/show_bug.cgi?id=177295

Reviewed by Michael Catanzaro.

Source/WebCore:

Call writeToClipboard() from Pasteboard::writeString() on GTK.

When writePasteboard was replaced by commitToPasteboard in r222228,
the call to writeToClipboard() did not make it into the
platform-neutral code. This attempts to find another place in the
GTK-specific code to make the call.

Tests: editing/pasteboard/copy-without-selection.html
       editing/pasteboard/pasting-empty-html-falls-back-to-text.html

* platform/gtk/PasteboardGtk.cpp:
(WebCore::Pasteboard::writeString):

LayoutTests:

* platform/gtk/TestExpectations: mark the tests as passing again.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222387 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUnreviewed GTK+ gardening. Adding failure expectations for failure tests
zandobersek@gmail.com [Fri, 22 Sep 2017 14:39:56 +0000 (14:39 +0000)]
Unreviewed GTK+ gardening. Adding failure expectations for failure tests
that mostly originate from recent font code changes and WPT updates.
Updating baselines for two tests that aren't failing otherwise.

* platform/gtk/TestExpectations:
* platform/gtk/imported/w3c/web-platform-tests/media-source/interfaces-expected.txt:
* platform/gtk/js/dom/global-constructors-attributes-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222386 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[GTK] Web Inspector: Can't load three.js
commit-queue@webkit.org [Fri, 22 Sep 2017 14:30:24 +0000 (14:30 +0000)]
[GTK] Web Inspector: Can't load three.js
https://bugs.webkit.org/show_bug.cgi?id=177340

Patch by Fujii Hironori <Hironori.Fujii@sony.com> on 2017-09-22
Reviewed by Carlos Garcia Campos.

* PlatformGTK.cmake: Add JS files of three.js to InspectorFiles variable.
* PlatformWPE.cmake: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222385 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[DFG][FTL] Profile array vector length for array allocation
utatane.tea@gmail.com [Fri, 22 Sep 2017 12:19:54 +0000 (12:19 +0000)]
[DFG][FTL] Profile array vector length for array allocation
https://bugs.webkit.org/show_bug.cgi?id=177051

Reviewed by Saam Barati.

JSTests:

* microbenchmarks/new-array-buffer-vector-profile.js: Added.
(target):

Source/JavaScriptCore:

Currently, NewArrayBuffer allocation is penalized by JSC: While empty array gets 25 vector size (BASE_CONTIGUOUS_VECTOR_LEN),
new_array_buffer case gets 3 vector size (BASE_CONTIGUOUS_VECTOR_LEN). Surely, new_array_buffer can get larger vector size
if the number of its constant elements is larger than 3. But these created array may be grown by `push()` operation after
the allocation. In this case, new_array_buffer is penalized compared to empty array allocation.

    empty array allocation,

    var array = [];
    array.push(0);
    array.push(1);
    array.push(2);
    array.push(3);
    array.push(4);

    v.s. new_array_buffer case,

    var array = [0];
    array.push(1);
    array.push(2);
    array.push(3);
    array.push(4);

In this case, the latter becomes slow. While we have a chance to reduce memory usage if new_array_buffer is not grown (and a bit likely),
we should allocate 3 to 25 vector size if it is likely grown. So we should get profile on the resulted array.

We select 25 to make it fit to one of size classes.

In this patch, we extend ArrayAllocationProfile to record vector length. And use this information when allocating array for new_array_buffer.
If the number of new_array_buffer constants is <= 25, array vector size would become 3 to 25 based on profiling. If the number of its constants
is larger than 25, we just use it for allocation as before.

Added microbenchmark and SixSpeed spread-literal.es5 shows improvement.

    new-array-buffer-vector-profile       67.4706+-3.7625     ^     28.4249+-1.9025        ^ definitely 2.3736x faster
    spread-literal.es5                   133.1443+-9.2253     ^     95.2667+-0.5740        ^ definitely 1.3976x faster

* bytecode/ArrayAllocationProfile.cpp:
(JSC::ArrayAllocationProfile::updateProfile):
(JSC::ArrayAllocationProfile::updateIndexingType): Deleted.
* bytecode/ArrayAllocationProfile.h:
(JSC::ArrayAllocationProfile::selectIndexingType):
(JSC::ArrayAllocationProfile::vectorLengthHint):
(JSC::ArrayAllocationProfile::ArrayAllocationProfile): Deleted.
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::updateAllArrayPredictions):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
* dfg/DFGNode.h:
(JSC::DFG::Node::vectorLengthHint):
* dfg/DFGOperations.cpp:
* dfg/DFGOperations.h:
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileArraySlice):
(JSC::FTL::DFG::LowerDFGToB3::compileNewArrayBuffer):
(JSC::FTL::DFG::LowerDFGToB3::compileNewArrayWithSize):
(JSC::FTL::DFG::LowerDFGToB3::allocateJSArray):
(JSC::FTL::DFG::LowerDFGToB3::allocateUninitializedContiguousJSArrayInternal):
(JSC::FTL::DFG::LowerDFGToB3::allocateUninitializedContiguousJSArray):
* runtime/ArrayConventions.h:
* runtime/JSArray.h:
(JSC::JSArray::tryCreate):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222384 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUnreviewed GTK+ and WPE gardening. Adding baselines for the
zandobersek@gmail.com [Fri, 22 Sep 2017 11:53:28 +0000 (11:53 +0000)]
Unreviewed GTK+ and WPE gardening. Adding baselines for the
imported W3C WebCryptoAPI pbkdf2.worker.html where the
libgcrypt-based implementation is exhibiting somewhat different
behavior than what's expected in the generic baseline.

* platform/gtk/imported/w3c/web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.worker-expected.txt: Added.
* platform/wpe/imported/w3c/web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.worker-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222383 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUnreviewed, rolling out r222380.
utatane.tea@gmail.com [Fri, 22 Sep 2017 10:25:58 +0000 (10:25 +0000)]
Unreviewed, rolling out r222380.
https://bugs.webkit.org/show_bug.cgi?id=177352

Octane/box2d shows 8% regression (Requested by yusukesuzuki on
#webkit).

Reverted changeset:

"[DFG][FTL] Profile array vector length for array allocation"
https://bugs.webkit.org/show_bug.cgi?id=177051
http://trac.webkit.org/changeset/222380

Patch by Commit Queue <commit-queue@webkit.org> on 2017-09-22

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222382 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoLayoutTests/imported/w3c:
zandobersek@gmail.com [Fri, 22 Sep 2017 09:51:38 +0000 (09:51 +0000)]
LayoutTests/imported/w3c:
Unreviewed WPE gardening. Updating the WPT EME idlharness.html
baseline -- it's not port-specific since there should be no
differences in the Web-exposed APIs for this feature across
ports.

* web-platform-tests/encrypted-media/idlharness-expected.txt:

LayoutTests:
Unreviewed WPE gardening. Updating a couple of css2.1 baselines,
adding a missing baseline for a new imported WPT test.

* platform/wpe/css2.1/t100801-c548-ln-ht-02-b-ag-expected.txt:
* platform/wpe/css2.1/t1507-c526-font-sz-02-b-a-expected.txt:
* platform/wpe/css2.1/t1601-c547-indent-00-b-a-expected.txt:
* platform/wpe/css2.1/t1604-c542-letter-sp-00-b-a-expected.txt:
* platform/wpe/imported/w3c/web-platform-tests/encrypted-media/encrypted-media-default-feature-policy.https.sub-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222381 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years ago[DFG][FTL] Profile array vector length for array allocation
utatane.tea@gmail.com [Fri, 22 Sep 2017 08:22:44 +0000 (08:22 +0000)]
[DFG][FTL] Profile array vector length for array allocation
https://bugs.webkit.org/show_bug.cgi?id=177051

Reviewed by Saam Barati.

JSTests:

* microbenchmarks/new-array-buffer-vector-profile.js: Added.
(target):

Source/JavaScriptCore:

Currently, NewArrayBuffer allocation is penalized by JSC: While empty array gets 25 vector size (BASE_CONTIGUOUS_VECTOR_LEN),
new_array_buffer case gets 3 vector size (BASE_CONTIGUOUS_VECTOR_LEN). Surely, new_array_buffer can get larger vector size
if the number of its constant elements is larger than 3. But these created array may be grown by `push()` operation after
the allocation. In this case, new_array_buffer is penalized compared to empty array allocation.

    empty array allocation,

    var array = [];
    array.push(0);
    array.push(1);
    array.push(2);
    array.push(3);
    array.push(4);

    v.s. new_array_buffer case,

    var array = [0];
    array.push(1);
    array.push(2);
    array.push(3);
    array.push(4);

In this case, the latter becomes slow. While we have a chance to reduce memory usage if new_array_buffer is not grown (and a bit likely),
we should allocate 3 to 25 vector size if it is likely grown. So we should get profile on the resulted array.

We select 25 to make it fit to one of size classes.

In this patch, we extend ArrayAllocationProfile to record vector length. And use this information when allocating array for new_array_buffer.
If the number of new_array_buffer constants is <= 25, array vector size would become 3 to 25 based on profiling. If the number of its constants
is larger than 25, we just use it for allocation as before.

Added microbenchmark and SixSpeed spread-literal.es5 shows improvement.

    new-array-buffer-vector-profile       67.4706+-3.7625     ^     28.4249+-1.9025        ^ definitely 2.3736x faster
    spread-literal.es5                   133.1443+-9.2253     ^     95.2667+-0.5740        ^ definitely 1.3976x faster

* bytecode/ArrayAllocationProfile.cpp:
(JSC::ArrayAllocationProfile::updateProfile):
(JSC::ArrayAllocationProfile::updateIndexingType): Deleted.
* bytecode/ArrayAllocationProfile.h:
(JSC::ArrayAllocationProfile::selectIndexingType):
(JSC::ArrayAllocationProfile::vectorLengthHint):
(JSC::ArrayAllocationProfile::ArrayAllocationProfile): Deleted.
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::updateAllArrayPredictions):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
* dfg/DFGNode.h:
(JSC::DFG::Node::vectorLengthHint):
* dfg/DFGOperations.cpp:
* dfg/DFGOperations.h:
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileArraySlice):
(JSC::FTL::DFG::LowerDFGToB3::compileNewArrayBuffer):
(JSC::FTL::DFG::LowerDFGToB3::compileNewArrayWithSize):
(JSC::FTL::DFG::LowerDFGToB3::allocateJSArray):
(JSC::FTL::DFG::LowerDFGToB3::allocateUninitializedContiguousJSArrayInternal):
(JSC::FTL::DFG::LowerDFGToB3::allocateUninitializedContiguousJSArray):
* runtime/ArrayConventions.h:
* runtime/JSArray.h:
(JSC::JSArray::tryCreate):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222380 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoEnable dataTransfer.items on macOS and iOS
rniwa@webkit.org [Fri, 22 Sep 2017 01:51:19 +0000 (01:51 +0000)]
Enable dataTransfer.items on macOS and iOS
https://bugs.webkit.org/show_bug.cgi?id=177335

Reviewed by Sam Weinig.

Source/WebKit:

* Shared/WebPreferencesDefinitions.h:

Source/WebKitLegacy/mac:

* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222376 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoAdd some blog post resources
timothy_horton@apple.com [Fri, 22 Sep 2017 01:08:24 +0000 (01:08 +0000)]
Add some blog post resources
https://bugs.webkit.org/show_bug.cgi?id=177333

Reviewed by Sam Weinig.

* demos/safe-area-insets/1-default.html: Added.
* demos/safe-area-insets/2-viewport-fit.html: Added.
* demos/safe-area-insets/3-safe-area-constants.html: Added.
* demos/safe-area-insets/4-min-max.html: Added.
* demos/safe-area-insets/safe-areas.html: Added.
* demos/safe-area-insets/style.css: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222375 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoREGRESSION (r221017): iCloud mail logs me out after looking at a few messages
bfulgham@apple.com [Fri, 22 Sep 2017 00:42:49 +0000 (00:42 +0000)]
REGRESSION (r221017): iCloud mail logs me out after looking at a few messages
https://bugs.webkit.org/show_bug.cgi?id=177328

Reviewed by Daniel Bates.
<rdar://problem/34288629>

Reviewed by Dan Bates.

Source/WebCore:

This site was triggering a log-out because the page was loading insecure images. We don't treat that as a security
issue for deciding to display mixed content since it can only affect pixels on screen, not trigger a change in
program logic or persistent storage.

Consequently, we can correct thsi compatibility problem without relaxing the security fix by not blocking Secure cookies
when we have merely displayed mixed content (i.e., encountered 'Inactive' mixed content), as opposed to executing mixed
content (i.e., loaded 'Active' mixed content).

* Modules/geolocation/Geolocation.cpp:
(WebCore::Geolocation::shouldBlockGeolocationRequests): Revise for new API.
* dom/SecurityContext.h:
(WebCore::SecurityContext::foundMixedContent const): Change to return an OptionSet of
mixed content types.
(WebCore::SecurityContext::setFoundMixedContent): Accept an enum stating the type of mixed content found.
* loader/CookieJar.cpp:
(WebCore::cookies): Only block Secure cookies for Active mixed content.
(WebCore::cookieRequestHeaderFieldValue): Ditto.
* loader/MixedContentChecker.cpp:
(WebCore::MixedContentChecker::canDisplayInsecureContent const): Mark the context as having found 'Inactive'
mixed content.
(WebCore::MixedContentChecker::canRunInsecureContent const): Mark the context as having found 'Active'
mixed content.

LayoutTests:

Rebaseline tests for revised behavior.

* http/tests/security/mixedContent/insecure-image-with-securecookie-block-expected.txt:
* http/tests/security/mixedContent/insecure-image-with-securecookie-block.html:
* http/tests/security/mixedContent/redirect-https-to-http-image-secure-cookies-block-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222374 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoClean up RenderLayer z-order traversal code
simon.fraser@apple.com [Fri, 22 Sep 2017 00:40:47 +0000 (00:40 +0000)]
Clean up RenderLayer z-order traversal code
https://bugs.webkit.org/show_bug.cgi?id=177325

Reviewed by Zalan Bujtas.

Remove isStackingContainer() checks before accessing posZOrderList() or negZOrderList();
we already have assertions in place to ensure that only stacking containers have non-null lists.

Use more auto.

No behavior change.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::update3DTransformedDescendantStatus):
(WebCore::RenderLayer::calculateClipRects const):
* rendering/RenderLayerBacking.cpp:
(WebCore::traverseVisibleNonCompositedDescendantLayers):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::addToOverlapMapRecursive):
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
(WebCore::RenderLayerCompositor::updateLayerTreeGeometry):
(WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):
(WebCore::RenderLayerCompositor::recursiveRepaintLayer):
(WebCore::RenderLayerCompositor::layerHas3DContent const):
* rendering/RenderTreeAsText.cpp:
(WebCore::writeLayers):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222373 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUnreviewed Windows build fix after r222360.
pvollan@apple.com [Fri, 22 Sep 2017 00:33:52 +0000 (00:33 +0000)]
Unreviewed Windows build fix after r222360.

* PlatformWin.cmake:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222372 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoUnreviewed, add the ability to skip a test262 test.
joepeck@webkit.org [Fri, 22 Sep 2017 00:19:46 +0000 (00:19 +0000)]
Unreviewed, add the ability to skip a test262 test.

* Scripts/run-jsc-stress-tests:
Other handlers have :skip but a few didn't.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222371 268f45cc-cd09-0410-ab3c-d52691b4dbfc

3 years agoChange architecture for ios-ews queue to arm64.
ryanhaddad@apple.com [Fri, 22 Sep 2017 00:16:55 +0000 (00:16 +0000)]
Change architecture for ios-ews queue to arm64.
https://bugs.webkit.org/show_bug.cgi?id=177332

Reviewed by Alexey Proskuryakov.

* Scripts/webkitpy/common/config/ews.json:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222370 268f45cc-cd09-0410-ab3c-d52691b4dbfc