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

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

Issue 2410513002: Plumb preferred raster scale for background images from Blink to cc layers. (Closed)
Patch Set: none Created 4 years, 2 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 BackgroundImageGeometry_h 5 #ifndef BackgroundImageGeometry_h
6 #define BackgroundImageGeometry_h 6 #define BackgroundImageGeometry_h
7 7
8 #include "core/paint/PaintPhase.h" 8 #include "core/paint/PaintPhase.h"
9 #include "platform/geometry/LayoutPoint.h" 9 #include "platform/geometry/LayoutPoint.h"
10 #include "platform/geometry/LayoutRect.h" 10 #include "platform/geometry/LayoutRect.h"
(...skipping 12 matching lines...) Expand all
23 23
24 public: 24 public:
25 BackgroundImageGeometry() : m_hasNonLocalGeometry(false) {} 25 BackgroundImageGeometry() : m_hasNonLocalGeometry(false) {}
26 26
27 void calculate(const LayoutBoxModelObject&, 27 void calculate(const LayoutBoxModelObject&,
28 const LayoutBoxModelObject* paintContainer, 28 const LayoutBoxModelObject* paintContainer,
29 const GlobalPaintFlags, 29 const GlobalPaintFlags,
30 const FillLayer&, 30 const FillLayer&,
31 const LayoutRect& paintRect); 31 const LayoutRect& paintRect);
32 32
33 // destRect() is the rect in the space of the containing box into which to
34 // draw the image. If the image is repeated via tiling, tileSize() is the size
35 // in pixels of the box to draw the image once.
36 //
37 // tileSize() need not be the same as the intrinsic size of the image; if not,
38 // it means the image will be resized (via an image filter) when painted into
39 // that tile region.
40 //
41 // spaceSize().width in the horizontal and spaceSize().height in the vertical
42 // direction are the spaces between tiles, if the image is tiled.
33 const LayoutRect& destRect() const { return m_destRect; } 43 const LayoutRect& destRect() const { return m_destRect; }
34 const LayoutSize& tileSize() const { return m_tileSize; } 44 const LayoutSize& tileSize() const { return m_tileSize; }
35 const LayoutPoint& phase() const { return m_phase; } 45 const LayoutPoint& phase() const { return m_phase; }
36 // Space-size represents extra width and height that may be added to 46 // Space-size represents extra width and height that may be added to
37 // the image if used as a pattern with background-repeat: space. 47 // the image if used as a pattern with background-repeat: space.
38 const LayoutSize& spaceSize() const { return m_repeatSpacing; } 48 const LayoutSize& spaceSize() const { return m_repeatSpacing; }
39 // Has background-attachment: fixed. Implies that we can't always cheaply 49 // Has background-attachment: fixed. Implies that we can't always cheaply
40 // compute destRect. 50 // compute destRect.
41 bool hasNonLocalGeometry() const { return m_hasNonLocalGeometry; } 51 bool hasNonLocalGeometry() const { return m_hasNonLocalGeometry; }
42 52
(...skipping 29 matching lines...) Expand all
72 LayoutRect m_destRect; 82 LayoutRect m_destRect;
73 LayoutPoint m_phase; 83 LayoutPoint m_phase;
74 LayoutSize m_tileSize; 84 LayoutSize m_tileSize;
75 LayoutSize m_repeatSpacing; 85 LayoutSize m_repeatSpacing;
76 bool m_hasNonLocalGeometry; 86 bool m_hasNonLocalGeometry;
77 }; 87 };
78 88
79 } // namespace blink 89 } // namespace blink
80 90
81 #endif // BackgroundImageGeometry_h 91 #endif // BackgroundImageGeometry_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698