Remove relative URI usage

This commit is contained in:
Kevin Sawicki 2014-02-18 18:57:45 -08:00
parent c16435a604
commit 7a04a414f7
3 changed files with 20 additions and 12 deletions

View File

@ -46,7 +46,7 @@ describe "Workspace", ->
workspace.open('a').then (o) -> editor = o
runs ->
expect(editor.getUri()).toBe 'a'
expect(editor.getUri()).toBe atom.project.resolve('a')
expect(workspace.activePaneItem).toBe editor
expect(workspace.activePane.items).toEqual [editor]
expect(workspace.activePane.activate).toHaveBeenCalled()
@ -199,23 +199,23 @@ describe "Workspace", ->
expect(workspace.activePaneItem.getUri()).not.toBeUndefined()
# destroy all items
expect(workspace.activePaneItem.getUri()).toBe 'file1'
expect(workspace.activePaneItem.getUri()).toBe atom.project.resolve('file1')
pane.destroyActiveItem()
expect(workspace.activePaneItem.getUri()).toBe 'b'
expect(workspace.activePaneItem.getUri()).toBe atom.project.resolve('b')
pane.destroyActiveItem()
expect(workspace.activePaneItem.getUri()).toBe 'a'
expect(workspace.activePaneItem.getUri()).toBe atom.project.resolve('a')
pane.destroyActiveItem()
# reopens items with uris
expect(workspace.activePaneItem).toBeUndefined()
workspace.reopenItemSync()
expect(workspace.activePaneItem.getUri()).toBe 'a'
expect(workspace.activePaneItem.getUri()).toBe atom.project.resolve('a')
# does not reopen items that are already open
workspace.openSync('b')
expect(workspace.activePaneItem.getUri()).toBe 'b'
expect(workspace.activePaneItem.getUri()).toBe atom.project.resolve('b')
workspace.reopenItemSync()
expect(workspace.activePaneItem.getUri()).toBe 'file1'
expect(workspace.activePaneItem.getUri()).toBe atom.project.resolve('file1')
describe "::increase/decreaseFontSize()", ->
it "increases/decreases the font size without going below 1", ->

View File

@ -19,12 +19,19 @@ class Cursor
# Instantiated by an {Editor}
constructor: ({@editor, @marker}) ->
unless @editor.mini
console.log 'adding cursor', @marker.id
@updateVisibility()
@marker.on 'changed', (e) =>
@updateVisibility()
{oldHeadScreenPosition, newHeadScreenPosition} = e
{oldHeadBufferPosition, newHeadBufferPosition} = e
{textChanged} = e
unless @editor.mini
console.log 'marker changed', @editor.getCursorBufferPosition(), @marker.id
return if oldHeadScreenPosition.isEqual(newHeadScreenPosition)
@needsAutoscroll ?= @isLastCursor() and !textChanged
@ -40,6 +47,7 @@ class Cursor
@emit 'moved', movedEvent
@editor.emit 'cursor-moved', movedEvent
@marker.on 'destroyed', =>
console.log 'destroyed'
@destroyed = true
@editor.removeCursor(this)
@emit 'destroyed'

View File

@ -72,10 +72,10 @@ class Workspace extends Model
# if the uri is already open (default: false)
#
# Returns a promise that resolves to the {Editor} for the file URI.
open: (uri, options={}) ->
open: (uri='', options={}) ->
searchAllPanes = options.searchAllPanes
split = options.split
uri = atom.project.relativize(uri) ? ''
uri = atom.project.resolve(uri)
pane = switch split
when 'left'
@ -91,15 +91,15 @@ class Workspace extends Model
@openUriInPane(uri, pane, options)
# Only used in specs
openSync: (uri, options={}) ->
openSync: (uri='', options={}) ->
{initialLine} = options
# TODO: Remove deprecated changeFocus option
activatePane = options.activatePane ? options.changeFocus ? true
uri = atom.project.relativize(uri) ? ''
uri = atom.project.resolve(uri)
item = @activePane.itemForUri(uri)
if uri
item ?= opener(atom.project.resolve(uri), options) for opener in @getOpeners() when !item
item ?= opener(uri, options) for opener in @getOpeners() when !item
item ?= atom.project.openSync(uri, {initialLine})
@activePane.activateItem(item)