| 2012-10-07 Arpita Bahuguna <arpitabahuguna@gmail.com> |
| |
| :first-line pseudo selector ignoring words created from :before |
| https://bugs.webkit.org/show_bug.cgi?id=80794 |
| |
| Reviewed by Daniel Bates. |
| |
| The :first-line pseudo-element style is not applied for content |
| which is generated from the :before/:after pseudo-elements. |
| |
| Test: fast/css/first-line-style-for-before-after-content.html |
| |
| * rendering/RenderObject.cpp: |
| (WebCore::firstLineStyleForCachedUncachedType): |
| Added a new static helper function incorporating the common |
| functionality of both uncachedFirstLineStyle() and firstLineStyleSlowCase() |
| functions. It also modifies the functionality to handle the |
| scenario when :first-line style needs to be applied on content |
| generated from :before/:after. |
| |
| While getting the :first-line style we should also consider the case |
| when the content is generated from a :before/:after pseudo-element in |
| which case the RenderInline's parent should be considered for |
| obtaining the first-line style. |
| |
| (WebCore): |
| (WebCore::RenderObject::uncachedFirstLineStyle): |
| (WebCore::RenderObject::firstLineStyleSlowCase): |
| Moved the duplicate code between the two functions to the common |
| helper function firstLineStyleForCachedUncachedType(). |
| |
| 2012-10-07 Peter Wang <peter.wang@torchmobile.com.cn> |
| |
| Web Inspector: The front-end should provide the position in original source file when set a breakpoint |
| https://bugs.webkit.org/show_bug.cgi?id=93473 |
| |
| Reviewed by Yury Semikhatsky. |
| |
| Since frontend truncates the indent, the first statement in a line must match the breakpoint (line, 0). |
| With this patch JSC debugger can support both normal and "Pretty Print" mode. |
| |
| No new test case. This patch can be verified with cases in "LayoutTests/inspector/debugger/". |
| |
| * bindings/js/ScriptDebugServer.cpp: |
| (WebCore::ScriptDebugServer::ScriptDebugServer): |
| (WebCore::ScriptDebugServer::hasBreakpoint): |
| (WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded): |
| (WebCore::ScriptDebugServer::pauseIfNeeded): |
| * bindings/js/ScriptDebugServer.h: |
| (ScriptDebugServer): |
| |
| 2012-10-07 Martin Robinson <mrobinson@igalia.com> |
| |
| [Soup] Clean up ResourceError creation |
| https://bugs.webkit.org/show_bug.cgi?id=98521 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Simplify the creation of ResourcErrors in ResourceHandleSoup. This is |
| part of a process to make the libsoup networking backend more hackable. |
| |
| No new tests. This shouldn't change functionality. |
| |
| * GNUmakefile.list.am: Added new file. |
| * PlatformEfl.cmake: Added new file. |
| * platform/network/soup/ResourceError.h: |
| (ResourceError): Added new factories. |
| * platform/network/soup/ResourceErrorSoup.cpp: Added. |
| (WebCore::failingURI): Added this helper. |
| (WebCore::ResourceError::httpError): New factory. |
| (WebCore::ResourceError::genericIOError): Ditto. |
| (WebCore::ResourceError::tlsError): Ditto. |
| (WebCore::ResourceError::timeoutError): Ditto. |
| * platform/network/soup/ResourceHandleSoup.cpp: |
| (WebCore::handleUnignoredTLSErrors): Created this helper which merges |
| some of the logic from sendRequestCallback. |
| (WebCore::sendRequestCallback): Use the new helper. |
| (WebCore::requestTimeoutCallback): Use the new factory. |
| |
| 2012-10-07 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org> |
| |
| Rename first/second to key/value in HashMap iterators |
| https://bugs.webkit.org/show_bug.cgi?id=82784 |
| |
| Reviewed by Eric Seidel. |
| |
| * Modules/geolocation/Geolocation.cpp: |
| (WebCore::Geolocation::Watchers::find): |
| (WebCore::Geolocation::Watchers::remove): |
| * Modules/indexeddb/IDBDatabase.cpp: |
| (WebCore::IDBDatabase::objectStoreNames): |
| * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: |
| (WebCore::IDBDatabaseBackendImpl::metadata): |
| * Modules/indexeddb/IDBFactoryBackendImpl.cpp: |
| (WebCore::IDBFactoryBackendImpl::deleteDatabase): |
| (WebCore::IDBFactoryBackendImpl::openBackingStore): |
| (WebCore::IDBFactoryBackendImpl::open): |
| * Modules/indexeddb/IDBObjectStore.cpp: |
| (WebCore::IDBObjectStore::indexNames): |
| (WebCore::IDBObjectStore::put): |
| (WebCore::IDBObjectStore::index): |
| (WebCore::IDBObjectStore::deleteIndex): |
| * Modules/indexeddb/IDBObjectStoreBackendImpl.cpp: |
| (WebCore::IDBObjectStoreBackendImpl::metadata): |
| (WebCore::makeIndexWriters): |
| (WebCore::IDBObjectStoreBackendImpl::deleteInternal): |
| * Modules/indexeddb/IDBTransaction.cpp: |
| (WebCore::IDBTransaction::objectStore): |
| (WebCore::IDBTransaction::objectStoreDeleted): |
| (WebCore::IDBTransaction::onAbort): |
| (WebCore::IDBTransaction::dispatchEvent): |
| * Modules/mediastream/MediaConstraintsImpl.cpp: |
| (WebCore::MediaConstraintsImpl::getMandatoryConstraints): |
| (WebCore::MediaConstraintsImpl::getMandatoryConstraintValue): |
| * Modules/webdatabase/AbstractDatabase.cpp: |
| (WebCore::AbstractDatabase::performOpenAndVerify): |
| * Modules/webdatabase/DatabaseTracker.cpp: |
| (WebCore::DatabaseTracker::interruptAllDatabasesForContext): |
| * Modules/webdatabase/OriginUsageRecord.cpp: |
| (WebCore::OriginUsageRecord::diskUsage): |
| * Modules/webdatabase/SQLTransactionCoordinator.cpp: |
| (WebCore::SQLTransactionCoordinator::acquireLock): |
| (WebCore::SQLTransactionCoordinator::releaseLock): |
| (WebCore::SQLTransactionCoordinator::shutdown): |
| * Modules/webdatabase/chromium/DatabaseTrackerChromium.cpp: |
| (WebCore::DatabaseTracker::interruptAllDatabasesForContext): |
| * Modules/webdatabase/chromium/QuotaTracker.cpp: |
| (WebCore::QuotaTracker::getDatabaseSizeAndSpaceAvailableToOrigin): |
| (WebCore::QuotaTracker::updateDatabaseSize): |
| * Modules/websockets/WebSocketDeflateFramer.cpp: |
| (WebCore::WebSocketExtensionDeflateFrame::processResponse): |
| * Modules/websockets/WebSocketExtensionDispatcher.cpp: |
| (WebCore::WebSocketExtensionDispatcher::appendAcceptedExtension): |
| * accessibility/AXObjectCache.cpp: |
| (WebCore::AXObjectCache::~AXObjectCache): |
| * bindings/gobject/DOMObjectCache.cpp: |
| (WebKit::DOMObjectCache::clearByFrame): |
| * bindings/js/DOMObjectHashTableMap.h: |
| (WebCore::DOMObjectHashTableMap::~DOMObjectHashTableMap): |
| (WebCore::DOMObjectHashTableMap::get): |
| * bindings/js/JSDOMBinding.cpp: |
| (WebCore::cacheDOMStructure): |
| * bindings/js/JSDOMGlobalObject.cpp: |
| (WebCore::JSDOMGlobalObject::visitChildren): |
| * bindings/js/JSDOMGlobalObject.h: |
| (WebCore::getDOMConstructor): |
| * bindings/js/PageScriptDebugServer.cpp: |
| (WebCore::PageScriptDebugServer::addListener): |
| (WebCore::PageScriptDebugServer::removeListener): |
| * bindings/js/ScriptCachedFrameData.cpp: |
| (WebCore::ScriptCachedFrameData::ScriptCachedFrameData): |
| (WebCore::ScriptCachedFrameData::restore): |
| * bindings/js/ScriptController.cpp: |
| (WebCore::ScriptController::~ScriptController): |
| (WebCore::ScriptController::clearWindowShell): |
| (WebCore::ScriptController::attachDebugger): |
| (WebCore::ScriptController::updateDocument): |
| (WebCore::ScriptController::createRootObject): |
| (WebCore::ScriptController::collectIsolatedContexts): |
| (WebCore::ScriptController::cleanupScriptObjectsForPlugin): |
| (WebCore::ScriptController::clearScriptObjects): |
| * bindings/js/ScriptController.h: |
| (WebCore::ScriptController::windowShell): |
| (WebCore::ScriptController::existingWindowShell): |
| * bindings/js/ScriptDebugServer.cpp: |
| (WebCore::ScriptDebugServer::setBreakpoint): |
| (WebCore::ScriptDebugServer::removeBreakpoint): |
| (WebCore::ScriptDebugServer::hasBreakpoint): |
| * bindings/js/SerializedScriptValue.cpp: |
| (WebCore::CloneSerializer::checkForDuplicate): |
| (WebCore::CloneSerializer::dumpIfTerminal): |
| (WebCore::CloneSerializer::write): |
| * bindings/scripts/CodeGeneratorV8.pm: |
| (GenerateImplementation): |
| * bindings/scripts/test/V8/V8Float64Array.cpp: |
| (WebCore::V8Float64Array::GetRawTemplate): |
| (WebCore::V8Float64Array::GetTemplate): |
| * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp: |
| (WebCore::V8TestActiveDOMObject::GetRawTemplate): |
| (WebCore::V8TestActiveDOMObject::GetTemplate): |
| * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp: |
| (WebCore::V8TestCustomNamedGetter::GetRawTemplate): |
| (WebCore::V8TestCustomNamedGetter::GetTemplate): |
| * bindings/scripts/test/V8/V8TestEventConstructor.cpp: |
| (WebCore::V8TestEventConstructor::GetRawTemplate): |
| (WebCore::V8TestEventConstructor::GetTemplate): |
| * bindings/scripts/test/V8/V8TestEventTarget.cpp: |
| (WebCore::V8TestEventTarget::GetRawTemplate): |
| (WebCore::V8TestEventTarget::GetTemplate): |
| * bindings/scripts/test/V8/V8TestException.cpp: |
| (WebCore::V8TestException::GetRawTemplate): |
| (WebCore::V8TestException::GetTemplate): |
| * bindings/scripts/test/V8/V8TestInterface.cpp: |
| (WebCore::V8TestInterface::GetRawTemplate): |
| (WebCore::V8TestInterface::GetTemplate): |
| * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp: |
| (WebCore::V8TestMediaQueryListListener::GetRawTemplate): |
| (WebCore::V8TestMediaQueryListListener::GetTemplate): |
| * bindings/scripts/test/V8/V8TestNamedConstructor.cpp: |
| (WebCore::V8TestNamedConstructor::GetRawTemplate): |
| (WebCore::V8TestNamedConstructor::GetTemplate): |
| * bindings/scripts/test/V8/V8TestNode.cpp: |
| (WebCore::V8TestNode::GetRawTemplate): |
| (WebCore::V8TestNode::GetTemplate): |
| * bindings/scripts/test/V8/V8TestObj.cpp: |
| (WebCore::V8TestObj::GetRawTemplate): |
| (WebCore::V8TestObj::GetTemplate): |
| * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp: |
| (WebCore::V8TestSerializedScriptValueInterface::GetRawTemplate): |
| (WebCore::V8TestSerializedScriptValueInterface::GetTemplate): |
| * bindings/v8/DOMWrapperWorld.cpp: |
| (WebCore::DOMWrapperWorld::deallocate): |
| (WebCore::DOMWrapperWorld::ensureIsolatedWorld): |
| * bindings/v8/NPV8Object.cpp: |
| (WebCore::freeV8NPObject): |
| (WebCore::npCreateV8ScriptObject): |
| * bindings/v8/ScriptController.cpp: |
| (WebCore::ScriptController::clearScriptObjects): |
| (WebCore::ScriptController::resetIsolatedWorlds): |
| (WebCore::ScriptController::ensureIsolatedWorldContext): |
| (WebCore::ScriptController::existingWindowShellInternal): |
| (WebCore::ScriptController::evaluateInIsolatedWorld): |
| (WebCore::ScriptController::setIsolatedWorldSecurityOrigin): |
| (WebCore::ScriptController::cleanupScriptObjectsForPlugin): |
| (WebCore::ScriptController::collectIsolatedContexts): |
| * bindings/v8/SerializedScriptValue.cpp: |
| * bindings/v8/V8DOMMap.h: |
| (WebCore::WeakReferenceMap::removeIfPresent): |
| (WebCore::WeakReferenceMap::visit): |
| * bindings/v8/V8PerContextData.cpp: |
| (WebCore::V8PerContextData::dispose): |
| * bindings/v8/npruntime.cpp: |
| * bridge/IdentifierRep.cpp: |
| (WebCore::IdentifierRep::get): |
| * bridge/NP_jsobject.cpp: |
| (ObjectMap::add): |
| (ObjectMap::remove): |
| * bridge/runtime_root.cpp: |
| (JSC::Bindings::RootObject::invalidate): |
| * css/CSSCanvasValue.cpp: |
| (WebCore::CSSCanvasValue::canvasChanged): |
| (WebCore::CSSCanvasValue::canvasResized): |
| * css/CSSComputedStyleDeclaration.cpp: |
| (WebCore::counterToCSSValue): |
| * css/CSSCrossfadeValue.cpp: |
| (WebCore::CSSCrossfadeValue::crossfadeChanged): |
| * css/CSSFontFaceSource.cpp: |
| (WebCore::CSSFontFaceSource::getFontData): |
| * css/CSSFontSelector.cpp: |
| (WebCore::CSSFontSelector::addFontFaceRule): |
| (WebCore::CSSFontSelector::getFontData): |
| * css/CSSImageGeneratorValue.cpp: |
| (WebCore::CSSImageGeneratorValue::addClient): |
| (WebCore::CSSImageGeneratorValue::removeClient): |
| (WebCore::CSSImageGeneratorValue::getImage): |
| * css/CSSSegmentedFontFace.cpp: |
| (WebCore::CSSSegmentedFontFace::getFontData): |
| * css/CSSSelector.cpp: |
| (WebCore::CSSSelector::parsePseudoType): |
| * css/CSSValuePool.cpp: |
| (WebCore::CSSValuePool::createColorValue): |
| (WebCore::CSSValuePool::createFontFamilyValue): |
| (WebCore::CSSValuePool::createFontFaceValue): |
| * css/PropertySetCSSStyleDeclaration.cpp: |
| (WebCore::PropertySetCSSStyleDeclaration::cloneAndCacheForCSSOM): |
| * css/RuleSet.cpp: |
| (WebCore::reportAtomRuleMap): |
| (WebCore::RuleSet::addToRuleSet): |
| (WebCore::shrinkMapVectorsToFit): |
| * css/StyleBuilder.cpp: |
| (WebCore::ApplyPropertyCounter::applyInheritValue): |
| (WebCore::ApplyPropertyCounter::applyValue): |
| * css/StyleResolver.cpp: |
| (WebCore::StyleResolver::collectFeatures): |
| (WebCore::StyleResolver::ruleSetForScope): |
| (WebCore::StyleResolver::appendAuthorStylesheets): |
| (WebCore::StyleResolver::sweepMatchedPropertiesCache): |
| (WebCore::StyleResolver::collectMatchingRulesForList): |
| * css/StyleSheetContents.cpp: |
| (WebCore::StyleSheetContents::parserAddNamespace): |
| (WebCore::StyleSheetContents::determineNamespace): |
| * dom/CheckedRadioButtons.cpp: |
| (WebCore::CheckedRadioButtons::addButton): |
| (WebCore::CheckedRadioButtons::removeButton): |
| * dom/ChildListMutationScope.cpp: |
| (WebCore::ChildListMutationAccumulator::getOrCreate): |
| * dom/Document.cpp: |
| (WebCore::Document::windowNamedItems): |
| (WebCore::Document::documentNamedItems): |
| (WebCore::Document::getCSSCanvasElement): |
| (WebCore::Document::cachedImmutableAttributeData): |
| (WebCore::Document::getCachedLocalizer): |
| * dom/DocumentMarkerController.cpp: |
| (WebCore::DocumentMarkerController::markerContainingPoint): |
| (WebCore::DocumentMarkerController::renderedRectsForMarkers): |
| (WebCore::DocumentMarkerController::removeMarkers): |
| (WebCore::DocumentMarkerController::repaintMarkers): |
| (WebCore::DocumentMarkerController::invalidateRenderedRectsForMarkersInRect): |
| (WebCore::DocumentMarkerController::showMarkers): |
| * dom/DocumentOrderedMap.cpp: |
| (WebCore::DocumentOrderedMap::remove): |
| * dom/DocumentStyleSheetCollection.cpp: |
| (WebCore::DocumentStyleSheetCollection::pageGroupUserSheets): |
| * dom/ElementAttributeData.cpp: |
| (WebCore::ensureAttrListForElement): |
| * dom/EventDispatcher.cpp: |
| (WebCore::EventRelatedTargetAdjuster::findRelatedTarget): |
| * dom/IdTargetObserverRegistry.cpp: |
| (WebCore::IdTargetObserverRegistry::addObserver): |
| (WebCore::IdTargetObserverRegistry::removeObserver): |
| * dom/MutationObserverInterestGroup.cpp: |
| (WebCore::MutationObserverInterestGroup::isOldValueRequested): |
| (WebCore::MutationObserverInterestGroup::enqueueMutationRecord): |
| * dom/Node.cpp: |
| (WebCore::Node::dumpStatistics): |
| (WebCore::Node::clearRareData): |
| (WebCore::NodeListsNodeData::invalidateCaches): |
| (WebCore::collectMatchingObserversForMutation): |
| * dom/NodeRareData.h: |
| (WebCore::NodeListsNodeData::addCacheWithAtomicName): |
| (WebCore::NodeListsNodeData::addCacheWithName): |
| (WebCore::NodeListsNodeData::addCacheWithQualifiedName): |
| (WebCore::NodeListsNodeData::adoptTreeScope): |
| * dom/ProcessingInstruction.cpp: |
| (WebCore::ProcessingInstruction::checkStyleSheet): |
| * dom/ScriptExecutionContext.cpp: |
| (WebCore::ScriptExecutionContext::canSuspendActiveDOMObjects): |
| (WebCore::ScriptExecutionContext::suspendActiveDOMObjects): |
| (WebCore::ScriptExecutionContext::resumeActiveDOMObjects): |
| (WebCore::ScriptExecutionContext::stopActiveDOMObjects): |
| (WebCore::ScriptExecutionContext::adjustMinimumTimerInterval): |
| * dom/SelectorQuery.cpp: |
| (WebCore::SelectorQueryCache::add): |
| * dom/SpaceSplitString.cpp: |
| (WebCore::SpaceSplitStringData::create): |
| * dom/StyledElement.cpp: |
| (WebCore::StyledElement::updateAttributeStyle): |
| * editing/mac/AlternativeTextUIController.mm: |
| (WebCore::AlternativeTextUIController::AlernativeTextContextController::alternativesForContext): |
| * html/FormController.cpp: |
| (WebCore::SavedFormState::serializeTo): |
| (WebCore::SavedFormState::appendControlState): |
| (WebCore::SavedFormState::takeControlState): |
| (WebCore::SavedFormState::getReferencedFilePaths): |
| (WebCore::FormKeyGenerator::formKey): |
| (WebCore::FormController::createSavedFormStateMap): |
| (WebCore::FormController::formElementsState): |
| (WebCore::FormController::takeStateForFormElement): |
| (WebCore::FormController::getReferencedFilePaths): |
| * html/HTMLCollection.cpp: |
| (WebCore::HTMLCollectionCacheBase::append): |
| * html/canvas/WebGLFramebuffer.cpp: |
| (WebCore::WebGLFramebuffer::getAttachment): |
| (WebCore::WebGLFramebuffer::removeAttachmentFromBoundFramebuffer): |
| (WebCore::WebGLFramebuffer::checkStatus): |
| (WebCore::WebGLFramebuffer::deleteObjectImpl): |
| (WebCore::WebGLFramebuffer::initializeAttachments): |
| * inspector/CodeGeneratorInspector.py: |
| * inspector/DOMPatchSupport.cpp: |
| (WebCore::DOMPatchSupport::diff): |
| (WebCore::DOMPatchSupport::innerPatchChildren): |
| (WebCore::DOMPatchSupport::removeChildAndMoveToNew): |
| * inspector/InjectedScriptManager.cpp: |
| (WebCore::InjectedScriptManager::injectedScriptForId): |
| (WebCore::InjectedScriptManager::injectedScriptIdFor): |
| (WebCore::InjectedScriptManager::discardInjectedScriptsFor): |
| (WebCore::InjectedScriptManager::releaseObjectGroup): |
| (WebCore::InjectedScriptManager::injectedScriptFor): |
| * inspector/InspectorCSSAgent.cpp: |
| (WebCore::SelectorProfile::commitSelector): |
| (WebCore::SelectorProfile::commitSelectorTime): |
| (WebCore::SelectorProfile::toInspectorObject): |
| (WebCore::UpdateRegionLayoutTask::onTimer): |
| (WebCore::InspectorCSSAgent::forcePseudoState): |
| (WebCore::InspectorCSSAgent::asInspectorStyleSheet): |
| (WebCore::InspectorCSSAgent::assertStyleSheetForId): |
| (WebCore::InspectorCSSAgent::didRemoveDOMNode): |
| (WebCore::InspectorCSSAgent::didModifyDOMAttr): |
| (WebCore::InspectorCSSAgent::resetPseudoStates): |
| * inspector/InspectorConsoleAgent.cpp: |
| (WebCore::InspectorConsoleAgent::stopTiming): |
| (WebCore::InspectorConsoleAgent::count): |
| * inspector/InspectorDOMAgent.cpp: |
| (WebCore::InspectorDOMAgent::nodeForId): |
| (WebCore::InspectorDOMAgent::performSearch): |
| (WebCore::InspectorDOMAgent::getSearchResults): |
| * inspector/InspectorDOMDebuggerAgent.cpp: |
| (WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest): |
| * inspector/InspectorDOMStorageAgent.cpp: |
| (WebCore::InspectorDOMStorageAgent::clearFrontend): |
| (WebCore::InspectorDOMStorageAgent::enable): |
| (WebCore::InspectorDOMStorageAgent::storageId): |
| (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId): |
| (WebCore::InspectorDOMStorageAgent::didUseDOMStorage): |
| (WebCore::InspectorDOMStorageAgent::memoryBytesUsedByStorageCache): |
| * inspector/InspectorDatabaseAgent.cpp: |
| (WebCore::InspectorDatabaseAgent::enable): |
| (WebCore::InspectorDatabaseAgent::databaseId): |
| (WebCore::InspectorDatabaseAgent::findByFileName): |
| (WebCore::InspectorDatabaseAgent::databaseForId): |
| * inspector/InspectorDebuggerAgent.cpp: |
| (WebCore::InspectorDebuggerAgent::setBreakpointByUrl): |
| (WebCore::InspectorDebuggerAgent::removeBreakpoint): |
| (WebCore::InspectorDebuggerAgent::resolveBreakpoint): |
| (WebCore::InspectorDebuggerAgent::searchInContent): |
| (WebCore::InspectorDebuggerAgent::getScriptSource): |
| (WebCore::InspectorDebuggerAgent::didParseSource): |
| * inspector/InspectorIndexedDBAgent.cpp: |
| (WebCore): |
| * inspector/InspectorMemoryAgent.cpp: |
| (WebCore): |
| * inspector/InspectorPageAgent.cpp: |
| (WebCore::cachedResourcesForFrame): |
| (WebCore::InspectorPageAgent::didClearWindowObjectInWorld): |
| (WebCore::InspectorPageAgent::frameDetached): |
| * inspector/InspectorProfilerAgent.cpp: |
| (WebCore::InspectorProfilerAgent::getProfileHeaders): |
| (WebCore): |
| (WebCore::InspectorProfilerAgent::getProfile): |
| * inspector/InspectorResourceAgent.cpp: |
| (WebCore::buildObjectForHeaders): |
| (WebCore::InspectorResourceAgent::willSendRequest): |
| (WebCore::InspectorResourceAgent::documentThreadableLoaderStartedLoadingForClient): |
| (WebCore::InspectorResourceAgent::willLoadXHR): |
| (WebCore::InspectorResourceAgent::replayXHR): |
| * inspector/InspectorState.cpp: |
| (WebCore::InspectorState::getBoolean): |
| (WebCore::InspectorState::getString): |
| (WebCore::InspectorState::getLong): |
| (WebCore::InspectorState::getDouble): |
| (WebCore::InspectorState::getObject): |
| * inspector/InspectorStyleSheet.cpp: |
| (WebCore::InspectorStyle::styleWithProperties): |
| (WebCore::InspectorStyleSheet::inspectorStyleForId): |
| * inspector/InspectorValues.cpp: |
| (WebCore::InspectorObjectBase::get): |
| (WebCore::InspectorObjectBase::writeJSON): |
| * inspector/InspectorWorkerAgent.cpp: |
| (WebCore::InspectorWorkerAgent::workerContextTerminated): |
| (WebCore::InspectorWorkerAgent::createWorkerFrontendChannelsForExistingWorkers): |
| (WebCore::InspectorWorkerAgent::destroyWorkerFrontendChannels): |
| * inspector/MemoryInstrumentationImpl.cpp: |
| (WebCore::MemoryInstrumentationClientImpl::countObjectSize): |
| * inspector/MemoryInstrumentationImpl.h: |
| (WebCore::MemoryInstrumentationClientImpl::totalSize): |
| (WebCore::MemoryInstrumentationClientImpl::reportedSizeForAllTypes): |
| * inspector/NetworkResourcesData.cpp: |
| (WebCore::NetworkResourcesData::setXHRReplayData): |
| (WebCore::NetworkResourcesData::removeCachedResource): |
| (WebCore::NetworkResourcesData::clear): |
| * loader/CrossOriginAccessControl.cpp: |
| (WebCore::isSimpleCrossOriginAccessRequest): |
| (WebCore::createAccessControlPreflightRequest): |
| * loader/CrossOriginPreflightResultCache.cpp: |
| (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders): |
| (WebCore::CrossOriginPreflightResultCache::canSkipPreflight): |
| * loader/DocumentLoader.cpp: |
| (WebCore::DocumentLoader::getSubresources): |
| (WebCore::DocumentLoader::substituteResourceDeliveryTimerFired): |
| * loader/MainResourceLoader.cpp: |
| (WebCore::MainResourceLoader::didReceiveResponse): |
| * loader/ResourceLoadScheduler.cpp: |
| (WebCore::ResourceLoadScheduler::servePendingRequests): |
| * loader/appcache/ApplicationCache.cpp: |
| (WebCore::ApplicationCache::removeResource): |
| (WebCore::ApplicationCache::clearStorageID): |
| (WebCore::ApplicationCache::dump): |
| * loader/appcache/ApplicationCacheGroup.cpp: |
| (WebCore::ApplicationCacheGroup::didFinishLoadingManifest): |
| (WebCore::ApplicationCacheGroup::startLoadingEntry): |
| (WebCore::ApplicationCacheGroup::addEntry): |
| * loader/appcache/ApplicationCacheHost.cpp: |
| (WebCore::ApplicationCacheHost::fillResourceList): |
| * loader/appcache/ApplicationCacheResource.cpp: |
| (WebCore::ApplicationCacheResource::estimatedSizeInStorage): |
| * loader/appcache/ApplicationCacheStorage.cpp: |
| (WebCore::ApplicationCacheStorage::findOrCreateCacheGroup): |
| (WebCore::ApplicationCacheStorage::cacheGroupForURL): |
| (WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL): |
| (WebCore::ApplicationCacheStorage::store): |
| (WebCore::ApplicationCacheStorage::empty): |
| (WebCore::ApplicationCacheStorage::storeCopyOfCache): |
| * loader/archive/ArchiveFactory.cpp: |
| (WebCore::ArchiveFactory::registerKnownArchiveMIMETypes): |
| * loader/cache/CachedRawResource.cpp: |
| (WebCore::CachedRawResource::canReuse): |
| * loader/cache/CachedResource.cpp: |
| (WebCore::CachedResource::switchClientsToRevalidatedResource): |
| (WebCore::CachedResource::updateResponseAfterRevalidation): |
| * loader/cache/CachedResourceClientWalker.h: |
| (WebCore::CachedResourceClientWalker::CachedResourceClientWalker): |
| * loader/cache/CachedResourceLoader.cpp: |
| (WebCore::CachedResourceLoader::~CachedResourceLoader): |
| (WebCore::CachedResourceLoader::requestResource): |
| (WebCore::CachedResourceLoader::reloadImagesIfNotDeferred): |
| (WebCore::CachedResourceLoader::removeCachedResource): |
| (WebCore::CachedResourceLoader::garbageCollectDocumentResources): |
| * loader/cache/MemoryCache.cpp: |
| (WebCore::MemoryCache::removeResourcesWithOrigin): |
| (WebCore::MemoryCache::getOriginsWithCache): |
| (WebCore::MemoryCache::getStatistics): |
| (WebCore::MemoryCache::setDisabled): |
| * loader/icon/IconDatabase.cpp: |
| (WebCore::IconDatabase::removeAllIcons): |
| (WebCore::IconDatabase::iconRecordCountWithData): |
| (WebCore::IconDatabase::performPendingRetainAndReleaseOperations): |
| * page/DOMWindow.cpp: |
| (WebCore::DOMWindow::dispatchAllPendingBeforeUnloadEvents): |
| (WebCore::DOMWindow::dispatchAllPendingUnloadEvents): |
| * page/EventHandler.cpp: |
| (WebCore::EventHandler::handleTouchEvent): |
| * page/Frame.cpp: |
| (WebCore::Frame::injectUserScripts): |
| * page/PageGroup.cpp: |
| (WebCore::PageGroup::pageGroup): |
| (WebCore::PageGroup::closeLocalStorage): |
| (WebCore::PageGroup::clearLocalStorageForAllOrigins): |
| (WebCore::PageGroup::clearLocalStorageForOrigin): |
| (WebCore::PageGroup::syncLocalStorage): |
| (WebCore::PageGroup::addUserScriptToWorld): |
| (WebCore::PageGroup::addUserStyleSheetToWorld): |
| (WebCore::PageGroup::removeUserScriptFromWorld): |
| (WebCore::PageGroup::removeUserStyleSheetFromWorld): |
| * page/PageSerializer.cpp: |
| (WebCore::PageSerializer::urlForBlankFrame): |
| * page/SecurityPolicy.cpp: |
| (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry): |
| (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry): |
| * page/Settings.cpp: |
| (WebCore::setGenericFontFamilyMap): |
| (WebCore::getGenericFontFamilyForScript): |
| * page/SpeechInput.cpp: |
| (WebCore::SpeechInput::registerListener): |
| * page/TouchDisambiguation.cpp: |
| (WebCore::findGoodTouchTargets): |
| * page/WindowFeatures.cpp: |
| (WebCore::WindowFeatures::boolFeature): |
| (WebCore::WindowFeatures::floatFeature): |
| * page/animation/AnimationController.cpp: |
| (WebCore::AnimationControllerPrivate::updateAnimations): |
| (WebCore::AnimationControllerPrivate::suspendAnimationsForDocument): |
| (WebCore::AnimationControllerPrivate::resumeAnimationsForDocument): |
| (WebCore::AnimationControllerPrivate::numberOfActiveAnimations): |
| * page/animation/CompositeAnimation.cpp: |
| (WebCore::CompositeAnimation::clearRenderer): |
| (WebCore::CompositeAnimation::updateTransitions): |
| (WebCore::CompositeAnimation::updateKeyframeAnimations): |
| (WebCore::CompositeAnimation::animate): |
| (WebCore::CompositeAnimation::getAnimatedStyle): |
| (WebCore::CompositeAnimation::setAnimating): |
| (WebCore::CompositeAnimation::timeToNextService): |
| (WebCore::CompositeAnimation::getAnimationForProperty): |
| (WebCore::CompositeAnimation::suspendAnimations): |
| (WebCore::CompositeAnimation::resumeAnimations): |
| (WebCore::CompositeAnimation::overrideImplicitAnimations): |
| (WebCore::CompositeAnimation::resumeOverriddenImplicitAnimations): |
| (WebCore::CompositeAnimation::isAnimatingProperty): |
| (WebCore::CompositeAnimation::numberOfActiveAnimations): |
| * platform/Language.cpp: |
| (WebCore::languageDidChange): |
| * platform/MIMETypeRegistry.cpp: |
| (WebCore::MIMETypeRegistry::getNormalizedMIMEType): |
| * platform/audio/HRTFElevation.cpp: |
| (WebCore::getConcatenatedImpulseResponsesForSubject): |
| * platform/blackberry/CookieManager.cpp: |
| (WebCore::CookieManager::generateHtmlFragmentForCookies): |
| (WebCore::CookieManager::removeAllCookies): |
| * platform/blackberry/CookieMap.cpp: |
| (WebCore::CookieMap::removeOldestCookie): |
| (WebCore::CookieMap::getAllChildCookies): |
| * platform/cf/BinaryPropertyList.cpp: |
| (WebCore::BinaryPropertyListPlan::writeIntegerArray): |
| * platform/chromium/support/WebHTTPLoadInfo.cpp: |
| (WebKit::addHeader): |
| * platform/chromium/support/WebURLRequest.cpp: |
| (WebKit::WebURLRequest::visitHTTPHeaderFields): |
| * platform/chromium/support/WebURLResponse.cpp: |
| (WebKit::WebURLResponse::addHTTPHeaderField): |
| (WebKit::WebURLResponse::visitHTTPHeaderFields): |
| * platform/graphics/DisplayRefreshMonitor.cpp: |
| (WebCore::DisplayRefreshMonitorManager::ensureMonitorForClient): |
| (WebCore::DisplayRefreshMonitorManager::unregisterClient): |
| * platform/graphics/FontCache.cpp: |
| (WebCore::FontCache::getCachedFontPlatformData): |
| (WebCore::FontCache::getVerticalData): |
| (WebCore::FontCache::getCachedFontData): |
| (WebCore::FontCache::releaseFontData): |
| (WebCore::FontCache::purgeInactiveFontData): |
| * platform/graphics/GlyphPageTreeNode.cpp: |
| (WebCore::GlyphPageTreeNode::treeGlyphPageCount): |
| (WebCore::GlyphPageTreeNode::pageCount): |
| (WebCore::GlyphPageTreeNode::pruneTreeCustomFontData): |
| (WebCore::GlyphPageTreeNode::pruneTreeFontData): |
| (WebCore::GlyphPageTreeNode::pruneCustomFontData): |
| (WebCore::GlyphPageTreeNode::pruneFontData): |
| (WebCore::GlyphPageTreeNode::showSubtree): |
| (showGlyphPageTrees): |
| * platform/graphics/TiledBackingStore.cpp: |
| (WebCore::TiledBackingStore::updateTileBuffers): |
| (WebCore::TiledBackingStore::resizeEdgeTiles): |
| (WebCore::TiledBackingStore::setKeepRect): |
| * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp: |
| (WebCore::AVFWrapper::avfWrapperForCallbackContext): |
| * platform/graphics/blackberry/LayerTiler.cpp: |
| (WebCore::LayerTiler::layerVisibilityChanged): |
| (WebCore::LayerTiler::uploadTexturesIfNeeded): |
| (WebCore::LayerTiler::addTileJob): |
| (WebCore::LayerTiler::deleteTextures): |
| (WebCore::LayerTiler::pruneTextures): |
| (WebCore::LayerTiler::bindContentsTexture): |
| * platform/graphics/blackberry/TextureCacheCompositingThread.cpp: |
| (WebCore::TextureCacheCompositingThread::textureForTiledContents): |
| (WebCore::TextureCacheCompositingThread::textureForColor): |
| * platform/graphics/ca/GraphicsLayerCA.cpp: |
| (WebCore::GraphicsLayerCA::moveOrCopyAnimations): |
| (WebCore::GraphicsLayerCA::pauseAnimation): |
| (WebCore::GraphicsLayerCA::layerDidDisplay): |
| (WebCore::GraphicsLayerCA::updateGeometry): |
| (WebCore::GraphicsLayerCA::updateTransform): |
| (WebCore::GraphicsLayerCA::updateChildrenTransform): |
| (WebCore::GraphicsLayerCA::updateMasksToBounds): |
| (WebCore::GraphicsLayerCA::updateContentsVisibility): |
| (WebCore::GraphicsLayerCA::updateContentsOpaque): |
| (WebCore::GraphicsLayerCA::updateBackfaceVisibility): |
| (WebCore::GraphicsLayerCA::updateFilters): |
| (WebCore::GraphicsLayerCA::ensureStructuralLayer): |
| (WebCore::GraphicsLayerCA::updateLayerDrawsContent): |
| (WebCore::GraphicsLayerCA::updateContentsImage): |
| (WebCore::GraphicsLayerCA::updateContentsRect): |
| (WebCore::GraphicsLayerCA::updateMaskLayer): |
| (WebCore::GraphicsLayerCA::updateLayerAnimations): |
| (WebCore::GraphicsLayerCA::setAnimationOnLayer): |
| (WebCore::GraphicsLayerCA::removeCAAnimationFromLayer): |
| (WebCore::GraphicsLayerCA::pauseCAAnimationOnLayer): |
| (WebCore::GraphicsLayerCA::suspendAnimations): |
| (WebCore::GraphicsLayerCA::resumeAnimations): |
| (WebCore::GraphicsLayerCA::findOrMakeClone): |
| (WebCore::GraphicsLayerCA::setOpacityInternal): |
| (WebCore::GraphicsLayerCA::updateOpacityOnLayer): |
| * platform/graphics/ca/mac/TileCache.mm: |
| (WebCore::TileCache::~TileCache): |
| (WebCore::TileCache::setNeedsDisplay): |
| (WebCore::TileCache::setScale): |
| (WebCore::TileCache::setAcceleratesDrawing): |
| (WebCore::TileCache::setTileDebugBorderWidth): |
| (WebCore::TileCache::setTileDebugBorderColor): |
| (WebCore::TileCache::revalidateTiles): |
| * platform/graphics/ca/win/PlatformCALayerWin.cpp: |
| (PlatformCALayer::animationStarted): |
| (resubmitAllAnimations): |
| (PlatformCALayer::animationForKey): |
| * platform/graphics/chromium/FontCacheChromiumWin.cpp: |
| (WebCore::LookupAltName): |
| (WebCore::fontContainsCharacter): |
| * platform/graphics/chromium/FontUtilsChromiumWin.cpp: |
| (WebCore::getDerivedFontData): |
| * platform/graphics/filters/CustomFilterGlobalContext.cpp: |
| (WebCore::CustomFilterGlobalContext::~CustomFilterGlobalContext): |
| (WebCore::CustomFilterGlobalContext::getValidatedProgram): |
| (WebCore::CustomFilterGlobalContext::removeValidatedProgram): |
| * platform/graphics/filters/CustomFilterProgram.cpp: |
| (WebCore::CustomFilterProgram::notifyClients): |
| * platform/graphics/harfbuzz/HarfBuzzSkia.cpp: |
| (WebCore::getCachedHarfbuzzFace): |
| (WebCore::releaseCachedHarfbuzzFace): |
| * platform/graphics/harfbuzz/ng/HarfBuzzNGFace.cpp: |
| (WebCore::HarfBuzzNGFace::HarfBuzzNGFace): |
| (WebCore::HarfBuzzNGFace::~HarfBuzzNGFace): |
| * platform/graphics/mac/SimpleFontDataCoreText.cpp: |
| (WebCore::SimpleFontData::getCFStringAttributes): |
| * platform/graphics/mac/SimpleFontDataMac.mm: |
| (WebCore::SimpleFontData::canRenderCombiningCharacterSequence): |
| * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: |
| (WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE): |
| * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp: |
| (WebCore::GraphicsContext3D::compileShader): |
| (WebCore::GraphicsContext3D::mappedSymbolName): |
| (WebCore::GraphicsContext3D::getShaderiv): |
| (WebCore::GraphicsContext3D::getShaderInfoLog): |
| (WebCore::GraphicsContext3D::getShaderSource): |
| * platform/graphics/openvg/EGLDisplayOpenVG.cpp: |
| (WebCore::EGLDisplayOpenVG::~EGLDisplayOpenVG): |
| (WebCore::EGLDisplayOpenVG::destroySurface): |
| (WebCore::EGLDisplayOpenVG::contextForSurface): |
| * platform/graphics/texmap/TextureMapperGL.cpp: |
| (WebCore::TextureMapperGLData::SharedGLData::currentSharedGLData): |
| (WebCore::TextureMapperGLData::SharedGLData::~SharedGLData): |
| * platform/graphics/texmap/TextureMapperShaderManager.cpp: |
| (WebCore::TextureMapperShaderManager::getShaderProgram): |
| (WebCore::TextureMapperShaderManager::getShaderForFilter): |
| * platform/graphics/wince/FontPlatformData.cpp: |
| (WebCore::FixedSizeFontData::create): |
| * platform/gtk/DataObjectGtk.cpp: |
| (WebCore::DataObjectGtk::forClipboard): |
| * platform/gtk/GtkDragAndDropHelper.cpp: |
| (WebCore::GtkDragAndDropHelper::handleGetDragData): |
| (WebCore::GtkDragAndDropHelper::handleDragLeave): |
| (WebCore::GtkDragAndDropHelper::handleDragMotion): |
| (WebCore::GtkDragAndDropHelper::handleDragDataReceived): |
| (WebCore::GtkDragAndDropHelper::handleDragDrop): |
| * platform/gtk/RedirectedXCompositeWindow.cpp: |
| (WebCore::filterXDamageEvent): |
| * platform/gtk/RenderThemeGtk3.cpp: |
| (WebCore::gtkStyleChangedCallback): |
| (WebCore::getStyleContext): |
| * platform/mac/ScrollbarThemeMac.mm: |
| (+[WebScrollbarPrefsObserver appearancePrefsChanged:]): |
| * platform/network/CredentialStorage.cpp: |
| (WebCore::CredentialStorage::set): |
| (WebCore::CredentialStorage::get): |
| * platform/network/HTTPHeaderMap.cpp: |
| (WebCore::HTTPHeaderMap::copyData): |
| (WebCore::HTTPHeaderMap::get): |
| * platform/network/MIMEHeader.cpp: |
| (WebCore::MIMEHeader::parseHeader): |
| * platform/network/ResourceHandle.cpp: |
| (WebCore::ResourceHandle::create): |
| * platform/network/ResourceRequestBase.cpp: |
| (WebCore::ResourceRequestBase::addHTTPHeaderField): |
| (WebCore::ResourceRequestBase::addHTTPHeaderFields): |
| * platform/network/blackberry/ResourceRequestBlackBerry.cpp: |
| (WebCore::ResourceRequest::targetTypeFromMimeType): |
| (WebCore::ResourceRequest::initializePlatformRequest): |
| * platform/network/cf/ResourceHandleCFNet.cpp: |
| (WebCore::makeFinalRequest): |
| * platform/network/cf/ResourceRequestCFNet.cpp: |
| (WebCore::setHeaderFields): |
| * platform/network/curl/ResourceHandleManager.cpp: |
| (WebCore::ResourceHandleManager::initializeHandle): |
| * platform/network/mac/ResourceRequestMac.mm: |
| (WebCore::ResourceRequest::doUpdatePlatformRequest): |
| * platform/network/qt/ResourceRequestQt.cpp: |
| (WebCore::ResourceRequest::toNetworkRequest): |
| * platform/network/soup/ResourceHandleSoup.cpp: |
| (WebCore::sendRequestCallback): |
| (WebCore::ResourceHandle::setClientCertificate): |
| * platform/network/soup/ResourceRequestSoup.cpp: |
| (WebCore::ResourceRequest::updateSoupMessage): |
| (WebCore::ResourceRequest::toSoupMessage): |
| * platform/network/soup/ResourceResponseSoup.cpp: |
| (WebCore::ResourceResponse::toSoupMessage): |
| * platform/network/win/ResourceHandleWin.cpp: |
| (WebCore::ResourceHandle::start): |
| * platform/qt/RunLoopQt.cpp: |
| (WebCore::RunLoop::TimerBase::timerFired): |
| * platform/text/LocaleToScriptMappingDefault.cpp: |
| (WebCore::scriptNameToCode): |
| (WebCore::localeToScriptCodeForFontSelection): |
| * platform/text/TextEncodingRegistry.cpp: |
| (WebCore::pruneBlacklistedCodecs): |
| (WebCore::dumpTextEncodingNameMap): |
| * platform/text/transcoder/FontTranscoder.cpp: |
| (WebCore::FontTranscoder::converterType): |
| * platform/text/win/TextCodecWin.cpp: |
| (WebCore::LanguageManager::LanguageManager): |
| (WebCore::getCodePage): |
| (WebCore::TextCodecWin::registerExtendedEncodingNames): |
| (WebCore::TextCodecWin::registerExtendedCodecs): |
| (WebCore::TextCodecWin::enumerateSupportedEncodings): |
| * platform/win/ClipboardUtilitiesWin.cpp: |
| (WebCore::getDataMapItem): |
| (WebCore::getClipboardData): |
| (WebCore::setClipboardData): |
| * platform/win/ClipboardWin.cpp: |
| (WebCore::ClipboardWin::types): |
| * platform/win/FileSystemWin.cpp: |
| (WebCore::cachedStorageDirectory): |
| * platform/win/RunLoopWin.cpp: |
| (WebCore::RunLoop::TimerBase::timerFired): |
| * platform/win/WCDataObject.cpp: |
| (WebCore::WCDataObject::createInstance): |
| * platform/wince/MIMETypeRegistryWinCE.cpp: |
| (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType): |
| * platform/wx/ContextMenuWx.cpp: |
| (WebCore::ContextMenu::appendItem): |
| * plugins/PluginDatabase.cpp: |
| (WebCore::PluginDatabase::refresh): |
| (WebCore::PluginDatabase::MIMETypeForExtension): |
| (WebCore::PluginDatabase::remove): |
| * plugins/PluginMainThreadScheduler.cpp: |
| (WebCore::PluginMainThreadScheduler::scheduleCall): |
| (WebCore::PluginMainThreadScheduler::dispatchCalls): |
| * plugins/PluginStream.cpp: |
| (WebCore::PluginStream::startStream): |
| * plugins/blackberry/PluginDataBlackBerry.cpp: |
| (WebCore::PluginData::initPlugins): |
| * plugins/wx/PluginDataWx.cpp: |
| (WebCore::PluginData::initPlugins): |
| * rendering/ExclusionShapeInsideInfo.cpp: |
| (WebCore::ExclusionShapeInsideInfo::ensureExclusionShapeInsideInfoForRenderBlock): |
| * rendering/FlowThreadController.cpp: |
| (WebCore::FlowThreadController::unregisterNamedFlowContentNode): |
| * rendering/InlineFlowBox.cpp: |
| (WebCore::InlineFlowBox::requiresIdeographicBaseline): |
| (WebCore::InlineFlowBox::addTextBoxVisualOverflow): |
| * rendering/RenderBlock.cpp: |
| (WebCore::RenderBlock::clearFloats): |
| * rendering/RenderBlockLineLayout.cpp: |
| (WebCore::setLogicalWidthForTextRun): |
| * rendering/RenderBoxModelObject.cpp: |
| (WebCore::ImageQualityController::highQualityRepaintTimerFired): |
| (WebCore::ImageQualityController::shouldPaintAtLowQuality): |
| * rendering/RenderCounter.cpp: |
| (WebCore::RenderCounter::destroyCounterNodes): |
| (WebCore::RenderCounter::destroyCounterNode): |
| (WebCore::updateCounters): |
| (WebCore::RenderCounter::rendererStyleChanged): |
| * rendering/RenderFlowThread.cpp: |
| (WebCore::RenderFlowThread::setRegionRangeForBox): |
| (WebCore::RenderFlowThread::getRegionRangeForBox): |
| * rendering/RenderLayer.cpp: |
| (WebCore::RenderLayer::paint): |
| (WebCore::performOverlapTests): |
| * rendering/RenderLayerFilterInfo.cpp: |
| (WebCore::RenderLayerFilterInfo::filterInfoForRenderLayer): |
| (WebCore::RenderLayerFilterInfo::createFilterInfoForRenderLayerIfNeeded): |
| * rendering/RenderNamedFlowThread.cpp: |
| (WebCore::RenderNamedFlowThread::dependsOn): |
| (WebCore::RenderNamedFlowThread::pushDependencies): |
| * rendering/RenderRegion.cpp: |
| (WebCore::RenderRegion::setRenderBoxRegionInfo): |
| (WebCore::RenderRegion::setRegionObjectsRegionStyle): |
| (WebCore::RenderRegion::restoreRegionObjectsOriginalStyle): |
| (WebCore::RenderRegion::computeChildrenStyleInRegion): |
| * rendering/RenderTableSection.cpp: |
| (WebCore::RenderTableSection::cachedCollapsedBorder): |
| * rendering/RenderThemeMac.mm: |
| (WebCore::RenderThemeMac::systemColor): |
| * rendering/RenderView.cpp: |
| (WebCore::RenderView::selectionBounds): |
| (WebCore::RenderView::setSelection): |
| * rendering/RenderWidget.cpp: |
| (WebCore::WidgetHierarchyUpdatesSuspensionScope::moveWidgets): |
| * rendering/RootInlineBox.cpp: |
| (WebCore::RootInlineBox::ascentAndDescentForBox): |
| * rendering/VerticalPositionCache.h: |
| (WebCore::VerticalPositionCache::get): |
| * rendering/svg/RenderSVGInlineText.cpp: |
| (WebCore::RenderSVGInlineText::characterStartsNewTextChunk): |
| * rendering/svg/RenderSVGResourceFilter.cpp: |
| (WebCore::RenderSVGResourceFilter::primitiveAttributeChanged): |
| * rendering/svg/RenderSVGResourceGradient.cpp: |
| (WebCore::RenderSVGResourceGradient::applyResource): |
| * rendering/svg/RenderSVGResourcePattern.cpp: |
| (WebCore::RenderSVGResourcePattern::applyResource): |
| * rendering/svg/SVGResourcesCache.cpp: |
| (WebCore::SVGResourcesCache::resourceDestroyed): |
| * rendering/svg/SVGRootInlineBox.cpp: |
| (WebCore::swapItemsInLayoutAttributes): |
| * rendering/svg/SVGTextLayoutAttributes.cpp: |
| (WebCore::SVGTextLayoutAttributes::dump): |
| * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: |
| (WebCore::SVGTextLayoutAttributesBuilder::buildCharacterDataMap): |
| (WebCore::SVGTextLayoutAttributesBuilder::fillCharacterDataMap): |
| * rendering/svg/SVGTextLayoutEngine.cpp: |
| (WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath): |
| * rendering/svg/SVGTextMetricsBuilder.cpp: |
| (WebCore::SVGTextMetricsBuilder::measureTextRenderer): |
| * storage/StorageAreaSync.cpp: |
| (WebCore::StorageAreaSync::syncTimerFired): |
| (WebCore::StorageAreaSync::performImport): |
| (WebCore::StorageAreaSync::sync): |
| * storage/StorageMap.cpp: |
| (WebCore::StorageMap::key): |
| (WebCore::StorageMap::setItem): |
| * storage/StorageNamespaceImpl.cpp: |
| (WebCore::StorageNamespaceImpl::localStorageNamespace): |
| (WebCore::StorageNamespaceImpl::copy): |
| (WebCore::StorageNamespaceImpl::close): |
| (WebCore::StorageNamespaceImpl::clearAllOriginsForDeletion): |
| (WebCore::StorageNamespaceImpl::sync): |
| * svg/SVGDocumentExtensions.cpp: |
| (WebCore::SVGDocumentExtensions::removeAnimationElementFromTarget): |
| (WebCore::SVGDocumentExtensions::removeAllAnimationElementsFromTarget): |
| (WebCore::SVGDocumentExtensions::addPendingResource): |
| (WebCore::SVGDocumentExtensions::isElementPendingResources): |
| (WebCore::SVGDocumentExtensions::removeElementFromPendingResources): |
| (WebCore::SVGDocumentExtensions::setOfElementsReferencingTarget): |
| (WebCore::SVGDocumentExtensions::removeAllTargetReferencesForElement): |
| (WebCore::SVGDocumentExtensions::removeAllElementReferencesForTarget): |
| * svg/SVGElement.cpp: |
| (WebCore::SVGElement::~SVGElement): |
| * svg/animation/SMILTimeContainer.cpp: |
| (WebCore::SMILTimeContainer::setElapsed): |
| (WebCore::SMILTimeContainer::updateAnimations): |
| * svg/graphics/SVGImageCache.cpp: |
| (WebCore::SVGImageCache::~SVGImageCache): |
| (WebCore::SVGImageCache::removeClientFromCache): |
| (WebCore::SVGImageCache::requestedSizeAndScales): |
| (WebCore::SVGImageCache::imageContentChanged): |
| (WebCore::SVGImageCache::redraw): |
| (WebCore::SVGImageCache::lookupOrCreateBitmapImageForRenderer): |
| * svg/graphics/filters/SVGFilterBuilder.h: |
| (WebCore::SVGFilterBuilder::effectReferences): |
| (WebCore::SVGFilterBuilder::addBuiltinEffects): |
| * svg/properties/SVGAnimatedProperty.h: |
| (WebCore::SVGAnimatedProperty::~SVGAnimatedProperty): |
| * svg/properties/SVGAttributeToPropertyMap.cpp: |
| (WebCore::SVGAttributeToPropertyMap::addProperties): |
| (WebCore::SVGAttributeToPropertyMap::synchronizeProperties): |
| * workers/WorkerContext.cpp: |
| (WebCore::WorkerContext::hasPendingActivity): |
| * workers/WorkerEventQueue.cpp: |
| (WebCore::WorkerEventQueue::close): |
| * xml/XMLHttpRequest.cpp: |
| (WebCore::XMLHttpRequest::setRequestHeaderInternal): |
| (WebCore::XMLHttpRequest::getAllResponseHeaders): |
| * xml/XPathFunctions.cpp: |
| (WebCore::XPath::createFunction): |
| * xml/XPathParser.cpp: |
| (isAxisName): |
| * xml/XSLTProcessorLibxslt.cpp: |
| (WebCore::xsltParamArrayFromParameterMap): |
| * xml/XSLTProcessorQt.cpp: |
| (WebCore::XSLTProcessor::transformToString): |
| |
| 2012-10-07 Geoffrey Garen <ggaren@apple.com> |
| |
| REGRESSION (r130584): Crashes in JSC::MarkedAllocator::allocateSlowCase, failing fast/dom/gc-dom-tree-lifetime.html |
| https://bugs.webkit.org/show_bug.cgi?id=98612 |
| |
| Reviewed by Darin Adler. |
| |
| Since DOM modification can happen outside of JS, calls into JS due to |
| DOM modification need to take the JS lock. |
| |
| * bindings/js/JSNodeCustom.cpp: |
| (WebCore::willCreatePossiblyOrphanedTreeByRemovalSlowCase): Take the JS |
| lock before doing a JS allocation, since this may be a JS entrypoint. |
| |
| * bindings/js/JSNodeCustom.h: |
| (WebCore::willCreatePossiblyOrphanedTreeByRemoval): Split out a slow case |
| to help the inliner. |
| |
| 2012-10-07 Nick Carter <nick@chromium.org> |
| |
| [chromium] Crash in WebCore::GraphicsLayerChromium::setContentsToImage |
| https://bugs.webkit.org/show_bug.cgi?id=98456 |
| |
| Reviewed by James Robinson. |
| |
| Handle null return of nativeImageForCurrentFrame. |
| |
| Test: compositing/images/truncated-direct-png-image.html |
| |
| * platform/graphics/chromium/GraphicsLayerChromium.cpp: |
| (WebCore::GraphicsLayerChromium::setContentsToImage): |
| |
| 2012-10-07 Benjamin Poulain <benjamin@webkit.org> |
| |
| WTFURL: implement URL port removal for HTMLAnchorElement |
| https://bugs.webkit.org/show_bug.cgi?id=98604 |
| |
| Reviewed by Adam Barth. |
| |
| * platform/KURLWTFURL.cpp: |
| (WebCore::KURL::hasPort): |
| (WebCore::KURL::removePort): |
| (WebCore::KURL::isHierarchical): |
| Implement those methods to pass the port removal test of HTMLAnchorElement. |
| |
| 2012-10-05 Dirk Schulze <krit@webkit.org> |
| |
| SVG radialGradient should support 'fr' for focal radius (just like Canvas) |
| https://bugs.webkit.org/show_bug.cgi?id=97986 |
| |
| Reviewed by Daniel Bates. |
| |
| Update SVGRadialGradient to the changed behavior in SVG2: http://www.w3.org/TR/SVG2/pservers.html#RadialGradients |
| SVG2 adds the focal radius for radial gradients. Color stops will start from the edge of |
| the focal radius. |
| The new specification does not limit the focal point to be inside the radial gradients radius. |
| This makes SVGRadialGradient consistent with the radial gradient on Canvas. |
| |
| Test: svg/custom/radialGradient-focal-radius.svg |
| |
| * rendering/svg/RenderSVGResourceRadialGradient.cpp: |
| Remove checks for position of focal point. The focal point |
| can be placed every where outside the radius of the gradient now. |
| (WebCore::RenderSVGResourceRadialGradient::focalRadius): |
| Add new method to get the focal radius from SVGRadialGradientElement. |
| (WebCore::RenderSVGResourceRadialGradient::buildGradient): |
| * rendering/svg/RenderSVGResourceRadialGradient.h: |
| (RenderSVGResourceRadialGradient): |
| * rendering/svg/SVGRenderTreeAsText.cpp: |
| (WebCore::writeSVGResourceContainer): |
| Modify DRT output to include the focal radius. |
| * svg/RadialGradientAttributes.h: |
| (WebCore::RadialGradientAttributes::RadialGradientAttributes): |
| (WebCore::RadialGradientAttributes::fr): |
| (WebCore::RadialGradientAttributes::setFr): |
| (WebCore::RadialGradientAttributes::hasFr): |
| (RadialGradientAttributes): |
| New setters and getters for focal radius. |
| * svg/SVGRadialGradientElement.cpp: |
| (WebCore): |
| (WebCore::SVGRadialGradientElement::SVGRadialGradientElement): |
| (WebCore::SVGRadialGradientElement::isSupportedAttribute): |
| (WebCore::SVGRadialGradientElement::parseAttribute): |
| (WebCore::SVGRadialGradientElement::collectGradientAttributes): |
| (WebCore::SVGRadialGradientElement::selfHasRelativeLengths): |
| Ditto. |
| * svg/SVGRadialGradientElement.h: |
| (SVGRadialGradientElement): |
| * svg/SVGRadialGradientElement.idl: |
| * svg/svgattrs.in: |
| Add 'fr' as new attribute to the SVG attribute list. |
| |
| 2012-10-07 Glenn Adams <glenn@skynav.com> |
| |
| Use start instead of -webkit-auto in default and quirks mode stylesheets. |
| https://bugs.webkit.org/show_bug.cgi?id=98609 |
| |
| Reviewed by Antti Koivisto. |
| |
| Change text-align use of legacy '-webkit-auto' to 'start' in the few places where it is used |
| in default/quirks stylesheets. |
| |
| No new tests. No change of rendering/styling behavior. No performance impact. |
| |
| * css/html.css: |
| (input, textarea, keygen, select, button, isindex): |
| (ruby > rt): |
| * css/quirks.css: |
| (table): |
| |
| 2012-10-06 Raul Hudea <rhudea@adobe.com> |
| |
| -webkit-clip-path should parse IRIs |
| https://bugs.webkit.org/show_bug.cgi?id=96381 |
| |
| Reviewed by Andreas Kling. |
| |
| Implemented the clipping via referencing a SVG clipPath. Currently it works only if the clipPath is defined |
| before using it on an HTML element. The forward reference issue is tracked via https://bugs.webkit.org/show_bug.cgi?id=90405. |
| |
| Tests: css3/masking/clip-path-reference-userSpaceOnUse.html |
| css3/masking/clip-path-reference.html |
| fast/masking/parsing-clip-path-iri.html |
| |
| * css/CSSComputedStyleDeclaration.cpp: |
| (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Add handling for SVG clipPath references. |
| * css/CSSParser.cpp: |
| (WebCore::CSSParser::parseValue): Add handling for SVG clipPath references. |
| * css/StyleBuilder.cpp: |
| (WebCore::ApplyPropertyClipPath::applyValue): Add handling for SVG references. |
| * rendering/ClipPathOperation.h: |
| (ReferenceClipPathOperation): Added a new class corresponding to SVG referenced clipPath. |
| (WebCore::ReferenceClipPathOperation::create): |
| (WebCore::ReferenceClipPathOperation::url): |
| (WebCore::ReferenceClipPathOperation::fragment): |
| (WebCore::ReferenceClipPathOperation::operator==): |
| (WebCore::ReferenceClipPathOperation::ReferenceClipPathOperation): |
| (WebCore): |
| * rendering/RenderLayer.cpp: |
| (WebCore::RenderLayer::paintLayerContents): Add handling for ReferenceClipPathOperation. |
| * rendering/svg/RenderSVGResourceClipper.h: |
| (RenderSVGResourceClipper): Made applyClippingToContext public as it needs to be called directly for HTML elements. |
| |
| 2012-10-06 Pratik Solanki <psolanki@apple.com> |
| |
| Reduce calls to CGImageSourceCopyPropertiesAtIndex from frameSizeAtIndex |
| https://bugs.webkit.org/show_bug.cgi?id=98607 |
| |
| Reviewed by Dan Bernstein. |
| |
| Refactor code so that we avoid a second call to CGImageSourceCopyPropertiesAtIndex under |
| ImageSource::frameSizeAtIndex(). |
| |
| No new tests because no functional change. |
| |
| * platform/graphics/cg/ImageSourceCG.cpp: |
| (WebCore::orientationFromProperties): |
| (WebCore): |
| (WebCore::ImageSource::frameSizeAtIndex): |
| (WebCore::ImageSource::orientationAtIndex): |
| |
| 2012-10-06 Mark Rowe <mrowe@apple.com> |
| |
| Build fix. |
| |
| Stop calling -[NSSliderCell setTitle:]. It's never done anything on OS X. |
| |
| * rendering/RenderThemeMac.mm: |
| (WebCore::RenderThemeMac::sliderThumbHorizontal): |
| (WebCore::RenderThemeMac::sliderThumbVertical): |
| |
| 2012-10-06 Andreas Kling <kling@webkit.org> |
| |
| Clipboard::types() should return an ordered collection. |
| <http://webkit.org/b/98547> |
| |
| Reviewed by Darin Adler. |
| |
| Let Clipboard::types() return a ListHashSet<String> instead of a HashSet<String> to make sure |
| it retains the order in which type strings are added. |
| |
| No test, this fixes an issue that was uncovered when lowering the default table size of WTF |
| hash tables, causing the HashSet<String> to rehash and reorder itself. |
| |
| * bindings/js/JSClipboardCustom.cpp: |
| (WebCore::JSClipboard::types): |
| * bindings/v8/custom/V8ClipboardCustom.cpp: |
| (WebCore::V8Clipboard::typesAccessorGetter): |
| * dom/Clipboard.h: |
| (Clipboard): |
| * platform/blackberry/ClipboardBlackBerry.cpp: |
| (WebCore::ClipboardBlackBerry::types): |
| * platform/blackberry/ClipboardBlackBerry.h: |
| (ClipboardBlackBerry): |
| * platform/chromium/ChromiumDataObject.cpp: |
| (WebCore::ChromiumDataObject::types): |
| * platform/chromium/ChromiumDataObject.h: |
| (ChromiumDataObject): |
| * platform/chromium/ClipboardChromium.cpp: |
| (WebCore::ClipboardChromium::types): |
| * platform/chromium/ClipboardChromium.h: |
| (ClipboardChromium): |
| * platform/efl/ClipboardEfl.cpp: |
| (WebCore::ClipboardEfl::types): |
| * platform/efl/ClipboardEfl.h: |
| (ClipboardEfl): |
| * platform/gtk/ClipboardGtk.cpp: |
| (WebCore::ClipboardGtk::types): |
| * platform/gtk/ClipboardGtk.h: |
| (ClipboardGtk): |
| * platform/mac/ClipboardMac.h: |
| (ClipboardMac): |
| * platform/mac/ClipboardMac.mm: |
| (WebCore::addHTMLClipboardTypesForCocoaType): |
| (WebCore::ClipboardMac::types): |
| * platform/qt/ClipboardQt.cpp: |
| (WebCore::ClipboardQt::types): |
| * platform/qt/ClipboardQt.h: |
| (ClipboardQt): |
| * platform/win/ClipboardWin.cpp: |
| (WebCore::addMimeTypesForFormat): |
| (WebCore::ClipboardWin::types): |
| * platform/win/ClipboardWin.h: |
| (ClipboardWin): |
| * platform/wx/ClipboardWx.cpp: |
| (WebCore::ClipboardWx::types): |
| * platform/wx/ClipboardWx.h: |
| (ClipboardWx): |
| |
| 2012-10-06 Geoffrey Garen <ggaren@apple.com> |
| |
| If Node X is reachable from JavaScript, all Nodes in the same tree should be kept alive |
| https://bugs.webkit.org/show_bug.cgi?id=88834 |
| |
| Reviewed by Gavin Barraclough. |
| |
| Follow-up patch to address some comments by Darin Adler. |
| |
| * bindings/js/JSNodeCustom.h: |
| (WebCore::willCreatePossiblyOrphanedTreeByRemoval): Save some space by |
| collapsing comment lines. Use Node::hasChildNodes() for brevity. |
| |
| 2012-10-06 Benjamin Poulain <benjamin@webkit.org> |
| |
| Fix weird use of KURL's protocolIs |
| https://bugs.webkit.org/show_bug.cgi?id=98584 |
| |
| Reviewed by Adam Barth. |
| |
| Converting a KURL to string is a bad idea. |
| |
| Invalid URLs can return a string that pass the tests, while an |
| invalid URL will fail protocolIs(). |
| |
| * loader/cache/CachedResource.cpp: |
| (WebCore::CachedResource::removeClient): |
| * platform/graphics/MediaPlayer.cpp: |
| (WebCore::MediaPlayer::load): |
| * platform/network/DataURL.cpp: |
| (WebCore::handleDataURL): |
| |
| 2012-10-06 Dan Bernstein <mitz@apple.com> |
| |
| WebCore part of <rdar://problem/12446507> [mac] WebKit clients cannot change the behavior of text-rendering: auto |
| https://bugs.webkit.org/show_bug.cgi?id=98601 |
| |
| Reviewed by Darin Adler. |
| |
| * WebCore.exp.in: Exported Font::setDefaultTypesettingFeatures(). |
| * platform/graphics/Font.cpp: |
| (WebCore::Font::s_defaultTypesettingFeatures): Defined this static. |
| (WebCore::Font::setDefaultTypesettingFeatures): Added this setter. |
| (WebCore::Font::defaultTypesettingFeatures): Added this getter. |
| * platform/graphics/Font.h: |
| (WebCore::Font::typesettingFeatures): Changed to use the value of the new static member |
| s_defaultTypesettingFeatures, rather than 0, if text-redering is set to auto. |
| |
| 2012-10-04 Geoffrey Garen <ggaren@apple.com> |
| |
| If Node X is reachable from JavaScript, all Nodes in the same tree should be kept alive |
| https://bugs.webkit.org/show_bug.cgi?id=88834 |
| |
| Reviewed by Gavin Barraclough. |
| |
| * bindings/js/JSNodeCustom.cpp: |
| (WebCore::isObservable): Clarified this comment, since it seems to have |
| misled some folks. |
| |
| * bindings/js/JSNodeCustom.h: |
| (WebCore::willCreatePossiblyOrphanedTreeByRemoval): New helper function |
| to ensure that a disconnected tree is visible to JavaScript. |
| |
| * bindings/js/ScriptState.cpp: |
| (WebCore::mainWorldScriptState): Need to check for null because a document's |
| frame can be null. |
| |
| * dom/ContainerNode.cpp: |
| (WebCore::dispatchChildRemovalEvents): When we remove a subtree from the |
| document, we sever the reference that JavaScript previously held by |
| referencing its root. So, we give JavaScript an opportunity to establish |
| a reference to the new root. |
| |
| 2012-10-06 Byungwoo Lee <bw80.lee@samsung.com> |
| |
| Fix build warning : -Wunused-parameter. |
| https://bugs.webkit.org/show_bug.cgi?id=98583 |
| |
| Reviewed by Kentaro Hara. |
| |
| Use ASSERT_UNUSED() macro to remove build warning. |
| |
| * plugins/PluginStream.cpp: |
| (WebCore::PluginStream::delayDeliveryTimerFired): |
| (WebCore::PluginStream::didReceiveResponse): |
| (WebCore::PluginStream::didReceiveData): |
| (WebCore::PluginStream::didFail): |
| (WebCore::PluginStream::didFinishLoading): |
| * plugins/PluginView.cpp: |
| (WebCore::PluginView::requestTimerFired): |
| (WebCore::PluginView::invalidateTimerFired): |
| |
| 2012-10-05 Adam Barth <abarth@webkit.org> |
| |
| [V8] toV8(Node*, ...) does more work than needed (6% faster on dom-traverse) |
| https://bugs.webkit.org/show_bug.cgi?id=98567 |
| |
| Reviewed by Kentaro Hara. |
| |
| This patch introduces toV8Fast for Node*. This function works a |
| differently from the existing toV8 function in two ways: |
| |
| 1) It uses the inline wrapper cache in Node to determine if we're |
| executing in the main world. This is faster both in the case when |
| isolated worlds exist because we don't need to retrieve any state |
| for the current context. |
| |
| 2) It doesn't attempt to inline the hash table lookup used to find the |
| wrapper in the isolated world. There isn't a big need to inline this |
| code since performance in the isolated world case is dominated by |
| the hash table lookup. |
| |
| Because of these two changes, toV8Fast is small enough to inline into |
| each attribute getter profitably. Over time, I would like to convert |
| all the performance critical uses of toV8(Node*) to toV8Fast. At that |
| point, we can delete toV8 and rename toV8Slow to toV8. |
| |
| * bindings/scripts/CodeGeneratorV8.pm: |
| (GenerateHeader): |
| (GenerateNormalAttrGetter): |
| |
| 2012-10-05 Huang Dongsung <luxtella@company100.net> |
| |
| [mac] REGRESSION (r122215): Animated GIF outside the viewport doesn't play when scrolled into view. |
| https://bugs.webkit.org/show_bug.cgi?id=94874 |
| |
| Reviewed by Simon Fraser. |
| |
| Rollback previous patch because this patch caused two problems. |
| 1. GIF animation is occasionally paused when tiled scrolling is enabled. |
| 2. This change regressed Apple's Membuster benchmark by ~20% (80MB.) |
| |
| * loader/cache/CachedImage.cpp: |
| (WebCore::CachedImage::shouldPauseAnimation): |
| * loader/cache/CachedImage.h: |
| (CachedImage): |
| * loader/cache/CachedResource.h: |
| * loader/cache/MemoryCache.cpp: |
| (WebCore::MemoryCache::pruneLiveResourcesToSize): |
| * rendering/RenderObject.cpp: |
| (WebCore::RenderObject::willRenderImage): |
| |
| 2012-10-05 Xianzhu Wang <wangxianzhu@chromium.org> |
| |
| OpenTypeVerticalData issue with DroidSansFallback.ttf on chromium-android and chromium-linux |
| https://bugs.webkit.org/show_bug.cgi?id=97824 |
| |
| Reviewed by Tony Chang. |
| |
| The issue occurred when a font that contains vert GSUB table but doesn't have |
| a DFLT script and the first script doesn't have vert feature. Added logic to |
| handle the case. |
| |
| Test: fast/writing-mode/vertical-subst-font-vert-no-dflt.html |
| |
| * platform/graphics/opentype/OpenTypeVerticalData.cpp: |
| (FeatureList): |
| (WebCore::OpenType::FeatureList::findFeature): Added to find the matching feature in FeatureList. |
| (WebCore::OpenType::GSUBTable::feature): Added logic to handle the case of no DFLT script and no vert feature under the first script. |
| |
| 2012-10-05 Tony Chang <tony@chromium.org> |
| |
| Form controls should always be horizontal |
| https://bugs.webkit.org/show_bug.cgi?id=98563 |
| |
| Reviewed by Ojan Vafai. |
| |
| Fix a regression where we didn't force form controls to be horizontal. |
| |
| Tests: fast/dom/HTMLMeterElement/meter-writing-mode.html |
| fast/dom/HTMLProgressElement/progress-writing-mode.html |
| fast/table/colspanMinWidth-vertical.html |
| |
| * css/html.css: |
| (input, textarea, keygen, select, button, isindex, meter, progress): |
| |
| 2012-10-05 Sheriff Bot <webkit.review.bot@gmail.com> |
| |
| Unreviewed, rolling out r130556 and r130564. |
| http://trac.webkit.org/changeset/130556 |
| http://trac.webkit.org/changeset/130564 |
| https://bugs.webkit.org/show_bug.cgi?id=98572 |
| |
| The patch wasn't reviewed by a reviewer and it is breaking |
| Chromium Windows (Requested by jchaffraix on #webkit). |
| |
| * WebCore.exp.in: |
| * WebCore.xcodeproj/project.pbxproj: |
| * css/mediaControls.css: |
| (video::-webkit-media-text-track-container): |
| (video::-webkit-media-text-track-past-nodes): |
| (video::-webkit-media-text-track-future-nodes): |
| (video::-webkit-media-text-track-display): |
| * html/HTMLMediaElement.cpp: |
| (WebCore::HTMLMediaElement::HTMLMediaElement): |
| (WebCore::HTMLMediaElement::attach): |
| (WebCore::HTMLMediaElement::userIsInterestedInThisLanguage): |
| (WebCore::HTMLMediaElement::userIsInterestedInThisTrackKind): |
| (WebCore::HTMLMediaElement::setClosedCaptionsVisible): |
| (WebCore::HTMLMediaElement::updateClosedCaptionsControls): |
| * html/HTMLMediaElement.h: |
| (HTMLMediaElement): |
| * html/shadow/MediaControlElements.cpp: |
| (WebCore): |
| (WebCore::MediaControlTextTrackContainerElement::updateSizes): |
| * html/shadow/MediaControlElements.h: |
| (MediaControlTextTrackContainerElement): |
| * html/shadow/MediaControlRootElement.cpp: |
| (WebCore::MediaControlRootElement::updateTextTrackDisplay): |
| * html/shadow/MediaControlRootElement.h: |
| (MediaControlRootElement): |
| * html/shadow/MediaControls.h: |
| (MediaControls): |
| * html/track/TextTrack.cpp: |
| (WebCore::TextTrack::TextTrack): |
| (WebCore::TextTrack::isValidKindKeyword): |
| (WebCore::TextTrack::setKind): |
| (WebCore::TextTrack::setMode): |
| (WebCore::TextTrack::mode): |
| * html/track/TextTrack.h: |
| (WebCore::TextTrack::create): |
| (WebCore::TextTrack::kind): |
| (TextTrack): |
| (WebCore::TextTrack::label): |
| (WebCore::TextTrack::setLabel): |
| (WebCore::TextTrack::language): |
| (WebCore::TextTrack::setLanguage): |
| * html/track/TextTrackCue.cpp: |
| (WebCore::TextTrackCueBox::TextTrackCueBox): |
| (WebCore::TextTrackCueBox::shadowPseudoId): |
| (WebCore): |
| (WebCore::TextTrackCue::updateDisplayTree): |
| * html/track/TextTrackCue.h: |
| (TextTrackCueBox): |
| (TextTrackCue): |
| * platform/mac/WebCoreSystemInterface.h: |
| * platform/mac/WebCoreSystemInterface.mm: |
| * rendering/CaptionPreferencesChangedListener.h: Removed. |
| * rendering/RenderTheme.h: |
| (WebCore): |
| (RenderTheme): |
| * rendering/RenderThemeMac.h: |
| (RenderThemeMac): |
| * rendering/RenderThemeMac.mm: |
| (WebCore): |
| (WebCore::RenderThemeMac::RenderThemeMac): |
| (WebCore::RenderThemeMac::~RenderThemeMac): |
| |
| 2012-10-05 Tim Horton <timothy_horton@apple.com> |
| |
| [cg] GraphicsContextCG should ask CG whether the shadow offset workaround is required |
| https://bugs.webkit.org/show_bug.cgi?id=98565 |
| <rdar://problem/12436468> |
| |
| Reviewed by Simon Fraser. |
| |
| On Mountain Lion and above, CG can tell us whether we need to work around incorrect |
| shadow offsets. Prior to Mountain Lion, we should assume we need to apply the workaround. |
| |
| No new tests, as this requires an obscure configuration to test. |
| |
| * WebCore.exp.in: |
| * platform/graphics/cg/GraphicsContextCG.cpp: |
| (WebCore::applyShadowOffsetWorkaroundIfNeeded): |
| (WebCore::GraphicsContext::setPlatformShadow): |
| * platform/mac/WebCoreSystemInterface.h: Add wkCGContextDrawsWithCorrectShadowOffsets. |
| * platform/mac/WebCoreSystemInterface.mm: Add wkCGContextDrawsWithCorrectShadowOffsets. |
| |
| 2012-10-05 Anders Carlsson <andersca@apple.com> |
| |
| Try to fix the build. |
| |
| * rendering/RenderThemeMac.mm: |
| (WebCore::RenderThemeMac::captionsWindowColor): |
| |
| 2012-10-05 Eric Seidel <eric@webkit.org> |
| |
| Remove needless virtual calls and inline RenderStyle::logical* to make table layout faster |
| https://bugs.webkit.org/show_bug.cgi?id=98550 |
| |
| Reviewed by Andreas Kling. |
| |
| This shaved another 5% (100ms) off of the runtime of resizecol.html microbenchmark: |
| http://www.robohornet.org/tests/resizecol.html |
| |
| * rendering/AutoTableLayout.cpp: |
| (WebCore::AutoTableLayout::recalcColumn): |
| * rendering/style/RenderStyle.cpp: |
| * rendering/style/RenderStyle.h: |
| |
| 2012-10-04 Eric Carlson <eric.carlson@apple.com> |
| |
| Allow ports to override text track rendering style |
| https://bugs.webkit.org/show_bug.cgi?id=97800 |
| <rdar://problem/12044964> |
| |
| Reviewed by Silvia Pfeiffer. |
| |
| * WebCore.exp.in: Export new WebkitSystemInterface functions. |
| * WebCore.xcodeproj/project.pbxproj: Add CaptionPreferencesChangedListener.h. |
| |
| * css/mediaControls.css: Rearrange the caption CSS so it is possible to style the cue window, |
| background, and text independently. |
| |
| * html/HTMLMediaElement.cpp: |
| (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_disableCaptions with theme->userPrefersCaptions(). |
| (WebCore::HTMLMediaElement::attach): Register for caption preferences change callbacks. |
| (WebCore::HTMLMediaElement::detach): Unregister for caption preferences change callbacks. |
| (WebCore::HTMLMediaElement::userPrefersCaptions): Return theme->userPrefersCaptions(). |
| (WebCore::HTMLMediaElement::userIsInterestedInThisTrackKind): Consider userPrefersCaptions(). |
| (WebCore::HTMLMediaElement::setClosedCaptionsVisible): Move the code that marks all tracks as |
| un-configured to markCaptionAndSubtitleTracksAsUnconfigured so it can be reused. |
| (WebCore::HTMLMediaElement::captionPreferencesChanged): New, force a reevaluation of all text tracks. |
| (WebCore::HTMLMediaElement::markCaptionAndSubtitleTracksAsUnconfigured): New, code moved from |
| setClosedCaptionsVisible |
| * html/HTMLMediaElement.h: Inherit from CaptionPreferencesChangedListener. |
| |
| * html/shadow/MediaControlElements.cpp: |
| (WebCore::MediaControlTextTrackContainerElement::userCaptionPreferencesChanged): New, if theme |
| has a captions style sheet override, inject it into the current page group, otherwise |
| remove injected sheet. |
| (WebCore::MediaControlTextTrackContainerElement::updateSizes): Get rid of unnecessary member |
| variable. Get caption font scale from theme instead of hard coding. |
| * html/shadow/MediaControlElements.h: |
| |
| * html/shadow/MediaControlRootElement.cpp: |
| (WebCore::MediaControlRootElement::userCaptionPreferencesChanged): New. |
| (WebCore::MediaControlRootElement::updateTextTrackDisplay): |
| * html/shadow/MediaControlRootElement.h: Add userCaptionPreferencesChanged, minor cleanup. |
| |
| * html/shadow/MediaControls.h: |
| (WebCore::MediaControls::userCaptionPreferencesChanged): New. |
| |
| * html/track/TextTrackCue.cpp: |
| (WebCore::TextTrackCueBox::TextTrackCueBox): Set the shadow pseudo id. |
| (WebCore::TextTrackCueBox::textTrackCueBoxShadowPseudoId): New, class method to return the |
| shadow pseudo id so it can be used elsewhere. |
| (WebCore::TextTrackCueBox::shadowPseudoId): Call textTrackCueBoxShadowPseudoId. |
| (WebCore::TextTrackCue::pastNodesShadowPseudoId): New, class method to return the |
| shadow pseudo id so it can be used elsewhere. |
| (WebCore::TextTrackCue::futureNodesShadowPseudoId): Ditto. |
| (WebCore::TextTrackCue::updateDisplayTree): |
| * html/track/TextTrackCue.h: |
| |
| * platform/mac/WebCoreSystemInterface.h: Updated. |
| * platform/mac/WebCoreSystemInterface.mm: Ditto. |
| |
| * rendering/CaptionPreferencesChangedListener.h: Added. |
| |
| * rendering/RenderTheme.h: |
| (WebCore::RenderTheme::userPrefersCaptions): New, default do-nothing implementation. |
| (WebCore::RenderTheme::userHasCaptionPreferences): Ditto. |
| (WebCore::RenderTheme::captionFontSizeScale): Ditto. |
| (WebCore::RenderTheme::captionsStyleSheetOverride): Ditto. |
| (WebCore::RenderTheme::registerForCaptionPreferencesChangedCallbacks): Ditto. |
| (WebCore::RenderTheme::unregisterForCaptionPreferencesChangedCallbacks): Ditto. |
| |
| * rendering/RenderThemeMac.h: |
| * rendering/RenderThemeMac.mm: |
| (WebCore::userCaptionPreferencesChangedNotificationCallback): New, receives preference changed notifications. |
| (WebCore::RenderThemeMac::RenderThemeMac): Initialize m_listeningForCaptionPreferenceNotifications. |
| (WebCore::RenderThemeMac::~RenderThemeMac): Unregister for notifications if necessary. |
| (WebCore::RenderThemeMac::userHasCaptionPreferences): New, passthrough to WKSI function. |
| (WebCore::RenderThemeMac::userPrefersCaptions): Ditto. |
| (WebCore::RenderThemeMac::captionsWindowColor): Return Color with user's caption window color preference. |
| (WebCore::RenderThemeMac::captionsBackgroundColor): Return Color with user's caption |
| background color preference. |
| (WebCore::RenderThemeMac::captionsTextColor): Return Color with user's caption text color preference. |
| (WebCore::RenderThemeMac::captionsEdgeColorForTextColor): Return Color for text edge effect. |
| (WebCore::RenderThemeMac::cssPropertyWithTextEdgeColor): Return String with CSS to set a text-shadow |
| or webkit-text-stroke property. |
| (WebCore::RenderThemeMac::cssColorProperty): Return a String with css to set a property |
| with a color value. |
| (WebCore::RenderThemeMac::captionsTextEdgeStyle): Return a String with css to style caption |
| text with the user's preferred text edge stye. |
| (WebCore::RenderThemeMac::captionsDefaultFont): Return a String with css to style caption |
| text with the user's preferred font. |
| (WebCore::RenderThemeMac::captionsStyleSheetOverride): Return a String with css to style captions |
| with the user's preferred style. |
| (WebCore::RenderThemeMac::captionFontSizeScale): Return the user's preferred caption font scale. |
| (WebCore::RenderThemeMac::captionPreferencesChanged): Notify listeners of caption preference change. |
| (WebCore::RenderThemeMac::registerForCaptionPreferencesChangedCallbacks): Add a caption preferences |
| changes listener. |
| (WebCore::RenderThemeMac::unregisterForCaptionPreferencesChangedCallbacks): Remove a caption preferences |
| changes listener. |
| |
| 2012-10-05 Takashi Sakamoto <tasak@google.com> |
| |
| Inline continuations create :after generated content on style recalcs |
| https://bugs.webkit.org/show_bug.cgi?id=93170 |
| |
| Reviewed by Abhishek Arya. |
| |
| The bug is caused by RenderInline::styleDidChange's setContinuation(0). |
| RenderObjectChildList uses continuation to know whether the given |
| renderer should have AFTER render object or not. |
| However, setContinuation(0) makes RenderObjectChildList to |
| misunderstand that all continuations are last continuation. |
| To avoid the misunderstanding, added a new flag to class |
| RenderObejctChildList to enable/disable updating :after content (and |
| also :before content). |
| |
| Tests: fast/css-generated-content/after-with-inline-continuation.html |
| fast/css-generated-content/dynamic-apply-after-for-inline.html |
| |
| * rendering/RenderInline.cpp: |
| (WebCore::RenderInline::styleDidChange): |
| Disable upating :after content for continuations which are not |
| the last one during setStyle just after setContinuation(0). |
| The setStyle invokes RenderInline::styleDidChange and also invokes |
| updateBeforeAfterContent via the styleDidChange. This means, |
| the last continuation's updateBeforeAfterContent is also invoked |
| after setContinuation(0). We have to update :after for the last |
| continuation. |
| * rendering/RenderObjectChildList.cpp: |
| (WebCore): |
| (WebCore::RenderObjectChildList::updateBeforeAfterContent): |
| If s_updateBeforeAfterContent is false, quickly exit |
| updateBeforeAfterContent. |
| * rendering/RenderObjectChildList.h: |
| (RenderObjectChildList): |
| Added a new flag s_enableUpdateBeforeAfterContent to enable/disable |
| updating :before or :after content. |
| |
| 2012-10-05 Simon Fraser <simon.fraser@apple.com> |
| |
| Don't assume that TileCache layers are opaque |
| https://bugs.webkit.org/show_bug.cgi?id=98555 |
| |
| Reviewed by Dean Jackson. |
| |
| TileCache previously set all its tile CALayers as opaque. |
| However, we will need non-opaque tile caches when we use this |
| tile cache for tiled layers, so add a member function to |
| control tile opacity. |
| |
| RenderLayerBacking already calls m_graphicsLayer->setContentsOpaque() |
| using the FrameView's notion of opaqueness, so this change will |
| cause the main tile cache to be non-opaque if external forces have |
| set the FrameView to be non-opaque. |
| |
| Also tweak the layer border widths on tiled layers. |
| |
| * platform/graphics/ca/mac/TileCache.h: |
| (TileCache): |
| (WebCore::TileCache::tilesAreOpaque): |
| * platform/graphics/ca/mac/TileCache.mm: |
| (WebCore::TileCache::TileCache): |
| (WebCore::TileCache::setTilesOpaque): |
| (WebCore::TileCache::createTileLayer): |
| * platform/graphics/ca/mac/WebTileCacheLayer.mm: |
| (-[WebTileCacheLayer setOpaque:]): |
| (-[WebTileCacheLayer isOpaque]): |
| (-[WebTileCacheLayer setBorderWidth:]): |
| |
| 2012-10-05 Tony Chang <tony@chromium.org> |
| |
| Fix margin box ascent computation in flexbox |
| https://bugs.webkit.org/show_bug.cgi?id=98540 |
| |
| Reviewed by Ojan Vafai. |
| |
| The margin box ascent doesn't depend on the margin below the box. |
| |
| Tests: css3/flexbox/flex-align.html: Fixed a test case and removed a FIXME. |
| css3/flexbox/flex-align-vertical-writing-mode.html: Similar test case. |
| |
| * rendering/RenderFlexibleBox.cpp: |
| (WebCore::RenderFlexibleBox::marginBoxAscentForChild): |
| |
| 2012-10-05 Ojan Vafai <ojan@chromium.org> |
| |
| Deprecated flexboxes subtract scrollbar width/height twice |
| https://bugs.webkit.org/show_bug.cgi?id=98552 |
| |
| Reviewed by Tony Chang. |
| |
| This is a regression from http://trac.webkit.org/changeset/119507. |
| The problem is that contentHeight subtracts the scrollbar and |
| RenderDeprecatedFlexbox subtracts the scrollbar. |
| |
| -Make it so that we only access override sizes if one has been set. |
| I think this makes the calling code more clear. |
| -If we don't have one set, grab the height/width - borderAndPadding. |
| -Add a FIXME to change this all back to being borderbox sizes. |
| There's something trick with making table padding/border work right for that |
| though (noted in the original patch). |
| |
| Test: fast/flexbox/flexing-overflow-scroll-item.html |
| |
| * rendering/RenderBox.cpp: |
| (WebCore::RenderBox::overrideLogicalContentWidth): |
| (WebCore::RenderBox::overrideLogicalContentHeight): |
| (WebCore::RenderBox::availableLogicalHeightUsing): |
| * rendering/RenderBox.h: |
| (RenderBox): |
| * rendering/RenderDeprecatedFlexibleBox.cpp: |
| (WebCore::contentWidthForChild): |
| (WebCore): |
| (WebCore::contentHeightForChild): |
| (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox): |
| (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox): |
| (WebCore::RenderDeprecatedFlexibleBox::allowedChildFlex): |
| |
| 2012-10-05 Eric Seidel <eric@webkit.org> |
| |
| Make tables which don't use col/row span much faster to layout |
| https://bugs.webkit.org/show_bug.cgi?id=98221 |
| |
| Reviewed by Julien Chaffraix. |
| |
| My sense is that most tables on webpages do not use colspan/rowspan |
| so I stole another bit from RenderTableCell::m_column to avoid |
| having to re-parse the colSpan/rowSpan attributes for every cell |
| when doing table layout. |
| This made these symbols disappear from biggrid.html/redraw.html (dglazkov's spreadsheets benchmarks) |
| as well as moved our robohornet/resizecol.html number from an average of 3221ms to 2608ms (~20%!). |
| |
| I removed m_hasHTMLTableCellElement (from http://trac.webkit.org/changeset/97691) |
| since it was attempting to do the same sort of optimization. |
| |
| * rendering/RenderTableCell.cpp: |
| (WebCore::RenderTableCell::RenderTableCell): |
| (WebCore::RenderTableCell::parseColSpanFromDOM): |
| (WebCore::RenderTableCell::parseRowSpanFromDOM): |
| (WebCore::RenderTableCell::layout): |
| * rendering/RenderTableCell.h: |
| (WebCore::RenderTableCell::colSpan): |
| (WebCore::RenderTableCell::rowSpan): |
| (RenderTableCell): |
| |
| 2012-10-05 Oli Lan <olilan@chromium.org> |
| |
| Allow EventHandler to handle longpress gestures, including longpress selection on Android. |
| https://bugs.webkit.org/show_bug.cgi?id=98173 |
| |
| Reviewed by Ryosuke Niwa. |
| |
| Adds handling for GestureLongPress to EventHandler::handleGestureEvent, with a new |
| handleGestureLongPress method. On Android, this method selects the closest word |
| if the gesture event was over non-link text. |
| |
| This is tested via a new chromium test WebViewTest.LongPressSelection. |
| |
| * page/EventHandler.cpp: |
| (WebCore::EventHandler::selectClosestWordFromHitTestResult): |
| (WebCore::EventHandler::selectClosestWordFromMouseEvent): |
| (WebCore): |
| (WebCore::EventHandler::handleGestureEvent): |
| (WebCore::EventHandler::handleGestureLongPress): |
| * page/EventHandler.h: |
| (EventHandler): |
| |
| 2012-10-05 Tab Atkins <jackalmage@gmail.com> |
| |
| <marquee> element forces itself to be at least 1em high, regardless of 'height' declaration |
| https://bugs.webkit.org/show_bug.cgi?id=18098 |
| |
| Reviewed by Eric Seidel. |
| |
| This restriction originally existed to match IE, but IE changed some time ago to be normal instead. |
| We're the last browser, afaict, to still enforce this de-facto restriction. |
| This patch makes <marquee> instead act like a normal element. |
| |
| Tests: fast/css/MarqueeLayoutTest.html (rewritten from the older, bad version) |
| |
| * rendering/RenderMarquee.cpp: |
| (WebCore::RenderMarquee::updateMarqueeStyle): |
| |
| 2012-10-05 Joe Mason <jmason@rim.com> |
| |
| [BlackBerry] Fix regression in proxy auth |
| https://bugs.webkit.org/show_bug.cgi?id=98533 |
| |
| Reviewed by Yong Li. |
| |
| The proxy auth dialog gets the proxy address from |
| BlackBerry::Platform::Settings::proxyAddress, which returns |
| "host:port", but we try to parse it with a KURL, which expects |
| "scheme://host:port". Since this is an http proxy, add http:// to the |
| url to get it to parse. |
| |
| PR 220567. |
| |
| * platform/network/blackberry/NetworkJob.cpp: |
| (WebCore::NetworkJob::sendRequestWithCredentials): |
| |
| 2012-10-05 Jer Noble <jer.noble@apple.com> |
| |
| No autorelease pool in place, causing buildup of autoreleased objects. |
| https://bugs.webkit.org/show_bug.cgi?id=98522 |
| <rdar://problem/11647950> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Wrap each timer callback in an AutodrainPool, ensuring an autorelease |
| pool is present during calls from C/C++ into ObjC. |
| |
| * platform/cf/RunLoopTimerCF.cpp: |
| (WebCore::timerFired): |
| |
| 2012-10-05 Ryosuke Niwa <rniwa@webkit.org> |
| |
| Deleting across multiple paragraphs can change the style of surrounding text |
| https://bugs.webkit.org/show_bug.cgi?id=97266 |
| |
| Reviewed by Levi Weintraub. |
| |
| Preserve editing styles from CSS rules in wrappingStyleForSerialization as well as inline styles |
| even when we're not annotating. We don't want to preserve all styles because it's against |
| the user expectation to keep borders, etc... when merging paragraphs. We also don't want to copy |
| styles from a mail blockquote because that's not a style the user has applied. See the comment |
| in EditingStyle::wrappingStyleForSerialization. |
| |
| Test: editing/deleting/merge-paragraph-with-style-from-rule.html |
| |
| * editing/EditingStyle.cpp: |
| (WebCore::EditingStyle::mergeInlineAndImplicitStyleOfElement): |
| (WebCore::EditingStyle::wrappingStyleForSerialization): |
| |
| 2012-10-05 Dan Bernstein <mitz@apple.com> |
| |
| Reversing a GlyphBuffer needlessly queries its size multiple times |
| https://bugs.webkit.org/show_bug.cgi?id=98530 |
| |
| Reviewed by Simon Fraser. |
| |
| No new tests because there is no change in behavior. |
| |
| * WebCore.xcodeproj/project.pbxproj: |
| * platform/graphics/FontFastPath.cpp: |
| (WebCore::Font::getGlyphsAndAdvancesForSimpleText): Replaced the condition |
| (i < glyphBuffer.size() / 2) with the equivalent test (i < end). |
| * platform/graphics/mac/FontComplexTextMac.cpp: |
| (WebCore::Font::getGlyphsAndAdvancesForComplexText): Ditto. |
| |
| 2012-10-05 José Dapena Paz <jdapena@igalia.com> |
| |
| [GTK] Add support for creating EGL contexts |
| https://bugs.webkit.org/show_bug.cgi?id=77921 |
| |
| Reviewed by Martin Robinson. |
| |
| This patch adds support for EGL, using OpenGL and OpenGL ES 2. Both |
| options are set up on compile time, with the configure options |
| --enable-egl and --enable-gles2. |
| |
| The implementation only adds support for EGL on top of X11, to |
| isolate the changes to the minimum. More changes should come |
| later to enable EGL for other targets (as Wayland). |
| |
| No new tests required, as existing WebGL and AC tests should cover |
| the cases. |
| |
| * GNUmakefile.am: |
| * GNUmakefile.list.am: |
| * platform/graphics/GraphicsContext3D.h: |
| (GraphicsContext3D): |
| * platform/graphics/OpenGLESShims.h: |
| * platform/graphics/cairo/GLContext.cpp: |
| (WebCore): |
| (WebCore::GLContext::sharedX11Display): |
| (WebCore::GLContext::cleanupSharedX11Display): |
| (WebCore::activeContextList): |
| (WebCore::GLContext::addActiveContext): |
| (WebCore::GLContext::removeActiveContext): |
| (WebCore::GLContext::cleanupActiveContextsAtExit): |
| (WebCore::GLContext::createContextForWindow): |
| (WebCore::GLContext::createOffscreenContext): |
| * platform/graphics/cairo/GLContext.h: |
| (GLContext): |
| * platform/graphics/cairo/GraphicsContext3DCairo.cpp: |
| (WebCore::GraphicsContext3D::create): |
| (WebCore::GraphicsContext3D::GraphicsContext3D): |
| (WebCore::GraphicsContext3D::~GraphicsContext3D): |
| (WebCore::GraphicsContext3D::isGLES2Compliant): |
| * platform/graphics/cairo/GraphicsContext3DPrivate.cpp: |
| (WebCore::GraphicsContext3DPrivate::paintToTextureMapper): |
| * platform/graphics/clutter/GraphicsContext3DClutter.cpp: |
| * platform/graphics/efl/GraphicsContext3DEfl.cpp: |
| * platform/graphics/egl/GLContextEGL.cpp: Added. |
| (WebCore): |
| (WebCore::sharedEGLDisplay): |
| (WebCore::getEGLConfig): |
| (WebCore::GLContextEGL::createWindowContext): |
| (WebCore::GLContextEGL::createPbufferContext): |
| (WebCore::GLContextEGL::createPixmapContext): |
| (WebCore::GLContextEGL::createContext): |
| (WebCore::GLContextEGL::GLContextEGL): |
| (WebCore::GLContextEGL::~GLContextEGL): |
| (WebCore::GLContextEGL::canRenderToDefaultFramebuffer): |
| (WebCore::GLContextEGL::defaultFrameBufferSize): |
| (WebCore::GLContextEGL::makeContextCurrent): |
| (WebCore::GLContextEGL::swapBuffers): |
| (WebCore::GLContextEGL::waitNative): |
| (WebCore::GLContextEGL::platformContext): |
| * platform/graphics/egl/GLContextEGL.h: Added. |
| (WebCore): |
| (GLContextEGL): |
| * platform/graphics/glx/GLContextGLX.cpp: |
| (WebCore::GLContextGLX::createWindowContext): |
| (WebCore::GLContextGLX::createPbufferContext): |
| (WebCore::GLContextGLX::createPixmapContext): |
| (WebCore::GLContextGLX::createContext): |
| (WebCore::GLContextGLX::~GLContextGLX): |
| (WebCore::GLContextGLX::defaultFrameBufferSize): |
| (WebCore::GLContextGLX::makeContextCurrent): |
| (WebCore::GLContextGLX::swapBuffers): |
| (WebCore): |
| (WebCore::GLContextGLX::waitNative): |
| * platform/graphics/glx/GLContextGLX.h: |
| (GLContextGLX): |
| * platform/graphics/mac/GraphicsContext3DMac.mm: |
| * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: |
| (WebCore::GraphicsContext3D::releaseShaderCompiler): |
| (WebCore): |
| * platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp: |
| (WebCore::GraphicsContext3D::readPixels): |
| (WebCore::GraphicsContext3D::reshapeFBOs): |
| (WebCore::GraphicsContext3D::renderbufferStorage): |
| * platform/graphics/qt/GraphicsContext3DQt.cpp: |
| * platform/graphics/texmap/TextureMapper.h: |
| * platform/gtk/RedirectedXCompositeWindow.cpp: |
| (WebCore::RedirectedXCompositeWindow::RedirectedXCompositeWindow): |
| (WebCore::RedirectedXCompositeWindow::~RedirectedXCompositeWindow): |
| (WebCore::RedirectedXCompositeWindow::resize): |
| * platform/gtk/RedirectedXCompositeWindow.h: |
| |
| 2012-10-04 Jon Lee <jonlee@apple.com> |
| |
| Add a setting to enable plugin snapshotting |
| https://bugs.webkit.org/show_bug.cgi?id=98319 |
| <rdar://problem/12426480> |
| |
| Reviewed by Brady Eidson. |
| |
| Add a new bit for this preference. |
| |
| * page/Settings.cpp: |
| (WebCore::Settings::Settings): Preference is false by default. |
| * page/Settings.h: Added m_plugInSnapshottingEnabled bit. |
| (WebCore::Settings::setPlugInSnapshottingEnabled): Set the bit. |
| (WebCore::Settings::plugInSnapshottingEnabled): Return the bit. |
| |
| 2012-10-05 Vsevolod Vlasov <vsevik@chromium.org> |
| |
| Unreviewed inspector front-end closure compilaiton fixes. |
| |
| * inspector/InjectedScriptCanvasModuleSource.js: |
| * inspector/InjectedScriptExterns.js: |
| (InjectedScriptHost.prototype.getInternalProperties): |
| * inspector/front-end/DockController.js: |
| * inspector/front-end/externs.js: |
| (InspectorFrontendHostAPI.prototype.requestSetDockSide): |
| |
| 2012-10-05 Tab Atkins <jackalmage@gmail.com> |
| |
| Replace uses of prefixed properties with unprefixed versions in the UA stylesheets |
| https://bugs.webkit.org/show_bug.cgi?id=98453 |
| |
| Reviewed by Ojan Vafai. |
| |
| Switched 'border-radius' and 'box-shadow' to their unprefixed version in the UA stylesheets. |
| |
| No new tests, because the unprefixed properties have the same behavior as the prefixed. |
| |
| * css/fullscreenQuickTime.css: |
| (video:-webkit-full-screen::-webkit-media-controls-panel): |
| * css/html.css: |
| (keygen, select): |
| (select[size][multiple]): |
| (select[size="1"]): |
| (::-webkit-validation-bubble-message): |
| * css/themeBlackBerry.css: |
| (input, textarea): |
| * css/themeChromiumAndroid.css: |
| (select[size][multiple]): |
| * css/themeQtNoListboxes.css: |
| (select[size][multiple]): |
| * css/themeWin.css: |
| (select[size="1"]): |
| * css/view-source.css: |
| (.webkit-html-message-bubble): |
| |
| 2012-10-05 Kevin Ellis <kevers@chromium.org> |
| |
| [chromium] Only inflate the height of rows in a popup menu when a touch device is detected. |
| https://bugs.webkit.org/show_bug.cgi?id=98515 |
| |
| Reviewed by Adam Barth. |
| |
| Enforces a minimum row height for popup menus when a touch device is |
| detected. In a previous patch (r127597), the sizing of popup was |
| consolidated for touch and non-touch. Based on user feedback, reverting |
| to the old behavior for non-touch and only adding padding for touch |
| devices seems like a much safer strategy. This patch is not a direct |
| revert of r127567 since the padding previously used for touch is a bit |
| excessive. |
| |
| Covered by existing tests. |
| |
| * platform/chromium/PopupListBox.cpp: |
| (WebCore::PopupListBox::getRowHeight): |
| * platform/chromium/PopupMenuChromium.cpp: |
| (WebCore): |
| * platform/chromium/PopupMenuChromium.h: |
| (WebCore::PopupMenuChromium::optionRowHeightForTouch): |
| (WebCore::PopupMenuChromium::setOptionRowHeightForTouch): |
| (PopupMenuChromium): |
| |
| 2012-10-05 Alexander Pavlov <apavlov@chromium.org> |
| |
| Web Inspector: [Styles] Unable to edit properties in broken stylesheets |
| https://bugs.webkit.org/show_bug.cgi?id=98246 |
| |
| Reviewed by Vsevolod Vlasov. |
| |
| Pop source data for invalid rules off the stack whenever we have consecutive CSSParser::markRuleHeaderStart() invocations. |
| |
| Test: inspector/styles/parse-stylesheet-errors.html |
| |
| * css/CSSParser.cpp: |
| (WebCore::CSSParser::popRuleData): |
| (WebCore::CSSParser::markRuleHeaderStart): |
| (WebCore::CSSParser::markRuleBodyStart): |
| * css/CSSParser.h: |
| (CSSParser): |
| |
| 2012-10-05 Gabor Rapcsanyi <rgabor@webkit.org> |
| |
| Add ARM-NEON support to VectorMath in WebAudio |
| https://bugs.webkit.org/show_bug.cgi?id=98131 |
| |
| Reviewed by Zoltan Herczeg. |
| |
| Speed up vector operations in WebAudio with NEON intrinsics. |
| |
| * platform/audio/VectorMath.cpp: |
| (WebCore::VectorMath::vsma): |
| (WebCore::VectorMath::vsmul): |
| (WebCore::VectorMath::vadd): |
| (WebCore::VectorMath::vmul): |
| (WebCore::VectorMath::zvmul): |
| (WebCore::VectorMath::vsvesq): |
| (WebCore::VectorMath::vmaxmgv): |
| |
| 2012-10-05 Simon Hausmann <simon.hausmann@digia.com> |
| |
| Unreviewed, rolling out r130495. |
| http://trac.webkit.org/changeset/130495 |
| https://bugs.webkit.org/show_bug.cgi?id=98268 |
| |
| Made WK2 tests crash. |
| |
| * Target.pri: |
| * platform/qt/QStyleFacade.cpp: Removed. |
| * platform/qt/QStyleFacade.h: Removed. |
| |
| 2012-10-05 Simon Hausmann <simon.hausmann@digia.com> |
| |
| [Qt] Make RenderThemeQStyle/ScrollbarThemeQStyle compile without QStyle/QtWidgets |
| https://bugs.webkit.org/show_bug.cgi?id=98268 |
| |
| Reviewed by Tor Arne Vestbø. |
| |
| Extracted QStyle/QWidget related code into a QWebStyle class that implements the QStyleFacade interface. |
| |
| QStyleFacade is a pure interface that lives in WebCore/platform/qt |
| (next to RenderThemeQStyle and ScrollbarThemeQStyle) and provides a |
| minimal interface of what we need to draw with QStyle as well as basic |
| hit testing and metric retrieval. It also provides a |
| QStyleFacadeOption class that aggregates common meta-data for |
| rendering primitives, such as direction, rectangle, state (sunken, |
| enabled, etc.) or palette. It also provides some more slider/scrollbar |
| specific fields in a slider sub-structure. |
| |
| RenderThemeQStyle/ScrollbarThemeQStyle used to instantiate specific QStyleOption sub-classes and populate |
| them with state information from render objects, before calling straight to QStyle. Most of the common code |
| was encapsulated in StylePainterQStyle. |
| |
| The new RenderThemeQStyle/ScrolllbarThemeQStyle uses common code in |
| StylePainterQStyle to populate state into QStyleFacadeOption before |
| calling into QStyleFacade. |
| |
| The style facade is then implemented by QStyleFacadeImp, which extracts |
| meta-data from QStyleFacadeOption arguments, populates style |
| primitive specific QStyleOption objects and then calls on QStyle. |
| |
| RenderThemeQStyle/ScrollbarThemeQStyle can only use interface methods |
| from QStyleFacade. QStyleFacadeImp on the other hand will live in the |
| separate QtWebKitWidgets library in the future and therefore cannot use |
| any WebCore types. |
| |
| * Target.pri: |
| * platform/qt/QStyleFacade.cpp: Added. |
| (WebCore): |
| (WebCore::QStyleFacade::styleForPage): |
| * platform/qt/QStyleFacade.h: Added. |
| (WebCore): |
| (QStyleFacade): |
| (WebCore::QStyleFacade::~QStyleFacade): |
| (WebCore::QStyleFacadeOption::QStyleFacadeOption): |
| (QStyleFacadeOption): |
| * platform/qt/RenderThemeQStyle.cpp: Renamed from Source/WebKit/qt/WebCoreSupport/RenderThemeQStyle.cpp. |
| (WebCore): |
| (WebCore::RenderThemeQStyle::getStylePainter): |
| (WebCore::StylePainterQStyle::StylePainterQStyle): |
| (WebCore::StylePainterQStyle::init): |
| (WebCore::RenderThemeQStyle::create): |
| (WebCore::RenderThemeQStyle::setStyleFactoryFunction): |
| (WebCore::RenderThemeQStyle::styleFactory): |
| (WebCore::RenderThemeQStyle::RenderThemeQStyle): |
| (WebCore::RenderThemeQStyle::~RenderThemeQStyle): |
| (WebCore::RenderThemeQStyle::setPaletteFromPageClientIfExists): |
| (WebCore::RenderThemeQStyle::inflateButtonRect): |
| (WebCore::RenderThemeQStyle::computeSizeBasedOnStyle): |
| (WebCore::RenderThemeQStyle::adjustButtonStyle): |
| (WebCore::RenderThemeQStyle::setButtonPadding): |
| (WebCore::RenderThemeQStyle::paintButton): |
| (WebCore::RenderThemeQStyle::paintTextField): |
| (WebCore::RenderThemeQStyle::adjustTextAreaStyle): |
| (WebCore::RenderThemeQStyle::paintTextArea): |
| (WebCore::RenderThemeQStyle::setPopupPadding): |
| (WebCore::RenderThemeQStyle::colorPalette): |
| (WebCore::RenderThemeQStyle::paintMenuList): |
| (WebCore::RenderThemeQStyle::adjustMenuListButtonStyle): |
| (WebCore::RenderThemeQStyle::paintMenuListButton): |
| (WebCore::RenderThemeQStyle::animationDurationForProgressBar): |
| (WebCore::RenderThemeQStyle::paintProgressBar): |
| (WebCore::RenderThemeQStyle::paintSliderTrack): |
| (WebCore::RenderThemeQStyle::adjustSliderTrackStyle): |
| (WebCore::RenderThemeQStyle::paintSliderThumb): |
| (WebCore::RenderThemeQStyle::adjustSliderThumbStyle): |
| (WebCore::RenderThemeQStyle::paintSearchField): |
| (WebCore::RenderThemeQStyle::adjustSearchFieldDecorationStyle): |
| (WebCore::RenderThemeQStyle::paintSearchFieldDecoration): |
| (WebCore::RenderThemeQStyle::adjustSearchFieldResultsDecorationStyle): |
| (WebCore::RenderThemeQStyle::paintSearchFieldResultsDecoration): |
| (WebCore::RenderThemeQStyle::paintInnerSpinButton): |
| (WebCore::RenderThemeQStyle::initializeCommonQStyleOptions): |
| (WebCore::RenderThemeQStyle::adjustSliderThumbSize): |
| * platform/qt/RenderThemeQStyle.h: Renamed from Source/WebKit/qt/WebCoreSupport/RenderThemeQStyle.h. |
| (WebCore): |
| (RenderThemeQStyle): |
| (WebCore::RenderThemeQStyle::qStyle): |
| (StylePainterQStyle): |
| (WebCore::StylePainterQStyle::isValid): |
| (WebCore::StylePainterQStyle::paintButton): |
| (WebCore::StylePainterQStyle::paintTextField): |
| (WebCore::StylePainterQStyle::paintComboBox): |
| (WebCore::StylePainterQStyle::paintComboBoxArrow): |
| (WebCore::StylePainterQStyle::paintSliderTrack): |
| (WebCore::StylePainterQStyle::paintSliderThumb): |
| (WebCore::StylePainterQStyle::paintInnerSpinButton): |
| (WebCore::StylePainterQStyle::paintProgressBar): |
| (WebCore::StylePainterQStyle::paintScrollCorner): |
| (WebCore::StylePainterQStyle::paintScrollBar): |
| * platform/qt/ScrollbarThemeQStyle.cpp: Renamed from Source/WebKit/qt/WebCoreSupport/ScrollbarThemeQStyle.cpp. |
| (WebCore): |
| (WebCore::ScrollbarThemeQStyle::ScrollbarThemeQStyle): |
| (WebCore::ScrollbarThemeQStyle::~ScrollbarThemeQStyle): |
| (WebCore::scPart): |
| (WebCore::scrollbarPart): |
| (WebCore::initSliderStyleOption): |
| (WebCore::ScrollbarThemeQStyle::paint): |
| (WebCore::ScrollbarThemeQStyle::hitTest): |
| (WebCore::ScrollbarThemeQStyle::shouldCenterOnThumb): |
| (WebCore::ScrollbarThemeQStyle::invalidatePart): |
| (WebCore::ScrollbarThemeQStyle::scrollbarThickness): |
| (WebCore::ScrollbarThemeQStyle::thumbPosition): |
| (WebCore::ScrollbarThemeQStyle::thumbLength): |
| (WebCore::ScrollbarThemeQStyle::trackPosition): |
| (WebCore::ScrollbarThemeQStyle::trackLength): |
| (WebCore::ScrollbarThemeQStyle::paintScrollCorner): |
| * platform/qt/ScrollbarThemeQStyle.h: Renamed from Source/WebKit/qt/WebCoreSupport/ScrollbarThemeQStyle.h. |
| (WebCore): |
| (ScrollbarThemeQStyle): |
| (WebCore::ScrollbarThemeQStyle::qStyle): |
| |
| 2012-10-05 Andrei Bucur <abucur@adobe.com> |
| |
| Incomplete repaint of boxes with inset box-shadow and padding when resized |
| https://bugs.webkit.org/show_bug.cgi?id=59863 |
| |
| Reviewed by Simon Fraser. |
| |
| The patch extends the repaint rectangle to include the inset shadow extent for renderers that resize and need to be repainted. The rectangle computations are also better fragmented and easier to read. |
| |
| New Test: fast/repaint/box-shadow-inset-repaint.html |
| |
| * rendering/RenderObject.cpp: |
| (WebCore::RenderObject::repaintAfterLayoutIfNeeded): |
| * rendering/style/RenderStyle.cpp: |
| (WebCore::RenderStyle::getShadowInsetExtent): |
| (WebCore): |
| * rendering/style/RenderStyle.h: |
| |
| 2012-10-04 Kent Tamura <tkent@chromium.org> |
| |
| Fix sub-field width to the maximum width of a placeholder and the maximum value |
| https://bugs.webkit.org/show_bug.cgi?id=98481 |
| |
| Reviewed by Hajime Morita. |
| |
| We can't assume a placeholder text is shorter than the width of |
| digits. The placeholder string for the year field of |
| input[type=week] is "----", but input[type=date] will have a |
| localized string for it. |
| |
| We should set the 'width' CSS property to the maximum of the |
| placeholder width and the maximum value width in order to prevent |
| the field width from growing/narrowing. |
| |
| Before this patch, we secured four digits space for a year field, |
| and allowed the field to grow its width when a larger year is |
| set. After this patch, we don't allow it to grow because the |
| 'width' property is set to the maximum width. |
| |
| Update week-multiple-fields-appearance-basic.html, and the |
| following tests are affected. |
| - fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-classes.html |
| - fast/forms/week-multiple-fields/week-multiple-fields-appearance-pseudo-elements.html |
| - fast/forms/week-multiple-fields/week-multiple-fields-appearance-style.html |
| |
| * html/shadow/DateTimeNumericFieldElement.cpp: |
| (WebCore::DateTimeNumericFieldElement::DateTimeNumericFieldElement): |
| Enable customStyleForRenderer. |
| (WebCore::DateTimeNumericFieldElement::customStyleForRenderer): |
| Added. The code is similar to DateTimeSymbolicFieldElement::customStyleForRenderer(). |
| (WebCore::DateTimeNumericFieldElement::formatValue): |
| Made a function with the code in value(). This is used in |
| customStyleForRenderer() and value(). |
| (WebCore::DateTimeNumericFieldElement::value): Use formatValue(). |
| * html/shadow/DateTimeNumericFieldElement.h: |
| (DateTimeNumericFieldElement): Declare new functions. |
| |
| 2012-10-05 Kent Tamura <tkent@chromium.org> |
| |
| Improve spelling and performance of Localizer.cpp |
| https://bugs.webkit.org/show_bug.cgi?id=98485 |
| |
| Reviewed by Kentaro Hara. |
| |
| Some improvements pointed in webkit.org/b/98229#c5. |
| |
| No new tests because of no behavior change. |
| |
| * platform/text/Localizer.h: |
| (Localizer): |
| - Rename dateTimeFormatWithSecond to dateTimeFormatWithSeconds |
| - Rename dateTimeFormatWithoutSecond to dateTimeFormatWithoutSeconds |
| - Add data members: m_dateTimeFormatWithSeconds and m_dateTimeFormatWithoutSeconds. |
| * platform/text/Localizer.cpp: |
| (WebCore::Localizer::timeFormat): Check isNull instead of isEmpty |
| (WebCore::Localizer::shortTimeFormat): Ditto. |
| (WebCore::Localizer::dateTimeFormatWithSeconds): |
| - Renamed. |
| - Cache the concatenation result to a data member. |
| (WebCore::Localizer::dateTimeFormatWithoutSeconds): Ditto. |
| |
| * html/DateTimeInputType.cpp: |
| (WebCore::DateTimeInputType::setupLayoutParameters): Follow the renaming. |
| * html/DateTimeLocalInputType.cpp: |
| (WebCore::DateTimeLocalInputType::setupLayoutParameters): Ditto. |
| |
| 2012-10-04 Kenichi Ishibashi <bashi@chromium.org> |
| |
| [WebSocket] ExtensionParser should have its own file |
| https://bugs.webkit.org/show_bug.cgi?id=98475 |
| |
| Reviewed by Yuta Kitamura. |
| |
| Factor out ExtensionParser from WebSocketExtensionDispatcher and rename it as WebSocketExtensionParser. |
| WebSocketExtensionParser has its own file. |
| |
| No changes in behavior. Added a test case for parsing Sec-WebSocket-Extensions field as a chromium unit test. |
| |
| * CMakeLists.txt: Added WebSocketExtensionParser. |
| * GNUmakefile.list.am: Ditto. |
| * Modules/websockets/WebSocketExtensionDispatcher.cpp: |
| (WebCore::WebSocketExtensionDispatcher::processHeaderValue): |
| Use WebSocketExtensionParser::parseExtension() to parser extension header value. |
| * Modules/websockets/WebSocketExtensionParser.cpp: Added. |
| (WebCore): |
| (WebCore::WebSocketExtensionParser::finished): Moved from ExtensionParser. |
| (WebCore::WebSocketExtensionParser::parsedSuccessfully): Ditto. |
| (WebCore::isSeparator): Ditto. |
| (WebCore::WebSocketExtensionParser::skipSpaces): Ditto. |
| (WebCore::WebSocketExtensionParser::consumeToken): Ditto. |
| (WebCore::WebSocketExtensionParser::consumeQuotedString): Ditto. |
| (WebCore::WebSocketExtensionParser::consumeQuotedStringOrToken): Ditto. |
| (WebCore::WebSocketExtensionParser::consumeCharacter): Ditto. |
| (WebCore::WebSocketExtensionParser::parseExtension): Moved from WebSocketExtensionDispatcher. |
| * Modules/websockets/WebSocketExtensionParser.h: Added. |
| (WebCore): |
| (WebSocketExtensionParser): |
| (WebCore::WebSocketExtensionParser::WebSocketExtensionParser): |
| (WebCore::WebSocketExtensionParser::currentToken): |
| * Target.pri: Added WebSocketExtensionParser. |
| * WebCore.gypi: Ditto. |
| * WebCore.vcproj/WebCore.vcproj: Ditto. |
| * WebCore.xcodeproj/project.pbxproj: Ditto. |
| |
| 2012-10-04 Kunihiko Sakamoto <ksakamoto@chromium.org> |
| |
| <input> size attribute should throw INDEX_SIZE_ERR when set to 0 |
| https://bugs.webkit.org/show_bug.cgi?id=61675 |
| |
| Reviewed by Kent Tamura. |
| |
| According to the spec, the size IDL attribute of input elements is limited |
| to only non-negative numbers greater than zero. It should throw INDEX_SIZE_ERR |
| exception when set to 0. New behavior matches both Firefox and IE. |
| Spec: http://www.w3.org/TR/html5/common-input-element-attributes.html#the-size-attribute |
| |
| Test: fast/dom/HTMLInputElement/input-size-attribute.html |
| |
| * html/HTMLInputElement.cpp: |
| (WebCore::HTMLInputElement::setSize): |
| * html/HTMLInputElement.h: |
| (HTMLInputElement): |
| * html/HTMLInputElement.idl: |
| |
| 2012-10-04 Kent Tamura <tkent@chromium.org> |
| |
| Fix font for date/time input types. |
| https://bugs.webkit.org/show_bug.cgi?id=98478 |
| |
| Reviewed by Kentaro Hara. |
| |
| input[type=date] should use monospace font if |
| ENABLE_INPUT_MULTIPLE_FIELDS_UI && ENABLE_INPUT_TYPE_DATE. |
| |
| For other date/time types, they should use monospace font only |
| if their types are enabled. input[type="foo"] matches input |
| element with type="foo" even if the foo type is not supported. |
| |
| The input[type=date] change is covered by |
| fast/forms/date/calendar-picker-appearance.html, |
| platform/chromium/fast/forms/date/date-suggestion-picker-appearance*.html |
| |
| * css/html.css: |
| (input[type="date"]): |
| (input[type="datetime"]): |
| (input[type="datetime-local"]): |
| (input[type="month"]): |
| (input[type="time"]): |
| |
| 2012-10-04 Hajime Morrita <morrita@google.com> |
| |
| [Refactoring] Some classes in StyleResolver.cpp/h could have its own file. |
| https://bugs.webkit.org/show_bug.cgi?id=98469 |
| |
| Reviewed by Dimitri Glazkov. |
| |
| This change extracts RuleData, RuleSet, RuleFeature and Featurs class |
| to its own file: RuleSet.h/cpp and RuleFeature.h/cpp |
| |
| RuleFeature class is moved fro StyleResolver inner class to plain WebCore class. |
| Feaures class is renamed to RuleFeatureSet to avoid possible name conflict. |
| |
| No new tests. Just splitting file and doing simple rename. |
| |
| * CMakeLists.txt: |
| * GNUmakefile.list.am: |
| * Target.pri: |
| * WebCore.gypi: |
| * WebCore.xcodeproj/project.pbxproj: |
| * css/CSSAllInOne.cpp: |
| * css/RuleFeature.cpp: Added. |
| (WebCore): |
| (WebCore::RuleFeatureSet::add): |
| (WebCore::RuleFeatureSet::clear): |
| (WebCore::RuleFeatureSet::reportMemoryUsage): |
| * css/RuleFeature.h: Added. |
| (WebCore): |
| (RuleFeature): |
| (WebCore::RuleFeature::RuleFeature): |
| (RuleFeatureSet): |
| (WebCore::RuleFeatureSet::RuleFeatureSet): |
| * css/RuleSet.cpp: Added. |
| (WebCore): |
| (WebCore::isSelectorMatchingHTMLBasedOnRuleHash): |
| (WebCore::selectorListContainsUncommonAttributeSelector): |
| (WebCore::isCommonAttributeSelectorAttribute): |
| (WebCore::containsUncommonAttributeSelector): |
| (WebCore::RuleData::RuleData): |
| (WebCore::RuleData::reportMemoryUsage): |
| (WebCore::reportAtomRuleMap): |
| (WebCore::RuleSet::reportMemoryUsage): |
| (WebCore::RuleSet::RuleSetSelectorPair::reportMemoryUsage): |
| (WebCore::collectFeaturesFromSelector): |
| (WebCore::collectFeaturesFromRuleData): |
| (WebCore::RuleSet::addToRuleSet): |
| (WebCore::RuleSet::addRule): |
| (WebCore::RuleSet::addPageRule): |
| (WebCore::RuleSet::addRegionRule): |
| (WebCore::RuleSet::addRulesFromSheet): |
| (WebCore::RuleSet::addStyleRule): |
| (WebCore::shrinkMapVectorsToFit): |
| (WebCore::RuleSet::shrinkToFit): |
| * css/RuleSet.h: Added. |
| (WebCore): |
| (RuleData): |
| (WebCore::RuleData::position): |
| (WebCore::RuleData::rule): |
| (WebCore::RuleData::selector): |
| (WebCore::RuleData::selectorIndex): |
| (WebCore::RuleData::hasFastCheckableSelector): |
| (WebCore::RuleData::hasMultipartSelector): |
| (WebCore::RuleData::hasRightmostSelectorMatchingHTMLBasedOnRuleHash): |
| (WebCore::RuleData::containsUncommonAttributeSelector): |
| (WebCore::RuleData::specificity): |
| (WebCore::RuleData::linkMatchType): |
| (WebCore::RuleData::hasDocumentSecurityOrigin): |
| (WebCore::RuleData::isInRegionRule): |
| (WebCore::RuleData::descendantSelectorIdentifierHashes): |
| (SameSizeAsRuleData): |
| (RuleSet): |
| (WebCore::RuleSet::create): |
| (WebCore::RuleSet::disableAutoShrinkToFit): |
| (WebCore::RuleSet::features): |
| (WebCore::RuleSet::idRules): |
| (WebCore::RuleSet::classRules): |
| (WebCore::RuleSet::tagRules): |
| (WebCore::RuleSet::shadowPseudoElementRules): |
| (WebCore::RuleSet::linkPseudoClassRules): |
| (WebCore::RuleSet::focusPseudoClassRules): |
| (WebCore::RuleSet::universalRules): |
| (WebCore::RuleSet::pageRules): |
| (WebCore::RuleSet::RuleSetSelectorPair::RuleSetSelectorPair): |
| (RuleSetSelectorPair): |
| (WebCore::RuleSet::RuleSet): |
| * css/StyleResolver.cpp: |
| (WebCore): |
| (WebCore::makeRuleSet): |
| (WebCore::StyleResolver::collectMatchingRulesForList): |
| * css/StyleResolver.h: |
| (StyleResolver): |
| |
| 2012-10-04 Adam Barth <abarth@webkit.org> |
| |
| FeatureObserver should distinguish between legacy HTML and text notifications |
| https://bugs.webkit.org/show_bug.cgi?id=98441 |
| |
| Reviewed by Tony Chang. |
| |
| We might be able to drop support for legacy HTML notifications before |
| we can drop support for legacy text notifications. We should measure |
| and find out. |
| |
| * Modules/notifications/NotificationCenter.idl: |
| * page/FeatureObserver.h: |
| |
| 2012-10-04 Pravin D <pravind.2k4@gmail.com> |
| |
| Removing the unused member variable m_wasMalformed from HTMLFormElement class and its related code frgment. |
| https://bugs.webkit.org/show_bug.cgi?id=98444 |
| |
| Reviewed by Eric Seidel. |
| |
| The member variable m_wasMalformed of HTMLFormElement class was used to determine if the <form> tag was malformed or not. |
| This information was used elsewhere to decide if bottom margins have to be included for such a <form>. |
| However currently this member variable is not being set by any code following code refactoring in HTML parser class. |
| |
| Code cleanup patch. No new tests required. |
| |
| * html/HTMLFormElement.cpp: |
| (WebCore::HTMLFormElement::HTMLFormElement): |
| Removed m_wasMalformed initialization. |
| |
| * html/HTMLFormElement.h: |
| (HTMLFormElement): |
| Removed m_wasMalformed variable. |
| Removed m_wasMalformed variable's setter and getter functions. |
| |
| * rendering/RenderBlock.cpp: |
| (WebCore::RenderBlock::layoutBlock): |
| Removed code fragment using/dependent on m_wasMalformed. |
| |
| 2012-10-04 Rik Cabanier <cabanier@adobe.com> |
| |
| Turn Compositing on by default in WebKit build |
| https://bugs.webkit.org/show_bug.cgi?id=98315 |
| |
| Reviewed by Simon Fraser. |
| |
| enable -webkit-blend-mode on trunk. |
| |
| No new tests. Existing blending test were updated. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| * css/CSSPropertyNames.in: |
| * css/CSSValueKeywords.in: |
| |
| 2012-10-04 Hayato Ito <hayato@chromium.org> |
| |
| [Refactoring] Introduce a traversal strategy in SelectorChecker |
| https://bugs.webkit.org/show_bug.cgi?id=97298 |
| |
| Reviewed by Antti Koivisto. |
| |
| We extract DOM traversal code from SelectorChecker so that we can use another traversal strategy. |
| Another traversal strategy will be introduced in Bug 96990. |
| |
| Since this code path is very hot, we were very careful not to regress performance. |
| We will use template specialization to change the traversal implementation. |
| |
| We confirmed that this patch does not regress SelectorCheckerPerformance. I have checked the performance of |
| the added test in my Linux Box using run-perf-tests. |
| |
| The performance of the added test before using this patch was: |
| |
| RESULT CSS: PseudoClassSelectors= 3399.68308031 runs/s |
| median= 3404.48685564 runs/s, stdev= 37.3480114449 runs/s, min= 3272.64871114 runs/s, max= 3438.72385184 runs/s |
| |
| When we used this patch, the performance was: |
| |
| RESULT CSS: PseudoClassSelectors= 3367.74473886 runs/s |
| median= 3367.12072755 runs/s, stdev= 14.1464547639 runs/s, min= 3348.55881171 runs/s, max= 3395.98212857 runs/s |
| |
| Test: PerformanceTests/CSS/PseudoClass-Selectors.html |
| |
| * css/SelectorChecker.cpp: |
| (WebCore): |
| (WebCore::SelectorChecker::checkSelector): Make this a template method to accept another Context type. |
| Another Context type will be introduced in coming patch. |
| (WebCore::SelectorChecker::checkOneSelector): |
| (WebCore::SelectorChecker::DOMTraversalStrategy::isFirstChild): |
| (WebCore::SelectorChecker::DOMTraversalStrategy::isLastChild): |
| (WebCore::SelectorChecker::DOMTraversalStrategy::isFirstOfType): |
| (WebCore::SelectorChecker::DOMTraversalStrategy::isLastOfType): |
| (WebCore::SelectorChecker::DOMTraversalStrategy::countElementsBefore): |
| (WebCore::SelectorChecker::DOMTraversalStrategy::countElementsOfTypeBefore): |
| (WebCore::SelectorChecker::DOMTraversalStrategy::countElementsAfter): |
| (WebCore::SelectorChecker::DOMTraversalStrategy::countElementsOfTypeAfter): |
| * css/SelectorChecker.h: |
| (WebCore::SelectorChecker::SelectorCheckingContext::SelectorCheckingContext): |
| (SelectorCheckingContext): |
| (SelectorChecker): |
| (DOMTraversalStrategy): Extracted the DOM traversal code from SelectorChecker. Another traversal code |
| will be introduced the coming patch. |
| |
| 2012-10-04 Eric Seidel <eric@webkit.org> |
| |
| SVGAttributeHashTranslator does not need to copy QualifiedName in the common case |
| https://bugs.webkit.org/show_bug.cgi?id=98473 |
| |
| Reviewed by Adam Barth. |
| |
| I tested this using instruments on a test case which modified SVG attributes in a loop. |
| I believe pdr has some perf-tests in this area, but they weren't needed here. A simple sample showed this as a huge win, |
| since we're no longer creating a QualifiedName (and thus adding it to the hash) on each QualifiedName-based lookup in SVG. |
| |
| * svg/SVGElement.h: |
| (WebCore::SVGAttributeHashTranslator::hash): |
| (WebCore::SVGAttributeHashTranslator::equal): |
| |
| 2012-10-04 Julien Chaffraix <jchaffraix@webkit.org> |
| |
| Split the intrinsic padding update code out of RenderTableSection::layoutRows |
| https://bugs.webkit.org/show_bug.cgi?id=98454 |
| |
| Reviewed by Eric Seidel. |
| |
| RenderTableSection::layoutRows is very long and it's difficult to see what's |
| going on. This change moves the intrinsic padding update code into RenderTableCell |
| for clarity. While at it, cleaned up a bit the code (renaming variables, functions). |
| |
| Change covered by existing table tests. |
| |
| * rendering/RenderTableCell.cpp: |
| (WebCore::RenderTableCell::computeIntrinsicPadding): |
| Added this new function that does the update. Removed the 'default' case, replaced by |
| the explicit label BASELINE_MIDDLE. |
| |
| * rendering/RenderTableCell.h: |
| (WebCore::RenderTableCell::setIntrinsicPaddingBefore): |
| (WebCore::RenderTableCell::setIntrinsicPaddingAfter): |
| (WebCore::RenderTableCell::setIntrinsicPadding): |
| Moved those setters to the private section as we want other classes |
| to use computeIntrinsicPadding. |
| |
| * rendering/RenderTableSection.cpp: |
| (WebCore::RenderTableSection::layoutRows): |
| Replaced the code with a call to RenderTableCell::computeIntrinsicPadding. |
| Also moved 2 variables in the loop per our coding style. |
| |
| * rendering/RenderTableSection.h: |
| (WebCore::RenderTableSection::rowBaseline): |
| Renamed to match our coding style. |
| |
| 2012-10-04 Nate Chapin <japhet@chromium.org> |
| |
| Crash in EventHandler::mouseMoved(). |
| https://bugs.webkit.org/show_bug.cgi?id=98460 |
| |
| Reviewed by Abhishek Arya. |
| |
| No new tests, this fixes fast/events/mouse-moved-remove-frame-crash.html. |
| |
| * page/EventHandler.cpp: |
| (WebCore::EventHandler::mouseMoved): |
| |
| 2012-10-04 Adam Barth <abarth@webkit.org> |
| |
| [V8] NotificationCenter leaks because it uses buggy custom bindings |
| https://bugs.webkit.org/show_bug.cgi?id=98445 |
| |
| Reviewed by Tony Chang. |
| |
| There's no reason to use custom bindings here. All they do is cause leaks.. |
| |
| * Modules/notifications/NotificationCenter.idl: |
| * bindings/v8/custom/V8NotificationCenterCustom.cpp: |
| |
| 2012-10-04 Tab Atkins <jackalmage@gmail.com> |
| |
| Selector specificity categories "overflow" into higher categories |
| https://bugs.webkit.org/show_bug.cgi?id=98295 |
| |
| Reviewed by Eric Seidel. |
| |
| This patch adds per-component overflow guards for CSS selector specificity. |
| Previously, we didn't guard against overflow. |
| Since we stored each component as a byte mapped into a single unsigned int for the whole specificity, |
| 256 of a particular simple selector was equivalent to 1 of the next-higher-group selector. |
| This violated the Selectors specification, |
| which requires the components to be compared lexicographically. |
| |
| Tests: /fast/selectors/specificity-overflow.html |
| |
| * css/CSSSelector.cpp: |
| (WebCore::CSSSelector::specificity): |
| |
| 2012-10-04 Enrica Casucci <enrica@apple.com> |
| |
| Font::glyphDataAndPageForCharacter doesn't account for text orientation when using systemFallback on a cold cache. |
| https://bugs.webkit.org/show_bug.cgi?id=98452. |
| |
| Reviewed by Dan Bernstein. |
| |
| The text orientation was considered only when there is a cache hit. |
| This change moves the logic to handle text orientation to a separate |
| inline function that is called also when the glyph is added to the cache. |
| |
| Test: fast/text/vertical-rl-rtl-linebreak.html |
| |
| * platform/graphics/FontFastPath.cpp: |
| (WebCore::applyTextOrientationForCharacter): Added. |
| (WebCore::Font::glyphDataAndPageForCharacter): Modified to use the new function in |
| both cases of cold and warm cache. |
| |
| 2012-10-04 Adam Klein <adamk@chromium.org> |
| |
| MutationRecord attributeName should be null for non attribute changes |
| https://bugs.webkit.org/show_bug.cgi?id=98438 |
| |
| Reviewed by Ojan Vafai. |
| |
| Test: fast/mutation/mutation-record-nullity.html |
| |
| * dom/MutationRecord.idl: |
| |
| 2012-10-04 Simon Fraser <simon.fraser@apple.com> |
| |
| Final part of "sync" to "flush" renaming |
| https://bugs.webkit.org/show_bug.cgi?id=98430 |
| |
| Reviewed by Tim Horton. |
| |
| Change method names on GraphicsLayer and GraphicsLayerClient that |
| refer to "sync" to use the term "flush" instead, to be consistent |
| with the rest of the code. |
| |
| * platform/graphics/GraphicsLayer.h: |
| (WebCore::GraphicsLayer::flushCompositingState): |
| (WebCore::GraphicsLayer::flushCompositingStateForThisLayerOnly): |
| * platform/graphics/GraphicsLayerClient.h: |
| (GraphicsLayerClient): |
| * platform/graphics/blackberry/GraphicsLayerBlackBerry.h: |
| (WebCore::GraphicsLayerBlackBerry::notifyFlushRequired): |
| * platform/graphics/blackberry/LayerWebKitThread.cpp: |
| (WebCore::LayerWebKitThread::setNeedsCommit): |
| * platform/graphics/ca/GraphicsLayerCA.cpp: |
| (WebCore::GraphicsLayerCA::flushCompositingState): |
| (WebCore::GraphicsLayerCA::flushCompositingStateForThisLayerOnly): |
| (WebCore::GraphicsLayerCA::platformCALayerDidCreateTiles): |
| (WebCore::GraphicsLayerCA::positionForCloneRootLayer): |
| (WebCore::GraphicsLayerCA::noteLayerPropertyChanged): |
| * platform/graphics/ca/GraphicsLayerCA.h: |
| (GraphicsLayerCA): |
| * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: |
| (WebCore::GraphicsLayerTextureMapper::notifyChange): |
| (WebCore::GraphicsLayerTextureMapper::flushCompositingStateForThisLayerOnly): |
| (WebCore::GraphicsLayerTextureMapper::flushCompositingState): |
| * platform/graphics/texmap/GraphicsLayerTextureMapper.h: |
| (GraphicsLayerTextureMapper): |
| * platform/graphics/texmap/TextureMapperLayer.cpp: |
| (WebCore::TextureMapperLayer::flushCompositingState): |
| (WebCore::TextureMapperLayer::flushCompositingStateSelf): |
| * platform/graphics/texmap/TextureMapperLayer.h: |
| (TextureMapperLayer): |
| * rendering/RenderLayerBacking.cpp: |
| (WebCore::RenderLayerBacking::notifyFlushRequired): |
| * rendering/RenderLayerBacking.h: |
| (RenderLayerBacking): |
| * rendering/RenderLayerCompositor.cpp: |
| (WebCore::RenderLayerCompositor::flushPendingLayerChanges): |
| * rendering/RenderLayerCompositor.h: |
| (WebCore::RenderLayerCompositor::notifyFlushRequired): |
| |
| 2012-10-04 Tab Atkins <tabatkins@google.com> |
| |
| 1ex should equal .5em when the font has no x-height metric |
| https://bugs.webkit.org/show_bug.cgi?id=80360 |
| |
| Reviewed by Eric Seidel. |
| |
| Updated FontMetrics and CSSPrimitiveValue to have/use an explicit "hasXHeight" flag to determine how to size an 'ex' unit. |
| |
| Updated a few of the platform font files to set the flag properly. |
| |
| Patch cleanup by David Barr <davidbarr@chromium.org>. |
| |
| Test: fast/css/ex-unit-with-no-x-height.html |
| |
| * css/CSSPrimitiveValue.cpp: |
| (WebCore::CSSPrimitiveValue::computeLengthDouble): |
| * platform/graphics/FontMetrics.h: |
| (WebCore::FontMetrics::FontMetrics): |
| (WebCore::FontMetrics::setXHeight): |
| (FontMetrics): |
| (WebCore::FontMetrics::hasXHeight): |
| (WebCore::FontMetrics::setHasXHeight): |
| (WebCore::FontMetrics::reset): |
| * platform/graphics/skia/SimpleFontDataSkia.cpp: |
| (WebCore::SimpleFontData::platformInit): |
| |
| 2012-10-04 Ryosuke Niwa <rniwa@webkit.org> |
| |
| Build fix after r130411. Add the right offset. |
| Also use RefPtr instead of a raw pointer for next and previous pointers. |
| |
| * editing/ReplaceSelectionCommand.cpp: |
| (WebCore::ReplaceSelectionCommand::mergeTextNodesAroundPosition): |
| |
| 2012-10-04 Alec Flett <alecflett@chromium.org> |
| |
| IndexedDB: promote objectstore/index backend ids to the frontend |
| https://bugs.webkit.org/show_bug.cgi?id=97834 |
| |
| Reviewed by Tony Chang. |
| |
| Expose int64-based database/objectStore/index ids to the renderer, |
| step 1 of 2. Support both styles of createObjectStore and |
| createIndex: those that take an explicit id, and those that take |
| -1, meaning to autogenerate an id on the backend. In part 2, after |
| the chromium side lands, support for the autogenerated ids will be |
| removed. (See https://bugs.webkit.org/show_bug.cgi?id=98085) |
| |
| This is a part of larger refactoring work to ultimately make the interface |
| between the frontend and the backend simpler. |
| |
| No new tests, extensive ASSERTs and existing tests cover correctness. |
| |
| * Modules/indexeddb/IDBBackingStore.h: |
| (IDBBackingStore): |
| * Modules/indexeddb/IDBDatabase.cpp: |
| (WebCore::IDBDatabase::createObjectStore): |
| * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: |
| (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl): |
| (WebCore::IDBDatabaseBackendImpl::openInternal): |
| (WebCore::IDBDatabaseBackendImpl::metadata): |
| (WebCore::IDBDatabaseBackendImpl::createObjectStore): |
| (WebCore): |
| (WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal): |
| (WebCore::IDBDatabaseBackendImpl::loadObjectStores): |
| * Modules/indexeddb/IDBDatabaseBackendImpl.h: |
| (IDBDatabaseBackendImpl): |
| * Modules/indexeddb/IDBDatabaseBackendInterface.h: |
| (IDBDatabaseBackendInterface): |
| * Modules/indexeddb/IDBIndexBackendImpl.cpp: |
| (WebCore::IDBIndexBackendImpl::metadata): |
| * Modules/indexeddb/IDBIndexBackendImpl.h: |
| (WebCore::IDBIndexBackendImpl::create): |
| (IDBIndexBackendImpl): |
| * Modules/indexeddb/IDBLevelDBBackingStore.cpp: |
| (WebCore): |
| (WebCore::getMaxObjectStoreId): |
| (WebCore::IDBLevelDBBackingStore::getIDBDatabaseMetaData): |
| (WebCore::IDBLevelDBBackingStore::deleteDatabase): |
| (WebCore::IDBLevelDBBackingStore::getObjectStores): |
| (WebCore::setMaxObjectStoreId): |
| (WebCore::IDBLevelDBBackingStore::createObjectStore): |
| (WebCore::getMaxIndexId): |
| (WebCore::setMaxIndexId): |
| (WebCore::IDBLevelDBBackingStore::createIndex): |
| * Modules/indexeddb/IDBLevelDBBackingStore.h: |
| (IDBLevelDBBackingStore): |
| * Modules/indexeddb/IDBMetadata.h: |
| (WebCore::IDBDatabaseMetadata::IDBDatabaseMetadata): |
| (IDBDatabaseMetadata): |
| (WebCore::IDBObjectStoreMetadata::IDBObjectStoreMetadata): |
| (IDBObjectStoreMetadata): |
| (WebCore::IDBIndexMetadata::IDBIndexMetadata): |
| (IDBIndexMetadata): |
| * Modules/indexeddb/IDBObjectStore.cpp: |
| (WebCore::IDBObjectStore::createIndex): |
| * Modules/indexeddb/IDBObjectStoreBackendImpl.cpp: |
| (WebCore::IDBObjectStoreBackendImpl::IDBObjectStoreBackendImpl): |
| (WebCore::IDBObjectStoreBackendImpl::metadata): |
| (WebCore::IDBObjectStoreBackendImpl::createIndex): |
| (WebCore): |
| (WebCore::IDBObjectStoreBackendImpl::createIndexInternal): |
| * Modules/indexeddb/IDBObjectStoreBackendImpl.h: |
| (WebCore::IDBObjectStoreBackendImpl::create): |
| (IDBObjectStoreBackendImpl): |
| * Modules/indexeddb/IDBObjectStoreBackendInterface.h: |
| 2012-10-04 Pravin D <pravind.2k4@gmail.com> |
| |
| Layout broken after cloning and re-inserting a table with a misplaced <form> |
| https://bugs.webkit.org/show_bug.cgi?id=86746 |
| |
| Reviewed by Julien Chaffraix. |
| |
| There is a concept of demotion for a <form> contained in a table. A <form> is demoted if its immediate parent |
| is either a <table>, table sections (tbody, etc) or a table row (tr). A renderer for such a <form> is created only |
| if its display is one of the table display types (TABLE, INLINE_TABLE, TABLE_FOOTER_GROUP, etc). |
| However when a <table> containing a demoted <form> is cloned, the <form> does not retain its demotion state and |
| results in the table getting improperly rendered. |
| |
| Test: fast/table/form-with-non-table-display-inside-table-elements.html |
| |
| * html/HTMLFormElement.cpp: |
| (WebCore::HTMLFormElement::copyNonAttributePropertiesFromElement): |
| Extended the virtual function for HTMLFormElement class specific implementation. |
| The function is used to copy any necessary state information(member variables) associated with |
| the <form> element being cloned to the current node. |
| For HTMLFormElement node the member variable can be classified into five groups based on the |
| information they hold: |
| 1) Variables containing information regarding <form> subtree and elements associated with it. |
| These get updated as and when an element is added to the <form> subtree. |
| 2) Variables containing <form> submit state information. |
| 3) Flag to hold information if reset() has been called. |
| 4) Flag(m_wasDemoted) that indicates whether the form is demoted or not, based on which it needs to |
| be handled differently during creation of its renderer. |
| This information is currently being updated only during the HTML tree construction phase. |
| 5) Flag(m_wasMalformed) to hold information if the <form> is malformed or not. |
| |
| Variables of group (1) will be updated as and when elements are added to the <form> subtree. Whereas, |
| (2) and (3) hold instance specific information, thus copying them is not required. Also (5) is currently not |
| being used(not set by any code). |
| |
| On the other hand, (4) is required to be copied during cloning as this information cannot be accessed |
| during the cloning process. |
| |
| (WebCore): |
| * html/HTMLFormElement.h: |
| Added copyNonAttributePropertiesFromElement() declaration. |
| |
| 2012-10-04 Dean Jackson <dino@apple.com> |
| |
| Attribute and Uniform variable names need translation in shader |
| https://bugs.webkit.org/show_bug.cgi?id=70989 |
| |
| Reviewed by Tim Horton (and Darin Adler). |
| |
| WebGL specifies some maximum lengths for variable names (attributes |
| and uniforms). Also, some GL drivers have issues with long names. For |
| that reason, ANGLE has an option to rewrite the shader, translating |
| long names into short names. Turning this on helps shaders compile, |
| but we need to keep a mapping between the original names and the |
| translated names, so that we bind to the right location from user code |
| (which won't ever see the translated source). |
| |
| This provided an opportunity to clean up some other bits of code: |
| CSS Filters examined the uniform names after a compilation; It can |
| now use the variable name map. I also added a typedef for the |
| HashMaps that keep the shader, the source code and the variable name |
| mappings. |
| |
| I also opened a followup bug to make sure these tables are deleted |
| when the associated shaders (or linked programs) go away: |
| https://bugs.webkit.org/show_bug.cgi?id=98204 |
| |
| Covered by existing tests (with some enhancements): |
| - fast/canvas/webgl/attrib-location-length-limits.html: |
| - fast/canvas/webgl/uniform-location-length-limits.html: |
| |
| * platform/graphics/ANGLEWebKitBridge.cpp: |
| (WebCore::getSymbolInfo): Extracts all the information on symbols (either attributes |
| or uniforms) from the newly compiled shader. |
| (WebCore): |
| (WebCore::ANGLEWebKitBridge::compileShaderSource): New method name. |
| * platform/graphics/ANGLEWebKitBridge.h: |
| (WebCore::getUniforms): Deleted this method. |
| (WebCore::ANGLEShaderSymbol::isSampler): Make sure the symbol is a uniform. |
| (ANGLEWebKitBridge): |
| * platform/graphics/GraphicsContext3D.h: |
| (WebCore::GraphicsContext3D::SymbolInfo::SymbolInfo): A new object that |
| holds the size, type and translated name of a symbol from a WebGL shader. |
| (ShaderSourceEntry): |
| (WebCore::GraphicsContext3D::ShaderSourceEntry::ShaderSourceEntry): Now keeps track |
| of the translated source code and symbol mappings. |
| (WebCore::GraphicsContext3D::ShaderSourceEntry::symbolMap): Helper function to |
| get the member variable corresponding to the type of symbol you're asking fo. |
| * platform/graphics/filters/CustomFilterValidatedProgram.cpp: |
| (WebCore::CustomFilterValidatedProgram::CustomFilterValidatedProgram): Calls new method |
| name which also produces a set of symbols to examine. |
| * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: |
| (WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE): We now can pass |
| in some extra compile options to do translation of long symbol names. Also fill the |
| map of translated symbol names. |
| * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp: |
| (WebCore::GraphicsContext3D::compileShader): |
| (WebCore::GraphicsContext3D::mappedSymbolName): Returns the mapped name for |
| a shader symbol if it was translated during compilation. |
| (WebCore): |
| (WebCore::GraphicsContext3D::getAttribLocation): |
| (WebCore::GraphicsContext3D::getShaderiv): |
| (WebCore::GraphicsContext3D::getShaderInfoLog): |
| (WebCore::GraphicsContext3D::getShaderSource): |
| (WebCore::GraphicsContext3D::getUniformLocation): |
| |
| 2012-10-04 Alpha Lam <hclam@chromium.org> |
| |
| [skia] Drawing a subrect of bitmap image is misaligned |
| https://bugs.webkit.org/show_bug.cgi?id=95121 |
| |
| Reviewed by Stephen White. |
| |
| When drawing a subrect of BitmapImage and the subrect is not aligned |
| to integer boundaries, skia expands it to the closest enclosing integer |
| rectangle. This creates prominent rendering artifacts when an image |
| is used as background and its sub-regions are invalidated frequently. |
| |
| This patch fixes the problem by doing alignment to integer boundaries |
| and clipping for both cases of RESAMPLE_AWESOME and RESAMPLE_LINEAR. |
| |
| A clip rect is applied to the canvas using original destination |
| rectangle, while source and destination rectangles are enlarged |
| appropriately to ensure source rectangle is aligned. |
| |
| This patch also fixes a closely related problem. In RESAMPLE_AWESOME |
| resampling mode the previous algorithm applies different approximated |
| scale factor for each scaled image fragment. This caused the stitched |
| image to look ugly. |
| |
| Scale factor is approximated using entire image size, this gives a |
| more accurate approximation because of greater denominator and a |
| consistent scale factor across all fragments. |
| |
| Changes in Skia enable caching of the scaled image and return the |
| scaled fragment because scale factor is now consistent for all |
| fragments. |
| |
| Tests: fast/images/paint-subrect-grid.html |
| fast/images/paint-subrect.html |
| fast/images/repaint-subrect-grid.html |
| |
| * platform/graphics/skia/ImageSkia.cpp: |
| (WebCore::computeResamplingMode): Use float for width and height. |
| (WebCore): |
| (WebCore::areBoundariesIntegerAligned): |
| (WebCore::computeBitmapDrawRects): |
| (WebCore::extractScaledImageFragment): |
| (WebCore::drawResampledBitmap): New algorithm for drawing scaled image fragment. |
| (WebCore::paintSkBitmap): |
| (WebCore::Image::drawPattern): |
| (WebCore::BitmapImage::draw): Use SkRect instead of SkIRect. |
| (WebCore::BitmapImageSingleFrameSkia::draw): |
| * platform/graphics/skia/NativeImageSkia.cpp: |
| Changing the algorithm for extracting a scaled image fragment. |
| A fragment is now identified by (scaledImageSize, scaledImageSubset). |
| (WebCore::NativeImageSkia::hasResizedBitmap): |
| (WebCore::NativeImageSkia::resizedBitmap): |
| (WebCore::NativeImageSkia::shouldCacheResampling): |
| (WebCore::NativeImageSkia::CachedImageInfo::CachedImageInfo): |
| (WebCore): |
| (WebCore::NativeImageSkia::CachedImageInfo::isEqual): |
| (WebCore::NativeImageSkia::CachedImageInfo::set): |
| (WebCore::NativeImageSkia::CachedImageInfo::rectInSubset): |
| * platform/graphics/skia/NativeImageSkia.h: |
| (NativeImageSkia): |
| (CachedImageInfo): |
| |
| 2012-10-03 Ryosuke Niwa <rniwa@webkit.org> |
| |
| ReplaceSelectionCommand should merge text nodes |
| https://bugs.webkit.org/show_bug.cgi?id=98188 |
| |
| Reviewed by Levi Weintraub. |
| |
| Added mergeTextNodesAroundPosition to ReplaceSelectionCommand to merge text nodes after the replace in |
| completeHTMLReplacement. Also fixed a bunch of bugs in other classes and functions to make this work. |
| |
| This behavior change is tested by existing tests. |
| |
| * editing/InsertParagraphSeparatorCommand.cpp: |
| (WebCore::InsertParagraphSeparatorCommand::doApply): When splitting a text node, place the insertionPosition |
| at the end of the first half. Leaving it at the beginning of the second half confuses the rest of the code in |
| the function. However, the logic to handle the "insignificant" white spaces needs the position at the start of |
| the second half. So keep this position. |
| * editing/ReplaceSelectionCommand.cpp: |
| (WebCore::ReplaceSelectionCommand::doApply): Update visibleStart after inserting a paragraph separator so that |
| the logic to cleanup the nested div checks the right condition (right beneath it starting with a long comment). |
| (WebCore::ReplaceSelectionCommand::addSpacesForSmartReplace): Insert a space for smart paste at the appropriate |
| offset instead of at the end of endNode. Also update the layout before obtaining startDownstream as we may have |
| modified the DOM by inserting a space for endNode. Finally, a non-breaking space should be treated like a space |
| isCharacterSmartReplaceExempt for the purpose of smart replace. e.g. if we're inserting "world" after |
| "hello ", we shouldn't be inserting another space between "hello" and "world". |
| (WebCore::ReplaceSelectionCommand::completeHTMLReplacement): |
| (WebCore::ReplaceSelectionCommand::mergeTextNodesAroundPosition): Added. Merge text nodes around position, and |
| adjust position and positionOnlyToBeUpdated accordingly. We need to call updatePositionForNodeRemoval when |
| positions were before or after the text node. |
| * editing/ReplaceSelectionCommand.h: |
| (ReplaceSelectionCommand): |
| |
| 2012-10-04 Tony Chang <tony@chromium.org> |
| |
| Fix <input type="month"> tests |
| https://bugs.webkit.org/show_bug.cgi?id=98426 |
| |
| Reviewed by Ojan Vafai. |
| |
| The month picker uses flexbox and assumes that it will be aligned with |
| the last line box. This looks visually correct. I will follow up on |
| www-style to see what the expected behavior is. |
| |
| Tests: fast/forms/month-multiple-fields tests cover this. |
| |
| * rendering/RenderFlexibleBox.cpp: |
| * rendering/RenderFlexibleBox.h: |
| |
| 2012-10-04 Sheriff Bot <webkit.review.bot@gmail.com> |
| |
| Unreviewed, rolling out r130396. |
| http://trac.webkit.org/changeset/130396 |
| https://bugs.webkit.org/show_bug.cgi?id=98421 |
| |
| This patch is causing crashes on 4 tests on Lion Debug and |
| Mountain Lion Debug (Requested by jernoble on #webkit). |
| |
| * rendering/RenderLayerCompositor.cpp: |
| (WebCore::RenderLayerCompositor::calculateCompositedBounds): |
| (WebCore::RenderLayerCompositor::requiresCompositingForPosition): |
| * rendering/RenderLayerCompositor.h: |
| * testing/InternalSettings.cpp: |
| (WebCore::InternalSettings::Backup::Backup): |
| (WebCore::InternalSettings::Backup::restoreTo): |
| * testing/InternalSettings.h: |
| (Backup): |
| |
| 2012-10-04 Tony Chang <tony@chromium.org> |
| |
| inline-flex baseline is sometimes wrong |
| https://bugs.webkit.org/show_bug.cgi?id=96188 |
| |
| Reviewed by Ojan Vafai. |
| |
| Implement the necessary methods to get the proper baseline alignment of flexbox. |
| We were falling back to the inline-block behavior. |
| |
| Test: css3/flexbox/flexbox-baseline.html |
| |
| * rendering/RenderFlexibleBox.cpp: |
| (WebCore::RenderFlexibleBox::RenderFlexibleBox): |
| (WebCore::RenderFlexibleBox::baselinePosition): Used to get the baseline of the box. |
| Mostly just the first line box baseline. |
| (WebCore): |
| (WebCore::RenderFlexibleBox::lastLineBoxBaseline): This is used for getting the baseline when in an inline-block. |
| We actually don't want the last line, but the flexbox's baseline. |
| (WebCore::RenderFlexibleBox::firstLineBoxBaseline): Compute the baseline according to the rules in the spec. |
| (WebCore::RenderFlexibleBox::repositionLogicalHeightDependentFlexItems): Keep track of the number of children on the |
| first line so we don't have to re-compute this when getting the baseline. |
| (WebCore::RenderFlexibleBox::crossAxisExtentForChild): Make const. |
| (WebCore::RenderFlexibleBox::mainAxisExtentForChild): Make const. |
| (WebCore::RenderFlexibleBox::hasAutoMarginsInCrossAxis): Make const. |
| * rendering/RenderFlexibleBox.h: Add a size_t to keep track of how many children are in the first line. |
| |
| 2012-10-04 Xianzhu Wang <wangxianzhu@chromium.org> |
| |
| [Chromium] Should set unitsPerEm in SimpleFontDataSkia.cpp |
| https://bugs.webkit.org/show_bug.cgi?id=98100 |
| |
| Reviewed by Stephen White. |
| |
| At least on chromium-linux and chromium-android, unitsPerEm was not set |
| according to the information in the font, causing at least problems in |
| OpenTypeVerticalData when calculating vertical advance. |
| |
| Test: fast/writing-mode/vertical-font-vmtx-units-per-em.html |
| |
| * platform/graphics/skia/SimpleFontDataSkia.cpp: |
| (WebCore::SimpleFontData::platformInit): |
| |
| 2012-10-04 Simon Fraser <simon.fraser@apple.com> |
| |
| Standardize on "flush" terminology for compositing layer flushing/syncing |
| https://bugs.webkit.org/show_bug.cgi?id=98321 |
| |
| Reviewed by Simon Fraser. |
| |
| Rename compositing-related methods that refer to "syncing" to instead |
| refer to "flushing". |
| |
| * WebCore.exp.in: |
| * loader/EmptyClients.h: |
| (WebCore::EmptyChromeClient::scheduleCompositingLayerFlush): |
| * page/ChromeClient.h: |
| (ChromeClient): |
| * page/FrameView.cpp: |
| (WebCore::FrameView::flushCompositingStateForThisFrame): |
| (WebCore::FrameView::flushCompositingStateIncludingSubframes): |
| (WebCore::FrameView::paintContents): |
| * page/FrameView.h: |
| (FrameView): |
| * rendering/RenderLayerCompositor.cpp: |
| (WebCore::RenderLayerCompositor::scheduleLayerFlush): |
| (WebCore::RenderLayerCompositor::flushPendingLayerChanges): |
| |
| 2012-10-04 Peter Rybin <peter.rybin@gmail.com> |
| |
| Web Inspector: expose object internal properties such as PrimitiveValue or BoundThis |
| https://bugs.webkit.org/show_bug.cgi?id=94397 |
| |
| Reviewed by Yury Semikhatsky. |
| |
| Internal property access is built from Injected Script to V8 debug API. JSC binding |
| has a stub imlpementation. Protocol is updated to explicitly reflect internal properties. |
| |
| Test: inspector-protocol/runtime-getProperties.html |
| |
| * bindings/js/JSInjectedScriptHostCustom.cpp: |
| (WebCore::JSInjectedScriptHost::getInternalProperties): |
| (WebCore): |
| * bindings/v8/DebuggerScript.js: |
| * bindings/v8/ScriptDebugServer.cpp: |
| (WebCore::ScriptDebugServer::getInternalProperties): |
| (WebCore): |
| * bindings/v8/ScriptDebugServer.h: |
| (ScriptDebugServer): |
| * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: |
| (WebCore::V8InjectedScriptHost::getInternalPropertiesCallback): |
| (WebCore): |
| * inspector/InjectedScript.cpp: |
| (WebCore::InjectedScript::getInternalProperties): |
| (WebCore): |
| * inspector/InjectedScript.h: |
| (InjectedScript): |
| * inspector/InjectedScriptHost.idl: |
| * inspector/InjectedScriptSource.js: |
| (.): |
| * inspector/Inspector.json: |
| * inspector/InspectorRuntimeAgent.cpp: |
| (WebCore::InspectorRuntimeAgent::getProperties): |
| * inspector/InspectorRuntimeAgent.h: |
| (InspectorRuntimeAgent): |
| |
| 2012-10-04 Sami Kyostila <skyostil@chromium.org> |
| |
| Fixed position visibility check does not consider descendants |
| https://bugs.webkit.org/show_bug.cgi?id=98144 |
| |
| Reviewed by Simon Fraser. |
| |
| The check against creating composition layers for invisible fixed positioned |
| elements is too aggressive in that it does not consider descendants of the |
| fixed positioned element that may be visible even though the element itself is |
| out of view. |
| |
| Fix the problem by calculating the true composited bounds of the fixed |
| element instead of just using the size of the fixed layer. Because calculating |
| the true bounds may be expensive, it is only done if the fixed layer itself is |
| invisible. |
| |
| Test: compositing/layer-creation/fixed-position-absolute-descendant.html |
| |
| * rendering/RenderLayerCompositor.cpp: |
| (WebCore::RenderLayerCompositor::calculateCompositedBounds): |
| (WebCore::RenderLayerCompositor::requiresCompositingForPosition): |
| * rendering/RenderLayerCompositor.h: |
| |
| 2012-10-04 Vsevolod Vlasov <vsevik@chromium.org> |
| |
| Web Inspector: When uiSourceCode content has diverged from VM script, call frames should be shown in temporary script based uiSourceCodes. |
| https://bugs.webkit.org/show_bug.cgi?id=98385 |
| |
| Reviewed by Pavel Feldman. |
| |
| When javaScriptSource diverges from VM, ResourceScriptMapping now switches debugging |
| to temporary VM scripts based uiSourceCode with isDivergedReplacement property set. |
| Added hasDivergedFromVM and isDivergingFromVM properties to JavaScriptSource. |
| JavaScriptSourceFrame and ScriptSnippetsModel are updated to process breakpoint changes correctly. |
| |
| * inspector/front-end/BreakpointManager.js: |
| (WebInspector.BreakpointManager.prototype.restoreBreakpoints): |
| (WebInspector.BreakpointManager.prototype._uiSourceCodeRemoved): |
| * inspector/front-end/JavaScriptSource.js: |
| (WebInspector.JavaScriptSource.prototype.workingCopyCommitted): |
| (WebInspector.JavaScriptSource.prototype.workingCopyChanged): |
| (WebInspector.JavaScriptSource.prototype.fireHasDivergedFromVMChanged): |
| * inspector/front-end/JavaScriptSourceFrame.js: |
| (WebInspector.JavaScriptSourceFrame.prototype.commitEditing): |
| (WebInspector.JavaScriptSourceFrame.prototype._hasDivergedFromVM): |
| (WebInspector.JavaScriptSourceFrame.prototype.onTextChanged): |
| (WebInspector.JavaScriptSourceFrame.prototype._getBreakpointDecorations): |
| (WebInspector.JavaScriptSourceFrame.prototype._muteBreakpointsWhileEditing): |
| (WebInspector.JavaScriptSourceFrame.prototype._didEditContent): |
| (WebInspector.JavaScriptSourceFrame.prototype._restoreBreakpointsAfterEditing): |
| (WebInspector.JavaScriptSourceFrame.prototype._addBreakpointDecoration): |
| * inspector/front-end/ResourceScriptMapping.js: |
| (WebInspector.ResourceScriptMapping.prototype.rawLocationToUILocation): |
| (WebInspector.ResourceScriptMapping.prototype._hasDivergedFromVMChanged): |
| (WebInspector.ResourceScriptMapping.prototype._bindUISourceCodeToScripts): |
| (WebInspector.ResourceScriptMapping.prototype._getOrCreateTemporaryUISourceCode): |
| * inspector/front-end/ScriptSnippetModel.js: |
| (WebInspector.ScriptSnippetModel.prototype._createUISourceCodeForScript): |
| (WebInspector.ScriptSnippetModel.prototype._restoreBreakpoints): |
| * inspector/front-end/ScriptsPanel.js: |
| (WebInspector.ScriptsPanel.prototype._revealExecutionLine): |
| * inspector/front-end/UISourceCode.js: |
| (WebInspector.UISourceCode.prototype.formatted): |
| |
| 2012-10-04 Vsevolod Vlasov <vsevik@chromium.org> |
| |
| Web Inspector: Scripts panel should not automatically switch to snippet evaluation when previously evaluated snippet is edited. |
| https://bugs.webkit.org/show_bug.cgi?id=98402 |
| |
| Reviewed by Pavel Feldman. |
| |
| Scripts panel does not automatically switch to snippet evaluation when |
| one edits previously evaluated snippet. |
| |
| * inspector/front-end/ScriptSnippetModel.js: |
| (WebInspector.ScriptSnippetModel.prototype._createUISourceCodeForScript): |
| * inspector/front-end/ScriptsPanel.js: |
| (WebInspector.ScriptsPanel.prototype._revealExecutionLine): |
| |
| 2012-10-04 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Don't allow to disable compositing in forced compositing mode |
| https://bugs.webkit.org/show_bug.cgi?id=98048 |
| |
| Reviewed by Jocelyn Turcotte. |
| |
| Make forced compositing mode imply accelerated compositing. This will |
| avoid unexpected situations for platforms that don't want to support |
| the non-accelerated rendering path. |
| |
| Covered by existing tests. |
| |
| * WebCore.exp.in: Export Settings::setAcceleratedCompositingEnabled |
| because it has been deinlined. |
| * page/Settings.cpp: |
| (WebCore::Settings::setAcceleratedCompositingEnabled): |
| (WebCore::Settings::setForceCompositingMode): |
| (WebCore): |
| * page/Settings.h: |
| (Settings): |
| (WebCore::Settings::forceCompositingMode): Make it const as a side fix. |
| |
| 2012-10-04 Harald Alvestrand <hta@google.com> |
| |
| Change RTCPeerConnection GetStats to use Date timestamp format |
| https://bugs.webkit.org/show_bug.cgi?id=98263 |
| |
| Reviewed by Yury Semikhatsky. |
| |
| Tested by extension to RTCPeerConnection-stats test. |
| |
| * Modules/mediastream/RTCStatsElement.cpp: |
| (WebCore::RTCStatsElement::create): |
| (WebCore::RTCStatsElement::RTCStatsElement): |
| * Modules/mediastream/RTCStatsElement.h: long -> double |
| (RTCStatsElement): |
| (WebCore::RTCStatsElement::timestamp): |
| * Modules/mediastream/RTCStatsElement.idl: long -> Date |
| * Modules/mediastream/RTCStatsReport.cpp: |
| (WebCore::RTCStatsReport::addElement): |
| * Modules/mediastream/RTCStatsReport.h: |
| (RTCStatsReport): |
| * Modules/mediastream/RTCStatsResponse.cpp: |
| (WebCore::RTCStatsResponse::addElement): |
| * Modules/mediastream/RTCStatsResponse.h: |
| (RTCStatsResponse): |
| * platform/chromium/support/WebRTCStatsResponse.cpp: |
| (WebKit::WebRTCStatsResponse::addElement): |
| * platform/mediastream/RTCStatsResponseBase.h: |
| (RTCStatsResponseBase): |
| |
| 2012-10-04 Sheriff Bot <webkit.review.bot@gmail.com> |
| |
| Unreviewed, rolling out r130377. |
| http://trac.webkit.org/changeset/130377 |
| https://bugs.webkit.org/show_bug.cgi?id=98392 |
| |
| Chromium Win compilation is broken (Requested by yurys on |
| #webkit). |
| |
| * Modules/mediastream/RTCStatsElement.cpp: |
| (WebCore::RTCStatsElement::create): |
| (WebCore::RTCStatsElement::RTCStatsElement): |
| * Modules/mediastream/RTCStatsElement.h: |
| (RTCStatsElement): |
| (WebCore::RTCStatsElement::timestamp): |
| * Modules/mediastream/RTCStatsElement.idl: |
| * Modules/mediastream/RTCStatsReport.cpp: |
| (WebCore::RTCStatsReport::addElement): |
| * Modules/mediastream/RTCStatsReport.h: |
| (RTCStatsReport): |
| * Modules/mediastream/RTCStatsResponse.cpp: |
| (WebCore::RTCStatsResponse::addElement): |
| * Modules/mediastream/RTCStatsResponse.h: |
| (RTCStatsResponse): |
| * platform/chromium/support/WebRTCStatsResponse.cpp: |
| (WebKit::WebRTCStatsResponse::addElement): |
| * platform/mediastream/RTCStatsResponseBase.h: |
| (RTCStatsResponseBase): |
| |
| 2012-10-04 Harald Alvestrand <hta@google.com> |
| |
| Change RTCPeerConnection GetStats to use Date timestamp format |
| https://bugs.webkit.org/show_bug.cgi?id=98263 |
| |
| Reviewed by Adam Barth. |
| |
| Tested by extension to RTCPeerConnection-stats test. |
| |
| * Modules/mediastream/RTCStatsElement.cpp: |
| (WebCore::RTCStatsElement::create): |
| (WebCore::RTCStatsElement::RTCStatsElement): |
| * Modules/mediastream/RTCStatsElement.h: long -> double |
| (RTCStatsElement): |
| (WebCore::RTCStatsElement::timestamp): |
| * Modules/mediastream/RTCStatsElement.idl: long -> Date |
| * Modules/mediastream/RTCStatsReport.cpp: |
| (WebCore::RTCStatsReport::addElement): |
| * Modules/mediastream/RTCStatsReport.h: |
| (RTCStatsReport): |
| * Modules/mediastream/RTCStatsResponse.cpp: |
| (WebCore::RTCStatsResponse::addElement): |
| * Modules/mediastream/RTCStatsResponse.h: |
| (RTCStatsResponse): |
| * platform/chromium/support/WebRTCStatsResponse.cpp: |
| (WebKit::WebRTCStatsResponse::addElement): |
| * platform/mediastream/RTCStatsResponseBase.h: |
| (RTCStatsResponseBase): |
| |
| 2012-10-05 Kent Tamura <tkent@chromium.org> |
| |
| [Chromium] Enable the multiple fields UI for input[type=date] |
| https://bugs.webkit.org/show_bug.cgi?id=98351 |
| |
| Reviewed by Hajime Morita. |
| |
| Touch files related to ENABLE_INPUT_TYPE_DATE_LEGACY_UI to avoid build |
| issues. |
| |
| No new tests. Many tests will be landed shortly. |
| |
| * html/DateInputType.cpp: |
| * html/DateInputType.h: |
| |
| 2012-10-04 Kent Tamura <tkent@chromium.org> |
| |
| Add code for input[type=date] with the multiple fields UI |
| https://bugs.webkit.org/show_bug.cgi?id=98340 |
| |
| Reviewed by Hajime Morita. |
| |
| The new code is available if !ENABLE(INPUT_TYPE_DATE_LEGACY_UI). At this |
| moment, there are no platforms enabling the new code. We're going to |
| enable it soon on desktop Chromium, and add tests. Then we're going to |
| remove the code for ENABLE(INPUT_TYPE_DATE_LEGACY_UI). |
| |
| ENABLE(INPUT_TYPE_DATE_LEGACY_UI) means the current UI; input[type=date] |
| is represetnted as a kind of text field, and it has code to invoke a |
| calendar picker. |
| ENABLE(CALENDAR_PICKER) was used wrongly. It meant calendar picker |
| support + text field UI of input[type=date]. Now it means only calendar |
| picker support. |
| |
| * html/DateInputType.h: |
| (WebCore): If ENABLE(INPUT_MULTIPLE_FIELDS_UI) && |
| !ENABLE(INPUT_TYPE_DATE_LEGACY_UI), change the base class to the class |
| for multiple fields UI. |
| (DateInputType): Wrap the code for text fields behavior and calendar |
| picker UI with ENABLE(INPUT_TYPE_DATE_LEGACY_UI). Add functions for |
| ENABLE(INPUT_MULTIPLE_FIELDS_UI) |
| * html/DateInputType.cpp: |
| (WebCore::DateInputType::DateInputType): |
| Change the flag name; CALENDAR_PICKER -> INPUT_TYPE_DATE_LEGACY_UI |
| (WebCore): ditto. |
| (WebCore::DateInputType::formatDateTimeFieldsState): |
| A callback for multiple fields UI. This constructs a string value from |
| each of values of multiple fields. |
| Note that we don't need to do +1 to month(). |
| (WebCore::DateInputType::setupLayoutParameters): |
| A callback for multiple fields UI. Passes information to build UI. |
| |
| * html/BaseMultipleFieldsDateAndTimeInputType.h: |
| (BaseMultipleFieldsDateAndTimeInputType): |
| Add m_pickerIndicatorIsAlwaysVisible member, wrap some members with flags. |
| * html/BaseMultipleFieldsDateAndTimeInputType.cpp: |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::BaseMultipleFieldsDateAndTimeInputType): |
| Initialize m_pickerIndicatorIsAlwaysVisible. |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::createShadowSubtree): |
| If a type supports calendar picker, we should always show the picker |
| indicator. We introduce m_pickerIndicatorIsAlwaysVisible flag, and ask |
| RenderTheme for support status of each of types. |
| Add a local variable 'document' to avoid multiple element()->document(). |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::updatePickerIndicatorVisibility): |
| - If m_pickerIndicatorIsAlwaysVisible, don't hide the picker indicator element. |
| - Wrap the code with appropriate flags. |
| |
| * rendering/RenderTheme.h: |
| (WebCore::RenderTheme::supportsCalendarPicker): Added. |
| * rendering/RenderThemeChromiumMac.h: Override supportsCalendarPicker. |
| * rendering/RenderThemeChromiumMac.mm: |
| (WebCore::RenderThemeChromiumMac::supportsCalendarPicker): |
| Added. Delegate to RenderThemeChromiumCommon. |
| * rendering/RenderThemeChromiumSkia.h: Override supportsCalendarPicker. |
| * rendering/RenderThemeChromiumSkia.cpp: |
| (WebCore::RenderThemeChromiumSkia::supportsCalendarPicker): |
| Added. Delegate to RenderThemeChromiumCommon. |
| * rendering/RenderThemeChromiumCommon.h: |
| (RenderThemeChromiumCommon): Declare supportsCalendarPicker. |
| * rendering/RenderThemeChromiumCommon.cpp: |
| (WebCore::RenderThemeChromiumCommon::supportsCalendarPicker): |
| Returns true if the type is "date." |
| |
| * html/DateTimeFieldsState.h: |
| (DateTimeFieldsState): Add a comment for the m_month field. |
| |
| 2012-10-04 Kent Tamura <tkent@chromium.org> |
| |
| DateTimeYearFieldElement should respect min/max values specified by page authors |
| https://bugs.webkit.org/show_bug.cgi?id=98227 |
| |
| Reviewed by Hajime Morita. |
| |
| Before this patch, we always set 1 to the minimum limit and 275760 to |
| the maximum limit for a year field, and a user can specify any year |
| regardless of min/max attributes. Such wide range is unnecessary for |
| normal applications and we should provide a way to limit the range. |
| |
| Test: fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events.html |
| |
| * html/shadow/DateTimeFieldElements.h: |
| To add four constructor arguments, introduce Parameters struct. |
| Actually, we add the followings; |
| - minimum year in UI |
| - maximum year in UI |
| - min attribute is specified |
| - max attribute is specified |
| (Parameters): |
| (WebCore::DateTimeYearFieldElement::Parameters::Parameters): |
| (DateTimeYearFieldElement): |
| * html/shadow/DateTimeFieldElements.cpp: |
| (WebCore::DateTimeYearFieldElement::DateTimeYearFieldElement): ditto. |
| (WebCore::DateTimeYearFieldElement::create): ditto. |
| (WebCore::DateTimeYearFieldElement::clampValueForHardLimits): |
| Override DateTimeNumericFieldElement::clampValueForHardLimits. |
| By this, we allow to set out-of-range year values. |
| (WebCore::currentFullYear): A helper to get the current year. |
| (WebCore::DateTimeYearFieldElement::defaultValueForStepDown): |
| If the field has no value and step down operation occurs, |
| - the field has the current year if the max attribute is not specified. |
| - the field has the maximum value otherwise. |
| (WebCore::DateTimeYearFieldElement::defaultValueForStepUp): Similar change. |
| |
| * html/shadow/DateTimeNumericFieldElement.h: |
| (DateTimeNumericFieldElement): Declare clampValueForHardLimits. |
| * html/shadow/DateTimeNumericFieldElement.cpp: |
| (WebCore::DateTimeNumericFieldElement::clampValueForHardLimits): |
| (WebCore::DateTimeNumericFieldElement::setValueAsInteger): |
| Call clampValueForHardLimits instead of clampValue in order to |
| distinguish limits for UI and limits for internal value update. |
| |
| * html/shadow/DateTimeEditElement.h: |
| (LayoutParameters): Add minimumYear and maximumYear members. |
| (WebCore::DateTimeEditElement::LayoutParameters::LayoutParameters): |
| Initialize minimumYear and maximumYear. |
| (WebCore::DateTimeEditElement::LayoutParameters::undefinedYear): |
| Represents 'undefined' value for minimumYear and maximumYear. |
| * html/shadow/DateTimeEditElement.cpp: |
| (WebCore::DateTimeEditBuilder::visitField): |
| Preparas DateTimeYearField::Parameters and pass it to the DateTimeYearField factory. |
| |
| * html/BaseMultipleFieldsDateAndTimeInputType.cpp: |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::fullYear): |
| A helper to get a year value from an attribute value string. |
| * html/BaseMultipleFieldsDateAndTimeInputType.h: |
| (BaseMultipleFieldsDateAndTimeInputType): Add fullYear(). |
| |
| * html/DateTimeInputType.cpp: |
| (WebCore::DateTimeInputType::setupLayoutParameters): |
| Set LayoutParameters::minimumYear and maximumYear. |
| * html/DateTimeLocalInputType.cpp: |
| (WebCore::DateTimeLocalInputType::setupLayoutParameters): ditto. |
| * html/MonthInputType.cpp: |
| (WebCore::MonthInputType::setupLayoutParameters): ditto. |
| * html/WeekInputType.cpp: |
| (WebCore::WeekInputType::setupLayoutParameters): ditto. |
| |
| 2012-10-03 Adam Barth <abarth@webkit.org> |
| |
| Unreviewed. Fix parse error in vcproj file. |
| |
| * WebCore.vcproj/WebCore.vcproj: |
| |
| 2012-10-03 Keishi Hattori <keishi@webkit.org> |
| |
| Implement localizeValue for TimeInputType |
| https://bugs.webkit.org/show_bug.cgi?id=98237 |
| |
| Reviewed by Kent Tamura. |
| |
| We want to localize time values for the suggestion picker. |
| DateTimeStringBuilder parses a format and creates a formatted string. |
| |
| Added chromium unit test LocaleMacTest.formatTime |
| |
| * html/BaseMultipleFieldsDateAndTimeInputType.cpp: |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::shouldHaveSecondField): Moved from LayoutParameters because we want to use it inside localizeValue. |
| (WebCore): |
| * html/BaseMultipleFieldsDateAndTimeInputType.h: |
| (BaseMultipleFieldsDateAndTimeInputType): |
| * html/DateTimeInputType.cpp: |
| (WebCore::DateTimeInputType::setupLayoutParameters): |
| * html/DateTimeLocalInputType.cpp: |
| (WebCore::DateTimeLocalInputType::setupLayoutParameters): |
| * html/TimeInputType.cpp: |
| (WebCore::TimeInputType::localizeValue): |
| (WebCore): |
| (WebCore::TimeInputType::setupLayoutParameters): |
| * html/TimeInputType.h: |
| (TimeInputType): |
| * html/shadow/DateTimeEditElement.cpp: |
| (WebCore): |
| * html/shadow/DateTimeEditElement.h: |
| (WebCore::DateTimeEditElement::LayoutParameters::LayoutParameters): |
| * platform/text/LocaleICU.cpp: |
| (WebCore::LocaleICU::formatDateTime): Calls Localizer::formatDateTime if the date component is not a date. |
| * platform/text/LocaleICU.h: |
| (LocaleICU): |
| * platform/text/LocaleWin.cpp: |
| (WebCore::LocaleWin::formatDateTime): Calls Localizer::formatDateTime if the date component is not a date. |
| * platform/text/LocaleWin.h: |
| (LocaleWin): |
| * platform/text/LocaleNone.cpp: |
| (LocaleNone): |
| (WebCore::LocaleNone::formatDateTime): |
| * platform/text/Localizer.cpp: |
| (DateTimeStringBuilder): |
| (WebCore): |
| (WebCore::DateTimeStringBuilder::DateTimeStringBuilder): Takes a |
| Localizer pointer. This is used inside the Localizer so the Localizer |
| will out live the DateTimeStringBuilder. |
| (WebCore::DateTimeStringBuilder::build): Builds a localized string for the given format. |
| (WebCore::DateTimeStringBuilder::zeroPadString): |
| (WebCore::DateTimeStringBuilder::appendNumber): Appends a number with left zero padding to match width. |
| (WebCore::DateTimeStringBuilder::visitField): |
| (WebCore::DateTimeStringBuilder::visitLiteral): |
| (WebCore::DateTimeStringBuilder::toString): Returns the localized string. |
| (WebCore::Localizer::formatDateTime): |
| * platform/text/Localizer.h: |
| * platform/text/mac/LocaleMac.h: |
| (LocaleMac): |
| * platform/text/mac/LocaleMac.mm: |
| (WebCore::LocaleMac::formatDateTime): Calls Localizer::formatDateTime if the date component is not a date. |
| |
| 2012-10-03 Douglas Stockwell <dstockwell@chromium.org> |
| |
| Chromium needs support for border radius clipping |
| https://bugs.webkit.org/show_bug.cgi?id=69866 |
| |
| Reviewed by Stephen White. |
| |
| Changes to make this suitably efficient have already landed upstream in skia: |
| http://code.google.com/p/skia/source/detail?r=2924 |
| |
| Covered by existing tests. |
| |
| * rendering/RenderLayer.cpp: |
| |
| 2012-10-03 Benjamin Poulain <bpoulain@apple.com> |
| |
| Simplify attribute access in Element::computeInheritedLanguage |
| https://bugs.webkit.org/show_bug.cgi?id=98327 |
| |
| Reviewed by Andreas Kling. |
| |
| * dom/Element.cpp: |
| (WebCore::Element::computeInheritedLanguage): |
| By using Element::fastGetAttribute(), we check for the existence of attributeData twice |
| and do a bunch of useless operation on AtomicString. |
| |
| By using ElementAttributeData directly, we can cut it to the two important branch. |
| |
| 2012-10-03 Kangil Han <kangil.han@samsung.com> |
| |
| Fix unused parameter compile warnings. |
| https://bugs.webkit.org/show_bug.cgi?id=98243 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Fixed unused parameter compile warning by removing parameter names and adding UNUSED_PARAM usage. |
| |
| * plugins/PluginDebug.cpp: |
| (WebCore::prettyNameForNPPVariable): |
| * plugins/npapi.cpp: |
| (NPN_MemFlush): |
| (NPN_RequestRead): |
| (NPN_GetJavaPeer): |
| |
| 2012-10-03 Adam Barth <abarth@webkit.org> |
| |
| Measure the usage of WebSQLDatabase |
| https://bugs.webkit.org/show_bug.cgi?id=98330 |
| |
| Reviewed by Ojan Vafai. |
| |
| WebKit is the only engine that implements WebSQLDatabase. This patch |
| causes us to measure its usage so we can see how quickly web sites move |
| to IndexedDB. |
| |
| * Modules/webdatabase/DOMWindowWebDatabase.idl: |
| * page/FeatureObserver.h: |
| |
| 2012-10-03 Arnaud Renevier <a.renevier@sisa.samsung.com> |
| |
| [soup] WebKit crashes when doing a http request |
| https://bugs.webkit.org/show_bug.cgi?id=98055 |
| |
| Reviewed by Martin Robinson. |
| |
| On i386, (d->m_firstRequest.timeoutInterval() * 1000) results in 0 if |
| timeoutInterval() is INT_MAX. So, set default timeout to 0 to avoid |
| calling soup_add_timeout with a 0 value. |
| |
| Also, if resource handle is deleted before "request-started" signal is |
| emitted, soupMessage handle points to a deleted object, and a crash |
| occurs. So, reset soupMessage handle data in |
| cleanupSoupRequestOperation so it won't happen anymore. |
| |
| Lastly, if timeout occurs before request is completed, handle is |
| deleted, and crash occurs in sendRequestCallback due to an early |
| destroyed handle. To avoid that, call handle->cancel in |
| requestTimeoutCallback. There is no need to call |
| cleanupSoupRequestOperation anymore since handle->cancel will trigger |
| sendRequestCallback, and as handle is deleted, |
| cleanupSoupRequestOperation will be called automatically. |
| |
| No new tests yet, tests will be added with the patch in bug 74802. |
| |
| * platform/network/ResourceRequestBase.cpp: |
| (WebCore): |
| * platform/network/soup/ResourceHandleSoup.cpp: |
| (WebCore::cleanupSoupRequestOperation): |
| (WebCore::ResourceHandle::platformSetDefersLoading): |
| (WebCore::requestTimeoutCallback): |
| |
| 2012-10-03 Adam Barth <abarth@webkit.org> |
| |
| Remove support for ENABLE(LEGACY_WEBKIT_BLOB_BUILDER) |
| https://bugs.webkit.org/show_bug.cgi?id=98301 |
| |
| Reviewed by Eric Seidel. |
| |
| According to anonymous usage statistics, the APIs guarded by |
| ENABLE(LEGACY_WEBKIT_BLOB_BUILDER) are used on approximately 0.006% of |
| web pages. Given that this feature is only enabled in GTK and Chromium, |
| it seems likely that we should remove it. |
| |
| * CMakeLists.txt: |
| * DerivedSources.make: |
| * DerivedSources.pri: |
| * GNUmakefile.features.am: |
| * GNUmakefile.list.am: |
| * WebCore.gypi: |
| * WebCore.xcodeproj/project.pbxproj: |
| * fileapi/WebKitBlobBuilder.idl: Removed. |
| * page/DOMWindow.idl: |
| |
| 2012-10-03 Beth Dakin <bdakin@apple.com> |
| |
| https://bugs.webkit.org/show_bug.cgi?id=98313 |
| ScrollingStateNode should keep a Vector of children instead of child |
| pointers |
| |
| Reviewed by Simon Fraser. |
| |
| This patch re-names ScrollingStateNode::cloneNode() to |
| ScrollingStateNode::cloneAndResetNode(). The new function resets the |
| change properties of the current node after cloning it, and it also |
| takes care of cloning children, which the old function did not do. |
| |
| m_firstChild and m_nextSibling are gone. Use the m_children Vector |
| instead. |
| * page/scrolling/ScrollingStateNode.cpp: |
| (WebCore::ScrollingStateNode::cloneAndResetChildNodes): |
| (WebCore::ScrollingStateNode::appendChild): |
| * page/scrolling/ScrollingStateNode.h: |
| (ScrollingStateNode): |
| (WebCore::ScrollingStateNode::parent): |
| (WebCore::ScrollingStateNode::setParent): |
| |
| Reset the change properties and clone children in cloneAndResetNode() |
| * page/scrolling/ScrollingStateScrollingNode.cpp: |
| (WebCore::ScrollingStateScrollingNode::cloneAndResetNode): |
| * page/scrolling/ScrollingStateScrollingNode.h: |
| |
| Yay, this function can be vastly simplified now that we don't have |
| those messy child and sibling pointers. |
| * page/scrolling/ScrollingStateTree.cpp: |
| (WebCore::ScrollingStateTree::commit): |
| |
| 2012-10-03 Ojan Vafai <ojan@chromium.org> |
| |
| Replace uses of -webkit-box-sizing with box-sizing |
| https://bugs.webkit.org/show_bug.cgi?id=98312 |
| |
| Reviewed by Tony Chang. |
| |
| No need to use the prefixed version when the unprefixed works the same. |
| No new tests since there's no change in behavior.. |
| |
| * css/html.css: |
| |
| 2012-10-03 Joshua Bell <jsbell@chromium.org> |
| |
| IndexedDB: Don't do full commit for empty transactions |
| https://bugs.webkit.org/show_bug.cgi?id=89239 |
| |
| Reviewed by Tony Chang. |
| |
| Don't bother creating a leveldb write batch if there's nothing in the transaction |
| to commit. Note that a read-only transaction may still have index cleanup so may |
| not be an empty transaction. |
| |
| This cuts the Lookup2 benchmark in http://reyesr.github.com/html5-storage-benchmark/ |
| from 70s to 2s. |
| |
| Covered by existing tests, e.g. storage/indexeddb/transaction-basics.html |
| |
| * platform/leveldb/LevelDBTransaction.cpp: |
| (WebCore::LevelDBTransaction::commit): |
| |
| 2012-10-03 Adam Klein <adamk@chromium.org> |
| |
| Remove bogus FIXME from Document.idl |
| https://bugs.webkit.org/show_bug.cgi?id=98302 |
| |
| Reviewed by Adam Barth. |
| |
| The FIXME claimed that document.body throwing an exception was not |
| specced, but in fact it is: |
| http://www.whatwg.org/specs/web-apps/current-work/multipage/dom.html#dom-document-body |
| |
| * dom/Document.idl: |
| |
| 2012-10-03 Joshua Bell <jsbell@chromium.org> |
| |
| IndexedDB: Memory leak when deleting object stores with indexes |
| https://bugs.webkit.org/show_bug.cgi?id=98292 |
| |
| Reviewed by Tony Chang. |
| |
| Reference cycles between IDBObjectStore and IDBIndex instances are explicitly |
| broken when the transaction completes (and the spec allows traversal to fail). |
| Deleted stores need to have the reference cycle broken too. |
| |
| Caught by running valgrind over: storage/indexeddb/keypath-basics.html |
| |
| * Modules/indexeddb/IDBTransaction.cpp: |
| (WebCore::IDBTransaction::objectStoreDeleted): Add store to set. |
| (WebCore::IDBTransaction::dispatchEvent): Notify stores in set. |
| * Modules/indexeddb/IDBTransaction.h: Add set of deleted stores. |
| |
| 2012-10-03 Adam Barth <abarth@webkit.org> |
| |
| CSSNamespace.h is empty and should be deleted |
| https://bugs.webkit.org/show_bug.cgi?id=98304 |
| |
| Reviewed by Eric Seidel. |
| |
| There's no reason to have this file in the repository. |
| |
| * GNUmakefile.list.am: |
| * WebCore.gypi: |
| * WebCore.vcproj/WebCore.vcproj: |
| * WebCore.xcodeproj/project.pbxproj: |
| * css/CSSNamespace.h: Removed. |
| |
| 2012-10-03 Arnaud Renevier <a.renevier@sisa.samsung.com> |
| |
| Build failure with css filters enabled and accelerated compositing disabled |
| https://bugs.webkit.org/show_bug.cgi?id=95908 |
| |
| Reviewed by Tony Chang. |
| |
| Do not try to setBackingNeedsRepaint when building without accelerated |
| compositing. |
| |
| Also, allow painting with filter (paintsWithFilters returns true if |
| renderer has filter) when accelerated compositing is not enabled. |
| |
| No functional change, so no new tests. |
| |
| * rendering/RenderLayer.cpp: |
| (WebCore::RenderLayer::styleChanged): |
| |
| 2012-10-03 Emil A Eklund <eae@chromium.org> |
| |
| Round image sizes when zooming |
| https://bugs.webkit.org/show_bug.cgi?id=98205 |
| |
| Reviewed by Eric Seidel. |
| |
| We currently floor image sizes when zooming which can result in |
| images being rendered at one pixel less than the actual size. |
| This is especially likely to happen for very large images. |
| |
| Test: fast/sub-pixel/zoomed-image-tiles.html |
| |
| * loader/cache/CachedImage.cpp: |
| (WebCore::CachedImage::imageSizeForRenderer): |
| |
| 2012-10-03 Hugo Parente Lima <hugo.lima@openbossa.org> |
| |
| [WK2] PageViewportController.cpp is supposed to be a generic WebKit2 file but only works with Qt port. |
| https://bugs.webkit.org/show_bug.cgi?id=98186 |
| |
| Reviewed by Noam Rosenthal. |
| |
| Remove the implicit conversion from WebCore::FloatSize to QSize. |
| |
| * platform/graphics/FloatSize.h: |
| (FloatSize): |
| |
| 2012-10-03 Levi Weintraub <leviw@chromium.org> |
| |
| [Sub-pixel layout] incorrect rendering when painting sub-layers as their own root |
| https://bugs.webkit.org/show_bug.cgi?id=97484 |
| |
| Reviewed by Eric Seidel. |
| |
| When in compositing mode, layer painting can be triggered through the backing store. When this |
| happens, a non-top-level RenderLayer is called to paint as its own root. Normally, we attempt to preserve |
| the proper sub-pixel accumulation through layers to their children, but since we're not |
| starting with the top-level layer, we haven't properly accumulated one, and convertToLayerCoords, |
| another source of correctly getting the sub-pixel offset for a layer, also avoids crawling |
| past the listed root layer. |
| |
| When painting a root layer, we're aligned to the surface we're painting to, so we round our |
| offset to avoid moving objects around. |
| |
| * rendering/RenderLayer.cpp: |
| (WebCore::RenderLayer::paintLayerContents): |
| |
| 2012-10-03 Jeff Timanus <twiz@chromium.org> |
| |
| [chromium] Expose settings value to conditionally enable pinch-zoom scaling in the Chromium compositor. The |
| flag defaults to disabled, so this change should be a no-op for scaling/scrolling behaviour. |
| https://bugs.webkit.org/show_bug.cgi?id=93292 |
| |
| Reviewed by James Robinson. |
| |
| Tests: Existing page-scale layout tests. |
| |
| * page/Frame.cpp: |
| (WebCore::Frame::frameScaleFactor): |
| * page/Settings.cpp: |
| (WebCore::Settings::Settings): |
| * page/Settings.h: |
| (WebCore::Settings::setApplyPageScaleFactorInCompositor): |
| (WebCore::Settings::applyPageScaleFactorInCompositor): |
| (Settings): |
| |
| 2012-10-03 Stephen Chenney <schenney@chromium.org> |
| |
| Font data is purged while fonts are still using it |
| https://bugs.webkit.org/show_bug.cgi?id=93640 |
| |
| Reviewed by Eric Seidel. |
| |
| Move the handling of custom font pruning from Document to FontFallbackList. |
| The previous inplementation allowed fonts to be removed before all their |
| clients were done. This change moves handling of custom font purging to the |
| FontFallbackList class, which is the shared object that is only removed |
| when all clients of a font are done with it. This fixes a crash in Angry |
| Birds due to a seamless iframe and some failing tests in fast/frames/seamless. |
| |
| The specific element that causes problems is: |
| <iframe id="ingame_frame0" name="ingame_frame0" frameborder="0" seamless="true" |
| src="http://chrome.angrybirds.com/ingame_graphic.html" |
| onload="this.style.opacity = 1; parent.adLoaded();" scrolling="no" |
| style="opacity: 1; -webkit-transition: opacity 1s ease-in-out 0s; |
| position: absolute; border: 0px; width: 312px; height: 320px; z-index: |
| 300; overflow: hidden; visibility: visible;"></iframe> |
| The source document uses the same font as the embedding document. |
| |
| Tests: fast/frames/seamless/seamless-custom-font-pruning-crash.html |
| fast/frames/seamless/seamless-nested-crash.html |
| |
| * css/CSSFontFaceSource.cpp: |
| (WebCore::CSSFontFaceSource::getFontData): Remove code to register the font with the document. |
| * css/CSSSegmentedFontFace.cpp: |
| (WebCore::CSSSegmentedFontFace::getFontData): Remove code to register the font with the document. |
| * dom/Document.cpp: |
| (WebCore::Document::~Document): Remove code that records and purges custom fonts. |
| (WebCore): |
| (WebCore::Document::reportMemoryUsage): Remove reference to non-existent objects. |
| * dom/Document.h: |
| (WebCore): |
| (Document): Remove method declarations for custom font handling. |
| * platform/graphics/FontFallbackList.h: |
| (FontFallbackList): Moved some code around and made non-copyable. |
| (WebCore::FontFallbackList::setGlyphPageZero): Moved. |
| (WebCore::FontFallbackList::setGlyphPages): Moved. |
| * platform/graphics/GlyphPageTreeNode.cpp: |
| (WebCore::GlyphPageTreeNode::pruneFontData): Removed unnecessary null check. |
| * platform/graphics/SegmentedFontData.cpp: |
| (WebCore::SegmentedFontData::~SegmentedFontData): Added code to prune the Glyph pages when this is deleted. |
| * platform/graphics/SimpleFontData.cpp: |
| (WebCore::SimpleFontData::~SimpleFontData): Added code to prune the Glyph pages when this is deleted. |
| |
| 2012-10-03 Adam Barth <abarth@webkit.org> |
| |
| Crash when calling document.open during unload |
| https://bugs.webkit.org/show_bug.cgi?id=98287 |
| |
| Reviewed by Nate Chapin. |
| |
| Calling document.open results in us nulling out m_documentLoader. This |
| code doesn't properly handle that case and crashes. |
| |
| Test: fast/parser/document-open-in-unload.html |
| |
| * loader/FrameLoader.cpp: |
| (WebCore::FrameLoader::commitProvisionalLoad): |
| |
| 2012-10-03 Benjamin Poulain <bpoulain@apple.com> |
| |
| Element::computeInheritedLanguage: evaluate the while() condition after fetching the string |
| https://bugs.webkit.org/show_bug.cgi?id=98220 |
| |
| Reviewed by Andreas Kling. |
| |
| * dom/Element.cpp: |
| (WebCore::Element::computeInheritedLanguage): |
| The condition is never false on the first execution. Move the condition to the |
| end of the loop for fun and profit. |
| |
| 2012-10-03 Hans Wennborg <hans@chromium.org> |
| |
| Speech JavaScript API: Add SpeechRecognition.interimResults attribute |
| https://bugs.webkit.org/show_bug.cgi?id=98279 |
| |
| Reviewed by Adam Barth. |
| |
| Add the interimResults attribute and pass it to the embedder. It was |
| added to the spec draft in |
| http://dvcs.w3.org/hg/speech-api/rev/d25fea0d029c |
| |
| Tested in fast/speech/scripted/basics.html |
| |
| * Modules/speech/SpeechRecognition.cpp: |
| (WebCore::SpeechRecognition::start): |
| (WebCore::SpeechRecognition::SpeechRecognition): |
| * Modules/speech/SpeechRecognition.h: |
| (WebCore::SpeechRecognition::interimResults): |
| (WebCore::SpeechRecognition::setInterimResults): |
| * Modules/speech/SpeechRecognition.idl: |
| * Modules/speech/SpeechRecognitionClient.h: |
| (SpeechRecognitionClient): |
| * Modules/speech/SpeechRecognitionController.h: |
| (WebCore::SpeechRecognitionController::start): |
| |
| 2012-10-03 Hans Wennborg <hans@chromium.org> |
| |
| Speech JavaScript API: Remove resultdeleted event |
| https://bugs.webkit.org/show_bug.cgi?id=98272 |
| |
| Reviewed by Adam Barth. |
| |
| Remove the resultdeleted event. This was never used, and was removed |
| from the spec draft in |
| http://dvcs.w3.org/hg/speech-api/rev/f9d53ab8b449 |
| |
| The fast/speech/scripted/basics.html test is updated to reflect this. |
| |
| * Modules/speech/SpeechRecognition.cpp: |
| * Modules/speech/SpeechRecognition.h: |
| (SpeechRecognition): |
| * Modules/speech/SpeechRecognition.idl: |
| * Modules/speech/SpeechRecognitionEvent.cpp: |
| * Modules/speech/SpeechRecognitionEvent.h: |
| (SpeechRecognitionEvent): |
| * dom/EventNames.h: |
| (WebCore): |
| |
| 2012-09-16 Mark Hahnenberg <mhahnenberg@apple.com> |
| |
| Delayed structure sweep can leak structures without bound |
| https://bugs.webkit.org/show_bug.cgi?id=96546 |
| |
| Reviewed by Geoffrey Garen. |
| |
| This patch gets rid of the separate Structure allocator in the MarkedSpace and adds two new destructor-only |
| allocators. We now have separate allocators for our three types of objects: those objects with no destructors, |
| those objects with destructors and with immortal structures, and those objects with destructors that don't have |
| immortal structures. All of the objects of the third type (destructors without immortal structures) now |
| inherit from a new class named JSDestructibleObject (which in turn is a subclass of JSNonFinalObject), which stores |
| the ClassInfo for these classes at a fixed offset for safe retrieval during sweeping/destruction. |
| |
| No new tests. |
| |
| * ForwardingHeaders/runtime/JSDestructableObject.h: Added. |
| * bindings/js/JSDOMWrapper.h: Inherits from JSDestructibleObject. |
| (JSDOMWrapper): |
| (WebCore::JSDOMWrapper::JSDOMWrapper): |
| * bindings/scripts/CodeGeneratorJS.pm: Add finalizers to anything that inherits from JSGlobalObject, |
| e.g. JSDOMWindow and JSWorkerContexts. For those classes we also need to define needsDestruction as true. |
| (GenerateHeader): |
| * bridge/objc/objc_runtime.h: Inherit from JSDestructibleObject. |
| (ObjcFallbackObjectImp): |
| * bridge/objc/objc_runtime.mm: |
| (Bindings): |
| (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp): |
| * bridge/runtime_array.cpp: Use a finalizer so that JSArray isn't forced to inherit from JSDestructibleObject. |
| (JSC): |
| (JSC::RuntimeArray::destroy): |
| * bridge/runtime_array.h: |
| (JSC::RuntimeArray::create): |
| (JSC): |
| * bridge/runtime_object.cpp: Inherit from JSDestructibleObject. |
| (Bindings): |
| (JSC::Bindings::RuntimeObject::RuntimeObject): |
| * bridge/runtime_object.h: |
| (RuntimeObject): |
| |
| 2012-10-02 Anders Carlsson <andersca@apple.com> |
| |
| Change most GraphicsLayer::create calls to use the version that takes a GraphicsLayerFactory |
| https://bugs.webkit.org/show_bug.cgi?id=98217 |
| |
| Reviewed by Andreas Kling. |
| |
| * WebCore.exp.in: |
| * rendering/RenderLayerBacking.cpp: |
| (WebCore::RenderLayerBacking::createGraphicsLayer): |
| * rendering/RenderLayerCompositor.cpp: |
| (WebCore::RenderLayerCompositor::updateOverflowControlsLayers): |
| (WebCore::RenderLayerCompositor::ensureRootLayer): |
| |
| 2012-10-03 Joshua Bell <jsbell@chromium.org> |
| |
| IndexedDB: Optimize encodeString/decodeString |
| https://bugs.webkit.org/show_bug.cgi?id=97794 |
| |
| Reviewed by Tony Chang. |
| |
| Optimize string encoding/decoding, which showed up as a CPU hot spot during profiling. |
| The backing store uses big-endian ordering of 16-bit code unit strings, so a memcopy |
| isn't sufficient, but the code used StringBuilder::append() character-by-character |
| and custom byte-swapping which was slow. |
| |
| Ran a test w/ DumpRenderTree (to avoid multiprocess overhead) taking a 10k character string |
| and putting it 20k times and getting it 20k times. On my test box, mean time before the |
| patch was 8.2s, mean time after the patch was 4.6s. |
| |
| Tested by Chromium's webkit_unit_tests --gtest_filter='IDBLevelDBCodingTest.*String*' |
| |
| * Modules/indexeddb/IDBLevelDBCoding.cpp: |
| (WebCore::IDBLevelDBCoding::encodeString): |
| (WebCore::IDBLevelDBCoding::decodeString): |
| |
| 2012-10-03 Keishi Hattori <keishi@webkit.org> |
| |
| Implement DataList UI for input type time on chromium |
| https://bugs.webkit.org/show_bug.cgi?id=98240 |
| |
| Reviewed by Kent Tamura. |
| |
| This adds datalist UI for input type time. We add the picker indicator to |
| BaseMultipleFieldsDateAndTimeInputType. We enclose the dateTimeEdit element |
| and picker indicator inside a new div element so we can position the picker |
| indicator in the same place as input type=date. |
| |
| Tests: platform/chromium/fast/forms/time/time-suggestion-picker-appearance-rtl.html |
| platform/chromium/fast/forms/time/time-suggestion-picker-appearance-with-scroll-bar.html |
| platform/chromium/fast/forms/time/time-suggestion-picker-appearance.html |
| platform/chromium/fast/forms/time/time-suggestion-picker-key-operations.html |
| platform/chromium/fast/forms/time/time-suggestion-picker-mouse-operations.html |
| |
| * css/html.css: |
| (input::-webkit-date-and-time-container): |
| * html/BaseMultipleFieldsDateAndTimeInputType.cpp: |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::BaseMultipleFieldsDateAndTimeInputType): |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::createShadowSubtree): Creates a picker indicator. |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::handleKeydownEvent): Open the picker on Alt+Down. |
| (WebCore): |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::listAttributeTargetChanged): Updates picker visibility. |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::updatePickerIndicatorVisibility): In the future, DateInputType can override |
| this so the picker indicator is always visible. |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::hidePickerIndicator): |
| (WebCore::BaseMultipleFieldsDateAndTimeInputType::showPickerIndicator): |
| * html/BaseMultipleFieldsDateAndTimeInputType.h: |
| (WebCore): |
| (BaseMultipleFieldsDateAndTimeInputType): |
| * html/shadow/DateTimeFieldElement.cpp: |
| (WebCore::DateTimeFieldElement::defaultKeyboardEventHandler): Ignore Alt+down because it should trigger the picker to open. |
| * rendering/RenderThemeChromiumCommon.cpp: |
| (WebCore::RenderThemeChromiumCommon::supportsDataListUI): Add time to the list. |
| |
| 2012-10-03 Andreas Kling <kling@webkit.org> |
| |
| Give CSSValueList backing vector an inline capacity. |
| <http://webkit.org/b/98266> |
| <rdar://problem/12421425> |
| |
| Reviewed by Anders Carlsson. |
| |
| Set an inline capacity of 4 on the CSSValue vector backing CSSValueList. This avoids an extra heap allocation |
| in the common case, and reduces total memory use across the board, since the majority of CSSValueLists have |
| at least 1 item, and the Vector will bump from 0 to 16 capacity on the first append. |
| |
| 394kB progression on Membuster3. |
| |
| * css/CSSValueList.h: |
| (CSSValueList): |
| |
| 2012-10-03 Ilya Tikhonovsky <loislo@chromium.org> |
| |
| Web Inspector: NMI: instrument NativeImageSkia. |
| https://bugs.webkit.org/show_bug.cgi?id=96277 |
| |
| Reviewed by Yury Semikhatsky. |
| |
| * platform/graphics/skia/NativeImageSkia.cpp: |
| (WebCore::NativeImageSkia::reportMemoryUsage): |
| (WebCore::reportMemoryUsage): |
| |
| 2012-10-03 Pavel Feldman <pfeldman@chromium.org> |
| |
| Web Inspector: remember the last dock option so that user could toggle between dock to bottom and right |
| https://bugs.webkit.org/show_bug.cgi?id=98255 |
| |
| Reviewed by Vsevolod Vlasov. |
| |
| - Introduced DockController.js that covers the dock mechanics |
| - Removed dock orientation from the settings |
| - Storing the last dock option to present it as default |
| - Simplified the multi-option status bar button |
| |
| * WebCore.gypi: |
| * WebCore.vcproj/WebCore.vcproj: |
| * inspector/compile-front-end.py: |
| * inspector/front-end/DockController.js: Added. |
| (WebInspector.DockController): |
| (WebInspector.DockController.prototype.get element): |
| (WebInspector.DockController.prototype.setDocked.set if): |
| (WebInspector.DockController.prototype.setDocked): |
| (WebInspector.DockController.prototype.setDockingUnavailable): |
| (WebInspector.DockController.prototype._updateUI.get states): |
| (WebInspector.DockController.prototype._updateUI): |
| (WebInspector.DockController.prototype._decorateButtonForTargetState): |
| (WebInspector.DockController.prototype._createDockOptions): |
| (WebInspector.DockController.prototype._toggleDockState): |
| (WebInspector.DockController.prototype.isCompactMode): |
| (WebInspector.DockController.prototype.setCompactMode): |
| * inspector/front-end/InspectorFrontendAPI.js: |
| (InspectorFrontendAPI.setAttachedWindow): |
| * inspector/front-end/InspectorFrontendHostStub.js: |
| (.WebInspector.InspectorFrontendHostStub.prototype.requestAttachWindow): |
| (.WebInspector.InspectorFrontendHostStub.prototype.requestDetachWindow): |
| * inspector/front-end/Settings.js: |
| * inspector/front-end/SettingsScreen.js: |
| (WebInspector.GenericSettingsTab): |
| * inspector/front-end/StatusBarButton.js: |
| (WebInspector.StatusBarButton): |
| * inspector/front-end/Toolbar.js: |
| (WebInspector.Toolbar): |
| (WebInspector.Toolbar.prototype.setCompactMode): |
| (WebInspector.Toolbar.prototype._toolbarDragStart): |
| (WebInspector.Toolbar.prototype._toolbarDrag): |
| * inspector/front-end/WebKit.qrc: |
| * inspector/front-end/externs.js: |
| (WebInspector.toggleSearchingForNode): |
| * inspector/front-end/inspector.css: |
| (body.undocked.platform-mac-snowleopard #toolbar): |
| (body.undocked.platform-mac-snowleopard #toolbar-dropdown): |
| * inspector/front-end/inspector.html: |
| * inspector/front-end/inspector.js: |
| (WebInspector._createGlobalStatusBarItems): |
| (windowLoaded): |
| (WebInspector.setDockingUnavailable): |
| * inspector/front-end/inspectorCommon.css: |
| (body.dock-to-right:not(.undocked)): |
| (body.dock-to-right.inactive:not(.undocked)): |
| |
| 2012-10-03 Vsevolod Vlasov <vsevik@chromium.org> |
| |
| Web Inspector: UISourceCode commitWorkingCopy should not fail when original script had syntax error. |
| https://bugs.webkit.org/show_bug.cgi?id=97272 |
| |
| Reviewed by Pavel Feldman. |
| |
| This patch is based on patch by John J. Barton. |
| |
| * inspector/front-end/JavaScriptSource.js: |
| (WebInspector.JavaScriptSource.prototype.workingCopyCommitted): added rawLocation null check. |
| |
| 2012-10-03 Alexander Pavlov <apavlov@chromium.org> |
| |
| Web Inspector: After "Edit as HTML", any click outside box should stop editing |
| https://bugs.webkit.org/show_bug.cgi?id=98258 |
| |
| Reviewed by Vsevolod Vlasov. |
| |
| Make the DOM tree OL span the entire height of its container in the Elements panel to catch mouse events. |
| |
| * inspector/front-end/elementsPanel.css: |
| (#elements-content > ol): |
| |
| 2012-10-03 Dongwoo Joshua Im <dw.im@samsung.com> |
| |
| [EFL] Skeleton code of File system API. |
| https://bugs.webkit.org/show_bug.cgi?id=91187 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| Add skeleton code of File System API on EFL port. |
| Implementation patches will be created later. |
| |
| No new tests because this is just skeleton code. |
| |
| * CMakeLists.txt: Add new files which created by other patches in Modules/filesystem/ directory. |
| * PlatformEfl.cmake: Add AsyncFileSystemEfl.cpp. |
| * platform/AsyncFileSystem.cpp: |
| (WebCore): |
| * platform/efl/AsyncFileSystemEfl.cpp: Added. |
| * platform/efl/AsyncFileSystemEfl.h: Added. |
| |
| 2012-10-03 Andreas Kling <kling@webkit.org> |
| |
| Shrink ElementRareData by moving bool flags to NodeRareData. |
| <http://webkit.org/b/98225> |
| |
| Reviewed by Antti Koivisto. |
| |
| Move all bool flags from ElementRareData to the bitfield in its base class NodeRareData. |
| This shrinks ElementRareData by 8 bytes (on 64-bit) and saves a whopping 58kB on Membuster3. |
| Also removed some double raredata hash lookups. |
| |
| * dom/Element.cpp: |
| (WebCore::Element::detach): |
| (WebCore::Element::recalcStyle): |
| (WebCore::Element::ensureShadow): |
| (WebCore::Element::setStyleAffectedByEmpty): |
| (WebCore::Element::styleAffectedByEmpty): |
| (WebCore::Element::setIsInCanvasSubtree): |
| (WebCore::Element::isInCanvasSubtree): |
| (WebCore::Element::containsFullScreenElement): |
| (WebCore::Element::setContainsFullScreenElement): |
| * dom/ElementRareData.h: |
| (ElementRareData): |
| (WebCore::ElementRareData::ElementRareData): |
| * dom/NodeRareData.h: |
| (WebCore::NodeRareData::styleAffectedByEmpty): |
| (WebCore::NodeRareData::setStyleAffectedByEmpty): |
| (WebCore::NodeRareData::isInCanvasSubtree): |
| (WebCore::NodeRareData::setIsInCanvasSubtree): |
| (NodeRareData): |
| (WebCore::NodeRareData::containsFullScreenElement): |
| (WebCore::NodeRareData::setContainsFullScreenElement): |
| |
| 2012-10-03 Jussi Kukkonen <jussi.kukkonen@intel.com> |
| |
| getComputedStyle perspective-origin is based on the wrong bounding box |
| https://bugs.webkit.org/show_bug.cgi?id=98027 |
| |
| Reviewed by Simon Fraser. |
| |
| perspective-origin for ComputedStyleDeclaration is currently calculated using the |
| wrong bounding box (sizingBox() which ends up as the contentbox). |
| |
| Start using borderbox for ComputedStyleDeclaration perspective-origin, similar to |
| what transform-origin already does. |
| |
| Test: fast/css/getComputedStyle/getComputedStyle-origin-percentage.html |
| |
| * css/CSSComputedStyleDeclaration.cpp: |
| (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): |
| |
| 2012-10-03 Patrick Gansterer <paroga@webkit.org> |
| |
| Build fix for WinCE after r130160. |
| |
| * platform/graphics/FontFastPath.cpp: |
| (WebCore::Font::glyphDataAndPageForCharacter): |
| |
| 2012-10-03 Tommy Widenflycht <tommyw@google.com> |
| |
| MediaStream API: RTCPeerConnection should send down its handler via the FrameLoaderClient directly after creation. |
| https://bugs.webkit.org/show_bug.cgi?id=98149 |
| |
| Reviewed by Adam Barth. |
| |
| The chromium implementation needs to know which Frame created a PeerConnection so |
| that the right housekeeping can take place correctly. |
| |
| Not testable in DRT, but have verified the change manually and with our pyautotests. |
| |
| * Modules/mediastream/RTCPeerConnection.cpp: |
| (WebCore::RTCPeerConnection::RTCPeerConnection): |
| * loader/FrameLoaderClient.h: |
| (WebCore): |
| (FrameLoaderClient): |
| (WebCore::FrameLoaderClient::dispatchWillStartUsingPeerConnectionHandler): |
| * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp: |
| (WebCore::RTCPeerConnectionHandlerChromium::toWebRTCPeerConnectionHandler): |
| (WebCore): |
| (WebCore::RTCPeerConnectionHandlerChromium::RTCPeerConnectionHandlerChromium): |
| (WebCore::RTCPeerConnectionHandlerChromium::initialize): |
| * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h: |
| (RTCPeerConnectionHandlerChromium): |
| |
| 2012-10-03 Eugene Klyuchnikov <eustas.bug@gmail.com> |
| |
| Web Inspector: Profiles: taking heap snapshot causes error message in console. |
| https://bugs.webkit.org/show_bug.cgi?id=97890 |
| |
| Reviewed by Yury Semikhatsky. |
| |
| Actual problem is that proxy loader is closed twice. |
| |
| "_snapshotReceived" should never try to close receiver, |
| because it is a callback fired by close. |
| |
| Also minor glitches fixed: |
| - taking snapshot shows "Loading..." status first, |
| and then "Saving xxx%"; |
| - after all chunks are sent "Parsing" status is set and |
| then is replaced with "Saving 100%"; |
| - removed dead code in proxy; |
| - proxy was ignoring callback parameter; |
| - "Loading %d\%" is not localized. |
| |
| * English.lproj/localizedStrings.js: Added missing "Loading %d%" string. |
| * inspector/front-end/HeapSnapshotProxy.js: Removed dead code. |
| (WebInspector.HeapSnapshotLoaderProxy): |
| (WebInspector.HeapSnapshotLoaderProxy.prototype.write): Make this method |
| interface-conformant. |
| * inspector/front-end/HeapSnapshotView.js: |
| (WebInspector.HeapProfileHeader): Fixed update-status and |
| finish-transfer logic. |
| |
| 2012-10-03 Jochen Eisinger <jochen@chromium.org> |
| |
| Make sure that user gestures can't be consumed twice |
| https://bugs.webkit.org/show_bug.cgi?id=97483 |
| |
| Reviewed by Adam Barth. |
| |
| Instead of a simple counter, use a ref counted token to track how many |
| user gestures happened and where consumed. When creating a timer that |
| is supposed to forward the user gesture, take a reference to this token |
| and reinstantiate the UserGestureIndicator with that token when the |
| timer is triggered. |
| |
| Tests: platform/chromium/fast/events/popup-forwarded-gesture-blocked.html |
| platform/chromium/fast/events/popup-forwarded-gesture.html |
| |
| * dom/UserGestureIndicator.cpp: |
| (WebCore): |
| (WebCore::UserGestureIndicator::UserGestureIndicator): |
| (WebCore::UserGestureIndicator::~UserGestureIndicator): |
| (WebCore::UserGestureIndicator::processingUserGesture): |
| (WebCore::UserGestureIndicator::consumeUserGesture): |
| (WebCore::UserGestureIndicator::currentToken): |
| * dom/UserGestureIndicator.h: |
| (Token): |
| (WebCore::UserGestureIndicator::Token::~Token): |
| (UserGestureIndicator): |
| * page/DOMTimer.cpp: |
| (WebCore::DOMTimer::DOMTimer): |
| (WebCore::DOMTimer::fired): |
| * page/DOMTimer.h: |
| (DOMTimer): |
| |
| 2012-10-03 Dominic Mazzoni <dmazzoni@google.com> |
| |
| AX: Heap-use-after-free when deleting a ContainerNode with an AX object |
| https://bugs.webkit.org/show_bug.cgi?id=98073 |
| |
| Reviewed by Hajime Morita. |
| |
| Calls axObjectCache()->remove(this) in ~ContainerNode so that the AX tree |
| doesn't try to access the container node while walking up the parent chain |
| from one of the container node's children. |
| |
| Test: accessibility/container-node-delete-causes-crash.html |
| |
| * dom/ContainerNode.cpp: |
| (WebCore::ContainerNode::~ContainerNode): |
| * dom/Node.cpp: |
| (WebCore::Node::~Node): |
| * dom/Node.h: |
| (WebCore::Node::document): |
| (WebCore::Node::documentInternal): |
| |
| 2012-10-03 Vsevolod Vlasov <vsevik@chromium.org> |
| |
| Web Inspector: SourceURL should be taken from debugger agent when possible. |
| https://bugs.webkit.org/show_bug.cgi?id=98239 |
| |
| Reviewed by Yury Semikhatsky. |
| |
| Removed a check that sourceURL coming from js engine is the same as the one parsed by debugger agent. |
| Alwys use the one from debugger agent now. |
| |
| * inspector/InspectorDebuggerAgent.cpp: |
| (WebCore::InspectorDebuggerAgent::didParseSource): |
| |
| 2012-10-03 Ilya Tikhonovsky <loislo@chromium.org> |
| |
| Unreviewed. Touch FrameView.cpp file for fixing mac bot compilation. |
| |
| * page/FrameView.cpp: |
| (WebCore): |
| |
| 2012-10-02 Ilya Tikhonovsky <loislo@chromium.org> |
| |
| Web Inspector: "Load profile..." context menu item has to be shown only for left column with the list of profiles. |
| https://bugs.webkit.org/show_bug.cgi?id=98163 |
| |
| Reviewed by Yury Semikhatsky. |
| |
| The text was changed to "Load Heap Snapshot..." |
| Also I changed "Save profile..." to "Save Heap Snapshot..." because other profiles don't support Save/Load operations yet. |
| The Load context menu item will appear only when the user clicked in sidebar the tree empty space or a profile. |
| |
| * English.lproj/localizedStrings.js: |
| * inspector/front-end/ProfilesPanel.js: |
| (WebInspector.ProfilesPanel.prototype._handleContextMenuEvent): |
| (WebInspector.ProfileSidebarTreeElement.prototype.handleContextMenuEvent): |
| |
| 2012-10-03 Harald Alvestrand <hta@google.com> |
| |
| Add data passing to the GetStats interface of RTCPeerConnection |
| https://bugs.webkit.org/show_bug.cgi?id=98003 |
| |
| Reviewed by Adam Barth. |
| |
| Added an RTCStatsResponseBase interface to platform, and let the |
| RTCStatsRequestImpl class produce an implementation of it that's returned |
| to WebCore. |
| |
| Tested by extension of the RTCPeerConnection-stats.html test. |
| |
| * Modules/mediastream/RTCStatsElement.cpp: |
| (WebCore::RTCStatsElement::addStatistic): |
| (WebCore): |
| * Modules/mediastream/RTCStatsElement.h: |
| (RTCStatsElement): |
| * Modules/mediastream/RTCStatsReport.cpp: |
| (WebCore): |
| (WebCore::RTCStatsReport::addElement): |
| (WebCore::RTCStatsReport::addStatistic): |
| * Modules/mediastream/RTCStatsReport.h: |
| (RTCStatsReport): |
| * Modules/mediastream/RTCStatsRequestImpl.cpp: |
| (WebCore::RTCStatsRequestImpl::createResponse): |
| (WebCore): |
| (WebCore::RTCStatsRequestImpl::requestSucceeded): |
| * Modules/mediastream/RTCStatsRequestImpl.h: |
| (RTCStatsRequestImpl): |
| * Modules/mediastream/RTCStatsResponse.cpp: |
| (WebCore::RTCStatsResponse::create): |
| (WebCore::RTCStatsResponse::addReport): |
| (WebCore): |
| (WebCore::RTCStatsResponse::addElement): |
| (WebCore::RTCStatsResponse::addStatistic): |
| * Modules/mediastream/RTCStatsResponse.h: |
| (RTCStatsResponse): |
| * WebCore.gypi: |
| * platform/chromium/support/WebRTCStatsRequest.cpp: |
| (WebKit::WebRTCStatsRequest::response): |
| (WebKit): |
| (WebKit::WebRTCStatsRequest::requestSucceeded): |
| * platform/chromium/support/WebRTCStatsResponse.cpp: Added. |
| (WebKit): |
| (WebKit::WebRTCStatsResponse::WebRTCStatsResponse): |
| (WebKit::WebRTCStatsResponse::assign): |
| (WebKit::WebRTCStatsResponse::reset): |
| (WebKit::WebRTCStatsResponse::operator WTF::PassRefPtr<WebCore::RTCStatsResponseBase>): |
| (WebKit::WebRTCStatsResponse::addReport): |
| (WebKit::WebRTCStatsResponse::addElement): |
| (WebKit::WebRTCStatsResponse::addStatistic): |
| * platform/mediastream/RTCStatsRequest.h: |
| (WebCore): |
| (RTCStatsRequest): |
| * platform/mediastream/RTCStatsResponseBase.h: Added. |
| (WebCore): |
| (RTCStatsResponseBase): |
| (WebCore::RTCStatsResponseBase::~RTCStatsResponseBase): |
| |
| 2012-10-02 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Add API to get the web view that initiated a custom URI request to WebKit2 GTK+ |
| https://bugs.webkit.org/show_bug.cgi?id=97895 |
| |
| Reviewed by Martin Robinson. |
| |
| * platform/network/NetworkingContext.h: |
| (NetworkingContext): Add initiatingPageID(). |
| * platform/network/ResourceHandle.h: |
| (ResourceHandle): Add static method |
| getSoupRequestInitiaingPageID(). |
| * platform/network/ResourceHandleInternal.h: |
| (ResourceHandleInternal): Add initiatingPageID(). |
| * platform/network/soup/ResourceHandleSoup.cpp: |
| (WebCore::ResourceHandleInternal::initiatingPageID): Get the |
| initiating page ID of the resource handle networking context. |
| (WebCore::setSoupRequestInitiaingPageID): Helper function to |
| attach a page ID to a SoupRequest. |
| (WebCore::startHTTPRequest): Call setSoupRequestInitiaingPageID() |
| to attch the initiating page ID to the SoupRequest. |
| (WebCore::startNonHTTPRequest): Ditto. |
| (WebCore::ResourceHandle::getSoupRequestInitiaingPageID): Static |
| method to get the page ID attached to a SoupRequest. |
| |
| 2012-10-03 Kent Tamura <tkent@chromium.org> |
| |
| Introduce DateComponents::minimumYear and maximumYear |
| https://bugs.webkit.org/show_bug.cgi?id=98230 |
| |
| Reviewed by Kentaro Hara. |
| |
| Share same difinitions in DateComponents.cpp and DateTimeFieldElements.cpp. |
| |
| No new tests. This doesn't change any bahevior. |
| |
| * platform/DateComponents.h: |
| (WebCore::DateComponents::minimumYear): Moved from DateComponents.cpp. |
| (WebCore::DateComponents::maximumYear): ditto. |
| * platform/DateComponents.cpp: |
| (WebCore): Move out static minimumYear and maximumYear. |
| (WebCore::DateComponents::parseYear): Use DateCompnents::minimumYear and/or maximumYear. |
| (WebCore::withinHTMLDateLimits): ditto. |
| (WebCore::DateComponents::parseWeek): ditto. |
| (WebCore::DateComponents::setMonthsSinceEpoch): ditto. |
| (WebCore::DateComponents::setMillisecondsSinceEpochForWeek): ditto. |
| |
| * html/shadow/DateTimeFieldElements.cpp: |
| (WebCore): Remove minimumYear and maximumYear. |
| (WebCore::DateTimeYearFieldElement::DateTimeYearFieldElement): |
| Use DateComponents::minimumYear and maximumYear. |
| |
| |
| 2012-10-02 Arko Saha <arko@motorola.com> |
| |
| Microdata: itemprop names must not override builtin properties. |
| https://bugs.webkit.org/show_bug.cgi?id=98025 |
| |
| Reviewed by Kentaro Hara. |
| |
| We should look in the prototype for functions before assuming it as |
| an item's name. Return false if the prototype of the object has a |
| property (function) with propertyName. |
| Named properties Spec: http://dev.w3.org/2006/webapi/WebIDL/#idl-named-properties |
| Named property visibility algorithm: |
| http://dev.w3.org/2006/webapi/WebIDL/#indexed-and-named-properties |
| ... |
| 7. If the result of calling the [[HasProperty]] internal method on |
| prototype with property name P is true, then return false. |
| ... |
| Also [OverrideBuiltins] is not declared for any of the properties, |
| hence no overriding is allowed in this case. |
| |
| Test: fast/dom/MicroData/itemprop-names-override-builtin-properties.html |
| |
| * bindings/scripts/CodeGeneratorJS.pm: |
| (GenerateGetOwnPropertySlotBody): |
| (GenerateGetOwnPropertyDescriptorBody): |
| |
| 2012-10-02 Keishi Hattori <keishi@webkit.org> |
| |
| REGRESSION (r129738): Suggestion picker label is placed in the wrong location |
| https://bugs.webkit.org/show_bug.cgi?id=98094 |
| |
| Reviewed by Kent Tamura. |
| |
| We needed to reverse padding-left/right when rtl. |
| |
| No new tests. Covered by date-suggestion-picker-appearance.html. |
| |
| * Resources/pagepopups/suggestionPicker.css: |
| (.suggestion-list-entry .label): |
| (.rtl .suggestion-list-entry .label): |
| |
| 2012-10-02 Yury Semikhatsky <yurys@chromium.org> |
| |
| Provide memory instrumentation for HashCountedSet |
| https://bugs.webkit.org/show_bug.cgi?id=98138 |
| |
| Reviewed by Pavel Feldman. |
| |
| Replaced addHashCountedSet calls with addMember that now automatically |
| detects HashCountedSet and calls appropriate routine. |
| |
| * css/CSSImageGeneratorValue.cpp: |
| (WebCore::CSSImageGeneratorValue::reportBaseClassMemoryUsage): |
| * loader/cache/CachedResource.cpp: |
| |
| 2012-10-02 Nandor Huszka <hnandor@inf.u-szeged.hu> |
| |
| Buildfix after r130235. |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| systemAllowsMultisamplingOnATICards was deleted from GraphicsContext3D, |
| but function body remained in GraphicsContext3DOpenGLES. Delete method body. |
| |
| * platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp: |
| |
| 2012-10-02 Kent Tamura <tkent@chromium.org> |
| |
| Fix assertion failures on Chromium Debug bots for datetime/datetime-local input types. |
| |
| * html/shadow/DateTimeFieldElements.cpp: |
| If a placeholder stirng is empty, use a sequence of "-". |
| (WebCore::DateTimeDayFieldElement::create): |
| (WebCore::DateTimeMonthFieldElement::create): |
| (WebCore::DateTimeYearFieldElement::create): |
| |
| 2012-10-02 MORITA Hajime <morrita@google.com> |
| |
| https://bugs.webkit.org/show_bug.cgi?id=98134 |
| [Refactoring] StyleResolver::matchScopedAuthorRules() could be simpler. |
| |
| Reviewed by Dimitri Glazkov. |
| |
| matchScopedAuthorRules() did have some optimization which only |
| makes sense for heavily nested shadow tree. However, we don't see |
| such type of usage of Shadow DOM and this looks premature |
| optimization. This change unified its triple for loop into one, |
| which makes the code much simpler. |
| |
| No new tests. Covered by existing tests. |
| |
| * css/StyleResolver.cpp: |
| (WebCore::StyleResolver::matchScopedAuthorRules): |
| |
| 2012-10-02 Kent Tamura <tkent@chromium.org> |
| |
| Introduce Localizer::dateTimeFormatWithSecond and dateTimeFormatWithoutSecond |
| https://bugs.webkit.org/show_bug.cgi?id=98229 |
| |
| Reviewed by Kentaro Hara. |
| |
| Unify identical code in DateTimeInputType and DateTimeLocalInputType as |
| Localizer member functions. |
| They still have some common code. We'll address it later. |
| |
| No new tests. This doesn't change any behavior. |
| |
| * platform/text/Localizer.h: |
| (Localizer): Add dateTimeFormatWithSecond and dateTimeFormatWithoutSecond. |
| * platform/text/Localizer.cpp: |
| (WebCore::Localizer::dateTimeFormatWithSecond): |
| Implemented. Just concatenating dateFormat, a space, and timeFormat. |
| (WebCore::Localizer::dateTimeFormatWithoutSecond): |
| Implemented. Just concatenating dateFormat, a space, and shortTimeFormat. |
| |
| * html/DateTimeInputType.cpp: |
| (WebCore::DateTimeInputType::setupLayoutParameters): |
| Use dateTimeFormatWithSecond and dateTimeFormatWithoutSecond. |
| * html/DateTimeLocalInputType.cpp: |
| (WebCore::DateTimeLocalInputType::setupLayoutParameters): ditto. |
| |
| 2012-10-03 Kent Tamura <tkent@chromium.org> |
| |
| Refactoring: DateTimeEditBuilder had better hold LayoutParameters |
| https://bugs.webkit.org/show_bug.cgi?id=98228 |
| |
| Reviewed by Kentaro Hara. |
| |
| Stop copying multiple members of LayoutParameters in DateTimeEditBuilder |
| constructor. This change improves code size and runtime cost. |
| |
| No new tests. This doesn't change user-visible behavior. |
| |
| * html/shadow/DateTimeEditElement.cpp: |
| (DateTimeEditBuilder): Add a comment about lifetime of objects. |
| (WebCore::DateTimeEditBuilder::stepRange): |
| Added. A helper to access m_parameters.stepRange. |
| (WebCore::DateTimeEditBuilder::DateTimeEditBuilder): |
| Remove m_stepRange, m_localizer, m_placeholderFor* members. |
| Add m_parameters. |
| (WebCore::DateTimeEditBuilder::needMillisecondField): |
| Use stepRange() instead of m_stepRange. |
| (WebCore::DateTimeEditBuilder::visitField): |
| Use m_parameters.placeholderFor*. |
| (WebCore::DateTimeEditBuilder::shouldMillisecondFieldReadOnly): |
| Use stepRange() instead of m_stepRange. |
| (WebCore::DateTimeEditBuilder::shouldMinuteFieldReadOnly): ditto. |
| (WebCore::DateTimeEditBuilder::shouldSecondFieldReadOnly): ditto. |
| |
| 2012-10-02 Kent Tamura <tkent@chromium.org> |
| |
| Implement LocaleICU::dateFormat |
| https://bugs.webkit.org/show_bug.cgi?id=98118 |
| |
| Reviewed by Hajime Morita. |
| |
| http://trac.webkit.org/changeset/130127 introduced |
| Localizer::dateFormat, and this is its implementation for LocaleICU |
| classs. The code is going to be used when |
| ENABLE_INPUT_MULTIPLE_FIELDS_UI is enabled. |
| |
| No new tests. The function is not used yet. |
| |
| * platform/text/LocaleICU.cpp: |
| (WebCore::LocaleICU::dateFormat): |
| Implemented. Note that m_shortDateFormat is a UDateFormat object, which |
| knows various format information. |
| * platform/text/LocaleICU.h: |
| (LocaleICU): Add m_dateFormat to cache the format string. |
| |
| 2012-10-02 Kent Tamura <tkent@chromium.org> |
| |
| [Mac][Chromium-Mac] Implement LocaleMac::dateFormat |
| https://bugs.webkit.org/show_bug.cgi?id=98116 |
| |
| Reviewed by Hajime Morita. |
| |
| http://trac.webkit.org/changeset/130127 introduced |
| Localizer::dateFormat, and this is its implementation for LocaleICU |
| classs. The code is going to be used when |
| ENABLE_INPUT_MULTIPLE_FIELDS_UI is enabled. |
| |
| No new tests. The function is not used yet. |
| |
| * platform/text/mac/LocaleMac.h: |
| (LocaleMac): Declare m_dateFormat. |
| * platform/text/mac/LocaleMac.mm: |
| (WebCore::LocaleMac::dateFormat): Implemented. |
| |
| 2012-10-02 Kent Tamura <tkent@chromium.org> |
| |
| [Chromium-Win] Implement LocaleWin::dateFormat |
| https://bugs.webkit.org/show_bug.cgi?id=98117 |
| |
| Reviewed by Kentaro Hara. |
| |
| http://trac.webkit.org/changeset/130127 introduced |
| Localizer::dateFormat, and this is its implementation for LocaleICU |
| classs. The code is going to be used when |
| ENABLE_INPUT_MULTIPLE_FIELDS_UI is enabled. |
| |
| Tests: Added a new test to WebKit/chromium/tests/LocaleWinTest.cpp. |
| |
| * platform/text/LocaleWin.cpp: |
| (WebCore::parseDateFormat): |
| Fix a continuous apostrophes parsing bug; "abc''''def" produced "abc'''def" |
| (WebCore::appendAsLDMLLiteral): |
| A helper function to make a literal string for LDML. |
| (WebCore::convertWindowsDateFormatToLDML): |
| Creates an LDML format from a parsed date format tokens. |
| (WebCore::LocaleWin::dateFormat): |
| Implemented. This uses convertWindowsDateFormatToLDML. |
| (WebCore::LocaleWin::dateFormat): |
| Added for testing. The source windows format is specified as a function |
| argument. |
| * platform/text/LocaleWin.h: |
| (LocaleWin): Declare m_dateFormat and dateFormat(). |
| |
| 2012-10-02 Ian Vollick <vollick@chromium.org> |
| |
| [chromium] Fix spelling of isNVIDIA override in Extensions3DChromium |
| https://bugs.webkit.org/show_bug.cgi?id=98219 |
| |
| Reviewed by Dean Jackson. |
| |
| The override in Extensions3dChromium should have been spelled isNVIDIA, not isNVidia. |
| |
| No new tests. No change in functionality. |
| |
| * platform/graphics/chromium/Extensions3DChromium.h: |
| (WebCore::Extensions3DChromium::isNVIDIA): |
| |
| 2012-10-02 Anders Carlsson <andersca@apple.com> |
| |
| Try to fix the Snow Leopard build. |
| |
| * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: |
| |
| 2012-10-02 Joshua Bell <jsbell@chromium.org> |
| |
| Add htons/htonl definitions and implementations |
| https://bugs.webkit.org/show_bug.cgi?id=98054 |
| |
| Reviewed by Darin Adler. |
| |
| Update users of htons and friends to use new wtf/ByteOrder.h header. |
| |
| No new tests - just refactoring. |
| |
| * platform/graphics/WOFFFileFormat.cpp: |
| * platform/graphics/chromium/VDMXParser.cpp: |
| |
| == Rolled over to ChangeLog-2012-10-02 == |