diff --git a/crates/gpui/src/platform/windows/window.rs b/crates/gpui/src/platform/windows/window.rs index 2331179c4aaba4f4af382d2269d4ab1d7d57a624..b55c28fed4b4702e143802516bbb1acb02c503ca 100644 --- a/crates/gpui/src/platform/windows/window.rs +++ b/crates/gpui/src/platform/windows/window.rs @@ -572,7 +572,9 @@ impl WindowsWindowInner { keystroke, is_held: lparam.0 & (0x1 << 30) > 0, }; - if func(PlatformInput::KeyDown(event)).default_prevented { + + let dispatch_event_result = func(PlatformInput::KeyDown(event)); + if dispatch_event_result.default_prevented || !dispatch_event_result.propagate { self.invalidate_client_area(); return LRESULT(0); }