electron/atom/browser/api/lib/app.coffee

38 lines
1 KiB
CoffeeScript
Raw Normal View History

2013-05-02 16:05:09 +00:00
EventEmitter = require('events').EventEmitter
bindings = process.atomBinding 'app'
2014-04-17 09:13:46 +00:00
app = bindings.app
app.__proto__ = EventEmitter.prototype
app.setApplicationMenu = (menu) ->
require('menu').setApplicationMenu menu
app.getApplicationMenu = ->
require('menu').getApplicationMenu()
app.commandLine =
appendSwitch: bindings.appendSwitch,
appendArgument: bindings.appendArgument
2013-05-02 16:05:09 +00:00
2013-08-06 08:19:56 +00:00
if process.platform is 'darwin'
app.dock =
bounce: (type='informational') -> bindings.dockBounce type
2013-08-06 08:19:56 +00:00
cancelBounce: bindings.dockCancelBounce
setBadge: bindings.dockSetBadgeText
2013-08-06 08:39:31 +00:00
getBadge: bindings.dockGetBadgeText
hide: bindings.dockHide
show: bindings.dockShow
2014-11-16 15:04:31 +00:00
setMenu: bindings.dockSetMenu
2013-08-06 08:19:56 +00:00
# Be compatible with old API.
app.once 'ready', -> app.emit 'finish-launching'
2014-04-10 09:07:39 +00:00
app.terminate = app.quit
app.exit = process.exit
app.getHomeDir = -> app.getPath 'home'
app.getDataPath = -> app.getPath 'userData'
app.setDataPath = (path) -> app.setPath 'userData', path
# Only one App object pemitted.
module.exports = app