@@ -326,8 +326,9 @@ define(function (require, exports, module) {
326326 * Convert keydown events into hint list navigation actions.
327327 *
328328 * @param {KeyBoardEvent } keyEvent
329+ * @param {bool } isFakeCallUp - True if faked call up (for example calling CTRL+Space while hints are open)
329330 */
330- CodeHintList . prototype . _keydownHook = function ( event ) {
331+ CodeHintList . prototype . _keydownHook = function ( event , isFakeCallUp ) {
331332 var keyCode ,
332333 self = this ;
333334
@@ -389,7 +390,7 @@ define(function (require, exports, module) {
389390 }
390391
391392 // (page) up, (page) down, enter and tab key are handled by the list
392- if ( event . type === "keydown" && this . isHandlingKeyCode ( event ) ) {
393+ if ( event . type === "keydown" && this . isHandlingKeyCode ( event ) || isFakeCallUp ) {
393394 keyCode = event . keyCode ;
394395
395396 if ( event . keyCode === KeyEvent . DOM_VK_ESCAPE ) {
@@ -408,7 +409,7 @@ define(function (require, exports, module) {
408409 } else if ( keyCode === KeyEvent . DOM_VK_UP ) {
409410 _rotateSelection . call ( this , - 1 ) ;
410411 } else if ( keyCode === KeyEvent . DOM_VK_DOWN ||
411- ( event . ctrlKey && keyCode === KeyEvent . DOM_VK_SPACE ) ) {
412+ ( event . ctrlKey && keyCode === KeyEvent . DOM_VK_SPACE ) || isFakeCallUp ) {
412413 _rotateSelection . call ( this , 1 ) ;
413414 } else if ( keyCode === KeyEvent . DOM_VK_PAGE_UP ) {
414415 _rotateSelection . call ( this , - _itemsPerPage ( ) ) ;
@@ -517,9 +518,7 @@ define(function (require, exports, module) {
517518 * @param {KeyBoardEvent } keyEvent
518519 */
519520 CodeHintList . prototype . callMoveUp = function ( event ) {
520- delete event . type ;
521- event . type = "keydown" ;
522- this . _keydownHook ( event ) ;
521+ this . _keydownHook ( event , true ) ;
523522 } ;
524523 /**
525524 * Closes the hint list
0 commit comments