2014-01-23 Mark Hahnenberg Merge branch up to ToT r161658. 2014-01-23 Mark Hahnenberg Merge branch up to ToT r160556. Tests: accessibility/alt-tag-on-image-with-nonimage-role.html accessibility/children-changed-sends-notification.html crypto/subtle/aes-postMessage.html crypto/subtle/hmac-postMessage.html crypto/subtle/postMessage-worker.html crypto/subtle/rsa-oaep-generate-non-extractable-key.html crypto/subtle/rsa-postMessage.html crypto/subtle/rsaes-pkcs1-v1_5-decrypt.html crypto/subtle/rsaes-pkcs1-v1_5-wrap-unwrap-aes.html crypto/subtle/unwrapKey-check-usage.html crypto/subtle/wrapKey-check-usage.html fast/css/nth-last-child-recalc.html fast/css/pending-image-crash.xhtml fast/css/style-sharing-grand-parent-invalidate.html fast/dom/Document/clone-node.html fast/dom/HTMLDocument/clone-node-quirks-mode.html fast/dom/HTMLTableElement/empy-table-cell-with-background-color.html fast/dom/Window/postMessage-clone-port-error.html inspector-protocol/model/highlight-shape-outside-margin.html inspector-protocol/page/deny-X-FrameOption.html media/media-source/media-source-end-of-stream.html media/media-source/media-source-video-playback-quality.html platform/gtk/accessibility/text-at-offset-embedded-objects.html platform/gtk/accessibility/text-at-offset-newlines.html platform/gtk/accessibility/text-at-offset-preformatted.html platform/gtk/accessibility/text-at-offset-simple.html platform/gtk/accessibility/text-at-offset-special-chars.html platform/gtk/accessibility/text-at-offset-textarea.html platform/gtk/accessibility/text-at-offset-textinput.html platform/gtk/accessibility/text-at-offset-wrapped-lines.html platform/gtk/accessibility/text-for-range-combo-box.html platform/gtk/accessibility/text-for-range-embedded-objects.html platform/gtk/accessibility/text-for-range-entry-and-password.html platform/gtk/accessibility/text-for-range-extraneous-whitespace.html platform/gtk/accessibility/text-for-range-formatted.html platform/gtk/accessibility/text-for-range-heading.html platform/gtk/accessibility/text-for-range-list-items.html platform/gtk/accessibility/text-for-range-simple.html platform/gtk/accessibility/text-for-range-table-cells.html platform/gtk/accessibility/text-for-range-with-link.html platform/gtk/accessibility/text-for-table.html svg/custom/clone-node.html svg/dom/SVGScriptElement/script-type-attribute.svg * CMakeLists.txt: * Configurations/Version.xcconfig: * DerivedSources.make: * ForwardingHeaders/bindings: Added. * ForwardingHeaders/bindings/ScriptFunctionCall.h: Added. * ForwardingHeaders/bindings/ScriptObject.h: Added. * ForwardingHeaders/bindings/ScriptValue.h: Added. * ForwardingHeaders/inspector/InspectorAgentBase.h: Added. * ForwardingHeaders/inspector/InspectorAgentRegistry.h: Added. * ForwardingHeaders/inspector/InspectorBackendDispatcher.h: Added. * ForwardingHeaders/inspector/InspectorTypeBuilder.h: Added. * ForwardingHeaders/inspector/InspectorValues.h: Added. * GNUmakefile.am: * GNUmakefile.list.am: * Modules/battery/BatteryManager.idl: * Modules/battery/NavigatorBattery.idl: * Modules/indexeddb/IDBAny.cpp: (WebCore::IDBAny::scriptValue): (WebCore::IDBAny::IDBAny): * Modules/indexeddb/IDBAny.h: * Modules/indexeddb/IDBCursor.cpp: (WebCore::IDBCursor::key): (WebCore::IDBCursor::primaryKey): (WebCore::IDBCursor::value): (WebCore::IDBCursor::update): (WebCore::IDBCursor::continueFunction): (WebCore::IDBCursor::setValueReady): * Modules/indexeddb/IDBCursor.h: * Modules/indexeddb/IDBDatabaseMetadata.cpp: Added. (WebCore::IDBDatabaseMetadata::isolatedCopy): (WebCore::IDBObjectStoreMetadata::isolatedCopy): (WebCore::IDBIndexMetadata::isolatedCopy): * Modules/indexeddb/IDBDatabaseMetadata.h: * Modules/indexeddb/IDBFactory.cpp: (WebCore::IDBFactory::cmp): * Modules/indexeddb/IDBFactory.h: * Modules/indexeddb/IDBIndex.cpp: (WebCore::IDBIndex::openCursor): (WebCore::IDBIndex::count): (WebCore::IDBIndex::openKeyCursor): (WebCore::IDBIndex::get): (WebCore::IDBIndex::getKey): * Modules/indexeddb/IDBIndex.h: (WebCore::IDBIndex::openCursor): (WebCore::IDBIndex::openKeyCursor): * Modules/indexeddb/IDBKeyPath.cpp: (WebCore::IDBKeyPath::isolatedCopy): * Modules/indexeddb/IDBKeyPath.h: * Modules/indexeddb/IDBKeyRange.cpp: (WebCore::IDBKeyRange::lowerValue): (WebCore::IDBKeyRange::upperValue): (WebCore::IDBKeyRange::only): (WebCore::IDBKeyRange::lowerBound): (WebCore::IDBKeyRange::upperBound): (WebCore::IDBKeyRange::bound): * Modules/indexeddb/IDBKeyRange.h: (WebCore::IDBKeyRange::lowerBound): (WebCore::IDBKeyRange::upperBound): (WebCore::IDBKeyRange::bound): * Modules/indexeddb/IDBObjectStore.cpp: (WebCore::IDBObjectStore::get): (WebCore::generateIndexKeysForValue): (WebCore::IDBObjectStore::add): (WebCore::IDBObjectStore::put): (WebCore::IDBObjectStore::deleteFunction): (WebCore::IDBObjectStore::openCursor): (WebCore::IDBObjectStore::count): * Modules/indexeddb/IDBObjectStore.h: * Modules/indexeddb/IDBRequest.cpp: (WebCore::IDBRequest::setResultCursor): (WebCore::IDBRequest::onSuccess): (WebCore::IDBRequest::onSuccessInternal): * Modules/indexeddb/IDBRequest.h: * Modules/mediasource/DOMURLMediaSource.cpp: (WebCore::DOMURLMediaSource::createObjectURL): * Modules/mediasource/DOMURLMediaSource.h: * Modules/mediasource/MediaSource.cpp: (WebCore::MediaSource::MediaSource): (WebCore::MediaSource::openKeyword): (WebCore::MediaSource::closedKeyword): (WebCore::MediaSource::endedKeyword): (WebCore::MediaSource::setPrivateAndOpen): (WebCore::MediaSource::addedToRegistry): (WebCore::MediaSource::removedFromRegistry): (WebCore::MediaSource::duration): (WebCore::MediaSource::buffered): (WebCore::SourceBufferBufferedDoesNotContainTime::SourceBufferBufferedDoesNotContainTime): (WebCore::SourceBufferBufferedDoesNotContainTime::operator()): (WebCore::SourceBufferBufferedHasEnough::SourceBufferBufferedHasEnough): (WebCore::SourceBufferBufferedHasEnough::operator()): (WebCore::SourceBufferBufferedHasFuture::SourceBufferBufferedHasFuture): (WebCore::SourceBufferBufferedHasFuture::operator()): (WebCore::MediaSource::monitorSourceBuffers): (WebCore::MediaSource::setDuration): (WebCore::MediaSource::setReadyState): (WebCore::SourceBufferIsUpdating): (WebCore::MediaSource::endOfStream): (WebCore::MediaSource::streamEndedWithError): (WebCore::MediaSource::removeSourceBuffer): (WebCore::MediaSource::isOpen): (WebCore::MediaSource::isClosed): (WebCore::MediaSource::close): (WebCore::MediaSource::attachToElement): (WebCore::MediaSource::openIfInEndedState): (WebCore::MediaSource::hasPendingActivity): (WebCore::MediaSource::stop): (WebCore::MediaSource::onReadyStateChange): (WebCore::MediaSource::activeRanges): (WebCore::MediaSource::createSourceBufferPrivate): (WebCore::MediaSource::scheduleEvent): (WebCore::MediaSource::scriptExecutionContext): (WebCore::MediaSource::eventTargetInterface): (WebCore::MediaSource::registry): * Modules/mediasource/MediaSource.h: (WebCore::MediaSource::readyState): (WebCore::MediaSource::mediaElement): (WebCore::MediaSource::asyncEventQueue): * Modules/mediasource/MediaSource.idl: * Modules/mediasource/MediaSourceBase.cpp: * Modules/mediasource/MediaSourceBase.h: * Modules/mediasource/MediaSourceRegistry.cpp: (WebCore::MediaSourceRegistry::registerURL): (WebCore::MediaSourceRegistry::unregisterURL): * Modules/mediasource/MediaSourceRegistry.h: * Modules/mediasource/SourceBuffer.cpp: (WebCore::SourceBuffer::TrackBuffer::TrackBuffer): (WebCore::SourceBuffer::appendBufferTimerFired): (WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample): (WebCore::SourceBuffer::sourceBufferPrivateHasAudio): (WebCore::SourceBuffer::sourceBufferPrivateHasVideo): (WebCore::SourceBuffer::didDropSample): * Modules/mediasource/SourceBuffer.h: * Modules/mediasource/VideoPlaybackQuality.cpp: Added. (WebCore::VideoPlaybackQuality::create): (WebCore::VideoPlaybackQuality::VideoPlaybackQuality): * Modules/mediasource/VideoPlaybackQuality.h: Added. (WebCore::VideoPlaybackQuality::creationTime): (WebCore::VideoPlaybackQuality::totalVideoFrames): (WebCore::VideoPlaybackQuality::droppedVideoFrames): (WebCore::VideoPlaybackQuality::corruptedVideoFrames): (WebCore::VideoPlaybackQuality::totalFrameDelay): * Modules/mediasource/VideoPlaybackQuality.idl: Added. * Modules/mediastream/CapabilityRange.cpp: (WebCore::scriptValue): (WebCore::CapabilityRange::min): (WebCore::CapabilityRange::max): * Modules/mediastream/CapabilityRange.h: * Modules/mediastream/HTMLMediaElementMediaStream.idl: * Modules/mediastream/MediaTrackConstraint.h: * Modules/mediastream/RTCErrorCallback.h: * Modules/mediastream/RTCErrorCallback.idl: * Modules/mediastream/RTCIceCandidate.cpp: * Modules/mediastream/RTCPeerConnection.cpp: (WebCore::RTCPeerConnection::createOffer): (WebCore::RTCPeerConnection::createAnswer): (WebCore::RTCPeerConnection::setLocalDescription): (WebCore::RTCPeerConnection::setRemoteDescription): (WebCore::RTCPeerConnection::addIceCandidate): * Modules/mediastream/RTCPeerConnection.h: * Modules/mediastream/RTCPeerConnection.idl: * Modules/mediastream/RTCPeerConnectionErrorCallback.h: Added. (WebCore::RTCPeerConnectionErrorCallback::~RTCPeerConnectionErrorCallback): * Modules/mediastream/RTCPeerConnectionErrorCallback.idl: Added. * Modules/mediastream/RTCSessionDescriptionRequestImpl.cpp: (WebCore::RTCSessionDescriptionRequestImpl::create): (WebCore::RTCSessionDescriptionRequestImpl::RTCSessionDescriptionRequestImpl): (WebCore::RTCSessionDescriptionRequestImpl::requestFailed): * Modules/mediastream/RTCSessionDescriptionRequestImpl.h: * Modules/mediastream/RTCVoidRequestImpl.cpp: (WebCore::RTCVoidRequestImpl::create): (WebCore::RTCVoidRequestImpl::RTCVoidRequestImpl): (WebCore::RTCVoidRequestImpl::requestFailed): * Modules/mediastream/RTCVoidRequestImpl.h: * Modules/networkinfo/NavigatorNetworkInfoConnection.idl: * Modules/networkinfo/NetworkInfoConnection.idl: * Modules/plugins/QuickTimePluginReplacement.cpp: * Modules/plugins/QuickTimePluginReplacement.h: * Modules/websockets/WebSocketHandshake.cpp: (WebCore::WebSocketHandshake::getExpectedWebSocketAccept): * PlatformEfl.cmake: * PlatformGTK.cmake: * PlatformNix.cmake: * UseJSC.cmake: * WebCore.exp.in: * WebCore.vcxproj/WebCore.vcxproj: * WebCore.vcxproj/WebCore.vcxproj.filters: * WebCore.vcxproj/WebCoreCommon.props: * WebCore.vcxproj/WebCoreTestSupport.vcxproj: * WebCore.xcodeproj/project.pbxproj: * accessibility/AccessibilityNodeObject.cpp: (WebCore::AccessibilityNodeObject::usesAltTagForTextComputation): (WebCore::AccessibilityNodeObject::alternativeText): (WebCore::AccessibilityNodeObject::accessibilityDescription): (WebCore::AccessibilityNodeObject::text): * accessibility/AccessibilityNodeObject.h: * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (webkitAccessibleGetAttributes): (atkRole): * bindings/gobject/GNUmakefile.am: * bindings/gobject/WebKitDOMCustom.cpp: * bindings/gobject/WebKitDOMCustom.h: * bindings/gobject/WebKitDOMCustom.symbols: * bindings/gobject/WebKitDOMDeprecated.cpp: * bindings/gobject/WebKitDOMDeprecated.h: * bindings/gobject/WebKitDOMDeprecated.symbols: * bindings/gobject/webkitdom.symbols: * bindings/js/Dictionary.h: (WebCore::Dictionary::getEventListener): * bindings/js/IDBBindingUtilities.cpp: (WebCore::createIDBKeyFromScriptValueAndKeyPath): (WebCore::injectIDBKeyIntoScriptValue): (WebCore::canInjectIDBKeyIntoScriptValue): (WebCore::deserializeIDBValue): (WebCore::deserializeIDBValueBuffer): (WebCore::idbKeyToScriptValue): (WebCore::scriptValueToIDBKey): * bindings/js/IDBBindingUtilities.h: * bindings/js/JSBindingsAllInOne.cpp: * bindings/js/JSCryptoAlgorithmDictionary.cpp: (WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt): (WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt): (WebCore::JSCryptoAlgorithmDictionary::createParametersForSign): (WebCore::JSCryptoAlgorithmDictionary::createParametersForVerify): (WebCore::JSCryptoAlgorithmDictionary::createParametersForDigest): (WebCore::JSCryptoAlgorithmDictionary::createParametersForGenerateKey): (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveKey): (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveBits): (WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey): (WebCore::JSCryptoAlgorithmDictionary::createParametersForExportKey): * bindings/js/JSCryptoKeySerializationJWK.cpp: (WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm): (WebCore::JSCryptoKeySerializationJWK::keySizeIsValid): (WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON): * bindings/js/JSDOMBinding.h: (WebCore::toJS): (WebCore::toRefPtrNativeArray): (WebCore::toNativeArray): (WebCore::toNativeArguments): * bindings/js/JSDictionary.cpp: (WebCore::JSDictionary::convertValue): * bindings/js/JSDictionary.h: * bindings/js/JSHTMLCanvasElementCustom.cpp: (WebCore::JSHTMLCanvasElement::getContext): * bindings/js/JSInjectedScriptHostCustom.cpp: (WebCore::InjectedScriptHost::scriptValueAsNode): (WebCore::InjectedScriptHost::nodeAsScriptValue): (WebCore::JSInjectedScriptHost::inspectedObject): (WebCore::JSInjectedScriptHost::inspect): * bindings/js/JSInjectedScriptManager.cpp: (WebCore::InjectedScriptManager::createInjectedScript): * bindings/js/JSMainThreadExecState.cpp: (WebCore::functionCallHandlerFromAnyThread): * bindings/js/JSMainThreadExecState.h: (WebCore::JSMainThreadExecState::currentState): * bindings/js/JSMessageEventCustom.cpp: (WebCore::JSMessageEvent::data): (WebCore::handleInitMessageEvent): * bindings/js/JSSubtleCryptoCustom.cpp: (WebCore::JSSubtleCrypto::wrapKey): * bindings/js/ScheduledAction.cpp: * bindings/js/ScriptCallStackFactory.cpp: (WebCore::createScriptArguments): * bindings/js/ScriptController.cpp: (WebCore::ScriptController::evaluateInWorld): (WebCore::ScriptController::evaluate): (WebCore::ScriptController::executeScriptInWorld): (WebCore::ScriptController::executeScript): (WebCore::ScriptController::executeIfJavaScriptURL): * bindings/js/ScriptController.h: * bindings/js/ScriptDebugServer.cpp: (WebCore::ScriptDebugServer::setScriptSource): (WebCore::ScriptDebugServer::updateCallStack): (WebCore::ScriptDebugServer::dispatchDidPause): (WebCore::ScriptDebugServer::runScript): * bindings/js/ScriptDebugServer.h: * bindings/js/ScriptFunctionCall.cpp: * bindings/js/ScriptFunctionCall.h: * bindings/js/ScriptGlobalObject.cpp: Added. (WebCore::handleException): (WebCore::ScriptGlobalObject::set): (WebCore::ScriptGlobalObject::get): (WebCore::ScriptGlobalObject::remove): * bindings/js/ScriptGlobalObject.h: Added. (WebCore::ScriptGlobalObject::ScriptGlobalObject): * bindings/js/ScriptObject.cpp: * bindings/js/ScriptObject.h: * bindings/js/ScriptProfile.cpp: (WebCore::buildInspectorObjectFor): (WebCore::ScriptProfile::buildInspectorObjectForHead): (WebCore::ScriptProfile::buildInspectorObjectForBottomUpHead): * bindings/js/ScriptProfile.h: * bindings/js/ScriptProfiler.cpp: (WebCore::ScriptProfiler::objectByHeapObjectId): (WebCore::ScriptProfiler::getHeapObjectId): * bindings/js/ScriptProfiler.h: * bindings/js/ScriptState.h: * bindings/js/ScriptValue.cpp: * bindings/js/ScriptValue.h: * bindings/js/SerializedScriptValue.cpp: (WebCore::ENUM_CLASS): (WebCore::countUsages): (WebCore::CloneSerializer::dumpIfTerminal): (WebCore::CloneSerializer::write): (WebCore::CloneDeserializer::read): (WebCore::CloneDeserializer::readHMACKey): (WebCore::CloneDeserializer::readAESKey): (WebCore::CloneDeserializer::readRSAKey): (WebCore::CloneDeserializer::readCryptoKey): (WebCore::CloneDeserializer::readTerminal): (WebCore::SerializedScriptValue::deserializeForInspector): (WebCore::SerializedScriptValue::serialize): (WebCore::SerializedScriptValue::deserialize): * bindings/js/SerializedScriptValue.h: * bindings/js/WorkerScriptController.cpp: (WebCore::WorkerScriptController::evaluate): (WebCore::WorkerScriptController::setException): * bindings/js/WorkerScriptController.h: * bindings/scripts/CodeGeneratorGObject.pm: (SkipAttribute): (SkipFunction): (GetWriteableProperties): (GenerateProperty): (GenerateFunction): (GenerateFunctions): * bindings/scripts/CodeGeneratorJS.pm: * bindings/scripts/test/JS/JSTestObj.cpp: (WebCore::setJSTestObjAnyAttribute): * crypto/CommonCryptoUtilities.h: * crypto/CryptoAlgorithmIdentifier.h: (WebCore::ENUM_CLASS): * crypto/CryptoAlgorithmRegistry.cpp: (WebCore::CryptoAlgorithmRegistry::shared): (WebCore::registryMutex): (WebCore::CryptoAlgorithmRegistry::getIdentifierForName): (WebCore::CryptoAlgorithmRegistry::nameForIdentifier): (WebCore::CryptoAlgorithmRegistry::create): (WebCore::CryptoAlgorithmRegistry::registerAlgorithm): * crypto/CryptoAlgorithmRegistry.h: * crypto/CryptoKey.cpp: (WebCore::CryptoKey::usages): * crypto/CryptoKey.idl: * crypto/algorithms/CryptoAlgorithmAES_CBC.cpp: * crypto/algorithms/CryptoAlgorithmAES_KW.cpp: (WebCore::CryptoAlgorithmAES_KW::keyAlgorithmMatches): (WebCore::CryptoAlgorithmAES_KW::encryptForWrapKey): (WebCore::CryptoAlgorithmAES_KW::decryptForUnwrapKey): * crypto/algorithms/CryptoAlgorithmAES_KW.h: * crypto/algorithms/CryptoAlgorithmHMAC.cpp: * crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.cpp: Added. (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::CryptoAlgorithmRSAES_PKCS1_v1_5): (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::~CryptoAlgorithmRSAES_PKCS1_v1_5): (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::create): (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::identifier): (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::keyAlgorithmMatches): (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::encrypt): (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::decrypt): (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::generateKey): (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::importKey): * crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.h: Added. * crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp: * crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp: * crypto/algorithms/CryptoAlgorithmSHA1.cpp: * crypto/algorithms/CryptoAlgorithmSHA224.cpp: * crypto/algorithms/CryptoAlgorithmSHA256.cpp: * crypto/algorithms/CryptoAlgorithmSHA384.cpp: * crypto/algorithms/CryptoAlgorithmSHA512.cpp: * crypto/keys/CryptoKeyAES.cpp: (WebCore::CryptoKeyAES::CryptoKeyAES): (WebCore::CryptoKeyAES::isValidAESAlgorithm): * crypto/keys/CryptoKeyAES.h: * crypto/mac/CryptoAlgorithmRSAES_PKCS1_v1_5Mac.cpp: Added. (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformEncrypt): (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformDecrypt): * crypto/mac/CryptoAlgorithmRegistryMac.cpp: (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): * crypto/mac/CryptoKeyRSAMac.cpp: (WebCore::CryptoKeyRSA::generatePair): * crypto/parameters/CryptoAlgorithmAesCbcParams.h: * css/CSSComputedStyleDeclaration.cpp: (WebCore::getBorderRadiusShorthandValue): (WebCore::ComputedStyleExtractor::valueForFilter): * css/CSSComputedStyleDeclaration.h: * css/CSSCrossfadeValue.cpp: (WebCore::subimageKnownToBeOpaque): (WebCore::CSSCrossfadeValue::knownToBeOpaque): * css/CSSCursorImageValue.cpp: (WebCore::CSSCursorImageValue::detachPendingImage): (WebCore::CSSCursorImageValue::~CSSCursorImageValue): (WebCore::CSSCursorImageValue::cachedImage): (WebCore::CSSCursorImageValue::clearCachedImage): * css/CSSCursorImageValue.h: * css/CSSFilterImageValue.h: (WebCore::CSSFilterImageValue::create): * css/CSSImageGeneratorValue.cpp: (WebCore::CSSImageGeneratorValue::saveCachedImageForSize): (WebCore::CSSImageGeneratorValue::subimageIsPending): (WebCore::CSSImageGeneratorValue::cachedImageForCSSValue): * css/CSSImageGeneratorValue.h: * css/CSSImageSetValue.cpp: (WebCore::CSSImageSetValue::detachPendingImage): (WebCore::CSSImageSetValue::~CSSImageSetValue): (WebCore::CSSImageSetValue::cachedImageSet): * css/CSSImageSetValue.h: * css/CSSImageValue.cpp: (WebCore::CSSImageValue::detachPendingImage): (WebCore::CSSImageValue::~CSSImageValue): (WebCore::CSSImageValue::cachedImage): * css/CSSImageValue.h: * css/CSSParser.cpp: (WebCore::filterProperties): (WebCore::CSSParser::createStyleProperties): (WebCore::CSSParser::parseFilterImage): (WebCore::CSSParser::parseFilter): * css/CSSValue.cpp: * css/StyleProperties.cpp: (WebCore::StyleProperties::asText): * css/StyleResolver.cpp: (WebCore::StyleResolver::State::clear): (WebCore::StyleResolver::styleForElement): (WebCore::StyleResolver::pseudoStyleForElement): (WebCore::addIntrinsicMargins): (WebCore::doesNotInheritTextDecoration): (WebCore::StyleResolver::adjustRenderStyle): (WebCore::StyleResolver::adjustGridItemPosition): (WebCore::StyleResolver::applyProperty): (WebCore::StyleResolver::styleImage): (WebCore::StyleResolver::generatedOrPendingFromValue): (WebCore::StyleResolver::loadPendingImage): (WebCore::StyleResolver::loadPendingImages): * css/StyleResolver.h: * dom/CustomEvent.cpp: (WebCore::CustomEvent::initCustomEvent): * dom/CustomEvent.h: (WebCore::CustomEvent::detail): * dom/Document.cpp: (WebCore::Document::cloneNode): (WebCore::Document::cloneDocumentWithoutChildren): (WebCore::Document::cloneDataFromDocument): * dom/Document.h: * dom/Document.idl: * dom/Element.cpp: (WebCore::Element::computedStyle): * dom/Element.h: * dom/InlineStyleSheetOwner.cpp: (WebCore::InlineStyleSheetOwner::InlineStyleSheetOwner): * dom/MessageEvent.cpp: (WebCore::MessageEvent::MessageEvent): (WebCore::MessageEvent::initMessageEvent): * dom/MessageEvent.h: (WebCore::MessageEvent::create): (WebCore::MessageEvent::dataAsScriptValue): * dom/MessagePort.cpp: (WebCore::MessagePort::postMessage): * dom/Node.cpp: (WebCore::Node::computedStyle): * dom/Node.h: (WebCore::Node::nonRendererStyle): * dom/PopStateEvent.h: (WebCore::PopStateEvent::state): * dom/ScriptElement.cpp: (WebCore::ScriptElement::ScriptElement): * dom/ScriptableDocumentParser.h: * dom/StyledElement.cpp: (WebCore::StyledElement::styleAttributeChanged): * editing/VisibleUnits.cpp: (WebCore::endWordBoundary): * html/HTMLDocument.cpp: (WebCore::HTMLDocument::cloneDocumentWithoutChildren): * html/HTMLDocument.h: * html/HTMLInputElement.cpp: * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::HTMLMediaElement): (HTMLMediaElement::mediaLoadingFailedFatally): (HTMLMediaElement::mediaLoadingFailed): (HTMLMediaElement::mediaPlayerEngineUpdated): (HTMLMediaElement::getVideoPlaybackQuality): * html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::incrementDroppedFrameCount): * html/HTMLMediaElement.idl: * html/HTMLPlugInImageElement.cpp: (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot): * html/HTMLTextAreaElement.cpp: * html/ImageInputType.cpp: (WebCore::ImageInputType::handleDOMActivateEvent): * html/TextFieldInputType.cpp: * html/TextInputType.cpp: * html/parser/HTMLDocumentParser.cpp: (WebCore::HTMLDocumentParser::didReceiveParsedChunkFromBackgroundParser): (WebCore::HTMLDocumentParser::pumpPendingSpeculations): * html/parser/HTMLDocumentParser.h: * html/parser/XSSAuditor.cpp: * html/parser/XSSAuditorDelegate.cpp: * inspector/CodeGeneratorInspector.py: (RawTypes.BaseType.get_raw_validator_call_text): (RawTypes.Object.get_array_item_raw_c_type_text): (RawTypes.Any.get_array_item_raw_c_type_text): (RawTypes.Array.get_array_item_raw_c_type_text): (CommandReturnPassModel.OptOutput.get_return_var_type): (CommandReturnPassModel.OptOutput.get_output_parameter_type): (TypeModel.ExactlyInt.get_input_param_type_text): (TypeModel.ExactlyInt.get_opt_output_type_): (TypeModel.init_class): (TypeBindings.create_named_type_declaration.Helper): (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder): (TypeBindings.create_type_declaration_.EnumBinding.get_setter_value_expression_pattern): (TypeBindings.create_type_declaration_.ClassBinding.get_code_generator.CodeGenerator.generate_type_builder): (Inspector): (ArrayBinding.get_array_item_c_type_text): (Generator.go): (Generator.EventMethodStructTemplate.append_epilog): (Generator.process_command): * inspector/CodeGeneratorInspectorStrings.py: (void): (InspectorFrontend_h): (InspectorBackendDispatchers_h): * inspector/ConsoleMessage.cpp: (WebCore::messageSourceValue): (WebCore::messageTypeValue): (WebCore::messageLevelValue): (WebCore::ConsoleMessage::addToFrontend): * inspector/ConsoleMessage.h: * inspector/ContentSearchUtils.cpp: (WebCore::ContentSearchUtils::buildObjectForSearchMatch): (WebCore::ContentSearchUtils::searchInTextByLines): * inspector/ContentSearchUtils.h: * inspector/DOMPatchSupport.cpp: (WebCore::DOMPatchSupport::createDigest): * inspector/InjectedScript.cpp: (WebCore::InjectedScript::InjectedScript): (WebCore::InjectedScript::evaluate): (WebCore::InjectedScript::callFunctionOn): (WebCore::InjectedScript::evaluateOnCallFrame): (WebCore::InjectedScript::getFunctionDetails): (WebCore::InjectedScript::getProperties): (WebCore::InjectedScript::getInternalProperties): (WebCore::InjectedScript::nodeForObjectId): (WebCore::InjectedScript::releaseObject): (WebCore::InjectedScript::wrapCallFrames): (WebCore::InjectedScript::wrapObject): (WebCore::InjectedScript::wrapTable): (WebCore::InjectedScript::wrapNode): (WebCore::InjectedScript::findObjectById): (WebCore::InjectedScript::inspectNode): (WebCore::InjectedScript::releaseObjectGroup): (WebCore::InjectedScript::nodeAsScriptValue): * inspector/InjectedScript.h: * inspector/InjectedScriptBase.cpp: (WebCore::InjectedScriptBase::InjectedScriptBase): (WebCore::InjectedScriptBase::initialize): (WebCore::InjectedScriptBase::injectedScriptObject): (WebCore::InjectedScriptBase::callFunctionWithEvalEnabled): (WebCore::InjectedScriptBase::makeCall): (WebCore::InjectedScriptBase::makeEvalCall): * inspector/InjectedScriptBase.h: * inspector/InjectedScriptCanvasModule.cpp: (WebCore::InjectedScriptCanvasModule::wrapCanvas2DContext): (WebCore::InjectedScriptCanvasModule::wrapWebGLContext): (WebCore::InjectedScriptCanvasModule::callWrapContextFunction): (WebCore::InjectedScriptCanvasModule::markFrameEnd): (WebCore::InjectedScriptCanvasModule::callStartCapturingFunction): (WebCore::InjectedScriptCanvasModule::callVoidFunctionWithTraceLogIdArgument): (WebCore::InjectedScriptCanvasModule::traceLog): (WebCore::InjectedScriptCanvasModule::replayTraceLog): (WebCore::InjectedScriptCanvasModule::resourceInfo): (WebCore::InjectedScriptCanvasModule::resourceState): * inspector/InjectedScriptCanvasModule.h: * inspector/InjectedScriptHost.cpp: (WebCore::InjectedScriptHost::inspectImpl): (WebCore::InjectedScriptHost::InspectableObject::get): * inspector/InjectedScriptHost.h: * inspector/InjectedScriptManager.cpp: (WebCore::InjectedScriptManager::injectedScriptFor): * inspector/InjectedScriptManager.h: * inspector/InjectedScriptModule.cpp: (WebCore::InjectedScriptModule::ensureInjected): * inspector/InspectorAgent.cpp: (WebCore::InspectorAgent::InspectorAgent): (WebCore::InspectorAgent::didCreateFrontendAndBackend): (WebCore::InspectorAgent::inspect): * inspector/InspectorAgent.h: * inspector/InspectorAgentRegistry.cpp: * inspector/InspectorAgentRegistry.h: * inspector/InspectorAllInOne.cpp: * inspector/InspectorApplicationCacheAgent.cpp: (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent): (WebCore::InspectorApplicationCacheAgent::didCreateFrontendAndBackend): (WebCore::InspectorApplicationCacheAgent::getFramesWithManifests): (WebCore::InspectorApplicationCacheAgent::getApplicationCacheForFrame): (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache): (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources): (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCacheResource): * inspector/InspectorApplicationCacheAgent.h: * inspector/InspectorBackendDispatcher.cpp: * inspector/InspectorBackendDispatcher.h: * inspector/InspectorBaseAgent.h: * inspector/InspectorCSSAgent.cpp: (WebCore::SelectorProfile::toInspectorObject): (WebCore::InspectorCSSAgent::InspectorCSSAgent): (WebCore::InspectorCSSAgent::didCreateFrontendAndBackend): (WebCore::InspectorCSSAgent::getMatchedStylesForNode): (WebCore::InspectorCSSAgent::getInlineStylesForNode): (WebCore::InspectorCSSAgent::getComputedStyleForNode): (WebCore::InspectorCSSAgent::getAllStyleSheets): (WebCore::InspectorCSSAgent::getStyleSheet): (WebCore::InspectorCSSAgent::setStyleText): (WebCore::InspectorCSSAgent::setPropertyText): (WebCore::InspectorCSSAgent::toggleProperty): (WebCore::InspectorCSSAgent::setRuleSelector): (WebCore::InspectorCSSAgent::addRule): (WebCore::InspectorCSSAgent::getSupportedCSSProperties): (WebCore::InspectorCSSAgent::getNamedFlowCollection): (WebCore::InspectorCSSAgent::stopSelectorProfiler): (WebCore::InspectorCSSAgent::stopSelectorProfilerImpl): (WebCore::InspectorCSSAgent::asInspectorStyleSheet): (WebCore::InspectorCSSAgent::collectStyleSheets): (WebCore::InspectorCSSAgent::viaInspectorStyleSheet): (WebCore::InspectorCSSAgent::detectOrigin): (WebCore::InspectorCSSAgent::buildObjectForRule): (WebCore::InspectorCSSAgent::buildArrayForRuleList): (WebCore::InspectorCSSAgent::buildArrayForMatchedRuleList): (WebCore::InspectorCSSAgent::buildObjectForAttributesStyle): (WebCore::InspectorCSSAgent::buildArrayForRegions): (WebCore::InspectorCSSAgent::buildObjectForNamedFlow): * inspector/InspectorCSSAgent.h: * inspector/InspectorCanvasAgent.cpp: (WebCore::InspectorCanvasAgent::InspectorCanvasAgent): (WebCore::InspectorCanvasAgent::didCreateFrontendAndBackend): (WebCore::InspectorCanvasAgent::wrapCanvas2DRenderingContextForInstrumentation): (WebCore::InspectorCanvasAgent::wrapWebGLRenderingContextForInstrumentation): (WebCore::InspectorCanvasAgent::notifyRenderingContextWasWrapped): (WebCore::InspectorCanvasAgent::injectedScriptCanvasModule): * inspector/InspectorCanvasAgent.h: * inspector/InspectorCanvasInstrumentation.h: (WebCore::InspectorInstrumentation::wrapCanvas2DRenderingContextForInstrumentation): (WebCore::InspectorInstrumentation::wrapWebGLRenderingContextForInstrumentation): * inspector/InspectorClient.cpp: * inspector/InspectorClient.h: * inspector/InspectorConsoleAgent.cpp: (WebCore::InspectorConsoleAgent::InspectorConsoleAgent): (WebCore::InspectorConsoleAgent::didCreateFrontendAndBackend): (WebCore::InspectableHeapObject::get): * inspector/InspectorConsoleAgent.h: * inspector/InspectorController.cpp: * inspector/InspectorController.h: * inspector/InspectorDOMAgent.cpp: (WebCore::InspectorDOMAgent::InspectorDOMAgent): (WebCore::InspectorDOMAgent::didCreateFrontendAndBackend): (WebCore::InspectorDOMAgent::getDocument): (WebCore::InspectorDOMAgent::pushChildNodesToFrontend): (WebCore::InspectorDOMAgent::querySelectorAll): (WebCore::InspectorDOMAgent::pushNodePathToFrontend): (WebCore::InspectorDOMAgent::getEventListenersForNode): (WebCore::InspectorDOMAgent::getSearchResults): (WebCore::InspectorDOMAgent::resolveNode): (WebCore::InspectorDOMAgent::getAttributes): (WebCore::InspectorDOMAgent::buildObjectForNode): (WebCore::InspectorDOMAgent::buildArrayForElementAttributes): (WebCore::InspectorDOMAgent::buildArrayForContainerChildren): (WebCore::InspectorDOMAgent::buildObjectForEventListener): (WebCore::InspectorDOMAgent::didCommitLoad): (WebCore::InspectorDOMAgent::didInsertDOMNode): (WebCore::InspectorDOMAgent::styleAttributeInvalidated): * inspector/InspectorDOMAgent.h: * inspector/InspectorDOMDebuggerAgent.cpp: (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent): (WebCore::InspectorDOMDebuggerAgent::didCreateFrontendAndBackend): (WebCore::InspectorDOMDebuggerAgent::descriptionForDOMEvent): * inspector/InspectorDOMDebuggerAgent.h: * inspector/InspectorDOMStorageAgent.cpp: (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent): (WebCore::InspectorDOMStorageAgent::didCreateFrontendAndBackend): (WebCore::InspectorDOMStorageAgent::getDOMStorageItems): (WebCore::InspectorDOMStorageAgent::storageId): (WebCore::InspectorDOMStorageAgent::didDispatchDOMStorageEvent): * inspector/InspectorDOMStorageAgent.h: * inspector/InspectorDatabaseAgent.cpp: (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent): (WebCore::InspectorDatabaseAgent::didCreateFrontendAndBackend): (WebCore::InspectorDatabaseAgent::getDatabaseTableNames): * inspector/InspectorDatabaseAgent.h: * inspector/InspectorDatabaseResource.cpp: (WebCore::InspectorDatabaseResource::bind): * inspector/InspectorDebuggerAgent.cpp: (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent): (WebCore::InspectorDebuggerAgent::didCreateFrontendAndBackend): (WebCore::breakpointActionTypeForString): (WebCore::InspectorDebuggerAgent::setBreakpointByUrl): (WebCore::InspectorDebuggerAgent::setBreakpoint): (WebCore::InspectorDebuggerAgent::resolveBreakpoint): (WebCore::scriptToInspectorObject): (WebCore::InspectorDebuggerAgent::searchInContent): (WebCore::InspectorDebuggerAgent::setScriptSource): (WebCore::InspectorDebuggerAgent::getFunctionDetails): (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame): (WebCore::InspectorDebuggerAgent::compileScript): (WebCore::InspectorDebuggerAgent::runScript): (WebCore::InspectorDebuggerAgent::currentCallFrames): (WebCore::InspectorDebuggerAgent::didParseSource): (WebCore::InspectorDebuggerAgent::didPause): (WebCore::InspectorDebuggerAgent::didContinue): (WebCore::InspectorDebuggerAgent::clear): * inspector/InspectorDebuggerAgent.h: * inspector/InspectorForwarding.h: * inspector/InspectorFrontendClientLocal.cpp: (WebCore::InspectorFrontendClientLocal::evaluateAsBoolean): * inspector/InspectorFrontendHost.cpp: (WebCore::FrontendMenuProvider::create): (WebCore::FrontendMenuProvider::disconnect): (WebCore::FrontendMenuProvider::FrontendMenuProvider): (WebCore::FrontendMenuProvider::contextMenuItemSelected): (WebCore::FrontendMenuProvider::contextMenuCleared): (WebCore::InspectorFrontendHost::showContextMenu): (WebCore::InspectorFrontendHost::dispatchEventAsContextMenuEvent): * inspector/InspectorHeapProfilerAgent.cpp: (WebCore::InspectorHeapProfilerAgent::InspectorHeapProfilerAgent): (WebCore::InspectorHeapProfilerAgent::didCreateFrontendAndBackend): (WebCore::InspectorHeapProfilerAgent::createSnapshotHeader): (WebCore::InspectorHeapProfilerAgent::getProfileHeaders): (WebCore::InspectorHeapProfilerAgent::getObjectByHeapObjectId): (WebCore::InspectorHeapProfilerAgent::getHeapObjectId): * inspector/InspectorHeapProfilerAgent.h: * inspector/InspectorIndexedDBAgent.cpp: (WebCore::InspectorIndexedDBAgent::InspectorIndexedDBAgent): (WebCore::InspectorIndexedDBAgent::didCreateFrontendAndBackend): * inspector/InspectorIndexedDBAgent.h: * inspector/InspectorInputAgent.cpp: (WebCore::InspectorInputAgent::InspectorInputAgent): (WebCore::InspectorInputAgent::didCreateFrontendAndBackend): * inspector/InspectorInputAgent.h: * inspector/InspectorInstrumentation.cpp: * inspector/InspectorInstrumentation.h: * inspector/InspectorLayerTreeAgent.cpp: (WebCore::InspectorLayerTreeAgent::InspectorLayerTreeAgent): (WebCore::InspectorLayerTreeAgent::didCreateFrontendAndBackend): (WebCore::InspectorLayerTreeAgent::layersForNode): (WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderObjectHierarchy): (WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderLayerHierarchy): (WebCore::InspectorLayerTreeAgent::buildObjectForLayer): (WebCore::InspectorLayerTreeAgent::buildObjectForIntRect): (WebCore::InspectorLayerTreeAgent::reasonsForCompositingLayer): * inspector/InspectorLayerTreeAgent.h: * inspector/InspectorMemoryAgent.cpp: (WebCore::InspectorMemoryAgent::didCreateFrontendAndBackend): (WebCore::InspectorMemoryAgent::InspectorMemoryAgent): * inspector/InspectorMemoryAgent.h: * inspector/InspectorOverlay.cpp: (WebCore::buildObjectForShapeOutside): * inspector/InspectorOverlay.h: * inspector/InspectorOverlayPage.js: (_drawShapeHighlight): * inspector/InspectorPageAgent.cpp: (WebCore::InspectorPageAgent::resourceTypeJson): (WebCore::InspectorPageAgent::cachedResourceTypeJson): (WebCore::InspectorPageAgent::InspectorPageAgent): (WebCore::InspectorPageAgent::didCreateFrontendAndBackend): (WebCore::buildObjectForCookie): (WebCore::buildArrayForCookies): (WebCore::InspectorPageAgent::getCookies): (WebCore::InspectorPageAgent::getResourceTree): (WebCore::InspectorPageAgent::searchInResource): (WebCore::buildObjectForSearchResult): (WebCore::InspectorPageAgent::searchInResources): (WebCore::InspectorPageAgent::buildObjectForFrame): (WebCore::InspectorPageAgent::buildObjectForFrameTree): * inspector/InspectorPageAgent.h: * inspector/InspectorProfilerAgent.cpp: (WebCore::InspectorProfilerAgent::InspectorProfilerAgent): (WebCore::InspectorProfilerAgent::createProfileHeader): (WebCore::InspectorProfilerAgent::createSnapshotHeader): (WebCore::InspectorProfilerAgent::getProfileHeaders): (WebCore::InspectorProfilerAgent::getCPUProfile): (WebCore::InspectorProfilerAgent::didCreateFrontendAndBackend): (WebCore::InspectorProfilerAgent::getObjectByHeapObjectId): (WebCore::InspectorProfilerAgent::getHeapObjectId): * inspector/InspectorProfilerAgent.h: * inspector/InspectorResourceAgent.cpp: (WebCore::InspectorResourceAgent::didCreateFrontendAndBackend): (WebCore::buildObjectForTiming): (WebCore::buildObjectForResourceRequest): (WebCore::buildObjectForResourceResponse): (WebCore::buildObjectForCachedResource): (WebCore::InspectorResourceAgent::willSendRequest): (WebCore::InspectorResourceAgent::didReceiveResponse): (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache): (WebCore::InspectorResourceAgent::buildInitiatorObject): (WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest): (WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse): (WebCore::InspectorResourceAgent::didReceiveWebSocketFrame): (WebCore::InspectorResourceAgent::didSendWebSocketFrame): (WebCore::InspectorResourceAgent::InspectorResourceAgent): * inspector/InspectorResourceAgent.h: * inspector/InspectorRuntimeAgent.cpp: (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent): (WebCore::buildErrorRangeObject): (WebCore::InspectorRuntimeAgent::parse): (WebCore::InspectorRuntimeAgent::evaluate): (WebCore::InspectorRuntimeAgent::callFunctionOn): (WebCore::InspectorRuntimeAgent::getProperties): * inspector/InspectorRuntimeAgent.h: * inspector/InspectorStyleSheet.cpp: (WebCore::buildSourceRangeObject): (WebCore::buildMediaObject): (WebCore::fillMediaListChain): (WebCore::InspectorStyle::buildObjectForStyle): (WebCore::InspectorStyle::buildArrayForComputedStyle): (WebCore::InspectorStyle::styleWithProperties): (WebCore::InspectorStyleSheet::create): (WebCore::InspectorStyleSheet::InspectorStyleSheet): (WebCore::InspectorStyleSheet::buildObjectForStyleSheet): (WebCore::InspectorStyleSheet::buildObjectForStyleSheetInfo): (WebCore::selectorsFromSource): (WebCore::InspectorStyleSheet::buildObjectForSelectorList): (WebCore::InspectorStyleSheet::buildObjectForRule): (WebCore::InspectorStyleSheet::buildObjectForStyle): (WebCore::InspectorStyleSheet::resourceStyleSheetText): (WebCore::InspectorStyleSheet::buildArrayForRuleList): (WebCore::InspectorStyleSheetForInlineStyle::create): (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle): * inspector/InspectorStyleSheet.h: (WebCore::InspectorCSSId::InspectorCSSId): (WebCore::InspectorStyleSheet::canBind): * inspector/InspectorStyleTextEditor.cpp: * inspector/InspectorTimelineAgent.cpp: (WebCore::InspectorTimelineAgent::didCreateFrontendAndBackend): (WebCore::toProtocol): (WebCore::InspectorTimelineAgent::innerAddRecordToTimeline): (WebCore::InspectorTimelineAgent::setDOMCounters): (WebCore::InspectorTimelineAgent::InspectorTimelineAgent): (WebCore::InspectorTimelineAgent::sendEvent): * inspector/InspectorTimelineAgent.h: (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry): * inspector/InspectorValues.cpp: * inspector/InspectorValues.h: * inspector/InspectorWebAgentBase.h: Added. (WebCore::InspectorAgentBase::InspectorAgentBase): * inspector/InspectorWorkerAgent.cpp: (WebCore::InspectorWorkerAgent::InspectorWorkerAgent): (WebCore::InspectorWorkerAgent::didCreateFrontendAndBackend): * inspector/InspectorWorkerAgent.h: * inspector/InstrumentingAgents.cpp: * inspector/NetworkResourcesData.cpp: * inspector/PageConsoleAgent.cpp: (WebCore::InspectableNode::get): * inspector/PageDebuggerAgent.cpp: * inspector/PageDebuggerAgent.h: * inspector/PageRuntimeAgent.cpp: (WebCore::PageRuntimeAgent::didCreateFrontendAndBackend): * inspector/PageRuntimeAgent.h: * inspector/ScriptArguments.cpp: (WebCore::ScriptArguments::create): (WebCore::ScriptArguments::ScriptArguments): (WebCore::ScriptArguments::argumentAt): (WebCore::ScriptArguments::getFirstArgumentAsString): * inspector/ScriptArguments.h: * inspector/ScriptCallFrame.cpp: (WebCore::ScriptCallFrame::buildInspectorObject): * inspector/ScriptCallFrame.h: * inspector/ScriptCallStack.cpp: (WebCore::ScriptCallStack::buildInspectorArray): * inspector/ScriptCallStack.h: * inspector/ScriptDebugListener.h: * inspector/TimelineRecordFactory.cpp: * inspector/TimelineRecordFactory.h: (WebCore::TimelineRecordFactory::createWebSocketCreateData): (WebCore::TimelineRecordFactory::createGenericWebSocketData): * inspector/WorkerConsoleAgent.cpp: * inspector/WorkerDebuggerAgent.cpp: * inspector/WorkerInspectorController.cpp: * inspector/WorkerInspectorController.h: * inspector/WorkerRuntimeAgent.cpp: (WebCore::WorkerRuntimeAgent::didCreateFrontendAndBackend): * inspector/WorkerRuntimeAgent.h: * inspector/protocol/Runtime.json: * loader/archive/cf/LegacyWebArchive.cpp: (WebCore::LegacyWebArchive::create): (WebCore::LegacyWebArchive::createFromSelection): * loader/cache/CachedImage.h: * loader/cache/CachedResource.h: (WebCore::CachedResource::decodedDataIsPurgeable): * loader/cache/MemoryCache.cpp: (WebCore::MemoryCache::pruneLiveResourcesToSize): * page/Console.cpp: (WebCore::internalAddMessage): * page/ContentSecurityPolicy.cpp: * page/Frame.cpp: * page/FrameView.cpp: (WebCore::paginationModeForRenderStyle): (WebCore::FrameView::FrameView): (WebCore::FrameView::applyPaginationToViewport): * page/FrameView.h: * page/Page.cpp: (WebCore::Page::jettisonStyleResolversInAllDocuments): * page/Page.h: * page/PageConsole.cpp: (WebCore::PageConsole::printSourceURLAndPosition): (WebCore::PageConsole::addMessage): * page/PageConsole.h: * page/Settings.in: * page/animation/CSSPropertyAnimation.cpp: (WebCore::blendFilter): (WebCore::crossfadeBlend): (WebCore::blendFunc): * platform/CrossThreadCopier.cpp: (WebCore::::copy): * platform/CrossThreadCopier.h: * platform/MediaSample.h: (WebCore::MediaSample::isSync): (WebCore::MediaSample::isNonDisplaying): * platform/SharedBuffer.cpp: (WebCore::SharedBuffer::createPurgeableBuffer): * platform/SharedBuffer.h: * platform/glib: Added. * platform/glib/BatteryProviderUPower.cpp: Added. (powerDeviceAlterationCallback): (BatteryProviderUPower::BatteryProviderUPower): (BatteryProviderUPower::startUpdating): (BatteryProviderUPower::stopUpdating): (BatteryProviderUPower::updateBatteryStatus): * platform/glib/BatteryProviderUPower.h: Added. * platform/glib/BatteryProviderUPowerClient.h: Added. * platform/graphics/BitmapImage.cpp: (WebCore::BitmapImage::destroyDecodedDataIfNecessary): * platform/graphics/BitmapImage.h: * platform/graphics/Font.cpp: (WebCore::clearWidthCaches): * platform/graphics/Font.h: * platform/graphics/GlyphMetricsMap.h: * platform/graphics/Image.h: (WebCore::Image::decodedDataIsPurgeable): * platform/graphics/MediaPlayer.cpp: (WebCore::installedMediaEngines): (WebCore::MediaPlayer::totalVideoFrames): (WebCore::MediaPlayer::droppedVideoFrames): (WebCore::MediaPlayer::corruptedVideoFrames): (WebCore::MediaPlayer::totalFrameDelay): * platform/graphics/MediaPlayer.h: * platform/graphics/MediaPlayerPrivate.h: (WebCore::MediaPlayerPrivateInterface::seekWithTolerance): (WebCore::MediaPlayerPrivateInterface::totalVideoFrames): (WebCore::MediaPlayerPrivateInterface::droppedVideoFrames): (WebCore::MediaPlayerPrivateInterface::corruptedVideoFrames): (WebCore::MediaPlayerPrivateInterface::totalFrameDelay): * platform/graphics/avfoundation/objc/AudioTrackPrivateMediaSourceAVFObjC.cpp: Added. (WebCore::AudioTrackPrivateMediaSourceAVFObjC::AudioTrackPrivateMediaSourceAVFObjC): (WebCore::AudioTrackPrivateMediaSourceAVFObjC::resetPropertiesFromTrack): (WebCore::AudioTrackPrivateMediaSourceAVFObjC::setAssetTrack): (WebCore::AudioTrackPrivateMediaSourceAVFObjC::assetTrack): (WebCore::AudioTrackPrivateMediaSourceAVFObjC::enabled): (WebCore::AudioTrackPrivateMediaSourceAVFObjC::setEnabled): * platform/graphics/avfoundation/objc/AudioTrackPrivateMediaSourceAVFObjC.h: Added. * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h: Added. (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setLoadingProgresssed): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setHasAvailableVideoFrame): * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm: Added. (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::~MediaPlayerPrivateMediaSourceAVFObjC): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::registerMediaEngine): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::create): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::isAvailable): (WebCore::mimeTypeCache): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::getSupportedTypes): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::supportsType): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::load): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::cancelLoad): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::prepareToPlay): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::platformMedia): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::platformLayer): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::play): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::playInternal): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::pause): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::pauseInternal): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::paused): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::supportsScanning): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::naturalSize): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::hasVideo): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::hasAudio): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setVisible): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::durationDouble): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::currentTimeDouble): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::startTimeDouble): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::initialTime): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekWithTolerance): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seeking): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setRateDouble): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::networkState): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::readyState): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekable): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::maxTimeSeekableDouble): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::minTimeSeekable): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::buffered): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::didLoadingProgress): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setSize): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::paint): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::paintCurrentFrameInContext): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::hasAvailableVideoFrame): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::supportsAcceleratedRendering): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::acceleratedRenderingStateChanged): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::movieLoadType): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::prepareForRendering): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::engineDescription): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::languageOfPrimaryAudioTrack): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::extraMemoryCost): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::totalVideoFrames): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::droppedVideoFrames): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::corruptedVideoFrames): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::totalFrameDelay): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::ensureLayer): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::destroyLayer): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::durationChanged): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setReadyState): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setNetworkState): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::addDisplayLayer): (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::removeDisplayLayer): * platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.h: Added. * platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm: Added. (WebCore::MediaSourcePrivateAVFObjC::create): (WebCore::MediaSourcePrivateAVFObjC::MediaSourcePrivateAVFObjC): (WebCore::MediaSourcePrivateAVFObjC::~MediaSourcePrivateAVFObjC): (WebCore::MediaSourcePrivateAVFObjC::addSourceBuffer): (WebCore::MediaSourcePrivateAVFObjC::removeSourceBuffer): (WebCore::MediaSourcePrivateAVFObjC::duration): (WebCore::MediaSourcePrivateAVFObjC::setDuration): (WebCore::MediaSourcePrivateAVFObjC::markEndOfStream): (WebCore::MediaSourcePrivateAVFObjC::unmarkEndOfStream): (WebCore::MediaSourcePrivateAVFObjC::readyState): (WebCore::MediaSourcePrivateAVFObjC::setReadyState): (WebCore::MediaSourcePrivateAVFObjC::sourceBufferPrivateDidChangeActiveState): (WebCore::MediaSourcePrivateAVFObjCHasAudio): (WebCore::MediaSourcePrivateAVFObjC::hasAudio): (WebCore::MediaSourcePrivateAVFObjCHasVideo): (WebCore::MediaSourcePrivateAVFObjC::hasVideo): (WebCore::MediaSourcePrivateAVFObjC::seekToTime): * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h: Added. * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm: Added. (-[WebAVStreamDataParserListener initWithParser:parent:WebCore::]): (-[WebAVStreamDataParserListener dealloc]): (-[WebAVStreamDataParserListener streamDataParser:didParseStreamDataAsAsset:]): (-[WebAVStreamDataParserListener streamDataParser:didFailToParseStreamDataWithError:]): (-[WebAVStreamDataParserListener streamDataParser:didProvideMediaData:forTrackID:mediaType:flags:]): (-[WebAVStreamDataParserListener streamDataParser:didReachEndOfTrackWithTrackID:mediaType:]): (WebCore::MediaSampleAVFObjC::platformSample): (WebCore::CMSampleBufferIsRandomAccess): (WebCore::MediaSampleAVFObjC::flags): (WebCore::SourceBufferPrivateAVFObjC::create): (WebCore::SourceBufferPrivateAVFObjC::SourceBufferPrivateAVFObjC): (WebCore::SourceBufferPrivateAVFObjC::~SourceBufferPrivateAVFObjC): (WebCore::SourceBufferPrivateAVFObjC::didParseStreamDataAsAsset): (WebCore::SourceBufferPrivateAVFObjC::didFailToParseStreamDataWithError): (WebCore::callProcessCodedFrameForEachSample): (WebCore::SourceBufferPrivateAVFObjC::didProvideMediaDataForTrackID): (WebCore::SourceBufferPrivateAVFObjC::processCodedFrame): (WebCore::SourceBufferPrivateAVFObjC::didReachEndOfTrackWithTrackID): (WebCore::SourceBufferPrivateAVFObjC::setClient): (WebCore::SourceBufferPrivateAVFObjC::append): (WebCore::SourceBufferPrivateAVFObjC::abort): (WebCore::SourceBufferPrivateAVFObjC::removedFromMediaSource): (WebCore::SourceBufferPrivateAVFObjC::readyState): (WebCore::SourceBufferPrivateAVFObjC::setReadyState): (WebCore::SourceBufferPrivateAVFObjC::evictCodedFrames): (WebCore::SourceBufferPrivateAVFObjC::isFull): (WebCore::SourceBufferPrivateAVFObjC::hasVideo): (WebCore::SourceBufferPrivateAVFObjC::hasAudio): (WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled): (WebCore::createNonDisplayingCopy): (WebCore::SourceBufferPrivateAVFObjC::flushAndEnqueueNonDisplayingSamples): (WebCore::SourceBufferPrivateAVFObjC::enqueueSample): (WebCore::SourceBufferPrivateAVFObjC::isReadyForMoreSamples): (WebCore::SourceBufferPrivateAVFObjC::setActive): (WebCore::SourceBufferPrivateAVFObjC::fastSeekTimeForMediaTime): (WebCore::SourceBufferPrivateAVFObjC::seekToTime): * platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.h: Added. * platform/graphics/gstreamer/TextCombinerGStreamer.cpp: (webkitTextCombinerPadGetProperty): (webkitTextCombinerPadEvent): * platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp: (WebCore::TrackPrivateBaseGStreamer::TrackPrivateBaseGStreamer): (WebCore::TrackPrivateBaseGStreamer::disconnect): (WebCore::TrackPrivateBaseGStreamer::tagsChanged): (WebCore::TrackPrivateBaseGStreamer::notifyTrackOfTagsChanged): * platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h: * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: (ResourceHandleStreamingClient::didReceiveData): (ResourceHandleStreamingClient::didReceiveBuffer): * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp: (WebCore::GraphicsContext3D::texSubImage2D): * platform/gtk/UserAgentGtk.cpp: (WebCore::cpuDescriptionForUAString): (WebCore::platformVersionForUAString): (WebCore::standardUserAgent): * platform/gtk/WidgetBackingStoreGtkX11.cpp: (WebCore::WidgetBackingStoreGtkX11::~WidgetBackingStoreGtkX11): * platform/mac/MemoryPressureHandlerMac.mm: (WebCore::MemoryPressureHandler::releaseMemory): * platform/mac/PlatformClockCM.h: * platform/mac/ScrollbarThemeMac.mm: (WebCore::ScrollbarThemeMac::scrollbarThickness): (WebCore::ScrollbarThemeMac::updateScrollbarOverlayStyle): (WebCore::ScrollbarThemeMac::minimumThumbLength): (WebCore::ScrollbarThemeMac::updateEnabledState): (WebCore::ScrollbarThemeMac::setPaintCharacteristicsForScrollbar): (WebCore::scrollbarPainterPaint): * platform/mac/SoftLinking.h: * platform/mediastream/RTCPeerConnectionHandler.cpp: (WebCore::RTCPeerConnectionHandler::incompatibleConstraintsErrorName): (WebCore::RTCPeerConnectionHandler::invalidSessionDescriptionErrorName): (WebCore::RTCPeerConnectionHandler::incompatibleSessionDescriptionErrorName): (WebCore::RTCPeerConnectionHandler::internalErrorName): * platform/mediastream/RTCPeerConnectionHandler.h: * platform/mock/RTCNotifiersMock.cpp: (WebCore::SessionRequestNotifier::SessionRequestNotifier): (WebCore::SessionRequestNotifier::fire): (WebCore::VoidRequestNotifier::VoidRequestNotifier): (WebCore::VoidRequestNotifier::fire): * platform/mock/RTCNotifiersMock.h: * platform/mock/RTCPeerConnectionHandlerMock.cpp: (WebCore::RTCPeerConnectionHandlerMock::createOffer): (WebCore::RTCPeerConnectionHandlerMock::createAnswer): * platform/mock/mediasource/MockBox.h: * platform/mock/mediasource/MockMediaPlayerMediaSource.cpp: (WebCore::MockMediaPlayerMediaSource::setNetworkState): (WebCore::MockMediaPlayerMediaSource::totalVideoFrames): (WebCore::MockMediaPlayerMediaSource::droppedVideoFrames): (WebCore::MockMediaPlayerMediaSource::corruptedVideoFrames): (WebCore::MockMediaPlayerMediaSource::totalFrameDelay): * platform/mock/mediasource/MockMediaPlayerMediaSource.h: * platform/mock/mediasource/MockMediaSourcePrivate.cpp: (WebCore::MockMediaSourcePrivate::MockMediaSourcePrivate): (WebCore::MockMediaSourcePrivate::~MockMediaSourcePrivate): (WebCore::MockMediaSourcePrivate::markEndOfStream): * platform/mock/mediasource/MockMediaSourcePrivate.h: * platform/mock/mediasource/MockSourceBufferPrivate.cpp: (WebCore::MockSourceBufferPrivate::MockSourceBufferPrivate): (WebCore::MockSourceBufferPrivate::removedFromMediaSource): (WebCore::MockSourceBufferPrivate::readyState): (WebCore::MockSourceBufferPrivate::setReadyState): (WebCore::MockSourceBufferPrivate::setActive): (WebCore::MockSourceBufferPrivate::enqueueSample): * platform/mock/mediasource/MockSourceBufferPrivate.h: (WebCore::MockSourceBufferPrivate::clearMediaSource): * platform/network/ResourceHandle.cpp: * platform/network/ResourceHandle.h: * platform/network/ResourceHandleClient.cpp: (WebCore::ResourceHandleClient::willCacheResponseAsync): * platform/network/ResourceHandleClient.h: * platform/network/ResourceHandleInternal.h: (WebCore::ResourceHandleInternal::ResourceHandleInternal): * platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandleInternal::~ResourceHandleInternal): (WebCore::ResourceHandle::createCFURLConnection): (WebCore::ResourceHandle::start): (WebCore::ResourceHandle::shouldUseCredentialStorage): (WebCore::ResourceHandle::canAuthenticateAgainstProtectionSpace): (WebCore::ResourceHandle::continueWillSendRequest): (WebCore::ResourceHandle::continueDidReceiveResponse): (WebCore::ResourceHandle::continueShouldUseCredentialStorage): (WebCore::ResourceHandle::continueCanAuthenticateAgainstProtectionSpace): (WebCore::ResourceHandle::continueWillCacheResponse): * platform/network/cf/ResourceHandleCFURLConnectionDelegate.cpp: Added. (WebCore::ResourceHandleCFURLConnectionDelegate::ResourceHandleCFURLConnectionDelegate): (WebCore::ResourceHandleCFURLConnectionDelegate::~ResourceHandleCFURLConnectionDelegate): (WebCore::ResourceHandleCFURLConnectionDelegate::releaseHandle): (WebCore::ResourceHandleCFURLConnectionDelegate::willSendRequestCallback): (WebCore::ResourceHandleCFURLConnectionDelegate::didReceiveResponseCallback): (WebCore::ResourceHandleCFURLConnectionDelegate::didReceiveDataCallback): (WebCore::ResourceHandleCFURLConnectionDelegate::didFinishLoadingCallback): (WebCore::ResourceHandleCFURLConnectionDelegate::didFailCallback): (WebCore::ResourceHandleCFURLConnectionDelegate::willCacheResponseCallback): (WebCore::ResourceHandleCFURLConnectionDelegate::didReceiveChallengeCallback): (WebCore::ResourceHandleCFURLConnectionDelegate::didSendBodyDataCallback): (WebCore::ResourceHandleCFURLConnectionDelegate::shouldUseCredentialStorageCallback): (WebCore::ResourceHandleCFURLConnectionDelegate::canRespondToProtectionSpaceCallback): (WebCore::ResourceHandleCFURLConnectionDelegate::didReceiveDataArrayCallback): (WebCore::ResourceHandleCFURLConnectionDelegate::synthesizeRedirectResponseIfNecessary): (WebCore::ResourceHandleCFURLConnectionDelegate::createResourceRequest): (WebCore::ResourceHandleCFURLConnectionDelegate::makeConnectionClient): * platform/network/cf/ResourceHandleCFURLConnectionDelegate.h: Added. * platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp: Added. (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::ResourceHandleCFURLConnectionDelegateWithOperationQueue): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::~ResourceHandleCFURLConnectionDelegateWithOperationQueue): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::hasHandle): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::setupRequest): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::setupConnectionScheduling): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willSendRequest): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveResponse): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveData): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFinishLoading): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFail): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willCacheResponse): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveChallenge): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didSendBodyData): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::shouldUseCredentialStorage): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::canRespondToProtectionSpace): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveDataArray): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueWillSendRequest): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueDidReceiveResponse): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueShouldUseCredentialStorage): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueWillCacheResponse): (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::continueCanAuthenticateAgainstProtectionSpace): * platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.h: Added. * platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.cpp: Added. (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::SynchronousResourceHandleCFURLConnectionDelegate): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::setupRequest): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::setupConnectionScheduling): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::willSendRequest): (WebCore::setDefaultMIMEType): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::didReceiveResponse): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::didReceiveData): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::didFinishLoading): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::didFail): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::willCacheResponse): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::didReceiveChallenge): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::didSendBodyData): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::shouldUseCredentialStorage): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::canRespondToProtectionSpace): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::didReceiveDataArray): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::continueWillSendRequest): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::continueDidReceiveResponse): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::continueShouldUseCredentialStorage): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::continueWillCacheResponse): (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::continueCanAuthenticateAgainstProtectionSpace): * platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.h: Added. * platform/network/curl/CurlCacheEntry.cpp: (WebCore::CurlCacheEntry::generateBaseFilename): * platform/network/mac/CertificateInfo.h: Added. (WebCore::CertificateInfo::setCertificateChain): (WebCore::CertificateInfo::certificateChain): * platform/network/mac/CertificateInfoMac.mm: Added. (WebCore::CertificateInfo::CertificateInfo): (WebCore::CertificateInfo::dump): * platform/network/mac/WebCoreResourceHandleAsDelegate.mm: (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]): * platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm: (-[WebCoreResourceHandleAsOperationQueueDelegate connection:willCacheResponse:]): * platform/network/soup/CertificateInfo.cpp: Added. (WebCore::CertificateInfo::CertificateInfo): (WebCore::CertificateInfo::~CertificateInfo): * platform/network/soup/CertificateInfo.h: Added. (WebCore::CertificateInfo::certificate): (WebCore::CertificateInfo::setCertificate): (WebCore::CertificateInfo::tlsErrors): (WebCore::CertificateInfo::setTLSErrors): * platform/network/soup/GOwnPtrSoup.cpp: (WTF::SoupBuffer): * platform/network/soup/GOwnPtrSoup.h: * platform/network/soup/ResourceHandleSoup.cpp: (WebCore::WebCoreSynchronousLoader::didReceiveData): (WebCore::WebCoreSynchronousLoader::didReceiveBuffer): (WebCore::HostTLSCertificateSet::computeCertificateHash): (WebCore::ResourceHandle::ensureReadBuffer): (WebCore::redirectSkipCallback): (WebCore::cleanupSoupRequestOperation): (WebCore::ResourceHandle::currentStreamPosition): (WebCore::nextMultipartResponsePartCallback): (WebCore::sendRequestCallback): (WebCore::readCallback): * platform/soup: Added. * platform/soup/SharedBufferSoup.cpp: Added. (WebCore::SharedBuffer::SharedBuffer): (WebCore::SharedBuffer::wrapSoupBuffer): (WebCore::SharedBuffer::clearPlatformData): (WebCore::SharedBuffer::tryReplaceContentsWithPlatformBuffer): (WebCore::SharedBuffer::maybeTransferPlatformData): (WebCore::SharedBuffer::hasPlatformData): (WebCore::SharedBuffer::platformData): (WebCore::SharedBuffer::platformDataSize): * platform/text/TextBoundaries.cpp: (WebCore::findEndWordBoundary): * platform/text/TextBoundaries.h: * platform/text/mac/TextBoundaries.mm: (WebCore::findEndWordBoundary): * plugins/PluginView.cpp: (WebCore::PluginView::performRequest): * rendering/AutoTableLayout.cpp: (WebCore::AutoTableLayout::recalcColumn): * rendering/InlineBox.cpp: (WebCore::InlineBox::previousOnLineExists): * rendering/InlineBox.h: (WebCore::InlineBox::InlineBox): * rendering/InlineElementBox.cpp: * rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::~InlineFlowBox): (WebCore::InlineFlowBox::checkConsistency): * rendering/InlineFlowBox.h: (WebCore::InlineFlowBox::InlineFlowBox): (WebCore::InlineFlowBox::setHasBadChildList): * rendering/InlineIterator.h: (WebCore::InlineIterator::InlineIterator): (WebCore::InlineIterator::nextBreakablePosition): (WebCore::InlineIterator::setNextBreakablePosition): * rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paintCompositionBackground): (WebCore::InlineTextBox::paintDecoration): (WebCore::lineStyleForMarkerType): (WebCore::InlineTextBox::paintDocumentMarkers): * rendering/RenderBlock.cpp: (WebCore::RenderBlock::paint): (WebCore::positionForPointRespectingEditingBoundaries): * rendering/RenderBlock.h: * rendering/RenderBlockFlow.cpp: * rendering/RenderBlockLineLayout.cpp: (WebCore::constructBidiRunsForSegment): * rendering/RenderBox.cpp: (WebCore::RenderBox::borderRadii): (WebCore::RenderBox::paintBoxDecorations): (WebCore::RenderBox::computeRectForRepaint): (WebCore::customContainingBlockWidth): (WebCore::customContainingBlockHeight): (WebCore::customContainingBlockLogicalWidth): (WebCore::customContainingBlockLogicalHeight): (WebCore::customContainingBlockAvailableLogicalHeight): (WebCore::RenderBox::availableLogicalHeightUsing): (WebCore::RenderBox::containingBlockLogicalWidthForPositioned): (WebCore::RenderBox::containingBlockLogicalHeightForPositioned): (WebCore::RenderBox::layoutOverflowRectForPropagation): * rendering/RenderBox.h: * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::stickyPositionOffset): * rendering/RenderButton.cpp: (WebCore::RenderButton::layout): * rendering/RenderElement.cpp: (WebCore::RenderElement::styleWillChange): (WebCore::RenderElement::styleDidChange): * rendering/RenderEmbeddedObject.cpp: (WebCore::RenderEmbeddedObject::allowsAcceleratedCompositing): (WebCore::RenderEmbeddedObject::setPluginUnavailabilityReason): (WebCore::RenderEmbeddedObject::setPluginUnavailabilityReasonWithDescription): * rendering/RenderFileUploadControl.cpp: (WebCore::nodeHeight): (WebCore::RenderFileUploadControl::maxFilenameWidth): (WebCore::RenderFileUploadControl::paintObject): (WebCore::RenderFileUploadControl::fileTextValue): * rendering/RenderFrameSet.cpp: (WebCore::RenderFrameSet::positionFrames): * rendering/RenderIFrame.h: * rendering/RenderImage.cpp: (WebCore::RenderImage::collectSelectionRects): (WebCore::RenderImage::paintAreaElementFocusRing): * rendering/RenderImage.h: * rendering/RenderImageResource.cpp: (WebCore::RenderImageResource::image): * rendering/RenderImageResource.h: * rendering/RenderImageResourceStyleImage.h: * rendering/RenderInline.cpp: (WebCore::RenderInline::absoluteQuadsForSelection): * rendering/RenderInline.h: * rendering/RenderLayer.cpp: (WebCore::RenderLayer::RenderLayer): (WebCore::RenderLayer::~RenderLayer): (WebCore::RenderLayer::willBeDestroyed): (WebCore::RenderLayer::hasAcceleratedTouchScrolling): (WebCore::RenderLayer::handleTouchEvent): (WebCore::RenderLayer::registerAsTouchEventListenerForScrolling): (WebCore::RenderLayer::unregisterAsTouchEventListenerForScrolling): (WebCore::RenderLayer::updateNeedsCompositedScrolling): (WebCore::RenderLayer::scrollTo): (WebCore::RenderLayer::scrollRectToVisible): (WebCore::RenderLayer::visibleContentRect): (WebCore::RenderLayer::didStartScroll): (WebCore::RenderLayer::didEndScroll): (WebCore::RenderLayer::didUpdateScroll): (WebCore::RenderLayer::invalidateScrollbarRect): (WebCore::RenderLayer::invalidateScrollCornerRect): (WebCore::RenderLayer::verticalScrollbarWidth): (WebCore::RenderLayer::horizontalScrollbarHeight): (WebCore::RenderLayer::updateScrollInfoAfterLayout): (WebCore::RenderLayer::paintOverflowControls): (WebCore::RenderLayer::calculateClipRects): * rendering/RenderLayer.h: * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer): (WebCore::RenderLayerBacking::layerWillBeDestroyed): (WebCore::layerOrAncestorIsTransformedOrScrolling): (WebCore::layerOrAncestorIsTransformedOrUsingCompositedScrolling): (WebCore::RenderLayerBacking::shouldClipCompositedBounds): (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): (WebCore::RenderLayerBacking::registerScrollingLayers): (WebCore::RenderLayerBacking::updateScrollingLayers): (WebCore::RenderLayerBacking::containsPaintedContent): (WebCore::RenderLayerBacking::parentForSublayers): (WebCore::RenderLayerBacking::paintsIntoWindow): (WebCore::RenderLayerBacking::setContentsNeedDisplayInRect): (WebCore::RenderLayerBacking::paintIntoLayer): * rendering/RenderLayerBacking.h: * rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::scheduleLayerFlush): (WebCore::RenderLayerCompositor::chromeClient): (WebCore::RenderLayerCompositor::flushPendingLayerChanges): (WebCore::scrollbarHasDisplayNone): (WebCore::updateScrollingLayerWithClient): (WebCore::RenderLayerCompositor::updateCustomLayersAfterFlush): (WebCore::RenderLayerCompositor::didFlushChangesForLayer): (WebCore::RenderLayerCompositor::didChangeVisibleRect): (WebCore::RenderLayerCompositor::addToOverlapMap): (WebCore::RenderLayerCompositor::computeCompositingRequirements): (WebCore::RenderLayerCompositor::setIsInWindow): (WebCore::RenderLayerCompositor::allowsIndependentlyCompositedFrames): (WebCore::RenderLayerCompositor::requiresCompositingLayer): (WebCore::RenderLayerCompositor::requiresOwnBackingStore): (WebCore::RenderLayerCompositor::reasonsForCompositing): (WebCore::RenderLayerCompositor::requiresCompositingForAnimation): (WebCore::RenderLayerCompositor::requiresCompositingForScrolling): (WebCore::isStickyInAcceleratedScrollingLayerOrViewport): (WebCore::isViewportConstrainedFixedOrStickyLayer): (WebCore::RenderLayerCompositor::requiresCompositingForPosition): (WebCore::RenderLayerCompositor::contentsScaleMultiplierForNewTiles): (WebCore::RenderLayerCompositor::ensureRootLayer): (WebCore::RenderLayerCompositor::computeFixedViewportConstraints): (WebCore::RenderLayerCompositor::computeStickyViewportConstraints): (WebCore::RenderLayerCompositor::registerOrUpdateViewportConstrainedLayer): (WebCore::RenderLayerCompositor::unregisterViewportConstrainedLayer): (WebCore::RenderLayerCompositor::registerAllViewportConstrainedLayers): (WebCore::RenderLayerCompositor::unregisterAllViewportConstrainedLayers): (WebCore::RenderLayerCompositor::registerAllScrollingLayers): (WebCore::RenderLayerCompositor::unregisterAllScrollingLayers): (WebCore::RenderLayerCompositor::scrollingLayerAddedOrUpdated): (WebCore::RenderLayerCompositor::scrollingLayerRemoved): (WebCore::RenderLayerCompositor::startInitialLayerFlushTimerIfNeeded): * rendering/RenderLayerCompositor.h: (WebCore::RenderLayerCompositor::layerForContentShadow): * rendering/RenderLayerFilterInfo.h: * rendering/RenderMenuList.cpp: (WebCore::selectedOptionCount): (WebCore::RenderMenuList::RenderMenuList): (WebCore::RenderMenuList::~RenderMenuList): (WebCore::RenderMenuList::adjustInnerStyle): (RenderMenuList::updateFromElement): (RenderMenuList::setTextFromOption): (RenderMenuList::showPopup): (RenderMenuList::hidePopup): (RenderMenuList::popupDidHide): * rendering/RenderMenuList.h: * rendering/RenderObject.cpp: (WebCore::RenderObject::columnNumberForOffset): (WebCore::RenderObject::collectSelectionRects): (WebCore::RenderObject::destroy): (WebCore::RenderObject::innerLineHeight): (WebCore::RenderObject::willRenderImage): * rendering/RenderObject.h: (WebCore::RenderObject::absoluteQuadsForSelection): * rendering/RenderQuote.cpp: (WebCore::RenderQuote::styleDidChange): (WebCore::RenderQuote::updateDepth): * rendering/RenderScrollbar.h: * rendering/RenderSearchField.cpp: (WebCore::RenderSearchField::itemText): * rendering/RenderText.cpp: (WebCore::originalTextMap): (WebCore::RenderText::RenderText): (WebCore::RenderText::~RenderText): (WebCore::RenderText::styleDidChange): (WebCore::RenderText::originalText): (WebCore::RenderText::collectSelectionRects): (WebCore::RenderText::setTextInternal): (WebCore::RenderText::setText): * rendering/RenderText.h: * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::adjustInnerTextStyle): (WebCore::RenderTextControl::canScroll): (WebCore::RenderTextControl::innerLineHeight): * rendering/RenderTextControl.h: * rendering/RenderTextControlMultiLine.cpp: (WebCore::RenderTextControlMultiLine::getAvgCharWidth): (WebCore::RenderTextControlMultiLine::createInnerTextStyle): * rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::layout): (WebCore::RenderTextControlSingleLine::getAvgCharWidth): (WebCore::RenderTextControlSingleLine::preferredContentLogicalWidth): * rendering/RenderTextFragment.cpp: * rendering/RenderTextFragment.h: * rendering/RenderTextLineBoxes.cpp: (WebCore::lineDirectionPointFitsInBox): (WebCore::RenderTextLineBoxes::positionForPoint): * rendering/RenderTheme.cpp: (WebCore::RenderTheme::adjustStyle): (WebCore::RenderTheme::paintBorderOnly): (WebCore::RenderTheme::paintDecorations): * rendering/RenderTheme.h: (WebCore::RenderTheme::paintCheckboxDecorations): (WebCore::RenderTheme::paintRadioDecorations): (WebCore::RenderTheme::paintButtonDecorations): (WebCore::RenderTheme::paintTextFieldDecorations): (WebCore::RenderTheme::paintTextAreaDecorations): (WebCore::RenderTheme::paintMenuListDecorations): (WebCore::RenderTheme::paintPushButtonDecorations): (WebCore::RenderTheme::paintSquareButtonDecorations): (WebCore::RenderTheme::paintFileUploadIconDecorations): (WebCore::RenderTheme::paintSliderThumbDecorations): (WebCore::RenderTheme::paintSearchFieldDecorations): * rendering/RenderThemeIOS.h: Added. (WebCore::RenderThemeIOS::~RenderThemeIOS): * rendering/RenderThemeIOS.mm: Added. (WebCore::IOSGradient::IOSGradient): (WebCore::interpolateLinearGradient): (WebCore::interpolateExponentialGradient): (WebCore::getSharedFunctionRef): (WebCore::drawAxialGradient): (WebCore::drawRadialGradient): (WebCore::getInsetGradient): (WebCore::getShineGradient): (WebCore::getShadeGradient): (WebCore::getConvexGradient): (WebCore::getConcaveGradient): (WebCore::getSliderTrackGradient): (WebCore::getReadonlySliderTrackGradient): (WebCore::getSliderThumbOpaquePressedGradient): (WebCore::gradientWithName): (WebCore::contentSizeCategoryDidChange): (WebCore::RenderThemeIOS::RenderThemeIOS): (WebCore::RenderTheme::themeForPage): (WebCore::RenderThemeIOS::create): (WebCore::RenderThemeIOS::contentSizeCategory): (WebCore::RenderThemeIOS::shadowColor): (WebCore::RenderThemeIOS::addRoundedBorderClip): (WebCore::RenderThemeIOS::adjustCheckboxStyle): (WebCore::shortened): (WebCore::RenderThemeIOS::paintCheckboxDecorations): (WebCore::RenderThemeIOS::baselinePosition): (WebCore::RenderThemeIOS::isControlStyled): (WebCore::RenderThemeIOS::adjustRadioStyle): (WebCore::RenderThemeIOS::paintRadioDecorations): (WebCore::RenderThemeIOS::paintTextFieldDecorations): (WebCore::RenderThemeIOS::paintTextAreaDecorations): (WebCore::RenderThemeIOS::popupInternalPaddingRight): (WebCore::RenderThemeIOS::adjustRoundBorderRadius): (WebCore::applyCommonButtonPaddingToStyle): (WebCore::adjustSelectListButtonStyle): (WebCore::adjustInputElementButtonStyle): (WebCore::RenderThemeIOS::adjustMenuListButtonStyle): (WebCore::RenderThemeIOS::paintMenuListButtonDecorations): (WebCore::RenderThemeIOS::adjustSliderTrackStyle): (WebCore::RenderThemeIOS::paintSliderTrack): (WebCore::RenderThemeIOS::adjustSliderThumbSize): (WebCore::RenderThemeIOS::paintSliderThumbDecorations): (WebCore::RenderThemeIOS::animationRepeatIntervalForProgressBar): (WebCore::RenderThemeIOS::animationDurationForProgressBar): (WebCore::RenderThemeIOS::paintProgressBar): (WebCore::RenderThemeIOS::sliderTickSize): (WebCore::RenderThemeIOS::sliderTickOffsetFromTrackCenter): (WebCore::RenderThemeIOS::adjustSearchFieldStyle): (WebCore::RenderThemeIOS::paintSearchFieldDecorations): (WebCore::RenderThemeIOS::adjustButtonStyle): (WebCore::RenderThemeIOS::paintButtonDecorations): (WebCore::RenderThemeIOS::paintPushButtonDecorations): (WebCore::RenderThemeIOS::setButtonSize): (WebCore::RenderThemeIOS::paintFileUploadIconDecorations): (WebCore::RenderThemeIOS::platformActiveSelectionBackgroundColor): (WebCore::RenderThemeIOS::platformInactiveSelectionBackgroundColor): (WebCore::RenderThemeIOS::shouldShowPlaceholderWhenFocused): (WebCore::RenderThemeIOS::shouldHaveSpinButton): (WebCore::fromCTFontWeight): (WebCore::RenderThemeIOS::systemFont): (WebCore::RenderThemeIOS::mediaControlsStyleSheet): (WebCore::RenderThemeIOS::mediaControlsScript): * rendering/RenderThemeMac.h: * rendering/RenderThemeMac.mm: * rendering/RenderVideo.cpp: (WebCore::RenderVideo::calculateIntrinsicSize): * rendering/RenderView.cpp: (WebCore::RenderView::availableLogicalHeight): (WebCore::fixedPositionOffset): (WebCore::RenderView::mapLocalToContainer): (WebCore::RenderView::pushMappingToContainer): (WebCore::RenderView::mapAbsoluteToLocalPoint): (WebCore::RenderView::repaintViewRectangle): (WebCore::RenderView::computeRectForRepaint): (WebCore::isFixedPositionInViewport): (WebCore::RenderView::hasCustomFixedPosition): * rendering/RenderView.h: * rendering/RenderWidget.cpp: (WebCore::RenderWidget::willBeDestroyed): * rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::ascentAndDescentForBox): * rendering/break_lines.cpp: * rendering/line/BreakingContextInlineHeaders.h: (WebCore::BreakingContext::handleText): * rendering/line/LineBreaker.h: * rendering/line/LineWidth.cpp: * rendering/shapes/BoxShape.cpp: (WebCore::addRoundedRect): (WebCore::BoxShape::buildDisplayPaths): * rendering/shapes/BoxShape.h: * rendering/shapes/PolygonShape.cpp: (WebCore::addPolygon): (WebCore::PolygonShape::buildDisplayPaths): * rendering/shapes/PolygonShape.h: * rendering/shapes/RasterShape.h: * rendering/shapes/RectangleShape.cpp: (WebCore::RectangleShape::buildDisplayPaths): * rendering/shapes/RectangleShape.h: * rendering/shapes/Shape.h: * rendering/shapes/ShapeInfo.cpp: (WebCore::::computedShape): * rendering/shapes/ShapeInfo.h: (WebCore::ShapeInfo::writingMode): * rendering/shapes/ShapeOutsideInfo.cpp: (WebCore::ShapeOutsideInfo::writingMode): * rendering/shapes/ShapeOutsideInfo.h: * rendering/style/BasicShapes.cpp: (WebCore::BasicShape::canBlend): * rendering/style/RenderStyle.h: * rendering/style/StyleGeneratedImage.cpp: (WebCore::StyleGeneratedImage::StyleGeneratedImage): (WebCore::StyleGeneratedImage::cssValue): (WebCore::StyleGeneratedImage::imageSize): (WebCore::StyleGeneratedImage::image): * rendering/style/StyleGeneratedImage.h: * rendering/style/StyleGridItemData.cpp: (WebCore::StyleGridItemData::StyleGridItemData): * rendering/style/StyleImage.h: * rendering/style/StylePendingImage.h: (WebCore::StylePendingImage::cssImageValue): (WebCore::StylePendingImage::cssImageGeneratorValue): (WebCore::StylePendingImage::cssCursorImageValue): (WebCore::StylePendingImage::cssImageSetValue): (WebCore::StylePendingImage::detachFromCSSValue): * rendering/svg/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::originalText): * rendering/svg/RenderSVGInlineText.h: * svg/SVGDocument.cpp: (WebCore::SVGDocument::cloneDocumentWithoutChildren): * svg/SVGDocument.h: * svg/SVGElement.cpp: (WebCore::SVGElement::computedStyle): * svg/SVGElement.h: * svg/SVGScriptElement.cpp: (WebCore::SVGScriptElement::parseAttribute): (WebCore::SVGScriptElement::typeAttributeValue): (WebCore::SVGScriptElement::isAnimatableAttribute): * svg/SVGScriptElement.h: * svg/SVGScriptElement.idl: * svg/graphics/SVGImage.h: * testing/Internals.cpp: (WebCore::Internals::parserMetaData): (WebCore::Internals::initializeMockMediaSource): * testing/Internals.h: * workers/SharedWorkerGlobalScope.cpp: (WebCore::createConnectEvent): * workers/WorkerGlobalScope.cpp: (WebCore::WorkerGlobalScope::importScripts): * workers/WorkerThread.cpp: * xml/XMLTreeViewer.cpp: * xml/parser/XMLDocumentParser.cpp: * xml/parser/XMLDocumentParser.h: * xml/parser/XMLDocumentParserLibxml2.cpp: (WebCore::XMLDocumentParser::error): 2014-01-09 Mark Lam CStack: Need a separate stack limit for the JS stack and the C stack. https://bugs.webkit.org/show_bug.cgi?id=126320. Reviewed by Geoffrey Garen. No new tests. * ForwardingHeaders/runtime/ErrorHandlingScope.h: Added. * WebCore.vcxproj/WebCore.vcxproj: * WebCore.vcxproj/WebCore.vcxproj.filters: * bindings/js/JSDOMBinding.cpp: (WebCore::reportException): - Updated to use ErrorHandlingScope instead of Interpreter::ErrorHandlingMode. 2013-12-06 Laszlo Vidacs Define SHA1 hash size in SHA1.h and use it at various places. https://bugs.webkit.org/show_bug.cgi?id=125345 Reviewed by Darin Adler. Use SHA1::hashSize instead of local variables. * Modules/websockets/WebSocketHandshake.cpp: (WebCore::WebSocketHandshake::getExpectedWebSocketAccept): * platform/network/soup/ResourceHandleSoup.cpp: (WebCore::HostTLSCertificateSet::computeCertificateHash): 2013-12-06 Dan Bernstein [Cocoa] Add load delegate methods for responding to authentication challenges https://bugs.webkit.org/show_bug.cgi?id=125333 Reviewed by Darin Adler. * WebCore.exp.in: Exported core(NSURLCredential *). 2013-12-06 Daniel Bates Rename {adjust, paint}SearchFieldDecoration, {adjust, paint}SearchFieldResultsDecoration https://bugs.webkit.org/show_bug.cgi?id=125191 Reviewed by Joseph Pecoraro. Towards upstreaming the iOS concept of render theme decorations, we should rename RenderTheme::{adjust, paint}SearchFieldDecorationStyle and RenderTheme::{adjust, paint}SearchFieldResultsDecoration to avoid ambiguity with the iOS concept. * platform/efl/RenderThemeEfl.cpp: * platform/efl/RenderThemeEfl.h: * platform/gtk/RenderThemeGtk.cpp: * platform/gtk/RenderThemeGtk.h: * rendering/RenderTheme.cpp: * rendering/RenderTheme.h: * rendering/RenderThemeMac.h: * rendering/RenderThemeMac.mm: * rendering/RenderThemeSafari.cpp: * rendering/RenderThemeSafari.h: * rendering/RenderThemeWin.cpp: * rendering/RenderThemeWin.h: * rendering/RenderThemeWinCE.cpp: * rendering/RenderThemeWinCE.h: 2013-12-06 Andreas Kling Make remaining CSSValue constructors return PassRef. Tweak the remaining CSSValue create() helpers to return PassRef instead of PassRefPtr in the cases where nullptr is never returned. Reviewed by Anders Carlsson. 2013-12-06 Roger Fong Hook into some shader symbol logic following the ANGLE update in r159533. https://bugs.webkit.org/show_bug.cgi?id=125332. Reviewed by Brent Fulgham. No new functionality added. * html/canvas/WebGLRenderingContext.cpp: Add some error checking for errors related to shader symbols that exist across both vertex and fragment shaders. (WebCore::WebGLRenderingContext::linkProgram): * platform/graphics/ANGLEWebKitBridge.cpp: Add logic for handling varyings and add new fields to the ANGLEShaderSymbol struct. (WebCore::getSymbolInfo): * platform/graphics/ANGLEWebKitBridge.h: * platform/graphics/GraphicsContext3D.h: Add those same fields to the SymbolInfo struct as well so that we can access them from our shader source map. Also add a map of varyings along side the uniforms and attributes. (WebCore::GraphicsContext3D::SymbolInfo::SymbolInfo): (WebCore::GraphicsContext3D::ShaderSourceEntry::symbolMap): * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: (WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE): * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp: (WebCore::GraphicsContext3D::areProgramSymbolsValid): Will be filled in later, this method will use the shader source map to check for issues with unused varyings and precisions mismatches of shader symbols that exist across both the vertex and fragment shaders. 2013-12-06 Lukasz Gajowy [ATK] Missing aria roles mappings https://bugs.webkit.org/show_bug.cgi?id=117729 Reviewed by Mario Sanchez Prada. Added a few mappings from ARIA roles to ATK roles. Test: accessibility/aria-mappings.html * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): 2013-11-11 Philippe Normand [GStreamer] webkitwebaudiosrc element needs to emit stream-start, caps and segment events https://bugs.webkit.org/show_bug.cgi?id=123015 Reviewed by Martin Robinson. When the source element starts emitting buffers send along various events to notify downstream elements. No new tests, change covered by existing webaudio tests. * platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp: (webkit_web_audio_src_init): Initialize segment. (webKitWebAudioSrcConstructed): Give an explicit name to each queue added in front of the interleave element. (webKitWebAudioSrcLoop): Before sending the first buffers push stream-start, caps and segment events on each queue's sinkpad. 2013-12-05 Philippe Normand [GStreamer] Audio/Video sink management is incoherent https://bugs.webkit.org/show_bug.cgi?id=125304 Reviewed by Gustavo Noronha Silva. Allow subclasses of MediaPlayerPrivateGStreamerBase to create custom audio/video sinks in a coherent manner using create{Audio,Video}Sink methods. Convenience getters are also available. Also removed some un-needed member variables in the playbin-based player. No new tests, existing media tests cover this change. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer): (WebCore::MediaPlayerPrivateGStreamer::updateStates): (WebCore::MediaPlayerPrivateGStreamer::createAudioSink): (WebCore::MediaPlayerPrivateGStreamer::audioSink): (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: (WebCore::MediaPlayerPrivateGStreamerBase::createAudioSink): 2013-12-05 Gyuyoung Kim Introduce IMAGE_TYPE_CASTS, and use it https://bugs.webkit.org/show_bug.cgi?id=125330 Reviewed by Ryosuke Niwa. As a step to use TYPE_CASTS_BASE, this cl introduce IMAGE_TYPE_CASTS. BitmapImage and SVGImage can use it to generate toFoo() type case helper functions. No new tests, no behavior changes. * loader/cache/CachedImage.cpp: (WebCore::CachedImage::imageSizeForRenderer): (WebCore::CachedImage::resumeAnimatingImagesForLoader): * platform/graphics/BitmapImage.h: * platform/graphics/Image.h: * platform/mac/DragImageMac.mm: (WebCore::createDragImageFromImage): * svg/graphics/SVGImage.h: 2013-12-05 Zoltan Horvath Clean up the forwarding headers of RenderBlock.h https://bugs.webkit.org/show_bug.cgi?id=125323 Reviewed by Ryosuke Niwa. In this patch, I removed the unnecessary forwarding headers from RenderBlock.h, and moved some to RenderBlockFlow.h. No new tests, no behavior change. * rendering/RenderBlock.h: Remove unnecessary forwarding headers. * rendering/RenderBlockFlow.h: Moved some forwarding headers from RenderBlock.h 2013-12-04 Oliver Hunt Refactor static getter function prototype to include thisValue in addition to the base object https://bugs.webkit.org/show_bug.cgi?id=124461 Reviewed by Geoffrey Garen. Change bindings codegen to produce static getter functions with the correct types. Also update the many custom implementations to the new type. No change in behaviour. * bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::cssPropertyGetterPixelOrPosPrefixCallback): (WebCore::cssPropertyGetterCallback): * bindings/js/JSDOMBinding.cpp: (WebCore::objectToStringFunctionGetter): * bindings/js/JSDOMBinding.h: * bindings/js/JSDOMMimeTypeArrayCustom.cpp: (WebCore::JSDOMMimeTypeArray::nameGetter): * bindings/js/JSDOMPluginArrayCustom.cpp: (WebCore::JSDOMPluginArray::nameGetter): * bindings/js/JSDOMPluginCustom.cpp: (WebCore::JSDOMPlugin::nameGetter): * bindings/js/JSDOMStringMapCustom.cpp: (WebCore::JSDOMStringMap::nameGetter): * bindings/js/JSDOMWindowCustom.cpp: (WebCore::nonCachingStaticFunctionGetter): (WebCore::childFrameGetter): (WebCore::indexGetter): (WebCore::namedItemGetter): * bindings/js/JSHTMLAllCollectionCustom.cpp: (WebCore::JSHTMLAllCollection::nameGetter): * bindings/js/JSHTMLCollectionCustom.cpp: (WebCore::JSHTMLCollection::nameGetter): * bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::nameGetter): * bindings/js/JSHTMLFormControlsCollectionCustom.cpp: (WebCore::JSHTMLFormControlsCollection::nameGetter): * bindings/js/JSHTMLFormElementCustom.cpp: (WebCore::JSHTMLFormElement::nameGetter): * bindings/js/JSHTMLFrameSetElementCustom.cpp: (WebCore::JSHTMLFrameSetElement::nameGetter): * bindings/js/JSHistoryCustom.cpp: (WebCore::nonCachingStaticBackFunctionGetter): (WebCore::nonCachingStaticForwardFunctionGetter): (WebCore::nonCachingStaticGoFunctionGetter): * bindings/js/JSJavaScriptCallFrameCustom.cpp: (WebCore::JSJavaScriptCallFrame::scopeType): * bindings/js/JSLocationCustom.cpp: (WebCore::nonCachingStaticReplaceFunctionGetter): (WebCore::nonCachingStaticReloadFunctionGetter): (WebCore::nonCachingStaticAssignFunctionGetter): * bindings/js/JSNamedNodeMapCustom.cpp: (WebCore::JSNamedNodeMap::nameGetter): * bindings/js/JSNodeListCustom.cpp: (WebCore::JSNodeList::nameGetter): * bindings/js/JSPluginElementFunctions.cpp: (WebCore::pluginElementPropertyGetter): * bindings/js/JSPluginElementFunctions.h: * bindings/js/JSRTCStatsResponseCustom.cpp: (WebCore::JSRTCStatsResponse::nameGetter): * bindings/js/JSStorageCustom.cpp: (WebCore::JSStorage::nameGetter): * bindings/js/JSStyleSheetListCustom.cpp: (WebCore::JSStyleSheetList::nameGetter): * bindings/scripts/CodeGeneratorJS.pm: (GenerateHeader): (GenerateImplementation): (GenerateParametersCheck): * bridge/runtime_array.cpp: (JSC::RuntimeArray::lengthGetter): (JSC::RuntimeArray::indexGetter): * bridge/runtime_array.h: * bridge/runtime_method.cpp: (JSC::RuntimeMethod::lengthGetter): * bridge/runtime_method.h: * bridge/runtime_object.cpp: (JSC::Bindings::RuntimeObject::fallbackObjectGetter): (JSC::Bindings::RuntimeObject::fieldGetter): (JSC::Bindings::RuntimeObject::methodGetter): * bridge/runtime_object.h: 2013-12-05 Tim Horton Remove Image::decodedSize() https://bugs.webkit.org/show_bug.cgi?id=125327 Reviewed by Sam Weinig. No new tests, just removing dead code. * platform/graphics/BitmapImage.cpp: (WebCore::BitmapImage::resetAnimation): * platform/graphics/BitmapImage.h: * platform/graphics/GeneratedImage.h: * platform/graphics/Image.h: * platform/graphics/cg/PDFDocumentImage.cpp: * platform/graphics/cg/PDFDocumentImage.h: * svg/graphics/SVGImage.h: * svg/graphics/SVGImageForContainer.h: 2013-12-05 Commit Queue Unreviewed, rolling out r160133. http://trac.webkit.org/changeset/160133 https://bugs.webkit.org/show_bug.cgi?id=125325 broke bindings tests on all the bots (Requested by thorton on #webkit). * bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::cssPropertyGetterPixelOrPosPrefixCallback): (WebCore::cssPropertyGetterCallback): * bindings/js/JSDOMBinding.cpp: (WebCore::objectToStringFunctionGetter): * bindings/js/JSDOMBinding.h: * bindings/js/JSDOMMimeTypeArrayCustom.cpp: (WebCore::JSDOMMimeTypeArray::nameGetter): * bindings/js/JSDOMPluginArrayCustom.cpp: (WebCore::JSDOMPluginArray::nameGetter): * bindings/js/JSDOMPluginCustom.cpp: (WebCore::JSDOMPlugin::nameGetter): * bindings/js/JSDOMStringMapCustom.cpp: (WebCore::JSDOMStringMap::nameGetter): * bindings/js/JSDOMWindowCustom.cpp: (WebCore::nonCachingStaticFunctionGetter): (WebCore::childFrameGetter): (WebCore::indexGetter): (WebCore::namedItemGetter): * bindings/js/JSHTMLAllCollectionCustom.cpp: (WebCore::JSHTMLAllCollection::nameGetter): * bindings/js/JSHTMLCollectionCustom.cpp: (WebCore::JSHTMLCollection::nameGetter): * bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::nameGetter): * bindings/js/JSHTMLFormControlsCollectionCustom.cpp: (WebCore::JSHTMLFormControlsCollection::nameGetter): * bindings/js/JSHTMLFormElementCustom.cpp: (WebCore::JSHTMLFormElement::nameGetter): * bindings/js/JSHTMLFrameSetElementCustom.cpp: (WebCore::JSHTMLFrameSetElement::nameGetter): * bindings/js/JSHistoryCustom.cpp: (WebCore::nonCachingStaticBackFunctionGetter): (WebCore::nonCachingStaticForwardFunctionGetter): (WebCore::nonCachingStaticGoFunctionGetter): * bindings/js/JSJavaScriptCallFrameCustom.cpp: (WebCore::JSJavaScriptCallFrame::scopeType): * bindings/js/JSLocationCustom.cpp: (WebCore::nonCachingStaticReplaceFunctionGetter): (WebCore::nonCachingStaticReloadFunctionGetter): (WebCore::nonCachingStaticAssignFunctionGetter): * bindings/js/JSNamedNodeMapCustom.cpp: (WebCore::JSNamedNodeMap::nameGetter): * bindings/js/JSNodeListCustom.cpp: (WebCore::JSNodeList::nameGetter): * bindings/js/JSPluginElementFunctions.cpp: (WebCore::pluginElementPropertyGetter): * bindings/js/JSPluginElementFunctions.h: * bindings/js/JSRTCStatsResponseCustom.cpp: (WebCore::JSRTCStatsResponse::nameGetter): * bindings/js/JSStorageCustom.cpp: (WebCore::JSStorage::nameGetter): * bindings/js/JSStyleSheetListCustom.cpp: (WebCore::JSStyleSheetList::nameGetter): * bindings/scripts/CodeGeneratorJS.pm: (GenerateHeader): (GenerateImplementation): (GenerateParametersCheck): * bridge/runtime_array.cpp: (JSC::RuntimeArray::lengthGetter): (JSC::RuntimeArray::indexGetter): * bridge/runtime_array.h: * bridge/runtime_method.cpp: (JSC::RuntimeMethod::lengthGetter): * bridge/runtime_method.h: * bridge/runtime_object.cpp: (JSC::Bindings::RuntimeObject::fallbackObjectGetter): (JSC::Bindings::RuntimeObject::fieldGetter): (JSC::Bindings::RuntimeObject::methodGetter): * bridge/runtime_object.h: 2013-12-05 Seokju Kwon Web Inspector: Remove 'cookiesString' output from Page.getCookies https://bugs.webkit.org/show_bug.cgi?id=125268 Reviewed by Timothy Hatcher. Remove 'cookiesString' output from Page.getCookies protocol. It is no longer meaningful because it is an unused parameter. No new tests, no behavior change. * inspector/InspectorPageAgent.cpp: (WebCore::InspectorPageAgent::getCookies): * inspector/InspectorPageAgent.h: * inspector/protocol/Page.json: 2013-12-05 Brian J. Burg Web Inspector: expose node and frame snapshot capabilities. https://bugs.webkit.org/show_bug.cgi?id=124326 Reviewed by Joseph Pecoraro. This adds snapshotRect() and snapshotNode() to the Page domain. Both methods create snapshots using FrameSnapshotting APIs and send images to the inspector frontend as a data URL. Remove the unimplemented Page.captureScreenshot API. * inspector/InspectorPageAgent.cpp: (WebCore::InspectorPageAgent::snapshotNode): Added. (WebCore::InspectorPageAgent::snapshotRect): Added. * inspector/InspectorPageAgent.h: * inspector/protocol/Page.json: Added new protocol APIs. 2013-12-04 Bear Travis [CSS Shapes] Enable CSS Shapes on Windows https://bugs.webkit.org/show_bug.cgi?id=89957 Reviewed by Brent Fulgham. * css/CSSPropertyNames.in: Tweak to ensure shapes properties are regenerated. 2013-12-05 Roger Fong [WebGL] Make sure we satisfy uniform and varying packing restrictions. https://bugs.webkit.org/show_bug.cgi?id=125124. Reviewed by Brent Fulgham. Tests covered by WebGL Khronos conformance tests: webgl/1.0.2/conformance/glsl/misc/shader-uniform-packing-restrictions.html webgl/1.0.2/conformance/glsl/misc/shader-varying-packing-restrictions.html * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: (WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE): 2013-12-05 Laszlo Vidacs 32bit buildfix after r160151 https://bugs.webkit.org/show_bug.cgi?id=125298 Reviewed by Csaba Osztrogonác. * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: (StreamingClient::handleDataReceived): 2013-12-05 Myles C. Maxfield Cropping and drawing ImageBuffers results in uninitialized data being shown https://bugs.webkit.org/show_bug.cgi?id=125271 Reviewed by Simon Fraser. createCroppedImageIfNecessary() crops to the bottom left of the ImageBuffer backing store instead of the top left. In addition, ImageBuffer::draw() draws the entire ImageBuffer's backing store instead of just the relevant portion of it. No new tests are necessary because the existing tests already test this functionality * platform/graphics/cg/ImageBufferCG.cpp: (WebCore::createCroppedImageIfNecessary): Crop to the top left of the backing store (WebCore::ImageBuffer::draw): Draw only the logical portion of the backing store 2013-12-05 Joseph Pecoraro Remove stale ScriptGlobalObject methods https://bugs.webkit.org/show_bug.cgi?id=125276 Reviewed by Sam Weinig. * bindings/js/ScriptObject.cpp: (WebCore::ScriptGlobalObject::set): * bindings/js/ScriptObject.h: 2013-12-04 Ryosuke Niwa Change how the form element pointer affects parsing template elements, to reduce weirdness in templates https://bugs.webkit.org/show_bug.cgi?id=125279 Reviewed by Antti Koivisto. Faithfully update the HTML5 parser after http://html5.org/tools/web-apps-tracker?from=8330&to=8331. Test: fast/dom/HTMLTemplateElement/no-form-association-2.html * html/parser/HTMLConstructionSite.cpp: (WebCore::HTMLConstructionSite::insertHTMLFormElement): Don't the form element pointer if the context element or its ancestor is a template element. (WebCore::HTMLConstructionSite::insideTemplateElement): Added. (WebCore::HTMLConstructionSite::createHTMLElement): Renamed openElementsContainTemplateElement to insideTemplateElement to reflect the true semantics of the boolean. * html/parser/HTMLConstructionSite.h: * html/parser/HTMLTreeBuilder.cpp: (WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody): Ignore the form element pointer if there is a template element on the stack of open elements. This faithfully reflects what's being said in the specification. We should probably make isParsingTemplateContents more efficient by storing a boolean and then wrap from() in some helper function but that should probbaly happen in a separate patch. (WebCore::HTMLTreeBuilder::processStartTagForInBody): Ditto. (WebCore::HTMLTreeBuilder::processStartTagForInTable): Ditto. (WebCore::HTMLTreeBuilder::processEndTagForInBody): Don't unset or rely on the form element pointer when there is a template element on the stack of open elements. * html/parser/HTMLTreeBuilder.h: (WebCore::HTMLTreeBuilder::isParsingTemplateContents): Added a trivial implementation for when TEMPLATE_ELEMENT is disabled. (WebCore::HTMLTreeBuilder::isParsingFragmentOrTemplateContents): Merged two implementations. 2013-12-05 Thiago de Barros Lacerda [MediaStream] Firing negotiationneeded event upon track add/remove on MediaStream https://bugs.webkit.org/show_bug.cgi?id=125243 Reviewed by Eric Carlson. Spec states that: In particular, if an RTCPeerConnection object is consuming a MediaStream on which a track is added, by, e.g., the addTrack() method being invoked, the RTCPeerConnection object must fire the "negotiationneeded" event. Removal of media components must also trigger "negotiationneeded". Existing tests updated. * Modules/mediastream/MediaStream.cpp: (WebCore::MediaStream::addTrack): (WebCore::MediaStream::removeTrack): (WebCore::MediaStream::addObserver): (WebCore::MediaStream::removeObserver): * Modules/mediastream/MediaStream.h: * Modules/mediastream/RTCPeerConnection.cpp: (WebCore::RTCPeerConnection::~RTCPeerConnection): (WebCore::RTCPeerConnection::addStream): (WebCore::RTCPeerConnection::removeStream): (WebCore::RTCPeerConnection::didAddOrRemoveTrack): * Modules/mediastream/RTCPeerConnection.h: * platform/mock/RTCPeerConnectionHandlerMock.cpp: (WebCore::RTCPeerConnectionHandlerMock::addStream): 2013-12-05 Beth Dakin Bad repaints on twitter when the tile cache has a margin https://bugs.webkit.org/show_bug.cgi?id=125263 -and corresponding- Reviewed by Tim Horton. When tiles that used to be margin tiles become real-content tiles, they need to be invalidated. Two new helper functions will make it so that we don’t have to manually factor out the margin from the bounds in more than one place in the code. * platform/graphics/ca/mac/TileController.h: * platform/graphics/ca/mac/TileController.mm: (WebCore::TileController::boundsWithoutMargin): (WebCore::TileController::boundsAtLastRevalidateWithoutMargin): Here is one existing place where we used to factor out the margin, but now we can call boundsWithoutMargin(). (WebCore::TileController::adjustRectAtTileIndexForMargin): And here is where we invalidate the formerly-margin tiles. (WebCore::TileController::revalidateTiles): 2013-12-05 Zoltan Horvath Remove the forward declaration of BidiContext class from RenderBlock.h https://bugs.webkit.org/show_bug.cgi?id=125265 Reviewed by Csaba Osztrogonác. No new tests, no behavior change. * rendering/RenderBlock.h: BidiContext is not used in RenderBlock.h 2013-12-05 Aloisio Almeida Jr [Cairo] Avoid extra copy when drawing images https://bugs.webkit.org/show_bug.cgi?id=124209 Reviewed by Carlos Garcia Campos. This commit applies some changes proposed after the original patch has been landed. It fixes the logic to create the subsurface (as it was inverted). It also remove an unnecessary RefPtr variable to hold the subsurface. No new tests. It's an enhancement. Already covered by existing tests. * platform/graphics/cairo/PlatformContextCairo.cpp: (WebCore::PlatformContextCairo::drawSurfaceToContext): 2013-12-05 Zoltan Horvath [CSS Shapes] Fix inset when only a subset of the arguments are defined https://bugs.webkit.org/show_bug.cgi?id=125277 Reviewed by David Hyatt. I thought Length's default value is fixed-0, but actually it's auto-0. For the optional arguments of inset shape, we need to use fixed-0, so I updated the code and the tests to use that explicitly. No new tests, I updated the old ones. * css/BasicShapeFunctions.cpp: (WebCore::basicShapeForValue): 2013-12-05 Carlos Garcia Campos [GTK] Do not use deprecated gtk-doc 'Rename to' tag https://bugs.webkit.org/show_bug.cgi?id=125303 Reviewed by Philippe Normand. GObject introspection rename-to annotation is available in since version 0.6.3 so we should use that instead. * bindings/gobject/WebKitDOMEventTarget.h: 2013-12-05 Carlos Garcia Campos [GTK] Add missing symbols to WebKitDOMDeprecated.symbols https://bugs.webkit.org/show_bug.cgi?id=125300 Reviewed by Philippe Normand. Add webkit_dom_html_element_get_id and webkit_dom_html_element_set_id to the symbols files. * bindings/gobject/WebKitDOMDeprecated.symbols: * bindings/gobject/webkitdom.symbols: 2013-12-05 Carlos Garcia Campos Unreviewed. Update GObject DOM bindings symbols file after r159711. * bindings/gobject/webkitdom.symbols: 2013-12-05 Zan Dobersek [GTK] Move platform sources free of layering violations under libPlatform https://bugs.webkit.org/show_bug.cgi?id=117509 Reviewed by Carlos Garcia Campos. * GNUmakefile.list.am: Move additional source files located in the platform layer under libPlatform. All moved sources are free of layering violations and thus ready for the migration. 2013-12-05 László Langó Remove bridge/testqtbindings.cpp. https://bugs.webkit.org/show_bug.cgi?id=125287 Reviewed by Alexey Proskuryakov. * bridge/testqtbindings.cpp: Removed. There is no QT anymore. We don't need this file. 2013-12-04 Gurpreet Kaur % unit heights don't work if parent block height is set in vh https://bugs.webkit.org/show_bug.cgi?id=118516 Reviewed by Simon Fraser. From Blink r156449 by An element having height as percentage needs to have the containingblock's height or availableheight to calculate its own height. The containing block having a height set in vh unit was not being considered for calculating the child's height. Tests: fast/css/viewport-percentage-compute-box-height.html fast/css/viewport-percentage-compute-box-width.html * rendering/RenderBox.cpp: (WebCore::RenderBox::computePercentageLogicalHeight): Correct child's height(in pecentage) was not being calculated incase of parent having height set in vh unit. Added condition to calculate the containing block height in terms of viewport size. 2013-12-04 Roger Fong [Windows] Unreviewed build fix. Copy headers from rendering/line to build directory. * WebCore.vcxproj/copyForwardingHeaders.cmd: 2013-12-04 Ryosuke Niwa bgColor, setBgColor, alinkColor, setAlinkColor, and etc... on HTMLBodyElement are useless https://bugs.webkit.org/show_bug.cgi?id=125208 Rubber-stamped by Anders Carlsson. Address Darin's comment to use fastGetAttribute instead of getAttribute. * html/HTMLDocument.cpp: (WebCore::HTMLDocument::bgColor): (WebCore::HTMLDocument::fgColor): (WebCore::HTMLDocument::alinkColor): (WebCore::HTMLDocument::linkColor): (WebCore::HTMLDocument::vlinkColor): 2013-12-04 Brian J. Burg Consolidate various frame snapshot capabilities. https://bugs.webkit.org/show_bug.cgi?id=124325 Reviewed by Darin Adler. Various snapshot creation methods had duplicated code and were split between Frame, DragImage, and platform-specific implementationss. This patch puts WebCore snapshot methods into FrameSnapshotting and removes platform implementations where possible. DragImage methods reuse snapshot methods where possible. Inspector will be able to take snapshots without using drag images. No new tests, this is a refactoring. * CMakeLists.txt: * GNUmakefile.list.am: * WebCore.exp.in: * WebCore.vcxproj/WebCore.vcxproj: * WebCore.vcxproj/WebCore.vcxproj.filters: * WebCore.xcodeproj/project.pbxproj: * bindings/objc/DOM.mm: (-[DOMNode renderedImage]): (-[DOMRange renderedImageForcingBlackText:]): * dom/Clipboard.cpp: (WebCore::Clipboard::createDragImage): * dom/ClipboardMac.mm: (WebCore::Clipboard::createDragImage): * page/DragController.cpp: (WebCore::DragController::startDrag): * page/Frame.cpp: * page/Frame.h: * page/FrameSnapshotting.cpp: Added. (WebCore::ScopedFramePaintingState::ScopedFramePaintingState): (WebCore::ScopedFramePaintingState::~ScopedFramePaintingState): (WebCore::snapshotFrameRect): Move most buffer logic to here. (WebCore::snapshotSelection): Moved from Frame. (WebCore::snapshotNode): Moved from Frame. * page/FrameSnapshotting.h: Added. * page/mac/FrameMac.mm: Removed. * page/mac/FrameSnapshottingMac.h: Removed. * page/mac/FrameSnapshottingMac.mm: Removed. * page/win/FrameWin.cpp: remove duplicate implementation. * page/win/FrameWin.h: Fix an incorrect parameter name. * platform/DragImage.cpp: (WebCore::ScopedNodeDragState::ScopedNodeDragState): (WebCore::ScopedNodeDragState::~ScopedNodeDragState): (WebCore::createDragImageFromSnapshot): Boilerplate buffer conversion. (WebCore::createDragImageForNode): (WebCore::createDragImageForSelection): (WebCore::ScopedFrameSelectionState::ScopedFrameSelectionState): (WebCore::ScopedFrameSelectionState::~ScopedFrameSelectionState): (WebCore::createDragImageForRange): Moved from Frame. (WebCore::createDragImageForImage): Moved from FrameSnapshottingMac. (WebCore::createDragImageForLink): use nullptr. 2013-12-04 Benjamin Poulain Remove spaces on a blank line to have ResourceHandleCFNet.cpp identical to iOS Unreviewed. * platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::platformLoadResourceSynchronously): 2013-12-04 Antti Koivisto Move pseudo element construction out from Element https://bugs.webkit.org/show_bug.cgi?id=125257 Reviewed by Anders Carlsson. This is logically part of the style resolve/render tree construction. This will make future refactoring easier. * dom/Element.cpp: * dom/Element.h: * style/StyleResolveTree.cpp: (WebCore::Style::beforeOrAfterPseudoElement): (WebCore::Style::setBeforeOrAfterPseudoElement): (WebCore::Style::clearBeforeOrAfterPseudoElement): (WebCore::Style::needsPseudeElement): (WebCore::Style::attachBeforeOrAfterPseudoElementIfNeeded): (WebCore::Style::attachRenderTree): (WebCore::Style::updateBeforeOrAfterPseudoElement): (WebCore::Style::resolveTree): 2013-12-04 Zoltan Horvath Move TrailingObjects class into its own h/cpp https://bugs.webkit.org/show_bug.cgi?id=124956 Reviewed by David Hyatt. Since I moved space-ignoring inline functions into MidpointState in r160074, I can nicely separate TrailingObjects class from BreakingContextInlineHeader.h. This change improves the readability, and it's part of the RenderBlockLineLayout refactoring campaign, which is tracked under bug #121261. No new tests, no behavior change. * CMakeLists.txt: * GNUmakefile.list.am: * WebCore.vcxproj/WebCore.vcxproj: * WebCore.xcodeproj/project.pbxproj: * rendering/RenderBlock.h: * rendering/RenderBlockFlow.h: * rendering/line/BreakingContextInlineHeaders.h: * rendering/line/TrailingObjects.cpp: Added. (WebCore::TrailingObjects::updateMidpointsForTrailingBoxes): * rendering/line/TrailingObjects.h: Added. (WebCore::TrailingObjects::TrailingObjects): (WebCore::TrailingObjects::setTrailingWhitespace): (WebCore::TrailingObjects::clear): (WebCore::TrailingObjects::appendBoxIfNeeded): 2013-12-04 Oliver Hunt Refactor static getter function prototype to include thisValue in addition to the base object https://bugs.webkit.org/show_bug.cgi?id=124461 Reviewed by Geoffrey Garen. Change bindings codegen to produce static getter functions with the correct types. Also update the many custom implementations to the new type. No change in behaviour. * bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::cssPropertyGetterPixelOrPosPrefixCallback): (WebCore::cssPropertyGetterCallback): * bindings/js/JSDOMBinding.cpp: (WebCore::objectToStringFunctionGetter): * bindings/js/JSDOMBinding.h: * bindings/js/JSDOMMimeTypeArrayCustom.cpp: (WebCore::JSDOMMimeTypeArray::nameGetter): * bindings/js/JSDOMPluginArrayCustom.cpp: (WebCore::JSDOMPluginArray::nameGetter): * bindings/js/JSDOMPluginCustom.cpp: (WebCore::JSDOMPlugin::nameGetter): * bindings/js/JSDOMStringMapCustom.cpp: (WebCore::JSDOMStringMap::nameGetter): * bindings/js/JSDOMWindowCustom.cpp: (WebCore::nonCachingStaticFunctionGetter): (WebCore::childFrameGetter): (WebCore::indexGetter): (WebCore::namedItemGetter): * bindings/js/JSHTMLAllCollectionCustom.cpp: (WebCore::JSHTMLAllCollection::nameGetter): * bindings/js/JSHTMLCollectionCustom.cpp: (WebCore::JSHTMLCollection::nameGetter): * bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::nameGetter): * bindings/js/JSHTMLFormControlsCollectionCustom.cpp: (WebCore::JSHTMLFormControlsCollection::nameGetter): * bindings/js/JSHTMLFormElementCustom.cpp: (WebCore::JSHTMLFormElement::nameGetter): * bindings/js/JSHTMLFrameSetElementCustom.cpp: (WebCore::JSHTMLFrameSetElement::nameGetter): * bindings/js/JSHistoryCustom.cpp: (WebCore::nonCachingStaticBackFunctionGetter): (WebCore::nonCachingStaticForwardFunctionGetter): (WebCore::nonCachingStaticGoFunctionGetter): * bindings/js/JSJavaScriptCallFrameCustom.cpp: (WebCore::JSJavaScriptCallFrame::scopeType): * bindings/js/JSLocationCustom.cpp: (WebCore::nonCachingStaticReplaceFunctionGetter): (WebCore::nonCachingStaticReloadFunctionGetter): (WebCore::nonCachingStaticAssignFunctionGetter): * bindings/js/JSNamedNodeMapCustom.cpp: (WebCore::JSNamedNodeMap::nameGetter): * bindings/js/JSNodeListCustom.cpp: (WebCore::JSNodeList::nameGetter): * bindings/js/JSPluginElementFunctions.cpp: (WebCore::pluginElementPropertyGetter): * bindings/js/JSPluginElementFunctions.h: * bindings/js/JSRTCStatsResponseCustom.cpp: (WebCore::JSRTCStatsResponse::nameGetter): * bindings/js/JSStorageCustom.cpp: (WebCore::JSStorage::nameGetter): * bindings/js/JSStyleSheetListCustom.cpp: (WebCore::JSStyleSheetList::nameGetter): * bindings/scripts/CodeGeneratorJS.pm: (GenerateHeader): (GenerateImplementation): (GenerateParametersCheck): * bridge/runtime_array.cpp: (JSC::RuntimeArray::lengthGetter): (JSC::RuntimeArray::indexGetter): * bridge/runtime_array.h: * bridge/runtime_method.cpp: (JSC::RuntimeMethod::lengthGetter): * bridge/runtime_method.h: * bridge/runtime_object.cpp: (JSC::Bindings::RuntimeObject::fallbackObjectGetter): (JSC::Bindings::RuntimeObject::fieldGetter): (JSC::Bindings::RuntimeObject::methodGetter): * bridge/runtime_object.h: 2013-12-04 Zoltan Horvath [CSS Shapes] Support inset for shape-outside Reviewed by David Hyatt. This patch adds inset support for shape-outside. Parsing has previously landed in r159968. Specification: http://dev.w3.org/csswg/css-shapes/#supported-basic-shapes Tests: fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-left.html fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-right.html fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-left.html fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-right.html fast/shapes/shape-outside-floats/shape-outside-floats-inset.html * platform/LengthSize.h: (WebCore::LengthSize::floatSize): Add conversion to FloatSize. * rendering/shapes/Shape.cpp: (WebCore::Shape::createShape): Handle inset case. 2013-12-04 Bear Travis Web Inspector: [CSS Shapes] Support raster shape visualizations https://bugs.webkit.org/show_bug.cgi?id=124080 Reviewed by Joseph Pecoraro. Create an inspector visualization for a shape created from an image. The visualization takes each line of the image, combining where possible. Test added to inspector-protocol/model/highlight-shape-outside.html * rendering/shapes/RasterShape.cpp: (WebCore::RasterShapeIntervals::buildBoundsPath): Create a path representing the RasterShapeIntervals. * rendering/shapes/RasterShape.h: 2013-12-04 Zoltan Horvath [CSS Shapes] Remove explicit numbering from BasicShape::Type and CSSBasicShape::Type enums https://bugs.webkit.org/show_bug.cgi?id=125163 Reviewed by Rob Buis. I don't see any reason to have explicit numbering for the Type enum in our [CSS]BasicShape classes. I removed numbering, which will decrease for instance the merge conflicts on Type changes. No new tests, no behavior change. * css/CSSBasicShapes.h: * rendering/style/BasicShapes.h: 2013-12-04 Myles C. Maxfield Allow ImageBuffer to use an IOSurface that is larger than necessary https://bugs.webkit.org/show_bug.cgi?id=124626 Reviewed by Simon Fraser. Because creating ImageBuffer's backing store can be so expensive, it would be beneficial to have a pool of pre-created backing stores available. However, this means that ImageBuffer might have to use a backing store that is larger than the exact dimensions that it needs. This patch adds a field, m_backingStoreSize, to CG's ImageBufferData class, and uses this new field when performing ImageBuffer operations to allow for larger-than-necessary backing stores. Content is always drawn in the top left corner of the backing store. No new tests are necessary because there is no behavior change. * platform/graphics/ImageBuffer.h: (WebCore::ImageBuffer::baseTransform): The base transform has to put content at the top left corner instead of bottom left * platform/graphics/cg/ImageBufferCG.cpp: (WebCore::createCroppedImageIfNecessary): Convenience function to figure out the dimensions of the backing texture in user space (WebCore::ImageBuffer::ImageBuffer): Set up new m_backingStoreSize member (WebCore::maybeCropToBounds): Some ImageBuffer API functions require outputting an image with logical size. This function performs the cropping (WebCore::ImageBuffer::copyImage): Updated for larger-than-necessary backing stores (WebCore::ImageBuffer::copyNativeImage): Ditto (WebCore::ImageBuffer::draw): Ditto (WebCore::ImageBuffer::clip): Ditto (WebCore::ImageBuffer::putByteArray): Ditto (WebCore::ImageBuffer::toDataURL): Ditto * platform/graphics/cg/ImageBufferDataCG.cpp: (WebCore::ImageBufferData::getData): Ditto (WebCore::ImageBufferData::putData): Ditto * platform/graphics/cg/ImageBufferDataCG.h: New m_backingStoreSize field 2013-12-03 Dean Jackson [WebGL] Support for texImage2D of type HALF_FLOAT_OES https://bugs.webkit.org/show_bug.cgi?id=110936 Reviewed by Brent Fulgham. Add support for the HALF_FLOAT_OES texture format from texImage2D and texSubImage2D. A lot of this patch comes from the original patch on the bug by Nayan Kumar, and the Blink commit: https://codereview.chromium.org/13842017 Tests: fast/canvas/webgl/oes-texture-half-float-with-canvas.html fast/canvas/webgl/oes-texture-half-float-with-image.html fast/canvas/webgl/oes-texture-half-float-with-video.html * html/canvas/OESTextureHalfFloat.idl: New HALF_FLOAT_OES constant value. * html/canvas/WebGLRenderingContext.cpp: (WebCore::WebGLRenderingContext::validateTexFunc): Remove the code that would bail if half-float values were used. * platform/graphics/GraphicsContext3D.cpp: - Return appropriate DataFormats for half floating point types. - Copy the float -> half-float code from Blink - New pack functions for half floats * platform/graphics/GraphicsContext3D.h: New format types. * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp: (WebCore::GraphicsContext3D::texSubImage2D): Use GL_HALF_FLOAT_ARB if we're passed a HALF_FLOAT_OES. 2013-12-04 Daniel Bates Fix the Apple Windows build after (https://bugs.webkit.org/show_bug.cgi?id=125193) * rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::paintMenuList): Substitute paintInfo for i. 2013-12-04 Daniel Bates Rename RenderTheme::paintMenuListButton() https://bugs.webkit.org/show_bug.cgi?id=125193 Reviewed by Simon Fraser. Towards upstreaming the iOS concept of render theme decorations we should rename RenderTheme::paintMenuListButton() to RenderTheme::paintMenuListButtonDecorations() to better describe its purpose. Also, fix code style issues. * platform/blackberry/RenderThemeBlackBerry.cpp: (WebCore::RenderThemeBlackBerry::paintMenuListButtonDecorations): * platform/blackberry/RenderThemeBlackBerry.h: * platform/efl/RenderThemeEfl.cpp: (WebCore::RenderThemeEfl::paintMenuListButtonDecorations): * platform/efl/RenderThemeEfl.h: * platform/gtk/RenderThemeGtk.cpp: (WebCore::RenderThemeGtk::paintMenuListButtonDecorations): * platform/gtk/RenderThemeGtk.h: * platform/nix/RenderThemeNix.h: * rendering/RenderTheme.cpp: (WebCore::RenderTheme::paintDecorations): Rename argument o, r to renderer and rect, respectively. * rendering/RenderTheme.h: (WebCore::RenderTheme::paintMenuListButtonDecorations): * rendering/RenderThemeMac.h: * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintMenuListButtonDecorations): Rename argument o, r to renderer and rect, respectively; also remove extraneous white space and substitute 1 for 1.0f. * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::paintMenuListButtonDecorations): Ditto. * rendering/RenderThemeSafari.h: * rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::paintMenuList): Rename argument o, i, r to renderer, paintInfo, and rect, respectively. (WebCore::RenderThemeWin::paintMenuListButtonDecorations): Ditto. * rendering/RenderThemeWin.h: * rendering/RenderThemeWinCE.cpp: (WebCore::RenderThemeWinCE::paintMenuList): Ditto. (WebCore::RenderThemeWinCE::paintMenuListButtonDecorations): Ditto. * rendering/RenderThemeWinCE.h: 2013-12-04 Andy Estes [iOS] Build projects with $(ARCHS_STANDARD_32_64_BIT) https://bugs.webkit.org/show_bug.cgi?id=125236 Reviewed by Sam Weinig. $(ARCHS_STANDARD_32_64_BIT) is what we want for both device and simulator builds. * Configurations/DebugRelease.xcconfig: 2013-12-04 Joseph Pecoraro Unreviewed Windows build fix attempt after r160099. * WebCore.vcxproj/WebCore.vcxproj.filters: * WebCore.vcxproj/copyForwardingHeaders.cmd: 2013-12-03 Joseph Pecoraro Web Inspector: Push Remote Inspector debugging connection management into JavaScriptCore https://bugs.webkit.org/show_bug.cgi?id=124613 Reviewed by Timothy Hatcher. Make a WebCore::Page a "Web" Remote Debuggable. * bindings/js/JSDOMGlobalObject.cpp: Disable JavaScript context inspection on JSGlobalObjects inside WebCore::Page's. * page/Page.cpp: (WebCore::Page::Page): (WebCore::Page::remoteInspectionAllowed): (WebCore::Page::setRemoteInspectionAllowed): (WebCore::Page::remoteInspectorInformationDidChange): * page/Page.h: * page/PageDebuggable.h: * page/PageDebuggable.cpp: Added. (WebCore::PageDebuggable::PageDebuggable): (WebCore::PageDebuggable::name): (WebCore::PageDebuggable::url): (WebCore::PageDebuggable::hasLocalDebugger): (WebCore::PageDebuggable::connect): (WebCore::PageDebuggable::disconnect): (WebCore::PageDebuggable::dispatchMessageFromRemoteFrontend): (WebCore::PageDebuggable::setIndicating): Make a page a "Web" debuggable. * GNUmakefile.list.am: * WebCore.exp.in: * WebCore.vcxproj/WebCore.vcxproj: * WebCore.vcxproj/WebCore.vcxproj.filters: * WebCore.xcodeproj/project.pbxproj: Misc. * inspector/InspectorClient.h: (WebCore::InspectorClient::indicate): (WebCore::InspectorClient::hideIndicate): Forward indicate methods to WebKit clients. * loader/FrameLoader.cpp: (WebCore::FrameLoader::didChangeTitle): (WebCore::FrameLoader::dispatchDidCommitLoad): Push updates when remote debuggable information like the Page's URL or title change. * ForwardingHeaders/inspector/InspectorFrontendChannel.h: * inspector/InspectorForwarding.h: Re-export Inspector::InspectorFrontendChannel as WebCore::InspectorFrontendChannel to avoid needlessly updating code all over the place. * inspector/CodeGeneratorInspectorStrings.py: * inspector/InspectorWorkerAgent.cpp: * inspector/WorkerInspectorController.cpp: * testing/Internals.cpp: Update include names. * page/ContextMenuController.cpp: (WebCore::ContextMenuController::populate): Make the "Inspect Element" context menu work correctly when there is a remote inspector instead of a local inspector. 2013-12-03 Joseph Pecoraro Web Inspector: Add missing folders and files to Xcode project https://bugs.webkit.org/show_bug.cgi?id=124802 Reviewed by Timothy Hatcher. * WebCore.xcodeproj/project.pbxproj: 2013-12-04 José Dapena Paz [texmap] Borders on rotating images are hidden/wrongly rendered with edge distance antialiasing https://bugs.webkit.org/show_bug.cgi?id=124653 Reviewed by Noam Rosenthal. Texture mapper edge distance antialiasing texture sampling was causing borders to be shaded (and made them almost disappear in some cases). This was because calculation of sampling happened on vertex shader, so the border of the texture would go to the border of the inflation area. What algorithm should do is sampling the border pixel for all the inflation area (it is the closest pixel to all the samples in inflation area), and then use the standard sampling for the other parts of the texture. No new test because this is already covered by test transforms/3d/point-mapping/3d-point-mapping.html * platform/graphics/texmap/TextureMapperShaderProgram.cpp: fix edge distance antialiasing texture sampling. 2013-12-04 László Langó Typo fix after r160074 to fix debug builds. Reviewed by Csaba Osztrogonác. * platform/text/BidiResolver.h: (WebCore::MidpointState::stopIgnoringSpaces): 2013-12-04 Zoltan Horvath Move space-ignoring inline functions into MidpointState Reviewed by David Hyatt. Since: - The following inline functions were used only with a mandatory LineMidpointState argument: startIgnoringSpaces, stopIgnoringSpaces, ensureLineBoxInsideIgnoredSpaces, deprecatedAddMidpoint. - TrailingObjects class uses these functions. Since they're inline in BreakingContextInlineHeaders.h, it's hard to separate TrailingObjects into it's own file. (blocks bug #124956) I made these functions as a member of LineMidpointState, and I also updated the call sites. No new tests, no behavior change. * platform/text/BidiResolver.h: (WebCore::MidpointState::startIgnoringSpaces): (WebCore::MidpointState::stopIgnoringSpaces): (WebCore::MidpointState::ensureLineBoxInsideIgnoredSpaces): (WebCore::MidpointState::deprecatedAddMidpoint): * rendering/RenderBlock.h: * rendering/line/BreakingContextInlineHeaders.h: (WebCore::TrailingObjects::updateMidpointsForTrailingBoxes): (WebCore::BreakingContext::handleBR): (WebCore::BreakingContext::handleOutOfFlowPositioned): (WebCore::shouldSkipWhitespaceAfterStartObject): (WebCore::BreakingContext::handleEmptyInline): (WebCore::BreakingContext::handleReplaced): (WebCore::ensureCharacterGetsLineBox): (WebCore::BreakingContext::handleText): 2013-12-03 Zoltan Horvath Remove BreakingContext's friendship from RenderBlockFlow Reviewed by David Hyatt. BreakingContext uses only 2 functions from RenderBlockFlow: insertFloatingObject/positionNewFloatOnLine. I added helper functions to LineBreaker, what is already a friend of RenderBlockFlow, so BreakingContext doesn't need to be anymore. No new tests, no behavior change. * rendering/RenderBlockFlow.h: * rendering/line/BreakingContextInlineHeaders.h: (WebCore::BreakingContext::handleFloat): * rendering/line/LineBreaker.h: (WebCore::LineBreaker::insertFloatingObject): (WebCore::LineBreaker::positionNewFloatOnLine): 2013-12-03 Ryosuke Niwa bgColor, setBgColor, alinkColor, setAlinkColor, and etc... on HTMLBodyElement are useless https://bugs.webkit.org/show_bug.cgi?id=125208 Reviewed by Antti Koivisto. Merge https://chromium.googlesource.com/chromium/blink/+/49b1eeabbbf573d5271288c66d2b566cf33a09cf These member functions of HTMLBodyElement were only used by corresponding functions in HTMLDocument since they had the Reflect option specified in HTMLBodyElement.idl. Removed the functions and directly called getAttribute and setAttribute in relevant functions in HTMLDocument. The optimization to avoid assignment is no longer needed here since we've added that optimization to setAttributeInternal a while ago. * html/HTMLBodyElement.cpp: * html/HTMLBodyElement.h: * html/HTMLDocument.cpp: (WebCore::HTMLDocument::bgColor): (WebCore::HTMLDocument::setBgColor): (WebCore::HTMLDocument::fgColor): (WebCore::HTMLDocument::setFgColor): (WebCore::HTMLDocument::alinkColor): (WebCore::HTMLDocument::setAlinkColor): (WebCore::HTMLDocument::linkColor): (WebCore::HTMLDocument::setLinkColor): (WebCore::HTMLDocument::vlinkColor): (WebCore::HTMLDocument::setVlinkColor): * html/HTMLDocument.h: 2013-12-03 Andreas Kling Add a CSSProperty::isDirectionAwareProperty() helper. Move the block of case labels for checking whether a CSS property ID is a directional property into a separate function. Also removed an outdated comment about CSS variables. Reviewed by Antti Koivisto. 2013-12-03 Ryosuke Niwa Revert the inadvertently committed change. * html/HTMLElement.idl: 2013-12-03 Ryosuke Niwa Remove nodeIsDetachedFromDocument and visualWordMovementEnabled in FrameSelection https://bugs.webkit.org/show_bug.cgi?id=125210 Reviewed by Antti Koivisto. Inspired by https://chromium.googlesource.com/chromium/blink/+/92409870f0ff8fafe31217830db0838a9e1ffb98 Removed some unused code. * editing/FrameSelection.cpp: (WebCore::FrameSelection::textWasReplaced): * editing/FrameSelection.h: * page/Settings.in: 2013-12-03 Ryosuke Niwa Potential crash in RenderView::selectionBounds and RenderView::repaintSelection https://bugs.webkit.org/show_bug.cgi?id=125207 Reviewed by Simon Fraser. Merge https://chromium.googlesource.com/chromium/blink/+/f9e6e288a5aa959f05c374806121aaf0fc52d440 Update style in FrameSelection instead of RenderView's member functions. These are the last two member functions of RenderView that updates the style. * editing/FrameSelection.cpp: (WebCore::FrameSelection::focusedOrActiveStateChanged): (WebCore::FrameSelection::bounds): * rendering/RenderView.cpp: (WebCore::RenderView::selectionBounds): (WebCore::RenderView::repaintSelection): 2013-12-03 Mark Rowe Improve the formatting in the generated Objective-C headers. Add a space between @property and any parenthesized attributes. Prefer strong over retain when specifying memory management semantics. Reviewed by Darin Adler. * bindings/objc/PublicDOMInterfaces.h: * bindings/scripts/CodeGeneratorObjC.pm: (GetPropertyAttributes): Generate strong instead of retain. Include a space before the parenthesis. * bindings/scripts/test/ObjC/DOMTestActiveDOMObject.h: * bindings/scripts/test/ObjC/DOMTestEventConstructor.h: * bindings/scripts/test/ObjC/DOMTestException.h: * bindings/scripts/test/ObjC/DOMTestInterface.h: * bindings/scripts/test/ObjC/DOMTestObj.h: * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.h: * bindings/scripts/test/ObjC/DOMTestTypedefs.h: * bindings/scripts/test/ObjC/DOMattribute.h: 2013-12-03 Alexey Proskuryakov Update WebCrypto JWK mapping to newer proposal https://bugs.webkit.org/show_bug.cgi?id=124218 Reviewed by Anders Carlsson. Tests: crypto/subtle/jwk-export-use-values.html crypto/subtle/jwk-import-use-values.html 1. "extractable" renamed to "ext" in JWK. 2. New values for "use" mapping, which can now be combined into comma separated lists, and cover all possible WebCrypto usages. * bindings/js/JSCryptoKeySerializationJWK.cpp: (WebCore::JSCryptoKeySerializationJWK::reconcileUsages): (WebCore::JSCryptoKeySerializationJWK::reconcileExtractable): (WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON): (WebCore::processUseValue): (WebCore::JSCryptoKeySerializationJWK::addJWKUseToJSON): (WebCore::JSCryptoKeySerializationJWK::serialize): 2013-12-03 Simon Fraser Remove some iOS-related documentScale code https://bugs.webkit.org/show_bug.cgi?id=125194 Reviewed by Enrica Casucci. Remove exports of nonexistent documentScale-related functions on Frame. * WebCore.exp.in: 2013-12-03 Eric Carlson Fix regression caused by r158599 https://bugs.webkit.org/show_bug.cgi?id=125188 Reviewed by Jer Noble. * html/HTMLMediaElement.cpp: (HTMLMediaElement::clearMediaPlayer): Do not clear m_player when PLUGIN_PROXY_FOR_VIDEO is enabled. 2013-12-03 Thiago de Barros Lacerda Nix Upstream: Updating WebCore files https://bugs.webkit.org/show_bug.cgi?id=124981 Reviewed by Benjamin Poulain. Just to sync our github repo files and the trunk, as part of the upstream process No new tests needed. * PlatformNix.cmake: * css/mediaControlsNix.css: (audio): (video::-webkit-media-controls): (audio::-webkit-media-controls-enclosure, video::-webkit-media-controls-enclosure): (video::-webkit-media-controls-enclosure): (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel): (video:-webkit-full-page-media): (audio:-webkit-full-page-media, video:-webkit-full-page-media): (audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button): (audio::-webkit-media-controls-overlay-play-button, video::-webkit-media-controls-overlay-play-button): (audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button): (audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container): (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display): (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline): (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider): (input[type="range"]::-webkit-media-slider-container): (input[type="range"]::-webkit-media-slider-container > div): (input[type="range"]::-webkit-media-slider-thumb): (audio::-webkit-media-controls-seek-back-button, video::-webkit-media-controls-seek-back-button): (audio::-webkit-media-controls-seek-forward-button, video::-webkit-media-controls-seek-forward-button): (audio::-webkit-media-controls-fullscreen-button, video::-webkit-media-controls-fullscreen-button): (audio::-webkit-media-controls-toggle-closed-captions-button, video::-webkit-media-controls-toggle-closed-captions-button): (audio::-webkit-media-controls-fullscreen-volume-slider, video::-webkit-media-controls-fullscreen-volume-slider): (audio::-webkit-media-controls-fullscreen-volume-min-button, video::-webkit-media-controls-fullscreen-volume-min-button): (audio::-webkit-media-controls-fullscreen-volume-max-button, video::-webkit-media-controls-fullscreen-volume-max-button): (video::-webkit-media-text-track-container): (video::cue): (video::-webkit-media-text-track-region): (video::-webkit-media-text-track-region-container): (video::-webkit-media-text-track-region-container.scrolling): (video::-webkit-media-text-track-display): (video::cue(:future)): (video::-webkit-media-text-track-container b): (video::-webkit-media-text-track-container u): (video::-webkit-media-text-track-container i): * editing/Editor.cpp: (WebCore::Editor::cut): (WebCore::Editor::copy): (WebCore::Editor::copyImage): * editing/Editor.h: * html/HTMLCanvasElement.h: * platform/Cursor.h: * platform/audio/FFTFrame.h: * platform/audio/nix/AudioBusNix.cpp: (WebCore::AudioBus::loadPlatformResource): * platform/graphics/GLContext.h: * platform/nix/CursorNix.cpp: (WebCore::Cursor::ensurePlatformCursor): * platform/nix/GamepadsNix.cpp: (WebCore::sampleGamepads): * platform/nix/RenderThemeNix.cpp: (WebCore::toIntSize): (WebCore::toNixRect): (WebCore::RenderThemeNix::platformActiveSelectionBackgroundColor): (WebCore::RenderThemeNix::platformInactiveSelectionBackgroundColor): (WebCore::RenderThemeNix::platformActiveSelectionForegroundColor): (WebCore::RenderThemeNix::platformInactiveSelectionForegroundColor): (WebCore::RenderThemeNix::platformActiveListBoxSelectionBackgroundColor): (WebCore::RenderThemeNix::platformInactiveListBoxSelectionBackgroundColor): (WebCore::RenderThemeNix::platformActiveListBoxSelectionForegroundColor): (WebCore::RenderThemeNix::platformInactiveListBoxSelectionForegroundColor): (WebCore::RenderThemeNix::platformActiveTextSearchHighlightColor): (WebCore::RenderThemeNix::platformInactiveTextSearchHighlightColor): (WebCore::RenderThemeNix::platformFocusRingColor): (WebCore::RenderThemeNix::platformTapHighlightColor): (WebCore::RenderThemeNix::paintButton): (WebCore::RenderThemeNix::paintTextField): (WebCore::RenderThemeNix::paintCheckbox): (WebCore::RenderThemeNix::setCheckboxSize): (WebCore::RenderThemeNix::paintRadio): (WebCore::RenderThemeNix::setRadioSize): (WebCore::RenderThemeNix::paintMenuList): (WebCore::RenderThemeNix::paintProgressBar): (WebCore::RenderThemeNix::paintSliderTrack): (WebCore::RenderThemeNix::paintSliderThumb): (WebCore::RenderThemeNix::paintInnerSpinButton): (WebCore::RenderThemeNix::paintMeter): (WebCore::RenderThemeNix::extraMediaControlsStyleSheet): (WebCore::RenderThemeNix::paintMediaPlayButton): (WebCore::RenderThemeNix::paintMediaMuteButton): (WebCore::RenderThemeNix::paintMediaSeekBackButton): (WebCore::RenderThemeNix::paintMediaSeekForwardButton): (WebCore::RenderThemeNix::paintMediaSliderTrack): (WebCore::RenderThemeNix::paintMediaVolumeSliderContainer): (WebCore::RenderThemeNix::paintMediaVolumeSliderTrack): (WebCore::RenderThemeNix::paintMediaRewindButton): * platform/nix/RenderThemeNix.h: * rendering/SimpleLineLayout.cpp: (WebCore::SimpleLineLayout::canUseFor): 2013-12-03 Ralph Thomas Typo: FixedPositionConstaint -> FixedPositionConstraint https://bugs.webkit.org/show_bug.cgi?id=125171 Reviewed by Simon Fraser. No new tests, no change in behavior. * page/scrolling/ScrollingConstraints.h: * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp: (WebCore::ScrollingCoordinatorCoordinatedGraphics::updateViewportConstrainedNode): * page/scrolling/mac/ScrollingCoordinatorMac.mm: (WebCore::ScrollingCoordinatorMac::updateViewportConstrainedNode): 2013-12-03 Samuel White AXPress event coordinates are always sent as (0, 0) https://bugs.webkit.org/show_bug.cgi?id=76677 Reviewed by Simon Fraser. Set the coordinates of a simulated press equal to the center of the target element when the simulated press does not have a related mouse event. Test: accessibility/press-targets-center-point.html * dom/Element.cpp: (WebCore::Element::clientRect): (WebCore::Element::screenRect): * dom/Element.h: * dom/EventDispatcher.cpp: (WebCore::EventDispatcher::dispatchSimulatedClick): * dom/MouseEvent.cpp: (WebCore::SimulatedMouseEvent::create): (WebCore::SimulatedMouseEvent::SimulatedMouseEvent): * dom/MouseEvent.h: 2013-12-03 Dean Jackson [WebGL] Implement OES texture float linear https://bugs.webkit.org/show_bug.cgi?id=124871 Reviewed by Brent Fulgham. Implement the OES_texture_float_linear extension. Generally we'd also enable OES_texture_half_float_linear at the same time, but that's blocked on webkit.org/b/110936. Test: fast/canvas/webgl/oes-texture-float-linear.html * CMakeLists.txt: Add new files. * DerivedSources.cpp: Ditto. * DerivedSources.make: Generate new file from IDL. * GNUmakefile.list.am: Add new files. * WebCore.vcxproj/WebCore.vcxproj: Ditto. * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto. * WebCore.xcodeproj/project.pbxproj: New files for OESTextureFloatLinear. * bindings/js/JSWebGLRenderingContextCustom.cpp: (WebCore::toJS): Map the new name into the appropriate type. * html/canvas/OESTextureFloatLinear.cpp: Added. This is a very simple class that's mostly empty. (WebCore::OESTextureFloatLinear::OESTextureFloatLinear): (WebCore::OESTextureFloatLinear::~OESTextureFloatLinear): (WebCore::OESTextureFloatLinear::getName): (WebCore::OESTextureFloatLinear::create): * html/canvas/OESTextureFloatLinear.h: Added. * html/canvas/OESTextureFloatLinear.idl: Added. * html/canvas/WebGLExtension.h: Declare the new name in the enum of extensions. * html/canvas/WebGLRenderingContext.cpp: (WebCore::WebGLRenderingContext::drawArrays): Call new name. (WebCore::WebGLRenderingContext::drawElements): Call new name. (WebCore::WebGLRenderingContext::getExtension): Create the new extension if asked. (WebCore::WebGLRenderingContext::checkTextureCompleteness): Renamed from handleNPOTTextures. Now checks for the type of the texture too. * html/canvas/WebGLRenderingContext.h: Member variable for new extension. * html/canvas/WebGLTexture.cpp: (WebCore::WebGLTexture::WebGLTexture): (WebCore::WebGLTexture::needToUseBlackTexture): Takes an extra parameter which indicates if it has an extension enabled. (WebCore::WebGLTexture::update): Note it is a float type when updating. * html/canvas/WebGLTexture.h: New flag to indicate float type. * platform/graphics/Extensions3D.h: New flag type. * platform/graphics/opengl/Extensions3DOpenGL.cpp: (WebCore::Extensions3DOpenGL::supportsExtension): Add a comment about the extension. 2013-12-03 Alexey Proskuryakov Support exporting private WebCrypto RSA keys https://bugs.webkit.org/show_bug.cgi?id=124483 Reviewed by Anders Carlsson. Test: crypto/subtle/rsa-export-private-key.html It might be better to have our own bignum implementation in WTF, but we currently don't, and the need for this computation is Common Crypto specific anyway. * crypto/CommonCryptoUtilities.h: * crypto/CommonCryptoUtilities.cpp: (WebCore::CCBigNum::CCBigNum): (WebCore::CCBigNum::~CCBigNum): (WebCore::CCBigNum::operator=): (WebCore::CCBigNum::data): (WebCore::CCBigNum::operator-): (WebCore::CCBigNum::operator%): (WebCore::CCBigNum::inverse): Added a minimal wrapper around CommonCrypto BigNum. * crypto/mac/CryptoKeyRSAMac.cpp: (WebCore::getPrivateKeyComponents): Compute missing parts using CCBigNum. (WebCore::CryptoKeyRSA::exportData): Implemented private key case. 2013-12-03 Ryosuke Niwa XML fragment parsing algorithm doesn't use the context element's default namespace URI https://bugs.webkit.org/show_bug.cgi?id=125132 Reviewed by Darin Adler. Always use the context element's namespace as the default namespace URI when one is not specified by xmlns. The new behavior matches that of Internet Explorer and the specified behavior in HTML5: http://www.w3.org/TR/2013/CR-html5-20130806/the-xhtml-syntax.html#parsing-xhtml-fragments "The default namespace is the namespace for which the DOM isDefaultNamespace() method on the element would return true." Test: fast/parser/fragment-parsing-in-document-without-xmlns.html * xml/parser/XMLDocumentParserLibxml2.cpp: (WebCore::XMLDocumentParser::XMLDocumentParser): 2013-12-03 Nick Diego Yamane Remove some CSS Variables leftovers https://bugs.webkit.org/show_bug.cgi?id=125167 Reviewed by Darin Adler. No new tests needed. Only removing leftover code. * css/CSSBasicShapes.cpp: * css/CSSBasicShapes.h: 2013-12-03 Myles C. Maxfield Checking second-to-last bit in address is a typo https://bugs.webkit.org/show_bug.cgi?id=125162 Reviewed by Darin Adler. After talking with the original author of this line, is was a typo to make sure that the second-to-last bit in an address is 0. Instead, we want to make sure that the address is aligned to a 4-byte boundary No behavior change, so no test is necessary * platform/graphics/cg/ImageBufferCG.cpp: (WebCore::ImageBuffer::ImageBuffer): 2013-12-03 Radu Stavila The overflow border of a relatively positioned element inside a region is not painted https://bugs.webkit.org/show_bug.cgi?id=124919 Relative positioned elements have self-painting layers that don't propagate the visual overflow so the layer's position should be used when determining the clipping rectangle for box decorations. Reviewed by Mihnea Ovidenie. Test: fast/regions/relative-borders-overflow.html * rendering/RenderFlowThread.cpp: (WebCore::RenderFlowThread::decorationsClipRectForBoxInRegion): 2013-12-03 Seokju Kwon Web Inspector: Get rid of 'hasFrontend()' in InspectorController and WorkerInspectorController https://bugs.webkit.org/show_bug.cgi?id=125135 Reviewed by Darin Adler. Remove 'hasFrontend()' from InspectorController and WorkerInspectorController as it's never called. No new tests, no behavior changes. * inspector/InspectorController.h: * inspector/WorkerInspectorController.h: 2013-12-03 Seokju Kwon Web Inspector: webViewResized() is not used anywhere in WebInspectorUI https://bugs.webkit.org/show_bug.cgi?id=125137 Reviewed by Darin Adler. Remove leftover code. No new tests, no behavior changes. * inspector/InspectorController.cpp: * inspector/InspectorController.h: * inspector/InspectorOverlay.cpp: * inspector/InspectorOverlay.h: * inspector/InspectorPageAgent.cpp: * inspector/InspectorPageAgent.h: 2013-12-03 László Langó ASSERTION FAILED: !value || (value->isPrimitiveValue()) in WebCore::StyleProperties::getLayeredShorthandValue. https://bugs.webkit.org/show_bug.cgi?id=125146 Reviewed by Darin Adler. Do not presume that |yValue| is primitive if |value| is implicit in StylePropertySerializer. An implicit y-value can become explicit if specified as a separate longhand. At the same time, its new value can be non-primitive. Backported from Blink: http://src.chromium.org/viewvc/blink?view=rev&rev=153678 Test: fast/css/webkit-mask-crash-implicit.html * css/StyleProperties.cpp: (WebCore::StyleProperties::getLayeredShorthandValue): 2013-12-03 Rob Buis Fix build break after r160007. * rendering/style/BasicShapes.cpp: (WebCore::BasicShape::canBlend): 2013-12-03 Rob Buis [css shapes] layout for new ellipse syntax https://bugs.webkit.org/show_bug.cgi?id=124621 Reviewed by Dirk Schulze. Implement support for doing layout with the new ellipse shape syntax, including basic animation support. Test: fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-000.html * rendering/shapes/Shape.cpp: (WebCore::Shape::createShape): Convert new ellipse to a layout shape. * rendering/style/BasicShapes.cpp: (WebCore::BasicShape::canBlend): Ignore ellipses with values that cannot be interpolated. (WebCore::BasicShapeEllipse::floatValueForRadiusInBox): Helper function to calculate either radiusX or radiusY, shared by clip-path and shape code paths. (WebCore::BasicShapeEllipse::path): * rendering/style/BasicShapes.h: 2013-12-03 Frédéric Wang Add an MathMLSelectElement class to implement and . Reviewed by Chris Fleizach. Tests: mathml/presentation/maction-dynamic.html mathml/presentation/maction.html mathml/presentation/semantics.html This adds a new MathMLSelectElement class to prepare the implementation of the and elements, for which only one "selected" child is visible. We now simply display the first child of the element instead of hiding the annotations and this allows to handle the use case of SVG-in-MathML as generated by Instiki when bug 124128 is fixed ; Gecko's selection algorithm will be implemented later (bug 100626). We now also rely on the @actiontype and @selection attributes to select the visible child ; It remains to deal with the user interaction (bug 85734). * CMakeLists.txt: add the new files. * GNUmakefile.list.am: ditto * Target.pri: ditto * WebCore.vcxproj/WebCore.vcxproj: ditto * WebCore.vcxproj/WebCore.vcxproj.filters: ditto * WebCore.xcodeproj/project.pbxproj: ditto * css/mathml.css: remove the CSS rule for annotation/annotation-xml. * mathml/MathMLAllInOne.cpp: add the new cpp file. * mathml/MathMLSelectElement.cpp: Added. (WebCore::MathMLSelectElement::MathMLSelectElement): (WebCore::MathMLSelectElement::create): (WebCore::MathMLSelectElement::createRenderer): (WebCore::MathMLSelectElement::childShouldCreateRenderer): (WebCore::MathMLSelectElement::finishParsingChildren): (WebCore::MathMLSelectElement::childrenChanged): (WebCore::MathMLSelectElement::attributeChanged): (WebCore::MathMLSelectElement::updateSelectedChild): basic implementation for maction, semantics, maction@actiontype and maction@selection. * mathml/MathMLSelectElement.h: Added. * mathml/mathattrs.in: add actiontype and selection attributes. * mathml/mathtags.in: set element classes for maction, semantics, annotation and annotation-xml. 2013-12-03 Thiago de Barros Lacerda Nix Upstream: Adding missing nix new files to WebCore https://bugs.webkit.org/show_bug.cgi?id=124987 Reviewed by Benjamin Poulain. No new tests needed. * PlatformNix.cmake: * platform/nix/ErrorsNix.cpp: Added. * platform/nix/ErrorsNix.h: Added. * platform/nix/FileSystemNix.cpp: Added. * platform/nix/MIMETypeRegistryNix.cpp: Added. * platform/nix/SharedTimerNix.cpp: Added. * platform/nix/TemporaryLinkStubs.cpp: Added. 2013-12-03 Tamas Gergely Correct broken build on efl port with --no-netscape-plugin-api configuration. https://bugs.webkit.org/show_bug.cgi?id=123997 Reviewed by Zoltan Herczeg. Build failed on efl port with --no-netscape-plugin-api configuration as ld did not found some methods. The configuration uses a minimal empty implementation of the class, which is now extended with empty method implementations. * plugins/PluginPackageNone.cpp: (WebCore::PluginPackage::createPackage): Returns NULL pointer. (WebCore::PluginPackage::hash): Returns 0. (WebCore::PluginPackage::equal): Returns true (equals). (WebCore::PluginPackage::compare): Returns 0 (equals). (WebCore::PluginPackage::~PluginPackage): Do nothing. 2013-12-02 Andreas Kling Avoid setting style twice for generated image content. Take care of a FIXME I added in r158097 and avoid redundant work in ImageContentData::createRenderer(). I changed the inheritance helper RenderImage::setPseudoStyle() into a new createStyleInheritingFromPseudoStyle() function instead so it can be used from both PseudoElement and ImageContentData. Reviewed by Antti Koivisto. 2013-12-02 Samuel White AX: Add AXUIElementCountForSearchPredicate parameterized attribute. https://bugs.webkit.org/show_bug.cgi?id=124561 Reviewed by Chris Fleizach. Added ability to fetch the number of elements that match a specific criteria. This will enable VoiceOver to interface with WebKit much more dynamically. We can now get an idea of how many interesting elements exist on a page, and then fetch them in chunks as needed. Test: platform/mac/accessibility/search-predicate-element-count.html * accessibility/AccessibilityObject.cpp: (WebCore::AccessibilityObject::isAccessibilityTextSearchMatch): * accessibility/AccessibilityObject.h: (WebCore::AccessibilitySearchCriteria::AccessibilitySearchCriteria): * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (accessibilitySearchCriteriaForSearchPredicateParameterizedAttribute): (-[WebAccessibilityObjectWrapper accessibilityParameterizedAttributeNames]): (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): 2013-12-02 Bem Jones-Bey [css shapes] Layout support for new circle shape syntax https://bugs.webkit.org/show_bug.cgi?id=124619 Reviewed by Dirk Schulze. Implement support for doing layout with the new circle shape syntax, inclduing basic animation support. Tests: fast/shapes/shape-outside-floats/shape-outside-floats-circle-000.html fast/shapes/shape-outside-floats/shape-outside-floats-circle-001.html fast/shapes/shape-outside-floats/shape-outside-floats-circle-002.html fast/shapes/shape-outside-floats/shape-outside-floats-circle-003.html fast/shapes/shape-outside-floats/shape-outside-floats-circle-004.html fast/shapes/shape-outside-floats/shape-outside-floats-circle-005.html * css/BasicShapeFunctions.cpp: (WebCore::floatValueForCenterCoordinate): Used by both the CSS Shapes layout code and the clip path code. * css/BasicShapeFunctions.h: * css/CSSBasicShapes.cpp: (WebCore::buildCircleString): Update to use appendLiteral, and remove call to reserveCapacity - if we find that it's actually slow when doing performance tests, we can hopefully do something smarter and less ugly than that. * css/CSSParser.cpp: (WebCore::CSSParser::parseShapeRadius): Fix a logic error that caused the radius keywords not to work properly. * rendering/shapes/Shape.cpp: (WebCore::Shape::createShape): Convert new circle to a layout shape. * rendering/style/BasicShapes.cpp: (WebCore::BasicShape::canBlend): Ignore circles with values that cannot be interpolated. (WebCore::BasicShapeCircle::floatValueForRadiusInBox): Convert circle radius keywords to a float value. (WebCore::BasicShapeCircle::path): (WebCore::BasicShapeCircle::blend): * rendering/style/BasicShapes.h: (WebCore::BasicShapeCenterCoordinate::canBlend): (WebCore::BasicShapeRadius::canBlend): 2013-12-02 Alexey Proskuryakov WebCrypto HMAC doesn't check key algorithm's hash https://bugs.webkit.org/show_bug.cgi?id=125114 Reviewed by Anders Carlsson. Test: crypto/subtle/hmac-check-algorithm.html * crypto/algorithms/CryptoAlgorithmHMAC.cpp: (WebCore::CryptoAlgorithmHMAC::keyAlgorithmMatches): Check it. 2013-12-02 Brady Eidson Possible crash in ProgressTracker::progressHeartbeatTimerFired(Timer*) https://bugs.webkit.org/show_bug.cgi?id=125110 Reviewed by Darin Adler. FrameLoader::loadProgressingStatusChanged() might be called while the Frame has a null FrameView. It’s unclear how to reproduce, but there’s no harm in a null check. * loader/FrameLoader.cpp: (WebCore::FrameLoader::loadProgressingStatusChanged): 2013-12-02 Brady Eidson Possible crash in ProgressTracker::progressHeartbeatTimerFired(Timer*) https://bugs.webkit.org/show_bug.cgi?id=125110 Reviewed by Darin Adler. It’s possible to have a null m_originatingProgressFrame when the heartbeat timer fires. On the surface this seems impossible because the only time m_originatingProgressFrame is cleared out the heartbeat timer is also stopped. But there’s likely still a race condition in multi-threaded environments. There’s no harm in null-checking m_originatingProgressFrame before accessing its loader. * loader/ProgressTracker.cpp: (WebCore::ProgressTracker::progressHeartbeatTimerFired): 2013-12-02 Brady Eidson Add more CachedPage null checks https://bugs.webkit.org/show_bug.cgi?id=125106 Reviewed by Sam Weinig. Only some functions in PageCache.cpp null-check the CachedPages in HistoryItems. Every part that manipulates the CachedPage should. * history/PageCache.cpp: (WebCore::PageCache::markPagesForVistedLinkStyleRecalc): (WebCore::PageCache::markPagesForFullStyleRecalc): (WebCore::PageCache::markPagesForDeviceScaleChanged): (WebCore::PageCache::markPagesForCaptionPreferencesChanged): 2013-12-02 Zoltan Horvath [CSS Shapes] Support inset parsing https://bugs.webkit.org/show_bug.cgi?id=124903 Reviewed by David Hyatt. In this patch I added support for inset shape parsing for CSS Shapes. Inset is defined by CSS Shapes Level 1 (http://dev.w3.org/csswg/css-shapes-1/#supported-basic-shapes). Inset is going to be used by shape-outside (bug #124905), and eventually by shape-inside. No new tests, I updated existing tests to cover the changes. * css/BasicShapeFunctions.cpp: (WebCore::valueForBasicShape): Add support for inset. (WebCore::basicShapeForValue): Add support for inset. * css/CSSBasicShapes.cpp: (WebCore::buildInsetString): Create inset css string. (WebCore::CSSBasicShapeInset::cssText): Convert inset shape to a CSS string. (WebCore::CSSBasicShapeInset::equals): Compare two inset rectangles. (WebCore::CSSBasicShapeInset::serializeResolvingVariables): Create an inset string, with CSS variables resolved. (WebCore::CSSBasicShapeInset::hasVariableReference): Determine if this inset has any CSS Variable references. * css/CSSBasicShapes.h: Add inset class. (WebCore::CSSBasicShapeInset::create): (WebCore::CSSBasicShapeInset::top): (WebCore::CSSBasicShapeInset::right): (WebCore::CSSBasicShapeInset::bottom): (WebCore::CSSBasicShapeInset::left): (WebCore::CSSBasicShapeInset::topLeftRadius): (WebCore::CSSBasicShapeInset::topRightRadius): (WebCore::CSSBasicShapeInset::bottomRightRadius): (WebCore::CSSBasicShapeInset::bottomLeftRadius): (WebCore::CSSBasicShapeInset::setTop): (WebCore::CSSBasicShapeInset::setRight): (WebCore::CSSBasicShapeInset::setBottom): (WebCore::CSSBasicShapeInset::setLeft): (WebCore::CSSBasicShapeInset::setTopLeftRadius): (WebCore::CSSBasicShapeInset::setTopRightRadius): (WebCore::CSSBasicShapeInset::setBottomRightRadius): (WebCore::CSSBasicShapeInset::setBottomLeftRadius): (WebCore::CSSBasicShapeInset::CSSBasicShapeInset): * css/CSSParser.cpp: (WebCore::completeBorderRadii): Move static function before parseInsetBorderRadius. (WebCore::CSSParser::parseInsetRoundedCorners): I added this helper function for parsing the rounded corners (WebCore::CSSParser::parseBasicShapeInset): Parse inset. (WebCore::CSSParser::parseBasicShape): Add call to parse inset. * css/CSSParser.h: * css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Add constructor for LengthSize. (WebCore::CSSPrimitiveValue::init): Initialize LengthSize. * css/CSSPrimitiveValue.h: (WebCore::CSSPrimitiveValue::create): Add support for creating PrimitiveValue from LengthSize. * css/CSSValuePool.h: (WebCore::CSSValuePool::createValue): Add support for LengthSize. * platform/LengthSize.h: (WebCore::LengthSize::blend): Add blend for LengthSize. * rendering/shapes/ShapeInsideInfo.cpp: (WebCore::ShapeInsideInfo::isEnabledFor): Keep inset disabled for shape-inside now. * rendering/style/BasicShapes.cpp: (WebCore::BasicShapeInset::path): Calculate path for an inset. (WebCore::BasicShapeInset::blend): Blend two insets. * rendering/style/BasicShapes.h: Add higher level inset. (WebCore::BasicShapeInset::create): (WebCore::BasicShapeInset::top): (WebCore::BasicShapeInset::right): (WebCore::BasicShapeInset::bottom): (WebCore::BasicShapeInset::left): (WebCore::BasicShapeInset::topLeftRadius): (WebCore::BasicShapeInset::topRightRadius): (WebCore::BasicShapeInset::bottomRightRadius): (WebCore::BasicShapeInset::bottomLeftRadius): (WebCore::BasicShapeInset::setTop): (WebCore::BasicShapeInset::setRight): (WebCore::BasicShapeInset::setBottom): (WebCore::BasicShapeInset::setLeft): (WebCore::BasicShapeInset::setTopLeftRadius): (WebCore::BasicShapeInset::setTopRightRadius): (WebCore::BasicShapeInset::setBottomRightRadius): (WebCore::BasicShapeInset::setBottomLeftRadius): (WebCore::BasicShapeInset::BasicShapeInset): 2013-12-02 Alexey Proskuryakov Support WebCrypto AES-KW https://bugs.webkit.org/show_bug.cgi?id=125105 Reviewed by Sam Weinig. Tests: crypto/subtle/aes-kw-key-manipulation.html crypto/subtle/aes-kw-wrap-unwrap-aes.html * WebCore.xcodeproj/project.pbxproj: Added new files. * crypto/CryptoAlgorithmIdentifier.h: (WebCore::CryptoAlgorithmIdentifier): Added AES-KW. It's not standardized yet, but there appears to be a consensus that it will be specified. * bindings/js/JSCryptoAlgorithmDictionary.cpp: (WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt): (WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt): (WebCore::JSCryptoAlgorithmDictionary::createParametersForSign): (WebCore::JSCryptoAlgorithmDictionary::createParametersForVerify): (WebCore::JSCryptoAlgorithmDictionary::createParametersForDigest): (WebCore::JSCryptoAlgorithmDictionary::createParametersForGenerateKey): (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveKey): (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveBits): (WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey): (WebCore::JSCryptoAlgorithmDictionary::createParametersForExportKey): Added AES-KW cases everywhere. * bindings/js/JSCryptoKeySerializationJWK.cpp: (WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm): (WebCore::JSCryptoKeySerializationJWK::keySizeIsValid): (WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON): Support importing/exporting AES-KW keys in JWK. * bindings/js/JSSubtleCryptoCustom.cpp: (WebCore::JSSubtleCrypto::importKey): (WebCore::JSSubtleCrypto::exportKey): (WebCore::JSSubtleCrypto::wrapKey): (WebCore::JSSubtleCrypto::unwrapKey): Added some accidentally forgotten std::moves. * crypto/algorithms/CryptoAlgorithmAES_KW.cpp: Added. * crypto/algorithms/CryptoAlgorithmAES_KW.h: Added. * crypto/mac/CryptoAlgorithmAES_KWMac.cpp: Added. * crypto/keys/CryptoKeyAES.cpp: (WebCore::CryptoKeyAES::CryptoKeyAES): Allow AES-KW as valid algorithm for AES keys. * crypto/mac/CryptoAlgorithmRegistryMac.cpp: (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Register AES-KW. 2013-12-02 Beth Dakin Add a setting to opt into a mode where the background extends and fixed elements don't move on rubber-band https://bugs.webkit.org/show_bug.cgi?id=124745 Reviewed by Tim Horton. New setting backgroundShouldExtendBeyondPage() will cause the tile cache to have a margin, and it will also cause fixed elements and backgrounds to stick to the viewport on scroll instead of sticking to the document. * WebCore.exp.in: * page/FrameView.cpp: (WebCore::FrameView::scrollBehaviorForFixedElements): * page/Settings.in: * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::RenderLayerBacking): 2013-12-02 Roger Zanoni [MediaStream] Use iterator-based loops instead of index-based loops https://bugs.webkit.org/show_bug.cgi?id=125021 Reviewed by Eric Carlson. Also, changing iterator variable names from iter to it and initializing an 'end' variable in each loop instead of evaluating 'collection.end()' multiple times. No new tests, covered by existing ones. * Modules/mediastream/MediaStream.cpp: (WebCore::MediaStream::cloneMediaStreamTrackVector): (WebCore::MediaStream::haveTrackWithSource): (WebCore::MediaStream::getTrackById): (WebCore::MediaStream::trackDidEnd): (WebCore::MediaStream::scheduledEventTimerFired): 2013-12-02 Rob Buis [css shapes] Parse new ellipse shape syntax https://bugs.webkit.org/show_bug.cgi?id=124620 Reviewed by Dirk Schulze. Implement parsing of the new ellipse shape syntax. This closely follows the patch for the new circle syntax (https://bugs.webkit.org/show_bug.cgi?id=124618), with some refactoring of functionality shared by both. Updated existing parsing tests to cover this. * css/BasicShapeFunctions.cpp: (WebCore::BasicShapeRadiusToCSSValue): (WebCore::valueForBasicShape): (WebCore::CSSValueToBasicShapeRadius): (WebCore::basicShapeForValue): * css/CSSBasicShapes.cpp: (WebCore::buildEllipseString): (WebCore::CSSBasicShapeEllipse::cssText): (WebCore::CSSBasicShapeEllipse::equals): (WebCore::buildDeprecatedEllipseString): (WebCore::CSSDeprecatedBasicShapeEllipse::cssText): (WebCore::CSSDeprecatedBasicShapeEllipse::equals): * css/CSSBasicShapes.h: (WebCore::CSSDeprecatedBasicShapeEllipse::create): (WebCore::CSSDeprecatedBasicShapeEllipse::centerX): (WebCore::CSSDeprecatedBasicShapeEllipse::centerY): (WebCore::CSSDeprecatedBasicShapeEllipse::radiusX): (WebCore::CSSDeprecatedBasicShapeEllipse::radiusY): (WebCore::CSSDeprecatedBasicShapeEllipse::setCenterX): (WebCore::CSSDeprecatedBasicShapeEllipse::setCenterY): (WebCore::CSSDeprecatedBasicShapeEllipse::setRadiusX): (WebCore::CSSDeprecatedBasicShapeEllipse::setRadiusY): (WebCore::CSSDeprecatedBasicShapeEllipse::CSSDeprecatedBasicShapeEllipse): * css/CSSParser.cpp: (WebCore::CSSParser::parseBasicShapeEllipse): (WebCore::CSSParser::parseDeprecatedBasicShapeEllipse): (WebCore::CSSParser::parseBasicShape): * css/CSSParser.h: * rendering/shapes/Shape.cpp: (WebCore::Shape::createShape): * rendering/style/BasicShapes.cpp: (WebCore::DeprecatedBasicShapeEllipse::path): (WebCore::DeprecatedBasicShapeEllipse::blend): (WebCore::BasicShapeEllipse::path): (WebCore::BasicShapeEllipse::blend): * rendering/style/BasicShapes.h: (WebCore::BasicShapeEllipse::centerX): (WebCore::BasicShapeEllipse::centerY): (WebCore::BasicShapeEllipse::radiusX): (WebCore::BasicShapeEllipse::radiusY): (WebCore::BasicShapeEllipse::setCenterX): (WebCore::BasicShapeEllipse::setCenterY): (WebCore::BasicShapeEllipse::setRadiusX): (WebCore::BasicShapeEllipse::setRadiusY): (WebCore::BasicShapeEllipse::BasicShapeEllipse): (WebCore::DeprecatedBasicShapeEllipse::create): (WebCore::DeprecatedBasicShapeEllipse::DeprecatedBasicShapeEllipse): 2013-12-02 Alexey Proskuryakov Add support for WebCrypto RSA-OAEP https://bugs.webkit.org/show_bug.cgi?id=125084 Build fix. * crypto/CommonCryptoUtilities.h: * crypto/mac/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp: * crypto/mac/CryptoKeyRSAMac.cpp: 2013-12-02 Brendan Long Use GenericEventQueue in TrackListBase and reduce code duplication with scheduleTrackEvent() https://bugs.webkit.org/show_bug.cgi?id=124811 Reviewed by Eric Carlson. No new tests because this is just refactoring. * html/track/TrackListBase.cpp: (TrackListBase::TrackListBase): Replace event code with a GenericEventQueue. (TrackListBase::scheduleTrackEvent): Factor out duplicate code in schedule{Add,Remove}TrackEvent functions. (TrackListBase::scheduleAddTrackEvent): Same. (TrackListBase::scheduleRemoveTrackEvent): Same. (TrackListBase::scheduleChangeEvent): Use GenericEventQueue. * html/track/TrackListBase.h: Replace event code with GenericEventQueue. 2013-12-02 Alexey Proskuryakov Add support for WebCrypto RSA-OAEP https://bugs.webkit.org/show_bug.cgi?id=125084 Build fix. * WebCore.xcodeproj/project.pbxproj: Fix an automatic merge failure by re-adding CryptoAlgorithmRsaOaepParams.h. 2013-12-02 Victor Jaquez [Gstreamer] update webkitvideosink metadata https://bugs.webkit.org/show_bug.cgi?id=125082 Reviewed by Philippe Normand. No new tests, no behavior changes. * platform/graphics/gstreamer/VideoSinkGStreamer.cpp: (webkit_video_sink_class_init): 2013-12-02 Víctor Manuel Jáquez Leal Simplify MediaPlayerPrivateGStreamerBase::createVideoSink() https://bugs.webkit.org/show_bug.cgi?id=125077 Remove the method's unused parameter. Remove the GStreamer 0.10.22 run-time validation, since we are using GStreamer 1.0 officially. Remove the creation of a spurious Bin for the video sink, since either the fpssink or the webkitsink are valid sink elements. Change fpsink to a GRefPtr. Now, createVideoSink() returns a simple pointer to the created sink element. Reviewed by Philippe Normand. No new tests, no behavior changes. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: (WebCore::MediaPlayerPrivateGStreamerBase::createVideoSink): (WebCore::MediaPlayerPrivateGStreamerBase::decodedFrameCount): (WebCore::MediaPlayerPrivateGStreamerBase::droppedFrameCount): * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: 2013-12-02 Alexey Proskuryakov Add support for WebCrypto RSA-OAEP https://bugs.webkit.org/show_bug.cgi?id=125084 Reviewed by Sam Weinig. Tests: crypto/subtle/rsa-oaep-key-manipulation.html crypto/subtle/rsa-oaep-plaintext-length.html crypto/subtle/rsa-oaep-wrap-unwrap-aes.html * WebCore.xcodeproj/project.pbxproj: Added new files. * bindings/js/JSCryptoAlgorithmDictionary.cpp: (WebCore::createRsaOaepParams): (WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt): (WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt): (WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey): Added RSA-OAEP parameters. * bindings/js/JSCryptoKeySerializationJWK.cpp: (WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm): (WebCore::JSCryptoKeySerializationJWK::keySizeIsValid): (WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON): Support RSA-OAEP in JWK. It is more limited than general WebCrypto, as JWK only allows SHA-1 as hash. * crypto/CommonCryptoUtilities.cpp: Added. (WebCore::getCommonCryptoDigestAlgorithm): * crypto/CommonCryptoUtilities.h: Added. Extracted some shared code and forward declarations for CommonCrypto. * crypto/CryptoAlgorithmParameters.h: (WebCore::CryptoAlgorithmParameters::Class): * crypto/parameters/CryptoAlgorithmRsaOaepParams.h: Added. Added RsaOaepParams. * crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp: Added. * crypto/algorithms/CryptoAlgorithmRSA_OAEP.h: Added. * crypto/mac/CryptoAlgorithmRSA_OAEPMac.cpp: Added. * crypto/mac/CryptoAlgorithmHMACMac.cpp: (WebCore::getCommonCryptoHMACAlgorithm): (WebCore::CryptoAlgorithmHMAC::platformSign): (WebCore::CryptoAlgorithmHMAC::platformVerify): * crypto/mac/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp: * crypto/mac/CryptoKeyMac.cpp: * crypto/mac/CryptoKeyRSAMac.cpp: Use CommonCryptoUtilities. * crypto/mac/CryptoAlgorithmRegistryMac.cpp: (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Register RSA-OAEP. 2013-12-02 Andres Gomez [GTK] Fails to build with freetype 2.5.1 https://bugs.webkit.org/show_bug.cgi?id=125074 Reviewed by Carlos Garcia Campos. FreeType specifies a canonical way of including their own headers. Now, we are following this recommendation so the compilation won't be broken again due to an upgrade in FeeType's including paths. * platform/graphics/freetype/FontPlatformDataFreeType.cpp: * platform/graphics/freetype/SimpleFontDataFreeType.cpp: * platform/graphics/harfbuzz/HarfBuzzFaceCairo.cpp: 2013-12-02 Chris Fleizach AX: Crash at WebCore::commonTreeScope https://bugs.webkit.org/show_bug.cgi?id=125042 Reviewed by Mario Sanchez Prada. When an AX text marker that references a node in a detached document is used to create a text marker range, a crash occurs because the method to determine commonTreeScopes does not account for when there are no common tree scopes. Test: platform/mac/accessibility/ordered-textmarker-crash.html * accessibility/AccessibilityObject.cpp: (WebCore::AccessibilityObject::visiblePositionRangeForUnorderedPositions): * dom/TreeScope.cpp: (WebCore::commonTreeScope): 2013-12-02 Nick Diego Yamane Fix a crash in the webaudio source provider when the audio track is going away. https://bugs.webkit.org/show_bug.cgi?id=124975 Reviewed by Philippe Normand. Merged https://chromium.googlesource.com/chromium/blink/+/b21838b32bf11b1a972dfc449ddde71115490c23 Before this patch, it was hitting a use-after-free crash when the audio track in the media stream is going away and the webaudio mediastreamsourcenode is still running. * Modules/webaudio/AudioContext.cpp: (WebCore::AudioContext::createMediaStreamSource): Passing audio track pointer to MediaStreamAudioSourceNode constructor. * Modules/webaudio/MediaStreamAudioSourceNode.cpp: (WebCore::MediaStreamAudioSourceNode::create): (WebCore::MediaStreamAudioSourceNode::MediaStreamAudioSourceNode): * Modules/webaudio/MediaStreamAudioSourceNode.h: Added MediaStreamTrack class variable and change the constructor to receive it as parameter. 2013-12-02 Andrzej Badowski [ATK] Support active state for listbox elements. https://bugs.webkit.org/show_bug.cgi?id=125009 Reviewed by Chris Fleizach. Added support for ATK_STATE_ACTIVE for listbox elements. * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (setAtkStateSetFromCoreObject): 2013-12-02 Seokju Kwon Web Inspector: Remove unused functions from InspectorAgent https://bugs.webkit.org/show_bug.cgi?id=125061 Reviewed by Antoine Quint. Get rid of unused functions, redundant inclusion and forward declaration. No new tests, no behavior changes. * inspector/InspectorAgent.cpp: * inspector/InspectorAgent.h: 2013-12-02 Tibor Meszaros Fix build warning in EventHandler.cpp https://bugs.webkit.org/show_bug.cgi?id=125010 Reviewed by Csaba Osztrogonác. * page/EventHandler.cpp: (WebCore::EventHandler::eventInvertsTabsToLinksClientCallResult): 2013-12-02 Attila Dusnoki HTML5 required attribute validation messages implemented. https://bugs.webkit.org/show_bug.cgi?id=125003 Reviewed by Gyuyoung Kim. * platform/efl/LocalizedStringsEfl.cpp: (WebCore::validationMessagePatternMismatchText): (WebCore::validationMessageValueMissingText): (WebCore::validationMessageValueMissingForCheckboxText): (WebCore::validationMessageValueMissingForFileText): (WebCore::validationMessageValueMissingForMultipleFileText): (WebCore::validationMessageValueMissingForRadioText): (WebCore::validationMessageValueMissingForSelectText): (WebCore::validationMessageBadInputForNumberText): 2013-12-01 Andreas Kling SVG: Intersection/enclosure checks should use RenderElement. Make RenderSVGModelObject's checkIntersection() and checkEnclosure() take RenderElement* instead of RenderObject*. They are only ever called with SVGElement's renderers. Reviewed by Sam Weinig. 2013-12-01 Andreas Kling Remove unreachable labels for -webkit-margin-*-collapse properties. The following properties are implemented in DeprecatedStyleBuilder and should not have case labels in the applyProperty() switch: -webkit-margin-before-collapse -webkit-margin-top-collapse -webkit-margin-after-collapse -webkit-margin-bottom-collapse This seems counter-intuitive, but they are actually *not* like other directional properties. In this case, before/after are only aliases for top/bottom, and do not depend on writing-mode or text-direction. See also r68561, where the aliases were originally added. Reviewed by Anders Carlsson. 2013-12-01 Andreas Kling CSSFunctionValue constructors should return PassRef. Make CSSFunctionValue::create() helpers return PassRef instead of PassRefPtr since they will never return null. Reviewed by Anders Carlsson. 2013-12-01 Commit Queue Unreviewed, rolling out r159764. http://trac.webkit.org/changeset/159764 https://bugs.webkit.org/show_bug.cgi?id=125055 appears to hurt html5-full-render times (Requested by kling on #webkit). * html/parser/HTMLConstructionSite.cpp: (WebCore::HTMLConstructionSite::insertTextNode): * html/parser/HTMLConstructionSite.h: 2013-12-01 Andreas Kling Make more computed style helpers return PassRef. Reduce branchiness in computed style code by making more of the file-local helpers return PassRef instead of PassRefPtr. Reviewed by Anders Carlsson. 2013-11-30 Ryuan Choi [EFL] Implement scrollbarThickness for opaque scrollbar https://bugs.webkit.org/show_bug.cgi?id=125034 Reviewed by Gyuyoung Kim. Implemented scrollbarThickness to support opaque scrollbar. Now, edj can decide whether to support opaque scrollbar by adding scrollbar.thickness. In addition, added OVERRIDE/FINAL keyword and removed unnecessary destructor in ScrollbarThemeEfl.cpp. No new tests, no behavior changes with default theme. * platform/efl/RenderThemeEfl.cpp: (WebCore::RenderThemeEfl::loadTheme): Update thickness of scrollbar when theme was loaded. * platform/efl/ScrollbarThemeEfl.cpp: * platform/efl/ScrollbarThemeEfl.h: (WebCore::ScrollbarThemeEfl::setScrollbarThickness): (WebCore::ScrollbarThemeEfl::scrollbarThickness): (WebCore::ScrollbarThemeEfl::registerScrollbar): (WebCore::ScrollbarThemeEfl::unregisterScrollbar): 2013-11-29 Tamas Gergely Remove Symbian specific code. https://bugs.webkit.org/show_bug.cgi?id=124939 Reviewed by Zoltan Herczeg. Symbian is not supported, remove leftover code. * plugins/npapi.h: 2013-11-28 Gyuyoung Kim Rename InlineIterator::m_obj and make it private https://bugs.webkit.org/show_bug.cgi?id=124837 Reviewed by Antti Koivisto. InlineIterator has been exported m_obj as public though there is a getter function. Besides *object* name isn't ambigious. So, changed it with m_renderer and renderer(). Additionally, setRenderer() is added as well. No new tests, no behavior changes. * rendering/InlineIterator.h: (WebCore::InlineIterator::setObject): (WebCore::operator==): (WebCore::operator!=): (WebCore::InlineBidiResolver::appendRun): * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlockFlow::appendRunsForObject): (WebCore::constructBidiRunsForLine): (WebCore::RenderBlockFlow::createLineBoxesFromBidiRuns): (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange): (WebCore::RenderBlockFlow::matchedEndLine): * rendering/line/BreakingContextInlineHeaders.h: (WebCore::TrailingObjects::updateMidpointsForTrailingBoxes): (WebCore::BreakingContext::BreakingContext): (WebCore::BreakingContext::currentObject): (WebCore::BreakingContext::initializeForCurrentObject): (WebCore::BreakingContext::handleBR): (WebCore::BreakingContext::handleOutOfFlowPositioned): (WebCore::BreakingContext::handleFloat): (WebCore::BreakingContext::handleEmptyInline): (WebCore::BreakingContext::handleReplaced): (WebCore::iteratorIsBeyondEndOfRenderCombineText): (WebCore::ensureCharacterGetsLineBox): (WebCore::BreakingContext::handleText): (WebCore::BreakingContext::canBreakAtThisPosition): (WebCore::BreakingContext::commitAndUpdateLineBreakIfNeeded): (WebCore::checkMidpoints): (WebCore::BreakingContext::handleEndOfLine): * rendering/line/LineBreaker.cpp: (WebCore::LineBreaker::skipTrailingWhitespace): (WebCore::LineBreaker::skipLeadingWhitespace): * rendering/line/LineInlineHeaders.h: (WebCore::skipNonBreakingSpace): (WebCore::requiresLineBox): 2013-11-28 Antti Koivisto Rename StylePropertySet to StyleProperties https://bugs.webkit.org/show_bug.cgi?id=124990 Reviewed by Andreas Kling. "Set" does not add useful information here. Use less clunky plural name. 2013-11-28 Thiago de Barros Lacerda Nix Upstream: Adding EditorNix to WebCore https://bugs.webkit.org/show_bug.cgi?id=124984 Reviewed by Csaba Osztrogonác. No new tests needed. * PlatformNix.cmake: * editing/nix/EditorNix.cpp: Added. 2013-11-28 Zoltan Horvath [Win] Update vcxproj.filters, since LineInfo.h and LineLayoutState.h have been moved to rendering/line https://bugs.webkit.org/show_bug.cgi?id=124959 Reviewed by Brent Fulgham. Update WebCore.vcxproj.filters, since LineInfo.h (r155628) and LineLayoutState.h (158121) have been moved to rendering/line. No new tests, no behavior change. * WebCore.vcxproj/WebCore.vcxproj.filters: 2013-11-28 Laszlo Vidacs RenderTableSection Blink merge asserting https://bugs.webkit.org/show_bug.cgi?id=124857 Reviewed by Csaba Osztrogonác. Use border spacing at the end of all sections. * rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::calcRowLogicalHeight): 2013-11-28 Antti Koivisto Remove feature: CSS variables https://bugs.webkit.org/show_bug.cgi?id=114119 Reviewed by Andreas Kling. The feature is unmaintained and it is getting in the way of refactoring. Code quality is not up to WebKit standards either. * Configurations/FeatureDefines.xcconfig: * GNUmakefile.list.am: * WebCore.xcodeproj/project.pbxproj: * css/CSSBasicShapes.cpp: * css/CSSBasicShapes.h: * css/CSSCalculationValue.cpp: (WebCore::unitCategory): (WebCore::hasDoubleValue): (WebCore::CSSCalcPrimitiveValue::toCalcValue): (WebCore::CSSCalcPrimitiveValue::computeLengthPx): (WebCore::determineCategory): (WebCore::CSSCalcBinaryOperation::primitiveType): * css/CSSCalculationValue.h: * css/CSSComputedStyleDeclaration.cpp: (WebCore::ComputedStyleExtractor::propertyValue): * css/CSSGrammar.y.in: * css/CSSParser.cpp: (WebCore::CSSParserContext::CSSParserContext): (WebCore::operator==): (WebCore::filterProperties): (WebCore::CSSParser::createStylePropertySet): (WebCore::CSSParser::addProperty): (WebCore::CSSParser::validCalculationUnit): (WebCore::CSSParser::validUnit): (WebCore::CSSParser::createPrimitiveNumericValue): (WebCore::CSSParser::parseValidPrimitive): (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseReflect): (WebCore::CSSParser::detectDashToken): (WebCore::CSSParser::realLex): * css/CSSParser.h: * css/CSSParserMode.h: * css/CSSParserValues.cpp: (WebCore::CSSParserValue::createCSSValue): * css/CSSParserValues.h: * css/CSSPrimitiveValue.cpp: (WebCore::isValidCSSUnitTypeForDoubleConversion): (WebCore::CSSPrimitiveValue::primitiveType): (WebCore::CSSPrimitiveValue::cleanup): (WebCore::CSSPrimitiveValue::getStringValue): (WebCore::CSSPrimitiveValue::customCSSText): (WebCore::CSSPrimitiveValue::equals): * css/CSSPrimitiveValue.h: * css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::convertToLength): * css/CSSProperty.cpp: * css/CSSProperty.h: (WebCore::CSSProperty::CSSProperty): * css/CSSReflectValue.cpp: * css/CSSReflectValue.h: * css/CSSValue.cpp: (WebCore::CSSValue::equals): (WebCore::CSSValue::cssText): (WebCore::CSSValue::destroy): * css/CSSValue.h: (WebCore::CSSValue::setCssText): * css/CSSValueList.cpp: * css/CSSValueList.h: * css/CSSVariableValue.h: Removed. * css/Pair.h: * css/Rect.h: * css/StylePropertySet.cpp: (WebCore::StylePropertySet::asText): (WebCore::StylePropertySet::PropertyReference::cssName): * css/StyleResolver.cpp: (WebCore::StyleResolver::styleForPage): (WebCore::StyleResolver::applyProperties): (WebCore::StyleResolver::applyMatchedProperties): (WebCore::StyleResolver::applyProperty): * css/StyleResolver.h: * css/WebKitCSSTransformValue.cpp: * css/WebKitCSSTransformValue.h: (WebCore::WebKitCSSTransformValue::equals): * css/makeprop.pl: * page/Settings.cpp: (WebCore::Settings::Settings): * page/Settings.h: * rendering/style/RenderStyle.h: * rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator==): * rendering/style/StyleRareInheritedData.h: * rendering/style/StyleVariableData.h: Removed. * testing/InternalSettings.cpp: (WebCore::InternalSettings::Backup::Backup): (WebCore::InternalSettings::Backup::restoreTo): * testing/InternalSettings.h: * testing/InternalSettings.idl: 2013-11-28 Thiago de Barros Lacerda Updating RTCPeerConnectionHandlerMock after r159769 https://bugs.webkit.org/show_bug.cgi?id=124947 Reviewed by Philippe Normand. Adding its create function back, in order to run RTCPeerConnection LayoutTests. No new tests needed. * platform/mock/RTCPeerConnectionHandlerMock.cpp: (WebCore::RTCPeerConnectionHandlerMock::create): * platform/mock/RTCPeerConnectionHandlerMock.h: 2013-11-27 Gustavo Noronha Silva [GTK] Support custom types for drag and drop data https://bugs.webkit.org/show_bug.cgi?id=124659 Reviewed by Martin Robinson. Covered by fast/events/drag-customData.html. * platform/gtk/DataObjectGtk.cpp: (WebCore::DataObjectGtk::unknownTypes): returns a hash map with all custom types set. (WebCore::DataObjectGtk::clearAllExceptFilenames): clear custom types. * platform/gtk/DataObjectGtk.h: (WebCore::DataObjectGtk::hasUnknownTypeData): returns whether custom types are set. (WebCore::DataObjectGtk::unknownTypeData): returns the data for a custom type. (WebCore::DataObjectGtk::setUnknownTypeData): sets the data for a custom type. * platform/gtk/PasteboardGtk.cpp: (WebCore::Pasteboard::writeString): handle unknown types as custom. (WebCore::Pasteboard::writePasteboard): ditto. (WebCore::Pasteboard::hasData): also check for custom types. (WebCore::Pasteboard::types): also obtain the list of custom types. (WebCore::Pasteboard::readString): handle unknown types as custom. * platform/gtk/PasteboardHelper.cpp: (WebCore::initGdkAtoms): new unknown atom. (WebCore::PasteboardHelper::PasteboardHelper): add custom type to the list of targets. (WebCore::PasteboardHelper::fillSelectionData): turns any custom types' data into a GVariant, which is in turn serialized to a single string for GtkSelectionData to hold. (WebCore::PasteboardHelper::targetListForDataObject): add custom data to the target list if any is set. (WebCore::PasteboardHelper::fillDataObjectFromDropData): retrieve the custom types and their data from the serialized GVariant string held by GtkSelectionData. (WebCore::PasteboardHelper::dropAtomsForContext): handle custom types. 2013-11-27 Eric Carlson Allow the QuickTime plug-in to be replaced by script in an isolated word https://bugs.webkit.org/show_bug.cgi?id=124900 Reviewed by Dean Jackson. Test: plugins/quicktime-plugin-replacement.html * CMakeLists.txt: Add new Modules path. * DerivedSources.make: Add new files. * GNUmakefile.am: Add new Modules path. * GNUmakefile.list.am: Add new header. * WebCore.vcxproj/WebCore.vcxproj: Add new header. * WebCore.vcxproj/WebCoreCommon.props: Add new Modules path. * WebCore.xcodeproj/project.pbxproj: Add new files. * Modules/plugins: Added. * Modules/plugins/PluginReplacement.h: Added. Defines the interface for a plug-in replacement. Create a replacement for the QuickTime plug-in. * Modules/plugins/QuickTimePluginReplacement.cpp: Added. * Modules/plugins/QuickTimePluginReplacement.css: Added. * Modules/plugins/QuickTimePluginReplacement.h: Added. * Modules/plugins/QuickTimePluginReplacement.idl: Added. * Modules/plugins/QuickTimePluginReplacement.js: Added. Allow plug-in replacement to be enabled at runtime. * bindings/generic/RuntimeEnabledFeatures.h: (WebCore::RuntimeEnabledFeatures::setPluginReplacementEnabled): (WebCore::RuntimeEnabledFeatures::pluginReplacementEnabled): * bindings/js/JSDOMBinding.h: (WebCore::toJS): Add toJS(... const String& ...). * bindings/js/JSPluginElementFunctions.cpp: (WebCore::pluginScriptObject): Give a plug-in replacement a first shot at defining the script interface. * html/HTMLEmbedElement.cpp: (WebCore::HTMLEmbedElement::updateWidget): Call base class requestObject. * html/HTMLMediaElement.cpp: (HTMLMediaElement::fileSize): New, passthrough to media engine. * html/HTMLMediaElement.h: * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::updateWidget): Call base class requestObject. Moved some logic that was previously used only for creating a plug-in snapshot to the base class so it can be shared by a plug-in replacement. * html/HTMLPlugInElement.cpp: (WebCore::HTMLPlugInElement::HTMLPlugInElement): Initialize timer used to swap renderers. (WebCore::HTMLPlugInElement::createRenderer): Allow plug-in replacement to create the renderer. (WebCore::HTMLPlugInElement::swapRendererTimerFired): Create a shadow root. (WebCore::HTMLPlugInElement::setDisplayState): Set the new state, prime the swap renderer timer if necessary. (WebCore::HTMLPlugInElement::didAddUserAgentShadowRoot): Tell the plug-in replacement to install itself in the new shadow DOM. (WebCore::registeredPluginReplacements): Return vector of all registered plug-in replacements. (WebCore::registerPluginReplacement): Add a plug-in replacement. (WebCore::pluginReplacementForType): Find a plug-in replacement for a MIME type. (WebCore::HTMLPlugInElement::requestObject): If there is a plug-in replacement for the MIME type, create it and set the display state. (WebCore::HTMLPlugInElement::scriptObjectForPluginReplacement): Return the script object for the current plug-in replacement, if any. * html/HTMLPlugInElement.h: Move some plug-in snapshot code into the base class. * html/HTMLPlugInImageElement.cpp: (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): No need to initialize timer. (WebCore::HTMLPlugInImageElement::setDisplayState): Call base class. (WebCore::HTMLPlugInImageElement::createRenderer): Ditto. (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot): Ditto. (WebCore::HTMLPlugInImageElement::userDidClickSnapshot): Remove unnecessary class name. (WebCore::HTMLPlugInImageElement::requestObject): New. * html/HTMLPlugInImageElement.h: * html/HTMLVideoElement.h: Make createRenderer public so the QuickTime plug-in replacement can call it. * platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::fileSize): New. * platform/graphics/MediaPlayer.h: * platform/graphics/MediaPlayerPrivate.h: * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp: (WebCore::MediaPlayerPrivateAVFoundation::extraMemoryCost): totalBytes returns an unsigned long long. * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h: (WebCore::MediaPlayerPrivateAVFoundation::fileSize): * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp: (WebCore::MediaPlayerPrivateAVFoundationCF::totalBytes): Return an unsigned long long. * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h: * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h: * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm: (WebCore::MediaPlayerPrivateAVFoundationObjC::totalBytes): Ditto. * testing/InternalSettings.cpp: (WebCore::InternalSettings::Backup::Backup): Backup the plug-in replacement runtime setting. (WebCore::InternalSettings::Backup::restoreTo): Restore it. (WebCore::InternalSettings::setPluginReplacementEnabled): Set it. * testing/InternalSettings.h: * testing/InternalSettings.idl: 2013-11-27 Thiago de Barros Lacerda Adding MediaConstraintsMock class https://bugs.webkit.org/show_bug.cgi?id=124902 Reviewed by Eric Carlson. Validate constraints used in RTCPeerConnection LayoutTests Existing test was updated. * CMakeLists.txt: * GNUmakefile.list.am: * platform/mock/MediaConstraintsMock.cpp: Added. * platform/mock/MediaConstraintsMock.h: Added. * platform/mock/MockMediaStreamCenter.cpp: (WebCore::MockMediaStreamCenter::validateRequestConstraints): Now using MediaConstraintsMock (WebCore::MockMediaStreamCenter::createMediaStream): Ditto. * platform/mock/RTCPeerConnectionHandlerMock.cpp: (WebCore::RTCPeerConnectionHandlerMock::initialize): Ditto. 2013-11-27 Bear Travis [CSS Shapes] Shape-Inside Should Default to 'auto' https://bugs.webkit.org/show_bug.cgi?id=124851 Reviewed by Alexandru Chiculita. The current shape-inside specification has the property default to the 'auto' value, not 'outside-shape'. Updated tests are under fast/shapes. * rendering/style/RenderStyle.cpp: * rendering/style/RenderStyle.h: 2013-11-27 Hans Muller [CSS Shapes] shape-inside rectangle layout can fail https://bugs.webkit.org/show_bug.cgi?id=124784 Reviewed by Andreas Kling. Apply LayoutUnit::fromFloatCeil() consistently in RectangleShape::firstIncludedIntervalLogicalTop(). Test: fast/shapes/shape-inside/shape-inside-subpixel-rectangle-top.html * rendering/shapes/RectangleShape.cpp: (WebCore::RectangleShape::firstIncludedIntervalLogicalTop): 2013-11-27 Nick Diego Yamane Remove Qt-specific .qrc files https://bugs.webkit.org/show_bug.cgi?id=124944 Reviewed by Andreas Kling. No new tests needed. * WebCore.qrc: Removed. 2013-11-27 Xabier Rodriguez Calvar [GStreamer] Invalid command line error when visiting www.chessbase.com https://bugs.webkit.org/show_bug.cgi?id=124715 Reviewed by Philippe Normand. We were not handling the HTTP errors in the WebKit GStreamer source and therefore the 404 error page was being 'decoded'. As no decoder could be found (for obvious reasons), playback failed, but it should be failing for the source not being found instead of the decoding problem. Test: http/tests/media/video-error-does-not-exist.html * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: (StreamingClient::handleResponseReceived): Handle HTTP errors in the source and raise a GStreamer error to the pipeline. 2013-11-14 Sergio Villar Senin [CSS Grid Layout] Fix positioning of grid items with margins https://bugs.webkit.org/show_bug.cgi?id=124345 Reviewed by David Hyatt. From Blink r157925 and r158041 by Test: fast/css-grid-layout/grid-item-margin-resolution.html Adds margin start/before to the positions of grid items (removing several FIXME's in the current code). This means calling findChildLogicalPosition() after the layout in order to have the right values for the margins. In order to match flexbox and author's intents we're also including the margins of grid items in the intrinsic size of the grid. That's why flexbox's marginLogicalPositionForChild() is moved up to RenderBlock in order to share it with RenderGrid. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::marginIntrinsicLogicalWidthForChild): Moved from RenderFlexibleBox::marginLogicalWidthForChild(). * rendering/RenderBlock.h: * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::computeIntrinsicLogicalWidths): * rendering/RenderGrid.cpp: (WebCore::RenderGrid::computePreferredTrackWidth): (WebCore::RenderGrid::layoutGridItems): (WebCore::RenderGrid::findChildLogicalPosition): 2013-11-26 Sergio Villar Senin [CSS Grid Layout] Support grid-definition-{rows|columns} repeat() syntax https://bugs.webkit.org/show_bug.cgi?id=103312 Reviewed by Andreas Kling. Added support for the repeat() syntax inside grid-definition-{rows|columns} by just adding the repeated values to our list of column|row definitions. The parsing of was refactored in a new function as it's used now in three different places. The parsing was also refactored to share it with the repeat() parsing. Test: fast/css-grid-layout/grid-element-repeat-get-set.html * css/CSSParser.cpp: (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseGridTrackNames): (WebCore::CSSParser::parseGridTrackList): (WebCore::CSSParser::parseGridTrackRepeatFunction): (WebCore::CSSParser::parseGridTrackSize): * css/CSSParser.h: 2013-11-26 Marcelo Lira Nix upstreaming - Adding build files and supporting scripts https://bugs.webkit.org/show_bug.cgi?id=118367 Reviewed by Ryosuke Niwa. No new tests needed. * CMakeLists.txt: * PlatformNix.cmake: Added. 2013-11-26 Tim Horton Don't parent the TileController root layer in two places https://bugs.webkit.org/show_bug.cgi?id=124873 Reviewed by Brent Fulgham. * platform/graphics/ca/mac/TileController.mm: (WebCore::TileController::TileController): The TileController's layer is already parented by callers of TileController::create, and in a special way. TileController shouldn't parent itself, anyway... 2013-11-26 Nick Diego Yamane [MediaStream API] HTMLMediaElement should be able to use MediaStream as source https://bugs.webkit.org/show_bug.cgi?id=121943 Reviewed by Eric Carlson. Implement MediaStream direct assignment to Media Elements using the new 'srcObject' attribute: http://www.w3.org/TR/mediacapture-streams/#direct-assignment-to-media-elements Test: fast/mediastream/MediaStream-MediaElement-srcObject.html * CMakeLists.txt: Added new HTMLMediaElementMediaStream.h and .cpp to cmake build. * DerivedSources.make: Added HTMLMediaElementMediaStream.idl. * GNUmakefile.list.am: Added new HTMLMediaElementMediaStream* to autotools build. * WebCore.xcodeproj/project.pbxproj: Added new files. * Modules/mediastream/HTMLMediaElementMediaStream.cpp: Added. (WebCore::HTMLMediaElementMediaStream::srcObject): implements srcObject getter. (WebCore::HTMLMediaElementMediaStream::setSrcObject): implements srcObject setter. * Modules/mediastream/HTMLMediaElementMediaStream.h: Added. * Modules/mediastream/HTMLMediaElementMediaStream.idl: Added. * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::setSrcObject): This is an initial implementation, and is still incomplete, that will be addressed in a separate bug: https://webkit.org/b/124896 * html/HTMLMediaElement.h: Added m_mediaStreamSrcObject class variable and its corresponding getter. 2013-11-26 Andreas Kling Use child iterator to find operators in RenderMathMLRow::layout(). Replace manual children walk with childrenOfType. Minor update to fix build. Reviewed by Martin Robinson. 2013-11-26 Andreas Kling RenderObject: Inline isBody() and isHR(). Together these account for ~0.3% of samples on HTML5-8266. Almost all of it is call overhead. Reviewed by Anders Carlsson. 2013-11-26 Bear Travis [CSS Shapes] Layout using [ || ] value https://bugs.webkit.org/show_bug.cgi?id=124428 Reviewed by David Hyatt. When a box value is supplied, use it to size and position the shape. Otherwise, use a default value (content-box for shape-inside, margin-box for shape-outside). This patch extends the sizing and positioning code used for the box patch (Bug 124227) to also apply to shapes. With this patch, we also no longer use the box-sizing property to size and position shapes. Tests: fast/shapes/shape-outside-floats/shape-outside-shape-boxes-001.html fast/shapes/shape-outside-floats/shape-outside-shape-boxes-002.html fast/shapes/shape-outside-floats/shape-outside-shape-boxes-003.html * css/CSSComputedStyleDeclaration.cpp: (WebCore::ComputedStyleExtractor::propertyValue): Adjust for ShapeValues storing BasicShape::ReferenceBox as their box value, rather than a CSSValueID. * css/DeprecatedStyleBuilder.cpp: (WebCore::ApplyPropertyShape::applyValue): Ditto. * rendering/shapes/ShapeInfo.h: (WebCore::ShapeInfo::setShapeSize): Adjust for BasicShapes with reference boxes as well as plain box values. Also, remove old box-sizing code. (WebCore::ShapeInfo::logicalTopOffset): Ditto. (WebCore::ShapeInfo::logicalLeftOffset): Ditto. * rendering/shapes/ShapeInsideInfo.h: * rendering/shapes/ShapeOutsideInfo.h: * rendering/style/ShapeValue.h: (WebCore::ShapeValue::createBoxValue): Adjust for boxes being stored as BasicShape::ReferenceBoxes. (WebCore::ShapeValue::box): Ditto. (WebCore::ShapeValue::ShapeValue): Ditto. 2013-11-26 Brian J. Burg ImageBuffer::create should return a std::unique_ptr instead of OwnPtr. https://bugs.webkit.org/show_bug.cgi?id=124822 Reviewed by Andreas Kling. Replace all uses of OwnPtr and PassOwnPtr with std::unique_ptr. Replace calls to OwnPtr::clear() and OwnPtr::release() with reset() and std::move(). Remove unnecessary includes. No new tests. This is a mechanical refactoring. * css/CSSFilterImageValue.cpp: (WebCore::CSSFilterImageValue::image): * html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::setSurfaceSize): * html/HTMLCanvasElement.h: * html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::createCompositingBuffer): (WebCore::CanvasRenderingContext2D::fullCanvasCompositedDrawImage): (WebCore::CanvasRenderingContext2D::fullCanvasCompositedFill): (WebCore::CanvasRenderingContext2D::drawTextInternal): * html/canvas/CanvasRenderingContext2D.h: * html/canvas/WebGLRenderingContext.cpp: (WebCore::WebGLRenderingContext::LRUImageBufferCache::LRUImageBufferCache): (WebCore::WebGLRenderingContext::LRUImageBufferCache::imageBuffer): * html/canvas/WebGLRenderingContext.h: * html/shadow/MediaControlElements.cpp: (WebCore::MediaControlTextTrackContainerElement::createTextTrackRepresentationImage): * page/Frame.cpp: (WebCore::Frame::nodeImage): (WebCore::Frame::dragImageForSelection): * platform/graphics/BitmapImage.cpp: (WebCore::BitmapImage::drawPattern): * platform/graphics/CrossfadeGeneratedImage.cpp: (WebCore::CrossfadeGeneratedImage::drawPattern): * platform/graphics/GradientImage.h: * platform/graphics/GraphicsContext.cpp: (WebCore::GraphicsContext::createCompatibleBuffer): * platform/graphics/GraphicsContext.h: * platform/graphics/ImageBuffer.cpp: (WebCore::ImageBuffer::createCompatibleBuffer): * platform/graphics/ImageBuffer.h: (WebCore::ImageBuffer::create): * platform/graphics/ShadowBlur.cpp: * platform/graphics/cg/ImageBufferCG.cpp: (WebCore::ImageBuffer::putByteArray): * platform/graphics/cg/PDFDocumentImage.h: * platform/graphics/filters/FETile.cpp: (WebCore::FETile::platformApplySoftware): * platform/graphics/filters/Filter.h: (WebCore::Filter::setSourceImage): * platform/graphics/filters/FilterEffect.cpp: (WebCore::FilterEffect::clearResult): * platform/graphics/filters/FilterEffect.h: * platform/graphics/texmap/TextureMapper.cpp: (WebCore::BitmapTexture::updateContents): * platform/graphics/texmap/TextureMapperImageBuffer.h: * rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paintDecoration): * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::paintFillLayerExtended): * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintProgressBar): * rendering/shapes/Shape.cpp: (WebCore::Shape::createShape): * rendering/svg/RenderSVGImage.cpp: (WebCore::RenderSVGImage::invalidateBufferedForeground): * rendering/svg/RenderSVGImage.h: * rendering/svg/RenderSVGResourceClipper.cpp: (WebCore::RenderSVGResourceClipper::applyClippingToContext): * rendering/svg/RenderSVGResourceClipper.h: * rendering/svg/RenderSVGResourceFilter.cpp: (WebCore::RenderSVGResourceFilter::applyResource): (WebCore::RenderSVGResourceFilter::postApplyResource): * rendering/svg/RenderSVGResourceFilter.h: * rendering/svg/RenderSVGResourceGradient.cpp: Remove method parameter wrapping/indentation. (WebCore::createMaskAndSwapContextForTextGradient): (WebCore::clipToTextMask): (WebCore::RenderSVGResourceGradient::applyResource): * rendering/svg/RenderSVGResourceGradient.h: * rendering/svg/RenderSVGResourceMasker.cpp: (WebCore::RenderSVGResourceMasker::applyResource): * rendering/svg/RenderSVGResourceMasker.h: * rendering/svg/RenderSVGResourcePattern.cpp: Remove method parameter wrapping/indentation. (WebCore::RenderSVGResourcePattern::buildPattern): (WebCore::RenderSVGResourcePattern::createTileImage): * rendering/svg/RenderSVGResourcePattern.h: Remove method parameter wrapping/indentation. * rendering/svg/SVGRenderingContext.cpp: (WebCore::SVGRenderingContext::createImageBuffer): (WebCore::SVGRenderingContext::createImageBufferForPattern): (WebCore::SVGRenderingContext::clipToImageBuffer): (WebCore::SVGRenderingContext::bufferForeground): * rendering/svg/SVGRenderingContext.h: * svg/graphics/SVGImage.cpp: (WebCore::SVGImage::nativeImageForCurrentFrame): (WebCore::SVGImage::drawPatternForContainer): 2013-11-26 Eric Carlson video.currentSrc should return empty when no resource is loaded https://bugs.webkit.org/show_bug.cgi?id=124898 Reviewed by Dan Bernstein. Test: media/video-currentsrc-cleared.html * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::prepareForLoad): Set m_currentSrc to empty in preparation for attempting to load a new url. 2013-11-26 Hans Muller [CSS Shapes] Support for shape-margin in BoxShape https://bugs.webkit.org/show_bug.cgi?id=124788 Reviewed by Andreas Kling. Corrected BoxShape's internal shape-margin/padding bounds FloatRoundedRect initialization. Tests for the padding bounds will be added when the rest of shape-padding for box shapes implementation is ready. Tests: fast/shapes/shape-outside-floats/shape-outside-margin-boxes-001.html fast/shapes/shape-outside-floats/shape-outside-margin-boxes-002.html * rendering/shapes/BoxShape.cpp: Use constructor shape-margin,shape-padding parameters. (WebCore::BoxShape::BoxShape): * rendering/shapes/BoxShape.h: * rendering/shapes/Shape.cpp: (WebCore::createBoxShape): Pass the shape-margin and shape-padding values along to the BoxShape constructor. (WebCore::Shape::createShape): Ditto. 2013-11-26 Nick Diego Yamane Remove unnecessary webaudio include from MediaStreamSource header https://bugs.webkit.org/show_bug.cgi?id=124897 Reviewed by Eric Carlson. AudioDestinationConsumer.h is included but not used anywhere in MediaStreamSource implementation. * platform/mediastream/MediaStreamSource.h: 2013-11-26 Andreas Kling Avoid unnecessary copy-on-write in FillLayer style application. We ended up with a lot of cloned StyleBackgroundData objects on HTML5-8266. This happened because we always forced a copy-on-write when applying background-image:inherit / background-image:initial. This patch adds early returns to both functions. In the "inherit" case, we bail early if the target style already has the same fill layer data as its parent style. In the "initial" case, we optimize for the single-FillLayer case and add an early return if the relevant value is either unset or equal to the templatized initial value. 2.46 MB progression on HTML5-8266 locally. Reviewed by Antti Koivisto. 2013-11-26 Antoine Quint Web Inspector: Allow showing a context menu on all mouse events. https://bugs.webkit.org/show_bug.cgi?id=124747 Reviewed by Joseph Pecoraro. Add a new InspectorFrontendHost::dispatchEventAsContextMenuEvent(Event*) method to let the inspector front-end dispatch a native contextmenu event that will allow for a context menu to be shown from within a non-contextmenu event handler. * inspector/InspectorFrontendHost.cpp: (WebCore::InspectorFrontendHost::dispatchEventAsContextMenuEvent): Check that we're dealing with a mouse event, get the frame for the event target and the event's location to call ContextMenuController::showContextMenuAt() which will handle the new contextmenu event dispatch to the original event target. * inspector/InspectorFrontendHost.h: * inspector/InspectorFrontendHost.idl: 2013-11-25 Sam Weinig Convert some Shape code to use references https://bugs.webkit.org/show_bug.cgi?id=124876 Reviewed by Andreas Kling. * inspector/InspectorOverlay.cpp: * rendering/FloatingObjects.cpp: * rendering/LayoutState.cpp: * rendering/RenderBlock.cpp: * rendering/RenderBlock.h: * rendering/RenderBlockLineLayout.cpp: * rendering/RenderBox.cpp: * rendering/RenderBox.h: * rendering/line/BreakingContextInlineHeaders.h: * rendering/line/LineWidth.cpp: * rendering/shapes/ShapeInfo.cpp: * rendering/shapes/ShapeInfo.h: * rendering/shapes/ShapeInsideInfo.cpp: * rendering/shapes/ShapeInsideInfo.h: * rendering/shapes/ShapeOutsideInfo.cpp: * rendering/shapes/ShapeOutsideInfo.h: Replace yet more pointers with references. 2013-11-25 Simon Pena [EFL] X11Helper::createPixmap doesn't initialise out value handleId https://bugs.webkit.org/show_bug.cgi?id=124722 Reviewed by Gyuyoung Kim. The overloaded functions X11Helper::createPixmap don't initialise out value handleId, and they do early returns on error situations. Since the functions are void and they don't communicate their failure in any way, returning an out value without initialising it could make the error go farther unnoticed. With the variable being initialised, it can be reliably checked for errors when the function returns. * platform/graphics/surfaces/glx/X11Helper.cpp: (WebCore::X11Helper::createPixmap): Initialise handleId to 0. 2013-11-25 Nick Diego Yamane Mark URLRegistry's lookup() as const and its child classes as final https://bugs.webkit.org/show_bug.cgi?id=124865 Reviewed by Eric Carlson. No new tests needed. No behavior changes. * Modules/mediasource/MediaSourceRegistry.cpp: (WebCore::MediaSourceRegistry::lookup): marked as const. * Modules/mediasource/MediaSourceRegistry.h: MediaSourceRegistry marked as final. * Modules/mediastream/MediaStreamRegistry.cpp: (WebCore::MediaStreamRegistry::lookup): marked as const. * Modules/mediastream/MediaStreamRegistry.h: MediaStreamRegistry marked as final. * fileapi/Blob.cpp: * html/URLRegistry.h: lookup() marked as const. (WebCore::URLRegistry::lookup): marked as const. 2013-11-25 Sergio Correia [MediaStream] Use std::unique_ptr instead of OwnPtr/PassOwnPtr https://bugs.webkit.org/show_bug.cgi?id=124858 Reviewed by Eric Carlson. Another step of the OwnPtr/PassOwnPtr => std::unique_ptr conversion, now targeting mediastream-related code. No new tests, covered by existing ones. * Modules/mediastream/RTCDTMFSender.cpp: * Modules/mediastream/RTCDTMFSender.h: * Modules/mediastream/RTCDataChannel.cpp: * Modules/mediastream/RTCDataChannel.h: * Modules/mediastream/RTCPeerConnection.cpp: * Modules/mediastream/RTCPeerConnection.h: * platform/mediastream/MediaStreamSource.cpp: * platform/mediastream/RTCPeerConnectionHandler.cpp: * platform/mediastream/RTCPeerConnectionHandler.h: * platform/mediastream/RTCPeerConnectionHandlerClient.h: * platform/mock/RTCNotifiersMock.cpp: * platform/mock/RTCPeerConnectionHandlerMock.cpp: * platform/mock/RTCPeerConnectionHandlerMock.h: 2013-11-25 Nick Diego Yamane MediaStreamRegistry should store MediaStreams instead of MediaStreamPrivates https://bugs.webkit.org/show_bug.cgi?id=124860 Reviewed by Eric Carlson. MediaStreamRegistry::lookup() should return a MediaStream instead of MediaStreamPrivate. No new tests needed. No behavior changes. * Modules/mediastream/MediaStreamRegistry.cpp: (WebCore::MediaStreamRegistry::registerURL): m_privateStreams -> m_mediaStreams (WebCore::MediaStreamRegistry::unregisterURL): Ditto. (WebCore::MediaStreamRegistry::lookup): Override URLRegistry::lookup() instead of add a new method MediaStream::lookupMediaStreamPrivate(). * Modules/mediastream/MediaStreamRegistry.h: * html/HTMLMediaElement.cpp: (HTMLMediaElement::loadResource): call lookup() instead of lookupMediaStreamPrivate() 2013-11-25 peavo@outlook.com [WinCairo] Compile fails when GSTREAMER is not used. https://bugs.webkit.org/show_bug.cgi?id=124853 Reviewed by Philippe Normand. * platform/graphics/gstreamer/GStreamerUtilities.cpp: Don't include GStreamerUtilities.h when GSTREAMER is not used. 2013-11-25 Andreas Kling Deduplicate shortish Text node strings during tree construction. Let HTMLConstructionSite keep a hash set of already seen strings over its lifetime. Use this to deduplicate the strings inside Text nodes for any string up to 64 characters of length. This optimization already sort-of existed for whitespace-only Texts, but those are laundered in the AtomicString table which we definitely don't want to pollute with every single Text. It might be a good idea to stop using the AtomicString table for all-whitespace Text too. 3.82 MB progression on HTML5-8266 locally. Reviewed by Anders Carlsson. 2013-11-25 Nick Diego Yamane Remove unnecessary MediaStreamTrackDescriptor forward declaration https://bugs.webkit.org/show_bug.cgi?id=124854 Reviewed by Eric Carlson. No new tests needed. No behavior changed. * Modules/mediastream/VideoStreamTrack.h: 2013-11-25 Robert Hogan Remove code now unnecessary after r159575 https://bugs.webkit.org/show_bug.cgi?id=124809 Reviewed by Antti Koivisto. Covered by existing tests fast/block/margin-collapse/self-collapsing-block-with-float* * rendering/line/LineBreaker.cpp: (WebCore::LineBreaker::skipLeadingWhitespace): 2013-11-25 Laszlo Vidacs Vertical border spacing is doubled between table row groups https://bugs.webkit.org/show_bug.cgi?id=20040 Reviewed by Csaba Osztrogonác. Based on Chromium fix https://chromium.googlesource.com/chromium/blink/+/eb615069267f895c59bc576f9d65b3fa5add41e9 Rebaseline needed for table related tests (100+). * rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::calcRowLogicalHeight): 2013-11-25 Andres Gomez [GStreamer] Seeking fails on media content provided by servers not supporting Range requests https://bugs.webkit.org/show_bug.cgi?id=85994 Reviewed by Philippe Normand. Based on the patch written by Andre Moreira Magalhaes. When the GStreamer web source was doing a "Range" request we were expecting to receive a 206 status reply with the "Content-Range" header and just the requested data. Supporting "Range" requests is not mandatory so, for the servers not supporting it they will be replying with a 200 status and the whole content of the media element. Now, we are properly handling these replies too. Test: http/tests/media/media-seeking-no-ranges-server.html * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: (StreamingClient::handleResponseReceived): Do not fail when receiving 200 as response for HTTP range requests. (StreamingClient::handleDataReceived): Manually seek on stream when receiving the full data after a seek. 2013-11-25 Radu Stavila Removed obsolete FIXME after the landing of visual overflow patch (https://bugs.webkit.org/show_bug.cgi?id=118665). https://bugs.webkit.org/show_bug.cgi?id=124833 Reviewed by Mihnea Ovidenie. * rendering/RenderRegion.cpp: (WebCore::RenderRegion::layoutBlock): 2013-11-18 Sergio Villar Senin [CSS Grid Layout] Cache several vectors to avoid malloc/free churn https://bugs.webkit.org/show_bug.cgi?id=123995 Reviewed by Dean Jackson. From Blink r158228 by Laying-out the grid items means a lot of calls to distributeSpaceToTracks() and resolveContentBasedTrackSizingFunctionsForItems() as they're called in a loop. This means that there is a lot of malloc/free going on there. By moving the vectors used by these methods to a new class which is kept during the whole layout process we save a lot of those calls. This obviously mean that the price we pay for a significant perfomance improvement is that we keep the maximum allocation till the end of each layout, but it's an amount of memory that we have to allocate anyway. The improvement in the auto-grid-lots-of-data.html perf test is ~24% (165 runs/s vs 207 runs/s). No new tests required as we're just refactoring code to a new helper class. Nevertheless the performance improvement is backed by the perf test mentioned above. * rendering/RenderGrid.cpp: (WebCore::RenderGrid::GridSizingData::GridSizingData): (WebCore::RenderGrid::computedUsedBreadthOfGridTracks): (WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions): (WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForItems): (WebCore::RenderGrid::distributeSpaceToTracks): (WebCore::RenderGrid::layoutGridItems): (WebCore::RenderGrid::findChildLogicalPosition): * rendering/RenderGrid.h: 2013-11-24 Brady Eidson DatabaseProcess: Add "UniqueIDBDatabase" that multiple WebProcesses can connect to https://bugs.webkit.org/show_bug.cgi?id=124819 Reviewed by Dan Bernstein. * Modules/indexeddb/IDBDatabaseBackend.cpp: (WebCore::IDBDatabaseBackend::~IDBDatabaseBackend): Unregister from the IDBFactory. 2013-11-24 Gyuyoung Kim Generate toHTMLMarquee|OListElement() to cleanup static_cast<> https://bugs.webkit.org/show_bug.cgi?id=124707 Reviewed by Darin Adler. As a step to use toFoo(), we need to generate toHTMLMarquee|OListElement(). Besides this patch cleans up remaining static_cast<> usage. No new tests, no behavior changes. * css/StyleResolver.cpp: (WebCore::StyleResolver::State::initElement): (WebCore::StyleResolver::locateCousinList): (WebCore::StyleResolver::findSiblingForStyleSharing): * dom/Attr.cpp: (WebCore::Attr::style): * dom/Element.cpp: (WebCore::Element::removeAttribute): * editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock): (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): * editing/EditingStyle.cpp: (WebCore::EditingStyle::wrappingStyleForSerialization): * editing/Editor.cpp: (WebCore::Editor::applyEditingStyleToElement): * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline): * html/HTMLMarqueeElement.h: * html/HTMLOListElement.h: * html/HTMLTagNames.in: * inspector/InspectorCSSAgent.cpp: (WebCore::InspectorCSSAgent::buildObjectForAttributesStyle): * inspector/InspectorOverlay.cpp: (WebCore::buildObjectForElementInfo): * page/PageSerializer.cpp: (WebCore::PageSerializer::serializeFrame): * rendering/RenderCounter.cpp: (WebCore::planCounter): * rendering/RenderLayer.cpp: (WebCore::RenderLayer::resize): * rendering/RenderListItem.cpp: (WebCore::RenderListItem::calcValue): (WebCore::RenderListItem::updateListMarkerNumbers): * rendering/RenderMarquee.cpp: (WebCore::RenderMarquee::marqueeSpeed): 2013-11-24 Tim Horton REGRESSION (r156291): TileController tiles don't always repaint when they resize https://bugs.webkit.org/show_bug.cgi?id=124796 Reviewed by Simon Fraser. In removing platformCALayerDidCreateTiles, r156291 also removed the call to setNeedsDisplay when tiles are resized, without putting it somewhere else. * platform/graphics/ca/mac/TileController.mm: (WebCore::TileController::setNeedsDisplay): Use hasStaleContent when invalidating a whole tile, just like we do for partial tile repaints. (WebCore::TileController::setTileNeedsDisplayInRect): Mark hasStaleContent for any unparented layers, so they'll be painted when they are reparented. (WebCore::TileController::ensureTilesForRect): Invalidate the whole tile when it changes size. 2013-11-23 Xabier Rodriguez Calvar [GStreamer] Remove 0.10 codepath https://bugs.webkit.org/show_bug.cgi?id=124534 Reviewed by Philippe Normand. All GStreamer ports are using 1.0 now so we remove the 0.10 codepath. * GNUmakefile.list.am: * PlatformEfl.cmake: * PlatformGTK.cmake: * WebCore.vcxproj/WebCore.vcxproj: * WebCore.vcxproj/WebCore.vcxproj.filters: Removed GStreamerVersioning. * platform/audio/gstreamer/AudioDestinationGStreamer.cpp: (onGStreamerWavparsePadAddedCallback): Removed. (WebCore::AudioDestinationGStreamer::AudioDestinationGStreamer): Replaced webkitGstPipelineGetBus and removed 0.10 codepath. (WebCore::AudioDestinationGStreamer::~AudioDestinationGStreamer): Replaced webkitGstPipelineGetBus. * platform/audio/gstreamer/AudioFileReaderGStreamer.cpp: (WebCore::copyGstreamerBuffersToAudioChannel): (WebCore::onAppsinkPullRequiredCallback): Removed 0.10 codepath. (WebCore::AudioFileReader::~AudioFileReader): Replaced webkitGstPipelineGetBus and removed 0.10 codepath. (WebCore::AudioFileReader::handleSample): Left as only codepath. (WebCore::AudioFileReader::handleBuffer): Removed. (WebCore::AudioFileReader::handleNewDeinterleavePad): Removed 0.10 codepath. (WebCore::AudioFileReader::plugDeinterleave): Replaced getGstAudioCaps. (WebCore::AudioFileReader::decodeAudioForBusCreation): Replaced webkitGstPipelineGetBus. (WebCore::AudioFileReader::createBus): Removed 0.10 codepath. * platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp: (getGStreamerMonoAudioCaps): (webKitWebAudioGStreamerChannelPosition): Removed 0.10 codepath. (webkit_web_audio_src_class_init): Replaced setGstElementClassMetadata. (webkit_web_audio_src_init): (webKitWebAudioSrcConstructed): (webKitWebAudioSrcFinalize): (webKitWebAudioSrcLoop): Removed 0.10 codepath. * platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp: * platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h: Removed checks for 1.0 as it is the only codepath now. * platform/graphics/gstreamer/GRefPtrGStreamer.cpp: (WTF::GstElement): (WTF::GstPad): (WTF::GstPadTemplate): (WTF::GstTask): (WTF::GstBus): (WTF::GstElementFactory): (WTF::adoptGRef): Replaced gstObjectIsFloating. (WTF::refGRef): Replaced webkitGstObjectRefSink. (WTF::GstTagList): (WTF::GstSample): Removed checks for 1.0 as it is the only codepath now. * platform/graphics/gstreamer/GRefPtrGStreamer.h: Removed checks for 1.0 as it is the only codepath now. * platform/graphics/gstreamer/GStreamerUtilities.cpp: (WebCore::webkitGstGhostPadFromStaticTemplate): (WebCore::getVideoSizeAndFormatFromCaps): (WebCore::createGstBuffer): (WebCore::createGstBufferForData): (WebCore::getGstBufferDataPointer): (WebCore::mapGstBuffer): (WebCore::unmapGstBuffer): Moved here from GstVersioning and added to WebCore namespace. * platform/graphics/gstreamer/GStreamerUtilities.h: (WebCore::webkitGstCheckVersion): Moved here from GstVersioning and added to WebCore namespace. * platform/graphics/gstreamer/GStreamerVersioning.cpp: Removed. * platform/graphics/gstreamer/GStreamerVersioning.h: Removed. * platform/graphics/gstreamer/ImageGStreamer.h: Removed checks for 1.0 as it is the only codepath now. * platform/graphics/gstreamer/ImageGStreamerCairo.cpp: (ImageGStreamer::ImageGStreamer): Removed 0.10 codepath. (ImageGStreamer::~ImageGStreamer): Removed checks for 1.0 as it is the only codepath now. * platform/graphics/gstreamer/InbandMetadataTextTrackPrivateGStreamer.h: * platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp: * platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h: Removed checks for 1.0 as it is the only codepath now. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: (WebCore::setAudioStreamPropertiesCallback): Removed 0.10 codepath. (WebCore::mediaPlayerPrivateTextChangedCallback): Removed checks for 1.0 as it is the only codepath now. (WebCore::MediaPlayerPrivateGStreamer::isAvailable): Replaced gPlaybinName. (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer): Removed checks for 1.0 and replaced webkitGstPipelineGetBus. (WebCore::MediaPlayerPrivateGStreamer::duration): Removed 0.10 codepath. (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideo): (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfAudio): (WebCore::MediaPlayerPrivateGStreamer::textChanged): Removed checks for 1.0 as it is the only codepath now. (WebCore::MediaPlayerPrivateGStreamer::buffered): Replaced gPercentMax. (WebCore::MediaPlayerPrivateGStreamer::handleMessage): Removed 0.10 codepath. (WebCore::MediaPlayerPrivateGStreamer::processTableOfContents): Removed checks for 1.0 as it is the only codepath now. (WebCore::MediaPlayerPrivateGStreamer::totalBytes): Removed 0.10 codepath. (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin): Replaced gPlaybinName and webkitGstPipelineGetBus and removed checks for 1.0. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: Removed checks for 1.0 as it is the only codepath now. * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: (WebCore::MediaPlayerPrivateGStreamerBase::naturalSize): (WebCore::MediaPlayerPrivateGStreamerBase::updateTexture): (WebCore::MediaPlayerPrivateGStreamerBase::paint): Removed 0.10 codepath. * platform/graphics/gstreamer/TextCombinerGStreamer.cpp: * platform/graphics/gstreamer/TextCombinerGStreamer.h: * platform/graphics/gstreamer/TextSinkGStreamer.cpp: * platform/graphics/gstreamer/TextSinkGStreamer.h: * platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp: * platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h: Removed checks for 1.0 as it is the only codepath now. * platform/graphics/gstreamer/VideoSinkGStreamer.cpp: (webkitVideoSinkRender): Removed 0.10 codepath and added WebCore as createGstBuffer namespace. (webkitVideoSinkSetCaps): Removed 0.10 codepath. (webkitVideoSinkProposeAllocation): Removed checks for 1.0 as it is the only codepath now. (webkitVideoSinkMarshalVoidAndMiniObject): Removed as it was 0.10. (webkit_video_sink_class_init): Removed 0.10 codepath and replaced setGstElementClassMetadata. * platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp: * platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h: Removed checks for 1.0 as it is the only codepath now. * platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp: (webkit_media_src_class_init): Replaced setGstElementClassMetadata. (webKitMediaSrcAddSrc): Added WebCore namespace to webkitGstGhostPadFromStaticTemplate. (MediaSourceClientGstreamer::didReceiveData): Added WebCore namespace to createGstBufferForData. * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: Removed 0.10 codepath. (webKitWebSrcQuery): Removed as it was 0.10 only. (void webkit_web_src_class_init): Replaced setGstElementClassMetadata. (webkit_web_src_init): Removed haveAppSrc27 private attribute and 0.10 codepath. (webKitWebSrcStop): Removed checks for 1.0 as it is the only codepath now. (webKitWebSrcSetProperty): (webKitWebSrcUriGetType): (webKitWebSrcGetProtocols): (webKitWebSrcGetUri): (webKitWebSrcSetUri): Removed 0.10 codepath. (StreamingClient::createReadBuffer): Removed checks for 1.0 and replaced getGstBufferSize. (StreamingClient::handleResponseReceived): Removed 0.10 codepath and replaced notifyGstTagsOnPad. (StreamingClient::handleDataReceived): Removed 0.10 codepath and replaced setGstBufferSize and gst_buffer_get_size. 2013-11-22 Jer Noble [Mac] Can't drag full-screen video to another monitor https://bugs.webkit.org/show_bug.cgi?id=124798 Reviewed by Geoffrey Garen. Make full screen windows movable by default. Previously, we wanted non-movable full screen windows since they were in the same space and were just placed atop non-full screen windows. Now that all our supported Mac platforms have explicit full screen support, we can remove this non-movable restriction. * platform/mac/WebCoreFullScreenWindow.mm: (-[WebCoreFullScreenWindow initWithContentRect:styleMask:backing:defer:]): 2013-11-22 Brent Fulgham [Win] Clean up ColorSpace handling in Windows code https://bugs.webkit.org/show_bug.cgi?id=124795 Reviewed by Tim Horton. Functionality covered by existing fast/css/color test suite. * platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::safeRGBColorSpaceRef): Handle case of Windows CG implementation not handling sRGB correctly. (WebCore::sRGBColorSpaceRef): Use new helper function. * platform/graphics/win/FontCGWin.cpp: (WebCore::Font::drawGlyphs): Pass correct color space to fill functions. * platform/graphics/win/GraphicsContextCGWin.cpp: (WebCore::GraphicsContext::platformInit): Initialize color space to value passed via the style to the constructor. 2013-11-22 Alexey Proskuryakov WebCrypto algorithms should check that key algorithm matches https://bugs.webkit.org/show_bug.cgi?id=123628 Reviewed by Anders Carlsson. No change in behavior yet, because we have one algorithm per key class. Will be tested once more algorithms are added. * WebCore.xcodeproj/project.pbxproj: Updated for file renames. * bindings/js/JSCryptoAlgorithmDictionary.cpp: (WebCore::createRsaKeyParamsWithHash): (WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey): * bindings/js/JSCryptoKeySerializationJWK.cpp: (WebCore::createRSAKeyParametersWithHash): (WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm): * crypto/CryptoAlgorithmParameters.h: (WebCore::CryptoAlgorithmParameters::ENUM_CLASS): * crypto/parameters/CryptoAlgorithmRsaKeyParamsWithHash.h: Copied from Source/WebCore/crypto/parameters/CryptoAlgorithmRsaSsaKeyParams.h. * crypto/parameters/CryptoAlgorithmRsaSsaKeyParams.h: Removed. Renamed RsaSsaKeyParams to RsaKeyParamsWithHash, because other algorithms (like RSA-OAEP) are in the same boat. Depending on where the spec goes, we might need to introduce algorithm specific RSA parameter classes later, but let's reduce copy/pasted code at least for now. * crypto/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp: Moved to the correct directory. * crypto/mac/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp: Copied from Source/WebCore/crypto/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp. (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformSign): Factored out Mac specific code, leaving type casting to cross-platform files. (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformVerify): Ditto. * crypto/CryptoAlgorithmRegistry.h: (WebCore::CryptoAlgorithmRegistry::registerAlgorithm): * crypto/mac/CryptoAlgorithmRegistryMac.cpp: (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Reduce copy/pasting in registration code. * crypto/algorithms/CryptoAlgorithmAES_CBC.cpp: (WebCore::CryptoAlgorithmAES_CBC::keyAlgorithmMatches): Check key type and algorithm. (WebCore::CryptoAlgorithmAES_CBC::encrypt): Cross platform type casting code. Maybe we'll find a way to autogenerate or eliminate it one day. (WebCore::CryptoAlgorithmAES_CBC::decrypt): Ditto. * crypto/algorithms/CryptoAlgorithmAES_CBC.h: * crypto/algorithms/CryptoAlgorithmHMAC.cpp: (WebCore::CryptoAlgorithmHMAC::keyAlgorithmMatches): (WebCore::CryptoAlgorithmHMAC::sign): (WebCore::CryptoAlgorithmHMAC::verify): * crypto/algorithms/CryptoAlgorithmHMAC.h: * crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp: (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::keyAlgorithmMatches): (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::sign): (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::verify): (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::importKey): * crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.h: * crypto/mac/CryptoAlgorithmAES_CBCMac.cpp: (WebCore::CryptoAlgorithmAES_CBC::platformEncrypt): (WebCore::CryptoAlgorithmAES_CBC::platformDecrypt): * crypto/mac/CryptoAlgorithmHMACMac.cpp: (WebCore::CryptoAlgorithmHMAC::platformSign): (WebCore::CryptoAlgorithmHMAC::platformVerify): Same changes for all algorithms that have keys. 2013-11-22 Brendan Long Fire "change" event on TextTrackList when a TextTrack's mode changes https://bugs.webkit.org/show_bug.cgi?id=124789 Reviewed by Eric Carlson. Since AudioTrackList and VideoTrackList already have this event, the interesting bits are in TrackListBase::scheduleChangeEvent(), and we just need to call it for TextTrackList changes. Test: media/track/track-change-event.html * html/HTMLMediaElement.cpp: (HTMLMediaElement::textTrackModeChanged): Call TrackListBase::scheduleChangeEvent(). * html/track/TextTrackList.idl: Add onchange event listener. 2013-11-22 Brendan Long Add TextTrackList::getTrackById(). https://bugs.webkit.org/show_bug.cgi?id=124785 Reviewed by Eric Carlson. Test: media/track/track-id.html * html/track/TextTrackList.cpp: Add getTrackById() (TextTrackList::getTrackById): * html/track/TextTrackList.h: Same. * html/track/TextTrackList.idl: Same. 2013-11-22 Hans Muller [CSS Shapes] When the value is set, derive radii from border-radius https://bugs.webkit.org/show_bug.cgi?id=124228 Reviewed by Dean Jackson. Add support for BoxShape elliptical corners. Tests: fast/shapes/shape-outside-floats/shape-outside-rounded-boxes-001.html fast/shapes/shape-outside-floats/shape-outside-rounded-boxes-002.html * platform/graphics/FloatRoundedRect.h: (WebCore::FloatRoundedRect::bottomLeftCorner): Corrected a copy-and-pasteO. * rendering/shapes/BoxShape.cpp: (WebCore::BoxShape::getExcludedIntervals): Returned interval now depends on the top and bottom of the line. * rendering/shapes/Shape.cpp: (WebCore::Shape::createShape): Rounded rect parameters are now specified with a RoundedRect parameter. * rendering/shapes/Shape.h: * rendering/shapes/ShapeInfo.cpp: (WebCore::::computedShape): Pass style's rounded border to createShape(). 2013-11-22 Andres Gomez Several missing/incorrect guards for LOG_DISABLED=0 against Release build (Mac) https://bugs.webkit.org/show_bug.cgi?id=78735 Reviewed by Mario Sanchez Prada. In a "Debug" build the CString.h header comes from another indirect dependency. Now, we explicitly add this missing include. * page/CaptionUserPreferencesMediaAF.cpp: Explicitly adding missing include. 2013-11-22 Robert Sipka [curl] Fix of SSL certificate chain storage https://bugs.webkit.org/show_bug.cgi?id=124768 Reviewed by Brent Fulgham. Change the certificates storage type into ListHashSet from HashSet to keep the chain order in each case. This ensures that there is no difference between the stored and the recieved certificate chain. * platform/network/curl/SSLHandle.cpp: (WebCore::allowsAnyHTTPSCertificateHosts): (WebCore::sslIgnoreHTTPSCertificate): (WebCore::pemData): (WebCore::certVerifyCallback): 2013-11-22 Brent Fulgham [Win] Avoid deadlock when interacting with some AVFoundationCF content and https://bugs.webkit.org/show_bug.cgi?id=124752 Prevent deadlock caused by conflict over the "mapLock" mutex. Notification handling in the file, which modify assets and make other changes, are required to happen on the main thread. This patch enforces this requirement. Reviewed by Eric Carlson. * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp: (WebCore::NotificationCallbackData::NotificationCallbackData): Added (WebCore::AVFWrapper::processNotification): Moved logic from 'notificationCallback', which was sometimes happening on a background thread. (WebCore::AVFWrapper::notificationCallback): Dispatch calls to main thread. 2013-11-22 peavo@outlook.com [WinCairo] Compile error when ACCELERATED_COMPOSITING is not used. https://bugs.webkit.org/show_bug.cgi?id=124773 Reviewed by Brent Fulgham. * rendering/RenderView.cpp: (WebCore::RenderView::paintBoxDecorations): Added USE(ACCELERATED_COMPOSITING) guard. 2013-11-18 Sergio Villar Senin [CSS Grid Layout] Improve content-sized track layout https://bugs.webkit.org/show_bug.cgi?id=124408 Reviewed by Dean Jackson. Test: fast/css-grid-layout/grid-item-with-percent-min-max-height-dynamic.html From Blink r156122 & r157633 by Added a couple of optimizations to speed up the layout of content based tracks. The idea is to narrow down the conditions for relayouting when the height of a grid area changes. We basically just need to layout tracks with percentage heights as they're the only ones that change. A new performance test is attached to demonstrate the effect of these optimizations. We get a ~1000% improvement on a i7 M620 going from 14.5 runs/s to 165 runs/s. * rendering/RenderGrid.cpp: (WebCore::RenderGrid::logicalContentHeightForChild): (WebCore::RenderGrid::layoutGridItems): 2013-11-08 Sergio Villar Senin [CSS Grid Layout] Run the content-sized tracks sizing algorithm only when required https://bugs.webkit.org/show_bug.cgi?id=124039 Reviewed by Dean Jackson. The current code runs the content sized track sizing algorithm all the time, which forces a layout even when the track is not content-sized. This change improves the situation by applying two optimizations. In the first one, we bail out the algorithm if we detect that we don't need to run it. And by the second one we reduce the amount of recomputations by only iterating over the content sized tracks instead of all of them. Both changes follow the ideas introduced in Blink r156028 and r156168 by . As we changed the way we iterate over children (we use the GridIterator now) the way they're stored in the RenderGrid changes too. If a item spans through several "cells" inside the grid, we will have a reference to it on each of them. These two changes account for a ~3200% improvement on a i7 M620 in the test that accompanies this change (15.5 vs 520 run/s). New perf test: PerformanceTests/Layout/fixed-grid-lots-of-data.html * rendering/RenderGrid.cpp: (WebCore::RenderGrid::computedUsedBreadthOfGridTracks): Keep track of content sized tracks and only iterate over them. (WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions): (WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForItems): Early return if there are no tracks to pass to the algorithm. * rendering/RenderGrid.h: * rendering/style/GridLength.h: (WebCore::GridLength::isContentSized): * rendering/style/GridTrackSize.h: (WebCore::GridTrackSize::isContentSized): 2013-11-22 Manuel Rego Casasnovas [CSS Regions] Move code after early break in RenderRegion::repaintFlowThreadContentRectangle https://bugs.webkit.org/show_bug.cgi?id=124743 Reviewed by Mihnea Ovidenie. No new tests, covered by existing tests. * rendering/RenderRegion.cpp: (WebCore::RenderRegion::repaintFlowThreadContentRectangle): Variable flippedFlowThreadPortionRect is not used before the early break, so we can move it after and save some unneeded operations. 2013-11-22 Manuel Rego Casasnovas [CSS Regions] Use hasOverflowClip() in RenderRegion https://bugs.webkit.org/show_bug.cgi?id=124746 Reviewed by Mihnea Ovidenie. Implement the suggested FIXME in RenderRegion using hasOverflowClip(). No new tests, covered by existing tests. * rendering/RenderRegion.cpp: (WebCore::RenderRegion::overflowRectForFlowThreadPortion): Use hasOverflowClip(). (WebCore::RenderRegion::rectFlowPortionForBox): Ditto. 2013-11-21 Frédéric Wang Map the dir attribute to the CSS direction property. https://bugs.webkit.org/show_bug.cgi?id=124572. Reviewed by Darin Adler. Test: mathml/presentation/mstyle-css-attributes.html * mathml/MathMLElement.cpp: (WebCore::MathMLElement::isPresentationAttribute): reorder attributes (WebCore::MathMLElement::collectStyleForPresentationAttribute): reorder tags that accept dir (WebCore::MathMLElement::isMathMLToken): add an inline function to test that a tag corresponds to a MathML Token Element. * mathml/MathMLElement.h: Follow-up work to address Darin's comments. 2013-11-21 Peter Molnar Remove ENABLE_WORKERS https://bugs.webkit.org/show_bug.cgi?id=105784 Reviewed by Darin Adler. 2013-11-21 Alex Christensen [Win] Unreviewed build fix after r159632. * platform/network/curl/SSLHandle.cpp: (WebCore::certVerifyCallback): Fixed template syntax. 2013-11-21 Bear Travis Web Inspector: [CSS Shapes] Refactor highlighting code to decrease Shapes API surface https://bugs.webkit.org/show_bug.cgi?id=124737 Reviewed by Timothy Hatcher. Add a virtual method to Shapes, buildPath, that can be used to build the path (in the Shape coordinate system) for display in the Inspector. This allows us to remove methods such as type(), polygon(), and logicalRx/Ry() which exposed the inner workings of the Shapes classes. Also covers the addition of the BoxShape type. Refactoring, existing test is inspector-protocol/model/highlight-shape-outside.html. * inspector/InspectorOverlay.cpp: (WebCore::appendPathCommandAndPoints): Points need to be translated from shape space to renderer space using ShapeInfo. (WebCore::buildObjectForShapeOutside): Add the ShapeOutsideInfo to the path info struct. * rendering/shapes/BoxShape.cpp: (WebCore::BoxShape::buildPath): Build the path for a BoxShape. * rendering/shapes/BoxShape.h: * rendering/shapes/PolygonShape.cpp: (WebCore::PolygonShape::buildPath): Build the path for a PolygonShape. * rendering/shapes/PolygonShape.h: * rendering/shapes/RasterShape.h: * rendering/shapes/RectangleShape.cpp: (WebCore::RectangleShape::buildPath): Build the path for a RectangleShape. * rendering/shapes/RectangleShape.h: * rendering/shapes/Shape.h: 2013-11-21 Mark Rowe Stop overriding VALID_ARCHS. All modern versions of Xcode set it appropriately for our needs. Reviewed by Alexey Proskuryakov. * Configurations/Base.xcconfig: 2013-11-21 Gwang Yoon Hwang [GTK] Unreviewed buildfix after r159614 and r159656. * bindings/gobject/WebKitDOMCustom.cpp: Add missing header 2013-11-21 Laszlo Vidacs Fix WinCairo unreachable code warnings in SimpleLineLayout.cpp https://bugs.webkit.org/show_bug.cgi?id=124704 Reviewed by Antti Koivisto. Fix unreachable code warnings using conditional directives. * rendering/SimpleLineLayout.cpp: (WebCore::SimpleLineLayout::canUseFor): 2013-11-21 Mark Rowe Fix an error in a few Xcode configuration setting files. Reviewed by Alexey Proskuryakov. * Configurations/Base.xcconfig: 2013-11-21 Mark Rowe Fix some deprecation warnings. Reviewed by Anders Carlsson. * platform/mac/HTMLConverter.mm: (fileWrapperForURL): Move off a deprecated NSFileWrapper method. 2013-11-21 Daniel Bates [iOS] Build fix; export symbol for WebCore::provideDeviceOrientationTo() Add the symbol __ZN7WebCore26provideDeviceOrientationToEPNS_4PageEPNS_23DeviceOrientationClientE. * WebCore.exp.in: 2013-11-21 Daniel Bates Add !USE(NETWORK_CFDATA_ARRAY_CALLBACK)-guard https://bugs.webkit.org/show_bug.cgi?id=124741 Reviewed by Alexey Proskuryakov. Add !USE(NETWORK_CFDATA_ARRAY_CALLBACK)-guard around code that is unused when building with feature NETWORK_CFDATA_ARRAY_CALLBACK. Additionally, add a declaration for allocateSegment() with attribute WARN_UNUSED_RETURN to have the compiler warn when the return value of this function is unused. Together with warnings treated as errors this change will prevent a memory leak. * platform/SharedBuffer.cpp: 2013-11-21 Daniel Bates Remove unused functions from WebCore and WebKit2 https://bugs.webkit.org/show_bug.cgi?id=124739 Reviewed by Alexey Proskuryakov. * editing/markup.cpp: Remove unused functions isHTMLBlockElement and ancestorToRetainStructureAndAppearanceWithNoRenderer. * rendering/InlineElementBox.cpp: Append newline to the end of the file. 2013-11-21 Daniel Bates Only generate isObservable() when IDL specifies GenerateIsReachable https://bugs.webkit.org/show_bug.cgi?id=124729 Reviewed by Geoffrey Garen. We should only generate the static inline function isObservable() when the IDL specifies GenerateIsReachable. Otherwise, this function is unused. Added a new test IDL TestGenerateIsReachable.idl and expected results to test that we generate isObservable() when an IDL specifies GenerateIsReachable. Additionally, rebased existing test results. * bindings/scripts/CodeGeneratorJS.pm: (GenerateImplementation): * bindings/scripts/test/CPP/WebDOMTestGenerateIsReachable.cpp: Added. * bindings/scripts/test/CPP/WebDOMTestGenerateIsReachable.h: Added. * bindings/scripts/test/GObject/WebKitDOMTestGenerateIsReachable.cpp: Added. * bindings/scripts/test/GObject/WebKitDOMTestGenerateIsReachable.h: Added. * bindings/scripts/test/GObject/WebKitDOMTestGenerateIsReachablePrivate.h: Added. * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp: Removed unused function isObservable(). * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp: Ditto. * bindings/scripts/test/JS/JSTestEventConstructor.cpp: Ditto. * bindings/scripts/test/JS/JSTestEventTarget.cpp: Ditto. * bindings/scripts/test/JS/JSTestException.cpp: Ditto. * bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp: Added. * bindings/scripts/test/JS/JSTestGenerateIsReachable.h: Added. * bindings/scripts/test/JS/JSTestInterface.cpp: Removed unused function isObservable(). * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp: Ditto. * bindings/scripts/test/JS/JSTestNamedConstructor.cpp: Ditto. * bindings/scripts/test/JS/JSTestObj.cpp: Ditto. * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp: Ditto. * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp: Ditto. * bindings/scripts/test/JS/JSTestTypedefs.cpp: Ditto. * bindings/scripts/test/JS/JSattribute.cpp: Ditto. * bindings/scripts/test/JS/JSreadonly.cpp: Ditto. * bindings/scripts/test/ObjC/DOMTestGenerateIsReachable.h: Added. * bindings/scripts/test/ObjC/DOMTestGenerateIsReachable.mm: Added. * bindings/scripts/test/ObjC/DOMTestGenerateIsReachableInternal.h: Added. * bindings/scripts/test/TestGenerateIsReachable.idl: Added. 2013-11-21 Beth Dakin Add a new mode to extend the tile cache beyond the page https://bugs.webkit.org/show_bug.cgi?id=124216 Reviewed by Simon Fraser. This patch makes it possible to give the tile cache a margin of tiles. If there is a margin of tiles, this patch paints those tiles with the background color. Note that this patch does not actually give the tile cache a margin at this time. You opt into a margined tiled cache by called setTileMargins() with number of pixels that the margin on that side should be. * platform/graphics/TiledBacking.h: * platform/graphics/ca/mac/TileController.h: * platform/graphics/ca/mac/TileController.mm: (WebCore::TileController::TileController): (WebCore::TileController::tilesWouldChangeForVisibleRect): TileController::bounds() now computes the bounds INCLUDING the margin. (WebCore::TileController::bounds): adjustRectAtTileIndexForMargin() is a new function that is required to get the rect size for tiles in the margin right. rectForTileIndex() assumes all tiles strive to be the size of m_tileSize, but now margin tiles will be whatever the margin sizes were set to. (WebCore::TileController::adjustRectAtTileIndexForMargin): (WebCore::TileController::rectForTileIndex): This is another instance where m_tileSize is not always the right size to use. (WebCore::TileController::getTileIndexRangeForRect): The tile coverage rect now might include the margin tiles. Only include them in slow-scrolling mode if the current position is within one tile of the edge. (WebCore::TileController::computeTileCoverageRect): tileSizeForCoverageRect() does not make sense in a world where the coverage rect will include margin. Instead, this patch implements the current strategy more explicitly by returning the visibleRect in the slow scrolling case, and in the process this patch also re-names tileSizeForCoverageRect() to computeTileSize() since it no longer takes a coverageRect. (WebCore::TileController::computeTileSize): (WebCore::TileController::revalidateTiles): New setters and getters for the tile margins on each side. (WebCore::TileController::setTileMargins): (WebCore::TileController::hasMargins): (WebCore::TileController::topMarginHeight): (WebCore::TileController::bottomMarginHeight): (WebCore::TileController::leftMarginWidth): (WebCore::TileController::rightMarginWidth): New function to add margin onto the composited bounds if there is one. * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::tiledBackingHasMargin): (WebCore::RenderLayerBacking::paintContents): (WebCore::RenderLayerBacking::compositedBoundsIncludingMargin): * rendering/RenderLayerBacking.h: Do not set masks to bounds if there is a margin on the root layer. * rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::updateBacking): (WebCore::RenderLayerCompositor::mainFrameBackingIsTiledWithMargin): * rendering/RenderLayerCompositor.h: Allow background color to paint into the margin tiles. * rendering/RenderView.cpp: (WebCore::RenderView::paintBoxDecorations): 2013-11-21 Alexey Proskuryakov Implement WebCrypto wrapKey https://bugs.webkit.org/show_bug.cgi?id=124738 Reviewed by Anders Carlsson. Tests: crypto/subtle/aes-cbc-wrap-rsa-non-extractable.html crypto/subtle/aes-cbc-wrap-rsa.html * bindings/js/JSSubtleCryptoCustom.cpp: (WebCore::exportKey): Factored out the actual operation that can be chained with encryption for wrapKey. (WebCore::JSSubtleCrypto::exportKey): (WebCore::JSSubtleCrypto::wrapKey): (WebCore::JSSubtleCrypto::unwrapKey): Fixed a memory leak in failure code path. * crypto/SubtleCrypto.idl: Added wrapKey. 2013-11-21 Alexey Proskuryakov Implement WebCrypto unwrapKey https://bugs.webkit.org/show_bug.cgi?id=124725 Reviewed by Anders Carlsson. Tests: crypto/subtle/aes-cbc-unwrap-failure.html crypto/subtle/aes-cbc-unwrap-rsa.html * bindings/js/JSCryptoAlgorithmDictionary.cpp: * bindings/js/JSCryptoAlgorithmDictionary.h: Removed calls for wrap/unwrap parameter parsing, these are just the same as encrypt/decrypt. * bindings/js/JSCryptoOperationData.cpp: (WebCore::cryptoOperationDataFromJSValue): * bindings/js/JSCryptoOperationData.h: * crypto/CryptoKeySerialization.h: More Vector elimination. * bindings/js/JSDOMPromise.cpp: * bindings/js/JSDOMPromise.h: Removed unneccessary copy constructor and assignment operator, they are no diffdrent than compiler generated ones. * bindings/js/JSSubtleCryptoCustom.cpp: (WebCore::cryptoKeyUsagesFromJSValue): Minor style fixes. (WebCore::JSSubtleCrypto::encrypt): Ditto. (WebCore::JSSubtleCrypto::decrypt): Ditto. (WebCore::JSSubtleCrypto::sign): Ditto. (WebCore::JSSubtleCrypto::verify): Ditto. (WebCore::JSSubtleCrypto::generateKey): Ditto. (WebCore::importKey): Separated actual import operation and the parts that read arguments from ExecState, and call the promise. Logically, this should be outside of bindings code even, but JWK makes that quite challenging. (WebCore::JSSubtleCrypto::importKey): This only does the more mundane arguments and return parts now. (WebCore::JSSubtleCrypto::exportKey): Minor style fixes. (WebCore::JSSubtleCrypto::unwrapKey): Chain decrypt and import. * crypto/CryptoAlgorithm.cpp: (WebCore::CryptoAlgorithm::encryptForWrapKey): (WebCore::CryptoAlgorithm::decryptForUnwrapKey): * crypto/CryptoAlgorithm.h: There are algorithms that expose wrap/unwrap, but not encrypt/decrypt. These will override these new functions, and leave encrypt/decrypt to raise NOT_SUPPORTED_ERR. * crypto/SubtleCrypto.idl: Added unwrapKey. 2013-11-21 Robert Sipka [curl]Improve ssl certificate storage and check https://bugs.webkit.org/show_bug.cgi?id=124569 Reviewed by Brent Fulgham. Storage and check the whole certificate chain, not just the root certificate. * platform/network/curl/SSLHandle.cpp: (WebCore::allowsAnyHTTPSCertificateHosts): (WebCore::sslIgnoreHTTPSCertificate): (WebCore::pemData): (WebCore::certVerifyCallback): 2013-11-21 Mihai Maerean Fix hover area for divs with css transforms https://bugs.webkit.org/show_bug.cgi?id=124647 Reviewed by Allan Sandfeld Jensen. Non transformed layers are now being hit last, not through or in-between transformed layers. The paint order says that the divs creating stacking contexts (including transforms) are painted after the other siblings so they should be hit tested in the reverse order. Also, a rotated div in a non-rotated parent should be hit in its entire area, not hit its parent's background, even if the z-coordinate is negative where the mouse is located. Test: transforms/3d/hit-testing/hover-rotated-negative-z.html * rendering/RenderLayer.cpp: (WebCore::computeZOffset): 2013-11-21 Andres Gomez [GTK] Release compilation fails when defining "LOG_DISABLED=0" https://bugs.webkit.org/show_bug.cgi?id=124661 Reviewed by Mario Sanchez Prada. In a "Debug" build the CString.h header comes from another indirect dependency. Now, we explicitly add this missing include. * html/HTMLTrackElement.cpp: Explicitly adding missing include. 2013-11-21 Ryosuke Niwa Fix Range.insertNode when the inserted node is in the same container as the Range https://bugs.webkit.org/show_bug.cgi?id=123957 Reviewed by Antti Koivisto. Inspired by https://chromium.googlesource.com/chromium/blink/+/fb6ca1f488703e8d4f20ce6449cc8ea210be6edb When a node from the same container is inserted, we can't simply adjust m_end with the offset. Compute m_start and m_end from the inserted nodes instead. Also, don't adjust m_start and m_end to nodes outside of the document if the inserted nodes had been removed by mutation events. Test: fast/dom/Range/range-insertNode-same-container.html * dom/Range.cpp: (WebCore::Range::insertNode): 2013-11-21 Ryosuke Niwa nextBoundary and previousBoundary are very slow when there is a password field https://bugs.webkit.org/show_bug.cgi?id=123973 Reviewed by Antti Koivisto. Merge https://chromium.googlesource.com/chromium/blink/+/57366eec5e3edea54062d4e74c0e047f8681dbad When iterating through DOM nodes nextBoundary and previousBoundary convert the contents of nodes using text security to a sequence of 'x' characters. The SimplifiedBackwardsTextIterator and TextIterator may iterate past node boundaries. Before this patch, the transformation was done looking at the starting node rather than the current node. In some situations, this replaced all boundaries with 'x' and caused the text iterator to continue iterating and transforming until the extent of the document. Test: editing/deleting/password-delete-performance.html * editing/TextIterator.h: (WebCore::SimplifiedBackwardsTextIterator::node): * editing/VisibleUnits.cpp: (WebCore::previousBoundary): (WebCore::nextBoundary): 2013-11-21 Ryosuke Niwa HTML parser should not associate elements inside templates with forms https://bugs.webkit.org/show_bug.cgi?id=117779 Reviewed by Antti Koivisto. Merge https://chromium.googlesource.com/chromium/blink/+/45aadf7ee7ee010327eb692066cf013315ef3ed7 When parsing