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 ca08b6f24da33a3b3a56811fee6ffd2e2cf9bc5a..67483420502ad7c9b19fab1b834352690fb269a3 100644 |
--- a/cc/trees/layer_tree_host_impl.cc |
+++ b/cc/trees/layer_tree_host_impl.cc |
@@ -3035,6 +3035,14 @@ InputHandler::ScrollStatus LayerTreeHostImpl::ScrollAnimated( |
} |
scroll_state.set_is_ending(true); |
ScrollEnd(&scroll_state); |
+ if (settings_.is_layer_tree_for_subframe && |
+ scroll_status.thread == SCROLL_ON_IMPL_THREAD) { |
+ // If we get to here, we shouldn't return SCROLL_ON_IMPL_THREAD as otherwise |
+ // we'll mark the scroll as handled and the scroll won't bubble. |
+ scroll_status.thread = SCROLL_IGNORED; |
+ scroll_status.main_thread_scrolling_reasons = |
+ MainThreadScrollingReason::kNotScrollable; |
+ } |
return scroll_status; |
} |