Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 11 additions & 4 deletions lib/sublime-select.coffee
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,14 @@ module.exports =
if e.which == 0
resetState()

onKeyDown = (e) ->
if e['keyIdentifier'] == inputCfg.selectKeyName and e['type'] == 'keydown'
editorElement.shadowRoot.querySelector('.lines').style.cursor = 'crosshair'

onKeyUp = (e) ->
if e['keyIdentifier'] == inputCfg.selectKeyName and e['type'] == 'keyup'
editorElement.shadowRoot.querySelector('.lines').style.cursor = ''

# Hijack all the mouse events while selecting
hijackMouseEvent = (e) ->
if mouseStartPos
Expand All @@ -121,7 +129,7 @@ module.exports =
_screenPositionForMouseEvent = (e) ->
if editorComponent is null
editorComponent = atom.views.getView(editor).component

pixelPosition = editorComponent.pixelPositionForMouseEvent(e)
targetTop = pixelPosition.top
targetLeft = pixelPosition.left
Expand All @@ -137,9 +145,6 @@ module.exports =
_mainMouseDown = (e) ->
e.which is inputCfg.mouseNum

_keyDown = (e) ->
e[inputCfg.selectKey]

_mainMouseAndKeyDown = (e) ->
_mainMouseDown(e) and e[inputCfg.selectKey]

Expand Down Expand Up @@ -169,6 +174,8 @@ module.exports =
editor.onDidChangeSelectionRange onRangeChange
editorElement.onmousedown = onMouseDown
editorElement.onmousemove = onMouseMove
editorElement.onkeydown = onKeyDown
editorElement.onkeyup = onKeyUp
editorElement.onmouseup = hijackMouseEvent
editorElement.onmouseleave = hijackMouseEvent
editorElement.onmouseenter = hijackMouseEvent
Expand Down