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

Side by Side Diff: third_party/WebKit/Source/core/paint/BoxPainter.h

Issue 2068723002: Paint local attachment backgrounds into composited scrolling contents layer (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Improve opaque layer detection and fix non-composited border painting bug in layout tests. Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef BoxPainter_h 5 #ifndef BoxPainter_h
6 #define BoxPainter_h 6 #define BoxPainter_h
7 7
8 #include "core/layout/BackgroundBleedAvoidance.h" 8 #include "core/layout/BackgroundBleedAvoidance.h"
9 #include "core/style/ShadowData.h" 9 #include "core/style/ShadowData.h"
10 #include "platform/geometry/LayoutSize.h" 10 #include "platform/geometry/LayoutSize.h"
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 void paintFillLayers(const PaintInfo&, const Color&, const FillLayer&, const LayoutRect&, BackgroundBleedAvoidance = BackgroundBleedNone, SkXfermode::Mode = SkXfermode::kSrcOver_Mode, const LayoutObject* backgroundObject = nullptr); 51 void paintFillLayers(const PaintInfo&, const Color&, const FillLayer&, const LayoutRect&, BackgroundBleedAvoidance = BackgroundBleedNone, SkXfermode::Mode = SkXfermode::kSrcOver_Mode, const LayoutObject* backgroundObject = nullptr);
52 void paintMaskImages(const PaintInfo&, const LayoutRect&); 52 void paintMaskImages(const PaintInfo&, const LayoutRect&);
53 void paintBoxDecorationBackgroundWithRect(const PaintInfo&, const LayoutPoin t&, const LayoutRect&); 53 void paintBoxDecorationBackgroundWithRect(const PaintInfo&, const LayoutPoin t&, const LayoutRect&);
54 static void paintFillLayer(const LayoutBoxModelObject&, const PaintInfo&, co nst Color&, const FillLayer&, const LayoutRect&, BackgroundBleedAvoidance, const InlineFlowBox* = nullptr, const LayoutSize& = LayoutSize(), SkXfermode::Mode = SkXfermode::kSrcOver_Mode, const LayoutObject* backgroundObject = nullptr); 54 static void paintFillLayer(const LayoutBoxModelObject&, const PaintInfo&, co nst Color&, const FillLayer&, const LayoutRect&, BackgroundBleedAvoidance, const InlineFlowBox* = nullptr, const LayoutSize& = LayoutSize(), SkXfermode::Mode = SkXfermode::kSrcOver_Mode, const LayoutObject* backgroundObject = nullptr);
55 static InterpolationQuality chooseInterpolationQuality(const LayoutObject&, Image*, const void*, const LayoutSize&); 55 static InterpolationQuality chooseInterpolationQuality(const LayoutObject&, Image*, const void*, const LayoutSize&);
56 static bool paintNinePieceImage(const LayoutBoxModelObject&, GraphicsContext &, const LayoutRect&, const ComputedStyle&, const NinePieceImage&, SkXfermode::M ode = SkXfermode::kSrcOver_Mode); 56 static bool paintNinePieceImage(const LayoutBoxModelObject&, GraphicsContext &, const LayoutRect&, const ComputedStyle&, const NinePieceImage&, SkXfermode::M ode = SkXfermode::kSrcOver_Mode);
57 static void paintBorder(const LayoutBoxModelObject&, const PaintInfo&, const LayoutRect&, const ComputedStyle&, BackgroundBleedAvoidance = BackgroundBleedNo ne, bool includeLogicalLeftEdge = true, bool includeLogicalRightEdge = true); 57 static void paintBorder(const LayoutBoxModelObject&, const PaintInfo&, const LayoutRect&, const ComputedStyle&, BackgroundBleedAvoidance = BackgroundBleedNo ne, bool includeLogicalLeftEdge = true, bool includeLogicalRightEdge = true);
58 static void paintBoxShadow(const PaintInfo&, const LayoutRect&, const Comput edStyle&, ShadowStyle, bool includeLogicalLeftEdge = true, bool includeLogicalRi ghtEdge = true); 58 static void paintBoxShadow(const PaintInfo&, const LayoutRect&, const Comput edStyle&, ShadowStyle, bool includeLogicalLeftEdge = true, bool includeLogicalRi ghtEdge = true);
59 static bool shouldForceWhiteBackgroundForPrintEconomy(const ComputedStyle&, const Document&); 59 static bool shouldForceWhiteBackgroundForPrintEconomy(const ComputedStyle&, const Document&);
60 60
61 LayoutRect boundsForDrawingRecorder(const LayoutPoint& adjustedPaintOffset); 61 LayoutRect boundsForDrawingRecorder(const PaintInfo&, const LayoutPoint& adj ustedPaintOffset);
62 62
63 private: 63 private:
64 void paintBackground(const PaintInfo&, const LayoutRect&, const Color& backg roundColor, BackgroundBleedAvoidance = BackgroundBleedNone); 64 void paintBackground(const PaintInfo&, const LayoutRect&, const Color& backg roundColor, BackgroundBleedAvoidance = BackgroundBleedNone);
65 65
66 const LayoutBox& m_layoutBox; 66 const LayoutBox& m_layoutBox;
67 }; 67 };
68 68
69 } // namespace blink 69 } // namespace blink
70 70
71 #endif 71 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698