summaryrefslogtreecommitdiffstats
path: root/chromium/cc/layers/render_surface_impl.h
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2017-07-12 14:07:37 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2017-07-17 10:29:26 +0000
commitec02ee4181c49b61fce1c8fb99292dbb8139cc90 (patch)
tree25cde714b2b71eb639d1cd53f5a22e9ba76e14ef /chromium/cc/layers/render_surface_impl.h
parentbb09965444b5bb20b096a291445170876225268d (diff)
BASELINE: Update Chromium to 59.0.3071.134
Change-Id: Id02ef6fb2204c5fd21668a1c3e6911c83b17585a Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'chromium/cc/layers/render_surface_impl.h')
-rw-r--r--chromium/cc/layers/render_surface_impl.h34
1 files changed, 19 insertions, 15 deletions
diff --git a/chromium/cc/layers/render_surface_impl.h b/chromium/cc/layers/render_surface_impl.h
index 1b2f0cd2b23..5cf15e86af2 100644
--- a/chromium/cc/layers/render_surface_impl.h
+++ b/chromium/cc/layers/render_surface_impl.h
@@ -12,7 +12,7 @@
#include <vector>
#include "base/macros.h"
-#include "cc/base/cc_export.h"
+#include "cc/cc_export.h"
#include "cc/layers/layer_collections.h"
#include "cc/quads/render_pass.h"
#include "cc/quads/shared_quad_state.h"
@@ -24,16 +24,13 @@
namespace cc {
+class AppendQuadsData;
class DamageTracker;
class FilterOperations;
class Occlusion;
-class RenderPassSink;
class LayerImpl;
-class LayerIterator;
class LayerTreeImpl;
-struct AppendQuadsData;
-
class CC_EXPORT RenderSurfaceImpl {
public:
RenderSurfaceImpl(LayerTreeImpl* layer_tree_impl, int stable_effect_id);
@@ -99,6 +96,14 @@ class CC_EXPORT RenderSurfaceImpl {
contributes_to_drawn_surface_ = contributes_to_drawn_surface;
}
+ void set_has_contributing_layer_that_escapes_clip(
+ bool contributing_layer_escapes_clip) {
+ has_contributing_layer_that_escapes_clip_ = contributing_layer_escapes_clip;
+ }
+ bool has_contributing_layer_that_escapes_clip() const {
+ return has_contributing_layer_that_escapes_clip_;
+ }
+
void CalculateContentRectFromAccumulatedContentRect(int max_texture_size);
void SetContentRectToViewport();
void SetContentRectForTesting(const gfx::Rect& rect);
@@ -132,7 +137,7 @@ class CC_EXPORT RenderSurfaceImpl {
const FilterOperations& Filters() const;
const FilterOperations& BackgroundFilters() const;
gfx::PointF FiltersOrigin() const;
- gfx::Transform FiltersTransform() const;
+ gfx::Transform SurfaceScale() const;
bool HasCopyRequest() const;
@@ -147,7 +152,7 @@ class CC_EXPORT RenderSurfaceImpl {
int GetRenderPassId();
- void AppendRenderPasses(RenderPassSink* pass_sink);
+ std::unique_ptr<RenderPass> CreateRenderPass();
void AppendQuads(RenderPass* render_pass, AppendQuadsData* append_quads_data);
int TransformTreeIndex() const;
@@ -156,13 +161,16 @@ class CC_EXPORT RenderSurfaceImpl {
void set_effect_tree_index(int index) { effect_tree_index_ = index; }
int EffectTreeIndex() const;
+ const EffectNode* OwningEffectNode() const;
+
private:
void SetContentRect(const gfx::Rect& content_rect);
gfx::Rect CalculateClippedAccumulatedContentRect();
gfx::Rect CalculateExpandedClipForFilters(
const gfx::Transform& target_to_surface);
-
- const EffectNode* OwningEffectNode() const;
+ void TileMaskLayer(RenderPass* render_pass,
+ SharedQuadState* shared_quad_state,
+ const gfx::Rect& visible_layer_rect);
LayerTreeImpl* layer_tree_impl_;
int stable_effect_id_;
@@ -196,6 +204,8 @@ class CC_EXPORT RenderSurfaceImpl {
// Is used to calculate the content rect from property trees.
gfx::Rect accumulated_content_rect_;
+ // Is used to decide if the surface is clipped.
+ bool has_contributing_layer_that_escapes_clip_ : 1;
bool surface_property_changed_ : 1;
bool ancestor_property_changed_ : 1;
@@ -210,12 +220,6 @@ class CC_EXPORT RenderSurfaceImpl {
std::unique_ptr<DamageTracker> damage_tracker_;
- // For LayerIteratorActions
- int target_render_surface_layer_index_history_;
- size_t current_layer_index_history_;
-
- friend class LayerIterator;
-
DISALLOW_COPY_AND_ASSIGN(RenderSurfaceImpl);
};