From 15f3c125793a96cdd3c8f18c39f174612575d945 Mon Sep 17 00:00:00 2001 From: Liang Ding Date: Sat, 3 Oct 2015 15:00:19 +0800 Subject: [PATCH] close editor after rename or remove the file --- session/sessions.go | 8 ++++---- static/js/session.js | 5 +++++ 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/session/sessions.go b/session/sessions.go index 59a26e3..3ca78b6 100644 --- a/session/sessions.go +++ b/session/sessions.go @@ -495,14 +495,14 @@ func (sessions *wSessions) new(httpSession *sessions.Session, sid string) *WideS logger.Trace(event) if event.Op&fsnotify.Create == fsnotify.Create { - if err = watcher.Add(path); nil != err { - logger.Warn(err, path) - } - fileType := "f" if util.File.IsDir(path) { fileType = "d" + + if err = watcher.Add(path); nil != err { + logger.Warn(err, path) + } } cmd := map[string]interface{}{"path": path, "dir": dir, diff --git a/static/js/session.js b/static/js/session.js index e4a9039..4be059b 100644 --- a/static/js/session.js +++ b/static/js/session.js @@ -199,6 +199,11 @@ var session = { var node = tree.fileTree.getNodeByTId(tree.getTIdByPath(data.path)); tree.fileTree.removeNode(node); + var nodes = tree.fileTree.transformToArray(node); + for (var i = 0, ii = nodes.length; i < ii; i++) { + editors.tabs.del(nodes[i].path); + } + break; } };