<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[189144] trunk/Source</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/189144">189144</a></dd>
<dt>Author</dt> <dd>mmaxfield@apple.com</dd>
<dt>Date</dt> <dd>2015-08-28 23:15:28 -0700 (Fri, 28 Aug 2015)</dd>
</dl>
<h3>Log Message</h3>
<pre>Migrate GraphicsContexts from pointers to references
https://bugs.webkit.org/show_bug.cgi?id=148561
Reviewed by Tim Horton.
Source/WebCore:
We were using GraphicsContext*s throughout our rendering code. However,
these contexts can't be nullptr. This patch migrates users to
GraphicsContext&s.
This is a purely mechanical change.
No new tests because there is no behavior change.
* css/CSSFilterImageValue.cpp:
(WebCore::CSSFilterImageValue::image):
* editing/Editor.cpp:
(WebCore::Editor::countMatchesForText):
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::paintCaret):
(WebCore::CaretBase::paintCaret):
(WebCore::DragCaretController::paintDragCaret):
* editing/FrameSelection.h:
* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::paint):
(WebCore::HTMLCanvasElement::createImageBuffer):
(WebCore::HTMLCanvasElement::drawingContext):
* html/HTMLCanvasElement.h:
* html/HTMLVideoElement.cpp:
(WebCore::HTMLVideoElement::paintCurrentFrameInContext):
* html/HTMLVideoElement.h:
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::drawImage):
(WebCore::drawImageToContext):
(WebCore::CanvasRenderingContext2D::fullCanvasCompositedDrawImage):
(WebCore::CanvasRenderingContext2D::drawTextInternal):
* html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::WebGLRenderingContextBase::drawImageIntoBuffer):
* inspector/InspectorOverlay.cpp:
(WebCore::InspectorOverlay::paint):
* page/FrameSnapshotting.cpp:
(WebCore::snapshotFrameRect):
* page/FrameView.cpp:
(WebCore::FrameView::paintScrollCorner):
(WebCore::FrameView::paintScrollbar):
(WebCore::FrameView::paintControlTints):
(WebCore::FrameView::willPaintContents):
(WebCore::FrameView::didPaintContents):
(WebCore::FrameView::paintContents):
(WebCore::FrameView::paintContentsForSnapshot):
(WebCore::FrameView::paintOverhangAreas):
(WebCore::FrameView::adjustPageHeightDeprecated):
* page/FrameView.h:
* page/PrintContext.cpp:
(WebCore::PrintContext::spoolPage):
(WebCore::PrintContext::spoolRect):
* page/win/FrameCGWin.cpp:
(WebCore::drawRectIntoContext):
(WebCore::imageFromRect):
* platform/ScrollView.cpp:
(WebCore::ScrollView::paintScrollCorner):
(WebCore::ScrollView::paintScrollbar):
(WebCore::ScrollView::paintScrollbars):
(WebCore::ScrollView::paintPanScrollIcon):
(WebCore::ScrollView::paint):
(WebCore::ScrollView::paintOverhangAreas):
(WebCore::ScrollView::calculateAndPaintOverhangAreas):
* platform/ScrollView.h:
* platform/Scrollbar.cpp:
(WebCore::Scrollbar::paint):
* platform/Scrollbar.h:
* platform/ScrollbarTheme.h:
(WebCore::ScrollbarTheme::paintScrollCorner):
(WebCore::ScrollbarTheme::defaultPaintScrollCorner):
(WebCore::ScrollbarTheme::paintOverhangAreas):
* platform/ScrollbarThemeComposite.cpp:
(WebCore::ScrollbarThemeComposite::paintScrollCorner):
(WebCore::ScrollbarThemeComposite::paintOverhangAreas):
* platform/ScrollbarThemeComposite.h:
* platform/Theme.cpp:
(WebCore::Theme::drawNamedImage):
* platform/Theme.h:
(WebCore::Theme::paint):
* platform/Widget.h:
* platform/cocoa/ThemeCocoa.cpp:
(WebCore::fitContextToBox):
(WebCore::ThemeCocoa::drawNamedImage):
* platform/cocoa/ThemeCocoa.h:
* platform/efl/WidgetEfl.cpp:
(WebCore::Widget::paint):
* platform/graphics/BitmapImage.cpp:
(WebCore::BitmapImage::drawPattern):
* platform/graphics/BitmapImage.h:
* platform/graphics/CrossfadeGeneratedImage.cpp:
(WebCore::drawCrossfadeSubimage):
(WebCore::CrossfadeGeneratedImage::drawCrossfade):
(WebCore::CrossfadeGeneratedImage::draw):
(WebCore::CrossfadeGeneratedImage::drawPattern):
* platform/graphics/CrossfadeGeneratedImage.h:
* platform/graphics/FontCascade.cpp:
(WebCore::FontCascade::drawText):
(WebCore::FontCascade::drawEmphasisMarks):
(WebCore::FontCascade::drawSimpleText):
(WebCore::FontCascade::drawEmphasisMarksForSimpleText):
(WebCore::FontCascade::drawGlyphBuffer):
* platform/graphics/FontCascade.h:
* platform/graphics/GeneratedImage.h:
* platform/graphics/GradientImage.cpp:
(WebCore::GradientImage::draw):
(WebCore::GradientImage::drawPattern):
* platform/graphics/GradientImage.h:
* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::drawText):
(WebCore::GraphicsContext::drawGlyphs):
(WebCore::GraphicsContext::drawEmphasisMarks):
(WebCore::GraphicsContext::drawBidiText):
(WebCore::GraphicsContext::drawImage):
(WebCore::GraphicsContext::drawTiledImage):
(WebCore::GraphicsContext::drawImageBuffer):
(WebCore::GraphicsContext::clipToImageBuffer):
(WebCore::GraphicsContext::createCompatibleBuffer):
(WebCore::GraphicsContext::isCompatibleWithBuffer):
* platform/graphics/GraphicsContext.h:
* platform/graphics/GraphicsContext3D.h:
* platform/graphics/Image.cpp:
(WebCore::Image::fillWithSolidColor):
(WebCore::Image::draw):
(WebCore::Image::drawTiled):
* platform/graphics/Image.h:
(WebCore::Image::drawFrameMatchingSourceSize):
* platform/graphics/ImageBuffer.cpp:
(WebCore::ImageBuffer::createCompatibleBuffer):
* platform/graphics/ImageBuffer.h:
* platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::paint):
(WebCore::MediaPlayer::paintCurrentFrameInContext):
* platform/graphics/MediaPlayer.h:
* platform/graphics/MediaPlayerPrivate.h:
(WebCore::MediaPlayerPrivateInterface::paintCurrentFrameInContext):
* platform/graphics/NamedImageGeneratedImage.cpp:
(WebCore::NamedImageGeneratedImage::draw):
(WebCore::NamedImageGeneratedImage::drawPattern):
* platform/graphics/NamedImageGeneratedImage.h:
* platform/graphics/ShadowBlur.cpp:
(WebCore::ShadowBlur::adjustBlurRadius):
(WebCore::ShadowBlur::calculateLayerBoundingRect):
(WebCore::ShadowBlur::drawShadowBuffer):
(WebCore::ShadowBlur::drawRectShadow):
(WebCore::ShadowBlur::drawInsetShadow):
(WebCore::ShadowBlur::drawRectShadowWithoutTiling):
(WebCore::ShadowBlur::drawInsetShadowWithoutTiling):
(WebCore::ShadowBlur::drawInsetShadowWithTiling):
(WebCore::ShadowBlur::drawRectShadowWithTiling):
(WebCore::ShadowBlur::drawLayerPieces):
(WebCore::ShadowBlur::blurAndColorShadowBuffer):
(WebCore::ShadowBlur::beginShadowLayer):
(WebCore::ShadowBlur::endShadowLayer):
* platform/graphics/ShadowBlur.h:
* platform/graphics/TextRun.h:
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
* platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
(WebCore::MediaPlayerPrivateAVFoundationCF::paintCurrentFrameInContext):
(WebCore::MediaPlayerPrivateAVFoundationCF::paint):
* platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::paintCurrentFrameInContext):
(WebCore::MediaPlayerPrivateAVFoundationObjC::paint):
(WebCore::MediaPlayerPrivateAVFoundationObjC::paintWithImageGenerator):
(WebCore::MediaPlayerPrivateAVFoundationObjC::paintWithVideoOutput):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::paint):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::paintCurrentFrameInContext):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::paint):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::paintCurrentFrameInContext):
* platform/graphics/cairo/BitmapImageCairo.cpp:
(WebCore::BitmapImage::draw):
* platform/graphics/cairo/FontCairo.cpp:
(WebCore::drawGlyphsToContext):
(WebCore::drawGlyphsShadow):
(WebCore::FontCascade::drawGlyphs):
* platform/graphics/cairo/FontCairoHarfbuzzNG.cpp:
(WebCore::FontCascade::drawComplexText):
(WebCore::FontCascade::drawEmphasisMarksForComplexText):
* platform/graphics/cairo/GraphicsContextCairo.cpp:
(WebCore::drawPathShadow):
(WebCore::fillCurrentCairoPath):
(WebCore::shadowAndFillCurrentCairoPath):
(WebCore::shadowAndStrokeCurrentCairoPath):
(WebCore::GraphicsContext::fillPath):
(WebCore::GraphicsContext::strokePath):
(WebCore::GraphicsContext::fillRect):
(WebCore::GraphicsContext::strokeRect):
(WebCore::GraphicsContext::platformFillRoundedRect):
(WebCore::GraphicsContext::fillRectWithRoundedHole):
* platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::ImageBuffer::context):
(WebCore::ImageBuffer::clip):
(WebCore::ImageBuffer::draw):
(WebCore::ImageBuffer::drawPattern):
(WebCore::ImageBuffer::toDataURL):
* platform/graphics/cairo/ImageCairo.cpp:
(WebCore::Image::drawPattern):
* platform/graphics/cairo/PlatformContextCairo.cpp:
(WebCore::PlatformContextCairo::drawSurfaceToContext):
* platform/graphics/cairo/PlatformContextCairo.h:
* platform/graphics/cg/BitmapImageCG.cpp:
(WebCore::BitmapImage::draw):
* platform/graphics/cg/GraphicsContext3DCG.cpp:
(WebCore::GraphicsContext3D::paintToCanvas):
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::fillRect):
(WebCore::GraphicsContext::platformFillRoundedRect):
(WebCore::GraphicsContext::fillRectWithRoundedHole):
* platform/graphics/cg/ImageBufferCG.cpp:
(WebCore::ImageBuffer::ImageBuffer):
(WebCore::ImageBuffer::context):
(WebCore::ImageBuffer::flushContext):
(WebCore::ImageBuffer::copyNativeImage):
(WebCore::ImageBuffer::draw):
(WebCore::ImageBuffer::drawPattern):
(WebCore::ImageBuffer::clip):
(WebCore::ImageBuffer::getUnmultipliedImageData):
(WebCore::ImageBuffer::getPremultipliedImageData):
(WebCore::ImageBuffer::putByteArray):
(WebCore::ImageBuffer::toDataURL):
* platform/graphics/cg/ImageCG.cpp:
(WebCore::Image::drawPattern):
* platform/graphics/cg/PDFDocumentImage.cpp:
(WebCore::PDFDocumentImage::cacheParametersMatch):
(WebCore::transformContextForPainting):
(WebCore::PDFDocumentImage::updateCachedImageIfNeeded):
(WebCore::PDFDocumentImage::draw):
(WebCore::applyRotationForPainting):
(WebCore::PDFDocumentImage::drawPDFPage):
* platform/graphics/cg/PDFDocumentImage.h:
* platform/graphics/cocoa/FontCascadeCocoa.mm:
(WebCore::showLetterpressedGlyphsWithAdvances):
(WebCore::showGlyphsWithAdvances):
(WebCore::FontCascade::drawGlyphs):
(WebCore::FontCascade::drawComplexText):
(WebCore::FontCascade::drawEmphasisMarksForComplexText):
* platform/graphics/efl/ImageBufferEfl.cpp:
(WebCore::ImageBuffer::toDataURL):
* platform/graphics/filters/FEBlend.cpp:
(WebCore::FEBlend::platformApplySoftware):
* platform/graphics/filters/FEColorMatrix.cpp:
(WebCore::FEColorMatrix::platformApplySoftware):
* platform/graphics/filters/FEComposite.cpp:
(WebCore::FEComposite::platformApplySoftware):
* platform/graphics/filters/FEDropShadow.cpp:
(WebCore::FEDropShadow::platformApplySoftware):
* platform/graphics/filters/FEFlood.cpp:
(WebCore::FEFlood::platformApplySoftware):
* platform/graphics/filters/FEMerge.cpp:
(WebCore::FEMerge::platformApplySoftware):
* platform/graphics/filters/FEOffset.cpp:
(WebCore::FEOffset::platformApplySoftware):
* platform/graphics/filters/FETile.cpp:
(WebCore::FETile::platformApplySoftware):
* platform/graphics/filters/FilterEffect.cpp:
(WebCore::FilterEffect::createImageBufferResult): Deleted.
* platform/graphics/filters/SourceAlpha.cpp:
(WebCore::SourceAlpha::platformApplySoftware):
* platform/graphics/filters/SourceGraphic.cpp:
(WebCore::SourceGraphic::platformApplySoftware):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::paint):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
* platform/graphics/mac/GraphicsContextMac.mm:
(WebCore::GraphicsContext::drawLineForDocumentMarker):
* platform/graphics/mac/IconMac.mm:
(WebCore::Icon::paint):
* platform/graphics/mac/MediaPlayerPrivateQTKit.h:
* platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
(WebCore::MediaPlayerPrivateQTKit::paintCurrentFrameInContext):
(WebCore::MediaPlayerPrivateQTKit::paint):
* platform/graphics/mac/PDFDocumentImageMac.mm:
(WebCore::PDFDocumentImage::drawPDFPage):
* platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
* platform/graphics/texmap/BitmapTexture.cpp:
(WebCore::BitmapTexture::updateContents):
* platform/graphics/win/FontCGWin.cpp:
(WebCore::FontCascade::drawGlyphs):
* platform/graphics/win/FontWin.cpp:
(WebCore::FontCascade::drawComplexText):
(WebCore::FontCascade::drawEmphasisMarksForComplexText):
* platform/graphics/win/IconWin.cpp:
(WebCore::Icon::paint):
* platform/graphics/win/ImageCGWin.cpp:
(WebCore::BitmapImage::getHBITMAPOfSize):
(WebCore::BitmapImage::drawFrameMatchingSourceSize):
* platform/graphics/win/ImageCairoWin.cpp:
(WebCore::BitmapImage::getHBITMAPOfSize):
(WebCore::BitmapImage::drawFrameMatchingSourceSize):
* platform/graphics/win/LocalWindowsContext.h:
(WebCore::LocalWindowsContext::LocalWindowsContext):
(WebCore::LocalWindowsContext::~LocalWindowsContext):
* platform/gtk/WidgetGtk.cpp:
(WebCore::Widget::paint):
* platform/ios/WidgetIOS.mm:
(WebCore::Widget::paint):
* platform/mac/DragImageMac.mm:
(WebCore::drawAtPoint):
* platform/mac/LocalCurrentGraphicsContext.h:
(WebCore::ContextContainer::ContextContainer):
* platform/mac/LocalCurrentGraphicsContext.mm:
(WebCore::LocalCurrentGraphicsContext::LocalCurrentGraphicsContext):
(WebCore::LocalCurrentGraphicsContext::~LocalCurrentGraphicsContext):
(WebCore::LocalCurrentGraphicsContext::cgContext):
* platform/mac/ScrollbarThemeMac.mm:
(WebCore::ScrollbarThemeMac::paint):
* platform/mac/ThemeMac.h:
* platform/mac/ThemeMac.mm:
(WebCore::paintToggleButton):
(WebCore::paintButton):
(WebCore::paintStepper):
(WebCore::ThemeMac::drawCellOrFocusRingWithViewIntoContext):
(WebCore::ThemeMac::paint):
* platform/mac/WidgetMac.mm:
(WebCore::Widget::paint):
* platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:
(WebCore::MockMediaPlayerMediaSource::paint):
* platform/mock/mediasource/MockMediaPlayerMediaSource.h:
* platform/win/PopupMenuWin.cpp:
(WebCore::PopupMenuWin::paint):
* platform/win/ScrollbarThemeWin.cpp:
(WebCore::ScrollbarThemeWin::paintTrackPiece):
(WebCore::ScrollbarThemeWin::paintButton):
(WebCore::ScrollbarThemeWin::paintThumb):
* platform/win/WebCoreTextRenderer.cpp:
(WebCore::doDrawTextAtPoint):
* platform/win/WidgetWin.cpp:
(WebCore::Widget::paint):
* rendering/EllipsisBox.cpp:
(WebCore::EllipsisBox::paint):
(WebCore::EllipsisBox::paintSelection):
* rendering/EllipsisBox.h:
* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::inputContext):
(WebCore::FilterEffectRendererHelper::applyFilterEffect):
* rendering/FilterEffectRenderer.h:
* rendering/ImageQualityController.cpp:
(WebCore::ImageQualityController::shouldPaintAtLowQuality):
* rendering/ImageQualityController.h:
* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::paintFillLayer):
(WebCore::InlineFlowBox::paintBoxDecorations):
(WebCore::InlineFlowBox::paintMask):
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paint):
* rendering/PaintInfo.h:
(WebCore::PaintInfo::PaintInfo):
(WebCore::PaintInfo::context):
(WebCore::PaintInfo::setContext):
(WebCore::PaintInfo::applyTransform):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paint):
(WebCore::RenderBlock::paintCaret):
(WebCore::RenderBlock::paintObject):
(WebCore::RenderBlock::paintSelection):
(WebCore::clipOutPositionedObjects):
(WebCore::RenderBlock::blockSelectionGap):
(WebCore::RenderBlock::logicalLeftSelectionGap):
(WebCore::RenderBlock::logicalRightSelectionGap):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::paintColumnRules):
(WebCore::RenderBlockFlow::clipOutFloatingObjects):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::determineBackgroundBleedAvoidance):
(WebCore::RenderBox::paintBoxDecorations):
(WebCore::RenderBox::paintMask):
(WebCore::RenderBox::paintClippingMask):
(WebCore::RenderBox::paintMaskImages):
(WebCore::RenderBox::paintFillLayers):
(WebCore::RenderBox::pushContentsClip):
(WebCore::RenderBox::popContentsClip):
* rendering/RenderBox.h:
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::shouldPaintAtLowQuality):
(WebCore::RenderBoxModelObject::clipRoundedInnerRect):
(WebCore::applyBoxShadowForBackground):
(WebCore::RenderBoxModelObject::paintMaskForTextFillBox):
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
(WebCore::RenderBoxModelObject::paintNinePieceImage):
(WebCore::RenderBoxModelObject::paintOneBorderSide):
(WebCore::RenderBoxModelObject::paintBorderSides):
(WebCore::RenderBoxModelObject::paintTranslucentBorderSides):
(WebCore::RenderBoxModelObject::paintBorder):
(WebCore::RenderBoxModelObject::drawBoxSideFromPath):
(WebCore::RenderBoxModelObject::clipBorderSidePolygon):
(WebCore::RenderBoxModelObject::clipBorderSideForComplexInnerPath):
(WebCore::RenderBoxModelObject::paintBoxShadow):
(WebCore::RenderBoxModelObject::shouldAntialiasLines):
* rendering/RenderBoxModelObject.h:
* rendering/RenderDetailsMarker.cpp:
(WebCore::RenderDetailsMarker::paint):
* rendering/RenderElement.cpp:
(WebCore::RenderElement::paintFocusRing):
(WebCore::RenderElement::paintOutline):
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::paintSnapshotImage):
(WebCore::drawReplacementArrow):
(WebCore::RenderEmbeddedObject::paintReplaced):
* rendering/RenderFieldset.cpp:
(WebCore::RenderFieldset::paintBoxDecorations):
* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::paintObject):
* rendering/RenderFrameSet.cpp:
(WebCore::RenderFrameSet::paintColumnBorder):
(WebCore::RenderFrameSet::paintRowBorder):
* rendering/RenderHTMLCanvas.cpp:
(WebCore::RenderHTMLCanvas::paintReplaced):
* rendering/RenderImage.cpp:
(WebCore::RenderImage::paintReplaced):
(WebCore::RenderImage::paintAreaElementFocusRing):
(WebCore::RenderImage::paintIntoRect):
* rendering/RenderImage.h:
* rendering/RenderInline.cpp:
(WebCore::RenderInline::paintOutline):
(WebCore::RenderInline::paintOutlineForLine):
* rendering/RenderInline.h:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::beginTransparencyLayers):
(WebCore::RenderLayer::paintOverflowControls):
(WebCore::RenderLayer::paintScrollCorner):
(WebCore::RenderLayer::drawPlatformResizerImage):
(WebCore::RenderLayer::paintResizer):
(WebCore::RenderLayer::paint):
(WebCore::RenderLayer::paintOverlayScrollbars):
(WebCore::RenderLayer::clipToRect):
(WebCore::RenderLayer::restoreClip):
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerContentsAndReflection):
(WebCore::RenderLayer::setupFontSubpixelQuantization):
(WebCore::RenderLayer::setupClipPath):
(WebCore::RenderLayer::hasFilterThatIsPainting):
(WebCore::RenderLayer::setupFilters):
(WebCore::RenderLayer::applyFilters):
(WebCore::RenderLayer::paintFixedLayersInNamedFlows):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::paintLayerByApplyingTransform):
(WebCore::RenderLayer::paintList):
(WebCore::RenderLayer::paintTransformedLayerIntoFragments):
(WebCore::RenderLayer::paintBackgroundForFragments):
(WebCore::RenderLayer::paintForegroundForFragments):
(WebCore::RenderLayer::paintForegroundForFragmentsWithPhase):
(WebCore::RenderLayer::paintOutlineForFragments):
(WebCore::RenderLayer::paintMaskForFragments):
(WebCore::RenderLayer::paintChildClippingMaskForFragments):
(WebCore::RenderLayer::paintOverflowControlsForFragments):
(WebCore::RenderLayer::calculateClipRects):
* rendering/RenderLayer.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::paintIntoLayer):
(WebCore::RenderLayerBacking::paintContents):
* rendering/RenderLayerBacking.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::paintScrollbar):
(WebCore::RenderLayerCompositor::paintContents):
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::paintScrollbar):
(WebCore::RenderListBox::paintItemForeground):
(WebCore::RenderListBox::paintItemBackground):
* rendering/RenderListMarker.cpp:
(WebCore::RenderListMarker::paint):
* rendering/RenderMediaControls.cpp:
(WebCore::getUnzoomedRectAndAdjustCurrentContext):
(WebCore::RenderMediaControls::paintMediaControlsPart):
* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::paintColumnRules):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::addPDFURLRect):
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::paint):
* rendering/RenderReplica.cpp:
(WebCore::RenderReplica::paint):
* rendering/RenderScrollbar.cpp:
(WebCore::RenderScrollbar::paint):
(WebCore::RenderScrollbar::paintPart):
* rendering/RenderScrollbar.h:
* rendering/RenderScrollbarPart.cpp:
(WebCore::RenderScrollbarPart::paintIntoRect):
* rendering/RenderScrollbarPart.h:
* rendering/RenderScrollbarTheme.cpp:
(WebCore::RenderScrollbarTheme::paintScrollCorner):
(WebCore::RenderScrollbarTheme::paintScrollbarBackground):
(WebCore::RenderScrollbarTheme::paintTrackBackground):
(WebCore::RenderScrollbarTheme::paintTrackPiece):
(WebCore::RenderScrollbarTheme::paintButton):
(WebCore::RenderScrollbarTheme::paintThumb):
* rendering/RenderScrollbarTheme.h:
* rendering/RenderSnapshottedPlugIn.cpp:
(WebCore::RenderSnapshottedPlugIn::paintSnapshot):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::paintBoxDecorations):
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::paintCollapsedBorders):
(WebCore::RenderTableCell::paintBackgroundsBehindCell):
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::paintRowGroupBorder):
(WebCore::RenderTableSection::paintRowGroupBorderIfRequired):
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::paint):
(WebCore::RenderTheme::paintBorderOnly):
(WebCore::RenderTheme::paintDecorations):
(WebCore::RenderTheme::paintSliderTicks):
* rendering/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::paintThemePart):
* rendering/RenderThemeGtk.cpp:
(WebCore::paintToggle):
(WebCore::renderButton):
(WebCore::RenderThemeGtk::paintMenuList):
(WebCore::RenderThemeGtk::paintTextField):
(WebCore::paintGdkPixbuf):
(WebCore::RenderThemeGtk::paintSearchFieldResultsDecorationPart):
(WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
(WebCore::RenderThemeGtk::paintCapsLockIndicator):
(WebCore::RenderThemeGtk::paintSliderTrack):
(WebCore::RenderThemeGtk::paintSliderThumb):
(WebCore::RenderThemeGtk::paintProgressBar):
(WebCore::paintSpinArrowButton):
(WebCore::RenderThemeGtk::paintMediaButton):
(WebCore::RenderThemeGtk::paintMediaFullscreenButton):
(WebCore::RenderThemeGtk::paintMediaMuteButton):
(WebCore::RenderThemeGtk::paintMediaPlayButton):
(WebCore::RenderThemeGtk::paintMediaSeekBackButton):
(WebCore::RenderThemeGtk::paintMediaSeekForwardButton):
(WebCore::RenderThemeGtk::paintMediaToggleClosedCaptionsButton):
(WebCore::RenderThemeGtk::paintMediaSliderTrack):
(WebCore::RenderThemeGtk::paintMediaSliderThumb):
(WebCore::RenderThemeGtk::paintMediaVolumeSliderTrack):
* rendering/RenderThemeGtk.h:
* rendering/RenderThemeIOS.h:
* rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::addRoundedBorderClip):
(WebCore::RenderThemeIOS::paintCheckboxDecorations):
(WebCore::RenderThemeIOS::paintRadioDecorations):
(WebCore::RenderThemeIOS::paintTextFieldDecorations):
(WebCore::RenderThemeIOS::paintMenuListButtonDecorations):
(WebCore::RenderThemeIOS::paintSliderTrack):
(WebCore::RenderThemeIOS::paintSliderThumbDecorations):
(WebCore::RenderThemeIOS::paintProgressBar):
(WebCore::RenderThemeIOS::paintPushButtonDecorations):
(WebCore::RenderThemeIOS::paintFileUploadIconDecorations):
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::paintTextField):
(WebCore::RenderThemeMac::paintTextArea):
(WebCore::RenderThemeMac::paintMenuList):
(WebCore::RenderThemeMac::paintMeter):
(WebCore::RenderThemeMac::paintProgressBar):
(WebCore::RenderThemeMac::paintMenuListButtonGradients):
(WebCore::RenderThemeMac::paintMenuListButtonDecorations):
(WebCore::RenderThemeMac::paintCellAndSetFocusedElementNeedsRepaintIfNecessary):
(WebCore::RenderThemeMac::paintSliderTrack):
(WebCore::RenderThemeMac::paintSliderThumb):
(WebCore::RenderThemeMac::paintSearchField):
(WebCore::RenderThemeMac::paintSearchFieldCancelButton):
(WebCore::RenderThemeMac::paintSearchFieldResultsDecorationPart):
(WebCore::RenderThemeMac::paintSearchFieldResultsButton):
(WebCore::RenderThemeMac::paintSnapshottedPluginOverlay):
(WebCore::RenderThemeMac::paintImageControlsButton):
(WebCore::RenderThemeMac::paintAttachment):
* rendering/RenderThemeSafari.cpp:
(WebCore::RenderThemeSafari::paintCheckbox):
(WebCore::RenderThemeSafari::paintRadio):
(WebCore::RenderThemeSafari::paintButton):
(WebCore::RenderThemeSafari::paintTextField):
(WebCore::RenderThemeSafari::paintCapsLockIndicator):
(WebCore::RenderThemeSafari::paintTextArea):
(WebCore::RenderThemeSafari::paintMenuList):
(WebCore::RenderThemeSafari::paintMenuListButtonGradients):
(WebCore::RenderThemeSafari::paintMenuListButtonDecorations):
(WebCore::RenderThemeSafari::paintSliderTrack):
(WebCore::RenderThemeSafari::paintSliderThumb):
(WebCore::RenderThemeSafari::paintSearchField):
(WebCore::RenderThemeSafari::paintSearchFieldCancelButton):
(WebCore::RenderThemeSafari::paintSearchFieldResultsDecorationPart):
(WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
* rendering/RenderThemeWin.cpp:
(WebCore::drawControl):
(WebCore::RenderThemeWin::paintButton):
(WebCore::RenderThemeWin::paintInnerSpinButton):
(WebCore::RenderThemeWin::paintTextField):
(WebCore::RenderThemeWin::paintMenuList):
(WebCore::RenderThemeWin::paintMenuListButtonDecorations):
(WebCore::RenderThemeWin::paintSliderTrack):
(WebCore::RenderThemeWin::paintSliderThumb):
(WebCore::RenderThemeWin::paintSearchFieldCancelButton):
(WebCore::RenderThemeWin::paintSearchFieldResultsDecorationPart):
(WebCore::RenderThemeWin::paintSearchFieldResultsButton):
(WebCore::RenderThemeWin::paintMeter):
* rendering/RenderVideo.cpp:
(WebCore::RenderVideo::paintReplaced):
* rendering/RenderView.cpp:
(WebCore::RenderView::paint):
(WebCore::RenderView::paintBoxDecorations):
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::paintContents):
(WebCore::RenderWidget::paint):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::lineSelectionGap):
* rendering/SimpleLineLayoutFunctions.cpp:
(WebCore::SimpleLineLayout::paintFlow):
* rendering/mathml/RenderMathMLBlock.cpp:
(WebCore::RenderMathMLBlock::paint):
* rendering/mathml/RenderMathMLFraction.cpp:
(WebCore::RenderMathMLFraction::paint):
* rendering/mathml/RenderMathMLMenclose.cpp:
(WebCore::RenderMathMLMenclose::paint):
* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::paintGlyph):
(WebCore::RenderMathMLOperator::fillWithVerticalExtensionGlyph):
(WebCore::RenderMathMLOperator::fillWithHorizontalExtensionGlyph):
(WebCore::RenderMathMLOperator::paint):
* rendering/mathml/RenderMathMLRadicalOperator.cpp:
(WebCore::RenderMathMLRadicalOperator::paint):
* rendering/mathml/RenderMathMLRoot.cpp:
(WebCore::RenderMathMLRoot::paint):
* rendering/shapes/Shape.cpp:
(WebCore::Shape::createRasterShape):
* rendering/style/NinePieceImage.cpp:
(WebCore::NinePieceImage::paint):
* rendering/style/NinePieceImage.h:
* rendering/svg/RenderSVGContainer.cpp:
(WebCore::RenderSVGContainer::paint):
* rendering/svg/RenderSVGEllipse.cpp:
(WebCore::RenderSVGEllipse::fillShape):
(WebCore::RenderSVGEllipse::strokeShape):
* rendering/svg/RenderSVGEllipse.h:
* rendering/svg/RenderSVGForeignObject.cpp:
(WebCore::RenderSVGForeignObject::paint):
* rendering/svg/RenderSVGImage.cpp:
(WebCore::RenderSVGImage::paint):
(WebCore::RenderSVGImage::paintForeground):
* rendering/svg/RenderSVGPath.cpp:
(WebCore::useStrokeStyleToFill):
(WebCore::RenderSVGPath::strokeShape):
* rendering/svg/RenderSVGPath.h:
* rendering/svg/RenderSVGRect.cpp:
(WebCore::RenderSVGRect::fillShape):
(WebCore::RenderSVGRect::strokeShape):
* rendering/svg/RenderSVGRect.h:
* rendering/svg/RenderSVGResourceClipper.cpp:
(WebCore::RenderSVGResourceClipper::applyResource):
(WebCore::RenderSVGResourceClipper::pathOnlyClipping):
(WebCore::RenderSVGResourceClipper::applyClippingToContext):
(WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
* rendering/svg/RenderSVGResourceClipper.h:
* rendering/svg/RenderSVGResourceFilter.cpp:
(WebCore::RenderSVGResourceFilter::applyResource):
* rendering/svg/RenderSVGResourceGradient.cpp:
(WebCore::createMaskAndSwapContextForTextGradient):
(WebCore::clipToTextMask):
(WebCore::RenderSVGResourceGradient::applyResource):
* rendering/svg/RenderSVGResourceMarker.cpp:
(WebCore::RenderSVGResourceMarker::applyViewportClip):
(WebCore::RenderSVGResourceMarker::draw):
* rendering/svg/RenderSVGResourceMasker.cpp:
(WebCore::RenderSVGResourceMasker::applyResource):
(WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
* rendering/svg/RenderSVGResourcePattern.cpp:
(WebCore::RenderSVGResourcePattern::postApplyResource):
(WebCore::RenderSVGResourcePattern::createTileImage):
* rendering/svg/RenderSVGResourceSolidColor.cpp:
(WebCore::RenderSVGResourceSolidColor::postApplyResource):
* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::paintReplaced):
* rendering/svg/RenderSVGShape.cpp:
(WebCore::RenderSVGShape::fillShape):
(WebCore::RenderSVGShape::strokeShape):
(WebCore::RenderSVGShape::fillStrokeMarkers):
(WebCore::RenderSVGShape::paint):
* rendering/svg/RenderSVGShape.h:
* rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::paint):
* rendering/svg/RenderSVGViewportContainer.cpp:
(WebCore::RenderSVGViewportContainer::applyViewportClip):
* rendering/svg/SVGInlineFlowBox.cpp:
(WebCore::SVGInlineFlowBox::paintSelectionBackground):
(WebCore::SVGInlineFlowBox::paint):
* rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::paintSelectionBackground):
(WebCore::SVGInlineTextBox::paint):
(WebCore::SVGInlineTextBox::prepareGraphicsContextForTextPainting):
(WebCore::SVGInlineTextBox::paintDecoration):
(WebCore::SVGInlineTextBox::paintDecorationWithStyle):
(WebCore::SVGInlineTextBox::paintTextWithShadows):
(WebCore::SVGInlineTextBox::paintText):
* rendering/svg/SVGInlineTextBox.h:
* rendering/svg/SVGRenderingContext.cpp:
(WebCore::SVGRenderingContext::~SVGRenderingContext):
(WebCore::SVGRenderingContext::prepareToRenderSVGContent):
(WebCore::SVGRenderingContext::createImageBuffer):
(WebCore::SVGRenderingContext::clipToImageBuffer):
(WebCore::SVGRenderingContext::bufferForeground):
(WebCore::SVGRenderingContext::renderSubtreeToImageBuffer): Deleted.
* rendering/svg/SVGRenderingContext.h:
* rendering/svg/SVGRootInlineBox.cpp:
(WebCore::SVGRootInlineBox::paint):
* rendering/svg/SVGTextRunRenderingContext.cpp:
(WebCore::SVGTextRunRenderingContext::drawSVGGlyphs):
* rendering/svg/SVGTextRunRenderingContext.h:
* svg/graphics/SVGImage.cpp:
(WebCore::SVGImage::drawForContainer):
(WebCore::SVGImage::drawPatternForContainer):
(WebCore::SVGImage::draw):
* svg/graphics/SVGImage.h:
* svg/graphics/SVGImageForContainer.cpp:
(WebCore::SVGImageForContainer::draw):
(WebCore::SVGImageForContainer::drawPattern):
* svg/graphics/SVGImageForContainer.h:
* svg/graphics/filters/SVGFEImage.cpp:
(WebCore::FEImage::platformApplySoftware):
Source/WebKit/mac:
* Misc/WebKitNSStringExtras.mm:
(-[NSString _web_drawAtPoint:font:textColor:allowingFontSmoothing:]):
* WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::imageForCurrentSharingServicePickerItem):
* WebView/WebFrame.mm:
(-[WebFrame _drawRect:contentsOnly:]):
Source/WebKit2:
* PluginProcess/PluginControllerProxy.cpp:
(WebKit::PluginControllerProxy::paint):
* Shared/cairo/ShareableBitmapCairo.cpp:
(WebKit::ShareableBitmap::paint):
* WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
(WebKit::imageForRect):
* WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
(WebKit::InjectedBundleRangeHandle::renderedImage):
* WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::paint):
(WebKit::NetscapePlugin::snapshot):
* WebProcess/Plugins/Netscape/NetscapePlugin.h:
* WebProcess/Plugins/Netscape/NetscapePluginNone.cpp:
(WebKit::NetscapePlugin::platformPaint):
* WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
(WebKit::NetscapePlugin::platformPaint):
* WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
(WebKit::NetscapePlugin::platformPaint):
* WebProcess/Plugins/PDF/PDFPlugin.h:
* WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::updateControlTints):
(WebKit::PDFPlugin::paintControlForLayerInContext):
* WebProcess/Plugins/Plugin.cpp:
(WebKit::Plugin::updateControlTints):
* WebProcess/Plugins/Plugin.h:
* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::paint):
* WebProcess/Plugins/PluginProxy.h:
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::paint):
* WebProcess/Plugins/PluginView.h:
* WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp:
(WebKit::convertCairoSurfaceToShareableBitmap):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::drawRect):
(WebKit::WebPage::snapshotAtSize):
(WebKit::WebPage::snapshotNode):
* WebProcess/WebPage/ios/FindControllerIOS.mm:
(WebKit::FindIndicatorOverlayClientIOS::drawRect):</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCorecssCSSFilterImageValuecpp">trunk/Source/WebCore/css/CSSFilterImageValue.cpp</a></li>
<li><a href="#trunkSourceWebCoreeditingEditorcpp">trunk/Source/WebCore/editing/Editor.cpp</a></li>
<li><a href="#trunkSourceWebCoreeditingFrameSelectioncpp">trunk/Source/WebCore/editing/FrameSelection.cpp</a></li>
<li><a href="#trunkSourceWebCoreeditingFrameSelectionh">trunk/Source/WebCore/editing/FrameSelection.h</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLCanvasElementcpp">trunk/Source/WebCore/html/HTMLCanvasElement.cpp</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLCanvasElementh">trunk/Source/WebCore/html/HTMLCanvasElement.h</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLVideoElementcpp">trunk/Source/WebCore/html/HTMLVideoElement.cpp</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLVideoElementh">trunk/Source/WebCore/html/HTMLVideoElement.h</a></li>
<li><a href="#trunkSourceWebCorehtmlcanvasCanvasRenderingContext2Dcpp">trunk/Source/WebCore/html/canvas/CanvasRenderingContext2D.cpp</a></li>
<li><a href="#trunkSourceWebCorehtmlcanvasWebGLRenderingContextBasecpp">trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorOverlaycpp">trunk/Source/WebCore/inspector/InspectorOverlay.cpp</a></li>
<li><a href="#trunkSourceWebCorepageFrameSnapshottingcpp">trunk/Source/WebCore/page/FrameSnapshotting.cpp</a></li>
<li><a href="#trunkSourceWebCorepageFrameViewcpp">trunk/Source/WebCore/page/FrameView.cpp</a></li>
<li><a href="#trunkSourceWebCorepageFrameViewh">trunk/Source/WebCore/page/FrameView.h</a></li>
<li><a href="#trunkSourceWebCorepagePrintContextcpp">trunk/Source/WebCore/page/PrintContext.cpp</a></li>
<li><a href="#trunkSourceWebCorepagewinFrameCGWincpp">trunk/Source/WebCore/page/win/FrameCGWin.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformScrollViewcpp">trunk/Source/WebCore/platform/ScrollView.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformScrollViewh">trunk/Source/WebCore/platform/ScrollView.h</a></li>
<li><a href="#trunkSourceWebCoreplatformScrollbarcpp">trunk/Source/WebCore/platform/Scrollbar.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformScrollbarh">trunk/Source/WebCore/platform/Scrollbar.h</a></li>
<li><a href="#trunkSourceWebCoreplatformScrollbarThemeh">trunk/Source/WebCore/platform/ScrollbarTheme.h</a></li>
<li><a href="#trunkSourceWebCoreplatformScrollbarThemeCompositecpp">trunk/Source/WebCore/platform/ScrollbarThemeComposite.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformScrollbarThemeCompositeh">trunk/Source/WebCore/platform/ScrollbarThemeComposite.h</a></li>
<li><a href="#trunkSourceWebCoreplatformThemecpp">trunk/Source/WebCore/platform/Theme.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformThemeh">trunk/Source/WebCore/platform/Theme.h</a></li>
<li><a href="#trunkSourceWebCoreplatformWidgeth">trunk/Source/WebCore/platform/Widget.h</a></li>
<li><a href="#trunkSourceWebCoreplatformcocoaThemeCocoacpp">trunk/Source/WebCore/platform/cocoa/ThemeCocoa.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformcocoaThemeCocoah">trunk/Source/WebCore/platform/cocoa/ThemeCocoa.h</a></li>
<li><a href="#trunkSourceWebCoreplatformeflWidgetEflcpp">trunk/Source/WebCore/platform/efl/WidgetEfl.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsBitmapImagecpp">trunk/Source/WebCore/platform/graphics/BitmapImage.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsBitmapImageh">trunk/Source/WebCore/platform/graphics/BitmapImage.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsCrossfadeGeneratedImagecpp">trunk/Source/WebCore/platform/graphics/CrossfadeGeneratedImage.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsCrossfadeGeneratedImageh">trunk/Source/WebCore/platform/graphics/CrossfadeGeneratedImage.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsFontCascadecpp">trunk/Source/WebCore/platform/graphics/FontCascade.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsFontCascadeh">trunk/Source/WebCore/platform/graphics/FontCascade.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsGeneratedImageh">trunk/Source/WebCore/platform/graphics/GeneratedImage.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsGradientImagecpp">trunk/Source/WebCore/platform/graphics/GradientImage.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsGradientImageh">trunk/Source/WebCore/platform/graphics/GradientImage.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsGraphicsContextcpp">trunk/Source/WebCore/platform/graphics/GraphicsContext.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsGraphicsContexth">trunk/Source/WebCore/platform/graphics/GraphicsContext.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsGraphicsContext3Dh">trunk/Source/WebCore/platform/graphics/GraphicsContext3D.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsImagecpp">trunk/Source/WebCore/platform/graphics/Image.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsImageh">trunk/Source/WebCore/platform/graphics/Image.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsImageBuffercpp">trunk/Source/WebCore/platform/graphics/ImageBuffer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsImageBufferh">trunk/Source/WebCore/platform/graphics/ImageBuffer.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsMediaPlayercpp">trunk/Source/WebCore/platform/graphics/MediaPlayer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsMediaPlayerh">trunk/Source/WebCore/platform/graphics/MediaPlayer.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsMediaPlayerPrivateh">trunk/Source/WebCore/platform/graphics/MediaPlayerPrivate.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsNamedImageGeneratedImagecpp">trunk/Source/WebCore/platform/graphics/NamedImageGeneratedImage.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsNamedImageGeneratedImageh">trunk/Source/WebCore/platform/graphics/NamedImageGeneratedImage.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsShadowBlurcpp">trunk/Source/WebCore/platform/graphics/ShadowBlur.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsShadowBlurh">trunk/Source/WebCore/platform/graphics/ShadowBlur.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsTextRunh">trunk/Source/WebCore/platform/graphics/TextRun.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsavfoundationMediaPlayerPrivateAVFoundationh">trunk/Source/WebCore/platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsavfoundationcfMediaPlayerPrivateAVFoundationCFcpp">trunk/Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsavfoundationcfMediaPlayerPrivateAVFoundationCFh">trunk/Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsavfoundationobjcMediaPlayerPrivateAVFoundationObjCh">trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsavfoundationobjcMediaPlayerPrivateAVFoundationObjCmm">trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsavfoundationobjcMediaPlayerPrivateMediaSourceAVFObjCh">trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsavfoundationobjcMediaPlayerPrivateMediaSourceAVFObjCmm">trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsavfoundationobjcMediaPlayerPrivateMediaStreamAVFObjCh">trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsavfoundationobjcMediaPlayerPrivateMediaStreamAVFObjCmm">trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscairoBitmapImageCairocpp">trunk/Source/WebCore/platform/graphics/cairo/BitmapImageCairo.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscairoFontCairocpp">trunk/Source/WebCore/platform/graphics/cairo/FontCairo.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscairoFontCairoHarfbuzzNGcpp">trunk/Source/WebCore/platform/graphics/cairo/FontCairoHarfbuzzNG.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscairoGraphicsContextCairocpp">trunk/Source/WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscairoImageBufferCairocpp">trunk/Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscairoImageCairocpp">trunk/Source/WebCore/platform/graphics/cairo/ImageCairo.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscairoPlatformContextCairocpp">trunk/Source/WebCore/platform/graphics/cairo/PlatformContextCairo.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscairoPlatformContextCairoh">trunk/Source/WebCore/platform/graphics/cairo/PlatformContextCairo.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscgBitmapImageCGcpp">trunk/Source/WebCore/platform/graphics/cg/BitmapImageCG.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscgGraphicsContext3DCGcpp">trunk/Source/WebCore/platform/graphics/cg/GraphicsContext3DCG.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscgGraphicsContextCGcpp">trunk/Source/WebCore/platform/graphics/cg/GraphicsContextCG.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscgImageBufferCGcpp">trunk/Source/WebCore/platform/graphics/cg/ImageBufferCG.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscgImageCGcpp">trunk/Source/WebCore/platform/graphics/cg/ImageCG.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscgPDFDocumentImagecpp">trunk/Source/WebCore/platform/graphics/cg/PDFDocumentImage.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscgPDFDocumentImageh">trunk/Source/WebCore/platform/graphics/cg/PDFDocumentImage.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscocoaFontCascadeCocoamm">trunk/Source/WebCore/platform/graphics/cocoa/FontCascadeCocoa.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicseflImageBufferEflcpp">trunk/Source/WebCore/platform/graphics/efl/ImageBufferEfl.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsfiltersFEBlendcpp">trunk/Source/WebCore/platform/graphics/filters/FEBlend.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsfiltersFEColorMatrixcpp">trunk/Source/WebCore/platform/graphics/filters/FEColorMatrix.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsfiltersFECompositecpp">trunk/Source/WebCore/platform/graphics/filters/FEComposite.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsfiltersFEDropShadowcpp">trunk/Source/WebCore/platform/graphics/filters/FEDropShadow.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsfiltersFEFloodcpp">trunk/Source/WebCore/platform/graphics/filters/FEFlood.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsfiltersFEMergecpp">trunk/Source/WebCore/platform/graphics/filters/FEMerge.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsfiltersFEOffsetcpp">trunk/Source/WebCore/platform/graphics/filters/FEOffset.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsfiltersFETilecpp">trunk/Source/WebCore/platform/graphics/filters/FETile.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsfiltersFilterEffectcpp">trunk/Source/WebCore/platform/graphics/filters/FilterEffect.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsfiltersSourceAlphacpp">trunk/Source/WebCore/platform/graphics/filters/SourceAlpha.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsfiltersSourceGraphiccpp">trunk/Source/WebCore/platform/graphics/filters/SourceGraphic.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerMediaPlayerPrivateGStreamerBasecpp">trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsgstreamerMediaPlayerPrivateGStreamerBaseh">trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsmacGraphicsContextMacmm">trunk/Source/WebCore/platform/graphics/mac/GraphicsContextMac.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsmacIconMacmm">trunk/Source/WebCore/platform/graphics/mac/IconMac.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsmacMediaPlayerPrivateQTKith">trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsmacMediaPlayerPrivateQTKitmm">trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsmacPDFDocumentImageMacmm">trunk/Source/WebCore/platform/graphics/mac/PDFDocumentImageMac.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsopenglGraphicsContext3DOpenGLCommoncpp">trunk/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicstexmapBitmapTexturecpp">trunk/Source/WebCore/platform/graphics/texmap/BitmapTexture.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicswinFontCGWincpp">trunk/Source/WebCore/platform/graphics/win/FontCGWin.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicswinFontWincpp">trunk/Source/WebCore/platform/graphics/win/FontWin.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicswinIconWincpp">trunk/Source/WebCore/platform/graphics/win/IconWin.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicswinImageCGWincpp">trunk/Source/WebCore/platform/graphics/win/ImageCGWin.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicswinImageCairoWincpp">trunk/Source/WebCore/platform/graphics/win/ImageCairoWin.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicswinLocalWindowsContexth">trunk/Source/WebCore/platform/graphics/win/LocalWindowsContext.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgtkWidgetGtkcpp">trunk/Source/WebCore/platform/gtk/WidgetGtk.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformiosWidgetIOSmm">trunk/Source/WebCore/platform/ios/WidgetIOS.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformmacDragImageMacmm">trunk/Source/WebCore/platform/mac/DragImageMac.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformmacLocalCurrentGraphicsContexth">trunk/Source/WebCore/platform/mac/LocalCurrentGraphicsContext.h</a></li>
<li><a href="#trunkSourceWebCoreplatformmacLocalCurrentGraphicsContextmm">trunk/Source/WebCore/platform/mac/LocalCurrentGraphicsContext.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformmacScrollbarThemeMacmm">trunk/Source/WebCore/platform/mac/ScrollbarThemeMac.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformmacThemeMach">trunk/Source/WebCore/platform/mac/ThemeMac.h</a></li>
<li><a href="#trunkSourceWebCoreplatformmacThemeMacmm">trunk/Source/WebCore/platform/mac/ThemeMac.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformmacWidgetMacmm">trunk/Source/WebCore/platform/mac/WidgetMac.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformmockmediasourceMockMediaPlayerMediaSourcecpp">trunk/Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformmockmediasourceMockMediaPlayerMediaSourceh">trunk/Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.h</a></li>
<li><a href="#trunkSourceWebCoreplatformwinPopupMenuWincpp">trunk/Source/WebCore/platform/win/PopupMenuWin.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformwinScrollbarThemeWincpp">trunk/Source/WebCore/platform/win/ScrollbarThemeWin.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformwinWebCoreTextRenderercpp">trunk/Source/WebCore/platform/win/WebCoreTextRenderer.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformwinWidgetWincpp">trunk/Source/WebCore/platform/win/WidgetWin.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingEllipsisBoxcpp">trunk/Source/WebCore/rendering/EllipsisBox.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingEllipsisBoxh">trunk/Source/WebCore/rendering/EllipsisBox.h</a></li>
<li><a href="#trunkSourceWebCorerenderingFilterEffectRenderercpp">trunk/Source/WebCore/rendering/FilterEffectRenderer.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingFilterEffectRendererh">trunk/Source/WebCore/rendering/FilterEffectRenderer.h</a></li>
<li><a href="#trunkSourceWebCorerenderingImageQualityControllercpp">trunk/Source/WebCore/rendering/ImageQualityController.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingImageQualityControllerh">trunk/Source/WebCore/rendering/ImageQualityController.h</a></li>
<li><a href="#trunkSourceWebCorerenderingInlineFlowBoxcpp">trunk/Source/WebCore/rendering/InlineFlowBox.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingInlineTextBoxcpp">trunk/Source/WebCore/rendering/InlineTextBox.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingPaintInfoh">trunk/Source/WebCore/rendering/PaintInfo.h</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderBlockcpp">trunk/Source/WebCore/rendering/RenderBlock.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderBlockFlowcpp">trunk/Source/WebCore/rendering/RenderBlockFlow.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderBoxcpp">trunk/Source/WebCore/rendering/RenderBox.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderBoxh">trunk/Source/WebCore/rendering/RenderBox.h</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderBoxModelObjectcpp">trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderBoxModelObjecth">trunk/Source/WebCore/rendering/RenderBoxModelObject.h</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderDetailsMarkercpp">trunk/Source/WebCore/rendering/RenderDetailsMarker.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderElementcpp">trunk/Source/WebCore/rendering/RenderElement.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderEmbeddedObjectcpp">trunk/Source/WebCore/rendering/RenderEmbeddedObject.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderFieldsetcpp">trunk/Source/WebCore/rendering/RenderFieldset.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderFileUploadControlcpp">trunk/Source/WebCore/rendering/RenderFileUploadControl.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderFrameSetcpp">trunk/Source/WebCore/rendering/RenderFrameSet.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderHTMLCanvascpp">trunk/Source/WebCore/rendering/RenderHTMLCanvas.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderImagecpp">trunk/Source/WebCore/rendering/RenderImage.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderImageh">trunk/Source/WebCore/rendering/RenderImage.h</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderInlinecpp">trunk/Source/WebCore/rendering/RenderInline.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderInlineh">trunk/Source/WebCore/rendering/RenderInline.h</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderLayercpp">trunk/Source/WebCore/rendering/RenderLayer.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderLayerh">trunk/Source/WebCore/rendering/RenderLayer.h</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderLayerBackingcpp">trunk/Source/WebCore/rendering/RenderLayerBacking.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderLayerBackingh">trunk/Source/WebCore/rendering/RenderLayerBacking.h</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderLayerCompositorcpp">trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderListBoxcpp">trunk/Source/WebCore/rendering/RenderListBox.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderListMarkercpp">trunk/Source/WebCore/rendering/RenderListMarker.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderMediaControlscpp">trunk/Source/WebCore/rendering/RenderMediaControls.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderMultiColumnSetcpp">trunk/Source/WebCore/rendering/RenderMultiColumnSet.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderObjectcpp">trunk/Source/WebCore/rendering/RenderObject.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderReplacedcpp">trunk/Source/WebCore/rendering/RenderReplaced.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderReplicacpp">trunk/Source/WebCore/rendering/RenderReplica.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderScrollbarcpp">trunk/Source/WebCore/rendering/RenderScrollbar.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderScrollbarh">trunk/Source/WebCore/rendering/RenderScrollbar.h</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderScrollbarPartcpp">trunk/Source/WebCore/rendering/RenderScrollbarPart.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderScrollbarParth">trunk/Source/WebCore/rendering/RenderScrollbarPart.h</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderScrollbarThemecpp">trunk/Source/WebCore/rendering/RenderScrollbarTheme.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderScrollbarThemeh">trunk/Source/WebCore/rendering/RenderScrollbarTheme.h</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderSnapshottedPlugIncpp">trunk/Source/WebCore/rendering/RenderSnapshottedPlugIn.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderTablecpp">trunk/Source/WebCore/rendering/RenderTable.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderTableCellcpp">trunk/Source/WebCore/rendering/RenderTableCell.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderTableSectioncpp">trunk/Source/WebCore/rendering/RenderTableSection.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderThemecpp">trunk/Source/WebCore/rendering/RenderTheme.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderThemeEflcpp">trunk/Source/WebCore/rendering/RenderThemeEfl.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderThemeGtkcpp">trunk/Source/WebCore/rendering/RenderThemeGtk.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderThemeGtkh">trunk/Source/WebCore/rendering/RenderThemeGtk.h</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderThemeIOSh">trunk/Source/WebCore/rendering/RenderThemeIOS.h</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderThemeIOSmm">trunk/Source/WebCore/rendering/RenderThemeIOS.mm</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderThemeMacmm">trunk/Source/WebCore/rendering/RenderThemeMac.mm</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderThemeSafaricpp">trunk/Source/WebCore/rendering/RenderThemeSafari.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderThemeWincpp">trunk/Source/WebCore/rendering/RenderThemeWin.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderVideocpp">trunk/Source/WebCore/rendering/RenderVideo.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderViewcpp">trunk/Source/WebCore/rendering/RenderView.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderWidgetcpp">trunk/Source/WebCore/rendering/RenderWidget.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRootInlineBoxcpp">trunk/Source/WebCore/rendering/RootInlineBox.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingSimpleLineLayoutFunctionscpp">trunk/Source/WebCore/rendering/SimpleLineLayoutFunctions.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingmathmlRenderMathMLBlockcpp">trunk/Source/WebCore/rendering/mathml/RenderMathMLBlock.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingmathmlRenderMathMLFractioncpp">trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingmathmlRenderMathMLMenclosecpp">trunk/Source/WebCore/rendering/mathml/RenderMathMLMenclose.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingmathmlRenderMathMLOperatorcpp">trunk/Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingmathmlRenderMathMLRadicalOperatorcpp">trunk/Source/WebCore/rendering/mathml/RenderMathMLRadicalOperator.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingmathmlRenderMathMLRootcpp">trunk/Source/WebCore/rendering/mathml/RenderMathMLRoot.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingshapesShapecpp">trunk/Source/WebCore/rendering/shapes/Shape.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingstyleNinePieceImagecpp">trunk/Source/WebCore/rendering/style/NinePieceImage.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingstyleNinePieceImageh">trunk/Source/WebCore/rendering/style/NinePieceImage.h</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGContainercpp">trunk/Source/WebCore/rendering/svg/RenderSVGContainer.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGEllipsecpp">trunk/Source/WebCore/rendering/svg/RenderSVGEllipse.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGEllipseh">trunk/Source/WebCore/rendering/svg/RenderSVGEllipse.h</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGForeignObjectcpp">trunk/Source/WebCore/rendering/svg/RenderSVGForeignObject.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGImagecpp">trunk/Source/WebCore/rendering/svg/RenderSVGImage.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGPathcpp">trunk/Source/WebCore/rendering/svg/RenderSVGPath.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGPathh">trunk/Source/WebCore/rendering/svg/RenderSVGPath.h</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGRectcpp">trunk/Source/WebCore/rendering/svg/RenderSVGRect.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGRecth">trunk/Source/WebCore/rendering/svg/RenderSVGRect.h</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGResourceClippercpp">trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGResourceClipperh">trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGResourceFiltercpp">trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGResourceGradientcpp">trunk/Source/WebCore/rendering/svg/RenderSVGResourceGradient.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGResourceMarkercpp">trunk/Source/WebCore/rendering/svg/RenderSVGResourceMarker.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGResourceMaskercpp">trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGResourcePatterncpp">trunk/Source/WebCore/rendering/svg/RenderSVGResourcePattern.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGResourceSolidColorcpp">trunk/Source/WebCore/rendering/svg/RenderSVGResourceSolidColor.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGRootcpp">trunk/Source/WebCore/rendering/svg/RenderSVGRoot.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGShapecpp">trunk/Source/WebCore/rendering/svg/RenderSVGShape.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGShapeh">trunk/Source/WebCore/rendering/svg/RenderSVGShape.h</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGTextcpp">trunk/Source/WebCore/rendering/svg/RenderSVGText.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgRenderSVGViewportContainercpp">trunk/Source/WebCore/rendering/svg/RenderSVGViewportContainer.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgSVGInlineFlowBoxcpp">trunk/Source/WebCore/rendering/svg/SVGInlineFlowBox.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgSVGInlineTextBoxcpp">trunk/Source/WebCore/rendering/svg/SVGInlineTextBox.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgSVGInlineTextBoxh">trunk/Source/WebCore/rendering/svg/SVGInlineTextBox.h</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgSVGRenderingContextcpp">trunk/Source/WebCore/rendering/svg/SVGRenderingContext.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgSVGRenderingContexth">trunk/Source/WebCore/rendering/svg/SVGRenderingContext.h</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgSVGRootInlineBoxcpp">trunk/Source/WebCore/rendering/svg/SVGRootInlineBox.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgSVGTextRunRenderingContextcpp">trunk/Source/WebCore/rendering/svg/SVGTextRunRenderingContext.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingsvgSVGTextRunRenderingContexth">trunk/Source/WebCore/rendering/svg/SVGTextRunRenderingContext.h</a></li>
<li><a href="#trunkSourceWebCoresvggraphicsSVGImagecpp">trunk/Source/WebCore/svg/graphics/SVGImage.cpp</a></li>
<li><a href="#trunkSourceWebCoresvggraphicsSVGImageh">trunk/Source/WebCore/svg/graphics/SVGImage.h</a></li>
<li><a href="#trunkSourceWebCoresvggraphicsSVGImageForContainercpp">trunk/Source/WebCore/svg/graphics/SVGImageForContainer.cpp</a></li>
<li><a href="#trunkSourceWebCoresvggraphicsSVGImageForContainerh">trunk/Source/WebCore/svg/graphics/SVGImageForContainer.h</a></li>
<li><a href="#trunkSourceWebCoresvggraphicsfiltersSVGFEImagecpp">trunk/Source/WebCore/svg/graphics/filters/SVGFEImage.cpp</a></li>
<li><a href="#trunkSourceWebKitmacChangeLog">trunk/Source/WebKit/mac/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitmacMiscWebKitNSStringExtrasmm">trunk/Source/WebKit/mac/Misc/WebKitNSStringExtras.mm</a></li>
<li><a href="#trunkSourceWebKitmacWebCoreSupportWebContextMenuClientmm">trunk/Source/WebKit/mac/WebCoreSupport/WebContextMenuClient.mm</a></li>
<li><a href="#trunkSourceWebKitmacWebViewWebFramemm">trunk/Source/WebKit/mac/WebView/WebFrame.mm</a></li>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2PluginProcessPluginControllerProxycpp">trunk/Source/WebKit2/PluginProcess/PluginControllerProxy.cpp</a></li>
<li><a href="#trunkSourceWebKit2SharedcairoShareableBitmapCairocpp">trunk/Source/WebKit2/Shared/cairo/ShareableBitmapCairo.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessInjectedBundleDOMInjectedBundleNodeHandlecpp">trunk/Source/WebKit2/WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessInjectedBundleDOMInjectedBundleRangeHandlecpp">trunk/Source/WebKit2/WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsNetscapeNetscapePlugincpp">trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsNetscapeNetscapePluginh">trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsNetscapeNetscapePluginNonecpp">trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePluginNone.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsNetscapemacNetscapePluginMacmm">trunk/Source/WebKit2/WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsNetscapex11NetscapePluginX11cpp">trunk/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPDFPDFPluginh">trunk/Source/WebKit2/WebProcess/Plugins/PDF/PDFPlugin.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPDFPDFPluginmm">trunk/Source/WebKit2/WebProcess/Plugins/PDF/PDFPlugin.mm</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPlugincpp">trunk/Source/WebKit2/WebProcess/Plugins/Plugin.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPluginh">trunk/Source/WebKit2/WebProcess/Plugins/Plugin.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPluginProxycpp">trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPluginProxyh">trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPluginViewcpp">trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPluginViewh">trunk/Source/WebKit2/WebProcess/Plugins/PluginView.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebCoreSupportgtkWebDragClientGtkcpp">trunk/Source/WebKit2/WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPageWebPagecpp">trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPageiosFindControllerIOSmm">trunk/Source/WebKit2/WebProcess/WebPage/ios/FindControllerIOS.mm</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/ChangeLog        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1,3 +1,723 @@
</span><ins>+2015-08-28 Myles C. Maxfield <mmaxfield@apple.com>
+
+ Migrate GraphicsContexts from pointers to references
+ https://bugs.webkit.org/show_bug.cgi?id=148561
+
+ Reviewed by Tim Horton.
+
+ We were using GraphicsContext*s throughout our rendering code. However,
+ these contexts can't be nullptr. This patch migrates users to
+ GraphicsContext&s.
+
+ This is a purely mechanical change.
+
+ No new tests because there is no behavior change.
+
+ * css/CSSFilterImageValue.cpp:
+ (WebCore::CSSFilterImageValue::image):
+ * editing/Editor.cpp:
+ (WebCore::Editor::countMatchesForText):
+ * editing/FrameSelection.cpp:
+ (WebCore::FrameSelection::paintCaret):
+ (WebCore::CaretBase::paintCaret):
+ (WebCore::DragCaretController::paintDragCaret):
+ * editing/FrameSelection.h:
+ * html/HTMLCanvasElement.cpp:
+ (WebCore::HTMLCanvasElement::paint):
+ (WebCore::HTMLCanvasElement::createImageBuffer):
+ (WebCore::HTMLCanvasElement::drawingContext):
+ * html/HTMLCanvasElement.h:
+ * html/HTMLVideoElement.cpp:
+ (WebCore::HTMLVideoElement::paintCurrentFrameInContext):
+ * html/HTMLVideoElement.h:
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::drawImage):
+ (WebCore::drawImageToContext):
+ (WebCore::CanvasRenderingContext2D::fullCanvasCompositedDrawImage):
+ (WebCore::CanvasRenderingContext2D::drawTextInternal):
+ * html/canvas/WebGLRenderingContextBase.cpp:
+ (WebCore::WebGLRenderingContextBase::drawImageIntoBuffer):
+ * inspector/InspectorOverlay.cpp:
+ (WebCore::InspectorOverlay::paint):
+ * page/FrameSnapshotting.cpp:
+ (WebCore::snapshotFrameRect):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::paintScrollCorner):
+ (WebCore::FrameView::paintScrollbar):
+ (WebCore::FrameView::paintControlTints):
+ (WebCore::FrameView::willPaintContents):
+ (WebCore::FrameView::didPaintContents):
+ (WebCore::FrameView::paintContents):
+ (WebCore::FrameView::paintContentsForSnapshot):
+ (WebCore::FrameView::paintOverhangAreas):
+ (WebCore::FrameView::adjustPageHeightDeprecated):
+ * page/FrameView.h:
+ * page/PrintContext.cpp:
+ (WebCore::PrintContext::spoolPage):
+ (WebCore::PrintContext::spoolRect):
+ * page/win/FrameCGWin.cpp:
+ (WebCore::drawRectIntoContext):
+ (WebCore::imageFromRect):
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::paintScrollCorner):
+ (WebCore::ScrollView::paintScrollbar):
+ (WebCore::ScrollView::paintScrollbars):
+ (WebCore::ScrollView::paintPanScrollIcon):
+ (WebCore::ScrollView::paint):
+ (WebCore::ScrollView::paintOverhangAreas):
+ (WebCore::ScrollView::calculateAndPaintOverhangAreas):
+ * platform/ScrollView.h:
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::paint):
+ * platform/Scrollbar.h:
+ * platform/ScrollbarTheme.h:
+ (WebCore::ScrollbarTheme::paintScrollCorner):
+ (WebCore::ScrollbarTheme::defaultPaintScrollCorner):
+ (WebCore::ScrollbarTheme::paintOverhangAreas):
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::paintScrollCorner):
+ (WebCore::ScrollbarThemeComposite::paintOverhangAreas):
+ * platform/ScrollbarThemeComposite.h:
+ * platform/Theme.cpp:
+ (WebCore::Theme::drawNamedImage):
+ * platform/Theme.h:
+ (WebCore::Theme::paint):
+ * platform/Widget.h:
+ * platform/cocoa/ThemeCocoa.cpp:
+ (WebCore::fitContextToBox):
+ (WebCore::ThemeCocoa::drawNamedImage):
+ * platform/cocoa/ThemeCocoa.h:
+ * platform/efl/WidgetEfl.cpp:
+ (WebCore::Widget::paint):
+ * platform/graphics/BitmapImage.cpp:
+ (WebCore::BitmapImage::drawPattern):
+ * platform/graphics/BitmapImage.h:
+ * platform/graphics/CrossfadeGeneratedImage.cpp:
+ (WebCore::drawCrossfadeSubimage):
+ (WebCore::CrossfadeGeneratedImage::drawCrossfade):
+ (WebCore::CrossfadeGeneratedImage::draw):
+ (WebCore::CrossfadeGeneratedImage::drawPattern):
+ * platform/graphics/CrossfadeGeneratedImage.h:
+ * platform/graphics/FontCascade.cpp:
+ (WebCore::FontCascade::drawText):
+ (WebCore::FontCascade::drawEmphasisMarks):
+ (WebCore::FontCascade::drawSimpleText):
+ (WebCore::FontCascade::drawEmphasisMarksForSimpleText):
+ (WebCore::FontCascade::drawGlyphBuffer):
+ * platform/graphics/FontCascade.h:
+ * platform/graphics/GeneratedImage.h:
+ * platform/graphics/GradientImage.cpp:
+ (WebCore::GradientImage::draw):
+ (WebCore::GradientImage::drawPattern):
+ * platform/graphics/GradientImage.h:
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::drawText):
+ (WebCore::GraphicsContext::drawGlyphs):
+ (WebCore::GraphicsContext::drawEmphasisMarks):
+ (WebCore::GraphicsContext::drawBidiText):
+ (WebCore::GraphicsContext::drawImage):
+ (WebCore::GraphicsContext::drawTiledImage):
+ (WebCore::GraphicsContext::drawImageBuffer):
+ (WebCore::GraphicsContext::clipToImageBuffer):
+ (WebCore::GraphicsContext::createCompatibleBuffer):
+ (WebCore::GraphicsContext::isCompatibleWithBuffer):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/GraphicsContext3D.h:
+ * platform/graphics/Image.cpp:
+ (WebCore::Image::fillWithSolidColor):
+ (WebCore::Image::draw):
+ (WebCore::Image::drawTiled):
+ * platform/graphics/Image.h:
+ (WebCore::Image::drawFrameMatchingSourceSize):
+ * platform/graphics/ImageBuffer.cpp:
+ (WebCore::ImageBuffer::createCompatibleBuffer):
+ * platform/graphics/ImageBuffer.h:
+ * platform/graphics/MediaPlayer.cpp:
+ (WebCore::MediaPlayer::paint):
+ (WebCore::MediaPlayer::paintCurrentFrameInContext):
+ * platform/graphics/MediaPlayer.h:
+ * platform/graphics/MediaPlayerPrivate.h:
+ (WebCore::MediaPlayerPrivateInterface::paintCurrentFrameInContext):
+ * platform/graphics/NamedImageGeneratedImage.cpp:
+ (WebCore::NamedImageGeneratedImage::draw):
+ (WebCore::NamedImageGeneratedImage::drawPattern):
+ * platform/graphics/NamedImageGeneratedImage.h:
+ * platform/graphics/ShadowBlur.cpp:
+ (WebCore::ShadowBlur::adjustBlurRadius):
+ (WebCore::ShadowBlur::calculateLayerBoundingRect):
+ (WebCore::ShadowBlur::drawShadowBuffer):
+ (WebCore::ShadowBlur::drawRectShadow):
+ (WebCore::ShadowBlur::drawInsetShadow):
+ (WebCore::ShadowBlur::drawRectShadowWithoutTiling):
+ (WebCore::ShadowBlur::drawInsetShadowWithoutTiling):
+ (WebCore::ShadowBlur::drawInsetShadowWithTiling):
+ (WebCore::ShadowBlur::drawRectShadowWithTiling):
+ (WebCore::ShadowBlur::drawLayerPieces):
+ (WebCore::ShadowBlur::blurAndColorShadowBuffer):
+ (WebCore::ShadowBlur::beginShadowLayer):
+ (WebCore::ShadowBlur::endShadowLayer):
+ * platform/graphics/ShadowBlur.h:
+ * platform/graphics/TextRun.h:
+ * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
+ * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
+ (WebCore::MediaPlayerPrivateAVFoundationCF::paintCurrentFrameInContext):
+ (WebCore::MediaPlayerPrivateAVFoundationCF::paint):
+ * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
+ (WebCore::MediaPlayerPrivateAVFoundationObjC::paintCurrentFrameInContext):
+ (WebCore::MediaPlayerPrivateAVFoundationObjC::paint):
+ (WebCore::MediaPlayerPrivateAVFoundationObjC::paintWithImageGenerator):
+ (WebCore::MediaPlayerPrivateAVFoundationObjC::paintWithVideoOutput):
+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
+ (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::paint):
+ (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::paintCurrentFrameInContext):
+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
+ * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
+ (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::paint):
+ (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::paintCurrentFrameInContext):
+ * platform/graphics/cairo/BitmapImageCairo.cpp:
+ (WebCore::BitmapImage::draw):
+ * platform/graphics/cairo/FontCairo.cpp:
+ (WebCore::drawGlyphsToContext):
+ (WebCore::drawGlyphsShadow):
+ (WebCore::FontCascade::drawGlyphs):
+ * platform/graphics/cairo/FontCairoHarfbuzzNG.cpp:
+ (WebCore::FontCascade::drawComplexText):
+ (WebCore::FontCascade::drawEmphasisMarksForComplexText):
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::drawPathShadow):
+ (WebCore::fillCurrentCairoPath):
+ (WebCore::shadowAndFillCurrentCairoPath):
+ (WebCore::shadowAndStrokeCurrentCairoPath):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::strokeRect):
+ (WebCore::GraphicsContext::platformFillRoundedRect):
+ (WebCore::GraphicsContext::fillRectWithRoundedHole):
+ * platform/graphics/cairo/ImageBufferCairo.cpp:
+ (WebCore::ImageBuffer::context):
+ (WebCore::ImageBuffer::clip):
+ (WebCore::ImageBuffer::draw):
+ (WebCore::ImageBuffer::drawPattern):
+ (WebCore::ImageBuffer::toDataURL):
+ * platform/graphics/cairo/ImageCairo.cpp:
+ (WebCore::Image::drawPattern):
+ * platform/graphics/cairo/PlatformContextCairo.cpp:
+ (WebCore::PlatformContextCairo::drawSurfaceToContext):
+ * platform/graphics/cairo/PlatformContextCairo.h:
+ * platform/graphics/cg/BitmapImageCG.cpp:
+ (WebCore::BitmapImage::draw):
+ * platform/graphics/cg/GraphicsContext3DCG.cpp:
+ (WebCore::GraphicsContext3D::paintToCanvas):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::platformFillRoundedRect):
+ (WebCore::GraphicsContext::fillRectWithRoundedHole):
+ * platform/graphics/cg/ImageBufferCG.cpp:
+ (WebCore::ImageBuffer::ImageBuffer):
+ (WebCore::ImageBuffer::context):
+ (WebCore::ImageBuffer::flushContext):
+ (WebCore::ImageBuffer::copyNativeImage):
+ (WebCore::ImageBuffer::draw):
+ (WebCore::ImageBuffer::drawPattern):
+ (WebCore::ImageBuffer::clip):
+ (WebCore::ImageBuffer::getUnmultipliedImageData):
+ (WebCore::ImageBuffer::getPremultipliedImageData):
+ (WebCore::ImageBuffer::putByteArray):
+ (WebCore::ImageBuffer::toDataURL):
+ * platform/graphics/cg/ImageCG.cpp:
+ (WebCore::Image::drawPattern):
+ * platform/graphics/cg/PDFDocumentImage.cpp:
+ (WebCore::PDFDocumentImage::cacheParametersMatch):
+ (WebCore::transformContextForPainting):
+ (WebCore::PDFDocumentImage::updateCachedImageIfNeeded):
+ (WebCore::PDFDocumentImage::draw):
+ (WebCore::applyRotationForPainting):
+ (WebCore::PDFDocumentImage::drawPDFPage):
+ * platform/graphics/cg/PDFDocumentImage.h:
+ * platform/graphics/cocoa/FontCascadeCocoa.mm:
+ (WebCore::showLetterpressedGlyphsWithAdvances):
+ (WebCore::showGlyphsWithAdvances):
+ (WebCore::FontCascade::drawGlyphs):
+ (WebCore::FontCascade::drawComplexText):
+ (WebCore::FontCascade::drawEmphasisMarksForComplexText):
+ * platform/graphics/efl/ImageBufferEfl.cpp:
+ (WebCore::ImageBuffer::toDataURL):
+ * platform/graphics/filters/FEBlend.cpp:
+ (WebCore::FEBlend::platformApplySoftware):
+ * platform/graphics/filters/FEColorMatrix.cpp:
+ (WebCore::FEColorMatrix::platformApplySoftware):
+ * platform/graphics/filters/FEComposite.cpp:
+ (WebCore::FEComposite::platformApplySoftware):
+ * platform/graphics/filters/FEDropShadow.cpp:
+ (WebCore::FEDropShadow::platformApplySoftware):
+ * platform/graphics/filters/FEFlood.cpp:
+ (WebCore::FEFlood::platformApplySoftware):
+ * platform/graphics/filters/FEMerge.cpp:
+ (WebCore::FEMerge::platformApplySoftware):
+ * platform/graphics/filters/FEOffset.cpp:
+ (WebCore::FEOffset::platformApplySoftware):
+ * platform/graphics/filters/FETile.cpp:
+ (WebCore::FETile::platformApplySoftware):
+ * platform/graphics/filters/FilterEffect.cpp:
+ (WebCore::FilterEffect::createImageBufferResult): Deleted.
+ * platform/graphics/filters/SourceAlpha.cpp:
+ (WebCore::SourceAlpha::platformApplySoftware):
+ * platform/graphics/filters/SourceGraphic.cpp:
+ (WebCore::SourceGraphic::platformApplySoftware):
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
+ (WebCore::MediaPlayerPrivateGStreamerBase::paint):
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
+ * platform/graphics/mac/GraphicsContextMac.mm:
+ (WebCore::GraphicsContext::drawLineForDocumentMarker):
+ * platform/graphics/mac/IconMac.mm:
+ (WebCore::Icon::paint):
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
+ (WebCore::MediaPlayerPrivateQTKit::paintCurrentFrameInContext):
+ (WebCore::MediaPlayerPrivateQTKit::paint):
+ * platform/graphics/mac/PDFDocumentImageMac.mm:
+ (WebCore::PDFDocumentImage::drawPDFPage):
+ * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
+ (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
+ * platform/graphics/texmap/BitmapTexture.cpp:
+ (WebCore::BitmapTexture::updateContents):
+ * platform/graphics/win/FontCGWin.cpp:
+ (WebCore::FontCascade::drawGlyphs):
+ * platform/graphics/win/FontWin.cpp:
+ (WebCore::FontCascade::drawComplexText):
+ (WebCore::FontCascade::drawEmphasisMarksForComplexText):
+ * platform/graphics/win/IconWin.cpp:
+ (WebCore::Icon::paint):
+ * platform/graphics/win/ImageCGWin.cpp:
+ (WebCore::BitmapImage::getHBITMAPOfSize):
+ (WebCore::BitmapImage::drawFrameMatchingSourceSize):
+ * platform/graphics/win/ImageCairoWin.cpp:
+ (WebCore::BitmapImage::getHBITMAPOfSize):
+ (WebCore::BitmapImage::drawFrameMatchingSourceSize):
+ * platform/graphics/win/LocalWindowsContext.h:
+ (WebCore::LocalWindowsContext::LocalWindowsContext):
+ (WebCore::LocalWindowsContext::~LocalWindowsContext):
+ * platform/gtk/WidgetGtk.cpp:
+ (WebCore::Widget::paint):
+ * platform/ios/WidgetIOS.mm:
+ (WebCore::Widget::paint):
+ * platform/mac/DragImageMac.mm:
+ (WebCore::drawAtPoint):
+ * platform/mac/LocalCurrentGraphicsContext.h:
+ (WebCore::ContextContainer::ContextContainer):
+ * platform/mac/LocalCurrentGraphicsContext.mm:
+ (WebCore::LocalCurrentGraphicsContext::LocalCurrentGraphicsContext):
+ (WebCore::LocalCurrentGraphicsContext::~LocalCurrentGraphicsContext):
+ (WebCore::LocalCurrentGraphicsContext::cgContext):
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::paint):
+ * platform/mac/ThemeMac.h:
+ * platform/mac/ThemeMac.mm:
+ (WebCore::paintToggleButton):
+ (WebCore::paintButton):
+ (WebCore::paintStepper):
+ (WebCore::ThemeMac::drawCellOrFocusRingWithViewIntoContext):
+ (WebCore::ThemeMac::paint):
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::paint):
+ * platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:
+ (WebCore::MockMediaPlayerMediaSource::paint):
+ * platform/mock/mediasource/MockMediaPlayerMediaSource.h:
+ * platform/win/PopupMenuWin.cpp:
+ (WebCore::PopupMenuWin::paint):
+ * platform/win/ScrollbarThemeWin.cpp:
+ (WebCore::ScrollbarThemeWin::paintTrackPiece):
+ (WebCore::ScrollbarThemeWin::paintButton):
+ (WebCore::ScrollbarThemeWin::paintThumb):
+ * platform/win/WebCoreTextRenderer.cpp:
+ (WebCore::doDrawTextAtPoint):
+ * platform/win/WidgetWin.cpp:
+ (WebCore::Widget::paint):
+ * rendering/EllipsisBox.cpp:
+ (WebCore::EllipsisBox::paint):
+ (WebCore::EllipsisBox::paintSelection):
+ * rendering/EllipsisBox.h:
+ * rendering/FilterEffectRenderer.cpp:
+ (WebCore::FilterEffectRenderer::inputContext):
+ (WebCore::FilterEffectRendererHelper::applyFilterEffect):
+ * rendering/FilterEffectRenderer.h:
+ * rendering/ImageQualityController.cpp:
+ (WebCore::ImageQualityController::shouldPaintAtLowQuality):
+ * rendering/ImageQualityController.h:
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::paintFillLayer):
+ (WebCore::InlineFlowBox::paintBoxDecorations):
+ (WebCore::InlineFlowBox::paintMask):
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::paint):
+ * rendering/PaintInfo.h:
+ (WebCore::PaintInfo::PaintInfo):
+ (WebCore::PaintInfo::context):
+ (WebCore::PaintInfo::setContext):
+ (WebCore::PaintInfo::applyTransform):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::paint):
+ (WebCore::RenderBlock::paintCaret):
+ (WebCore::RenderBlock::paintObject):
+ (WebCore::RenderBlock::paintSelection):
+ (WebCore::clipOutPositionedObjects):
+ (WebCore::RenderBlock::blockSelectionGap):
+ (WebCore::RenderBlock::logicalLeftSelectionGap):
+ (WebCore::RenderBlock::logicalRightSelectionGap):
+ * rendering/RenderBlockFlow.cpp:
+ (WebCore::RenderBlockFlow::paintColumnRules):
+ (WebCore::RenderBlockFlow::clipOutFloatingObjects):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::determineBackgroundBleedAvoidance):
+ (WebCore::RenderBox::paintBoxDecorations):
+ (WebCore::RenderBox::paintMask):
+ (WebCore::RenderBox::paintClippingMask):
+ (WebCore::RenderBox::paintMaskImages):
+ (WebCore::RenderBox::paintFillLayers):
+ (WebCore::RenderBox::pushContentsClip):
+ (WebCore::RenderBox::popContentsClip):
+ * rendering/RenderBox.h:
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::shouldPaintAtLowQuality):
+ (WebCore::RenderBoxModelObject::clipRoundedInnerRect):
+ (WebCore::applyBoxShadowForBackground):
+ (WebCore::RenderBoxModelObject::paintMaskForTextFillBox):
+ (WebCore::RenderBoxModelObject::paintFillLayerExtended):
+ (WebCore::RenderBoxModelObject::paintNinePieceImage):
+ (WebCore::RenderBoxModelObject::paintOneBorderSide):
+ (WebCore::RenderBoxModelObject::paintBorderSides):
+ (WebCore::RenderBoxModelObject::paintTranslucentBorderSides):
+ (WebCore::RenderBoxModelObject::paintBorder):
+ (WebCore::RenderBoxModelObject::drawBoxSideFromPath):
+ (WebCore::RenderBoxModelObject::clipBorderSidePolygon):
+ (WebCore::RenderBoxModelObject::clipBorderSideForComplexInnerPath):
+ (WebCore::RenderBoxModelObject::paintBoxShadow):
+ (WebCore::RenderBoxModelObject::shouldAntialiasLines):
+ * rendering/RenderBoxModelObject.h:
+ * rendering/RenderDetailsMarker.cpp:
+ (WebCore::RenderDetailsMarker::paint):
+ * rendering/RenderElement.cpp:
+ (WebCore::RenderElement::paintFocusRing):
+ (WebCore::RenderElement::paintOutline):
+ * rendering/RenderEmbeddedObject.cpp:
+ (WebCore::RenderEmbeddedObject::paintSnapshotImage):
+ (WebCore::drawReplacementArrow):
+ (WebCore::RenderEmbeddedObject::paintReplaced):
+ * rendering/RenderFieldset.cpp:
+ (WebCore::RenderFieldset::paintBoxDecorations):
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::paintObject):
+ * rendering/RenderFrameSet.cpp:
+ (WebCore::RenderFrameSet::paintColumnBorder):
+ (WebCore::RenderFrameSet::paintRowBorder):
+ * rendering/RenderHTMLCanvas.cpp:
+ (WebCore::RenderHTMLCanvas::paintReplaced):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::paintReplaced):
+ (WebCore::RenderImage::paintAreaElementFocusRing):
+ (WebCore::RenderImage::paintIntoRect):
+ * rendering/RenderImage.h:
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::paintOutline):
+ (WebCore::RenderInline::paintOutlineForLine):
+ * rendering/RenderInline.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::beginTransparencyLayers):
+ (WebCore::RenderLayer::paintOverflowControls):
+ (WebCore::RenderLayer::paintScrollCorner):
+ (WebCore::RenderLayer::drawPlatformResizerImage):
+ (WebCore::RenderLayer::paintResizer):
+ (WebCore::RenderLayer::paint):
+ (WebCore::RenderLayer::paintOverlayScrollbars):
+ (WebCore::RenderLayer::clipToRect):
+ (WebCore::RenderLayer::restoreClip):
+ (WebCore::RenderLayer::paintLayer):
+ (WebCore::RenderLayer::paintLayerContentsAndReflection):
+ (WebCore::RenderLayer::setupFontSubpixelQuantization):
+ (WebCore::RenderLayer::setupClipPath):
+ (WebCore::RenderLayer::hasFilterThatIsPainting):
+ (WebCore::RenderLayer::setupFilters):
+ (WebCore::RenderLayer::applyFilters):
+ (WebCore::RenderLayer::paintFixedLayersInNamedFlows):
+ (WebCore::RenderLayer::paintLayerContents):
+ (WebCore::RenderLayer::paintLayerByApplyingTransform):
+ (WebCore::RenderLayer::paintList):
+ (WebCore::RenderLayer::paintTransformedLayerIntoFragments):
+ (WebCore::RenderLayer::paintBackgroundForFragments):
+ (WebCore::RenderLayer::paintForegroundForFragments):
+ (WebCore::RenderLayer::paintForegroundForFragmentsWithPhase):
+ (WebCore::RenderLayer::paintOutlineForFragments):
+ (WebCore::RenderLayer::paintMaskForFragments):
+ (WebCore::RenderLayer::paintChildClippingMaskForFragments):
+ (WebCore::RenderLayer::paintOverflowControlsForFragments):
+ (WebCore::RenderLayer::calculateClipRects):
+ * rendering/RenderLayer.h:
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::paintIntoLayer):
+ (WebCore::RenderLayerBacking::paintContents):
+ * rendering/RenderLayerBacking.h:
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::paintScrollbar):
+ (WebCore::RenderLayerCompositor::paintContents):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::paintScrollbar):
+ (WebCore::RenderListBox::paintItemForeground):
+ (WebCore::RenderListBox::paintItemBackground):
+ * rendering/RenderListMarker.cpp:
+ (WebCore::RenderListMarker::paint):
+ * rendering/RenderMediaControls.cpp:
+ (WebCore::getUnzoomedRectAndAdjustCurrentContext):
+ (WebCore::RenderMediaControls::paintMediaControlsPart):
+ * rendering/RenderMultiColumnSet.cpp:
+ (WebCore::RenderMultiColumnSet::paintColumnRules):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::addPDFURLRect):
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::paint):
+ * rendering/RenderReplica.cpp:
+ (WebCore::RenderReplica::paint):
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::paint):
+ (WebCore::RenderScrollbar::paintPart):
+ * rendering/RenderScrollbar.h:
+ * rendering/RenderScrollbarPart.cpp:
+ (WebCore::RenderScrollbarPart::paintIntoRect):
+ * rendering/RenderScrollbarPart.h:
+ * rendering/RenderScrollbarTheme.cpp:
+ (WebCore::RenderScrollbarTheme::paintScrollCorner):
+ (WebCore::RenderScrollbarTheme::paintScrollbarBackground):
+ (WebCore::RenderScrollbarTheme::paintTrackBackground):
+ (WebCore::RenderScrollbarTheme::paintTrackPiece):
+ (WebCore::RenderScrollbarTheme::paintButton):
+ (WebCore::RenderScrollbarTheme::paintThumb):
+ * rendering/RenderScrollbarTheme.h:
+ * rendering/RenderSnapshottedPlugIn.cpp:
+ (WebCore::RenderSnapshottedPlugIn::paintSnapshot):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::paintBoxDecorations):
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::paintCollapsedBorders):
+ (WebCore::RenderTableCell::paintBackgroundsBehindCell):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::paintRowGroupBorder):
+ (WebCore::RenderTableSection::paintRowGroupBorderIfRequired):
+ * rendering/RenderTheme.cpp:
+ (WebCore::RenderTheme::paint):
+ (WebCore::RenderTheme::paintBorderOnly):
+ (WebCore::RenderTheme::paintDecorations):
+ (WebCore::RenderTheme::paintSliderTicks):
+ * rendering/RenderThemeEfl.cpp:
+ (WebCore::RenderThemeEfl::paintThemePart):
+ * rendering/RenderThemeGtk.cpp:
+ (WebCore::paintToggle):
+ (WebCore::renderButton):
+ (WebCore::RenderThemeGtk::paintMenuList):
+ (WebCore::RenderThemeGtk::paintTextField):
+ (WebCore::paintGdkPixbuf):
+ (WebCore::RenderThemeGtk::paintSearchFieldResultsDecorationPart):
+ (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
+ (WebCore::RenderThemeGtk::paintCapsLockIndicator):
+ (WebCore::RenderThemeGtk::paintSliderTrack):
+ (WebCore::RenderThemeGtk::paintSliderThumb):
+ (WebCore::RenderThemeGtk::paintProgressBar):
+ (WebCore::paintSpinArrowButton):
+ (WebCore::RenderThemeGtk::paintMediaButton):
+ (WebCore::RenderThemeGtk::paintMediaFullscreenButton):
+ (WebCore::RenderThemeGtk::paintMediaMuteButton):
+ (WebCore::RenderThemeGtk::paintMediaPlayButton):
+ (WebCore::RenderThemeGtk::paintMediaSeekBackButton):
+ (WebCore::RenderThemeGtk::paintMediaSeekForwardButton):
+ (WebCore::RenderThemeGtk::paintMediaToggleClosedCaptionsButton):
+ (WebCore::RenderThemeGtk::paintMediaSliderTrack):
+ (WebCore::RenderThemeGtk::paintMediaSliderThumb):
+ (WebCore::RenderThemeGtk::paintMediaVolumeSliderTrack):
+ * rendering/RenderThemeGtk.h:
+ * rendering/RenderThemeIOS.h:
+ * rendering/RenderThemeIOS.mm:
+ (WebCore::RenderThemeIOS::addRoundedBorderClip):
+ (WebCore::RenderThemeIOS::paintCheckboxDecorations):
+ (WebCore::RenderThemeIOS::paintRadioDecorations):
+ (WebCore::RenderThemeIOS::paintTextFieldDecorations):
+ (WebCore::RenderThemeIOS::paintMenuListButtonDecorations):
+ (WebCore::RenderThemeIOS::paintSliderTrack):
+ (WebCore::RenderThemeIOS::paintSliderThumbDecorations):
+ (WebCore::RenderThemeIOS::paintProgressBar):
+ (WebCore::RenderThemeIOS::paintPushButtonDecorations):
+ (WebCore::RenderThemeIOS::paintFileUploadIconDecorations):
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::paintTextField):
+ (WebCore::RenderThemeMac::paintTextArea):
+ (WebCore::RenderThemeMac::paintMenuList):
+ (WebCore::RenderThemeMac::paintMeter):
+ (WebCore::RenderThemeMac::paintProgressBar):
+ (WebCore::RenderThemeMac::paintMenuListButtonGradients):
+ (WebCore::RenderThemeMac::paintMenuListButtonDecorations):
+ (WebCore::RenderThemeMac::paintCellAndSetFocusedElementNeedsRepaintIfNecessary):
+ (WebCore::RenderThemeMac::paintSliderTrack):
+ (WebCore::RenderThemeMac::paintSliderThumb):
+ (WebCore::RenderThemeMac::paintSearchField):
+ (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
+ (WebCore::RenderThemeMac::paintSearchFieldResultsDecorationPart):
+ (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
+ (WebCore::RenderThemeMac::paintSnapshottedPluginOverlay):
+ (WebCore::RenderThemeMac::paintImageControlsButton):
+ (WebCore::RenderThemeMac::paintAttachment):
+ * rendering/RenderThemeSafari.cpp:
+ (WebCore::RenderThemeSafari::paintCheckbox):
+ (WebCore::RenderThemeSafari::paintRadio):
+ (WebCore::RenderThemeSafari::paintButton):
+ (WebCore::RenderThemeSafari::paintTextField):
+ (WebCore::RenderThemeSafari::paintCapsLockIndicator):
+ (WebCore::RenderThemeSafari::paintTextArea):
+ (WebCore::RenderThemeSafari::paintMenuList):
+ (WebCore::RenderThemeSafari::paintMenuListButtonGradients):
+ (WebCore::RenderThemeSafari::paintMenuListButtonDecorations):
+ (WebCore::RenderThemeSafari::paintSliderTrack):
+ (WebCore::RenderThemeSafari::paintSliderThumb):
+ (WebCore::RenderThemeSafari::paintSearchField):
+ (WebCore::RenderThemeSafari::paintSearchFieldCancelButton):
+ (WebCore::RenderThemeSafari::paintSearchFieldResultsDecorationPart):
+ (WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::drawControl):
+ (WebCore::RenderThemeWin::paintButton):
+ (WebCore::RenderThemeWin::paintInnerSpinButton):
+ (WebCore::RenderThemeWin::paintTextField):
+ (WebCore::RenderThemeWin::paintMenuList):
+ (WebCore::RenderThemeWin::paintMenuListButtonDecorations):
+ (WebCore::RenderThemeWin::paintSliderTrack):
+ (WebCore::RenderThemeWin::paintSliderThumb):
+ (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
+ (WebCore::RenderThemeWin::paintSearchFieldResultsDecorationPart):
+ (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
+ (WebCore::RenderThemeWin::paintMeter):
+ * rendering/RenderVideo.cpp:
+ (WebCore::RenderVideo::paintReplaced):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::paint):
+ (WebCore::RenderView::paintBoxDecorations):
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::paintContents):
+ (WebCore::RenderWidget::paint):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::lineSelectionGap):
+ * rendering/SimpleLineLayoutFunctions.cpp:
+ (WebCore::SimpleLineLayout::paintFlow):
+ * rendering/mathml/RenderMathMLBlock.cpp:
+ (WebCore::RenderMathMLBlock::paint):
+ * rendering/mathml/RenderMathMLFraction.cpp:
+ (WebCore::RenderMathMLFraction::paint):
+ * rendering/mathml/RenderMathMLMenclose.cpp:
+ (WebCore::RenderMathMLMenclose::paint):
+ * rendering/mathml/RenderMathMLOperator.cpp:
+ (WebCore::RenderMathMLOperator::paintGlyph):
+ (WebCore::RenderMathMLOperator::fillWithVerticalExtensionGlyph):
+ (WebCore::RenderMathMLOperator::fillWithHorizontalExtensionGlyph):
+ (WebCore::RenderMathMLOperator::paint):
+ * rendering/mathml/RenderMathMLRadicalOperator.cpp:
+ (WebCore::RenderMathMLRadicalOperator::paint):
+ * rendering/mathml/RenderMathMLRoot.cpp:
+ (WebCore::RenderMathMLRoot::paint):
+ * rendering/shapes/Shape.cpp:
+ (WebCore::Shape::createRasterShape):
+ * rendering/style/NinePieceImage.cpp:
+ (WebCore::NinePieceImage::paint):
+ * rendering/style/NinePieceImage.h:
+ * rendering/svg/RenderSVGContainer.cpp:
+ (WebCore::RenderSVGContainer::paint):
+ * rendering/svg/RenderSVGEllipse.cpp:
+ (WebCore::RenderSVGEllipse::fillShape):
+ (WebCore::RenderSVGEllipse::strokeShape):
+ * rendering/svg/RenderSVGEllipse.h:
+ * rendering/svg/RenderSVGForeignObject.cpp:
+ (WebCore::RenderSVGForeignObject::paint):
+ * rendering/svg/RenderSVGImage.cpp:
+ (WebCore::RenderSVGImage::paint):
+ (WebCore::RenderSVGImage::paintForeground):
+ * rendering/svg/RenderSVGPath.cpp:
+ (WebCore::useStrokeStyleToFill):
+ (WebCore::RenderSVGPath::strokeShape):
+ * rendering/svg/RenderSVGPath.h:
+ * rendering/svg/RenderSVGRect.cpp:
+ (WebCore::RenderSVGRect::fillShape):
+ (WebCore::RenderSVGRect::strokeShape):
+ * rendering/svg/RenderSVGRect.h:
+ * rendering/svg/RenderSVGResourceClipper.cpp:
+ (WebCore::RenderSVGResourceClipper::applyResource):
+ (WebCore::RenderSVGResourceClipper::pathOnlyClipping):
+ (WebCore::RenderSVGResourceClipper::applyClippingToContext):
+ (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
+ * rendering/svg/RenderSVGResourceClipper.h:
+ * rendering/svg/RenderSVGResourceFilter.cpp:
+ (WebCore::RenderSVGResourceFilter::applyResource):
+ * rendering/svg/RenderSVGResourceGradient.cpp:
+ (WebCore::createMaskAndSwapContextForTextGradient):
+ (WebCore::clipToTextMask):
+ (WebCore::RenderSVGResourceGradient::applyResource):
+ * rendering/svg/RenderSVGResourceMarker.cpp:
+ (WebCore::RenderSVGResourceMarker::applyViewportClip):
+ (WebCore::RenderSVGResourceMarker::draw):
+ * rendering/svg/RenderSVGResourceMasker.cpp:
+ (WebCore::RenderSVGResourceMasker::applyResource):
+ (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
+ * rendering/svg/RenderSVGResourcePattern.cpp:
+ (WebCore::RenderSVGResourcePattern::postApplyResource):
+ (WebCore::RenderSVGResourcePattern::createTileImage):
+ * rendering/svg/RenderSVGResourceSolidColor.cpp:
+ (WebCore::RenderSVGResourceSolidColor::postApplyResource):
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::paintReplaced):
+ * rendering/svg/RenderSVGShape.cpp:
+ (WebCore::RenderSVGShape::fillShape):
+ (WebCore::RenderSVGShape::strokeShape):
+ (WebCore::RenderSVGShape::fillStrokeMarkers):
+ (WebCore::RenderSVGShape::paint):
+ * rendering/svg/RenderSVGShape.h:
+ * rendering/svg/RenderSVGText.cpp:
+ (WebCore::RenderSVGText::paint):
+ * rendering/svg/RenderSVGViewportContainer.cpp:
+ (WebCore::RenderSVGViewportContainer::applyViewportClip):
+ * rendering/svg/SVGInlineFlowBox.cpp:
+ (WebCore::SVGInlineFlowBox::paintSelectionBackground):
+ (WebCore::SVGInlineFlowBox::paint):
+ * rendering/svg/SVGInlineTextBox.cpp:
+ (WebCore::SVGInlineTextBox::paintSelectionBackground):
+ (WebCore::SVGInlineTextBox::paint):
+ (WebCore::SVGInlineTextBox::prepareGraphicsContextForTextPainting):
+ (WebCore::SVGInlineTextBox::paintDecoration):
+ (WebCore::SVGInlineTextBox::paintDecorationWithStyle):
+ (WebCore::SVGInlineTextBox::paintTextWithShadows):
+ (WebCore::SVGInlineTextBox::paintText):
+ * rendering/svg/SVGInlineTextBox.h:
+ * rendering/svg/SVGRenderingContext.cpp:
+ (WebCore::SVGRenderingContext::~SVGRenderingContext):
+ (WebCore::SVGRenderingContext::prepareToRenderSVGContent):
+ (WebCore::SVGRenderingContext::createImageBuffer):
+ (WebCore::SVGRenderingContext::clipToImageBuffer):
+ (WebCore::SVGRenderingContext::bufferForeground):
+ (WebCore::SVGRenderingContext::renderSubtreeToImageBuffer): Deleted.
+ * rendering/svg/SVGRenderingContext.h:
+ * rendering/svg/SVGRootInlineBox.cpp:
+ (WebCore::SVGRootInlineBox::paint):
+ * rendering/svg/SVGTextRunRenderingContext.cpp:
+ (WebCore::SVGTextRunRenderingContext::drawSVGGlyphs):
+ * rendering/svg/SVGTextRunRenderingContext.h:
+ * svg/graphics/SVGImage.cpp:
+ (WebCore::SVGImage::drawForContainer):
+ (WebCore::SVGImage::drawPatternForContainer):
+ (WebCore::SVGImage::draw):
+ * svg/graphics/SVGImage.h:
+ * svg/graphics/SVGImageForContainer.cpp:
+ (WebCore::SVGImageForContainer::draw):
+ (WebCore::SVGImageForContainer::drawPattern):
+ * svg/graphics/SVGImageForContainer.h:
+ * svg/graphics/filters/SVGFEImage.cpp:
+ (WebCore::FEImage::platformApplySoftware):
+
</ins><span class="cx"> 2015-08-28 Alexey Proskuryakov <ap@apple.com>
</span><span class="cx">
</span><span class="cx"> Update bindings test results after
</span></span></pre></div>
<a id="trunkSourceWebCorecssCSSFilterImageValuecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/CSSFilterImageValue.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/CSSFilterImageValue.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/css/CSSFilterImageValue.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -124,7 +124,7 @@
</span><span class="cx"> if (!texture)
</span><span class="cx"> return Image::nullImage();
</span><span class="cx"> FloatRect imageRect = FloatRect(FloatPoint(), size);
</span><del>- texture->context()->drawImage(image, ColorSpaceDeviceRGB, imageRect);
</del><ins>+ texture->context().drawImage(image, ColorSpaceDeviceRGB, imageRect);
</ins><span class="cx">
</span><span class="cx"> RefPtr<FilterEffectRenderer> filterRenderer = FilterEffectRenderer::create();
</span><span class="cx"> filterRenderer->setSourceImage(WTF::move(texture));
</span></span></pre></div>
<a id="trunkSourceWebCoreeditingEditorcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/editing/Editor.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/editing/Editor.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/editing/Editor.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -3248,7 +3248,7 @@
</span><span class="cx">
</span><span class="cx"> PaintBehavior oldBehavior = m_frame.view()->paintBehavior();
</span><span class="cx"> m_frame.view()->setPaintBehavior(oldBehavior | PaintBehaviorFlattenCompositingLayers);
</span><del>- m_frame.view()->paintContents(&context, enclosingIntRect(visibleRect));
</del><ins>+ m_frame.view()->paintContents(context, enclosingIntRect(visibleRect));
</ins><span class="cx"> m_frame.view()->setPaintBehavior(oldBehavior);
</span><span class="cx"> }
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreeditingFrameSelectioncpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/editing/FrameSelection.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/editing/FrameSelection.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/editing/FrameSelection.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1542,7 +1542,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FrameSelection::paintCaret(GraphicsContext* context, const LayoutPoint& paintOffset, const LayoutRect& clipRect)
</del><ins>+void FrameSelection::paintCaret(GraphicsContext& context, const LayoutPoint& paintOffset, const LayoutRect& clipRect)
</ins><span class="cx"> {
</span><span class="cx"> if (m_selection.isCaret() && m_caretPaint)
</span><span class="cx"> CaretBase::paintCaret(m_selection.start().deprecatedNode(), context, paintOffset, clipRect);
</span><span class="lines">@@ -1555,7 +1555,7 @@
</span><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>-void CaretBase::paintCaret(Node* node, GraphicsContext* context, const LayoutPoint& paintOffset, const LayoutRect& clipRect) const
</del><ins>+void CaretBase::paintCaret(Node* node, GraphicsContext& context, const LayoutPoint& paintOffset, const LayoutRect& clipRect) const
</ins><span class="cx"> {
</span><span class="cx"> #if ENABLE(TEXT_CARET)
</span><span class="cx"> if (m_caretVisibility == Hidden)
</span><span class="lines">@@ -1593,7 +1593,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>- context->fillRect(caret, caretColor, colorSpace);
</del><ins>+ context.fillRect(caret, caretColor, colorSpace);
</ins><span class="cx"> #else
</span><span class="cx"> UNUSED_PARAM(node);
</span><span class="cx"> UNUSED_PARAM(context);
</span><span class="lines">@@ -2031,7 +2031,7 @@
</span><span class="cx"> m_frame->page()->focusController().setFocusedElement(0, m_frame);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void DragCaretController::paintDragCaret(Frame* frame, GraphicsContext* p, const LayoutPoint& paintOffset, const LayoutRect& clipRect) const
</del><ins>+void DragCaretController::paintDragCaret(Frame* frame, GraphicsContext& p, const LayoutPoint& paintOffset, const LayoutRect& clipRect) const
</ins><span class="cx"> {
</span><span class="cx"> #if ENABLE(TEXT_CARET)
</span><span class="cx"> if (m_position.deepEquivalent().deprecatedNode()->document().frame() == frame)
</span></span></pre></div>
<a id="trunkSourceWebCoreeditingFrameSelectionh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/editing/FrameSelection.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/editing/FrameSelection.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/editing/FrameSelection.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -71,7 +71,7 @@
</span><span class="cx"> void clearCaretRect();
</span><span class="cx"> bool updateCaretRect(Document*, const VisiblePosition& caretPosition);
</span><span class="cx"> bool shouldRepaintCaret(const RenderView*, bool isContentEditable) const;
</span><del>- void paintCaret(Node*, GraphicsContext*, const LayoutPoint&, const LayoutRect& clipRect) const;
</del><ins>+ void paintCaret(Node*, GraphicsContext&, const LayoutPoint&, const LayoutRect& clipRect) const;
</ins><span class="cx">
</span><span class="cx"> const LayoutRect& localCaretRectWithoutUpdate() const { return m_caretLocalRect; }
</span><span class="cx">
</span><span class="lines">@@ -95,7 +95,7 @@
</span><span class="cx"> DragCaretController();
</span><span class="cx">
</span><span class="cx"> RenderBlock* caretRenderer() const;
</span><del>- void paintDragCaret(Frame*, GraphicsContext*, const LayoutPoint&, const LayoutRect& clipRect) const;
</del><ins>+ void paintDragCaret(Frame*, GraphicsContext&, const LayoutPoint&, const LayoutRect& clipRect) const;
</ins><span class="cx">
</span><span class="cx"> bool isContentEditable() const { return m_position.rootEditableElement(); }
</span><span class="cx"> bool isContentRichlyEditable() const;
</span><span class="lines">@@ -193,7 +193,7 @@
</span><span class="cx"> void textWasReplaced(CharacterData*, unsigned offset, unsigned oldLength, unsigned newLength);
</span><span class="cx">
</span><span class="cx"> void setCaretVisible(bool caretIsVisible) { setCaretVisibility(caretIsVisible ? Visible : Hidden); }
</span><del>- void paintCaret(GraphicsContext*, const LayoutPoint&, const LayoutRect& clipRect);
</del><ins>+ void paintCaret(GraphicsContext&, const LayoutPoint&, const LayoutRect& clipRect);
</ins><span class="cx">
</span><span class="cx"> // Used to suspend caret blinking while the mouse is down.
</span><span class="cx"> void setCaretBlinkingSuspended(bool suspended) { m_isCaretBlinkingSuspended = suspended; }
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLCanvasElementcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLCanvasElement.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLCanvasElement.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/html/HTMLCanvasElement.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -366,12 +366,12 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx">
</span><del>-void HTMLCanvasElement::paint(GraphicsContext* context, const LayoutRect& r, bool useLowQualityScale)
</del><ins>+void HTMLCanvasElement::paint(GraphicsContext& context, const LayoutRect& r, bool useLowQualityScale)
</ins><span class="cx"> {
</span><span class="cx"> // Clear the dirty rect
</span><span class="cx"> m_dirtyRect = FloatRect();
</span><span class="cx">
</span><del>- if (context->paintingDisabled())
</del><ins>+ if (context.paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> if (m_context) {
</span><span class="lines">@@ -388,9 +388,9 @@
</span><span class="cx"> #if ENABLE(CSS_IMAGE_ORIENTATION)
</span><span class="cx"> orientationDescription.setImageOrientationEnum(renderer()->style().imageOrientation());
</span><span class="cx"> #endif
</span><del>- context->drawImage(m_presentedImage.get(), ColorSpaceDeviceRGB, snappedIntRect(r), ImagePaintingOptions(orientationDescription, useLowQualityScale));
</del><ins>+ context.drawImage(m_presentedImage.get(), ColorSpaceDeviceRGB, snappedIntRect(r), ImagePaintingOptions(orientationDescription, useLowQualityScale));
</ins><span class="cx"> } else
</span><del>- context->drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, snappedIntRect(r), useLowQualityScale);
</del><ins>+ context.drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, snappedIntRect(r), useLowQualityScale);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -580,12 +580,12 @@
</span><span class="cx"> m_imageBuffer = ImageBuffer::create(size(), 1, ColorSpaceDeviceRGB, renderingMode);
</span><span class="cx"> if (!m_imageBuffer)
</span><span class="cx"> return;
</span><del>- m_imageBuffer->context()->setShadowsIgnoreTransforms(true);
- m_imageBuffer->context()->setImageInterpolationQuality(DefaultInterpolationQuality);
</del><ins>+ m_imageBuffer->context().setShadowsIgnoreTransforms(true);
+ m_imageBuffer->context().setImageInterpolationQuality(DefaultInterpolationQuality);
</ins><span class="cx"> if (document().settings() && !document().settings()->antialiased2dCanvasEnabled())
</span><del>- m_imageBuffer->context()->setShouldAntialias(false);
- m_imageBuffer->context()->setStrokeThickness(1);
- m_contextStateSaver = std::make_unique<GraphicsContextStateSaver>(*m_imageBuffer->context());
</del><ins>+ m_imageBuffer->context().setShouldAntialias(false);
+ m_imageBuffer->context().setStrokeThickness(1);
+ m_contextStateSaver = std::make_unique<GraphicsContextStateSaver>(m_imageBuffer->context());
</ins><span class="cx">
</span><span class="cx"> JSC::JSLockHolder lock(scriptExecutionContext()->vm());
</span><span class="cx"> scriptExecutionContext()->vm().heap.reportExtraMemoryAllocated(memoryCost());
</span><span class="lines">@@ -599,7 +599,7 @@
</span><span class="cx">
</span><span class="cx"> GraphicsContext* HTMLCanvasElement::drawingContext() const
</span><span class="cx"> {
</span><del>- return buffer() ? m_imageBuffer->context() : nullptr;
</del><ins>+ return buffer() ? &m_imageBuffer->context() : nullptr;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> GraphicsContext* HTMLCanvasElement::existingDrawingContext() const
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLCanvasElementh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLCanvasElement.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLCanvasElement.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/html/HTMLCanvasElement.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -105,7 +105,7 @@
</span><span class="cx"> void didDraw(const FloatRect&);
</span><span class="cx"> void notifyObserversCanvasChanged(const FloatRect&);
</span><span class="cx">
</span><del>- void paint(GraphicsContext*, const LayoutRect&, bool useLowQualityScale = false);
</del><ins>+ void paint(GraphicsContext&, const LayoutRect&, bool useLowQualityScale = false);
</ins><span class="cx">
</span><span class="cx"> GraphicsContext* drawingContext() const;
</span><span class="cx"> GraphicsContext* existingDrawingContext() const;
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLVideoElementcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLVideoElement.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLVideoElement.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/html/HTMLVideoElement.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -234,7 +234,7 @@
</span><span class="cx"> setDisplayMode(Poster);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void HTMLVideoElement::paintCurrentFrameInContext(GraphicsContext* context, const FloatRect& destRect)
</del><ins>+void HTMLVideoElement::paintCurrentFrameInContext(GraphicsContext& context, const FloatRect& destRect)
</ins><span class="cx"> {
</span><span class="cx"> MediaPlayer* player = HTMLMediaElement::player();
</span><span class="cx"> if (!player)
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLVideoElementh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLVideoElement.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLVideoElement.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/html/HTMLVideoElement.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -65,7 +65,7 @@
</span><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> // Used by canvas to gain raw pixel access
</span><del>- void paintCurrentFrameInContext(GraphicsContext*, const FloatRect&);
</del><ins>+ void paintCurrentFrameInContext(GraphicsContext&, const FloatRect&);
</ins><span class="cx">
</span><span class="cx"> PassNativeImagePtr nativeImageForCurrentTime();
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlcanvasCanvasRenderingContext2Dcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/canvas/CanvasRenderingContext2D.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/canvas/CanvasRenderingContext2D.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/html/canvas/CanvasRenderingContext2D.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1554,7 +1554,7 @@
</span><span class="cx"> c->translate(dstRect.x(), dstRect.y());
</span><span class="cx"> c->scale(FloatSize(dstRect.width() / srcRect.width(), dstRect.height() / srcRect.height()));
</span><span class="cx"> c->translate(-srcRect.x(), -srcRect.y());
</span><del>- video->paintCurrentFrameInContext(c, FloatRect(FloatPoint(), size(video)));
</del><ins>+ video->paintCurrentFrameInContext(*c, FloatRect(FloatPoint(), size(video)));
</ins><span class="cx"> stateSaver.restore();
</span><span class="cx"> didDraw(dstRect);
</span><span class="cx"> }
</span><span class="lines">@@ -1658,14 +1658,14 @@
</span><span class="cx"> c->restore();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static void drawImageToContext(Image* image, GraphicsContext* context, ColorSpace styleColorSpace, const FloatRect& dest, const FloatRect& src, CompositeOperator op)
</del><ins>+static void drawImageToContext(Image* image, GraphicsContext& context, ColorSpace styleColorSpace, const FloatRect& dest, const FloatRect& src, CompositeOperator op)
</ins><span class="cx"> {
</span><del>- context->drawImage(image, styleColorSpace, dest, src, op);
</del><ins>+ context.drawImage(image, styleColorSpace, dest, src, op);
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-static void drawImageToContext(ImageBuffer* imageBuffer, GraphicsContext* context, ColorSpace styleColorSpace, const FloatRect& dest, const FloatRect& src, CompositeOperator op)
</del><ins>+static void drawImageToContext(ImageBuffer* imageBuffer, GraphicsContext& context, ColorSpace styleColorSpace, const FloatRect& dest, const FloatRect& src, CompositeOperator op)
</ins><span class="cx"> {
</span><del>- context->drawImageBuffer(imageBuffer, styleColorSpace, dest, src, op);
</del><ins>+ context.drawImageBuffer(imageBuffer, styleColorSpace, dest, src, op);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> template<class T> void CanvasRenderingContext2D::fullCanvasCompositedDrawImage(T* image, ColorSpace styleColorSpace, const FloatRect& dest, const FloatRect& src, CompositeOperator op)
</span><span class="lines">@@ -1691,9 +1691,9 @@
</span><span class="cx"> adjustedDest.setLocation(FloatPoint(0, 0));
</span><span class="cx"> AffineTransform effectiveTransform = c->getCTM();
</span><span class="cx"> IntRect transformedAdjustedRect = enclosingIntRect(effectiveTransform.mapRect(adjustedDest));
</span><del>- buffer->context()->translate(-transformedAdjustedRect.location().x(), -transformedAdjustedRect.location().y());
- buffer->context()->translate(croppedOffset.width(), croppedOffset.height());
- buffer->context()->concatCTM(effectiveTransform);
</del><ins>+ buffer->context().translate(-transformedAdjustedRect.location().x(), -transformedAdjustedRect.location().y());
+ buffer->context().translate(croppedOffset.width(), croppedOffset.height());
+ buffer->context().concatCTM(effectiveTransform);
</ins><span class="cx"> drawImageToContext(image, buffer->context(), styleColorSpace, adjustedDest, src, CompositeSourceOver);
</span><span class="cx">
</span><span class="cx"> compositeBuffer(buffer.get(), bufferRect, op);
</span><span class="lines">@@ -2393,25 +2393,25 @@
</span><span class="cx">
</span><span class="cx"> std::unique_ptr<ImageBuffer> maskImage = c->createCompatibleBuffer(maskRect.size());
</span><span class="cx">
</span><del>- GraphicsContext* maskImageContext = maskImage->context();
</del><ins>+ GraphicsContext& maskImageContext = maskImage->context();
</ins><span class="cx">
</span><span class="cx"> if (fill)
</span><del>- maskImageContext->setFillColor(Color::black, ColorSpaceDeviceRGB);
</del><ins>+ maskImageContext.setFillColor(Color::black, ColorSpaceDeviceRGB);
</ins><span class="cx"> else {
</span><del>- maskImageContext->setStrokeColor(Color::black, ColorSpaceDeviceRGB);
- maskImageContext->setStrokeThickness(c->strokeThickness());
</del><ins>+ maskImageContext.setStrokeColor(Color::black, ColorSpaceDeviceRGB);
+ maskImageContext.setStrokeThickness(c->strokeThickness());
</ins><span class="cx"> }
</span><span class="cx">
</span><del>- maskImageContext->setTextDrawingMode(fill ? TextModeFill : TextModeStroke);
</del><ins>+ maskImageContext.setTextDrawingMode(fill ? TextModeFill : TextModeStroke);
</ins><span class="cx">
</span><span class="cx"> if (useMaxWidth) {
</span><del>- maskImageContext->translate(location.x() - maskRect.x(), location.y() - maskRect.y());
</del><ins>+ maskImageContext.translate(location.x() - maskRect.x(), location.y() - maskRect.y());
</ins><span class="cx"> // We draw when fontWidth is 0 so compositing operations (eg, a "copy" op) still work.
</span><del>- maskImageContext->scale(FloatSize((fontWidth > 0 ? (width / fontWidth) : 0), 1));
- maskImageContext->drawBidiText(font, textRun, FloatPoint(0, 0), FontCascade::UseFallbackIfFontNotReady);
</del><ins>+ maskImageContext.scale(FloatSize((fontWidth > 0 ? (width / fontWidth) : 0), 1));
+ maskImageContext.drawBidiText(font, textRun, FloatPoint(0, 0), FontCascade::UseFallbackIfFontNotReady);
</ins><span class="cx"> } else {
</span><del>- maskImageContext->translate(-maskRect.x(), -maskRect.y());
- maskImageContext->drawBidiText(font, textRun, location, FontCascade::UseFallbackIfFontNotReady);
</del><ins>+ maskImageContext.translate(-maskRect.x(), -maskRect.y());
+ maskImageContext.drawBidiText(font, textRun, location, FontCascade::UseFallbackIfFontNotReady);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> GraphicsContextStateSaver stateSaver(*c);
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlcanvasWebGLRenderingContextBasecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -3185,7 +3185,7 @@
</span><span class="cx">
</span><span class="cx"> FloatRect srcRect(FloatPoint(), image->size());
</span><span class="cx"> FloatRect destRect(FloatPoint(), size);
</span><del>- buf->context()->drawImage(image, ColorSpaceDeviceRGB, destRect, srcRect);
</del><ins>+ buf->context().drawImage(image, ColorSpaceDeviceRGB, destRect, srcRect);
</ins><span class="cx"> return buf->copyImage(ImageBuffer::fastCopyImageMode());
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorOverlaycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorOverlay.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorOverlay.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/inspector/InspectorOverlay.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -221,7 +221,7 @@
</span><span class="cx"> GraphicsContextStateSaver stateSaver(context);
</span><span class="cx"> FrameView* view = overlayPage()->mainFrame().view();
</span><span class="cx"> view->updateLayoutAndStyleIfNeededRecursive();
</span><del>- view->paint(&context, IntRect(0, 0, view->width(), view->height()));
</del><ins>+ view->paint(context, IntRect(0, 0, view->width(), view->height()));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void InspectorOverlay::getHighlight(Highlight& highlight, InspectorOverlay::CoordinateSystem coordinateSystem) const
</span></span></pre></div>
<a id="trunkSourceWebCorepageFrameSnapshottingcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/FrameSnapshotting.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/FrameSnapshotting.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/page/FrameSnapshotting.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -102,7 +102,7 @@
</span><span class="cx"> std::unique_ptr<ImageBuffer> buffer = ImageBuffer::create(imageRect.size(), scaleFactor, ColorSpaceDeviceRGB);
</span><span class="cx"> if (!buffer)
</span><span class="cx"> return nullptr;
</span><del>- buffer->context()->translate(-imageRect.x(), -imageRect.y());
</del><ins>+ buffer->context().translate(-imageRect.x(), -imageRect.y());
</ins><span class="cx">
</span><span class="cx"> frame.view()->paintContentsForSnapshot(buffer->context(), imageRect, shouldIncludeSelection, coordinateSpace);
</span><span class="cx"> return buffer;
</span></span></pre></div>
<a id="trunkSourceWebCorepageFrameViewcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/FrameView.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/FrameView.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/page/FrameView.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -3717,16 +3717,16 @@
</span><span class="cx"> ScrollView::updateScrollCorner();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FrameView::paintScrollCorner(GraphicsContext* context, const IntRect& cornerRect)
</del><ins>+void FrameView::paintScrollCorner(GraphicsContext& context, const IntRect& cornerRect)
</ins><span class="cx"> {
</span><del>- if (context->updatingControlTints()) {
</del><ins>+ if (context.updatingControlTints()) {
</ins><span class="cx"> updateScrollCorner();
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (m_scrollCorner) {
</span><span class="cx"> if (frame().isMainFrame())
</span><del>- context->fillRect(cornerRect, baseBackgroundColor(), ColorSpaceDeviceRGB);
</del><ins>+ context.fillRect(cornerRect, baseBackgroundColor(), ColorSpaceDeviceRGB);
</ins><span class="cx"> m_scrollCorner->paintIntoRect(context, cornerRect.location(), cornerRect);
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="lines">@@ -3734,12 +3734,12 @@
</span><span class="cx"> ScrollView::paintScrollCorner(context, cornerRect);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FrameView::paintScrollbar(GraphicsContext* context, Scrollbar* bar, const IntRect& rect)
</del><ins>+void FrameView::paintScrollbar(GraphicsContext& context, Scrollbar& bar, const IntRect& rect)
</ins><span class="cx"> {
</span><del>- if (bar->isCustomScrollbar() && frame().isMainFrame()) {
- IntRect toFill = bar->frameRect();
</del><ins>+ if (bar.isCustomScrollbar() && frame().isMainFrame()) {
+ IntRect toFill = bar.frameRect();
</ins><span class="cx"> toFill.intersect(rect);
</span><del>- context->fillRect(toFill, baseBackgroundColor(), ColorSpaceDeviceRGB);
</del><ins>+ context.fillRect(toFill, baseBackgroundColor(), ColorSpaceDeviceRGB);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> ScrollView::paintScrollbar(context, bar, rect);
</span><span class="lines">@@ -3897,9 +3897,9 @@
</span><span class="cx"> context.setUpdatingControlTints(true);
</span><span class="cx"> if (platformWidget()) {
</span><span class="cx"> // FIXME: consult paintsEntireContents().
</span><del>- paintContents(&context, visibleContentRect(LegacyIOSDocumentVisibleRect));
</del><ins>+ paintContents(context, visibleContentRect(LegacyIOSDocumentVisibleRect));
</ins><span class="cx"> } else
</span><del>- paint(&context, frameRect());
</del><ins>+ paint(context, frameRect());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool FrameView::wasScrolledByUser() const
</span><span class="lines">@@ -3920,11 +3920,11 @@
</span><span class="cx"> adjustTiledBackingCoverage();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FrameView::willPaintContents(GraphicsContext* context, const IntRect& dirtyRect, PaintingState& paintingState)
</del><ins>+void FrameView::willPaintContents(GraphicsContext& context, const IntRect& dirtyRect, PaintingState& paintingState)
</ins><span class="cx"> {
</span><span class="cx"> Document* document = frame().document();
</span><span class="cx">
</span><del>- if (!context->paintingDisabled())
</del><ins>+ if (!context.paintingDisabled())
</ins><span class="cx"> InspectorInstrumentation::willPaint(renderView());
</span><span class="cx">
</span><span class="cx"> paintingState.isTopLevelPainter = !sCurrentPaintTimeStamp;
</span><span class="lines">@@ -3961,7 +3961,7 @@
</span><span class="cx"> m_isPainting = true;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FrameView::didPaintContents(GraphicsContext* context, const IntRect& dirtyRect, PaintingState& paintingState)
</del><ins>+void FrameView::didPaintContents(GraphicsContext& context, const IntRect& dirtyRect, PaintingState& paintingState)
</ins><span class="cx"> {
</span><span class="cx"> m_isPainting = false;
</span><span class="cx">
</span><span class="lines">@@ -3985,14 +3985,14 @@
</span><span class="cx"> if (paintingState.isTopLevelPainter)
</span><span class="cx"> sCurrentPaintTimeStamp = 0;
</span><span class="cx">
</span><del>- if (!context->paintingDisabled()) {
</del><ins>+ if (!context.paintingDisabled()) {
</ins><span class="cx"> InspectorInstrumentation::didPaint(renderView(), dirtyRect);
</span><span class="cx"> // FIXME: should probably not fire milestones for snapshot painting. https://bugs.webkit.org/show_bug.cgi?id=117623
</span><span class="cx"> firePaintRelatedMilestonesIfNeeded();
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FrameView::paintContents(GraphicsContext* context, const IntRect& dirtyRect)
</del><ins>+void FrameView::paintContents(GraphicsContext& context, const IntRect& dirtyRect)
</ins><span class="cx"> {
</span><span class="cx"> #ifndef NDEBUG
</span><span class="cx"> bool fillWithRed;
</span><span class="lines">@@ -4010,7 +4010,7 @@
</span><span class="cx"> fillWithRed = true;
</span><span class="cx">
</span><span class="cx"> if (fillWithRed)
</span><del>- context->fillRect(dirtyRect, Color(0xFF, 0, 0), ColorSpaceDeviceRGB);
</del><ins>+ context.fillRect(dirtyRect, Color(0xFF, 0, 0), ColorSpaceDeviceRGB);
</ins><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> if (m_layoutPhase == InViewSizeAdjust)
</span><span class="lines">@@ -4072,7 +4072,7 @@
</span><span class="cx"> m_nodeToDraw = node;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FrameView::paintContentsForSnapshot(GraphicsContext* context, const IntRect& imageRect, SelectionInSnapshot shouldPaintSelection, CoordinateSpaceForSnapshot coordinateSpace)
</del><ins>+void FrameView::paintContentsForSnapshot(GraphicsContext& context, const IntRect& imageRect, SelectionInSnapshot shouldPaintSelection, CoordinateSpaceForSnapshot coordinateSpace)
</ins><span class="cx"> {
</span><span class="cx"> updateLayoutAndStyleIfNeededRecursive();
</span><span class="cx">
</span><span class="lines">@@ -4108,9 +4108,9 @@
</span><span class="cx"> setPaintBehavior(oldBehavior);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FrameView::paintOverhangAreas(GraphicsContext* context, const IntRect& horizontalOverhangArea, const IntRect& verticalOverhangArea, const IntRect& dirtyRect)
</del><ins>+void FrameView::paintOverhangAreas(GraphicsContext& context, const IntRect& horizontalOverhangArea, const IntRect& verticalOverhangArea, const IntRect& dirtyRect)
</ins><span class="cx"> {
</span><del>- if (context->paintingDisabled())
</del><ins>+ if (context.paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> if (frame().document()->printing())
</span><span class="lines">@@ -4301,7 +4301,7 @@
</span><span class="cx"> renderView->setTruncatedAt(static_cast<int>(floorf(oldBottom)));
</span><span class="cx"> IntRect dirtyRect(0, static_cast<int>(floorf(oldTop)), renderView->layoutOverflowRect().maxX(), static_cast<int>(ceilf(oldBottom - oldTop)));
</span><span class="cx"> renderView->setPrintRect(dirtyRect);
</span><del>- renderView->layer()->paint(&context, dirtyRect);
</del><ins>+ renderView->layer()->paint(context, dirtyRect);
</ins><span class="cx"> *newBottom = renderView->bestTruncatedAt();
</span><span class="cx"> if (!*newBottom)
</span><span class="cx"> *newBottom = oldBottom;
</span></span></pre></div>
<a id="trunkSourceWebCorepageFrameViewh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/FrameView.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/FrameView.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/page/FrameView.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -323,7 +323,7 @@
</span><span class="cx"> void addEmbeddedObjectToUpdate(RenderEmbeddedObject&);
</span><span class="cx"> void removeEmbeddedObjectToUpdate(RenderEmbeddedObject&);
</span><span class="cx">
</span><del>- WEBCORE_EXPORT virtual void paintContents(GraphicsContext*, const IntRect& dirtyRect) override;
</del><ins>+ WEBCORE_EXPORT virtual void paintContents(GraphicsContext&, const IntRect& dirtyRect) override;
</ins><span class="cx">
</span><span class="cx"> struct PaintingState {
</span><span class="cx"> PaintBehavior paintBehavior;
</span><span class="lines">@@ -337,8 +337,8 @@
</span><span class="cx"> }
</span><span class="cx"> };
</span><span class="cx">
</span><del>- void willPaintContents(GraphicsContext*, const IntRect& dirtyRect, PaintingState&);
- void didPaintContents(GraphicsContext*, const IntRect& dirtyRect, PaintingState&);
</del><ins>+ void willPaintContents(GraphicsContext&, const IntRect& dirtyRect, PaintingState&);
+ void didPaintContents(GraphicsContext&, const IntRect& dirtyRect, PaintingState&);
</ins><span class="cx">
</span><span class="cx"> #if PLATFORM(IOS)
</span><span class="cx"> WEBCORE_EXPORT void didReplaceMultipartContent();
</span><span class="lines">@@ -353,11 +353,11 @@
</span><span class="cx">
</span><span class="cx"> enum SelectionInSnapshot { IncludeSelection, ExcludeSelection };
</span><span class="cx"> enum CoordinateSpaceForSnapshot { DocumentCoordinates, ViewCoordinates };
</span><del>- WEBCORE_EXPORT void paintContentsForSnapshot(GraphicsContext*, const IntRect& imageRect, SelectionInSnapshot shouldPaintSelection, CoordinateSpaceForSnapshot);
</del><ins>+ WEBCORE_EXPORT void paintContentsForSnapshot(GraphicsContext&, const IntRect& imageRect, SelectionInSnapshot shouldPaintSelection, CoordinateSpaceForSnapshot);
</ins><span class="cx">
</span><del>- virtual void paintOverhangAreas(GraphicsContext*, const IntRect& horizontalOverhangArea, const IntRect& verticalOverhangArea, const IntRect& dirtyRect) override;
- virtual void paintScrollCorner(GraphicsContext*, const IntRect& cornerRect) override;
- virtual void paintScrollbar(GraphicsContext*, Scrollbar*, const IntRect&) override;
</del><ins>+ virtual void paintOverhangAreas(GraphicsContext&, const IntRect& horizontalOverhangArea, const IntRect& verticalOverhangArea, const IntRect& dirtyRect) override;
+ virtual void paintScrollCorner(GraphicsContext&, const IntRect& cornerRect) override;
+ virtual void paintScrollbar(GraphicsContext&, Scrollbar&, const IntRect&) override;
</ins><span class="cx">
</span><span class="cx"> WEBCORE_EXPORT Color documentBackgroundColor() const;
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorepagePrintContextcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/PrintContext.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/PrintContext.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/page/PrintContext.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -201,7 +201,7 @@
</span><span class="cx"> ctx.scale(FloatSize(scale, scale));
</span><span class="cx"> ctx.translate(-pageRect.x(), -pageRect.y());
</span><span class="cx"> ctx.clip(pageRect);
</span><del>- m_frame->view()->paintContents(&ctx, pageRect);
</del><ins>+ m_frame->view()->paintContents(ctx, pageRect);
</ins><span class="cx"> ctx.restore();
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -211,7 +211,7 @@
</span><span class="cx"> ctx.save();
</span><span class="cx"> ctx.translate(-rect.x(), -rect.y());
</span><span class="cx"> ctx.clip(rect);
</span><del>- m_frame->view()->paintContents(&ctx, rect);
</del><ins>+ m_frame->view()->paintContents(ctx, rect);
</ins><span class="cx"> ctx.restore();
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorepagewinFrameCGWincpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/win/FrameCGWin.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/win/FrameCGWin.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/page/win/FrameCGWin.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -39,13 +39,13 @@
</span><span class="cx">
</span><span class="cx"> namespace WebCore {
</span><span class="cx">
</span><del>-static void drawRectIntoContext(IntRect rect, FrameView* view, GraphicsContext* gc)
</del><ins>+static void drawRectIntoContext(IntRect rect, FrameView* view, GraphicsContext& gc)
</ins><span class="cx"> {
</span><span class="cx"> IntSize offset = view->scrollOffset();
</span><span class="cx"> rect.move(-offset.width(), -offset.height());
</span><span class="cx"> rect = view->convertToContainingWindow(rect);
</span><span class="cx">
</span><del>- gc->concatCTM(AffineTransform().translate(-rect.x(), -rect.y()));
</del><ins>+ gc.concatCTM(AffineTransform().translate(-rect.x(), -rect.y()));
</ins><span class="cx">
</span><span class="cx"> view->paint(gc, rect);
</span><span class="cx"> }
</span><span class="lines">@@ -72,7 +72,7 @@
</span><span class="cx">
</span><span class="cx"> GraphicsContext gc(context);
</span><span class="cx">
</span><del>- drawRectIntoContext(ir, frame->view(), &gc);
</del><ins>+ drawRectIntoContext(ir, frame->view(), gc);
</ins><span class="cx">
</span><span class="cx"> CGContextRelease(context);
</span><span class="cx"> SelectObject(hdc.get(), hbmpOld);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformScrollViewcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ScrollView.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ScrollView.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/ScrollView.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1147,14 +1147,14 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ScrollView::paintScrollCorner(GraphicsContext* context, const IntRect& cornerRect)
</del><ins>+void ScrollView::paintScrollCorner(GraphicsContext& context, const IntRect& cornerRect)
</ins><span class="cx"> {
</span><span class="cx"> ScrollbarTheme::theme()->paintScrollCorner(this, context, cornerRect);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ScrollView::paintScrollbar(GraphicsContext* context, Scrollbar* bar, const IntRect& rect)
</del><ins>+void ScrollView::paintScrollbar(GraphicsContext& context, Scrollbar& bar, const IntRect& rect)
</ins><span class="cx"> {
</span><del>- bar->paint(context, rect);
</del><ins>+ bar.paint(context, rect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void ScrollView::invalidateScrollCornerRect(const IntRect& rect)
</span><span class="lines">@@ -1162,12 +1162,12 @@
</span><span class="cx"> invalidateRect(rect);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ScrollView::paintScrollbars(GraphicsContext* context, const IntRect& rect)
</del><ins>+void ScrollView::paintScrollbars(GraphicsContext& context, const IntRect& rect)
</ins><span class="cx"> {
</span><span class="cx"> if (m_horizontalScrollbar && !layerForHorizontalScrollbar())
</span><del>- paintScrollbar(context, m_horizontalScrollbar.get(), rect);
</del><ins>+ paintScrollbar(context, *m_horizontalScrollbar.get(), rect);
</ins><span class="cx"> if (m_verticalScrollbar && !layerForVerticalScrollbar())
</span><del>- paintScrollbar(context, m_verticalScrollbar.get(), rect);
</del><ins>+ paintScrollbar(context, *m_verticalScrollbar.get(), rect);
</ins><span class="cx">
</span><span class="cx"> if (layerForScrollCorner())
</span><span class="cx"> return;
</span><span class="lines">@@ -1175,23 +1175,23 @@
</span><span class="cx"> paintScrollCorner(context, scrollCornerRect());
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ScrollView::paintPanScrollIcon(GraphicsContext* context)
</del><ins>+void ScrollView::paintPanScrollIcon(GraphicsContext& context)
</ins><span class="cx"> {
</span><span class="cx"> static Image* panScrollIcon = Image::loadPlatformResource("panIcon").leakRef();
</span><span class="cx"> IntPoint iconGCPoint = m_panScrollIconPoint;
</span><span class="cx"> if (parent())
</span><span class="cx"> iconGCPoint = parent()->windowToContents(iconGCPoint);
</span><del>- context->drawImage(panScrollIcon, ColorSpaceDeviceRGB, iconGCPoint);
</del><ins>+ context.drawImage(panScrollIcon, ColorSpaceDeviceRGB, iconGCPoint);
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void ScrollView::paint(GraphicsContext* context, const IntRect& rect)
</del><ins>+void ScrollView::paint(GraphicsContext& context, const IntRect& rect)
</ins><span class="cx"> {
</span><span class="cx"> if (platformWidget()) {
</span><span class="cx"> Widget::paint(context, rect);
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- if (context->paintingDisabled() && !context->updatingControlTints())
</del><ins>+ if (context.paintingDisabled() && !context.updatingControlTints())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> notifyPageThatContentAreaWillPaint();
</span><span class="lines">@@ -1203,16 +1203,16 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (!documentDirtyRect.isEmpty()) {
</span><del>- GraphicsContextStateSaver stateSaver(*context);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
</ins><span class="cx">
</span><del>- context->translate(x(), y());
</del><ins>+ context.translate(x(), y());
</ins><span class="cx"> documentDirtyRect.moveBy(-location());
</span><span class="cx">
</span><span class="cx"> if (!paintsEntireContents()) {
</span><del>- context->translate(-scrollX(), -scrollY());
</del><ins>+ context.translate(-scrollX(), -scrollY());
</ins><span class="cx"> documentDirtyRect.moveBy(scrollPosition());
</span><span class="cx">
</span><del>- context->clip(visibleContentRect(LegacyIOSDocumentVisibleRect));
</del><ins>+ context.clip(visibleContentRect(LegacyIOSDocumentVisibleRect));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> paintContents(context, documentDirtyRect);
</span><span class="lines">@@ -1227,13 +1227,13 @@
</span><span class="cx">
</span><span class="cx"> // Now paint the scrollbars.
</span><span class="cx"> if (!m_scrollbarsSuppressed && (m_horizontalScrollbar || m_verticalScrollbar)) {
</span><del>- GraphicsContextStateSaver stateSaver(*context);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
</ins><span class="cx"> IntRect scrollViewDirtyRect = rect;
</span><span class="cx"> IntRect visibleAreaWithScrollbars(location(), unobscuredContentRectIncludingScrollbars().size());
</span><span class="cx"> scrollViewDirtyRect.intersect(visibleAreaWithScrollbars);
</span><del>- context->translate(x(), y());
</del><ins>+ context.translate(x(), y());
</ins><span class="cx"> scrollViewDirtyRect.moveBy(-location());
</span><del>- context->clip(IntRect(IntPoint(), visibleAreaWithScrollbars.size()));
</del><ins>+ context.clip(IntRect(IntPoint(), visibleAreaWithScrollbars.size()));
</ins><span class="cx">
</span><span class="cx"> paintScrollbars(context, scrollViewDirtyRect);
</span><span class="cx"> }
</span><span class="lines">@@ -1299,12 +1299,12 @@
</span><span class="cx"> window->invalidateContentsAndRootView(verticalOverhangRect);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ScrollView::paintOverhangAreas(GraphicsContext* context, const IntRect& horizontalOverhangRect, const IntRect& verticalOverhangRect, const IntRect& dirtyRect)
</del><ins>+void ScrollView::paintOverhangAreas(GraphicsContext& context, const IntRect& horizontalOverhangRect, const IntRect& verticalOverhangRect, const IntRect& dirtyRect)
</ins><span class="cx"> {
</span><del>- ScrollbarTheme::theme()->paintOverhangAreas(this, context, horizontalOverhangRect, verticalOverhangRect, dirtyRect);
</del><ins>+ ScrollbarTheme::theme()->paintOverhangAreas(*this, context, horizontalOverhangRect, verticalOverhangRect, dirtyRect);
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void ScrollView::calculateAndPaintOverhangAreas(GraphicsContext* context, const IntRect& dirtyRect)
</del><ins>+void ScrollView::calculateAndPaintOverhangAreas(GraphicsContext& context, const IntRect& dirtyRect)
</ins><span class="cx"> {
</span><span class="cx"> IntRect horizontalOverhangRect;
</span><span class="cx"> IntRect verticalOverhangRect;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformScrollViewh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ScrollView.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ScrollView.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/ScrollView.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -343,8 +343,8 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Widget override. Handles painting of the contents of the view as well as the scrollbars.
</span><del>- WEBCORE_EXPORT virtual void paint(GraphicsContext*, const IntRect&) override;
- void paintScrollbars(GraphicsContext*, const IntRect&);
</del><ins>+ WEBCORE_EXPORT virtual void paint(GraphicsContext&, const IntRect&) override;
+ void paintScrollbars(GraphicsContext&, const IntRect&);
</ins><span class="cx">
</span><span class="cx"> // Widget overrides to ensure that our children's visibility status is kept up to date when we get shown and hidden.
</span><span class="cx"> WEBCORE_EXPORT virtual void show() override;
</span><span class="lines">@@ -355,20 +355,20 @@
</span><span class="cx"> static const int noPanScrollRadius = 15;
</span><span class="cx"> void addPanScrollIcon(const IntPoint&);
</span><span class="cx"> void removePanScrollIcon();
</span><del>- void paintPanScrollIcon(GraphicsContext*);
</del><ins>+ void paintPanScrollIcon(GraphicsContext&);
</ins><span class="cx">
</span><span class="cx"> virtual bool isPointInScrollbarCorner(const IntPoint&);
</span><span class="cx"> virtual bool scrollbarCornerPresent() const;
</span><span class="cx"> virtual IntRect scrollCornerRect() const override;
</span><del>- virtual void paintScrollCorner(GraphicsContext*, const IntRect& cornerRect);
- virtual void paintScrollbar(GraphicsContext*, Scrollbar*, const IntRect&);
</del><ins>+ virtual void paintScrollCorner(GraphicsContext&, const IntRect& cornerRect);
+ virtual void paintScrollbar(GraphicsContext&, Scrollbar&, const IntRect&);
</ins><span class="cx">
</span><span class="cx"> virtual IntRect convertFromScrollbarToContainingView(const Scrollbar*, const IntRect&) const override;
</span><span class="cx"> virtual IntRect convertFromContainingViewToScrollbar(const Scrollbar*, const IntRect&) const override;
</span><span class="cx"> virtual IntPoint convertFromScrollbarToContainingView(const Scrollbar*, const IntPoint&) const override;
</span><span class="cx"> virtual IntPoint convertFromContainingViewToScrollbar(const Scrollbar*, const IntPoint&) const override;
</span><span class="cx">
</span><del>- void calculateAndPaintOverhangAreas(GraphicsContext*, const IntRect& dirtyRect);
</del><ins>+ void calculateAndPaintOverhangAreas(GraphicsContext&, const IntRect& dirtyRect);
</ins><span class="cx">
</span><span class="cx"> virtual bool isScrollView() const override { return true; }
</span><span class="cx">
</span><span class="lines">@@ -378,9 +378,9 @@
</span><span class="cx"> ScrollView();
</span><span class="cx">
</span><span class="cx"> virtual void repaintContentRectangle(const IntRect&);
</span><del>- virtual void paintContents(GraphicsContext*, const IntRect& damageRect) = 0;
</del><ins>+ virtual void paintContents(GraphicsContext&, const IntRect& damageRect) = 0;
</ins><span class="cx">
</span><del>- virtual void paintOverhangAreas(GraphicsContext*, const IntRect& horizontalOverhangArea, const IntRect& verticalOverhangArea, const IntRect& dirtyRect);
</del><ins>+ virtual void paintOverhangAreas(GraphicsContext&, const IntRect& horizontalOverhangArea, const IntRect& verticalOverhangArea, const IntRect& dirtyRect);
</ins><span class="cx">
</span><span class="cx"> virtual void availableContentSizeChanged(AvailableSizeChangeReason) override;
</span><span class="cx"> virtual void addedOrRemovedScrollbar() = 0;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformScrollbarcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/Scrollbar.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/Scrollbar.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/Scrollbar.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -151,17 +151,17 @@
</span><span class="cx"> updateThumb();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void Scrollbar::paint(GraphicsContext* context, const IntRect& damageRect)
</del><ins>+void Scrollbar::paint(GraphicsContext& context, const IntRect& damageRect)
</ins><span class="cx"> {
</span><del>- if (context->updatingControlTints() && theme()->supportsControlTints()) {
</del><ins>+ if (context.updatingControlTints() && theme()->supportsControlTints()) {
</ins><span class="cx"> invalidate();
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- if (context->paintingDisabled() || !frameRect().intersects(damageRect))
</del><ins>+ if (context.paintingDisabled() || !frameRect().intersects(damageRect))
</ins><span class="cx"> return;
</span><span class="cx">
</span><del>- if (!theme()->paint(*this, *context, damageRect))
</del><ins>+ if (!theme()->paint(*this, context, damageRect))
</ins><span class="cx"> Widget::paint(context, damageRect);
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformScrollbarh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/Scrollbar.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/Scrollbar.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/Scrollbar.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -83,7 +83,7 @@
</span><span class="cx"> WEBCORE_EXPORT void setProportion(int visibleSize, int totalSize);
</span><span class="cx"> void setPressedPos(int p) { m_pressedPos = p; }
</span><span class="cx">
</span><del>- virtual void paint(GraphicsContext*, const IntRect& damageRect) override;
</del><ins>+ virtual void paint(GraphicsContext&, const IntRect& damageRect) override;
</ins><span class="cx">
</span><span class="cx"> bool enabled() const { return m_enabled; }
</span><span class="cx"> virtual void setEnabled(bool);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformScrollbarThemeh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ScrollbarTheme.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ScrollbarTheme.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/ScrollbarTheme.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -84,11 +84,11 @@
</span><span class="cx">
</span><span class="cx"> virtual void invalidatePart(Scrollbar&, ScrollbarPart) { }
</span><span class="cx">
</span><del>- virtual void paintScrollCorner(ScrollView*, GraphicsContext* context, const IntRect& cornerRect) { defaultPaintScrollCorner(context, cornerRect); }
- static void defaultPaintScrollCorner(GraphicsContext* context, const IntRect& cornerRect) { context->fillRect(cornerRect, Color::white, ColorSpaceDeviceRGB); }
</del><ins>+ virtual void paintScrollCorner(ScrollView*, GraphicsContext& context, const IntRect& cornerRect) { defaultPaintScrollCorner(context, cornerRect); }
+ static void defaultPaintScrollCorner(GraphicsContext& context, const IntRect& cornerRect) { context.fillRect(cornerRect, Color::white, ColorSpaceDeviceRGB); }
</ins><span class="cx">
</span><span class="cx"> virtual void paintTickmarks(GraphicsContext&, Scrollbar&, const IntRect&) { }
</span><del>- virtual void paintOverhangAreas(ScrollView*, GraphicsContext*, const IntRect&, const IntRect&, const IntRect&) { }
</del><ins>+ virtual void paintOverhangAreas(ScrollView&, GraphicsContext&, const IntRect&, const IntRect&, const IntRect&) { }
</ins><span class="cx">
</span><span class="cx"> #if ENABLE(RUBBER_BANDING)
</span><span class="cx"> virtual void setUpOverhangAreasLayerContents(GraphicsLayer*, const Color&) { }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformScrollbarThemeCompositecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ScrollbarThemeComposite.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ScrollbarThemeComposite.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/ScrollbarThemeComposite.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -260,9 +260,9 @@
</span><span class="cx"> return (scrollbar.orientation() == HorizontalScrollbar) ? constrainedTrackRect.width() : constrainedTrackRect.height();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ScrollbarThemeComposite::paintScrollCorner(ScrollView*, GraphicsContext* context, const IntRect& cornerRect)
</del><ins>+void ScrollbarThemeComposite::paintScrollCorner(ScrollView*, GraphicsContext& context, const IntRect& cornerRect)
</ins><span class="cx"> {
</span><del>- context->fillRect(cornerRect, Color::white, ColorSpaceDeviceRGB);
</del><ins>+ context.fillRect(cornerRect, Color::white, ColorSpaceDeviceRGB);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> IntRect ScrollbarThemeComposite::thumbRect(Scrollbar& scrollbar)
</span><span class="lines">@@ -279,15 +279,15 @@
</span><span class="cx"> return thumbRect;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ScrollbarThemeComposite::paintOverhangAreas(ScrollView*, GraphicsContext* context, const IntRect& horizontalOverhangRect, const IntRect& verticalOverhangRect, const IntRect& dirtyRect)
</del><ins>+void ScrollbarThemeComposite::paintOverhangAreas(ScrollView&, GraphicsContext& context, const IntRect& horizontalOverhangRect, const IntRect& verticalOverhangRect, const IntRect& dirtyRect)
</ins><span class="cx"> {
</span><del>- context->setFillColor(Color::white, ColorSpaceDeviceRGB);
</del><ins>+ context.setFillColor(Color::white, ColorSpaceDeviceRGB);
</ins><span class="cx"> if (!horizontalOverhangRect.isEmpty())
</span><del>- context->fillRect(intersection(horizontalOverhangRect, dirtyRect));
</del><ins>+ context.fillRect(intersection(horizontalOverhangRect, dirtyRect));
</ins><span class="cx">
</span><del>- context->setFillColor(Color::white, ColorSpaceDeviceRGB);
</del><ins>+ context.setFillColor(Color::white, ColorSpaceDeviceRGB);
</ins><span class="cx"> if (!verticalOverhangRect.isEmpty())
</span><del>- context->fillRect(intersection(verticalOverhangRect, dirtyRect));
</del><ins>+ context.fillRect(intersection(verticalOverhangRect, dirtyRect));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformScrollbarThemeCompositeh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ScrollbarThemeComposite.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ScrollbarThemeComposite.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/ScrollbarThemeComposite.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -46,8 +46,8 @@
</span><span class="cx"> virtual int thumbLength(Scrollbar&) override;
</span><span class="cx"> virtual int trackPosition(Scrollbar&) override;
</span><span class="cx"> virtual int trackLength(Scrollbar&) override;
</span><del>- virtual void paintScrollCorner(ScrollView*, GraphicsContext*, const IntRect& cornerRect) override;
- virtual void paintOverhangAreas(ScrollView*, GraphicsContext*, const IntRect& horizontalOverhangArea, const IntRect& verticalOverhangArea, const IntRect& dirtyRect) override;
</del><ins>+ virtual void paintScrollCorner(ScrollView*, GraphicsContext&, const IntRect& cornerRect) override;
+ virtual void paintOverhangAreas(ScrollView&, GraphicsContext&, const IntRect& horizontalOverhangArea, const IntRect& verticalOverhangArea, const IntRect& dirtyRect) override;
</ins><span class="cx">
</span><span class="cx"> virtual bool hasButtons(Scrollbar&) = 0;
</span><span class="cx"> virtual bool hasThumb(Scrollbar&) = 0;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformThemecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/Theme.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/Theme.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/Theme.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -57,19 +57,19 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void Theme::drawNamedImage(const String& name, GraphicsContext* context, const FloatRect& rect) const
</del><ins>+void Theme::drawNamedImage(const String& name, GraphicsContext& context, const FloatRect& rect) const
</ins><span class="cx"> {
</span><span class="cx"> // We only handle one icon at the moment.
</span><span class="cx"> if (name != "wireless-playback")
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context);
- context->setFillColor(Color::black, ColorSpaceDeviceRGB);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
+ context.setFillColor(Color::black, ColorSpaceDeviceRGB);
</ins><span class="cx">
</span><span class="cx"> // Draw a generic Wireless Playback icon.
</span><span class="cx">
</span><del>- context->scale(FloatSize(rect.size().width() / 100, rect.size().height() / 100));
- context->translate(8, 1);
</del><ins>+ context.scale(FloatSize(rect.size().width() / 100, rect.size().height() / 100));
+ context.translate(8, 1);
</ins><span class="cx">
</span><span class="cx"> Path outline;
</span><span class="cx"> outline.moveTo(FloatPoint(59, 58.7));
</span><span class="lines">@@ -110,7 +110,7 @@
</span><span class="cx"> outline.addLineTo(FloatPoint(83.6, 41.6));
</span><span class="cx"> outline.closeSubpath();
</span><span class="cx">
</span><del>- context->fillPath(outline);
</del><ins>+ context.fillPath(outline);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformThemeh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/Theme.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/Theme.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/Theme.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -100,7 +100,7 @@
</span><span class="cx"> virtual bool controlRequiresPreWhiteSpace(ControlPart) const { return false; }
</span><span class="cx">
</span><span class="cx"> // Method for painting a control. The rect is in zoomed coordinates.
</span><del>- virtual void paint(ControlPart, ControlStates&, GraphicsContext*, const FloatRect& /*zoomedRect*/, float /*zoomFactor*/, ScrollView*, float /*deviceScaleFactor*/, float /*pageScaleFactor*/) { }
</del><ins>+ virtual void paint(ControlPart, ControlStates&, GraphicsContext&, const FloatRect& /*zoomedRect*/, float /*zoomFactor*/, ScrollView*, float /*deviceScaleFactor*/, float /*pageScaleFactor*/) { }
</ins><span class="cx">
</span><span class="cx"> // Some controls may spill out of their containers (e.g., the check on an OS X checkbox). When these controls repaint,
</span><span class="cx"> // the theme needs to communicate this inflated rect to the engine so that it can invalidate the whole control.
</span><span class="lines">@@ -108,7 +108,7 @@
</span><span class="cx"> // amount is also scaled by the zoomFactor.
</span><span class="cx"> virtual void inflateControlPaintRect(ControlPart, const ControlStates&, FloatRect& /*zoomedRect*/, float /*zoomFactor*/) const { }
</span><span class="cx">
</span><del>- virtual void drawNamedImage(const String&, GraphicsContext*, const FloatRect&) const;
</del><ins>+ virtual void drawNamedImage(const String&, GraphicsContext&, const FloatRect&) const;
</ins><span class="cx">
</span><span class="cx"> // This method is called once, from RenderTheme::adjustDefaultStyleSheet(), to let each platform adjust
</span><span class="cx"> // the default CSS rules in html.css.
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformWidgeth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/Widget.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/Widget.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/Widget.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -117,7 +117,7 @@
</span><span class="cx"> void move(int x, int y) { setFrameRect(IntRect(x, y, width(), height())); }
</span><span class="cx"> void move(const IntPoint& p) { setFrameRect(IntRect(p, size())); }
</span><span class="cx">
</span><del>- WEBCORE_EXPORT virtual void paint(GraphicsContext*, const IntRect&);
</del><ins>+ WEBCORE_EXPORT virtual void paint(GraphicsContext&, const IntRect&);
</ins><span class="cx"> void invalidate() { invalidateRect(boundsRect()); }
</span><span class="cx"> virtual void invalidateRect(const IntRect&) = 0;
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformcocoaThemeCocoacpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/cocoa/ThemeCocoa.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/cocoa/ThemeCocoa.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/cocoa/ThemeCocoa.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -30,7 +30,7 @@
</span><span class="cx">
</span><span class="cx"> namespace WebCore {
</span><span class="cx">
</span><del>-static void fitContextToBox(GraphicsContext* context, const FloatSize& srcImageSize, const FloatSize& dstSize)
</del><ins>+static void fitContextToBox(GraphicsContext& context, const FloatSize& srcImageSize, const FloatSize& dstSize)
</ins><span class="cx"> {
</span><span class="cx"> float srcRatio = srcImageSize.aspectRatio();
</span><span class="cx"> float dstRatio = dstSize.aspectRatio();
</span><span class="lines">@@ -45,11 +45,11 @@
</span><span class="cx"> scale = dstSize.height() / srcImageSize.height();
</span><span class="cx"> translationX = (dstSize.width() - scale * srcImageSize.width()) / 2;
</span><span class="cx"> }
</span><del>- context->translate(translationX, translationY);
- context->scale(FloatSize(scale, scale));
</del><ins>+ context.translate(translationX, translationY);
+ context.scale(FloatSize(scale, scale));
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void ThemeCocoa::drawNamedImage(const String& name, GraphicsContext* context, const FloatRect& rect) const
</del><ins>+void ThemeCocoa::drawNamedImage(const String& name, GraphicsContext& context, const FloatRect& rect) const
</ins><span class="cx"> {
</span><span class="cx"> // We only handle one icon at the moment.
</span><span class="cx"> if (name != "wireless-playback") {
</span><span class="lines">@@ -57,8 +57,8 @@
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context);
- context->setFillColor(Color::black, ColorSpaceDeviceRGB);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
+ context.setFillColor(Color::black, ColorSpaceDeviceRGB);
</ins><span class="cx">
</span><span class="cx"> FloatSize wirelessPlaybackSrcSize(32, 24.016);
</span><span class="cx"> fitContextToBox(context, wirelessPlaybackSrcSize, rect.size());
</span><span class="lines">@@ -84,7 +84,7 @@
</span><span class="cx"> outline.addLineTo(FloatPoint(26.917, 24.016));
</span><span class="cx"> outline.closeSubpath();
</span><span class="cx">
</span><del>- context->fillPath(outline);
</del><ins>+ context.fillPath(outline);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformcocoaThemeCocoah"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/cocoa/ThemeCocoa.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/cocoa/ThemeCocoa.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/cocoa/ThemeCocoa.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -35,7 +35,7 @@
</span><span class="cx"> ThemeCocoa() { }
</span><span class="cx"> virtual ~ThemeCocoa() { }
</span><span class="cx">
</span><del>- virtual void drawNamedImage(const String&, GraphicsContext*, const FloatRect&) const override;
</del><ins>+ virtual void drawNamedImage(const String&, GraphicsContext&, const FloatRect&) const override;
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> } // namespace WebCore
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformeflWidgetEflcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/efl/WidgetEfl.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/efl/WidgetEfl.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/efl/WidgetEfl.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -95,7 +95,7 @@
</span><span class="cx"> notImplemented();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void Widget::paint(GraphicsContext*, const IntRect&)
</del><ins>+void Widget::paint(GraphicsContext&, const IntRect&)
</ins><span class="cx"> {
</span><span class="cx"> notImplemented();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsBitmapImagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/BitmapImage.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/BitmapImage.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/BitmapImage.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -605,13 +605,13 @@
</span><span class="cx"> destroyDecodedDataIfNecessary(true);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void BitmapImage::drawPattern(GraphicsContext* ctxt, const FloatRect& tileRect, const AffineTransform& transform,
</del><ins>+void BitmapImage::drawPattern(GraphicsContext& ctxt, const FloatRect& tileRect, const AffineTransform& transform,
</ins><span class="cx"> const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator op, const FloatRect& destRect, BlendMode blendMode)
</span><span class="cx"> {
</span><span class="cx"> if (tileRect.isEmpty())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- if (!ctxt->drawLuminanceMask()) {
</del><ins>+ if (!ctxt.drawLuminanceMask()) {
</ins><span class="cx"> Image::drawPattern(ctxt, tileRect, transform, phase, styleColorSpace, op, destRect, blendMode);
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="lines">@@ -638,7 +638,7 @@
</span><span class="cx"> m_cachedImage->setSpaceSize(spaceSize());
</span><span class="cx"> }
</span><span class="cx">
</span><del>- ctxt->setDrawLuminanceMask(false);
</del><ins>+ ctxt.setDrawLuminanceMask(false);
</ins><span class="cx"> m_cachedImage->drawPattern(ctxt, tileRect, transform, phase, styleColorSpace, op, destRect, blendMode);
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsBitmapImageh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/BitmapImage.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/BitmapImage.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/BitmapImage.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -142,7 +142,7 @@
</span><span class="cx"> virtual void stopAnimation() override;
</span><span class="cx"> virtual void resetAnimation() override;
</span><span class="cx">
</span><del>- virtual void drawPattern(GraphicsContext*, const FloatRect& srcRect, const AffineTransform& patternTransform,
</del><ins>+ virtual void drawPattern(GraphicsContext&, const FloatRect& srcRect, const AffineTransform& patternTransform,
</ins><span class="cx"> const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator, const FloatRect& destRect, BlendMode = BlendModeNormal) override;
</span><span class="cx">
</span><span class="cx"> // Accessors for native image formats.
</span><span class="lines">@@ -201,12 +201,12 @@
</span><span class="cx"> WEBCORE_EXPORT BitmapImage(ImageObserver* = 0);
</span><span class="cx">
</span><span class="cx"> #if PLATFORM(WIN)
</span><del>- virtual void drawFrameMatchingSourceSize(GraphicsContext*, const FloatRect& dstRect, const IntSize& srcSize, ColorSpace styleColorSpace, CompositeOperator) override;
</del><ins>+ virtual void drawFrameMatchingSourceSize(GraphicsContext&, const FloatRect& dstRect, const IntSize& srcSize, ColorSpace styleColorSpace, CompositeOperator) override;
</ins><span class="cx"> #endif
</span><del>- virtual void draw(GraphicsContext*, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override;
</del><ins>+ virtual void draw(GraphicsContext&, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override;
</ins><span class="cx">
</span><span class="cx"> #if USE(WINGDI)
</span><del>- virtual void drawPattern(GraphicsContext*, const FloatRect& srcRect, const AffineTransform& patternTransform,
</del><ins>+ virtual void drawPattern(GraphicsContext&, const FloatRect& srcRect, const AffineTransform& patternTransform,
</ins><span class="cx"> const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator, const FloatRect& destRect);
</span><span class="cx"> #endif
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsCrossfadeGeneratedImagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/CrossfadeGeneratedImage.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/CrossfadeGeneratedImage.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/CrossfadeGeneratedImage.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -41,68 +41,68 @@
</span><span class="cx"> setContainerSize(size);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static void drawCrossfadeSubimage(GraphicsContext* context, Image* image, CompositeOperator operation, float opacity, const FloatSize& targetSize)
</del><ins>+static void drawCrossfadeSubimage(GraphicsContext& context, Image* image, CompositeOperator operation, float opacity, const FloatSize& targetSize)
</ins><span class="cx"> {
</span><span class="cx"> FloatSize imageSize = image->size();
</span><span class="cx">
</span><span class="cx"> // SVGImage resets the opacity when painting, so we have to use transparency layers to accurately paint one at a given opacity.
</span><span class="cx"> bool useTransparencyLayer = image->isSVGImage();
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
</ins><span class="cx">
</span><del>- context->setCompositeOperation(operation);
</del><ins>+ context.setCompositeOperation(operation);
</ins><span class="cx">
</span><span class="cx"> if (useTransparencyLayer)
</span><del>- context->beginTransparencyLayer(opacity);
</del><ins>+ context.beginTransparencyLayer(opacity);
</ins><span class="cx"> else
</span><del>- context->setAlpha(opacity);
</del><ins>+ context.setAlpha(opacity);
</ins><span class="cx">
</span><span class="cx"> if (targetSize != imageSize)
</span><del>- context->scale(FloatSize(targetSize.width() / imageSize.width(), targetSize.height() / imageSize.height()));
- context->drawImage(image, ColorSpaceDeviceRGB, IntPoint());
</del><ins>+ context.scale(FloatSize(targetSize.width() / imageSize.width(), targetSize.height() / imageSize.height()));
+ context.drawImage(image, ColorSpaceDeviceRGB, IntPoint());
</ins><span class="cx">
</span><span class="cx"> if (useTransparencyLayer)
</span><del>- context->endTransparencyLayer();
</del><ins>+ context.endTransparencyLayer();
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void CrossfadeGeneratedImage::drawCrossfade(GraphicsContext* context)
</del><ins>+void CrossfadeGeneratedImage::drawCrossfade(GraphicsContext& context)
</ins><span class="cx"> {
</span><span class="cx"> // Draw nothing if either of the images hasn't loaded yet.
</span><span class="cx"> if (m_fromImage == Image::nullImage() || m_toImage == Image::nullImage())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
</ins><span class="cx">
</span><del>- context->clip(FloatRect(FloatPoint(), m_crossfadeSize));
- context->beginTransparencyLayer(1);
</del><ins>+ context.clip(FloatRect(FloatPoint(), m_crossfadeSize));
+ context.beginTransparencyLayer(1);
</ins><span class="cx">
</span><span class="cx"> drawCrossfadeSubimage(context, m_fromImage, CompositeSourceOver, 1 - m_percentage, m_crossfadeSize);
</span><span class="cx"> drawCrossfadeSubimage(context, m_toImage, CompositePlusLighter, m_percentage, m_crossfadeSize);
</span><span class="cx">
</span><del>- context->endTransparencyLayer();
</del><ins>+ context.endTransparencyLayer();
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void CrossfadeGeneratedImage::draw(GraphicsContext* context, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace, CompositeOperator compositeOp, BlendMode blendMode, ImageOrientationDescription)
</del><ins>+void CrossfadeGeneratedImage::draw(GraphicsContext& context, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace, CompositeOperator compositeOp, BlendMode blendMode, ImageOrientationDescription)
</ins><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*context);
- context->setCompositeOperation(compositeOp, blendMode);
- context->clip(dstRect);
- context->translate(dstRect.x(), dstRect.y());
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
+ context.setCompositeOperation(compositeOp, blendMode);
+ context.clip(dstRect);
+ context.translate(dstRect.x(), dstRect.y());
</ins><span class="cx"> if (dstRect.size() != srcRect.size())
</span><del>- context->scale(FloatSize(dstRect.width() / srcRect.width(), dstRect.height() / srcRect.height()));
- context->translate(-srcRect.x(), -srcRect.y());
</del><ins>+ context.scale(FloatSize(dstRect.width() / srcRect.width(), dstRect.height() / srcRect.height()));
+ context.translate(-srcRect.x(), -srcRect.y());
</ins><span class="cx">
</span><span class="cx"> drawCrossfade(context);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void CrossfadeGeneratedImage::drawPattern(GraphicsContext* context, const FloatRect& srcRect, const AffineTransform& patternTransform, const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator compositeOp, const FloatRect& dstRect, BlendMode blendMode)
</del><ins>+void CrossfadeGeneratedImage::drawPattern(GraphicsContext& context, const FloatRect& srcRect, const AffineTransform& patternTransform, const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator compositeOp, const FloatRect& dstRect, BlendMode blendMode)
</ins><span class="cx"> {
</span><del>- std::unique_ptr<ImageBuffer> imageBuffer = ImageBuffer::create(size(), 1, ColorSpaceDeviceRGB, context->isAcceleratedContext() ? Accelerated : Unaccelerated);
</del><ins>+ std::unique_ptr<ImageBuffer> imageBuffer = ImageBuffer::create(size(), 1, ColorSpaceDeviceRGB, context.isAcceleratedContext() ? Accelerated : Unaccelerated);
</ins><span class="cx"> if (!imageBuffer)
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> // Fill with the cross-faded image.
</span><del>- GraphicsContext* graphicsContext = imageBuffer->context();
</del><ins>+ GraphicsContext& graphicsContext = imageBuffer->context();
</ins><span class="cx"> drawCrossfade(graphicsContext);
</span><span class="cx">
</span><span class="cx"> // Tile the image buffer into the context.
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsCrossfadeGeneratedImageh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/CrossfadeGeneratedImage.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/CrossfadeGeneratedImage.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/CrossfadeGeneratedImage.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -49,13 +49,13 @@
</span><span class="cx"> virtual FloatSize size() const override { return m_crossfadeSize; }
</span><span class="cx">
</span><span class="cx"> protected:
</span><del>- virtual void draw(GraphicsContext*, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override;
- virtual void drawPattern(GraphicsContext*, const FloatRect& srcRect, const AffineTransform& patternTransform, const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator, const FloatRect& dstRect, BlendMode) override;
</del><ins>+ virtual void draw(GraphicsContext&, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override;
+ virtual void drawPattern(GraphicsContext&, const FloatRect& srcRect, const AffineTransform& patternTransform, const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator, const FloatRect& dstRect, BlendMode) override;
</ins><span class="cx">
</span><span class="cx"> CrossfadeGeneratedImage(Image* fromImage, Image* toImage, float percentage, const FloatSize& crossfadeSize, const FloatSize&);
</span><span class="cx">
</span><span class="cx"> private:
</span><del>- void drawCrossfade(GraphicsContext*);
</del><ins>+ void drawCrossfade(GraphicsContext&);
</ins><span class="cx">
</span><span class="cx"> Image* m_fromImage;
</span><span class="cx"> Image* m_toImage;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsFontCascadecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/FontCascade.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/FontCascade.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/FontCascade.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -301,7 +301,7 @@
</span><span class="cx"> m_typesettingFeatures = computeTypesettingFeatures();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-float FontCascade::drawText(GraphicsContext* context, const TextRun& run, const FloatPoint& point, int from, int to, CustomFontNotReadyAction customFontNotReadyAction) const
</del><ins>+float FontCascade::drawText(GraphicsContext& context, const TextRun& run, const FloatPoint& point, int from, int to, CustomFontNotReadyAction customFontNotReadyAction) const
</ins><span class="cx"> {
</span><span class="cx"> // Don't draw anything while we are using custom fonts that are in the process of loading,
</span><span class="cx"> // except if the 'force' argument is set to true (in which case it will use a fallback
</span><span class="lines">@@ -322,7 +322,7 @@
</span><span class="cx"> return drawComplexText(context, run, point, from, to);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FontCascade::drawEmphasisMarks(GraphicsContext* context, const TextRun& run, const AtomicString& mark, const FloatPoint& point, int from, int to) const
</del><ins>+void FontCascade::drawEmphasisMarks(GraphicsContext& context, const TextRun& run, const AtomicString& mark, const FloatPoint& point, int from, int to) const
</ins><span class="cx"> {
</span><span class="cx"> if (isLoadingCustomFonts())
</span><span class="cx"> return;
</span><span class="lines">@@ -1298,7 +1298,7 @@
</span><span class="cx"> return initialAdvance;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-float FontCascade::drawSimpleText(GraphicsContext* context, const TextRun& run, const FloatPoint& point, int from, int to) const
</del><ins>+float FontCascade::drawSimpleText(GraphicsContext& context, const TextRun& run, const FloatPoint& point, int from, int to) const
</ins><span class="cx"> {
</span><span class="cx"> // This glyph buffer holds our glyphs+advances+font data for each glyph.
</span><span class="cx"> GlyphBuffer glyphBuffer;
</span><span class="lines">@@ -1314,7 +1314,7 @@
</span><span class="cx"> return startPoint.x() - startX;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FontCascade::drawEmphasisMarksForSimpleText(GraphicsContext* context, const TextRun& run, const AtomicString& mark, const FloatPoint& point, int from, int to) const
</del><ins>+void FontCascade::drawEmphasisMarksForSimpleText(GraphicsContext& context, const TextRun& run, const AtomicString& mark, const FloatPoint& point, int from, int to) const
</ins><span class="cx"> {
</span><span class="cx"> GlyphBuffer glyphBuffer;
</span><span class="cx"> float initialAdvance = getGlyphsAndAdvancesForSimpleText(run, from, to, glyphBuffer, ForTextEmphasis);
</span><span class="lines">@@ -1325,7 +1325,7 @@
</span><span class="cx"> drawEmphasisMarks(context, run, glyphBuffer, mark, FloatPoint(point.x() + initialAdvance, point.y()));
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FontCascade::drawGlyphBuffer(GraphicsContext* context, const TextRun& run, const GlyphBuffer& glyphBuffer, FloatPoint& point) const
</del><ins>+void FontCascade::drawGlyphBuffer(GraphicsContext& context, const TextRun& run, const GlyphBuffer& glyphBuffer, FloatPoint& point) const
</ins><span class="cx"> {
</span><span class="cx"> #if !ENABLE(SVG_FONTS)
</span><span class="cx"> UNUSED_PARAM(run);
</span><span class="lines">@@ -1349,10 +1349,10 @@
</span><span class="cx"> if (nextFontData != fontData || nextOffset != offset) {
</span><span class="cx"> #if ENABLE(SVG_FONTS)
</span><span class="cx"> if (renderingContext && fontData->isSVGFont())
</span><del>- renderingContext->drawSVGGlyphs(context, fontData, glyphBuffer, lastFrom, nextGlyph - lastFrom, startPoint);
</del><ins>+ renderingContext->drawSVGGlyphs(context, *fontData, glyphBuffer, lastFrom, nextGlyph - lastFrom, startPoint);
</ins><span class="cx"> else
</span><span class="cx"> #endif
</span><del>- drawGlyphs(context, fontData, glyphBuffer, lastFrom, nextGlyph - lastFrom, startPoint);
</del><ins>+ drawGlyphs(context, *fontData, glyphBuffer, lastFrom, nextGlyph - lastFrom, startPoint);
</ins><span class="cx">
</span><span class="cx"> lastFrom = nextGlyph;
</span><span class="cx"> fontData = nextFontData;
</span><span class="lines">@@ -1367,11 +1367,11 @@
</span><span class="cx">
</span><span class="cx"> #if ENABLE(SVG_FONTS)
</span><span class="cx"> if (renderingContext && fontData->isSVGFont())
</span><del>- renderingContext->drawSVGGlyphs(context, fontData, glyphBuffer, lastFrom, nextGlyph - lastFrom, startPoint);
</del><ins>+ renderingContext->drawSVGGlyphs(context, *fontData, glyphBuffer, lastFrom, nextGlyph - lastFrom, startPoint);
</ins><span class="cx"> else
</span><span class="cx"> #endif
</span><span class="cx"> {
</span><del>- drawGlyphs(context, fontData, glyphBuffer, lastFrom, nextGlyph - lastFrom, startPoint);
</del><ins>+ drawGlyphs(context, *fontData, glyphBuffer, lastFrom, nextGlyph - lastFrom, startPoint);
</ins><span class="cx"> point.setX(nextX);
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -1391,7 +1391,7 @@
</span><span class="cx"> return offsetToMiddleOfGlyph(glyphBuffer.fontAt(i), glyphBuffer.glyphAt(i));
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FontCascade::drawEmphasisMarks(GraphicsContext* context, const TextRun& run, const GlyphBuffer& glyphBuffer, const AtomicString& mark, const FloatPoint& point) const
</del><ins>+void FontCascade::drawEmphasisMarks(GraphicsContext& context, const TextRun& run, const GlyphBuffer& glyphBuffer, const AtomicString& mark, const FloatPoint& point) const
</ins><span class="cx"> {
</span><span class="cx"> GlyphData markGlyphData;
</span><span class="cx"> if (!getEmphasisMarkGlyphData(mark, markGlyphData))
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsFontCascadeh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/FontCascade.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/FontCascade.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/FontCascade.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -133,9 +133,9 @@
</span><span class="cx"> void update(RefPtr<FontSelector>&&) const;
</span><span class="cx">
</span><span class="cx"> enum CustomFontNotReadyAction { DoNotPaintIfFontNotReady, UseFallbackIfFontNotReady };
</span><del>- WEBCORE_EXPORT float drawText(GraphicsContext*, const TextRun&, const FloatPoint&, int from = 0, int to = -1, CustomFontNotReadyAction = DoNotPaintIfFontNotReady) const;
- void drawGlyphs(GraphicsContext*, const Font*, const GlyphBuffer&, int from, int numGlyphs, const FloatPoint&) const;
- void drawEmphasisMarks(GraphicsContext*, const TextRun&, const AtomicString& mark, const FloatPoint&, int from = 0, int to = -1) const;
</del><ins>+ WEBCORE_EXPORT float drawText(GraphicsContext&, const TextRun&, const FloatPoint&, int from = 0, int to = -1, CustomFontNotReadyAction = DoNotPaintIfFontNotReady) const;
+ void drawGlyphs(GraphicsContext&, const Font&, const GlyphBuffer&, int from, int numGlyphs, const FloatPoint&) const;
+ void drawEmphasisMarks(GraphicsContext&, const TextRun&, const AtomicString& mark, const FloatPoint&, int from = 0, int to = -1) const;
</ins><span class="cx">
</span><span class="cx"> DashArray dashesForIntersectionsWithRect(const TextRun&, const FloatPoint& textOrigin, const FloatRect& lineExtents) const;
</span><span class="cx">
</span><span class="lines">@@ -223,10 +223,10 @@
</span><span class="cx">
</span><span class="cx"> // Returns the initial in-stream advance.
</span><span class="cx"> float getGlyphsAndAdvancesForSimpleText(const TextRun&, int from, int to, GlyphBuffer&, ForTextEmphasisOrNot = NotForTextEmphasis) const;
</span><del>- float drawSimpleText(GraphicsContext*, const TextRun&, const FloatPoint&, int from, int to) const;
- void drawEmphasisMarksForSimpleText(GraphicsContext*, const TextRun&, const AtomicString& mark, const FloatPoint&, int from, int to) const;
- void drawGlyphBuffer(GraphicsContext*, const TextRun&, const GlyphBuffer&, FloatPoint&) const;
- void drawEmphasisMarks(GraphicsContext*, const TextRun&, const GlyphBuffer&, const AtomicString&, const FloatPoint&) const;
</del><ins>+ float drawSimpleText(GraphicsContext&, const TextRun&, const FloatPoint&, int from, int to) const;
+ void drawEmphasisMarksForSimpleText(GraphicsContext&, const TextRun&, const AtomicString& mark, const FloatPoint&, int from, int to) const;
+ void drawGlyphBuffer(GraphicsContext&, const TextRun&, const GlyphBuffer&, FloatPoint&) const;
+ void drawEmphasisMarks(GraphicsContext&, const TextRun&, const GlyphBuffer&, const AtomicString&, const FloatPoint&) const;
</ins><span class="cx"> float floatWidthForSimpleText(const TextRun&, HashSet<const Font*>* fallbackFonts = 0, GlyphOverflow* = 0) const;
</span><span class="cx"> int offsetForPositionForSimpleText(const TextRun&, float position, bool includePartialGlyphs) const;
</span><span class="cx"> void adjustSelectionRectForSimpleText(const TextRun&, LayoutRect& selectionRect, int from, int to) const;
</span><span class="lines">@@ -238,8 +238,8 @@
</span><span class="cx">
</span><span class="cx"> // Returns the initial in-stream advance.
</span><span class="cx"> float getGlyphsAndAdvancesForComplexText(const TextRun&, int from, int to, GlyphBuffer&, ForTextEmphasisOrNot = NotForTextEmphasis) const;
</span><del>- float drawComplexText(GraphicsContext*, const TextRun&, const FloatPoint&, int from, int to) const;
- void drawEmphasisMarksForComplexText(GraphicsContext*, const TextRun&, const AtomicString& mark, const FloatPoint&, int from, int to) const;
</del><ins>+ float drawComplexText(GraphicsContext&, const TextRun&, const FloatPoint&, int from, int to) const;
+ void drawEmphasisMarksForComplexText(GraphicsContext&, const TextRun&, const AtomicString& mark, const FloatPoint&, int from, int to) const;
</ins><span class="cx"> float floatWidthForComplexText(const TextRun&, HashSet<const Font*>* fallbackFonts = 0, GlyphOverflow* = 0) const;
</span><span class="cx"> int offsetForPositionForComplexText(const TextRun&, float position, bool includePartialGlyphs) const;
</span><span class="cx"> void adjustSelectionRectForComplexText(const TextRun&, LayoutRect& selectionRect, int from, int to) const;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsGeneratedImageh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/GeneratedImage.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/GeneratedImage.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/GeneratedImage.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -49,8 +49,8 @@
</span><span class="cx"> virtual void destroyDecodedData(bool /*destroyAll*/ = true) override { }
</span><span class="cx">
</span><span class="cx"> protected:
</span><del>- virtual void draw(GraphicsContext*, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override = 0;
- virtual void drawPattern(GraphicsContext*, const FloatRect& srcRect, const AffineTransform& patternTransform,
</del><ins>+ virtual void draw(GraphicsContext&, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override = 0;
+ virtual void drawPattern(GraphicsContext&, const FloatRect& srcRect, const AffineTransform& patternTransform,
</ins><span class="cx"> const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator, const FloatRect& destRect, BlendMode) override = 0;
</span><span class="cx">
</span><span class="cx"> // FIXME: Implement this to be less conservative.
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsGradientImagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/GradientImage.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/GradientImage.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/GradientImage.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -43,19 +43,19 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void GradientImage::draw(GraphicsContext* destContext, const FloatRect& destRect, const FloatRect& srcRect, ColorSpace, CompositeOperator compositeOp, BlendMode blendMode, ImageOrientationDescription)
</del><ins>+void GradientImage::draw(GraphicsContext& destContext, const FloatRect& destRect, const FloatRect& srcRect, ColorSpace, CompositeOperator compositeOp, BlendMode blendMode, ImageOrientationDescription)
</ins><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*destContext);
- destContext->setCompositeOperation(compositeOp, blendMode);
- destContext->clip(destRect);
- destContext->translate(destRect.x(), destRect.y());
</del><ins>+ GraphicsContextStateSaver stateSaver(destContext);
+ destContext.setCompositeOperation(compositeOp, blendMode);
+ destContext.clip(destRect);
+ destContext.translate(destRect.x(), destRect.y());
</ins><span class="cx"> if (destRect.size() != srcRect.size())
</span><del>- destContext->scale(FloatSize(destRect.width() / srcRect.width(), destRect.height() / srcRect.height()));
- destContext->translate(-srcRect.x(), -srcRect.y());
- destContext->fillRect(FloatRect(FloatPoint(), size()), *m_gradient.get());
</del><ins>+ destContext.scale(FloatSize(destRect.width() / srcRect.width(), destRect.height() / srcRect.height()));
+ destContext.translate(-srcRect.x(), -srcRect.y());
+ destContext.fillRect(FloatRect(FloatPoint(), size()), *m_gradient.get());
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void GradientImage::drawPattern(GraphicsContext* destContext, const FloatRect& srcRect, const AffineTransform& patternTransform,
</del><ins>+void GradientImage::drawPattern(GraphicsContext& destContext, const FloatRect& srcRect, const AffineTransform& patternTransform,
</ins><span class="cx"> const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator compositeOp, const FloatRect& destRect, BlendMode blendMode)
</span><span class="cx"> {
</span><span class="cx"> // Allow the generator to provide visually-equivalent tiling parameters for better performance.
</span><span class="lines">@@ -64,7 +64,7 @@
</span><span class="cx"> m_gradient->adjustParametersForTiledDrawing(adjustedSize, adjustedSrcRect);
</span><span class="cx">
</span><span class="cx"> // Factor in the destination context's scale to generate at the best resolution
</span><del>- AffineTransform destContextCTM = destContext->getCTM(GraphicsContext::DefinitelyIncludeDeviceScale);
</del><ins>+ AffineTransform destContextCTM = destContext.getCTM(GraphicsContext::DefinitelyIncludeDeviceScale);
</ins><span class="cx"> double xScale = fabs(destContextCTM.xScale());
</span><span class="cx"> double yScale = fabs(destContextCTM.yScale());
</span><span class="cx"> AffineTransform adjustedPatternCTM = patternTransform;
</span><span class="lines">@@ -73,23 +73,23 @@
</span><span class="cx">
</span><span class="cx"> unsigned generatorHash = m_gradient->hash();
</span><span class="cx">
</span><del>- if (!m_cachedImageBuffer || m_cachedGeneratorHash != generatorHash || m_cachedAdjustedSize != adjustedSize || !destContext->isCompatibleWithBuffer(m_cachedImageBuffer.get())) {
- m_cachedImageBuffer = destContext->createCompatibleBuffer(adjustedSize, m_gradient->hasAlpha());
</del><ins>+ if (!m_cachedImageBuffer || m_cachedGeneratorHash != generatorHash || m_cachedAdjustedSize != adjustedSize || !destContext.isCompatibleWithBuffer(m_cachedImageBuffer.get())) {
+ m_cachedImageBuffer = destContext.createCompatibleBuffer(adjustedSize, m_gradient->hasAlpha());
</ins><span class="cx"> if (!m_cachedImageBuffer)
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> // Fill with the generated image.
</span><del>- m_cachedImageBuffer->context()->fillRect(FloatRect(FloatPoint(), adjustedSize), *m_gradient);
</del><ins>+ m_cachedImageBuffer->context().fillRect(FloatRect(FloatPoint(), adjustedSize), *m_gradient);
</ins><span class="cx">
</span><span class="cx"> m_cachedGeneratorHash = generatorHash;
</span><span class="cx"> m_cachedAdjustedSize = adjustedSize;
</span><span class="cx">
</span><del>- if (destContext->drawLuminanceMask())
</del><ins>+ if (destContext.drawLuminanceMask())
</ins><span class="cx"> m_cachedImageBuffer->convertToLuminanceMask();
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> m_cachedImageBuffer->setSpaceSize(spaceSize());
</span><del>- destContext->setDrawLuminanceMask(false);
</del><ins>+ destContext.setDrawLuminanceMask(false);
</ins><span class="cx">
</span><span class="cx"> // Tile the image buffer into the context.
</span><span class="cx"> m_cachedImageBuffer->drawPattern(destContext, adjustedSrcRect, adjustedPatternCTM, phase, styleColorSpace, compositeOp, destRect, blendMode);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsGradientImageh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/GradientImage.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/GradientImage.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/GradientImage.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -46,8 +46,8 @@
</span><span class="cx"> virtual ~GradientImage();
</span><span class="cx">
</span><span class="cx"> protected:
</span><del>- virtual void draw(GraphicsContext*, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override;
- virtual void drawPattern(GraphicsContext*, const FloatRect& srcRect, const AffineTransform& patternTransform,
</del><ins>+ virtual void draw(GraphicsContext&, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override;
+ virtual void drawPattern(GraphicsContext&, const FloatRect& srcRect, const AffineTransform& patternTransform,
</ins><span class="cx"> const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator, const FloatRect& destRect, BlendMode) override;
</span><span class="cx">
</span><span class="cx"> GradientImage(PassRefPtr<Gradient>, const FloatSize&);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsGraphicsContextcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/GraphicsContext.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/GraphicsContext.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/GraphicsContext.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -315,7 +315,7 @@
</span><span class="cx"> if (paintingDisabled())
</span><span class="cx"> return 0;
</span><span class="cx">
</span><del>- return font.drawText(this, run, point, from, to);
</del><ins>+ return font.drawText(*this, run, point, from, to);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void GraphicsContext::drawGlyphs(const FontCascade& fontCascade, const Font& font, const GlyphBuffer& buffer, int from, int numGlyphs, const FloatPoint& point)
</span><span class="lines">@@ -323,7 +323,7 @@
</span><span class="cx"> if (paintingDisabled())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- fontCascade.drawGlyphs(this, &font, buffer, from, numGlyphs, point);
</del><ins>+ fontCascade.drawGlyphs(*this, font, buffer, from, numGlyphs, point);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void GraphicsContext::drawEmphasisMarks(const FontCascade& font, const TextRun& run, const AtomicString& mark, const FloatPoint& point, int from, int to)
</span><span class="lines">@@ -331,7 +331,7 @@
</span><span class="cx"> if (paintingDisabled())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- font.drawEmphasisMarks(this, run, mark, point, from, to);
</del><ins>+ font.drawEmphasisMarks(*this, run, mark, point, from, to);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void GraphicsContext::drawBidiText(const FontCascade& font, const TextRun& run, const FloatPoint& point, FontCascade::CustomFontNotReadyAction customFontNotReadyAction)
</span><span class="lines">@@ -359,7 +359,7 @@
</span><span class="cx"> subrun.setDirection(isRTL ? RTL : LTR);
</span><span class="cx"> subrun.setDirectionalOverride(bidiRun->dirOverride(false));
</span><span class="cx">
</span><del>- float width = font.drawText(this, subrun, currPoint, 0, -1, customFontNotReadyAction);
</del><ins>+ float width = font.drawText(*this, subrun, currPoint, 0, -1, customFontNotReadyAction);
</ins><span class="cx"> currPoint.move(width, 0);
</span><span class="cx">
</span><span class="cx"> bidiRun = bidiRun->next();
</span><span class="lines">@@ -396,7 +396,7 @@
</span><span class="cx">
</span><span class="cx"> // FIXME (49002): Should be InterpolationLow
</span><span class="cx"> InterpolationQualityMaintainer interpolationQualityForThisScope(*this, imagePaintingOptions.m_useLowQualityScale ? InterpolationNone : imageInterpolationQuality());
</span><del>- image->draw(this, destination, source, colorSpace, imagePaintingOptions.m_compositeOperator, imagePaintingOptions.m_blendMode, imagePaintingOptions.m_orientationDescription);
</del><ins>+ image->draw(*this, destination, source, colorSpace, imagePaintingOptions.m_compositeOperator, imagePaintingOptions.m_blendMode, imagePaintingOptions.m_orientationDescription);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void GraphicsContext::drawTiledImage(Image* image, ColorSpace colorSpace, const FloatRect& destination, const FloatPoint& source, const FloatSize& tileSize,
</span><span class="lines">@@ -406,7 +406,7 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> InterpolationQualityMaintainer interpolationQualityForThisScope(*this, imagePaintingOptions.m_useLowQualityScale ? InterpolationLow : imageInterpolationQuality());
</span><del>- image->drawTiled(this, destination, source, tileSize, colorSpace, imagePaintingOptions.m_compositeOperator, imagePaintingOptions.m_blendMode);
</del><ins>+ image->drawTiled(*this, destination, source, tileSize, colorSpace, imagePaintingOptions.m_compositeOperator, imagePaintingOptions.m_blendMode);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void GraphicsContext::drawTiledImage(Image* image, ColorSpace colorSpace, const FloatRect& destination, const FloatRect& source, const FloatSize& tileScaleFactor,
</span><span class="lines">@@ -422,7 +422,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> InterpolationQualityMaintainer interpolationQualityForThisScope(*this, imagePaintingOptions.m_useLowQualityScale ? InterpolationLow : imageInterpolationQuality());
</span><del>- image->drawTiled(this, destination, source, tileScaleFactor, hRule, vRule, colorSpace, imagePaintingOptions.m_compositeOperator);
</del><ins>+ image->drawTiled(*this, destination, source, tileScaleFactor, hRule, vRule, colorSpace, imagePaintingOptions.m_compositeOperator);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void GraphicsContext::drawImageBuffer(ImageBuffer* image, ColorSpace colorSpace, const FloatPoint& destination, const ImagePaintingOptions& imagePaintingOptions)
</span><span class="lines">@@ -446,7 +446,7 @@
</span><span class="cx">
</span><span class="cx"> // FIXME (49002): Should be InterpolationLow
</span><span class="cx"> InterpolationQualityMaintainer interpolationQualityForThisScope(*this, imagePaintingOptions.m_useLowQualityScale ? InterpolationNone : imageInterpolationQuality());
</span><del>- image->draw(this, colorSpace, destination, source, imagePaintingOptions.m_compositeOperator, imagePaintingOptions.m_blendMode, imagePaintingOptions.m_useLowQualityScale);
</del><ins>+ image->draw(*this, colorSpace, destination, source, imagePaintingOptions.m_compositeOperator, imagePaintingOptions.m_blendMode, imagePaintingOptions.m_useLowQualityScale);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void GraphicsContext::clip(const IntRect& rect)
</span><span class="lines">@@ -483,7 +483,7 @@
</span><span class="cx"> {
</span><span class="cx"> if (paintingDisabled())
</span><span class="cx"> return;
</span><del>- buffer->clip(this, rect);
</del><ins>+ buffer->clip(*this, rect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> #if !USE(CG) && !USE(CAIRO)
</span><span class="lines">@@ -640,20 +640,20 @@
</span><span class="cx"> AffineTransform transform = getCTM(DefinitelyIncludeDeviceScale);
</span><span class="cx"> FloatSize scaledSize(static_cast<int>(ceil(size.width() * transform.xScale())), static_cast<int>(ceil(size.height() * transform.yScale())));
</span><span class="cx">
</span><del>- std::unique_ptr<ImageBuffer> buffer = ImageBuffer::createCompatibleBuffer(scaledSize, 1, ColorSpaceDeviceRGB, this, hasAlpha);
</del><ins>+ std::unique_ptr<ImageBuffer> buffer = ImageBuffer::createCompatibleBuffer(scaledSize, 1, ColorSpaceDeviceRGB, *this, hasAlpha);
</ins><span class="cx"> if (!buffer)
</span><span class="cx"> return nullptr;
</span><span class="cx">
</span><del>- buffer->context()->scale(FloatSize(scaledSize.width() / size.width(), scaledSize.height() / size.height()));
</del><ins>+ buffer->context().scale(FloatSize(scaledSize.width() / size.width(), scaledSize.height() / size.height()));
</ins><span class="cx">
</span><span class="cx"> return buffer;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool GraphicsContext::isCompatibleWithBuffer(ImageBuffer* buffer) const
</span><span class="cx"> {
</span><del>- GraphicsContext* bufferContext = buffer->context();
</del><ins>+ GraphicsContext& bufferContext = buffer->context();
</ins><span class="cx">
</span><del>- return scalesMatch(getCTM(), bufferContext->getCTM()) && isAcceleratedContext() == bufferContext->isAcceleratedContext();
</del><ins>+ return scalesMatch(getCTM(), bufferContext.getCTM()) && isAcceleratedContext() == bufferContext.isAcceleratedContext();
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> #if !USE(CG)
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsGraphicsContexth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/GraphicsContext.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/GraphicsContext.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/GraphicsContext.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -457,7 +457,7 @@
</span><span class="cx"> AffineTransform& affineTransform();
</span><span class="cx"> void resetAffineTransform();
</span><span class="cx"> void fillRect(const FloatRect&, const Gradient*);
</span><del>- void drawText(const Font*, const GlyphBuffer&, int from, int numGlyphs, const FloatPoint&);
</del><ins>+ void drawText(const Font&, const GlyphBuffer&, int from, int numGlyphs, const FloatPoint&);
</ins><span class="cx"> void drawFrameControl(const IntRect& rect, unsigned type, unsigned state);
</span><span class="cx"> void drawFocusRect(const IntRect& rect);
</span><span class="cx"> void paintTextField(const IntRect& rect, unsigned state);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsGraphicsContext3Dh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/GraphicsContext3D.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/GraphicsContext3D.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/GraphicsContext3D.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1128,8 +1128,7 @@
</span><span class="cx"> void paintToCanvas(const unsigned char* imagePixels, int imageWidth, int imageHeight,
</span><span class="cx"> int canvasWidth, int canvasHeight, PlatformContextCairo* context);
</span><span class="cx"> #elif USE(CG)
</span><del>- void paintToCanvas(const unsigned char* imagePixels, int imageWidth, int imageHeight,
- int canvasWidth, int canvasHeight, GraphicsContext*);
</del><ins>+ void paintToCanvas(const unsigned char* imagePixels, int imageWidth, int imageHeight, int canvasWidth, int canvasHeight, GraphicsContext&);
</ins><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> void markContextChanged();
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsImagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/Image.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/Image.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/Image.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -78,23 +78,23 @@
</span><span class="cx"> return dataChanged(allDataReceived);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void Image::fillWithSolidColor(GraphicsContext* ctxt, const FloatRect& dstRect, const Color& color, ColorSpace styleColorSpace, CompositeOperator op)
</del><ins>+void Image::fillWithSolidColor(GraphicsContext& ctxt, const FloatRect& dstRect, const Color& color, ColorSpace styleColorSpace, CompositeOperator op)
</ins><span class="cx"> {
</span><span class="cx"> if (!color.alpha())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- CompositeOperator previousOperator = ctxt->compositeOperation();
- ctxt->setCompositeOperation(!color.hasAlpha() && op == CompositeSourceOver ? CompositeCopy : op);
- ctxt->fillRect(dstRect, color, styleColorSpace);
- ctxt->setCompositeOperation(previousOperator);
</del><ins>+ CompositeOperator previousOperator = ctxt.compositeOperation();
+ ctxt.setCompositeOperation(!color.hasAlpha() && op == CompositeSourceOver ? CompositeCopy : op);
+ ctxt.fillRect(dstRect, color, styleColorSpace);
+ ctxt.setCompositeOperation(previousOperator);
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void Image::draw(GraphicsContext* ctx, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator op, BlendMode blendMode, ImageOrientationDescription description)
</del><ins>+void Image::draw(GraphicsContext& ctx, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator op, BlendMode blendMode, ImageOrientationDescription description)
</ins><span class="cx"> {
</span><span class="cx"> draw(ctx, dstRect, srcRect, styleColorSpace, op, blendMode, description);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void Image::drawTiled(GraphicsContext* ctxt, const FloatRect& destRect, const FloatPoint& srcPoint, const FloatSize& scaledTileSize, ColorSpace styleColorSpace, CompositeOperator op, BlendMode blendMode)
</del><ins>+void Image::drawTiled(GraphicsContext& ctxt, const FloatRect& destRect, const FloatPoint& srcPoint, const FloatSize& scaledTileSize, ColorSpace styleColorSpace, CompositeOperator op, BlendMode blendMode)
</ins><span class="cx"> {
</span><span class="cx"> if (mayFillWithSolidColor()) {
</span><span class="cx"> fillWithSolidColor(ctxt, destRect, solidColor(), styleColorSpace, op);
</span><span class="lines">@@ -123,7 +123,7 @@
</span><span class="cx"> oneTileRect.setSize(scaledTileSize);
</span><span class="cx">
</span><span class="cx"> // Check and see if a single draw of the image can cover the entire area we are supposed to tile.
</span><del>- if (oneTileRect.contains(destRect) && !ctxt->drawLuminanceMask()) {
</del><ins>+ if (oneTileRect.contains(destRect) && !ctxt.drawLuminanceMask()) {
</ins><span class="cx"> FloatRect visibleSrcRect;
</span><span class="cx"> visibleSrcRect.setX((destRect.x() - oneTileRect.x()) / scale.width());
</span><span class="cx"> visibleSrcRect.setY((destRect.y() - oneTileRect.y()) / scale.height());
</span><span class="lines">@@ -135,7 +135,7 @@
</span><span class="cx">
</span><span class="cx"> #if PLATFORM(IOS)
</span><span class="cx"> // When using accelerated drawing on iOS, it's faster to stretch an image than to tile it.
</span><del>- if (ctxt->isAcceleratedContext()) {
</del><ins>+ if (ctxt.isAcceleratedContext()) {
</ins><span class="cx"> if (size().width() == 1 && intersection(oneTileRect, destRect).height() == destRect.height()) {
</span><span class="cx"> FloatRect visibleSrcRect;
</span><span class="cx"> visibleSrcRect.setX(0);
</span><span class="lines">@@ -166,12 +166,12 @@
</span><span class="cx"> #else
</span><span class="cx"> const float maxPatternTilePixels = 2048 * 2048;
</span><span class="cx"> #endif
</span><del>- FloatRect transformedTileSize = ctxt->getCTM().mapRect(FloatRect(FloatPoint(), scaledTileSize));
</del><ins>+ FloatRect transformedTileSize = ctxt.getCTM().mapRect(FloatRect(FloatPoint(), scaledTileSize));
</ins><span class="cx"> float transformedTileSizePixels = transformedTileSize.width() * transformedTileSize.height();
</span><span class="cx"> FloatRect currentTileRect = oneTileRect;
</span><span class="cx"> if (transformedTileSizePixels > maxPatternTilePixels) {
</span><del>- GraphicsContextStateSaver stateSaver(*ctxt);
- ctxt->clip(destRect);
</del><ins>+ GraphicsContextStateSaver stateSaver(ctxt);
+ ctxt.clip(destRect);
</ins><span class="cx">
</span><span class="cx"> currentTileRect.shiftYEdgeTo(destRect.y());
</span><span class="cx"> float toY = currentTileRect.y();
</span><span class="lines">@@ -205,7 +205,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // FIXME: Merge with the other drawTiled eventually, since we need a combination of both for some things.
</span><del>-void Image::drawTiled(GraphicsContext* ctxt, const FloatRect& dstRect, const FloatRect& srcRect,
</del><ins>+void Image::drawTiled(GraphicsContext& ctxt, const FloatRect& dstRect, const FloatRect& srcRect,
</ins><span class="cx"> const FloatSize& tileScaleFactor, TileRule hRule, TileRule vRule, ColorSpace styleColorSpace, CompositeOperator op)
</span><span class="cx"> {
</span><span class="cx"> if (mayFillWithSolidColor()) {
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsImageh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/Image.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/Image.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/Image.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -166,7 +166,7 @@
</span><span class="cx"> virtual Evas_Object* getEvasObject(Evas*) { return 0; }
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>- virtual void drawPattern(GraphicsContext*, const FloatRect& srcRect, const AffineTransform& patternTransform,
</del><ins>+ virtual void drawPattern(GraphicsContext&, const FloatRect& srcRect, const AffineTransform& patternTransform,
</ins><span class="cx"> const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator, const FloatRect& destRect, BlendMode = BlendModeNormal);
</span><span class="cx">
</span><span class="cx"> #if ENABLE(IMAGE_DECODER_DOWN_SAMPLING)
</span><span class="lines">@@ -185,16 +185,16 @@
</span><span class="cx"> protected:
</span><span class="cx"> Image(ImageObserver* = nullptr);
</span><span class="cx">
</span><del>- static void fillWithSolidColor(GraphicsContext*, const FloatRect& dstRect, const Color&, ColorSpace styleColorSpace, CompositeOperator);
</del><ins>+ static void fillWithSolidColor(GraphicsContext&, const FloatRect& dstRect, const Color&, ColorSpace styleColorSpace, CompositeOperator);
</ins><span class="cx">
</span><span class="cx"> // The ColorSpace parameter will only be used for untagged images.
</span><span class="cx"> #if PLATFORM(WIN)
</span><del>- virtual void drawFrameMatchingSourceSize(GraphicsContext*, const FloatRect& dstRect, const IntSize& srcSize, ColorSpace styleColorSpace, CompositeOperator) { }
</del><ins>+ virtual void drawFrameMatchingSourceSize(GraphicsContext&, const FloatRect& dstRect, const IntSize& srcSize, ColorSpace styleColorSpace, CompositeOperator) { }
</ins><span class="cx"> #endif
</span><del>- virtual void draw(GraphicsContext*, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription);
- void drawTiled(GraphicsContext*, const FloatRect& dstRect, const FloatPoint& srcPoint, const FloatSize& tileSize, ColorSpace styleColorSpace,
</del><ins>+ virtual void draw(GraphicsContext&, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription);
+ void drawTiled(GraphicsContext&, const FloatRect& dstRect, const FloatPoint& srcPoint, const FloatSize& tileSize, ColorSpace styleColorSpace,
</ins><span class="cx"> CompositeOperator , BlendMode);
</span><del>- void drawTiled(GraphicsContext*, const FloatRect& dstRect, const FloatRect& srcRect, const FloatSize& tileScaleFactor, TileRule hRule, TileRule vRule, ColorSpace styleColorSpace, CompositeOperator);
</del><ins>+ void drawTiled(GraphicsContext&, const FloatRect& dstRect, const FloatRect& srcRect, const FloatSize& tileScaleFactor, TileRule hRule, TileRule vRule, ColorSpace styleColorSpace, CompositeOperator);
</ins><span class="cx">
</span><span class="cx"> // Supporting tiled drawing
</span><span class="cx"> virtual bool mayFillWithSolidColor() { return false; }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsImageBuffercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/ImageBuffer.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/ImageBuffer.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/ImageBuffer.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -158,9 +158,9 @@
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-std::unique_ptr<ImageBuffer> ImageBuffer::createCompatibleBuffer(const FloatSize& size, float resolutionScale, ColorSpace colorSpace, const GraphicsContext* context, bool)
</del><ins>+std::unique_ptr<ImageBuffer> ImageBuffer::createCompatibleBuffer(const FloatSize& size, float resolutionScale, ColorSpace colorSpace, const GraphicsContext& context, bool)
</ins><span class="cx"> {
</span><del>- return create(size, resolutionScale, colorSpace, context->isAcceleratedContext() ? Accelerated : Unaccelerated);
</del><ins>+ return create(size, resolutionScale, colorSpace, context.isAcceleratedContext() ? Accelerated : Unaccelerated);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsImageBufferh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/ImageBuffer.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/ImageBuffer.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/ImageBuffer.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -84,7 +84,7 @@
</span><span class="cx"> return buffer;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- static std::unique_ptr<ImageBuffer> createCompatibleBuffer(const FloatSize&, float resolutionScale, ColorSpace, const GraphicsContext*, bool hasAlpha);
</del><ins>+ static std::unique_ptr<ImageBuffer> createCompatibleBuffer(const FloatSize&, float resolutionScale, ColorSpace, const GraphicsContext&, bool hasAlpha);
</ins><span class="cx">
</span><span class="cx"> WEBCORE_EXPORT ~ImageBuffer();
</span><span class="cx">
</span><span class="lines">@@ -94,7 +94,7 @@
</span><span class="cx">
</span><span class="cx"> float resolutionScale() const { return m_resolutionScale; }
</span><span class="cx">
</span><del>- WEBCORE_EXPORT GraphicsContext* context() const;
</del><ins>+ WEBCORE_EXPORT GraphicsContext& context() const;
</ins><span class="cx">
</span><span class="cx"> WEBCORE_EXPORT RefPtr<Image> copyImage(BackingStoreCopy = CopyBackingStore, ScaleBehavior = Scaled) const;
</span><span class="cx"> // Give hints on the faster copyImage Mode, return DontCopyBackingStore if it supports the DontCopyBackingStore behavior
</span><span class="lines">@@ -141,10 +141,10 @@
</span><span class="cx"> RetainPtr<CGImageRef> copyNativeImage(BackingStoreCopy = CopyBackingStore) const;
</span><span class="cx"> void flushContext() const;
</span><span class="cx"> #endif
</span><del>- void clip(GraphicsContext*, const FloatRect&) const;
</del><ins>+ void clip(GraphicsContext&, const FloatRect&) const;
</ins><span class="cx">
</span><del>- void draw(GraphicsContext*, ColorSpace, const FloatRect& destRect, const FloatRect& srcRect = FloatRect(0, 0, -1, -1), CompositeOperator = CompositeSourceOver, BlendMode = BlendModeNormal, bool useLowQualityScale = false);
- void drawPattern(GraphicsContext*, const FloatRect& srcRect, const AffineTransform& patternTransform, const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator, const FloatRect& destRect, BlendMode = BlendModeNormal);
</del><ins>+ void draw(GraphicsContext&, ColorSpace, const FloatRect& destRect, const FloatRect& srcRect = FloatRect(0, 0, -1, -1), CompositeOperator = CompositeSourceOver, BlendMode = BlendModeNormal, bool useLowQualityScale = false);
+ void drawPattern(GraphicsContext&, const FloatRect& srcRect, const AffineTransform& patternTransform, const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator, const FloatRect& destRect, BlendMode = BlendModeNormal);
</ins><span class="cx">
</span><span class="cx"> inline void genericConvertToLuminanceMask();
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsMediaPlayercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/MediaPlayer.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/MediaPlayer.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/MediaPlayer.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -138,7 +138,7 @@
</span><span class="cx">
</span><span class="cx"> void setSize(const IntSize&) override { }
</span><span class="cx">
</span><del>- void paint(GraphicsContext*, const FloatRect&) override { }
</del><ins>+ void paint(GraphicsContext&, const FloatRect&) override { }
</ins><span class="cx">
</span><span class="cx"> bool canLoadPoster() const override { return false; }
</span><span class="cx"> void setPoster(const String&) override { }
</span><span class="lines">@@ -779,12 +779,12 @@
</span><span class="cx"> m_private->setPreload(preload);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MediaPlayer::paint(GraphicsContext* p, const FloatRect& r)
</del><ins>+void MediaPlayer::paint(GraphicsContext& p, const FloatRect& r)
</ins><span class="cx"> {
</span><span class="cx"> m_private->paint(p, r);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MediaPlayer::paintCurrentFrameInContext(GraphicsContext* p, const FloatRect& r)
</del><ins>+void MediaPlayer::paintCurrentFrameInContext(GraphicsContext& p, const FloatRect& r)
</ins><span class="cx"> {
</span><span class="cx"> m_private->paintCurrentFrameInContext(p, r);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsMediaPlayerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/MediaPlayer.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/MediaPlayer.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/MediaPlayer.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -418,8 +418,8 @@
</span><span class="cx"> bool autoplay() const;
</span><span class="cx"> void setAutoplay(bool);
</span><span class="cx">
</span><del>- void paint(GraphicsContext*, const FloatRect&);
- void paintCurrentFrameInContext(GraphicsContext*, const FloatRect&);
</del><ins>+ void paint(GraphicsContext&, const FloatRect&);
+ void paintCurrentFrameInContext(GraphicsContext&, const FloatRect&);
</ins><span class="cx">
</span><span class="cx"> // copyVideoTextureToPlatformTexture() is used to do the GPU-GPU textures copy without a readback to system memory.
</span><span class="cx"> // The first five parameters denote the corresponding GraphicsContext, destination texture, requested level, requested type and the required internalFormat for destination texture.
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsMediaPlayerPrivateh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/MediaPlayerPrivate.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/MediaPlayerPrivate.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/MediaPlayerPrivate.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -144,9 +144,9 @@
</span><span class="cx">
</span><span class="cx"> virtual void setSize(const IntSize&) = 0;
</span><span class="cx">
</span><del>- virtual void paint(GraphicsContext*, const FloatRect&) = 0;
</del><ins>+ virtual void paint(GraphicsContext&, const FloatRect&) = 0;
</ins><span class="cx">
</span><del>- virtual void paintCurrentFrameInContext(GraphicsContext* c, const FloatRect& r) { paint(c, r); }
</del><ins>+ virtual void paintCurrentFrameInContext(GraphicsContext& c, const FloatRect& r) { paint(c, r); }
</ins><span class="cx"> virtual bool copyVideoTextureToPlatformTexture(GraphicsContext3D*, Platform3DObject, GC3Dint, GC3Denum, GC3Denum, bool, bool) { return false; }
</span><span class="cx"> virtual PassNativeImagePtr nativeImageForCurrentTime() { return nullptr; }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsNamedImageGeneratedImagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/NamedImageGeneratedImage.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/NamedImageGeneratedImage.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/NamedImageGeneratedImage.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -39,16 +39,16 @@
</span><span class="cx"> setContainerSize(size);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void NamedImageGeneratedImage::draw(GraphicsContext* context, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace, CompositeOperator compositeOp, BlendMode blendMode, ImageOrientationDescription)
</del><ins>+void NamedImageGeneratedImage::draw(GraphicsContext& context, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace, CompositeOperator compositeOp, BlendMode blendMode, ImageOrientationDescription)
</ins><span class="cx"> {
</span><span class="cx"> #if USE(NEW_THEME)
</span><del>- GraphicsContextStateSaver stateSaver(*context);
- context->setCompositeOperation(compositeOp, blendMode);
- context->clip(dstRect);
- context->translate(dstRect.x(), dstRect.y());
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
+ context.setCompositeOperation(compositeOp, blendMode);
+ context.clip(dstRect);
+ context.translate(dstRect.x(), dstRect.y());
</ins><span class="cx"> if (dstRect.size() != srcRect.size())
</span><del>- context->scale(FloatSize(dstRect.width() / srcRect.width(), dstRect.height() / srcRect.height()));
- context->translate(-srcRect.x(), -srcRect.y());
</del><ins>+ context.scale(FloatSize(dstRect.width() / srcRect.width(), dstRect.height() / srcRect.height()));
+ context.translate(-srcRect.x(), -srcRect.y());
</ins><span class="cx">
</span><span class="cx"> platformTheme()->drawNamedImage(m_name, context, dstRect);
</span><span class="cx"> #else
</span><span class="lines">@@ -60,15 +60,15 @@
</span><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void NamedImageGeneratedImage::drawPattern(GraphicsContext* context, const FloatRect& srcRect, const AffineTransform& patternTransform, const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator compositeOp, const FloatRect& dstRect, BlendMode blendMode)
</del><ins>+void NamedImageGeneratedImage::drawPattern(GraphicsContext& context, const FloatRect& srcRect, const AffineTransform& patternTransform, const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator compositeOp, const FloatRect& dstRect, BlendMode blendMode)
</ins><span class="cx"> {
</span><span class="cx"> #if USE(NEW_THEME)
</span><span class="cx"> // std::unique_ptr<ImageBuffer> imageBuffer = ImageBuffer::create(size(), 1, ColorSpaceDeviceRGB, context->isAcceleratedContext() ? Accelerated : Unaccelerated);
</span><del>- std::unique_ptr<ImageBuffer> imageBuffer = context->createCompatibleBuffer(size(), true);
</del><ins>+ std::unique_ptr<ImageBuffer> imageBuffer = context.createCompatibleBuffer(size(), true);
</ins><span class="cx"> if (!imageBuffer)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- GraphicsContext* graphicsContext = imageBuffer->context();
</del><ins>+ GraphicsContext& graphicsContext = imageBuffer->context();
</ins><span class="cx"> platformTheme()->drawNamedImage(m_name, graphicsContext, FloatRect(0, 0, size().width(), size().height()));
</span><span class="cx">
</span><span class="cx"> // Tile the image buffer into the context.
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsNamedImageGeneratedImageh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/NamedImageGeneratedImage.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/NamedImageGeneratedImage.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/NamedImageGeneratedImage.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -41,8 +41,8 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> protected:
</span><del>- virtual void draw(GraphicsContext*, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override;
- virtual void drawPattern(GraphicsContext*, const FloatRect& srcRect, const AffineTransform& patternTransform, const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator, const FloatRect& dstRect, BlendMode) override;
</del><ins>+ virtual void draw(GraphicsContext&, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override;
+ virtual void drawPattern(GraphicsContext&, const FloatRect& srcRect, const AffineTransform& patternTransform, const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator, const FloatRect& dstRect, BlendMode) override;
</ins><span class="cx">
</span><span class="cx"> NamedImageGeneratedImage(String name, const FloatSize&);
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsShadowBlurcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/ShadowBlur.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/ShadowBlur.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/ShadowBlur.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -368,12 +368,12 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ShadowBlur::adjustBlurRadius(GraphicsContext* context)
</del><ins>+void ShadowBlur::adjustBlurRadius(GraphicsContext& context)
</ins><span class="cx"> {
</span><span class="cx"> if (!m_shadowsIgnoreTransforms)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- AffineTransform transform = context->getCTM();
</del><ins>+ AffineTransform transform = context.getCTM();
</ins><span class="cx"> m_blurRadius.scale(1 / static_cast<float>(transform.xScale()), 1 / static_cast<float>(transform.yScale()));
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -391,7 +391,7 @@
</span><span class="cx"> return edgeSize;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-IntRect ShadowBlur::calculateLayerBoundingRect(GraphicsContext* context, const FloatRect& shadowedRect, const IntRect& clipRect)
</del><ins>+IntRect ShadowBlur::calculateLayerBoundingRect(GraphicsContext& context, const FloatRect& shadowedRect, const IntRect& clipRect)
</ins><span class="cx"> {
</span><span class="cx"> IntSize edgeSize = blurredEdgeSize();
</span><span class="cx">
</span><span class="lines">@@ -399,7 +399,7 @@
</span><span class="cx"> FloatRect layerRect;
</span><span class="cx"> IntSize inflation;
</span><span class="cx">
</span><del>- const AffineTransform transform = context->getCTM();
</del><ins>+ const AffineTransform transform = context.getCTM();
</ins><span class="cx"> if (m_shadowsIgnoreTransforms && !transform.isIdentity()) {
</span><span class="cx"> FloatQuad transformedPolygon = transform.mapQuad(FloatQuad(shadowedRect));
</span><span class="cx"> transformedPolygon.move(m_offset);
</span><span class="lines">@@ -457,24 +457,24 @@
</span><span class="cx"> return enclosingIntRect(layerRect);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ShadowBlur::drawShadowBuffer(GraphicsContext* graphicsContext)
</del><ins>+void ShadowBlur::drawShadowBuffer(GraphicsContext& graphicsContext)
</ins><span class="cx"> {
</span><span class="cx"> if (!m_layerImage)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*graphicsContext);
</del><ins>+ GraphicsContextStateSaver stateSaver(graphicsContext);
</ins><span class="cx">
</span><span class="cx"> IntSize bufferSize = m_layerImage->internalSize();
</span><span class="cx"> if (bufferSize != m_layerSize) {
</span><span class="cx"> // The rect passed to clipToImageBuffer() has to be the size of the entire buffer,
</span><span class="cx"> // but we may not have cleared it all, so clip to the filled part first.
</span><del>- graphicsContext->clip(FloatRect(m_layerOrigin, m_layerSize));
</del><ins>+ graphicsContext.clip(FloatRect(m_layerOrigin, m_layerSize));
</ins><span class="cx"> }
</span><del>- graphicsContext->clipToImageBuffer(m_layerImage, FloatRect(m_layerOrigin, bufferSize));
- graphicsContext->setFillColor(m_color, m_colorSpace);
</del><ins>+ graphicsContext.clipToImageBuffer(m_layerImage, FloatRect(m_layerOrigin, bufferSize));
+ graphicsContext.setFillColor(m_color, m_colorSpace);
</ins><span class="cx">
</span><del>- graphicsContext->clearShadow();
- graphicsContext->fillRect(FloatRect(m_layerOrigin, m_sourceRect.size()));
</del><ins>+ graphicsContext.clearShadow();
+ graphicsContext.fillRect(FloatRect(m_layerOrigin, m_sourceRect.size()));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> static void computeSliceSizesFromRadii(const IntSize& twiceRadius, const FloatRoundedRect::Radii& radii, int& leftSlice, int& rightSlice, int& topSlice, int& bottomSlice)
</span><span class="lines">@@ -504,9 +504,9 @@
</span><span class="cx"> templateSideLength + topSlice + bottomSlice);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ShadowBlur::drawRectShadow(GraphicsContext* graphicsContext, const FloatRoundedRect& shadowedRect)
</del><ins>+void ShadowBlur::drawRectShadow(GraphicsContext& graphicsContext, const FloatRoundedRect& shadowedRect)
</ins><span class="cx"> {
</span><del>- IntRect layerRect = calculateLayerBoundingRect(graphicsContext, shadowedRect.rect(), graphicsContext->clipBounds());
</del><ins>+ IntRect layerRect = calculateLayerBoundingRect(graphicsContext, shadowedRect.rect(), graphicsContext.clipBounds());
</ins><span class="cx"> if (layerRect.isEmpty())
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="lines">@@ -514,7 +514,7 @@
</span><span class="cx">
</span><span class="cx"> // drawRectShadowWithTiling does not work with rotations.
</span><span class="cx"> // https://bugs.webkit.org/show_bug.cgi?id=45042
</span><del>- if (!graphicsContext->getCTM().preservesAxisAlignment() || m_type != BlurShadow) {
</del><ins>+ if (!graphicsContext.getCTM().preservesAxisAlignment() || m_type != BlurShadow) {
</ins><span class="cx"> drawRectShadowWithoutTiling(graphicsContext, shadowedRect, layerRect);
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="lines">@@ -532,9 +532,9 @@
</span><span class="cx"> drawRectShadowWithTiling(graphicsContext, shadowedRect, templateSize, edgeSize);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ShadowBlur::drawInsetShadow(GraphicsContext* graphicsContext, const FloatRect& rect, const FloatRoundedRect& holeRect)
</del><ins>+void ShadowBlur::drawInsetShadow(GraphicsContext& graphicsContext, const FloatRect& rect, const FloatRoundedRect& holeRect)
</ins><span class="cx"> {
</span><del>- IntRect layerRect = calculateLayerBoundingRect(graphicsContext, rect, graphicsContext->clipBounds());
</del><ins>+ IntRect layerRect = calculateLayerBoundingRect(graphicsContext, rect, graphicsContext.clipBounds());
</ins><span class="cx"> if (layerRect.isEmpty())
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="lines">@@ -542,7 +542,7 @@
</span><span class="cx">
</span><span class="cx"> // drawInsetShadowWithTiling does not work with rotations.
</span><span class="cx"> // https://bugs.webkit.org/show_bug.cgi?id=45042
</span><del>- if (!graphicsContext->getCTM().preservesAxisAlignment() || m_type != BlurShadow) {
</del><ins>+ if (!graphicsContext.getCTM().preservesAxisAlignment() || m_type != BlurShadow) {
</ins><span class="cx"> drawInsetShadowWithoutTiling(graphicsContext, rect, holeRect, layerRect);
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="lines">@@ -560,7 +560,7 @@
</span><span class="cx"> drawInsetShadowWithTiling(graphicsContext, rect, holeRect, templateSize, edgeSize);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ShadowBlur::drawRectShadowWithoutTiling(GraphicsContext* graphicsContext, const FloatRoundedRect& shadowedRect, const IntRect& layerRect)
</del><ins>+void ShadowBlur::drawRectShadowWithoutTiling(GraphicsContext& graphicsContext, const FloatRoundedRect& shadowedRect, const IntRect& layerRect)
</ins><span class="cx"> {
</span><span class="cx"> m_layerImage = ScratchBuffer::singleton().getScratchBuffer(layerRect.size());
</span><span class="cx"> if (!m_layerImage)
</span><span class="lines">@@ -572,19 +572,19 @@
</span><span class="cx"> // Only redraw in the scratch buffer if its cached contents don't match our needs
</span><span class="cx"> bool redrawNeeded = ScratchBuffer::singleton().setCachedShadowValues(m_blurRadius, Color::black, ColorSpaceDeviceRGB, bufferRelativeShadowedRect, shadowedRect.radii(), m_layerSize);
</span><span class="cx"> if (redrawNeeded) {
</span><del>- GraphicsContext* shadowContext = m_layerImage->context();
- GraphicsContextStateSaver stateSaver(*shadowContext);
</del><ins>+ GraphicsContext& shadowContext = m_layerImage->context();
+ GraphicsContextStateSaver stateSaver(shadowContext);
</ins><span class="cx">
</span><span class="cx"> // Add a pixel to avoid later edge aliasing when rotated.
</span><del>- shadowContext->clearRect(FloatRect(0, 0, m_layerSize.width() + 1, m_layerSize.height() + 1));
- shadowContext->translate(m_layerContextTranslation);
- shadowContext->setFillColor(Color::black, ColorSpaceDeviceRGB);
</del><ins>+ shadowContext.clearRect(FloatRect(0, 0, m_layerSize.width() + 1, m_layerSize.height() + 1));
+ shadowContext.translate(m_layerContextTranslation);
+ shadowContext.setFillColor(Color::black, ColorSpaceDeviceRGB);
</ins><span class="cx"> if (shadowedRect.radii().isZero())
</span><del>- shadowContext->fillRect(shadowedRect.rect());
</del><ins>+ shadowContext.fillRect(shadowedRect.rect());
</ins><span class="cx"> else {
</span><span class="cx"> Path path;
</span><span class="cx"> path.addRoundedRect(shadowedRect);
</span><del>- shadowContext->fillPath(path);
</del><ins>+ shadowContext.fillPath(path);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> blurShadowBuffer(expandedIntSize(m_layerSize));
</span><span class="lines">@@ -595,7 +595,7 @@
</span><span class="cx"> ScratchBuffer::singleton().scheduleScratchBufferPurge();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ShadowBlur::drawInsetShadowWithoutTiling(GraphicsContext* graphicsContext, const FloatRect& rect, const FloatRoundedRect& holeRect, const IntRect& layerRect)
</del><ins>+void ShadowBlur::drawInsetShadowWithoutTiling(GraphicsContext& graphicsContext, const FloatRect& rect, const FloatRoundedRect& holeRect, const IntRect& layerRect)
</ins><span class="cx"> {
</span><span class="cx"> m_layerImage = ScratchBuffer::singleton().getScratchBuffer(layerRect.size());
</span><span class="cx"> if (!m_layerImage)
</span><span class="lines">@@ -610,12 +610,12 @@
</span><span class="cx"> // Only redraw in the scratch buffer if its cached contents don't match our needs
</span><span class="cx"> bool redrawNeeded = ScratchBuffer::singleton().setCachedInsetShadowValues(m_blurRadius, Color::black, ColorSpaceDeviceRGB, bufferRelativeRect, bufferRelativeHoleRect, holeRect.radii());
</span><span class="cx"> if (redrawNeeded) {
</span><del>- GraphicsContext* shadowContext = m_layerImage->context();
- GraphicsContextStateSaver stateSaver(*shadowContext);
</del><ins>+ GraphicsContext& shadowContext = m_layerImage->context();
+ GraphicsContextStateSaver stateSaver(shadowContext);
</ins><span class="cx">
</span><span class="cx"> // Add a pixel to avoid later edge aliasing when rotated.
</span><del>- shadowContext->clearRect(FloatRect(0, 0, m_layerSize.width() + 1, m_layerSize.height() + 1));
- shadowContext->translate(m_layerContextTranslation);
</del><ins>+ shadowContext.clearRect(FloatRect(0, 0, m_layerSize.width() + 1, m_layerSize.height() + 1));
+ shadowContext.translate(m_layerContextTranslation);
</ins><span class="cx">
</span><span class="cx"> Path path;
</span><span class="cx"> path.addRect(rect);
</span><span class="lines">@@ -624,9 +624,9 @@
</span><span class="cx"> else
</span><span class="cx"> path.addRoundedRect(holeRect);
</span><span class="cx">
</span><del>- shadowContext->setFillRule(RULE_EVENODD);
- shadowContext->setFillColor(Color::black, ColorSpaceDeviceRGB);
- shadowContext->fillPath(path);
</del><ins>+ shadowContext.setFillRule(RULE_EVENODD);
+ shadowContext.setFillColor(Color::black, ColorSpaceDeviceRGB);
+ shadowContext.fillPath(path);
</ins><span class="cx">
</span><span class="cx"> blurShadowBuffer(expandedIntSize(m_layerSize));
</span><span class="cx"> }
</span><span class="lines">@@ -668,7 +668,7 @@
</span><span class="cx"> the shadow.
</span><span class="cx"> */
</span><span class="cx">
</span><del>-void ShadowBlur::drawInsetShadowWithTiling(GraphicsContext* graphicsContext, const FloatRect& rect, const FloatRoundedRect& holeRect, const IntSize& templateSize, const IntSize& edgeSize)
</del><ins>+void ShadowBlur::drawInsetShadowWithTiling(GraphicsContext& graphicsContext, const FloatRect& rect, const FloatRoundedRect& holeRect, const IntSize& templateSize, const IntSize& edgeSize)
</ins><span class="cx"> {
</span><span class="cx"> m_layerImage = ScratchBuffer::singleton().getScratchBuffer(templateSize);
</span><span class="cx"> if (!m_layerImage)
</span><span class="lines">@@ -682,11 +682,11 @@
</span><span class="cx"> bool redrawNeeded = ScratchBuffer::singleton().setCachedInsetShadowValues(m_blurRadius, m_color, m_colorSpace, templateBounds, templateHole, holeRect.radii());
</span><span class="cx"> if (redrawNeeded) {
</span><span class="cx"> // Draw shadow into a new ImageBuffer.
</span><del>- GraphicsContext* shadowContext = m_layerImage->context();
- GraphicsContextStateSaver shadowStateSaver(*shadowContext);
- shadowContext->clearRect(templateBounds);
- shadowContext->setFillRule(RULE_EVENODD);
- shadowContext->setFillColor(Color::black, ColorSpaceDeviceRGB);
</del><ins>+ GraphicsContext& shadowContext = m_layerImage->context();
+ GraphicsContextStateSaver shadowStateSaver(shadowContext);
+ shadowContext.clearRect(templateBounds);
+ shadowContext.setFillRule(RULE_EVENODD);
+ shadowContext.setFillColor(Color::black, ColorSpaceDeviceRGB);
</ins><span class="cx">
</span><span class="cx"> Path path;
</span><span class="cx"> path.addRect(templateBounds);
</span><span class="lines">@@ -695,13 +695,13 @@
</span><span class="cx"> else
</span><span class="cx"> path.addRoundedRect(FloatRoundedRect(templateHole, holeRect.radii()));
</span><span class="cx">
</span><del>- shadowContext->fillPath(path);
</del><ins>+ shadowContext.fillPath(path);
</ins><span class="cx">
</span><span class="cx"> blurAndColorShadowBuffer(templateSize);
</span><span class="cx"> }
</span><span class="cx"> FloatSize offset = m_offset;
</span><span class="cx"> if (shadowsIgnoreTransforms()) {
</span><del>- AffineTransform transform = graphicsContext->getCTM();
</del><ins>+ AffineTransform transform = graphicsContext.getCTM();
</ins><span class="cx"> offset.scale(1 / transform.xScale(), 1 / transform.yScale());
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -720,11 +720,11 @@
</span><span class="cx"> exteriorPath.addRect(destHoleBounds);
</span><span class="cx">
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver fillStateSaver(*graphicsContext);
- graphicsContext->setFillRule(RULE_EVENODD);
- graphicsContext->setFillColor(m_color, m_colorSpace);
- graphicsContext->clearShadow();
- graphicsContext->fillPath(exteriorPath);
</del><ins>+ GraphicsContextStateSaver fillStateSaver(graphicsContext);
+ graphicsContext.setFillRule(RULE_EVENODD);
+ graphicsContext.setFillColor(m_color, m_colorSpace);
+ graphicsContext.clearShadow();
+ graphicsContext.fillPath(exteriorPath);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> drawLayerPieces(graphicsContext, destHoleBounds, holeRect.radii(), edgeSize, templateSize, InnerShadow);
</span><span class="lines">@@ -733,7 +733,7 @@
</span><span class="cx"> ScratchBuffer::singleton().scheduleScratchBufferPurge();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ShadowBlur::drawRectShadowWithTiling(GraphicsContext* graphicsContext, const FloatRoundedRect& shadowedRect, const IntSize& templateSize, const IntSize& edgeSize)
</del><ins>+void ShadowBlur::drawRectShadowWithTiling(GraphicsContext& graphicsContext, const FloatRoundedRect& shadowedRect, const IntSize& templateSize, const IntSize& edgeSize)
</ins><span class="cx"> {
</span><span class="cx"> auto& scratchBuffer = ScratchBuffer::singleton();
</span><span class="cx"> m_layerImage = scratchBuffer.getScratchBuffer(templateSize);
</span><span class="lines">@@ -746,25 +746,25 @@
</span><span class="cx"> bool redrawNeeded = scratchBuffer.setCachedShadowValues(m_blurRadius, m_color, m_colorSpace, templateShadow, shadowedRect.radii(), m_layerSize);
</span><span class="cx"> if (redrawNeeded) {
</span><span class="cx"> // Draw shadow into the ImageBuffer.
</span><del>- GraphicsContext* shadowContext = m_layerImage->context();
- GraphicsContextStateSaver shadowStateSaver(*shadowContext);
</del><ins>+ GraphicsContext& shadowContext = m_layerImage->context();
+ GraphicsContextStateSaver shadowStateSaver(shadowContext);
</ins><span class="cx">
</span><del>- shadowContext->clearRect(FloatRect(0, 0, templateSize.width(), templateSize.height()));
- shadowContext->setFillColor(Color::black, ColorSpaceDeviceRGB);
</del><ins>+ shadowContext.clearRect(FloatRect(0, 0, templateSize.width(), templateSize.height()));
+ shadowContext.setFillColor(Color::black, ColorSpaceDeviceRGB);
</ins><span class="cx">
</span><span class="cx"> if (shadowedRect.radii().isZero())
</span><del>- shadowContext->fillRect(templateShadow);
</del><ins>+ shadowContext.fillRect(templateShadow);
</ins><span class="cx"> else {
</span><span class="cx"> Path path;
</span><span class="cx"> path.addRoundedRect(FloatRoundedRect(templateShadow, shadowedRect.radii()));
</span><del>- shadowContext->fillPath(path);
</del><ins>+ shadowContext.fillPath(path);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> blurAndColorShadowBuffer(templateSize);
</span><span class="cx"> }
</span><span class="cx"> FloatSize offset = m_offset;
</span><span class="cx"> if (shadowsIgnoreTransforms()) {
</span><del>- AffineTransform transform = graphicsContext->getCTM();
</del><ins>+ AffineTransform transform = graphicsContext.getCTM();
</ins><span class="cx"> offset.scale(1 / transform.xScale(), 1 / transform.yScale());
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -779,7 +779,7 @@
</span><span class="cx"> ScratchBuffer::singleton().scheduleScratchBufferPurge();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ShadowBlur::drawLayerPieces(GraphicsContext* graphicsContext, const FloatRect& shadowBounds, const FloatRoundedRect::Radii& radii, const IntSize& bufferPadding, const IntSize& templateSize, ShadowDirection direction)
</del><ins>+void ShadowBlur::drawLayerPieces(GraphicsContext& graphicsContext, const FloatRect& shadowBounds, const FloatRoundedRect::Radii& radii, const IntSize& bufferPadding, const IntSize& templateSize, ShadowDirection direction)
</ins><span class="cx"> {
</span><span class="cx"> const IntSize twiceRadius = IntSize(bufferPadding.width() * 2, bufferPadding.height() * 2);
</span><span class="cx">
</span><span class="lines">@@ -795,65 +795,65 @@
</span><span class="cx"> if (direction == OuterShadow) {
</span><span class="cx"> FloatRect shadowInterior(shadowBounds.x() + leftSlice, shadowBounds.y() + topSlice, centerWidth, centerHeight);
</span><span class="cx"> if (!shadowInterior.isEmpty()) {
</span><del>- GraphicsContextStateSaver stateSaver(*graphicsContext);
- graphicsContext->setFillColor(m_color, m_colorSpace);
- graphicsContext->clearShadow();
- graphicsContext->fillRect(shadowInterior);
</del><ins>+ GraphicsContextStateSaver stateSaver(graphicsContext);
+ graphicsContext.setFillColor(m_color, m_colorSpace);
+ graphicsContext.clearShadow();
+ graphicsContext.fillRect(shadowInterior);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*graphicsContext);
- graphicsContext->setFillColor(m_color, m_colorSpace);
- graphicsContext->clearShadow();
</del><ins>+ GraphicsContextStateSaver stateSaver(graphicsContext);
+ graphicsContext.setFillColor(m_color, m_colorSpace);
+ graphicsContext.clearShadow();
</ins><span class="cx">
</span><span class="cx"> // Note that drawing the ImageBuffer is faster than creating a Image and drawing that,
</span><span class="cx"> // because ImageBuffer::draw() knows that it doesn't have to copy the image bits.
</span><span class="cx"> FloatRect centerRect(shadowBounds.x() + leftSlice, shadowBounds.y() + topSlice, centerWidth, centerHeight);
</span><del>- centerRect = graphicsContext->roundToDevicePixels(centerRect);
</del><ins>+ centerRect = graphicsContext.roundToDevicePixels(centerRect);
</ins><span class="cx">
</span><span class="cx"> // Top side.
</span><span class="cx"> FloatRect tileRect = FloatRect(leftSlice, 0, templateSideLength, topSlice);
</span><span class="cx"> FloatRect destRect = FloatRect(centerRect.x(), centerRect.y() - topSlice, centerRect.width(), topSlice);
</span><del>- graphicsContext->drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</del><ins>+ graphicsContext.drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</ins><span class="cx">
</span><span class="cx"> // Draw the bottom side.
</span><span class="cx"> tileRect.setY(templateSize.height() - bottomSlice);
</span><span class="cx"> tileRect.setHeight(bottomSlice);
</span><span class="cx"> destRect.setY(centerRect.maxY());
</span><span class="cx"> destRect.setHeight(bottomSlice);
</span><del>- graphicsContext->drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</del><ins>+ graphicsContext.drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</ins><span class="cx">
</span><span class="cx"> // Left side.
</span><span class="cx"> tileRect = FloatRect(0, topSlice, leftSlice, templateSideLength);
</span><span class="cx"> destRect = FloatRect(centerRect.x() - leftSlice, centerRect.y(), leftSlice, centerRect.height());
</span><del>- graphicsContext->drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</del><ins>+ graphicsContext.drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</ins><span class="cx">
</span><span class="cx"> // Right side.
</span><span class="cx"> tileRect.setX(templateSize.width() - rightSlice);
</span><span class="cx"> tileRect.setWidth(rightSlice);
</span><span class="cx"> destRect.setX(centerRect.maxX());
</span><span class="cx"> destRect.setWidth(rightSlice);
</span><del>- graphicsContext->drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</del><ins>+ graphicsContext.drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</ins><span class="cx">
</span><span class="cx"> // Top left corner.
</span><span class="cx"> tileRect = FloatRect(0, 0, leftSlice, topSlice);
</span><span class="cx"> destRect = FloatRect(centerRect.x() - leftSlice, centerRect.y() - topSlice, leftSlice, topSlice);
</span><del>- graphicsContext->drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</del><ins>+ graphicsContext.drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</ins><span class="cx">
</span><span class="cx"> // Top right corner.
</span><span class="cx"> tileRect = FloatRect(templateSize.width() - rightSlice, 0, rightSlice, topSlice);
</span><span class="cx"> destRect = FloatRect(centerRect.maxX(), centerRect.y() - topSlice, rightSlice, topSlice);
</span><del>- graphicsContext->drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</del><ins>+ graphicsContext.drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</ins><span class="cx">
</span><span class="cx"> // Bottom right corner.
</span><span class="cx"> tileRect = FloatRect(templateSize.width() - rightSlice, templateSize.height() - bottomSlice, rightSlice, bottomSlice);
</span><span class="cx"> destRect = FloatRect(centerRect.maxX(), centerRect.maxY(), rightSlice, bottomSlice);
</span><del>- graphicsContext->drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</del><ins>+ graphicsContext.drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</ins><span class="cx">
</span><span class="cx"> // Bottom left corner.
</span><span class="cx"> tileRect = FloatRect(0, templateSize.height() - bottomSlice, leftSlice, bottomSlice);
</span><span class="cx"> destRect = FloatRect(centerRect.x() - leftSlice, centerRect.maxY(), leftSlice, bottomSlice);
</span><del>- graphicsContext->drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</del><ins>+ graphicsContext.drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, destRect, tileRect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx">
</span><span class="lines">@@ -873,18 +873,18 @@
</span><span class="cx"> blurShadowBuffer(templateSize);
</span><span class="cx">
</span><span class="cx"> // Mask the image with the shadow color.
</span><del>- GraphicsContext* shadowContext = m_layerImage->context();
- GraphicsContextStateSaver stateSaver(*shadowContext);
- shadowContext->setCompositeOperation(CompositeSourceIn);
- shadowContext->setFillColor(m_color, m_colorSpace);
- shadowContext->fillRect(FloatRect(0, 0, templateSize.width(), templateSize.height()));
</del><ins>+ GraphicsContext& shadowContext = m_layerImage->context();
+ GraphicsContextStateSaver stateSaver(shadowContext);
+ shadowContext.setCompositeOperation(CompositeSourceIn);
+ shadowContext.setFillColor(m_color, m_colorSpace);
+ shadowContext.fillRect(FloatRect(0, 0, templateSize.width(), templateSize.height()));
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-GraphicsContext* ShadowBlur::beginShadowLayer(GraphicsContext *context, const FloatRect& layerArea)
</del><ins>+GraphicsContext* ShadowBlur::beginShadowLayer(GraphicsContext& context, const FloatRect& layerArea)
</ins><span class="cx"> {
</span><span class="cx"> adjustBlurRadius(context);
</span><span class="cx">
</span><del>- IntRect layerRect = calculateLayerBoundingRect(context, layerArea, context->clipBounds());
</del><ins>+ IntRect layerRect = calculateLayerBoundingRect(context, layerArea, context.clipBounds());
</ins><span class="cx">
</span><span class="cx"> if (layerRect.isEmpty())
</span><span class="cx"> return nullptr;
</span><span class="lines">@@ -895,25 +895,25 @@
</span><span class="cx"> scratchBuffer.setCachedShadowValues(FloatSize(), Color::black, ColorSpaceDeviceRGB, IntRect(), FloatRoundedRect::Radii(), m_layerSize);
</span><span class="cx"> m_layerImage = scratchBuffer.getScratchBuffer(layerRect.size());
</span><span class="cx">
</span><del>- GraphicsContext* shadowContext = m_layerImage->context();
- shadowContext->save();
</del><ins>+ GraphicsContext& shadowContext = m_layerImage->context();
+ shadowContext.save();
</ins><span class="cx">
</span><span class="cx"> // Add a pixel to avoid later edge aliasing when rotated.
</span><del>- shadowContext->clearRect(FloatRect(0, 0, m_layerSize.width() + 1, m_layerSize.height() + 1));
</del><ins>+ shadowContext.clearRect(FloatRect(0, 0, m_layerSize.width() + 1, m_layerSize.height() + 1));
</ins><span class="cx">
</span><del>- shadowContext->translate(m_layerContextTranslation);
- return shadowContext;
</del><ins>+ shadowContext.translate(m_layerContextTranslation);
+ return &shadowContext;
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void ShadowBlur::endShadowLayer(GraphicsContext* context)
</del><ins>+void ShadowBlur::endShadowLayer(GraphicsContext& context)
</ins><span class="cx"> {
</span><del>- m_layerImage->context()->restore();
</del><ins>+ m_layerImage->context().restore();
</ins><span class="cx">
</span><span class="cx"> blurAndColorShadowBuffer(expandedIntSize(m_layerSize));
</span><del>- GraphicsContextStateSaver stateSave(*context);
</del><ins>+ GraphicsContextStateSaver stateSave(context);
</ins><span class="cx">
</span><del>- context->clearShadow();
- context->drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, FloatRect(roundedIntPoint(m_layerOrigin), m_layerSize), FloatRect(FloatPoint(), m_layerSize), context->compositeOperation());
</del><ins>+ context.clearShadow();
+ context.drawImageBuffer(m_layerImage, ColorSpaceDeviceRGB, FloatRect(roundedIntPoint(m_layerOrigin), m_layerSize), FloatRect(FloatPoint(), m_layerSize), context.compositeOperation());
</ins><span class="cx">
</span><span class="cx"> m_layerImage = 0;
</span><span class="cx"> ScratchBuffer::singleton().scheduleScratchBufferPurge();
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsShadowBlurh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/ShadowBlur.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/ShadowBlur.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/ShadowBlur.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -60,11 +60,11 @@
</span><span class="cx"> void setShadowsIgnoreTransforms(bool ignoreTransforms) { m_shadowsIgnoreTransforms = ignoreTransforms; }
</span><span class="cx"> bool shadowsIgnoreTransforms() const { return m_shadowsIgnoreTransforms; }
</span><span class="cx">
</span><del>- GraphicsContext* beginShadowLayer(GraphicsContext*, const FloatRect& layerArea);
- void endShadowLayer(GraphicsContext*);
</del><ins>+ GraphicsContext* beginShadowLayer(GraphicsContext&, const FloatRect& layerArea);
+ void endShadowLayer(GraphicsContext&);
</ins><span class="cx">
</span><del>- void drawRectShadow(GraphicsContext*, const FloatRoundedRect&);
- void drawInsetShadow(GraphicsContext*, const FloatRect&, const FloatRoundedRect& holeRect);
</del><ins>+ void drawRectShadow(GraphicsContext&, const FloatRoundedRect&);
+ void drawInsetShadow(GraphicsContext&, const FloatRect&, const FloatRoundedRect& holeRect);
</ins><span class="cx">
</span><span class="cx"> void blurLayerImage(unsigned char*, const IntSize&, int stride);
</span><span class="cx">
</span><span class="lines">@@ -75,25 +75,25 @@
</span><span class="cx"> private:
</span><span class="cx"> void updateShadowBlurValues();
</span><span class="cx">
</span><del>- void drawShadowBuffer(GraphicsContext*);
</del><ins>+ void drawShadowBuffer(GraphicsContext&);
</ins><span class="cx">
</span><del>- void adjustBlurRadius(GraphicsContext*);
</del><ins>+ void adjustBlurRadius(GraphicsContext&);
</ins><span class="cx">
</span><span class="cx"> enum ShadowDirection {
</span><span class="cx"> OuterShadow,
</span><span class="cx"> InnerShadow
</span><span class="cx"> };
</span><span class="cx">
</span><del>- IntRect calculateLayerBoundingRect(GraphicsContext*, const FloatRect& layerArea, const IntRect& clipRect);
</del><ins>+ IntRect calculateLayerBoundingRect(GraphicsContext&, const FloatRect& layerArea, const IntRect& clipRect);
</ins><span class="cx"> IntSize templateSize(const IntSize& blurredEdgeSize, const FloatRoundedRect::Radii&) const;
</span><span class="cx">
</span><del>- void drawRectShadowWithoutTiling(GraphicsContext*, const FloatRoundedRect&, const IntRect& layerRect);
- void drawRectShadowWithTiling(GraphicsContext*, const FloatRoundedRect&, const IntSize& shadowTemplateSize, const IntSize& blurredEdgeSize);
</del><ins>+ void drawRectShadowWithoutTiling(GraphicsContext&, const FloatRoundedRect&, const IntRect& layerRect);
+ void drawRectShadowWithTiling(GraphicsContext&, const FloatRoundedRect&, const IntSize& shadowTemplateSize, const IntSize& blurredEdgeSize);
</ins><span class="cx">
</span><del>- void drawInsetShadowWithoutTiling(GraphicsContext*, const FloatRect&, const FloatRoundedRect& holeRect, const IntRect& layerRect);
- void drawInsetShadowWithTiling(GraphicsContext*, const FloatRect&, const FloatRoundedRect& holeRect, const IntSize& shadowTemplateSize, const IntSize& blurredEdgeSize);
</del><ins>+ void drawInsetShadowWithoutTiling(GraphicsContext&, const FloatRect&, const FloatRoundedRect& holeRect, const IntRect& layerRect);
+ void drawInsetShadowWithTiling(GraphicsContext&, const FloatRect&, const FloatRoundedRect& holeRect, const IntSize& shadowTemplateSize, const IntSize& blurredEdgeSize);
</ins><span class="cx">
</span><del>- void drawLayerPieces(GraphicsContext*, const FloatRect& shadowBounds, const FloatRoundedRect::Radii&, const IntSize& roundedRadius, const IntSize& templateSize, ShadowDirection);
</del><ins>+ void drawLayerPieces(GraphicsContext&, const FloatRect& shadowBounds, const FloatRoundedRect::Radii&, const IntSize& roundedRadius, const IntSize& templateSize, ShadowDirection);
</ins><span class="cx">
</span><span class="cx"> void blurShadowBuffer(const IntSize& templateSize);
</span><span class="cx"> void blurAndColorShadowBuffer(const IntSize& templateSize);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsTextRunh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/TextRun.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/TextRun.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/TextRun.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -135,7 +135,7 @@
</span><span class="cx">
</span><span class="cx"> #if ENABLE(SVG_FONTS)
</span><span class="cx"> virtual GlyphData glyphDataForCharacter(const FontCascade&, WidthIterator&, UChar32 character, bool mirror, int currentCharacter, unsigned& advanceLength, String& normalizedSpacesStringCache) = 0;
</span><del>- virtual void drawSVGGlyphs(GraphicsContext*, const Font*, const GlyphBuffer&, int from, int to, const FloatPoint&) const = 0;
</del><ins>+ virtual void drawSVGGlyphs(GraphicsContext&, const Font&, const GlyphBuffer&, int from, int to, const FloatPoint&) const = 0;
</ins><span class="cx"> virtual float floatWidthUsingSVGFont(const FontCascade&, const TextRun&, int& charsConsumed, String& glyphName) const = 0;
</span><span class="cx"> virtual bool applySVGKerning(const Font*, WidthIterator&, GlyphBuffer*, int from) const = 0;
</span><span class="cx"> virtual std::unique_ptr<GlyphToPathTranslator> createGlyphToPathTranslator(const Font&, const TextRun*, const GlyphBuffer&, int from, int numGlyphs, const FloatPoint&) const = 0;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsavfoundationMediaPlayerPrivateAVFoundationh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -185,8 +185,8 @@
</span><span class="cx"> virtual std::unique_ptr<PlatformTimeRanges> buffered() const override;
</span><span class="cx"> virtual bool didLoadingProgress() const override;
</span><span class="cx"> virtual void setSize(const IntSize&) override;
</span><del>- virtual void paint(GraphicsContext*, const FloatRect&) override = 0;
- virtual void paintCurrentFrameInContext(GraphicsContext*, const FloatRect&) override = 0;
</del><ins>+ virtual void paint(GraphicsContext&, const FloatRect&) override = 0;
+ virtual void paintCurrentFrameInContext(GraphicsContext&, const FloatRect&) override = 0;
</ins><span class="cx"> virtual void setPreload(MediaPlayer::Preload) override;
</span><span class="cx"> virtual PlatformLayer* platformLayer() const override { return 0; }
</span><span class="cx"> virtual bool supportsAcceleratedRendering() const override = 0;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsavfoundationcfMediaPlayerPrivateAVFoundationCFcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -832,10 +832,10 @@
</span><span class="cx"> return MediaPlayerAVAssetStatusLoaded;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MediaPlayerPrivateAVFoundationCF::paintCurrentFrameInContext(GraphicsContext* context, const FloatRect& rect)
</del><ins>+void MediaPlayerPrivateAVFoundationCF::paintCurrentFrameInContext(GraphicsContext& context, const FloatRect& rect)
</ins><span class="cx"> {
</span><span class="cx"> ASSERT(isMainThread());
</span><del>- if (!metaDataAvailable() || context->paintingDisabled())
</del><ins>+ if (!metaDataAvailable() || context.paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> if (currentRenderingMode() == MediaRenderingToLayer && !imageGenerator(m_avfWrapper)) {
</span><span class="lines">@@ -847,10 +847,10 @@
</span><span class="cx"> paint(context, rect);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MediaPlayerPrivateAVFoundationCF::paint(GraphicsContext* context, const FloatRect& rect)
</del><ins>+void MediaPlayerPrivateAVFoundationCF::paint(GraphicsContext& context, const FloatRect& rect)
</ins><span class="cx"> {
</span><span class="cx"> ASSERT(isMainThread());
</span><del>- if (!metaDataAvailable() || context->paintingDisabled() || !imageGenerator(m_avfWrapper))
</del><ins>+ if (!metaDataAvailable() || context.paintingDisabled() || !imageGenerator(m_avfWrapper))
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> LOG(Media, "MediaPlayerPrivateAVFoundationCF::paint(%p)", this);
</span><span class="lines">@@ -858,13 +858,13 @@
</span><span class="cx"> setDelayCallbacks(true);
</span><span class="cx"> RetainPtr<CGImageRef> image = m_avfWrapper->createImageForTimeInRect(currentMediaTime(), rect);
</span><span class="cx"> if (image) {
</span><del>- context->save();
- context->translate(rect.x(), rect.y() + rect.height());
- context->scale(FloatSize(1.0f, -1.0f));
- context->setImageInterpolationQuality(InterpolationLow);
</del><ins>+ context.save();
+ context.translate(rect.x(), rect.y() + rect.height());
+ context.scale(FloatSize(1.0f, -1.0f));
+ context.setImageInterpolationQuality(InterpolationLow);
</ins><span class="cx"> FloatRect paintRect(FloatPoint(), rect.size());
</span><del>- CGContextDrawImage(context->platformContext(), CGRectMake(0, 0, paintRect.width(), paintRect.height()), image.get());
- context->restore();
</del><ins>+ CGContextDrawImage(context.platformContext(), CGRectMake(0, 0, paintRect.width(), paintRect.height()), image.get());
+ context.restore();
</ins><span class="cx"> image = 0;
</span><span class="cx"> }
</span><span class="cx"> setDelayCallbacks(false);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsavfoundationcfMediaPlayerPrivateAVFoundationCFh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -75,8 +75,8 @@
</span><span class="cx"> virtual MediaTime currentMediaTime() const override;
</span><span class="cx"> virtual void setVolume(float);
</span><span class="cx"> virtual void setClosedCaptionsVisible(bool);
</span><del>- virtual void paint(GraphicsContext*, const FloatRect&);
- virtual void paintCurrentFrameInContext(GraphicsContext*, const FloatRect&);
</del><ins>+ virtual void paint(GraphicsContext&, const FloatRect&);
+ virtual void paintCurrentFrameInContext(GraphicsContext&, const FloatRect&);
</ins><span class="cx"> virtual PlatformLayer* platformLayer() const;
</span><span class="cx"> virtual bool supportsAcceleratedRendering() const { return true; }
</span><span class="cx"> virtual MediaTime mediaTimeForTimeValue(const MediaTime&) const;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsavfoundationobjcMediaPlayerPrivateAVFoundationObjCh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -152,8 +152,8 @@
</span><span class="cx"> virtual MediaTime currentMediaTime() const override;
</span><span class="cx"> virtual void setVolume(float) override;
</span><span class="cx"> virtual void setClosedCaptionsVisible(bool) override;
</span><del>- virtual void paint(GraphicsContext*, const FloatRect&) override;
- virtual void paintCurrentFrameInContext(GraphicsContext*, const FloatRect&) override;
</del><ins>+ virtual void paint(GraphicsContext&, const FloatRect&) override;
+ virtual void paintCurrentFrameInContext(GraphicsContext&, const FloatRect&) override;
</ins><span class="cx"> virtual PlatformLayer* platformLayer() const override;
</span><span class="cx"> #if PLATFORM(IOS)
</span><span class="cx"> virtual void setVideoFullscreenLayer(PlatformLayer*) override;
</span><span class="lines">@@ -224,7 +224,7 @@
</span><span class="cx"> void createImageGenerator();
</span><span class="cx"> void destroyImageGenerator();
</span><span class="cx"> RetainPtr<CGImageRef> createImageForTimeInRect(float, const FloatRect&);
</span><del>- void paintWithImageGenerator(GraphicsContext*, const FloatRect&);
</del><ins>+ void paintWithImageGenerator(GraphicsContext&, const FloatRect&);
</ins><span class="cx">
</span><span class="cx"> #if HAVE(AVFOUNDATION_VIDEO_OUTPUT)
</span><span class="cx"> void createVideoOutput();
</span><span class="lines">@@ -232,7 +232,7 @@
</span><span class="cx"> RetainPtr<CVPixelBufferRef> createPixelBuffer();
</span><span class="cx"> void updateLastImage();
</span><span class="cx"> bool videoOutputHasAvailableFrame();
</span><del>- void paintWithVideoOutput(GraphicsContext*, const FloatRect&);
</del><ins>+ void paintWithVideoOutput(GraphicsContext&, const FloatRect&);
</ins><span class="cx"> virtual PassNativeImagePtr nativeImageForCurrentTime() override;
</span><span class="cx"> void waitForVideoOutputMediaDataWillChange();
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsavfoundationobjcMediaPlayerPrivateAVFoundationObjCmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1494,9 +1494,9 @@
</span><span class="cx"> return [error code];
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MediaPlayerPrivateAVFoundationObjC::paintCurrentFrameInContext(GraphicsContext* context, const FloatRect& rect)
</del><ins>+void MediaPlayerPrivateAVFoundationObjC::paintCurrentFrameInContext(GraphicsContext& context, const FloatRect& rect)
</ins><span class="cx"> {
</span><del>- if (!metaDataAvailable() || context->paintingDisabled())
</del><ins>+ if (!metaDataAvailable() || context.paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> setDelayCallbacks(true);
</span><span class="lines">@@ -1515,9 +1515,9 @@
</span><span class="cx"> m_videoFrameHasDrawn = true;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MediaPlayerPrivateAVFoundationObjC::paint(GraphicsContext* context, const FloatRect& rect)
</del><ins>+void MediaPlayerPrivateAVFoundationObjC::paint(GraphicsContext& context, const FloatRect& rect)
</ins><span class="cx"> {
</span><del>- if (!metaDataAvailable() || context->paintingDisabled())
</del><ins>+ if (!metaDataAvailable() || context.paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> // We can ignore the request if we are already rendering to a layer.
</span><span class="lines">@@ -1531,18 +1531,18 @@
</span><span class="cx"> paintCurrentFrameInContext(context, rect);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MediaPlayerPrivateAVFoundationObjC::paintWithImageGenerator(GraphicsContext* context, const FloatRect& rect)
</del><ins>+void MediaPlayerPrivateAVFoundationObjC::paintWithImageGenerator(GraphicsContext& context, const FloatRect& rect)
</ins><span class="cx"> {
</span><span class="cx"> LOG(Media, "MediaPlayerPrivateAVFoundationObjC::paintWithImageGenerator(%p)", this);
</span><span class="cx">
</span><span class="cx"> RetainPtr<CGImageRef> image = createImageForTimeInRect(currentTime(), rect);
</span><span class="cx"> if (image) {
</span><del>- GraphicsContextStateSaver stateSaver(*context);
- context->translate(rect.x(), rect.y() + rect.height());
- context->scale(FloatSize(1.0f, -1.0f));
- context->setImageInterpolationQuality(InterpolationLow);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
+ context.translate(rect.x(), rect.y() + rect.height());
+ context.scale(FloatSize(1.0f, -1.0f));
+ context.setImageInterpolationQuality(InterpolationLow);
</ins><span class="cx"> IntRect paintRect(IntPoint(0, 0), IntSize(rect.width(), rect.height()));
</span><del>- CGContextDrawImage(context->platformContext(), CGRectMake(0, 0, paintRect.width(), paintRect.height()), image.get());
</del><ins>+ CGContextDrawImage(context.platformContext(), CGRectMake(0, 0, paintRect.width(), paintRect.height()), image.get());
</ins><span class="cx"> image = 0;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -2323,7 +2323,7 @@
</span><span class="cx"> m_lastImage = createImageFromPixelBuffer(pixelBuffer.get());
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MediaPlayerPrivateAVFoundationObjC::paintWithVideoOutput(GraphicsContext* context, const FloatRect& outputRect)
</del><ins>+void MediaPlayerPrivateAVFoundationObjC::paintWithVideoOutput(GraphicsContext& context, const FloatRect& outputRect)
</ins><span class="cx"> {
</span><span class="cx"> #if (!defined(__MAC_OS_X_VERSION_MIN_REQUIRED) || __MAC_OS_X_VERSION_MIN_REQUIRED >= 101000)
</span><span class="cx"> if (m_videoOutput && !m_lastImage && !videoOutputHasAvailableFrame())
</span><span class="lines">@@ -2341,13 +2341,13 @@
</span><span class="cx">
</span><span class="cx"> LOG(Media, "MediaPlayerPrivateAVFoundationObjC::paintWithVideoOutput(%p)", this);
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
</ins><span class="cx"> FloatRect imageRect(0, 0, CGImageGetWidth(m_lastImage.get()), CGImageGetHeight(m_lastImage.get()));
</span><span class="cx"> AffineTransform videoTransform = [firstEnabledVideoTrack preferredTransform];
</span><span class="cx"> FloatRect transformedOutputRect = videoTransform.inverse().mapRect(outputRect);
</span><span class="cx">
</span><del>- context->concatCTM(videoTransform);
- context->drawNativeImage(m_lastImage.get(), imageRect.size(), ColorSpaceDeviceRGB, transformedOutputRect, imageRect);
</del><ins>+ context.concatCTM(videoTransform);
+ context.drawNativeImage(m_lastImage.get(), imageRect.size(), ColorSpaceDeviceRGB, transformedOutputRect, imageRect);
</ins><span class="cx">
</span><span class="cx"> // If we have created an AVAssetImageGenerator in the past due to m_videoOutput not having an available
</span><span class="cx"> // video frame, destroy it now that it is no longer needed.
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsavfoundationobjcMediaPlayerPrivateMediaSourceAVFObjCh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -147,8 +147,8 @@
</span><span class="cx">
</span><span class="cx"> virtual void setSize(const IntSize&) override;
</span><span class="cx">
</span><del>- virtual void paint(GraphicsContext*, const FloatRect&) override;
- virtual void paintCurrentFrameInContext(GraphicsContext*, const FloatRect&) override;
</del><ins>+ virtual void paint(GraphicsContext&, const FloatRect&) override;
+ virtual void paintCurrentFrameInContext(GraphicsContext&, const FloatRect&) override;
</ins><span class="cx">
</span><span class="cx"> virtual bool hasAvailableVideoFrame() const override;
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsavfoundationobjcMediaPlayerPrivateMediaSourceAVFObjCmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -524,12 +524,12 @@
</span><span class="cx"> // No-op.
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MediaPlayerPrivateMediaSourceAVFObjC::paint(GraphicsContext*, const FloatRect&)
</del><ins>+void MediaPlayerPrivateMediaSourceAVFObjC::paint(GraphicsContext&, const FloatRect&)
</ins><span class="cx"> {
</span><span class="cx"> // FIXME(125157): Implement painting.
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MediaPlayerPrivateMediaSourceAVFObjC::paintCurrentFrameInContext(GraphicsContext*, const FloatRect&)
</del><ins>+void MediaPlayerPrivateMediaSourceAVFObjC::paintCurrentFrameInContext(GraphicsContext&, const FloatRect&)
</ins><span class="cx"> {
</span><span class="cx"> // FIXME(125157): Implement painting.
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsavfoundationobjcMediaPlayerPrivateMediaStreamAVFObjCh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -128,8 +128,8 @@
</span><span class="cx">
</span><span class="cx"> void setSize(const IntSize&) override;
</span><span class="cx">
</span><del>- void paint(GraphicsContext*, const FloatRect&) override;
- void paintCurrentFrameInContext(GraphicsContext*, const FloatRect&) override;
</del><ins>+ void paint(GraphicsContext&, const FloatRect&) override;
+ void paintCurrentFrameInContext(GraphicsContext&, const FloatRect&) override;
</ins><span class="cx">
</span><span class="cx"> bool supportsAcceleratedRendering() const override;
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsavfoundationobjcMediaPlayerPrivateMediaStreamAVFObjCmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -362,12 +362,12 @@
</span><span class="cx"> return quartzImage;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MediaPlayerPrivateMediaStreamAVFObjC::paint(GraphicsContext* context, const FloatRect& rect)
</del><ins>+void MediaPlayerPrivateMediaStreamAVFObjC::paint(GraphicsContext& context, const FloatRect& rect)
</ins><span class="cx"> {
</span><span class="cx"> paintCurrentFrameInContext(context, rect);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MediaPlayerPrivateMediaStreamAVFObjC::paintCurrentFrameInContext(GraphicsContext*, const FloatRect&)
</del><ins>+void MediaPlayerPrivateMediaStreamAVFObjC::paintCurrentFrameInContext(GraphicsContext&, const FloatRect&)
</ins><span class="cx"> {
</span><span class="cx"> // FIXME(125157): Implement painting.
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscairoBitmapImageCairocpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cairo/BitmapImageCairo.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cairo/BitmapImageCairo.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cairo/BitmapImageCairo.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -64,7 +64,7 @@
</span><span class="cx"> checkForSolidColor();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void BitmapImage::draw(GraphicsContext* context, const FloatRect& dst, const FloatRect& src, ColorSpace styleColorSpace, CompositeOperator op,
</del><ins>+void BitmapImage::draw(GraphicsContext& context, const FloatRect& dst, const FloatRect& src, ColorSpace styleColorSpace, CompositeOperator op,
</ins><span class="cx"> BlendMode blendMode, ImageOrientationDescription description)
</span><span class="cx"> {
</span><span class="cx"> if (!dst.width() || !dst.height() || !src.width() || !src.height())
</span><span class="lines">@@ -81,13 +81,13 @@
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- context->save();
</del><ins>+ context.save();
</ins><span class="cx">
</span><span class="cx"> // Set the compositing operation.
</span><span class="cx"> if (op == CompositeSourceOver && blendMode == BlendModeNormal && !frameHasAlphaAtIndex(m_currentFrame))
</span><del>- context->setCompositeOperation(CompositeCopy);
</del><ins>+ context.setCompositeOperation(CompositeCopy);
</ins><span class="cx"> else
</span><del>- context->setCompositeOperation(op, blendMode);
</del><ins>+ context.setCompositeOperation(op, blendMode);
</ins><span class="cx">
</span><span class="cx"> #if ENABLE(IMAGE_DECODER_DOWN_SAMPLING)
</span><span class="cx"> IntSize scaledSize = cairoSurfaceSize(surface.get());
</span><span class="lines">@@ -104,9 +104,9 @@
</span><span class="cx">
</span><span class="cx"> if (frameOrientation != DefaultImageOrientation) {
</span><span class="cx"> // ImageOrientation expects the origin to be at (0, 0).
</span><del>- context->translate(dstRect.x(), dstRect.y());
</del><ins>+ context.translate(dstRect.x(), dstRect.y());
</ins><span class="cx"> dstRect.setLocation(FloatPoint());
</span><del>- context->concatCTM(frameOrientation.transformFromDefault(dstRect.size()));
</del><ins>+ context.concatCTM(frameOrientation.transformFromDefault(dstRect.size()));
</ins><span class="cx"> if (frameOrientation.usesWidthAsHeight()) {
</span><span class="cx"> // The destination rectangle will have it's width and height already reversed for the orientation of
</span><span class="cx"> // the image, as it was needed for page layout, so we need to reverse it back here.
</span><span class="lines">@@ -114,9 +114,9 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>- context->platformContext()->drawSurfaceToContext(surface.get(), dstRect, adjustedSrcRect, context);
</del><ins>+ context.platformContext()->drawSurfaceToContext(surface.get(), dstRect, adjustedSrcRect, context);
</ins><span class="cx">
</span><del>- context->restore();
</del><ins>+ context.restore();
</ins><span class="cx">
</span><span class="cx"> if (imageObserver())
</span><span class="cx"> imageObserver()->didDraw(this);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscairoFontCairocpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cairo/FontCairo.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cairo/FontCairo.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cairo/FontCairo.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -47,14 +47,14 @@
</span><span class="cx">
</span><span class="cx"> namespace WebCore {
</span><span class="cx">
</span><del>-static void drawGlyphsToContext(cairo_t* context, const Font* font, GlyphBufferGlyph* glyphs, int numGlyphs)
</del><ins>+static void drawGlyphsToContext(cairo_t* context, const Font& font, GlyphBufferGlyph* glyphs, int numGlyphs)
</ins><span class="cx"> {
</span><span class="cx"> cairo_matrix_t originalTransform;
</span><del>- float syntheticBoldOffset = font->syntheticBoldOffset();
</del><ins>+ float syntheticBoldOffset = font.syntheticBoldOffset();
</ins><span class="cx"> if (syntheticBoldOffset)
</span><span class="cx"> cairo_get_matrix(context, &originalTransform);
</span><span class="cx">
</span><del>- cairo_set_scaled_font(context, font->platformData().scaledFont());
</del><ins>+ cairo_set_scaled_font(context, font.platformData().scaledFont());
</ins><span class="cx"> cairo_show_glyphs(context, glyphs, numGlyphs);
</span><span class="cx">
</span><span class="cx"> if (syntheticBoldOffset) {
</span><span class="lines">@@ -66,21 +66,21 @@
</span><span class="cx"> cairo_set_matrix(context, &originalTransform);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static void drawGlyphsShadow(GraphicsContext* graphicsContext, const FloatPoint& point, const Font* font, GlyphBufferGlyph* glyphs, int numGlyphs)
</del><ins>+static void drawGlyphsShadow(GraphicsContext& graphicsContext, const FloatPoint& point, const Font& font, GlyphBufferGlyph* glyphs, int numGlyphs)
</ins><span class="cx"> {
</span><del>- ShadowBlur& shadow = graphicsContext->platformContext()->shadowBlur();
</del><ins>+ ShadowBlur& shadow = graphicsContext.platformContext()->shadowBlur();
</ins><span class="cx">
</span><del>- if (!(graphicsContext->textDrawingMode() & TextModeFill) || shadow.type() == ShadowBlur::NoShadow)
</del><ins>+ if (!(graphicsContext.textDrawingMode() & TextModeFill) || shadow.type() == ShadowBlur::NoShadow)
</ins><span class="cx"> return;
</span><span class="cx">
</span><del>- if (!graphicsContext->mustUseShadowBlur()) {
</del><ins>+ if (!graphicsContext.mustUseShadowBlur()) {
</ins><span class="cx"> // Optimize non-blurry shadows, by just drawing text without the ShadowBlur.
</span><del>- cairo_t* context = graphicsContext->platformContext()->cr();
</del><ins>+ cairo_t* context = graphicsContext.platformContext()->cr();
</ins><span class="cx"> cairo_save(context);
</span><span class="cx">
</span><del>- FloatSize shadowOffset(graphicsContext->state().shadowOffset);
</del><ins>+ FloatSize shadowOffset(graphicsContext.state().shadowOffset);
</ins><span class="cx"> cairo_translate(context, shadowOffset.width(), shadowOffset.height());
</span><del>- setSourceRGBAFromColor(context, graphicsContext->state().shadowColor);
</del><ins>+ setSourceRGBAFromColor(context, graphicsContext.state().shadowColor);
</ins><span class="cx"> drawGlyphsToContext(context, font, glyphs, numGlyphs);
</span><span class="cx">
</span><span class="cx"> cairo_restore(context);
</span><span class="lines">@@ -88,7 +88,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> cairo_text_extents_t extents;
</span><del>- cairo_scaled_font_glyph_extents(font->platformData().scaledFont(), glyphs, numGlyphs, &extents);
</del><ins>+ cairo_scaled_font_glyph_extents(font.platformData().scaledFont(), glyphs, numGlyphs, &extents);
</ins><span class="cx"> FloatRect fontExtentsRect(point.x() + extents.x_bearing, point.y() + extents.y_bearing, extents.width, extents.height);
</span><span class="cx">
</span><span class="cx"> if (GraphicsContext* shadowContext = shadow.beginShadowLayer(graphicsContext, fontExtentsRect)) {
</span><span class="lines">@@ -97,10 +97,10 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FontCascade::drawGlyphs(GraphicsContext* context, const Font* font, const GlyphBuffer& glyphBuffer,
</del><ins>+void FontCascade::drawGlyphs(GraphicsContext& context, const Font& font, const GlyphBuffer& glyphBuffer,
</ins><span class="cx"> int from, int numGlyphs, const FloatPoint& point) const
</span><span class="cx"> {
</span><del>- if (!font->platformData().size())
</del><ins>+ if (!font.platformData().size())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> GlyphBufferGlyph* glyphs = const_cast<GlyphBufferGlyph*>(glyphBuffer.glyphs(from));
</span><span class="lines">@@ -112,14 +112,14 @@
</span><span class="cx"> offset += glyphBuffer.advanceAt(from + i).width();
</span><span class="cx"> }
</span><span class="cx">
</span><del>- PlatformContextCairo* platformContext = context->platformContext();
</del><ins>+ PlatformContextCairo* platformContext = context.platformContext();
</ins><span class="cx"> drawGlyphsShadow(context, point, font, glyphs, numGlyphs);
</span><span class="cx">
</span><span class="cx"> cairo_t* cr = platformContext->cr();
</span><span class="cx"> cairo_save(cr);
</span><span class="cx">
</span><del>- if (context->textDrawingMode() & TextModeFill) {
- platformContext->prepareForFilling(context->state(), PlatformContextCairo::AdjustPatternForGlobalAlpha);
</del><ins>+ if (context.textDrawingMode() & TextModeFill) {
+ platformContext->prepareForFilling(context.state(), PlatformContextCairo::AdjustPatternForGlobalAlpha);
</ins><span class="cx"> drawGlyphsToContext(cr, font, glyphs, numGlyphs);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -127,12 +127,12 @@
</span><span class="cx"> // twice the size of the width of the text we will not ask cairo to stroke
</span><span class="cx"> // the text as even one single stroke would cover the full wdth of the text.
</span><span class="cx"> // See https://bugs.webkit.org/show_bug.cgi?id=33759.
</span><del>- if (context->textDrawingMode() & TextModeStroke && context->strokeThickness() < 2 * offset) {
- platformContext->prepareForStroking(context->state());
- cairo_set_line_width(cr, context->strokeThickness());
</del><ins>+ if (context.textDrawingMode() & TextModeStroke && context.strokeThickness() < 2 * offset) {
+ platformContext->prepareForStroking(context.state());
+ cairo_set_line_width(cr, context.strokeThickness());
</ins><span class="cx">
</span><span class="cx"> // This may disturb the CTM, but we are going to call cairo_restore soon after.
</span><del>- cairo_set_scaled_font(cr, font->platformData().scaledFont());
</del><ins>+ cairo_set_scaled_font(cr, font.platformData().scaledFont());
</ins><span class="cx"> cairo_glyph_path(cr, glyphs, numGlyphs);
</span><span class="cx"> cairo_stroke(cr);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscairoFontCairoHarfbuzzNGcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cairo/FontCairoHarfbuzzNG.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cairo/FontCairoHarfbuzzNG.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cairo/FontCairoHarfbuzzNG.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -52,7 +52,7 @@
</span><span class="cx"> return 0;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-float FontCascade::drawComplexText(GraphicsContext* context, const TextRun& run, const FloatPoint& point, int from, int to) const
</del><ins>+float FontCascade::drawComplexText(GraphicsContext& context, const TextRun& run, const FloatPoint& point, int from, int to) const
</ins><span class="cx"> {
</span><span class="cx"> // This glyph buffer holds our glyphs + advances + font data for each glyph.
</span><span class="cx"> GlyphBuffer glyphBuffer;
</span><span class="lines">@@ -70,7 +70,7 @@
</span><span class="cx"> return startPoint.x() - startX;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FontCascade::drawEmphasisMarksForComplexText(GraphicsContext* /* context */, const TextRun& /* run */, const AtomicString& /* mark */, const FloatPoint& /* point */, int /* from */, int /* to */) const
</del><ins>+void FontCascade::drawEmphasisMarksForComplexText(GraphicsContext& /* context */, const TextRun& /* run */, const AtomicString& /* mark */, const FloatPoint& /* point */, int /* from */, int /* to */) const
</ins><span class="cx"> {
</span><span class="cx"> notImplemented();
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscairoGraphicsContextCairocpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -89,14 +89,14 @@
</span><span class="cx"> FillAndStroke = Fill + Stroke
</span><span class="cx"> };
</span><span class="cx">
</span><del>-static inline void drawPathShadow(GraphicsContext* context, PathDrawingStyle drawingStyle)
</del><ins>+static inline void drawPathShadow(GraphicsContext& context, PathDrawingStyle drawingStyle)
</ins><span class="cx"> {
</span><del>- ShadowBlur& shadow = context->platformContext()->shadowBlur();
</del><ins>+ ShadowBlur& shadow = context.platformContext()->shadowBlur();
</ins><span class="cx"> if (shadow.type() == ShadowBlur::NoShadow)
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> // Calculate the extents of the rendered solid paths.
</span><del>- cairo_t* cairoContext = context->platformContext()->cr();
</del><ins>+ cairo_t* cairoContext = context.platformContext()->cr();
</ins><span class="cx"> std::unique_ptr<cairo_path_t, void(*)(cairo_path_t*)> path(cairo_copy_path(cairoContext), [](cairo_path_t* path) {
</span><span class="cx"> cairo_path_destroy(path);
</span><span class="cx"> });
</span><span class="lines">@@ -129,14 +129,14 @@
</span><span class="cx"> if (drawingStyle & Fill) {
</span><span class="cx"> cairo_save(cairoShadowContext);
</span><span class="cx"> cairo_append_path(cairoShadowContext, path.get());
</span><del>- shadowContext->platformContext()->prepareForFilling(context->state(), PlatformContextCairo::NoAdjustment);
</del><ins>+ shadowContext->platformContext()->prepareForFilling(context.state(), PlatformContextCairo::NoAdjustment);
</ins><span class="cx"> cairo_fill(cairoShadowContext);
</span><span class="cx"> cairo_restore(cairoShadowContext);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (drawingStyle & Stroke) {
</span><span class="cx"> cairo_append_path(cairoShadowContext, path.get());
</span><del>- shadowContext->platformContext()->prepareForStroking(context->state(), PlatformContextCairo::DoNotPreserveAlpha);
</del><ins>+ shadowContext->platformContext()->prepareForStroking(context.state(), PlatformContextCairo::DoNotPreserveAlpha);
</ins><span class="cx"> cairo_stroke(cairoShadowContext);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -149,28 +149,28 @@
</span><span class="cx"> cairo_append_path(cairoContext, path.get());
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static inline void fillCurrentCairoPath(GraphicsContext* context)
</del><ins>+static inline void fillCurrentCairoPath(GraphicsContext& context)
</ins><span class="cx"> {
</span><del>- cairo_t* cr = context->platformContext()->cr();
</del><ins>+ cairo_t* cr = context.platformContext()->cr();
</ins><span class="cx"> cairo_save(cr);
</span><span class="cx">
</span><del>- context->platformContext()->prepareForFilling(context->state(), PlatformContextCairo::AdjustPatternForGlobalAlpha);
</del><ins>+ context.platformContext()->prepareForFilling(context.state(), PlatformContextCairo::AdjustPatternForGlobalAlpha);
</ins><span class="cx"> cairo_fill(cr);
</span><span class="cx">
</span><span class="cx"> cairo_restore(cr);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static inline void shadowAndFillCurrentCairoPath(GraphicsContext* context)
</del><ins>+static inline void shadowAndFillCurrentCairoPath(GraphicsContext& context)
</ins><span class="cx"> {
</span><span class="cx"> drawPathShadow(context, Fill);
</span><span class="cx"> fillCurrentCairoPath(context);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static inline void shadowAndStrokeCurrentCairoPath(GraphicsContext* context)
</del><ins>+static inline void shadowAndStrokeCurrentCairoPath(GraphicsContext& context)
</ins><span class="cx"> {
</span><span class="cx"> drawPathShadow(context, Stroke);
</span><del>- context->platformContext()->prepareForStroking(context->state());
- cairo_stroke(context->platformContext()->cr());
</del><ins>+ context.platformContext()->prepareForStroking(context.state());
+ cairo_stroke(context.platformContext()->cr());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> GraphicsContext::GraphicsContext(cairo_t* cr)
</span><span class="lines">@@ -430,7 +430,7 @@
</span><span class="cx">
</span><span class="cx"> cairo_t* cr = platformContext()->cr();
</span><span class="cx"> setPathOnCairoContext(cr, path.platformPath()->context());
</span><del>- shadowAndFillCurrentCairoPath(this);
</del><ins>+ shadowAndFillCurrentCairoPath(*this);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void GraphicsContext::strokePath(const Path& path)
</span><span class="lines">@@ -440,7 +440,7 @@
</span><span class="cx">
</span><span class="cx"> cairo_t* cr = platformContext()->cr();
</span><span class="cx"> setPathOnCairoContext(cr, path.platformPath()->context());
</span><del>- shadowAndStrokeCurrentCairoPath(this);
</del><ins>+ shadowAndStrokeCurrentCairoPath(*this);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void GraphicsContext::fillRect(const FloatRect& rect)
</span><span class="lines">@@ -450,7 +450,7 @@
</span><span class="cx">
</span><span class="cx"> cairo_t* cr = platformContext()->cr();
</span><span class="cx"> cairo_rectangle(cr, rect.x(), rect.y(), rect.width(), rect.height());
</span><del>- shadowAndFillCurrentCairoPath(this);
</del><ins>+ shadowAndFillCurrentCairoPath(*this);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void GraphicsContext::fillRect(const FloatRect& rect, const Color& color, ColorSpace)
</span><span class="lines">@@ -459,7 +459,7 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> if (hasShadow())
</span><del>- platformContext()->shadowBlur().drawRectShadow(this, FloatRoundedRect(rect));
</del><ins>+ platformContext()->shadowBlur().drawRectShadow(*this, FloatRoundedRect(rect));
</ins><span class="cx">
</span><span class="cx"> fillRectWithColor(platformContext()->cr(), rect, color);
</span><span class="cx"> }
</span><span class="lines">@@ -872,7 +872,7 @@
</span><span class="cx"> cairo_save(cr);
</span><span class="cx"> cairo_rectangle(cr, rect.x(), rect.y(), rect.width(), rect.height());
</span><span class="cx"> cairo_set_line_width(cr, width);
</span><del>- shadowAndStrokeCurrentCairoPath(this);
</del><ins>+ shadowAndStrokeCurrentCairoPath(*this);
</ins><span class="cx"> cairo_restore(cr);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1043,7 +1043,7 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> if (hasShadow())
</span><del>- platformContext()->shadowBlur().drawRectShadow(this, rect);
</del><ins>+ platformContext()->shadowBlur().drawRectShadow(*this, rect);
</ins><span class="cx">
</span><span class="cx"> cairo_t* cr = platformContext()->cr();
</span><span class="cx"> cairo_save(cr);
</span><span class="lines">@@ -1061,7 +1061,7 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> if (this->mustUseShadowBlur())
</span><del>- platformContext()->shadowBlur().drawInsetShadow(this, rect, roundedHoleRect);
</del><ins>+ platformContext()->shadowBlur().drawInsetShadow(*this, rect, roundedHoleRect);
</ins><span class="cx">
</span><span class="cx"> Path path;
</span><span class="cx"> path.addRect(rect);
</span><span class="lines">@@ -1073,7 +1073,7 @@
</span><span class="cx"> cairo_t* cr = platformContext()->cr();
</span><span class="cx"> cairo_save(cr);
</span><span class="cx"> setPathOnCairoContext(platformContext()->cr(), path.platformPath()->context());
</span><del>- fillCurrentCairoPath(this);
</del><ins>+ fillCurrentCairoPath(*this);
</ins><span class="cx"> cairo_restore(cr);
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscairoImageBufferCairocpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -141,9 +141,9 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><del>-GraphicsContext* ImageBuffer::context() const
</del><ins>+GraphicsContext& ImageBuffer::context() const
</ins><span class="cx"> {
</span><del>- return m_data.m_context.get();
</del><ins>+ return *m_data.m_context;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> RefPtr<Image> ImageBuffer::copyImage(BackingStoreCopy copyBehavior, ScaleBehavior) const
</span><span class="lines">@@ -160,20 +160,20 @@
</span><span class="cx"> return DontCopyBackingStore;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ImageBuffer::clip(GraphicsContext* context, const FloatRect& maskRect) const
</del><ins>+void ImageBuffer::clip(GraphicsContext& context, const FloatRect& maskRect) const
</ins><span class="cx"> {
</span><del>- context->platformContext()->pushImageMask(m_data.m_surface.get(), maskRect);
</del><ins>+ context.platformContext()->pushImageMask(m_data.m_surface.get(), maskRect);
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void ImageBuffer::draw(GraphicsContext* destinationContext, ColorSpace styleColorSpace, const FloatRect& destRect, const FloatRect& srcRect,
</del><ins>+void ImageBuffer::draw(GraphicsContext& destinationContext, ColorSpace styleColorSpace, const FloatRect& destRect, const FloatRect& srcRect,
</ins><span class="cx"> CompositeOperator op, BlendMode blendMode, bool useLowQualityScale)
</span><span class="cx"> {
</span><del>- BackingStoreCopy copyMode = destinationContext == context() ? CopyBackingStore : DontCopyBackingStore;
</del><ins>+ BackingStoreCopy copyMode = &destinationContext == &context() ? CopyBackingStore : DontCopyBackingStore;
</ins><span class="cx"> RefPtr<Image> image = copyImage(copyMode);
</span><del>- destinationContext->drawImage(image.get(), styleColorSpace, destRect, srcRect, ImagePaintingOptions(op, blendMode, ImageOrientationDescription(), useLowQualityScale));
</del><ins>+ destinationContext.drawImage(image.get(), styleColorSpace, destRect, srcRect, ImagePaintingOptions(op, blendMode, ImageOrientationDescription(), useLowQualityScale));
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void ImageBuffer::drawPattern(GraphicsContext* context, const FloatRect& srcRect, const AffineTransform& patternTransform,
</del><ins>+void ImageBuffer::drawPattern(GraphicsContext& context, const FloatRect& srcRect, const AffineTransform& patternTransform,
</ins><span class="cx"> const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator op, const FloatRect& destRect, BlendMode)
</span><span class="cx"> {
</span><span class="cx"> if (RefPtr<Image> image = copyImage(DontCopyBackingStore))
</span><span class="lines">@@ -395,7 +395,7 @@
</span><span class="cx"> {
</span><span class="cx"> ASSERT(MIMETypeRegistry::isSupportedImageMIMETypeForEncoding(mimeType));
</span><span class="cx">
</span><del>- cairo_surface_t* image = cairo_get_target(context()->platformContext()->cr());
</del><ins>+ cairo_surface_t* image = cairo_get_target(context().platformContext()->cr());
</ins><span class="cx">
</span><span class="cx"> Vector<char> encodedImage;
</span><span class="cx"> if (!image || !encodeImage(image, mimeType, &encodedImage))
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscairoImageCairocpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cairo/ImageCairo.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cairo/ImageCairo.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cairo/ImageCairo.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -41,14 +41,14 @@
</span><span class="cx">
</span><span class="cx"> namespace WebCore {
</span><span class="cx">
</span><del>-void Image::drawPattern(GraphicsContext* context, const FloatRect& tileRect, const AffineTransform& patternTransform,
</del><ins>+void Image::drawPattern(GraphicsContext& context, const FloatRect& tileRect, const AffineTransform& patternTransform,
</ins><span class="cx"> const FloatPoint& phase, ColorSpace, CompositeOperator op, const FloatRect& destRect, BlendMode)
</span><span class="cx"> {
</span><span class="cx"> RefPtr<cairo_surface_t> surface = nativeImageForCurrentFrame();
</span><span class="cx"> if (!surface) // If it's too early we won't have an image yet.
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- cairo_t* cr = context->platformContext()->cr();
</del><ins>+ cairo_t* cr = context.platformContext()->cr();
</ins><span class="cx"> drawPatternToCairoContext(cr, surface.get(), IntSize(size()), tileRect, patternTransform, phase, toCairoOperator(op), destRect);
</span><span class="cx">
</span><span class="cx"> if (imageObserver())
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscairoPlatformContextCairocpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cairo/PlatformContextCairo.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cairo/PlatformContextCairo.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cairo/PlatformContextCairo.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -155,7 +155,7 @@
</span><span class="cx"> cairo_fill(cr);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void PlatformContextCairo::drawSurfaceToContext(cairo_surface_t* surface, const FloatRect& destRect, const FloatRect& originalSrcRect, GraphicsContext* context)
</del><ins>+void PlatformContextCairo::drawSurfaceToContext(cairo_surface_t* surface, const FloatRect& destRect, const FloatRect& originalSrcRect, GraphicsContext& context)
</ins><span class="cx"> {
</span><span class="cx"> // Avoid invalid cairo matrix with small values.
</span><span class="cx"> if (std::fabs(destRect.width()) < 0.5f || std::fabs(destRect.height()) < 0.5f)
</span><span class="lines">@@ -216,7 +216,7 @@
</span><span class="cx"> cairo_matrix_t matrix = { scaleX, 0, 0, scaleY, leftPadding, topPadding };
</span><span class="cx"> cairo_pattern_set_matrix(pattern.get(), &matrix);
</span><span class="cx">
</span><del>- ShadowBlur& shadow = context->platformContext()->shadowBlur();
</del><ins>+ ShadowBlur& shadow = context.platformContext()->shadowBlur();
</ins><span class="cx"> if (shadow.type() != ShadowBlur::NoShadow) {
</span><span class="cx"> if (GraphicsContext* shadowContext = shadow.beginShadowLayer(context, destRect)) {
</span><span class="cx"> drawPatternToCairoContext(shadowContext->platformContext()->cr(), pattern.get(), destRect, 1);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscairoPlatformContextCairoh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cairo/PlatformContextCairo.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cairo/PlatformContextCairo.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cairo/PlatformContextCairo.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -58,7 +58,7 @@
</span><span class="cx"> float globalAlpha() const;
</span><span class="cx">
</span><span class="cx"> void pushImageMask(cairo_surface_t*, const FloatRect&);
</span><del>- void drawSurfaceToContext(cairo_surface_t*, const FloatRect& destRect, const FloatRect& srcRect, GraphicsContext*);
</del><ins>+ void drawSurfaceToContext(cairo_surface_t*, const FloatRect& destRect, const FloatRect& srcRect, GraphicsContext&);
</ins><span class="cx">
</span><span class="cx"> void setImageInterpolationQuality(InterpolationQuality);
</span><span class="cx"> InterpolationQuality imageInterpolationQuality() const;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscgBitmapImageCGcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cg/BitmapImageCG.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cg/BitmapImageCG.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cg/BitmapImageCG.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -203,7 +203,7 @@
</span><span class="cx"> return adoptCF(array);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void BitmapImage::draw(GraphicsContext* ctxt, const FloatRect& destRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator compositeOp, BlendMode blendMode, ImageOrientationDescription description)
</del><ins>+void BitmapImage::draw(GraphicsContext& ctxt, const FloatRect& destRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator compositeOp, BlendMode blendMode, ImageOrientationDescription description)
</ins><span class="cx"> {
</span><span class="cx"> #if PLATFORM(IOS)
</span><span class="cx"> startAnimation(DoNotCatchUp);
</span><span class="lines">@@ -213,10 +213,10 @@
</span><span class="cx">
</span><span class="cx"> RetainPtr<CGImageRef> image;
</span><span class="cx"> // Never use subsampled images for drawing into PDF contexts.
</span><del>- if (wkCGContextIsPDFContext(ctxt->platformContext()))
</del><ins>+ if (wkCGContextIsPDFContext(ctxt.platformContext()))
</ins><span class="cx"> image = adoptCF(copyUnscaledFrameAtIndex(m_currentFrame));
</span><span class="cx"> else {
</span><del>- CGRect transformedDestinationRect = CGRectApplyAffineTransform(destRect, CGContextGetCTM(ctxt->platformContext()));
</del><ins>+ CGRect transformedDestinationRect = CGRectApplyAffineTransform(destRect, CGContextGetCTM(ctxt.platformContext()));
</ins><span class="cx"> float subsamplingScale = std::min<float>(1, std::max(transformedDestinationRect.size.width / srcRect.width(), transformedDestinationRect.size.height / srcRect.height()));
</span><span class="cx">
</span><span class="cx"> image = frameAtIndex(m_currentFrame, subsamplingScale);
</span><span class="lines">@@ -245,7 +245,7 @@
</span><span class="cx"> if (description.respectImageOrientation() == RespectImageOrientation)
</span><span class="cx"> orientation = frameOrientationAtIndex(m_currentFrame);
</span><span class="cx">
</span><del>- ctxt->drawNativeImage(image.get(), imageSize, styleColorSpace, destRect, scaledSrcRect, compositeOp, blendMode, orientation);
</del><ins>+ ctxt.drawNativeImage(image.get(), imageSize, styleColorSpace, destRect, scaledSrcRect, compositeOp, blendMode, orientation);
</ins><span class="cx">
</span><span class="cx"> if (imageObserver())
</span><span class="cx"> imageObserver()->didDraw(this);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscgGraphicsContext3DCGcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cg/GraphicsContext3DCG.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cg/GraphicsContext3DCG.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cg/GraphicsContext3DCG.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -503,14 +503,14 @@
</span><span class="cx"> fastFree(const_cast<void*>(data));
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void GraphicsContext3D::paintToCanvas(const unsigned char* imagePixels, int imageWidth, int imageHeight, int canvasWidth, int canvasHeight, GraphicsContext* context)
</del><ins>+void GraphicsContext3D::paintToCanvas(const unsigned char* imagePixels, int imageWidth, int imageHeight, int canvasWidth, int canvasHeight, GraphicsContext& context)
</ins><span class="cx"> {
</span><del>- if (!imagePixels || imageWidth <= 0 || imageHeight <= 0 || canvasWidth <= 0 || canvasHeight <= 0 || !context)
</del><ins>+ if (!imagePixels || imageWidth <= 0 || imageHeight <= 0 || canvasWidth <= 0 || canvasHeight <= 0)
</ins><span class="cx"> return;
</span><span class="cx"> int rowBytes = imageWidth * 4;
</span><span class="cx"> RetainPtr<CGDataProviderRef> dataProvider;
</span><span class="cx">
</span><del>- if (context->isAcceleratedContext()) {
</del><ins>+ if (context.isAcceleratedContext()) {
</ins><span class="cx"> unsigned char* copiedPixels;
</span><span class="cx">
</span><span class="cx"> if (!tryFastCalloc(imageHeight, rowBytes).getValue(copiedPixels))
</span><span class="lines">@@ -532,11 +532,11 @@
</span><span class="cx"> // We want to completely overwrite the previous frame's
</span><span class="cx"> // rendering results.
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context);
- context->scale(FloatSize(1, -1));
- context->translate(0, -imageHeight);
- context->setImageInterpolationQuality(InterpolationNone);
- context->drawNativeImage(cgImage.get(), imageSize, ColorSpaceDeviceRGB, canvasRect, FloatRect(FloatPoint(), imageSize), CompositeCopy);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
+ context.scale(FloatSize(1, -1));
+ context.translate(0, -imageHeight);
+ context.setImageInterpolationQuality(InterpolationNone);
+ context.drawNativeImage(cgImage.get(), imageSize, ColorSpaceDeviceRGB, canvasRect, FloatRect(FloatPoint(), imageSize), CompositeCopy);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> } // namespace WebCore
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscgGraphicsContextCGcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cg/GraphicsContextCG.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cg/GraphicsContextCG.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cg/GraphicsContextCG.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -712,7 +712,7 @@
</span><span class="cx"> CGContextSetShadowWithColor(platformContext(), CGSizeZero, 0, 0);
</span><span class="cx">
</span><span class="cx"> ShadowBlur contextShadow(m_state);
</span><del>- contextShadow.drawRectShadow(this, FloatRoundedRect(rect));
</del><ins>+ contextShadow.drawRectShadow(*this, FloatRoundedRect(rect));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> CGContextFillRect(context, rect);
</span><span class="lines">@@ -740,7 +740,7 @@
</span><span class="cx"> CGContextSetShadowWithColor(platformContext(), CGSizeZero, 0, 0);
</span><span class="cx">
</span><span class="cx"> ShadowBlur contextShadow(m_state);
</span><del>- contextShadow.drawRectShadow(this, FloatRoundedRect(rect));
</del><ins>+ contextShadow.drawRectShadow(*this, FloatRoundedRect(rect));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> CGContextFillRect(context, rect);
</span><span class="lines">@@ -771,7 +771,7 @@
</span><span class="cx"> CGContextSetShadowWithColor(platformContext(), CGSizeZero, 0, 0);
</span><span class="cx">
</span><span class="cx"> ShadowBlur contextShadow(m_state);
</span><del>- contextShadow.drawRectShadow(this, rect);
</del><ins>+ contextShadow.drawRectShadow(*this, rect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> const FloatRect& r = rect.rect();
</span><span class="lines">@@ -824,7 +824,7 @@
</span><span class="cx"> CGContextSetShadowWithColor(platformContext(), CGSizeZero, 0, 0);
</span><span class="cx">
</span><span class="cx"> ShadowBlur contextShadow(m_state);
</span><del>- contextShadow.drawInsetShadow(this, rect, roundedHoleRect);
</del><ins>+ contextShadow.drawInsetShadow(*this, rect, roundedHoleRect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> fillPath(path);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscgImageBufferCGcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cg/ImageBufferCG.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cg/ImageBufferCG.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cg/ImageBufferCG.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -143,9 +143,9 @@
</span><span class="cx"> m_data.context = std::make_unique<GraphicsContext>(cgContext.get());
</span><span class="cx"> }
</span><span class="cx">
</span><del>- context()->scale(FloatSize(1, -1));
- context()->translate(0, -m_data.backingStoreSize.height());
- context()->applyDeviceScaleFactor(m_resolutionScale);
</del><ins>+ context().scale(FloatSize(1, -1));
+ context().translate(0, -m_data.backingStoreSize.height());
+ context().applyDeviceScaleFactor(m_resolutionScale);
</ins><span class="cx">
</span><span class="cx"> success = true;
</span><span class="cx"> }
</span><span class="lines">@@ -154,18 +154,18 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><del>-GraphicsContext* ImageBuffer::context() const
</del><ins>+GraphicsContext& ImageBuffer::context() const
</ins><span class="cx"> {
</span><span class="cx"> #if USE(IOSURFACE_CANVAS_BACKING_STORE)
</span><span class="cx"> if (m_data.surface)
</span><del>- return &m_data.surface->ensureGraphicsContext();
</del><ins>+ return m_data.surface->ensureGraphicsContext();
</ins><span class="cx"> #endif
</span><del>- return m_data.context.get();
</del><ins>+ return *m_data.context;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void ImageBuffer::flushContext() const
</span><span class="cx"> {
</span><del>- CGContextFlush(context()->platformContext());
</del><ins>+ CGContextFlush(context().platformContext());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> static RetainPtr<CGImageRef> createCroppedImageIfNecessary(CGImageRef image, const IntSize& bounds)
</span><span class="lines">@@ -210,13 +210,13 @@
</span><span class="cx"> RetainPtr<CGImageRef> ImageBuffer::copyNativeImage(BackingStoreCopy copyBehavior) const
</span><span class="cx"> {
</span><span class="cx"> RetainPtr<CGImageRef> image;
</span><del>- if (!context()->isAcceleratedContext()) {
</del><ins>+ if (!context().isAcceleratedContext()) {
</ins><span class="cx"> switch (copyBehavior) {
</span><span class="cx"> case DontCopyBackingStore:
</span><span class="cx"> image = adoptCF(CGImageCreate(m_data.backingStoreSize.width(), m_data.backingStoreSize.height(), 8, 32, m_data.bytesPerRow.unsafeGet(), m_data.colorSpace, m_data.bitmapInfo, m_data.dataProvider.get(), 0, true, kCGRenderingIntentDefault));
</span><span class="cx"> break;
</span><span class="cx"> case CopyBackingStore:
</span><del>- image = adoptCF(CGBitmapContextCreateImage(context()->platformContext()));
</del><ins>+ image = adoptCF(CGBitmapContextCreateImage(context().platformContext()));
</ins><span class="cx"> break;
</span><span class="cx"> default:
</span><span class="cx"> ASSERT_NOT_REACHED();
</span><span class="lines">@@ -231,29 +231,29 @@
</span><span class="cx"> return image;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ImageBuffer::draw(GraphicsContext* destContext, ColorSpace styleColorSpace, const FloatRect& destRect, const FloatRect& srcRect, CompositeOperator op, BlendMode blendMode, bool useLowQualityScale)
</del><ins>+void ImageBuffer::draw(GraphicsContext& destContext, ColorSpace styleColorSpace, const FloatRect& destRect, const FloatRect& srcRect, CompositeOperator op, BlendMode blendMode, bool useLowQualityScale)
</ins><span class="cx"> {
</span><span class="cx"> UNUSED_PARAM(useLowQualityScale);
</span><del>- ColorSpace colorSpace = (destContext == context()) ? ColorSpaceDeviceRGB : styleColorSpace;
</del><ins>+ ColorSpace colorSpace = (&destContext == &context()) ? ColorSpaceDeviceRGB : styleColorSpace;
</ins><span class="cx">
</span><span class="cx"> RetainPtr<CGImageRef> image;
</span><del>- if (destContext == context() || destContext->isAcceleratedContext())
</del><ins>+ if (&destContext == &context() || destContext.isAcceleratedContext())
</ins><span class="cx"> image = copyNativeImage(CopyBackingStore); // Drawing into our own buffer, need to deep copy.
</span><span class="cx"> else
</span><span class="cx"> image = copyNativeImage(DontCopyBackingStore);
</span><span class="cx">
</span><span class="cx"> FloatRect adjustedSrcRect = srcRect;
</span><span class="cx"> adjustedSrcRect.scale(m_resolutionScale, m_resolutionScale);
</span><del>- destContext->drawNativeImage(image.get(), m_data.backingStoreSize, colorSpace, destRect, adjustedSrcRect, op, blendMode);
</del><ins>+ destContext.drawNativeImage(image.get(), m_data.backingStoreSize, colorSpace, destRect, adjustedSrcRect, op, blendMode);
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void ImageBuffer::drawPattern(GraphicsContext* destContext, const FloatRect& srcRect, const AffineTransform& patternTransform, const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator op, const FloatRect& destRect, BlendMode blendMode)
</del><ins>+void ImageBuffer::drawPattern(GraphicsContext& destContext, const FloatRect& srcRect, const AffineTransform& patternTransform, const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator op, const FloatRect& destRect, BlendMode blendMode)
</ins><span class="cx"> {
</span><span class="cx"> FloatRect adjustedSrcRect = srcRect;
</span><span class="cx"> adjustedSrcRect.scale(m_resolutionScale, m_resolutionScale);
</span><span class="cx">
</span><del>- if (!context()->isAcceleratedContext()) {
- if (destContext == context() || destContext->isAcceleratedContext()) {
</del><ins>+ if (!context().isAcceleratedContext()) {
+ if (&destContext == &context() || destContext.isAcceleratedContext()) {
</ins><span class="cx"> if (RefPtr<Image> copy = copyImage(CopyBackingStore)) // Drawing into our own buffer, need to deep copy.
</span><span class="cx"> copy->drawPattern(destContext, adjustedSrcRect, patternTransform, phase, styleColorSpace, op, destRect, blendMode);
</span><span class="cx"> } else {
</span><span class="lines">@@ -266,11 +266,11 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ImageBuffer::clip(GraphicsContext* contextToClip, const FloatRect& rect) const
</del><ins>+void ImageBuffer::clip(GraphicsContext& contextToClip, const FloatRect& rect) const
</ins><span class="cx"> {
</span><span class="cx"> FloatSize backingStoreSizeInUserSpace = scaleSizeToUserSpace(rect.size(), m_data.backingStoreSize, internalSize());
</span><span class="cx">
</span><del>- CGContextRef platformContextToClip = contextToClip->platformContext();
</del><ins>+ CGContextRef platformContextToClip = contextToClip.platformContext();
</ins><span class="cx"> // FIXME: This image needs to be grayscale to be used as an alpha mask here.
</span><span class="cx"> RetainPtr<CGImageRef> image = copyNativeImage(DontCopyBackingStore);
</span><span class="cx"> CGContextTranslateCTM(platformContextToClip, rect.x(), rect.y() + backingStoreSizeInUserSpace.height());
</span><span class="lines">@@ -283,31 +283,31 @@
</span><span class="cx">
</span><span class="cx"> PassRefPtr<Uint8ClampedArray> ImageBuffer::getUnmultipliedImageData(const IntRect& rect, CoordinateSystem coordinateSystem) const
</span><span class="cx"> {
</span><del>- if (context()->isAcceleratedContext())
</del><ins>+ if (context().isAcceleratedContext())
</ins><span class="cx"> flushContext();
</span><span class="cx">
</span><span class="cx"> IntRect srcRect = rect;
</span><span class="cx"> if (coordinateSystem == LogicalCoordinateSystem)
</span><span class="cx"> srcRect.scale(m_resolutionScale);
</span><span class="cx">
</span><del>- return m_data.getData(srcRect, internalSize(), context()->isAcceleratedContext(), true, 1);
</del><ins>+ return m_data.getData(srcRect, internalSize(), context().isAcceleratedContext(), true, 1);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> PassRefPtr<Uint8ClampedArray> ImageBuffer::getPremultipliedImageData(const IntRect& rect, CoordinateSystem coordinateSystem) const
</span><span class="cx"> {
</span><del>- if (context()->isAcceleratedContext())
</del><ins>+ if (context().isAcceleratedContext())
</ins><span class="cx"> flushContext();
</span><span class="cx">
</span><span class="cx"> IntRect srcRect = rect;
</span><span class="cx"> if (coordinateSystem == LogicalCoordinateSystem)
</span><span class="cx"> srcRect.scale(m_resolutionScale);
</span><span class="cx">
</span><del>- return m_data.getData(srcRect, internalSize(), context()->isAcceleratedContext(), false, 1);
</del><ins>+ return m_data.getData(srcRect, internalSize(), context().isAcceleratedContext(), false, 1);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void ImageBuffer::putByteArray(Multiply multiplied, Uint8ClampedArray* source, const IntSize& sourceSize, const IntRect& sourceRect, const IntPoint& destPoint, CoordinateSystem coordinateSystem)
</span><span class="cx"> {
</span><del>- if (!context()->isAcceleratedContext()) {
</del><ins>+ if (!context().isAcceleratedContext()) {
</ins><span class="cx"> IntRect scaledSourceRect = sourceRect;
</span><span class="cx"> IntSize scaledSourceSize = sourceSize;
</span><span class="cx"> if (coordinateSystem == LogicalCoordinateSystem) {
</span><span class="lines">@@ -326,10 +326,10 @@
</span><span class="cx"> if (!sourceCopy)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- sourceCopy->m_data.putData(source, sourceSize, sourceRect, IntPoint(-sourceRect.x(), -sourceRect.y()), sourceCopy->internalSize(), sourceCopy->context()->isAcceleratedContext(), multiplied == Unmultiplied, 1);
</del><ins>+ sourceCopy->m_data.putData(source, sourceSize, sourceRect, IntPoint(-sourceRect.x(), -sourceRect.y()), sourceCopy->internalSize(), sourceCopy->context().isAcceleratedContext(), multiplied == Unmultiplied, 1);
</ins><span class="cx">
</span><span class="cx"> // Set up context for using drawImage as a direct bit copy
</span><del>- CGContextRef destContext = context()->platformContext();
</del><ins>+ CGContextRef destContext = context().platformContext();
</ins><span class="cx"> CGContextSaveGState(destContext);
</span><span class="cx"> if (coordinateSystem == LogicalCoordinateSystem)
</span><span class="cx"> CGContextConcatCTM(destContext, AffineTransform(wkGetUserToBaseCTM(destContext)).inverse());
</span><span class="lines">@@ -430,7 +430,7 @@
</span><span class="cx"> {
</span><span class="cx"> ASSERT(MIMETypeRegistry::isSupportedImageMIMETypeForEncoding(mimeType));
</span><span class="cx">
</span><del>- if (context()->isAcceleratedContext())
</del><ins>+ if (context().isAcceleratedContext())
</ins><span class="cx"> flushContext();
</span><span class="cx">
</span><span class="cx"> RetainPtr<CFStringRef> uti = utiFromMIMEType(mimeType);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscgImageCGcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cg/ImageCG.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cg/ImageCG.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cg/ImageCG.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -86,7 +86,7 @@
</span><span class="cx"> });
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void Image::drawPattern(GraphicsContext* ctxt, const FloatRect& tileRect, const AffineTransform& patternTransform,
</del><ins>+void Image::drawPattern(GraphicsContext& ctxt, const FloatRect& tileRect, const AffineTransform& patternTransform,
</ins><span class="cx"> const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator op, const FloatRect& destRect, BlendMode blendMode)
</span><span class="cx"> {
</span><span class="cx"> if (!nativeImageForCurrentFrame())
</span><span class="lines">@@ -95,10 +95,10 @@
</span><span class="cx"> if (!patternTransform.isInvertible())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- CGContextRef context = ctxt->platformContext();
- GraphicsContextStateSaver stateSaver(*ctxt);
</del><ins>+ CGContextRef context = ctxt.platformContext();
+ GraphicsContextStateSaver stateSaver(ctxt);
</ins><span class="cx"> CGContextClipToRect(context, destRect);
</span><del>- ctxt->setCompositeOperation(op, blendMode);
</del><ins>+ ctxt.setCompositeOperation(op, blendMode);
</ins><span class="cx"> CGContextTranslateCTM(context, destRect.x(), destRect.y() + destRect.height());
</span><span class="cx"> CGContextScaleCTM(context, 1, -1);
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscgPDFDocumentImagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cg/PDFDocumentImage.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cg/PDFDocumentImage.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cg/PDFDocumentImage.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -98,7 +98,7 @@
</span><span class="cx"> return m_document; // Return true if size is available.
</span><span class="cx"> }
</span><span class="cx">
</span><del>-bool PDFDocumentImage::cacheParametersMatch(GraphicsContext* context, const FloatRect& dstRect, const FloatRect& srcRect) const
</del><ins>+bool PDFDocumentImage::cacheParametersMatch(GraphicsContext& context, const FloatRect& dstRect, const FloatRect& srcRect) const
</ins><span class="cx"> {
</span><span class="cx"> if (dstRect.size() != m_cachedDestinationSize)
</span><span class="cx"> return false;
</span><span class="lines">@@ -107,7 +107,7 @@
</span><span class="cx"> return false;
</span><span class="cx">
</span><span class="cx"> AffineTransform::DecomposedType decomposedTransform;
</span><del>- context->getCTM(GraphicsContext::DefinitelyIncludeDeviceScale).decompose(decomposedTransform);
</del><ins>+ context.getCTM(GraphicsContext::DefinitelyIncludeDeviceScale).decompose(decomposedTransform);
</ins><span class="cx">
</span><span class="cx"> AffineTransform::DecomposedType cachedDecomposedTransform;
</span><span class="cx"> m_cachedTransform.decompose(cachedDecomposedTransform);
</span><span class="lines">@@ -117,7 +117,7 @@
</span><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static void transformContextForPainting(GraphicsContext* context, const FloatRect& dstRect, const FloatRect& srcRect)
</del><ins>+static void transformContextForPainting(GraphicsContext& context, const FloatRect& dstRect, const FloatRect& srcRect)
</ins><span class="cx"> {
</span><span class="cx"> float hScale = dstRect.width() / srcRect.width();
</span><span class="cx"> float vScale = dstRect.height() / srcRect.height();
</span><span class="lines">@@ -135,12 +135,12 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>- context->translate(srcRect.x() * hScale, srcRect.y() * vScale);
- context->scale(FloatSize(hScale, -vScale));
- context->translate(0, -srcRect.height());
</del><ins>+ context.translate(srcRect.x() * hScale, srcRect.y() * vScale);
+ context.scale(FloatSize(hScale, -vScale));
+ context.translate(0, -srcRect.height());
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void PDFDocumentImage::updateCachedImageIfNeeded(GraphicsContext* context, const FloatRect& dstRect, const FloatRect& srcRect)
</del><ins>+void PDFDocumentImage::updateCachedImageIfNeeded(GraphicsContext& context, const FloatRect& dstRect, const FloatRect& srcRect)
</ins><span class="cx"> {
</span><span class="cx"> #if PLATFORM(IOS)
</span><span class="cx"> // On iOS, some clients use low-quality image interpolation always, which throws off this optimization,
</span><span class="lines">@@ -152,24 +152,20 @@
</span><span class="cx"> #else
</span><span class="cx"> // If we have an existing image, reuse it if we're doing a low-quality paint, even if cache parameters don't match;
</span><span class="cx"> // we'll rerender when we do the subsequent high-quality paint.
</span><del>- InterpolationQuality interpolationQuality = context->imageInterpolationQuality();
</del><ins>+ InterpolationQuality interpolationQuality = context.imageInterpolationQuality();
</ins><span class="cx"> bool repaintIfNecessary = interpolationQuality != InterpolationNone && interpolationQuality != InterpolationLow;
</span><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> if (!m_cachedImageBuffer || (!cacheParametersMatch(context, dstRect, srcRect) && repaintIfNecessary)) {
</span><del>- m_cachedImageBuffer = context->createCompatibleBuffer(FloatRect(enclosingIntRect(dstRect)).size());
</del><ins>+ m_cachedImageBuffer = context.createCompatibleBuffer(FloatRect(enclosingIntRect(dstRect)).size());
</ins><span class="cx"> if (!m_cachedImageBuffer)
</span><span class="cx"> return;
</span><del>- GraphicsContext* bufferContext = m_cachedImageBuffer->context();
- if (!bufferContext) {
- m_cachedImageBuffer = nullptr;
- return;
- }
</del><ins>+ GraphicsContext& bufferContext = m_cachedImageBuffer->context();
</ins><span class="cx">
</span><span class="cx"> transformContextForPainting(bufferContext, dstRect, srcRect);
</span><span class="cx"> drawPDFPage(bufferContext);
</span><span class="cx">
</span><del>- m_cachedTransform = context->getCTM(GraphicsContext::DefinitelyIncludeDeviceScale);
</del><ins>+ m_cachedTransform = context.getCTM(GraphicsContext::DefinitelyIncludeDeviceScale);
</ins><span class="cx"> m_cachedDestinationSize = dstRect.size();
</span><span class="cx"> m_cachedSourceRect = srcRect;
</span><span class="cx">
</span><span class="lines">@@ -182,7 +178,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void PDFDocumentImage::draw(GraphicsContext* context, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace, CompositeOperator op, BlendMode, ImageOrientationDescription)
</del><ins>+void PDFDocumentImage::draw(GraphicsContext& context, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace, CompositeOperator op, BlendMode, ImageOrientationDescription)
</ins><span class="cx"> {
</span><span class="cx"> if (!m_document || !m_hasPage)
</span><span class="cx"> return;
</span><span class="lines">@@ -190,11 +186,11 @@
</span><span class="cx"> updateCachedImageIfNeeded(context, dstRect, srcRect);
</span><span class="cx">
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*context);
- context->setCompositeOperation(op);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
+ context.setCompositeOperation(op);
</ins><span class="cx">
</span><span class="cx"> if (m_cachedImageBuffer)
</span><del>- context->drawImageBuffer(m_cachedImageBuffer.get(), ColorSpaceDeviceRGB, dstRect);
</del><ins>+ context.drawImageBuffer(m_cachedImageBuffer.get(), ColorSpaceDeviceRGB, dstRect);
</ins><span class="cx"> else {
</span><span class="cx"> transformContextForPainting(context, dstRect, srcRect);
</span><span class="cx"> drawPDFPage(context);
</span><span class="lines">@@ -244,26 +240,26 @@
</span><span class="cx"> return CGPDFDocumentGetNumberOfPages(m_document.get());
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static void applyRotationForPainting(GraphicsContext* context, FloatSize size, int rotationDegrees)
</del><ins>+static void applyRotationForPainting(GraphicsContext& context, FloatSize size, int rotationDegrees)
</ins><span class="cx"> {
</span><span class="cx"> if (rotationDegrees == 90)
</span><del>- context->translate(0, size.height());
</del><ins>+ context.translate(0, size.height());
</ins><span class="cx"> else if (rotationDegrees == 180)
</span><del>- context->translate(size.width(), size.height());
</del><ins>+ context.translate(size.width(), size.height());
</ins><span class="cx"> else if (rotationDegrees == 270)
</span><del>- context->translate(size.width(), 0);
</del><ins>+ context.translate(size.width(), 0);
</ins><span class="cx">
</span><del>- context->rotate(-deg2rad(static_cast<float>(rotationDegrees)));
</del><ins>+ context.rotate(-deg2rad(static_cast<float>(rotationDegrees)));
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void PDFDocumentImage::drawPDFPage(GraphicsContext* context)
</del><ins>+void PDFDocumentImage::drawPDFPage(GraphicsContext& context)
</ins><span class="cx"> {
</span><span class="cx"> applyRotationForPainting(context, size(), m_rotationDegrees);
</span><span class="cx">
</span><del>- context->translate(-m_cropBox.x(), -m_cropBox.y());
</del><ins>+ context.translate(-m_cropBox.x(), -m_cropBox.y());
</ins><span class="cx">
</span><span class="cx"> // CGPDF pages are indexed from 1.
</span><del>- CGContextDrawPDFPage(context->platformContext(), CGPDFDocumentGetPage(m_document.get(), 1));
</del><ins>+ CGContextDrawPDFPage(context.platformContext(), CGPDFDocumentGetPage(m_document.get(), 1));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> #endif // !USE(PDFKIT_FOR_PDFDOCUMENTIMAGE)
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscgPDFDocumentImageh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cg/PDFDocumentImage.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cg/PDFDocumentImage.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cg/PDFDocumentImage.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -69,7 +69,7 @@
</span><span class="cx"> virtual void computeIntrinsicDimensions(Length& intrinsicWidth, Length& intrinsicHeight, FloatSize& intrinsicRatio) override;
</span><span class="cx"> virtual FloatSize size() const override;
</span><span class="cx">
</span><del>- virtual void draw(GraphicsContext*, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override;
</del><ins>+ virtual void draw(GraphicsContext&, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override;
</ins><span class="cx">
</span><span class="cx"> // FIXME: Implement this to be less conservative.
</span><span class="cx"> virtual bool currentFrameKnownToBeOpaque() override { return false; }
</span><span class="lines">@@ -77,10 +77,10 @@
</span><span class="cx"> void createPDFDocument();
</span><span class="cx"> void computeBoundsForCurrentPage();
</span><span class="cx"> unsigned pageCount() const;
</span><del>- void drawPDFPage(GraphicsContext*);
</del><ins>+ void drawPDFPage(GraphicsContext&);
</ins><span class="cx">
</span><del>- void updateCachedImageIfNeeded(GraphicsContext*, const FloatRect& dstRect, const FloatRect& srcRect);
- bool cacheParametersMatch(GraphicsContext*, const FloatRect& dstRect, const FloatRect& srcRect) const;
</del><ins>+ void updateCachedImageIfNeeded(GraphicsContext&, const FloatRect& dstRect, const FloatRect& srcRect);
+ bool cacheParametersMatch(GraphicsContext&, const FloatRect& dstRect, const FloatRect& srcRect) const;
</ins><span class="cx">
</span><span class="cx"> #if USE(PDFKIT_FOR_PDFDOCUMENTIMAGE)
</span><span class="cx"> RetainPtr<PDFDocument> m_document;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscocoaFontCascadeCocoamm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cocoa/FontCascadeCocoa.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cocoa/FontCascadeCocoa.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/cocoa/FontCascadeCocoa.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -91,13 +91,13 @@
</span><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static void showLetterpressedGlyphsWithAdvances(const FloatPoint& point, const Font* font, CGContextRef context, const CGGlyph* glyphs, const CGSize* advances, size_t count)
</del><ins>+static void showLetterpressedGlyphsWithAdvances(const FloatPoint& point, const Font& font, CGContextRef context, const CGGlyph* glyphs, const CGSize* advances, size_t count)
</ins><span class="cx"> {
</span><span class="cx"> #if ENABLE(LETTERPRESS)
</span><span class="cx"> if (!count)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- const FontPlatformData& platformData = font->platformData();
</del><ins>+ const FontPlatformData& platformData = font.platformData();
</ins><span class="cx"> if (platformData.orientation() == Vertical) {
</span><span class="cx"> // FIXME: Implement support for vertical text. See <rdar://problem/13737298>.
</span><span class="cx"> return;
</span><span class="lines">@@ -158,14 +158,14 @@
</span><span class="cx"> #endif
</span><span class="cx"> };
</span><span class="cx">
</span><del>-static void showGlyphsWithAdvances(const FloatPoint& point, const Font* font, CGContextRef context, const CGGlyph* glyphs, const CGSize* advances, size_t count)
</del><ins>+static void showGlyphsWithAdvances(const FloatPoint& point, const Font& font, CGContextRef context, const CGGlyph* glyphs, const CGSize* advances, size_t count)
</ins><span class="cx"> {
</span><span class="cx"> if (!count)
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> CGContextSetTextPosition(context, point.x(), point.y());
</span><span class="cx">
</span><del>- const FontPlatformData& platformData = font->platformData();
</del><ins>+ const FontPlatformData& platformData = font.platformData();
</ins><span class="cx"> Vector<CGPoint, 256> positions(count);
</span><span class="cx"> if (platformData.isColorBitmapFont())
</span><span class="cx"> fillVectorWithHorizontalGlyphPositions(positions, context, advances, count);
</span><span class="lines">@@ -181,7 +181,7 @@
</span><span class="cx">
</span><span class="cx"> CGAffineTransform transform = CGAffineTransformInvert(CGContextGetTextMatrix(context));
</span><span class="cx">
</span><del>- CGPoint position = FloatPoint(point.x(), point.y() + font->fontMetrics().floatAscent(IdeographicBaseline) - font->fontMetrics().floatAscent());
</del><ins>+ CGPoint position = FloatPoint(point.x(), point.y() + font.fontMetrics().floatAscent(IdeographicBaseline) - font.fontMetrics().floatAscent());
</ins><span class="cx"> for (size_t i = 0; i < count; ++i) {
</span><span class="cx"> CGSize translation = CGSizeApplyAffineTransform(translations[i], rotateLeftTransform);
</span><span class="cx"> positions[i] = CGPointApplyAffineTransform(CGPointMake(position.x - translation.width, position.y + translation.height), transform);
</span><span class="lines">@@ -246,35 +246,35 @@
</span><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>-void FontCascade::drawGlyphs(GraphicsContext* context, const Font* font, const GlyphBuffer& glyphBuffer, int from, int numGlyphs, const FloatPoint& anchorPoint) const
</del><ins>+void FontCascade::drawGlyphs(GraphicsContext& context, const Font& font, const GlyphBuffer& glyphBuffer, int from, int numGlyphs, const FloatPoint& anchorPoint) const
</ins><span class="cx"> {
</span><del>- const FontPlatformData& platformData = font->platformData();
</del><ins>+ const FontPlatformData& platformData = font.platformData();
</ins><span class="cx"> if (!platformData.size())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- CGContextRef cgContext = context->platformContext();
</del><ins>+ CGContextRef cgContext = context.platformContext();
</ins><span class="cx">
</span><span class="cx"> bool shouldSmoothFonts;
</span><span class="cx"> bool changeFontSmoothing;
</span><del>- bool matchAntialiasedAndSmoothedFonts = context->antialiasedFontDilationEnabled();
</del><ins>+ bool matchAntialiasedAndSmoothedFonts = context.antialiasedFontDilationEnabled();
</ins><span class="cx">
</span><span class="cx"> switch (fontDescription().fontSmoothing()) {
</span><span class="cx"> case Antialiased: {
</span><del>- context->setShouldAntialias(true);
</del><ins>+ context.setShouldAntialias(true);
</ins><span class="cx"> shouldSmoothFonts = false;
</span><span class="cx"> changeFontSmoothing = true;
</span><span class="cx"> matchAntialiasedAndSmoothedFonts = false; // CSS has opted into strictly antialiased fonts.
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="cx"> case SubpixelAntialiased: {
</span><del>- context->setShouldAntialias(true);
</del><ins>+ context.setShouldAntialias(true);
</ins><span class="cx"> shouldSmoothFonts = true;
</span><span class="cx"> changeFontSmoothing = true;
</span><span class="cx"> matchAntialiasedAndSmoothedFonts = true;
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="cx"> case NoSmoothing: {
</span><del>- context->setShouldAntialias(false);
</del><ins>+ context.setShouldAntialias(false);
</ins><span class="cx"> shouldSmoothFonts = false;
</span><span class="cx"> changeFontSmoothing = true;
</span><span class="cx"> matchAntialiasedAndSmoothedFonts = false;
</span><span class="lines">@@ -319,7 +319,7 @@
</span><span class="cx">
</span><span class="cx"> CGContextSetFont(cgContext, platformData.cgFont());
</span><span class="cx">
</span><del>- bool useLetterpressEffect = shouldUseLetterpressEffect(*context);
</del><ins>+ bool useLetterpressEffect = shouldUseLetterpressEffect(context);
</ins><span class="cx"> FloatPoint point = anchorPoint;
</span><span class="cx">
</span><span class="cx"> CGAffineTransform matrix = CGAffineTransformIdentity;
</span><span class="lines">@@ -339,9 +339,9 @@
</span><span class="cx"> CGContextSetTextMatrix(cgContext, matrix);
</span><span class="cx">
</span><span class="cx"> #if PLATFORM(IOS)
</span><del>- CGContextSetShouldSubpixelQuantizeFonts(cgContext, context->shouldSubpixelQuantizeFonts());
</del><ins>+ CGContextSetShouldSubpixelQuantizeFonts(cgContext, context.shouldSubpixelQuantizeFonts());
</ins><span class="cx"> #else
</span><del>- setCGFontRenderingMode(cgContext, [drawFont renderingMode], context->shouldSubpixelQuantizeFonts());
</del><ins>+ setCGFontRenderingMode(cgContext, [drawFont renderingMode], context.shouldSubpixelQuantizeFonts());
</ins><span class="cx"> #endif
</span><span class="cx"> CGContextSetFontSize(cgContext, platformData.size());
</span><span class="cx">
</span><span class="lines">@@ -350,11 +350,11 @@
</span><span class="cx"> float shadowBlur;
</span><span class="cx"> Color shadowColor;
</span><span class="cx"> ColorSpace shadowColorSpace;
</span><del>- ColorSpace fillColorSpace = context->fillColorSpace();
- context->getShadow(shadowOffset, shadowBlur, shadowColor, shadowColorSpace);
</del><ins>+ ColorSpace fillColorSpace = context.fillColorSpace();
+ context.getShadow(shadowOffset, shadowBlur, shadowColor, shadowColorSpace);
</ins><span class="cx">
</span><del>- AffineTransform contextCTM = context->getCTM();
- float syntheticBoldOffset = font->syntheticBoldOffset();
</del><ins>+ AffineTransform contextCTM = context.getCTM();
+ float syntheticBoldOffset = font.syntheticBoldOffset();
</ins><span class="cx"> if (syntheticBoldOffset && !contextCTM.isIdentityOrTranslationOrFlipped()) {
</span><span class="cx"> FloatSize horizontalUnitSizeInDevicePixels = contextCTM.mapSize(FloatSize(1, 0));
</span><span class="cx"> float horizontalUnitLengthInDevicePixels = sqrtf(horizontalUnitSizeInDevicePixels.width() * horizontalUnitSizeInDevicePixels.width() + horizontalUnitSizeInDevicePixels.height() * horizontalUnitSizeInDevicePixels.height());
</span><span class="lines">@@ -362,20 +362,20 @@
</span><span class="cx"> syntheticBoldOffset /= horizontalUnitLengthInDevicePixels;
</span><span class="cx"> };
</span><span class="cx">
</span><del>- bool hasSimpleShadow = context->textDrawingMode() == TextModeFill && shadowColor.isValid() && !shadowBlur && !platformData.isColorBitmapFont() && (!context->shadowsIgnoreTransforms() || contextCTM.isIdentityOrTranslationOrFlipped()) && !context->isInTransparencyLayer();
</del><ins>+ bool hasSimpleShadow = context.textDrawingMode() == TextModeFill && shadowColor.isValid() && !shadowBlur && !platformData.isColorBitmapFont() && (!context.shadowsIgnoreTransforms() || contextCTM.isIdentityOrTranslationOrFlipped()) && !context.isInTransparencyLayer();
</ins><span class="cx"> if (hasSimpleShadow) {
</span><span class="cx"> // Paint simple shadows ourselves instead of relying on CG shadows, to avoid losing subpixel antialiasing.
</span><del>- context->clearShadow();
- Color fillColor = context->fillColor();
</del><ins>+ context.clearShadow();
+ Color fillColor = context.fillColor();
</ins><span class="cx"> Color shadowFillColor(shadowColor.red(), shadowColor.green(), shadowColor.blue(), shadowColor.alpha() * fillColor.alpha() / 255);
</span><del>- context->setFillColor(shadowFillColor, shadowColorSpace);
</del><ins>+ context.setFillColor(shadowFillColor, shadowColorSpace);
</ins><span class="cx"> float shadowTextX = point.x() + shadowOffset.width();
</span><span class="cx"> // If shadows are ignoring transforms, then we haven't applied the Y coordinate flip yet, so down is negative.
</span><del>- float shadowTextY = point.y() + shadowOffset.height() * (context->shadowsIgnoreTransforms() ? -1 : 1);
</del><ins>+ float shadowTextY = point.y() + shadowOffset.height() * (context.shadowsIgnoreTransforms() ? -1 : 1);
</ins><span class="cx"> showGlyphsWithAdvances(FloatPoint(shadowTextX, shadowTextY), font, cgContext, glyphBuffer.glyphs(from), static_cast<const CGSize*>(glyphBuffer.advances(from)), numGlyphs);
</span><span class="cx"> if (syntheticBoldOffset)
</span><span class="cx"> showGlyphsWithAdvances(FloatPoint(shadowTextX + syntheticBoldOffset, shadowTextY), font, cgContext, glyphBuffer.glyphs(from), static_cast<const CGSize*>(glyphBuffer.advances(from)), numGlyphs);
</span><del>- context->setFillColor(fillColor, fillColorSpace);
</del><ins>+ context.setFillColor(fillColor, fillColorSpace);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (useLetterpressEffect)
</span><span class="lines">@@ -386,7 +386,7 @@
</span><span class="cx"> showGlyphsWithAdvances(FloatPoint(point.x() + syntheticBoldOffset, point.y()), font, cgContext, glyphBuffer.glyphs(from), static_cast<const CGSize*>(glyphBuffer.advances(from)), numGlyphs);
</span><span class="cx">
</span><span class="cx"> if (hasSimpleShadow)
</span><del>- context->setShadow(shadowOffset, shadowBlur, shadowColor, shadowColorSpace);
</del><ins>+ context.setShadow(shadowOffset, shadowBlur, shadowColor, shadowColorSpace);
</ins><span class="cx">
</span><span class="cx"> #if !PLATFORM(IOS)
</span><span class="cx"> #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101100
</span><span class="lines">@@ -660,7 +660,7 @@
</span><span class="cx"> return initialAdvance;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-float FontCascade::drawComplexText(GraphicsContext* context, const TextRun& run, const FloatPoint& point, int from, int to) const
</del><ins>+float FontCascade::drawComplexText(GraphicsContext& context, const TextRun& run, const FloatPoint& point, int from, int to) const
</ins><span class="cx"> {
</span><span class="cx"> // This glyph buffer holds our glyphs + advances + font data for each glyph.
</span><span class="cx"> GlyphBuffer glyphBuffer;
</span><span class="lines">@@ -678,7 +678,7 @@
</span><span class="cx"> return startPoint.x() - startX;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FontCascade::drawEmphasisMarksForComplexText(GraphicsContext* context, const TextRun& run, const AtomicString& mark, const FloatPoint& point, int from, int to) const
</del><ins>+void FontCascade::drawEmphasisMarksForComplexText(GraphicsContext& context, const TextRun& run, const AtomicString& mark, const FloatPoint& point, int from, int to) const
</ins><span class="cx"> {
</span><span class="cx"> GlyphBuffer glyphBuffer;
</span><span class="cx"> float initialAdvance = getGlyphsAndAdvancesForComplexText(run, from, to, glyphBuffer, ForTextEmphasis);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicseflImageBufferEflcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/efl/ImageBufferEfl.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/efl/ImageBufferEfl.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/efl/ImageBufferEfl.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -56,7 +56,7 @@
</span><span class="cx"> {
</span><span class="cx"> ASSERT(MIMETypeRegistry::isSupportedImageMIMETypeForEncoding(mimeType));
</span><span class="cx">
</span><del>- cairo_surface_t* image = cairo_get_target(context()->platformContext()->cr());
</del><ins>+ cairo_surface_t* image = cairo_get_target(context().platformContext()->cr());
</ins><span class="cx">
</span><span class="cx"> Vector<char> encodedImage;
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsfiltersFEBlendcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/filters/FEBlend.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/filters/FEBlend.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/filters/FEBlend.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -68,15 +68,15 @@
</span><span class="cx"> ImageBuffer* resultImage = createImageBufferResult();
</span><span class="cx"> if (!resultImage)
</span><span class="cx"> return;
</span><del>- GraphicsContext* filterContext = resultImage->context();
</del><ins>+ GraphicsContext& filterContext = resultImage->context();
</ins><span class="cx">
</span><span class="cx"> ImageBuffer* imageBuffer = in->asImageBuffer();
</span><span class="cx"> ImageBuffer* imageBuffer2 = in2->asImageBuffer();
</span><span class="cx"> ASSERT(imageBuffer);
</span><span class="cx"> ASSERT(imageBuffer2);
</span><span class="cx">
</span><del>- filterContext->drawImageBuffer(imageBuffer2, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in2->absolutePaintRect()));
- filterContext->drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in->absolutePaintRect()), IntRect(IntPoint(), imageBuffer->logicalSize()), ImagePaintingOptions(CompositeSourceOver, m_mode));
</del><ins>+ filterContext.drawImageBuffer(imageBuffer2, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in2->absolutePaintRect()));
+ filterContext.drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in->absolutePaintRect()), IntRect(IntPoint(), imageBuffer->logicalSize()), ImagePaintingOptions(CompositeSourceOver, m_mode));
</ins><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsfiltersFEColorMatrixcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/filters/FEColorMatrix.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/filters/FEColorMatrix.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/filters/FEColorMatrix.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -147,7 +147,7 @@
</span><span class="cx"> if (!resultImage)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- resultImage->context()->drawImageBuffer(in->asImageBuffer(), ColorSpaceDeviceRGB, drawingRegionOfInputImage(in->absolutePaintRect()));
</del><ins>+ resultImage->context().drawImageBuffer(in->asImageBuffer(), ColorSpaceDeviceRGB, drawingRegionOfInputImage(in->absolutePaintRect()));
</ins><span class="cx">
</span><span class="cx"> IntRect imageRect(IntPoint(), resultImage->logicalSize());
</span><span class="cx"> RefPtr<Uint8ClampedArray> pixelArray = resultImage->getUnmultipliedImageData(imageRect);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsfiltersFECompositecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/filters/FEComposite.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/filters/FEComposite.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/filters/FEComposite.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -272,7 +272,7 @@
</span><span class="cx"> ImageBuffer* resultImage = createImageBufferResult();
</span><span class="cx"> if (!resultImage)
</span><span class="cx"> return;
</span><del>- GraphicsContext* filterContext = resultImage->context();
</del><ins>+ GraphicsContext& filterContext = resultImage->context();
</ins><span class="cx">
</span><span class="cx"> ImageBuffer* imageBuffer = in->asImageBuffer();
</span><span class="cx"> ImageBuffer* imageBuffer2 = in2->asImageBuffer();
</span><span class="lines">@@ -281,8 +281,8 @@
</span><span class="cx">
</span><span class="cx"> switch (m_type) {
</span><span class="cx"> case FECOMPOSITE_OPERATOR_OVER:
</span><del>- filterContext->drawImageBuffer(imageBuffer2, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in2->absolutePaintRect()));
- filterContext->drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in->absolutePaintRect()));
</del><ins>+ filterContext.drawImageBuffer(imageBuffer2, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in2->absolutePaintRect()));
+ filterContext.drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in->absolutePaintRect()));
</ins><span class="cx"> break;
</span><span class="cx"> case FECOMPOSITE_OPERATOR_IN: {
</span><span class="cx"> // Applies only to the intersected region.
</span><span class="lines">@@ -294,21 +294,21 @@
</span><span class="cx"> IntRect adjustedDestinationRect = destinationRect - absolutePaintRect().location();
</span><span class="cx"> IntRect sourceRect = destinationRect - in->absolutePaintRect().location();
</span><span class="cx"> IntRect source2Rect = destinationRect - in2->absolutePaintRect().location();
</span><del>- filterContext->drawImageBuffer(imageBuffer2, ColorSpaceDeviceRGB, adjustedDestinationRect, source2Rect);
- filterContext->drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, adjustedDestinationRect, sourceRect, CompositeSourceIn);
</del><ins>+ filterContext.drawImageBuffer(imageBuffer2, ColorSpaceDeviceRGB, adjustedDestinationRect, source2Rect);
+ filterContext.drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, adjustedDestinationRect, sourceRect, CompositeSourceIn);
</ins><span class="cx"> break;
</span><span class="cx"> }
</span><span class="cx"> case FECOMPOSITE_OPERATOR_OUT:
</span><del>- filterContext->drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in->absolutePaintRect()));
- filterContext->drawImageBuffer(imageBuffer2, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in2->absolutePaintRect()), IntRect(IntPoint(), imageBuffer2->logicalSize()), CompositeDestinationOut);
</del><ins>+ filterContext.drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in->absolutePaintRect()));
+ filterContext.drawImageBuffer(imageBuffer2, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in2->absolutePaintRect()), IntRect(IntPoint(), imageBuffer2->logicalSize()), CompositeDestinationOut);
</ins><span class="cx"> break;
</span><span class="cx"> case FECOMPOSITE_OPERATOR_ATOP:
</span><del>- filterContext->drawImageBuffer(imageBuffer2, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in2->absolutePaintRect()));
- filterContext->drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in->absolutePaintRect()), IntRect(IntPoint(), imageBuffer->logicalSize()), CompositeSourceAtop);
</del><ins>+ filterContext.drawImageBuffer(imageBuffer2, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in2->absolutePaintRect()));
+ filterContext.drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in->absolutePaintRect()), IntRect(IntPoint(), imageBuffer->logicalSize()), CompositeSourceAtop);
</ins><span class="cx"> break;
</span><span class="cx"> case FECOMPOSITE_OPERATOR_XOR:
</span><del>- filterContext->drawImageBuffer(imageBuffer2, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in2->absolutePaintRect()));
- filterContext->drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in->absolutePaintRect()), IntRect(IntPoint(), imageBuffer->logicalSize()), CompositeXOR);
</del><ins>+ filterContext.drawImageBuffer(imageBuffer2, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in2->absolutePaintRect()));
+ filterContext.drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, drawingRegionOfInputImage(in->absolutePaintRect()), IntRect(IntPoint(), imageBuffer->logicalSize()), CompositeXOR);
</ins><span class="cx"> break;
</span><span class="cx"> default:
</span><span class="cx"> break;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsfiltersFEDropShadowcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/filters/FEDropShadow.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/filters/FEDropShadow.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/filters/FEDropShadow.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -89,11 +89,10 @@
</span><span class="cx">
</span><span class="cx"> ImageBuffer* sourceImage = in->asImageBuffer();
</span><span class="cx"> ASSERT(sourceImage);
</span><del>- GraphicsContext* resultContext = resultImage->context();
- ASSERT(resultContext);
- resultContext->setAlpha(m_shadowOpacity);
- resultContext->drawImageBuffer(sourceImage, ColorSpaceDeviceRGB, drawingRegionWithOffset);
- resultContext->setAlpha(1);
</del><ins>+ GraphicsContext& resultContext = resultImage->context();
+ resultContext.setAlpha(m_shadowOpacity);
+ resultContext.drawImageBuffer(sourceImage, ColorSpaceDeviceRGB, drawingRegionWithOffset);
+ resultContext.setAlpha(1);
</ins><span class="cx">
</span><span class="cx"> ShadowBlur contextShadow(blurRadius, offset, m_shadowColor, ColorSpaceDeviceRGB);
</span><span class="cx">
</span><span class="lines">@@ -105,11 +104,11 @@
</span><span class="cx">
</span><span class="cx"> resultImage->putByteArray(Premultiplied, srcPixelArray.get(), shadowArea.size(), shadowArea, IntPoint(), ImageBuffer::BackingStoreCoordinateSystem);
</span><span class="cx">
</span><del>- resultContext->setCompositeOperation(CompositeSourceIn);
- resultContext->fillRect(FloatRect(FloatPoint(), absolutePaintRect().size()), m_shadowColor, ColorSpaceDeviceRGB);
- resultContext->setCompositeOperation(CompositeDestinationOver);
</del><ins>+ resultContext.setCompositeOperation(CompositeSourceIn);
+ resultContext.fillRect(FloatRect(FloatPoint(), absolutePaintRect().size()), m_shadowColor, ColorSpaceDeviceRGB);
+ resultContext.setCompositeOperation(CompositeDestinationOver);
</ins><span class="cx">
</span><del>- resultImage->context()->drawImageBuffer(sourceImage, ColorSpaceDeviceRGB, drawingRegion);
</del><ins>+ resultImage->context().drawImageBuffer(sourceImage, ColorSpaceDeviceRGB, drawingRegion);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void FEDropShadow::dump()
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsfiltersFEFloodcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/filters/FEFlood.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/filters/FEFlood.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/filters/FEFlood.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -74,7 +74,7 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> Color color = colorWithOverrideAlpha(floodColor().rgb(), floodOpacity());
</span><del>- resultImage->context()->fillRect(FloatRect(FloatPoint(), absolutePaintRect().size()), color, ColorSpaceDeviceRGB);
</del><ins>+ resultImage->context().fillRect(FloatRect(FloatPoint(), absolutePaintRect().size()), color, ColorSpaceDeviceRGB);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void FEFlood::dump()
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsfiltersFEMergecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/filters/FEMerge.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/filters/FEMerge.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/filters/FEMerge.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -47,10 +47,10 @@
</span><span class="cx"> if (!resultImage)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- GraphicsContext* filterContext = resultImage->context();
</del><ins>+ GraphicsContext& filterContext = resultImage->context();
</ins><span class="cx"> for (unsigned i = 0; i < size; ++i) {
</span><span class="cx"> FilterEffect* in = inputEffect(i);
</span><del>- filterContext->drawImageBuffer(in->asImageBuffer(), ColorSpaceDeviceRGB, drawingRegionOfInputImage(in->absolutePaintRect()));
</del><ins>+ filterContext.drawImageBuffer(in->asImageBuffer(), ColorSpaceDeviceRGB, drawingRegionOfInputImage(in->absolutePaintRect()));
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsfiltersFEOffsetcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/filters/FEOffset.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/filters/FEOffset.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/filters/FEOffset.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -87,7 +87,7 @@
</span><span class="cx"> FloatRect drawingRegion = drawingRegionOfInputImage(in->absolutePaintRect());
</span><span class="cx"> Filter& filter = this->filter();
</span><span class="cx"> drawingRegion.move(filter.applyHorizontalScale(m_dx), filter.applyVerticalScale(m_dy));
</span><del>- resultImage->context()->drawImageBuffer(in->asImageBuffer(), ColorSpaceDeviceRGB, drawingRegion);
</del><ins>+ resultImage->context().drawImageBuffer(in->asImageBuffer(), ColorSpaceDeviceRGB, drawingRegion);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void FEOffset::dump()
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsfiltersFETilecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/filters/FETile.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/filters/FETile.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/filters/FETile.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -67,9 +67,9 @@
</span><span class="cx"> if (!tileImage)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- GraphicsContext* tileImageContext = tileImage->context();
- tileImageContext->translate(-inMaxEffectLocation.x(), -inMaxEffectLocation.y());
- tileImageContext->drawImageBuffer(in->asImageBuffer(), ColorSpaceDeviceRGB, in->absolutePaintRect().location());
</del><ins>+ GraphicsContext& tileImageContext = tileImage->context();
+ tileImageContext.translate(-inMaxEffectLocation.x(), -inMaxEffectLocation.y());
+ tileImageContext.drawImageBuffer(in->asImageBuffer(), ColorSpaceDeviceRGB, in->absolutePaintRect().location());
</ins><span class="cx">
</span><span class="cx"> auto tileImageCopy = tileImage->copyImage(CopyBackingStore);
</span><span class="cx"> if (!tileImageCopy)
</span><span class="lines">@@ -80,9 +80,9 @@
</span><span class="cx"> AffineTransform patternTransform;
</span><span class="cx"> patternTransform.translate(inMaxEffectLocation.x() - maxEffectLocation.x(), inMaxEffectLocation.y() - maxEffectLocation.y());
</span><span class="cx"> pattern.get().setPatternSpaceTransform(patternTransform);
</span><del>- GraphicsContext* filterContext = resultImage->context();
- filterContext->setFillPattern(WTF::move(pattern));
- filterContext->fillRect(FloatRect(FloatPoint(), absolutePaintRect().size()));
</del><ins>+ GraphicsContext& filterContext = resultImage->context();
+ filterContext.setFillPattern(WTF::move(pattern));
+ filterContext.fillRect(FloatRect(FloatPoint(), absolutePaintRect().size()));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void FETile::dump()
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsfiltersFilterEffectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/filters/FilterEffect.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/filters/FilterEffect.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/filters/FilterEffect.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -466,7 +466,6 @@
</span><span class="cx"> if (!m_imageBufferResult)
</span><span class="cx"> return nullptr;
</span><span class="cx">
</span><del>- ASSERT(m_imageBufferResult->context());
</del><span class="cx"> return m_imageBufferResult.get();
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsfiltersSourceAlphacpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/filters/SourceAlpha.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/filters/SourceAlpha.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/filters/SourceAlpha.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -51,14 +51,14 @@
</span><span class="cx"> ImageBuffer* resultImage = createImageBufferResult();
</span><span class="cx"> if (!resultImage)
</span><span class="cx"> return;
</span><del>- GraphicsContext* filterContext = resultImage->context();
</del><ins>+ GraphicsContext& filterContext = resultImage->context();
</ins><span class="cx">
</span><span class="cx"> ImageBuffer* imageBuffer = inputEffect(0)->asImageBuffer();
</span><span class="cx"> ASSERT(imageBuffer);
</span><span class="cx">
</span><span class="cx"> FloatRect imageRect(FloatPoint(), absolutePaintRect().size());
</span><del>- filterContext->fillRect(imageRect, Color::black, ColorSpaceDeviceRGB);
- filterContext->drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, IntPoint(), CompositeDestinationIn);
</del><ins>+ filterContext.fillRect(imageRect, Color::black, ColorSpaceDeviceRGB);
+ filterContext.drawImageBuffer(imageBuffer, ColorSpaceDeviceRGB, IntPoint(), CompositeDestinationIn);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void SourceAlpha::dump()
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsfiltersSourceGraphiccpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/filters/SourceGraphic.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/filters/SourceGraphic.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/filters/SourceGraphic.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -54,7 +54,7 @@
</span><span class="cx"> if (!resultImage || !filter.sourceImage())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- resultImage->context()->drawImageBuffer(filter.sourceImage(), ColorSpaceDeviceRGB, IntPoint());
</del><ins>+ resultImage->context().drawImageBuffer(filter.sourceImage(), ColorSpaceDeviceRGB, IntPoint());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void SourceGraphic::dump()
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerMediaPlayerPrivateGStreamerBasecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -502,14 +502,14 @@
</span><span class="cx"> m_size = size;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MediaPlayerPrivateGStreamerBase::paint(GraphicsContext* context, const FloatRect& rect)
</del><ins>+void MediaPlayerPrivateGStreamerBase::paint(GraphicsContext& context, const FloatRect& rect)
</ins><span class="cx"> {
</span><span class="cx"> #if USE(TEXTURE_MAPPER_GL) && !USE(COORDINATED_GRAPHICS)
</span><span class="cx"> if (client())
</span><span class="cx"> return;
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>- if (context->paintingDisabled())
</del><ins>+ if (context.paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> if (!m_player->visible())
</span><span class="lines">@@ -523,7 +523,7 @@
</span><span class="cx"> if (!gstImage)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- context->drawImage(reinterpret_cast<Image*>(gstImage->image().get()), ColorSpaceSRGB,
</del><ins>+ context.drawImage(reinterpret_cast<Image*>(gstImage->image().get()), ColorSpaceSRGB,
</ins><span class="cx"> rect, gstImage->rect(), CompositeCopy);
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsgstreamerMediaPlayerPrivateGStreamerBaseh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -82,7 +82,7 @@
</span><span class="cx"> void sizeChanged();
</span><span class="cx">
</span><span class="cx"> void triggerRepaint(GstSample*);
</span><del>- void paint(GraphicsContext*, const FloatRect&);
</del><ins>+ void paint(GraphicsContext&, const FloatRect&);
</ins><span class="cx">
</span><span class="cx"> virtual bool hasSingleSecurityOrigin() const { return true; }
</span><span class="cx"> virtual float maxTimeLoaded() const { return 0.0; }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsmacGraphicsContextMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/mac/GraphicsContextMac.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/mac/GraphicsContextMac.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/mac/GraphicsContextMac.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -256,7 +256,7 @@
</span><span class="cx">
</span><span class="cx"> // Draw underline.
</span><span class="cx"> #if !PLATFORM(IOS)
</span><del>- LocalCurrentGraphicsContext localContext(this);
</del><ins>+ LocalCurrentGraphicsContext localContext(*this);
</ins><span class="cx"> NSGraphicsContext *currentContext = [NSGraphicsContext currentContext];
</span><span class="cx"> CGContextRef context = (CGContextRef)[currentContext graphicsPort];
</span><span class="cx"> #else
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsmacIconMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/mac/IconMac.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/mac/IconMac.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/mac/IconMac.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -77,7 +77,7 @@
</span><span class="cx"> if (context.paintingDisabled())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- LocalCurrentGraphicsContext localCurrentGC(&context);
</del><ins>+ LocalCurrentGraphicsContext localCurrentGC(context);
</ins><span class="cx">
</span><span class="cx"> [m_nsImage drawInRect:rect fromRect:NSMakeRect(0, 0, [m_nsImage size].width, [m_nsImage size].height) operation:NSCompositeSourceOver fraction:1.0f];
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsmacMediaPlayerPrivateQTKith"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -127,8 +127,8 @@
</span><span class="cx">
</span><span class="cx"> virtual bool hasAvailableVideoFrame() const override;
</span><span class="cx">
</span><del>- void paint(GraphicsContext*, const FloatRect&) override;
- void paintCurrentFrameInContext(GraphicsContext*, const FloatRect&) override;
</del><ins>+ void paint(GraphicsContext&, const FloatRect&) override;
+ void paintCurrentFrameInContext(GraphicsContext&, const FloatRect&) override;
</ins><span class="cx"> virtual void prepareForRendering() override;
</span><span class="cx">
</span><span class="cx"> bool supportsAcceleratedRendering() const override;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsmacMediaPlayerPrivateQTKitmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1184,7 +1184,7 @@
</span><span class="cx"> m_player->repaint();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MediaPlayerPrivateQTKit::paintCurrentFrameInContext(GraphicsContext* context, const FloatRect& r)
</del><ins>+void MediaPlayerPrivateQTKit::paintCurrentFrameInContext(GraphicsContext& context, const FloatRect& r)
</ins><span class="cx"> {
</span><span class="cx"> id qtVideoRenderer = m_qtVideoRenderer.get();
</span><span class="cx"> if (!qtVideoRenderer && currentRenderingMode() == MediaRenderingMovieLayer) {
</span><span class="lines">@@ -1197,9 +1197,9 @@
</span><span class="cx"> paint(context, r);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MediaPlayerPrivateQTKit::paint(GraphicsContext* context, const FloatRect& r)
</del><ins>+void MediaPlayerPrivateQTKit::paint(GraphicsContext& context, const FloatRect& r)
</ins><span class="cx"> {
</span><del>- if (context->paintingDisabled() || m_hasUnsupportedTracks)
</del><ins>+ if (context.paintingDisabled() || m_hasUnsupportedTracks)
</ins><span class="cx"> return;
</span><span class="cx"> id qtVideoRenderer = m_qtVideoRenderer.get();
</span><span class="cx"> if (!qtVideoRenderer)
</span><span class="lines">@@ -1211,12 +1211,12 @@
</span><span class="cx"> FloatSize scaleFactor(1.0f, -1.0f);
</span><span class="cx"> FloatRect paintRect(FloatPoint(), r.size());
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context);
- context->translate(r.x(), r.y() + r.height());
- context->scale(scaleFactor);
- context->setImageInterpolationQuality(InterpolationLow);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
+ context.translate(r.x(), r.y() + r.height());
+ context.scale(scaleFactor);
+ context.setImageInterpolationQuality(InterpolationLow);
</ins><span class="cx">
</span><del>- newContext = [NSGraphicsContext graphicsContextWithGraphicsPort:context->platformContext() flipped:NO];
</del><ins>+ newContext = [NSGraphicsContext graphicsContextWithGraphicsPort:context.platformContext() flipped:NO];
</ins><span class="cx">
</span><span class="cx"> [NSGraphicsContext saveGraphicsState];
</span><span class="cx"> [NSGraphicsContext setCurrentContext:newContext];
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsmacPDFDocumentImageMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/mac/PDFDocumentImageMac.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/mac/PDFDocumentImageMac.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/mac/PDFDocumentImageMac.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -69,19 +69,19 @@
</span><span class="cx"> return [m_document pageCount];
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void PDFDocumentImage::drawPDFPage(GraphicsContext* context)
</del><ins>+void PDFDocumentImage::drawPDFPage(GraphicsContext& context)
</ins><span class="cx"> {
</span><span class="cx"> LocalCurrentGraphicsContext localCurrentContext(context);
</span><span class="cx">
</span><span class="cx"> // These states can be mutated by PDFKit but are not saved
</span><span class="cx"> // on the context's state stack. (<rdar://problem/14951759>)
</span><del>- bool allowsSmoothing = CGContextGetAllowsFontSmoothing(context->platformContext());
- bool allowsSubpixelQuantization = CGContextGetAllowsFontSubpixelQuantization(context->platformContext());
</del><ins>+ bool allowsSmoothing = CGContextGetAllowsFontSmoothing(context.platformContext());
+ bool allowsSubpixelQuantization = CGContextGetAllowsFontSubpixelQuantization(context.platformContext());
</ins><span class="cx">
</span><span class="cx"> [[m_document pageAtIndex:0] drawWithBox:kPDFDisplayBoxCropBox];
</span><span class="cx">
</span><del>- CGContextSetAllowsFontSmoothing(context->platformContext(), allowsSmoothing);
- CGContextSetAllowsFontSubpixelQuantization(context->platformContext(), allowsSubpixelQuantization);
</del><ins>+ CGContextSetAllowsFontSmoothing(context.platformContext(), allowsSmoothing);
+ CGContextSetAllowsFontSubpixelQuantization(context.platformContext(), allowsSubpixelQuantization);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsopenglGraphicsContext3DOpenGLCommoncpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -169,8 +169,7 @@
</span><span class="cx"> paintToCanvas(pixels.get(), m_currentWidth, m_currentHeight,
</span><span class="cx"> imageBuffer->internalSize().width(), imageBuffer->internalSize().height(), imageBuffer->context());
</span><span class="cx"> #else
</span><del>- paintToCanvas(pixels.get(), m_currentWidth, m_currentHeight,
- imageBuffer->internalSize().width(), imageBuffer->internalSize().height(), imageBuffer->context()->platformContext());
</del><ins>+ paintToCanvas(pixels.get(), m_currentWidth, m_currentHeight, imageBuffer->internalSize().width(), imageBuffer->internalSize().height(), imageBuffer->context().platformContext());
</ins><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> #if PLATFORM(IOS)
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicstexmapBitmapTexturecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/texmap/BitmapTexture.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/texmap/BitmapTexture.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/texmap/BitmapTexture.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -40,14 +40,14 @@
</span><span class="cx"> if (!imageBuffer)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- GraphicsContext* context = imageBuffer->context();
- context->setImageInterpolationQuality(textureMapper->imageInterpolationQuality());
- context->setTextDrawingMode(textureMapper->textDrawingMode());
</del><ins>+ GraphicsContext& context = imageBuffer->context();
+ context.setImageInterpolationQuality(textureMapper->imageInterpolationQuality());
+ context.setTextDrawingMode(textureMapper->textDrawingMode());
</ins><span class="cx">
</span><span class="cx"> IntRect sourceRect(targetRect);
</span><span class="cx"> sourceRect.setLocation(offset);
</span><del>- context->translate(-offset.x(), -offset.y());
- sourceLayer->paintGraphicsLayerContents(*context, sourceRect);
</del><ins>+ context.translate(-offset.x(), -offset.y());
+ sourceLayer->paintGraphicsLayerContents(context, sourceRect);
</ins><span class="cx">
</span><span class="cx"> RefPtr<Image> image = imageBuffer->copyImage(DontCopyBackingStore);
</span><span class="cx"> if (!image)
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicswinFontCGWincpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/win/FontCGWin.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/win/FontCGWin.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/win/FontCGWin.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -127,25 +127,25 @@
</span><span class="cx"> return path;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FontCascade::drawGlyphs(GraphicsContext* graphicsContext, const Font* font, const GlyphBuffer& glyphBuffer,
</del><ins>+void FontCascade::drawGlyphs(GraphicsContext& graphicsContext, const Font& font, const GlyphBuffer& glyphBuffer,
</ins><span class="cx"> int from, int numGlyphs, const FloatPoint& point) const
</span><span class="cx"> {
</span><del>- CGContextRef cgContext = graphicsContext->platformContext();
</del><ins>+ CGContextRef cgContext = graphicsContext.platformContext();
</ins><span class="cx"> bool shouldUseFontSmoothing = WebCoreShouldUseFontSmoothing();
</span><span class="cx">
</span><span class="cx"> switch(fontDescription().fontSmoothing()) {
</span><span class="cx"> case Antialiased: {
</span><del>- graphicsContext->setShouldAntialias(true);
</del><ins>+ graphicsContext.setShouldAntialias(true);
</ins><span class="cx"> shouldUseFontSmoothing = false;
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="cx"> case SubpixelAntialiased: {
</span><del>- graphicsContext->setShouldAntialias(true);
</del><ins>+ graphicsContext.setShouldAntialias(true);
</ins><span class="cx"> shouldUseFontSmoothing = true;
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="cx"> case NoSmoothing: {
</span><del>- graphicsContext->setShouldAntialias(false);
</del><ins>+ graphicsContext.setShouldAntialias(false);
</ins><span class="cx"> shouldUseFontSmoothing = false;
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="lines">@@ -159,7 +159,7 @@
</span><span class="cx">
</span><span class="cx"> uint32_t oldFontSmoothingStyle = wkSetFontSmoothingStyle(cgContext, shouldUseFontSmoothing);
</span><span class="cx">
</span><del>- const FontPlatformData& platformData = font->platformData();
</del><ins>+ const FontPlatformData& platformData = font.platformData();
</ins><span class="cx">
</span><span class="cx"> CGContextSetFont(cgContext, platformData.cgFont());
</span><span class="cx">
</span><span class="lines">@@ -178,43 +178,43 @@
</span><span class="cx"> FloatSize translation = glyphBuffer.offsetAt(from);
</span><span class="cx">
</span><span class="cx"> CGContextSetFontSize(cgContext, platformData.size());
</span><del>- wkSetCGContextFontRenderingStyle(cgContext, font->isSystemFont(), false, font->platformData().useGDI());
</del><ins>+ wkSetCGContextFontRenderingStyle(cgContext, font.isSystemFont(), false, font.platformData().useGDI());
</ins><span class="cx">
</span><span class="cx"> FloatSize shadowOffset;
</span><span class="cx"> float shadowBlur;
</span><span class="cx"> Color shadowColor;
</span><span class="cx"> ColorSpace shadowColorSpace;
</span><del>- graphicsContext->getShadow(shadowOffset, shadowBlur, shadowColor, shadowColorSpace);
</del><ins>+ graphicsContext.getShadow(shadowOffset, shadowBlur, shadowColor, shadowColorSpace);
</ins><span class="cx">
</span><del>- bool hasSimpleShadow = graphicsContext->textDrawingMode() == TextModeFill && shadowColor.isValid() && !shadowBlur && (!graphicsContext->shadowsIgnoreTransforms() || graphicsContext->getCTM().isIdentityOrTranslationOrFlipped());
</del><ins>+ bool hasSimpleShadow = graphicsContext.textDrawingMode() == TextModeFill && shadowColor.isValid() && !shadowBlur && (!graphicsContext.shadowsIgnoreTransforms() || graphicsContext.getCTM().isIdentityOrTranslationOrFlipped());
</ins><span class="cx"> if (hasSimpleShadow) {
</span><span class="cx"> // Paint simple shadows ourselves instead of relying on CG shadows, to avoid losing subpixel antialiasing.
</span><del>- graphicsContext->clearShadow();
- Color fillColor = graphicsContext->fillColor();
- ColorSpace fillColorSpace = graphicsContext->fillColorSpace();
</del><ins>+ graphicsContext.clearShadow();
+ Color fillColor = graphicsContext.fillColor();
+ ColorSpace fillColorSpace = graphicsContext.fillColorSpace();
</ins><span class="cx"> Color shadowFillColor(shadowColor.red(), shadowColor.green(), shadowColor.blue(), shadowColor.alpha() * fillColor.alpha() / 255);
</span><del>- graphicsContext->setFillColor(shadowFillColor, shadowColorSpace);
</del><ins>+ graphicsContext.setFillColor(shadowFillColor, shadowColorSpace);
</ins><span class="cx"> float shadowTextX = point.x() + translation.width() + shadowOffset.width();
</span><span class="cx"> // If shadows are ignoring transforms, then we haven't applied the Y coordinate flip yet, so down is negative.
</span><del>- float shadowTextY = point.y() + translation.height() + shadowOffset.height() * (graphicsContext->shadowsIgnoreTransforms() ? -1 : 1);
</del><ins>+ float shadowTextY = point.y() + translation.height() + shadowOffset.height() * (graphicsContext.shadowsIgnoreTransforms() ? -1 : 1);
</ins><span class="cx"> CGContextSetTextPosition(cgContext, shadowTextX, shadowTextY);
</span><span class="cx"> CGContextShowGlyphsWithAdvances(cgContext, glyphBuffer.glyphs(from), static_cast<const CGSize*>(glyphBuffer.advances(from)), numGlyphs);
</span><del>- if (font->syntheticBoldOffset()) {
- CGContextSetTextPosition(cgContext, point.x() + translation.width() + shadowOffset.width() + font->syntheticBoldOffset(), point.y() + translation.height() + shadowOffset.height());
</del><ins>+ if (font.syntheticBoldOffset()) {
+ CGContextSetTextPosition(cgContext, point.x() + translation.width() + shadowOffset.width() + font.syntheticBoldOffset(), point.y() + translation.height() + shadowOffset.height());
</ins><span class="cx"> CGContextShowGlyphsWithAdvances(cgContext, glyphBuffer.glyphs(from), static_cast<const CGSize*>(glyphBuffer.advances(from)), numGlyphs);
</span><span class="cx"> }
</span><del>- graphicsContext->setFillColor(fillColor, fillColorSpace);
</del><ins>+ graphicsContext.setFillColor(fillColor, fillColorSpace);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> CGContextSetTextPosition(cgContext, point.x() + translation.width(), point.y() + translation.height());
</span><span class="cx"> CGContextShowGlyphsWithAdvances(cgContext, glyphBuffer.glyphs(from), static_cast<const CGSize*>(glyphBuffer.advances(from)), numGlyphs);
</span><del>- if (font->syntheticBoldOffset()) {
- CGContextSetTextPosition(cgContext, point.x() + translation.width() + font->syntheticBoldOffset(), point.y() + translation.height());
</del><ins>+ if (font.syntheticBoldOffset()) {
+ CGContextSetTextPosition(cgContext, point.x() + translation.width() + font.syntheticBoldOffset(), point.y() + translation.height());
</ins><span class="cx"> CGContextShowGlyphsWithAdvances(cgContext, glyphBuffer.glyphs(from), static_cast<const CGSize*>(glyphBuffer.advances(from)), numGlyphs);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (hasSimpleShadow)
</span><del>- graphicsContext->setShadow(shadowOffset, shadowBlur, shadowColor, shadowColorSpace);
</del><ins>+ graphicsContext.setShadow(shadowOffset, shadowBlur, shadowColor, shadowColorSpace);
</ins><span class="cx">
</span><span class="cx"> wkRestoreFontSmoothingStyle(cgContext, oldFontSmoothingStyle);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicswinFontWincpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/win/FontWin.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/win/FontWin.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/win/FontWin.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -91,7 +91,7 @@
</span><span class="cx"> return beforeWidth;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-float FontCascade::drawComplexText(GraphicsContext* context, const TextRun& run, const FloatPoint& point, int from, int to) const
</del><ins>+float FontCascade::drawComplexText(GraphicsContext& context, const TextRun& run, const FloatPoint& point, int from, int to) const
</ins><span class="cx"> {
</span><span class="cx"> // This glyph buffer holds our glyphs + advances + font data for each glyph.
</span><span class="cx"> GlyphBuffer glyphBuffer;
</span><span class="lines">@@ -108,7 +108,7 @@
</span><span class="cx"> return startPoint.x() - startX;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FontCascade::drawEmphasisMarksForComplexText(GraphicsContext* context, const TextRun& run, const AtomicString& mark, const FloatPoint& point, int from, int to) const
</del><ins>+void FontCascade::drawEmphasisMarksForComplexText(GraphicsContext& context, const TextRun& run, const AtomicString& mark, const FloatPoint& point, int from, int to) const
</ins><span class="cx"> {
</span><span class="cx"> GlyphBuffer glyphBuffer;
</span><span class="cx"> float initialAdvance = getGlyphsAndAdvancesForComplexText(run, from, to, glyphBuffer, ForTextEmphasis);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicswinIconWincpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/win/IconWin.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/win/IconWin.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/win/IconWin.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -78,7 +78,7 @@
</span><span class="cx"> if (context.paintingDisabled())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- LocalWindowsContext windowContext(&context, enclosingIntRect(r));
</del><ins>+ LocalWindowsContext windowContext(context, enclosingIntRect(r));
</ins><span class="cx"> DrawIconEx(windowContext.hdc(), r.x(), r.y(), m_hIcon, r.width(), r.height(), 0, 0, DI_NORMAL);
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicswinImageCGWincpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/win/ImageCGWin.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/win/ImageCGWin.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/win/ImageCGWin.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -76,9 +76,9 @@
</span><span class="cx">
</span><span class="cx"> FloatSize imageSize = BitmapImage::size();
</span><span class="cx"> if (size)
</span><del>- drawFrameMatchingSourceSize(&gc, FloatRect(0.0f, 0.0f, bmpInfo.bmWidth, bmpInfo.bmHeight), *size, ColorSpaceDeviceRGB, CompositeCopy);
</del><ins>+ drawFrameMatchingSourceSize(gc, FloatRect(0.0f, 0.0f, bmpInfo.bmWidth, bmpInfo.bmHeight), *size, ColorSpaceDeviceRGB, CompositeCopy);
</ins><span class="cx"> else
</span><del>- draw(&gc, FloatRect(0.0f, 0.0f, bmpInfo.bmWidth, bmpInfo.bmHeight), FloatRect(0.0f, 0.0f, imageSize.width(), imageSize.height()), ColorSpaceDeviceRGB, CompositeCopy, BlendModeNormal, ImageOrientationDescription());
</del><ins>+ draw(gc, FloatRect(0.0f, 0.0f, bmpInfo.bmWidth, bmpInfo.bmHeight), FloatRect(0.0f, 0.0f, imageSize.width(), imageSize.height()), ColorSpaceDeviceRGB, CompositeCopy, BlendModeNormal, ImageOrientationDescription());
</ins><span class="cx">
</span><span class="cx"> // Do cleanup
</span><span class="cx"> CGContextRelease(cgContext);
</span><span class="lines">@@ -86,7 +86,7 @@
</span><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void BitmapImage::drawFrameMatchingSourceSize(GraphicsContext* ctxt, const FloatRect& dstRect, const IntSize& srcSize, ColorSpace styleColorSpace, CompositeOperator compositeOp)
</del><ins>+void BitmapImage::drawFrameMatchingSourceSize(GraphicsContext& ctxt, const FloatRect& dstRect, const IntSize& srcSize, ColorSpace styleColorSpace, CompositeOperator compositeOp)
</ins><span class="cx"> {
</span><span class="cx"> size_t frames = frameCount();
</span><span class="cx"> for (size_t i = 0; i < frames; ++i) {
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicswinImageCairoWincpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/win/ImageCairoWin.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/win/ImageCairoWin.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/win/ImageCairoWin.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -79,7 +79,7 @@
</span><span class="cx">
</span><span class="cx"> FloatSize imageSize = BitmapImage::size();
</span><span class="cx"> if (size)
</span><del>- drawFrameMatchingSourceSize(&gc, FloatRect(0.0f, 0.0f, bmpInfo.bmWidth, bmpInfo.bmHeight), *size, ColorSpaceDeviceRGB, CompositeCopy);
</del><ins>+ drawFrameMatchingSourceSize(gc, FloatRect(0.0f, 0.0f, bmpInfo.bmWidth, bmpInfo.bmHeight), *size, ColorSpaceDeviceRGB, CompositeCopy);
</ins><span class="cx"> else
</span><span class="cx"> draw(&gc, FloatRect(0.0f, 0.0f, bmpInfo.bmWidth, bmpInfo.bmHeight), FloatRect(0.0f, 0.0f, imageSize.width(), imageSize.height()), ColorSpaceDeviceRGB, CompositeCopy, BlendModeNormal, ImageOrientationDescription());
</span><span class="cx">
</span><span class="lines">@@ -89,7 +89,7 @@
</span><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void BitmapImage::drawFrameMatchingSourceSize(GraphicsContext* ctxt, const FloatRect& dstRect, const IntSize& srcSize, ColorSpace styleColorSpace, CompositeOperator compositeOp)
</del><ins>+void BitmapImage::drawFrameMatchingSourceSize(GraphicsContext& ctxt, const FloatRect& dstRect, const IntSize& srcSize, ColorSpace styleColorSpace, CompositeOperator compositeOp)
</ins><span class="cx"> {
</span><span class="cx"> size_t frames = frameCount();
</span><span class="cx"> for (size_t i = 0; i < frames; ++i) {
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicswinLocalWindowsContexth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/win/LocalWindowsContext.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/win/LocalWindowsContext.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/graphics/win/LocalWindowsContext.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -34,24 +34,24 @@
</span><span class="cx"> class LocalWindowsContext {
</span><span class="cx"> WTF_MAKE_NONCOPYABLE(LocalWindowsContext);
</span><span class="cx"> public:
</span><del>- LocalWindowsContext(GraphicsContext* graphicsContext, const IntRect& rect, bool supportAlphaBlend = true, bool mayCreateBitmap = true)
</del><ins>+ LocalWindowsContext(GraphicsContext& graphicsContext, const IntRect& rect, bool supportAlphaBlend = true, bool mayCreateBitmap = true)
</ins><span class="cx"> : m_graphicsContext(graphicsContext)
</span><span class="cx"> , m_rect(rect)
</span><span class="cx"> , m_supportAlphaBlend(supportAlphaBlend)
</span><span class="cx"> , m_mayCreateBitmap(mayCreateBitmap)
</span><span class="cx"> {
</span><del>- m_hdc = m_graphicsContext->getWindowsContext(m_rect, m_supportAlphaBlend, m_mayCreateBitmap);
</del><ins>+ m_hdc = m_graphicsContext.getWindowsContext(m_rect, m_supportAlphaBlend, m_mayCreateBitmap);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> ~LocalWindowsContext()
</span><span class="cx"> {
</span><del>- m_graphicsContext->releaseWindowsContext(m_hdc, m_rect, m_supportAlphaBlend, m_mayCreateBitmap);
</del><ins>+ m_graphicsContext.releaseWindowsContext(m_hdc, m_rect, m_supportAlphaBlend, m_mayCreateBitmap);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> HDC hdc() const { return m_hdc; }
</span><span class="cx">
</span><span class="cx"> private:
</span><del>- GraphicsContext* m_graphicsContext;
</del><ins>+ GraphicsContext& m_graphicsContext;
</ins><span class="cx"> HDC m_hdc;
</span><span class="cx"> IntRect m_rect;
</span><span class="cx"> bool m_supportAlphaBlend;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgtkWidgetGtkcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/gtk/WidgetGtk.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/gtk/WidgetGtk.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/gtk/WidgetGtk.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -80,7 +80,7 @@
</span><span class="cx"> gtk_widget_hide(platformWidget());
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void Widget::paint(GraphicsContext*, const IntRect&)
</del><ins>+void Widget::paint(GraphicsContext&, const IntRect&)
</ins><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformiosWidgetIOSmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ios/WidgetIOS.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ios/WidgetIOS.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/ios/WidgetIOS.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -141,14 +141,14 @@
</span><span class="cx"> return view;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void Widget::paint(GraphicsContext* p, const IntRect& r)
</del><ins>+void Widget::paint(GraphicsContext& p, const IntRect& r)
</ins><span class="cx"> {
</span><del>- if (p->paintingDisabled())
</del><ins>+ if (p.paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> NSView *view = getOuterView();
</span><span class="cx">
</span><del>- CGContextRef cgContext = p->platformContext();
</del><ins>+ CGContextRef cgContext = p.platformContext();
</ins><span class="cx"> CGContextSaveGState(cgContext);
</span><span class="cx">
</span><span class="cx"> NSRect viewFrame = [view frame];
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformmacDragImageMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/mac/DragImageMac.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/mac/DragImageMac.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/mac/DragImageMac.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -234,7 +234,7 @@
</span><span class="cx"> [[textColor colorUsingColorSpaceName:NSDeviceRGBColorSpace] getRed:&red green:&green blue:&blue alpha:&alpha];
</span><span class="cx"> graphicsContext.setFillColor(makeRGBA(red * 255, green * 255, blue * 255, alpha * 255), ColorSpaceDeviceRGB);
</span><span class="cx">
</span><del>- webCoreFont.drawText(&graphicsContext, run, FloatPoint(point.x, (flipped ? point.y : (-1 * point.y))));
</del><ins>+ webCoreFont.drawText(graphicsContext, run, FloatPoint(point.x, (flipped ? point.y : (-1 * point.y))));
</ins><span class="cx">
</span><span class="cx"> if (!flipped)
</span><span class="cx"> CGContextScaleCTM(cgContext, 1, -1);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformmacLocalCurrentGraphicsContexth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/mac/LocalCurrentGraphicsContext.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/mac/LocalCurrentGraphicsContext.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/mac/LocalCurrentGraphicsContext.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -29,11 +29,11 @@
</span><span class="cx"> class LocalCurrentGraphicsContext {
</span><span class="cx"> WTF_MAKE_NONCOPYABLE(LocalCurrentGraphicsContext);
</span><span class="cx"> public:
</span><del>- LocalCurrentGraphicsContext(GraphicsContext* graphicsContext);
</del><ins>+ LocalCurrentGraphicsContext(GraphicsContext&);
</ins><span class="cx"> ~LocalCurrentGraphicsContext();
</span><span class="cx"> CGContextRef cgContext();
</span><span class="cx"> private:
</span><del>- GraphicsContext* m_savedGraphicsContext;
</del><ins>+ GraphicsContext& m_savedGraphicsContext;
</ins><span class="cx"> NSGraphicsContext* m_savedNSGraphicsContext;
</span><span class="cx"> bool m_didSetGraphicsContext;
</span><span class="cx"> };
</span><span class="lines">@@ -41,8 +41,8 @@
</span><span class="cx"> class ContextContainer {
</span><span class="cx"> WTF_MAKE_NONCOPYABLE(ContextContainer);
</span><span class="cx"> public:
</span><del>- ContextContainer(GraphicsContext* graphicsContext)
- : m_graphicsContext(graphicsContext->platformContext())
</del><ins>+ ContextContainer(GraphicsContext& graphicsContext)
+ : m_graphicsContext(graphicsContext.platformContext())
</ins><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformmacLocalCurrentGraphicsContextmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/mac/LocalCurrentGraphicsContext.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/mac/LocalCurrentGraphicsContext.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/mac/LocalCurrentGraphicsContext.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -24,11 +24,11 @@
</span><span class="cx">
</span><span class="cx"> namespace WebCore {
</span><span class="cx">
</span><del>-LocalCurrentGraphicsContext::LocalCurrentGraphicsContext(GraphicsContext* graphicsContext)
- : m_didSetGraphicsContext(false)
</del><ins>+LocalCurrentGraphicsContext::LocalCurrentGraphicsContext(GraphicsContext& graphicsContext)
+ : m_savedGraphicsContext(graphicsContext)
+ , m_didSetGraphicsContext(false)
</ins><span class="cx"> {
</span><del>- m_savedGraphicsContext = graphicsContext;
- graphicsContext->save();
</del><ins>+ graphicsContext.save();
</ins><span class="cx">
</span><span class="cx"> CGContextRef cgContext = this->cgContext();
</span><span class="cx"> if (cgContext == [[NSGraphicsContext currentContext] graphicsPort]) {
</span><span class="lines">@@ -49,12 +49,12 @@
</span><span class="cx"> [m_savedNSGraphicsContext release];
</span><span class="cx"> }
</span><span class="cx">
</span><del>- m_savedGraphicsContext->restore();
</del><ins>+ m_savedGraphicsContext.restore();
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> CGContextRef LocalCurrentGraphicsContext::cgContext()
</span><span class="cx"> {
</span><del>- CGContextRef cgContext = m_savedGraphicsContext->platformContext();
</del><ins>+ CGContextRef cgContext = m_savedGraphicsContext.platformContext();
</ins><span class="cx"> return cgContext;
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformmacScrollbarThemeMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/mac/ScrollbarThemeMac.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/mac/ScrollbarThemeMac.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/mac/ScrollbarThemeMac.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -513,7 +513,7 @@
</span><span class="cx"> GraphicsContextStateSaver stateSaver(context);
</span><span class="cx"> context.clip(damageRect);
</span><span class="cx"> context.translate(scrollbar.frameRect().x(), scrollbar.frameRect().y());
</span><del>- LocalCurrentGraphicsContext localContext(&context);
</del><ins>+ LocalCurrentGraphicsContext localContext(context);
</ins><span class="cx"> scrollbarPainterPaint(scrollbarMap()->get(&scrollbar).get(), scrollbar.enabled());
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformmacThemeMach"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/mac/ThemeMac.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/mac/ThemeMac.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/mac/ThemeMac.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -52,13 +52,13 @@
</span><span class="cx">
</span><span class="cx"> virtual bool controlRequiresPreWhiteSpace(ControlPart part) const override { return part == PushButtonPart; }
</span><span class="cx">
</span><del>- virtual void paint(ControlPart, ControlStates&, GraphicsContext*, const FloatRect&, float zoomFactor, ScrollView*, float deviceScaleFactor, float pageScaleFactor) override;
</del><ins>+ virtual void paint(ControlPart, ControlStates&, GraphicsContext&, const FloatRect&, float zoomFactor, ScrollView*, float deviceScaleFactor, float pageScaleFactor) override;
</ins><span class="cx"> virtual void inflateControlPaintRect(ControlPart, const ControlStates&, FloatRect&, float zoomFactor) const override;
</span><span class="cx">
</span><span class="cx"> // FIXME: Once RenderThemeMac is converted over to use Theme then this can be internal to ThemeMac.
</span><span class="cx"> static NSView* ensuredView(ScrollView*, const ControlStates&, bool useUnparentedView = false);
</span><span class="cx"> static void setFocusRingClipRect(const FloatRect&);
</span><del>- static bool drawCellOrFocusRingWithViewIntoContext(NSCell*, GraphicsContext*, const FloatRect&, NSView*, bool /* drawButtonCell */, bool /* drawFocusRing */, bool /* useImageBuffer */, float /* deviceScaleFactor */);
</del><ins>+ static bool drawCellOrFocusRingWithViewIntoContext(NSCell*, GraphicsContext&, const FloatRect&, NSView*, bool /* drawButtonCell */, bool /* drawFocusRing */, bool /* useImageBuffer */, float /* deviceScaleFactor */);
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> } // namespace WebCore
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformmacThemeMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/mac/ThemeMac.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/mac/ThemeMac.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/mac/ThemeMac.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -376,7 +376,7 @@
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static void paintToggleButton(ControlPart buttonType, ControlStates& controlStates, GraphicsContext* context, const FloatRect& zoomedRect, float zoomFactor, ScrollView* scrollView, float deviceScaleFactor, float pageScaleFactor)
</del><ins>+static void paintToggleButton(ControlPart buttonType, ControlStates& controlStates, GraphicsContext& context, const FloatRect& zoomedRect, float zoomFactor, ScrollView* scrollView, float deviceScaleFactor, float pageScaleFactor)
</ins><span class="cx"> {
</span><span class="cx"> BEGIN_BLOCK_OBJC_EXCEPTIONS
</span><span class="cx">
</span><span class="lines">@@ -400,7 +400,7 @@
</span><span class="cx"> }
</span><span class="cx"> controlStates.setDirty(false);
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
</ins><span class="cx">
</span><span class="cx"> NSControlSize controlSize = [toggleButtonCell controlSize];
</span><span class="cx"> IntSize zoomedSize = buttonType == CheckboxPart ? checkboxSizes()[controlSize] : radioSizes()[controlSize];
</span><span class="lines">@@ -412,9 +412,9 @@
</span><span class="cx"> if (zoomFactor != 1.0f) {
</span><span class="cx"> inflatedRect.setWidth(inflatedRect.width() / zoomFactor);
</span><span class="cx"> inflatedRect.setHeight(inflatedRect.height() / zoomFactor);
</span><del>- context->translate(inflatedRect.x(), inflatedRect.y());
- context->scale(FloatSize(zoomFactor, zoomFactor));
- context->translate(-inflatedRect.x(), -inflatedRect.y());
</del><ins>+ context.translate(inflatedRect.x(), inflatedRect.y());
+ context.scale(FloatSize(zoomFactor, zoomFactor));
+ context.translate(-inflatedRect.x(), -inflatedRect.y());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> LocalCurrentGraphicsContext localContext(context);
</span><span class="lines">@@ -431,11 +431,11 @@
</span><span class="cx">
</span><span class="cx"> #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101000
</span><span class="cx"> if ([toggleButtonCell _stateAnimationRunning]) {
</span><del>- context->translate(inflatedRect.x(), inflatedRect.y());
- context->scale(FloatSize(1, -1));
- context->translate(0, -inflatedRect.height());
</del><ins>+ context.translate(inflatedRect.x(), inflatedRect.y());
+ context.scale(FloatSize(1, -1));
+ context.translate(0, -inflatedRect.height());
</ins><span class="cx">
</span><del>- [toggleButtonCell _renderCurrentAnimationFrameInContext:context->platformContext() atLocation:NSMakePoint(0, 0)];
</del><ins>+ [toggleButtonCell _renderCurrentAnimationFrameInContext:context.platformContext() atLocation:NSMakePoint(0, 0)];
</ins><span class="cx"> if (![toggleButtonCell _stateAnimationRunning] && isCellFocused)
</span><span class="cx"> needsRepaint = ThemeMac::drawCellOrFocusRingWithViewIntoContext(toggleButtonCell.get(), context, inflatedRect, view, false, true, useImageBuffer, deviceScaleFactor);
</span><span class="cx"> } else
</span><span class="lines">@@ -520,14 +520,14 @@
</span><span class="cx"> return cell;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static void paintButton(ControlPart part, ControlStates& controlStates, GraphicsContext* context, const FloatRect& zoomedRect, float zoomFactor, ScrollView* scrollView, float deviceScaleFactor, float pageScaleFactor)
</del><ins>+static void paintButton(ControlPart part, ControlStates& controlStates, GraphicsContext& context, const FloatRect& zoomedRect, float zoomFactor, ScrollView* scrollView, float deviceScaleFactor, float pageScaleFactor)
</ins><span class="cx"> {
</span><span class="cx"> BEGIN_BLOCK_OBJC_EXCEPTIONS
</span><span class="cx">
</span><span class="cx"> // Determine the width and height needed for the control and prepare the cell for painting.
</span><span class="cx"> ControlStates::States states = controlStates.states();
</span><span class="cx"> NSButtonCell *buttonCell = button(part, controlStates, IntSize(zoomedRect.size()), zoomFactor);
</span><del>- GraphicsContextStateSaver stateSaver(*context);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
</ins><span class="cx">
</span><span class="cx"> NSControlSize controlSize = [buttonCell controlSize];
</span><span class="cx"> IntSize zoomedSize = buttonSizes()[controlSize];
</span><span class="lines">@@ -547,9 +547,9 @@
</span><span class="cx"> if (zoomFactor != 1.0f) {
</span><span class="cx"> inflatedRect.setWidth(inflatedRect.width() / zoomFactor);
</span><span class="cx"> inflatedRect.setHeight(inflatedRect.height() / zoomFactor);
</span><del>- context->translate(inflatedRect.x(), inflatedRect.y());
- context->scale(FloatSize(zoomFactor, zoomFactor));
- context->translate(-inflatedRect.x(), -inflatedRect.y());
</del><ins>+ context.translate(inflatedRect.x(), inflatedRect.y());
+ context.scale(FloatSize(zoomFactor, zoomFactor));
+ context.translate(-inflatedRect.x(), -inflatedRect.y());
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -599,7 +599,7 @@
</span><span class="cx"> return NSMiniControlSize;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static void paintStepper(ControlStates& states, GraphicsContext* context, const FloatRect& zoomedRect, float zoomFactor, ScrollView*)
</del><ins>+static void paintStepper(ControlStates& states, GraphicsContext& context, const FloatRect& zoomedRect, float zoomFactor, ScrollView*)
</ins><span class="cx"> {
</span><span class="cx"> // We don't use NSStepperCell because there are no ways to draw an
</span><span class="cx"> // NSStepperCell with the up button highlighted.
</span><span class="lines">@@ -617,13 +617,13 @@
</span><span class="cx"> drawInfo.kind = kThemeIncDecButton;
</span><span class="cx">
</span><span class="cx"> IntRect rect(zoomedRect);
</span><del>- GraphicsContextStateSaver stateSaver(*context);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
</ins><span class="cx"> if (zoomFactor != 1.0f) {
</span><span class="cx"> rect.setWidth(rect.width() / zoomFactor);
</span><span class="cx"> rect.setHeight(rect.height() / zoomFactor);
</span><del>- context->translate(rect.x(), rect.y());
- context->scale(FloatSize(zoomFactor, zoomFactor));
- context->translate(-rect.x(), -rect.y());
</del><ins>+ context.translate(rect.x(), rect.y());
+ context.scale(FloatSize(zoomFactor, zoomFactor));
+ context.translate(-rect.x(), -rect.y());
</ins><span class="cx"> }
</span><span class="cx"> CGRect bounds(rect);
</span><span class="cx"> CGRect backgroundBounds;
</span><span class="lines">@@ -664,7 +664,7 @@
</span><span class="cx">
</span><span class="cx"> const float buttonFocusRectOutlineWidth = 3.0f;
</span><span class="cx">
</span><del>-bool ThemeMac::drawCellOrFocusRingWithViewIntoContext(NSCell* cell, GraphicsContext* context, const FloatRect& inflatedRect, NSView* view, bool drawButtonCell, bool drawFocusRing, bool useImageBuffer, float deviceScaleFactor)
</del><ins>+bool ThemeMac::drawCellOrFocusRingWithViewIntoContext(NSCell* cell, GraphicsContext& context, const FloatRect& inflatedRect, NSView* view, bool drawButtonCell, bool drawFocusRing, bool useImageBuffer, float deviceScaleFactor)
</ins><span class="cx"> {
</span><span class="cx"> ASSERT(drawButtonCell || drawFocusRing);
</span><span class="cx"> bool needsRepaint = false;
</span><span class="lines">@@ -679,7 +679,7 @@
</span><span class="cx"> if (drawFocusRing)
</span><span class="cx"> needsRepaint = drawCellFocusRing(cell, imageBufferDrawRect, view);
</span><span class="cx"> }
</span><del>- context->drawImageBuffer(imageBuffer.get(), ColorSpaceSRGB, inflatedRect.location() - FloatSize(buttonFocusRectOutlineWidth, buttonFocusRectOutlineWidth));
</del><ins>+ context.drawImageBuffer(imageBuffer.get(), ColorSpaceSRGB, inflatedRect.location() - FloatSize(buttonFocusRectOutlineWidth, buttonFocusRectOutlineWidth));
</ins><span class="cx"> return needsRepaint;
</span><span class="cx"> }
</span><span class="cx"> if (drawButtonCell)
</span><span class="lines">@@ -840,7 +840,7 @@
</span><span class="cx"> END_BLOCK_OBJC_EXCEPTIONS
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void ThemeMac::paint(ControlPart part, ControlStates& states, GraphicsContext* context, const FloatRect& zoomedRect, float zoomFactor, ScrollView* scrollView, float deviceScaleFactor, float pageScaleFactor)
</del><ins>+void ThemeMac::paint(ControlPart part, ControlStates& states, GraphicsContext& context, const FloatRect& zoomedRect, float zoomFactor, ScrollView* scrollView, float deviceScaleFactor, float pageScaleFactor)
</ins><span class="cx"> {
</span><span class="cx"> switch (part) {
</span><span class="cx"> case CheckboxPart:
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformmacWidgetMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/mac/WidgetMac.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/mac/WidgetMac.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/mac/WidgetMac.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -185,9 +185,9 @@
</span><span class="cx"> return view;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void Widget::paint(GraphicsContext* p, const IntRect& r)
</del><ins>+void Widget::paint(GraphicsContext& p, const IntRect& r)
</ins><span class="cx"> {
</span><del>- if (p->paintingDisabled())
</del><ins>+ if (p.paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx"> NSView *view = getOuterView();
</span><span class="cx">
</span><span class="lines">@@ -229,7 +229,7 @@
</span><span class="cx"> scrollView = 0;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- CGContextRef cgContext = p->platformContext();
</del><ins>+ CGContextRef cgContext = p.platformContext();
</ins><span class="cx"> ASSERT(cgContext == [currentContext graphicsPort]);
</span><span class="cx"> CGContextSaveGState(cgContext);
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformmockmediasourceMockMediaPlayerMediaSourcecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -180,7 +180,7 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void MockMediaPlayerMediaSource::paint(GraphicsContext*, const FloatRect&)
</del><ins>+void MockMediaPlayerMediaSource::paint(GraphicsContext&, const FloatRect&)
</ins><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformmockmediasourceMockMediaPlayerMediaSourceh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -77,7 +77,7 @@
</span><span class="cx"> virtual std::unique_ptr<PlatformTimeRanges> buffered() const override;
</span><span class="cx"> virtual bool didLoadingProgress() const override;
</span><span class="cx"> virtual void setSize(const IntSize&) override;
</span><del>- virtual void paint(GraphicsContext*, const FloatRect&) override;
</del><ins>+ virtual void paint(GraphicsContext&, const FloatRect&) override;
</ins><span class="cx"> virtual MediaTime currentMediaTime() const override;
</span><span class="cx"> virtual MediaTime durationMediaTime() const override;
</span><span class="cx"> virtual void seekWithTolerance(const MediaTime&, const MediaTime&, const MediaTime&) override;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformwinPopupMenuWincpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/win/PopupMenuWin.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/win/PopupMenuWin.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/win/PopupMenuWin.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -672,7 +672,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (m_scrollbar)
</span><del>- m_scrollbar->paint(&context, damageRect);
</del><ins>+ m_scrollbar->paint(context, damageRect);
</ins><span class="cx">
</span><span class="cx"> HWndDC hWndDC;
</span><span class="cx"> HDC localDC = hdc ? hdc : hWndDC.setHWnd(m_popup);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformwinScrollbarThemeWincpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/win/ScrollbarThemeWin.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/win/ScrollbarThemeWin.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/win/ScrollbarThemeWin.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -247,7 +247,7 @@
</span><span class="cx"> if (scrollbarTheme)
</span><span class="cx"> alphaBlend = IsThemeBackgroundPartiallyTransparent(scrollbarTheme, part, state);
</span><span class="cx">
</span><del>- LocalWindowsContext windowsContext(&context, rect, alphaBlend);
</del><ins>+ LocalWindowsContext windowsContext(context, rect, alphaBlend);
</ins><span class="cx"> RECT themeRect(rect);
</span><span class="cx">
</span><span class="cx"> if (scrollbarTheme)
</span><span class="lines">@@ -316,7 +316,7 @@
</span><span class="cx"> if (scrollbarTheme)
</span><span class="cx"> alphaBlend = IsThemeBackgroundPartiallyTransparent(scrollbarTheme, SP_BUTTON, xpState);
</span><span class="cx">
</span><del>- LocalWindowsContext windowsContext(&context, rect, alphaBlend);
</del><ins>+ LocalWindowsContext windowsContext(context, rect, alphaBlend);
</ins><span class="cx"> RECT themeRect(rect);
</span><span class="cx"> if (scrollbarTheme)
</span><span class="cx"> DrawThemeBackground(scrollbarTheme, windowsContext.hdc(), SP_BUTTON, xpState, &themeRect, 0);
</span><span class="lines">@@ -372,7 +372,7 @@
</span><span class="cx"> bool alphaBlend = false;
</span><span class="cx"> if (scrollbarTheme)
</span><span class="cx"> alphaBlend = IsThemeBackgroundPartiallyTransparent(scrollbarTheme, scrollbar.orientation() == HorizontalScrollbar ? SP_THUMBHOR : SP_THUMBVERT, state);
</span><del>- LocalWindowsContext windowsContext(&context, rect, alphaBlend);
</del><ins>+ LocalWindowsContext windowsContext(context, rect, alphaBlend);
</ins><span class="cx"> RECT themeRect(rect);
</span><span class="cx"> if (scrollbarTheme) {
</span><span class="cx"> DrawThemeBackground(scrollbarTheme, windowsContext.hdc(), scrollbar.orientation() == HorizontalScrollbar ? SP_THUMBHOR : SP_THUMBVERT, state, &themeRect, 0);
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformwinWebCoreTextRenderercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/win/WebCoreTextRenderer.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/win/WebCoreTextRenderer.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/win/WebCoreTextRenderer.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -51,7 +51,7 @@
</span><span class="cx">
</span><span class="cx"> context.setFillColor(color, ColorSpaceDeviceRGB);
</span><span class="cx"> if (isOneLeftToRightRun(run))
</span><del>- font.drawText(&context, run, point);
</del><ins>+ font.drawText(context, run, point);
</ins><span class="cx"> else
</span><span class="cx"> context.drawBidiText(font, run, point);
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformwinWidgetWincpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/win/WidgetWin.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/win/WidgetWin.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/platform/win/WidgetWin.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -76,7 +76,7 @@
</span><span class="cx"> view->hostWindow()->setCursor(cursor);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void Widget::paint(GraphicsContext*, const IntRect&)
</del><ins>+void Widget::paint(GraphicsContext&, const IntRect&)
</ins><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingEllipsisBoxcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/EllipsisBox.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/EllipsisBox.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/EllipsisBox.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -42,14 +42,14 @@
</span><span class="cx">
</span><span class="cx"> void EllipsisBox::paint(PaintInfo& paintInfo, const LayoutPoint& paintOffset, LayoutUnit lineTop, LayoutUnit lineBottom)
</span><span class="cx"> {
</span><del>- GraphicsContext* context = paintInfo.context;
</del><ins>+ GraphicsContext& context = paintInfo.context();
</ins><span class="cx"> const RenderStyle& lineStyle = this->lineStyle();
</span><span class="cx"> Color textColor = lineStyle.visitedDependentColor(CSSPropertyWebkitTextFillColor);
</span><del>- if (textColor != context->fillColor())
- context->setFillColor(textColor, lineStyle.colorSpace());
</del><ins>+ if (textColor != context.fillColor())
+ context.setFillColor(textColor, lineStyle.colorSpace());
</ins><span class="cx"> bool setShadow = false;
</span><span class="cx"> if (lineStyle.textShadow()) {
</span><del>- context->setShadow(LayoutSize(lineStyle.textShadow()->x(), lineStyle.textShadow()->y()),
</del><ins>+ context.setShadow(LayoutSize(lineStyle.textShadow()->x(), lineStyle.textShadow()->y()),
</ins><span class="cx"> lineStyle.textShadow()->radius(), lineStyle.textShadow()->color(), lineStyle.colorSpace());
</span><span class="cx"> setShadow = true;
</span><span class="cx"> }
</span><span class="lines">@@ -61,18 +61,18 @@
</span><span class="cx"> // Select the correct color for painting the text.
</span><span class="cx"> Color foreground = paintInfo.forceTextColor() ? paintInfo.forcedTextColor() : blockFlow().selectionForegroundColor();
</span><span class="cx"> if (foreground.isValid() && foreground != textColor)
</span><del>- context->setFillColor(foreground, lineStyle.colorSpace());
</del><ins>+ context.setFillColor(foreground, lineStyle.colorSpace());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // FIXME: Why is this always LTR? Fix by passing correct text run flags below.
</span><del>- context->drawText(font, RenderBlock::constructTextRun(&blockFlow(), font, m_str, lineStyle, AllowTrailingExpansion), LayoutPoint(x() + paintOffset.x(), y() + paintOffset.y() + lineStyle.fontMetrics().ascent()));
</del><ins>+ context.drawText(font, RenderBlock::constructTextRun(&blockFlow(), font, m_str, lineStyle, AllowTrailingExpansion), LayoutPoint(x() + paintOffset.x(), y() + paintOffset.y() + lineStyle.fontMetrics().ascent()));
</ins><span class="cx">
</span><span class="cx"> // Restore the regular fill color.
</span><del>- if (textColor != context->fillColor())
- context->setFillColor(textColor, lineStyle.colorSpace());
</del><ins>+ if (textColor != context.fillColor())
+ context.setFillColor(textColor, lineStyle.colorSpace());
</ins><span class="cx">
</span><span class="cx"> if (setShadow)
</span><del>- context->clearShadow();
</del><ins>+ context.clearShadow();
</ins><span class="cx">
</span><span class="cx"> paintMarkupBox(paintInfo, paintOffset, lineTop, lineBottom, lineStyle);
</span><span class="cx"> }
</span><span class="lines">@@ -119,7 +119,7 @@
</span><span class="cx"> return enclosingIntRect(selectionRect);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void EllipsisBox::paintSelection(GraphicsContext* context, const LayoutPoint& paintOffset, const RenderStyle& style, const FontCascade& font)
</del><ins>+void EllipsisBox::paintSelection(GraphicsContext& context, const LayoutPoint& paintOffset, const RenderStyle& style, const FontCascade& font)
</ins><span class="cx"> {
</span><span class="cx"> Color textColor = style.visitedDependentColor(CSSPropertyColor);
</span><span class="cx"> Color c = blockFlow().selectionBackgroundColor();
</span><span class="lines">@@ -132,12 +132,12 @@
</span><span class="cx"> c = Color(0xff - c.red(), 0xff - c.green(), 0xff - c.blue());
</span><span class="cx">
</span><span class="cx"> const RootInlineBox& rootBox = root();
</span><del>- GraphicsContextStateSaver stateSaver(*context);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
</ins><span class="cx"> // FIXME: Why is this always LTR? Fix by passing correct text run flags below.
</span><span class="cx"> LayoutRect selectionRect = LayoutRect(x() + paintOffset.x(), y() + paintOffset.y() + rootBox.selectionTop(), 0, rootBox.selectionHeight());
</span><span class="cx"> TextRun run = RenderBlock::constructTextRun(&blockFlow(), font, m_str, style, AllowTrailingExpansion);
</span><span class="cx"> font.adjustSelectionRectForText(run, selectionRect, 0, -1);
</span><del>- context->fillRect(snapRectToDevicePixelsWithWritingDirection(selectionRect, renderer().document().deviceScaleFactor(), run.ltr()), c, style.colorSpace());
</del><ins>+ context.fillRect(snapRectToDevicePixelsWithWritingDirection(selectionRect, renderer().document().deviceScaleFactor(), run.ltr()), c, style.colorSpace());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool EllipsisBox::nodeAtPoint(const HitTestRequest& request, HitTestResult& result, const HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset, LayoutUnit lineTop, LayoutUnit lineBottom, HitTestAction hitTestAction)
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingEllipsisBoxh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/EllipsisBox.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/EllipsisBox.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/EllipsisBox.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -42,7 +42,7 @@
</span><span class="cx"> void paintMarkupBox(PaintInfo&, const LayoutPoint& paintOffset, LayoutUnit lineTop, LayoutUnit lineBottom, const RenderStyle&);
</span><span class="cx"> int height() const { return m_height; }
</span><span class="cx"> virtual RenderObject::SelectionState selectionState() override { return m_selectionState; }
</span><del>- void paintSelection(GraphicsContext*, const LayoutPoint&, const RenderStyle&, const FontCascade&);
</del><ins>+ void paintSelection(GraphicsContext&, const LayoutPoint&, const RenderStyle&, const FontCascade&);
</ins><span class="cx"> InlineBox* markupBox() const;
</span><span class="cx">
</span><span class="cx"> bool m_shouldPaintMarkupBox;
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingFilterEffectRenderercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/FilterEffectRenderer.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/FilterEffectRenderer.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/FilterEffectRenderer.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -80,7 +80,7 @@
</span><span class="cx">
</span><span class="cx"> GraphicsContext* FilterEffectRenderer::inputContext()
</span><span class="cx"> {
</span><del>- return sourceImage() ? sourceImage()->context() : 0;
</del><ins>+ return sourceImage() ? &sourceImage()->context() : nullptr;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> PassRefPtr<FilterEffect> FilterEffectRenderer::buildReferenceFilter(RenderElement* renderer, PassRefPtr<FilterEffect> previousEffect, ReferenceFilterOperation* filterOperation)
</span><span class="lines">@@ -417,7 +417,7 @@
</span><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void FilterEffectRendererHelper::applyFilterEffect(GraphicsContext* destinationContext)
</del><ins>+void FilterEffectRendererHelper::applyFilterEffect(GraphicsContext& destinationContext)
</ins><span class="cx"> {
</span><span class="cx"> ASSERT(m_haveFilterEffect && m_renderLayer->filterRenderer());
</span><span class="cx"> FilterEffectRenderer* filter = m_renderLayer->filterRenderer();
</span><span class="lines">@@ -429,7 +429,7 @@
</span><span class="cx"> LayoutRect destRect = filter->outputRect();
</span><span class="cx"> destRect.move(m_paintOffset.x(), m_paintOffset.y());
</span><span class="cx">
</span><del>- destinationContext->drawImageBuffer(filter->output(), m_renderLayer->renderer().style().colorSpace(),
</del><ins>+ destinationContext.drawImageBuffer(filter->output(), m_renderLayer->renderer().style().colorSpace(),
</ins><span class="cx"> snapRectToDevicePixels(destRect, m_renderLayer->renderer().document().deviceScaleFactor()));
</span><span class="cx">
</span><span class="cx"> filter->clearIntermediateResults();
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingFilterEffectRendererh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/FilterEffectRenderer.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/FilterEffectRenderer.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/FilterEffectRenderer.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -69,7 +69,7 @@
</span><span class="cx">
</span><span class="cx"> bool prepareFilterEffect(RenderLayer*, const LayoutRect& filterBoxRect, const LayoutRect& dirtyRect, const LayoutRect& layerRepaintRect);
</span><span class="cx"> bool beginFilterEffect();
</span><del>- void applyFilterEffect(GraphicsContext* destinationContext);
</del><ins>+ void applyFilterEffect(GraphicsContext& destinationContext);
</ins><span class="cx">
</span><span class="cx"> GraphicsContext* filterContext() const;
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingImageQualityControllercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/ImageQualityController.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/ImageQualityController.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/ImageQualityController.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -99,11 +99,11 @@
</span><span class="cx"> m_timer.startOneShot(cLowQualityTimeThreshold);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-bool ImageQualityController::shouldPaintAtLowQuality(GraphicsContext* context, RenderBoxModelObject* object, Image* image, const void *layer, const LayoutSize& size)
</del><ins>+bool ImageQualityController::shouldPaintAtLowQuality(GraphicsContext& context, RenderBoxModelObject* object, Image* image, const void *layer, const LayoutSize& size)
</ins><span class="cx"> {
</span><span class="cx"> // If the image is not a bitmap image, then none of this is relevant and we just paint at high
</span><span class="cx"> // quality.
</span><del>- if (!image || !(image->isBitmapImage() || image->isPDFDocumentImage()) || context->paintingDisabled())
</del><ins>+ if (!image || !(image->isBitmapImage() || image->isPDFDocumentImage()) || context.paintingDisabled())
</ins><span class="cx"> return false;
</span><span class="cx">
</span><span class="cx"> switch (object->style().imageRendering()) {
</span><span class="lines">@@ -146,7 +146,7 @@
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- const AffineTransform& currentTransform = context->getCTM();
</del><ins>+ const AffineTransform& currentTransform = context.getCTM();
</ins><span class="cx"> bool contextIsScaled = !currentTransform.isIdentityOrTranslationOrFlipped();
</span><span class="cx"> if (!contextIsScaled && size == imageSize) {
</span><span class="cx"> // There is no scale in effect. If we had a scale in effect before, we can just remove this object from the list.
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingImageQualityControllerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/ImageQualityController.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/ImageQualityController.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/ImageQualityController.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -43,7 +43,7 @@
</span><span class="cx"> public:
</span><span class="cx"> explicit ImageQualityController(const RenderView&);
</span><span class="cx">
</span><del>- bool shouldPaintAtLowQuality(GraphicsContext*, RenderBoxModelObject*, Image*, const void* layer, const LayoutSize&);
</del><ins>+ bool shouldPaintAtLowQuality(GraphicsContext&, RenderBoxModelObject*, Image*, const void* layer, const LayoutSize&);
</ins><span class="cx"> void rendererWillBeDestroyed(RenderBoxModelObject& renderer) { removeObject(&renderer); }
</span><span class="cx">
</span><span class="cx"> private:
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingInlineFlowBoxcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/InlineFlowBox.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/InlineFlowBox.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/InlineFlowBox.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1220,8 +1220,8 @@
</span><span class="cx"> renderer().paintFillLayerExtended(paintInfo, c, fillLayer, rect, BackgroundBleedNone, this, rect.size(), op);
</span><span class="cx"> #if ENABLE(CSS_BOX_DECORATION_BREAK)
</span><span class="cx"> else if (renderer().style().boxDecorationBreak() == DCLONE) {
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
- paintInfo.context->clip(LayoutRect(rect.x(), rect.y(), width(), height()));
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
+ paintInfo.context().clip(LayoutRect(rect.x(), rect.y(), width(), height()));
</ins><span class="cx"> renderer().paintFillLayerExtended(paintInfo, c, fillLayer, rect, BackgroundBleedNone, this, rect.size(), op);
</span><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="lines">@@ -1252,8 +1252,8 @@
</span><span class="cx"> LayoutUnit stripWidth = isHorizontal() ? totalLogicalWidth : LayoutUnit(width());
</span><span class="cx"> LayoutUnit stripHeight = isHorizontal() ? LayoutUnit(height()) : totalLogicalWidth;
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
- paintInfo.context->clip(LayoutRect(rect.x(), rect.y(), width(), height()));
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
+ paintInfo.context().clip(LayoutRect(rect.x(), rect.y(), width(), height()));
</ins><span class="cx"> renderer().paintFillLayerExtended(paintInfo, c, fillLayer, LayoutRect(stripX, stripY, stripWidth, stripHeight), BackgroundBleedNone, this, rect.size(), op);
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -1337,7 +1337,7 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> LayoutPoint adjustedPaintoffset = paintOffset + localRect.location();
</span><del>- GraphicsContext* context = paintInfo.context;
</del><ins>+ GraphicsContext& context = paintInfo.context();
</ins><span class="cx"> LayoutRect paintRect = LayoutRect(adjustedPaintoffset, frameRect.size());
</span><span class="cx"> // Shadow comes first and is behind the background and border.
</span><span class="cx"> if (!renderer().boxShadowShouldBeAppliedToBackground(adjustedPaintoffset, BackgroundBleedNone, this))
</span><span class="lines">@@ -1382,8 +1382,8 @@
</span><span class="cx"> LayoutUnit stripHeight = isHorizontal() ? frameRect.height() : totalLogicalWidth;
</span><span class="cx">
</span><span class="cx"> LayoutRect clipRect = clipRectForNinePieceImageStrip(this, borderImage, paintRect);
</span><del>- GraphicsContextStateSaver stateSaver(*context);
- context->clip(clipRect);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
+ context.clip(clipRect);
</ins><span class="cx"> renderer().paintBorder(paintInfo, LayoutRect(stripX, stripY, stripWidth, stripHeight), lineStyle);
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -1415,8 +1415,8 @@
</span><span class="cx">
</span><span class="cx"> compositeOp = CompositeDestinationIn;
</span><span class="cx"> if (pushTransparencyLayer) {
</span><del>- paintInfo.context->setCompositeOperation(CompositeDestinationIn);
- paintInfo.context->beginTransparencyLayer(1.0f);
</del><ins>+ paintInfo.context().setCompositeOperation(CompositeDestinationIn);
+ paintInfo.context().beginTransparencyLayer(1.0f);
</ins><span class="cx"> compositeOp = CompositeSourceOver;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -1427,14 +1427,14 @@
</span><span class="cx"> bool hasBoxImage = maskBoxImage && maskBoxImage->canRender(&renderer(), renderer().style().effectiveZoom());
</span><span class="cx"> if (!hasBoxImage || !maskBoxImage->isLoaded()) {
</span><span class="cx"> if (pushTransparencyLayer)
</span><del>- paintInfo.context->endTransparencyLayer();
</del><ins>+ paintInfo.context().endTransparencyLayer();
</ins><span class="cx"> return; // Don't paint anything while we wait for the image to load.
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // The simple case is where we are the only box for this object. In those
</span><span class="cx"> // cases only a single call to draw is required.
</span><span class="cx"> if (!prevLineBox() && !nextLineBox()) {
</span><del>- renderer().paintNinePieceImage(paintInfo.context, LayoutRect(adjustedPaintOffset, frameRect.size()), renderer().style(), maskNinePieceImage, compositeOp);
</del><ins>+ renderer().paintNinePieceImage(paintInfo.context(), LayoutRect(adjustedPaintOffset, frameRect.size()), renderer().style(), maskNinePieceImage, compositeOp);
</ins><span class="cx"> } else {
</span><span class="cx"> // We have a mask image that spans multiple lines.
</span><span class="cx"> // We need to adjust _tx and _ty by the width of all previous lines.
</span><span class="lines">@@ -1450,13 +1450,13 @@
</span><span class="cx"> LayoutUnit stripHeight = isHorizontal() ? frameRect.height() : totalLogicalWidth;
</span><span class="cx">
</span><span class="cx"> LayoutRect clipRect = clipRectForNinePieceImageStrip(this, maskNinePieceImage, paintRect);
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
- paintInfo.context->clip(clipRect);
- renderer().paintNinePieceImage(paintInfo.context, LayoutRect(stripX, stripY, stripWidth, stripHeight), renderer().style(), maskNinePieceImage, compositeOp);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
+ paintInfo.context().clip(clipRect);
+ renderer().paintNinePieceImage(paintInfo.context(), LayoutRect(stripX, stripY, stripWidth, stripHeight), renderer().style(), maskNinePieceImage, compositeOp);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (pushTransparencyLayer)
</span><del>- paintInfo.context->endTransparencyLayer();
</del><ins>+ paintInfo.context().endTransparencyLayer();
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> InlineBox* InlineFlowBox::firstLeafChild() const
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingInlineTextBoxcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/InlineTextBox.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/InlineTextBox.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/InlineTextBox.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -505,7 +505,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>- GraphicsContext& context = *paintInfo.context;
</del><ins>+ GraphicsContext& context = paintInfo.context();
</ins><span class="cx">
</span><span class="cx"> const RenderStyle& lineStyle = this->lineStyle();
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingPaintInfoh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/PaintInfo.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/PaintInfo.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/PaintInfo.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -49,20 +49,31 @@
</span><span class="cx"> * (tx|ty) is the calculated position of the parent
</span><span class="cx"> */
</span><span class="cx"> struct PaintInfo {
</span><del>- PaintInfo(GraphicsContext* newContext, const LayoutRect& newRect, PaintPhase newPhase, PaintBehavior newPaintBehavior,
</del><ins>+ PaintInfo(GraphicsContext& newContext, const LayoutRect& newRect, PaintPhase newPhase, PaintBehavior newPaintBehavior,
</ins><span class="cx"> RenderObject* newSubtreePaintRoot = nullptr, ListHashSet<RenderInline*>* newOutlineObjects = nullptr,
</span><span class="cx"> OverlapTestRequestMap* overlapTestRequests = nullptr, const RenderLayerModelObject* newPaintContainer = nullptr)
</span><del>- : context(newContext)
- , rect(newRect)
</del><ins>+ : rect(newRect)
</ins><span class="cx"> , phase(newPhase)
</span><span class="cx"> , paintBehavior(newPaintBehavior)
</span><span class="cx"> , subtreePaintRoot(newSubtreePaintRoot)
</span><span class="cx"> , outlineObjects(newOutlineObjects)
</span><span class="cx"> , overlapTestRequests(overlapTestRequests)
</span><span class="cx"> , paintContainer(newPaintContainer)
</span><ins>+ , m_context(&newContext)
</ins><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+ GraphicsContext& context() const
+ {
+ ASSERT(m_context);
+ return *m_context;
+ }
+
+ void setContext(GraphicsContext& context)
+ {
+ m_context = &context;
+ }
+
</ins><span class="cx"> void updateSubtreePaintRootForChildren(const RenderObject* renderer)
</span><span class="cx"> {
</span><span class="cx"> if (!subtreePaintRoot)
</span><span class="lines">@@ -93,7 +104,7 @@
</span><span class="cx"> if (localToAncestorTransform.isIdentity())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- context->concatCTM(localToAncestorTransform);
</del><ins>+ context().concatCTM(localToAncestorTransform);
</ins><span class="cx">
</span><span class="cx"> if (rect.isInfinite())
</span><span class="cx"> return;
</span><span class="lines">@@ -103,7 +114,6 @@
</span><span class="cx"> rect.setSize(LayoutSize(tranformedRect.size()));
</span><span class="cx"> }
</span><span class="cx">
</span><del>- GraphicsContext* context;
</del><span class="cx"> LayoutRect rect;
</span><span class="cx"> PaintPhase phase;
</span><span class="cx"> PaintBehavior paintBehavior;
</span><span class="lines">@@ -111,6 +121,9 @@
</span><span class="cx"> ListHashSet<RenderInline*>* outlineObjects; // used to list outlines that should be painted by a block with inline children
</span><span class="cx"> OverlapTestRequestMap* overlapTestRequests;
</span><span class="cx"> const RenderLayerModelObject* paintContainer; // the layer object that originates the current painting
</span><ins>+
+private:
+ GraphicsContext* m_context;
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> } // namespace WebCore
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderBlockcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderBlock.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderBlock.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderBlock.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1420,7 +1420,7 @@
</span><span class="cx"> // z-index. We paint after we painted the background/border, so that the scrollbars will
</span><span class="cx"> // sit above the background/border.
</span><span class="cx"> if ((phase == PaintPhaseBlockBackground || phase == PaintPhaseChildBlockBackground) && hasOverflowClip() && style().visibility() == VISIBLE && paintInfo.shouldPaintWithinRoot(*this) && !paintInfo.paintRootBackgroundOnly())
</span><del>- layer()->paintOverflowControls(paintInfo.context, roundedIntPoint(adjustedPaintOffset), snappedIntRect(paintInfo.rect));
</del><ins>+ layer()->paintOverflowControls(paintInfo.context(), roundedIntPoint(adjustedPaintOffset), snappedIntRect(paintInfo.rect));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderBlock::paintContents(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
</span><span class="lines">@@ -1516,9 +1516,9 @@
</span><span class="cx">
</span><span class="cx"> if (caretPainter == this && (isContentEditable || caretBrowsing)) {
</span><span class="cx"> if (type == CursorCaret)
</span><del>- frame().selection().paintCaret(paintInfo.context, paintOffset, paintInfo.rect);
</del><ins>+ frame().selection().paintCaret(paintInfo.context(), paintOffset, paintInfo.rect);
</ins><span class="cx"> else
</span><del>- frame().page()->dragCaretController().paintDragCaret(&frame(), paintInfo.context, paintOffset, paintInfo.rect);
</del><ins>+ frame().page()->dragCaretController().paintDragCaret(&frame(), paintInfo.context(), paintOffset, paintInfo.rect);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1538,16 +1538,16 @@
</span><span class="cx"> // overflows region X and is an unsplittable element (like an image).
</span><span class="cx"> // The same applies for a box overflowing the top of region X when that box is also fragmented in region X-1.
</span><span class="cx">
</span><del>- paintInfo.context->save();
</del><ins>+ paintInfo.context().save();
</ins><span class="cx"> didClipToRegion = true;
</span><span class="cx">
</span><del>- paintInfo.context->clip(downcast<RenderNamedFlowThread>(*paintInfo.paintContainer).decorationsClipRectForBoxInNamedFlowFragment(*this, *namedFlowFragment));
</del><ins>+ paintInfo.context().clip(downcast<RenderNamedFlowThread>(*paintInfo.paintContainer).decorationsClipRectForBoxInNamedFlowFragment(*this, *namedFlowFragment));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> paintBoxDecorations(paintInfo, paintOffset);
</span><span class="cx">
</span><span class="cx"> if (didClipToRegion)
</span><del>- paintInfo.context->restore();
</del><ins>+ paintInfo.context().restore();
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1765,7 +1765,7 @@
</span><span class="cx"> LayoutUnit lastTop = 0;
</span><span class="cx"> LayoutUnit lastLeft = logicalLeftSelectionOffset(*this, lastTop, cache);
</span><span class="cx"> LayoutUnit lastRight = logicalRightSelectionOffset(*this, lastTop, cache);
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> LayoutRect gapRectsBounds = selectionGaps(*this, paintOffset, LayoutSize(), lastTop, lastLeft, lastRight, cache, &paintInfo);
</span><span class="cx"> if (!gapRectsBounds.isEmpty()) {
</span><span class="lines">@@ -1796,7 +1796,7 @@
</span><span class="cx"> TrackedRendererListHashSet::const_iterator end = positionedObjects->end();
</span><span class="cx"> for (TrackedRendererListHashSet::const_iterator it = positionedObjects->begin(); it != end; ++it) {
</span><span class="cx"> RenderBox* r = *it;
</span><del>- paintInfo->context->clipOut(IntRect(offset.x() + r->x(), offset.y() + r->y(), r->width(), r->height()));
</del><ins>+ paintInfo->context().clipOut(IntRect(offset.x() + r->x(), offset.y() + r->y(), r->width(), r->height()));
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1966,7 +1966,7 @@
</span><span class="cx">
</span><span class="cx"> LayoutRect gapRect = rootBlock.logicalRectToPhysicalRect(rootBlockPhysicalPosition, LayoutRect(logicalLeft, logicalTop, logicalWidth, logicalHeight));
</span><span class="cx"> if (paintInfo)
</span><del>- paintInfo->context->fillRect(snapRectToDevicePixels(gapRect, document().deviceScaleFactor()), selectionBackgroundColor(), style().colorSpace());
</del><ins>+ paintInfo->context().fillRect(snapRectToDevicePixels(gapRect, document().deviceScaleFactor()), selectionBackgroundColor(), style().colorSpace());
</ins><span class="cx"> return gapRect;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1983,7 +1983,7 @@
</span><span class="cx">
</span><span class="cx"> LayoutRect gapRect = rootBlock.logicalRectToPhysicalRect(rootBlockPhysicalPosition, LayoutRect(rootBlockLogicalLeft, rootBlockLogicalTop, rootBlockLogicalWidth, logicalHeight));
</span><span class="cx"> if (paintInfo)
</span><del>- paintInfo->context->fillRect(snapRectToDevicePixels(gapRect, document().deviceScaleFactor()), selObj->selectionBackgroundColor(), selObj->style().colorSpace());
</del><ins>+ paintInfo->context().fillRect(snapRectToDevicePixels(gapRect, document().deviceScaleFactor()), selObj->selectionBackgroundColor(), selObj->style().colorSpace());
</ins><span class="cx"> return gapRect;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -2000,7 +2000,7 @@
</span><span class="cx">
</span><span class="cx"> LayoutRect gapRect = rootBlock.logicalRectToPhysicalRect(rootBlockPhysicalPosition, LayoutRect(rootBlockLogicalLeft, rootBlockLogicalTop, rootBlockLogicalWidth, logicalHeight));
</span><span class="cx"> if (paintInfo)
</span><del>- paintInfo->context->fillRect(snapRectToDevicePixels(gapRect, document().deviceScaleFactor()), selObj->selectionBackgroundColor(), selObj->style().colorSpace());
</del><ins>+ paintInfo->context().fillRect(snapRectToDevicePixels(gapRect, document().deviceScaleFactor()), selObj->selectionBackgroundColor(), selObj->style().colorSpace());
</ins><span class="cx"> return gapRect;
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderBlockFlowcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderBlockFlow.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderBlockFlow.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderBlockFlow.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -2144,7 +2144,7 @@
</span><span class="cx"> {
</span><span class="cx"> RenderBlock::paintColumnRules(paintInfo, point);
</span><span class="cx">
</span><del>- if (!multiColumnFlowThread() || paintInfo.context->paintingDisabled())
</del><ins>+ if (!multiColumnFlowThread() || paintInfo.context().paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> // Iterate over our children and paint the column rules as needed.
</span><span class="lines">@@ -2196,7 +2196,7 @@
</span><span class="cx"> floatingObject->renderer().width(), floatingObject->renderer().height());
</span><span class="cx"> rootBlock.flipForWritingMode(floatBox);
</span><span class="cx"> floatBox.move(rootBlockPhysicalPosition.x(), rootBlockPhysicalPosition.y());
</span><del>- paintInfo->context->clipOut(snappedIntRect(floatBox));
</del><ins>+ paintInfo->context().clipOut(snappedIntRect(floatBox));
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderBoxcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderBox.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderBox.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderBox.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1242,9 +1242,9 @@
</span><span class="cx"> paintFillLayers(paintInfo, bgColor, bgLayer, view().backgroundRect(), BackgroundBleedNone, CompositeSourceOver, &rootBackgroundRenderer);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-BackgroundBleedAvoidance RenderBox::determineBackgroundBleedAvoidance(GraphicsContext* context) const
</del><ins>+BackgroundBleedAvoidance RenderBox::determineBackgroundBleedAvoidance(GraphicsContext& context) const
</ins><span class="cx"> {
</span><del>- if (context->paintingDisabled())
</del><ins>+ if (context.paintingDisabled())
</ins><span class="cx"> return BackgroundBleedNone;
</span><span class="cx">
</span><span class="cx"> const RenderStyle& style = this->style();
</span><span class="lines">@@ -1252,7 +1252,7 @@
</span><span class="cx"> if (!style.hasBackground() || !style.hasBorder() || !style.hasBorderRadius() || borderImageIsLoadedAndCanBeRendered())
</span><span class="cx"> return BackgroundBleedNone;
</span><span class="cx">
</span><del>- AffineTransform ctm = context->getCTM();
</del><ins>+ AffineTransform ctm = context.getCTM();
</ins><span class="cx"> FloatSize contextScaling(static_cast<float>(ctm.xScale()), static_cast<float>(ctm.yScale()));
</span><span class="cx">
</span><span class="cx"> // Because RoundedRect uses IntRect internally the inset applied by the
</span><span class="lines">@@ -1293,21 +1293,21 @@
</span><span class="cx"> paintRect = IntRect(paintRect.x(), paintRect.y() + (this->height() - height) / 2, width, height); // Vertically center the checkbox, like on desktop
</span><span class="cx"> }
</span><span class="cx"> #endif
</span><del>- BackgroundBleedAvoidance bleedAvoidance = determineBackgroundBleedAvoidance(paintInfo.context);
</del><ins>+ BackgroundBleedAvoidance bleedAvoidance = determineBackgroundBleedAvoidance(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> // FIXME: Should eventually give the theme control over whether the box shadow should paint, since controls could have
</span><span class="cx"> // custom shadows of their own.
</span><span class="cx"> if (!boxShadowShouldBeAppliedToBackground(paintRect.location(), bleedAvoidance))
</span><span class="cx"> paintBoxShadow(paintInfo, paintRect, style(), Normal);
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context, false);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context(), false);
</ins><span class="cx"> if (bleedAvoidance == BackgroundBleedUseTransparencyLayer) {
</span><span class="cx"> // To avoid the background color bleeding out behind the border, we'll render background and border
</span><span class="cx"> // into a transparency layer, and then clip that in one go (which requires setting up the clip before
</span><span class="cx"> // beginning the layer).
</span><span class="cx"> stateSaver.save();
</span><del>- paintInfo.context->clipRoundedRect(style().getRoundedBorderFor(paintRect).pixelSnappedRoundedRectForPainting(document().deviceScaleFactor()));
- paintInfo.context->beginTransparencyLayer(1);
</del><ins>+ paintInfo.context().clipRoundedRect(style().getRoundedBorderFor(paintRect).pixelSnappedRoundedRectForPainting(document().deviceScaleFactor()));
+ paintInfo.context().beginTransparencyLayer(1);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // If we have a native theme appearance, paint that before painting our background.
</span><span class="lines">@@ -1342,7 +1342,7 @@
</span><span class="cx"> paintBorder(paintInfo, paintRect, style(), bleedAvoidance);
</span><span class="cx">
</span><span class="cx"> if (bleedAvoidance == BackgroundBleedUseTransparencyLayer)
</span><del>- paintInfo.context->endTransparencyLayer();
</del><ins>+ paintInfo.context().endTransparencyLayer();
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderBox::paintBackground(const PaintInfo& paintInfo, const LayoutRect& paintRect, BackgroundBleedAvoidance bleedAvoidance)
</span><span class="lines">@@ -1519,7 +1519,7 @@
</span><span class="cx">
</span><span class="cx"> void RenderBox::paintMask(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
</span><span class="cx"> {
</span><del>- if (!paintInfo.shouldPaintWithinRoot(*this) || style().visibility() != VISIBLE || paintInfo.phase != PaintPhaseMask || paintInfo.context->paintingDisabled())
</del><ins>+ if (!paintInfo.shouldPaintWithinRoot(*this) || style().visibility() != VISIBLE || paintInfo.phase != PaintPhaseMask || paintInfo.context().paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> LayoutRect paintRect = LayoutRect(paintOffset, size());
</span><span class="lines">@@ -1528,11 +1528,11 @@
</span><span class="cx">
</span><span class="cx"> void RenderBox::paintClippingMask(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
</span><span class="cx"> {
</span><del>- if (!paintInfo.shouldPaintWithinRoot(*this) || style().visibility() != VISIBLE || paintInfo.phase != PaintPhaseClippingMask || paintInfo.context->paintingDisabled())
</del><ins>+ if (!paintInfo.shouldPaintWithinRoot(*this) || style().visibility() != VISIBLE || paintInfo.phase != PaintPhaseClippingMask || paintInfo.context().paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> LayoutRect paintRect = LayoutRect(paintOffset, size());
</span><del>- paintInfo.context->fillRect(snappedIntRect(paintRect), Color::black, style().colorSpace());
</del><ins>+ paintInfo.context().fillRect(snappedIntRect(paintRect), Color::black, style().colorSpace());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderBox::paintMaskImages(const PaintInfo& paintInfo, const LayoutRect& paintRect)
</span><span class="lines">@@ -1557,18 +1557,18 @@
</span><span class="cx"> if (maskLayers)
</span><span class="cx"> allMaskImagesLoaded &= maskLayers->imagesAreLoaded();
</span><span class="cx">
</span><del>- paintInfo.context->setCompositeOperation(CompositeDestinationIn);
- paintInfo.context->beginTransparencyLayer(1);
</del><ins>+ paintInfo.context().setCompositeOperation(CompositeDestinationIn);
+ paintInfo.context().beginTransparencyLayer(1);
</ins><span class="cx"> compositeOp = CompositeSourceOver;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (allMaskImagesLoaded) {
</span><span class="cx"> paintFillLayers(paintInfo, Color(), style().maskLayers(), paintRect, BackgroundBleedNone, compositeOp);
</span><del>- paintNinePieceImage(paintInfo.context, paintRect, style(), style().maskBoxImage(), compositeOp);
</del><ins>+ paintNinePieceImage(paintInfo.context(), paintRect, style(), style().maskBoxImage(), compositeOp);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (pushTransparencyLayer)
</span><del>- paintInfo.context->endTransparencyLayer();
</del><ins>+ paintInfo.context().endTransparencyLayer();
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> LayoutRect RenderBox::maskClipRect(const LayoutPoint& paintOffset)
</span><span class="lines">@@ -1619,16 +1619,13 @@
</span><span class="cx"> curLayer = curLayer->next();
</span><span class="cx"> }
</span><span class="cx">
</span><del>- GraphicsContext* context = paintInfo.context;
- if (!context)
- shouldDrawBackgroundInSeparateBuffer = false;
-
</del><ins>+ GraphicsContext& context = paintInfo.context();
</ins><span class="cx"> BaseBackgroundColorUsage baseBgColorUsage = BaseBackgroundColorUse;
</span><span class="cx">
</span><span class="cx"> if (shouldDrawBackgroundInSeparateBuffer) {
</span><span class="cx"> paintFillLayer(paintInfo, c, *layers.rbegin(), rect, bleedAvoidance, op, backgroundObject, BaseBackgroundColorOnly);
</span><span class="cx"> baseBgColorUsage = BaseBackgroundColorSkip;
</span><del>- context->beginTransparencyLayer(1);
</del><ins>+ context.beginTransparencyLayer(1);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> Vector<const FillLayer*>::const_reverse_iterator topLayer = layers.rend();
</span><span class="lines">@@ -1636,7 +1633,7 @@
</span><span class="cx"> paintFillLayer(paintInfo, c, *it, rect, bleedAvoidance, op, backgroundObject, baseBgColorUsage);
</span><span class="cx">
</span><span class="cx"> if (shouldDrawBackgroundInSeparateBuffer)
</span><del>- context->endTransparencyLayer();
</del><ins>+ context.endTransparencyLayer();
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderBox::paintFillLayer(const PaintInfo& paintInfo, const Color& c, const FillLayer* fillLayer, const LayoutRect& rect,
</span><span class="lines">@@ -1768,10 +1765,10 @@
</span><span class="cx"> }
</span><span class="cx"> float deviceScaleFactor = document().deviceScaleFactor();
</span><span class="cx"> FloatRect clipRect = snapRectToDevicePixels((isControlClip ? controlClipRect(accumulatedOffset) : overflowClipRect(accumulatedOffset, currentRenderNamedFlowFragment(), IgnoreOverlayScrollbarSize, paintInfo.phase)), deviceScaleFactor);
</span><del>- paintInfo.context->save();
</del><ins>+ paintInfo.context().save();
</ins><span class="cx"> if (style().hasBorderRadius())
</span><del>- paintInfo.context->clipRoundedRect(style().getRoundedInnerBorderFor(LayoutRect(accumulatedOffset, size())).pixelSnappedRoundedRectForPainting(deviceScaleFactor));
- paintInfo.context->clip(clipRect);
</del><ins>+ paintInfo.context().clipRoundedRect(style().getRoundedInnerBorderFor(LayoutRect(accumulatedOffset, size())).pixelSnappedRoundedRectForPainting(deviceScaleFactor));
+ paintInfo.context().clip(clipRect);
</ins><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1779,7 +1776,7 @@
</span><span class="cx"> {
</span><span class="cx"> ASSERT(hasControlClip() || (hasOverflowClip() && !layer()->isSelfPaintingLayer()));
</span><span class="cx">
</span><del>- paintInfo.context->restore();
</del><ins>+ paintInfo.context().restore();
</ins><span class="cx"> if (originalPhase == PaintPhaseOutline) {
</span><span class="cx"> paintInfo.phase = PaintPhaseSelfOutline;
</span><span class="cx"> paintObject(paintInfo, accumulatedOffset);
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderBoxh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderBox.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderBox.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderBox.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -640,7 +640,7 @@
</span><span class="cx">
</span><span class="cx"> void paintMaskImages(const PaintInfo&, const LayoutRect&);
</span><span class="cx">
</span><del>- BackgroundBleedAvoidance determineBackgroundBleedAvoidance(GraphicsContext*) const;
</del><ins>+ BackgroundBleedAvoidance determineBackgroundBleedAvoidance(GraphicsContext&) const;
</ins><span class="cx"> bool backgroundHasOpaqueTopLayer() const;
</span><span class="cx">
</span><span class="cx"> void computePositionedLogicalWidth(LogicalExtentComputedValues&, RenderRegion* = nullptr) const;
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderBoxModelObjectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -161,7 +161,7 @@
</span><span class="cx"> layer()->backing()->suspendAnimations(time);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-bool RenderBoxModelObject::shouldPaintAtLowQuality(GraphicsContext* context, Image* image, const void* layer, const LayoutSize& size)
</del><ins>+bool RenderBoxModelObject::shouldPaintAtLowQuality(GraphicsContext& context, Image* image, const void* layer, const LayoutSize& size)
</ins><span class="cx"> {
</span><span class="cx"> return view().imageQualityController().shouldPaintAtLowQuality(context, this, image, layer, size);
</span><span class="cx"> }
</span><span class="lines">@@ -518,34 +518,34 @@
</span><span class="cx"> return border;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderBoxModelObject::clipRoundedInnerRect(GraphicsContext * context, const FloatRect& rect, const FloatRoundedRect& clipRect)
</del><ins>+void RenderBoxModelObject::clipRoundedInnerRect(GraphicsContext& context, const FloatRect& rect, const FloatRoundedRect& clipRect)
</ins><span class="cx"> {
</span><span class="cx"> if (clipRect.isRenderable())
</span><del>- context->clipRoundedRect(clipRect);
</del><ins>+ context.clipRoundedRect(clipRect);
</ins><span class="cx"> else {
</span><span class="cx"> // We create a rounded rect for each of the corners and clip it, while making sure we clip opposing corners together.
</span><span class="cx"> if (!clipRect.radii().topLeft().isEmpty() || !clipRect.radii().bottomRight().isEmpty()) {
</span><span class="cx"> FloatRect topCorner(clipRect.rect().x(), clipRect.rect().y(), rect.maxX() - clipRect.rect().x(), rect.maxY() - clipRect.rect().y());
</span><span class="cx"> FloatRoundedRect::Radii topCornerRadii;
</span><span class="cx"> topCornerRadii.setTopLeft(clipRect.radii().topLeft());
</span><del>- context->clipRoundedRect(FloatRoundedRect(topCorner, topCornerRadii));
</del><ins>+ context.clipRoundedRect(FloatRoundedRect(topCorner, topCornerRadii));
</ins><span class="cx">
</span><span class="cx"> FloatRect bottomCorner(rect.x(), rect.y(), clipRect.rect().maxX() - rect.x(), clipRect.rect().maxY() - rect.y());
</span><span class="cx"> FloatRoundedRect::Radii bottomCornerRadii;
</span><span class="cx"> bottomCornerRadii.setBottomRight(clipRect.radii().bottomRight());
</span><del>- context->clipRoundedRect(FloatRoundedRect(bottomCorner, bottomCornerRadii));
</del><ins>+ context.clipRoundedRect(FloatRoundedRect(bottomCorner, bottomCornerRadii));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (!clipRect.radii().topRight().isEmpty() || !clipRect.radii().bottomLeft().isEmpty()) {
</span><span class="cx"> FloatRect topCorner(rect.x(), clipRect.rect().y(), clipRect.rect().maxX() - rect.x(), rect.maxY() - clipRect.rect().y());
</span><span class="cx"> FloatRoundedRect::Radii topCornerRadii;
</span><span class="cx"> topCornerRadii.setTopRight(clipRect.radii().topRight());
</span><del>- context->clipRoundedRect(FloatRoundedRect(topCorner, topCornerRadii));
</del><ins>+ context.clipRoundedRect(FloatRoundedRect(topCorner, topCornerRadii));
</ins><span class="cx">
</span><span class="cx"> FloatRect bottomCorner(clipRect.rect().x(), rect.y(), rect.maxX() - clipRect.rect().x(), clipRect.rect().maxY() - rect.y());
</span><span class="cx"> FloatRoundedRect::Radii bottomCornerRadii;
</span><span class="cx"> bottomCornerRadii.setBottomLeft(clipRect.radii().bottomLeft());
</span><del>- context->clipRoundedRect(FloatRoundedRect(bottomCorner, bottomCornerRadii));
</del><ins>+ context.clipRoundedRect(FloatRoundedRect(bottomCorner, bottomCornerRadii));
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -581,7 +581,7 @@
</span><span class="cx"> return getBackgroundRoundedRect(borderRect, box, boxSize.width(), boxSize.height(), includeLogicalLeftEdge, includeLogicalRightEdge);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static void applyBoxShadowForBackground(GraphicsContext* context, RenderStyle* style)
</del><ins>+static void applyBoxShadowForBackground(GraphicsContext& context, RenderStyle* style)
</ins><span class="cx"> {
</span><span class="cx"> const ShadowData* boxShadow = style->boxShadow();
</span><span class="cx"> while (boxShadow->style() != Normal)
</span><span class="lines">@@ -589,15 +589,15 @@
</span><span class="cx">
</span><span class="cx"> FloatSize shadowOffset(boxShadow->x(), boxShadow->y());
</span><span class="cx"> if (!boxShadow->isWebkitBoxShadow())
</span><del>- context->setShadow(shadowOffset, boxShadow->radius(), boxShadow->color(), style->colorSpace());
</del><ins>+ context.setShadow(shadowOffset, boxShadow->radius(), boxShadow->color(), style->colorSpace());
</ins><span class="cx"> else
</span><del>- context->setLegacyShadow(shadowOffset, boxShadow->radius(), boxShadow->color(), style->colorSpace());
</del><ins>+ context.setLegacyShadow(shadowOffset, boxShadow->radius(), boxShadow->color(), style->colorSpace());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderBoxModelObject::paintMaskForTextFillBox(ImageBuffer* maskImage, const IntRect& maskRect, InlineFlowBox* box, const LayoutRect& scrolledPaintRect)
</span><span class="cx"> {
</span><del>- GraphicsContext* maskImageContext = maskImage->context();
- maskImageContext->translate(-maskRect.x(), -maskRect.y());
</del><ins>+ GraphicsContext& maskImageContext = maskImage->context();
+ maskImageContext.translate(-maskRect.x(), -maskRect.y());
</ins><span class="cx">
</span><span class="cx"> // Now add the text to the clip. We do this by painting using a special paint phase that signals to
</span><span class="cx"> // InlineTextBoxes that they should just add their contents to the clip.
</span><span class="lines">@@ -618,8 +618,8 @@
</span><span class="cx"> void RenderBoxModelObject::paintFillLayerExtended(const PaintInfo& paintInfo, const Color& color, const FillLayer* bgLayer, const LayoutRect& rect,
</span><span class="cx"> BackgroundBleedAvoidance bleedAvoidance, InlineFlowBox* box, const LayoutSize& boxSize, CompositeOperator op, RenderElement* backgroundObject, BaseBackgroundColorUsage baseBgColorUsage)
</span><span class="cx"> {
</span><del>- GraphicsContext* context = paintInfo.context;
- if (context->paintingDisabled() || rect.isEmpty())
</del><ins>+ GraphicsContext& context = paintInfo.context();
+ if (context.paintingDisabled() || rect.isEmpty())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> bool includeLeftEdge = box ? box->includeLogicalLeftEdge() : true;
</span><span class="lines">@@ -672,32 +672,32 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> bool boxShadowShouldBeAppliedToBackground = this->boxShadowShouldBeAppliedToBackground(rect.location(), bleedAvoidance, box);
</span><del>- GraphicsContextStateSaver shadowStateSaver(*context, boxShadowShouldBeAppliedToBackground);
</del><ins>+ GraphicsContextStateSaver shadowStateSaver(context, boxShadowShouldBeAppliedToBackground);
</ins><span class="cx"> if (boxShadowShouldBeAppliedToBackground)
</span><span class="cx"> applyBoxShadowForBackground(context, &style());
</span><span class="cx">
</span><span class="cx"> if (hasRoundedBorder && bleedAvoidance != BackgroundBleedUseTransparencyLayer) {
</span><del>- FloatRoundedRect pixelSnappedBorder = backgroundRoundedRectAdjustedForBleedAvoidance(*context, rect, bleedAvoidance, box, boxSize,
</del><ins>+ FloatRoundedRect pixelSnappedBorder = backgroundRoundedRectAdjustedForBleedAvoidance(context, rect, bleedAvoidance, box, boxSize,
</ins><span class="cx"> includeLeftEdge, includeRightEdge).pixelSnappedRoundedRectForPainting(deviceScaleFactor);
</span><span class="cx"> if (pixelSnappedBorder.isRenderable())
</span><del>- context->fillRoundedRect(pixelSnappedBorder, bgColor, style().colorSpace());
</del><ins>+ context.fillRoundedRect(pixelSnappedBorder, bgColor, style().colorSpace());
</ins><span class="cx"> else {
</span><del>- context->save();
</del><ins>+ context.save();
</ins><span class="cx"> clipRoundedInnerRect(context, pixelSnappedRect, pixelSnappedBorder);
</span><del>- context->fillRect(pixelSnappedBorder.rect(), bgColor, style().colorSpace());
- context->restore();
</del><ins>+ context.fillRect(pixelSnappedBorder.rect(), bgColor, style().colorSpace());
+ context.restore();
</ins><span class="cx"> }
</span><span class="cx"> } else
</span><del>- context->fillRect(pixelSnappedRect, bgColor, style().colorSpace());
</del><ins>+ context.fillRect(pixelSnappedRect, bgColor, style().colorSpace());
</ins><span class="cx">
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // BorderFillBox radius clipping is taken care of by BackgroundBleedUseTransparencyLayer
</span><span class="cx"> bool clipToBorderRadius = hasRoundedBorder && !(isBorderFill && bleedAvoidance == BackgroundBleedUseTransparencyLayer);
</span><del>- GraphicsContextStateSaver clipToBorderStateSaver(*context, clipToBorderRadius);
</del><ins>+ GraphicsContextStateSaver clipToBorderStateSaver(context, clipToBorderRadius);
</ins><span class="cx"> if (clipToBorderRadius) {
</span><del>- RoundedRect border = isBorderFill ? backgroundRoundedRectAdjustedForBleedAvoidance(*context, rect, bleedAvoidance, box, boxSize, includeLeftEdge, includeRightEdge) : getBackgroundRoundedRect(rect, box, boxSize.width(), boxSize.height(), includeLeftEdge, includeRightEdge);
</del><ins>+ RoundedRect border = isBorderFill ? backgroundRoundedRectAdjustedForBleedAvoidance(context, rect, bleedAvoidance, box, boxSize, includeLeftEdge, includeRightEdge) : getBackgroundRoundedRect(rect, box, boxSize.width(), boxSize.height(), includeLeftEdge, includeRightEdge);
</ins><span class="cx">
</span><span class="cx"> // Clip to the padding or content boxes as necessary.
</span><span class="cx"> if (bgLayer->clip() == ContentFillBox) {
</span><span class="lines">@@ -714,12 +714,12 @@
</span><span class="cx"> LayoutUnit pLeft = includeLeftEdge ? paddingLeft() : LayoutUnit();
</span><span class="cx"> LayoutUnit pRight = includeRightEdge ? paddingRight() : LayoutUnit();
</span><span class="cx">
</span><del>- GraphicsContextStateSaver clipWithScrollingStateSaver(*context, clippedWithLocalScrolling);
</del><ins>+ GraphicsContextStateSaver clipWithScrollingStateSaver(context, clippedWithLocalScrolling);
</ins><span class="cx"> LayoutRect scrolledPaintRect = rect;
</span><span class="cx"> if (clippedWithLocalScrolling) {
</span><span class="cx"> // Clip to the overflow area.
</span><span class="cx"> auto& thisBox = downcast<RenderBox>(*this);
</span><del>- context->clip(thisBox.overflowClipRect(rect.location(), currentRenderNamedFlowFragment()));
</del><ins>+ context.clip(thisBox.overflowClipRect(rect.location(), currentRenderNamedFlowFragment()));
</ins><span class="cx">
</span><span class="cx"> // Adjust the paint rect to reflect a scrolled content box with borders at the ends.
</span><span class="cx"> IntSize offset = thisBox.scrolledContentOffset();
</span><span class="lines">@@ -728,7 +728,7 @@
</span><span class="cx"> scrolledPaintRect.setHeight(borderTop() + layer()->scrollHeight() + borderBottom());
</span><span class="cx"> }
</span><span class="cx">
</span><del>- GraphicsContextStateSaver backgroundClipStateSaver(*context, false);
</del><ins>+ GraphicsContextStateSaver backgroundClipStateSaver(context, false);
</ins><span class="cx"> std::unique_ptr<ImageBuffer> maskImage;
</span><span class="cx"> IntRect maskRect;
</span><span class="cx">
</span><span class="lines">@@ -741,7 +741,7 @@
</span><span class="cx"> scrolledPaintRect.width() - bLeft - bRight - (includePadding ? pLeft + pRight : LayoutUnit()),
</span><span class="cx"> scrolledPaintRect.height() - borderTop() - borderBottom() - (includePadding ? paddingTop() + paddingBottom() : LayoutUnit()));
</span><span class="cx"> backgroundClipStateSaver.save();
</span><del>- context->clip(clipRect);
</del><ins>+ context.clip(clipRect);
</ins><span class="cx"> }
</span><span class="cx"> } else if (bgLayer->clip() == TextFillBox) {
</span><span class="cx"> // We have to draw our text into a mask that can then be used to clip background drawing.
</span><span class="lines">@@ -751,15 +751,15 @@
</span><span class="cx"> maskRect.intersect(snappedIntRect(paintInfo.rect));
</span><span class="cx">
</span><span class="cx"> // Now create the mask.
</span><del>- maskImage = context->createCompatibleBuffer(maskRect.size());
</del><ins>+ maskImage = context.createCompatibleBuffer(maskRect.size());
</ins><span class="cx"> if (!maskImage)
</span><span class="cx"> return;
</span><span class="cx"> paintMaskForTextFillBox(maskImage.get(), maskRect, box, scrolledPaintRect);
</span><span class="cx">
</span><span class="cx"> // The mask has been created. Now we just need to clip to it.
</span><span class="cx"> backgroundClipStateSaver.save();
</span><del>- context->clip(maskRect);
- context->beginTransparencyLayer(1);
</del><ins>+ context.clip(maskRect);
+ context.beginTransparencyLayer(1);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Only fill with a base color (e.g., white) if we're the root document, since iframes/frames with
</span><span class="lines">@@ -808,7 +808,7 @@
</span><span class="cx"> shouldClearBackground = true;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- GraphicsContextStateSaver shadowStateSaver(*context, boxShadowShouldBeAppliedToBackground);
</del><ins>+ GraphicsContextStateSaver shadowStateSaver(context, boxShadowShouldBeAppliedToBackground);
</ins><span class="cx"> if (boxShadowShouldBeAppliedToBackground)
</span><span class="cx"> applyBoxShadowForBackground(context, &style());
</span><span class="cx">
</span><span class="lines">@@ -817,12 +817,12 @@
</span><span class="cx"> if (!baseBgColorOnly && bgColor.alpha())
</span><span class="cx"> baseColor = baseColor.blend(bgColor);
</span><span class="cx">
</span><del>- context->fillRect(backgroundRectForPainting, baseColor, style().colorSpace(), CompositeCopy);
</del><ins>+ context.fillRect(backgroundRectForPainting, baseColor, style().colorSpace(), CompositeCopy);
</ins><span class="cx"> } else if (!baseBgColorOnly && bgColor.alpha()) {
</span><del>- CompositeOperator operation = shouldClearBackground ? CompositeCopy : context->compositeOperation();
- context->fillRect(backgroundRectForPainting, bgColor, style().colorSpace(), operation);
</del><ins>+ CompositeOperator operation = shouldClearBackground ? CompositeCopy : context.compositeOperation();
+ context.fillRect(backgroundRectForPainting, bgColor, style().colorSpace(), operation);
</ins><span class="cx"> } else if (shouldClearBackground)
</span><del>- context->clearRect(backgroundRectForPainting);
</del><ins>+ context.clearRect(backgroundRectForPainting);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -834,17 +834,17 @@
</span><span class="cx"> CompositeOperator compositeOp = op == CompositeSourceOver ? bgLayer->composite() : op;
</span><span class="cx"> auto clientForBackgroundImage = backgroundObject ? backgroundObject : this;
</span><span class="cx"> RefPtr<Image> image = bgImage->image(clientForBackgroundImage, geometry.tileSize());
</span><del>- context->setDrawLuminanceMask(bgLayer->maskSourceType() == MaskLuminance);
</del><ins>+ context.setDrawLuminanceMask(bgLayer->maskSourceType() == MaskLuminance);
</ins><span class="cx"> bool useLowQualityScaling = shouldPaintAtLowQuality(context, image.get(), bgLayer, geometry.tileSize());
</span><span class="cx"> if (image.get())
</span><span class="cx"> image->setSpaceSize(geometry.spaceSize());
</span><del>- context->drawTiledImage(image.get(), style().colorSpace(), geometry.destRect(), toLayoutPoint(geometry.relativePhase()), geometry.tileSize(), ImagePaintingOptions(compositeOp, bgLayer->blendMode(), ImageOrientationDescription(), useLowQualityScaling));
</del><ins>+ context.drawTiledImage(image.get(), style().colorSpace(), geometry.destRect(), toLayoutPoint(geometry.relativePhase()), geometry.tileSize(), ImagePaintingOptions(compositeOp, bgLayer->blendMode(), ImageOrientationDescription(), useLowQualityScaling));
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (bgLayer->clip() == TextFillBox) {
</span><del>- context->drawImageBuffer(maskImage.get(), ColorSpaceDeviceRGB, maskRect, CompositeDestinationIn);
- context->endTransparencyLayer();
</del><ins>+ context.drawImageBuffer(maskImage.get(), ColorSpaceDeviceRGB, maskRect, CompositeDestinationIn);
+ context.endTransparencyLayer();
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1242,7 +1242,7 @@
</span><span class="cx"> destRect = geometry.destRect();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-bool RenderBoxModelObject::paintNinePieceImage(GraphicsContext* graphicsContext, const LayoutRect& rect, const RenderStyle& style,
</del><ins>+bool RenderBoxModelObject::paintNinePieceImage(GraphicsContext& graphicsContext, const LayoutRect& rect, const RenderStyle& style,
</ins><span class="cx"> const NinePieceImage& ninePieceImage, CompositeOperator op)
</span><span class="cx"> {
</span><span class="cx"> StyleImage* styleImage = ninePieceImage.image();
</span><span class="lines">@@ -1426,7 +1426,7 @@
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderBoxModelObject::paintOneBorderSide(GraphicsContext* graphicsContext, const RenderStyle& style, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
</del><ins>+void RenderBoxModelObject::paintOneBorderSide(GraphicsContext& graphicsContext, const RenderStyle& style, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
</ins><span class="cx"> const LayoutRect& sideRect, BoxSide side, BoxSide adjacentSide1, BoxSide adjacentSide2, const BorderEdge edges[], const Path* path,
</span><span class="cx"> BackgroundBleedAvoidance bleedAvoidance, bool includeLogicalLeftEdge, bool includeLogicalRightEdge, bool antialias, const Color* overrideColor)
</span><span class="cx"> {
</span><span class="lines">@@ -1444,7 +1444,7 @@
</span><span class="cx"> const Color& colorToPaint = overrideColor ? *overrideColor : edgeToRender.color();
</span><span class="cx">
</span><span class="cx"> if (path) {
</span><del>- GraphicsContextStateSaver stateSaver(*graphicsContext);
</del><ins>+ GraphicsContextStateSaver stateSaver(graphicsContext);
</ins><span class="cx"> if (innerBorder.isRenderable())
</span><span class="cx"> clipBorderSidePolygon(graphicsContext, outerBorder, innerBorder, side, adjacentSide1StylesMatch, adjacentSide2StylesMatch);
</span><span class="cx"> else
</span><span class="lines">@@ -1458,7 +1458,7 @@
</span><span class="cx"> bool clipAdjacentSide2 = colorNeedsAntiAliasAtCorner(side, adjacentSide2, edges) && mitreAdjacentSide2;
</span><span class="cx"> bool shouldClip = clipForStyle || clipAdjacentSide1 || clipAdjacentSide2;
</span><span class="cx">
</span><del>- GraphicsContextStateSaver clipStateSaver(*graphicsContext, shouldClip);
</del><ins>+ GraphicsContextStateSaver clipStateSaver(graphicsContext, shouldClip);
</ins><span class="cx"> if (shouldClip) {
</span><span class="cx"> bool aliasAdjacentSide1 = clipAdjacentSide1 || (clipForStyle && mitreAdjacentSide1);
</span><span class="cx"> bool aliasAdjacentSide2 = clipAdjacentSide2 || (clipForStyle && mitreAdjacentSide2);
</span><span class="lines">@@ -1467,7 +1467,7 @@
</span><span class="cx"> mitreAdjacentSide1 = false;
</span><span class="cx"> mitreAdjacentSide2 = false;
</span><span class="cx"> }
</span><del>- drawLineForBoxSide(*graphicsContext, sideRect, side, colorToPaint, edgeToRender.style(), mitreAdjacentSide1 ? adjacentEdge1.widthForPainting() : 0, mitreAdjacentSide2 ? adjacentEdge2.widthForPainting() : 0, antialias);
</del><ins>+ drawLineForBoxSide(graphicsContext, sideRect, side, colorToPaint, edgeToRender.style(), mitreAdjacentSide1 ? adjacentEdge1.widthForPainting() : 0, mitreAdjacentSide2 ? adjacentEdge2.widthForPainting() : 0, antialias);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1488,7 +1488,7 @@
</span><span class="cx"> return sideRect;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderBoxModelObject::paintBorderSides(GraphicsContext* graphicsContext, const RenderStyle& style, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
</del><ins>+void RenderBoxModelObject::paintBorderSides(GraphicsContext& graphicsContext, const RenderStyle& style, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
</ins><span class="cx"> const IntPoint& innerBorderAdjustment, const BorderEdge edges[], BorderEdgeFlags edgeSet, BackgroundBleedAvoidance bleedAvoidance,
</span><span class="cx"> bool includeLogicalLeftEdge, bool includeLogicalRightEdge, bool antialias, const Color* overrideColor)
</span><span class="cx"> {
</span><span class="lines">@@ -1536,7 +1536,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderBoxModelObject::paintTranslucentBorderSides(GraphicsContext* graphicsContext, const RenderStyle& style, const RoundedRect& outerBorder, const RoundedRect& innerBorder, const IntPoint& innerBorderAdjustment,
</del><ins>+void RenderBoxModelObject::paintTranslucentBorderSides(GraphicsContext& graphicsContext, const RenderStyle& style, const RoundedRect& outerBorder, const RoundedRect& innerBorder, const IntPoint& innerBorderAdjustment,
</ins><span class="cx"> const BorderEdge edges[], BorderEdgeFlags edgesToDraw, BackgroundBleedAvoidance bleedAvoidance, bool includeLogicalLeftEdge, bool includeLogicalRightEdge, bool antialias)
</span><span class="cx"> {
</span><span class="cx"> // willBeOverdrawn assumes that we draw in order: top, bottom, left, right.
</span><span class="lines">@@ -1566,14 +1566,14 @@
</span><span class="cx">
</span><span class="cx"> bool useTransparencyLayer = includesAdjacentEdges(commonColorEdgeSet) && commonColor.hasAlpha();
</span><span class="cx"> if (useTransparencyLayer) {
</span><del>- graphicsContext->beginTransparencyLayer(static_cast<float>(commonColor.alpha()) / 255);
</del><ins>+ graphicsContext.beginTransparencyLayer(static_cast<float>(commonColor.alpha()) / 255);
</ins><span class="cx"> commonColor = Color(commonColor.red(), commonColor.green(), commonColor.blue());
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> paintBorderSides(graphicsContext, style, outerBorder, innerBorder, innerBorderAdjustment, edges, commonColorEdgeSet, bleedAvoidance, includeLogicalLeftEdge, includeLogicalRightEdge, antialias, &commonColor);
</span><span class="cx">
</span><span class="cx"> if (useTransparencyLayer)
</span><del>- graphicsContext->endTransparencyLayer();
</del><ins>+ graphicsContext.endTransparencyLayer();
</ins><span class="cx">
</span><span class="cx"> edgesToDraw &= ~commonColorEdgeSet;
</span><span class="cx"> }
</span><span class="lines">@@ -1582,9 +1582,9 @@
</span><span class="cx"> void RenderBoxModelObject::paintBorder(const PaintInfo& info, const LayoutRect& rect, const RenderStyle& style,
</span><span class="cx"> BackgroundBleedAvoidance bleedAvoidance, bool includeLogicalLeftEdge, bool includeLogicalRightEdge)
</span><span class="cx"> {
</span><del>- GraphicsContext* graphicsContext = info.context;
</del><ins>+ GraphicsContext& graphicsContext = info.context();
</ins><span class="cx">
</span><del>- if (graphicsContext->paintingDisabled())
</del><ins>+ if (graphicsContext.paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> if (rect.isEmpty())
</span><span class="lines">@@ -1597,7 +1597,7 @@
</span><span class="cx"> BorderEdge edges[4];
</span><span class="cx"> BorderEdge::getBorderEdgeInfo(edges, style, document().deviceScaleFactor(), includeLogicalLeftEdge, includeLogicalRightEdge);
</span><span class="cx"> RoundedRect outerBorder = style.getRoundedBorderFor(rect, includeLogicalLeftEdge, includeLogicalRightEdge);
</span><del>- RoundedRect innerBorder = style.getRoundedInnerBorderFor(borderInnerRectAdjustedForBleedAvoidance(*graphicsContext, rect, bleedAvoidance), includeLogicalLeftEdge, includeLogicalRightEdge);
</del><ins>+ RoundedRect innerBorder = style.getRoundedInnerBorderFor(borderInnerRectAdjustedForBleedAvoidance(graphicsContext, rect, bleedAvoidance), includeLogicalLeftEdge, includeLogicalRightEdge);
</ins><span class="cx">
</span><span class="cx"> bool haveAlphaColor = false;
</span><span class="cx"> bool haveAllSolidEdges = true;
</span><span class="lines">@@ -1703,9 +1703,9 @@
</span><span class="cx"> else
</span><span class="cx"> path.addRect(pixelSnappedInnerBorder.rect());
</span><span class="cx">
</span><del>- graphicsContext->setFillRule(RULE_EVENODD);
- graphicsContext->setFillColor(edges[firstVisibleEdge].color(), style.colorSpace());
- graphicsContext->fillPath(path);
</del><ins>+ graphicsContext.setFillRule(RULE_EVENODD);
+ graphicsContext.setFillColor(edges[firstVisibleEdge].color(), style.colorSpace());
+ graphicsContext.fillPath(path);
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx"> // Avoid creating transparent layers
</span><span class="lines">@@ -1720,23 +1720,23 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>- graphicsContext->setFillRule(RULE_NONZERO);
- graphicsContext->setFillColor(edges[firstVisibleEdge].color(), style.colorSpace());
- graphicsContext->fillPath(path);
</del><ins>+ graphicsContext.setFillRule(RULE_NONZERO);
+ graphicsContext.setFillColor(edges[firstVisibleEdge].color(), style.colorSpace());
+ graphicsContext.fillPath(path);
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool clipToOuterBorder = outerBorder.isRounded();
</span><del>- GraphicsContextStateSaver stateSaver(*graphicsContext, clipToOuterBorder);
</del><ins>+ GraphicsContextStateSaver stateSaver(graphicsContext, clipToOuterBorder);
</ins><span class="cx"> if (clipToOuterBorder) {
</span><span class="cx"> // Clip to the inner and outer radii rects.
</span><span class="cx"> if (bleedAvoidance != BackgroundBleedUseTransparencyLayer)
</span><del>- graphicsContext->clipRoundedRect(outerBorder.pixelSnappedRoundedRectForPainting(deviceScaleFactor));
</del><ins>+ graphicsContext.clipRoundedRect(outerBorder.pixelSnappedRoundedRectForPainting(deviceScaleFactor));
</ins><span class="cx"> // isRenderable() check avoids issue described in https://bugs.webkit.org/show_bug.cgi?id=38787
</span><span class="cx"> // The inside will be clipped out later (in clipBorderSideForComplexInnerPath)
</span><span class="cx"> if (innerBorder.isRenderable())
</span><del>- graphicsContext->clipOutRoundedRect(innerBorder.pixelSnappedRoundedRectForPainting(deviceScaleFactor));
</del><ins>+ graphicsContext.clipOutRoundedRect(innerBorder.pixelSnappedRoundedRectForPainting(deviceScaleFactor));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // If only one edge visible antialiasing doesn't create seams
</span><span class="lines">@@ -1749,7 +1749,7 @@
</span><span class="cx"> paintBorderSides(graphicsContext, style, outerBorder, unadjustedInnerBorder, innerBorderAdjustment, edges, edgesToDraw, bleedAvoidance, includeLogicalLeftEdge, includeLogicalRightEdge, antialias);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderBoxModelObject::drawBoxSideFromPath(GraphicsContext* graphicsContext, const LayoutRect& borderRect, const Path& borderPath, const BorderEdge edges[],
</del><ins>+void RenderBoxModelObject::drawBoxSideFromPath(GraphicsContext& graphicsContext, const LayoutRect& borderRect, const Path& borderPath, const BorderEdge edges[],
</ins><span class="cx"> float thickness, float drawThickness, BoxSide side, const RenderStyle& style, Color color, EBorderStyle borderStyle, BackgroundBleedAvoidance bleedAvoidance,
</span><span class="cx"> bool includeLogicalLeftEdge, bool includeLogicalRightEdge)
</span><span class="cx"> {
</span><span class="lines">@@ -1765,14 +1765,14 @@
</span><span class="cx"> return;
</span><span class="cx"> case DOTTED:
</span><span class="cx"> case DASHED: {
</span><del>- graphicsContext->setStrokeColor(color, style.colorSpace());
</del><ins>+ graphicsContext.setStrokeColor(color, style.colorSpace());
</ins><span class="cx">
</span><span class="cx"> // The stroke is doubled here because the provided path is the
</span><span class="cx"> // outside edge of the border so half the stroke is clipped off.
</span><span class="cx"> // The extra multiplier is so that the clipping mask can antialias
</span><span class="cx"> // the edges to prevent jaggies.
</span><del>- graphicsContext->setStrokeThickness(drawThickness * 2 * 1.1f);
- graphicsContext->setStrokeStyle(borderStyle == DASHED ? DashedStroke : DottedStroke);
</del><ins>+ graphicsContext.setStrokeThickness(drawThickness * 2 * 1.1f);
+ graphicsContext.setStrokeStyle(borderStyle == DASHED ? DashedStroke : DottedStroke);
</ins><span class="cx">
</span><span class="cx"> // If the number of dashes that fit in the path is odd and non-integral then we
</span><span class="cx"> // will have an awkwardly-sized dash at the end of the path. To try to avoid that
</span><span class="lines">@@ -1795,13 +1795,13 @@
</span><span class="cx"> DashArray lineDash;
</span><span class="cx"> lineDash.append(dashLength);
</span><span class="cx"> lineDash.append(gapLength);
</span><del>- graphicsContext->setLineDash(lineDash, dashLength);
</del><ins>+ graphicsContext.setLineDash(lineDash, dashLength);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // FIXME: stroking the border path causes issues with tight corners:
</span><span class="cx"> // https://bugs.webkit.org/show_bug.cgi?id=58711
</span><span class="cx"> // Also, to get the best appearance we should stroke a path between the two borders.
</span><del>- graphicsContext->strokePath(borderPath);
</del><ins>+ graphicsContext.strokePath(borderPath);
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx"> case DOUBLE: {
</span><span class="lines">@@ -1824,18 +1824,18 @@
</span><span class="cx">
</span><span class="cx"> // Draw inner border line
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*graphicsContext);
</del><ins>+ GraphicsContextStateSaver stateSaver(graphicsContext);
</ins><span class="cx"> RoundedRect innerClip = style.getRoundedInnerBorderFor(borderRect,
</span><span class="cx"> innerBorderTopWidth, innerBorderBottomWidth, innerBorderLeftWidth, innerBorderRightWidth,
</span><span class="cx"> includeLogicalLeftEdge, includeLogicalRightEdge);
</span><span class="cx">
</span><del>- graphicsContext->clipRoundedRect(FloatRoundedRect(innerClip));
</del><ins>+ graphicsContext.clipRoundedRect(FloatRoundedRect(innerClip));
</ins><span class="cx"> drawBoxSideFromPath(graphicsContext, borderRect, borderPath, edges, thickness, drawThickness, side, style, color, SOLID, bleedAvoidance, includeLogicalLeftEdge, includeLogicalRightEdge);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Draw outer border line
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*graphicsContext);
</del><ins>+ GraphicsContextStateSaver stateSaver(graphicsContext);
</ins><span class="cx"> LayoutRect outerRect = borderRect;
</span><span class="cx"> if (bleedAvoidance == BackgroundBleedUseTransparencyLayer) {
</span><span class="cx"> outerRect.inflate(1);
</span><span class="lines">@@ -1848,7 +1848,7 @@
</span><span class="cx"> RoundedRect outerClip = style.getRoundedInnerBorderFor(outerRect,
</span><span class="cx"> outerBorderTopWidth, outerBorderBottomWidth, outerBorderLeftWidth, outerBorderRightWidth,
</span><span class="cx"> includeLogicalLeftEdge, includeLogicalRightEdge);
</span><del>- graphicsContext->clipOutRoundedRect(FloatRoundedRect(outerClip));
</del><ins>+ graphicsContext.clipOutRoundedRect(FloatRoundedRect(outerClip));
</ins><span class="cx"> drawBoxSideFromPath(graphicsContext, borderRect, borderPath, edges, thickness, drawThickness, side, style, color, SOLID, bleedAvoidance, includeLogicalLeftEdge, includeLogicalRightEdge);
</span><span class="cx"> }
</span><span class="cx"> return;
</span><span class="lines">@@ -1870,7 +1870,7 @@
</span><span class="cx"> drawBoxSideFromPath(graphicsContext, borderRect, borderPath, edges, thickness, drawThickness, side, style, color, s1, bleedAvoidance, includeLogicalLeftEdge, includeLogicalRightEdge);
</span><span class="cx">
</span><span class="cx"> // Paint inner only
</span><del>- GraphicsContextStateSaver stateSaver(*graphicsContext);
</del><ins>+ GraphicsContextStateSaver stateSaver(graphicsContext);
</ins><span class="cx"> LayoutUnit topWidth = edges[BSTop].widthForPainting() / 2;
</span><span class="cx"> LayoutUnit bottomWidth = edges[BSBottom].widthForPainting() / 2;
</span><span class="cx"> LayoutUnit leftWidth = edges[BSLeft].widthForPainting() / 2;
</span><span class="lines">@@ -1880,7 +1880,7 @@
</span><span class="cx"> topWidth, bottomWidth, leftWidth, rightWidth,
</span><span class="cx"> includeLogicalLeftEdge, includeLogicalRightEdge);
</span><span class="cx">
</span><del>- graphicsContext->clipRoundedRect(FloatRoundedRect(clipRect));
</del><ins>+ graphicsContext.clipRoundedRect(FloatRoundedRect(clipRect));
</ins><span class="cx"> drawBoxSideFromPath(graphicsContext, borderRect, borderPath, edges, thickness, drawThickness, side, style, color, s2, bleedAvoidance, includeLogicalLeftEdge, includeLogicalRightEdge);
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="lines">@@ -1892,9 +1892,9 @@
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- graphicsContext->setStrokeStyle(NoStroke);
- graphicsContext->setFillColor(color, style.colorSpace());
- graphicsContext->drawRect(snapRectToDevicePixels(borderRect, document().deviceScaleFactor()));
</del><ins>+ graphicsContext.setStrokeStyle(NoStroke);
+ graphicsContext.setFillColor(color, style.colorSpace());
+ graphicsContext.drawRect(snapRectToDevicePixels(borderRect, document().deviceScaleFactor()));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> static void findInnerVertex(const FloatPoint& outerCorner, const FloatPoint& innerCorner, const FloatPoint& centerPoint, FloatPoint& result)
</span><span class="lines">@@ -1912,7 +1912,7 @@
</span><span class="cx"> findIntersection(outerCorner, innerCorner, FloatPoint(0, centerPoint.y()), FloatPoint(100, centerPoint.y()), result);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderBoxModelObject::clipBorderSidePolygon(GraphicsContext* graphicsContext, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
</del><ins>+void RenderBoxModelObject::clipBorderSidePolygon(GraphicsContext& graphicsContext, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
</ins><span class="cx"> BoxSide side, bool firstEdgeMatches, bool secondEdgeMatches)
</span><span class="cx"> {
</span><span class="cx"> FloatPoint quad[4];
</span><span class="lines">@@ -1994,7 +1994,7 @@
</span><span class="cx"> // If the border matches both of its adjacent sides, don't anti-alias the clip, and
</span><span class="cx"> // if neither side matches, anti-alias the clip.
</span><span class="cx"> if (firstEdgeMatches == secondEdgeMatches) {
</span><del>- graphicsContext->clipConvexPolygon(4, quad, !firstEdgeMatches);
</del><ins>+ graphicsContext.clipConvexPolygon(4, quad, !firstEdgeMatches);
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -2004,7 +2004,7 @@
</span><span class="cx"> firstQuad[1] = quad[1];
</span><span class="cx"> firstQuad[2] = side == BSTop || side == BSBottom ? FloatPoint(quad[3].x(), quad[2].y()) : FloatPoint(quad[2].x(), quad[3].y());
</span><span class="cx"> firstQuad[3] = quad[3];
</span><del>- graphicsContext->clipConvexPolygon(4, firstQuad, !firstEdgeMatches);
</del><ins>+ graphicsContext.clipConvexPolygon(4, firstQuad, !firstEdgeMatches);
</ins><span class="cx">
</span><span class="cx"> FloatPoint secondQuad[4];
</span><span class="cx"> secondQuad[0] = quad[0];
</span><span class="lines">@@ -2012,7 +2012,7 @@
</span><span class="cx"> secondQuad[2] = quad[2];
</span><span class="cx"> secondQuad[3] = quad[3];
</span><span class="cx"> // Antialiasing affects the second side.
</span><del>- graphicsContext->clipConvexPolygon(4, secondQuad, !secondEdgeMatches);
</del><ins>+ graphicsContext.clipConvexPolygon(4, secondQuad, !secondEdgeMatches);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> static LayoutRect calculateSideRectIncludingInner(const RoundedRect& outerBorder, const BorderEdge edges[], BoxSide side)
</span><span class="lines">@@ -2122,11 +2122,11 @@
</span><span class="cx"> return RoundedRect(newRect, newRadii);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderBoxModelObject::clipBorderSideForComplexInnerPath(GraphicsContext* graphicsContext, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
</del><ins>+void RenderBoxModelObject::clipBorderSideForComplexInnerPath(GraphicsContext& graphicsContext, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
</ins><span class="cx"> BoxSide side, const class BorderEdge edges[])
</span><span class="cx"> {
</span><del>- graphicsContext->clip(calculateSideRectIncludingInner(outerBorder, edges, side));
- graphicsContext->clipOutRoundedRect(FloatRoundedRect(calculateAdjustedInnerBorder(innerBorder, side)));
</del><ins>+ graphicsContext.clip(calculateSideRectIncludingInner(outerBorder, edges, side));
+ graphicsContext.clipOutRoundedRect(FloatRoundedRect(calculateAdjustedInnerBorder(innerBorder, side)));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool RenderBoxModelObject::borderObscuresBackgroundEdge(const FloatSize& contextScale) const
</span><span class="lines">@@ -2230,8 +2230,8 @@
</span><span class="cx"> void RenderBoxModelObject::paintBoxShadow(const PaintInfo& info, const LayoutRect& paintRect, const RenderStyle& style, ShadowStyle shadowStyle, bool includeLogicalLeftEdge, bool includeLogicalRightEdge)
</span><span class="cx"> {
</span><span class="cx"> // FIXME: Deal with border-image. Would be great to use border-image as a mask.
</span><del>- GraphicsContext* context = info.context;
- if (context->paintingDisabled() || !style.boxShadow())
</del><ins>+ GraphicsContext& context = info.context();
+ if (context.paintingDisabled() || !style.boxShadow())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> RoundedRect border = (shadowStyle == Inset) ? style.getRoundedInnerBorderFor(paintRect, includeLogicalLeftEdge, includeLogicalRightEdge)
</span><span class="lines">@@ -2268,8 +2268,8 @@
</span><span class="cx"> pixelSnappedShadowRect.inflate(shadowPaintingExtent + shadowSpread);
</span><span class="cx"> pixelSnappedShadowRect.move(shadowOffset);
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context);
- context->clip(pixelSnappedShadowRect);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
+ context.clip(pixelSnappedShadowRect);
</ins><span class="cx">
</span><span class="cx"> // Move the fill just outside the clip, adding 1 pixel separation so that the fill does not
</span><span class="cx"> // bleed in (due to antialiasing) if the context is transformed.
</span><span class="lines">@@ -2278,9 +2278,9 @@
</span><span class="cx"> fillRect.move(extraOffset);
</span><span class="cx">
</span><span class="cx"> if (shadow->isWebkitBoxShadow())
</span><del>- context->setLegacyShadow(shadowOffset, shadowRadius, shadowColor, style.colorSpace());
</del><ins>+ context.setLegacyShadow(shadowOffset, shadowRadius, shadowColor, style.colorSpace());
</ins><span class="cx"> else
</span><del>- context->setShadow(shadowOffset, shadowRadius, shadowColor, style.colorSpace());
</del><ins>+ context.setShadow(shadowOffset, shadowRadius, shadowColor, style.colorSpace());
</ins><span class="cx">
</span><span class="cx"> FloatRoundedRect rectToClipOut = border.pixelSnappedRoundedRectForPainting(deviceScaleFactor);
</span><span class="cx"> FloatRoundedRect pixelSnappedFillRect = fillRect.pixelSnappedRoundedRectForPainting(deviceScaleFactor);
</span><span class="lines">@@ -2292,18 +2292,18 @@
</span><span class="cx"> rectToClipOut.inflateWithRadii(LayoutUnit::fromPixel(-1));
</span><span class="cx">
</span><span class="cx"> if (!rectToClipOut.isEmpty())
</span><del>- context->clipOutRoundedRect(rectToClipOut);
</del><ins>+ context.clipOutRoundedRect(rectToClipOut);
</ins><span class="cx">
</span><span class="cx"> RoundedRect influenceRect(LayoutRect(pixelSnappedShadowRect), border.radii());
</span><span class="cx"> influenceRect.expandRadii(2 * shadowPaintingExtent + shadowSpread);
</span><span class="cx">
</span><span class="cx"> if (allCornersClippedOut(influenceRect, info.rect))
</span><del>- context->fillRect(pixelSnappedFillRect.rect(), Color::black, style.colorSpace());
</del><ins>+ context.fillRect(pixelSnappedFillRect.rect(), Color::black, style.colorSpace());
</ins><span class="cx"> else {
</span><span class="cx"> pixelSnappedFillRect.expandRadii(shadowSpread);
</span><span class="cx"> if (!pixelSnappedFillRect.isRenderable())
</span><span class="cx"> pixelSnappedFillRect.adjustRadii();
</span><del>- context->fillRoundedRect(pixelSnappedFillRect, Color::black, style.colorSpace());
</del><ins>+ context.fillRoundedRect(pixelSnappedFillRect, Color::black, style.colorSpace());
</ins><span class="cx"> }
</span><span class="cx"> } else {
</span><span class="cx"> // If the box is opaque, it is unnecessary to clip it out. However, doing so saves time
</span><span class="lines">@@ -2313,14 +2313,14 @@
</span><span class="cx"> if (hasOpaqueBackground) {
</span><span class="cx"> // FIXME: The function to decide on the policy based on the transform should be a named function.
</span><span class="cx"> // FIXME: It's not clear if this check is right. What about integral scale factors?
</span><del>- AffineTransform transform = context->getCTM();
</del><ins>+ AffineTransform transform = context.getCTM();
</ins><span class="cx"> if (transform.a() != 1 || (transform.d() != 1 && transform.d() != -1) || transform.b() || transform.c())
</span><span class="cx"> rectToClipOut.inflate(LayoutUnit::fromPixel(-1).toFloat());
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (!rectToClipOut.isEmpty())
</span><del>- context->clipOut(rectToClipOut.rect());
- context->fillRect(pixelSnappedFillRect.rect(), Color::black, style.colorSpace());
</del><ins>+ context.clipOut(rectToClipOut.rect());
+ context.fillRect(pixelSnappedFillRect.rect(), Color::black, style.colorSpace());
</ins><span class="cx"> }
</span><span class="cx"> } else {
</span><span class="cx"> // Inset shadow.
</span><span class="lines">@@ -2330,9 +2330,9 @@
</span><span class="cx">
</span><span class="cx"> if (pixelSnappedHoleRect.isEmpty()) {
</span><span class="cx"> if (hasBorderRadius)
</span><del>- context->fillRoundedRect(pixelSnappedBorderRect, shadowColor, style.colorSpace());
</del><ins>+ context.fillRoundedRect(pixelSnappedBorderRect, shadowColor, style.colorSpace());
</ins><span class="cx"> else
</span><del>- context->fillRect(pixelSnappedBorderRect.rect(), shadowColor, style.colorSpace());
</del><ins>+ context.fillRect(pixelSnappedBorderRect.rect(), shadowColor, style.colorSpace());
</ins><span class="cx"> continue;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -2357,25 +2357,25 @@
</span><span class="cx"> FloatRect pixelSnappedOuterRect = snapRectToDevicePixels(areaCastingShadowInHole(LayoutRect(pixelSnappedBorderRect.rect()), shadowPaintingExtent, shadowSpread, shadowOffset), deviceScaleFactor);
</span><span class="cx"> FloatRoundedRect pixelSnappedRoundedHole = FloatRoundedRect(pixelSnappedHoleRect, pixelSnappedBorderRect.radii());
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
</ins><span class="cx"> if (hasBorderRadius) {
</span><span class="cx"> Path path;
</span><span class="cx"> path.addRoundedRect(pixelSnappedBorderRect);
</span><del>- context->clip(path);
</del><ins>+ context.clip(path);
</ins><span class="cx"> pixelSnappedRoundedHole.shrinkRadii(shadowSpread);
</span><span class="cx"> } else
</span><del>- context->clip(pixelSnappedBorderRect.rect());
</del><ins>+ context.clip(pixelSnappedBorderRect.rect());
</ins><span class="cx">
</span><span class="cx"> IntSize extraOffset(2 * roundToInt(paintRect.width()) + std::max(0, shadowOffset.width()) + shadowPaintingExtent - 2 * shadowSpread + 1, 0);
</span><del>- context->translate(extraOffset.width(), extraOffset.height());
</del><ins>+ context.translate(extraOffset.width(), extraOffset.height());
</ins><span class="cx"> shadowOffset -= extraOffset;
</span><span class="cx">
</span><span class="cx"> if (shadow->isWebkitBoxShadow())
</span><del>- context->setLegacyShadow(shadowOffset, shadowRadius, shadowColor, style.colorSpace());
</del><ins>+ context.setLegacyShadow(shadowOffset, shadowRadius, shadowColor, style.colorSpace());
</ins><span class="cx"> else
</span><del>- context->setShadow(shadowOffset, shadowRadius, shadowColor, style.colorSpace());
</del><ins>+ context.setShadow(shadowOffset, shadowRadius, shadowColor, style.colorSpace());
</ins><span class="cx">
</span><del>- context->fillRectWithRoundedHole(pixelSnappedOuterRect, pixelSnappedRoundedHole, fillColor, style.colorSpace());
</del><ins>+ context.fillRectWithRoundedHole(pixelSnappedOuterRect, pixelSnappedRoundedHole, fillColor, style.colorSpace());
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -2484,11 +2484,11 @@
</span><span class="cx"> return currentStyle.isHorizontalWritingMode() ? LayoutRect(x, y, caretWidth, height) : LayoutRect(y, x, height, caretWidth);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-bool RenderBoxModelObject::shouldAntialiasLines(GraphicsContext* context)
</del><ins>+bool RenderBoxModelObject::shouldAntialiasLines(GraphicsContext& context)
</ins><span class="cx"> {
</span><span class="cx"> // FIXME: We may want to not antialias when scaled by an integral value,
</span><span class="cx"> // and we may want to antialias when translated by a non-integral value.
</span><del>- return !context->getCTM().isIdentityOrTranslationOrFlipped();
</del><ins>+ return !context.getCTM().isIdentityOrTranslationOrFlipped();
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderBoxModelObject::mapAbsoluteToLocalPoint(MapCoordinatesFlags mode, TransformState& transformState) const
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderBoxModelObjecth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderBoxModelObject.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderBoxModelObject.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderBoxModelObject.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -205,7 +205,7 @@
</span><span class="cx"> virtual void childBecameNonInline(RenderElement&) { }
</span><span class="cx">
</span><span class="cx"> void paintBorder(const PaintInfo&, const LayoutRect&, const RenderStyle&, BackgroundBleedAvoidance = BackgroundBleedNone, bool includeLogicalLeftEdge = true, bool includeLogicalRightEdge = true);
</span><del>- bool paintNinePieceImage(GraphicsContext*, const LayoutRect&, const RenderStyle&, const NinePieceImage&, CompositeOperator = CompositeSourceOver);
</del><ins>+ bool paintNinePieceImage(GraphicsContext&, const LayoutRect&, const RenderStyle&, const NinePieceImage&, CompositeOperator = CompositeSourceOver);
</ins><span class="cx"> void paintBoxShadow(const PaintInfo&, const LayoutRect&, const RenderStyle&, ShadowStyle, bool includeLogicalLeftEdge = true, bool includeLogicalRightEdge = true);
</span><span class="cx"> void paintFillLayerExtended(const PaintInfo&, const Color&, const FillLayer*, const LayoutRect&, BackgroundBleedAvoidance, InlineFlowBox* = nullptr, const LayoutSize& = LayoutSize(), CompositeOperator = CompositeSourceOver, RenderElement* backgroundObject = nullptr, BaseBackgroundColorUsage = BaseBackgroundColorUse);
</span><span class="cx">
</span><span class="lines">@@ -251,16 +251,16 @@
</span><span class="cx"> RoundedRect backgroundRoundedRectAdjustedForBleedAvoidance(const GraphicsContext&, const LayoutRect&, BackgroundBleedAvoidance, InlineFlowBox*, const LayoutSize&, bool includeLogicalLeftEdge, bool includeLogicalRightEdge) const;
</span><span class="cx"> LayoutRect borderInnerRectAdjustedForBleedAvoidance(const GraphicsContext&, const LayoutRect&, BackgroundBleedAvoidance) const;
</span><span class="cx">
</span><del>- bool shouldPaintAtLowQuality(GraphicsContext*, Image*, const void*, const LayoutSize&);
</del><ins>+ bool shouldPaintAtLowQuality(GraphicsContext&, Image*, const void*, const LayoutSize&);
</ins><span class="cx">
</span><span class="cx"> RenderBoxModelObject* continuation() const;
</span><span class="cx"> void setContinuation(RenderBoxModelObject*);
</span><span class="cx">
</span><span class="cx"> LayoutRect localCaretRectForEmptyElement(LayoutUnit width, LayoutUnit textIndentOffset);
</span><span class="cx">
</span><del>- static bool shouldAntialiasLines(GraphicsContext*);
</del><ins>+ static bool shouldAntialiasLines(GraphicsContext&);
</ins><span class="cx">
</span><del>- static void clipRoundedInnerRect(GraphicsContext*, const FloatRect&, const FloatRoundedRect& clipRect);
</del><ins>+ static void clipRoundedInnerRect(GraphicsContext&, const FloatRect&, const FloatRoundedRect& clipRect);
</ins><span class="cx">
</span><span class="cx"> bool hasAutoHeightOrContainingBlockWithAutoHeight() const;
</span><span class="cx">
</span><span class="lines">@@ -307,18 +307,18 @@
</span><span class="cx">
</span><span class="cx"> bool fixedBackgroundPaintsInLocalCoordinates() const;
</span><span class="cx">
</span><del>- void clipBorderSidePolygon(GraphicsContext*, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
</del><ins>+ void clipBorderSidePolygon(GraphicsContext&, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
</ins><span class="cx"> BoxSide, bool firstEdgeMatches, bool secondEdgeMatches);
</span><del>- void clipBorderSideForComplexInnerPath(GraphicsContext*, const RoundedRect&, const RoundedRect&, BoxSide, const BorderEdge[]);
- void paintOneBorderSide(GraphicsContext*, const RenderStyle&, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
</del><ins>+ void clipBorderSideForComplexInnerPath(GraphicsContext&, const RoundedRect&, const RoundedRect&, BoxSide, const BorderEdge[]);
+ void paintOneBorderSide(GraphicsContext&, const RenderStyle&, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
</ins><span class="cx"> const LayoutRect& sideRect, BoxSide, BoxSide adjacentSide1, BoxSide adjacentSide2, const BorderEdge[],
</span><span class="cx"> const Path*, BackgroundBleedAvoidance, bool includeLogicalLeftEdge, bool includeLogicalRightEdge, bool antialias, const Color* overrideColor = nullptr);
</span><del>- void paintTranslucentBorderSides(GraphicsContext*, const RenderStyle&, const RoundedRect& outerBorder, const RoundedRect& innerBorder, const IntPoint& innerBorderAdjustment,
</del><ins>+ void paintTranslucentBorderSides(GraphicsContext&, const RenderStyle&, const RoundedRect& outerBorder, const RoundedRect& innerBorder, const IntPoint& innerBorderAdjustment,
</ins><span class="cx"> const BorderEdge[], BorderEdgeFlags, BackgroundBleedAvoidance, bool includeLogicalLeftEdge, bool includeLogicalRightEdge, bool antialias = false);
</span><del>- void paintBorderSides(GraphicsContext*, const RenderStyle&, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
</del><ins>+ void paintBorderSides(GraphicsContext&, const RenderStyle&, const RoundedRect& outerBorder, const RoundedRect& innerBorder,
</ins><span class="cx"> const IntPoint& innerBorderAdjustment, const BorderEdge[], BorderEdgeFlags, BackgroundBleedAvoidance,
</span><span class="cx"> bool includeLogicalLeftEdge, bool includeLogicalRightEdge, bool antialias = false, const Color* overrideColor = nullptr);
</span><del>- void drawBoxSideFromPath(GraphicsContext*, const LayoutRect&, const Path&, const BorderEdge[],
</del><ins>+ void drawBoxSideFromPath(GraphicsContext&, const LayoutRect&, const Path&, const BorderEdge[],
</ins><span class="cx"> float thickness, float drawThickness, BoxSide, const RenderStyle&,
</span><span class="cx"> Color, EBorderStyle, BackgroundBleedAvoidance, bool includeLogicalLeftEdge, bool includeLogicalRightEdge);
</span><span class="cx"> void paintMaskForTextFillBox(ImageBuffer*, const IntRect&, InlineFlowBox*, const LayoutRect&);
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderDetailsMarkercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderDetailsMarker.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderDetailsMarker.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderDetailsMarker.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -130,13 +130,13 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> const Color color(style().visitedDependentColor(CSSPropertyColor));
</span><del>- paintInfo.context->setStrokeColor(color, style().colorSpace());
- paintInfo.context->setStrokeStyle(SolidStroke);
- paintInfo.context->setStrokeThickness(1.0f);
- paintInfo.context->setFillColor(color, style().colorSpace());
</del><ins>+ paintInfo.context().setStrokeColor(color, style().colorSpace());
+ paintInfo.context().setStrokeStyle(SolidStroke);
+ paintInfo.context().setStrokeThickness(1.0f);
+ paintInfo.context().setFillColor(color, style().colorSpace());
</ins><span class="cx">
</span><span class="cx"> boxOrigin.move(borderLeft() + paddingLeft(), borderTop() + paddingTop());
</span><del>- paintInfo.context->fillPath(getPath(boxOrigin));
</del><ins>+ paintInfo.context().fillPath(getPath(boxOrigin));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool RenderDetailsMarker::isOpen() const
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderElementcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderElement.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderElement.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderElement.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -2041,17 +2041,17 @@
</span><span class="cx"> addFocusRingRects(focusRingRects, paintOffset, paintInfo.paintContainer);
</span><span class="cx"> #if PLATFORM(MAC)
</span><span class="cx"> bool needsRepaint;
</span><del>- paintInfo.context->drawFocusRing(focusRingRects, theme().platformFocusRingWidth(), style.outlineOffset(), document().page()->focusController().timeSinceFocusWasSet(), needsRepaint);
</del><ins>+ paintInfo.context().drawFocusRing(focusRingRects, theme().platformFocusRingWidth(), style.outlineOffset(), document().page()->focusController().timeSinceFocusWasSet(), needsRepaint);
</ins><span class="cx"> if (needsRepaint)
</span><span class="cx"> document().page()->focusController().setFocusedElementNeedsRepaint();
</span><span class="cx"> #else
</span><del>- paintInfo.context->drawFocusRing(focusRingRects, style.outlineWidth(), style.outlineOffset(), style.visitedDependentColor(CSSPropertyOutlineColor));
</del><ins>+ paintInfo.context().drawFocusRing(focusRingRects, style.outlineWidth(), style.outlineOffset(), style.visitedDependentColor(CSSPropertyOutlineColor));
</ins><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderElement::paintOutline(PaintInfo& paintInfo, const LayoutRect& paintRect)
</span><span class="cx"> {
</span><del>- GraphicsContext& graphicsContext = *paintInfo.context;
</del><ins>+ GraphicsContext& graphicsContext = paintInfo.context();
</ins><span class="cx"> if (graphicsContext.paintingDisabled())
</span><span class="cx"> return;
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderEmbeddedObjectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderEmbeddedObject.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderEmbeddedObject.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderEmbeddedObject.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -204,7 +204,7 @@
</span><span class="cx"> if (!cWidth || !cHeight)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- GraphicsContext* context = paintInfo.context;
</del><ins>+ GraphicsContext& context = paintInfo.context();
</ins><span class="cx"> LayoutSize contentSize(cWidth, cHeight);
</span><span class="cx"> LayoutPoint contentLocation = location() + paintOffset;
</span><span class="cx"> contentLocation.move(borderLeft() + paddingLeft(), borderTop() + paddingTop());
</span><span class="lines">@@ -219,7 +219,7 @@
</span><span class="cx"> #if ENABLE(CSS_IMAGE_ORIENTATION)
</span><span class="cx"> orientationDescription.setImageOrientationEnum(style().imageOrientation());
</span><span class="cx"> #endif
</span><del>- context->drawImage(image, style().colorSpace(), alignedRect, ImagePaintingOptions(orientationDescription, useLowQualityScaling));
</del><ins>+ context.drawImage(image, style().colorSpace(), alignedRect, ImagePaintingOptions(orientationDescription, useLowQualityScaling));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderEmbeddedObject::paintContents(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
</span><span class="lines">@@ -262,9 +262,9 @@
</span><span class="cx"> RenderWidget::paint(paintInfo, paintOffset);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static void drawReplacementArrow(GraphicsContext* context, const FloatRect& insideRect)
</del><ins>+static void drawReplacementArrow(GraphicsContext& context, const FloatRect& insideRect)
</ins><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*context);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
</ins><span class="cx">
</span><span class="cx"> FloatRect rect(insideRect);
</span><span class="cx"> rect.inflate(-replacementArrowPadding);
</span><span class="lines">@@ -272,9 +272,9 @@
</span><span class="cx"> FloatPoint center(rect.center());
</span><span class="cx"> FloatPoint arrowTip(rect.maxX(), center.y());
</span><span class="cx">
</span><del>- context->setStrokeThickness(2);
- context->setLineCap(RoundCap);
- context->setLineJoin(RoundJoin);
</del><ins>+ context.setStrokeThickness(2);
+ context.setLineCap(RoundCap);
+ context.setLineJoin(RoundJoin);
</ins><span class="cx">
</span><span class="cx"> Path path;
</span><span class="cx"> path.moveTo(FloatPoint(rect.x(), center.y()));
</span><span class="lines">@@ -282,7 +282,7 @@
</span><span class="cx"> path.addLineTo(FloatPoint(center.x(), rect.y()));
</span><span class="cx"> path.moveTo(arrowTip);
</span><span class="cx"> path.addLineTo(FloatPoint(center.x(), rect.maxY()));
</span><del>- context->strokePath(path);
</del><ins>+ context.strokePath(path);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderEmbeddedObject::paintReplaced(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
</span><span class="lines">@@ -293,8 +293,8 @@
</span><span class="cx"> if (paintInfo.phase == PaintPhaseSelection)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- GraphicsContext* context = paintInfo.context;
- if (context->paintingDisabled())
</del><ins>+ GraphicsContext& context = paintInfo.context();
+ if (context.paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> FloatRect contentRect;
</span><span class="lines">@@ -310,36 +310,36 @@
</span><span class="cx"> Path background;
</span><span class="cx"> background.addRoundedRect(indicatorRect, FloatSize(replacementTextRoundedRectRadius, replacementTextRoundedRectRadius));
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context);
- context->clip(contentRect);
- context->setFillColor(m_unavailablePluginIndicatorIsPressed ? replacementTextRoundedRectPressedColor() : replacementTextRoundedRectColor(), style().colorSpace());
- context->fillPath(background);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
+ context.clip(contentRect);
+ context.setFillColor(m_unavailablePluginIndicatorIsPressed ? replacementTextRoundedRectPressedColor() : replacementTextRoundedRectColor(), style().colorSpace());
+ context.fillPath(background);
</ins><span class="cx">
</span><span class="cx"> Path strokePath;
</span><span class="cx"> FloatRect strokeRect(indicatorRect);
</span><span class="cx"> strokeRect.inflate(1);
</span><span class="cx"> strokePath.addRoundedRect(strokeRect, FloatSize(replacementTextRoundedRectRadius + 1, replacementTextRoundedRectRadius + 1));
</span><span class="cx">
</span><del>- context->setStrokeColor(unavailablePluginBorderColor(), style().colorSpace());
- context->setStrokeThickness(2);
- context->strokePath(strokePath);
</del><ins>+ context.setStrokeColor(unavailablePluginBorderColor(), style().colorSpace());
+ context.setStrokeThickness(2);
+ context.strokePath(strokePath);
</ins><span class="cx">
</span><span class="cx"> const FontMetrics& fontMetrics = font.fontMetrics();
</span><span class="cx"> float labelX = roundf(replacementTextRect.location().x() + replacementTextRoundedRectLeftTextMargin);
</span><span class="cx"> float labelY = roundf(replacementTextRect.location().y() + (replacementTextRect.size().height() - fontMetrics.height()) / 2 + fontMetrics.ascent() + replacementTextRoundedRectTopTextMargin);
</span><del>- context->setFillColor(replacementTextColor(), style().colorSpace());
- context->drawBidiText(font, run, FloatPoint(labelX, labelY));
</del><ins>+ context.setFillColor(replacementTextColor(), style().colorSpace());
+ context.drawBidiText(font, run, FloatPoint(labelX, labelY));
</ins><span class="cx">
</span><span class="cx"> if (shouldUnavailablePluginMessageBeButton(document(), m_pluginUnavailabilityReason)) {
</span><span class="cx"> arrowRect.inflate(-replacementArrowCirclePadding);
</span><span class="cx">
</span><del>- context->beginTransparencyLayer(1.0);
- context->setFillColor(replacementTextColor(), style().colorSpace());
- context->fillEllipse(arrowRect);
</del><ins>+ context.beginTransparencyLayer(1.0);
+ context.setFillColor(replacementTextColor(), style().colorSpace());
+ context.fillEllipse(arrowRect);
</ins><span class="cx">
</span><del>- context->setCompositeOperation(CompositeClear);
</del><ins>+ context.setCompositeOperation(CompositeClear);
</ins><span class="cx"> drawReplacementArrow(context, arrowRect);
</span><del>- context->endTransparencyLayer();
</del><ins>+ context.endTransparencyLayer();
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderFieldsetcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderFieldset.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderFieldset.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderFieldset.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -159,7 +159,7 @@
</span><span class="cx"> paintRect.setX(paintRect.x() + xOff);
</span><span class="cx"> }
</span><span class="cx">
</span><del>- if (!boxShadowShouldBeAppliedToBackground(paintRect.location(), determineBackgroundBleedAvoidance(paintInfo.context)))
</del><ins>+ if (!boxShadowShouldBeAppliedToBackground(paintRect.location(), determineBackgroundBleedAvoidance(paintInfo.context())))
</ins><span class="cx"> paintBoxShadow(paintInfo, paintRect, style(), Normal);
</span><span class="cx"> paintFillLayers(paintInfo, style().visitedDependentColor(CSSPropertyBackgroundColor), style().backgroundLayers(), paintRect);
</span><span class="cx"> paintBoxShadow(paintInfo, paintRect, style(), Inset);
</span><span class="lines">@@ -168,8 +168,8 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> // Create a clipping region around the legend and paint the border as normal
</span><del>- GraphicsContext* graphicsContext = paintInfo.context;
- GraphicsContextStateSaver stateSaver(*graphicsContext);
</del><ins>+ GraphicsContext& graphicsContext = paintInfo.context();
+ GraphicsContextStateSaver stateSaver(graphicsContext);
</ins><span class="cx">
</span><span class="cx"> // FIXME: We need to work with "rl" and "bt" block flow directions. In those
</span><span class="cx"> // cases the legend is embedded in the right and bottom borders respectively.
</span><span class="lines">@@ -186,7 +186,7 @@
</span><span class="cx"> clipRect.setWidth(std::max<LayoutUnit>(style().borderLeftWidth(), legend->width()));
</span><span class="cx"> clipRect.setHeight(legend->height());
</span><span class="cx"> }
</span><del>- graphicsContext->clipOut(snapRectToDevicePixels(clipRect, document().deviceScaleFactor()));
</del><ins>+ graphicsContext.clipOut(snapRectToDevicePixels(clipRect, document().deviceScaleFactor()));
</ins><span class="cx">
</span><span class="cx"> paintBorder(paintInfo, paintRect, style());
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderFileUploadControlcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderFileUploadControl.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderFileUploadControl.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderFileUploadControl.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -120,14 +120,14 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> // Push a clip.
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context, false);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context(), false);
</ins><span class="cx"> if (paintInfo.phase == PaintPhaseForeground || paintInfo.phase == PaintPhaseChildBlockBackgrounds) {
</span><span class="cx"> IntRect clipRect = enclosingIntRect(LayoutRect(paintOffset.x() + borderLeft(), paintOffset.y() + borderTop(),
</span><span class="cx"> width() - borderLeft() - borderRight(), height() - borderBottom() - borderTop() + buttonShadowHeight));
</span><span class="cx"> if (clipRect.isEmpty())
</span><span class="cx"> return;
</span><span class="cx"> stateSaver.save();
</span><del>- paintInfo.context->clip(clipRect);
</del><ins>+ paintInfo.context().clip(clipRect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (paintInfo.phase == PaintPhaseForeground) {
</span><span class="lines">@@ -163,10 +163,10 @@
</span><span class="cx"> else
</span><span class="cx"> textY = baselinePosition(AlphabeticBaseline, true, HorizontalLine, PositionOnContainingLine);
</span><span class="cx">
</span><del>- paintInfo.context->setFillColor(style().visitedDependentColor(CSSPropertyColor), style().colorSpace());
</del><ins>+ paintInfo.context().setFillColor(style().visitedDependentColor(CSSPropertyColor), style().colorSpace());
</ins><span class="cx">
</span><span class="cx"> // Draw the filename
</span><del>- paintInfo.context->drawBidiText(font, textRun, IntPoint(roundToInt(textX), roundToInt(textY)));
</del><ins>+ paintInfo.context().drawBidiText(font, textRun, IntPoint(roundToInt(textX), roundToInt(textY)));
</ins><span class="cx">
</span><span class="cx"> if (inputElement().icon()) {
</span><span class="cx"> // Determine where the icon should be placed
</span><span class="lines">@@ -186,7 +186,7 @@
</span><span class="cx"> }
</span><span class="cx"> #else
</span><span class="cx"> // Draw the file icon
</span><del>- inputElement().icon()->paint(*paintInfo.context, IntRect(roundToInt(iconX), roundToInt(iconY), iconWidth, iconHeight));
</del><ins>+ inputElement().icon()->paint(paintInfo.context(), IntRect(roundToInt(iconX), roundToInt(iconY), iconWidth, iconHeight));
</ins><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderFrameSetcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderFrameSet.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderFrameSet.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderFrameSet.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -90,15 +90,15 @@
</span><span class="cx"> // FIXME: We should do something clever when borders from distinct framesets meet at a join.
</span><span class="cx">
</span><span class="cx"> // Fill first.
</span><del>- GraphicsContext* context = paintInfo.context;
</del><ins>+ GraphicsContext& context = paintInfo.context();
</ins><span class="cx"> ColorSpace colorSpace = style().colorSpace();
</span><del>- context->fillRect(borderRect, frameSetElement().hasBorderColor() ? style().visitedDependentColor(CSSPropertyBorderLeftColor) : borderFillColor(), colorSpace);
</del><ins>+ context.fillRect(borderRect, frameSetElement().hasBorderColor() ? style().visitedDependentColor(CSSPropertyBorderLeftColor) : borderFillColor(), colorSpace);
</ins><span class="cx">
</span><span class="cx"> // Now stroke the edges but only if we have enough room to paint both edges with a little
</span><span class="cx"> // bit of the fill color showing through.
</span><span class="cx"> if (borderRect.width() >= 3) {
</span><del>- context->fillRect(IntRect(borderRect.location(), IntSize(1, height())), borderStartEdgeColor(), colorSpace);
- context->fillRect(IntRect(IntPoint(borderRect.maxX() - 1, borderRect.y()), IntSize(1, height())), borderEndEdgeColor(), colorSpace);
</del><ins>+ context.fillRect(IntRect(borderRect.location(), IntSize(1, height())), borderStartEdgeColor(), colorSpace);
+ context.fillRect(IntRect(IntPoint(borderRect.maxX() - 1, borderRect.y()), IntSize(1, height())), borderEndEdgeColor(), colorSpace);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -110,15 +110,15 @@
</span><span class="cx"> // FIXME: We should do something clever when borders from distinct framesets meet at a join.
</span><span class="cx">
</span><span class="cx"> // Fill first.
</span><del>- GraphicsContext* context = paintInfo.context;
</del><ins>+ GraphicsContext& context = paintInfo.context();
</ins><span class="cx"> ColorSpace colorSpace = style().colorSpace();
</span><del>- context->fillRect(borderRect, frameSetElement().hasBorderColor() ? style().visitedDependentColor(CSSPropertyBorderLeftColor) : borderFillColor(), colorSpace);
</del><ins>+ context.fillRect(borderRect, frameSetElement().hasBorderColor() ? style().visitedDependentColor(CSSPropertyBorderLeftColor) : borderFillColor(), colorSpace);
</ins><span class="cx">
</span><span class="cx"> // Now stroke the edges but only if we have enough room to paint both edges with a little
</span><span class="cx"> // bit of the fill color showing through.
</span><span class="cx"> if (borderRect.height() >= 3) {
</span><del>- context->fillRect(IntRect(borderRect.location(), IntSize(width(), 1)), borderStartEdgeColor(), colorSpace);
- context->fillRect(IntRect(IntPoint(borderRect.x(), borderRect.maxY() - 1), IntSize(width(), 1)), borderEndEdgeColor(), colorSpace);
</del><ins>+ context.fillRect(IntRect(borderRect.location(), IntSize(width(), 1)), borderStartEdgeColor(), colorSpace);
+ context.fillRect(IntRect(IntPoint(borderRect.x(), borderRect.maxY() - 1), IntSize(width(), 1)), borderEndEdgeColor(), colorSpace);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderHTMLCanvascpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderHTMLCanvas.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderHTMLCanvas.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderHTMLCanvas.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -66,7 +66,7 @@
</span><span class="cx">
</span><span class="cx"> void RenderHTMLCanvas::paintReplaced(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
</span><span class="cx"> {
</span><del>- GraphicsContext* context = paintInfo.context;
</del><ins>+ GraphicsContext& context = paintInfo.context();
</ins><span class="cx">
</span><span class="cx"> LayoutRect contentBoxRect = this->contentBoxRect();
</span><span class="cx"> contentBoxRect.moveBy(paintOffset);
</span><span class="lines">@@ -75,9 +75,9 @@
</span><span class="cx">
</span><span class="cx"> // Not allowed to overflow the content box.
</span><span class="cx"> bool clip = !contentBoxRect.contains(replacedContentRect);
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context, clip);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context(), clip);
</ins><span class="cx"> if (clip)
</span><del>- paintInfo.context->clip(snappedIntRect(contentBoxRect));
</del><ins>+ paintInfo.context().clip(snappedIntRect(contentBoxRect));
</ins><span class="cx">
</span><span class="cx"> if (Page* page = frame().page()) {
</span><span class="cx"> if (paintInfo.phase == PaintPhaseForeground)
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderImagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderImage.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderImage.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderImage.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -375,7 +375,7 @@
</span><span class="cx"> LayoutUnit leftPad = paddingLeft();
</span><span class="cx"> LayoutUnit topPad = paddingTop();
</span><span class="cx">
</span><del>- GraphicsContext* context = paintInfo.context;
</del><ins>+ GraphicsContext& context = paintInfo.context();
</ins><span class="cx"> float deviceScaleFactor = document().deviceScaleFactor();
</span><span class="cx">
</span><span class="cx"> Page* page = frame().page();
</span><span class="lines">@@ -391,10 +391,10 @@
</span><span class="cx"> LayoutUnit borderWidth = LayoutUnit(1 / deviceScaleFactor);
</span><span class="cx">
</span><span class="cx"> // Draw an outline rect where the image should be.
</span><del>- context->setStrokeStyle(SolidStroke);
- context->setStrokeColor(Color::lightGray, style().colorSpace());
- context->setFillColor(Color::transparent, style().colorSpace());
- context->drawRect(snapRectToDevicePixels(LayoutRect(paintOffset.x() + leftBorder + leftPad, paintOffset.y() + topBorder + topPad, cWidth, cHeight), deviceScaleFactor), borderWidth);
</del><ins>+ context.setStrokeStyle(SolidStroke);
+ context.setStrokeColor(Color::lightGray, style().colorSpace());
+ context.setFillColor(Color::transparent, style().colorSpace());
+ context.drawRect(snapRectToDevicePixels(LayoutRect(paintOffset.x() + leftBorder + leftPad, paintOffset.y() + topBorder + topPad, cWidth, cHeight), deviceScaleFactor), borderWidth);
</ins><span class="cx">
</span><span class="cx"> bool errorPictureDrawn = false;
</span><span class="cx"> LayoutSize imageOffset;
</span><span class="lines">@@ -424,13 +424,13 @@
</span><span class="cx"> #if ENABLE(CSS_IMAGE_ORIENTATION)
</span><span class="cx"> orientationDescription.setImageOrientationEnum(style().imageOrientation());
</span><span class="cx"> #endif
</span><del>- context->drawImage(image.get(), style().colorSpace(), snapRectToDevicePixels(LayoutRect(paintOffset + imageOffset, imageSize), deviceScaleFactor), orientationDescription);
</del><ins>+ context.drawImage(image.get(), style().colorSpace(), snapRectToDevicePixels(LayoutRect(paintOffset + imageOffset, imageSize), deviceScaleFactor), orientationDescription);
</ins><span class="cx"> errorPictureDrawn = true;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (!m_altText.isEmpty()) {
</span><span class="cx"> String text = document().displayStringModifiedByEncoding(m_altText);
</span><del>- context->setFillColor(style().visitedDependentColor(CSSPropertyColor), style().colorSpace());
</del><ins>+ context.setFillColor(style().visitedDependentColor(CSSPropertyColor), style().colorSpace());
</ins><span class="cx"> const FontCascade& font = style().fontCascade();
</span><span class="cx"> const FontMetrics& fontMetrics = font.fontMetrics();
</span><span class="cx"> LayoutUnit ascent = fontMetrics.ascent();
</span><span class="lines">@@ -443,9 +443,9 @@
</span><span class="cx"> LayoutUnit textWidth = font.width(textRun);
</span><span class="cx"> if (errorPictureDrawn) {
</span><span class="cx"> if (usableWidth >= textWidth && fontMetrics.height() <= imageOffset.height())
</span><del>- context->drawText(font, textRun, altTextOffset);
</del><ins>+ context.drawText(font, textRun, altTextOffset);
</ins><span class="cx"> } else if (usableWidth >= textWidth && usableHeight >= fontMetrics.height())
</span><del>- context->drawText(font, textRun, altTextOffset);
</del><ins>+ context.drawText(font, textRun, altTextOffset);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx"> } else if (imageResource().hasImage() && cWidth > 0 && cHeight > 0) {
</span><span class="lines">@@ -461,9 +461,9 @@
</span><span class="cx"> LayoutRect replacedContentRect = this->replacedContentRect(intrinsicSize());
</span><span class="cx"> replacedContentRect.moveBy(paintOffset);
</span><span class="cx"> bool clip = !contentBoxRect.contains(replacedContentRect);
</span><del>- GraphicsContextStateSaver stateSaver(*context, clip);
</del><ins>+ GraphicsContextStateSaver stateSaver(context, clip);
</ins><span class="cx"> if (clip)
</span><del>- context->clip(contentBoxRect);
</del><ins>+ context.clip(contentBoxRect);
</ins><span class="cx">
</span><span class="cx"> paintIntoRect(context, snapRectToDevicePixels(replacedContentRect, deviceScaleFactor));
</span><span class="cx">
</span><span class="lines">@@ -495,7 +495,7 @@
</span><span class="cx"> if (document().printing() || !frame().selection().isFocusedAndActive())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- if (paintInfo.context->paintingDisabled() && !paintInfo.context->updatingControlTints())
</del><ins>+ if (paintInfo.context().paintingDisabled() && !paintInfo.context().updatingControlTints())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> Element* focusedElement = document().focusedElement();
</span><span class="lines">@@ -520,7 +520,7 @@
</span><span class="cx"> if (!outlineWidth)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- paintInfo.context->drawFocusRing(path, outlineWidth,
</del><ins>+ paintInfo.context().drawFocusRing(path, outlineWidth,
</ins><span class="cx"> areaElementStyle->outlineOffset(),
</span><span class="cx"> areaElementStyle->visitedDependentColor(CSSPropertyOutlineColor));
</span><span class="cx"> #endif
</span><span class="lines">@@ -536,7 +536,7 @@
</span><span class="cx"> repaint();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderImage::paintIntoRect(GraphicsContext* context, const FloatRect& rect)
</del><ins>+void RenderImage::paintIntoRect(GraphicsContext& context, const FloatRect& rect)
</ins><span class="cx"> {
</span><span class="cx"> if (!imageResource().hasImage() || imageResource().errorOccurred() || rect.width() <= 0 || rect.height() <= 0)
</span><span class="cx"> return;
</span><span class="lines">@@ -553,7 +553,7 @@
</span><span class="cx"> #if ENABLE(CSS_IMAGE_ORIENTATION)
</span><span class="cx"> orientationDescription.setImageOrientationEnum(style().imageOrientation());
</span><span class="cx"> #endif
</span><del>- context->drawImage(imageResource().image(rect.width(), rect.height()).get(), style().colorSpace(), rect,
</del><ins>+ context.drawImage(imageResource().image(rect.width(), rect.height()).get(), style().colorSpace(), rect,
</ins><span class="cx"> ImagePaintingOptions(compositeOperator, BlendModeNormal, orientationDescription, useLowQualityScaling));
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderImageh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderImage.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderImage.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderImage.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -81,7 +81,7 @@
</span><span class="cx">
</span><span class="cx"> virtual void imageChanged(WrappedImagePtr, const IntRect* = nullptr) override;
</span><span class="cx">
</span><del>- void paintIntoRect(GraphicsContext*, const FloatRect&);
</del><ins>+ void paintIntoRect(GraphicsContext&, const FloatRect&);
</ins><span class="cx"> virtual void paint(PaintInfo&, const LayoutPoint&) override final;
</span><span class="cx"> virtual void layout() override;
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderInlinecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderInline.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderInline.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderInline.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1560,8 +1560,8 @@
</span><span class="cx"> if (hasOutlineAnnotation() && !styleToUse.outlineStyleIsAuto() && !theme().supportsFocusRing(styleToUse))
</span><span class="cx"> addPDFURLRect(paintInfo, paintOffset);
</span><span class="cx">
</span><del>- GraphicsContext* graphicsContext = paintInfo.context;
- if (graphicsContext->paintingDisabled())
</del><ins>+ GraphicsContext& graphicsContext = paintInfo.context();
+ if (graphicsContext.paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> if (styleToUse.outlineStyleIsAuto() || styleToUse.outlineStyle() == BNONE)
</span><span class="lines">@@ -1581,7 +1581,7 @@
</span><span class="cx"> Color outlineColor = styleToUse.visitedDependentColor(CSSPropertyOutlineColor);
</span><span class="cx"> bool useTransparencyLayer = outlineColor.hasAlpha();
</span><span class="cx"> if (useTransparencyLayer) {
</span><del>- graphicsContext->beginTransparencyLayer(static_cast<float>(outlineColor.alpha()) / 255);
</del><ins>+ graphicsContext.beginTransparencyLayer(static_cast<float>(outlineColor.alpha()) / 255);
</ins><span class="cx"> outlineColor = Color(outlineColor.red(), outlineColor.green(), outlineColor.blue());
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1589,10 +1589,10 @@
</span><span class="cx"> paintOutlineForLine(graphicsContext, paintOffset, rects.at(i - 1), rects.at(i), rects.at(i + 1), outlineColor);
</span><span class="cx">
</span><span class="cx"> if (useTransparencyLayer)
</span><del>- graphicsContext->endTransparencyLayer();
</del><ins>+ graphicsContext.endTransparencyLayer();
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderInline::paintOutlineForLine(GraphicsContext* graphicsContext, const LayoutPoint& paintOffset,
</del><ins>+void RenderInline::paintOutlineForLine(GraphicsContext& graphicsContext, const LayoutPoint& paintOffset,
</ins><span class="cx"> const LayoutRect& lastline, const LayoutRect& thisline, const LayoutRect& nextline,
</span><span class="cx"> const Color outlineColor)
</span><span class="cx"> {
</span><span class="lines">@@ -1614,7 +1614,7 @@
</span><span class="cx"> IntRect pixelSnappedNextLine = snappedIntRect(paintOffset.x() + nextline.x(), 0, nextline.width(), 0);
</span><span class="cx">
</span><span class="cx"> // left edge
</span><del>- drawLineForBoxSide(*graphicsContext,
</del><ins>+ drawLineForBoxSide(graphicsContext,
</ins><span class="cx"> FloatRect(FloatPoint(pixelSnappedBox.x() - outlineWidth,
</span><span class="cx"> pixelSnappedBox.y() - (lastline.isEmpty() || thisline.x() < lastline.x() || (lastline.maxX() - 1) <= thisline.x() ? outlineWidth : 0)),
</span><span class="cx"> FloatPoint(pixelSnappedBox.x(),
</span><span class="lines">@@ -1626,7 +1626,7 @@
</span><span class="cx"> antialias);
</span><span class="cx">
</span><span class="cx"> // right edge
</span><del>- drawLineForBoxSide(*graphicsContext,
</del><ins>+ drawLineForBoxSide(graphicsContext,
</ins><span class="cx"> FloatRect(FloatPoint(pixelSnappedBox.maxX(),
</span><span class="cx"> pixelSnappedBox.y() - (lastline.isEmpty() || lastline.maxX() < thisline.maxX() || (thisline.maxX() - 1) <= lastline.x() ? outlineWidth : 0)),
</span><span class="cx"> FloatPoint(pixelSnappedBox.maxX() + outlineWidth,
</span><span class="lines">@@ -1638,7 +1638,7 @@
</span><span class="cx"> antialias);
</span><span class="cx"> // upper edge
</span><span class="cx"> if (thisline.x() < lastline.x())
</span><del>- drawLineForBoxSide(*graphicsContext,
</del><ins>+ drawLineForBoxSide(graphicsContext,
</ins><span class="cx"> FloatRect(FloatPoint(pixelSnappedBox.x() - outlineWidth,
</span><span class="cx"> pixelSnappedBox.y() - outlineWidth),
</span><span class="cx"> FloatPoint(std::min(pixelSnappedBox.maxX() + outlineWidth, (lastline.isEmpty() ? 1000000 : pixelSnappedLastLine.x())),
</span><span class="lines">@@ -1649,7 +1649,7 @@
</span><span class="cx"> antialias);
</span><span class="cx">
</span><span class="cx"> if (lastline.maxX() < thisline.maxX())
</span><del>- drawLineForBoxSide(*graphicsContext,
</del><ins>+ drawLineForBoxSide(graphicsContext,
</ins><span class="cx"> FloatRect(FloatPoint(std::max(lastline.isEmpty() ? -1000000 : pixelSnappedLastLine.maxX(), pixelSnappedBox.x() - outlineWidth),
</span><span class="cx"> pixelSnappedBox.y() - outlineWidth),
</span><span class="cx"> FloatPoint(pixelSnappedBox.maxX() + outlineWidth,
</span><span class="lines">@@ -1659,7 +1659,7 @@
</span><span class="cx"> outlineWidth, antialias);
</span><span class="cx">
</span><span class="cx"> if (thisline.x() == thisline.maxX())
</span><del>- drawLineForBoxSide(*graphicsContext,
</del><ins>+ drawLineForBoxSide(graphicsContext,
</ins><span class="cx"> FloatRect(FloatPoint(pixelSnappedBox.x() - outlineWidth,
</span><span class="cx"> pixelSnappedBox.y() - outlineWidth),
</span><span class="cx"> FloatPoint(pixelSnappedBox.maxX() + outlineWidth,
</span><span class="lines">@@ -1671,7 +1671,7 @@
</span><span class="cx">
</span><span class="cx"> // lower edge
</span><span class="cx"> if (thisline.x() < nextline.x())
</span><del>- drawLineForBoxSide(*graphicsContext,
</del><ins>+ drawLineForBoxSide(graphicsContext,
</ins><span class="cx"> FloatRect(FloatPoint(pixelSnappedBox.x() - outlineWidth,
</span><span class="cx"> pixelSnappedBox.maxY()),
</span><span class="cx"> FloatPoint(std::min(pixelSnappedBox.maxX() + outlineWidth, !nextline.isEmpty() ? pixelSnappedNextLine.x() + 1 : 1000000),
</span><span class="lines">@@ -1682,7 +1682,7 @@
</span><span class="cx"> antialias);
</span><span class="cx">
</span><span class="cx"> if (nextline.maxX() < thisline.maxX())
</span><del>- drawLineForBoxSide(*graphicsContext,
</del><ins>+ drawLineForBoxSide(graphicsContext,
</ins><span class="cx"> FloatRect(FloatPoint(std::max(!nextline.isEmpty() ? pixelSnappedNextLine.maxX() : -1000000, pixelSnappedBox.x() - outlineWidth),
</span><span class="cx"> pixelSnappedBox.maxY()),
</span><span class="cx"> FloatPoint(pixelSnappedBox.maxX() + outlineWidth,
</span><span class="lines">@@ -1692,7 +1692,7 @@
</span><span class="cx"> outlineWidth, antialias);
</span><span class="cx">
</span><span class="cx"> if (thisline.x() == thisline.maxX())
</span><del>- drawLineForBoxSide(*graphicsContext,
</del><ins>+ drawLineForBoxSide(graphicsContext,
</ins><span class="cx"> FloatRect(FloatPoint(pixelSnappedBox.x() - outlineWidth,
</span><span class="cx"> pixelSnappedBox.maxY()),
</span><span class="cx"> FloatPoint(pixelSnappedBox.maxX() + outlineWidth,
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderInlineh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderInline.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderInline.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderInline.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -173,7 +173,7 @@
</span><span class="cx">
</span><span class="cx"> RenderPtr<RenderInline> clone() const;
</span><span class="cx">
</span><del>- void paintOutlineForLine(GraphicsContext*, const LayoutPoint&, const LayoutRect& prevLine, const LayoutRect& thisLine,
</del><ins>+ void paintOutlineForLine(GraphicsContext&, const LayoutPoint&, const LayoutRect& prevLine, const LayoutRect& thisLine,
</ins><span class="cx"> const LayoutRect& nextLine, const Color);
</span><span class="cx"> RenderBoxModelObject* continuationBefore(RenderObject* beforeChild);
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderLayercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderLayer.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderLayer.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderLayer.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1787,9 +1787,9 @@
</span><span class="cx"> return intersection(transparencyClipBox(currentLayer, rootLayer, PaintingTransparencyClipBox, RootOfTransparencyClipBox, paintBehavior), paintDirtyRect);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::beginTransparencyLayers(GraphicsContext* context, const LayerPaintingInfo& paintingInfo, const LayoutRect& dirtyRect)
</del><ins>+void RenderLayer::beginTransparencyLayers(GraphicsContext& context, const LayerPaintingInfo& paintingInfo, const LayoutRect& dirtyRect)
</ins><span class="cx"> {
</span><del>- if (context->paintingDisabled() || (paintsWithTransparency(paintingInfo.paintBehavior) && m_usedTransparency))
</del><ins>+ if (context.paintingDisabled() || (paintsWithTransparency(paintingInfo.paintBehavior) && m_usedTransparency))
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> RenderLayer* ancestor = transparentPaintingAncestor();
</span><span class="lines">@@ -1798,22 +1798,22 @@
</span><span class="cx">
</span><span class="cx"> if (paintsWithTransparency(paintingInfo.paintBehavior)) {
</span><span class="cx"> m_usedTransparency = true;
</span><del>- context->save();
</del><ins>+ context.save();
</ins><span class="cx"> LayoutRect adjustedClipRect = paintingExtent(*this, paintingInfo.rootLayer, dirtyRect, paintingInfo.paintBehavior);
</span><span class="cx"> adjustedClipRect.move(paintingInfo.subpixelAccumulation);
</span><span class="cx"> FloatRect pixelSnappedClipRect = snapRectToDevicePixels(adjustedClipRect, renderer().document().deviceScaleFactor());
</span><del>- context->clip(pixelSnappedClipRect);
</del><ins>+ context.clip(pixelSnappedClipRect);
</ins><span class="cx">
</span><span class="cx"> #if ENABLE(CSS_COMPOSITING)
</span><span class="cx"> if (hasBlendMode())
</span><del>- context->setCompositeOperation(context->compositeOperation(), blendMode());
</del><ins>+ context.setCompositeOperation(context.compositeOperation(), blendMode());
</ins><span class="cx"> #endif
</span><span class="cx">
</span><del>- context->beginTransparencyLayer(renderer().opacity());
</del><ins>+ context.beginTransparencyLayer(renderer().opacity());
</ins><span class="cx">
</span><span class="cx"> #if ENABLE(CSS_COMPOSITING)
</span><span class="cx"> if (hasBlendMode())
</span><del>- context->setCompositeOperation(context->compositeOperation(), BlendModeNormal);
</del><ins>+ context.setCompositeOperation(context.compositeOperation(), BlendModeNormal);
</ins><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> #ifdef REVEAL_TRANSPARENCY_LAYERS
</span><span class="lines">@@ -3541,7 +3541,7 @@
</span><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintOverflowControls(GraphicsContext* context, const IntPoint& paintOffset, const IntRect& damageRect, bool paintingOverlayControls)
</del><ins>+void RenderLayer::paintOverflowControls(GraphicsContext& context, const IntPoint& paintOffset, const IntRect& damageRect, bool paintingOverlayControls)
</ins><span class="cx"> {
</span><span class="cx"> // Don't do anything if we have no overflow.
</span><span class="cx"> if (!renderer().hasOverflowClip())
</span><span class="lines">@@ -3605,7 +3605,7 @@
</span><span class="cx"> paintResizer(context, adjustedPaintOffset, damageRect);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintScrollCorner(GraphicsContext* context, const IntPoint& paintOffset, const IntRect& damageRect)
</del><ins>+void RenderLayer::paintScrollCorner(GraphicsContext& context, const IntPoint& paintOffset, const IntRect& damageRect)
</ins><span class="cx"> {
</span><span class="cx"> RenderBox* box = renderBox();
</span><span class="cx"> ASSERT(box);
</span><span class="lines">@@ -3615,7 +3615,7 @@
</span><span class="cx"> if (!absRect.intersects(damageRect))
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- if (context->updatingControlTints()) {
</del><ins>+ if (context.updatingControlTints()) {
</ins><span class="cx"> updateScrollCornerStyle();
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="lines">@@ -3628,10 +3628,10 @@
</span><span class="cx"> // We don't want to paint white if we have overlay scrollbars, since we need
</span><span class="cx"> // to see what is behind it.
</span><span class="cx"> if (!hasOverlayScrollbars())
</span><del>- context->fillRect(absRect, Color::white, box->style().colorSpace());
</del><ins>+ context.fillRect(absRect, Color::white, box->style().colorSpace());
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::drawPlatformResizerImage(GraphicsContext* context, const LayoutRect& resizerCornerRect)
</del><ins>+void RenderLayer::drawPlatformResizerImage(GraphicsContext& context, const LayoutRect& resizerCornerRect)
</ins><span class="cx"> {
</span><span class="cx"> RefPtr<Image> resizeCornerImage;
</span><span class="cx"> FloatSize cornerResizerSize;
</span><span class="lines">@@ -3647,18 +3647,18 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (renderer().style().shouldPlaceBlockDirectionScrollbarOnLogicalLeft()) {
</span><del>- context->save();
- context->translate(resizerCornerRect.x() + cornerResizerSize.width(), resizerCornerRect.y() + resizerCornerRect.height() - cornerResizerSize.height());
- context->scale(FloatSize(-1.0, 1.0));
- context->drawImage(resizeCornerImage.get(), renderer().style().colorSpace(), FloatRect(FloatPoint(), cornerResizerSize));
- context->restore();
</del><ins>+ context.save();
+ context.translate(resizerCornerRect.x() + cornerResizerSize.width(), resizerCornerRect.y() + resizerCornerRect.height() - cornerResizerSize.height());
+ context.scale(FloatSize(-1.0, 1.0));
+ context.drawImage(resizeCornerImage.get(), renderer().style().colorSpace(), FloatRect(FloatPoint(), cornerResizerSize));
+ context.restore();
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx"> FloatRect imageRect = snapRectToDevicePixels(LayoutRect(resizerCornerRect.maxXMaxYCorner() - cornerResizerSize, cornerResizerSize), renderer().document().deviceScaleFactor());
</span><del>- context->drawImage(resizeCornerImage.get(), renderer().style().colorSpace(), imageRect);
</del><ins>+ context.drawImage(resizeCornerImage.get(), renderer().style().colorSpace(), imageRect);
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintResizer(GraphicsContext* context, const LayoutPoint& paintOffset, const LayoutRect& damageRect)
</del><ins>+void RenderLayer::paintResizer(GraphicsContext& context, const LayoutPoint& paintOffset, const LayoutRect& damageRect)
</ins><span class="cx"> {
</span><span class="cx"> if (renderer().style().resize() == RESIZE_NONE)
</span><span class="cx"> return;
</span><span class="lines">@@ -3671,7 +3671,7 @@
</span><span class="cx"> if (!absRect.intersects(damageRect))
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- if (context->updatingControlTints()) {
</del><ins>+ if (context.updatingControlTints()) {
</ins><span class="cx"> updateResizerStyle();
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="lines">@@ -3686,14 +3686,14 @@
</span><span class="cx"> // Draw a frame around the resizer (1px grey line) if there are any scrollbars present.
</span><span class="cx"> // Clipping will exclude the right and bottom edges of this frame.
</span><span class="cx"> if (!hasOverlayScrollbars() && (m_vBar || m_hBar)) {
</span><del>- GraphicsContextStateSaver stateSaver(*context);
- context->clip(absRect);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
+ context.clip(absRect);
</ins><span class="cx"> LayoutRect largerCorner = absRect;
</span><span class="cx"> largerCorner.setSize(LayoutSize(largerCorner.width() + LayoutUnit::fromPixel(1), largerCorner.height() + LayoutUnit::fromPixel(1)));
</span><del>- context->setStrokeColor(Color(makeRGB(217, 217, 217)), ColorSpaceDeviceRGB);
- context->setStrokeThickness(1.0f);
- context->setFillColor(Color::transparent, ColorSpaceDeviceRGB);
- context->drawRect(snappedIntRect(largerCorner));
</del><ins>+ context.setStrokeColor(Color(makeRGB(217, 217, 217)), ColorSpaceDeviceRGB);
+ context.setStrokeThickness(1.0f);
+ context.setFillColor(Color::transparent, ColorSpaceDeviceRGB);
+ context.drawRect(snappedIntRect(largerCorner));
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -3761,7 +3761,7 @@
</span><span class="cx"> return ScrollableArea::scroll(direction, granularity, multiplier);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paint(GraphicsContext* context, const LayoutRect& damageRect, const LayoutSize& subpixelAccumulation, PaintBehavior paintBehavior, RenderObject* subtreePaintRoot, PaintLayerFlags paintFlags)
</del><ins>+void RenderLayer::paint(GraphicsContext& context, const LayoutRect& damageRect, const LayoutSize& subpixelAccumulation, PaintBehavior paintBehavior, RenderObject* subtreePaintRoot, PaintLayerFlags paintFlags)
</ins><span class="cx"> {
</span><span class="cx"> OverlapTestRequestMap overlapTestRequests;
</span><span class="cx">
</span><span class="lines">@@ -3772,7 +3772,7 @@
</span><span class="cx"> widget->setOverlapTestResult(false);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintOverlayScrollbars(GraphicsContext* context, const LayoutRect& damageRect, PaintBehavior paintBehavior, RenderObject* subtreePaintRoot)
</del><ins>+void RenderLayer::paintOverlayScrollbars(GraphicsContext& context, const LayoutRect& damageRect, PaintBehavior paintBehavior, RenderObject* subtreePaintRoot)
</ins><span class="cx"> {
</span><span class="cx"> if (!m_containsDirtyOverlayScrollbars)
</span><span class="cx"> return;
</span><span class="lines">@@ -3797,18 +3797,18 @@
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::clipToRect(const LayerPaintingInfo& paintingInfo, GraphicsContext* context, const ClipRect& clipRect, BorderRadiusClippingRule rule)
</del><ins>+void RenderLayer::clipToRect(const LayerPaintingInfo& paintingInfo, GraphicsContext& context, const ClipRect& clipRect, BorderRadiusClippingRule rule)
</ins><span class="cx"> {
</span><span class="cx"> float deviceScaleFactor = renderer().document().deviceScaleFactor();
</span><span class="cx">
</span><span class="cx"> bool needsClipping = clipRect.rect() != paintingInfo.paintDirtyRect;
</span><span class="cx"> if (needsClipping || clipRect.affectedByRadius())
</span><del>- context->save();
</del><ins>+ context.save();
</ins><span class="cx">
</span><span class="cx"> if (needsClipping) {
</span><span class="cx"> LayoutRect adjustedClipRect = clipRect.rect();
</span><span class="cx"> adjustedClipRect.move(paintingInfo.subpixelAccumulation);
</span><del>- context->clip(snapRectToDevicePixels(adjustedClipRect, deviceScaleFactor));
</del><ins>+ context.clip(snapRectToDevicePixels(adjustedClipRect, deviceScaleFactor));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (clipRect.affectedByRadius()) {
</span><span class="lines">@@ -3819,7 +3819,7 @@
</span><span class="cx"> if (layer->renderer().hasOverflowClip() && layer->renderer().style().hasBorderRadius() && inContainingBlockChain(this, layer)) {
</span><span class="cx"> LayoutRect adjustedClipRect = LayoutRect(toLayoutPoint(layer->offsetFromAncestor(paintingInfo.rootLayer)), layer->size());
</span><span class="cx"> adjustedClipRect.move(paintingInfo.subpixelAccumulation);
</span><del>- context->clipRoundedRect(layer->renderer().style().getRoundedInnerBorderFor(adjustedClipRect).pixelSnappedRoundedRectForPainting(deviceScaleFactor));
</del><ins>+ context.clipRoundedRect(layer->renderer().style().getRoundedInnerBorderFor(adjustedClipRect).pixelSnappedRoundedRectForPainting(deviceScaleFactor));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (layer == paintingInfo.rootLayer)
</span><span class="lines">@@ -3828,10 +3828,10 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::restoreClip(GraphicsContext* context, const LayoutRect& paintDirtyRect, const ClipRect& clipRect)
</del><ins>+void RenderLayer::restoreClip(GraphicsContext& context, const LayoutRect& paintDirtyRect, const ClipRect& clipRect)
</ins><span class="cx"> {
</span><span class="cx"> if (clipRect.rect() != paintDirtyRect || clipRect.affectedByRadius())
</span><del>- context->restore();
</del><ins>+ context.restore();
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> static void performOverlapTests(OverlapTestRequestMap& overlapTestRequests, const RenderLayer* rootLayer, const RenderLayer* layer)
</span><span class="lines">@@ -3875,12 +3875,12 @@
</span><span class="cx"> return layer->renderer().isRoot() && (paintFlags & RenderLayer::PaintLayerPaintingRootBackgroundOnly);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintLayer(GraphicsContext* context, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags)
</del><ins>+void RenderLayer::paintLayer(GraphicsContext& context, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags)
</ins><span class="cx"> {
</span><span class="cx"> if (isComposited()) {
</span><span class="cx"> // The updatingControlTints() painting pass goes through compositing layers,
</span><span class="cx"> // but we need to ensure that we don't cache clip rects computed with the wrong root in this case.
</span><del>- if (context->updatingControlTints() || (paintingInfo.paintBehavior & PaintBehaviorFlattenCompositingLayers))
</del><ins>+ if (context.updatingControlTints() || (paintingInfo.paintBehavior & PaintBehaviorFlattenCompositingLayers))
</ins><span class="cx"> paintFlags |= PaintLayerTemporaryClipRects;
</span><span class="cx"> else if (!backing()->paintsIntoWindow()
</span><span class="cx"> && !backing()->paintsIntoCompositedAncestor()
</span><span class="lines">@@ -3964,7 +3964,7 @@
</span><span class="cx"> paintLayerContentsAndReflection(context, paintingInfo, paintFlags);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintLayerContentsAndReflection(GraphicsContext* context, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags)
</del><ins>+void RenderLayer::paintLayerContentsAndReflection(GraphicsContext& context, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags)
</ins><span class="cx"> {
</span><span class="cx"> ASSERT(isSelfPaintingLayer() || hasSelfPaintingLayerDescendant());
</span><span class="cx">
</span><span class="lines">@@ -3982,9 +3982,9 @@
</span><span class="cx"> paintLayerContents(context, paintingInfo, localPaintFlags);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-bool RenderLayer::setupFontSubpixelQuantization(GraphicsContext* context, bool& didQuantizeFonts)
</del><ins>+bool RenderLayer::setupFontSubpixelQuantization(GraphicsContext& context, bool& didQuantizeFonts)
</ins><span class="cx"> {
</span><del>- if (context->paintingDisabled())
</del><ins>+ if (context.paintingDisabled())
</ins><span class="cx"> return false;
</span><span class="cx">
</span><span class="cx"> bool scrollingOnMainThread = true;
</span><span class="lines">@@ -4002,8 +4002,8 @@
</span><span class="cx"> if (Page* page = renderer().frame().page())
</span><span class="cx"> isZooming = !page->chrome().client().hasStablePageScaleFactor();
</span><span class="cx"> if (scrollingOnMainThread || contentsScrollByPainting || isZooming) {
</span><del>- didQuantizeFonts = context->shouldSubpixelQuantizeFonts();
- context->setShouldSubpixelQuantizeFonts(false);
</del><ins>+ didQuantizeFonts = context.shouldSubpixelQuantizeFonts();
+ context.setShouldSubpixelQuantizeFonts(false);
</ins><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx"> return false;
</span><span class="lines">@@ -4072,9 +4072,9 @@
</span><span class="cx"> return Path();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-bool RenderLayer::setupClipPath(GraphicsContext* context, const LayerPaintingInfo& paintingInfo, const LayoutSize& offsetFromRoot, LayoutRect& rootRelativeBounds, bool& rootRelativeBoundsComputed)
</del><ins>+bool RenderLayer::setupClipPath(GraphicsContext& context, const LayerPaintingInfo& paintingInfo, const LayoutSize& offsetFromRoot, LayoutRect& rootRelativeBounds, bool& rootRelativeBoundsComputed)
</ins><span class="cx"> {
</span><del>- if (!renderer().hasClipPath() || context->paintingDisabled())
</del><ins>+ if (!renderer().hasClipPath() || context.paintingDisabled())
</ins><span class="cx"> return false;
</span><span class="cx">
</span><span class="cx"> if (!rootRelativeBoundsComputed) {
</span><span class="lines">@@ -4088,8 +4088,8 @@
</span><span class="cx"> WindRule windRule;
</span><span class="cx"> LayoutSize paintingOffsetFromRoot = LayoutSize(snapSizeToDevicePixel(offsetFromRoot + paintingInfo.subpixelAccumulation, LayoutPoint(), renderer().document().deviceScaleFactor()));
</span><span class="cx"> Path path = computeClipPath(paintingOffsetFromRoot, rootRelativeBounds, windRule);
</span><del>- context->save();
- context->clipPath(path, windRule);
</del><ins>+ context.save();
+ context.clipPath(path, windRule);
</ins><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -4098,7 +4098,7 @@
</span><span class="cx"> Element* element = renderer().document().getElementById(referenceClipPathOperation->fragment());
</span><span class="cx"> if (element && element->hasTagName(SVGNames::clipPathTag) && element->renderer()) {
</span><span class="cx"> // FIXME: This should use a safer cast such as toRenderSVGResourceContainer().
</span><del>- // FIXME: Should this do a context->save() and return true so we restore the context?
</del><ins>+ // FIXME: Should this do a context.save() and return true so we restore the context?
</ins><span class="cx"> static_cast<RenderSVGResourceClipper*>(element->renderer())->applyClippingToContext(renderer(), rootRelativeBounds, paintingInfo.paintDirtyRect, context);
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -4106,9 +4106,9 @@
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-bool RenderLayer::hasFilterThatIsPainting(GraphicsContext* context, PaintLayerFlags paintFlags) const
</del><ins>+bool RenderLayer::hasFilterThatIsPainting(GraphicsContext& context, PaintLayerFlags paintFlags) const
</ins><span class="cx"> {
</span><del>- if (context->paintingDisabled())
</del><ins>+ if (context.paintingDisabled())
</ins><span class="cx"> return false;
</span><span class="cx">
</span><span class="cx"> if (paintFlags & PaintLayerPaintingOverlayScrollbars)
</span><span class="lines">@@ -4126,7 +4126,7 @@
</span><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-std::unique_ptr<FilterEffectRendererHelper> RenderLayer::setupFilters(GraphicsContext* context, LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags, const LayoutSize& offsetFromRoot, LayoutRect& rootRelativeBounds, bool& rootRelativeBoundsComputed)
</del><ins>+std::unique_ptr<FilterEffectRendererHelper> RenderLayer::setupFilters(GraphicsContext& context, LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags, const LayoutSize& offsetFromRoot, LayoutRect& rootRelativeBounds, bool& rootRelativeBoundsComputed)
</ins><span class="cx"> {
</span><span class="cx"> if (!hasFilterThatIsPainting(context, paintFlags))
</span><span class="cx"> return nullptr;
</span><span class="lines">@@ -4163,7 +4163,7 @@
</span><span class="cx"> return nullptr;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-GraphicsContext* RenderLayer::applyFilters(FilterEffectRendererHelper* filterPainter, GraphicsContext* originalContext, LayerPaintingInfo& paintingInfo, LayerFragments& layerFragments)
</del><ins>+GraphicsContext& RenderLayer::applyFilters(FilterEffectRendererHelper* filterPainter, GraphicsContext& originalContext, LayerPaintingInfo& paintingInfo, LayerFragments& layerFragments)
</ins><span class="cx"> {
</span><span class="cx"> ASSERT(filterPainter->hasStartedFilterEffect());
</span><span class="cx"> // Apply the correct clipping (ie. overflow: hidden).
</span><span class="lines">@@ -4185,7 +4185,7 @@
</span><span class="cx"> // These layers should not be painted in a similar way as the other elements collected in
</span><span class="cx"> // named flows - regions -> named flows - since we do not want them to be clipped to the
</span><span class="cx"> // regions viewport.
</span><del>-void RenderLayer::paintFixedLayersInNamedFlows(GraphicsContext* context, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags)
</del><ins>+void RenderLayer::paintFixedLayersInNamedFlows(GraphicsContext& context, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags)
</ins><span class="cx"> {
</span><span class="cx"> if (!isRootLayer())
</span><span class="cx"> return;
</span><span class="lines">@@ -4206,7 +4206,7 @@
</span><span class="cx"> fixedLayer->paintLayer(context, paintingInfo, paintFlags);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintLayerContents(GraphicsContext* context, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags)
</del><ins>+void RenderLayer::paintLayerContents(GraphicsContext& originalContext, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags)
</ins><span class="cx"> {
</span><span class="cx"> ASSERT(isSelfPaintingLayer() || hasSelfPaintingLayerDescendant());
</span><span class="cx">
</span><span class="lines">@@ -4248,24 +4248,25 @@
</span><span class="cx"> // FIXME: We shouldn't have to disable subpixel quantization for overflow clips or subframes once we scroll those
</span><span class="cx"> // things on the scrolling thread.
</span><span class="cx"> bool didQuantizeFonts = true;
</span><del>- bool needToAdjustSubpixelQuantization = setupFontSubpixelQuantization(context, didQuantizeFonts);
</del><ins>+ bool needToAdjustSubpixelQuantization = setupFontSubpixelQuantization(originalContext, didQuantizeFonts);
</ins><span class="cx">
</span><span class="cx"> // Apply clip-path to context.
</span><span class="cx"> LayoutSize columnAwareOffsetFromRoot = offsetFromRoot;
</span><del>- if (renderer().flowThreadContainingBlock() && (renderer().hasClipPath() || hasFilterThatIsPainting(context, paintFlags)))
</del><ins>+ if (renderer().flowThreadContainingBlock() && (renderer().hasClipPath() || hasFilterThatIsPainting(originalContext, paintFlags)))
</ins><span class="cx"> columnAwareOffsetFromRoot = toLayoutSize(convertToLayerCoords(paintingInfo.rootLayer, LayoutPoint(), AdjustForColumns));
</span><span class="cx">
</span><span class="cx"> bool hasClipPath = false;
</span><span class="cx"> if (shouldApplyClipPath(paintingInfo.paintBehavior, localPaintFlags))
</span><del>- hasClipPath = setupClipPath(context, paintingInfo, columnAwareOffsetFromRoot, rootRelativeBounds, rootRelativeBoundsComputed);
</del><ins>+ hasClipPath = setupClipPath(originalContext, paintingInfo, columnAwareOffsetFromRoot, rootRelativeBounds, rootRelativeBoundsComputed);
</ins><span class="cx">
</span><span class="cx"> LayerPaintingInfo localPaintingInfo(paintingInfo);
</span><span class="cx">
</span><del>- GraphicsContext* transparencyLayerContext = context;
- std::unique_ptr<FilterEffectRendererHelper> filterPainter = setupFilters(context, localPaintingInfo, paintFlags, columnAwareOffsetFromRoot, rootRelativeBounds, rootRelativeBoundsComputed);
</del><ins>+ GraphicsContext* context = &originalContext;
+ GraphicsContext& transparencyLayerContext = originalContext;
+ std::unique_ptr<FilterEffectRendererHelper> filterPainter = setupFilters(*context, localPaintingInfo, paintFlags, columnAwareOffsetFromRoot, rootRelativeBounds, rootRelativeBoundsComputed);
</ins><span class="cx"> if (filterPainter) {
</span><span class="cx"> context = filterPainter->filterContext();
</span><del>- if (context != transparencyLayerContext && haveTransparency) {
</del><ins>+ if (context != &transparencyLayerContext && haveTransparency) {
</ins><span class="cx"> // If we have a filter and transparency, we have to eagerly start a transparency layer here, rather than risk a child layer lazily starts one with the wrong context.
</span><span class="cx"> beginTransparencyLayers(transparencyLayerContext, localPaintingInfo, paintingInfo.paintDirtyRect);
</span><span class="cx"> }
</span><span class="lines">@@ -4311,63 +4312,63 @@
</span><span class="cx"> if (isPaintingCompositedBackground) {
</span><span class="cx"> // Paint only the backgrounds for all of the fragments of the layer.
</span><span class="cx"> if (shouldPaintContent && !selectionOnly)
</span><del>- paintBackgroundForFragments(layerFragments, context, transparencyLayerContext, paintingInfo.paintDirtyRect, haveTransparency,
</del><ins>+ paintBackgroundForFragments(layerFragments, *context, transparencyLayerContext, paintingInfo.paintDirtyRect, haveTransparency,
</ins><span class="cx"> localPaintingInfo, paintBehavior, subtreePaintRootForRenderer);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Now walk the sorted list of children with negative z-indices.
</span><span class="cx"> if ((isPaintingScrollingContent && isPaintingOverflowContents) || (!isPaintingScrollingContent && isPaintingCompositedBackground))
</span><del>- paintList(negZOrderList(), context, localPaintingInfo, localPaintFlags);
</del><ins>+ paintList(negZOrderList(), *context, localPaintingInfo, localPaintFlags);
</ins><span class="cx">
</span><span class="cx"> if (isPaintingCompositedForeground) {
</span><span class="cx"> if (shouldPaintContent)
</span><del>- paintForegroundForFragments(layerFragments, context, transparencyLayerContext, paintingInfo.paintDirtyRect, haveTransparency,
</del><ins>+ paintForegroundForFragments(layerFragments, *context, transparencyLayerContext, paintingInfo.paintDirtyRect, haveTransparency,
</ins><span class="cx"> localPaintingInfo, paintBehavior, subtreePaintRootForRenderer, selectionOnly || selectionAndBackgroundsOnly);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (shouldPaintOutline)
</span><del>- paintOutlineForFragments(layerFragments, context, localPaintingInfo, paintBehavior, subtreePaintRootForRenderer);
</del><ins>+ paintOutlineForFragments(layerFragments, *context, localPaintingInfo, paintBehavior, subtreePaintRootForRenderer);
</ins><span class="cx">
</span><span class="cx"> if (isPaintingCompositedForeground) {
</span><span class="cx"> // Paint any child layers that have overflow.
</span><del>- paintList(m_normalFlowList.get(), context, localPaintingInfo, localPaintFlags);
</del><ins>+ paintList(m_normalFlowList.get(), *context, localPaintingInfo, localPaintFlags);
</ins><span class="cx">
</span><span class="cx"> // Now walk the sorted list of children with positive z-indices.
</span><del>- paintList(posZOrderList(), context, localPaintingInfo, localPaintFlags);
</del><ins>+ paintList(posZOrderList(), *context, localPaintingInfo, localPaintFlags);
</ins><span class="cx">
</span><span class="cx"> // Paint the fixed elements from flow threads.
</span><del>- paintFixedLayersInNamedFlows(context, localPaintingInfo, localPaintFlags);
</del><ins>+ paintFixedLayersInNamedFlows(*context, localPaintingInfo, localPaintFlags);
</ins><span class="cx">
</span><span class="cx"> // If this is a region, paint its contents via the flow thread's layer.
</span><span class="cx"> if (shouldPaintContent)
</span><del>- paintFlowThreadIfRegionForFragments(layerFragments, context, localPaintingInfo, localPaintFlags);
</del><ins>+ paintFlowThreadIfRegionForFragments(layerFragments, *context, localPaintingInfo, localPaintFlags);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (isPaintingOverlayScrollbars && hasScrollbars())
</span><del>- paintOverflowControlsForFragments(layerFragments, context, localPaintingInfo);
</del><ins>+ paintOverflowControlsForFragments(layerFragments, *context, localPaintingInfo);
</ins><span class="cx">
</span><span class="cx"> if (filterPainter) {
</span><del>- context = applyFilters(filterPainter.get(), transparencyLayerContext, localPaintingInfo, layerFragments);
</del><ins>+ context = &applyFilters(filterPainter.get(), transparencyLayerContext, localPaintingInfo, layerFragments);
</ins><span class="cx"> filterPainter = nullptr;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Make sure that we now use the original transparency context.
</span><del>- ASSERT(transparencyLayerContext == context);
</del><ins>+ ASSERT(&transparencyLayerContext == context);
</ins><span class="cx">
</span><span class="cx"> if (shouldPaintContent && !(selectionOnly || selectionAndBackgroundsOnly)) {
</span><span class="cx"> if (shouldPaintMask(paintingInfo.paintBehavior, localPaintFlags)) {
</span><span class="cx"> // Paint the mask for the fragments.
</span><del>- paintMaskForFragments(layerFragments, context, localPaintingInfo, subtreePaintRootForRenderer);
</del><ins>+ paintMaskForFragments(layerFragments, *context, localPaintingInfo, subtreePaintRootForRenderer);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (!(paintFlags & PaintLayerPaintingCompositingMaskPhase) && (paintFlags & PaintLayerPaintingCompositingClipPathPhase)) {
</span><span class="cx"> // Re-use paintChildClippingMaskForFragments to paint black for the compositing clipping mask.
</span><del>- paintChildClippingMaskForFragments(layerFragments, context, localPaintingInfo, subtreePaintRootForRenderer);
</del><ins>+ paintChildClippingMaskForFragments(layerFragments, *context, localPaintingInfo, subtreePaintRootForRenderer);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if ((localPaintFlags & PaintLayerPaintingChildClippingMaskPhase)) {
</span><span class="cx"> // Paint the border radius mask for the fragments.
</span><del>- paintChildClippingMaskForFragments(layerFragments, context, localPaintingInfo, subtreePaintRootForRenderer);
</del><ins>+ paintChildClippingMaskForFragments(layerFragments, *context, localPaintingInfo, subtreePaintRootForRenderer);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -4386,7 +4387,7 @@
</span><span class="cx"> context->restore();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintLayerByApplyingTransform(GraphicsContext* context, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags, const LayoutSize& translationOffset)
</del><ins>+void RenderLayer::paintLayerByApplyingTransform(GraphicsContext& context, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags, const LayoutSize& translationOffset)
</ins><span class="cx"> {
</span><span class="cx"> // This involves subtracting out the position of the layer in our current coordinate space, but preserving
</span><span class="cx"> // the accumulated error for sub-pixel layout.
</span><span class="lines">@@ -4402,8 +4403,8 @@
</span><span class="cx"> // Translate the graphics context to the snapping position to avoid off-device-pixel positing.
</span><span class="cx"> transform.translateRight(devicePixelSnappedOffsetForThisLayer.width(), devicePixelSnappedOffsetForThisLayer.height());
</span><span class="cx"> // Apply the transform.
</span><del>- GraphicsContextStateSaver stateSaver(*context);
- context->concatCTM(transform.toAffineTransform());
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
+ context.concatCTM(transform.toAffineTransform());
</ins><span class="cx">
</span><span class="cx"> // Now do a paint with the root layer shifted to be us.
</span><span class="cx"> LayoutSize adjustedSubpixelAccumulation = offsetForThisLayer - LayoutSize(devicePixelSnappedOffsetForThisLayer);
</span><span class="lines">@@ -4412,7 +4413,7 @@
</span><span class="cx"> paintLayerContentsAndReflection(context, transformedPaintingInfo, paintFlags);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintList(Vector<RenderLayer*>* list, GraphicsContext* context, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags)
</del><ins>+void RenderLayer::paintList(Vector<RenderLayer*>* list, GraphicsContext& context, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags)
</ins><span class="cx"> {
</span><span class="cx"> if (!list)
</span><span class="cx"> return;
</span><span class="lines">@@ -4597,7 +4598,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintTransformedLayerIntoFragments(GraphicsContext* context, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags)
</del><ins>+void RenderLayer::paintTransformedLayerIntoFragments(GraphicsContext& context, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags)
</ins><span class="cx"> {
</span><span class="cx"> LayerFragments enclosingPaginationFragments;
</span><span class="cx"> LayoutSize offsetOfPaginationLayerFromRoot;
</span><span class="lines">@@ -4629,7 +4630,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintBackgroundForFragments(const LayerFragments& layerFragments, GraphicsContext* context, GraphicsContext* transparencyLayerContext,
</del><ins>+void RenderLayer::paintBackgroundForFragments(const LayerFragments& layerFragments, GraphicsContext& context, GraphicsContext& transparencyLayerContext,
</ins><span class="cx"> const LayoutRect& transparencyPaintDirtyRect, bool haveTransparency, const LayerPaintingInfo& localPaintingInfo, PaintBehavior paintBehavior,
</span><span class="cx"> RenderObject* subtreePaintRootForRenderer)
</span><span class="cx"> {
</span><span class="lines">@@ -4657,7 +4658,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintForegroundForFragments(const LayerFragments& layerFragments, GraphicsContext* context, GraphicsContext* transparencyLayerContext,
</del><ins>+void RenderLayer::paintForegroundForFragments(const LayerFragments& layerFragments, GraphicsContext& context, GraphicsContext& transparencyLayerContext,
</ins><span class="cx"> const LayoutRect& transparencyPaintDirtyRect, bool haveTransparency, const LayerPaintingInfo& localPaintingInfo, PaintBehavior paintBehavior,
</span><span class="cx"> RenderObject* subtreePaintRootForRenderer, bool selectionOnly)
</span><span class="cx"> {
</span><span class="lines">@@ -4714,7 +4715,7 @@
</span><span class="cx"> restoreClip(context, localPaintingInfo.paintDirtyRect, clippedRect);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintForegroundForFragmentsWithPhase(PaintPhase phase, const LayerFragments& layerFragments, GraphicsContext* context,
</del><ins>+void RenderLayer::paintForegroundForFragmentsWithPhase(PaintPhase phase, const LayerFragments& layerFragments, GraphicsContext& context,
</ins><span class="cx"> const LayerPaintingInfo& localPaintingInfo, PaintBehavior paintBehavior, RenderObject* subtreePaintRootForRenderer)
</span><span class="cx"> {
</span><span class="cx"> bool shouldClip = localPaintingInfo.clipToDirtyRect && layerFragments.size() > 1;
</span><span class="lines">@@ -4736,7 +4737,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintOutlineForFragments(const LayerFragments& layerFragments, GraphicsContext* context, const LayerPaintingInfo& localPaintingInfo,
</del><ins>+void RenderLayer::paintOutlineForFragments(const LayerFragments& layerFragments, GraphicsContext& context, const LayerPaintingInfo& localPaintingInfo,
</ins><span class="cx"> PaintBehavior paintBehavior, RenderObject* subtreePaintRootForRenderer)
</span><span class="cx"> {
</span><span class="cx"> for (const auto& fragment : layerFragments) {
</span><span class="lines">@@ -4751,7 +4752,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintMaskForFragments(const LayerFragments& layerFragments, GraphicsContext* context, const LayerPaintingInfo& localPaintingInfo,
</del><ins>+void RenderLayer::paintMaskForFragments(const LayerFragments& layerFragments, GraphicsContext& context, const LayerPaintingInfo& localPaintingInfo,
</ins><span class="cx"> RenderObject* subtreePaintRootForRenderer)
</span><span class="cx"> {
</span><span class="cx"> for (const auto& fragment : layerFragments) {
</span><span class="lines">@@ -4771,7 +4772,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintChildClippingMaskForFragments(const LayerFragments& layerFragments, GraphicsContext* context, const LayerPaintingInfo& localPaintingInfo,
</del><ins>+void RenderLayer::paintChildClippingMaskForFragments(const LayerFragments& layerFragments, GraphicsContext& context, const LayerPaintingInfo& localPaintingInfo,
</ins><span class="cx"> RenderObject* subtreePaintRootForRenderer)
</span><span class="cx"> {
</span><span class="cx"> for (const auto& fragment : layerFragments) {
</span><span class="lines">@@ -4790,7 +4791,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintOverflowControlsForFragments(const LayerFragments& layerFragments, GraphicsContext* context, const LayerPaintingInfo& localPaintingInfo)
</del><ins>+void RenderLayer::paintOverflowControlsForFragments(const LayerFragments& layerFragments, GraphicsContext& context, const LayerPaintingInfo& localPaintingInfo)
</ins><span class="cx"> {
</span><span class="cx"> for (const auto& fragment : layerFragments) {
</span><span class="cx"> if (fragment.backgroundRect.isEmpty())
</span><span class="lines">@@ -6918,7 +6919,7 @@
</span><span class="cx"> renderer().repaint();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintNamedFlowThreadInsideRegion(GraphicsContext* context, RenderNamedFlowFragment* region, LayoutRect paintDirtyRect, LayoutPoint paintOffset, PaintBehavior paintBehavior, PaintLayerFlags paintFlags)
</del><ins>+void RenderLayer::paintNamedFlowThreadInsideRegion(GraphicsContext& context, RenderNamedFlowFragment* region, LayoutRect paintDirtyRect, LayoutPoint paintOffset, PaintBehavior paintBehavior, PaintLayerFlags paintFlags)
</ins><span class="cx"> {
</span><span class="cx"> LayoutRect regionContentBox = downcast<RenderBox>(region->layerOwner()).contentBoxRect();
</span><span class="cx"> CurrentRenderRegionMaintainer regionMaintainer(*region);
</span><span class="lines">@@ -6926,17 +6927,17 @@
</span><span class="cx">
</span><span class="cx"> LayoutSize moveOffset = region->flowThreadPortionLocation() - (paintOffset + regionContentBox.location()) + region->fragmentContainer().scrolledContentOffset();
</span><span class="cx"> FloatPoint adjustedPaintOffset = roundPointToDevicePixels(toLayoutPoint(moveOffset), renderer().document().deviceScaleFactor());
</span><del>- context->save();
- context->translate(-adjustedPaintOffset.x(), -adjustedPaintOffset.y());
</del><ins>+ context.save();
+ context.translate(-adjustedPaintOffset.x(), -adjustedPaintOffset.y());
</ins><span class="cx">
</span><span class="cx"> LayoutSize subpixelAccumulation = moveOffset - toLayoutSize(LayoutPoint(adjustedPaintOffset));
</span><span class="cx"> paintDirtyRect.move(moveOffset);
</span><span class="cx"> paint(context, paintDirtyRect, LayoutSize(-subpixelAccumulation.width(), -subpixelAccumulation.height()), paintBehavior, nullptr, paintFlags | PaintLayerTemporaryClipRects);
</span><span class="cx"> region->restoreRegionObjectsOriginalStyle();
</span><del>- context->restore();
</del><ins>+ context.restore();
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayer::paintFlowThreadIfRegionForFragments(const LayerFragments& fragments, GraphicsContext* context, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags)
</del><ins>+void RenderLayer::paintFlowThreadIfRegionForFragments(const LayerFragments& fragments, GraphicsContext& context, const LayerPaintingInfo& paintingInfo, PaintLayerFlags paintFlags)
</ins><span class="cx"> {
</span><span class="cx"> if (!renderer().isRenderNamedFlowFragmentContainer())
</span><span class="cx"> return;
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderLayerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderLayer.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderLayer.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderLayer.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -260,9 +260,9 @@
</span><span class="cx"> bool hitTestOverflowControls(HitTestResult&, const IntPoint& localPoint);
</span><span class="cx"> IntSize offsetFromResizeCorner(const IntPoint& absolutePoint) const;
</span><span class="cx">
</span><del>- void paintOverflowControls(GraphicsContext*, const IntPoint&, const IntRect& damageRect, bool paintingOverlayControls = false);
- void paintScrollCorner(GraphicsContext*, const IntPoint&, const IntRect& damageRect);
- void paintResizer(GraphicsContext*, const LayoutPoint&, const LayoutRect& damageRect);
</del><ins>+ void paintOverflowControls(GraphicsContext&, const IntPoint&, const IntRect& damageRect, bool paintingOverlayControls = false);
+ void paintScrollCorner(GraphicsContext&, const IntPoint&, const IntRect& damageRect);
+ void paintResizer(GraphicsContext&, const LayoutPoint&, const LayoutRect& damageRect);
</ins><span class="cx">
</span><span class="cx"> void updateScrollInfoAfterLayout();
</span><span class="cx">
</span><span class="lines">@@ -460,13 +460,13 @@
</span><span class="cx"> // paints the layers that intersect the damage rect from back to
</span><span class="cx"> // front. The hitTest method looks for mouse events by walking
</span><span class="cx"> // layers that intersect the point from front to back.
</span><del>- void paint(GraphicsContext*, const LayoutRect& damageRect, const LayoutSize& subpixelAccumulation = LayoutSize(), PaintBehavior = PaintBehaviorNormal,
</del><ins>+ void paint(GraphicsContext&, const LayoutRect& damageRect, const LayoutSize& subpixelAccumulation = LayoutSize(), PaintBehavior = PaintBehaviorNormal,
</ins><span class="cx"> RenderObject* subtreePaintRoot = nullptr, PaintLayerFlags = 0);
</span><span class="cx"> bool hitTest(const HitTestRequest&, HitTestResult&);
</span><span class="cx"> bool hitTest(const HitTestRequest&, const HitTestLocation&, HitTestResult&);
</span><del>- void paintOverlayScrollbars(GraphicsContext*, const LayoutRect& damageRect, PaintBehavior, RenderObject* subtreePaintRoot = nullptr);
</del><ins>+ void paintOverlayScrollbars(GraphicsContext&, const LayoutRect& damageRect, PaintBehavior, RenderObject* subtreePaintRoot = nullptr);
</ins><span class="cx">
</span><del>- void paintNamedFlowThreadInsideRegion(GraphicsContext*, RenderNamedFlowFragment*, LayoutRect, LayoutPoint, PaintBehavior = PaintBehaviorNormal, PaintLayerFlags = 0);
</del><ins>+ void paintNamedFlowThreadInsideRegion(GraphicsContext&, RenderNamedFlowFragment*, LayoutRect, LayoutPoint, PaintBehavior = PaintBehaviorNormal, PaintLayerFlags = 0);
</ins><span class="cx">
</span><span class="cx"> struct ClipRectsContext {
</span><span class="cx"> ClipRectsContext(const RenderLayer* inRootLayer, ClipRectsType inClipRectsType, OverlayScrollbarSizeRelevancy inOverlayScrollbarSizeRelevancy = IgnoreOverlayScrollbarSize, ShouldRespectOverflowClip inRespectOverflowClip = RespectOverflowClip)
</span><span class="lines">@@ -717,8 +717,8 @@
</span><span class="cx"> void computeRepaintRectsIncludingDescendants();
</span><span class="cx"> void clearRepaintRects();
</span><span class="cx">
</span><del>- void clipToRect(const LayerPaintingInfo&, GraphicsContext*, const ClipRect&, BorderRadiusClippingRule = IncludeSelfForBorderRadius);
- void restoreClip(GraphicsContext*, const LayoutRect& paintDirtyRect, const ClipRect&);
</del><ins>+ void clipToRect(const LayerPaintingInfo&, GraphicsContext&, const ClipRect&, BorderRadiusClippingRule = IncludeSelfForBorderRadius);
+ void restoreClip(GraphicsContext&, const LayoutRect& paintDirtyRect, const ClipRect&);
</ins><span class="cx">
</span><span class="cx"> bool shouldRepaintAfterLayout() const;
</span><span class="cx">
</span><span class="lines">@@ -768,42 +768,42 @@
</span><span class="cx">
</span><span class="cx"> void updateCompositingAndLayerListsIfNeeded();
</span><span class="cx">
</span><del>- bool setupFontSubpixelQuantization(GraphicsContext*, bool& didQuantizeFonts);
</del><ins>+ bool setupFontSubpixelQuantization(GraphicsContext&, bool& didQuantizeFonts);
</ins><span class="cx">
</span><span class="cx"> Path computeClipPath(const LayoutSize& offsetFromRoot, LayoutRect& rootRelativeBounds, WindRule&) const;
</span><span class="cx">
</span><del>- bool setupClipPath(GraphicsContext*, const LayerPaintingInfo&, const LayoutSize& offsetFromRoot, LayoutRect& rootRelativeBounds, bool& rootRelativeBoundsComputed);
</del><ins>+ bool setupClipPath(GraphicsContext&, const LayerPaintingInfo&, const LayoutSize& offsetFromRoot, LayoutRect& rootRelativeBounds, bool& rootRelativeBoundsComputed);
</ins><span class="cx">
</span><del>- bool hasFilterThatIsPainting(GraphicsContext*, PaintLayerFlags) const;
- std::unique_ptr<FilterEffectRendererHelper> setupFilters(GraphicsContext*, LayerPaintingInfo&, PaintLayerFlags, const LayoutSize& offsetFromRoot, LayoutRect& rootRelativeBounds, bool& rootRelativeBoundsComputed);
- GraphicsContext* applyFilters(FilterEffectRendererHelper*, GraphicsContext* originalContext, LayerPaintingInfo&, LayerFragments&);
</del><ins>+ bool hasFilterThatIsPainting(GraphicsContext&, PaintLayerFlags) const;
+ std::unique_ptr<FilterEffectRendererHelper> setupFilters(GraphicsContext&, LayerPaintingInfo&, PaintLayerFlags, const LayoutSize& offsetFromRoot, LayoutRect& rootRelativeBounds, bool& rootRelativeBoundsComputed);
+ GraphicsContext& applyFilters(FilterEffectRendererHelper*, GraphicsContext& originalContext, LayerPaintingInfo&, LayerFragments&);
</ins><span class="cx">
</span><del>- void paintLayer(GraphicsContext*, const LayerPaintingInfo&, PaintLayerFlags);
- void paintFixedLayersInNamedFlows(GraphicsContext*, const LayerPaintingInfo&, PaintLayerFlags);
- void paintLayerContentsAndReflection(GraphicsContext*, const LayerPaintingInfo&, PaintLayerFlags);
- void paintLayerByApplyingTransform(GraphicsContext*, const LayerPaintingInfo&, PaintLayerFlags, const LayoutSize& translationOffset = LayoutSize());
- void paintLayerContents(GraphicsContext*, const LayerPaintingInfo&, PaintLayerFlags);
- void paintList(Vector<RenderLayer*>*, GraphicsContext*, const LayerPaintingInfo&, PaintLayerFlags);
</del><ins>+ void paintLayer(GraphicsContext&, const LayerPaintingInfo&, PaintLayerFlags);
+ void paintFixedLayersInNamedFlows(GraphicsContext&, const LayerPaintingInfo&, PaintLayerFlags);
+ void paintLayerContentsAndReflection(GraphicsContext&, const LayerPaintingInfo&, PaintLayerFlags);
+ void paintLayerByApplyingTransform(GraphicsContext&, const LayerPaintingInfo&, PaintLayerFlags, const LayoutSize& translationOffset = LayoutSize());
+ void paintLayerContents(GraphicsContext&, const LayerPaintingInfo&, PaintLayerFlags);
+ void paintList(Vector<RenderLayer*>*, GraphicsContext&, const LayerPaintingInfo&, PaintLayerFlags);
</ins><span class="cx">
</span><span class="cx"> void collectFragments(LayerFragments&, const RenderLayer* rootLayer, const LayoutRect& dirtyRect,
</span><span class="cx"> PaginationInclusionMode,
</span><span class="cx"> ClipRectsType, OverlayScrollbarSizeRelevancy inOverlayScrollbarSizeRelevancy, ShouldRespectOverflowClip, const LayoutSize& offsetFromRoot,
</span><span class="cx"> const LayoutRect* layerBoundingBox = nullptr, ShouldApplyRootOffsetToFragments = IgnoreRootOffsetForFragments);
</span><span class="cx"> void updatePaintingInfoForFragments(LayerFragments&, const LayerPaintingInfo&, PaintLayerFlags, bool shouldPaintContent, const LayoutSize& offsetFromRoot);
</span><del>- void paintBackgroundForFragments(const LayerFragments&, GraphicsContext*, GraphicsContext* transparencyLayerContext,
</del><ins>+ void paintBackgroundForFragments(const LayerFragments&, GraphicsContext&, GraphicsContext& transparencyLayerContext,
</ins><span class="cx"> const LayoutRect& transparencyPaintDirtyRect, bool haveTransparency, const LayerPaintingInfo&, PaintBehavior, RenderObject* paintingRootForRenderer);
</span><del>- void paintForegroundForFragments(const LayerFragments&, GraphicsContext*, GraphicsContext* transparencyLayerContext,
</del><ins>+ void paintForegroundForFragments(const LayerFragments&, GraphicsContext&, GraphicsContext& transparencyLayerContext,
</ins><span class="cx"> const LayoutRect& transparencyPaintDirtyRect, bool haveTransparency, const LayerPaintingInfo&, PaintBehavior, RenderObject* paintingRootForRenderer,
</span><span class="cx"> bool selectionOnly);
</span><del>- void paintForegroundForFragmentsWithPhase(PaintPhase, const LayerFragments&, GraphicsContext*, const LayerPaintingInfo&, PaintBehavior, RenderObject* paintingRootForRenderer);
- void paintOutlineForFragments(const LayerFragments&, GraphicsContext*, const LayerPaintingInfo&, PaintBehavior, RenderObject* paintingRootForRenderer);
- void paintOverflowControlsForFragments(const LayerFragments&, GraphicsContext*, const LayerPaintingInfo&);
- void paintMaskForFragments(const LayerFragments&, GraphicsContext*, const LayerPaintingInfo&, RenderObject* paintingRootForRenderer);
- void paintChildClippingMaskForFragments(const LayerFragments&, GraphicsContext*, const LayerPaintingInfo&, RenderObject* paintingRootForRenderer);
- void paintTransformedLayerIntoFragments(GraphicsContext*, const LayerPaintingInfo&, PaintLayerFlags);
</del><ins>+ void paintForegroundForFragmentsWithPhase(PaintPhase, const LayerFragments&, GraphicsContext&, const LayerPaintingInfo&, PaintBehavior, RenderObject* paintingRootForRenderer);
+ void paintOutlineForFragments(const LayerFragments&, GraphicsContext&, const LayerPaintingInfo&, PaintBehavior, RenderObject* paintingRootForRenderer);
+ void paintOverflowControlsForFragments(const LayerFragments&, GraphicsContext&, const LayerPaintingInfo&);
+ void paintMaskForFragments(const LayerFragments&, GraphicsContext&, const LayerPaintingInfo&, RenderObject* paintingRootForRenderer);
+ void paintChildClippingMaskForFragments(const LayerFragments&, GraphicsContext&, const LayerPaintingInfo&, RenderObject* paintingRootForRenderer);
+ void paintTransformedLayerIntoFragments(GraphicsContext&, const LayerPaintingInfo&, PaintLayerFlags);
</ins><span class="cx">
</span><span class="cx"> RenderLayer* transparentPaintingAncestor();
</span><del>- void beginTransparencyLayers(GraphicsContext*, const LayerPaintingInfo&, const LayoutRect& dirtyRect);
</del><ins>+ void beginTransparencyLayers(GraphicsContext&, const LayerPaintingInfo&, const LayoutRect& dirtyRect);
</ins><span class="cx">
</span><span class="cx"> RenderLayer* hitTestLayer(RenderLayer* rootLayer, RenderLayer* containerLayer, const HitTestRequest& request, HitTestResult& result,
</span><span class="cx"> const LayoutRect& hitTestRect, const HitTestLocation&, bool appliedTransform,
</span><span class="lines">@@ -938,7 +938,7 @@
</span><span class="cx"> void updateScrollCornerStyle();
</span><span class="cx"> void updateResizerStyle();
</span><span class="cx">
</span><del>- void drawPlatformResizerImage(GraphicsContext*, const LayoutRect& resizerCornerRect);
</del><ins>+ void drawPlatformResizerImage(GraphicsContext&, const LayoutRect& resizerCornerRect);
</ins><span class="cx">
</span><span class="cx"> void updatePagination();
</span><span class="cx">
</span><span class="lines">@@ -982,7 +982,7 @@
</span><span class="cx"> const LayoutRect&, const HitTestLocation&,
</span><span class="cx"> const HitTestingTransformState*, double* zOffsetForDescendants,
</span><span class="cx"> double* zOffset, const HitTestingTransformState* unflattenedTransformState, bool depthSortDescendants);
</span><del>- void paintFlowThreadIfRegionForFragments(const LayerFragments&, GraphicsContext*, const LayerPaintingInfo&, PaintLayerFlags);
</del><ins>+ void paintFlowThreadIfRegionForFragments(const LayerFragments&, GraphicsContext&, const LayerPaintingInfo&, PaintLayerFlags);
</ins><span class="cx"> bool mapLayerClipRectsToFragmentationLayer(ClipRects&) const;
</span><span class="cx">
</span><span class="cx"> RenderNamedFlowFragment* currentRenderNamedFlowFragment() const;
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderLayerBackingcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderLayerBacking.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderLayerBacking.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderLayerBacking.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -2258,7 +2258,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderLayerBacking::paintIntoLayer(const GraphicsLayer* graphicsLayer, GraphicsContext* context,
</del><ins>+void RenderLayerBacking::paintIntoLayer(const GraphicsLayer* graphicsLayer, GraphicsContext& context,
</ins><span class="cx"> const IntRect& paintDirtyRect, // In the coords of rootLayer.
</span><span class="cx"> PaintBehavior paintBehavior, GraphicsLayerPaintingPhase paintingPhase)
</span><span class="cx"> {
</span><span class="lines">@@ -2341,7 +2341,7 @@
</span><span class="cx"> dirtyRect.intersect(enclosingIntRect(compositedBoundsIncludingMargin()));
</span><span class="cx">
</span><span class="cx"> // We have to use the same root as for hit testing, because both methods can compute and cache clipRects.
</span><del>- paintIntoLayer(graphicsLayer, &context, dirtyRect, PaintBehaviorNormal, paintingPhase);
</del><ins>+ paintIntoLayer(graphicsLayer, context, dirtyRect, PaintBehaviorNormal, paintingPhase);
</ins><span class="cx">
</span><span class="cx"> InspectorInstrumentation::didPaint(&renderer(), dirtyRect);
</span><span class="cx"> } else if (graphicsLayer == layerForHorizontalScrollbar()) {
</span><span class="lines">@@ -2354,8 +2354,8 @@
</span><span class="cx"> context.translate(-scrollCornerAndResizer.x(), -scrollCornerAndResizer.y());
</span><span class="cx"> LayoutRect transformedClip = LayoutRect(clip);
</span><span class="cx"> transformedClip.moveBy(scrollCornerAndResizer.location());
</span><del>- m_owningLayer.paintScrollCorner(&context, IntPoint(), snappedIntRect(transformedClip));
- m_owningLayer.paintResizer(&context, IntPoint(), transformedClip);
</del><ins>+ m_owningLayer.paintScrollCorner(context, IntPoint(), snappedIntRect(transformedClip));
+ m_owningLayer.paintResizer(context, IntPoint(), transformedClip);
</ins><span class="cx"> context.restore();
</span><span class="cx"> }
</span><span class="cx"> #ifndef NDEBUG
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderLayerBackingh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderLayerBacking.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderLayerBacking.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderLayerBacking.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -326,7 +326,7 @@
</span><span class="cx"> bool hasTiledBackingFlatteningLayer() const { return (m_childContainmentLayer && m_usingTiledCacheLayer); }
</span><span class="cx"> GraphicsLayer* tileCacheFlatteningLayer() const { return m_usingTiledCacheLayer ? m_childContainmentLayer.get() : nullptr; }
</span><span class="cx">
</span><del>- void paintIntoLayer(const GraphicsLayer*, GraphicsContext*, const IntRect& paintDirtyRect, PaintBehavior, GraphicsLayerPaintingPhase);
</del><ins>+ void paintIntoLayer(const GraphicsLayer*, GraphicsContext&, const IntRect& paintDirtyRect, PaintBehavior, GraphicsLayerPaintingPhase);
</ins><span class="cx">
</span><span class="cx"> // Helper function for updateGeometry.
</span><span class="cx"> void adjustAncestorCompositingBoundsForFlowThread(LayoutRect& ancestorCompositingBounds, const RenderLayer* compositingAncestor) const;
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderLayerCompositorcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -2866,7 +2866,7 @@
</span><span class="cx"> context.translate(-scrollbarRect.x(), -scrollbarRect.y());
</span><span class="cx"> IntRect transformedClip = clip;
</span><span class="cx"> transformedClip.moveBy(scrollbarRect.location());
</span><del>- scrollbar->paint(&context, transformedClip);
</del><ins>+ scrollbar->paint(context, transformedClip);
</ins><span class="cx"> context.restore();
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -2883,7 +2883,7 @@
</span><span class="cx"> context.translate(-scrollCorner.x(), -scrollCorner.y());
</span><span class="cx"> IntRect transformedClip = pixelSnappedRectForIntegralPositionedItems;
</span><span class="cx"> transformedClip.moveBy(scrollCorner.location());
</span><del>- m_renderView.frameView().paintScrollCorner(&context, transformedClip);
</del><ins>+ m_renderView.frameView().paintScrollCorner(context, transformedClip);
</ins><span class="cx"> context.restore();
</span><span class="cx"> }
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderListBoxcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderListBox.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderListBox.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderListBox.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -345,7 +345,7 @@
</span><span class="cx"> m_vBar->width(),
</span><span class="cx"> height() - (borderTop() + borderBottom()));
</span><span class="cx"> m_vBar->setFrameRect(scrollRect);
</span><del>- m_vBar->paint(paintInfo.context, snappedIntRect(paintInfo.rect));
</del><ins>+ m_vBar->paint(paintInfo.context(), snappedIntRect(paintInfo.rect));
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -397,7 +397,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> ColorSpace colorSpace = itemStyle.colorSpace();
</span><del>- paintInfo.context->setFillColor(textColor, colorSpace);
</del><ins>+ paintInfo.context().setFillColor(textColor, colorSpace);
</ins><span class="cx">
</span><span class="cx"> TextRun textRun(itemText, 0, 0, AllowTrailingExpansion, itemStyle.direction(), isOverride(itemStyle.unicodeBidi()), true, TextRun::NoRounding);
</span><span class="cx"> FontCascade itemFont = style().fontCascade();
</span><span class="lines">@@ -412,7 +412,7 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Draw the item text
</span><del>- paintInfo.context->drawBidiText(itemFont, textRun, roundedIntPoint(r.location()));
</del><ins>+ paintInfo.context().drawBidiText(itemFont, textRun, roundedIntPoint(r.location()));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderListBox::paintItemBackground(PaintInfo& paintInfo, const LayoutPoint& paintOffset, int listIndex)
</span><span class="lines">@@ -435,7 +435,7 @@
</span><span class="cx"> ColorSpace colorSpace = itemStyle.colorSpace();
</span><span class="cx"> LayoutRect itemRect = itemBoundingBoxRect(paintOffset, listIndex);
</span><span class="cx"> itemRect.intersect(controlClipRect(paintOffset));
</span><del>- paintInfo.context->fillRect(snappedIntRect(itemRect), backColor, colorSpace);
</del><ins>+ paintInfo.context().fillRect(snappedIntRect(itemRect), backColor, colorSpace);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderListMarkercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderListMarker.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderListMarker.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderListMarker.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1194,14 +1194,14 @@
</span><span class="cx"> FloatRect marker = getRelativeMarkerRect();
</span><span class="cx"> marker.moveBy(boxOrigin);
</span><span class="cx">
</span><del>- GraphicsContext* context = paintInfo.context;
</del><ins>+ GraphicsContext& context = paintInfo.context();
</ins><span class="cx">
</span><span class="cx"> if (isImage()) {
</span><del>- context->drawImage(m_image->image(this, marker.size()).get(), style().colorSpace(), marker);
</del><ins>+ context.drawImage(m_image->image(this, marker.size()).get(), style().colorSpace(), marker);
</ins><span class="cx"> if (selectionState() != SelectionNone) {
</span><span class="cx"> LayoutRect selRect = localSelectionRect();
</span><span class="cx"> selRect.moveBy(boxOrigin);
</span><del>- context->fillRect(snappedIntRect(selRect), m_listItem.selectionBackgroundColor(), style().colorSpace());
</del><ins>+ context.fillRect(snappedIntRect(selRect), m_listItem.selectionBackgroundColor(), style().colorSpace());
</ins><span class="cx"> }
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="lines">@@ -1209,26 +1209,26 @@
</span><span class="cx"> if (selectionState() != SelectionNone) {
</span><span class="cx"> LayoutRect selRect = localSelectionRect();
</span><span class="cx"> selRect.moveBy(boxOrigin);
</span><del>- context->fillRect(snappedIntRect(selRect), m_listItem.selectionBackgroundColor(), style().colorSpace());
</del><ins>+ context.fillRect(snappedIntRect(selRect), m_listItem.selectionBackgroundColor(), style().colorSpace());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> const Color color(style().visitedDependentColor(CSSPropertyColor));
</span><del>- context->setStrokeColor(color, style().colorSpace());
- context->setStrokeStyle(SolidStroke);
- context->setStrokeThickness(1.0f);
- context->setFillColor(color, style().colorSpace());
</del><ins>+ context.setStrokeColor(color, style().colorSpace());
+ context.setStrokeStyle(SolidStroke);
+ context.setStrokeThickness(1.0f);
+ context.setFillColor(color, style().colorSpace());
</ins><span class="cx">
</span><span class="cx"> EListStyleType type = style().listStyleType();
</span><span class="cx"> switch (type) {
</span><span class="cx"> case Disc:
</span><del>- context->drawEllipse(marker);
</del><ins>+ context.drawEllipse(marker);
</ins><span class="cx"> return;
</span><span class="cx"> case Circle:
</span><del>- context->setFillColor(Color::transparent, ColorSpaceDeviceRGB);
- context->drawEllipse(marker);
</del><ins>+ context.setFillColor(Color::transparent, ColorSpaceDeviceRGB);
+ context.drawEllipse(marker);
</ins><span class="cx"> return;
</span><span class="cx"> case Square:
</span><del>- context->drawRect(marker);
</del><ins>+ context.drawRect(marker);
</ins><span class="cx"> return;
</span><span class="cx"> case NoneListStyle:
</span><span class="cx"> return;
</span><span class="lines">@@ -1317,22 +1317,22 @@
</span><span class="cx"> const FontCascade& font = style().fontCascade();
</span><span class="cx"> TextRun textRun = RenderBlock::constructTextRun(this, font, m_text, style());
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context, false);
</del><ins>+ GraphicsContextStateSaver stateSaver(context, false);
</ins><span class="cx"> if (!style().isHorizontalWritingMode()) {
</span><span class="cx"> marker.moveBy(-boxOrigin);
</span><span class="cx"> marker = marker.transposedRect();
</span><span class="cx"> marker.moveBy(FloatPoint(box.x(), box.y() - logicalHeight()));
</span><span class="cx"> stateSaver.save();
</span><del>- context->translate(marker.x(), marker.maxY());
- context->rotate(static_cast<float>(deg2rad(90.)));
- context->translate(-marker.x(), -marker.maxY());
</del><ins>+ context.translate(marker.x(), marker.maxY());
+ context.rotate(static_cast<float>(deg2rad(90.)));
+ context.translate(-marker.x(), -marker.maxY());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> FloatPoint textOrigin = FloatPoint(marker.x(), marker.y() + style().fontMetrics().ascent());
</span><span class="cx"> textOrigin = roundPointToDevicePixels(LayoutPoint(textOrigin), document().deviceScaleFactor(), style().isLeftToRightDirection());
</span><span class="cx">
</span><span class="cx"> if (type == Asterisks || type == Footnotes)
</span><del>- context->drawText(font, textRun, textOrigin);
</del><ins>+ context.drawText(font, textRun, textOrigin);
</ins><span class="cx"> else {
</span><span class="cx"> const UChar suffix = listMarkerSuffix(type, m_listItem.value());
</span><span class="cx">
</span><span class="lines">@@ -1363,7 +1363,7 @@
</span><span class="cx"> }
</span><span class="cx"> textRun.setText(StringView(toDraw));
</span><span class="cx">
</span><del>- context->drawText(font, textRun, textOrigin);
</del><ins>+ context.drawText(font, textRun, textOrigin);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderMediaControlscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderMediaControls.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderMediaControls.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderMediaControls.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -91,9 +91,9 @@
</span><span class="cx"> if (zoomLevel != 1.0f) {
</span><span class="cx"> unzoomedRect.setWidth(unzoomedRect.width() / zoomLevel);
</span><span class="cx"> unzoomedRect.setHeight(unzoomedRect.height() / zoomLevel);
</span><del>- paintInfo.context->translate(unzoomedRect.x(), unzoomedRect.y());
- paintInfo.context->scale(FloatSize(zoomLevel, zoomLevel));
- paintInfo.context->translate(-unzoomedRect.x(), -unzoomedRect.y());
</del><ins>+ paintInfo.context().translate(unzoomedRect.x(), unzoomedRect.y());
+ paintInfo.context().scale(FloatSize(zoomLevel, zoomLevel));
+ paintInfo.context().translate(-unzoomedRect.x(), -unzoomedRect.y());
</ins><span class="cx"> }
</span><span class="cx"> return unzoomedRect;
</span><span class="cx"> }
</span><span class="lines">@@ -128,76 +128,76 @@
</span><span class="cx">
</span><span class="cx"> bool RenderMediaControls::paintMediaControlsPart(MediaControlElementType part, const RenderObject& o, const PaintInfo& paintInfo, const IntRect& r)
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> switch (part) {
</span><span class="cx"> case MediaEnterFullscreenButton:
</span><span class="cx"> case MediaExitFullscreenButton:
</span><span class="cx"> if (MediaControlFullscreenButtonElement* btn = static_cast<MediaControlFullscreenButtonElement*>(o.node())) {
</span><span class="cx"> bool enterButton = btn->displayType() == MediaEnterFullscreenButton;
</span><del>- wkDrawMediaUIPart(enterButton ? WKMediaUIPartFullscreenButton : WKMediaUIPartExitFullscreenButton, paintInfo.context->platformContext(), r, determineState(o));
</del><ins>+ wkDrawMediaUIPart(enterButton ? WKMediaUIPartFullscreenButton : WKMediaUIPartExitFullscreenButton, paintInfo.context().platformContext(), r, determineState(o));
</ins><span class="cx"> }
</span><span class="cx"> break;
</span><span class="cx"> case MediaShowClosedCaptionsButton:
</span><span class="cx"> case MediaHideClosedCaptionsButton:
</span><span class="cx"> if (MediaControlToggleClosedCaptionsButtonElement* btn = static_cast<MediaControlToggleClosedCaptionsButtonElement*>(o.node())) {
</span><span class="cx"> bool captionsVisible = btn->displayType() == MediaHideClosedCaptionsButton;
</span><del>- wkDrawMediaUIPart(captionsVisible ? WKMediaUIPartHideClosedCaptionsButton : WKMediaUIPartShowClosedCaptionsButton, paintInfo.context->platformContext(), r, determineState(o));
</del><ins>+ wkDrawMediaUIPart(captionsVisible ? WKMediaUIPartHideClosedCaptionsButton : WKMediaUIPartShowClosedCaptionsButton, paintInfo.context().platformContext(), r, determineState(o));
</ins><span class="cx"> }
</span><span class="cx"> break;
</span><span class="cx"> case MediaMuteButton:
</span><span class="cx"> case MediaUnMuteButton:
</span><span class="cx"> if (MediaControlMuteButtonElement* btn = static_cast<MediaControlMuteButtonElement*>(o.node())) {
</span><span class="cx"> bool audioEnabled = btn->displayType() == MediaMuteButton;
</span><del>- wkDrawMediaUIPart(audioEnabled ? WKMediaUIPartMuteButton : WKMediaUIPartUnMuteButton, paintInfo.context->platformContext(), r, determineState(o));
</del><ins>+ wkDrawMediaUIPart(audioEnabled ? WKMediaUIPartMuteButton : WKMediaUIPartUnMuteButton, paintInfo.context().platformContext(), r, determineState(o));
</ins><span class="cx"> }
</span><span class="cx"> break;
</span><span class="cx"> case MediaPauseButton:
</span><span class="cx"> case MediaPlayButton:
</span><span class="cx"> if (MediaControlPlayButtonElement* btn = static_cast<MediaControlPlayButtonElement*>(o.node())) {
</span><span class="cx"> bool canPlay = btn->displayType() == MediaPlayButton;
</span><del>- wkDrawMediaUIPart(canPlay ? WKMediaUIPartPlayButton : WKMediaUIPartPauseButton, paintInfo.context->platformContext(), r, determineState(o));
</del><ins>+ wkDrawMediaUIPart(canPlay ? WKMediaUIPartPlayButton : WKMediaUIPartPauseButton, paintInfo.context().platformContext(), r, determineState(o));
</ins><span class="cx"> }
</span><span class="cx"> break;
</span><span class="cx"> case MediaRewindButton:
</span><del>- wkDrawMediaUIPart(WKMediaUIPartRewindButton, paintInfo.context->platformContext(), r, determineState(o));
</del><ins>+ wkDrawMediaUIPart(WKMediaUIPartRewindButton, paintInfo.context().platformContext(), r, determineState(o));
</ins><span class="cx"> break;
</span><span class="cx"> case MediaReturnToRealtimeButton:
</span><del>- wkDrawMediaUIPart(WKMediaUIPartSeekToRealtimeButton, paintInfo.context->platformContext(), r, determineState(o));
</del><ins>+ wkDrawMediaUIPart(WKMediaUIPartSeekToRealtimeButton, paintInfo.context().platformContext(), r, determineState(o));
</ins><span class="cx"> break;
</span><span class="cx"> case MediaSeekBackButton:
</span><del>- wkDrawMediaUIPart(WKMediaUIPartSeekBackButton, paintInfo.context->platformContext(), r, determineState(o));
</del><ins>+ wkDrawMediaUIPart(WKMediaUIPartSeekBackButton, paintInfo.context().platformContext(), r, determineState(o));
</ins><span class="cx"> break;
</span><span class="cx"> case MediaSeekForwardButton:
</span><del>- wkDrawMediaUIPart(WKMediaUIPartSeekForwardButton, paintInfo.context->platformContext(), r, determineState(o));
</del><ins>+ wkDrawMediaUIPart(WKMediaUIPartSeekForwardButton, paintInfo.context().platformContext(), r, determineState(o));
</ins><span class="cx"> break;
</span><span class="cx"> case MediaSlider: {
</span><span class="cx"> if (HTMLMediaElement* mediaElement = parentMediaElement(o)) {
</span><span class="cx"> FloatRect unzoomedRect = getUnzoomedRectAndAdjustCurrentContext(o, paintInfo, r);
</span><del>- wkDrawMediaSliderTrack(paintInfo.context->platformContext(), unzoomedRect, mediaElement->percentLoaded() * mediaElement->duration(), mediaElement->currentTime(), mediaElement->duration(), determineState(o));
</del><ins>+ wkDrawMediaSliderTrack(paintInfo.context().platformContext(), unzoomedRect, mediaElement->percentLoaded() * mediaElement->duration(), mediaElement->currentTime(), mediaElement->duration(), determineState(o));
</ins><span class="cx"> }
</span><span class="cx"> break;
</span><span class="cx"> }
</span><span class="cx"> case MediaSliderThumb:
</span><del>- wkDrawMediaUIPart(WKMediaUIPartTimelineSliderThumb, paintInfo.context->platformContext(), r, determineState(o));
</del><ins>+ wkDrawMediaUIPart(WKMediaUIPartTimelineSliderThumb, paintInfo.context().platformContext(), r, determineState(o));
</ins><span class="cx"> break;
</span><span class="cx"> case MediaVolumeSliderContainer:
</span><del>- wkDrawMediaUIPart(WKMediaUIPartVolumeSliderContainer, paintInfo.context->platformContext(), r, determineState(o));
</del><ins>+ wkDrawMediaUIPart(WKMediaUIPartVolumeSliderContainer, paintInfo.context().platformContext(), r, determineState(o));
</ins><span class="cx"> break;
</span><span class="cx"> case MediaVolumeSlider:
</span><del>- wkDrawMediaUIPart(WKMediaUIPartVolumeSlider, paintInfo.context->platformContext(), r, determineState(o));
</del><ins>+ wkDrawMediaUIPart(WKMediaUIPartVolumeSlider, paintInfo.context().platformContext(), r, determineState(o));
</ins><span class="cx"> break;
</span><span class="cx"> case MediaVolumeSliderThumb:
</span><del>- wkDrawMediaUIPart(WKMediaUIPartVolumeSliderThumb, paintInfo.context->platformContext(), r, determineState(o));
</del><ins>+ wkDrawMediaUIPart(WKMediaUIPartVolumeSliderThumb, paintInfo.context().platformContext(), r, determineState(o));
</ins><span class="cx"> break;
</span><span class="cx"> case MediaFullScreenVolumeSlider:
</span><del>- wkDrawMediaUIPart(WKMediaUIPartFullScreenVolumeSlider, paintInfo.context->platformContext(), r, determineState(o));
</del><ins>+ wkDrawMediaUIPart(WKMediaUIPartFullScreenVolumeSlider, paintInfo.context().platformContext(), r, determineState(o));
</ins><span class="cx"> break;
</span><span class="cx"> case MediaFullScreenVolumeSliderThumb:
</span><del>- wkDrawMediaUIPart(WKMediaUIPartFullScreenVolumeSliderThumb, paintInfo.context->platformContext(), r, determineState(o));
</del><ins>+ wkDrawMediaUIPart(WKMediaUIPartFullScreenVolumeSliderThumb, paintInfo.context().platformContext(), r, determineState(o));
</ins><span class="cx"> break;
</span><span class="cx"> case MediaTimelineContainer:
</span><del>- wkDrawMediaUIPart(WKMediaUIPartBackground, paintInfo.context->platformContext(), r, determineState(o));
</del><ins>+ wkDrawMediaUIPart(WKMediaUIPartBackground, paintInfo.context().platformContext(), r, determineState(o));
</ins><span class="cx"> break;
</span><span class="cx"> case MediaCurrentTimeDisplay:
</span><span class="cx"> ASSERT_NOT_REACHED();
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderMultiColumnSetcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderMultiColumnSet.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderMultiColumnSet.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderMultiColumnSet.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -570,7 +570,7 @@
</span><span class="cx">
</span><span class="cx"> void RenderMultiColumnSet::paintColumnRules(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
</span><span class="cx"> {
</span><del>- if (paintInfo.context->paintingDisabled())
</del><ins>+ if (paintInfo.context().paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> RenderMultiColumnFlowThread* flowThread = multiColumnFlowThread();
</span><span class="lines">@@ -588,7 +588,7 @@
</span><span class="cx"> if (colCount <= 1)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- bool antialias = shouldAntialiasLines(paintInfo.context);
</del><ins>+ bool antialias = shouldAntialiasLines(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> if (flowThread->progressionIsInline()) {
</span><span class="cx"> bool leftToRight = style().isLeftToRightDirection() ^ flowThread->progressionIsReversed();
</span><span class="lines">@@ -617,7 +617,7 @@
</span><span class="cx"> LayoutUnit ruleTop = isHorizontalWritingMode() ? paintOffset.y() + borderTop() + paddingTop() : paintOffset.y() + ruleLogicalLeft - ruleThickness / 2 + ruleAdd;
</span><span class="cx"> LayoutUnit ruleBottom = isHorizontalWritingMode() ? ruleTop + contentHeight() : ruleTop + ruleThickness;
</span><span class="cx"> IntRect pixelSnappedRuleRect = snappedIntRect(ruleLeft, ruleTop, ruleRight - ruleLeft, ruleBottom - ruleTop);
</span><del>- drawLineForBoxSide(*paintInfo.context, pixelSnappedRuleRect, boxSide, ruleColor, ruleStyle, 0, 0, antialias);
</del><ins>+ drawLineForBoxSide(paintInfo.context(), pixelSnappedRuleRect, boxSide, ruleColor, ruleStyle, 0, 0, antialias);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> ruleLogicalLeft = currLogicalLeftOffset;
</span><span class="lines">@@ -648,7 +648,7 @@
</span><span class="cx"> for (unsigned i = 1; i < colCount; i++) {
</span><span class="cx"> ruleRect.move(step);
</span><span class="cx"> IntRect pixelSnappedRuleRect = snappedIntRect(ruleRect);
</span><del>- drawLineForBoxSide(*paintInfo.context, pixelSnappedRuleRect, boxSide, ruleColor, ruleStyle, 0, 0, antialias);
</del><ins>+ drawLineForBoxSide(paintInfo.context(), pixelSnappedRuleRect, boxSide, ruleColor, ruleStyle, 0, 0, antialias);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderObjectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderObject.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderObject.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderObject.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -721,7 +721,7 @@
</span><span class="cx"> const AtomicString& href = downcast<Element>(*node).getAttribute(hrefAttr);
</span><span class="cx"> if (href.isNull())
</span><span class="cx"> return;
</span><del>- paintInfo.context->setURLForRect(node->document().completeURL(href), snappedIntRect(urlRect));
</del><ins>+ paintInfo.context().setURLForRect(node->document().completeURL(href), snappedIntRect(urlRect));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> #if PLATFORM(IOS)
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderReplacedcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderReplaced.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderReplaced.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderReplaced.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -178,10 +178,10 @@
</span><span class="cx"> completelyClippedOut = true;
</span><span class="cx"> else {
</span><span class="cx"> // Push a clip if we have a border radius, since we want to round the foreground content that gets painted.
</span><del>- paintInfo.context->save();
</del><ins>+ paintInfo.context().save();
</ins><span class="cx"> FloatRoundedRect roundedInnerRect = FloatRoundedRect(style().getRoundedInnerBorderFor(paintRect,
</span><span class="cx"> paddingTop() + borderTop(), paddingBottom() + borderBottom(), paddingLeft() + borderLeft(), paddingRight() + borderRight(), true, true));
</span><del>- clipRoundedInnerRect(paintInfo.context, paintRect, roundedInnerRect);
</del><ins>+ clipRoundedInnerRect(paintInfo.context(), paintRect, roundedInnerRect);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -189,7 +189,7 @@
</span><span class="cx"> paintReplaced(paintInfo, adjustedPaintOffset);
</span><span class="cx">
</span><span class="cx"> if (style().hasBorderRadius())
</span><del>- paintInfo.context->restore();
</del><ins>+ paintInfo.context().restore();
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // The selection tint never gets clipped by border-radius rounding, since we want it to run right up to the edges of
</span><span class="lines">@@ -197,7 +197,7 @@
</span><span class="cx"> if (drawSelectionTint) {
</span><span class="cx"> LayoutRect selectionPaintingRect = localSelectionRect();
</span><span class="cx"> selectionPaintingRect.moveBy(adjustedPaintOffset);
</span><del>- paintInfo.context->fillRect(snappedIntRect(selectionPaintingRect), selectionBackgroundColor(), style().colorSpace());
</del><ins>+ paintInfo.context().fillRect(snappedIntRect(selectionPaintingRect), selectionBackgroundColor(), style().colorSpace());
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderReplicacpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderReplica.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderReplica.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderReplica.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -76,7 +76,7 @@
</span><span class="cx"> RenderLayer* rootPaintingLayer = layer()->transform() ? layer()->parent() : layer()->enclosingTransformedAncestor();
</span><span class="cx"> RenderLayer::LayerPaintingInfo paintingInfo(rootPaintingLayer, paintInfo.rect, PaintBehaviorNormal, LayoutSize(), 0);
</span><span class="cx"> RenderLayer::PaintLayerFlags flags = RenderLayer::PaintLayerHaveTransparency | RenderLayer::PaintLayerAppliedTransform | RenderLayer::PaintLayerTemporaryClipRects | RenderLayer::PaintLayerPaintingReflection;
</span><del>- layer()->parent()->paintLayer(paintInfo.context, paintingInfo, flags);
</del><ins>+ layer()->parent()->paintLayer(paintInfo.context(), paintingInfo, flags);
</ins><span class="cx"> } else if (paintInfo.phase == PaintPhaseMask)
</span><span class="cx"> paintMask(paintInfo, adjustedPaintOffset);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderScrollbarcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderScrollbar.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderScrollbar.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderScrollbar.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -102,9 +102,9 @@
</span><span class="cx"> updateScrollbarParts();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderScrollbar::paint(GraphicsContext* context, const IntRect& damageRect)
</del><ins>+void RenderScrollbar::paint(GraphicsContext& context, const IntRect& damageRect)
</ins><span class="cx"> {
</span><del>- if (context->updatingControlTints()) {
</del><ins>+ if (context.updatingControlTints()) {
</ins><span class="cx"> updateScrollbarParts();
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="lines">@@ -252,7 +252,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderScrollbar::paintPart(GraphicsContext* graphicsContext, ScrollbarPart partType, const IntRect& rect)
</del><ins>+void RenderScrollbar::paintPart(GraphicsContext& graphicsContext, ScrollbarPart partType, const IntRect& rect)
</ins><span class="cx"> {
</span><span class="cx"> RenderScrollbarPart* partRenderer = m_parts.get(partType);
</span><span class="cx"> if (!partRenderer)
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderScrollbarh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderScrollbar.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderScrollbar.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderScrollbar.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -47,7 +47,7 @@
</span><span class="cx">
</span><span class="cx"> RenderBox* owningRenderer() const;
</span><span class="cx">
</span><del>- void paintPart(GraphicsContext*, ScrollbarPart, const IntRect&);
</del><ins>+ void paintPart(GraphicsContext&, ScrollbarPart, const IntRect&);
</ins><span class="cx">
</span><span class="cx"> IntRect buttonRect(ScrollbarPart);
</span><span class="cx"> IntRect trackRect(int startLength, int endLength);
</span><span class="lines">@@ -67,7 +67,7 @@
</span><span class="cx"> virtual void setParent(ScrollView*) override;
</span><span class="cx"> virtual void setEnabled(bool) override;
</span><span class="cx">
</span><del>- virtual void paint(GraphicsContext*, const IntRect& damageRect) override;
</del><ins>+ virtual void paint(GraphicsContext&, const IntRect& damageRect) override;
</ins><span class="cx">
</span><span class="cx"> virtual void setHoveredPart(ScrollbarPart) override;
</span><span class="cx"> virtual void setPressedPart(ScrollbarPart) override;
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderScrollbarPartcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderScrollbarPart.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderScrollbarPart.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderScrollbarPart.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -155,23 +155,23 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderScrollbarPart::paintIntoRect(GraphicsContext* graphicsContext, const LayoutPoint& paintOffset, const LayoutRect& rect)
</del><ins>+void RenderScrollbarPart::paintIntoRect(GraphicsContext& graphicsContext, const LayoutPoint& paintOffset, const LayoutRect& rect)
</ins><span class="cx"> {
</span><span class="cx"> // Make sure our dimensions match the rect.
</span><span class="cx"> setLocation(rect.location() - toLayoutSize(paintOffset));
</span><span class="cx"> setWidth(rect.width());
</span><span class="cx"> setHeight(rect.height());
</span><span class="cx">
</span><del>- if (graphicsContext->paintingDisabled() || !style().opacity())
</del><ins>+ if (graphicsContext.paintingDisabled() || !style().opacity())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> // We don't use RenderLayers for scrollbar parts, so we need to handle opacity here.
</span><span class="cx"> // Opacity for ScrollbarBGPart is handled by RenderScrollbarTheme::willPaintScrollbar().
</span><span class="cx"> bool needsTransparencyLayer = m_part != ScrollbarBGPart && style().opacity() < 1;
</span><span class="cx"> if (needsTransparencyLayer) {
</span><del>- graphicsContext->save();
- graphicsContext->clip(rect);
- graphicsContext->beginTransparencyLayer(style().opacity());
</del><ins>+ graphicsContext.save();
+ graphicsContext.clip(rect);
+ graphicsContext.beginTransparencyLayer(style().opacity());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Now do the paint.
</span><span class="lines">@@ -187,8 +187,8 @@
</span><span class="cx"> paint(paintInfo, paintOffset);
</span><span class="cx">
</span><span class="cx"> if (needsTransparencyLayer) {
</span><del>- graphicsContext->endTransparencyLayer();
- graphicsContext->restore();
</del><ins>+ graphicsContext.endTransparencyLayer();
+ graphicsContext.restore();
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderScrollbarParth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderScrollbarPart.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderScrollbarPart.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderScrollbarPart.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -45,7 +45,7 @@
</span><span class="cx">
</span><span class="cx"> virtual void layout() override;
</span><span class="cx">
</span><del>- void paintIntoRect(GraphicsContext*, const LayoutPoint&, const LayoutRect&);
</del><ins>+ void paintIntoRect(GraphicsContext&, const LayoutPoint&, const LayoutRect&);
</ins><span class="cx">
</span><span class="cx"> // Scrollbar parts needs to be rendered at device pixel boundaries.
</span><span class="cx"> virtual LayoutUnit marginTop() const override { ASSERT(isIntegerValue(m_marginBox.top())); return m_marginBox.top(); }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderScrollbarThemecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderScrollbarTheme.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderScrollbarTheme.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderScrollbarTheme.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -125,35 +125,35 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderScrollbarTheme::paintScrollCorner(ScrollView*, GraphicsContext* context, const IntRect& cornerRect)
</del><ins>+void RenderScrollbarTheme::paintScrollCorner(ScrollView*, GraphicsContext& context, const IntRect& cornerRect)
</ins><span class="cx"> {
</span><span class="cx"> // FIXME: Implement.
</span><del>- context->fillRect(cornerRect, Color::white, ColorSpaceDeviceRGB);
</del><ins>+ context.fillRect(cornerRect, Color::white, ColorSpaceDeviceRGB);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderScrollbarTheme::paintScrollbarBackground(GraphicsContext& context, Scrollbar& scrollbar)
</span><span class="cx"> {
</span><del>- downcast<RenderScrollbar>(scrollbar).paintPart(&context, ScrollbarBGPart, scrollbar.frameRect());
</del><ins>+ downcast<RenderScrollbar>(scrollbar).paintPart(context, ScrollbarBGPart, scrollbar.frameRect());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderScrollbarTheme::paintTrackBackground(GraphicsContext& context, Scrollbar& scrollbar, const IntRect& rect)
</span><span class="cx"> {
</span><del>- downcast<RenderScrollbar>(scrollbar).paintPart(&context, TrackBGPart, rect);
</del><ins>+ downcast<RenderScrollbar>(scrollbar).paintPart(context, TrackBGPart, rect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderScrollbarTheme::paintTrackPiece(GraphicsContext& context, Scrollbar& scrollbar, const IntRect& rect, ScrollbarPart part)
</span><span class="cx"> {
</span><del>- downcast<RenderScrollbar>(scrollbar).paintPart(&context, part, rect);
</del><ins>+ downcast<RenderScrollbar>(scrollbar).paintPart(context, part, rect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderScrollbarTheme::paintButton(GraphicsContext& context, Scrollbar& scrollbar, const IntRect& rect, ScrollbarPart part)
</span><span class="cx"> {
</span><del>- downcast<RenderScrollbar>(scrollbar).paintPart(&context, part, rect);
</del><ins>+ downcast<RenderScrollbar>(scrollbar).paintPart(context, part, rect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderScrollbarTheme::paintThumb(GraphicsContext& context, Scrollbar& scrollbar, const IntRect& rect)
</span><span class="cx"> {
</span><del>- downcast<RenderScrollbar>(scrollbar).paintPart(&context, ThumbPart, rect);
</del><ins>+ downcast<RenderScrollbar>(scrollbar).paintPart(context, ThumbPart, rect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderScrollbarTheme::paintTickmarks(GraphicsContext& context, Scrollbar& scrollbar, const IntRect& rect)
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderScrollbarThemeh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderScrollbarTheme.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderScrollbarTheme.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderScrollbarTheme.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -44,7 +44,7 @@
</span><span class="cx">
</span><span class="cx"> virtual bool supportsControlTints() const override { return true; }
</span><span class="cx">
</span><del>- virtual void paintScrollCorner(ScrollView*, GraphicsContext*, const IntRect& cornerRect) override;
</del><ins>+ virtual void paintScrollCorner(ScrollView*, GraphicsContext&, const IntRect& cornerRect) override;
</ins><span class="cx">
</span><span class="cx"> virtual bool shouldCenterOnThumb(Scrollbar& scrollbar, const PlatformMouseEvent& event) override { return ScrollbarTheme::theme()->shouldCenterOnThumb(scrollbar, event); }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderSnapshottedPlugIncpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderSnapshottedPlugIn.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderSnapshottedPlugIn.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderSnapshottedPlugIn.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -124,7 +124,7 @@
</span><span class="cx"> if (!cWidth || !cHeight)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- GraphicsContext* context = paintInfo.context;
</del><ins>+ GraphicsContext& context = paintInfo.context();
</ins><span class="cx">
</span><span class="cx"> LayoutSize contentSize(cWidth, cHeight);
</span><span class="cx"> LayoutPoint contentLocation = location() + paintOffset;
</span><span class="lines">@@ -141,7 +141,7 @@
</span><span class="cx"> #if ENABLE(CSS_IMAGE_ORIENTATION)
</span><span class="cx"> orientationDescription.setImageOrientationEnum(style().imageOrientation());
</span><span class="cx"> #endif
</span><del>- context->drawImage(image, style().colorSpace(), alignedRect, ImagePaintingOptions(orientationDescription, useLowQualityScaling));
</del><ins>+ context.drawImage(image, style().colorSpace(), alignedRect, ImagePaintingOptions(orientationDescription, useLowQualityScaling));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> CursorDirective RenderSnapshottedPlugIn::getCursor(const LayoutPoint& point, Cursor& overrideCursor) const
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderTablecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderTable.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderTable.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderTable.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -749,7 +749,7 @@
</span><span class="cx"> LayoutRect rect(paintOffset, size());
</span><span class="cx"> subtractCaptionRect(rect);
</span><span class="cx">
</span><del>- BackgroundBleedAvoidance bleedAvoidance = determineBackgroundBleedAvoidance(paintInfo.context);
</del><ins>+ BackgroundBleedAvoidance bleedAvoidance = determineBackgroundBleedAvoidance(paintInfo.context());
</ins><span class="cx"> if (!boxShadowShouldBeAppliedToBackground(rect.location(), bleedAvoidance))
</span><span class="cx"> paintBoxShadow(paintInfo, rect, style(), Normal);
</span><span class="cx"> paintBackground(paintInfo, rect, bleedAvoidance);
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderTableCellcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderTableCell.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderTableCell.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderTableCell.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1201,8 +1201,8 @@
</span><span class="cx"> if (paintRect.maxY() + table()->outerBorderBottom() <= localRepaintRect.y())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- GraphicsContext* graphicsContext = paintInfo.context;
- if (!table()->currentBorderValue() || graphicsContext->paintingDisabled())
</del><ins>+ GraphicsContext& graphicsContext = paintInfo.context();
+ if (!table()->currentBorderValue() || graphicsContext.paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> const RenderStyle& styleForCellFlow = this->styleForCellFlow();
</span><span class="lines">@@ -1244,7 +1244,7 @@
</span><span class="cx">
</span><span class="cx"> for (CollapsedBorder* border = borders.nextBorder(); border; border = borders.nextBorder()) {
</span><span class="cx"> if (border->borderValue.isSameIgnoringColor(*table()->currentBorderValue()))
</span><del>- drawLineForBoxSide(*graphicsContext, FloatRect(FloatPoint(border->x1, border->y1), FloatPoint(border->x2, border->y2)), border->side,
</del><ins>+ drawLineForBoxSide(graphicsContext, FloatRect(FloatPoint(border->x1, border->y1), FloatPoint(border->x2, border->y2)), border->side,
</ins><span class="cx"> border->borderValue.color(), border->style, 0, 0, antialias);
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -1275,11 +1275,11 @@
</span><span class="cx"> // We have to clip here because the background would paint
</span><span class="cx"> // on top of the borders otherwise. This only matters for cells and rows.
</span><span class="cx"> bool shouldClip = backgroundObject->hasLayer() && (backgroundObject == this || backgroundObject == parent()) && tableElt->collapseBorders();
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context, shouldClip);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context(), shouldClip);
</ins><span class="cx"> if (shouldClip) {
</span><span class="cx"> LayoutRect clipRect(adjustedPaintOffset.x() + borderLeft(), adjustedPaintOffset.y() + borderTop(),
</span><span class="cx"> width() - borderLeft() - borderRight(), height() - borderTop() - borderBottom());
</span><del>- paintInfo.context->clip(clipRect);
</del><ins>+ paintInfo.context().clip(clipRect);
</ins><span class="cx"> }
</span><span class="cx"> paintFillLayers(paintInfo, c, bgLayer, LayoutRect(adjustedPaintOffset, snappedIntRect(frameRect()).size()), BackgroundBleedNone, CompositeSourceOver, backgroundObject);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderTableSectioncpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderTableSection.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderTableSection.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderTableSection.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1120,7 +1120,7 @@
</span><span class="cx"> rect.intersect(paintInfo.rect);
</span><span class="cx"> if (rect.isEmpty())
</span><span class="cx"> return;
</span><del>- drawLineForBoxSide(*paintInfo.context, rect, side, style().visitedDependentColor(borderColor), borderStyle, 0, 0, antialias);
</del><ins>+ drawLineForBoxSide(paintInfo.context(), rect, side, style().visitedDependentColor(borderColor), borderStyle, 0, 0, antialias);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> int RenderTableSection::offsetLeftForRowGroupBorder(RenderTableCell* cell, const LayoutRect& rowGroupRect, unsigned row)
</span><span class="lines">@@ -1169,11 +1169,11 @@
</span><span class="cx"> {
</span><span class="cx"> if (table()->currentBorderValue()->precedence() > BROWGROUP)
</span><span class="cx"> return;
</span><del>- if (paintInfo.context->paintingDisabled())
</del><ins>+ if (paintInfo.context().paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> const RenderStyle& style = this->style();
</span><del>- bool antialias = shouldAntialiasLines(paintInfo.context);
</del><ins>+ bool antialias = shouldAntialiasLines(paintInfo.context());
</ins><span class="cx"> LayoutRect rowGroupRect = LayoutRect(paintOffset, size());
</span><span class="cx"> rowGroupRect.moveBy(-LayoutPoint(outerBorderLeft(&style), (borderSide == BSRight) ? 0 : outerBorderTop(&style)));
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderThemecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderTheme.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderTheme.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderTheme.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -267,12 +267,12 @@
</span><span class="cx"> // If painting is disabled, but we aren't updating control tints, then just bail.
</span><span class="cx"> // If we are updating control tints, just schedule a repaint if the theme supports tinting
</span><span class="cx"> // for that control.
</span><del>- if (paintInfo.context->updatingControlTints()) {
</del><ins>+ if (paintInfo.context().updatingControlTints()) {
</ins><span class="cx"> if (controlSupportsTints(box))
</span><span class="cx"> box.repaint();
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><del>- if (paintInfo.context->paintingDisabled())
</del><ins>+ if (paintInfo.context().paintingDisabled())
</ins><span class="cx"> return false;
</span><span class="cx">
</span><span class="cx"> ControlPart part = box.style().appearance();
</span><span class="lines">@@ -292,7 +292,7 @@
</span><span class="cx"> case ButtonPart:
</span><span class="cx"> case InnerSpinButtonPart:
</span><span class="cx"> updateControlStatesForRenderer(box, controlStates);
</span><del>- m_theme->paint(part, controlStates, const_cast<GraphicsContext*>(paintInfo.context), devicePixelSnappedRect, box.style().effectiveZoom(), &box.view().frameView(), deviceScaleFactor, pageScaleFactor);
</del><ins>+ m_theme->paint(part, controlStates, paintInfo.context(), devicePixelSnappedRect, box.style().effectiveZoom(), &box.view().frameView(), deviceScaleFactor, pageScaleFactor);
</ins><span class="cx"> return false;
</span><span class="cx"> default:
</span><span class="cx"> break;
</span><span class="lines">@@ -411,7 +411,7 @@
</span><span class="cx">
</span><span class="cx"> bool RenderTheme::paintBorderOnly(const RenderBox& box, const PaintInfo& paintInfo, const LayoutRect& rect)
</span><span class="cx"> {
</span><del>- if (paintInfo.context->paintingDisabled())
</del><ins>+ if (paintInfo.context().paintingDisabled())
</ins><span class="cx"> return false;
</span><span class="cx">
</span><span class="cx"> #if PLATFORM(IOS)
</span><span class="lines">@@ -465,7 +465,7 @@
</span><span class="cx">
</span><span class="cx"> bool RenderTheme::paintDecorations(const RenderBox& box, const PaintInfo& paintInfo, const LayoutRect& rect)
</span><span class="cx"> {
</span><del>- if (paintInfo.context->paintingDisabled())
</del><ins>+ if (paintInfo.context().paintingDisabled())
</ins><span class="cx"> return false;
</span><span class="cx">
</span><span class="cx"> IntRect integralSnappedRect = snappedIntRect(rect);
</span><span class="lines">@@ -1053,8 +1053,8 @@
</span><span class="cx"> tickRegionWidth = trackBounds.height() - thumbSize.width();
</span><span class="cx"> }
</span><span class="cx"> Ref<HTMLCollection> options = dataList->options();
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
- paintInfo.context->setFillColor(o.style().visitedDependentColor(CSSPropertyColor), ColorSpaceDeviceRGB);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
+ paintInfo.context().setFillColor(o.style().visitedDependentColor(CSSPropertyColor), ColorSpaceDeviceRGB);
</ins><span class="cx"> for (unsigned i = 0; Node* node = options->item(i); i++) {
</span><span class="cx"> ASSERT(is<HTMLOptionElement>(*node));
</span><span class="cx"> HTMLOptionElement& optionElement = downcast<HTMLOptionElement>(*node);
</span><span class="lines">@@ -1069,7 +1069,7 @@
</span><span class="cx"> tickRect.setX(tickPosition);
</span><span class="cx"> else
</span><span class="cx"> tickRect.setY(tickPosition);
</span><del>- paintInfo.context->fillRect(tickRect);
</del><ins>+ paintInfo.context().fillRect(tickRect);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderThemeEflcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderThemeEfl.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderThemeEfl.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderThemeEfl.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -376,7 +376,7 @@
</span><span class="cx"> edje_object_message_signal_process(entry->edje());
</span><span class="cx"> evas_render(ecore_evas_get(entry->canvas()));
</span><span class="cx">
</span><del>- cairo_t* cairo = info.context->platformContext()->cr();
</del><ins>+ cairo_t* cairo = info.context().platformContext()->cr();
</ins><span class="cx"> ASSERT(cairo);
</span><span class="cx">
</span><span class="cx"> cairo_save(cairo);
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderThemeGtkcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderThemeGtk.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderThemeGtk.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderThemeGtk.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -526,16 +526,16 @@
</span><span class="cx"> gtk_style_context_set_state(context, static_cast<GtkStateFlags>(flags));
</span><span class="cx">
</span><span class="cx"> if (widgetType == GTK_TYPE_CHECK_BUTTON)
</span><del>- gtk_render_check(context, paintInfo.context->platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
</del><ins>+ gtk_render_check(context, paintInfo.context().platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
</ins><span class="cx"> else
</span><del>- gtk_render_option(context, paintInfo.context->platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
</del><ins>+ gtk_render_option(context, paintInfo.context().platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
</ins><span class="cx">
</span><span class="cx"> if (theme->isFocused(renderObject)) {
</span><span class="cx"> IntRect indicatorRect(rect);
</span><span class="cx"> gint indicatorSpacing;
</span><span class="cx"> gtk_style_context_get_style(context, "indicator-spacing", &indicatorSpacing, nullptr);
</span><span class="cx"> indicatorRect.inflate(indicatorSpacing);
</span><del>- gtk_render_focus(context, paintInfo.context->platformContext()->cr(), indicatorRect.x(), indicatorRect.y(),
</del><ins>+ gtk_render_focus(context, paintInfo.context().platformContext()->cr(), indicatorRect.x(), indicatorRect.y(),
</ins><span class="cx"> indicatorRect.width(), indicatorRect.height());
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -594,8 +594,8 @@
</span><span class="cx"> gtk_style_context_add_class(context, GTK_STYLE_CLASS_DEFAULT);
</span><span class="cx"> }
</span><span class="cx">
</span><del>- gtk_render_background(context, paintInfo.context->platformContext()->cr(), buttonRect.x(), buttonRect.y(), buttonRect.width(), buttonRect.height());
- gtk_render_frame(context, paintInfo.context->platformContext()->cr(), buttonRect.x(), buttonRect.y(), buttonRect.width(), buttonRect.height());
</del><ins>+ gtk_render_background(context, paintInfo.context().platformContext()->cr(), buttonRect.x(), buttonRect.y(), buttonRect.width(), buttonRect.height());
+ gtk_render_frame(context, paintInfo.context().platformContext()->cr(), buttonRect.x(), buttonRect.y(), buttonRect.width(), buttonRect.height());
</ins><span class="cx">
</span><span class="cx"> if (theme->isFocused(renderObject)) {
</span><span class="cx"> gint focusWidth, focusPad;
</span><span class="lines">@@ -627,7 +627,7 @@
</span><span class="cx"> buttonRect.move(childDisplacementX, childDisplacementY);
</span><span class="cx"> }
</span><span class="cx">
</span><del>- gtk_render_focus(context, paintInfo.context->platformContext()->cr(), buttonRect.x(), buttonRect.y(), buttonRect.width(), buttonRect.height());
</del><ins>+ gtk_render_focus(context, paintInfo.context().platformContext()->cr(), buttonRect.x(), buttonRect.y(), buttonRect.width(), buttonRect.height());
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx"> bool RenderThemeGtk::paintButton(const RenderObject& renderObject, const PaintInfo& paintInfo, const IntRect& rect)
</span><span class="lines">@@ -744,7 +744,7 @@
</span><span class="cx"> // FIXME: adopt subpixel themes.
</span><span class="cx"> IntRect rect = IntRect(r);
</span><span class="cx">
</span><del>- cairo_t* cairoContext = paintInfo.context->platformContext()->cr();
</del><ins>+ cairo_t* cairoContext = paintInfo.context().platformContext()->cr();
</ins><span class="cx"> GtkTextDirection direction = static_cast<GtkTextDirection>(gtkTextDirection(renderObject.style().direction()));
</span><span class="cx">
</span><span class="cx"> // Paint the button.
</span><span class="lines">@@ -880,8 +880,8 @@
</span><span class="cx"> flags |= GTK_STATE_FLAG_FOCUSED;
</span><span class="cx"> gtk_style_context_set_state(context, static_cast<GtkStateFlags>(flags));
</span><span class="cx">
</span><del>- gtk_render_background(context, paintInfo.context->platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
- gtk_render_frame(context, paintInfo.context->platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
</del><ins>+ gtk_render_background(context, paintInfo.context().platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
+ gtk_render_frame(context, paintInfo.context().platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
</ins><span class="cx">
</span><span class="cx"> if (isFocused(renderObject) && isEnabled(renderObject)) {
</span><span class="cx"> gboolean interiorFocus;
</span><span class="lines">@@ -890,7 +890,7 @@
</span><span class="cx"> if (!interiorFocus) {
</span><span class="cx"> IntRect focusRect(rect);
</span><span class="cx"> focusRect.inflate(focusWidth + focusPad);
</span><del>- gtk_render_focus(context, paintInfo.context->platformContext()->cr(), focusRect.x(), focusRect.y(), focusRect.width(), focusRect.height());
</del><ins>+ gtk_render_focus(context, paintInfo.context().platformContext()->cr(), focusRect.x(), focusRect.y(), focusRect.width(), focusRect.height());
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -904,7 +904,7 @@
</span><span class="cx"> return paintTextField(o, i, r);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static void paintGdkPixbuf(GraphicsContext* context, const GdkPixbuf* icon, const IntRect& iconRect)
</del><ins>+static void paintGdkPixbuf(GraphicsContext& context, const GdkPixbuf* icon, const IntRect& iconRect)
</ins><span class="cx"> {
</span><span class="cx"> IntSize iconSize(gdk_pixbuf_get_width(icon), gdk_pixbuf_get_height(icon));
</span><span class="cx"> GRefPtr<GdkPixbuf> scaledIcon;
</span><span class="lines">@@ -914,7 +914,7 @@
</span><span class="cx"> icon = scaledIcon.get();
</span><span class="cx"> }
</span><span class="cx">
</span><del>- cairo_t* cr = context->platformContext()->cr();
</del><ins>+ cairo_t* cr = context.platformContext()->cr();
</ins><span class="cx"> cairo_save(cr);
</span><span class="cx"> gdk_cairo_set_source_pixbuf(cr, icon, iconRect.x(), iconRect.y());
</span><span class="cx"> cairo_paint(cr);
</span><span class="lines">@@ -1008,7 +1008,7 @@
</span><span class="cx"> gtkTextDirection(renderObject.style().direction()),
</span><span class="cx"> gtkIconState(this, renderObject),
</span><span class="cx"> getIconSizeForPixelSize(rect.height()));
</span><del>- paintGdkPixbuf(paintInfo.context, icon.get(), iconRect);
</del><ins>+ paintGdkPixbuf(paintInfo.context(), icon.get(), iconRect);
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1027,7 +1027,7 @@
</span><span class="cx"> gtkTextDirection(renderObject.style().direction()),
</span><span class="cx"> gtkIconState(this, renderObject),
</span><span class="cx"> getIconSizeForPixelSize(rect.height()));
</span><del>- paintGdkPixbuf(paintInfo.context, icon.get(), iconRect);
</del><ins>+ paintGdkPixbuf(paintInfo.context(), icon.get(), iconRect);
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1047,7 +1047,7 @@
</span><span class="cx"> {
</span><span class="cx"> // The other paint methods don't need to check whether painting is disabled because RenderTheme already checks it
</span><span class="cx"> // before calling them, but paintCapsLockIndicator() is called by RenderTextControlSingleLine which doesn't check it.
</span><del>- if (paintInfo.context->paintingDisabled())
</del><ins>+ if (paintInfo.context().paintingDisabled())
</ins><span class="cx"> return true;
</span><span class="cx">
</span><span class="cx"> int iconSize = std::min(rect.width(), rect.height());
</span><span class="lines">@@ -1063,7 +1063,7 @@
</span><span class="cx"> rect.x() + rect.width() - iconSize,
</span><span class="cx"> rect.y() + (rect.height() - iconSize) / 2,
</span><span class="cx"> iconSize, iconSize);
</span><del>- paintGdkPixbuf(paintInfo.context, icon.get(), iconRect);
</del><ins>+ paintGdkPixbuf(paintInfo.context(), icon.get(), iconRect);
</ins><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1102,15 +1102,15 @@
</span><span class="cx"> if (!isEnabled(renderObject))
</span><span class="cx"> gtk_style_context_set_state(context, GTK_STATE_FLAG_INSENSITIVE);
</span><span class="cx">
</span><del>- gtk_render_background(context, paintInfo.context->platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
- gtk_render_frame(context, paintInfo.context->platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
</del><ins>+ gtk_render_background(context, paintInfo.context().platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
+ gtk_render_frame(context, paintInfo.context().platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
</ins><span class="cx">
</span><span class="cx"> if (isFocused(renderObject)) {
</span><span class="cx"> gint focusWidth, focusPad;
</span><span class="cx"> gtk_style_context_get_style(context, "focus-line-width", &focusWidth, "focus-padding", &focusPad, nullptr);
</span><span class="cx"> IntRect focusRect(rect);
</span><span class="cx"> focusRect.inflate(focusWidth + focusPad);
</span><del>- gtk_render_focus(context, paintInfo.context->platformContext()->cr(), focusRect.x(), focusRect.y(), focusRect.width(), focusRect.height());
</del><ins>+ gtk_render_focus(context, paintInfo.context().platformContext()->cr(), focusRect.x(), focusRect.y(), focusRect.width(), focusRect.height());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> gtk_style_context_restore(context);
</span><span class="lines">@@ -1138,7 +1138,7 @@
</span><span class="cx"> flags |= GTK_STATE_FLAG_ACTIVE;
</span><span class="cx"> gtk_style_context_set_state(context, static_cast<GtkStateFlags>(flags));
</span><span class="cx">
</span><del>- gtk_render_slider(context, paintInfo.context->platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height(),
</del><ins>+ gtk_render_slider(context, paintInfo.context().platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height(),
</ins><span class="cx"> part == SliderThumbHorizontalPart ? GTK_ORIENTATION_HORIZONTAL : GTK_ORIENTATION_VERTICAL);
</span><span class="cx">
</span><span class="cx"> gtk_style_context_restore(context);
</span><span class="lines">@@ -1174,8 +1174,8 @@
</span><span class="cx">
</span><span class="cx"> gtk_style_context_add_class(context, GTK_STYLE_CLASS_TROUGH);
</span><span class="cx">
</span><del>- gtk_render_background(context, paintInfo.context->platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
- gtk_render_frame(context, paintInfo.context->platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
</del><ins>+ gtk_render_background(context, paintInfo.context().platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
+ gtk_render_frame(context, paintInfo.context().platformContext()->cr(), rect.x(), rect.y(), rect.width(), rect.height());
</ins><span class="cx">
</span><span class="cx"> gtk_style_context_restore(context);
</span><span class="cx">
</span><span class="lines">@@ -1193,7 +1193,7 @@
</span><span class="cx"> progressRect = RenderThemeGtk::calculateProgressRect(renderObject, progressRect);
</span><span class="cx">
</span><span class="cx"> if (!progressRect.isEmpty())
</span><del>- gtk_render_activity(context, paintInfo.context->platformContext()->cr(), progressRect.x(), progressRect.y(), progressRect.width(), progressRect.height());
</del><ins>+ gtk_render_activity(context, paintInfo.context().platformContext()->cr(), progressRect.x(), progressRect.y(), progressRect.width(), progressRect.height());
</ins><span class="cx">
</span><span class="cx"> gtk_style_context_restore(context);
</span><span class="cx"> return false;
</span><span class="lines">@@ -1256,8 +1256,8 @@
</span><span class="cx"> buttonRect.setHeight(rect.height() / 2);
</span><span class="cx"> gtk_style_context_set_junction_sides(context, static_cast<GtkJunctionSides>(junction));
</span><span class="cx">
</span><del>- gtk_render_background(context, paintInfo.context->platformContext()->cr(), buttonRect.x(), buttonRect.y(), buttonRect.width(), buttonRect.height());
- gtk_render_frame(context, paintInfo.context->platformContext()->cr(), buttonRect.x(), buttonRect.y(), buttonRect.width(), buttonRect.height());
</del><ins>+ gtk_render_background(context, paintInfo.context().platformContext()->cr(), buttonRect.x(), buttonRect.y(), buttonRect.width(), buttonRect.height());
+ gtk_render_frame(context, paintInfo.context().platformContext()->cr(), buttonRect.x(), buttonRect.y(), buttonRect.width(), buttonRect.height());
</ins><span class="cx">
</span><span class="cx"> // Paint arrow centered inside button.
</span><span class="cx"> // This code is based on gtkspinbutton.c code.
</span><span class="lines">@@ -1283,7 +1283,7 @@
</span><span class="cx"> gint height = (width + 1) / 2;
</span><span class="cx">
</span><span class="cx"> arrowRect.move((arrowRect.width() - width) / 2, (arrowRect.height() - height) / 2);
</span><del>- gtk_render_arrow(context, paintInfo.context->platformContext()->cr(), angle, arrowRect.x(), arrowRect.y(), width);
</del><ins>+ gtk_render_arrow(context, paintInfo.context().platformContext()->cr(), angle, arrowRect.x(), arrowRect.y(), width);
</ins><span class="cx">
</span><span class="cx"> gtk_style_context_restore(context);
</span><span class="cx"> }
</span><span class="lines">@@ -1417,7 +1417,7 @@
</span><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>-bool RenderThemeGtk::paintMediaButton(const RenderObject& renderObject, GraphicsContext* context, const IntRect& rect, const char* symbolicIconName, const char* fallbackStockIconName)
</del><ins>+bool RenderThemeGtk::paintMediaButton(const RenderObject& renderObject, GraphicsContext& context, const IntRect& rect, const char* symbolicIconName, const char* fallbackStockIconName)
</ins><span class="cx"> {
</span><span class="cx"> IntRect iconRect(
</span><span class="cx"> rect.x() + (rect.width() - m_mediaIconSize) / 2,
</span><span class="lines">@@ -1436,7 +1436,7 @@
</span><span class="cx">
</span><span class="cx"> bool RenderThemeGtk::paintMediaFullscreenButton(const RenderObject& renderObject, const PaintInfo& paintInfo, const IntRect& rect)
</span><span class="cx"> {
</span><del>- return paintMediaButton(renderObject, paintInfo.context, rect, "view-fullscreen-symbolic", GTK_STOCK_FULLSCREEN);
</del><ins>+ return paintMediaButton(renderObject, paintInfo.context(), rect, "view-fullscreen-symbolic", GTK_STOCK_FULLSCREEN);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool RenderThemeGtk::paintMediaMuteButton(const RenderObject& renderObject, const PaintInfo& paintInfo, const IntRect& rect)
</span><span class="lines">@@ -1446,7 +1446,7 @@
</span><span class="cx"> return false;
</span><span class="cx">
</span><span class="cx"> bool muted = mediaElement->muted();
</span><del>- return paintMediaButton(renderObject, paintInfo.context, rect,
</del><ins>+ return paintMediaButton(renderObject, paintInfo.context(), rect,
</ins><span class="cx"> muted ? "audio-volume-muted-symbolic" : "audio-volume-high-symbolic",
</span><span class="cx"> muted ? "audio-volume-muted" : "audio-volume-high");
</span><span class="cx"> }
</span><span class="lines">@@ -1461,19 +1461,19 @@
</span><span class="cx"> return false;
</span><span class="cx"> bool showPlayButton = nodeHasClass(node, "paused");
</span><span class="cx">
</span><del>- return paintMediaButton(renderObject, paintInfo.context, rect,
</del><ins>+ return paintMediaButton(renderObject, paintInfo.context(), rect,
</ins><span class="cx"> showPlayButton ? "media-playback-start-symbolic" : "media-playback-pause-symbolic",
</span><span class="cx"> showPlayButton ? GTK_STOCK_MEDIA_PLAY : GTK_STOCK_MEDIA_PAUSE);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool RenderThemeGtk::paintMediaSeekBackButton(const RenderObject& renderObject, const PaintInfo& paintInfo, const IntRect& rect)
</span><span class="cx"> {
</span><del>- return paintMediaButton(renderObject, paintInfo.context, rect, "media-seek-backward-symbolic", GTK_STOCK_MEDIA_REWIND);
</del><ins>+ return paintMediaButton(renderObject, paintInfo.context(), rect, "media-seek-backward-symbolic", GTK_STOCK_MEDIA_REWIND);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool RenderThemeGtk::paintMediaSeekForwardButton(const RenderObject& renderObject, const PaintInfo& paintInfo, const IntRect& rect)
</span><span class="cx"> {
</span><del>- return paintMediaButton(renderObject, paintInfo.context, rect, "media-seek-forward-symbolic", GTK_STOCK_MEDIA_FORWARD);
</del><ins>+ return paintMediaButton(renderObject, paintInfo.context(), rect, "media-seek-forward-symbolic", GTK_STOCK_MEDIA_FORWARD);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> #if ENABLE(VIDEO_TRACK)
</span><span class="lines">@@ -1487,7 +1487,7 @@
</span><span class="cx"> icon = getStockSymbolicIconForWidgetType(GTK_TYPE_CONTAINER, "user-invisible-symbolic", GTK_STOCK_JUSTIFY_FILL,
</span><span class="cx"> gtkTextDirection(renderObject.style().direction()), gtkIconState(this, renderObject), iconRect.width());
</span><span class="cx"> }
</span><del>- paintGdkPixbuf(paintInfo.context, icon.get(), iconRect);
</del><ins>+ paintGdkPixbuf(paintInfo.context(), icon.get(), iconRect);
</ins><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="lines">@@ -1507,9 +1507,9 @@
</span><span class="cx"> if (!mediaElement)
</span><span class="cx"> return false;
</span><span class="cx">
</span><del>- GraphicsContext* context = paintInfo.context;
- context->save();
- context->setStrokeStyle(NoStroke);
</del><ins>+ GraphicsContext& context = paintInfo.context();
+ context.save();
+ context.setStrokeStyle(NoStroke);
</ins><span class="cx">
</span><span class="cx"> float mediaDuration = mediaElement->duration();
</span><span class="cx"> float totalTrackWidth = r.width();
</span><span class="lines">@@ -1527,17 +1527,17 @@
</span><span class="cx"> rangeRect.setWidth(lengthRatio * totalTrackWidth);
</span><span class="cx"> if (index)
</span><span class="cx"> rangeRect.move(startRatio * totalTrackWidth, 0);
</span><del>- context->fillRoundedRect(FloatRoundedRect(rangeRect, borderRadiiFromStyle(style)), style.visitedDependentColor(CSSPropertyColor), style.colorSpace());
</del><ins>+ context.fillRoundedRect(FloatRoundedRect(rangeRect, borderRadiiFromStyle(style)), style.visitedDependentColor(CSSPropertyColor), style.colorSpace());
</ins><span class="cx"> }
</span><span class="cx">
</span><del>- context->restore();
</del><ins>+ context.restore();
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool RenderThemeGtk::paintMediaSliderThumb(const RenderObject& o, const PaintInfo& paintInfo, const IntRect& r)
</span><span class="cx"> {
</span><span class="cx"> RenderStyle& style = o.style();
</span><del>- paintInfo.context->fillRoundedRect(FloatRoundedRect(r, borderRadiiFromStyle(style)), style.visitedDependentColor(CSSPropertyColor), style.colorSpace());
</del><ins>+ paintInfo.context().fillRoundedRect(FloatRoundedRect(r, borderRadiiFromStyle(style)), style.visitedDependentColor(CSSPropertyColor), style.colorSpace());
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1556,9 +1556,9 @@
</span><span class="cx"> if (!volume)
</span><span class="cx"> return true;
</span><span class="cx">
</span><del>- GraphicsContext* context = paintInfo.context;
- context->save();
- context->setStrokeStyle(NoStroke);
</del><ins>+ GraphicsContext& context = paintInfo.context();
+ context.save();
+ context.setStrokeStyle(NoStroke);
</ins><span class="cx">
</span><span class="cx"> int rectHeight = rect.height();
</span><span class="cx"> float trackHeight = rectHeight * volume;
</span><span class="lines">@@ -1567,9 +1567,9 @@
</span><span class="cx"> volumeRect.move(0, rectHeight - trackHeight);
</span><span class="cx"> volumeRect.setHeight(ceil(trackHeight));
</span><span class="cx">
</span><del>- context->fillRoundedRect(FloatRoundedRect(volumeRect, borderRadiiFromStyle(style)),
</del><ins>+ context.fillRoundedRect(FloatRoundedRect(volumeRect, borderRadiiFromStyle(style)),
</ins><span class="cx"> style.visitedDependentColor(CSSPropertyColor), style.colorSpace());
</span><del>- context->restore();
</del><ins>+ context.restore();
</ins><span class="cx">
</span><span class="cx"> return false;
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderThemeGtkh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderThemeGtk.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderThemeGtk.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderThemeGtk.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -187,7 +187,7 @@
</span><span class="cx"> static void setTextInputBorders(RenderStyle&);
</span><span class="cx">
</span><span class="cx"> #if ENABLE(VIDEO)
</span><del>- bool paintMediaButton(const RenderObject&, GraphicsContext*, const IntRect&, const char* symbolicIconName, const char* fallbackStockIconName);
</del><ins>+ bool paintMediaButton(const RenderObject&, GraphicsContext&, const IntRect&, const char* symbolicIconName, const char* fallbackStockIconName);
</ins><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> static IntRect calculateProgressRect(const RenderObject&, const IntRect&);
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderThemeIOSh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderThemeIOS.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderThemeIOS.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderThemeIOS.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -115,7 +115,7 @@
</span><span class="cx"> virtual ~RenderThemeIOS() { }
</span><span class="cx">
</span><span class="cx"> const Color& shadowColor() const;
</span><del>- FloatRect addRoundedBorderClip(const RenderObject& box, GraphicsContext*, const IntRect&);
</del><ins>+ FloatRect addRoundedBorderClip(const RenderObject& box, GraphicsContext&, const IntRect&);
</ins><span class="cx">
</span><span class="cx"> virtual Color systemColor(CSSValueID) const override;
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderThemeIOSmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderThemeIOS.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderThemeIOS.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderThemeIOS.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -324,7 +324,7 @@
</span><span class="cx"> return color;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-FloatRect RenderThemeIOS::addRoundedBorderClip(const RenderObject& box, GraphicsContext* context, const IntRect& rect)
</del><ins>+FloatRect RenderThemeIOS::addRoundedBorderClip(const RenderObject& box, GraphicsContext& context, const IntRect& rect)
</ins><span class="cx"> {
</span><span class="cx"> // To fix inner border bleeding issues <rdar://problem/9812507>, we clip to the outer border and assert that
</span><span class="cx"> // the border is opaque or transparent, unless we're checked because checked radio/checkboxes show no bleeding.
</span><span class="lines">@@ -332,9 +332,9 @@
</span><span class="cx"> RoundedRect border = isChecked(box) ? style.getRoundedInnerBorderFor(rect) : style.getRoundedBorderFor(rect);
</span><span class="cx">
</span><span class="cx"> if (border.isRounded())
</span><del>- context->clipRoundedRect(FloatRoundedRect(border));
</del><ins>+ context.clipRoundedRect(FloatRoundedRect(border));
</ins><span class="cx"> else
</span><del>- context->clip(border.rect());
</del><ins>+ context.clip(border.rect());
</ins><span class="cx">
</span><span class="cx"> if (isChecked(box)) {
</span><span class="cx"> ASSERT(style.visitedDependentColor(CSSPropertyBorderTopColor).alpha() % 255 == 0);
</span><span class="lines">@@ -367,13 +367,13 @@
</span><span class="cx">
</span><span class="cx"> bool RenderThemeIOS::paintCheckboxDecorations(const RenderObject& box, const PaintInfo& paintInfo, const IntRect& rect)
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
- FloatRect clip = addRoundedBorderClip(box, paintInfo.context, rect);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
+ FloatRect clip = addRoundedBorderClip(box, paintInfo.context(), rect);
</ins><span class="cx">
</span><span class="cx"> float width = clip.width();
</span><span class="cx"> float height = clip.height();
</span><span class="cx">
</span><del>- CGContextRef cgContext = paintInfo.context->platformContext();
</del><ins>+ CGContextRef cgContext = paintInfo.context().platformContext();
</ins><span class="cx"> if (isChecked(box)) {
</span><span class="cx"> drawAxialGradient(cgContext, gradientWithName(ConcaveGradient), clip.location(), FloatPoint(clip.x(), clip.maxY()), LinearInterpolation);
</span><span class="cx">
</span><span class="lines">@@ -398,15 +398,15 @@
</span><span class="cx"> shortened(line[2], line[1], lineWidth / 4.0f)
</span><span class="cx"> };
</span><span class="cx">
</span><del>- paintInfo.context->setStrokeThickness(lineWidth);
- paintInfo.context->setStrokeColor(Color(0.0f, 0.0f, 0.0f, 0.7f), ColorSpaceDeviceRGB);
</del><ins>+ paintInfo.context().setStrokeThickness(lineWidth);
+ paintInfo.context().setStrokeColor(Color(0.0f, 0.0f, 0.0f, 0.7f), ColorSpaceDeviceRGB);
</ins><span class="cx">
</span><del>- paintInfo.context->drawJoinedLines(shadow, 3, true, kCGLineCapSquare);
</del><ins>+ paintInfo.context().drawJoinedLines(shadow, 3, true, kCGLineCapSquare);
</ins><span class="cx">
</span><del>- paintInfo.context->setStrokeThickness(std::min(clip.width(), clip.height()) * thicknessRatio);
- paintInfo.context->setStrokeColor(Color(1.0f, 1.0f, 1.0f, 240 / 255.0f), ColorSpaceDeviceRGB);
</del><ins>+ paintInfo.context().setStrokeThickness(std::min(clip.width(), clip.height()) * thicknessRatio);
+ paintInfo.context().setStrokeColor(Color(1.0f, 1.0f, 1.0f, 240 / 255.0f), ColorSpaceDeviceRGB);
</ins><span class="cx">
</span><del>- paintInfo.context->drawJoinedLines(line, 3, true);
</del><ins>+ paintInfo.context().drawJoinedLines(line, 3, true);
</ins><span class="cx"> } else {
</span><span class="cx"> FloatPoint bottomCenter(clip.x() + clip.width() / 2.0f, clip.maxY());
</span><span class="cx"> drawAxialGradient(cgContext, gradientWithName(ShadeGradient), clip.location(), FloatPoint(clip.x(), clip.maxY()), LinearInterpolation);
</span><span class="lines">@@ -450,10 +450,10 @@
</span><span class="cx">
</span><span class="cx"> bool RenderThemeIOS::paintRadioDecorations(const RenderObject& box, const PaintInfo& paintInfo, const IntRect& rect)
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
- FloatRect clip = addRoundedBorderClip(box, paintInfo.context, rect);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
+ FloatRect clip = addRoundedBorderClip(box, paintInfo.context(), rect);
</ins><span class="cx">
</span><del>- CGContextRef cgContext = paintInfo.context->platformContext();
</del><ins>+ CGContextRef cgContext = paintInfo.context().platformContext();
</ins><span class="cx"> if (isChecked(box)) {
</span><span class="cx"> drawAxialGradient(cgContext, gradientWithName(ConcaveGradient), clip.location(), FloatPoint(clip.x(), clip.maxY()), LinearInterpolation);
</span><span class="cx">
</span><span class="lines">@@ -465,10 +465,10 @@
</span><span class="cx"> clip.inflateX(-clip.width() * InnerInverseRatio);
</span><span class="cx"> clip.inflateY(-clip.height() * InnerInverseRatio);
</span><span class="cx">
</span><del>- paintInfo.context->drawRaisedEllipse(clip, Color::white, ColorSpaceDeviceRGB, shadowColor(), ColorSpaceDeviceRGB);
</del><ins>+ paintInfo.context().drawRaisedEllipse(clip, Color::white, ColorSpaceDeviceRGB, shadowColor(), ColorSpaceDeviceRGB);
</ins><span class="cx">
</span><span class="cx"> FloatSize radius(clip.width() / 2.0f, clip.height() / 2.0f);
</span><del>- paintInfo.context->clipRoundedRect(FloatRoundedRect(clip, radius, radius, radius, radius));
</del><ins>+ paintInfo.context().clipRoundedRect(FloatRoundedRect(clip, radius, radius, radius, radius));
</ins><span class="cx"> }
</span><span class="cx"> FloatPoint bottomCenter(clip.x() + clip.width() / 2.0, clip.maxY());
</span><span class="cx"> drawAxialGradient(cgContext, gradientWithName(ShadeGradient), clip.location(), FloatPoint(clip.x(), clip.maxY()), LinearInterpolation);
</span><span class="lines">@@ -481,15 +481,15 @@
</span><span class="cx"> RenderStyle& style = box.style();
</span><span class="cx"> FloatPoint point(rect.x() + style.borderLeftWidth(), rect.y() + style.borderTopWidth());
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><del>- paintInfo.context->clipRoundedRect(style.getRoundedBorderFor(LayoutRect(rect)).pixelSnappedRoundedRectForPainting(box.document().deviceScaleFactor()));
</del><ins>+ paintInfo.context().clipRoundedRect(style.getRoundedBorderFor(LayoutRect(rect)).pixelSnappedRoundedRectForPainting(box.document().deviceScaleFactor()));
</ins><span class="cx">
</span><span class="cx"> // This gradient gets drawn black when printing.
</span><span class="cx"> // Do not draw the gradient if there is no visible top border.
</span><span class="cx"> bool topBorderIsInvisible = !style.hasBorder() || !style.borderTopWidth() || style.borderTopIsTransparent();
</span><span class="cx"> if (!box.view().printing() && !topBorderIsInvisible)
</span><del>- drawAxialGradient(paintInfo.context->platformContext(), gradientWithName(InsetGradient), point, FloatPoint(CGPointMake(point.x(), point.y() + 3.0f)), LinearInterpolation);
</del><ins>+ drawAxialGradient(paintInfo.context().platformContext(), gradientWithName(InsetGradient), point, FloatPoint(CGPointMake(point.x(), point.y() + 3.0f)), LinearInterpolation);
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -618,7 +618,7 @@
</span><span class="cx"> RenderStyle& style = box.style();
</span><span class="cx"> float borderTopWidth = style.borderTopWidth();
</span><span class="cx"> FloatRect clip(rect.x() + style.borderLeftWidth(), rect.y() + style.borderTopWidth(), rect.width() - style.borderLeftWidth() - style.borderRightWidth(), rect.height() - style.borderTopWidth() - style.borderBottomWidth());
</span><del>- CGContextRef cgContext = paintInfo.context->platformContext();
</del><ins>+ CGContextRef cgContext = paintInfo.context().platformContext();
</ins><span class="cx">
</span><span class="cx"> float adjustLeft = 0.5;
</span><span class="cx"> float adjustRight = 0.5;
</span><span class="lines">@@ -629,9 +629,9 @@
</span><span class="cx"> {
</span><span class="cx"> FloatRect titleClip(clip.x() - adjustLeft, clip.y() - adjustTop, clip.width() - MenuListButtonPaddingRight + adjustLeft, clip.height() + adjustTop + adjustBottom);
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><del>- paintInfo.context->clipRoundedRect(FloatRoundedRect(titleClip,
</del><ins>+ paintInfo.context().clipRoundedRect(FloatRoundedRect(titleClip,
</ins><span class="cx"> FloatSize(valueForLength(style.borderTopLeftRadius().width(), rect.width()) - style.borderLeftWidth(), valueForLength(style.borderTopLeftRadius().height(), rect.height()) - style.borderTopWidth()), FloatSize(0, 0),
</span><span class="cx"> FloatSize(valueForLength(style.borderBottomLeftRadius().width(), rect.width()) - style.borderLeftWidth(), valueForLength(style.borderBottomLeftRadius().height(), rect.height()) - style.borderBottomWidth()), FloatSize(0, 0)));
</span><span class="cx">
</span><span class="lines">@@ -643,19 +643,19 @@
</span><span class="cx">
</span><span class="cx"> float separator = clip.maxX() - MenuListButtonPaddingRight;
</span><span class="cx">
</span><del>- box.drawLineForBoxSide(*paintInfo.context, FloatRect(FloatPoint(separator - borderTopWidth, clip.y()), FloatPoint(separator, clip.maxY())), BSRight, style.visitedDependentColor(CSSPropertyBorderTopColor), style.borderTopStyle(), 0, 0);
</del><ins>+ box.drawLineForBoxSide(paintInfo.context(), FloatRect(FloatPoint(separator - borderTopWidth, clip.y()), FloatPoint(separator, clip.maxY())), BSRight, style.visitedDependentColor(CSSPropertyBorderTopColor), style.borderTopStyle(), 0, 0);
</ins><span class="cx">
</span><span class="cx"> FloatRect buttonClip(separator - adjustTop, clip.y() - adjustTop, MenuListButtonPaddingRight + adjustTop + adjustRight, clip.height() + adjustTop + adjustBottom);
</span><span class="cx">
</span><span class="cx"> // Now paint the button portion.
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><del>- paintInfo.context->clipRoundedRect(FloatRoundedRect(buttonClip,
</del><ins>+ paintInfo.context().clipRoundedRect(FloatRoundedRect(buttonClip,
</ins><span class="cx"> FloatSize(0, 0), FloatSize(valueForLength(style.borderTopRightRadius().width(), rect.width()) - style.borderRightWidth(), valueForLength(style.borderTopRightRadius().height(), rect.height()) - style.borderTopWidth()),
</span><span class="cx"> FloatSize(0, 0), FloatSize(valueForLength(style.borderBottomRightRadius().width(), rect.width()) - style.borderRightWidth(), valueForLength(style.borderBottomRightRadius().height(), rect.height()) - style.borderBottomWidth())));
</span><span class="cx">
</span><del>- paintInfo.context->fillRect(buttonClip, style.visitedDependentColor(CSSPropertyBorderTopColor), style.colorSpace());
</del><ins>+ paintInfo.context().fillRect(buttonClip, style.visitedDependentColor(CSSPropertyBorderTopColor), style.colorSpace());
</ins><span class="cx">
</span><span class="cx"> drawAxialGradient(cgContext, gradientWithName(isFocused(box) && !isReadOnlyControl(box) ? ConcaveGradient : ConvexGradient), buttonClip.location(), FloatPoint(buttonClip.x(), buttonClip.maxY()), LinearInterpolation);
</span><span class="cx"> }
</span><span class="lines">@@ -670,7 +670,7 @@
</span><span class="cx"> FloatRect ellipse(buttonClip.x() + (buttonClip.width() - count * (size + padding) + padding) / 2.0, buttonClip.maxY() - 10.0, size, size);
</span><span class="cx">
</span><span class="cx"> for (int i = 0; i < count; ++i) {
</span><del>- paintInfo.context->drawRaisedEllipse(ellipse, Color::white, ColorSpaceDeviceRGB, Color(0.0f, 0.0f, 0.0f, 0.5f), ColorSpaceDeviceRGB);
</del><ins>+ paintInfo.context().drawRaisedEllipse(ellipse, Color::white, ColorSpaceDeviceRGB, Color(0.0f, 0.0f, 0.0f, 0.5f), ColorSpaceDeviceRGB);
</ins><span class="cx"> ellipse.move(size + padding, 0);
</span><span class="cx"> }
</span><span class="cx"> } else {
</span><span class="lines">@@ -689,13 +689,13 @@
</span><span class="cx"> shadow[2] = FloatPoint(arrow[2].x(), arrow[2].y() + 1.0f);
</span><span class="cx">
</span><span class="cx"> float opacity = isReadOnlyControl(box) ? 0.2 : 0.5;
</span><del>- paintInfo.context->setStrokeColor(Color(0.0f, 0.0f, 0.0f, opacity), ColorSpaceDeviceRGB);
- paintInfo.context->setFillColor(Color(0.0f, 0.0f, 0.0f, opacity), ColorSpaceDeviceRGB);
- paintInfo.context->drawConvexPolygon(3, shadow, true);
</del><ins>+ paintInfo.context().setStrokeColor(Color(0.0f, 0.0f, 0.0f, opacity), ColorSpaceDeviceRGB);
+ paintInfo.context().setFillColor(Color(0.0f, 0.0f, 0.0f, opacity), ColorSpaceDeviceRGB);
+ paintInfo.context().drawConvexPolygon(3, shadow, true);
</ins><span class="cx">
</span><del>- paintInfo.context->setStrokeColor(Color::white, ColorSpaceDeviceRGB);
- paintInfo.context->setFillColor(Color::white, ColorSpaceDeviceRGB);
- paintInfo.context->drawConvexPolygon(3, arrow, true);
</del><ins>+ paintInfo.context().setStrokeColor(Color::white, ColorSpaceDeviceRGB);
+ paintInfo.context().setFillColor(Color::white, ColorSpaceDeviceRGB);
+ paintInfo.context().drawConvexPolygon(3, arrow, true);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> return false;
</span><span class="lines">@@ -759,13 +759,13 @@
</span><span class="cx">
</span><span class="cx"> // Draw the track gradient.
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> IntSize cornerSize(cornerWidth, cornerHeight);
</span><span class="cx"> FloatRoundedRect innerBorder(trackClip, cornerSize, cornerSize, cornerSize, cornerSize);
</span><del>- paintInfo.context->clipRoundedRect(innerBorder);
</del><ins>+ paintInfo.context().clipRoundedRect(innerBorder);
</ins><span class="cx">
</span><del>- CGContextRef cgContext = paintInfo.context->platformContext();
</del><ins>+ CGContextRef cgContext = paintInfo.context().platformContext();
</ins><span class="cx"> IOSGradientRef gradient = readonly ? gradientWithName(ReadonlySliderTrackGradient) : gradientWithName(SliderTrackGradient);
</span><span class="cx"> if (isHorizontal)
</span><span class="cx"> drawAxialGradient(cgContext, gradient, trackClip.location(), FloatPoint(trackClip.x(), trackClip.maxY()), LinearInterpolation);
</span><span class="lines">@@ -775,13 +775,13 @@
</span><span class="cx">
</span><span class="cx"> // Draw the track border.
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><del>- CGContextRef cgContext = paintInfo.context->platformContext();
</del><ins>+ CGContextRef cgContext = paintInfo.context().platformContext();
</ins><span class="cx"> if (readonly)
</span><del>- paintInfo.context->setStrokeColor(Color(178, 178, 178), ColorSpaceDeviceRGB);
</del><ins>+ paintInfo.context().setStrokeColor(Color(178, 178, 178), ColorSpaceDeviceRGB);
</ins><span class="cx"> else
</span><del>- paintInfo.context->setStrokeColor(Color(76, 76, 76), ColorSpaceDeviceRGB);
</del><ins>+ paintInfo.context().setStrokeColor(Color(76, 76, 76), ColorSpaceDeviceRGB);
</ins><span class="cx">
</span><span class="cx"> RetainPtr<CGMutablePathRef> roundedRectPath = adoptCF(CGPathCreateMutable());
</span><span class="cx"> CGPathAddRoundedRect(roundedRectPath.get(), 0, trackClip, cornerWidth, cornerHeight);
</span><span class="lines">@@ -812,10 +812,10 @@
</span><span class="cx">
</span><span class="cx"> bool RenderThemeIOS::paintSliderThumbDecorations(const RenderObject& box, const PaintInfo& paintInfo, const IntRect& rect)
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
- FloatRect clip = addRoundedBorderClip(box, paintInfo.context, rect);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
+ FloatRect clip = addRoundedBorderClip(box, paintInfo.context(), rect);
</ins><span class="cx">
</span><del>- CGContextRef cgContext = paintInfo.context->platformContext();
</del><ins>+ CGContextRef cgContext = paintInfo.context().platformContext();
</ins><span class="cx"> FloatPoint bottomCenter(clip.x() + clip.width() / 2.0f, clip.maxY());
</span><span class="cx"> if (isPressed(box))
</span><span class="cx"> drawAxialGradient(cgContext, gradientWithName(SliderThumbOpaquePressedGradient), clip.location(), FloatPoint(clip.x(), clip.maxY()), LinearInterpolation);
</span><span class="lines">@@ -845,18 +845,18 @@
</span><span class="cx"> const int progressBarHeight = 9;
</span><span class="cx"> const float verticalOffset = (rect.height() - progressBarHeight) / 2.0;
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx"> if (rect.width() < 10 || rect.height() < 9) {
</span><span class="cx"> // The rect is smaller than the standard progress bar. We clip to the element's rect to avoid
</span><span class="cx"> // leaking pixels outside the repaint rect.
</span><del>- paintInfo.context->clip(rect);
</del><ins>+ paintInfo.context().clip(rect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // 1) Draw the progress bar track.
</span><span class="cx"> // 1.1) Draw the white background with grey gradient border.
</span><del>- GraphicsContext* context = paintInfo.context;
- context->setStrokeThickness(0.68);
- context->setStrokeStyle(SolidStroke);
</del><ins>+ GraphicsContext& context = paintInfo.context();
+ context.setStrokeThickness(0.68);
+ context.setStrokeStyle(SolidStroke);
</ins><span class="cx">
</span><span class="cx"> const float verticalRenderingPosition = rect.y() + verticalOffset;
</span><span class="cx"> RefPtr<Gradient> strokeGradient = Gradient::create(FloatPoint(rect.x(), verticalRenderingPosition), FloatPoint(rect.x(), verticalRenderingPosition + progressBarHeight - 1));
</span><span class="lines">@@ -864,28 +864,28 @@
</span><span class="cx"> strokeGradient->addColorStop(0.45, Color(0xee, 0xee, 0xee));
</span><span class="cx"> strokeGradient->addColorStop(0.55, Color(0xee, 0xee, 0xee));
</span><span class="cx"> strokeGradient->addColorStop(1.0, Color(0x8d, 0x8d, 0x8d));
</span><del>- context->setStrokeGradient(strokeGradient.releaseNonNull());
</del><ins>+ context.setStrokeGradient(strokeGradient.releaseNonNull());
</ins><span class="cx">
</span><span class="cx"> ColorSpace colorSpace = renderer.style().colorSpace();
</span><del>- context->setFillColor(Color(255, 255, 255), colorSpace);
</del><ins>+ context.setFillColor(Color(255, 255, 255), colorSpace);
</ins><span class="cx">
</span><span class="cx"> Path trackPath;
</span><span class="cx"> FloatRect trackRect(rect.x() + 0.25, verticalRenderingPosition + 0.25, rect.width() - 0.5, progressBarHeight - 0.5);
</span><span class="cx"> FloatSize roundedCornerRadius(5, 4);
</span><span class="cx"> trackPath.addRoundedRect(trackRect, roundedCornerRadius);
</span><del>- context->drawPath(trackPath);
</del><ins>+ context.drawPath(trackPath);
</ins><span class="cx">
</span><span class="cx"> // 1.2) Draw top gradient on the upper half. It is supposed to overlay the fill from the background and darker the stroked path.
</span><span class="cx"> FloatRect border(rect.x(), rect.y() + verticalOffset, rect.width(), progressBarHeight);
</span><del>- paintInfo.context->clipRoundedRect(FloatRoundedRect(border, roundedCornerRadius, roundedCornerRadius, roundedCornerRadius, roundedCornerRadius));
</del><ins>+ paintInfo.context().clipRoundedRect(FloatRoundedRect(border, roundedCornerRadius, roundedCornerRadius, roundedCornerRadius, roundedCornerRadius));
</ins><span class="cx">
</span><span class="cx"> float upperGradientHeight = progressBarHeight / 2.;
</span><span class="cx"> RefPtr<Gradient> upperGradient = Gradient::create(FloatPoint(rect.x(), verticalRenderingPosition + 0.5), FloatPoint(rect.x(), verticalRenderingPosition + upperGradientHeight - 1.5));
</span><span class="cx"> upperGradient->addColorStop(0.0, Color(133, 133, 133, 188));
</span><span class="cx"> upperGradient->addColorStop(1.0, Color(18, 18, 18, 51));
</span><del>- context->setFillGradient(upperGradient.releaseNonNull());
</del><ins>+ context.setFillGradient(upperGradient.releaseNonNull());
</ins><span class="cx">
</span><del>- context->fillRect(FloatRect(rect.x(), verticalRenderingPosition, rect.width(), upperGradientHeight));
</del><ins>+ context.fillRect(FloatRect(rect.x(), verticalRenderingPosition, rect.width(), upperGradientHeight));
</ins><span class="cx">
</span><span class="cx"> const auto& renderProgress = downcast<RenderProgress>(renderer);
</span><span class="cx"> if (renderProgress.isDeterminate()) {
</span><span class="lines">@@ -899,13 +899,13 @@
</span><span class="cx"> barGradient->addColorStop(0.51, Color(36, 114, 210));
</span><span class="cx"> barGradient->addColorStop(0.55, Color(36, 114, 210));
</span><span class="cx"> barGradient->addColorStop(1.0, Color(57, 142, 244));
</span><del>- context->setFillGradient(barGradient.releaseNonNull());
</del><ins>+ context.setFillGradient(barGradient.releaseNonNull());
</ins><span class="cx">
</span><span class="cx"> RefPtr<Gradient> barStrokeGradient = Gradient::create(FloatPoint(rect.x(), verticalRenderingPosition), FloatPoint(rect.x(), verticalRenderingPosition + progressBarHeight - 1));
</span><span class="cx"> barStrokeGradient->addColorStop(0.0, Color(95, 107, 183));
</span><span class="cx"> barStrokeGradient->addColorStop(0.5, Color(66, 106, 174, 240));
</span><span class="cx"> barStrokeGradient->addColorStop(1.0, Color(38, 104, 166));
</span><del>- context->setStrokeGradient(barStrokeGradient.releaseNonNull());
</del><ins>+ context.setStrokeGradient(barStrokeGradient.releaseNonNull());
</ins><span class="cx">
</span><span class="cx"> Path barPath;
</span><span class="cx"> int left = rect.x();
</span><span class="lines">@@ -913,7 +913,7 @@
</span><span class="cx"> left = rect.maxX() - barWidth;
</span><span class="cx"> FloatRect barRect(left + 0.25, verticalRenderingPosition + 0.25, std::max(barWidth - 0.5, 0.0), progressBarHeight - 0.5);
</span><span class="cx"> barPath.addRoundedRect(barRect, roundedCornerRadius);
</span><del>- context->drawPath(barPath);
</del><ins>+ context.drawPath(barPath);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> return false;
</span><span class="lines">@@ -984,10 +984,10 @@
</span><span class="cx">
</span><span class="cx"> bool RenderThemeIOS::paintPushButtonDecorations(const RenderObject& box, const PaintInfo& paintInfo, const IntRect& rect)
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
- FloatRect clip = addRoundedBorderClip(box, paintInfo.context, rect);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
+ FloatRect clip = addRoundedBorderClip(box, paintInfo.context(), rect);
</ins><span class="cx">
</span><del>- CGContextRef cgContext = paintInfo.context->platformContext();
</del><ins>+ CGContextRef cgContext = paintInfo.context().platformContext();
</ins><span class="cx"> if (box.style().visitedDependentColor(CSSPropertyBackgroundColor).isDark())
</span><span class="cx"> drawAxialGradient(cgContext, gradientWithName(ConvexGradient), clip.location(), FloatPoint(clip.x(), clip.maxY()), LinearInterpolation);
</span><span class="cx"> else {
</span><span class="lines">@@ -1014,7 +1014,7 @@
</span><span class="cx">
</span><span class="cx"> bool RenderThemeIOS::paintFileUploadIconDecorations(const RenderObject&, const RenderObject& buttonRenderer, const PaintInfo& paintInfo, const IntRect& rect, Icon* icon, FileUploadDecorations fileUploadDecorations)
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> IntSize cornerSize(kThumbnailBorderCornerRadius, kThumbnailBorderCornerRadius);
</span><span class="cx"> Color pictureFrameColor = buttonRenderer.style().visitedDependentColor(CSSPropertyBorderTopColor);
</span><span class="lines">@@ -1031,12 +1031,12 @@
</span><span class="cx">
</span><span class="cx"> // Background picture frame and simple background icon with a gradient matching the button.
</span><span class="cx"> Color backgroundImageColor = Color(buttonRenderer.style().visitedDependentColor(CSSPropertyBackgroundColor).rgb());
</span><del>- paintInfo.context->fillRoundedRect(FloatRoundedRect(thumbnailPictureFrameRect, cornerSize, cornerSize, cornerSize, cornerSize), pictureFrameColor, ColorSpaceDeviceRGB);
- paintInfo.context->fillRect(thumbnailRect, backgroundImageColor, ColorSpaceDeviceRGB);
</del><ins>+ paintInfo.context().fillRoundedRect(FloatRoundedRect(thumbnailPictureFrameRect, cornerSize, cornerSize, cornerSize, cornerSize), pictureFrameColor, ColorSpaceDeviceRGB);
+ paintInfo.context().fillRect(thumbnailRect, backgroundImageColor, ColorSpaceDeviceRGB);
</ins><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver2(*paintInfo.context);
- CGContextRef cgContext = paintInfo.context->platformContext();
- paintInfo.context->clip(thumbnailRect);
</del><ins>+ GraphicsContextStateSaver stateSaver2(paintInfo.context());
+ CGContextRef cgContext = paintInfo.context().platformContext();
+ paintInfo.context().clip(thumbnailRect);
</ins><span class="cx"> if (backgroundImageColor.isDark())
</span><span class="cx"> drawAxialGradient(cgContext, gradientWithName(ConvexGradient), thumbnailRect.location(), FloatPoint(thumbnailRect.x(), thumbnailRect.maxY()), LinearInterpolation);
</span><span class="cx"> else {
</span><span class="lines">@@ -1052,8 +1052,8 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Foreground picture frame and icon.
</span><del>- paintInfo.context->fillRoundedRect(FloatRoundedRect(thumbnailPictureFrameRect, cornerSize, cornerSize, cornerSize, cornerSize), pictureFrameColor, ColorSpaceDeviceRGB);
- icon->paint(*paintInfo.context, thumbnailRect);
</del><ins>+ paintInfo.context().fillRoundedRect(FloatRoundedRect(thumbnailPictureFrameRect, cornerSize, cornerSize, cornerSize, cornerSize), pictureFrameColor, ColorSpaceDeviceRGB);
+ icon->paint(paintInfo.context(), thumbnailRect);
</ins><span class="cx">
</span><span class="cx"> return false;
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderThemeMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderThemeMac.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderThemeMac.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderThemeMac.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -850,11 +850,11 @@
</span><span class="cx">
</span><span class="cx"> bool RenderThemeMac::paintTextField(const RenderObject& o, const PaintInfo& paintInfo, const FloatRect& r)
</span><span class="cx"> {
</span><del>- LocalCurrentGraphicsContext localContext(paintInfo.context);
</del><ins>+ LocalCurrentGraphicsContext localContext(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> NSTextFieldCell *textField = this->textField();
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> [textField setEnabled:(isEnabled(o) && !isReadOnlyControl(o))];
</span><span class="cx"> [textField drawWithFrame:NSRect(r) inView:documentViewFor(o)];
</span><span class="lines">@@ -870,7 +870,7 @@
</span><span class="cx">
</span><span class="cx"> bool RenderThemeMac::paintTextArea(const RenderObject& o, const PaintInfo& paintInfo, const FloatRect& r)
</span><span class="cx"> {
</span><del>- LocalCurrentGraphicsContext localContext(paintInfo.context);
</del><ins>+ LocalCurrentGraphicsContext localContext(paintInfo.context());
</ins><span class="cx"> wkDrawBezeledTextArea(r, isEnabled(o) && !isReadOnlyControl(o));
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="lines">@@ -909,7 +909,7 @@
</span><span class="cx">
</span><span class="cx"> bool RenderThemeMac::paintMenuList(const RenderObject& renderer, const PaintInfo& paintInfo, const FloatRect& rect)
</span><span class="cx"> {
</span><del>- LocalCurrentGraphicsContext localContext(paintInfo.context);
</del><ins>+ LocalCurrentGraphicsContext localContext(paintInfo.context());
</ins><span class="cx"> setPopupButtonCellState(renderer, IntSize(rect.size()));
</span><span class="cx">
</span><span class="cx"> NSPopUpButtonCell* popupButton = this->popupButton();
</span><span class="lines">@@ -924,19 +924,19 @@
</span><span class="cx"> if (rect.width() >= minimumMenuListSize(renderer.style()))
</span><span class="cx"> inflatedRect = inflateRect(rect, size, popupButtonMargins(), zoomLevel);
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> // Before Yosemite we did not want the cell to ever draw outside the given rectangle.
</span><span class="cx"> #if __MAC_OS_X_VERSION_MIN_REQUIRED < 101000
</span><del>- paintInfo.context->clip(inflatedRect);
</del><ins>+ paintInfo.context().clip(inflatedRect);
</ins><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> if (zoomLevel != 1.0f) {
</span><span class="cx"> inflatedRect.setWidth(inflatedRect.width() / zoomLevel);
</span><span class="cx"> inflatedRect.setHeight(inflatedRect.height() / zoomLevel);
</span><del>- paintInfo.context->translate(inflatedRect.x(), inflatedRect.y());
- paintInfo.context->scale(FloatSize(zoomLevel, zoomLevel));
- paintInfo.context->translate(-inflatedRect.x(), -inflatedRect.y());
</del><ins>+ paintInfo.context().translate(inflatedRect.x(), inflatedRect.y());
+ paintInfo.context().scale(FloatSize(zoomLevel, zoomLevel));
+ paintInfo.context().translate(-inflatedRect.x(), -inflatedRect.y());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> paintCellAndSetFocusedElementNeedsRepaintIfNecessary(popupButton, renderer, paintInfo, inflatedRect);
</span><span class="lines">@@ -964,10 +964,10 @@
</span><span class="cx"> if (!is<RenderMeter>(renderObject))
</span><span class="cx"> return true;
</span><span class="cx">
</span><del>- LocalCurrentGraphicsContext localContext(paintInfo.context);
</del><ins>+ LocalCurrentGraphicsContext localContext(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> NSLevelIndicatorCell* cell = levelIndicatorFor(downcast<RenderMeter>(renderObject));
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> [cell drawWithFrame:rect inView:documentViewFor(renderObject)];
</span><span class="cx"> [cell setControlView:nil];
</span><span class="lines">@@ -1134,7 +1134,7 @@
</span><span class="cx"> trackInfo.reserved = 0;
</span><span class="cx"> trackInfo.filler1 = 0;
</span><span class="cx">
</span><del>- std::unique_ptr<ImageBuffer> imageBuffer = ImageBuffer::createCompatibleBuffer(inflatedRect.size(), deviceScaleFactor, ColorSpaceDeviceRGB, paintInfo.context, true);
</del><ins>+ std::unique_ptr<ImageBuffer> imageBuffer = ImageBuffer::createCompatibleBuffer(inflatedRect.size(), deviceScaleFactor, ColorSpaceDeviceRGB, paintInfo.context(), true);
</ins><span class="cx"> if (!imageBuffer)
</span><span class="cx"> return true;
</span><span class="cx">
</span><span class="lines">@@ -1142,14 +1142,14 @@
</span><span class="cx"> CGContextRef cgContext = cgContextContainer.context();
</span><span class="cx"> HIThemeDrawTrack(&trackInfo, 0, cgContext, kHIThemeOrientationNormal);
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> if (!renderProgress.style().isLeftToRightDirection()) {
</span><del>- paintInfo.context->translate(2 * inflatedRect.x() + inflatedRect.width(), 0);
- paintInfo.context->scale(FloatSize(-1, 1));
</del><ins>+ paintInfo.context().translate(2 * inflatedRect.x() + inflatedRect.width(), 0);
+ paintInfo.context().scale(FloatSize(-1, 1));
</ins><span class="cx"> }
</span><span class="cx">
</span><del>- paintInfo.context->drawImageBuffer(imageBuffer.get(), ColorSpaceDeviceRGB, inflatedRect.location());
</del><ins>+ paintInfo.context().drawImageBuffer(imageBuffer.get(), ColorSpaceDeviceRGB, inflatedRect.location());
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1210,10 +1210,10 @@
</span><span class="cx"> if (r.isEmpty())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- ContextContainer cgContextContainer(paintInfo.context);
</del><ins>+ ContextContainer cgContextContainer(paintInfo.context());
</ins><span class="cx"> CGContextRef context = cgContextContainer.context();
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> FloatRoundedRect border = FloatRoundedRect(o.style().getRoundedBorderFor(r));
</span><span class="cx"> int radius = border.radii().topLeft().width();
</span><span class="lines">@@ -1239,33 +1239,33 @@
</span><span class="cx"> RetainPtr<CGShadingRef> rightShading = adoptCF(CGShadingCreateAxial(cspace, CGPointMake(r.maxX(), r.y()), CGPointMake(r.maxX() - radius, r.y()), mainFunction.get(), false, false));
</span><span class="cx">
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx"> CGContextClipToRect(context, r);
</span><del>- paintInfo.context->clipRoundedRect(border);
</del><ins>+ paintInfo.context().clipRoundedRect(border);
</ins><span class="cx"> context = cgContextContainer.context();
</span><span class="cx"> CGContextDrawShading(context, mainShading.get());
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx"> CGContextClipToRect(context, topGradient);
</span><del>- paintInfo.context->clipRoundedRect(FloatRoundedRect(enclosingIntRect(topGradient), border.radii().topLeft(), border.radii().topRight(), IntSize(), IntSize()));
</del><ins>+ paintInfo.context().clipRoundedRect(FloatRoundedRect(enclosingIntRect(topGradient), border.radii().topLeft(), border.radii().topRight(), IntSize(), IntSize()));
</ins><span class="cx"> context = cgContextContainer.context();
</span><span class="cx"> CGContextDrawShading(context, topShading.get());
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (!bottomGradient.isEmpty()) {
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx"> CGContextClipToRect(context, bottomGradient);
</span><del>- paintInfo.context->clipRoundedRect(FloatRoundedRect(enclosingIntRect(bottomGradient), IntSize(), IntSize(), border.radii().bottomLeft(), border.radii().bottomRight()));
</del><ins>+ paintInfo.context().clipRoundedRect(FloatRoundedRect(enclosingIntRect(bottomGradient), IntSize(), IntSize(), border.radii().bottomLeft(), border.radii().bottomRight()));
</ins><span class="cx"> context = cgContextContainer.context();
</span><span class="cx"> CGContextDrawShading(context, bottomShading.get());
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx"> CGContextClipToRect(context, r);
</span><del>- paintInfo.context->clipRoundedRect(border);
</del><ins>+ paintInfo.context().clipRoundedRect(border);
</ins><span class="cx"> context = cgContextContainer.context();
</span><span class="cx"> CGContextDrawShading(context, leftShading.get());
</span><span class="cx"> CGContextDrawShading(context, rightShading.get());
</span><span class="lines">@@ -1292,10 +1292,10 @@
</span><span class="cx"> if (bounds.width() < arrowWidth + arrowPaddingLeft * renderer.style().effectiveZoom())
</span><span class="cx"> return false;
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><del>- paintInfo.context->setFillColor(renderer.style().visitedDependentColor(CSSPropertyColor), renderer.style().colorSpace());
- paintInfo.context->setStrokeStyle(NoStroke);
</del><ins>+ paintInfo.context().setFillColor(renderer.style().visitedDependentColor(CSSPropertyColor), renderer.style().colorSpace());
+ paintInfo.context().setStrokeStyle(NoStroke);
</ins><span class="cx">
</span><span class="cx"> FloatPoint arrow1[3];
</span><span class="cx"> arrow1[0] = FloatPoint(leftEdge, centerY - spaceBetweenArrows / 2.0f);
</span><span class="lines">@@ -1303,7 +1303,7 @@
</span><span class="cx"> arrow1[2] = FloatPoint(leftEdge + arrowWidth / 2.0f, centerY - spaceBetweenArrows / 2.0f - arrowHeight);
</span><span class="cx">
</span><span class="cx"> // Draw the top arrow
</span><del>- paintInfo.context->drawConvexPolygon(3, arrow1, true);
</del><ins>+ paintInfo.context().drawConvexPolygon(3, arrow1, true);
</ins><span class="cx">
</span><span class="cx"> FloatPoint arrow2[3];
</span><span class="cx"> arrow2[0] = FloatPoint(leftEdge, centerY + spaceBetweenArrows / 2.0f);
</span><span class="lines">@@ -1311,7 +1311,7 @@
</span><span class="cx"> arrow2[2] = FloatPoint(leftEdge + arrowWidth / 2.0f, centerY + spaceBetweenArrows / 2.0f + arrowHeight);
</span><span class="cx">
</span><span class="cx"> // Draw the bottom arrow
</span><del>- paintInfo.context->drawConvexPolygon(3, arrow2, true);
</del><ins>+ paintInfo.context().drawConvexPolygon(3, arrow2, true);
</ins><span class="cx">
</span><span class="cx"> Color leftSeparatorColor(0, 0, 0, 40);
</span><span class="cx"> Color rightSeparatorColor(255, 255, 255, 40);
</span><span class="lines">@@ -1321,14 +1321,14 @@
</span><span class="cx"> int leftEdgeOfSeparator = static_cast<int>(leftEdge - arrowPaddingLeft * renderer.style().effectiveZoom()); // FIXME: Round?
</span><span class="cx">
</span><span class="cx"> // Draw the separator to the left of the arrows
</span><del>- paintInfo.context->setStrokeThickness(1); // Deliberately ignores zoom since it looks nicer if it stays thin.
- paintInfo.context->setStrokeStyle(SolidStroke);
- paintInfo.context->setStrokeColor(leftSeparatorColor, ColorSpaceDeviceRGB);
- paintInfo.context->drawLine(IntPoint(leftEdgeOfSeparator, bounds.y()),
</del><ins>+ paintInfo.context().setStrokeThickness(1); // Deliberately ignores zoom since it looks nicer if it stays thin.
+ paintInfo.context().setStrokeStyle(SolidStroke);
+ paintInfo.context().setStrokeColor(leftSeparatorColor, ColorSpaceDeviceRGB);
+ paintInfo.context().drawLine(IntPoint(leftEdgeOfSeparator, bounds.y()),
</ins><span class="cx"> IntPoint(leftEdgeOfSeparator, bounds.maxY()));
</span><span class="cx">
</span><del>- paintInfo.context->setStrokeColor(rightSeparatorColor, ColorSpaceDeviceRGB);
- paintInfo.context->drawLine(IntPoint(leftEdgeOfSeparator + separatorSpace, bounds.y()),
</del><ins>+ paintInfo.context().setStrokeColor(rightSeparatorColor, ColorSpaceDeviceRGB);
+ paintInfo.context().drawLine(IntPoint(leftEdgeOfSeparator + separatorSpace, bounds.y()),
</ins><span class="cx"> IntPoint(leftEdgeOfSeparator + separatorSpace, bounds.maxY()));
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="lines">@@ -1454,7 +1454,7 @@
</span><span class="cx"> bool shouldDrawFocusRing = isFocused(renderer) && renderer.style().outlineStyleIsAuto();
</span><span class="cx"> bool shouldUseImageBuffer = renderer.style().effectiveZoom() != 1 || page->pageScaleFactor() != 1;
</span><span class="cx"> bool shouldDrawCell = true;
</span><del>- if (ThemeMac::drawCellOrFocusRingWithViewIntoContext(cell, paintInfo.context, rect, documentViewFor(renderer), shouldDrawCell, shouldDrawFocusRing, shouldUseImageBuffer, page->deviceScaleFactor()))
</del><ins>+ if (ThemeMac::drawCellOrFocusRingWithViewIntoContext(cell, paintInfo.context(), rect, documentViewFor(renderer), shouldDrawCell, shouldDrawFocusRing, shouldUseImageBuffer, page->deviceScaleFactor()))
</ins><span class="cx"> page->focusController().setFocusedElementNeedsRepaint();
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1491,7 +1491,7 @@
</span><span class="cx"> bounds.setX(r.x() + r.width() / 2 - zoomedTrackWidth / 2);
</span><span class="cx"> }
</span><span class="cx">
</span><del>- LocalCurrentGraphicsContext localContext(paintInfo.context);
</del><ins>+ LocalCurrentGraphicsContext localContext(paintInfo.context());
</ins><span class="cx"> CGContextRef context = localContext.cgContext();
</span><span class="cx"> CGColorSpaceRef cspace = deviceRGBColorSpaceRef();
</span><span class="cx">
</span><span class="lines">@@ -1499,7 +1499,7 @@
</span><span class="cx"> paintSliderTicks(o, paintInfo, r);
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx"> CGContextClipToRect(context, bounds);
</span><span class="cx">
</span><span class="cx"> struct CGFunctionCallbacks mainCallbacks = { 0, TrackGradientInterpolate, NULL };
</span><span class="lines">@@ -1511,7 +1511,7 @@
</span><span class="cx"> mainShading = adoptCF(CGShadingCreateAxial(cspace, CGPointMake(bounds.x(), bounds.y()), CGPointMake(bounds.x(), bounds.maxY()), mainFunction.get(), false, false));
</span><span class="cx">
</span><span class="cx"> IntSize radius(trackRadius, trackRadius);
</span><del>- paintInfo.context->clipRoundedRect(FloatRoundedRect(bounds, radius, radius, radius, radius));
</del><ins>+ paintInfo.context().clipRoundedRect(FloatRoundedRect(bounds, radius, radius, radius, radius));
</ins><span class="cx"> context = localContext.cgContext();
</span><span class="cx"> CGContextDrawShading(context, mainShading.get());
</span><span class="cx">
</span><span class="lines">@@ -1532,7 +1532,7 @@
</span><span class="cx"> ? sliderThumbVertical()
</span><span class="cx"> : sliderThumbHorizontal();
</span><span class="cx">
</span><del>- LocalCurrentGraphicsContext localContext(paintInfo.context);
</del><ins>+ LocalCurrentGraphicsContext localContext(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> // Update the various states we respond to.
</span><span class="cx"> updateEnabledState(sliderThumbCell, o);
</span><span class="lines">@@ -1568,16 +1568,16 @@
</span><span class="cx"> if (o.style().appearance() == SliderThumbVerticalPart)
</span><span class="cx"> bounds.setHeight(bounds.height() + verticalSliderHeightPadding * o.style().effectiveZoom());
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx"> float zoomLevel = o.style().effectiveZoom();
</span><span class="cx">
</span><span class="cx"> FloatRect unzoomedRect = bounds;
</span><span class="cx"> if (zoomLevel != 1.0f) {
</span><span class="cx"> unzoomedRect.setWidth(unzoomedRect.width() / zoomLevel);
</span><span class="cx"> unzoomedRect.setHeight(unzoomedRect.height() / zoomLevel);
</span><del>- paintInfo.context->translate(unzoomedRect.x(), unzoomedRect.y());
- paintInfo.context->scale(FloatSize(zoomLevel, zoomLevel));
- paintInfo.context->translate(-unzoomedRect.x(), -unzoomedRect.y());
</del><ins>+ paintInfo.context().translate(unzoomedRect.x(), unzoomedRect.y());
+ paintInfo.context().scale(FloatSize(zoomLevel, zoomLevel));
+ paintInfo.context().translate(-unzoomedRect.x(), -unzoomedRect.y());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> [sliderThumbCell drawKnob:unzoomedRect];
</span><span class="lines">@@ -1588,12 +1588,12 @@
</span><span class="cx">
</span><span class="cx"> bool RenderThemeMac::paintSearchField(const RenderObject& o, const PaintInfo& paintInfo, const IntRect& r)
</span><span class="cx"> {
</span><del>- LocalCurrentGraphicsContext localContext(paintInfo.context);
</del><ins>+ LocalCurrentGraphicsContext localContext(paintInfo.context());
</ins><span class="cx"> NSSearchFieldCell* search = this->search();
</span><span class="cx">
</span><span class="cx"> setSearchCellState(o, r);
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> float zoomLevel = o.style().effectiveZoom();
</span><span class="cx">
</span><span class="lines">@@ -1602,9 +1602,9 @@
</span><span class="cx"> if (zoomLevel != 1.0f) {
</span><span class="cx"> unzoomedRect.setWidth(unzoomedRect.width() / zoomLevel);
</span><span class="cx"> unzoomedRect.setHeight(unzoomedRect.height() / zoomLevel);
</span><del>- paintInfo.context->translate(unzoomedRect.x(), unzoomedRect.y());
- paintInfo.context->scale(FloatSize(zoomLevel, zoomLevel));
- paintInfo.context->translate(-unzoomedRect.x(), -unzoomedRect.y());
</del><ins>+ paintInfo.context().translate(unzoomedRect.x(), unzoomedRect.y());
+ paintInfo.context().scale(FloatSize(zoomLevel, zoomLevel));
+ paintInfo.context().translate(-unzoomedRect.x(), -unzoomedRect.y());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Set the search button to nil before drawing. Then reset it so we can draw it later.
</span><span class="lines">@@ -1685,7 +1685,7 @@
</span><span class="cx"> if (!input->renderer()->isBox())
</span><span class="cx"> return false;
</span><span class="cx">
</span><del>- LocalCurrentGraphicsContext localContext(paintInfo.context);
</del><ins>+ LocalCurrentGraphicsContext localContext(paintInfo.context());
</ins><span class="cx"> setSearchCellState(*input->renderer(), r);
</span><span class="cx">
</span><span class="cx"> NSSearchFieldCell* search = this->search();
</span><span class="lines">@@ -1695,7 +1695,7 @@
</span><span class="cx"> else if ([[search cancelButtonCell] isHighlighted])
</span><span class="cx"> [[search cancelButtonCell] setHighlighted:NO];
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><span class="cx"> float zoomLevel = o.style().effectiveZoom();
</span><span class="cx">
</span><span class="lines">@@ -1706,9 +1706,9 @@
</span><span class="cx"> if (zoomLevel != 1.0f) {
</span><span class="cx"> unzoomedRect.setWidth(unzoomedRect.width() / zoomLevel);
</span><span class="cx"> unzoomedRect.setHeight(unzoomedRect.height() / zoomLevel);
</span><del>- paintInfo.context->translate(unzoomedRect.x(), unzoomedRect.y());
- paintInfo.context->scale(FloatSize(zoomLevel, zoomLevel));
- paintInfo.context->translate(-unzoomedRect.x(), -unzoomedRect.y());
</del><ins>+ paintInfo.context().translate(unzoomedRect.x(), unzoomedRect.y());
+ paintInfo.context().scale(FloatSize(zoomLevel, zoomLevel));
+ paintInfo.context().translate(-unzoomedRect.x(), -unzoomedRect.y());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> [[search cancelButtonCell] drawWithFrame:unzoomedRect inView:documentViewFor(o)];
</span><span class="lines">@@ -1766,7 +1766,7 @@
</span><span class="cx"> if (!input->renderer()->isBox())
</span><span class="cx"> return false;
</span><span class="cx">
</span><del>- LocalCurrentGraphicsContext localContext(paintInfo.context);
</del><ins>+ LocalCurrentGraphicsContext localContext(paintInfo.context());
</ins><span class="cx"> setSearchCellState(*input->renderer(), r);
</span><span class="cx">
</span><span class="cx"> NSSearchFieldCell* search = this->search();
</span><span class="lines">@@ -1799,7 +1799,7 @@
</span><span class="cx"> if (!input->renderer()->isBox())
</span><span class="cx"> return false;
</span><span class="cx">
</span><del>- LocalCurrentGraphicsContext localContext(paintInfo.context);
</del><ins>+ LocalCurrentGraphicsContext localContext(paintInfo.context());
</ins><span class="cx"> setSearchCellState(*input->renderer(), r);
</span><span class="cx">
</span><span class="cx"> NSSearchFieldCell* search = this->search();
</span><span class="lines">@@ -1807,7 +1807,7 @@
</span><span class="cx"> if (![search searchMenuTemplate])
</span><span class="cx"> [search setSearchMenuTemplate:searchMenuTemplate()];
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx"> float zoomLevel = o.style().effectiveZoom();
</span><span class="cx">
</span><span class="cx"> FloatRect localBounds = [search searchButtonRectForBounds:NSRect(snappedIntRect(input->renderBox()->contentBoxRect()))];
</span><span class="lines">@@ -1817,9 +1817,9 @@
</span><span class="cx"> if (zoomLevel != 1.0f) {
</span><span class="cx"> unzoomedRect.setWidth(unzoomedRect.width() / zoomLevel);
</span><span class="cx"> unzoomedRect.setHeight(unzoomedRect.height() / zoomLevel);
</span><del>- paintInfo.context->translate(unzoomedRect.x(), unzoomedRect.y());
- paintInfo.context->scale(FloatSize(zoomLevel, zoomLevel));
- paintInfo.context->translate(-unzoomedRect.x(), -unzoomedRect.y());
</del><ins>+ paintInfo.context().translate(unzoomedRect.x(), unzoomedRect.y());
+ paintInfo.context().scale(FloatSize(zoomLevel, zoomLevel));
+ paintInfo.context().translate(-unzoomedRect.x(), -unzoomedRect.y());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> [[search searchButtonCell] drawWithFrame:unzoomedRect inView:documentViewFor(o)];
</span><span class="lines">@@ -1843,7 +1843,7 @@
</span><span class="cx"> if (!contentWidth || !contentHeight)
</span><span class="cx"> return true;
</span><span class="cx">
</span><del>- GraphicsContext* context = paintInfo.context;
</del><ins>+ GraphicsContext& context = paintInfo.context();
</ins><span class="cx">
</span><span class="cx"> LayoutSize contentSize(contentWidth, contentHeight);
</span><span class="cx"> LayoutPoint contentLocation = renderBlock.location();
</span><span class="lines">@@ -1899,7 +1899,7 @@
</span><span class="cx"> if (alignedPluginRect.width() <= 0 || alignedPluginRect.height() <= 0)
</span><span class="cx"> return true;
</span><span class="cx">
</span><del>- context->drawImage(snapshot, plugInRenderer.style().colorSpace(), alignedPluginRect, CompositeSourceOver);
</del><ins>+ context.drawImage(snapshot, plugInRenderer.style().colorSpace(), alignedPluginRect, CompositeSourceOver);
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -2063,10 +2063,10 @@
</span><span class="cx"> #if HAVE(APPKIT_SERVICE_CONTROLS_SUPPORT)
</span><span class="cx"> NSServicesRolloverButtonCell *cell = servicesRolloverButtonCell();
</span><span class="cx">
</span><del>- LocalCurrentGraphicsContext localContext(paintInfo.context);
- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ LocalCurrentGraphicsContext localContext(paintInfo.context());
+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx">
</span><del>- paintInfo.context->translate(rect.x(), rect.y());
</del><ins>+ paintInfo.context().translate(rect.x(), rect.y());
</ins><span class="cx">
</span><span class="cx"> IntRect innerFrame(IntPoint(), rect.size());
</span><span class="cx"> [cell drawWithFrame:innerFrame inView:documentViewFor(renderer)];
</span><span class="lines">@@ -2462,8 +2462,8 @@
</span><span class="cx">
</span><span class="cx"> AttachmentLayout layout(attachment);
</span><span class="cx">
</span><del>- GraphicsContext& context = *paintInfo.context;
- LocalCurrentGraphicsContext localContext(&context);
</del><ins>+ GraphicsContext& context = paintInfo.context();
+ LocalCurrentGraphicsContext localContext(context);
</ins><span class="cx"> GraphicsContextStateSaver saver(context);
</span><span class="cx">
</span><span class="cx"> context.translate(toFloatSize(paintRect.location()));
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderThemeSafaricpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderThemeSafari.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderThemeSafari.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderThemeSafari.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -392,7 +392,7 @@
</span><span class="cx"> NSControlSize controlSize = controlSizeForFont(o.style());
</span><span class="cx">
</span><span class="cx"> IntRect inflatedRect = inflateRect(r, checkboxSizes()[controlSize], checkboxMargins(controlSize));
</span><del>- paintThemePart(SafariTheme::CheckboxPart, paintInfo.context->platformContext(), inflatedRect, controlSize, determineState(o));
</del><ins>+ paintThemePart(SafariTheme::CheckboxPart, paintInfo.context().platformContext(), inflatedRect, controlSize, determineState(o));
</ins><span class="cx">
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="lines">@@ -431,7 +431,7 @@
</span><span class="cx"> NSControlSize controlSize = controlSizeForFont(o.style());
</span><span class="cx">
</span><span class="cx"> IntRect inflatedRect = inflateRect(r, radioSizes()[controlSize], radioMargins(controlSize));
</span><del>- paintThemePart(RadioButtonPart, paintInfo.context->platformContext(), inflatedRect, controlSize, determineState(o));
</del><ins>+ paintThemePart(RadioButtonPart, paintInfo.context().platformContext(), inflatedRect, controlSize, determineState(o));
</ins><span class="cx">
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="lines">@@ -577,7 +577,7 @@
</span><span class="cx"> } else
</span><span class="cx"> part = SafariTheme::SquareButtonPart;
</span><span class="cx">
</span><del>- paintThemePart(part, paintInfo.context->platformContext(), inflatedRect, controlSize, determineState(o));
</del><ins>+ paintThemePart(part, paintInfo.context().platformContext(), inflatedRect, controlSize, determineState(o));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -585,7 +585,7 @@
</span><span class="cx"> {
</span><span class="cx"> ASSERT(SafariThemeLibrary());
</span><span class="cx">
</span><del>- paintThemePart(SafariTheme::TextFieldPart, paintInfo.context->platformContext(), r, (NSControlSize)0, determineState(o) & ~FocusedState);
</del><ins>+ paintThemePart(SafariTheme::TextFieldPart, paintInfo.context().platformContext(), r, (NSControlSize)0, determineState(o) & ~FocusedState);
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -598,10 +598,10 @@
</span><span class="cx"> #if defined(SAFARI_THEME_VERSION) && SAFARI_THEME_VERSION >= 1
</span><span class="cx"> ASSERT(SafariThemeLibrary());
</span><span class="cx">
</span><del>- if (paintInfo.context->paintingDisabled())
</del><ins>+ if (paintInfo.context().paintingDisabled())
</ins><span class="cx"> return true;
</span><span class="cx">
</span><del>- paintThemePart(CapsLockPart, paintInfo.context->platformContext(), r, (NSControlSize)0, (ThemeControlState)0);
</del><ins>+ paintThemePart(CapsLockPart, paintInfo.context().platformContext(), r, (NSControlSize)0, (ThemeControlState)0);
</ins><span class="cx">
</span><span class="cx"> return false;
</span><span class="cx"> #else
</span><span class="lines">@@ -613,7 +613,7 @@
</span><span class="cx"> {
</span><span class="cx"> ASSERT(SafariThemeLibrary());
</span><span class="cx">
</span><del>- paintThemePart(SafariTheme::TextAreaPart, paintInfo.context->platformContext(), r, (NSControlSize)0, determineState(o) & ~FocusedState);
</del><ins>+ paintThemePart(SafariTheme::TextAreaPart, paintInfo.context().platformContext(), r, (NSControlSize)0, determineState(o) & ~FocusedState);
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -662,7 +662,7 @@
</span><span class="cx"> if (r.width() >= minimumMenuListSize(o.style()))
</span><span class="cx"> inflatedRect = inflateRect(inflatedRect, size, popupButtonMargins(controlSize));
</span><span class="cx">
</span><del>- paintThemePart(DropDownButtonPart, info.context->platformContext(), inflatedRect, controlSize, determineState(o));
</del><ins>+ paintThemePart(DropDownButtonPart, info.context().platformContext(), inflatedRect, controlSize, determineState(o));
</ins><span class="cx">
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="lines">@@ -723,9 +723,9 @@
</span><span class="cx"> if (r.isEmpty())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- CGContextRef context = paintInfo.context->platformContext();
</del><ins>+ CGContextRef context = paintInfo.context().platformContext();
</ins><span class="cx">
</span><del>- paintInfo.context->save();
</del><ins>+ paintInfo.context().save();
</ins><span class="cx">
</span><span class="cx"> FloatRoundedRect bound = FloatRoundedRect(o.style().getRoundedBorderFor(r));
</span><span class="cx"> int radius = bound.radii().topLeft().width();
</span><span class="lines">@@ -749,34 +749,34 @@
</span><span class="cx"> RetainPtr<CGShadingRef> leftShading = adoptCF(CGShadingCreateAxial(cspace, CGPointMake(r.x(), r.y()), CGPointMake(r.x() + radius, r.y()), mainFunction.get(), false, false));
</span><span class="cx">
</span><span class="cx"> RetainPtr<CGShadingRef> rightShading = adoptCF(CGShadingCreateAxial(cspace, CGPointMake(r.maxX(), r.y()), CGPointMake(r.maxX() - radius, r.y()), mainFunction.get(), false, false));
</span><del>- paintInfo.context->save();
</del><ins>+ paintInfo.context().save();
</ins><span class="cx"> CGContextClipToRect(context, r);
</span><del>- paintInfo.context->clipRoundedRect(bound);
</del><ins>+ paintInfo.context().clipRoundedRect(bound);
</ins><span class="cx"> CGContextDrawShading(context, mainShading.get());
</span><del>- paintInfo.context->restore();
</del><ins>+ paintInfo.context().restore();
</ins><span class="cx">
</span><del>- paintInfo.context->save();
</del><ins>+ paintInfo.context().save();
</ins><span class="cx"> CGContextClipToRect(context, topGradient);
</span><del>- paintInfo.context->clipRoundedRect(FloatRoundedRect(enclosingIntRect(topGradient), bound.radii().topLeft(), bound.radii().topRight(), IntSize(), IntSize()));
</del><ins>+ paintInfo.context().clipRoundedRect(FloatRoundedRect(enclosingIntRect(topGradient), bound.radii().topLeft(), bound.radii().topRight(), IntSize(), IntSize()));
</ins><span class="cx"> CGContextDrawShading(context, topShading.get());
</span><del>- paintInfo.context->restore();
</del><ins>+ paintInfo.context().restore();
</ins><span class="cx">
</span><span class="cx"> if (!bottomGradient.isEmpty()) {
</span><del>- paintInfo.context->save();
</del><ins>+ paintInfo.context().save();
</ins><span class="cx"> CGContextClipToRect(context, bottomGradient);
</span><del>- paintInfo.context->clipRoundedRect(FloatRoundedRect(enclosingIntRect(bottomGradient), IntSize(), IntSize(), bound.radii().bottomLeft(), bound.radii().bottomRight()));
</del><ins>+ paintInfo.context().clipRoundedRect(FloatRoundedRect(enclosingIntRect(bottomGradient), IntSize(), IntSize(), bound.radii().bottomLeft(), bound.radii().bottomRight()));
</ins><span class="cx"> CGContextDrawShading(context, bottomShading.get());
</span><del>- paintInfo.context->restore();
</del><ins>+ paintInfo.context().restore();
</ins><span class="cx"> }
</span><span class="cx">
</span><del>- paintInfo.context->save();
</del><ins>+ paintInfo.context().save();
</ins><span class="cx"> CGContextClipToRect(context, r);
</span><del>- paintInfo.context->clipRoundedRect(bound);
</del><ins>+ paintInfo.context().clipRoundedRect(bound);
</ins><span class="cx"> CGContextDrawShading(context, leftShading.get());
</span><span class="cx"> CGContextDrawShading(context, rightShading.get());
</span><del>- paintInfo.context->restore();
</del><ins>+ paintInfo.context().restore();
</ins><span class="cx">
</span><del>- paintInfo.context->restore();
</del><ins>+ paintInfo.context().restore();
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool RenderThemeSafari::paintMenuListButtonDecorations(const RenderObject& renderer, const PaintInfo& paintInfo, const FloatRect& rect)
</span><span class="lines">@@ -798,10 +798,10 @@
</span><span class="cx"> if (bounds.width() < arrowWidth + arrowPaddingLeft)
</span><span class="cx"> return false;
</span><span class="cx">
</span><del>- paintInfo.context->save();
</del><ins>+ paintInfo.context().save();
</ins><span class="cx">
</span><del>- paintInfo.context->setFillColor(renderer.style().visitedDependentColor(CSSPropertyColor), ColorSpaceDeviceRGB);
- paintInfo.context->setStrokeColor(NoStroke, ColorSpaceDeviceRGB);
</del><ins>+ paintInfo.context().setFillColor(renderer.style().visitedDependentColor(CSSPropertyColor), ColorSpaceDeviceRGB);
+ paintInfo.context().setStrokeColor(NoStroke, ColorSpaceDeviceRGB);
</ins><span class="cx">
</span><span class="cx"> FloatPoint arrow[3];
</span><span class="cx"> arrow[0] = FloatPoint(leftEdge, centerY - arrowHeight / 2.0f);
</span><span class="lines">@@ -809,7 +809,7 @@
</span><span class="cx"> arrow[2] = FloatPoint(leftEdge + arrowWidth / 2.0f, centerY + arrowHeight / 2.0f);
</span><span class="cx">
</span><span class="cx"> // Draw the arrow
</span><del>- paintInfo.context->drawConvexPolygon(3, arrow, true);
</del><ins>+ paintInfo.context().drawConvexPolygon(3, arrow, true);
</ins><span class="cx">
</span><span class="cx"> Color leftSeparatorColor(0, 0, 0, 40);
</span><span class="cx"> Color rightSeparatorColor(255, 255, 255, 40);
</span><span class="lines">@@ -819,17 +819,17 @@
</span><span class="cx"> int leftEdgeOfSeparator = static_cast<int>(leftEdge - arrowPaddingLeft); // FIXME: Round?
</span><span class="cx">
</span><span class="cx"> // Draw the separator to the left of the arrows
</span><del>- paintInfo.context->setStrokeThickness(1);
- paintInfo.context->setStrokeStyle(SolidStroke);
- paintInfo.context->setStrokeColor(leftSeparatorColor, ColorSpaceDeviceRGB);
- paintInfo.context->drawLine(IntPoint(leftEdgeOfSeparator, bounds.y()),
</del><ins>+ paintInfo.context().setStrokeThickness(1);
+ paintInfo.context().setStrokeStyle(SolidStroke);
+ paintInfo.context().setStrokeColor(leftSeparatorColor, ColorSpaceDeviceRGB);
+ paintInfo.context().drawLine(IntPoint(leftEdgeOfSeparator, bounds.y()),
</ins><span class="cx"> IntPoint(leftEdgeOfSeparator, bounds.maxY()));
</span><span class="cx">
</span><del>- paintInfo.context->setStrokeColor(rightSeparatorColor, ColorSpaceDeviceRGB);
- paintInfo.context->drawLine(IntPoint(leftEdgeOfSeparator + separatorSpace, bounds.y()),
</del><ins>+ paintInfo.context().setStrokeColor(rightSeparatorColor, ColorSpaceDeviceRGB);
+ paintInfo.context().drawLine(IntPoint(leftEdgeOfSeparator + separatorSpace, bounds.y()),
</ins><span class="cx"> IntPoint(leftEdgeOfSeparator + separatorSpace, bounds.maxY()));
</span><span class="cx">
</span><del>- paintInfo.context->restore();
</del><ins>+ paintInfo.context().restore();
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -935,10 +935,10 @@
</span><span class="cx"> else if (o.style().appearance() == SliderVerticalPart)
</span><span class="cx"> bounds.setRect(IntRect(r.x() + r.width() / 2 - trackWidth / 2, r.y(), trackWidth, r.height()));
</span><span class="cx">
</span><del>- CGContextRef context = paintInfo.context->platformContext();
</del><ins>+ CGContextRef context = paintInfo.context().platformContext();
</ins><span class="cx"> CGColorSpaceRef cspace = deviceRGBColorSpaceRef();
</span><span class="cx">
</span><del>- paintInfo.context->save();
</del><ins>+ paintInfo.context().save();
</ins><span class="cx"> CGContextClipToRect(context, bounds.rect());
</span><span class="cx">
</span><span class="cx"> struct CGFunctionCallbacks mainCallbacks = { 0, TrackGradientInterpolate, NULL };
</span><span class="lines">@@ -949,9 +949,9 @@
</span><span class="cx"> else
</span><span class="cx"> mainShading = adoptCF(CGShadingCreateAxial(cspace, CGPointMake(bounds.rect().x(), bounds.rect().y()), CGPointMake(bounds.rect().x(), bounds.rect().maxY()), mainFunction.get(), false, false));
</span><span class="cx">
</span><del>- paintInfo.context->clipRoundedRect(bounds);
</del><ins>+ paintInfo.context().clipRoundedRect(bounds);
</ins><span class="cx"> CGContextDrawShading(context, mainShading.get());
</span><del>- paintInfo.context->restore();
</del><ins>+ paintInfo.context().restore();
</ins><span class="cx">
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="lines">@@ -967,7 +967,7 @@
</span><span class="cx"> bool RenderThemeSafari::paintSliderThumb(const RenderObject& o, const PaintInfo& paintInfo, const IntRect& r)
</span><span class="cx"> {
</span><span class="cx"> ASSERT(SafariThemeLibrary());
</span><del>- paintThemePart(SliderThumbPart, paintInfo.context->platformContext(), r, NSSmallControlSize, determineState(o));
</del><ins>+ paintThemePart(SliderThumbPart, paintInfo.context().platformContext(), r, NSSmallControlSize, determineState(o));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -990,7 +990,7 @@
</span><span class="cx"> {
</span><span class="cx"> ASSERT(SafariThemeLibrary());
</span><span class="cx">
</span><del>- paintThemePart(SafariTheme::SearchFieldPart, paintInfo.context->platformContext(), r, controlSizeFromRect(r, searchFieldSizes()), determineState(o));
</del><ins>+ paintThemePart(SafariTheme::SearchFieldPart, paintInfo.context().platformContext(), r, controlSizeFromRect(r, searchFieldSizes()), determineState(o));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1051,7 +1051,7 @@
</span><span class="cx">
</span><span class="cx"> IntRect searchRect = renderer->absoluteBoundingBoxRectIgnoringTransforms();
</span><span class="cx">
</span><del>- paintThemePart(SafariTheme::SearchFieldCancelButtonPart, paintInfo.context->platformContext(), searchRect, controlSizeFromRect(searchRect, searchFieldSizes()), determineState(o));
</del><ins>+ paintThemePart(SafariTheme::SearchFieldCancelButtonPart, paintInfo.context().platformContext(), searchRect, controlSizeFromRect(searchRect, searchFieldSizes()), determineState(o));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1106,7 +1106,7 @@
</span><span class="cx">
</span><span class="cx"> IntRect searchRect = renderer->absoluteBoundingBoxRectIgnoringTransforms();
</span><span class="cx">
</span><del>- paintThemePart(SafariTheme::SearchFieldResultsDecorationPart, paintInfo.context->platformContext(), searchRect, controlSizeFromRect(searchRect, searchFieldSizes()), determineState(o));
</del><ins>+ paintThemePart(SafariTheme::SearchFieldResultsDecorationPart, paintInfo.context().platformContext(), searchRect, controlSizeFromRect(searchRect, searchFieldSizes()), determineState(o));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1130,7 +1130,7 @@
</span><span class="cx">
</span><span class="cx"> IntRect searchRect = renderer->absoluteBoundingBoxRectIgnoringTransforms();
</span><span class="cx">
</span><del>- paintThemePart(SafariTheme::SearchFieldResultsButtonPart, paintInfo.context->platformContext(), searchRect, controlSizeFromRect(searchRect, searchFieldSizes()), determineState(o));
</del><ins>+ paintThemePart(SafariTheme::SearchFieldResultsButtonPart, paintInfo.context().platformContext(), searchRect, controlSizeFromRect(searchRect, searchFieldSizes()), determineState(o));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderThemeWincpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderThemeWin.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderThemeWin.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderThemeWin.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -622,7 +622,7 @@
</span><span class="cx"> return result;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static void drawControl(GraphicsContext* context, const RenderObject& o, HANDLE theme, const ThemeData& themeData, const IntRect& r)
</del><ins>+static void drawControl(GraphicsContext& context, const RenderObject& o, HANDLE theme, const ThemeData& themeData, const IntRect& r)
</ins><span class="cx"> {
</span><span class="cx"> bool alphaBlend = false;
</span><span class="cx"> if (theme)
</span><span class="lines">@@ -677,13 +677,13 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>- if (!alphaBlend && !context->isInTransparencyLayer())
</del><ins>+ if (!alphaBlend && !context.isInTransparencyLayer())
</ins><span class="cx"> DIBPixelData::setRGBABitmapAlpha(windowsContext.hdc(), r, 255);
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool RenderThemeWin::paintButton(const RenderObject& o, const PaintInfo& i, const IntRect& r)
</span><span class="cx"> {
</span><del>- drawControl(i.context, o, buttonTheme(), getThemeData(o), r);
</del><ins>+ drawControl(i.context(), o, buttonTheme(), getThemeData(o), r);
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -707,8 +707,8 @@
</span><span class="cx"> IntRect downRect(r);
</span><span class="cx"> downRect.setY(upRect.maxY());
</span><span class="cx"> downRect.setHeight(r.height() - upRect.height());
</span><del>- drawControl(i.context, o, spinButtonTheme(), getThemeData(o, SpinButtonUp), upRect);
- drawControl(i.context, o, spinButtonTheme(), getThemeData(o, SpinButtonDown), downRect);
</del><ins>+ drawControl(i.context(), o, spinButtonTheme(), getThemeData(o, SpinButtonUp), upRect);
+ drawControl(i.context(), o, spinButtonTheme(), getThemeData(o, SpinButtonDown), downRect);
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -730,7 +730,7 @@
</span><span class="cx">
</span><span class="cx"> bool RenderThemeWin::paintTextField(const RenderObject& o, const PaintInfo& i, const FloatRect& r)
</span><span class="cx"> {
</span><del>- drawControl(i.context, o, textFieldTheme(), getThemeData(o), IntRect(r));
</del><ins>+ drawControl(i.context(), o, textFieldTheme(), getThemeData(o), IntRect(r));
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -746,7 +746,7 @@
</span><span class="cx"> part = TFP_TEXTFIELD;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- drawControl(paintInfo.context, renderer, theme, ThemeData(part, determineState(renderer)), IntRect(rect));
</del><ins>+ drawControl(paintInfo.context(), renderer, theme, ThemeData(part, determineState(renderer)), IntRect(rect));
</ins><span class="cx">
</span><span class="cx"> return paintMenuListButtonDecorations(downcast<RenderBox>(renderer), paintInfo, FloatRect(rect));
</span><span class="cx"> }
</span><span class="lines">@@ -808,7 +808,7 @@
</span><span class="cx"> buttonRect.setWidth(buttonRect.width() + vistaMenuListButtonOutset);
</span><span class="cx"> }
</span><span class="cx">
</span><del>- drawControl(paintInfo.context, renderer, menuListTheme(), getThemeData(renderer), buttonRect);
</del><ins>+ drawControl(paintInfo.context(), renderer, menuListTheme(), getThemeData(renderer), buttonRect);
</ins><span class="cx">
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="lines">@@ -827,13 +827,13 @@
</span><span class="cx"> bounds.setX(r.x() + r.width() / 2 - trackWidth / 2);
</span><span class="cx"> }
</span><span class="cx">
</span><del>- drawControl(i.context, o, sliderTheme(), getThemeData(o), bounds);
</del><ins>+ drawControl(i.context(), o, sliderTheme(), getThemeData(o), bounds);
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool RenderThemeWin::paintSliderThumb(const RenderObject& o, const PaintInfo& i, const IntRect& r)
</span><span class="cx"> {
</span><del>- drawControl(i.context, o, sliderTheme(), getThemeData(o), r);
</del><ins>+ drawControl(i.context(), o, sliderTheme(), getThemeData(o), r);
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -892,7 +892,7 @@
</span><span class="cx">
</span><span class="cx"> static Image* cancelImage = Image::loadPlatformResource("searchCancel").leakRef();
</span><span class="cx"> static Image* cancelPressedImage = Image::loadPlatformResource("searchCancelPressed").leakRef();
</span><del>- paintInfo.context->drawImage(isPressed(o) ? cancelPressedImage : cancelImage, o.style().colorSpace(), bounds);
</del><ins>+ paintInfo.context().drawImage(isPressed(o) ? cancelPressedImage : cancelImage, o.style().colorSpace(), bounds);
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -940,7 +940,7 @@
</span><span class="cx"> bounds.setY(parentBox.y() + (parentBox.height() - bounds.height() + 1) / 2);
</span><span class="cx">
</span><span class="cx"> static Image* magnifierImage = Image::loadPlatformResource("searchMagnifier").leakRef();
</span><del>- paintInfo.context->drawImage(magnifierImage, o.style().colorSpace(), bounds);
</del><ins>+ paintInfo.context().drawImage(magnifierImage, o.style().colorSpace(), bounds);
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -975,7 +975,7 @@
</span><span class="cx"> bounds.setY(parentBox.y() + (parentBox.height() - bounds.height() + 1) / 2);
</span><span class="cx">
</span><span class="cx"> static Image* magnifierImage = Image::loadPlatformResource("searchMagnifierResults").leakRef();
</span><del>- paintInfo.context->drawImage(magnifierImage, o.style().colorSpace(), bounds);
</del><ins>+ paintInfo.context().drawImage(magnifierImage, o.style().colorSpace(), bounds);
</ins><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1139,14 +1139,14 @@
</span><span class="cx"> int remaining = static_cast<int>((1.0 - element->valueRatio()) * static_cast<double>(rect.size().width()));
</span><span class="cx">
</span><span class="cx"> // Draw the background
</span><del>- drawControl(paintInfo.context, renderObject, progressBarTheme(), theme, rect);
</del><ins>+ drawControl(paintInfo.context(), renderObject, progressBarTheme(), theme, rect);
</ins><span class="cx">
</span><span class="cx"> // Draw the progress portion
</span><span class="cx"> IntRect completedRect(rect);
</span><span class="cx"> completedRect.contract(remaining, 0);
</span><span class="cx">
</span><span class="cx"> theme.m_part = PP_FILL;
</span><del>- drawControl(paintInfo.context, renderObject, progressBarTheme(), theme, completedRect);
</del><ins>+ drawControl(paintInfo.context(), renderObject, progressBarTheme(), theme, completedRect);
</ins><span class="cx">
</span><span class="cx"> return true;
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderVideocpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderVideo.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderVideo.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderVideo.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -180,11 +180,11 @@
</span><span class="cx">
</span><span class="cx"> LayoutRect contentRect = contentBoxRect();
</span><span class="cx"> contentRect.moveBy(paintOffset);
</span><del>- GraphicsContext* context = paintInfo.context;
</del><ins>+ GraphicsContext& context = paintInfo.context();
</ins><span class="cx"> bool clip = !contentRect.contains(rect);
</span><del>- GraphicsContextStateSaver stateSaver(*context, clip);
</del><ins>+ GraphicsContextStateSaver stateSaver(context, clip);
</ins><span class="cx"> if (clip)
</span><del>- context->clip(contentRect);
</del><ins>+ context.clip(contentRect);
</ins><span class="cx">
</span><span class="cx"> if (displayingPoster)
</span><span class="cx"> paintIntoRect(context, rect);
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderViewcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderView.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderView.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderView.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -517,7 +517,7 @@
</span><span class="cx">
</span><span class="cx"> // This avoids painting garbage between columns if there is a column gap.
</span><span class="cx"> if (frameView().pagination().mode != Pagination::Unpaginated && paintInfo.shouldPaintWithinRoot(*this))
</span><del>- paintInfo.context->fillRect(paintInfo.rect, frameView().baseBackgroundColor(), ColorSpaceDeviceRGB);
</del><ins>+ paintInfo.context().fillRect(paintInfo.rect, frameView().baseBackgroundColor(), ColorSpaceDeviceRGB);
</ins><span class="cx">
</span><span class="cx"> paintObject(paintInfo, paintOffset);
</span><span class="cx"> }
</span><span class="lines">@@ -613,12 +613,12 @@
</span><span class="cx"> Color documentBackgroundColor = frameView().documentBackgroundColor();
</span><span class="cx"> Color backgroundColor = (backgroundShouldExtendBeyondPage && documentBackgroundColor.isValid()) ? documentBackgroundColor : frameView().baseBackgroundColor();
</span><span class="cx"> if (backgroundColor.alpha()) {
</span><del>- CompositeOperator previousOperator = paintInfo.context->compositeOperation();
- paintInfo.context->setCompositeOperation(CompositeCopy);
- paintInfo.context->fillRect(paintInfo.rect, backgroundColor, style().colorSpace());
- paintInfo.context->setCompositeOperation(previousOperator);
</del><ins>+ CompositeOperator previousOperator = paintInfo.context().compositeOperation();
+ paintInfo.context().setCompositeOperation(CompositeCopy);
+ paintInfo.context().fillRect(paintInfo.rect, backgroundColor, style().colorSpace());
+ paintInfo.context().setCompositeOperation(previousOperator);
</ins><span class="cx"> } else
</span><del>- paintInfo.context->clearRect(paintInfo.rect);
</del><ins>+ paintInfo.context().clearRect(paintInfo.rect);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderWidgetcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderWidget.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderWidget.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RenderWidget.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -228,14 +228,14 @@
</span><span class="cx"> // When painting widgets into compositing layers, tx and ty are relative to the enclosing compositing layer,
</span><span class="cx"> // not the root. In this case, shift the CTM and adjust the paintRect to be root-relative to fix plug-in drawing.
</span><span class="cx"> if (!widgetPaintOffset.isZero()) {
</span><del>- paintInfo.context->translate(widgetPaintOffset);
</del><ins>+ paintInfo.context().translate(widgetPaintOffset);
</ins><span class="cx"> paintRect.move(-widgetPaintOffset);
</span><span class="cx"> }
</span><span class="cx"> // FIXME: Remove repaintrect encolsing/integral snapping when RenderWidget becomes device pixel snapped.
</span><del>- m_widget->paint(paintInfo.context, snappedIntRect(paintRect));
</del><ins>+ m_widget->paint(paintInfo.context(), snappedIntRect(paintRect));
</ins><span class="cx">
</span><span class="cx"> if (!widgetPaintOffset.isZero())
</span><del>- paintInfo.context->translate(-widgetPaintOffset);
</del><ins>+ paintInfo.context().translate(-widgetPaintOffset);
</ins><span class="cx">
</span><span class="cx"> if (is<FrameView>(*m_widget)) {
</span><span class="cx"> FrameView& frameView = downcast<FrameView>(*m_widget);
</span><span class="lines">@@ -275,26 +275,26 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> // Push a clip if we have a border radius, since we want to round the foreground content that gets painted.
</span><del>- paintInfo.context->save();
</del><ins>+ paintInfo.context().save();
</ins><span class="cx"> FloatRoundedRect roundedInnerRect = FloatRoundedRect(style().getRoundedInnerBorderFor(borderRect,
</span><span class="cx"> paddingTop() + borderTop(), paddingBottom() + borderBottom(), paddingLeft() + borderLeft(), paddingRight() + borderRight(), true, true));
</span><del>- clipRoundedInnerRect(paintInfo.context, borderRect, roundedInnerRect);
</del><ins>+ clipRoundedInnerRect(paintInfo.context(), borderRect, roundedInnerRect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (m_widget)
</span><span class="cx"> paintContents(paintInfo, paintOffset);
</span><span class="cx">
</span><span class="cx"> if (style().hasBorderRadius())
</span><del>- paintInfo.context->restore();
</del><ins>+ paintInfo.context().restore();
</ins><span class="cx">
</span><span class="cx"> // Paint a partially transparent wash over selected widgets.
</span><span class="cx"> if (isSelected() && !document().printing()) {
</span><span class="cx"> // FIXME: selectionRect() is in absolute, not painting coordinates.
</span><del>- paintInfo.context->fillRect(snappedIntRect(selectionRect()), selectionBackgroundColor(), style().colorSpace());
</del><ins>+ paintInfo.context().fillRect(snappedIntRect(selectionRect()), selectionBackgroundColor(), style().colorSpace());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (hasLayer() && layer()->canResize())
</span><del>- layer()->paintResizer(paintInfo.context, roundedIntPoint(adjustedPaintOffset), paintInfo.rect);
</del><ins>+ layer()->paintResizer(paintInfo.context(), roundedIntPoint(adjustedPaintOffset), paintInfo.rect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderWidget::setOverlapTestResult(bool isOverlapped)
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRootInlineBoxcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RootInlineBox.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RootInlineBox.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/RootInlineBox.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -475,7 +475,7 @@
</span><span class="cx"> LayoutRect gapRect = rootBlock.logicalRectToPhysicalRect(rootBlockPhysicalPosition, logicalRect);
</span><span class="cx"> if (isPreviousBoxSelected && gapRect.width() > 0 && gapRect.height() > 0) {
</span><span class="cx"> if (paintInfo && box->parent()->renderer().style().visibility() == VISIBLE)
</span><del>- paintInfo->context->fillRect(gapRect, box->parent()->renderer().selectionBackgroundColor(), box->parent()->renderer().style().colorSpace());
</del><ins>+ paintInfo->context().fillRect(gapRect, box->parent()->renderer().selectionBackgroundColor(), box->parent()->renderer().style().colorSpace());
</ins><span class="cx"> // VisibleSelection may be non-contiguous, see comment above.
</span><span class="cx"> result.uniteCenter(gapRect);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingSimpleLineLayoutFunctionscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/SimpleLineLayoutFunctions.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/SimpleLineLayoutFunctions.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/SimpleLineLayoutFunctions.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -69,7 +69,7 @@
</span><span class="cx">
</span><span class="cx"> bool debugBordersEnabled = flow.frame().settings().simpleLineLayoutDebugBordersEnabled();
</span><span class="cx">
</span><del>- GraphicsContext& context = *paintInfo.context;
</del><ins>+ GraphicsContext& context = paintInfo.context();
</ins><span class="cx"> const FontCascade& font = style.fontCascade();
</span><span class="cx"> TextPaintStyle textPaintStyle = computeTextPaintStyle(flow.frame(), style, paintInfo);
</span><span class="cx"> GraphicsContextStateSaver stateSaver(context, textPaintStyle.strokeWidth > 0);
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingmathmlRenderMathMLBlockcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLBlock.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/mathml/RenderMathMLBlock.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLBlock.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -95,33 +95,33 @@
</span><span class="cx"> {
</span><span class="cx"> RenderFlexibleBox::paint(info, paintOffset);
</span><span class="cx">
</span><del>- if (info.context->paintingDisabled() || info.phase != PaintPhaseForeground)
</del><ins>+ if (info.context().paintingDisabled() || info.phase != PaintPhaseForeground)
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> IntPoint adjustedPaintOffset = roundedIntPoint(paintOffset + location());
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*info.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(info.context());
</ins><span class="cx">
</span><del>- info.context->setStrokeThickness(1.0f);
- info.context->setStrokeStyle(SolidStroke);
- info.context->setStrokeColor(Color(0, 0, 255), ColorSpaceSRGB);
</del><ins>+ info.context().setStrokeThickness(1.0f);
+ info.context().setStrokeStyle(SolidStroke);
+ info.context().setStrokeColor(Color(0, 0, 255), ColorSpaceSRGB);
</ins><span class="cx">
</span><del>- info.context->drawLine(adjustedPaintOffset, IntPoint(adjustedPaintOffset.x() + pixelSnappedOffsetWidth(), adjustedPaintOffset.y()));
- info.context->drawLine(IntPoint(adjustedPaintOffset.x() + pixelSnappedOffsetWidth(), adjustedPaintOffset.y()), IntPoint(adjustedPaintOffset.x() + pixelSnappedOffsetWidth(), adjustedPaintOffset.y() + pixelSnappedOffsetHeight()));
- info.context->drawLine(IntPoint(adjustedPaintOffset.x(), adjustedPaintOffset.y() + pixelSnappedOffsetHeight()), IntPoint(adjustedPaintOffset.x() + pixelSnappedOffsetWidth(), adjustedPaintOffset.y() + pixelSnappedOffsetHeight()));
- info.context->drawLine(adjustedPaintOffset, IntPoint(adjustedPaintOffset.x(), adjustedPaintOffset.y() + pixelSnappedOffsetHeight()));
</del><ins>+ info.context().drawLine(adjustedPaintOffset, IntPoint(adjustedPaintOffset.x() + pixelSnappedOffsetWidth(), adjustedPaintOffset.y()));
+ info.context().drawLine(IntPoint(adjustedPaintOffset.x() + pixelSnappedOffsetWidth(), adjustedPaintOffset.y()), IntPoint(adjustedPaintOffset.x() + pixelSnappedOffsetWidth(), adjustedPaintOffset.y() + pixelSnappedOffsetHeight()));
+ info.context().drawLine(IntPoint(adjustedPaintOffset.x(), adjustedPaintOffset.y() + pixelSnappedOffsetHeight()), IntPoint(adjustedPaintOffset.x() + pixelSnappedOffsetWidth(), adjustedPaintOffset.y() + pixelSnappedOffsetHeight()));
+ info.context().drawLine(adjustedPaintOffset, IntPoint(adjustedPaintOffset.x(), adjustedPaintOffset.y() + pixelSnappedOffsetHeight()));
</ins><span class="cx">
</span><span class="cx"> int topStart = paddingTop();
</span><span class="cx">
</span><del>- info.context->setStrokeColor(Color(0, 255, 0), ColorSpaceSRGB);
</del><ins>+ info.context().setStrokeColor(Color(0, 255, 0), ColorSpaceSRGB);
</ins><span class="cx">
</span><del>- info.context->drawLine(IntPoint(adjustedPaintOffset.x(), adjustedPaintOffset.y() + topStart), IntPoint(adjustedPaintOffset.x() + pixelSnappedOffsetWidth(), adjustedPaintOffset.y() + topStart));
</del><ins>+ info.context().drawLine(IntPoint(adjustedPaintOffset.x(), adjustedPaintOffset.y() + topStart), IntPoint(adjustedPaintOffset.x() + pixelSnappedOffsetWidth(), adjustedPaintOffset.y() + topStart));
</ins><span class="cx">
</span><span class="cx"> int baseline = roundToInt(baselinePosition(AlphabeticBaseline, true, HorizontalLine));
</span><span class="cx">
</span><del>- info.context->setStrokeColor(Color(255, 0, 0), ColorSpaceSRGB);
</del><ins>+ info.context().setStrokeColor(Color(255, 0, 0), ColorSpaceSRGB);
</ins><span class="cx">
</span><del>- info.context->drawLine(IntPoint(adjustedPaintOffset.x(), adjustedPaintOffset.y() + baseline), IntPoint(adjustedPaintOffset.x() + pixelSnappedOffsetWidth(), adjustedPaintOffset.y() + baseline));
</del><ins>+ info.context().drawLine(IntPoint(adjustedPaintOffset.x(), adjustedPaintOffset.y() + baseline), IntPoint(adjustedPaintOffset.x() + pixelSnappedOffsetWidth(), adjustedPaintOffset.y() + baseline));
</ins><span class="cx"> }
</span><span class="cx"> #endif // ENABLE(DEBUG_MATH_LAYOUT)
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingmathmlRenderMathMLFractioncpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -141,7 +141,7 @@
</span><span class="cx"> void RenderMathMLFraction::paint(PaintInfo& info, const LayoutPoint& paintOffset)
</span><span class="cx"> {
</span><span class="cx"> RenderMathMLBlock::paint(info, paintOffset);
</span><del>- if (info.context->paintingDisabled() || info.phase != PaintPhaseForeground || style().visibility() != VISIBLE)
</del><ins>+ if (info.context().paintingDisabled() || info.phase != PaintPhaseForeground || style().visibility() != VISIBLE)
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> RenderBox* denominatorWrapper = lastChildBox();
</span><span class="lines">@@ -150,12 +150,12 @@
</span><span class="cx">
</span><span class="cx"> IntPoint adjustedPaintOffset = roundedIntPoint(paintOffset + location() + denominatorWrapper->location() + LayoutPoint(0, m_lineThickness / 2));
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*info.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(info.context());
</ins><span class="cx">
</span><del>- info.context->setStrokeThickness(m_lineThickness);
- info.context->setStrokeStyle(SolidStroke);
- info.context->setStrokeColor(style().visitedDependentColor(CSSPropertyColor), ColorSpaceSRGB);
- info.context->drawLine(adjustedPaintOffset, roundedIntPoint(LayoutPoint(adjustedPaintOffset.x() + denominatorWrapper->offsetWidth(), adjustedPaintOffset.y())));
</del><ins>+ info.context().setStrokeThickness(m_lineThickness);
+ info.context().setStrokeStyle(SolidStroke);
+ info.context().setStrokeColor(style().visitedDependentColor(CSSPropertyColor), ColorSpaceSRGB);
+ info.context().drawLine(adjustedPaintOffset, roundedIntPoint(LayoutPoint(adjustedPaintOffset.x() + denominatorWrapper->offsetWidth(), adjustedPaintOffset.y())));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> Optional<int> RenderMathMLFraction::firstLineBaseline() const
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingmathmlRenderMathMLMenclosecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLMenclose.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/mathml/RenderMathMLMenclose.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLMenclose.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -98,7 +98,7 @@
</span><span class="cx"> {
</span><span class="cx"> RenderMathMLBlock::paint(info, paintOffset);
</span><span class="cx">
</span><del>- if (info.context->paintingDisabled() || info.phase != PaintPhaseForeground || style().visibility() != VISIBLE)
</del><ins>+ if (info.context().paintingDisabled() || info.phase != PaintPhaseForeground || style().visibility() != VISIBLE)
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> MathMLMencloseElement* menclose = downcast<MathMLMencloseElement>(element());
</span><span class="lines">@@ -114,23 +114,23 @@
</span><span class="cx"> int halfboxWidth = rect.width() / 2;
</span><span class="cx"> int halfboxHeight = rect.height() / 2;
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*info.context);
- info.context->setStrokeThickness(1);
- info.context->setStrokeStyle(SolidStroke);
- info.context->setStrokeColor(style().visitedDependentColor(CSSPropertyColor), ColorSpaceDeviceRGB);
</del><ins>+ GraphicsContextStateSaver stateSaver(info.context());
+ info.context().setStrokeThickness(1);
+ info.context().setStrokeStyle(SolidStroke);
+ info.context().setStrokeColor(style().visitedDependentColor(CSSPropertyColor), ColorSpaceDeviceRGB);
</ins><span class="cx"> // TODO add support for notation value updiagonalarrow https://bugs.webkit.org/show_bug.cgi?id=127466
</span><span class="cx"> for (size_t i = 0; i < notationalValueSize; i++) {
</span><span class="cx"> if (notationValues[i] == "updiagonalstrike")
</span><del>- info.context->drawLine(IntPoint(left, top + boxHeight), IntPoint(left + boxWidth, top));
</del><ins>+ info.context().drawLine(IntPoint(left, top + boxHeight), IntPoint(left + boxWidth, top));
</ins><span class="cx"> else if (notationValues[i] == "downdiagonalstrike")
</span><del>- info.context->drawLine(IntPoint(left, top), IntPoint(left + boxWidth, top + boxHeight));
</del><ins>+ info.context().drawLine(IntPoint(left, top), IntPoint(left + boxWidth, top + boxHeight));
</ins><span class="cx"> else if (notationValues[i] == "verticalstrike")
</span><del>- info.context->drawLine(IntPoint(left + halfboxWidth, top), IntPoint(left + halfboxWidth, top + boxHeight));
</del><ins>+ info.context().drawLine(IntPoint(left + halfboxWidth, top), IntPoint(left + halfboxWidth, top + boxHeight));
</ins><span class="cx"> else if (notationValues[i] == "horizontalstrike")
</span><del>- info.context->drawLine(IntPoint(left, top + halfboxHeight), IntPoint(left + boxWidth, top + halfboxHeight));
</del><ins>+ info.context().drawLine(IntPoint(left, top + halfboxHeight), IntPoint(left + boxWidth, top + halfboxHeight));
</ins><span class="cx"> else if (notationValues[i] == "circle") {
</span><del>- info.context->setFillColor(Color::transparent, ColorSpaceDeviceRGB);
- info.context->drawEllipse(rect);
</del><ins>+ info.context().setFillColor(Color::transparent, ColorSpaceDeviceRGB);
+ info.context().drawEllipse(rect);
</ins><span class="cx"> } else if (notationValues[i] == "longdiv")
</span><span class="cx"> isDefaultLongDiv = true;
</span><span class="cx"> }
</span><span class="lines">@@ -144,9 +144,9 @@
</span><span class="cx"> else
</span><span class="cx"> midxPoint = style().paddingLeft().value();
</span><span class="cx"> root.addBezierCurveTo(FloatPoint(left, top), FloatPoint(left + midxPoint, top + halfboxHeight), FloatPoint(left, top + boxHeight));
</span><del>- info.context->strokePath(root);
</del><ins>+ info.context().strokePath(root);
</ins><span class="cx"> if (isDefaultLongDiv)
</span><del>- info.context->drawLine(IntPoint(left, top), IntPoint(left + boxWidth + midxPoint, top));
</del><ins>+ info.context().drawLine(IntPoint(left, top), IntPoint(left + boxWidth + midxPoint, top));
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingmathmlRenderMathMLOperatorcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1797,12 +1797,12 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Clipping the enclosing IntRect avoids any potential issues at joined edges.
</span><del>- GraphicsContextStateSaver stateSaver(*info.context);
- info.context->clip(clipBounds);
</del><ins>+ GraphicsContextStateSaver stateSaver(info.context());
+ info.context().clip(clipBounds);
</ins><span class="cx">
</span><span class="cx"> GlyphBuffer buffer;
</span><span class="cx"> buffer.add(data.glyph, data.font, advanceForGlyph(data));
</span><del>- info.context->drawGlyphs(style().fontCascade(), *data.font, buffer, 0, 1, origin);
</del><ins>+ info.context().drawGlyphs(style().fontCascade(), *data.font, buffer, 0, 1, origin);
</ins><span class="cx">
</span><span class="cx"> return glyphPaintRect;
</span><span class="cx"> }
</span><span class="lines">@@ -1818,7 +1818,7 @@
</span><span class="cx"> if (from.y() == to.y())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*info.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(info.context());
</ins><span class="cx">
</span><span class="cx"> FloatRect glyphBounds = boundsForGlyph(m_stretchyData.extension());
</span><span class="cx">
</span><span class="lines">@@ -1827,7 +1827,7 @@
</span><span class="cx"> LayoutRect clipBounds = info.rect;
</span><span class="cx"> clipBounds.shiftYEdgeTo(from.y());
</span><span class="cx"> clipBounds.shiftMaxYEdgeTo(to.y());
</span><del>- info.context->clip(clipBounds);
</del><ins>+ info.context().clip(clipBounds);
</ins><span class="cx">
</span><span class="cx"> // Trimming may remove up to two pixels from the top of the extender glyph, so we move it up by two pixels.
</span><span class="cx"> float offsetToGlyphTop = glyphBounds.y() + 2;
</span><span class="lines">@@ -1856,14 +1856,14 @@
</span><span class="cx"> if (from.x() == to.x())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*info.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(info.context());
</ins><span class="cx">
</span><span class="cx"> // Clipping the extender region here allows us to draw the bottom extender glyph into the
</span><span class="cx"> // regions of the bottom glyph without worrying about overdraw (hairy pixels) and simplifies later clipping.
</span><span class="cx"> LayoutRect clipBounds = info.rect;
</span><span class="cx"> clipBounds.shiftXEdgeTo(from.x());
</span><span class="cx"> clipBounds.shiftMaxXEdgeTo(to.x());
</span><del>- info.context->clip(clipBounds);
</del><ins>+ info.context().clip(clipBounds);
</ins><span class="cx">
</span><span class="cx"> // Trimming may remove up to two pixels from the left of the extender glyph, so we move it left by two pixels.
</span><span class="cx"> float offsetToGlyphLeft = -2;
</span><span class="lines">@@ -1885,11 +1885,11 @@
</span><span class="cx"> {
</span><span class="cx"> RenderMathMLToken::paint(info, paintOffset);
</span><span class="cx">
</span><del>- if (info.context->paintingDisabled() || info.phase != PaintPhaseForeground || style().visibility() != VISIBLE || m_stretchyData.mode() == DrawNormal)
</del><ins>+ if (info.context().paintingDisabled() || info.phase != PaintPhaseForeground || style().visibility() != VISIBLE || m_stretchyData.mode() == DrawNormal)
</ins><span class="cx"> return;
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*info.context);
- info.context->setFillColor(style().visitedDependentColor(CSSPropertyColor), style().colorSpace());
</del><ins>+ GraphicsContextStateSaver stateSaver(info.context());
+ info.context().setFillColor(style().visitedDependentColor(CSSPropertyColor), style().colorSpace());
</ins><span class="cx">
</span><span class="cx"> if (m_stretchyData.mode() == DrawSizeVariant) {
</span><span class="cx"> ASSERT(m_stretchyData.variant().glyph);
</span><span class="lines">@@ -1898,7 +1898,7 @@
</span><span class="cx"> LayoutPoint operatorTopLeft = ceiledIntPoint(paintOffset + location());
</span><span class="cx"> FloatRect glyphBounds = boundsForGlyph(m_stretchyData.variant());
</span><span class="cx"> LayoutPoint operatorOrigin(operatorTopLeft.x(), operatorTopLeft.y() - glyphBounds.y());
</span><del>- info.context->drawGlyphs(style().fontCascade(), *m_stretchyData.variant().font, buffer, 0, 1, operatorOrigin);
</del><ins>+ info.context().drawGlyphs(style().fontCascade(), *m_stretchyData.variant().font, buffer, 0, 1, operatorOrigin);
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingmathmlRenderMathMLRadicalOperatorcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLRadicalOperator.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/mathml/RenderMathMLRadicalOperator.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLRadicalOperator.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -108,7 +108,7 @@
</span><span class="cx">
</span><span class="cx"> void RenderMathMLRadicalOperator::paint(PaintInfo& info, const LayoutPoint& paintOffset)
</span><span class="cx"> {
</span><del>- if (info.context->paintingDisabled() || info.phase != PaintPhaseForeground || style().visibility() != VISIBLE)
</del><ins>+ if (info.context().paintingDisabled() || info.phase != PaintPhaseForeground || style().visibility() != VISIBLE)
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> if (style().fontCascade().primaryFont().mathData()) {
</span><span class="lines">@@ -129,13 +129,13 @@
</span><span class="cx"> FloatPoint dipLeftPoint(startX - gRadicalDipLeftPointXFront * frontWidth, adjustedPaintOffset.y() + radicalDipLeftPointYPos);
</span><span class="cx"> FloatPoint leftEnd(startX - frontWidth, dipLeftPoint.y() + gRadicalLeftEndYShiftEms * style().fontSize());
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*info.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(info.context());
</ins><span class="cx">
</span><del>- info.context->setStrokeThickness(gRadicalLineThicknessEms * style().fontSize());
- info.context->setStrokeStyle(SolidStroke);
- info.context->setStrokeColor(style().visitedDependentColor(CSSPropertyColor), ColorSpaceDeviceRGB);
- info.context->setLineJoin(MiterJoin);
- info.context->setMiterLimit(style().fontSize());
</del><ins>+ info.context().setStrokeThickness(gRadicalLineThicknessEms * style().fontSize());
+ info.context().setStrokeStyle(SolidStroke);
+ info.context().setStrokeColor(style().visitedDependentColor(CSSPropertyColor), ColorSpaceDeviceRGB);
+ info.context().setLineJoin(MiterJoin);
+ info.context().setMiterLimit(style().fontSize());
</ins><span class="cx">
</span><span class="cx"> Path root;
</span><span class="cx">
</span><span class="lines">@@ -147,9 +147,9 @@
</span><span class="cx"> // draw to end
</span><span class="cx"> root.addLineTo(leftEnd);
</span><span class="cx">
</span><del>- info.context->strokePath(root);
</del><ins>+ info.context().strokePath(root);
</ins><span class="cx">
</span><del>- GraphicsContextStateSaver maskStateSaver(*info.context);
</del><ins>+ GraphicsContextStateSaver maskStateSaver(info.context());
</ins><span class="cx">
</span><span class="cx"> // Build a mask to draw the thick part of the root.
</span><span class="cx"> Path mask;
</span><span class="lines">@@ -159,17 +159,17 @@
</span><span class="cx"> mask.addLineTo(dipLeftPoint);
</span><span class="cx"> mask.addLineTo(FloatPoint(2 * dipLeftPoint.x() - leftEnd.x(), 2 * dipLeftPoint.y() - leftEnd.y()));
</span><span class="cx">
</span><del>- info.context->clip(mask);
</del><ins>+ info.context().clip(mask);
</ins><span class="cx">
</span><span class="cx"> // Draw the thick part of the root.
</span><del>- info.context->setStrokeThickness(gRadicalThickLineThicknessEms * style().fontSize());
- info.context->setLineCap(SquareCap);
</del><ins>+ info.context().setStrokeThickness(gRadicalThickLineThicknessEms * style().fontSize());
+ info.context().setLineCap(SquareCap);
</ins><span class="cx">
</span><span class="cx"> Path line;
</span><span class="cx"> line.moveTo(bottomPoint);
</span><span class="cx"> line.addLineTo(dipLeftPoint);
</span><span class="cx">
</span><del>- info.context->strokePath(line);
</del><ins>+ info.context().strokePath(line);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingmathmlRenderMathMLRootcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLRoot.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/mathml/RenderMathMLRoot.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLRoot.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -319,7 +319,7 @@
</span><span class="cx"> {
</span><span class="cx"> RenderMathMLBlock::paint(info, paintOffset);
</span><span class="cx">
</span><del>- if (isEmpty() || info.context->paintingDisabled() || style().visibility() != VISIBLE)
</del><ins>+ if (isEmpty() || info.context().paintingDisabled() || style().visibility() != VISIBLE)
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> auto base = baseWrapper();
</span><span class="lines">@@ -328,16 +328,16 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> // We draw the radical line.
</span><del>- GraphicsContextStateSaver stateSaver(*info.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(info.context());
</ins><span class="cx">
</span><del>- info.context->setStrokeThickness(m_ruleThickness);
- info.context->setStrokeStyle(SolidStroke);
- info.context->setStrokeColor(style().visitedDependentColor(CSSPropertyColor), ColorSpaceDeviceRGB);
</del><ins>+ info.context().setStrokeThickness(m_ruleThickness);
+ info.context().setStrokeStyle(SolidStroke);
+ info.context().setStrokeColor(style().visitedDependentColor(CSSPropertyColor), ColorSpaceDeviceRGB);
</ins><span class="cx">
</span><span class="cx"> // The preferred width of the radical is sometimes incorrect, so we draw a slightly longer line to ensure it touches the radical symbol (https://bugs.webkit.org/show_bug.cgi?id=130326).
</span><span class="cx"> LayoutUnit sizeError = radical->trailingSpaceError();
</span><span class="cx"> IntPoint adjustedPaintOffset = roundedIntPoint(paintOffset + location() + base->location() + LayoutPoint(-sizeError, -(m_verticalGap + m_ruleThickness / 2)));
</span><del>- info.context->drawLine(adjustedPaintOffset, roundedIntPoint(LayoutPoint(adjustedPaintOffset.x() + base->offsetWidth() + sizeError, adjustedPaintOffset.y())));
</del><ins>+ info.context().drawLine(adjustedPaintOffset, roundedIntPoint(LayoutPoint(adjustedPaintOffset.x() + base->offsetWidth() + sizeError, adjustedPaintOffset.y())));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> RenderPtr<RenderMathMLRootWrapper> RenderMathMLRootWrapper::createAnonymousWrapper(RenderMathMLRoot* renderObject)
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingshapesShapecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/shapes/Shape.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/shapes/Shape.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/shapes/Shape.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -182,8 +182,8 @@
</span><span class="cx"> std::unique_ptr<ImageBuffer> imageBuffer = ImageBuffer::create(imageRect.size());
</span><span class="cx">
</span><span class="cx"> if (imageBuffer) {
</span><del>- GraphicsContext* graphicsContext = imageBuffer->context();
- graphicsContext->drawImage(image, ColorSpaceDeviceRGB, IntRect(IntPoint(), imageRect.size()));
</del><ins>+ GraphicsContext& graphicsContext = imageBuffer->context();
+ graphicsContext.drawImage(image, ColorSpaceDeviceRGB, IntRect(IntPoint(), imageRect.size()));
</ins><span class="cx">
</span><span class="cx"> RefPtr<Uint8ClampedArray> pixelArray = imageBuffer->getUnmultipliedImageData(IntRect(IntPoint(), imageRect.size()));
</span><span class="cx"> unsigned pixelArrayLength = pixelArray->length();
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingstyleNinePieceImagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/style/NinePieceImage.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/style/NinePieceImage.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/style/NinePieceImage.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -208,7 +208,7 @@
</span><span class="cx"> return Vector<FloatSize>(MaxPiece, FloatSize(1, 1));
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void NinePieceImage::paint(GraphicsContext* graphicsContext, RenderElement* renderer, const RenderStyle& style, const LayoutRect& destination, const LayoutSize& source, bool intrinsicSource, float deviceScaleFactor, CompositeOperator op) const
</del><ins>+void NinePieceImage::paint(GraphicsContext& graphicsContext, RenderElement* renderer, const RenderStyle& style, const LayoutRect& destination, const LayoutSize& source, bool intrinsicSource, float deviceScaleFactor, CompositeOperator op) const
</ins><span class="cx"> {
</span><span class="cx"> StyleImage* styleImage = image();
</span><span class="cx"> ASSERT(styleImage && styleImage->isLoaded());
</span><span class="lines">@@ -238,13 +238,13 @@
</span><span class="cx"> continue;
</span><span class="cx">
</span><span class="cx"> if (isCornerPiece(piece)) {
</span><del>- graphicsContext->drawImage(image.get(), colorSpace, destinationRects[piece], sourceRects[piece], op);
</del><ins>+ graphicsContext.drawImage(image.get(), colorSpace, destinationRects[piece], sourceRects[piece], op);
</ins><span class="cx"> continue;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> Image::TileRule hRule = isHorizontalPiece(piece) ? static_cast<Image::TileRule>(horizontalRule()) : Image::StretchTile;
</span><span class="cx"> Image::TileRule vRule = isVerticalPiece(piece) ? static_cast<Image::TileRule>(verticalRule()) : Image::StretchTile;
</span><del>- graphicsContext->drawTiledImage(image.get(), colorSpace, destinationRects[piece], sourceRects[piece], tileScales[piece], hRule, vRule, op);
</del><ins>+ graphicsContext.drawTiledImage(image.get(), colorSpace, destinationRects[piece], sourceRects[piece], tileScales[piece], hRule, vRule, op);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingstyleNinePieceImageh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/style/NinePieceImage.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/style/NinePieceImage.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/style/NinePieceImage.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -206,7 +206,7 @@
</span><span class="cx"> static Vector<FloatSize> computeIntrinsicTileScales(const Vector<FloatRect>& destinationRects, const Vector<FloatRect>& sourceRects, ENinePieceImageRule hRule, ENinePieceImageRule vRule);
</span><span class="cx"> static Vector<FloatSize> computeNonIntrinsicTileScales();
</span><span class="cx">
</span><del>- void paint(GraphicsContext*, RenderElement*, const RenderStyle&, const LayoutRect& destination, const LayoutSize& source, bool intrinsicSource, float deviceScaleFactor, CompositeOperator) const;
</del><ins>+ void paint(GraphicsContext&, RenderElement*, const RenderStyle&, const LayoutRect& destination, const LayoutSize& source, bool intrinsicSource, float deviceScaleFactor, CompositeOperator) const;
</ins><span class="cx">
</span><span class="cx"> private:
</span><span class="cx"> DataRef<NinePieceImageData> m_data;
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGContainercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGContainer.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGContainer.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGContainer.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -108,7 +108,7 @@
</span><span class="cx">
</span><span class="cx"> void RenderSVGContainer::paint(PaintInfo& paintInfo, const LayoutPoint&)
</span><span class="cx"> {
</span><del>- if (paintInfo.context->paintingDisabled())
</del><ins>+ if (paintInfo.context().paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> // Spec: groups w/o children still may render filter content.
</span><span class="lines">@@ -121,7 +121,7 @@
</span><span class="cx">
</span><span class="cx"> PaintInfo childPaintInfo(paintInfo);
</span><span class="cx"> {
</span><del>- GraphicsContextStateSaver stateSaver(*childPaintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(childPaintInfo.context());
</ins><span class="cx">
</span><span class="cx"> // Let the RenderSVGViewportContainer subclass clip if necessary
</span><span class="cx"> applyViewportClip(childPaintInfo);
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGEllipsecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGEllipse.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGEllipse.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGEllipse.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -93,16 +93,16 @@
</span><span class="cx"> lengthContext.valueForLength(style().svgStyle().ry(), LengthModeHeight));
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderSVGEllipse::fillShape(GraphicsContext* context) const
</del><ins>+void RenderSVGEllipse::fillShape(GraphicsContext& context) const
</ins><span class="cx"> {
</span><span class="cx"> if (m_usePathFallback) {
</span><span class="cx"> RenderSVGShape::fillShape(context);
</span><span class="cx"> return;
</span><span class="cx"> }
</span><del>- context->fillEllipse(m_fillBoundingBox);
</del><ins>+ context.fillEllipse(m_fillBoundingBox);
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderSVGEllipse::strokeShape(GraphicsContext* context) const
</del><ins>+void RenderSVGEllipse::strokeShape(GraphicsContext& context) const
</ins><span class="cx"> {
</span><span class="cx"> if (!style().svgStyle().hasVisibleStroke())
</span><span class="cx"> return;
</span><span class="lines">@@ -110,7 +110,7 @@
</span><span class="cx"> RenderSVGShape::strokeShape(context);
</span><span class="cx"> return;
</span><span class="cx"> }
</span><del>- context->strokeEllipse(m_fillBoundingBox);
</del><ins>+ context.strokeEllipse(m_fillBoundingBox);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool RenderSVGEllipse::shapeDependentStrokeContains(const FloatPoint& point)
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGEllipseh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGEllipse.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGEllipse.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGEllipse.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -42,8 +42,8 @@
</span><span class="cx"> virtual void updateShapeFromElement() override;
</span><span class="cx"> virtual bool isEmpty() const override { return m_usePathFallback ? RenderSVGShape::isEmpty() : m_fillBoundingBox.isEmpty(); }
</span><span class="cx"> virtual bool isRenderingDisabled() const override;
</span><del>- virtual void fillShape(GraphicsContext*) const override;
- virtual void strokeShape(GraphicsContext*) const override;
</del><ins>+ virtual void fillShape(GraphicsContext&) const override;
+ virtual void strokeShape(GraphicsContext&) const override;
</ins><span class="cx"> virtual bool shapeDependentStrokeContains(const FloatPoint&) override;
</span><span class="cx"> virtual bool shapeDependentFillContains(const FloatPoint&, const WindRule) const override;
</span><span class="cx"> void calculateRadiiAndCenter();
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGForeignObjectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGForeignObject.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGForeignObject.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGForeignObject.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -53,18 +53,18 @@
</span><span class="cx">
</span><span class="cx"> void RenderSVGForeignObject::paint(PaintInfo& paintInfo, const LayoutPoint&)
</span><span class="cx"> {
</span><del>- if (paintInfo.context->paintingDisabled())
</del><ins>+ if (paintInfo.context().paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> if (paintInfo.phase != PaintPhaseForeground && paintInfo.phase != PaintPhaseSelection)
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> PaintInfo childPaintInfo(paintInfo);
</span><del>- GraphicsContextStateSaver stateSaver(*childPaintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(childPaintInfo.context());
</ins><span class="cx"> childPaintInfo.applyTransform(localTransform());
</span><span class="cx">
</span><span class="cx"> if (SVGRenderSupport::isOverflowHidden(*this))
</span><del>- childPaintInfo.context->clip(m_viewport);
</del><ins>+ childPaintInfo.context().clip(m_viewport);
</ins><span class="cx">
</span><span class="cx"> SVGRenderingContext renderingContext;
</span><span class="cx"> if (paintInfo.phase == PaintPhaseForeground) {
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGImagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGImage.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGImage.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGImage.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -131,7 +131,7 @@
</span><span class="cx">
</span><span class="cx"> void RenderSVGImage::paint(PaintInfo& paintInfo, const LayoutPoint&)
</span><span class="cx"> {
</span><del>- if (paintInfo.context->paintingDisabled() || paintInfo.phase != PaintPhaseForeground
</del><ins>+ if (paintInfo.context().paintingDisabled() || paintInfo.phase != PaintPhaseForeground
</ins><span class="cx"> || style().visibility() == HIDDEN || !imageResource().hasImage())
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="lines">@@ -140,14 +140,14 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> PaintInfo childPaintInfo(paintInfo);
</span><del>- GraphicsContextStateSaver stateSaver(*childPaintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(childPaintInfo.context());
</ins><span class="cx"> childPaintInfo.applyTransform(m_localTransform);
</span><span class="cx">
</span><span class="cx"> if (childPaintInfo.phase == PaintPhaseForeground) {
</span><span class="cx"> SVGRenderingContext renderingContext(*this, childPaintInfo);
</span><span class="cx">
</span><span class="cx"> if (renderingContext.isRenderingPrepared()) {
</span><del>- if (style().svgStyle().bufferedRendering() == BR_STATIC && renderingContext.bufferForeground(m_bufferedForeground))
</del><ins>+ if (style().svgStyle().bufferedRendering() == BR_STATIC && renderingContext.bufferForeground(m_bufferedForeground))
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> paintForeground(childPaintInfo);
</span><span class="lines">@@ -166,7 +166,7 @@
</span><span class="cx">
</span><span class="cx"> imageElement().preserveAspectRatio().transformRect(destRect, srcRect);
</span><span class="cx">
</span><del>- paintInfo.context->drawImage(image.get(), ColorSpaceDeviceRGB, destRect, srcRect);
</del><ins>+ paintInfo.context().drawImage(image.get(), ColorSpaceDeviceRGB, destRect, srcRect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderSVGImage::invalidateBufferedForeground()
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGPathcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGPath.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGPath.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGPath.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -64,17 +64,17 @@
</span><span class="cx"> return strokeBoundingBox;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static void useStrokeStyleToFill(GraphicsContext* context)
</del><ins>+static void useStrokeStyleToFill(GraphicsContext& context)
</ins><span class="cx"> {
</span><del>- if (Gradient* gradient = context->strokeGradient())
- context->setFillGradient(*gradient);
- else if (Pattern* pattern = context->strokePattern())
- context->setFillPattern(*pattern);
</del><ins>+ if (Gradient* gradient = context.strokeGradient())
+ context.setFillGradient(*gradient);
+ else if (Pattern* pattern = context.strokePattern())
+ context.setFillPattern(*pattern);
</ins><span class="cx"> else
</span><del>- context->setFillColor(context->strokeColor(), context->strokeColorSpace());
</del><ins>+ context.setFillColor(context.strokeColor(), context.strokeColorSpace());
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderSVGPath::strokeShape(GraphicsContext* context) const
</del><ins>+void RenderSVGPath::strokeShape(GraphicsContext& context) const
</ins><span class="cx"> {
</span><span class="cx"> if (!style().svgStyle().hasVisibleStroke())
</span><span class="cx"> return;
</span><span class="lines">@@ -90,13 +90,13 @@
</span><span class="cx"> if (hasNonScalingStroke())
</span><span class="cx"> nonScalingTransform = nonScalingStrokeTransform();
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context, true);
</del><ins>+ GraphicsContextStateSaver stateSaver(context, true);
</ins><span class="cx"> useStrokeStyleToFill(context);
</span><span class="cx"> for (size_t i = 0; i < m_zeroLengthLinecapLocations.size(); ++i) {
</span><span class="cx"> usePath = zeroLengthLinecapPath(m_zeroLengthLinecapLocations[i]);
</span><span class="cx"> if (hasNonScalingStroke())
</span><span class="cx"> usePath = nonScalingStrokePath(usePath, nonScalingTransform);
</span><del>- context->fillPath(*usePath);
</del><ins>+ context.fillPath(*usePath);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGPathh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGPath.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGPath.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGPath.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -42,7 +42,7 @@
</span><span class="cx"> virtual void updateShapeFromElement() override;
</span><span class="cx"> FloatRect calculateUpdatedStrokeBoundingBox() const;
</span><span class="cx">
</span><del>- virtual void strokeShape(GraphicsContext*) const override;
</del><ins>+ virtual void strokeShape(GraphicsContext&) const override;
</ins><span class="cx"> virtual bool shapeDependentStrokeContains(const FloatPoint&) override;
</span><span class="cx">
</span><span class="cx"> bool shouldStrokeZeroLengthSubpath() const;
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGRectcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGRect.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGRect.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGRect.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -97,7 +97,7 @@
</span><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderSVGRect::fillShape(GraphicsContext* context) const
</del><ins>+void RenderSVGRect::fillShape(GraphicsContext& context) const
</ins><span class="cx"> {
</span><span class="cx"> if (m_usePathFallback) {
</span><span class="cx"> RenderSVGShape::fillShape(context);
</span><span class="lines">@@ -109,18 +109,18 @@
</span><span class="cx"> // shadow drawing method, which draws an extra shadow.
</span><span class="cx"> // This is a workaround for switching off the extra shadow.
</span><span class="cx"> // https://bugs.webkit.org/show_bug.cgi?id=68899
</span><del>- if (context->hasShadow()) {
- GraphicsContextStateSaver stateSaver(*context);
- context->clearShadow();
- context->fillRect(m_fillBoundingBox);
</del><ins>+ if (context.hasShadow()) {
+ GraphicsContextStateSaver stateSaver(context);
+ context.clearShadow();
+ context.fillRect(m_fillBoundingBox);
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>- context->fillRect(m_fillBoundingBox);
</del><ins>+ context.fillRect(m_fillBoundingBox);
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderSVGRect::strokeShape(GraphicsContext* context) const
</del><ins>+void RenderSVGRect::strokeShape(GraphicsContext& context) const
</ins><span class="cx"> {
</span><span class="cx"> if (!style().svgStyle().hasVisibleStroke())
</span><span class="cx"> return;
</span><span class="lines">@@ -130,7 +130,7 @@
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- context->strokeRect(m_fillBoundingBox, strokeWidth());
</del><ins>+ context.strokeRect(m_fillBoundingBox, strokeWidth());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool RenderSVGRect::shapeDependentStrokeContains(const FloatPoint& point)
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGRecth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGRect.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGRect.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGRect.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -48,8 +48,8 @@
</span><span class="cx"> virtual void updateShapeFromElement() override;
</span><span class="cx"> virtual bool isEmpty() const override { return m_usePathFallback ? RenderSVGShape::isEmpty() : m_fillBoundingBox.isEmpty(); }
</span><span class="cx"> virtual bool isRenderingDisabled() const override;
</span><del>- virtual void fillShape(GraphicsContext*) const override;
- virtual void strokeShape(GraphicsContext*) const override;
</del><ins>+ virtual void fillShape(GraphicsContext&) const override;
+ virtual void strokeShape(GraphicsContext&) const override;
</ins><span class="cx"> virtual bool shapeDependentStrokeContains(const FloatPoint&) override;
</span><span class="cx"> virtual bool shapeDependentFillContains(const FloatPoint&, const WindRule) const override;
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGResourceClippercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -69,10 +69,10 @@
</span><span class="cx"> ASSERT(context);
</span><span class="cx"> ASSERT_UNUSED(resourceMode, resourceMode == ApplyToDefaultMode);
</span><span class="cx">
</span><del>- return applyClippingToContext(renderer, renderer.objectBoundingBox(), renderer.repaintRectInLocalCoordinates(), context);
</del><ins>+ return applyClippingToContext(renderer, renderer.objectBoundingBox(), renderer.repaintRectInLocalCoordinates(), *context);
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-bool RenderSVGResourceClipper::pathOnlyClipping(GraphicsContext* context, const AffineTransform& animatedLocalTransform, const FloatRect& objectBoundingBox)
</del><ins>+bool RenderSVGResourceClipper::pathOnlyClipping(GraphicsContext& context, const AffineTransform& animatedLocalTransform, const FloatRect& objectBoundingBox)
</ins><span class="cx"> {
</span><span class="cx"> // If the current clip-path gets clipped itself, we have to fallback to masking.
</span><span class="cx"> if (!style().svgStyle().clipperResource().isEmpty())
</span><span class="lines">@@ -123,12 +123,11 @@
</span><span class="cx"> // The SVG specification wants us to clip everything, if clip-path doesn't have a child.
</span><span class="cx"> if (clipPath.isEmpty())
</span><span class="cx"> clipPath.addRect(FloatRect());
</span><del>- context->clipPath(clipPath, clipRule);
</del><ins>+ context.clipPath(clipPath, clipRule);
</ins><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-bool RenderSVGResourceClipper::applyClippingToContext(RenderElement& renderer, const FloatRect& objectBoundingBox,
- const FloatRect& repaintRect, GraphicsContext* context)
</del><ins>+bool RenderSVGResourceClipper::applyClippingToContext(RenderElement& renderer, const FloatRect& objectBoundingBox, const FloatRect& repaintRect, GraphicsContext& context)
</ins><span class="cx"> {
</span><span class="cx"> ClipperMaskImage& clipperMaskImage = addRendererToClipper(renderer);
</span><span class="cx"> bool shouldCreateClipperMaskImage = !clipperMaskImage;
</span><span class="lines">@@ -145,17 +144,15 @@
</span><span class="cx"> if (!clipperMaskImage)
</span><span class="cx"> return false;
</span><span class="cx">
</span><del>- GraphicsContext* maskContext = clipperMaskImage->context();
- ASSERT(maskContext);
</del><ins>+ GraphicsContext& maskContext = clipperMaskImage->context();
+ maskContext.concatCTM(animatedLocalTransform);
</ins><span class="cx">
</span><del>- maskContext->concatCTM(animatedLocalTransform);
-
</del><span class="cx"> // clipPath can also be clipped by another clipPath.
</span><span class="cx"> auto* resources = SVGResourcesCache::cachedResourcesForRenderer(*this);
</span><span class="cx"> RenderSVGResourceClipper* clipper;
</span><span class="cx"> bool succeeded;
</span><span class="cx"> if (resources && (clipper = resources->clipper())) {
</span><del>- GraphicsContextStateSaver stateSaver(*maskContext);
</del><ins>+ GraphicsContextStateSaver stateSaver(maskContext);
</ins><span class="cx">
</span><span class="cx"> if (!clipper->applyClippingToContext(*this, objectBoundingBox, repaintRect, maskContext))
</span><span class="cx"> return false;
</span><span class="lines">@@ -180,14 +177,13 @@
</span><span class="cx"> {
</span><span class="cx"> ASSERT(clipperMaskImage);
</span><span class="cx">
</span><del>- GraphicsContext* maskContext = clipperMaskImage->context();
- ASSERT(maskContext);
</del><ins>+ GraphicsContext& maskContext = clipperMaskImage->context();
</ins><span class="cx">
</span><span class="cx"> AffineTransform maskContentTransformation;
</span><span class="cx"> if (clipPathElement().clipPathUnits() == SVGUnitTypes::SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) {
</span><span class="cx"> maskContentTransformation.translate(objectBoundingBox.x(), objectBoundingBox.y());
</span><span class="cx"> maskContentTransformation.scaleNonUniform(objectBoundingBox.width(), objectBoundingBox.height());
</span><del>- maskContext->concatCTM(maskContentTransformation);
</del><ins>+ maskContext.concatCTM(maskContentTransformation);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Switch to a paint behavior where all children of this <clipPath> will be rendered using special constraints:
</span><span class="lines">@@ -226,7 +222,7 @@
</span><span class="cx"> if (!renderer->isSVGShape() && !renderer->isSVGText())
</span><span class="cx"> continue;
</span><span class="cx">
</span><del>- maskContext->setFillRule(newClipRule);
</del><ins>+ maskContext.setFillRule(newClipRule);
</ins><span class="cx">
</span><span class="cx"> // In the case of a <use> element, we obtained its renderere above, to retrieve its clipRule.
</span><span class="cx"> // We have to pass the <use> renderer itself to renderSubtreeToImageBuffer() to apply it's x/y/transform/etc. values when rendering.
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGResourceClipperh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -47,7 +47,7 @@
</span><span class="cx"> // clipPath can be clipped too, but don't have a boundingBox or repaintRect. So we can't call
</span><span class="cx"> // applyResource directly and use the rects from the object, since they are empty for RenderSVGResources
</span><span class="cx"> // FIXME: We made applyClippingToContext public because we cannot call applyResource on HTML elements (it asserts on RenderObject::objectBoundingBox)
</span><del>- bool applyClippingToContext(RenderElement&, const FloatRect&, const FloatRect&, GraphicsContext*);
</del><ins>+ bool applyClippingToContext(RenderElement&, const FloatRect&, const FloatRect&, GraphicsContext&);
</ins><span class="cx"> virtual FloatRect resourceBoundingBox(const RenderObject&) override;
</span><span class="cx">
</span><span class="cx"> virtual RenderSVGResourceType resourceType() const override { return ClipperResourceType; }
</span><span class="lines">@@ -64,7 +64,7 @@
</span><span class="cx">
</span><span class="cx"> virtual const char* renderName() const override { return "RenderSVGResourceClipper"; }
</span><span class="cx">
</span><del>- bool pathOnlyClipping(GraphicsContext*, const AffineTransform&, const FloatRect&);
</del><ins>+ bool pathOnlyClipping(GraphicsContext&, const AffineTransform&, const FloatRect&);
</ins><span class="cx"> bool drawContentIntoMaskImage(const ClipperMaskImage&, const FloatRect& objectBoundingBox);
</span><span class="cx"> void calculateClipContentRepaintRect();
</span><span class="cx"> ClipperMaskImage& addRendererToClipper(const RenderObject&);
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGResourceFiltercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -198,13 +198,12 @@
</span><span class="cx"> // Set the rendering mode from the page's settings.
</span><span class="cx"> filterData->filter->setRenderingMode(renderingMode);
</span><span class="cx">
</span><del>- GraphicsContext* sourceGraphicContext = sourceGraphic->context();
- ASSERT(sourceGraphicContext);
</del><ins>+ GraphicsContext& sourceGraphicContext = sourceGraphic->context();
</ins><span class="cx">
</span><span class="cx"> filterData->sourceGraphicBuffer = WTF::move(sourceGraphic);
</span><span class="cx"> filterData->savedContext = context;
</span><span class="cx">
</span><del>- context = sourceGraphicContext;
</del><ins>+ context = &sourceGraphicContext;
</ins><span class="cx">
</span><span class="cx"> ASSERT(!m_filter.contains(&renderer));
</span><span class="cx"> m_filter.set(&renderer, WTF::move(filterData));
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGResourceGradientcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGResourceGradient.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGResourceGradient.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGResourceGradient.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -65,16 +65,15 @@
</span><span class="cx"> if (!maskImage)
</span><span class="cx"> return false;
</span><span class="cx">
</span><del>- GraphicsContext* maskImageContext = maskImage->context();
- ASSERT(maskImageContext);
</del><ins>+ GraphicsContext& maskImageContext = maskImage->context();
</ins><span class="cx"> ASSERT(maskImage);
</span><span class="cx"> savedContext = context;
</span><del>- context = maskImageContext;
</del><ins>+ context = &maskImageContext;
</ins><span class="cx"> imageBuffer = WTF::move(maskImage);
</span><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-static inline AffineTransform clipToTextMask(GraphicsContext* context, std::unique_ptr<ImageBuffer>& imageBuffer, FloatRect& targetRect, RenderObject* object, bool boundingBoxMode, const AffineTransform& gradientTransform)
</del><ins>+static inline AffineTransform clipToTextMask(GraphicsContext& context, std::unique_ptr<ImageBuffer>& imageBuffer, FloatRect& targetRect, RenderObject* object, bool boundingBoxMode, const AffineTransform& gradientTransform)
</ins><span class="cx"> {
</span><span class="cx"> auto* textRootBlock = RenderSVGText::locateRenderSVGTextAncestor(*object);
</span><span class="cx"> ASSERT(textRootBlock);
</span><span class="lines">@@ -207,7 +206,7 @@
</span><span class="cx"> calculateGradientTransform(gradientTransform);
</span><span class="cx">
</span><span class="cx"> FloatRect targetRect;
</span><del>- gradientData->gradient->setGradientSpaceTransform(clipToTextMask(context, m_imageBuffer, targetRect, &renderer, gradientUnits() == SVGUnitTypes::SVG_UNIT_TYPE_OBJECTBOUNDINGBOX, gradientTransform));
</del><ins>+ gradientData->gradient->setGradientSpaceTransform(clipToTextMask(*context, m_imageBuffer, targetRect, &renderer, gradientUnits() == SVGUnitTypes::SVG_UNIT_TYPE_OBJECTBOUNDINGBOX, gradientTransform));
</ins><span class="cx"> context->setFillGradient(*gradientData->gradient);
</span><span class="cx">
</span><span class="cx"> context->fillRect(targetRect);
</span><span class="lines">@@ -221,13 +220,13 @@
</span><span class="cx"> if (path)
</span><span class="cx"> context->fillPath(*path);
</span><span class="cx"> else if (shape)
</span><del>- shape->fillShape(context);
</del><ins>+ shape->fillShape(*context);
</ins><span class="cx"> }
</span><span class="cx"> if (resourceMode & ApplyToStrokeMode) {
</span><span class="cx"> if (path)
</span><span class="cx"> context->strokePath(*path);
</span><span class="cx"> else if (shape)
</span><del>- shape->strokeShape(context);
</del><ins>+ shape->strokeShape(*context);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGResourceMarkercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGResourceMarker.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGResourceMarker.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGResourceMarker.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -63,7 +63,7 @@
</span><span class="cx"> void RenderSVGResourceMarker::applyViewportClip(PaintInfo& paintInfo)
</span><span class="cx"> {
</span><span class="cx"> if (SVGRenderSupport::isOverflowHidden(*this))
</span><del>- paintInfo.context->clip(m_viewport);
</del><ins>+ paintInfo.context().clip(m_viewport);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> FloatRect RenderSVGResourceMarker::markerBoundaries(const AffineTransform& markerTransformation) const
</span><span class="lines">@@ -118,7 +118,7 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> PaintInfo info(paintInfo);
</span><del>- GraphicsContextStateSaver stateSaver(*info.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(info.context());
</ins><span class="cx"> info.applyTransform(transform);
</span><span class="cx"> RenderSVGContainer::paint(info, IntPoint());
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGResourceMaskercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGResourceMasker.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -80,14 +80,13 @@
</span><span class="cx"> if (!maskerData->maskImage)
</span><span class="cx"> return false;
</span><span class="cx">
</span><del>- SVGRenderingContext::clipToImageBuffer(context, absoluteTransform, repaintRect, maskerData->maskImage, missingMaskerData);
</del><ins>+ SVGRenderingContext::clipToImageBuffer(*context, absoluteTransform, repaintRect, maskerData->maskImage, missingMaskerData);
</ins><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool RenderSVGResourceMasker::drawContentIntoMaskImage(MaskerData* maskerData, ColorSpace colorSpace, RenderObject* object)
</span><span class="cx"> {
</span><del>- GraphicsContext* maskImageContext = maskerData->maskImage->context();
- ASSERT(maskImageContext);
</del><ins>+ GraphicsContext& maskImageContext = maskerData->maskImage->context();
</ins><span class="cx">
</span><span class="cx"> // Eventually adjust the mask image context according to the target objectBoundingBox.
</span><span class="cx"> AffineTransform maskContentTransformation;
</span><span class="lines">@@ -95,7 +94,7 @@
</span><span class="cx"> FloatRect objectBoundingBox = object->objectBoundingBox();
</span><span class="cx"> maskContentTransformation.translate(objectBoundingBox.x(), objectBoundingBox.y());
</span><span class="cx"> maskContentTransformation.scaleNonUniform(objectBoundingBox.width(), objectBoundingBox.height());
</span><del>- maskImageContext->concatCTM(maskContentTransformation);
</del><ins>+ maskImageContext.concatCTM(maskContentTransformation);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> // Draw the content into the ImageBuffer.
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGResourcePatterncpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGResourcePattern.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGResourcePattern.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGResourcePattern.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -189,13 +189,13 @@
</span><span class="cx"> if (path)
</span><span class="cx"> context->fillPath(*path);
</span><span class="cx"> else if (shape)
</span><del>- shape->fillShape(context);
</del><ins>+ shape->fillShape(*context);
</ins><span class="cx"> }
</span><span class="cx"> if (resourceMode & ApplyToStrokeMode) {
</span><span class="cx"> if (path)
</span><span class="cx"> context->strokePath(*path);
</span><span class="cx"> else if (shape)
</span><del>- shape->strokeShape(context);
</del><ins>+ shape->strokeShape(*context);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> context->restore();
</span><span class="lines">@@ -237,16 +237,15 @@
</span><span class="cx"> if (!tileImage)
</span><span class="cx"> return nullptr;
</span><span class="cx">
</span><del>- GraphicsContext* tileImageContext = tileImage->context();
- ASSERT(tileImageContext);
</del><ins>+ GraphicsContext& tileImageContext = tileImage->context();
</ins><span class="cx">
</span><span class="cx"> // The image buffer represents the final rendered size, so the content has to be scaled (to avoid pixelation).
</span><del>- tileImageContext->scale(FloatSize(clampedAbsoluteTileBoundaries.width() / tileBoundaries.width(),
</del><ins>+ tileImageContext.scale(FloatSize(clampedAbsoluteTileBoundaries.width() / tileBoundaries.width(),
</ins><span class="cx"> clampedAbsoluteTileBoundaries.height() / tileBoundaries.height()));
</span><span class="cx">
</span><span class="cx"> // Apply tile image transformations.
</span><span class="cx"> if (!tileImageTransform.isIdentity())
</span><del>- tileImageContext->concatCTM(tileImageTransform);
</del><ins>+ tileImageContext.concatCTM(tileImageTransform);
</ins><span class="cx">
</span><span class="cx"> AffineTransform contentTransformation;
</span><span class="cx"> if (attributes.patternContentUnits() == SVGUnitTypes::SVG_UNIT_TYPE_OBJECTBOUNDINGBOX)
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGResourceSolidColorcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGResourceSolidColor.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGResourceSolidColor.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGResourceSolidColor.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -81,13 +81,13 @@
</span><span class="cx"> if (path)
</span><span class="cx"> context->fillPath(*path);
</span><span class="cx"> else if (shape)
</span><del>- shape->fillShape(context);
</del><ins>+ shape->fillShape(*context);
</ins><span class="cx"> }
</span><span class="cx"> if (resourceMode & ApplyToStrokeMode) {
</span><span class="cx"> if (path)
</span><span class="cx"> context->strokePath(*path);
</span><span class="cx"> else if (shape)
</span><del>- shape->strokeShape(context);
</del><ins>+ shape->strokeShape(*context);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGRootcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGRoot.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGRoot.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGRoot.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -228,7 +228,7 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> // Don't paint, if the context explicitly disabled it.
</span><del>- if (paintInfo.context->paintingDisabled())
</del><ins>+ if (paintInfo.context().paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> // SVG outlines are painted during PaintPhaseForeground.
</span><span class="lines">@@ -257,18 +257,18 @@
</span><span class="cx">
</span><span class="cx"> // Make a copy of the PaintInfo because applyTransform will modify the damage rect.
</span><span class="cx"> PaintInfo childPaintInfo(paintInfo);
</span><del>- childPaintInfo.context->save();
</del><ins>+ childPaintInfo.context().save();
</ins><span class="cx">
</span><span class="cx"> // Apply initial viewport clip
</span><span class="cx"> if (shouldApplyViewportClip())
</span><del>- childPaintInfo.context->clip(snappedIntRect(overflowClipRect(paintOffset, currentRenderNamedFlowFragment())));
</del><ins>+ childPaintInfo.context().clip(snappedIntRect(overflowClipRect(paintOffset, currentRenderNamedFlowFragment())));
</ins><span class="cx">
</span><span class="cx"> // Convert from container offsets (html renderers) to a relative transform (svg renderers).
</span><span class="cx"> // Transform from our paint container's coordinate system to our local coords.
</span><span class="cx"> IntPoint adjustedPaintOffset = roundedIntPoint(paintOffset);
</span><span class="cx"> childPaintInfo.applyTransform(AffineTransform::translation(adjustedPaintOffset.x(), adjustedPaintOffset.y()) * localToBorderBoxTransform());
</span><span class="cx">
</span><del>- // SVGRenderingContext must be destroyed before we restore the childPaintInfo.context, because a filter may have
</del><ins>+ // SVGRenderingContext must be destroyed before we restore the childPaintInfo.context(), because a filter may have
</ins><span class="cx"> // changed the context and it is only reverted when the SVGRenderingContext destructor finishes applying the filter.
</span><span class="cx"> {
</span><span class="cx"> SVGRenderingContext renderingContext;
</span><span class="lines">@@ -285,7 +285,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>- childPaintInfo.context->restore();
</del><ins>+ childPaintInfo.context().restore();
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderSVGRoot::willBeDestroyed()
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGShapecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGShape.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGShape.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGShape.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -92,12 +92,12 @@
</span><span class="cx"> return path().isEmpty();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderSVGShape::fillShape(GraphicsContext* context) const
</del><ins>+void RenderSVGShape::fillShape(GraphicsContext& context) const
</ins><span class="cx"> {
</span><del>- context->fillPath(path());
</del><ins>+ context.fillPath(path());
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderSVGShape::strokeShape(GraphicsContext* context) const
</del><ins>+void RenderSVGShape::strokeShape(GraphicsContext& context) const
</ins><span class="cx"> {
</span><span class="cx"> ASSERT(m_path);
</span><span class="cx"> Path* usePath = m_path.get();
</span><span class="lines">@@ -105,7 +105,7 @@
</span><span class="cx"> if (hasNonScalingStroke())
</span><span class="cx"> usePath = nonScalingStrokePath(usePath, nonScalingStrokeTransform());
</span><span class="cx">
</span><del>- context->strokePath(*usePath);
</del><ins>+ context.strokePath(*usePath);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> bool RenderSVGShape::shapeDependentStrokeContains(const FloatPoint& point)
</span><span class="lines">@@ -225,8 +225,9 @@
</span><span class="cx"> return resources->markerStart() || resources->markerMid() || resources->markerEnd();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderSVGShape::fillShape(const RenderStyle& style, GraphicsContext* context)
</del><ins>+void RenderSVGShape::fillShape(const RenderStyle& style, GraphicsContext& originalContext)
</ins><span class="cx"> {
</span><ins>+ GraphicsContext* context = &originalContext;
</ins><span class="cx"> Color fallbackColor;
</span><span class="cx"> if (RenderSVGResource* fillPaintingResource = RenderSVGResource::fillPaintingResource(*this, style, fallbackColor)) {
</span><span class="cx"> if (fillPaintingResource->applyResource(*this, style, context, ApplyToFillMode))
</span><span class="lines">@@ -240,8 +241,9 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderSVGShape::strokeShape(const RenderStyle& style, GraphicsContext* context)
</del><ins>+void RenderSVGShape::strokeShape(const RenderStyle& style, GraphicsContext& originalContext)
</ins><span class="cx"> {
</span><ins>+ GraphicsContext* context = &originalContext;
</ins><span class="cx"> Color fallbackColor;
</span><span class="cx"> if (RenderSVGResource* strokePaintingResource = RenderSVGResource::strokePaintingResource(*this, style, fallbackColor)) {
</span><span class="cx"> if (strokePaintingResource->applyResource(*this, style, context, ApplyToStrokeMode))
</span><span class="lines">@@ -255,12 +257,12 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void RenderSVGShape::strokeShape(GraphicsContext* context)
</del><ins>+void RenderSVGShape::strokeShape(GraphicsContext& context)
</ins><span class="cx"> {
</span><span class="cx"> if (!style().svgStyle().hasVisibleStroke())
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context, false);
</del><ins>+ GraphicsContextStateSaver stateSaver(context, false);
</ins><span class="cx"> if (hasNonScalingStroke()) {
</span><span class="cx"> AffineTransform nonScalingTransform = nonScalingStrokeTransform();
</span><span class="cx"> if (!setupNonScalingStrokeContext(nonScalingTransform, stateSaver))
</span><span class="lines">@@ -275,10 +277,10 @@
</span><span class="cx"> for (unsigned i = 0; i < paintOrder.size(); ++i) {
</span><span class="cx"> switch (paintOrder.at(i)) {
</span><span class="cx"> case PaintTypeFill:
</span><del>- fillShape(style(), childPaintInfo.context);
</del><ins>+ fillShape(style(), childPaintInfo.context());
</ins><span class="cx"> break;
</span><span class="cx"> case PaintTypeStroke:
</span><del>- strokeShape(childPaintInfo.context);
</del><ins>+ strokeShape(childPaintInfo.context());
</ins><span class="cx"> break;
</span><span class="cx"> case PaintTypeMarkers:
</span><span class="cx"> if (!m_markerPositions.isEmpty())
</span><span class="lines">@@ -290,7 +292,7 @@
</span><span class="cx">
</span><span class="cx"> void RenderSVGShape::paint(PaintInfo& paintInfo, const LayoutPoint&)
</span><span class="cx"> {
</span><del>- if (paintInfo.context->paintingDisabled() || paintInfo.phase != PaintPhaseForeground
</del><ins>+ if (paintInfo.context().paintingDisabled() || paintInfo.phase != PaintPhaseForeground
</ins><span class="cx"> || style().visibility() == HIDDEN || isEmpty())
</span><span class="cx"> return;
</span><span class="cx"> FloatRect boundingBox = repaintRectInLocalCoordinates();
</span><span class="lines">@@ -298,7 +300,7 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> PaintInfo childPaintInfo(paintInfo);
</span><del>- GraphicsContextStateSaver stateSaver(*childPaintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(childPaintInfo.context());
</ins><span class="cx"> childPaintInfo.applyTransform(m_localTransform);
</span><span class="cx">
</span><span class="cx"> if (childPaintInfo.phase == PaintPhaseForeground) {
</span><span class="lines">@@ -307,7 +309,7 @@
</span><span class="cx"> if (renderingContext.isRenderingPrepared()) {
</span><span class="cx"> const SVGRenderStyle& svgStyle = style().svgStyle();
</span><span class="cx"> if (svgStyle.shapeRendering() == SR_CRISPEDGES)
</span><del>- childPaintInfo.context->setShouldAntialias(false);
</del><ins>+ childPaintInfo.context().setShouldAntialias(false);
</ins><span class="cx">
</span><span class="cx"> fillStrokeMarkers(childPaintInfo);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGShapeh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGShape.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGShape.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGShape.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -54,8 +54,8 @@
</span><span class="cx"> virtual void setNeedsBoundariesUpdate() override final { m_needsBoundariesUpdate = true; }
</span><span class="cx"> virtual bool needsBoundariesUpdate() override final { return m_needsBoundariesUpdate; }
</span><span class="cx"> virtual void setNeedsTransformUpdate() override final { m_needsTransformUpdate = true; }
</span><del>- virtual void fillShape(GraphicsContext*) const;
- virtual void strokeShape(GraphicsContext*) const;
</del><ins>+ virtual void fillShape(GraphicsContext&) const;
+ virtual void strokeShape(GraphicsContext&) const;
</ins><span class="cx"> virtual bool isRenderingDisabled() const = 0;
</span><span class="cx">
</span><span class="cx"> bool hasPath() const { return m_path.get(); }
</span><span class="lines">@@ -114,9 +114,9 @@
</span><span class="cx"> FloatRect markerRect(float strokeWidth) const;
</span><span class="cx"> void processMarkerPositions();
</span><span class="cx">
</span><del>- void fillShape(const RenderStyle&, GraphicsContext*);
- void strokeShape(const RenderStyle&, GraphicsContext*);
- void strokeShape(GraphicsContext*);
</del><ins>+ void fillShape(const RenderStyle&, GraphicsContext&);
+ void strokeShape(const RenderStyle&, GraphicsContext&);
+ void strokeShape(GraphicsContext&);
</ins><span class="cx"> void fillStrokeMarkers(PaintInfo&);
</span><span class="cx"> void drawMarkers(PaintInfo&);
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGTextcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGText.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGText.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGText.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -480,7 +480,7 @@
</span><span class="cx">
</span><span class="cx"> void RenderSVGText::paint(PaintInfo& paintInfo, const LayoutPoint&)
</span><span class="cx"> {
</span><del>- if (paintInfo.context->paintingDisabled())
</del><ins>+ if (paintInfo.context().paintingDisabled())
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> if (paintInfo.phase != PaintPhaseForeground
</span><span class="lines">@@ -488,7 +488,7 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> PaintInfo blockInfo(paintInfo);
</span><del>- GraphicsContextStateSaver stateSaver(*blockInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(blockInfo.context());
</ins><span class="cx"> blockInfo.applyTransform(localToParentTransform());
</span><span class="cx"> RenderBlock::paint(blockInfo, LayoutPoint());
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgRenderSVGViewportContainercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/RenderSVGViewportContainer.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/RenderSVGViewportContainer.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGViewportContainer.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -51,7 +51,7 @@
</span><span class="cx"> void RenderSVGViewportContainer::applyViewportClip(PaintInfo& paintInfo)
</span><span class="cx"> {
</span><span class="cx"> if (SVGRenderSupport::isOverflowHidden(*this))
</span><del>- paintInfo.context->clip(m_viewport);
</del><ins>+ paintInfo.context().clip(m_viewport);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void RenderSVGViewportContainer::calcViewport()
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgSVGInlineFlowBoxcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/SVGInlineFlowBox.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/SVGInlineFlowBox.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/SVGInlineFlowBox.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -34,7 +34,7 @@
</span><span class="cx"> void SVGInlineFlowBox::paintSelectionBackground(PaintInfo& paintInfo)
</span><span class="cx"> {
</span><span class="cx"> ASSERT(paintInfo.phase == PaintPhaseForeground || paintInfo.phase == PaintPhaseSelection);
</span><del>- ASSERT(!paintInfo.context->paintingDisabled());
</del><ins>+ ASSERT(!paintInfo.context().paintingDisabled());
</ins><span class="cx">
</span><span class="cx"> PaintInfo childPaintInfo(paintInfo);
</span><span class="cx"> for (InlineBox* child = firstChild(); child; child = child->nextOnLine()) {
</span><span class="lines">@@ -48,7 +48,7 @@
</span><span class="cx"> void SVGInlineFlowBox::paint(PaintInfo& paintInfo, const LayoutPoint& paintOffset, LayoutUnit, LayoutUnit)
</span><span class="cx"> {
</span><span class="cx"> ASSERT(paintInfo.phase == PaintPhaseForeground || paintInfo.phase == PaintPhaseSelection);
</span><del>- ASSERT(!paintInfo.context->paintingDisabled());
</del><ins>+ ASSERT(!paintInfo.context().paintingDisabled());
</ins><span class="cx">
</span><span class="cx"> SVGRenderingContext renderingContext(renderer(), paintInfo, SVGRenderingContext::SaveGraphicsContext);
</span><span class="cx"> if (renderingContext.isRenderingPrepared()) {
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgSVGInlineTextBoxcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/SVGInlineTextBox.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/SVGInlineTextBox.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/SVGInlineTextBox.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -220,13 +220,13 @@
</span><span class="cx"> if (!mapStartEndPositionsIntoFragmentCoordinates(fragment, fragmentStartPosition, fragmentEndPosition))
</span><span class="cx"> continue;
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx"> fragment.buildFragmentTransform(fragmentTransform);
</span><span class="cx"> if (!fragmentTransform.isIdentity())
</span><del>- paintInfo.context->concatCTM(fragmentTransform);
</del><ins>+ paintInfo.context().concatCTM(fragmentTransform);
</ins><span class="cx">
</span><del>- paintInfo.context->setFillColor(backgroundColor, style.colorSpace());
- paintInfo.context->fillRect(selectionRectForTextFragment(fragment, fragmentStartPosition, fragmentEndPosition, &style), backgroundColor, style.colorSpace());
</del><ins>+ paintInfo.context().setFillColor(backgroundColor, style.colorSpace());
+ paintInfo.context().fillRect(selectionRectForTextFragment(fragment, fragmentStartPosition, fragmentEndPosition, &style), backgroundColor, style.colorSpace());
</ins><span class="cx">
</span><span class="cx"> m_paintingResourceMode = ApplyToDefaultMode;
</span><span class="cx"> }
</span><span class="lines">@@ -288,17 +288,17 @@
</span><span class="cx"> SVGTextFragment& fragment = m_textFragments.at(i);
</span><span class="cx"> ASSERT(!m_paintingResource);
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*paintInfo.context);
</del><ins>+ GraphicsContextStateSaver stateSaver(paintInfo.context());
</ins><span class="cx"> fragment.buildFragmentTransform(fragmentTransform);
</span><span class="cx"> if (!fragmentTransform.isIdentity())
</span><del>- paintInfo.context->concatCTM(fragmentTransform);
</del><ins>+ paintInfo.context().concatCTM(fragmentTransform);
</ins><span class="cx">
</span><span class="cx"> // Spec: All text decorations except line-through should be drawn before the text is filled and stroked; thus, the text is rendered on top of these decorations.
</span><span class="cx"> int decorations = style.textDecorationsInEffect();
</span><span class="cx"> if (decorations & TextDecorationUnderline)
</span><del>- paintDecoration(paintInfo.context, TextDecorationUnderline, fragment);
</del><ins>+ paintDecoration(paintInfo.context(), TextDecorationUnderline, fragment);
</ins><span class="cx"> if (decorations & TextDecorationOverline)
</span><del>- paintDecoration(paintInfo.context, TextDecorationOverline, fragment);
</del><ins>+ paintDecoration(paintInfo.context(), TextDecorationOverline, fragment);
</ins><span class="cx">
</span><span class="cx"> auto paintOrder = style.svgStyle().paintTypesForPaintOrder();
</span><span class="cx"> for (unsigned i = 0; i < paintOrder.size(); ++i) {
</span><span class="lines">@@ -307,13 +307,13 @@
</span><span class="cx"> if (!hasFill)
</span><span class="cx"> continue;
</span><span class="cx"> m_paintingResourceMode = ApplyToFillMode | ApplyToTextMode;
</span><del>- paintText(paintInfo.context, &style, selectionStyle, fragment, hasSelection, paintSelectedTextOnly);
</del><ins>+ paintText(paintInfo.context(), &style, selectionStyle, fragment, hasSelection, paintSelectedTextOnly);
</ins><span class="cx"> break;
</span><span class="cx"> case PaintTypeStroke:
</span><span class="cx"> if (!hasVisibleStroke)
</span><span class="cx"> continue;
</span><span class="cx"> m_paintingResourceMode = ApplyToStrokeMode | ApplyToTextMode;
</span><del>- paintText(paintInfo.context, &style, selectionStyle, fragment, hasSelection, paintSelectedTextOnly);
</del><ins>+ paintText(paintInfo.context(), &style, selectionStyle, fragment, hasSelection, paintSelectedTextOnly);
</ins><span class="cx"> break;
</span><span class="cx"> case PaintTypeMarkers:
</span><span class="cx"> continue;
</span><span class="lines">@@ -322,7 +322,7 @@
</span><span class="cx">
</span><span class="cx"> // Spec: Line-through should be drawn after the text is filled and stroked; thus, the line-through is rendered on top of the text.
</span><span class="cx"> if (decorations & TextDecorationLineThrough)
</span><del>- paintDecoration(paintInfo.context, TextDecorationLineThrough, fragment);
</del><ins>+ paintDecoration(paintInfo.context(), TextDecorationLineThrough, fragment);
</ins><span class="cx">
</span><span class="cx"> m_paintingResourceMode = ApplyToDefaultMode;
</span><span class="cx"> }
</span><span class="lines">@@ -379,14 +379,12 @@
</span><span class="cx">
</span><span class="cx"> bool SVGInlineTextBox::prepareGraphicsContextForTextPainting(GraphicsContext*& context, float scalingFactor, TextRun& textRun, RenderStyle* style)
</span><span class="cx"> {
</span><del>- bool acquiredResource = acquirePaintingResource(context, scalingFactor, parent()->renderer(), style);
- if (!acquiredResource)
</del><ins>+ if (!acquirePaintingResource(context, scalingFactor, parent()->renderer(), style))
</ins><span class="cx"> return false;
</span><span class="cx">
</span><span class="cx"> #if ENABLE(SVG_FONTS)
</span><span class="cx"> // SVG Fonts need access to the painting resource used to draw the current text chunk.
</span><del>- TextRun::RenderingContext* renderingContext = textRun.renderingContext();
- if (renderingContext)
</del><ins>+ if (auto* renderingContext = textRun.renderingContext())
</ins><span class="cx"> static_cast<SVGTextRunRenderingContext*>(renderingContext)->setActivePaintingResource(m_paintingResource);
</span><span class="cx"> #else
</span><span class="cx"> UNUSED_PARAM(textRun);
</span><span class="lines">@@ -499,7 +497,7 @@
</span><span class="cx"> return *renderer;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void SVGInlineTextBox::paintDecoration(GraphicsContext* context, TextDecoration decoration, const SVGTextFragment& fragment)
</del><ins>+void SVGInlineTextBox::paintDecoration(GraphicsContext& context, TextDecoration decoration, const SVGTextFragment& fragment)
</ins><span class="cx"> {
</span><span class="cx"> if (renderer().style().textDecorationsInEffect() == TextDecorationNone)
</span><span class="cx"> return;
</span><span class="lines">@@ -527,7 +525,7 @@
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void SVGInlineTextBox::paintDecorationWithStyle(GraphicsContext* context, TextDecoration decoration, const SVGTextFragment& fragment, RenderBoxModelObject& decorationRenderer)
</del><ins>+void SVGInlineTextBox::paintDecorationWithStyle(GraphicsContext& context, TextDecoration decoration, const SVGTextFragment& fragment, RenderBoxModelObject& decorationRenderer)
</ins><span class="cx"> {
</span><span class="cx"> ASSERT(!m_paintingResource);
</span><span class="cx"> ASSERT(m_paintingResourceMode != ApplyToDefaultMode);
</span><span class="lines">@@ -549,11 +547,11 @@
</span><span class="cx"> float width = fragment.width;
</span><span class="cx"> const FontMetrics& scaledFontMetrics = scaledFont.fontMetrics();
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
</ins><span class="cx"> if (scalingFactor != 1) {
</span><span class="cx"> width *= scalingFactor;
</span><span class="cx"> decorationOrigin.scale(scalingFactor, scalingFactor);
</span><del>- context->scale(FloatSize(1 / scalingFactor, 1 / scalingFactor));
</del><ins>+ context.scale(FloatSize(1 / scalingFactor, 1 / scalingFactor));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> decorationOrigin.move(0, -scaledFontMetrics.floatAscent() + positionOffsetForDecoration(decoration, scaledFontMetrics, thickness));
</span><span class="lines">@@ -561,11 +559,12 @@
</span><span class="cx"> Path path;
</span><span class="cx"> path.addRect(FloatRect(decorationOrigin, FloatSize(width, thickness)));
</span><span class="cx">
</span><del>- if (acquirePaintingResource(context, scalingFactor, decorationRenderer, &decorationStyle))
- releasePaintingResource(context, &path);
</del><ins>+ GraphicsContext* contextPtr = &context;
+ if (acquirePaintingResource(contextPtr, scalingFactor, decorationRenderer, &decorationStyle))
+ releasePaintingResource(contextPtr, &path);
</ins><span class="cx"> }
</span><span class="cx">
</span><del>-void SVGInlineTextBox::paintTextWithShadows(GraphicsContext* context, RenderStyle* style, TextRun& textRun, const SVGTextFragment& fragment, int startPosition, int endPosition)
</del><ins>+void SVGInlineTextBox::paintTextWithShadows(GraphicsContext& context, RenderStyle* style, TextRun& textRun, const SVGTextFragment& fragment, int startPosition, int endPosition)
</ins><span class="cx"> {
</span><span class="cx"> float scalingFactor = renderer().scalingFactor();
</span><span class="cx"> ASSERT(scalingFactor);
</span><span class="lines">@@ -583,24 +582,25 @@
</span><span class="cx">
</span><span class="cx"> FloatRect shadowRect(FloatPoint(textOrigin.x(), textOrigin.y() - scaledFont.fontMetrics().floatAscent()), textSize);
</span><span class="cx">
</span><ins>+ GraphicsContext* usedContext = &context;
</ins><span class="cx"> do {
</span><del>- if (!prepareGraphicsContextForTextPainting(context, scalingFactor, textRun, style))
</del><ins>+ if (!prepareGraphicsContextForTextPainting(usedContext, scalingFactor, textRun, style))
</ins><span class="cx"> break;
</span><span class="cx">
</span><span class="cx"> {
</span><del>- ShadowApplier shadowApplier(*context, shadow, shadowRect);
</del><ins>+ ShadowApplier shadowApplier(*usedContext, shadow, shadowRect);
</ins><span class="cx">
</span><span class="cx"> if (!shadowApplier.didSaveContext())
</span><del>- context->save();
- context->scale(FloatSize(1 / scalingFactor, 1 / scalingFactor));
</del><ins>+ usedContext->save();
+ usedContext->scale(FloatSize(1 / scalingFactor, 1 / scalingFactor));
</ins><span class="cx">
</span><del>- scaledFont.drawText(context, textRun, textOrigin + shadowApplier.extraOffset(), startPosition, endPosition);
</del><ins>+ scaledFont.drawText(*usedContext, textRun, textOrigin + shadowApplier.extraOffset(), startPosition, endPosition);
</ins><span class="cx">
</span><span class="cx"> if (!shadowApplier.didSaveContext())
</span><del>- context->restore();
</del><ins>+ usedContext->restore();
</ins><span class="cx"> }
</span><span class="cx">
</span><del>- restoreGraphicsContextAfterTextPainting(context, textRun);
</del><ins>+ restoreGraphicsContextAfterTextPainting(usedContext, textRun);
</ins><span class="cx">
</span><span class="cx"> if (!shadow)
</span><span class="cx"> break;
</span><span class="lines">@@ -609,7 +609,7 @@
</span><span class="cx"> } while (shadow);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void SVGInlineTextBox::paintText(GraphicsContext* context, RenderStyle* style, RenderStyle* selectionStyle, const SVGTextFragment& fragment, bool hasSelection, bool paintSelectedTextOnly)
</del><ins>+void SVGInlineTextBox::paintText(GraphicsContext& context, RenderStyle* style, RenderStyle* selectionStyle, const SVGTextFragment& fragment, bool hasSelection, bool paintSelectedTextOnly)
</ins><span class="cx"> {
</span><span class="cx"> ASSERT(style);
</span><span class="cx"> ASSERT(selectionStyle);
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgSVGInlineTextBoxh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/SVGInlineTextBox.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/SVGInlineTextBox.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/SVGInlineTextBox.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -77,10 +77,10 @@
</span><span class="cx"> bool prepareGraphicsContextForTextPainting(GraphicsContext*&, float scalingFactor, TextRun&, RenderStyle*);
</span><span class="cx"> void restoreGraphicsContextAfterTextPainting(GraphicsContext*&, TextRun&);
</span><span class="cx">
</span><del>- void paintDecoration(GraphicsContext*, TextDecoration, const SVGTextFragment&);
- void paintDecorationWithStyle(GraphicsContext*, TextDecoration, const SVGTextFragment&, RenderBoxModelObject& decorationRenderer);
- void paintTextWithShadows(GraphicsContext*, RenderStyle*, TextRun&, const SVGTextFragment&, int startPosition, int endPosition);
- void paintText(GraphicsContext*, RenderStyle*, RenderStyle* selectionStyle, const SVGTextFragment&, bool hasSelection, bool paintSelectedTextOnly);
</del><ins>+ void paintDecoration(GraphicsContext&, TextDecoration, const SVGTextFragment&);
+ void paintDecorationWithStyle(GraphicsContext&, TextDecoration, const SVGTextFragment&, RenderBoxModelObject& decorationRenderer);
+ void paintTextWithShadows(GraphicsContext&, RenderStyle*, TextRun&, const SVGTextFragment&, int startPosition, int endPosition);
+ void paintText(GraphicsContext&, RenderStyle*, RenderStyle* selectionStyle, const SVGTextFragment&, bool hasSelection, bool paintSelectedTextOnly);
</ins><span class="cx">
</span><span class="cx"> virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset, LayoutUnit lineTop, LayoutUnit lineBottom, HitTestAction) override;
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgSVGRenderingContextcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/SVGRenderingContext.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/SVGRenderingContext.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/SVGRenderingContext.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -56,19 +56,20 @@
</span><span class="cx">
</span><span class="cx"> if (m_renderingFlags & EndFilterLayer) {
</span><span class="cx"> ASSERT(m_filter);
</span><del>- m_filter->postApplyResource(*m_renderer, m_paintInfo->context, ApplyToDefaultMode, 0, 0);
- m_paintInfo->context = m_savedContext;
</del><ins>+ GraphicsContext* contextPtr = &m_paintInfo->context();
+ m_filter->postApplyResource(*m_renderer, contextPtr, ApplyToDefaultMode, 0, 0);
+ m_paintInfo->setContext(*m_savedContext);
</ins><span class="cx"> m_paintInfo->rect = m_savedPaintRect;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (m_renderingFlags & EndOpacityLayer)
</span><del>- m_paintInfo->context->endTransparencyLayer();
</del><ins>+ m_paintInfo->context().endTransparencyLayer();
</ins><span class="cx">
</span><span class="cx"> if (m_renderingFlags & EndShadowLayer)
</span><del>- m_paintInfo->context->endTransparencyLayer();
</del><ins>+ m_paintInfo->context().endTransparencyLayer();
</ins><span class="cx">
</span><span class="cx"> if (m_renderingFlags & RestoreGraphicsContext)
</span><del>- m_paintInfo->context->restore();
</del><ins>+ m_paintInfo->context().restore();
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void SVGRenderingContext::prepareToRenderSVGContent(RenderElement& renderer, PaintInfo& paintInfo, NeedsGraphicsContextSave needsGraphicsContextSave)
</span><span class="lines">@@ -85,7 +86,7 @@
</span><span class="cx">
</span><span class="cx"> // We need to save / restore the context even if the initialization failed.
</span><span class="cx"> if (needsGraphicsContextSave == SaveGraphicsContext) {
</span><del>- m_paintInfo->context->save();
</del><ins>+ m_paintInfo->context().save();
</ins><span class="cx"> m_renderingFlags |= RestoreGraphicsContext;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -111,24 +112,24 @@
</span><span class="cx">
</span><span class="cx"> if (opacity < 1 || shadow || hasBlendMode || isolateMaskForBlending || hasIsolation) {
</span><span class="cx"> FloatRect repaintRect = m_renderer->repaintRectInLocalCoordinates();
</span><del>- m_paintInfo->context->clip(repaintRect);
</del><ins>+ m_paintInfo->context().clip(repaintRect);
</ins><span class="cx">
</span><span class="cx"> if (opacity < 1 || hasBlendMode || isolateMaskForBlending || hasIsolation) {
</span><span class="cx">
</span><span class="cx"> if (hasBlendMode)
</span><del>- m_paintInfo->context->setCompositeOperation(m_paintInfo->context->compositeOperation(), style.blendMode());
</del><ins>+ m_paintInfo->context().setCompositeOperation(m_paintInfo->context().compositeOperation(), style.blendMode());
</ins><span class="cx">
</span><del>- m_paintInfo->context->beginTransparencyLayer(opacity);
</del><ins>+ m_paintInfo->context().beginTransparencyLayer(opacity);
</ins><span class="cx">
</span><span class="cx"> if (hasBlendMode)
</span><del>- m_paintInfo->context->setCompositeOperation(m_paintInfo->context->compositeOperation(), BlendModeNormal);
</del><ins>+ m_paintInfo->context().setCompositeOperation(m_paintInfo->context().compositeOperation(), BlendModeNormal);
</ins><span class="cx">
</span><span class="cx"> m_renderingFlags |= EndOpacityLayer;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (shadow) {
</span><del>- m_paintInfo->context->setShadow(IntSize(roundToInt(shadow->x()), roundToInt(shadow->y())), shadow->radius(), shadow->color(), style.colorSpace());
- m_paintInfo->context->beginTransparencyLayer(1);
</del><ins>+ m_paintInfo->context().setShadow(IntSize(roundToInt(shadow->x()), roundToInt(shadow->y())), shadow->radius(), shadow->color(), style.colorSpace());
+ m_paintInfo->context().beginTransparencyLayer(1);
</ins><span class="cx"> m_renderingFlags |= EndShadowLayer;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="lines">@@ -147,7 +148,7 @@
</span><span class="cx"> referenceBox.setHeight(viewportSize.height());
</span><span class="cx"> } else
</span><span class="cx"> referenceBox = renderer.objectBoundingBox();
</span><del>- m_paintInfo->context->clipPath(clipPath.pathForReferenceRect(referenceBox), clipPath.windRule());
</del><ins>+ m_paintInfo->context().clipPath(clipPath.pathForReferenceRect(referenceBox), clipPath.windRule());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> auto* resources = SVGResourcesCache::cachedResourcesForRenderer(*m_renderer);
</span><span class="lines">@@ -161,26 +162,35 @@
</span><span class="cx">
</span><span class="cx"> if (!isRenderingMask) {
</span><span class="cx"> if (RenderSVGResourceMasker* masker = resources->masker()) {
</span><del>- if (!masker->applyResource(*m_renderer, style, m_paintInfo->context, ApplyToDefaultMode))
</del><ins>+ GraphicsContext* contextPtr = &m_paintInfo->context();
+ bool result = masker->applyResource(*m_renderer, style, contextPtr, ApplyToDefaultMode);
+ m_paintInfo->setContext(*contextPtr);
+ if (!result)
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> RenderSVGResourceClipper* clipper = resources->clipper();
</span><span class="cx"> if (!clipPathOperation && clipper) {
</span><del>- if (!clipper->applyResource(*m_renderer, style, m_paintInfo->context, ApplyToDefaultMode))
</del><ins>+ GraphicsContext* contextPtr = &m_paintInfo->context();
+ bool result = clipper->applyResource(*m_renderer, style, contextPtr, ApplyToDefaultMode);
+ m_paintInfo->setContext(*contextPtr);
+ if (!result)
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (!isRenderingMask) {
</span><span class="cx"> m_filter = resources->filter();
</span><span class="cx"> if (m_filter) {
</span><del>- m_savedContext = m_paintInfo->context;
</del><ins>+ m_savedContext = &m_paintInfo->context();
</ins><span class="cx"> m_savedPaintRect = m_paintInfo->rect;
</span><span class="cx"> // Return with false here may mean that we don't need to draw the content
</span><span class="cx"> // (because it was either drawn before or empty) but we still need to apply the filter.
</span><span class="cx"> m_renderingFlags |= EndFilterLayer;
</span><del>- if (!m_filter->applyResource(*m_renderer, style, m_paintInfo->context, ApplyToDefaultMode))
</del><ins>+ GraphicsContext* contextPtr = &m_paintInfo->context();
+ bool result = m_filter->applyResource(*m_renderer, style, contextPtr, ApplyToDefaultMode);
+ m_paintInfo->setContext(*contextPtr);
+ if (!result)
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> // Since we're caching the resulting bitmap and do not invalidate it on repaint rect
</span><span class="lines">@@ -254,9 +264,8 @@
</span><span class="cx"> AffineTransform transform;
</span><span class="cx"> transform.scale(scale).translate(-paintRect.location()).multiply(absoluteTransform);
</span><span class="cx">
</span><del>- GraphicsContext* imageContext = imageBuffer->context();
- ASSERT(imageContext);
- imageContext->concatCTM(transform);
</del><ins>+ GraphicsContext& imageContext = imageBuffer->context();
+ imageContext.concatCTM(transform);
</ins><span class="cx">
</span><span class="cx"> return imageBuffer;
</span><span class="cx"> }
</span><span class="lines">@@ -274,11 +283,10 @@
</span><span class="cx"> if (!imageBuffer)
</span><span class="cx"> return nullptr;
</span><span class="cx">
</span><del>- GraphicsContext* imageContext = imageBuffer->context();
- ASSERT(imageContext);
</del><ins>+ GraphicsContext& imageContext = imageBuffer->context();
</ins><span class="cx">
</span><span class="cx"> // Compensate rounding effects, as the absolute target rect is using floating-point numbers and the image buffer size is integer.
</span><del>- imageContext->scale(FloatSize(unclampedSize.width() / targetRect.width(), unclampedSize.height() / targetRect.height()));
</del><ins>+ imageContext.scale(FloatSize(unclampedSize.width() / targetRect.width(), unclampedSize.height() / targetRect.height()));
</ins><span class="cx">
</span><span class="cx"> return imageBuffer;
</span><span class="cx"> }
</span><span class="lines">@@ -286,7 +294,6 @@
</span><span class="cx"> void SVGRenderingContext::renderSubtreeToImageBuffer(ImageBuffer* image, RenderElement& item, const AffineTransform& subtreeContentTransformation)
</span><span class="cx"> {
</span><span class="cx"> ASSERT(image);
</span><del>- ASSERT(image->context());
</del><span class="cx">
</span><span class="cx"> PaintInfo info(image->context(), LayoutRect::infiniteRect(), PaintPhaseForeground, PaintBehaviorNormal);
</span><span class="cx">
</span><span class="lines">@@ -300,18 +307,17 @@
</span><span class="cx"> contentTransformation = savedContentTransformation;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void SVGRenderingContext::clipToImageBuffer(GraphicsContext* context, const AffineTransform& absoluteTransform, const FloatRect& targetRect, std::unique_ptr<ImageBuffer>& imageBuffer, bool safeToClear)
</del><ins>+void SVGRenderingContext::clipToImageBuffer(GraphicsContext& context, const AffineTransform& absoluteTransform, const FloatRect& targetRect, std::unique_ptr<ImageBuffer>& imageBuffer, bool safeToClear)
</ins><span class="cx"> {
</span><del>- ASSERT(context);
</del><span class="cx"> ASSERT(imageBuffer);
</span><span class="cx">
</span><span class="cx"> FloatRect absoluteTargetRect = calculateImageBufferRect(targetRect, absoluteTransform);
</span><span class="cx">
</span><span class="cx"> // The mask image has been created in the absolute coordinate space, as the image should not be scaled.
</span><span class="cx"> // So the actual masking process has to be done in the absolute coordinate space as well.
</span><del>- context->concatCTM(absoluteTransform.inverse());
- context->clipToImageBuffer(imageBuffer.get(), absoluteTargetRect);
- context->concatCTM(absoluteTransform);
</del><ins>+ context.concatCTM(absoluteTransform.inverse());
+ context.clipToImageBuffer(imageBuffer.get(), absoluteTargetRect);
+ context.concatCTM(absoluteTransform);
</ins><span class="cx">
</span><span class="cx"> // When nesting resources, with objectBoundingBox as content unit types, there's no use in caching the
</span><span class="cx"> // resulting image buffer as the parent resource already caches the result.
</span><span class="lines">@@ -335,7 +341,7 @@
</span><span class="cx">
</span><span class="cx"> // Invalidate an existing buffer if the scale is not correct.
</span><span class="cx"> if (imageBuffer) {
</span><del>- AffineTransform transform = m_paintInfo->context->getCTM(GraphicsContext::DefinitelyIncludeDeviceScale);
</del><ins>+ AffineTransform transform = m_paintInfo->context().getCTM(GraphicsContext::DefinitelyIncludeDeviceScale);
</ins><span class="cx"> IntSize expandedBoundingBox = expandedIntSize(boundingBox.size());
</span><span class="cx"> IntSize bufferSize(static_cast<int>(ceil(expandedBoundingBox.width() * transform.xScale())), static_cast<int>(ceil(expandedBoundingBox.height() * transform.yScale())));
</span><span class="cx"> if (bufferSize != imageBuffer->internalSize())
</span><span class="lines">@@ -344,17 +350,17 @@
</span><span class="cx">
</span><span class="cx"> // Create a new buffer and paint the foreground into it.
</span><span class="cx"> if (!imageBuffer) {
</span><del>- if ((imageBuffer = m_paintInfo->context->createCompatibleBuffer(expandedIntSize(boundingBox.size()), true))) {
- GraphicsContext* bufferedRenderingContext = imageBuffer->context();
- bufferedRenderingContext->translate(-boundingBox.x(), -boundingBox.y());
</del><ins>+ if ((imageBuffer = m_paintInfo->context().createCompatibleBuffer(expandedIntSize(boundingBox.size()), true))) {
+ GraphicsContext& bufferedRenderingContext = imageBuffer->context();
+ bufferedRenderingContext.translate(-boundingBox.x(), -boundingBox.y());
</ins><span class="cx"> PaintInfo bufferedInfo(*m_paintInfo);
</span><del>- bufferedInfo.context = bufferedRenderingContext;
</del><ins>+ bufferedInfo.setContext(bufferedRenderingContext);
</ins><span class="cx"> downcast<RenderSVGImage>(*m_renderer).paintForeground(bufferedInfo);
</span><span class="cx"> } else
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- m_paintInfo->context->drawImageBuffer(imageBuffer.get(), ColorSpaceDeviceRGB, boundingBox);
</del><ins>+ m_paintInfo->context().drawImageBuffer(imageBuffer.get(), ColorSpaceDeviceRGB, boundingBox);
</ins><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgSVGRenderingContexth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/SVGRenderingContext.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/SVGRenderingContext.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/SVGRenderingContext.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -75,7 +75,7 @@
</span><span class="cx"> static std::unique_ptr<ImageBuffer> createImageBuffer(const FloatRect& targetRect, const FloatRect& clampedRect, ColorSpace, RenderingMode);
</span><span class="cx">
</span><span class="cx"> static void renderSubtreeToImageBuffer(ImageBuffer*, RenderElement&, const AffineTransform&);
</span><del>- static void clipToImageBuffer(GraphicsContext*, const AffineTransform& absoluteTransform, const FloatRect& targetRect, std::unique_ptr<ImageBuffer>&, bool safeToClear);
</del><ins>+ static void clipToImageBuffer(GraphicsContext&, const AffineTransform& absoluteTransform, const FloatRect& targetRect, std::unique_ptr<ImageBuffer>&, bool safeToClear);
</ins><span class="cx">
</span><span class="cx"> static float calculateScreenFontSizeScalingFactor(const RenderObject&);
</span><span class="cx"> static AffineTransform calculateTransformationToOutermostCoordinateSystem(const RenderObject&);
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgSVGRootInlineBoxcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/SVGRootInlineBox.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/SVGRootInlineBox.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/SVGRootInlineBox.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -49,7 +49,7 @@
</span><span class="cx"> void SVGRootInlineBox::paint(PaintInfo& paintInfo, const LayoutPoint& paintOffset, LayoutUnit, LayoutUnit)
</span><span class="cx"> {
</span><span class="cx"> ASSERT(paintInfo.phase == PaintPhaseForeground || paintInfo.phase == PaintPhaseSelection);
</span><del>- ASSERT(!paintInfo.context->paintingDisabled());
</del><ins>+ ASSERT(!paintInfo.context().paintingDisabled());
</ins><span class="cx">
</span><span class="cx"> bool isPrinting = renderSVGText().document().printing();
</span><span class="cx"> bool hasSelection = !isPrinting && selectionState() != RenderObject::SelectionNone;
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgSVGTextRunRenderingContextcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/SVGTextRunRenderingContext.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/SVGTextRunRenderingContext.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/SVGTextRunRenderingContext.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -262,13 +262,13 @@
</span><span class="cx"> return std::make_unique<SVGGlyphToPathTranslator>(textRun, glyphBuffer, point, *svgFontData, *fontElement, from, numGlyphs, scale, isVerticalText);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void SVGTextRunRenderingContext::drawSVGGlyphs(GraphicsContext* context, const Font* font, const GlyphBuffer& glyphBuffer, int from, int numGlyphs, const FloatPoint& point) const
</del><ins>+void SVGTextRunRenderingContext::drawSVGGlyphs(GraphicsContext& context, const Font& font, const GlyphBuffer& glyphBuffer, int from, int numGlyphs, const FloatPoint& point) const
</ins><span class="cx"> {
</span><span class="cx"> auto activePaintingResource = this->activePaintingResource();
</span><span class="cx"> if (!activePaintingResource) {
</span><span class="cx"> // TODO: We're only supporting simple filled HTML text so far.
</span><span class="cx"> RenderSVGResourceSolidColor* solidPaintingResource = RenderSVGResource::sharedSolidPaintingResource();
</span><del>- solidPaintingResource->setColor(context->fillColor());
</del><ins>+ solidPaintingResource->setColor(context.fillColor());
</ins><span class="cx"> activePaintingResource = solidPaintingResource;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -277,15 +277,16 @@
</span><span class="cx">
</span><span class="cx"> ASSERT(activePaintingResource);
</span><span class="cx">
</span><del>- RenderSVGResourceMode resourceMode = context->textDrawingMode() == TextModeStroke ? ApplyToStrokeMode : ApplyToFillMode;
- for (auto translator = createGlyphToPathTranslator(*font, nullptr, glyphBuffer, from, numGlyphs, point); translator->containsMorePaths(); translator->advance()) {
</del><ins>+ GraphicsContext* usedContext = &context;
+ RenderSVGResourceMode resourceMode = context.textDrawingMode() == TextModeStroke ? ApplyToStrokeMode : ApplyToFillMode;
+ for (auto translator = createGlyphToPathTranslator(font, nullptr, glyphBuffer, from, numGlyphs, point); translator->containsMorePaths(); translator->advance()) {
</ins><span class="cx"> Path glyphPath = translator->path();
</span><del>- if (activePaintingResource->applyResource(elementRenderer, style, context, resourceMode)) {
- float strokeThickness = context->strokeThickness();
</del><ins>+ if (activePaintingResource->applyResource(elementRenderer, style, usedContext, resourceMode)) {
+ float strokeThickness = context.strokeThickness();
</ins><span class="cx"> if (is<RenderSVGInlineText>(renderer()))
</span><del>- context->setStrokeThickness(strokeThickness * downcast<RenderSVGInlineText>(renderer()).scalingFactor());
- activePaintingResource->postApplyResource(elementRenderer, context, resourceMode, &glyphPath, nullptr);
- context->setStrokeThickness(strokeThickness);
</del><ins>+ usedContext->setStrokeThickness(strokeThickness * downcast<RenderSVGInlineText>(renderer()).scalingFactor());
+ activePaintingResource->postApplyResource(elementRenderer, usedContext, resourceMode, &glyphPath, nullptr);
+ usedContext->setStrokeThickness(strokeThickness);
</ins><span class="cx"> }
</span><span class="cx"> }
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingsvgSVGTextRunRenderingContexth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/svg/SVGTextRunRenderingContext.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/svg/SVGTextRunRenderingContext.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/rendering/svg/SVGTextRunRenderingContext.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -43,7 +43,7 @@
</span><span class="cx"> void setActivePaintingResource(RenderSVGResource* object) { m_activePaintingResource = object; }
</span><span class="cx">
</span><span class="cx"> virtual GlyphData glyphDataForCharacter(const FontCascade&, WidthIterator&, UChar32 character, bool mirror, int currentCharacter, unsigned& advanceLength, String& normalizedSpacesStringCache) override;
</span><del>- virtual void drawSVGGlyphs(GraphicsContext*, const Font*, const GlyphBuffer&, int from, int to, const FloatPoint&) const override;
</del><ins>+ virtual void drawSVGGlyphs(GraphicsContext&, const Font&, const GlyphBuffer&, int from, int to, const FloatPoint&) const override;
</ins><span class="cx"> virtual float floatWidthUsingSVGFont(const FontCascade&, const TextRun&, int& charsConsumed, String& glyphName) const override;
</span><span class="cx"> virtual bool applySVGKerning(const Font*, WidthIterator&, GlyphBuffer*, int from) const override;
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebCoresvggraphicsSVGImagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/svg/graphics/SVGImage.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/svg/graphics/SVGImage.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/svg/graphics/SVGImage.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -137,7 +137,7 @@
</span><span class="cx"> return IntSize(300, 150);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void SVGImage::drawForContainer(GraphicsContext* context, const FloatSize containerSize, float zoom, const FloatRect& dstRect,
</del><ins>+void SVGImage::drawForContainer(GraphicsContext& context, const FloatSize containerSize, float zoom, const FloatRect& dstRect,
</ins><span class="cx"> const FloatRect& srcRect, ColorSpace colorSpace, CompositeOperator compositeOp, BlendMode blendMode)
</span><span class="cx"> {
</span><span class="cx"> if (!m_page)
</span><span class="lines">@@ -184,14 +184,14 @@
</span><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>-void SVGImage::drawPatternForContainer(GraphicsContext* context, const FloatSize containerSize, float zoom, const FloatRect& srcRect,
</del><ins>+void SVGImage::drawPatternForContainer(GraphicsContext& context, const FloatSize containerSize, float zoom, const FloatRect& srcRect,
</ins><span class="cx"> const AffineTransform& patternTransform, const FloatPoint& phase, ColorSpace colorSpace, CompositeOperator compositeOp, const FloatRect& dstRect, BlendMode blendMode)
</span><span class="cx"> {
</span><span class="cx"> FloatRect zoomedContainerRect = FloatRect(FloatPoint(), containerSize);
</span><span class="cx"> zoomedContainerRect.scale(zoom);
</span><span class="cx">
</span><span class="cx"> // The ImageBuffer size needs to be scaled to match the final resolution.
</span><del>- AffineTransform transform = context->getCTM();
</del><ins>+ AffineTransform transform = context.getCTM();
</ins><span class="cx"> FloatSize imageBufferScale = FloatSize(transform.xScale(), transform.yScale());
</span><span class="cx"> ASSERT(imageBufferScale.width());
</span><span class="cx"> ASSERT(imageBufferScale.height());
</span><span class="lines">@@ -203,7 +203,7 @@
</span><span class="cx"> if (!buffer) // Failed to allocate buffer.
</span><span class="cx"> return;
</span><span class="cx"> drawForContainer(buffer->context(), containerSize, zoom, imageBufferSize, zoomedContainerRect, ColorSpaceDeviceRGB, CompositeSourceOver, BlendModeNormal);
</span><del>- if (context->drawLuminanceMask())
</del><ins>+ if (context.drawLuminanceMask())
</ins><span class="cx"> buffer->convertToLuminanceMask();
</span><span class="cx">
</span><span class="cx"> RefPtr<Image> image = buffer->copyImage(DontCopyBackingStore, Unscaled);
</span><span class="lines">@@ -217,11 +217,11 @@
</span><span class="cx"> AffineTransform unscaledPatternTransform(patternTransform);
</span><span class="cx"> unscaledPatternTransform.scale(1 / imageBufferScale.width(), 1 / imageBufferScale.height());
</span><span class="cx">
</span><del>- context->setDrawLuminanceMask(false);
</del><ins>+ context.setDrawLuminanceMask(false);
</ins><span class="cx"> image->drawPattern(context, scaledSrcRect, unscaledPatternTransform, phase, colorSpace, compositeOp, dstRect, blendMode);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void SVGImage::draw(GraphicsContext* context, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace, CompositeOperator compositeOp, BlendMode blendMode, ImageOrientationDescription)
</del><ins>+void SVGImage::draw(GraphicsContext& context, const FloatRect& dstRect, const FloatRect& srcRect, ColorSpace, CompositeOperator compositeOp, BlendMode blendMode, ImageOrientationDescription)
</ins><span class="cx"> {
</span><span class="cx"> if (!m_page)
</span><span class="cx"> return;
</span><span class="lines">@@ -229,15 +229,15 @@
</span><span class="cx"> FrameView* view = frameView();
</span><span class="cx"> ASSERT(view);
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context);
- context->setCompositeOperation(compositeOp, blendMode);
- context->clip(enclosingIntRect(dstRect));
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
+ context.setCompositeOperation(compositeOp, blendMode);
+ context.clip(enclosingIntRect(dstRect));
</ins><span class="cx">
</span><del>- float alpha = context->alpha();
</del><ins>+ float alpha = context.alpha();
</ins><span class="cx"> bool compositingRequiresTransparencyLayer = compositeOp != CompositeSourceOver || blendMode != BlendModeNormal || alpha < 1;
</span><span class="cx"> if (compositingRequiresTransparencyLayer) {
</span><del>- context->beginTransparencyLayer(alpha);
- context->setCompositeOperation(CompositeSourceOver, BlendModeNormal);
</del><ins>+ context.beginTransparencyLayer(alpha);
+ context.setCompositeOperation(CompositeSourceOver, BlendModeNormal);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> FloatSize scale(dstRect.width() / srcRect.width(), dstRect.height() / srcRect.height());
</span><span class="lines">@@ -247,8 +247,8 @@
</span><span class="cx"> FloatSize topLeftOffset(srcRect.location().x() * scale.width(), srcRect.location().y() * scale.height());
</span><span class="cx"> FloatPoint destOffset = dstRect.location() - topLeftOffset;
</span><span class="cx">
</span><del>- context->translate(destOffset.x(), destOffset.y());
- context->scale(scale);
</del><ins>+ context.translate(destOffset.x(), destOffset.y());
+ context.scale(scale);
</ins><span class="cx">
</span><span class="cx"> view->resize(containerSize());
</span><span class="cx">
</span><span class="lines">@@ -258,10 +258,10 @@
</span><span class="cx"> if (view->needsLayout())
</span><span class="cx"> view->layout();
</span><span class="cx">
</span><del>- view->paint(context, intersection(context->clipBounds(), enclosingIntRect(srcRect)));
</del><ins>+ view->paint(context, intersection(context.clipBounds(), enclosingIntRect(srcRect)));
</ins><span class="cx">
</span><span class="cx"> if (compositingRequiresTransparencyLayer)
</span><del>- context->endTransparencyLayer();
</del><ins>+ context.endTransparencyLayer();
</ins><span class="cx">
</span><span class="cx"> stateSaver.restore();
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoresvggraphicsSVGImageh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/svg/graphics/SVGImage.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/svg/graphics/SVGImage.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/svg/graphics/SVGImage.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -91,9 +91,9 @@
</span><span class="cx"> virtual bool currentFrameKnownToBeOpaque() override { return false; }
</span><span class="cx">
</span><span class="cx"> SVGImage(ImageObserver&, const URL&);
</span><del>- virtual void draw(GraphicsContext*, const FloatRect& fromRect, const FloatRect& toRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override;
- void drawForContainer(GraphicsContext*, const FloatSize, float, const FloatRect&, const FloatRect&, ColorSpace, CompositeOperator, BlendMode);
- void drawPatternForContainer(GraphicsContext*, const FloatSize, float, const FloatRect&, const AffineTransform&, const FloatPoint&, ColorSpace,
</del><ins>+ virtual void draw(GraphicsContext&, const FloatRect& fromRect, const FloatRect& toRect, ColorSpace styleColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override;
+ void drawForContainer(GraphicsContext&, const FloatSize, float, const FloatRect&, const FloatRect&, ColorSpace, CompositeOperator, BlendMode);
+ void drawPatternForContainer(GraphicsContext&, const FloatSize, float, const FloatRect&, const AffineTransform&, const FloatPoint&, ColorSpace,
</ins><span class="cx"> CompositeOperator, const FloatRect&, BlendMode);
</span><span class="cx">
</span><span class="cx"> SVGSVGElement* rootElement() const;
</span></span></pre></div>
<a id="trunkSourceWebCoresvggraphicsSVGImageForContainercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/svg/graphics/SVGImageForContainer.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/svg/graphics/SVGImageForContainer.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/svg/graphics/SVGImageForContainer.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -34,13 +34,13 @@
</span><span class="cx"> return FloatSize(roundedIntSize(scaledContainerSize));
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void SVGImageForContainer::draw(GraphicsContext* context, const FloatRect& dstRect,
</del><ins>+void SVGImageForContainer::draw(GraphicsContext& context, const FloatRect& dstRect,
</ins><span class="cx"> const FloatRect& srcRect, ColorSpace colorSpace, CompositeOperator compositeOp, BlendMode blendMode, ImageOrientationDescription)
</span><span class="cx"> {
</span><span class="cx"> m_image->drawForContainer(context, m_containerSize, m_zoom, dstRect, srcRect, colorSpace, compositeOp, blendMode);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void SVGImageForContainer::drawPattern(GraphicsContext* context, const FloatRect& srcRect, const AffineTransform& patternTransform,
</del><ins>+void SVGImageForContainer::drawPattern(GraphicsContext& context, const FloatRect& srcRect, const AffineTransform& patternTransform,
</ins><span class="cx"> const FloatPoint& phase, ColorSpace colorSpace, CompositeOperator compositeOp, const FloatRect& dstRect, BlendMode blendMode)
</span><span class="cx"> {
</span><span class="cx"> m_image->setSpaceSize(spaceSize());
</span></span></pre></div>
<a id="trunkSourceWebCoresvggraphicsSVGImageForContainerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/svg/graphics/SVGImageForContainer.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/svg/graphics/SVGImageForContainer.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/svg/graphics/SVGImageForContainer.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -56,9 +56,9 @@
</span><span class="cx"> m_image->computeIntrinsicDimensions(intrinsicWidth, intrinsicHeight, intrinsicRatio);
</span><span class="cx"> }
</span><span class="cx">
</span><del>- virtual void draw(GraphicsContext*, const FloatRect&, const FloatRect&, ColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override;
</del><ins>+ virtual void draw(GraphicsContext&, const FloatRect&, const FloatRect&, ColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override;
</ins><span class="cx">
</span><del>- virtual void drawPattern(GraphicsContext*, const FloatRect&, const AffineTransform&, const FloatPoint&, ColorSpace, CompositeOperator, const FloatRect&, BlendMode) override;
</del><ins>+ virtual void drawPattern(GraphicsContext&, const FloatRect&, const AffineTransform&, const FloatPoint&, ColorSpace, CompositeOperator, const FloatRect&, BlendMode) override;
</ins><span class="cx">
</span><span class="cx"> // FIXME: Implement this to be less conservative.
</span><span class="cx"> virtual bool currentFrameKnownToBeOpaque() override { return false; }
</span></span></pre></div>
<a id="trunkSourceWebCoresvggraphicsfiltersSVGFEImagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/svg/graphics/filters/SVGFEImage.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/svg/graphics/filters/SVGFEImage.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebCore/svg/graphics/filters/SVGFEImage.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -117,7 +117,7 @@
</span><span class="cx">
</span><span class="cx"> if (renderer) {
</span><span class="cx"> const AffineTransform& absoluteTransform = filter().absoluteTransform();
</span><del>- resultImage->context()->concatCTM(absoluteTransform);
</del><ins>+ resultImage->context().concatCTM(absoluteTransform);
</ins><span class="cx">
</span><span class="cx"> SVGElement* contextNode = downcast<SVGElement>(renderer->element());
</span><span class="cx"> if (contextNode->hasRelativeLengths()) {
</span><span class="lines">@@ -127,7 +127,7 @@
</span><span class="cx"> // If we're referencing an element with percentage units, eg. <rect with="30%"> those values were resolved against the viewport.
</span><span class="cx"> // Build up a transformation that maps from the viewport space to the filter primitive subregion.
</span><span class="cx"> if (lengthContext.determineViewport(viewportSize))
</span><del>- resultImage->context()->concatCTM(makeMapBetweenRects(FloatRect(FloatPoint(), viewportSize), destRect));
</del><ins>+ resultImage->context().concatCTM(makeMapBetweenRects(FloatRect(FloatPoint(), viewportSize), destRect));
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> AffineTransform contentTransformation;
</span><span class="lines">@@ -135,7 +135,7 @@
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- resultImage->context()->drawImage(m_image.get(), ColorSpaceDeviceRGB, destRect, srcRect);
</del><ins>+ resultImage->context().drawImage(m_image.get(), ColorSpaceDeviceRGB, destRect, srcRect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void FEImage::dump()
</span></span></pre></div>
<a id="trunkSourceWebKitmacChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/ChangeLog (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/ChangeLog        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit/mac/ChangeLog        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1,3 +1,17 @@
</span><ins>+2015-08-28 Myles C. Maxfield <mmaxfield@apple.com>
+
+ Migrate GraphicsContexts from pointers to references
+ https://bugs.webkit.org/show_bug.cgi?id=148561
+
+ Reviewed by Tim Horton.
+
+ * Misc/WebKitNSStringExtras.mm:
+ (-[NSString _web_drawAtPoint:font:textColor:allowingFontSmoothing:]):
+ * WebCoreSupport/WebContextMenuClient.mm:
+ (WebContextMenuClient::imageForCurrentSharingServicePickerItem):
+ * WebView/WebFrame.mm:
+ (-[WebFrame _drawRect:contentsOnly:]):
+
</ins><span class="cx"> 2015-08-28 Eric Carlson <eric.carlson@apple.com>
</span><span class="cx">
</span><span class="cx"> [Mac] Restructure WebMediaSessionManager for testing
</span></span></pre></div>
<a id="trunkSourceWebKitmacMiscWebKitNSStringExtrasmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/Misc/WebKitNSStringExtras.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/Misc/WebKitNSStringExtras.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit/mac/Misc/WebKitNSStringExtras.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -102,7 +102,7 @@
</span><span class="cx"> [[textColor colorUsingColorSpaceName:NSDeviceRGBColorSpace] getRed:&red green:&green blue:&blue alpha:&alpha];
</span><span class="cx"> graphicsContext.setFillColor(makeRGBA(red * 255, green * 255, blue * 255, alpha * 255), ColorSpaceDeviceRGB);
</span><span class="cx">
</span><del>- webCoreFont.drawText(&graphicsContext, run, FloatPoint(point.x, (flipped ? point.y : (-1 * point.y))));
</del><ins>+ webCoreFont.drawText(graphicsContext, run, FloatPoint(point.x, (flipped ? point.y : (-1 * point.y))));
</ins><span class="cx">
</span><span class="cx"> if (!flipped)
</span><span class="cx"> CGContextScaleCTM(cgContext, 1, -1);
</span></span></pre></div>
<a id="trunkSourceWebKitmacWebCoreSupportWebContextMenuClientmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/WebCoreSupport/WebContextMenuClient.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/WebCoreSupport/WebContextMenuClient.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit/mac/WebCoreSupport/WebContextMenuClient.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -482,7 +482,7 @@
</span><span class="cx"> PaintBehavior oldPaintBehavior = frameView->paintBehavior();
</span><span class="cx"> frameView->setPaintBehavior(PaintBehaviorSelectionOnly);
</span><span class="cx">
</span><del>- buffer->context()->translate(-toFloatSize(rect.location()));
</del><ins>+ buffer->context().translate(-toFloatSize(rect.location()));
</ins><span class="cx"> frameView->paintContents(buffer->context(), roundedIntRect(rect));
</span><span class="cx">
</span><span class="cx"> frameView->frame().selection().setSelection(oldSelection);
</span></span></pre></div>
<a id="trunkSourceWebKitmacWebViewWebFramemm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/WebView/WebFrame.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/WebView/WebFrame.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit/mac/WebView/WebFrame.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -644,9 +644,9 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> if (contentsOnly)
</span><del>- view->paintContents(&context, enclosingIntRect(rect));
</del><ins>+ view->paintContents(context, enclosingIntRect(rect));
</ins><span class="cx"> else
</span><del>- view->paint(&context, enclosingIntRect(rect));
</del><ins>+ view->paint(context, enclosingIntRect(rect));
</ins><span class="cx">
</span><span class="cx"> if (shouldFlatten)
</span><span class="cx"> view->setPaintBehavior(oldBehavior);
</span></span></pre></div>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/ChangeLog        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1,3 +1,50 @@
</span><ins>+2015-08-28 Myles C. Maxfield <mmaxfield@apple.com>
+
+ Migrate GraphicsContexts from pointers to references
+ https://bugs.webkit.org/show_bug.cgi?id=148561
+
+ Reviewed by Tim Horton.
+
+ * PluginProcess/PluginControllerProxy.cpp:
+ (WebKit::PluginControllerProxy::paint):
+ * Shared/cairo/ShareableBitmapCairo.cpp:
+ (WebKit::ShareableBitmap::paint):
+ * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
+ (WebKit::imageForRect):
+ * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
+ (WebKit::InjectedBundleRangeHandle::renderedImage):
+ * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
+ (WebKit::NetscapePlugin::paint):
+ (WebKit::NetscapePlugin::snapshot):
+ * WebProcess/Plugins/Netscape/NetscapePlugin.h:
+ * WebProcess/Plugins/Netscape/NetscapePluginNone.cpp:
+ (WebKit::NetscapePlugin::platformPaint):
+ * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
+ (WebKit::NetscapePlugin::platformPaint):
+ * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
+ (WebKit::NetscapePlugin::platformPaint):
+ * WebProcess/Plugins/PDF/PDFPlugin.h:
+ * WebProcess/Plugins/PDF/PDFPlugin.mm:
+ (WebKit::PDFPlugin::updateControlTints):
+ (WebKit::PDFPlugin::paintControlForLayerInContext):
+ * WebProcess/Plugins/Plugin.cpp:
+ (WebKit::Plugin::updateControlTints):
+ * WebProcess/Plugins/Plugin.h:
+ * WebProcess/Plugins/PluginProxy.cpp:
+ (WebKit::PluginProxy::paint):
+ * WebProcess/Plugins/PluginProxy.h:
+ * WebProcess/Plugins/PluginView.cpp:
+ (WebKit::PluginView::paint):
+ * WebProcess/Plugins/PluginView.h:
+ * WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp:
+ (WebKit::convertCairoSurfaceToShareableBitmap):
+ * WebProcess/WebPage/WebPage.cpp:
+ (WebKit::WebPage::drawRect):
+ (WebKit::WebPage::snapshotAtSize):
+ (WebKit::WebPage::snapshotNode):
+ * WebProcess/WebPage/ios/FindControllerIOS.mm:
+ (WebKit::FindIndicatorOverlayClientIOS::drawRect):
+
</ins><span class="cx"> 2015-08-28 Eric Carlson <eric.carlson@apple.com>
</span><span class="cx">
</span><span class="cx"> [Mac] Restructure WebMediaSessionManager for testing
</span></span></pre></div>
<a id="trunkSourceWebKit2PluginProcessPluginControllerProxycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/PluginProcess/PluginControllerProxy.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/PluginProcess/PluginControllerProxy.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/PluginProcess/PluginControllerProxy.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -194,7 +194,7 @@
</span><span class="cx"> if (m_plugin->isTransparent())
</span><span class="cx"> graphicsContext->clearRect(dirtyRect);
</span><span class="cx">
</span><del>- m_plugin->paint(graphicsContext.get(), dirtyRect);
</del><ins>+ m_plugin->paint(*graphicsContext, dirtyRect);
</ins><span class="cx">
</span><span class="cx"> m_connection->connection()->send(Messages::PluginProxy::Update(dirtyRect), m_pluginInstanceID);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedcairoShareableBitmapCairocpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/cairo/ShareableBitmapCairo.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/cairo/ShareableBitmapCairo.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/Shared/cairo/ShareableBitmapCairo.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -69,7 +69,7 @@
</span><span class="cx"> FloatRect destRect(dstPoint, srcRect.size());
</span><span class="cx"> FloatRect srcRectScaled(srcRect);
</span><span class="cx"> srcRectScaled.scale(scaleFactor);
</span><del>- context.platformContext()->drawSurfaceToContext(surface.get(), destRect, srcRectScaled, &context);
</del><ins>+ context.platformContext()->drawSurfaceToContext(surface.get(), destRect, srcRectScaled, context);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> PassRefPtr<cairo_surface_t> ShareableBitmap::createCairoSurface()
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessInjectedBundleDOMInjectedBundleNodeHandlecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -161,7 +161,7 @@
</span><span class="cx">
</span><span class="cx"> PaintBehavior oldPaintBehavior = frameView->paintBehavior();
</span><span class="cx"> frameView->setPaintBehavior(paintBehavior);
</span><del>- frameView->paintContentsForSnapshot(graphicsContext.get(), rect, shouldPaintSelection, FrameView::DocumentCoordinates);
</del><ins>+ frameView->paintContentsForSnapshot(*graphicsContext.get(), rect, shouldPaintSelection, FrameView::DocumentCoordinates);
</ins><span class="cx"> frameView->setPaintBehavior(oldPaintBehavior);
</span><span class="cx">
</span><span class="cx"> return snapshot.release();
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessInjectedBundleDOMInjectedBundleRangeHandlecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -143,7 +143,7 @@
</span><span class="cx"> frameView->setPaintBehavior(paintBehavior);
</span><span class="cx"> ownerDocument.updateLayout();
</span><span class="cx">
</span><del>- frameView->paint(graphicsContext.get(), paintRect);
</del><ins>+ frameView->paint(*graphicsContext, paintRect);
</ins><span class="cx"> frameView->setPaintBehavior(oldPaintBehavior);
</span><span class="cx">
</span><span class="cx"> frame->selection().setSelection(oldSelection);
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsNetscapeNetscapePlugincpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -744,7 +744,7 @@
</span><span class="cx"> m_timers.clear();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void NetscapePlugin::paint(GraphicsContext* context, const IntRect& dirtyRect)
</del><ins>+void NetscapePlugin::paint(GraphicsContext& context, const IntRect& dirtyRect)
</ins><span class="cx"> {
</span><span class="cx"> ASSERT(m_isStarted);
</span><span class="cx">
</span><span class="lines">@@ -768,7 +768,7 @@
</span><span class="cx"> // which we currently don't have initiated in the plug-in process.
</span><span class="cx"> context->scale(FloatSize(contentsScaleFactor(), contentsScaleFactor()));
</span><span class="cx">
</span><del>- platformPaint(context.get(), IntRect(IntPoint(), m_pluginSize), true);
</del><ins>+ platformPaint(*context, IntRect(IntPoint(), m_pluginSize), true);
</ins><span class="cx">
</span><span class="cx"> return bitmap;
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsNetscapeNetscapePluginh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -177,7 +177,7 @@
</span><span class="cx"> bool platformInvalidate(const WebCore::IntRect&);
</span><span class="cx"> void platformGeometryDidChange();
</span><span class="cx"> void platformVisibilityDidChange();
</span><del>- void platformPaint(WebCore::GraphicsContext*, const WebCore::IntRect& dirtyRect, bool isSnapshot = false);
</del><ins>+ void platformPaint(WebCore::GraphicsContext&, const WebCore::IntRect& dirtyRect, bool isSnapshot = false);
</ins><span class="cx">
</span><span class="cx"> bool platformHandleMouseEvent(const WebMouseEvent&);
</span><span class="cx"> bool platformHandleWheelEvent(const WebWheelEvent&);
</span><span class="lines">@@ -191,7 +191,7 @@
</span><span class="cx"> // Plugin
</span><span class="cx"> virtual bool initialize(const Parameters&) override;
</span><span class="cx"> virtual void destroy() override;
</span><del>- virtual void paint(WebCore::GraphicsContext*, const WebCore::IntRect& dirtyRect) override;
</del><ins>+ virtual void paint(WebCore::GraphicsContext&, const WebCore::IntRect& dirtyRect) override;
</ins><span class="cx"> virtual RefPtr<ShareableBitmap> snapshot() override;
</span><span class="cx"> #if PLATFORM(COCOA)
</span><span class="cx"> virtual PlatformLayer* pluginLayer() override;
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsNetscapeNetscapePluginNonecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePluginNone.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePluginNone.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePluginNone.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -59,7 +59,7 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void NetscapePlugin::platformPaint(GraphicsContext*, const IntRect&, bool)
</del><ins>+void NetscapePlugin::platformPaint(GraphicsContext&, const IntRect&, bool)
</ins><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsNetscapemacNetscapePluginMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -444,9 +444,9 @@
</span><span class="cx">
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>-void NetscapePlugin::platformPaint(GraphicsContext* context, const IntRect& dirtyRect, bool isSnapshot)
</del><ins>+void NetscapePlugin::platformPaint(GraphicsContext& context, const IntRect& dirtyRect, bool isSnapshot)
</ins><span class="cx"> {
</span><del>- CGContextRef platformContext = context->platformContext();
</del><ins>+ CGContextRef platformContext = context.platformContext();
</ins><span class="cx">
</span><span class="cx"> switch (m_eventModel) {
</span><span class="cx"> case NPEventModelCocoa: {
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsNetscapex11NetscapePluginX11cpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -279,7 +279,7 @@
</span><span class="cx"> controller()->windowedPluginGeometryDidChange(m_frameRectInWindowCoordinates, m_clipRect, windowID);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void NetscapePlugin::platformPaint(GraphicsContext* context, const IntRect& dirtyRect, bool /*isSnapshot*/)
</del><ins>+void NetscapePlugin::platformPaint(GraphicsContext& context, const IntRect& dirtyRect, bool /*isSnapshot*/)
</ins><span class="cx"> {
</span><span class="cx"> if (m_isWindowed)
</span><span class="cx"> return;
</span><span class="lines">@@ -289,7 +289,7 @@
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- if (context->paintingDisabled() || !m_drawable)
</del><ins>+ if (context.paintingDisabled() || !m_drawable)
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> XEvent xevent;
</span><span class="lines">@@ -316,7 +316,7 @@
</span><span class="cx"> #if PLATFORM(GTK) || (PLATFORM(EFL) && USE(CAIRO))
</span><span class="cx"> RefPtr<cairo_surface_t> drawableSurface = adoptRef(cairo_xlib_surface_create(m_pluginDisplay, m_drawable.get(),
</span><span class="cx"> static_cast<NPSetWindowCallbackStruct*>(m_npWindow.ws_info)->visual, m_pluginSize.width(), m_pluginSize.height()));
</span><del>- cairo_t* cr = context->platformContext()->cr();
</del><ins>+ cairo_t* cr = context.platformContext()->cr();
</ins><span class="cx"> cairo_save(cr);
</span><span class="cx">
</span><span class="cx"> cairo_set_source_surface(cr, drawableSurface.get(), 0, 0);
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPDFPDFPluginh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/PDF/PDFPlugin.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/PDF/PDFPlugin.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PDF/PDFPlugin.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -115,8 +115,8 @@
</span><span class="cx"> // Plugin functions.
</span><span class="cx"> virtual bool initialize(const Parameters&) override;
</span><span class="cx"> virtual void destroy() override;
</span><del>- virtual void paint(WebCore::GraphicsContext*, const WebCore::IntRect& dirtyRectInWindowCoordinates) override { }
- virtual void updateControlTints(WebCore::GraphicsContext*) override;
</del><ins>+ virtual void paint(WebCore::GraphicsContext&, const WebCore::IntRect& dirtyRectInWindowCoordinates) override { }
+ virtual void updateControlTints(WebCore::GraphicsContext&) override;
</ins><span class="cx"> virtual bool supportsSnapshotting() const override { return true; }
</span><span class="cx"> virtual RefPtr<ShareableBitmap> snapshot() override;
</span><span class="cx"> virtual PlatformLayer* pluginLayer() override;
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPDFPDFPluginmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/PDF/PDFPlugin.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/PDF/PDFPlugin.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PDF/PDFPlugin.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1111,9 +1111,9 @@
</span><span class="cx"> [m_contentLayer removeFromSuperlayer];
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void PDFPlugin::updateControlTints(GraphicsContext* graphicsContext)
</del><ins>+void PDFPlugin::updateControlTints(GraphicsContext& graphicsContext)
</ins><span class="cx"> {
</span><del>- ASSERT(graphicsContext->updatingControlTints());
</del><ins>+ ASSERT(graphicsContext.updatingControlTints());
</ins><span class="cx">
</span><span class="cx"> if (m_horizontalScrollbar)
</span><span class="cx"> m_horizontalScrollbar->invalidate();
</span><span class="lines">@@ -1132,7 +1132,7 @@
</span><span class="cx"> if (layer == m_scrollCornerLayer) {
</span><span class="cx"> IntRect scrollCornerRect = this->scrollCornerRect();
</span><span class="cx"> graphicsContext.translate(-scrollCornerRect.x(), -scrollCornerRect.y());
</span><del>- ScrollbarTheme::theme()->paintScrollCorner(0, &graphicsContext, scrollCornerRect);
</del><ins>+ ScrollbarTheme::theme()->paintScrollCorner(nullptr, graphicsContext, scrollCornerRect);
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -1147,7 +1147,7 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> graphicsContext.translate(-scrollbar->x(), -scrollbar->y());
</span><del>- scrollbar->paint(&graphicsContext, scrollbar->frameRect());
</del><ins>+ scrollbar->paint(graphicsContext, scrollbar->frameRect());
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> RefPtr<ShareableBitmap> PDFPlugin::snapshot()
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPlugincpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/Plugin.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/Plugin.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/Plugins/Plugin.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -103,7 +103,7 @@
</span><span class="cx"> m_pluginController = 0;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void Plugin::updateControlTints(GraphicsContext*)
</del><ins>+void Plugin::updateControlTints(GraphicsContext&)
</ins><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPluginh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/Plugin.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/Plugin.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/Plugins/Plugin.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -126,10 +126,10 @@
</span><span class="cx">
</span><span class="cx"> // Tells the plug-in to paint itself into the given graphics context. The passed-in context and
</span><span class="cx"> // dirty rect are in window coordinates. The context is saved/restored by the caller.
</span><del>- virtual void paint(WebCore::GraphicsContext*, const WebCore::IntRect& dirtyRect) = 0;
</del><ins>+ virtual void paint(WebCore::GraphicsContext&, const WebCore::IntRect& dirtyRect) = 0;
</ins><span class="cx">
</span><span class="cx"> // Invalidate native tintable controls. The passed-in context is in window coordinates.
</span><del>- virtual void updateControlTints(WebCore::GraphicsContext*);
</del><ins>+ virtual void updateControlTints(WebCore::GraphicsContext&);
</ins><span class="cx">
</span><span class="cx"> // Returns whether the plug-in supports snapshotting or not.
</span><span class="cx"> virtual bool supportsSnapshotting() const = 0;
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPluginProxycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -200,7 +200,7 @@
</span><span class="cx"> m_connection->removePluginProxy(this);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void PluginProxy::paint(GraphicsContext* graphicsContext, const IntRect& dirtyRect)
</del><ins>+void PluginProxy::paint(GraphicsContext& graphicsContext, const IntRect& dirtyRect)
</ins><span class="cx"> {
</span><span class="cx"> if (!needsBackingStore() || !m_backingStore)
</span><span class="cx"> return;
</span><span class="lines">@@ -218,7 +218,7 @@
</span><span class="cx"> m_pluginBackingStoreContainsValidData = true;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- m_backingStore->paint(*graphicsContext, contentsScaleFactor(), dirtyRect.location(), dirtyRect);
</del><ins>+ m_backingStore->paint(graphicsContext, contentsScaleFactor(), dirtyRect.location(), dirtyRect);
</ins><span class="cx">
</span><span class="cx"> if (m_waitingForPaintInResponseToUpdate) {
</span><span class="cx"> m_waitingForPaintInResponseToUpdate = false;
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPluginProxyh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -77,7 +77,7 @@
</span><span class="cx"> bool initializeSynchronously();
</span><span class="cx">
</span><span class="cx"> virtual void destroy() override;
</span><del>- virtual void paint(WebCore::GraphicsContext*, const WebCore::IntRect& dirtyRect) override;
</del><ins>+ virtual void paint(WebCore::GraphicsContext&, const WebCore::IntRect& dirtyRect) override;
</ins><span class="cx"> virtual bool supportsSnapshotting() const override;
</span><span class="cx"> virtual RefPtr<ShareableBitmap> snapshot() override;
</span><span class="cx"> #if PLATFORM(COCOA)
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPluginViewcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -792,13 +792,13 @@
</span><span class="cx"> viewGeometryDidChange();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void PluginView::paint(GraphicsContext* context, const IntRect& /*dirtyRect*/)
</del><ins>+void PluginView::paint(GraphicsContext& context, const IntRect& /*dirtyRect*/)
</ins><span class="cx"> {
</span><span class="cx"> if (!m_plugin || !m_isInitialized || m_pluginElement->displayState() < HTMLPlugInElement::Restarting)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- if (context->paintingDisabled()) {
- if (context->updatingControlTints())
</del><ins>+ if (context.paintingDisabled()) {
+ if (context.updatingControlTints())
</ins><span class="cx"> m_plugin->updateControlTints(context);
</span><span class="cx"> return;
</span><span class="cx"> }
</span><span class="lines">@@ -810,14 +810,14 @@
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> if (m_transientPaintingSnapshot) {
</span><del>- m_transientPaintingSnapshot->paint(*context, contentsScaleFactor(), frameRect().location(), m_transientPaintingSnapshot->bounds());
</del><ins>+ m_transientPaintingSnapshot->paint(context, contentsScaleFactor(), frameRect().location(), m_transientPaintingSnapshot->bounds());
</ins><span class="cx"> return;
</span><span class="cx"> }
</span><span class="cx">
</span><del>- GraphicsContextStateSaver stateSaver(*context);
</del><ins>+ GraphicsContextStateSaver stateSaver(context);
</ins><span class="cx">
</span><span class="cx"> // Translate the coordinate system so that the origin is in the top-left corner of the plug-in.
</span><del>- context->translate(frameRect().location().x(), frameRect().location().y());
</del><ins>+ context.translate(frameRect().location().x(), frameRect().location().y());
</ins><span class="cx">
</span><span class="cx"> m_plugin->paint(context, paintRect);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPluginViewh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginView.h (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/PluginView.h        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginView.h        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -171,7 +171,7 @@
</span><span class="cx">
</span><span class="cx"> // WebCore::Widget
</span><span class="cx"> virtual void setFrameRect(const WebCore::IntRect&) override;
</span><del>- virtual void paint(WebCore::GraphicsContext*, const WebCore::IntRect&) override;
</del><ins>+ virtual void paint(WebCore::GraphicsContext&, const WebCore::IntRect&) override;
</ins><span class="cx"> virtual void invalidateRect(const WebCore::IntRect&) override;
</span><span class="cx"> virtual void setFocus(bool) override;
</span><span class="cx"> virtual void frameRectsChanged() override;
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebCoreSupportgtkWebDragClientGtkcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -52,7 +52,7 @@
</span><span class="cx"> RefPtr<ShareableBitmap> bitmap = ShareableBitmap::createShareable(imageSize, ShareableBitmap::SupportsAlpha);
</span><span class="cx"> auto graphicsContext = bitmap->createGraphicsContext();
</span><span class="cx">
</span><del>- graphicsContext->platformContext()->drawSurfaceToContext(surface, IntRect(IntPoint(), imageSize), IntRect(IntPoint(), imageSize), graphicsContext.get());
</del><ins>+ graphicsContext->platformContext()->drawSurfaceToContext(surface, IntRect(IntPoint(), imageSize), IntRect(IntPoint(), imageSize), *graphicsContext);
</ins><span class="cx"> return bitmap.release();
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPageWebPagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -1334,7 +1334,7 @@
</span><span class="cx"> GraphicsContextStateSaver stateSaver(graphicsContext);
</span><span class="cx"> graphicsContext.clip(rect);
</span><span class="cx">
</span><del>- m_mainFrame->coreFrame()->view()->paint(&graphicsContext, rect);
</del><ins>+ m_mainFrame->coreFrame()->view()->paint(graphicsContext, rect);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> double WebPage::textZoomFactor() const
</span><span class="lines">@@ -1763,7 +1763,7 @@
</span><span class="cx"> if (options & SnapshotOptionsInViewCoordinates)
</span><span class="cx"> coordinateSpace = FrameView::ViewCoordinates;
</span><span class="cx">
</span><del>- frameView->paintContentsForSnapshot(graphicsContext.get(), snapshotRect, shouldPaintSelection, coordinateSpace);
</del><ins>+ frameView->paintContentsForSnapshot(*graphicsContext, snapshotRect, shouldPaintSelection, coordinateSpace);
</ins><span class="cx">
</span><span class="cx"> if (options & SnapshotOptionsPaintSelectionRectangle) {
</span><span class="cx"> FloatRect selectionRectangle = m_mainFrame->coreFrame()->selection().selectionBounds();
</span><span class="lines">@@ -1819,7 +1819,7 @@
</span><span class="cx"> frameView->setBaseBackgroundColor(Color::transparent);
</span><span class="cx"> frameView->setNodeToDraw(&node);
</span><span class="cx">
</span><del>- frameView->paintContentsForSnapshot(graphicsContext.get(), snapshotRect, FrameView::ExcludeSelection, FrameView::DocumentCoordinates);
</del><ins>+ frameView->paintContentsForSnapshot(*graphicsContext, snapshotRect, FrameView::ExcludeSelection, FrameView::DocumentCoordinates);
</ins><span class="cx">
</span><span class="cx"> frameView->setBaseBackgroundColor(savedBackgroundColor);
</span><span class="cx"> frameView->setNodeToDraw(nullptr);
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPageiosFindControllerIOSmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/ios/FindControllerIOS.mm (189143 => 189144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebPage/ios/FindControllerIOS.mm        2015-08-29 05:45:41 UTC (rev 189143)
+++ trunk/Source/WebKit2/WebProcess/WebPage/ios/FindControllerIOS.mm        2015-08-29 06:15:28 UTC (rev 189144)
</span><span class="lines">@@ -72,7 +72,7 @@
</span><span class="cx"> GraphicsContextStateSaver stateSaver(context);
</span><span class="cx"> context.translate(-overlayFrame.x(), -overlayFrame.y());
</span><span class="cx"> m_frame.view()->setPaintBehavior(PaintBehaviorSelectionOnly | PaintBehaviorForceBlackText | PaintBehaviorFlattenCompositingLayers);
</span><del>- m_frame.view()->paintContents(&context, overlayFrame);
</del><ins>+ m_frame.view()->paintContents(context, overlayFrame);
</ins><span class="cx"> m_frame.view()->setPaintBehavior(PaintBehaviorNormal);
</span><span class="cx"> }
</span><span class="cx"> }
</span></span></pre>
</div>
</div>
</body>
</html>