Components: Add renderer-owned text-fragment anchors and layout-generation tracking

Aberta
#4,378 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
5/100
Tipo de issue
Funcionalidade
Clareza
Precisa de esclarecimento
Status de atividade
Ativa
Stack de tecnologia
react-native, typescript
Domínio
frontend

Direção de pesquisa

This is a native-layout design task spanning Paper and Fabric providers, so it is not a first contribution. Start by reading the retired handoff referenced in the issue and the historical #3661 Paper traversal to judge what can be reused. Done means a qualified provider contract plus native geometry tests for reflow, unmount, scroll, and stale-generation races, with host capability documented.

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

Descrição

Goal

Provide a real native text-layout anchor path rather than approximating inline text with View geometry. Part of #4274; coordinate Popover #4236 and Tooltip #4249 consumers.

Remaining work and acceptance

  • Review a renderer-owned UTF-16 text-fragment provider contract with attachment/surface/layout generations and explicit stale/unsupported outcomes.
  • Support and qualify wrapped fragments, truncation, bidirectional text, embedded attachments, and layout changes; define which fragment(s) anchor placement uses.
  • Implement actual Paper/Fabric providers for the declared hosts, preserving renderer-independent shared placement behavior. Public numeric tags, guessed global coordinates, and shadow-tree traversal are not substitutes.
  • Test reflow, owner replacement/unmount, scroll/transform, stale layout generations, and cancellation/result races with native geometry evidence.
  • Document host/version capability and keep unqualified paths out of root/all-host admission.

Prior art and evidence

The native-core milestone supports only materialized View and local rect/point anchors; no inline Text provider is qualified. Retired handoff: b55d6c9a3:packages/agentic/native-core/plans/modernization.md. Historical #3661 at 829883482ddd37324e64633126cc86ba08c2a75f contains Paper traversal, not a Fabric implementation; verify its current disposition before reuse. Candidate wave-three 5f6e7af1252bcfe087dcd1672afaa4ceb7c5efbb is reference evidence, not admission.

Linguagem predominante
TypeScript
Estrelas
1.4k
Forks
179
Merge médio
1d 8h
PRs com merge (30d)
60

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.