Index: Source/WebCore/ChangeLog |
=================================================================== |
--- Source/WebCore/ChangeLog (revision 112692) |
+++ Source/WebCore/ChangeLog (working copy) |
@@ -1,3 +1,2924 @@ |
+2012-03-29 Michal Mocny <mmocny@google.com> |
+ |
+ [chromium] Ensure framebuffer exists at the start of beginDrawingFrame. |
+ https://bugs.webkit.org/show_bug.cgi?id=82569 |
+ |
+ Reviewed by James Robinson. |
+ |
+ Updated LayerRendererChromiumTest unittests. |
+ |
+ * platform/graphics/chromium/LayerRendererChromium.cpp: |
+ (WebCore::LayerRendererChromium::setVisible): |
+ (WebCore::LayerRendererChromium::beginDrawingFrame): |
+ * platform/graphics/chromium/LayerRendererChromium.h: |
+ * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp: |
+ (WebCore::CCSingleThreadProxy::compositeAndReadback): |
+ * platform/graphics/chromium/cc/CCThreadProxy.cpp: |
+ (WebCore::CCThreadProxy::compositeAndReadback): |
+ (WebCore::CCThreadProxy::requestReadbackOnImplThread): |
+ |
+2012-03-29 Ryosuke Niwa <rniwa@webkit.org> |
+ |
+ Add a compile assert for the size of RenderBlock |
+ https://bugs.webkit.org/show_bug.cgi?id=82586 |
+ |
+ Reviewed by Tony Chang. |
+ |
+ Add compile asserts for the size of RenderBlock and RenderBlock::MarginValues. |
+ We can't add asserts for FloatingObject and MarginInfo because they're private to RenderBlock. |
+ |
+ * rendering/RenderBlock.cpp: |
+ (SameSizeAsRenderBlock): |
+ (WebCore): |
+ (WebCore::RenderBlock::addOverflowFromFloats): |
+ (WebCore::RenderBlock::repaintOverhangingFloats): |
+ (WebCore::RenderBlock::paintFloats): |
+ (WebCore::RenderBlock::insertFloatingObject): |
+ (WebCore::RenderBlock::clearFloats): |
+ (WebCore::RenderBlock::addOverhangingFloats): |
+ (WebCore::RenderBlock::addIntrudingFloats): |
+ (WebCore::RenderBlock::hitTestFloats): |
+ (WebCore::RenderBlock::adjustForBorderFit): |
+ * rendering/RenderBlock.h: |
+ (WebCore::RenderBlock::FloatingObject::shouldPaint): |
+ (WebCore::RenderBlock::FloatingObject::setShouldPaint): |
+ (WebCore::RenderBlock::FloatingObject::isDescendant): |
+ (WebCore::RenderBlock::FloatingObject::setIsDescendant): |
+ (FloatingObject): |
+ (RenderBlock): |
+ |
+2012-03-29 Gavin Barraclough <barraclough@apple.com> |
+ |
+ Template the Yarr::Interpreter on the character type |
+ https://bugs.webkit.org/show_bug.cgi?id=82637 |
+ |
+ Reviewed by Sam Weinig. |
+ |
+ We should be able to call to the interpreter after having already checked the character type, |
+ without having to re-package the character pointer back up into a string! |
+ |
+ * inspector/ContentSearchUtils.cpp: |
+ (WebCore::ContentSearchUtils::findMagicComment): |
+ * platform/text/RegularExpression.cpp: |
+ (WebCore::RegularExpression::match): |
+ - Don't pass length. |
+ |
+2012-03-29 Sheriff Bot <webkit.review.bot@gmail.com> |
+ |
+ Unreviewed, rolling out r112553. |
+ http://trac.webkit.org/changeset/112553 |
+ https://bugs.webkit.org/show_bug.cgi?id=82638 |
+ |
+ It made all tests crash on Qt WK2 (Requested by Ossy_away on |
+ #webkit). |
+ |
+ * Modules/geolocation/Geolocation.cpp: |
+ (WebCore::Geolocation::stop): |
+ (WebCore::Geolocation::lastPosition): |
+ (WebCore::Geolocation::requestPermission): |
+ (WebCore::Geolocation::startUpdating): |
+ (WebCore::Geolocation::stopUpdating): |
+ * Modules/geolocation/Geolocation.h: |
+ (WebCore): |
+ * Modules/geolocation/GeolocationController.cpp: |
+ * Modules/geolocation/GeolocationController.h: |
+ * WebCore.exp.in: |
+ * page/GeolocationClient.h: |
+ (WebCore): |
+ (GeolocationClient): |
+ * page/Page.cpp: |
+ (WebCore::Page::Page): |
+ (WebCore::Page::PageClients::PageClients): |
+ * page/Page.h: |
+ (WebCore): |
+ (PageClients): |
+ (Page): |
+ (WebCore::Page::geolocationController): |
+ |
+2012-03-29 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org> |
+ |
+ HashMap<>::add should return a more descriptive object |
+ https://bugs.webkit.org/show_bug.cgi?id=71063 |
+ |
+ Reviewed by Ryosuke Niwa. |
+ |
+ Update code to use AddResult instead of a pair. No new tests, just a refactoring. |
+ |
+ * Modules/webdatabase/SQLTransactionCoordinator.cpp: |
+ (WebCore::SQLTransactionCoordinator::acquireLock): |
+ * Modules/webdatabase/chromium/QuotaTracker.cpp: |
+ (WebCore::QuotaTracker::updateDatabaseSize): |
+ * bindings/js/DOMObjectHashTableMap.h: |
+ (WebCore::DOMObjectHashTableMap::get): |
+ * bindings/js/JSDOMBinding.cpp: |
+ (WebCore::cacheDOMStructure): |
+ * bindings/js/JSDOMBinding.h: |
+ (WebCore::cacheWrapper): |
+ * bindings/js/JSDOMGlobalObject.h: |
+ (WebCore::getDOMConstructor): |
+ * bindings/js/PageScriptDebugServer.cpp: |
+ (WebCore::PageScriptDebugServer::addListener): |
+ * bindings/js/ScriptDebugServer.cpp: |
+ (WebCore::ScriptDebugServer::setBreakpoint): |
+ * bindings/js/SerializedScriptValue.cpp: |
+ (WebCore::CloneSerializer::startObjectInternal): |
+ (WebCore::CloneSerializer::write): |
+ * bindings/v8/NPV8Object.cpp: |
+ (WebCore::npCreateV8ScriptObject): |
+ * bridge/IdentifierRep.cpp: |
+ (WebCore::IdentifierRep::get): |
+ * bridge/NP_jsobject.cpp: |
+ (ObjectMap::add): |
+ * css/CSSComputedStyleDeclaration.cpp: |
+ (WebCore::logUnimplementedPropertyID): |
+ * css/CSSFontFaceSource.cpp: |
+ (WebCore::CSSFontFaceSource::getFontData): |
+ * css/CSSFontSelector.cpp: |
+ (WebCore::CSSFontSelector::addFontFaceRule): |
+ (WebCore::CSSFontSelector::getFontData): |
+ * css/CSSSegmentedFontFace.cpp: |
+ (WebCore::CSSSegmentedFontFace::getFontData): |
+ * css/CSSStyleApplyProperty.cpp: |
+ (WebCore::ApplyPropertyCounter::applyInheritValue): |
+ (WebCore::ApplyPropertyCounter::applyValue): |
+ * css/CSSStyleSelector.cpp: |
+ (WebCore::CSSStyleSelector::appendAuthorStylesheets): |
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList): |
+ * css/CSSValuePool.cpp: |
+ (WebCore::CSSValuePool::createIdentifierValue): |
+ (WebCore::CSSValuePool::createColorValue): |
+ (WebCore::CSSValuePool::createValue): |
+ (WebCore::CSSValuePool::createFontFamilyValue): |
+ (WebCore::CSSValuePool::createFontFaceValue): |
+ * dom/CheckedRadioButtons.cpp: |
+ (WebCore::RadioButtonGroup::add): |
+ (WebCore::CheckedRadioButtons::addButton): |
+ * dom/ChildListMutationScope.cpp: |
+ (WebCore::ChildListMutationScope::MutationAccumulationRouter::incrementScopingLevel): |
+ * dom/Document.cpp: |
+ (WebCore::Document::windowNamedItems): |
+ (WebCore::Document::documentNamedItems): |
+ (WebCore::Document::getCSSCanvasElement): |
+ (WebCore::Document::getItems): |
+ * dom/DocumentEventQueue.cpp: |
+ (WebCore::DocumentEventQueue::enqueueEvent): |
+ (WebCore::DocumentEventQueue::enqueueOrDispatchScrollEvent): |
+ (WebCore::DocumentEventQueue::pendingEventTimerFired): |
+ * dom/DocumentOrderedMap.cpp: |
+ (WebCore::DocumentOrderedMap::add): |
+ * dom/EventListenerMap.cpp: |
+ (WebCore::EventListenerMap::add): |
+ * dom/Node.cpp: |
+ (WebCore::Node::dumpStatistics): |
+ (WebCore::Node::getElementsByTagName): |
+ (WebCore::Node::getElementsByTagNameNS): |
+ (WebCore::Node::getElementsByName): |
+ (WebCore::Node::getElementsByClassName): |
+ (WebCore::Node::collectMatchingObserversForMutation): |
+ * dom/QualifiedName.cpp: |
+ (WebCore::QualifiedName::init): |
+ * dom/SpaceSplitString.cpp: |
+ (WebCore::SpaceSplitStringData::create): |
+ * dom/StyledElement.cpp: |
+ (WebCore::StyledElement::updateAttributeStyle): |
+ * html/HTMLCollection.cpp: |
+ (WebCore::HTMLCollection::append): |
+ * inspector/DOMPatchSupport.cpp: |
+ (WebCore::DOMPatchSupport::diff): |
+ * inspector/InspectorCSSAgent.cpp: |
+ (WebCore::SelectorProfile::commitSelector): |
+ * inspector/InspectorDOMAgent.cpp: |
+ (WebCore::InspectorDOMAgent::performSearch): |
+ * inspector/InspectorDebuggerAgent.cpp: |
+ (WebCore::InspectorDebuggerAgent::resolveBreakpoint): |
+ * inspector/InspectorValues.h: |
+ (WebCore::InspectorObject::setValue): |
+ (WebCore::InspectorObject::setObject): |
+ (WebCore::InspectorObject::setArray): |
+ * loader/appcache/ApplicationCacheGroup.cpp: |
+ (WebCore::ApplicationCacheGroup::addEntry): |
+ * loader/appcache/ApplicationCacheStorage.cpp: |
+ (WebCore::ApplicationCacheStorage::findOrCreateCacheGroup): |
+ * page/EventHandler.cpp: |
+ (WebCore::EventHandler::handleTouchEvent): |
+ * page/PageGroup.cpp: |
+ (WebCore::PageGroup::pageGroup): |
+ (WebCore::PageGroup::addVisitedLink): |
+ (WebCore::PageGroup::addUserScriptToWorld): |
+ (WebCore::PageGroup::addUserStyleSheetToWorld): |
+ * page/SecurityPolicy.cpp: |
+ (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry): |
+ * page/TouchAdjustment.cpp: |
+ (WebCore::TouchAdjustment::compileSubtargetList): |
+ * platform/cf/BinaryPropertyList.cpp: |
+ (WebCore::BinaryPropertyListPlan::writeInteger): |
+ (WebCore::BinaryPropertyListPlan::writeString): |
+ (WebCore::BinaryPropertyListPlan::writeIntegerArray): |
+ * platform/graphics/blackberry/LayerTiler.cpp: |
+ (WebCore::LayerTiler::addTileJob): |
+ * platform/graphics/ca/GraphicsLayerCA.cpp: |
+ (WebCore::GraphicsLayerCA::findOrMakeClone): |
+ * platform/graphics/ca/mac/TileCache.mm: |
+ (WebCore::TileCache::revalidateTiles): |
+ * platform/graphics/ca/win/LayerChangesFlusher.cpp: |
+ (WebCore::LayerChangesFlusher::flushPendingLayerChangesSoon): |
+ * platform/graphics/chromium/FontUtilsChromiumWin.cpp: |
+ (WebCore::getDerivedFontData): |
+ * platform/graphics/chromium/cc/CCLayerAnimationController.cpp: |
+ (WebCore::CCLayerAnimationController::startAnimationsWaitingForTargetAvailability): |
+ * platform/graphics/mac/ComplexTextControllerATSUI.cpp: |
+ (WebCore::initializeATSUStyle): |
+ * platform/graphics/mac/SimpleFontDataCoreText.cpp: |
+ (WebCore::SimpleFontData::getCFStringAttributes): |
+ * platform/graphics/mac/SimpleFontDataMac.mm: |
+ (WebCore::SimpleFontData::canRenderCombiningCharacterSequence): |
+ * platform/graphics/wince/FontPlatformData.cpp: |
+ (WebCore::FixedSizeFontData::create): |
+ * platform/gtk/RenderThemeGtk3.cpp: |
+ (WebCore::getStyleContext): |
+ * platform/mac/ThreadCheck.mm: |
+ (WebCoreReportThreadViolation): |
+ * platform/network/HTTPHeaderMap.cpp: |
+ (WebCore::HTTPHeaderMap::add): |
+ * platform/network/HTTPHeaderMap.h: |
+ (HTTPHeaderMap): |
+ * platform/network/ResourceRequestBase.cpp: |
+ (WebCore::ResourceRequestBase::addHTTPHeaderField): |
+ * plugins/PluginDatabase.cpp: |
+ (WebCore::PluginDatabase::add): |
+ (WebCore::PluginDatabase::loadPersistentMetadataCache): |
+ * plugins/win/PluginDatabaseWin.cpp: |
+ (WebCore::PluginDatabase::getPluginPathsInDirectories): |
+ * rendering/RenderBlock.cpp: |
+ (WebCore::RenderBlock::addPercentHeightDescendant): |
+ * rendering/RenderBlockLineLayout.cpp: |
+ (WebCore::setLogicalWidthForTextRun): |
+ * rendering/RenderNamedFlowThread.cpp: |
+ (WebCore::RenderNamedFlowThread::addDependencyOnFlowThread): |
+ * rendering/RenderRegion.cpp: |
+ (WebCore::RenderRegion::setRenderBoxRegionInfo): |
+ * rendering/svg/RenderSVGResourceGradient.cpp: |
+ (WebCore::RenderSVGResourceGradient::applyResource): |
+ * rendering/svg/RenderSVGResourcePattern.cpp: |
+ (WebCore::RenderSVGResourcePattern::applyResource): |
+ * storage/StorageMap.cpp: |
+ (WebCore::StorageMap::setItem): |
+ (WebCore::StorageMap::importItem): |
+ * svg/SVGDocumentExtensions.cpp: |
+ (WebCore::SVGDocumentExtensions::addPendingResource): |
+ * xml/XMLHttpRequest.cpp: |
+ (WebCore::XMLHttpRequest::setRequestHeaderInternal): |
+ * xml/XPathFunctions.cpp: |
+ (WebCore::XPath::FunId::evaluate): |
+ * xml/XPathPath.cpp: |
+ (WebCore::XPath::LocationPath::evaluate): |
+ * xml/XPathPredicate.cpp: |
+ (WebCore::XPath::Union::evaluate): |
+ |
+2012-03-29 Andrey Kosyakov <caseq@chromium.org> |
+ |
+ Web Inspector: improve window selection accuracy in vertical overview of timeline panel |
+ https://bugs.webkit.org/show_bug.cgi?id=82625 |
+ |
+ Reviewed by Vsevolod Vlasov. |
+ |
+ * inspector/front-end/TimelineOverviewPane.js: |
+ (WebInspector.TimelineVerticalOverview): |
+ (WebInspector.TimelineVerticalOverview.prototype._renderBars): preserve actual padding used while rendering bars. |
+ (WebInspector.TimelineVerticalOverview.prototype.getWindowTimes): account for outer and inter-bars padding when calculating bar offsets. |
+ |
+2012-03-29 Mark Pilgrim <pilgrim@chromium.org> |
+ |
+ GEOLOCATION should be implemented as Page Supplement |
+ https://bugs.webkit.org/show_bug.cgi?id=82228 |
+ |
+ Reviewed by Adam Barth. |
+ |
+ Geolocation now uses the Supplement interface instead of |
+ keeping an instance variable on Page. This allows us to |
+ remove all geolocation-related functions, variables, and |
+ ifdefs out of Page and into Modules/geolocation/. |
+ |
+ * Modules/geolocation/Geolocation.cpp: |
+ (WebCore::Geolocation::stop): |
+ (WebCore::Geolocation::lastPosition): |
+ (WebCore::Geolocation::requestPermission): |
+ (WebCore::Geolocation::startUpdating): |
+ (WebCore::Geolocation::stopUpdating): |
+ * Modules/geolocation/Geolocation.h: |
+ (WebCore): |
+ * Modules/geolocation/GeolocationController.cpp: |
+ (WebCore::GeolocationController::supplementName): |
+ (WebCore): |
+ (WebCore::provideGeolocationTo): |
+ * Modules/geolocation/GeolocationController.h: |
+ (GeolocationController): |
+ (WebCore::GeolocationController::from): |
+ * WebCore.exp.in: |
+ * page/GeolocationClient.h: |
+ (WebCore): |
+ (GeolocationClient): |
+ * page/Page.cpp: |
+ (WebCore::Page::Page): |
+ (WebCore::Page::PageClients::PageClients): |
+ * page/Page.h: |
+ (WebCore): |
+ (PageClients): |
+ (Page): |
+ |
+2012-03-29 John Bates <jbates@google.com> |
+ |
+ Sync up WebKit TraceEvent.h with chromium trace_event.h |
+ https://bugs.webkit.org/show_bug.cgi?id=82527 |
+ |
+ Reviewed by James Robinson. |
+ |
+ * platform/chromium/TraceEvent.h: |
+ |
+2012-03-29 Pavel Feldman <pfeldman@chromium.org> |
+ |
+ Web Inspector: subtree disapears from <iframe> after loading |
+ https://bugs.webkit.org/show_bug.cgi?id=76552 |
+ |
+ Reviewed by Yury Semikhatsky. |
+ |
+ The problem was that content document subtree was not unbound upon iframe re-push. |
+ Upon owner element refresh content document was not sent to the frontend |
+ since backend assumed that front-end has already had the up-to-date version. |
+ |
+ Test: inspector/elements/iframe-load-event.html |
+ |
+ * inspector/InspectorDOMAgent.cpp: |
+ (WebCore::InspectorDOMAgent::loadEventFired): |
+ |
+2012-03-29 Dana Jansens <danakj@chromium.org> |
+ |
+ [chromium] Remove unneeded code+fixmes from CCOcclusionTracker |
+ https://bugs.webkit.org/show_bug.cgi?id=82380 |
+ |
+ Reviewed by Adrienne Walker. |
+ |
+ The current occlusion was exposed on the occlusion tracker for the |
+ transition over to culling 2.0 which has landed, so we can remove |
+ it now. It still had one use in unit tests which is moved to a |
+ test subclass. |
+ |
+ Above test subclass already existed in the occlusion tracker tests, |
+ so pulled it out to a common file CCOcclusionTrackerTestCommon.h |
+ so that other unit tests can use it to get at occlusion internals. |
+ |
+ * platform/graphics/chromium/cc/CCOcclusionTracker.cpp: |
+ (WebCore): |
+ * platform/graphics/chromium/cc/CCOcclusionTracker.h: |
+ |
+2012-03-29 Joseph Pecoraro <pecoraro@apple.com> |
+ |
+ <http://webkit.org/b/82558> Toggling <input type="range"> readonly or disabled state while active breaks all click events |
+ |
+ Test: fast/forms/range/range-drag-when-toggled-disabled.html |
+ |
+ Reviewed by Kent Tamura. |
+ |
+ * html/shadow/SliderThumbElement.cpp: |
+ (WebCore::SliderThumbElement::defaultEventHandler): |
+ A slider can toggle its readonly or disabled state while in the middle |
+ of dragging, in those cases we should cancel the drag and perform cleanup. |
+ |
+2012-03-29 Adam Klein <adamk@chromium.org> |
+ |
+ Factor out common post-insertion logic in ContainerNode |
+ https://bugs.webkit.org/show_bug.cgi?id=82544 |
+ |
+ Reviewed by Ryosuke Niwa. |
+ |
+ appendChild, insertBefore, and replaceChild all share a great deal of logic. |
+ This patch factors out the "post-insertion" logic that deals with |
+ notifying parents that their children changed and notifying children |
+ that they've been added to the tree. |
+ |
+ Besides reducing code duplication, this is in preparation for moving |
+ this post-insertion notification later in the insertion process. |
+ |
+ No new tests, no change in behavior. |
+ |
+ * dom/ContainerNode.cpp: |
+ (WebCore): |
+ (WebCore::ContainerNode::insertBefore): Factor out shared logic, remove unnecessary "prev" variable. |
+ (WebCore::ContainerNode::replaceChild): ditto. |
+ (WebCore::ContainerNode::appendChild): ditto. |
+ (WebCore::updateTreeAfterInsertion): New helper method encapsulating shared logic. |
+ |
+2012-03-29 Tony Chang <tony@chromium.org> |
+ |
+ Need to implement flex-line-pack |
+ https://bugs.webkit.org/show_bug.cgi?id=70794 |
+ |
+ Reviewed by Ojan Vafai. |
+ |
+ Tests: css3/flexbox/multiline-line-pack-horizontal-column.html |
+ css3/flexbox/multiline-line-pack.html |
+ |
+ * rendering/RenderFlexibleBox.cpp: |
+ (WebCore::RenderFlexibleBox::repositionLogicalHeightDependentFlexItems): |
+ (WebCore::initialLinePackingOffset): Similar to initialPackingOffset. |
+ (WebCore): |
+ (WebCore::linePackingSpaceBetweenChildren): Similar to packingSpaceBetweenChildren. |
+ (WebCore::RenderFlexibleBox::packFlexLines): Move lines based on flex-line-pack. |
+ Note that we don't need to relayout on stretch because |
+ alignChildren will do that for us (only auto size needs stretching). |
+ (WebCore::RenderFlexibleBox::flipForWrapReverse): Pull out the initial |
+ cross axis offset before calling packFlexLines because we can |
+ move the the line contexts. |
+ * rendering/RenderFlexibleBox.h: |
+ |
+2012-03-29 Vsevolod Vlasov <vsevik@chromium.org> |
+ |
+ Web Inspector: SnippetsScriptMapping should process existing snippets on load. |
+ https://bugs.webkit.org/show_bug.cgi?id=82619 |
+ |
+ Reviewed by Pavel Feldman. |
+ |
+ SnippetsScriptMapping now loads existing snippets on creation. |
+ Otherwise scripts panel shows snippets created during current session only. |
+ Drive-by ScriptsNavigator closure compilation fix. |
+ |
+ * inspector/front-end/SnippetsModel.js: |
+ (WebInspector.SnippetsModel.prototype.set get snippets): |
+ (WebInspector.SnippetsScriptMapping): |
+ (WebInspector.SnippetsScriptMapping.prototype._handleSnippetAdded): |
+ (WebInspector.SnippetsScriptMapping.prototype._snippetAdded): |
+ |
+2012-03-29 Yury Semikhatsky <yurys@chromium.org> |
+ |
+ Web Inspector: check more likely condition first in HeapSnapshot._buildAggregates |
+ https://bugs.webkit.org/show_bug.cgi?id=82621 |
+ |
+ Reviewed by Pavel Feldman. |
+ |
+ * inspector/front-end/HeapSnapshot.js: selfSize === 0 is quite rare, moving this condition |
+ to the first place saves 1 of 6 secs on the heap profiler perf test. |
+ (WebInspector.HeapSnapshot.prototype._buildAggregates): |
+ (WebInspector.HeapSnapshot.prototype._buildDominatedNodes): root node is always the first |
+ one and is the only one that doesn't have dominator, so we may start iterating nodes from |
+ the second node and avoid additional check in the loop. |
+ |
+2012-03-29 Pavel Feldman <pfeldman@chromium.org> |
+ |
+ Web Inspector: "go to the previous panel" shortcut is painful to maintain |
+ https://bugs.webkit.org/show_bug.cgi?id=82602 |
+ |
+ Reviewed by Vsevolod Vlasov. |
+ |
+ Present go to previous panel shortcut "Cmd - Left" is painful to support since we have |
+ more and more free flow editing capabilities (where Cmd - Left is handled by the editor). |
+ Remaping it to Cmd - Option - [ (]) / (Ctrl - Alt - [ (]) ). |
+ |
+ Drive-by: de-capitalize captions from the settings panel. |
+ |
+ * English.lproj/localizedStrings.js: |
+ * inspector/front-end/ConsoleView.js: |
+ (WebInspector.ConsoleView.prototype._registerShortcuts): |
+ * inspector/front-end/InspectorView.js: |
+ (WebInspector.InspectorView.prototype._keyDown): |
+ * inspector/front-end/ScriptsPanel.js: |
+ * inspector/front-end/TimelinePanel.js: |
+ (WebInspector.TimelinePanel.prototype._registerShortcuts): |
+ (WebInspector.TimelinePanel.prototype._contextMenu): |
+ * inspector/front-end/inspector.js: |
+ (WebInspector._registerShortcuts): |
+ |
+2012-03-29 Andrey Kosyakov <caseq@chromium.org> |
+ |
+ Unreviewed, rolling out r112531. |
+ http://trac.webkit.org/changeset/112531 |
+ https://bugs.webkit.org/show_bug.cgi?id=82616 |
+ |
+ Broke timeline overview selection |
+ |
+ * inspector/front-end/TimelineOverviewPane.js: |
+ (WebInspector.TimelineOverviewWindow): |
+ |
+2012-03-28 Dirk Schulze <krit@webkit.org> |
+ |
+ Introduce CSSParserMode in all classes |
+ https://bugs.webkit.org/show_bug.cgi?id=82335 |
+ |
+ Reviewed by Ryosuke Niwa. |
+ |
+ Introduce the new CSSParserMode enum to more classes. SVG classes make use of SVGAttributeMode for CSS parsing already. |
+ But SVGAttributeMode does not differ from CSSQuirksMode at the moment. This will change with a followup patch on bug 46112. |
+ |
+ No new tests. No change of functionality. Everything gets covered by existing tests. |
+ |
+ * css/CSSImportRule.cpp: |
+ (WebCore::CSSImportRule::setCSSStyleSheet): |
+ * css/CSSMediaRule.cpp: |
+ (WebCore::CSSMediaRule::insertRule): |
+ * css/CSSParser.cpp: Move private functions away from strict boolean and make use of CSSParserMode instead. |
+ (WebCore): |
+ (WebCore::parseColorValue): |
+ (WebCore::parseSimpleLengthValue): |
+ (WebCore::CSSParser::parseFontFaceValue): |
+ (WebCore::CSSParser::parseValue): |
+ (WebCore::CSSParser::parseColor): |
+ (WebCore::CSSParser::createStyleRule): |
+ (WebCore::CSSParser::createFontFaceRule): |
+ (WebCore::CSSParser::createPageRule): |
+ (WebCore::CSSParser::createKeyframeRule): |
+ * css/CSSParser.h: Removed constructor with boolean argument. We just use the CSSParserMode enum now. |
+ (CSSParser): |
+ * css/CSSParserMode.h: |
+ (strictToCSSParserMode): New helper function to convert boolean to CSSParserMode. |
+ (isStrictParserMode): Helper function that returns true if argument is CSSStrictMode. |
+ * css/CSSRule.h: |
+ (WebCore::CSSRule::cssParserMode): Renamed useStrictParsing to cssParserMode since it returns CSSParserMode instead of a boolean now. |
+ * css/CSSStyleSheet.cpp: |
+ (WebCore::CSSStyleSheet::CSSStyleSheet): |
+ (WebCore::CSSStyleSheet::insertRule): |
+ (WebCore::CSSStyleSheet::parseString): |
+ (WebCore::CSSStyleSheet::parseStringAtLine): |
+ * css/CSSStyleSheet.h: |
+ (CSSStyleSheet): |
+ (WebCore::CSSStyleSheet::setCSSParserMode): Renamed setStrictParsing to setCSSParserMode since we set an enum now. |
+ (WebCore::CSSStyleSheet::cssParserMode): Renamed useStrictParsing to cssParserMode since it returns CSSParserMode instead of a boolean now. |
+ * css/MediaList.cpp: |
+ (WebCore::MediaQuerySet::parse): |
+ (WebCore::MediaQuerySet::add): |
+ (WebCore::MediaQuerySet::remove): |
+ * css/StylePropertySet.cpp: |
+ (WebCore::StylePropertySet::StylePropertySet): |
+ (WebCore::StylePropertySet::setProperty): |
+ (WebCore::StylePropertySet::parseDeclaration): |
+ * css/StylePropertySet.h: Use unsigned member variables to store the parser mode. |
+ (WebCore::StylePropertySet::create): |
+ (WebCore::StylePropertySet::setCSSParserMode): Renamed setStrictParsing to setCSSParserMode since we get an enum now. This gets converted to unsigned internally. |
+ (WebCore::StylePropertySet::cssParserMode): Renamed useStrictParsing to cssParserMode since it returns CSSParserMode instead of a boolean now. |
+ (StylePropertySet): |
+ * css/StyleSheet.h: |
+ (StyleSheet): |
+ * css/WebKitCSSKeyframesRule.cpp: |
+ (WebCore::WebKitCSSKeyframesRule::insertRule): |
+ * css/WebKitCSSMatrix.cpp: |
+ (WebCore::WebKitCSSMatrix::setMatrixValue): |
+ * dom/Document.cpp: |
+ (WebCore::Document::webkitGetFlowByName): |
+ (WebCore::Document::pageUserSheet): |
+ (WebCore::Document::pageGroupUserSheets): |
+ * dom/Element.cpp: |
+ (WebCore::Element::webkitMatchesSelector): |
+ * dom/ElementAttributeData.cpp: |
+ (WebCore::ElementAttributeData::ensureInlineStyle): |
+ (WebCore::ElementAttributeData::ensureMutableInlineStyle): |
+ (WebCore::ElementAttributeData::updateInlineStyleAvoidingMutation): |
+ * dom/Node.cpp: |
+ (WebCore::Node::querySelector): |
+ (WebCore::Node::querySelectorAll): |
+ * dom/ProcessingInstruction.cpp: |
+ (WebCore::ProcessingInstruction::parseStyleSheet): |
+ * dom/StyleElement.cpp: |
+ (WebCore::StyleElement::createSheet): |
+ * html/HTMLElement.cpp: |
+ (WebCore::StyledElement::copyNonAttributeProperties): |
+ * html/HTMLLinkElement.cpp: |
+ (WebCore::HTMLLinkElement::setCSSStyleSheet): |
+ * html/canvas/CanvasRenderingContext2D.cpp: |
+ (WebCore::CanvasRenderingContext2D::setFont): |
+ * html/shadow/ContentSelectorQuery.cpp: |
+ (WebCore::ContentSelectorQuery::ContentSelectorQuery): |
+ * inspector/InspectorStyleSheet.cpp: |
+ (WebCore::InspectorStyleSheet::reparseStyleSheet): |
+ * svg/SVGElementRareData.h: |
+ (WebCore::SVGElementRareData::ensureAnimatedSMILStyleProperties): |
+ * svg/SVGFontFaceElement.cpp: |
+ (WebCore::SVGFontFaceElement::SVGFontFaceElement): |
+ * svg/SVGStyledElement.cpp: |
+ (WebCore::SVGStyledElement::getPresentationAttribute): |
+ * xml/XSLStyleSheet.h: |
+ (XSLStyleSheet): |
+ * xml/XSLStyleSheetLibxslt.cpp: |
+ (WebCore::XSLStyleSheet::parseString): |
+ * xml/XSLStyleSheetQt.cpp: |
+ (WebCore::XSLStyleSheet::parseString): |
+ |
+2012-03-29 Sanghyun Park <sh919.park@samsung.com> |
+ |
+ Fix the error type in JSAudioBufferSourceNodeCustom to pass layout test. |
+ https://bugs.webkit.org/show_bug.cgi?id=81639 |
+ |
+ Reviewed by Eric Carlson. |
+ |
+ Test : LayoutTest/webaudio/audiobuffersource-channels.html |
+ |
+ * bindings/js/JSAudioBufferSourceNodeCustom.cpp: |
+ |
+2012-03-29 Vsevolod Vlasov <vsevik@chromium.org> |
+ |
+ Web Inspector: Existing UISourceCode should be loaded on scripts panel creation/reset. |
+ https://bugs.webkit.org/show_bug.cgi?id=82614 |
+ |
+ Reviewed by Pavel Feldman. |
+ |
+ UISourceCode are now loaded from DebuggerPresentationModel on scripts panel creation/reset. |
+ This is needed to show snippets that are loaded before scripts panel creation and are not removed on navigation. |
+ |
+ * inspector/front-end/ScriptsPanel.js: |
+ (WebInspector.ScriptsPanel.prototype._handleUISourceCodeAdded): |
+ (WebInspector.ScriptsPanel.prototype._loadUISourceCodes): |
+ (WebInspector.ScriptsPanel.prototype._uiSourceCodeAdded): |
+ (WebInspector.ScriptsPanel.prototype._reset): |
+ * inspector/front-end/SnippetsModel.js: |
+ (WebInspector.SnippetsScriptMapping.prototype.uiSourceCodeList): |
+ |
+2012-03-29 Andrey Kosyakov <caseq@chromium.org> |
+ |
+ Web Inspector: on a single click in Timeline overview, make a minimal selection centered around cursor |
+ https://bugs.webkit.org/show_bug.cgi?id=82616 |
+ |
+ Reviewed by Pavel Feldman. |
+ |
+ * inspector/front-end/TimelineOverviewPane.js: |
+ (WebInspector.TimelineOverviewWindow): Explicitly handle single click on overview by creating a minimal window around cursor. |
+ (WebInspector.TimelineOverviewWindow.prototype._resizeWindowMinimum): |
+ |
+2012-03-29 VÃctor Manuel Jáquez Leal <vjaquez@igalia.com> |
+ |
+ Unavailable pre-processor macro in non-Qt environments |
+ https://bugs.webkit.org/show_bug.cgi?id=82042 |
+ |
+ Reviewed by Simon Hausmann. |
+ |
+ This patch removes the use of the macro QT_VERSION_CHECK() because, in |
+ non-Qt environments, the pre-processors raises an error. Instead of |
+ calling the macro to generate the version number, the version is |
+ expressed directly. |
+ |
+ * platform/graphics/texmap/TextureMapperGL.cpp: |
+ (SharedGLData): remove pre-processor macro for Qt version check. |
+ |
+2012-03-29 Andrey Kosyakov <caseq@chromium.org> |
+ |
+ Web Inspector: event details popover in Timeline panel displays invalid time offset |
+ https://bugs.webkit.org/show_bug.cgi?id=82611 |
+ |
+ Reviewed by Pavel Feldman. |
+ |
+ * inspector/front-end/TimelinePresentationModel.js: |
+ (WebInspector.TimelinePresentationModel.prototype.addRecord): use time in seconds, not raw model time for minimumRecordTime. |
+ |
+2012-03-29 Andrey Kosyakov <caseq@chromium.org> |
+ |
+ Web Inspector: use canvas to render bars in "vertical overview" mode |
+ https://bugs.webkit.org/show_bug.cgi?id=82606 |
+ |
+ Reviewed by Pavel Feldman. |
+ |
+ * inspector/front-end/TimelineOverviewPane.js: Use canvas instead of DOM for rendering vertical overview bars. |
+ (WebInspector.TimelineVerticalOverview): |
+ (WebInspector.TimelineVerticalOverview.prototype.update): |
+ (WebInspector.TimelineVerticalOverview.prototype._renderBars): |
+ (WebInspector.TimelineVerticalOverview.prototype._renderBar): |
+ (WebInspector.TimelineVerticalOverview.prototype.getWindowTimes): |
+ * inspector/front-end/timelinePanel.css: Drop styles previously used for DOM-based vertical overview rendering. |
+ (.timeline-vertical-overview-bars): |
+ |
+2012-03-29 Andrey Kosyakov <caseq@chromium.org> |
+ |
+ Web Inspector: timeline overview window selection is not reset upon clear/record |
+ https://bugs.webkit.org/show_bug.cgi?id=82603 |
+ |
+ Reviewed by Pavel Feldman. |
+ |
+ - TimelineOverviewPane.reset() -> _reset(); |
+ - perform update() from reset(); |
+ - perform reset() upon RecordsCleared event from the model. |
+ |
+ * inspector/front-end/TimelineOverviewPane.js: |
+ (WebInspector.TimelineOverviewPane): |
+ (WebInspector.TimelineOverviewPane.prototype._reset): |
+ (WebInspector.TimelineVerticalOverview): |
+ (WebInspector.TimelineVerticalOverview.prototype.update): |
+ (WebInspector.TimelineVerticalOverview.prototype._renderBars): |
+ (WebInspector.TimelineVerticalOverview.prototype._renderBar): |
+ (WebInspector.TimelineVerticalOverview.prototype.getWindowTimes): |
+ * inspector/front-end/timelinePanel.css: |
+ (.timeline-vertical-overview-bars): |
+ |
+2012-03-29 Zalan Bujtas <zbujtas@gmail.com> |
+ |
+ Remove redundant updateViewportArguments() call when page is restored from page cache. |
+ https://bugs.webkit.org/show_bug.cgi?id=82500 |
+ |
+ Reviewed by Kenneth Rohde Christiansen. |
+ |
+ Document::updateViewportArguments() is called twice, while restoring a page from page cache. |
+ First, it is called when the document is set on the mainframe and later, it is called |
+ when page cache finished the restoration. Since viewport arguments don't change between |
+ the 2 calls, it's safe to remove the second. |
+ |
+ Manual test added. Viewport value updates heavily depend on UI process code. |
+ |
+ * dom/Document.cpp: |
+ (WebCore::Document::documentDidResumeFromPageCache): |
+ |
+2012-03-29 Charles Wei <charles.wei@torchmobile.com.cn> |
+ |
+ [BlackBerry] Add Internal test support for blackberry porting. |
+ https://bugs.webkit.org/show_bug.cgi?id=82597 |
+ |
+ Reviewed by Rob Buis. |
+ |
+ No new tests, just the build system enhancement for BlackBerry porting. |
+ |
+ * UseJSC.cmake: |
+ |
+2012-03-28 Yury Semikhatsky <yurys@chromium.org> |
+ |
+ Web Inspector: switch heap profiler front-end to separate storage of nodes and edges |
+ https://bugs.webkit.org/show_bug.cgi?id=82453 |
+ |
+ When heap snapshot is completely loaded move nodes and containment edges |
+ into two separate arrays. This way we don't need _nodeIndex and _nodePosition |
+ maps to go from node offset inside the raw snapshot to its index and back, instead |
+ we may just divide node offset by the number of node fields to get node index. After |
+ the nodes and containment edges are separated original array (_nodes) is dropped. |
+ All front-end code was switched to the new representation. |
+ |
+ Reviewed by Pavel Feldman. |
+ |
+ * inspector/front-end/HeapSnapshot.js: |
+ (WebInspector.HeapSnapshotRetainerEdge): |
+ (WebInspector.HeapSnapshotRetainerEdge.prototype.clone): |
+ (WebInspector.HeapSnapshotRetainerEdge.prototype.set edgeIndex): |
+ (WebInspector.HeapSnapshotRetainerEdge.prototype.get _edge): |
+ (WebInspector.HeapSnapshotRetainerEdgeIterator.prototype.hasNext): |
+ (WebInspector.HeapSnapshotNode.prototype.get edgesCount): |
+ (WebInspector.HeapSnapshotNode.prototype.get rawEdges): |
+ (WebInspector.HeapSnapshotNode.prototype.get retainers): |
+ (WebInspector.HeapSnapshotNode.prototype.get _nodes): |
+ (WebInspector.HeapSnapshotNode.prototype._firstEdgeIndex): |
+ (WebInspector.HeapSnapshotNode.prototype._afterLastEdgeIndex): |
+ (WebInspector.HeapSnapshotNode.prototype.get _nextNodeIndex): |
+ (WebInspector.HeapSnapshot.prototype._init): |
+ (WebInspector.HeapSnapshot.prototype._splitNodesAndContainmentEdges): |
+ (WebInspector.HeapSnapshot.prototype._createOnlyNodesArray): |
+ (WebInspector.HeapSnapshot.prototype._createContainmentEdgesArray): |
+ (WebInspector.HeapSnapshot.prototype._buildRetainers): |
+ (WebInspector.HeapSnapshot.prototype.dispose): |
+ (WebInspector.HeapSnapshot.prototype.get maxNodeId): |
+ (WebInspector.HeapSnapshot.prototype._calculateObjectToWindowDistance): |
+ (WebInspector.HeapSnapshot.prototype._bfs): |
+ (WebInspector.HeapSnapshot.prototype._buildDominatedNodes): |
+ (WebInspector.HeapSnapshot.prototype._getDominatedIndex): |
+ (WebInspector.HeapSnapshot.prototype._markInvisibleEdges): |
+ (WebInspector.HeapSnapshot.prototype._markQueriableHeapObjects): |
+ |
+2012-03-29 Leo Yang <leo.yang@torchmobile.com.cn> |
+ |
+ [BlackBerry] Add m_targetType to WorkerScriptLoader |
+ https://bugs.webkit.org/show_bug.cgi?id=82574 |
+ |
+ Reviewed by Rob Buis. |
+ |
+ Just as Chromium porting blackberry porting is using m_targetType also. |
+ |
+ * workers/WorkerScriptLoader.h: |
+ (WorkerScriptLoader): |
+ |
+2012-03-29 Robin Cao <robin.cao@torchmobile.com.cn> |
+ |
+ [BlackBerry] Add an empty implementation of GraphicsContext3D::setErrorMessageCallback |
+ https://bugs.webkit.org/show_bug.cgi?id=82570 |
+ |
+ Reviewed by Rob Buis. |
+ |
+ No new tests, no change in functionality. |
+ |
+ * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp: |
+ (WebCore::GraphicsContext3D::setErrorMessageCallback): Add an empty implementation. |
+ (WebCore): |
+ |
+2012-03-29 Robin Cao <robin.cao@torchmobile.com.cn> |
+ |
+ [BlackBerry] Clean up ImageBufferData |
+ https://bugs.webkit.org/show_bug.cgi?id=82444 |
+ |
+ Reviewed by Rob Buis. |
+ |
+ No behavior changes, no new tests. |
+ |
+ * platform/graphics/blackberry/skia/ImageBufferDataSkia.h: |
+ (ImageBufferData): Remove unused member variable m_buffer and change the type |
+ of m_platformLayer from LayerWebKitThread to CanvasLayerWebKitThread. |
+ |
+2012-03-28 Antti Koivisto <antti@apple.com> |
+ |
+ Split WebKitCSSKeyframeRule into internal and CSSOM types |
+ https://bugs.webkit.org/show_bug.cgi?id=82490 |
+ |
+ Reviewed by Andreas Kling. |
+ |
+ WebKitCSSKeyframeRule is a CSSOM type and should not be used internally. |
+ |
+ - Add StyleKeyframe as the internal data structure for keyframes. |
+ - WebKitCSSKeyframeRule becomes a wrapper for StyleKeyframe. |
+ - Use StyleKeyframe internally so WebKitCSSKeyframeRules are created on CSSOM access only. |
+ |
+ * css/CSSGrammar.y: |
+ |
+ Use StyleKeyframes instead of WebKitCSSKeyframeRules. |
+ |
+ * css/CSSMediaRule.h: |
+ (CSSMediaRule): |
+ (WebCore::CSSMediaRule::length): |
+ (WebCore::CSSMediaRule::item): |
+ |
+ Adapt to LiveCSSRuleList changes. |
+ |
+ * css/CSSParser.cpp: |
+ (WebCore::CSSParser::parseKeyframeRule): |
+ (WebCore::CSSParser::createKeyframe): |
+ * css/CSSParser.h: |
+ (WebCore): |
+ (CSSParser): |
+ |
+ Construct StyleKeyframes. |
+ |
+ * css/CSSRuleList.h: |
+ (WebCore::LiveCSSRuleList::length): |
+ (WebCore::LiveCSSRuleList::item): |
+ |
+ Make LiveCSSRuleList call rule item()/length() to avoid accessor duplication. |
+ |
+ * css/CSSStyleSelector.cpp: |
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList): |
+ * css/CSSStyleSelector.h: |
+ (CSSStyleSelector): |
+ * css/WebKitCSSKeyframeRule.cpp: |
+ |
+ Use StyleKeyframe. |
+ Make 0% and 100% keyframes static. |
+ |
+ (WebCore): |
+ (WebCore::StyleKeyframe::setProperties): |
+ (WebCore::StyleKeyframe::parseKeyString): |
+ (WebCore::StyleKeyframe::cssText): |
+ (WebCore::WebKitCSSKeyframeRule::WebKitCSSKeyframeRule): |
+ (WebCore::WebKitCSSKeyframeRule::~WebKitCSSKeyframeRule): |
+ (WebCore::WebKitCSSKeyframeRule::style): |
+ * css/WebKitCSSKeyframeRule.h: |
+ (WebCore): |
+ (WebCore::StyleKeyframe::create): |
+ (WebCore::StyleKeyframe::keyText): |
+ (WebCore::StyleKeyframe::setKeyText): |
+ (StyleKeyframe): |
+ (WebCore::StyleKeyframe::properties): |
+ (WebCore::StyleKeyframe::StyleKeyframe): |
+ (WebKitCSSKeyframeRule): |
+ (WebCore::WebKitCSSKeyframeRule::keyText): |
+ (WebCore::WebKitCSSKeyframeRule::setKeyText): |
+ (WebCore::WebKitCSSKeyframeRule::cssText): |
+ |
+ Split to internal and CSSOM wrapper type. The wrapper refs StyleKeyframe. |
+ |
+ * css/WebKitCSSKeyframesRule.cpp: |
+ (WebCore::WebKitCSSKeyframesRule::~WebKitCSSKeyframesRule): |
+ (WebCore::WebKitCSSKeyframesRule::parserAppendKeyframe): |
+ (WebCore::WebKitCSSKeyframesRule::insertRule): |
+ (WebCore::WebKitCSSKeyframesRule::deleteRule): |
+ (WebCore::WebKitCSSKeyframesRule::findRule): |
+ (WebCore::WebKitCSSKeyframesRule::findKeyframeIndex): |
+ (WebCore::WebKitCSSKeyframesRule::cssText): |
+ (WebCore): |
+ (WebCore::WebKitCSSKeyframesRule::item): |
+ * css/WebKitCSSKeyframesRule.h: |
+ (WebCore): |
+ (WebCore::WebKitCSSKeyframesRule::keyframes): |
+ (WebKitCSSKeyframesRule): |
+ (WebCore::WebKitCSSKeyframesRule::length): |
+ |
+ Keep StyleKeyframes and the wrappers (WebKitCSSKeyframeRules) in separate vectors. |
+ Construct the wrapper vector and wrappers themselves on demand. |
+ Keep the vectors in sync during mutations. |
+ |
+ * css/WebKitCSSRegionRule.h: |
+ |
+ Adapt to LiveCSSRuleList changes. |
+ |
+2012-03-29 Zeno Albisser <zeno@webkit.org> |
+ |
+ Fieldset disabled attribute does not work. |
+ https://bugs.webkit.org/show_bug.cgi?id=58837 |
+ |
+ Make HTMLFormControlElements inherit the disabled state |
+ from HTMLFieldSetElement ancestors. Subordinates of the |
+ first HTMLLegendElement in a fieldset will never be disabled. |
+ |
+ Patch by Zeno Albisser <zeno@webkit.org> |
+ |
+ Test: fast/forms/fieldset-disabled.html |
+ |
+ Reviewed by Kent Tamura. |
+ |
+ * html/HTMLFieldSetElement.cpp: |
+ (WebCore::HTMLFieldSetElement::disabledAttributeChanged): |
+ (WebCore): |
+ (WebCore::HTMLFieldSetElement::legend): |
+ * html/HTMLFieldSetElement.h: |
+ (HTMLFieldSetElement): |
+ * html/HTMLFieldSetElement.idl: |
+ * html/HTMLFormControlElement.cpp: |
+ (WebCore::HTMLFormControlElement::HTMLFormControlElement): |
+ (WebCore::HTMLFormControlElement::updateFieldSetAndLegendAncestor): |
+ (WebCore): |
+ (WebCore::HTMLFormControlElement::parseAttribute): |
+ (WebCore::HTMLFormControlElement::disabledAttributeChanged): |
+ (WebCore::HTMLFormControlElement::removedFromTree): |
+ (WebCore::HTMLFormControlElement::disabled): |
+ * html/HTMLFormControlElement.h: |
+ (WebCore): |
+ (HTMLFormControlElement): |
+ |
+2012-03-29 Tommy Widenflycht <tommyw@google.com> |
+ |
+ MediaStream API: Adding two missing release() calls to PeerConnection00.cpp |
+ https://bugs.webkit.org/show_bug.cgi?id=82584 |
+ |
+ Reviewed by Adam Barth. |
+ |
+ No changes that affects functionality. |
+ |
+ * Modules/mediastream/PeerConnection00.cpp: |
+ (WebCore::PeerConnection00::createOffer): |
+ (WebCore::PeerConnection00::createAnswer): |
+ |
+2012-03-29 Ryosuke Niwa <rniwa@webkit.org> |
+ |
+ Pack bitfields in InlineBox for Windows |
+ https://bugs.webkit.org/show_bug.cgi?id=82578 |
+ |
+ Reviewed by Kent Tamura. |
+ |
+ Unlike gcc and clang, MSVC pads each consecutive member variables of the same type in bitfields. e.g. if you have: |
+ sturct AB { |
+ unsigned m_1 : 31; |
+ bool m_2 : 1; |
+ } |
+ then MSVC pads m_1 and allocates sizeof(unsigned) * 2 for AB whereas gcc and clang only allocate |
+ sizeof(unsigned) * 1 for AB. |
+ |
+ Fixed the bug by packing all bitfields in InlineBox into InlineBoxBitfields and always using either unsigned or int. |
+ |
+ * rendering/EllipsisBox.cpp: |
+ (WebCore::EllipsisBox::paint): |
+ (WebCore::EllipsisBox::selectionRect): |
+ (WebCore::EllipsisBox::nodeAtPoint): |
+ * rendering/InlineBox.cpp: |
+ (WebCore): |
+ (SameSizeAsInlineBox): |
+ (WebCore::InlineBox::logicalHeight): |
+ (WebCore::InlineBox::baselinePosition): Moved from the header file since it's a virtual function. |
+ (WebCore::InlineBox::lineHeight): Ditto. |
+ (WebCore::InlineBox::deleteLine): |
+ (WebCore::InlineBox::extractLine): |
+ (WebCore::InlineBox::attachLine): |
+ (WebCore::InlineBox::nextOnLineExists): |
+ (WebCore::InlineBox::clearKnownToHaveNoOverflow): |
+ * rendering/InlineBox.h: |
+ (WebCore::InlineBox::InlineBox): |
+ (WebCore::InlineBox::isText): |
+ (WebCore::InlineBox::setIsText): |
+ (WebCore::InlineBox::hasVirtualLogicalHeight): |
+ (WebCore::InlineBox::setHasVirtualLogicalHeight): |
+ (WebCore::InlineBox::isHorizontal): |
+ (WebCore::InlineBox::setIsHorizontal): |
+ (WebCore::InlineBox::isConstructed): |
+ (WebCore::InlineBox::setConstructed): |
+ (WebCore::InlineBox::setExtracted): |
+ (WebCore::InlineBox::setFirstLineStyleBit): |
+ (WebCore::InlineBox::isFirstLineStyle): |
+ (InlineBox): |
+ (WebCore::InlineBox::bidiLevel): |
+ (WebCore::InlineBox::setBidiLevel): |
+ (WebCore::InlineBox::direction): |
+ (WebCore::InlineBox::isDirty): |
+ (WebCore::InlineBox::markDirty): |
+ (WebCore::InlineBox::expansion): |
+ (WebCore::InlineBox::verticalAlign): |
+ (WebCore::InlineBox::knownToHaveNoOverflow): |
+ (WebCore::InlineBox::dirOverride): |
+ (WebCore::InlineBox::setDirOverride): |
+ (InlineBoxBitfields): |
+ (WebCore::InlineBox::InlineBoxBitfields::InlineBoxBitfields): |
+ (WebCore::InlineBox::InlineBoxBitfields::bidiEmbeddingLevel): |
+ (WebCore::InlineBox::InlineBoxBitfields::setBidiEmbeddingLevel): |
+ (WebCore::InlineBox::InlineBoxBitfields::determinedIfNextOnLineExists): |
+ (WebCore::InlineBox::InlineBoxBitfields::setDeterminedIfNextOnLineExists): |
+ (WebCore::InlineBox::InlineBoxBitfields::nextOnLineExists): |
+ (WebCore::InlineBox::InlineBoxBitfields::setNextOnLineExists): |
+ (WebCore::InlineBox::InlineBoxBitfields::expansion): |
+ (WebCore::InlineBox::InlineBoxBitfields::setExpansion): |
+ (WebCore::InlineBox::endsWithBreak): |
+ (WebCore::InlineBox::setEndsWithBreak): |
+ (WebCore::InlineBox::hasEllipsisBox): |
+ (WebCore::InlineBox::hasSelectedChildren): |
+ (WebCore::InlineBox::setHasSelectedChildren): |
+ (WebCore::InlineBox::setHasEllipsisBox): |
+ (WebCore::InlineBox::hasHyphen): |
+ (WebCore::InlineBox::setHasHyphen): |
+ (WebCore::InlineBox::canHaveLeadingExpansion): |
+ (WebCore::InlineBox::setCanHaveLeadingExpansion): |
+ (WebCore::InlineBox::setExpansion): |
+ (WebCore::InlineBox::extracted): |
+ * rendering/InlineFlowBox.cpp: |
+ (WebCore::InlineFlowBox::addToLine): |
+ (WebCore::InlineFlowBox::removeChild): |
+ (WebCore::InlineFlowBox::extractLine): |
+ (WebCore::InlineFlowBox::attachLine): |
+ (WebCore::InlineFlowBox::placeBoxesInInlineDirection): |
+ (WebCore::InlineFlowBox::requiresIdeographicBaseline): |
+ (WebCore::InlineFlowBox::placeBoxesInBlockDirection): |
+ (WebCore::InlineFlowBox::addBoxShadowVisualOverflow): |
+ (WebCore::InlineFlowBox::addBorderOutsetVisualOverflow): |
+ (WebCore::InlineFlowBox::addTextBoxVisualOverflow): |
+ (WebCore::InlineFlowBox::paintBoxDecorations): |
+ (WebCore::InlineFlowBox::computeOverAnnotationAdjustment): |
+ (WebCore::InlineFlowBox::computeUnderAnnotationAdjustment): |
+ * rendering/InlineTextBox.cpp: |
+ (WebCore::InlineTextBox::destroy): |
+ (WebCore::InlineTextBox::logicalOverflowRect): |
+ (WebCore::InlineTextBox::setLogicalOverflowRect): |
+ (WebCore::InlineTextBox::baselinePosition): |
+ (WebCore::InlineTextBox::lineHeight): |
+ (WebCore::InlineTextBox::localSelectionRect): |
+ (WebCore::InlineTextBox::extractLine): |
+ (WebCore::InlineTextBox::attachLine): |
+ (WebCore::InlineTextBox::placeEllipsisBox): |
+ (WebCore::InlineTextBox::paint): |
+ (WebCore::InlineTextBox::paintDecoration): |
+ (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): |
+ (WebCore::InlineTextBox::paintCompositionUnderline): |
+ (WebCore::InlineTextBox::offsetForPosition): |
+ (WebCore::InlineTextBox::positionForOffset): |
+ (WebCore::InlineTextBox::constructTextRun): |
+ * rendering/InlineTextBox.h: |
+ (InlineTextBox): |
+ (WebCore::InlineTextBox::setExpansion): |
+ (WebCore::InlineTextBox::expansionBehavior): |
+ * rendering/RenderBlockLineLayout.cpp: |
+ (WebCore::RenderBlock::constructLine): |
+ * rendering/RenderTreeAsText.cpp: |
+ (WebCore::writeTextRun): |
+ * rendering/RootInlineBox.cpp: |
+ (WebCore::RootInlineBox::baselinePosition): Moved from the header file since it's a virtual function. |
+ (WebCore::RootInlineBox::lineHeight): Ditto. |
+ (WebCore::RootInlineBox::paint): |
+ (WebCore::RootInlineBox::ascentAndDescentForBox): |
+ (WebCore::RootInlineBox::verticalPositionForBox): |
+ * rendering/RootInlineBox.h: |
+ (RootInlineBox): |
+ * rendering/svg/SVGInlineTextBox.cpp: |
+ (WebCore::SVGInlineTextBox::constructTextRun): |
+ * rendering/svg/SVGRenderTreeAsText.cpp: |
+ (WebCore::writeSVGInlineTextBox): |
+ |
+2012-03-29 hayato@chromium.org <hayato@chromium.org> |
+ |
+ Let focus navigation be compliant with Shadow DOM spec. |
+ https://bugs.webkit.org/show_bug.cgi?id=78588 |
+ |
+ Reviewed by Dimitri Glazkov. |
+ |
+ Re-landing r112500. Fixed an assertion failure on ReifiedTreeTraversal. |
+ |
+ Sequential focus navigation now behaves exactly as specified in the Shadow DOM spec. |
+ |
+ According to the Shadow DOM spec: |
+ The shadow DOM navigation order sequence is inserted into the document navigation order: |
+ 1. immediately after the shadow host, if the shadow host is focusable; or |
+ 2. in place of the shadow host as if the shadow host were assigned the value of auto for determining its position. |
+ |
+ Prior to this patch, sequential focus navigation goes into Shadow DOM, but it is incomplete |
+ since insertion points, such as <content> elements or <shadow> elements, are not resolved at all. |
+ Now focus navigation can traverse shadow DOM subtrees in 'reified tree order', resolving lower boundaries transparently. |
+ |
+ Implementation notes: |
+ Prior to this patch, sequential focus navigation does not go into Shadow DOM if a shadow host is non-focusable. |
+ Now focus navigation must go into Shadow DOM subtrees even if a show host is not focusable as described in 2). |
+ To support this behavior, this patch introduced adjustedTabIndex() locally in FocusController so that |
+ it does not skip a non-focusable shadow host in current focus scope. |
+ After finding a *pseudo* focusable element in current focus scope, it tries to resolve a focused element recursively, |
+ considering a nested focus scope inside of a shadow host or iframe. |
+ To traverse Shadow DOM subtrees, a FocusController makes use of ReifiedTreeTraversal APIs, which was introduced in r112055. |
+ |
+ This change does not affect an existing behavior if a shadow dom is not involved. |
+ |
+ Test: fast/dom/shadow/focus-navigation.html |
+ |
+ * dom/Element.cpp: |
+ (WebCore::Element::focus): |
+ * dom/ReifiedTreeTraversal.cpp: |
+ (WebCore::ReifiedTreeTraversal::parentNodeWithoutCrossingUpperBoundary): |
+ * page/FocusController.cpp: |
+ (WebCore::isShadowHost): |
+ (WebCore): |
+ (WebCore::FocusScope::FocusScope): |
+ (WebCore::FocusScope::rootNode): |
+ (WebCore::FocusScope::owner): |
+ (WebCore::FocusScope::focusScopeOf): |
+ (WebCore::FocusScope::focusScopeOwnedByShadowHost): |
+ (WebCore::FocusScope::focusScopeOwnedByIFrame): |
+ (WebCore::hasCustomFocusLogic): |
+ (WebCore::isNonFocusableShadowHost): |
+ (WebCore::isFocusableShadowHost): |
+ (WebCore::adjustedTabIndex): |
+ (WebCore::shouldVisit): |
+ (WebCore::FocusController::findFocusableNodeDecendingDownIntoFrameDocument): |
+ (WebCore::FocusController::advanceFocusInDocumentOrder): |
+ (WebCore::FocusController::findFocusableNodeAcrossFocusScope): |
+ (WebCore::FocusController::findFocusableNodeRecursively): |
+ (WebCore::FocusController::findFocusableNode): |
+ (WebCore::FocusController::findNodeWithExactTabIndex): |
+ (WebCore::nextNodeWithGreaterTabIndex): |
+ (WebCore::previousNodeWithLowerTabIndex): |
+ (WebCore::FocusController::nextFocusableNode): |
+ (WebCore::FocusController::previousFocusableNode): |
+ * page/FocusController.h: |
+ (WebCore): |
+ (FocusScope): |
+ (FocusController): |
+ |
+2012-03-28 Kinuko Yasuda <kinuko@chromium.org> |
+ |
+ [chromium] Add isolated filesystem type and WebDragData::filesystem_id for drag-and-drop using File/DirectoryEntry. |
+ https://bugs.webkit.org/show_bug.cgi?id=76826 |
+ |
+ Add two helper methods for creating isolated filesystem to the |
+ PlatformSupport interface. |
+ |
+ Reviewed by David Levin. |
+ |
+ No new tests: tests will be added when app-facing code is added. |
+ |
+ * platform/chromium/PlatformSupport.h: |
+ (PlatformSupport): |
+ |
+2012-03-29 Vineet Chaudhary <rgf748@motorola.com> |
+ |
+ Remove custom bindings form Internals.idl of attribute type Array. |
+ https://bugs.webkit.org/show_bug.cgi?id=82319 |
+ |
+ Reviewed by Kentaro Hara. |
+ |
+ Remove custom bindings for Array type and replace Array type with sequence<String>. |
+ |
+ No new tests. LayoutTests/fast/harness/user-preferred-language.html should pass |
+ even after these changes. |
+ |
+ * Target.pri: Remove JSInternalsCustom.cpp and V8InternalsCustom.cpp. |
+ * UseJSC.cmake: Remove JSInternalsCustom.cpp. |
+ * UseV8.cmake: Remove V8InternalsCustom.cpp. |
+ * WebCore.gypi: Remove JSInternalsCustom.cpp and V8InternalsCustom.cpp. |
+ * WebCore.vcproj/WebCoreTestSupport.vcproj: Remove JSInternalsCustom.cpp and V8InternalsCustom.cpp. |
+ * WebCore.xcodeproj/project.pbxproj: Remove JSInternalsCustom.cpp and V8InternalsCustom.cpp. |
+ * bindings/js/JSDOMBinding.h: |
+ (WebCore): |
+ (WebCore::jsArray): Added new specialize function template for Strings. |
+ * bindings/scripts/CodeGeneratorJS.pm: |
+ (JSValueToNative): Add jsArray<String>() to deduce return type. |
+ (NativeToJSValue): Added check for type String. |
+ * bindings/scripts/CodeGeneratorV8.pm: |
+ (JSValueToNative): Add v8Array<String>() to deduce return type. |
+ (NativeToJSValue): Added check for type String. |
+ * bindings/scripts/test/JS/JSTestObj.cpp: |
+ (WebCore::setJSTestObjSequenceAttr): Modified results from run-binding-tests. |
+ * bindings/scripts/test/V8/V8TestObj.cpp: Modified results from run-binding-tests. |
+ (WebCore::TestObjInternal::sequenceAttrAttrSetter): |
+ * bindings/v8/V8Binding.h: Added new specialize function template for Strings. |
+ (WebCore): |
+ (WebCore::v8Array): |
+ (WebCore::toNativeArray): |
+ * testing/Internals.idl: Replace Array type with sequence<String> |
+ * testing/js/JSInternalsCustom.cpp: Removed. |
+ * testing/v8/V8InternalsCustom.cpp: Removed. |
+ |
+2012-03-29 Sheriff Bot <webkit.review.bot@gmail.com> |
+ |
+ Unreviewed, rolling out r112500. |
+ http://trac.webkit.org/changeset/112500 |
+ https://bugs.webkit.org/show_bug.cgi?id=82576 |
+ |
+ assertion failed on fast/events/tab-test-not-visible- |
+ imagemap.html on gtk/qt (Requested by hayato on #webkit). |
+ |
+ * dom/Element.cpp: |
+ (WebCore::Element::focus): |
+ * page/FocusController.cpp: |
+ (WebCore): |
+ (WebCore::shadowRoot): |
+ (WebCore::isTreeScopeOwner): |
+ (WebCore::FocusController::transferFocusToElementInShadowRoot): |
+ (WebCore::hasCustomFocusLogic): |
+ (WebCore::FocusController::findFocusableNodeDecendingDownIntoFrameDocumentOrShadowRoot): |
+ (WebCore::FocusController::advanceFocusInDocumentOrder): |
+ (WebCore::ownerOfTreeScope): |
+ (WebCore::FocusController::findFocusableNodeAcrossTreeScope): |
+ (WebCore::FocusController::findFocusableNode): |
+ (WebCore::nextNodeWithExactTabIndex): |
+ (WebCore::previousNodeWithExactTabIndex): |
+ (WebCore::nextNodeWithGreaterTabIndex): |
+ (WebCore::previousNodeWithLowerTabIndex): |
+ (WebCore::FocusController::nextFocusableNode): |
+ (WebCore::FocusController::previousFocusableNode): |
+ * page/FocusController.h: |
+ (WebCore): |
+ (FocusController): |
+ |
+2012-03-28 Kent Tamura <tkent@chromium.org> |
+ |
+ Add TextFieldDecorationElement::decorate() |
+ https://bugs.webkit.org/show_bug.cgi?id=82572 |
+ |
+ Reviewed by Hajime Morita. |
+ |
+ This change will be needed for Bug 82143. |
+ No new tests because of no behavior changes yet. This code change |
+ doesn't affect non-Chromium ports for now. |
+ |
+ * dom/ShadowRoot.cpp: |
+ (WebCore::ShadowRoot::create): |
+ Remove unnecessary assertion. We should allow multiple UA shadow roots. |
+ * html/shadow/TextFieldDecorationElement.cpp: |
+ (WebCore::TextFieldDecorationElement::decorate): |
+ Added. |
+ This function adds another ShadowRoot, and it contains one flexible box container. |
+ The container contains existin ShadowRoot content and the decoration element. |
+ * html/shadow/TextFieldDecorationElement.h: |
+ (TextFieldDecorationElement): Add the declaration of decorate(). |
+ |
+2012-03-28 Vineet Chaudhary <rgf748@motorola.com> |
+ |
+ Consider removal of removes jsNull()/v8::Null() from JSInternalsCustom.cpp/V8InternalsCustom.cpp |
+ https://bugs.webkit.org/show_bug.cgi?id=82442 |
+ |
+ Reviewed by Kentaro Hara. |
+ |
+ No new tests. LayoutTests/fast/harness/user-preferred-language.html should pass |
+ even after these changes. |
+ |
+ * testing/js/JSInternalsCustom.cpp: Remove jsNull() if Vector is empty. |
+ (WebCore::JSInternals::userPreferredLanguages): |
+ * testing/v8/V8InternalsCustom.cpp: Remove v8::Null() if Vector is empty. |
+ (WebCore::V8Internals::userPreferredLanguagesAccessorGetter): |
+ |
+2012-03-28 Hayato Ito <hayato@chromium.org> |
+ |
+ Let focus navigation be compliant with Shadow DOM spec. |
+ https://bugs.webkit.org/show_bug.cgi?id=78588 |
+ |
+ Reviewed by Dimitri Glazkov. |
+ |
+ Sequential focus navigation now behaves exactly as specified in the Shadow DOM spec. |
+ |
+ According to the Shadow DOM spec: |
+ The shadow DOM navigation order sequence is inserted into the document navigation order: |
+ 1. immediately after the shadow host, if the shadow host is focusable; or |
+ 2. in place of the shadow host as if the shadow host were assigned the value of auto for determining its position. |
+ |
+ Prior to this patch, sequential focus navigation goes into Shadow DOM, but it is incomplete |
+ since insertion points, such as <content> elements or <shadow> elements, are not resolved at all. |
+ Now focus navigation can traverse shadow DOM subtrees in 'reified tree order', resolving lower boundaries transparently. |
+ |
+ Implementation notes: |
+ Prior to this patch, sequential focus navigation does not go into Shadow DOM if a shadow host is non-focusable. |
+ Now focus navigation must go into Shadow DOM subtrees even if a show host is not focusable as described in 2). |
+ To support this behavior, this patch introduced adjustedTabIndex() locally in FocusController so that |
+ it does not skip a non-focusable shadow host in current focus scope. |
+ After finding a *pseudo* focusable element in current focus scope, it tries to resolve a focused element recursively, |
+ considering a nested focus scope inside of a shadow host or iframe. |
+ To traverse Shadow DOM subtrees, a FocusController makes use of ReifiedTreeTraversal APIs, which was introduced in r112055. |
+ |
+ This change does not affect an existing behavior if a shadow dom is not involved. |
+ |
+ Test: fast/dom/shadow/focus-navigation.html |
+ |
+ * dom/Element.cpp: |
+ (WebCore::Element::focus): |
+ * page/FocusController.cpp: |
+ (WebCore::isShadowHost): |
+ (WebCore): |
+ (WebCore::FocusScope::FocusScope): |
+ (WebCore::FocusScope::rootNode): |
+ (WebCore::FocusScope::owner): |
+ (WebCore::FocusScope::focusScopeOf): |
+ (WebCore::FocusScope::focusScopeOwnedByShadowHost): |
+ (WebCore::FocusScope::focusScopeOwnedByIFrame): |
+ (WebCore::hasCustomFocusLogic): |
+ (WebCore::isNonFocusableShadowHost): |
+ (WebCore::isFocusableShadowHost): |
+ (WebCore::adjustedTabIndex): |
+ (WebCore::shouldVisit): |
+ (WebCore::FocusController::findFocusableNodeDecendingDownIntoFrameDocument): |
+ (WebCore::FocusController::advanceFocusInDocumentOrder): |
+ (WebCore::FocusController::findFocusableNodeAcrossFocusScope): |
+ (WebCore::FocusController::findFocusableNodeRecursively): |
+ (WebCore::FocusController::findFocusableNode): |
+ (WebCore::FocusController::findNodeWithExactTabIndex): |
+ (WebCore::nextNodeWithGreaterTabIndex): |
+ (WebCore::previousNodeWithLowerTabIndex): |
+ (WebCore::FocusController::nextFocusableNode): |
+ (WebCore::FocusController::previousFocusableNode): |
+ * page/FocusController.h: |
+ (WebCore): |
+ (FocusScope): |
+ (FocusController): |
+ |
+2012-03-28 Li Yin <li.yin@intel.com> |
+ |
+ [WebSocket]Browser must fail connection if Sec-WebSocket-Protocol mismatched. |
+ https://bugs.webkit.org/show_bug.cgi?id=82307 |
+ |
+ Reviewed by Kent Tamura. |
+ |
+ From RFC6455: http://tools.ietf.org/html/rfc6455#section-4.1 |
+ If the WebSocket openhanding respond included the mismatched |
+ Sec-WebSocket-Protocol header field, the client must fail the WebSocket Connection. |
+ |
+ Test: http/tests/websocket/tests/hybi/handshake-fail-by-mismatch-protocol-header.html |
+ |
+ * Modules/websockets/WebSocketHandshake.cpp: |
+ (WebCore::WebSocketHandshake::checkResponseHeaders): |
+ |
+2012-03-28 Jessie Berlin <jberlin@apple.com> |
+ |
+ Fix Windows build after r112482. |
+ |
+ * platform/network/cf/FormDataStreamCFNet.cpp: |
+ (WebCore::formOpen): |
+ Do not attempt to use an OS X error code on Windows. Use the POSIX errno instead. |
+ |
+2012-03-28 Alexandru Chiculita <achicu@adobe.com> |
+ |
+ [CSS Filters] Avoid rebuilding FEFilters when RenderLayer is destroyed |
+ https://bugs.webkit.org/show_bug.cgi?id=82524 |
+ |
+ Reviewed by Dean Jackson. |
+ |
+ RenderLayer::~RenderLayer is calling clearBacking which updated the m_filter with new filters, |
+ even though they were to be deleted a couple of lines below. This change avoids updating the filters, |
+ if we are in the "destroyed" state. |
+ |
+ No new tests. This change has no visible results to HTML or JavaScript, so it cannot be tested without a debugger. |
+ |
+ * rendering/RenderLayer.cpp: |
+ (WebCore::RenderLayer::~RenderLayer): |
+ (WebCore::RenderLayer::clearBacking): |
+ * rendering/RenderLayer.h: |
+ (RenderLayer): |
+ |
+2012-03-28 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
+ |
+ Remove ScriptExecutionContext from NavigatorBattery.idl |
+ https://bugs.webkit.org/show_bug.cgi?id=82556 |
+ |
+ Reviewed by Adam Barth. |
+ |
+ As Bug 73528 comment #71, NavigatorBattery.idl doesn't need to have ScriptExecutionContext. |
+ Document can be used instead of ScriptExecutionContext. |
+ |
+ Tests: batterystatus/add-listener-from-callback.html |
+ batterystatus/basic-all-types-of-events.html |
+ batterystatus/basic-operation.html |
+ batterystatus/event-after-navigation.html |
+ batterystatus/multiple-frames.html |
+ batterystatus/updates.html |
+ batterystatus/window-property.html |
+ |
+ * Modules/battery/BatteryManager.cpp: |
+ (WebCore::BatteryManager::create): |
+ (WebCore::BatteryManager::BatteryManager): |
+ * Modules/battery/BatteryManager.h: |
+ (BatteryManager): |
+ * Modules/battery/NavigatorBattery.cpp: |
+ (WebCore::NavigatorBattery::webkitBattery): |
+ * Modules/battery/NavigatorBattery.h: |
+ (NavigatorBattery): |
+ * Modules/battery/NavigatorBattery.idl: |
+ |
+2012-03-28 Jason Liu <jason.liu@torchmobile.com.cn> |
+ |
+ [BlackBerry]Missing cookies from HTTP response header in Network tab of Web Inspector. |
+ https://bugs.webkit.org/show_bug.cgi?id=82041 |
+ |
+ We shouldn't overwrite cookies of response if there are more than one |
+ header of Set-Cookie. |
+ |
+ Reviewed by Rob Buis. |
+ |
+ Test: http/tests/cookies/resources/setArraycookies.php |
+ |
+ * platform/network/blackberry/NetworkJob.cpp: |
+ (WebCore::NetworkJob::handleNotifyHeaderReceived): |
+ |
+2012-03-28 Noel Gordon <noel.gordon@gmail.com> |
+ |
+ JPEGImageDecoder: Set frame alpha state before marking a frame complete |
+ https://bugs.webkit.org/show_bug.cgi?id=82428 |
+ |
+ Reviewed by Kenneth Russell. |
+ |
+ r109779 changed JPEG alpha channel handling by marking a JPEG image frame |
+ as having no alpha _after_ setting the image status frame-complete, which |
+ prevents the application of image color profiles in some WebGL cases. |
+ |
+ No new tests. The application of the color profile is not guaranteed for |
+ images used as textures in WebGL. Refer to http://wkb.ug/76498. |
+ |
+ * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: |
+ (WebCore::JPEGImageDecoder::jpegComplete): Set the image frame alpha state |
+ before marking the image frame status as frame-complete. |
+ |
+2012-03-28 Emil A Eklund <eae@chromium.org> |
+ |
+ Fix rounding in RenderInline::paintOutlineForLine |
+ https://bugs.webkit.org/show_bug.cgi?id=82540 |
+ |
+ Reviewed by Eric Seidel. |
+ |
+ No new tests, no change in functionality. |
+ |
+ * rendering/RenderInline.cpp: |
+ (WebCore::RenderInline::paintOutlineForLine): |
+ Change paintOutlineForLine to pixel snap the left and right edges of the |
+ lines instead of adding the offset to an already rounded number. |
+ |
+2012-03-28 David Grogan <dgrogan@chromium.org> |
+ |
+ IndexedDB: don't expose IDBDatabaseError to script |
+ https://bugs.webkit.org/show_bug.cgi?id=82280 |
+ |
+ It's not used anywhere and firefox doesn't expose it. |
+ |
+ Reviewed by Tony Chang. |
+ |
+ Test: storage/indexeddb/removed.html |
+ |
+ * CMakeLists.txt: |
+ * DerivedSources.cpp: |
+ * DerivedSources.make: |
+ * DerivedSources.pri: |
+ * GNUmakefile.list.am: |
+ * Modules/indexeddb/DOMWindowIndexedDatabase.idl: |
+ * Modules/indexeddb/IDBDatabaseError.idl: Removed. |
+ * Modules/indexeddb/WorkerContextIndexedDatabase.idl: |
+ * WebCore.gypi: |
+ * WebCore.vcproj/WebCore.vcproj: |
+ * WebCore.xcodeproj/project.pbxproj: |
+ |
+2012-03-28 Kenichi Ishibashi <bashi@chromium.org> |
+ |
+ Respects font fallback list during webfonts are loading |
+ https://bugs.webkit.org/show_bug.cgi?id=76684 |
+ |
+ Reviewed by Dimitri Glazkov. |
+ |
+ For layout, use the rest of the fallback list while webfonts are loading. |
+ If the webfont is loading, it will be given an invalid Unicode Range so that |
+ font selection mechansim doesn't use the webfont for layout. |
+ |
+ Test: http/tests/webfont/fallback-font-while-loading.html |
+ |
+ * css/CSSSegmentedFontFace.cpp: |
+ (WebCore::appendFontDataWithInvalidUnicodeRangeIfLoading): Added. |
+ (WebCore): |
+ (WebCore::CSSSegmentedFontFace::getFontData): |
+ |
+2012-03-28 Mark Rowe <mrowe@apple.com> |
+ |
+ Update Localizable.strings. |
+ |
+ * English.lproj/Localizable.strings: |
+ |
+2012-03-28 Victor Carbune <vcarbune@adobe.com> |
+ |
+ Removed particular rendering for the volume slider and used |
+ css positioning instead (simpler and less prone to errors when |
+ changes occur). |
+ https://bugs.webkit.org/show_bug.cgi?id=82150 |
+ |
+ Reviewed by Eric Carlson. |
+ |
+ Test: media/video-controls-rendering-toggle-display-none.html |
+ |
+ * css/mediaControls.css: Updated css to correctly render controls. |
+ (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel): |
+ * css/mediaControlsChromium.css: Updated css to correctly render controls. |
+ (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel): |
+ (audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button): |
+ (audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container): |
+ * html/shadow/MediaControlElements.cpp: Removed particular renderer. |
+ (WebCore): |
+ * html/shadow/MediaControlElements.h: Removed particular renderer. |
+ (MediaControlVolumeSliderContainerElement): |
+ * html/shadow/MediaControlRootElementChromium.cpp: |
+ (WebCore::MediaControlRootElementChromium::create): Added an anonymous div container |
+ for the mute button and volume slider (to be displayed on top of each other) |
+ |
+2012-03-28 Sheriff Bot <webkit.review.bot@gmail.com> |
+ |
+ Unreviewed, rolling out r110064. |
+ http://trac.webkit.org/changeset/110064 |
+ https://bugs.webkit.org/show_bug.cgi?id=82537 |
+ |
+ The patch leaks the DOM when audio elements are used |
+ (Requested by sundiamonde on #webkit). |
+ |
+ * bindings/js/JSNodeCustom.cpp: |
+ (WebCore::isReachableFromDOM): |
+ |
+2012-03-28 Alexey Proskuryakov <ap@apple.com> |
+ |
+ [Win] Some Blob tests crash in CFNetwork in advanceCurrentStream(FormStreamFields*) |
+ https://bugs.webkit.org/show_bug.cgi?id=82386 |
+ <rdar://problem/11121501> |
+ |
+ Reviewed by Brady Eidson. |
+ |
+ Covered by existing tests. |
+ |
+ * platform/network/cf/FormDataStreamCFNet.cpp: |
+ * platform/network/cf/FormDataStreamCFNet.h: |
+ Moved low level implementation from FormDataStreamMac, and exposed an additional function |
+ to implement Foundation-based API on top of this. |
+ |
+ * platform/network/mac/FormDataStreamMac.h: |
+ * platform/network/mac/FormDataStreamMac.mm: |
+ Rely on toll-free bridging and implementation details to make this work without duplicating |
+ code. |
+ Note that httpBodyFromStream is confusing - I don't see how it can work when sending serialized |
+ requests across process boundary. We probably only get away with this because we don't attempt |
+ to send requests to UI process once they already have streams associated with them. |
+ |
+ * WebCore.vcproj/WebCore.vcproj: Added missing platform/cf files. |
+ |
+ * platform/cf/FileSystemCF.cpp: Fixed include style. |
+ |
+ * platform/win/FileSystemWin.cpp: (WebCore::fileSystemRepresentation): Ifdef out a broken |
+ implementation. |
+ |
+2012-03-28 Adrienne Walker <enne@google.com> |
+ |
+ [chromium] Fix tiled layer assert for huge layers |
+ https://bugs.webkit.org/show_bug.cgi?id=82486 |
+ |
+ Reviewed by James Robinson. |
+ |
+ Test: TiledLayerChromiumTest.hugeLayerUpdateCrash |
+ |
+ TilingData::numTiles() is calculated as the product of two ints and so |
+ can potentially overflow, causing numTiles() to be incorrect. To avoid |
+ calling code accidentally falling into this trap, remove this function |
+ and all code that uses tile index from TilingData. This requires |
+ fixing up a bunch of callers of TilingData and CCLayerTilingData. |
+ |
+ Additionally, TilingData::numTiles() has long been a confusing |
+ function name in some contexts, so rename to bool hasEmptyBounds(). |
+ |
+ Also, remove TilingData::intersectDrawQuad because there are no |
+ clients of that function. |
+ |
+ * platform/graphics/chromium/TiledLayerChromium.cpp: |
+ (WebCore::TiledLayerChromium::drawsContent): |
+ (WebCore::TiledLayerChromium::reserveTextures): |
+ (WebCore::TiledLayerChromium::prepareToUpdate): |
+ (WebCore::TiledLayerChromium::prepareToUpdateIdle): |
+ (WebCore::TiledLayerChromium::needsIdlePaint): |
+ (WebCore::TiledLayerChromium::idlePaintRect): |
+ * platform/graphics/chromium/cc/CCLayerTilingData.cpp: |
+ (WebCore::CCLayerTilingData::tileRect): |
+ * platform/graphics/chromium/cc/CCLayerTilingData.h: |
+ (WebCore::CCLayerTilingData::hasEmptyBounds): |
+ (WebCore::CCLayerTilingData::tileBounds): |
+ (WebCore::CCLayerTilingData::isEmpty): |
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp: |
+ (WebCore::CCTiledLayerImpl::bindContentsTexture): |
+ (WebCore::CCTiledLayerImpl::appendQuads): |
+ * platform/graphics/gpu/Texture.cpp: |
+ (WebCore::Texture::create): |
+ (WebCore::Texture::updateSubRect): |
+ * platform/graphics/gpu/TilingData.cpp: |
+ (WebCore::TilingData::tileBounds): |
+ (WebCore::TilingData::tileBoundsWithBorder): |
+ (WebCore::TilingData::tileBoundsNormalized): |
+ * platform/graphics/gpu/TilingData.h: |
+ (WebCore::TilingData::hasEmptyBounds): |
+ (TilingData): |
+ (WebCore::TilingData::assertTile): |
+ |
+2012-03-28 Emil A Eklund <eae@chromium.org> |
+ |
+ Change FilterOperations::getOutsets to use integers |
+ https://bugs.webkit.org/show_bug.cgi?id=82535 |
+ |
+ Reviewed by Eric Seidel. |
+ |
+ FilterOperations::getOutsets calculates the outsets using integers and |
+ the values are guranteed to be set to full-pixel values. By changing the |
+ function signature we communicate this fact better and avoid unnecessary |
+ type conversions in some cases. |
+ |
+ No new tests. |
+ |
+ * platform/graphics/filters/FilterOperations.cpp: |
+ (WebCore::FilterOperations::getOutsets): |
+ * platform/graphics/filters/FilterOperations.h: |
+ (FilterOperations): |
+ * rendering/RenderBox.cpp: |
+ (WebCore::RenderBox::computeRectForRepaint): |
+ (WebCore::RenderBox::addVisualEffectOverflow): |
+ * rendering/RenderInline.cpp: |
+ (WebCore::RenderInline::computeRectForRepaint): |
+ * rendering/style/RenderStyle.h: |
+ |
+2012-03-28 Nate Chapin <japhet@chromium.org> |
+ |
+ Remove dispatchDidLoadMainResource callback, since no |
+ port implements it. |
+ https://bugs.webkit.org/show_bug.cgi?id=82539 |
+ |
+ Reviewed by Alexey Proskuryakov. |
+ |
+ No new tests, just deleting dead code. |
+ |
+ * loader/EmptyClients.h: |
+ (EmptyFrameLoaderClient): |
+ * loader/FrameLoader.cpp: |
+ (WebCore::FrameLoader::finishedLoading): |
+ (WebCore::FrameLoader::mainReceivedCompleteError): |
+ * loader/FrameLoaderClient.h: |
+ (FrameLoaderClient): |
+ * loader/MainResourceLoader.cpp: |
+ (WebCore::MainResourceLoader::receivedError): |
+ (WebCore::MainResourceLoader::didCancel): |
+ |
+2012-03-28 Enrica Casucci <enrica@apple.com> |
+ |
+ REGRESSION: editing/pasteboard/dataTransfer-setData-getData.html fails on Mac platforms. |
+ https://bugs.webkit.org/show_bug.cgi?id=82497 |
+ <rdar://problem/11140334> |
+ |
+ Reviewed by Brady Eidson. |
+ |
+ The revision causing this regression fixed the way data is written to the pasteboard for NSURLPboardType. |
+ This change fixes the way data is read from the pasteboard for the same pasteboard type. |
+ |
+ No new tests. Fixes the existing one that fails. |
+ |
+ * platform/mac/ClipboardMac.mm: |
+ (WebCore::absoluteURLsFromPasteboard): |
+ * platform/mac/PlatformPasteboardMac.mm: |
+ (WebCore::PlatformPasteboard::stringForType): |
+ |
+2012-03-28 Joe Thomas <joethomas@motorola.com> |
+ |
+ SL bot is hitting SHOULD NEVER BE REACHED in WebCore::valueForLength() on many tests |
+ https://bugs.webkit.org/show_bug.cgi?id=82390 |
+ |
+ Reviewed by Simon Fraser. |
+ |
+ This is an attempt to fix the MAC SL/Lion Bot issue as this issue is not reproducible locally. |
+ The assertion happened when length type is Undefined in valueForLength() function but the assertion for Undefined length type |
+ in RenderBox::computeLogicalWidthInRegionUsing which calls the above said function did not get hit. |
+ |
+ This patch passes Length structure as const reference to Length calculation functions which avoids the call to the copy-constructor. |
+ And it ensures that the Length structure is not getting modified during copy-construction. |
+ |
+ * css/LengthFunctions.cpp: |
+ (WebCore::minimumValueForLength): |
+ (WebCore::valueForLength): |
+ (WebCore::floatValueForLength): |
+ * css/LengthFunctions.h: |
+ (WebCore): |
+ |
+2012-03-28 Gavin Barraclough <barraclough@apple.com> |
+ |
+ Yarr: if we're not using the output array, don't populate it! |
+ https://bugs.webkit.org/show_bug.cgi?id=82519 |
+ |
+ Reviewed by Sam Weinig. |
+ |
+ * ForwardingHeaders/runtime/MatchResult.h: Added. |
+ * ForwardingHeaders/yarr/YarrJIT.h: Added. |
+ - Added forwarding headers. |
+ |
+2012-03-23 David Hyatt <hyatt@apple.com> |
+ |
+ https://bugs.webkit.org/show_bug.cgi?id=81685 |
+ |
+ [New Multicolumn] Add RenderMultiColumnFlowThread to hold the flow thread contents of a multi-column block. |
+ It derives from RenderFlowThread. |
+ |
+ Refactor RenderFlowThread to split out the stuff related to explicit naming into a subclass, RenderNamedFlowThread. |
+ This allows RenderFlowThread to be a simple base class that involves maintaining the regions themselves. |
+ |
+ Reviewed by Julien Chaffraix. |
+ |
+ * CMakeLists.txt: |
+ * GNUmakefile.list.am: |
+ * Target.pri: |
+ * WebCore.gypi: |
+ * WebCore.vcproj/WebCore.vcproj: |
+ * WebCore.xcodeproj/project.pbxproj: |
+ * dom/Document.cpp: |
+ * dom/NodeRenderingContext.cpp: |
+ * dom/NodeRenderingContext.h: |
+ (WebCore): |
+ (WebCore::NodeRenderingContext::parentFlowRenderer): |
+ * dom/WebKitNamedFlow.cpp: |
+ (WebCore::WebKitNamedFlow::WebKitNamedFlow): |
+ * dom/WebKitNamedFlow.h: |
+ (WebCore): |
+ (WebCore::WebKitNamedFlow::create): |
+ (WebKitNamedFlow): |
+ * rendering/RenderBlock.cpp: |
+ (WebCore::RenderBlock::collapseAnonymousBoxChild): |
+ * rendering/RenderFlowThread.cpp: |
+ (WebCore::RenderFlowThread::RenderFlowThread): |
+ (WebCore): |
+ (WebCore::RenderFlowThread::addRegionToThread): |
+ (WebCore::RenderFlowThread::removeRegionFromThread): |
+ (WebCore::RenderFlowThread::removeRenderBoxRegionInfo): |
+ * rendering/RenderFlowThread.h: |
+ (WebCore): |
+ * rendering/RenderMultiColumnFlowThread.cpp: Added. |
+ (WebCore): |
+ (WebCore::RenderMultiColumnFlowThread::RenderMultiColumnFlowThread): |
+ (WebCore::RenderMultiColumnFlowThread::renderName): |
+ * rendering/RenderMultiColumnFlowThread.h: Added. |
+ (WebCore): |
+ (RenderMultiColumnFlowThread): |
+ * rendering/RenderNamedFlowThread.cpp: Added. |
+ (WebCore): |
+ (WebCore::RenderNamedFlowThread::RenderNamedFlowThread): |
+ (WebCore::RenderNamedFlowThread::renderName): |
+ (WebCore::RenderNamedFlowThread::nextRendererForNode): |
+ (WebCore::RenderNamedFlowThread::previousRendererForNode): |
+ (WebCore::RenderNamedFlowThread::addFlowChild): |
+ (WebCore::RenderNamedFlowThread::removeFlowChild): |
+ (WebCore::RenderNamedFlowThread::dependsOn): |
+ (WebCore::compareRenderRegions): |
+ (WebCore::RenderNamedFlowThread::addRegionToThread): |
+ (WebCore::RenderNamedFlowThread::removeRegionFromThread): |
+ (WebCore::RenderNamedFlowThread::checkInvalidRegions): |
+ (WebCore::RenderNamedFlowThread::addDependencyOnFlowThread): |
+ (WebCore::RenderNamedFlowThread::removeDependencyOnFlowThread): |
+ (WebCore::RenderNamedFlowThread::pushDependencies): |
+ (WebCore::RenderNamedFlowThread::ensureNamedFlow): |
+ * rendering/RenderNamedFlowThread.h: Added. |
+ (WebCore): |
+ (RenderNamedFlowThread): |
+ (WebCore::RenderNamedFlowThread::name): |
+ (WebCore::RenderNamedFlowThread::hasChildren): |
+ (WebCore::RenderNamedFlowThread::hasChild): |
+ (WebCore::RenderNamedFlowThread::isRenderNamedFlowThread): |
+ (WebCore::toRenderNamedFlowThread): |
+ * rendering/RenderObject.cpp: |
+ (WebCore::RenderObject::willBeDestroyed): |
+ * rendering/RenderObject.h: |
+ (WebCore::RenderObject::isRenderNamedFlowThread): |
+ * rendering/RenderObjectChildList.cpp: |
+ (WebCore::renderNamedFlowThreadContainer): |
+ (WebCore::RenderObjectChildList::removeChildNode): |
+ (WebCore::RenderObjectChildList::appendChildNode): |
+ (WebCore::RenderObjectChildList::insertChildNode): |
+ * rendering/RenderRegion.cpp: |
+ (WebCore::RenderRegion::RenderRegion): |
+ (WebCore::RenderRegion::attachRegion): |
+ * rendering/RenderRegion.h: |
+ (WebCore): |
+ (WebCore::RenderRegion::parentNamedFlowThread): |
+ (RenderRegion): |
+ * rendering/RenderTreeAsText.cpp: |
+ (WebCore::writeRenderNamedFlowThreads): |
+ (WebCore::writeLayers): |
+ * rendering/RenderView.cpp: |
+ (WebCore::RenderView::RenderView): |
+ (WebCore::RenderView::layout): |
+ (WebCore::RenderView::styleDidChange): |
+ (WebCore::RenderView::ensureRenderFlowThreadWithName): |
+ (WebCore::RenderView::layoutRenderNamedFlowThreads): |
+ * rendering/RenderView.h: |
+ (WebCore): |
+ (RenderView): |
+ (WebCore::RenderView::hasRenderNamedFlowThreads): |
+ (WebCore::RenderView::isRenderNamedFlowThreadOrderDirty): |
+ (WebCore::RenderView::setIsRenderNamedFlowThreadOrderDirty): |
+ (WebCore::RenderView::renderNamedFlowThreadList): |
+ |
+2012-03-28 Emil A Eklund <eae@chromium.org> |
+ |
+ Remove unnecessary rounding in RenderLayerBacking |
+ https://bugs.webkit.org/show_bug.cgi?id=82529 |
+ |
+ Reviewed by Eric Seidel. |
+ |
+ Remove rounding that is no longer required now that borderBoxRect returns |
+ an IntRect. |
+ |
+ No new tests. |
+ |
+ * rendering/RenderLayerBacking.cpp: |
+ (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): |
+ (WebCore::RenderLayerBacking::startAnimation): |
+ (WebCore::RenderLayerBacking::startTransition): |
+ |
+2012-03-28 Sheriff Bot <webkit.review.bot@gmail.com> |
+ |
+ Unreviewed, rolling out r112432. |
+ http://trac.webkit.org/changeset/112432 |
+ https://bugs.webkit.org/show_bug.cgi?id=82536 |
+ |
+ Causes ccs3 layout test asserts (Requested by enne on |
+ #webkit). |
+ |
+ * platform/graphics/chromium/TiledLayerChromium.cpp: |
+ (WebCore::TiledLayerChromium::drawsContent): |
+ (WebCore::TiledLayerChromium::reserveTextures): |
+ (WebCore::TiledLayerChromium::prepareToUpdate): |
+ (WebCore::TiledLayerChromium::prepareToUpdateIdle): |
+ (WebCore::TiledLayerChromium::needsIdlePaint): |
+ (WebCore::TiledLayerChromium::idlePaintRect): |
+ * platform/graphics/chromium/cc/CCLayerTilingData.cpp: |
+ (WebCore::CCLayerTilingData::tileRect): |
+ * platform/graphics/chromium/cc/CCLayerTilingData.h: |
+ (WebCore::CCLayerTilingData::numTiles): |
+ (WebCore::CCLayerTilingData::tileBounds): |
+ (WebCore::CCLayerTilingData::isEmpty): |
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp: |
+ (WebCore::CCTiledLayerImpl::bindContentsTexture): |
+ (WebCore::CCTiledLayerImpl::appendQuads): |
+ * platform/graphics/filters/FECustomFilter.cpp: |
+ (WebCore::FECustomFilter::platformApplySoftware): |
+ * platform/graphics/gpu/Texture.cpp: |
+ (WebCore::Texture::create): |
+ (WebCore::Texture::updateSubRect): |
+ * platform/graphics/gpu/TilingData.cpp: |
+ (WebCore::TilingData::tileBounds): |
+ (WebCore::TilingData::tileBoundsWithBorder): |
+ (WebCore::TilingData::tileBoundsNormalized): |
+ (WebCore::TilingData::intersectDrawQuad): |
+ (WebCore): |
+ * platform/graphics/gpu/TilingData.h: |
+ (WebCore::TilingData::numTiles): |
+ (WebCore::TilingData::tileIndex): |
+ (WebCore::TilingData::tileXIndex): |
+ (WebCore::TilingData::tileYIndex): |
+ (TilingData): |
+ (WebCore::TilingData::assertTile): |
+ |
+2012-03-27 Daniel Cheng <dcheng@chromium.org> |
+ |
+ [chromium] Merge ChromiumDataObject and DataTransferItemListChromium. |
+ https://bugs.webkit.org/show_bug.cgi?id=82407 |
+ |
+ Reviewed by Tony Chang. |
+ |
+ Since ChromiumDataObject is just a very thin wrapper for DataTransferItemListChromium now, |
+ combine the two and remove a layer of indirection. |
+ |
+ No functionality change, should be covered by existing tests. |
+ |
+ * WebCore.gypi: |
+ * platform/chromium/ChromiumDataObject.cpp: Replacing DataTransferItemListChromium. |
+ (WebCore::ChromiumDataObject::createFromPasteboard): |
+ (WebCore::ChromiumDataObject::create): |
+ (WebCore::ChromiumDataObject::length): |
+ (WebCore): |
+ (WebCore::ChromiumDataObject::item): |
+ (WebCore::ChromiumDataObject::deleteItem): |
+ (WebCore::ChromiumDataObject::clearAll): |
+ (WebCore::ChromiumDataObject::add): |
+ (WebCore::ChromiumDataObject::clearData): |
+ (WebCore::ChromiumDataObject::clearAllExceptFiles): |
+ (WebCore::ChromiumDataObject::types): |
+ (WebCore::ChromiumDataObject::getData): |
+ (WebCore::ChromiumDataObject::setData): |
+ (WebCore::ChromiumDataObject::urlAndTitle): |
+ (WebCore::ChromiumDataObject::setURLAndTitle): |
+ (WebCore::ChromiumDataObject::htmlAndBaseURL): |
+ (WebCore::ChromiumDataObject::setHTMLAndBaseURL): |
+ (WebCore::ChromiumDataObject::containsFilenames): |
+ (WebCore::ChromiumDataObject::filenames): |
+ (WebCore::ChromiumDataObject::addFilename): |
+ (WebCore::ChromiumDataObject::addSharedBuffer): |
+ (WebCore::ChromiumDataObject::ChromiumDataObject): |
+ (WebCore::ChromiumDataObject::findStringItem): |
+ (WebCore::ChromiumDataObject::internalAddStringItem): |
+ (WebCore::ChromiumDataObject::internalAddFileItem): |
+ * platform/chromium/ChromiumDataObject.h: |
+ (WebCore): |
+ (ChromiumDataObject): |
+ * platform/chromium/ChromiumDataObjectItem.cpp: Renamed from Source/WebCore/platform/chromium/DataTransferItemChromium.cpp. |
+ (WebCore): |
+ (WebCore::ChromiumDataObjectItem::createFromString): |
+ (WebCore::ChromiumDataObjectItem::createFromFile): |
+ (WebCore::ChromiumDataObjectItem::createFromURL): |
+ (WebCore::ChromiumDataObjectItem::createFromHTML): |
+ (WebCore::ChromiumDataObjectItem::createFromSharedBuffer): |
+ (WebCore::ChromiumDataObjectItem::createFromPasteboard): |
+ (WebCore::ChromiumDataObjectItem::ChromiumDataObjectItem): |
+ (WebCore::ChromiumDataObjectItem::getAsString): |
+ (WebCore::ChromiumDataObjectItem::getAsFile): |
+ (WebCore::ChromiumDataObjectItem::internalGetAsString): |
+ (WebCore::ChromiumDataObjectItem::isFilename): |
+ * platform/chromium/ChromiumDataObjectItem.h: Renamed from Source/WebCore/platform/chromium/DataTransferItemChromium.h. |
+ (WebCore): |
+ (ChromiumDataObjectItem): |
+ (WebCore::ChromiumDataObjectItem::kind): |
+ (WebCore::ChromiumDataObjectItem::type): |
+ (WebCore::ChromiumDataObjectItem::sharedBuffer): |
+ (WebCore::ChromiumDataObjectItem::title): |
+ (WebCore::ChromiumDataObjectItem::baseURL): |
+ * platform/chromium/ClipboardChromium.cpp: |
+ (WebCore::ClipboardChromium::files): |
+ (WebCore::ClipboardChromium::hasData): |
+ (WebCore::ClipboardChromium::items): |
+ * platform/chromium/DataTransferItemListChromium.cpp: Removed. |
+ * platform/chromium/DataTransferItemListChromium.h: Removed. |
+ |
+2012-03-28 Nat Duca <nduca@chromium.org> |
+ |
+ [chromium] Scheduler should not tell FrameRateController to begin a frame when we dont swap |
+ https://bugs.webkit.org/show_bug.cgi?id=82516 |
+ |
+ Reviewed by James Robinson. |
+ |
+ * platform/graphics/chromium/LayerRendererChromium.cpp: |
+ (WebCore::LayerRendererChromium::swapBuffers): |
+ * platform/graphics/chromium/LayerRendererChromium.h: |
+ (LayerRendererChromium): |
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp: |
+ (WebCore::CCLayerTreeHostImpl::swapBuffers): |
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h: |
+ (CCLayerTreeHostImpl): |
+ * platform/graphics/chromium/cc/CCScheduler.cpp: |
+ (WebCore::CCScheduler::processScheduledActions): |
+ * platform/graphics/chromium/cc/CCScheduler.h: |
+ (WebCore::CCScheduledActionDrawAndSwapResult::CCScheduledActionDrawAndSwapResult): |
+ (CCScheduledActionDrawAndSwapResult): |
+ (WebCore): |
+ (CCSchedulerClient): |
+ * platform/graphics/chromium/cc/CCThreadProxy.cpp: |
+ (WebCore::CCThreadProxy::scheduledActionDrawAndSwapInternal): |
+ (WebCore::CCThreadProxy::scheduledActionDrawAndSwapIfPossible): |
+ (WebCore::CCThreadProxy::scheduledActionDrawAndSwapForced): |
+ * platform/graphics/chromium/cc/CCThreadProxy.h: |
+ (CCThreadProxy): |
+ |
+2012-03-26 Eric Uhrhane <ericu@chromium.org> |
+ |
+ FileWriter has two race conditions |
+ https://bugs.webkit.org/show_bug.cgi?id=81861 |
+ |
+ Reviewed by David Levin. |
+ |
+ Should make current tests less flaky. |
+ |
+ * Modules/filesystem/FileWriter.h: |
+ * Modules/filesystem/FileWriter.cpp: |
+ Track the in-flight operation, whether it be an abort/write/truncate. |
+ Whether an abort comes back as didWrite, didTruncate, or didFail, handle |
+ it appropriately. Before this fix, the Chromium implementation would |
+ assert in two cases: |
+ |
+ If the user calls abort, then write, then abort before the backend |
+ catches up, we'd send both aborts to the backend, even though it hadn't |
+ received the write yet. Chromium's backend asserts if there's an abort |
+ with no write in progress. We now record that we've sent an abort and |
+ are waiting for the response. |
+ |
+ If the user calls abort while a write/truncate is just finishing, on the |
+ Chromium worker implementation, the completion message could be |
+ thread-hopping back to WebCore at the |
+ WorkerAsyncFileWriterCallbacksBridge while the abort is thread-hopping |
+ in the other direction. Again, this leads to an abort call to the |
+ backend with no write in progress, and an assert. We're now robust to |
+ completions coming back when we're expecting an abort, and |
+ https://chromiumcodereview.appspot.com/9764018/ will make the backend |
+ robust to extra abort calls. |
+ |
+2012-03-27 Ryosuke Niwa <rniwa@webkit.org> |
+ |
+ Deleting a paragraph of text should not add elements for typing style |
+ https://bugs.webkit.org/show_bug.cgi?id=82401 |
+ |
+ Reviewed by Enrica Casucci. |
+ |
+ This behavior was explicitly supported by DeleteSelectionCommand but it doesn't match TextEdit or Firefox. |
+ We're changing our behavior to match TextEdit and Firefox in this patch. |
+ |
+ The behavior is tested by an existing test, which was renamed to deleting-text-rests-typing-style.html in this patch. |
+ |
+ Test: editing/execCommand/deleting-text-rests-typing-style.html |
+ |
+ * editing/DeleteSelectionCommand.cpp: |
+ (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete): |
+ |
+2012-03-28 Michal Mocny <mmocny@google.com> |
+ |
+ [chromium] Add tracing events around CCLayerTreeHostImpl visibility. |
+ https://bugs.webkit.org/show_bug.cgi?id=82501 |
+ |
+ Reviewed by James Robinson. |
+ |
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp: |
+ (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl): |
+ (WebCore::CCLayerTreeHostImpl::setVisible): |
+ |
+2012-03-28 Florin Malita <fmalita@google.com> |
+ |
+ Incorrect foreignObject hit test results when overlapping other SVG elements |
+ https://bugs.webkit.org/show_bug.cgi?id=82059 |
+ |
+ Reviewed by Nikolas Zimmermann. |
+ |
+ Test: svg/hittest/foreign-object-background.svg |
+ |
+ Foreign content needs to be hit-tested atomically due to the (pseudo) |
+ stacking context established by FOs. |
+ |
+ * rendering/svg/RenderSVGForeignObject.cpp: |
+ (WebCore::RenderSVGForeignObject::nodeAtFloatPoint): |
+ Hit test all phases on FO HitTestForeground. |
+ |
+2012-03-26 Shawn Singh <shawnsingh@chromium.org> |
+ |
+ [chromium] layer->clipRect() is not initialized for layers that create a renderSurface. |
+ https://bugs.webkit.org/show_bug.cgi?id=74147 |
+ |
+ Reviewed by Adrienne Walker. |
+ |
+ Added 3 additional unit tests; Modified existing unit tests and layout tests. |
+ |
+ The layer's clipRect and usesLayerClipping information was not |
+ being initialized for layers that created a renderSurface. (It |
+ was, however, being initialized for the renderSurface itself.) |
+ This patch adds a unit test that reproduces that this is an error, |
+ other unit tests to tightly test the value of clipRect being |
+ initialized, and adds the logic to properly initialize the |
+ clipRect. |
+ |
+ Before this patch, this bug was causing flashing on tab-switch on |
+ the apple iphone page. Even worse, with partial swap enabled, the |
+ layers would simply disappear, because the first frame the |
+ clipRect is uninitialized and the layer is not drawn, and the |
+ second frame onwards, the damage tracker correctly things nothing |
+ is damaged, so it doesn't draw that layer again until other damage |
+ causes it to be redrawn. |
+ |
+ * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp: |
+ (WebCore::calculateDrawTransformsAndVisibilityInternal): |
+ |
+2012-03-28 Anders Carlsson <andersca@apple.com> |
+ |
+ "Sticky" or slow scrolling on some sites |
+ https://bugs.webkit.org/show_bug.cgi?id=82512 |
+ <rdar://problem/11000372> |
+ |
+ Reviewed by Andreas Kling. |
+ |
+ When we're in the slow mode and have to update the scroll layer position on the main thread, |
+ get it from the scrolling thread so we'll be in sync with the scrolling tree when the main thread is busy. |
+ |
+ * page/scrolling/ScrollingCoordinator.cpp: |
+ (WebCore::ScrollingCoordinator::updateMainFrameScrollPositionAndScrollLayerPosition): |
+ * page/scrolling/ScrollingCoordinator.h: |
+ (ScrollingCoordinator): |
+ * page/scrolling/ScrollingTree.cpp: |
+ (WebCore::ScrollingTree::mainFrameScrollPosition): |
+ (WebCore): |
+ (WebCore::ScrollingTree::updateMainFrameScrollPositionAndScrollLayerPosition): |
+ * page/scrolling/ScrollingTree.h: |
+ |
+2012-03-28 Adrienne Walker <enne@google.com> |
+ |
+ [chromium] Fix tiled layer assert for huge layers |
+ https://bugs.webkit.org/show_bug.cgi?id=82486 |
+ |
+ Reviewed by James Robinson. |
+ |
+ Test: TiledLayerChromiumTest.hugeLayerUpdateCrash |
+ |
+ TilingData::numTiles() is calculated as the product of two ints and so |
+ can potentially overflow, causing numTiles() to be incorrect. To avoid |
+ calling code accidentally falling into this trap, remove this function |
+ and all code that uses tile index from TilingData. This requires |
+ fixing up a bunch of callers of TilingData and CCLayerTilingData. |
+ |
+ Additionally, TilingData::numTiles() has long been a confusing |
+ function name in some contexts, so rename to bool hasEmptyBounds(). |
+ |
+ Also, remove TilingData::intersectDrawQuad because there are no |
+ clients of that function. |
+ |
+ * platform/graphics/chromium/TiledLayerChromium.cpp: |
+ (WebCore::TiledLayerChromium::drawsContent): |
+ (WebCore::TiledLayerChromium::reserveTextures): |
+ (WebCore::TiledLayerChromium::prepareToUpdate): |
+ (WebCore::TiledLayerChromium::prepareToUpdateIdle): |
+ (WebCore::TiledLayerChromium::needsIdlePaint): |
+ (WebCore::TiledLayerChromium::idlePaintRect): |
+ * platform/graphics/chromium/cc/CCLayerTilingData.cpp: |
+ (WebCore::CCLayerTilingData::tileRect): |
+ * platform/graphics/chromium/cc/CCLayerTilingData.h: |
+ (WebCore::CCLayerTilingData::hasEmptyBounds): |
+ (WebCore::CCLayerTilingData::tileBounds): |
+ (WebCore::CCLayerTilingData::isEmpty): |
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp: |
+ (WebCore::CCTiledLayerImpl::bindContentsTexture): |
+ (WebCore::CCTiledLayerImpl::appendQuads): |
+ * platform/graphics/gpu/Texture.cpp: |
+ (WebCore::Texture::create): |
+ (WebCore::Texture::updateSubRect): |
+ * platform/graphics/gpu/TilingData.cpp: |
+ (WebCore::TilingData::tileBounds): |
+ (WebCore::TilingData::tileBoundsWithBorder): |
+ (WebCore::TilingData::tileBoundsNormalized): |
+ * platform/graphics/gpu/TilingData.h: |
+ (WebCore::TilingData::hasEmptyBounds): |
+ (TilingData): |
+ (WebCore::TilingData::assertTile): |
+ |
+2012-03-28 Peter Rybin <peter.rybin@gmail.com> |
+ |
+ Web Inspector: CodeGeneratorInspector.py: switch Runtime, Network and DOM domains to typed API |
+ https://bugs.webkit.org/show_bug.cgi?id=81558 |
+ |
+ Reviewed by Pavel Feldman. |
+ |
+ Client code is switched to typed API (all InspectorObject and InspectorArray types are |
+ replaced with generated types from TypeBuilder according to Inspector.json). |
+ |
+ Missing array of int specialization is added. Code generator now has a check against |
+ misspelled (non-existing) domain names. |
+ |
+ * inspector/CodeGeneratorInspector.py: |
+ (Generator.go): check against misspelled domain names added. |
+ * inspector/InjectedScript.cpp: |
+ (WebCore::InjectedScript::evaluate): |
+ (WebCore::InjectedScript::callFunctionOn): |
+ (WebCore::InjectedScript::evaluateOnCallFrame): |
+ (WebCore::InjectedScript::getProperties): |
+ (WebCore::InjectedScript::wrapObject): |
+ (WebCore::InjectedScript::wrapNode): |
+ (WebCore::InjectedScript::wrapSerializedObject): |
+ (WebCore::InjectedScript::makeEvalCall): |
+ * inspector/InjectedScript.h: |
+ (InjectedScript): |
+ * inspector/InspectorDOMAgent.cpp: |
+ (WebCore::InspectorDOMAgent::getDocument): |
+ (WebCore::InspectorDOMAgent::pushChildNodesToFrontend): |
+ (WebCore::InspectorDOMAgent::querySelectorAll): |
+ (WebCore::InspectorDOMAgent::pushNodePathToFrontend): |
+ (WebCore::InspectorDOMAgent::getEventListenersForNode): |
+ (WebCore::InspectorDOMAgent::getSearchResults): |
+ (WebCore::InspectorDOMAgent::resolveNode): |
+ (WebCore::InspectorDOMAgent::getAttributes): |
+ (WebCore::InspectorDOMAgent::buildObjectForNode): |
+ (WebCore::InspectorDOMAgent::buildArrayForElementAttributes): |
+ (WebCore::InspectorDOMAgent::buildArrayForContainerChildren): |
+ (WebCore::InspectorDOMAgent::loadEventFired): |
+ (WebCore::InspectorDOMAgent::didInsertDOMNode): |
+ (WebCore::InspectorDOMAgent::styleAttributeInvalidated): |
+ (WebCore::InspectorDOMAgent::pushNodeByPathToFrontend): |
+ * inspector/InspectorDOMAgent.h: |
+ (InspectorDOMAgent): |
+ * inspector/InspectorPageAgent.cpp: |
+ (WebCore::InspectorPageAgent::resourceTypeJson): |
+ (WebCore::InspectorPageAgent::cachedResourceTypeJson): |
+ (WebCore::InspectorPageAgent::buildObjectForFrameTree): |
+ * inspector/InspectorPageAgent.h: |
+ * inspector/InspectorResourceAgent.cpp: |
+ (WebCore::buildObjectForResourceRequest): |
+ (WebCore::buildObjectForResourceResponse): |
+ (WebCore::buildObjectForCachedResource): |
+ (WebCore::InspectorResourceAgent::willSendRequest): |
+ (WebCore::InspectorResourceAgent::didReceiveResponse): |
+ (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache): |
+ (WebCore::InspectorResourceAgent::buildInitiatorObject): |
+ (WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest): |
+ (WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse): |
+ * inspector/InspectorResourceAgent.h: |
+ (InspectorResourceAgent): |
+ * inspector/InspectorRuntimeAgent.cpp: |
+ (WebCore::InspectorRuntimeAgent::evaluate): |
+ (WebCore::InspectorRuntimeAgent::callFunctionOn): |
+ (WebCore::InspectorRuntimeAgent::getProperties): |
+ * inspector/InspectorRuntimeAgent.h: |
+ (InspectorRuntimeAgent): |
+ * inspector/InspectorValues.h: |
+ (InspectorArray): |
+ (WebCore::InspectorArray::pushInt): |
+ (WebCore): |
+ * inspector/ScriptCallFrame.cpp: |
+ (WebCore::ScriptCallFrame::buildInspectorObject): |
+ * inspector/ScriptCallFrame.h: |
+ (ScriptCallFrame): |
+ * inspector/ScriptCallStack.cpp: |
+ (WebCore::ScriptCallStack::buildInspectorArray): |
+ * inspector/ScriptCallStack.h: |
+ (ScriptCallStack): |
+ |
+2012-03-28 Eric Seidel <eric@webkit.org> |
+ |
+ setNeedsLayout(true, false) is super confusing to read and should use an enum instead |
+ https://bugs.webkit.org/show_bug.cgi?id=82369 |
+ |
+ Reviewed by Julien Chaffraix. |
+ |
+ I replaced all uses of the markParents bool with a MarkingBehavior |
+ enum (which has two values: MarkContainingBlockChain and MarkOnlyThis). |
+ I'm not sure the naming is perfect (as it's not clear to me if markParents is |
+ used to mean the same thing in these 3 functions), but hopefully this code is more |
+ clear. I welcome further suggested adjustment from layout experts. |
+ |
+ * page/FrameView.cpp: |
+ (WebCore::FrameView::scheduleRelayout): |
+ * rendering/RenderBlock.cpp: |
+ (WebCore::RenderBlock::layoutBlock): |
+ (WebCore::RenderBlock::adjustPositionedBlock): |
+ (WebCore::RenderBlock::layoutBlockChildren): |
+ (WebCore::RenderBlock::layoutBlockChild): |
+ (WebCore::RenderBlock::layoutPositionedObjects): |
+ (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded): |
+ (WebCore::RenderBlock::removePositionedObjects): |
+ (WebCore::RenderBlock::insertFloatingObject): |
+ (WebCore::RenderBlock::positionNewFloats): |
+ (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout): |
+ (WebCore::RenderBlock::adjustBlockChildForPagination): |
+ * rendering/RenderBlockLineLayout.cpp: |
+ (WebCore::RenderBlock::layoutRunsAndFloats): |
+ (WebCore::RenderBlock::layoutInlineChildren): |
+ (WebCore::RenderBlock::positionNewFloatOnLine): |
+ * rendering/RenderBox.cpp: |
+ (WebCore::RenderBox::positionLineBox): |
+ * rendering/RenderDeprecatedFlexibleBox.cpp: |
+ (WebCore::RenderDeprecatedFlexibleBox::layoutBlock): |
+ (WebCore::gatherFlexChildrenInfo): |
+ (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox): |
+ (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox): |
+ (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp): |
+ * rendering/RenderFlexibleBox.cpp: |
+ (WebCore::RenderFlexibleBox::prepareChildForPositionedLayout): |
+ * rendering/RenderLayer.cpp: |
+ (WebCore::RenderLayer::updateScrollInfoAfterLayout): |
+ * rendering/RenderMedia.cpp: |
+ (WebCore::RenderMedia::layout): |
+ * rendering/RenderObject.cpp: |
+ (WebCore::RenderObject::setPreferredLogicalWidthsDirty): |
+ * rendering/RenderObject.h: |
+ (RenderObject): |
+ (WebCore::RenderObject::setNeedsLayout): |
+ (WebCore::RenderObject::setChildNeedsLayout): |
+ * rendering/RenderRubyRun.cpp: |
+ (WebCore::RenderRubyRun::layoutSpecialExcludedChild): |
+ * rendering/RenderTable.cpp: |
+ (WebCore::RenderTable::layout): |
+ * rendering/RenderTableRow.cpp: |
+ (WebCore::RenderTableRow::layout): |
+ * rendering/RenderTableSection.cpp: |
+ (WebCore::RenderTableSection::calcRowLogicalHeight): |
+ (WebCore::RenderTableSection::layoutRows): |
+ * rendering/RenderTextControl.cpp: |
+ (WebCore::RenderTextControl::layoutSpecialExcludedChild): |
+ * rendering/RenderTextControlSingleLine.cpp: |
+ (WebCore::RenderTextControlSingleLine::layout): |
+ * rendering/RenderView.cpp: |
+ (WebCore::RenderView::RenderView): |
+ (WebCore::RenderView::layout): |
+ * rendering/mathml/RenderMathMLRoot.cpp: |
+ (WebCore::RenderMathMLRoot::layout): |
+ * rendering/mathml/RenderMathMLRow.cpp: |
+ (WebCore::RenderMathMLRow::layout): |
+ * rendering/mathml/RenderMathMLSubSup.cpp: |
+ (WebCore::RenderMathMLSubSup::layout): |
+ * rendering/svg/SVGRenderSupport.cpp: |
+ (WebCore::SVGRenderSupport::layoutChildren): |
+ |
+2012-03-28 Joseph Pecoraro <pecoraro@apple.com> |
+ |
+ <http://webkit.org/b/82419> Web Inspector: Create -[DOMNode inspect] from IDL |
+ |
+ Instead of manually creating the method in DOM.mm we can specify it in |
+ Node.idl and autogenerate part of the interface. |
+ |
+ Reviewed by Timothy Hatcher. |
+ |
+ * bindings/objc/DOM.mm: |
+ * bindings/objc/DOMPrivate.h: |
+ Move the call to InspectorController::inspect from here ... |
+ |
+ * dom/Node.h: |
+ * dom/Node.idl: IDL only in an ObjC block. |
+ * dom/Node.cpp: |
+ (WebCore::Node::inspect): |
+ ... to here. |
+ |
+ * WebCore.xcodeproj/project.pbxproj: |
+ Add the new generated file so we can Copy it in the build phase. |
+ |
+2012-03-28 Tommy Widenflycht <tommyw@google.com> |
+ |
+ [chromium] MediaStream API (JSEP): Introducing WebPeerConnection00Handler |
+ https://bugs.webkit.org/show_bug.cgi?id=82450 |
+ |
+ Reviewed by Adam Barth. |
+ |
+ This change removes the default PeerConnection00Handler.cpp from the Chromium build. |
+ |
+ A major overhaul of the existing layout tests is forthcoming. |
+ |
+ * WebCore.gypi: |
+ * platform/mediastream/PeerConnection00Handler.h: |
+ (WebCore): |
+ (PeerConnection00Handler): |
+ |
+2012-03-28 Robert Hogan <robert@webkit.org> |
+ |
+ [REGRESSION] Web Inspector: column caption delimiters are misaligned in DataGrid |
+ https://bugs.webkit.org/show_bug.cgi?id=82193 |
+ |
+ Reviewed by Yury Semikhatsky. |
+ |
+ Since r111742 column width in fixed layout tables is set to the width of the cell plus its left padding plus its right padding |
+ plus half its left border plus half its right border in the collapsing border model. The layout of the panel |
+ headers in the inspector depended on pre-r111742 behaviour, so ended up misaligned with the content below. To cater for the |
+ new method of calculating column width enforce a fixed width for the corner column by removing padding and borders (except collapsed |
+ borders from adjacent cells) and specify the expected width (15px) minus the expected width of the collapsed borders (1px). |
+ |
+ * inspector/front-end/dataGrid.css: |
+ (.data-grid th.corner): |
+ |
+2012-03-28 Alexis Menard <alexis.menard@openbossa.org> |
+ |
+ Increase code sharing between CSSProperty and CSSPropertyLonghand. |
+ https://bugs.webkit.org/show_bug.cgi?id=82479 |
+ |
+ Reviewed by Antti Koivisto. |
+ |
+ Use longhands declarations from CSSPropertyLonghand in CSSProperty to avoid |
+ code duplication. |
+ |
+ No new tests : refactoring only, we shouldn't have any behavior difference. |
+ |
+ * css/CSSProperty.cpp: |
+ (WebCore::resolveToPhysicalProperty): |
+ (WebCore::borderDirections): |
+ (WebCore): |
+ (WebCore::CSSProperty::resolveDirectionAwareProperty): |
+ |
+2012-03-28 Vsevolod Vlasov <vsevik@chromium.org> |
+ |
+ Web Inspector: Implement snippets renaming in scripts navigator. |
+ https://bugs.webkit.org/show_bug.cgi?id=82477 |
+ |
+ Reviewed by Pavel Feldman. |
+ |
+ Snippets renaming is implemented as editing of snippet name in scripts navigator. |
+ |
+ * inspector/front-end/ScriptsNavigator.js: |
+ (WebInspector.ScriptsNavigator.prototype._handleRenameSnippet): |
+ (WebInspector.ScriptsNavigator.prototype._fileRenamed): |
+ (WebInspector.ScriptsNavigator.prototype.rename.commitHandler): |
+ (WebInspector.ScriptsNavigator.prototype.rename.cancelHandler): |
+ (WebInspector.ScriptsNavigator.prototype.rename.afterEditing): |
+ (WebInspector.BaseNavigatorTreeElement.prototype.set titleText): |
+ * inspector/front-end/scriptsPanel.css: |
+ (#scripts-navigator-tabbed-pane .navigator .base-navigator-tree-element-title.editing): |
+ |
+2012-03-28 Vsevolod Vlasov <vsevik@chromium.org> |
+ |
+ Web Inspector: Add context menu for snippets control. |
+ https://bugs.webkit.org/show_bug.cgi?id=82475 |
+ |
+ Reviewed by Pavel Feldman. |
+ |
+ This is a preliminary implementation of snippets control using context menu. |
+ We might want to add a more discoverable one before taking snippets out of experiments. |
+ |
+ * English.lproj/localizedStrings.js: |
+ * inspector/front-end/ScriptsNavigator.js: |
+ (WebInspector.ScriptsNavigator.prototype._showScriptFoldersSettingChanged): |
+ (WebInspector.ScriptsNavigator.prototype._createSnippetsTree): |
+ (WebInspector.ScriptsNavigator.prototype._handleSnippetContextMenuEvent): |
+ (WebInspector.ScriptsNavigator.prototype._showSnippetContextMenu): |
+ (WebInspector.ScriptsNavigator.prototype._handleEvaluateSnippet): |
+ (WebInspector.ScriptsNavigator.prototype._handleRenameSnippet): |
+ (WebInspector.ScriptsNavigator.prototype._handleRemoveSnippet): |
+ (WebInspector.ScriptsNavigator.prototype._handleCreateSnippet): |
+ (WebInspector.NavigatorScriptTreeElement.prototype.get navigator): |
+ (WebInspector.NavigatorScriptTreeElement.prototype.onattach): |
+ (WebInspector.NavigatorScriptTreeElement.prototype.onenter): |
+ (WebInspector.NavigatorScriptTreeElement.prototype._handleContextMenuEvent): |
+ |
+2012-03-28 Vsevolod Vlasov <vsevik@chromium.org> |
+ |
+ Web Inspector: ScriptsNavigator should save scroll position when switching tabs. |
+ https://bugs.webkit.org/show_bug.cgi?id=82472 |
+ |
+ Reviewed by Pavel Feldman. |
+ |
+ WebInspector.View provides save/restore scroll position capabilities. |
+ This patch makes them used in ScriptsNavigator. |
+ |
+ * inspector/front-end/ScriptsNavigator.js: |
+ (WebInspector.ScriptsNavigator): |
+ (WebInspector.ScriptsNavigator.prototype._createSnippetsTree): |
+ * inspector/front-end/scriptsPanel.css: |
+ (#scripts-navigator-tabbed-pane .tabbed-pane-content): |
+ (#scripts-navigator-tabbed-pane .navigator-container): |
+ |
+2012-03-28 Andrey Kosyakov <caseq@chromium.org> |
+ |
+ Web Inspector: only update Timeline overview when really needed |
+ https://bugs.webkit.org/show_bug.cgi?id=81909 |
+ |
+ Reviewed by Pavel Feldman. |
+ |
+ Switch timeline overview to using raw records, thus removing dependency on instance members of |
+ TimelinePresentationModel. This requires moving record styles/categories to static getters. |
+ |
+ * inspector/front-end/TimelineModel.js: |
+ (WebInspector.TimelineModel): |
+ (WebInspector.TimelineModel.startTime): |
+ (WebInspector.TimelineModel.endTime): |
+ (WebInspector.TimelineModel.duration): |
+ (WebInspector.TimelineModel.prototype._addRecord): |
+ (WebInspector.TimelineModel.prototype.reset): |
+ (WebInspector.TimelineModel.prototype.minimumRecordTime): |
+ (WebInspector.TimelineModel.prototype.maximumRecordTime): |
+ (WebInspector.TimelineModel.prototype._updateBoundaries): |
+ * inspector/front-end/TimelineOverviewPane.js: |
+ (WebInspector.TimelineOverviewPane): |
+ (WebInspector.TimelineOverviewPane.prototype._showTimelines): |
+ (WebInspector.TimelineOverviewPane.prototype._showMemoryGraph): |
+ (WebInspector.TimelineOverviewPane.prototype._setVerticalOverview): |
+ (WebInspector.TimelineOverviewPane.prototype._onCategoryVisibilityChanged): |
+ (WebInspector.TimelineOverviewPane.prototype._update): |
+ (WebInspector.TimelineOverviewPane.prototype._updateCategoryStrips.markPercentagesForRecord): |
+ (WebInspector.TimelineOverviewPane.prototype._updateCategoryStrips): |
+ (WebInspector.TimelineOverviewPane.prototype.windowStartTime): |
+ (WebInspector.TimelineOverviewPane.prototype.windowEndTime): |
+ (WebInspector.TimelineOverviewPane.prototype._onWindowChanged): |
+ (WebInspector.TimelineOverviewPane.prototype.setShowShortEvents): |
+ (WebInspector.TimelineOverviewPane.prototype._scheduleRefresh): |
+ (WebInspector.TimelineOverviewCalculator.prototype.computeBarGraphPercentages): |
+ (WebInspector.TimelineOverviewCalculator.prototype.setWindow): |
+ (WebInspector.TimelineOverviewCalculator.prototype.reset): |
+ (WebInspector.HeapGraph): |
+ (WebInspector.HeapGraph.prototype.update): |
+ (WebInspector.TimelineVerticalOverview): |
+ (WebInspector.TimelineVerticalOverview.prototype.reset): |
+ (WebInspector.TimelineVerticalOverview.prototype.update): |
+ (WebInspector.TimelineVerticalOverview.prototype.wasShown): |
+ (WebInspector.TimelineVerticalOverview.prototype.willHide): |
+ (WebInspector.TimelineVerticalOverview.prototype._aggregateFrameStatistics): |
+ (WebInspector.TimelineVerticalOverview.prototype._aggregateRecords): |
+ (WebInspector.TimelineVerticalOverview.prototype.getWindowTimes): |
+ (WebInspector.TimelineVerticalOverview.prototype._onRecordAdded): |
+ (WebInspector.TimelineAggregatedRecord): |
+ (WebInspector.TimelineAggregatedRecord.prototype._aggregateStatistics): |
+ * inspector/front-end/TimelinePanel.js: |
+ (WebInspector.TimelinePanel): |
+ (WebInspector.TimelinePanel.prototype._createStatusbarButtons): |
+ (WebInspector.TimelinePanel.prototype._toggleFilterButtonClicked): |
+ (WebInspector.TimelinePanel.prototype._resetPanel): |
+ (WebInspector.TimelinePanel.prototype._refresh): |
+ (WebInspector.TimelineCalculator): |
+ (WebInspector.TimelineCalculator.prototype.formatTime): |
+ * inspector/front-end/TimelinePresentationModel.js: |
+ (WebInspector.TimelinePresentationModel): |
+ (WebInspector.TimelinePresentationModel.categories): |
+ (WebInspector.TimelinePresentationModel.recordStyle): |
+ (WebInspector.TimelinePresentationModel.categoryForRecord): |
+ (WebInspector.TimelinePresentationModel.prototype.reset): |
+ (WebInspector.TimelinePresentationModel.prototype.addRecord): |
+ (WebInspector.TimelinePresentationModel.Record): |
+ (WebInspector.TimelinePresentationModel.Record.prototype.generatePopupContent): |
+ |
+2012-03-28 Arvid Nilsson <anilsson@rim.com> |
+ |
+ [BlackBerry] Plumb through GraphicsLayer::contentsOpaque() to LayerTiler |
+ https://bugs.webkit.org/show_bug.cgi?id=82457 |
+ |
+ Reviewed by Rob Buis. |
+ |
+ The LayerTiler already knows not to turn on GL_BLEND for opaque layers. |
+ However, it only ever sets the opaque flag for image layers and color |
+ layers, never for content layers. |
+ |
+ This was no big deal, because contentsOpaque() is currently false for |
+ all layers except the root layer, which we always drew using the |
+ BlackBerry::WebKit::BackingStore anyway. |
+ |
+ When we start using RenderLayerBacking::m_usingTiledCacheLayer=true on |
+ the root layer in situations where the BackingStore is unavailable, we |
+ can speed up rendering of the root layer by honouring the opaque flag. |
+ |
+ Fixed by plumbing through the GraphicsLayer::contentsOpaque() flag all |
+ the way to LayerTiler and on to Texture. |
+ |
+ * platform/graphics/blackberry/LayerData.h: |
+ (WebCore::LayerData::LayerData): |
+ (WebCore::LayerData::isOpaque): |
+ (LayerData): |
+ * platform/graphics/blackberry/LayerTile.cpp: |
+ (WebCore::LayerTile::updateContents): |
+ * platform/graphics/blackberry/LayerTile.h: |
+ (LayerTile): |
+ * platform/graphics/blackberry/LayerTiler.cpp: |
+ (WebCore::LayerTiler::updateTextureContentsIfNeeded): |
+ (WebCore::LayerTiler::performTileJob): |
+ * platform/graphics/blackberry/LayerTiler.h: |
+ (WebCore::LayerTiler::TextureJob::TextureJob): |
+ (WebCore::LayerTiler::TextureJob::updateContents): |
+ * platform/graphics/blackberry/LayerWebKitThread.h: |
+ (WebCore::LayerWebKitThread::setOpaque): |
+ * platform/graphics/blackberry/Texture.h: |
+ (Texture): |
+ * platform/graphics/blackberry/TextureCacheCompositingThread.cpp: |
+ (WebCore::TextureCacheCompositingThread::updateContents): |
+ * platform/graphics/blackberry/TextureCacheCompositingThread.h: |
+ (TextureCacheCompositingThread): |
+ |
+2012-03-28 Andrey Kosyakov <caseq@chromium.org> |
+ |
+ Web Inspector: nuke HeapGraph.setSize(), do it automagically on update |
+ https://bugs.webkit.org/show_bug.cgi?id=82471 |
+ |
+ Reviewed by Yury Semikhatsky. |
+ |
+ * inspector/front-end/TimelineOverviewPane.js: |
+ (WebInspector.TimelineOverviewPane.prototype.update): |
+ (WebInspector.HeapGraph.prototype.update): |
+ |
+2012-03-28 Pavel Podivilov <podivilov@chromium.org> |
+ |
+ Web Inspector: dispatch console-message-added and console-messages-cleared events on UISourceCode. |
+ https://bugs.webkit.org/show_bug.cgi?id=82463 |
+ |
+ Reviewed by Vsevolod Vlasov. |
+ |
+ Those events are related to specific UISourceCode. See bug 82224 for more details. |
+ |
+ * inspector/front-end/DebuggerPresentationModel.js: |
+ (WebInspector.DebuggerPresentationModel): |
+ (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessageToScript): |
+ (WebInspector.DebuggerPresentationModel.prototype._consoleCleared): |
+ (WebInspector.DebuggerPresentationModel.prototype._debuggerReset): |
+ (WebInspector.UISourceCodeImpl): |
+ (WebInspector.UISourceCodeImpl.prototype.consoleMessages): |
+ (WebInspector.UISourceCodeImpl.prototype.consoleMessageAdded): |
+ (WebInspector.UISourceCodeImpl.prototype.consoleMessagesCleared): |
+ * inspector/front-end/JavaScriptSourceFrame.js: |
+ (WebInspector.JavaScriptSourceFrame): |
+ (WebInspector.JavaScriptSourceFrame.prototype.beforeTextChanged): |
+ (WebInspector.JavaScriptSourceFrame.prototype._consoleMessageAdded): |
+ (WebInspector.JavaScriptSourceFrame.prototype._consoleMessagesCleared): |
+ (WebInspector.JavaScriptSourceFrame.prototype._onTextViewerContentLoaded): |
+ * inspector/front-end/ScriptsPanel.js: |
+ (WebInspector.ScriptsPanel.prototype._sourceFrameLoaded): |
+ * inspector/front-end/UISourceCode.js: |
+ (WebInspector.UISourceCode.prototype.breakpoints): |
+ (WebInspector.UISourceCode.prototype.consoleMessages): |
+ |
+2012-03-28 Carlos Garcia Campos <cgarcia@igalia.com> |
+ |
+ [GTK] Implement PlatformStrategies |
+ https://bugs.webkit.org/show_bug.cgi?id=82454 |
+ |
+ Reviewed by Xan Lopez. |
+ |
+ * GNUmakefile.list.am: Remove PluginDataGtk.cpp. The same |
+ functionality is now implemented using platform strategies. |
+ * plugins/gtk/PluginDataGtk.cpp: Removed. |
+ |
+2012-03-28 Vsevolod Vlasov <vsevik@chromium.org> |
+ |
+ Web Inspector: [Regression] TabIndex is not correctly restored after editing. |
+ https://bugs.webkit.org/show_bug.cgi?id=82464 |
+ |
+ Reviewed by Pavel Feldman. |
+ |
+ This fixes incorrect usage of isNaN that returns false for null value. |
+ Drive-by javascript compilation fix. |
+ |
+ * inspector/front-end/CompilerScriptMapping.js: |
+ (WebInspector.CompilerScriptMapping.prototype.addScript): compilation fix. |
+ * inspector/front-end/ResourceScriptMapping.js: |
+ (WebInspector.ResourceScriptMapping.prototype._uiSourceCodeChanged): compilation fix. |
+ * inspector/front-end/SnippetsModel.js: |
+ (WebInspector.SnippetsScriptMapping.prototype._createUISourceCodeForScript): compilation fix. |
+ * inspector/front-end/UIUtils.js: |
+ (WebInspector.startEditing.cleanUpAfterEditing): incorrect usage of isNaN fix. |
+ |
+2012-03-28 Yi Shen <yi.4.shen@nokia.com> |
+ |
+ An extra line break is inserted when pasting into a font element. |
+ https://bugs.webkit.org/show_bug.cgi?id=71207 |
+ |
+ Reviewed by Ryosuke Niwa. |
+ |
+ Fix an editing bug where inserting text into a font element would |
+ create an extra div element in the dom tree. The |
+ WebCore::positionAvoidingPrecedingNodes() tries to set the correct |
+ destination position by checking the next visible position, however, |
+ it causes the position moves into the child element in somecase. |
+ Instead, we should only check the position in parent after node. |
+ |
+ Test: editing/inserting/insert-text-into-font.html |
+ |
+ * editing/ReplaceSelectionCommand.cpp: |
+ (WebCore::positionAvoidingPrecedingNodes): |
+ |
+2012-03-28 Sergio Villar Senin <svillar@igalia.com> |
+ |
+ [Soup] DNS prefetching spams resolver, shoots self in the foot |
+ https://bugs.webkit.org/show_bug.cgi?id=41630 |
+ |
+ Reviewed by Martin Robinson. |
+ |
+ Added generic DNSResolveQueue class to throttle DNS |
+ prefetches. It's an abstract refactoring of CFNET's |
+ DNSResolveQueue. Platform specific methods implemented for soup |
+ and CFNET backends. |
+ |
+ No new tests required as we're just refactoring existing code to |
+ be used by two different ports. |
+ |
+ * CMakeLists.txt: added new file. |
+ * GNUmakefile.list.am: ditto. |
+ * WebCore.vcproj/WebCore.vcproj: ditto. |
+ * WebCore.xcodeproj/project.pbxproj: ditto. |
+ * platform/network/DNSResolveQueue.cpp: Added. |
+ (WebCore): |
+ (WebCore::DNSResolveQueue::add): adds a new host to be prefetched. |
+ (WebCore::DNSResolveQueue::fired): by using a delay we coalesce |
+ several prefetch requests and try to resolve them all here. |
+ * platform/network/DNSResolveQueue.h: Added. |
+ (WebCore): |
+ (DNSResolveQueue): class that implements DNS prefetch |
+ throttling using a template pattern. |
+ (WebCore::DNSResolveQueue::shared): |
+ (WebCore::DNSResolveQueue::decrementRequestCount): |
+ * platform/network/cf/DNSCFNet.cpp: |
+ (WebCore::DNSResolveQueue::platformProxyIsEnabledInSystemPreferences): |
+ (WebCore::DNSResolveQueue::platformResolve): |
+ * platform/network/soup/DNSSoup.cpp: |
+ (WebCore): |
+ (WebCore::DNSResolveQueue::platformProxyIsEnabledInSystemPreferences): |
+ (WebCore::resolvedCallback): |
+ (WebCore::DNSResolveQueue::platformResolve): |
+ (WebCore::prefetchDNS): |
+ |
+2012-03-28 Eugene Girard <girard@chromium.org> |
+ |
+ window.scrollBy() scrolls incorrectly when zoomed in/out |
+ https://bugs.webkit.org/show_bug.cgi?id=45228 |
+ |
+ Reviewed by Simon Fraser. |
+ |
+ scrollBy now uses layout (not CSS) units. (As scrollTo does.) |
+ |
+ Test: fast/dom/zoom-scroll-page-test.html |
+ |
+ * page/DOMWindow.cpp: |
+ (WebCore::DOMWindow::scrollBy): |
+ |
+2012-03-28 Stephen Chenney <schenney@chromium.org> |
+ |
+ Null dereference in SVGTextElement::animatedLocalTransform() |
+ https://bugs.webkit.org/show_bug.cgi?id=82375 |
+ |
+ Reviewed by Nikolas Zimmermann. |
+ |
+ A poorly structured SVG file with a text element inside an |
+ animatedTransform element leaves the text element placed outside of |
+ the SVG root and it has no renderer(). Later attempts to use the |
+ renderer in animatedLocalTransform fail. |
+ |
+ Test: svg/custom/get-text-element-transform-crash.html |
+ |
+ * svg/SVGTextElement.cpp: |
+ (WebCore::SVGTextElement::animatedLocalTransform): Added a check for null renderer, and do not check |
+ for style transform if there is no renderer. |
+ |
+2012-03-27 Nikolas Zimmermann <nzimmermann@rim.com> |
+ |
+ Enable animVal support for SVGAnimatedPreserveAspectRatio |
+ https://bugs.webkit.org/show_bug.cgi?id=82326 |
+ |
+ Reviewed by Zoltan Herczeg. |
+ |
+ Enable animVal support for SVGAnimatedPreserveAspectRatio. Very simple now that everything is prepared. |
+ All we have to do is add startAnimValAnimation/etc. methods to SVGAnimatedPreserveAspectRatioAnimator. |
+ |
+ Modernize SVGPreserveAspectRatio, align parsing this object from String, with the other SVG DOM primitives, |
+ who supply a "void parse(const String&)" method, for this task. |
+ |
+ Extended existing tests to cover this. |
+ |
+ * svg/SVGAnimatedPreserveAspectRatio.cpp: |
+ (WebCore::SVGAnimatedPreserveAspectRatioAnimator::constructFromString): |
+ (WebCore::SVGAnimatedPreserveAspectRatioAnimator::startAnimValAnimation): |
+ (WebCore::SVGAnimatedPreserveAspectRatioAnimator::stopAnimValAnimation): |
+ (WebCore::SVGAnimatedPreserveAspectRatioAnimator::resetAnimValToBaseVal): |
+ (WebCore::SVGAnimatedPreserveAspectRatioAnimator::animValWillChange): |
+ (WebCore::SVGAnimatedPreserveAspectRatioAnimator::animValDidChange): |
+ * svg/SVGAnimatedPreserveAspectRatio.h: |
+ (SVGAnimatedPreserveAspectRatioAnimator): |
+ * svg/SVGAnimatedType.cpp: |
+ (WebCore::SVGAnimatedType::valueAsString): |
+ (WebCore::SVGAnimatedType::setValueAsString): |
+ (WebCore::SVGAnimatedType::supportsAnimVal): |
+ * svg/SVGFEImageElement.cpp: |
+ (WebCore::SVGFEImageElement::parseAttribute): |
+ * svg/SVGFitToViewBox.cpp: |
+ (WebCore::SVGFitToViewBox::parseAttribute): |
+ * svg/SVGImageElement.cpp: |
+ (WebCore::SVGImageElement::parseAttribute): |
+ * svg/SVGPreserveAspectRatio.cpp: |
+ (WebCore::SVGPreserveAspectRatio::parse): |
+ (WebCore): |
+ * svg/SVGPreserveAspectRatio.h: |
+ (SVGPreserveAspectRatio): |
+ * svg/SVGViewSpec.cpp: |
+ (WebCore::SVGViewSpec::setPreserveAspectRatioString): |
+ (WebCore::SVGViewSpec::parseViewSpec): |
+ |
+2012-03-28 Pavel Feldman <pfeldman@chromium.org> |
+ |
+ Web Inspector: [v8] inspection of CanvasPixelArray is slow. |
+ https://bugs.webkit.org/show_bug.cgi?id=82455 |
+ |
+ Reviewed by Vsevolod Vlasov. |
+ |
+ Added CanvasPixelArray to the list of classes that we consider |
+ arrays. |
+ |
+ * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: |
+ (WebCore::V8InjectedScriptHost::typeCallback): |
+ |
+2012-03-28 Leandro Gracia Gil <leandrogracia@chromium.org> |
+ |
+ Selectively retrieve text content around a given position. |
+ https://bugs.webkit.org/show_bug.cgi?id=78361 |
+ |
+ Reviewed by Ryosuke Niwa. |
+ |
+ Tests: a new layout test will be introduced once the required WebKit API code is ready. |
+ |
+ Introduce the DOMTextContentWalker class to selectively retrieve content |
+ around a given VisiblePosition into a string in such a way that a text |
+ Range can be extracted later from a pair of the string's positions. |
+ |
+ A new boolean called m_shouldStop is also introduced in the TextIterator to force |
+ it advancing under certain conditions. Although this is usually done by setting |
+ m_positionNode to zero, it can't be applied in this case since by doing so the |
+ iterator's range is lost. |
+ |
+ * WebCore.gypi: |
+ * editing/SurroundingText.cpp: Added. |
+ (WebCore): |
+ (WebCore::SurroundingText::SurroundingText): |
+ (WebCore::SurroundingText::rangeFromContentOffsets): |
+ (WebCore::SurroundingText::content): |
+ (WebCore::SurroundingText::positionOffsetInContent): |
+ * editing/SurroundingText.h: Added. |
+ (WebCore): |
+ (SurroundingText): |
+ * editing/TextIterator.cpp: |
+ (WebCore::TextIterator::TextIterator): |
+ (WebCore::TextIterator::advance): |
+ (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator): |
+ (WebCore::SimplifiedBackwardsTextIterator::advance): |
+ * editing/TextIterator.h: |
+ (WebCore::TextIterator::atEnd): |
+ (TextIterator): |
+ (WebCore::SimplifiedBackwardsTextIterator::atEnd): |
+ (SimplifiedBackwardsTextIterator): |
+ * html/HTMLFormControlElement.cpp: |
+ (WebCore::HTMLFormControlElement::enclosingFormControlElement): |
+ (WebCore): |
+ * html/HTMLFormControlElement.h: |
+ (HTMLFormControlElement): |
+ |
+2012-03-28 Alexis Menard <alexis.menard@openbossa.org> |
+ |
+ Speed up updates of existing CSS properties from JS. |
+ https://bugs.webkit.org/show_bug.cgi?id=82235 |
+ |
+ Reviewed by Andreas Kling. |
+ |
+ Improve the way we handle updating an existing CSS property by replacing its value |
+ by the new one rather than removing the old value and then adding the new one. This |
+ speed up by 35% PerformanceTests/CSS/CSSPropertyUpdateValue.html. |
+ |
+ No new tests : Updating existing tests that were relying on the order of the properties |
+ after modification. Each updated property is not appended to the list of properties of the |
+ style therefore the cssText value is slightly different. It matches Firefox behavior but not |
+ Opera. |
+ |
+ * css/StylePropertySet.cpp: |
+ (WebCore::StylePropertySet::addParsedProperty): |
+ |
+2012-03-28 Leo Yang <leo.yang@torchmobile.com.cn> |
+ |
+ [BlackBerry] Remove PlatformMouseEvent::setClickCount for BlackBerry |
+ https://bugs.webkit.org/show_bug.cgi?id=82422 |
+ |
+ Reviewed by Rob Buis. |
+ |
+ PlatformMouseEvent::setClickCount() is never used by BlackBerry. |
+ The declaration was added in PlatformMouseEvent.h internally for |
+ BlackBerry porting, but it has not been upstreamed yet. |
+ |
+ * platform/blackberry/PlatformMouseEventBlackBerry.cpp: |
+ |
+2012-03-27 Antti Koivisto <antti@apple.com> |
+ |
+ Separate @import rules from other rules in CSSStyleSheet |
+ https://bugs.webkit.org/show_bug.cgi?id=82384 |
+ |
+ Reviewed by Andreas Kling. |
+ |
+ Import rules always come before all other rules (except @charset). They currently live |
+ in the generic child rule vector. They can be moved to a vector of their own for stronger |
+ typing and more focused traversal. This will also make future refactoring easier. |
+ |
+ - @import rules go to m_importRules |
+ - the rest go to m_childRules |
+ |
+ * css/CSSStyleSelector.cpp: |
+ (WebCore::CSSStyleSelector::collectMatchingRulesForList): |
+ * css/CSSStyleSheet.cpp: |
+ (WebCore::CSSStyleSheet::parserAppendRule): |
+ (WebCore::CSSStyleSheet::length): |
+ (WebCore::CSSStyleSheet::item): |
+ (WebCore::CSSStyleSheet::clearRules): |
+ (WebCore::CSSStyleSheet::rules): |
+ (WebCore::CSSStyleSheet::insertRule): |
+ (WebCore::CSSStyleSheet::deleteRule): |
+ (WebCore::CSSStyleSheet::isLoading): |
+ (WebCore::CSSStyleSheet::addSubresourceStyleURLs): |
+ * css/CSSStyleSheet.h: |
+ (WebCore): |
+ (CSSStyleSheet): |
+ (WebCore::CSSStyleSheet::childRules): |
+ (WebCore::CSSStyleSheet::importRules): |
+ |
+2012-03-28 Pavel Feldman <pfeldman@chromium.org> |
+ |
+ Web Inspector: REGRESSION: Stack overflow on the page with > 100kloc |
+ https://bugs.webkit.org/show_bug.cgi?id=82436 |
+ |
+ Reviewed by Yury Semikhatsky. |
+ |
+ This change migrates to manual splice implementation that uses additional |
+ information about the range being inserted to make it work faster / allocate |
+ less memory. |
+ |
+ * inspector/front-end/TextEditorModel.js: |
+ (WebInspector.TextEditorModel.endsWithBracketRegex.): |
+ |
+2012-03-28 Pavel Podivilov <podivilov@chromium.org> |
+ |
+ Web Inspector: breakpoints are not shown in sidebar pane after reload. |
+ https://bugs.webkit.org/show_bug.cgi?id=82351 |
+ |
+ Reviewed by Pavel Feldman. |
+ |
+ When UISourceCode is added to ScriptsPanel, it could already have breakpoints. |
+ We should iterate over existing breakpoints and add them to sidebar pane. |
+ |
+ * inspector/front-end/ScriptsPanel.js: |
+ (WebInspector.ScriptsPanel.prototype._uiSourceCodeAdded): |
+ |
+2012-03-28 Li Yin <li.yin@intel.com> |
+ |
+ [WebSocket]The Sec-WebSocket-Protocol must not appear more than once in an HTTP response |
+ https://bugs.webkit.org/show_bug.cgi?id=82432 |
+ |
+ Reviewed by Kent Tamura. |
+ |
+ From RFC6455: http://tools.ietf.org/html/rfc6455#section-11.3.4 |
+ The |Sec-WebSocket-Protocol| header field must not appear |
+ more than once in an HTTP response. |
+ |
+ Test: http/tests/websocket/tests/hybi/handshake-fail-by-more-protocol-header.html |
+ |
+ * Modules/websockets/WebSocketHandshake.cpp: |
+ (WebCore::WebSocketHandshake::readHTTPHeaders): |
+ |
2012-03-27 James Robinson <jamesr@chromium.org> |
[chromium] Transfer wheel fling via WebCompositorInputHandlerClient |