From 997e013d7eff370f2fafa2ac3ba8b28932c92500 Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Fri, 15 Aug 2025 09:18:26 -0700 Subject: [PATCH] apprt/gtk-ng: respect window-inherit-working-directory=false Fixes #8244 --- src/apprt/gtk-ng/class/surface.zig | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/apprt/gtk-ng/class/surface.zig b/src/apprt/gtk-ng/class/surface.zig index 9fa82f4ee..580436bd3 100644 --- a/src/apprt/gtk-ng/class/surface.zig +++ b/src/apprt/gtk-ng/class/surface.zig @@ -523,10 +523,18 @@ pub const Surface = extern struct { priv.font_size_request = font_size_ptr; self.as(gobject.Object).notifyByPspec(properties.@"font-size-request".impl.param_spec); - // Setup our pwd - if (parent.rt_surface.surface.getPwd()) |pwd| { - priv.pwd = glib.ext.dupeZ(u8, pwd); - self.as(gobject.Object).notifyByPspec(properties.pwd.impl.param_spec); + // Remainder needs a config. If there is no config we just assume + // we aren't inheriting any of these values. + if (priv.config) |config_obj| { + const config = config_obj.get(); + + // Setup our pwd if configured to inherit + if (config.@"window-inherit-working-directory") { + if (parent.rt_surface.surface.getPwd()) |pwd| { + priv.pwd = glib.ext.dupeZ(u8, pwd); + self.as(gobject.Object).notifyByPspec(properties.pwd.impl.param_spec); + } + } } }