Contain focus inside mobile Security Center #1136

Closed
opened 2026-08-19 15:23:23 +00:00 by rockachopa · 0 comments
Member

Problem

The Security Center declares aria-modal=true, but opening it leaves the dashboard header, workspace, and mobile task dock interactive and allows keyboard focus to escape behind sensitive revoke/remove controls. Current mobile release coverage verifies this behavior for Device Setup, but not Security Center.

Vertical slice

Contain focus throughout the mobile Security Center investigation flow: preserve and set background regions inert on open, wrap Tab/Shift+Tab across currently rendered controls, retain containment while browser Back unwinds sections, and restore background state plus launcher focus only when the sheet closes.

Acceptance tests

  • Opening focuses Close and makes header, main, and mobile task dock inert.
  • Tab and Shift+Tab wrap inside the sheet and include dynamically rendered actions while excluding hidden/disabled controls.
  • Back from Devices/Passkeys to Activity retains containment.
  • Close, Escape, or final Back releases containment, restores prior inert values, and focuses Active devices.
  • Packaged Chromium checks the rendered flow at 320x568 and 390x844 with no overflow or console errors.

Non-duplication evidence

No open issue covers Security Center focus/background containment. #1020 implemented Back-safe Security Center navigation, #1086 paused Today during the flow, and #1134 implemented focus containment for the separate Device Setup sheet. Current origin/main has no Security Center focus trap or inert lifecycle.

## Problem The Security Center declares `aria-modal=true`, but opening it leaves the dashboard header, workspace, and mobile task dock interactive and allows keyboard focus to escape behind sensitive revoke/remove controls. Current mobile release coverage verifies this behavior for Device Setup, but not Security Center. ## Vertical slice Contain focus throughout the mobile Security Center investigation flow: preserve and set background regions inert on open, wrap Tab/Shift+Tab across currently rendered controls, retain containment while browser Back unwinds sections, and restore background state plus launcher focus only when the sheet closes. ## Acceptance tests - Opening focuses Close and makes header, main, and mobile task dock inert. - Tab and Shift+Tab wrap inside the sheet and include dynamically rendered actions while excluding hidden/disabled controls. - Back from Devices/Passkeys to Activity retains containment. - Close, Escape, or final Back releases containment, restores prior inert values, and focuses Active devices. - Packaged Chromium checks the rendered flow at 320x568 and 390x844 with no overflow or console errors. ## Non-duplication evidence No open issue covers Security Center focus/background containment. #1020 implemented Back-safe Security Center navigation, #1086 paused Today during the flow, and #1134 implemented focus containment for the separate Device Setup sheet. Current `origin/main` has no Security Center focus trap or inert lifecycle.
timmy was assigned by rockachopa 2026-08-19 15:23:23 +00:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: stackchain/stackchain-dashboard#1136
No description provided.