add app.isPackaged (#12656)
* add isPackaged method * add false test case for app.isPackaged() * document add.isPackaged() * check isPackaged() without fs call * convert to non-method property * document app.isPackaged as a property * update tests for app.isPackaged * remove unused fs require * clarify docs for isPackaged()
This commit is contained in:
parent
4d078fdb03
commit
daf75dd375
3 changed files with 21 additions and 0 deletions
|
@ -1131,6 +1131,12 @@ Sets the application's [dock menu][dock-menu].
|
||||||
|
|
||||||
Sets the `image` associated with this dock icon.
|
Sets the `image` associated with this dock icon.
|
||||||
|
|
||||||
|
## Properties
|
||||||
|
|
||||||
|
### `app.isPackaged`
|
||||||
|
|
||||||
|
A `Boolean` property that returns `true` if the app is packaged, `false` otherwise. For many apps, this property can be used to distinguish development and production environments.
|
||||||
|
|
||||||
[dock-menu]:https://developer.apple.com/library/mac/documentation/Carbon/Conceptual/customizing_docktile/concepts/dockconcepts.html#//apple_ref/doc/uid/TP30000986-CH2-TPXREF103
|
[dock-menu]:https://developer.apple.com/library/mac/documentation/Carbon/Conceptual/customizing_docktile/concepts/dockconcepts.html#//apple_ref/doc/uid/TP30000986-CH2-TPXREF103
|
||||||
[tasks]:https://msdn.microsoft.com/en-us/library/windows/desktop/dd378460(v=vs.85).aspx#tasks
|
[tasks]:https://msdn.microsoft.com/en-us/library/windows/desktop/dd378460(v=vs.85).aspx#tasks
|
||||||
[app-user-model-id]: https://msdn.microsoft.com/en-us/library/windows/desktop/dd378459(v=vs.85).aspx
|
[app-user-model-id]: https://msdn.microsoft.com/en-us/library/windows/desktop/dd378459(v=vs.85).aspx
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
'use strict'
|
'use strict'
|
||||||
|
|
||||||
const bindings = process.atomBinding('app')
|
const bindings = process.atomBinding('app')
|
||||||
|
const path = require('path')
|
||||||
const {app, App} = bindings
|
const {app, App} = bindings
|
||||||
|
|
||||||
// Only one app object permitted.
|
// Only one app object permitted.
|
||||||
|
@ -57,6 +58,14 @@ Object.assign(app, {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
app.isPackaged = (() => {
|
||||||
|
const execFile = path.basename(process.execPath).toLowerCase()
|
||||||
|
if (process.platform === 'win32') {
|
||||||
|
return execFile !== 'electron.exe'
|
||||||
|
}
|
||||||
|
return execFile !== 'electron'
|
||||||
|
})()
|
||||||
|
|
||||||
if (process.platform === 'darwin') {
|
if (process.platform === 'darwin') {
|
||||||
app.dock = {
|
app.dock = {
|
||||||
bounce (type = 'informational') {
|
bounce (type = 'informational') {
|
||||||
|
|
|
@ -118,6 +118,12 @@ describe('app module', () => {
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
describe('app.isPackaged', () => {
|
||||||
|
it('should be false durings tests', () => {
|
||||||
|
assert.equal(app.isPackaged, false)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
describe('app.isInApplicationsFolder()', () => {
|
describe('app.isInApplicationsFolder()', () => {
|
||||||
before(function () {
|
before(function () {
|
||||||
if (process.platform !== 'darwin') {
|
if (process.platform !== 'darwin') {
|
||||||
|
|
Loading…
Add table
Reference in a new issue