Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Components: Add popup-family transactions and owner-relative focus restoration

Đang mở
#4,377 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
8/100
Loại issue
Tính năng
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Sôi nổi
Công nghệ
react-native, typescript
Lĩnh vực
desktop, frontend

Hướng nghiên cứu

The work spans native presentation focus, close and restoration logic across macOS (Paper/Fabric) and Windows/Win32, plus the MenuComposition story as a prerequisite demo; start from the shared native-core contract and the historical handoff file referenced in the issue (b55d6c9a3:packages/agentic/native-core/plans/modernization.md). Done means the family-close, restoration and Tab-continuation transactions are implemented and tested for close/reopen, owner loss, nested input, Escape and races, with capability evidence recorded per host. Coordinate with #4232 and #4236 before touching Menu or Popover behavior.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Goal

Implement the shared native policy needed beyond a flat nonmodal Callout/Menu composition. Part of #4274. Actual Menu and Popover delivery remains #4232 and #4236; do not duplicate those component-generation issues.

Observed baseline — 2026-10-15

The initial native-core milestone confirms individual presentation focus/close/reposition and owner-window retained-focus return. It does not provide family closure, policy-driven restoration, natural owner-relative Tab continuation, request-only veto, or precise light-dismiss classification. The MenuComposition story is a prerequisite demonstration, not a shipped Menu/Popover component.

Acceptance

  • Review the shared contract for family membership/attachment generations, child/sibling/ancestor closure, reentrant dismissal, and stale result/cleanup fencing.
  • Implement family-close/restoration transactions with one navigation owner per key and one native restoration executor. Test close/reopen, owner loss, nested popup input, Escape, and restoration races.
  • Provide natural owner-relative Tab/Shift+Tab continuation without cycling back into closing popups or restoring over a newer physical focus move.
  • Resolve disabled-but-discoverable MenuItem policy: focus eligibility, activation refusal, and accessibility-disabled state are separate axes. Integrate the reviewed choice with #4232 rather than silently changing all disabled controls.
  • Keep pointer-open focus policy explicit (platform / always / never) and retain the flat default/always trigger-restoration regressions on all qualified hosts.
  • Record macOS Paper/Fabric and Windows/Win32 capability evidence and unsupported paths; do not claim root admission from a partial host implementation.

Prior art and evidence

Historical handoff: b55d6c9a3:packages/agentic/native-core/plans/modernization.md. Candidate wave-three 5f6e7af1252bcfe087dcd1672afaa4ceb7c5efbb contains macOS family work but narrower RNW coverage and a recorded Menu run of 1 passed / 0 failed / 12 skipped. Adapt selectively under current native/Apple contracts, not as already-qualified behavior. Preserve renderer adapters as thin event/view boundaries and shared behavior independent of renderer registries.

Ngôn ngữ chính
TypeScript
Star
1.4k
Fork
179
Merge trung bình
1 ngày 23 giờ
Pull request đã merge (30 ngày)
34

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của microsoft/fluentui-react-native

Tất cả issue của microsoft/fluentui-react-native

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.