Skip to content
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

Accessibility: keyboard navigation on the toolbar (Context menu) #15060

Conversation

ahmadkadri
Copy link
Contributor

@ahmadkadri ahmadkadri commented Aug 27, 2024

Description: When user use the keyboard navigation and open video or audio settings under menu the focus should move and stay in the under menu till the under menu closed.

Actual Behavior:
1- After opening the menu using keyboard navigation, user have navigate with tap on all toolbar buttons to reach it.
2- The keyboard focus with tap move to other elements (buttons) even if the menu is open.
3- If the menu is open and the focus on other element press ESC doesn't close it.

Expected Behavior:
1- After opening the menu using keyboard navigation, the focus should move directly to the menu.
2- The focus should stay in inside the menu.
3- By clicking ESC closed the menu and move the focus back to the button.

Before:

beforeUnderMenuInToolbar.mp4

After:

ahterUnderMenuInToolbar.mp4

issue jitsi community: https://community.jitsi.org/t/accessibility-keyboard-navigation/133334

NOTE: This PR included the fix of "ResizeObserver loop completed with undelivered notifications". This error typically occurs when the ResizeObserver detects changes in element sizes and tries to update the layout, but the changes trigger more layout recalculations than the browser can handle in a single event loop cycle. Browsers like Chrome trigger this error as a warning and not necessarily because something is broken.

- fix ResizeObserver loop issue
@jitsi-jenkins
Copy link

Hi, thanks for your contribution!
If you haven't already done so, could you please make sure you sign our CLA (https://jitsi.org/icla for individuals and https://jitsi.org/ccla for corporations)? We would unfortunately be unable to merge your patch unless we have that piece :(.

@ahmadkadri
Copy link
Contributor Author

@saghul is there any update on this PR?

@Calinteodor
Copy link
Contributor

Jenkins please test this please.

@@ -44,6 +44,24 @@ interface IProps {
targetSelector?: string;
}

/**
* Utility function to debounce the execution of a callback function.
Copy link
Contributor

@Calinteodor Calinteodor Sep 16, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ahmadkadri Can you move this helper into functions.any and export it from there?
This might be useful in other cases.

@Calinteodor
Copy link
Contributor

Jenkins test this please.

@Calinteodor Calinteodor merged commit 8d82c20 into jitsi:master Sep 17, 2024
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants