EditSession emits 'title-changed' events when its buffer path changes

This commit is contained in:
Nathan Sobo
2013-02-25 17:54:41 -07:00
committed by probablycorey
parent 0c24843e52
commit de8198084c
2 changed files with 17 additions and 1 deletions

View File

@@ -16,6 +16,20 @@ describe "EditSession", ->
afterEach ->
fixturesProject.destroy()
describe "title", ->
it "uses the basename of the buffer's path as its title, or 'untitled' if the path is undefined", ->
expect(editSession.getTitle()).toBe 'sample.js'
buffer.setPath(undefined)
expect(editSession.getTitle()).toBe 'untitled'
it "emits 'title-changed' events when the underlying buffer path", ->
titleChangedHandler = jasmine.createSpy("titleChangedHandler")
editSession.on 'title-changed', titleChangedHandler
buffer.setPath('/foo/bar/baz.txt')
buffer.setPath(undefined)
expect(titleChangedHandler.callCount).toBe 2
describe "cursor", ->
describe ".getCursor()", ->
it "returns the most recently created cursor", ->

View File

@@ -43,7 +43,9 @@ class EditSession
@addCursorAtScreenPosition([0, 0])
@buffer.retain()
@subscribe @buffer, "path-changed", => @trigger "path-changed"
@subscribe @buffer, "path-changed", =>
@trigger "title-changed"
@trigger "path-changed"
@subscribe @buffer, "contents-conflicted", => @trigger "contents-conflicted"
@subscribe @buffer, "markers-updated", => @mergeCursors()