Skip to content

Commit

Permalink
Merge pull request #2661 from miguelalexbt/bugfix-2121
Browse files Browse the repository at this point in the history
Fixed lock button behavior and display
  • Loading branch information
Rokt33r committed Jan 23, 2019
2 parents c0f68dc + 7f6d4ac commit 96ab8ec
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 6 deletions.
5 changes: 3 additions & 2 deletions browser/components/MarkdownEditor.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,10 @@ class MarkdownEditor extends React.Component {
this.supportMdSelectionBold = [16, 17, 186]

this.state = {
status: props.config.editor.switchPreview === 'RIGHTCLICK' ? props.config.editor.delfaultStatus : 'PREVIEW',
status: props.config.editor.switchPreview === 'RIGHTCLICK' ? props.config.editor.delfaultStatus : 'CODE',
renderValue: props.value,
keyPressed: new Set(),
isLocked: false
isLocked: props.isLocked
}

this.lockEditorCode = () => this.handleLockEditor()
Expand Down Expand Up @@ -76,6 +76,7 @@ class MarkdownEditor extends React.Component {
}

handleContextMenu (e) {
if (this.state.isLocked) return
const { config } = this.props
if (config.editor.switchPreview === 'RIGHTCLICK') {
const newStatus = this.state.status === 'PREVIEW' ? 'CODE' : 'PREVIEW'
Expand Down
14 changes: 10 additions & 4 deletions browser/main/Detail/MarkdownNoteDetail.js
Original file line number Diff line number Diff line change
Expand Up @@ -42,9 +42,10 @@ class MarkdownNoteDetail extends React.Component {
content: '',
linesHighlighted: []
}, props.note),
isLockButtonShown: false,
isLockButtonShown: props.config.editor.type !== 'SPLIT',
isLocked: false,
editorType: props.config.editor.type
editorType: props.config.editor.type,
switchPreview: props.config.editor.switchPreview
}

this.dispatchTimer = null
Expand All @@ -65,6 +66,9 @@ class MarkdownNoteDetail extends React.Component {
})
ee.on('hotkey:deletenote', this.handleDeleteNote.bind(this))
ee.on('code:generate-toc', this.generateToc)

// Focus content if using blur or double click
if (this.state.switchPreview === 'BLUR' || this.state.switchPreview === 'DBL_CLICK') this.focus()
}

componentWillReceiveProps (nextProps) {
Expand Down Expand Up @@ -294,7 +298,7 @@ class MarkdownNoteDetail extends React.Component {

handleToggleLockButton (event, noteStatus) {
// first argument event is not used
if (this.props.config.editor.switchPreview === 'BLUR' && noteStatus === 'CODE') {
if (noteStatus === 'CODE') {
this.setState({isLockButtonShown: true})
} else {
this.setState({isLockButtonShown: false})
Expand All @@ -320,7 +324,8 @@ class MarkdownNoteDetail extends React.Component {
}

handleSwitchMode (type) {
this.setState({ editorType: type }, () => {
// If in split mode, hide the lock button
this.setState({ editorType: type, isLockButtonShown: !(type === 'SPLIT') }, () => {
this.focus()
const newConfig = Object.assign({}, this.props.config)
newConfig.editor.type = type
Expand Down Expand Up @@ -365,6 +370,7 @@ class MarkdownNoteDetail extends React.Component {
noteKey={note.key}
linesHighlighted={note.linesHighlighted}
onChange={this.handleUpdateContent.bind(this)}
isLocked={this.state.isLocked}
ignorePreviewPointerEvents={ignorePreviewPointerEvents}
/>
} else {
Expand Down

0 comments on commit 96ab8ec

Please sign in to comment.