diff --git a/app/components/SimpleEditor/ContainerEditor.js b/app/components/SimpleEditor/ContainerEditor.js index 123021f66d69a3692f69eb0b0a555b439feb6e0e..0e87f05683822e927ab08adec2af4e1f16687c89 100644 --- a/app/components/SimpleEditor/ContainerEditor.js +++ b/app/components/SimpleEditor/ContainerEditor.js @@ -224,8 +224,16 @@ class ContainerEditor extends SubstanceContainerEditor { disableToolbar () { const commandStates = this.getCommandStates() + const allowed = [ + 'comment', + 'redo', + 'save', + 'track-change-enable', + 'track-change-toggle-view', + 'undo' + ] + each(keys(commandStates), key => { - const allowed = ['comment', 'save', 'undo', 'redo', 'track-change-toggle-view'] if (!includes(allowed, key)) commandStates[key].disabled = true }) } diff --git a/app/components/SimpleEditor/elements/track_change/TrackChangeControlCommand.js b/app/components/SimpleEditor/elements/track_change/TrackChangeControlCommand.js index a955efb2738f6c808ca9442d84ec195b2d22d180..e4937baa001a07d20b8a1f4ef4cc21144c97a5cf 100644 --- a/app/components/SimpleEditor/elements/track_change/TrackChangeControlCommand.js +++ b/app/components/SimpleEditor/elements/track_change/TrackChangeControlCommand.js @@ -1,8 +1,8 @@ -import {Command} from 'substance' +import { Command } from 'substance' class TrackChangeControlCommand extends Command { getCommandState (params) { - let newState = { + const newState = { disabled: false, active: false } diff --git a/app/components/SimpleEditor/elements/track_change/TrackChangeControlTool.js b/app/components/SimpleEditor/elements/track_change/TrackChangeControlTool.js index a3ab7adfa9bf1b0a0eb93ba0ac0cb039c7e5fb26..fc3f43316987c078953f22b8c1e1a42bfb94856a 100644 --- a/app/components/SimpleEditor/elements/track_change/TrackChangeControlTool.js +++ b/app/components/SimpleEditor/elements/track_change/TrackChangeControlTool.js @@ -1,15 +1,23 @@ import { Tool } from 'substance' class TrackChangeControlTool extends Tool { + constructor (parent, props, config) { + super(parent, props, config) + this.disabled = false + } getClassNames () { return 'sm-target-track-change-enable' } + willReceiveProps (props) { + if (!this.canAct()) this.disabled = true + } + renderButton ($$) { const el = super.renderButton($$) - let trackChangesMode = this.isTrackChangesOn() + const trackChangesMode = this.isTrackChangesOn() if (trackChangesMode === true) el.addClass('track-changes-active') if (!this.canAct()) el.attr('disabled', 'true')