Are you sure to destroy '{this.props.planet.userName + '/' + this.props.planet.name}'?
If you are sure, write '{this.props.planet.userName + '/' + this.props.planet.name}' to input below and click '{this.state.randomDeleteText}' button.
diff --git a/browser/main/Components/PreferencesModal.jsx b/browser/main/Components/PreferencesModal.jsx
new file mode 100644
index 00000000..2dd662ac
--- /dev/null
+++ b/browser/main/Components/PreferencesModal.jsx
@@ -0,0 +1,112 @@
+var ipc = require('ipc')
+var remote = require('remote')
+
+var React = require('react/addons')
+
+var LinkedState = require('../Mixins/LinkedState')
+var ExternalLink = require('../Mixins/ExternalLink')
+var KeyCaster = require('../Mixins/KeyCaster')
+
+module.exports = React.createClass({
+ mixins: [LinkedState, ExternalLink, KeyCaster('aboutModal')],
+ propTypes: {
+ close: React.PropTypes.func
+ },
+ getInitialState: function () {
+ var keymap = remote.getGlobal('keymap')
+ console.log(keymap)
+ return {
+ currentTab: 'settings',
+ keymap: keymap
+ }
+ },
+ onKeyCast: function (e) {
+ switch (e.status) {
+ case 'closeModal':
+ this.props.close()
+ break
+ }
+ },
+ activeSettings: function () {
+ this.setState({currentTab: 'settings'})
+ },
+ activeAbout: function () {
+ this.setState({currentTab: 'about'})
+ },
+ saveKeymap: function () {
+ ipc.send('hotkeyUpdated', JSON.stringify(this.state.keymap))
+ },
+ render: function () {
+ var content = this.state.currentTab === 'settings' ? this.renderSettingsTab() : this.renderAboutTab()
+
+ return (
+
+
+
Preferences
+
+
+
+ {content}
+
+
+ )
+ },
+ renderSettingsTab: function () {
+ return (
+
+
Hotkey
+
+
+
+
+
+
+
+
+
Example
+
+ 0 to 9
+ A to Z
+ F1 to F24
+ - Punctuations like
~, !, @, #, $, etc.
+ Plus
+ Space
+ Backspace
+ Delete
+ Insert
+ Return (or Enter as alias)
+ Up, Down, Left and Right
+ Home and End
+ PageUp and PageDown
+ Escape (or Esc for short)
+ VolumeUp, VolumeDown and VolumeMute
+ MediaNextTrack, MediaPreviousTrack, MediaStop and MediaPlayPause
+
+
+
+ )
+ },
+ renderAboutTab: function () {
+ var version = global.version
+ return (
+
+
+

+
Boost {version == null || version.length === 0 ? 'DEV version' : 'v' + version}
+
+
+
+
+ )
+ }
+})
diff --git a/browser/main/Components/TeamSettingsModal.jsx b/browser/main/Components/TeamSettingsModal.jsx
index ad90c12e..b11f3d12 100644
--- a/browser/main/Components/TeamSettingsModal.jsx
+++ b/browser/main/Components/TeamSettingsModal.jsx
@@ -176,9 +176,9 @@ module.exports = React.createClass({
}
return (
-
+
-
Team settings
+
Team settings
@@ -192,7 +192,7 @@ module.exports = React.createClass({
},
renderTeamInfoTab: function () {
return (
-
+
@@ -239,7 +239,7 @@ module.exports = React.createClass({
var belowLimit = members.length < 5
return (
-
+
diff --git a/browser/main/Containers/MainContainer.jsx b/browser/main/Containers/MainContainer.jsx
index 1db5af61..58efb015 100644
--- a/browser/main/Containers/MainContainer.jsx
+++ b/browser/main/Containers/MainContainer.jsx
@@ -55,7 +55,6 @@ module.exports = React.createClass({
return
} else {
this.transitionTo('home')
- return
}
}
diff --git a/browser/main/index.electron.html b/browser/main/index.electron.html
index ba9fe46d..5f5b6b2c 100644
--- a/browser/main/index.electron.html
+++ b/browser/main/index.electron.html
@@ -87,10 +87,11 @@
diff --git a/browser/styles/shared/modal.styl b/browser/styles/shared/modal.styl
index 736c9fb1..aae9f5dd 100644
--- a/browser/styles/shared/modal.styl
+++ b/browser/styles/shared/modal.styl
@@ -32,14 +32,14 @@
.modal-control
float right
- .tabModal
+ .sideNavModal
height 500px
.leftPane
absolute top bottom left
width 175px
padding 20px
border-right solid 1px borderColor
- .tabLabel
+ .modalLabel
font-size 1.5em
margin-top 25px
margin-bottom 35px
@@ -57,9 +57,7 @@
left 175px
padding 15px
overflow-y auto
-
- .EditProfileModal, .PlanetSettingModal, .TeamSettingsModal
- .userInfoTab, .passwordTab, .planetProfileTab, .userInfoTab, .membersTab
+ .tab
padding-top 45px
.formField
position relative
@@ -111,6 +109,33 @@
alertSuccess()
.alertError
alertError()
+ .PreferencesModal
+ .settingsTab
+ .categoryLabel
+ font-size 1.5em
+ margin-bottom 25px
+ .example
+ marked()
+ .aboutTab
+ padding-top 30px
+ .about1
+ margin-bottom 25px
+ .logo
+ display block
+ margin 0 auto
+ .appInfo
+ font-size 1.5em
+ text-align center
+ .about2
+ width 200px
+ margin 0 auto
+ .externalLabel
+ font-size 1.2em
+ margin-bottom 15px
+ .externalList
+ li
+ margin-bottom 15px
+ .PlanetSettingModal
.planetDeleteTab
padding-top 65px
p
@@ -153,6 +178,7 @@
alertSuccess()
.alertError
alertError()
+ .TeamSettingsModal
.membersTab
.memberTable
width 100%
@@ -262,25 +288,6 @@
border-radius 5px
marked()
- .AboutModal
- width 320px
- .about1
- margin-bottom 25px
- .logo
- display block
- margin 0 auto
- .appInfo
- font-size 1.5em
- text-align center
- .about2
- width 200px
- margin 0 auto
- .externalLabel
- font-size 1.2em
- margin-bottom 15px
- .externalList
- li
- margin-bottom 15px
.PlanetCreateModal.modal, .TeamCreateModal.modal, .AddMemberModal.modal
padding 60px 0
diff --git a/main.js b/main.js
index 9fb81ce9..6d43bc0e 100644
--- a/main.js
+++ b/main.js
@@ -4,6 +4,7 @@ var Menu = require('menu')
var MenuItem = require('menu-item')
var Tray = require('tray')
var ipc = require('ipc')
+var jetpack = require('fs-jetpack')
require('crash-reporter').start()
@@ -19,7 +20,6 @@ var update = null
// })
var version = app.getVersion()
-global.version = version
var versionText = (version == null || version.length === 0) ? 'DEV version' : 'v' + version
var nn = require('node-notifier')
var autoUpdater = require('auto-updater')
@@ -143,12 +143,49 @@ app.on('ready', function () {
popUpWindow.setVisibleOnAllWorkspaces(true)
var globalShortcut = require('global-shortcut')
+ console.log('jetpack launch')
+ var userDataPath = app.getPath('userData')
+ if (!jetpack.cwd(userDataPath).exists('keymap.json')) {
+ jetpack.cwd(userDataPath).file('keymap.json', {content: '{}'})
+ }
+ try {
+ global.keymap = JSON.parse(jetpack.cwd(userDataPath).read('keymap.json', 'utf-8'))
+ } catch (err) {
+ jetpack.cwd(userDataPath).file('keymap.json', {content: '{}'})
+ global.keymap = {}
+ }
+ if (global.keymap.toggleFinder == null) global.keymap.toggleFinder = 'ctrl+tab+shift'
+ var toggleFinderKey = global.keymap.toggleFinder
- globalShortcut.register('ctrl+tab+shift', function () {
- if (mainWindow != null && !mainWindow.isFocused()) {
- mainWindow.hide()
+ try {
+ globalShortcut.register(toggleFinderKey, function () {
+ if (mainWindow != null && !mainWindow.isFocused()) {
+ mainWindow.hide()
+ }
+ popUpWindow.show()
+ })
+ } catch (err) {
+ console.log(err.name)
+ }
+
+ ipc.on('hotkeyUpdated', function (event, newKeymap) {
+ console.log('got new keymap')
+ console.log(newKeymap)
+ globalShortcut.unregisterAll()
+ global.keymap = JSON.parse(newKeymap)
+ jetpack.cwd(userDataPath).file('keymap.json', {content: JSON.stringify(global.keymap)})
+
+ var toggleFinderKey = global.keymap.toggleFinder != null ? global.keymap.toggleFinder : 'ctrl+tab+shift'
+ try {
+ globalShortcut.register(toggleFinderKey, function () {
+ if (mainWindow != null && !mainWindow.isFocused()) {
+ mainWindow.hide()
+ }
+ popUpWindow.show()
+ })
+ } catch (err) {
+ console.log(err.name)
}
- popUpWindow.show()
})
global.hideFinder = function () {
diff --git a/modules/menu-template.js b/modules/menu-template.js
index 9021cba0..fa396f42 100644
--- a/modules/menu-template.js
+++ b/modules/menu-template.js
@@ -19,7 +19,7 @@ module.exports = [
type: 'separator'
},
{
- label: 'Hide Electron',
+ label: 'Hide Boost',
accelerator: 'Command+H',
selector: 'hide:'
},
@@ -89,13 +89,13 @@ module.exports = [
click: function () {
BrowserWindow.getFocusedWindow().reload()
}
- // },
- // {
- // label: 'Toggle DevTools',
- // accelerator: 'Alt+Command+I',
- // click: function () {
- // BrowserWindow.getFocusedWindow().toggleDevTools()
- // }
+ },
+ {
+ label: 'Toggle DevTools',
+ accelerator: 'Alt+Command+I',
+ click: function () {
+ BrowserWindow.getFocusedWindow().toggleDevTools()
+ }
}
]
},
diff --git a/package.json b/package.json
index 04e8dd1e..4ff615c1 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "boost",
- "version": "0.2.9",
+ "version": "0.2.10",
"description": "Boost App",
"main": "main.js",
"scripts": {
@@ -32,6 +32,7 @@
"homepage": "https://github.com/Rokt33r/codexen-app#readme",
"dependencies": {
"font-awesome": "^4.3.0",
+ "fs-jetpack": "^0.7.0",
"markdown-it": "^4.3.1",
"md5": "^2.0.0",
"moment": "^2.10.3",