mirror of
https://github.com/atom/atom.git
synced 2026-01-23 22:08:08 -05:00
Shift-triple-click expands the selection over the clicked line
This commit is contained in:
@@ -926,6 +926,13 @@ describe "Editor", ->
|
||||
editor.lines.trigger mousedownEvent(editor: editor, point: [5, 24], shiftKey: true, originalEvent: { detail: 2 })
|
||||
expect(editor.getSelection().getScreenRange()).toEqual [[4, 7], [5, 27]]
|
||||
|
||||
describe "when it is a triple-click", ->
|
||||
it "expands the selection to include the triple-clicked line", ->
|
||||
editor.lines.trigger mousedownEvent(editor: editor, point: [5, 24], shiftKey: true, originalEvent: { detail: 1 })
|
||||
editor.lines.trigger mousedownEvent(editor: editor, point: [5, 24], shiftKey: true, originalEvent: { detail: 2 })
|
||||
editor.lines.trigger mousedownEvent(editor: editor, point: [5, 24], shiftKey: true, originalEvent: { detail: 3 })
|
||||
expect(editor.getSelection().getScreenRange()).toEqual [[4, 7], [5, 30]]
|
||||
|
||||
describe "select-to-top", ->
|
||||
it "selects text from cusor position to the top of the buffer", ->
|
||||
editor.setCursorScreenPosition [11,2]
|
||||
|
||||
@@ -126,6 +126,9 @@ class Cursor extends View
|
||||
getCurrentWordBufferRange: ->
|
||||
new Range(@getBeginningOfCurrentWordBufferPosition(allowPrevious: false), @getEndOfCurrentWordBufferPosition(allowNext: false))
|
||||
|
||||
getCurrentLineBufferRange: ->
|
||||
@editor.rangeForBufferRow(@getBufferPosition().row)
|
||||
|
||||
moveToEndOfLine: ->
|
||||
{ row } = @getBufferPosition()
|
||||
@setBufferPosition({ row, column: @editor.buffer.lineForRow(row).length })
|
||||
|
||||
@@ -145,7 +145,10 @@ class Editor extends View
|
||||
else
|
||||
@compositeSelection.getLastSelection().selectWord()
|
||||
else if clickCount >= 3
|
||||
@compositeSelection.getLastSelection().selectLine()
|
||||
if e.shiftKey
|
||||
@compositeSelection.getLastSelection().expandOverLine()
|
||||
else
|
||||
@compositeSelection.getLastSelection().selectLine()
|
||||
|
||||
@selectOnMousemoveUntilMouseup()
|
||||
|
||||
|
||||
@@ -166,8 +166,10 @@ class Selection extends View
|
||||
@setBufferRange(@getBufferRange().union(@cursor.getCurrentWordBufferRange()))
|
||||
|
||||
selectLine: (row=@cursor.getBufferPosition().row) ->
|
||||
rowLength = @editor.buffer.lineForRow(row).length
|
||||
@setBufferRange new Range([row, 0], [row, rowLength])
|
||||
@setBufferRange(@editor.rangeForBufferRow(row))
|
||||
|
||||
expandOverLine: ->
|
||||
@setBufferRange(@getBufferRange().union(@cursor.getCurrentLineBufferRange()))
|
||||
|
||||
selectToScreenPosition: (position) ->
|
||||
@modifySelection => @cursor.setScreenPosition(position)
|
||||
|
||||
Reference in New Issue
Block a user