Tracker: Fix esc to cancel type-ahead filtering in file panels

... by redirecting message to the PoseView. Filter out lock modifiers.

Fixes #13151

Change-Id: I0a17334aeb3b04b6271dec47e58aa4933ec6a0a5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9525
Reviewed-by: John Scipione <[email protected]>
Tested-by: Commit checker robot <[email protected]>
This commit is contained in:
John Scipione
2025-07-28 12:34:49 +00:00
parent f5dffd5ca3
commit 448e39f9c3
+2 -1
View File
@@ -130,6 +130,7 @@ key_down_filter(BMessage* message, BHandler** handler, BMessageFilter* filter)
return B_DISPATCH_MESSAGE;
int32 modifiers = message->GetInt32("modifiers", 0);
modifiers &= B_COMMAND_KEY | B_OPTION_KEY | B_SHIFT_KEY | B_CONTROL_KEY | B_MENU_KEY;
if ((modifiers & B_COMMAND_KEY) != 0) {
switch (key) {
@@ -150,7 +151,7 @@ key_down_filter(BMessage* message, BHandler** handler, BMessageFilter* filter)
if (view->ActivePose() != NULL)
view->CommitActivePose(false);
else if (view->IsTypeAheadFiltering())
BMessenger(panel).SendMessage(B_CANCEL, *handler);
BMessenger(panel->PoseView()).SendMessage(B_CANCEL, *handler);
else
BMessenger(panel).SendMessage(kCancelButton);