aerospace fork
Something went wrong. Try again.
Swift
at main
1234567891011121314151617181920212223242526272829303132333435import AppKitimport Common
struct MoveWorkspaceToMonitorCommand: Command { let args: MoveWorkspaceToMonitorCmdArgs /*conforms*/ let shouldResetClosedWindowsCache = true
func run(_ env: CmdEnv, _ io: CmdIo) -> BinaryExitCode { guard let target = args.resolveTargetOrReportError(env, io) else { return .fail } let focusedWorkspace = target.workspace let prevMonitor = focusedWorkspace.workspaceMonitor
switch args.target.val.resolve(target.workspace.workspaceMonitor, wrapAround: args.wrapAround) { case .success(let targetMonitor): if targetMonitor.monitorId_oneBased == prevMonitor.monitorId_oneBased { return .succ } if targetMonitor.setActiveWorkspace(focusedWorkspace) { let stubWorkspace = getStubWorkspace(for: prevMonitor) check( prevMonitor.setActiveWorkspace(stubWorkspace), "getStubWorkspace generated incompatible stub workspace (\(stubWorkspace)) for the monitor (\(prevMonitor)", ) return .succ } else { return .fail(io.err( "Can't move workspace '\(focusedWorkspace.name)' to monitor '\(targetMonitor.name)'. workspace-to-monitor-force-assignment doesn't allow it", )) } case .failure(let msg): return .fail(io.err(msg)) } }}