| Index: ui/views/view.h
 | 
| diff --git a/ui/views/view.h b/ui/views/view.h
 | 
| index bfa107c7eb59451d32fd8c211537fb1c21eda3d0..d1f69707fda4a74ca022439077464b8205df2fb0 100644
 | 
| --- a/ui/views/view.h
 | 
| +++ b/ui/views/view.h
 | 
| @@ -340,9 +340,8 @@ class VIEWS_EXPORT View : public ui::LayerDelegate,
 | 
|    // Compositor.
 | 
|    void SetPaintToLayer(ui::LayerType layer_type = ui::LAYER_TEXTURED);
 | 
|  
 | 
| -  // Destroys the layer associated with this view, and reparents any descendants
 | 
| -  // to the destroyed layer's parent. If the view does not currently have a
 | 
| -  // layer, this has no effect.
 | 
| +  // Please refer to the comments above the DestroyLayerImpl() function for
 | 
| +  // details.
 | 
|    void DestroyLayer();
 | 
|  
 | 
|    // Overridden from ui::LayerOwner:
 | 
| @@ -1189,6 +1188,11 @@ class VIEWS_EXPORT View : public ui::LayerDelegate,
 | 
|    // below layers owned by a view.
 | 
|    virtual void ReorderChildLayers(ui::Layer* parent_layer);
 | 
|  
 | 
| +  // Notifies parents about a layer being created or destroyed in a child. An
 | 
| +  // example where a subclass may override this method is when it wants to clip
 | 
| +  // the child by adding its own layer.
 | 
| +  virtual void OnChildLayerChanged(View* child);
 | 
| +
 | 
|    // Input ---------------------------------------------------------------------
 | 
|  
 | 
|    virtual DragInfo* GetDragInfo();
 | 
| @@ -1448,6 +1452,25 @@ class VIEWS_EXPORT View : public ui::LayerDelegate,
 | 
|    void UpdateLayerVisibility();
 | 
|    void UpdateChildLayerVisibility(bool visible);
 | 
|  
 | 
| +  enum class LayerChangeNotifyBehavior {
 | 
| +    // Notify the parent chain about the layer change.
 | 
| +    NOTIFY,
 | 
| +    // Don't notify the parent chain about the layer change.
 | 
| +    DONT_NOTIFY
 | 
| +  };
 | 
| +
 | 
| +  // Destroys the layer associated with this view, and reparents any descendants
 | 
| +  // to the destroyed layer's parent. If the view does not currently have a
 | 
| +  // layer, this has no effect.
 | 
| +  // The |notify_parents| enum controls whether a notification about the layer
 | 
| +  // change is sent to the parents.
 | 
| +  void DestroyLayerImpl(LayerChangeNotifyBehavior notify_parents);
 | 
| +
 | 
| +  // Notifies parents about layering changes in the view. This includes layer
 | 
| +  // creation and destruction.
 | 
| +  void NotifyParentsOfLayerChange();
 | 
| +
 | 
| +
 | 
|    // Orphans the layers in this subtree that are parented to layers outside of
 | 
|    // this subtree.
 | 
|    void OrphanLayers();
 | 
| 
 |