Fix pane:became-inactive and pane:became-active events

This commit is contained in:
Corey Johnson
2013-08-29 15:56:37 -07:00
parent 7fd0d934ef
commit 915159d7a0
2 changed files with 7 additions and 4 deletions

View File

@@ -507,9 +507,10 @@ describe "Pane", ->
expect(focusHandler).toHaveBeenCalled()
it "triggers 'pane:became-active' if it was not previously active", ->
becameActiveHandler = jasmine.createSpy("becameActiveHandler")
container.on 'pane:became-active', becameActiveHandler
pane2 = pane.splitRight(view2) # Make pane inactive
becameActiveHandler = jasmine.createSpy("becameActiveHandler")
pane.on 'pane:became-active', becameActiveHandler
expect(pane.isActive()).toBeFalsy()
pane.focusin()
expect(pane.isActive()).toBeTruthy()
@@ -518,8 +519,10 @@ describe "Pane", ->
expect(becameActiveHandler.callCount).toBe 1
it "triggers 'pane:became-inactive' when it was previously active", ->
pane2 = pane.splitRight(view2) # Make pane inactive
becameInactiveHandler = jasmine.createSpy("becameInactiveHandler")
container.on 'pane:became-inactive', becameInactiveHandler
pane.on 'pane:became-inactive', becameInactiveHandler
expect(pane.isActive()).toBeFalsy()
pane.focusin()

View File

@@ -99,9 +99,9 @@ class Pane extends View
# Public: Focus this pane.
makeActive: ->
wasActive = @isActive()
for pane in @getContainer().getPanes() when pane isnt this
pane.makeInactive()
wasActive = @isActive()
@addClass('active')
@trigger 'pane:became-active' unless wasActive