Rework Buffer's 'contents-modified' event

This event now fires whenever the content of the buffer changes (after 
a rate-limiting delay) with a single boolean indicating the modified
status of the buffer. There's now a separate event called
'modified-status-changed' to indicate events that change the boolean
value of the isModified method, so we don't need to fire
'contents-modified' when the underlying file is deleted for instance.
This commit is contained in:
Nathan Sobo
2013-02-28 08:35:32 -07:00
committed by probablycorey
parent a1dc2cfc2d
commit 298a963148
4 changed files with 24 additions and 56 deletions

View File

@@ -47,7 +47,7 @@ class StatusBarView extends View
subscribeToBuffer: ->
@buffer?.off '.status-bar'
@buffer = @editor.getBuffer()
@buffer.on 'contents-modified.status-bar', (e) => @updateBufferHasModifiedText(e.differsFromDisk)
@buffer.on 'modified-status-changed.status-bar', (isModified) => @updateBufferHasModifiedText(isModified)
@buffer.on 'saved.status-bar', => @updateStatusBar()
@updateStatusBar()
@@ -60,8 +60,8 @@ class StatusBarView extends View
updateGrammarText: ->
@grammarName.text(@editor.getGrammar().name)
updateBufferHasModifiedText: (differsFromDisk)->
if differsFromDisk
updateBufferHasModifiedText: (isModified)->
if isModified
@bufferModified.text('*') unless @isModified
@isModified = true
else