angular / angular/components

bug(many): duplicate code for exposing overlays for modals

未关闭
#26,853 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
Accessibility area: many P4 refactoring
主要语言
TypeScript
星标
25k
派生
6.8k
平均合并
1 天 8 小时
30 天内合并 PR
91

描述

### Is this a regression?

- [ ] Yes, this behavior used to work in the previous version

### The previous version in which this bug was not present was

_No response_

### Description

We have duplicated code for logic for exposing overlays to modals. some browsers won't expose the accessibility node of the overlay if there is an `aria-modal` and the live element is outside of it. This method works around the issue by pointing the `aria-owns` of all modals to the live element.

Action item to consider de-duplicating this with the `LiveAnnouncer` and any other occurrences.

Note that the selector here is limited to CDK overlays at the moment in order to reduce the section of the DOM we need to look through. This should cover all the cases we support, but the selector can be expanded if it turns out to be too narrow.

### Reproduction

Search codebase for TODOS references this issue report.

```
git grep 'TODO(http://github.com/angular/components/issues/26853)'; git grep '#26853';
```

### Expected Behavior

no occurrences

### Actual Behavior

multiple occurrences

### Environment

N/A

贡献指南

打开贡献指南

调研方向

Run the two git grep commands from the issue to locate every TODO reference to #26853, then read the surrounding overlay and LiveAnnouncer logic. Consolidate the duplicated overlay-exposure handling without changing supported CDK overlay behavior; done means both searches return no occurrences and the relevant tests pass.

由索引模型根据 Issue 内容生成。

评估

技术栈
typescript
领域
accessibility, frontend
Issue 类型
重构
难度
3/5
预计耗时
1-2 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
48/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。