| Index: cc/trees/layer_tree_host.cc
 | 
| diff --git a/cc/trees/layer_tree_host.cc b/cc/trees/layer_tree_host.cc
 | 
| index 797e669b94ad1ddeba4de66f31e4e7ddded7c43e..e1faf99f04bcc4656ad7e09a1676517d29904493 100644
 | 
| --- a/cc/trees/layer_tree_host.cc
 | 
| +++ b/cc/trees/layer_tree_host.cc
 | 
| @@ -35,6 +35,7 @@
 | 
|  #include "cc/debug/rendering_stats_instrumentation.h"
 | 
|  #include "cc/input/layer_selection_bound.h"
 | 
|  #include "cc/input/page_scale_animation.h"
 | 
| +#include "cc/input/scroll_boundary_behavior.h"
 | 
|  #include "cc/layers/heads_up_display_layer.h"
 | 
|  #include "cc/layers/heads_up_display_layer_impl.h"
 | 
|  #include "cc/layers/layer.h"
 | 
| @@ -1015,6 +1016,14 @@ void LayerTreeHost::SetBrowserControlsShownRatio(float ratio) {
 | 
|    SetNeedsCommit();
 | 
|  }
 | 
|  
 | 
| +void LayerTreeHost::SetScrollBoundaryBehavior(
 | 
| +    const ScrollBoundaryBehavior& behavior) {
 | 
| +  if (scroll_boundary_behavior_ == behavior)
 | 
| +    return;
 | 
| +  scroll_boundary_behavior_ = behavior;
 | 
| +  SetNeedsCommit();
 | 
| +}
 | 
| +
 | 
|  void LayerTreeHost::SetPageScaleFactorAndLimits(float page_scale_factor,
 | 
|                                                  float min_page_scale_factor,
 | 
|                                                  float max_page_scale_factor) {
 | 
| @@ -1267,6 +1276,7 @@ void LayerTreeHost::PushLayerTreePropertiesTo(LayerTreeImpl* tree_impl) {
 | 
|        browser_controls_shrink_blink_size_);
 | 
|    tree_impl->set_top_controls_height(top_controls_height_);
 | 
|    tree_impl->set_bottom_controls_height(bottom_controls_height_);
 | 
| +  tree_impl->set_scroll_boundary_behavior(scroll_boundary_behavior_);
 | 
|    tree_impl->PushBrowserControlsFromMainThread(top_controls_shown_ratio_);
 | 
|    tree_impl->elastic_overscroll()->PushMainToPending(elastic_overscroll_);
 | 
|    if (tree_impl->IsActiveTree())
 | 
| 
 |