| ... | @@ -323,6 +323,9 @@ export const TraitsMenuContent = memo(function TraitsMenuContentImpl({ | ... | @@ -323,6 +323,9 @@ export const TraitsMenuContent = memo(function TraitsMenuContentImpl({ |
| 323 | key={option.id} | 323 | key={option.id} |
| 324 | value={option.id} | 324 | value={option.id} |
| 325 | hideIndicator | 325 | hideIndicator |
| | 326 | // Base UI keeps radio menus open by default. Close on pick so |
| | 327 | // the traits menu behaves like the model picker. |
| | 328 | closeOnClick |
| 326 | disabled={ultrathinkInBodyText && descriptor.id === primarySelectDescriptor?.id} | 329 | disabled={ultrathinkInBodyText && descriptor.id === primarySelectDescriptor?.id} |
| 327 | > | 330 | > |
| 328 | <span className="flex w-full min-w-0 items-center justify-between gap-3"> | 331 | <span className="flex w-full min-w-0 items-center justify-between gap-3"> |
| ... | @@ -362,7 +365,7 @@ export const TraitsMenuContent = memo(function TraitsMenuContentImpl({ | ... | @@ -362,7 +365,7 @@ export const TraitsMenuContent = memo(function TraitsMenuContentImpl({ |
| 362 | }} | 365 | }} |
| 363 | > | 366 | > |
| 364 | {(["on", "off"] as const).map((value) => ( | 367 | {(["on", "off"] as const).map((value) => ( |
| 365 | <MenuRadioItem key={value} value={value} hideIndicator> | 368 | <MenuRadioItem key={value} value={value} hideIndicator closeOnClick> |
| 366 | <span className="flex w-full min-w-0 items-center justify-between gap-3"> | 369 | <span className="flex w-full min-w-0 items-center justify-between gap-3"> |
| 367 | <span>{value === "on" ? "On" : "Off"}</span> | 370 | <span>{value === "on" ? "On" : "Off"}</span> |
| 368 | </span> | 371 | </span> |