mirror of
https://github.com/atom/atom.git
synced 2026-01-24 14:28:14 -05:00
When a new edit session is added, add a new tab for it
This commit is contained in:
@@ -46,3 +46,9 @@ describe "Tabs", ->
|
||||
editor.setActiveEditSessionIndex(1)
|
||||
expect(tabs.find('.active').length).toBe 1
|
||||
expect(tabs.find('.tab:eq(1)')).toHaveClass 'active'
|
||||
|
||||
describe "when a new edit session is created", ->
|
||||
it "adds a tab for the new edit session", ->
|
||||
rootView.open('two-hundred.txt')
|
||||
expect(tabs.find('.tab').length).toBe 3
|
||||
expect(tabs.find('.tab:eq(2) .file-name').text()).toBe 'two-hundred.txt'
|
||||
|
||||
@@ -20,13 +20,18 @@ class Tabs extends View
|
||||
|
||||
initialize: (@editor) ->
|
||||
for editSession, index in @editor.editSessions
|
||||
@append $$ ->
|
||||
@div class: 'tab', =>
|
||||
@div editSession.buffer.getBaseName(), class: 'file-name'
|
||||
@addTabForEditSession(editSession)
|
||||
|
||||
@setActiveTab(@editor.getActiveEditSessionIndex())
|
||||
@editor.on 'editor:active-edit-session-changed', (e, index) => @setActiveTab(index)
|
||||
|
||||
@editor.on 'editor:edit-session-added', (e, editSession) => @addTabForEditSession(editSession)
|
||||
|
||||
addTabForEditSession: (editSession) ->
|
||||
@append $$ ->
|
||||
@div class: 'tab', =>
|
||||
@div editSession.buffer.getBaseName(), class: 'file-name'
|
||||
|
||||
setActiveTab: (index) ->
|
||||
@find(".tab.active").removeClass('active')
|
||||
@find(".tab:eq(#{index})").addClass('active')
|
||||
|
||||
Reference in New Issue
Block a user