diff --git a/spec/editor-view-spec.coffee b/spec/editor-view-spec.coffee index 19e8485d0..c7f20efe4 100644 --- a/spec/editor-view-spec.coffee +++ b/spec/editor-view-spec.coffee @@ -532,6 +532,30 @@ describe "EditorView", -> editorView.renderedLines.trigger 'mouseup' expect(editor.getSelectedText()).toBe "{" + describe "when clicking in the middle of whitespace", -> + it "selects all adjacent whitespace", -> + editor.setText(" some text ") + editor.setCursorBufferPosition([0, 2]) + editorView.renderedLines.trigger mousedownEvent(editorView: editorView, point: [0, 2], originalEvent: {detail: 1}) + editorView.renderedLines.trigger 'mouseup' + editorView.renderedLines.trigger mousedownEvent(editorView: editorView, point: [0, 2], originalEvent: {detail: 2}) + editorView.renderedLines.trigger 'mouseup' + expect(editor.getSelectedBufferRange()).toEqual [[0, 0], [0, 3]] + + editor.setCursorBufferPosition([0, 8]) + editorView.renderedLines.trigger mousedownEvent(editorView: editorView, point: [0, 8], originalEvent: {detail: 1}) + editorView.renderedLines.trigger 'mouseup' + editorView.renderedLines.trigger mousedownEvent(editorView: editorView, point: [0, 8], originalEvent: {detail: 2}) + editorView.renderedLines.trigger 'mouseup' + expect(editor.getSelectedBufferRange()).toEqual [[0, 7], [0, 9]] + + editor.setCursorBufferPosition([0, 14]) + editorView.renderedLines.trigger mousedownEvent(editorView: editorView, point: [0, 14], originalEvent: {detail: 1}) + editorView.renderedLines.trigger 'mouseup' + editorView.renderedLines.trigger mousedownEvent(editorView: editorView, point: [0, 14], originalEvent: {detail: 2}) + editorView.renderedLines.trigger 'mouseup' + expect(editor.getSelectedBufferRange()).toEqual [[0, 13], [0, 17]] + describe "triple/quardruple/etc-click", -> it "selects the line under the cursor", -> expect(editor.getCursorScreenPosition()).toEqual(row: 0, column: 0) diff --git a/src/cursor.coffee b/src/cursor.coffee index 786cee2c4..1ff9c014f 100644 --- a/src/cursor.coffee +++ b/src/cursor.coffee @@ -144,7 +144,7 @@ class Cursor extends Model # Returns a {Boolean}. isSurroundedByWhitespace: -> {row, column} = @getBufferPosition() - range = [[row, Math.min(0, column - 1)], [row, Math.max(0, column + 1)]] + range = [[row, Math.max(0, column - 1)], [row, Math.max(0, column + 1)]] /^\s+$/.test @editor.getTextInBufferRange(range) # Public: Returns whether the cursor is currently between a word and non-word