Index: cc/trees/layer_tree_host_impl.cc |
diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc |
index 121e824a08e9fd3cee2216e115bdd1918069515a..49beb0202d2b925340ba3b4dd224f4c95cc49aa1 100644 |
--- a/cc/trees/layer_tree_host_impl.cc |
+++ b/cc/trees/layer_tree_host_impl.cc |
@@ -2224,7 +2224,9 @@ bool LayerTreeHostImpl::ScrollBy(gfx::Point viewport_point, |
did_scroll_x |= did_move_layer_x; |
did_scroll_y |= did_move_layer_y; |
if (!did_move_layer_x && !did_move_layer_y) { |
- if (should_bubble_scrolls_ || !did_lock_scrolling_layer_) |
+ // Scrolls should always bubble between the outer and inner viewports |
+ if (should_bubble_scrolls_ || !did_lock_scrolling_layer_ || |
+ layer_impl == OuterViewportScrollLayer()) |
continue; |
else |
break; |