package niri import "time" type Action struct { Action map[string]any `json:"Action"` } func ActionCustom[T any](actionName string, actionContent T) Action { return Action{map[string]any{actionName: actionContent}} } func ActionQuit(skipConfirmation bool) Action { return ActionCustom("Quit", map[string]any{"skip_confirmation": skipConfirmation}) } func ActionPowerOffMonitors() Action { return ActionCustom("PowerOffMonitors", map[string]any{}) } func ActionPowerOnMonitors() Action { return ActionCustom("PowerOnMonitors", map[string]any{}) } func ActionSpawn(command []string) Action { return ActionCustom("Spawn", map[string]any{"command": command}) } func ActionDoScreenTransition(delay Option[time.Duration]) Action { return ActionCustom("DoScreenTransition", map[string]any{"delay_ms": mapOption(delay, time.Duration.Milliseconds)}) } func ActionScreenshot(showPointer bool) Action { return ActionCustom("Screenshot", map[string]any{"show_pointer": showPointer}) } func ActionScreenshotScreen(writeToDisk, showPointer bool) Action { return ActionCustom("ScreenshotScreen", map[string]any{"write_to_disk": writeToDisk, "show_pointer": showPointer}) } func ActionScreenshotWindow(id Option[WindowID], writeToDisk bool) Action { return ActionCustom("ScreenshotWindow", map[string]any{"id": id, "write_to_disk": writeToDisk}) } func ActionToggleKeyboardShortcutsInhibit() Action { return ActionCustom("ToggleKeyboardShortcutsInhibit", map[string]any{}) } func ActionCloseWindow(id Option[WindowID]) Action { return ActionCustom("CloseWindow", map[string]any{"id": id}) } func ActionFullscreenWindow(id Option[WindowID]) Action { return ActionCustom("FullscreenWindow", map[string]any{"id": id}) } func ActionToggleWindowedFullscreen(id Option[WindowID]) Action { return ActionCustom("ToggleWindowedFullscreen", map[string]any{"id": id}) } func ActionFocusWindow(id WindowID) Action { return ActionCustom("FocusWindow", map[string]any{"id": id}) } func ActionFocusWindowInColumn(index int) Action { return ActionCustom("FocusWindowInColumn", map[string]any{"index": index}) } func ActionFocusWindowPrevious() Action { return ActionCustom("FocusWindowPrevious", map[string]any{}) } func ActionFocusColumnLeft() Action { return ActionCustom("FocusColumnLeft", map[string]any{}) } func ActionFocusColumnRight() Action { return ActionCustom("FocusColumnRight", map[string]any{}) } func ActionFocusColumnFirst() Action { return ActionCustom("FocusColumnFirst", map[string]any{}) } func ActionFocusColumnLast() Action { return ActionCustom("FocusColumnLast", map[string]any{}) } func ActionFocusColumnRightOrFirst() Action { return ActionCustom("FocusColumnRightOrFirst", map[string]any{}) } func ActionFocusColumnLeftOrLast() Action { return ActionCustom("FocusColumnLeftOrLast", map[string]any{}) } func ActionFocusColumn(index int) Action { return ActionCustom("FocusColumn", map[string]any{"index": index}) } func ActionFocusWindowOrMonitorUp() Action { return ActionCustom("FocusWindowOrMonitorUp", map[string]any{}) } func ActionFocusWindowOrMonitorDown() Action { return ActionCustom("FocusWindowOrMonitorDown", map[string]any{}) } func ActionFocusColumnOrMonitorLeft() Action { return ActionCustom("FocusColumnOrMonitorLeft", map[string]any{}) } func ActionFocusColumnOrMonitorRight() Action { return ActionCustom("FocusColumnOrMonitorRight", map[string]any{}) } func ActionFocusWindowDown() Action { return ActionCustom("FocusWindowDown", map[string]any{}) } func ActionFocusWindowUp() Action { return ActionCustom("FocusWindowUp", map[string]any{}) } func ActionFocusWindowDownOrColumnLeft() Action { return ActionCustom("FocusWindowDownOrColumnLeft", map[string]any{}) } func ActionFocusWindowDownOrColumnRight() Action { return ActionCustom("FocusWindowDownOrColumnRight", map[string]any{}) } func ActionFocusWindowUpOrColumnLeft() Action { return ActionCustom("FocusWindowUpOrColumnLeft", map[string]any{}) } func ActionFocusWindowUpOrColumnRight() Action { return ActionCustom("FocusWindowUpOrColumnRight", map[string]any{}) } func ActionFocusWindowOrWorkspaceDown() Action { return ActionCustom("FocusWindowOrWorkspaceDown", map[string]any{}) } func ActionFocusWindowOrWorkspaceUp() Action { return ActionCustom("FocusWindowOrWorkspaceUp", map[string]any{}) } func ActionFocusWindowTop() Action { return ActionCustom("FocusWindowTop", map[string]any{}) } func ActionFocusWindowBottom() Action { return ActionCustom("FocusWindowBottom", map[string]any{}) } func ActionFocusWindowDownOrTop() Action { return ActionCustom("FocusWindowDownOrTop", map[string]any{}) } func ActionFocusWindowUpOrBottom() Action { return ActionCustom("FocusWindowUpOrBottom", map[string]any{}) } func ActionMoveColumnLeft() Action { return ActionCustom("MoveColumnLeft", map[string]any{}) } func ActionMoveColumnRight() Action { return ActionCustom("MoveColumnRight", map[string]any{}) } func ActionMoveColumnToFirst() Action { return ActionCustom("MoveColumnToFirst", map[string]any{}) } func ActionMoveColumnToLast() Action { return ActionCustom("MoveColumnToLast", map[string]any{}) } func ActionMoveColumnLeftOrToMonitorLeft() Action { return ActionCustom("MoveColumnLeftOrToMonitorLeft", map[string]any{}) } func ActionMoveColumnRightOrToMonitorRight() Action { return ActionCustom("MoveColumnRightOrToMonitorRight", map[string]any{}) } func ActionMoveColumnToIndex(index int) Action { return ActionCustom("MoveColumnToIndex", map[string]any{"index": index}) } func ActionMoveWindowDown() Action { return ActionCustom("MoveWindowDown", map[string]any{}) } func ActionMoveWindowUp() Action { return ActionCustom("MoveWindowUp", map[string]any{}) } func ActionMoveWindowDownOrToWorkspaceDown() Action { return ActionCustom("MoveWindowDownOrToWorkspaceDown", map[string]any{}) } func ActionMoveWindowUpOrToWorkspaceUp() Action { return ActionCustom("MoveWindowUpOrToWorkspaceUp", map[string]any{}) } func ActionConsumeOrExpelWindowLeft(id Option[WindowID]) Action { return ActionCustom("ConsumeOrExpelWindowLeft", map[string]any{"id": id}) } func ActionConsumeOrExpelWindowRight(id Option[WindowID]) Action { return ActionCustom("ConsumeOrExpelWindowRight", map[string]any{"id": id}) } func ActionConsumeWindowIntoColumn() Action { return ActionCustom("ConsumeWindowIntoColumn", map[string]any{}) } func ActionExpelWindowFromColumn() Action { return ActionCustom("ExpelWindowFromColumn", map[string]any{}) } func ActionSwapWindowRight() Action { return ActionCustom("SwapWindowRight", map[string]any{}) } func ActionSwapWindowLeft() Action { return ActionCustom("SwapWindowLeft", map[string]any{}) } func ActionToggleColumnTabbedDisplay() Action { return ActionCustom("ToggleColumnTabbedDisplay", map[string]any{}) } func ActionSetColumnDisplay(display ColumnDisplay) Action { return ActionCustom("SetColumnDisplay", map[string]any{"display": display}) } func ActionCenterColumn() Action { return ActionCustom("CenterColumn", map[string]any{}) } func ActionCenterWindow(id Option[WindowID]) Action { return ActionCustom("CenterWindow", map[string]any{"id": id}) } func ActionCenterVisibleColumns() Action { return ActionCustom("CenterVisibleColumns", map[string]any{}) } func ActionFocusWorkspaceDown() Action { return ActionCustom("FocusWorkspaceDown", map[string]any{}) } func ActionFocusWorkspaceUp() Action { return ActionCustom("FocusWorkspaceUp", map[string]any{}) } func ActionFocusWorkspace(reference WorkspaceReferenceArg) Action { return ActionCustom("FocusWorkspace", map[string]any{"reference": reference}) } func ActionFocusWorkspacePrevious() Action { return ActionCustom("FocusWorkspacePrevious", map[string]any{}) } func ActionMoveWindowToWorkspaceDown() Action { return ActionCustom("MoveWindowToWorkspaceDown", map[string]any{}) } func ActionMoveWindowToWorkspaceUp() Action { return ActionCustom("MoveWindowToWorkspaceUp", map[string]any{}) } func ActionMoveWindowToWorkspace(id Option[WindowID], reference WorkspaceReferenceArg, focus bool) Action { return ActionCustom("MoveWindowToWorkspace", map[string]any{"id": id, "reference": reference, "focus": focus}) } func ActionMoveColumnToWorkspaceDown(focus bool) Action { return ActionCustom("MoveColumnToWorkspaceDown", map[string]any{"focus": focus}) } func ActionMoveColumnToWorkspaceUp(focus bool) Action { return ActionCustom("MoveColumnToWorkspaceUp", map[string]any{"focus": focus}) } func ActionMoveColumnToWorkspace(reference WorkspaceReferenceArg, focus bool) Action { return ActionCustom("MoveColumnToWorkspace", map[string]any{"reference": reference, "focus": focus}) } func ActionMoveWorkspaceDown() Action { return ActionCustom("MoveWorkspaceDown", map[string]any{}) } func ActionMoveWorkspaceUp() Action { return ActionCustom("MoveWorkspaceUp", map[string]any{}) } func ActionMoveWorkspaceToIndex(index int, reference Option[WorkspaceReferenceArg]) Action { return ActionCustom("MoveWorkspaceToIndex", map[string]any{"index": index, "reference": reference}) } func ActionSetWorkspaceName(name string, workspace Option[WorkspaceReferenceArg]) Action { return ActionCustom("SetWorkspaceName", map[string]any{"name": name, "workspace": workspace}) } func ActionUnsetWorkspaceName(reference Option[WorkspaceReferenceArg]) Action { return ActionCustom("UnsetWorkspaceName", map[string]any{"reference": reference}) } func ActionFocusMonitorLeft() Action { return ActionCustom("FocusMonitorLeft", map[string]any{}) } func ActionFocusMonitorRight() Action { return ActionCustom("FocusMonitorRight", map[string]any{}) } func ActionFocusMonitorDown() Action { return ActionCustom("FocusMonitorDown", map[string]any{}) } func ActionFocusMonitorUp() Action { return ActionCustom("FocusMonitorUp", map[string]any{}) } func ActionFocusMonitorPrevious() Action { return ActionCustom("FocusMonitorPrevious", map[string]any{}) } func ActionFocusMonitorNext() Action { return ActionCustom("FocusMonitorNext", map[string]any{}) } func ActionFocusMonitor(output OutputName) Action { return ActionCustom("FocusMonitorNext", map[string]any{"output": output}) } func ActionMoveWindowToMonitorLeft() Action { return ActionCustom("MoveWindowToMonitorLeft", map[string]any{}) } func ActionMoveWindowToMonitorRight() Action { return ActionCustom("MoveWindowToMonitorRight", map[string]any{}) } func ActionMoveWindowToMonitorDown() Action { return ActionCustom("MoveWindowToMonitorDown", map[string]any{}) } func ActionMoveWindowToMonitorUp() Action { return ActionCustom("MoveWindowToMonitorUp", map[string]any{}) } func ActionMoveWindowToMonitorPrevious() Action { return ActionCustom("MoveWindowToMonitorPrevious", map[string]any{}) } func ActionMoveWindowToMonitorNext() Action { return ActionCustom("MoveWindowToMonitorNext", map[string]any{}) } func ActionMoveWindowToMonitor(id Option[WindowID], output OutputName) Action { return ActionCustom("FocusMonitorNext", map[string]any{"id": id, "output": output}) } func ActionMoveColumnToMonitorLeft() Action { return ActionCustom("MoveColumnToMonitorLeft", map[string]any{}) } func ActionMoveColumnToMonitorRight() Action { return ActionCustom("MoveColumnToMonitorRight", map[string]any{}) } func ActionMoveColumnToMonitorDown() Action { return ActionCustom("MoveColumnToMonitorDown", map[string]any{}) } func ActionMoveColumnToMonitorUp() Action { return ActionCustom("MoveColumnToMonitorUp", map[string]any{}) } func ActionMoveColumnToMonitorPrevious() Action { return ActionCustom("MoveColumnToMonitorPrevious", map[string]any{}) } func ActionMoveColumnToMonitorNext() Action { return ActionCustom("MoveColumnToMonitorNext", map[string]any{}) } func ActionMoveColumnToMonitor(output OutputName) Action { return ActionCustom("FocusMonitorNext", map[string]any{"output": output}) } func ActionSetWindowWidth(id Option[WindowID], change SizeChange) Action { return ActionCustom("SetWindowWidth", map[string]any{"id": id, "change": change}) } func ActionSetWindowHeight(id Option[WindowID], change SizeChange) Action { return ActionCustom("SetWindowHeight", map[string]any{"id": id, "change": change}) } func ActionResetWindowHeight(id Option[WindowID]) Action { return ActionCustom("ResetWindowHeight", map[string]any{"id": id}) } func ActionSwitchPresetColumnWidth() Action { return ActionCustom("SwitchPresetColumnWidth", map[string]any{}) } func ActionSwitchPresetWindowWidth(id Option[WindowID]) Action { return ActionCustom("SwitchPresetWindowWidth", map[string]any{"id": id}) } func ActionSwitchPresetWindowHeight(id Option[WindowID]) Action { return ActionCustom("SwitchPresetWindowHeight", map[string]any{"id": id}) } func ActionMaximizeColumn() Action { return ActionCustom("MaximizeColumn", map[string]any{}) } func ActionSetColumnWidth(change SizeChange) Action { return ActionCustom("SetColumnWidth", map[string]any{"change": change}) } func ActionExpandColumnToAvailableWidth() Action { return ActionCustom("ExpandColumnToAvailableWidth", map[string]any{}) } func ActionSwitchLayout(layout LayoutSwitchTarget) Action { return ActionCustom("SwitchLayout", map[string]any{"layout": layout}) } func ActionShowHotkeyOverlay() Action { return ActionCustom("ShowHotkeyOverlay", map[string]any{}) } func ActionMoveWorkspaceToMonitorLeft() Action { return ActionCustom("MoveWorkspaceToMonitorLeft", map[string]any{}) } func ActionMoveWorkspaceToMonitorRight() Action { return ActionCustom("MoveWorkspaceToMonitorRight", map[string]any{}) } func ActionMoveWorkspaceToMonitorDown() Action { return ActionCustom("MoveWorkspaceToMonitorDown", map[string]any{}) } func ActionMoveWorkspaceToMonitorUp() Action { return ActionCustom("MoveWorkspaceToMonitorUp", map[string]any{}) } func ActionMoveWorkspaceToMonitorPrevious() Action { return ActionCustom("MoveWorkspaceToMonitorPrevious", map[string]any{}) } func ActionMoveWorkspaceToMonitorNext() Action { return ActionCustom("MoveWorkspaceToMonitorNext", map[string]any{}) } func ActionMoveWorkspaceToMonitor(output OutputName, reference Option[WorkspaceReferenceArg]) Action { return ActionCustom("MoveWorkspaceToMonitor", map[string]any{"output": output, "reference": reference}) } func ActionToggleDebugTint() Action { return ActionCustom("ToggleDebugTint", map[string]any{}) } func ActionDebugToggleOpaqueRegions() Action { return ActionCustom("DebugToggleOpaqueRegions", map[string]any{}) } func ActionDebugToggleDamage() Action { return ActionCustom("DebugToggleDamage", map[string]any{}) } func ActionToggleWindowFloating(id Option[WindowID]) Action { return ActionCustom("ToggleWindowFloating", map[string]any{"id": id}) } func ActionMoveWindowToFloating(id Option[WindowID]) Action { return ActionCustom("MoveWindowToFloating", map[string]any{"id": id}) } func ActionMoveWindowToTiling(id Option[WindowID]) Action { return ActionCustom("MoveWindowToTiling", map[string]any{"id": id}) } func ActionFocusFloating() Action { return ActionCustom("FocusFloating", map[string]any{}) } func ActionFocusTiling() Action { return ActionCustom("FocusTiling", map[string]any{}) } func ActionSwitchFocusBetweenFloatingAndTiling() Action { return ActionCustom("SwitchFocusBetweenFloatingAndTiling", map[string]any{}) } func ActionMoveFloatingWindow(id Option[WindowID], x PositionChange, y PositionChange) Action { return ActionCustom("MoveFloatingWindow", map[string]any{"id": id, "x": x, "y": y}) } func ActionToggleWindowRuleOpacity(id Option[WindowID]) Action { return ActionCustom("ToggleWindowRuleOpacity", map[string]any{"id": id}) } func ActionSetDynamicCastWindow(id Option[WindowID]) Action { return ActionCustom("SetDynamicCastWindow", map[string]any{"id": id}) } func ActionSetDynamicCastMonitor(output Option[OutputName]) Action { return ActionCustom("SetDynamicCastMonitor", map[string]any{"output": output}) } func ActionClearDynamicCastTarget() Action { return ActionCustom("ClearDynamicCastTarget", map[string]any{}) } func ActionToggleOverview() Action { return ActionCustom("ToggleOverview", map[string]any{}) } func ActionOpenOverview() Action { return ActionCustom("OpenOverview", map[string]any{}) } func ActionCloseOverview() Action { return ActionCustom("CloseOverview", map[string]any{}) } func ActionToggleWindowUrgent(id Option[WindowID]) Action { return ActionCustom("ToggleWindowUrgent", map[string]any{"id": id}) } func ActionSetWindowUrgent(id Option[WindowID]) Action { return ActionCustom("SetWindowUrgent", map[string]any{"id": id}) } func ActionUnsetWindowUrgent(id Option[WindowID]) Action { return ActionCustom("UnsetWindowUrgent", map[string]any{"id": id}) }