Window resizing glitches on MacOS #15004
Labels
A-Windowing
Platform-agnostic interface layer to run your app in
C-Bug
An unexpected or incorrect behavior
P-Regression
Functionality that used to work but no longer does. Add a test for this!
S-Needs-Investigation
This issue requires detective work to figure out what's going wrong
Bevy version
v0.14.1
[Optional] Relevant system information
MacOS 12.5.1 MacBook Pro
What you did
cargo run --example ui
then resized the window.What went wrong
desktop_app()
window mode, the window does not update immediately after a resize despite receiving a resize event (presumably).Additional information
I bisected the problem to the PR introducing winit v0.30. It has persisted until now despite #14609 claiming to fix it. See #14255 as a duplicate issue that was closed.
Attached is a video of the problem, showcasing both the top/right banding and the delay (this is
cargo run --example ui_wrap_debug
, which usesdesktop_app()
window mode):bevy_ui_resize_bug_08_31_24.mp4
There is currently an open wgpu PR that fixes part of the problem. However, it doesn't explain the regression from bottom/right banding to top/right banding. I ran the
hello_triangle
example onwgpu v0.19.3
and got bottom/right banding as expected.One thing I noticed is we are not calling
request_redraw()
on the winit window whenWindowEvent::Resized
is received, even thoughwinit
says you need to do so. Unfortunately, adding it manually did not seem to help much.The text was updated successfully, but these errors were encountered: