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

Side by Side Diff: Source/core/rendering/compositing/RenderLayerCompositor.cpp

Issue 336493004: Removing a RenderLayer's CLM should trigger a repaint (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2009, 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2009, 2010 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 414 matching lines...) Expand 10 before | Expand all | Expand 10 after
425 if (layer->isReflection()) { 425 if (layer->isReflection()) {
426 RenderLayer* sourceLayer = toRenderLayerModelObject(layer->rende rer()->parent())->layer(); 426 RenderLayer* sourceLayer = toRenderLayerModelObject(layer->rende rer()->parent())->layer();
427 if (sourceLayer->hasCompositedLayerMapping()) { 427 if (sourceLayer->hasCompositedLayerMapping()) {
428 ASSERT(sourceLayer->compositedLayerMapping()->mainGraphicsLa yer()->replicaLayer() == layer->compositedLayerMapping()->mainGraphicsLayer()); 428 ASSERT(sourceLayer->compositedLayerMapping()->mainGraphicsLa yer()->replicaLayer() == layer->compositedLayerMapping()->mainGraphicsLayer());
429 sourceLayer->compositedLayerMapping()->mainGraphicsLayer()-> setReplicatedByLayer(0); 429 sourceLayer->compositedLayerMapping()->mainGraphicsLayer()-> setReplicatedByLayer(0);
430 } 430 }
431 } 431 }
432 432
433 layer->clearCompositedLayerMapping(); 433 layer->clearCompositedLayerMapping();
434 compositedLayerMappingChanged = true; 434 compositedLayerMappingChanged = true;
435
436 // If we need to repaint, do so now that we've removed the composite dLayerMapping.
437 repaintOnCompositingChange(layer);
Ian Vollick 2014/06/12 20:17:10 This is interesting. When compositedLayerMappingCh
ajuma 2014/06/12 20:33:50 The call to allocateOrClearCompositedLayerMapping
Ian Vollick 2014/06/12 20:37:07 Ah, right! I think that's far preferable to issuin
chrishtr 2014/06/12 20:37:29 Please do it there instead. That way it's containe
ajuma 2014/06/12 21:08:00 Done.
435 } 438 }
436 439
437 break; 440 break;
438 case RemoveFromSquashingLayer: 441 case RemoveFromSquashingLayer:
439 case NoCompositingStateChange: 442 case NoCompositingStateChange:
440 // Do nothing. 443 // Do nothing.
441 break; 444 break;
442 } 445 }
443 446
444 if (layer->hasCompositedLayerMapping() && layer->compositedLayerMapping()->u pdateRequiresOwnBackingStoreForIntrinsicReasons()) 447 if (layer->hasCompositedLayerMapping() && layer->compositedLayerMapping()->u pdateRequiresOwnBackingStoreForIntrinsicReasons())
(...skipping 794 matching lines...) Expand 10 before | Expand all | Expand 10 after
1239 } else if (graphicsLayer == m_scrollLayer.get()) { 1242 } else if (graphicsLayer == m_scrollLayer.get()) {
1240 name = "LocalFrame Scrolling Layer"; 1243 name = "LocalFrame Scrolling Layer";
1241 } else { 1244 } else {
1242 ASSERT_NOT_REACHED(); 1245 ASSERT_NOT_REACHED();
1243 } 1246 }
1244 1247
1245 return name; 1248 return name;
1246 } 1249 }
1247 1250
1248 } // namespace WebCore 1251 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698