diff --git a/wgpu-core/src/device/mod.rs b/wgpu-core/src/device/mod.rs index f894efcbd0..d2fe1db78a 100644 --- a/wgpu-core/src/device/mod.rs +++ b/wgpu-core/src/device/mod.rs @@ -3329,7 +3329,9 @@ impl Global { ) -> Result { profiling::scope!("Surface::get_capabilities"); self.fetch_adapter_and_surface::(surface_id, adapter_id, |adapter, surface| { - let hal_caps = surface.get_capabilities(adapter)?; + let mut hal_caps = surface.get_capabilities(adapter)?; + + hal_caps.formats.sort_by_key(|f| !f.describe().srgb); Ok(wgt::SurfaceCapabilities { formats: hal_caps.formats,