mirror of
https://github.com/BoostIo/Boostnote
synced 2025-12-13 17:56:25 +00:00
Enable to show the lock icon only the Editor state is CODE
This commit is contained in:
@@ -19,13 +19,11 @@ class MarkdownEditor extends React.Component {
|
||||
}
|
||||
|
||||
this.lockEditorCode = () => this.handleLockEditor()
|
||||
this.getEditorStatus = () => this.handleGetEditorStatus()
|
||||
}
|
||||
|
||||
componentDidMount () {
|
||||
this.value = this.refs.code.value
|
||||
eventEmitter.on('editor:lock', this.lockEditorCode)
|
||||
eventEmitter.on('editor:status', this.getEditorStatus)
|
||||
}
|
||||
|
||||
componentDidUpdate () {
|
||||
@@ -41,7 +39,6 @@ class MarkdownEditor extends React.Component {
|
||||
componentWillUnmount () {
|
||||
this.cancelQueue()
|
||||
eventEmitter.off('editor:lock', this.lockEditorCode)
|
||||
eventEmitter.off('editor:status', this.getEditorStatus)
|
||||
}
|
||||
|
||||
queueRendering (value) {
|
||||
@@ -94,6 +91,7 @@ class MarkdownEditor extends React.Component {
|
||||
this.setState({
|
||||
status: 'PREVIEW'
|
||||
}, () => {
|
||||
eventEmitter.emit('topbar:lock')
|
||||
this.refs.preview.focus()
|
||||
this.refs.preview.scrollTo(cursorPosition.line)
|
||||
})
|
||||
@@ -143,6 +141,7 @@ class MarkdownEditor extends React.Component {
|
||||
this.setState({
|
||||
status: 'CODE'
|
||||
}, () => {
|
||||
eventEmitter.emit('topbar:lock')
|
||||
this.refs.code.focus()
|
||||
})
|
||||
} else {
|
||||
|
||||
@@ -26,15 +26,22 @@ class MarkdownNoteDetail extends React.Component {
|
||||
title: '',
|
||||
content: ''
|
||||
}, props.note),
|
||||
isCODE: false,
|
||||
locked: false
|
||||
}
|
||||
this.dispatchTimer = null
|
||||
|
||||
this.showLockButton = () => this.handleShowLockButton()
|
||||
}
|
||||
|
||||
focus () {
|
||||
this.refs.content.focus()
|
||||
}
|
||||
|
||||
componentDidMount () {
|
||||
ee.on('topbar:lock', this.showLockButton)
|
||||
}
|
||||
|
||||
componentWillReceiveProps (nextProps) {
|
||||
if (nextProps.note.key !== this.props.note.key && !this.isMovingNote) {
|
||||
if (this.saveQueue != null) this.saveNow()
|
||||
@@ -51,6 +58,10 @@ class MarkdownNoteDetail extends React.Component {
|
||||
if (this.saveQueue != null) this.saveNow()
|
||||
}
|
||||
|
||||
componentDidUnmount () {
|
||||
ee.off('topbar:lock', this.showLockButton)
|
||||
}
|
||||
|
||||
findTitle (value) {
|
||||
let splitted = value.split('\n')
|
||||
let title = null
|
||||
@@ -215,6 +226,10 @@ class MarkdownNoteDetail extends React.Component {
|
||||
if (e.keyCode === 27) this.handleDeleteCancelButtonClick(e)
|
||||
}
|
||||
|
||||
handleShowLockButton () {
|
||||
this.setState({isCODE: !this.state.isCODE})
|
||||
}
|
||||
|
||||
render () {
|
||||
let { data, config } = this.props
|
||||
let { note } = this.state
|
||||
@@ -247,10 +262,8 @@ class MarkdownNoteDetail extends React.Component {
|
||||
</div>
|
||||
<div styleName='info-right'>
|
||||
{(() => {
|
||||
// TODO: get a state of MarkdownEditor somehow
|
||||
const editorStatus='CODE'
|
||||
let faClassName=`fa ${this.toggleLockButton()}`
|
||||
if (editorStatus === 'CODE') {
|
||||
if (this.state.isCODE) {
|
||||
return(
|
||||
<button styleName='info-right-button'
|
||||
onClick={(e) => this.handleLockButtonClick(e)}
|
||||
|
||||
Reference in New Issue
Block a user