Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(278)

Unified Diff: Source/WebCore/ChangeLog

Issue 7696019: Merge 93441 - REGRESSION(r91628): 3 canvas tests crash on Chromium Linux and one test fail on Chr... (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/835/
Patch Set: Created 9 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
Download patch
« no previous file with comments | « no previous file | Source/WebCore/platform/graphics/BitmapImage.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/WebCore/ChangeLog
===================================================================
--- Source/WebCore/ChangeLog (revision 93492)
+++ Source/WebCore/ChangeLog (working copy)
@@ -1,3 +1,8970 @@
+2011-08-19 James Robinson <jamesr@chromium.org>
+
+ REGRESSION(r91628): 3 canvas tests crash on Chromium Linux and one test fail on Chromium Mac
+ https://bugs.webkit.org/show_bug.cgi?id=65063
+
+ Reviewed by Darin Fisher.
+
+ Fixes crashes due to a bad cast from Image to BitmapImage on skia ports
+ that use BitmapImageSingleFrameSkia. In the skia port
+ Image::isBitmapImage() returning true does not necessarily mean that
+ Image is of type BitmapImage.
+
+ Covered by fast/canvas/canvas-as-image.html and many other canvas
+ tests.
+
+ Patch originally by Tom Hudson.
+
+ * platform/graphics/BitmapImage.h:
+ (WebCore::BitmapImage::currentFrameHasAlpha):
+ (WebCore::BitmapImage::notSolidColor):
+ * platform/graphics/Image.cpp:
+ (WebCore::Image::drawTiled):
+ * platform/graphics/Image.h:
+ (WebCore::Image::currentFrameHasAlpha):
+ (WebCore::Image::notSolidColor):
+ * platform/graphics/skia/BitmapImageSingleFrameSkia.h:
+ (WebCore::BitmapImageSingleFrameSkia::currentFrameHasAlpha):
+ (WebCore::BitmapImageSingleFrameSkia::notSolidColor):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::backgroundIsObscured):
+
+2011-08-19 Emil A Eklund <eae@chromium.org>
+
+ Switch clipping for svg to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66586
+
+ Reviewed by Eric Seidel.
+
+ No new tests as no new functionality.
+
+ * rendering/svg/RenderSVGForeignObject.h:
+ * rendering/svg/RenderSVGGradientStop.h:
+ (WebCore::RenderSVGGradientStop::clippedOverflowRectForRepaint):
+ * rendering/svg/RenderSVGHiddenContainer.h:
+ (WebCore::RenderSVGHiddenContainer::clippedOverflowRectForRepaint):
+ * rendering/svg/RenderSVGInline.cpp:
+ (WebCore::RenderSVGInline::clippedOverflowRectForRepaint):
+ (WebCore::RenderSVGInline::computeRectForRepaint):
+ * rendering/svg/RenderSVGInline.h:
+ * rendering/svg/RenderSVGModelObject.cpp:
+ (WebCore::RenderSVGModelObject::clippedOverflowRectForRepaint):
+ (WebCore::RenderSVGModelObject::computeRectForRepaint):
+ * rendering/svg/RenderSVGModelObject.h:
+ * rendering/svg/RenderSVGText.cpp:
+ (WebCore::RenderSVGText::clippedOverflowRectForRepaint):
+ (WebCore::RenderSVGText::computeRectForRepaint):
+ * rendering/svg/RenderSVGText.h:
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::localCoordinateSpaceTransform):
+ * svg/SVGSVGElement.h:
+ (WebCore::SVGSVGElement::setContainerSize):
+ (WebCore::SVGSVGElement::containerSize):
+ * svg/graphics/SVGImage.cpp:
+ (WebCore::SVGImageChromeClient::invalidateContentsAndWindow):
+ (WebCore::SVGImage::setContainerSize):
+ * svg/graphics/SVGImage.h:
+
+2011-08-19 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r93425.
+ http://trac.webkit.org/changeset/93425
+ https://bugs.webkit.org/show_bug.cgi?id=66591
+
+ "The newly-added ASSERT is being triggered on several bots"
+ (Requested by jchaffraix on #webkit).
+
+ * html/HTMLLinkElement.cpp:
+ (WebCore::HTMLLinkElement::HTMLLinkElement):
+ (WebCore::HTMLLinkElement::setDisabled):
+ (WebCore::HTMLLinkElement::sheetLoaded):
+ (WebCore::HTMLLinkElement::disabled):
+ * html/HTMLLinkElement.h:
+ (WebCore::HTMLLinkElement::isEnabledViaScript):
+
+2011-08-18 Adrienne Walker <enne@google.com>
+
+ [chromium] Refactor updateCompositorResources to take an explicit GraphicsContext3D
+ https://bugs.webkit.org/show_bug.cgi?id=66432
+
+ Reviewed by James Robinson.
+
+ Covered by existing tests.
+
+ * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
+ (WebCore::Canvas2DLayerChromium::updateCompositorResources):
+ * platform/graphics/chromium/Canvas2DLayerChromium.h:
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::updateCompositorResources):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::updateCompositorResources):
+ * platform/graphics/chromium/TiledLayerChromium.cpp:
+ (WebCore::TiledLayerChromium::updateCompositorResources):
+ * platform/graphics/chromium/TiledLayerChromium.h:
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::updateCompositorResources):
+ * platform/graphics/chromium/VideoLayerChromium.h:
+ * platform/graphics/chromium/WebGLLayerChromium.cpp:
+ (WebCore::WebGLLayerChromium::updateCompositorResources):
+ * platform/graphics/chromium/WebGLLayerChromium.h:
+
+2011-08-19 Victoria Kirst <vrk@chromium.org>
+
+ Tell media player to prepareToPlay() at end of HTMLMediaElement::load()
+ https://bugs.webkit.org/show_bug.cgi?id=66414
+
+ Reviewed by Eric Carlson.
+
+ Test: media/video-load-preload-none.html
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::load):
+
+2011-08-19 Emil A Eklund <eae@chromium.org>
+
+ Switch RenderBlock to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66502
+
+ Reviewed by Eric Seidel.
+
+ Convert RenderBlock to new layout abstraction. Leave m_lineHight as a 30
+ bit int for now to avoid unnecessarily increasing the memory usage.
+
+ No new tests as no new functionality.
+
+ * rendering/RenderBlock.cpp:
+ * rendering/RenderBlock.h:
+
+2011-08-19 Emil A Eklund <eae@chromium.org>
+
+ Switch RenderBoxModelObject to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66534
+
+ Reviewed by Eric Seidel.
+
+ Convert RenderBoxModelObject to new layout abstraction.
+
+ No new tests as no new functionality.
+
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::ImageQualityController::set):
+ (WebCore::ImageQualityController::shouldPaintAtLowQuality):
+ (WebCore::RenderBoxModelObject::shouldPaintAtLowQuality):
+ (WebCore::backgroundRectAdjustedForBleedAvoidance):
+ (WebCore::RenderBoxModelObject::paintFillLayerExtended):
+ (WebCore::RenderBoxModelObject::calculateFillTileSize):
+ (WebCore::RenderBoxModelObject::BackgroundImageGeometry::useFixedAttachment):
+ (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
+ (WebCore::RenderBoxModelObject::paintNinePieceImage):
+ (WebCore::borderWillArcInnerEdge):
+ (WebCore::RenderBoxModelObject::paintOneBorderSide):
+ (WebCore::RenderBoxModelObject::paintBorderSides):
+ (WebCore::RenderBoxModelObject::paintBorder):
+ (WebCore::RenderBoxModelObject::drawBoxSideFromPath):
+ (WebCore::RenderBoxModelObject::clipBorderSidePolygon):
+ (WebCore::areaCastingShadowInHole):
+ (WebCore::RenderBoxModelObject::paintBoxShadow):
+ (WebCore::RenderBoxModelObject::containingBlockLogicalWidthForContent):
+ * rendering/RenderBoxModelObject.h:
+
+2011-08-19 Mihnea Ovidenie <mihnea@adobe.com>
+
+ [CSSRegions]Speed up RenderFlowThread repaint of regions
+ https://bugs.webkit.org/show_bug.cgi?id=66566
+
+ Reviewed by David Hyatt.
+
+ When in printing or the repaint rectangle is empty, there is no need to iterate
+ the render flow regions in order to repaint.
+ Covered by existing tests.
+
+ * rendering/RenderFlowThread.cpp:
+ (WebCore::RenderFlowThread::shouldRepaint):
+ (WebCore::RenderFlowThread::repaintRectangleInRegions):
+ * rendering/RenderFlowThread.h:
+
+2011-08-19 Mihnea Ovidenie <mihnea@adobe.com>
+
+ [CSSRegions]Parse -webkit-region-break(after, before, inside)
+ https://bugs.webkit.org/show_bug.cgi?id=66559
+
+ Reviewed by David Hyatt.
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSMutableStyleDeclaration.cpp:
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSPropertyNames.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::regionBreakBefore):
+ (WebCore::InheritedFlags::regionBreakInside):
+ (WebCore::InheritedFlags::regionBreakAfter):
+ (WebCore::InheritedFlags::setRegionBreakBefore):
+ (WebCore::InheritedFlags::setRegionBreakInside):
+ (WebCore::InheritedFlags::setRegionBreakAfter):
+ * rendering/style/StyleRareNonInheritedData.cpp:
+ (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
+ (WebCore::StyleRareNonInheritedData::operator==):
+ * rendering/style/StyleRareNonInheritedData.h:
+
+2011-08-19 Emil A Eklund <eae@chromium.org>
+
+ Switch RenderLayer to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66507
+
+ Reviewed by Eric Seidel.
+
+ Convert RenderLayer to new layout abstraction.
+
+ No new tests as no new functionality.
+
+ * rendering/LayoutTypes.h:
+ (WebCore::flooredLayoutSize):
+ * rendering/RenderLayer.cpp:
+ * rendering/RenderLayer.h:
+ * rendering/RenderLayerBacking.cpp:
+ * rendering/RenderLayerBacking.h:
+ * rendering/RenderLayerCompositor.cpp:
+ * rendering/RenderLayerCompositor.h:
+
+2011-08-19 Mihnea Ovidenie <mihnea@adobe.com>
+
+ [CSSRegions]Content displayed in regions should not be scrollable
+ https://bugs.webkit.org/show_bug.cgi?id=66459
+
+ Reviewed by Darin Adler.
+
+ Initially, when creating the style for the RenderFlowThread, overflowX and overflowY were both set to hidden,
+ so that RenderView did not display scrollbars when a RenderFlowThread exists. However, this allowed the possibility
+ of scrolling the content displayed in region.
+
+ Now, the RenderFlowThread objects are ignored in RenderBlock::insertPositionedObject and the style of the RenderFlowThread
+ can be set to visible, thus preventing scrolling of the content displayed in regions.
+
+ Test: fast/regions/content-flowed-into-regions-no-scroll.html
+
+ * rendering/RenderFlowThread.cpp:
+ (WebCore::RenderFlowThread::createFlowThreadStyle):
+
+2011-08-19 Julien Chaffraix <jchaffraix@webkit.org>
+
+ REGRESSION (r84327-r84329): CSS stylesheets fail to load on www.flagstar.com login page
+ https://bugs.webkit.org/show_bug.cgi?id=65140
+ <rdar://problem/9835905>
+
+ Reviewed by Antti Koivisto.
+
+ Tests: fast/css/stylesheet-enable-first-alternate-on-load.html
+ fast/css/stylesheet-enable-first-alternate.html
+ fast/css/stylesheet-enable-second-alternate-on-load.html
+ fast/css/stylesheet-enable-second-alternate.html
+ http/tests/css/link-css-disabled-value-with-slow-loading-sheet-in-error.html
+ http/tests/css/link-css-disabled-value-with-slow-loading-sheet.html
+
+ The gist of the issue is that we were ignoring calls to HTMLLinkElement::setDisabled that would enable a
+ style sheet when we were loading a stylesheet (m_sheet was 0 and thus ignored the call per the spec).
+
+ FF goes against the CSS OM spec in this case and always keep an associated sheet as long as 'rel' hints
+ at a stylesheet link and href is present. Instead of siding with FF, I continued to follow the
+ specification and store the enabled via javascript state into m_scriptState (renamed from
+ m_isEnabledViaScript). This information gets merged back into the style sheet disabled state when it is
+ available.
+
+ While debugging the case at hand, I found some cases that were not properly handled and were fixed as
+ part of this change.
+
+ * html/HTMLLinkElement.cpp:
+ (WebCore::HTMLLinkElement::HTMLLinkElement): Updated after m_isEnabledViaScript rename.
+ (WebCore::HTMLLinkElement::setDisabled): Always call setIsEnabledViaScript so that
+ the information is properly stored (either for recalcStyleSelector or just to store
+ the state during loading).
+
+ (WebCore::HTMLLinkElement::sheetLoaded): Merge back the state from m_scriptState to
+ the sheet's disabled state.
+
+ (WebCore::HTMLLinkElement::disabled): Account for the temporary state and return the
+ right value. It matches FF and what people would expect.
+
+ (WebCore::HTMLLinkElement::areDisabledAndScriptStatesConsistent): Debug only method
+ that checks that disabled() and isEnabledViaScript() are consistent with each other
+ (under some circumstances).
+
+ * html/HTMLLinkElement.h:
+ (WebCore::HTMLLinkElement::isEnabledViaScript): Updated after m_isEnabledViaScript rename.
+ (WebCore::HTMLLinkElement::setIsEnabledViaScript): Added setter.
+
+2011-08-17 Adrienne Walker <enne@google.com>
+
+ [chromium] Split tiler into main thread / compositor thread versions
+ https://bugs.webkit.org/show_bug.cgi?id=66065
+
+ Reviewed by James Robinson.
+
+ Covered by existing tests.
+
+ LayerTilerChromium is renamed to be CCLayerTilingData. Invalidation
+ and paint functionality is pushed into TiledLayerChromium and drawing
+ with GL is pushed into CCTiledLayerImpl. During tree synchronization,
+ the tiler properties and texture IDs are synchronized into
+ CCTiledLayerImpl.
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::paintContentsIfDirty):
+ (WebCore::ContentLayerChromium::createTextureUpdaterIfNeeded):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::paintContentsIfDirty):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::bestTextureFormat):
+ (WebCore::LayerRendererChromium::initializeSharedObjects):
+ (WebCore::LayerRendererChromium::tilerProgram):
+ (WebCore::LayerRendererChromium::tilerProgramSwizzle):
+ (WebCore::LayerRendererChromium::tilerProgramAA):
+ (WebCore::LayerRendererChromium::tilerProgramSwizzleAA):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/LayerTextureUpdater.h:
+ * platform/graphics/chromium/LayerTilerChromium.cpp: Removed.
+ * platform/graphics/chromium/ManagedTexture.h:
+ (WebCore::ManagedTexture::textureId):
+ * platform/graphics/chromium/TiledLayerChromium.cpp:
+ (WebCore::UpdatableTile::UpdatableTile):
+ (WebCore::UpdatableTile::texture):
+ (WebCore::UpdatableTile::dirty):
+ (WebCore::UpdatableTile::clearDirty):
+ (WebCore::TiledLayerChromium::TiledLayerChromium):
+ (WebCore::TiledLayerChromium::cleanupResources):
+ (WebCore::TiledLayerChromium::drawsContent):
+ (WebCore::TiledLayerChromium::createTilerIfNeeded):
+ (WebCore::TiledLayerChromium::updateCompositorResources):
+ (WebCore::TiledLayerChromium::pushPropertiesTo):
+ (WebCore::TiledLayerChromium::dumpLayerProperties):
+ (WebCore::TiledLayerChromium::textureManager):
+ (WebCore::TiledLayerChromium::tileAt):
+ (WebCore::TiledLayerChromium::createTile):
+ (WebCore::TiledLayerChromium::invalidateTiles):
+ (WebCore::TiledLayerChromium::invalidateRect):
+ (WebCore::TiledLayerChromium::protectVisibleTileTextures):
+ (WebCore::TiledLayerChromium::protectTileTextures):
+ (WebCore::TiledLayerChromium::prepareToUpdate):
+ * platform/graphics/chromium/TiledLayerChromium.h:
+ * platform/graphics/chromium/cc/CCLayerTilingData.cpp: Added.
+ (WebCore::CCLayerTilingData::create):
+ (WebCore::CCLayerTilingData::CCLayerTilingData):
+ (WebCore::CCLayerTilingData::setTileSize):
+ (WebCore::CCLayerTilingData::operator=):
+ (WebCore::CCLayerTilingData::addTile):
+ (WebCore::CCLayerTilingData::takeTile):
+ (WebCore::CCLayerTilingData::tileAt):
+ (WebCore::CCLayerTilingData::reset):
+ (WebCore::CCLayerTilingData::contentRectToTileIndices):
+ (WebCore::CCLayerTilingData::contentRectToLayerRect):
+ (WebCore::CCLayerTilingData::layerRectToContentRect):
+ (WebCore::CCLayerTilingData::tileContentRect):
+ (WebCore::CCLayerTilingData::tileLayerRect):
+ (WebCore::CCLayerTilingData::setLayerPosition):
+ (WebCore::CCLayerTilingData::growLayerToContain):
+ * platform/graphics/chromium/cc/CCLayerTilingData.h: Renamed from Source/WebCore/platform/graphics/chromium/LayerTilerChromium.h.
+ (WebCore::CCLayerTilingData::numTiles):
+ (WebCore::CCLayerTilingData::numTilesX):
+ (WebCore::CCLayerTilingData::numTilesY):
+ (WebCore::CCLayerTilingData::tileBounds):
+ (WebCore::CCLayerTilingData::textureOffset):
+ (WebCore::CCLayerTilingData::tileSize):
+ (WebCore::CCLayerTilingData::hasBorderTexels):
+ (WebCore::CCLayerTilingData::isEmpty):
+ (WebCore::CCLayerTilingData::Tile::Tile):
+ (WebCore::CCLayerTilingData::Tile::i):
+ (WebCore::CCLayerTilingData::Tile::j):
+ (WebCore::CCLayerTilingData::Tile::moveTo):
+ (WebCore::CCLayerTilingData::TileMapKeyTraits::emptyValue):
+ (WebCore::CCLayerTilingData::TileMapKeyTraits::constructDeletedValue):
+ (WebCore::CCLayerTilingData::TileMapKeyTraits::isDeletedValue):
+ (WebCore::CCLayerTilingData::tiles):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
+ (WebCore::DrawableTile::DrawableTile):
+ (WebCore::DrawableTile::textureId):
+ (WebCore::DrawableTile::setTextureId):
+ (WebCore::CCTiledLayerImpl::CCTiledLayerImpl):
+ (WebCore::CCTiledLayerImpl::bindContentsTexture):
+ (WebCore::CCTiledLayerImpl::tileAt):
+ (WebCore::CCTiledLayerImpl::createTile):
+ (WebCore::CCTiledLayerImpl::draw):
+ (WebCore::CCTiledLayerImpl::setTilingData):
+ (WebCore::CCTiledLayerImpl::syncTextureId):
+ (WebCore::isCCW):
+ (WebCore::computeEdge):
+ (WebCore::intersect):
+ (WebCore::CCTiledLayerImpl::drawTiles):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
+ (WebCore::CCTiledLayerImpl::setSkipsDraw):
+ (WebCore::CCTiledLayerImpl::setTextureOrientation):
+ (WebCore::CCTiledLayerImpl::setSampledTexelFormat):
+ * platform/graphics/gpu/TilingData.h:
+
+2011-08-19 Dan Bernstein <mitz@apple.com>
+
+ Better build fix after r93384.
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::LineBreaker::nextLineBreak): Use WTF::Unicode wrapper instead of ICU.
+
+2011-08-19 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: update scope variables upon value changes via console.
+ https://bugs.webkit.org/show_bug.cgi?id=54720
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame):
+
+2011-08-18 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: extract breakpoint management code to a separate class and add tests.
+ https://bugs.webkit.org/show_bug.cgi?id=66224
+
+ Reviewed by Pavel Feldman.
+
+ Test: inspector/debugger/breakpoint-manager.html
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/BreakpointManager.js: Added.
+ (WebInspector.BreakpointManager):
+ (WebInspector.BreakpointManager.prototype.uiSourceCodeAdded):
+ (WebInspector.BreakpointManager.prototype.breakpointsForUISourceCode):
+ (WebInspector.BreakpointManager.prototype.setBreakpoint):
+ (WebInspector.BreakpointManager.prototype.removeBreakpoint):
+ (WebInspector.BreakpointManager.prototype._materializeBreakpoint):
+ (WebInspector.BreakpointManager.prototype._breakpointDebuggerLocationChanged):
+ (WebInspector.BreakpointManager.prototype._addBreakpointToUI):
+ (WebInspector.BreakpointManager.prototype._deleteBreakpointFromUI):
+ (WebInspector.BreakpointManager.prototype._moveBreakpointInUI):
+ (WebInspector.BreakpointManager.prototype._breakpoints):
+ (WebInspector.BreakpointManager.prototype._breakpoint):
+ (WebInspector.BreakpointManager.prototype._forEachBreakpoint):
+ (WebInspector.BreakpointManager.prototype._setBreakpointInDebugger):
+ (WebInspector.BreakpointManager.prototype._removeBreakpointFromDebugger):
+ (WebInspector.BreakpointManager.prototype._breakpointResolved):
+ (WebInspector.BreakpointManager.prototype.serializeBreakpoints):
+ (WebInspector.BreakpointManager.prototype.reset):
+ (WebInspector.BreakpointManager.prototype.debuggerReset):
+ (WebInspector.Breakpoint):
+ (WebInspector.Breakpoint.prototype.serialize):
+ (WebInspector.Breakpoint.deserialize):
+ * inspector/front-end/DebuggerModel.js:
+ (WebInspector.DebuggerModel.prototype.setBreakpointByScriptLocation):
+ * inspector/front-end/SourceFile.js:
+ (WebInspector.RawSourceCode.prototype.get rawSourceCode):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.html:
+
+2011-08-19 Adam Roben <aroben@apple.com>
+
+ Fix typo
+
+ * dom/DOMAllInOne.cpp:
+
+2011-08-19 Adam Roben <aroben@apple.com>
+
+ Windows build fix after r93385
+
+ * dom/DOMAllInOne.cpp: Added EventDispatcMediator.cpp.
+
+2011-08-19 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: getAttributes should work on a single node, not array.
+ https://bugs.webkit.org/show_bug.cgi?id=66544
+
+ Reviewed by Adam Roben.
+
+ * inspector/Inspector.json:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::getAttributes):
+ * inspector/InspectorDOMAgent.h:
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMAgent.prototype._loadNodeAttributes):
+
+2011-08-19 Anton Muhin <antonm@chromium.org>
+
+ [v8] CSS wrapper objects retention
+ https://bugs.webkit.org/show_bug.cgi?id=66377
+
+ Reviewed by Pavel Feldman.
+
+ Disable object grouping for CSS object wrappers.
+ This logic leads to hard to debug use-after-free problems.
+
+ * bindings/v8/V8GCController.cpp:
+ (WebCore::GrouperVisitor::visitDOMWrapper):
+
+2011-08-19 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: introduce NodeId inherited from integer in the DOM domain description.
+ https://bugs.webkit.org/show_bug.cgi?id=66491
+
+ Drive-by rename of couple of DOM domain protocol methods.
+
+ Reviewed by Adam Roben.
+
+ * inspector/Inspector.json:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::requestChildNodes):
+ (WebCore::InspectorDOMAgent::getAttributes):
+ (WebCore::InspectorDOMAgent::requestNode):
+ (WebCore::InspectorDOMAgent::buildObjectForNode):
+ * inspector/InspectorDOMAgent.h:
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMNode):
+ (WebInspector.DOMNode.prototype.getChildNodes):
+ (WebInspector.DOMAgent.prototype.pushNodeToFrontend):
+ (WebInspector.DOMAgent.prototype._loadNodeAttributes):
+ (WebInspector.DOMAgent.prototype._setDocument):
+ (WebInspector.DOMAgent.prototype._setDetachedRoot):
+ * inspector/generate-inspector-idl:
+
+2011-08-19 Jochen Eisinger <jochen@chromium.org>
+
+ IDBSQLiteBackingStore::deleteObjectStore should maintain referential integrity.
+ https://bugs.webkit.org/show_bug.cgi?id=66470
+
+ Reviewed by Tony Gentilcore.
+
+ * storage/IDBSQLiteBackingStore.cpp:
+ (WebCore::IDBSQLiteBackingStore::deleteObjectStore):
+
+2011-08-19 Takashi Toyoshima <toyoshim@chromium.org>
+
+ [WebSocket] CloseEvent's code and reason properties support.
+ https://bugs.webkit.org/show_bug.cgi?id=66362
+
+ Reviewed by Kent Tamura.
+
+ Current WebSocket implementation miss code and reason properties
+ in CloseEvent. This change expose incoming closing frame's code
+ and reason to JavaScript API.
+
+ Tests: http/tests/websocket/tests/hybi/close-code-and-reason.html
+ http/tests/websocket/tests/hybi/workers/close-code-and-reason.html
+
+ * websockets/CloseEvent.h:
+ (WebCore::CloseEvent::initCloseEvent):
+ (WebCore::CloseEvent::code):
+ (WebCore::CloseEvent::reason):
+ (WebCore::CloseEvent::CloseEvent):
+ * websockets/CloseEvent.idl:
+ Add code and reason properies.
+ * websockets/ThreadableWebSocketChannelClientWrapper.cpp:
+ (WebCore::ThreadableWebSocketChannelClientWrapper::didClose):
+ (WebCore::ThreadableWebSocketChannelClientWrapper::didCloseCallback):
+ * websockets/ThreadableWebSocketChannelClientWrapper.h:
+ * websockets/WebSocket.cpp:
+ (WebCore::WebSocket::didConnect):
+ (WebCore::WebSocket::didClose):
+ * websockets/WebSocket.h:
+ Add implement to handle code and reason.
+ * websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::WebSocketChannel):
+ (WebCore::WebSocketChannel::didCloseSocketStream):
+ (WebCore::WebSocketChannel::processFrame):
+ * websockets/WebSocketChannel.h:
+ Add closing frame payload parser.
+ * websockets/WebSocketChannelClient.h:
+ (WebCore::WebSocketChannelClient::didClose):
+ * websockets/WorkerThreadableWebSocketChannel.cpp:
+ (WebCore::workerContextDidClose):
+ (WebCore::WorkerThreadableWebSocketChannel::Peer::didClose):
+ * websockets/WorkerThreadableWebSocketChannel.h:
+ Add implement to handle code and reason.
+
+2011-08-19 MORITA Hajime <morrita@google.com>
+
+ Spell-checking doesn't recognize word boundaries on contests inserted by execCommand('insertHTML')
+ https://bugs.webkit.org/show_bug.cgi?id=65902
+
+ Reviewed by Ryosuke Niwa.
+
+ markMisspellingsAndBadGrammar() was using markSpelling() and markBadGrammar().
+ But these are low-level API and caller should take care of word boundary.
+ This change replaced these call with overloaded version of markMisspellingsAndBadGrammar(),
+ which handles word boundary correctly.
+
+ Test: editing/spelling/spelling-insert-html.html
+
+ * WebCore.exp.in:
+ * editing/Editor.cpp:
+ (WebCore::Editor::markMisspellingsAndBadGrammar):
+ * testing/Internals.cpp:
+ (WebCore::Internals::markerCountOf): Added.
+ (WebCore::Internals::markedRangeAt): Added.
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2011-08-19 Nayan Kumar K <nayankk@motorola.com>
+
+ Run-time error fix in WebKit-GTK with video support disabled.
+ https://bugs.webkit.org/show_bug.cgi?id=66541
+
+ Definition of the function extraFullScreenStyleSheet() in webkit-gtk
+ lies outside ENABLE(VIDEO) guard, resulting in runtime error while
+ trying to launch GtkLauncher with video support disabled.
+
+ Reviewed by Philippe Normand.
+
+ Run-time error fix. No test cases were added.
+
+ * platform/gtk/RenderThemeGtk.h:
+
+2011-08-19 Shinya Kawanaka <shinyak@google.com>
+
+ input[maxlength=0] should ignore text input.
+ https://bugs.webkit.org/show_bug.cgi?id=65497
+
+ Reviewed by Kent Tamura.
+
+ Changed the valid range of maxlength.
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::parseMaxLengthAttribute):
+ Changed maxlength check condition.
+
+2011-08-19 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Web Inspector: backend js api: an ability to skip optional arguments in the middle of the argument list is required.
+ https://bugs.webkit.org/show_bug.cgi?id=66482
+
+ There are functions in the API with multiple optional arguments.
+ When we call it we have to specify an optional argument as 'undefined' if we want to pass non default value for the next one.
+ This can be solved with passing the arguments as an object.
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/front-end/RemoteObject.js:
+
+2011-08-19 Zoltan Horvath <zoltan@webkit.org>
+
+ [Qt] Build fix after r93384.
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::LineBreaker::nextLineBreak):
+
+2011-08-18 Shawn Singh <shawnsingh@chromium.org>
+
+ Computing screen-space transform for LayerChromium and CCLayerImpl
+ https://bugs.webkit.org/show_bug.cgi?id=66114
+
+ Added a data member to LayerChromium and CCLayerImpl that holds
+ the screen-space transform. The transform is computed in
+ calculateDrawTransformsAndVisibility(), which is used during
+ updating (LayerChromium) and drawing (CCLayerImpl).
+
+ Also fixed a FIXME in LayerRendererChromium::drawLayer, which
+ was not computing the entire hierarchy of transforms to determine
+ back-face visibility. Now it simply uses the world space transform.
+
+ Reviewed by James Robinson.
+
+ Test: compositing/backface-visibility-hierarchical-transform.html
+
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::screenSpaceTransform):
+ (WebCore::LayerChromium::setScreenSpaceTransform):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::updateLayers):
+ (WebCore::LayerRendererChromium::drawLayersInternal):
+ (WebCore::LayerRendererChromium::drawLayer):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ (WebCore::CCLayerImpl::screenSpaceTransform):
+ (WebCore::CCLayerImpl::setScreenSpaceTransform):
+
+2011-08-18 Ben Wells <benwells@chromium.org>
+
+ [skia] -webkit-transform breaks -webkit-mask
+ https://bugs.webkit.org/show_bug.cgi?id=66442
+
+ The problem here is that in RenderBox::paintMaskImages, if we are in
+ a transform with a rotation, scale or skew we set the composite mode to
+ be DestinationIn and then create a transparency layer, then paint the
+ mask with SourceOver and end the transparency layer. (The normal case
+ is just to use DestinationIn to paint the mask.)
+
+ In skia when we create transparency layers we don't pass on the composite
+ mode, so when we end the transparency layer it is composited back using
+ SourceOver. The fix is to pass on the composite mode when creating
+ transparency layers in skia.
+
+ Reviewed by Stephen White.
+
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::beginTransparencyLayer):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::getXfermodeMode):
+ * platform/graphics/skia/PlatformContextSkia.h:
+
+2011-08-18 Hayato Ito <hayato@chromium.org>
+
+ Isolate EventDispatchMediator into a separate file.
+ https://bugs.webkit.org/show_bug.cgi?id=66458
+
+ Reviewed by Ryosuke Niwa.
+
+ Extracted EventDispatchMediator.h and EventDispatchMediator.cpp
+ out of Event.h and Event.cpp Also moved FocusEventDispatchMediator
+ and BlurEventDispatchMediator from Event.{h|cpp} to
+ EventDispatchMediator.{h|cpp}.
+
+ No new tests since this is just refactoring.
+
+ * CMakeLists.txt:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/Event.cpp:
+ * dom/Event.h:
+ * dom/EventDispatchMediator.cpp: Added.
+ (WebCore::EventDispatchMediator::create):
+ (WebCore::EventDispatchMediator::EventDispatchMediator):
+ (WebCore::EventDispatchMediator::dispatchEvent):
+ (WebCore::FocusEventDispatchMediator::create):
+ (WebCore::FocusEventDispatchMediator::FocusEventDispatchMediator):
+ (WebCore::FocusEventDispatchMediator::dispatchEvent):
+ (WebCore::BlurEventDispatchMediator::create):
+ (WebCore::BlurEventDispatchMediator::BlurEventDispatchMediator):
+ (WebCore::BlurEventDispatchMediator::dispatchEvent):
+ * dom/EventDispatchMediator.h: Added.
+ (WebCore::EventDispatchMediator::~EventDispatchMediator):
+ (WebCore::EventDispatchMediator::event):
+ (WebCore::EventDispatchMediator::EventDispatchMediator):
+ (WebCore::EventDispatchMediator::setEvent):
+ * dom/EventDispatcher.cpp:
+ * dom/KeyboardEvent.h:
+ * dom/MouseEvent.h:
+ * dom/Node.cpp:
+ * dom/ScopedEventQueue.cpp:
+ * dom/UIEvent.h:
+ * dom/WheelEvent.h:
+
+2011-08-18 Dan Bernstein <mitz@apple.com>
+
+ Mid-word break can occur between a character and a combining mark
+ https://bugs.webkit.org/show_bug.cgi?id=66529
+
+ Reviewed by Simon Fraser.
+
+ No test added because I could not find a combining mark with a non-zero advance in
+ any of the system fonts and tests fonts.
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::LineBreaker::nextLineBreak): Disallow a mid-word break before a
+ combining mark.
+
+2011-08-18 Kent Tamura <tkent@chromium.org>
+
+ REGRESSION(r90971): Null pointer dereference with placeholder and webkit-scrollbar-corner
+ https://bugs.webkit.org/show_bug.cgi?id=66453
+
+ Reviewed by Simon Fraser.
+
+ Test: fast/forms/placeholder-crash-with-scrollbar-corner.html
+
+ * rendering/RenderObjectChildList.cpp:
+ (WebCore::RenderObjectChildList::removeChildNode): Add a NULL check for owner's layer.
+
+2011-08-18 Jeffrey Pfau <jpfau@apple.com>
+
+ New XML parser: scripting support
+ https://bugs.webkit.org/show_bug.cgi?id=66406
+
+ Reviewed by Adam Barth.
+
+ * xml/parser/NewXMLDocumentParser.cpp:
+ (WebCore::NewXMLDocumentParser::NewXMLDocumentParser):
+ (WebCore::NewXMLDocumentParser::resumeParsing):
+ (WebCore::NewXMLDocumentParser::processScript):
+ (WebCore::NewXMLDocumentParser::append): Add support for pausing the parsing
+ (WebCore::NewXMLDocumentParser::finish): Add support for pausing the parsing
+ (WebCore::NewXMLDocumentParser::notifyFinished):
+ * xml/parser/NewXMLDocumentParser.h:
+ (WebCore::NewXMLDocumentParser::pauseParsing):
+ * xml/parser/XMLTreeBuilder.cpp: Add a shared function between self-closing and end tags
+ (WebCore::XMLTreeBuilder::closeElement): Registers scripts and pops the stack
+ (WebCore::XMLTreeBuilder::processStartTag):
+ (WebCore::XMLTreeBuilder::processEndTag):
+ * xml/parser/XMLTreeBuilder.h:
+
+2011-08-18 Mark Hahnenberg <mhahnenberg@apple.com>
+
+ Move allocation in constructors into separate constructorBody() methods
+ https://bugs.webkit.org/show_bug.cgi?id=66265
+
+ Reviewed by Oliver Hunt.
+
+ No new tests.
+
+ Refactoring to put all allocations that need to be done after the object's
+ initialization list has executed but before the object is ready for use
+ into a separate constructorBody() method. This method is still called by the constructor,
+ so the patch doesn't resolve any potential issues, it's just to set up the code for further refactoring.
+
+ * bridge/objc/ObjCRuntimeObject.h:
+ (JSC::Bindings::ObjCRuntimeObject::create):
+ * bridge/objc/ObjCRuntimeObject.mm:
+ * bridge/objc/objc_instance.mm:
+ (ObjCRuntimeMethod::create):
+ (ObjCRuntimeMethod::ObjCRuntimeMethod):
+ * bridge/runtime_array.cpp:
+ * bridge/runtime_array.h:
+ (JSC::RuntimeArray::create):
+
+2011-08-18 Beth Dakin <bdakin@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=66495
+ Lion-specific scroller SPIs can use forward declaration instead of
+ WebKitSystemInterface
+
+ Reviewed by Sam Weinig.
+
+ * WebCore.exp.in:
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/mac/NSScrollerImpDetails.h: Added.
+ * platform/mac/ScrollAnimatorMac.h:
+ * platform/mac/ScrollAnimatorMac.mm:
+ (-[ScrollbarPainterControllerDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]):
+ (-[ScrollbarPainterControllerDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]):
+ (-[ScrollbarPartAnimation initWithScrollbarPainter:part:WebCore::scrollAnimator:WebCore::animateAlphaTo:duration:]):
+ (-[ScrollbarPartAnimation setCurrentProgress:]):
+ (-[ScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
+ (-[ScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
+ (-[ScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
+ (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
+ (WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
+ (WebCore::ScrollAnimatorMac::notifyPositionChanged):
+ (WebCore::ScrollAnimatorMac::contentAreaWillPaint):
+ (WebCore::ScrollAnimatorMac::mouseEnteredContentArea):
+ (WebCore::ScrollAnimatorMac::mouseExitedContentArea):
+ (WebCore::ScrollAnimatorMac::mouseMovedInContentArea):
+ (WebCore::ScrollAnimatorMac::willStartLiveResize):
+ (WebCore::ScrollAnimatorMac::contentsResized):
+ (WebCore::ScrollAnimatorMac::willEndLiveResize):
+ (WebCore::ScrollAnimatorMac::contentAreaDidShow):
+ (WebCore::ScrollAnimatorMac::contentAreaDidHide):
+ (WebCore::ScrollAnimatorMac::didBeginScrollGesture):
+ (WebCore::ScrollAnimatorMac::didEndScrollGesture):
+ (WebCore::ScrollAnimatorMac::didAddVerticalScrollbar):
+ (WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar):
+ (WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar):
+ (WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar):
+ (WebCore::ScrollAnimatorMac::updateScrollerStyle):
+ (WebCore::ScrollAnimatorMac::initialScrollbarPaintTimerFired):
+ * platform/mac/ScrollbarThemeMac.h:
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::registerScrollbar):
+ (WebCore::ScrollbarThemeMac::scrollbarThickness):
+ (WebCore::ScrollbarThemeMac::usesOverlayScrollbars):
+ (WebCore::ScrollbarThemeMac::updateScrollbarOverlayStyle):
+ (WebCore::ScrollbarThemeMac::hasThumb):
+ (WebCore::ScrollbarThemeMac::minimumThumbLength):
+ (WebCore::ScrollbarThemeMac::updateEnabledState):
+ (WebCore::scrollbarPainterPaint):
+ (WebCore::ScrollbarThemeMac::paint):
+ * platform/mac/WebCoreSystemInterface.h:
+ * platform/mac/WebCoreSystemInterface.mm:
+
+2011-08-18 Dan Bernstein <mitz@apple.com>
+
+ <rdar://problem/9973194> Fonts that specify a positive descender value are treated as having descenders ending above the baseline
+ https://bugs.webkit.org/show_bug.cgi?id=66515
+
+ Reviewed by Darin Adler.
+
+ No test because none of the system fonts and test fonts have an incorrectly-specified descender value.
+
+ * platform/graphics/mac/SimpleFontDataMac.mm:
+ (WebCore::SimpleFontData::platformInit): If the font specifies a positive descender, assume that it meant
+ the same amount, but negative. This is consistent with what Core Text does.
+
+2011-08-18 Ryosuke Niwa <rniwa@webkit.org>
+
+ positionForPoint returns wrong VisiblePosition at bidi boundaries
+ https://bugs.webkit.org/show_bug.cgi?id=65356
+
+ Reviewed by David Hyatt.
+
+ The bug was caused by RenderText::positionForPoint's assuming that the position will always reside
+ inside the inline box that contains the point, which is not true at the boundaries of bidi-runs.
+
+ For example, in aDC12BAb where AB12CD is a RTL text, the offset on the right of A is 7 even though
+ the inline box for "BA" only contains offsets 1, 2, and 3. We must traverse the bidi-run "DC12BA"
+ until the end to obtain the offset 7 from the inline box for "DC".
+
+ Fixed the bug by introducing createVisiblePositionAfterAdjustingOffsetForBiDi which traverses runs
+ on the left or the right of the position to compute the appropriate offset following the NSTextView convention.
+
+ This patch also fixes a regression from r74971 that caret is placed incorrectly between inline boxes of
+ LTR or RTL text in a RTL or LTR block respectively.
+
+ Test: editing/selection/caret-at-bidi-boundary.html
+
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::offsetForPosition):
+ * rendering/RenderText.cpp:
+ (WebCore::lineDirectionPointFitsInBox): Takes ShouldAffinityBeDownstream instead of EAfinity.
+ (WebCore::createVisiblePositionForBox):
+ (WebCore::createVisiblePositionAfterAdjustingOffsetForBiDi):
+ (WebCore::RenderText::positionForPoint):
+
+2011-08-18 Xiaomei Ji <xji@chromium.org>
+
+ --webkit-visual-word renaming right/leftWordPositionAcrossBoundary
+ https://bugs.webkit.org/show_bug.cgi?id=66436
+
+ Reviewed by Ryosuke Niwa.
+
+ Rename them to right/leftWordPositionIgnoringEditingBoundary.
+
+ * editing/visible_units.cpp:
+ (WebCore::leftWordPositionIgnoringEditingBoundary):
+ (WebCore::rightWordPositionIgnoringEditingBoundary):
+ (WebCore::leftWordPosition):
+ (WebCore::rightWordPosition):
+
+2011-08-18 Jeff Miller <jeffm@apple.com>
+
+ Soft link against AVFoundationCF and CoreMedia
+ https://bugs.webkit.org/show_bug.cgi?id=65725
+
+ Add new macros to SoftLinking.h to support soft-linking to functions and variables decorated with __declspec(dllimport),
+ and use them to soft-link to AVFoundationCF and CoreMedia. I verified that the WebProcess doesn't load these DLLs
+ until a media element is used.
+
+ Reviewed by Eric Carlson.
+
+ No new tests as no change in functionality.
+
+ * WebCore.vcproj/WebCore.vcproj: Added AVFoundationCFSoftLinking.h and CoreMediaSoftLinking.h.
+ * WebCore.vcproj/WebCoreMediaQT.vsprops: Removed DelayLoadDLLs linker option which is no longer needed.
+ * platform/graphics/avfoundation/cf/AVFoundationCFSoftLinking.h: Added.
+ * platform/graphics/avfoundation/cf/CoreMediaSoftLinking.h: Added.
+ * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp: Stop linking against AVFoundationCF.lib and CoreMedia.lib and include AVFoundationCFSoftLinking.h and CoreMediaSoftLinking.h.
+ * platform/win/SoftLinking.h: Added SOFT_LINK_DLL_IMPORT() and SOFT_LINK_VARIABLE_DLL_IMPORT() macros.
+
+2011-08-18 Sailesh Agrawal <sail@chromium.org>
+
+ Chromium Mac: Show scrollbar when doing search
+ https://bugs.webkit.org/show_bug.cgi?id=66209
+
+ Reviewed by James Robinson.
+
+ Updated the Lion scrollbar drawing code to force the scrollbar to be visible when we have tickmarks for search results.
+
+ No tests because there are no Mac 10.7 chromium bots yet.
+
+ * platform/chromium/ScrollbarThemeChromiumMac.h:
+ * platform/chromium/ScrollbarThemeChromiumMac.mm:
+ (WebCore::ScrollbarThemeChromiumMac::paint):
+ (WebCore::ScrollbarThemeChromiumMac::paintTickmarks):
+
+2011-08-18 James Robinson <jamesr@chromium.org>
+
+ [chromium] Draw the root/"non-composited content" in compositor side
+ https://bugs.webkit.org/show_bug.cgi?id=58834
+
+ Reviewed by Kenneth Russell.
+
+ Handle the root or non-composited content with a GraphicsLayer rather than special case logic in
+ LayerRendererChromium. This layer's client is the NonCompositedContentHost, which routes the paint callbacks
+ through the LayerPainterChromium interface out to the WebView. The root layer is special in two ways:
+ *) The root layer has a scroll offset, which changes how the visibleLayerRect maps to content space and applies a
+ draw-time transform.
+ *) The root layer masks the alpha channel and disable blending when drawing because of concerns about subpixel
+ AA trashing the alpha channel. The root layer is always opaque so this is fine.
+ *) The root layer does not have border texels and does have subpixel AA for text.
+
+ Covered by compositing/
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::paintContentsIfDirty):
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::paintContentsIfDirty):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::pushPropertiesTo):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::scrollPosition):
+ (WebCore::LayerChromium::setScrollPosition):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::initialize):
+ (WebCore::LayerRendererChromium::releaseTextures):
+ (WebCore::LayerRendererChromium::viewportChanged):
+ (WebCore::LayerRendererChromium::updateLayers):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::drawLayersInternal):
+ (WebCore::LayerRendererChromium::getFramebufferPixels):
+ (WebCore::LayerRendererChromium::cleanupSharedObjects):
+ (WebCore::LayerRendererChromium::layerTreeAsText):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::rootLayer):
+ (WebCore::LayerRendererChromium::viewportSize):
+ (WebCore::LayerRendererChromium::viewportWidth):
+ (WebCore::LayerRendererChromium::viewportHeight):
+ * platform/graphics/chromium/NonCompositedContentHost.cpp: Added.
+ (WebCore::NonCompositedContentHost::NonCompositedContentHost):
+ (WebCore::NonCompositedContentHost::~NonCompositedContentHost):
+ (WebCore::NonCompositedContentHost::invalidateRect):
+ (WebCore::NonCompositedContentHost::invalidateEntireLayer):
+ (WebCore::NonCompositedContentHost::setScrollPosition):
+ (WebCore::NonCompositedContentHost::notifyAnimationStarted):
+ (WebCore::NonCompositedContentHost::notifySyncRequired):
+ (WebCore::NonCompositedContentHost::paintContents):
+ (WebCore::NonCompositedContentHost::showDebugBorders):
+ (WebCore::NonCompositedContentHost::showRepaintCounter):
+ * platform/graphics/chromium/NonCompositedContentHost.h: Added.
+ (WebCore::NonCompositedContentHost::create):
+ (WebCore::NonCompositedContentHost::graphicsLayer):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
+ (WebCore::CCHeadsUpDisplay::draw):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ (WebCore::CCLayerImpl::scrollPosition):
+ (WebCore::CCLayerImpl::setScrollPosition):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::initialize):
+ (WebCore::CCLayerTreeHost::invalidateRootLayerRect):
+ (WebCore::CCLayerTreeHost::setRootLayer):
+ (WebCore::CCLayerTreeHost::setViewport):
+ (WebCore::CCLayerTreeHost::reallocateRenderer):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ (WebCore::CCLayerTreeHost::rootLayer):
+ (WebCore::CCLayerTreeHost::viewportSize):
+
+2011-08-18 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r93354.
+ http://trac.webkit.org/changeset/93354
+ https://bugs.webkit.org/show_bug.cgi?id=66503
+
+ "consensus was not reached" (Requested by senorblanco on
+ #webkit).
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::drawImage):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::drawNativeImage):
+
+2011-08-18 Sadrul Habib Chowdhury <sadrul@chromium.org>
+
+ GestureRecognizer: Update how gesture-scroll works.
+
+ Instead of just sending a series of 'GestureUpdate' events, send a
+ single 'GestureBegin' event, followed by a series of 'GestureUpdate' events,
+ and end with a 'GestureEnd' event.
+ https://bugs.webkit.org/show_bug.cgi?id=66267
+
+ Reviewed by Adam Barth.
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handleGestureEvent):
+ * platform/chromium/GestureRecognizerChromium.cpp:
+ (WebCore::InnerGestureRecognizer::InnerGestureRecognizer):
+ (WebCore::InnerGestureRecognizer::appendScrollGestureBegin):
+ (WebCore::InnerGestureRecognizer::appendScrollGestureEnd):
+ (WebCore::InnerGestureRecognizer::appendScrollGestureUpdate):
+ (WebCore::scrollEnd):
+ (WebCore::isClickOrScroll):
+ (WebCore::inScroll):
+ * platform/chromium/GestureRecognizerChromium.h:
+ (WebCore::InnerGestureRecognizer::firstTouchPosition):
+
+2011-08-18 Sailesh Agrawal <sail@chromium.org>
+
+ Chromium: Update forked ScrollbarThemeChromiumMac.mm
+ https://bugs.webkit.org/show_bug.cgi?id=65555
+
+ Reviewed by James Robinson.
+
+ Merge recent changes to ScrollbarThemeMac.mm to ScrollbarThemeChromiumMac.mm.
+
+ * platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.h:
+ * platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.mm:
+ (wkScrollbarPainterSetEnabled):
+ * platform/chromium/ScrollbarThemeChromiumMac.h:
+ (WebCore::ScrollbarThemeChromiumMac::maxOverlapBetweenPages):
+ * platform/chromium/ScrollbarThemeChromiumMac.mm:
+ (WebCore::ScrollbarThemeChromiumMac::registerScrollbar):
+ (WebCore::ScrollbarThemeChromiumMac::setNewPainterForScrollbar):
+ (WebCore::toScrollbarPainterKnobStyle):
+ (WebCore::ScrollbarThemeChromiumMac::updateScrollbarOverlayStyle):
+ (WebCore::ScrollbarThemeChromiumMac::updateEnabledState):
+ (WebCore::ScrollbarThemeChromiumMac::paint):
+
+2011-08-18 Justin Novosad <junov@chromium.org>
+
+ Unwarranted DOM Exception when when canvas2D drawImage is called with src
+ rect out of bounds
+ https://bugs.webkit.org/show_bug.cgi?id=65709
+
+ Reviewed by Stephen White.
+
+ Test: fast/canvas/drawImage-clipped-source.html
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::drawImage):
+ Removed the unnecessary dom exceptions for out of bounds source rectangles
+ The overloads that receive video and image elements as source images
+ now use the normalized versions of the source rectangle, which
+ GraphicsContext (and its various platform flavors) can handle correctly.
+ The normalized rectangle is the equivalent rectangle with width and height
+ greater than 0. The canvas version of this method, which had better layout
+ test coverage, was already correctly using the normalized rectangle. The
+ newly added layout test verifies correct behavior with negative
+ source rectangle dimensions.
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::drawNativeImage):
+ Fixed algorithm that adjusts the destination rectangle to match the clipping
+ applied to the source rect. The case of scaled filtered images with source
+ rectangles that overlap the edge of the image was not being handled
+ correctly. This use case was previously unsupported and used to trigger
+ a DOM exception.
+
+2011-08-18 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r93329.
+ http://trac.webkit.org/changeset/93329
+ https://bugs.webkit.org/show_bug.cgi?id=66497
+
+ Turned text on chromium win blue (Requested by jamesr_ on
+ #webkit).
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerTextureUpdater::prepareToUpdate):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::LayerChromium):
+ (WebCore::LayerChromium::pushPropertiesTo):
+ (WebCore::LayerChromium::dumpLayerProperties):
+ * platform/graphics/chromium/LayerChromium.h:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::initialize):
+ (WebCore::LayerRendererChromium::releaseTextures):
+ (WebCore::LayerRendererChromium::updateRootLayerContents):
+ (WebCore::LayerRendererChromium::drawRootLayer):
+ (WebCore::LayerRendererChromium::invalidateRootLayerRect):
+ (WebCore::LayerRendererChromium::rootLayerChanged):
+ (WebCore::LayerRendererChromium::viewportChanged):
+ (WebCore::LayerRendererChromium::updateLayers):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::paintLayerContents):
+ (WebCore::LayerRendererChromium::drawLayersInternal):
+ (WebCore::LayerRendererChromium::getFramebufferPixels):
+ (WebCore::LayerRendererChromium::cleanupSharedObjects):
+ (WebCore::LayerRendererChromium::layerTreeAsText):
+ (WebCore::LayerRendererChromium::dumpRenderSurfaces):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::rootLayer):
+ * platform/graphics/chromium/NonCompositedContentHost.cpp: Removed.
+ * platform/graphics/chromium/NonCompositedContentHost.h: Removed.
+ * platform/graphics/chromium/RenderSurfaceChromium.cpp:
+ (WebCore::RenderSurfaceChromium::dumpSurface):
+ * platform/graphics/chromium/TiledLayerChromium.cpp:
+ (WebCore::TiledLayerChromium::createTilerIfNeeded):
+ (WebCore::TiledLayerChromium::tilingTransform):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
+ (WebCore::CCHeadsUpDisplay::draw):
+ * platform/graphics/chromium/cc/CCLayerImpl.cpp:
+ (WebCore::CCLayerImpl::CCLayerImpl):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::initialize):
+ (WebCore::CCLayerTreeHost::createRootLayerPainter):
+ (WebCore::CCLayerTreeHost::invalidateRootLayerRect):
+ (WebCore::CCLayerTreeHost::setRootLayer):
+ (WebCore::CCLayerTreeHost::setViewport):
+ (WebCore::CCLayerTreeHost::reallocateRenderer):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ (WebCore::CCLayerTreeHost::rootLayer):
+ (WebCore::CCLayerTreeHost::viewportContentRect):
+ (WebCore::CCLayerTreeHost::viewportScrollPosition):
+ (WebCore::CCLayerTreeHost::viewportVisibleRect):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
+ (WebCore::CCTiledLayerImpl::draw):
+
+2011-08-18 Ryosuke Niwa <rniwa@webkit.org>
+
+ SimplifiedBackwardsTextIterator returns incorrect offset with first-letter rule
+ https://bugs.webkit.org/show_bug.cgi?id=66086
+
+ Reviewed by Darin Adler.
+
+ The bug was caused by SimplifiedBackwardsTextIterator's not taking care of first-letter at all.
+ Fixing the bug by detecting RenderTextFragment in handleTextNode.
+
+ Also added m_shouldHandleFirstLetter to SimplifiedBackwardsTextIterator to keep track of whether or not
+ the next call to handleTextNode needs to process the first-letter part of the text fragment.
+
+ Test: editing/text-iterator/backward-textiterator-first-letter-crash.html
+
+ * editing/TextIterator.cpp:
+ (WebCore::firstRenderTextInFirstLetter): Extracted from handleTextNodeFirstLetter.
+ (WebCore::TextIterator::handleTextNodeFirstLetter): Calls firstRenderTextInFirstLetter.
+ (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
+ (WebCore::SimplifiedBackwardsTextIterator::handleTextNode):
+ (WebCore::SimplifiedBackwardsTextIterator::handleFirstLetter): Added.
+ * editing/TextIterator.h:
+
+2011-08-18 Iain Merrick <husky@google.com>
+
+ [chromium] Assert that main thread and compositor thread are used safely
+ https://bugs.webkit.org/show_bug.cgi?id=66145
+
+ CCLayerTreeHostImplProxy now has public static methods isMainThread()
+ and isImplThread(), and we ASSERT these in various places. If threaded
+ compositing is disabled, we fake isImplThread() by setting a flag for
+ the duration of compositing, so the assert is still valid.
+
+ Reviewed by James Robinson.
+
+ Covered by existing tests.
+
+ * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
+ (WebCore::CCCanvasLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::doComposite):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.cpp:
+ (WebCore::CCLayerTreeHostImplProxy::postDrawLayersTaskOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::requestFrameAndCommitOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::isMainThread):
+ (WebCore::CCLayerTreeHostImplProxy::isImplThread):
+ (WebCore::CCLayerTreeHostImplProxy::setImplThread):
+ (WebCore::CCLayerTreeHostImplProxy::commitOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::drawLayersOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::setNeedsCommitAndRedrawOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::setNeedsRedrawOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::initImplOnCCThread):
+ (WebCore::CCLayerTreeHostImplProxy::layerTreeHostClosedOnCCThread):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.h:
+ * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
+ (WebCore::CCPluginLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
+ (WebCore::CCTiledLayerImpl::draw):
+ * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
+ (WebCore::CCVideoLayerImpl::draw):
+
+2011-08-18 Alexey Proskuryakov <ap@apple.com>
+
+ Regional indicator symbols that are combined should behave as a single character when editing
+ https://bugs.webkit.org/show_bug.cgi?id=65395
+
+ Reviewed by Dan Bernstein.
+
+ Part two: make cursor movement iterator work. This fixes the problem for strings that don't
+ contain more than two flags in a row, as fixing it completely doesn't seem possible with ICU.
+
+ Test: editing/selection/regional-indicators.html
+
+ * platform/text/TextBreakIteratorICU.cpp: (WebCore::cursorMovementIterator): Added custom
+ rules for regional indicator symbols.
+
+2011-08-18 Cary Clark <caryclark@google.com>
+
+ Fix rubber band gutter drawing for Skia on Chromium Mac
+ https://bugs.webkit.org/show_bug.cgi?id=66478
+
+ Reviewed by James Robinson.
+
+ No new tests. The Skia on Chromium Mac platform has
+ not been enabled.
+
+ This break was detected at compile time; there is no
+ behavior change.
+
+ * platform/chromium/ScrollbarThemeChromiumMac.mm:
+ (WebCore::ScrollbarThemeChromiumMac::ScrollbarThemeChromiumMac):
+ Convert the CGImage into an SkBitmap if Skia is present.
+
+2011-08-18 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Implement a faster path for painting tables with overflowing cells
+ https://bugs.webkit.org/show_bug.cgi?id=65491
+
+ This change introduces a smarter way of painting if the table is big enough and we have a small amount
+ of overflowing cells in the table. The new path does a binary search of the cells to repaint but adds
+ the overflowing cells to the repainting cells.
+
+ This saves ~50% when doing programmatic scrolling throught JS on a 500x100 table with some overflowing
+ cells. Also we cap the memory usage to a ratio of the total size of the table to avoid blowing up the
+ memory.
+
+ Reviewed by David Hyatt.
+
+ No new tests as the behavior should be the same.
+
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::RenderTableSection):
+ (WebCore::RenderTableSection::layoutRows): Added some code to accumulate the overflowing cells
+ in an internal HashSet (we don't need to keep them sorted and it makes it easier to use them during
+ painting). If we hit the cap, flip the boolean value and clear the HashSet as the slow path does not
+ care about the cell's information. Make sure that the "has overflowing cells" information is still
+ properly encoded on our 2 values.
+
+ (WebCore::compareCellPositionsWithOverflowingCells): Added this method as we are doing a more
+ complicated sort:
+ * the old path would sort one (mostly sorted) array by rows only as the stable sort would
+ take care of keeping the column ordering inside a row.
+ * the new path basically has to sort an unsorted array (taken partly from the HashSet).
+
+ (WebCore::RenderTableSection::paintObject): Tweaked the logic to account for difference between
+ m_forceSlowPaintPathWithOverflowingCell and has some overflowing cells. Also we make sure we don't
+ repaint the same cell twice.
+
+ (WebCore::RenderTableSection::nodeAtPoint): Changed to hasOverflowingCell(). We don't apply our
+ fast path optimization here.
+
+ * rendering/RenderTableSection.h: Transformed our original boolean into
+ a HashSet and a boolean. The HashSet holds up the CellStruct that are overflowing
+ until we reach the memory threshold. After this is hit, we just set the boolean
+ to avoid using too much memory.
+
+ (WebCore::RenderTableSection::hasOverflowingCell): This is the new way to determine
+ if we have any overflowing cell, used only for hit testing.
+
+2011-08-18 Kentaro Hara <haraken@google.com>
+
+ An EventSource constructor should throw TypeError, when the number of arguments is not enough.
+ https://bugs.webkit.org/show_bug.cgi?id=66454
+
+ Reviewed by Adam Barth.
+
+ The spec is here: http://www.w3.org/TR/WebIDL/#es-operations.
+
+ Test: fast/eventsource/eventsource-constructor.html
+
+ * bindings/js/JSEventSourceCustom.cpp:
+ (WebCore::JSEventSourceConstructor::constructJSEventSource): Changed SyntaxError to TypeError.
+ * bindings/v8/custom/V8EventSourceConstructor.cpp:
+ (WebCore::V8EventSource::constructorCallback): Changed SyntaxError to TypeError.
+
+2011-08-18 Kentaro Hara <haraken@google.com>
+
+ A SharedWorker constructor should throw TypeError, when the number of arguments is not enough.
+ https://bugs.webkit.org/show_bug.cgi?id=66455
+
+ Reviewed by Adam Barth.
+
+ The spec is here: http://www.w3.org/TR/WebIDL/#es-operations.
+
+ Test: fast/workers/shared-worker-constructor.html
+
+ * bindings/js/JSSharedWorkerCustom.cpp:
+ (WebCore::JSSharedWorkerConstructor::constructJSSharedWorker): Changed SyntaxError to TypeError.
+ * bindings/v8/custom/V8SharedWorkerCustom.cpp:
+ (WebCore::V8SharedWorker::constructorCallback): Changed SyntaxError to TypeError.
+
+2011-08-17 Alejandro G. Castro <alex@igalia.com>
+
+ [GTK] Fix compilation problems with deprecations in gtk+
+ https://bugs.webkit.org/show_bug.cgi?id=66073
+
+ Reviewed by Martin Robinson.
+
+ * platform/gtk/GtkAuthenticationDialog.cpp:
+ (WebCore::GtkAuthenticationDialog::GtkAuthenticationDialog): Added
+ gtk_box_new conditional compilation for gtk+-3.
+ * platform/gtk/RenderThemeGtk3.cpp:
+ (WebCore::RenderThemeGtk::adjustRepaintRect):
+ (WebCore::RenderThemeGtk::paintSliderTrack):
+ (WebCore::RenderThemeGtk::paintSliderThumb):
+ (WebCore::RenderThemeGtk::adjustSliderThumbSize): Now we have have
+ GTK_TYPE_SCALE in gtk+3.
+
+2011-08-18 Kentaro Hara <haraken@google.com>
+
+ A Worker constructor should throw TypeError, when the number of arguments is not enough
+ https://bugs.webkit.org/show_bug.cgi?id=66456
+
+ Reviewed by Adam Barth.
+
+ Spec is here: http://www.w3.org/TR/WebIDL/#es-operations.
+
+ Test: fast/workers/worker-constructor.html
+
+ * bindings/js/JSWorkerCustom.cpp:
+ (WebCore::JSWorkerConstructor::constructJSWorker): Changed SyntaxError to TypeError.
+ * bindings/v8/custom/V8WorkerCustom.cpp:
+ (WebCore::V8Worker::constructorCallback): Changed SyntaxError to TypeError.
+
+2011-08-18 John Bates <jbates@google.com>
+
+ Fix logic error causing reverse of desired WebGL rate limiting behavior
+ https://bugs.webkit.org/show_bug.cgi?id=66445
+
+ Reviewed by Kenneth Russell.
+
+ * platform/graphics/chromium/WebGLLayerChromium.cpp:
+ (WebCore::WebGLLayerChromium::setTextureUpdated):
+
+2011-08-18 Levi Weintraub <leviw@chromium.org>
+
+ Switch RenderTextControl* to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66250
+
+ Reviewed by Eric Seidel.
+
+ Convertikng the RenderTextControl* classes to use the LayoutUnit abstraction.
+
+ No new tests as no change in behavior.
+
+ * rendering/LayoutTypes.h:
+ (WebCore::layoutMod): Added a function to perform the modulo operation on LayoutUnits.
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::hitInnerTextElement):
+ * rendering/RenderTextControl.h:
+ * rendering/RenderTextControlMultiLine.cpp:
+ (WebCore::RenderTextControlMultiLine::preferredContentWidth):
+ (WebCore::RenderTextControlMultiLine::baselinePosition):
+ * rendering/RenderTextControlMultiLine.h:
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::layout):
+ (WebCore::RenderTextControlSingleLine::controlClipRect):
+ (WebCore::RenderTextControlSingleLine::preferredContentWidth):
+ (WebCore::RenderTextControlSingleLine::scrollWidth):
+ (WebCore::RenderTextControlSingleLine::scrollHeight):
+ (WebCore::RenderTextControlSingleLine::scrollLeft):
+ (WebCore::RenderTextControlSingleLine::scrollTop):
+ (WebCore::RenderTextControlSingleLine::setScrollLeft):
+ (WebCore::RenderTextControlSingleLine::setScrollTop):
+ * rendering/RenderTextControlSingleLine.h:
+
+2011-08-18 Levi Weintraub <leviw@chromium.org>
+
+ Switch Inline rendering classes to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66239
+
+ Reviewed by Eric Seidel.
+
+ Converting inline rendering classes to use the LayoutUnit abstraction from ints.
+
+ No new tests as no change in functionality.
+
+ * rendering/InlineBox.h:
+ (WebCore::InlineBox::logicalFrameRect):
+ (WebCore::InlineBox::baselinePosition):
+ (WebCore::InlineBox::lineHeight):
+ * rendering/InlineFlowBox.h:
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::logicalOverflowRect):
+ (WebCore::InlineTextBox::setLogicalOverflowRect):
+ (WebCore::InlineTextBox::baselinePosition):
+ (WebCore::InlineTextBox::lineHeight):
+ * rendering/InlineTextBox.h:
+ (WebCore::InlineTextBox::logicalTopVisualOverflow):
+ (WebCore::InlineTextBox::logicalBottomVisualOverflow):
+ (WebCore::InlineTextBox::logicalLeftVisualOverflow):
+ (WebCore::InlineTextBox::logicalRightVisualOverflow):
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::culledInlineAbsoluteRects):
+ (WebCore::computeMargin):
+ (WebCore::RenderInline::culledInlineBoundingBox):
+ (WebCore::RenderInline::culledInlineVisualOverflowBoundingBox):
+ (WebCore::RenderInline::linesVisualOverflowBoundingBox):
+ (WebCore::RenderInline::clippedOverflowRectForRepaint):
+ (WebCore::RenderInline::rectWithOutlineForRepaint):
+ (WebCore::RenderInline::computeRectForRepaint):
+ (WebCore::RenderInline::mapLocalToContainer):
+ (WebCore::RenderInline::lineHeight):
+ (WebCore::RenderInline::baselinePosition):
+ (WebCore::RenderInline::addDashboardRegions):
+ * rendering/RenderInline.h:
+
+2011-08-18 Jeffrey Pfau <jpfau@apple.com>
+
+ New XML parser: add doctype to DOM tree
+ https://bugs.webkit.org/show_bug.cgi?id=66408
+
+ Reviewed by Adam Barth.
+
+ * xml/parser/XMLTreeBuilder.cpp:
+ (WebCore::XMLTreeBuilder::processDOCTYPE):
+
+2011-08-18 James Robinson <jamesr@chromium.org>
+
+ [chromium] Draw the root/"non-composited content" in compositor side
+ https://bugs.webkit.org/show_bug.cgi?id=58834
+
+ Reviewed by Darin Fisher.
+
+ Handle the root or non-composited content with a GraphicsLayer rather than special case logic in
+ LayerRendererChromium. This layer's client is the NonCompositedContentHost, which routes the paint callbacks
+ through the LayerPainterChromium interface out to the WebView. The root layer is special in two ways:
+ *) The root layer has a scroll offset, which changes how the visibleLayerRect maps to content space and applies a
+ draw-time transform.
+ *) The root layer masks the alpha channel when drawing because of concerns about subpixel AA trashing the alpha
+ channel. The root layer is always opaque so this is fine.
+ *) The root layer does not have border texels and does have subpixel AA for text.
+
+ Covered by compositing/
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::paintContentsIfDirty):
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::paintContentsIfDirty):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::pushPropertiesTo):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::scrollPosition):
+ (WebCore::LayerChromium::setScrollPosition):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::initialize):
+ (WebCore::LayerRendererChromium::releaseTextures):
+ (WebCore::LayerRendererChromium::viewportChanged):
+ (WebCore::LayerRendererChromium::updateLayers):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::drawLayersInternal):
+ (WebCore::LayerRendererChromium::getFramebufferPixels):
+ (WebCore::LayerRendererChromium::cleanupSharedObjects):
+ (WebCore::LayerRendererChromium::layerTreeAsText):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::rootLayer):
+ (WebCore::LayerRendererChromium::viewportSize):
+ (WebCore::LayerRendererChromium::viewportWidth):
+ (WebCore::LayerRendererChromium::viewportHeight):
+ * platform/graphics/chromium/NonCompositedContentHost.cpp: Added.
+ (WebCore::NonCompositedContentHost::NonCompositedContentHost):
+ (WebCore::NonCompositedContentHost::~NonCompositedContentHost):
+ (WebCore::NonCompositedContentHost::invalidateRect):
+ (WebCore::NonCompositedContentHost::invalidateEntireLayer):
+ (WebCore::NonCompositedContentHost::setScrollPosition):
+ (WebCore::NonCompositedContentHost::notifyAnimationStarted):
+ (WebCore::NonCompositedContentHost::notifySyncRequired):
+ (WebCore::NonCompositedContentHost::paintContents):
+ (WebCore::NonCompositedContentHost::showDebugBorders):
+ (WebCore::NonCompositedContentHost::showRepaintCounter):
+ * platform/graphics/chromium/NonCompositedContentHost.h: Added.
+ (WebCore::NonCompositedContentHost::create):
+ (WebCore::NonCompositedContentHost::graphicsLayer):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
+ (WebCore::CCHeadsUpDisplay::draw):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ (WebCore::CCLayerImpl::scrollPosition):
+ (WebCore::CCLayerImpl::setScrollPosition):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::initialize):
+ (WebCore::CCLayerTreeHost::invalidateRootLayerRect):
+ (WebCore::CCLayerTreeHost::setRootLayer):
+ (WebCore::CCLayerTreeHost::setViewport):
+ (WebCore::CCLayerTreeHost::reallocateRenderer):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ (WebCore::CCLayerTreeHost::rootLayer):
+ (WebCore::CCLayerTreeHost::viewportSize):
+
+2011-08-18 Nico Weber <thakis@chromium.org>
+
+ Fix "missing return" gcc warning in ScrollAnimatorNone
+ https://bugs.webkit.org/show_bug.cgi?id=66480
+
+ Reviewed by Tony Chang.
+
+ * platform/ScrollAnimatorNone.cpp:
+ (WebCore::ScrollAnimatorNone::PerAxisData::curveAt):
+ (WebCore::ScrollAnimatorNone::PerAxisData::curveDerivativeAt):
+
+2011-08-18 James Simonsen <simonjam@chromium.org>
+
+ Revalidate expired resources if they're requested after the initial document load
+ https://bugs.webkit.org/show_bug.cgi?id=52153
+
+ Reviewed by Antti Koivisto.
+
+ Test: http/tests/cache/subresource-multiple-instances.html
+
+ * loader/cache/CachedResourceLoader.cpp:
+ (WebCore::CachedResourceLoader::determineRevalidationPolicy):
+
+2011-08-18 Anders Carlsson <andersca@apple.com>
+
+ Fix clang libc++ C++0x build
+ https://bugs.webkit.org/show_bug.cgi?id=66475
+
+ Reviewed by Adam Roben.
+
+ Remove calls to isnan and isfinite with integer arguments.
+
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::viewport):
+
+2011-08-18 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: [Extensions API] rename webInspector.resources to webInspector.network
+ https://bugs.webkit.org/show_bug.cgi?id=66460
+
+ Reviewed by Pavel Feldman.
+
+ Tests: http/tests/inspector/extensions-network-redirect.html
+ inspector/extensions/extensions-network.html
+
+ * inspector/front-end/ExtensionAPI.js:
+ (WebInspector.injectedExtensionAPI.InspectorExtensionAPI):
+ (WebInspector.injectedExtensionAPI.Network.requestDispatch):
+ (WebInspector.injectedExtensionAPI):
+ (WebInspector.injectedExtensionAPI.Network.prototype.getHAR):
+ (WebInspector.injectedExtensionAPI.defineDeprecatedProperty.getter):
+ (WebInspector.injectedExtensionAPI.defineDeprecatedProperty):
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer):
+ (WebInspector.ExtensionServer.prototype._inspectedURLChanged):
+ (WebInspector.ExtensionServer.prototype._notifyRequestFinished):
+ (WebInspector.ExtensionServer.prototype._onGetHAR):
+ (WebInspector.ExtensionServer.prototype._onGetResourceContent):
+ (WebInspector.ExtensionServer.prototype._requestId):
+ (WebInspector.ExtensionServer.prototype._requestById):
+ (WebInspector.ExtensionServer.prototype._onAddAuditCategory):
+ (WebInspector.ExtensionServer.prototype._onAddAuditResult):
+ (WebInspector.ExtensionServer.prototype._onStopAuditCategoryRun):
+ (WebInspector.ExtensionServer.prototype.initExtensions):
+ (WebInspector.ExtensionServer.prototype._onmessage):
+
+2011-08-18 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: extract content loading functions from RawSourceCode to ContentProvider implementations.
+ https://bugs.webkit.org/show_bug.cgi?id=66237
+
+ Reviewed by Pavel Feldman.
+
+ Test: inspector/debugger/content-providers.html
+
+ * inspector/front-end/SourceFile.js:
+ (WebInspector.RawSourceCode.prototype._loadResourceContent):
+ (WebInspector.RawSourceCode.prototype._loadScriptContent):
+ (WebInspector.RawSourceCode.prototype._loadAndConcatenateScriptsContent):
+ (WebInspector.ScriptContentProvider):
+ (WebInspector.ScriptContentProvider.prototype.requestContent):
+ (WebInspector.ConcatenatedScriptsContentProvider):
+ (WebInspector.ConcatenatedScriptsContentProvider.prototype.requestContent):
+ (WebInspector.ConcatenatedScriptsContentProvider.prototype._concatenateScriptsContent):
+ (WebInspector.ResourceContentProvider):
+ (WebInspector.ResourceContentProvider.prototype.requestContent):
+
+2011-08-18 Alexandru Chiculita <achicu@adobe.com>
+
+ [CSSRegions] RenderRegion should not reference a parent RenderFlowThread
+ https://bugs.webkit.org/show_bug.cgi?id=66142
+
+ Added code that checks the parent RenderFlowThread of a RenderRegion and creates
+ a dependency for its referenced RenderFlowThread (from CSS style).
+
+ There are two cases:
+ 1. A RenderRegion tries to display the flow thread that laid it out. In this case
+ the region will be ignored and will not participate in the flow threads regions list.
+ 2. A RenderRegion tries to display a flow thread that contains another region that
+ tries to display the first region's flow thread. This one can be generalized with any
+ number of intermediate flow threads. In this case the recursion is detected and only the
+ first added region will actually be selected. The other region will be ignored. However,
+ when the recursion is removed the invalid regions will be recovered.
+
+ Reviewed by David Hyatt.
+
+ Tests: fast/regions/flows-dependency-dynamic-remove.html
+ fast/regions/flows-dependency-same-flow.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::insertPositionedObject):
+ * rendering/RenderFlowThread.cpp:
+ (WebCore::RenderFlowThread::dependsOn):
+ (WebCore::RenderFlowThread::addRegionToThread):
+ (WebCore::RenderFlowThread::removeRegionFromThread):
+ (WebCore::RenderFlowThread::checkInvalidRegions):
+ (WebCore::RenderFlowThread::addDependencyOnFlowThread):
+ (WebCore::RenderFlowThread::removeDependencyOnFlowThread):
+ (WebCore::RenderFlowThread::pushDependencies):
+ (WebCore::RenderFlowThread::layout):
+ (WebCore::RenderFlowThread::computeLogicalWidth):
+ (WebCore::RenderFlowThread::computeLogicalHeight):
+ (WebCore::RenderFlowThread::repaintRectangleInRegions):
+ * rendering/RenderFlowThread.h:
+ * rendering/RenderObjectChildList.cpp:
+ (WebCore::RenderObjectChildList::removeChildNode):
+ (WebCore::RenderObjectChildList::appendChildNode):
+ * rendering/RenderRegion.cpp:
+ (WebCore::RenderRegion::RenderRegion):
+ (WebCore::RenderRegion::~RenderRegion):
+ (WebCore::RenderRegion::paintReplaced):
+ (WebCore::RenderRegion::nodeAtPoint):
+ (WebCore::RenderRegion::attachRegion):
+ (WebCore::RenderRegion::detachRegion):
+ * rendering/RenderRegion.h:
+ (WebCore::RenderRegion::parentFlowThread):
+ (WebCore::RenderRegion::isValid):
+ (WebCore::RenderRegion::setIsValid):
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::writeRenderFlowThreads):
+ (WebCore::writeLayers):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::RenderView):
+ (WebCore::RenderView::layout):
+ (WebCore::RenderView::renderFlowThreadWithName):
+ (WebCore::RenderView::layoutRenderFlowThreads):
+ * rendering/RenderView.h:
+ (WebCore::RenderView::hasRenderFlowThreads):
+ (WebCore::RenderView::isRenderFlowThreadOrderDirty):
+ (WebCore::RenderView::setIsRenderFlowThreadOrderDirty):
+ (WebCore::RenderView::renderFlowThreadList):
+
+2011-08-18 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: add UISourceCode class.
+ https://bugs.webkit.org/show_bug.cgi?id=66233
+
+ This is a next step towards splitting SourceFile into RawSourceCode and UISourceCode.
+ UISourceCode is a part of SourceFile's interface that is visible to ScriptsPanel.
+ UISourceCode represents a single entry in scripts panel's files select.
+
+ Reviewed by Pavel Feldman.
+
+ Test: inspector/debugger/ui-source-code.html
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/UISourceCode.js: Added.
+ (WebInspector.UISourceCode):
+ (WebInspector.UISourceCode.prototype.get id):
+ (WebInspector.UISourceCode.prototype.get url):
+ (WebInspector.UISourceCode.prototype.get isContentScript):
+ (WebInspector.UISourceCode.prototype.requestContent):
+ (WebInspector.UISourceCode.prototype._didRequestContent):
+ (WebInspector.ContentProvider):
+ (WebInspector.ContentProvider.prototype.requestContent):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.html:
+
+2011-08-17 Adam Roben <aroben@apple.com>
+
+ Make WebCore keep track of the current device scale factor
+
+ Fixes <http://webkit.org/b/66413> WebCore requires every WebKit port to keep track of the
+ device scale factor
+
+ Reviewed by Darin Adler.
+
+ * WebCore.exp.in: Removed Frame::deviceScaleFactorChanged, added Page::setDeviceScaleFactor.
+
+ * css/MediaQueryEvaluator.cpp:
+ (WebCore::device_pixel_ratioMediaFeatureEval):
+ * html/HTMLCanvasElement.cpp:
+ (WebCore::HTMLCanvasElement::HTMLCanvasElement):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::devicePixelRatio):
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::addDashboardRegions):
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::deviceScaleFactor):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::addDashboardRegions):
+ Changed to get the device scale factor from Page.
+
+ * loader/EmptyClients.h:
+ * page/Chrome.cpp:
+ * page/Chrome.h:
+ * page/ChromeClient.h:
+ Removed Chrome[Client]::deviceScaleFactor.
+
+ * page/Frame.cpp:
+ * page/Frame.h:
+ Removed deviceScaleFactorChanged. Made deviceOrPageScaleFactorChanged public.
+
+ * page/Page.cpp:
+ (WebCore::Page::Page): Initialize m_deviceScaleFactor.
+ (WebCore::Page::setDeviceScaleFactor): Added. Code came from
+ Frame::deviceScaleFactorChanged.
+
+ * page/Page.h: Added m_deviceScaleFactor.
+ (WebCore::Page::deviceScaleFactor): Added simple getter.
+
+2011-08-18 Darin Adler <darin@apple.com>
+
+ SVG and HTML editing have conflicting inline isWhitespace functions
+ https://bugs.webkit.org/show_bug.cgi?id=65145
+
+ Reviewed by Nikolas Zimmermann.
+
+ Renamed the SVG-specific whitespace functions to call it "SVG space"
+ rather than just "whitespace". An alternative would have been to put
+ the functions into an SVG namespace instead of the top level WebCore
+ namespace.
+
+ * svg/SVGAnimateMotionElement.cpp:
+ (WebCore::parsePoint): Call skipOptionalSVGSpaces.
+ * svg/SVGAnimationElement.cpp:
+ (WebCore::parseKeySplines): Ditto.
+ * svg/SVGFitToViewBox.cpp:
+ (WebCore::SVGFitToViewBox::parseViewBox): Ditto.
+ * svg/SVGLengthList.cpp:
+ (WebCore::SVGLengthList::parse): Call isSVGSpace and
+ skipOptionalSVGSpacesOrDelimiter.
+ * svg/SVGParserUtilities.cpp:
+ (WebCore::genericParseNumber): Call skipOptionalSVGSpacesOrDelimiter.
+ (WebCore::parseArcFlag): Ditto.
+ (WebCore::parseRect): Call skipOptionalSVGSpaces.
+ (WebCore::pointsListFromSVGData): Ditto.
+ (WebCore::parseGlyphName): Call skipOptionalSVGSpaces, isSVGSpace,
+ and skipOptionalSVGSpacesOrDelimiter.
+ (WebCore::parseDelimitedString): Call skipOptionalSVGSpaces.
+
+ * svg/SVGParserUtilities.h:
+ (WebCore::isSVGSpace): Renamed from isWhitespace. This better matches
+ the comment which specifically talks about SVG.
+ (WebCore::skipOptionalSVGSpaces): Renamed from skipOptionalSpaces.
+ (WebCore::skipOptionalSVGSpacesOrDelimiter): Renamed from
+ skipOptionalSVGSpacesOrDelimiter.
+
+ * svg/SVGPathStringSource.cpp:
+ (WebCore::SVGPathStringSource::moveToNextToken): Call skipOptionalSVGSpaces.
+ * svg/SVGPreserveAspectRatio.cpp:
+ (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio): Ditto.
+ * svg/SVGStringList.cpp:
+ (WebCore::SVGStringList::parse): Call isSVGSpace and
+ skipOptionalSVGSpacesOrDelimiter.
+ * svg/SVGTransformable.cpp:
+ (WebCore::parseTransformParamList): Call skipOptionalSVGSpaces and
+ skipOptionalSVGSpacesOrDelimiter.
+ (WebCore::SVGTransformable::parseTransformAttribute): Call skipOptionalSVGSpaces.
+
+2011-08-18 Gavin Peters <gavinp@chromium.org>
+
+ Prepare frames for history navigation.
+
+ Before beginning an explicit history navigation in a newly initialized
+ frame, it's important to give a "previous" item to avoid crashes, and
+ give a state to the state machine to avoid extra validating loads.
+
+ https://bugs.webkit.org/show_bug.cgi?id=66322
+
+ Reviewed by Darin Fisher.
+
+ No new tests, as history navigation is very difficult to test in
+ DumpRenderTree.
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::prepareForHistoryNavigation):
+ * loader/FrameLoader.h:
+
+2011-08-18 Jing Zhao <jingzhao@chromium.org>
+
+ When changing the size of a menulist from x (x>1) to 1, the first item should be selected.
+ https://bugs.webkit.org/show_bug.cgi?id=66282
+
+ Reviewed by Kent Tamura.
+
+ No new tests since it only changes the behavior in Android Browser.
+
+ * html/HTMLSelectElement.cpp:
+ (WebCore::HTMLSelectElement::parseMappedAttribute):
+
+2011-08-18 Adam Klein <adamk@chromium.org>
+
+ Handle "form" attribute updates in parseMappedAttribute() instead of attributeChanged() to better match HTMLElement practices
+ https://bugs.webkit.org/show_bug.cgi?id=66321
+
+ Reviewed by Darin Adler.
+
+ This is simply a cleanup change: there's no need that I can see for
+ HTMLFormControlElement and HTMLObjectElement to override
+ Element::attributeChanged since they can properly handle form
+ attribute changes in parseMappedAttribute, which they also override.
+
+ Though no change in behavior, I've added test coverage of the moved
+ code to an existing test (fast/forms/form-attribute.html) and added
+ a new test.
+
+ Test: fast/forms/radio-remove-form-attr.html
+
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLFormControlElement::parseMappedAttribute):
+ * html/HTMLFormControlElement.h:
+ * html/HTMLObjectElement.cpp:
+ (WebCore::HTMLObjectElement::parseMappedAttribute):
+ * html/HTMLObjectElement.h:
+
+2011-08-18 Chang Shu <cshu@webkit.org>
+
+ Add support of setPasswordEchoEnabled and setPasswordEchoDuration for password echo feature
+ https://bugs.webkit.org/show_bug.cgi?id=66052
+
+ Reviewed by Alexey Proskuryakov.
+
+ Added runtime settings in WebCore.
+ Added support in window.internals for testing.
+
+ Tests: editing/input/password-echo-passnode.html
+ editing/input/password-echo-passnode2.html
+ editing/input/password-echo-passnode3.html
+ editing/input/password-echo-textnode.html
+
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings):
+ * page/Settings.h:
+ (WebCore::Settings::setPasswordEchoEnabled):
+ (WebCore::Settings::passwordEchoEnabled):
+ (WebCore::Settings::setPasswordEchoDurationInSeconds):
+ (WebCore::Settings::passwordEchoDurationInSeconds):
+ * testing/Internals.cpp:
+ (WebCore::Internals::Internals):
+ (WebCore::Internals::setPasswordEchoEnabled):
+ (WebCore::Internals::setPasswordEchoDurationInSeconds):
+ (WebCore::Internals::reset):
+ * testing/Internals.h:
+ * testing/Internals.idl:
+
+2011-08-18 Wyatt Carss <wcarss@chromium.org>
+
+ Selecting all and inserting text into a page with a frameset leads to a NULL ptr
+ https://bugs.webkit.org/show_bug.cgi?id=66288
+
+ Reviewed by Tony Chang.
+
+ VisibleSelection returns a NoSelection to InsertTextCommand::doApply as
+ a new endingSelection, which isn't a sane state to be in. The code
+ tries to get a position on a higher node for a better selection, but
+ cannot go above the frameset (which exists in place of the body tag),
+ which lacks a renderer, and therefore cannot have a non-NoSelection
+ VisibleSelection.
+
+ Because this is a rare corner case, it seemed more reasonable to bail
+ out in this circumstance than to change the way VisibleSelection
+ canonicalization works. The new behavior is to delete the content, but
+ insert nothing. I investigated the possibility of trying to move above
+ or below the frameset in this particular case, but there still isn't a
+ renderer, so it didn't prevent the crash.
+
+ Test: editing/inserting/insert-text-into-empty-frameset-crash.html
+
+ * editing/InsertTextCommand.cpp:
+ (WebCore::InsertTextCommand::doApply):
+
+2011-08-18 Takashi Toyoshima <toyoshim@chromium.org>
+
+ Remove arguments from CloseEvent::create().
+ https://bugs.webkit.org/show_bug.cgi?id=66294
+
+ Reviewed by Kent Tamura.
+
+ CloseEvent objects are initialized by initCloseEvent() in all cases.
+ Initialization in create() is redundant.
+
+ No new tests for no functional difference.
+
+ * websockets/CloseEvent.h:
+ (WebCore::CloseEvent::create):
+ (WebCore::CloseEvent::CloseEvent):
+ * websockets/WebSocket.cpp:
+ (WebCore::WebSocket::didClose):
+
+2011-08-18 Fady Samuel <fsamuel@chromium.org>
+
+ iframe and frameset scaling is broken
+ https://bugs.webkit.org/show_bug.cgi?id=57785
+
+ Reviewed by Simon Fraser.
+
+ Fixed two iframe and frameset scaling bugs:
+ #1 iframes and frameset backgrounds and scroll areas are doubly scaled when they are styled with -webkit-transform.
+ #2 frameset does not respect -webkit-transform-origin when scaled
+
+ Tests: fast/frames/frame-set-scaling-3d.html
+ fast/frames/frame-set-scaling-centered.html
+ fast/frames/frame-set-scaling-rotate.html
+ fast/frames/frame-set-scaling-skew.html
+ fast/frames/frame-set-scaling.html
+ fast/frames/iframe-scaling-with-scroll.html
+
+ * rendering/RenderFrameSet.cpp:
+ (WebCore::RenderFrameSet::layout):
+ Update the FrameSet's layer transform after we've computed size to correctly account for the transform origin.
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::childrenClipRect):
+ The dirty rect should be the document's unscaled size.
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::setWidget):
+ (WebCore::RenderWidget::updateWidgetPosition):
+ Don't scale the FrameView rect here. Scaling is done within the FrameView.
+
+2011-08-18 Csaba Osztrogonác <ossy@webkit.org>
+
+ Unreviewed buildfix after r93268.
+
+ * dom/Document.cpp:
+ (WebCore::disableRangeMutation):
+
+2011-08-17 Emil A Eklund <eae@chromium.org>
+
+ Switch RenderBox to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66156
+
+ Reviewed by Eric Seidel.
+
+ Convert RenderBox to new layout abstraction as a part of the ongoing
+ conversion work.
+
+ No new tests as no new functionality.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::scrollWidth):
+ (WebCore::RenderBox::scrollHeight):
+ (WebCore::RenderBox::scrollLeft):
+ (WebCore::RenderBox::scrollTop):
+ (WebCore::RenderBox::setScrollLeft):
+ (WebCore::RenderBox::setScrollTop):
+ (WebCore::RenderBox::absoluteRects):
+ (WebCore::RenderBox::absoluteContentBox):
+ (WebCore::RenderBox::absoluteContentQuad):
+ (WebCore::RenderBox::outlineBoundsForRepaint):
+ (WebCore::RenderBox::reflectionBox):
+ (WebCore::RenderBox::reflectedRect):
+ (WebCore::RenderBox::verticalScrollbarWidth):
+ (WebCore::RenderBox::horizontalScrollbarHeight):
+ (WebCore::RenderBox::computeContentBoxLogicalWidth):
+ (WebCore::RenderBox::computeContentBoxLogicalHeight):
+ (WebCore::RenderBox::maskClipRect):
+ (WebCore::RenderBox::repaintLayerRectsForImage):
+ (WebCore::RenderBox::pushContentsClip):
+ (WebCore::RenderBox::overflowClipRect):
+ (WebCore::RenderBox::clipRect):
+ (WebCore::RenderBox::containingBlockLogicalWidthForContent):
+ (WebCore::RenderBox::perpendicularContainingBlockLogicalHeight):
+ (WebCore::RenderBox::positionLineBox):
+ (WebCore::RenderBox::clippedOverflowRectForRepaint):
+ (WebCore::RenderBox::computeRectForRepaint):
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeInlineDirectionMargins):
+ (WebCore::RenderBox::computeLogicalHeight):
+ (WebCore::RenderBox::computeLogicalHeightUsing):
+ (WebCore::RenderBox::computePercentageLogicalHeight):
+ (WebCore::RenderBox::computeBlockDirectionMargins):
+ (WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
+ (WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
+ (WebCore::computeInlineStaticDistance):
+ (WebCore::RenderBox::computePositionedLogicalWidth):
+ (WebCore::computeLogicalLeftPositionedOffset):
+ (WebCore::RenderBox::computePositionedLogicalWidthUsing):
+ (WebCore::computeBlockStaticDistance):
+ (WebCore::RenderBox::computePositionedLogicalHeight):
+ (WebCore::computeLogicalTopPositionedOffset):
+ (WebCore::RenderBox::computePositionedLogicalHeightUsing):
+ (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
+ (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
+ (WebCore::RenderBox::localCaretRect):
+ (WebCore::RenderBox::lineHeight):
+ (WebCore::RenderBox::baselinePosition):
+ (WebCore::RenderBox::logicalVisualOverflowRectForPropagation):
+ (WebCore::RenderBox::visualOverflowRectForPropagation):
+ (WebCore::RenderBox::logicalLayoutOverflowRectForPropagation):
+ (WebCore::RenderBox::layoutOverflowRectForPropagation):
+ (WebCore::RenderBox::locationOffsetIncludingFlipping):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::borderFitAdjust):
+ (WebCore::RenderBox::intrinsicSize):
+ (WebCore::RenderBox::intrinsicLogicalWidth):
+ (WebCore::RenderBox::intrinsicLogicalHeight):
+ (WebCore::RenderBox::scrollbarLogicalHeight):
+ (WebCore::RenderBox::controlClipRect):
+ (WebCore::RenderBox::firstLineBoxBaseline):
+ (WebCore::RenderBox::lastLineBoxBaseline):
+
+2011-08-17 Annie Sullivan <sullivan@chromium.org>
+
+ Reduce usages of String::createUninitialized
+ https://bugs.webkit.org/show_bug.cgi?id=66399
+
+ Constructs Strings with StringBuilder instead of calling createUninitialized.
+
+ Reviewed by Adam Barth.
+
+ No new tests; no functional change.
+
+ * dom/StyleElement.cpp:
+ (WebCore::StyleElement::process):
+ * dom/Text.cpp:
+ (WebCore::Text::wholeText):
+ * html/parser/HTMLSourceTracker.cpp:
+ (WebCore::HTMLSourceTracker::sourceForToken):
+ * platform/graphics/Font.cpp:
+ (WebCore::Font::normalizeSpaces):
+ * platform/text/TextCodecUserDefined.cpp:
+ (WebCore::TextCodecUserDefined::decode):
+
+2011-08-17 Emil A Eklund <eae@chromium.org>
+
+ Switch FrameView to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66147
+
+ Reviewed by Eric Seidel.
+
+ Convert Frame & FrameView to new layout abstraction as a part of the
+ ongoing conversion work.
+
+ No new tests, no new functionality.
+
+ * page/Frame.cpp:
+ (WebCore::Frame::visiblePositionForPoint):
+ (WebCore::Frame::documentAtPoint):
+ (WebCore::Frame::rangeForPoint):
+ (WebCore::Frame::setPageAndTextZoomFactors):
+ (WebCore::Frame::scalePage):
+ * page/Frame.h:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::create):
+ (WebCore::FrameView::reset):
+ (WebCore::FrameView::init):
+ (WebCore::FrameView::invalidateRect):
+ (WebCore::FrameView::setFrameRect):
+ (WebCore::FrameView::setMarginWidth):
+ (WebCore::FrameView::setMarginHeight):
+ (WebCore::FrameView::setContentsSize):
+ (WebCore::FrameView::adjustViewSize):
+ (WebCore::FrameView::scrollXForFixedPosition):
+ (WebCore::FrameView::scrollYForFixedPosition):
+ (WebCore::FrameView::scrollOffsetForFixedPosition):
+ (WebCore::FrameView::currentMousePosition):
+ (WebCore::FrameView::scrollContentsFastPath):
+ (WebCore::FrameView::scrollContentsSlowPath):
+ (WebCore::FrameView::setScrollPosition):
+ (WebCore::FrameView::repaintContentRectangle):
+ (WebCore::FrameView::scrollToAnchor):
+ (WebCore::FrameView::performPostLayoutTasks):
+ (WebCore::FrameView::windowClipRect):
+ (WebCore::FrameView::windowClipRectForLayer):
+ (WebCore::FrameView::scrollTo):
+ (WebCore::FrameView::invalidateScrollbarRect):
+ (WebCore::FrameView::getTickmarks):
+ (WebCore::FrameView::windowResizerRect):
+ (WebCore::FrameView::setVisibleScrollerThumbRect):
+ (WebCore::FrameView::paintScrollCorner):
+ (WebCore::FrameView::paintContents):
+ (WebCore::FrameView::paintOverhangAreas):
+ (WebCore::FrameView::forceLayoutForPagination):
+ (WebCore::FrameView::convertFromRenderer):
+ (WebCore::FrameView::convertToRenderer):
+ (WebCore::FrameView::convertToContainingView):
+ (WebCore::FrameView::convertFromContainingView):
+ * page/FrameView.h:
+ (WebCore::FrameView::marginWidth):
+ (WebCore::FrameView::marginHeight):
+ * page/mac/FrameMac.mm:
+ (WebCore::Frame::snapshotDragImage):
+ (WebCore::Frame::nodeImage):
+
+2011-08-17 Emil A Eklund <eae@chromium.org>
+
+ Switch html/* to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66347
+
+ Reviewed by Eric Seidel.
+
+ Convert HTML* and shadow element to new layout abstraction as a part of
+ the ongoing conversion work.
+
+ No new tests, no new functionality.
+
+ * html/HTMLAreaElement.cpp:
+ (WebCore::HTMLAreaElement::invalidateCachedRegion):
+ (WebCore::HTMLAreaElement::mapMouseEvent):
+ (WebCore::HTMLAreaElement::computePath):
+ (WebCore::HTMLAreaElement::computeRect):
+ (WebCore::HTMLAreaElement::getRegion):
+ * html/HTMLAreaElement.h:
+ * html/HTMLCanvasElement.cpp:
+ (WebCore::HTMLCanvasElement::paint):
+ * html/HTMLCanvasElement.h:
+ * html/HTMLMapElement.cpp:
+ (WebCore::HTMLMapElement::mapMouseEvent):
+ * html/HTMLMapElement.h:
+ * html/ImageDocument.cpp:
+ (WebCore::ImageDocumentParser::finish):
+ (WebCore::ImageDocument::scale):
+ (WebCore::ImageDocument::resizeImageToFit):
+ (WebCore::ImageDocument::imageFitsInWindow):
+ * html/ValidationMessage.cpp:
+ (WebCore::adjustBubblePosition):
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::size):
+ (WebCore::CanvasRenderingContext2D::drawImage):
+ * html/shadow/MediaControlElements.cpp:
+ (WebCore::MediaControlPanelElement::startDrag):
+ (WebCore::MediaControlPanelElement::continueDrag):
+ (WebCore::MediaControlPanelElement::setPosition):
+ (WebCore::MediaControlPanelElement::defaultEventHandler):
+ * html/shadow/MediaControlElements.h:
+ * html/shadow/SliderThumbElement.cpp:
+ (WebCore::SliderThumbElement::dragFrom):
+ (WebCore::SliderThumbElement::setPositionFromPoint):
+ * html/shadow/SliderThumbElement.h:
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::nodeAtPoint):
+
+2011-08-17 David Grogan <dgrogan@chromium.org>
+
+ Change references to leveldb.gyp to leveldatabase.gyp as part of the
+ leveldb refactoring going on in chromium: crbug.com/89378
+ https://bugs.webkit.org/show_bug.cgi?id=66332
+
+ Reviewed by Tony Gentilcore.
+
+ Tests: new-run-webkit-tests --debug --chromium --no-retry-failures --build-directory=llvm storage/indexeddb
+
+ * WebCore.gyp/WebCore.gyp:
+
+2011-08-17 Hayato Ito <hayato@chromium.org>
+
+ Implement proper handling of focus/blur events in regard to shadow DOM boundaries.
+ https://bugs.webkit.org/show_bug.cgi?id=61421
+
+ Reviewed by Dimitri Glazkov.
+
+ Introduces FocusEventDispatchMediator/BlurEventDispatchMediator so
+ that focus/blue events are stopped at the lowest common shadow boundary.
+
+ * dom/Document.cpp:
+ (WebCore::Document::setFocusedNode):
+ * dom/Event.cpp:
+ (WebCore::FocusEventDispatchMediator::create):
+ (WebCore::FocusEventDispatchMediator::FocusEventDispatchMediator):
+ (WebCore::FocusEventDispatchMediator::dispatchEvent):
+ (WebCore::BlurEventDispatchMediator::create):
+ (WebCore::BlurEventDispatchMediator::BlurEventDispatchMediator):
+ (WebCore::BlurEventDispatchMediator::dispatchEvent):
+ * dom/Event.h:
+ * dom/Node.cpp:
+ (WebCore::Node::dispatchFocusEvent):
+ (WebCore::Node::dispatchBlurEvent):
+ * dom/Node.h:
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLFormControlElement::dispatchBlurEvent):
+ * html/HTMLFormControlElement.h:
+ * html/HTMLSelectElement.cpp:
+ (WebCore::HTMLSelectElement::dispatchFocusEvent):
+ (WebCore::HTMLSelectElement::dispatchBlurEvent):
+ * html/HTMLSelectElement.h:
+ * html/HTMLTextFormControlElement.cpp:
+ (WebCore::HTMLTextFormControlElement::dispatchFocusEvent):
+ (WebCore::HTMLTextFormControlElement::dispatchBlurEvent):
+ * html/HTMLTextFormControlElement.h:
+ * page/FocusController.cpp:
+ (WebCore::dispatchEventsOnWindowAndFocusedNode):
+
+2011-08-17 Ben Wells <benwells@chromium.org>
+
+ Canvas fill and fillRect with SourceIn, DestinationIn, SourceOut, DestinationAtop and Copy have errors
+ https://bugs.webkit.org/show_bug.cgi?id=66036
+
+ These modes cannot be passed straight through to the underlying graphics context as the graphics context
+ and the HTML5 canvas spec have different interpretations to them. In the graphics context, the compositing
+ modes are applied just over the area being filled. In the HTML5 spec, the compositing modes are applied over
+ the entire canvas.
+
+ The SourceIn, DestinationIn, SourceOut, DestinationAtop and Copy modes all need some kind of extra action
+ to just performing the composited fill on the canvas, as they need t he canvas to be cleared outside of the
+ area being filled.
+
+ Previous to this change the Copy mode did not do this clearing at all. The other modes did but if the
+ transformed path being filled contained anti-aliasing at its edges artifacts were introduced.
+
+ With this change, Copy now does a complete erase of the canvas before performing a fill as per normal.
+ The other modes use a temporary buffer just big enough for the transformed path (in device coordinates).
+ The fill is first done there in SourceOver mode. Then this is drawn into the canvas context using the
+ appropriate mode, with any areas outside the draw area being cleared.
+
+ Reviewed by James Robinson.
+
+ Test: fast/canvas/canvas-composite-transformclip.html
+
+ * html/HTMLCanvasElement.h:
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::fill):
+ (WebCore::CanvasRenderingContext2D::fillRect):
+ (WebCore::CanvasRenderingContext2D::clearCanvas):
+ (WebCore::CanvasRenderingContext2D::transformAreaToDevice):
+ (WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere):
+ * html/canvas/CanvasRenderingContext2D.h:
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::ImageBuffer):
+
+2011-08-17 Emil A Eklund <eae@chromium.org>
+
+ Switch inspector to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66358
+
+ Reviewed by Eric Seidel.
+
+ Convert inspector code to new layout abstraction as a part of the ongoing
+ conversion work.
+
+ No new tests, no new functionality.
+
+ * inspector/DOMNodeHighlighter.cpp:
+ (WebCore::DOMNodeHighlighter::drawNodeHighlight):
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::willPaintImpl):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::willPaint):
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::willPaint):
+ * inspector/InspectorTimelineAgent.h:
+ * inspector/TimelineRecordFactory.cpp:
+ (WebCore::TimelineRecordFactory::createPaintData):
+ * inspector/TimelineRecordFactory.h:
+
+2011-08-17 Levi Weintraub <leviw@chromium.org>
+
+ Switch Editing code to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66355
+
+ Reviewed by Eric Seidel.
+
+ Converting remaining editing code to the LayoutUnit abstraction.
+
+ No new tests, no change in functionality.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::rangeForPoint):
+ (WebCore::Editor::insideVisibleArea):
+ (WebCore::Editor::countMatchesForText):
+ * editing/Editor.h:
+ * editing/mac/FrameSelectionMac.mm:
+ (WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
+
+2011-08-17 Levi Weintraub <leviw@chromium.org>
+
+ Switch Accessibility code to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66348
+
+ Reviewed by Eric Seidel.
+
+ Converting remaining Accessibility code to the LayoutUnit abstraction.
+
+ No new tests, no change in functionality
+
+ * accessibility/AccessibilityImageMapLink.cpp:
+ (WebCore::AccessibilityImageMapLink::elementRect):
+ * accessibility/AccessibilityImageMapLink.h:
+ * accessibility/AccessibilityListBox.cpp:
+ (WebCore::AccessibilityListBox::elementAccessibilityHitTest):
+ * accessibility/AccessibilityListBox.h:
+ * accessibility/AccessibilityListBoxOption.cpp:
+ (WebCore::AccessibilityListBoxOption::elementRect):
+ * accessibility/AccessibilityListBoxOption.h:
+ * accessibility/AccessibilityMenuListOption.cpp:
+ (WebCore::AccessibilityMenuListOption::elementRect):
+ * accessibility/AccessibilityMenuListOption.h:
+ (WebCore::AccessibilityMenuListOption::size):
+ * accessibility/AccessibilityMenuListPopup.h:
+ (WebCore::AccessibilityMenuListPopup::elementRect):
+ (WebCore::AccessibilityMenuListPopup::size):
+ * accessibility/AccessibilityObject.cpp:
+ (WebCore::AccessibilityObject::clickPoint):
+ (WebCore::AccessibilityObject::orientation):
+ (WebCore::AccessibilityObject::elementAccessibilityHitTest):
+ * accessibility/AccessibilityObject.h:
+ (WebCore::AccessibilityObject::accessibilityHitTest):
+ (WebCore::AccessibilityObject::boundingBoxRect):
+ (WebCore::AccessibilityObject::size):
+ (WebCore::AccessibilityObject::boundsForVisiblePositionRange):
+ (WebCore::AccessibilityObject::doAXBoundsForRange):
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::isOffScreen):
+ (WebCore::AccessibilityRenderObject::boundingBoxRect):
+ (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
+ (WebCore::AccessibilityRenderObject::elementRect):
+ (WebCore::AccessibilityRenderObject::size):
+ (WebCore::AccessibilityRenderObject::clickPoint):
+ (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
+ (WebCore::AccessibilityRenderObject::boundsForVisiblePositionRange):
+ (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
+ (WebCore::AccessibilityRenderObject::doAXBoundsForRange):
+ * accessibility/AccessibilityRenderObject.h:
+ * accessibility/AccessibilityScrollView.cpp:
+ (WebCore::AccessibilityScrollView::accessibilityHitTest):
+ (WebCore::AccessibilityScrollView::elementRect):
+ * accessibility/AccessibilityScrollView.h:
+ * accessibility/AccessibilityScrollbar.cpp:
+ (WebCore::AccessibilityScrollbar::elementRect):
+ * accessibility/AccessibilityScrollbar.h:
+ * accessibility/AccessibilitySlider.cpp:
+ (WebCore::AccessibilitySliderThumb::elementRect):
+ (WebCore::AccessibilitySliderThumb::size):
+ * accessibility/AccessibilitySlider.h:
+ * accessibility/AccessibilityTableColumn.cpp:
+ (WebCore::AccessibilityTableColumn::elementRect):
+ (WebCore::AccessibilityTableColumn::size):
+ * accessibility/AccessibilityTableColumn.h:
+ * accessibility/AccessibilityTableHeaderContainer.cpp:
+ (WebCore::AccessibilityTableHeaderContainer::elementRect):
+ (WebCore::AccessibilityTableHeaderContainer::size):
+ * accessibility/AccessibilityTableHeaderContainer.h:
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper position]):
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
+ (-[AccessibilityObjectWrapper accessibilityShowContextMenu]):
+
+2011-08-17 Emil A Eklund <eae@chromium.org>
+
+ Switch focus handling to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66331
+
+ Reviewed by Eric Seidel.
+
+ Convert FocusController and SpatialNavigation to new layout abstraction
+ as a part of the ongoing conversion work.
+
+ No new tests, no new functionality.
+
+ * page/FocusController.cpp:
+ (WebCore::updateFocusCandidateIfNeeded):
+ (WebCore::FocusController::findFocusCandidateInContainer):
+ (WebCore::FocusController::advanceFocusDirectionallyInContainer):
+ (WebCore::FocusController::advanceFocusDirectionally):
+ * page/FocusController.h:
+ * page/SpatialNavigation.cpp:
+ (WebCore::alignmentForRects):
+ (WebCore::start):
+ (WebCore::middle):
+ (WebCore::end):
+ (WebCore::areRectsFullyAligned):
+ (WebCore::areRectsPartiallyAligned):
+ (WebCore::areRectsMoreThanFullScreenApart):
+ (WebCore::below):
+ (WebCore::rightOf):
+ (WebCore::isRectInDirection):
+ (WebCore::hasOffscreenRect):
+ (WebCore::scrollInDirection):
+ (WebCore::deflateIfOverlapped):
+ (WebCore::canScrollInDirection):
+ (WebCore::rectToAbsoluteCoordinates):
+ (WebCore::nodeRectInAbsoluteCoordinates):
+ (WebCore::frameRectInAbsoluteCoordinates):
+ (WebCore::entryAndExitPointsForDirection):
+ (WebCore::distanceDataForNode):
+ (WebCore::canBeScrolledIntoView):
+ (WebCore::virtualRectForDirection):
+ (WebCore::virtualRectForAreaElementAndDirection):
+ * page/SpatialNavigation.h:
+
+2011-08-17 Levi Weintraub <leviw@chromium.org>
+
+ Switch Document, DocumentMarker, Clipboard, and Range to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66330
+
+ Reviewed by Eric Seidel.
+
+ Converting the remaining DOM classes to use the LayoutUnit abstraction.
+
+ No new tests, no new behavior.
+
+ * dom/Clipboard.h:
+ (WebCore::Clipboard::dragLocation):
+ * dom/Document.cpp:
+ (WebCore::Document::nodesFromRect):
+ (WebCore::nodeFromPoint):
+ (WebCore::Document::caretRangeFromPoint):
+ (WebCore::Document::prepareMouseEvent):
+ * dom/Document.h:
+ * dom/DocumentMarkerController.cpp:
+ (WebCore::DocumentMarkerController::markerContainingPoint):
+ (WebCore::DocumentMarkerController::renderedRectsForMarkers):
+ (WebCore::DocumentMarkerController::invalidateRenderedRectsForMarkersInRect):
+ * dom/DocumentMarkerController.h:
+ * dom/Range.cpp:
+ (WebCore::adjustFloatQuadsForScrollAndAbsoluteZoomAndPageScale):
+ * dom/RenderedDocumentMarker.h:
+ (WebCore::RenderedDocumentMarker::contains):
+ (WebCore::RenderedDocumentMarker::setRenderedRect):
+ (WebCore::RenderedDocumentMarker::renderedRect):
+ (WebCore::RenderedDocumentMarker::invalidMarkerRect):
+ (WebCore::RenderedDocumentMarker::invalidate):
+
+2011-08-17 Dan Bernstein <mitz@apple.com>
+
+ Removed an unused setting.
+
+ Reviewed by Anders Carlsson.
+
+ * WebCore.exp.in:
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings): Removed initializer for m_needsTigerMailQuirks.
+ * page/Settings.h: Removed accessors.
+
+2011-08-17 Oliver Hunt <oliver@apple.com>
+
+ Move towards supporting user controlled prototypes on CanvasPixelArray
+ https://bugs.webkit.org/show_bug.cgi?id=66429
+
+ Reviewed by Gavin Barraclough.
+
+ Start using a per-global object structure for canvas pixel array.
+
+ * bindings/js/JSImageDataCustom.cpp:
+ (WebCore::toJS):
+
+2011-08-17 Luke Macpherson <macpherson@chromium.org>
+
+ Support cast from CSSPrimitiveValue to unsigned, and use in appropriate places in CSSStyleSelector::applyProperty
+ https://bugs.webkit.org/show_bug.cgi?id=66281
+
+ Reviewed by Eric Seidel.
+
+ No new tests - refactoring only.
+
+ The return if type!=CSS_NUMBER case becomes an ASSERT because it is unreachable unless there is an error in the parser.
+
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ Support cast from unsigned to CSSPrimitiveValue
+ (WebCore::CSSPrimitiveValue::operator unsigned):
+ Support cast from CSSPrimitiveValue to unsigned
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ Use HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE macro for CSSPropertyWebkitBoxFlex,
+ CSSPropertyWebkitBoxFlexGroup and CSSPropertyWebkitBoxOrdinalGroup properties.
+
+2011-08-17 Scott Byer <scottbyer@chromium.org>
+
+ ScrollAnimatorNone: Remove unused field
+ https://bugs.webkit.org/show_bug.cgi?id=66312
+
+ Reviewed by Adam Barth.
+
+ No functional change; no test needed.
+
+ * platform/ScrollAnimatorNone.cpp:
+ (WebCore::ScrollAnimatorNone::PerAxisData::updateDataFromParameters):
+ (WebCore::ScrollAnimatorNone::scroll):
+ * platform/ScrollAnimatorNone.h:
+
+2011-08-17 Jeff Miller <jeffm@apple.com>
+
+ Work-in-progress on Soft link against AVFoundationCF and CoreMedia
+ https://bugs.webkit.org/show_bug.cgi?id=65725
+
+ Don't bother with SOFT_LINK_LIBRARY(libdispatch), we're going to continue to statically link to it since
+ the DLL will have already been loaded by other parts of AAS and is guaranteed to be available if AVFoundation
+ is enabled.
+
+ Reviewed by Anders Carlsson.
+
+ No new tests; no functional change.
+
+ * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp: Removed SOFT_LINK_DEBUG_LIBRARY(libdispatch) and SOFT_LINK_LIBRARY(libdispatch).
+ (WebCore::MediaPlayerPrivateAVFoundationCF::isAvailable): Don't check for libdispatch.
+
+2011-08-17 Brady Eidson <beidson@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=66354 and <rdar://problem/9965209>
+ Regression: On Lion, redirects lose HTTP authentication headers
+
+ Reviewed by Alexey Proskuryakov and Darin Adler.
+
+ This changes makes WebCore try to apply basic credentials after a redirect if the redirect is to the same origin,
+ assuming the redirected URL did not contain credentials directly.
+
+ Tests: http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin.html
+ http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin.html
+ http/tests/misc/authentication-redirect-3/authentication-sent-to-redirect-same-origin-with-location-credentials.html
+
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::applyBasicAuthorizationHeader): Apply the user/password from a credential to the HTTP headers for a request.
+ (WebCore::ResourceHandle::createCFURLConnection): Use the applyBasicAuthorizationHeader helper.
+ (WebCore::ResourceHandle::willSendRequest): If this is a redirect within the same origin, apply any stored target credentials to the new request.
+
+ * platform/network/mac/ResourceHandleMac.mm:
+ (WebCore::applyBasicAuthorizationHeader): Apply the user/password from a credential to the HTTP headers for a request.
+ (WebCore::ResourceHandle::createNSURLConnection): Use the applyBasicAuthorizationHeader helper.
+ (WebCore::ResourceHandle::willSendRequest): If this is a redirect within the same origin, apply any stored target credentials to the new request.
+
+2011-08-17 Chris Fleizach <cfleizach@apple.com>
+
+ Accessibility stack exhaustion using role attribute
+ https://bugs.webkit.org/show_bug.cgi?id=65174
+
+ Reviewed by Darin Adler.
+
+ Forgot to commit review comments.
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::remapAriaRoleDueToParent):
+
+2011-08-17 Chris Fleizach <cfleizach@apple.com>
+
+ Accessibility stack exhaustion using role attribute
+ https://bugs.webkit.org/show_bug.cgi?id=65174
+
+ Make sure we do not call accessibilityIsIgnored() during the AccessibilityObject
+ creation flow. That can lead to loops.
+
+ Reviewed by Darin Adler.
+
+ Tests: accessibility/crash-determining-aria-role-when-label-present.html
+
+ * accessibility/AccessibilityObject.cpp:
+ (WebCore::createARIARoleMap):
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::remapAriaRoleDueToParent):
+ (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
+ * accessibility/AccessibilityRenderObject.h:
+
+2011-08-17 James Robinson <jamesr@chromium.org>
+
+ [chromium] Crash if compositing is disabled during updateLayers()
+ https://bugs.webkit.org/show_bug.cgi?id=66353
+
+ Reviewed by Kenneth Russell.
+
+ If compositing is turned off during LayerRendererChromium::updateLayers(), the rootLayer() will become null.
+ Sicne CCLayerTreeHost::doComposite() calls updateLayers() and then drawLayers() without checking for this case,
+ drawLayers() has to return without doing anything if the root layer is null.
+
+ Crash fixed based on crash reports. No known reliably repro case, unfortunately.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::drawLayers):
+
+2011-08-17 Dan Bernstein <mitz@apple.com>
+
+ <rdar://problem/9971293> Mid-word breaks can occur in the middle of a surrogate pair
+ https://bugs.webkit.org/show_bug.cgi?id=66402
+
+ Reviewed by Dave Hyatt.
+
+ Test: fast/text/midword-break-before-surrogate-pair-2.html
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::LineBreaker::nextLineBreak): Just never allow a mid-word
+ break before a trailing surrogate.
+
+2011-08-16 Chang Shu <cshu@webkit.org>
+
+ Support reset in WebCore::Internals
+ https://bugs.webkit.org/show_bug.cgi?id=66307
+
+ Reviewed by Dimitri Glazkov.
+
+ New tests will be added when function reset is implemented.
+
+ Added framework code in WebCoreTestSupport. The real implementation of
+ Internals::reset() depends on the need from the settings that require a reset.
+
+ * testing/Internals.cpp:
+ (WebCore::Internals::reset):
+ * testing/Internals.h:
+ * testing/js/WebCoreTestSupport.cpp:
+ (WebCoreTestSupport::resetInternalsObject):
+ * testing/js/WebCoreTestSupport.h:
+ * testing/v8/WebCoreTestSupport.cpp:
+ (WebCoreTestSupport::resetInternalsObject):
+ * testing/v8/WebCoreTestSupport.h:
+
+2011-08-17 Tony Chang <tony@chromium.org>
+
+ Fix chromium mac compile. MediaPlayerPrivateAVFoundationObjC.* moved
+ and the WebCore.gypi file wasn't updated.
+
+ * WebCore.gypi:
+
+2011-08-17 Abhishek Arya <inferno@chromium.org>
+
+ Crash in Document::recalcStyleSelector
+ https://bugs.webkit.org/show_bug.cgi?id=66335
+
+ Reviewed by Simon Fraser.
+
+ When node is getting destroyed and its removedFromDocument
+ is not called due to entire document structure torn down(using
+ removeAllChildren), make sure to clear out the stylesheet
+ candidate node from document's structures in its destructor.
+
+ Test: svg/dom/stylesheet-candidate-node-crash-main.html
+
+ * dom/ProcessingInstruction.cpp:
+ (WebCore::ProcessingInstruction::~ProcessingInstruction):
+ * html/HTMLLinkElement.cpp:
+ (WebCore::HTMLLinkElement::~HTMLLinkElement):
+ * html/HTMLStyleElement.cpp:
+ (WebCore::HTMLStyleElement::~HTMLStyleElement):
+ * svg/SVGStyleElement.cpp:
+ (WebCore::SVGStyleElement::~SVGStyleElement):
+
+2011-08-17 Sam White <samuel.white@rochester.edu>
+
+ AccessibilityObject levels are inconsistent
+ https://bugs.webkit.org/show_bug.cgi?id=66180
+
+ Updated accessibilityTable to return level values consistent with other accessibilityObjects that
+ return level values. This means a value of 0 is now only returned when tableLevel() is called on a
+ non-table element.
+
+ Reviewed by Chris Fleizach.
+
+ Test: platform/mac/accessibility/element-level.html
+
+ * accessibility/AccessibilityTable.cpp:
+ (WebCore::AccessibilityTable::tableLevel):
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
+
+2011-08-17 Ryosuke Niwa <rniwa@webkit.org>
+
+ An arrow key collapses directionless selection range in the wrong direction in BiDi
+ https://bugs.webkit.org/show_bug.cgi?id=64626
+
+ Reviewed by Darin Adler.
+
+ The bug was caused by willBeModified's always using block direction to determine
+ the direction to which the selection is collapsed. Fixed the bug by calling directionOfSelection
+ in willBeModified, which will return the text direction of the surrounding context when
+ the start and the end have the same direction. When the text directions at the start and at the end
+ of selection do not match, it uses the block's text direction.
+
+ Test: editing/selection/collapse-selection-in-bidi.html
+
+ * editing/FrameSelection.cpp:
+ (WebCore::FrameSelection::directionOfSelection): Added.
+ (WebCore::FrameSelection::willBeModified): Calls directionOfSelection.
+ (WebCore::FrameSelection::modifyMovingRight): Ditto.
+ (WebCore::FrameSelection::modifyMovingLeft): Ditto.
+ * editing/FrameSelection.h:
+
+2011-08-17 Jeff Miller <jeffm@apple.com>
+
+ Some AVFoundation source files should be in platform-specific directories
+ https://bugs.webkit.org/show_bug.cgi?id=66352
+
+ Moved platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationCF.* files to platform/graphics/avfoundation/cf,
+ and moved platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.* files to platform/graphics/avfoundation/objc/.
+
+ While I was at it, added svn:eol-style property to the MediaPlayerPrivateAVFoundationObjC.* files.
+
+ Also, for some reason, Visual Studio decided to re-sort a couple files in \inspector\front-end\ in WebCore.vcproj, even though
+ I just re-sorted the project in r93215.
+
+ Reviewed by Eric Carlson.
+
+ No new tests; no functional change.
+
+ * WebCore.vcproj/WebCore.vcproj: Moved platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationCF.* files to platform/graphics/avfoundation/cf.
+
+ * WebCore.vcproj/WebCoreMediaQT.vsprops: Added $(ProjectDir)..\platform\graphics\avfoundation\cf to include paths.
+
+ * WebCore.xcodeproj/project.pbxproj: Moved platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.* files to platform/graphics/avfoundation/objc/.
+
+ * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationCF.cpp: Removed.
+ * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationCF.h: Removed.
+ * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h: Removed.
+ * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm: Removed.
+
+ * platform/graphics/avfoundation/cf: Added.
+ * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp: Copied from Source/WebCore/platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationCF.cpp.
+ * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h: Copied from Source/WebCore/platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationCF.h.
+
+ * platform/graphics/avfoundation/objc: Added.
+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h: Copied from Source/WebCore/platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h.
+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm: Copied from Source/WebCore/platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm.
+
+2011-08-17 Luke Macpherson <macpherson@chromium.org>
+
+ Only set m_fontDirty if TextSizeAdjust is actually changed.
+ https://bugs.webkit.org/show_bug.cgi?id=66022
+
+ Reviewed by Darin Adler.
+
+ No new tests. Refactoring only.
+
+ Reduces instances where the font information is dirtied to save recalculation where it is not necessary.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ Call new setTextSizeAdjust function.
+ * css/CSSStyleSelector.h:
+ (WebCore::CSSStyleSelector::setTextSizeAdjust):
+ Add wrapper for RenderStyle::setTextSizeAdjust() that automatically updates m_fontDirty.
+ * rendering/style/RenderStyle.h:
+ (WebCore::RenderStyle::setTextSizeAdjust):
+ Make setTextSizeAdjust return true if the unlderlying value was changed.
+
+2011-08-17 Kenichi Ishibashi <bashi@chromium.org>
+
+ [Chromium] Crash in HarfbuzzFace::~HarfbuzzFace
+ https://bugs.webkit.org/show_bug.cgi?id=66211
+
+ Holds Skia's unique font ID instead of FontPlatformData to avoid accessing freed FontPlatformData.
+
+ Reviewed by Tony Chang.
+
+ No new tests; no functional change.
+
+ * platform/graphics/chromium/HarfbuzzSkia.cpp:
+ (WebCore::releaseCachedHarfbuzzFace): Changed the argument.
+ (WebCore::HarfbuzzFace::HarfbuzzFace): Changed to have Skia's font uniqueID instead of FontPlatformData.
+ (WebCore::HarfbuzzFace::~HarfbuzzFace): Uses m_uniqueID to call releaseCachedHarfbuzzFace.
+ * platform/graphics/chromium/HarfbuzzSkia.h:
+
+2011-08-17 Jeff Miller <jeffm@apple.com>
+
+ Re-sort the WebCore project with Visual Studio after recent changes that I assume were done by manually editing the XML.
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2011-08-17 Sailesh Agrawal <sail@chromium.org>
+
+ Chromium Mac: Fix implementation of wkScrollbarMinimumTotalLengthNeededForThumb to match WebKitSystemInterface
+ https://bugs.webkit.org/show_bug.cgi?id=66311
+
+ Reviewed by Dimitri Glazkov.
+
+ Updated wkScrollbarMinimumTotalLengthNeededForThumb() based on the latest disassembly of libWebKitSystemInterfaceLion.a.
+
+ * platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.mm:
+ (wkScrollbarMinimumTotalLengthNeededForThumb):
+
+2011-08-17 Steve Block <steveblock@google.com>
+
+ Unreviewed, rolling out r93186.
+ http://trac.webkit.org/changeset/93186
+ https://bugs.webkit.org/show_bug.cgi?id=66114
+
+ Breaks LayoutTests on Chromium canary bots
+
+ * platform/graphics/chromium/LayerChromium.h:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::updateLayers):
+ (WebCore::LayerRendererChromium::drawLayersInternal):
+ (WebCore::LayerRendererChromium::drawLayer):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+
+2011-08-17 Ryosuke Niwa <rniwa@webkit.org>
+
+ Get rid of calls to deprecatedNode and deprecatedEditingOffset in
+ AccessibilityRenderObject.cpp and InsertTextCommand.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=66014
+
+ Reviewed by Hajime Morita.
+
+ Removed calls to deprecatedNode and deprecatedEditingOffsets in the following files.
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::indexForVisiblePosition): Calls Position::rootEditableElement
+ and Range::setEnd(const Position&, ExceptionCode) instead of manually pulling deprecatedNode
+ and deprecatedEditingOffset.
+ (WebCore::AccessibilityRenderObject::index): Abstracted the logic to loop through render objects
+ from deprecatedNodes' renderer to m_renderer as renderObjectContainsPosition.
+ * dom/Position.h:
+ (WebCore::Position::rootEditableElement): Added.
+ * dom/Range.cpp:
+ (WebCore::Range::setStart): Added.
+ (WebCore::Range::setEnd): Added.
+ * dom/Range.h:
+ * editing/InsertTextCommand.cpp:
+ (WebCore::InsertTextCommand::insertTab):
+ * editing/RenderedPosition.cpp:
+ (WebCore::renderObjectContainsPosition): Extracted from AccessibilityRenderObject::index.
+ * editing/RenderedPosition.h:
+
+2011-08-17 Sailesh Agrawal <sail@chromium.org>
+
+ Chromium Mac: Fix issue where scrollbar wouldn't be drawn until page finished loading
+ https://bugs.webkit.org/show_bug.cgi?id=66238
+
+ Reviewed by Dimitri Glazkov.
+
+ Overlay scrollbars were not visible if the user scrolled a page while the page was loading. The sequence of events necessary to reproduce this bug were:
+ 1. -[ScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:] is called
+ 2. animation is delayed because shouldSuspendScrollAnimations() is true
+ 3. ScrollAnimatorChromiumMac::scroll() is called before the ScrollAnimatorChromiumMac::m_initialScrollbarPaintTimer is fired.
+ 4. At this point the scrollbar painter assumes the scrollbar is already visible (because of 1.) so the scrollbar's alpha stays at 0. Thus the scrollbar isn't visible until the page finishes loading.
+ It turns out that the root problem was that when the initialScrollbarPainterTimer fired I wasn't flashing the scrollbar correctly. My implementation of wkScrollbarPainterForceFlashScrollers() just called flashScrollers. The Safari implementation of this function also calls hideOverlayScrollers. Calling hideOverlayScrollers causes the alpha to change to 0 which prevents step 4 from happening.
+
+ Also, now that wkScrollbarPainterForceFlashScrollers is working correctly I don't need the extra logic I added to the initialScrollbarPainterTimer handler. That logic restarted the timer if shouldSuspendScrollAnimations() was true. But this isn't necessary since calling wkScrollbarPainterForceFlashScrollers() causes -[ScrollbarPainterDelegate setUpAnimation:...] to be called which does the exact same thing. Removing the extra logic reverts http://trac.webkit.org/changeset/92316.
+
+ * platform/chromium/ScrollAnimatorChromiumMac.mm:
+ (WebCore::ScrollAnimatorChromiumMac::initialScrollbarPaintTimerFired):
+ * platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.mm:
+ (wkScrollbarPainterForceFlashScrollers):
+
+2011-08-16 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: maintain visible view hierarchy and dispatch common view events automatically
+ https://bugs.webkit.org/show_bug.cgi?id=66131
+
+ Reviewed by Pavel Feldman.
+
+ Test: inspector/view-events.html
+
+ - added a notion of an optional parent to a View
+ - maintain a list of View children
+ - dispatch common view events, such as show/hide/resize automatically through the hierarchy of visible views.
+ - promoted Panel's logic of (re)storing scroll positions to view
+ - demoted inheritScrollPositionFromView to a couple of views that need it.
+
+ * inspector/front-end/ApplicationCacheItemsView.js:
+ (WebInspector.ApplicationCacheItemsView.prototype.onResize):
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype.populateStatusBar):
+ (WebInspector.ConsoleView.prototype.elementsToRestoreScrollPositionsFor):
+ * inspector/front-end/CookieItemsView.js:
+ (WebInspector.CookieItemsView.prototype.onResize):
+ (WebInspector.SimpleCookiesTable.prototype.onResize):
+ * inspector/front-end/DOMStorageItemsView.js:
+ (WebInspector.DOMStorageItemsView.prototype.onResize):
+ * inspector/front-end/DetailedHeapshotView.js:
+ (WebInspector.DetailedHeapshotView.prototype.onResize):
+ * inspector/front-end/Drawer.js:
+ (WebInspector.Drawer.prototype.set visibleView):
+ (WebInspector.Drawer.prototype.show):
+ (WebInspector.Drawer.prototype.hide):
+ (WebInspector.Drawer.prototype.onResize):
+ (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished):
+ (WebInspector.Drawer.prototype._animateDrawerHeight):
+ (WebInspector.Drawer.prototype._statusBarDragging):
+ (WebInspector.Drawer.prototype._endStatusBarDragging):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.onResize):
+ * inspector/front-end/ExtensionPanel.js:
+ * inspector/front-end/FontView.js:
+ (WebInspector.FontView.prototype.onResize):
+ * inspector/front-end/IFrameView.js:
+ (WebInspector.IFrameView):
+ * inspector/front-end/NetworkItemView.js:
+ (WebInspector.NetworkItemView.prototype._installHighlightSupport):
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkLogView):
+ (WebInspector.NetworkLogView.prototype.elementsToRestoreScrollPositionsFor):
+ (WebInspector.NetworkLogView.prototype.onResize):
+ (WebInspector.NetworkLogView.prototype.wasShown):
+ (WebInspector.NetworkLogView.prototype.willHide):
+ (WebInspector.NetworkPanel):
+ (WebInspector.NetworkPanel.prototype.show):
+ (WebInspector.NetworkPanel.prototype._showResource):
+ (WebInspector.NetworkPanel.prototype._closeVisibleResource):
+ * inspector/front-end/Panel.js:
+ (WebInspector.Panel.prototype.show):
+ (WebInspector.Panel.prototype.hide):
+ (WebInspector.Panel.prototype.performSearch.processChunk):
+ (WebInspector.Panel.prototype.performSearch):
+ (WebInspector.Panel.prototype.updateSidebarWidth):
+ * inspector/front-end/PanelEnablerView.js:
+ (WebInspector.PanelEnablerView.prototype.show):
+ (WebInspector.PanelEnablerView.prototype.onResize):
+ * inspector/front-end/ProfileView.js:
+ (WebInspector.CPUProfileView.prototype.onResize):
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel.prototype.updateMainViewWidth):
+ * inspector/front-end/ResourceCookiesView.js:
+ (WebInspector.ResourceCookiesView.prototype.onResize):
+ * inspector/front-end/ResourcePreviewView.js:
+ (WebInspector.ResourcePreviewView.prototype.contentLoaded):
+ * inspector/front-end/ResourceResponseView.js:
+ (WebInspector.ResourceResponseView.prototype.contentLoaded):
+ * inspector/front-end/ResourceTimingView.js:
+ (WebInspector.ResourceTimingView.prototype.show):
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype.show):
+ (WebInspector.ResourcesPanel.prototype._innerShowView):
+ (WebInspector.ResourcesPanel.prototype.closeVisibleView):
+ (WebInspector.ResourcesPanel.prototype.updateMainViewWidth):
+ (WebInspector.FrameResourceTreeElement.prototype._recreateSourceView):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.show):
+ (WebInspector.ScriptsPanel.prototype._createSourceFrame):
+ (WebInspector.ScriptsPanel.prototype._removeSourceFrame):
+ (WebInspector.ScriptsPanel.prototype.setSidebarWidth):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame):
+ (WebInspector.SourceFrame.prototype.show):
+ (WebInspector.SourceFrame.prototype.willHide):
+ (WebInspector.SourceFrame.prototype.clearMessages):
+ (WebInspector.SourceFrame.prototype._setTextViewerDecorations):
+ (WebInspector.SourceFrame.prototype.inheritScrollPositions):
+ * inspector/front-end/TabbedPane.js:
+ (WebInspector.TabbedPane.prototype.appendTab):
+ * inspector/front-end/TextViewer.js:
+ (WebInspector.TextViewer.prototype.elementsToRestoreScrollPositionsFor):
+ (WebInspector.TextViewer.prototype.inheritScrollPositions):
+ (WebInspector.TextViewer.prototype.onResize):
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel.prototype.onResize):
+ (WebInspector.TimelinePanel.prototype.elementsToRestoreScrollPositionsFor):
+ (WebInspector.TimelinePanel.prototype.show):
+ * inspector/front-end/View.js:
+ (WebInspector.View):
+ (WebInspector.View.prototype.wasShown):
+ (WebInspector.View.prototype.willHide):
+ (WebInspector.View.prototype._innerShow):
+ (WebInspector.View.prototype.show):
+ (WebInspector.View.prototype._innerHide):
+ (WebInspector.View.prototype.hide):
+ (WebInspector.View.prototype._detach):
+ (WebInspector.View.prototype.elementsToRestoreScrollPositionsFor):
+ (WebInspector.View.prototype.storeScrollPositions):
+ (WebInspector.View.prototype.restoreScrollPositions):
+ (WebInspector.View.prototype.addChildView):
+ (WebInspector.View.prototype.removeChildView):
+ (WebInspector.View.prototype.onResize):
+ (WebInspector.View.prototype.doResize):
+ (WebInspector.View.prototype.dispatchToSelfAndVisibleChildren):
+ (WebInspector.View.prototype.dispatchToVisibleChildren):
+ * inspector/front-end/inspector.js:
+ (WebInspector.windowResize):
+
+2011-08-16 Luke Macpherson <macpherson@chromium.org>
+
+ Represent RenderStyle::textOverflow property using an enum instead of a bool.
+ https://bugs.webkit.org/show_bug.cgi?id=66356
+
+ Reviewed by Dan Bernstein.
+
+ No new tests - no behavioral changes.
+
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ Support cast from TextOverflow to CSSPrimitiveValue.
+ (WebCore::CSSPrimitiveValue::operator TextOverflow):
+ Support cast from CSSPrimitiveValue to TextOverflow.
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ Use HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE macro for text overflow.
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::textOverflow):
+ Return TextOverflow enum.
+ (WebCore::InheritedFlags::setTextOverflow):
+ Accept TextOverflow enum parameter.
+ (WebCore::InheritedFlags::initialTextOverflow):
+ Return TextOverflowClip.
+ * rendering/style/RenderStyleConstants.h:
+ Define TextOverflow enum.
+ * rendering/style/StyleRareNonInheritedData.h:
+ Change representation of text overflow from bool to one-bit unsigned.
+
+2011-08-16 Jeff Miller <jeffm@apple.com>
+
+ Apple's Windows production build should fail to compile if AVFoundation is not enabled
+ https://bugs.webkit.org/show_bug.cgi?id=66339
+
+ Generate a compile-time error for Production builds if !USE(AVFOUNDATION).
+
+ Reviewed by Darin Adler.
+
+ * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationCF.cpp: Generate a compile-time error for Production builds if !USE(AVFOUNDATION).
+
+2011-08-16 David Levin <levin@chromium.org>
+
+ REGRESSION (r89086): All worker xhr requests trigger preflight requests.
+ https://bugs.webkit.org/show_bug.cgi?id=66340
+
+ Reviewed by Adam Barth.
+
+ Test coming in a more comprehensive patch shortly. This is just a very targetted
+ patch to allow for easier merging.
+
+ * loader/CrossOriginAccessControl.cpp:
+ (WebCore::isOnAccessControlSimpleRequestHeaderWhitelist): Add referer to the list
+ of whitelisted headers. It can't be set by xhr so it is ok to whitelist it, but it is
+ set before calling this function. This is similar to what is done for "origin" in here.
+
+2011-08-16 Shawn Singh <shawnsingh@chromium.org>
+
+ Computing screen-space transform for LayerChromium and CCLayerImpl
+ https://bugs.webkit.org/show_bug.cgi?id=66114
+
+ Reviewed by James Robinson.
+
+ Test: compositing/backface-visibility-hierarchical-transform.html
+
+ Added a data member to LayerChromium and CCLayerImpl that holds
+ the screen-space transform. The transform is computed in
+ calculateDrawTransformsAndVisibility(), which is used during
+ updating (LayerChromium) and drawing (CCLayerImpl). This transform
+ will also be used for other things, such as HUD drawing, in upcoming
+ patches.
+
+ Also fixed a FIXME in LayerRendererChromium::drawLayer, which
+ was not computing the entire hierarchy of transforms to determine
+ back-face visibility. Now it simply uses the screen space transform.
+
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::screenSpaceDrawTransform):
+ (WebCore::LayerChromium::setScreenSpaceDrawTransform):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::updateLayers):
+ (WebCore::LayerRendererChromium::drawLayersInternal):
+ (WebCore::LayerRendererChromium::drawLayer):
+ (WebCore::calculateDrawTransformsAndVisibility):
+ * platform/graphics/chromium/cc/CCLayerImpl.h:
+ (WebCore::CCLayerImpl::screenSpaceDrawTransform):
+ (WebCore::CCLayerImpl::setScreenSpaceDrawTransform):
+
+2011-08-16 Hayato Ito <hayato@chromium.org>
+
+ Implement proper handling of events which happen in children of shadow hosts.
+ https://bugs.webkit.org/show_bug.cgi?id=66285
+
+ Reviewed by Dimitri Glazkov.
+
+ Fix the issue where a shadow host stops an event propagation if an
+ event happens at the children of shadow hosts, outside of the shadow root.
+
+ Test: fast/dom/shadow/shadow-contents-event.html
+
+ * dom/EventDispatcher.cpp:
+ (WebCore::EventDispatcher::adjustToShadowBoundaries):
+
+2011-08-16 Per-Erik Brodin <per-erik.brodin@ericsson.com>
+
+ Make it possible to explicitly prevent a preflight via ThreadableLoaderOptions
+ https://bugs.webkit.org/show_bug.cgi?id=65694
+
+ Reviewed by Alexey Proskuryakov.
+
+ No new tests since there is no change in behavior.
+
+ * fileapi/FileReaderLoader.cpp:
+ (WebCore::FileReaderLoader::start):
+ * loader/DocumentThreadableLoader.cpp:
+ (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
+ (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest):
+ * loader/ThreadableLoader.h:
+ (WebCore::ThreadableLoaderOptions::ThreadableLoaderOptions):
+ * notifications/Notification.cpp:
+ (WebCore::Notification::startLoading):
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::createRequest):
+
+2011-08-16 Scott Byer <scottbyer@chromium.org>
+
+ Fix spelling error.
+ https://bugs.webkit.org/show_bug.cgi?id=66261
+
+ Reviewed by Adam Barth.
+
+ No functional change, no tests needed.
+
+ * platform/ScrollAnimator.cpp:
+ (WebCore::ScrollAnimator::scroll):
+ (WebCore::ScrollAnimator::scrollToOffsetWithoutAnimation):
+ (WebCore::ScrollAnimator::notifyPositionChanged):
+ * platform/ScrollAnimator.h:
+ * platform/ScrollAnimatorNone.cpp:
+ (WebCore::ScrollAnimatorNone::scrollToOffsetWithoutAnimation):
+ (WebCore::ScrollAnimatorNone::animationTimerFired):
+ * platform/ScrollAnimatorWin.cpp:
+ (WebCore::ScrollAnimatorWin::scrollToOffsetWithoutAnimation):
+ (WebCore::ScrollAnimatorWin::animateScroll):
+ * platform/chromium/ScrollAnimatorChromiumMac.h:
+ * platform/chromium/ScrollAnimatorChromiumMac.mm:
+ (WebCore::ScrollAnimatorChromiumMac::immediateScrollToPoint):
+ (WebCore::ScrollAnimatorChromiumMac::immediateScrollByDeltaX):
+ (WebCore::ScrollAnimatorChromiumMac::immediateScrollByDeltaY):
+ (WebCore::ScrollAnimatorChromiumMac::notifyPositionChanged):
+ * platform/mac/ScrollAnimatorMac.h:
+ * platform/mac/ScrollAnimatorMac.mm:
+ (WebCore::ScrollAnimatorMac::immediateScrollToPoint):
+ (WebCore::ScrollAnimatorMac::immediateScrollByDeltaX):
+ (WebCore::ScrollAnimatorMac::immediateScrollByDeltaY):
+ (WebCore::ScrollAnimatorMac::notifyPositionChanged):
+
+2011-08-16 Joseph Pecoraro <joepeck@webkit.org>
+
+ ASSERT in fast/css/custom-font-xheight.html
+ https://bugs.webkit.org/show_bug.cgi?id=66328
+
+ Reviewed by Dan Bernstein.
+
+ In r93140 the temporary font created for a remote CSS font face
+ was created without being retained. We need to protect the
+ font from being purged while we hold onto it, so add a font cache
+ purge preventer.
+
+ * css/CSSFontFaceSource.cpp:
+ (WebCore::CSSFontFaceSource::getFontData):
+
+2011-08-16 Joseph Pecoraro <joepeck@webkit.org>
+
+ Unreviewed Chromium Windows build fix after r93140. Take 4.
+ Namespace the now public enum as FontCache::ShouldRetain.
+
+ * platform/graphics/chromium/FontCacheChromiumWin.cpp:
+ (WebCore::GetLastResortFallbackFontProcData::GetLastResortFallbackFontProcData):
+
+2011-08-15 Stephen White <senorblanco@chromium.org>
+
+ Canvas resizing can be slow
+ https://bugs.webkit.org/show_bug.cgi?id=66251
+
+ Canvas resizing was slow due to re-allocation of the ImageBuffer on
+ each size change (width or height). This was introduced inadvertently
+ by calls to isAccelerated() during canvas reset(). Since we won't
+ know if we have successfully accelerated until ImageBuffer creation,
+ move the compositor invalidation to createImageBuffer() as well.
+ This patch also attempts to unify the Skia and CG accelerated canvas
+ paths. The DrawingBuffer used by the Skia path is now owned by
+ ImageBuffer[Skia], similar to how the IOSurface is owned by
+ ImageBuffer[CG]. Some of the logic for when to accelerate was moved
+ into HTMLCanvasElement and unified with the CG path. Acceleration is
+ also now enabled by the same "Accelerated" ImageBuffer create flag
+ used by the CG path. DrawingBuffer is now re-created even for a
+ same-size change (same as the memory buffer), but we speed it up
+ by calling GraphicsContext3D::texImage2D() with a NULL pixels ptr
+ instead of GraphicsContext3D::teximage2DResourceSafe() (no need to
+ clear it, since it's done with a glClear anyway).
+
+ Reviewed by Kenneth Russell.
+
+ Covered by existing tests in fast/canvas and canvas/philip.
+
+ * html/HTMLCanvasElement.cpp:
+ (WebCore::HTMLCanvasElement::reset):
+ Don't call isAccelerated() from reset(), since we don't want to
+ inadvertently create the ImageBuffer. Also, since we won't know if
+ we have successfully accelerated until createImageBuffer() is
+ called, defer the compositor invalidation to createImageBuffer() as
+ well.
+ (WebCore::HTMLCanvasElement::shouldAccelerate):
+ Unify the CG and Skia ports' logic for when to accelerate (Skia
+ logic moved in from CanvasRenderingContext2D).
+ (WebCore::HTMLCanvasElement::createImageBuffer):
+ Use the unified shouldAccelerate() logic, and pass it as a flag
+ to ImageBuffer. Do compositor invalidation as well.
+ * html/HTMLCanvasElement.h:
+ (WebCore::HTMLCanvasElement::hasCreatedImageBuffer):
+ Expose hasCreatedImageBuffer() publically, so
+ CanvasRenderingContext2D::isAccelerated() doesn't inadvertently create
+ it.
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
+ (WebCore::CanvasRenderingContext2D::~CanvasRenderingContext2D):
+ Remove all acceleration setting and resetting, since it's now done
+ during ImageBuffer creation.
+ (WebCore::CanvasRenderingContext2D::isAccelerated):
+ Check if the image buffer was created, so we don't inadvertently
+ create it here.
+ (WebCore::CanvasRenderingContext2D::paintsIntoCanvasBuffer):
+ Don't call GraphicsContext3D::paintsIntoCanvasBuffer(), since its
+ WebViewImpl may be null. Ask the render tree instead.
+ (WebCore::CanvasRenderingContext2D::reset):
+ Don't reset acceleration here, since we don't own it anymore.
+ (WebCore::CanvasRenderingContext2D::platformLayer):
+ Call into the ImageBuffer to get our PlatformLayer.
+ * html/canvas/CanvasRenderingContext2D.h:
+ Remove m_drawingBuffer, and all acceleration-related calls.
+ * platform/graphics/GraphicsContext.cpp:
+ * platform/graphics/GraphicsContext.h:
+ Remove setGraphicsContext3D(), and paintsIntoImageBuffer().
+ * platform/graphics/ImageBuffer.cpp:
+ (WebCore::ImageBuffer::platformLayer):
+ Implement a dummy platformLayer() call for non-skia ports.
+ * platform/graphics/ImageBuffer.h:
+ Declare a platformLayer() call (USE(ACCELERATED_COMPOSITING) only).
+ * platform/graphics/chromium/ImageBufferDataSkia.h:
+ Add a DrawingBuffer data member.
+ * platform/graphics/gpu/DrawingBuffer.cpp:
+ (WebCore::DrawingBuffer::reset):
+ Use texImage2D() with a NULL ptr, not texImage2DResourceSafe().
+ Since we immediately clear the framebuffer via glClear(), this whole
+ resource safe business is overkill.
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ Remove setGraphicsContext3D() and paintsIntoImageBuffer(). This
+ functionality is handled by ImageBuffer now.
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::ImageBuffer):
+ Give the ImageBufferData ownership of the DrawingBuffer.
+ (WebCore::ImageBuffer::platformLayer):
+ Implement an accessor for the DrawingBuffer's PlatformLayer.
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::setGraphicsContext3D):
+ * platform/graphics/skia/PlatformContextSkia.h:
+ Remove isPathSkiaSafe() extern (unused).
+ Remove paintsIntoImageBuffer() (now unused). Remove IntSize param
+ from setGraphicsContext3D() (unused).
+
+2011-08-16 Joseph Pecoraro <joepeck@webkit.org>
+
+ Unreviewed Chromium Windows build fix after r93140. Take 3.
+ Include the proper includes!
+
+ * platform/graphics/FontCache.h:
+
+2011-08-16 Mihnea Ovidenie <mihnea@adobe.com>
+
+ Unmatrix algorithm implementation is wrong
+ https://bugs.webkit.org/show_bug.cgi?id=66080
+
+ Reviewed by Dean Jackson.
+
+ Current version of the algorithm negates only the scaleX while
+ it should negate also scaleY and scaleZ when appropriate.
+
+ Test: animations/animation-matrix-negative-scale-unmatrix.html
+
+ * platform/graphics/transforms/TransformationMatrix.cpp:
+ (WebCore::decompose):
+
+2011-08-16 Joseph Pecoraro <joepeck@webkit.org>
+
+ Unreviewed Chromium Windows build fix after r93140.
+
+ This just makes the troublesome enum public. If this
+ fixes the build I will file a follow-up bug to clean-up
+ these build issues and either keep the enum public and
+ cleanup other functions or restore the enum to private.
+ There is no harm in making the enum public right now.
+
+ * platform/graphics/FontCache.h:
+
+2011-08-16 Joseph Pecoraro <joepeck@webkit.org>
+
+ Unreviewed Chromium Windows build fix after r93140.
+
+ * platform/graphics/FontCache.h:
+
+2011-08-16 Joseph Pecoraro <joepeck@webkit.org>
+
+ Unreviewed Windows and Chromium Windows build fix after r93140.
+
+ * platform/graphics/FontCache.h:
+ * platform/graphics/chromium/FontCacheChromiumWin.cpp:
+ (WebCore::FontCache::fontDataFromDescriptionAndLogFont):
+ (WebCore::getLastResortFallbackFontProc):
+ (WebCore::FontCache::getLastResortFallbackFont):
+ * platform/graphics/win/FontCacheWin.cpp:
+ (WebCore::FontCache::fontDataFromDescriptionAndLogFont):
+ (WebCore::FontCache::getLastResortFallbackFont):
+
+2011-08-16 Adam Roben <aroben@apple.com>
+
+ Make placeholder text remain visible until a character is typed on Windows
+
+ Fixes <http://webkit.org/b/66319> Placeholder text in text fields disappears when the field
+ is focused on Windows, which doesn't match Lion or Windows native text fields
+
+ Covered by existing tests (which are currently failing on the bots until this patch lands).
+
+ Reviewed by Dave Hyatt.
+
+ * rendering/RenderThemeSafari.h:
+ (WebCore::RenderThemeSafari::shouldShowPlaceholderWhenFocused):
+ * rendering/RenderThemeWin.h:
+ (WebCore::RenderThemeWin::shouldShowPlaceholderWhenFocused):
+ Added overrides to return true.
+
+2011-08-16 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=66254
+
+ Make region invalidation and repainting work properly. We do this by making RenderFlowThreads into
+ repaint containers and then issuing new repaints in the regions that contain the invalidated flow thread
+ content.
+
+ Reviewed by Simon Fraser.
+
+ Added new tests in fast/repaint.
+
+ * rendering/RenderFlowThread.cpp:
+ (WebCore::RenderFlowThread::repaintRectangleInRegions):
+ * rendering/RenderFlowThread.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::enclosingRenderFlowThread):
+ (WebCore::RenderObject::containerForRepaint):
+ (WebCore::RenderObject::repaintUsingContainer):
+ * rendering/RenderObject.h:
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::RenderView):
+ (WebCore::RenderView::renderFlowThreadWithName):
+ * rendering/RenderView.h:
+ (WebCore::RenderView::hasRenderFlowThreads):
+
+2011-08-16 Joseph Pecoraro <joepeck@webkit.org>
+
+ Abandoned Memory: Temporary CSS Fonts May Never Be Purged
+ https://bugs.webkit.org/show_bug.cgi?id=66153
+
+ Reviewed by Dan Bernstein.
+
+ While a remote CSS font face is loading we fallback to a
+ temporary font. We don't want to retain the fallback font
+ because noone takes ownership of the temporary font. This
+ patch adds a way to get an uncached fallback font, which
+ plumbs the ShouldRetain enum through the different platform
+ implementations of getLastResortFallbackFont.
+
+ No new tests, no functional change.
+
+ * css/CSSFontFaceSource.cpp:
+ (WebCore::CSSFontFaceSource::getFontData):
+ * platform/graphics/FontCache.cpp:
+ (WebCore::FontCache::getNonRetainedLastResortFallbackFont):
+ * platform/graphics/FontCache.h:
+ * platform/graphics/chromium/FontCacheChromiumWin.cpp:
+ (WebCore::fontDataFromDescriptionAndLogFont):
+ (WebCore::GetLastResortFallbackFontProcData::GetLastResortFallbackFontProcData):
+ (WebCore::getLastResortFallbackFontProc):
+ (WebCore::FontCache::getLastResortFallbackFont):
+ * platform/graphics/chromium/FontCacheLinux.cpp:
+ (WebCore::FontCache::getLastResortFallbackFont):
+ * platform/graphics/freetype/FontCacheFreeType.cpp:
+ (WebCore::FontCache::getLastResortFallbackFont):
+ * platform/graphics/haiku/FontCacheHaiku.cpp:
+ (WebCore::FontCache::getLastResortFallbackFont):
+ * platform/graphics/mac/FontCacheMac.mm:
+ (WebCore::FontCache::getLastResortFallbackFont):
+ * platform/graphics/pango/FontCachePango.cpp:
+ (WebCore::FontCache::getLastResortFallbackFont):
+ * platform/graphics/qt/FontCacheQt.cpp:
+ (WebCore::FontCache::getLastResortFallbackFont):
+ * platform/graphics/win/FontCacheWin.cpp:
+ (WebCore::fontDataFromDescriptionAndLogFont):
+ (WebCore::FontCache::getLastResortFallbackFont):
+ * platform/graphics/wince/FontCacheWinCE.cpp:
+ * platform/graphics/wx/FontCacheWx.cpp:
+ (WebCore::FontCache::getLastResortFallbackFont):
+
+2011-08-16 Alexei Svitkine <asvitkine@chromium.org>
+
+ Chromium Mac: Rubber banding gutter drawing
+ https://bugs.webkit.org/show_bug.cgi?id=66226
+
+ Make ScrollView::paintOverhangAreas() use the ScrollbarTheme::nativeTheme() to
+ draw the overhang areas.
+ Move default implementation to ScrollbarThemeComposite::paintOverhangAreas().
+ Add a different implementation for Chromium Mac.
+
+ Reviewed by Dimitri Glazkov.
+
+ No new tests since this is just refactoring code and adding a Chromium-specific path for overhang drawing.
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::wheelEvent):
+ * platform/ScrollbarTheme.h:
+ (WebCore::ScrollbarTheme::paintOverhangAreas):
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::paintOverhangAreas):
+ * platform/ScrollbarThemeComposite.h:
+ * platform/chromium/ScrollbarThemeChromiumMac.h:
+ * platform/chromium/ScrollbarThemeChromiumMac.mm:
+ (WebCore::ScrollbarThemeChromiumMac::ScrollbarThemeChromiumMac):
+ (WebCore::scrollbarStateToThemeState):
+ (WebCore::ScrollbarThemeChromiumMac::paintTickmarks):
+ (WebCore::ScrollbarThemeChromiumMac::paintOverhangAreas):
+
+2011-08-12 Wyatt Carss <wcarss@chromium.org>
+
+ Programmatically set selection should not have direction on Mac
+ https://bugs.webkit.org/show_bug.cgi?id=60529
+
+ Reviewed by Ryosuke Niwa.
+
+ Modified default value of VisibleSelection->m_isDirectional from 'true'
+ to 'false' by adding a defaulted argument to several VisibleSelection
+ constructors to make programmatic selection be directionless by default
+ on Mac. Also modified several calls to VisibleSelection's constructors
+ to correctly preserve directionality.
+
+ Near the end of FrameSelection::modify (presently FrameSelection.cpp:869)
+ a call to setExtent triggers an editing delegate that uses the
+ FrameSelection. The direction here should have been preserved from before,
+ but setIsDirectional was not called until after FrameSelection.cpp:869. It
+ has been moved up to make things behave.
+
+ * WebCore.exp.in:
+ * editing/ApplyBlockElementCommand.cpp:
+ (WebCore::ApplyBlockElementCommand::doApply):
+ (WebCore::ApplyBlockElementCommand::formatSelection):
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::updateStartEnd):
+ * editing/BreakBlockquoteCommand.cpp:
+ (WebCore::BreakBlockquoteCommand::doApply):
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::CompositeEditCommand::moveParagraphWithClones):
+ (WebCore::CompositeEditCommand::moveParagraphs):
+ (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
+ (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
+ * editing/CreateLinkCommand.cpp:
+ (WebCore::CreateLinkCommand::doApply):
+ * editing/DeleteSelectionCommand.cpp:
+ (WebCore::DeleteSelectionCommand::setStartingSelectionOnSmartDelete):
+ (WebCore::DeleteSelectionCommand::doApply):
+ * editing/Editor.cpp:
+ (WebCore::Editor::selectionForCommand):
+ * editing/FrameSelection.cpp:
+ (WebCore::shouldAlwaysUseDirectionalSelection):
+ (WebCore::FrameSelection::FrameSelection):
+ (WebCore::FrameSelection::moveTo):
+ (WebCore::FrameSelection::setNonDirectionalSelectionIfNeeded):
+ (WebCore::FrameSelection::modify):
+ (WebCore::FrameSelection::setBase):
+ (WebCore::FrameSelection::setExtent):
+ * editing/FrameSelection.h:
+ * editing/InsertLineBreakCommand.cpp:
+ (WebCore::InsertLineBreakCommand::doApply):
+ * editing/InsertListCommand.cpp:
+ (WebCore::InsertListCommand::doApply):
+ * editing/InsertParagraphSeparatorCommand.cpp:
+ (WebCore::InsertParagraphSeparatorCommand::doApply):
+ * editing/InsertTextCommand.cpp:
+ (WebCore::InsertTextCommand::performTrivialReplace):
+ (WebCore::InsertTextCommand::doApply):
+ * editing/MoveSelectionCommand.cpp:
+ (WebCore::MoveSelectionCommand::doApply):
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplaceSelectionCommand::completeHTMLReplacement):
+ * editing/TypingCommand.cpp:
+ (WebCore::TypingCommand::makeEditableRootEmpty):
+ (WebCore::TypingCommand::deleteKeyPressed):
+ (WebCore::TypingCommand::forwardDeleteKeyPressed):
+ * editing/VisibleSelection.cpp:
+ (WebCore::VisibleSelection::VisibleSelection):
+ * editing/VisibleSelection.h:
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::updateSelectionForMouseDownDispatchingSelectStart):
+ (WebCore::EventHandler::updateSelectionForMouseDrag):
+
+2011-08-16 Jeffrey Pfau <jpfau@apple.com>
+
+ New XML parser: Add document fragment parser
+ https://bugs.webkit.org/show_bug.cgi?id=66317
+
+ Reviewed by Adam Barth.
+
+ * dom/DocumentFragment.cpp:
+ (WebCore::DocumentFragment::parseXML):
+ * xml/parser/NewXMLDocumentParser.cpp:
+ (WebCore::NewXMLDocumentParser::NewXMLDocumentParser):
+ (WebCore::NewXMLDocumentParser::parseDocumentFragment):
+ * xml/parser/NewXMLDocumentParser.h:
+ (WebCore::NewXMLDocumentParser::create):
+ * xml/parser/XMLTokenizer.h:
+ * xml/parser/XMLTreeBuilder.cpp:
+ (WebCore::XMLTreeBuilder::XMLTreeBuilder):
+ (WebCore::XMLTreeBuilder::pushCurrentNode):
+ * xml/parser/XMLTreeBuilder.h:
+ (WebCore::XMLTreeBuilder::create):
+ (WebCore::XMLTreeBuilder::NodeStackItem::node):
+
+2011-08-16 Jeffrey Pfau <jpfau@apple.com>
+
+ New XML parser: Replace assertions regarding character data in the prolog with proper checks
+ https://bugs.webkit.org/show_bug.cgi?id=66269
+
+ Reviewed by Adam Barth.
+
+ This patch checks for character data in the prolog (which is illegal in XML) and discards it, instead of failing an assertion.
+
+ * xml/parser/XMLTreeBuilder.cpp:
+ (WebCore::XMLTreeBuilder::processProcessingInstruction):
+ (WebCore::XMLTreeBuilder::processXMLDeclaration):
+ (WebCore::XMLTreeBuilder::processDOCTYPE):
+ (WebCore::XMLTreeBuilder::enterText):
+ (WebCore::XMLTreeBuilder::failOnText):
+ * xml/parser/XMLTreeBuilder.h:
+
+2011-08-16 Alexander Pavlov <apavlov@chromium.org>
+
+ Web Inspector: word wrap long edits
+ https://bugs.webkit.org/show_bug.cgi?id=65512
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/inspector.css:
+ (.styles-section .properties li.child-editing):
+
+2011-08-16 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: convert DOM breakpoint types to strings.
+ https://bugs.webkit.org/show_bug.cgi?id=66304
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/Inspector.json:
+ * inspector/InspectorDOMDebuggerAgent.cpp:
+ (WebCore::domTypeForName):
+ (WebCore::InspectorDOMDebuggerAgent::setDOMBreakpoint):
+ (WebCore::InspectorDOMDebuggerAgent::removeDOMBreakpoint):
+ * inspector/InspectorDOMDebuggerAgent.h:
+ * inspector/front-end/DOMBreakpointsSidebarPane.js:
+ (WebInspector.DOMBreakpointsSidebarPane):
+
+2011-08-16 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: force pseudo element state when checking it in the styles sidebar.
+ https://bugs.webkit.org/show_bug.cgi?id=66292
+
+ This reverts http://trac.webkit.org/changeset/89132 and introduces InspectorInstrumentation
+ calls from the CSSStyleSelector for pseudo state processing. These calls are very fast:
+ they are guarded with the inline checks for the front-end count.
+
+ Reviewed by David Hyatt.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::initForStyleResolve):
+ (WebCore::CSSStyleSelector::styleRulesForElement):
+ (WebCore::CSSStyleSelector::pseudoStyleRulesForElement):
+ (WebCore::CSSStyleSelector::checkSelector):
+ (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
+ (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
+ * css/CSSStyleSelector.h:
+ * inspector/InspectorCSSAgent.cpp:
+ (WebCore::computePseudoClassMask):
+ (WebCore::InspectorCSSAgent::InspectorCSSAgent):
+ (WebCore::InspectorCSSAgent::clearFrontend):
+ (WebCore::InspectorCSSAgent::forcePseudoState):
+ (WebCore::InspectorCSSAgent::getStylesForNode):
+ (WebCore::InspectorCSSAgent::didRemoveDocument):
+ (WebCore::InspectorCSSAgent::didRemoveDOMNode):
+ (WebCore::InspectorCSSAgent::clearPseudoState):
+ * inspector/InspectorCSSAgent.h:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::disconnectFrontend):
+ * inspector/InspectorInstrumentation.cpp:
+ (WebCore::InspectorInstrumentation::forcePseudoStateImpl):
+ * inspector/InspectorInstrumentation.h:
+ (WebCore::InspectorInstrumentation::forcePseudoState):
+
+2011-08-16 Tony Chang <tony@chromium.org>
+
+ Unreviewed, rolling out r93114.
+ http://trac.webkit.org/changeset/93114
+ https://bugs.webkit.org/show_bug.cgi?id=66226
+
+ broke the chromium mac compile
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::wheelEvent):
+ * platform/ScrollbarTheme.h:
+ * platform/ScrollbarThemeComposite.cpp:
+ * platform/ScrollbarThemeComposite.h:
+ * platform/chromium/ScrollbarThemeChromiumMac.h:
+ * platform/chromium/ScrollbarThemeChromiumMac.mm:
+ (WebCore::ScrollbarThemeChromiumMac::ScrollbarThemeChromiumMac):
+ (WebCore::scrollbarStateToThemeState):
+ (WebCore::ScrollbarThemeChromiumMac::paintTickmarks):
+ * platform/mac/ScrollbarThemeMac.h:
+
+2011-08-16 Alexei Svitkine <asvitkine@chromium.org>
+
+ Chromium Mac: Rubber banding gutter drawing
+ https://bugs.webkit.org/show_bug.cgi?id=66226
+
+ Make ScrollView::paintOverhangAreas() use the ScrollbarTheme::nativeTheme() to
+ draw the overhang areas.
+ Move default implementation to ScrollbarThemeComposite::paintOverhangAreas().
+ Add a different implementation for Chromium Mac.
+
+ Reviewed by Dimitri Glazkov.
+
+ No new tests since this is just refactoring code and adding a Chromium-specific path for overhang drawing.
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::wheelEvent):
+ * platform/ScrollbarTheme.h:
+ (WebCore::ScrollbarTheme::paintOverhangAreas):
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::paintOverhangAreas):
+ * platform/ScrollbarThemeComposite.h:
+ * platform/chromium/ScrollbarThemeChromiumMac.h:
+ * platform/chromium/ScrollbarThemeChromiumMac.mm:
+ (WebCore::ScrollbarThemeChromiumMac::ScrollbarThemeChromiumMac):
+ (WebCore::scrollbarStateToThemeState):
+ (WebCore::ScrollbarThemeChromiumMac::paintTickmarks):
+ (WebCore::ScrollbarThemeChromiumMac::paintOverhangAreas):
+
+2011-08-16 Luke Macpherson <macpherson@chromium.org>
+
+ Support cast between CSSPrimitiveValue and ETransformStyle3D and use in CSSStyleSelector.
+ https://bugs.webkit.org/show_bug.cgi?id=66273
+
+ Reviewed by Simon Fraser.
+
+ No new tests - no functionality changed - refactoring only.
+
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ Define cast from CSSPrimitiveValue to ETransformStyle3D.
+ (WebCore::CSSPrimitiveValue::operator ETransformStyle3D):
+ Define cast from ETransformStyle3D to CSSPrimitiveValue.
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ Use appropriate macro to handle CSSPropertyWebkitTransformStyle.
+
+2011-08-16 Luke Macpherson <macpherson@chromium.org>
+
+ Use appropriate macro to handle CSSPropertyWebkitContentOrder in CSSStyleSelector::applyProperty()
+ https://bugs.webkit.org/show_bug.cgi?id=66279
+
+ Reviewed by Simon Fraser.
+
+ No new tests - no functionality changed - simple refactoring only.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ Use HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE macro to handle CSSPropertyWebkitContentOrder.
+ This works because PrimitiveValue now supports cast to int.
+
+2011-08-16 Eric Carlson <eric.carlson@apple.com>
+
+ [REGRESSION] Media controls should always be enabled when scripting is disabled
+ https://bugs.webkit.org/show_bug.cgi?id=66303
+
+ Reviewed by Dimitri Glazkov.
+
+ Tests: media/video-controls-no-scripting-iframe.html
+ media/video-controls-no-scripting.html
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::attributeChanged): Move the controls enabling/disabling code
+ to configureMediaControls.
+ (WebCore::HTMLMediaElement::prepareForLoad): Call configureMediaControls.
+ (WebCore::HTMLMediaElement::configureMediaControls): New, move code duplicated in
+ attributeChanged and preDispatchEventHandler here.
+ (WebCore::HTMLMediaElement::preDispatchEventHandler): Move the controls enabling/disabling code
+ to configureMediaControls.
+ * html/HTMLMediaElement.h:
+
+2011-08-16 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: hide non-conservative methods from the protocol documentation.
+ https://bugs.webkit.org/show_bug.cgi?id=66301
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/Inspector.json:
+
+2011-08-16 Andras Becsi <abecsi@webkit.org>
+
+ Web Inspector: nuke background events collection (dead feature)
+ https://bugs.webkit.org/show_bug.cgi?id=66296
+
+ Fix the GTK build after r93095.
+
+ Unreviewed build fix.
+
+ No new tests neede.
+
+ * GNUmakefile.list.am: Remove nonexistent sources.
+
+2011-08-16 Andras Becsi <abecsi@webkit.org>
+
+ Reviewed by Csaba Osztrogonác.
+
+ Need AtomicStrings for the various font family names
+ https://bugs.webkit.org/show_bug.cgi?id=28024
+
+ Unify the usage of '-webkit' prefixed font family names by using
+ global AtomicStrings.
+ Use a .in file to generate the needed sources through make_names.pl.
+
+ No new tests needed.
+
+ * CMakeLists.txt:
+ * CodeGenerators.pri:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * GNUmakefile.list.am:
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gyp/scripts/action_makenames.py:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::identifierForFamily):
+ * css/CSSFontSelector.cpp:
+ (WebCore::CSSFontSelector::addFontFaceRule):
+ (WebCore::fontDataForGenericFamily):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * css/WebKitFontFamilyNames.in: Added.
+ * dom/make_names.pl:
+ * page/Frame.cpp:
+ (WebCore::Frame::Frame):
+ * platform/graphics/FontCache.cpp:
+ (WebCore::FontCache::getFontData):
+ * platform/graphics/FontDescription.h:
+ (WebCore::FontDescription::useFixedDefaultSize):
+
+2011-08-16 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: nuke background events collection (dead feature)
+ https://bugs.webkit.org/show_bug.cgi?id=66296
+
+ Reviewed by Yury Semikhatsky.
+
+ * CMakeLists.txt:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * inspector/EventsCollector.cpp: Removed.
+ * inspector/EventsCollector.h: Removed.
+ * inspector/Inspector.json:
+ * inspector/InspectorFrontendProxy.cpp: Removed.
+ * inspector/InspectorFrontendProxy.h: Removed.
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::setFrontend):
+ (WebCore::InspectorResourceAgent::clearFrontend):
+ (WebCore::InspectorResourceAgent::InspectorResourceAgent):
+ * inspector/InspectorResourceAgent.h:
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkLogView):
+
+2011-08-16 Lindsay Mathieson <lindsay.mathieson@gmail.com>
+
+ [Qt] Missing spell check support
+ https://bugs.webkit.org/show_bug.cgi?id=44114
+
+ Reviewed by Benjamin Poulain.
+
+ Add drawErrorUnderline() from Cairo to render the line for text checking on the Qt port.
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::drawErrorUnderline):
+ (WebCore::GraphicsContext::drawLineForTextChecking):
+
+2011-08-15 MORITA Hajime <morrita@google.com>
+
+ REGRESSION(r70598): [Chromium] Style changes in textInput event can prevent from updating <textarea> value.
+ https://bugs.webkit.org/show_bug.cgi?id=66216
+
+ Reviewed by Ryosuke Niwa.
+
+ Element::spellcheckAttributeState() uses Element::hasAttribute(),
+ which calls updateStyleAttribute(), which potentially makes style
+ dirty. But that is problematic since Editor calls spellcheckAttributeState()
+ during the spell-checking phase and make the style dirty,
+ which can trigger re-layout, which wipes the shadow tree of a textarea
+ out by pre-committed "value" text.
+
+ This change removes the hasAttribute() call from
+ spellcheckAttributeState().
+
+ Test: editing/input/style-change-during-input.html
+
+ * dom/Element.cpp:
+ (WebCore::Element::spellcheckAttributeState):
+
+2011-08-15 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ [CMAKE] Wrap files of websocket and worker in each macro.
+ https://bugs.webkit.org/show_bug.cgi?id=65012
+
+ Move files of web socket and workers into each macro block in CMakeList.txt.
+ And, header files related to WORKER and SHARED_WORKER are wrapped by macro in cpp files.
+
+ Reviewed by Daniel Bates.
+
+ * CMakeLists.txt:
+ * UseJSC.cmake:
+ * bindings/js/JSDOMWindowCustom.cpp:
+ * bindings/js/JSWorkerContextBase.cpp:
+ * bindings/js/ScriptState.cpp:
+ * bindings/js/WorkerScriptController.cpp:
+
+2011-08-15 Jeffrey Pfau <jpfau@apple.com>
+
+ New XML parser: add xml namespace to the default map of namespaces
+ https://bugs.webkit.org/show_bug.cgi?id=66266
+
+ Reviewed by Adam Barth.
+
+ * xml/parser/XMLTreeBuilder.cpp:
+ (WebCore::XMLTreeBuilder::NodeStackItem::NodeStackItem):
+
+2011-08-15 Hayato Ito <hayato@chromium.org>
+
+ Fix crash when mouse moves from <summary> element to parent <details> element.
+ https://bugs.webkit.org/show_bug.cgi?id=66210
+
+ Reviewed by Dimitri Glazkov.
+
+ This is a regression caused by r92922, which wrongly assumes that
+ a shadow host always has a shadow root as an immediate child in
+ ancestors chain. This assumption does not apply to <details>
+ element. <details> element is implemented as a shadow host, but
+ may have a <summary> element as an immediate child element in
+ ancestors chain.
+
+ Test: fast/dom/shadow/details-summary-mouseover.html
+
+ * dom/EventDispatcher.cpp:
+ (WebCore::EventDispatcher::adjustToShadowBoundaries):
+
+2011-08-15 Jeffrey Pfau <jpfau@apple.com>
+
+ New XML parser: Use xmlnsAtom instead of redundant xmlnsPrefix
+ https://bugs.webkit.org/show_bug.cgi?id=66264
+
+ Reviewed by Adam Barth.
+
+ * xml/parser/XMLTreeBuilder.cpp:
+ (WebCore::XMLTreeBuilder::processNamespaces):
+ (WebCore::XMLTreeBuilder::processAttributes):
+
+2011-08-15 Emil A Eklund <eae@chromium.org>
+
+ Switch Element/Node to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66260
+
+ Reviewed by Eric Seidel.
+
+ Convert Element, Node, ElementRareData and ContainerNode to new layout
+ abstraction as a part of the ongoing conversion work.
+
+ No new tests, no new functionality.
+
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::getLowerRightCorner):
+ (WebCore::ContainerNode::getRect):
+ * dom/ContainerNode.h:
+ * dom/Element.cpp:
+ (WebCore::Element::scrollIntoView):
+ (WebCore::Element::scrollIntoViewIfNeeded):
+ (WebCore::adjustForLocalZoom):
+ (WebCore::Element::boundsInWindowSpace):
+ (WebCore::Element::getClientRects):
+ (WebCore::Element::getBoundingClientRect):
+ (WebCore::Element::screenRect):
+ (WebCore::Element::minimumSizeForResizing):
+ (WebCore::Element::setMinimumSizeForResizing):
+ * dom/Element.h:
+ * dom/ElementRareData.h:
+ * dom/Node.cpp:
+ (WebCore::Node::getRect):
+ (WebCore::Node::renderRect):
+ (WebCore::Node::hasNonEmptyBoundingBox):
+ * dom/Node.h:
+
+2011-08-15 Alexey Proskuryakov <ap@apple.com>
+
+ Regional indicator symbols that are combined should behave as a single character when editing
+ https://bugs.webkit.org/show_bug.cgi?id=65395
+
+ Reviewed by Dan Bernstein.
+
+ Part one: make backspace work.
+
+ Test: editing/deleting/regional-indicators.html
+
+ * rendering/RenderText.cpp:
+ (WebCore::isRegionalIndicator):
+ (WebCore::RenderText::previousOffsetForBackwardDeletion): Added a special case for regional
+ indicator symbols.
+
+2011-08-15 Jeffrey Pfau <jpfau@apple.com>
+
+ New XML parser: Re-entering a character node should not clobber the buffered characters
+ https://bugs.webkit.org/show_bug.cgi?id=66257
+
+ Reviewed by Adam Barth.
+
+ * xml/parser/XMLTreeBuilder.cpp:
+ (WebCore::XMLTreeBuilder::enterText):
+
+2011-08-15 Dmitry Titov <dimich@chromium.org>
+
+ FrameLoaderClient::transferLoadingResourceFromPage does not have enough parameters
+ https://bugs.webkit.org/show_bug.cgi?id=66165
+
+ Reviewed by Darin Fisher.
+
+ No new tests since no change in behavior.
+ The original issue is only reproducible on Chromium in multi-process mode
+ and is tested there by a browsertest.
+
+ * loader/DocumentLoader.cpp:
+ (WebCore::DocumentLoader::transferLoadingResourcesFromPage):
+ Passing ResourceLoader* into the FrameLoaderClient notification.
+ Also, fixed the bug where the same ResourceRequest was passed for all subresources.
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::transferLoadingResourceFromPage):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::dispatchTransferLoadingResourceFromPage):
+ * loader/FrameLoader.h:
+ * loader/FrameLoaderClient.h:
+ * loader/ResourceLoadNotifier.cpp:
+ (WebCore::ResourceLoadNotifier::dispatchTransferLoadingResourceFromPage):
+ * loader/ResourceLoadNotifier.h:
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::init):
+ * loader/ResourceLoader.h:
+ (WebCore::ResourceLoader::originalRequest): Added the originalRequest() accessor that
+ returns the request as it existed before redirects (but after client's will SendRequest).
+ This is to be able to pass the original request for loading subresources into
+ FrameLoaderClient::transferLoadingResourceFromPage, since that one is used to invoke
+ assignIdentifierToInitialRequest, which needs original request.
+
+2011-08-15 Mark Hahnenberg <mhahnenberg@apple.com>
+
+ Refactor JS objects to allocate in static create methods rather than constructors
+ https://bugs.webkit.org/show_bug.cgi?id=65347
+
+ Reviewed by Geoffrey Garen.
+
+ No new tests.
+
+ Removed all calls to deprecatedGetDOMObject from initialization lists as part of a
+ larger refactoring to get rid of all allocation during initialization.
+
+ * bindings/js/JSDOMBinding.h:
+ * bridge/c/CRuntimeObject.cpp:
+ (JSC::Bindings::CRuntimeObject::CRuntimeObject):
+ * bridge/c/CRuntimeObject.h:
+ (JSC::Bindings::CRuntimeObject::create):
+ * bridge/c/c_instance.cpp:
+ (JSC::Bindings::CRuntimeMethod::create):
+ (JSC::Bindings::CRuntimeMethod::CRuntimeMethod):
+ * bridge/jni/jsc/JavaInstanceJSC.cpp:
+ (JavaRuntimeMethod::create):
+ (JavaRuntimeMethod::JavaRuntimeMethod):
+ * bridge/jni/jsc/JavaRuntimeObject.cpp:
+ (JSC::Bindings::JavaRuntimeObject::JavaRuntimeObject):
+ * bridge/jni/jsc/JavaRuntimeObject.h:
+ (JSC::Bindings::JavaRuntimeObject::create):
+ * bridge/objc/objc_runtime.h:
+ (JSC::Bindings::ObjcFallbackObjectImp::create):
+ * bridge/objc/objc_runtime.mm:
+ (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtRuntimeObject::create):
+ (JSC::Bindings::QtRuntimeObject::QtRuntimeObject):
+ * bridge/qt/qt_pixmapruntime.cpp:
+ (JSC::Bindings::QtPixmapRuntimeObject::create):
+ (JSC::Bindings::QtPixmapRuntimeObject::QtPixmapRuntimeObject):
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
+ (JSC::Bindings::QtRuntimeMetaMethod::QtRuntimeMetaMethod):
+ (JSC::Bindings::QtRuntimeConnectionMethod::QtRuntimeConnectionMethod):
+ * bridge/qt/qt_runtime.h:
+ (JSC::Bindings::QtRuntimeMetaMethod::create):
+ (JSC::Bindings::QtRuntimeConnectionMethod::create):
+ * bridge/runtime_array.cpp:
+ (JSC::RuntimeArray::RuntimeArray):
+ * bridge/runtime_array.h:
+ (JSC::RuntimeArray::create):
+ * bridge/runtime_object.cpp:
+
+2011-08-15 Adam Roben <aroben@apple.com>
+
+ Update pages' style and content scale when the window's backing scale factor changes
+
+ Unfortunately, I couldn't think of a way to test this in an automated fashion.
+
+ Fixes <http://webkit.org/b/66229> <rdar://problem/9906269> WebKit doesn't react to device
+ scale factor changes
+
+ Reviewed by Simon Fraser.
+
+ * WebCore.exp.in: Export Frame::deviceOrScaleFactorChanged.
+
+ * page/Frame.cpp:
+ (WebCore::Frame::deviceScaleFactorChanged):
+ * page/Frame.h:
+ Added this new function. We recalc style so that, e.g., device-scale-factor-dependent media
+ queries will be reevaluated, and we tell compositing layers about the new scale factor so
+ they can rerender at the new resolution.
+
+2011-08-15 Cary Clark <caryclark@google.com>
+
+ Revise Skia on Chrome Mac to return fallback fonts.
+ https://bugs.webkit.org/show_bug.cgi?id=62986
+
+ Reviewed by Darin Fisher.
+
+ Since Skia on Chrome Mac uses CoreText to determine
+ text metrics, CG font architecture is used to return
+ fallback fonts.
+
+ This improves many existing layout tests, including
+ justify-ideograph-simple and t0905-c414-flt-04-c
+
+ * platform/graphics/skia/FontSkia.cpp:
+ (WebCore::Font::canReturnFallbackFontsForComplexText):
+
+2011-08-15 Aaron Boodman <aa@chromium.org>
+
+ Pass additional details to client in didCreateIsolatedContext
+ https://bugs.webkit.org/show_bug.cgi?id=66037
+
+ Reviewed by Darin Fisher.
+
+ * bindings/v8/IsolatedWorld.cpp:
+ (WebCore::IsolatedWorld::IsolatedWorld):
+ * bindings/v8/IsolatedWorld.h:
+ (WebCore::IsolatedWorld::create):
+ (WebCore::IsolatedWorld::id):
+ * bindings/v8/V8IsolatedContext.cpp:
+ (WebCore::V8IsolatedContext::V8IsolatedContext):
+ * bindings/v8/V8IsolatedContext.h:
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::evaluateInIsolatedWorld):
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::didCreateIsolatedScriptContext):
+ * loader/FrameLoaderClient.h:
+
+2011-08-15 Chris Rogers <crogers@google.com>
+
+ Add shell implementation for Web Audio API's MediaElementAudioSourceNode
+ https://bugs.webkit.org/show_bug.cgi?id=66175
+
+ Reviewed by Kenneth Russell.
+
+ Test: webaudio/mediaelementaudiosourcenode.html
+
+ * DerivedSources.make:
+ * WebCore.gypi:
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/HTMLMediaElement.idl:
+ * webaudio/AudioContext.cpp:
+ (WebCore::AudioContext::createMediaElementSource):
+ * webaudio/AudioContext.h:
+ * webaudio/AudioContext.idl:
+ * webaudio/AudioNode.h:
+ * webaudio/MediaElementAudioSourceNode.cpp: Added.
+ (WebCore::MediaElementAudioSourceNode::create):
+ (WebCore::MediaElementAudioSourceNode::MediaElementAudioSourceNode):
+ (WebCore::MediaElementAudioSourceNode::process):
+ (WebCore::MediaElementAudioSourceNode::reset):
+ * webaudio/MediaElementAudioSourceNode.h: Added.
+ (WebCore::MediaElementAudioSourceNode::mediaElement):
+ * webaudio/MediaElementAudioSourceNode.idl: Added.
+
+2011-08-15 Emil A Eklund <eae@chromium.org>
+
+ Switch mouse events to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66179
+
+ Reviewed by Eric Seidel.
+
+ Convert mouse events to new layout abstraction as a part of the ongoing
+ conversion work.
+
+ No new tests, no new functionality.
+
+ * dom/MouseRelatedEvent.cpp:
+ (WebCore::contentsScrollOffset):
+ (WebCore::MouseRelatedEvent::MouseRelatedEvent):
+ (WebCore::MouseRelatedEvent::initCoordinates):
+ (WebCore::MouseRelatedEvent::computePageLocation):
+ (WebCore::MouseRelatedEvent::computeRelativePosition):
+ (WebCore::MouseRelatedEvent::pageLocation):
+ * dom/MouseRelatedEvent.h:
+ (WebCore::MouseRelatedEvent::screenLocation):
+ (WebCore::MouseRelatedEvent::clientLocation):
+ (WebCore::MouseRelatedEvent::absoluteLocation):
+ (WebCore::MouseRelatedEvent::setAbsoluteLocation):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::clear):
+ (WebCore::EventHandler::handleMousePressEventSingleClick):
+ (WebCore::selectionExtentRespectingEditingBoundary):
+ (WebCore::EventHandler::hitTestResultAtPoint):
+ (WebCore::EventHandler::currentMousePosition):
+ (WebCore::documentPointForWindowPoint):
+ (WebCore::EventHandler::handleMousePressEvent):
+ (WebCore::EventHandler::mouseMoved):
+ (WebCore::EventHandler::handleWheelEvent):
+ (WebCore::EventHandler::sendContextMenuEvent):
+ (WebCore::EventHandler::sendContextMenuEventForKey):
+ (WebCore::EventHandler::fakeMouseMoveEventTimerFired):
+ (WebCore::EventHandler::dragHysteresisExceeded):
+ (WebCore::EventHandler::handleDrag):
+ (WebCore::EventHandler::handleTouchEvent):
+ * page/EventHandler.h:
+ * platform/PlatformMouseEvent.h:
+ (WebCore::PlatformMouseEvent::PlatformMouseEvent):
+ (WebCore::PlatformMouseEvent::pos):
+ (WebCore::PlatformMouseEvent::x):
+ (WebCore::PlatformMouseEvent::y):
+ (WebCore::PlatformMouseEvent::globalX):
+ (WebCore::PlatformMouseEvent::globalY):
+ * platform/mac/PlatformMouseEventMac.mm:
+ (WebCore::globalPoint):
+ (WebCore::pointForEvent):
+ (WebCore::globalPointForEvent):
+
+2011-08-15 Ryosuke Niwa <rniwa@webkit.org>
+
+ webkit-indent-blockquote is unnecessary
+ https://bugs.webkit.org/show_bug.cgi?id=66195
+
+ Reviewed by Tony Chang.
+
+ Stop adding class="webkit-indent-blockquote" on blockquotes created by execCommand('Indent') and
+ execCommand('Outdent'). Also removed the code to add the class attribute in ApplyBlockElementCommand
+ since no other class inherited from ApplyBlockElementCommand uses this feature.
+
+ * editing/ApplyBlockElementCommand.cpp:
+ (WebCore::ApplyBlockElementCommand::ApplyBlockElementCommand):
+ (WebCore::ApplyBlockElementCommand::createBlockElement):
+ * editing/ApplyBlockElementCommand.h:
+ * editing/IndentOutdentCommand.cpp:
+ (WebCore::IndentOutdentCommand::IndentOutdentCommand):
+
+2011-08-15 Levi Weintraub <leviw@chromium.org>
+
+ Switch remaining SVG Rendering methods to LayoutUnits
+ https://bugs.webkit.org/show_bug.cgi?id=66169
+
+ Reviewed by Eric Seidel.
+
+ Changing remaining integer SVG methods to use the LayoutUnits abstraction.
+
+ No tests as no change in functionality.
+
+ * rendering/svg/RenderSVGBlock.cpp:
+ (WebCore::RenderSVGBlock::visualOverflowRect):
+ * rendering/svg/RenderSVGBlock.h:
+ * rendering/svg/RenderSVGContainer.cpp:
+ (WebCore::RenderSVGContainer::paint):
+ * rendering/svg/RenderSVGForeignObject.cpp:
+ (WebCore::RenderSVGForeignObject::paint):
+ (WebCore::RenderSVGForeignObject::clippedOverflowRectForRepaint):
+ (WebCore::RenderSVGForeignObject::computeRectForRepaint):
+ * rendering/svg/RenderSVGHiddenContainer.cpp:
+ (WebCore::RenderSVGHiddenContainer::paint):
+ * rendering/svg/RenderSVGImage.cpp:
+ (WebCore::RenderSVGImage::paint):
+ * rendering/svg/RenderSVGInlineText.cpp:
+ (WebCore::RenderSVGInlineText::linesBoundingBox):
+ * rendering/svg/RenderSVGInlineText.h:
+ * rendering/svg/RenderSVGModelObject.cpp:
+ (WebCore::RenderSVGModelObject::outlineBoundsForRepaint):
+ * rendering/svg/RenderSVGPath.cpp:
+ (WebCore::RenderSVGPath::paint):
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::localToBorderBoxTransform):
+ (WebCore::RenderSVGRoot::parentOriginToBorderBox):
+ (WebCore::RenderSVGRoot::borderOriginToContentBox):
+ (WebCore::RenderSVGRoot::localToRepaintContainerTransform):
+ (WebCore::RenderSVGRoot::localToParentTransform):
+ (WebCore::RenderSVGRoot::clippedOverflowRectForRepaint):
+ (WebCore::RenderSVGRoot::computeRectForRepaint):
+ * rendering/svg/RenderSVGRoot.h:
+ * rendering/svg/RenderSVGText.cpp:
+ (WebCore::RenderSVGText::paint):
+ * rendering/svg/SVGInlineFlowBox.cpp:
+ (WebCore::SVGInlineFlowBox::paint):
+ * rendering/svg/SVGInlineTextBox.cpp:
+ (WebCore::SVGInlineTextBox::paint):
+ * rendering/svg/SVGRenderSupport.cpp:
+ (WebCore::SVGRenderSupport::clippedOverflowRectForRepaint):
+ (WebCore::SVGRenderSupport::computeRectForRepaint):
+ * rendering/svg/SVGRenderSupport.h:
+ * rendering/svg/SVGRootInlineBox.cpp:
+ (WebCore::SVGRootInlineBox::paint):
+ (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
+ (WebCore::SVGRootInlineBox::layoutChildBoxes):
+ (WebCore::SVGRootInlineBox::layoutRootBox):
+ (WebCore::SVGRootInlineBox::closestLeafChildForPosition):
+ * rendering/svg/SVGRootInlineBox.h:
+
+2011-08-12 Jeff Miller <jeffm@apple.com>
+
+ MediaPlayerPrivateAVFoundationCF::playerItemStatus() should return MediaPlayerAVPlayerItemStatusDoesNotExist if there is no AVPlayerItem
+ https://bugs.webkit.org/show_bug.cgi?id=66171
+
+ MediaPlayerPrivateAVFoundationCF::playerItemStatus() should return MediaPlayerAVPlayerItemStatusDoesNotExist if there is no AVPlayerItem
+ to match the Mac implementation in MediaPlayerPrivateAVFoundationObjC. I also added better logging to notificationCallback().
+
+ Reviewed by Jon Honeycutt.
+
+ No new tests, uses existing media tests.
+
+ * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationCF.cpp:
+ (WebCore::MediaPlayerPrivateAVFoundationCF::playerItemStatus): Return MediaPlayerAVPlayerItemStatusDoesNotExist if no AVPlayerItem.
+ (WebCore::AVFWrapper::notificationCallback): Log the name of the received notification.
+
+2011-08-15 Adam Roben <aroben@apple.com>
+
+ Rename an instance of pageScaleFactorChanged I missed in r93040
+
+ I tried to make a test for this but failed. It would probably have been easier if we dumped
+ layers' content scales in layerTreeAsText output.
+
+ Followup to <http://webkit.org/b/55787> WebKit uses multiple conflicting names to refer to
+ the device scale factor
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::deviceOrPageScaleFactorChanged):
+ * platform/graphics/ca/GraphicsLayerCA.h:
+ Renamed from pageScaleFactorChanged to match the base class.
+
+2011-08-15 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: [V8] crash upon stepIn while not on pause.
+ https://bugs.webkit.org/show_bug.cgi?id=66221
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::resume):
+ (WebCore::InspectorDebuggerAgent::stepOver):
+ (WebCore::InspectorDebuggerAgent::stepInto):
+ (WebCore::InspectorDebuggerAgent::stepOut):
+ (WebCore::InspectorDebuggerAgent::assertPaused):
+ * inspector/InspectorDebuggerAgent.h:
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._stepOverClicked):
+ (WebInspector.ScriptsPanel.prototype._stepIntoClicked):
+ (WebInspector.ScriptsPanel.prototype._stepOutClicked):
+
+2011-08-15 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Network panel: display the current search match index in the toolbar.
+ https://bugs.webkit.org/show_bug.cgi?id=66051
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkLogView.prototype._highlightNthMatchedResource):
+ (WebInspector.NetworkLogView.prototype.performSearch):
+ (WebInspector.NetworkPanel):
+ (WebInspector.NetworkPanel.prototype._onSearchCountUpdated):
+ (WebInspector.NetworkPanel.prototype._onSearchIndexUpdated):
+
+2011-08-10 Adam Roben <aroben@apple.com>
+
+ Clear up scale factor terminology
+
+ WebKit by and large deals with two scale factors: one intrinsic to the device on which the
+ software is running, and one that is per-Page and can be controlled via API calls. This
+ patch names the former "deviceScaleFactor" and the latter "pageScaleFactor", and makes the
+ code use those names. It should introduce no behavior changes.
+
+ Fixes <http://webkit.org/b/55787> WebKit uses multiple conflicting names to refer to the
+ device scale factor
+
+ Reviewed by Simon Fraser.
+
+ * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
+ * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
+ Removed an unused member. This is unrelated to this patch.
+
+ * css/MediaQueryEvaluator.cpp:
+ * html/HTMLCanvasElement.cpp:
+ * html/HTMLCanvasElement.h:
+ * loader/EmptyClients.h:
+ * page/Chrome.cpp:
+ * page/Chrome.h:
+ * page/ChromeClient.h:
+ * page/DOMWindow.cpp:
+ * page/Frame.cpp:
+ * page/Frame.h:
+ * platform/graphics/GraphicsLayer.cpp:
+ * platform/graphics/GraphicsLayer.h:
+ * platform/graphics/GraphicsLayerClient.h:
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ * rendering/RenderInline.cpp:
+ * rendering/RenderLayerBacking.cpp:
+ * rendering/RenderLayerBacking.h:
+ * rendering/RenderLayerCompositor.cpp:
+ * rendering/RenderLayerCompositor.h:
+ * rendering/RenderObject.cpp:
+
+2011-08-15 Oliver Varga <Varga.Oliver@stud.u-szeged.hu>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Speed up SVGSMILElement::findInstanceTime.
+ https://bugs.webkit.org/show_bug.cgi?id=61025
+
+ Replace the linear search to binary search on ordered list because
+ the previous searches from the beginning was not efficient.
+ Out of index error fixed by Renata Hodovan.
+
+ No new tests this is only a performance tweak.
+
+ * svg/animation/SVGSMILElement.cpp:
+ (WebCore::extractTimeFromVector):
+ (WebCore::SVGSMILElement::findInstanceTime):
+
+2011-08-15 Hayato Ito <hayato@chromium.org>
+
+ Implement proper handling of focusin/focusout events in regard to shadow DOM boundaries.
+ https://bugs.webkit.org/show_bug.cgi?id=64249
+
+ Reviewed by Dimitri Glazkov.
+
+ Introduces FocusInEventDispatchMediator/FocusOutEventDispatchMediator so
+ that we can shrink ancestors of event target node considering shadow
+ DOM boundaries before dispatching focusin/focusout events.
+
+ Test: fast/dom/shadow/shadow-boundary-events.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::setFocusedNode):
+ * dom/Node.cpp:
+ (WebCore::Node::dispatchFocusInEvent):
+ (WebCore::Node::dispatchFocusOutEvent):
+ (WebCore::Node::dispatchDOMActivateEvent):
+ (WebCore::Node::defaultEventHandler):
+ * dom/Node.h:
+ * dom/UIEvent.cpp:
+ (WebCore::FocusInEventDispatchMediator::create):
+ (WebCore::FocusInEventDispatchMediator::FocusInEventDispatchMediator):
+ (WebCore::FocusInEventDispatchMediator::dispatchEvent):
+ (WebCore::FocusOutEventDispatchMediator::create):
+ (WebCore::FocusOutEventDispatchMediator::FocusOutEventDispatchMediator):
+ (WebCore::FocusOutEventDispatchMediator::dispatchEvent):
+ * dom/UIEvent.h:
+
+2011-08-15 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: not all of the properties have valid descriptors on all platforms.
+ Includes PropertyDescriptor protocol documentation fixes.
+ https://bugs.webkit.org/show_bug.cgi?id=66215
+
+ Activations, LocalStorage and some other properties potentially don't have
+ valid property descriptors. InjectedScript should use conservative getter in order to
+ mitigate this.
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/InjectedScriptSource.js:
+ * inspector/Inspector.json:
+
+2011-08-15 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: context menu on the link in the console does not have standard link options.
+ https://bugs.webkit.org/show_bug.cgi?id=66214
+
+ Reviewed by Yury Semikhatsky.
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/ConsoleView.js:
+ * inspector/front-end/ElementsPanel.js:
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeOutline.prototype.populateContextMenu):
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkLogView.prototype._contextMenu):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane.prototype._contextMenuEventFired):
+ * inspector/front-end/inspector.js:
+ (WebInspector.openLinkExternallyLabel):
+ (WebInspector.copyLinkAddressLabel):
+ (WebInspector.populateHrefContextMenu):
+
+2011-08-14 Pavel Feldman <pfeldman@chromium.org>
+
+ Web Inspector: showContextMenu missing in Remote DevTools
+ https://bugs.webkit.org/show_bug.cgi?id=63725
+
+ Reviewed by Yury Semikhatsky.
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/ConsoleView.js:
+ * inspector/front-end/SoftContextMenu.js: Added.
+ (.WebInspector.SoftContextMenu):
+ (.WebInspector.SoftContextMenu.prototype.show):
+ (.WebInspector.SoftContextMenu.prototype._createMenuItem):
+ (.WebInspector.SoftContextMenu.prototype._createSeparator):
+ (.WebInspector.SoftContextMenu.prototype._menuItemMouseDown):
+ (.WebInspector.SoftContextMenu.prototype._menuItemMouseUp):
+ (.WebInspector.SoftContextMenu.prototype._triggerAction):
+ (.WebInspector.SoftContextMenu.prototype._menuItemMouseOver):
+ (.WebInspector.SoftContextMenu.prototype._menuItemMouseOut):
+ (.WebInspector.SoftContextMenu.prototype._highlightMenuItem):
+ (.WebInspector.SoftContextMenu.prototype._highlightPrevious):
+ (.WebInspector.SoftContextMenu.prototype._highlightNext):
+ (.WebInspector.SoftContextMenu.prototype._menuKeyDown):
+ (.WebInspector.SoftContextMenu.prototype._glassPaneMouseUp):
+ (.WebInspector.SoftContextMenu.prototype._discardMenu):
+ (.InspectorFrontendHost.showContextMenu):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.css:
+ (.soft-context-menu-glass-pane):
+ (.soft-context-menu):
+ (.soft-context-menu-item):
+ (.soft-context-menu-separator):
+ (.soft-context-menu-item-mouse-over):
+ * inspector/front-end/inspector.html:
+
+2011-08-13 Abhishek Arya <inferno@chromium.org>
+
+ Crash in HTMLTreeBuilder::processAnyOtherEndTagForInBody
+ https://bugs.webkit.org/show_bug.cgi?id=66187
+
+ Reviewed by Adam Barth.
+
+ RefPtr a few ContainerNodes to prevent premature deletion.
+
+ Test: fast/html/process-end-tag-for-inbody-crash.html
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
+ (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
+
+2011-08-14 Kalev Lember <kalevlember@gmail.com>
+
+ Fix GTK Windows build after r92308.
+ https://bugs.webkit.org/show_bug.cgi?id=66140
+
+ Reviewed by Xan Lopez.
+
+ * config.h: Don't try to include WebCoreHeaderDetection.h for GTK.
+
+2011-08-13 Sam Weinig <sam@webkit.org>
+
+ Remove forward declaration of -[WebUndefined dealloc] to appease the bot gods.
+
+ * bindings/objc/WebScriptObject.mm:
+
+2011-08-13 Sam Weinig <sam@webkit.org>
+
+ Remove assertion from -[WebUndefined dealloc] to try to mollify the bots.
+
+ * bindings/objc/WebScriptObject.mm:
+ (-[WebUndefined dealloc]):
+
+2011-08-13 Sam Weinig <sam@webkit.org>
+
+ Remove unused variables from WebVideoFullscreenController.h
+ https://bugs.webkit.org/show_bug.cgi?id=66192
+
+ Reviewed by Dan Bernstein.
+
+ * platform/mac/WebVideoFullscreenController.h:
+ Remove _isWindowLoaded, _savedUIMode and _savedUIOptions which were not used.
+
+2011-08-13 Sam Weinig <sam@webkit.org>
+
+ Fix incorrect objective-c initialize in WebCore
+ https://bugs.webkit.org/show_bug.cgi?id=66191
+
+ Reviewed by David Kilzer.
+
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper initWithAccessibilityObject:]):
+ * rendering/RenderThemeMac.mm:
+ (-[WebCoreRenderThemeNotificationObserver initWithTheme:WebCore::]):
+ Correctly initialize by assigning to self and nil checking the result.
+
+2011-08-13 Adam Barth <abarth@webkit.org>
+
+ Fix clang build.
+
+ * platform/chromium/PopupMenuChromium.h:
+
+2011-08-13 David Kilzer <ddkilzer@apple.com>
+
+ <http://webkit.org/b/66188> WebCore.xcodeproj has duplicate entries again
+
+ Reviewed by Dan Bernstein.
+
+ * WebCore.xcodeproj/project.pbxproj: Remove duplicate entries
+ by using uniq. Originally noticed by Xcode 4.
+
+2011-08-12 Dan Bernstein <mitz@apple.com>
+
+ <rdar://problem/7337717> Add an option to automatically show tooltips (with the full text) over truncated text
+ https://bugs.webkit.org/show_bug.cgi?id=66178
+
+ Reviewed by Simon Fraser.
+
+ * WebCore.exp.in: Export setShowsToolTipOverTruncatedText().
+ * page/Chrome.cpp:
+ (WebCore::Chrome::setToolTip): If no title is found, and the page is set to show tooltips over
+ truncated text, try to set the tooltip to the full text of the truncated text, if any.
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings): Initialize new member variable.
+ (WebCore::Settings::setShowsToolTipOverTruncatedText): Added this setter.
+ * page/Settings.h:
+ (WebCore::Settings::showsToolTipOverTruncatedText): Added this getter.
+ * rendering/HitTestResult.cpp:
+ (WebCore::HitTestResult::innerTextIfTruncated): Added. If the inner node or its nearest enclosing
+ block has text-overflow: ellipsis and has truncated lines, return the node’s (full) inner text.
+ * rendering/HitTestResult.h:
+ * rendering/RootInlineBox.h:
+ (WebCore::RootInlineBox::hasEllipsisBox): Made this public.
+
+2011-08-12 Stephen White <senorblanco@chromium.org>
+
+ Ownership of canvas's GraphicsContext3D should be moved to PlatformContextSkia
+ https://bugs.webkit.org/show_bug.cgi?id=66154
+
+ Reviewed by Kenneth Russell.
+
+ Covered by existing tests in fast/canvas and canvas/philip.
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::isAccelerated):
+ Plumb this call through GraphicsContext::isAcceleratedContext().
+ (WebCore::CanvasRenderingContext2D::paintsIntoCanvasBuffer):
+ For the ACCELERATED_2D_CANVAS path, plumb this call through
+ (the new) GraphicsContext::paintsIntoCanvasBuffer().
+ (WebCore::CanvasRenderingContext2D::clearAcceleration):
+ (WebCore::CanvasRenderingContext2D::resetAcceleration):
+ Remove the use of the m_context3D member; use a temporary instead.
+ * html/canvas/CanvasRenderingContext2D.h:
+ Remove the m_context3D member.
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::isAcceleratedContext):
+ (WebCore::GraphicsContext::paintsIntoImageBuffer):
+ Implement stub versions of these functions for other platforms.
+ * platform/graphics/GraphicsContext.h:
+ Expose isAcceleratedContext() to all platforms. Add
+ paintsIntoImageBuffer() member function.
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::create):
+ * platform/graphics/gpu/SharedGraphicsContext3D.h:
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::setGraphicsContext3D):
+ (WebCore::GraphicsContext::isAcceleratedContext):
+ (WebCore::GraphicsContext::paintsIntoImageBuffer):
+ Basically gut this class leaving only a static creation function.
+ * platform/graphics/skia/ImageSkia.cpp:
+ (WebCore::paintSkBitmap):
+ (WebCore::Image::drawPattern):
+ Use isAccelerated() in place of useSkiaGpu().
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
+ (WebCore::PlatformContextSkia::paintsIntoImageBuffer):
+ * platform/graphics/skia/PlatformContextSkia.h:
+ (WebCore::PlatformContextSkia::isAccelerated):
+ Rename useSkiaGpu() to isAccelerated(). Plumb through
+ paintsIntoImageBuffer() to GraphicsContext3D.
+
+2011-08-12 Sam Weinig <sam@webkit.org>
+
+ Use __builtin_trap() for CRASH when building with clang
+ https://bugs.webkit.org/show_bug.cgi?id=66152
+
+ Reviewed by Anders Carlsson.
+
+ * bindings/js/SerializedScriptValue.cpp:
+ (WebCore::CloneBase::fail):
+ * bindings/objc/WebScriptObject.mm:
+ * platform/mac/BlockExceptions.h:
+ * platform/text/cf/StringImplCF.cpp:
+ Add NO_RETURN_DUE_TO_ASSERT.
+
+ * bridge/IdentifierRep.h:
+ Don't define the destructor since it is never called,
+
+2011-08-12 Joseph Pecoraro <joepeck@webkit.org>
+
+ Abandoned Memory: Temporary CSS Fonts May Never Be Purged
+ https://bugs.webkit.org/show_bug.cgi?id=66153
+
+ Reviewed by Dan Bernstein.
+
+ No new tests, this is not a functional change.
+
+ * css/CSSFontFaceSource.cpp:
+ (WebCore::CSSFontFaceSource::getFontData):
+ If the CSS font-face is loading from a URL then immediately
+ fallback to a system font matching the description, since we
+ cannot determine a reasonable family name from the m_string
+ URL. The URL could be a dataURI.
+
+2011-08-12 Fady Samuel <fsamuel@chromium.org>
+
+ Refactoring of PopupMenuChromium For Readability and Maintainability
+ https://bugs.webkit.org/show_bug.cgi?id=66009
+
+ Reviewed by Darin Fisher.
+
+ Split PopupMenuChromium into three sets of files: PopupMenuChromium.{h|cpp}, PopupContainer.{h|cpp},
+ and PopupLisBox.{h|cpp} for readability and maintainability.
+
+ No new tests as there's no change in functionality.
+
+ * WebCore.gypi:
+ * platform/chromium/PopupContainer.cpp: Added.
+ (WebCore::constructRelativeMouseEvent):
+ (WebCore::constructRelativeWheelEvent):
+ (WebCore::PopupContainer::create):
+ (WebCore::PopupContainer::PopupContainer):
+ (WebCore::PopupContainer::~PopupContainer):
+ (WebCore::PopupContainer::layoutAndCalculateWidgetRect):
+ (WebCore::PopupContainer::showPopup):
+ (WebCore::PopupContainer::hidePopup):
+ (WebCore::PopupContainer::notifyPopupHidden):
+ (WebCore::PopupContainer::layoutAndGetRTLOffset):
+ (WebCore::PopupContainer::handleMouseDownEvent):
+ (WebCore::PopupContainer::handleMouseMoveEvent):
+ (WebCore::PopupContainer::handleMouseReleaseEvent):
+ (WebCore::PopupContainer::handleWheelEvent):
+ (WebCore::PopupContainer::handleTouchEvent):
+ (WebCore::PopupContainer::handleGestureEvent):
+ (WebCore::PopupContainer::handleKeyEvent):
+ (WebCore::PopupContainer::hide):
+ (WebCore::PopupContainer::paint):
+ (WebCore::PopupContainer::paintBorder):
+ (WebCore::PopupContainer::isInterestedInEventForKey):
+ (WebCore::PopupContainer::chromeClientChromium):
+ (WebCore::PopupContainer::showInRect):
+ (WebCore::PopupContainer::refresh):
+ (WebCore::PopupContainer::isRTL):
+ (WebCore::PopupContainer::selectedIndex):
+ (WebCore::PopupContainer::menuItemHeight):
+ (WebCore::PopupContainer::menuItemFontSize):
+ (WebCore::PopupContainer::menuStyle):
+ (WebCore::popupData):
+ (WebCore::PopupContainer::getSelectedItemToolTip):
+ * platform/chromium/PopupContainer.h: Added.
+ (WebCore::PopupContainer::listBox):
+ (WebCore::PopupContainer::popupType):
+ * platform/chromium/PopupListBox.cpp: Added.
+ (WebCore::PopupListBox::PopupListBox):
+ (WebCore::PopupListBox::handleMouseDownEvent):
+ (WebCore::PopupListBox::handleMouseMoveEvent):
+ (WebCore::PopupListBox::handleMouseReleaseEvent):
+ (WebCore::PopupListBox::handleWheelEvent):
+ (WebCore::PopupListBox::isInterestedInEventForKey):
+ (WebCore::PopupListBox::handleTouchEvent):
+ (WebCore::PopupListBox::handleGestureEvent):
+ (WebCore::isCharacterTypeEvent):
+ (WebCore::PopupListBox::handleKeyEvent):
+ (WebCore::PopupListBox::hostWindow):
+ (WebCore::stripLeadingWhiteSpace):
+ (WebCore::PopupListBox::typeAheadFind):
+ (WebCore::PopupListBox::paint):
+ (WebCore::PopupListBox::paintRow):
+ (WebCore::PopupListBox::getRowFont):
+ (WebCore::PopupListBox::abandon):
+ (WebCore::PopupListBox::pointToRowIndex):
+ (WebCore::PopupListBox::acceptIndex):
+ (WebCore::PopupListBox::selectIndex):
+ (WebCore::PopupListBox::setOriginalIndex):
+ (WebCore::PopupListBox::getRowHeight):
+ (WebCore::PopupListBox::getRowBounds):
+ (WebCore::PopupListBox::invalidateRow):
+ (WebCore::PopupListBox::scrollToRevealRow):
+ (WebCore::PopupListBox::isSelectableItem):
+ (WebCore::PopupListBox::clearSelection):
+ (WebCore::PopupListBox::selectNextRow):
+ (WebCore::PopupListBox::selectPreviousRow):
+ (WebCore::PopupListBox::adjustSelectedIndex):
+ (WebCore::PopupListBox::hidePopup):
+ (WebCore::PopupListBox::updateFromElement):
+ (WebCore::PopupListBox::setMaxWidthAndLayout):
+ (WebCore::PopupListBox::layout):
+ (WebCore::PopupListBox::clear):
+ (WebCore::PopupListBox::isPointInBounds):
+ * platform/chromium/PopupListBox.h: Added.
+ (WebCore::PopupItem::PopupItem):
+ (WebCore::PopupListBox::create):
+ (WebCore::PopupListBox::selectedIndex):
+ (WebCore::PopupListBox::numItems):
+ (WebCore::PopupListBox::setBaseWidth):
+ (WebCore::PopupListBox::setMaxHeight):
+ (WebCore::PopupListBox::setMaxWidth):
+ (WebCore::PopupListBox::disconnectClient):
+ (WebCore::PopupListBox::items):
+ (WebCore::PopupListBox::~PopupListBox):
+ (WebCore::PopupListBox::scrollToRevealSelection):
+ * platform/chromium/PopupMenuChromium.cpp:
+ * platform/chromium/PopupMenuChromium.h:
+
+2011-08-12 Mark Rowe <mrowe@apple.com>
+
+ Be more forward-looking in the choice of compiler.
+
+ Rubber-stamped by Jon Honeycutt.
+
+ * Configurations/CompilerVersion.xcconfig:
+
+2011-08-12 Nat Duca <nduca@chromium.org>
+
+ [chromium] Fix comile warning on CCLayerTreeHost
+
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::CCLayerTreeHost):
+
+2011-08-12 Ryosuke Niwa <rniwa@webkit.org>
+
+ Apple-style-span class seems unnecessary
+ https://bugs.webkit.org/show_bug.cgi?id=12248
+
+ Reviewed by Justin Garcia.
+
+ Stop generating span or font elements with class="Apple-style-span" given WebKit's editing component
+ no longer depends on Apple-style-span since r92823 removed the dependency of copy and paste code on
+ style spans. WebKit continues to recognize Apple style spans to remove them.
+
+ Also renamed isSpanWithoutAttributesOrUnstyleStyleSpan to isSpanWithoutAttributesOrUnstyle*d*StyleSpan.
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::isLegacyAppleStyleSpan): Renamed from isStyleSpan.
+ (WebCore::isSpanWithoutAttributesOrUnstyledStyleSpan): Renamed from isSpanWithoutAttributesOr*Unstyle*StyleSpan.
+ (WebCore::createFontElement): No longer adds class="Apple-style-span".
+ (WebCore::createStyleSpanElement): Ditto.
+ (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): Calls isSpanWithoutAttributesOrUnstyleStyleSpan
+ instead of isUnstyledStyleSpan since there won't be any Apple style spans.
+ (WebCore::dummySpanAncestorForNode):
+ (WebCore::ApplyStyleCommand::cleanupUnstyledAppleStyleSpans): Ditto.
+ (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock): Ditto.
+ (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement):
+ (WebCore::ApplyStyleCommand::removeCSSStyle):
+ * editing/ApplyStyleCommand.h:
+ * editing/EditingStyle.cpp:
+ (WebCore::EditingStyle::removeStyleFromRulesAndContext): Ditto.
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline): Calls isLegacyAppleStyleSpan instead
+ of isStyleSpan.
+ (WebCore::handleStyleSpansBeforeInsertion): Ditto.
+ (WebCore::ReplaceSelectionCommand::handleStyleSpans): Ditto.
+ (WebCore::ReplaceSelectionCommand::doApply): Ditto.
+ * editing/markup.cpp:
+ (WebCore::StyledMarkupAccumulator::appendStyleNodeOpenTag): No longer adds class="Apple-style-span".
+
+2011-08-12 Nat Duca <nduca@chromium.org>
+
+ [chromium] Fix compositor breakage due to duplicate context creation AND by context-lost
+ https://bugs.webkit.org/show_bug.cgi?id=66168
+
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::initialize):
+
+2011-08-12 Levi Weintraub <leviw@chromium.org>
+
+ Switch RenderMenuList, RenderListBox, and RenderFieldSet to new layout units
+ https://bugs.webkit.org/show_bug.cgi?id=66149
+
+ Reviewed by Eric Seidel.
+
+ Changing RenderMenuList, RenderListBox, and RenderFieldSet to the LayoutUnit
+ abstraction from ints.
+
+ No tests as no change in functionality.
+
+ * rendering/RenderFieldset.cpp:
+ (WebCore::RenderFieldset::layoutSpecialExcludedChild):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::numVisibleItems):
+ (WebCore::RenderListBox::listHeight):
+ (WebCore::RenderListBox::baselinePosition):
+ (WebCore::RenderListBox::itemBoundingBoxRect):
+ (WebCore::itemOffsetForAlignment):
+ (WebCore::RenderListBox::panScroll):
+ (WebCore::RenderListBox::scrollToward):
+ (WebCore::RenderListBox::autoscroll):
+ (WebCore::RenderListBox::scrollSize):
+ (WebCore::RenderListBox::scrollPosition):
+ (WebCore::RenderListBox::setScrollOffset):
+ (WebCore::RenderListBox::itemHeight):
+ (WebCore::RenderListBox::verticalScrollbarWidth):
+ (WebCore::RenderListBox::scrollWidth):
+ (WebCore::RenderListBox::scrollHeight):
+ (WebCore::RenderListBox::scrollLeft):
+ (WebCore::RenderListBox::setScrollLeft):
+ (WebCore::RenderListBox::scrollTop):
+ (WebCore::RenderListBox::setScrollTop):
+ (WebCore::RenderListBox::controlClipRect):
+ (WebCore::RenderListBox::invalidateScrollbarRect):
+ (WebCore::RenderListBox::convertFromScrollbarToContainingView):
+ (WebCore::RenderListBox::convertFromContainingViewToScrollbar):
+ (WebCore::RenderListBox::contentsSize):
+ (WebCore::RenderListBox::currentMousePosition):
+ * rendering/RenderListBox.h:
+ (WebCore::RenderListBox::scrollCornerRect):
+ (WebCore::RenderListBox::invalidateScrollCornerRect):
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::controlClipRect):
+ (WebCore::RenderMenuList::showPopup):
+ * rendering/RenderMenuList.h:
+
+2011-08-12 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=66133
+
+ Make hit testing work on RenderRegions. Pass off the hit testing to the RenderFlowThread
+ layer tree (just as we did with painting).
+
+ Reviewed by Sam Weinig.
+
+ Added hit-test-float.html to demonstrate basic hit testing of content flowed into regions.
+
+ * rendering/HitTestRequest.h:
+ (WebCore::HitTestRequest::type):
+ * rendering/RenderFlowThread.cpp:
+ (WebCore::RenderFlowThread::hitTestRegion):
+ * rendering/RenderFlowThread.h:
+ * rendering/RenderRegion.cpp:
+ (WebCore::RenderRegion::paintReplaced):
+ (WebCore::RenderRegion::nodeAtPoint):
+ * rendering/RenderRegion.h:
+
+2011-08-12 Levi Weintraub <leviw@chromium.org>
+
+ Switch RenderTable* to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66146
+
+ Reviewed by Eric Seidel.
+
+ Converting RenderTable* classes to new LayoutUnits from ints.
+
+ No new tests as no new functionality.
+
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::firstLineBoxBaseline):
+ (WebCore::RenderTable::overflowClipRect):
+ * rendering/RenderTable.h:
+ (WebCore::RenderTable::columnPositions):
+ * rendering/RenderTableCol.cpp:
+ (WebCore::RenderTableCol::clippedOverflowRectForRepaint):
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::clippedOverflowRectForRepaint):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::setCellLogicalWidths):
+ (WebCore::RenderTableSection::calcRowLogicalHeight):
+ (WebCore::RenderTableSection::layoutRows):
+ (WebCore::RenderTableSection::calcOuterBorderBefore):
+ (WebCore::RenderTableSection::calcOuterBorderAfter):
+ (WebCore::RenderTableSection::calcOuterBorderStart):
+ (WebCore::RenderTableSection::calcOuterBorderEnd):
+ (WebCore::RenderTableSection::firstLineBoxBaseline):
+ (WebCore::RenderTableSection::paintObject):
+ (WebCore::RenderTableSection::nodeAtPoint):
+ * rendering/RenderTableSection.h:
+ (WebCore::RenderTableSection::outerBorderBefore):
+ (WebCore::RenderTableSection::outerBorderAfter):
+ (WebCore::RenderTableSection::outerBorderStart):
+ (WebCore::RenderTableSection::outerBorderEnd):
+ (WebCore::RenderTableSection::getBaseline):
+
+2011-08-12 Adam Bergkvist <adam.bergkvist@ericsson.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ EventSource loader should not buffer data
+ https://bugs.webkit.org/show_bug.cgi?id=61863
+
+ Disabled buffering in the EventSource loader.
+
+ Added a manual test.
+
+ * manual-tests/eventsource/eventsource-loader-buffering.html: Added.
+ * manual-tests/eventsource/eventsource-loader-buffering.php: Added.
+ * page/EventSource.cpp:
+ (WebCore::EventSource::connect):
+
+2011-08-11 Pratik Solanki <psolanki@apple.com>
+
+ ResourceLoader::didReceiveDataArray() does not handle m_shouldBufferData correctly
+ https://bugs.webkit.org/show_bug.cgi?id=65926
+
+ Reviewed by Alexey Proskuryakov.
+
+ * loader/mac/ResourceLoaderMac.mm:
+ (WebCore::ResourceLoader::didReceiveDataArray): Make sure we call the client callbacks when
+ m_shouldBufferData is set to false.
+
+2011-08-12 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r92976.
+ http://trac.webkit.org/changeset/92976
+ https://bugs.webkit.org/show_bug.cgi?id=66159
+
+ Does not compile on chromium-win (Requested by abarth|gardener
+ on #webkit).
+
+ * WebCore.gypi:
+ * platform/chromium/PopupContainer.cpp: Removed.
+ * platform/chromium/PopupContainer.h: Removed.
+ * platform/chromium/PopupListBox.cpp: Removed.
+ * platform/chromium/PopupListBox.h: Removed.
+ * platform/chromium/PopupMenuChromium.cpp:
+ (WebCore::PopupListBox::create):
+ (WebCore::PopupListBox::selectedIndex):
+ (WebCore::PopupListBox::numItems):
+ (WebCore::PopupListBox::setBaseWidth):
+ (WebCore::PopupListBox::setMaxHeight):
+ (WebCore::PopupListBox::setMaxWidth):
+ (WebCore::PopupListBox::disconnectClient):
+ (WebCore::PopupListBox::items):
+ (WebCore::PopupListBox::PopupListBox):
+ (WebCore::PopupListBox::~PopupListBox):
+ (WebCore::PopupListBox::scrollToRevealSelection):
+ (WebCore::constructRelativeMouseEvent):
+ (WebCore::constructRelativeWheelEvent):
+ (WebCore::PopupContainer::create):
+ (WebCore::PopupContainer::PopupContainer):
+ (WebCore::PopupContainer::~PopupContainer):
+ (WebCore::PopupContainer::layoutAndCalculateWidgetRect):
+ (WebCore::PopupContainer::showPopup):
+ (WebCore::PopupContainer::hidePopup):
+ (WebCore::PopupContainer::notifyPopupHidden):
+ (WebCore::PopupContainer::layoutAndGetRTLOffset):
+ (WebCore::PopupContainer::handleMouseDownEvent):
+ (WebCore::PopupContainer::handleMouseMoveEvent):
+ (WebCore::PopupContainer::handleMouseReleaseEvent):
+ (WebCore::PopupContainer::handleWheelEvent):
+ (WebCore::PopupContainer::handleTouchEvent):
+ (WebCore::PopupContainer::handleGestureEvent):
+ (WebCore::PopupContainer::handleKeyEvent):
+ (WebCore::PopupContainer::hide):
+ (WebCore::PopupContainer::paint):
+ (WebCore::PopupContainer::paintBorder):
+ (WebCore::PopupContainer::isInterestedInEventForKey):
+ (WebCore::PopupContainer::chromeClientChromium):
+ (WebCore::PopupContainer::showInRect):
+ (WebCore::PopupContainer::refresh):
+ (WebCore::PopupContainer::isRTL):
+ (WebCore::PopupContainer::selectedIndex):
+ (WebCore::PopupContainer::menuItemHeight):
+ (WebCore::PopupContainer::menuItemFontSize):
+ (WebCore::PopupContainer::menuStyle):
+ (WebCore::popupData):
+ (WebCore::PopupContainer::getSelectedItemToolTip):
+ (WebCore::PopupListBox::handleMouseDownEvent):
+ (WebCore::PopupListBox::handleMouseMoveEvent):
+ (WebCore::PopupListBox::handleMouseReleaseEvent):
+ (WebCore::PopupListBox::handleWheelEvent):
+ (WebCore::PopupListBox::isInterestedInEventForKey):
+ (WebCore::PopupListBox::handleTouchEvent):
+ (WebCore::PopupListBox::handleGestureEvent):
+ (WebCore::isCharacterTypeEvent):
+ (WebCore::PopupListBox::handleKeyEvent):
+ (WebCore::PopupListBox::hostWindow):
+ (WebCore::stripLeadingWhiteSpace):
+ (WebCore::PopupListBox::typeAheadFind):
+ (WebCore::PopupListBox::paint):
+ (WebCore::PopupListBox::paintRow):
+ (WebCore::PopupListBox::getRowFont):
+ (WebCore::PopupListBox::abandon):
+ (WebCore::PopupListBox::pointToRowIndex):
+ (WebCore::PopupListBox::acceptIndex):
+ (WebCore::PopupListBox::selectIndex):
+ (WebCore::PopupListBox::setOriginalIndex):
+ (WebCore::PopupListBox::getRowHeight):
+ (WebCore::PopupListBox::getRowBounds):
+ (WebCore::PopupListBox::invalidateRow):
+ (WebCore::PopupListBox::scrollToRevealRow):
+ (WebCore::PopupListBox::isSelectableItem):
+ (WebCore::PopupListBox::clearSelection):
+ (WebCore::PopupListBox::selectNextRow):
+ (WebCore::PopupListBox::selectPreviousRow):
+ (WebCore::PopupListBox::adjustSelectedIndex):
+ (WebCore::PopupListBox::hidePopup):
+ (WebCore::PopupListBox::updateFromElement):
+ (WebCore::PopupListBox::setMaxWidthAndLayout):
+ (WebCore::PopupListBox::layout):
+ (WebCore::PopupListBox::clear):
+ (WebCore::PopupListBox::isPointInBounds):
+ * platform/chromium/PopupMenuChromium.h:
+ (WebCore::PopupItem::PopupItem):
+ (WebCore::PopupContainer::listBox):
+ (WebCore::PopupContainer::popupType):
+
+2011-08-12 Andy Estes <aestes@apple.com>
+
+ Cancel in onbeforeunload dialog sometime causes a button to stop working.
+ https://bugs.webkit.org/show_bug.cgi?id=26211
+
+ Reviewed by Alexey Proskuryakov.
+
+ Test: fast/loader/form-submission-after-beforeunload-cancel.html
+
+ If an onbeforeunload handler cancels a navigation that was triggered by
+ a form submission, WebCore's multiple form submission protection
+ prevents the form from being submitted a second time even though no
+ first submission actually took place. Fix this by clearing
+ m_submittedFormURL if the onbeforeunload handler cancels the load. This
+ allows the submission to be retried.
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::shouldClose): Set m_submittedFormURL to KURL()
+ if shouldClose() will return false.
+
+2011-08-12 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=66130
+
+ RenderRegions need to paint the entire RenderFlowThread layer tree. Instead of just calling
+ paintBlock, make sure RenderRegions paint the flow thread's layer tree instead with the appropriate
+ offset.
+
+ Fix RenderRegions to derive from RenderReplaced instead of RenderBox, since it simplifies the code.
+ They no longer have to subclass their own layout method or worry about all of the painting logic
+ for anything other than the content area.
+
+ Reviewed by Anders Carlsson.
+
+ Existing tests have a layer tree example, and so those results are updated to show the tree now.
+
+ * rendering/RenderFlowThread.cpp:
+ (WebCore::RenderFlowThread::createFlowThreadStyle):
+ (WebCore::RenderFlowThread::paintIntoRegion):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::collectLayers):
+ * rendering/RenderRegion.cpp:
+ (WebCore::RenderRegion::RenderRegion):
+ (WebCore::RenderRegion::paintReplaced):
+ (WebCore::RenderRegion::styleDidChange):
+ * rendering/RenderRegion.h:
+
+2011-08-12 Chris Rogers <crogers@google.com>
+
+ Fix mac build when web audio is enabled
+ https://bugs.webkit.org/show_bug.cgi?id=66150
+
+ Unreviewed build fix.
+
+ * platform/audio/mac/AudioFileReaderMac.cpp:
+ (WebCore::AudioFileReader::createBus):
+
+2011-08-12 Jeff Miller <jeffm@apple.com>
+
+ Need to handle kCACFContextNeedsFlushNotification notifications that arrive after the AVFWrapper has been disposed
+ https://bugs.webkit.org/show_bug.cgi?id=65724
+
+ Instead of using a pointer to the AVFWrapper object as the context for various callbacks, assign each object an
+ ID and use that instead. Keep track of the mapping between object IDs and AVFWrapper objects in a HashMap, and manage
+ access to this map using a Mutex since it can be accessed from multiple threads. This allows us to actually delete
+ AVFWrapper objects instead of leaking them (which we were doing before to prevent crashes).
+
+ Reviewed by Eric Carlson.
+
+ No new tests, uses existing media tests.
+
+ * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationCF.cpp:
+ (WebCore::AVFWrapper::callbackContext): Added.
+ (WebCore::AVFWrapper::AVFWrapper): Initialize m_objectID and add it to the HashMap.
+ (WebCore::AVFWrapper::~AVFWrapper): Log object ID and remove obsolete assert.
+ (WebCore::AVFWrapper::mapLock): Added.
+ (WebCore::AVFWrapper::map): Added.
+ (WebCore::AVFWrapper::addToMap): Added.
+ (WebCore::AVFWrapper::removeFromMap): Added.
+ (WebCore::AVFWrapper::avfWrapperForCallbackContext): Added.
+ (WebCore::AVFWrapper::scheduleDisconnectAndDelete): Remove AVFWrapper from HashMap instead of zeroing m_owner.
+ (WebCore::AVFWrapper::disconnectAndDeleteAVFWrapper): Use callbackContext(), delete the AVFWrapper here.
+ (WebCore::AVFWrapper::createPlayer): Use callbackContext().
+ (WebCore::AVFWrapper::createPlayerItem): Use callbackContext().
+ (WebCore::AVFWrapper::periodicTimeObserverCallback): Retrieve AVFWrapper using the HashMap.
+ (WebCore::AVFWrapper::notificationCallback): Retrieve AVFWrapper using the HashMap.
+ (WebCore::AVFWrapper::loadPlayableCompletionCallback): Retrieve AVFWrapper using the HashMap.
+ (WebCore::AVFWrapper::checkPlayability): Use callbackContext().
+ (WebCore::AVFWrapper::loadMetadataCompletionCallback): Retrieve AVFWrapper using the HashMap.
+ (WebCore::AVFWrapper::beginLoadingMetadata): Use callbackContext().
+ (WebCore::AVFWrapper::seekCompletedCallback): Retrieve AVFWrapper using the HashMap.
+ (WebCore::AVFWrapper::seekToTime): Use callbackContext().
+ (WebCore::AVFWrapper::platformLayer): Remove overly noisy LOG().
+
+2011-08-12 Fady Samuel <fsamuel@chromium.org>
+
+ Refactoring of PopupMenuChromium
+ https://bugs.webkit.org/show_bug.cgi?id=66009
+
+ Reviewed by Darin Fisher.
+
+ Split PopupMenuChromium into three sets of files: PopupMenuChromium.{h|cpp}, PopupContainer.{h|cpp}, and PopupLisBox.{h|cpp}
+ for readability and maintainability.
+
+ No new tests as no functionality has changed.
+
+ * WebCore.gypi:
+ * platform/chromium/PopupContainer.cpp: Added.
+ (WebCore::constructRelativeMouseEvent):
+ (WebCore::constructRelativeWheelEvent):
+ (WebCore::PopupContainer::create):
+ (WebCore::PopupContainer::PopupContainer):
+ (WebCore::PopupContainer::~PopupContainer):
+ (WebCore::PopupContainer::layoutAndCalculateWidgetRect):
+ (WebCore::PopupContainer::showPopup):
+ (WebCore::PopupContainer::hidePopup):
+ (WebCore::PopupContainer::notifyPopupHidden):
+ (WebCore::PopupContainer::layoutAndGetRTLOffset):
+ (WebCore::PopupContainer::handleMouseDownEvent):
+ (WebCore::PopupContainer::handleMouseMoveEvent):
+ (WebCore::PopupContainer::handleMouseReleaseEvent):
+ (WebCore::PopupContainer::handleWheelEvent):
+ (WebCore::PopupContainer::handleTouchEvent):
+ (WebCore::PopupContainer::handleGestureEvent):
+ (WebCore::PopupContainer::handleKeyEvent):
+ (WebCore::PopupContainer::hide):
+ (WebCore::PopupContainer::paint):
+ (WebCore::PopupContainer::paintBorder):
+ (WebCore::PopupContainer::isInterestedInEventForKey):
+ (WebCore::PopupContainer::chromeClientChromium):
+ (WebCore::PopupContainer::showInRect):
+ (WebCore::PopupContainer::refresh):
+ (WebCore::PopupContainer::isRTL):
+ (WebCore::PopupContainer::selectedIndex):
+ (WebCore::PopupContainer::menuItemHeight):
+ (WebCore::PopupContainer::menuItemFontSize):
+ (WebCore::PopupContainer::menuStyle):
+ (WebCore::popupData):
+ (WebCore::PopupContainer::getSelectedItemToolTip):
+ * platform/chromium/PopupContainer.h: Added.
+ (WebCore::PopupContainer::listBox):
+ (WebCore::PopupContainer::popupType):
+ * platform/chromium/PopupListBox.cpp: Added.
+ (WebCore::PopupListBox::PopupListBox):
+ (WebCore::PopupListBox::handleMouseDownEvent):
+ (WebCore::PopupListBox::handleMouseMoveEvent):
+ (WebCore::PopupListBox::handleMouseReleaseEvent):
+ (WebCore::PopupListBox::handleWheelEvent):
+ (WebCore::PopupListBox::isInterestedInEventForKey):
+ (WebCore::PopupListBox::handleTouchEvent):
+ (WebCore::PopupListBox::handleGestureEvent):
+ (WebCore::isCharacterTypeEvent):
+ (WebCore::PopupListBox::handleKeyEvent):
+ (WebCore::PopupListBox::hostWindow):
+ (WebCore::stripLeadingWhiteSpace):
+ (WebCore::PopupListBox::typeAheadFind):
+ (WebCore::PopupListBox::paint):
+ (WebCore::PopupListBox::paintRow):
+ (WebCore::PopupListBox::getRowFont):
+ (WebCore::PopupListBox::abandon):
+ (WebCore::PopupListBox::pointToRowIndex):
+ (WebCore::PopupListBox::acceptIndex):
+ (WebCore::PopupListBox::selectIndex):
+ (WebCore::PopupListBox::setOriginalIndex):
+ (WebCore::PopupListBox::getRowHeight):
+ (WebCore::PopupListBox::getRowBounds):
+ (WebCore::PopupListBox::invalidateRow):
+ (WebCore::PopupListBox::scrollToRevealRow):
+ (WebCore::PopupListBox::isSelectableItem):
+ (WebCore::PopupListBox::clearSelection):
+ (WebCore::PopupListBox::selectNextRow):
+ (WebCore::PopupListBox::selectPreviousRow):
+ (WebCore::PopupListBox::adjustSelectedIndex):
+ (WebCore::PopupListBox::hidePopup):
+ (WebCore::PopupListBox::updateFromElement):
+ (WebCore::PopupListBox::setMaxWidthAndLayout):
+ (WebCore::PopupListBox::layout):
+ (WebCore::PopupListBox::clear):
+ (WebCore::PopupListBox::isPointInBounds):
+ * platform/chromium/PopupListBox.h: Added.
+ (WebCore::PopupItem::PopupItem):
+ (WebCore::PopupListBox::create):
+ (WebCore::PopupListBox::selectedIndex):
+ (WebCore::PopupListBox::numItems):
+ (WebCore::PopupListBox::setBaseWidth):
+ (WebCore::PopupListBox::setMaxHeight):
+ (WebCore::PopupListBox::setMaxWidth):
+ (WebCore::PopupListBox::disconnectClient):
+ (WebCore::PopupListBox::items):
+ (WebCore::PopupListBox::~PopupListBox):
+ (WebCore::PopupListBox::scrollToRevealSelection):
+ * platform/chromium/PopupMenuChromium.cpp:
+ * platform/chromium/PopupMenuChromium.h:
+
+2011-08-12 Sam Weinig <sam@webkit.org>
+
+ Move compiler specific macros to their own header
+ https://bugs.webkit.org/show_bug.cgi?id=66119
+
+ Reviewed by Anders Carlsson.
+
+ * ForwardingHeaders/wtf/Compiler.h: Added.
+
+2011-08-12 No'am Rosenthal <noam.rosenthal@nokia.com>
+
+ [Qt][REGRESSION] composited content doesn't render since r92651
+ https://bugs.webkit.org/show_bug.cgi?id=66108
+
+ Reviewed by Benjamin Poulain.
+
+ Changed the signature for GraphicsLayerTextureMapper::syncCompositingState to match
+ the new signature in GraphicsLayer.h.
+
+ No new tests. This is a regression that's covered by existing pixel tests.
+
+ * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
+ (WebCore::GraphicsLayerTextureMapper::syncCompositingState):
+ * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
+
+2011-08-12 Alexandru Chiculita <achicu@adobe.com>
+
+ Original patch by Mihnea Ovidenie <mihnea@adobe.com>.
+ Also contains some improvements done by Dave Hyatt <hyatt@apple.com>.
+
+ [CSSRegions]RenderFlowThread should display its content using RenderRegion
+ https://bugs.webkit.org/show_bug.cgi?id=65627
+
+ RenderFlowThread collects RenderObjects from a flow. These objects are displayed by means
+ of RenderRegion objects that get the content from the same flow.
+
+ Reviewed by David Hyatt.
+
+ Tests: fast/regions/content-flowed-into-regions-dynamically-added.html
+ fast/regions/content-flowed-into-regions-dynamically-removed.html
+ fast/regions/content-flowed-into-regions-with-dyn-index.html
+ fast/regions/content-flowed-into-regions-with-index-dom.html
+ fast/regions/content-flowed-into-regions-with-index.html
+ fast/regions/content-flowed-into-regions.html
+ fast/regions/flow-content-basic-vertical-rl.html
+ fast/regions/flow-content-basic-vertical.html
+
+ * dom/Node.cpp:
+ (WebCore::Node::diff):
+ * rendering/RenderFlowThread.cpp:
+ (WebCore::RenderFlowThread::RenderFlowThread):
+ (WebCore::RenderFlowThread::createFlowThreadStyle):
+ (WebCore::RenderFlowThread::styleDidChange):
+ (WebCore::compareRenderRegions):
+ (WebCore::RenderFlowThread::addRegionToThread):
+ (WebCore::RenderFlowThread::removeRegionFromThread):
+ (WebCore::RenderFlowThread::layout):
+ (WebCore::RenderFlowThread::computeLogicalWidth):
+ (WebCore::RenderFlowThread::computeLogicalHeight):
+ (WebCore::RenderFlowThread::paintIntoRegion):
+ * rendering/RenderFlowThread.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::createObject):
+ * rendering/RenderRegion.cpp:
+ (WebCore::RenderRegion::RenderRegion):
+ (WebCore::RenderRegion::~RenderRegion):
+ (WebCore::RenderRegion::paint):
+ (WebCore::RenderRegion::styleDidChange):
+ * rendering/RenderRegion.h:
+ (WebCore::RenderRegion::setRegionRect):
+ (WebCore::RenderRegion::regionRect):
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::writeLayers):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::styleDidChange):
+ (WebCore::RenderView::renderFlowThreadWithName):
+ * rendering/RenderView.h:
+
+2011-08-12 Abhishek Arya <inferno@chromium.org>
+
+ Crash in WebCore::editingIgnoresContent
+ https://bugs.webkit.org/show_bug.cgi?id=66125
+
+ Reviewed by Ryosuke Niwa.
+
+ RefPtr a few nodes in case they get blown away in
+ dispatchEvent calls.
+
+ Test: editing/selection/select-start-remove-root-crash.html
+
+ * editing/FrameSelection.cpp:
+ (WebCore::FrameSelection::selectAll):
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplacementFragment::ReplacementFragment):
+
+2011-08-11 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: properly update console message count in source frames and resources panel.
+ https://bugs.webkit.org/show_bug.cgi?id=57009
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.messageRepeatCountUpdated):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype.show):
+ (WebInspector.SourceFrame.prototype.addMessageToSource):
+ (WebInspector.SourceFrame.prototype._updateMessageRepeatCount):
+
+2011-08-12 Pavel Feldman <pfeldman@google.com>
+
+ Not reviewed: follow up to inspector test breakage.
+
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._showScriptFoldersSettingChanged):
+
+2011-08-12 Yury Semikhatsky <yurys@chromium.org>
+
+ Web Inspector: expand exception properties when wrapping it as object.
+ https://bugs.webkit.org/show_bug.cgi?id=66035
+
+ Use toString() value as a description for value thrown during eval.
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/InjectedScriptSource.js:
+ (.):
+
+2011-08-12 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: make folders optional in the Scripts' panel file selector.
+ https://bugs.webkit.org/show_bug.cgi?id=66100
+
+ Reviewed by Yury Semikhatsky.
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._showScriptFoldersSettingChanged):
+ (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect.insertOrdered.optionCompare):
+ (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect.insertOrdered):
+ (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect):
+ (WebInspector.ScriptsPanel.prototype.reset):
+ (WebInspector.ScriptsPanel.prototype._resetFilesSelect):
+ * inspector/front-end/Settings.js:
+ (WebInspector.Settings):
+ * inspector/front-end/SettingsScreen.js:
+ (WebInspector.SettingsScreen):
+
+2011-08-12 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: add space between error info and error message in source frame message bubble.
+ https://bugs.webkit.org/show_bug.cgi?id=65069
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleMessage.prototype._formatMessage):
+
+2011-08-12 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: console loses focus upon reloading the page from the inspector.
+ https://bugs.webkit.org/show_bug.cgi?id=66068
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/AuditsPanel.js:
+ (WebInspector.AuditsPanel.prototype._auditFinishedCallback):
+ (WebInspector.AuditsPanel.prototype._clearButtonClicked):
+ * inspector/front-end/DataGrid.js:
+ (WebInspector.DataGrid.prototype.revealAndSelect):
+ (WebInspector.DataGridNode.prototype.revealAndSelect):
+ * inspector/front-end/DetailedHeapshotView.js:
+ (WebInspector.DetailedHeapshotView.prototype._jumpToSearchResult):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.this.treeOutline.selectedNodeChanged):
+ (WebInspector.ElementsPanel.get this):
+ (WebInspector.ElementsPanel):
+ (WebInspector.ElementsPanel.prototype._reset):
+ (WebInspector.ElementsPanel.prototype._setDocument.selectNode):
+ (WebInspector.ElementsPanel.prototype._setDocument.selectLastSelectedNode):
+ (WebInspector.ElementsPanel.prototype._setDocument):
+ (WebInspector.ElementsPanel.prototype._domWordWrapSettingChanged):
+ (WebInspector.ElementsPanel.prototype.populateHrefContextMenu):
+ (WebInspector.ElementsPanel.prototype.switchToAndFocus):
+ (WebInspector.ElementsPanel.prototype.selectedDOMNode):
+ (WebInspector.ElementsPanel.prototype.selectDOMNode):
+ (WebInspector.ElementsPanel.prototype.updateModifiedNodes):
+ (WebInspector.ElementsPanel.prototype.updateBreadcrumb.selectCrumbFunction):
+ (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
+ (WebInspector.ElementsPanel.prototype.updateStyles):
+ (WebInspector.ElementsPanel.prototype.updateMetrics):
+ (WebInspector.ElementsPanel.prototype.updateProperties):
+ (WebInspector.ElementsPanel.prototype.updateEventListeners):
+ (WebInspector.ElementsPanel.prototype.handleCopyEvent):
+ (WebInspector.ElementsPanel.prototype.updateFocusedNode):
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeOutline):
+ (WebInspector.ElementsTreeOutline.prototype.selectedDOMNode):
+ (WebInspector.ElementsTreeOutline.prototype.selectDOMNode):
+ (WebInspector.ElementsTreeOutline.prototype.update):
+ (WebInspector.ElementsTreeOutline.prototype._revealAndSelectNode):
+ (WebInspector.ElementsTreeOutline.prototype._ondrop.callback):
+ (WebInspector.ElementsTreeOutline.prototype._ondrop):
+ (WebInspector.ElementsTreeElement.prototype._updateChildren.updateChildrenOfNode):
+ (WebInspector.ElementsTreeElement.prototype._updateChildren):
+ (WebInspector.ElementsTreeElement.prototype.onselect):
+ (WebInspector.ElementsTreeElement.prototype.selectOnMouseDown):
+ (WebInspector.ElementsTreeElement.prototype._startEditingTarget):
+ (WebInspector.ElementsTreeElement.prototype._startEditing):
+ * inspector/front-end/Panel.js:
+ (WebInspector.Panel.prototype.reset):
+ * inspector/front-end/ProfileView.js:
+ (WebInspector.CPUProfileView.prototype._jumpToSearchResult):
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel.prototype._addProfileHeader):
+ (WebInspector.ProfilesPanel.prototype.showProfile):
+ (WebInspector.ProfileSidebarTreeElement.prototype.onselect):
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype._initDefaultSelection.get if):
+ (WebInspector.ResourcesPanel.prototype._initDefaultSelection):
+ (WebInspector.ResourcesPanel.prototype.reset):
+ (WebInspector.ResourcesPanel.prototype.showResource):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylePropertiesSection.prototype.editingSelectorCommitted):
+ (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel.prototype._createTopPane):
+ * inspector/front-end/inspector.js:
+ * inspector/front-end/inspectorCommon.css:
+ (body):
+ * inspector/front-end/treeoutline.js:
+ (TreeOutline.prototype.revealAndSelect):
+ (TreeElement.prototype.selectOnMouseDown):
+ (TreeElement.prototype.revealAndSelect):
+ (TreeElement.prototype.select):
+
+2011-08-12 Yury Semikhatsky <yurys@chromium.org>
+
+ Unreviewed. Inspector clean-up: remove unused method declaration from InspectorAgent.h
+
+ * inspector/InspectorAgent.h:
+
+2011-08-12 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Network resource identifier should have RequestId type and requestId name in protocol.
+ https://bugs.webkit.org/show_bug.cgi?id=66061
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/ConsoleMessage.cpp:
+ (WebCore::ConsoleMessage::ConsoleMessage):
+ (WebCore::ConsoleMessage::addToFrontend):
+ * inspector/ConsoleMessage.h:
+ * inspector/IdentifiersFactory.cpp:
+ (WebCore::IdentifiersFactory::requestId):
+ * inspector/IdentifiersFactory.h:
+ * inspector/Inspector.json:
+ * inspector/InspectorConsoleAgent.cpp:
+ (WebCore::InspectorConsoleAgent::didReceiveResponse):
+ (WebCore::InspectorConsoleAgent::didFailLoading):
+ * inspector/InspectorResourceAgent.cpp:
+ (WebCore::InspectorResourceAgent::willSendRequest):
+ (WebCore::InspectorResourceAgent::markResourceAsCached):
+ (WebCore::InspectorResourceAgent::didReceiveResponse):
+ (WebCore::InspectorResourceAgent::didReceiveData):
+ (WebCore::InspectorResourceAgent::didFinishLoading):
+ (WebCore::InspectorResourceAgent::didFailLoading):
+ (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
+ (WebCore::InspectorResourceAgent::setInitialScriptContent):
+ (WebCore::InspectorResourceAgent::didReceiveScriptResponse):
+ (WebCore::InspectorResourceAgent::setInitialXHRContent):
+ (WebCore::InspectorResourceAgent::didReceiveXHRResponse):
+ (WebCore::InspectorResourceAgent::didCreateWebSocket):
+ (WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest):
+ (WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse):
+ (WebCore::InspectorResourceAgent::didCloseWebSocket):
+ (WebCore::InspectorResourceAgent::getResourceContent):
+ * inspector/InspectorResourceAgent.h:
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::willSendResourceRequest):
+ (WebCore::InspectorTimelineAgent::willReceiveResourceData):
+ (WebCore::InspectorTimelineAgent::willReceiveResourceResponse):
+ (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
+ * inspector/NetworkResourcesData.cpp:
+ (WebCore::NetworkResourcesData::ResourceData::ResourceData):
+ (WebCore::NetworkResourcesData::resourceCreated):
+ (WebCore::NetworkResourcesData::responseReceived):
+ (WebCore::NetworkResourcesData::setResourceType):
+ (WebCore::NetworkResourcesData::resourceType):
+ (WebCore::NetworkResourcesData::setResourceContent):
+ (WebCore::NetworkResourcesData::maybeAddResourceData):
+ (WebCore::NetworkResourcesData::maybeDecodeDataToContent):
+ (WebCore::NetworkResourcesData::addCachedResource):
+ (WebCore::NetworkResourcesData::addResourceSharedBuffer):
+ (WebCore::NetworkResourcesData::data):
+ (WebCore::NetworkResourcesData::clear):
+ (WebCore::NetworkResourcesData::ensureNoDataForRequestId):
+ (WebCore::NetworkResourcesData::ensureFreeSpace):
+ * inspector/NetworkResourcesData.h:
+ (WebCore::NetworkResourcesData::ResourceData::requestId):
+ * inspector/TimelineRecordFactory.cpp:
+ (WebCore::TimelineRecordFactory::createResourceSendRequestData):
+ (WebCore::TimelineRecordFactory::createResourceReceiveResponseData):
+ (WebCore::TimelineRecordFactory::createResourceFinishData):
+ (WebCore::TimelineRecordFactory::createReceiveResourceData):
+ * inspector/TimelineRecordFactory.h:
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype._registerConsoleDomainDispatcher.dispatcher.messageAdded):
+ * inspector/front-end/ExtensionAPI.js:
+ (WebInspector.injectedExtensionAPI.Resources.prototype.getHAR):
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer):
+ (WebInspector.ExtensionServer.prototype._notifyResourceFinished):
+ (WebInspector.ExtensionServer.prototype._onGetHAR):
+ (WebInspector.ExtensionServer.prototype._requestId):
+ * inspector/front-end/NetworkManager.js:
+ (WebInspector.NetworkManager.prototype.requestContent):
+ (WebInspector.NetworkDispatcher.prototype.requestWillBeSent):
+ (WebInspector.NetworkDispatcher.prototype.resourceMarkedAsCached):
+ (WebInspector.NetworkDispatcher.prototype.responseReceived):
+ (WebInspector.NetworkDispatcher.prototype.dataReceived):
+ (WebInspector.NetworkDispatcher.prototype.loadingFinished):
+ (WebInspector.NetworkDispatcher.prototype.loadingFailed):
+ (WebInspector.NetworkDispatcher.prototype.resourceLoadedFromMemoryCache):
+ (WebInspector.NetworkDispatcher.prototype.webSocketCreated):
+ (WebInspector.NetworkDispatcher.prototype.webSocketWillSendHandshakeRequest):
+ (WebInspector.NetworkDispatcher.prototype.webSocketHandshakeResponseReceived):
+ (WebInspector.NetworkDispatcher.prototype.webSocketClosed):
+ (WebInspector.NetworkDispatcher.prototype._appendRedirect):
+ (WebInspector.NetworkDispatcher.prototype._startResource):
+ (WebInspector.NetworkDispatcher.prototype._finishResource):
+ (WebInspector.NetworkDispatcher.prototype._createResource):
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.NetworkLogView.prototype._appendResource):
+ (WebInspector.NetworkLogView.prototype._matchResource):
+ (WebInspector.NetworkLogView.prototype._updateSearchMatchedListAfterRequestIdChanged):
+ (WebInspector.NetworkLogView.prototype.performSearch):
+ * inspector/front-end/Resource.js:
+ (WebInspector.Resource):
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel.prototype._addRecordToTimeline):
+ (WebInspector.TimelinePanel.prototype._findParentRecord):
+ (WebInspector.TimelinePanel.FormattedRecord):
+
+2011-08-11 Hans Wennborg <hans@chromium.org>
+
+ IndexedDB: Object store records don't need to have keys in all indexes
+ https://bugs.webkit.org/show_bug.cgi?id=66049
+
+ Reviewed by Tony Chang.
+
+ Allow inserting records in an object store even though they don't
+ yield keys in some index. The spec has changed in this regard.
+
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::putInternal):
+
+2011-08-10 Hans Wennborg <hans@chromium.org>
+
+ IndexedDB: Overwriting key in unique index should be possible
+ https://bugs.webkit.org/show_bug.cgi?id=65993
+
+ Reviewed by Tony Chang.
+
+ It should be possible to overwrite an object store record even if
+ there is a derived key for that record in an index with the unique flag set.
+
+ * storage/IDBBackingStore.h:
+ * storage/IDBIndexBackendImpl.cpp:
+ (WebCore::IDBIndexBackendImpl::addingKeyAllowed):
+ * storage/IDBIndexBackendImpl.h:
+ * storage/IDBLevelDBBackingStore.cpp:
+ (WebCore::IDBLevelDBBackingStore::keyExistsInIndex):
+ * storage/IDBLevelDBBackingStore.h:
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::putInternal):
+ * storage/IDBSQLiteBackingStore.cpp:
+ (WebCore::IDBSQLiteBackingStore::keyExistsInIndex):
+ * storage/IDBSQLiteBackingStore.h:
+
+2011-08-11 Yuta Kitamura <yutak@chromium.org>
+
+ WebSocket: Implement "protocol" attribute
+ https://bugs.webkit.org/show_bug.cgi?id=65248
+
+ Reviewed by Kent Tamura.
+
+ Tests: http/tests/websocket/tests/hybi/no-subprotocol.html (added)
+ http/tests/websocket/tests/hybi/set-protocol.html (added)
+ http/tests/websocket/tests/hybi/workers/no-subprotocol.html (added)
+ http/tests/websocket/tests/hixie76/undefined-attributes.html (updated)
+ http/tests/websocket/tests/hybi/multiple-subprotocols.html (updated)
+ http/tests/websocket/tests/hybi/workers/multiple-subprotocols.html (updated)
+
+ * websockets/ThreadableWebSocketChannel.h:
+ Added subprotocol() function. This function is named differently from the counterpart of
+ WebSocket class, because the name "protocol" can be confused with the WebSocket protocol.
+ Added m_useHixie76Protocol and m_subprotocol, because these value may be used after
+ m_channel has been released. Using bool should be fine, because boolean literals do not
+ appear in ambiguous context.
+ * websockets/ThreadableWebSocketChannelClientWrapper.cpp:
+ (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
+ (WebCore::ThreadableWebSocketChannelClientWrapper::subprotocol):
+ (WebCore::ThreadableWebSocketChannelClientWrapper::setSubprotocol):
+ * websockets/ThreadableWebSocketChannelClientWrapper.h:
+ * websockets/WebSocket.cpp:
+ (WebCore::WebSocket::WebSocket):
+ (WebCore::WebSocket::connect):
+ (WebCore::WebSocket::protocol):
+ The "protocol" attribute is available only when the hybi-10 protocol is chosen.
+ (WebCore::WebSocket::binaryType):
+ (WebCore::WebSocket::setBinaryType):
+ (WebCore::WebSocket::didConnect):
+ * websockets/WebSocket.h:
+ * websockets/WebSocket.idl:
+ * websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::subprotocol):
+ * websockets/WebSocketChannel.h:
+ * websockets/WorkerThreadableWebSocketChannel.cpp:
+ (WebCore::WorkerThreadableWebSocketChannel::subprotocol):
+ (WebCore::workerContextDidConnect):
+ Subprotocol value is saved in the client wrapper object after the WebSocket connection is
+ established.
+ (WebCore::WorkerThreadableWebSocketChannel::Peer::didConnect):
+ * websockets/WorkerThreadableWebSocketChannel.h:
+
+2011-08-11 Hayato Ito <hayato@chromium.org>
+
+ Implement proper handling of events with a related target in regard to shadow DOM boundaries.
+ https://bugs.webkit.org/show_bug.cgi?id=65899
+
+ Reviewed by Dimitri Glazkov.
+
+ Fixes issues in the following corner cases:
+ 1. When both a target node and a relatedTarget node are immediate children of
+ the same shadow root, an event is not dispatched.
+ 2. If a target node is an ancestor of a relatedTarget node, crossing
+ shadow boundaries, or vice verse, an event is not dispatched or wrongly
+ dispatched.
+
+ Test: fast/dom/shadow/shadow-boundary-events.html
+
+ * dom/EventDispatcher.cpp:
+ (WebCore::EventDispatcher::adjustToShadowBoundaries):
+
+2011-08-11 John Bauman <jbauman@chromium.org>
+
+ Readback composited webgl results for printing
+ https://bugs.webkit.org/show_bug.cgi?id=65658
+
+ Reviewed by James Robinson.
+
+ The real composited results may be locked inside the compositor
+ context's version of a texture because the drawing buffer was
+ automatically cleared, so read from there to get the actual presented
+ version to draw.
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas):
+ * platform/graphics/GraphicsContext3D.h:
+ * platform/graphics/chromium/Extensions3DChromium.h:
+ * platform/graphics/chromium/WebGLLayerChromium.cpp:
+ (WebCore::WebGLLayerChromium::paintRenderedResultsToCanvas):
+ * platform/graphics/chromium/WebGLLayerChromium.h:
+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
+ (WebCore::GraphicsContext3D::paintCompositedResultsToCanvas):
+
+2011-08-11 Andrew Wason <rectalogic@rectalogic.com>
+
+ REGRESSION: Qt JavaScript bridge signal connection fails
+ https://bugs.webkit.org/show_bug.cgi?id=66097
+
+ Reviewed by Gavin Barraclough.
+
+ Tests in WebKit/qt/tests/qwebframe
+
+ Call toThisObject() on exec->lexicalGlobalObject() so the correct
+ object is passed to the JS signal handler.
+
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::QtRuntimeConnectionMethod::call):
+
+2011-08-11 Nico Weber <thakis@chromium.org>
+
+ Remove incorrect comment about m_wheelEventHandlerCount
+ https://bugs.webkit.org/show_bug.cgi?id=66117
+
+ Reviewed by Simon Fraser.
+
+ From what I can tell, this number is changed only in
+ Frame::notifyChromeClientWheelEventHandlerCountChanged(),
+ and there it just reads the number modified in
+ Document::didAdd/RemoveWheelEventHandler(). So this is just the number
+ of event handlers (and not related to horizontal scrollbars), and the
+ variable name expresses that already.
+
+ * dom/Document.h:
+
+2011-08-11 James Robinson <jamesr@chromium.org>
+
+ [chromium] Defer managed texture creation and destruction until updateCompositorResources
+ https://bugs.webkit.org/show_bug.cgi?id=64772
+
+ Reviewed by Kenneth Russell.
+
+ This adds support for deferring GraphicsContext3D calls for texture creation and destruction for managed
+ textures and defers these calls until updateCompositorResources() for contents textures. The primary benefit of
+ this change is that it decouples managing the texture budget for the next frame (which has to happen before
+ painting layer contents) from the actual GL calls that create/destroy textures. That way, in the threaded
+ compositing world we can continue to use textures from the previous frame while software painting contents for
+ the next frame into software buffers or SkPictures.
+
+ Also renames LayerTexture to ManagedTexture to better reflect what it is. Not all ManagedTextures we create are
+ necessarily associated with layers, but they are all managed by a TextureManager.
+
+ Covered by compositing/ layout tests.
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerTextureUpdater::updateTextureRect):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::releaseTextures):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::updateLayers):
+ (WebCore::LayerRendererChromium::getOffscreenLayerTexture):
+ (WebCore::LayerRendererChromium::useRenderSurface):
+ (WebCore::LayerRendererChromium::initializeSharedObjects):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/LayerTextureUpdater.h:
+ * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
+ (WebCore::LayerTextureUpdaterBitmap::updateTextureRect):
+ (WebCore::LayerTextureUpdaterSkPicture::updateTextureRect):
+ * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::getSingleTexture):
+ (WebCore::LayerTilerChromium::createTile):
+ (WebCore::LayerTilerChromium::updateRect):
+ (WebCore::LayerTilerChromium::drawTiles):
+ * platform/graphics/chromium/LayerTilerChromium.h:
+ (WebCore::LayerTilerChromium::Tile::Tile):
+ (WebCore::LayerTilerChromium::Tile::texture):
+ * platform/graphics/chromium/ManagedTexture.cpp: Renamed from Source/WebCore/platform/graphics/chromium/LayerTexture.cpp.
+ (WebCore::ManagedTexture::ManagedTexture):
+ (WebCore::ManagedTexture::~ManagedTexture):
+ (WebCore::ManagedTexture::isValid):
+ (WebCore::ManagedTexture::reserve):
+ (WebCore::ManagedTexture::unreserve):
+ (WebCore::ManagedTexture::bindTexture):
+ (WebCore::ManagedTexture::framebufferTexture2D):
+ * platform/graphics/chromium/ManagedTexture.h: Renamed from Source/WebCore/platform/graphics/chromium/LayerTexture.h.
+ (WebCore::ManagedTexture::create):
+ (WebCore::ManagedTexture::format):
+ (WebCore::ManagedTexture::isReserved):
+ * platform/graphics/chromium/RenderSurfaceChromium.h:
+ * platform/graphics/chromium/TextureManager.cpp:
+ (WebCore::TextureManager::TextureManager):
+ (WebCore::TextureManager::deleteEvictedTextures):
+ (WebCore::TextureManager::removeTexture):
+ (WebCore::TextureManager::allocateTexture):
+ (WebCore::TextureManager::requestTexture):
+ * platform/graphics/chromium/TextureManager.h:
+ (WebCore::TextureManager::create):
+ (WebCore::TextureManager::setAssociatedContextDebugOnly):
+ (WebCore::TextureManager::associatedContextDebugOnly):
+ * platform/graphics/chromium/TiledLayerChromium.h:
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
+ (WebCore::CCHeadsUpDisplay::draw):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
+ * platform/graphics/chromium/cc/CCRenderSurface.cpp:
+ (WebCore::CCRenderSurface::prepareContentsTexture):
+ (WebCore::CCRenderSurface::drawSurface):
+ * platform/graphics/chromium/cc/CCRenderSurface.h:
+ (WebCore::CCRenderSurface::contentsTexture):
+ * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
+ (WebCore::CCTiledLayerImpl::bindContentsTexture):
+
+2011-08-11 David Kilzer <ddkilzer@apple.com>
+
+ <http://webkit.org/b/66113> [CFNetwork] willCacheResponse() leaks CFCachedURLResponseRef if delegate changes CacheStoragePolicy
+
+ Reviewed by Joseph Pecoraro.
+
+ This first appeared in ToT WebKit r23462 (Windows merge).
+
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::willCacheResponse): Only retain cachedResponse if we
+ are returning the same object passed into the method, otherwise
+ we end up double-retaining the new object created.
+
+2011-08-05 Nat Duca <nduca@chromium.org>
+
+ [chromium] Make WebViewImpl point at CCLayerTreeHost and related separation
+ https://bugs.webkit.org/show_bug.cgi?id=65791
+
+ With this patch, LayerRendererChromium becomes increasingly responsible
+ for rendering, while render scheduling and tree hosting moves into the
+ CCLayerTreeHost.
+
+ Reviewed by James Robinson.
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::createTextureUpdaterIfNeeded):
+ * platform/graphics/chromium/LayerChromium.h:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::create):
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::initialize):
+ (WebCore::LayerRendererChromium::releaseTextures):
+ (WebCore::LayerRendererChromium::updateRootLayerContents):
+ (WebCore::LayerRendererChromium::drawRootLayer):
+ (WebCore::LayerRendererChromium::invalidateRootLayerRect):
+ (WebCore::LayerRendererChromium::rootLayerChanged):
+ (WebCore::LayerRendererChromium::viewportChanged):
+ (WebCore::LayerRendererChromium::updateLayers):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::drawLayersInternal):
+ (WebCore::LayerRendererChromium::getFramebufferPixels):
+ (WebCore::LayerRendererChromium::getOffscreenLayerTexture):
+ (WebCore::LayerRendererChromium::copyOffscreenTextureToDisplay):
+ (WebCore::LayerRendererChromium::useRenderSurface):
+ (WebCore::LayerRendererChromium::setScissorToRect):
+ (WebCore::LayerRendererChromium::layerTreeAsText):
+ (WebCore::LayerRendererChromium::dumpRenderSurfaces):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::settings):
+ (WebCore::LayerRendererChromium::owner):
+ (WebCore::LayerRendererChromium::rootLayer):
+ (WebCore::LayerRendererChromium::skiaContext):
+ * platform/graphics/chromium/WebGLLayerChromium.cpp:
+ (WebCore::WebGLLayerChromium::setTextureUpdated):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
+ (WebCore::CCHeadsUpDisplay::draw):
+ (WebCore::CCHeadsUpDisplay::enabled):
+ * platform/graphics/chromium/cc/CCHeadsUpDisplay.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
+ (WebCore::CCLayerTreeHost::create):
+ (WebCore::CCLayerTreeHost::CCLayerTreeHost):
+ (WebCore::CCLayerTreeHost::initialize):
+ (WebCore::CCLayerTreeHost::animateAndLayout):
+ (WebCore::CCLayerTreeHost::createLayerTreeHostCommitter):
+ (WebCore::CCLayerTreeHost::createLayerTreeHostImpl):
+ (WebCore::CCLayerTreeHost::context):
+ (WebCore::CCLayerTreeHost::compositeAndReadback):
+ (WebCore::CCLayerTreeHost::createRootLayerPainter):
+ (WebCore::CCLayerTreeHost::finishAllRendering):
+ (WebCore::CCLayerTreeHost::invalidateRootLayerRect):
+ (WebCore::CCLayerTreeHost::setNeedsCommitAndRedraw):
+ (WebCore::CCLayerTreeHost::setNeedsRedraw):
+ (WebCore::CCLayerTreeHost::setRootLayer):
+ (WebCore::CCLayerTreeHost::setViewport):
+ (WebCore::CCLayerTreeHost::setVisible):
+ (WebCore::CCLayerTreeHost::doComposite):
+ (WebCore::CCLayerTreeHost::composite):
+ (WebCore::CCLayerTreeHost::reallocateRenderer):
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ (WebCore::CCLayerTreeHost::animating):
+ (WebCore::CCLayerTreeHost::setAnimating):
+ (WebCore::CCLayerTreeHost::rootLayer):
+ (WebCore::CCLayerTreeHost::settings):
+ (WebCore::CCLayerTreeHost::viewportContentRect):
+ (WebCore::CCLayerTreeHost::viewportScrollPosition):
+ (WebCore::CCLayerTreeHost::viewportVisibleRect):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
+ (WebCore::CCLayerTreeHostImpl::create):
+ (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
+ (WebCore::CCLayerTreeHostImpl::drawLayers):
+ (WebCore::CCLayerTreeHostImpl::drawLayersOnMainThread):
+ * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
+ * platform/graphics/chromium/cc/CCLayerTreeHostImplProxy.cpp:
+ (WebCore::CCLayerTreeHostImplProxy::initImplOnCCThread):
+
+2011-08-11 Jeff Miller <jeffm@apple.com>
+
+ WebCore::AVFWrapper fails to remove observer for kCACFContextNeedsFlushNotification
+ https://bugs.webkit.org/show_bug.cgi?id=66116
+
+ We need to pass 0 as the object parameter to CFNotificationCenterRemoveObserver() when removing
+ kCACFContextNeedsFlushNotification to match what we do when we registered for the same
+ notification with CFNotificationCenterAddObserver().
+
+ Reviewed by John Sullivan.
+
+ No new tests, uses existing media tests.
+
+ * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationCF.cpp:
+ (WebCore::AVFWrapper::disconnectAndDeleteAVFWrapper): Pass 0 as the object parameter to CFNotificationCenterRemoveObserver().
+ (WebCore::AVFWrapper::notificationCallback): Remove obsolete FIXME comment.
+
+2011-08-11 Ryosuke Niwa <rniwa@webkit.org>
+
+ Share code between isStyleSpanOrSpanWithOnlyStyleAttribute, isUnstyledStyleSpan,
+ isSpanWithoutAttributesOrUnstyleStyleSpan and replaceWithSpanOrRemoveIfWithoutAttributes
+ https://bugs.webkit.org/show_bug.cgi?id=66091
+
+ Reviewed by Tony Chang.
+
+ Extracted common code as hasNoAttributeOrOnlyStyleAttribute. The only behavioral difference is that
+ replaceWithSpanOrRemoveIfWithoutAttributes will now remove elements with class="Apple-style-span",
+ for which I'm adding a test.
+
+ Test: editing/style/remove-styled-element-with-style-span.html
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::hasNoAttributeOrOnlyStyleAttribute):
+ (WebCore::isStyleSpanOrSpanWithOnlyStyleAttribute):
+ (WebCore::isUnstyledStyleSpan):
+ (WebCore::isSpanWithoutAttributesOrUnstyleStyleSpan):
+ (WebCore::ApplyStyleCommand::replaceWithSpanOrRemoveIfWithoutAttributes):
+
+2011-08-11 Tom Zakrajsek <tomz@codeaurora.org>
+
+ Add HTMLUnknownElement interface as defined in
+ http://www.w3.org/TR/html5/elements.html#elements-in-the-dom.
+ https://bugs.webkit.org/show_bug.cgi?id=41841
+
+ Reviewed by Adam Barth.
+
+ Test: fast/html/unknown-tag.html
+
+ * CMakeLists.txt:
+ * CodeGenerators.pri:
+ * DerivedSources.cpp:
+ * DerivedSources.make:
+ * GNUmakefile.list.am:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/scripts/CodeGeneratorV8.pm:
+ (IsDOMNodeType):
+ * dom/make_names.pl:
+ (defaultParametersHash):
+ (buildConstructorMap):
+ (printJSElementIncludes):
+ (printElementIncludes):
+ (printWrapperFunctions):
+ (printWrapperFactoryCppFile):
+ * html/HTMLTagNames.in:
+ * html/HTMLUnknownElement.h: Added.
+ (WebCore::HTMLUnknownElement::create):
+ (WebCore::HTMLUnknownElement::HTMLUnknownElement):
+ * html/HTMLUnknownElement.idl: Added.
+ * mathml/mathtags.in:
+ * page/DOMWindow.idl:
+ * svg/svgtags.in:
+
+2011-08-11 Levi Weintraub <leviw@chromium.org>
+
+ Remove dead code: borderInnerRect
+ https://bugs.webkit.org/show_bug.cgi?id=66087
+
+ Reviewed by Adam Barth.
+
+ Removing an old and currently unused function: RenderObject::borderInnerRect.
+
+ No new tests since I'm just pruning dead code.
+
+ * rendering/RenderObject.cpp:
+ * rendering/RenderObject.h:
+
+2011-08-11 Simon Fraser <simon.fraser@apple.com>
+
+ Avoid adding the visible wash layer twice
+ https://bugs.webkit.org/show_bug.cgi?id=66098
+
+ Reviewed by Chris Marrin.
+
+ Fix two issues; only create a m_visibleTileWashLayer if we don't have one
+ already, and avoid adding multiple m_visibleTileWashLayers to the sublayers
+ array when flipping between tiled and non-tiled.
+
+ * platform/graphics/ca/GraphicsLayerCA.cpp:
+ (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
+
+2011-08-11 Benjamin Poulain <benjamin@webkit.org>
+
+ The PageSerializer should always use absolute URL
+ https://bugs.webkit.org/show_bug.cgi?id=66006
+
+ Reviewed by Adam Barth.
+
+ Page serializer resolves every URL for storing the resources.
+ The MarkupAccumulator used there should use the same rules in order to
+ create a valid file.
+
+ No new tests because the test infrastructure for this
+ does not exist with layout tests and the Chromium unit test for
+ the serializer are disabled.
+
+ * page/PageSerializer.cpp:
+ (WebCore::SerializerMarkupAccumulator::SerializerMarkupAccumulator):
+
+2011-08-01 Adrienne Walker <enne@google.com>
+
+ Enable fast path scrolling for composited iframes
+ https://bugs.webkit.org/show_bug.cgi?id=65056
+
+ Reviewed by James Robinson.
+
+ iframes with composited layers for content should be able to do fast
+ path scrolling because they draw into their own backing. To enable
+ this, useSlowRepaints is modified to return true only for the cases
+ that apply to composited layers. The fast path scrolling function is
+ modified to send the invalidation to the backing itself rather than to
+ the window.
+
+ Renamed a number of "slow repaint" functions to be the more accurate
+ "cannot blit to window" as it will not always force slow path
+ scrolling.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::reset):
+ (WebCore::FrameView::useSlowRepaints):
+ (WebCore::FrameView::useSlowRepaintsIfNotOverlapped):
+ (WebCore::FrameView::contentsInCompositedLayer):
+ (WebCore::FrameView::setCannotBlitToWindow):
+ (WebCore::FrameView::scrollContentsFastPath):
+ (WebCore::FrameView::scrollContentsSlowPath):
+ * page/FrameView.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::cannotBlitToWindow):
+ * rendering/RenderLayer.h:
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::paintBoxDecorations):
+
+2011-08-10 Adrienne Walker <enne@google.com>
+
+ Support creating compositing layers for scrollable frames and iframes
+ https://bugs.webkit.org/show_bug.cgi?id=55257
+
+ Reviewed by James Robinson.
+
+ When force compositing mode is turned on, iframes with overflow will
+ become composited (in order to enable faster scrolling).
+
+ This patch was originally by Daniel Sievers <sievers@chromium.org>.
+
+ Tests: platform/chromium/compositing/force-compositing-mode/no-overflow-iframe-layer.html
+ platform/chromium/compositing/force-compositing-mode/overflow-hidden-iframe-layer.html
+ platform/chromium/compositing/force-compositing-mode/overflow-iframe-enter-compositing.html
+ platform/chromium/compositing/force-compositing-mode/overflow-iframe-layer.html
+ platform/chromium/compositing/force-compositing-mode/overflow-iframe-leave-compositing.html
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags):
+ (WebCore::RenderLayerCompositor::requiresCompositingForScrollableFrame):
+ * rendering/RenderLayerCompositor.h:
+
+2011-08-11 Yong Li <yoli@rim.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=65944
+ Replace QuotesData::operator==() with QuotesData::equal(const QuotesData*
+ , const QuotesData*) because QuotesData::operator==() were using non-standard
+ C++ code that is not supported by all compilers.
+
+ Reviewed by Alexey Proskuryakov.
+
+ No new tests because some existing test cases can show the issue,
+ for example, fast/css/content/content-quotes-01.html.
+
+ * rendering/RenderQuote.cpp:
+ (WebCore::RenderQuote::styleDidChange):
+ * rendering/style/QuotesData.cpp:
+ (WebCore::QuotesData::equal):
+ * rendering/style/QuotesData.h:
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::setQuotes):
+ * rendering/style/StyleRareInheritedData.cpp:
+ (WebCore::StyleRareInheritedData::operator==):
+
+2011-08-11 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=66075
+
+ Turn on regions and exclusions by default. Fix one stray ifdef that I missed.
+
+ Reviewed by James Robinson.
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::contentToCSSValue):
+
+2011-08-11 David Reveman <reveman@chromium.org>
+
+ [Chromium] Temporarily disable layer anti-aliasing on ChromeOS.
+ https://bugs.webkit.org/show_bug.cgi?id=65922
+
+ Reviewed by James Robinson.
+
+ No new tests.
+
+ * platform/graphics/chromium/LayerTilerChromium.cpp:
+ (WebCore::LayerTilerChromium::draw):
+
+2011-08-11 Benjamin Poulain <benjamin@webkit.org>
+
+ [Qt] PageSerializer is specific to MHTML, we should not compile it
+ https://bugs.webkit.org/show_bug.cgi?id=66054
+
+ Reviewed by Noam Rosenthal.
+
+ PageSerializer is specific to MHTML. Do not build PageSerializer unless MHTML is enabled.
+
+ * WebCore.pro:
+
+2011-08-11 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: [refactoring] make tabbed pane a view
+ https://bugs.webkit.org/show_bug.cgi?id=66060
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/NetworkItemView.js:
+ (WebInspector.NetworkItemView):
+ (WebInspector.NetworkItemView.prototype.show):
+ (WebInspector.NetworkItemView.prototype._selectTab.get if):
+ (WebInspector.NetworkItemView.prototype._selectTab):
+ * inspector/front-end/TabbedPane.js:
+ (WebInspector.TabbedPane):
+ * inspector/front-end/inspector.html:
+
+2011-08-11 Andrey Kosyakov <caseq@chromium.org>
+
+ Web Inspector: source frame popover simetimes pops up after user switches from Scripts panel
+ https://bugs.webkit.org/show_bug.cgi?id=66057
+
+ Reviewed by Pavel Feldman.
+
+ * inspector/front-end/SourceFrame.js: remove popover timer when removing popover.
+ (WebInspector.SourceFrame.prototype._mouseDown):
+ (WebInspector.SourceFrame.prototype._hidePopup):
+
+2011-08-11 Vsevolod Vlasov <vsevik@chromium.org>
+
+ Web Inspector: Scripts panel: display the current search match index in the toolbar.
+ https://bugs.webkit.org/show_bug.cgi?id=66048
+
+ Reviewed by Pavel Feldman.
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.performSearch.finishedCallback):
+ (WebInspector.ScriptsPanel.prototype.performSearch):
+ (WebInspector.ScriptsPanel.prototype.jumpToNextSearchResult):
+ (WebInspector.ScriptsPanel.prototype.jumpToPreviousSearchResult):
+ * inspector/front-end/SearchController.js:
+ (WebInspector.SearchController.prototype.updateSearchMatchesCount):
+ (WebInspector.SearchController.prototype.updateCurrentMatchIndex):
+ (WebInspector.SearchController.prototype.activePanelChanged.performPanelSearch):
+ (WebInspector.SearchController.prototype.activePanelChanged):
+ (WebInspector.SearchController.prototype._updateSearchMatchesCountAndCurrentMatchIndex):
+ (WebInspector.SearchController.prototype._performSearch):
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype.get currentSearchResultIndex):
+
+2011-08-11 Xan Lopez <xlopez@igalia.com>
+
+ [GTK] Add another missing file to GNUmakefile
+
+ Reviewed by Gustavo Noronha.
+
+ * GNUmakefile.list.am:
+
+2011-08-11 Xan Lopez <xlopez@igalia.com>
+
+ [GTK] Add missing files to GNUMakefile
+
+ Reviewed by Gustavo Noronha.
+
+ * GNUmakefile.am:
+ * GNUmakefile.list.am:
+
+2011-08-11 Yuta Kitamura <yutak@chromium.org>
+
+ WebSocket: Use PassRefPtr<> in function arguments in WorkerThreadableWebSocketChannel.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=66047
+
+ Reviewed by Kent Tamura.
+
+ It's safe to use PassRefPtr<> in these functions because:
+ - CrossThreadTask knows how to pass a RefPtr<> across threads, and
+ - Call sites do not pass the pointers to anywhere else.
+
+ No change in functionality, thus no new tests.
+
+ * websockets/WorkerThreadableWebSocketChannel.cpp:
+ (WebCore::workerContextDidSend):
+ (WebCore::workerContextDidGetBufferedAmount):
+ (WebCore::workerContextDidConnect):
+ (WebCore::workerContextDidReceiveMessage):
+ (WebCore::workerContextDidStartClosingHandshake):
+ (WebCore::workerContextDidClose):
+
+2011-08-11 Pavel Feldman <pfeldman@google.com>
+
+ Web Inspector: [Mac] search as you type does not work with the new indent in the script selector.
+ https://bugs.webkit.org/show_bug.cgi?id=66039
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect):
+ * inspector/front-end/inspector.css:
+ (select.status-bar-item):
+
+2011-08-11 Alexis Menard <alexis.menard@openbossa.org>
+
+ Unreviewed build fix for Qt.
+
+ Make sure we build when Qt is namespaced.
+
+ * platform/graphics/gstreamer/PlatformVideoWindowPrivate.h:
+
+2011-08-11 Pavel Podivilov <podivilov@chromium.org>
+
+ Web Inspector: use source-file-replaced instead of source-file-changed event.
+ https://bugs.webkit.org/show_bug.cgi?id=65551
+
+ Reviewed by Pavel Feldman.
+
+ Test: inspector/debugger/source-frame-count.html
+
+ * inspector/front-end/DebuggerPresentationModel.js:
+ (WebInspector.DebuggerPresentationModel.prototype._addScript):
+ (WebInspector.DebuggerPresentationModel.prototype._uiSourceCodeReplaced):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._removeSourceFrame):
+ (WebInspector.ScriptsPanel.prototype._sourceFileReplaced):
+ * inspector/front-end/SourceFile.js:
+ (WebInspector.RawSourceCode):
+ (WebInspector.Raw