diff --git a/spec/atom/root-view-spec.coffee b/spec/atom/root-view-spec.coffee index d304e511a..72d65ccf6 100644 --- a/spec/atom/root-view-spec.coffee +++ b/spec/atom/root-view-spec.coffee @@ -44,16 +44,16 @@ describe "RootView", -> expect(rootView.find('.file-finder')).not.toExist() waitsForPromise -> - rootView.toggleFileFinder() + rootView.resultOfTrigger 'toggle-file-finder' runs -> expect(rootView.find('.file-finder')).toExist() - rootView.toggleFileFinder() + rootView.trigger 'toggle-file-finder' expect(rootView.find('.file-finder')).not.toExist() it "shows all relative file paths for the current project", -> waitsForPromise -> - rootView.toggleFileFinder() + rootView.resultOfTrigger 'toggle-file-finder' waitsForPromise -> project.getFilePaths().done (paths) -> @@ -70,12 +70,12 @@ describe "RootView", -> it "does not open the FileFinder", -> expect(rootView.editor.buffer.url).toBeUndefined() expect(rootView.find('.file-finder')).not.toExist() - rootView.toggleFileFinder() + rootView.trigger 'toggle-file-finder' expect(rootView.find('.file-finder')).not.toExist() describe "when a path is selected in the file finder", -> it "opens the file associated with that path in the editor", -> - waitsForPromise -> rootView.toggleFileFinder() + waitsForPromise -> rootView.resultOfTrigger 'toggle-file-finder' runs -> firstLi = rootView.fileFinder.find('li:first') rootView.fileFinder.select() diff --git a/spec/spec-helper.coffee b/spec/spec-helper.coffee index 3f7a3a2d8..c82977845 100644 --- a/spec/spec-helper.coffee +++ b/spec/spec-helper.coffee @@ -18,3 +18,7 @@ window.waitsForPromise = (fn) -> window.waitsFor (moveOn) -> fn().done(moveOn) +$.fn.resultOfTrigger = (type) -> + event = $.Event(type) + this.trigger(event) + event.result diff --git a/src/atom/root-view.coffee b/src/atom/root-view.coffee index 499f2cdf9..89abdd7d5 100644 --- a/src/atom/root-view.coffee +++ b/src/atom/root-view.coffee @@ -11,8 +11,8 @@ GlobalKeymap = require 'global-keymap' module.exports = class RootView extends Template content: -> - @link rel: 'stylesheet', href: "#{require.resolve('atom.css')}?#{(new Date).getTime()}" @div id: 'app-horizontal', => + @link rel: 'stylesheet', href: "#{require.resolve('atom.css')}?#{(new Date).getTime()}" @div id: 'app-vertical', outlet: 'vertical', => @div id: 'main', outlet: 'main', => @subview 'editor', Editor.build() @@ -22,12 +22,15 @@ class RootView extends Template initialize: ({url}) -> @globalKeymap = new GlobalKeymap + + @editor.keyEventHandler = @globalKeymap + @globalKeymap.bindKeys '*' 'meta-s': 'save' 'meta-w': 'close' - 'meta-t': 'find-files' + 'meta-t': 'toggle-file-finder' - @editor.keyEventHandler = @globalKeymap + @on 'toggle-file-finder', (e) => @toggleFileFinder() if url @project = new Project(fs.directory(url))