renderer/metal: apply layerContentsPlacement on macOS to fix stretching

Fixes #42
This commit is contained in:
Mitchell Hashimoto
2024-02-02 08:39:08 -08:00
parent a4ca2963a2
commit 7b3deb13d8
7 changed files with 18 additions and 3 deletions

6
pkg/macos/animation.zig Normal file
View File

@@ -0,0 +1,6 @@
pub const c = @import("animation/c.zig");
pub usingnamespace @import("animation/layer.zig");
test {
@import("std").testing.refAllDecls(@This());
}

View File

@@ -0,0 +1,3 @@
pub usingnamespace @cImport({
@cInclude("QuartzCore/CALayer.h");
});

View File

@@ -0,0 +1,2 @@
/// https://developer.apple.com/documentation/quartzcore/calayer/contents_gravity_values?language=objc
pub extern "c" const kCAGravityTopLeft: *anyopaque;

View File

@@ -32,6 +32,7 @@ pub fn build(b: *std.Build) !void {
lib.linkFramework("CoreGraphics");
lib.linkFramework("CoreText");
lib.linkFramework("CoreVideo");
lib.linkFramework("QuartzCore");
if (target.result.os.tag == .macos) {
lib.linkFramework("Carbon");
module.linkFramework("Carbon", .{});
@@ -42,6 +43,7 @@ pub fn build(b: *std.Build) !void {
module.linkFramework("CoreGraphics", .{});
module.linkFramework("CoreText", .{});
module.linkFramework("CoreVideo", .{});
module.linkFramework("QuartzCore", .{});
if (!target.query.isNative()) {
try apple_sdk.addPaths(b, &lib.root_module);

View File

@@ -1,4 +1,5 @@
pub const foundation = @import("foundation.zig");
pub const animation = @import("animation.zig");
pub const graphics = @import("graphics.zig");
pub const os = @import("os.zig");
pub const text = @import("text.zig");