Move already opened path logic to Atom Window

This commit is contained in:
Corey Johnson & Kevin Sawicki
2013-06-11 11:28:53 -07:00
parent bcc16fbefe
commit e82a7f57fe
2 changed files with 13 additions and 10 deletions

View File

@@ -220,16 +220,8 @@ class AtomApplication
atomWindow.sendCommand(command, args...)
windowForPath: (pathToOpen) ->
return null unless pathToOpen
for atomWindow in @windows when atomWindow.getPathToOpen()?
if pathToOpen is atomWindow.getPathToOpen()
return atomWindow
if pathToOpen.indexOf(path.join(atomWindow.getPathToOpen(), path.sep)) is 0
return atomWindow
null
for atomWindow in @windows
return atomWindow if atomWindow.containsPath(pathToOpen)
openPaths: (pathsToOpen=[], pidToKillWhenClosed) ->
@openPath(pathToOpen, pidToKillWhenClosed) for pathToOpen in pathsToOpen

View File

@@ -1,6 +1,7 @@
BrowserWindow = require 'browser-window'
dialog = require 'dialog'
ipc = require 'ipc'
path = require 'path'
module.exports =
class AtomWindow
@@ -18,6 +19,16 @@ class AtomWindow
getPathToOpen: ->
@browserWindow.loadSettings.pathToOpen
containsPath: (pathToCheck) ->
if not pathToCheck
false
else if pathToCheck is @getPathToOpen()
true
else if pathToCheck.indexOf(path.join(@getPathToOpen(), path.sep)) is 0
true
else
false
handleEvents: ->
@browserWindow.on 'destroyed', =>
global.atomApplication.removeWindow(this)