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

Unified Diff: cc/layers/layer_impl.cc

Issue 332873005: Rendering context information added to SharedQuadState (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Now plumbing rendering context IDs through WebLayerImpl Created 6 years, 6 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/layer_impl.cc
diff --git a/cc/layers/layer_impl.cc b/cc/layers/layer_impl.cc
index 79e64aa079c96d774d44ad4d791ca9d51b37abd2..acbb21f75cbdaaefd50b1074f3ee10e18e00d31e 100644
--- a/cc/layers/layer_impl.cc
+++ b/cc/layers/layer_impl.cc
@@ -61,7 +61,6 @@ LayerImpl::LayerImpl(LayerTreeImpl* tree_impl, int id)
force_render_surface_(false),
transform_is_invertible_(true),
is_container_for_fixed_position_layers_(false),
- is_3d_sorted_(false),
background_color_(0),
opacity_(1.0),
blend_mode_(SkXfermode::kSrcOver_Mode),
@@ -248,7 +247,8 @@ void LayerImpl::PopulateSharedQuadState(SharedQuadState* state) const {
draw_properties_.clip_rect,
draw_properties_.is_clipped,
draw_properties_.opacity,
- blend_mode_);
+ blend_mode_,
+ draw_properties_.context_id);
}
bool LayerImpl::WillDraw(DrawMode draw_mode,
@@ -516,7 +516,6 @@ void LayerImpl::PushPropertiesTo(LayerImpl* layer) {
is_container_for_fixed_position_layers_);
layer->SetPositionConstraint(position_constraint_);
layer->SetShouldFlattenTransform(should_flatten_transform_);
- layer->SetIs3dSorted(is_3d_sorted_);
layer->SetUseParentBackfaceVisibility(use_parent_backface_visibility_);
layer->SetTransformAndInvertibility(transform_, transform_is_invertible_);
@@ -527,6 +526,7 @@ void LayerImpl::PushPropertiesTo(LayerImpl* layer) {
layer->SetScrollOffsetAndDelta(
scroll_offset_, layer->ScrollDelta() - layer->sent_scroll_delta());
layer->SetSentScrollDelta(gfx::Vector2d());
+ layer->SetContextId(context_id());
LayerImpl* scroll_parent = NULL;
if (scroll_parent_) {
@@ -635,7 +635,7 @@ base::DictionaryValue* LayerImpl::LayerTreeAsJson() const {
result->Set("DrawTransform", list);
result->SetBoolean("DrawsContent", draws_content_);
- result->SetBoolean("Is3DSorted", is_3d_sorted_);
+ result->SetBoolean("Is3dSorted", Is3dSorted());
result->SetDouble("Opacity", opacity());
result->SetBoolean("ContentsOpaque", contents_opaque_);
@@ -978,11 +978,10 @@ void LayerImpl::SetShouldFlattenTransform(bool flatten) {
NoteLayerPropertyChangedForSubtree();
}
-void LayerImpl::SetIs3dSorted(bool sorted) {
- if (is_3d_sorted_ == sorted)
+void LayerImpl::SetContextId(int id) {
+ if ((id == 0 && context_id() == 0) || (id > 0 && context_id() > 0))
return;
-
- is_3d_sorted_ = sorted;
+ draw_properties_.context_id = id;
NoteLayerPropertyChangedForSubtree();
}

Powered by Google App Engine
This is Rietveld 408576698