From dc1ff0e63e78aa998074678d7fbdfeee5ab8adab Mon Sep 17 00:00:00 2001 From: adamelmore <2363879+adamdottv@users.noreply.github.com> Date: Sat, 24 Jan 2026 14:50:22 -0600 Subject: [PATCH] fix(app): model select not closing on escape --- .../app/src/components/dialog-select-model.tsx | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/packages/app/src/components/dialog-select-model.tsx b/packages/app/src/components/dialog-select-model.tsx index 4d2646e8f..2ee1d9db1 100644 --- a/packages/app/src/components/dialog-select-model.tsx +++ b/packages/app/src/components/dialog-select-model.tsx @@ -167,6 +167,7 @@ export function ModelSelectorPopover(props: { if (next) setStore("dismiss", null) setStore("open", next) }} + modal={false} placement="top-start" gutter={8} > @@ -181,6 +182,20 @@ export function ModelSelectorPopover(props: { setStore("content", el)} class="w-72 h-80 flex flex-col rounded-md border border-border-base bg-surface-raised-stronger-non-alpha shadow-md z-50 outline-none overflow-hidden" + onEscapeKeyDown={(event) => { + setStore("dismiss", "escape") + setStore("open", false) + event.preventDefault() + event.stopPropagation() + }} + onPointerDownOutside={() => { + setStore("dismiss", "outside") + setStore("open", false) + }} + onFocusOutside={() => { + setStore("dismiss", "outside") + setStore("open", false) + }} onCloseAutoFocus={(event) => { if (store.dismiss === "outside") event.preventDefault() setStore("dismiss", null)