diff --git a/spec/atom/editor-spec.coffee b/spec/atom/editor-spec.coffee index 3c543b537..70297b9ac 100644 --- a/spec/atom/editor-spec.coffee +++ b/spec/atom/editor-spec.coffee @@ -63,7 +63,12 @@ describe "Editor", -> editor.getAceSession().insert {row: 0, column: 1}, 'ooo' expect(buffer.getText()).toMatch /^.ooo/ - describe "save", -> + describe ".save()", -> + it "is triggered by the 'save' event", -> + spyOn(editor, 'save') + editor.trigger('save') + expect(editor.save).toHaveBeenCalled() + describe "when the current buffer has a url", -> beforeEach -> buffer = new Buffer(tempFilePath) diff --git a/spec/atom/window-spec.coffee b/spec/atom/window-spec.coffee index 3a8fac668..c12487112 100644 --- a/spec/atom/window-spec.coffee +++ b/spec/atom/window-spec.coffee @@ -42,7 +42,3 @@ describe "Window", -> expect(handler).toHaveBeenCalled() - describe "menu items", -> - it "adds a Save item to the main menu after startup", -> - expect(OSX.NSApp.mainMenu.itemWithTitle('File').submenu.itemWithTitle('Save')).not.toBeNull() - diff --git a/src/atom/editor.coffee b/src/atom/editor.coffee index 5bac41794..7a0ebbd60 100644 --- a/src/atom/editor.coffee +++ b/src/atom/editor.coffee @@ -18,6 +18,7 @@ class Editor extends Template @aceSessions = {} @buildAceEditor() @setBuffer(new Buffer) + @on 'save', => @save() shutdown: -> @destroy() diff --git a/src/atom/root-view.coffee b/src/atom/root-view.coffee index 376159c3b..499f2cdf9 100644 --- a/src/atom/root-view.coffee +++ b/src/atom/root-view.coffee @@ -23,9 +23,9 @@ class RootView extends Template initialize: ({url}) -> @globalKeymap = new GlobalKeymap @globalKeymap.bindKeys '*' - 'meta+s': 'save' - 'meta+w': 'close' - 'meta+t': 'find-files' + 'meta-s': 'save' + 'meta-w': 'close' + 'meta-t': 'find-files' @editor.keyEventHandler = @globalKeymap diff --git a/src/atom/window.coffee b/src/atom/window.coffee index 9e4777e90..2a1d6ce1e 100644 --- a/src/atom/window.coffee +++ b/src/atom/window.coffee @@ -25,7 +25,8 @@ windowAdditions = $(window).unbind('blur') bindMenuItems: -> - @bindMenuItem "File > Save", "meta+s", => @rootView.editor.save() + # we want to integrate this better with keybindings + # @bindMenuItem "File > Save", "meta+s", => @rootView.editor.save() bindMenuItem: (path, pattern, action) -> @menuItemActions[path] = {action: action, pattern: pattern}