Danny White
9a03f3cd9c
fix(studio): show keyboard focus on filter bar ( #50827 )
...
## Problem
- Filter fields could not be re-entered with Tab, and remove buttons
were previously skipped.
- Earlier focus rings flashed or crowded controls. Segmented filters and
design system examples also had uneven layout.
## Solution
- Tab now reaches each filter’s property, operator, value and remove
button. Editable fields use the caret; read-only values and remove
buttons keep a visible focus cue.
- Refined spacing and sizing. The segmented highlight is inset and
clears when focus enters a control. Both variants and the focus guidance
are documented on the [design system
page](https://design-system-git-dnywh-fix-filter-bar-focus-supabase.vercel.app/design-system/docs/fragments/filter-bar ).
|After |
| --- |
| <img width="462" height="126" alt="CleanShot 2026-09-24 at 15 04
23@2x"
src="https://github.com/user-attachments/assets/2ee8bee2-f4fa-40f4-ada5-67bfe32384e7 "
/> |
| <img width="362" height="96" alt="CleanShot 2026-09-24 at 15 04 47@2x"
src="https://github.com/user-attachments/assets/9f42054a-f432-493d-b417-f10892676c96 "
/> |
## Review instructions
The easiest way to test this is to open Table Editor on both
production/staging and on this PR’s [deploy
preview](https://studio-staging-git-dnywh-fix-filter-bar-focus-supabase.vercel.app/ ).
Try navigating by keyboard (tab, left/right arrow) within the Filter
Bar. Compare the two.
- In Studio’s Table Editor or the [design system
example](https://design-system-git-dnywh-fix-filter-bar-focus-supabase.vercel.app/design-system/docs/fragments/filter-bar ),
add a filter. Tab through its property, operator, value and remove
button, then Shift+Tab back into editing.
- Check that the segmented and pill examples fill their preview width
and that focus cues do not collide with neighbouring controls.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary
* **New Features**
* Added a pill appearance for the Filter Bar, with usage guidance and
interactive examples for pill and segmented presentations.
* **Accessibility**
* Improved keyboard navigation through filter controls, including
removing a filter with the keyboard.
* Clarified that an editable text field’s insertion caret can serve as
its visible focus indicator; read-only fields and controls without a
caret still need another visible indicator.
* **Style**
* Refined Filter Bar spacing and focus styling across appearances.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-09-28 10:13:53 +10:00
..
2026-05-19 17:04:00 +02:00
2026-09-11 17:05:26 +10:00
2026-09-11 17:05:26 +10:00
2026-09-11 17:05:26 +10:00
2026-07-29 00:48:56 +08:00
2026-07-29 00:48:56 +08:00
2026-09-11 17:05:26 +10:00
2026-07-29 00:48:56 +08:00
2026-07-29 00:48:56 +08:00
2026-07-29 00:48:56 +08:00
2026-05-15 14:55:37 +02:00
2026-07-29 00:48:56 +08:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-02-05 13:54:10 +01:00
2026-04-30 10:53:24 +00:00
2024-09-30 21:41:26 +02:00
2024-05-23 17:39:56 +08:00
2025-12-02 11:15:50 +11:00
2024-05-23 17:39:56 +08:00
2025-12-02 11:15:50 +11:00
2026-06-30 16:13:50 +00:00
2026-06-30 16:13:50 +00:00
2026-06-30 16:13:50 +00:00
2026-06-30 16:13:50 +00:00
2026-06-30 16:13:50 +00:00
2026-06-30 16:13:50 +00:00
2026-09-10 11:23:17 +10:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-09-23 03:43:00 +00:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-09-10 11:23:17 +10:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-09-11 17:05:26 +10:00
2026-06-16 23:59:58 +02:00
2026-09-10 11:23:17 +10:00
2026-02-05 13:54:10 +01:00
2026-07-10 11:40:33 +01:00
2026-09-11 17:05:26 +10:00
2026-09-10 11:23:17 +10:00
2024-08-30 16:51:05 +08:00
2024-08-30 16:51:05 +08:00
2026-02-05 13:54:10 +01:00
2026-02-05 13:54:10 +01:00
2026-02-05 13:54:10 +01:00
2026-09-16 09:18:40 +01:00
2026-04-27 11:07:06 +02:00
2026-04-27 11:07:06 +02:00
2026-09-10 11:23:17 +10:00
2026-09-10 11:23:17 +10:00
2026-09-25 17:50:50 +03:00
2026-05-15 15:29:16 +10:00
2026-05-22 18:24:17 +10:00
2026-06-16 23:59:58 +02:00
2026-04-30 10:53:24 +00:00
2026-02-05 13:54:10 +01:00
2026-02-05 13:54:10 +01:00
2026-09-09 13:44:11 +10:00
2026-06-16 23:59:58 +02:00
2026-09-09 13:44:11 +10:00
2026-09-11 17:05:26 +10:00
2026-09-11 17:05:26 +10:00
2026-05-20 15:45:32 +02:00
2026-05-20 15:45:32 +02:00
2026-09-01 13:13:30 +02:00
2026-09-01 13:13:30 +02:00
2026-09-01 13:13:30 +02:00
2026-09-01 13:13:30 +02:00
2026-09-01 13:13:30 +02:00
2026-09-01 13:13:30 +02:00
2026-09-01 13:13:30 +02:00
2026-09-01 13:13:30 +02:00
2026-09-11 17:05:26 +10:00
2026-08-03 09:43:23 +10:00
2026-07-22 00:08:32 +10:00
2026-07-22 00:08:32 +10:00
2026-07-29 00:48:56 +08:00
2026-07-23 02:20:42 +10:00
2026-09-11 01:52:21 +00:00
2026-09-11 17:05:26 +10:00
2026-05-15 15:09:25 +02:00
2026-06-16 23:59:58 +02:00
2026-09-11 17:05:26 +10:00
2026-06-30 09:23:17 +02:00
2025-12-15 10:44:08 +00:00
2026-05-15 15:55:33 +02:00
2026-06-16 23:59:58 +02:00
2025-12-15 10:44:08 +00:00
2026-06-16 23:59:58 +02:00
2026-04-30 10:53:24 +00:00
2026-04-30 10:53:24 +00:00
2025-10-16 13:44:40 +11:00
2025-10-16 13:44:40 +11:00
2025-10-16 13:44:40 +11:00
2026-03-31 09:14:56 +02:00
2026-03-31 09:14:56 +02:00
2025-10-16 13:44:40 +11:00
2026-09-11 17:05:26 +10:00
2026-06-17 12:24:42 +02:00
2026-09-10 11:23:17 +10:00
2026-06-17 12:24:42 +02:00
2026-06-17 12:24:42 +02:00
2026-09-11 17:05:26 +10:00
2026-09-11 17:05:26 +10:00
2026-09-11 17:05:26 +10:00
2026-09-11 01:52:21 +00:00
2026-09-11 01:52:21 +00:00
2026-09-11 17:05:26 +10:00
2026-09-10 11:23:17 +10:00
2026-06-16 23:59:58 +02:00
2026-09-04 09:10:25 +10:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-09-11 17:05:26 +10:00
2026-09-11 17:05:26 +10:00
2026-06-30 09:23:17 +02:00
2026-06-30 09:23:17 +02:00
2025-12-11 13:38:26 +11:00
2026-03-26 15:27:35 +01:00
2026-03-26 15:27:35 +01:00
2024-07-12 11:32:20 +02:00
2026-09-01 13:13:30 +02:00
2026-09-01 13:13:30 +02:00
2026-09-11 17:05:26 +10:00
2026-09-01 13:13:30 +02:00
2026-09-01 13:13:30 +02:00
2026-09-01 13:13:30 +02:00
2026-09-01 13:13:30 +02:00
2026-09-01 13:13:30 +02:00
2026-09-11 17:05:26 +10:00
2026-09-01 13:13:30 +02:00
2026-09-01 13:13:30 +02:00
2026-09-01 13:13:30 +02:00
2026-09-01 13:13:30 +02:00
2026-09-28 10:13:53 +10:00
2026-09-28 10:13:53 +10:00
2026-09-28 10:13:53 +10:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-09-11 17:05:26 +10:00
2026-09-11 17:05:26 +10:00
2026-06-16 23:59:58 +02:00
2024-05-24 09:40:15 +00:00
2026-02-05 13:54:10 +01:00
2026-09-11 17:05:26 +10:00
2024-10-31 00:55:08 +08:00
2026-02-05 13:54:10 +01:00
2026-02-05 13:54:10 +01:00
2026-02-05 13:54:10 +01:00
2026-05-15 14:55:37 +02:00
2026-05-15 14:55:37 +02:00
2026-05-15 15:55:33 +02:00
2026-06-16 23:59:58 +02:00
2026-02-05 13:54:10 +01:00
2024-05-23 17:39:56 +08:00
2026-09-10 11:23:17 +10:00
2024-10-01 11:29:37 +02:00
2026-02-05 13:54:10 +01:00
2026-06-16 23:59:58 +02:00
2026-05-15 15:55:33 +02:00
2026-05-15 15:55:33 +02:00
2026-06-16 23:59:58 +02:00
2026-09-11 17:05:26 +10:00
2026-09-11 17:05:26 +10:00
2026-04-08 09:42:55 -06:00
2026-05-15 15:55:33 +02:00
2025-12-10 13:10:18 +00:00
2026-05-26 17:19:18 +02:00
2026-05-26 17:19:18 +02:00
2026-05-26 17:19:18 +02:00
2026-05-26 17:19:18 +02:00
2026-05-26 17:19:18 +02:00
2026-05-26 17:19:18 +02:00
2026-05-26 17:19:18 +02:00
2026-05-26 17:19:18 +02:00
2026-05-26 17:19:18 +02:00
2026-05-26 17:19:18 +02:00
2026-05-26 17:19:18 +02:00
2026-05-26 17:19:18 +02:00
2026-05-26 17:19:18 +02:00
2026-05-26 17:19:18 +02:00
2024-05-23 17:39:56 +08:00
2026-03-30 10:58:37 +02:00
2026-03-30 10:58:37 +02:00
2026-03-30 10:58:37 +02:00
2026-03-30 10:58:37 +02:00
2026-03-30 10:58:37 +02:00
2026-03-30 10:58:37 +02:00
2026-03-30 10:58:37 +02:00
2026-03-30 10:58:37 +02:00
2026-03-30 10:58:37 +02:00
2026-03-30 10:58:37 +02:00
2026-02-05 13:54:10 +01:00
2026-02-05 13:54:10 +01:00
2026-02-05 13:54:10 +01:00
2026-02-05 13:54:10 +01:00
2026-06-16 23:59:58 +02:00
2026-09-16 12:27:16 +10:00
2026-09-11 17:05:26 +10:00
2025-02-11 10:40:51 +08:00
2024-10-25 15:43:15 +02:00
2026-09-09 04:14:46 +00:00
2026-09-09 04:14:46 +00:00
2024-10-25 15:43:15 +02:00
2026-09-10 11:23:17 +10:00
2026-09-09 04:14:46 +00:00
2026-09-09 04:14:46 +00:00
2025-10-08 10:18:43 +11:00
2025-10-08 10:18:43 +11:00
2026-02-05 13:54:10 +01:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2025-11-11 04:02:30 +00:00
2026-09-11 17:05:26 +10:00
2026-09-11 17:05:26 +10:00
2026-09-11 17:05:26 +10:00
2026-09-24 09:56:31 +10:00
2026-09-11 17:05:26 +10:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-09-22 16:19:03 +10:00
2026-09-11 17:05:26 +10:00
2026-07-23 05:21:15 +10:00
2026-09-11 17:05:26 +10:00
2026-02-05 13:54:10 +01:00
2026-01-21 10:18:15 +08:00
2026-09-11 17:05:26 +10:00
2026-06-16 23:59:58 +02:00
2026-02-05 13:54:10 +01:00
2026-08-31 16:14:09 +02:00
2026-08-31 16:14:09 +02:00
2026-09-21 10:53:14 +10:00
2026-08-31 16:14:09 +02:00
2026-09-10 11:23:17 +10:00
2026-08-31 16:14:09 +02:00
2026-08-31 16:14:09 +02:00
2026-02-23 19:48:19 +01:00
2026-02-23 19:48:19 +01:00
2026-02-23 19:48:19 +01:00
2026-02-23 19:48:19 +01:00
2026-02-05 13:54:10 +01:00
2026-04-30 10:53:24 +00:00
2026-05-15 16:39:57 +02:00
2026-06-16 23:59:58 +02:00
2026-05-15 16:39:57 +02:00
2024-05-23 17:39:56 +08:00
2026-09-11 17:05:26 +10:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2024-05-23 17:39:56 +08:00
2024-05-23 17:39:56 +08:00
2026-07-29 06:21:50 +10:00
2026-02-05 13:54:10 +01:00
2026-02-05 13:54:10 +01:00
2026-09-11 17:05:26 +10:00
2026-09-11 17:05:26 +10:00
2026-09-11 17:05:26 +10:00
2026-06-30 09:23:17 +02:00
2026-07-15 14:09:08 +00:00
2026-07-15 14:09:08 +00:00
2026-09-24 09:56:31 +10:00
2026-05-15 15:55:33 +02:00
2026-06-24 14:14:47 +02:00
2026-09-11 17:05:26 +10:00
2026-09-11 17:05:26 +10:00
2025-12-11 13:38:26 +11:00
2025-12-11 13:38:26 +11:00
2026-09-11 17:05:26 +10:00
2026-07-22 12:10:07 -04:00
2026-02-05 13:54:10 +01:00
2026-09-16 00:00:27 +03:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2026-06-16 23:59:58 +02:00
2024-05-23 17:39:56 +08:00
2024-05-23 17:39:56 +08:00
2026-06-24 14:14:47 +02:00
2026-09-24 17:10:28 +10:00
2026-09-10 11:23:17 +10:00
2026-05-15 15:55:33 +02:00
2026-05-15 15:55:33 +02:00
2026-06-30 09:23:17 +02:00
2026-06-30 09:23:17 +02:00
2026-05-15 12:14:31 +02:00
2026-05-15 12:14:31 +02:00
2026-02-05 13:54:10 +01:00
2026-02-05 13:54:10 +01:00
2026-02-05 13:54:10 +01:00
2026-02-05 13:54:10 +01:00
2026-09-25 11:26:46 +01:00
2026-09-25 11:26:46 +01:00
2026-02-05 13:54:10 +01:00
2026-02-05 13:54:10 +01:00
2026-05-15 12:14:31 +02:00
2026-05-15 12:14:31 +02:00
2026-05-15 12:14:31 +02:00
2026-05-15 12:14:31 +02:00
2026-06-16 23:59:58 +02:00
2026-02-05 13:54:10 +01:00
2026-02-05 13:54:10 +01:00
2026-05-15 15:09:25 +02:00
2026-05-15 15:09:25 +02:00
2025-12-02 14:18:21 +00:00
2026-04-30 10:53:24 +00:00
2024-05-23 17:39:56 +08:00
2024-05-23 17:39:56 +08:00
2024-05-23 17:39:56 +08:00
2024-05-23 17:39:56 +08:00
2026-04-30 10:53:24 +00:00
2024-05-23 17:39:56 +08:00
2024-05-23 17:39:56 +08:00
2024-05-23 17:39:56 +08:00
2024-05-23 17:39:56 +08:00
2026-04-30 10:53:24 +00:00
2024-05-23 17:39:56 +08:00
2026-04-30 10:53:24 +00:00