ionic-team / ionic-team/ionic-framework

bug: focus not trapped in modal with collapsible title

Open
#30,669 0 comments 2 reactions 0 assignees View on GitHub
type: bug
Dominant language
TypeScript
Stars
52.7k
Forks
13.3k
Avg merge
1d 15h
Merged PRs (30d)
51

Description

### Prerequisites

- [x] I have read the [Contributing Guidelines](https://github.com/ionic-team/ionic-framework/blob/main/docs/CONTRIBUTING.md#creating-an-issue).
- [x] I agree to follow the [Code of Conduct](https://ionicframework.com/code-of-conduct).
- [x] I have searched for [existing issues](https://github.com/ionic-team/ionic-framework/issues) that already report this problem, without success.

### Ionic Framework Version

v8.x

### Current Behavior

When using `collapse="condense"` on an ion-header inside a modal, the focus trapping functionality of the modal stops working, and tabbing results in focus being placed on elements outside the modal.

Once a modal with a collapsible title is opened, it seems like the focus trapping then stops working all together, even for other instances of modal that _do not_ use collapse title.

**The bug only happens in Chromium-based browsers.**

### Expected Behavior

Focus trapping functionality should be maintained even with collapsible titles.

### Steps to Reproduce

1. In a Chromium browser, go to https://stackblitz.com/edit/n35ryw68
2. Press 'Fixed Title Modal' button to open modal, and press Tab three times to verify that focus cycles between 'Cancel' and 'Confirm' inside the modal.
3. Close the modal and press 'Collapsible Title Modal' button, then press Tab three times
4. See that focus is now outside the modal, most likely on the first browser tab

### Code Reproduction URL

https://stackblitz.com/edit/n35ryw68

### Ionic Info

Stackblitz info:

```
Ionic:

Ionic CLI : 5.4.16

Utility:

cordova-res : not installed
native-run : not installed

System:

NodeJS : v20.19.1
npm : 10.8.2
OS : Linux 5.0
```

### Additional Information

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.