diff --git a/app/components/SimpleEditor/elements/track_change/TrackChangeComponent.js b/app/components/SimpleEditor/elements/track_change/TrackChangeComponent.js index f8d023a29dba47be6db6d89f99ac23fc93664bde..30215e3896ea9f334b5370b88e8085e52b4f997e 100644 --- a/app/components/SimpleEditor/elements/track_change/TrackChangeComponent.js +++ b/app/components/SimpleEditor/elements/track_change/TrackChangeComponent.js @@ -1,6 +1,11 @@ import { AnnotationComponent } from 'substance' class TrackChangeComponent extends AnnotationComponent { + + didMount () { + this.context.editorSession.onUpdate('document', this.onTrackChangesUpdated, this) + } + render ($$) { const { id, status, user } = this.props.node const canAct = this.canAct() @@ -64,7 +69,6 @@ class TrackChangeComponent extends AnnotationComponent { resolve (action) { const annotation = this.props.node const provider = this.getProvider() - console.log('provider', provider) provider.resolve(annotation, action) } @@ -88,7 +92,6 @@ class TrackChangeComponent extends AnnotationComponent { const annotation = this.props.node const annotationSelection = annotation.getSelection() - console.log('context', this.context) const surface = this.context.surface const selection = surface.editorSession.getSelection() @@ -101,6 +104,12 @@ class TrackChangeComponent extends AnnotationComponent { if (overlaps && !contains) return true return false } + + onTrackChangesUpdated (change) { + const trackChangesProvider = this.getProvider() + trackChangesProvider.handleDocumentChange(change) + this.rerender() + } } export default TrackChangeComponent diff --git a/app/components/SimpleEditor/elements/track_change/TrackChangesProvider.js b/app/components/SimpleEditor/elements/track_change/TrackChangesProvider.js index 900b4983565fb87b8cd0c64113ad50047d96a5f5..e890b092bc815a803d30a35e0112085b5cf9d191 100644 --- a/app/components/SimpleEditor/elements/track_change/TrackChangesProvider.js +++ b/app/components/SimpleEditor/elements/track_change/TrackChangesProvider.js @@ -25,9 +25,6 @@ class TrackChangesProvider extends TOCProvider { constructor (document, config) { super(document, config) // config.documentSession.on('didUpdate', this.handleUndoRedo, this) - console.log('this track provider', this) - // HACK -- use TOCProvider's event to capture new / deleted changes - this.on('toc:updated', this.reComputeEntries, this) // handle button actions const editor = this.config.controller @@ -553,8 +550,6 @@ class TrackChangesProvider extends TOCProvider { const selection = annotation.getSelection() const status = annotation.status - console.log('resolve', this) - this.removeTrackAnnotation(annotation) if ( @@ -576,7 +571,6 @@ class TrackChangesProvider extends TOCProvider { }) const entries = this.sortNodes(changes) - console.log('entries', entries) return entries }