vulkano/vulkano-util/src
Mads Marquart 0af3fb3cb3
Use raw-window-metal to get a CAMetalLayer from raw-window-handle (#2561)
The way `raw-window-metal` works is by creating a layer, and inserting
that as a sublayer, just like we did on iOS before. The bounds are then
kept in-sync with an observer, ensuring smooth resizing.

This also fixes compilation errors on iOS, and adds preliminary support
for tvOS.

The implementation now solely uses `VK_EXT_metal_surface`, which was
added in 2018, instead of `VK_MVK_ios_surface` / `VK_MVK_macos_surface`,
which are deprecated, and only available a year and a half earlier
anyhow.

Note that apart from the above, there is a slight behavioral change on
macOS: we no longer set `edgeAntialiasingMask` on the layer, as it's not
really required, and allows us to avoid depending on `objc2` directly.
It was introduced without motivation in 40e0b24, so I doubt anyone uses
it, and if they do, they can change it on the layer themselves.
2024-09-11 18:03:54 +02:00
..
context.rs Use raw-window-metal to get a CAMetalLayer from raw-window-handle (#2561) 2024-09-11 18:03:54 +02:00
lib.rs Use workspace lints (#2505) 2024-03-28 11:58:43 +01:00
renderer.rs Use raw-window-metal to get a CAMetalLayer from raw-window-handle (#2561) 2024-09-11 18:03:54 +02:00
window.rs Support event loops with custom user events (#2500) 2024-03-18 00:19:44 +01:00