diff options
Diffstat (limited to 'engine/src/renderer.rs')
| -rw-r--r-- | engine/src/renderer.rs | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/engine/src/renderer.rs b/engine/src/renderer.rs index 744b41e..9f4ebda 100644 --- a/engine/src/renderer.rs +++ b/engine/src/renderer.rs @@ -224,6 +224,7 @@ pub enum Command { RemoveSurface(SurfaceId), MakeCurrent(SurfaceId), + SetSurfaceSize(SurfaceId, Dimens<u32>), ClearBuffers(BufferClearMask), SwapBuffers(SurfaceId), CreateShaderProgram(ObjectId, ShaderProgram), @@ -250,11 +251,6 @@ pub enum Command RemoveMesh(ObjectId), DrawMesh(ObjectId, DrawMeshOptions), UpdateDrawProperties(DrawProperties, DrawPropertiesUpdateFlags), - SetViewport - { - size: Dimens<u32>, - position: Vec2<u32>, - }, } builder! { @@ -470,10 +466,18 @@ fn handle_window_changed( continue; }; - command_queue.queue.push_front(Command::SetViewport { - position: Vec2 { x: 0, y: 0 }, - size: *evt_match.get_changed_comp().inner_size(), - }); + let window = evt_match.get_changed_comp(); + + tracing::debug!( + window_id=?window.wid(), + window_title=&*window.title, + "Handling potential resize of window" + ); + + command_queue.queue.push_front(Command::SetSurfaceSize( + window_surface_spec.id, + evt_match.get_changed_comp().inner_size().clone(), + )); command_queue .queue |
