@@ -102,6 +102,15 @@ module.exports =
102
102
if e .which == 0
103
103
resetState ()
104
104
105
+ onKeyDown = (e ) ->
106
+ if e[' keyIdentifier' ] == inputCfg .selectKeyName and e[' type' ] == ' keydown'
107
+ editorElement .shadowRoot .querySelector (
108
+ ' .lines' ).style .cursor = ' crosshair'
109
+
110
+ onKeyUp = (e ) ->
111
+ if e[' keyIdentifier' ] == inputCfg .selectKeyName and e[' type' ] == ' keyup'
112
+ editorElement .shadowRoot .querySelector (' .lines' ).style .cursor = ' '
113
+
105
114
# Hijack all the mouse events while selecting
106
115
hijackMouseEvent = (e ) ->
107
116
if mouseStartPos
@@ -121,7 +130,7 @@ module.exports =
121
130
_screenPositionForMouseEvent = (e ) ->
122
131
if editorComponent is null
123
132
editorComponent = atom .views .getView (editor).component
124
-
133
+
125
134
pixelPosition = editorComponent .pixelPositionForMouseEvent (e)
126
135
targetTop = pixelPosition .top
127
136
targetLeft = pixelPosition .left
@@ -137,9 +146,6 @@ module.exports =
137
146
_mainMouseDown = (e ) ->
138
147
e .which is inputCfg .mouseNum
139
148
140
- _keyDown = (e ) ->
141
- e[inputCfg .selectKey ]
142
-
143
149
_mainMouseAndKeyDown = (e ) ->
144
150
_mainMouseDown (e) and e[inputCfg .selectKey ]
145
151
@@ -169,6 +175,8 @@ module.exports =
169
175
editor .onDidChangeSelectionRange onRangeChange
170
176
editorElement .onmousedown = onMouseDown
171
177
editorElement .onmousemove = onMouseMove
178
+ editorElement .onkeydown = onKeyDown
179
+ editorElement .onkeyup = onKeyUp
172
180
editorElement .onmouseup = hijackMouseEvent
173
181
editorElement .onmouseleave = hijackMouseEvent
174
182
editorElement .onmouseenter = hijackMouseEvent
0 commit comments