ionic-team / ionic-team/ionic-framework

bug: FocusManagerPriority, unable to navigate to previously clicked link

Open
#29,875 0 comments 0 reactions 0 assignees View on GitHub
triage
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 implementing the `focusManagerPriority: ['content']` setting in our Ionic application we noticed that when we navigate to a link via the keyboard, click it and navigate back to the previous page that the clicked link is re-focused. Great experience to land back on the place you where you left off. However, if we focus the next element and then try to refocus the previous element it does not get the focus.

See example:
![issue](https://github.com/user-attachments/assets/5170cbab-7820-476c-8479-8148b8a2d7fe)
Note that the tabindex gets set to -1 after focussing the next element.

### Expected Behavior

The clicked link does not get tabindex -1 after focussing the next element.

### Steps to Reproduce

1. Focus button 2
2. Press enter
3. Land in tab 2
4. Click the (browser) back button
5. Land in tab 1
6. See that button 2 is still focussed
7. Press tab
8. Button 3 is focussed
9. Press shift + tab
10. Button 1 is now focussed (while we'd expect button 2 to be focussed)

### Code Reproduction URL

https://github.com/mikesegeren/ionic-focus-manager-priority-issue

### Ionic Info

Ionic CLI : 7.2.0
Ionic Framework : @ionic/angular 8.3.0
@angular-devkit/build-angular : 18.2.3
@angular-devkit/schematics : 18.2.3
@angular/cli : 18.2.3
@ionic/angular-toolkit : 11.0.1

Capacitor:

Capacitor CLI : 6.1.2
@capacitor/android : not installed
@capacitor/core : 6.1.2
@capacitor/ios : not installed

Utility:

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

System:

NodeJS : v21.7.1
npm : 10.5.0
OS : macOS Unknown

### 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.