Merge pull request #2310 from ghostty-org/macos-bug

Action system fixups
This commit is contained in:
Mitchell Hashimoto
2024-09-27 12:31:55 -07:00
committed by GitHub
5 changed files with 15 additions and 14 deletions

View File

@ -379,9 +379,9 @@ typedef struct {
// apprt.action.GotoTab
typedef enum {
GHOSTTY_GOTO_TAB_PREVIOUS,
GHOSTTY_GOTO_TAB_NEXT,
GHOSTTY_GOTO_TAB_LAST,
GHOSTTY_GOTO_TAB_PREVIOUS = -1,
GHOSTTY_GOTO_TAB_NEXT = -2,
GHOSTTY_GOTO_TAB_LAST = -3,
} ghostty_action_goto_tab_e;
// apprt.action.Fullscreen

View File

@ -734,7 +734,7 @@ class TerminalController: NSWindowController, NSWindowDelegate,
// Get the tab index from the notification
guard let tabEnumAny = notification.userInfo?[Ghostty.Notification.GotoTabKey] else { return }
guard let tabEnum = tabEnumAny as? ghostty_action_goto_tab_e else { return }
let tabIndex: Int32 = .init(bitPattern: tabEnum.rawValue)
let tabIndex: Int32 = tabEnum.rawValue
guard let windowController = window.windowController else { return }
guard let tabGroup = windowController.window?.tabGroup else { return }

View File

@ -139,7 +139,7 @@ pub fn addSurface(self: *App, rt_surface: *apprt.Surface) !void {
// It is up to the apprt if there is a quit timer at all and if it
// should be canceled.
rt_surface.app.performAction(
.{ .surface = &rt_surface.core_surface },
.app,
.quit_timer,
.stop,
) catch |err| {
@ -173,7 +173,7 @@ pub fn deleteSurface(self: *App, rt_surface: *apprt.Surface) void {
// If we have no surfaces, we can start the quit timer. It is up to the
// apprt to determine if this is necessary.
if (self.surfaces.items.len == 0) rt_surface.app.performAction(
.{ .surface = &rt_surface.core_surface },
.app,
.quit_timer,
.start,
) catch |err| {

View File

@ -1257,14 +1257,10 @@ pub fn setFontSize(self: *Surface, size: font.face.DesiredSize) !void {
errdefer self.app.font_grid_set.deref(font_grid_key);
// Set our cell size
try self.rt_app.performAction(
.{ .surface = self },
.cell_size,
.{
try self.setCellSize(.{
.width = font_grid.metrics.cell_width,
.height = font_grid.metrics.cell_height,
},
);
});
// Notify our render thread of the new font stack. The renderer
// MUST accept the new font grid and deref the old.

View File

@ -441,6 +441,11 @@ pub const App = struct {
else => {},
}
log.debug("dispatching action target={s} action={} value={}", .{
@tagName(target),
action,
value,
});
self.opts.action(
self,
target.cval(),