microsoft / microsoft/react-native-windows

Window not gaining focus on app start

Open
#16,176 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug Invalid Triage Needs: Triage :mag:
Dominant language
C++
Stars
17.3k
Forks
1.2k
Avg merge
1d 13h
Merged PRs (30d)
33

Description

Problem Description

When the React Native Windows app launches, the main window does not automatically receive keyboard focus. This means:

  • Users cannot immediately interact with the app using keyboard navigation (Tab, Enter, arrow keys, etc.)

  • Accessibility tools (screen readers) don't announce the app content on launch

  • Users must first click inside the window before keyboard input is recognized

Steps To Reproduce
  • Create a new React Native Windows app
  • Add a first component not focusable
  • Add a focusable element (e.g., a Pressable or TextInput)
  • Launch the app
  • Without clicking, try pressing Tab or interacting via keyboard
  • Observe that nothing happens until the window is clicked
Expected Results

Expected behavior:

When the app window opens and becomes the foreground window, it should automatically have keyboard focus so that:

  • Tab navigation works immediately
  • The first focusable element (or a designated autoFocus element) receives focus

Actual behavior:

The window appears in the foreground but keyboard focus is not set. The user must click inside the window before any keyboard/focus-based interaction works. This is particularly problematic for:

  • Accessibility compliance (WCAG 2.1 requires operable keyboard interfaces)
  • Users who rely on keyboard-only navigation
CLI version

20.0.0

Environment
System:
  OS: Windows 11 10.0.26100
  CPU: (16) x64 Intel(R) Core(TM) Ultra 7 265H
  Memory: 30.96 GB / 63.43 GB
Binaries:
  Node:
    version: 22.22.0
    path: C:\Program Files\nodejs\node.exe
  Yarn:
    version: 1.22.22
    path: C:\Program Files (x86)\Yarn\bin\yarn.CMD
  npm:
    version: 10.9.4
    path: C:\Program Files\nodejs\npm.CMD
  Watchman: Not Found
SDKs:
  Android SDK: Not Found
  Windows SDK:
    AllowDevelopmentWithoutDevLicense: Enabled
    AllowAllTrustedApps: Enabled
    Versions:
      - 10.0.19041.0
      - 10.0.22621.0
      - 10.0.26100.0
IDEs:
  Android Studio: Not Found
  Visual Studio:
    - 17.14.37216.2 (Visual Studio Community 2022)
    - 16.11.37206.5 (Visual Studio Professional 2019)
Languages:
  Java: Not Found
  Ruby:
    version: 3.0.2
    path: C:\tools\ruby30\bin\ruby.exe
npmPackages:
  "@react-native-community/cli":
    installed: 20.0.0
    wanted: 20.0.0
  react:
    installed: 19.1.4
    wanted: 19.1.4
  react-native:
    installed: 0.81.6
    wanted: 0.81.6
  react-native-windows:
    installed: 0.81.15
    wanted: 0.81.15
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: Not found
  newArchEnabled: Not found
iOS:
  hermesEnabled: Not found
  newArchEnabled: Not found
Community Modules

No response

Target React Native Architecture

None

Target Platform Version

None

Visual Studio Version

None

Build Configuration

None

Snack, code example, screenshot, or link to a repository

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no source file, test, or entry point. Start by reproducing the launch behavior in a new React Native Windows app with a non-focusable first component and a focusable control; it is done when keyboard navigation works immediately after launch without a click and the first focusable or autoFocus element receives focus.

Written by the indexing model from the issue text.

Assessment

Tech stack
react-native
Domain
accessibility, desktop
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.