diff --git a/app/components/SimpleEditor/Editor.js b/app/components/SimpleEditor/Editor.js index 675b040c47730efa591b8379ac8c69200c3fe4ef..a94e42fc837d57749c70d131d7c76baef0214a3e 100644 --- a/app/components/SimpleEditor/Editor.js +++ b/app/components/SimpleEditor/Editor.js @@ -185,14 +185,19 @@ class Editor extends ProseEditor { _renderToolbarLeft ($$) { let commandStates = this.commandManager.getCommandStates() - return $$('div').addClass('se-toolbar-wrapper').append( - $$(Toolbar, { - commandStates: commandStates, - trackChanges: this.props.trackChanges, - trackChangesView: this.state.trackChangesView, - toolGroups: ['text'] - }).ref('toolbarLeft') - ) + + return $$('div') + .addClass('se-toolbar-wrapper') + .append( + $$(Toolbar, { + commandStates: commandStates, + trackChanges: this.props.trackChanges, + trackChangesView: this.state.trackChangesView, + toolGroups: ['text'] + } + ) + .ref('toolbarLeft') + ) } _renderEditor ($$) { diff --git a/app/components/SimpleEditor/elements/left_switch_text_type/LeftSwitchTextTypeTool.js b/app/components/SimpleEditor/elements/left_switch_text_type/LeftSwitchTextTypeTool.js index b503670091017358bd715ee4bd45d3b0eb35603e..19e029c3031901aa7a97dfc5ba423a6d5548f2da 100644 --- a/app/components/SimpleEditor/elements/left_switch_text_type/LeftSwitchTextTypeTool.js +++ b/app/components/SimpleEditor/elements/left_switch_text_type/LeftSwitchTextTypeTool.js @@ -34,8 +34,10 @@ class LeftSwitchTextTypeTool extends Tool { el.append(item) }.bind(this)) - if (this.props.currentTextType && - this.props.currentTextType.name === 'container-selection') { + if ((this.props.currentTextType && + this.props.currentTextType.name === 'container-selection') || + this.isReadOnlyMode() + ) { el.addClass('sm-disabled') } @@ -50,9 +52,21 @@ class LeftSwitchTextTypeTool extends Tool { handleClick (e) { e.preventDefault() + if (this.isReadOnlyMode()) return this.executeCommand(e.currentTarget.dataset.type) } + getSurface () { + return this.context.surfaceManager.getSurface('body') + } + + // TODO -- review how the side toolbar gets disabled + isReadOnlyMode () { + const surface = this.getSurface() + if (!surface) return true // HACK + + return surface.isReadOnlyMode() + } } LeftSwitchTextTypeTool.command = 'switch-text-type' diff --git a/app/components/SimpleEditor/elements/note/NoteTool.js b/app/components/SimpleEditor/elements/note/NoteTool.js index b5d712753aa16a46ff3241ab7c18c3709066a9e8..be2d5dbfe4c85035b8e5715c397b09a11fbaca79 100644 --- a/app/components/SimpleEditor/elements/note/NoteTool.js +++ b/app/components/SimpleEditor/elements/note/NoteTool.js @@ -4,9 +4,8 @@ class NoteTool extends AnnotationTool { renderButton ($$) { const el = super.renderButton($$) - // TODO -- either delete or re-introduce - // const readOnly = this.isSurfaceReadOnly() - // if (readOnly === true) el.attr('disabled', 'true') + const readOnly = this.isSurfaceReadOnly() + if (readOnly === true) el.attr('disabled', 'true') return el }