From ceb496e202908c035d3ea56302c9227fc840b78e Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Thu, 4 Oct 2012 11:07:46 -0700 Subject: [PATCH] Use closure wrapper with current event name --- spec/extensions/editor-command-spec.coffee | 4 ++++ src/extensions/editor-command.coffee | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/spec/extensions/editor-command-spec.coffee b/spec/extensions/editor-command-spec.coffee index 27912bd71..eda5d9c7e 100644 --- a/spec/extensions/editor-command-spec.coffee +++ b/spec/extensions/editor-command-spec.coffee @@ -114,12 +114,14 @@ describe "EditorCommand", -> it "registers all keymaps", -> callbackCount = 0 + eventName = null class CustomCommand extends EditorCommand @getKeymaps: (editor) -> 'meta-V': 'custom1' 'meta-B': 'custom2' @execute: (editor, event) -> + eventName = event @replaceSelectedText editor, (text) -> callbackCount++ text @@ -129,7 +131,9 @@ describe "EditorCommand", -> editor.selectToEndOfLine() editor.trigger 'custom1' expect(callbackCount).toBe 1 + expect(eventName).toBe 'custom1' editor.trigger 'custom2' + expect(eventName).toBe 'custom2' expect(callbackCount).toBe 2 describe "LowerCaseCommand", -> diff --git a/src/extensions/editor-command.coffee b/src/extensions/editor-command.coffee index 22d11adda..426bf65c3 100644 --- a/src/extensions/editor-command.coffee +++ b/src/extensions/editor-command.coffee @@ -18,7 +18,9 @@ class EditorCommand return unless keymaps for key, event of keymaps - editor.on event, => @execute(editor, event) + do (event) => + editor.on event, => + @execute(editor, event) @replaceSelectedText: (editor, replace) -> selection = editor.getSelection()