-
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix overlay popup focus issues #17326
Conversation
You can test this PR using the following package version. |
1b4df78
to
3619c26
Compare
You can test this PR using the following package version. |
Couldn't existing IFocusScope infra be reused here? |
However, for key events to work, this requires the Rather than hacking this, I chose to have the |
* Add failing focus tests for flyouts inside overlay popups * Implement IKeyboardNavigationHandler on OverlayPopupHost * Layout OverlayPopupHost content for focus to work
Note: #17322 should be merged first for tests to correctly pass. This PR is based on it.MergedWhat does the pull request do?
This PR fixes several problems related to overlay popups:
How was the solution implemented (if it's not obvious)?
A
KeyboardNavigationHandler
has been added toOverlayPopupHost
, mimicking the behavior of a standard popup.For this to work correctly,
IInputRoot
had to be implemented onOverlayPopupHost
.OverlayPopupFlyoutTests
has been added, based onFlyoutTests
but with overlays (3 failing tests before the changes).PopupTests.Focusable_Controls_In_Popup_Should_Get_Focus
was passing for wrong reasons: it didn't try to really move the focus. This test has been adjusted.Remarks
Access keys still don't work in overlay popups after this PR. I'll fix them in another PR.
Fixed issues