-
-
Notifications
You must be signed in to change notification settings - Fork 7.9k
FIX: Update macosx animation handling #22175
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
Conversation
- Emit a resize_event signal when the pixel ratio is updated. This enables an animation to move between hidpi and standard dpi screens without ruining the blitting. - Init the draw in the animation. This is only necessary for macosx because an initial resize isn't emitted upon figure manager creation, versus the other backends where it is. This would cause the first frame to be stale on the macosx animations when used with blitting.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can't test, but it seems reasonable.
Pinging for another mac review if someone wants to test it out and push it through. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, but can not test (easily).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 works for me
PR Summary
Emit a resize_event signal when the pixel ratio is updated. This
enables an animation to move between hidpi and standard dpi screens
without ruining the blitting.
Init the draw in the animation. This is only necessary for macosx
because an initial resize isn't emitted upon figure manager creation,
versus the other backends where it is. This would cause the first frame
to be stale on the macosx animations when used with blitting.
Closes #18451
This is the example I was testing with that kept the first frame previously, but now updates as expected like the other backends.
https://matplotlib.org/stable/gallery/animation/simple_anim.html
I'm not sure if there is a simple test for these updates as they are interactive-based primarily. Happy to add one if someone has a good idea for how to verify this without seeing it.
PR Checklist
Tests and Styling
pytest
passes).flake8-docstrings
and runflake8 --docstring-convention=all
).Documentation
doc/users/next_whats_new/
(follow instructions in README.rst there).doc/api/next_api_changes/
(follow instructions in README.rst there).