From a90a2e65b5c4618b25cabeeecd4e201defa6b320 Mon Sep 17 00:00:00 2001 From: Nathan Sobo Date: Thu, 14 Jan 2016 14:45:52 -0700 Subject: [PATCH] Implement TokenizedBuffer.prototype.onDidInvalidateRange This causes DisplayLayer to emit change events when syntax is updated asynchronously. --- src/tokenized-buffer.coffee | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/tokenized-buffer.coffee b/src/tokenized-buffer.coffee index 0267e02dd..96d1f4649 100644 --- a/src/tokenized-buffer.coffee +++ b/src/tokenized-buffer.coffee @@ -65,6 +65,9 @@ class TokenizedBuffer extends Model getInvalidatedRanges: -> [@invalidatedRange] + onDidInvalidateRange: (fn) -> + @emitter.on 'did-invalidate-range', fn + serialize: -> state = { deserializer: 'TokenizedBuffer' @@ -221,6 +224,7 @@ class TokenizedBuffer extends Model event = {start: startRow, end: endRow, delta: 0} @emitter.emit 'did-change', event + @emitter.emit 'did-invalidate-range', Range(Point(startRow, 0), Point(endRow + 1, 0)) if @firstInvalidRow()? @tokenizeInBackground()