refactor!: Make ActionHandler::do_action
take &mut self
#296
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I believe this isn't controversial like my previous, abandoned PR or the other API change I'm currently considering. I'm pretty sure it's conceptually correct, because an action handler needs to mutate the application's state, and it's better to have the platform adapters handle interior mutability in the way that's appropriate for each platform's threading requirements than to make the user do it. This simplifies the winit adapter and makes the C API a bit safer.