DioxusLabs / dioxus

Fullstack app framework for web, desktop, mobile, and more.
https://dioxuslabs.com
Apache License 2.0
21.45k stars 826 forks source link

Version 0.6, when using TAB to switch web elements, it may be blocked by a control with the class name WRY_WEBVIEW #2900

Open mzdk100 opened 2 months ago

mzdk100 commented 2 months ago

Problem

Specifically, when a user switches focus within a web element using the keyboard's tab, if they continue to press the tab after switching to the last web element, the focus will jump to the control with the class name WRY_WEBVIEW. At this point, no matter how much they press the tab, they cannot continue switching web elements; The solution to this problem is to first switch to another application (such as the desktop), and then switch to the dioxus application again. At this point, the system will reset the focus to the web document, and you can continue to use the tab to switch elements, but this requires the user to operate it themselves, and the experience is very poor.

Steps To Reproduce

Steps to reproduce the behavior:

Refer to the description above.

Expected behavior

The control with the class name WRY_WEBVIEW should not be allowed to grab keyboard focus, so that the tab key can be used to cyclically switch web elements.

Screenshots

Environment:

Questionnaire

matthunz commented 2 months ago

Is WRY_WEBVIEW a container for Dioxus desktop apps? @ealmloff If we need to have it I’m wondering if setting tabindex=-1 would fix this 🤔

ealmloff commented 2 months ago

Is WRY_WEBVIEW a container for Dioxus desktop apps? @ealmloff If we need to have it I’m wondering if setting tabindex=-1 would fix this 🤔

We don't create WRY_WEBVIEW, but I do see some instances of it in wry which was updated since 0.5. It might be an upstream issue

mzdk100 commented 2 months ago

Yes, it is container for webview's document. However, I cannot control the focus of this control.