API Docs

Module for interacting with windows

Types

This module provides the following types:

Properties

This module has no properties.

Methods

hs.window.focusedWindow() -> HSWindow

Get the currently focused window
hs.window.focusedWindow() -> HSWindow
HSWindow
The focused window, or nil if none
const win = hs.window.focusedWindow()
console.log(win && win.title)

hs.window.allWindows() -> HSWindow[]

Get all windows from all applications
hs.window.allWindows() -> HSWindow[]
HSWindow[]
An array of all windows
const wins = hs.window.allWindows()
console.log(wins.length)

hs.window.visibleWindows() -> HSWindow[]

Get all visible (not minimized) windows
hs.window.visibleWindows() -> HSWindow[]
HSWindow[]
An array of visible windows
const vis = hs.window.visibleWindows()

hs.window.windowsForApp(app) -> HSWindow[]

Get windows for a specific application
hs.window.windowsForApp(app) -> HSWindow[]
Name Type Description
app HSApplication An HSApplication object
HSWindow[]
An array of windows for that application
const app = hs.application.frontmost()
const wins = hs.window.windowsForApp(app)

hs.window.windowsOnScreen(screenIndex) -> HSWindow[]

Get all windows on a specific screen
hs.window.windowsOnScreen(screenIndex) -> HSWindow[]
Name Type Description
screenIndex number The screen index (0 for main screen)
HSWindow[]
An array of windows on that screen
const wins = hs.window.windowsOnScreen(0)

hs.window.windowAtPoint(point) -> HSWindow

Get the window at a specific screen position
hs.window.windowAtPoint(point) -> HSWindow
Name Type Description
point HSPoint An HSPoint containing the coordinates
HSWindow
The topmost window at that position, or nil if none
const win = hs.window.windowAtPoint({x: 500, y: 300})

hs.window.orderedWindows() -> HSWindow[]

Get ordered windows (front to back)
hs.window.orderedWindows() -> HSWindow[]
HSWindow[]
An array of windows in z-order
const wins = hs.window.orderedWindows()

hs.window.findByTitle(title) -> HSWindow[]

Find windows by title Parameter title: The window title to search for. All windows with titles that include this string, will be matched
hs.window.findByTitle(title) -> HSWindow[]
Name Type Description
title any The window title to search for. All windows with titles that include this string, will be matched
HSWindow[]
An array of HSWindow objects with matching titles

hs.window.currentWindows() -> HSWindow[]

Get all windows for the current application
hs.window.currentWindows() -> HSWindow[]
HSWindow[]
An array of HSWindow objects

hs.window.moveToLeftHalf(win) -> boolean

Move a window to left half of screen Parameter win: An HSWindow object
hs.window.moveToLeftHalf(win) -> boolean
Name Type Description
win any An HSWindow object
boolean
True if the operation was successful, otherwise False

hs.window.moveToRightHalf(win) -> boolean

Move a window to right half of screen Parameter win: An HSWindow object
hs.window.moveToRightHalf(win) -> boolean
Name Type Description
win any An HSWindow object
boolean
True if the operation was successful, otherwise False

hs.window.maximize(win) -> boolean

Maximize a window Parameter win: An HSWindow object
hs.window.maximize(win) -> boolean
Name Type Description
win any An HSWindow object
boolean
True if the operation was successful, otherwise false