Don't scroll List on scroll wheel events outside of its bounds (#3685)

This commit is contained in:
Max Brunsfeld
2023-12-15 13:47:40 -08:00
committed by GitHub
+4 -1
View File
@@ -458,7 +458,10 @@ impl Element for List {
let list_state = self.state.clone();
let height = bounds.size.height;
cx.on_mouse_event(move |event: &ScrollWheelEvent, phase, cx| {
if phase == DispatchPhase::Bubble {
if phase == DispatchPhase::Bubble
&& bounds.contains(&event.position)
&& cx.was_top_layer(&event.position, cx.stacking_order())
{
list_state.0.borrow_mut().scroll(
&scroll_top,
height,