diff --git a/.travis.yml b/.travis.yml index b738ff2..3f26f65 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,7 @@ language: node_js matrix: include: + - os: linux - os: osx node_js: - 8 diff --git a/electron-builder.yml b/electron-builder.yml index 4f4df15..f853aac 100644 --- a/electron-builder.yml +++ b/electron-builder.yml @@ -35,3 +35,29 @@ win: # Config for the windows installer nsis: oneClick: false + +# Linux configuration +linux: + icon: 'src/assets/img/icon256x256.png' + target: + - target: 'AppImage' + arch: + - x64 + - ia32 + - target: 'deb' + arch: + - x64 + - ia32 + - target: 'rpm' + arch: + - x64 + - ia32 + - target: 'zip' + arch: + - x64 + - ia32 + - target: 'tar.gz' + arch: + - x64 + - ia32 + publish: ['github'] diff --git a/package.json b/package.json index bdce78f..2883706 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "devtop", - "version": "0.9.0-beta", + "version": "0.10.0-beta", "description": "DevTop - Essential Tools for Developers", "main": "app.js", "author": { diff --git a/src/utils/getPosition.js b/src/utils/getPosition.js index 8bf6bed..68bd756 100644 --- a/src/utils/getPosition.js +++ b/src/utils/getPosition.js @@ -5,22 +5,29 @@ module.exports = (tray, window) => { const { x, y, height, width } = tray.getBounds(); const { height: winHeight, width: winWidth } = window.getBounds(); let setX, setY; - if(y < (SIZE_THRESHOLD + (winHeight / 2))) { - // top - setX = x - (winWidth/2 - (width/2)); - setY = y + height; - } else if(y > SIZE_THRESHOLD && y > (display.height - SIZE_THRESHOLD)) { - // bottom - setX = x - (winWidth/2 - (width/2)); - setY = y - winHeight; - } else if(x < (SIZE_THRESHOLD + winWidth)) { - // left - setX = x + width; - setY = y - (winHeight - height); + if (process.platform !== 'linux') { + if (y < SIZE_THRESHOLD + winHeight / 2) { + // top + setX = x - (winWidth / 2 - width / 2); + setY = y + height; + } else if (y > SIZE_THRESHOLD && y > display.height - SIZE_THRESHOLD) { + // bottom + setX = x - (winWidth / 2 - width / 2); + setY = y - winHeight; + } else if (x < SIZE_THRESHOLD + winWidth) { + // left + setX = x + width; + setY = y - (winHeight - height); + } else { + // right + setX = x - winWidth; + setY = y - (winHeight - height); + } } else { - // right - setX = x - winWidth; - setY = y - (winHeight - height); + // for linux + setX = display.height + winWidth / 2; + setY = display.y; } + return { setX, setY }; -} +};