Merge pull request 'Decouple iris-core from winit' (#4) from iris-ai/iris:split/03-core-window-independence into main

Reviewed-on: iris/iris#4
This commit is contained in:
iris committed 2026-09-13 00:50:33 -04:00
commit 465e43075e
4 files changed
+6 -8

No files matched your search

Generated
-1
View File
@@ -1070,7 +1070,6 @@ dependencies = [
"fxhash", "fxhash",
"image", "image",
"wgpu", "wgpu",
"winit",
] ]
[[package]] [[package]]
-1
View File
@@ -4,7 +4,6 @@ version.workspace = true
edition.workspace = true edition.workspace = true
[dependencies] [dependencies]
winit = { workspace = true }
wgpu = { workspace = true } wgpu = { workspace = true }
bytemuck ={ workspace = true } bytemuck ={ workspace = true }
image = { workspace = true } image = { workspace = true }
+5 -5
View File
@@ -3,14 +3,13 @@ use std::num::NonZero;
use crate::{ use crate::{
UiData, UiRenderState, UiData, UiRenderState,
render::{data::PrimitiveInstance, texture::GpuTextures, util::ArrBuf}, render::{data::PrimitiveInstance, texture::GpuTextures, util::ArrBuf},
util::HashMap, util::{HashMap, Vec2},
}; };
use data::WindowUniform; use data::WindowUniform;
use wgpu::{ use wgpu::{
util::{BufferInitDescriptor, DeviceExt}, util::{BufferInitDescriptor, DeviceExt},
*, *,
}; };
use winit::dpi::PhysicalSize;
mod data; mod data;
mod primitive; mod primitive;
@@ -118,10 +117,11 @@ impl UiRenderNode {
} }
} }
pub fn resize(&mut self, size: &PhysicalSize<u32>, queue: &Queue) { pub fn resize(&mut self, size: impl Into<Vec2>, queue: &Queue) {
let size = size.into();
let slice = &[WindowUniform { let slice = &[WindowUniform {
width: size.width as f32, width: size.x,
height: size.height as f32, height: size.y,
}]; }];
queue.write_buffer(&self.window_buffer, 0, bytemuck::cast_slice(slice)); queue.write_buffer(&self.window_buffer, 0, bytemuck::cast_slice(slice));
} }
+1 -1
View File
@@ -52,7 +52,7 @@ impl UiRenderer {
self.config.width = size.width; self.config.width = size.width;
self.config.height = size.height; self.config.height = size.height;
self.surface.configure(&self.device, &self.config); self.surface.configure(&self.device, &self.config);
self.ui.resize(size, &self.queue); self.ui.resize((size.width, size.height), &self.queue);
} }
fn create_encoder(device: &Device) -> CommandEncoder { fn create_encoder(device: &Device) -> CommandEncoder {