Skip to content

Provide Information about Application Windows running

Notifications You must be signed in to change notification settings

karaggeorge/mac-windows

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

Instalation

To install mac-windows in your project add it using NPM

npm install --save mac-windows

After that you can import the various functions as follows:

import { getWindows, activateWindow } from 'mac-windows';

or

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
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.

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

This package was created for Kap

License

MIT Licensed. Copyright (c) George Karagkiaouris 2017.

About

Provide Information about Application Windows running

Resources

Stars

Watchers

Forks

Packages

No packages published