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

Unified Diff: cc/layers/nine_patch_layer_impl.h

Issue 1889153002: cc: nine patch: add occlusion support (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix int/size_t compilation issue Created 4 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: cc/layers/nine_patch_layer_impl.h
diff --git a/cc/layers/nine_patch_layer_impl.h b/cc/layers/nine_patch_layer_impl.h
index 539d8e717aed319b6c88bfc6c1e73f727b3a9308..78180cf645124e721103c7d1b0cc0e5df9e52fbe 100644
--- a/cc/layers/nine_patch_layer_impl.h
+++ b/cc/layers/nine_patch_layer_impl.h
@@ -54,10 +54,12 @@ class CC_EXPORT NinePatchLayerImpl : public UIResourceLayerImpl {
// |image_aperture| = (X, Y, P, Q)
// |border| = (A, C, A + B, C + D)
// |fill_center| indicates whether to draw the center quad or not.
+ // |occlusion_rectangle|
Daniel Erat 2016/04/15 15:38:45 this comment doesn't do much good on its own. :-P
llandwerlin-old 2016/04/18 15:08:20 Done.
void SetLayout(const gfx::Rect& image_aperture,
const gfx::Rect& border,
bool fill_center,
- bool nearest_neighbor);
+ bool nearest_neighbor,
+ const gfx::Rect& layer_occlusion);
scoped_ptr<LayerImpl> CreateLayerImpl(LayerTreeImpl* tree_impl) override;
void PushPropertiesTo(LayerImpl* layer) override;
@@ -75,6 +77,17 @@ class CC_EXPORT NinePatchLayerImpl : public UIResourceLayerImpl {
void CheckGeometryLimitations();
+ void AppendQuadsWithOcclusion(RenderPass* render_pass,
+ ResourceId resource,
+ SharedQuadState* shared_quad_state,
+ std::vector<gfx::Rect>* image_rects,
+ std::vector<gfx::Rect>* layer_rects);
+ void AppendQuadsWithoutOcclusion(RenderPass* render_pass,
+ ResourceId resource,
+ SharedQuadState* shared_quad_state,
+ std::vector<gfx::Rect>* image_rects,
+ std::vector<gfx::Rect>* layer_rects);
+
// The transparent center region that shows the parent layer's contents in
// image space.
gfx::Rect image_aperture_;
@@ -86,6 +99,8 @@ class CC_EXPORT NinePatchLayerImpl : public UIResourceLayerImpl {
bool nearest_neighbor_;
+ gfx::Rect layer_occlusion_;
+
DISALLOW_COPY_AND_ASSIGN(NinePatchLayerImpl);
};

Powered by Google App Engine
This is Rietveld 408576698