Win32: Track popup-host continuation, lifecycle, and accessibility capabilities

Aberta
#4,384 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
5/5
Tempo estimado
Mais de uma semana
Facilidade para iniciantes
24/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Ativa
Stack de tecnologia
react-native, typescript

Direção de pesquisa

Read the integration contract and the A1–C3 capability backlog, then inspect issues #4236, #4232, #4231, #4224, #4377, and #4376 for context. Start by identifying the actual Win32 view-manager props, events, and commands available in the stated React Native Win32 0.81.9 / REX 0.81.1 baseline. Done requires an assigned host owner and release vehicle, verified capability metadata, and recorded physical-input and UIA evidence before each addition is enabled.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Purpose

Track the Office/REX host capabilities needed by the Popover (#4236), Menu (#4232), MenuButton (#4231), and Dropdown (#4224) implementation plan. This is the Win32 host follow-up to #4377 and #4376, not an expansion of the stable native-core /legacy API.

Approved interim

The owner approved the Win32 interim on October 16, 2026: Tab/Shift+Tab close the popup and return to its live trigger instead of continuing past it. All four desktop endpoints still ship together. This exception does not claim owner-relative continuation and must be documented and tested explicitly. Do not synthesize a second Tab or require caller-supplied neighboring targets.

Host capability backlog

  • Add owner-relative forward/backward Tab continuation from the trigger's actual native tab position, including native Office controls, disabled/reordered stops, and active-window guards (A1).
  • Qualify onShow as attached/positioned readiness and the ordering of setInitialFocus/RCTFocusTrapZone focus events; add a native result or ordering guarantee if the existing host cannot establish them (B1/B2).
  • Qualify child-popup input, ancestor input, deepest Escape, sibling replacement, and atomic family closure; add family support where the current host fails (B3/B8).
  • Qualify restoration against later focus moves into native Office controls and trigger press-in/light-dismiss/press ordering; add guarded restoration or anchor-aware dismissal if needed (B4/B5).
  • Qualify the actual key descriptors honored by the host and native UIA menu/combobox/list selection patterns, states, operations, and cross-window ControllerFor relationships; fix missing transport/projection where needed (B6/B7).
  • Consider close/reposition acknowledgements, precise outside/deactivation dismissal causes, and live system menu-show-delay publication as enhancements (C1-C3).

B items are qualification questions, not assertions that the baked host is defective. The current baseline is React Native Win32 0.81.9 / REX 0.81.1. This repository cannot add compiled functionality to that prebuilt host.

Integration contract

  • Detect actual view-manager props/events/commands instead of sniffing product versions. Never dispatch a new managed command unless the host declares it.
  • Keep unclassified dismissal and unsupported operation results truthful; do not manufacture readiness or confirmation.
  • Preserve existing native registration names and /legacy signatures/React compatibility.
  • Record the host owner, release vehicle, capability metadata, exact build/integration result, and physical input plus intended UIA-pattern evidence before enabling each addition. Owner/release vehicle remain to be assigned.
Linguagem predominante
TypeScript
Estrelas
1.4k
Forks
179
Merge médio
1d 10h
PRs com merge (30d)
50

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de microsoft/fluentui-react-native

Todas as issues de microsoft/fluentui-react-native

Issues semelhantes

Mais issues de TypeScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.