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

windows: Fix MsgWaitForMultipleObjects call to wake on accessibility messages #4057

Conversation

mwcampbell
Copy link
Contributor

It's critical that we use QS_ALLINPUT here.

I'm submitting this as a PR against the v0.30.x branch, because that's where it's easiest to verify the fix (using any program that uses the AccessKit winit adapter), and it's where we most urgently need to fix this. Should be easy to forward port to master.

Fixes #4055.

  • Tested on all platforms changed
  • Added an entry to the changelog module if knowledge of this change could be valuable to users
  • Updated documentation to reflect any user-facing changes, including notes of platform-specific behavior
  • Created or updated an example program if it would help users understand this functionality

@mwcampbell mwcampbell requested a review from notgull as a code owner December 23, 2024 20:46
@mwcampbell mwcampbell changed the title window: Fix MsgWaitForMultipleObjects call to wake on accessibilitymessages windows: Fix MsgWaitForMultipleObjects call to wake on accessibility messages Dec 23, 2024
…y messages

It's critical that we use `QS_ALLINPUT` here.
@mwcampbell mwcampbell force-pushed the windows-msg-wait-a11y-v0.30.x branch from 7300313 to 48d502f Compare December 23, 2024 20:50
@mwcampbell
Copy link
Contributor Author

Just pushed a squashed commit with a corrected message.

@kchibisov
Copy link
Member

@mwcampbell just to clarify, it doesn't break the timer stuff and just makes it work with accessibility events?

Also, please open it against master, since it's usually goes there and then backported, I won't be able to merge this.

@mwcampbell
Copy link
Contributor Author

Correct, it makes the existing call to MsgWaitForMultipleObjects work with accessibility events without breaking timers.

@mwcampbell mwcampbell closed this Dec 23, 2024
@@ -749,7 +749,7 @@ fn wait_for_messages_impl(
num_handles,
raw_handles.as_ptr() as *const _,
wait_duration_ms,
QS_ALLEVENTS,
QS_ALLINPUT,
Copy link
Member

Choose a reason for hiding this comment

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

Should add a comment here to say why we use QS_ALLINPUT and not QS_ALLEVENTS, otherwise it has a chance of being reverted in the future.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants