From a9786e13e323c711dec8357d5a19d6ea93b4295f Mon Sep 17 00:00:00 2001 From: Alexandros Georgantas <alexgeorg86@gmail.com> Date: Wed, 22 Feb 2017 11:56:35 +0200 Subject: [PATCH] Live update functionality of track changes fixed --- .../elements/track_change/TrackChangeComponent.js | 13 +++++++++++-- .../elements/track_change/TrackChangesProvider.js | 6 ------ 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/app/components/SimpleEditor/elements/track_change/TrackChangeComponent.js b/app/components/SimpleEditor/elements/track_change/TrackChangeComponent.js index f8d023a..30215e3 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 900b498..e890b09 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 } -- GitLab