address issue where mouse down events weren't getting captured after the multiple handlers change

This commit is contained in:
Kay Simmons 2022-11-18 13:04:27 -08:00
parent 6b1e9c185a
commit 845fb390b7

View file

@ -485,7 +485,7 @@ impl Presenter {
}
// `event_consumed` should only be true if there are any handlers for this event.
let mut event_consumed = false;
let mut event_consumed = event_cx.handled;
if let Some(callbacks) = valid_region.handlers.get(&mouse_event.handler_key()) {
event_consumed = true;
for callback in callbacks {
@ -499,6 +499,8 @@ impl Presenter {
}
}
any_event_handled |= event_cx.handled;
// For bubbling events, if the event was handled, don't continue dispatching.
// This only makes sense for local events which return false from is_capturable.
if event_consumed && mouse_event.is_capturable() {