diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 2739e50077..371279e3c6 100755 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -30,9 +30,6 @@ the preferred channel for [Bug Reports](#bug-reports), [Features Requests](#feat and [Submitting Pull Requests](#submitting-pull-requests), but please respect the following restrictions: -* Please don't use the issue tracker for personal support requests. Our -[HipChat room](https://www.hipchat.com/giAT9Fqb5) is a better place to get help. - ## Bug Reports A bug is a _demonstrable problem_ that is caused by the code in the repository. diff --git a/__tests__/README.md b/TESTING.md similarity index 100% rename from __tests__/README.md rename to TESTING.md diff --git a/boot2docker- b/boot2docker- new file mode 100755 index 0000000000..59f0bef01e --- /dev/null +++ b/boot2docker- @@ -0,0 +1 @@ +{"error":"Not Found"} \ No newline at end of file diff --git a/browser/main.js b/browser/main.js index 4df27d91d3..2628be3e7d 100644 --- a/browser/main.js +++ b/browser/main.js @@ -18,14 +18,6 @@ process.env.RESOURCES_PATH = __dirname + '/../resources'; process.chdir(path.join(__dirname, '..')); process.env.PATH = '/usr/local/bin:' + process.env.PATH; -if (argv.integration) { - process.env.TEST_TYPE = 'integration'; -} else { - process.env.TEST_TYPE = 'test'; -} - -app.commandLine.appendSwitch('js-flags', '--harmony'); - var mainWindow = null; var windowOptions = { width: 1000, @@ -34,7 +26,7 @@ var windowOptions = { 'min-height': 700, resizable: true, frame: false, - show: true + show: false }; app.on('activate-with-no-open-windows', function () { @@ -53,7 +45,7 @@ app.on('ready', function() { mainWindow.loadUrl(path.normalize('file://' + path.join(__dirname, '..', 'build/index.html'))); app.on('will-quit', function () { if (saveVMOnQuit) { - exec('VBoxManage controlvm boot2docker-vm savestate', function () {}); + exec('/usr/bin/VBoxManage controlvm boot2docker-vm savestate', function () {}); } }); } @@ -64,17 +56,14 @@ app.on('ready', function() { mainWindow.webContents.on('will-navigate', function (e, url) { if (url.indexOf('build/index.html#/containers') < 0) { - console.log(url); e.preventDefault(); } }); mainWindow.webContents.on('did-finish-load', function() { - if (!argv.test) { - mainWindow.show(); - } - mainWindow.focus(); mainWindow.setTitle(''); + mainWindow.show(); + mainWindow.focus(); // Auto Updates if (process.env.NODE_ENV !== 'development' && !argv.test) { diff --git a/gulpfile.js b/gulpfile.js index e1efcc3c8c..8b46023602 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -1,3 +1,5 @@ +var babel = require('gulp-babel'); +var changed = require('gulp-changed'); var concat = require('gulp-concat'); var cssmin = require('gulp-cssmin'); var downloadatomshell = require('gulp-download-atom-shell'); @@ -7,21 +9,19 @@ var gulpif = require('gulp-if'); var gutil = require('gulp-util'); var less = require('gulp-less'); var livereload = require('gulp-livereload'); +var packagejson = require('./package.json'); var plumber = require('gulp-plumber'); var react = require('gulp-react'); -var babel = require('gulp-babel'); var runSequence = require('run-sequence'); var shell = require('gulp-shell'); var sourcemaps = require('gulp-sourcemaps'); -var packagejson = require('./package.json'); -var changed = require('gulp-changed'); var dependencies = Object.keys(packagejson.dependencies); var isBeta = process.argv.indexOf('--beta') !== -1; var settings; try { - settings = JSON.parse(fs.readFileSync('settings.json'), 'utf8'); + settings = require('./settings.json'); } catch (err) { settings = {}; } @@ -32,7 +32,7 @@ var options = { beta: isBeta, filename: isBeta ? 'Kitematic (Beta).app' : 'Kitematic.app', name: isBeta ? 'Kitematic (Beta)' : 'Kitematic', - icon: isBeta ? 'kitematic-beta.icns' : 'kitematic.icns' + icon: isBeta ? './util/kitematic-beta.icns' : './util/kitematic.icns' }; gulp.task('js', function () { diff --git a/index.html b/index.html index b82c39c654..86d233b8db 100644 --- a/index.html +++ b/index.html @@ -3,7 +3,6 @@ - Kitematic diff --git a/package.json b/package.json index a899b9bd9c..3c1728fa16 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,7 @@ "test": "jest", "release": "gulp release", "release:beta": "gulp release --beta", - "preinstall": "./deps", + "preinstall": "./util/deps", "lint": "jsxhint src && jsxhint browser" }, "licenses": [ @@ -25,8 +25,8 @@ } ], "jest": { - "scriptPreprocessor": "/preprocessor.js", - "setupEnvScriptFile": "/testenv.js", + "scriptPreprocessor": "/util/preprocessor.js", + "setupEnvScriptFile": "/util/testenv.js", "unmockedModulePathPatterns": [ "tty", "net", diff --git a/src/Main.js b/src/Main.js index 447ce3c3e4..63c9d0d69c 100644 --- a/src/Main.js +++ b/src/Main.js @@ -1,5 +1,15 @@ -require.main.paths.splice(0, 0, process.env.NODE_PATH); var remote = require('remote'); +if (localStorage.getItem('settings.width') && localStorage.getItem('settings.height')) { + remote.getCurrentWindow().setSize(parseInt(localStorage.getItem('settings.width')), parseInt(localStorage.getItem('settings.height'))); + remote.getCurrentWindow().center(); +} + +window.addEventListener('resize', function () { + localStorage.setItem('settings.width', window.innerWidth); + localStorage.setItem('settings.height', window.innerHeight); +}); + +require.main.paths.splice(0, 0, process.env.NODE_PATH); var app = remote.require('app'); var React = require('react'); var fs = require('fs'); @@ -10,13 +20,13 @@ var boot2docker = require('./boot2docker'); var ContainerStore = require('./ContainerStore'); var SetupStore = require('./SetupStore'); var metrics = require('./Metrics'); -var settingsjson; var MenuTemplate = require('./MenuTemplate'); var Menu = remote.require('menu'); var menu = Menu.buildFromTemplate(MenuTemplate); Menu.setApplicationMenu(menu); +var settingsjson; try { settingsjson = JSON.parse(fs.readFileSync(path.join(__dirname, '..', 'settings.json'), 'utf8')); } catch (err) { @@ -73,7 +83,6 @@ setInterval(function () { router.run(Handler => React.render(, document.body)); SetupStore.run().then(boot2docker.ip).then(ip => { - console.log(ip); docker.setHost(ip); ContainerStore.init(function (err) { if (err) { console.log(err); } diff --git a/src/MenuTemplate.js b/src/MenuTemplate.js index 01f79afeca..058409f6c3 100644 --- a/src/MenuTemplate.js +++ b/src/MenuTemplate.js @@ -2,7 +2,6 @@ var remote = require('remote'); var app = remote.require('app'); var path = require('path'); var docker = require('./Docker'); -var BrowserWindow = remote.require('browser-window'); var router = require('./Router'); var util = require('./Util'); var metrics = require('./Metrics'); @@ -124,7 +123,7 @@ var MenuTemplate = [ { label: 'Toggle DevTools', accelerator: 'Alt+Command+I', - click: function() { BrowserWindow.getFocusedWindow().toggleDevTools(); } + click: function() { remote.getCurrentWindow().getFocusedWindow().toggleDevTools(); } }, ] }, @@ -139,7 +138,9 @@ var MenuTemplate = [ { label: 'Close', accelerator: 'Command+W', - selector: 'performClose:' + click: function () { + remote.getCurrentWindow().hide(); + } }, { type: 'separator' diff --git a/styles/main.less b/styles/main.less index d8a743e461..87f3db3143 100644 --- a/styles/main.less +++ b/styles/main.less @@ -21,6 +21,7 @@ html, body { height: 100%; width: 100%; overflow: hidden; + background: none; -webkit-user-select: none; font-family: @font-regular; cursor: default; diff --git a/__tests__/util/VirtualBox_Uninstall.tool b/util/VirtualBox_Uninstall.tool similarity index 100% rename from __tests__/util/VirtualBox_Uninstall.tool rename to util/VirtualBox_Uninstall.tool diff --git a/deps b/util/deps similarity index 94% rename from deps rename to util/deps index 9f44db32c3..9527e4c1e0 100755 --- a/deps +++ b/util/deps @@ -1,5 +1,6 @@ #!/bin/bash -BASE="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +BASE=$DIR/.. BOOT2DOCKER_CLI_VERSION=$(node -pe "JSON.parse(process.argv[1])['boot2docker-version']" "$(cat $BASE/package.json)") BOOT2DOCKER_CLI_FILE=boot2docker-$BOOT2DOCKER_CLI_VERSION DOCKER_CLI_VERSION=$(node -pe "JSON.parse(process.argv[1])['docker-version']" "$(cat $BASE/package.json)") diff --git a/kitematic-beta.icns b/util/kitematic-beta.icns similarity index 100% rename from kitematic-beta.icns rename to util/kitematic-beta.icns diff --git a/kitematic.icns b/util/kitematic.icns similarity index 100% rename from kitematic.icns rename to util/kitematic.icns diff --git a/preprocessor.js b/util/preprocessor.js similarity index 100% rename from preprocessor.js rename to util/preprocessor.js diff --git a/__tests__/util/reset b/util/reset similarity index 100% rename from __tests__/util/reset rename to util/reset diff --git a/testenv.js b/util/testenv.js similarity index 100% rename from testenv.js rename to util/testenv.js