From 965e66ffd4d1f4e83a47c695ac79736475fe4ca0 Mon Sep 17 00:00:00 2001 From: Nathan Sobo Date: Tue, 20 Mar 2012 15:11:34 -0600 Subject: [PATCH] Focus most-recently active editor pane when file finder closes. --- spec/atom/root-view-spec.coffee | 25 ++++++++++++++----------- src/atom/root-view.coffee | 2 +- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/spec/atom/root-view-spec.coffee b/spec/atom/root-view-spec.coffee index 406bdc1ef..719002a04 100644 --- a/spec/atom/root-view-spec.coffee +++ b/spec/atom/root-view-spec.coffee @@ -262,19 +262,22 @@ describe "RootView", -> describe "when the toggle-file-finder event is triggered", -> describe "when there is a project", -> it "shows the FileFinder when it is not on screen and hides it when it is", -> - runs -> - rootView.attachToDom() - expect(rootView.find('.file-finder')).not.toExist() + rootView.attachToDom() + expect(rootView.find('.file-finder')).not.toExist() - waitsForPromise -> - rootView.resultOfTrigger 'toggle-file-finder' + rootView.find('.editor').trigger 'split-right' + [editor1, editor2] = rootView.find('.editor').map -> $(this).view() - runs -> - expect(rootView.find('.file-finder')).toExist() - expect(rootView.find('.file-finder input:focus')).toExist() - rootView.trigger 'toggle-file-finder' - expect(rootView.find('.editor:has(:focus)')).toExist() - expect(rootView.find('.file-finder')).not.toExist() + rootView.trigger 'toggle-file-finder' + + expect(rootView.find('.file-finder')).toExist() + expect(rootView.find('.file-finder input:focus')).toExist() + rootView.trigger 'toggle-file-finder' + + expect(editor1.isFocused).toBeFalsy() + expect(editor2.isFocused).toBeTruthy() + expect(rootView.find('.editor:has(:focus)')).toExist() + expect(rootView.find('.file-finder')).not.toExist() it "shows all relative file paths for the current project", -> waitsForPromise -> diff --git a/src/atom/root-view.coffee b/src/atom/root-view.coffee index 542982078..cfcd018e3 100644 --- a/src/atom/root-view.coffee +++ b/src/atom/root-view.coffee @@ -109,7 +109,7 @@ class RootView extends View if @fileFinder and @fileFinder.parent()[0] @fileFinder.remove() @fileFinder = null - @editor.focus() + @focusLastActiveEditor() else @project.getFilePaths().done (paths) => relativePaths = (path.replace(@project.url, "") for path in paths)