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

Should we deprecate no-focus-change? #271

Open
youennf opened this issue Jul 5, 2023 · 3 comments
Open

Should we deprecate no-focus-change? #271

youennf opened this issue Jul 5, 2023 · 3 comments

Comments

@youennf
Copy link
Collaborator

youennf commented Jul 5, 2023

We started discussing deprecation of no-focus-change in #263.
We should further investigate and come to a conclusion on this.

@eladalon1983
Copy link
Member

I think my main argument[0] for retaining this value is that, as currently defined, it is potentially useful for accessibility-conscious applications. I suspect[1] that people using screen readers find it challenging when the active window on the screen changes. The reader needs to announce this, read out the new fields available, etc.

  • When such a user is on Chrome-on-Windows, they might prefer to keep the capturing application focused, because that's what they last interacted with and had read out to them.
  • When such a user is on Safari-on-macOS, I imagine[2] the macOS media-picker performs some read-out that makes the user feel like the new window is in focus. When such users configure the Web app for a11y, the app might wish to request divergent behavior depending on the platform, and this might be a good way to achieve it.

[0] The others arguments mostly being about having to check how much havoc this would wreak on existing applications before committing to a deprecation.
[1] Let's pull someone more experienced in these matters to verify.
[2] Am I wrong?

@youennf
Copy link
Collaborator Author

youennf commented Jul 5, 2023

We now have four possible values:

  • focus-capturing-application
  • focus-captured-surface
  • no-focus-change
  • setFocusBehavior not called at all

The last two may be equivalent in that refocusing is limited as much as possible.
In that case, no-focus-change is not really useful, and we should probably mention what the intent is for the case of setFocusBehavior not called at all.
We can also keep setFocusBehavior not called at all totally unspecified, in which case no-focus-change has some value.

@eladalon1983
Copy link
Member

The last two may be equivalent in that refocusing is limited as much as possible.

I don't think the spec mentions a default value, so they're not equivalent in theory.
Chrome's default behavior is to focus, so they're not equivalent in practice. (Or not equivalent across all implementations, to be more exact.)

We can also keep setFocusBehavior not called at all totally unspecified, in which case no-focus-change has some value.

That's my preference atm.

@jan-ivar jan-ivar added this to the Candidate Recommendation milestone Feb 15, 2024
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

No branches or pull requests

3 participants