diff --git a/browser/components/MarkdownSplitEditor.js b/browser/components/MarkdownSplitEditor.js index 7118c059..8dcf0835 100644 --- a/browser/components/MarkdownSplitEditor.js +++ b/browser/components/MarkdownSplitEditor.js @@ -1,17 +1,68 @@ import React from 'react' +import CodeEditor from 'browser/components/CodeEditor' +import MarkdownPreview from 'browser/components/MarkdownPreview' +import { findStorage } from 'browser/lib/findStorage' import styles from './MarkdownSplitEditor.styl' import CSSModules from 'browser/lib/CSSModules' class MarkdownSplitEditor extends React.Component { + constructor (props) { + super(props) + this.state = { + value: props.value + } + this.value = props.value + this.focus = () => this.refs.code.focus() + this.reload = () => this.refs.code.reload() + } + + componentWillReceiveProps (props) { + this.setState({ value: props.value }) + } + + handleOnChange (e) { + const value = this.refs.code.value + this.setState({ value }, () => { + this.value = value + this.props.onChange() + }) + } + render () { + const { config, storageKey } = this.props + const { value } = this.state + const storage = findStorage(storageKey) return (
-

editor

+ this.handleOnChange(e)} + />
-

preview

+
) diff --git a/browser/main/Detail/MarkdownNoteDetail.js b/browser/main/Detail/MarkdownNoteDetail.js index 39db6c3c..e49dff83 100644 --- a/browser/main/Detail/MarkdownNoteDetail.js +++ b/browser/main/Detail/MarkdownNoteDetail.js @@ -277,7 +277,13 @@ class MarkdownNoteDetail extends React.Component { const { config, ignorePreviewPointerEvents } = this.props const { note } = this.state if (this.state.editorType === 'SPLIT') { - return + return this.handleChange(e)} + /> } else { return