From 26f05b343e6cd5b420cf649fe1c432f951f03ac1 Mon Sep 17 00:00:00 2001 From: Dick Choi Date: Sat, 10 Sep 2016 15:37:30 +0900 Subject: [PATCH] override default values to undefined attributes of config --- browser/main/TopBar/index.js | 3 ++- browser/main/lib/ConfigManager.js | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/browser/main/TopBar/index.js b/browser/main/TopBar/index.js index 1f156bdc..ba56645e 100644 --- a/browser/main/TopBar/index.js +++ b/browser/main/TopBar/index.js @@ -47,6 +47,7 @@ class TopBar extends React.Component { this.createNote('SNIPPET_NOTE') break case 'ALWAYS_ASK': + default: let { dispatch, location } = this.props let { storage, folder } = this.resolveTargetFolder() @@ -181,7 +182,7 @@ class TopBar extends React.Component { { type: 'radio', label: 'Markdown Note', - checked: config .ui.defaultNote === 'MARKDOWN_NOTE', + checked: config.ui.defaultNote === 'MARKDOWN_NOTE', click: (e) => this.setDefaultNote('MARKDOWN_NOTE') }, { diff --git a/browser/main/lib/ConfigManager.js b/browser/main/lib/ConfigManager.js index 0fe9dbc8..40748854 100644 --- a/browser/main/lib/ConfigManager.js +++ b/browser/main/lib/ConfigManager.js @@ -53,6 +53,10 @@ function get () { try { config = Object.assign({}, defaultConfig, JSON.parse(config)) + config.hotkey = Object.assign({}, defaultConfig.hotkey, config.hotkey) + config.ui = Object.assign({}, defaultConfig.ui, config.ui) + config.editor = Object.assign({}, defaultConfig.editor, config.editor) + config.preview = Object.assign({}, defaultConfig.preview, config.preview) if (!validate(config)) throw new Error('INVALID CONFIG') } catch (err) { console.warn('Boostnote resets the malformed configuration.')