From 6230d134e18942cef23ad4821036b70b3c7d0bc3 Mon Sep 17 00:00:00 2001 From: Max Bretschneider Date: Fri, 24 Oct 2025 19:22:44 +0200 Subject: [PATCH] Type-safe rework --- src/apprt/gtk/class/application.zig | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/apprt/gtk/class/application.zig b/src/apprt/gtk/class/application.zig index 331fff4e9..0769a26df 100644 --- a/src/apprt/gtk/class/application.zig +++ b/src/apprt/gtk/class/application.zig @@ -2034,18 +2034,18 @@ const Action = struct { break :last current; }, }; - const gtk_window: *gtk.Window = @ptrCast(@alignCast(target_node.f_data orelse return false)); + const data = target_node.f_data orelse return false; + const gtk_window: *gtk.Window = @ptrCast(@alignCast(data)); gtk.Window.present(gtk_window); - const ghostty_window: *Window = @ptrCast(@alignCast(gtk_window)); - var value = std.mem.zeroes(gobject.Value); - defer value.unset(); - _ = value.init(gobject.ext.typeFor(?*Surface)); - ghostty_window.as(gobject.Object).getProperty("active-surface", &value); + const ghostty_window = gobject.ext.cast(Window, gtk_window) orelse return false; + + var surface: ?*gobject.Object = null; + ghostty_window.as(gobject.Object).get("active-surface", &surface, @as(?*anyopaque, null)); - const surface: ?*Surface = @ptrCast(@alignCast(value.getObject())); if (surface) |s| { - s.grabFocus(); + const surface_obj = gobject.ext.cast(Surface, s) orelse return false; + surface_obj.grabFocus(); return true; }