mirror of
https://github.com/atom/atom.git
synced 2026-01-22 13:28:01 -05:00
Move already opened path logic to Atom Window
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user