mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-08-02 14:57:31 +03:00
macos: fix previous/next tab bindings, improve action logging
This commit is contained in:
@ -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
|
||||
|
@ -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 }
|
||||
|
@ -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| {
|
||||
|
@ -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(),
|
||||
|
Reference in New Issue
Block a user