UNPKG

mac-windows

Version:

Provide information about Application Windows running and activate and Application.

105 lines (76 loc) 2.87 kB
# mac-windows > Provide information about Application Windows running and activate and Application. **Important:** This package does not work on Windows or Linux Requires macOS 10.12 or later. macOS 10.13 or earlier needs to download the [Swift runtime support libraries](https://support.apple.com/kb/DL1998). ## Instalation To install mac-windows in your project add it using NPM ```javascript npm install --save mac-windows ``` After that you can import the various functions as follows: ```js import { getWindows, activateWindow } from 'mac-windows'; ``` or ```js const getWindows = require('mac-windows').getWindows ``` ## Usage ### `getWindows(opts: Object): Array` Returns a Promise with an array containing an object for each Application currently in the screen. Information included for each Application: - **pid:** Process Id of the Application - **ownerName:** Name of the Application (e.g. Google Chrome) - **name:** Title of the main window of the application (e.g. Github) - **width:** Current width of the main window - **height:** Current height of the main window - **x:** Horizontal position of the main window - **y:** Vertical position of the main window - **number:** The number of the window ```js import { getWindows } from 'mac-windows'; getWindows().then(windows => { console.log(windows); }); /* [ { pid: 320, ownerName: 'Finder', name: 'Desktop', width: 770, height: 436, x: 295, y: 100, number: 1027 }, { pid: 11734, ownerName: 'Google Chrome', name: 'karaggeorge/mac-windows', width: 1276, height: 778, x: 0, y: 23, number: 63226 } ] */ ``` Extra options that can be passed in to `getWindows`: | Name | Description | Type | Default Value | |---|---|---|---| | showAllWindows | Return all the windows for each Application instead of just the main one | `bool` | `false` | | onScreenOnly | Return the windows from all the Applications even if they are not in the current screen | `bool` | `true` | _NOTE:_ Swift and the AppKit Package don't support activating a specific window at the moment. When activating an Application the main window will be brought to the front. That is the last window that was used. ### `activateWindow(windowName: String)` Activate the Application whose `ownerName` matches the given `windowName`. Activating an Application will cause the Application's main window to come to the front of the screen. ```js import { activateWindow } from 'mac-windows'; activateWindow('Finder'); ``` ## Contributing Please feel free to submit a Pull Request, report a Bug or propose a Feature! Thanks to the projects this was inspired by: [Active Window](https://github.com/wk-j/mac-active-window) This package was created for [Kap](https://github.com/wulkano/kap) ## License MIT Licensed. Copyright (c) George Karagkiaouris 2017.